[
  {
    "path": "README.md",
    "content": "﻿mir9-lua\n================\nmir9——《热血沙城》，是9秒论坛开源的一个使用Cocos2d-x-2.2.1引擎开发的45度ARPG手游Demo，源代码为c++。mir9-lua是mir9的Lua移植版，使用Quick-Cocos2d-x-3.3 Final引擎开发。由于移植得比较匆忙，代码写得可能比较混乱，请见谅。<br>\n\n已知Bug：<br>\n1、怪物在不可见范围时，自动攻击选中怪物会发现怪物选中图片位置不对<br>\n2、停止自动攻击后，还会跑去攻击一次<br>\n3、A*寻路会有死循环问题，在小地图上寻路有时会有卡顿的现象<br>\n\n界面截图：<br>\n![image](https://github.com/zym2014/mir9-lua/blob/master/%E7%95%8C%E9%9D%A2%E6%88%AA%E5%9B%BE/%E7%99%BB%E5%BD%95.png)\n![image](https://github.com/zym2014/mir9-lua/blob/master/%E7%95%8C%E9%9D%A2%E6%88%AA%E5%9B%BE/%E8%A7%92%E8%89%B2%E9%80%89%E6%8B%A9.png)\n![image](https://github.com/zym2014/mir9-lua/blob/master/%E7%95%8C%E9%9D%A2%E6%88%AA%E5%9B%BE/%E5%8A%A0%E8%BD%BDing.png)\n![image](https://github.com/zym2014/mir9-lua/blob/master/%E7%95%8C%E9%9D%A2%E6%88%AA%E5%9B%BE/%E4%B8%BB%E5%9F%8E.png)\n![image](https://github.com/zym2014/mir9-lua/blob/master/%E7%95%8C%E9%9D%A2%E6%88%AA%E5%9B%BE/%E5%9F%8E%E9%83%8A.png)\n![image](https://github.com/zym2014/mir9-lua/blob/master/%E7%95%8C%E9%9D%A2%E6%88%AA%E5%9B%BE/%E5%B0%8F%E5%9C%B0%E5%9B%BE.png)\n![image](https://github.com/zym2014/mir9-lua/blob/master/%E7%95%8C%E9%9D%A2%E6%88%AA%E5%9B%BE/%E8%83%8C%E5%8C%85.png)\n![image](https://github.com/zym2014/mir9-lua/blob/master/%E7%95%8C%E9%9D%A2%E6%88%AA%E5%9B%BE/%E6%8A%80%E8%83%BD%E5%88%97%E8%A1%A8.png)\n\n\n资源下载地址：<br>\nhttp://pan.baidu.com/s/1kTqqhin<br>\n\nWin32安装包下载地址：<br>\nhttp://pan.baidu.com/s/1gd5ruaJ<br>\n\nAndroid安装包下载地址：<br>\nhttp://pan.baidu.com/s/1i3GcL6X<br>\n\nCocos2d-x2.2.1 C++原版下载地址：<br>\nhttp://pan.baidu.com/s/1jGl8042<br>\n\nCocos2d-x2.2.5 C++修改版下载地址：<br>\nhttp://pan.baidu.com/s/1bnfHdzL<br>\n\n开发环境：<br>\nQuick-Cocos2d-x-3.3 Final<br>\nCocos Code IDE<br>\n\n注意：<br>\n在Windows下面运行不能将程序放在中文目录下，否则会播放不了声音，这是引擎的Bug。另资源文件下载完后，请解压缩至项目工程的res目录下。<br>\n\n项目地址：<br>\n[https://github.com/zym2014/mir9-lua](https://github.com/zym2014/mir9-lua)\n\n作者Blog：<br>\n[http://zym.cnblogs.com](http://zym.cnblogs.com)<br>\n[http://blog.csdn.net/zym_123456](http://blog.csdn.net/zym_123456)<br>\n"
  },
  {
    "path": "发布说明.txt",
    "content": "﻿mir9-lua\n\n    mir9——《热血沙城》，是9秒论坛开源的一个使用Cocos2d-x-2.2.1引擎开发的45度ARPG手游Demo，源代码为c++。mir9-lua是mir9的Lua移植版，使用Quick-Cocos2d-x-3.3 Final引擎开发。由于移植得比较匆忙，代码写得可能比较混乱，请见谅。\n\n    已知Bug：\n    1、怪物在不可见范围时，自动攻击选中怪物会发现怪物选中图片位置不对\n    2、停止自动攻击后，还会跑去攻击一次\n    3、A*寻路会有死循环问题，在小地图上寻路有时会有卡顿的现象\n\n    资源下载地址：\n    http://pan.baidu.com/s/1kTqqhin\n\n    Win32安装包下载地址：\n    http://pan.baidu.com/s/1gd5ruaJ\n\n    Android安装包下载地址：\n    http://pan.baidu.com/s/1i3GcL6X\n\n    Cocos2d-x2.2.1 C++原版下载地址：\n    http://pan.baidu.com/s/1jGl8042\n\n    Cocos2d-x2.2.5 C++修改版下载地址：\n    http://pan.baidu.com/s/1bnfHdzL\n\n    开发环境：\n    Quick-Cocos2d-x-3.3 Final\n    Cocos Code IDE\n\n    注意：\n    在Windows下面运行不能将程序放在中文目录下，否则会播放不了声音，这是引擎的Bug。另资源文件下载完后，请解压缩至项目工程的res目录下。\n\n    项目地址：\n    https://github.com/zym2014/mir9-lua\n\n    作者Blog：\n    http://zym.cnblogs.com\n    http://blog.csdn.net/zym_123456\n"
  },
  {
    "path": "源代码/2.2.5/mir9/.buildpath",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<buildpath>\n\t<buildpathentry kind=\"src\" path=\"\"/>\n\t<buildpathentry kind=\"con\" path=\"org.ccdt.ldt.ExecutionEnvironmentContainer/lua/5.1\"/>\n\t<buildpathentry kind=\"con\" path=\"org.ccdt.ldt.ExecutionEnvironmentContainer/quick/3.2\"/>\n</buildpath>\n"
  },
  {
    "path": "源代码/2.2.5/mir9/.cocos-project.json",
    "content": "{\n  \"has_native\": false,\n  \"project_type\": \"lua\"\n}"
  },
  {
    "path": "源代码/2.2.5/mir9/.project",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<projectDescription>\n\t<name>mir9</name>\n\t<comment></comment>\n\t<projects>\n\t</projects>\n\t<buildSpec>\n\t</buildSpec>\n\t<natures>\n\t\t<nature>org.ccdt.cocosproject</nature>\n\t\t<nature>org.eclipse.koneki.ldt.nature</nature>\n\t</natures>\n</projectDescription>\n"
  },
  {
    "path": "源代码/2.2.5/mir9/.settings/org.eclipse.core.resources.prefs",
    "content": "eclipse.preferences.version=1\nencoding/<project>=UTF-8\n"
  },
  {
    "path": "源代码/2.2.5/mir9/.settings/version.json",
    "content": "{\n  \"ideVersion\": \"1.0.1\",\n  \"templateVersion\": \"1.3\",\n  \"runtimeVersion\": \"1.3\",\n  \"engineVersion\": \"cocos2d-x 3.2\"\n}"
  },
  {
    "path": "源代码/2.2.5/mir9/config.json",
    "content": "{\n  \"init_cfg\": {\n    \"isLandscape\": true,\n    \"name\": \"mir9\",\n    \"width\": 960,\n    \"height\": 640,\n    \"entry\": \"scripts/main.lua\",\n    \"consolePort\": 6010,\n    \"forwardConsolePort\": 10089,\n    \"forwardUploadPort\": 10091\n  },\n  \"simulator_screen_size\": [\n    {\n      \"title\": \"iPhone 3Gs (480x320)\",\n      \"width\": 480,\n      \"height\": 320\n    },\n    {\n      \"title\": \"iPhone 4 (960x640)\",\n      \"width\": 960,\n      \"height\": 640\n    },\n    {\n      \"title\": \"iPhone 5 (1136x640)\",\n      \"width\": 1136,\n      \"height\": 640\n    },\n    {\n      \"title\": \"iPad (1024x768)\",\n      \"width\": 1024,\n      \"height\": 768\n    },\n    {\n      \"title\": \"iPad Retina (2048x1536)\",\n      \"width\": 2048,\n      \"height\": 1536\n    },\n    {\n      \"title\": \"Android (800x480)\",\n      \"width\": 800,\n      \"height\": 480\n    },\n    {\n      \"title\": \"Android (854x480)\",\n      \"width\": 854,\n      \"height\": 480\n    },\n    {\n      \"title\": \"Android (1280x720)\",\n      \"width\": 1280,\n      \"height\": 720\n    },\n    {\n      \"title\": \"Android (1920x1080)\",\n      \"width\": 1920,\n      \"height\": 1080\n    }\n  ]\n}"
  },
  {
    "path": "源代码/2.2.5/mir9/proj.android/.classpath",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<classpath>\n\t<classpathentry kind=\"src\" path=\"src\"/>\n\t<classpathentry kind=\"src\" path=\"gen\"/>\n\t<classpathentry kind=\"con\" path=\"com.android.ide.eclipse.adt.ANDROID_FRAMEWORK\"/>\n\t<classpathentry exported=\"true\" kind=\"con\" path=\"com.android.ide.eclipse.adt.LIBRARIES\"/>\n\t<classpathentry exported=\"true\" kind=\"con\" path=\"com.android.ide.eclipse.adt.DEPENDENCIES\"/>\n\t<classpathentry kind=\"output\" path=\"bin/classes\"/>\n</classpath>\n"
  },
  {
    "path": "源代码/2.2.5/mir9/proj.android/.project",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<projectDescription>\n\t<name>Mir9</name>\n\t<comment></comment>\n\t<projects>\n\t</projects>\n\t<buildSpec>\n\t\t<buildCommand>\n\t\t\t<name>com.android.ide.eclipse.adt.ResourceManagerBuilder</name>\n\t\t\t<arguments>\n\t\t\t</arguments>\n\t\t</buildCommand>\n\t\t<buildCommand>\n\t\t\t<name>com.android.ide.eclipse.adt.PreCompilerBuilder</name>\n\t\t\t<arguments>\n\t\t\t</arguments>\n\t\t</buildCommand>\n\t\t<buildCommand>\n\t\t\t<name>org.eclipse.jdt.core.javabuilder</name>\n\t\t\t<arguments>\n\t\t\t</arguments>\n\t\t</buildCommand>\n\t\t<buildCommand>\n\t\t\t<name>com.android.ide.eclipse.adt.ApkBuilder</name>\n\t\t\t<arguments>\n\t\t\t</arguments>\n\t\t</buildCommand>\n\t</buildSpec>\n\t<natures>\n\t\t<nature>com.android.ide.eclipse.adt.AndroidNature</nature>\n\t\t<nature>org.eclipse.jdt.core.javanature</nature>\n\t</natures>\n</projectDescription>\n"
  },
  {
    "path": "源代码/2.2.5/mir9/proj.android/.settings/org.eclipse.jdt.core.prefs",
    "content": "eclipse.preferences.version=1\norg.eclipse.jdt.core.compiler.codegen.targetPlatform=1.6\norg.eclipse.jdt.core.compiler.compliance=1.6\norg.eclipse.jdt.core.compiler.source=1.6\n"
  },
  {
    "path": "源代码/2.2.5/mir9/proj.android/AndroidManifest.xml",
    "content": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<manifest xmlns:android=\"http://schemas.android.com/apk/res/android\"\n    package=\"com.zym.mir9\"\n    android:versionCode=\"1\"\n    android:versionName=\"1.0\">\n\n    <uses-sdk android:minSdkVersion=\"8\" />\n    <uses-feature android:glEsVersion=\"0x00020000\" />\n\n    <supports-screens android:largeScreens=\"true\"\n        android:smallScreens=\"true\"\n        android:anyDensity=\"true\"\n        android:normalScreens=\"true\"/>\n\n    <uses-permission android:name=\"android.permission.INTERNET\"/>\n    <uses-permission android:name=\"android.permission.WRITE_EXTERNAL_STORAGE\"/>\n\n    <application android:label=\"@string/app_name\"\n        android:icon=\"@drawable/icon\">\n\n        <activity android:name=\".Mir9\"\n            android:label=\"@string/app_name\"\n            android:theme=\"@android:style/Theme.NoTitleBar.Fullscreen\"\n            android:screenOrientation=\"landscape\"\n            android:configChanges=\"orientation\">\n            <intent-filter>\n                <action android:name=\"android.intent.action.MAIN\" />\n                <category android:name=\"android.intent.category.LAUNCHER\" />\n            </intent-filter>\n        </activity>\n    </application>\n</manifest>\n"
  },
  {
    "path": "源代码/2.2.5/mir9/proj.android/build_native.bat",
    "content": "@echo off\n\nset DIR=%~dp0\nset APP_ROOT=%DIR%..\\\nset APP_ANDROID_ROOT=%DIR%\nset COCOS2DX_ROOT=%QUICK_COCOS2DX_ROOT%\\lib\\cocos2d-x\n\necho - config:\necho   ANDROID_NDK_ROOT    = %ANDROID_NDK_ROOT%\necho   QUICK_COCOS2DX_ROOT = %QUICK_COCOS2DX_ROOT%\necho   COCOS2DX_ROOT       = %COCOS2DX_ROOT%\necho   APP_ROOT            = %APP_ROOT%\necho   APP_ANDROID_ROOT    = %APP_ANDROID_ROOT%\n\nrem if dont use DEBUG, comments out two lines below\nset NDK_DEBUG=1\nset NDK_BUILD_FLAGS=CPPFLAGS=\"-DCOCOS2D_DEBUG=1\"\n\necho - cleanup\nif exist \"%APP_ANDROID_ROOT%bin\" rmdir /s /q \"%APP_ANDROID_ROOT%bin\"\nmkdir \"%APP_ANDROID_ROOT%bin\"\nif exist \"%APP_ANDROID_ROOT%assets\" rmdir /s /q \"%APP_ANDROID_ROOT%assets\"\nmkdir \"%APP_ANDROID_ROOT%assets\"\n\necho - copy scripts\nmkdir \"%APP_ANDROID_ROOT%assets\\scripts\"\nxcopy /s /q \"%APP_ROOT%scripts\\*.*\" \"%APP_ANDROID_ROOT%assets\\scripts\\\"\necho - copy resources\nmkdir \"%APP_ANDROID_ROOT%assets\\res\"\nxcopy /s /q \"%APP_ROOT%res\\*.*\" \"%APP_ANDROID_ROOT%assets\\res\\\"\n\necho Using prebuilt externals\n\"%ANDROID_NDK_ROOT%\\ndk-build\" %ANDROID_NDK_BUILD_FLAGS% NDK_DEBUG=%NDK_DEBUG% %NDK_BUILD_FLAGS% -C %APP_ANDROID_ROOT% NDK_MODULE_PATH=%QUICK_COCOS2DX_ROOT%;%COCOS2DX_ROOT%;%COCOS2DX_ROOT%\\cocos2dx\\platform\\third_party\\android\\prebuilt\n"
  },
  {
    "path": "源代码/2.2.5/mir9/proj.android/build_native.sh",
    "content": "#!/usr/bin/env bash\n\nDIR=\"$( cd \"$( dirname \"${BASH_SOURCE[0]}\" )\" && pwd )\"\nAPP_ROOT=\"$DIR/..\"\nAPP_ANDROID_ROOT=\"$DIR\"\nCOCOS2DX_ROOT=$QUICK_COCOS2DX_ROOT/lib/cocos2d-x\n\necho \"- config:\"\necho \"  ANDROID_NDK_ROOT    = $ANDROID_NDK_ROOT\"\necho \"  QUICK_COCOS2DX_ROOT = $QUICK_COCOS2DX_ROOT\"\necho \"  COCOS2DX_ROOT       = $COCOS2DX_ROOT\"\necho \"  APP_ROOT            = $APP_ROOT\"\necho \"  APP_ANDROID_ROOT    = $APP_ANDROID_ROOT\"\n\n# if dont use DEBUG, comments out two lines below\nNDK_DEBUG=1\nNDK_BUILD_FLAGS=\"CPPFLAGS=\\\"-DCOCOS2D_DEBUG=1\\\"\"\n\necho \"- cleanup\"\nfind \"$APP_ANDROID_ROOT\" -type d | xargs chmod 755 $1\nif [ -d \"$APP_ANDROID_ROOT\"/bin ]; then\n    rm -rf \"$APP_ANDROID_ROOT\"/bin/*.apk\nfi\nmkdir -p \"$APP_ANDROID_ROOT\"/bin\nchmod 755 \"$APP_ANDROID_ROOT\"/bin\n\nif [ -d \"$APP_ANDROID_ROOT\"/assets ]; then\n    rm -rf \"$APP_ANDROID_ROOT\"/assets/*\nfi\nmkdir -p \"$APP_ANDROID_ROOT\"/assets\nchmod 755 \"$APP_ANDROID_ROOT\"/assets\n\necho \"- copy scripts\"\ncp -rf \"$APP_ROOT\"/scripts \"$APP_ANDROID_ROOT\"/assets/\necho \"- copy resources\"\ncp -rf \"$APP_ROOT\"/res \"$APP_ANDROID_ROOT\"/assets/\n\n# build\necho \"Using prebuilt externals\"\n\"$ANDROID_NDK_ROOT\"/ndk-build $ANDROID_NDK_BUILD_FLAGS NDK_DEBUG=$NDK_DEBUG $NDK_BUILD_FLAGS -C \"$APP_ANDROID_ROOT\" $* \\\n\"NDK_MODULE_PATH=${QUICK_COCOS2DX_ROOT}:${COCOS2DX_ROOT}:${COCOS2DX_ROOT}/cocos2dx/platform/third_party/android/prebuilt\"\n"
  },
  {
    "path": "源代码/2.2.5/mir9/proj.android/clean.bat",
    "content": "@echo off\n\nset DIR=%~dp0\nrmdir /s/q %DIR%obj\nrmdir /s/q %DIR%libs\\armeabi\nrmdir /s/q %DIR%assets\n\n"
  },
  {
    "path": "源代码/2.2.5/mir9/proj.android/clean.sh",
    "content": "#!/usr/bin/env bash\nDIR=\"$( cd \"$( dirname \"${BASH_SOURCE[0]}\" )\" && pwd )\"\nrm -fr $DIR/obj/*\nrm -fr $DIR/libs/armeabi/*.so\nrm -fr $DIR/assets/*\n\n"
  },
  {
    "path": "源代码/2.2.5/mir9/proj.android/gen/com/zym/mir9/BuildConfig.java",
    "content": "/** Automatically generated file. DO NOT MODIFY */\npackage com.zym.mir9;\n\npublic final class BuildConfig {\n    public final static boolean DEBUG = true;\n}"
  },
  {
    "path": "源代码/2.2.5/mir9/proj.android/gen/com/zym/mir9/R.java",
    "content": "/* AUTO-GENERATED FILE.  DO NOT MODIFY.\n *\n * This class was automatically generated by the\n * aapt tool from the resource data it found.  It\n * should not be modified by hand.\n */\n\npackage com.zym.mir9;\n\npublic final class R {\n    public static final class attr {\n    }\n    public static final class drawable {\n        public static final int icon=0x7f020000;\n    }\n    public static final class string {\n        public static final int app_name=0x7f030000;\n    }\n}\n"
  },
  {
    "path": "源代码/2.2.5/mir9/proj.android/jni/Android.mk",
    "content": "LOCAL_PATH := $(call my-dir)\n\ninclude $(CLEAR_VARS)\n\nLOCAL_MODULE := game_shared\n\nLOCAL_MODULE_FILENAME := libgame\n\nLOCAL_SRC_FILES := hellocpp/main.cpp \\\n    ../../sources/AppDelegate.cpp\n\nLOCAL_C_INCLUDES := $(LOCAL_PATH)/../../sources\n\nLOCAL_CFLAGS += -D__GXX_EXPERIMENTAL_CXX0X__ -std=gnu++11 -Wno-psabi -DCC_LUA_ENGINE_ENABLED=1 $(ANDROID_COCOS2D_BUILD_FLAGS)\n\nLOCAL_WHOLE_STATIC_LIBRARIES := quickcocos2dx\n\ninclude $(BUILD_SHARED_LIBRARY)\n\n$(call import-module,lib/proj.android)\n"
  },
  {
    "path": "源代码/2.2.5/mir9/proj.android/jni/Application.mk",
    "content": "APP_STL := gnustl_static\nAPP_CPPFLAGS := -D__GXX_EXPERIMENTAL_CXX0X__ -std=gnu++11 -frtti -Wno-error=format-security -fsigned-char -Os $(CPPFLAGS)\nAPP_ABI := armeabi\n"
  },
  {
    "path": "源代码/2.2.5/mir9/proj.android/jni/hellocpp/main.cpp",
    "content": "\n#include \"cocos2d.h\"\n#include \"AppDelegate.h\"\n#include \"platform/android/jni/JniHelper.h\"\n#include <jni.h>\n#include <android/log.h>\n\n#define  LOG_TAG    \"main\"\n#define  LOGD(...)  __android_log_print(ANDROID_LOG_DEBUG,LOG_TAG,__VA_ARGS__)\n\nusing namespace cocos2d;\n\nextern \"C\"\n{\n\njint JNI_OnLoad(JavaVM *vm, void *reserved)\n{\n    JniHelper::setJavaVM(vm);\n    return JNI_VERSION_1_4;\n}\n\nvoid Java_org_cocos2dx_lib_Cocos2dxRenderer_nativeInit(JNIEnv*  env, jobject thiz, jint w, jint h)\n{\n    if (!CCDirector::sharedDirector()->getOpenGLView())\n    {\n        CCEGLView *view = CCEGLView::sharedOpenGLView();\n        view->setFrameSize(w, h);\n\n        AppDelegate *pAppDelegate = new AppDelegate();\n        CCApplication::sharedApplication()->run();\n    }\n    else\n    {\n        ccGLInvalidateStateCache();\n        CCShaderCache::sharedShaderCache()->reloadDefaultShaders();\n        ccDrawInit();\n        CCTextureCache::reloadAllTextures();\n        CCNotificationCenter::sharedNotificationCenter()->postNotification(EVENT_COME_TO_FOREGROUND, NULL);\n        CCDirector::sharedDirector()->setGLDefaultValues();\n    }\n}\n\n}\n"
  },
  {
    "path": "源代码/2.2.5/mir9/proj.android/jni/list.sh",
    "content": "#!/bin/bash\n\nappend_str=' \\'\n\nlist_alldir()\n{\n    for file in $1/*\n    do\n        if [ -f $file ]; then\n            echo $file$append_str | grep .cpp\n        fi\n\n        if [ -d $file ]; then\n            list_alldir $file\n        fi\n    done\n}\n\nif [ $# -gt 0 ]; then\n    list_alldir \"$1\"\nelse\n    list_alldir \".\"\nfi\n"
  },
  {
    "path": "源代码/2.2.5/mir9/proj.android/project.properties",
    "content": "# This file is automatically generated by Android Tools.\n# Do not modify this file -- YOUR CHANGES WILL BE ERASED!\n#\n# This file must be checked in Version Control Systems.\n#\n# To customize properties used by the Ant build system edit\n# \"ant.properties\", and override values to adapt the script to your\n# project structure.\n#\n# To enable ProGuard to shrink and obfuscate your code, uncomment this (available properties: sdk.dir, user.home):\n#proguard.config=${sdk.dir}/tools/proguard/proguard-android.txt:proguard-project.txt\n\n# Project target.\ntarget=Google Inc.:Google APIs (x86 System Image):19\nandroid.library=false\nandroid.library.reference.1=../../../lib/cocos2d-x/cocos2dx/platform/android/java\n"
  },
  {
    "path": "源代码/2.2.5/mir9/proj.android/res/values/strings.xml",
    "content": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<resources>\n    <string name=\"app_name\">热血沙城</string>\n</resources>\n"
  },
  {
    "path": "源代码/2.2.5/mir9/proj.android/src/com/zym/mir9/Mir9.java",
    "content": "/****************************************************************************\nCopyright (c) 2010-2012 cocos2d-x.org\n\nhttp://www.cocos2d-x.org\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in\nall copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\nTHE SOFTWARE.\n****************************************************************************/\npackage com.zym.mir9;\n\nimport org.cocos2dx.lib.Cocos2dxActivity;\n\nimport android.os.Bundle;\n\npublic class Mir9 extends Cocos2dxActivity {\n\n\t@Override\n\tpublic void onCreate(Bundle savedInstanceState) {\n\t\tsuper.onCreate(savedInstanceState);\n\t}\n\n    static {\n    \tSystem.loadLibrary(\"game\");\n    }\n}\n"
  },
  {
    "path": "源代码/2.2.5/mir9/proj.ios/AppController.h",
    "content": "/****************************************************************************\n Copyright (c) 2010 cocos2d-x.org\n\n http://www.cocos2d-x.org\n\n Permission is hereby granted, free of charge, to any person obtaining a copy\n of this software and associated documentation files (the \"Software\"), to deal\n in the Software without restriction, including without limitation the rights\n to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n copies of the Software, and to permit persons to whom the Software is\n furnished to do so, subject to the following conditions:\n\n The above copyright notice and this permission notice shall be included in\n all copies or substantial portions of the Software.\n\n THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n THE SOFTWARE.\n ****************************************************************************/\n\n@class RootViewController;\n\n#define kOpenGameImmediately    0\n#define kOpenGameWaitForAlert   1\n#define kOpenGameExit           2\n\n@interface AppController : NSObject <UIAccelerometerDelegate, UIAlertViewDelegate, UITextFieldDelegate, UIApplicationDelegate, UIAlertViewDelegate> {\n    UIWindow *window;\n    @public RootViewController *viewController;\n\n    int openGame;\n    int appUpdateCheckResult;\n}\n\n@end\n\n"
  },
  {
    "path": "源代码/2.2.5/mir9/proj.ios/AppController.mm",
    "content": "/****************************************************************************\n Copyright (c) 2010 cocos2d-x.org\n\n http://www.cocos2d-x.org\n\n Permission is hereby granted, free of charge, to any person obtaining a copy\n of this software and associated documentation files (the \"Software\"), to deal\n in the Software without restriction, including without limitation the rights\n to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n copies of the Software, and to permit persons to whom the Software is\n furnished to do so, subject to the following conditions:\n\n The above copyright notice and this permission notice shall be included in\n all copies or substantial portions of the Software.\n\n THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n THE SOFTWARE.\n ****************************************************************************/\n#import <UIKit/UIKit.h>\n#import <AVFoundation/AVAudioSession.h>\n#import \"AppController.h\"\n#import \"cocos2d.h\"\n#import \"EAGLView.h\"\n#import \"AppDelegate.h\"\n#import \"RootViewController.h\"\n\n@implementation AppController\n\n#pragma mark -\n#pragma mark Application lifecycle\n\n// cocos2d application instance\nstatic AppDelegate s_sharedApplication;\n\n- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {\n    // Override point for customization after application launch.\n\n    // Add the view controller's view to the window and display.\n    window = [[UIWindow alloc] initWithFrame: [[UIScreen mainScreen] bounds]];\n    EAGLView *__glView = [EAGLView viewWithFrame: [window bounds]\n                                     pixelFormat: kEAGLColorFormatRGBA8\n                                     depthFormat: GL_DEPTH24_STENCIL8_OES\n                              preserveBackbuffer: NO\n                                      sharegroup: nil\n                                   multiSampling: NO\n                                 numberOfSamples: 0];\n    // Enable multi-touches\n    // [__glView setMultipleTouchEnabled:YES];\n\n    // Use RootViewController manage EAGLView\n    viewController = [[RootViewController alloc] initWithNibName:nil bundle:nil];\n    viewController.wantsFullScreenLayout = YES;\n    viewController.view = __glView;\n\n    // Set RootViewController to window\n    if ([[UIDevice currentDevice].systemVersion floatValue] < 6.0)\n    {\n        [window addSubview: viewController.view];\n    }\n    [window setRootViewController:viewController];\n    [window makeKeyAndVisible];\n    [[UIApplication sharedApplication] setStatusBarHidden: YES];\n    cocos2d::CCApplication::sharedApplication()->run();\n\n    return YES;\n}\n\n- (void)applicationWillResignActive:(UIApplication *)application {\n    /*\n     Sent when the application is about to move from active to inactive state. This can occur for certain types of temporary interruptions (such as an incoming phone call or SMS message) or when the user quits the application and it begins the transition to the background state.\n     Use this method to pause ongoing tasks, disable timers, and throttle down OpenGL ES frame rates. Games should use this method to pause the game.\n     */\n    cocos2d::CCDirector::sharedDirector()->pause();\n}\n\n- (void)applicationDidBecomeActive:(UIApplication *)application {\n    /*\n     Restart any tasks that were paused (or not yet started) while the application was inactive. If the application was previously in the background, optionally refresh the user interface.\n     */\n    cocos2d::CCDirector::sharedDirector()->resume();\n}\n\n- (void)applicationDidEnterBackground:(UIApplication *)application {\n    /*\n     Use this method to release shared resources, save user data, invalidate timers, and store enough application state information to restore your application to its current state in case it is terminated later.\n     If your application supports background execution, called instead of applicationWillTerminate: when the user quits.\n     */\n    cocos2d::CCApplication::sharedApplication()->applicationDidEnterBackground();\n}\n\n- (void)applicationWillEnterForeground:(UIApplication *)application {\n    /*\n     Called as part of  transition from the background to the inactive state: here you can undo many of the changes made on entering the background.\n     */\n    NSError *err;\n    [[AVAudioSession sharedInstance] setActive:true error:&err];\n    cocos2d::CCApplication::sharedApplication()->applicationWillEnterForeground();\n}\n\n- (void)applicationWillTerminate:(UIApplication *)application {\n    /*\n     Called when the application is about to terminate.\n     See also applicationDidEnterBackground:.\n     */\n}\n\n#pragma mark -\n#pragma mark Memory management\n\n- (void)applicationDidReceiveMemoryWarning:(UIApplication *)application {\n    /*\n     Free up as much memory as possible by purging cached data objects that can be recreated (or reloaded from disk) later.\n     */\n}\n\n- (void)dealloc {\n    [super dealloc];\n}\n\n@end\n\n"
  },
  {
    "path": "源代码/2.2.5/mir9/proj.ios/Resources/Info.plist",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE plist PUBLIC \"-//Apple//DTD PLIST 1.0//EN\" \"http://www.apple.com/DTDs/PropertyList-1.0.dtd\">\n<plist version=\"1.0\">\n<dict>\n\t<key>CFBundleDisplayName</key>\n\t<string>${PRODUCT_NAME}</string>\n\t<key>CFBundleExecutable</key>\n\t<string>${EXECUTABLE_NAME}</string>\n\t<key>CFBundleIconFile</key>\n\t<string></string>\n\t<key>CFBundleIconFiles</key>\n\t<array>\n\t\t<string>Icon.png</string>\n\t\t<string>Icon@2x.png</string>\n\t\t<string>Icon-72.png</string>\n\t</array>\n\t<key>CFBundleIdentifier</key>\n\t<string>com.zym.${PRODUCT_NAME:rfc1034identifier}</string>\n\t<key>CFBundleInfoDictionaryVersion</key>\n\t<string>6.0</string>\n\t<key>CFBundleName</key>\n\t<string>${PRODUCT_NAME}</string>\n\t<key>CFBundlePackageType</key>\n\t<string>APPL</string>\n\t<key>CFBundleShortVersionString</key>\n\t<string>1.0</string>\n\t<key>CFBundleSignature</key>\n\t<string>????</string>\n\t<key>CFBundleVersion</key>\n\t<string>1.0</string>\n\t<key>LSRequiresIPhoneOS</key>\n\t<true/>\n\t<key>UIPrerenderedIcon</key>\n\t<true/>\n\t<key>UIRequiredDeviceCapabilities</key>\n\t<dict>\n\t\t<key>accelerometer</key>\n\t\t<true/>\n\t\t<key>opengles-1</key>\n\t\t<true/>\n\t</dict>\n\t<key>UIStatusBarHidden</key>\n\t<true/>\n\t<key>UISupportedInterfaceOrientations</key>\n\t<array>\n\t\t<string>UIInterfaceOrientationPortrait</string>\n\t</array>\n\t<key>UIViewControllerBasedStatusBarAppearance</key>\n\t<false/>\n</dict>\n</plist>\n"
  },
  {
    "path": "源代码/2.2.5/mir9/proj.ios/RootViewController.h",
    "content": "/****************************************************************************\n Copyright (c) 2010-2011 cocos2d-x.org\n Copyright (c) 2010      Ricardo Quesada\n\n http://www.cocos2d-x.org\n\n Permission is hereby granted, free of charge, to any person obtaining a copy\n of this software and associated documentation files (the \"Software\"), to deal\n in the Software without restriction, including without limitation the rights\n to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n copies of the Software, and to permit persons to whom the Software is\n furnished to do so, subject to the following conditions:\n\n The above copyright notice and this permission notice shall be included in\n all copies or substantial portions of the Software.\n\n THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n THE SOFTWARE.\n ****************************************************************************/\n\n#import <UIKit/UIKit.h>\n#import <GameKit/GameKit.h>\n\n@interface RootViewController : UIViewController <GKAchievementViewControllerDelegate, GKLeaderboardViewControllerDelegate>\n\n- (BOOL) prefersStatusBarHidden;\n\n@end\n"
  },
  {
    "path": "源代码/2.2.5/mir9/proj.ios/RootViewController.mm",
    "content": "/****************************************************************************\n Copyright (c) 2010-2011 cocos2d-x.org\n Copyright (c) 2010      Ricardo Quesada\n\n http://www.cocos2d-x.org\n\n Permission is hereby granted, free of charge, to any person obtaining a copy\n of this software and associated documentation files (the \"Software\"), to deal\n in the Software without restriction, including without limitation the rights\n to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n copies of the Software, and to permit persons to whom the Software is\n furnished to do so, subject to the following conditions:\n\n The above copyright notice and this permission notice shall be included in\n all copies or substantial portions of the Software.\n\n THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n THE SOFTWARE.\n ****************************************************************************/\n\n#import \"RootViewController.h\"\n\n\n@implementation RootViewController\n\n// GKLeaderboardViewControllerのDelegate\n-(void)leaderboardViewControllerDidFinish:(GKLeaderboardViewController *)viewController\n{\n    [self dismissViewControllerAnimated:YES completion:nil];\n}\n\n// GKAchievementViewControllerのDelegate\n-(void)achievementViewControllerDidFinish:(GKAchievementViewController *)viewController\n{\n    [self dismissViewControllerAnimated:YES completion:nil];\n}\n\n// Override to allow orientations other than the default portrait orientation.\n// This method is deprecated on ios6\n- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation {\n    return UIInterfaceOrientationIsPortrait(interfaceOrientation);\n}\n\n// For ios6.0 and higher, use supportedInterfaceOrientations & shouldAutorotate instead\n- (NSUInteger) supportedInterfaceOrientations\n{\n#ifdef __IPHONE_6_0\n    return UIInterfaceOrientationMaskPortrait;\n#endif\n}\n\n- (BOOL) shouldAutorotate {\n    return YES;\n}\n\n//fix not hide status on ios7\n- (BOOL) prefersStatusBarHidden {\n    return YES;\n}\n\n- (void)didReceiveMemoryWarning {\n    // Releases the view if it doesn't have a superview.\n    [super didReceiveMemoryWarning];\n    // Release any cached data, images, etc that aren't in use.\n}\n\n- (void)viewDidUnload {\n    [super viewDidUnload];\n    // Release any retained subviews of the main view.\n    // e.g. self.myOutlet = nil;\n}\n\n- (void)dealloc {\n    [super dealloc];\n}\n\n@end\n"
  },
  {
    "path": "源代码/2.2.5/mir9/proj.ios/main.m",
    "content": "\n#import <UIKit/UIKit.h>\n\nint main(int argc, char *argv[]) {\n    NSAutoreleasePool *pool = [NSAutoreleasePool new];\n    int retVal = UIApplicationMain(argc, argv, nil, @\"AppController\");\n    [pool release];\n    return retVal;\n}\n"
  },
  {
    "path": "源代码/2.2.5/mir9/proj.ios/mir9.xcodeproj/project.pbxproj",
    "content": "// !$*UTF8*$!\n{\n\tarchiveVersion = 1;\n\tclasses = {\n\t};\n\tobjectVersion = 46;\n\tobjects = {\n\n/* Begin PBXBuildFile section */\n\t\t2EDD276C191B6258004F9539 /* AppDelegate.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 2EDD276A191B6258004F9539 /* AppDelegate.cpp */; };\n\t\t2EDD2787191B62CA004F9539 /* Default-568h@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = 2EDD2780191B62CA004F9539 /* Default-568h@2x.png */; };\n\t\t2EDD2788191B62CA004F9539 /* Default.png in Resources */ = {isa = PBXBuildFile; fileRef = 2EDD2781191B62CA004F9539 /* Default.png */; };\n\t\t2EDD2789191B62CA004F9539 /* Default@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = 2EDD2782191B62CA004F9539 /* Default@2x.png */; };\n\t\t2EDD278A191B62CA004F9539 /* Icon-72.png in Resources */ = {isa = PBXBuildFile; fileRef = 2EDD2783191B62CA004F9539 /* Icon-72.png */; };\n\t\t2EDD278B191B62CA004F9539 /* Icon.png in Resources */ = {isa = PBXBuildFile; fileRef = 2EDD2784191B62CA004F9539 /* Icon.png */; };\n\t\t2EDD278C191B62CA004F9539 /* Icon@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = 2EDD2785191B62CA004F9539 /* Icon@2x.png */; };\n\t\t2EDD2790191B62D6004F9539 /* res in Resources */ = {isa = PBXBuildFile; fileRef = 2EDD278E191B62D6004F9539 /* res */; };\n\t\t2EDD2791191B62D6004F9539 /* scripts in Resources */ = {isa = PBXBuildFile; fileRef = 2EDD278F191B62D6004F9539 /* scripts */; };\n\t\t2EDD2799191B639C004F9539 /* AppController.mm in Sources */ = {isa = PBXBuildFile; fileRef = 2EDD2794191B639C004F9539 /* AppController.mm */; };\n\t\t2EDD279A191B639C004F9539 /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 2EDD2795191B639C004F9539 /* main.m */; };\n\t\t2EDD279B191B639C004F9539 /* RootViewController.mm in Sources */ = {isa = PBXBuildFile; fileRef = 2EDD2798191B639C004F9539 /* RootViewController.mm */; };\n\t\tF4323CF716D3298E0072B773 /* libquickcocos2dx.a in Frameworks */ = {isa = PBXBuildFile; fileRef = F48F590816D21F8C000651BE /* libquickcocos2dx.a */; };\n\t\tF452BFC51687EEF900DC5BCC /* CoreText.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F452BFC41687EEF900DC5BCC /* CoreText.framework */; };\n\t\tF452BFD01687F0F200DC5BCC /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F452BFCF1687F0F200DC5BCC /* UIKit.framework */; };\n\t\tF456ECC615EE018E00FCF3E2 /* QuartzCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F456ECC515EE018E00FCF3E2 /* QuartzCore.framework */; };\n\t\tF456ECC815EE018E00FCF3E2 /* OpenGLES.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F456ECC715EE018E00FCF3E2 /* OpenGLES.framework */; };\n\t\tF456ECCA15EE018E00FCF3E2 /* OpenAL.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F456ECC915EE018E00FCF3E2 /* OpenAL.framework */; };\n\t\tF456ECCC15EE018E00FCF3E2 /* AudioToolbox.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F456ECCB15EE018E00FCF3E2 /* AudioToolbox.framework */; };\n\t\tF456ECCE15EE018E00FCF3E2 /* AVFoundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F456ECCD15EE018E00FCF3E2 /* AVFoundation.framework */; };\n\t\tF456ECD215EE018E00FCF3E2 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F456ECD115EE018E00FCF3E2 /* Foundation.framework */; };\n\t\tF456ECD415EE018E00FCF3E2 /* CoreGraphics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F456ECD315EE018E00FCF3E2 /* CoreGraphics.framework */; };\n\t\tF456F0F915EE0CDB00FCF3E2 /* CFNetwork.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F456F0F815EE0CDB00FCF3E2 /* CFNetwork.framework */; };\n\t\tF456F0FD15EE0CF600FCF3E2 /* SystemConfiguration.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F456F0FC15EE0CF600FCF3E2 /* SystemConfiguration.framework */; };\n\t\tF456F10515EE0D2D00FCF3E2 /* MobileCoreServices.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F456F10415EE0D2D00FCF3E2 /* MobileCoreServices.framework */; };\n\t\tF4949C791699553B00DB561E /* AddressBook.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F4949C781699553B00DB561E /* AddressBook.framework */; };\n\t\tF4949C7B1699554600DB561E /* CoreTelephony.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F4949C7A1699554600DB561E /* CoreTelephony.framework */; settings = {ATTRIBUTES = (Weak, ); }; };\n\t\tF4F40D1B16573CE0007937AD /* StoreKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F4F40D1A16573CE0007937AD /* StoreKit.framework */; };\n/* End PBXBuildFile section */\n\n/* Begin PBXContainerItemProxy section */\n\t\tF48F590716D21F8C000651BE /* PBXContainerItemProxy */ = {\n\t\t\tisa = PBXContainerItemProxy;\n\t\t\tcontainerPortal = F4499C7116C7CDE20059FF37 /* quickcocos2dx.xcodeproj */;\n\t\t\tproxyType = 2;\n\t\t\tremoteGlobalIDString = F45A2B9D166B07B600760194;\n\t\t\tremoteInfo = quickcocos2dx;\n\t\t};\n/* End PBXContainerItemProxy section */\n\n/* Begin PBXFileReference section */\n\t\t2EDD276A191B6258004F9539 /* AppDelegate.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = AppDelegate.cpp; sourceTree = \"<group>\"; };\n\t\t2EDD276B191B6258004F9539 /* AppDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AppDelegate.h; sourceTree = \"<group>\"; };\n\t\t2EDD2780191B62CA004F9539 /* Default-568h@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = \"Default-568h@2x.png\"; sourceTree = \"<group>\"; };\n\t\t2EDD2781191B62CA004F9539 /* Default.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Default.png; sourceTree = \"<group>\"; };\n\t\t2EDD2782191B62CA004F9539 /* Default@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = \"Default@2x.png\"; sourceTree = \"<group>\"; };\n\t\t2EDD2783191B62CA004F9539 /* Icon-72.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = \"Icon-72.png\"; sourceTree = \"<group>\"; };\n\t\t2EDD2784191B62CA004F9539 /* Icon.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Icon.png; sourceTree = \"<group>\"; };\n\t\t2EDD2785191B62CA004F9539 /* Icon@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = \"Icon@2x.png\"; sourceTree = \"<group>\"; };\n\t\t2EDD2786191B62CA004F9539 /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = \"<group>\"; };\n\t\t2EDD278E191B62D6004F9539 /* res */ = {isa = PBXFileReference; lastKnownFileType = folder; name = res; path = ../../res; sourceTree = \"<group>\"; };\n\t\t2EDD278F191B62D6004F9539 /* scripts */ = {isa = PBXFileReference; lastKnownFileType = folder; name = scripts; path = ../../scripts; sourceTree = \"<group>\"; };\n\t\t2EDD2793191B639C004F9539 /* AppController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AppController.h; sourceTree = \"<group>\"; };\n\t\t2EDD2794191B639C004F9539 /* AppController.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = AppController.mm; sourceTree = \"<group>\"; };\n\t\t2EDD2795191B639C004F9539 /* main.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = main.m; sourceTree = \"<group>\"; };\n\t\t2EDD2796191B639C004F9539 /* Prefix.pch */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Prefix.pch; sourceTree = \"<group>\"; };\n\t\t2EDD2797191B639C004F9539 /* RootViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RootViewController.h; sourceTree = \"<group>\"; };\n\t\t2EDD2798191B639C004F9539 /* RootViewController.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = RootViewController.mm; sourceTree = \"<group>\"; };\n\t\tF4499C7116C7CDE20059FF37 /* quickcocos2dx.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = \"wrapper.pb-project\"; name = quickcocos2dx.xcodeproj; path = lib/proj.ios/quickcocos2dx.xcodeproj; sourceTree = QUICK_COCOS2DX_ROOT; };\n\t\tF452BFC41687EEF900DC5BCC /* CoreText.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreText.framework; path = System/Library/Frameworks/CoreText.framework; sourceTree = SDKROOT; };\n\t\tF452BFCF1687F0F200DC5BCC /* UIKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = UIKit.framework; path = System/Library/Frameworks/UIKit.framework; sourceTree = SDKROOT; };\n\t\tF456ECC115EE018E00FCF3E2 /* mir9.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = mir9.app; sourceTree = BUILT_PRODUCTS_DIR; };\n\t\tF456ECC515EE018E00FCF3E2 /* QuartzCore.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = QuartzCore.framework; path = System/Library/Frameworks/QuartzCore.framework; sourceTree = SDKROOT; };\n\t\tF456ECC715EE018E00FCF3E2 /* OpenGLES.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = OpenGLES.framework; path = System/Library/Frameworks/OpenGLES.framework; sourceTree = SDKROOT; };\n\t\tF456ECC915EE018E00FCF3E2 /* OpenAL.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = OpenAL.framework; path = System/Library/Frameworks/OpenAL.framework; sourceTree = SDKROOT; };\n\t\tF456ECCB15EE018E00FCF3E2 /* AudioToolbox.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AudioToolbox.framework; path = System/Library/Frameworks/AudioToolbox.framework; sourceTree = SDKROOT; };\n\t\tF456ECCD15EE018E00FCF3E2 /* AVFoundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AVFoundation.framework; path = System/Library/Frameworks/AVFoundation.framework; sourceTree = SDKROOT; };\n\t\tF456ECD115EE018E00FCF3E2 /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = System/Library/Frameworks/Foundation.framework; sourceTree = SDKROOT; };\n\t\tF456ECD315EE018E00FCF3E2 /* CoreGraphics.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreGraphics.framework; path = System/Library/Frameworks/CoreGraphics.framework; sourceTree = SDKROOT; };\n\t\tF456F0F815EE0CDB00FCF3E2 /* CFNetwork.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CFNetwork.framework; path = System/Library/Frameworks/CFNetwork.framework; sourceTree = SDKROOT; };\n\t\tF456F0FA15EE0CEB00FCF3E2 /* CoreFoundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreFoundation.framework; path = System/Library/Frameworks/CoreFoundation.framework; sourceTree = SDKROOT; };\n\t\tF456F0FC15EE0CF600FCF3E2 /* SystemConfiguration.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = SystemConfiguration.framework; path = System/Library/Frameworks/SystemConfiguration.framework; sourceTree = SDKROOT; };\n\t\tF456F10415EE0D2D00FCF3E2 /* MobileCoreServices.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = MobileCoreServices.framework; path = System/Library/Frameworks/MobileCoreServices.framework; sourceTree = SDKROOT; };\n\t\tF456F10615EE0D3500FCF3E2 /* Security.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Security.framework; path = System/Library/Frameworks/Security.framework; sourceTree = SDKROOT; };\n\t\tF4949C781699553B00DB561E /* AddressBook.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AddressBook.framework; path = System/Library/Frameworks/AddressBook.framework; sourceTree = SDKROOT; };\n\t\tF4949C7A1699554600DB561E /* CoreTelephony.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreTelephony.framework; path = System/Library/Frameworks/CoreTelephony.framework; sourceTree = SDKROOT; };\n\t\tF4F40D1A16573CE0007937AD /* StoreKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = StoreKit.framework; path = System/Library/Frameworks/StoreKit.framework; sourceTree = SDKROOT; };\n/* End PBXFileReference section */\n\n/* Begin PBXFrameworksBuildPhase section */\n\t\tF456ECBE15EE018E00FCF3E2 /* Frameworks */ = {\n\t\t\tisa = PBXFrameworksBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\tF4323CF716D3298E0072B773 /* libquickcocos2dx.a in Frameworks */,\n\t\t\t\tF452BFD01687F0F200DC5BCC /* UIKit.framework in Frameworks */,\n\t\t\t\tF456F0FD15EE0CF600FCF3E2 /* SystemConfiguration.framework in Frameworks */,\n\t\t\t\tF456ECC615EE018E00FCF3E2 /* QuartzCore.framework in Frameworks */,\n\t\t\t\tF4949C7B1699554600DB561E /* CoreTelephony.framework in Frameworks */,\n\t\t\t\tF456ECD415EE018E00FCF3E2 /* CoreGraphics.framework in Frameworks */,\n\t\t\t\tF4949C791699553B00DB561E /* AddressBook.framework in Frameworks */,\n\t\t\t\tF456ECC815EE018E00FCF3E2 /* OpenGLES.framework in Frameworks */,\n\t\t\t\tF452BFC51687EEF900DC5BCC /* CoreText.framework in Frameworks */,\n\t\t\t\tF4F40D1B16573CE0007937AD /* StoreKit.framework in Frameworks */,\n\t\t\t\tF456F10515EE0D2D00FCF3E2 /* MobileCoreServices.framework in Frameworks */,\n\t\t\t\tF456F0F915EE0CDB00FCF3E2 /* CFNetwork.framework in Frameworks */,\n\t\t\t\tF456ECCA15EE018E00FCF3E2 /* OpenAL.framework in Frameworks */,\n\t\t\t\tF456ECCC15EE018E00FCF3E2 /* AudioToolbox.framework in Frameworks */,\n\t\t\t\tF456ECCE15EE018E00FCF3E2 /* AVFoundation.framework in Frameworks */,\n\t\t\t\tF456ECD215EE018E00FCF3E2 /* Foundation.framework in Frameworks */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n/* End PBXFrameworksBuildPhase section */\n\n/* Begin PBXGroup section */\n\t\t2EDD2769191B6258004F9539 /* sources */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\t2EDD276A191B6258004F9539 /* AppDelegate.cpp */,\n\t\t\t\t2EDD276B191B6258004F9539 /* AppDelegate.h */,\n\t\t\t);\n\t\t\tname = sources;\n\t\t\tpath = ../sources;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\t2EDD277F191B62CA004F9539 /* Resources */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\t2EDD278E191B62D6004F9539 /* res */,\n\t\t\t\t2EDD278F191B62D6004F9539 /* scripts */,\n\t\t\t\t2EDD279C191B641B004F9539 /* ios */,\n\t\t\t);\n\t\t\tpath = Resources;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\t2EDD2792191B6392004F9539 /* ios */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\t2EDD2793191B639C004F9539 /* AppController.h */,\n\t\t\t\t2EDD2794191B639C004F9539 /* AppController.mm */,\n\t\t\t\t2EDD2795191B639C004F9539 /* main.m */,\n\t\t\t\t2EDD2796191B639C004F9539 /* Prefix.pch */,\n\t\t\t\t2EDD2797191B639C004F9539 /* RootViewController.h */,\n\t\t\t\t2EDD2798191B639C004F9539 /* RootViewController.mm */,\n\t\t\t);\n\t\t\tname = ios;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\t2EDD279C191B641B004F9539 /* ios */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\t2EDD2780191B62CA004F9539 /* Default-568h@2x.png */,\n\t\t\t\t2EDD2781191B62CA004F9539 /* Default.png */,\n\t\t\t\t2EDD2782191B62CA004F9539 /* Default@2x.png */,\n\t\t\t\t2EDD2783191B62CA004F9539 /* Icon-72.png */,\n\t\t\t\t2EDD2784191B62CA004F9539 /* Icon.png */,\n\t\t\t\t2EDD2785191B62CA004F9539 /* Icon@2x.png */,\n\t\t\t\t2EDD2786191B62CA004F9539 /* Info.plist */,\n\t\t\t);\n\t\t\tname = ios;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tF456ECB615EE018E00FCF3E2 = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tF4499C7116C7CDE20059FF37 /* quickcocos2dx.xcodeproj */,\n\t\t\t\t2EDD2792191B6392004F9539 /* ios */,\n\t\t\t\t2EDD2769191B6258004F9539 /* sources */,\n\t\t\t\t2EDD277F191B62CA004F9539 /* Resources */,\n\t\t\t\tF456ECC415EE018E00FCF3E2 /* Frameworks */,\n\t\t\t\tF456ECC215EE018E00FCF3E2 /* Products */,\n\t\t\t);\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tF456ECC215EE018E00FCF3E2 /* Products */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tF456ECC115EE018E00FCF3E2 /* mir9.app */,\n\t\t\t);\n\t\t\tname = Products;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tF456ECC415EE018E00FCF3E2 /* Frameworks */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tF4949C781699553B00DB561E /* AddressBook.framework */,\n\t\t\t\tF456ECCB15EE018E00FCF3E2 /* AudioToolbox.framework */,\n\t\t\t\tF456ECCD15EE018E00FCF3E2 /* AVFoundation.framework */,\n\t\t\t\tF456F0F815EE0CDB00FCF3E2 /* CFNetwork.framework */,\n\t\t\t\tF456F0FA15EE0CEB00FCF3E2 /* CoreFoundation.framework */,\n\t\t\t\tF456ECD315EE018E00FCF3E2 /* CoreGraphics.framework */,\n\t\t\t\tF4949C7A1699554600DB561E /* CoreTelephony.framework */,\n\t\t\t\tF452BFC41687EEF900DC5BCC /* CoreText.framework */,\n\t\t\t\tF456ECD115EE018E00FCF3E2 /* Foundation.framework */,\n\t\t\t\tF456F10415EE0D2D00FCF3E2 /* MobileCoreServices.framework */,\n\t\t\t\tF456ECC915EE018E00FCF3E2 /* OpenAL.framework */,\n\t\t\t\tF456ECC715EE018E00FCF3E2 /* OpenGLES.framework */,\n\t\t\t\tF456ECC515EE018E00FCF3E2 /* QuartzCore.framework */,\n\t\t\t\tF456F10615EE0D3500FCF3E2 /* Security.framework */,\n\t\t\t\tF4F40D1A16573CE0007937AD /* StoreKit.framework */,\n\t\t\t\tF456F0FC15EE0CF600FCF3E2 /* SystemConfiguration.framework */,\n\t\t\t\tF452BFCF1687F0F200DC5BCC /* UIKit.framework */,\n\t\t\t);\n\t\t\tname = Frameworks;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tF48F590416D21F8C000651BE /* Products */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tF48F590816D21F8C000651BE /* libquickcocos2dx.a */,\n\t\t\t);\n\t\t\tname = Products;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n/* End PBXGroup section */\n\n/* Begin PBXNativeTarget section */\n\t\tF456ECC015EE018E00FCF3E2 /* mir9 */ = {\n\t\t\tisa = PBXNativeTarget;\n\t\t\tbuildConfigurationList = F456EFBD15EE019300FCF3E2 /* Build configuration list for PBXNativeTarget \"mir9\" */;\n\t\t\tbuildPhases = (\n\t\t\t\tF456ECBD15EE018E00FCF3E2 /* Sources */,\n\t\t\t\tF456ECBE15EE018E00FCF3E2 /* Frameworks */,\n\t\t\t\tF456ECBF15EE018E00FCF3E2 /* Resources */,\n\t\t\t);\n\t\t\tbuildRules = (\n\t\t\t);\n\t\t\tdependencies = (\n\t\t\t);\n\t\t\tname = mir9;\n\t\t\tproductName = mir9;\n\t\t\tproductReference = F456ECC115EE018E00FCF3E2 /* mir9.app */;\n\t\t\tproductType = \"com.apple.product-type.application\";\n\t\t};\n/* End PBXNativeTarget section */\n\n/* Begin PBXProject section */\n\t\tF456ECB815EE018E00FCF3E2 /* Project object */ = {\n\t\t\tisa = PBXProject;\n\t\t\tattributes = {\n\t\t\t\tLastUpgradeCheck = 0440;\n\t\t\t};\n\t\t\tbuildConfigurationList = F456ECBB15EE018E00FCF3E2 /* Build configuration list for PBXProject \"mir9\" */;\n\t\t\tcompatibilityVersion = \"Xcode 3.2\";\n\t\t\tdevelopmentRegion = English;\n\t\t\thasScannedForEncodings = 0;\n\t\t\tknownRegions = (\n\t\t\t\ten,\n\t\t\t\t\"zh-Hans\",\n\t\t\t);\n\t\t\tmainGroup = F456ECB615EE018E00FCF3E2;\n\t\t\tproductRefGroup = F456ECC215EE018E00FCF3E2 /* Products */;\n\t\t\tprojectDirPath = \"\";\n\t\t\tprojectReferences = (\n\t\t\t\t{\n\t\t\t\t\tProductGroup = F48F590416D21F8C000651BE /* Products */;\n\t\t\t\t\tProjectRef = F4499C7116C7CDE20059FF37 /* quickcocos2dx.xcodeproj */;\n\t\t\t\t},\n\t\t\t);\n\t\t\tprojectRoot = \"\";\n\t\t\ttargets = (\n\t\t\t\tF456ECC015EE018E00FCF3E2 /* mir9 */,\n\t\t\t);\n\t\t};\n/* End PBXProject section */\n\n/* Begin PBXReferenceProxy section */\n\t\tF48F590816D21F8C000651BE /* libquickcocos2dx.a */ = {\n\t\t\tisa = PBXReferenceProxy;\n\t\t\tfileType = archive.ar;\n\t\t\tpath = libquickcocos2dx.a;\n\t\t\tremoteRef = F48F590716D21F8C000651BE /* PBXContainerItemProxy */;\n\t\t\tsourceTree = BUILT_PRODUCTS_DIR;\n\t\t};\n/* End PBXReferenceProxy section */\n\n/* Begin PBXResourcesBuildPhase section */\n\t\tF456ECBF15EE018E00FCF3E2 /* Resources */ = {\n\t\t\tisa = PBXResourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\t2EDD2789191B62CA004F9539 /* Default@2x.png in Resources */,\n\t\t\t\t2EDD278C191B62CA004F9539 /* Icon@2x.png in Resources */,\n\t\t\t\t2EDD278A191B62CA004F9539 /* Icon-72.png in Resources */,\n\t\t\t\t2EDD278B191B62CA004F9539 /* Icon.png in Resources */,\n\t\t\t\t2EDD2790191B62D6004F9539 /* res in Resources */,\n\t\t\t\t2EDD2787191B62CA004F9539 /* Default-568h@2x.png in Resources */,\n\t\t\t\t2EDD2788191B62CA004F9539 /* Default.png in Resources */,\n\t\t\t\t2EDD2791191B62D6004F9539 /* scripts in Resources */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n/* End PBXResourcesBuildPhase section */\n\n/* Begin PBXSourcesBuildPhase section */\n\t\tF456ECBD15EE018E00FCF3E2 /* Sources */ = {\n\t\t\tisa = PBXSourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\t2EDD279B191B639C004F9539 /* RootViewController.mm in Sources */,\n\t\t\t\t2EDD276C191B6258004F9539 /* AppDelegate.cpp in Sources */,\n\t\t\t\t2EDD279A191B639C004F9539 /* main.m in Sources */,\n\t\t\t\t2EDD2799191B639C004F9539 /* AppController.mm in Sources */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n/* End PBXSourcesBuildPhase section */\n\n/* Begin XCBuildConfiguration section */\n\t\tF456EFBB15EE019300FCF3E2 /* Debug */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tARCHS = armv7;\n\t\t\t\t\"CODE_SIGN_IDENTITY[sdk=iphoneos*]\" = \"iPhone Developer\";\n\t\t\t\tGCC_C_LANGUAGE_STANDARD = gnu99;\n\t\t\t\tGCC_OPTIMIZATION_LEVEL = 0;\n\t\t\t\tGCC_PREPROCESSOR_DEFINITIONS = (\n\t\t\t\t\tDEBUG,\n\t\t\t\t\t\"COCOS2D_DEBUG=1\",\n\t\t\t\t\tUSE_FILE32API,\n\t\t\t\t\tTARGET_OS_IPHONE,\n\t\t\t\t\t\"CC_LUA_ENGINE_ENABLED=1\",\n\t\t\t\t);\n\t\t\t\tGCC_SYMBOLS_PRIVATE_EXTERN = NO;\n\t\t\t\tGCC_WARN_ABOUT_RETURN_TYPE = YES;\n\t\t\t\tGCC_WARN_UNUSED_VARIABLE = YES;\n\t\t\t\tHEADER_SEARCH_PATHS = (\n\t\t\t\t\t\"\\\"$(QUICK_COCOS2DX_ROOT)/lib/cocos2d-x/cocos2dx\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_COCOS2DX_ROOT)/lib/cocos2d-x/cocos2dx/include\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_COCOS2DX_ROOT)/lib/cocos2d-x/cocos2dx/platform\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_COCOS2DX_ROOT)/lib/cocos2d-x/cocos2dx/platform/ios\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_COCOS2DX_ROOT)/lib/cocos2d-x/cocos2dx/platform/third_party/ios\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_COCOS2DX_ROOT)/lib/cocos2d-x/cocos2dx/kazmath/include\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_COCOS2DX_ROOT)/lib/cocos2d-x/CocosDenshion/include\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_COCOS2DX_ROOT)/lib/cocos2d-x/CocosDenshion/ios\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_COCOS2DX_ROOT)/lib/cocos2d-x/extensions\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_COCOS2DX_ROOT)/lib/cocos2d-x/extensions/GUI/CCControlExtension\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_COCOS2DX_ROOT)/lib/cocos2d-x/extensions/GUI/CCEditBox\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_COCOS2DX_ROOT)/lib/cocos2d-x/scripting/lua/cocos2dx_support\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_COCOS2DX_ROOT)/lib/cocos2d-x/scripting/lua/tolua\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_COCOS2DX_ROOT)/lib/cocos2d-x/scripting/lua/luajit/include\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_COCOS2DX_ROOT)/lib/cocos2dx_extensions_luabinding\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_COCOS2DX_ROOT)/lib/cocos2dx_extra/extra\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_COCOS2DX_ROOT)/lib/cocos2dx_extra/extra/luabinding\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_COCOS2DX_ROOT)/lib/lua_extensions\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_COCOS2DX_ROOT)/lib/lua_extensions/cjson\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_COCOS2DX_ROOT)/lib/lua_extensions/zlib\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_COCOS2DX_ROOT)/lib/third_party/chipmunk/include\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_COCOS2DX_ROOT)/lib/third_party/chipmunk/luabinding\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_COCOS2DX_ROOT)/lib/third_party/CSArmature\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_COCOS2DX_ROOT)/lib/third_party\\\"\",\n\t\t\t\t);\n\t\t\t\tIPHONEOS_DEPLOYMENT_TARGET = 4.3;\n\t\t\t\tSDKROOT = iphoneos;\n\t\t\t\tVALID_ARCHS = armv7;\n\t\t\t};\n\t\t\tname = Debug;\n\t\t};\n\t\tF456EFBC15EE019300FCF3E2 /* Release */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tARCHS = armv7;\n\t\t\t\t\"CODE_SIGN_IDENTITY[sdk=iphoneos*]\" = \"iPhone Developer\";\n\t\t\t\tGCC_C_LANGUAGE_STANDARD = gnu99;\n\t\t\t\tGCC_PREPROCESSOR_DEFINITIONS = (\n\t\t\t\t\tNDEBUG,\n\t\t\t\t\tUSE_FILE32API,\n\t\t\t\t\tTARGET_OS_IPHONE,\n\t\t\t\t\t\"CC_LUA_ENGINE_ENABLED=1\",\n\t\t\t\t);\n\t\t\t\tGCC_WARN_ABOUT_RETURN_TYPE = YES;\n\t\t\t\tGCC_WARN_UNUSED_VARIABLE = YES;\n\t\t\t\tHEADER_SEARCH_PATHS = (\n\t\t\t\t\t\"\\\"$(QUICK_COCOS2DX_ROOT)/lib/cocos2d-x/cocos2dx\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_COCOS2DX_ROOT)/lib/cocos2d-x/cocos2dx/include\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_COCOS2DX_ROOT)/lib/cocos2d-x/cocos2dx/platform\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_COCOS2DX_ROOT)/lib/cocos2d-x/cocos2dx/platform/ios\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_COCOS2DX_ROOT)/lib/cocos2d-x/cocos2dx/platform/third_party/ios\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_COCOS2DX_ROOT)/lib/cocos2d-x/cocos2dx/kazmath/include\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_COCOS2DX_ROOT)/lib/cocos2d-x/CocosDenshion/include\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_COCOS2DX_ROOT)/lib/cocos2d-x/CocosDenshion/ios\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_COCOS2DX_ROOT)/lib/cocos2d-x/extensions\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_COCOS2DX_ROOT)/lib/cocos2d-x/extensions/GUI/CCControlExtension\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_COCOS2DX_ROOT)/lib/cocos2d-x/extensions/GUI/CCEditBox\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_COCOS2DX_ROOT)/lib/cocos2d-x/scripting/lua/cocos2dx_support\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_COCOS2DX_ROOT)/lib/cocos2d-x/scripting/lua/tolua\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_COCOS2DX_ROOT)/lib/cocos2d-x/scripting/lua/luajit/include\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_COCOS2DX_ROOT)/lib/cocos2dx_extensions_luabinding\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_COCOS2DX_ROOT)/lib/cocos2dx_extra/extra\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_COCOS2DX_ROOT)/lib/cocos2dx_extra/extra/luabinding\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_COCOS2DX_ROOT)/lib/lua_extensions\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_COCOS2DX_ROOT)/lib/lua_extensions/cjson\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_COCOS2DX_ROOT)/lib/lua_extensions/zlib\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_COCOS2DX_ROOT)/lib/third_party/chipmunk/include\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_COCOS2DX_ROOT)/lib/third_party/chipmunk/luabinding\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_COCOS2DX_ROOT)/lib/third_party/CSArmature\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_COCOS2DX_ROOT)/lib/third_party\\\"\",\n\t\t\t\t);\n\t\t\t\tIPHONEOS_DEPLOYMENT_TARGET = 4.3;\n\t\t\t\tOTHER_CFLAGS = \"-DNS_BLOCK_ASSERTIONS=1\";\n\t\t\t\tSDKROOT = iphoneos;\n\t\t\t\tVALID_ARCHS = armv7;\n\t\t\t};\n\t\t\tname = Release;\n\t\t};\n\t\tF456EFBE15EE019300FCF3E2 /* Debug */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tALWAYS_SEARCH_USER_PATHS = NO;\n\t\t\t\tARCHS = armv7;\n\t\t\t\tCLANG_CXX_LANGUAGE_STANDARD = \"gnu++0x\";\n\t\t\t\tCLANG_CXX_LIBRARY = \"libc++\";\n\t\t\t\tCODE_SIGN_IDENTITY = \"iPhone Developer\";\n\t\t\t\t\"CODE_SIGN_IDENTITY[sdk=iphoneos*]\" = \"iPhone Developer\";\n\t\t\t\tCOPY_PHASE_STRIP = NO;\n\t\t\t\tFRAMEWORK_SEARCH_PATHS = \"$(inherited)\";\n\t\t\t\tGCC_C_LANGUAGE_STANDARD = gnu11;\n\t\t\t\tGCC_DYNAMIC_NO_PIC = NO;\n\t\t\t\tGCC_INLINES_ARE_PRIVATE_EXTERN = NO;\n\t\t\t\tGCC_PRECOMPILE_PREFIX_HEADER = YES;\n\t\t\t\tGCC_PREFIX_HEADER = Prefix.pch;\n\t\t\t\tGCC_PREPROCESSOR_DEFINITIONS = (\n\t\t\t\t\tDEBUG,\n\t\t\t\t\t\"COCOS2D_DEBUG=1\",\n\t\t\t\t\tUSE_FILE32API,\n\t\t\t\t\tCC_TARGET_OS_IPHONE,\n\t\t\t\t\t\"CC_LUA_ENGINE_ENABLED=1\",\n\t\t\t\t);\n\t\t\t\tGCC_SYMBOLS_PRIVATE_EXTERN = NO;\n\t\t\t\t\"GCC_THUMB_SUPPORT[arch=armv6]\" = \"\";\n\t\t\t\tHEADER_SEARCH_PATHS = (\n\t\t\t\t\t\"\\\"$(QUICK_COCOS2DX_ROOT)/lib/cocos2d-x/cocos2dx\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_COCOS2DX_ROOT)/lib/cocos2d-x/cocos2dx/include\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_COCOS2DX_ROOT)/lib/cocos2d-x/cocos2dx/platform\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_COCOS2DX_ROOT)/lib/cocos2d-x/cocos2dx/platform/ios\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_COCOS2DX_ROOT)/lib/cocos2d-x/cocos2dx/platform/third_party/ios\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_COCOS2DX_ROOT)/lib/cocos2d-x/cocos2dx/kazmath/include\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_COCOS2DX_ROOT)/lib/cocos2d-x/CocosDenshion/include\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_COCOS2DX_ROOT)/lib/cocos2d-x/CocosDenshion/ios\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_COCOS2DX_ROOT)/lib/cocos2d-x/extensions\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_COCOS2DX_ROOT)/lib/cocos2d-x/extensions/GUI/CCControlExtension\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_COCOS2DX_ROOT)/lib/cocos2d-x/extensions/GUI/CCEditBox\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_COCOS2DX_ROOT)/lib/cocos2d-x/scripting/lua/cocos2dx_support\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_COCOS2DX_ROOT)/lib/cocos2d-x/scripting/lua/tolua\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_COCOS2DX_ROOT)/lib/cocos2d-x/scripting/lua/luajit/include\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_COCOS2DX_ROOT)/lib/cocos2dx_extensions_luabinding\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_COCOS2DX_ROOT)/lib/cocos2dx_extra/extra\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_COCOS2DX_ROOT)/lib/cocos2dx_extra/extra/luabinding\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_COCOS2DX_ROOT)/lib/lua_extensions\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_COCOS2DX_ROOT)/lib/lua_extensions/cjson\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_COCOS2DX_ROOT)/lib/lua_extensions/zlib\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_COCOS2DX_ROOT)/lib/third_party/chipmunk/include\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_COCOS2DX_ROOT)/lib/third_party/chipmunk/luabinding\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_COCOS2DX_ROOT)/lib/third_party/CSArmature\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_COCOS2DX_ROOT)/lib/third_party\\\"\",\n\t\t\t\t);\n\t\t\t\tINFOPLIST_FILE = \"$(SRCROOT)/Resources/Info.plist\";\n\t\t\t\tIPHONEOS_DEPLOYMENT_TARGET = 5.0;\n\t\t\t\tLIBRARY_SEARCH_PATHS = (\n\t\t\t\t\t\"\\\"$(QUICK_COCOS2DX_ROOT)/lib/cocos2d-x/cocos2dx/platform/third_party/ios/libraries\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_COCOS2DX_ROOT)/lib/cocos2d-x/scripting/lua/luajit/ios\\\"\",\n\t\t\t\t);\n\t\t\t\tOTHER_LDFLAGS = (\n\t\t\t\t\t\"-lxml2\",\n\t\t\t\t\t\"-lz\",\n\t\t\t\t\t\"-ObjC\",\n\t\t\t\t);\n\t\t\t\tPRODUCT_NAME = \"$(TARGET_NAME)\";\n\t\t\t\tPROVISIONING_PROFILE = \"\";\n\t\t\t\t\"PROVISIONING_PROFILE[sdk=iphoneos*]\" = \"\";\n\t\t\t\tTARGETED_DEVICE_FAMILY = \"1,2\";\n\t\t\t\tVALID_ARCHS = armv7;\n\t\t\t\tWRAPPER_EXTENSION = app;\n\t\t\t};\n\t\t\tname = Debug;\n\t\t};\n\t\tF456EFBF15EE019300FCF3E2 /* Release */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tALWAYS_SEARCH_USER_PATHS = NO;\n\t\t\t\tARCHS = armv7;\n\t\t\t\tCLANG_CXX_LANGUAGE_STANDARD = \"gnu++0x\";\n\t\t\t\tCLANG_CXX_LIBRARY = \"libc++\";\n\t\t\t\tCODE_SIGN_IDENTITY = \"iPhone Developer\";\n\t\t\t\t\"CODE_SIGN_IDENTITY[sdk=iphoneos*]\" = \"iPhone Developer\";\n\t\t\t\tCOPY_PHASE_STRIP = YES;\n\t\t\t\tFRAMEWORK_SEARCH_PATHS = \"$(inherited)\";\n\t\t\t\tGCC_C_LANGUAGE_STANDARD = gnu11;\n\t\t\t\tGCC_INLINES_ARE_PRIVATE_EXTERN = NO;\n\t\t\t\tGCC_PRECOMPILE_PREFIX_HEADER = YES;\n\t\t\t\tGCC_PREFIX_HEADER = Prefix.pch;\n\t\t\t\tGCC_PREPROCESSOR_DEFINITIONS = (\n\t\t\t\t\tNDEBUG,\n\t\t\t\t\tUSE_FILE32API,\n\t\t\t\t\tCC_TARGET_OS_IPHONE,\n\t\t\t\t\t\"CC_LUA_ENGINE_ENABLED=1\",\n\t\t\t\t);\n\t\t\t\tGCC_SYMBOLS_PRIVATE_EXTERN = NO;\n\t\t\t\t\"GCC_THUMB_SUPPORT[arch=armv6]\" = \"\";\n\t\t\t\tHEADER_SEARCH_PATHS = (\n\t\t\t\t\t\"\\\"$(QUICK_COCOS2DX_ROOT)/lib/cocos2d-x/cocos2dx\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_COCOS2DX_ROOT)/lib/cocos2d-x/cocos2dx/include\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_COCOS2DX_ROOT)/lib/cocos2d-x/cocos2dx/platform\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_COCOS2DX_ROOT)/lib/cocos2d-x/cocos2dx/platform/ios\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_COCOS2DX_ROOT)/lib/cocos2d-x/cocos2dx/platform/third_party/ios\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_COCOS2DX_ROOT)/lib/cocos2d-x/cocos2dx/kazmath/include\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_COCOS2DX_ROOT)/lib/cocos2d-x/CocosDenshion/include\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_COCOS2DX_ROOT)/lib/cocos2d-x/CocosDenshion/ios\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_COCOS2DX_ROOT)/lib/cocos2d-x/extensions\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_COCOS2DX_ROOT)/lib/cocos2d-x/extensions/GUI/CCControlExtension\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_COCOS2DX_ROOT)/lib/cocos2d-x/extensions/GUI/CCEditBox\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_COCOS2DX_ROOT)/lib/cocos2d-x/scripting/lua/cocos2dx_support\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_COCOS2DX_ROOT)/lib/cocos2d-x/scripting/lua/tolua\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_COCOS2DX_ROOT)/lib/cocos2d-x/scripting/lua/luajit/include\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_COCOS2DX_ROOT)/lib/cocos2dx_extensions_luabinding\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_COCOS2DX_ROOT)/lib/cocos2dx_extra/extra\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_COCOS2DX_ROOT)/lib/cocos2dx_extra/extra/luabinding\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_COCOS2DX_ROOT)/lib/lua_extensions\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_COCOS2DX_ROOT)/lib/lua_extensions/cjson\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_COCOS2DX_ROOT)/lib/lua_extensions/zlib\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_COCOS2DX_ROOT)/lib/third_party/chipmunk/include\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_COCOS2DX_ROOT)/lib/third_party/chipmunk/luabinding\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_COCOS2DX_ROOT)/lib/third_party/CSArmature\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_COCOS2DX_ROOT)/lib/third_party\\\"\",\n\t\t\t\t);\n\t\t\t\tINFOPLIST_FILE = \"$(SRCROOT)/Resources/Info.plist\";\n\t\t\t\tIPHONEOS_DEPLOYMENT_TARGET = 5.0;\n\t\t\t\tLIBRARY_SEARCH_PATHS = (\n\t\t\t\t\t\"\\\"$(QUICK_COCOS2DX_ROOT)/lib/cocos2d-x/cocos2dx/platform/third_party/ios/libraries\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_COCOS2DX_ROOT)/lib/cocos2d-x/scripting/lua/luajit/ios\\\"\",\n\t\t\t\t);\n\t\t\t\tOTHER_LDFLAGS = (\n\t\t\t\t\t\"-lxml2\",\n\t\t\t\t\t\"-lz\",\n\t\t\t\t\t\"-ObjC\",\n\t\t\t\t);\n\t\t\t\tPRODUCT_NAME = \"$(TARGET_NAME)\";\n\t\t\t\tPROVISIONING_PROFILE = \"\";\n\t\t\t\t\"PROVISIONING_PROFILE[sdk=iphoneos*]\" = \"\";\n\t\t\t\tTARGETED_DEVICE_FAMILY = \"1,2\";\n\t\t\t\tVALIDATE_PRODUCT = YES;\n\t\t\t\tVALID_ARCHS = armv7;\n\t\t\t\tWRAPPER_EXTENSION = app;\n\t\t\t};\n\t\t\tname = Release;\n\t\t};\n/* End XCBuildConfiguration section */\n\n/* Begin XCConfigurationList section */\n\t\tF456ECBB15EE018E00FCF3E2 /* Build configuration list for PBXProject \"mir9\" */ = {\n\t\t\tisa = XCConfigurationList;\n\t\t\tbuildConfigurations = (\n\t\t\t\tF456EFBB15EE019300FCF3E2 /* Debug */,\n\t\t\t\tF456EFBC15EE019300FCF3E2 /* Release */,\n\t\t\t);\n\t\t\tdefaultConfigurationIsVisible = 0;\n\t\t\tdefaultConfigurationName = Release;\n\t\t};\n\t\tF456EFBD15EE019300FCF3E2 /* Build configuration list for PBXNativeTarget \"mir9\" */ = {\n\t\t\tisa = XCConfigurationList;\n\t\t\tbuildConfigurations = (\n\t\t\t\tF456EFBE15EE019300FCF3E2 /* Debug */,\n\t\t\t\tF456EFBF15EE019300FCF3E2 /* Release */,\n\t\t\t);\n\t\t\tdefaultConfigurationIsVisible = 0;\n\t\t\tdefaultConfigurationName = Release;\n\t\t};\n/* End XCConfigurationList section */\n\t};\n\trootObject = F456ECB815EE018E00FCF3E2 /* Project object */;\n}\n"
  },
  {
    "path": "源代码/2.2.5/mir9/proj.mac/AppController.h",
    "content": "/****************************************************************************\n Copyright (c) 2010 cocos2d-x.org\n\n http://www.cocos2d-x.org\n\n Permission is hereby granted, free of charge, to any person obtaining a copy\n of this software and associated documentation files (the \"Software\"), to deal\n in the Software without restriction, including without limitation the rights\n to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n copies of the Software, and to permit persons to whom the Software is\n furnished to do so, subject to the following conditions:\n\n The above copyright notice and this permission notice shall be included in\n all copies or substantial portions of the Software.\n\n THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n THE SOFTWARE.\n ****************************************************************************/\n\n#import \"EAGLView.h\"\n\n#include <string>\n#include \"ProjectConfig/SimulatorConfig.h\"\n#include \"AppDelegate.h\"\n\n@interface AppController : NSObject <NSApplicationDelegate, NSWindowDelegate>\n{\n    NSWindow *window;\n    EAGLView *glView;\n    NSMenu *menu;\n\n    BOOL isAlwaysOnTop;\n\n    AppDelegate *app;\n    ProjectConfig projectConfig;\n}\n\n@property (nonatomic, assign) IBOutlet NSMenu* menu;\n\n- (IBAction) onFileRelaunch:(id)sender;\n\n- (IBAction) onScreenPortait:(id)sender;\n- (IBAction) onScreenLandscape:(id)sender;\n- (IBAction) onScreenZoomOut:(id)sender;\n\n- (IBAction) onWindowAlwaysOnTop:(id)sender;\n\n@end\n"
  },
  {
    "path": "源代码/2.2.5/mir9/proj.mac/AppController.mm",
    "content": "/****************************************************************************\n Copyright (c) 2010 cocos2d-x.org\n\n http://www.cocos2d-x.org\n\n Permission is hereby granted, free of charge, to any person obtaining a copy\n of this software and associated documentation files (the \"Software\"), to deal\n in the Software without restriction, including without limitation the rights\n to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n copies of the Software, and to permit persons to whom the Software is\n furnished to do so, subject to the following conditions:\n\n The above copyright notice and this permission notice shall be included in\n all copies or substantial portions of the Software.\n\n THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n THE SOFTWARE.\n ****************************************************************************/\n\n#import \"AppController.h\"\n\n#include <sys/stat.h>\n#include <stdio.h>\n#include <fcntl.h>\n#include <string>\n#include <vector>\n\n#include \"AppDelegate.h\"\n#include \"CCDirector.h\"\n#include \"SimpleAudioEngine.h\"\n#include \"platform/CCFileUtils.h\"\n#include \"native/CCNative.h\"\n\nusing namespace std;\nusing namespace cocos2d;\nusing namespace cocos2d::extra;\n\n@implementation AppController\n\n@synthesize menu;\n\n-(void) dealloc\n{\n    CCDirector::sharedDirector()->end();\n    [super dealloc];\n}\n\n#pragma mark -\n#pragma delegates\n\n- (void) applicationDidFinishLaunching:(NSNotification *)aNotification\n{\n    isAlwaysOnTop = NO;\n\n    [self updateProjectConfigFromCommandLineArgs:&projectConfig];\n    [self createWindowAndGLView];\n    [self startup];\n    [self initUI];\n    [self updateUI];\n\n    [window orderFrontRegardless];\n    [[NSApplication sharedApplication] activateIgnoringOtherApps:YES];\n}\n\n- (BOOL) applicationShouldTerminateAfterLastWindowClosed:(NSApplication*)theApplication\n{\n    return YES;\n}\n\n- (BOOL) applicationShouldHandleReopen:(NSApplication *)sender hasVisibleWindows:(BOOL)flag\n{\n    return NO;\n}\n\n- (void) windowWillClose:(NSNotification *)notification\n{\n    CCDirector::sharedDirector()->end();\n    [[NSApplication sharedApplication] terminate:self];\n}\n\n#pragma mark -\n#pragma mark functions\n\n- (void) createWindowAndGLView\n{\n    const CCSize frameSize = projectConfig.getFrameSize();\n    float left = 10;\n    float bottom = NSHeight([[NSScreen mainScreen] visibleFrame]) - frameSize.height;\n    bottom -= [[[NSApplication sharedApplication] menu] menuBarHeight] + 10;\n\n    NSDictionary *state = [[NSUserDefaults standardUserDefaults] objectForKey:@\"last-state\"];\n    if (state)\n    {\n        NSNumber *x = [state objectForKey:@\"x\"];\n        NSNumber *y = [state objectForKey:@\"y\"];\n        if (x && y)\n        {\n            projectConfig.setWindowOffset(CCPoint([x floatValue], [y floatValue]));\n        }\n        NSNumber *scale = [state objectForKey:@\"scale\"];\n        if (scale)\n        {\n            projectConfig.setFrameScale([scale floatValue]);\n        }\n    }\n\n    // create the window\n    // note that using NSResizableWindowMask causes the window to be a little\n    // smaller and therefore ipad graphics are not loaded\n    NSRect rect = NSMakeRect(left, bottom, frameSize.width, frameSize.height);\n    NSInteger mask = NSClosableWindowMask | NSTitledWindowMask | NSMiniaturizableWindowMask;\n    window = [[NSWindow alloc] initWithContentRect:rect\n                                         styleMask:mask\n                                           backing:NSBackingStoreBuffered\n                                             defer:YES];\n    window.delegate = self;\n\n    // allocate our GL view\n    // (isn't there already a shared EAGLView?)\n    glView = [[EAGLView alloc] initWithFrame:rect];\n\n    // set window parameters\n    [window setContentView:glView];\n    [window setTitle:@\"mir9\"];\n    [window center];\n\n    if (projectConfig.getProjectDir().length())\n    {\n        [self setZoom:projectConfig.getFrameScale()];\n        CCPoint pos = projectConfig.getWindowOffset();\n        if (pos.x != 0 && pos.y != 0)\n        {\n            [window setFrameOrigin:NSMakePoint(pos.x, pos.y)];\n        }\n    }\n\n    [window becomeFirstResponder];\n    [window makeKeyAndOrderFront:self];\n    [window setAcceptsMouseMovedEvents:NO];\n}\n\n- (void) startup\n{\n    const string projectDir = projectConfig.getProjectDir();\n    if (projectDir.length())\n    {\n        CCFileUtils::sharedFileUtils()->setSearchRootPath(projectDir.c_str());\n    }\n\n    const string writablePath = projectConfig.getWritableRealPath();\n    if (writablePath.length())\n    {\n        CCFileUtils::sharedFileUtils()->setWritablePath(writablePath.c_str());\n    }\n\n    app = new AppDelegate();\n    app->setProjectConfig(projectConfig);\n    app->run();\n}\n\n- (void) initUI\n{\n    NSMenu *submenu = [[[window menu] itemWithTitle:@\"Screen\"] submenu];\n\n    SimulatorConfig *config = SimulatorConfig::sharedDefaults();\n    int current = config->checkScreenSize(projectConfig.getFrameSize());\n    for (int i = config->getScreenSizeCount() - 1; i >= 0; --i)\n    {\n        SimulatorScreenSize size = config->getScreenSize(i);\n        NSMenuItem *item = [[[NSMenuItem alloc] initWithTitle:[NSString stringWithCString:size.title.c_str() encoding:NSUTF8StringEncoding]\n                                                       action:@selector(onScreenChangeFrameSize:)\n                                                keyEquivalent:@\"\"] autorelease];\n        [item setTag:i];\n\n        if (i == current)\n        {\n            [item setState:NSOnState];\n        }\n        [submenu insertItem:item atIndex:0];\n    }\n}\n\n- (void) updateUI\n{\n    NSMenu *menuScreen = [[[window menu] itemWithTitle:@\"Screen\"] submenu];\n    NSMenuItem *itemPortait = [menuScreen itemWithTitle:@\"Portait\"];\n    NSMenuItem *itemLandscape = [menuScreen itemWithTitle:@\"Landscape\"];\n    if (projectConfig.isLandscapeFrame())\n    {\n        [itemPortait setState:NSOffState];\n        [itemLandscape setState:NSOnState];\n    }\n    else\n    {\n        [itemPortait setState:NSOnState];\n        [itemLandscape setState:NSOffState];\n    }\n\n    int scale = projectConfig.getFrameScale() * 100;\n\n    NSMenuItem *itemZoom100 = [menuScreen itemWithTitle:@\"Actual (100%)\"];\n    NSMenuItem *itemZoom75 = [menuScreen itemWithTitle:@\"Zoom Out (75%)\"];\n    NSMenuItem *itemZoom50 = [menuScreen itemWithTitle:@\"Zoom Out (50%)\"];\n    NSMenuItem *itemZoom25 = [menuScreen itemWithTitle:@\"Zoom Out (25%)\"];\n    [itemZoom100 setState:NSOffState];\n    [itemZoom75 setState:NSOffState];\n    [itemZoom50 setState:NSOffState];\n    [itemZoom25 setState:NSOffState];\n    if (scale == 100)\n    {\n        [itemZoom100 setState:NSOnState];\n    }\n    else if (scale == 75)\n    {\n        [itemZoom75 setState:NSOnState];\n    }\n    else if (scale == 50)\n    {\n        [itemZoom50 setState:NSOnState];\n    }\n    else if (scale == 25)\n    {\n        [itemZoom25 setState:NSOnState];\n    }\n\n    [window setTitle:[NSString stringWithFormat:@\"mir9 (%0.0f%%)\", projectConfig.getFrameScale() * 100]];\n}\n\n- (NSMutableArray*) makeCommandLineArgsFromProjectConfig\n{\n    return [self makeCommandLineArgsFromProjectConfig:kProjectConfigAll];\n}\n\n- (NSMutableArray*) makeCommandLineArgsFromProjectConfig:(unsigned int)mask\n{\n    projectConfig.setWindowOffset(CCPoint(window.frame.origin.x, window.frame.origin.y));\n    NSString *commandLine = [NSString stringWithCString:projectConfig.makeCommandLine(mask).c_str()\n                                               encoding:NSUTF8StringEncoding];\n    return [NSMutableArray arrayWithArray:[commandLine componentsSeparatedByString:@\" \"]];\n}\n\n- (void) updateProjectConfigFromCommandLineArgs:(ProjectConfig *)config\n{\n    NSArray *nsargs = [[NSProcessInfo processInfo] arguments];\n    vector<string> args;\n    for (int i = 0; i < [nsargs count]; ++i)\n    {\n        args.push_back([[nsargs objectAtIndex:i] cStringUsingEncoding:NSUTF8StringEncoding]);\n    }\n    config->parseCommandLine(args);\n    config->dump();\n}\n\n- (void) launch:(NSArray*)args\n{\n    NSURL *url = [NSURL fileURLWithPath:[[NSBundle mainBundle] bundlePath]];\n    NSMutableDictionary *configuration = [NSMutableDictionary dictionaryWithObject:args\n                                                                            forKey:NSWorkspaceLaunchConfigurationArguments];\n    NSError *error = [[[NSError alloc] init] autorelease];\n    [[NSWorkspace sharedWorkspace] launchApplicationAtURL:url\n                                                  options:NSWorkspaceLaunchNewInstance\n                                            configuration:configuration error:&error];\n}\n\n- (void) relaunch:(NSArray*)args\n{\n    [self saveLastState];\n    if (projectConfig.isExitWhenRelaunch())\n    {\n        exit(99);\n    }\n    else\n    {\n        [self launch:args];\n        [[NSApplication sharedApplication] terminate:self];\n    }\n}\n\n- (void) relaunch\n{\n    [self relaunch:[self makeCommandLineArgsFromProjectConfig]];\n}\n\n- (void) showAlertWithoutSheet:(NSString*)message withTitle:(NSString*)title\n{\n    NSAlert *alert = [[[NSAlert alloc] init] autorelease];\n    [alert addButtonWithTitle:@\"OK\"];\n    [alert setMessageText:message];\n    [alert setInformativeText:title];\n    [alert setAlertStyle:NSWarningAlertStyle];\n    [alert runModal];\n}\n\n- (void) setZoom:(float)scale\n{\n    [glView setFrameZoomFactor:scale];\n    projectConfig.setFrameScale(scale);\n}\n\n-(void) setAlwaysOnTop:(BOOL)alwaysOnTop\n{\n    NSMenuItem *windowMenu = [[window menu] itemWithTitle:@\"Window\"];\n    NSMenuItem *menuItem = [[windowMenu submenu] itemWithTitle:@\"Always On Top\"];\n    if (alwaysOnTop)\n    {\n        [window setLevel:NSFloatingWindowLevel];\n        [menuItem setState:NSOnState];\n    }\n    else\n    {\n        [window setLevel:NSNormalWindowLevel];\n        [menuItem setState:NSOffState];\n    }\n    isAlwaysOnTop = alwaysOnTop;\n}\n\n-(void) saveLastState\n{\n    NSMutableDictionary *state = [NSMutableDictionary dictionary];\n    [state setObject:[NSNumber numberWithInt:window.frame.origin.x] forKey:@\"x\"];\n    [state setObject:[NSNumber numberWithInt:window.frame.origin.y] forKey:@\"y\"];\n    [state setObject:[NSNumber numberWithFloat:projectConfig.getFrameScale()] forKey:@\"scale\"];\n    [[NSUserDefaults standardUserDefaults] setObject:state forKey:@\"last-state\"];\n    [[NSUserDefaults standardUserDefaults] synchronize];\n}\n\n#pragma mark -\n#pragma mark IB Actions\n\n- (IBAction) onFileRelaunch:(id)sender\n{\n    [self relaunch];\n}\n\n- (IBAction) onScreenChangeFrameSize:(id)sender\n{\n    NSInteger i = [sender tag];\n    if (i >= 0 && i < SimulatorConfig::sharedDefaults()->getScreenSizeCount())\n    {\n        SimulatorScreenSize size = SimulatorConfig::sharedDefaults()->getScreenSize((int)i);\n        projectConfig.setFrameSize(projectConfig.isLandscapeFrame() ? CCSize(size.height, size.width) : CCSize(size.width, size.height));\n        projectConfig.setFrameScale(1.0f);\n        [self relaunch];\n    }\n}\n\n- (IBAction) onScreenPortait:(id)sender\n{\n    if ([sender state] == NSOnState) return;\n    [sender setState:NSOnState];\n    [[[[[window menu] itemWithTitle:@\"Screen\"] submenu] itemWithTitle:@\"Landscape\"] setState:NSOffState];\n    projectConfig.changeFrameOrientationToPortait();\n    [self relaunch];\n}\n\n- (IBAction) onScreenLandscape:(id)sender\n{\n    if ([sender state] == NSOnState) return;\n    [sender setState:NSOnState];\n    [[[[[window menu] itemWithTitle:@\"Screen\"] submenu] itemWithTitle:@\"Portait\"] setState:NSOffState];\n    projectConfig.changeFrameOrientationToLandscape();\n    [self relaunch];\n}\n\n- (IBAction) onScreenZoomOut:(id)sender\n{\n    if ([sender state] == NSOnState) return;\n    float scale = (float)[sender tag] / 100.0f;\n    [self setZoom:scale];\n    [self updateUI];\n}\n\n-(IBAction) onWindowAlwaysOnTop:(id)sender\n{\n    [self setAlwaysOnTop:!isAlwaysOnTop];\n}\n\n@end\n"
  },
  {
    "path": "源代码/2.2.5/mir9/proj.mac/Info.plist",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE plist PUBLIC \"-//Apple//DTD PLIST 1.0//EN\" \"http://www.apple.com/DTDs/PropertyList-1.0.dtd\">\n<plist version=\"1.0\">\n<dict>\n\t<key>CFBundleDevelopmentRegion</key>\n\t<string>en</string>\n\t<key>CFBundleExecutable</key>\n\t<string>${EXECUTABLE_NAME}</string>\n\t<key>CFBundleIconFile</key>\n\t<string>Icon</string>\n\t<key>CFBundleIdentifier</key>\n\t<string>com.qeeplay.apps.${PRODUCT_NAME:rfc1034identifier}</string>\n\t<key>CFBundleInfoDictionaryVersion</key>\n\t<string>6.0</string>\n\t<key>CFBundleName</key>\n\t<string>${PRODUCT_NAME}</string>\n\t<key>CFBundlePackageType</key>\n\t<string>APPL</string>\n\t<key>CFBundleShortVersionString</key>\n\t<string>1.2</string>\n\t<key>CFBundleSignature</key>\n\t<string>????</string>\n\t<key>CFBundleVersion</key>\n\t<string>20131001</string>\n\t<key>LSApplicationCategoryType</key>\n\t<string>public.app-category.developer-tools</string>\n\t<key>LSMinimumSystemVersion</key>\n\t<string>${MACOSX_DEPLOYMENT_TARGET}</string>\n\t<key>NSHumanReadableCopyright</key>\n\t<string>Copyright © 2012 qeeplay.com. All rights reserved.</string>\n\t<key>NSMainNibFile</key>\n\t<string>MainMenu</string>\n\t<key>NSPrincipalClass</key>\n\t<string>NSApplication</string>\n</dict>\n</plist>\n"
  },
  {
    "path": "源代码/2.2.5/mir9/proj.mac/MainMenu.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"no\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"5056\" systemVersion=\"13C1021\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\">\n    <dependencies>\n        <deployment version=\"1060\" defaultVersion=\"1070\" identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"5056\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"AppController\">\n            <connections>\n                <outlet property=\"delegate\" destination=\"536\" id=\"537\"/>\n                <outlet property=\"menu\" destination=\"29\" id=\"RGo-Y7-T4b\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\"/>\n        <menu title=\"AMainMenu\" systemMenu=\"main\" id=\"29\">\n            <items>\n                <menuItem title=\"helloworld\" id=\"56\">\n                    <menu key=\"submenu\" title=\"helloworld\" systemMenu=\"apple\" id=\"57\">\n                        <items>\n                            <menuItem title=\"About helloworld\" id=\"58\">\n                                <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                <connections>\n                                    <action selector=\"orderFrontStandardAboutPanel:\" target=\"-2\" id=\"142\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem isSeparatorItem=\"YES\" id=\"236\">\n                                <modifierMask key=\"keyEquivalentModifierMask\" command=\"YES\"/>\n                            </menuItem>\n                            <menuItem title=\"Services\" id=\"131\">\n                                <menu key=\"submenu\" title=\"Services\" systemMenu=\"services\" id=\"130\"/>\n                            </menuItem>\n                            <menuItem isSeparatorItem=\"YES\" id=\"144\">\n                                <modifierMask key=\"keyEquivalentModifierMask\" command=\"YES\"/>\n                            </menuItem>\n                            <menuItem title=\"Hide helloworld\" keyEquivalent=\"h\" id=\"134\">\n                                <connections>\n                                    <action selector=\"hide:\" target=\"-1\" id=\"367\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem title=\"Hide Others\" keyEquivalent=\"h\" id=\"145\">\n                                <modifierMask key=\"keyEquivalentModifierMask\" option=\"YES\" command=\"YES\"/>\n                                <connections>\n                                    <action selector=\"hideOtherApplications:\" target=\"-1\" id=\"368\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem title=\"Show All\" id=\"150\">\n                                <connections>\n                                    <action selector=\"unhideAllApplications:\" target=\"-1\" id=\"370\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem isSeparatorItem=\"YES\" id=\"149\">\n                                <modifierMask key=\"keyEquivalentModifierMask\" command=\"YES\"/>\n                            </menuItem>\n                            <menuItem title=\"Quit helloworld\" keyEquivalent=\"q\" id=\"136\">\n                                <connections>\n                                    <action selector=\"terminate:\" target=\"-3\" id=\"449\"/>\n                                </connections>\n                            </menuItem>\n                        </items>\n                    </menu>\n                </menuItem>\n                <menuItem title=\"File\" id=\"83\">\n                    <menu key=\"submenu\" title=\"File\" id=\"81\">\n                        <items>\n                            <menuItem title=\"Relaunch\" keyEquivalent=\"r\" id=\"01T-Iz-Pcm\">\n                                <connections>\n                                    <action selector=\"onFileRelaunch:\" target=\"-1\" id=\"JKQ-fG-ndn\"/>\n                                </connections>\n                            </menuItem>\n                        </items>\n                    </menu>\n                </menuItem>\n                <menuItem title=\"Edit\" id=\"Sqe-GR-erP\">\n                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                    <menu key=\"submenu\" title=\"Edit\" id=\"k0V-hR-upN\">\n                        <items>\n                            <menuItem title=\"Undo\" keyEquivalent=\"z\" id=\"Ueo-Yj-fzm\">\n                                <connections>\n                                    <action selector=\"undo:\" target=\"-1\" id=\"Ex2-6U-hZI\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem title=\"Redo\" keyEquivalent=\"Z\" id=\"x6z-iQ-VK2\">\n                                <connections>\n                                    <action selector=\"redo:\" target=\"-1\" id=\"KEx-Aj-tYn\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem isSeparatorItem=\"YES\" id=\"COi-E7-7M4\"/>\n                            <menuItem title=\"Cut\" keyEquivalent=\"x\" id=\"NAk-12-pg4\">\n                                <connections>\n                                    <action selector=\"cut:\" target=\"-1\" id=\"Owu-Ie-Kfg\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem title=\"Copy\" keyEquivalent=\"c\" id=\"XOY-ya-lNt\">\n                                <connections>\n                                    <action selector=\"copy:\" target=\"-1\" id=\"aIB-pV-N2w\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem title=\"Paste\" keyEquivalent=\"v\" id=\"ul0-51-Ibd\">\n                                <connections>\n                                    <action selector=\"paste:\" target=\"-1\" id=\"7rk-Tb-7hI\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem title=\"Paste and Match Style\" keyEquivalent=\"V\" id=\"Zvy-7g-x4q\">\n                                <modifierMask key=\"keyEquivalentModifierMask\" option=\"YES\" command=\"YES\"/>\n                                <connections>\n                                    <action selector=\"pasteAsPlainText:\" target=\"-1\" id=\"oM4-kj-hTQ\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem title=\"Delete\" id=\"Xyz-QC-wlG\">\n                                <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                <connections>\n                                    <action selector=\"delete:\" target=\"-1\" id=\"idJ-aN-6bB\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem title=\"Select All\" keyEquivalent=\"a\" id=\"4fT-JL-N6e\">\n                                <connections>\n                                    <action selector=\"selectAll:\" target=\"-1\" id=\"pAH-rW-PaD\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem isSeparatorItem=\"YES\" id=\"osB-R6-2jE\"/>\n                            <menuItem title=\"Find\" id=\"bms-8x-7Yb\">\n                                <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                <menu key=\"submenu\" title=\"Find\" id=\"AXr-4L-lcV\">\n                                    <items>\n                                        <menuItem title=\"Find…\" tag=\"1\" keyEquivalent=\"f\" id=\"GS8-y9-yQY\">\n                                            <connections>\n                                                <action selector=\"performFindPanelAction:\" target=\"-1\" id=\"jVT-dG-Frl\"/>\n                                            </connections>\n                                        </menuItem>\n                                        <menuItem title=\"Find Next\" tag=\"2\" keyEquivalent=\"g\" id=\"RJc-P7-Ibq\">\n                                            <connections>\n                                                <action selector=\"performFindPanelAction:\" target=\"-1\" id=\"yLp-2a-Nuk\"/>\n                                            </connections>\n                                        </menuItem>\n                                        <menuItem title=\"Find Previous\" tag=\"3\" keyEquivalent=\"G\" id=\"f5k-Su-hK0\">\n                                            <connections>\n                                                <action selector=\"performFindPanelAction:\" target=\"-1\" id=\"uoF-9Z-ef7\"/>\n                                            </connections>\n                                        </menuItem>\n                                        <menuItem title=\"Use Selection for Find\" tag=\"7\" keyEquivalent=\"e\" id=\"9Zj-Be-aBN\">\n                                            <connections>\n                                                <action selector=\"performFindPanelAction:\" target=\"-1\" id=\"8hs-AK-0U8\"/>\n                                            </connections>\n                                        </menuItem>\n                                        <menuItem title=\"Jump to Selection\" keyEquivalent=\"j\" id=\"4tD-ef-pd8\">\n                                            <connections>\n                                                <action selector=\"centerSelectionInVisibleArea:\" target=\"-1\" id=\"8xc-J0-7iQ\"/>\n                                            </connections>\n                                        </menuItem>\n                                    </items>\n                                </menu>\n                            </menuItem>\n                            <menuItem title=\"Spelling and Grammar\" id=\"3zu-oA-Lwh\">\n                                <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                <menu key=\"submenu\" title=\"Spelling\" id=\"Rw0-u8-9Jd\">\n                                    <items>\n                                        <menuItem title=\"Show Spelling and Grammar\" keyEquivalent=\":\" id=\"cA3-Ek-9yR\">\n                                            <connections>\n                                                <action selector=\"showGuessPanel:\" target=\"-1\" id=\"9iU-13-OG3\"/>\n                                            </connections>\n                                        </menuItem>\n                                        <menuItem title=\"Check Document Now\" keyEquivalent=\";\" id=\"Rv1-Ws-AjN\">\n                                            <connections>\n                                                <action selector=\"checkSpelling:\" target=\"-1\" id=\"lJa-2J-vbR\"/>\n                                            </connections>\n                                        </menuItem>\n                                        <menuItem isSeparatorItem=\"YES\" id=\"Nfe-cz-BcK\"/>\n                                        <menuItem title=\"Check Spelling While Typing\" id=\"m0f-Qa-nDC\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                            <connections>\n                                                <action selector=\"toggleContinuousSpellChecking:\" target=\"-1\" id=\"kpi-oz-XsN\"/>\n                                            </connections>\n                                        </menuItem>\n                                        <menuItem title=\"Check Grammar With Spelling\" id=\"vtr-52-Ani\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                            <connections>\n                                                <action selector=\"toggleGrammarChecking:\" target=\"-1\" id=\"yjk-wP-MvM\"/>\n                                            </connections>\n                                        </menuItem>\n                                        <menuItem title=\"Correct Spelling Automatically\" id=\"iVS-Zk-xy0\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                            <connections>\n                                                <action selector=\"toggleAutomaticSpellingCorrection:\" target=\"-1\" id=\"4op-79-0sd\"/>\n                                            </connections>\n                                        </menuItem>\n                                    </items>\n                                </menu>\n                            </menuItem>\n                            <menuItem title=\"Substitutions\" id=\"UaR-w3-b5E\">\n                                <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                <menu key=\"submenu\" title=\"Substitutions\" id=\"mmK-ZY-1i7\">\n                                    <items>\n                                        <menuItem title=\"Show Substitutions\" id=\"E6f-H6-QhY\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                            <connections>\n                                                <action selector=\"orderFrontSubstitutionsPanel:\" target=\"-1\" id=\"c4L-9l-58Z\"/>\n                                            </connections>\n                                        </menuItem>\n                                        <menuItem isSeparatorItem=\"YES\" id=\"ENB-nL-Asg\"/>\n                                        <menuItem title=\"Smart Copy/Paste\" id=\"RNy-Ve-QQn\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                            <connections>\n                                                <action selector=\"toggleSmartInsertDelete:\" target=\"-1\" id=\"qpY-x8-X4o\"/>\n                                            </connections>\n                                        </menuItem>\n                                        <menuItem title=\"Smart Quotes\" id=\"WOW-3M-PVs\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                            <connections>\n                                                <action selector=\"toggleAutomaticQuoteSubstitution:\" target=\"-1\" id=\"4LP-0s-thl\"/>\n                                            </connections>\n                                        </menuItem>\n                                        <menuItem title=\"Smart Dashes\" id=\"c3Y-vb-jMJ\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                            <connections>\n                                                <action selector=\"toggleAutomaticDashSubstitution:\" target=\"-1\" id=\"VOh-m7-bQX\"/>\n                                            </connections>\n                                        </menuItem>\n                                        <menuItem title=\"Smart Links\" id=\"xpL-0N-OPW\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                            <connections>\n                                                <action selector=\"toggleAutomaticLinkDetection:\" target=\"-1\" id=\"OKD-gC-8aE\"/>\n                                            </connections>\n                                        </menuItem>\n                                        <menuItem title=\"Data Detectors\" id=\"Hbt-6Y-8jk\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                            <connections>\n                                                <action selector=\"toggleAutomaticDataDetection:\" target=\"-1\" id=\"gun-Rv-8nJ\"/>\n                                            </connections>\n                                        </menuItem>\n                                        <menuItem title=\"Text Replacement\" id=\"Zq8-Zi-Bhq\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                            <connections>\n                                                <action selector=\"toggleAutomaticTextReplacement:\" target=\"-1\" id=\"9Ss-B0-tH1\"/>\n                                            </connections>\n                                        </menuItem>\n                                    </items>\n                                </menu>\n                            </menuItem>\n                            <menuItem title=\"Transformations\" id=\"lVL-sB-nwJ\">\n                                <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                <menu key=\"submenu\" title=\"Transformations\" id=\"0Gi-wi-fPh\">\n                                    <items>\n                                        <menuItem title=\"Make Upper Case\" id=\"74T-ro-lNN\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                            <connections>\n                                                <action selector=\"uppercaseWord:\" target=\"-1\" id=\"bNP-Yh-wfr\"/>\n                                            </connections>\n                                        </menuItem>\n                                        <menuItem title=\"Make Lower Case\" id=\"eUB-DS-Th3\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                            <connections>\n                                                <action selector=\"lowercaseWord:\" target=\"-1\" id=\"Qn7-8C-v9E\"/>\n                                            </connections>\n                                        </menuItem>\n                                        <menuItem title=\"Capitalize\" id=\"Qdu-on-Bhv\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                            <connections>\n                                                <action selector=\"capitalizeWord:\" target=\"-1\" id=\"euU-PY-6a5\"/>\n                                            </connections>\n                                        </menuItem>\n                                    </items>\n                                </menu>\n                            </menuItem>\n                            <menuItem title=\"Speech\" id=\"aly-Wy-hOl\">\n                                <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                <menu key=\"submenu\" title=\"Speech\" id=\"aWn-Eb-Kvg\">\n                                    <items>\n                                        <menuItem title=\"Start Speaking\" id=\"dnR-gz-zsX\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                            <connections>\n                                                <action selector=\"startSpeaking:\" target=\"-1\" id=\"CRt-UM-92c\"/>\n                                            </connections>\n                                        </menuItem>\n                                        <menuItem title=\"Stop Speaking\" id=\"Wen-oy-zkg\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                            <connections>\n                                                <action selector=\"stopSpeaking:\" target=\"-1\" id=\"eVf-xt-2xb\"/>\n                                            </connections>\n                                        </menuItem>\n                                    </items>\n                                </menu>\n                            </menuItem>\n                        </items>\n                    </menu>\n                </menuItem>\n                <menuItem title=\"Screen\" id=\"295\">\n                    <menu key=\"submenu\" title=\"Screen\" id=\"296\">\n                        <items>\n                            <menuItem isSeparatorItem=\"YES\" id=\"579\"/>\n                            <menuItem title=\"Portait\" state=\"on\" id=\"592\">\n                                <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                <connections>\n                                    <action selector=\"onScreenPortait:\" target=\"-1\" id=\"667\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem title=\"Landscape\" id=\"593\">\n                                <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                <connections>\n                                    <action selector=\"onScreenLandscape:\" target=\"-1\" id=\"647\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem isSeparatorItem=\"YES\" id=\"594\"/>\n                            <menuItem title=\"Actual (100%)\" state=\"on\" tag=\"100\" keyEquivalent=\"0\" id=\"595\">\n                                <connections>\n                                    <action selector=\"onScreenZoomOut:\" target=\"-1\" id=\"yUj-fN-Rh7\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem title=\"Zoom Out (75%)\" tag=\"75\" keyEquivalent=\"6\" id=\"pqR-xy-5ip\">\n                                <connections>\n                                    <action selector=\"onScreenZoomOut:\" target=\"-1\" id=\"yps-LZ-egB\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem title=\"Zoom Out (50%)\" tag=\"50\" keyEquivalent=\"5\" id=\"596\">\n                                <connections>\n                                    <action selector=\"onScreenZoomOut:\" target=\"-1\" id=\"654\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem title=\"Zoom Out (25%)\" tag=\"25\" keyEquivalent=\"4\" id=\"QB8-6D-hAr\">\n                                <connections>\n                                    <action selector=\"onScreenZoomOut:\" target=\"-1\" id=\"DSu-if-D2T\"/>\n                                </connections>\n                            </menuItem>\n                        </items>\n                    </menu>\n                </menuItem>\n                <menuItem title=\"Window\" id=\"19\">\n                    <menu key=\"submenu\" title=\"Window\" systemMenu=\"window\" id=\"24\">\n                        <items>\n                            <menuItem title=\"Minimize\" keyEquivalent=\"m\" id=\"23\">\n                                <connections>\n                                    <action selector=\"performMiniaturize:\" target=\"-1\" id=\"37\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem isSeparatorItem=\"YES\" id=\"92\">\n                                <modifierMask key=\"keyEquivalentModifierMask\" command=\"YES\"/>\n                            </menuItem>\n                            <menuItem title=\"Bring All to Front\" id=\"5\">\n                                <connections>\n                                    <action selector=\"arrangeInFront:\" target=\"-1\" id=\"39\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem title=\"Always On Top\" keyEquivalent=\"a\" id=\"582\">\n                                <modifierMask key=\"keyEquivalentModifierMask\" option=\"YES\" command=\"YES\"/>\n                                <connections>\n                                    <action selector=\"onWindowAlwaysOnTop:\" target=\"-1\" id=\"668\"/>\n                                </connections>\n                            </menuItem>\n                        </items>\n                    </menu>\n                </menuItem>\n                <menuItem title=\"Help\" id=\"490\">\n                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                </menuItem>\n            </items>\n        </menu>\n        <customObject id=\"420\" customClass=\"NSFontManager\"/>\n        <customObject id=\"536\" customClass=\"AppController\">\n            <connections>\n                <outlet property=\"menu\" destination=\"29\" id=\"550\"/>\n            </connections>\n        </customObject>\n    </objects>\n</document>\n"
  },
  {
    "path": "源代码/2.2.5/mir9/proj.mac/main.m",
    "content": "\n#import <Cocoa/Cocoa.h>\n\nint main(int argc, char *argv[])\n{\n    return NSApplicationMain(argc, (const char **)argv);\n}\n"
  },
  {
    "path": "源代码/2.2.5/mir9/proj.mac/mir9.xcodeproj/project.pbxproj",
    "content": "// !$*UTF8*$!\n{\n\tarchiveVersion = 1;\n\tclasses = {\n\t};\n\tobjectVersion = 46;\n\tobjects = {\n\n/* Begin PBXBuildFile section */\n\t\tF40EE898163F83E000090121 /* AppKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F44C957915F49004004D4151 /* AppKit.framework */; };\n\t\tF44C957715F49004004D4151 /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F44C957615F49004004D4151 /* Cocoa.framework */; };\n\t\tF4703CBE177955E200A8A9E9 /* MainMenu.xib in Resources */ = {isa = PBXBuildFile; fileRef = F4703CBC177955E100A8A9E9 /* MainMenu.xib */; };\n\t\tF4A5C15E16B7A35700A12606 /* AudioToolbox.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F4A5C15816B7A35700A12606 /* AudioToolbox.framework */; };\n\t\tF4A5C15F16B7A35700A12606 /* OpenAL.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F4A5C15916B7A35700A12606 /* OpenAL.framework */; };\n\t\tF4A5C16016B7A35700A12606 /* OpenGL.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F4A5C15A16B7A35700A12606 /* OpenGL.framework */; };\n\t\tF4A5C16E16B7A3EC00A12606 /* libcurl.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = F4A5C16B16B7A3EC00A12606 /* libcurl.dylib */; };\n\t\tF4A5C16F16B7A3EC00A12606 /* libxml2.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = F4A5C16C16B7A3EC00A12606 /* libxml2.dylib */; };\n\t\tF4A5C17016B7A3EC00A12606 /* libz.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = F4A5C16D16B7A3EC00A12606 /* libz.dylib */; };\n\t\tF4B0814A175C89050029F472 /* AppController.mm in Sources */ = {isa = PBXBuildFile; fileRef = F4B08140175C89050029F472 /* AppController.mm */; };\n\t\tF4B0814D175C89050029F472 /* Icon.icns in Resources */ = {isa = PBXBuildFile; fileRef = F4B08146175C89050029F472 /* Icon.icns */; };\n\t\tF4B0814F175C89050029F472 /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = F4B08148175C89050029F472 /* main.m */; };\n\t\tF4B08157175C89E90029F472 /* libquickcocos2dx.a in Frameworks */ = {isa = PBXBuildFile; fileRef = F4B08156175C89E30029F472 /* libquickcocos2dx.a */; };\n\t\tF4B0815E175C8A1E0029F472 /* AppDelegate.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F4B0815A175C8A1E0029F472 /* AppDelegate.cpp */; };\n\t\tF4B4EF6616CA2A8B00736FFE /* SystemConfiguration.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F4B4EF6516CA2A8B00736FFE /* SystemConfiguration.framework */; };\n\t\tF4BA6EB315F499A300CE7A10 /* QuartzCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F4BA6EB215F499A300CE7A10 /* QuartzCore.framework */; };\n\t\tF4BA6EBD15F499EE00CE7A10 /* Security.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F4BA6EBC15F499EE00CE7A10 /* Security.framework */; };\n\t\tF4DDD22D1926533C00D37F83 /* mir9.app in CopyFiles */ = {isa = PBXBuildFile; fileRef = F44C957215F49004004D4151 /* mir9.app */; };\n/* End PBXBuildFile section */\n\n/* Begin PBXContainerItemProxy section */\n\t\tF4B08155175C89E30029F472 /* PBXContainerItemProxy */ = {\n\t\t\tisa = PBXContainerItemProxy;\n\t\t\tcontainerPortal = F4B08151175C89E30029F472 /* quickcocos2dx.xcodeproj */;\n\t\t\tproxyType = 2;\n\t\t\tremoteGlobalIDString = F4DE082016800061005DB2DB;\n\t\t\tremoteInfo = quickcocos2dx;\n\t\t};\n/* End PBXContainerItemProxy section */\n\n/* Begin PBXCopyFilesBuildPhase section */\n\t\tF4DDD22C1926532400D37F83 /* CopyFiles */ = {\n\t\t\tisa = PBXCopyFilesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tdstPath = \"$(SRCROOT)/bin\";\n\t\t\tdstSubfolderSpec = 0;\n\t\t\tfiles = (\n\t\t\t\tF4DDD22D1926533C00D37F83 /* mir9.app in CopyFiles */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n/* End PBXCopyFilesBuildPhase section */\n\n/* Begin PBXFileReference section */\n\t\tF44C957215F49004004D4151 /* mir9.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = \"mir9.app\"; sourceTree = BUILT_PRODUCTS_DIR; };\n\t\tF44C957615F49004004D4151 /* Cocoa.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Cocoa.framework; path = System/Library/Frameworks/Cocoa.framework; sourceTree = SDKROOT; };\n\t\tF44C957915F49004004D4151 /* AppKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AppKit.framework; path = System/Library/Frameworks/AppKit.framework; sourceTree = SDKROOT; };\n\t\tF44C957A15F49004004D4151 /* CoreData.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreData.framework; path = System/Library/Frameworks/CoreData.framework; sourceTree = SDKROOT; };\n\t\tF44C957B15F49004004D4151 /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = System/Library/Frameworks/Foundation.framework; sourceTree = SDKROOT; };\n\t\tF4703CBC177955E100A8A9E9 /* MainMenu.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; path = MainMenu.xib; sourceTree = \"<group>\"; };\n\t\tF4A5C15816B7A35700A12606 /* AudioToolbox.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AudioToolbox.framework; path = /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.8.sdk/System/Library/Frameworks/AudioToolbox.framework; sourceTree = \"<absolute>\"; };\n\t\tF4A5C15916B7A35700A12606 /* OpenAL.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = OpenAL.framework; path = /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.8.sdk/System/Library/Frameworks/OpenAL.framework; sourceTree = \"<absolute>\"; };\n\t\tF4A5C15A16B7A35700A12606 /* OpenGL.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = OpenGL.framework; path = /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.8.sdk/System/Library/Frameworks/OpenGL.framework; sourceTree = \"<absolute>\"; };\n\t\tF4A5C16B16B7A3EC00A12606 /* libcurl.dylib */ = {isa = PBXFileReference; lastKnownFileType = \"compiled.mach-o.dylib\"; name = libcurl.dylib; path = /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.8.sdk/usr/lib/libcurl.dylib; sourceTree = \"<absolute>\"; };\n\t\tF4A5C16C16B7A3EC00A12606 /* libxml2.dylib */ = {isa = PBXFileReference; lastKnownFileType = \"compiled.mach-o.dylib\"; name = libxml2.dylib; path = /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.8.sdk/usr/lib/libxml2.dylib; sourceTree = \"<absolute>\"; };\n\t\tF4A5C16D16B7A3EC00A12606 /* libz.dylib */ = {isa = PBXFileReference; lastKnownFileType = \"compiled.mach-o.dylib\"; name = libz.dylib; path = /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.8.sdk/usr/lib/libz.dylib; sourceTree = \"<absolute>\"; };\n\t\tF4B0813F175C89050029F472 /* AppController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AppController.h; sourceTree = SOURCE_ROOT; };\n\t\tF4B08140175C89050029F472 /* AppController.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = AppController.mm; sourceTree = SOURCE_ROOT; };\n\t\tF4B08146175C89050029F472 /* Icon.icns */ = {isa = PBXFileReference; lastKnownFileType = image.icns; path = Icon.icns; sourceTree = SOURCE_ROOT; };\n\t\tF4B08147175C89050029F472 /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = SOURCE_ROOT; };\n\t\tF4B08148175C89050029F472 /* main.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = main.m; sourceTree = SOURCE_ROOT; };\n\t\tF4B08149175C89050029F472 /* Prefix.pch */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Prefix.pch; sourceTree = SOURCE_ROOT; };\n\t\tF4B08151175C89E30029F472 /* quickcocos2dx.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = \"wrapper.pb-project\"; name = quickcocos2dx.xcodeproj; path = lib/proj.mac/quickcocos2dx.xcodeproj; sourceTree = QUICK_COCOS2DX_ROOT; };\n\t\tF4B0815A175C8A1E0029F472 /* AppDelegate.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = AppDelegate.cpp; sourceTree = \"<group>\"; };\n\t\tF4B0815B175C8A1E0029F472 /* AppDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AppDelegate.h; sourceTree = \"<group>\"; };\n\t\tF4B4EF6516CA2A8B00736FFE /* SystemConfiguration.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = SystemConfiguration.framework; path = System/Library/Frameworks/SystemConfiguration.framework; sourceTree = SDKROOT; };\n\t\tF4BA6EB215F499A300CE7A10 /* QuartzCore.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = QuartzCore.framework; path = System/Library/Frameworks/QuartzCore.framework; sourceTree = SDKROOT; };\n\t\tF4BA6EBA15F499CC00CE7A10 /* CoreFoundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreFoundation.framework; path = System/Library/Frameworks/CoreFoundation.framework; sourceTree = SDKROOT; };\n\t\tF4BA6EBC15F499EE00CE7A10 /* Security.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Security.framework; path = System/Library/Frameworks/Security.framework; sourceTree = SDKROOT; };\n/* End PBXFileReference section */\n\n/* Begin PBXFrameworksBuildPhase section */\n\t\tF44C956F15F49004004D4151 /* Frameworks */ = {\n\t\t\tisa = PBXFrameworksBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\tF4B08157175C89E90029F472 /* libquickcocos2dx.a in Frameworks */,\n\t\t\t\tF4B4EF6616CA2A8B00736FFE /* SystemConfiguration.framework in Frameworks */,\n\t\t\t\tF40EE898163F83E000090121 /* AppKit.framework in Frameworks */,\n\t\t\t\tF4BA6EBD15F499EE00CE7A10 /* Security.framework in Frameworks */,\n\t\t\t\tF4BA6EB315F499A300CE7A10 /* QuartzCore.framework in Frameworks */,\n\t\t\t\tF44C957715F49004004D4151 /* Cocoa.framework in Frameworks */,\n\t\t\t\tF4A5C15E16B7A35700A12606 /* AudioToolbox.framework in Frameworks */,\n\t\t\t\tF4A5C15F16B7A35700A12606 /* OpenAL.framework in Frameworks */,\n\t\t\t\tF4A5C16016B7A35700A12606 /* OpenGL.framework in Frameworks */,\n\t\t\t\tF4A5C16E16B7A3EC00A12606 /* libcurl.dylib in Frameworks */,\n\t\t\t\tF4A5C16F16B7A3EC00A12606 /* libxml2.dylib in Frameworks */,\n\t\t\t\tF4A5C17016B7A3EC00A12606 /* libz.dylib in Frameworks */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n/* End PBXFrameworksBuildPhase section */\n\n/* Begin PBXGroup section */\n\t\tF44C956715F49004004D4151 = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tF4B08151175C89E30029F472 /* quickcocos2dx.xcodeproj */,\n\t\t\t\tF44C957C15F49004004D4151 /* mir9 */,\n\t\t\t\tF44C957515F49004004D4151 /* Frameworks */,\n\t\t\t\tF44C957315F49004004D4151 /* Products */,\n\t\t\t);\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tF44C957315F49004004D4151 /* Products */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tF44C957215F49004004D4151 /* mir9.app */,\n\t\t\t);\n\t\t\tname = Products;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tF44C957515F49004004D4151 /* Frameworks */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tF44C957915F49004004D4151 /* AppKit.framework */,\n\t\t\t\tF4A5C15816B7A35700A12606 /* AudioToolbox.framework */,\n\t\t\t\tF44C957615F49004004D4151 /* Cocoa.framework */,\n\t\t\t\tF44C957A15F49004004D4151 /* CoreData.framework */,\n\t\t\t\tF4BA6EBA15F499CC00CE7A10 /* CoreFoundation.framework */,\n\t\t\t\tF44C957B15F49004004D4151 /* Foundation.framework */,\n\t\t\t\tF4A5C16B16B7A3EC00A12606 /* libcurl.dylib */,\n\t\t\t\tF4A5C16C16B7A3EC00A12606 /* libxml2.dylib */,\n\t\t\t\tF4A5C16D16B7A3EC00A12606 /* libz.dylib */,\n\t\t\t\tF4A5C15916B7A35700A12606 /* OpenAL.framework */,\n\t\t\t\tF4A5C15A16B7A35700A12606 /* OpenGL.framework */,\n\t\t\t\tF4BA6EB215F499A300CE7A10 /* QuartzCore.framework */,\n\t\t\t\tF4BA6EBC15F499EE00CE7A10 /* Security.framework */,\n\t\t\t\tF4B4EF6516CA2A8B00736FFE /* SystemConfiguration.framework */,\n\t\t\t);\n\t\t\tname = Frameworks;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tF44C957C15F49004004D4151 /* mir9 */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tF4B08159175C8A1E0029F472 /* sources */,\n\t\t\t\tF4B08158175C8A100029F472 /* mac */,\n\t\t\t);\n\t\t\tname = \"mir9\";\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tF4B08152175C89E30029F472 /* Products */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tF4B08156175C89E30029F472 /* libquickcocos2dx.a */,\n\t\t\t);\n\t\t\tname = Products;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tF4B08158175C8A100029F472 /* mac */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tF4B0813F175C89050029F472 /* AppController.h */,\n\t\t\t\tF4B08140175C89050029F472 /* AppController.mm */,\n\t\t\t\tF4B08146175C89050029F472 /* Icon.icns */,\n\t\t\t\tF4B08147175C89050029F472 /* Info.plist */,\n\t\t\t\tF4B08148175C89050029F472 /* main.m */,\n\t\t\t\tF4703CBC177955E100A8A9E9 /* MainMenu.xib */,\n\t\t\t\tF4B08149175C89050029F472 /* Prefix.pch */,\n\t\t\t);\n\t\t\tname = mac;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tF4B08159175C8A1E0029F472 /* sources */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tF4B0815A175C8A1E0029F472 /* AppDelegate.cpp */,\n\t\t\t\tF4B0815B175C8A1E0029F472 /* AppDelegate.h */,\n\t\t\t);\n\t\t\tname = sources;\n\t\t\tpath = ../sources;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n/* End PBXGroup section */\n\n/* Begin PBXNativeTarget section */\n\t\tF44C957115F49004004D4151 /* mir9 */ = {\n\t\t\tisa = PBXNativeTarget;\n\t\t\tbuildConfigurationList = F44C959015F49004004D4151 /* Build configuration list for PBXNativeTarget \"mir9\" */;\n\t\t\tbuildPhases = (\n\t\t\t\tF44C956E15F49004004D4151 /* Sources */,\n\t\t\t\tF44C956F15F49004004D4151 /* Frameworks */,\n\t\t\t\tF44C957015F49004004D4151 /* Resources */,\n\t\t\t\tF4DDD22C1926532400D37F83 /* CopyFiles */,\n\t\t\t);\n\t\t\tbuildRules = (\n\t\t\t);\n\t\t\tdependencies = (\n\t\t\t);\n\t\t\tname = \"mir9\";\n\t\t\tproductName = \"mir9\";\n\t\t\tproductReference = F44C957215F49004004D4151 /* mir9.app */;\n\t\t\tproductType = \"com.apple.product-type.application\";\n\t\t};\n/* End PBXNativeTarget section */\n\n/* Begin PBXProject section */\n\t\tF44C956915F49004004D4151 /* Project object */ = {\n\t\t\tisa = PBXProject;\n\t\t\tattributes = {\n\t\t\t\tLastUpgradeCheck = 0500;\n\t\t\t\tORGANIZATIONNAME = qeeplay.com;\n\t\t\t};\n\t\t\tbuildConfigurationList = F44C956C15F49004004D4151 /* Build configuration list for PBXProject \"mir9\" */;\n\t\t\tcompatibilityVersion = \"Xcode 3.2\";\n\t\t\tdevelopmentRegion = English;\n\t\t\thasScannedForEncodings = 0;\n\t\t\tknownRegions = (\n\t\t\t\ten,\n\t\t\t);\n\t\t\tmainGroup = F44C956715F49004004D4151;\n\t\t\tproductRefGroup = F44C957315F49004004D4151 /* Products */;\n\t\t\tprojectDirPath = \"\";\n\t\t\tprojectReferences = (\n\t\t\t\t{\n\t\t\t\t\tProductGroup = F4B08152175C89E30029F472 /* Products */;\n\t\t\t\t\tProjectRef = F4B08151175C89E30029F472 /* quickcocos2dx.xcodeproj */;\n\t\t\t\t},\n\t\t\t);\n\t\t\tprojectRoot = \"\";\n\t\t\ttargets = (\n\t\t\t\tF44C957115F49004004D4151 /* mir9 */,\n\t\t\t);\n\t\t};\n/* End PBXProject section */\n\n/* Begin PBXReferenceProxy section */\n\t\tF4B08156175C89E30029F472 /* libquickcocos2dx.a */ = {\n\t\t\tisa = PBXReferenceProxy;\n\t\t\tfileType = archive.ar;\n\t\t\tpath = libquickcocos2dx.a;\n\t\t\tremoteRef = F4B08155175C89E30029F472 /* PBXContainerItemProxy */;\n\t\t\tsourceTree = BUILT_PRODUCTS_DIR;\n\t\t};\n/* End PBXReferenceProxy section */\n\n/* Begin PBXResourcesBuildPhase section */\n\t\tF44C957015F49004004D4151 /* Resources */ = {\n\t\t\tisa = PBXResourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\tF4B0814D175C89050029F472 /* Icon.icns in Resources */,\n\t\t\t\tF4703CBE177955E200A8A9E9 /* MainMenu.xib in Resources */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n/* End PBXResourcesBuildPhase section */\n\n/* Begin PBXSourcesBuildPhase section */\n\t\tF44C956E15F49004004D4151 /* Sources */ = {\n\t\t\tisa = PBXSourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\tF4B0814A175C89050029F472 /* AppController.mm in Sources */,\n\t\t\t\tF4B0814F175C89050029F472 /* main.m in Sources */,\n\t\t\t\tF4B0815E175C8A1E0029F472 /* AppDelegate.cpp in Sources */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n/* End PBXSourcesBuildPhase section */\n\n/* Begin XCBuildConfiguration section */\n\t\tF44C958E15F49004004D4151 /* Debug */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tALWAYS_SEARCH_USER_PATHS = NO;\n\t\t\t\tARCHS = \"$(ARCHS_STANDARD)\";\n\t\t\t\tCLANG_CXX_LANGUAGE_STANDARD = \"gnu++0x\";\n\t\t\t\tCLANG_WARN__DUPLICATE_METHOD_MATCH = YES;\n\t\t\t\tCOPY_PHASE_STRIP = NO;\n\t\t\t\tGCC_C_LANGUAGE_STANDARD = gnu99;\n\t\t\t\tGCC_DYNAMIC_NO_PIC = NO;\n\t\t\t\tGCC_ENABLE_OBJC_EXCEPTIONS = YES;\n\t\t\t\tGCC_OPTIMIZATION_LEVEL = 0;\n\t\t\t\tGCC_PREPROCESSOR_DEFINITIONS = (\n\t\t\t\t\t\"DEBUG=1\",\n\t\t\t\t\tTARGET_OS_MAC,\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tGCC_SYMBOLS_PRIVATE_EXTERN = NO;\n\t\t\t\tGCC_WARN_64_TO_32_BIT_CONVERSION = YES;\n\t\t\t\tGCC_WARN_ABOUT_RETURN_TYPE = YES;\n\t\t\t\tGCC_WARN_UNINITIALIZED_AUTOS = YES;\n\t\t\t\tGCC_WARN_UNUSED_VARIABLE = YES;\n\t\t\t\tMACOSX_DEPLOYMENT_TARGET = 10.7;\n\t\t\t\tONLY_ACTIVE_ARCH = YES;\n\t\t\t\tOTHER_LDFLAGS = (\n\t\t\t\t\t\"-pagezero_size\",\n\t\t\t\t\t10000,\n\t\t\t\t\t\"-image_base\",\n\t\t\t\t\t100000000,\n\t\t\t\t);\n\t\t\t\tSDKROOT = macosx;\n\t\t\t\tVALID_ARCHS = \"$(ARCHS_STANDARD)\";\n\t\t\t};\n\t\t\tname = Debug;\n\t\t};\n\t\tF44C958F15F49004004D4151 /* Release */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tALWAYS_SEARCH_USER_PATHS = NO;\n\t\t\t\tARCHS = \"$(ARCHS_STANDARD)\";\n\t\t\t\tCLANG_CXX_LANGUAGE_STANDARD = \"gnu++0x\";\n\t\t\t\tCLANG_WARN__DUPLICATE_METHOD_MATCH = YES;\n\t\t\t\tCOPY_PHASE_STRIP = YES;\n\t\t\t\tDEBUG_INFORMATION_FORMAT = \"dwarf-with-dsym\";\n\t\t\t\tGCC_C_LANGUAGE_STANDARD = gnu99;\n\t\t\t\tGCC_ENABLE_OBJC_EXCEPTIONS = YES;\n\t\t\t\tGCC_PREPROCESSOR_DEFINITIONS = TARGET_OS_MAC;\n\t\t\t\tGCC_WARN_64_TO_32_BIT_CONVERSION = YES;\n\t\t\t\tGCC_WARN_ABOUT_RETURN_TYPE = YES;\n\t\t\t\tGCC_WARN_UNINITIALIZED_AUTOS = YES;\n\t\t\t\tGCC_WARN_UNUSED_VARIABLE = YES;\n\t\t\t\tMACOSX_DEPLOYMENT_TARGET = 10.7;\n\t\t\t\tOTHER_LDFLAGS = (\n\t\t\t\t\t\"-pagezero_size\",\n\t\t\t\t\t10000,\n\t\t\t\t\t\"-image_base\",\n\t\t\t\t\t100000000,\n\t\t\t\t);\n\t\t\t\tSDKROOT = macosx;\n\t\t\t\tVALID_ARCHS = \"$(ARCHS_STANDARD)\";\n\t\t\t};\n\t\t\tname = Release;\n\t\t};\n\t\tF44C959115F49004004D4151 /* Debug */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tARCHS = \"$(ARCHS_STANDARD)\";\n\t\t\t\tCLANG_CXX_LANGUAGE_STANDARD = \"gnu++0x\";\n\t\t\t\tCLANG_CXX_LIBRARY = \"libc++\";\n\t\t\t\tCOMBINE_HIDPI_IMAGES = YES;\n\t\t\t\tGCC_C_LANGUAGE_STANDARD = gnu11;\n\t\t\t\tGCC_INLINES_ARE_PRIVATE_EXTERN = YES;\n\t\t\t\tGCC_PRECOMPILE_PREFIX_HEADER = YES;\n\t\t\t\tGCC_PREFIX_HEADER = Prefix.pch;\n\t\t\t\tGCC_PREPROCESSOR_DEFINITIONS = (\n\t\t\t\t\tCC_TARGET_OS_MAC,\n\t\t\t\t\t\"DEBUG=1\",\n\t\t\t\t\tUSE_FILE32API,\n\t\t\t\t\t\"CC_LUA_ENGINE_ENABLED=1\",\n\t\t\t\t\t\"COCOS2D_DEBUG=1\",\n\t\t\t\t);\n\t\t\t\tGCC_SYMBOLS_PRIVATE_EXTERN = NO;\n\t\t\t\tHEADER_SEARCH_PATHS = (\n\t\t\t\t\t\"\\\"$(SDKROOT)/usr/include/libxml2\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_COCOS2DX_ROOT)/lib/cocos2d-x/cocos2dx\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_COCOS2DX_ROOT)/lib/cocos2d-x/cocos2dx/include\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_COCOS2DX_ROOT)/lib/cocos2d-x/cocos2dx/platform\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_COCOS2DX_ROOT)/lib/cocos2d-x/cocos2dx/platform/mac\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_COCOS2DX_ROOT)/lib/cocos2d-x/cocos2dx/platform/third_party/mac\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_COCOS2DX_ROOT)/lib/cocos2d-x/cocos2dx/kazmath/include\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_COCOS2DX_ROOT)/lib/cocos2d-x/CocosDenshion/include\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_COCOS2DX_ROOT)/lib/cocos2d-x/CocosDenshion/mac\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_COCOS2DX_ROOT)/lib/cocos2d-x/extensions\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_COCOS2DX_ROOT)/lib/cocos2d-x/extensions/GUI/CCControlExtension\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_COCOS2DX_ROOT)/lib/cocos2d-x/extensions/GUI/CCEditBox\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_COCOS2DX_ROOT)/lib/cocos2d-x/external/chipmunk/include\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_COCOS2DX_ROOT)/lib/cocos2d-x/external/chipmunk/luabinding\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_COCOS2DX_ROOT)/lib/cocos2d-x/external/extra\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_COCOS2DX_ROOT)/lib/cocos2d-x/external/extra/luabinding\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_COCOS2DX_ROOT)/lib/cocos2d-x/scripting/lua/cocos2dx_support\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_COCOS2DX_ROOT)/lib/cocos2d-x/scripting/lua/tolua\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_COCOS2DX_ROOT)/lib/cocos2d-x/scripting/lua/luajit/include\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_COCOS2DX_ROOT)/lib/cocos2d-x/scripting/lua/lua_extensions\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_COCOS2DX_ROOT)/lib/cocos2d-x/scripting/lua/lua_extensions/cjson\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_COCOS2DX_ROOT)/lib/cocos2d-x/scripting/lua/lua_extensions/zlib\\\"\",\n\t\t\t\t);\n\t\t\t\tINFOPLIST_FILE = \"$(SRCROOT)/Info.plist\";\n\t\t\t\tINFOPLIST_OUTPUT_FORMAT = binary;\n\t\t\t\tLIBRARY_SEARCH_PATHS = \"$(inherited)\";\n\t\t\t\tMACOSX_DEPLOYMENT_TARGET = 10.7;\n\t\t\t\tPRODUCT_NAME = \"$(TARGET_NAME)\";\n\t\t\t\tSDKROOT = macosx;\n\t\t\t\tVALID_ARCHS = \"$(ARCHS_STANDARD)\";\n\t\t\t\tWRAPPER_EXTENSION = app;\n\t\t\t};\n\t\t\tname = Debug;\n\t\t};\n\t\tF44C959215F49004004D4151 /* Release */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tARCHS = \"$(ARCHS_STANDARD)\";\n\t\t\t\tCLANG_CXX_LANGUAGE_STANDARD = \"gnu++0x\";\n\t\t\t\tCLANG_CXX_LIBRARY = \"libc++\";\n\t\t\t\tCOMBINE_HIDPI_IMAGES = YES;\n\t\t\t\tGCC_C_LANGUAGE_STANDARD = gnu11;\n\t\t\t\tGCC_INLINES_ARE_PRIVATE_EXTERN = YES;\n\t\t\t\tGCC_PRECOMPILE_PREFIX_HEADER = YES;\n\t\t\t\tGCC_PREFIX_HEADER = Prefix.pch;\n\t\t\t\tGCC_PREPROCESSOR_DEFINITIONS = (\n\t\t\t\t\tCC_TARGET_OS_MAC,\n\t\t\t\t\tUSE_FILE32API,\n\t\t\t\t\t\"CC_LUA_ENGINE_ENABLED=1\",\n\t\t\t\t);\n\t\t\t\tGCC_SYMBOLS_PRIVATE_EXTERN = NO;\n\t\t\t\tHEADER_SEARCH_PATHS = (\n\t\t\t\t\t\"\\\"$(SDKROOT)/usr/include/libxml2\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_COCOS2DX_ROOT)/lib/cocos2d-x/cocos2dx\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_COCOS2DX_ROOT)/lib/cocos2d-x/cocos2dx/include\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_COCOS2DX_ROOT)/lib/cocos2d-x/cocos2dx/platform\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_COCOS2DX_ROOT)/lib/cocos2d-x/cocos2dx/platform/mac\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_COCOS2DX_ROOT)/lib/cocos2d-x/cocos2dx/platform/third_party/mac\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_COCOS2DX_ROOT)/lib/cocos2d-x/cocos2dx/kazmath/include\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_COCOS2DX_ROOT)/lib/cocos2d-x/CocosDenshion/include\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_COCOS2DX_ROOT)/lib/cocos2d-x/CocosDenshion/mac\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_COCOS2DX_ROOT)/lib/cocos2d-x/extensions\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_COCOS2DX_ROOT)/lib/cocos2d-x/extensions/GUI/CCControlExtension\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_COCOS2DX_ROOT)/lib/cocos2d-x/extensions/GUI/CCEditBox\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_COCOS2DX_ROOT)/lib/cocos2d-x/external/chipmunk/include\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_COCOS2DX_ROOT)/lib/cocos2d-x/external/chipmunk/luabinding\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_COCOS2DX_ROOT)/lib/cocos2d-x/external/extra\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_COCOS2DX_ROOT)/lib/cocos2d-x/external/extra/luabinding\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_COCOS2DX_ROOT)/lib/cocos2d-x/scripting/lua/cocos2dx_support\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_COCOS2DX_ROOT)/lib/cocos2d-x/scripting/lua/tolua\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_COCOS2DX_ROOT)/lib/cocos2d-x/scripting/lua/luajit/include\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_COCOS2DX_ROOT)/lib/cocos2d-x/scripting/lua/lua_extensions\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_COCOS2DX_ROOT)/lib/cocos2d-x/scripting/lua/lua_extensions/cjson\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_COCOS2DX_ROOT)/lib/cocos2d-x/scripting/lua/lua_extensions/zlib\\\"\",\n\t\t\t\t);\n\t\t\t\tINFOPLIST_FILE = \"$(SRCROOT)/Info.plist\";\n\t\t\t\tINFOPLIST_OUTPUT_FORMAT = binary;\n\t\t\t\tLIBRARY_SEARCH_PATHS = \"$(inherited)\";\n\t\t\t\tMACOSX_DEPLOYMENT_TARGET = 10.7;\n\t\t\t\tPRODUCT_NAME = \"$(TARGET_NAME)\";\n\t\t\t\tSDKROOT = macosx;\n\t\t\t\tVALID_ARCHS = \"$(ARCHS_STANDARD)\";\n\t\t\t\tWRAPPER_EXTENSION = app;\n\t\t\t};\n\t\t\tname = Release;\n\t\t};\n/* End XCBuildConfiguration section */\n\n/* Begin XCConfigurationList section */\n\t\tF44C956C15F49004004D4151 /* Build configuration list for PBXProject \"mir9\" */ = {\n\t\t\tisa = XCConfigurationList;\n\t\t\tbuildConfigurations = (\n\t\t\t\tF44C958E15F49004004D4151 /* Debug */,\n\t\t\t\tF44C958F15F49004004D4151 /* Release */,\n\t\t\t);\n\t\t\tdefaultConfigurationIsVisible = 0;\n\t\t\tdefaultConfigurationName = Release;\n\t\t};\n\t\tF44C959015F49004004D4151 /* Build configuration list for PBXNativeTarget \"mir9\" */ = {\n\t\t\tisa = XCConfigurationList;\n\t\t\tbuildConfigurations = (\n\t\t\t\tF44C959115F49004004D4151 /* Debug */,\n\t\t\t\tF44C959215F49004004D4151 /* Release */,\n\t\t\t);\n\t\t\tdefaultConfigurationIsVisible = 0;\n\t\t\tdefaultConfigurationName = Release;\n\t\t};\n/* End XCConfigurationList section */\n\t};\n\trootObject = F44C956915F49004004D4151 /* Project object */;\n}\n"
  },
  {
    "path": "源代码/2.2.5/mir9/proj.win32/app.cpp",
    "content": "\n#pragma comment(lib, \"comctl32.lib\")\n#pragma comment(linker, \"\\\"/manifestdependency:type='Win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' processorArchitecture='X86' publicKeyToken='6595b64144ccf1df' language='*'\\\"\")\n\n#include \"stdafx.h\"\n#include \"app.h\"\n#include <io.h>\n#include <stdlib.h>\n#include <stdio.h>\n#include <fcntl.h>\n\n#include <Commdlg.h>\n#include <Shlobj.h>\n#include <winnls.h>\n#include <shobjidl.h>\n#include <objbase.h>\n#include <objidl.h>\n#include <shlguid.h>\n#include <shellapi.h>\n\n#include <vector>\n\n#include \"CCEGLView.h\"\n#include \"CCLuaEngine.h\"\n#include \"CCLuaStack.h\"\n#include \"SimpleAudioEngine.h\"\n\n\nint APIENTRY _tWinMain(HINSTANCE hInstance,\n    HINSTANCE hPrevInstance,\n    LPTSTR    lpCmdLine,\n    int       nCmdShow)\n{\n    UNREFERENCED_PARAMETER(hPrevInstance);\n    UNREFERENCED_PARAMETER(lpCmdLine);\n    return App::createAndRun();\n}\n\nint App::createAndRun(void)\n{\n    App *host = App::sharedInstance();\n    int ret = host->run();\n    App::purgeSharedInstance();\n    return ret;\n}\n\nApp *App::s_sharedInstance = NULL;\n\nApp *App::sharedInstance(void)\n{\n    if (!s_sharedInstance)\n    {\n        s_sharedInstance = new App();\n    }\n    return s_sharedInstance;\n}\n\nvoid App::purgeSharedInstance(void)\n{\n    if (s_sharedInstance)\n    {\n        delete s_sharedInstance;\n        s_sharedInstance = NULL;\n    }\n}\n\nApp::App(void)\n: m_app(NULL)\n, m_hwnd(NULL)\n, m_exit(TRUE)\n, m_writeDebugLogFile(NULL)\n{\n    INITCOMMONCONTROLSEX InitCtrls;\n    InitCtrls.dwSize = sizeof(InitCtrls);\n    InitCtrls.dwICC = ICC_WIN95_CLASSES;\n    InitCommonControlsEx(&InitCtrls);\n}\n\nint App::run(void)\n{\n    const char *QUICK_COCOS2DX_ROOT = getenv(\"QUICK_COCOS2DX_ROOT\");\n    SimulatorConfig::sharedDefaults()->setQuickCocos2dxRootPath(QUICK_COCOS2DX_ROOT);\n\n    loadProjectConfig();\n\n    HWND hwndConsole = NULL;\n    if (m_project.isShowConsole())\n    {\n        AllocConsole();\n        freopen(\"CONOUT$\", \"wt\", stdout);\n        freopen(\"CONOUT$\", \"wt\", stderr);\n\n        // disable close console\n        hwndConsole = GetConsoleWindow();\n        if (hwndConsole != NULL)\n        {\n            HMENU hMenu = GetSystemMenu(hwndConsole, FALSE);\n            if (hMenu != NULL) DeleteMenu(hMenu, SC_CLOSE, MF_BYCOMMAND);\n\n            ShowWindow(hwndConsole, SW_SHOW);\n            BringWindowToTop(hwndConsole);\n        }\n    }\n\n    m_project.dump();\n\n    if (m_project.isWriteDebugLogToFile())\n    {\n        const string debugLogFilePath = m_project.getDebugLogFilePath();\n        m_writeDebugLogFile = fopen(debugLogFilePath.c_str(), \"w\");\n        if (!m_writeDebugLogFile)\n        {\n            CCLOG(\"Cannot create debug log file %s\", debugLogFilePath.c_str());\n        }\n    }\n\n    do\n    {\n        m_exit = TRUE;\n\n        // create the application instance\n        m_app = new AppDelegate();\n        m_app->setProjectConfig(m_project);\n\n        // set environments\n        SetCurrentDirectoryA(m_project.getProjectDir().c_str());\n        CCFileUtils::sharedFileUtils()->setSearchRootPath(m_project.getProjectDir().c_str());\n        CCFileUtils::sharedFileUtils()->setWritablePath(m_project.getWritableRealPath().c_str());\n\n        // create opengl view\n        CCEGLView* eglView = CCEGLView::sharedOpenGLView();\n        eglView->setMenuResource(MAKEINTRESOURCE(IDC_LUAHOSTWIN32));\n        eglView->setWndProc(WindowProc);\n        eglView->setFrameSize(m_project.getFrameSize().width, m_project.getFrameSize().height);\n        eglView->setFrameZoomFactor(m_project.getFrameScale());\n\n        // make window actived\n        m_hwnd = eglView->getHWnd();\n        BringWindowToTop(m_hwnd);\n        SetWindowTextA(m_hwnd, \"mir9\");\n\n        // restore window position\n        const CCPoint windowOffset = m_project.getWindowOffset();\n        if (windowOffset.x != 0 || windowOffset.y != 0)\n        {\n            eglView->moveWindow(windowOffset.x, windowOffset.y);\n        }\n\n        // set icon\n        HICON icon = LoadIcon(GetModuleHandle(NULL), MAKEINTRESOURCE(IDI_LUAHOSTWIN32));\n        SendMessage(m_hwnd, WM_SETICON, ICON_BIG, (LPARAM)icon);\n\n        if (hwndConsole)\n        {\n            SendMessage(hwndConsole, WM_SETICON, ICON_BIG, (LPARAM)icon);\n        }\n\n        // update menu\n        createViewMenu();\n        updateMenu();\n\n        // run game\n        CCLuaStack *stack = CCLuaEngine::defaultEngine()->getLuaStack();\n        const vector<string> arr = m_project.getPackagePathArray();\n        for (vector<string>::const_iterator it = arr.begin(); it != arr.end(); ++it)\n        {\n            stack->addSearchPath(it->c_str());\n        }\n\n        m_app->run();\n\n        // cleanup\n        CCScriptEngineManager::sharedManager()->removeScriptEngine();\n        CCScriptEngineManager::purgeSharedManager();\n        CocosDenshion::SimpleAudioEngine::end();\n\n        delete m_app;\n        m_app = NULL;\n    } while (!m_exit);\n\n    FreeConsole();\n    if (m_writeDebugLogFile) fclose(m_writeDebugLogFile);\n    return 0;\n}\n\nvoid App::loadProjectConfig(void)\n{\n\tvector<string> args;\n\tfor (int i = 0; i < __argc; ++i)\n\t{\n\t\twstring ws(__wargv[i]);\n\t\tstring s;\n\t\ts.assign(ws.begin(), ws.end());\n\t\targs.push_back(s);\n\t}\n\n\tif (args.size() <= 1)\n\t{\n\t\targs.push_back(\"-workdir\");\n#ifdef DEBUG\n\t\targs.push_back(DEBUG_WORK_DIR);\n#else\n\t\tchar szPath[MAX_PATH] = {0};\n\t\t::GetModuleFileNameA(NULL, szPath, MAX_PATH);\n\n\t\tstring strPath(szPath);\n\t\tfor (int nPos = (int)strPath.size()-1; nPos >= 0; --nPos)\n\t\t{\n\t\t\tchar cChar = strPath[nPos];\n\t\t\tif (_T('\\\\') == cChar || _T('/') == cChar)\n\t\t\t{\n\t\t\t\tstrPath = strPath.substr(0, nPos+1);\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\n\t\targs.push_back(strPath);\n\t\targs.push_back(\"-disable-console\");\n#endif\n\n#ifndef ENCRYPT_LUA\n\t\targs.push_back(\"-file\");\n\t\targs.push_back(\"scripts/main.lua\");\n#endif\n\n\t\targs.push_back(\"-size\");\n\t\targs.push_back(\"960x640\");\n\t}\n\n\tm_project.parseCommandLine(args);\n}\n\nvoid App::createViewMenu(void)\n{\n    HMENU menu = GetMenu(m_hwnd);\n    HMENU viewMenu = GetSubMenu(menu, 1);\n\n    for (int i = SimulatorConfig::sharedDefaults()->getScreenSizeCount() - 1; i >= 0; --i)\n    {\n        SimulatorScreenSize size = SimulatorConfig::sharedDefaults()->getScreenSize(i);\n        wstring menuName;\n        menuName.assign(size.title.begin(), size.title.end());\n\n        MENUITEMINFO item;\n        ZeroMemory(&item, sizeof(item));\n        item.cbSize = sizeof(item);\n        item.fMask = MIIM_FTYPE | MIIM_ID | MIIM_STRING;\n        item.fType = MFT_STRING;\n        item.wID = ID_VIEW_SIZE + i;\n        item.dwTypeData = (LPTSTR)menuName.c_str();\n        item.cch = menuName.length();\n\n        InsertMenuItem(viewMenu, 0, TRUE, &item);\n    }\n}\n\nvoid App::updateMenu(void)\n{\n    HMENU menu = GetMenu(m_hwnd);\n    HMENU viewMenu = GetSubMenu(menu, 1);\n\n    if (m_project.isLandscapeFrame())\n    {\n        CheckMenuItem(viewMenu, ID_VIEW_PORTRAIT, MF_BYCOMMAND | MF_UNCHECKED);\n        CheckMenuItem(viewMenu, ID_VIEW_LANDSCAPE, MF_BYCOMMAND | MF_CHECKED);\n    }\n    else\n    {\n        CheckMenuItem(viewMenu, ID_VIEW_PORTRAIT, MF_BYCOMMAND | MF_CHECKED);\n        CheckMenuItem(viewMenu, ID_VIEW_LANDSCAPE, MF_BYCOMMAND | MF_UNCHECKED);\n    }\n\n    if (m_project.getFrameScale() < 1.0f)\n    {\n        CheckMenuItem(viewMenu, ID_VIEW_RESET_ZOOM, MF_BYCOMMAND | MF_UNCHECKED);\n        CheckMenuItem(viewMenu, ID_VIEW_ZOOM_OUT, MF_BYCOMMAND | MF_CHECKED);\n    }\n    else\n    {\n        CheckMenuItem(viewMenu, ID_VIEW_RESET_ZOOM, MF_BYCOMMAND | MF_CHECKED);\n        CheckMenuItem(viewMenu, ID_VIEW_ZOOM_OUT, MF_BYCOMMAND | MF_UNCHECKED);\n    }\n\n    int current = SimulatorConfig::sharedDefaults()->checkScreenSize(m_project.getFrameSize());\n    for (int i = SimulatorConfig::sharedDefaults()->getScreenSizeCount() - 1; i >= 0; --i)\n    {\n        CheckMenuItem(viewMenu, i, MF_BYPOSITION | (i == current ? MF_CHECKED : MF_UNCHECKED));\n    }\n}\n\nvoid App::relaunch(void)\n{\n    string commandLine = m_project.makeCommandLine(kProjectConfigAll);\n    TCHAR moduleName[MAX_PATH];\n    ZeroMemory(moduleName, sizeof(moduleName));\n    GetModuleFileName(NULL, moduleName, MAX_PATH);\n\n    wstring ws;\n    ws.append(L\"\\\"\");\n    ws.append(moduleName);\n    ws.append(L\"\\\" \");\n    ws.append(commandLine.begin(), commandLine.end());\n\n    STARTUPINFO si = {0};\n    PROCESS_INFORMATION pi = {0};\n    lstrcpyW(moduleName, ws.c_str());\n    if (CreateProcess(NULL, moduleName, NULL, NULL, FALSE, NORMAL_PRIORITY_CLASS, NULL, NULL, &si, &pi))\n    {\n        ExitProcess(0);\n    }\n}\n\nvoid App::writeDebugLog(const char *log)\n{\n    if (!m_writeDebugLogFile) return;\n\n    fputs(log, m_writeDebugLogFile);\n    fputc('\\n', m_writeDebugLogFile);\n    fflush(m_writeDebugLogFile);\n}\n\n// menu callback\n\nvoid App::onFileRelaunch(void)\n{\n    relaunch();\n}\n\nvoid App::onFileExit(void)\n{\n    DestroyWindow(m_hwnd);\n}\n\nvoid App::onViewChangeFrameSize(int viewMenuID)\n{\n    int index = viewMenuID - ID_VIEW_SIZE;\n\n    if (index >= 0 && index < SimulatorConfig::sharedDefaults()->getScreenSizeCount())\n    {\n        SimulatorScreenSize size = SimulatorConfig::sharedDefaults()->getScreenSize(index);\n        bool isLandscape = m_project.isLandscapeFrame();\n        m_project.setFrameSize(CCSize(size.width, size.height));\n        if (isLandscape)\n        {\n            m_project.changeFrameOrientationToLandscape();\n        }\n        else\n        {\n            m_project.changeFrameOrientationToPortait();\n        }\n        m_project.setFrameScale(1.0f);\n        relaunch();\n    }\n}\n\nvoid App::onViewChangeOrientation(int viewMenuID)\n{\n    bool isLandscape = m_project.isLandscapeFrame();\n    bool isNeedRelaunch = false;\n    if (viewMenuID == ID_VIEW_PORTRAIT && isLandscape)\n    {\n        m_project.changeFrameOrientationToPortait();\n        isNeedRelaunch = true;\n    }\n    else if (viewMenuID == ID_VIEW_LANDSCAPE && !isLandscape)\n    {\n        m_project.changeFrameOrientationToLandscape();\n        isNeedRelaunch = true;\n    }\n\n    if (isNeedRelaunch) relaunch();\n}\n\nvoid App::onViewChangeZoom(int scaleMode)\n{\n    float scale = 1.0f;\n    if (scaleMode == ID_VIEW_ZOOM_OUT)\n    {\n        scale = 0.5f;\n    }\n\n    m_project.setFrameScale(scale);\n    CCEGLView::sharedOpenGLView()->setFrameZoomFactor(scale);\n    CCEGLView::sharedOpenGLView()->resize(m_project.getFrameSize().width * scale,\n        m_project.getFrameSize().height * scale);\n    updateMenu();\n}\n\n// windows callback\nLRESULT App::WindowProc(UINT message, WPARAM wParam, LPARAM lParam, BOOL* pProcessed)\n{\n    int wmId, wmEvent;\n    App *host = App::sharedInstance();\n    HWND hwnd = host->getWindowHandle();\n\n    switch (message)\n    {\n    case WM_COMMAND:\n        wmId    = LOWORD(wParam);\n        wmEvent = HIWORD(wParam);\n\n        switch (wmId)\n        {\n        case ID_FILE_RELAUNCH:\n            host->onFileRelaunch();\n            break;\n\n        case ID_FILE_EXIT:\n            host->onFileExit();\n            break;\n\n        case ID_VIEW_PORTRAIT:\n        case ID_VIEW_LANDSCAPE:\n            host->onViewChangeOrientation(wmId);\n            break;\n\n        case ID_VIEW_RESET_ZOOM:\n        case ID_VIEW_ZOOM_OUT:\n            host->onViewChangeZoom(wmId);\n            break;\n\n        default:\n            if (wmId >= ID_VIEW_SIZE && wmId <= ID_VIEW_SIZE + SimulatorConfig::sharedDefaults()->getScreenSizeCount() - 1)\n            {\n                host->onViewChangeFrameSize(wmId);\n                break;\n            }\n\n            return 0;\n        }\n        break;\n\n    case WM_KEYDOWN:\n        if (wParam == VK_F5)\n        {\n            host->onFileRelaunch();\n        }\n        break;\n\n    case WM_COPYDATA:\n        {\n            PCOPYDATASTRUCT pMyCDS = (PCOPYDATASTRUCT) lParam;\n            if (pMyCDS->dwData == CCLOG_STRING)\n            {\n                const char *szBuf = (const char*)(pMyCDS->lpData);\n                sharedInstance()->writeDebugLog(szBuf);\n                break;\n            }\n        }\n\n    default:\n        return 0;\n    }\n\n    *pProcessed = TRUE;\n    return 0;\n}\n"
  },
  {
    "path": "源代码/2.2.5/mir9/proj.win32/app.h",
    "content": "\n#pragma once\n\n#include \"resource.h\"\n\n// C RunTime Header Files\n#include \"CCStdC.h\"\n\n#include <string>\n\n#include \"cocos2d.h\"\n#include \"AppDelegate.h\"\n#include \"ProjectConfig/SimulatorConfig.h\"\n\nusing namespace std;\nusing namespace cocos2d;\n\nclass CC_DLL App : public CCObject\n{\npublic:\n    static int createAndRun(void);\n\n    AppDelegate *getApp(void) {\n        return m_app;\n    }\n\n    HWND getWindowHandle(void) {\n        return m_hwnd;\n    }\n\nprivate:\n    static App *s_sharedInstance;\n    static App *sharedInstance(void);\n    static void purgeSharedInstance(void);\n\n    App(void);\n\n    AppDelegate *m_app;\n    ProjectConfig m_project;\n\n    HWND m_hwnd;\n    BOOL m_exit;\n    FILE *m_writeDebugLogFile;\n\n    int run(void);\n    void loadProjectConfig(void);\n    void createViewMenu(void);\n    void updateMenu(void);\n    void relaunch(void);\n\n    // debug log\n    void writeDebugLog(const char *log);\n\n    // menu callback\n    void onFileRelaunch(void);\n    void onFileExit(void);\n\n    void onViewChangeFrameSize(int viewMenuID);\n    void onViewChangeOrientation(int viewMenuID);\n    void onViewChangeZoom(int scaleMode);\n\n    // windows callback\n    static LRESULT WindowProc(UINT message, WPARAM wParam, LPARAM lParam, BOOL *pProcessed);\n};\n"
  },
  {
    "path": "源代码/2.2.5/mir9/proj.win32/mir9.sln",
    "content": "﻿\nMicrosoft Visual Studio Solution File, Format Version 12.00\n# Visual Studio 2012\nProject(\"{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}\") = \"mir9\", \"mir9.vcxproj\", \"{71666DE3-D772-41E9-8624-8881686C7AED}\"\n\tProjectSection(ProjectDependencies) = postProject\n\t\t{9E05AA4B-1A09-433C-B1DF-BCE6675EC0D5} = {9E05AA4B-1A09-433C-B1DF-BCE6675EC0D5}\n\tEndProjectSection\nEndProject\nProject(\"{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}\") = \"cocos2dx_2012\", \"%QUICK_COCOS2DX_ROOT%\\lib\\proj.win32\\cocos2dx_2012.vcxproj\", \"{9E05AA4B-1A09-433C-B1DF-BCE6675EC0D5}\"\nEndProject\nGlobal\n\tGlobalSection(SolutionConfigurationPlatforms) = preSolution\n\t\tDebug|Win32 = Debug|Win32\n\t\tRelease|Win32 = Release|Win32\n\tEndGlobalSection\n\tGlobalSection(ProjectConfigurationPlatforms) = postSolution\n\t\t{71666DE3-D772-41E9-8624-8881686C7AED}.Debug|Win32.ActiveCfg = Debug|Win32\n\t\t{71666DE3-D772-41E9-8624-8881686C7AED}.Debug|Win32.Build.0 = Debug|Win32\n\t\t{71666DE3-D772-41E9-8624-8881686C7AED}.Release|Win32.ActiveCfg = Release|Win32\n\t\t{71666DE3-D772-41E9-8624-8881686C7AED}.Release|Win32.Build.0 = Release|Win32\n\t\t{9E05AA4B-1A09-433C-B1DF-BCE6675EC0D5}.Debug|Win32.ActiveCfg = Debug|Win32\n\t\t{9E05AA4B-1A09-433C-B1DF-BCE6675EC0D5}.Debug|Win32.Build.0 = Debug|Win32\n\t\t{9E05AA4B-1A09-433C-B1DF-BCE6675EC0D5}.Release|Win32.ActiveCfg = Release|Win32\n\t\t{9E05AA4B-1A09-433C-B1DF-BCE6675EC0D5}.Release|Win32.Build.0 = Release|Win32\n\tEndGlobalSection\n\tGlobalSection(SolutionProperties) = preSolution\n\t\tHideSolutionNode = FALSE\n\tEndGlobalSection\nEndGlobal\n"
  },
  {
    "path": "源代码/2.2.5/mir9/proj.win32/mir9.vcxproj",
    "content": "﻿<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<Project DefaultTargets=\"Build\" ToolsVersion=\"4.0\" xmlns=\"http://schemas.microsoft.com/developer/msbuild/2003\">\n  <ItemGroup Label=\"ProjectConfigurations\">\n    <ProjectConfiguration Include=\"Debug|Win32\">\n      <Configuration>Debug</Configuration>\n      <Platform>Win32</Platform>\n    </ProjectConfiguration>\n    <ProjectConfiguration Include=\"Release|Win32\">\n      <Configuration>Release</Configuration>\n      <Platform>Win32</Platform>\n    </ProjectConfiguration>\n  </ItemGroup>\n  <ItemGroup>\n    <ClCompile Include=\"..\\sources\\AppDelegate.cpp\" />\n    <ClCompile Include=\"app.cpp\" />\n    <ClCompile Include=\"stdafx.cpp\" />\n  </ItemGroup>\n  <ItemGroup>\n    <ClInclude Include=\"..\\sources\\AppDelegate.h\" />\n    <ClInclude Include=\"app.h\" />\n    <ClInclude Include=\"resource.h\" />\n    <ClInclude Include=\"stdafx.h\" />\n    <ClInclude Include=\"targetver.h\" />\n  </ItemGroup>\n  <ItemGroup>\n    <Image Include=\"app.ico\" />\n  </ItemGroup>\n  <ItemGroup>\n    <ResourceCompile Include=\"app.rc\" />\n  </ItemGroup>\n  <PropertyGroup Label=\"Globals\">\n    <ProjectGuid>{71666DE3-D772-41E9-8624-8881686C7AED}</ProjectGuid>\n    <Keyword>Win32Proj</Keyword>\n    <RootNamespace>mir9</RootNamespace>\n  </PropertyGroup>\n  <Import Project=\"$(VCTargetsPath)\\Microsoft.Cpp.Default.props\" />\n  <PropertyGroup Condition=\"'$(Configuration)|$(Platform)'=='Debug|Win32'\" Label=\"Configuration\">\n    <ConfigurationType>Application</ConfigurationType>\n    <UseDebugLibraries>true</UseDebugLibraries>\n    <PlatformToolset>v110_xp</PlatformToolset>\n    <CharacterSet>Unicode</CharacterSet>\n    <UseOfAtl>false</UseOfAtl>\n    <UseOfMfc>false</UseOfMfc>\n  </PropertyGroup>\n  <PropertyGroup Condition=\"'$(Configuration)|$(Platform)'=='Release|Win32'\" Label=\"Configuration\">\n    <ConfigurationType>Application</ConfigurationType>\n    <UseDebugLibraries>false</UseDebugLibraries>\n    <PlatformToolset>v110_xp</PlatformToolset>\n    <WholeProgramOptimization>true</WholeProgramOptimization>\n    <CharacterSet>Unicode</CharacterSet>\n  </PropertyGroup>\n  <Import Project=\"$(VCTargetsPath)\\Microsoft.Cpp.props\" />\n  <ImportGroup Label=\"ExtensionSettings\">\n  </ImportGroup>\n  <ImportGroup Label=\"PropertySheets\" Condition=\"'$(Configuration)|$(Platform)'=='Debug|Win32'\">\n    <Import Project=\"$(UserRootDir)\\Microsoft.Cpp.$(Platform).user.props\" Condition=\"exists('$(UserRootDir)\\Microsoft.Cpp.$(Platform).user.props')\" Label=\"LocalAppDataPlatform\" />\n  </ImportGroup>\n  <ImportGroup Label=\"PropertySheets\" Condition=\"'$(Configuration)|$(Platform)'=='Release|Win32'\">\n    <Import Project=\"$(UserRootDir)\\Microsoft.Cpp.$(Platform).user.props\" Condition=\"exists('$(UserRootDir)\\Microsoft.Cpp.$(Platform).user.props')\" Label=\"LocalAppDataPlatform\" />\n  </ImportGroup>\n  <PropertyGroup Label=\"UserMacros\" />\n  <PropertyGroup Condition=\"'$(Configuration)|$(Platform)'=='Debug|Win32'\">\n    <LinkIncremental>true</LinkIncremental>\n    <TargetName>mir9</TargetName>\n  </PropertyGroup>\n  <PropertyGroup Condition=\"'$(Configuration)|$(Platform)'=='Release|Win32'\">\n    <LinkIncremental>false</LinkIncremental>\n    <TargetName>mir9</TargetName>\n  </PropertyGroup>\n  <ItemDefinitionGroup Condition=\"'$(Configuration)|$(Platform)'=='Debug|Win32'\">\n    <ClCompile>\n      <PrecompiledHeader>\n      </PrecompiledHeader>\n      <WarningLevel>Level3</WarningLevel>\n      <Optimization>Disabled</Optimization>\n      <PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;COCOS2D_DEBUG=1;_CRT_SECURE_NO_WARNINGS;_SCL_SECURE_NO_WARNINGS;CC_LUA_ENGINE_ENABLED=1;%(PreprocessorDefinitions)</PreprocessorDefinitions>\n      <AdditionalIncludeDirectories>$(QUICK_COCOS2DX_ROOT)\\lib\\cocos2d-x\\cocos2dx;$(QUICK_COCOS2DX_ROOT)\\lib\\cocos2d-x\\cocos2dx\\include;$(QUICK_COCOS2DX_ROOT)\\lib\\cocos2d-x\\cocos2dx\\kazmath\\include;$(QUICK_COCOS2DX_ROOT)\\lib\\cocos2d-x\\cocos2dx\\support;$(QUICK_COCOS2DX_ROOT)\\lib\\cocos2d-x\\cocos2dx\\support\\tinyxml2;$(QUICK_COCOS2DX_ROOT)\\lib\\cocos2d-x\\cocos2dx\\platform;$(QUICK_COCOS2DX_ROOT)\\lib\\cocos2d-x\\cocos2dx\\platform\\win32;$(QUICK_COCOS2DX_ROOT)\\lib\\cocos2d-x\\cocos2dx\\platform\\third_party\\win32;$(QUICK_COCOS2DX_ROOT)\\lib\\cocos2d-x\\cocos2dx\\platform\\third_party\\win32\\curl;$(QUICK_COCOS2DX_ROOT)\\lib\\cocos2d-x\\cocos2dx\\platform\\third_party\\win32\\iconv;$(QUICK_COCOS2DX_ROOT)\\lib\\cocos2d-x\\cocos2dx\\platform\\third_party\\win32\\libjpeg;$(QUICK_COCOS2DX_ROOT)\\lib\\cocos2d-x\\cocos2dx\\platform\\third_party\\win32\\libpng;$(QUICK_COCOS2DX_ROOT)\\lib\\cocos2d-x\\cocos2dx\\platform\\third_party\\win32\\libtiff;$(QUICK_COCOS2DX_ROOT)\\lib\\cocos2d-x\\cocos2dx\\platform\\third_party\\win32\\libwebp;$(QUICK_COCOS2DX_ROOT)\\lib\\cocos2d-x\\cocos2dx\\platform\\third_party\\win32\\OGLES;$(QUICK_COCOS2DX_ROOT)\\lib\\cocos2d-x\\cocos2dx\\platform\\third_party\\win32\\pthread;$(QUICK_COCOS2DX_ROOT)\\lib\\cocos2d-x\\cocos2dx\\platform\\third_party\\win32\\zlib;$(QUICK_COCOS2DX_ROOT)\\lib\\cocos2d-x\\CocosDenshion\\include;$(QUICK_COCOS2DX_ROOT)\\lib\\cocos2d-x\\CocosDenshion\\win32;$(QUICK_COCOS2DX_ROOT)\\lib\\cocos2d-x\\scripting\\lua\\cocos2dx_support;$(QUICK_COCOS2DX_ROOT)\\lib\\cocos2d-x\\scripting\\lua\\tolua;$(QUICK_COCOS2DX_ROOT)\\lib\\cocos2d-x\\scripting\\lua\\luajit\\include;$(QUICK_COCOS2DX_ROOT)\\lib\\cocos2d-x\\scripting\\lua\\lua_extensions;$(QUICK_COCOS2DX_ROOT)\\lib\\cocos2d-x\\scripting\\lua\\lua_extensions\\cjson;$(QUICK_COCOS2DX_ROOT)\\lib\\cocos2d-x\\scripting\\lua\\lua_extensions\\filesystem;$(QUICK_COCOS2DX_ROOT)\\lib\\cocos2d-x\\scripting\\lua\\lua_extensions\\lpack;$(QUICK_COCOS2DX_ROOT)\\lib\\cocos2d-x\\scripting\\lua\\lua_extensions\\socket;$(QUICK_COCOS2DX_ROOT)\\lib\\cocos2d-x\\scripting\\lua\\lua_extensions\\zlib;$(QUICK_COCOS2DX_ROOT)\\lib\\cocos2d-x\\extensions;$(QUICK_COCOS2DX_ROOT)\\lib\\cocos2d-x\\extensions\\GUI\\CCControlExtension;$(QUICK_COCOS2DX_ROOT)\\lib\\cocos2d-x\\extensions\\GUI\\CCEditBox;$(QUICK_COCOS2DX_ROOT)\\lib\\cocos2d-x\\extensions\\GUI\\CCScrollView;$(QUICK_COCOS2DX_ROOT)\\lib\\cocos2d-x\\extensions\\AssetsManager;$(QUICK_COCOS2DX_ROOT)\\lib\\cocos2d-x\\extensions\\CCBReader;$(QUICK_COCOS2DX_ROOT)\\lib\\cocos2d-x\\extensions\\network;$(QUICK_COCOS2DX_ROOT)\\lib\\cocos2d-x\\extensions\\CocoStudio\\Action;$(QUICK_COCOS2DX_ROOT)\\lib\\cocos2d-x\\extensions\\CocoStudio\\Armature;$(QUICK_COCOS2DX_ROOT)\\lib\\cocos2d-x\\extensions\\CocoStudio\\Armature\\animation;$(QUICK_COCOS2DX_ROOT)\\lib\\cocos2d-x\\extensions\\CocoStudio\\Armature\\datas;$(QUICK_COCOS2DX_ROOT)\\lib\\cocos2d-x\\extensions\\CocoStudio\\Armature\\display;$(QUICK_COCOS2DX_ROOT)\\lib\\cocos2d-x\\extensions\\CocoStudio\\Armature\\external_tool;$(QUICK_COCOS2DX_ROOT)\\lib\\cocos2d-x\\extensions\\CocoStudio\\Armature\\utils;$(QUICK_COCOS2DX_ROOT)\\lib\\cocos2d-x\\extensions\\CocoStudio\\Components;$(QUICK_COCOS2DX_ROOT)\\lib\\cocos2d-x\\extensions\\CocoStudio\\GUI;$(QUICK_COCOS2DX_ROOT)\\lib\\cocos2d-x\\extensions\\CocoStudio\\Json;$(QUICK_COCOS2DX_ROOT)\\lib\\cocos2d-x\\extensions\\CocoStudio\\Reader;$(QUICK_COCOS2DX_ROOT)\\lib\\cocos2d-x\\external\\libwebsockets\\win32\\include;$(QUICK_COCOS2DX_ROOT)\\lib\\cocos2d-x\\external\\libwebsockets\\win32\\include\\win32helpers;$(QUICK_COCOS2DX_ROOT)\\lib\\cocos2d-x\\external\\chipmunk\\include;$(QUICK_COCOS2DX_ROOT)\\lib\\cocos2d-x\\external\\chipmunk\\luabinding;$(QUICK_COCOS2DX_ROOT)\\lib\\cocos2d-x\\external\\chipmunk\\cocos2dx_support;$(QUICK_COCOS2DX_ROOT)\\lib\\cocos2d-x\\external\\luaproxy;$(QUICK_COCOS2DX_ROOT)\\lib\\cocos2d-x\\external\\luaproxy\\tolua;$(QUICK_COCOS2DX_ROOT)\\lib\\cocos2d-x\\external\\luaproxy\\ui;$(QUICK_COCOS2DX_ROOT)\\lib\\cocos2d-x\\external\\extra;$(QUICK_COCOS2DX_ROOT)\\lib\\cocos2d-x\\external\\extra\\crypto;$(QUICK_COCOS2DX_ROOT)\\lib\\cocos2d-x\\external\\extra\\luabinding;$(QUICK_COCOS2DX_ROOT)\\lib\\cocos2d-x\\external\\extra\\native;$(QUICK_COCOS2DX_ROOT)\\lib\\cocos2d-x\\external\\extra\\network;$(ProjectDir)..\\sources;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\n      <DisableSpecificWarnings>4068;4267;4251;4244;%(DisableSpecificWarnings)</DisableSpecificWarnings>\n      <MultiProcessorCompilation>true</MultiProcessorCompilation>\n      <MinimalRebuild>false</MinimalRebuild>\n      <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>\n    </ClCompile>\n    <Link>\n      <SubSystem>Windows</SubSystem>\n      <GenerateDebugInformation>true</GenerateDebugInformation>\n      <AdditionalDependencies>cocos2dx.lib;opengl32.lib;ws2_32.lib;wsock32.lib;pthreadVCE2.lib;lua51.lib;winmm.lib;glew32.lib;libcurl_imp.lib;libiconv.lib;libjpeg.lib;libpng.lib;libtiff.lib;libzlib.lib;libwebp.lib;websockets.lib;%(AdditionalDependencies)</AdditionalDependencies>\n      <AdditionalLibraryDirectories>.\\$(Configuration);$(QUICK_COCOS2DX_ROOT)\\lib\\luajit2\\proj.win32;$(QUICK_COCOS2DX_ROOT)\\lib\\cocos2d-x\\cocos2dx\\platform\\third_party\\win32\\libraries;$(QUICK_COCOS2DX_ROOT)\\lib\\cocos2d-x\\external\\libwebsockets\\win32\\lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\n    </Link>\n    <PostBuildEvent>\n      <Command>\n      </Command>\n    </PostBuildEvent>\n  </ItemDefinitionGroup>\n  <ItemDefinitionGroup Condition=\"'$(Configuration)|$(Platform)'=='Release|Win32'\">\n    <ClCompile>\n      <WarningLevel>Level3</WarningLevel>\n      <PrecompiledHeader>\n      </PrecompiledHeader>\n      <Optimization>MaxSpeed</Optimization>\n      <FunctionLevelLinking>true</FunctionLevelLinking>\n      <IntrinsicFunctions>true</IntrinsicFunctions>\n      <PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;COCOS2D_DEBUG=1;_CRT_SECURE_NO_WARNINGS;_SCL_SECURE_NO_WARNINGS;CC_LUA_ENGINE_ENABLED=1;%(PreprocessorDefinitions)</PreprocessorDefinitions>\n      <AdditionalIncludeDirectories>$(QUICK_COCOS2DX_ROOT)\\lib\\cocos2d-x\\cocos2dx;$(QUICK_COCOS2DX_ROOT)\\lib\\cocos2d-x\\cocos2dx\\include;$(QUICK_COCOS2DX_ROOT)\\lib\\cocos2d-x\\cocos2dx\\kazmath\\include;$(QUICK_COCOS2DX_ROOT)\\lib\\cocos2d-x\\cocos2dx\\support;$(QUICK_COCOS2DX_ROOT)\\lib\\cocos2d-x\\cocos2dx\\support\\tinyxml2;$(QUICK_COCOS2DX_ROOT)\\lib\\cocos2d-x\\cocos2dx\\platform;$(QUICK_COCOS2DX_ROOT)\\lib\\cocos2d-x\\cocos2dx\\platform\\win32;$(QUICK_COCOS2DX_ROOT)\\lib\\cocos2d-x\\cocos2dx\\platform\\third_party\\win32;$(QUICK_COCOS2DX_ROOT)\\lib\\cocos2d-x\\cocos2dx\\platform\\third_party\\win32\\curl;$(QUICK_COCOS2DX_ROOT)\\lib\\cocos2d-x\\cocos2dx\\platform\\third_party\\win32\\iconv;$(QUICK_COCOS2DX_ROOT)\\lib\\cocos2d-x\\cocos2dx\\platform\\third_party\\win32\\libjpeg;$(QUICK_COCOS2DX_ROOT)\\lib\\cocos2d-x\\cocos2dx\\platform\\third_party\\win32\\libpng;$(QUICK_COCOS2DX_ROOT)\\lib\\cocos2d-x\\cocos2dx\\platform\\third_party\\win32\\libtiff;$(QUICK_COCOS2DX_ROOT)\\lib\\cocos2d-x\\cocos2dx\\platform\\third_party\\win32\\libwebp;$(QUICK_COCOS2DX_ROOT)\\lib\\cocos2d-x\\cocos2dx\\platform\\third_party\\win32\\OGLES;$(QUICK_COCOS2DX_ROOT)\\lib\\cocos2d-x\\cocos2dx\\platform\\third_party\\win32\\pthread;$(QUICK_COCOS2DX_ROOT)\\lib\\cocos2d-x\\cocos2dx\\platform\\third_party\\win32\\zlib;$(QUICK_COCOS2DX_ROOT)\\lib\\cocos2d-x\\CocosDenshion\\include;$(QUICK_COCOS2DX_ROOT)\\lib\\cocos2d-x\\CocosDenshion\\win32;$(QUICK_COCOS2DX_ROOT)\\lib\\cocos2d-x\\scripting\\lua\\cocos2dx_support;$(QUICK_COCOS2DX_ROOT)\\lib\\cocos2d-x\\scripting\\lua\\tolua;$(QUICK_COCOS2DX_ROOT)\\lib\\cocos2d-x\\scripting\\lua\\luajit\\include;$(QUICK_COCOS2DX_ROOT)\\lib\\cocos2d-x\\scripting\\lua\\lua_extensions;$(QUICK_COCOS2DX_ROOT)\\lib\\cocos2d-x\\scripting\\lua\\lua_extensions\\cjson;$(QUICK_COCOS2DX_ROOT)\\lib\\cocos2d-x\\scripting\\lua\\lua_extensions\\filesystem;$(QUICK_COCOS2DX_ROOT)\\lib\\cocos2d-x\\scripting\\lua\\lua_extensions\\lpack;$(QUICK_COCOS2DX_ROOT)\\lib\\cocos2d-x\\scripting\\lua\\lua_extensions\\socket;$(QUICK_COCOS2DX_ROOT)\\lib\\cocos2d-x\\scripting\\lua\\lua_extensions\\zlib;$(QUICK_COCOS2DX_ROOT)\\lib\\cocos2d-x\\extensions;$(QUICK_COCOS2DX_ROOT)\\lib\\cocos2d-x\\extensions\\GUI\\CCControlExtension;$(QUICK_COCOS2DX_ROOT)\\lib\\cocos2d-x\\extensions\\GUI\\CCEditBox;$(QUICK_COCOS2DX_ROOT)\\lib\\cocos2d-x\\extensions\\GUI\\CCScrollView;$(QUICK_COCOS2DX_ROOT)\\lib\\cocos2d-x\\extensions\\AssetsManager;$(QUICK_COCOS2DX_ROOT)\\lib\\cocos2d-x\\extensions\\CCBReader;$(QUICK_COCOS2DX_ROOT)\\lib\\cocos2d-x\\extensions\\network;$(QUICK_COCOS2DX_ROOT)\\lib\\cocos2d-x\\extensions\\CocoStudio\\Action;$(QUICK_COCOS2DX_ROOT)\\lib\\cocos2d-x\\extensions\\CocoStudio\\Armature;$(QUICK_COCOS2DX_ROOT)\\lib\\cocos2d-x\\extensions\\CocoStudio\\Armature\\animation;$(QUICK_COCOS2DX_ROOT)\\lib\\cocos2d-x\\extensions\\CocoStudio\\Armature\\datas;$(QUICK_COCOS2DX_ROOT)\\lib\\cocos2d-x\\extensions\\CocoStudio\\Armature\\display;$(QUICK_COCOS2DX_ROOT)\\lib\\cocos2d-x\\extensions\\CocoStudio\\Armature\\external_tool;$(QUICK_COCOS2DX_ROOT)\\lib\\cocos2d-x\\extensions\\CocoStudio\\Armature\\utils;$(QUICK_COCOS2DX_ROOT)\\lib\\cocos2d-x\\extensions\\CocoStudio\\Components;$(QUICK_COCOS2DX_ROOT)\\lib\\cocos2d-x\\extensions\\CocoStudio\\GUI;$(QUICK_COCOS2DX_ROOT)\\lib\\cocos2d-x\\extensions\\CocoStudio\\Json;$(QUICK_COCOS2DX_ROOT)\\lib\\cocos2d-x\\extensions\\CocoStudio\\Reader;$(QUICK_COCOS2DX_ROOT)\\lib\\cocos2d-x\\external\\libwebsockets\\win32\\include;$(QUICK_COCOS2DX_ROOT)\\lib\\cocos2d-x\\external\\libwebsockets\\win32\\include\\win32helpers;$(QUICK_COCOS2DX_ROOT)\\lib\\cocos2d-x\\external\\chipmunk\\include;$(QUICK_COCOS2DX_ROOT)\\lib\\cocos2d-x\\external\\chipmunk\\luabinding;$(QUICK_COCOS2DX_ROOT)\\lib\\cocos2d-x\\external\\chipmunk\\cocos2dx_support;$(QUICK_COCOS2DX_ROOT)\\lib\\cocos2d-x\\external\\luaproxy;$(QUICK_COCOS2DX_ROOT)\\lib\\cocos2d-x\\external\\luaproxy\\tolua;$(QUICK_COCOS2DX_ROOT)\\lib\\cocos2d-x\\external\\luaproxy\\ui;$(QUICK_COCOS2DX_ROOT)\\lib\\cocos2d-x\\external\\extra;$(QUICK_COCOS2DX_ROOT)\\lib\\cocos2d-x\\external\\extra\\crypto;$(QUICK_COCOS2DX_ROOT)\\lib\\cocos2d-x\\external\\extra\\luabinding;$(QUICK_COCOS2DX_ROOT)\\lib\\cocos2d-x\\external\\extra\\native;$(QUICK_COCOS2DX_ROOT)\\lib\\cocos2d-x\\external\\extra\\network;$(ProjectDir)..\\sources;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\n      <DisableSpecificWarnings>4068;4267;4251;4244;%(DisableSpecificWarnings)</DisableSpecificWarnings>\n      <MultiProcessorCompilation>true</MultiProcessorCompilation>\n    </ClCompile>\n    <Link>\n      <SubSystem>Windows</SubSystem>\n      <GenerateDebugInformation>true</GenerateDebugInformation>\n      <EnableCOMDATFolding>true</EnableCOMDATFolding>\n      <OptimizeReferences>true</OptimizeReferences>\n      <AdditionalDependencies>cocos2dx.lib;opengl32.lib;ws2_32.lib;wsock32.lib;pthreadVCE2.lib;lua51.lib;winmm.lib;glew32.lib;libcurl_imp.lib;libiconv.lib;libjpeg.lib;libpng.lib;libtiff.lib;libzlib.lib;libwebp.lib;websockets.lib;%(AdditionalDependencies)</AdditionalDependencies>\n      <AdditionalLibraryDirectories>.\\$(Configuration);$(QUICK_COCOS2DX_ROOT)\\lib\\luajit2\\proj.win32;$(QUICK_COCOS2DX_ROOT)\\lib\\cocos2d-x\\cocos2dx\\platform\\third_party\\win32\\libraries;$(QUICK_COCOS2DX_ROOT)\\lib\\cocos2d-x\\external\\libwebsockets\\win32\\lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\n    </Link>\n  </ItemDefinitionGroup>\n  <Import Project=\"$(VCTargetsPath)\\Microsoft.Cpp.targets\" />\n  <ImportGroup Label=\"ExtensionTargets\">\n  </ImportGroup>\n</Project>"
  },
  {
    "path": "源代码/2.2.5/mir9/proj.win32/mir9.vcxproj.filters",
    "content": "﻿<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<Project ToolsVersion=\"4.0\" xmlns=\"http://schemas.microsoft.com/developer/msbuild/2003\">\n  <ItemGroup>\n    <Filter Include=\"sources\">\n      <UniqueIdentifier>{da35f943-2f62-4dbf-bd58-91a522b39592}</UniqueIdentifier>\n    </Filter>\n    <Filter Include=\"win32\">\n      <UniqueIdentifier>{54d36d2c-b373-4c65-962b-76ff1fedc28b}</UniqueIdentifier>\n    </Filter>\n  </ItemGroup>\n  <ItemGroup>\n    <ClCompile Include=\"stdafx.cpp\">\n      <Filter>win32</Filter>\n    </ClCompile>\n    <ClCompile Include=\"..\\sources\\AppDelegate.cpp\">\n      <Filter>sources</Filter>\n    </ClCompile>\n    <ClCompile Include=\"app.cpp\">\n      <Filter>win32</Filter>\n    </ClCompile>\n  </ItemGroup>\n  <ItemGroup>\n    <ClInclude Include=\"resource.h\">\n      <Filter>win32</Filter>\n    </ClInclude>\n    <ClInclude Include=\"stdafx.h\">\n      <Filter>win32</Filter>\n    </ClInclude>\n    <ClInclude Include=\"targetver.h\">\n      <Filter>win32</Filter>\n    </ClInclude>\n    <ClInclude Include=\"..\\sources\\AppDelegate.h\">\n      <Filter>sources</Filter>\n    </ClInclude>\n    <ClInclude Include=\"app.h\">\n      <Filter>win32</Filter>\n    </ClInclude>\n  </ItemGroup>\n  <ItemGroup>\n    <Image Include=\"app.ico\">\n      <Filter>win32</Filter>\n    </Image>\n  </ItemGroup>\n  <ItemGroup>\n    <ResourceCompile Include=\"app.rc\">\n      <Filter>win32</Filter>\n    </ResourceCompile>\n  </ItemGroup>\n</Project>\n"
  },
  {
    "path": "源代码/2.2.5/mir9/proj.win32/stdafx.cpp",
    "content": "\n#include \"stdafx.h\"\n"
  },
  {
    "path": "源代码/2.2.5/mir9/proj.win32/stdafx.h",
    "content": "\n#pragma once\n\n#define WIN32_LEAN_AND_MEAN             // Exclude rarely-used stuff from Windows headers\n\n// Windows Header Files\n#include <windows.h>\n\n// C RunTime Header Files\n#include <stdlib.h>\n#include <malloc.h>\n#include <memory.h>\n#include <tchar.h>\n"
  },
  {
    "path": "源代码/2.2.5/mir9/proj.win32/targetver.h",
    "content": "#pragma once\n\n#include <SDKDDKVer.h>\n"
  },
  {
    "path": "源代码/2.2.5/mir9/run-mac.sh",
    "content": "#!/bin/bash\nDIR=\"$( cd \"$( dirname \"${BASH_SOURCE[0]}\" )\" && pwd )\"\n\nBIN=\"$DIR/proj.mac/bin/mir9.app/Contents/MacOS/mir9\"\nif [ ! -f $BIN ]; then\n    echo \"PLEASE BUILD proj.mac/mir9.xcodeproj FIRST\"\n    exit\nfi\n\nARG=\"-relaunch-off -quick $QUICK_COCOS2DX_ROOT -workdir $DIR\"\nSIZE=\"-portrait\"\nCMD=\"$BIN $ARG $SIZE\"\n\nuntil $CMD; do\n    echo \"\"\n    echo \"------------------------------------------------------\"\n    echo \"\"\n    echo \"\"\n    echo \"\"\ndone\n"
  },
  {
    "path": "源代码/2.2.5/mir9/run-win.bat",
    "content": "@echo off\nE:\\Demo\\cocos2d-x\\quick-cocos2d-x-2.2.5\\player\\win\\player.exe -workdir E:\\Demo\\cocos2d-x\\quick-cocos2d-x-2.2.5\\projects\\mir9 -file scripts\\main.lua -size 960x640"
  },
  {
    "path": "源代码/2.2.5/mir9/scripts/app/GameSocket.lua",
    "content": "local PlayerController = require(\"app.figure.PlayerController\")\n\nlocal GameSocket = class(\"GameSocket\")\n\nfunction GameSocket.sendRoleCreate(node, roleID, nickName)\n    local _playerController = PlayerController.sharePlayerController()\n    _playerController.m_playerNumber = roleID\n    _playerController.m_weaponsNumber = 1000\n    _playerController.m_playerName = nickName\n    node:joinGame()\nend\n\nfunction GameSocket.attackGroup(one, two, skillNumber)\n    if ((not one) or (type(two) ~= \"table\") or (#two <= 0)) then\n        return\n    end\n    \n    local hurt = one:getTheAttack()\n    if (skillNumber == 2005) then\n        hurt = hurt * 15\n    end\n    local r = math.random()\n    \n    hurt = hurt + math.floor((hurt/10) * r) - hurt/20\n    \n    for i = 1, #two do\n        if (two[i]:getBlood() <= 0) then\n        \n        else\n            local blood = two[i]:getBlood() - hurt\n            blood = math.max(blood, 0)\n            two[i]:addAgainstMe(one, blood)\n        end\n    end\nend\n\nfunction GameSocket.attack(one, two, skillNumber)\n    if (not one or not two) then\n        return\n    end\n    \n    if (two:getBlood() <= 0) then\n        return\n    end\n    \n    local hurt = one:getTheAttack()\n    if (skillNumber == 1020) then\n        hurt = hurt * 1.5\n    end\n    \n    hurt = hurt + (math.floor((hurt/10) * math.random()) - hurt/20)\n    \n    local blood = two:getBlood() - hurt\n    \n    blood = math.max(blood, 0)\n    \n    two:addAgainstMe(one, blood)\nend\n\nreturn GameSocket"
  },
  {
    "path": "源代码/2.2.5/mir9/scripts/app/MyApp.lua",
    "content": "\nrequire(\"config\")\nrequire(\"framework.init\")\n\nlocal MyApp = class(\"MyApp\", cc.mvc.AppBase)\n\nfunction MyApp:ctor()\n    MyApp.super.ctor(self)\nend\n\nfunction MyApp:run()\n    math.randomseed(os.clock()*1000)\n    CCFileUtils:sharedFileUtils():addSearchPath(\"res/\")\n    self:enterScene(\"LoginScene\")\nend\n\nreturn MyApp\n"
  },
  {
    "path": "源代码/2.2.5/mir9/scripts/app/figure/Enemy.lua",
    "content": "local scheduler = require(\"framework.scheduler\")\nlocal MapPoint = require(\"app.map.MapPoint\")\nlocal Monomer = require(\"app.figure.Monomer\")\nlocal FlutteringFairy = require(\"app.game_ui.FlutteringFairy\")\n\n-- 敌人类\nlocal Enemy = class(\"Enemy\", Monomer)\n\nfunction Enemy:ctor(enemyID, roleNumber, weaponNumber)\n    Enemy.super.ctor(self)\n    \n    self.m_enemyID = enemyID\n    self.m_denPos = MapPoint.new(0, 0)\n    self.m_isActive = true\n    \n    self:initWithEnemy(roleNumber, weaponNumber)\nend\n\nfunction Enemy:initWithEnemy(roleNumber, weaponNumber)\n    self.m_fReactionInterval = 1.0\n    \n    self:setVisualRange(10)\n    self:setFigure(TexturePathType.Monster, roleNumber)\n    self:setWeapon(weaponNumber)\n    \n    return true\nend\n\nfunction Enemy:onEnter()\n    Enemy.super.onEnter(self)\n    local mpoint = MapPoint.new(cc.p(self:getPosition()))\n    g_mainScene:insterMapPoint(self, mpoint)\nend\n\nfunction Enemy:onExit()\n    Enemy.super.onExit(self)\n    self:stopAllActions()\n    self:killTimer_Patrol()\nend\n\n-- 启动计时器\nfunction Enemy:setTimer_Patrol(fTime)\n    self:killTimer_Patrol()\n    self.hPatrol = scheduler.scheduleGlobal(handler(self, self.patrol), fTime)\nend\n\n-- 关闭计时器\nfunction Enemy:killTimer_Patrol()\n    if (self.hPatrol) then\n        scheduler.unscheduleGlobal(self.hPatrol)\n        self.hPatrol = nil\n    end\nend\n\n-- 显示人物\nfunction Enemy:showFigure()\n    local point = cc.p(self:getPosition())\n    if (not g_mainScene:getCurrBgMap():getShowRect():containsPoint(point)) then\n        return\n    end\n\n    Enemy.super.showFigure(self)\nend\n\n-- 隐藏人物\nfunction Enemy:hideFigure()\n    local point = cc.p(self:getPosition())\n    if (g_mainScene:getCurrBgMap():getHideRect():containsPoint(point)) then\n        return\n    end\n    \n    Enemy.super.hideFigure(self)\nend\n\n-- 跑\nfunction Enemy:runBy(mpoint)\n    local relust = Enemy.super.runBy(self, mpoint)\n    \n    if (relust.fTime ~= 0) then\n        g_mainScene:insterMapPoint(self, relust.mpoint)\n    end\n    \n    return relust\nend\n\n-- 走\nfunction Enemy:walkBy(mpoint)\n    local relust = Enemy.super.walkBy(self, mpoint)\n    \n    if (relust.fTime ~= 0) then\n        g_mainScene:insterMapPoint(self, relust.mpoint)\n    end\n    \n    return relust\nend\n\n-- 去到指定点\nfunction Enemy:goTo(mpoint)\n    g_mainScene:insterMapPoint(self, mpoint)\n    \n    return Enemy.super.goTo(self, mpoint)\nend\n\nfunction Enemy:detectionOfEachOther()\n    Enemy.super.detectionOfEachOther(self)\n    self:detectionWhetherCounter()\nend\n\n-- 检测是否反击\nfunction Enemy:detectionWhetherCounter()\n    if (not self.m_attackMonomerMajor) then\n        self:setAttackMonomerMajor(self:getAgainstMeOfFirst())\n    end\n    \n    if (not self.m_attackMonomerMajor) then\n        self:patrol()\n    else\n        self:followAttackAndSetAttackMethods(self.m_attackMonomerMajor, self.m_attackSkillInfo.m_nNum)\n    end\nend\n\nfunction Enemy:followAttack()\n    self:killTimer_Patrol()\n    \n    Enemy.super.followAttack(self)\nend\n\nfunction Enemy:followTheTracks()\n    local mpoint = self.m_attackMonomerMajor:ownAttackPoint(self, self.m_attackSkillInfo.m_attackDistance)\n    if (mpoint:equalsObj(MapPoint.new(cc.p(0, 0)))) then\n        return\n    end\n    mpoint = MapPoint.sub(mpoint, MapPoint.new(cc.p(self:getPosition())))\n    local relust = self:walkBy(mpoint)\n    local fTime = self.m_fReactionInterval + relust.fTime\n    self:delayCallBack(fTime, handler(self, self.followAttack)):setTag(TAG_FOLLOWATTACK)\nend\n\n-- 超出可视范围\nfunction Enemy:beyondVisualRange()\n    self.m_attackMonomerMajor:removeAgainstMe(self)\n    self:patrol()\n    \n    Enemy.super.beyondVisualRange(self)\nend\n\n-- 隔一段时间走动一下\nfunction Enemy:patrol(fDelay)\n    self:killTimer_Patrol()\n    \n    if (self.m_isCanMoved == false) then\n        return\n    end\n    \n    local symbol = math.floor(2 * math.random())\n    local arcX = math.floor(10 * math.random())\n    local arcY = math.floor(10 * math.random())\n    local mpoint = MapPoint.new(self.m_denPos.x+arcX*symbol, self.m_denPos.z+arcY*symbol)\n    local dirt = MapPoint.sub(mpoint, MapPoint.new(cc.p(self:getPosition())))\n    self:walkBy(dirt)\n    \n    local fTime = math.floor(180 * math.random()) + 1\n    self:setTimer_Patrol(fTime)\nend\n\nfunction Enemy:moveByEnd()\n    Enemy.super.moveByEnd(self)\nend\n\n-- 死亡\nfunction Enemy:death()\n    if (self:getState() == FigureState.Death) then\n        return\n    end\n    \n    Enemy.super.death(self)\n    \n    local delayTime1 = cc.DelayTime:create(0.3)\n    local delayTime2 = cc.DelayTime:create(0.3)\n    local delayTime3 = cc.DelayTime:create(6)\n    local fadeOut = cc.FadeOut:create(0.1)\n    local callFunc1 = cc.CallFunc:create(handler(self, self.addExp))\n    local callFunc2 = cc.CallFunc:create(handler(self, self.removeThis))\n    local callFunc3 = cc.CallFunc:create(handler(self, self.removeFromParent))\n    local array = CCArray:create()\n    array:addObject(delayTime1)\n    array:addObject(callFunc1)\n    array:addObject(delayTime2)\n    array:addObject(callFunc2)\n    array:addObject(delayTime3)\n    array:addObject(fadeOut)\n    array:addObject(callFunc3)\n    local sequence = cc.Sequence:create(array)\n    self.m_nMonomer:runAction(sequence)\nend\n\nfunction Enemy:addAgainstMe(monomer, blood)\n    Enemy.super.addAgainstMe(self, monomer, blood)\n    self:hurt()\nend\n\nfunction Enemy:addExp()\n    local fairy = FlutteringFairy.addFairy(self, cc.p(0, self:getContentSize().height*0.6), FairyType.AddExp, math.random()*20+990, handler(self, self.flutteringFairyFinish))\n    self:pushFlutteringFairy(fairy)\nend\n\nfunction Enemy:removeThis()\n    g_mainScene:removeEnemy(self)\n    if (self.bloodBg) then\n        self.bloodBg:removeFromParent()\n        self.bloodBg = nil\n    end\nend\n\nfunction Enemy:getRoleNumber()\n    return self.m_nCurRoleNum\nend\n\n-- 攻击\nfunction Enemy:attacking()\n    Enemy.super.attacking(self)\nend\n\n-- 受到攻击\nfunction Enemy:underAttack()\n    Enemy.super.underAttack(self)\n    \n    if (self.m_nState == FigureState.Death) then\n        return\n    end\n    \n    if (self.m_attackMonomerMajor) then\n        return\n    end\n    \n    self:detectionWhetherCounter()\nend\n\n-- 设置人物状态\nfunction Enemy:setFigureState(nState, nDirection)\n    Enemy.super.setFigureState(self, nState, nDirection)\nend\n\nfunction Enemy:getDenPos()\n    return self.m_denPos\nend\n \nfunction Enemy:setDenPos(mpoint)\n    self.m_denPos = mpoint\nend\n\nfunction Enemy:getEnemyID()\n    return self.m_enemyID\nend\n\nfunction Enemy:getActive()\n    return self.m_isActive\nend\n\nfunction Enemy:setActive(bActive)\n    self.m_isActive = bActive\nend\n\nreturn Enemy"
  },
  {
    "path": "源代码/2.2.5/mir9/scripts/app/figure/Figure.lua",
    "content": "local TextureController = require(\"app.figure.TextureController\") \n\nlocal TAG_ANIMATE = 0xfffff0\n\n-- 人物方向\nFigureDirection = {\n    Up              = 8,    -- 上\n    LeftAndUp       = 7,    -- 左上\n    Left            = 6,    -- 左\n    LeftAndDown     = 5,    -- 左下\n    Down            = 4,    -- 下\n    RightAndDown    = 3,    -- 右下\n    Right           = 2,    -- 右\n    RightAndUp      = 1,    -- 右上\n    None            = 0\n}\n\n-- 人物状态\nFigureState = {\n    Death     = 7,  -- 死亡\n    Hurt      = 6,  -- 伤害 \n    Caster    = 5,  -- 投掷 \n    Attack    = 4,  -- 攻击 \n    Run       = 3,  -- 跑\n    Walk      = 2,  -- 走\n    Stand     = 1,\n    None      = 0\n}\n\n-- 人物类\nlocal Figure = class(\"Figure\", function()\n    return display.newSprite()\nend)\n\nfunction Figure:ctor(nType, nFigureNum)\n    self.m_nState = FigureState.Stand\n    self.m_nDirection = FigureDirection.Down\n    self.m_nFrameRate = 0.5\n    self.m_nTexturePathType = nType\n    self.m_nFigureNum = math.floor(nFigureNum)\n    self.m_nHairNum = 0\n    self.m_nWeaponNum = 0\n    self.m_spHair = nil\n    self.m_spWeapon = nil\n    self.m_pDelegate = nil\n    \n    TextureController.addSpriteFrames(self.m_nTexturePathType, self.m_nFigureNum, handler(self, self.updateFigure))\n\n    local point = cc.PointMult(cc.p(256, 256), 0.8)\n    self:setContentSize(point.x, point.y)\nend\n\n-- 设置头发\nfunction Figure:setHair(nHairNum)\n    nHairNum = math.floor(nHairNum)\n    \n    if (self.m_spHair ~= nil) then\n        self.m_spHair:removeFromParent()\n        TextureController.subSpriteFrames(TexturePathType.Hair, self.m_nHairNum)\n        self.m_spHair = nil\n        self.m_nHairNum = 0\n    end\n    \n    if (self.m_nTexturePathType == TexturePathType.Monster) then\n        return\n    end\n    \n    self.m_nHairNum = nHairNum * 10 + self.m_nFigureNum % 10\n    if (0 == self.m_nHairNum) then\n        return\n    end\n\n    TextureController.addSpriteFrames(TexturePathType.Hair, self.m_nHairNum, handler(self, self.updateFigure))\n        \n    self.m_spHair = CCSprite:create()\n    self.m_spHair:setPosition(128*0.8, 128*0.8)\n    self:addChild(self.m_spHair, 1, 999)\nend\n\n-- 设置武器\nfunction Figure:setWeapon(nWeaponNum)\n    if (self.m_spWeapon ~= nil) then\n        self.m_spWeapon:removeFromParent()\n        TextureController.subSpriteFrames(TexturePathType.Weapon, self.m_nWeaponNum)\n        self.m_spWeapon = nil\n        self.m_nWeaponNum = 0\n    end\n    \n    if (self.m_nTexturePathType == TexturePathType.Monster) then\n        return\n    end\n    \n    self.m_nWeaponNum = nWeaponNum\n    if (0 == self.m_nWeaponNum) then\n        return\n    end\n        \n    TextureController.addSpriteFrames(TexturePathType.Weapon, self.m_nWeaponNum, handler(self, self.updateFigure))\n \n    self.m_spWeapon = CCSprite:create()\n    self.m_spWeapon:setPosition(128*0.8, 128*0.8)\n    self:addChild(self.m_spWeapon, 0, 888)\nend\n\n-- 设置状态和方向\nfunction Figure:setFigureState(nState, nDirection)\n    local bIsChange = false\n    \n    if (nState and nState ~= FigureState.None and nState ~= self.m_nState) then\n        self.m_nState = nState\n        bIsChange = true\n    end\n    \n    if (nDirection and nDirection ~= FigureDirection.None and nDirection ~= self.m_nDirection) then\n        self.m_nDirection = nDirection\n        bIsChange = true\n    end\n\n    if (bIsChange) then\n        self:updateFigure()\n    end\nend\n\nlocal function getFrameRate(nState, nType)\n    local nFrameRate = 0\n    \n    if (nType == TexturePathType.Figure) then\n        if (nState == FigureState.Stand) then\n            nFrameRate = 1/3.0\n        elseif (nState == FigureState.Walk) then\n            nFrameRate = 0.6/16.0\n        elseif (nState == FigureState.Run) then\n            nFrameRate = 0.6/16.0\n        elseif (nState == FigureState.Attack) then\n            nFrameRate = 1/8.0     \n        elseif (nState == FigureState.Caster) then\n            nFrameRate = 1/8.0\n        elseif (nState == FigureState.Hurt) then\n            nFrameRate = 1/8.0\n        elseif (nState == FigureState.Death) then\n            nFrameRate = 1/4.0\n        end\n    end\n    \n    if (nType == TexturePathType.Monster) then\n        if (nState == FigureState.Stand) then\n            nFrameRate = 1/5.0\n        elseif (nState == FigureState.Walk) then\n            nFrameRate = 0.6/8.0\n        elseif (nState == FigureState.Run) then\n            nFrameRate = 0.6/8.0\n        elseif (nState == FigureState.Attack) then\n            nFrameRate = 1/8.0\n        elseif (nState == FigureState.Caster) then\n            nFrameRate = 1/8.0\n        elseif (nState == FigureState.Hurt) then\n            nFrameRate = 1/8.0\n        elseif (nState == FigureState.Death) then\n            nFrameRate = 1/8.0\n        end\n    end\n    \n    return nFrameRate\nend\n\n-- 更新人物状态\nfunction Figure:updateFigure()\n    self.m_nFrameRate = getFrameRate(self.m_nState, self.m_nTexturePathType)\n    \n    if (self.m_nDirection == FigureDirection.Left or \n        self.m_nDirection == FigureDirection.LeftAndUp or \n        self.m_nDirection == FigureDirection.LeftAndDown) then\n        self:setRotationY(180)\n    else\n        self:setRotationY(0)\n    end\n    \n    if (self.m_spWeapon) then\n        if (self.m_nDirection == FigureDirection.Up) then\n            self.m_spWeapon:setZOrder(-1)\n        else        \n            self.m_spWeapon:setZOrder(0)\n        end\n    end\n    \n    self:runActions()\nend\n\nfunction Figure:runActions()\n    self:stopActionByTag(TAG_ANIMATE)\n    \n    local figurePath = TextureController.getTexturePath(self.m_nTexturePathType, self.m_nFigureNum)\n    local animate = self:getRunActionsFromSprite(figurePath)\n    \n    if (self.m_nState == FigureState.Attack) then\n        local delayTime = cc.DelayTime:create(animate:getDuration()/2)\n        local callFunc1 = cc.CallFunc:create(handler(self, self.attacking))\n        local callFunc2 = cc.CallFunc:create(handler(self, self.attackCompleted))\n        local array = CCArray:create()\n        array:addObject(delayTime)\n        array:addObject(callFunc1)\n        array:addObject(delayTime)\n        array:addObject(callFunc2)\n        self:runAction(cc.Sequence:create(array))\n        \n        animate:setTag(TAG_ANIMATE)\n        self:runAction(animate)\n    elseif (self.m_nState == FigureState.Caster) then\n        local delayTime = cc.DelayTime:create(animate:getDuration()/2)\n        local callFunc1 = cc.CallFunc:create(handler(self, self.attacking))\n        local callFunc2 = cc.CallFunc:create(handler(self, self.attackCompleted))\n        local array = CCArray:create()\n        array:addObject(delayTime)\n        array:addObject(callFunc1)\n        array:addObject(delayTime)\n        array:addObject(callFunc2)\n        self:runAction(cc.Sequence:create(array))\n        \n        animate:setTag(TAG_ANIMATE)\n        self:runAction(animate)\n    elseif (self.m_nState == FigureState.Hurt) then\n        local array = CCArray:create()\n        array:addObject(animate)\n        array:addObject(cc.CallFunc:create(handler(self, self.hurtCompleted)))\n        local sequence = cc.Sequence:create(array)\n        sequence:setTag(TAG_ANIMATE)\n        self:runAction(sequence)\n    elseif (self.m_nState == FigureState.Death) then\n        local array = CCArray:create()\n        array:addObject(animate)\n        array:addObject(cc.CallFunc:create(handler(self, self.deathCompleted)))\n        self:runAction(cc.Sequence:create(array))\n    else\n        local repeatForever = cc.RepeatForever:create(animate)\n        repeatForever:setTag(TAG_ANIMATE)\n        self:runAction(repeatForever)\n    end\n    \n    if (self.m_spHair) then\n        self.m_spHair:stopAllActions()\n        \n        local path = TextureController.getTexturePath(TexturePathType.Hair, self.m_nHairNum)\n        local animate = self:getRunActionsFromSprite(path)\n        if (self.m_nState > 3) then\n            self.m_spHair:runAction(animate)\n        else\n            self.m_spHair:runAction(cc.RepeatForever:create(animate))\n        end\n    end\n    \n    if (self.m_spWeapon) then\n        self.m_spWeapon:stopAllActions()\n        \n        local path = TextureController.getTexturePath(TexturePathType.Weapon, self.m_nWeaponNum)\n        if (self.m_nState == FigureState.Death) then\n            path = path .. string.sub(figurePath, -1)\n        else\n            path = path .. \"0\"\n        end\n        \n        local animate = self:getRunActionsFromSprite(path)\n        if (self.m_nState > 3) then\n            self.m_spWeapon:runAction(animate)\n        else\n            self.m_spWeapon:runAction(cc.RepeatForever:create(animate))\n        end\n    end\nend\n\nfunction Figure:getRunActionsFromSprite(path)\n    local nDirection = self.m_nDirection\n    if (8 > nDirection and nDirection > 4) then\n        nDirection = 8 - nDirection\n    end\n\n    local flag = 0\n    local array = CCArray:createWithCapacity(8)\n    \n    while (true) do\n        local frameName = string.format(\"%s_%d_%d_%02d.png\", path, self.m_nState, nDirection, flag)\n        local frame = CCSpriteFrameCache:sharedSpriteFrameCache():spriteFrameByName(frameName)\n        if (not frame) then\n            break\n        end\n        array:addObject(frame)\n        flag = flag + 1\n    end\n    \n    local animation = cc.Animation:createWithSpriteFrames(array, self.m_nFrameRate)\n    local animate = cc.Animate:create(animation)\n    return animate\nend\n\nfunction Figure:attacking()\n    if (self.m_pDelegate) then\n        self.m_pDelegate:attacking()\n    end\nend\n\nfunction Figure:attackCompleted()\n    if (self.m_pDelegate) then\n        self.m_pDelegate:attackCompleted()\n    end\nend\n\nfunction Figure:hurtCompleted()\n    if (self.m_pDelegate) then\n        self.m_pDelegate:underAttack()\n    end\nend\n\nfunction Figure:deathCompleted()\n    if (self.m_pDelegate) then\n        self.m_pDelegate:deathActionFinish()\n    end\nend\n\nfunction Figure:setDelegate(delegate)\n    self.m_pDelegate = delegate\nend\n\n-- 脚\nfunction Figure:getAnchorPointWithFoot()\n    local x = self:getContentSize().width / 2 / self:getContentSize().width\n    local y = (self:getContentSize().height - 120) / self:getContentSize().height\n    return cc.p(x, y)\nend\n\n-- 手\nfunction Figure:getAnchorPointWithHand()\n    local x = self:getContentSize().width / 2 / self:getContentSize().width\n    local y = (self:getContentSize().height - 64) / self:getContentSize().height\n    return cc.p(x, y)\nend\n\nfunction Figure:getAnchorPointCenter()\n    return cc.p(0.5, 0.5)\nend\n\n-- 设置透明度\nfunction Figure:setOpacityEx(opacity)\n    self:setOpacity(opacity)\n    \n    if (self.m_spHair) then\n        self.m_spHair:setOpacity(opacity)\n    end\n    \n    if (self.m_spWeapon) then\n        self.m_spWeapon:setOpacity(opacity)\n    end\nend\n\nfunction Figure:getWeaponSprite()\n    return self.m_spWeapon\nend\n\nreturn Figure"
  },
  {
    "path": "源代码/2.2.5/mir9/scripts/app/figure/Monomer.lua",
    "content": "local scheduler = require(\"framework.scheduler\")\nlocal Figure = require(\"app.figure.Figure\")\nlocal MapPoint = require(\"app.map.MapPoint\")\nlocal BgMap = require(\"app.map.BgMap\")\nlocal TextureController = require(\"app.figure.TextureController\")\nlocal AttackSkillSystem = require(\"app.skill_system.AttackSkillSystem\")\nlocal SkillEffectShow = require(\"app.skill_system.SkillEffectShow\")\nlocal FlutteringFairy = require(\"app.game_ui.FlutteringFairy\")\n\nTAG_MOVET = 0xfffff1\nTAG_FOLLOWATTACK = 0xfffff2\nTAG_COOLINGTIMEATTACK = 0xfffff3\nTAG_MOVETWAIT = 0xfffff4\n\nMoveInfo = class(\"MoveInfo\")\n\nfunction MoveInfo:ctor(fTime, mpoint, bIsCanNotFineTheWay)    \n    self.fTime = fTime\n    self.mpoint = mpoint\n    self.bIsCanNotFineTheWay = bIsCanNotFineTheWay\nend\n\nlocal Monomer = class(\"Monomer\", function()\n    return display.newSprite()\nend)\n\nfunction Monomer:ctor()\n    self.m_nMonomer = nil\n    self.m_nDirection = FigureDirection.Down\n    self.m_nState = FigureState.Stand\n    self.m_attackMonomerMajor = nil\n    self.m_againstMeSet = {}\n    self.m_attackTime = 0.5\n    self.m_fReactionInterval = 0\n    self.m_bIsCanMoved = true\n    self.m_runSpeed = 1\n    self.m_visualRange = 5\n    self.m_bIsCooling = false\n    self.m_attackSkillInfo = nil\n    self.m_blood = 0\n    self.m_magic = 0\n    self.m_pTheAttack = 0\n    self.m_nTexturePathType = TexturePathType.Figure\n    self.m_nCurRoleNum = 0\n    self.m_nCurHairNum = 0\n    self.m_nCurWeaponNum = 0\n    self.m_nCurEffectID = 0\n    self.hUpdateVertexZ = 0\n    self.m_mapAttackSkill = {}\n    self.m_flutteringFairyDeque = {}\n    \n    self:addAttackSkill(1001)\n    self.m_attackSkillInfo = g_attackSkillSystem:getAttackSkillInfo(1001)\n    \n    self:setNodeEventEnabled(true)\n    self:setScale(1.0)\nend\n\nfunction Monomer:onEnter()\n    self:showFigure()\nend\n\nfunction Monomer:onExit()\n    self:stopAllActions()\n    self:killTimer_UpdateVertexZ()\nend\n\n-- 设置人物\nfunction Monomer:setFigure(nType, nRoleNum)\n    self.m_nTexturePathType = nType\n    \n    self.m_nCurRoleNum = nRoleNum\n    \n    if (self.m_nTexturePathType ~= TexturePathType.Figure) then\n        self.m_nCurWeaponNum = 0\n    end\n    \n    if (self.m_nMonomer) then\n        self:hideFigure()\n        self:showFigure()\n    end\nend\n\n-- 设置头发\nfunction Monomer:setHair(nHairNum)\n    if (self.m_nTexturePathType ~= TexturePathType.Figure) then\n        return\n    end\n    \n    self.m_nCurHairNum = nHairNum\n    \n    if (self.m_nMonomer) then\n        self.m_nMonomer:setHair(self.m_nCurHairNum)\n    end\nend\n\n-- 设置武器\nfunction Monomer:setWeapon(nWeaponNum)\n    if (self.m_nTexturePathType ~= TexturePathType.Figure) then\n        return\n    end\n    \n    self.m_nCurWeaponNum = nWeaponNum\n        \n    if (self.m_nMonomer) then\n        self.m_nMonomer:setWeapon(self.m_nCurWeaponNum)\n    end\nend\n\n-- 显示人物\nfunction Monomer:showFigure()\n    if (0 == self.m_nCurRoleNum) then\n        return\n    end\n    \n    if (self.m_nMonomer) then\n        return\n    end\n    \n    self.m_nMonomer = Figure.new(self.m_nTexturePathType, self.m_nCurRoleNum)\n    self:setContentSize(self.m_nMonomer:getContentSize())\n    self:setAnchorPoint(self.m_nMonomer:getAnchorPointWithFoot())\n    local size = self:getContentSize()\n    self.m_nMonomer:setPosition(size.width/2, size.height/2)\n    self:addChild(self.m_nMonomer)\n    self.m_nMonomer:setDelegate(self)\n    self.m_nMonomer:setHair(self.m_nCurHairNum)\n    self.m_nMonomer:setWeapon(self.m_nCurWeaponNum)\n    self.m_nMonomer:setFigureState(self.m_nState, self.m_nDirection)\n        \n    local ptBlood = cc.p(size.width * self:getAnchorPoint().x, size.height * 0.8)\n        \n    self.bloodBg = display.newSprite(\"blood_box.png\")\n    self.bloodBg:setAnchorPoint(cc.p(0.5, 0.5))\n    self.bloodBg:setPosition(ptBlood)\n    self.bloodBg:setScale(0.3)\n    self:addChild(self.bloodBg)\n        \n    self.bloodIn = display.newSprite(\"blood_in.png\")\n    self.bloodIn:setAnchorPoint(cc.p(0, 0))\n    self.bloodBg:addChild(self.bloodIn)\nend\n\n-- 隐藏人物\nfunction Monomer:hideFigure()\n    if (not self.m_nMonomer) then\n        return\n    end\n    self.m_nMonomer:removeFromParent()\n    self.m_nMonomer = nil\n    self.bloodBg:removeFromParent()\nend\n\n-- 设置人物状态\nfunction Monomer:setFigureState(nState, nDirection)\n    if (self.m_nState == FigureState.Death) then\n        return\n    end\n    \n    if (nState ~= FigureState.None) then\n        self.m_nState = nState\n    end\n        \n    if (nDirection ~= FigureDirection.None) then\n        self.m_nDirection = nDirection\n    end\n        \n    if (self.m_nMonomer) then\n        self.m_nMonomer:setFigureState(nState, nDirection)\n    end\nend\n\n-- 脚\nfunction Monomer:getHandPointRelativeFootOffset()\n    local anchorPoint\n    if (self.m_nMonomer) then\n        anchorPoint = cc.PointSub(self.m_nMonomer:getAnchorPointWithHand(), cc.p(self:getAnchorPoint()))\n    else\n        anchorPoint = cc.p(0.5, 0.5)\n    end\n    local szContent = self:getContentSize()\n    return cc.p(szContent.width * anchorPoint.x, szContent.height * anchorPoint.y)\nend\n\n-- 手\nfunction Monomer:getHandPoint()\n    local handRelativeFoot = self:getHandPointRelativeFootOffset()\n    local point = cc.p(self:getPosition())\n    return cc.PointAdd(point, handRelativeFoot)\nend\n\nfunction Monomer:getHurtPointRelativeFootOffset()\n    local anchorPoint\n    if (self.m_nMonomer) then\n        anchorPoint = cc.PointSub(self.m_nMonomer:getAnchorPointCenter(), cc.p(self:getAnchorPoint()))\n    else\n        anchorPoint = cc.p(0.5, 0.5)\n    end\n    local szContent = self:getContentSize()\n    return cc.p(szContent.width * anchorPoint.x, szContent.height * anchorPoint.y)\nend\n\nfunction Monomer:getHurtPoint()\n    local hurtRelativeFoot = self:getHurtPointRelativeFootOffset()\n    local point = cc.p(self:getPosition())\n    return cc.PointAdd(point, hurtRelativeFoot)\nend\n\nfunction Monomer:getAgainstMeOfFirst()\n    if (#self.m_againstMeSet <= 0) then\n        return nil\n    end\n\n    return self.m_againstMeSet[1]\nend\n\nfunction Monomer:getRect()\n    local ptPos = cc.p(self:getPosition())\n    local szContent = self:getContentSize()\n    local ptAnchor = self:getAnchorPoint()\n    \n    local off_x = szContent.width * 0.4\n    local off_y = szContent.height * ptAnchor.y * 0.5\n\n    local width = szContent.width * 0.3\n    local height = szContent.height * 0.6\n    \n    local rect = cc.rect(0,0,0,0)\n    rect.origin = cc.p(off_x, off_y)\n    rect.size = cc.size(width, height)\n    \n    local x = szContent.width * ptAnchor.x\n    local y = szContent.height * ptAnchor.y\n    \n    local point = cc.p(x, y)\n    point = cc.PointSub(ptPos, point)\n\n    local relustRect = rect\n    relustRect.origin = cc.PointAdd(point, rect.origin)\n    \n    return relustRect\nend\n\nfunction Monomer:getAlphaWithPoint(point)\n    return 0\nend\n\n-- 走到左面\nfunction Monomer:walkLeft()\n    self:setFigureState(FigureState.Walk, FigureDirection.Left)\nend\n\n-- 走到右面\nfunction Monomer:walkRight()\n    self:setFigureState(FigureState.Walk, FigureDirection.Right)\nend\n\n-- 走到上面\nfunction Monomer:walkUp()\n    self:setFigureState(FigureState.Walk, FigureDirection.Up)\nend\n\n-- 走到下面\nfunction Monomer:walkDown()\n    self:setFigureState(FigureState.Walk, FigureDirection.Down)\nend\n\n-- 走到左上\nfunction Monomer:walkLeftAndUp()\n    self:setFigureState(FigureState.Walk, FigureDirection.LeftAndUp)\nend\n\n-- 走到右上\nfunction Monomer:walkRightAndUp()\n    self:setFigureState(FigureState.Walk, FigureDirection.RightAndUp)\nend\n\n-- 走到右下\nfunction Monomer:walkRightAndDown()\n    self:setFigureState(FigureState.Walk, FigureDirection.RightAndDown)\nend\n\n-- 走到左下\nfunction Monomer:walkLeftAndDown()\n    self:setFigureState(FigureState.Walk, FigureDirection.LeftAndDown)\nend\n\n-- 跑到左面\nfunction Monomer:runLeft()\n    self:setFigureState(FigureState.Run, FigureDirection.Left)\nend\n\n-- 跑到右面\nfunction Monomer:runRight()\n    self:setFigureState(FigureState.Run, FigureDirection.Right)\nend\n\n-- 跑到上面\nfunction Monomer:runUp()\n    self:setFigureState(FigureState.Run, FigureDirection.Up)\nend\n\n-- 跑到下面\nfunction Monomer:runDown()\n    self:setFigureState(FigureState.Run, FigureDirection.Down)\nend\n\n-- 跑到左上\nfunction Monomer:runLeftAndUp()\n    self:setFigureState(FigureState.Run, FigureDirection.LeftAndUp)\nend\n\n-- 跑到右上\nfunction Monomer:runRightAndUp()\n    self:setFigureState(FigureState.Run, FigureDirection.RightAndUp)\nend\n\n-- 跑到右下\nfunction Monomer:runRightAndDown()\n    self:setFigureState(FigureState.Run, FigureDirection.RightAndDown)\nend\n\n-- 跑到左下\nfunction Monomer:runLeftAndDown()\n    self:setFigureState(FigureState.Run, FigureDirection.LeftAndDown)\nend\n\nfunction Monomer:stand()\n    self:setFigureState(FigureState.Stand, FigureDirection.None)\nend\n\n-- 伤害\nfunction Monomer:hurt()\n    if (self:getState() ~= FigureState.Death) then\n        self:setFigureState(FigureState.Hurt, FigureDirection.None)\n    end\nend\n\n-- 死亡\nfunction Monomer:death()\n    if (self:getState() ~= FigureState.Death) then\n        self.m_nMonomer:stopAllActions()\n        --self.m_nMonomer:unscheduleAllSelectors()\n        self:stopAllActions()\n        --self:unscheduleAllSelectors()\n        self:setFigureState(FigureState.Death, FigureDirection.None)\n        self:clearData()\n    end\nend\n\nfunction Monomer:playEffect(node, path)\n    if ((not node) or (not path) or (path == \"\")) then\n        return\n    end\n        \n    local array = CCArray:createWithCapacity(64)\n        \n    local flag = 4\n        \n    while (true) do\n        local fileName = string.format(\"%s%04d.png\", path, flag)\n        local spriteFrame = CCSpriteFrameCache:sharedSpriteFrameCache():spriteFrameByName(fileName)\n        if (not spriteFrame) then\n            break\n        end\n        array:addObject(spriteFrame)\n        flag = flag + 1\n    end\n\n    if (array:count() == 0) then\n        return\n    end\n        \n    local sprite = CCSprite:createWithSpriteFrame(array:objectAtIndex(0))\n    local x = self:getContentSize().width * self:getAnchorPoint().x\n    local y = self:getContentSize().height * 0.65\n    sprite:setPosition(x, y)\n    node:addChild(sprite, 1000)\n        \n    local animation = cc.Animation:createWithSpriteFrames(array, 1 / 32)\n    local animate = cc.Animate:create(animation)\n    local callFunc = cc.CallFunc:create(handler(sprite, sprite.removeFromParent))\n    local array = CCArray:create()\n    array:addObject(animate)\n    array:addObject(callFunc)\n    local sequence = cc.Sequence:create(array)\n    sprite:runAction(sequence)\nend\n\n-- 恢复血量\nfunction Monomer:bloodReturn(fBlood)\n    local blood = math.min(self:getBlood() + fBlood, self:getBloodCap())\n    self:setBlood(blood)\n    self:updateBloodProgress()\n    \n    local point = cc.p(0, self:getContentSize().height * 0.5)\n    local fairy = FlutteringFairy.addFairy(self, point, TypeAddBlood, fBlood, handler(self, self.flutteringFairyFinish))\n    self:pushFlutteringFairy(fairy)\n    self:playEffect(self, \"addh-\")\nend\n\nfunction Monomer:followAttack()\n    self:stopActionByTag(TAG_FOLLOWATTACK)\n    \n    if (not self.m_attackMonomerMajor) then\n        self:beyondVisualRange()\n        return\n    end\n        \n    if (self.m_attackMonomerMajor:getState() == FigureState.Death) then\n        self:beyondVisualRange()\n        return\n    end\n        \n    if (self:isInTheAttackRange(self.m_attackMonomerMajor)) then        -- 敌人在攻击范围内\n        self:attackEnemy()\n    elseif (self:isInTheFieldOfView(self.m_attackMonomerMajor)) then    -- 敌人在可视范围内\n        self:followTheTracks()\n    else\n        self:beyondVisualRange()\n    end\nend\n\nfunction Monomer:followTheTracks()\n    local mpoint = self.m_attackMonomerMajor:ownAttackPoint(self, self.m_attackSkillInfo.m_attackDistance)\n    if (mpoint:equalsObj(MapPoint.new(0, 0))) then\n        return\n    end\n    local point = cc.p(self:getPosition())\n    local mpos = MapPoint.new(point)\n    mpoint = MapPoint.sub(mpoint, mpos)\n    local relust = self:runBy(mpoint)\n    if (relust.fTime == 0) then\n        return\n    end\n    local fTime = self.m_fReactionInterval + relust.fTime + 0.01\n    self:delayCallBack(fTime, handler(self, self.followAttack)):setTag(TAG_FOLLOWATTACK)\nend\n\nfunction Monomer:isInTheAttackRange(monomer)\n    local pos1 = cc.p(self:getPosition())\n    local pos2 = cc.p(monomer:getPosition())\n    \n    local mpos1 = MapPoint.new(pos1)\n    local mpos2 = MapPoint.new(pos2)\n    \n    local attackRange = self.m_attackSkillInfo.m_attackDistance\n    \n    if (mpos1:getDistance(mpos2) > attackRange) then\n        return false\n    end\n    \n    if (mpos1:equalsObj(mpos2)) then\n        return false\n    end\n    \n    if (self:isMoveRunning()) then\n        return false\n    end\n        \n    return true\nend\n\nfunction Monomer:isInTheFieldOfView(monomer)\n    local pos1 = cc.p(self:getPosition())\n    local pos2 = cc.p(monomer:getPosition())\n    \n    local mpos1 = MapPoint.new(pos1)\n    local mpos2 = MapPoint.new(pos2)\n    \n    if (mpos1:getDistance(mpos2) <= self.m_visualRange) then\n        return true\n    end\n    \n    return false\nend\n\nfunction Monomer:beyondVisualRange()\n    self:setAttackMonomerMajor(nil)\nend\n\nfunction Monomer:clearData()\n    self.m_flutteringFairyDeque = {}\n    \n    for i = 1, #self.m_againstMeSet do\n        local monomer = self.m_againstMeSet[i]\n        monomer:removeAttackMonomerMajor(self)\n    end\n    self.m_againstMeSet = {}\n    \n    if (self.m_attackMonomerMajor) then\n        self.m_attackMonomerMajor:removeAgainstMe(self)\n        self:setAttackMonomerMajor(nil)\n    end\nend\n\nfunction Monomer:followAttackAndSetAttackMethods(otherEnemy, nAttackSkillNum)\n    if (nAttackSkillNum ~= 0) then\n        if (not self.m_mapAttackSkill[nAttackSkillNum]) then\n            return\n        end\n        self.m_attackSkillInfo = self.m_mapAttackSkill[nAttackSkillNum]\n    end\n    \n    if (not otherEnemy) then\n        return\n    end\n    \n    if (self:getState() == FigureState.Death) then\n        return\n    end\n\n    self:setAttackMonomerMajor(otherEnemy)\n    self:followAttack()\nend\n\nfunction Monomer:ownAttackPoint(monomer, attackRange)\n    local relust = MapPoint.new(0, 0)\n    \n    local mpos1 = MapPoint.new(cc.p(self:getPosition()))\n    local mpos2 = MapPoint.new(cc.p(monomer:getPosition()))\n    local lenght = math.min(mpos1:getDistance(mpos2), attackRange)\n    \n    if (attackRange == 1) then\n        relust = mpos1\n    else\n        local x = -lenght\n        local z = -lenght\n        local arrMPoint = {}\n        while (true) do\n            if (#arrMPoint == 8*lenght) then\n                break\n            end\n            \n            table.insert(arrMPoint, MapPoint.new(x, z))\n            \n            if (#arrMPoint <= 2*lenght) then\n                x = x + 1\n            elseif (2*lenght < #arrMPoint and #arrMPoint <= 4*lenght) then\n                z = z + 1\n            elseif (4*lenght < #arrMPoint and #arrMPoint <= 6*lenght) then\n                x = x - 1\n            elseif (6*lenght < #arrMPoint and #arrMPoint < 8*lenght) then\n                z = z - 1\n            end\n        end\n        \n        local l = 0xffff\n        for i = 1, #arrMPoint do\n            local mpoint = MapPoint.add(mpos2, arrMPoint[i])\n            if ((not g_mainScene:isPointValid(mpoint)) or (mpoint:getDistance(mpos1) >= l)) then\n            else\n                relust = mpoint\n                l = mpoint:getDistance(mpos1)\n            end\n        end\n    end\n\n    return relust\nend\n\n--function Monomer:standAndWatch(MapPoint point)\n--{\n--    M_INT lenghtX = mapSub(point, MapPoint(m_obPosition)).x;\n--    M_INT lenghtY = mapSub(point, MapPoint(m_obPosition)).z;\n--    float lenght = sqrtf(pow(lenghtX, 2) + pow(lenghtY, 2));\n--    float pointX = lenghtX / lenght;\n--    float pointY = lenghtY / lenght;\n--    float angle_X = acosf(pointX) * 180 / M_PI;\n--    float angle_Y = acosf(pointY) * 180 / M_PI;\n--\n--    float angle = angle_X;\n--    if (angle_Y > 90)\n--    {\n--        angle = 360 - angle_X;\n--    }\n--    \n--    FigureDirectionType dirType = this->getDirectionType(angle);\n--\n--    this->setFigureState(FStateStand, dirType);\n--}\n\nfunction Monomer:isMoveRunning()\n    local x, y = self:getPosition()\n    local pos = cc.p(x, y)\n    local mpos = MapPoint.new(pos)\n    return (cc.PointDistance(mpos:getCCPointValue(), pos) >= 5.0)\nend\n\nfunction Monomer:actionsWithPoint(startMPoint, endMPoint)\n    local callFunc = nil\n    \n    local array = CCArray:create()\n    \n    if (startMPoint:equalsObj(endMPoint)) then\n        return array\n    end\n    \n    local lenghtX = endMPoint.x - startMPoint.x\n    local lenghtY = endMPoint.z - startMPoint.z\n    local lenght = math.sqrt(lenghtX * lenghtX + lenghtY * lenghtY)\n    \n    local gridNumber = startMPoint:getDistance(endMPoint)\n    \n    local fTime = 0.6 * startMPoint:getDistance(endMPoint) / self.m_runSpeed / gridNumber\n\n    local pointX = lenghtX / lenght\n    local pointY = lenghtY / lenght\n\n    local angle_X = math.acos(pointX) * 180 / math.pi\n    local angle_Y = math.acos(pointY) * 180 / math.pi\n    \n    local angle = angle_X\n    if (angle_Y > 90) then\n        angle = 360 - angle_X\n    end\n    \n    local nType = math.floor(((angle + 22.5) % 360 ) / 45.0)\n    \n    if (lenght < 2) then\n        if (nType == 0) then\n            callFunc = cc.CallFunc:create(handler(self, self.walkRight))\n        elseif (nType == 1) then\n            callFunc = cc.CallFunc:create(handler(self, self.walkRightAndUp))\n        elseif (nType == 2) then\n            callFunc = cc.CallFunc:create(handler(self, self.walkUp))\n        elseif (nType == 3) then\n            callFunc = cc.CallFunc:create(handler(self, self.walkLeftAndUp))\n        elseif (nType == 4) then\n            callFunc = cc.CallFunc:create(handler(self, self.walkLeft))\n        elseif (nType == 5) then\n            callFunc = cc.CallFunc:create(handler(self, self.walkLeftAndDown))\n        elseif (nType == 6) then\n            callFunc = cc.CallFunc:create(handler(self, self.walkDown))\n        elseif (nType == 7) then\n            callFunc = cc.CallFunc:create(handler(self, self.walkRightAndDown))\n        end\n    else\n        if (nType == 0) then\n            callFunc = cc.CallFunc:create(handler(self, self.runRight))\n        elseif (nType == 1) then\n            callFunc = cc.CallFunc:create(handler(self, self.runRightAndUp))\n        elseif (nType == 2) then\n            callFunc = cc.CallFunc:create(handler(self, self.runUp))\n        elseif (nType == 3) then\n            callFunc = cc.CallFunc:create(handler(self, self.runLeftAndUp))\n        elseif (nType == 4) then\n            callFunc = cc.CallFunc:create(handler(self, self.runLeft))\n        elseif (nType == 5) then\n            callFunc = cc.CallFunc:create(handler(self, self.runLeftAndDown))\n        elseif (nType == 6) then\n            callFunc = cc.CallFunc:create(handler(self, self.runDown))\n        elseif (nType == 7) then\n            callFunc = cc.CallFunc:create(handler(self, self.runRightAndDown))\n        end\n    end\n    \n    array:addObject(callFunc)\n    \n    local moveTo = cc.MoveTo:create(fTime, endMPoint:getCCPointValue())\n    array:addObject(moveTo)\n\n    return array\nend\n\nfunction Monomer:actionsWithMoveTo(dequeMapPoint)\n    local array = CCArray:createWithCapacity(8)\n    \n    if (#dequeMapPoint <= 1) then\n        return array\n    end\n    \n    local callFunc1 = cc.CallFunc:create(handler(self, self.setTimer_UpdateVertexZ))\n    local callFunc2 = cc.CallFunc:create(handler(self, self.killTimer_UpdateVertexZ))\n        \n    array:addObject(callFunc1)\n        \n    for i = 2, #dequeMapPoint do\n        local startMPoint = dequeMapPoint[i-1]\n        local endMPoint = dequeMapPoint[i]\n        array:addObjectsFromArray(self:actionsWithPoint(startMPoint, endMPoint))\n    end\n        \n    array:addObject(callFunc2)\n            \n    return array\nend\n\n-- 跑\nfunction Monomer:runBy(mpoint)\n    local pos = cc.p(self:getPosition())\n    local relust = MoveInfo.new(0.0, MapPoint.new(pos), false)\n    \n    if (self.m_bIsCanMoved == false) then\n        return relust\n    end\n    \n    local nState = self:getState()\n    if (nState == FigureState.Death or \n        nState == FigureState.Attack or\n        nState == FigureState.Caster or\n        nState == FigureState.Hurt) then\n        return relust\n    end\n    \n    if (self:isMoveRunning()) then\n        return relust\n    end\n        \n    self:stopActionByTag(TAG_MOVET)\n    self:stopActionByTag(TAG_FOLLOWATTACK)\n    self:stopActionByTag(TAG_COOLINGTIMEATTACK)\n        \n    local mpos = MapPoint.new(pos)\n\n    local dequeMPoint = g_mainScene:getPathNextRunGrid(mpos, MapPoint.add(mpos, mpoint))\n        \n    if (#dequeMPoint <= 1) then\n        self:stand()\n        relust.bIsCanNotFineTheWay = true\n        return relust\n    end\n        \n    local array = self:actionsWithMoveTo(dequeMPoint)\n        \n    local callFunc = cc.CallFunc:create(handler(self, self.moveByBegin))\n    local callFunc2 = cc.CallFunc:create(handler(self, self.moveByEnd))\n    array:insertObject(callFunc, 0)\n    array:addObject(callFunc2)\n        \n    local sequence = cc.Sequence:create(array)\n    sequence:setTag(TAG_MOVET)\n    self:runAction(sequence)\n        \n    relust.fTime = sequence:getDuration()\n    relust.mpoint = dequeMPoint[#dequeMPoint]\n    \n    return relust\nend\n\n-- 走\nfunction Monomer:walkBy(mpoint)\n    local pos = cc.p(self:getPosition())\n    local relust = MoveInfo.new(0.0, MapPoint.new(pos), false)\n    \n    if (self.m_bIsCanMoved == false) then\n        return relust\n    end\n    \n    local nState = self:getState()\n    if (nState == FigureState.Death or \n        nState == FigureState.Attack or\n        nState == FigureState.Caster or\n        nState == FigureState.Hurt) then\n        return relust\n    end\n    \n    if (self:isMoveRunning()) then\n        return relust\n    end\n        \n    self:stopActionByTag(TAG_MOVET)\n    self:stopActionByTag(TAG_FOLLOWATTACK)\n    self:stopActionByTag(TAG_COOLINGTIMEATTACK)\n        \n    local mpos = MapPoint.new(pos)\n\n    local dequeMPoint = g_mainScene:getPathNextWalkGrid(mpos, MapPoint.add(mpos, mpoint))\n\n    if (#dequeMPoint <= 1) then\n        self:stand()\n        relust.bIsCanNotFineTheWay = true\n        return relust\n    end\n        \n    local array = self:actionsWithMoveTo(dequeMPoint)\n        \n    local callFunc = cc.CallFunc:create(handler(self, self.moveByBegin))\n    local callFunc2 = cc.CallFunc:create(handler(self, self.moveByEnd))\n    array:insertObject(callFunc, 0)\n    array:addObject(callFunc2)\n        \n    local sequence = cc.Sequence:create(array)\n    sequence:setTag(TAG_MOVET)\n    self:runAction(sequence)\n        \n    relust.fTime = sequence:getDuration()\n    relust.mpoint = dequeMPoint[#dequeMPoint]\n    \n    return relust\nend\n\n-- 去到指定点\nfunction Monomer:goTo(mpoint)\n    local pos = cc.p(self:getPosition())\n    local relust = MoveInfo.new(0.0, MapPoint.new(pos), false)\n    \n    if (self.m_bIsCanMoved == false) then\n        return relust\n    end\n    \n    local nState = self:getState()\n    if (nState == FigureState.Death or \n        nState == FigureState.Attack or\n        nState == FigureState.Caster or\n        nState == FigureState.Hurt) then\n        return relust\n    end\n    \n    if (self:isMoveRunning()) then\n        return relust\n    end\n    \n    self:stopActionByTag(TAG_MOVET)\n    self:stopActionByTag(TAG_FOLLOWATTACK)\n    self:stopActionByTag(TAG_COOLINGTIMEATTACK)\n        \n    local begin = MapPoint.new(pos)\n    local dequeMPoint = g_mainScene:getPath(begin, mpoint)\n        \n    if (#dequeMPoint <= 1) then\n        self:stand()\n        relust.bIsCanNotFineTheWay = true\n        return relust\n    end\n        \n    local array = self:actionsWithMoveTo(dequeMPoint)\n        \n    local callFunc = cc.CallFunc:create(handler(self, self.goBegin))\n    local callFunc2 = cc.CallFunc:create(handler(self, self.goEnd))\n    array:insertObject(callFunc, 0)\n    array:addObject(callFunc2)\n    local sequence = cc.Sequence:create(array)\n    sequence:setTag(TAG_MOVET)\n    self:runAction(sequence)\n        \n    relust.fTime = sequence:getDuration()\n    relust.mpoint = dequeMPoint[#dequeMPoint]\n\n    return relust\nend\n\n-- 启动更新Z轴计时器\nfunction Monomer:setTimer_UpdateVertexZ()\n    self:killTimer_UpdateVertexZ()\n    self.hUpdateVertexZ = scheduler.scheduleGlobal(handler(self, self.updateVertexZ), 0.1)\nend\n\n-- 关闭更新Z轴计时器\nfunction Monomer:killTimer_UpdateVertexZ()\n    if (self.hUpdateVertexZ) then\n        scheduler.unscheduleGlobal(self.hUpdateVertexZ)\n        self.hUpdateVertexZ = nil\n    end\nend\n\n-- 更新Z轴计时器回调函数\nfunction Monomer:updateVertexZ(fDelay)\n    local point = cc.p(self:getPosition())\n    local value = BgMap.getZOrder(point) -- z轴\n    self:setZOrder(value)\n    \n    if (not self.m_nMonomer) then\n        return\n    end\n        \n    if (g_mainScene:getCurrBgMap():getCurrentGridValue(MapPoint.new(point)) == 2) then\n        if (self.m_nMonomer:getOpacity() == 128) then\n            return\n        end\n            \n        self.m_nMonomer:setOpacityEx(128)\n        self.m_nMonomer:setColor(ccc3(166,166,166))\n    else\n        if (self.m_nMonomer:getOpacity() == 255) then\n            return\n        end\n            \n        self.m_nMonomer:setOpacityEx(255)\n        self.m_nMonomer:setColor(ccc3(255,255,255))\n    end\nend\n\n-- 添加攻击技能\nfunction Monomer:addAttackSkill(skillNumber)\n    local skillInfo = g_attackSkillSystem:getAttackSkillInfo(skillNumber)\n    if (skillInfo) then\n        self.m_mapAttackSkill[skillInfo.m_nNum] = skillInfo\n        TextureController.addSpriteFrames(TexturePathType.SkillCaster, skillInfo.m_casterSpecificID)\n        TextureController.addSpriteFrames(TexturePathType.SkillLocus, skillInfo.m_locusSpecificID)\n        TextureController.addSpriteFrames(TexturePathType.SkillExplosion, skillInfo.m_explosionSpecificID)\n    end\nend\n\n-- 删除攻击技能\nfunction Monomer:subAttackSkill(skillNumber)\n    local skillInfo = self.m_mapAttackSkill[skillNumber]\n    if (skillInfo) then\n        TextureController.subSpriteFrames(TexturePathType.SkillCaster, skillInfo.m_casterSpecificID)\n        TextureController.subSpriteFrames(TexturePathType.SkillLocus, skillInfo.m_locusSpecificID)\n        TextureController.subSpriteFrames(TexturePathType.SkillExplosion, skillInfo.m_explosionSpecificID)\n    end\nend\n\nfunction Monomer:moveByBegin()\n\nend\n\nfunction Monomer:moveByEnd()\n    self:stand()\nend\n\nfunction Monomer:goBegin()\n\nend\n\nfunction Monomer:goEnd()\n    self:stand()\nend\n\n-- 攻击敌人\nfunction Monomer:attackEnemy()\n    if (not self.m_attackMonomerMajor) then\n        return false\n    end\n        \n    if (self.m_isCooling) then\n        return false\n    end\n        \n    self.m_isCooling = true\n        \n    self:stopActionByTag(TAG_MOVET)\n        \n    local nState = FigureState.Attack\n    \n    if (not self.m_attackSkillInfo) then\n        self.m_attackSkillInfo = self.m_mapAttackSkill[1]\n    end\n        \n    if (self.m_attackSkillInfo.m_nAttackType == 2) then\n        nState = FigureState.Caster\n    end\n        \n    local lenghtX = self.m_attackMonomerMajor:getPositionX() - self:getPositionX()\n    local lenghtY = (self.m_attackMonomerMajor:getPositionY() - self:getPositionY()) * math.sqrt(2)\n    local lenght = math.sqrt(lenghtX * lenghtX + lenghtY * lenghtY)\n    local pointX = lenghtX / lenght\n    local pointY = lenghtY / lenght\n        \n    local angle_X = math.acos(pointX) * 180 / math.pi\n    local angle_Y = math.acos(pointY) * 180 / math.pi\n        \n    local angle = angle_X\n    if (angle_Y > 90) then\n        angle = 360 - angle_X\n    end\n        \n    local nDirection = self:getDirectionType(angle)\n    self:setFigureState(nState, nDirection)\n    \n    return true\nend\n\n-- 根据指定角度获取方向\nfunction Monomer:getDirectionType(fAngle)\n    local nDirection = FigureDirection.None\n    \n    local nType = math.floor(((math.floor(fAngle + 22.5)) % 360 ) / 45.0)\n    \n    if (nType == 0) then\n        nDirection = FigureDirection.Right\n    elseif (nType == 1) then\n        nDirection = FigureDirection.RightAndUp\n    elseif (nType == 2) then\n        nDirection = FigureDirection.Up\n    elseif (nType == 3) then\n        nDirection = FigureDirection.LeftAndUp\n    elseif (nType == 4) then\n        nDirection = FigureDirection.Left\n    elseif (nType == 5) then\n        nDirection = FigureDirection.LeftAndDown\n    elseif (nType == 6) then\n        nDirection = FigureDirection.Down\n    elseif (nType == 7) then\n        nDirection = FigureDirection.RightAndDown\n    end\n\n    return nDirection\nend\n\nfunction Monomer:setCoolingFalse()\n    self.m_isCooling = false\nend\n\nfunction Monomer:addAgainstMe(monomer, fBlood)\n    if (self:getState() == FigureState.Death) then\n        return\n    end\n    \n    if (monomer:getState() == FigureState.Death) then\n        return\n    end\n        \n    local fairy = FlutteringFairy.addFairy(self, cc.p(0, self:getContentSize().height * 0.5), FairyType.SubBlood, self.m_blood-fBlood, handler(self, self.flutteringFairyFinish))\n    self:pushFlutteringFairy(fairy)\n    self:setBlood(fBlood)\n    self:updateBloodProgress()\n\n    local bFind = false\n    for i = 1, #self.m_againstMeSet do\n        local m = self.m_againstMeSet[i]\n        if (m == monomer) then\n            bFind = true\n            break\n        end\n    end\n    if (not bFind) then\n        table.insert(self.m_againstMeSet, monomer)\n    end\n        \n    if (self.m_blood > 0) then\n        return\n    end\n        \n    self:death()\nend\n\nfunction Monomer:detectionOfEachOther()\n    \nend\n\nfunction Monomer:pushFlutteringFairy(fairy)\n    if (#self.m_flutteringFairyDeque > 0) then\n        for i = 1, #self.m_flutteringFairyDeque do\n            local lastFairy = self.m_flutteringFairyDeque[i]\n            local y = 30\n            if (y > 0) then\n                local moveBy = cc.MoveBy:create(0.15, cc.p(0, y))\n                lastFairy:runAction(moveBy)\n            end\n        end\n    end\n    table.insert(self.m_flutteringFairyDeque, fairy)\nend\n\nfunction Monomer:flutteringFairyFinish()\n    if (#self.m_flutteringFairyDeque > 0) then\n        table.remove(self.m_flutteringFairyDeque, 1)\n    end\nend\n\nfunction Monomer:detectionWhetherCounter()\n\nend\n\n-- 更新血条\nfunction Monomer:updateBloodProgress()\n    if (not self.bloodBg) then\n        return\n    end\n        \n    local rect = cc.rect(0,0,0,0)\n    rect.size = cc.size(self.bloodBg:getContentSize().width*self.m_blood/self.m_bloodCap, self.bloodIn:getContentSize().height)\n    rect.size.width = math.max(rect.size.width, 0)\n    self.bloodIn:setTextureRect(rect)\nend\n\nfunction Monomer:removeAttackMonomerMajor(monomer)\n    if (monomer == self.m_attackMonomerMajor) then\n        self:setAttackMonomerMajor(nil)\n    end\nend\n\nfunction Monomer:removeAgainstMe(monomer)\n    for i = 1, #self.m_againstMeSet do\n        local m = self.m_againstMeSet[i]\n        if (m == monomer) then\n            table.remove(self.m_againstMeSet, i)\n            return\n        end\n    end\nend\n\nfunction Monomer:delayCallBack(fTime, callFunc)\n    fTime = math.max(fTime, 0.0)\n    local array = CCArray:create()\n    array:addObject(cc.DelayTime:create(fTime))\n    array:addObject(cc.CallFunc:create(callFunc))\n    local sequence = cc.Sequence:create(array)\n    self:runAction(sequence)\n    return sequence\nend\n\nfunction Monomer:attacking()\n    SkillEffectShow.playSkillEffect(self.m_attackSkillInfo, self, self.m_attackMonomerMajor, 0)\nend\n\nfunction Monomer:underAttack()\n    self:setFigureState(FigureState.Stand, FigureDirection.None)\nend\n\nfunction Monomer:attackCompleted()\n    self:setFigureState(FigureState.Stand, FigureDirection.None)\n    self:delayCallBack(self.m_attackTime, handler(self, self.setCoolingFalse))\n    self:delayCallBack(self.m_attackTime, handler(self, self.detectionOfEachOther)):setTag(TAG_FOLLOWATTACK)\nend\n\nfunction Monomer:deathActionFinish()\n    self:setZOrder(BgMap.getZOrderZero(g_mainScene:getCurrBgMap()))    -- z轴\nend\n\nfunction Monomer:getFigure()\n    return self.m_nMonomer\nend\n\nfunction Monomer:getState()\n    return self.m_nState\nend\n\nfunction Monomer:getDirection()\n    return self.m_nDirection\nend\n\nfunction Monomer:getCanMoved()\n    return self.m_isCanMoved\nend\n\nfunction Monomer:setCanMoved(bCanMoved)\n    self.m_isCanMoved = bCanMoved\nend\n\nfunction Monomer:getRunSpeed()\n    return self.m_runSpeed\nend\n\nfunction Monomer:setRunSpeed(runSpeed)\n    self.m_runSpeed = runSpeed\nend\n\nfunction Monomer:getVisualRange()\n    return self.m_visualRange\nend\n\nfunction Monomer:setVisualRange(visualRange)\n    self.m_visualRange = visualRange\nend\n\nfunction Monomer:getBloodCap()\n    return self.m_bloodCap\nend\n\nfunction Monomer:setBloodCap(bloodCap)\n    self.m_bloodCap = bloodCap\nend\n\nfunction Monomer:getMagicCap()\n    return self.m_magicCap\nend\n\nfunction Monomer:setMagicCap(magicCap)\n    self.m_magicCap = magicCap\nend\n\nfunction Monomer:getBlood()\n    return self.m_blood\nend\n\nfunction Monomer:setBlood(blood)\n    self.m_blood = blood\nend\n\nfunction Monomer:getMagic()\n    return self.m_magic\nend\n\nfunction Monomer:setMagic(magic)\n    self.m_magic = m_magic\nend\n\nfunction Monomer:getTheAttack()\n    return self.m_pTheAttack\nend\n\nfunction Monomer:setTheAttack(pTheAttack)\n    self.m_pTheAttack = pTheAttack\nend\n\nfunction Monomer:getAttackTime()\n    return self.m_attackTime\nend\n\nfunction Monomer:setAttackTime(attackTime)\n    self.m_attackTime = attackTime\nend\n\nfunction Monomer:getAttackMonomerMajor()\n    return self.m_attackMonomerMajor\nend\n\nfunction Monomer:setAttackMonomerMajor(attackMonomerMajor)\n    self.m_attackMonomerMajor = attackMonomerMajor\nend\n\nreturn Monomer"
  },
  {
    "path": "源代码/2.2.5/mir9/scripts/app/figure/Player.lua",
    "content": "local scheduler = require(\"framework.scheduler\")\nlocal MapPoint = require(\"app.map.MapPoint\")\nlocal PlayerController = require(\"app.figure.PlayerController\")\nlocal Monomer = require(\"app.figure.Monomer\")\nlocal GameLoading = require(\"app.scenes.GameLoading\")\n\nlocal TAG_MOVET = 0xfffff1\nlocal TAG_FOLLOWATTACK = 0xfffff2\nlocal TAG_COOLINGTIMEATTACK = 0xfffff3\nlocal TAG_MOVETWAIT = 0xfffff4\n\n-- 玩家类\nlocal Player = class(\"Player\", Monomer)\n\nfunction Player:ctor()\n    Player.super.ctor(self)\n    \n    self.m_isMoveActions = false\n    self.m_willGoPoint = MapPoint.new(0, 0)\n    \n    local _playerController = PlayerController.sharePlayerController()\n    self:setFigure(TexturePathType.Figure, _playerController.m_playerNumber)\n    self:setHair(_playerController.m_hairNumber)\n    self:setWeapon(_playerController.m_weaponsNumber)\n    self:setTray()\n    self:setBlood(100000)\n    self:setBloodCap(100000)\n    self:setTheAttack(2500)\n    self:setVisualRange(100)\n    self:addAttackSkill(1002)\n    \n    self:addNodeEventListener(cc.NODE_ENTER_FRAME_EVENT, function(...)\n        self:update_(...)\n    end)\n    self:scheduleUpdate()\nend\n\nfunction Player:onEnter()\n    Player.super.onEnter(self)\nend\n\nfunction Player:onExit()\n    Player.super.onExit(self)\n    self:stopAllActions()\n    g_mainScene:getCurrBgMap():killTimer_UpdateMap()\n    self:killTimer_DetectionReplaceBgMap()\nend\n\nfunction Player:update_(dt)\n    if (not self.m_isMoveActions) then\n        return\n    end\n    \n    g_mainScene:getCurrBgMap():updateMap(dt)\n    self:detectionReplaceBgMap(dt)\nend\n\nfunction Player:setTray()\n\nend\n\nfunction Player:detectionOfEachOther()\n    Player.super.detectionOfEachOther(self)\n    \n    if (self.m_attackMonomerMajor) then\n        self:detectionWhetherCounter()\n    end\nend\n\nfunction Player:detectionWhetherCounter()\n    self:followAttack()\nend\n\nfunction Player:runBy(mpoint)    \n    local relust = Player.super.runBy(self, mpoint)\n    \n    if (relust.fTime ~= 0) then\n        g_mainScene:insterMapPoint(self, relust.mpoint)\n    end\n    \n    if (relust.fTime == 0 and relust.bIsCanNotFineTheWay == false) then\n        self.m_willGoPoint = mpoint\n        self:stopActionByTag(TAG_MOVETWAIT)\n        self:delayCallBack(1 / 60.0, handler(self, self.waitRunBy)):setTag(TAG_MOVETWAIT)\n        return relust\n    end\n        \n    if (self.m_isMoveActions == false) then\n--        g_mainScene:getCurrBgMap():setTimer_UpdateMap()\n--        self:setTimer_DetectionReplaceBgMap()\n        self.m_isMoveActions = true\n    end\n    \n    return relust\nend\n\nfunction Player:waitRunBy()\n    self:runBy(self.m_willGoPoint)\nend\n\nfunction Player:walkBy(mpoint)\n    local relust = Player.super.walkBy(self, mpoint)\n    \n    if (relust.fTime ~= 0) then\n        g_mainScene:insterMapPoint(self, relust.mpoint)\n    end\n    \n    if (relust.fTime == 0 and relust.bIsCanNotFineTheWay == false) then\n        self.m_willGoPoint = mpoint\n        self:stopActionByTag(TAG_MOVETWAIT)\n        self:delayCallBack(1 / 60.0, handler(self, self.waitWalkBy)):setTag(TAG_MOVETWAIT)\n        return relust\n    end\n        \n    if (self.m_isMoveActions == false) then\n--        g_mainScene:getCurrBgMap():setTimer_UpdateMap()\n--        self:setTimer_DetectionReplaceBgMap()\n        self.m_isMoveActions = true\n    end\n    \n    return relust\nend\n\nfunction Player:waitWalkBy()\n    self:walkBy(self.m_willGoPoint)\nend\n\nfunction Player:goTo(mpoint)\n    local relust = Player.super.goTo(self, mpoint)\n    if (relust.fTime ~= 0 and relust.bIsCanNotFineTheWay == false) then\n        g_mainScene:insterMapPoint(self, relust.mpoint)\n    else\n        self.m_willGoPoint = mpoint\n        self:stopActionByTag(TAG_MOVETWAIT)\n        self:delayCallBack(1 / 60.0, handler(self, self.waitGoTo)):setTag(TAG_MOVETWAIT)\n    end\n\n    return relust\nend\n\nfunction Player:waitGoTo()\n    self:goTo(self.m_willGoPoint)\nend\n\nfunction Player:moveByEnd()\n    if (g_mainScene:getPlayerMoveActions() == false) then\n        Player.super.moveByEnd(self)\n--        g_mainScene:getCurrBgMap():setTimer_UpdateMap()\n--        self:setTimer_DetectionReplaceBgMap()\n--        self.m_isMoveActions = false\n    else\n        g_mainScene:playerRunning()\n    end\nend\n\nfunction Player:goBegin()\n    Player.super.goBegin(self)\n    \n    if (self.m_isMoveActions) then\n        return\n    end\n\n--    g_mainScene:getCurrBgMap():setTimer_UpdateMap()\n--    self:setTimer_DetectionReplaceBgMap()\n    self.m_isMoveActions = true\nend\n\nfunction Player:goEnd()\n    Player.super.goEnd(self)\n    g_mainScene:getCurrBgMap():killTimer_UpdateMap()\n    self:killTimer_DetectionReplaceBgMap()\n    self.m_isMoveActions = false\nend\n\nfunction Player:stand()\n    Player.super.stand(self)\n    self.m_isMoveActions = false\n    self:detectionPropItems()\nend\n\nfunction Player:addAgainstMe(monomer, blood)\n    Player.super.addAgainstMe(self, monomer, blood)\n--    if (monomer) then\n--        self:hurt()\n--    end\n    if (not self.m_attackMonomerMajor) then\n        g_mainScene:showSelected(monomer)\n    end\nend\n\nfunction Player:attackEnemy()\n    self:stopActionByTag(TAG_COOLINGTIMEATTACK)\n    local progress = g_mainScene:getGameInfoUIController():getOperationMenu():getCurrProgress()\n    \n    if (self.m_isCooling) then\n        self:delayCallBack(0.1, handler(self, self.attackEnemy)):setTag(TAG_COOLINGTIMEATTACK)\n        return false\n    end\n        \n    if (not Player.super.attackEnemy(self)) then\n        self:delayCallBack(0.1, handler(self, self.attackEnemy)):setTag(TAG_COOLINGTIMEATTACK)\n        return false\n    end\n        \n    if (progress) then\n        progress:RunCoolingAction(self.m_attackSkillInfo.m_coolingTime)\n    end\n        \n    return true\nend\n\nfunction Player:followAttack()\n    Player.super.followAttack(self)\nend\n\nfunction Player:death()\n    Player.super.death(self)\nend\n\nfunction Player:detectionReplaceBgMap(delay)\n    local curBgMap = g_mainScene:getCurrBgMap()\n    local mapPassageway = curBgMap:isMapPassageway(self)\n    if (not mapPassageway:equals(PortalInformationZero)) then\n        self:goTo(MapPoint.new(mapPassageway.point))\n        --self:stopAllActions()\n        --g_mainScene:getCurrBgMap():startUpdateMap()\n        --self:startDetectionReplaceBgMap()\n        --self:unscheduleUpdateVertexZ()\n        GameLoading.runGameLoading(mapPassageway.mapID, mapPassageway.born)\n        -- g_mainScene:replaceBgMap(mapPassageway.mapID, mapPassageway.born)\n    end\nend\n\nfunction Player:detectionPropItems(delay)\n    local x, y = self:getPosition()\n    local position = MapPoint.new(x, y)\n    \n    local show = g_mainScene:getMapPointForProp(position)\n    if (show) then\n        g_mainScene:eraseMapPointForProp(position)\n        show:removeFromParent()\n    end\nend\n\nfunction Player:setBlood(var)\n    Player.super.setBlood(self, var)\n    if (g_mainScene:getGameInfoUIController()) then\n        g_mainScene:getGameInfoUIController():updateBloodPro()\n    end\nend\n\nfunction Player:setMagic(var)\n    Player.super.setMagic(self, var)\n    if (g_mainScene:getGameInfoUIController()) then\n        g_mainScene:getGameInfoUIController():updateMagicPro()\n    end\nend\n\nfunction Player:clearData()\n    Player.super.clearData(self)\n    self.m_isMoveActions = false\nend\n\nfunction Player:attacking()\n    Player.super.attacking(self)\nend\n\nfunction Player:underAttack()\n    \nend\n\nfunction Player:setFigureState(state, direction)\n    Player.super.setFigureState(self, state, direction)\nend\n\nfunction Player:setTimer_DetectionReplaceBgMap()\n    self:killTimer_DetectionReplaceBgMap()\n    self.hDetectionReplaceBgMap = scheduler.scheduleGlobal(handler(self, self.detectionReplaceBgMap), 0.1)\nend\n\nfunction Player:killTimer_DetectionReplaceBgMap()\n    if (self.hDetectionReplaceBgMap) then\n        scheduler.unscheduleGlobal(self.hDetectionReplaceBgMap)\n        self.hDetectionReplaceBgMap = nil\n    end\nend\n\nreturn Player"
  },
  {
    "path": "源代码/2.2.5/mir9/scripts/app/figure/PlayerController.lua",
    "content": "\n-- 纹理控制器类\nlocal PlayerController = class(\"PlayerController\")\n\nfunction PlayerController:ctor()\n    self.m_playerNumber = 11001\n    self.m_hairNumber = 1100\n    self.m_weaponsNumber = 0\n    self.m_playerName = \"\"\n    self.m_playerLevel = 1\n    self.m_playerShowID = 0\n    self.m_playerUID = \"\"\n    self.m_carryingWeaponsID = 0\n    \n    self:init()\nend\n\nfunction PlayerController.sharePlayerController()\n    if (not g_playerController) then\n        g_playerController = PlayerController.new()\n    end\n    return g_playerController\nend\n\nfunction PlayerController:init()\n    return true\nend\n\nreturn PlayerController"
  },
  {
    "path": "源代码/2.2.5/mir9/scripts/app/figure/TextureController.lua",
    "content": "local scheduler = require(\"framework.scheduler\")\n\nTexturePathType = {\n    Figure = 1,\n    Monster = 2,\n    Hair = 3,\n    Weapon = 4,\n    SkillCaster = 5,\n    SkillLocus = 6,\n    SkillExplosion = 7\n}\n\nlocal FIGURE_PATH = \"char_\"\nlocal MONSTER_PATH = \"monster_\"\nlocal HAIR_PATH = \"hair_\"\nlocal WEAPON_PATH = \"weapon_\"\nlocal SKILL_CASTER_PATH = \"caster_\"\nlocal SKILL_LOCUS_PATH = \"locus_\"\nlocal SKILL_EXPLOSION_PATH = \"explosion_\"\n\nlocal FIGURE_ROUTE = \"texture_figure/\"\nlocal MONSTER_ROUTE = \"texture_monster/\"\nlocal HAIR_ROUTE = \"texture_figure/\"\nlocal WEAPON_ROUTE = \"texture_weapon/\"\nlocal SKILL_ROUTE = \"texture_skill/\"\nlocal OTHER_ROUTE = \"texture_set/\"\n\nlocal textureSuffix = \".plist\"\nlocal texturePngSuffix = \".png\"\n\nlocal textureMap = {}\n\nlocal TextureAsync = class(\"TextureAsync\")\n\nfunction TextureAsync:ctor(path, callback)\n    self.m_texturePath = path\n    self.m_callback = callback\nend\n\nfunction TextureAsync:addSpriteFrames(texture)\n    local completePath = self.m_texturePath .. textureSuffix\n    CCSpriteFrameCache:sharedSpriteFrameCache():addSpriteFramesWithFile(completePath, texture)\n    self:isFinish()\nend\n    \nfunction TextureAsync:addImageAsync()\n    local completePath = self.m_texturePath .. texturePngSuffix\n    display.addImageAsync(completePath, function()\n        local texture = CCTextureCache:sharedTextureCache():textureForKey(completePath)\n        self:addSpriteFrames(texture)\n    end)\nend\n    \nfunction TextureAsync:waitForFinish()\n    if (self.handle) then\n        scheduler.unscheduleGlobal(self.handle)\n        self.handle = nil\n    end\n    \n    if (textureMap[self.m_texturePath] > 0) then\n        self:isFinish()\n    else\n        self.handle = scheduler.scheduleGlobal(handler(self, self.waitForFinish), 0.1)\n    end\nend\n    \nfunction TextureAsync:isFinish()\n    local n = textureMap[self.m_texturePath]\n    n = n + 1\n    textureMap[self.m_texturePath] = n\n    \n    if (self.m_callback) then\n        self.m_callback()\n    end\nend\n    \nfunction TextureAsync.addSpriteFramesAsync(path, callback)\n    if (not path or path == \"\") then\n        return\n    end\n    \n    local itr = textureMap[path]        \n    if (not itr) then\n        local async = TextureAsync.new(path, callback)\n        async:addImageAsync()\n        textureMap[path] = 0\n    else\n        local async = TextureAsync.new(path, callback)\n        async:waitForFinish()\n    end\nend\n    \nfunction TextureAsync.subSpriteFramesAsync(path)\n    if (not path or path == \"\") then\n        return\n    end\n\n    local itr = textureMap[path]\n    if (itr) then\n        itr = itr - 1\n        textureMap[path] = itr\n        if (itr <= 0) then\n            local completePath = path .. textureSuffix\n            CCSpriteFrameCache:sharedSpriteFrameCache():removeSpriteFramesFromFile(completePath)\n                \n            local pngPath = path .. texturePngSuffix\n            CCTextureCache:sharedTextureCache():removeTextureForKey(pngPath)\n                \n            textureMap[path] = nil\n        end\n    end\nend\n    \nfunction TextureAsync.removeAllSpriteFrames()\n    for k, v in pairs(textureMap) do\n        local completePath = k .. textureSuffix\n        CCSpriteFrameCache:sharedSpriteFrameCache():removeSpriteFramesFromFile(completePath)\n    end\n    textureMap = {}\n        \n    CCTextureCache:sharedTextureCache():removeAllTextures()\nend\n\n\n-- 纹理控制器类\nlocal TextureController = class(\"TextureController\")\n\nfunction TextureController:ctor()\n    \nend\n\nfunction TextureController.getTextureRoute(nType, nNum)\n    local path\n    \n    if (nType == TexturePathType.Figure) then\n        path = FIGURE_ROUTE .. FIGURE_PATH\n    elseif (nType == TexturePathType.Monster) then\n        path = MONSTER_ROUTE .. MONSTER_PATH\n    elseif (nType == TexturePathType.Hair) then\n        path = HAIR_ROUTE .. HAIR_PATH;\n    elseif (nType == TexturePathType.Weapon) then\n        path = WEAPON_ROUTE .. WEAPON_PATH\n    elseif (nType == TexturePathType.SkillCaster) then\n        path = SKILL_ROUTE .. SKILL_CASTER_PATH\n    elseif (nType == TexturePathType.SkillLocus) then\n        path = SKILL_ROUTE .. SKILL_LOCUS_PATH\n    elseif (nType == TexturePathType.SkillExplosion) then    \n        path = SKILL_ROUTE .. SKILL_EXPLOSION_PATH\n    else\n        path = \"\"\n    end\n    \n    if (path ~= \"\") then\n        path = path .. nNum\n    end\n    \n    return path\nend\n\nfunction TextureController.getTexturePath(nType, nNum)\n    local path\n    \n    if (nType == TexturePathType.Figure) then\n        path = FIGURE_PATH\n    elseif (nType == TexturePathType.Monster) then\n        path = MONSTER_PATH\n    elseif (nType == TexturePathType.Hair) then\n        path = HAIR_PATH;\n    elseif (nType == TexturePathType.Weapon) then\n        path = WEAPON_PATH\n    elseif (nType == TexturePathType.SkillCaster) then\n        path = SKILL_CASTER_PATH\n    elseif (nType == TexturePathType.SkillLocus) then\n        path = SKILL_LOCUS_PATH\n    elseif (nType == TexturePathType.SkillExplosion) then    \n        path = SKILL_EXPLOSION_PATH\n    else\n        path = \"\"\n    end\n    \n    if (path ~= \"\") then\n        path = path .. nNum\n    end\n    \n    return path\nend\n\nfunction TextureController.addSpriteFrames(nType, nNum, callFunc)\n    if (nNum == 0) then\n        return\n    end\n    \n    local path = TextureController.getTextureRoute(nType, nNum)\n    if (path == \"\") then\n        return\n    end\n    \n    local pngFileName = path .. texturePngSuffix\n    local plistFileName = path .. textureSuffix\n    display.addSpriteFramesWithFile(plistFileName, pngFileName)\n    if (callFunc) then\n        callFunc()\n    end\n    \n    --TextureAsync.addSpriteFramesAsync(path, callFunc)\nend\n\nfunction TextureController.subSpriteFrames(nType, nNum)\n    if (nNum == 0) then\n        return\n    end\n    \n    local path = TextureController.getTextureRoute(nType, nNum)\n    if (path == \"\") then\n        return\n    end\n    \n    --TextureAsync.subSpriteFramesAsync(path)\n    CCTextureCache:sharedTextureCache():removeUnusedTextures()\nend\n\nfunction TextureController.removeAllSpriteFrames()\n    TextureAsync.removeAllSpriteFrames()\n    CCTextureCache:sharedTextureCache():removeUnusedTextures()\nend\n\nreturn TextureController"
  },
  {
    "path": "源代码/2.2.5/mir9/scripts/app/game_ui/AttackEnemyInfo.lua",
    "content": "local scheduler = require(\"framework.scheduler\")\n\nlocal AttackEnemyInfo = class(\"AttackEnemyInfo\", function()\n    return display.newLayer()\nend)\n\nfunction AttackEnemyInfo:ctor()\n    self.m_bloodPro = nil\n    self.m_level = nil\n    self.m_nickName = nil\n    self.m_widget = nil\n    self:init()\nend\n\nfunction AttackEnemyInfo:init()\n    local bg = cc.ui.UIImage.new(\"ui/enemyInfo/icon/enemy_info.png\")\n    bg:setPosition(0, 0)\n    self:addChild(bg)\n    \n    self.m_bloodPro = cc.ui.UILoadingBar.new({scale9 = false, image = \"ui/enemyInfo/icon/blood_in.png\", capInsets = cc.rect(0, 0, 0, 0), viewRect = cc.rect(0, 0, 142, 17)})\n    self.m_bloodPro:setPosition(38, 10)\n    self.m_bloodPro:setPercent(100)\n    bg:addChild(self.m_bloodPro)\n    \n    self.m_level = CCLabelAtlas:create(\"100\", \"ui/enemyInfo/GUI/labelatlasimg.png\", 24, 32, string.byte('0'))\n    self.m_level:setAnchorPoint(0, 0)\n    self.m_level:setPosition(40, 40)\n    self.m_level:setScaleX(0.45)\n    self.m_level:setScaleY(0.6)\n    self.m_level:setColor(ccc3(94,252,11))\n    bg:addChild(self.m_level)\n    \n    self.m_nickName = cc.ui.UILabel.new({\n        text = \"EnemyName\",\n        size = 17,\n        color = ccc3(255,255,255),\n    })\n    self.m_nickName:setPosition(86, 50)\n    self:addChild(self.m_nickName)\n    \n    return true\nend\n\nfunction AttackEnemyInfo:updateAttackInfo(fDelay)\n    if (not g_mainScene:getSelected()) then\n        return\n    end\n    \n    if (self.m_bloodPro) then\n        local progress = 100*g_mainScene:getSelected():getBlood()/g_mainScene:getSelected():getBloodCap()\n        if (progress < 0) then\n            progress = 0\n        end\n        self.m_bloodPro:setPercent(progress)\n    end\nend\n\nfunction AttackEnemyInfo:showAttackInfo(monomer)\n    if (not g_mainScene:getSelected()) then\n        return\n    end\n        \n    if (not self:isVisible()) then\n        self:setVisible(true)\n        --self.m_widget:setTouchEnabled(true)\n    end\n    \n    self.hUpdateAttackInfo = scheduler.scheduleGlobal(handler(self, self.updateAttackInfo), 0)\nend\n\nfunction AttackEnemyInfo:hide()\n    if (self.hUpdateAttackInfo) then\n        scheduler.unscheduleGlobal(self.hUpdateAttackInfo)\n        self.hUpdateAttackInfo = nil\n    end\n    self:setVisible(false)\n    --self.m_widget:setTouchEnabled(false)\nend\n\nreturn AttackEnemyInfo"
  },
  {
    "path": "源代码/2.2.5/mir9/scripts/app/game_ui/CCTouchMouse.lua",
    "content": "-- 点击鼠标精灵类\nlocal CCTouchMouse = class(\"CCTouchMouse\", function()\n    return display.newSprite()\nend)\n\nfunction CCTouchMouse:ctor()\n    self.m_effectArray = CCArray:create()\n    self.m_effectArray:retain()\n    display.addSpriteFramesWithFile(\"ui/touch_mouse.plist\", \"ui/touch_mouse.png\")\n    if (self.m_effectArray:count() == 0) then\n        local flag = 1\n        while (true) do\n            local frameName = string.format(\"touch_mouse_%02d.png\", flag)\n            local frame = CCSpriteFrameCache:sharedSpriteFrameCache():spriteFrameByName(frameName)\n            if (not frame) then\n                break\n            end\n            self.m_effectArray:addObject(frame)\n            flag = flag + 1\n        end\n    end\nend\n\nfunction CCTouchMouse:playEffect(point)\n    self:setVisible(true)\n    self:setPosition(point)\n\tlocal animation = cc.Animation:createWithSpriteFrames(self.m_effectArray, 1 / 15)\n\tlocal animate = cc.Animate:create(animation)\n    local callFunc = cc.CallFunc:create(handler(self, self.setHide))\n    local array = CCArray:create()\n    array:addObject(animate)\n    array:addObject(callFunc)\n    local sequence = cc.Sequence:create(array)\n    self:stopAllActions()\n    self:runAction(sequence)\nend\n\nfunction CCTouchMouse:setHide()\n    self:setVisible(false)\nend\n\nreturn CCTouchMouse"
  },
  {
    "path": "源代码/2.2.5/mir9/scripts/app/game_ui/FlutteringFairy.lua",
    "content": "FairyType = {\n    AddExp = 0,\n    AddBlood = 1,\n    SubBlood = 2,\n    SubMagic = 3    \n}\n\n-- 飞舞的精灵类\nlocal FlutteringFairy = class(\"FlutteringFairy\", function()\n    return display.newNode()\nend)\n\nfunction FlutteringFairy:ctor()\n\nend\n\nfunction FlutteringFairy.addFairy(parent, point, fairyType, value, callfunc)\n    local fairy = FlutteringFairy.new()\n    fairy:initWithFairy(fairyType, value, callfunc)\n    fairy:setPosition(cc.PointAdd(cc.p(parent:getPosition()), point))\n    parent:getParent():addChild(fairy, 10)\n    --fairy:release()\n    return fairy\nend\n\nfunction FlutteringFairy:initWithFairy(fairyType, value, callfunc)\n    value = math.abs(value)\n    \n    local str = \"\"\n    local color = ccc3(255,255,255)\n    \n    if (fairyType == FairyType.AddExp) then\n        str = string.format(\"获得经验:%d\", value)\n        color = ccc3(255,255,0)\n    elseif (fairyType == FairyType.AddBlood) then\n        str = string.format(\"+%d\", value)\n        color = ccc3(0,255,0)\n    elseif (fairyType == FairyType.SubBlood) then\n        str = string.format(\"-%d\", value)\n        color = ccc3(255,0,0)\n    elseif (fairyType == FairyType.SubMagic) then\n        str = string.format(\"-%d\", value)\n        color = ccc3(25, 18, 112)\n    end\n    \n    self.m_fairy = CCLabelTTF:create(str, \"Helvetica-Bold\", 30)\n    self.m_fairy:setPosition(cc.p(0, 0))\n    self:addChild(self.m_fairy)\n    self.m_fairy:setColor(color)\n    \n    self.m_fairy:setScale(2.0)\n    self.m_fairy:setOpacity(0)\n    \n    local fadeIn = cc.FadeIn:create(0.1)\n    local scaleTo = cc.ScaleTo:create(0.2, 1.0)\n    local array = CCArray:create()\n    array:addObject(fadeIn)\n    array:addObject(scaleTo)\n    local spawn = cc.Spawn:create(array)\n    local easeBack = cc.EaseSineOut:create(spawn)\n    local delayTime = cc.DelayTime:create(0.3)\n    local fadeOut = cc.FadeOut:create(0.2)\n    local callFunc = cc.CallFunc:create(callfunc)\n    local finish = cc.CallFunc:create(handler(self, self.removeFromParent))\n    local array2 = CCArray:create()\n    array2:addObject(easeBack)\n    array2:addObject(delayTime)\n    array2:addObject(fadeOut)\n    array2:addObject(callFunc)\n    array2:addObject(finish)\n    local sequence = cc.Sequence:create(array2)\n    self.m_fairy:runAction(sequence)\nend\n\nfunction FlutteringFairy:getContentSize()\n    return self.m_fairy:getContentSize()\nend\n\nreturn FlutteringFairy"
  },
  {
    "path": "源代码/2.2.5/mir9/scripts/app/game_ui/GameInfoUIController.lua",
    "content": "local PlayerController = require(\"app.figure.PlayerController\")\nlocal MapThumbnailMenu = require(\"app.game_ui.MapThumbnailLayer\")\nlocal LOperationMenu = require(\"app.game_ui.LOperationMenu\")\nlocal AttackEnemyInfo = require(\"app.game_ui.AttackEnemyInfo\")\nlocal GameTabBarMenu = require(\"app.game_ui.GameTabBarMenu\")\n\nlocal GameInfoUIController = class(\"GameInfoUIController\", function()\n    return display.newLayer()\nend)\n\nfunction GameInfoUIController:ctor()\n    self.m_operationMenu = nil\n    self.m_isShowTabBar = true\n    self.m_headIcon = nil\n    self.m_headBtn = nil\n    self.m_levelTTF = nil\n    self.m_nickNameTTF = nil\n    self.m_bloodPro = nil\n    self.m_magicPro = nil\n    self.m_gameTabBarMenu = nil\n    self.m_attackEnemyInfo = nil\n    self.m_chatInterface = nil\n    self.m_pMenuBig = nil\n    self.m_pMenuSmall = {}\n          \n    self:init()\nend\n\nfunction GameInfoUIController:init()\n    io.writefile(\"/storage/sdcard0/mir9_log.txt\", \"GameInfoUIController:init()_start\\n\",\"a+\")\n    \n    io.writefile(\"/storage/sdcard0/mir9_log.txt\", \"GameInfoUIController:initWithHeadUI()_start\\n\",\"a+\")    \n    self:initWithHeadUI()\n    io.writefile(\"/storage/sdcard0/mir9_log.txt\", \"GameInfoUIController:initWithHeadUI()_end\\n\",\"a+\")\n    \n    io.writefile(\"/storage/sdcard0/mir9_log.txt\", \"MapThumbnailMenu.new()_start\\n\",\"a+\")\n    self.m_mapThumbnailMenu = MapThumbnailMenu.new()\n    self.m_mapThumbnailMenu:setPosition(cc.PointSub(cc.p(display.width, display.height), cc.p(100, 100)))\n    self:addChild(self.m_mapThumbnailMenu)\n    io.writefile(\"/storage/sdcard0/mir9_log.txt\", \"MapThumbnailMenu.new()_end\\n\",\"a+\")\n    \n    io.writefile(\"/storage/sdcard0/mir9_log.txt\", \"LOperationMenu.new()_start\\n\",\"a+\")\n    self.m_operationMenu = LOperationMenu.new()\n    self:addChild(self.m_operationMenu)\n    io.writefile(\"/storage/sdcard0/mir9_log.txt\", \"LOperationMenu.new()_end\\n\",\"a+\")\n\n    io.writefile(\"/storage/sdcard0/mir9_log.txt\", \"AttackEnemyInfo.new()_start\\n\",\"a+\")\n    self.m_attackEnemyInfo = AttackEnemyInfo.new()\n    self.m_attackEnemyInfo:setPosition(display.width/2-125, display.height-120)\n    self.m_attackEnemyInfo:hide()\n    self:addChild(self.m_attackEnemyInfo)\n    io.writefile(\"/storage/sdcard0/mir9_log.txt\", \"AttackEnemyInfo.new()_end\\n\",\"a+\")\n    \n--    self.m_chatInterface = ChatInterface::create()\n--    self.m_chatInterface->setPosition(CCPoint(220, 0))\n--    self:addChild(self.m_chatInterface)\n  \n    io.writefile(\"/storage/sdcard0/mir9_log.txt\", \"GameTabBarMenu.new()_start\\n\",\"a+\")  \n    self.m_gameTabBarMenu = GameTabBarMenu.new()\n    self.m_gameTabBarMenu:setPosition(display.width-960, -100)\n    self:addChild(self.m_gameTabBarMenu)\n    io.writefile(\"/storage/sdcard0/mir9_log.txt\", \"GameTabBarMenu.new()_end\\n\",\"a+\")\n    \n    io.writefile(\"/storage/sdcard0/mir9_log.txt\", \"GameInfoUIController:init()_end\\n\",\"a+\")\n    \n    return true\nend\n\nfunction GameInfoUIController:initWithHeadUI()\n    local bg = cc.ui.UIImage.new(\"ui/head_UI/icon/player_head.png\")\n    bg:setPosition(20, display.height-113-20)\n    self:addChild(bg)\n    \n    bg:setTouchEnabled(true)  \n    bg:addNodeEventListener(cc.NODE_TOUCH_EVENT, function(event)\n        if event.name == \"began\" then\n            if bg:getBoundingBox():containsPoint(cc.p(event.x, event.y)) then  \n                bg:setTouchSwallowEnabled(true)\n                return true\n            end\n            return false\n        end  \n    end)\n    \n--    local nickName = PlayerController:sharePlayerController().m_playerName\n--    local label = cc.ui.UILabel.new({text = nickName, size = 22,  color = ccc3(247, 230, 56)})\n--    label:setPosition(180, 100)\n--    label:setAnchorPoint(0.5, 0.5)\n--    bg:addChild(label)\n    \n    local PUSH_BUTTON_IMAGES = {\n        normal = \"ui/head_UI/icon/icon_null.png\",\n        pressed = \"ui/head_UI/icon/icon_null.png\",\n        disabled = \"ui/head_UI/icon/icon_null.png\"\n    }\n\n    self.m_headBtn = cc.ui.UIPushButton.new(PUSH_BUTTON_IMAGES, {scale9 = true})\n    self.m_headBtn:setButtonSize(72, 72)\n    self.m_headBtn:setPosition(52, 131-72)\n    self.m_headBtn:onButtonClicked(handler(self, self.modeSwitch))\n    bg:addChild(self.m_headBtn)\n    \n    self.m_bloodPro = cc.ui.UILoadingBar.new({scale9 = true, image = \"ui/head_UI/icon/blood_in.png\", capInsets = cc.rect(0, 0, 0, 0), viewRect = cc.rect(0, 0, 131, 17)})\n    self.m_bloodPro:setPosition(116, 54)\n    self.m_bloodPro:setPercent(100)\n    bg:addChild(self.m_bloodPro)\n    \n    cc.ui.UILabel.new({\n        text = \"0/0\",\n        size = 12,\n        color = ccc3(250,247,247),\n    }):pos(110, 8):addTo(self.m_bloodPro)\n        \n    self.m_magicPro = cc.ui.UILoadingBar.new({scale9 = true, image = \"ui/head_UI/icon/magic_in.png\", capInsets = cc.rect(0, 0, 0, 0), viewRect = cc.rect(0, 0, 131, 17)})\n    self.m_magicPro:setPosition(108, 30)\n    self.m_magicPro:setPercent(100)\n    bg:addChild(self.m_magicPro)\n    \n    cc.ui.UILabel.new({\n        text = \"0/0\",\n        size = 12,\n        color = ccc3(250,247,247),\n    }):pos(110, 8):addTo(self.m_magicPro)\n\n    local label = CCLabelAtlas:create(\"3\", \"ui/head_UI/GUI/labelatlasimg.png\", 24, 32, string.byte('0'))\n    label:setAnchorPoint(0, 0)\n    label:setPosition(94, 68)\n    label:setScaleX(0.45)\n    label:setScaleY(0.6)\n    label:setColor(ccc3(94,252,11))\n    bg:addChild(label)\nend\n\n-- 头像按钮\nfunction GameInfoUIController:modeSwitch(event)\n    if (self:getActionByTag(0xacff)) then\n        return\n    end\n    \n    if (self.m_isShowTabBar) then\n        self.m_isShowTabBar = false\n        self.m_operationMenu:hideOperationMenu()\n        -- self.m_chatInterface:hideChatInterface()\n        \n        local delay = cc.DelayTime:create(0.3)\n        local finish = cc.CallFunc:create(handler(self.m_gameTabBarMenu, self.m_gameTabBarMenu.showGameTabBarMenu))\n        local array = CCArray:create()\n        array:addObject(delay)\n        array:addObject(finish)\n        local sequence = cc.Sequence:create(array)\n        sequence:setTag(0xacff)\n        self:runAction(sequence)\n    else\n        self.m_isShowTabBar = true\n        self.m_gameTabBarMenu:hideGameTabBarMenu()\n    \n        local delay = cc.DelayTime:create(0.3)\n        local finish = cc.CallFunc:create(handler(self.m_operationMenu, self.m_operationMenu.showOperationMenu))\n        -- local finish2 = cc.CallFunc:create(handler(self.m_chatInterface, self.m_chatInterface.showChatInterface))\n        local array = CCArray:create()\n        array:addObject(delay)\n        array:addObject(finish)\n        -- array:addObject(finish2)\n        local sequence = cc.Sequence:create(array)\n        sequence:setTag(0xacff)\n        self:runAction(sequence)\n    end\nend\n\nfunction GameInfoUIController:updateBloodPro()\n    if (g_player) then\n        self.m_bloodPro:setPercent(100*g_player:getBlood()/g_player:getBloodCap())\n    end\nend\n\nfunction GameInfoUIController:updateMagicPro()\n    if (g_player) then\n        self.m_bloodPro:setPercent(100*g_player:getMagic()/g_player:getMagicCap())\n    end\nend\n\nfunction GameInfoUIController:updateLevelTTF()\n\nend\n\nfunction GameInfoUIController:addSmallMenu(node)\n    if (self.m_pMenuBig) then\n        self.m_pMenuBig:removeFromParent()\n        self.m_pMenuBig = nil\n    end\n    \n    for i = 1, #self.m_pMenuSmall do\n        if node.m_className == self.m_pMenuSmall[i].m_className then\n            return\n        end\n    end\n    \n    self:setTouchEnabled(false)\n    \n    if (#self.m_pMenuSmall >= 2) then\n        self.m_pMenuSmall[1]:removeFromParent()\n        table.remove(self.m_pMenuSmall, 1)\n        self.m_pMenuSmall[1]:setPosition(display.width/4, (display.height+80)/2)\n    end\n    \n    node:setPosition(display.width/4 * (#self.m_pMenuSmall*2+1), (display.height+80)/2)\n    self:addChild(node)\n    table.insert(self.m_pMenuSmall, node)\n    \n    self:setTouchEnabled(true)\nend\n\nfunction GameInfoUIController:removeSmallMenu(node)\n    if (not node) then\n        return\n    end\n    \n    for i = 1, #self.m_pMenuSmall do\n        if node == self.m_pMenuSmall[i] then\n            table.remove(self.m_pMenuSmall, i)\n            node:removeFromParent()\n            break\n        end\n    end\n    \n    if (#self.m_pMenuSmall > 0) then\n        self.m_pMenuSmall[1]:setPosition(display.width/4, (display.height+80)/2)\n    else\n        self:setTouchEnabled(false)\n    end\nend\n\nfunction GameInfoUIController:removeSmallMenuAndButton(event)\n\tlocal node = event.target\n    self:removeSmallMenu(node:getParent())\nend\n\nfunction GameInfoUIController:addBigMenu(node)\n\tif (self.m_pMenuBig) then\n\t\tself.m_pMenuBig:removeFromParent()\n\t\tself.m_pMenuBig = nil\n\tend\n\tself:setTouchEnabled(false)\n    \n    if (#self.m_pMenuSmall > 0) then\n        for i = 1, #self.m_pMenuSmall do\n            self.m_pMenuSmall[i]:removeFromParent()\n        end\n        self.m_pMenuSmall = {}\n    end\n    \n    node:setPosition(display.width/2, (display.height+80)/2)\n    self:addChild(node)\n    self.m_pMenuBig = node\n    \n    self:setTouchEnabled(true)\nend\n\nfunction GameInfoUIController:removeBigMenuAndButton(node, event)\n    if (self.m_pMenuBig) then\n        self.m_pMenuBig:removeFromParent()\n        self.m_pMenuBig = nil\n    end\n    self:setTouchEnabled(false)\nend\n\nfunction GameInfoUIController:getAttackEnemyInfo()\n    return self.m_attackEnemyInfo\nend\n\nfunction GameInfoUIController:getOperationMenu()\n    return self.m_operationMenu\nend\n\nreturn GameInfoUIController"
  },
  {
    "path": "源代码/2.2.5/mir9/scripts/app/game_ui/GameOptions.lua",
    "content": "local GameOptions = class(\"GameOptions\", function()\n    return display.newNode()\nend)\n\nfunction GameOptions:ctor()\n    local bg = display.newSprite(\"ui/options.png\")\n    bg:setPosition(0, 0)\n    self:addChild(bg)\n    \n    local ptBg = cc.p(bg:getPosition())\n    local szBg = bg:getContentSize()\n    local szBtn = cc.size(57, 58)\n\n    local PUSH_BUTTON_IMAGES = {\n        normal = \"ui/closed_normal.png\",\n        pressed = \"ui/closed_selected.png\",\n        disabled = \"ui/closed_normal.png\",\n    }\n\n    local btn = cc.ui.UIPushButton.new(PUSH_BUTTON_IMAGES, {scale9 = true})\n    btn:setButtonSize(szBtn.width, szBtn.height)\n    local ptBtn = cc.PointAdd(ptBg, cc.p(szBg.width, szBg.height))\n    ptBtn = cc.PointSub(ptBtn, cc.p(szBtn.width/2, szBtn.height/2))\n    btn:setPosition(ptBtn)\n    btn:setAnchorPoint(0.5, 0.5)\n    btn:onButtonClicked(handler(g_mainScene:getGameInfoUIController(), g_mainScene:getGameInfoUIController().removeBigMenuAndButton))\n    bg:addChild(btn)\nend\n\nreturn GameOptions"
  },
  {
    "path": "源代码/2.2.5/mir9/scripts/app/game_ui/GameTabBarMenu.lua",
    "content": "local PropColumnMenu = require(\"app.game_ui.PropColumn\")\nlocal SkillTableView = require(\"app.game_ui.SkillTableView\")\nlocal GameOptions = require(\"app.game_ui.GameOptions\")\n\nlocal GameTabBarMenu = class(\"GameTabBarMenu\", function()\n    return display.newLayer()\nend)\n\nfunction GameTabBarMenu:ctor()\n    local PUSH_BUTTON_IMAGES = {\n        normal = \"ui/tabbarMenu/GUI/button.png\",\n        pressed = nil,\n        disabled = nil,\n    }\n    \n    local posX = 75 -- {75,165,255,345,437,615,705,795,885}\n    local szBtn = cc.size(80, 80)\n    local text = {\"角色\",\"背包\",\"技能\",\"强化\",\"交友\",\"行会\",\"天命\",\"商城\",\"宝典\",\"设置\"}\n    local callFunc = {\n        handler(self, self.showRoleInfo),\n        handler(self, self.showBackPack),\n        handler(self, self.showSkillInfo),\n        handler(self, self.showStrengthen),\n        handler(self, self.showMakeFriends),\n        handler(self, self.showGuild),\n        handler(self, self.showDestiny),\n        handler(self, self.showMall),\n        handler(self, self.showCanon),\n        handler(self, self.showSetUp)\n    }\n    \n    for i = 1, #text do\n        local btn = cc.ui.UIPushButton.new(PUSH_BUTTON_IMAGES, {scale9 = true})\n        btn:setAnchorPoint(0.5, 0.5)\n        btn:setButtonSize(szBtn.width, szBtn.height)\n        btn:setPosition(posX, 50)\n        btn:setButtonLabel(\"normal\", ui.newTTFLabel({\n            text = text[i],\n            fontName = \"微软雅黑\",\n            size = 30\n        }))\n        btn:onButtonClicked(callFunc[i])\n        self:addChild(btn)\n        \n        posX = posX + 90\n    end\nend\n\n-- 角色\nfunction GameTabBarMenu:showRoleInfo(event)\n\t\nend\n\n-- 背包\nfunction GameTabBarMenu:showBackPack(event)\n    local layer = PropColumnMenu.new()\n    g_mainScene:getGameInfoUIController():addSmallMenu(layer)\n    g_mainScene:getGameInfoUIController():getOperationMenu():joinEditState()\nend\n\n-- 技能\nfunction GameTabBarMenu:showSkillInfo(event)\n    local layer = SkillTableView.new()\n    g_mainScene:getGameInfoUIController():addSmallMenu(layer)\n    g_mainScene:getGameInfoUIController():getOperationMenu():joinEditState()\nend\n\n-- 强化\nfunction GameTabBarMenu:showStrengthen(event)\n\t\nend\n\n-- 交友\nfunction GameTabBarMenu:showMakeFriends(event)\n\t\nend\n\n-- 行会\nfunction GameTabBarMenu:showGuild(event)\n    \nend\n\n-- 天命\nfunction GameTabBarMenu:showDestiny(event)\n\t\nend\n\n-- 商城\nfunction GameTabBarMenu:showMall(event)\n\t\nend\n\n-- 宝典\nfunction GameTabBarMenu:showCanon(event)\n\t\nend\n\n-- 设置\nfunction GameTabBarMenu:showSetUp(event)\n    local layer = GameOptions.new()\n    g_mainScene:getGameInfoUIController():addBigMenu(layer)\nend\n\nfunction GameTabBarMenu:hideGameTabBarMenu()\n    self:stopAllActions()\n    local moveTo = cc.MoveTo:create(0.3, cc.p(display.width-960, -100))\n    local easeBack = cc.EaseSineOut:create(moveTo)\n    self:runAction(easeBack)\nend\n\nfunction GameTabBarMenu:showGameTabBarMenu()\n    self:stopAllActions()\n    local moveTo = cc.MoveTo:create(0.3, cc.p(display.width-960, 0))\n    local easeBack = cc.EaseSineOut:create(moveTo)\n    self:runAction(easeBack)\nend\n\nreturn GameTabBarMenu"
  },
  {
    "path": "源代码/2.2.5/mir9/scripts/app/game_ui/LAlertView.lua",
    "content": "local LAlertView = class(\"LAlertView\", function()\n    return CCScale9Sprite:create(\"ui/alert_backGround.png\")\nend)\n\nfunction LAlertView:ctor(title, messageText)\n    self.m_title = title\n    self.m_messageText = messageText\n    self.m_callBack = nil\n    \n    self.m_arrBtn = {}\n    \n    self:init()\nend\n\nfunction LAlertView:init()\n    local szContent = self:getContentSize()\n    \n    local title = CCLabelTTF:create(self.m_title, \"Helvetica-Bold\", 22)\n    title:setAnchorPoint(0.5, 1)\n    title:setPosition(szContent.width/2, szContent.height-52)\n    self:addChild(title)\n    \n    local message = CCLabelTTF:create(self.m_messageText, \"Helvetica-Bold\", 20)\n    message:setPosition(cc.PointAdd(cc.p(szContent.width/2, szContent.height/2), cc.p(0, 30)))\n    self:addChild(message)\n    \n    return true\nend\n\nfunction LAlertView:addButtonWithTitle(btnTitle)\n    local PUSH_BUTTON_IMAGES = {\n        normal = \"ui/btn_normal.png\",\n        pressed = \"ui/btn_selected.png\",\n        disabled = \"ui/btn_normal.png\",\n    }\n\n    local btn = cc.ui.UIPushButton.new(PUSH_BUTTON_IMAGES, {scale9 = true})\n    btn:setAnchorPoint(0.5, 0.5)\n    btn:setButtonSize(140, 50)\n    btn:setButtonLabel(\"normal\", ui.newTTFLabel({\n        text = btnTitle,\n        fontName = \"Helvetica-Bold\",\n        size = 25\n    }))\n    btn:onButtonClicked(handler(self, self.onBtn_Clicked))\n    btn:setTag(0xff+#self.m_arrBtn)\n    table.insert(self.m_arrBtn, btn)\nend\n\nfunction LAlertView:show(callFunc)\n    self.m_callBack = callFunc\n\n    if (#self.m_arrBtn > 2) then\n        self:setPreferredSize(cc.size((#self.m_arrBtn + 1) * 150, self:getContentSize().height))\n    end\n    \n    if (#self.m_arrBtn == 0) then\n        local PUSH_BUTTON_IMAGES = {\n            normal = \"ui/btn_normal.png\",\n            pressed = \"ui/btn_selected.png\",\n            disabled = \"ui/btn_normal.png\",\n        }\n\n        local btn = cc.ui.UIPushButton.new(PUSH_BUTTON_IMAGES, {scale9 = true})\n        btn:setAnchorPoint(0.5, 0.5)\n        btn:setButtonSize(130, 43)\n        btn:setButtonLabel(\"normal\", ui.newTTFLabel({\n            text = \"确定\",\n            fontName = \"Helvetica-Bold\",\n            size = 25\n        }))\n        btn:onButtonClicked(handler(self, self.onBtn_Clicked))\n        btn:setTag(0xff)\n        btn:setPosition(self:getContentSize().width/2, 100)\n        self:addChild(btn)\n    else\n        for i = 1, #self.m_arrBtn do\n            local btn = self.m_arrBtn[i]\n            local x = self:getContentSize().width / (#self.m_arrBtn+1) * (i + 1)\n            btn:setPosition(x, 100)\n            self:addChild(btn)\n        end\n    end\n    self:setPosition(display.cx, display.cy)\n    CCDirector:sharedDirector():getRunningScene():addChild(self, 0xffff)\nend\n\nfunction LAlertView:onBtn_Clicked(event)\n    local btn = event.target\n    \n    if (self.m_callBack) then\n        self.m_callBack(btn:getTag()-0xff)\n    end\n    self:removeFromParent()\nend\n\nreturn LAlertView"
  },
  {
    "path": "源代码/2.2.5/mir9/scripts/app/game_ui/LOperationMenu.lua",
    "content": "local MapPoint = require(\"app.map.MapPoint\")\nlocal ProgressAutomatic = require(\"app.game_ui.ProgressAutomatic\")\nlocal GameLoading = require(\"app.scenes.GameLoading\")\n\nlocal TAG_PROGRESS_SKILL = 0xfffff\n\nlocal LOperationMenu = class(\"LOperationMenu\", function()\n    return display.newLayer()\nend)\n\nfunction LOperationMenu:ctor()\n    self.m_isHangUpAttack = false\n    self.m_attackMethods = 1001\n    self.m_moveMethods = 0\n    self.m_direction = nil\n    self.m_currProgress = nil\n    self.m_operation = nil\n    self:init()\nend\n\nfunction LOperationMenu:init()\n    self.m_operation = CCNode:create()\n    self.m_operation:setPosition(display.width, 0)\n    self:addChild(self.m_operation)\n    \n    local PUSH_BUTTON_IMAGES = {\n        normal = \"ui/attack_normal.png\",\n        pressed = \"ui/attack_selected.png\",\n        disabled = \"ui/attack_normal.png\",\n    }\n\n    local szBtn = cc.size(90, 90)\n    local ptBtn = cc.PointAdd(cc.p(10, 10), cc.p(szBtn.width/2, szBtn.height/2))\n    \n    self.m_btnCommonAttack = cc.ui.UIPushButton.new(PUSH_BUTTON_IMAGES, {scale9 = true})\n    self.m_btnCommonAttack:setAnchorPoint(0.5, 0.5)\n    self.m_btnCommonAttack:setButtonSize(szBtn.width, szBtn.height)\n    self.m_btnCommonAttack:setPosition(-ptBtn.x, ptBtn.y)\n    self.m_btnCommonAttack:onButtonClicked(handler(self, self.commonAttack))\n    self.m_operation:addChild(self.m_btnCommonAttack)\n    \n    PUSH_BUTTON_IMAGES = {\n        normal = \"ui/groove_normal.png\",\n        pressed = \"ui/groove_selected.png\",\n        disabled = \"ui/groove_normal.png\",\n    }\n    \n    szBtn = cc.size(75, 75)\n    ptBtn = {\n        cc.PointAdd(cc.p(120, 10), cc.p(szBtn.width/2, szBtn.height/2)),\n        cc.PointAdd(cc.p(110, 110), cc.p(szBtn.width/2, szBtn.height/2)),\n        cc.PointAdd(cc.p(10, 120), cc.p(szBtn.width/2, szBtn.height/2))\n    }\n    \n    self.m_btnSkillAttack = {}\n    for i = 1, 3 do\n        self.m_btnSkillAttack[i] = cc.ui.UIPushButton.new(PUSH_BUTTON_IMAGES, {scale9 = true})\n        self.m_btnSkillAttack[i]:setAnchorPoint(0.5, 0.5)\n        self.m_btnSkillAttack[i]:setButtonSize(szBtn.width, szBtn.height)\n--        self.m_btnSkillAttack[i].getButtonSize = function() -- UIPushButton:getContentSize()获取不了按钮大小\n--            return cc.size(self.m_btnSkillAttack[i].scale9Size_[1], self.m_btnSkillAttack[i].scale9Size_[2])\n--        end\n        self.m_btnSkillAttack[i]:setPosition(-ptBtn[i].x, ptBtn[i].y)\n        self.m_btnSkillAttack[i]:onButtonClicked(handler(self, self.skillAttack))\n        self.m_operation:addChild(self.m_btnSkillAttack[i], 0, 0)\n    end\n    \n    szBtn = cc.size(60, 60)\n    ptBtn = cc.PointAdd(cc.p(210, 90), cc.p(szBtn.width/2, szBtn.height/2))\n    \n    self.m_btnDrugs = cc.ui.UIPushButton.new(PUSH_BUTTON_IMAGES, {scale9 = true})\n    self.m_btnDrugs:setAnchorPoint(0.5, 0.5)\n    self.m_btnDrugs:setButtonSize(szBtn.width, szBtn.height)\n    self.m_btnDrugs:setPosition(-ptBtn.x, ptBtn.y)\n    self.m_btnDrugs:onButtonClicked(handler(self, self.useDrugs))\n    self.m_operation:addChild(self.m_btnDrugs)\n    \n    szBtn = cc.size(60, 60)\n    ptBtn = cc.PointAdd(cc.p(10, 215), cc.p(szBtn.width/2, szBtn.height/2))\n    \n    self.m_btnDelivery = cc.ui.UIPushButton.new(PUSH_BUTTON_IMAGES, {scale9 = true})\n    self.m_btnDelivery:setAnchorPoint(0.5, 0.5)\n    self.m_btnDelivery:setButtonSize(szBtn.width, szBtn.height)\n    self.m_btnDelivery:setPosition(-ptBtn.x, ptBtn.y)\n    self.m_btnDelivery:onButtonClicked(handler(self, self.useDeliveryProp))\n    self.m_operation:addChild(self.m_btnDelivery, 0, 0)\n    \n    PUSH_BUTTON_IMAGES = {\n        normal = \"ui/direction_head.png\",\n        pressed = \"ui/direction_head.png\",\n        disabled = \"ui/direction_head.png\",\n    }\n    \n    self.m_btnHangUp = cc.ui.UIPushButton.new(PUSH_BUTTON_IMAGES, {scale9 = true})\n    self.m_btnHangUp:setAnchorPoint(0.5, 0.5)\n    self.m_btnHangUp:setButtonSize(95, 95)\n    self.m_btnHangUp:setPosition(display.width-250, display.height-100)\n    self.m_btnHangUp:setButtonLabel(\"normal\", ui.newTTFLabel({\n        text = \"自动攻击\",\n        fontName = \"fonts/Marker Felt.ttf\",\n        size = 15\n    }))\n    self.m_btnHangUp:onButtonClicked(handler(self, self.hangUpAttack))\n    self:addChild(self.m_btnHangUp, 0, 0xfffffff0)\n    \n    local btnMoveMethods = cc.ui.UIPushButton.new(PUSH_BUTTON_IMAGES, {scale9 = true})\n    btnMoveMethods:setAnchorPoint(0.5, 0.5)\n    btnMoveMethods:setButtonSize(95, 95)\n    btnMoveMethods:setPosition(100, display.height-200)\n    btnMoveMethods:setButtonLabel(\"normal\", ui.newTTFLabel({\n        text = \"取消跑步\",\n        fontName = \"fonts/Marker Felt.ttf\",\n        size = 15\n    }))\n    btnMoveMethods:onButtonClicked(handler(self, self.moveMethods))\n    self:addChild(btnMoveMethods)\n    \n    --self:addSkillIcon(1, 1002)\n\tself:addSkillIcon(2, 2007)\n\tself:addSkillIcon(3, 2005)\n    return true\nend\n\nfunction LOperationMenu:getSkillAttackBtn(number)\n    if (number > 3 or number <= 0) then\n        return nil\n    end\n    \n    return self.m_btnSkillAttack[number]\nend\n\nfunction LOperationMenu:addSkillIcon_(btn, skillNumber)\n    g_player:subAttackSkill(btn:getTag())\n    \n    if (btn:getChildByTag(TAG_PROGRESS_SKILL) == self.m_currProgress) then\n        self.m_currProgress = nil\n    end\n    btn:removeChildByTag(TAG_PROGRESS_SKILL)\n\n    for i = 1, 3 do\n        if (skillNumber == self.m_btnSkillAttack[i]:getTag()) then\n            if (self.m_btnSkillAttack[i]:getChildByTag(TAG_PROGRESS_SKILL) == self.m_currProgress) then\n                self.m_currProgress = nil\n            end\n            self.m_btnSkillAttack[i]:removeChildByTag(TAG_PROGRESS_SKILL)\n            self.m_btnSkillAttack[i]:setTag(0)\n        end\n    end\n    \n    local str = string.format(\"ui/skill/skill_%d.png\", skillNumber)\n    local texture = CCTextureCache:sharedTextureCache():addImage(str)\n    if (texture) then\n        local progressTimer = ProgressAutomatic.new(CCSprite:createWithTexture(texture))\n        progressTimer:setType(kCCProgressTimerTypeRadial)\n        --local szBtn = btn:getContentSize()\n        local szBtn = cc.size(0, 0)\n        progressTimer:setPosition(szBtn.width/2, szBtn.height/2)\n        btn:addChild(progressTimer, 1, TAG_PROGRESS_SKILL)\n        progressTimer:setPercentage(100)\n\n        progressTimer:setScale(1.8)\n    end\n    \n    btn:setTag(skillNumber)\n    \n    g_player:addAttackSkill(skillNumber)\nend\n\nfunction LOperationMenu:addSkillIcon(btnNumber, skillNumber)\n    local btn = self.m_btnSkillAttack[btnNumber]\n    self:addSkillIcon_(btn, skillNumber)\nend\n\nfunction LOperationMenu:addDrugs(drugsNumber)\n    self.m_drugsBtn:removeChildByTag(TAG_PROGRESS_SKILL)\n    \n    local str = string.format(\"ui/skill/skill_%d.png\", drugsNumber)\n    local sprite = display(str)\n    local szBtn = self.m_btnDrugs:getContentSize()\n    sprite:setPosition(szBtn.width / 2, szBtn.height / 2)\n    self.m_btnDrugs:addChild(sprite, 1, TAG_PROGRESS_SKILL)\n    sprite:setScale(1.2)\n    \n    self.m_btnDrugs:setTag(drugsNumber)\nend\n\n-- 普通攻击按钮\nfunction LOperationMenu:commonAttack(event)\n    self.m_currProgress = nil\n    self.m_attackMethods = 1001\n    self:attack()\nend\n\n-- 技能攻击按钮\nfunction LOperationMenu:skillAttack(event)\n    local btn = event.target\n    if (btn:getTag() == 0) then\n        return\n    end\n    \n    self.m_currProgress = btn:getChildByTag(TAG_PROGRESS_SKILL)\n    self.m_attackMethods = btn:getTag()\n    self:attack()\nend\n\n-- 使用药物疗伤按钮\nfunction LOperationMenu:useDrugs(event)\n    g_player:bloodReturn(5000)\n    self.m_btnDrugs:removeChildByTag(TAG_PROGRESS_SKILL)\n    self.m_btnDrugs:setTag(0)\nend\n\n-- 使用传送卷按钮\nfunction LOperationMenu:useDeliveryProp(event)\n    local r = math.random()\n\n    if (r == 1) then\n        r = 0\n    end\n    \n    GameLoading.runGameLoading(100, r * 4 + 1)\n    --g_mainScene:replaceBgMap(100, r * 4 + 1)\nend\n\nfunction LOperationMenu:skillAttackCooling(progress)\n    \nend\n\n-- 攻击\nfunction LOperationMenu:attack()\n    if (not g_mainScene:getSelected()) then\n        g_mainScene:showSelected(g_player:getAgainstMeOfFirst())\n    end\n    \n    local attackMonomerMajor = g_mainScene:getSelected()\n    \n    if (not attackMonomerMajor) then\n        local ptPlayer = MapPoint.new(cc.p(g_player:getPosition()))\n        local array = {}\n        local mapEnemy = g_mainScene:getEnemyDictionary()\n        if (mapEnemy) then\n            for key, enemy in pairs(mapEnemy) do\n                local ptEnemy = MapPoint.new(cc.p(enemy:getPosition()))\n                if (ptPlayer:getDistance(ptEnemy) <= g_player:getVisualRange()) then\n                    table.insert(array, enemy)\n                end\n            end\n        end\n        \n        for i = 1, #array do\n            local enemy = array[i]\n            \n            if (not attackMonomerMajor) then\n                attackMonomerMajor = enemy\n            else\n                local ptEnemy = MapPoint.new(cc.p(enemy:getPosition()))\n                local ptAttackMonomer = MapPoint.new(cc.p(attackMonomerMajor:getPosition()))\n                if (ptPlayer:getDistance(ptEnemy) < ptPlayer:getDistance(ptAttackMonomer)) then\n                    attackMonomerMajor = enemy\n                end\n            end\n        end\n        \n        g_mainScene:showSelected(attackMonomerMajor)\n    end\n    \n    if (attackMonomerMajor) then\n        g_player:followAttackAndSetAttackMethods(attackMonomerMajor, self.m_attackMethods)\n    end\nend\n\nfunction LOperationMenu:hangUpAttack(event)\n    local flag = false\n    local mapEnemy = g_mainScene:getEnemyDictionary()\n    if (mapEnemy) then\n        for key, enemy in pairs(mapEnemy) do\n            local ptPlayer = MapPoint.new(cc.p(g_player:getPosition()))\n            local ptEnemy = MapPoint.new(cc.p(enemy:getPosition()))\n            if (ptPlayer:getDistance(ptEnemy) <= g_player:getVisualRange()) then\n                flag = true\n                break\n            end\n        end\n    end\n    \n    if (not flag) then\n        return \n    end\n    \n    if (self.m_isHangUpAttack) then\n        self.m_isHangUpAttack = false\n        self.m_btnHangUp:setButtonLabelString(\"normal\", \"自动攻击\")\n    else\n        self.m_isHangUpAttack = true\n        self:attack()\n        self.m_btnHangUp:setButtonLabelString(\"normal\", \"停止自动\")\n    end\nend\n\nfunction LOperationMenu:intelligentSearch()\n    if (self.m_isHangUpAttack) then\n        local array = CCArray:create()\n        array:addObject(cc.DelayTime:create(0.1))\n        array:addObject(cc.CallFunc:create(handler(self, self.attack)))\n        local sequence = cc.Sequence:create(array)\n        self:runAction(sequence)\n        \n        if (g_player:getBloodCap()/4 >= g_player:getBlood()) then\n            g_player:bloodReturn(g_player:getBloodCap())\n        end\n    end\nend\n\nfunction LOperationMenu:cancelHangUP()\n    if (self.m_isHangUpAttack) then\n        self:hangUpAttack(nil)\n    end\nend\n\nfunction LOperationMenu:moveMethods(event)\n    local btn = event.target\n    \n    if (self.m_moveMethods == 0) then\n        self.m_moveMethods = 1\n        btn:setButtonLabelString(\"normal\", \"取消步行\")\n    elseif (self.m_moveMethods == 1) then\n        self.m_moveMethods = 2\n        btn:setButtonLabelString(\"normal\", \"取消寻路\")\n    elseif (self.m_moveMethods == 2) then\n        self.m_moveMethods = 0\n        btn:setButtonLabelString(\"normal\", \"取消跑步\")\n    end\nend\n\nfunction LOperationMenu:hideOperationMenu()\n--    if (self.m_direction) then\n--        self.m_direction:setTouchEnabled(false)\n--        self.m_direction:stopAllActions()\n--        \n--        local moveTo = cc.MoveTo:create(0.3, cc.p(-120, 120))\n--        local scaleTo = cc.ScaleTo:create(0.3, 0.8)\n--        local easeBack = cc.EaseSineOut:create(cc.Spawn:create(moveTo, scaleTo, nil))\n--        self.m_direction:runAction(easeBack)\n--    end\n    \n    if (self.m_operation) then\n        self.m_operation:stopAllActions()\n        \n        local moveTo2 = cc.MoveTo:create(0.3, cc.p(display.width+300, 0))\n        local scaleTo2 = cc.ScaleTo:create(0.3, 1.0)\n        local array = CCArray:create()\n        array:addObject(moveTo2)\n        array:addObject(scaleTo2)\n        local easeBack2 = cc.EaseSineOut:create(cc.Spawn:create(array))\n        self.m_operation:runAction(easeBack2)\n    end\nend\n\nfunction LOperationMenu:showOperationMenu()\n--    if (self.m_direction) then\n--        self.m_direction:setTouchEnabled(true)\n--        self.m_direction:stopAllActions()\n--        \n--        local moveTo = cc.MoveTo:create(0.3, cc.p(120, 120))\n--        local scaleTo = cc.ScaleTo:create(0.3, 0.8)\n--        local easeBack = cc.EaseSineOut:create(cc.Spawn:create(moveTo, scaleTo, nil))\n--        self.m_direction:runAction(easeBack)\n--    end\n    \n    if (self.m_operation) then\n        self.m_operation:stopAllActions()\n        \n        local moveTo2 = cc.MoveTo:create(0.3, cc.p(display.width, 0))\n        local scaleTo2 = cc.ScaleTo:create(0.3, 1.0)\n        local array = CCArray:create()\n        array:addObject(moveTo2)\n        array:addObject(scaleTo2)\n        local easeBack2 = cc.EaseSineOut:create(cc.Spawn:create(array))\n        self.m_operation:runAction(easeBack2)\n    end\nend\n\nfunction LOperationMenu:joinEditState()\n    if (self.m_operation) then\n        self.m_operation:setPositionY(100)\n        local moveTo2 = cc.MoveTo:create(0.3, cc.p(display.width, 100))\n        local scaleTo2 = cc.ScaleTo:create(0.3, 1.0)\n        local array = CCArray:create()\n        array:addObject(moveTo2)\n        array:addObject(scaleTo2)\n        local easeBack2 = cc.EaseSineOut:create(cc.Spawn:create(array))\n        self.m_operation:runAction(easeBack2)\n    end\nend\n\nfunction LOperationMenu:getDrugsBtn()\n    return self.m_btnDrugs\nend\n\nfunction LOperationMenu:getDeliveryBtn()\n    return self.m_btnDelivery\nend\n\nfunction LOperationMenu:getCurrProgress()\n    return self.m_currProgress\nend\n\nfunction LOperationMenu:getMoveMethods()\n    return self.m_moveMethods\nend\n\nreturn LOperationMenu"
  },
  {
    "path": "源代码/2.2.5/mir9/scripts/app/game_ui/MapThumbnailLayer.lua",
    "content": "local MapPoint = require(\"app.map.MapPoint\")\n\nlocal centerPoint = cc.p(72, 93)\nlocal lenght = 60\nlocal scale = 1000\n\nlocal function createIndicator(size)\n    return display.newRect(size, size, {color = ccc4f(255,255,255,255), fill = true})\nend\n\nlocal MapThumbnailScrollView = class(\"MapThumbnailScrollView\", cc.ui.UIScrollView)\n\nfunction MapThumbnailScrollView:ctor(params)\n    MapThumbnailScrollView.super.ctor(self, params)\n    self.m_rcView = params.viewRect\n    self.m_bIsMoved = false\n    self.m_beginPoint = cc.p(0, 0)\n    self:initWithMap()\nend\n\nfunction MapThumbnailScrollView:initWithMap()\n    self:setAnchorPoint(0, 0)\n    self:setBounceable(false)\n    \n    local texture = g_mainScene:getCurrBgMap():getSmallMap():getTexture()\n    self.m_scrollNode = CCSprite:createWithTexture(texture)\n    self.m_scrollNode:setAnchorPoint(0, 0)\n    self.m_scrollNode:setPosition(0, 0)\n    self:addScrollNode(self.m_scrollNode)\n    \n    self.m_pEndPoint = createIndicator(8)\n    self.m_pEndPoint:setLineColor(ccc4f(255,255,0,255))\n    self.m_scrollNode:addChild(self.m_pEndPoint)\n    self.m_pEndPoint:setPosition(-100, -100)\n    \n    local blink = CCBlink:create(0.5, 1)\n    local repeatForever = CCRepeatForever:create(blink)\n    self.m_pEndPoint:runAction(repeatForever)\n    \n    self.m_playerIndicator = display.newSprite(\"ui/self_indicator.png\")\n    self.m_scrollNode:addChild(self.m_playerIndicator)\n\n    local x = g_player:getPositionX() * self.m_scrollNode:getContentSize().width / g_mainScene:getCurrBgMap():getBgSize().width\n    local y = g_player:getPositionY() * self.m_scrollNode:getContentSize().height / g_mainScene:getCurrBgMap():getBgSize().height\n    x = x - self.m_rcView.width / 2\n    y = y - self.m_rcView.height / 2\n    x = math.min(x, self.m_scrollNode:getContentSize().width - self.m_rcView.width)\n    x = math.max(x, 0)\n    y = math.min(y, self.m_scrollNode:getContentSize().height - self.m_rcView.height)\n    y = math.max(y, 0)\n    self.m_scrollNode:setPosition(-x, -y)\n    \n    self:scheduleUpdate()\nend\n\nfunction MapThumbnailScrollView:update_(dt)\n    MapThumbnailScrollView.super.update_(self, dt)\n    \n    local x = g_player:getPositionX() * self.m_scrollNode:getContentSize().width / g_mainScene:getCurrBgMap():getBgSize().width\n    local y = g_player:getPositionY() * self.m_scrollNode:getContentSize().height / g_mainScene:getCurrBgMap():getBgSize().height\n    self.m_playerIndicator:setPosition(x, y)\nend\n\nfunction MapThumbnailScrollView:onTouch_(event)\n    MapThumbnailScrollView.super.onTouch_(self, event)\n    \n    if \"began\" == event.name and not self:isTouchInViewRect(event) then\n        return false\n    end\n\n    if event.name == \"began\" then\n        local bRet = self:onTouchBegan(event)\n        self:setTouchSwallowEnabled(bRet)\n        return bRet\n    elseif event.name == \"moved\" then\n        self:onTouchMoved(event)\n    elseif event.name == \"ended\" then\n        self:onTouchEnded(event)\n    elseif event.name == \"cancel\" then\n        self:onTouchCancelled(event)\n    end\nend\n\nfunction MapThumbnailScrollView:onTouchBegan(event)\n    self.m_beginPoint = cc.p(event.x, event.y)\n    return true\nend\n\nfunction MapThumbnailScrollView:onTouchMoved(event)\n    local point = cc.p(event.x, event.y)\n    if (cc.PointDistance(self.m_beginPoint, point) < 5) then\n        self.m_bIsMoved = true\n    end\nend\n\nfunction MapThumbnailScrollView:onTouchEnded(event)\n    if (self.m_bIsMoved) then\n        self.m_bIsMoved = false\n        return\n    end\n\n    local point = cc.p(event.x, event.y)\n    local point = self.m_scrollNode:convertToNodeSpace(point)\n    self.m_pEndPoint:setPosition(point)\n    local x = point.x * g_mainScene:getCurrBgMap():getBgSize().width / self.m_scrollNode:getContentSize().width\n    local y = point.y * g_mainScene:getCurrBgMap():getBgSize().height / self.m_scrollNode:getContentSize().height\n        \n    g_player:goTo(MapPoint.new(cc.p(x, y)))\nend\n\nlocal MapThumbnailLayer = class(\"MapThumbnailLayer\", function()\n    return display.newLayer()\nend)\n\nfunction MapThumbnailLayer:ctor()\n    local bg = display.newSprite(\"ui/bg_map_layer.png\")\n    bg:setPosition(display.cx, display.cy)\n    self:addChild(bg)\n    \n    local bound = cc.rect(0, 0, 600, 480)\n    self.m_nMap = MapThumbnailScrollView.new({viewRect = bound})\n    self.m_nMap:setPosition(43, 43)\n    bg:addChild(self.m_nMap)\n    \n    local szBg = bg:getContentSize()\n    local szBtn = cc.size(57, 58)\n    \n    local PUSH_BUTTON_IMAGES = {\n        normal = \"ui/closed_normal.png\",\n        pressed = \"ui/closed_selected.png\",\n        disabled = \"ui/closed_normal.png\",\n    }\n    \n    local btn = cc.ui.UIPushButton.new(PUSH_BUTTON_IMAGES, {scale9 = true})\n    btn:setButtonSize(szBtn.width, szBtn.height)\n    local point = cc.PointAdd(cc.p(bg:getPosition()), cc.p(szBg.width/2, szBg.height/2))\n    point = cc.PointSub(point, cc.p(szBtn.width/2, szBtn.height/2))\n    btn:setAnchorPoint(0.5, 0.5)\n    btn:setPosition(point)\n    btn:onButtonClicked(handler(self, self.onBtn_Close))\n    self:addChild(btn)\nend\n\nfunction MapThumbnailLayer:onBtn_Close(event)\n    self:removeFromParent()\nend\n\n\n\nlocal MapThumbnailMenu = class(\"MapThumbnailMenu\", function()\n    return display.newSprite(\"ui/mapThumbnail.png\")\nend)\n\nfunction MapThumbnailMenu:ctor()\n    self.m_mapEnemySp = {}\n    self.m_arrEnemyKey = {}\n\n    local bg = display.newSprite(\"ui/bg_mapThumbnail.png\")\n    bg:setAnchorPoint(0, 0)\n    self:addChild(bg, -2)\n\n    self.m_playerIndicator = createIndicator(4)\n    self.m_playerIndicator:setPosition(centerPoint)\n    self:addChild(self.m_playerIndicator, -1)\n\n    self.m_pCoordinateTTF = CCLabelTTF:create(\"\", \"Helvetica-Bold\", 12)\n    self.m_pCoordinateTTF:setPosition(centerPoint.x, 16)\n    self:addChild(self.m_pCoordinateTTF)\n\n    self:addNodeEventListener(cc.NODE_TOUCH_EVENT, function(event)\n        if event.name == \"began\" then\n            local bRet = self:onTouchBegan(event)\n            self:setTouchSwallowEnabled(bRet)\n            return bRet\n        elseif event.name == \"moved\" then\n            self:onTouchMoved(event)\n        elseif event.name == \"ended\" then\n            self:onTouchEnded(event)\n        elseif event.name == \"cancel\" then\n            self:onTouchCancelled(event)\n        end\n    end)\n    self:setTouchEnabled(true)\n    \n    self:addNodeEventListener(cc.NODE_ENTER_FRAME_EVENT, function(...)\n        self:update_(...)\n    end)\n    self:scheduleUpdate()\nend\n\nfunction MapThumbnailMenu:update_(dt)\n    local mapEnemy = g_mainScene:getEnemyDictionary()\n\n    if (not mapEnemy) then\n        return\n    end\n\n    for i = 1, #self.m_arrEnemyKey do\n        local key = self.m_arrEnemyKey[i]\n        local enemy = mapEnemy[key]\n        if (not enemy) then\n            local enemyIndicator = self.m_mapEnemySp[key]\n            self.m_mapEnemySp[key] = nil\n            enemyIndicator:removeFromParent()\n        else\n            local distance = cc.PointDistance(cc.p(g_player:getPosition()), cc.p(enemy:getPosition()))\n            if (distance > scale) then\n                local enemyIndicator = self.m_mapEnemySp[key]\n                self.m_mapEnemySp[key] = nil\n                enemyIndicator:removeFromParent()\n            end             \n        end\n    end\n    self.m_arrEnemyKey = {}\n    for key, enemy in pairs(mapEnemy) do\n        local distance = cc.PointDistance(cc.p(g_player:getPosition()), cc.p(enemy:getPosition()))\n        if (distance <= scale) then\n            table.insert(self.m_arrEnemyKey, key)\n            local distanceX = enemy:getPositionX() - g_player:getPositionX()\n            local distanceY = enemy:getPositionY() - g_player:getPositionY()\n            local x = lenght * distanceX/scale + centerPoint.x\n            local y = lenght * distanceY/scale + centerPoint.y\n            local enemyIndicator = self.m_mapEnemySp[key]\n            if (not enemyIndicator) then\n                enemyIndicator = createIndicator(2)\n                enemyIndicator:setLineColor(ccc4f(255,0,0,255))\n                self:addChild(enemyIndicator, -1)\n                self.m_mapEnemySp[key] = enemyIndicator\n            end\n            enemyIndicator:setPosition(x, y)\n        end\n    end\n    local point = cc.p(g_player:getPositionX()/10, g_player:getPositionY()/10)\n    local str = string.format(\"X:%03d     Y:%03d\", point.x, point.y)\n    self.m_pCoordinateTTF:setString(str)\nend\n\nfunction MapThumbnailMenu:onTouchBegan(event)\n    local point = cc.p(event.x, event.y)\n    point = self:convertToNodeSpace(point)\n\n    if (cc.PointDistance(point, centerPoint) <= lenght) then\n        return true\n    end\n\n    return false\nend\n\nfunction MapThumbnailMenu:onTouchMoved(event)\n\nend\n\nfunction MapThumbnailMenu:onTouchEnded(event)\n    if (g_mainScene:getGameInfoUIController():getChildByTag(0xff00f)) then\n        return\n    end\n    local map = MapThumbnailLayer.new()\n    g_mainScene:getGameInfoUIController():addChild(map, 0, 0xff00f)\nend\n\nfunction MapThumbnailMenu:onTouchCancelled(event)\n\nend\n\nreturn MapThumbnailMenu"
  },
  {
    "path": "源代码/2.2.5/mir9/scripts/app/game_ui/ProgressAutomatic.lua",
    "content": "local scheduler = require(\"framework.scheduler\")\n\nlocal ProgressAutomatic = class(\"ProgressAutomatic\", function(sprite)\n    return CCProgressTimer:create(sprite)\nend)\n\nfunction ProgressAutomatic:ctor(sprite)\n    local sprite2 = CCSprite:createWithTexture(sprite:getTexture())\n    sprite2:setColor(ccc3(100, 100, 100))\n    local szContent = self:getContentSize()\n    sprite2:setPosition(szContent.width/2, szContent.height/2)\n    self:addChild(sprite2, -1)\n    \n    self:setNodeEventEnabled(true)\nend\n\nfunction ProgressAutomatic:onExit()\n    if (self.handle) then\n        scheduler.unscheduleGlobal(self.handle)\n        self.handle = nil\n    end\nend\n\nfunction ProgressAutomatic:RunCoolingAction(fDelay)\n    if (self:getPercentage() < 100.0) then\n        return\n    end\n\n    self:setPercentage(0)\n    self.m_fInterval = 100 / (fDelay * 60)\n    if (self.handle) then\n        scheduler.unscheduleGlobal(self.handle)\n        self.handle = nil\n    end\n    self.handle = scheduler.scheduleGlobal(handler(self, self.updateCoolingAction), 0)\nend\n\nfunction ProgressAutomatic:updateCoolingAction(dt)\n    local fPercentage = self:getPercentage()\n    local percentage = fPercentage + self.m_fInterval\n    self:setPercentage(percentage)\n    if (percentage >= 100.0) then\n        if (self.handle) then\n            scheduler.unscheduleGlobal(self.handle)\n            self.handle = nil\n        end\n    end\nend\n\nfunction ProgressAutomatic:RunCoolingNotAction(fDelay)\n    if (self:getPercentage() < 100.0) then\n        return\n    end\n    \n    self:setPercentage(0)\n\n    local delayTime = cc.DelayTime:create(fDelay)\n    local callFunc = cc.CallFunc:create(handler(self, self.setCoolingFalse))\n    local sequence = cc.Sequence:create(delayTime, callFunc, nil)\n    self:runAction(sequence)\nend\n\nfunction ProgressAutomatic:setCoolingFalse()\n    self:setPercentage(100)\nend\n\nreturn ProgressAutomatic"
  },
  {
    "path": "源代码/2.2.5/mir9/scripts/app/game_ui/PropColumn.lua",
    "content": "local MapPoint = require(\"app.map.MapPoint\")\nlocal BgMap = require(\"app.map.BgMap\")\nlocal PropIconShow = require(\"app.prop_system.PropIconShow\")\n\nlocal GRID_WIDTH = 39\nlocal GRID_HEIGHT = 35\nlocal PROP_X = 88\nlocal PROP_Y = 80\nlocal COL = 10\nlocal ROW = 6\n\nlocal PropColumnMenu = class(\"PropColumnMenu\", function()\n    return display.newLayer()\nend)\n\nfunction PropColumnMenu:ctor()\n    self.m_className = \"PropColumnMenu\"\n    self.m_editProp = nil\n    self.m_propVec = {}\n    self:init()\nend\n\nfunction PropColumnMenu:onEnter()\n    self:updatePropVecPoint()\nend\n\nfunction PropColumnMenu:init()\n    local bg = display.newSprite(\"ui/prop_column.png\")\n    self:addChild(bg)\n    \n    self.m_propColumn = CCLayerColor:create(ccc4(255, 255, 255, 0), GRID_WIDTH*COL, GRID_HEIGHT*ROW)\n    self.m_propColumn:setContentSize(GRID_WIDTH*COL, GRID_HEIGHT*ROW)\n    self.m_propColumn:setPosition(PROP_X, PROP_Y)\n    bg:addChild(self.m_propColumn)\n    \n    local ptBg = cc.p(bg:getPosition())\n    local szBg = bg:getContentSize()\n    local szBtn = cc.size(57, 58)\n    \n    local PUSH_BUTTON_IMAGES = {\n        normal = \"ui/closed_normal.png\",\n        pressed = \"ui/closed_selected.png\",\n        disabled = \"ui/closed_normal.png\",\n    }\n\n    local btn = cc.ui.UIPushButton.new(PUSH_BUTTON_IMAGES, {scale9 = true})\n    btn:setButtonSize(szBtn.width, szBtn.height)\n    local ptBtn = cc.PointAdd(ptBg, cc.p(szBg.width/2, szBg.height/2))\n    ptBtn = cc.PointSub(ptBtn, cc.p(szBtn.width/2, szBtn.height/2))\n    btn:setPosition(ptBtn)\n    btn:setAnchorPoint(0.5, 0.5)\n    btn:onButtonClicked(handler(g_mainScene:getGameInfoUIController(), g_mainScene:getGameInfoUIController().removeSmallMenuAndButton))\n    self:addChild(btn)\n    \n    for i = 1, 12 do\n        self.m_propVec[i-1] = PropIconShow.new(g_propSystem:getPropInfo(i))\n        self.m_propColumn:addChild(self.m_propVec[i-1])\n    end\n\n    self:updatePropVecPoint()\n    \n    self:addNodeEventListener(cc.NODE_TOUCH_EVENT, function(event)\n        if event.name == \"began\" then\n            local bRet = self:onTouchBegan(event)\n            self:setTouchSwallowEnabled(bRet)\n            return bRet\n        elseif event.name == \"moved\" then\n            self:onTouchMoved(event)\n        elseif event.name == \"ended\" then\n            self:onTouchEnded(event)\n        elseif event.name == \"cancel\" then\n            self:onTouchCancelled(event)\n        end\n    end)\n    self:setTouchEnabled(true)\n    \n    return true\nend\n\nfunction PropColumnMenu:updatePropVecPoint()\n    for j = 0, ROW-1 do\n        for i = 0, COL-1 do\n            if (self.m_propVec[j*COL+i]) then\n                self.m_propVec[j*COL+i]:setPosition(GRID_WIDTH * (i+0.5), GRID_HEIGHT * (ROW-j-0.5))\n            end\n        end\n    end\nend\n\nfunction PropColumnMenu:getPropRect(i)\n    local rect = cc.rect(0,0,0,0)\n    local x = math.floor(i % COL)\n    local y = math.floor(i / COL)\n    rect.origin = cc.p(GRID_WIDTH * x, GRID_HEIGHT * (ROW-y-1))\n    rect.origin = self.m_propColumn:convertToWorldSpace(rect.origin)\n    rect.size = cc.size(GRID_WIDTH, GRID_HEIGHT)\n    return rect\nend\n\nfunction PropColumnMenu:getPropPoint(i)\n    local x = math.floor(i % COL)\n    local y = math.floor(i / COL)\n    return cc.p(GRID_WIDTH * (x+0.5), GRID_HEIGHT * (ROW-y-0.5))\nend\n\nfunction PropColumnMenu:propHoming(i)\n    if (i < COL*ROW and self.m_propVec[i]) then\n        local point = self:getPropPoint(i)\n        self.m_propVec[i]:setPosition(point)\n    end\nend\n\nfunction PropColumnMenu:swapProp(a, b)\n    if (a < COL*ROW and b < COL*ROW) then\n        local tmp = self.m_propVec[a]\n        self.m_propVec[a] = self.m_propVec[b]\n        self.m_propVec[b] = tmp\n    end\n    \n    self:propHoming(a)\n    self:propHoming(b)\nend\n\nfunction PropColumnMenu:onTouchBegan(event)\n    local point = cc.p(event.x, event.y)\n    \n    local rect = cc.rect(0,0,0,0)\n    rect.origin = self.m_propColumn:convertToWorldSpace(cc.p(0,0))\n    rect.size = self.m_propColumn:getContentSize()\n    \n    if (not rect:containsPoint(point)) then\n        return false\n    end\n\n    for i = 0, COL*ROW-1 do\n        if (self.m_propVec[i] and self:getPropRect(i):containsPoint(point)) then\n            self.m_propVec[i]:setVisible(false)\n            self.m_editProp = PropIconShow.new(self.m_propVec[i].m_propInfo)\n            self.m_editProp:setPosition(point)\n            g_mainScene:getGameInfoUIController():addChild(self.m_editProp)\n            self.m_editProp:setTag(i)\n            self.m_editProp:setOpacity(127)\n            break\n        end\n    end\n    \n    if (not self.m_editProp) then\n        return false\n    end\n\n    return true\nend\n\nfunction PropColumnMenu:onTouchMoved(event)\n    local point = cc.p(event.x, event.y)\n    \n    self.m_editProp:setPosition(point)\n    \n    local btn = g_mainScene:getGameInfoUIController():getOperationMenu():getDrugsBtn()\n        \n    local rect = cc.rect(0,0,0,0)\n    rect.origin = btn:convertToWorldSpace(cc.p(0,0))\n    rect.size = btn:getContentSize()\n    if (rect:containsPoint(point)) then\n        if (self.m_editProp:getOpacity() == 255) then\n            return\n        end\n        self.m_editProp:setOpacity(255)\n        btn:stopAllActions()\n        local scaleTo = cc.ScaleTo:create(0.1, 1.1)\n        btn:runAction(scaleTo)\n    else\n        if (self.m_editProp:getOpacity() == 127) then\n            return\n        end\n        self.m_editProp:setOpacity(127)\n        btn:stopAllActions()\n        local scaleTo = cc.ScaleTo:create(0.1, 1.0)\n        btn:runAction(scaleTo)\n    end\nend\n\nfunction PropColumnMenu:onTouchEnded(event)\n    local point = cc.p(event.x, event.y)\n    \n    local rect = cc.rect(0,0,0,0)\n    rect.origin = self.m_propColumn:convertToWorldSpace(cc.p(0,0))\n    rect.size = self.m_propColumn:getContentSize()\n    \n    if (rect:containsPoint(point)) then\n        point = self.m_propColumn:convertToNodeSpace(point)\n        local x = math.floor(point.x / GRID_WIDTH)\n        local y = math.floor(point.y / GRID_HEIGHT)\n        y = ROW - y - 1\n        self.m_propVec[self.m_editProp:getTag()]:setVisible(true)\n        self:swapProp(self.m_editProp:getTag(), y*COL+x)\n    else\n        if (self.m_editProp:getOpacity() == 255) then\n            g_mainScene:getGameInfoUIController():getOperationMenu():addDrugs(2001)\n            local btn = g_mainScene:getGameInfoUIController():getOperationMenu():getDrugsBtn()\n            btn:stopAllActions()\n            local scaleTo = cc.ScaleTo:create(0.1, 1.0)\n            btn:runAction(scaleTo)\n            self.m_propVec[self.m_editProp:getTag()]:removeFromParent()\n            self.m_propVec[self.m_editProp:getTag()] = nil\n        else\n            local r = math.random()\n            if (r == 1) then\n                r = 0\n            end\n            \n            local bgMap = g_mainScene:getCurrBgMap()\n            local playerPosition = MapPoint.new(cc.p(g_player:getPosition()))\n            \n            local ptZero = MapPoint.new(0, 0)\n            local point = ptZero\n            local mapVec = {}\n            local lenght = 1\n            while (true) do\n                mapVec = playerPosition:getMapPointVectorForDistance(lenght)\n                local index = 0\n                for index = 1, #mapVec do\n                    if (not g_mainScene:getMapPointForProp(mapVec[index])) then\n                        point = mapVec[index]\n                    end\n                end\n                \n                if (not point:equalsObj(ptZero)) then\n                    break\n                end\n                \n                lenght = lenght + 1 \n            end\n            \n            local show = self.m_propVec[self.m_editProp:getTag()]\n            self.m_propVec[self.m_editProp:getTag()] = nil\n            show:setVisible(true)\n            show:retain()\n            show:removeFromParent()\n            show:setPosition(point:getCCPointValue())\n            bgMap:addChild(show, BgMap.getZOrderZero(bgMap))\n            show:release()\n            show:setScale(0.8)\n\n            g_mainScene:insterMapPointForProp(show, point)\n            \n            show:setOpacity(0)\n            local fadeIn = cc.FadeIn:create(0.1)\n            local jumpBy = cc.JumpBy:create(0.3, cc.p(0, 0), 30, 1)\n            local array = CCArray:create()\n            array:addObject(fadeIn)\n            array:addObject(jumpBy)\n            local spawn = cc.Spawn:create(array)\n            show:runAction(spawn)\n        end\n    end\n    self.m_editProp:removeFromParent()\n    self.m_editProp = nil\nend\n\nfunction PropColumnMenu:onTouchCancelled(event)\n\nend\n\nreturn PropColumnMenu"
  },
  {
    "path": "源代码/2.2.5/mir9/scripts/app/game_ui/SkillTableView.lua",
    "content": "local SkillTableView = class(\"SkillTableView\", function()\n    return display.newNode()\nend)\n\nfunction SkillTableView:ctor()\n    self.m_className = \"SkillTableView\"\n    self.m_pEditingSkill = nil\n    self.m_pEditingBtn = nil\n    self.m_arrSkill = {}\n    self:init()\nend\n\nfunction SkillTableView:init()\n    self:setAnchorPoint(0.5, 0.5)\n    \n    local szBg = cc.size(450, 500)\n    local ptBg = cc.p(szBg.width/-2, szBg.height/-2)\n    local bg = CCLayerColor:create(ccc4(255, 255, 255, 127), szBg.width, szBg.height)\n    bg:setPosition(ptBg)\n    self:addChild(bg, -1)\n    \n    local title = CCLabelTTF:create(\"技能列表\", \"fonts/Marker Felt.ttf\", 40)\n    title:setPosition(szBg.width/2, szBg.height-30)\n    bg:addChild(title)\n    \n    local szBtn = cc.size(57, 58)\n    \n    local PUSH_BUTTON_IMAGES = {\n        normal = \"ui/closed_normal.png\",\n        pressed = \"ui/closed_selected.png\",\n        disabled = \"ui/closed_normal.png\",\n    }\n\n    local btn = cc.ui.UIPushButton.new(PUSH_BUTTON_IMAGES, {scale9 = true})\n    btn:setButtonSize(szBtn.width, szBtn.height)\n    local ptBtn = cc.PointAdd(ptBg, cc.p(szBg.width, szBg.height))\n    ptBtn = cc.PointSub(ptBtn, cc.p(szBtn.width/2, szBtn.height/2))\n    btn:setPosition(ptBtn)\n    btn:setAnchorPoint(0.5, 0.5)\n    btn:onButtonClicked(handler(g_mainScene:getGameInfoUIController(), g_mainScene:getGameInfoUIController().removeSmallMenuAndButton))\n    self:addChild(btn)\n    \n    self.m_lvSkill = cc.ui.UIListView.new({\n        -- bgColor = cc.c4b(200, 200, 200, 120),\n        -- bg = \"sunset.png\",\n        viewRect = cc.rect(0, 0, 420, 420),\n        direction = cc.ui.UIScrollView.DIRECTION_VERTICAL,\n        -- scrollbarImgV = \"bar.png\"\n    })\n    self.m_lvSkill:setPosition(15, 15)\n    self.m_lvSkill:setAlignment(cc.ui.UIListView.ALIGNMENT_LEFT)\n    bg:addChild(self.m_lvSkill)\n\n    -- add items\n    for i = 1, 9 do\n        local item = self.m_lvSkill:newItem()\n        \n        local fileName = string.format(\"ui/skill/skill_%d.png\", 2000 + i)\n        item:setBg(\"ui/cell.png\")\n        local content = cc.ui.UIImage.new(fileName)\n        content:setAnchorPoint(0.5, 0.5)\n        content:addNodeEventListener(cc.NODE_TOUCH_EVENT, function(event)\n            local point = cc.p(event.x, event.y)\n            if event.name == \"began\" then\n                self.m_pEditingSkill = CCSprite:createWithTexture(content:getTexture())\n                self.m_pEditingSkill:setPosition(point)\n                g_mainScene:getGameInfoUIController():addChild(self.m_pEditingSkill)\n                self.m_pEditingSkill:setTag(content:getParent():getTag())\n                self.m_pEditingSkill:setScale(1.5)\n                self.m_pEditingSkill:setOpacity(127)\n                content:setTouchSwallowEnabled(true)\n                return true\n            elseif event.name == \"moved\" then\n                if (not self.m_pEditingSkill) then\n                    return\n                end\n\n                self.m_pEditingSkill:setPosition(point)\n\n                if (self.m_pEditingBtn) then\n                    local rect = cc.rect(0,0,0,0)\n                    rect.origin = self.m_pEditingBtn:convertToWorldSpace(cc.p(0,0))\n                    rect.size = self.m_pEditingBtn:getContentSize()\n                    if (not rect:containsPoint(point)) then\n                        self.m_pEditingSkill:setOpacity(127)\n                        self.m_pEditingBtn:stopAllActions()\n                        local scaleTo = cc.ScaleTo:create(0.1, 1.0)\n                        self.m_pEditingBtn:runAction(scaleTo)\n                        self.m_pEditingBtn = nil\n                    end\n                end\n\n                if (not self.m_pEditingBtn) then\n                    for i = 1, 3 do\n                        local btn = g_mainScene:getGameInfoUIController():getOperationMenu():getSkillAttackBtn(i)\n                        local rect = cc.rect(0,0,0,0)\n                        rect.origin = btn:convertToWorldSpace(cc.p(0,0))\n                        rect.size = cc.size(75,75)   -- btn:getButtonSize()\n                        \n                        rect.origin.x = rect.origin.x - rect.size.width/2    -- 因为按钮锚点是(0.5,0.5)，所以这里修正一下\n                        rect.origin.y = rect.origin.y - rect.size.height/2\n\n                        if (rect:containsPoint(point)) then\n                            self.m_pEditingSkill:setOpacity(255)\n                            self.m_pEditingBtn = btn\n                            self.m_pEditingBtn:stopAllActions()\n                            local scaleTo = cc.ScaleTo:create(0.1, 1.1)\n                            self.m_pEditingBtn:runAction(scaleTo)\n                            break\n                        end\n                    end\n                end\n            elseif event.name == \"ended\" then\n                if (self.m_pEditingSkill) then\n                    if (self.m_pEditingBtn) then\n                        g_mainScene:getGameInfoUIController():getOperationMenu():addSkillIcon_(self.m_pEditingBtn, self.m_pEditingSkill:getTag())\n                        local scaleTo = cc.ScaleTo:create(0.1, 1.0)\n                        self.m_pEditingBtn:runAction(scaleTo)\n                        self.m_pEditingBtn = nil\n                    end\n                    self.m_pEditingSkill:removeFromParent()\n                    self.m_pEditingSkill = nil\n                end\n            end\n        end)\n        content:setTouchEnabled(true)\n        item:addContent(content)\n        item:setItemSize(420, 80)\n        item:setMargin({left = 30, bottom = 26, right = 0, top = 0})\n        item:setTag(2000 + i)\n\n        self.m_lvSkill:addItem(item)\n        table.insert(self.m_arrSkill, content)\n    end\n    self.m_lvSkill:reload()\n    \n    return true\nend\n\nfunction SkillTableView:onTouchBegan(event)\n--    local point = cc.p(event.x, event.y)\n--    \n--    local rcListView = cc.rect(0,0,0,0)\n--    rcListView.origin = self.m_lvSkill:getParent():convertToWorldSpace(cc.p(self.m_lvSkill:getPosition()))\n--    rcListView.size = cc.size(420, 420)\n--    \n--    if (not rcListView:containsPoint(point)) then\n--        return false\n--    end\n--    \n--    if (#self.m_arrSkill == 0) then\n--        return false\n--    end\n--    \n--    for i = 1, #self.m_arrSkill do\n--        local imgSkillIcon = self.m_arrSkill[i]\n--        local szSkillIcon = imgSkillIcon:getContentSize()\n--        local ptSkillIcon = cc.p(imgSkillIcon:getPosition())\n--        ptSkillIcon = imgSkillIcon:getParent():convertToWorldSpace(ptSkillIcon)\n--        ptSkillIcon = cc.PointSub(ptSkillIcon, cc.p(szSkillIcon.width/2, szSkillIcon.height/2))\n--        local rect = cc.rect(ptSkillIcon.x, ptSkillIcon.y, szSkillIcon.width, szSkillIcon.height)\n--        if (rect:containsPoint(point)) then\n--            self.m_pEditingSkill = CCSprite:createWithTexture(imgSkillIcon:getTexture())\n--            self.m_pEditingSkill:setPosition(point)\n--            g_mainScene:getGameInfoUIController():addChild(self.m_pEditingSkill)\n--            self.m_pEditingSkill:setTag(imgSkillIcon:getParent():getTag())\n--            self.m_pEditingSkill:setScale(1.5)\n--            self.m_pEditingSkill:setOpacity(127)\n--            return true\n--        end\n--    end\n--    \n--    return false\nend\n\nfunction SkillTableView:onTouchMoved(event)\n--    local point = cc.p(event.x, event.y)\n--    \n--    if (not self.m_pEditingSkill) then\n--        return\n--    end\n--        \n--    self.m_pEditingSkill:setPosition(point)\n--    \n--    if (self.m_pEditingBtn) then\n--        local rect = cc.rect(0,0,0,0)\n--        rect.origin = self.m_pEditingBtn:convertToWorldSpace(cc.p(0,0))\n--        rect.size = self.m_pEditingBtn:getContentSize()\n--        if (not rect:containsPoint(point)) then\n--            self.m_pEditingSkill:setOpacity(127)\n--            self.m_pEditingBtn:stopAllActions()\n--            local scaleTo = cc.ScaleTo:create(0.1, 1.0)\n--            self.m_pEditingBtn:runAction(scaleTo)\n--            self.m_pEditingBtn = nil\n--        end\n--    end\n--    \n--    if (not self.m_pEditingBtn) then\n--        for i = 1, 3 do\n--            local btn = g_mainScene:getGameInfoUIController():getOperationMenu():getSkillAttackBtn(i)\n--            local rect = cc.rect(0,0,0,0)\n--            rect.origin = btn:convertToWorldSpace(cc.p(0,0))\n--            rect.size = btn:getContentSize()\n--            \n--            if (rect:containsPoint(point)) then\n--                self.m_pEditingSkill:setOpacity(255)\n--                self.m_pEditingBtn = btn\n--                self.m_pEditingBtn:stopAllActions()\n--                local scaleTo = cc.ScaleTo:create(0.1, 1.1)\n--                self.m_pEditingBtn:runAction(scaleTo)\n--                break\n--            end\n--        end\n--    end\nend\n\nfunction SkillTableView:onTouchEnded(event)\n--    if (self.m_pEditingSkill) then\n--        if (self.m_pEditingBtn) then\n--            g_mainScene:getGameInfoUIController():getOperationMenu():addSkillIcon(self.m_pEditingBtn, self.m_pEditingSkill:getTag())\n--            local scaleTo = cc.ScaleTo:create(0.1, 1.0)\n--            self.m_pEditingBtn:runAction(scaleTo)\n--            self.m_pEditingBtn = nil\n--        end\n--        self.m_pEditingSkill:removeFromParent()\n--        self.m_pEditingSkill = nil\n--    end\nend\n\nfunction SkillTableView:onTouchCancelled(event)\n    \nend\n\nreturn SkillTableView"
  },
  {
    "path": "源代码/2.2.5/mir9/scripts/app/map/AStarSearch.lua",
    "content": "\nSEARCH_STATE_NOT_INITIALISED = 0\nSEARCH_STATE_SEARCHING = 1\nSEARCH_STATE_SUCCEEDED = 2\nSEARCH_STATE_FAILED = 3\nSEARCH_STATE_OUT_OF_MEMORY = 4\nSEARCH_STATE_INVALID = 5\n\n-- 对array[first..last]进行堆筛选\nfunction sift_heap(array, first, last)\n    local i = first             -- 被筛选结点索引\n    local j = 2 * i             -- 被筛选结点的左孩子索引\n    local temp = array[i]       -- 保存被筛选结点\n    \n    while (j <= last) do\n        if (j < last and array[j].f > array[j + 1].f) then\n            j = j + 1           -- 若右孩子较小，把j指向右孩子\n        end\n        \n        if (temp.f > array[j].f) then\n            array[i] = array[j] -- 将array[j]调整到双亲结点位置上\n            i = j               -- 修改i和j值，指向下一个被筛选结点和被筛选结点的左孩子\n            j = 2 * i\n        else\n            break               -- 已是小根堆，筛选结束\n        end\n    end\n    \n    array[i] = temp             -- 被筛选结点的值放入最终位置\nend\n\n-- 建立初始小根堆\nfunction make_heap(array, first, last)\n    local n = last - first + 1\n    for i = math.floor(n/2), 1, -1 do\n        sift_heap(array, i, n)\n    end\nend\n\n-- 往小根堆中插入一个结点\nfunction push_heap(array, first, last)\n    make_heap(array, first, last)\nend\n\n-- 从小根堆中弹出一个结点\nfunction pop_heap(array, first, last)\n    array[first], array[last] = array[last], array[first]  \n    make_heap(array, first, last-1)\nend\n\n-- 打印数组\nfunction print_heap(array)\n    str = \"\"\n    for i = 1, #array do\n        str = str .. array[i] .. \",\" \n    end\n    print(\"#######################\", str)\nend\n\n-- The AStar search class.\nlocal AStarSearch = class(\"AStarSearch\")\nlocal Node = class(\"Node\")\n\nfunction Node:ctor()\n    self.parent = nil   -- used during the search to record the parent of successor nodes\n    self.child = nil    -- used after the search for the application to view the search in reverse\n    self.g = 0.0        -- cost of this node + it's predecessors\n    self.h = 0.0        -- heuristic estimate of distance to goal\n    self.f = 0.0        -- sum of cumulative cost of predecessors and self and heuristic\n    self.m_UserState = nil\nend\n\n-- constructor just initialises private data\nfunction AStarSearch:ctor(nMaxNodes)\n    self.m_AllocateNodeCount = 0\n    self.m_State = SEARCH_STATE_NOT_INITIALISED\n    self.m_CurrentSolutionNode = nil\n    self.m_CancelRequest = false\n        \n    -- Heap (simple vector but used as a heap, cf. Steve Rabin's game gems article)\n    self.m_OpenList = {}\n\n    -- Closed list is a vector.\n    self.m_ClosedList = {} \n\n    -- Successors is a vector filled out by the user each type successors to a node\n    -- are generated\n    self.m_Successors = {}\n\n    -- State\n    self.m_State = 0\n\n    -- Counts steps\n    self.m_Steps = 0\n\n    -- Start and goal state pointers\n    self.m_Start = nil\n    self.m_Goal = nil\n\n    self.m_CurrentSolutionNode = nil\n    \n    -- Debug : need to keep these two iterators around\n    -- for the user Dbg functions\n    self.iterDbgOpen = 1\n    self.iterDbgClosed = 1\n    \n    self.m_CancelRequest = false\nend\n\n-- call at any time to cancel the search and free up all the memory\nfunction AStarSearch:cancelSearch()\n    self.m_CancelRequest = true\nend\n\n-- Set Start and goal states\nfunction AStarSearch:setStartAndGoalStates(Start, Goal)\n    self.m_CancelRequest = false\n\n    self.m_Start = Node.new()\n    self.m_Goal = Node.new()\n        \n    self.m_Start.m_UserState = Start\n    self.m_Goal.m_UserState = Goal\n\n    self.m_State = SEARCH_STATE_SEARCHING\n        \n    -- Initialise the AStar specific parts of the Start Node\n    -- The user only needs fill out the state information\n\n    self.m_Start.g = 0 \n    self.m_Start.h = self.m_Start.m_UserState:goalDistanceEstimate(self.m_Goal.m_UserState)\n    self.m_Start.f = self.m_Start.g + self.m_Start.h\n    self.m_Start.parent = nil\n\n    -- Push the start node on the Open list\n    \n    table.insert(self.m_OpenList, self.m_Start) -- heap now unsorted\n\n    -- Sort back element into heap\n    push_heap(self.m_OpenList, 1, #self.m_OpenList)\n\n    -- Initialise counter for search steps\n    self.m_Steps = 0\nend\n\n-- Advances search one step \nfunction AStarSearch:searchStep()\n    -- Firstly break if the user has not initialised the search\n    if (not ((self.m_State > SEARCH_STATE_NOT_INITIALISED) and \n        (self.m_State < SEARCH_STATE_INVALID))) then\n        return self.m_State\n    end\n\n    -- Next I want it to be safe to do a searchstep once the search has succeeded...\n    if ((self.m_State == SEARCH_STATE_SUCCEEDED) or\n        (self.m_State == SEARCH_STATE_FAILED)) then\n        return self.m_State\n    end\n\n    -- Failure is defined as emptying the open list as there is nothing left to \n    -- search...\n    -- New: Allow user abort\n    if (#self.m_OpenList <= 0 or self.m_CancelRequest) then\n        self:freeAllNodes()\n        self.m_State = SEARCH_STATE_FAILED\n        return self.m_State\n    end\n        \n    -- Incremement step count\n    self.m_Steps = self.m_Steps + 1\n\n    -- Pop the best node (the one with the lowest f) \n    local n = self.m_OpenList[1]    -- get pointer to the node\n    pop_heap(self.m_OpenList, 1, #self.m_OpenList)\n    table.remove(self.m_OpenList)\n\n    -- Check for the goal, once we pop that we're done\n    if (n.m_UserState:isGoal(self.m_Goal.m_UserState)) then\n        -- The user is going to use the Goal Node he passed in \n        -- so copy the parent pointer of n \n        self.m_Goal.parent = n.parent\n\n        -- A special case is that the goal was passed in as the start state\n        -- so handle that here\n        if (false == n.m_UserState:isSameState(self.m_Start.m_UserState)) then\n            n = nil\n\n            -- set the child pointers in each node (except Goal which has no child)\n            local nodeChild = self.m_Goal\n            local nodeParent = self.m_Goal.parent\n\n            repeat\n                nodeParent.child = nodeChild\n                nodeChild = nodeParent\n                nodeParent = nodeParent.parent\n            until (not (nodeChild ~= self.m_Start))  -- Start is always the first node by definition\n        end\n\n        -- delete nodes that aren't needed for the solution\n        self:freeUnusedNodes()\n        self.m_State = SEARCH_STATE_SUCCEEDED\n        return self.m_State\n    else    -- not goal\n\n        -- We now need to generate the successors of this node\n        -- The user helps us to do this, and we keep the new nodes in\n        -- m_Successors ...\n\n        self.m_Successors = {}  -- empty vector of successor nodes to n\n\n        -- User provides this functions and uses AddSuccessor to add each successor of\n        -- node 'n' to m_Successors\n        local ret = n.m_UserState:getSuccessors(self, (n.parent and n.parent.m_UserState) or nil) \n\n        if (not ret) then\n            -- free the nodes that may previously have been added \n--            for i = 1, #self.m_Successors do\n--                self.m_Successors[i] = nil\n--            end\n\n            self.m_Successors = {}  -- empty vector of successor nodes to n\n\n            -- free up everything else we allocated\n            self:freeAllNodes()\n\n            self.m_State = SEARCH_STATE_OUT_OF_MEMORY\n            return self.m_State\n        end\n\n        local successor = nil\n        \n        -- Now handle each successor to the current node ...\n        for i = 1, #self.m_Successors do\n            successor = self.m_Successors[i]\n            \n            -- The g value for this successor ...\n            local newg = n.g + n.m_UserState:getCost(successor.m_UserState)\n\n            -- Now we need to find whether the node is on the open or closed lists\n            -- If it is but the node that is already on them is better (lower g)\n            -- then we can forget about this successor\n\n            -- First linear search of open list to find node\n\n            local openlist_result = nil\n            local openlist_index = 1\n            for j = 1, #self.m_OpenList do\n                if (self.m_OpenList[j].m_UserState:isSameState(successor.m_UserState)) then\n                    openlist_result = self.m_OpenList[j]\n                    openlist_index = j\n                    break\n                end\n            end\n\n            if (openlist_result and openlist_result.g <= newg) then\n                -- we found this state on open\n\n                successor = nil\n\n                -- the one on Open is cheaper than this one\n                -- continue\n            else\n                local closedlist_result = nil\n                local closedlist_index = 1\n                for j = 1, #self.m_ClosedList do\n                    if (self.m_ClosedList[j].m_UserState:isSameState(successor.m_UserState)) then\n                        closedlist_result = self.m_ClosedList[j]\n                        closedlist_index = j\n                        break\n                    end\n                end\n\n                if (closedlist_result and closedlist_result.g <= newg) then\n                    -- we found this state on closed\n\n                    -- the one on Closed is cheaper than this one\n                    successor = nil\n                    -- continue\n                else\n                    -- This node is the best node so far with this particular state\n                    -- so lets keep it and set up its AStar specific data ...\n\n                    successor.parent = n\n                    successor.g = newg\n                    successor.h = successor.m_UserState:goalDistanceEstimate(self.m_Goal.m_UserState)\n                    successor.f = successor.g + successor.h\n\n                    -- Remove successor from closed if it was on it\n\n                    if (closedlist_result) then\n                        -- remove it from Closed\n                        table.remove(self.m_ClosedList, closedlist_index)\n                        closedlist_result = nil \n\n                        -- Fix thanks to ...\n                        -- Greg Douglas <gregdouglasmail@gmail.com>\n                        -- who noticed that this code path was incorrect\n                        -- Here we have found a new state which is already CLOSED\n                        -- anus\n                    end\n\n                    -- Update old version of this node\n                    if (openlist_result) then\n                        table.remove(self.m_OpenList, openlist_index)\n                        openlist_result = nil \n\n                        -- re-make the heap \n                        -- make_heap rather than sort_heap is an essential bug fix\n                        -- thanks to Mike Ryynanen for pointing this out and then explaining\n                        -- it in detail. sort_heap called on an invalid heap does not work\n                        make_heap(self.m_OpenList, 1, #self.m_OpenList)\n                    end\n\n                    -- heap now unsorted\n                    table.insert(self.m_OpenList, successor)\n\n                    -- sort back element into heap\n                    push_heap(self.m_OpenList, 1, #self.m_OpenList) \n                end\n            end\n        end\n\n        -- push n onto Closed, as we have expanded it now\n\n        table.insert(self.m_ClosedList, n)\n    end -- end else (not goal so expand)\n    \n    return self.m_State -- Succeeded bool is false at this point. \nend\n\n-- User calls this to add a successor to a list of successors\n-- when expanding the search frontier\nfunction AStarSearch:addSuccessor(state)\n    local node = Node.new()\n\n    if (node) then\n        node.m_UserState = state\n        table.insert(self.m_Successors, node)\n        return true\n    end\n\n    return false\nend\n\n-- Free the solution nodes\n-- This is done to clean up all used Node memory when you are done with the\n-- search\nfunction AStarSearch:freeSolutionNodes()\n    local n = self.m_Start\n\n    if (self.m_Start.child) then\n        repeat\n            local del = n\n            n = n.child\n            del = nil\n        until (not (n ~= self.m_Goal))\n\n        n = nil -- Delete the goal\n    else\n        -- if the start node is the solution we need to just delete the start and goal\n        -- nodes\n        self.m_Start = nil\n        self.m_Goal = nil\n    end\nend\n\n-- Functions for traversing the solution\n\n-- Get start node\nfunction AStarSearch:getSolutionStart()\n    self.m_CurrentSolutionNode = self.m_Start\n    if (self.m_Start) then\n        return self.m_Start.m_UserState\n    else\n        return nil\n    end\nend\n    \n-- Get next node\nfunction AStarSearch:getSolutionNext()\n    if (self.m_CurrentSolutionNode) then\n        if (self.m_CurrentSolutionNode.child) then\n            local child = self.m_CurrentSolutionNode.child\n\n            self.m_CurrentSolutionNode = self.m_CurrentSolutionNode.child\n\n            return child.m_UserState\n        end\n    end\n\n    return nil\nend\n    \n-- Get end node\nfunction AStarSearch:getSolutionEnd()\n    self.m_CurrentSolutionNode = self.m_Goal\n    if (self.m_Goal) then\n        return self.m_Goal.m_UserState\n    else\n        return nil\n    end\nend\n    \n-- Step solution iterator backwards\nfunction AStarSearch:getSolutionPrev()\n    if (self.m_CurrentSolutionNode) then\n        if (self.m_CurrentSolutionNode.parent) then\n            local parent = self.m_CurrentSolutionNode.parent\n            self.m_CurrentSolutionNode = self.m_CurrentSolutionNode.parent\n            return parent.m_UserState\n        end\n    end\n\n    return nil\nend\n\n-- For educational use and debugging it is useful to be able to view\n-- the open and closed list at each step, here are two functions to allow that.\nfunction AStarSearch:getOpenListStart()\n    self.iterDbgOpen = 1\n    local iter = self.m_OpenList[self.iterDbgOpen]\n    if (not iter) then\n        return iter.f, iter.g, iter.h, iter.m_UserState\n    end\n\n    return nil\nend\n\nfunction AStarSearch:getOpenListNext()\n    self.iterDbgOpen = self.iterDbgOpen + 1\n    local iter = self.m_OpenList[self.iterDbgOpen]\n    if (not iter) then\n        return iter.f, iter.g, iter.h, iter.m_UserState\n    end\n\n    return nil\nend\n\nfunction AStarSearch:getClosedListStart()\n    self.iterDbgClosed = 1\n    local iter = self.m_ClosedList[self.iterDbgClosed]\n    if (not iter) then\n        return iter.f, iter.g, iter.h, iter.m_UserState\n    end\n\n    return nil\nend\n\nfunction AStarSearch:getClosedListNext()\n    self.iterDbgClosed = self.iterDbgClosed + 1\n    local iter = self.m_ClosedList[self.iterDbgClosed]\n    if (not iter) then\n        return iter.f, iter.g, iter.h, iter.m_UserState\n    end\n\n    return nil\nend\n\n-- Get the number of steps\nfunction AStarSearch:getStepCount()\n    return self.m_Steps\nend\n\nfunction AStarSearch:ensureMemoryFreed()\n    -- assert(m_AllocateNodeCount == 0);\nend\n\n-- This is called when a search fails or is cancelled to free all used\n-- memory \nfunction AStarSearch:freeAllNodes()\n    self.m_OpenList = {}\n    self.m_ClosedList = {}\nend\n\n\n-- This call is made by the search class when the search ends. A lot of nodes may be\n-- created that are still present when the search ends. They will be deleted by this \n-- routine once the search ends\nfunction AStarSearch:freeUnusedNodes()\n    self.m_OpenList = {}\n    self.m_ClosedList = {}\nend\n\nreturn AStarSearch"
  },
  {
    "path": "源代码/2.2.5/mir9/scripts/app/map/BgMap.lua",
    "content": "local cjson = require(\"cjson\")\nlocal scheduler = require(\"framework.scheduler\")\nlocal BgMapFloorTile = require(\"app.map.BgMapFloorTile\")\nlocal PortalSprite = require(\"app.map.PortalSprite\")\nlocal MapPoint = require(\"app.map.MapPoint\")\nlocal NpcFigure = require(\"app.map.NpcFigure\")\n\nPortalInformation = class(\"PortalInformation\")\n\nfunction PortalInformation:ctor(key, mapID, born, point)\n    self.key = key\n    self.mapID = mapID\n    self.born = born\n    self.point = point\nend\n\nfunction PortalInformation:equals(other)\n    return (self.key == other.key and \n        self.mapID == other.mapID and \n        self.born == other.born and \n        self.point:equals(other.point))\nend\n\nPortalInformationZero = PortalInformation.new(0, 0, 0, cc.p(0, 0))\n\nlocal NpcInformation = class(\"NpcInformation\")\n\nfunction NpcInformation:ctor(key, direction, point)\n    self.key = key\n    self.direction = direction \n    self.point = point\nend\n\nfunction NpcInformation:equals(other)\n    return  (self.key == other.key and \n        self.direction == other.direction and\n        self.point.equals(other.point))\nend\n    \nNPCDirection = {\n    DownAndLeft     = 5,\n    Down            = 4,\n    RightAndDown    = 3\n}\n\nlocal OFF_SIZE = cc.p(128, 128)\n\n-- 背景地图类\nlocal BgMap = class(\"BgMap\", function()\n    return display.newNode()\nend)\n\nlocal RADIUS_PASSAGEWAY = 64\n\nlocal TYPE_PROTAL = 100\nlocal TYPE_BORN_POINT = 101\nlocal TYPE_NPC = 200\nlocal TYPE_ENEMY = 300\nlocal TYPE_BACKGROUND_MUSIC = 400\n\nfunction BgMap:ctor()\n    self.m_gridRow = 0\n    self.m_gridCol = 0\n    self.m_gridSize = cc.size(0, 0)\n    self.m_imageRow = 0\n    self.m_imageCol = 0\n    self.m_imageSize = cc.size(0, 0)\n    self.m_bgSize = cc.size(0, 0)\n    self.m_nMapID = 0\n    self.m_playerLead = nil\n    self.m_delegate = nil\n\n    self.m_grid = {}\n        \n    self.m_arrPassageway = {}\n    self.m_mapBornPoint = {}\n    self.m_arrNpcInfo = {}\n    self.m_arrEnemy = {}\n\n    self.m_arrFloorTile = {}\n    self.m_arrNpcFigure = {}\nend\n\n-- 加载地图\nfunction BgMap:loadMap(nMapID)\n    self.m_nMapID = nMapID\n    \n    self:readGirdData()\n    self:readGoodsData()\n\n    local path = string.format(\"map/s%d/min_s%d.jpg\", self.m_nMapID, self.m_nMapID)\n    self.m_spMap = display.newSprite(path)\n    self.m_spMap:setAnchorPoint(cc.p(0, 0))\n    self:addChild(self.m_spMap, BgMap.getZOrderZero(self))\n    self.m_spMap:setScale(10/3.0)\n\n    self:initBgMapFloorTile()\n    self:initBgMapPassagewayImage()\n    self:initNpcFigure()\n\n    self:updateImageDisplay()\n\n    --    if (self.m_backGroundMusic ~= \"\") then\n    --        audio.playMusic(self.m_backGroundMusic, true)\n    --        --audio.setBackgroundMusicVolume(0.2)\n    --    end    \nend\n\n-- 卸载地图\nfunction BgMap:unloadMap()\n    self:killTimer_UpdateMap()\n    self:setDelegate(nil)\n    CCTextureCache:sharedTextureCache():removeUnusedTextures()\nend\n\nfunction BgMap:readGirdData()\n    local path = string.format(\"map/s%d/data_gird_%d.json\", self.m_nMapID, self.m_nMapID)\n    local json_str = CCString:createWithContentsOfFile(path)\n    local json_value = cjson.decode(json_str:getCString())\n    \n    -- 地图宽高\n    local width = json_value[\"mapW\"]\n    local height = json_value[\"mapH\"]\n    self.m_bgSize = cc.size(width, height)\n    \n    -- \n    local gWidth = json_value[\"mapGridW\"]\n    local gHeight = json_value[\"mapGridH\"]\n    self.m_gridSize = cc.size(gWidth, gHeight)\n    MapPoint.setGridSize(self.m_gridSize)\n    self.m_gridRow = math.ceil(width/self.m_gridSize.width)\n    self.m_gridCol = math.ceil(height/self.m_gridSize.height)\n    \n    self:initGridData(json_value[\"mapFlagArr\"])\n    \n    -- 切图宽高\n    local iWidth = json_value[\"divideBlockW\"]\n    local iHeight = json_value[\"divideBlockH\"]\n    self.m_imageSize = cc.size(iWidth, iHeight)\n    self.m_imageRow = math.ceil(width/self.m_imageSize.width)\n    self.m_imageCol = math.ceil(height/self.m_imageSize.height)\nend\n\nfunction BgMap:readGoodsData()\n    local path = string.format(\"map/s%d/data_goods_%d.json\", self.m_nMapID, self.m_nMapID)\n    local json_str = CCString:createWithContentsOfFile(path)\n    local json_value = cjson.decode(json_str:getCString())\n        \n    for i = 1, #json_value[\"items\"] do\n        local goods = json_value[\"items\"][i]\n        \n        local itemType = goods[\"itemType\"]\n        if (itemType == TYPE_PROTAL) then   -- 传送点\n            local key = goods[\"itemSN\"]\n            local mapID = goods[\"portalToMap\"]\n            local born = goods[\"portalToPos\"]\n            local point = cc.p(goods[\"itemPosX\"], goods[\"itemPosY\"])\n            local info = PortalInformation.new(key, mapID, born, point)\n            table.insert(self.m_arrPassageway, info)\n        elseif (itemType == TYPE_BORN_POINT) then   -- \n            local born = goods[\"itemSN\"]\n            local point = cc.p(goods[\"itemPosX\"], goods[\"itemPosY\"])\n            self.m_mapBornPoint[born] = point\n        elseif (itemType == TYPE_NPC) then  -- NPC\n            local key = goods[\"itemSN\"]\n            local direction = goods[\"npcDirection\"]\n            if (not direction) then\n                direction = NPCDirection.Down\n            end\n            local point = cc.p(goods[\"itemPosX\"], goods[\"itemPosY\"])\n            local info = NpcInformation.new(key, direction, point)\n            table.insert(self.m_arrNpcInfo, info)\n        elseif (itemType == TYPE_ENEMY) then    -- 敌人\n            local key = goods[\"itemSN\"]\n            local mpoint = MapPoint.new(cc.p(goods[\"itemPosX\"], goods[\"itemPosY\"]))\n            table.insert(self.m_arrEnemy, {[\"key\"] = key, [\"mpoint\"] = mpoint})\n        elseif (itemType == TYPE_BACKGROUND_MUSIC) then -- 背景音乐        \n            local key = goods[\"itemSN\"]\n            self.m_backGroundMusic = string.format(\"music/400/%d.mp3\", key)\n        end\n    end\nend\n\nfunction BgMap:initGridData(json_value)\n    -- self.m_grid = json_value\n    \n    for i = 0, self.m_gridCol-1 do\n        self.m_grid[i] = {}\n    end\n    \n    for i = 0, #json_value-1 do\n        self.m_grid[math.floor(i/self.m_gridRow)][i%self.m_gridRow] = json_value[i+1]\n    end\nend\n\nfunction BgMap:initBgMapFloorTile()\n    for i = 0, self.m_imageCol-1 do\n        for j = 0, self.m_imageRow-1 do\n            local floorTile = BgMapFloorTile.new()\n            local path = string.format(\"map/s%d/s%d_%d_%d.jpg\", self.m_nMapID, self.m_nMapID, i, j)\n            floorTile.m_fileName = path\n\n            floorTile:setPosition(self.m_imageSize.width*j, self.m_imageSize.height*i)\n            self:addChild(floorTile, BgMap.getZOrderZero(self)) -- z轴\n            table.insert(self.m_arrFloorTile, floorTile)\n        end\n    end\nend\n\nfunction BgMap:initBgMapPassagewayImage()\n    for i = 1, #self.m_arrPassageway do\n        local point = self.m_arrPassageway[i].point\n        point = MapPoint.new(point):getCCPointValue()\n        \n        -- 生成传送门\n        local value = BgMap.getZOrder(point) -- z轴\n        \n        local sprite = PortalSprite.new(\"trans-\")\n        sprite:setPosition(point)\n        self:addChild(sprite, value)\n    end\nend\n\nfunction BgMap:initNpcFigure()\n    for i = 1, #self.m_arrNpcInfo do\n        local npc = NpcFigure.new(self.m_arrNpcInfo[i].key, self.m_arrNpcInfo[i].direction)\n        npc:setPosition(self.m_arrNpcInfo[i].point)\n        self:addChild(npc, BgMap.getZOrder(cc.p(npc:getPosition())))\n        \n        table.insert(self.m_arrNpcFigure, npc)\n    end\nend\n\nfunction BgMap:updateImageDisplay()\n    local rect = self:getShowRect()\n    local rect2 = self:getHideRect()\n    \n    local nStartX = math.floor(rect.origin.x / self.m_imageSize.width)\n    local nStartY = math.floor(rect.origin.y / self.m_imageSize.height)\n    nStartX = math.max(nStartX, 0)\n    nStartY = math.max(nStartY, 0)\n    \n    local nEndX = math.ceil((rect.origin.x+rect.size.width) / self.m_imageSize.width)\n    local nEndY = math.ceil((rect.origin.y+rect.size.height) / self.m_imageSize.height)\n    nEndX = math.min(nEndX, self.m_imageRow-1)\n    nEndY = math.min(nEndY, self.m_imageCol-1)\n    \n    for i = nStartY, nEndY do\n        for j = nStartX, nEndX do\n            self.m_arrFloorTile[i*self.m_imageRow+j+1]:IntelligentDisplay(rect, rect2)\n        end\n    end\n        \n    -- 显示地砖\n--    for i = 1, #self.m_arrFloorTile do\n--        self.m_arrFloorTile[i]:IntelligentDisplay(rect, rect2)\n--    end\n    \n    -- 显示NPC\n    for i = 1, #self.m_arrNpcFigure do\n        self.m_arrNpcFigure[i]:IntelligentDisplay(rect, rect2)\n    end\n    \n    if (self.m_delegate) then\n        self.m_delegate:updateImageDisplay(rect, rect2)\n    end\n    \n--    CCTextureCache:sharedTextureCache():removeUnusedTextures()\nend\n\n-- 更新地图计时器回调函数\nfunction BgMap:updateMap(fDelay)\n    if (not self.m_playerLead) then\n        return\n    end\n\n    local x, y = self.m_playerLead:getPosition()\n    local pMap = cc.PointSub(cc.p(display.cx, display.cy), cc.p(x, y))\n    \n    pMap.x = math.max(pMap.x, display.width-self.m_bgSize.width)\n    pMap.y = math.max(pMap.y, display.height-self.m_bgSize.height)\n    pMap.x = math.min(pMap.x, 0)\n    pMap.y = math.min(pMap.y, 0)\n    \n    self:setPosition(pMap)\n    \n    self:updateImageDisplay()\nend\n\nfunction BgMap:getCurrentGridValue(mpoint)\n    local row = mpoint.x\n    local col = mpoint.z\n    local relust = 1\n    \n    if (1 < col and col < self.m_gridCol-1 and 1 < row and row < self.m_gridRow-1) then\n        relust = self.m_grid[col][row]\n    end\n    \n    return relust\nend\n\nfunction BgMap:isMapPassageway(node)\n    for i = 1, #self.m_arrPassageway do\n        local mapPassageway = self.m_arrPassageway[i]\n        if (cc.PointDistance(mapPassageway.point, cc.p(node:getPosition())) <= RADIUS_PASSAGEWAY) then\n            return mapPassageway\n        end\n    end\n    return PortalInformationZero\nend\n\nfunction BgMap:getEnemeyMap()\n    return self.m_arrEnemy\nend\n\nfunction BgMap:addChildPlayerLead(node, bornPoint)\n    local point = self.m_mapBornPoint[math.floor(bornPoint)]\n    point = MapPoint.new(point):getCCPointValue()\n    self:addChildPlayerLead_(node, point)\nend\n\nfunction BgMap:addChildPlayerLead_(node, point)\n    local x, y = self:getPosition()\n    local value = BgMap.getZOrder(cc.p(x, y))  -- z轴\n    self.m_playerLead = node\n    point = MapPoint.new(point)\n    point = point:getCCPointValue()\n    self.m_playerLead:setPosition(point)\n    self:addChild(self.m_playerLead, value)\n    self:updateMap()\nend\n\nfunction BgMap:getShowRect()\n--    local rect = cc.rect(0, 0, 0, 0)\n--    rect.origin = cc.PointSub(cc.p(0, 0), OFF_SIZE)\n--    rect.origin = cc.PointSub(rect.origin, cc.p(self:getPosition()))\n--    local point = cc.PointAdd(cc.p(display.width, display.height), cc.p(OFF_SIZE.x*2, OFF_SIZE.y*2))\n--    rect.size = cc.size(point.x, point.y) \n--    return rect\n    \n    if (not self.m_tmpRect) then\n        self.m_tmpRect = cc.rect(0, 0, 0, 0)\n    end\n    \n    self.m_tmpRect.origin.x = 0 - OFF_SIZE.x\n    self.m_tmpRect.origin.y = 0 - OFF_SIZE.y\n    self.m_tmpRect.origin.x = self.m_tmpRect.origin.x - self:getPositionX()\n    self.m_tmpRect.origin.y = self.m_tmpRect.origin.y - self:getPositionY()\n    self.m_tmpRect.size.width = display.width + OFF_SIZE.x*2\n    self.m_tmpRect.size.height = display.height + OFF_SIZE.y*2\n    \n    return self.m_tmpRect\nend\n\nfunction BgMap:getHideRect()\n--    local rect = cc.rect(0, 0, 0, 0)\n--    rect.origin = cc.PointSub(cc.p(0, 0), cc.p(OFF_SIZE.x * 2, OFF_SIZE.y * 2))\n--    rect.origin = cc.PointSub(rect.origin, cc.p(self:getPosition()))\n--    local point = cc.PointAdd(cc.p(display.width, display.height), cc.p(OFF_SIZE.x*4, OFF_SIZE.y*4))\n--    rect.size = cc.size(point.x, point.y) \n--    return rect\n\n    if (not self.m_tmpRect) then\n        self.m_tmpRect = cc.rect(0, 0, 0, 0)\n    end\n\n    self.m_tmpRect.origin.x = 0 - OFF_SIZE.x * 2\n    self.m_tmpRect.origin.y = 0 - OFF_SIZE.y * 2\n    self.m_tmpRect.origin.x = self.m_tmpRect.origin.x - self:getPositionX()\n    self.m_tmpRect.origin.y = self.m_tmpRect.origin.y - self:getPositionY()\n    self.m_tmpRect.size.width = display.width + OFF_SIZE.x*4\n    self.m_tmpRect.size.height = display.height + OFF_SIZE.y*4\n    return self.m_tmpRect    \nend\n\nfunction BgMap.getZOrder(point)\n    return (-point.y / 10.0)\nend\n    \nfunction BgMap.getZOrderZero(bgMap)\n    return (-bgMap.m_bgSize.height / 10.0)\nend\n\nfunction BgMap:setDelegate(delegate)\n    self.m_delegate = delegate\nend\n\nfunction BgMap:getMapGrid()\n    return self.m_grid\nend\n\nfunction BgMap:getGridRow()\n    return self.m_gridRow\nend\n\nfunction BgMap:getGridCol()\n    return self.m_gridCol\nend\n\n-- 开启更新地图计时器\nfunction BgMap:setTimer_UpdateMap()\n    self:killTimer_UpdateMap()\n    self.hUpdateMap = scheduler.scheduleGlobal(handler(self, self.updateMap), 0.01)\nend\n\n-- 关闭更新地图计时器\nfunction BgMap:killTimer_UpdateMap()\n    if (self.hUpdateMap) then\n        scheduler.unscheduleGlobal(self.hUpdateMap)\n        self.hUpdateMap = nil\n    end\nend\n\nfunction BgMap:getSmallMap()\n    return self.m_spMap\nend\n\nfunction BgMap:getBgSize()\n    return self.m_bgSize\nend\n\nreturn BgMap"
  },
  {
    "path": "源代码/2.2.5/mir9/scripts/app/map/BgMapFloorTile.lua",
    "content": "\n-- 背景地图地砖类\nlocal BgMapFloorTile = class(\"BgMapFloorTile\", function()\n    return display.newNode()\nend)\n\nlocal OFF_SIZE = cc.p(128, 128)\n\nfunction BgMapFloorTile:ctor()\n    self.m_fileName = nil\n    self.m_sprite = nil\n    self.m_bIsDisplay = false\nend\n\nfunction BgMapFloorTile:displayImageView()\n    if (self.m_bIsDisplay == false) then\n        self.m_bIsDisplay = true\n        display.addImageAsync(self.m_fileName, function()\n            local texture = CCTextureCache:sharedTextureCache():textureForKey(self.m_fileName)\n            self:initWithImageView(texture)\n        end)\n    end\nend\n\nfunction BgMapFloorTile:hideImageView()\n    if (self.m_bIsDisplay) then\n        self.m_bIsDisplay = false\n        if (self.m_sprite) then\n            self.m_sprite:removeFromParent()\n            self.m_sprite = nil\n        end\n        CCTextureCache:sharedTextureCache():removeTextureForKey(self.m_fileName)\n    end\nend\n\nfunction BgMapFloorTile:initWithImageView(texture)\n    if (not self.m_sprite) then\n        self.m_sprite = CCSprite:createWithTexture(texture)\n        self.m_sprite:setAnchorPoint(cc.p(0, 0))\n        self:addChild(self.m_sprite)\n    end\nend\n\nfunction BgMapFloorTile:IntelligentDisplay(rcShow, rcHide)\n--    local x, y = self:getPosition()\n--    local point = cc.PointAdd(cc.p(x, y), OFF_SIZE)\n    if (not self.m_tmpPos) then\n        self.m_tmpPos = cc.p(0, 0)\n    end\n    \n    self.m_tmpPos.x, self.m_tmpPos.y = self:getPosition()\n    self.m_tmpPos.x = self.m_tmpPos.x +  OFF_SIZE.x\n    self.m_tmpPos.y = self.m_tmpPos.y +  OFF_SIZE.y\n    \n    if (rcShow:containsPoint(self.m_tmpPos)) then\n        self:displayImageView()\n    end\n    \n    if (not rcHide:containsPoint(self.m_tmpPos)) then\n        self:hideImageView()\n    end\nend\n\nreturn BgMapFloorTile"
  },
  {
    "path": "源代码/2.2.5/mir9/scripts/app/map/MapPoint.lua",
    "content": "\n-- \nlocal MapPoint = class(\"MapPoint\")\n\nlocal GRID_SIZE = cc.size(60, 32)\n\nfunction MapPoint:ctor(x, z)\n    if (x and z) then\n        self.x = math.floor(x)\n        self.z = math.floor(z)\n    elseif (x) then\n        if type(x) == \"number\" then\n            self.x = math.floor(x / 65536)\n            self.z = math.floor(x % 65536)\n        else\n            self.x = math.floor(x.x/GRID_SIZE.width)\n            self.z = math.floor(x.y/GRID_SIZE.height)\n        end\n    else\n        self.x = 0\n        self.z = 0\n    end\nend\n\nfunction MapPoint:getValue()\n    return self.x * 65536 + self.z\nend\n\nfunction MapPoint:getCCPointValue()\n    local point = cc.p(self.x * GRID_SIZE.width, self.z * GRID_SIZE.height)\n    return cc.PointAdd(point, cc.p(GRID_SIZE.width/2, GRID_SIZE.height/2))\nend\n\nfunction MapPoint:getCCSizeValue()\n    return cc.size(self.x * GRID_SIZE.width, self.z * GRID_SIZE.height)\nend\n\n-- 赋值\nfunction MapPoint.set(left, right)\n    left.x = right.x\n    left.z = right.z\n    return left\nend\n\n-- 相加\nfunction MapPoint.add(left, right)\n    return MapPoint.new(left.x + right.x, left.z + right.z)\nend\n\n-- 相减\nfunction MapPoint.sub(left, right)\n    return MapPoint.new(left.x - right.x, left.z - right.z)\nend\n\n-- 负号\nfunction MapPoint.minus(self)\n    return MapPoint.new(-self.x, -self.z)\nend\n\n-- 乘以一个数\nfunction MapPoint.mul(self, a)\n    return MapPoint.new(self.x * a, self.z * a)\nend\n\n-- 除以一个数\nfunction MapPoint.div(self, a)\n    error(a, \"CCPoint division by 0.\");\n    return MapPoint.new(self.x / a, self.z / a)\nend\n\n-- 小于\nfunction MapPoint.less(left, right)\n    local a = left.x * 65536 + left.z\n    local b = right.x * 65536 + right.z\n    return (a < b)\nend\n\n-- 相等\nfunction MapPoint.equals(left, right)\n    local a = left.x * 65536 + left.z\n    local b = right.x * 65536 + right.z\n    return (a == b)\nend\n\n-- 对象值相等\nfunction MapPoint.equalsObj(left, right)\n    return (left.x == right.x and left.z == right.z)\nend\n\nfunction MapPoint:getMapPointVectorForDistance(lenght)\n    local arrMPoint = {}\n    local x = -lenght\n    local z = -lenght\n    while (true) do\n        if (#arrMPoint == 8*lenght) then\n            break\n        end\n        \n        table.insert(arrMPoint, MapPoint.add(self, MapPoint.new(x, z)))\n        \n        if (#arrMPoint <= 2*lenght) then\n            x = x + 1\n        elseif (2*lenght < #arrMPoint and #arrMPoint <= 4*lenght) then\n            z = z + 1\n        elseif (4*lenght < #arrMPoint and #arrMPoint <= 6*lenght) then\n            x = x - 1\n        elseif (6*lenght < #arrMPoint and #arrMPoint < 8*lenght) then\n            z = z - 1\n        end\n    end\n    \n    return arrMPoint\nend\n\nfunction MapPoint.setGridSize(size)\n    GRID_SIZE = size\nend\n\nfunction MapPoint:getLength()\n    return math.floor(math.max(math.abs(self.x), math.abs(self.z)))\nend\n    \nfunction MapPoint:getDistance(mpoint)\n    return math.floor(math.max(math.abs(mpoint.x - self.x), math.abs(mpoint.z - self.z)))\nend\n\n\nreturn MapPoint"
  },
  {
    "path": "源代码/2.2.5/mir9/scripts/app/map/NpcFigure.lua",
    "content": "local LAlertView = require(\"app.game_ui.LAlertView\")\n\nlocal NpcFigure = class(\"NpcFigure\", function()\n    return display.newSprite()\nend)\n\nfunction NpcFigure:ctor(roleNumber, direction)\n    self.m_npcInfo = nil\n    self.m_direction = direction\n    \n    self.m_sprite = nil\n    self.m_bIsDisplay = false\n    self.m_fAnchorPoint = cc.p(0.5, 3/8.0)\n    self.m_fSpriteRect = cc.rect(80, 64, 50, 96)\n\n    self.m_npcInfo = g_npcInfoSystem:getNpcInfo(roleNumber)\n    self.m_fileName = string.format(\"texture_npc/npc_%u_1_%d.png\", self.m_npcInfo.m_nRID, self.m_direction)\n    self.m_plistName = string.format(\"texture_npc/npc_%u_1_%d.plist\", self.m_npcInfo.m_nRID, self.m_direction)\n    \n    self.m_arrAction = CCArray:create()\n    self.m_arrAction:retain()\n    \n    self:addNodeEventListener(cc.NODE_TOUCH_EVENT, function(event)\n        if event.name == \"began\" then\n            local bRet = self:onTouchBegan(event)\n            self:setTouchSwallowEnabled(bRet)\n            return bRet\n        elseif event.name == \"moved\" then\n            self:onTouchMoved(event)\n        elseif event.name == \"ended\" then\n            self:onTouchEnded(event)\n        elseif event.name == \"cancel\" then\n            self:onTouchCancelled(event)\n        end\n    end)\n    self:setTouchEnabled(true)\nend\n\nfunction NpcFigure:displayImageView()\n    if (not self.m_bIsDisplay) then\n        self.m_bIsDisplay = true\n        \n        display.addImageAsync(self.m_fileName, function()\n            local texture = CCTextureCache:sharedTextureCache():textureForKey(self.m_fileName)\n            self:initWithImageView(texture)\n        end)\n    end\nend\n\nfunction NpcFigure:hideImageView()\n    if (self.m_bIsDisplay) then\n        self.m_bIsDisplay = false\n\n        if (self.m_sprite) then\n            self.m_sprite:removeFromParent()\n            self.m_sprite = nil\n        end\n        \n        display.removeSpriteFrameByImageName(self.m_fileName)\n        self.m_arrAction:removeAllObjects()\n    end\nend\n\nfunction NpcFigure:initWithImageView(texture)\n    if (not self.m_sprite) then\n        CCSpriteFrameCache:sharedSpriteFrameCache():addSpriteFramesWithFile(self.m_plistName, texture)\n        \n        self.m_sprite = CCSprite:create()\n        self.m_sprite:setAnchorPoint(self.m_fAnchorPoint)\n        self:addChild(self.m_sprite)\n        \n        self.m_spriteHigh = CCSprite:create()\n        self.m_spriteHigh:setAnchorPoint(self.m_fAnchorPoint)\n        self:addChild(self.m_spriteHigh)\n        \n        self.m_sprite:runAction(self:getActions())\n        self.m_spriteHigh:runAction(self:getActions())\n        \n        self.m_spriteHigh:setVisible(false)\n    end\nend\n\nfunction NpcFigure:IntelligentDisplay(rcShow, rcHide)\n    local ptPos = cc.p(self:getPosition())\n    \n    if (rcShow:containsPoint(ptPos)) then\n        self:displayImageView()\n    end\n    \n    if (not rcHide:containsPoint(ptPos)) then\n        self:hideImageView()\n    end\nend\n\nfunction NpcFigure:getActions()\n    if (self.m_arrAction:count() == 0) then\n        local flag = 0\n        while (true) do\n            local frameName = string.format(\"npc_%u_1_%d_%02d.png\", self.m_npcInfo.m_nRID, self.m_direction, flag)\n            local frame = CCSpriteFrameCache:sharedSpriteFrameCache():spriteFrameByName(frameName)\n            if (not frame) then\n                break\n            end\n            self.m_arrAction:addObject(frame)\n            flag = flag + 1\n        end        \n    end\n    \n    if (self.m_arrAction:count() > 0) then\n        local animation = cc.Animation:createWithSpriteFrames(self.m_arrAction, 1 / 5)\n        local animate = cc.Animate:create(animation)\n        local repeatForever = cc.RepeatForever:create(animate)\n        return repeatForever\n    end\n    \n    return nil\nend\n\nfunction NpcFigure:setHighlight()\n    if (self.m_spriteHigh:isVisible() == false) then\n        local blendFunc = ccBlendFunc:new()                                                                          \n        blendFunc.src = GL_DST_COLOR                                                                                       \n        blendFunc.dst = GL_ONE\n        self.m_spriteHigh:setBlendFunc(blendFunc)\n        \n        self.m_spriteHigh:setVisible(true)\n    end\nend\n\nfunction NpcFigure:setNormal()\n    if (self.m_spriteHigh:isVisible() == true) then        \n        self.m_spriteHigh:setVisible(false)\n    end\nend\n\nfunction NpcFigure:onTouchBegan(event)\n    if (not self.m_sprite) then\n        return false\n    end\n    \n    local point = cc.p(event.x, event.y)\n    point = self.m_sprite:convertToNodeSpace(point)\n    if (not self.m_fSpriteRect:containsPoint(point)) then\n        return false\n    end\n    \n    self:setHighlight()\n    return true\nend\n\nfunction NpcFigure:onTouchMoved(event)\n    if (not self.m_fSpriteRect:containsPoint(cc.p(event.x, event.y))) then\n        self:setNormal()\n    else\n        self:setHighlight()\n    end\nend\n\nfunction NpcFigure:onTouchEnded(event)\n    self:setNormal()\n    \n    local alertView = LAlertView.new(\"\", self.m_npcInfo.m_sSentence)\n    alertView:show(handler(self, self.alertCallBack))\nend\n\nfunction NpcFigure:onTouchCancelled(event)\n\nend\n\nfunction NpcFigure:alertCallBack(nBtnID)\n    if (nBtnID == 0) then\n        \n    end\nend\n\nreturn NpcFigure"
  },
  {
    "path": "源代码/2.2.5/mir9/scripts/app/map/NpcInfo.lua",
    "content": "-- NPC信息类\nlocal NpcInfo = class(\"NpcInfo\")\n\nfunction NpcInfo:ctor(json_value)\n    self.m_nID = json_value[\"ID\"]\n    self.m_nSID = json_value[\"SID\"]\n    self.m_nQID = json_value[\"QID\"]\n    self.m_nRID = json_value[\"RID\"]\n    self.m_sSentence = json_value[\"Sentence\"]\n    self.m_sName = json_value[\"Name\"]\nend\n\nreturn NpcInfo"
  },
  {
    "path": "源代码/2.2.5/mir9/scripts/app/map/NpcInfoSystem.lua",
    "content": "local cjson = require(\"cjson\")\nlocal NpcInfo = require(\"app.map.NpcInfo\")\n\n-- NPC信息系统类\nlocal NpcInfoSystem = class(\"NpcInfoSystem\")\n\nfunction NpcInfoSystem:ctor()\n    self.m_mapNpcInfo = {}\n    \n    local json_str = CCString:createWithContentsOfFile(\"game_data/npc_info.json\")\n    local json_value = cjson.decode(json_str:getCString())\n\n    for i = 1, #json_value do\n        self:addNpcInfo(json_value[i])\n    end\nend\n\nfunction NpcInfoSystem:addNpcInfo(json_value)\n    local npcInfo = NpcInfo.new(json_value)\n    self.m_mapNpcInfo[npcInfo.m_nID] = npcInfo\nend\n\nfunction NpcInfoSystem:getNpcInfo(nNpcID)\n    return self.m_mapNpcInfo[nNpcID]\nend\n\nreturn NpcInfoSystem"
  },
  {
    "path": "源代码/2.2.5/mir9/scripts/app/map/PathAStar.lua",
    "content": "local MapPoint = require(\"app.map.MapPoint\")\nlocal AStarSearch = require(\"app.map.AStarSearch\") \n\nlocal MapSearchNode = class(\"MapSearchNode\")\nlocal AStarPoint = class(\"AStarPoint\")\nlocal PathAStar = class(\"PathAStar\")\n\nlocal _roninAStar = nil\nlocal DISORDER = 1\n\nfunction MapSearchNode:ctor(x, y)\n    if (x and y) then\n        self.x = x\n        self.y = y\n    else\n        self.x = 0\n        self.y = 0\n    end\nend\n\nfunction MapSearchNode:isSameState(node)\n    -- same state in a maze search is simply when (x,y) are the same\n    if((self.x == node.x) and\n        (self.y == node.y)) then\n        return true\n    else\n        return false\n    end\nend\n\nfunction MapSearchNode:printNodeInfo()\n    -- cout << \"Node position : (\" << x << \", \" << y << \")\" << endl;\nend\n\n-- Here's the heuristic function that estimates the distance from a Node\n-- to the Goal. \nfunction MapSearchNode:goalDistanceEstimate(node)\n    local xd = math.abs(self.x - node.x)\n    local yd = math.abs(self.y - node.y)\n    return xd + yd\nend\n\nfunction MapSearchNode:isGoal(node)\n    if((self.x == node.x) and\n        (self.y == node.y)) then\n        return true\n    end\n\n    return false\nend\n\n-- This generates the successors to the given Node. It uses a helper function called\n-- AddSuccessor to give the successors to the AStar class. The A* specific initialisation\n-- is done for each node internally, so here you just set the state information that\n-- is specific to the application\nfunction MapSearchNode:getSuccessors(astarsearch, parent_node)\n    local parent_x = -1 \n    local parent_y = -1\n\n    if (parent_node) then\n        parent_x = parent_node.x\n        parent_y = parent_node.y\n    end\n    \n    local NewNode\n\n    -- push each possible move except allowing the search to go backwards\n\n    -- 左\n    if ((PathAStar.getMap(self.x-1, self.y) ~= DISORDER) and\n        not ((parent_x == self.x-1) and (parent_y == self.y))) then \n        NewNode = MapSearchNode.new(self.x-1, self.y)\n        astarsearch:addSuccessor(NewNode)\n    end\n\n    -- 左上\n    if ((PathAStar.getMap(self.x-1, self.y-1) ~= DISORDER) and\n        not ((parent_x == self.x-1) and (parent_y == self.y-1))) then\n        NewNode = MapSearchNode.new(self.x-1, self.y-1)\n        astarsearch:addSuccessor(NewNode)\n    end\n\n    -- 上\n    if ((PathAStar.getMap(self.x, self.y-1) ~= DISORDER) and \n        not ((parent_x == self.x) and (parent_y == self.y-1))) then\n        NewNode = MapSearchNode.new(self.x, self.y-1)\n        astarsearch:addSuccessor(NewNode)\n    end\n\n    -- 右上\n    if ((PathAStar.getMap(self.x+1, self.y-1) ~= DISORDER) and\n        not ((parent_x == self.x+1) and (parent_y == self.y-1))) then\n        NewNode = MapSearchNode.new(self.x+1, self.y-1)\n        astarsearch:addSuccessor(NewNode)\n    end\n\n    -- 右\n    if ((PathAStar.getMap(self.x+1, self.y) ~= DISORDER) and \n        not ((parent_x == self.x+1) and (parent_y == self.y))) then\n        NewNode = MapSearchNode.new(self.x+1, self.y)\n        astarsearch:addSuccessor(NewNode)\n    end\n\n    -- 右下\n    if ((PathAStar.getMap(self.x+1, self.y+1) ~= DISORDER) and \n        not ((parent_x == self.x+1) and (parent_y == self.y+1))) then\n        NewNode = MapSearchNode.new(self.x+1, self.y+1)\n        astarsearch:addSuccessor(NewNode)\n    end\n    \n    -- 下\n    if ((PathAStar.getMap(self.x, self.y+1) ~= DISORDER) and\n        not ((parent_x == self.x) and (parent_y == self.y+1))) then\n        NewNode = MapSearchNode.new(self.x, self.y+1)\n        astarsearch:addSuccessor(NewNode)\n    end\n\n    -- 左下\n    if ((PathAStar.getMap(self.x-1, self.y+1) ~= DISORDER) and \n        not ((parent_x == self.x-1) and (parent_y == self.y+1))) then\n        NewNode = MapSearchNode.new(self.x-1, self.y+1)\n        astarsearch:addSuccessor(NewNode)\n    end\n    \n    return true\nend\n\n-- given this node, what does it cost to move to successor. In the case\n-- of our map the answer is the map terrain value at this node since that is \n-- conceptually where we're moving\nfunction MapSearchNode:getCost(node)\n    return PathAStar.getMap(self.x, self.y)\nend\n\nfunction AStarPoint:ctor(x, y)\n    self.x = x\n    self.y = y\nend\n\nfunction PathAStar:ctor()\nend\n\nfunction PathAStar.getMap(x, y)\n    if (0 > x or x >= _roninAStar.m_nRow or 0 > y or y >= _roninAStar.m_nCol) then\n        return 1\n    end\n    \n--    if (_roninAStar.m_nMap[y*_roninAStar.m_nRow+x+1] == 1) then\n--        return 1\n--    end\n    \n    if (_roninAStar.m_nMap[y][x] == 1) then\n        return 1\n    end\n    \n    if (g_mainScene:getMapPoint(MapPoint.new(x * 65536 + y))) then\n        return 1\n    end\n    \n    return 0\nend\n\nfunction PathAStar:setData(nRow, nCol, map, nMaxNodes)\n    self.m_nMap = map\n    self.m_nRow = nRow\n    self.m_nCol = nCol\n    self.m_nMaxNodes = nMaxNodes\nend\n\nfunction PathAStar.findPathByAStar(map, nRow, nCol, nMaxNodes, beginMPoint, endMPoint)\n    if (not _roninAStar) then\n        _roninAStar = PathAStar.new()\n    end\n    _roninAStar:setData(nRow, nCol, map, nMaxNodes)\n    \n    local dequeMPoint = {}\n    local dequeAStarPt = _roninAStar:findPathByAStarInternal(beginMPoint, endMPoint)\n\n    if (#dequeAStarPt <= 1) then\n        return dequeMPoint\n    end\n\n    for k, v in ipairs(dequeAStarPt) do\n        table.insert(dequeMPoint, MapPoint.new(v.x, v.y))\n    end\n\n    return dequeMPoint\nend\n\nfunction PathAStar:findPathByAStarInternal(beginMPoint, endMPoint)\n    local dequeAStarPt = {}\n\n    local filterEnd = self:getFilterEndPoint(beginMPoint, endMPoint)\n    \n    local astarsearch = AStarSearch.new(self.m_nMaxNodes)\n\n    local SearchCount = 0\n\n    local NumSearches = 1\n\n    while (SearchCount < NumSearches) do\n        \n        -- Create a start state\n        local nodeStart = MapSearchNode.new()\n        nodeStart.x = beginMPoint.x\n        nodeStart.y = beginMPoint.z\n\n        -- Define the goal state\n        local nodeEnd = MapSearchNode.new()\n        nodeEnd.x = filterEnd.x\n        nodeEnd.y = filterEnd.z\n        \n        -- Set Start and goal states\n        \n        astarsearch:setStartAndGoalStates(nodeStart, nodeEnd)\n\n        local SearchState\n        local SearchSteps = 0\n\n        repeat\n            SearchState = astarsearch:searchStep()\n            SearchSteps = SearchSteps + 1\n        until (not (SearchState == SEARCH_STATE_SEARCHING))\n        \n        if (SearchState == SEARCH_STATE_SUCCEEDED) then\n            local node = astarsearch:getSolutionStart()\n                \n            local steps = 0\n\n            node:printNodeInfo()\n\n            while (true) do\n                table.insert(dequeAStarPt, AStarPoint.new(node.x, node.y))\n                node = astarsearch:getSolutionNext()\n                    \n                if (not node) then\n                    break\n                end\n\n                node:printNodeInfo()\n                steps = steps + 1\n            end\n            \n            -- Once you're done with the solution you can free the nodes up\n            astarsearch:freeSolutionNodes()\n        elseif(SearchState == SEARCH_STATE_FAILED) then\n        \n        end\n\n        -- Display the number of loops the search went through\n\n        SearchCount = SearchCount + 1\n\n        astarsearch:ensureMemoryFreed()\n    end\n    \n    return dequeAStarPt\nend\n\nfunction PathAStar:getFilterEndPoint(beginMPoint, endMPoint)\n    local relust = endMPoint\n\n    if (PathAStar.getMap(endMPoint.x, endMPoint.z) ~= DISORDER) then\n        return relust\n    end\n        \n    local count = beginMPoint:getDistance(endMPoint) + 10\n    for i = 1, count do\n        local arrMPoint = endMPoint:getMapPointVectorForDistance(i)\n\n        local lenght = 0xffff\n        for k, v in ipairs(arrMPoint) do\n            local mpoint = v\n            if (not (PathAStar.getMap(mpoint.x, mpoint.z) == DISORDER or\n                mpoint:getDistance(beginMPoint) >= lenght or\n                mpoint:equalsObj(beginMPoint))) then\n                relust = mpoint\n                lenght = mpoint:getDistance(beginMPoint) \n            end\n        end\n        \n        if (not relust:equalsObj(endMPoint)) then\n            break\n        end\n    end\n\n    return relust\nend\n\nreturn PathAStar"
  },
  {
    "path": "源代码/2.2.5/mir9/scripts/app/map/PortalSprite.lua",
    "content": "-- 传送门精灵类\nlocal PortalSprite = class(\"PortalSprite\", function()\n    return display.newSprite()\nend)\n\nfunction PortalSprite:ctor(path)\n    self.m_path = path\n    self.m_sprite = nil\n    \n    display.addSpriteFramesWithFile(\"texture_set/portal.plist\", \"texture_set/portal.png\")\n    self:init()\nend\n\nfunction PortalSprite:init()\n    local size = cc.size(150, 60)\n    self:setContentSize(size)\n    \n    self.m_sprite = CCSprite:create()\n    self.m_sprite:setAnchorPoint(0.5, 0.3)\n    self.m_sprite:setPosition(size.width/2, size.height/2)\n    self:addChild(self.m_sprite)\n\n    self:playAnimate()\n    \n    return true\nend\n\n-- 播放传送点动画\nfunction PortalSprite:playAnimate()\n    local i = 1\n    local array = CCArray:createWithCapacity(8)\n    while (true) do\n        local path = string.format(\"%s%04d.png\", self.m_path, i)\n        local spriteFrame = CCSpriteFrameCache:sharedSpriteFrameCache():spriteFrameByName(path)\n        if (not spriteFrame) then\n            break\n        end\n        array:addObject(spriteFrame)\n        i = i + 1\n    end\n    local animation = cc.Animation:createWithSpriteFrames(array, 1 / 9)\n    local animate = cc.Animate:create(animation)\n    self.m_sprite:runAction(cc.RepeatForever:create(animate))\nend\n\nreturn PortalSprite"
  },
  {
    "path": "源代码/2.2.5/mir9/scripts/app/prop_system/PropIconShow.lua",
    "content": "-- 属性图标显示类\nlocal PropIconShow = class(\"PropIconShow\", function()\n    return display.newSprite()\nend)\n\nfunction PropIconShow:ctor(propInfo)\n    self.m_propInfo = propInfo\n    self.m_path = string.format(\"prop_icon/propIcon_%u.png\", self.m_propInfo.m_nIconNum)\n    local pTexture = CCTextureCache:sharedTextureCache():addImage(self.m_path)\n    self:setTexture(pTexture)\nend\n\nreturn PropIconShow"
  },
  {
    "path": "源代码/2.2.5/mir9/scripts/app/prop_system/PropInfo.lua",
    "content": "-- 属性信息类\nlocal PropInfo = class(\"PropInfo\")\n\nfunction PropInfo:ctor(json_value)    \n    self.m_nNum = json_value[\"ID\"]\n    self.m_nIconNum = json_value[\"Icon\"]\n    self.m_nAvatarNum = json_value[\"AvatarID\"]\n    self.m_strName = json_value[\"Name\"]\n    self.m_nType = json_value[\"Type\"]\n    self.m_strDepict = json_value[\"Depict\"]\n    self.m_levelRequirements = json_value[\"Nlevel\"]\n    self.m_attackRequirements = json_value[\"Nattack\"]\n    self.m_magicRequirements = json_value[\"Nmaige\"]\n    self.m_taoismRequirements = json_value[\"Ntaoism\"]\n    self.m_gender = json_value[\"Gender\"]\n    self.m_lasting = json_value[\"Lasting\"]\n    self.m_weight = json_value[\"Weight\"]\n    self.m_specialRequirements = json_value[\"Nspecial\"]\n    self.m_coin = json_value[\"Coin\"]\n    self.m_accurate = json_value[\"Accurate\"]\n    self.m_dodge = json_value[\"Dodge\"]\n    self.m_magicDodge = json_value[\"Mdodge\"]\n    self.m_defenseMax = json_value[\"MaxDefense\"]\n    self.m_defenseMin = json_value[\"MinDefense\"]\n    self.m_magicDefenseMax = json_value[\"MaxMDefense\"]\n    self.m_magicDefenseMin = json_value[\"MinMDefense\"]\n    self.m_attackMax = json_value[\"MaxAttack\"]\n    self.m_attackMin = json_value[\"MinAttack\"]\n    self.m_magicMax = json_value[\"MaxMaige\"]\n    self.m_magicMin = json_value[\"MinMaige\"]\n    self.m_taoismMax = json_value[\"MaxTaoism\"]\n    self.m_taoismMin = json_value[\"MinTaoism\"]\n    self.m_lucky = json_value[\"Lucky\"]\n    self.m_SE = json_value[\"SE\"]\n    self.m_JS = json_value[\"JS\"]\nend\n\nreturn PropInfo"
  },
  {
    "path": "源代码/2.2.5/mir9/scripts/app/prop_system/PropSystem.lua",
    "content": "local cjson = require(\"cjson\")\nlocal PropInfo = require(\"app.prop_system.PropInfo\")\n\n-- 属性系统类\nlocal PropSystem = class(\"PropSystem\")\n\n-- 构造函数\nfunction PropSystem:ctor()\n    self.m_mapProp = {}\n    \n    local json_str = CCString:createWithContentsOfFile(\"game_data/prop_info.json\")\n    local json_value = cjson.decode(json_str:getCString())\n\n    for i = 1, #json_value do\n        self:addPropInfo(json_value[i])\n    end\nend\n\nfunction PropSystem:addPropInfo(json_value)\n    local propInfo = PropInfo.new(json_value)\n    self.m_mapProp[propInfo.m_nNum] = propInfo\nend\n\nfunction PropSystem:getPropInfo(nPropID)\n    return self.m_mapProp[nPropID]\nend\n\nreturn PropSystem"
  },
  {
    "path": "源代码/2.2.5/mir9/scripts/app/scenes/GameLoading.lua",
    "content": "local scheduler = require(\"framework.scheduler\")\n\nlocal GameLoading = class(\"GameLoading\", function()\n    return display.newScene(\"GameLoading\")\nend)\n\nfunction GameLoading:ctor()\n--    self.m_mapID = mapID\n--    self.m_born = born\n    self:init()\nend\n\nfunction GameLoading:onEnter()\n--    if (not g_mainScene) then\n--        self.hInitGameScene = scheduler.performWithDelayGlobal(handler(self, self.initGameScene), 0.5)\n--    end\n    \n    --self.hUpdateBgMap = scheduler.performWithDelayGlobal(handler(self, self.updateBgMap), 1.0)\nend\n\nfunction GameLoading:onExit()\n    CCTextureCache:sharedTextureCache():removeAllTextures()\n--    if (self.hInitGameScene) then\n--        scheduler.unscheduleGlobal(self.hInitGameScene)\n--        self.hInitGameScene = nil\n--    end\n--    \n--    if (self.hUpdateBgMap) then\n--        scheduler.unscheduleGlobal(self.hUpdateBgMap)\n--        self.hUpdateBgMap = nil\n--    end\nend\n\nfunction GameLoading.runGameLoading(mapID, born)\n    GameLoading.m_mapID = mapID\n    GameLoading.m_born = born\n    app:enterScene(\"GameLoading\")\n--    if (not g_gameLoading) then\n--        g_gameLoading = GameLoading.new(mapID, born)\n--        CCDirector:sharedDirector():getRunningScene():addChild(g_gameLoading, 100)\n--        g_gameLoading:release()\n--    end\n--    return g_gameLoading\nend\n\nfunction GameLoading:init()    \n    self:setAnchorPoint(cc.p(0, 0))\n    \n    self.m_sprite = display.newSprite(\"map/loading.jpg\")\n    self.m_sprite:setPosition(display.cx, display.cy)\n    self:addChild(self.m_sprite, -1)\n    \n    local ttf = CCLabelTTF:create(\"加载中……\", \"Arial\", 30)\n    ttf:setPosition(display.width-70, 20)\n    self:addChild(ttf)\n    \n--    if (g_mainScene and g_mainScene:getCurrBgMap()) then\n--        self:setOpacity(0)\n--        local fadeIn = cc.FadeIn:create(0.5)\n--        self:runAction(fadeIn)\n--    end\n    \n    self.hInitGameScene = scheduler.performWithDelayGlobal(handler(self, self.initGameScene), 0.5)\n    \n    return true\nend\n\nfunction GameLoading:initGameScene(fDelay)\n    -- CCDirector:sharedDirector():getRunningScene():addChild(MainScene.new())\n    app:enterScene(\"MainScene\", nil, \"fade\", 0.5)\nend\n\n--function GameLoading:updateBgMap(fDelay)\n--    CCTextureCache:sharedTextureCache():removeUnusedTextures()\n--    g_mainScene:replaceBgMap(self.m_mapID, self.m_born)\n--    self:updateFinish()\n--end\n--\n--function GameLoading:updateFinish()\n--    local fadeOut = cc.FadeOut:create(0.3)\n--    local callFunc = cc.CallFunc:create(handler(self, self.removeFromParent))\n--    local array = CCArray:create()\n--    array:addObject(fadeOut)\n--    array:addObject(callFunc)\n--    local sequence = cc.Sequence:create(array)\n--    self:runAction(sequence)\n--end\n\nreturn GameLoading"
  },
  {
    "path": "源代码/2.2.5/mir9/scripts/app/scenes/LoginScene.lua",
    "content": "local LoginScene = class(\"LoginScene\", function()\n    return display.newScene(\"LoginScene\")\nend)\n\nfunction LoginScene:ctor()\n    self.m_edtAccount = nil\n    self.m_edtPwd = nil\n    self:init()\nend\n\nfunction LoginScene:init()\n--#if (CC_TARGET_PLATFORM==CC_PLATFORM_ANDROID)\n--\tthis->setKeypadEnabled(true);\n--#endif\n    \n\n    local layerColor = CCLayerColor:create(ccc4(200, 200, 200, 200), display.width, display.height)\n    self:addChild(layerColor)\n\n    local account = \"请输入您的账号\"\n    local pwd = \"请输入您的密码\"\n    \n    local szEditBox = cc.size(360, 50)\n    local ptEditBox = cc.PointAdd(cc.p(display.cx, display.cy), cc.p(0, 100))\n    \n    local editBox = ui.newEditBox({\n        -- image = \"EditBoxBg.png\",\n        size = szEditBox,\n        x = ptEditBox.x,\n        y = ptEditBox.y,\n        listener = function(event, editbox)\n            if event == \"began\" then\n                self:onEditBoxBegan(editbox)\n            elseif event == \"ended\" then\n                self:onEditBoxEnded(editbox)\n            elseif event == \"return\" then\n                self:onEditBoxReturn(editbox)\n            elseif event == \"changed\" then\n                self:onEditBoxChanged(editbox)\n            else\n                printf(\"EditBox event %s\", tostring(event))\n            end\n        end\n    })\n    editBox:setPlaceHolder(account)\n    editBox:setPlaceholderFontColor(ccc3(0, 0, 0))\n    editBox:setMaxLength(12)\n    editBox:setInputMode(kEditBoxInputModeAny)\n    editBox:setReturnType(kKeyboardReturnTypeDone)\n    self:addChild(editBox)\n    self.m_edtAccount = editBox\n    \n    ptEditBox = cc.PointAdd(cc.p(display.cx, display.cy), cc.p(0, 30))\n    \n    editBox = ui.newEditBox({\n        -- image = \"EditBoxBg.png\",\n        size = szEditBox,\n        x = ptEditBox.x,\n        y = ptEditBox.y,\n        listener = function(event, editbox)\n            if event == \"began\" then\n                self:onEditBoxBegan(editbox)\n            elseif event == \"ended\" then\n                self:onEditBoxEnded(editbox)\n            elseif event == \"return\" then\n                self:onEditBoxReturn(editbox)\n            elseif event == \"changed\" then\n                self:onEditBoxChanged(editbox)\n            else\n                printf(\"EditBox event %s\", tostring(event))\n            end\n        end\n    })\n    editBox:setPlaceHolder(pwd)\n    editBox:setPlaceholderFontColor(ccc3(0, 0, 0))\n    editBox:setMaxLength(12)\n    editBox:setInputMode(kEditBoxInputModeAny)\n    editBox:setReturnType(kKeyboardReturnTypeDone)\n    editBox:setInputFlag(kEditBoxInputFlagPassword)\n    self:addChild(editBox)\n    self.m_edtPwd = editBox\n    \n    local accountBg = CCLayerColor:create(ccc4(100, 100, 200, 200), szEditBox.width, szEditBox.height)\n    accountBg:setPosition(cc.PointSub(cc.p(self.m_edtAccount:getPosition()), cc.p(self.m_edtAccount:getContentSize().width/2, self.m_edtAccount:getContentSize().height/2)))\n    self:addChild(accountBg, -1)\n    \n    local cipherBg = CCLayerColor:create(ccc4(100, 100, 200, 200), szEditBox.width, szEditBox.height)\n    cipherBg:setPosition(cc.PointSub(cc.p(self.m_edtPwd:getPosition()), cc.p(self.m_edtPwd:getContentSize().width/2, self.m_edtPwd:getContentSize().height/2)))\n    self:addChild(cipherBg, -1)\n    \n    local PUSH_BUTTON_IMAGES = {\n        normal = nil,\n        pressed = nil,\n        disabled = nil,\n    }\n\n    local btnLogin = cc.ui.UIPushButton.new(PUSH_BUTTON_IMAGES, {scale9 = true})\n    btnLogin:setAnchorPoint(0.5, 0.5)\n    btnLogin:setPosition(cc.PointSub(cc.p(display.cx, display.cy), cc.p(80, 60)))\n    btnLogin:setButtonLabel(\"normal\", ui.newTTFLabel({\n        text = \"登陆\",\n        fontName = \"Arial\",\n        size = 50\n    }))\n    btnLogin:onButtonClicked(handler(self, self.onBtn_Login))\n    self:addChild(btnLogin)\n    \n    \n    local btnReg = cc.ui.UIPushButton.new(PUSH_BUTTON_IMAGES, {scale9 = true})\n    btnReg:setAnchorPoint(0.5, 0.5)\n    btnReg:setPosition(cc.PointSub(cc.p(display.cx, display.cy), cc.p(-80, 60)))\n    btnReg:setButtonLabel(\"normal\", ui.newTTFLabel({\n        text = \"注册\",\n        fontName = \"Arial\",\n        size = 50\n    }))\n    btnReg:onButtonClicked(handler(self, self.onBtn_Register))\n    self:addChild(btnReg)\n        \n    return true\nend\n\n-- 登陆按钮\nfunction LoginScene:onBtn_Login(event)\n    self:joinGame()\nend\n\n-- 注册按钮\nfunction LoginScene:onBtn_Register(event)\n    for i = 0, 7 do\n        local angle = i * 45 * math.pi / 180\n    end\nend\n\nfunction LoginScene:joinGame()\n    app:enterScene(\"RoleSelScene\")\nend\n\nfunction LoginScene:onEditBoxBegan(editbox)\n    printf(\"editBox1 event began : text = %s\", editbox:getText())\nend\n\nfunction LoginScene:onEditBoxEnded(editbox)\n    printf(\"editBox1 event ended : %s\", editbox:getText())\nend\n\nfunction LoginScene:onEditBoxReturn(editbox)\n    printf(\"editBox1 event return : %s\", editbox:getText())\nend\n\nfunction LoginScene:onEditBoxChanged(editbox)\n    printf(\"editBox1 event changed : %s\", editbox:getText())\nend\n\n\nfunction LoginScene:keyBackClicked()\n    \nend\n\nfunction LoginScene:keyMenuClicked()\n\nend\n\nreturn LoginScene"
  },
  {
    "path": "源代码/2.2.5/mir9/scripts/app/scenes/MainScene.lua",
    "content": "local scheduler = require(\"framework.scheduler\")\nlocal AttackSkillSystem = require(\"app.skill_system.AttackSkillSystem\")\nlocal NpcInfoSystem = require(\"app.map.NpcInfoSystem\")\nlocal PropSystem = require(\"app.prop_system.PropSystem\")\nlocal MapPoint = require(\"app.map.MapPoint\")\nlocal BgMap = require(\"app.map.BgMap\")\nlocal Player = require(\"app.figure.Player\")\nlocal Enemy = require(\"app.figure.Enemy\")\nlocal TextureController = require(\"app.figure.TextureController\")\nlocal PathAStar = require(\"app.map.PathAStar\")\nlocal CCTouchMouse = require(\"app.game_ui.CCTouchMouse\")\nlocal GameInfoUIController = require(\"app.game_ui.GameInfoUIController\")\nlocal GameLoading = require(\"app.scenes.GameLoading\")\n\nlocal MainScene = class(\"MainScene\", function()\n    return display.newScene(\"MainScene\")\nend)\n\n    \nfunction MainScene:ctor()\n--    ui.newTTFLabel({text = \"Hello, World\", size = 64, align = ui.TEXT_ALIGN_CENTER})\n--        :pos(display.cx, display.cy)\n--        :addTo(self)\n\n    self.m_ptPlayerDirection = cc.p(0, 0) \n    self.m_touchMouse = nil\n    self.m_bTouchProtected = false\n    self.m_bIsPlayerMoveActions = false \n    self.m_bgMap = nil\n    self.m_gameInfoUIController = nil\n    self.m_mapEnemy = {}\n    self.m_mapOtherPlayer = {}\n    self.m_mapMPoint = {}\n    self.m_waitReincarnationEnemy = nil\n    self.m_mapProp = {}\n    self.m_enemyDictionary = {}\n    \n    self:init()\nend\n\nfunction MainScene:onEnter()\n    self.hPlayerMovement = scheduler.scheduleGlobal(handler(self, self.playerMovement), 0.5)\nend\n\nfunction MainScene:onExit()\n    if (self.hPlayerMovement) then\n        scheduler.unscheduleGlobal(self.hPlayerMovement)\n        self.hPlayerMovement = nil\n    end\nend\n\nfunction MainScene:init()\n    g_mainScene = self\n    \n    self.m_mapPoint = {}\n    self.m_bgMap = nil\n\n    display.addSpriteFramesWithFile(\"texture_set/blood_return.plist\", \"texture_set/blood_return.png\")\n\n    g_attackSkillSystem = AttackSkillSystem.new()\n    g_npcInfoSystem = NpcInfoSystem.new()\n    g_propSystem = PropSystem.new()\n    \n    g_player = Player.new()\n    g_player:retain()\n    \n    -- create touch layer\n    self.layer = display.newLayer()\n    self.layer:addNodeEventListener(cc.NODE_TOUCH_EVENT, function(event)\n        if event.name == \"began\" then\n            return self:onTouchBegan(event)\n        elseif event.name == \"moved\" then\n            self:onTouchMoved(event)\n        elseif event.name == \"ended\" then\n            self:onTouchEnded(event)\n        elseif event.name == \"cancel\" then\n            self:onTouchCancelled(event)\n        end\n    end)\n    self:addChild(self.layer, -10000)\n\n    self.layer:setTouchEnabled(true)\n        \n    self.m_spSel = display.newSprite(\"ui/tray_self.png\")\n    self.m_spSel:retain()\n    \n    self.m_touchMouse = CCTouchMouse.new()\n    self.m_touchMouse:retain()\n    \n    self:replaceBgMap(GameLoading.m_mapID, GameLoading.m_born)\n    \n    --self:replaceBgMap(200, 1)\n    --self:replaceBgMap(100, 4)\n    \n    self.m_gameInfoUIController = GameInfoUIController.new()\n    self:addChild(self.m_gameInfoUIController)\n\n    return true\nend\n\nfunction MainScene:replaceBgMap(nMapID, nBorn)\n    self.m_mapMPoint = {}\n    \n    if (self.m_bgMap) then\n        self.m_mapMPoint = {}\n        self.m_bgMap:unloadMap()\n        self.m_bgMap:removeFromParent()\n    end\n    \n    --g_player = nil\n    --g_player = Player.new()\n    \n    local player = g_player\n    player:stand()\n    \n    self.m_enemyDictionary = {}\n--    m_otherDictionary->removeAllObjects();\n    \n    local bgMap = BgMap.new()\n    self:setCurrBgMap(bgMap)\n    bgMap:loadMap(nMapID)\n    bgMap:setDelegate(self)\n    self:addChild(bgMap, -1)\n    bgMap:addChildPlayerLead(player, nBorn)\n    self.m_touchMouse:setPosition(-100, -100)\n    bgMap:addChild(self.m_touchMouse, BgMap.getZOrderZero(bgMap))\n    self.m_waitReincarnationEnemy = bgMap:getEnemeyMap()\n    \n    self.m_nEnemyID = 1000\n    for i = 1, #self.m_waitReincarnationEnemy do\n        local t = self.m_waitReincarnationEnemy[i]\n        self:addEnemy(t.key, t.mpoint, self.m_nEnemyID)\n        self.m_nEnemyID = self.m_nEnemyID + 1\n    end\n    \n    self.m_waitReincarnationEnemy = {}\nend\n\nfunction MainScene:setCurrBgMap(bgMap)\n    self.m_bgMap = bgMap\nend\n\nfunction MainScene:getCurrBgMap()\n    return self.m_bgMap\nend\n    \n-- 脱离战斗\nfunction MainScene:OutOfCombat()\n    self:showSelected(nil)\n    self.m_gameInfoUIController:getOperationMenu():cancelHangUP()\nend\n\nfunction MainScene:isPointValid(mpoint)\n    if (self.m_bgMap:getCurrentGridValue(mpoint) == 1) then\n        return false\n    end\n    \n    if (self:getMapPoint(mpoint)) then\n        return false\n    end\n    \n    return true\nend\n\nfunction MainScene:touchProtected()\n    if (self.m_bTouchProtected == false) then\n        return\n    end\n        \n    self:stopActionByTag(0xff99)\n    self.m_bTouchProtected = true\n    local delayTime = cc.DelayTime:create(0.5)\n    local callFunc = cc.CallFunc:create(handler(self, self.untouchProtected))\n    local array = CCArray:create()\n    array:addObject(delayTime)\n    array:addObject(callFunc)\n    local sequence = cc.Sequence:create(array)\n    sequence:setTag(0xff99)\n    self:runAction(sequence)\nend\n\nfunction MainScene:untouchProtected()\n    self.m_bTouchProtected = false\nend\n\nfunction MainScene:updateImageDisplay(rcShow, rcHide)\n    for key, enemy in pairs(self.m_enemyDictionary) do\n        if (rcShow:containsPoint(cc.p(enemy:getPosition()))) then\n            enemy:showFigure()\n        end\n        if (not rcHide:containsPoint(cc.p(enemy:getPosition()))) then\n            enemy:hideFigure()\n        end\n    end\n    \n--    CCArray* otherPlayerKeys = m_otherDictionary->allKeys();\n--    if (otherPlayerKeys)\n--    {\n--        for (unsigned int i=0; i<otherPlayerKeys->count(); i++)\n--        {\n--            int key = ((CCInteger*)otherPlayerKeys->objectAtIndex(i))->getValue();\n--            OtherPlayer* otherPlayer = (OtherPlayer*)m_otherDictionary->objectForKey(key);\n--            if (showRect.containsPoint(otherPlayer->getPosition()))\n--            {\n--                otherPlayer->showFigure();\n--            }\n--            if (!hideRect.containsPoint(otherPlayer->getPosition()))\n--            {\n--                otherPlayer->hideFigure();\n--            }\n--        }\n--    }\nend\n\nfunction MainScene:insterMapPoint(monomer, mpoint)\n    self.m_mapMPoint[monomer] = mpoint:getValue()\nend\n\nfunction MainScene:eraseMapPoint(monomer)\n    self.m_mapMPoint[monomer] = nil\nend\n\nfunction MainScene:getMapPoint(mpoint)\n    local bRet = false\n    local value = mpoint:getValue()\n    \n    for k, v in pairs(self.m_mapMPoint) do\n        if (v == value) then\n            bRet = true\n            break\n        end\n    end\n    \n    return bRet\nend\n\nfunction MainScene:insterMapPointForProp(var, mpoint)\n    local value = mpoint:getValue()\n    if (not self.m_mapProp[value]) then\n        return false\n    end\n        \n    self.m_mapProp[value] = var\n    return true\nend\n\nfunction MainScene:eraseMapPointForProp(mpoint)\n    self.m_mapProp[mpoint:getValue()] = nil\nend\n\nfunction MainScene:getMapPointForProp(mpoint)\n    return self.m_mapProp[mpoint:getValue()]\nend\n\nfunction MainScene:getPath(beginMPoint, endMPoint)\n    local dequeMPoint = PathAStar.findPathByAStar(\n        self.m_bgMap:getMapGrid(),\n        self.m_bgMap:getGridRow(),\n        self.m_bgMap:getGridCol(),\n        4096, beginMPoint, endMPoint)\n\n    local relust = {}\n    \n    local i = 1\n    local endIndex = (#dequeMPoint) + 1\n    \n    while (i ~= endIndex) do\n        if (i + 1 == endIndex) then\n            table.insert(relust, dequeMPoint[i])\n            break\n        end\n        \n        local p1 = dequeMPoint[i]\n        local p2 = dequeMPoint[i+1]\n        \n        if (#relust > 0 and MapPoint.equals(MapPoint.mul(MapPoint.sub(p1, relust[#relust]), 2), MapPoint.sub(p2, relust[#relust]))) then\n            table.insert(relust, p2)\n            i = i + 2\n        else\n            table.insert(relust, p1)\n            i = i + 1\n        end\n    end\n    \n    return relust\nend\n\nfunction MainScene:getPathNextRunGrid(beginMPoint, endMPoint)\n    local dequeMPoint = PathAStar.findPathByAStar(\n        self.m_bgMap:getMapGrid(),\n        self.m_bgMap:getGridRow(),\n        self.m_bgMap:getGridCol(),\n        64, beginMPoint, endMPoint)\n    \n    local relust = {}\n    table.insert(relust, dequeMPoint[1])\n    \n    while (#dequeMPoint > 3) do\n        table.remove(dequeMPoint)\n    end\n    \n    if (#dequeMPoint == 2) then\n        local p = dequeMPoint[2]\n        table.insert(relust, p)\n    elseif (#dequeMPoint > 2) then\n        local p1 = dequeMPoint[2]\n        local p2 = dequeMPoint[3]\n        \n        if (MapPoint.sub(p2, dequeMPoint[1]):equalsObj(MapPoint.sub(p1, dequeMPoint[1]):mul(2))) then\n            table.insert(relust, p2)\n        else\n            table.insert(relust, p1)\n        end\n    end\n    \n    return relust\nend\n\nfunction MainScene:getPathNextWalkGrid(beginMPoint, endMPoint)\n    local dequeMPoint = PathAStar.findPathByAStar(\n        self.m_bgMap:getMapGrid(),\n        self.m_bgMap:getGridRow(),\n        self.m_bgMap:getGridCol(),\n        64, beginMPoint, endMPoint)\n\n    while (#dequeMPoint > 2) do\n        table.remove(dequeMPoint)\n    end\n    \n    return dequeMPoint\nend\n\nfunction MainScene:onTouchBegan(event)\n    local point = cc.p(event.x, event.y)\n    point = self.m_bgMap:convertToNodeSpace(point)\n    \n    if (not self:isVisible()) then\n        return false\n    end\n    \n    if (self.m_bTouchProtected) then\n        return false\n    end\n\n    if (self:getSelected()) then\n        if (self:getSelected():getRect():containsPoint(point)) then\n            self.m_gameInfoUIController:getOperationMenu():commonAttack()\n            return true\n        else\n            self:showSelected(nil)\n        end\n    end\n        \n--    CCArray* otherKeys = m_otherDictionary->allKeys()\n--    if (otherKeys)\n--    {\n--        for (int i=0; i<otherKeys->count(); i++)\n--        {\n--            int key = ((CCInteger*)otherKeys->objectAtIndex(i))->getValue();\n--            Monomer* mon = (Monomer*)m_otherDictionary->objectForKey(key);\n--            if (mon->getRect().containsPoint(point))\n--            {\n--                this->showSelected(mon);\n--                break;\n--            }\n--        }\n--    }\n\n    if (self.m_enemyDictionary) then\n        for key, enemy in pairs(self.m_enemyDictionary) do\n            if (enemy:getRect():containsPoint(point)) then\n                self:showSelected(enemy)\n                g_player:setAttackMonomerMajor(enemy)\n                return true\n            end\n        end\n    end\n\n    if (not self:getSelected()) then\n        self.m_ptPlayerDirection = self.m_bgMap:convertToWorldSpace(point)\n        self:beginMoveActions()\n        self:touchProtected()\n        self.m_gameInfoUIController:getOperationMenu():cancelHangUP()\n    end\n    \n--    this->unschedule(schedule_selector(MainScene:log));\n--    this->schedule(schedule_selector(MainScene:log));\n    return true\nend\n\nfunction MainScene:onTouchMoved(event)    \n    if (not self.m_bIsPlayerMoveActions) then\n        return\n    end\n    local point = cc.p(event.x, event.y)\n    point = self.m_bgMap:convertToNodeSpace(point)\n    self.m_ptPlayerDirection = self.m_bgMap:convertToWorldSpace(point)\n    if (g_player:getState() ~= FigureState.Stand) then\n        return\n    end\n    self:beginMoveActions()\nend\n\nfunction MainScene:onTouchEnded(event)\n    self:stopMoveActions()\nend\n\nfunction MainScene:onTouchCancelled(event)\n    \nend\n\nfunction MainScene:removeEnemy(enemy)\n    table.insert(self.m_waitReincarnationEnemy, {[\"key\"] = enemy:getRoleNumber(), [\"mpoint\"] = enemy:getDenPos()})\n    self.m_mapMPoint[enemy] = nil\n    self.m_enemyDictionary[enemy:getEnemyID()] = nil\n    if (enemy == self:getSelected()) then\n        self:showSelected(nil)\n    end\n    local fTime = math.random() * 5 + 3\n    local callFunc = cc.CallFunc:create(handler(self, self.addEnemy_))\n    local array = CCArray:create()\n    array:addObject(cc.DelayTime:create(fTime))\n    array:addObject(callFunc)\n    local sequence = cc.Sequence:create(array)\n    self:runAction(sequence)\n    \n    self.m_gameInfoUIController:getOperationMenu():intelligentSearch()\nend\n\nfunction MainScene:addEnemy(num, mpoint, tag)\n    local enemy = Enemy.new(tag, num, 0)\n    enemy:setPosition(mpoint:getCCPointValue())\n    enemy:setDenPos(MapPoint.new(cc.p(enemy:getPosition())))\n    self.m_bgMap:addChild(enemy)\n    enemy:updateVertexZ()\n    enemy:setAttackTime(1.0)\n    \n    if (num == 11000) then\n        enemy:setBlood(32000)\n        enemy:setBloodCap(32000)\n        enemy:setTheAttack(500)\n    elseif (num == 12000) then\n        enemy:setBlood(128000)\n        enemy:setBloodCap(128000)\n        enemy:setTheAttack(1500)\n    elseif (num == 30000) then\n        enemy:setBlood(4000)\n        enemy:setBloodCap(4000)\n        enemy:setTheAttack(50)\n        enemy:setActive(false)\n    elseif (num == 26000) then\n        enemy:setBlood(16000)\n        enemy:setBloodCap(16000)\n        enemy:setTheAttack(100)\n        enemy:setCanMoved(false)\n    else\n        enemy:setBlood(8000)\n        enemy:setBloodCap(8000)\n        enemy:setTheAttack(30)\n        enemy:setActive(false)\n    end\n    \n    enemy:patrol()\n    \n    self.m_enemyDictionary[enemy:getEnemyID()] = enemy\n    enemy:setTag(tag)\nend\n\nfunction MainScene:addEnemy_()\n    local t = self.m_waitReincarnationEnemy[1]\n    self:addEnemy(t.key, t.mpoint, self.m_nEnemyID)\n    self.m_nEnemyID = self.m_nEnemyID + 1\n    table.remove(self.m_waitReincarnationEnemy, 1)\nend\n\nfunction MainScene:getMonmerVecIsLenght(point, lenght)\n    local arrEnemy = {}\n    local mapEnemy = self.m_enemyDictionary\n    if (mapEnemy) then\n        for key, enemy in pairs(mapEnemy) do\n            local x = point.x - enemy:getHurtPoint().x\n            local y = point.y - enemy:getHurtPoint().y\n            y = y / math.sqrt(2)\n            if (math.sqrt(x * x + y * y) <= lenght) then\n                table.insert(arrEnemy, enemy)\n            end\n        end\n    end\n    return arrEnemy\nend\n\nfunction MainScene:playerMovement(dt)\n    if (not self.m_bgMap) then\n        return\n    end\n    \n    local arrEnemy = self:getMonmerVecIsLenght(cc.p(g_player:getPosition()), MapPoint.new(6, 1):getCCSizeValue().width)\n    for i = 1, #arrEnemy do\n        local enemy = arrEnemy[i]\n        if ((enemy:getAttackMonomerMajor()) or (enemy:getActive() == false)) then\n        else\n            enemy:followAttackAndSetAttackMethods(g_player, 0)\n        end\n    end\nend\n\n-- 获取玩家的方向\nfunction MainScene:getPlayerDirection()\n    local relust\n    \n    local ptBegin = cc.p(g_player:getPosition())\n    local ptEnd = cc.p(self.m_bgMap:convertToNodeSpace(self.m_ptPlayerDirection))\n    \n    local lenghtX = ptEnd.x - ptBegin.x\n    local lenghtY = ptEnd.y - ptBegin.y\n    local lenght = cc.PointDistance(ptBegin, ptEnd)\n    local angle_X = math.acos(lenghtX / lenght) * 180 / math.pi\n    local angle_Y = math.acos(lenghtY / lenght) * 180 / math.pi\n    \n    local angle = angle_X\n    if (angle_Y > 90) then\n        angle = 360 - angle_X\n    end\n    angle = angle * (math.pi / 180)\n    local x = math.cos(angle)\n    local y = math.sin(angle)\n    local tan = math.abs(math.tan(angle))\n    local tanMin = math.tan(22.5 * math.pi / 180)\n    local tanMax = math.tan(67.5 * math.pi / 180)\n    \n    if (tanMin <= tan and tan < tanMax) then\n        relust = MapPoint.new(x / math.abs(x), y / math.abs(y))\n    elseif (tan < tanMin) then\n        relust = MapPoint.new(x / math.abs(x), 0)\n    else\n        relust = MapPoint.new(0, y / math.abs(y))\n    end\n    \n    relust = relust:mul(2)\n    return relust\nend\n\nfunction MainScene:playerRunning(fDelay)\n    if (self.m_gameInfoUIController:getOperationMenu():getMoveMethods() == 0) then\n        g_player:runBy(self:getPlayerDirection())\n    elseif (self.m_gameInfoUIController:getOperationMenu():getMoveMethods() == 1) then\n        g_player:walkBy(self:getPlayerDirection())\n    end\nend\n\nfunction MainScene:beginMoveActions()\n    if (self.m_gameInfoUIController:getOperationMenu():getMoveMethods() == 2) then\n        local point = self.m_bgMap:convertToNodeSpace(self.m_ptPlayerDirection)\n        local mpoint = MapPoint.new(point)\n        g_player:goTo(mpoint)\n        self.m_touchMouse:playEffect(mpoint:getCCPointValue())\n        return\n    end\n        \n    if (g_player:isMoveRunning()) then\n        return\n    end\n    self.m_bIsPlayerMoveActions = true\n    g_player:setAttackMonomerMajor(nil)\n    self:OutOfCombat()\n    self:playerRunning()\nend\n\nfunction MainScene:stopMoveActions()\n    self.m_bIsPlayerMoveActions = false\n    self.m_ptPlayerDirection = cc.p(0, 0)\nend\n\n--function MainScene:AccurateMoveActions(point)\n--    if (not m_isPlayerMoveActions) then\n--        return\n--    end\n--    if (Player.sharePlayer():isMoveRunning()) then\n--        return\n--    end\n--    self.m_playerDirection = point:getCCPointValue()\n--    if (Player.sharePlayer():getState() ~= FigureState.Stand) then\n--        return\n--    end\n--    self:beginMoveActions()\n--end\n--\n--function MainScene:keyBackClicked()\n----    if (CCDirector::sharedDirector()->getRunningScene()->getChildByTag(0xffffff)) then\n----        return;\n----    end\n----    \n----    LAlertView* alert = LAlertView::create(\"提示\", \"是否退出游戏?\");\n----    alert->addButtonWithTitle(\"是\");\n----    alert->addButtonWithTitle(\"否\");\n----    alert->show(this, Alert_selector(MainScene:alertCallBack));\n----    alert->setTag(0xffffff);\n--end\n--\n--function MainScene:keyMenuClicked()\n--    \n--end\n--\n--function MainScene:alertCallBack(nNum)\n--    if (nNum == 0) then\n--        CCDirector::sharedDirector()->end()\n--    end\n--end\n--\n--function MainScene:log(dt)\n--    --MapPoint p = MapPoint(m_gMapPoint[Player::sharePlayer()])\n--    --MapPoint q = MapPoint(Player::sharePlayer()->getPosition())\n--    -- CCLog(\"playerRunning x=%d, z=%d, x=%d, z=%d \", p.x, p.z, q.x ,q.z)\n--end\n\nfunction MainScene:showSelected(monomer)\n    if (self.m_spSel:getParent()) then\n        self.m_spSel:removeFromParent()\n    end\n    \n    if (monomer) then\n        local x = monomer:getAnchorPoint().x * monomer:getContentSize().width\n        local y = monomer:getAnchorPoint().y * monomer:getContentSize().height\n        self.m_spSel:setPosition(x, y)\n        monomer:addChild(self.m_spSel, -1)\n        self.m_gameInfoUIController:getAttackEnemyInfo():showAttackInfo(monomer)\n    end\nend\n\nfunction MainScene:getSelected()\n    local monomer = self.m_spSel:getParent()\n    if (not monomer) then\n        if (self.m_gameInfoUIController:getAttackEnemyInfo()) then\n            self.m_gameInfoUIController:getAttackEnemyInfo():hide()\n        end\n    end\n    return monomer\nend\n\nfunction MainScene:getPlayerMoveActions()\n    return self.m_bIsPlayerMoveActions\nend\n\nfunction MainScene:getEnemyDictionary()\n    return self.m_enemyDictionary\nend\n\nfunction MainScene:getGameInfoUIController()\n    return self.m_gameInfoUIController\nend\n\nreturn MainScene\n"
  },
  {
    "path": "源代码/2.2.5/mir9/scripts/app/scenes/RoleSelScene.lua",
    "content": "local GameSocket = require(\"app.GameSocket\")\nlocal GameLoading = require(\"app.scenes.GameLoading\")\nlocal Figure = require(\"app.figure.Figure\")\n\nlocal RoleSelScene = class(\"RoleSelScene\", function()\n    return display.newScene(\"RoleSelScene\")\nend)\n\nfunction RoleSelScene:ctor()\n    self.m_btnBegin = nil\n    self.m_edtNickName = nil\n    self.m_nickName = \"\"\n    self.m_selected = nil\n    self.m_arrRole = {}\n    \n    self:init()\nend\n\nfunction RoleSelScene:init()\n    local layerColor = CCLayerColor:create(ccc4(140, 150, 180, 255), display.width, display.height)\n    self:addChild(layerColor, -1)\n    \n    local label = cc.ui.UILabel.new({\n        text = \"傲来国\",\n        size = 35,\n        color = ccc3(255,255,255),\n        fontName = \"黑体\"\n    }):pos(480, 576):addTo(self)\n    label:setAnchorPoint(0.5, 0.5)\n    \n    label = cc.ui.UILabel.new({\n        text = \"血腥、暴力、耐打\",\n        size = 25,\n        color = ccc3(255,255,255),\n        fontName = \"宋体\"\n    }):pos(192, 179):addTo(self)\n    label:setAnchorPoint(0.5, 0.5)\n    \n    label = cc.ui.UILabel.new({\n        text = \"召唤、辅助、周旋\",\n        size = 25,\n        color = ccc3(255,255,255),\n        fontName = \"宋体\"\n    }):pos(480, 179):addTo(self)\n    label:setAnchorPoint(0.5, 0.5)\n    \n    label = cc.ui.UILabel.new({\n        text = \"强力、强力、还是强力\",\n        size = 25,\n        color = ccc3(255,255,255),\n        fontName = \"宋体\"\n    }):pos(768, 179):addTo(self)\n    label:setAnchorPoint(0.5, 0.5)\n    \n    local editBox = ui.newEditBox({\n        -- image = \"EditBoxBg.png\",\n        size = cc.size(200, 50),\n        x = 480,\n        y = 96,\n        listener = function(event, editbox)\n            if event == \"began\" then\n                self:onEditBoxBegan(editbox)\n            elseif event == \"ended\" then\n                self:onEditBoxEnded(editbox)\n            elseif event == \"return\" then\n                self:onEditBoxReturn(editbox)\n            elseif event == \"changed\" then\n                self:onEditBoxChanged(editbox)\n            else\n                printf(\"EditBox event %s\", tostring(event))\n            end\n        end\n    })\n    editBox:setFontSize(25)\n    editBox:setFontName(\"宋体\")\n    editBox:setPlaceHolder(\"从这里输入昵称\")\n    editBox:setPlaceholderFontColor(ccc3(0, 0, 0))\n    editBox:setMaxLength(14)\n    editBox:setInputMode(kEditBoxInputModeAny)\n    editBox:setReturnType(kKeyboardReturnTypeDone)\n    self:addChild(editBox)\n    self.m_edtNickName = editBox\n    \n    local PUSH_BUTTON_IMAGES = {\n        normal = \"ui/role_create/GUI/button.png\",\n        pressed = nil,\n        disabled = nil,\n    }\n\n    local btn = cc.ui.UIPushButton.new(PUSH_BUTTON_IMAGES, {scale9 = true})\n    btn:setAnchorPoint(0.5, 0.5)\n    btn:setButtonSize(40, 40)\n    btn:setPosition(604, 96)\n    btn:onButtonClicked(handler(self, self.randomNickName))\n    self:addChild(btn)\n    \n    btn = cc.ui.UIPushButton.new(PUSH_BUTTON_IMAGES, {scale9 = true})\n    btn:setAnchorPoint(1, 0.5)\n    btn:setButtonSize(150, 80)\n    btn:setPosition(910, 80)\n    btn:setColor(ccc3(127, 127, 127))\n    btn:setTouchEnabled(false)\n    btn:setButtonLabel(\"normal\", ui.newTTFLabel({\n        text = \"进入游戏\",\n        fontName = \"宋体\",\n        size = 25\n    }))\n    btn:onButtonClicked(handler(self, self.sendMessage))\n    self:addChild(btn)\n    self.m_btnBegin = btn\n    \n    PUSH_BUTTON_IMAGES = {\n        normal = nil,\n        pressed = nil,\n        disabled = nil,\n    }\n    \n    local szBtn = cc.size(120, 200)\n    local figureId = {11001, 11002, 12001, 12002, 13001, 13002, 14001, 14002, 15001, 15002, 16001, 16002}\n    local hairId = {1000, 1000, 1100, 1100, 1200, 1200}\n    local pt = {\n        cc.p(115, 320),\n        cc.p(268, 320),\n        cc.p(403, 320),\n        cc.p(556, 320),\n        cc.p(691, 320),\n        cc.p(844, 320)\n    }\n    \n    for i = 1, 6 do\n        local btn = cc.ui.UIPushButton.new(PUSH_BUTTON_IMAGES, {scale9 = true})\n        btn:setAnchorPoint(0.5, 0.5)\n        btn:setButtonSize(szBtn.width, szBtn.height)\n        btn:setPosition(cc.PointAdd(cc.p(0, 0), pt[i]))\n        btn:setTag(figureId[i])\n        btn:onButtonClicked(handler(self, self.setSelector))\n        self:addChild(btn)\n        \n        local monomer = Figure.new(TexturePathType.Figure, figureId[i])\n        monomer:setHair(hairId[i])\n        monomer:setWeapon(1000)\n        --monomer:setPosition(btn:getContentSize().width/2, btn:getContentSize().height/2)\n        monomer:setColor(ccc3(127, 127, 127))\n        btn:addChild(monomer)\n        table.insert(self.m_arrRole, monomer)\n    end\n\n    return true\nend\n\nfunction RoleSelScene:onExit()\n    CCTextureCache:sharedTextureCache():removeAllTextures()\nend\n\nfunction RoleSelScene:runActionsForFigure(monomer)\n    monomer:setFigureState(FigureState.Attack, FigureDirection.Down)\n    \n    local delayTime = cc.DelayTime:create(2.0)\n    local finish = cc.CallFunc:create(function()\n        self:runActionsForFigure(monomer)\n    end)\n    local array = CCArray:create()\n    array:addObject(delayTime)\n    array:addObject(finish)\n    local sequence = cc.Sequence:create(array)\n    monomer:runAction(sequence)\nend\n\nfunction RoleSelScene:setSelector(event)\n    local btn = event.target\n    if (btn) then\n        self.m_roleID = btn:getTag()\n        if (self.m_selected) then\n            local monomer = self.m_selected\n            local button = monomer:getParent()\n            monomer:setFigureState(FigureState.Stand, FigureDirection.Down)\n            monomer:setColor(ccc3(127, 127, 127))\n            local scaleTo = cc.ScaleTo:create(0.15, 1.0)\n            local finish = cc.CallFunc:create(function()\n                monomer:stopAllActions()\n            end)\n            local finish2 = cc.CallFunc:create(function()\n                monomer:getWeaponSprite():stopAllActions()\n            end)\n            local array = CCArray:create()\n            array:addObject(scaleTo)\n            array:addObject(finish)\n            array:addObject(finish2)\n            local sequence = cc.Sequence:create(array)\n            monomer:runAction(sequence)\n            button:setTouchEnabled(true)\n        end\n        \n        for i = 1, #self.m_arrRole do\n            local monomer = self.m_arrRole[i]\n            local button = monomer:getParent()\n            if (btn == button) then\n                button:setTouchEnabled(false)\n                local scaleTo = cc.ScaleTo:create(0.15, 1.2)\n                monomer:runAction(scaleTo)\n                monomer:setColor(ccc3(255,255,255))\n                self:runActionsForFigure(monomer)\n                self.m_selected = monomer\n            end\n        end\n    end\n    \n    if (self.m_btnBegin) then\n        self.m_btnBegin:setColor(ccc3(255,255,255))\n        self.m_btnBegin:setTouchEnabled(true)\n    end\nend\n\nfunction RoleSelScene:randomNickName(event)\n    if (self.m_edtNickName) then\n        local num = math.random(1, 1000)\n        local str = string.format(\"player_%03d\", num)\n        self.m_edtNickName:setText(\"\")\n        self.m_edtNickName:setText(str)\n    end\nend\n\nfunction RoleSelScene:sendMessage(event)\n    if (self.m_edtNickName:getText() == \"\") then\n        CCMessageBox(\"Nickname is null!\", \"Tip\")\n        return\n    end\n    self.m_edtNickName:setTouchEnabled(false)\n    GameSocket.sendRoleCreate(self, self.m_roleID, self.m_edtNickName:getText()) -- SOCKET\nend\n\nfunction RoleSelScene:joinGame()\n    GameLoading.runGameLoading(200, 1)\nend\n\nfunction RoleSelScene:onEditBoxBegan(editbox)\n    printf(\"editBox1 event began : text = %s\", editbox:getText())\nend\n\nfunction RoleSelScene:onEditBoxEnded(editbox)\n    printf(\"editBox1 event ended : %s\", editbox:getText())\nend\n\nfunction RoleSelScene:onEditBoxReturn(editbox)\n    printf(\"editBox1 event return : %s\", editbox:getText())\nend\n\nfunction RoleSelScene:onEditBoxChanged(editbox)\n    printf(\"editBox1 event changed : %s\", editbox:getText())\nend\n\nreturn RoleSelScene"
  },
  {
    "path": "源代码/2.2.5/mir9/scripts/app/skill_system/AttackSkillInfo.lua",
    "content": "-- 攻击技能信息类\nlocal AttackSkillInfo = class(\"AttackSkillInfo\")\n\nfunction AttackSkillInfo:ctor(json_value)    \n    self.m_nNum = json_value[\"skillNumber\"]\n    self.m_strName = json_value[\"skillName\"]\n    self.m_nType = json_value[\"skillType\"]\n    self.m_nAttackType = json_value[\"attackType\"]\n    self.m_skillLevel = json_value[\"skillLevel\"]\n    self.m_upgradeTrainingPoint = json_value[\"upgradeTrainingPoint\"]\n    self.m_openLevel = json_value[\"openLevel\"]\n    self.m_magicConsumption = json_value[\"magicConsumption\"]\n    self.m_coolingTime = json_value[\"coolingTime\"]\n    self.m_attackDistance = json_value[\"attackDistance\"]\n    self.m_isAttackBody = json_value[\"isAttackBody\"]\n    self.m_flightSpeed = json_value[\"flightSpeed\"]\n    self.m_isTailing = json_value[\"isTailing\"]\n    self.m_explosionRadius = json_value[\"explosionRadius\"]\n    self.m_explosionFanAngle = json_value[\"explosionFanAngle\"]\n    self.m_bIsThirdParty = json_value[\"isThirdParty\"]\n    self.m_effectiveTime = json_value[\"effectiveTime\"]\n    self.m_effectOfCamp = json_value[\"effectOfCamp\"]\n    self.m_casterSpecificID = json_value[\"casterSpecificID\"]\n    self.m_locusSpecificID = json_value[\"locusSpecificID\"]\n    self.m_explosionSpecificID = json_value[\"explosionSpecificID\"]\nend\n\nreturn AttackSkillInfo"
  },
  {
    "path": "源代码/2.2.5/mir9/scripts/app/skill_system/AttackSkillSystem.lua",
    "content": "local cjson = require(\"cjson\")\nlocal AttackSkillInfo = require(\"app.skill_system.AttackSkillInfo\")\n\n-- 攻击技能系统类\nlocal AttackSkillSystem = class(\"AttackSkillSystem\")\n\n-- 构造函数\nfunction AttackSkillSystem:ctor()\n    self.m_mapAttackSkill = {}\n    \n    local json_str = CCString:createWithContentsOfFile(\"game_data/skill_info.json\")\n    local json_value = cjson.decode(json_str:getCString())\n\n    for i = 1, #json_value do\n        self:addAttackSkillInfo(json_value[i])\n    end\nend\n\nfunction AttackSkillSystem:addAttackSkillInfo(json_value)\n    local attackSkillInfo = AttackSkillInfo.new(json_value)\n    attackSkillInfo.m_coolingTime = 1.5\n    self.m_mapAttackSkill[attackSkillInfo.m_nNum] = attackSkillInfo\nend\n\nfunction AttackSkillSystem:getAttackSkillInfo(nSkillID)\n    return self.m_mapAttackSkill[nSkillID]\nend\n\nreturn AttackSkillSystem"
  },
  {
    "path": "源代码/2.2.5/mir9/scripts/app/skill_system/SkillEffectShow.lua",
    "content": "local scheduler = require(\"framework.scheduler\")\nlocal BgMap = require(\"app.map.BgMap\")\nlocal GameSocket = require(\"app.GameSocket\")\nlocal TextureController = require(\"app.figure.TextureController\")\n\n-- 技能特效显示类\nlocal SkillEffectShow = class(\"SkillEffectShow\", function()\n    return display.newNode()\nend)\n\nfunction SkillEffectShow:ctor(skillInfo, fHitDelay)\n    self.m_skillInfo = skillInfo\n    self.m_attacker = nil\n    self.m_victim = nil\n    self.m_spShow = nil\n    self.m_spExplosion = nil\n    self.m_spTail = nil\n    self.m_fHitDelay = fHitDelay\n    \n    self.m_attacker = display.newNode()\n    self.m_victim = display.newNode()\n    \n    self:setNodeEventEnabled(true)\nend\n\nfunction SkillEffectShow:onEnter()\n    \nend\n\nfunction SkillEffectShow:onExit()\n    if (self.m_attacker:getParent()) then\n        self.m_attacker:removeFromParent()\n    end\n    if (self.m_victim:getParent()) then\n        self.m_victim:removeFromParent()\n    end\nend\n\nfunction SkillEffectShow.playSkillEffect(skillInfo, attacker, victim, fHitDelay)\n    local skillEffectShow = SkillEffectShow.new(skillInfo, fHitDelay)\n    if (skillEffectShow and skillEffectShow:init(attacker, victim)) then\n        g_mainScene:getCurrBgMap():addChild(skillEffectShow)\n        -- skillEffectShow:release()\n        return skillEffectShow\n    end\n    return nil\nend\n\nfunction SkillEffectShow:init(attacker, victim)    \n    if (not attacker or not victim) then\n        return false\n    end\n    \n    attacker:addChild(self.m_attacker)\n    victim:addChild(self.m_victim)\n    \n    self:initWithShowSprite()\n    \n    if (self.m_skillInfo.m_casterSpecificID ~= 0) then\n        local path = TextureController.getTexturePath(TexturePathType.SkillCaster, self.m_skillInfo.m_casterSpecificID)\n        self:playCasterSpecific(path)\n    end\n\n    scheduler.performWithDelayGlobal(handler(self, self.emission), self.m_fHitDelay)\n    \n    return true\nend\n\nfunction SkillEffectShow:initWithShowSprite()\n    self.m_spShow = CCSprite:create()\n    self.m_spShow:setPosition(self.m_attacker:getParent():getHandPoint())\n    g_mainScene:getCurrBgMap():addChild(self.m_spShow)\nend\n\nfunction SkillEffectShow:playCasterSpecific(path)\n    local figure = self.m_attacker:getParent():getFigure()\n    \n    local spWeapon = figure:getWeaponSprite()\n    if (not spWeapon) then\n        return\n    end\n    \n    local sprite = CCSprite:create()\n    local szWeapon = spWeapon:getContentSize()\n    sprite:setPosition(szWeapon.width/2, szWeapon.height/2)\n    szWeapon:addChild(sprite)\n    \n    local array = CCArray:createWithCapacity(4)\n    local flag = 0\n    \n    while (true) do\n        local frameName = string.format(\"%s_%d0_%02d.png\", path, figure:getDirection(), flag)\n        local spriteFrame = CCSpriteFrameCache:sharedSpriteFrameCache():spriteFrameByName(frameName)\n        if (not spriteFrame) then\n            break\n        end\n        array:addObject(spriteFrame)\n        flag = flag + 1\n    end\n    \n    if (array:count() > 0) then\n        local animation = cc.Animation:createWithSpriteFrames(array, 1 / 10)\n        local animate = cc.Animate:create(animation)\n        local callFunc = cc.CallFunc:create(handler(self, self.removeFromParent))\n        local Sequence = cc.Sequence:create(animate, callFunc, nil)\n        sprite:runAction(Sequence)\n    else\n        sprite:removeFromParent()\n    end\nend\n\nfunction SkillEffectShow:emission(fDelay)\n    self.hTrack = scheduler.scheduleGlobal(handler(self, self.track), 0)\n    \n    if (self.m_skillInfo.m_locusSpecificID ~= 0) then\n        local path = TextureController.getTexturePath(TexturePathType.SkillLocus, self.m_skillInfo.m_locusSpecificID)\n        self:playLocusSpecific(path)\n        \n        if (self.m_skillInfo.m_isTailing) then\n            self:playTailing()\n        end\n    end\nend\n\nfunction SkillEffectShow:track(fDelay)\n    local speed = self.m_skillInfo.m_flightSpeed / 60.0\n    \n    if (self.m_skillInfo.m_flightSpeed == 0) then\n        speed = 0xffffffff\n    end\n    \n    local lenght = cc.PointDistance(cc.p(self.m_spShow:getPosition()), self:getDestination())\n    local lenghtX = self:getDestination().x - self.m_spShow:getPositionX()\n    local lenghtY = self:getDestination().y - self.m_spShow:getPositionY()\n    local x = self.m_spShow:getPositionX() + speed * lenghtX / lenght\n    local y = self.m_spShow:getPositionY() + speed * lenghtY / lenght\n    local point = cc.p(x, y)\n    \n    if (lenght <= 64) then\n        self.m_spShow:setVisible(false)\n    end\n    \n    if (cc.PointDistance(point, self:getDestination()) > speed) then\n        self.m_spShow:setPosition(point)\n        local high = self.m_attacker:getParent():getHandPointRelativeFootOffset()\n        self.m_spShow:setZOrder(BgMap.getZOrder(cc.PointSub(point, high)) + 1)\n    else\n        self.m_spShow:setPosition(self:getDestination())\n        if (self.hTrack) then\n            scheduler.unscheduleGlobal(self.hTrack)\n            self.hTrack = nil\n        end\n        self:hit()\n    end\nend\n\nfunction SkillEffectShow:hit()\n    if (self.m_skillInfo.m_explosionSpecificID ~= 0) then\n        local path = TextureController.getTexturePath(TexturePathType.SkillExplosion, self.m_skillInfo.m_explosionSpecificID)\n        self:playExplosionSpecific(path)\n    else\n        self:sendMessage()\n        self:releaseThis()\n    end\nend\n\nfunction SkillEffectShow:updateTailing(fDelay)\n    local lenght = cc.PointDistance(self:getDeparture(), cc.p(self.m_spShow:getPosition()))\n    local lenghtX = self.m_spShow:getPositionX() - self:getDeparture().x\n    local lenghtY = self.m_spShow:getPositionY() - self:getDeparture().y\n    \n    local angle_X = math.asin(lenghtY / lenght) * 180 / math.pi\n    local angle_Y = math.asin(lenghtX / lenght) * 180 / math.pi\n\n    local rotation = 0\n    \n    if (angle_X >= 0) then\n        rotation = angle_Y - 90\n    else\n        rotation = 90 - angle_Y\n    end\n    \n    local preferredSize = cc.size(0, 0)\n    \n    if (lenght < 30) then\n        preferredSize.width = 0\n    else\n        preferredSize.width = lenght - 30\n    end\n    \n    preferredSize.height = 5\n    \n    self.m_spTail:setPreferredSize(preferredSize)\n\n    self.m_spTail:setRotation(rotation)\nend\n\n-- 播放拖尾特效\nfunction SkillEffectShow:playTailing()\n    self.m_spTail = CCScale9Sprite:create(\"ui/red.png\")\n    self.m_spTail:setPreferredSize(cc.size(0, 0))\n    self.m_spTail:setAnchorPoint(1, 0.5)\n    self.m_spTail:setPosition(0, 0)\n    self.m_spShow:addChild(self.m_spTail, -1)\n    \n    self.hUpdateTailing = scheduler.scheduleGlobal(handler(self, self.updateTailing), 0)\nend\n\nfunction SkillEffectShow:playLocusSpecific(path)\n    local rotation = self:getRotationWithLocusSpecific()\n    \n    local flag = 0\n    \n    local array = CCArray:createWithCapacity(4)\n    while (true) do\n        local frameName = string.format(\"%s_%d_%02d.png\", path, rotation, flag)\n        local spriteFrame = CCSpriteFrameCache:sharedSpriteFrameCache():spriteFrameByName(frameName)\n        if (not spriteFrame) then\n            break\n        end\n        array:addObject(spriteFrame)\n        flag = flag + 1\n    end\n    \n    if (array:count() > 0) then\n        local animation = cc.Animation:createWithSpriteFrames(array, 1 / 24)\n        local animate = cc.Animate:create(animation)\n        local repeatForever = cc.RepeatForever:create(animate)\n        self.m_spShow:runAction(repeatForever)\n    end\nend\n\nfunction SkillEffectShow:playExplosionSpecific(path)\n    self.m_spExplosion = CCSprite:create()\n    \n    if (self.m_skillInfo.m_bIsThirdParty == true) then\n        local point = cc.p(self.m_spShow:getPosition())\n        self.m_spExplosion:setPosition(point)\n        g_mainScene:getCurrBgMap():addChild(self.m_spExplosion)\n        local high = self.m_attacker:getParent():getHurtPointRelativeFootOffset()\n        self.m_spExplosion:setZOrder(BgMap.getZOrder(cc.PointSub(point, high)) + 1)\n    else\n        local victim = self.m_victim:getParent()\n        if (not victim) then\n            self:releaseThis()\n            return\n        end\n        \n        local x = victim:getContentSize().width * victim:getFigure():getAnchorPointCenter().x\n        local y = victim:getContentSize().height * victim:getFigure():getAnchorPointCenter().y\n        self.m_spExplosion:setPosition(x, y)\n        self.m_victim:addChild(self.m_spExplosion)\n    end\n    \n    local flag = 0\n    \n    local array = CCArray:createWithCapacity(4)\n    while (true) do\n        local frameName = string.format(\"%s_%02d.png\", path, flag)\n        local spriteFrame = CCSpriteFrameCache:sharedSpriteFrameCache():spriteFrameByName(frameName)\n        if (not spriteFrame) then\n            break\n        end\n        array:addObject(spriteFrame)\n        flag = flag + 1\n    end\n    \n    if (array:count() > 0) then\n        local animation = cc.Animation:createWithSpriteFrames(array, 1 / 24)\n        local animate = cc.Animate:create(animation)\n        local finish = cc.CallFunc:create(handler(self, self.releaseThis))\n        local array = CCArray:create()\n        array:addObject(animate)\n        array:addObject(finish)\n        local sequence1 = cc.Sequence:create(array)\n        \n        local delay = cc.DelayTime:create(animate:getDuration()/2)\n        local callFunc = cc.CallFunc:create(handler(self, self.sendMessage))\n        array = CCArray:create()\n        array:addObject(delay)\n        array:addObject(callFunc)\n        local sequence2 = cc.Sequence:create(array)\n        \n        array = CCArray:create()\n        array:addObject(sequence1)\n        array:addObject(sequence2)\n        local spawn = cc.Spawn:create(array)\n        \n        self.m_spExplosion:runAction(spawn)\n    else\n        self:sendMessage()\n        self:releaseThis()\n    end\nend\n\nfunction SkillEffectShow:getRotationWithLocusSpecific()\n    local lenghtX = self:getDestination().x - self.m_spShow:getPositionX()\n    local lenghtY = self:getDestination().y - self.m_spShow:getPositionY()\n    lenghtY = lenghtY * math.sqrt(2)\n    local lenght = math.sqrt(lenghtX * lenghtX + lenghtY * lenghtY)\n    local angle_X = math.acos(lenghtX / lenght) * 180 / math.pi\n    local angle_Y = math.acos(lenghtY / lenght) * 180 / math.pi\n\n    local angle = angle_X\n    if (angle_Y > 90) then\n        angle = 360 - angle_X\n    end\n    \n    local relust = 0\n    \n    if (math.abs(67.5 - angle) <= 11.25) then\n        -- up2 right1\n        relust = 5\n    elseif (math.abs(45 - angle) <= 11.25) then\n        -- up2 right2\n        relust = 10\n    elseif (math.abs(22.5 - angle) <= 11.25) then\n        -- up1 right2\n        relust = 15\n    elseif (math.abs(0 - angle) <= 11.25) then\n        -- right2\n        relust = 20\n    elseif (math.abs(337.5 - angle) <= 11.25) then\n        -- right2 down1\n        relust = 25\n    elseif (math.abs(315 - angle) <= 11.25) then\n        -- right2 down2\n        relust = 30\n    elseif (math.abs(292.5 - angle) <= 11.25) then\n        -- right1 down2\n        relust = 35\n    elseif (math.abs(270 - angle) <= 11.25) then\n        -- down2\n        relust = 40\n    elseif (math.abs(247.5 - angle) <= 11.25) then\n        -- down2 left\n        relust = 45\n    elseif (math.abs(225 - angle) <= 11.25) then\n        -- down2 left2\n        relust = 50\n    elseif (math.abs(202.5 - angle) <= 11.25) then\n        -- down1 left2\n        relust = 55\n    elseif (math.abs(180 - angle) <= 11.25) then\n        -- left2\n        relust = 60\n    elseif (math.abs(157.5 - angle) <= 11.25) then\n        -- left2 up1\n        relust = 65\n    elseif (math.abs(135 - angle) <= 11.25) then\n        -- left2 up2\n        relust = 70\n    elseif (math.abs(112.5 - angle) <= 11.25) then\n        -- left up2\n        relust = 75\n    elseif (math.abs(90 - angle) <= 11.25) then\n        -- up2\n        relust = 80\n    end\n    \n    return relust\nend\n\nfunction SkillEffectShow:getDestination()\n    local point = cc.p(0, 0)\n    if (not self.m_victim:getParent()) then\n        self:releaseThis()\n        return point\n    end\n    return self.m_victim:getParent():getHurtPoint()\nend\n\nfunction SkillEffectShow:getDeparture()\n    if (not self.m_attacker:getParent()) then\n        self:releaseThis()\n        return cc.p(0, 0)\n    end\n    return self.m_attacker:getParent():getHandPoint()\nend\n\nfunction SkillEffectShow:sendMessage()\n    if (self.m_skillInfo.m_bIsThirdParty) then\n        if (self.m_skillInfo.m_explosionFanAngle == 360) then\n            local arrMonomer = g_mainScene:getMonmerVecIsLenght(cc.p(self.m_spShow:getPosition()), self.m_skillInfo.m_explosionRadius)\n            if (#arrMonomer == 0) then\n                table.insert(arrMonomer, self.m_victim:getParent())\n            end\n            GameSocket.attackGroup(self.m_attacker:getParent(), arrMonomer, self.m_skillInfo.m_nNum)\n        else\n            \n        end\n    else\n        GameSocket.attack(self.m_attacker:getParent(), self.m_victim:getParent(), self.m_skillInfo.m_nNum)\n    end\nend\n\nfunction SkillEffectShow:releaseThis()\n    if (self.m_spShow and self.m_spShow:getParent()) then\n        self.m_spShow:removeFromParent()\n        self.m_spShow = nil\n    end\n    if (self.m_spExplosion and self.m_spExplosion:getParent()) then\n        self.m_spExplosion:removeFromParent()\n        self.m_spExplosion = nil\n    end\n    if (self:getParent()) then\n        self:removeFromParent()\n    end\nend\n\nreturn SkillEffectShow"
  },
  {
    "path": "源代码/2.2.5/mir9/scripts/config.lua",
    "content": "\n-- 0 - disable debug info, 1 - less debug info, 2 - verbose debug info\nDEBUG = 1\n\n-- display FPS stats on screen\nDEBUG_FPS = true\n\n-- dump memory info every 10 seconds\nDEBUG_MEM = false\n\n-- load deprecated API\nLOAD_DEPRECATED_API = false\n\n-- load shortcodes API\nLOAD_SHORTCODES_API = true\n\n-- screen orientation\nCONFIG_SCREEN_ORIENTATION = \"landscape\"  -- portrait：竖屏、landscape：横屏\n\n-- design resolution\nCONFIG_SCREEN_WIDTH  = 960\nCONFIG_SCREEN_HEIGHT = 640\n\n-- auto scale mode\nCONFIG_SCREEN_AUTOSCALE = \"FIXED_HEIGHT\"\n"
  },
  {
    "path": "源代码/2.2.5/mir9/scripts/main.lua",
    "content": "function __G__TRACKBACK__(errorMessage)\n    print(\"----------------------------------------\")\n    print(\"LUA ERROR: \" .. tostring(errorMessage) .. \"\\n\")\n    print(debug.traceback(\"\", 2))\n    print(\"----------------------------------------\")\nend\n\ncollectgarbage(\"setpause\", 100)  \ncollectgarbage(\"setstepmul\", 5000)\n\nrequire(\"app.MyApp\").new():run()"
  },
  {
    "path": "源代码/2.2.5/mir9/sources/AppDelegate.cpp",
    "content": "\n#include \"cocos2d.h\"\n#include \"AppDelegate.h\"\n#include \"SimpleAudioEngine.h\"\n#include \"support/CCNotificationCenter.h\"\n#include \"CCLuaEngine.h\"\n#include <string>\n\nusing namespace std;\nusing namespace cocos2d;\nusing namespace CocosDenshion;\n\nAppDelegate::AppDelegate()\n{\n    // fixed me\n    //_CrtSetDbgFlag(_CRTDBG_ALLOC_MEM_DF|_CRTDBG_LEAK_CHECK_DF);\n}\n\nAppDelegate::~AppDelegate()\n{\n    // end simple audio engine here, or it may crashed on win32\n    SimpleAudioEngine::sharedEngine()->end();\n}\n\nbool AppDelegate::applicationDidFinishLaunching()\n{\n\t// initialize director\n\tCCDirector *pDirector = CCDirector::sharedDirector();\n\tpDirector->setOpenGLView(CCEGLView::sharedOpenGLView());\n\tpDirector->setProjection(kCCDirectorProjection2D);\n\n\t// set FPS. the default value is 1.0/60 if you don't call this\n\tpDirector->setAnimationInterval(1.0 / 60);\n\n\tCCTexture2D::PVRImagesHavePremultipliedAlpha(true);\n\n\t// register lua engine\n\tCCLuaEngine *pEngine = CCLuaEngine::defaultEngine();\n\tCCScriptEngineManager::sharedManager()->setScriptEngine(pEngine);\n\n\tCCLuaStack *pStack = pEngine->getLuaStack();\n\n#if (CC_TARGET_PLATFORM == CC_PLATFORM_IOS || CC_TARGET_PLATFORM == CC_PLATFORM_ANDROID)\n\t// load framework\n\tpStack->loadChunksFromZIP(\"res/framework_precompiled.zip\");\n\n\t// set script path\n\tstring path = CCFileUtils::sharedFileUtils()->fullPathForFilename(\"scripts/main.lua\");\n#else\n#ifdef DEBUG\n\t// load framework\n\tif (m_projectConfig.isLoadPrecompiledFramework())\n\t{\n\t\tconst string precompiledFrameworkPath = SimulatorConfig::sharedDefaults()->getPrecompiledFrameworkPath();\n\t\tpStack->loadChunksFromZIP(precompiledFrameworkPath.c_str());\n\t}\n#else\n\t// load framework\n\tpStack->loadChunksFromZIP(\"res/framework_precompiled.zip\");\n#endif\n\n\t// set script path\n\tstring path = CCFileUtils::sharedFileUtils()->fullPathForFilename(m_projectConfig.getScriptFileRealPath().c_str());\n#endif\n\n#ifdef ENCRYPT_LUA\n\tpStack->setXXTEAKeyAndSign(ENCRYPT_KEY, strlen(ENCRYPT_KEY), \"XXTEA\", strlen(\"XXTEA\"));\n\tpStack->loadChunksFromZIP(\"res/game.zip\");\n\tpStack->executeString(\"require 'main'\");\n#else\n#ifdef ENCRYPT_PIC\n\tpStack->setXXTEAKeyAndSign(ENCRYPT_KEY, strlen(ENCRYPT_KEY), \"XXTEA\", strlen(\"XXTEA\"));\n#endif\n\n\tsize_t pos;\n\twhile ((pos = path.find_first_of(\"\\\\\")) != std::string::npos)\n\t{\n\t\tpath.replace(pos, 1, \"/\");\n\t}\n\tsize_t p = path.find_last_of(\"/\\\\\");\n\tif (p != path.npos)\n\t{\n\t\tconst string dir = path.substr(0, p);\n\t\tpStack->addSearchPath(dir.c_str());\n\n\t\tp = dir.find_last_of(\"/\\\\\");\n\t\tif (p != dir.npos)\n\t\t{\n\t\t\tpStack->addSearchPath(dir.substr(0, p).c_str());\n\t\t}\n\t}\n\n\tstring env = \"__LUA_STARTUP_FILE__=\\\"\";\n\tenv.append(path);\n\tenv.append(\"\\\"\");\n\tpEngine->executeString(env.c_str());\n\n\tCCLOG(\"------------------------------------------------\");\n\tCCLOG(\"LOAD LUA FILE: %s\", path.c_str());\n\tCCLOG(\"------------------------------------------------\");\n\tpEngine->executeScriptFile(path.c_str());\n#endif\n\n\treturn true;\n}\n\n// This function will be called when the app is inactive. When comes a phone call,it's be invoked too\nvoid AppDelegate::applicationDidEnterBackground()\n{\n    CCDirector::sharedDirector()->stopAnimation();\n    CCDirector::sharedDirector()->pause();\n    SimpleAudioEngine::sharedEngine()->pauseBackgroundMusic();\n    SimpleAudioEngine::sharedEngine()->pauseAllEffects();\n    CCNotificationCenter::sharedNotificationCenter()->postNotification(\"APP_ENTER_BACKGROUND_EVENT\");\n}\n\n// this function will be called when the app is active again\nvoid AppDelegate::applicationWillEnterForeground()\n{\n    CCDirector::sharedDirector()->startAnimation();\n    CCDirector::sharedDirector()->resume();\n    SimpleAudioEngine::sharedEngine()->resumeBackgroundMusic();\n    SimpleAudioEngine::sharedEngine()->resumeAllEffects();\n    CCNotificationCenter::sharedNotificationCenter()->postNotification(\"APP_ENTER_FOREGROUND_EVENT\");\n}\n\nvoid AppDelegate::setProjectConfig(const ProjectConfig& config)\n{\n    m_projectConfig = config;\n}\n"
  },
  {
    "path": "源代码/2.2.5/mir9/sources/AppDelegate.h",
    "content": "\n#ifndef  _APP_DELEGATE_H_\n#define  _APP_DELEGATE_H_\n\n#include \"CCApplication.h\"\n#include \"ProjectConfig/SimulatorConfig.h\"\n\n//#define ENCRYPT_LUA\n//#define ENCRYPT_PIC\n//#define ENCRYPT_KEY \"XXTEA_KEY\"\n//#define DEBUG_WORK_DIR \"E:/Demo/cocos2d-x/quick-cocos2d-x-2.2.5/projects/mir9\"\n\n/**\n @brief    The cocos2d Application.\n\n The reason for implement as private inheritance is to hide some interface call by CCDirector.\n */\nclass  AppDelegate : public cocos2d::CCApplication\n{\npublic:\n    AppDelegate();\n    virtual ~AppDelegate();\n\n    /**\n     @brief    Implement CCDirector and CCScene init code here.\n     @return true    Initialize success, app continue.\n     @return false   Initialize failed, app terminate.\n     */\n    virtual bool applicationDidFinishLaunching();\n\n    /**\n     @brief  The function be called when the application enter background\n     @param  the pointer of the application\n     */\n    virtual void applicationDidEnterBackground();\n\n    /**\n     @brief  The function be called when the application enter foreground\n     @param  the pointer of the application\n     */\n    virtual void applicationWillEnterForeground();\n\n    void setProjectConfig(const ProjectConfig& config);\n\nprivate:\n    ProjectConfig m_projectConfig;\n};\n\n#endif // _APP_DELEGATE_H_\n"
  },
  {
    "path": "源代码/mir9/.project",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<projectDescription>\n\t<name>mir9</name>\n\t<comment></comment>\n\t<projects>\n\t</projects>\n\t<buildSpec>\n\t</buildSpec>\n\t<natures>\n\t\t<nature>org.ccdt.cocosproject</nature>\n\t\t<nature>org.ccdt.cocosquickproject</nature>\n\t\t<nature>org.eclipse.koneki.ldt.nature</nature>\n\t</natures>\n</projectDescription>\n"
  },
  {
    "path": "源代码/mir9/config.json",
    "content": "{\n    \"init_cfg\":{\n       \"isLandscape\": true,\n       \"isWindowTop\": false,\n       \"name\": \"mir9\",\n       \"width\": 960,\n       \"height\": 640,\n       \"entry\": \"src/main.lua\",\n       \"consolePort\": 6010,\n       \"uploadPort\": 6020\n    },\n    \"simulator_screen_size\": [\n        {\n            \"title\": \"iPhone 3Gs (480x320)\",\n            \"width\": 480,\n            \"height\": 320\n        },\n        {\n            \"title\": \"iPhone 4 (960x640)\",\n            \"width\": 960,\n            \"height\": 640\n        },\n        {\n            \"title\": \"iPhone 5 (1136x640)\",\n            \"width\": 1136,\n            \"height\": 640\n        },\n        {\n            \"title\": \"iPad (1024x768)\",\n            \"width\": 1024,\n            \"height\": 768\n        },\n        {\n            \"title\": \"iPad Retina (2048x1536)\",\n            \"width\": 2048,\n            \"height\": 1536\n        },\n        {\n            \"title\": \"Android (800x480)\",\n            \"width\": 800,\n            \"height\": 480\n        },\n        {\n            \"title\": \"Android (854x480)\",\n            \"width\": 854,\n            \"height\": 480\n        },\n        {\n            \"title\": \"Android (1280x720)\",\n            \"width\": 1280,\n            \"height\": 720\n        },\n        {\n            \"title\": \"Android (1920x1080)\",\n            \"width\": 1920,\n            \"height\": 1080\n        }\n    ]\n}\n"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/Classes/AppDelegate.cpp",
    "content": "#include \"AppDelegate.h\"\n#include \"CCLuaEngine.h\"\n#include \"SimpleAudioEngine.h\"\n#include \"cocos2d.h\"\n#if (CC_TARGET_PLATFORM != CC_PLATFORM_WP8)\n#include \"CodeIDESupport.h\"\n#include \"Runtime.h\"\n#endif\n#include \"ConfigParser.h\"\n#include \"lua_module_register.h\"\n\n\n// extra lua module\n#include \"cocos2dx_extra.h\"\n#include \"lua_extensions/lua_extensions_more.h\"\n#include \"luabinding/lua_cocos2dx_extension_filter_auto.hpp\"\n#include \"luabinding/lua_cocos2dx_extension_nanovg_auto.hpp\"\n#include \"luabinding/lua_cocos2dx_extension_nanovg_manual.hpp\"\n#include \"luabinding/cocos2dx_extra_luabinding.h\"\n#include \"luabinding/HelperFunc_luabinding.h\"\n#if (CC_TARGET_PLATFORM == CC_PLATFORM_IOS)\n#include \"luabinding/cocos2dx_extra_ios_iap_luabinding.h\"\n#endif\n#if ANYSDK_DEFINE > 0\n#include \"anysdkbindings.h\"\n#include \"anysdk_manual_bindings.h\"\n#endif\n\nusing namespace CocosDenshion;\n\nUSING_NS_CC;\nusing namespace std;\n\nstatic void quick_module_register(lua_State *L)\n{\n    luaopen_lua_extensions_more(L);\n\n    lua_getglobal(L, \"_G\");\n    if (lua_istable(L, -1))//stack:...,_G,\n    {\n        register_all_quick_manual(L);\n        // extra\n        luaopen_cocos2dx_extra_luabinding(L);\n        register_all_cocos2dx_extension_filter(L);\n        register_all_cocos2dx_extension_nanovg(L);\n        register_all_cocos2dx_extension_nanovg_manual(L);\n        luaopen_HelperFunc_luabinding(L);\n#if (CC_TARGET_PLATFORM == CC_PLATFORM_IOS)\n        luaopen_cocos2dx_extra_ios_iap_luabinding(L);\n#endif\n    }\n    lua_pop(L, 1);\n}\n\n//\nAppDelegate::AppDelegate()\n:_launchMode(1)\n{\n}\n\nAppDelegate::~AppDelegate()\n{\n    SimpleAudioEngine::end();\n\n#if CC_TARGET_PLATFORM == CC_PLATFORM_WIN32\n\tendRuntime();\n#elif (COCOS2D_DEBUG > 0 && CC_CODE_IDE_DEBUG_SUPPORT > 0)\n\t// NOTE:Please don't remove this call if you want to debug with Cocos Code IDE\n\tif (_launchMode)\n\t{\n\t\tendRuntime();\n\t}\n#endif\n\n\tConfigParser::purge();\n}\n\n//if you want a different context,just modify the value of glContextAttrs\n//it will takes effect on all platforms\nvoid AppDelegate::initGLContextAttrs()\n{\n    //set OpenGL context attributions,now can only set six attributions:\n    //red,green,blue,alpha,depth,stencil\n    GLContextAttrs glContextAttrs = { 8, 8, 8, 8, 24, 8 };\n\n    GLView::setGLContextAttrs(glContextAttrs);\n}\n\nbool AppDelegate::applicationDidFinishLaunching()\n{\n#if CC_TARGET_PLATFORM == CC_PLATFORM_WIN32\n\tinitRuntime();\n#elif (COCOS2D_DEBUG > 0 && CC_CODE_IDE_DEBUG_SUPPORT > 0)\n\t// NOTE:Please don't remove this call if you want to debug with Cocos Code IDE\n\tif (_launchMode)\n\t{\n\t\tinitRuntime();\n\t}\n#endif\n    \n    // initialize director\n    auto director = Director::getInstance();\n    auto glview = director->getOpenGLView();    \n    if(!glview) {\n        Size viewSize = ConfigParser::getInstance()->getInitViewSize();\n        string title = ConfigParser::getInstance()->getInitViewName();\n#if (CC_TARGET_PLATFORM == CC_PLATFORM_WIN32 || CC_TARGET_PLATFORM == CC_PLATFORM_MAC)\n        extern void createSimulator(const char* viewName, float width, float height, bool isLandscape = true, float frameZoomFactor = 1.0f);\n        bool isLanscape = ConfigParser::getInstance()->isLanscape();\n        createSimulator(title.c_str(),viewSize.width,viewSize.height, isLanscape);\n#else\n        glview = cocos2d::GLViewImpl::createWithRect(title.c_str(), Rect(0, 0, viewSize.width, viewSize.height));\n        director->setOpenGLView(glview);\n#endif\n        director->startAnimation();\n    }\n   \n    auto engine = LuaEngine::getInstance();\n    ScriptEngineManager::getInstance()->setScriptEngine(engine);\n    lua_State* L = engine->getLuaStack()->getLuaState();\n    lua_module_register(L);\n\n    // use Quick-Cocos2d-X\n    quick_module_register(L);\n\n    LuaStack* stack = engine->getLuaStack();\n#if ANYSDK_DEFINE > 0\n    lua_getglobal(stack->getLuaState(), \"_G\");\n    tolua_anysdk_open(stack->getLuaState());\n    tolua_anysdk_manual_open(stack->getLuaState());\n    lua_pop(stack->getLuaState(), 1);\n#endif\n\n    stack->setXXTEAKeyAndSign(\"2dxLua\", strlen(\"2dxLua\"), \"XXTEA\", strlen(\"XXTEA\"));\n\n    //register custom function\n    //LuaStack* stack = engine->getLuaStack();\n    //register_custom_function(stack->getLuaState());\n    \n#if (COCOS2D_DEBUG > 0 && CC_CODE_IDE_DEBUG_SUPPORT > 0)\n    // NOTE:Please don't remove this call if you want to debug with Cocos Code IDE\n    if (_launchMode)\n    {\n        startRuntime();\n    }\n    else\n    {\n        engine->executeScriptFile(ConfigParser::getInstance()->getEntryFile().c_str());\n    }\n#else\n    engine->executeScriptFile(ConfigParser::getInstance()->getEntryFile().c_str());\n#endif\n\n    return true;\n}\n\n// This function will be called when the app is inactive. When comes a phone call,it's be invoked too\nvoid AppDelegate::applicationDidEnterBackground()\n{\n    Director::getInstance()->stopAnimation();\n    Director::getInstance()->pause();\n\n    SimpleAudioEngine::getInstance()->pauseBackgroundMusic();\n    SimpleAudioEngine::getInstance()->pauseAllEffects();\n\n    Director::getInstance()->getEventDispatcher()->dispatchCustomEvent(\"APP_ENTER_BACKGROUND_EVENT\");\n}\n\n// this function will be called when the app is active again\nvoid AppDelegate::applicationWillEnterForeground()\n{\n    Director::getInstance()->resume();\n    Director::getInstance()->startAnimation();\n\n    SimpleAudioEngine::getInstance()->resumeBackgroundMusic();\n    SimpleAudioEngine::getInstance()->resumeAllEffects();\n\n    Director::getInstance()->getEventDispatcher()->dispatchCustomEvent(\"APP_ENTER_FOREGROUND_EVENT\");\n}\n\nvoid AppDelegate::setLaunchMode(int mode)\n{\n    _launchMode = mode;\n}\n"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/Classes/AppDelegate.h",
    "content": "#ifndef __APP_DELEGATE_H__\n#define __APP_DELEGATE_H__\n\n#include \"cocos2d.h\"\n\n/**\n@brief    The cocos2d Application.\n\nThe reason for implement as private inheritance is to hide some interface call by Director.\n*/\nclass  AppDelegate : private cocos2d::Application\n{\npublic:\n    AppDelegate();\n    virtual ~AppDelegate();\n\n    virtual void initGLContextAttrs();\n\n    /**\n    @brief    Implement Director and Scene init code here.\n    @return true    Initialize success, app continue.\n    @return false   Initialize failed, app terminate.\n    */\n    virtual bool applicationDidFinishLaunching();\n\n    /**\n    @brief  The function be called when the application enter background\n    @param  the pointer of the application\n    */\n    virtual void applicationDidEnterBackground();\n\n    /**\n    @brief  The function be called when the application enter foreground\n    @param  the pointer of the application\n    */\n    virtual void applicationWillEnterForeground();\n    \n    void setLaunchMode(int mode);\n    \nprivate:\n    int _launchMode;\n};\n\n#endif  // __APP_DELEGATE_H__\n\n"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/Classes/CodeIDESupport.h",
    "content": "#ifndef __CODE_IDE_SUPPORT_H__\n#define __CODE_IDE_SUPPORT_H__\n\n// define 1 to open Cocos Code IDE support, 0 to disable\n#ifndef CC_CODE_IDE_DEBUG_SUPPORT\n#define CC_CODE_IDE_DEBUG_SUPPORT 1\n#endif\n\n#endif /* __CODE_IDE_SUPPORT_H__ */\n"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/Classes/ConfigParser.cpp",
    "content": "\n#include \"json/document.h\"\n#include \"json/filestream.h\"\n#include \"json/stringbuffer.h\"\n#include \"json/writer.h\"\n#include \"ConfigParser.h\"\n#include \"FileServer.h\"\n\n#define CONFIG_FILE \"config.json\"\n#define CONSOLE_PORT 6010\n#define UPLOAD_PORT 6020\n#define WIN_WIDTH   960\n#define WIN_HEIGHT  640\n\n// ConfigParser\nConfigParser *ConfigParser::s_sharedConfigParserInstance = NULL;\nConfigParser *ConfigParser::getInstance(void)\n{\n    if (!s_sharedConfigParserInstance)\n    {\n        s_sharedConfigParserInstance = new ConfigParser();\n        s_sharedConfigParserInstance->readConfig();\n    }\n    return s_sharedConfigParserInstance;\n}\n\nvoid ConfigParser::purge()\n{\n\tCC_SAFE_DELETE(s_sharedConfigParserInstance);\n}\n\nvoid ConfigParser::readConfig()\n{\n#if (CC_TARGET_PLATFORM == CC_PLATFORM_IOS || CC_TARGET_PLATFORM == CC_PLATFORM_ANDROID)\n    // add writable path to search path temporarily for reading config file\n    vector<std::string> searchPathArray = FileUtils::getInstance()->getSearchPaths();\n#if COCOS2D_DEBUG > 0\n    std::string writePath = FileServer::getShareInstance()->getWritePath();\n#else\n    std::string writePath = FileUtils::getInstance()->getWritablePath();\n#endif\n    searchPathArray.insert(searchPathArray.begin(), writePath);\n    FileUtils::getInstance()->setSearchPaths(searchPathArray);\n#endif\n    \n    // read config file\n    string fullPathFile = FileUtils::getInstance()->fullPathForFilename(CONFIG_FILE);\n    string fileContent = FileUtils::getInstance()->getStringFromFile(fullPathFile);\n  \n#if (CC_TARGET_PLATFORM == CC_PLATFORM_IOS || CC_TARGET_PLATFORM == CC_PLATFORM_ANDROID)\n    // revert search path\n    searchPathArray.erase(searchPathArray.end() - 1);\n    FileUtils::getInstance()->setSearchPaths(searchPathArray);\n#endif\n\n    if(fileContent.empty())\n        return;\n    \n    if (_docRootjson.Parse<0>(fileContent.c_str()).HasParseError()) {\n        cocos2d::log(\"read json file %s failed because of %s\", fullPathFile.c_str(), _docRootjson.GetParseError());\n        return;\n    }\n    \n    if (_docRootjson.HasMember(\"init_cfg\"))\n    {\n        if(_docRootjson[\"init_cfg\"].IsObject())\n        {\n            const rapidjson::Value& objectInitView = _docRootjson[\"init_cfg\"];\n            if (objectInitView.HasMember(\"width\") && objectInitView.HasMember(\"height\"))\n            {\n                _initViewSize.width = objectInitView[\"width\"].GetUint();\n                _initViewSize.height = objectInitView[\"height\"].GetUint();\n                if (_initViewSize.height>_initViewSize.width)\n                {\n                    float tmpvalue = _initViewSize.height;\n                    _initViewSize.height = _initViewSize.width;\n                    _initViewSize.width = tmpvalue;\n                }\n                \n            }\n            if (objectInitView.HasMember(\"name\") && objectInitView[\"name\"].IsString())\n            {\n                _viewName = objectInitView[\"name\"].GetString();\n            }\n            if (objectInitView.HasMember(\"isLandscape\") && objectInitView[\"isLandscape\"].IsBool())\n            {\n                _isLandscape = objectInitView[\"isLandscape\"].GetBool();\n            }\n            if (objectInitView.HasMember(\"entry\") && objectInitView[\"entry\"].IsString())\n            {\n                _entryfile = objectInitView[\"entry\"].GetString();\n            }\n            if (objectInitView.HasMember(\"consolePort\"))\n            {\n                _consolePort = objectInitView[\"consolePort\"].GetUint();\n                if(_consolePort <= 0)\n                    _consolePort = CONSOLE_PORT;\n            }\n            if (objectInitView.HasMember(\"uploadPort\"))\n            {\n                _uploadPort = objectInitView[\"uploadPort\"].GetUint();\n                if(_uploadPort <= 0)\n                    _uploadPort = UPLOAD_PORT;\n            }\n            if (objectInitView.HasMember(\"isWindowTop\") && objectInitView[\"isWindowTop\"].IsBool())\n            {\n                _isWindowTop= objectInitView[\"isWindowTop\"].GetBool();\n            }\n        }\n    }\n    if (_docRootjson.HasMember(\"simulator_screen_size\"))\n    {\n        const rapidjson::Value& ArrayScreenSize = _docRootjson[\"simulator_screen_size\"];\n        if (ArrayScreenSize.IsArray())\n        {\n            for (int i = 0; i < ArrayScreenSize.Size(); i++)\n            {\n                const rapidjson::Value& objectScreenSize = ArrayScreenSize[i];\n                if (objectScreenSize.HasMember(\"title\") && objectScreenSize.HasMember(\"width\") && objectScreenSize.HasMember(\"height\"))\n                {\n                    _screenSizeArray.push_back(SimulatorScreenSize(objectScreenSize[\"title\"].GetString(), objectScreenSize[\"width\"].GetUint(), objectScreenSize[\"height\"].GetUint()));\n                }\n            }\n        }\n    }\n}\n\nConfigParser::ConfigParser(void) :\n_isLandscape(true),\n_isWindowTop(false),\n_consolePort(CONSOLE_PORT),\n_uploadPort(UPLOAD_PORT),\n_viewName(\"mir9\"),\n_entryfile(\"src/main.lua\"),\n_initViewSize(WIN_WIDTH, WIN_HEIGHT)\n{\n}\n\nrapidjson::Document& ConfigParser::getConfigJsonRoot()\n{\n    return _docRootjson;\n}\n\nstring ConfigParser::getInitViewName()\n{\n    return _viewName;\n}\n\nstring ConfigParser::getEntryFile()\n{\n    return _entryfile;\n}\n\nSize ConfigParser::getInitViewSize()\n{\n    return _initViewSize;\n}\n\nbool ConfigParser::isLanscape()\n{\n    return _isLandscape;\n}\n\nbool ConfigParser::isWindowTop()\n{\n    return _isWindowTop;\n}\nint ConfigParser::getConsolePort()\n{\n    return _consolePort;\n}\nint ConfigParser::getUploadPort()\n{\n    return _uploadPort;\n}\nint ConfigParser::getScreenSizeCount(void)\n{\n    return (int)_screenSizeArray.size();\n}\n\nconst SimulatorScreenSize ConfigParser::getScreenSize(int index)\n{\n    return _screenSizeArray.at(index);\n}\n"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/Classes/ConfigParser.h",
    "content": "#ifndef __CONFIG_PARSER_H__\n#define __CONFIG_PARSER_H__\n\n#include <string>\n#include <vector>\n#include \"cocos2d.h\"\n#include \"json/document.h\"\nusing namespace std;\nUSING_NS_CC;\n\n// ConfigParser\ntypedef struct _SimulatorScreenSize {\n    string title;\n    int width;\n    int height;\n\n    _SimulatorScreenSize(const string title_, int width_, int height_)\n    {\n        title  = title_;\n        width  = width_;\n        height = height_;\n    }\n} SimulatorScreenSize;\n\ntypedef vector<SimulatorScreenSize> ScreenSizeArray;\nclass ConfigParser\n{\npublic:\n    static ConfigParser *getInstance(void);\n\tstatic void purge();\n\n    // predefined screen size\n    int getScreenSizeCount(void);\n    cocos2d::Size getInitViewSize();\n    string getInitViewName();\n    string getEntryFile();\n    rapidjson::Document& getConfigJsonRoot();\n    const SimulatorScreenSize getScreenSize(int index);\n    int getConsolePort();\n    int getUploadPort();\n    bool isLanscape();\n    bool isWindowTop();\n    \nprivate:\n    void readConfig();\n    ConfigParser(void);\n    static ConfigParser *s_sharedConfigParserInstance;\n    ScreenSizeArray _screenSizeArray;\n    cocos2d::Size _initViewSize;\n    string _viewName;\n    string _entryfile;\n    bool _isLandscape;\n    bool _isWindowTop;\n    int _consolePort;\n    int _uploadPort;\n    \n    rapidjson::Document _docRootjson;\n};\n\n#endif  // __CONFIG_PARSER_H__\n\n"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/Classes/VisibleRect.cpp",
    "content": "/****************************************************************************\n Copyright (c) 2013-2014 Chukong Technologies Inc.\n\n http://www.cocos2d-x.org\n\n Permission is hereby granted, free of charge, to any person obtaining a copy\n of this software and associated documentation files (the \"Software\"), to deal\n in the Software without restriction, including without limitation the rights\n to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n copies of the Software, and to permit persons to whom the Software is\n furnished to do so, subject to the following conditions:\n\n The above copyright notice and this permission notice shall be included in\n all copies or substantial portions of the Software.\n\n THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n THE SOFTWARE.\n ****************************************************************************/\n\n#include \"VisibleRect.h\"\n\nUSING_NS_CC;\n\nRect VisibleRect::s_visibleRect;\n\nvoid VisibleRect::lazyInit()\n{\n    // no lazy init\n    // Useful if we change the resolution in runtime\n    s_visibleRect = Director::getInstance()->getOpenGLView()->getVisibleRect();\n}\n\nRect VisibleRect::getVisibleRect()\n{\n    lazyInit();\n    return s_visibleRect;\n}\n\nVec2 VisibleRect::left()\n{\n    lazyInit();\n    return Vec2(s_visibleRect.origin.x, s_visibleRect.origin.y+s_visibleRect.size.height/2);\n}\n\nVec2 VisibleRect::right()\n{\n    lazyInit();\n    return Vec2(s_visibleRect.origin.x+s_visibleRect.size.width, s_visibleRect.origin.y+s_visibleRect.size.height/2);\n}\n\nVec2 VisibleRect::top()\n{\n    lazyInit();\n    return Vec2(s_visibleRect.origin.x+s_visibleRect.size.width/2, s_visibleRect.origin.y+s_visibleRect.size.height);\n}\n\nVec2 VisibleRect::bottom()\n{\n    lazyInit();\n    return Vec2(s_visibleRect.origin.x+s_visibleRect.size.width/2, s_visibleRect.origin.y);\n}\n\nVec2 VisibleRect::center()\n{\n    lazyInit();\n    return Vec2(s_visibleRect.origin.x+s_visibleRect.size.width/2, s_visibleRect.origin.y+s_visibleRect.size.height/2);\n}\n\nVec2 VisibleRect::leftTop()\n{\n    lazyInit();\n    return Vec2(s_visibleRect.origin.x, s_visibleRect.origin.y+s_visibleRect.size.height);\n}\n\nVec2 VisibleRect::rightTop()\n{\n    lazyInit();\n    return Vec2(s_visibleRect.origin.x+s_visibleRect.size.width, s_visibleRect.origin.y+s_visibleRect.size.height);\n}\n\nVec2 VisibleRect::leftBottom()\n{\n    lazyInit();\n    return s_visibleRect.origin;\n}\n\nVec2 VisibleRect::rightBottom()\n{\n    lazyInit();\n    return Vec2(s_visibleRect.origin.x+s_visibleRect.size.width, s_visibleRect.origin.y);\n}\n"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/Classes/VisibleRect.h",
    "content": "#ifndef __VISIBLERECT_H__\n#define __VISIBLERECT_H__\n\n#include \"cocos2d.h\"\n\nclass VisibleRect\n{\npublic:\n    static cocos2d::Rect getVisibleRect();\n\n    static cocos2d::Vec2 left();\n    static cocos2d::Vec2 right();\n    static cocos2d::Vec2 top();\n    static cocos2d::Vec2 bottom();\n    static cocos2d::Vec2 center();\n    static cocos2d::Vec2 leftTop();\n    static cocos2d::Vec2 rightTop();\n    static cocos2d::Vec2 leftBottom();\n    static cocos2d::Vec2 rightBottom();\nprivate:\n    static void lazyInit();\n    static cocos2d::Rect s_visibleRect;\n};\n\n#endif /* __VISIBLERECT_H__ */\n"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/Classes/anysdk_manual_bindings.cpp",
    "content": "/*\n** Lua binding: anysdk\n** Generated automatically by tolua++-1.0.92 on Wed Jul  2 14:12:17 2014.\n*/\n\n/****************************************************************************\n Copyright (c) 2011 cocos2d-x.org\n\n http://www.cocos2d-x.org\n\n Permission is hereby granted, free of charge, to any person obtaining a copy\n of this software and associated documentation files (the \"Software\"), to deal\n in the Software without restriction, including without limitation the rights\n to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n copies of the Software, and to permit persons to whom the Software is\n furnished to do so, subject to the following conditions:\n\n The above copyright notice and this permission notice shall be included in\n all copies or substantial portions of the Software.\n\n THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n THE SOFTWARE.\n ****************************************************************************/\n// extern \"C\" {\n#include \"tolua_fix.h\"\n// }\n\n#include <map>\n#include <string>\n#include \"AgentManager.h\"\n#include \"PluginManager.h\"\n#include \"PluginFactory.h\"\n#include \"AgentManager.h\"\n#include \"PluginProtocol.h\"\n#include \"ProtocolPush.h\"\n#include \"PluginFactory.h\"     \n#include \"ProtocolAds.h\"     \n#include \"ProtocolShare.h\"\n#include \"PluginManager.h\"\n#include \"ProtocolAnalytics.h\" \n#include \"ProtocolSocial.h\"\n#include \"PluginParam.h\"      \n#include \"ProtocolIAP.h\"     \n#include \"ProtocolUser.h\"\n\n#include \"CCLuaEngine.h\"\n\n#include \"anysdk_manual_bindings.h\"\n#include \"cocos2d.h\"\n\n// #define ON_VERSION_2 1\n\n#ifndef ON_VERSION_2\n    #include \"LuaBasicConversions.h\"\n#endif\n\n/* Exported function */\nTOLUA_API int  tolua_anysdk_manual_open (lua_State* tolua_S);\n\nusing namespace anysdk::framework;\nUSING_NS_CC;\n\n// extern const char* cocos2dVersion();\n\n\n/* method: share of class  setDebugMode */\n#ifndef TOLUA_DISABLE_tolua_anysdk_ProtocolShare_setDebugMode\nstatic int tolua_anysdk_ProtocolShare_setDebugMode(lua_State* tolua_S)\n{\n  CCLog(\"in function protocols share\\n\");\n#ifndef TOLUA_RELEASE\n  tolua_Error tolua_err;\n  if (\n   !tolua_isusertype(tolua_S,1,\"ProtocolShare\",0,&tolua_err) ||\n   !tolua_isboolean(tolua_S,2,0,&tolua_err)\n  )\n    goto tolua_lerror;\n  else\n#endif\n  {\n    ProtocolShare* self = (ProtocolShare*)  tolua_tousertype(tolua_S,1,0);\n  bool bDebug = ((bool)  tolua_toboolean(tolua_S,2,0));\n#ifndef TOLUA_RELEASE\n  if (!self) tolua_error(tolua_S,\"invalid 'self' in function 'setDebugMode'\", NULL);\n#endif\n    {\n      self->setDebugMode(bDebug);\n    }\n  }\n  return 0;\n#ifndef TOLUA_RELEASE\n  tolua_lerror:\n  tolua_error(tolua_S,\"#ferror in function 'setDebugMode'.\",&tolua_err);\n  return 0;\n#endif\n}\n#endif //#ifndef TOLUA_DISABLE\n\n/* method: share of class  ProtocolShare */\n#ifndef TOLUA_DISABLE_tolua_anysdk_ProtocolShare_share00\nstatic int tolua_anysdk_ProtocolShare_share00(lua_State* tolua_S)\n{\n\tCCLog(\"in function protocols share\\n\");\n#ifndef TOLUA_RELEASE\n\ttolua_Error tolua_err;\n\tif (\n\t !tolua_isusertype(tolua_S,1,\"ProtocolShare\",0,&tolua_err) ||\n\t !tolua_istable(tolua_S,2,0,&tolua_err)\n\t)\n\t\tgoto tolua_lerror;\n\telse\n#endif\n\t{\n\t\tProtocolShare* self = (ProtocolShare*)  tolua_tousertype(tolua_S,1,0);\n\t#ifndef TOLUA_RELEASE\n\t\tif (!self) tolua_error(tolua_S,\"invalid 'self' in function 'share'\", NULL);\n\t#endif\n\t\t{\n\t\t\tTShareInfo strmap;\n\t\t\tlua_pushnil(tolua_S);\n\t\t\twhile ( 0 != lua_next(tolua_S, 2 ) )                             /* L: lotable ..... key value */\n            {\n                if (!lua_isstring(tolua_S, -2))\n                {\n                    lua_pop(tolua_S, 1);                                      /* removes 'value'; keep 'key' for next iteration*/\n                    continue;\n                }\n                if (lua_isnil(tolua_S, -1) || !lua_isstring(tolua_S, -1))\n                {\n                    lua_pop(tolua_S, 1);\n                    continue;\n                }\n                std::string key = \"\";\n                key = tolua_tocppstring(tolua_S, -2, NULL);\n                std::string value = \"\";\n                value = tolua_tocppstring(tolua_S, -1, NULL);\n                CCLog(\"key: %s, value: %s.\", key.c_str(), value.c_str());\n                strmap.insert( StringMap::value_type(key, value) );\n                lua_pop(tolua_S, 1);                                          /* L: lotable ..... key */\n            }\n            self->share(strmap);\n\t\t}\n\t}\n\treturn 0;\n#ifndef TOLUA_RELEASE\n\ttolua_lerror:\n\ttolua_error(tolua_S,\"#ferror in function 'share'.\",&tolua_err);\n\treturn 0;\n#endif\n}\n#endif //#ifndef TOLUA_DISABLE\n\nconst char* version = cocos2dVersion();\nchar VERSION_X = version[10];\n\nclass ProtocolShareActionListener : public ShareResultListener\n{\npublic:\n    ProtocolShareActionListener():_handler(0)\n    {\n    }\n    ~ProtocolShareActionListener()\n    {\n      // if (VERSION_X == '2')\n      // {\n      //     #define ON_VERSION_2 TRUE\n      // }\n\n      #ifdef ON_VERSION_2\n        CCLuaStack* stack = CCLuaEngine::defaultEngine()->getLuaStack();\n        stack->removeScriptHandler(_handler);\n      #else\n        LuaStack* stack = LuaEngine::getInstance()->getLuaStack();\n        stack->removeScriptHandler(_handler);\n      #endif\n    }\n\n    virtual void onShareResult(ShareResultCode ret, const char* msg)\n    {\n      #ifdef ON_VERSION_2\n        CCLog(\"on action result: %d, msg: %s.\", ret, msg);\n        CCLuaStack* stack = CCLuaEngine::defaultEngine()->getLuaStack();\n        lua_State* tolua_S    = stack->getLuaState();\n        tolua_pushnumber(tolua_S, (lua_Number)ret);\n        tolua_pushstring(tolua_S, (const char *)msg);\n        stack->executeFunctionByHandler(_handler, 2);\n        stack->clean();\n      #else\n        CCLOG(\"on share result result: %d, msg: %s.\", ret, msg);\n        LuaStack* stack = LuaEngine::getInstance()->getLuaStack();\n        lua_State* tolua_S    = stack->getLuaState();\n        tolua_pushnumber(tolua_S, (lua_Number)ret);\n        tolua_pushstring(tolua_S, (const char *)msg);\n        stack->executeFunctionByHandler(_handler, 2);\n        stack->clean();\n      #endif\n    }\n\n    static ProtocolShareActionListener* _instance;\n    static ProtocolShareActionListener* getInstance()\n    {\n        if (_instance == NULL)\n        {\n            _instance = new ProtocolShareActionListener();\n        }\n        return _instance;\n    }\n    static void purge()\n    {\n        if (_instance != NULL)\n        {\n            delete _instance;\n            _instance = NULL;\n        }\n    }\n\n    void setHandler(LUA_FUNCTION handler)\n    {\n        _handler = handler;\n        CCLOG(\"_handler: %d.\", (int)_handler);\n    }\nprivate:\n    LUA_FUNCTION _handler;\n};\nProtocolShareActionListener* ProtocolShareActionListener::_instance = NULL;\n\n/* method: setResultListener of class  ProtocolShare */\n#ifndef TOLUA_DISABLE_tolua_anysdk_ProtocolShare_setResultListener\nstatic int tolua_anysdk_ProtocolShare_setResultListener(lua_State* tolua_S)\n{\n#ifndef TOLUA_RELEASE\n tolua_Error tolua_err;\n if (\n     !tolua_isusertype(tolua_S,1,\"ProtocolShare\",0,&tolua_err)\n )\n  goto tolua_lerror;\n else\n#endif\n {\n  ProtocolShare* self = (ProtocolShare*)  tolua_tousertype(tolua_S,1,0);\n#ifndef TOLUA_RELEASE\n  if (!self) tolua_error(tolua_S,\"invalid 'self' in function 'setResultListener'\", NULL);\n#endif\n  {\n    int argc = lua_gettop(tolua_S)-1;\n    CCLog(\"argc: %d.\", argc);\n    if (argc == 1)\n    {\n#ifndef TOLUA_RELEASE\n        if (!toluafix_isfunction(tolua_S,2,\"LUA_FUNCTION\",0,&tolua_err) )\n        {\n            goto tolua_lerror;\n        }\n#endif\n        LUA_FUNCTION handler = (  toluafix_ref_function(tolua_S,2,0));\n\n        if (ProtocolShareActionListener::_instance != NULL)\n        {\n            return 0;\n        }\n        CCLog(\"will set push action listener:\");\n        ProtocolShareActionListener* listener = ProtocolShareActionListener::getInstance();\n        listener->setHandler(handler);\n        self->setResultListener(listener);\n\n        CCLog(\"set listener end\");\n\n        return 0;\n    }\n  }\n }\n return 1;\n#ifndef TOLUA_RELEASE\n tolua_lerror:\n tolua_error(tolua_S,\"#ferror in function 'setResultListener'.\",&tolua_err);\n return 0;\n#endif\n}\n#endif //#ifndef TOLUA_DISABLE\n\n/* method: removeListener of class  ProtocolShare */\n#ifndef TOLUA_DISABLE_tolua_anysdk_ProtocolShare_removeListener\nstatic int tolua_anysdk_ProtocolShare_removeListener(lua_State* tolua_S)\n{\n#ifndef TOLUA_RELEASE\n tolua_Error tolua_err;\n if (\n     !tolua_isusertype(tolua_S,1,\"ProtocolShare\",0,&tolua_err)\n )\n  goto tolua_lerror;\n else\n#endif\n {\n  ProtocolShare* self = (ProtocolShare*)  tolua_tousertype(tolua_S,1,0);\n#ifndef TOLUA_RELEASE\n  if (!self) tolua_error(tolua_S,\"invalid 'self' in function 'removeListener'\", NULL);\n#endif\n  {\n    int argc = lua_gettop(tolua_S)-1;\n    CCLog(\"argc: %d.\", argc);\n    if (argc == 1)\n    {\n        if (ProtocolShareActionListener::_instance != NULL)\n        {\n            ProtocolShareActionListener::purge();\n        }\n        return 0;\n    }\n  }\n }\n return 1;\n#ifndef TOLUA_RELEASE\n tolua_lerror:\n tolua_error(tolua_S,\"#ferror in function 'removeListener'.\",&tolua_err);\n return 0;\n#endif\n}\n#endif //#ifndef TOLUA_DISABLE\n\nstatic void extendProtocolsShare(lua_State* tolua_S)\n{\n    lua_pushstring(tolua_S, \"ProtocolShare\");\n    lua_rawget(tolua_S, LUA_REGISTRYINDEX);\n    if (lua_istable(tolua_S,-1))\n    {\n        tolua_function(tolua_S, \"share\", tolua_anysdk_ProtocolShare_share00);\n        tolua_function(tolua_S, \"setDebugMode\", tolua_anysdk_ProtocolShare_setDebugMode);\n\t\t    tolua_function(tolua_S,\"setResultListener\",tolua_anysdk_ProtocolShare_setResultListener);\n\t\t    tolua_function(tolua_S,\"removeListener\",tolua_anysdk_ProtocolShare_removeListener);\n    }\n    lua_pop(tolua_S, 1);\n}\n\n/* method: create of class  PluginParam */\n#ifndef TOLUA_DISABLE_tolua_anysdk_PluginParam_create\nstatic int tolua_anysdk_PluginParam_create(lua_State* tolua_S)\n{\n\tCCLog(\"in function PluginParam create\\n\");\n#ifndef TOLUA_RELEASE\n\ttolua_Error tolua_err;\n#endif\n\t{\n\t\tint argc = lua_gettop(tolua_S)-1;\n\t\tCCLog(\"argc: %d.\", argc);\n\t\tPluginParam* param = NULL;\n\t\tif (argc == 0){\n\t\t\tparam = new PluginParam();\n\t\t}\n\t\telse if(argc == 1){\n\t\t\tif( tolua_isboolean(tolua_S,2,0,&tolua_err) )\n\t\t\t{\n\t\t\t\tbool temp = ((bool)  tolua_toboolean(tolua_S,2,true));\n\t\t\t\tparam = new PluginParam(temp);\n\t\t\t}\n      else if( lua_type(tolua_S, 2) == LUA_TNUMBER ) \n\t\t\t{\n\t\t\t\tdouble arg1 = (double)tolua_tonumber(tolua_S, 2, 0);\n\t            float argf = (float)arg1;\n\t            int argi = (int)arg1;\n\t            float temp = argf - (float)argi;\n\n\t            if ( temp > 0.000001){\n\t                param = new PluginParam((float)argf);\n\t            }\n\t            else{\n\t                param = new PluginParam((int)argi);\n\t            }\n\t\t\t}\n\t\t\telse if(tolua_isstring(tolua_S, 2, 0, &tolua_err))\n\t        {\n\t            std::string arg1 = (std::string)tolua_tostring(tolua_S, 2, 0);\n\t            const char* temp = arg1.c_str();\n\t            param = new PluginParam(temp);\n\t        }\n\t        else if (tolua_istable(tolua_S, 2, 0, &tolua_err))\n\t        {\n\t        \tCCLOG(\"is table\");\n\t            StringMap strmap;\n\t            lua_pushnil(tolua_S);                                            /* first key L: lotable ..... nil */\n\t            while ( 0 != lua_next(tolua_S, 2 ) )                             /* L: lotable ..... key value */\n\t            {\n\t                if (!lua_isstring(tolua_S, -2))\n\t                {\n\t                    lua_pop(tolua_S, 1);                                      /* removes 'value'; keep 'key' for next iteration*/\n\t                    continue;\n\t                }\n\t                if (lua_isnil(tolua_S, -1) || !lua_isstring(tolua_S, -1))\n\t                {\n\t                    lua_pop(tolua_S, 1);\n\t                    continue;\n\t                }\n\t                std::string key = \"\";\n\t                key = tolua_tocppstring(tolua_S, -2, NULL);;\n\t                std::string value = \"\";\n\t                value = tolua_tocppstring(tolua_S, -1, NULL);\n\t                strmap.insert( StringMap::value_type(key, value) );\n\t                CCLog(\"key: %s, value: %s.\", key.c_str(), value.c_str());\n\t                lua_pop(tolua_S, 1);                                          /* L: lotable ..... key */\n\t            }\n\t            param = new PluginParam(strmap);\n\t            CCLOG(\"end\");\n\t        }\n\t\t}\n\t\ttolua_pushusertype(tolua_S,(void*)param,\"PluginParam\");\n\t}\n\treturn 1;\n#ifndef TOLUA_RELEASE\n\ttolua_lerror:\n\ttolua_error(tolua_S,\"#ferror in function 'create'.\",&tolua_err);\n\treturn 0;\n#endif\n}\n#endif //#ifndef TOLUA_DISABLE\n\n/* method: getMapValue of class  PluginParam */\n#ifndef TOLUA_DISABLE_tolua_anysdk_PluginParam_getMapValue\nstatic int tolua_anysdk_PluginParam_getMapValue(lua_State* tolua_S)\n{\n#ifndef TOLUA_RELEASE\n tolua_Error tolua_err;\n if (\n     !tolua_isusertype(tolua_S,1,\"PluginParam\",0,&tolua_err) ||\n     !tolua_isnoobj(tolua_S,2,&tolua_err)\n )\n  goto tolua_lerror;\n else\n#endif\n {\n  PluginParam* self = (PluginParam*)  tolua_tousertype(tolua_S,1,0);\n#ifndef TOLUA_RELEASE\n  if (!self) tolua_error(tolua_S,\"invalid 'self' in function 'getMapValue'\", NULL);\n#endif\n  {\n  \ttypedef std::map<std::string, PluginParam*> StringMap;\n    StringMap strmap = self->getMapValue();\n    StringMap::iterator iter;\n    lua_newtable(tolua_S);\n    if (NULL != tolua_S)\n    {\n        for ( iter = strmap.begin(); iter != strmap.end(); ++iter)\n        {\n            std::string key = iter->first;\n            PluginParam* value = iter->second;\n            lua_pushstring(tolua_S, key.c_str());\n            tolua_pushusertype(tolua_S,(void*)value,\"PluginParam\");\n            lua_rawset(tolua_S, -3);\n        }\n    }\n  }\n }\n return 1;\n#ifndef TOLUA_RELEASE\n tolua_lerror:\n tolua_error(tolua_S,\"#ferror in function 'getMapValue'.\",&tolua_err);\n return 0;\n#endif\n}\n#endif //#ifndef TOLUA_DISABLE\n\n/* method: getStrMapValue of class  PluginParam */\n#ifndef TOLUA_DISABLE_tolua_anysdk_PluginParam_getStrMapValue\nstatic int tolua_anysdk_PluginParam_getStrMapValue(lua_State* tolua_S)\n{\n#ifndef TOLUA_RELEASE\n tolua_Error tolua_err;\n if (\n     !tolua_isusertype(tolua_S,1,\"PluginParam\",0,&tolua_err) ||\n     !tolua_isnoobj(tolua_S,2,&tolua_err)\n )\n  goto tolua_lerror;\n else\n#endif\n {\n  PluginParam* self = (PluginParam*)  tolua_tousertype(tolua_S,1,0);\n#ifndef TOLUA_RELEASE\n  if (!self) tolua_error(tolua_S,\"invalid 'self' in function 'getStrMapValue'\", NULL);\n#endif\n  {\n\ttypedef std::map<std::string, std::string> StringMap;\n    StringMap strmap = self->getStrMapValue();\n    StringMap::iterator iter;\n    lua_newtable(tolua_S);\n    if (NULL != tolua_S)\n    {\n        for ( iter = strmap.begin(); iter != strmap.end(); ++iter)\n        {\n            std::string key = iter->first;\n            std::string value = iter->second;\n            lua_pushstring(tolua_S, key.c_str());\n            lua_pushstring(tolua_S, value.c_str());\n            lua_rawset(tolua_S, -3);\n        }\n    }\n  }\n }\n return 1;\n#ifndef TOLUA_RELEASE\n tolua_lerror:\n tolua_error(tolua_S,\"#ferror in function 'getStrMapValue'.\",&tolua_err);\n return 0;\n#endif\n}\n#endif //#ifndef TOLUA_DISABLE\n\nstatic void extendPluginParam(lua_State* tolua_S)\n{\n    lua_pushstring(tolua_S, \"PluginParam\");\n    lua_rawget(tolua_S, LUA_REGISTRYINDEX);\n    if (lua_istable(tolua_S,-1))\n    {\n        tolua_function(tolua_S, \"create\", tolua_anysdk_PluginParam_create);\n        tolua_function(tolua_S, \"getMapValue\", tolua_anysdk_PluginParam_getMapValue);\n        tolua_function(tolua_S, \"getStrMapValue\", tolua_anysdk_PluginParam_getStrMapValue);\n    }\n    lua_pop(tolua_S, 1);\n}\n\n/* method: getIAPPlugin of class  PluginParam */\n#ifndef TOLUA_DISABLE_tolua_anysdk_AgentManager_getIAPPlugin\nstatic int tolua_anysdk_AgentManager_getIAPPlugin(lua_State* tolua_S)\n{\n#ifndef TOLUA_RELEASE\n tolua_Error tolua_err;\n if (\n     !tolua_isusertype(tolua_S,1,\"AgentManager\",0,&tolua_err) ||\n     !tolua_isnoobj(tolua_S,2,&tolua_err)\n )\n  goto tolua_lerror;\n else\n#endif\n {\n  AgentManager* self = (AgentManager*)  tolua_tousertype(tolua_S,1,0);\n#ifndef TOLUA_RELEASE\n  if (!self) tolua_error(tolua_S,\"invalid 'self' in function 'getIAPPlugin'\", NULL);\n#endif\n  {\n  \ttypedef std::map<std::string, ProtocolIAP*> StringMap;\n    StringMap *strmap = self->getIAPPlugin();\n    StringMap::iterator iter;\n    lua_newtable(tolua_S);\n    if (NULL != tolua_S)\n    {\n        for ( iter = strmap->begin(); iter != strmap->end(); ++iter)\n        {\n            std::string key = iter->first;\n            ProtocolIAP* value = iter->second;\n            lua_pushstring(tolua_S, key.c_str());\n            tolua_pushusertype(tolua_S,(void*)value,\"ProtocolIAP\");\n            lua_rawset(tolua_S, -3);\n        }\n    }\n  }\n }\n return 1;\n#ifndef TOLUA_RELEASE\n tolua_lerror:\n tolua_error(tolua_S,\"#ferror in function 'getIAPPlugin'.\",&tolua_err);\n return 0;\n#endif\n}\n#endif //#ifndef TOLUA_DISABLE\n\nstatic void extendAgentManager(lua_State* tolua_S)\n{\n    lua_pushstring(tolua_S, \"AgentManager\");\n    lua_rawget(tolua_S, LUA_REGISTRYINDEX);\n    if (lua_istable(tolua_S,-1))\n    {\n        tolua_function(tolua_S, \"getIAPPlugin\", tolua_anysdk_AgentManager_getIAPPlugin);\n    }\n    lua_pop(tolua_S, 1);\n}\n\n/* method: callFuncWithParam of class  PluginProtocol */\n#ifndef TOLUA_DISABLE_tolua_anysdk_PluginProtocol_callFuncWithParam\nstatic int tolua_anysdk_PluginProtocol_callFuncWithParam(lua_State* tolua_S)\n{\n#ifndef TOLUA_RELEASE\n tolua_Error tolua_err;\n if (\n     !tolua_isusertype(tolua_S,1,\"PluginProtocol\",0,&tolua_err) \n )\n  goto tolua_lerror;\n else\n#endif\n {\n  PluginProtocol* self = (PluginProtocol*)  tolua_tousertype(tolua_S,1,0);\n#ifndef TOLUA_RELEASE\n  if (!self) tolua_error(tolua_S,\"invalid 'self' in function 'callFuncWithParam'\", NULL);\n#endif\n  {\n  \tint argc = lua_gettop(tolua_S)-1;\n  \tCCLog(\"argc: %d.\", argc);\n    if(argc == 0){\n      CCLog(\"error param number in callFuncWithParam.\");\n      return 0;\n  \t}\n    else if (argc == 1)\n    {\n      std::string arg1 = (std::string)tolua_tostring(tolua_S, 2, 0);\n      const char* temp = arg1.c_str();\n      self->callFuncWithParam(temp, NULL);\n      return 0;\n    }\n    else\n    {\n      std::string temp = (std::string)tolua_tostring(tolua_S, 2, 0);\n      const char* arg1 = temp.c_str();\n      std::vector<PluginParam*> params;\n      if (!tolua_istable(tolua_S, 3, 0, &tolua_err))\n      {\n        CCLog(\"is not usertable\");\n\n        for (int i = 2; i <= argc; ++i)\n        {\n            PluginParam* param = (PluginParam*)tolua_tousertype(tolua_S,i+1,0);\n            CCLog(\"param:%s.\", param->getStringValue());\n            params.push_back(param);\n        }\n      }\n      else\n      {\n        size_t len = lua_objlen(tolua_S, 3);\n        CCLog(\"is usertable: %d.\", len);\n        for (int i = 0; i < len; i++)\n        {\n            lua_pushnumber(tolua_S, i + 1);\n            lua_gettable(tolua_S, 3);\n            \n            if (lua_isnil(tolua_S, -1) || !lua_isuserdata(tolua_S, -1))\n            {\n                lua_pop(tolua_S, 1);\n                continue;\n            }\n\n            PluginParam* param = static_cast<PluginParam*>(tolua_tousertype(tolua_S, -1, NULL) );\n            if (NULL != param)\n            {\n                CCLog(\"param: %d\", param->getIntValue());\n                params.push_back(param);\n            }\n            else{\n                CCLog(\"param is null\");\n            }\n            lua_pop(tolua_S, 1);\n        }\n      }\n      self->callFuncWithParam(arg1, params);\n      return 0;\n    }\n  }\n }\n return 0;\n#ifndef TOLUA_RELEASE\n tolua_lerror:\n tolua_error(tolua_S,\"#ferror in function 'callFuncWithParam'.\",&tolua_err);\n return 0;\n#endif\n}\n#endif //#ifndef TOLUA_DISABLE\n\n/* method: callStringFuncWithParam of class  PluginProtocol */\n#ifndef TOLUA_DISABLE_tolua_anysdk_PluginProtocol_callStringFuncWithParam\nstatic int tolua_anysdk_PluginProtocol_callStringFuncWithParam(lua_State* tolua_S)\n{\n#ifndef TOLUA_RELEASE\n tolua_Error tolua_err;\n if (\n     !tolua_isusertype(tolua_S,1,\"PluginProtocol\",0,&tolua_err) \n )\n  goto tolua_lerror;\n else\n#endif\n {\n  PluginProtocol* self = (PluginProtocol*)  tolua_tousertype(tolua_S,1,0);\n#ifndef TOLUA_RELEASE\n  if (!self) tolua_error(tolua_S,\"invalid 'self' in function 'callStringFuncWithParam'\", NULL);\n#endif\n  {\n    int argc = lua_gettop(tolua_S)-1;\n    CCLog(\"argc: %d.\", argc);\n    if(argc == 0){\n      CCLog(\"error param number in callStringFuncWithParam.\");\n      return 0;\n    }\n    else if (argc == 1)\n    {\n      std::string arg1 = (std::string)tolua_tostring(tolua_S, 2, 0);\n      const char* temp = arg1.c_str();\n      self->callStringFuncWithParam(temp, NULL);\n      return 0;\n    }\n    else\n    {\n      std::string temp = (std::string)tolua_tostring(tolua_S, 2, 0);\n      const char* arg1 = temp.c_str();\n      std::vector<PluginParam*> params;\n      if (!tolua_istable(tolua_S, 3, 0, &tolua_err))\n      {\n        CCLog(\"is not usertable\");\n\n        for (int i = 2; i <= argc; ++i)\n        {\n            PluginParam* param = (PluginParam*)tolua_tousertype(tolua_S,i+1,0);\n            CCLog(\"param:%s.\", param->getStringValue());\n            params.push_back(param);\n        }\n      }\n      else\n      {\n        size_t len = lua_objlen(tolua_S, 3);\n        CCLog(\"is usertable: %d.\", len);\n        for (int i = 0; i < len; i++)\n        {\n            lua_pushnumber(tolua_S, i + 1);\n            lua_gettable(tolua_S, 3);\n            \n            if (lua_isnil(tolua_S, -1) || !lua_isuserdata(tolua_S, -1))\n            {\n                lua_pop(tolua_S, 1);\n                continue;\n            }\n\n            PluginParam* param = static_cast<PluginParam*>(tolua_tousertype(tolua_S, -1, NULL) );\n            if (NULL != param)\n            {\n                CCLog(\"param: %d\", param->getIntValue());\n                params.push_back(param);\n            }\n            else{\n                CCLog(\"param is null\");\n            }\n            lua_pop(tolua_S, 1);\n        }\n      }\n      self->callStringFuncWithParam(arg1, params);\n      return 0;\n    }\n  }\n }\n return 0;\n#ifndef TOLUA_RELEASE\n tolua_lerror:\n tolua_error(tolua_S,\"#ferror in function 'callStringFuncWithParam'.\",&tolua_err);\n return 0;\n#endif\n}\n#endif //#ifndef TOLUA_DISABLE\n\n/* method: callIntFuncWithParam of class  PluginProtocol */\n#ifndef TOLUA_DISABLE_tolua_anysdk_PluginProtocol_callIntFuncWithParam\nstatic int tolua_anysdk_PluginProtocol_callIntFuncWithParam(lua_State* tolua_S)\n{\n#ifndef TOLUA_RELEASE\n tolua_Error tolua_err;\n if (\n     !tolua_isusertype(tolua_S,1,\"PluginProtocol\",0,&tolua_err) \n )\n  goto tolua_lerror;\n else\n#endif\n {\n  PluginProtocol* self = (PluginProtocol*)  tolua_tousertype(tolua_S,1,0);\n#ifndef TOLUA_RELEASE\n  if (!self) tolua_error(tolua_S,\"invalid 'self' in function 'callIntFuncWithParam'\", NULL);\n#endif\n  {\n    int argc = lua_gettop(tolua_S)-1;\n    CCLog(\"argc: %d.\", argc);\n    if(argc == 0){\n      CCLog(\"error param number in callIntFuncWithParam.\");\n      return 0;\n    }\n    else if (argc == 1)\n    {\n      std::string arg1 = (std::string)tolua_tostring(tolua_S, 2, 0);\n      const char* temp = arg1.c_str();\n      self->callIntFuncWithParam(temp, NULL);\n      return 0;\n    }\n    else\n    {\n      std::string temp = (std::string)tolua_tostring(tolua_S, 2, 0);\n      const char* arg1 = temp.c_str();\n      std::vector<PluginParam*> params;\n      if (!tolua_istable(tolua_S, 3, 0, &tolua_err))\n      {\n        CCLog(\"is not usertable\");\n\n        for (int i = 2; i <= argc; ++i)\n        {\n            PluginParam* param = (PluginParam*)tolua_tousertype(tolua_S,i+1,0);\n            CCLog(\"param:%s.\", param->getStringValue());\n            params.push_back(param);\n        }\n      }\n      else\n      {\n        size_t len = lua_objlen(tolua_S, 3);\n        CCLog(\"is usertable: %d.\", len);\n        for (int i = 0; i < len; i++)\n        {\n            lua_pushnumber(tolua_S, i + 1);\n            lua_gettable(tolua_S, 3);\n            \n            if (lua_isnil(tolua_S, -1) || !lua_isuserdata(tolua_S, -1))\n            {\n                lua_pop(tolua_S, 1);\n                continue;\n            }\n\n            PluginParam* param = static_cast<PluginParam*>(tolua_tousertype(tolua_S, -1, NULL) );\n            if (NULL != param)\n            {\n                CCLog(\"param: %d\", param->getIntValue());\n                params.push_back(param);\n            }\n            else{\n                CCLog(\"param is null\");\n            }\n            lua_pop(tolua_S, 1);\n        }\n      }\n      self->callIntFuncWithParam(arg1, params);\n      return 0;\n    }\n  }\n }\n return 0;\n#ifndef TOLUA_RELEASE\n tolua_lerror:\n tolua_error(tolua_S,\"#ferror in function 'callIntFuncWithParam'.\",&tolua_err);\n return 0;\n#endif\n}\n#endif //#ifndef TOLUA_DISABLE\n\n/* method: callBoolFuncWithParam of class  PluginProtocol */\n#ifndef TOLUA_DISABLE_tolua_anysdk_PluginProtocol_callBoolFuncWithParam\nstatic int tolua_anysdk_PluginProtocol_callBoolFuncWithParam(lua_State* tolua_S)\n{\n#ifndef TOLUA_RELEASE\n tolua_Error tolua_err;\n if (\n     !tolua_isusertype(tolua_S,1,\"PluginProtocol\",0,&tolua_err) \n )\n  goto tolua_lerror;\n else\n#endif\n {\n  PluginProtocol* self = (PluginProtocol*)  tolua_tousertype(tolua_S,1,0);\n#ifndef TOLUA_RELEASE\n  if (!self) tolua_error(tolua_S,\"invalid 'self' in function 'callBoolFuncWithParam'\", NULL);\n#endif\n  {\n    int argc = lua_gettop(tolua_S)-1;\n    CCLog(\"argc: %d.\", argc);\n    if(argc == 0){\n      CCLog(\"error param number in callBoolFuncWithParam.\");\n      return 0;\n    }\n    else if (argc == 1)\n    {\n      std::string arg1 = (std::string)tolua_tostring(tolua_S, 2, 0);\n      const char* temp = arg1.c_str();\n      self->callBoolFuncWithParam(temp, NULL);\n      return 0;\n    }\n    else\n    {\n      std::string temp = (std::string)tolua_tostring(tolua_S, 2, 0);\n      const char* arg1 = temp.c_str();\n      std::vector<PluginParam*> params;\n      if (!tolua_istable(tolua_S, 3, 0, &tolua_err))\n      {\n        CCLog(\"is not usertable\");\n\n        for (int i = 2; i <= argc; ++i)\n        {\n            PluginParam* param = (PluginParam*)tolua_tousertype(tolua_S,i+1,0);\n            CCLog(\"param:%s.\", param->getStringValue());\n            params.push_back(param);\n        }\n      }\n      else\n      {\n        size_t len = lua_objlen(tolua_S, 3);\n        CCLog(\"is usertable: %d.\", len);\n        for (int i = 0; i < len; i++)\n        {\n            lua_pushnumber(tolua_S, i + 1);\n            lua_gettable(tolua_S, 3);\n            \n            if (lua_isnil(tolua_S, -1) || !lua_isuserdata(tolua_S, -1))\n            {\n                lua_pop(tolua_S, 1);\n                continue;\n            }\n\n            PluginParam* param = static_cast<PluginParam*>(tolua_tousertype(tolua_S, -1, NULL) );\n            if (NULL != param)\n            {\n                CCLog(\"param: %d\", param->getIntValue());\n                params.push_back(param);\n            }\n            else{\n                CCLog(\"param is null\");\n            }\n            lua_pop(tolua_S, 1);\n        }\n      }\n      self->callBoolFuncWithParam(arg1, params);\n      return 0;\n    }\n  }\n }\n return 0;\n#ifndef TOLUA_RELEASE\n tolua_lerror:\n tolua_error(tolua_S,\"#ferror in function 'callBoolFuncWithParam'.\",&tolua_err);\n return 0;\n#endif\n}\n#endif //#ifndef TOLUA_DISABLE\n\n/* method: callFloatFuncWithParam of class  PluginProtocol */\n#ifndef TOLUA_DISABLE_tolua_anysdk_PluginProtocol_callFloatFuncWithParam\nstatic int tolua_anysdk_PluginProtocol_callFloatFuncWithParam(lua_State* tolua_S)\n{\n#ifndef TOLUA_RELEASE\n tolua_Error tolua_err;\n if (\n     !tolua_isusertype(tolua_S,1,\"PluginProtocol\",0,&tolua_err) \n )\n  goto tolua_lerror;\n else\n#endif\n {\n  PluginProtocol* self = (PluginProtocol*)  tolua_tousertype(tolua_S,1,0);\n#ifndef TOLUA_RELEASE\n  if (!self) tolua_error(tolua_S,\"invalid 'self' in function 'callFloatFuncWithParam'\", NULL);\n#endif\n  {\n    int argc = lua_gettop(tolua_S)-1;\n    CCLog(\"argc: %d.\", argc);\n    if(argc == 0){\n      CCLog(\"error param number in callFloatFuncWithParam.\");\n      return 0;\n    }\n    else if (argc == 1)\n    {\n      std::string arg1 = (std::string)tolua_tostring(tolua_S, 2, 0);\n      const char* temp = arg1.c_str();\n      self->callFloatFuncWithParam(temp, NULL);\n      return 0;\n    }\n    else\n    {\n      std::string temp = (std::string)tolua_tostring(tolua_S, 2, 0);\n      const char* arg1 = temp.c_str();\n      std::vector<PluginParam*> params;\n      if (!tolua_istable(tolua_S, 3, 0, &tolua_err))\n      {\n        CCLog(\"is not usertable\");\n\n        for (int i = 2; i <= argc; ++i)\n        {\n            PluginParam* param = (PluginParam*)tolua_tousertype(tolua_S,i+1,0);\n            CCLog(\"param:%s.\", param->getStringValue());\n            params.push_back(param);\n        }\n      }\n      else\n      {\n        size_t len = lua_objlen(tolua_S, 3);\n        CCLog(\"is usertable: %d.\", len);\n        for (int i = 0; i < len; i++)\n        {\n            lua_pushnumber(tolua_S, i + 1);\n            lua_gettable(tolua_S, 3);\n            \n            if (lua_isnil(tolua_S, -1) || !lua_isuserdata(tolua_S, -1))\n            {\n                lua_pop(tolua_S, 1);\n                continue;\n            }\n\n            PluginParam* param = static_cast<PluginParam*>(tolua_tousertype(tolua_S, -1, NULL) );\n            if (NULL != param)\n            {\n                CCLog(\"param: %d\", param->getIntValue());\n                params.push_back(param);\n            }\n            else{\n                CCLog(\"param is null\");\n            }\n            lua_pop(tolua_S, 1);\n        }\n      }\n      self->callFloatFuncWithParam(arg1, params);\n      return 0;\n    }\n  }\n }\n return 0;\n#ifndef TOLUA_RELEASE\n tolua_lerror:\n tolua_error(tolua_S,\"#ferror in function 'callFloatFuncWithParam'.\",&tolua_err);\n return 0;\n#endif\n}\n#endif //#ifndef TOLUA_DISABLE\n\nstatic void extendPluginProtocol(lua_State* tolua_S)\n{\n    lua_pushstring(tolua_S, \"PluginProtocol\");\n    lua_rawget(tolua_S, LUA_REGISTRYINDEX);\n    if (lua_istable(tolua_S,-1))\n    {\n        tolua_function(tolua_S, \"callFuncWithParam\", tolua_anysdk_PluginProtocol_callFuncWithParam);\n        tolua_function(tolua_S, \"callStringFuncWithParam\", tolua_anysdk_PluginProtocol_callStringFuncWithParam);\n        tolua_function(tolua_S, \"callIntFuncWithParam\", tolua_anysdk_PluginProtocol_callIntFuncWithParam);\n        tolua_function(tolua_S, \"callBoolFuncWithParam\", tolua_anysdk_PluginProtocol_callBoolFuncWithParam);\n        tolua_function(tolua_S, \"callFloatFuncWithParam\", tolua_anysdk_PluginProtocol_callFloatFuncWithParam);\n    }\n    lua_pop(tolua_S, 1);\n}\n\n/* method: setDebugMode of class  ProtocolAnalytics */\n#ifndef TOLUA_DISABLE_tolua_anysdk_ProtocolAnalytics_setDebugMode\nstatic int tolua_anysdk_ProtocolAnalytics_setDebugMode(lua_State* tolua_S)\n{\n  CCLog(\"in function protocols analytics\\n\");\n#ifndef TOLUA_RELEASE\n  tolua_Error tolua_err;\n  if (\n   !tolua_isusertype(tolua_S,1,\"ProtocolAnalytics\",0,&tolua_err) ||\n   !tolua_isboolean(tolua_S,2,0,&tolua_err)\n  )\n    goto tolua_lerror;\n  else\n#endif\n  {\n    ProtocolAnalytics* self = (ProtocolAnalytics*)  tolua_tousertype(tolua_S,1,0);\n  bool bDebug = ((bool)  tolua_toboolean(tolua_S,2,0));\n#ifndef TOLUA_RELEASE\n  if (!self) tolua_error(tolua_S,\"invalid 'self' in function 'setDebugMode'\", NULL);\n#endif\n    {\n      self->setDebugMode(bDebug);\n    }\n  }\n  return 0;\n#ifndef TOLUA_RELEASE\n  tolua_lerror:\n  tolua_error(tolua_S,\"#ferror in function 'setDebugMode'.\",&tolua_err);\n  return 0;\n#endif\n}\n#endif //#ifndef TOLUA_DISABLE\n\n/* method: logEvent of class  ProtocolAnalytics */\n#ifndef TOLUA_DISABLE_tolua_anysdk_ProtocolAnalytics_logEvent\nstatic int tolua_anysdk_ProtocolAnalytics_logEvent(lua_State* tolua_S)\n{\n#ifndef TOLUA_RELEASE\n tolua_Error tolua_err;\n if (\n     !tolua_isusertype(tolua_S,1,\"ProtocolAnalytics\",0,&tolua_err) \n )\n  goto tolua_lerror;\n else\n#endif\n {\n  ProtocolAnalytics* self = (ProtocolAnalytics*)  tolua_tousertype(tolua_S,1,0);\n#ifndef TOLUA_RELEASE\n  if (!self) tolua_error(tolua_S,\"invalid 'self' in function 'logEvent'\", NULL);\n#endif\n  {\n    int argc = lua_gettop(tolua_S)-1;\n    if (argc == 0)\n    {\n      CCLog(\"error params count of function logEvent.\");\n      return 0;\n    }\n    std::string temp = (std::string)tolua_tostring(tolua_S, 2, 0);\n    const char* arg1 = temp.c_str();\n      CCLog(\"logevent, argc: %d, arg1: %s\", argc, arg1);\n    if (argc == 1)\n    {\n      self->logEvent(arg1, NULL);\n      return 0;\n    }\n    if (argc == 2)\n    {\n      LogEventParamMap strmap;\n      lua_pushnil(tolua_S);\n      while ( 0 != lua_next(tolua_S, 3 ) )                             /* L: lotable ..... key value */\n      {\n          if (!lua_isstring(tolua_S, -2))\n          {\n              lua_pop(tolua_S, 1);                                      /* removes 'value'; keep 'key' for next iteration*/\n              continue;\n          }\n          if (lua_isnil(tolua_S, -1) || !lua_isstring(tolua_S, -1))\n          {\n              lua_pop(tolua_S, 1);\n              continue;\n          }\n          std::string key = \"\";\n          key = tolua_tocppstring(tolua_S, -2, NULL);\n          std::string value = \"\";\n          value = tolua_tocppstring(tolua_S, -1, NULL);\n          CCLog(\"key: %s, value: %s.\", key.c_str(), value.c_str());\n          strmap.insert( LogEventParamMap::value_type(key, value) );\n          lua_pop(tolua_S, 1);                                          /* L: lotable ..... key */\n      }\n      self->logEvent(arg1, &strmap);\n    }\n  }\n}\n return 0;\n#ifndef TOLUA_RELEASE\n tolua_lerror:\n tolua_error(tolua_S,\"#ferror in function 'logEvent'.\",&tolua_err);\n return 0;\n#endif\n}\n#endif //#ifndef TOLUA_DISABLE\n\nstatic void extendProtocolAnalytics(lua_State* tolua_S)\n{\n    lua_pushstring(tolua_S, \"ProtocolAnalytics\");\n    lua_rawget(tolua_S, LUA_REGISTRYINDEX);\n    if (lua_istable(tolua_S,-1))\n    {\n        tolua_function(tolua_S, \"logEvent\", tolua_anysdk_ProtocolAnalytics_logEvent);\n        tolua_function(tolua_S, \"setDebugMode\", tolua_anysdk_ProtocolAnalytics_setDebugMode);\n    }\n    lua_pop(tolua_S, 1);\n}\n\n/* method: setDebugMode of class  ProtocolIAP */\n#ifndef TOLUA_DISABLE_tolua_anysdk_ProtocolIAP_setDebugMode\nstatic int tolua_anysdk_ProtocolIAP_setDebugMode(lua_State* tolua_S)\n{\n  CCLog(\"in function protocols iap\\n\");\n#ifndef TOLUA_RELEASE\n  tolua_Error tolua_err;\n  if (\n   !tolua_isusertype(tolua_S,1,\"ProtocolIAP\",0,&tolua_err) ||\n   !tolua_isboolean(tolua_S,2,0,&tolua_err)\n  )\n    goto tolua_lerror;\n  else\n#endif\n  {\n    ProtocolIAP* self = (ProtocolIAP*)  tolua_tousertype(tolua_S,1,0);\n  bool bDebug = ((bool)  tolua_toboolean(tolua_S,2,0));\n#ifndef TOLUA_RELEASE\n  if (!self) tolua_error(tolua_S,\"invalid 'self' in function 'setDebugMode'\", NULL);\n#endif\n    {\n      self->setDebugMode(bDebug);\n    }\n  }\n  return 0;\n#ifndef TOLUA_RELEASE\n  tolua_lerror:\n  tolua_error(tolua_S,\"#ferror in function 'setDebugMode'.\",&tolua_err);\n  return 0;\n#endif\n}\n#endif //#ifndef TOLUA_DISABLE\n\n/* method: payForProduct of class  ProtocolIAP */\n#ifndef TOLUA_DISABLE_tolua_anysdk_ProtocolIAP_payForProduct\nstatic int tolua_anysdk_ProtocolIAP_payForProduct(lua_State* tolua_S)\n{\n#ifndef TOLUA_RELEASE\n tolua_Error tolua_err;\n if (\n     !tolua_isusertype(tolua_S,1,\"ProtocolIAP\",0,&tolua_err) \n )\n  goto tolua_lerror;\n else\n#endif\n {\n  ProtocolIAP* self = (ProtocolIAP*)  tolua_tousertype(tolua_S,1,0);\n#ifndef TOLUA_RELEASE\n  if (!self) tolua_error(tolua_S,\"invalid 'self' in function 'payForProduct'\", NULL);\n#endif\n  {\n    int argc = lua_gettop(tolua_S)-1;\n    CCLog(\"pay argc: %d.\", argc);\n    if (argc == 1)\n    { \n      TProductInfo strmap;\n      lua_pushnil(tolua_S);\n      while ( 0 != lua_next(tolua_S, 2 ) )                             /* L: lotable ..... key value */\n      {\n          if (!lua_isstring(tolua_S, -2))\n          {\n              lua_pop(tolua_S, 1);                                      /* removes 'value'; keep 'key' for next iteration*/\n              continue;\n          }\n          if (lua_isnil(tolua_S, -1) || !lua_isstring(tolua_S, -1))\n          {\n              lua_pop(tolua_S, 1);\n              continue;\n          }\n          std::string key = \"\";\n          key = tolua_tocppstring(tolua_S, -2, NULL);\n          std::string value = \"\";\n          value = tolua_tocppstring(tolua_S, -1, NULL);\n          CCLog(\"key: %s, value: %s.\", key.c_str(), value.c_str());\n          strmap.insert( StringMap::value_type(key, value) );\n          lua_pop(tolua_S, 1);                                          /* L: lotable ..... key */\n      }\n      self->payForProduct(strmap);\n      return 0;\n    }\n    CCLog(\"error params count of function payForProduct.\");\n  }\n}\n return 0;\n#ifndef TOLUA_RELEASE\n tolua_lerror:\n tolua_error(tolua_S,\"#ferror in function 'payForProduct'.\",&tolua_err);\n return 0;\n#endif\n}\n#endif //#ifndef TOLUA_DISABLE\n\nclass ProtocolIAPActionListener : public PayResultListener\n{\npublic:\n    ProtocolIAPActionListener():_handler(0)\n    {\n    }\n    ~ProtocolIAPActionListener()\n    {\n      #ifdef ON_VERSION_2\n        CCLuaStack* stack = CCLuaEngine::defaultEngine()->getLuaStack();\n        stack->removeScriptHandler(_handler);\n      #else\n        LuaStack* stack = LuaEngine::getInstance()->getLuaStack();\n        stack->removeScriptHandler(_handler);\n      #endif\n    }\n\n    virtual void onPayResult(PayResultCode ret, const char* msg, TProductInfo info)\n    {\n      #ifdef ON_VERSION_2\n        CCLog(\"on action result: %d, msg: %s.\", ret, msg);\n        CCLuaStack* stack = CCLuaEngine::defaultEngine()->getLuaStack();\n        lua_State* tolua_S    = stack->getLuaState();\n        tolua_pushnumber(tolua_S, (lua_Number)ret);\n        tolua_pushstring(tolua_S, (const char *)msg);\n        lua_newtable(tolua_S);\n        TProductInfo::iterator iter= info.begin();\n        if (NULL != tolua_S)\n        {\n            for (; iter != info.end(); ++iter)\n            {\n                std::string key = iter->first;\n                std::string value = iter->second;\n                lua_pushstring(tolua_S, key.c_str());\n                lua_pushstring(tolua_S, value.c_str());\n                lua_rawset(tolua_S, -3);\n            }\n        }\n        stack->executeFunctionByHandler(_handler, 3);\n        stack->clean();\n      #else\n        CCLOG(\"on pay result: %d, msg: %s.\", ret, msg);\n        LuaStack* stack = LuaEngine::getInstance()->getLuaStack();\n        lua_State* tolua_S    = stack->getLuaState();\n        tolua_pushnumber(tolua_S, (lua_Number)ret);\n        tolua_pushstring(tolua_S, (const char *)msg);\n        lua_newtable(tolua_S);\n        if (nullptr != tolua_S)\n        {\n            for (auto iter = info.begin(); iter != info.end(); ++iter)\n            {\n                std::string key = iter->first;\n                std::string value = iter->second;\n                lua_pushstring(tolua_S, key.c_str());\n                lua_pushstring(tolua_S, value.c_str());\n                lua_rawset(tolua_S, -3);\n            }\n        }\n        stack->executeFunctionByHandler(_handler, 3);\n        stack->clean();\n      #endif\n    }\n\n    static ProtocolIAPActionListener* _instance;\n    static ProtocolIAPActionListener* getInstance()\n    {\n        if (_instance == NULL)\n        {\n            _instance = new ProtocolIAPActionListener();\n        }\n        return _instance;\n    }\n    static void purge()\n    {\n        if (_instance != NULL)\n        {\n            delete _instance;\n            _instance = NULL;\n        }\n    }\n\n    void setHandler(LUA_FUNCTION handler)\n    {\n        _handler = handler;\n        CCLOG(\"_handler: %d.\", (int)_handler);\n    }\nprivate:\n    LUA_FUNCTION _handler;\n};\nProtocolIAPActionListener* ProtocolIAPActionListener::_instance = NULL;\n\n/* method: setResultListener of class  ProtocolIAP */\n#ifndef TOLUA_DISABLE_tolua_anysdk_ProtocolIAP_setResultListener\nstatic int tolua_anysdk_ProtocolIAP_setResultListener(lua_State* tolua_S)\n{\n#ifndef TOLUA_RELEASE\n tolua_Error tolua_err;\n if (\n     !tolua_isusertype(tolua_S,1,\"ProtocolIAP\",0,&tolua_err)\n )\n  goto tolua_lerror;\n else\n#endif\n {\n  ProtocolIAP* self = (ProtocolIAP*)  tolua_tousertype(tolua_S,1,0);\n#ifndef TOLUA_RELEASE\n  if (!self) tolua_error(tolua_S,\"invalid 'self' in function 'setResultListener'\", NULL);\n#endif\n  {\n    int argc = lua_gettop(tolua_S)-1;\n    CCLog(\"argc: %d.\", argc);\n    if (argc == 1)\n    {\n#ifndef TOLUA_RELEASE\n        if (!toluafix_isfunction(tolua_S,2,\"LUA_FUNCTION\",0,&tolua_err) )\n        {\n            goto tolua_lerror;\n        }\n#endif\n        LUA_FUNCTION handler = (  toluafix_ref_function(tolua_S,2,0));\n\n        if (ProtocolIAPActionListener::_instance != NULL)\n        {\n            return 0;\n        }\n        CCLog(\"will set iap pay listener:\");\n        ProtocolIAPActionListener* listener = ProtocolIAPActionListener::getInstance();\n        listener->setHandler(handler);\n        self->setResultListener(listener);\n\n        CCLog(\"set listener end\");\n\n        return 0;\n    }\n  }\n }\n return 1;\n#ifndef TOLUA_RELEASE\n tolua_lerror:\n tolua_error(tolua_S,\"#ferror in function 'setResultListener'.\",&tolua_err);\n return 0;\n#endif\n}\n#endif //#ifndef TOLUA_DISABLE\n\n/* method: removeListener of class  ProtocolIAP */\n#ifndef TOLUA_DISABLE_tolua_anysdk_ProtocolIAP_removeListener\nstatic int tolua_anysdk_ProtocolIAP_removeListener(lua_State* tolua_S)\n{\n#ifndef TOLUA_RELEASE\n tolua_Error tolua_err;\n if (\n     !tolua_isusertype(tolua_S,1,\"ProtocolIAP\",0,&tolua_err)\n )\n  goto tolua_lerror;\n else\n#endif\n {\n  ProtocolIAP* self = (ProtocolIAP*)  tolua_tousertype(tolua_S,1,0);\n#ifndef TOLUA_RELEASE\n  if (!self) tolua_error(tolua_S,\"invalid 'self' in function 'removeListener'\", NULL);\n#endif\n  {\n    int argc = lua_gettop(tolua_S)-1;\n    CCLog(\"argc: %d.\", argc);\n    if (argc == 1)\n    {\n        if (ProtocolIAPActionListener::_instance != NULL)\n        {\n            ProtocolIAPActionListener::purge();\n        }\n        return 0;\n    }\n  }\n }\n return 1;\n#ifndef TOLUA_RELEASE\n tolua_lerror:\n tolua_error(tolua_S,\"#ferror in function 'removeListener'.\",&tolua_err);\n return 0;\n#endif\n}\n#endif //#ifndef TOLUA_DISABLE\n\nstatic void extendProtocolIAP(lua_State* tolua_S)\n{\n    lua_pushstring(tolua_S, \"ProtocolIAP\");\n    lua_rawget(tolua_S, LUA_REGISTRYINDEX);\n    if (lua_istable(tolua_S,-1))\n    {\n        tolua_function(tolua_S, \"payForProduct\", tolua_anysdk_ProtocolIAP_payForProduct);\n        tolua_function(tolua_S, \"setDebugMode\", tolua_anysdk_ProtocolIAP_setDebugMode);\n        tolua_function(tolua_S, \"setResultListener\", tolua_anysdk_ProtocolIAP_setResultListener);\n        tolua_function(tolua_S, \"removeListener\", tolua_anysdk_ProtocolIAP_removeListener);\n    }\n    lua_pop(tolua_S, 1);\n}\n\n/* method: setTags of class  ProtocolPush */\n#ifndef TOLUA_DISABLE_tolua_anysdk_ProtocolPush_setTags\nstatic int tolua_anysdk_ProtocolPush_setTags(lua_State* tolua_S)\n{\n#ifndef TOLUA_RELEASE\n tolua_Error tolua_err;\n if (\n     !tolua_isusertype(tolua_S,1,\"ProtocolPush\",0,&tolua_err) \n )\n  goto tolua_lerror;\n else\n#endif\n {\n  ProtocolPush* self = (ProtocolPush*)  tolua_tousertype(tolua_S,1,0);\n#ifndef TOLUA_RELEASE\n  if (!self) tolua_error(tolua_S,\"invalid 'self' in function 'setTags'\", NULL);\n#endif\n  {\n    int argc = lua_gettop(tolua_S)-1;\n    CCLog(\"argc: %d.\", argc);\n    if (argc == 1)\n    {\n      if( tolua_istable(tolua_S, 2, 0, &tolua_err) )\n      {\n        size_t len = lua_objlen(tolua_S, 2);\n        CCLog(\"is usertable, len: %d.\", len);\n        std::list<std::string> tags;\n        for (int i = 0; i < len; i++)\n        {\n            lua_pushnumber(tolua_S, i + 1);\n            lua_gettable(tolua_S, 2);\n            \n            if (lua_isnil(tolua_S, -1) || !lua_isstring(tolua_S, -1))\n            {\n                lua_pop(tolua_S, 1);\n                continue;\n            }\n            std::string param = (std::string)tolua_tostring(tolua_S, -1, 0);\n            if (param.length())\n            {\n                CCLog(\"param: %s\", param.c_str());\n                tags.push_back(param);\n            }\n            lua_pop(tolua_S, 1);\n        }\n        self->setTags(tags);\n        return 0;\n      }\n      CCLog(\"error param type.\");\n      return 0;\n    }\n    CCLog(\"error params count of function setTags.\");\n  }\n}\n return 0;\n#ifndef TOLUA_RELEASE\n tolua_lerror:\n tolua_error(tolua_S,\"#ferror in function 'payForProduct'.\",&tolua_err);\n return 0;\n#endif\n}\n#endif //#ifndef TOLUA_DISABLE\n\n/* method: setDebugMode of class  ProtocolPush */\n#ifndef TOLUA_DISABLE_tolua_anysdk_ProtocolPush_setDebugMode\nstatic int tolua_anysdk_ProtocolPush_setDebugMode(lua_State* tolua_S)\n{\n  CCLog(\"in function protocols push\\n\");\n#ifndef TOLUA_RELEASE\n  tolua_Error tolua_err;\n  if (\n   !tolua_isusertype(tolua_S,1,\"ProtocolPush\",0,&tolua_err) ||\n   !tolua_isboolean(tolua_S,2,0,&tolua_err)\n  )\n    goto tolua_lerror;\n  else\n#endif\n  {\n    ProtocolPush* self = (ProtocolPush*)  tolua_tousertype(tolua_S,1,0);\n  bool bDebug = ((bool)  tolua_toboolean(tolua_S,2,0));\n#ifndef TOLUA_RELEASE\n  if (!self) tolua_error(tolua_S,\"invalid 'self' in function 'setDebugMode'\", NULL);\n#endif\n    {\n      self->setDebugMode(bDebug);\n    }\n  }\n  return 0;\n#ifndef TOLUA_RELEASE\n  tolua_lerror:\n  tolua_error(tolua_S,\"#ferror in function 'setDebugMode'.\",&tolua_err);\n  return 0;\n#endif\n}\n#endif //#ifndef TOLUA_DISABLE\n\n/* method: delTags of class  ProtocolPush */\n#ifndef TOLUA_DISABLE_tolua_anysdk_ProtocolPush_delTags\nstatic int tolua_anysdk_ProtocolPush_delTags(lua_State* tolua_S)\n{\n#ifndef TOLUA_RELEASE\n tolua_Error tolua_err;\n if (\n     !tolua_isusertype(tolua_S,1,\"ProtocolPush\",0,&tolua_err) \n )\n  goto tolua_lerror;\n else\n#endif\n {\n  ProtocolPush* self = (ProtocolPush*)  tolua_tousertype(tolua_S,1,0);\n#ifndef TOLUA_RELEASE\n  if (!self) tolua_error(tolua_S,\"invalid 'self' in function 'delTags'\", NULL);\n#endif\n  {\n    int argc = lua_gettop(tolua_S)-1;\n    CCLog(\"argc: %d.\", argc);\n    if (argc == 1)\n    {\n      if( tolua_istable(tolua_S, 2, 0, &tolua_err) )\n      {\n        size_t len = lua_objlen(tolua_S, 2);\n        CCLog(\"is usertable, len: %d.\", len);\n        std::list<std::string> tags;\n        for (int i = 0; i < len; i++)\n        {\n            lua_pushnumber(tolua_S, i + 1);\n            lua_gettable(tolua_S, 2);\n            \n            if (lua_isnil(tolua_S, -1) || !lua_isstring(tolua_S, -1))\n            {\n                lua_pop(tolua_S, 1);\n                continue;\n            }\n\n            std::string param = (std::string)tolua_tostring(tolua_S, -1, 0);\n            if (param.length())\n            {\n                CCLog(\"param: %s\", param.c_str());\n                tags.push_back(param);\n            }\n            lua_pop(tolua_S, 1);\n        }\n        self->delTags(tags);\n        return 0;\n      }\n      CCLog(\"error param type.\");\n      return 0;\n    }\n    CCLog(\"error params count of function delTags.\");\n  }\n}\n return 0;\n#ifndef TOLUA_RELEASE\n tolua_lerror:\n tolua_error(tolua_S,\"#ferror in function 'delTags'.\",&tolua_err);\n return 0;\n#endif\n}\n#endif //#ifndef TOLUA_DISABLE\n\nclass ProtocolPushActionListener : public PushActionListener\n{\npublic:\n    ProtocolPushActionListener():_handler(0)\n    {\n    }\n    ~ProtocolPushActionListener()\n    {\n      #ifdef ON_VERSION_2\n        CCLuaStack* stack = CCLuaEngine::defaultEngine()->getLuaStack();\n        stack->removeScriptHandler(_handler);\n      #else\n        LuaStack* stack = LuaEngine::getInstance()->getLuaStack();\n        stack->removeScriptHandler(_handler);\n      #endif\n    }\n\n    virtual void onActionResult(ProtocolPush* pPlugin, PushActionResultCode code, const char* msg)\n    {\n      #ifdef ON_VERSION_2\n        CCLog(\"on action result: %d, msg: %s.\", code, msg);\n        CCLuaStack* stack = CCLuaEngine::defaultEngine()->getLuaStack();\n        lua_State* tolua_S    = stack->getLuaState();\n        tolua_pushusertype(tolua_S,(void*)pPlugin,\"ProtocolPush\");\n        tolua_pushnumber(tolua_S, (lua_Number)code);\n        tolua_pushstring(tolua_S, (const char *)msg);\n        stack->executeFunctionByHandler(_handler, 3);\n        stack->clean();\n      #else\n        CCLOG(\"on pay result: %d, msg: %s.\", code, msg);\n        LuaStack* stack = LuaEngine::getInstance()->getLuaStack();\n        lua_State* tolua_S    = stack->getLuaState();\n        object_to_luaval<ProtocolPush>(tolua_S, \"anysdk.ProtocolPush\",(ProtocolPush*)pPlugin);\n        tolua_pushnumber(tolua_S, (lua_Number)code);\n        tolua_pushstring(tolua_S, (const char *)msg);\n        stack->executeFunctionByHandler(_handler, 3);\n        stack->clean();\n      #endif\n    }\n\n    static ProtocolPushActionListener* _instance;\n    static ProtocolPushActionListener* getInstance()\n    {\n        if (_instance == NULL)\n        {\n            _instance = new ProtocolPushActionListener();\n        }\n        return _instance;\n    }\n    static void purge()\n    {\n        if (_instance != NULL)\n        {\n            delete _instance;\n            _instance = NULL;\n        }\n    }\n\n    void setHandler(LUA_FUNCTION handler)\n    {\n        _handler = handler;\n        CCLOG(\"_handler: %d.\", (int)_handler);\n    }\nprivate:\n    LUA_FUNCTION _handler;\n};\nProtocolPushActionListener* ProtocolPushActionListener::_instance = NULL;\n\n/* method: setActionListener of class  ProtocolPush */\n#ifndef TOLUA_DISABLE_tolua_anysdk_ProtocolPush_setActionListener\nstatic int tolua_anysdk_ProtocolPush_setActionListener(lua_State* tolua_S)\n{\n#ifndef TOLUA_RELEASE\n tolua_Error tolua_err;\n if (\n     !tolua_isusertype(tolua_S,1,\"ProtocolPush\",0,&tolua_err)\n )\n  goto tolua_lerror;\n else\n#endif\n {\n  ProtocolPush* self = (ProtocolPush*)  tolua_tousertype(tolua_S,1,0);\n#ifndef TOLUA_RELEASE\n  if (!self) tolua_error(tolua_S,\"invalid 'self' in function 'setActionListener'\", NULL);\n#endif\n  {\n    int argc = lua_gettop(tolua_S)-1;\n    CCLog(\"argc: %d.\", argc);\n    if (argc == 1)\n    {\n#ifndef TOLUA_RELEASE\n        if (!toluafix_isfunction(tolua_S,2,\"LUA_FUNCTION\",0,&tolua_err) )\n        {\n            goto tolua_lerror;\n        }\n#endif\n        LUA_FUNCTION handler = (  toluafix_ref_function(tolua_S,2,0));\n\n        if (ProtocolPushActionListener::_instance != NULL)\n        {\n            return 0;\n        }\n        CCLog(\"will set push action listener:\");\n        ProtocolPushActionListener* listener = ProtocolPushActionListener::getInstance();\n        listener->setHandler(handler);\n        self->setActionListener(listener);\n\n        CCLog(\"set listener end\");\n\n        return 0;\n    }\n  }\n }\n return 1;\n#ifndef TOLUA_RELEASE\n tolua_lerror:\n tolua_error(tolua_S,\"#ferror in function 'setActionListener'.\",&tolua_err);\n return 0;\n#endif\n}\n#endif //#ifndef TOLUA_DISABLE\n\n/* method: removeListener of class  ProtocolPush */\n#ifndef TOLUA_DISABLE_tolua_anysdk_ProtocolPush_removeListener\nstatic int tolua_anysdk_ProtocolPush_removeListener(lua_State* tolua_S)\n{\n#ifndef TOLUA_RELEASE\n tolua_Error tolua_err;\n if (\n     !tolua_isusertype(tolua_S,1,\"ProtocolPush\",0,&tolua_err)\n )\n  goto tolua_lerror;\n else\n#endif\n {\n  ProtocolPush* self = (ProtocolPush*)  tolua_tousertype(tolua_S,1,0);\n#ifndef TOLUA_RELEASE\n  if (!self) tolua_error(tolua_S,\"invalid 'self' in function 'removeListener'\", NULL);\n#endif\n  {\n    int argc = lua_gettop(tolua_S)-1;\n    CCLog(\"argc: %d.\", argc);\n    if (argc == 1)\n    {\n        if (ProtocolPushActionListener::_instance != NULL)\n        {\n            ProtocolPushActionListener::purge();\n        }\n        return 0;\n    }\n  }\n }\n return 1;\n#ifndef TOLUA_RELEASE\n tolua_lerror:\n tolua_error(tolua_S,\"#ferror in function 'removeListener'.\",&tolua_err);\n return 0;\n#endif\n}\n#endif //#ifndef TOLUA_DISABLE\n\nstatic void extendProtocolPush(lua_State* tolua_S)\n{\n    lua_pushstring(tolua_S, \"ProtocolPush\");\n    lua_rawget(tolua_S, LUA_REGISTRYINDEX);\n    if (lua_istable(tolua_S,-1))\n    {\n        tolua_function(tolua_S, \"setTags\", tolua_anysdk_ProtocolPush_setTags);\n        tolua_function(tolua_S, \"delTags\", tolua_anysdk_ProtocolPush_delTags);\n        tolua_function(tolua_S, \"setDebugMode\", tolua_anysdk_ProtocolPush_setDebugMode);\n        tolua_function(tolua_S, \"setActionListener\", tolua_anysdk_ProtocolPush_setActionListener);\n        tolua_function(tolua_S, \"removeListener\", tolua_anysdk_ProtocolPush_removeListener);\n    }\n    lua_pop(tolua_S, 1);\n}\n\n/* method: unlockAchievement of class  ProtocolSocial */\n#ifndef TOLUA_DISABLE_tolua_anysdk_ProtocolSocial_unlockAchievement\nstatic int tolua_anysdk_ProtocolSocial_unlockAchievement(lua_State* tolua_S)\n{\n  CCLog(\"in function protocols unlockAchievement\\n\");\n#ifndef TOLUA_RELEASE\n  tolua_Error tolua_err;\n  if (\n   !tolua_isusertype(tolua_S,1,\"ProtocolSocial\",0,&tolua_err) ||\n   !tolua_istable(tolua_S,2,0,&tolua_err)\n  )\n    goto tolua_lerror;\n  else\n#endif\n  {\n    ProtocolSocial* self = (ProtocolSocial*)  tolua_tousertype(tolua_S,1,0);\n  #ifndef TOLUA_RELEASE\n    if (!self) tolua_error(tolua_S,\"invalid 'self' in function 'unlockAchievement'\", NULL);\n  #endif\n    {\n      TAchievementInfo strmap;\n      lua_pushnil(tolua_S);\n      while ( 0 != lua_next(tolua_S, 2 ) )                             /* L: lotable ..... key value */\n            {\n                if (!lua_isstring(tolua_S, -2))\n                {\n                    lua_pop(tolua_S, 1);                                      /* removes 'value'; keep 'key' for next iteration*/\n                    continue;\n                }\n                if (lua_isnil(tolua_S, -1) || !lua_isstring(tolua_S, -1))\n                {\n                    lua_pop(tolua_S, 1);\n                    continue;\n                }\n                std::string key = \"\";\n                key = tolua_tocppstring(tolua_S, -2, NULL);\n                std::string value = \"\";\n                value = tolua_tocppstring(tolua_S, -1, NULL);\n                CCLog(\"key: %s, value: %s.\", key.c_str(), value.c_str());\n                strmap.insert( StringMap::value_type(key, value) );\n                lua_pop(tolua_S, 1);                                          /* L: lotable ..... key */\n            }\n            self->unlockAchievement(strmap);\n    }\n  }\n  return 0;\n#ifndef TOLUA_RELEASE\n  tolua_lerror:\n  tolua_error(tolua_S,\"#ferror in function 'unlockAchievement'.\",&tolua_err);\n  return 0;\n#endif\n}\n#endif //#ifndef TOLUA_DISABLE\n\nclass ProtocolSocialActionListener : public SocialListener\n{\npublic:\n    ProtocolSocialActionListener():_handler(0)\n    {\n    }\n    ~ProtocolSocialActionListener()\n    {\n      #ifdef ON_VERSION_2\n        CCLuaStack* stack = CCLuaEngine::defaultEngine()->getLuaStack();\n        stack->removeScriptHandler(_handler);\n      #else\n        LuaStack* stack = LuaEngine::getInstance()->getLuaStack();\n        stack->removeScriptHandler(_handler);\n      #endif\n    }\n\n    virtual void onSocialResult(SocialRetCode code, const char* msg)\n    {\n      #ifdef ON_VERSION_2\n        CCLog(\"on action result: %d, msg: %s.\", code, msg);\n        CCLuaStack* stack = CCLuaEngine::defaultEngine()->getLuaStack();\n        lua_State* tolua_S    = stack->getLuaState();\n        tolua_pushnumber(tolua_S, (lua_Number)code);\n        tolua_pushstring(tolua_S, (const char *)msg);\n        stack->executeFunctionByHandler(_handler, 2);\n        stack->clean();\n      #else\n        CCLOG(\"on social result: %d, msg: %s.\", code, msg);\n        LuaStack* stack = LuaEngine::getInstance()->getLuaStack();\n        lua_State* tolua_S    = stack->getLuaState();\n        tolua_pushnumber(tolua_S, (lua_Number)code);\n        tolua_pushstring(tolua_S, (const char *)msg);\n        stack->executeFunctionByHandler(_handler, 2);\n        stack->clean();\n      #endif\n    }\n\n    static ProtocolSocialActionListener* _instance;\n    static ProtocolSocialActionListener* getInstance()\n    {\n        if (_instance == NULL)\n        {\n            _instance = new ProtocolSocialActionListener();\n        }\n        return _instance;\n    }\n    static void purge()\n    {\n        if (_instance != NULL)\n        {\n            delete _instance;\n            _instance = NULL;\n        }\n    }\n\n    void setHandler(LUA_FUNCTION handler)\n    {\n        _handler = handler;\n        CCLOG(\"_handler: %d.\", (int)_handler);\n    }\nprivate:\n    LUA_FUNCTION _handler;\n};\nProtocolSocialActionListener* ProtocolSocialActionListener::_instance = NULL;\n\n/* method: setDebugMode of class  ProtocolSocial */\n#ifndef TOLUA_DISABLE_tolua_anysdk_ProtocolSocial_setDebugMode\nstatic int tolua_anysdk_ProtocolSocial_setDebugMode(lua_State* tolua_S)\n{\n  CCLog(\"in function protocols social\\n\");\n#ifndef TOLUA_RELEASE\n  tolua_Error tolua_err;\n  if (\n   !tolua_isusertype(tolua_S,1,\"ProtocolSocial\",0,&tolua_err) ||\n   !tolua_isboolean(tolua_S,2,0,&tolua_err)\n  )\n    goto tolua_lerror;\n  else\n#endif\n  {\n    ProtocolSocial* self = (ProtocolSocial*)  tolua_tousertype(tolua_S,1,0);\n  bool bDebug = ((bool)  tolua_toboolean(tolua_S,2,0));\n#ifndef TOLUA_RELEASE\n  if (!self) tolua_error(tolua_S,\"invalid 'self' in function 'setDebugMode'\", NULL);\n#endif\n    {\n      self->setDebugMode(bDebug);\n    }\n  }\n  return 0;\n#ifndef TOLUA_RELEASE\n  tolua_lerror:\n  tolua_error(tolua_S,\"#ferror in function 'setDebugMode'.\",&tolua_err);\n  return 0;\n#endif\n}\n#endif //#ifndef TOLUA_DISABLE\n\n/* method: setListener of class  ProtocolSocial */\n#ifndef TOLUA_DISABLE_tolua_anysdk_ProtocolSocial_setListener\nstatic int tolua_anysdk_ProtocolSocial_setListener(lua_State* tolua_S)\n{\n#ifndef TOLUA_RELEASE\n tolua_Error tolua_err;\n if (\n     !tolua_isusertype(tolua_S,1,\"ProtocolSocial\",0,&tolua_err)\n )\n  goto tolua_lerror;\n else\n#endif\n {\n  ProtocolSocial* self = (ProtocolSocial*)  tolua_tousertype(tolua_S,1,0);\n#ifndef TOLUA_RELEASE\n  if (!self) tolua_error(tolua_S,\"invalid 'self' in function 'setListener'\", NULL);\n#endif\n  {\n    int argc = lua_gettop(tolua_S)-1;\n    CCLog(\"argc: %d.\", argc);\n    if (argc == 1)\n    {\n#ifndef TOLUA_RELEASE\n        if (!toluafix_isfunction(tolua_S,2,\"LUA_FUNCTION\",0,&tolua_err) )\n        {\n            goto tolua_lerror;\n        }\n#endif\n        LUA_FUNCTION handler = (  toluafix_ref_function(tolua_S,2,0));\n\n        if (ProtocolSocialActionListener::_instance != NULL)\n        {\n            return 0;\n        }\n        CCLog(\"will set ads listener:\");\n        ProtocolSocialActionListener* listener = ProtocolSocialActionListener::getInstance();\n        listener->setHandler(handler);\n        self->setListener(listener);\n\n        CCLog(\"set listener end\");\n\n        return 0;\n    }\n  }\n }\n return 1;\n#ifndef TOLUA_RELEASE\n tolua_lerror:\n tolua_error(tolua_S,\"#ferror in function 'setListener'.\",&tolua_err);\n return 0;\n#endif\n}\n#endif //#ifndef TOLUA_DISABLE\n\n/* method: removeListener of class  ProtocolSocial */\n#ifndef TOLUA_DISABLE_tolua_anysdk_ProtocolSocial_removeListener\nstatic int tolua_anysdk_ProtocolSocial_removeListener(lua_State* tolua_S)\n{\n#ifndef TOLUA_RELEASE\n tolua_Error tolua_err;\n if (\n     !tolua_isusertype(tolua_S,1,\"ProtocolSocial\",0,&tolua_err)\n )\n  goto tolua_lerror;\n else\n#endif\n {\n  ProtocolSocial* self = (ProtocolSocial*)  tolua_tousertype(tolua_S,1,0);\n#ifndef TOLUA_RELEASE\n  if (!self) tolua_error(tolua_S,\"invalid 'self' in function 'removeListener'\", NULL);\n#endif\n  {\n    int argc = lua_gettop(tolua_S)-1;\n    CCLog(\"argc: %d.\", argc);\n    if (argc == 1)\n    {\n        if (ProtocolSocialActionListener::_instance != NULL)\n        {\n            ProtocolSocialActionListener::purge();\n        }\n        return 0;\n    }\n  }\n }\n return 1;\n#ifndef TOLUA_RELEASE\n tolua_lerror:\n tolua_error(tolua_S,\"#ferror in function 'removeListener'.\",&tolua_err);\n return 0;\n#endif\n}\n#endif //#ifndef TOLUA_DISABLE\n\nstatic void extendProtocolSocial(lua_State* tolua_S)\n{\n    lua_pushstring(tolua_S, \"ProtocolSocial\");\n    lua_rawget(tolua_S, LUA_REGISTRYINDEX);\n    if (lua_istable(tolua_S,-1))\n    {\n        tolua_function(tolua_S, \"unlockAchievement\", tolua_anysdk_ProtocolSocial_unlockAchievement);\n        tolua_function(tolua_S, \"setListener\", tolua_anysdk_ProtocolSocial_setListener);\n        tolua_function(tolua_S, \"setDebugMode\", tolua_anysdk_ProtocolSocial_setDebugMode);\n        tolua_function(tolua_S, \"removeListener\", tolua_anysdk_ProtocolSocial_removeListener);\n    }\n    lua_pop(tolua_S, 1);\n}\n\nclass ProtocolUserActionListener : public UserActionListener\n{\npublic:\n    ProtocolUserActionListener():_handler(0)\n    {\n    }\n    ~ProtocolUserActionListener()\n    {\n      #ifdef ON_VERSION_2\n        CCLuaStack* stack = CCLuaEngine::defaultEngine()->getLuaStack();\n        stack->removeScriptHandler(_handler);\n      #else\n        LuaStack* stack = LuaEngine::getInstance()->getLuaStack();\n        stack->removeScriptHandler(_handler);\n      #endif\n    }\n\n    virtual void onActionResult(ProtocolUser* pPlugin, UserActionResultCode code, const char* msg)\n    {\n      #ifdef ON_VERSION_2\n        CCLog(\"on action result: %d, msg: %s.\", code, msg);\n        CCLuaStack* stack = CCLuaEngine::defaultEngine()->getLuaStack();\n        lua_State* tolua_S    = stack->getLuaState();\n        tolua_pushusertype(tolua_S,(void*)pPlugin,\"ProtocolUser\");\n        tolua_pushnumber(tolua_S, (lua_Number)code);\n        tolua_pushstring(tolua_S, (const char *)msg);\n        stack->executeFunctionByHandler(_handler, 3);\n        stack->clean();\n      #else\n        CCLOG(\"on action result: %d, msg: %s.\", code, msg);\n        LuaStack* stack = LuaEngine::getInstance()->getLuaStack();\n        lua_State* tolua_S    = stack->getLuaState();\n        object_to_luaval<ProtocolUser>(tolua_S, \"anysdk.ProtocolUser\",(ProtocolUser*)pPlugin);\n        tolua_pushnumber(tolua_S, (lua_Number)code);\n        tolua_pushstring(tolua_S, (const char *)msg);\n        stack->executeFunctionByHandler(_handler, 3);\n        stack->clean();\n      #endif\n    }\n\n    static ProtocolUserActionListener* _instance;\n    static ProtocolUserActionListener* getInstance()\n    {\n        if (_instance == NULL)\n        {\n            _instance = new ProtocolUserActionListener();\n        }\n        return _instance;\n    }\n    static void purge()\n    {\n        if (_instance != NULL)\n        {\n            delete _instance;\n            _instance = NULL;\n        }\n    }\n\n    void setHandler(LUA_FUNCTION handler)\n    {\n        _handler = handler;\n        CCLOG(\"_handler: %d.\", (int)_handler);\n    }\nprivate:\n    LUA_FUNCTION _handler;\n};\nProtocolUserActionListener* ProtocolUserActionListener::_instance = NULL;\n\n/* method: setDebugMode of class  ProtocolUser */\n#ifndef TOLUA_DISABLE_tolua_anysdk_ProtocolUser_setDebugMode\nstatic int tolua_anysdk_ProtocolUser_setDebugMode(lua_State* tolua_S)\n{\n  CCLog(\"in function protocols user\\n\");\n#ifndef TOLUA_RELEASE\n  tolua_Error tolua_err;\n  if (\n   !tolua_isusertype(tolua_S,1,\"ProtocolUser\",0,&tolua_err) ||\n   !tolua_isboolean(tolua_S,2,0,&tolua_err)\n  )\n    goto tolua_lerror;\n  else\n#endif\n  {\n    ProtocolUser* self = (ProtocolUser*)  tolua_tousertype(tolua_S,1,0);\n  bool bDebug = ((bool)  tolua_toboolean(tolua_S,2,0));\n#ifndef TOLUA_RELEASE\n  if (!self) tolua_error(tolua_S,\"invalid 'self' in function 'setDebugMode'\", NULL);\n#endif\n    {\n      self->setDebugMode(bDebug);\n    }\n  }\n  return 0;\n#ifndef TOLUA_RELEASE\n  tolua_lerror:\n  tolua_error(tolua_S,\"#ferror in function 'setDebugMode'.\",&tolua_err);\n  return 0;\n#endif\n}\n#endif //#ifndef TOLUA_DISABLE\n\n/* method: setActionListener of class  ProtocolUser */\n#ifndef TOLUA_DISABLE_tolua_anysdk_ProtocolUser_setActionListener\nstatic int tolua_anysdk_ProtocolUser_setActionListener(lua_State* tolua_S)\n{\n#ifndef TOLUA_RELEASE\n tolua_Error tolua_err;\n if (\n     !tolua_isusertype(tolua_S,1,\"ProtocolUser\",0,&tolua_err)\n )\n  goto tolua_lerror;\n else\n#endif\n {\n  ProtocolUser* self = (ProtocolUser*)  tolua_tousertype(tolua_S,1,0);\n#ifndef TOLUA_RELEASE\n  if (!self) tolua_error(tolua_S,\"invalid 'self' in function 'setActionListener'\", NULL);\n#endif\n  {\n    int argc = lua_gettop(tolua_S)-1;\n    CCLog(\"argc: %d.\", argc);\n    if (argc == 1)\n    {\n#ifndef TOLUA_RELEASE\n        if (!toluafix_isfunction(tolua_S,2,\"LUA_FUNCTION\",0,&tolua_err) )\n        {\n            goto tolua_lerror;\n        }\n#endif\n        LUA_FUNCTION handler = (  toluafix_ref_function(tolua_S,2,0));\n\n        if (ProtocolUserActionListener::_instance != NULL)\n        {\n            return 0;\n        }\n        CCLog(\"will set ads listener:\");\n        ProtocolUserActionListener* listener = ProtocolUserActionListener::getInstance();\n        listener->setHandler(handler);\n        self->setActionListener(listener);\n\n        CCLog(\"set listener end\");\n\n        return 0;\n    }\n  }\n }\n return 1;\n#ifndef TOLUA_RELEASE\n tolua_lerror:\n tolua_error(tolua_S,\"#ferror in function 'setActionListener'.\",&tolua_err);\n return 0;\n#endif\n}\n#endif //#ifndef TOLUA_DISABLE\n\n/* method: removeListener of class  ProtocolUser */\n#ifndef TOLUA_DISABLE_tolua_anysdk_ProtocolUser_removeListener\nstatic int tolua_anysdk_ProtocolUser_removeListener(lua_State* tolua_S)\n{\n#ifndef TOLUA_RELEASE\n tolua_Error tolua_err;\n if (\n     !tolua_isusertype(tolua_S,1,\"ProtocolUser\",0,&tolua_err)\n )\n  goto tolua_lerror;\n else\n#endif\n {\n  ProtocolUser* self = (ProtocolUser*)  tolua_tousertype(tolua_S,1,0);\n#ifndef TOLUA_RELEASE\n  if (!self) tolua_error(tolua_S,\"invalid 'self' in function 'removeListener'\", NULL);\n#endif\n  {\n    int argc = lua_gettop(tolua_S)-1;\n    CCLog(\"argc: %d.\", argc);\n    if (argc == 1)\n    {\n        if (ProtocolUserActionListener::_instance != NULL)\n        {\n            ProtocolUserActionListener::purge();\n        }\n        return 0;\n    }\n  }\n }\n return 1;\n#ifndef TOLUA_RELEASE\n tolua_lerror:\n tolua_error(tolua_S,\"#ferror in function 'removeListener'.\",&tolua_err);\n return 0;\n#endif\n}\n#endif //#ifndef TOLUA_DISABLE\n\nstatic void extendProtocolUser(lua_State* tolua_S)\n{\n    lua_pushstring(tolua_S, \"ProtocolUser\");\n    lua_rawget(tolua_S, LUA_REGISTRYINDEX);\n    if (lua_istable(tolua_S,-1))\n    {\n        tolua_function(tolua_S, \"setActionListener\", tolua_anysdk_ProtocolUser_setActionListener);\n        tolua_function(tolua_S, \"setDebugMode\", tolua_anysdk_ProtocolUser_setDebugMode);\n        tolua_function(tolua_S, \"removeListener\", tolua_anysdk_ProtocolUser_removeListener);\n    }\n    lua_pop(tolua_S, 1);\n}\n\nclass ProtocolAdsListener : public AdsListener\n{\npublic:\n    ProtocolAdsListener():_handler(0)\n    {\n    }\n    ~ProtocolAdsListener()\n    {\n      #ifdef ON_VERSION_2\n        CCLuaStack* stack = CCLuaEngine::defaultEngine()->getLuaStack();\n        stack->removeScriptHandler(_handler);\n      #else\n        LuaStack* stack = LuaEngine::getInstance()->getLuaStack();\n        stack->removeScriptHandler(_handler);\n      #endif\n    }\n\n    virtual void onAdsResult(AdsResultCode code, const char* msg)\n    {\n      #ifdef ON_VERSION_2\n        CCLOG(\"on ads result: %d, msg: %s.\", code, msg);\n        CCLuaStack* stack = CCLuaEngine::defaultEngine()->getLuaStack();\n        lua_State* tolua_S    = stack->getLuaState();\n        tolua_pushnumber(tolua_S, (lua_Number)code);\n        tolua_pushstring(tolua_S, (const char *)msg);\n        stack->executeFunctionByHandler(_handler, 2);\n        stack->clean();\n      #else\n        CCLOG(\"on ads result: %d, msg: %s.\", code, msg);\n        LuaStack* stack = LuaEngine::getInstance()->getLuaStack();\n        lua_State* tolua_S    = stack->getLuaState();\n        tolua_pushnumber(tolua_S, (lua_Number)code);\n        tolua_pushstring(tolua_S, (const char *)msg);\n        stack->executeFunctionByHandler(_handler, 2);\n        stack->clean();\n      #endif\n    }\n    virtual void onPlayerGetPoints(ProtocolAds* pAdsPlugin, int points)\n    {\n      #ifdef ON_VERSION_2\n        CCLOG(\"onPlayerGetPoints. points: %d.\", points);\n        CCLuaStack* stack = CCLuaEngine::defaultEngine()->getLuaStack();\n        lua_State* tolua_S    = stack->getLuaState();\n        // object_to_luaval<ProtocolAds>(tolua_S, \"anysdk.ProtocolAds\",(ProtocolAds*)pAdsPlugin);\n        tolua_pushusertype(tolua_S,(void*)pAdsPlugin,\"ProtocolAds\");\n        tolua_pushnumber(tolua_S, (lua_Number)points);\n        stack->executeFunctionByHandler(_handler, 2);\n        stack->clean();\n      #else\n        CCLOG(\"onPlayerGetPoints. points: %d.\", points);\n        LuaStack* stack = LuaEngine::getInstance()->getLuaStack();\n        lua_State* tolua_S    = stack->getLuaState();\n        object_to_luaval<ProtocolAds>(tolua_S, \"anysdk.ProtocolAds\",(ProtocolAds*)pAdsPlugin);\n        tolua_pushnumber(tolua_S, (lua_Number)points);\n        stack->executeFunctionByHandler(_handler, 2);\n        stack->clean();\n      #endif\n    }\n\n    static ProtocolAdsListener* _instance;\n    static ProtocolAdsListener* getInstance()\n    {\n        if (_instance == NULL)\n        {\n            _instance = new ProtocolAdsListener();\n        }\n        return _instance;\n    }\n    static void purge()\n    {\n        if (_instance != NULL)\n        {\n            delete _instance;\n            _instance = NULL;\n        }\n    }\n\n    void setHandler(LUA_FUNCTION handler)\n    {\n        _handler = handler;\n        CCLOG(\"_handler: %d.\", (int)_handler);\n    }\nprivate:\n    LUA_FUNCTION _handler;\n};\nProtocolAdsListener* ProtocolAdsListener::_instance = NULL;\n\n/* method: setAdsListener of class  ProtocolAds */\n#ifndef TOLUA_DISABLE_tolua_anysdk_ProtocolAds_setAdsListener\nstatic int tolua_anysdk_ProtocolAds_setAdsListener(lua_State* tolua_S)\n{\n#ifndef TOLUA_RELEASE\n tolua_Error tolua_err;\n if (\n     !tolua_isusertype(tolua_S,1,\"ProtocolAds\",0,&tolua_err)\n )\n  goto tolua_lerror;\n else\n#endif\n {\n  ProtocolAds* self = (ProtocolAds*)  tolua_tousertype(tolua_S,1,0);\n#ifndef TOLUA_RELEASE\n  if (!self) tolua_error(tolua_S,\"invalid 'self' in function 'setAdsListener'\", NULL);\n#endif\n  {\n    int argc = lua_gettop(tolua_S)-1;\n    CCLog(\"argc: %d.\", argc);\n    if (argc == 1)\n    {\n#ifndef TOLUA_RELEASE\n        if (!toluafix_isfunction(tolua_S,2,\"LUA_FUNCTION\",0,&tolua_err) )\n        {\n            goto tolua_lerror;\n        }\n#endif\n        LUA_FUNCTION handler = (  toluafix_ref_function(tolua_S,2,0));\n\n        if (ProtocolAdsListener::_instance != NULL)\n        {\n            return 0;\n        }\n        CCLog(\"will set ads listener:\");\n        ProtocolAdsListener* listener = ProtocolAdsListener::getInstance();\n        listener->setHandler(handler);\n        self->setAdsListener(listener);\n\n        CCLog(\"set listener end\");\n\n        return 0;\n    }\n  }\n }\n return 1;\n#ifndef TOLUA_RELEASE\n tolua_lerror:\n tolua_error(tolua_S,\"#ferror in function 'setAdsListener'.\",&tolua_err);\n return 0;\n#endif\n}\n#endif //#ifndef TOLUA_DISABLE\n\n/* method: setDebugMode of class  ProtocolAds */\n#ifndef TOLUA_DISABLE_tolua_anysdk_ProtocolAds_setDebugMode\nstatic int tolua_anysdk_ProtocolAds_setDebugMode(lua_State* tolua_S)\n{\n  CCLog(\"in function protocols ads\\n\");\n#ifndef TOLUA_RELEASE\n  tolua_Error tolua_err;\n  if (\n   !tolua_isusertype(tolua_S,1,\"ProtocolAds\",0,&tolua_err) ||\n   !tolua_isboolean(tolua_S,2,0,&tolua_err)\n  )\n    goto tolua_lerror;\n  else\n#endif\n  {\n    ProtocolAds* self = (ProtocolAds*)  tolua_tousertype(tolua_S,1,0);\n  bool bDebug = ((bool)  tolua_toboolean(tolua_S,2,0));\n#ifndef TOLUA_RELEASE\n  if (!self) tolua_error(tolua_S,\"invalid 'self' in function 'setDebugMode'\", NULL);\n#endif\n    {\n      self->setDebugMode(bDebug);\n    }\n  }\n  return 0;\n#ifndef TOLUA_RELEASE\n  tolua_lerror:\n  tolua_error(tolua_S,\"#ferror in function 'setDebugMode'.\",&tolua_err);\n  return 0;\n#endif\n}\n#endif //#ifndef TOLUA_DISABLE\n\n\n/* method: removeListener of class  ProtocolAds */\n#ifndef TOLUA_DISABLE_tolua_anysdk_ProtocolAds_removeListener\nstatic int tolua_anysdk_ProtocolAds_removeListener(lua_State* tolua_S)\n{\n#ifndef TOLUA_RELEASE\n tolua_Error tolua_err;\n if (\n     !tolua_isusertype(tolua_S,1,\"ProtocolAds\",0,&tolua_err)\n )\n  goto tolua_lerror;\n else\n#endif\n {\n  ProtocolAds* self = (ProtocolAds*)  tolua_tousertype(tolua_S,1,0);\n#ifndef TOLUA_RELEASE\n  if (!self) tolua_error(tolua_S,\"invalid 'self' in function 'removeListener'\", NULL);\n#endif\n  {\n    int argc = lua_gettop(tolua_S)-1;\n    CCLog(\"argc: %d.\", argc);\n    if (argc == 1)\n    {\n        if (ProtocolAdsListener::_instance != NULL)\n        {\n            ProtocolAdsListener::purge();\n        }\n        return 0;\n    }\n  }\n }\n return 1;\n#ifndef TOLUA_RELEASE\n tolua_lerror:\n tolua_error(tolua_S,\"#ferror in function 'removeListener'.\",&tolua_err);\n return 0;\n#endif\n}\n#endif //#ifndef TOLUA_DISABLE\n\nstatic void extendProtocolAds(lua_State* tolua_S)\n{\n    lua_pushstring(tolua_S, \"ProtocolAds\");\n    lua_rawget(tolua_S, LUA_REGISTRYINDEX);\n    if (lua_istable(tolua_S,-1))\n    {\n        tolua_function(tolua_S, \"setAdsListener\", tolua_anysdk_ProtocolAds_setAdsListener);\n        tolua_function(tolua_S, \"removeListener\", tolua_anysdk_ProtocolAds_removeListener);\n        tolua_function(tolua_S, \"setDebugMode\", tolua_anysdk_ProtocolAds_setDebugMode);\n    }\n    lua_pop(tolua_S, 1);\n}\n\n/* Open function */\nTOLUA_API int tolua_anysdk_manual_open (lua_State* tolua_S)\n{\n\textendProtocolsShare(tolua_S);\n\textendPluginParam(tolua_S);\n\textendAgentManager(tolua_S);\n  extendPluginProtocol(tolua_S);\n  extendProtocolAnalytics(tolua_S);\n  extendProtocolIAP(tolua_S);\n  extendProtocolAds(tolua_S);\n  extendProtocolPush(tolua_S);\n  extendProtocolSocial(tolua_S);\n  extendProtocolUser(tolua_S);\n\treturn 0;\n}\n\n#if defined(LUA_VERSION_NUM) && LUA_VERSION_NUM >= 501\n TOLUA_API int luaopen_anysdk_manual (lua_State* tolua_S) {\n return tolua_anysdk_manual_open(tolua_S);\n};\n#endif\n"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/Classes/anysdk_manual_bindings.h",
    "content": "#ifndef __LUA_ANYSDK_MANUAL_BINDINGS_H_\n#define __LUA_ANYSDK_MANUAL_BINDINGS_H_\n\n#ifdef __cplusplus\nextern \"C\" {\n#endif\n#include \"tolua++.h\"\n#ifdef __cplusplus\n}\n#endif\n\nTOLUA_API int tolua_anysdk_manual_open(lua_State* tolua_S);\n\n#endif // __LUACOCOSTUDIO_H_\n"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/Classes/anysdkbindings.cpp",
    "content": "/*\n** Lua binding: anysdk\n** Generated automatically by tolua++-1.0.92 on Wed Jul  2 17:07:32 2014.\n*/\n\n/****************************************************************************\n Copyright (c) 2011 cocos2d-x.org\n\n http://www.cocos2d-x.org\n\n Permission is hereby granted, free of charge, to any person obtaining a copy\n of this software and associated documentation files (the \"Software\"), to deal\n in the Software without restriction, including without limitation the rights\n to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n copies of the Software, and to permit persons to whom the Software is\n furnished to do so, subject to the following conditions:\n\n The above copyright notice and this permission notice shall be included in\n all copies or substantial portions of the Software.\n\n THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n THE SOFTWARE.\n ****************************************************************************/\n\nextern \"C\" {\n#include \"tolua_fix.h\"\n}\n\n#include <map>\n#include <string>\n#include \"anysdkbindings.h\"\n#include \"AgentManager.h\"\n#include \"PluginManager.h\"\n#include \"PluginFactory.h\"\n#include \"AgentManager.h\"\n#include \"PluginProtocol.h\"\n#include \"ProtocolPush.h\"\n#include \"PluginFactory.h\"     \n#include \"ProtocolAds.h\"     \n#include \"ProtocolShare.h\"\n#include \"PluginManager.h\"\n#include \"ProtocolAnalytics.h\" \n#include \"ProtocolSocial.h\"\n#include \"PluginParam.h\"      \n#include \"ProtocolIAP.h\"     \n#include \"ProtocolUser.h\"\n#include \"cocos2d.h\"\n\nusing namespace anysdk::framework;\n\nUSING_NS_CC;\n\n\n\n\n/* function to release collected object via destructor */\n#ifdef __cplusplus\n\nstatic int tolua_collect_AgentManager (lua_State* tolua_S)\n{\n AgentManager* self = (AgentManager*) tolua_tousertype(tolua_S,1,0);\n    Mtolua_delete(self);\n    return 0;\n}\n\nstatic int tolua_collect_PluginManager (lua_State* tolua_S)\n{\n PluginManager* self = (PluginManager*) tolua_tousertype(tolua_S,1,0);\n    Mtolua_delete(self);\n    return 0;\n}\n\nstatic int tolua_collect_PluginFactory (lua_State* tolua_S)\n{\n PluginFactory* self = (PluginFactory*) tolua_tousertype(tolua_S,1,0);\n    Mtolua_delete(self);\n    return 0;\n}\n#endif\n\n\n/* function to register type */\nstatic void tolua_reg_types (lua_State* tolua_S)\n{\n tolua_usertype(tolua_S,\"PluginParam\");\n tolua_usertype(tolua_S,\"ProtocolUser\");\n tolua_usertype(tolua_S,\"ProtocolSocial\");\n tolua_usertype(tolua_S,\"PluginManager\");\n tolua_usertype(tolua_S,\"ProtocolAnalytics\");\n tolua_usertype(tolua_S,\"ProtocolShare\");\n tolua_usertype(tolua_S,\"ProtocolPush\");\n tolua_usertype(tolua_S,\"ParamType\");\n tolua_usertype(tolua_S,\"ProtocolIAP\");\n tolua_usertype(tolua_S,\"PluginFactory\");\n tolua_usertype(tolua_S,\"AdsType\");\n tolua_usertype(tolua_S,\"AgentManager\");\n tolua_usertype(tolua_S,\"PluginProtocol\");\n tolua_usertype(tolua_S,\"ProtocolAds\");\n}\n\n/* method: delete of class  AgentManager */\n#ifndef TOLUA_DISABLE_tolua_anysdk_AgentManager_delete00\nstatic int tolua_anysdk_AgentManager_delete00(lua_State* tolua_S)\n{\n#ifndef TOLUA_RELEASE\n tolua_Error tolua_err;\n if (\n     !tolua_isusertype(tolua_S,1,\"AgentManager\",0,&tolua_err) ||\n     !tolua_isnoobj(tolua_S,2,&tolua_err)\n )\n  goto tolua_lerror;\n else\n#endif\n {\n  AgentManager* self = (AgentManager*)  tolua_tousertype(tolua_S,1,0);\n#ifndef TOLUA_RELEASE\n  if (!self) tolua_error(tolua_S,\"invalid 'self' in function 'delete'\", NULL);\n#endif\n  Mtolua_delete(self);\n }\n return 0;\n#ifndef TOLUA_RELEASE\n tolua_lerror:\n tolua_error(tolua_S,\"#ferror in function 'delete'.\",&tolua_err);\n return 0;\n#endif\n}\n#endif //#ifndef TOLUA_DISABLE\n\n/* method: getInstance of class  AgentManager */\n#ifndef TOLUA_DISABLE_tolua_anysdk_AgentManager_getInstance00\nstatic int tolua_anysdk_AgentManager_getInstance00(lua_State* tolua_S)\n{\n#ifndef TOLUA_RELEASE\n tolua_Error tolua_err;\n if (\n     !tolua_isusertable(tolua_S,1,\"AgentManager\",0,&tolua_err) ||\n     !tolua_isnoobj(tolua_S,2,&tolua_err)\n )\n  goto tolua_lerror;\n else\n#endif\n {\n  {\n   AgentManager* tolua_ret = (AgentManager*)  AgentManager::getInstance();\n    tolua_pushusertype(tolua_S,(void*)tolua_ret,\"AgentManager\");\n  }\n }\n return 1;\n#ifndef TOLUA_RELEASE\n tolua_lerror:\n tolua_error(tolua_S,\"#ferror in function 'getInstance'.\",&tolua_err);\n return 0;\n#endif\n}\n#endif //#ifndef TOLUA_DISABLE\n\n/* method: end of class  AgentManager */\n#ifndef TOLUA_DISABLE_tolua_anysdk_AgentManager_endManager00\nstatic int tolua_anysdk_AgentManager_endManager00(lua_State* tolua_S)\n{\n#ifndef TOLUA_RELEASE\n tolua_Error tolua_err;\n if (\n     !tolua_isusertable(tolua_S,1,\"AgentManager\",0,&tolua_err) ||\n     !tolua_isnoobj(tolua_S,2,&tolua_err)\n )\n  goto tolua_lerror;\n else\n#endif\n {\n  {\n   AgentManager::end();\n  }\n }\n return 0;\n#ifndef TOLUA_RELEASE\n tolua_lerror:\n tolua_error(tolua_S,\"#ferror in function 'endManager'.\",&tolua_err);\n return 0;\n#endif\n}\n#endif //#ifndef TOLUA_DISABLE\n\n/* method: init of class  AgentManager */\n#ifndef TOLUA_DISABLE_tolua_anysdk_AgentManager_init00\nstatic int tolua_anysdk_AgentManager_init00(lua_State* tolua_S)\n{\n#ifndef TOLUA_RELEASE\n tolua_Error tolua_err;\n if (\n     !tolua_isusertype(tolua_S,1,\"AgentManager\",0,&tolua_err) ||\n     !tolua_iscppstring(tolua_S,2,0,&tolua_err) ||\n     !tolua_iscppstring(tolua_S,3,0,&tolua_err) ||\n     !tolua_iscppstring(tolua_S,4,0,&tolua_err) ||\n     !tolua_iscppstring(tolua_S,5,0,&tolua_err) ||\n     !tolua_isnoobj(tolua_S,6,&tolua_err)\n )\n  goto tolua_lerror;\n else\n#endif\n {\n  AgentManager* self = (AgentManager*)  tolua_tousertype(tolua_S,1,0);\n  std::string appKey = ((std::string)  tolua_tocppstring(tolua_S,2,0));\n  std::string appSecret = ((std::string)  tolua_tocppstring(tolua_S,3,0));\n  std::string privateKey = ((std::string)  tolua_tocppstring(tolua_S,4,0));\n  std::string oauthLoginServer = ((std::string)  tolua_tocppstring(tolua_S,5,0));\n#ifndef TOLUA_RELEASE\n  if (!self) tolua_error(tolua_S,\"invalid 'self' in function 'init'\", NULL);\n#endif\n  {\n   self->init(appKey,appSecret,privateKey,oauthLoginServer);\n  }\n }\n return 0;\n#ifndef TOLUA_RELEASE\n tolua_lerror:\n tolua_error(tolua_S,\"#ferror in function 'init'.\",&tolua_err);\n return 0;\n#endif\n}\n#endif //#ifndef TOLUA_DISABLE\n\n/* method: loadALLPlugin of class  AgentManager */\n#ifndef TOLUA_DISABLE_tolua_anysdk_AgentManager_loadALLPlugin00\nstatic int tolua_anysdk_AgentManager_loadALLPlugin00(lua_State* tolua_S)\n{\n#ifndef TOLUA_RELEASE\n tolua_Error tolua_err;\n if (\n     !tolua_isusertype(tolua_S,1,\"AgentManager\",0,&tolua_err) ||\n     !tolua_isnoobj(tolua_S,2,&tolua_err)\n )\n  goto tolua_lerror;\n else\n#endif\n {\n  AgentManager* self = (AgentManager*)  tolua_tousertype(tolua_S,1,0);\n#ifndef TOLUA_RELEASE\n  if (!self) tolua_error(tolua_S,\"invalid 'self' in function 'loadALLPlugin'\", NULL);\n#endif\n  {\n   self->loadALLPlugin();\n  }\n }\n return 0;\n#ifndef TOLUA_RELEASE\n tolua_lerror:\n tolua_error(tolua_S,\"#ferror in function 'loadALLPlugin'.\",&tolua_err);\n return 0;\n#endif\n}\n#endif //#ifndef TOLUA_DISABLE\n\n/* method: unloadALLPlugin of class  AgentManager */\n#ifndef TOLUA_DISABLE_tolua_anysdk_AgentManager_unloadALLPlugin00\nstatic int tolua_anysdk_AgentManager_unloadALLPlugin00(lua_State* tolua_S)\n{\n#ifndef TOLUA_RELEASE\n tolua_Error tolua_err;\n if (\n     !tolua_isusertype(tolua_S,1,\"AgentManager\",0,&tolua_err) ||\n     !tolua_isnoobj(tolua_S,2,&tolua_err)\n )\n  goto tolua_lerror;\n else\n#endif\n {\n  AgentManager* self = (AgentManager*)  tolua_tousertype(tolua_S,1,0);\n#ifndef TOLUA_RELEASE\n  if (!self) tolua_error(tolua_S,\"invalid 'self' in function 'unloadALLPlugin'\", NULL);\n#endif\n  {\n   self->unloadALLPlugin();\n  }\n }\n return 0;\n#ifndef TOLUA_RELEASE\n tolua_lerror:\n tolua_error(tolua_S,\"#ferror in function 'unloadALLPlugin'.\",&tolua_err);\n return 0;\n#endif\n}\n#endif //#ifndef TOLUA_DISABLE\n\n/* method: getAnalyticsPlugin of class  AgentManager */\n#ifndef TOLUA_DISABLE_tolua_anysdk_AgentManager_getAnalyticsPlugin00\nstatic int tolua_anysdk_AgentManager_getAnalyticsPlugin00(lua_State* tolua_S)\n{\n#ifndef TOLUA_RELEASE\n tolua_Error tolua_err;\n if (\n     !tolua_isusertype(tolua_S,1,\"AgentManager\",0,&tolua_err) ||\n     !tolua_isnoobj(tolua_S,2,&tolua_err)\n )\n  goto tolua_lerror;\n else\n#endif\n {\n  AgentManager* self = (AgentManager*)  tolua_tousertype(tolua_S,1,0);\n#ifndef TOLUA_RELEASE\n  if (!self) tolua_error(tolua_S,\"invalid 'self' in function 'getAnalyticsPlugin'\", NULL);\n#endif\n  {\n   ProtocolAnalytics* tolua_ret = (ProtocolAnalytics*)  self->getAnalyticsPlugin();\n    tolua_pushusertype(tolua_S,(void*)tolua_ret,\"ProtocolAnalytics\");\n  }\n }\n return 1;\n#ifndef TOLUA_RELEASE\n tolua_lerror:\n tolua_error(tolua_S,\"#ferror in function 'getAnalyticsPlugin'.\",&tolua_err);\n return 0;\n#endif\n}\n#endif //#ifndef TOLUA_DISABLE\n\n/* method: getUserPlugin of class  AgentManager */\n#ifndef TOLUA_DISABLE_tolua_anysdk_AgentManager_getUserPlugin00\nstatic int tolua_anysdk_AgentManager_getUserPlugin00(lua_State* tolua_S)\n{\n#ifndef TOLUA_RELEASE\n tolua_Error tolua_err;\n if (\n     !tolua_isusertype(tolua_S,1,\"AgentManager\",0,&tolua_err) ||\n     !tolua_isnoobj(tolua_S,2,&tolua_err)\n )\n  goto tolua_lerror;\n else\n#endif\n {\n  AgentManager* self = (AgentManager*)  tolua_tousertype(tolua_S,1,0);\n#ifndef TOLUA_RELEASE\n  if (!self) tolua_error(tolua_S,\"invalid 'self' in function 'getUserPlugin'\", NULL);\n#endif\n  {\n   ProtocolUser* tolua_ret = (ProtocolUser*)  self->getUserPlugin();\n    tolua_pushusertype(tolua_S,(void*)tolua_ret,\"ProtocolUser\");\n  }\n }\n return 1;\n#ifndef TOLUA_RELEASE\n tolua_lerror:\n tolua_error(tolua_S,\"#ferror in function 'getUserPlugin'.\",&tolua_err);\n return 0;\n#endif\n}\n#endif //#ifndef TOLUA_DISABLE\n\n/* method: getSharePlugin of class  AgentManager */\n#ifndef TOLUA_DISABLE_tolua_anysdk_AgentManager_getSharePlugin00\nstatic int tolua_anysdk_AgentManager_getSharePlugin00(lua_State* tolua_S)\n{\n#ifndef TOLUA_RELEASE\n tolua_Error tolua_err;\n if (\n     !tolua_isusertype(tolua_S,1,\"AgentManager\",0,&tolua_err) ||\n     !tolua_isnoobj(tolua_S,2,&tolua_err)\n )\n  goto tolua_lerror;\n else\n#endif\n {\n  AgentManager* self = (AgentManager*)  tolua_tousertype(tolua_S,1,0);\n#ifndef TOLUA_RELEASE\n  if (!self) tolua_error(tolua_S,\"invalid 'self' in function 'getSharePlugin'\", NULL);\n#endif\n  {\n   ProtocolShare* tolua_ret = (ProtocolShare*)  self->getSharePlugin();\n    tolua_pushusertype(tolua_S,(void*)tolua_ret,\"ProtocolShare\");\n  }\n }\n return 1;\n#ifndef TOLUA_RELEASE\n tolua_lerror:\n tolua_error(tolua_S,\"#ferror in function 'getSharePlugin'.\",&tolua_err);\n return 0;\n#endif\n}\n#endif //#ifndef TOLUA_DISABLE\n\n/* method: getSocialPlugin of class  AgentManager */\n#ifndef TOLUA_DISABLE_tolua_anysdk_AgentManager_getSocialPlugin00\nstatic int tolua_anysdk_AgentManager_getSocialPlugin00(lua_State* tolua_S)\n{\n#ifndef TOLUA_RELEASE\n tolua_Error tolua_err;\n if (\n     !tolua_isusertype(tolua_S,1,\"AgentManager\",0,&tolua_err) ||\n     !tolua_isnoobj(tolua_S,2,&tolua_err)\n )\n  goto tolua_lerror;\n else\n#endif\n {\n  AgentManager* self = (AgentManager*)  tolua_tousertype(tolua_S,1,0);\n#ifndef TOLUA_RELEASE\n  if (!self) tolua_error(tolua_S,\"invalid 'self' in function 'getSocialPlugin'\", NULL);\n#endif\n  {\n   ProtocolSocial* tolua_ret = (ProtocolSocial*)  self->getSocialPlugin();\n    tolua_pushusertype(tolua_S,(void*)tolua_ret,\"ProtocolSocial\");\n  }\n }\n return 1;\n#ifndef TOLUA_RELEASE\n tolua_lerror:\n tolua_error(tolua_S,\"#ferror in function 'getSocialPlugin'.\",&tolua_err);\n return 0;\n#endif\n}\n#endif //#ifndef TOLUA_DISABLE\n\n/* method: getAdsPlugin of class  AgentManager */\n#ifndef TOLUA_DISABLE_tolua_anysdk_AgentManager_getAdsPlugin00\nstatic int tolua_anysdk_AgentManager_getAdsPlugin00(lua_State* tolua_S)\n{\n#ifndef TOLUA_RELEASE\n tolua_Error tolua_err;\n if (\n     !tolua_isusertype(tolua_S,1,\"AgentManager\",0,&tolua_err) ||\n     !tolua_isnoobj(tolua_S,2,&tolua_err)\n )\n  goto tolua_lerror;\n else\n#endif\n {\n  AgentManager* self = (AgentManager*)  tolua_tousertype(tolua_S,1,0);\n#ifndef TOLUA_RELEASE\n  if (!self) tolua_error(tolua_S,\"invalid 'self' in function 'getAdsPlugin'\", NULL);\n#endif\n  {\n   ProtocolAds* tolua_ret = (ProtocolAds*)  self->getAdsPlugin();\n    tolua_pushusertype(tolua_S,(void*)tolua_ret,\"ProtocolAds\");\n  }\n }\n return 1;\n#ifndef TOLUA_RELEASE\n tolua_lerror:\n tolua_error(tolua_S,\"#ferror in function 'getAdsPlugin'.\",&tolua_err);\n return 0;\n#endif\n}\n#endif //#ifndef TOLUA_DISABLE\n\n/* method: getChannelId of class  AgentManager */\n#ifndef TOLUA_DISABLE_tolua_anysdk_AgentManager_getChannelId00\nstatic int tolua_anysdk_AgentManager_getChannelId00(lua_State* tolua_S)\n{\n#ifndef TOLUA_RELEASE\n tolua_Error tolua_err;\n if (\n     !tolua_isusertype(tolua_S,1,\"AgentManager\",0,&tolua_err) ||\n     !tolua_isnoobj(tolua_S,2,&tolua_err)\n )\n  goto tolua_lerror;\n else\n#endif\n {\n  AgentManager* self = (AgentManager*)  tolua_tousertype(tolua_S,1,0);\n#ifndef TOLUA_RELEASE\n  if (!self) tolua_error(tolua_S,\"invalid 'self' in function 'getChannelId'\", NULL);\n#endif\n  {\n   std::string tolua_ret = (std::string)  self->getChannelId();\n   tolua_pushcppstring(tolua_S,(const char*)tolua_ret);\n  }\n }\n return 1;\n#ifndef TOLUA_RELEASE\n tolua_lerror:\n tolua_error(tolua_S,\"#ferror in function 'getChannelId'.\",&tolua_err);\n return 0;\n#endif\n}\n#endif //#ifndef TOLUA_DISABLE\n\n/* method: getPushPlugin of class  AgentManager */\n#ifndef TOLUA_DISABLE_tolua_anysdk_AgentManager_getPushPlugin00\nstatic int tolua_anysdk_AgentManager_getPushPlugin00(lua_State* tolua_S)\n{\n#ifndef TOLUA_RELEASE\n tolua_Error tolua_err;\n if (\n     !tolua_isusertype(tolua_S,1,\"AgentManager\",0,&tolua_err) ||\n     !tolua_isnoobj(tolua_S,2,&tolua_err)\n )\n  goto tolua_lerror;\n else\n#endif\n {\n  AgentManager* self = (AgentManager*)  tolua_tousertype(tolua_S,1,0);\n#ifndef TOLUA_RELEASE\n  if (!self) tolua_error(tolua_S,\"invalid 'self' in function 'getPushPlugin'\", NULL);\n#endif\n  {\n   ProtocolPush* tolua_ret = (ProtocolPush*)  self->getPushPlugin();\n    tolua_pushusertype(tolua_S,(void*)tolua_ret,\"ProtocolPush\");\n  }\n }\n return 1;\n#ifndef TOLUA_RELEASE\n tolua_lerror:\n tolua_error(tolua_S,\"#ferror in function 'getPushPlugin'.\",&tolua_err);\n return 0;\n#endif\n}\n#endif //#ifndef TOLUA_DISABLE\n\n/* method: getCustomParam of class  AgentManager */\n#ifndef TOLUA_DISABLE_tolua_anysdk_AgentManager_getCustomParam00\nstatic int tolua_anysdk_AgentManager_getCustomParam00(lua_State* tolua_S)\n{\n#ifndef TOLUA_RELEASE\n tolua_Error tolua_err;\n if (\n     !tolua_isusertype(tolua_S,1,\"AgentManager\",0,&tolua_err) ||\n     !tolua_isnoobj(tolua_S,2,&tolua_err)\n )\n  goto tolua_lerror;\n else\n#endif\n {\n  AgentManager* self = (AgentManager*)  tolua_tousertype(tolua_S,1,0);\n#ifndef TOLUA_RELEASE\n  if (!self) tolua_error(tolua_S,\"invalid 'self' in function 'getCustomParam'\", NULL);\n#endif\n  {\n   std::string tolua_ret = (std::string)  self->getCustomParam();\n   tolua_pushcppstring(tolua_S,(const char*)tolua_ret);\n  }\n }\n return 1;\n#ifndef TOLUA_RELEASE\n tolua_lerror:\n tolua_error(tolua_S,\"#ferror in function 'getCustomParam'.\",&tolua_err);\n return 0;\n#endif\n}\n#endif //#ifndef TOLUA_DISABLE\n\n/* method: delete of class  PluginFactory */\n#ifndef TOLUA_DISABLE_tolua_anysdk_PluginFactory_delete00\nstatic int tolua_anysdk_PluginFactory_delete00(lua_State* tolua_S)\n{\n#ifndef TOLUA_RELEASE\n tolua_Error tolua_err;\n if (\n     !tolua_isusertype(tolua_S,1,\"PluginFactory\",0,&tolua_err) ||\n     !tolua_isnoobj(tolua_S,2,&tolua_err)\n )\n  goto tolua_lerror;\n else\n#endif\n {\n  PluginFactory* self = (PluginFactory*)  tolua_tousertype(tolua_S,1,0);\n#ifndef TOLUA_RELEASE\n  if (!self) tolua_error(tolua_S,\"invalid 'self' in function 'delete'\", NULL);\n#endif\n  Mtolua_delete(self);\n }\n return 0;\n#ifndef TOLUA_RELEASE\n tolua_lerror:\n tolua_error(tolua_S,\"#ferror in function 'delete'.\",&tolua_err);\n return 0;\n#endif\n}\n#endif //#ifndef TOLUA_DISABLE\n\n/* method: getInstance of class  PluginFactory */\n#ifndef TOLUA_DISABLE_tolua_anysdk_PluginFactory_getInstance00\nstatic int tolua_anysdk_PluginFactory_getInstance00(lua_State* tolua_S)\n{\n#ifndef TOLUA_RELEASE\n tolua_Error tolua_err;\n if (\n     !tolua_isusertable(tolua_S,1,\"PluginFactory\",0,&tolua_err) ||\n     !tolua_isnoobj(tolua_S,2,&tolua_err)\n )\n  goto tolua_lerror;\n else\n#endif\n {\n  {\n   PluginFactory* tolua_ret = (PluginFactory*)  PluginFactory::getInstance();\n    tolua_pushusertype(tolua_S,(void*)tolua_ret,\"PluginFactory\");\n  }\n }\n return 1;\n#ifndef TOLUA_RELEASE\n tolua_lerror:\n tolua_error(tolua_S,\"#ferror in function 'getInstance'.\",&tolua_err);\n return 0;\n#endif\n}\n#endif //#ifndef TOLUA_DISABLE\n\n/* method: purgeFactory of class  PluginFactory */\n#ifndef TOLUA_DISABLE_tolua_anysdk_PluginFactory_purgeFactory00\nstatic int tolua_anysdk_PluginFactory_purgeFactory00(lua_State* tolua_S)\n{\n#ifndef TOLUA_RELEASE\n tolua_Error tolua_err;\n if (\n     !tolua_isusertable(tolua_S,1,\"PluginFactory\",0,&tolua_err) ||\n     !tolua_isnoobj(tolua_S,2,&tolua_err)\n )\n  goto tolua_lerror;\n else\n#endif\n {\n  {\n   PluginFactory::purgeFactory();\n  }\n }\n return 0;\n#ifndef TOLUA_RELEASE\n tolua_lerror:\n tolua_error(tolua_S,\"#ferror in function 'purgeFactory'.\",&tolua_err);\n return 0;\n#endif\n}\n#endif //#ifndef TOLUA_DISABLE\n\n/* method: delete of class  PluginManager */\n#ifndef TOLUA_DISABLE_tolua_anysdk_PluginManager_delete00\nstatic int tolua_anysdk_PluginManager_delete00(lua_State* tolua_S)\n{\n#ifndef TOLUA_RELEASE\n tolua_Error tolua_err;\n if (\n     !tolua_isusertype(tolua_S,1,\"PluginManager\",0,&tolua_err) ||\n     !tolua_isnoobj(tolua_S,2,&tolua_err)\n )\n  goto tolua_lerror;\n else\n#endif\n {\n  PluginManager* self = (PluginManager*)  tolua_tousertype(tolua_S,1,0);\n#ifndef TOLUA_RELEASE\n  if (!self) tolua_error(tolua_S,\"invalid 'self' in function 'delete'\", NULL);\n#endif\n  Mtolua_delete(self);\n }\n return 0;\n#ifndef TOLUA_RELEASE\n tolua_lerror:\n tolua_error(tolua_S,\"#ferror in function 'delete'.\",&tolua_err);\n return 0;\n#endif\n}\n#endif //#ifndef TOLUA_DISABLE\n\n/* method: getInstance of class  PluginManager */\n#ifndef TOLUA_DISABLE_tolua_anysdk_PluginManager_getInstance00\nstatic int tolua_anysdk_PluginManager_getInstance00(lua_State* tolua_S)\n{\n#ifndef TOLUA_RELEASE\n tolua_Error tolua_err;\n if (\n     !tolua_isusertable(tolua_S,1,\"PluginManager\",0,&tolua_err) ||\n     !tolua_isnoobj(tolua_S,2,&tolua_err)\n )\n  goto tolua_lerror;\n else\n#endif\n {\n  {\n   PluginManager* tolua_ret = (PluginManager*)  PluginManager::getInstance();\n    tolua_pushusertype(tolua_S,(void*)tolua_ret,\"PluginManager\");\n  }\n }\n return 1;\n#ifndef TOLUA_RELEASE\n tolua_lerror:\n tolua_error(tolua_S,\"#ferror in function 'getInstance'.\",&tolua_err);\n return 0;\n#endif\n}\n#endif //#ifndef TOLUA_DISABLE\n\n/* method: end of class  PluginManager */\n#ifndef TOLUA_DISABLE_tolua_anysdk_PluginManager_endManager00\nstatic int tolua_anysdk_PluginManager_endManager00(lua_State* tolua_S)\n{\n#ifndef TOLUA_RELEASE\n tolua_Error tolua_err;\n if (\n     !tolua_isusertable(tolua_S,1,\"PluginManager\",0,&tolua_err) ||\n     !tolua_isnoobj(tolua_S,2,&tolua_err)\n )\n  goto tolua_lerror;\n else\n#endif\n {\n  {\n   PluginManager::end();\n  }\n }\n return 0;\n#ifndef TOLUA_RELEASE\n tolua_lerror:\n tolua_error(tolua_S,\"#ferror in function 'endManager'.\",&tolua_err);\n return 0;\n#endif\n}\n#endif //#ifndef TOLUA_DISABLE\n\n/* method: loadPlugin of class  PluginManager */\n#ifndef TOLUA_DISABLE_tolua_anysdk_PluginManager_loadPlugin00\nstatic int tolua_anysdk_PluginManager_loadPlugin00(lua_State* tolua_S)\n{\n#ifndef TOLUA_RELEASE\n tolua_Error tolua_err;\n if (\n     !tolua_isusertype(tolua_S,1,\"PluginManager\",0,&tolua_err) ||\n     !tolua_isstring(tolua_S,2,0,&tolua_err) ||\n     !tolua_isnumber(tolua_S,3,0,&tolua_err) ||\n     !tolua_isnoobj(tolua_S,4,&tolua_err)\n )\n  goto tolua_lerror;\n else\n#endif\n {\n  PluginManager* self = (PluginManager*)  tolua_tousertype(tolua_S,1,0);\n  const char* name = ((const char*)  tolua_tostring(tolua_S,2,0));\n  int pluginType = ((int)  tolua_tonumber(tolua_S,3,0));\n#ifndef TOLUA_RELEASE\n  if (!self) tolua_error(tolua_S,\"invalid 'self' in function 'loadPlugin'\", NULL);\n#endif\n  {\n   PluginProtocol* tolua_ret = (PluginProtocol*)  self->loadPlugin(name,pluginType);\n    tolua_pushusertype(tolua_S,(void*)tolua_ret,\"PluginProtocol\");\n  }\n }\n return 1;\n#ifndef TOLUA_RELEASE\n tolua_lerror:\n tolua_error(tolua_S,\"#ferror in function 'loadPlugin'.\",&tolua_err);\n return 0;\n#endif\n}\n#endif //#ifndef TOLUA_DISABLE\n\n/* method: unloadPlugin of class  PluginManager */\n#ifndef TOLUA_DISABLE_tolua_anysdk_PluginManager_unloadPlugin00\nstatic int tolua_anysdk_PluginManager_unloadPlugin00(lua_State* tolua_S)\n{\n#ifndef TOLUA_RELEASE\n tolua_Error tolua_err;\n if (\n     !tolua_isusertype(tolua_S,1,\"PluginManager\",0,&tolua_err) ||\n     !tolua_isstring(tolua_S,2,0,&tolua_err) ||\n     !tolua_isnumber(tolua_S,3,1,&tolua_err) ||\n     !tolua_isnoobj(tolua_S,4,&tolua_err)\n )\n  goto tolua_lerror;\n else\n#endif\n {\n  PluginManager* self = (PluginManager*)  tolua_tousertype(tolua_S,1,0);\n  const char* name = ((const char*)  tolua_tostring(tolua_S,2,0));\n  int pluginType = ((int)  tolua_tonumber(tolua_S,3,0));\n#ifndef TOLUA_RELEASE\n  if (!self) tolua_error(tolua_S,\"invalid 'self' in function 'unloadPlugin'\", NULL);\n#endif\n  {\n   self->unloadPlugin(name,pluginType);\n  }\n }\n return 0;\n#ifndef TOLUA_RELEASE\n tolua_lerror:\n tolua_error(tolua_S,\"#ferror in function 'unloadPlugin'.\",&tolua_err);\n return 0;\n#endif\n}\n#endif //#ifndef TOLUA_DISABLE\n\n/* method: setPluginName of class  PluginProtocol */\n#ifndef TOLUA_DISABLE_tolua_anysdk_PluginProtocol_setPluginName00\nstatic int tolua_anysdk_PluginProtocol_setPluginName00(lua_State* tolua_S)\n{\n#ifndef TOLUA_RELEASE\n tolua_Error tolua_err;\n if (\n     !tolua_isusertype(tolua_S,1,\"PluginProtocol\",0,&tolua_err) ||\n     !tolua_isstring(tolua_S,2,0,&tolua_err) ||\n     !tolua_isnoobj(tolua_S,3,&tolua_err)\n )\n  goto tolua_lerror;\n else\n#endif\n {\n  PluginProtocol* self = (PluginProtocol*)  tolua_tousertype(tolua_S,1,0);\n  const char* name = ((const char*)  tolua_tostring(tolua_S,2,0));\n#ifndef TOLUA_RELEASE\n  if (!self) tolua_error(tolua_S,\"invalid 'self' in function 'setPluginName'\", NULL);\n#endif\n  {\n   self->setPluginName(name);\n  }\n }\n return 0;\n#ifndef TOLUA_RELEASE\n tolua_lerror:\n tolua_error(tolua_S,\"#ferror in function 'setPluginName'.\",&tolua_err);\n return 0;\n#endif\n}\n#endif //#ifndef TOLUA_DISABLE\n\n/* method: getPluginName of class  PluginProtocol */\n#ifndef TOLUA_DISABLE_tolua_anysdk_PluginProtocol_getPluginName00\nstatic int tolua_anysdk_PluginProtocol_getPluginName00(lua_State* tolua_S)\n{\n#ifndef TOLUA_RELEASE\n tolua_Error tolua_err;\n if (\n     !tolua_isusertype(tolua_S,1,\"PluginProtocol\",0,&tolua_err) ||\n     !tolua_isnoobj(tolua_S,2,&tolua_err)\n )\n  goto tolua_lerror;\n else\n#endif\n {\n  PluginProtocol* self = (PluginProtocol*)  tolua_tousertype(tolua_S,1,0);\n#ifndef TOLUA_RELEASE\n  if (!self) tolua_error(tolua_S,\"invalid 'self' in function 'getPluginName'\", NULL);\n#endif\n  {\n   const char* tolua_ret = (const char*)  self->getPluginName();\n   tolua_pushstring(tolua_S,(const char*)tolua_ret);\n  }\n }\n return 1;\n#ifndef TOLUA_RELEASE\n tolua_lerror:\n tolua_error(tolua_S,\"#ferror in function 'getPluginName'.\",&tolua_err);\n return 0;\n#endif\n}\n#endif //#ifndef TOLUA_DISABLE\n\n/* method: getPluginVersion of class  PluginProtocol */\n#ifndef TOLUA_DISABLE_tolua_anysdk_PluginProtocol_getPluginVersion00\nstatic int tolua_anysdk_PluginProtocol_getPluginVersion00(lua_State* tolua_S)\n{\n#ifndef TOLUA_RELEASE\n tolua_Error tolua_err;\n if (\n     !tolua_isusertype(tolua_S,1,\"PluginProtocol\",0,&tolua_err) ||\n     !tolua_isnoobj(tolua_S,2,&tolua_err)\n )\n  goto tolua_lerror;\n else\n#endif\n {\n  PluginProtocol* self = (PluginProtocol*)  tolua_tousertype(tolua_S,1,0);\n#ifndef TOLUA_RELEASE\n  if (!self) tolua_error(tolua_S,\"invalid 'self' in function 'getPluginVersion'\", NULL);\n#endif\n  {\n   std::string tolua_ret = (std::string)  self->getPluginVersion();\n   tolua_pushcppstring(tolua_S,(const char*)tolua_ret);\n  }\n }\n return 1;\n#ifndef TOLUA_RELEASE\n tolua_lerror:\n tolua_error(tolua_S,\"#ferror in function 'getPluginVersion'.\",&tolua_err);\n return 0;\n#endif\n}\n#endif //#ifndef TOLUA_DISABLE\n\n/* method: getSDKVersion of class  PluginProtocol */\n#ifndef TOLUA_DISABLE_tolua_anysdk_PluginProtocol_getSDKVersion00\nstatic int tolua_anysdk_PluginProtocol_getSDKVersion00(lua_State* tolua_S)\n{\n#ifndef TOLUA_RELEASE\n tolua_Error tolua_err;\n if (\n     !tolua_isusertype(tolua_S,1,\"PluginProtocol\",0,&tolua_err) ||\n     !tolua_isnoobj(tolua_S,2,&tolua_err)\n )\n  goto tolua_lerror;\n else\n#endif\n {\n  PluginProtocol* self = (PluginProtocol*)  tolua_tousertype(tolua_S,1,0);\n#ifndef TOLUA_RELEASE\n  if (!self) tolua_error(tolua_S,\"invalid 'self' in function 'getSDKVersion'\", NULL);\n#endif\n  {\n   std::string tolua_ret = (std::string)  self->getSDKVersion();\n   tolua_pushcppstring(tolua_S,(const char*)tolua_ret);\n  }\n }\n return 1;\n#ifndef TOLUA_RELEASE\n tolua_lerror:\n tolua_error(tolua_S,\"#ferror in function 'getSDKVersion'.\",&tolua_err);\n return 0;\n#endif\n}\n#endif //#ifndef TOLUA_DISABLE\n\n/* method: setDebugMode of class  PluginProtocol */\n#ifndef TOLUA_DISABLE_tolua_anysdk_PluginProtocol_setDebugMode00\nstatic int tolua_anysdk_PluginProtocol_setDebugMode00(lua_State* tolua_S)\n{\n#ifndef TOLUA_RELEASE\n tolua_Error tolua_err;\n if (\n     !tolua_isusertype(tolua_S,1,\"PluginProtocol\",0,&tolua_err) ||\n     !tolua_isboolean(tolua_S,2,0,&tolua_err) ||\n     !tolua_isnoobj(tolua_S,3,&tolua_err)\n )\n  goto tolua_lerror;\n else\n#endif\n {\n  PluginProtocol* self = (PluginProtocol*)  tolua_tousertype(tolua_S,1,0);\n  bool bDebug = ((bool)  tolua_toboolean(tolua_S,2,0));\n#ifndef TOLUA_RELEASE\n  if (!self) tolua_error(tolua_S,\"invalid 'self' in function 'setDebugMode'\", NULL);\n#endif\n  {\n   self->setDebugMode(bDebug);\n  }\n }\n return 0;\n#ifndef TOLUA_RELEASE\n tolua_lerror:\n tolua_error(tolua_S,\"#ferror in function 'setDebugMode'.\",&tolua_err);\n return 0;\n#endif\n}\n#endif //#ifndef TOLUA_DISABLE\n\n/* method: showAds of class  ProtocolAds */\n#ifndef TOLUA_DISABLE_tolua_anysdk_ProtocolAds_showAds00\nstatic int tolua_anysdk_ProtocolAds_showAds00(lua_State* tolua_S)\n{\n#ifndef TOLUA_RELEASE\n tolua_Error tolua_err;\n if (\n     !tolua_isusertype(tolua_S,1,\"ProtocolAds\",0,&tolua_err) ||\n     (tolua_isvaluenil(tolua_S,2,&tolua_err) ) ||\n     !tolua_isnumber(tolua_S,3,1,&tolua_err) ||\n     !tolua_isnoobj(tolua_S,4,&tolua_err)\n )\n  goto tolua_lerror;\n else\n#endif\n {\n  ProtocolAds* self = (ProtocolAds*)  tolua_tousertype(tolua_S,1,0);\n  AdsType adsType =  (AdsType) ((int)  tolua_tonumber(tolua_S,2,0));\n  int idx = ((int)  tolua_tonumber(tolua_S,3,1));\n#ifndef TOLUA_RELEASE\n  if (!self) tolua_error(tolua_S,\"invalid 'self' in function 'showAds'\", NULL);\n#endif\n  {\n    CCLOG(\"showAds, adsType:%d, %x\\n\", adsType, self);\n   self->showAds(adsType, idx);\n  }\n }\n return 0;\n#ifndef TOLUA_RELEASE\n tolua_lerror:\n tolua_error(tolua_S,\"#ferror in function 'showAds'.\",&tolua_err);\n return 0;\n#endif\n}\n#endif //#ifndef TOLUA_DISABLE\n\n/* method: hideAds of class  ProtocolAds */\n#ifndef TOLUA_DISABLE_tolua_anysdk_ProtocolAds_hideAds00\nstatic int tolua_anysdk_ProtocolAds_hideAds00(lua_State* tolua_S)\n{\n#ifndef TOLUA_RELEASE\n tolua_Error tolua_err;\n if (\n     !tolua_isusertype(tolua_S,1,\"ProtocolAds\",0,&tolua_err) ||\n     (tolua_isvaluenil(tolua_S,2,&tolua_err) ) ||\n     !tolua_isnumber(tolua_S,3,1,&tolua_err) ||\n     !tolua_isnoobj(tolua_S,4,&tolua_err)\n )\n  goto tolua_lerror;\n else\n#endif\n {\n  ProtocolAds* self = (ProtocolAds*)  tolua_tousertype(tolua_S,1,0);\n  AdsType adsType =  (AdsType) ((int)  tolua_tonumber(tolua_S,2,0));\n  int idx = ((int)  tolua_tonumber(tolua_S,3,1));\n#ifndef TOLUA_RELEASE\n  if (!self) tolua_error(tolua_S,\"invalid 'self' in function 'hideAds'\", NULL);\n#endif\n  {\n    CCLOG(\"hideAds, adsType:%d, %x\\n\", adsType, self);\n   self->hideAds(adsType, idx);\n  }\n }\n return 0;\n#ifndef TOLUA_RELEASE\n tolua_lerror:\n tolua_error(tolua_S,\"#ferror in function 'hideAds'.\",&tolua_err);\n return 0;\n#endif\n}\n#endif //#ifndef TOLUA_DISABLE\n\n/* method: queryPoints of class  ProtocolAds */\n#ifndef TOLUA_DISABLE_tolua_anysdk_ProtocolAds_queryPoints00\nstatic int tolua_anysdk_ProtocolAds_queryPoints00(lua_State* tolua_S)\n{\n#ifndef TOLUA_RELEASE\n tolua_Error tolua_err;\n if (\n     !tolua_isusertype(tolua_S,1,\"ProtocolAds\",0,&tolua_err) ||\n     !tolua_isnoobj(tolua_S,2,&tolua_err)\n )\n  goto tolua_lerror;\n else\n#endif\n {\n  ProtocolAds* self = (ProtocolAds*)  tolua_tousertype(tolua_S,1,0);\n#ifndef TOLUA_RELEASE\n  if (!self) tolua_error(tolua_S,\"invalid 'self' in function 'queryPoints'\", NULL);\n#endif\n  {\n   float tolua_ret = (float)  self->queryPoints();\n   tolua_pushnumber(tolua_S,(lua_Number)tolua_ret);\n  }\n }\n return 1;\n#ifndef TOLUA_RELEASE\n tolua_lerror:\n tolua_error(tolua_S,\"#ferror in function 'queryPoints'.\",&tolua_err);\n return 0;\n#endif\n}\n#endif //#ifndef TOLUA_DISABLE\n\n/* method: spendPoints of class  ProtocolAds */\n#ifndef TOLUA_DISABLE_tolua_anysdk_ProtocolAds_spendPoints00\nstatic int tolua_anysdk_ProtocolAds_spendPoints00(lua_State* tolua_S)\n{\n#ifndef TOLUA_RELEASE\n tolua_Error tolua_err;\n if (\n     !tolua_isusertype(tolua_S,1,\"ProtocolAds\",0,&tolua_err) ||\n     !tolua_isnumber(tolua_S,2,0,&tolua_err) ||\n     !tolua_isnoobj(tolua_S,3,&tolua_err)\n )\n  goto tolua_lerror;\n else\n#endif\n {\n  ProtocolAds* self = (ProtocolAds*)  tolua_tousertype(tolua_S,1,0);\n  int points = ((int)  tolua_tonumber(tolua_S,2,0));\n  CCLOG(\"spendPoints: %x, points: %d \\n\", self, points);\n#ifndef TOLUA_RELEASE\n  if (!self) tolua_error(tolua_S,\"invalid 'self' in function 'spendPoints'\", NULL);\n#endif\n  {\n   self->spendPoints(points);\n  }\n }\n return 0;\n#ifndef TOLUA_RELEASE\n tolua_lerror:\n tolua_error(tolua_S,\"#ferror in function 'spendPoints'.\",&tolua_err);\n return 0;\n#endif\n}\n#endif //#ifndef TOLUA_DISABLE\n\n/* method: isAdTypeSupported of class  ProtocolAds */\n#ifndef TOLUA_DISABLE_tolua_anysdk_ProtocolAds_isAdTypeSupported00\nstatic int tolua_anysdk_ProtocolAds_isAdTypeSupported00(lua_State* tolua_S)\n{\n#ifndef TOLUA_RELEASE\n tolua_Error tolua_err;\n if (\n     !tolua_isusertype(tolua_S,1,\"ProtocolAds\",0,&tolua_err) ||\n     !tolua_isnumber(tolua_S,2,0,&tolua_err) ||\n     !tolua_isnoobj(tolua_S,3,&tolua_err)\n )\n  goto tolua_lerror;\n else\n#endif\n {\n  ProtocolAds* self = (ProtocolAds*)  tolua_tousertype(tolua_S,1,0);\n  AdsType adsType = (AdsType) ((int)  tolua_tonumber(tolua_S,2,0));\n#ifndef TOLUA_RELEASE\n  if (!self) tolua_error(tolua_S,\"invalid 'self' in function 'isAdTypeSupported'\", NULL);\n#endif\n  {\n   bool tolua_ret = (bool)  self->isAdTypeSupported(adsType);\n   tolua_pushboolean(tolua_S,(bool)tolua_ret);\n  }\n }\n return 1;\n#ifndef TOLUA_RELEASE\n tolua_lerror:\n tolua_error(tolua_S,\"#ferror in function 'isAdTypeSupported'.\",&tolua_err);\n return 0;\n#endif\n}\n#endif //#ifndef TOLUA_DISABLE\n\n/* method: startSession of class  ProtocolAnalytics */\n#ifndef TOLUA_DISABLE_tolua_anysdk_ProtocolAnalytics_startSession00\nstatic int tolua_anysdk_ProtocolAnalytics_startSession00(lua_State* tolua_S)\n{\n#ifndef TOLUA_RELEASE\n tolua_Error tolua_err;\n if (\n     !tolua_isusertype(tolua_S,1,\"ProtocolAnalytics\",0,&tolua_err) ||\n     !tolua_isnoobj(tolua_S,2,&tolua_err)\n )\n  goto tolua_lerror;\n else\n#endif\n {\n  ProtocolAnalytics* self = (ProtocolAnalytics*)  tolua_tousertype(tolua_S,1,0);\n#ifndef TOLUA_RELEASE\n  if (!self) tolua_error(tolua_S,\"invalid 'self' in function 'startSession'\", NULL);\n#endif\n  {\n   self->startSession();\n  }\n }\n return 0;\n#ifndef TOLUA_RELEASE\n tolua_lerror:\n tolua_error(tolua_S,\"#ferror in function 'startSession'.\",&tolua_err);\n return 0;\n#endif\n}\n#endif //#ifndef TOLUA_DISABLE\n\n/* method: stopSession of class  ProtocolAnalytics */\n#ifndef TOLUA_DISABLE_tolua_anysdk_ProtocolAnalytics_stopSession00\nstatic int tolua_anysdk_ProtocolAnalytics_stopSession00(lua_State* tolua_S)\n{\n#ifndef TOLUA_RELEASE\n tolua_Error tolua_err;\n if (\n     !tolua_isusertype(tolua_S,1,\"ProtocolAnalytics\",0,&tolua_err) ||\n     !tolua_isnoobj(tolua_S,2,&tolua_err)\n )\n  goto tolua_lerror;\n else\n#endif\n {\n  ProtocolAnalytics* self = (ProtocolAnalytics*)  tolua_tousertype(tolua_S,1,0);\n#ifndef TOLUA_RELEASE\n  if (!self) tolua_error(tolua_S,\"invalid 'self' in function 'stopSession'\", NULL);\n#endif\n  {\n   self->stopSession();\n  }\n }\n return 0;\n#ifndef TOLUA_RELEASE\n tolua_lerror:\n tolua_error(tolua_S,\"#ferror in function 'stopSession'.\",&tolua_err);\n return 0;\n#endif\n}\n#endif //#ifndef TOLUA_DISABLE\n\n/* method: isFunctionSupported of class ProtocolAnalytics */\n#ifndef TOLUA_DISABLE_tolua_anysdk_ProtocolAnalytics_isFunctionSupported00\nstatic int tolua_anysdk_ProtocolAnalytics_isFunctionSupported00(lua_State* tolua_S)\n{\n#ifndef TOLUA_RELEASE\n tolua_Error tolua_err;\n if (\n     !tolua_isusertype(tolua_S,1,\"ProtocolAnalytics\",0,&tolua_err) ||\n     !tolua_iscppstring(tolua_S,2,0,&tolua_err) ||\n     !tolua_isnoobj(tolua_S,3,&tolua_err)\n )\n  goto tolua_lerror;\n else\n#endif\n {\n  ProtocolAnalytics* self = (ProtocolAnalytics*)  tolua_tousertype(tolua_S,1,0);\n  std::string functionName = ((std::string)  tolua_tocppstring(tolua_S,2,0));\n#ifndef TOLUA_RELEASE\n  if (!self) tolua_error(tolua_S,\"invalid 'self' in function 'isFunctionSupported'\", NULL);\n#endif\n  {\n   bool tolua_ret = (bool)  self->isFunctionSupported(functionName);\n   tolua_pushboolean(tolua_S,(bool)tolua_ret);\n  }\n }\n return 1;\n#ifndef TOLUA_RELEASE\n tolua_lerror:\n tolua_error(tolua_S,\"#ferror in function 'isFunctionSupported'.\",&tolua_err);\n return 0;\n#endif\n}\n#endif //#ifndef TOLUA_DISABLE\n\n/* method: setSessionContinueMillis of class  ProtocolAnalytics */\n#ifndef TOLUA_DISABLE_tolua_anysdk_ProtocolAnalytics_setSessionContinueMillis00\nstatic int tolua_anysdk_ProtocolAnalytics_setSessionContinueMillis00(lua_State* tolua_S)\n{\n#ifndef TOLUA_RELEASE\n tolua_Error tolua_err;\n if (\n     !tolua_isusertype(tolua_S,1,\"ProtocolAnalytics\",0,&tolua_err) ||\n     !tolua_isnumber(tolua_S,2,0,&tolua_err) ||\n     !tolua_isnoobj(tolua_S,3,&tolua_err)\n )\n  goto tolua_lerror;\n else\n#endif\n {\n  ProtocolAnalytics* self = (ProtocolAnalytics*)  tolua_tousertype(tolua_S,1,0);\n  long millis = ((long)  tolua_tonumber(tolua_S,2,0));\n#ifndef TOLUA_RELEASE\n  if (!self) tolua_error(tolua_S,\"invalid 'self' in function 'setSessionContinueMillis'\", NULL);\n#endif\n  {\n   self->setSessionContinueMillis(millis);\n  }\n }\n return 0;\n#ifndef TOLUA_RELEASE\n tolua_lerror:\n tolua_error(tolua_S,\"#ferror in function 'setSessionContinueMillis'.\",&tolua_err);\n return 0;\n#endif\n}\n#endif //#ifndef TOLUA_DISABLE\n\n/* method: logError of class  ProtocolAnalytics */\n#ifndef TOLUA_DISABLE_tolua_anysdk_ProtocolAnalytics_logError00\nstatic int tolua_anysdk_ProtocolAnalytics_logError00(lua_State* tolua_S)\n{\n#ifndef TOLUA_RELEASE\n tolua_Error tolua_err;\n if (\n     !tolua_isusertype(tolua_S,1,\"ProtocolAnalytics\",0,&tolua_err) ||\n     !tolua_isstring(tolua_S,2,0,&tolua_err) ||\n     !tolua_isstring(tolua_S,3,0,&tolua_err) ||\n     !tolua_isnoobj(tolua_S,4,&tolua_err)\n )\n  goto tolua_lerror;\n else\n#endif\n {\n  ProtocolAnalytics* self = (ProtocolAnalytics*)  tolua_tousertype(tolua_S,1,0);\n  const char* errorId = ((const char*)  tolua_tostring(tolua_S,2,0));\n  const char* message = ((const char*)  tolua_tostring(tolua_S,3,0));\n#ifndef TOLUA_RELEASE\n  if (!self) tolua_error(tolua_S,\"invalid 'self' in function 'logError'\", NULL);\n#endif\n  {\n   self->logError(errorId,message);\n  }\n }\n return 0;\n#ifndef TOLUA_RELEASE\n tolua_lerror:\n tolua_error(tolua_S,\"#ferror in function 'logError'.\",&tolua_err);\n return 0;\n#endif\n}\n#endif //#ifndef TOLUA_DISABLE\n\n/* method: logTimedEventBegin of class  ProtocolAnalytics */\n#ifndef TOLUA_DISABLE_tolua_anysdk_ProtocolAnalytics_logTimedEventBegin00\nstatic int tolua_anysdk_ProtocolAnalytics_logTimedEventBegin00(lua_State* tolua_S)\n{\n#ifndef TOLUA_RELEASE\n tolua_Error tolua_err;\n if (\n     !tolua_isusertype(tolua_S,1,\"ProtocolAnalytics\",0,&tolua_err) ||\n     !tolua_isstring(tolua_S,2,0,&tolua_err) ||\n     !tolua_isnoobj(tolua_S,3,&tolua_err)\n )\n  goto tolua_lerror;\n else\n#endif\n {\n  ProtocolAnalytics* self = (ProtocolAnalytics*)  tolua_tousertype(tolua_S,1,0);\n  const char* eventId = ((const char*)  tolua_tostring(tolua_S,2,0));\n#ifndef TOLUA_RELEASE\n  if (!self) tolua_error(tolua_S,\"invalid 'self' in function 'logTimedEventBegin'\", NULL);\n#endif\n  {\n   self->logTimedEventBegin(eventId);\n  }\n }\n return 0;\n#ifndef TOLUA_RELEASE\n tolua_lerror:\n tolua_error(tolua_S,\"#ferror in function 'logTimedEventBegin'.\",&tolua_err);\n return 0;\n#endif\n}\n#endif //#ifndef TOLUA_DISABLE\n\n/* method: logTimedEventEnd of class  ProtocolAnalytics */\n#ifndef TOLUA_DISABLE_tolua_anysdk_ProtocolAnalytics_logTimedEventEnd00\nstatic int tolua_anysdk_ProtocolAnalytics_logTimedEventEnd00(lua_State* tolua_S)\n{\n#ifndef TOLUA_RELEASE\n tolua_Error tolua_err;\n if (\n     !tolua_isusertype(tolua_S,1,\"ProtocolAnalytics\",0,&tolua_err) ||\n     !tolua_isstring(tolua_S,2,0,&tolua_err) ||\n     !tolua_isnoobj(tolua_S,3,&tolua_err)\n )\n  goto tolua_lerror;\n else\n#endif\n {\n  ProtocolAnalytics* self = (ProtocolAnalytics*)  tolua_tousertype(tolua_S,1,0);\n  const char* eventId = ((const char*)  tolua_tostring(tolua_S,2,0));\n#ifndef TOLUA_RELEASE\n  if (!self) tolua_error(tolua_S,\"invalid 'self' in function 'logTimedEventEnd'\", NULL);\n#endif\n  {\n   self->logTimedEventEnd(eventId);\n  }\n }\n return 0;\n#ifndef TOLUA_RELEASE\n tolua_lerror:\n tolua_error(tolua_S,\"#ferror in function 'logTimedEventEnd'.\",&tolua_err);\n return 0;\n#endif\n}\n#endif //#ifndef TOLUA_DISABLE\n\n/* method: setCaptureUncaughtException of class  ProtocolAnalytics */\n#ifndef TOLUA_DISABLE_tolua_anysdk_ProtocolAnalytics_setCaptureUncaughtException00\nstatic int tolua_anysdk_ProtocolAnalytics_setCaptureUncaughtException00(lua_State* tolua_S)\n{\n#ifndef TOLUA_RELEASE\n tolua_Error tolua_err;\n if (\n     !tolua_isusertype(tolua_S,1,\"ProtocolAnalytics\",0,&tolua_err) ||\n     !tolua_isboolean(tolua_S,2,0,&tolua_err) ||\n     !tolua_isnoobj(tolua_S,3,&tolua_err)\n )\n  goto tolua_lerror;\n else\n#endif\n {\n  ProtocolAnalytics* self = (ProtocolAnalytics*)  tolua_tousertype(tolua_S,1,0);\n  bool enabled = ((bool)  tolua_toboolean(tolua_S,2,0));\n#ifndef TOLUA_RELEASE\n  if (!self) tolua_error(tolua_S,\"invalid 'self' in function 'setCaptureUncaughtException'\", NULL);\n#endif\n  {\n   self->setCaptureUncaughtException(enabled);\n  }\n }\n return 0;\n#ifndef TOLUA_RELEASE\n tolua_lerror:\n tolua_error(tolua_S,\"#ferror in function 'setCaptureUncaughtException'.\",&tolua_err);\n return 0;\n#endif\n}\n#endif //#ifndef TOLUA_DISABLE\n\n/* method: getOrderId of class  ProtocolIAP */\n#ifndef TOLUA_DISABLE_tolua_anysdk_ProtocolIAP_getOrderId00\nstatic int tolua_anysdk_ProtocolIAP_getOrderId00(lua_State* tolua_S)\n{\n#ifndef TOLUA_RELEASE\n tolua_Error tolua_err;\n if (\n     !tolua_isusertype(tolua_S,1,\"ProtocolIAP\",0,&tolua_err) ||\n     !tolua_isnoobj(tolua_S,2,&tolua_err)\n )\n  goto tolua_lerror;\n else\n#endif\n {\n  ProtocolIAP* self = (ProtocolIAP*)  tolua_tousertype(tolua_S,1,0);\n#ifndef TOLUA_RELEASE\n  if (!self) tolua_error(tolua_S,\"invalid 'self' in function 'getOrderId'\", NULL);\n#endif\n  {\n   std::string tolua_ret = (std::string)  self->getOrderId();\n   tolua_pushcppstring(tolua_S,(const char*)tolua_ret);\n  }\n }\n return 1;\n#ifndef TOLUA_RELEASE\n tolua_lerror:\n tolua_error(tolua_S,\"#ferror in function 'getOrderId'.\",&tolua_err);\n return 0;\n#endif\n}\n#endif //#ifndef TOLUA_DISABLE\n\n/* method: getPluginId of class  ProtocolIAP */\n#ifndef TOLUA_DISABLE_tolua_anysdk_ProtocolIAP_getPluginId00\nstatic int tolua_anysdk_ProtocolIAP_getPluginId00(lua_State* tolua_S)\n{\n#ifndef TOLUA_RELEASE\n tolua_Error tolua_err;\n if (\n     !tolua_isusertype(tolua_S,1,\"ProtocolIAP\",0,&tolua_err) ||\n     !tolua_isnoobj(tolua_S,2,&tolua_err)\n )\n  goto tolua_lerror;\n else\n#endif\n {\n  ProtocolIAP* self = (ProtocolIAP*)  tolua_tousertype(tolua_S,1,0);\n#ifndef TOLUA_RELEASE\n  if (!self) tolua_error(tolua_S,\"invalid 'self' in function 'getPluginId'\", NULL);\n#endif\n  {\n   std::string tolua_ret = (std::string)  self->getPluginId();\n   tolua_pushcppstring(tolua_S,(const char*)tolua_ret);\n  }\n }\n return 1;\n#ifndef TOLUA_RELEASE\n tolua_lerror:\n tolua_error(tolua_S,\"#ferror in function 'getPluginId'.\",&tolua_err);\n return 0;\n#endif\n}\n#endif //#ifndef TOLUA_DISABLE\n\n/* method: resetPayState of class  ProtocolIAP */\n#ifndef TOLUA_DISABLE_tolua_anysdk_ProtocolIAP_resetPayState00\nstatic int tolua_anysdk_ProtocolIAP_resetPayState00(lua_State* tolua_S)\n{\n#ifndef TOLUA_RELEASE\n tolua_Error tolua_err;\n if (\n     !tolua_isusertable(tolua_S,1,\"ProtocolIAP\",0,&tolua_err) ||\n     !tolua_isnoobj(tolua_S,2,&tolua_err)\n )\n  goto tolua_lerror;\n else\n#endif\n {\n  {\n   ProtocolIAP::resetPayState();\n  }\n }\n return 0;\n#ifndef TOLUA_RELEASE\n tolua_lerror:\n tolua_error(tolua_S,\"#ferror in function 'resetPayState'.\",&tolua_err);\n return 0;\n#endif\n}\n#endif //#ifndef TOLUA_DISABLE\n\n/* method: getCurrentType of class  PluginParam */\n#ifndef TOLUA_DISABLE_tolua_anysdk_PluginParam_getCurrentType00\nstatic int tolua_anysdk_PluginParam_getCurrentType00(lua_State* tolua_S)\n{\n#ifndef TOLUA_RELEASE\n tolua_Error tolua_err;\n if (\n     !tolua_isusertype(tolua_S,1,\"PluginParam\",0,&tolua_err) ||\n     !tolua_isnoobj(tolua_S,2,&tolua_err)\n )\n  goto tolua_lerror;\n else\n#endif\n {\n  PluginParam* self = (PluginParam*)  tolua_tousertype(tolua_S,1,0);\n#ifndef TOLUA_RELEASE\n  if (!self) tolua_error(tolua_S,\"invalid 'self' in function 'getCurrentType'\", NULL);\n#endif\n  {\n   int tolua_ret = (int)  self->getIntValue();\n   tolua_pushnumber(tolua_S,(lua_Number)tolua_ret);\n  }\n }\n return 1;\n#ifndef TOLUA_RELEASE\n tolua_lerror:\n tolua_error(tolua_S,\"#ferror in function 'getCurrentType'.\",&tolua_err);\n return 0;\n#endif\n}\n#endif //#ifndef TOLUA_DISABLE\n\n/* method: getIntValue of class  PluginParam */\n#ifndef TOLUA_DISABLE_tolua_anysdk_PluginParam_getIntValue00\nstatic int tolua_anysdk_PluginParam_getIntValue00(lua_State* tolua_S)\n{\n#ifndef TOLUA_RELEASE\n tolua_Error tolua_err;\n if (\n     !tolua_isusertype(tolua_S,1,\"PluginParam\",0,&tolua_err) ||\n     !tolua_isnoobj(tolua_S,2,&tolua_err)\n )\n  goto tolua_lerror;\n else\n#endif\n {\n  PluginParam* self = (PluginParam*)  tolua_tousertype(tolua_S,1,0);\n#ifndef TOLUA_RELEASE\n  if (!self) tolua_error(tolua_S,\"invalid 'self' in function 'getIntValue'\", NULL);\n#endif\n  {\n   int tolua_ret = (int)  self->getIntValue();\n   tolua_pushnumber(tolua_S,(lua_Number)tolua_ret);\n  }\n }\n return 1;\n#ifndef TOLUA_RELEASE\n tolua_lerror:\n tolua_error(tolua_S,\"#ferror in function 'getIntValue'.\",&tolua_err);\n return 0;\n#endif\n}\n#endif //#ifndef TOLUA_DISABLE\n\n/* method: getFloatValue of class  PluginParam */\n#ifndef TOLUA_DISABLE_tolua_anysdk_PluginParam_getFloatValue00\nstatic int tolua_anysdk_PluginParam_getFloatValue00(lua_State* tolua_S)\n{\n#ifndef TOLUA_RELEASE\n tolua_Error tolua_err;\n if (\n     !tolua_isusertype(tolua_S,1,\"PluginParam\",0,&tolua_err) ||\n     !tolua_isnoobj(tolua_S,2,&tolua_err)\n )\n  goto tolua_lerror;\n else\n#endif\n {\n  PluginParam* self = (PluginParam*)  tolua_tousertype(tolua_S,1,0);\n#ifndef TOLUA_RELEASE\n  if (!self) tolua_error(tolua_S,\"invalid 'self' in function 'getFloatValue'\", NULL);\n#endif\n  {\n   float tolua_ret = (float)  self->getFloatValue();\n   tolua_pushnumber(tolua_S,(lua_Number)tolua_ret);\n  }\n }\n return 1;\n#ifndef TOLUA_RELEASE\n tolua_lerror:\n tolua_error(tolua_S,\"#ferror in function 'getFloatValue'.\",&tolua_err);\n return 0;\n#endif\n}\n#endif //#ifndef TOLUA_DISABLE\n\n/* method: getBoolValue of class  PluginParam */\n#ifndef TOLUA_DISABLE_tolua_anysdk_PluginParam_getBoolValue00\nstatic int tolua_anysdk_PluginParam_getBoolValue00(lua_State* tolua_S)\n{\n#ifndef TOLUA_RELEASE\n tolua_Error tolua_err;\n if (\n     !tolua_isusertype(tolua_S,1,\"PluginParam\",0,&tolua_err) ||\n     !tolua_isnoobj(tolua_S,2,&tolua_err)\n )\n  goto tolua_lerror;\n else\n#endif\n {\n  PluginParam* self = (PluginParam*)  tolua_tousertype(tolua_S,1,0);\n#ifndef TOLUA_RELEASE\n  if (!self) tolua_error(tolua_S,\"invalid 'self' in function 'getBoolValue'\", NULL);\n#endif\n  {\n   bool tolua_ret = (bool)  self->getBoolValue();\n   tolua_pushboolean(tolua_S,(bool)tolua_ret);\n  }\n }\n return 1;\n#ifndef TOLUA_RELEASE\n tolua_lerror:\n tolua_error(tolua_S,\"#ferror in function 'getBoolValue'.\",&tolua_err);\n return 0;\n#endif\n}\n#endif //#ifndef TOLUA_DISABLE\n\n/* method: getStringValue of class  PluginParam */\n#ifndef TOLUA_DISABLE_tolua_anysdk_PluginParam_getStringValue00\nstatic int tolua_anysdk_PluginParam_getStringValue00(lua_State* tolua_S)\n{\n#ifndef TOLUA_RELEASE\n tolua_Error tolua_err;\n if (\n     !tolua_isusertype(tolua_S,1,\"PluginParam\",0,&tolua_err) ||\n     !tolua_isnoobj(tolua_S,2,&tolua_err)\n )\n  goto tolua_lerror;\n else\n#endif\n {\n  PluginParam* self = (PluginParam*)  tolua_tousertype(tolua_S,1,0);\n#ifndef TOLUA_RELEASE\n  if (!self) tolua_error(tolua_S,\"invalid 'self' in function 'getStringValue'\", NULL);\n#endif\n  {\n   const char* tolua_ret = (const char*)  self->getStringValue();\n   tolua_pushstring(tolua_S,(const char*)tolua_ret);\n  }\n }\n return 1;\n#ifndef TOLUA_RELEASE\n tolua_lerror:\n tolua_error(tolua_S,\"#ferror in function 'getStringValue'.\",&tolua_err);\n return 0;\n#endif\n}\n#endif //#ifndef TOLUA_DISABLE\n\n/* method: startPush of class  ProtocolPush */\n#ifndef TOLUA_DISABLE_tolua_anysdk_ProtocolPush_startPush00\nstatic int tolua_anysdk_ProtocolPush_startPush00(lua_State* tolua_S)\n{\n#ifndef TOLUA_RELEASE\n tolua_Error tolua_err;\n if (\n     !tolua_isusertype(tolua_S,1,\"ProtocolPush\",0,&tolua_err) ||\n     !tolua_isnoobj(tolua_S,2,&tolua_err)\n )\n  goto tolua_lerror;\n else\n#endif\n {\n  ProtocolPush* self = (ProtocolPush*)  tolua_tousertype(tolua_S,1,0);\n#ifndef TOLUA_RELEASE\n  if (!self) tolua_error(tolua_S,\"invalid 'self' in function 'startPush'\", NULL);\n#endif\n  {\n   self->startPush();\n  }\n }\n return 0;\n#ifndef TOLUA_RELEASE\n tolua_lerror:\n tolua_error(tolua_S,\"#ferror in function 'startPush'.\",&tolua_err);\n return 0;\n#endif\n}\n#endif //#ifndef TOLUA_DISABLE\n\n/* method: closePush of class  ProtocolPush */\n#ifndef TOLUA_DISABLE_tolua_anysdk_ProtocolPush_closePush00\nstatic int tolua_anysdk_ProtocolPush_closePush00(lua_State* tolua_S)\n{\n#ifndef TOLUA_RELEASE\n tolua_Error tolua_err;\n if (\n     !tolua_isusertype(tolua_S,1,\"ProtocolPush\",0,&tolua_err) ||\n     !tolua_isnoobj(tolua_S,2,&tolua_err)\n )\n  goto tolua_lerror;\n else\n#endif\n {\n  ProtocolPush* self = (ProtocolPush*)  tolua_tousertype(tolua_S,1,0);\n#ifndef TOLUA_RELEASE\n  if (!self) tolua_error(tolua_S,\"invalid 'self' in function 'closePush'\", NULL);\n#endif\n  {\n   self->closePush();\n  }\n }\n return 0;\n#ifndef TOLUA_RELEASE\n tolua_lerror:\n tolua_error(tolua_S,\"#ferror in function 'closePush'.\",&tolua_err);\n return 0;\n#endif\n}\n#endif //#ifndef TOLUA_DISABLE\n\n/* method: setAlias of class  ProtocolPush */\n#ifndef TOLUA_DISABLE_tolua_anysdk_ProtocolPush_setAlias00\nstatic int tolua_anysdk_ProtocolPush_setAlias00(lua_State* tolua_S)\n{\n#ifndef TOLUA_RELEASE\n tolua_Error tolua_err;\n if (\n     !tolua_isusertype(tolua_S,1,\"ProtocolPush\",0,&tolua_err) ||\n     !tolua_iscppstring(tolua_S,2,0,&tolua_err) ||\n     !tolua_isnoobj(tolua_S,3,&tolua_err)\n )\n  goto tolua_lerror;\n else\n#endif\n {\n  ProtocolPush* self = (ProtocolPush*)  tolua_tousertype(tolua_S,1,0);\n  string alias = ((string)  tolua_tocppstring(tolua_S,2,0));\n#ifndef TOLUA_RELEASE\n  if (!self) tolua_error(tolua_S,\"invalid 'self' in function 'setAlias'\", NULL);\n#endif\n  {\n   self->setAlias(alias);\n  }\n }\n return 0;\n#ifndef TOLUA_RELEASE\n tolua_lerror:\n tolua_error(tolua_S,\"#ferror in function 'setAlias'.\",&tolua_err);\n return 0;\n#endif\n}\n#endif //#ifndef TOLUA_DISABLE\n\n/* method: delAlias of class  ProtocolPush */\n#ifndef TOLUA_DISABLE_tolua_anysdk_ProtocolPush_delAlias00\nstatic int tolua_anysdk_ProtocolPush_delAlias00(lua_State* tolua_S)\n{\n#ifndef TOLUA_RELEASE\n tolua_Error tolua_err;\n if (\n     !tolua_isusertype(tolua_S,1,\"ProtocolPush\",0,&tolua_err) ||\n     !tolua_iscppstring(tolua_S,2,0,&tolua_err) ||\n     !tolua_isnoobj(tolua_S,3,&tolua_err)\n )\n  goto tolua_lerror;\n else\n#endif\n {\n  ProtocolPush* self = (ProtocolPush*)  tolua_tousertype(tolua_S,1,0);\n  string alias = ((string)  tolua_tocppstring(tolua_S,2,0));\n#ifndef TOLUA_RELEASE\n  if (!self) tolua_error(tolua_S,\"invalid 'self' in function 'delAlias'\", NULL);\n#endif\n  {\n   self->delAlias(alias);\n  }\n }\n return 0;\n#ifndef TOLUA_RELEASE\n tolua_lerror:\n tolua_error(tolua_S,\"#ferror in function 'delAlias'.\",&tolua_err);\n return 0;\n#endif\n}\n#endif //#ifndef TOLUA_DISABLE\n\n/* method: signIn of class  ProtocolSocial */\n#ifndef TOLUA_DISABLE_tolua_anysdk_ProtocolSocial_signIn00\nstatic int tolua_anysdk_ProtocolSocial_signIn00(lua_State* tolua_S)\n{\n#ifndef TOLUA_RELEASE\n tolua_Error tolua_err;\n if (\n     !tolua_isusertype(tolua_S,1,\"ProtocolSocial\",0,&tolua_err) ||\n     !tolua_isnoobj(tolua_S,2,&tolua_err)\n )\n  goto tolua_lerror;\n else\n#endif\n {\n  ProtocolSocial* self = (ProtocolSocial*)  tolua_tousertype(tolua_S,1,0);\n#ifndef TOLUA_RELEASE\n  if (!self) tolua_error(tolua_S,\"invalid 'self' in function 'signIn'\", NULL);\n#endif\n  {\n   self->signIn();\n  }\n }\n return 0;\n#ifndef TOLUA_RELEASE\n tolua_lerror:\n tolua_error(tolua_S,\"#ferror in function 'signIn'.\",&tolua_err);\n return 0;\n#endif\n}\n#endif //#ifndef TOLUA_DISABLE\n\n/* method: signOut of class  ProtocolSocial */\n#ifndef TOLUA_DISABLE_tolua_anysdk_ProtocolSocial_signOut00\nstatic int tolua_anysdk_ProtocolSocial_signOut00(lua_State* tolua_S)\n{\n#ifndef TOLUA_RELEASE\n tolua_Error tolua_err;\n if (\n     !tolua_isusertype(tolua_S,1,\"ProtocolSocial\",0,&tolua_err) ||\n     !tolua_isnoobj(tolua_S,2,&tolua_err)\n )\n  goto tolua_lerror;\n else\n#endif\n {\n  ProtocolSocial* self = (ProtocolSocial*)  tolua_tousertype(tolua_S,1,0);\n#ifndef TOLUA_RELEASE\n  if (!self) tolua_error(tolua_S,\"invalid 'self' in function 'signOut'\", NULL);\n#endif\n  {\n   self->signOut();\n  }\n }\n return 0;\n#ifndef TOLUA_RELEASE\n tolua_lerror:\n tolua_error(tolua_S,\"#ferror in function 'signOut'.\",&tolua_err);\n return 0;\n#endif\n}\n#endif //#ifndef TOLUA_DISABLE\n\n/* method: submitScore of class  ProtocolSocial */\n#ifndef TOLUA_DISABLE_tolua_anysdk_ProtocolSocial_submitScore00\nstatic int tolua_anysdk_ProtocolSocial_submitScore00(lua_State* tolua_S)\n{\n#ifndef TOLUA_RELEASE\n tolua_Error tolua_err;\n if (\n     !tolua_isusertype(tolua_S,1,\"ProtocolSocial\",0,&tolua_err) ||\n     !tolua_isstring(tolua_S,2,0,&tolua_err) ||\n     !tolua_isnumber(tolua_S,3,0,&tolua_err) ||\n     !tolua_isnoobj(tolua_S,4,&tolua_err)\n )\n  goto tolua_lerror;\n else\n#endif\n {\n  ProtocolSocial* self = (ProtocolSocial*)  tolua_tousertype(tolua_S,1,0);\n  const char* leadboardID = ((const char*)  tolua_tostring(tolua_S,2,0));\n  long score = ((long)  tolua_tonumber(tolua_S,3,0));\n#ifndef TOLUA_RELEASE\n  if (!self) tolua_error(tolua_S,\"invalid 'self' in function 'submitScore'\", NULL);\n#endif\n  {\n   self->submitScore(leadboardID,score);\n  }\n }\n return 0;\n#ifndef TOLUA_RELEASE\n tolua_lerror:\n tolua_error(tolua_S,\"#ferror in function 'submitScore'.\",&tolua_err);\n return 0;\n#endif\n}\n#endif //#ifndef TOLUA_DISABLE\n\n/* method: showLeaderboard of class  ProtocolSocial */\n#ifndef TOLUA_DISABLE_tolua_anysdk_ProtocolSocial_showLeaderboard00\nstatic int tolua_anysdk_ProtocolSocial_showLeaderboard00(lua_State* tolua_S)\n{\n#ifndef TOLUA_RELEASE\n tolua_Error tolua_err;\n if (\n     !tolua_isusertype(tolua_S,1,\"ProtocolSocial\",0,&tolua_err) ||\n     !tolua_isstring(tolua_S,2,0,&tolua_err) ||\n     !tolua_isnoobj(tolua_S,3,&tolua_err)\n )\n  goto tolua_lerror;\n else\n#endif\n {\n  ProtocolSocial* self = (ProtocolSocial*)  tolua_tousertype(tolua_S,1,0);\n  const char* leaderboardID = ((const char*)  tolua_tostring(tolua_S,2,0));\n#ifndef TOLUA_RELEASE\n  if (!self) tolua_error(tolua_S,\"invalid 'self' in function 'showLeaderboard'\", NULL);\n#endif\n  {\n   self->showLeaderboard(leaderboardID);\n  }\n }\n return 0;\n#ifndef TOLUA_RELEASE\n tolua_lerror:\n tolua_error(tolua_S,\"#ferror in function 'showLeaderboard'.\",&tolua_err);\n return 0;\n#endif\n}\n#endif //#ifndef TOLUA_DISABLE\n\n/* method: showAchievements of class  ProtocolSocial */\n#ifndef TOLUA_DISABLE_tolua_anysdk_ProtocolSocial_showAchievements00\nstatic int tolua_anysdk_ProtocolSocial_showAchievements00(lua_State* tolua_S)\n{\n#ifndef TOLUA_RELEASE\n tolua_Error tolua_err;\n if (\n     !tolua_isusertype(tolua_S,1,\"ProtocolSocial\",0,&tolua_err) ||\n     !tolua_isnoobj(tolua_S,2,&tolua_err)\n )\n  goto tolua_lerror;\n else\n#endif\n {\n  ProtocolSocial* self = (ProtocolSocial*)  tolua_tousertype(tolua_S,1,0);\n#ifndef TOLUA_RELEASE\n  if (!self) tolua_error(tolua_S,\"invalid 'self' in function 'showAchievements'\", NULL);\n#endif\n  {\n   self->showAchievements();\n  }\n }\n return 0;\n#ifndef TOLUA_RELEASE\n tolua_lerror:\n tolua_error(tolua_S,\"#ferror in function 'showAchievements'.\",&tolua_err);\n return 0;\n#endif\n}\n#endif //#ifndef TOLUA_DISABLE\n\n/* method: login of class  ProtocolUser */\n#ifndef TOLUA_DISABLE_tolua_anysdk_ProtocolUser_login00\nstatic int tolua_anysdk_ProtocolUser_login00(lua_State* tolua_S)\n{\n#ifndef TOLUA_RELEASE\n tolua_Error tolua_err;\n if (\n     !tolua_isusertype(tolua_S,1,\"ProtocolUser\",0,&tolua_err) ||\n     !tolua_isnoobj(tolua_S,2,&tolua_err)\n )\n  goto tolua_lerror;\n else\n#endif\n {\n  ProtocolUser* self = (ProtocolUser*)  tolua_tousertype(tolua_S,1,0);\n#ifndef TOLUA_RELEASE\n  if (!self) tolua_error(tolua_S,\"invalid 'self' in function 'login'\", NULL);\n#endif\n  {\n   self->login();\n  }\n }\n return 0;\n#ifndef TOLUA_RELEASE\n tolua_lerror:\n tolua_error(tolua_S,\"#ferror in function 'login'.\",&tolua_err);\n return 0;\n#endif\n}\n#endif //#ifndef TOLUA_DISABLE\n\n/* method: login of class  ProtocolUser */\n#ifndef TOLUA_DISABLE_tolua_anysdk_ProtocolUser_login01\nstatic int tolua_anysdk_ProtocolUser_login01(lua_State* tolua_S)\n{\n tolua_Error tolua_err;\n if (\n     !tolua_isusertype(tolua_S,1,\"ProtocolUser\",0,&tolua_err) ||\n     !tolua_iscppstring(tolua_S,2,0,&tolua_err)\n )\n  goto tolua_lerror;\n else\n {\n  ProtocolUser* self = (ProtocolUser*)  tolua_tousertype(tolua_S,1,0);\n  std::string server_id = ((std::string)  tolua_tocppstring(tolua_S,2,0));\n  std::string server_ip = \"\";\n  if ( lua_type(tolua_S, 3) == LUA_TSTRING )\n  {\n    server_ip = ((std::string)  tolua_tocppstring(tolua_S,3,0));\n  }\n#ifndef TOLUA_RELEASE\n  if (!self) tolua_error(tolua_S,\"invalid 'self' in function 'login'\", NULL);\n#endif\n  {\n   self->login(server_id, server_ip);\n  }\n }\n return 0;\ntolua_lerror:\n return tolua_anysdk_ProtocolUser_login00(tolua_S);\n}\n#endif //#ifndef TOLUA_DISABLE\n\n/* method: isLogined of class  ProtocolUser */\n#ifndef TOLUA_DISABLE_tolua_anysdk_ProtocolUser_isLogined00\nstatic int tolua_anysdk_ProtocolUser_isLogined00(lua_State* tolua_S)\n{\n#ifndef TOLUA_RELEASE\n tolua_Error tolua_err;\n if (\n     !tolua_isusertype(tolua_S,1,\"ProtocolUser\",0,&tolua_err) ||\n     !tolua_isnoobj(tolua_S,2,&tolua_err)\n )\n  goto tolua_lerror;\n else\n#endif\n {\n  ProtocolUser* self = (ProtocolUser*)  tolua_tousertype(tolua_S,1,0);\n#ifndef TOLUA_RELEASE\n  if (!self) tolua_error(tolua_S,\"invalid 'self' in function 'isLogined'\", NULL);\n#endif\n  {\n   bool tolua_ret = (bool)  self->isLogined();\n   tolua_pushboolean(tolua_S,(bool)tolua_ret);\n  }\n }\n return 1;\n#ifndef TOLUA_RELEASE\n tolua_lerror:\n tolua_error(tolua_S,\"#ferror in function 'isLogined'.\",&tolua_err);\n return 0;\n#endif\n}\n#endif //#ifndef TOLUA_DISABLE\n\n/* method: getUserID of class  ProtocolUser */\n#ifndef TOLUA_DISABLE_tolua_anysdk_ProtocolUser_getUserID00\nstatic int tolua_anysdk_ProtocolUser_getUserID00(lua_State* tolua_S)\n{\n#ifndef TOLUA_RELEASE\n tolua_Error tolua_err;\n if (\n     !tolua_isusertype(tolua_S,1,\"ProtocolUser\",0,&tolua_err) ||\n     !tolua_isnoobj(tolua_S,2,&tolua_err)\n )\n  goto tolua_lerror;\n else\n#endif\n {\n  ProtocolUser* self = (ProtocolUser*)  tolua_tousertype(tolua_S,1,0);\n#ifndef TOLUA_RELEASE\n  if (!self) tolua_error(tolua_S,\"invalid 'self' in function 'getUserID'\", NULL);\n#endif\n  {\n   std::string tolua_ret = (std::string)  self->getUserID();\n   tolua_pushcppstring(tolua_S,(const char*)tolua_ret);\n  }\n }\n return 1;\n#ifndef TOLUA_RELEASE\n tolua_lerror:\n tolua_error(tolua_S,\"#ferror in function 'getUserID'.\",&tolua_err);\n return 0;\n#endif\n}\n#endif //#ifndef TOLUA_DISABLE\n\n/* method: isSupportFunction of class  ProtocolUser */\n#ifndef TOLUA_DISABLE_tolua_anysdk_ProtocolUser_isFunctionSupported00\nstatic int tolua_anysdk_ProtocolUser_isFunctionSupported00(lua_State* tolua_S)\n{\n#ifndef TOLUA_RELEASE\n tolua_Error tolua_err;\n if (\n     !tolua_isusertype(tolua_S,1,\"ProtocolUser\",0,&tolua_err) ||\n     !tolua_iscppstring(tolua_S,2,0,&tolua_err) ||\n     !tolua_isnoobj(tolua_S,3,&tolua_err)\n )\n  goto tolua_lerror;\n else\n#endif\n {\n  ProtocolUser* self = (ProtocolUser*)  tolua_tousertype(tolua_S,1,0);\n  std::string functionName = ((std::string)  tolua_tocppstring(tolua_S,2,0));\n#ifndef TOLUA_RELEASE\n  if (!self) tolua_error(tolua_S,\"invalid 'self' in function 'isFunctionSupported'\", NULL);\n#endif\n  {\n   bool tolua_ret = (bool)  self->isFunctionSupported(functionName);\n   tolua_pushboolean(tolua_S,(bool)tolua_ret);\n  }\n }\n return 1;\n#ifndef TOLUA_RELEASE\n tolua_lerror:\n tolua_error(tolua_S,\"#ferror in function 'isFunctionSupported'.\",&tolua_err);\n return 0;\n#endif\n}\n#endif //#ifndef TOLUA_DISABLE\n\n/* method: getPluginId of class  ProtocolUser */\n#ifndef TOLUA_DISABLE_tolua_anysdk_ProtocolUser_getPluginId00\nstatic int tolua_anysdk_ProtocolUser_getPluginId00(lua_State* tolua_S)\n{\n#ifndef TOLUA_RELEASE\n tolua_Error tolua_err;\n if (\n     !tolua_isusertype(tolua_S,1,\"ProtocolUser\",0,&tolua_err) ||\n     !tolua_isnoobj(tolua_S,2,&tolua_err)\n )\n  goto tolua_lerror;\n else\n#endif\n {\n  ProtocolUser* self = (ProtocolUser*)  tolua_tousertype(tolua_S,1,0);\n#ifndef TOLUA_RELEASE\n  if (!self) tolua_error(tolua_S,\"invalid 'self' in function 'getPluginId'\", NULL);\n#endif\n  {\n   std::string tolua_ret = (std::string)  self->getPluginId();\n   tolua_pushcppstring(tolua_S,(const char*)tolua_ret);\n  }\n }\n return 1;\n#ifndef TOLUA_RELEASE\n tolua_lerror:\n tolua_error(tolua_S,\"#ferror in function 'getPluginId'.\",&tolua_err);\n return 0;\n#endif\n}\n#endif //#ifndef TOLUA_DISABLE\n\n/* Open function */\nTOLUA_API int tolua_anysdk_open (lua_State* tolua_S)\n{\n tolua_open(tolua_S);\n tolua_reg_types(tolua_S);\n tolua_module(tolua_S,NULL,0);\n tolua_beginmodule(tolua_S,NULL);\n  #ifdef __cplusplus\n  tolua_cclass(tolua_S,\"AgentManager\",\"AgentManager\",\"\",tolua_collect_AgentManager);\n  #else\n  tolua_cclass(tolua_S,\"AgentManager\",\"AgentManager\",\"\",NULL);\n  #endif\n  tolua_beginmodule(tolua_S,\"AgentManager\");\n   tolua_function(tolua_S,\"delete\",tolua_anysdk_AgentManager_delete00);\n   tolua_function(tolua_S,\"getInstance\",tolua_anysdk_AgentManager_getInstance00);\n   tolua_function(tolua_S,\"endManager\",tolua_anysdk_AgentManager_endManager00);\n   tolua_function(tolua_S,\"init\",tolua_anysdk_AgentManager_init00);\n   tolua_function(tolua_S,\"loadALLPlugin\",tolua_anysdk_AgentManager_loadALLPlugin00);\n   tolua_function(tolua_S,\"unloadALLPlugin\",tolua_anysdk_AgentManager_unloadALLPlugin00);\n   tolua_function(tolua_S,\"getAnalyticsPlugin\",tolua_anysdk_AgentManager_getAnalyticsPlugin00);\n   tolua_function(tolua_S,\"getUserPlugin\",tolua_anysdk_AgentManager_getUserPlugin00);\n   tolua_function(tolua_S,\"getSharePlugin\",tolua_anysdk_AgentManager_getSharePlugin00);\n   tolua_function(tolua_S,\"getSocialPlugin\",tolua_anysdk_AgentManager_getSocialPlugin00);\n   tolua_function(tolua_S,\"getAdsPlugin\",tolua_anysdk_AgentManager_getAdsPlugin00);\n   tolua_function(tolua_S,\"getChannelId\",tolua_anysdk_AgentManager_getChannelId00);\n   tolua_function(tolua_S,\"getPushPlugin\",tolua_anysdk_AgentManager_getPushPlugin00);\n   tolua_function(tolua_S,\"getCustomParam\",tolua_anysdk_AgentManager_getCustomParam00);\n  tolua_endmodule(tolua_S);\n  #ifdef __cplusplus\n  tolua_cclass(tolua_S,\"PluginFactory\",\"PluginFactory\",\"\",tolua_collect_PluginFactory);\n  #else\n  tolua_cclass(tolua_S,\"PluginFactory\",\"PluginFactory\",\"\",NULL);\n  #endif\n  tolua_beginmodule(tolua_S,\"PluginFactory\");\n   tolua_function(tolua_S,\"delete\",tolua_anysdk_PluginFactory_delete00);\n   tolua_function(tolua_S,\"getInstance\",tolua_anysdk_PluginFactory_getInstance00);\n   tolua_function(tolua_S,\"purgeFactory\",tolua_anysdk_PluginFactory_purgeFactory00);\n  tolua_endmodule(tolua_S);\n  #ifdef __cplusplus\n  tolua_cclass(tolua_S,\"PluginManager\",\"PluginManager\",\"\",tolua_collect_PluginManager);\n  #else\n  tolua_cclass(tolua_S,\"PluginManager\",\"PluginManager\",\"\",NULL);\n  #endif\n  tolua_beginmodule(tolua_S,\"PluginManager\");\n   tolua_function(tolua_S,\"delete\",tolua_anysdk_PluginManager_delete00);\n   tolua_function(tolua_S,\"getInstance\",tolua_anysdk_PluginManager_getInstance00);\n   tolua_function(tolua_S,\"endManager\",tolua_anysdk_PluginManager_endManager00);\n   tolua_function(tolua_S,\"loadPlugin\",tolua_anysdk_PluginManager_loadPlugin00);\n   tolua_function(tolua_S,\"unloadPlugin\",tolua_anysdk_PluginManager_unloadPlugin00);\n  tolua_endmodule(tolua_S);\n  tolua_cclass(tolua_S,\"PluginProtocol\",\"PluginProtocol\",\"\",NULL);\n  tolua_beginmodule(tolua_S,\"PluginProtocol\");\n   tolua_function(tolua_S,\"setPluginName\",tolua_anysdk_PluginProtocol_setPluginName00);\n   tolua_function(tolua_S,\"getPluginName\",tolua_anysdk_PluginProtocol_getPluginName00);\n   tolua_function(tolua_S,\"getPluginVersion\",tolua_anysdk_PluginProtocol_getPluginVersion00);\n   tolua_function(tolua_S,\"getSDKVersion\",tolua_anysdk_PluginProtocol_getSDKVersion00);\n   tolua_function(tolua_S,\"setDebugMode\",tolua_anysdk_PluginProtocol_setDebugMode00);\n  tolua_endmodule(tolua_S);\n  tolua_cclass(tolua_S,\"ProtocolAds\",\"ProtocolAds\",\"PluginProtocol\",NULL);\n  tolua_beginmodule(tolua_S,\"ProtocolAds\");\n   tolua_function(tolua_S,\"showAds\",tolua_anysdk_ProtocolAds_showAds00);\n   tolua_function(tolua_S,\"hideAds\",tolua_anysdk_ProtocolAds_hideAds00);\n   tolua_function(tolua_S,\"queryPoints\",tolua_anysdk_ProtocolAds_queryPoints00);\n   tolua_function(tolua_S,\"spendPoints\",tolua_anysdk_ProtocolAds_spendPoints00);\n   tolua_function(tolua_S,\"isAdTypeSupported\",tolua_anysdk_ProtocolAds_isAdTypeSupported00);\n  tolua_endmodule(tolua_S);\n  tolua_cclass(tolua_S,\"ProtocolAnalytics\",\"ProtocolAnalytics\",\"PluginProtocol\",NULL);\n  tolua_beginmodule(tolua_S,\"ProtocolAnalytics\");\n   tolua_function(tolua_S,\"startSession\",tolua_anysdk_ProtocolAnalytics_startSession00);\n   tolua_function(tolua_S,\"stopSession\",tolua_anysdk_ProtocolAnalytics_stopSession00);\n   tolua_function(tolua_S,\"isFunctionSupported\",tolua_anysdk_ProtocolAnalytics_isFunctionSupported00);\n   tolua_function(tolua_S,\"setSessionContinueMillis\",tolua_anysdk_ProtocolAnalytics_setSessionContinueMillis00);\n   tolua_function(tolua_S,\"logError\",tolua_anysdk_ProtocolAnalytics_logError00);\n   tolua_function(tolua_S,\"logTimedEventBegin\",tolua_anysdk_ProtocolAnalytics_logTimedEventBegin00);\n   tolua_function(tolua_S,\"logTimedEventEnd\",tolua_anysdk_ProtocolAnalytics_logTimedEventEnd00);\n   tolua_function(tolua_S,\"setCaptureUncaughtException\",tolua_anysdk_ProtocolAnalytics_setCaptureUncaughtException00);\n  tolua_endmodule(tolua_S);\n  tolua_cclass(tolua_S,\"ProtocolIAP\",\"ProtocolIAP\",\"PluginProtocol\",NULL);\n  tolua_beginmodule(tolua_S,\"ProtocolIAP\");\n   tolua_function(tolua_S,\"getOrderId\",tolua_anysdk_ProtocolIAP_getOrderId00);\n   tolua_function(tolua_S,\"getPluginId\",tolua_anysdk_ProtocolIAP_getPluginId00);\n   tolua_function(tolua_S,\"resetPayState\",tolua_anysdk_ProtocolIAP_resetPayState00);\n  tolua_endmodule(tolua_S);\n  tolua_cclass(tolua_S,\"PluginParam\",\"PluginParam\",\"\",NULL);\n  tolua_beginmodule(tolua_S,\"PluginParam\");\n   tolua_function(tolua_S,\"getCurrentType\",tolua_anysdk_PluginParam_getCurrentType00);\n   tolua_function(tolua_S,\"getIntValue\",tolua_anysdk_PluginParam_getIntValue00);\n   tolua_function(tolua_S,\"getFloatValue\",tolua_anysdk_PluginParam_getFloatValue00);\n   tolua_function(tolua_S,\"getBoolValue\",tolua_anysdk_PluginParam_getBoolValue00);\n   tolua_function(tolua_S,\"getStringValue\",tolua_anysdk_PluginParam_getStringValue00);\n  tolua_endmodule(tolua_S);\n  tolua_cclass(tolua_S,\"ProtocolPush\",\"ProtocolPush\",\"PluginProtocol\",NULL);\n  tolua_beginmodule(tolua_S,\"ProtocolPush\");\n   tolua_function(tolua_S,\"startPush\",tolua_anysdk_ProtocolPush_startPush00);\n   tolua_function(tolua_S,\"closePush\",tolua_anysdk_ProtocolPush_closePush00);\n   tolua_function(tolua_S,\"setAlias\",tolua_anysdk_ProtocolPush_setAlias00);\n   tolua_function(tolua_S,\"delAlias\",tolua_anysdk_ProtocolPush_delAlias00);\n  tolua_endmodule(tolua_S);\n  tolua_cclass(tolua_S,\"ProtocolSocial\",\"ProtocolSocial\",\"PluginProtocol\",NULL);\n  tolua_beginmodule(tolua_S,\"ProtocolSocial\");\n   tolua_function(tolua_S,\"signIn\",tolua_anysdk_ProtocolSocial_signIn00);\n   tolua_function(tolua_S,\"signOut\",tolua_anysdk_ProtocolSocial_signOut00);\n   tolua_function(tolua_S,\"submitScore\",tolua_anysdk_ProtocolSocial_submitScore00);\n   tolua_function(tolua_S,\"showLeaderboard\",tolua_anysdk_ProtocolSocial_showLeaderboard00);\n   tolua_function(tolua_S,\"showAchievements\",tolua_anysdk_ProtocolSocial_showAchievements00);\n  tolua_endmodule(tolua_S);\n  tolua_cclass(tolua_S,\"ProtocolUser\",\"ProtocolUser\",\"PluginProtocol\",NULL);\n  tolua_beginmodule(tolua_S,\"ProtocolUser\");\n   tolua_function(tolua_S,\"login\",tolua_anysdk_ProtocolUser_login00);\n   tolua_function(tolua_S,\"login\",tolua_anysdk_ProtocolUser_login01);\n   tolua_function(tolua_S,\"isLogined\",tolua_anysdk_ProtocolUser_isLogined00);\n   tolua_function(tolua_S,\"getUserID\",tolua_anysdk_ProtocolUser_getUserID00);\n   tolua_function(tolua_S,\"isFunctionSupported\",tolua_anysdk_ProtocolUser_isFunctionSupported00);\n   tolua_function(tolua_S,\"getPluginId\",tolua_anysdk_ProtocolUser_getPluginId00);\n  tolua_endmodule(tolua_S);\n tolua_endmodule(tolua_S);\n return 1;\n}\n\n\n#if defined(LUA_VERSION_NUM) && LUA_VERSION_NUM >= 501\n TOLUA_API int luaopen_anysdk (lua_State* tolua_S) {\n return tolua_anysdk_open(tolua_S);\n};\n#endif\n\n"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/Classes/anysdkbindings.h",
    "content": "#ifndef __LUA_ANYSDK_BINDINGS_H_\n#define __LUA_ANYSDK_BINDINGS_H_\n\n#ifdef __cplusplus\nextern \"C\" {\n#endif\n#include \"tolua++.h\"\n#ifdef __cplusplus\n}\n#endif\n\nTOLUA_API int tolua_anysdk_open(lua_State* tolua_S);\n\n#endif // __LUACOCOSTUDIO_H_\n"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/Classes/lua_module_register.h",
    "content": "#ifndef __LUA_TEMPLATE_RUNTIME_FRAMEWORKS_RUNTIME_SRC_CLASSES_LUA_MODULE_REGISTER_H__\n#define __LUA_TEMPLATE_RUNTIME_FRAMEWORKS_RUNTIME_SRC_CLASSES_LUA_MODULE_REGISTER_H__\n\n#include \"cocosdenshion/lua_cocos2dx_cocosdenshion_manual.h\"\n#include \"network/lua_cocos2dx_network_manual.h\"\n#include \"cocosbuilder/lua_cocos2dx_cocosbuilder_manual.h\"\n#include \"cocostudio/lua_cocos2dx_coco_studio_manual.hpp\"\n#include \"extension/lua_cocos2dx_extension_manual.h\"\n#include \"ui/lua_cocos2dx_ui_manual.hpp\"\n#include \"spine/lua_cocos2dx_spine_manual.hpp\"\n#include \"3d/lua_cocos2dx_3d_manual.h\"\n#include \"audioengine/lua_cocos2dx_audioengine_manual.h\"\n#include \"lua/quick/lua_cocos2dx_quick_manual.hpp\"\n\nint lua_module_register(lua_State* L)\n{\n    //Dont' change the module register order unless you know what your are doing\n    register_cocosdenshion_module(L);\n    register_network_module(L);\n#if CC_USE_CCBUILDER\n    register_cocosbuilder_module(L);\n#endif\n#if CC_USE_CCSTUDIO\n    register_cocostudio_module(L);\n#endif\n    register_ui_moudle(L);\n    register_extension_module(L);\n#if CC_USE_SPINE\n    register_spine_module(L);\n#endif\n#if CC_USE_3D\n    register_cocos3d_module(L);\n#endif\n    register_audioengine_module(L);\n    return 1;\n}\n\n#endif  // __LUA_TEMPLATE_RUNTIME_FRAMEWORKS_RUNTIME_SRC_CLASSES_LUA_MODULE_REGISTER_H__\n\n"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/Classes/runtime/ConnectWaitLayer.cpp",
    "content": "/****************************************************************************\nCopyright (c) 2013 cocos2d-x.org\n\nhttp://www.cocos2d-x.org\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in\nall copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\nTHE SOFTWARE.\n****************************************************************************/\n\n#include \"ConnectWaitLayer.h\"\n#include \"Runtime.h\"\n#include \"FileServer.h\"\n#include \"ConfigParser.h\"\n#include \"VisibleRect.h\"\n#include \"ResData.h\"\n\nusing namespace cocos2d;\n\nConnectWaitLayer::ConnectWaitLayer()\n{\n    int designWidth = 1280;\n    int designHeight = 800;\n    _imagebg = new Image();\n    \n    if (ConfigParser::getInstance()->isLanscape())\n    {\n        _imagebg->initWithImageData(__landscapePngData, sizeof(__landscapePngData));\n        Director::getInstance()->getOpenGLView()->setDesignResolutionSize(designWidth, designHeight, ResolutionPolicy::EXACT_FIT);\n    } else\n    {\n        _imagebg->initWithImageData(__portraitPngData, sizeof(__portraitPngData));\n        Director::getInstance()->getOpenGLView()->setDesignResolutionSize(designHeight, designWidth, ResolutionPolicy::FIXED_HEIGHT);\n    }\n    Texture2D* texturebg = Director::getInstance()->getTextureCache()->addImage(_imagebg, \"play_background\");\n    auto background = Sprite::createWithTexture(texturebg);\n    background->setAnchorPoint(Vec2(0.5, 0.5));\n    background->setPosition(VisibleRect::center());\n    addChild(background, 9000);\n\n    // variable of below is\"play\" button position.\n    int portraitX = 400;\n    int portraitY = 500;\n    int lanscaptX = 902;\n    int lanscaptY = 400;\n    _imageplay = new Image();\n    _imageplay->initWithImageData(__playEnablePngData, sizeof(__playEnablePngData));\n    Texture2D* textureplay = Director::getInstance()->getTextureCache()->addImage(_imageplay, \"play_enable\");\n    auto playSprite = Sprite::createWithTexture(textureplay);\n    addChild(playSprite, 9999);\n\n    _imageShine = new Image();\n    _imageShine->initWithImageData(__shinePngData, sizeof(__shinePngData));\n    Texture2D* textureShine = Director::getInstance()->getTextureCache()->addImage(_imageShine, \"shine\");\n    auto shineSprite = Sprite::createWithTexture(textureShine);\n    shineSprite->setOpacity(0);\n    Vector<FiniteTimeAction*> arrayOfActions;\n    arrayOfActions.pushBack(DelayTime::create(0.4f));\n    arrayOfActions.pushBack(FadeTo::create(0.8f, 200));\n    arrayOfActions.pushBack(FadeTo::create(0.8f, 255));\n    arrayOfActions.pushBack(FadeTo::create(0.8f, 200));\n    arrayOfActions.pushBack(FadeTo::create(0.8f, 0));\n    arrayOfActions.pushBack(DelayTime::create(0.4f));\n    shineSprite->runAction(RepeatForever::create(Sequence::create(arrayOfActions)));\n    addChild(shineSprite, 9998);\n\n    std::string strip = getIPAddress();\n    char szIPAddress[64] = {0};\n    sprintf(szIPAddress, \"IP: %s\", strip.c_str());\n    auto IPlabel = Label::createWithSystemFont(szIPAddress, \"\", 72);\n    IPlabel->setAnchorPoint(Vec2(0, 0));\n    int spaceSizex = 72;\n    int spaceSizey = 200;\n    IPlabel->setPosition(Point(VisibleRect::leftTop().x + spaceSizex, VisibleRect::top().y - spaceSizey));\n    addChild(IPlabel, 9001);\n\n    std::string transferTip = \"waiting for file transfer ...\";\n    if (CC_PLATFORM_WIN32 == CC_TARGET_PLATFORM || CC_PLATFORM_MAC == CC_TARGET_PLATFORM)\n    {\n        transferTip = \"waiting for debugger to connect ...\";\n    }\n\n    char szVersion[256] = {0};\n    sprintf(szVersion, \"runtimeVersion:%s \\nengineVersion:%s\", getRuntimeVersion(), cocos2dVersion());\n    Label* verLable = Label::createWithSystemFont(szVersion, \"\", 24);\n    verLable->setAnchorPoint(Vec2(0, 0));\n    int width = verLable->getBoundingBox().size.width;\n    verLable->setPosition(Point(VisibleRect::right().x - width, VisibleRect::rightBottom().y));\n    verLable->setAlignment(TextHAlignment::LEFT);\n    addChild(verLable, 9002);\n    _labelUploadFile = Label::createWithSystemFont(transferTip, \"\", 36);\n    _labelUploadFile->setAnchorPoint(Vec2(0, 0));\n    _labelUploadFile->setPosition(Point(VisibleRect::leftTop().x + spaceSizex, IPlabel->getPositionY()- spaceSizex));\n    _labelUploadFile->setAlignment(TextHAlignment::LEFT);\n    addChild(_labelUploadFile, 9003);\n\n    if (ConfigParser::getInstance()->isLanscape())\n    {\n        playSprite->setPosition(lanscaptX, lanscaptY);\n        shineSprite->setPosition(lanscaptX, lanscaptY);\n    }\n    else\n    {\n        playSprite->setPosition(portraitX, portraitY);\n        shineSprite->setPosition(portraitX, portraitY);\n    }\n\n    auto listener = EventListenerTouchOneByOne::create();\n    listener->onTouchBegan = [](Touch* touch, Event  *event)->bool{\n        auto target = static_cast<Sprite*>(event->getCurrentTarget());\n        Vec2 point = target->convertToNodeSpace(Director::getInstance()->convertToGL(touch->getLocationInView()));\n        auto rect = Rect(0, 0, target->getContentSize().width, target->getContentSize().height);\n        if (!rect.containsPoint(point)) return false;\n        target->stopAllActions();\n        target->runAction(Sequence::createWithTwoActions(ScaleBy::create(0.05f, 0.9f), ScaleTo::create(0.125f, 1)));\n        return true;\n    };\n    listener->onTouchEnded = [](Touch* touch, Event  *event){\n        auto target = static_cast<Sprite*>(event->getCurrentTarget());\n        Vec2 point = target->convertToNodeSpace(Director::getInstance()->convertToGL(touch->getLocationInView()));\n        auto rect = Rect(0, 0, target->getContentSize().width, target->getContentSize().height);\n        if (!rect.containsPoint(point)) return;\n        startScript(\"\");\n    };\n    _eventDispatcher->addEventListenerWithSceneGraphPriority(listener, playSprite);\n\n    this->scheduleUpdate();\n}\n\nConnectWaitLayer::~ConnectWaitLayer()\n{\n\tCC_SAFE_DELETE(_imagebg);\n\tCC_SAFE_DELETE(_imageplay);\n\tCC_SAFE_DELETE(_imageShine);\n}\n\n// clean up: ignore stdin, stdout and stderr\nvoid ConnectWaitLayer::update(float fDelta)\n{\n    std::string transferTip = FileServer::getShareInstance()->getTransingFileName();\n    if (transferTip.empty()){\n        return;\n    }\n    _labelUploadFile->setString(transferTip);\n}\n"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/Classes/runtime/ConnectWaitLayer.h",
    "content": "/****************************************************************************\nCopyright (c) 2013 cocos2d-x.org\n\nhttp://www.cocos2d-x.org\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in\nall copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\nTHE SOFTWARE.\n****************************************************************************/\n\n#ifndef  _CONNECT_WAIT_LAYER__H_\n#define  _CONNECT_WAIT_LAYER__H_\n\n#include \"cocos2d.h\"\n\nclass ConnectWaitLayer: public cocos2d::Layer\n{\npublic:\n    ConnectWaitLayer();\n\t~ConnectWaitLayer();\n    void update(float fDelta);\n    \nprivate:\n\tcocos2d::Image* _imagebg;\n\tcocos2d::Image* _imageplay;\n\tcocos2d::Image* _imageShine;\n\n    cocos2d::Label* _labelUploadFile;\n};\n\n#endif // _CONNECT_WAIT_LAYER__H_\n\n"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/Classes/runtime/ConsoleCommand.cpp",
    "content": "/****************************************************************************\nCopyright (c) 2013 cocos2d-x.org\n\nhttp://www.cocos2d-x.org\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in\nall copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\nTHE SOFTWARE.\n****************************************************************************/\n\n#include \"Runtime.h\"\n#include \"ConfigParser.h\"\n#include \"ConsoleCommand.h\"\n#include \"json/document.h\"\n#include \"json/filestream.h\"\n#include \"json/stringbuffer.h\"\n#include \"CCLuaEngine.h\"\n\n#include \"cocos2d.h\"\nusing namespace cocos2d;\n\nstatic void resetLuaModule(const string& fileName)\n{\n    if (fileName.empty())\n    {\n        return;\n    }\n    auto engine = LuaEngine::getInstance();\n    LuaStack* luaStack = engine->getLuaStack();\n    lua_State* stack = luaStack->getLuaState();\n    lua_getglobal(stack, \"package\");                         /* L: package */\n    lua_getfield(stack, -1, \"loaded\");                       /* L: package loaded */\n    lua_pushnil(stack);                                     /* L: lotable ?-.. nil */\n    while (0 != lua_next(stack, -2))                     /* L: lotable ?-.. key value */\n    {\n        //CCLOG(\"%s - %s \\n\", tolua_tostring(stack, -2, \"\"), lua_typename(stack, lua_type(stack, -1)));\n        std::string key = tolua_tostring(stack, -2, \"\");\n        std::string tableKey = key;\n        size_t found = tableKey.rfind(\".lua\");\n        if (found != std::string::npos)\n            tableKey = tableKey.substr(0, found);\n        tableKey = replaceAll(tableKey, \".\", \"/\");\n        tableKey = replaceAll(tableKey, \"\\\\\", \"/\");\n        tableKey.append(\".lua\");\n        found = fileName.rfind(tableKey);\n        if (0 == found || (found != std::string::npos && fileName.at(found - 1) == '/'))\n        {\n            lua_pushstring(stack, key.c_str());\n            lua_pushnil(stack);\n            if (lua_istable(stack, -5))\n            {\n                lua_settable(stack, -5);\n            }\n        }\n        lua_pop(stack, 1);\n    }\n    lua_pop(stack, 2);\n}\n\nbool reloadScript(const string& file)\n{\n    auto director = Director::getInstance();\n    FontFNT::purgeCachedData();\n    if (director->getOpenGLView())\n    {\n        SpriteFrameCache::getInstance()->removeSpriteFrames();\n        director->getTextureCache()->removeAllTextures();\n    }\n    FileUtils::getInstance()->purgeCachedEntries();\n    string modulefile = file;\n    \n    if (! modulefile.empty())\n    {\n        resetLuaModule(modulefile);\n    }\n    else\n    {\n        modulefile = ConfigParser::getInstance()->getEntryFile().c_str();\n    }\n    \n    auto engine = LuaEngine::getInstance();\n    LuaStack* luaStack = engine->getLuaStack();\n    std::string require = \"require \\'\" + modulefile + \"\\'\";\n    return luaStack->executeString(require.c_str());\n}\n\nConsoleCommand* ConsoleCommand::s_sharedConsoleCommand = nullptr;\nConsoleCommand* ConsoleCommand::getShareInstance() \n{\n\tif (s_sharedConsoleCommand == nullptr)\n\t{\n\t\ts_sharedConsoleCommand = new ConsoleCommand();\n\t}\n\treturn s_sharedConsoleCommand;\n}\n\nvoid ConsoleCommand::purge()\n{\n\tif (s_sharedConsoleCommand != nullptr)\n\t{\n\t\tdelete s_sharedConsoleCommand;\n\t}\n}\n\nvoid ConsoleCommand::init()\n{\n    cocos2d::Console *_console = Director::getInstance()->getConsole();\n    static struct Console::Command commands[] =\n    {\n        {\"sendrequest\",\"send command to runtime.Args[json format]\",std::bind(&ConsoleCommand::onSendCommand, this, std::placeholders::_1, std::placeholders::_2)},\n    };\n    for (int i = 0;i< sizeof(commands) / sizeof(Console::Command);i++)\n    {\n        _console->addCommand(commands[i]);\n    }\n#if(CC_PLATFORM_MAC == CC_TARGET_PLATFORM || CC_PLATFORM_WIN32 == CC_TARGET_PLATFORM)\n    _console->listenOnTCP(ConfigParser::getInstance()->getConsolePort());\n#else\n    _console->listenOnTCP(6010);\n#endif\n\n    _fileserver = FileServer::getShareInstance();\n#if(CC_PLATFORM_MAC == CC_TARGET_PLATFORM || CC_PLATFORM_WIN32 == CC_TARGET_PLATFORM)\n    _fileserver->listenOnTCP(ConfigParser::getInstance()->getUploadPort());\n#else\n    _fileserver->listenOnTCP(6020);\n#endif\n    _fileserver->readResFileFinfo();\n}\n\nvoid ConsoleCommand::onSendCommand(int fd, const std::string &args)\n{\n    Director::getInstance()->getScheduler()->performFunctionInCocosThread([=](){\n        rapidjson::Document dArgParse;\n        dArgParse.Parse<0>(args.c_str());\n        if (dArgParse.HasMember(\"cmd\"))\n        {\n            string strcmd = dArgParse[\"cmd\"].GetString();\n            \n            rapidjson::Document dReplyParse;\n            dReplyParse.SetObject();\n            dReplyParse.AddMember(\"cmd\",strcmd.c_str(),dReplyParse.GetAllocator());\n            if (dArgParse.HasMember(\"seq\"))\n            {\n                dReplyParse.AddMember(\"seq\",dArgParse[\"seq\"],dReplyParse.GetAllocator());\n            }\n            \n            if(strcmp(strcmd.c_str(), \"start-logic\") == 0)\n            {\n                char szDebugArg[1024] = {0};\n                sprintf(szDebugArg, \"require('debugger')(%s,'%s')\",dArgParse[\"debugcfg\"].GetString(), \"\");\n                startScript(szDebugArg);\n                dReplyParse.AddMember(\"code\", 0, dReplyParse.GetAllocator());\n\n            } else if(strcmp(strcmd.c_str(), \"reload\") == 0)\n            {\n                if (dArgParse.HasMember(\"modulefiles\"))\n                {\n                    rapidjson::Value bodyvalue(rapidjson::kObjectType);\n                    const rapidjson::Value& objectfiles = dArgParse[\"modulefiles\"];\n                    for (rapidjson::SizeType i = 0; i < objectfiles.Size(); i++)\n                    {\n                        if (!reloadScript(objectfiles[i].GetString()))\n                        {\n                            bodyvalue.AddMember(objectfiles[i].GetString(), 1, dReplyParse.GetAllocator());\n                        }\n                    }\n                    if (0 == objectfiles.Size())\n                    {\n                        reloadScript(\"\");\n                    }\n                    dReplyParse.AddMember(\"body\", bodyvalue, dReplyParse.GetAllocator());\n                }\n                dReplyParse.AddMember(\"code\", 0, dReplyParse.GetAllocator());\n            } else if(strcmp(strcmd.c_str(), \"getversion\") == 0)\n            {\n                rapidjson::Value bodyvalue(rapidjson::kObjectType);\n                bodyvalue.AddMember(\"version\", getRuntimeVersion(), dReplyParse.GetAllocator());\n                dReplyParse.AddMember(\"body\", bodyvalue, dReplyParse.GetAllocator());\n                dReplyParse.AddMember(\"code\", 0, dReplyParse.GetAllocator());\n            } else if(strcmp(strcmd.c_str(), \"getfileinfo\") == 0)\n            {\n                rapidjson::Value bodyvalue(rapidjson::kObjectType);\n                rapidjson::Document* filecfgjson = _fileserver->getFileCfgJson();\n                for (auto it = filecfgjson->MemberonBegin(); it != filecfgjson->MemberonEnd(); ++it)\n                {\n                    bodyvalue.AddMember(it->name.GetString(), it->value.GetString(), dReplyParse.GetAllocator());\n                }\n                dReplyParse.AddMember(\"body\", bodyvalue, dReplyParse.GetAllocator());\n                dReplyParse.AddMember(\"code\", 0, dReplyParse.GetAllocator());\n               \n            } else if (strcmp(strcmd.c_str(), \"getEntryfile\") == 0)\n            {\n                rapidjson::Value bodyvalue(rapidjson::kObjectType);\n                rapidjson::Value entryFileValue(rapidjson::kStringType);\n                entryFileValue.SetString(ConfigParser::getInstance()->getEntryFile().c_str(), dReplyParse.GetAllocator());\n                bodyvalue.AddMember(\"entryfile\", entryFileValue, dReplyParse.GetAllocator());\n                dReplyParse.AddMember(\"body\", bodyvalue,dReplyParse.GetAllocator());\n                dReplyParse.AddMember(\"code\", 0, dReplyParse.GetAllocator());\n            } else if(strcmp(strcmd.c_str(), \"getIP\") == 0)\n            {\n                rapidjson::Value bodyvalue(rapidjson::kObjectType);\n                rapidjson::Value IPValue(rapidjson::kStringType);\n                IPValue.SetString(getIPAddress().c_str(), dReplyParse.GetAllocator());\n                bodyvalue.AddMember(\"IP\", IPValue,dReplyParse.GetAllocator());\n                dReplyParse.AddMember(\"body\", bodyvalue,dReplyParse.GetAllocator());\n                dReplyParse.AddMember(\"code\", 0, dReplyParse.GetAllocator());\n\n            } else if(strcmp(strcmd.c_str(), \"remove\") == 0)\n            {\n                if (dArgParse.HasMember(\"files\"))\n                {\n                    rapidjson::Value bodyvalue(rapidjson::kObjectType);\n                    const rapidjson::Value& objectfiles = dArgParse[\"files\"];\n                    const char* filename = NULL;\n                    for (rapidjson::SizeType i = 0; i < objectfiles.Size(); i++)\n                    {\n                        filename = objectfiles[i].GetString();\n                        \n                        // remove file from disk\n                        string filepath(_fileserver->getWritePath() + \"/\" + filename);\n                        if (FileUtils::getInstance()->isFileExist(filepath)) \n                        {\n                            if(remove(filepath.c_str()) != 0) \n                            {\n                                // remove failed\n                                bodyvalue.AddMember(filename, 2, dReplyParse.GetAllocator());\n                            }\n                        } else\n                        {\n                            // file not exist\n                            bodyvalue.AddMember(filename, 1, dReplyParse.GetAllocator());\n                        }\n\n                        // file remove success, remove it from record\n                        if (! FileUtils::getInstance()->isFileExist(filepath))\n                            _fileserver->removeResFileInfo(filename);\n                    }\n\n                    dReplyParse.AddMember(\"body\", bodyvalue, dReplyParse.GetAllocator());\n                }\n\n                dReplyParse.AddMember(\"code\",0,dReplyParse.GetAllocator());\n            } else if(strcmp(strcmd.c_str(), \"shutdownapp\") == 0)\n            {\n#if (CC_TARGET_PLATFORM == CC_PLATFORM_WIN32)\n                extern void shutDownApp();\n                shutDownApp();\n#else\n                exit(0);\n#endif\t\n            } else if(strcmp(strcmd.c_str(), \"getplatform\") == 0)\n            {\n                string platform=\"UNKNOW\";\n#if (CC_TARGET_PLATFORM == CC_PLATFORM_WIN32)\n                platform = \"WIN32\";\n#elif (CC_TARGET_PLATFORM == CC_PLATFORM_MAC)\n                platform = \"MAC\";\n#elif (CC_TARGET_PLATFORM == CC_PLATFORM_IOS)\n                platform = \"IOS\";\n#elif (CC_TARGET_PLATFORM == CC_PLATFORM_ANDROID)\n                platform = \"ANDROID\";\n#endif\n                rapidjson::Value bodyvalue(rapidjson::kObjectType);\n                rapidjson::Value platformValue(rapidjson::kStringType);\n                platformValue.SetString(platform.c_str(), dReplyParse.GetAllocator());\n                bodyvalue.AddMember(\"platform\", platformValue, dReplyParse.GetAllocator());\n                dReplyParse.AddMember(\"body\", bodyvalue, dReplyParse.GetAllocator());\n                dReplyParse.AddMember(\"code\", 0, dReplyParse.GetAllocator());\n            } else if(strcmp(strcmd.c_str(), \"usewritablepath\") == 0)\n            {\n#if (CC_TARGET_PLATFORM == CC_PLATFORM_IOS || CC_TARGET_PLATFORM == CC_PLATFORM_ANDROID)\n                // only iOS and Android need to open using write path by Code IDE\n                FileServer::getShareInstance()->setIsUsingWritePath(true);\n                \n                std::vector<std::string> searchPathArray = FileUtils::getInstance()->getSearchPaths();\n                searchPathArray.insert(searchPathArray.begin(), FileServer::getShareInstance()->getWritePath());\n                FileUtils::getInstance()->setSearchPaths(searchPathArray);\n#endif\n                \n                dReplyParse.AddMember(\"code\", 0, dReplyParse.GetAllocator());\n            }\n            \n            rapidjson::StringBuffer buffer;\n            rapidjson::Writer< rapidjson::StringBuffer > writer(buffer);\n            dReplyParse.Accept(writer);\n            string msgContent = buffer.GetString();\n            char msgLength[64] = {0x1, 0};\n            sprintf(msgLength + 1, \"%d:\", msgContent.size());\n            \n            string msg(msgLength + msgContent);\n            \n            sendBuf(fd, msg.c_str(), msg.size());\n        }\n    });\n}\n\nConsoleCommand::~ConsoleCommand()\n{\n\tDirector::getInstance()->getConsole()->stop();\n}\n"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/Classes/runtime/ConsoleCommand.h",
    "content": "/****************************************************************************\nCopyright (c) 2013 cocos2d-x.org\n\nhttp://www.cocos2d-x.org\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in\nall copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\nTHE SOFTWARE.\n****************************************************************************/\n\n#ifndef  _CONSOLE_COMMAND__H_\n#define  _CONSOLE_COMMAND__H_\n\n#include \"FileServer.h\"\n\nclass ConsoleCommand\n{\n\tstatic ConsoleCommand *s_sharedConsoleCommand;\n\npublic:\n\tstatic ConsoleCommand* getShareInstance();\n\tstatic void purge();\n\n    void init();\n    void onSendCommand(int fd, const std::string &args);\nprivate:\n\t~ConsoleCommand();\n    FileServer* _fileserver;\n};\n\n#endif // _CONSOLE_COMMAND__H_\n\n"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/Classes/runtime/FileServer.cpp",
    "content": "/****************************************************************************\nCopyright (c) 2013 cocos2d-x.org\n\nhttp://www.cocos2d-x.org\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in\nall copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\nTHE SOFTWARE.\n****************************************************************************/\n\n#include \"FileServer.h\"\n#include \"Runtime.h\"\n#include \"zlib.h\"\n\n// header files for directory operation\n#ifdef _WIN32\n#include <direct.h>\n#else\n#include <sys/stat.h>\n#endif\n\nUSING_NS_CC;\n\n//1M size\n#define MAXPROTOLENGTH 1048576\n\n#define PROTO_START \"RuntimeSend:\"\n\nFileServer* FileServer::s_sharedFileServer = nullptr;\nFileServer* FileServer::getShareInstance()\n{\n\tif (s_sharedFileServer == nullptr)\n\t{\n\t\ts_sharedFileServer = new FileServer;\n\t}\n\treturn s_sharedFileServer;\n}\n\nvoid FileServer::purge()\n{\n\tCC_SAFE_DELETE(s_sharedFileServer);\n}\n\nvoid FileServer::readResFileFinfo()\n{\n    std::string filecfg = _writePath + \"/fileinfo_debug.json\";\n    FILE * pFile = fopen (filecfg.c_str() , \"r\");\n    if(pFile)\n    {\n        rapidjson::FileStream inputStream(pFile);\n        _filecfgjson.ParseStream<0>(inputStream);\n        fclose(pFile);\n    }\n    if(! _filecfgjson.IsObject()){\n        _filecfgjson.SetObject();\n    }\n    \n    //save file info to disk every five second\n    Director::getInstance()->getScheduler()->schedule([&](float){\n        rapidjson::StringBuffer buffer;\n        rapidjson::Writer< rapidjson::StringBuffer > writer(buffer);\n        _filecfgjson.Accept(writer);\n        const char* str = buffer.GetString();\n        std::string filecfg = _writePath + \"/fileinfo_debug.json\";\n        FILE * pFile = fopen(filecfg.c_str(), \"w\");\n        if (!pFile) return ;\n        fwrite(str, sizeof(char), strlen(str), pFile);\n        fclose(pFile);\n    },this, 5.0f, false, \"fileinfo\");\n}\n\nvoid FileServer::addResFileInfo(const char* filename, uint64_t u64)\n{\n    if(_filecfgjson.HasMember(filename)){\n        _filecfgjson.RemoveMember(filename);\n    }\n    char filetime[512]= {0};\n    sprintf(filetime, \"%llu\", u64);\n    rapidjson::Value filetimeValue(rapidjson::kStringType);\n    filetimeValue.SetString(filetime, _filecfgjson.GetAllocator());\n    rapidjson::Value filenameValue(rapidjson::kStringType);\n    filenameValue.SetString(filename,_filecfgjson.GetAllocator());\n    _filecfgjson.AddMember(filenameValue.GetString(), filetimeValue, _filecfgjson.GetAllocator());\n}\n\nvoid FileServer::removeResFileInfo(const char *filename)\n{\n    if (_filecfgjson.HasMember(filename)) {\n        _filecfgjson.RemoveMember(filename);\n    }\n}\n\nstd::string FileServer::getTransingFileName()\n{\n    _fileNameMutex.lock();\n    std::string filename = _strFileName;\n    _fileNameMutex.unlock();\n    return filename;\n}\n\nvoid FileServer::setTransingFileName(const std::string &filename)\n{\n    _fileNameMutex.lock();\n    _strFileName = filename;\n    _fileNameMutex.unlock();\n}\n\nbool FileServer::listenOnTCP(int port)\n{\n    int listenfd, n;\n    const int on = 1;\n    struct addrinfo hints, *res, *ressave;\n    char serv[30];\n\n    snprintf(serv, sizeof(serv)-1, \"%d\", port );\n    serv[sizeof(serv)-1]=0;\n\n    bzero(&hints, sizeof(struct addrinfo));\n    hints.ai_flags = AI_PASSIVE;\n    hints.ai_family = AF_INET; // AF_UNSPEC: Do we need IPv6 ?\n    hints.ai_socktype = SOCK_STREAM;\n\n#if (CC_TARGET_PLATFORM == CC_PLATFORM_WIN32)\n    WSADATA wsaData;\n    n = WSAStartup(MAKEWORD(2, 2),&wsaData);\n#endif\n\n    if ( (n = getaddrinfo(NULL, serv, &hints, &res)) != 0) {\n        fprintf(stderr,\"net_listen error for %s: %s\", serv, gai_strerror(n));\n        return false;\n    }\n\n    ressave = res;\n    do {\n        listenfd = socket(res->ai_family, res->ai_socktype, res->ai_protocol);\n        if (listenfd < 0)\n            continue;       /* error, try next one */\n        \n        setsockopt(listenfd, SOL_SOCKET, SO_REUSEADDR, (const char*)&on, sizeof(on));\n        //setsockopt(listenfd, IPPROTO_TCP, TCP_NODELAY, (const char*)&on, sizeof(on));\n        if (::bind(listenfd, res->ai_addr, res->ai_addrlen) == 0)\n            break;          /* success */\n   \n\t\t/* bind error, close and try next one */\n#if (CC_TARGET_PLATFORM == CC_PLATFORM_WIN32)\n\t\tclosesocket(listenfd);\n#else\n\t\tclose(listenfd);\n#endif\n    } while ((res = res->ai_next) != NULL);\n\n    if (res == NULL)\n    {\n        perror(\"net_listen:\");\n        freeaddrinfo(ressave);\n        return false;\n    }\n\n    listen(listenfd, 1);\n\n    if (res->ai_family == AF_INET) \n    {\n        char buf[INET_ADDRSTRLEN] = \"\";\n        struct sockaddr_in *sin = (struct sockaddr_in*) res->ai_addr;\n        if( inet_ntop(res->ai_family, &sin->sin_addr, buf, sizeof(buf)) != NULL )\n            cocos2d::log(\"Console: listening on  %s : %d\", buf, ntohs(sin->sin_port));\n        else\n            perror(\"inet_ntop\");\n    } else if (res->ai_family == AF_INET6)\n    {\n        char buf[INET6_ADDRSTRLEN] = \"\";\n        struct sockaddr_in6 *sin = (struct sockaddr_in6*) res->ai_addr;\n        if( inet_ntop(res->ai_family, &sin->sin6_addr, buf, sizeof(buf)) != NULL )\n            cocos2d::log(\"Console: listening on  %s : %d\", buf, ntohs(sin->sin6_port));\n        else\n            perror(\"inet_ntop\");\n    }\n    freeaddrinfo(ressave);\n    _listenfd = listenfd;\n    _receiveThread = std::thread(std::bind( &FileServer::loopReceiveFile, this));\n    _writeThread = std::thread(std::bind(&FileServer::loopWriteFile, this));\n    _responseThread = std::thread(std::bind(&FileServer::loopResponse, this));\n    return true;\n}\n\nvoid FileServer::stop()\n{\n\t_receiveEndThread = true;\n\t_writeEndThread = true;\n\t_responseEndThread = true;\n\n    if(_receiveRunning)\n    {\n        _receiveThread.join();\n    }\n\n\tif (_writeRunning)\n\t{\n\t\t_writeThread.join();\n\t}\n\n\tif (_responseRunning)\n\t{\n\t\t_responseThread.join();\n\t}\n}\n\nFileServer::FileServer() :\n_listenfd(-1),\n_receiveRunning(false),\n_receiveEndThread(false),\n_writeRunning(false),\n_writeEndThread(false),\n_responseRunning(false),\n_responseEndThread(false)\n{\n#if (CC_TARGET_PLATFORM == CC_PLATFORM_IOS || CC_TARGET_PLATFORM == CC_PLATFORM_ANDROID)\n    // need to be opened by Code IDE\n    _isUsingWritePath = false;\n#else\n    _isUsingWritePath = true;\n#endif\n    \n    _writePath = FileUtils::getInstance()->getWritablePath();\n    \n#if (CC_TARGET_PLATFORM == CC_PLATFORM_MAC)\n    std::string getCurAppName(void);\n    _writePath += getCurAppName();\n    _writePath += \"/\";\n#endif\n    \n    _writePath += \"debugruntime/\";\n    \n    _writePath = replaceAll(_writePath, \"\\\\\", \"/\");\n    if (_writePath.at(_writePath.length() - 1) != '/'){\n        _writePath.append(\"/\");\n    }\n}\n\nFileServer::~FileServer()\n{\n\tstop();\n}\n\nvoid FileServer::loopReceiveFile()\n{\n    struct sockaddr client;\n    socklen_t client_len;\n\n    /* new client */\n    client_len = sizeof(client);\n    int fd = accept(_listenfd, (struct sockaddr *)&client, &client_len );\n    char *protoBuf = new char[MAXPROTOLENGTH];\n\n    while(!_receiveEndThread) { \n\n        // recv start flag\n        char startflag[13] = {0};\n        recvBuf(fd, startflag, sizeof(startflag) - 1);\n        if (strcmp(startflag, PROTO_START) != 0)\n        {\n            continue;\n        }\n\n        // recv proto num\n        union\n        {\n            char char_type[3];\n            unsigned short uint16_type;\n        }protonum;\n        recvBuf(fd, protonum.char_type, sizeof(protonum.char_type) - 1);\n        //recv protobuf length\n        union\n        {\n            char char_type[3];\n            unsigned short uint16_type;\n        }protolength;\n        recvBuf(fd, protolength.char_type, sizeof(protolength.char_type) - 1);\n\n        //recv variable length\n        memset(protoBuf, 0, MAXPROTOLENGTH);\n        recvBuf(fd, protoBuf, protolength.uint16_type);\n\n        RecvBufStruct recvDataBuf;\n        recvDataBuf.fd = fd;\n        recvDataBuf.fileProto.ParseFromString(protoBuf);\n        if (1 == recvDataBuf.fileProto.package_seq())\n        {\n            _recvErrorFile = \"\";\n        } else\n        {\n            // recv error\n            if (_recvErrorFile == recvDataBuf.fileProto.file_name())\n            {\n                continue;\n            }\n        }\n        unsigned long contentSize = recvDataBuf.fileProto.content_size();\n        if (contentSize == 0)\n        {\n            recvDataBuf.contentBuf=\"\";\n            _recvBufListMutex.lock();\n            _recvBufList.push_back(recvDataBuf);\n            _recvBufListMutex.unlock();\n        }else if(contentSize > 0)\n        {\n            //recv body data\n            Bytef *contentbuf = new Bytef[contentSize+1];\n            memset(contentbuf, 0, contentSize+1);\n            unsigned long recvTotalLen = contentSize;\n            while (recvTotalLen != 0){\n                unsigned long recvLen = MAXPROTOLENGTH;\n                if(recvTotalLen < MAXPROTOLENGTH)\n                    recvLen = recvTotalLen;\n                memset(protoBuf, 0, MAXPROTOLENGTH);\n                unsigned long result = recv(fd, protoBuf, recvLen,0);\n                if (result <= 0)\n                {\n                    usleep(1);\n                    continue;\n                }\n                memcpy(contentbuf + contentSize - recvTotalLen, protoBuf, result);\n                recvTotalLen -= result;\n            }\n\n            if (recvDataBuf.fileProto.compress_type() == runtime::FileSendProtos_CompressType::FileSendProtos_CompressType_ZIP){\n                unsigned long uncompressSize = recvDataBuf.fileProto.uncompress_size();\n                Bytef *buff = new Bytef[uncompressSize * sizeof(Bytef)];\n                memset(buff, 0, uncompressSize * sizeof(Bytef));\n                int err = ::uncompress(buff, &uncompressSize,contentbuf, contentSize * sizeof(Bytef));\n                if (err != Z_OK){\n                    CC_SAFE_DELETE_ARRAY(buff);\n                    CC_SAFE_DELETE_ARRAY(contentbuf);\n                    addResponse(recvDataBuf.fd, recvDataBuf.fileProto.file_name(), runtime::FileSendComplete::RESULTTYPE::FileSendComplete_RESULTTYPE_UNCOMPRESS_ERROR, err);\n                    continue;\n                }\n                CC_SAFE_DELETE_ARRAY(contentbuf);\n                contentbuf = buff;\n                contentSize = uncompressSize;\n            }\n            recvDataBuf.contentBuf.assign((const char*)contentbuf, contentSize);\n            CC_SAFE_DELETE_ARRAY(contentbuf);\n\n            _recvBufListMutex.lock();\n            _recvBufList.push_back(recvDataBuf);\n            _recvBufListMutex.unlock();\n        }\n    }\n\n\t_receiveRunning = false;\n\n\tCC_SAFE_DELETE_ARRAY(protoBuf);\n}\n\nvoid FileServer::loopWriteFile()\n{\n\t_writeRunning = true;\n    while(!_writeEndThread)\n    {\n        _recvBufListMutex.lock();\n        size_t recvSize = _recvBufList.size();\n        _recvBufListMutex.unlock();\n        if(0 == recvSize)\n        {\n            usleep(500);\n            continue;\n        }\n        \n        _recvBufListMutex.lock();\n        RecvBufStruct recvDataBuf = _recvBufList.front();\n        _recvBufList.pop_front();\n        _recvBufListMutex.unlock();\n        std::string filename = recvDataBuf.fileProto.file_name();\n        std::string fullfilename = _writePath;\n        fullfilename += filename;\n        _fileNameMutex.lock();\n        _strFileName = filename;\n        _fileNameMutex.unlock();\n        //cocos2d::log(\"WriteFile:: fullfilename = %s\",filename.c_str());\n        createDir(fullfilename.substr(0, fullfilename.find_last_of(\"/\")).c_str());\n        \n        FILE *fp= nullptr;\n        if (1 == recvDataBuf.fileProto.package_seq())\n        {\n            _writeErrorFile =\"\";\n            fp = fopen(fullfilename.c_str(), \"wb\");\n        } else\n        {\n            if (_writeErrorFile == filename)\n            {\n                continue;\n            }\n            fp=fopen(fullfilename.c_str(), \"ab\");\n        }\n        if (nullptr == fp)\n        {\n            addResponse(recvDataBuf.fd, filename, runtime::FileSendComplete::RESULTTYPE::FileSendComplete_RESULTTYPE_FOPEN_ERROR, errno);\n            continue;\n        }\n        if (fp)\n        {\n            if (recvDataBuf.contentBuf.size() > 0 && 0 == fwrite(recvDataBuf.contentBuf.c_str(), sizeof(char), recvDataBuf.contentBuf.size(), fp))\n            {\n                addResponse(recvDataBuf.fd, filename, runtime::FileSendComplete::RESULTTYPE::FileSendComplete_RESULTTYPE_FWRITE_ERROR, errno);\n                fclose(fp);\n                continue;\n            }\n            fclose(fp);\n        }\n        \n        if (1 == recvDataBuf.fileProto.package_seq())\n        {\n            //record new file modify\n            addResFileInfo(filename.c_str(), recvDataBuf.fileProto.modified_time());\n            addResponse(recvDataBuf.fd, filename, runtime::FileSendComplete::RESULTTYPE::FileSendComplete_RESULTTYPE_SUCCESS, 0);\n        }\n    }\n\n\t_writeRunning = false;\n}\n\nvoid FileServer::addResponse(int fd, std::string filename, int errortype, int errornum)\n{\n    switch (errortype)\n    {\n    case runtime::FileSendComplete::RESULTTYPE::FileSendComplete_RESULTTYPE_UNCOMPRESS_ERROR:\n    case runtime::FileSendComplete::RESULTTYPE::FileSendComplete_RESULTTYPE_RECV_ERROR:\n        _recvErrorFile = filename;\n        break;\n    case runtime::FileSendComplete::RESULTTYPE::FileSendComplete_RESULTTYPE_FOPEN_ERROR:\n    case runtime::FileSendComplete::RESULTTYPE::FileSendComplete_RESULTTYPE_FWRITE_ERROR:\n        _writeErrorFile = filename;\n        break;\n    default:\n        break;\n    }\n\n    ResponseStruct responseBuf;\n    responseBuf.fd = fd;\n    responseBuf.fileResponseProto.set_file_name(filename.c_str());\n    responseBuf.fileResponseProto.set_result((::runtime::FileSendComplete_RESULTTYPE)errortype);\n    responseBuf.fileResponseProto.set_error_num(errornum);\n\n    // push Response struct\n    _responseBufListMutex.lock();\n    _responseBufList.push_back(responseBuf);\n    _responseBufListMutex.unlock();\n}\n\nvoid FileServer::loopResponse()\n{\n\t_responseRunning = true;\n    while(!_responseEndThread) {\n        _responseBufListMutex.lock();\n        size_t responseSize = _responseBufList.size();\n        _responseBufListMutex.unlock();\n        if(0 == responseSize)\n        {\n            usleep(500);\n            /* error */\n            continue;\n        }\n\n        _responseBufListMutex.lock();\n        ResponseStruct responseBuf = _responseBufList.front();\n        _responseBufList.pop_front();\n        _responseBufListMutex.unlock();\n        //send response\n        std::string responseString;\n        runtime::FileSendComplete  fileSendProtoComplete;\n        fileSendProtoComplete.set_file_name(responseBuf.fileResponseProto.file_name());\n        fileSendProtoComplete.set_result(responseBuf.fileResponseProto.result());\n        fileSendProtoComplete.set_error_num(responseBuf.fileResponseProto.error_num());\n        fileSendProtoComplete.SerializeToString(&responseString);\n        char dataBuf[1024] = {0};\n        struct ResponseHeaderStruct\n        {\n            char startFlag[12];\n            unsigned short protoNum;\n            unsigned short protoBufLen;\n        };\n        ResponseHeaderStruct responseHeader;\n        strcpy(responseHeader.startFlag, PROTO_START);\n        responseHeader.protoNum = PROTONUM::FILESENDCOMPLETE;\n        responseHeader.protoBufLen = (unsigned short) responseString.size();\n        memcpy(dataBuf, &responseHeader, sizeof(responseHeader));\n        memcpy(dataBuf + sizeof(responseHeader), responseString.c_str(), responseString.size());\n        \n        sendBuf(responseBuf.fd, dataBuf, sizeof(responseHeader) + responseString.size());\n        cocos2d::log(\"responseFile:%s,result:%d\", fileSendProtoComplete.file_name().c_str(), fileSendProtoComplete.result());\n    }\n\n\t_responseRunning = false;\n}\n\nbool createDir(const char *sPathName)\n{\n    char   DirName[256]={0};\n    strcpy(DirName, sPathName);\n    size_t i, len = strlen(DirName);\n    if(DirName[len - 1] != '/')\n    {\n        strcat(DirName, \"/\");\n    }\n    \n    len = strlen(DirName);\n    for(i = 1; i < len; i++)\n    {\n        if(DirName[i] == '/')\n        {\n            DirName[i] = 0;\n#ifdef _WIN32\n            if(_access(DirName, 0) != 0)\n            {\n                if(_mkdir(DirName/*, 0755*/) == -1)\n#else\n\t\t\tif (access(DirName, 0) != 0)\n\t\t\t{\n                if(mkdir(DirName, 0755) == -1)\n#endif\n                {\n                    perror(\"mkdir error\");\n                    return false;\n                }\n            }\n            DirName[i] = '/';\n        }\n    }\n    \n    return true;\n}\n"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/Classes/runtime/FileServer.h",
    "content": "/****************************************************************************\nCopyright (c) 2013 cocos2d-x.org\n\nhttp://www.cocos2d-x.org\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in\nall copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\nTHE SOFTWARE.\n****************************************************************************/\n\n#ifndef  _FILE_SERVER__H_\n#define  _FILE_SERVER__H_\n\n#include \"cocos2d.h\"\n#include \"json/document.h\"\n#include \"json/filestream.h\"\n#include \"json/stringbuffer.h\"\n#include \"json/writer.h\"\n#include \"Protos.pb.h\"\n#include <string>\n\n// header files for socket\n#ifdef _WIN32\n#include <io.h>\n#include <WS2tcpip.h>\n\n#define bzero(a, b) memset(a, 0, b);\n\n#else\n#include <netdb.h>\n#include <arpa/inet.h>\n#include <netinet/in.h>\n#include <sys/socket.h>\n#endif\n\n#ifdef _WIN32\n#define usleep(t) Sleep(t)\n#else\n#include <unistd.h>\n#endif\n\nclass FileServer\n{\n    static FileServer *s_sharedFileServer;\npublic:\n    static FileServer* getShareInstance();\n\tstatic void purge();\n\n    bool listenOnTCP(int port);\n    void stop();\n    \n    void readResFileFinfo();\n    void addResFileInfo(const char* filename,uint64_t u64);\n    void removeResFileInfo(const char *filename);\n    rapidjson::Document* getFileCfgJson() { return &_filecfgjson; }\n    bool getIsUsingWritePath() { return _isUsingWritePath; }\n    void setIsUsingWritePath(bool use) { _isUsingWritePath = use; }\n    std::string getWritePath() { return _writePath; }\n    std::string getTransingFileName();\n    void setTransingFileName(const std::string& filename);\nprotected:\n    FileServer();\n    ~FileServer();\nprivate:\n    void loopReceiveFile();\n    void loopWriteFile();\n    void loopResponse();\n    void addResponse(int fd, std::string filename,int errortype,int errornum);\n    enum PROTONUM\n    {\n        FILEPROTO = 1,\n        FILESENDCOMPLETE = 2,\n        DIRPROTO = 3,\n        DIRSENDCOMPLETE = 4\n    };\n    \n    struct RecvBufStruct\n    {\n        runtime::FileSendProtos fileProto;\n        std::string contentBuf;\n        int fd;\n    };\n    \n    struct ResponseStruct\n    {\n        runtime::FileSendComplete fileResponseProto;\n        int fd;\n    };\n    \n    // file descriptor: socket, console, etc.\n    int _listenfd;\n    std::thread _responseThread;\n    std::thread _receiveThread;\n    std::thread _writeThread;\n    bool _receiveRunning;\n    bool _receiveEndThread;\n\tbool _writeRunning;\n\tbool _writeEndThread;\n\tbool _responseRunning;\n\tbool _responseEndThread;\n    \n    std::list<RecvBufStruct> _recvBufList;\n    std::list<ResponseStruct> _responseBufList;\n    std::mutex _recvBufListMutex;\n    std::mutex _responseBufListMutex;\n    \n    rapidjson::Document _filecfgjson;\n    \n    std::string _strFileName;\n    std::mutex _fileNameMutex;\n    \n    std::string _recvErrorFile;\n    std::string _writeErrorFile;\n    \n    bool _isUsingWritePath;\n    std::string _writePath;\n};\n\nbool createDir(const char *sPathName);\n\n#endif // _FILE_SERVER__H_\n\n"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/Classes/runtime/Landscape_png.cpp",
    "content": "#include \"ResData.h\"\nconst unsigned char __landscapePngData[115832] = {\n0x89, 0x50, 0x4E, 0x47, 0x0D, 0x0A, 0x1A, 0x0A, 0x00, 0x00, 0x00, 0x0D, 0x49, 0x48, 0x44, 0x52,\n0x00, 0x00, 0x05, 0x00, 0x00, 0x00, 0x03, 0x20, 0x08, 0x03, 0x00, 0x00, 0x00, 0x4B, 0x46, 0x3F,\n0xC9, 0x00, 0x00, 0x02, 0x28, 0x50, 0x4C, 0x54, 0x45, 0x0B, 0x4B, 0xAB, 0x10, 0x65, 0xCC, 0x13,\n0x6D, 0xD3, 0x0C, 0x54, 0xB9, 0x13, 0x78, 0xDB, 0x16, 0x88, 0xE5, 0x0A, 0x43, 0x9E, 0x09, 0x45,\n0xA2, 0x10, 0x60, 0xC5, 0x0A, 0x48, 0xA6, 0x11, 0x71, 0xD7, 0x1A, 0x8D, 0xE9, 0x46, 0x7C, 0xE1,\n0x12, 0x68, 0xCE, 0x17, 0x8F, 0xE8, 0x0D, 0x58, 0xBE, 0x23, 0xAA, 0xF5, 0x1C, 0x82, 0xE3, 0x1F,\n0x99, 0xF1, 0x25, 0xAE, 0xF5, 0x14, 0x57, 0xB8, 0x16, 0x7E, 0xE1, 0x21, 0x9E, 0xF2, 0x16, 0x84,\n0xE3, 0x21, 0xA3, 0xF3, 0x1E, 0xA2, 0xF1, 0x0E, 0x5C, 0xC2, 0x0C, 0x51, 0xB4, 0x10, 0x53, 0xB2,\n0x4B, 0x7D, 0xDF, 0x0B, 0x4E, 0xB0, 0x19, 0x78, 0xDA, 0x1C, 0x9B, 0xEF, 0x52, 0x83, 0xDE, 0x49,\n0x96, 0xEC, 0x29, 0xB9, 0xF6, 0x19, 0x5A, 0xBE, 0x12, 0x7E, 0xDE, 0x42, 0x79, 0xDF, 0x19, 0x91,\n0xEC, 0x29, 0xB3, 0xF4, 0x0D, 0x4F, 0xAE, 0x21, 0x7C, 0xE2, 0x3E, 0x87, 0xE7, 0x33, 0xA4, 0xF3,\n0x32, 0x9A, 0xF1, 0x22, 0x74, 0xDB, 0x2C, 0xC0, 0xF7, 0x10, 0x5A, 0xBD, 0x25, 0xB3, 0xF7, 0x33,\n0x82, 0xE6, 0x25, 0x76, 0xE1, 0x38, 0x73, 0xD9, 0x5F, 0xBD, 0xEB, 0x2B, 0xA5, 0xF4, 0x26, 0x84,\n0xE9, 0x1A, 0x8A, 0xE8, 0x59, 0x9E, 0xEE, 0x40, 0x9A, 0xF0, 0x3C, 0xA4, 0xF1, 0x4B, 0x82, 0xE3,\n0x43, 0xA2, 0xF0, 0x22, 0x5F, 0xC5, 0x53, 0x8A, 0xE5, 0x46, 0x92, 0xE8, 0x13, 0x82, 0xE0, 0x31,\n0x8A, 0xEA, 0x20, 0x93, 0xF1, 0x45, 0x84, 0xE4, 0x24, 0x80, 0xE5, 0x4A, 0x8D, 0xE2, 0x4B, 0xA2,\n0xEE, 0x50, 0x92, 0xEB, 0x3B, 0x9E, 0xF2, 0x0F, 0x6E, 0xD4, 0x46, 0x8F, 0xEA, 0x21, 0xA8, 0xF3,\n0x1E, 0x85, 0xEA, 0x2A, 0x9C, 0xEF, 0x12, 0x75, 0xDA, 0x33, 0xBD, 0xF0, 0x4A, 0x8C, 0xEA, 0x51,\n0xA1, 0xED, 0x20, 0x79, 0xDF, 0x45, 0x9B, 0xEE, 0x2D, 0x7D, 0xE7, 0x18, 0x64, 0xC9, 0x4A, 0x87,\n0xE6, 0x0E, 0x62, 0xCA, 0x30, 0x95, 0xEE, 0x39, 0x88, 0xE8, 0x13, 0x79, 0xDE, 0x19, 0x97, 0xEB,\n0x3C, 0x7C, 0xDF, 0x45, 0xC2, 0xEC, 0x4C, 0xA9, 0xED, 0x49, 0x88, 0xDE, 0x58, 0xA2, 0xDD, 0x23,\n0x8C, 0xEB, 0x3B, 0xAC, 0xF2, 0x1B, 0x6C, 0xD2, 0x2E, 0x68, 0xCF, 0x33, 0x8E, 0xED, 0x2A, 0x7A,\n0xE5, 0x32, 0x73, 0xD9, 0x29, 0x73, 0xDD, 0x1A, 0x73, 0xD6, 0x5D, 0xB4, 0xE8, 0x1C, 0x96, 0xEF,\n0x1F, 0x62, 0xC7, 0x35, 0xC4, 0xF2, 0x1B, 0x75, 0xDB, 0x23, 0x69, 0xD1, 0x3A, 0x97, 0xF0, 0x3C,\n0xD1, 0xF8, 0x57, 0xAE, 0xEA, 0x3C, 0xCD, 0xF5, 0x24, 0x95, 0xEE, 0x4F, 0x9D, 0xE9, 0x2B, 0x8A,\n0xEC, 0x54, 0xB4, 0xED, 0x36, 0xC8, 0xF7, 0x44, 0xAE, 0xF0, 0x42, 0x93, 0xEB, 0x4C, 0x92, 0xE5,\n0x4D, 0x98, 0xE8, 0x54, 0x99, 0xD9, 0x31, 0xC6, 0xF9, 0x46, 0x8A, 0xE5, 0x18, 0x95, 0xED, 0x5C,\n0xAC, 0xE2, 0x3A, 0x92, 0xEC, 0x48, 0xD6, 0xF6, 0x42, 0xB5, 0xEF, 0x2B, 0x91, 0xF1, 0x59, 0xC5,\n0xEC, 0x5A, 0x90, 0xE7, 0x2A, 0xAB, 0xF2, 0x58, 0xA7, 0xE4, 0x65, 0xE0, 0xE9, 0x56, 0xD6, 0xE6,\n0x4C, 0xD4, 0xE9, 0x2B, 0x68, 0xCF, 0x49, 0x9A, 0xED, 0x2F, 0xB6, 0xF0, 0x32, 0xAB, 0xF1, 0x5B,\n0x96, 0xE9, 0x37, 0xB6, 0xEF, 0x53, 0x9B, 0xE0, 0x4C, 0xCD, 0xE7, 0x4E, 0xD9, 0xF3, 0x55, 0xA2,\n0xE6, 0x2A, 0x9A, 0xF3, 0x50, 0xBB, 0xED, 0x2C, 0x81, 0xE3, 0x4F, 0xC9, 0xE9, 0x44, 0xD1, 0xF2,\n0x43, 0xA7, 0xF0, 0x42, 0xC7, 0xEA, 0x50, 0x95, 0xDF, 0x2D, 0x78, 0xE0, 0x3A, 0x8A, 0xEA, 0x60,\n0xE1, 0xF6, 0x66, 0xC7, 0xEA, 0x23, 0x74, 0xD3, 0x1E, 0x8D, 0xEF, 0x34, 0x7C, 0xE3, 0x75, 0xE7,\n0xF2, 0x45, 0xCD, 0xEB, 0x25, 0x8D, 0xEF, 0x58, 0xDC, 0xEF, 0x3A, 0xC6, 0xEE, 0x55, 0xDC, 0xF7,\n0x09, 0x47, 0xA9, 0x6A, 0xE3, 0xF3, 0x4F, 0x91, 0xDB, 0x61, 0xD1, 0xE8, 0x6A, 0xCE, 0xEA, 0x81,\n0xE8, 0xEE, 0x5E, 0xDB, 0xE1, 0x58, 0xD7, 0xE1, 0x1C, 0x60, 0xBC, 0x18, 0x50, 0xA6, 0x1B, 0x5B,\n0xB6, 0x7B, 0xE8, 0x63, 0xCA, 0x00, 0x01, 0xC2, 0x0B, 0x49, 0x44, 0x41, 0x54, 0x78, 0xDA, 0xE4,\n0x9D, 0xCB, 0x6B, 0x6B, 0x55, 0x14, 0xC6, 0x73, 0x5B, 0xF0, 0xA6, 0x42, 0xB8, 0x93, 0x3B, 0xB2,\n0x2F, 0xEC, 0xEC, 0x12, 0x08, 0x25, 0x19, 0x09, 0x05, 0x3B, 0x08, 0x41, 0xC8, 0x48, 0x24, 0x55,\n0x02, 0x85, 0x16, 0x02, 0x21, 0x01, 0xA9, 0x23, 0x27, 0xAD, 0x21, 0x38, 0x72, 0x2C, 0x8E, 0x9C,\n0xDC, 0x14, 0xC2, 0x99, 0x76, 0xA4, 0xFE, 0x7B, 0xAE, 0xB5, 0x1F, 0xF9, 0x4E, 0xB2, 0x1F, 0x6B,\n0x9D, 0x36, 0x55, 0x5B, 0xBF, 0xB5, 0xF7, 0x3E, 0xE7, 0x24, 0xF5, 0xDA, 0x36, 0x3B, 0xBF, 0x7C,\n0x6B, 0x3F, 0x4E, 0x6B, 0x7F, 0xFE, 0x7F, 0xF4, 0x81, 0x9B, 0x03, 0xAA, 0x7C, 0xC8, 0xC5, 0xC1,\n0x9F, 0x7F, 0x99, 0xA0, 0xA3, 0x3F, 0x33, 0x07, 0x04, 0x9E, 0x3C, 0xF8, 0xCB, 0x17, 0x6E, 0xFE,\n0xF8, 0x2B, 0xA9, 0x3F, 0xD6, 0xF5, 0x3D, 0x89, 0x9A, 0xB0, 0x52, 0xAC, 0x6B, 0xF9, 0xC3, 0xF2,\n0xFB, 0x64, 0xD0, 0x93, 0x1C, 0x54, 0x46, 0xDC, 0xE8, 0xB5, 0xD8, 0x92, 0x8A, 0x44, 0xAC, 0x1A,\n0x04, 0x44, 0x17, 0xED, 0xE6, 0x65, 0x7B, 0x78, 0xD9, 0x6E, 0xC7, 0xDA, 0x66, 0x97, 0xC2, 0x97,\n0x76, 0xB7, 0x39, 0x6F, 0xA6, 0x34, 0xEF, 0xDF, 0x7D, 0xDD, 0x5F, 0xC5, 0xD7, 0x77, 0x3F, 0xFE,\n0xF8, 0x53, 0x4A, 0x5F, 0xA0, 0xFC, 0xF8, 0xEB, 0x8F, 0x3F, 0xFE, 0x7A, 0xF7, 0xCB, 0x57, 0x1F,\n0xBF, 0x8A, 0x96, 0x5F, 0xEF, 0xBE, 0x54, 0xEB, 0x97, 0x07, 0x1F, 0x5F, 0x3E, 0xFC, 0x42, 0x65,\n0xF6, 0xEB, 0x2C, 0x5E, 0x7E, 0x99, 0xFD, 0x7C, 0x5D, 0xD2, 0xAF, 0xD7, 0x3F, 0xA7, 0x45, 0xCF,\n0xAE, 0x7D, 0x2D, 0xFE, 0x95, 0xA0, 0x7C, 0x49, 0xFF, 0xCF, 0x52, 0x7C, 0xA9, 0x17, 0xFD, 0xA4,\n0xF1, 0xF2, 0xCB, 0xDD, 0xAF, 0xE6, 0xD7, 0x84, 0x92, 0xD6, 0x8F, 0xE5, 0x5F, 0x3F, 0xBD, 0x16,\n0xF3, 0x66, 0x5A, 0xDD, 0x36, 0x5E, 0x54, 0x8A, 0x76, 0xF2, 0xF5, 0x6F, 0xB6, 0x8B, 0x75, 0xA1,\n0x9B, 0xB9, 0xB3, 0xCD, 0x53, 0x44, 0x65, 0xD5, 0x3E, 0xA9, 0xA6, 0x3F, 0x4D, 0x50, 0xF9, 0x4F,\n0xEA, 0x6D, 0x46, 0x7B, 0x54, 0xB8, 0x71, 0x87, 0x3D, 0xBD, 0x6A, 0x51, 0x7D, 0xE0, 0xE6, 0x88,\n0xE2, 0x03, 0xC5, 0x91, 0xA9, 0xB5, 0xFD, 0x84, 0x3E, 0x1C, 0xED, 0xEF, 0x6E, 0xE8, 0x34, 0xAD,\n0xCF, 0x3E, 0xAB, 0x7F, 0x56, 0x56, 0xFD, 0x0D, 0xC5, 0x77, 0x17, 0xF5, 0xEF, 0x82, 0xC3, 0x45,\n0xA3, 0xF1, 0x86, 0xF5, 0x1D, 0x55, 0x12, 0x5D, 0xEE, 0xC4, 0xD5, 0xD8, 0x19, 0x6D, 0xC4, 0x34,\n0xA3, 0xE3, 0xE9, 0x4D, 0x39, 0x5A, 0xAC, 0x65, 0x58, 0x22, 0x8F, 0xB5, 0x26, 0xA9, 0x08, 0xB4,\n0x18, 0x8C, 0x17, 0x8B, 0x31, 0x85, 0x29, 0xE5, 0xF3, 0xC2, 0x9E, 0x0E, 0x16, 0xA6, 0xA5, 0xEB,\n0xA2, 0x9D, 0x2A, 0xCD, 0x4D, 0x9D, 0x9C, 0x9C, 0xE7, 0x74, 0x87, 0xD3, 0xFE, 0xFC, 0x6A, 0xDE,\n0x8B, 0x45, 0xAF, 0xDB, 0x3D, 0xEB, 0x5E, 0xAD, 0xC7, 0x61, 0x22, 0x58, 0x9F, 0xDB, 0x42, 0x41,\n0x0F, 0x3C, 0xC4, 0x45, 0x8F, 0xCF, 0xD6, 0xF5, 0x30, 0xBB, 0x4E, 0x69, 0xB6, 0x29, 0xFE, 0xEF,\n0xE3, 0xE2, 0xFF, 0xEB, 0x5A, 0x39, 0x4C, 0x46, 0x77, 0x23, 0x12, 0x3F, 0xFD, 0x7C, 0x3E, 0xEF,\n0xE1, 0x97, 0x65, 0xDA, 0x8C, 0xE6, 0xC3, 0xE6, 0x9A, 0x98, 0x5D, 0xA9, 0x32, 0x2E, 0xCA, 0x2F,\n0x2A, 0x45, 0xF8, 0xFA, 0xBB, 0x27, 0x27, 0x9B, 0x6A, 0x25, 0x22, 0xEC, 0x97, 0x38, 0x0D, 0x9E,\n0x71, 0xDD, 0x19, 0x61, 0x54, 0xFB, 0xE4, 0x55, 0xE9, 0xAD, 0x5A, 0x7B, 0xA9, 0x90, 0x01, 0x08,\n0x1D, 0x6D, 0xC6, 0x87, 0x04, 0x00, 0xF7, 0x0F, 0x36, 0xF8, 0xB7, 0xBF, 0xFB, 0x2E, 0xC5, 0x3F,\n0x87, 0x3F, 0xA8, 0x5E, 0x67, 0xE4, 0xD5, 0x2F, 0x6C, 0xE5, 0x0B, 0x7F, 0xF5, 0xA6, 0xF1, 0xA6,\n0x71, 0x81, 0x20, 0x04, 0x12, 0xEB, 0x22, 0x1A, 0x11, 0x18, 0xA7, 0xE5, 0xC8, 0x12, 0xB0, 0xB5,\n0x1E, 0xF4, 0x40, 0x46, 0x4B, 0xB4, 0x7C, 0x98, 0x2C, 0xA3, 0x01, 0x00, 0x42, 0xDC, 0xEB, 0x7D,\n0x2C, 0xF0, 0x6E, 0x18, 0x33, 0xF1, 0xB8, 0xD8, 0x66, 0x31, 0xA0, 0x12, 0x7F, 0x47, 0x81, 0x7F,\n0xD0, 0x3D, 0x00, 0x28, 0xA9, 0x37, 0x8F, 0xA9, 0x37, 0xBF, 0x32, 0xFC, 0xF3, 0xA2, 0x53, 0x4B,\n0xC0, 0xB3, 0xAB, 0xA0, 0x38, 0x02, 0x42, 0xFC, 0x00, 0xE3, 0x2E, 0x52, 0x66, 0xA1, 0xAE, 0xE1,\n0x09, 0xA1, 0x9F, 0x89, 0x7F, 0x31, 0x02, 0x46, 0x0B, 0xBE, 0x01, 0x28, 0xFE, 0x9D, 0x32, 0xF3,\n0x36, 0xC4, 0xB0, 0x0B, 0x04, 0xFE, 0x69, 0x74, 0xDF, 0x84, 0xF2, 0x04, 0x6C, 0x13, 0xFD, 0xF0,\n0xAA, 0x52, 0xD0, 0xD5, 0x22, 0x78, 0xFD, 0x6D, 0x74, 0x26, 0xA1, 0x96, 0xF1, 0x08, 0x3B, 0x60,\n0x52, 0xC7, 0xEB, 0xBD, 0x1A, 0x00, 0xAC, 0xE6, 0xFF, 0xFE, 0xC3, 0xF6, 0xAF, 0x1A, 0x01, 0xAB,\n0x78, 0x40, 0x89, 0x7F, 0x88, 0x5A, 0x1C, 0x7F, 0x1F, 0x76, 0x03, 0x1D, 0xEC, 0x9E, 0x7E, 0x96,\n0xE7, 0x1F, 0xC4, 0xCC, 0xBB, 0xF0, 0xD0, 0xA3, 0xF0, 0x4D, 0xE3, 0xCD, 0x05, 0x45, 0xC3, 0x17,\n0xBE, 0x24, 0xD8, 0xED, 0x04, 0x41, 0x0F, 0x32, 0xF3, 0x10, 0x74, 0x45, 0x44, 0x4C, 0xE8, 0x86,\n0xA2, 0x54, 0xB8, 0xB7, 0xDC, 0xE4, 0xE8, 0xB7, 0xA4, 0x82, 0x03, 0xA1, 0x8E, 0xCA, 0x32, 0x68,\n0x43, 0x75, 0xA8, 0xCB, 0x87, 0x31, 0x36, 0xC4, 0x5B, 0xF0, 0x5B, 0xC4, 0x1E, 0xF9, 0x2C, 0x01,\n0xC0, 0x61, 0x2C, 0x29, 0x3E, 0x57, 0xAB, 0x7F, 0x15, 0x05, 0xA0, 0xE1, 0x1F, 0x15, 0x44, 0xD7,\n0xB0, 0xEE, 0xF0, 0xEC, 0x70, 0xBD, 0x05, 0x7D, 0x40, 0x22, 0xE3, 0x01, 0x25, 0xFE, 0xC1, 0x03,\n0xFE, 0xBC, 0x51, 0x66, 0xC4, 0xBF, 0x98, 0x1E, 0xAE, 0xC2, 0x7F, 0x95, 0xEA, 0xE7, 0xFE, 0xFF,\n0x8A, 0x96, 0xBF, 0x33, 0xAE, 0x68, 0xE3, 0x06, 0x90, 0xD1, 0x3E, 0xEF, 0x3D, 0x8D, 0x7F, 0xFD,\n0x66, 0x44, 0x71, 0xFC, 0x39, 0xEA, 0x0D, 0x16, 0xAE, 0xD2, 0x05, 0x19, 0xFD, 0x68, 0xC0, 0x00,\n0x42, 0x89, 0x5E, 0xE5, 0xBA, 0x20, 0xBA, 0x61, 0x5A, 0xD3, 0xB0, 0x57, 0x57, 0x07, 0xE0, 0x7F,\n0x1E, 0x7F, 0x4F, 0xF7, 0x80, 0x71, 0x25, 0xF8, 0x77, 0x14, 0x27, 0xA0, 0xEC, 0xFF, 0x0E, 0x32,\n0x59, 0x30, 0xF8, 0x07, 0x51, 0xCA, 0x4B, 0x49, 0x2F, 0x63, 0xD0, 0xFA, 0x3F, 0x0A, 0x12, 0xFB,\n0x3F, 0x32, 0x7D, 0xAE, 0xB8, 0x43, 0x63, 0x87, 0xFC, 0xDE, 0xA6, 0x3C, 0xF6, 0x7C, 0xF0, 0x55,\n0xCA, 0x03, 0xB6, 0x82, 0x60, 0x24, 0xE6, 0xF0, 0x87, 0xC3, 0x92, 0x8B, 0x75, 0x7C, 0xEB, 0x6D,\n0x5C, 0xB1, 0xEE, 0xCF, 0xEF, 0x12, 0x13, 0xC5, 0xD8, 0x84, 0x39, 0x1B, 0x44, 0xF9, 0x17, 0x7D,\n0xFB, 0x0D, 0xFB, 0x8F, 0xF3, 0x80, 0xE0, 0x5F, 0x00, 0x0A, 0x47, 0x40, 0x9B, 0x09, 0xA3, 0x3D,\n0x5B, 0xA7, 0x1F, 0xCE, 0x23, 0x19, 0xF0, 0x2C, 0xA1, 0x9F, 0xA5, 0xFC, 0x17, 0x04, 0xA4, 0xD8,\n0x50, 0x40, 0x3F, 0xFF, 0x80, 0x4B, 0xD9, 0xE9, 0x1B, 0x3F, 0xEC, 0xDA, 0x6F, 0x95, 0x4E, 0xC3,\n0xE8, 0xCE, 0x63, 0x04, 0x3C, 0xD7, 0xEA, 0xB6, 0xDF, 0x8C, 0x69, 0x18, 0x05, 0xE0, 0xC2, 0x78,\n0x3E, 0x1B, 0x60, 0xE1, 0x18, 0x11, 0xF7, 0x7F, 0x50, 0xAC, 0x57, 0xA1, 0x07, 0x52, 0x23, 0x40,\n0x30, 0xDA, 0xAB, 0xAB, 0x02, 0xF0, 0xCF, 0x17, 0x40, 0xC1, 0xB7, 0xFF, 0x98, 0x07, 0x24, 0xFC,\n0x85, 0x81, 0x2C, 0x38, 0xC2, 0x3F, 0x71, 0x1C, 0xF0, 0x1D, 0xFB, 0xBF, 0x98, 0x5C, 0x0E, 0xEC,\n0xC0, 0x57, 0x37, 0x20, 0xE4, 0x9C, 0x97, 0x62, 0x13, 0x81, 0x0D, 0xCA, 0x82, 0xD7, 0xFD, 0x1F,\n0x85, 0xC3, 0x1E, 0xC2, 0x5C, 0xE6, 0xFC, 0x5F, 0x0B, 0x6D, 0x8B, 0x42, 0x74, 0x80, 0x68, 0x7C,\n0xEF, 0x44, 0x6F, 0xED, 0x4C, 0xE2, 0xEA, 0xC4, 0x0C, 0xE0, 0xFA, 0x5B, 0x64, 0x60, 0x4F, 0x9D,\n0x8D, 0x20, 0xA1, 0x1D, 0x36, 0xA3, 0x1A, 0xF6, 0x6F, 0x9F, 0x42, 0xC0, 0xEE, 0x55, 0x1C, 0x16,\n0xD6, 0x48, 0x99, 0x43, 0xD7, 0x1E, 0xAE, 0x12, 0x0A, 0xDC, 0x1F, 0x35, 0xB3, 0x84, 0x8C, 0xE9,\n0x2B, 0x37, 0xB3, 0x94, 0x02, 0xFB, 0x47, 0xA0, 0xE3, 0x12, 0x88, 0x70, 0xC7, 0xD0, 0x43, 0xE5,\n0x80, 0xA5, 0x5D, 0x33, 0xB6, 0x20, 0xE0, 0x23, 0xFC, 0xDF, 0x6D, 0x33, 0xA1, 0x62, 0xE3, 0x85,\n0x6A, 0x5F, 0x16, 0x03, 0xB8, 0x3F, 0x5B, 0x39, 0x8A, 0x31, 0x12, 0x5F, 0xC4, 0x24, 0xA1, 0x56,\n0xC0, 0xC0, 0x72, 0x17, 0x14, 0x7C, 0xE0, 0x8D, 0xEF, 0xD7, 0x2D, 0x34, 0x14, 0xA4, 0xCA, 0x93,\n0x20, 0xFF, 0x61, 0xF6, 0x55, 0x4F, 0x82, 0x37, 0x23, 0x2D, 0x11, 0x80, 0x88, 0x4D, 0x00, 0x1E,\n0x45, 0xF8, 0x77, 0x60, 0x2A, 0xB2, 0xE0, 0xF8, 0xFC, 0x07, 0x74, 0x6A, 0xA6, 0x3D, 0x9C, 0x01,\n0x74, 0x23, 0x81, 0x8D, 0xC6, 0x45, 0xE8, 0x00, 0x99, 0x80, 0xEB, 0x16, 0x70, 0x54, 0xCA, 0x7F,\n0xA7, 0xBE, 0x7A, 0x0C, 0x06, 0x6A, 0xC5, 0x82, 0x7B, 0x8F, 0xE8, 0x00, 0xD1, 0x00, 0x80, 0xB6,\n0x66, 0x14, 0x02, 0xB0, 0xC0, 0x7B, 0xC4, 0x47, 0x61, 0x40, 0xE8, 0xFD, 0x84, 0x69, 0xC0, 0xBF,\n0x40, 0xC3, 0x2A, 0x1E, 0x30, 0x9E, 0xFF, 0x86, 0xC1, 0xCD, 0x99, 0x83, 0xC9, 0x59, 0x1C, 0x3D,\n0x48, 0x42, 0xC3, 0xC1, 0xBA, 0x59, 0x52, 0x1B, 0x03, 0x80, 0x78, 0x42, 0x1E, 0x06, 0x4C, 0xEB,\n0x0C, 0x73, 0x1F, 0xF4, 0x6D, 0x53, 0x74, 0x53, 0x58, 0x0F, 0x00, 0xF8, 0x94, 0xFC, 0x17, 0x1E,\n0x10, 0x2F, 0x14, 0x55, 0x3F, 0xFE, 0x17, 0x06, 0x3D, 0xAA, 0xE3, 0x5F, 0x87, 0x1B, 0xD7, 0x9F,\n0xD0, 0xB1, 0x42, 0xFA, 0xD9, 0x1A, 0xAA, 0xDC, 0x93, 0xD7, 0xCE, 0x01, 0x40, 0x3D, 0xFB, 0xFE,\n0xCB, 0xF6, 0xAF, 0x32, 0x01, 0xF5, 0x0A, 0xF9, 0x97, 0x8A, 0xA3, 0x4D, 0x03, 0xB8, 0x9B, 0xD2,\n0xFE, 0xBB, 0xEC, 0xF8, 0x5F, 0x38, 0x15, 0x4C, 0xC5, 0x3B, 0xC0, 0x06, 0x8F, 0xFA, 0x85, 0x0E,\n0x90, 0x0B, 0x79, 0x40, 0x78, 0xBD, 0x06, 0x5D, 0x4D, 0xD9, 0xF1, 0x2D, 0xF9, 0xE0, 0xEA, 0x0E,\n0x3D, 0x60, 0xCB, 0x86, 0x30, 0x44, 0xE2, 0x9B, 0xB4, 0x05, 0x5C, 0x86, 0x83, 0x80, 0x7E, 0x26,\n0x18, 0x7D, 0x95, 0xCF, 0x7C, 0x0F, 0x4E, 0x4E, 0x84, 0x00, 0x7F, 0x8C, 0xBA, 0x58, 0x14, 0xE5,\n0xA9, 0x60, 0x6A, 0xC0, 0xBF, 0x98, 0x60, 0x01, 0xAB, 0x12, 0x10, 0xB8, 0x0B, 0xE2, 0xCC, 0xCD,\n0x2E, 0x74, 0x09, 0x2B, 0xDC, 0x80, 0x7A, 0x21, 0x03, 0x83, 0x09, 0xE0, 0xB4, 0x7E, 0x36, 0xDC,\n0xA3, 0xC0, 0xFC, 0x47, 0x86, 0x80, 0x10, 0xC6, 0xFF, 0x6C, 0x09, 0x26, 0x42, 0xAC, 0x55, 0xC5,\n0xF8, 0x9F, 0x8A, 0x80, 0xFD, 0x73, 0xB5, 0x9A, 0x19, 0x39, 0xF0, 0x79, 0x04, 0x0E, 0x0A, 0x37,\n0xA4, 0xBB, 0x59, 0x0B, 0x79, 0xFC, 0x0F, 0x0C, 0xB4, 0xFD, 0x8A, 0x8A, 0xED, 0x55, 0x4B, 0x0A,\n0x25, 0x03, 0x6F, 0x36, 0xF2, 0x1A, 0x9C, 0x03, 0x80, 0x7A, 0x08, 0xBE, 0x2A, 0x02, 0x8A, 0x06,\n0x10, 0x12, 0xF8, 0x87, 0xA8, 0xAD, 0x27, 0xC1, 0x71, 0xFE, 0x1D, 0x50, 0xA1, 0x78, 0xAF, 0x05,\n0xE0, 0xA9, 0x01, 0x9F, 0x6F, 0xBE, 0xE3, 0x04, 0x98, 0x60, 0x17, 0x75, 0x80, 0x9C, 0x05, 0x97,\n0x0D, 0xA0, 0x23, 0xE1, 0x0E, 0x1C, 0x20, 0x81, 0x8F, 0x2A, 0x3F, 0x90, 0x37, 0x80, 0x37, 0xAB,\n0x23, 0x3C, 0x60, 0xC2, 0x02, 0xA2, 0xF7, 0x71, 0x4C, 0xCA, 0x9F, 0xD5, 0x59, 0x95, 0x53, 0x20,\n0x2A, 0x83, 0x44, 0x14, 0xE4, 0x0C, 0x8B, 0xA1, 0x63, 0x5F, 0x93, 0x0F, 0xCD, 0x9C, 0xCE, 0x1F,\n0x49, 0xC0, 0x28, 0x26, 0xC0, 0x0F, 0x3B, 0xA1, 0x80, 0x15, 0x30, 0x29, 0x08, 0xAA, 0xFC, 0x1F,\n0x08, 0x08, 0xCD, 0xF2, 0x04, 0xDC, 0x98, 0x00, 0x06, 0xF7, 0xC2, 0x51, 0xC0, 0x43, 0x8C, 0x57,\n0x9E, 0xE1, 0x87, 0x92, 0x08, 0x78, 0xAE, 0x57, 0x33, 0xA7, 0x21, 0x08, 0x78, 0x49, 0x8D, 0x1F,\n0xD8, 0x0D, 0xA3, 0x10, 0xFD, 0x1F, 0x1C, 0x20, 0xE6, 0x3E, 0xFC, 0x04, 0x48, 0x02, 0x81, 0x01,\n0xFF, 0xD2, 0x06, 0xB0, 0x75, 0x53, 0x7B, 0x3D, 0xD3, 0x1F, 0xFF, 0xA8, 0x07, 0x3C, 0x4A, 0x07,\n0x3D, 0x29, 0xF9, 0x3F, 0x60, 0xF0, 0x9D, 0x8E, 0x7F, 0x98, 0x0B, 0xE6, 0xF4, 0xD7, 0xE5, 0xBF,\n0x29, 0x07, 0x58, 0x9E, 0x0A, 0x6E, 0xF8, 0xF1, 0xBF, 0xA5, 0x25, 0x1F, 0x37, 0x7C, 0x61, 0x9A,\n0x11, 0x1D, 0x4A, 0xC2, 0x38, 0xC9, 0xC6, 0xD1, 0x07, 0x14, 0xD8, 0x3E, 0x34, 0x2C, 0xE2, 0x9E,\n0xED, 0xA8, 0xB0, 0x7F, 0x29, 0xA1, 0xF7, 0xC7, 0xF9, 0x87, 0x34, 0xD8, 0x65, 0xC1, 0xC8, 0x7F,\n0xB7, 0x45, 0x40, 0xE4, 0xBF, 0xA4, 0x0C, 0x2C, 0x8C, 0xFB, 0xE3, 0x38, 0x3B, 0x8B, 0x61, 0x27,\n0x9C, 0x08, 0x01, 0xFF, 0x64, 0x0F, 0xC8, 0x21, 0xE8, 0x01, 0x4B, 0x6C, 0xC8, 0xFF, 0xE5, 0xC4,\n0xEC, 0x73, 0x2E, 0x10, 0x00, 0x4F, 0x70, 0x7D, 0x8B, 0xFE, 0x0F, 0x2A, 0xFB, 0x3F, 0xF3, 0xE1,\n0x35, 0x4E, 0x05, 0x23, 0x10, 0xFC, 0xCB, 0xAB, 0xB5, 0x4A, 0x29, 0xEC, 0x6C, 0x9B, 0x8E, 0x81,\n0x48, 0x6A, 0x28, 0x82, 0xF3, 0x9A, 0x96, 0x7F, 0x2F, 0x09, 0x82, 0x8F, 0x73, 0x80, 0xA2, 0x44,\n0xFE, 0xC1, 0x03, 0xEA, 0xF8, 0xC7, 0x26, 0xF0, 0x5D, 0x89, 0x7F, 0x59, 0x9D, 0x9A, 0xD5, 0x80,\n0x6E, 0x20, 0x90, 0xF0, 0x97, 0x72, 0x80, 0xEB, 0x1E, 0x90, 0x79, 0x67, 0xD0, 0xE7, 0x4E, 0x4C,\n0x3E, 0xCC, 0xED, 0xC8, 0x9D, 0x46, 0x0C, 0xE0, 0x4D, 0x70, 0xDC, 0x98, 0x0A, 0x06, 0xE8, 0xA2,\n0x0D, 0xC7, 0x64, 0xE9, 0x3E, 0xA7, 0x1D, 0xFE, 0x3A, 0x1A, 0x0F, 0x58, 0xE4, 0x82, 0x33, 0xA6,\n0xAE, 0x71, 0x14, 0xA4, 0xA6, 0xA0, 0xFB, 0x73, 0xBD, 0x3C, 0xFF, 0x7A, 0xDD, 0x8C, 0x57, 0xB2,\n0x07, 0x03, 0x95, 0x33, 0xC6, 0x60, 0x38, 0xF2, 0x17, 0x10, 0x90, 0x0A, 0xF8, 0x27, 0x7A, 0x40,\n0x6A, 0x67, 0x22, 0x01, 0x7D, 0x72, 0x1D, 0xF2, 0x2E, 0xF4, 0x80, 0x54, 0x0C, 0xAC, 0x93, 0x40,\n0x87, 0x07, 0xDC, 0x3A, 0xFF, 0x90, 0x05, 0x5F, 0x9A, 0xF5, 0x2F, 0x48, 0x7A, 0xC3, 0x2A, 0xF9,\n0x3F, 0x98, 0x40, 0xE4, 0x15, 0xD4, 0xAF, 0x58, 0xBA, 0x24, 0xB8, 0x3C, 0xEF, 0x5B, 0xB2, 0x7F,\n0xDE, 0x01, 0xBE, 0x3E, 0xFF, 0xF7, 0x6C, 0x1E, 0x50, 0xE6, 0x1F, 0x3C, 0xA0, 0xC8, 0xBF, 0x03,\n0x2C, 0x07, 0x84, 0xFF, 0x13, 0x64, 0x47, 0xFF, 0x2C, 0xFF, 0xDE, 0xA4, 0x1C, 0xA0, 0x6D, 0xAC,\n0x07, 0xE4, 0x16, 0xC6, 0x8F, 0xEA, 0xD2, 0x5F, 0x94, 0x26, 0x46, 0x56, 0xB2, 0x9F, 0x95, 0x31,\n0x03, 0xE8, 0xDA, 0xD0, 0x01, 0xC6, 0x1B, 0x16, 0x12, 0x60, 0xD0, 0x4F, 0xF0, 0x80, 0x18, 0x26,\n0x8A, 0x55, 0x4E, 0x83, 0x49, 0xD8, 0x00, 0x92, 0xD7, 0x6D, 0xB5, 0x99, 0x10, 0xA6, 0x00, 0x51,\n0x4E, 0x0A, 0xCA, 0x81, 0xA9, 0x26, 0xB0, 0xB7, 0x3E, 0x18, 0xC7, 0x9C, 0xA2, 0x98, 0xC9, 0x0A,\n0x26, 0x80, 0xC5, 0x99, 0x10, 0x2C, 0x3B, 0x0C, 0xE1, 0x87, 0x61, 0x40, 0xAE, 0x80, 0x77, 0x3A,\n0x1E, 0xB3, 0x00, 0x5A, 0x94, 0x1F, 0xAB, 0x35, 0xEE, 0x8F, 0x4A, 0x3A, 0x56, 0x00, 0x9C, 0x40,\n0x59, 0x04, 0x12, 0xFE, 0x96, 0x2A, 0x03, 0x88, 0xF1, 0xBF, 0x16, 0x3A, 0x32, 0xCE, 0xED, 0x32,\n0x98, 0x57, 0xB5, 0x08, 0xF0, 0x09, 0xCB, 0x01, 0x35, 0x02, 0xFF, 0x74, 0x04, 0xE4, 0x05, 0xD0,\n0x32, 0x01, 0xD5, 0xFC, 0x3B, 0xC5, 0xFC, 0xEF, 0x9B, 0xB8, 0x03, 0xC4, 0x23, 0xE4, 0xFD, 0xDC,\n0x04, 0x30, 0xC5, 0xCA, 0xED, 0x99, 0x03, 0x73, 0xD0, 0x5D, 0x4E, 0x0D, 0x01, 0x8F, 0x73, 0x73,\n0xC0, 0xF8, 0xE4, 0xA4, 0x83, 0xEC, 0x00, 0x7D, 0xD7, 0x04, 0xFD, 0x04, 0x61, 0x41, 0x74, 0x91,\n0x0F, 0x2A, 0x03, 0x6C, 0x00, 0x91, 0x34, 0xAC, 0x60, 0x67, 0xFA, 0xE6, 0xED, 0x6F, 0x36, 0x80,\n0x64, 0x83, 0x1B, 0x0C, 0x00, 0xA6, 0x3D, 0xE0, 0xA1, 0x07, 0x20, 0xF8, 0xA7, 0xF0, 0x80, 0xB8,\n0x12, 0x67, 0x42, 0x62, 0xEC, 0x0D, 0x3D, 0xE0, 0x21, 0x13, 0x50, 0x01, 0x75, 0x67, 0x01, 0xF5,\n0xFC, 0xBB, 0x9D, 0x37, 0x35, 0x2A, 0x8A, 0xCB, 0xF6, 0xE5, 0xC0, 0xCE, 0x00, 0x6B, 0x2C, 0xE0,\n0x44, 0x03, 0x40, 0x37, 0xB6, 0x22, 0x19, 0x40, 0x40, 0x70, 0x3D, 0x99, 0xE1, 0x06, 0x20, 0x34,\n0x0E, 0xF0, 0xD5, 0xA1, 0xEF, 0xF9, 0xC7, 0x01, 0x8F, 0x24, 0xFC, 0x61, 0x39, 0x60, 0x86, 0x7E,\n0x38, 0x55, 0xF0, 0x0F, 0x59, 0xB0, 0xF5, 0x7F, 0xA2, 0x03, 0xB4, 0x59, 0xB0, 0xC5, 0x1F, 0xD5,\n0x25, 0xD6, 0x01, 0xD2, 0x09, 0x26, 0x44, 0x90, 0x05, 0x73, 0x1F, 0x09, 0xE6, 0x7F, 0x83, 0x4F,\n0x4E, 0xF0, 0x4F, 0x18, 0x04, 0x6C, 0xF9, 0xF9, 0xBA, 0xCE, 0x44, 0x96, 0x37, 0x80, 0x03, 0xA1,\n0x8E, 0xC7, 0x05, 0xF2, 0x5F, 0x39, 0x0B, 0x56, 0x7B, 0xC0, 0x1E, 0x16, 0x40, 0x0B, 0x08, 0xC4,\n0xFA, 0xE7, 0x14, 0x83, 0xF0, 0x1C, 0xF8, 0x27, 0x0A, 0xFC, 0xD3, 0x8C, 0x03, 0x46, 0xB6, 0x9F,\n0xC4, 0xE4, 0x47, 0x00, 0xA9, 0x48, 0x60, 0xEF, 0x55, 0xDB, 0x00, 0x32, 0x54, 0x02, 0xB0, 0x6D,\n0xFD, 0x1F, 0xF3, 0x2F, 0x17, 0x6E, 0xEF, 0x77, 0x0E, 0x7B, 0x50, 0xCB, 0xF2, 0x2F, 0xEF, 0x00,\n0xD1, 0x06, 0xC3, 0xDA, 0xF6, 0x0C, 0x5D, 0xBA, 0xF6, 0x4A, 0xD6, 0x3F, 0x3F, 0xCD, 0x03, 0x6E,\n0x15, 0x80, 0xD8, 0x12, 0x72, 0x90, 0xC5, 0xDF, 0xC1, 0xAA, 0xC1, 0x06, 0x10, 0x8D, 0x07, 0x64,\n0x97, 0x27, 0x38, 0x40, 0xAE, 0xCE, 0xFF, 0x51, 0x45, 0xBA, 0xEB, 0xE0, 0x57, 0x9E, 0x0F, 0xE6,\n0xEB, 0xC0, 0xFE, 0x05, 0xC3, 0x80, 0xFE, 0x12, 0x08, 0x14, 0x1C, 0x20, 0x4B, 0xE8, 0xCB, 0xD0,\n0x82, 0xF1, 0x37, 0x96, 0xC3, 0x2E, 0x07, 0x6C, 0x2A, 0x55, 0x69, 0x4B, 0xC8, 0x95, 0x04, 0x0A,\n0xEC, 0x8A, 0x83, 0xFF, 0xCA, 0x8F, 0xC2, 0x5D, 0x81, 0x7F, 0xB2, 0x05, 0x9C, 0x69, 0xC5, 0xF9,\n0x6F, 0xE0, 0x36, 0x13, 0x3B, 0x42, 0x60, 0x69, 0xF3, 0xD1, 0xAD, 0xE4, 0xFF, 0xFA, 0x4D, 0xA5,\n0x0A, 0xB7, 0xFA, 0x45, 0x7E, 0x59, 0xC7, 0xCC, 0x3F, 0x51, 0x1D, 0x2E, 0x58, 0x00, 0xA8, 0x72,\n0x80, 0xE1, 0x70, 0x36, 0x4E, 0x5E, 0xF3, 0x18, 0x60, 0x45, 0x02, 0xEA, 0x05, 0xFC, 0x89, 0x13,\n0x21, 0xC8, 0x7F, 0x45, 0x06, 0x62, 0x01, 0xB4, 0x3C, 0x0C, 0x48, 0x88, 0x53, 0x38, 0x40, 0xAE,\n0x2B, 0xA3, 0xB7, 0xB4, 0x4B, 0x01, 0xDD, 0x39, 0xA0, 0xC8, 0xD5, 0xCE, 0x86, 0x4C, 0x8F, 0x5B,\n0xB1, 0xE1, 0x3F, 0x1C, 0xB9, 0x72, 0x99, 0x26, 0xBD, 0x1F, 0x9A, 0xD5, 0x62, 0x98, 0x0E, 0x85,\n0x4E, 0xC6, 0x24, 0x88, 0x95, 0xC7, 0x8B, 0xC0, 0xBF, 0x2D, 0x12, 0xF0, 0x04, 0x1B, 0x80, 0xA5,\n0x38, 0xCB, 0xF8, 0xBF, 0x43, 0x34, 0xA6, 0xCE, 0x9E, 0x43, 0x71, 0xF6, 0x1E, 0xC6, 0x70, 0xAC,\n0xF3, 0x7F, 0x54, 0xCF, 0xE6, 0xE7, 0x7A, 0x0D, 0x9B, 0x5A, 0xB9, 0xA1, 0x0B, 0xCD, 0xEB, 0x2A,\n0xFA, 0x3F, 0xC8, 0x7E, 0xC2, 0x72, 0x2B, 0x3A, 0xC0, 0x9B, 0x69, 0xDC, 0x01, 0x62, 0x70, 0x47,\n0xEB, 0x00, 0x5F, 0xC4, 0x0A, 0xE8, 0x7F, 0x24, 0x09, 0x06, 0xFF, 0x44, 0x02, 0x0A, 0x13, 0xC0,\n0x38, 0x1E, 0xBC, 0xAB, 0x83, 0x7F, 0x79, 0x9D, 0xBE, 0x69, 0x28, 0x1D, 0xE0, 0x77, 0x17, 0xEC,\n0xEC, 0xFC, 0xBA, 0x67, 0x8A, 0x1D, 0x77, 0xBE, 0x04, 0xFE, 0xB0, 0x33, 0x6E, 0x49, 0x68, 0xCB,\n0x84, 0x43, 0x20, 0xAD, 0xA8, 0x42, 0x92, 0x9B, 0x6C, 0x7C, 0x07, 0x9C, 0x40, 0xA2, 0x07, 0x1C,\n0xA8, 0x82, 0xBC, 0x82, 0x1E, 0x80, 0xC3, 0x26, 0x6E, 0xE5, 0x24, 0x09, 0x33, 0xC0, 0xA2, 0x03,\n0x4C, 0xE9, 0x30, 0x3C, 0x9B, 0x6D, 0x5D, 0xEC, 0x00, 0x05, 0x00, 0x97, 0x81, 0xD8, 0xD5, 0x86,\n0x1A, 0x80, 0x77, 0xE7, 0x4D, 0xB5, 0xEE, 0x89, 0x6B, 0x5C, 0xE4, 0x97, 0xB5, 0x00, 0xFF, 0x14,\n0xF3, 0x20, 0x80, 0x9C, 0xE0, 0x00, 0x97, 0x30, 0x7C, 0xAB, 0xA3, 0x3D, 0xE0, 0x83, 0xBD, 0x26,\n0xE3, 0xEF, 0xE5, 0xA1, 0xCF, 0xF2, 0xEF, 0x59, 0x2C, 0x60, 0x4D, 0x89, 0x3F, 0x1E, 0x05, 0x34,\n0x6C, 0xCB, 0xFA, 0x3F, 0xAC, 0x06, 0xD4, 0x02, 0xB0, 0x5E, 0x57, 0x3B, 0xC0, 0x46, 0x63, 0x95,\n0xEB, 0x62, 0x25, 0x20, 0x06, 0x00, 0xCD, 0x85, 0x73, 0x86, 0x84, 0xCA, 0x16, 0x77, 0x87, 0xA4,\n0x0B, 0x6C, 0xE1, 0x80, 0xFE, 0x95, 0x68, 0x3C, 0x04, 0x27, 0x2D, 0xD9, 0xFF, 0x21, 0x07, 0x2E,\n0x94, 0x08, 0x6C, 0xB7, 0x9B, 0x7A, 0xE9, 0x53, 0xE0, 0x9E, 0x8E, 0x7F, 0x67, 0x57, 0x1A, 0xE1,\n0xBE, 0x30, 0xB3, 0x6D, 0xEB, 0x23, 0x52, 0xE0, 0x28, 0x7C, 0x21, 0x3D, 0x01, 0x79, 0x10, 0x50,\n0x4D, 0xC0, 0xA6, 0x5E, 0xED, 0x76, 0x5B, 0x3B, 0xB4, 0x61, 0x32, 0xE0, 0x8E, 0x0A, 0x81, 0x1D,\n0x38, 0xC0, 0x5C, 0x17, 0x34, 0xCF, 0x8A, 0x0E, 0xB0, 0x25, 0x3A, 0xC0, 0x97, 0x69, 0xFE, 0xC0,\n0xBF, 0x2D, 0x8F, 0x01, 0xEA, 0x87, 0x00, 0x8F, 0xB0, 0x09, 0x58, 0x20, 0x20, 0xF1, 0xEF, 0x3D,\n0xEE, 0x82, 0x20, 0xF1, 0x8F, 0x09, 0xA8, 0x1B, 0x03, 0x24, 0xED, 0x4C, 0xBD, 0xD3, 0xE3, 0x34,\n0x98, 0x4F, 0xF9, 0x8C, 0x5B, 0x3A, 0x62, 0x5E, 0x64, 0xC4, 0x04, 0x5C, 0x62, 0xC5, 0x4B, 0xE4,\n0xE8, 0x9F, 0x44, 0xDA, 0x91, 0x68, 0x60, 0x00, 0x3B, 0xAD, 0x48, 0x97, 0xEE, 0xC4, 0xF9, 0xC7,\n0x04, 0xD4, 0xBC, 0x51, 0x8A, 0x61, 0x7B, 0x9B, 0x04, 0xC4, 0x34, 0xF0, 0x39, 0x26, 0x81, 0xB3,\n0x51, 0x41, 0x0F, 0xA4, 0x8F, 0xDB, 0x37, 0x80, 0xE5, 0x45, 0x30, 0x5C, 0x33, 0x99, 0x30, 0x08,\n0x28, 0x4F, 0x03, 0xF7, 0x9E, 0x83, 0x7F, 0x43, 0xD5, 0xC8, 0x46, 0xB1, 0x60, 0x75, 0x14, 0xF4,\n0xE3, 0x8A, 0xBB, 0x60, 0xE5, 0x32, 0x91, 0x65, 0xF2, 0x1E, 0x30, 0x70, 0x82, 0xD6, 0x01, 0xBE,\n0xC6, 0xD1, 0x3F, 0xE6, 0x9F, 0x09, 0xFD, 0x3A, 0x18, 0x9D, 0xB4, 0xAB, 0x60, 0xEC, 0x52, 0x68,\n0xAA, 0xCC, 0xB7, 0x2C, 0xFD, 0xF8, 0x40, 0x77, 0x81, 0x79, 0xF7, 0x5E, 0x05, 0xC0, 0x3A, 0xCB,\n0x6C, 0x83, 0x13, 0x1D, 0x20, 0x2F, 0x82, 0x59, 0x9B, 0x06, 0x36, 0xA7, 0x0E, 0x84, 0xFC, 0xC0,\n0x14, 0x77, 0xC8, 0x9A, 0x1A, 0x02, 0x9A, 0x3B, 0x46, 0xC6, 0x0D, 0xA0, 0x7B, 0x1C, 0xF9, 0xAF,\n0x68, 0x00, 0xD9, 0xFF, 0x51, 0xD5, 0x2D, 0x83, 0xB1, 0x2A, 0xA4, 0x77, 0xCA, 0x98, 0xFD, 0x5F,\n0xBB, 0x22, 0x01, 0x4F, 0x54, 0xFC, 0xEB, 0xF5, 0xF8, 0x3E, 0x08, 0xE2, 0x88, 0x99, 0x64, 0xBA,\n0xCA, 0x68, 0x7A, 0x30, 0xDA, 0x3E, 0xFF, 0x58, 0x20, 0x9F, 0x34, 0x19, 0xAD, 0xF0, 0x7F, 0x67,\n0xEE, 0xDE, 0xD0, 0xAA, 0x25, 0x93, 0x55, 0xF8, 0x67, 0x09, 0xA8, 0xB0, 0xF6, 0x56, 0xA2, 0x05,\n0xB4, 0xF8, 0xEB, 0x50, 0x88, 0x0E, 0x10, 0xC7, 0xF5, 0x94, 0xA6, 0x3C, 0x09, 0xAC, 0x71, 0x80,\n0x2F, 0xE4, 0xF6, 0x07, 0x4F, 0x05, 0x20, 0x47, 0xA5, 0x75, 0x80, 0xB2, 0xFF, 0xCB, 0xDF, 0x08,\n0x06, 0x2D, 0xFB, 0x3F, 0xC2, 0x1F, 0x55, 0x05, 0x01, 0xEB, 0x4E, 0x44, 0x37, 0xC9, 0x01, 0x1A,\n0xFC, 0x7D, 0x4F, 0x04, 0xFC, 0x74, 0x69, 0xF1, 0xC7, 0xE8, 0x1B, 0x51, 0xA5, 0x23, 0x76, 0x86,\n0xD8, 0x93, 0xA9, 0x8D, 0xD6, 0x31, 0xD2, 0x84, 0xB8, 0x11, 0xBC, 0xF1, 0x7C, 0x93, 0x87, 0x00,\n0x2D, 0xFE, 0xF2, 0x1E, 0x10, 0xFE, 0xCF, 0x32, 0x70, 0x20, 0xFA, 0xBF, 0xB6, 0x53, 0x53, 0xAD,\n0xB9, 0x26, 0xFF, 0xA5, 0x50, 0x2D, 0x04, 0x94, 0x92, 0x5E, 0xB4, 0xB8, 0x1F, 0xC2, 0xD6, 0xF9,\n0xC7, 0x4A, 0xEE, 0xC0, 0xE3, 0x96, 0x0B, 0xA4, 0xF2, 0x7F, 0x1C, 0x32, 0x01, 0x4F, 0x2A, 0xF9,\n0x3F, 0xA7, 0x62, 0xAC, 0xE1, 0x5F, 0xC7, 0x10, 0x50, 0x56, 0x8B, 0xA3, 0x43, 0x35, 0xE3, 0x00,\n0xB9, 0xE2, 0xE9, 0xA0, 0x27, 0x6F, 0x3A, 0xC0, 0x57, 0x39, 0x01, 0x4C, 0xEC, 0x53, 0x13, 0x70,\n0x4F, 0xBB, 0x17, 0xAE, 0x06, 0xC9, 0xFE, 0xCF, 0xE9, 0x48, 0x48, 0x80, 0xA9, 0xBE, 0x37, 0xF8,\n0x7B, 0xBF, 0x2B, 0x27, 0xC1, 0x75, 0x2F, 0xBE, 0x15, 0x4C, 0xDE, 0x01, 0x36, 0x9C, 0xBE, 0x27,\n0xC2, 0xF9, 0xBB, 0xBF, 0xB8, 0x13, 0x8B, 0x40, 0xA6, 0xA2, 0x73, 0x82, 0x8E, 0x7F, 0x9C, 0x05,\n0xC3, 0x01, 0x46, 0x8E, 0xEC, 0xFF, 0x20, 0x61, 0xF8, 0x65, 0xD2, 0xF1, 0x7D, 0x75, 0xD2, 0x11,\n0xFD, 0x9F, 0xCE, 0x02, 0x8E, 0x8B, 0xF6, 0xB0, 0x6D, 0x35, 0xDC, 0xA2, 0x07, 0xE4, 0xB7, 0xBE,\n0x89, 0xBE, 0x60, 0x00, 0x05, 0xFE, 0xA5, 0x6E, 0x8A, 0xFA, 0x0C, 0xFC, 0x2B, 0x4F, 0x84, 0xC8,\n0x2E, 0x50, 0xF6, 0x7F, 0x3E, 0x24, 0x00, 0x56, 0xF2, 0x7F, 0x5E, 0x82, 0x07, 0xA4, 0x27, 0xAD,\n0x3A, 0xF0, 0x80, 0x19, 0xFF, 0xE7, 0x10, 0x28, 0x3B, 0x40, 0xF8, 0xC0, 0xF0, 0x46, 0x30, 0xE5,\n0x7C, 0x38, 0x0B, 0xC0, 0xBD, 0x97, 0xC8, 0x3E, 0xF0, 0x4F, 0x47, 0x40, 0xF0, 0x4F, 0x0B, 0x40,\n0x39, 0x0B, 0x66, 0x00, 0x26, 0x3C, 0x60, 0xE0, 0xFF, 0x4E, 0x19, 0x7F, 0xA6, 0x12, 0xE2, 0x24,\n0xFE, 0xC1, 0x03, 0xE6, 0xF6, 0x02, 0x5B, 0xFF, 0x37, 0xA2, 0x20, 0xF9, 0xAD, 0x70, 0x0C, 0x3C,\n0xEF, 0xFE, 0xCA, 0xAD, 0xA5, 0x9F, 0xCB, 0x82, 0xA3, 0xCE, 0x0F, 0x47, 0x28, 0xE7, 0x00, 0xE1,\n0xFF, 0xE2, 0x13, 0x21, 0x9D, 0xC0, 0xFF, 0x51, 0x11, 0x3D, 0xE0, 0x02, 0xFC, 0xAB, 0x44, 0xC0,\n0xF9, 0x9D, 0xB8, 0x11, 0xAE, 0x67, 0x83, 0x3C, 0x60, 0x0E, 0x81, 0x01, 0xE6, 0xB2, 0xF3, 0x1F,\n0xD0, 0x16, 0xF9, 0x07, 0xA5, 0x6F, 0xC6, 0x15, 0xAA, 0x9B, 0xA5, 0x3A, 0xF8, 0x37, 0xEF, 0x6F,\n0x2D, 0xFF, 0x2D, 0xBD, 0x52, 0x92, 0x07, 0x2C, 0x77, 0x00, 0x31, 0xFF, 0x45, 0x48, 0x1D, 0x11,\n0xCF, 0x07, 0x06, 0x10, 0x48, 0x94, 0x1C, 0xE0, 0x4B, 0xB8, 0xF7, 0x55, 0x9C, 0x7F, 0x88, 0xE7,\n0xB9, 0x1D, 0x96, 0xB8, 0x06, 0x1A, 0x77, 0x43, 0x10, 0xFD, 0x9F, 0xC5, 0x9F, 0x38, 0x11, 0x52,\n0x5F, 0x53, 0xD6, 0x01, 0x36, 0x48, 0x23, 0x2A, 0xD6, 0x03, 0xAE, 0x96, 0xBC, 0xF8, 0x45, 0x30,\n0x54, 0xFD, 0xAA, 0x40, 0x72, 0x7D, 0x65, 0x00, 0xDE, 0xC8, 0x06, 0x50, 0xD5, 0xF3, 0x26, 0x08,\n0xE1, 0x76, 0x30, 0x0B, 0xAF, 0x0E, 0xC5, 0x62, 0x90, 0xF5, 0x7F, 0x5E, 0x45, 0x45, 0x02, 0x9E,\n0x48, 0x06, 0xD0, 0x45, 0xBF, 0x37, 0x7F, 0xC2, 0x04, 0xF0, 0xA1, 0x2B, 0x9E, 0x7F, 0xD0, 0x16,\n0xF9, 0x07, 0x65, 0xB7, 0x01, 0xAF, 0x49, 0xDA, 0x04, 0x82, 0xC8, 0x7B, 0xC0, 0x7E, 0x45, 0xFE,\n0x15, 0x5C, 0x98, 0x80, 0x99, 0xA5, 0xD0, 0xF4, 0x82, 0x43, 0xA2, 0x07, 0x6C, 0x21, 0x04, 0x07,\n0x48, 0x15, 0x0A, 0xC7, 0xB6, 0x91, 0x07, 0x1F, 0xD7, 0x5E, 0xD3, 0xCC, 0xEF, 0x3F, 0x08, 0x40,\n0xD9, 0xFF, 0xC9, 0x04, 0x64, 0xBD, 0x33, 0x7A, 0x6F, 0xDB, 0x1C, 0x01, 0xEB, 0x1B, 0x4A, 0x39,\n0x40, 0xB7, 0x0F, 0x78, 0x44, 0xE8, 0x63, 0x0C, 0xEE, 0x50, 0xB5, 0xEB, 0x9E, 0xFD, 0xC6, 0x0F,\n0x8C, 0x03, 0x72, 0x25, 0xEE, 0x21, 0xB8, 0x43, 0xA4, 0x0D, 0x60, 0x80, 0xBF, 0xC4, 0xF0, 0x8B,\n0x9D, 0x00, 0x46, 0x64, 0x3D, 0xA0, 0x01, 0x1F, 0x17, 0x56, 0x6E, 0x35, 0xCC, 0xC2, 0xFA, 0xBF,\n0x02, 0x1E, 0x70, 0x1B, 0x0B, 0xA2, 0xFB, 0x86, 0x7F, 0x88, 0xAB, 0xB3, 0x6E, 0x1A, 0x15, 0x21,\n0xF3, 0xB2, 0xFE, 0x0F, 0xDA, 0x2E, 0xFF, 0x40, 0xC0, 0x10, 0xBE, 0xDC, 0x04, 0xCA, 0xFD, 0x50,\n0xEB, 0x3F, 0xFE, 0x5C, 0xE0, 0x9F, 0x56, 0xF0, 0x7F, 0x18, 0x07, 0x4C, 0x4E, 0x00, 0x77, 0x6C,\n0x11, 0xA6, 0x82, 0x3B, 0x6B, 0xFC, 0xE3, 0xD5, 0x30, 0xA4, 0x2C, 0xFD, 0xA0, 0x70, 0x6C, 0x1B,\n0x8F, 0xD4, 0x5E, 0xFE, 0xFD, 0x4F, 0xA3, 0xFC, 0x43, 0x88, 0xFC, 0x43, 0xC8, 0xFC, 0x83, 0xF2,\n0x13, 0x20, 0x10, 0xD1, 0x30, 0xBD, 0x05, 0x84, 0x5C, 0x5F, 0xC9, 0x01, 0xEE, 0xC2, 0x03, 0x8A,\n0x00, 0xC4, 0x54, 0x70, 0x38, 0x0D, 0x42, 0x72, 0xF8, 0xE3, 0x93, 0x8B, 0x06, 0x8F, 0xFF, 0x8D,\n0xFC, 0x96, 0x60, 0x42, 0x20, 0xEE, 0x8E, 0xEA, 0xFD, 0x1F, 0x08, 0x98, 0x5C, 0x0C, 0xC8, 0xDD,\n0x4A, 0x76, 0x80, 0x18, 0xFF, 0x43, 0xD0, 0xB5, 0x60, 0x00, 0x59, 0x1D, 0x5B, 0x13, 0x8B, 0x61,\n0xE8, 0x71, 0x9F, 0x55, 0x5D, 0x56, 0xF7, 0x80, 0xFD, 0x3B, 0x21, 0xFF, 0x45, 0xA4, 0xF3, 0x45,\n0x00, 0x50, 0x5A, 0x06, 0xFD, 0x10, 0x68, 0x2B, 0x0B, 0x00, 0x03, 0x02, 0x6A, 0xD5, 0x93, 0xF2,\n0x5F, 0x44, 0x86, 0x80, 0xD5, 0xF3, 0x5F, 0x50, 0x70, 0x91, 0xBE, 0x13, 0x0C, 0x04, 0x0B, 0x98,\n0x4E, 0x80, 0x11, 0x54, 0x54, 0x06, 0x90, 0xAF, 0xA2, 0x0E, 0x90, 0x4F, 0xA8, 0xD6, 0x5E, 0xE7,\n0x12, 0xE8, 0x52, 0x88, 0xF8, 0x43, 0x3C, 0xE1, 0x8F, 0x22, 0x21, 0x22, 0x7F, 0x14, 0x29, 0x95,\n0x01, 0xC3, 0xFB, 0x99, 0x86, 0x82, 0x36, 0xFB, 0x0A, 0xFC, 0x83, 0x1A, 0xA1, 0x03, 0xE4, 0x06,\n0xA3, 0x7F, 0x74, 0x42, 0x1C, 0x74, 0x8B, 0x61, 0x18, 0x7D, 0x06, 0x84, 0xD8, 0x0C, 0x67, 0x78,\n0x88, 0x80, 0x07, 0x0C, 0xC2, 0x4F, 0x00, 0x4B, 0xF7, 0xC3, 0x0A, 0xF3, 0xDF, 0xFC, 0x5C, 0xB0,\n0xFB, 0xEC, 0x9F, 0xB8, 0xEE, 0xCF, 0x2A, 0x22, 0x3E, 0x81, 0xC2, 0x9A, 0x09, 0xA4, 0xC1, 0x95,\n0x08, 0x98, 0xD8, 0x12, 0x72, 0x82, 0xFC, 0x17, 0x71, 0x95, 0x98, 0x0A, 0xEE, 0x09, 0xDC, 0xC3,\n0xE5, 0x43, 0x44, 0x5B, 0xE5, 0x1F, 0xA6, 0x82, 0xB5, 0xC3, 0x92, 0xE9, 0x1B, 0xE2, 0xAB, 0x09,\n0xD8, 0xD4, 0xCB, 0x39, 0xF5, 0x4B, 0x58, 0xC0, 0x76, 0xDA, 0xFF, 0x99, 0x14, 0x60, 0x62, 0x6A,\n0xC6, 0x03, 0xD2, 0xA3, 0x41, 0xC7, 0x4A, 0xE2, 0x0F, 0x42, 0x57, 0x0D, 0x53, 0x1A, 0xD3, 0xD5,\n0xA7, 0xA3, 0xDA, 0xAB, 0x4B, 0x80, 0xDF, 0x06, 0x21, 0x02, 0x10, 0x51, 0x05, 0x80, 0xE2, 0xFD,\n0xF0, 0xE1, 0x01, 0x53, 0x5B, 0x80, 0x3D, 0xF7, 0x7C, 0x4B, 0xB7, 0xC8, 0xAF, 0xCB, 0xFC, 0x83,\n0x07, 0x0C, 0x1D, 0xE0, 0x05, 0xF3, 0x8E, 0xFD, 0x9F, 0xA7, 0xE0, 0xCE, 0x88, 0x3D, 0xA0, 0x37,\n0x7E, 0xD3, 0x55, 0x02, 0xEC, 0xF0, 0x17, 0xC6, 0x32, 0xB6, 0x25, 0x04, 0x1D, 0x4B, 0x4E, 0x83,\n0x27, 0x61, 0x90, 0x3A, 0x99, 0x09, 0xE0, 0x15, 0x04, 0x3B, 0xF1, 0x24, 0x78, 0x6C, 0x17, 0x40,\n0x6F, 0x7A, 0xC0, 0xA6, 0x5E, 0xFD, 0xC4, 0xF8, 0x5F, 0x00, 0xC0, 0xFE, 0xDC, 0x90, 0xA1, 0xFA,\n0x02, 0x18, 0x34, 0x0F, 0xCF, 0x41, 0xC0, 0x87, 0x88, 0xC4, 0x89, 0x60, 0x28, 0x31, 0xAB, 0x1D,\n0x01, 0xE0, 0xFC, 0xE9, 0xFC, 0x83, 0x0A, 0x77, 0x1C, 0xC6, 0x07, 0x00, 0x17, 0xEB, 0xEA, 0xC0,\n0x03, 0x66, 0xFC, 0x1F, 0x42, 0x9A, 0x00, 0x86, 0x96, 0xB1, 0x94, 0x86, 0xA7, 0xFC, 0x46, 0x49,\n0x07, 0xF8, 0xE7, 0x0B, 0xF9, 0x1B, 0x70, 0xCF, 0x08, 0x40, 0xF9, 0xEF, 0x02, 0x27, 0xF3, 0x5F,\n0x99, 0x80, 0x5C, 0x7D, 0xFA, 0x0B, 0x07, 0x48, 0x2D, 0xB2, 0x60, 0x81, 0x7F, 0xB1, 0xBF, 0x0B,\n0x4C, 0xB2, 0xF7, 0x01, 0x64, 0x8D, 0x6C, 0x65, 0x7D, 0xCF, 0xE4, 0x33, 0x95, 0x1A, 0xCB, 0x42,\n0x3E, 0x1D, 0x4D, 0x23, 0x00, 0x9C, 0x1E, 0x47, 0xB6, 0x84, 0x68, 0xF1, 0x47, 0x9A, 0x44, 0x22,\n0xBE, 0x2D, 0xD8, 0x81, 0xCF, 0x72, 0x70, 0xEC, 0x2D, 0x40, 0xEC, 0x76, 0x49, 0x45, 0x19, 0x7E,\n0x50, 0x53, 0xAF, 0x38, 0xFF, 0x22, 0x11, 0x9D, 0x08, 0x11, 0xE9, 0x97, 0x48, 0x80, 0xA1, 0x2D,\n0xF2, 0x0F, 0x12, 0xE8, 0x27, 0x10, 0x10, 0xFE, 0x4F, 0x9E, 0x08, 0x69, 0xEA, 0xB5, 0x61, 0xD4,\n0x3D, 0x0F, 0x17, 0xA1, 0x05, 0x74, 0xF6, 0x0F, 0xC5, 0x4A, 0xCA, 0x7F, 0x11, 0xA2, 0x03, 0x84,\n0xC2, 0x94, 0x86, 0xB7, 0xBF, 0x33, 0x00, 0x5F, 0xF0, 0x1F, 0xC0, 0x94, 0xF0, 0x87, 0x90, 0xE8,\n0x87, 0x90, 0xF9, 0x07, 0x25, 0x17, 0x00, 0x86, 0x04, 0x3C, 0x88, 0xFA, 0x3F, 0x70, 0x8F, 0xAA,\n0xBD, 0x30, 0xDB, 0x82, 0xEB, 0x0A, 0xFE, 0xC1, 0x03, 0xA2, 0x50, 0x05, 0xF9, 0xFC, 0x89, 0x3B,\n0x5D, 0xDD, 0x12, 0xD5, 0xCD, 0x02, 0x7B, 0xFE, 0x85, 0xD1, 0x0A, 0xB6, 0x84, 0xA0, 0x5F, 0x09,\n0x0C, 0x0C, 0xF9, 0x87, 0xC5, 0x30, 0x9D, 0xB8, 0xFF, 0x1B, 0xFB, 0x2C, 0x88, 0x8F, 0xCE, 0x03,\n0x46, 0x36, 0xC0, 0x79, 0x81, 0x83, 0xC5, 0xE3, 0xB7, 0x84, 0x60, 0x03, 0x48, 0x2C, 0x82, 0x3B,\n0xC3, 0x74, 0x25, 0xFC, 0xA5, 0xFD, 0x1F, 0xF4, 0x71, 0x7B, 0xFC, 0x83, 0xAE, 0xF4, 0x4A, 0x2E,\n0x00, 0x0C, 0xE3, 0x89, 0x1B, 0x40, 0x58, 0x97, 0x5C, 0xA8, 0x62, 0x18, 0x30, 0xED, 0xFF, 0x20,\n0xFE, 0x30, 0x84, 0x07, 0x94, 0xF9, 0x37, 0x09, 0xBA, 0x60, 0x12, 0x81, 0xE1, 0x96, 0x90, 0xE3,\n0x1B, 0xD3, 0xDB, 0x6B, 0xAF, 0x2A, 0xFD, 0x05, 0xF1, 0x64, 0x02, 0xEE, 0x25, 0x42, 0xC3, 0x3F,\n0x78, 0xC0, 0xEC, 0xDF, 0x04, 0x86, 0x8E, 0xD6, 0x09, 0xE8, 0x17, 0x00, 0x86, 0x0E, 0xF0, 0x74,\n0xF7, 0x3D, 0x01, 0x2F, 0xCF, 0x3F, 0x28, 0x70, 0x80, 0x96, 0x7A, 0x20, 0xDF, 0xC8, 0x26, 0xC3,\n0x94, 0x05, 0xFB, 0x5B, 0xC0, 0x2C, 0x29, 0x90, 0xFE, 0x26, 0x08, 0x68, 0x53, 0x60, 0x04, 0x3A,\n0x95, 0x34, 0x11, 0x32, 0x49, 0x11, 0x30, 0xE1, 0xFF, 0x28, 0x9C, 0xCA, 0x53, 0xC1, 0x1B, 0x23,\n0x80, 0x6D, 0x8C, 0x2A, 0x3D, 0xDA, 0x03, 0xCE, 0x85, 0xFC, 0x17, 0x11, 0x6E, 0x09, 0x11, 0x05,\n0x06, 0x3E, 0x24, 0xB5, 0x6D, 0xFE, 0xC1, 0x03, 0x72, 0x95, 0x25, 0xFA, 0x3F, 0x78, 0xC0, 0xED,\n0xF9, 0x3F, 0xBE, 0xF4, 0x04, 0xDC, 0x18, 0xFF, 0x1B, 0xAF, 0x06, 0x80, 0x3B, 0xDC, 0x8E, 0x27,\n0x8B, 0xB1, 0xEF, 0x07, 0x92, 0xFF, 0x43, 0xC8, 0xEE, 0x2F, 0xB1, 0x25, 0x84, 0xFB, 0xB8, 0x05,\n0xE0, 0x6B, 0x1A, 0x01, 0x7C, 0x9B, 0x09, 0x01, 0x7F, 0x88, 0x04, 0xFF, 0x64, 0x0F, 0xB8, 0xBA,\n0x0D, 0x74, 0x26, 0x0B, 0x86, 0xFF, 0x23, 0xDC, 0xC5, 0x1C, 0x20, 0xC7, 0x06, 0x00, 0xEB, 0x19,\n0x35, 0x1A, 0x16, 0x7C, 0xF8, 0x73, 0x70, 0x20, 0x60, 0x79, 0x2E, 0x64, 0xA7, 0x81, 0x3F, 0x09,\n0xEC, 0xEC, 0x5F, 0x26, 0xF8, 0xD6, 0x30, 0xB8, 0x3F, 0x60, 0xB6, 0x67, 0x85, 0xE3, 0x7F, 0x4A,\n0x0F, 0xE8, 0x80, 0x37, 0x2E, 0x67, 0x40, 0xFE, 0x24, 0xBA, 0x00, 0x1A, 0xF2, 0xE6, 0xA2, 0xA8,\n0x48, 0xC0, 0x13, 0xC9, 0xFF, 0x61, 0x18, 0x10, 0xA0, 0x60, 0x18, 0x42, 0x92, 0x0B, 0x7C, 0xC8,\n0x68, 0xFB, 0xFC, 0x83, 0x07, 0xD4, 0x50, 0x50, 0xF4, 0x7F, 0x88, 0x27, 0xF8, 0x3F, 0x08, 0x1E,\n0xB0, 0x08, 0x37, 0xC5, 0xD1, 0x05, 0x69, 0x62, 0x7B, 0x00, 0x0C, 0x20, 0x37, 0xD8, 0x16, 0x0C,\n0xFE, 0xA5, 0x43, 0x8D, 0xC0, 0xF5, 0xB1, 0x6D, 0x1E, 0xFF, 0xB3, 0x00, 0x7C, 0x45, 0x03, 0x80,\n0x4F, 0xE3, 0x1F, 0x42, 0xE6, 0x1F, 0x74, 0x14, 0x26, 0xC0, 0x99, 0x2C, 0x98, 0x2B, 0xFC, 0x5F,\n0xC4, 0x01, 0xB2, 0x36, 0x6E, 0x8F, 0x5A, 0xCF, 0x8A, 0x98, 0x07, 0x07, 0xE8, 0xF0, 0xF7, 0x3D,\n0x35, 0xDC, 0x92, 0x88, 0x7C, 0xAB, 0x0B, 0xB3, 0x06, 0x86, 0x83, 0x4E, 0x90, 0xFF, 0x46, 0xE3,\n0x18, 0xBB, 0x25, 0x29, 0x96, 0x5A, 0xFC, 0xA1, 0x5F, 0x0A, 0x53, 0xC1, 0x1D, 0xD3, 0xCD, 0xD1,\n0xDF, 0x31, 0x11, 0x62, 0x55, 0xC0, 0x03, 0x7A, 0xFE, 0x5D, 0xB6, 0xD1, 0x42, 0x8F, 0x5F, 0x0C,\n0x03, 0xFE, 0x85, 0x04, 0xEC, 0xAD, 0x4F, 0x05, 0x8B, 0xC2, 0x06, 0xE0, 0xAC, 0xB6, 0xCD, 0xBF,\n0xEA, 0x1E, 0x30, 0x58, 0x00, 0x93, 0x88, 0xFE, 0xE3, 0x37, 0x80, 0x14, 0x3E, 0xFF, 0x05, 0x07,\n0x63, 0x5B, 0x42, 0x8A, 0xD5, 0xCA, 0xA7, 0x09, 0x3E, 0xFF, 0xB0, 0x1A, 0x6A, 0xA2, 0xE5, 0x5F,\n0x47, 0xC6, 0x1F, 0xEE, 0xD1, 0x8B, 0xB1, 0xED, 0x63, 0xA2, 0xE0, 0xE8, 0xB5, 0x39, 0xC0, 0xB7,\n0xD9, 0x90, 0xF9, 0x87, 0x90, 0xF9, 0x07, 0x01, 0x7F, 0x48, 0x80, 0xE3, 0x04, 0x0C, 0x36, 0x80,\n0xC4, 0x1D, 0x20, 0x9F, 0x54, 0x02, 0xE0, 0xDA, 0x02, 0x40, 0x38, 0x40, 0xE4, 0xBF, 0x54, 0x59,\n0xF8, 0x43, 0x20, 0x9C, 0x02, 0x83, 0x7F, 0xC2, 0x38, 0x60, 0xB9, 0x5B, 0x09, 0x23, 0x81, 0x9D,\n0x1C, 0xFF, 0xB0, 0x25, 0x84, 0x0E, 0x48, 0x79, 0x4D, 0xFA, 0xE3, 0xAE, 0x60, 0x06, 0x07, 0x3E,\n0xCA, 0xFE, 0xEF, 0x12, 0x07, 0x77, 0x2C, 0xAA, 0x6F, 0x09, 0x01, 0xFF, 0xD2, 0xC1, 0xCB, 0x01,\n0x61, 0x95, 0x44, 0xC1, 0xFF, 0x09, 0xDA, 0x22, 0xFF, 0xA0, 0x2B, 0xAD, 0x2C, 0xD6, 0xB1, 0x01,\n0x24, 0x17, 0xBD, 0x47, 0x6F, 0x00, 0x29, 0x73, 0x0F, 0x2A, 0xB0, 0x1C, 0x10, 0xE3, 0x7F, 0xC0,\n0xDE, 0x04, 0x2F, 0x3E, 0x55, 0x78, 0x40, 0xF0, 0x2F, 0x13, 0x6A, 0x04, 0x62, 0x15, 0xB4, 0x59,\n0x00, 0x63, 0xA3, 0x96, 0xBC, 0xFB, 0xC1, 0xDE, 0x27, 0x2F, 0x4D, 0x6A, 0x02, 0xEE, 0x09, 0x51,\n0x05, 0x80, 0xC1, 0x04, 0x70, 0xCE, 0x03, 0xFA, 0x5B, 0x60, 0xB1, 0xFF, 0x4B, 0x38, 0xC0, 0x8D,\n0x1B, 0x23, 0xD4, 0x25, 0x51, 0xDE, 0x5B, 0x5A, 0x00, 0xC8, 0xC5, 0x1D, 0xB9, 0x41, 0x65, 0x13,\n0x68, 0xF1, 0x27, 0x24, 0xC0, 0xD8, 0x15, 0xEC, 0x96, 0x8C, 0xEA, 0xE8, 0xB7, 0x04, 0xFF, 0x84,\n0x71, 0x40, 0x6E, 0x5D, 0x3F, 0x9F, 0x8C, 0x99, 0x7D, 0xF6, 0xC4, 0x3F, 0xE4, 0x3D, 0xA0, 0xDF,\n0x16, 0x8C, 0x0D, 0x20, 0x25, 0x5D, 0x3E, 0xD6, 0x03, 0x82, 0x7F, 0x79, 0x07, 0x34, 0x87, 0x07,\n0xEC, 0xE9, 0xF9, 0x27, 0x6A, 0xAB, 0xFC, 0x83, 0x05, 0xD4, 0x02, 0x90, 0xC8, 0xE7, 0x10, 0x88,\n0x1F, 0x3F, 0x1E, 0xF3, 0x47, 0xF2, 0x2F, 0xF0, 0x7E, 0x97, 0xA1, 0x07, 0x2C, 0x56, 0xFE, 0x0F,\n0xF3, 0x5E, 0xA6, 0x07, 0x78, 0x75, 0x38, 0xB0, 0x5C, 0xB4, 0x25, 0x04, 0xE8, 0x27, 0x09, 0x7D,\n0x1A, 0x1F, 0xFF, 0xB5, 0x57, 0xB3, 0x0C, 0xF0, 0xED, 0xB3, 0x00, 0xB0, 0x26, 0x4A, 0xE6, 0x1F,\n0x86, 0x01, 0x71, 0x07, 0xC0, 0xAC, 0x03, 0xE4, 0x05, 0xD1, 0xE0, 0x9F, 0x24, 0x93, 0x04, 0x83,\n0x7F, 0x44, 0xBA, 0xD5, 0x01, 0xD3, 0x21, 0x46, 0xDE, 0x01, 0x2E, 0x47, 0x32, 0x01, 0xB1, 0x01,\n0x58, 0xEB, 0x00, 0x27, 0x08, 0x21, 0x0B, 0x5E, 0xF5, 0x7D, 0x4B, 0x3C, 0x5C, 0x96, 0xC6, 0x04,\n0x39, 0x09, 0xE6, 0xD6, 0x2E, 0xFF, 0xC3, 0x3B, 0x09, 0xFE, 0xCF, 0xB7, 0xCD, 0x8A, 0x9B, 0xE2,\n0x30, 0x01, 0x22, 0x7B, 0xC0, 0xED, 0xF8, 0x3F, 0xE8, 0x11, 0x0B, 0xA0, 0x65, 0x81, 0x80, 0xDA,\n0x2D, 0x21, 0xBD, 0xB9, 0x18, 0x8F, 0xD8, 0x00, 0x12, 0x80, 0x2F, 0xEA, 0x01, 0xB1, 0x01, 0x18,\n0xD0, 0xF3, 0xC7, 0x8E, 0x7F, 0x0C, 0x16, 0xB0, 0xA3, 0xE1, 0x1F, 0x6A, 0x46, 0xD8, 0x12, 0x02,\n0xFF, 0x47, 0x0E, 0xF0, 0xB5, 0xDC, 0x00, 0x8B, 0x10, 0x27, 0x05, 0x00, 0x28, 0x06, 0xF8, 0x27,\n0x0B, 0x0B, 0xA0, 0x45, 0x59, 0x00, 0x12, 0xEA, 0xA8, 0x24, 0x1C, 0x20, 0x0B, 0x37, 0x46, 0xA8,\n0x2B, 0x74, 0x61, 0x66, 0x42, 0x1C, 0xE2, 0xB8, 0x41, 0xE6, 0xCB, 0x27, 0x20, 0xE1, 0x45, 0xC3,\n0x6E, 0x08, 0x41, 0xFA, 0x2B, 0x79, 0x40, 0x25, 0xFF, 0xB0, 0x05, 0x44, 0xF4, 0x80, 0x98, 0x00,\n0x76, 0x8D, 0xF3, 0x7E, 0xFE, 0x0D, 0x81, 0x31, 0x41, 0x6B, 0x01, 0x87, 0xED, 0x50, 0x97, 0xBF,\n0xBB, 0xE3, 0x63, 0x97, 0x03, 0xCE, 0x65, 0x00, 0x30, 0x01, 0x49, 0x15, 0xE6, 0x7F, 0x55, 0x00,\n0xFC, 0xB8, 0x5D, 0xFF, 0x07, 0x02, 0x2A, 0x65, 0x67, 0x75, 0x88, 0xFE, 0x72, 0x3C, 0x6E, 0x03,\n0x48, 0xF0, 0x32, 0x01, 0x85, 0xE6, 0x0B, 0xCC, 0x0C, 0x17, 0xF2, 0x5D, 0x8B, 0xBC, 0x31, 0xAE,\n0x4B, 0x03, 0x21, 0x48, 0x80, 0x35, 0x08, 0x84, 0x24, 0x02, 0xDE, 0xC0, 0xFF, 0x51, 0xD4, 0x5E,\n0xBC, 0xF3, 0x03, 0xFF, 0xC4, 0xC0, 0x1D, 0x00, 0xE5, 0x00, 0xFF, 0x64, 0x00, 0x82, 0x7F, 0x92,\n0xD8, 0xFF, 0x19, 0xFE, 0x09, 0x0E, 0x70, 0xD7, 0xDE, 0x18, 0xA1, 0xAE, 0x92, 0x49, 0x82, 0x89,\n0x70, 0xC8, 0x7E, 0x37, 0x34, 0x5A, 0x99, 0x43, 0x1E, 0x00, 0xC4, 0xFE, 0xDF, 0x2C, 0x00, 0x97,\n0xC7, 0x34, 0xFE, 0xA7, 0xEE, 0x59, 0xC0, 0x9F, 0x68, 0x01, 0x7D, 0x5F, 0x9F, 0xC0, 0x03, 0x30,\n0x06, 0xCB, 0x0E, 0xD0, 0x34, 0x05, 0x15, 0xB6, 0x0D, 0xB0, 0x7F, 0x81, 0x1E, 0xB7, 0x25, 0xA4,\n0x37, 0xD7, 0x12, 0xF0, 0x6A, 0x5B, 0x06, 0x10, 0x7A, 0x16, 0x00, 0x5E, 0xE9, 0x11, 0x88, 0xFD,\n0x1F, 0x42, 0xF4, 0xAA, 0xF2, 0x8F, 0x15, 0x26, 0xC1, 0xDE, 0x11, 0x62, 0x39, 0x60, 0x01, 0xD6,\n0xB9, 0xE3, 0x84, 0xAB, 0xEB, 0x04, 0x5C, 0x26, 0xDE, 0x03, 0x82, 0x7F, 0xF9, 0x50, 0x20, 0x10,\n0x53, 0xC1, 0xEC, 0xFF, 0x10, 0xAF, 0x6C, 0x1D, 0xA0, 0x20, 0xF8, 0x3F, 0x31, 0xC0, 0x3F, 0x95,\n0x05, 0xDC, 0x97, 0xF5, 0xC1, 0xCD, 0x84, 0x78, 0xDC, 0x71, 0xB1, 0x27, 0x1C, 0xB8, 0xE0, 0x2B,\n0x37, 0x17, 0xAC, 0x94, 0xF5, 0x7F, 0x23, 0x78, 0x3F, 0x6A, 0x10, 0xE6, 0xD2, 0xB7, 0x7C, 0x57,\n0xC0, 0xA9, 0x2E, 0xA6, 0x2D, 0x02, 0xA0, 0x9E, 0x7F, 0x6A, 0x02, 0xFA, 0xAE, 0x3F, 0xC6, 0x88,\n0x4F, 0x69, 0x52, 0xD8, 0xD9, 0x01, 0x7E, 0x28, 0xF0, 0x7F, 0xC9, 0x1C, 0xAB, 0xA9, 0x53, 0x97,\n0x2A, 0xF3, 0x4F, 0x08, 0x6C, 0x09, 0xA9, 0x20, 0x1D, 0xA9, 0xA8, 0x6E, 0x19, 0x7F, 0xD5, 0x17,\n0x44, 0xCF, 0x7B, 0xAA, 0x98, 0xF7, 0xAA, 0x2F, 0x00, 0xC4, 0x3C, 0x55, 0x4A, 0xC3, 0x02, 0xC9,\n0x2E, 0xD6, 0xBE, 0xB3, 0x09, 0xF4, 0xD8, 0xB3, 0xBB, 0x82, 0xDC, 0x54, 0x70, 0x4B, 0x19, 0x48,\n0x43, 0x34, 0x1E, 0x70, 0x54, 0x06, 0xE0, 0xEB, 0x48, 0x7F, 0x9F, 0xE7, 0x6F, 0x00, 0x6B, 0x05,\n0xFE, 0xC9, 0x7A, 0x77, 0x4A, 0x41, 0xA2, 0x16, 0x27, 0x2C, 0x3C, 0xEA, 0x8E, 0xF4, 0x37, 0x80,\n0xEB, 0x4A, 0x61, 0xAC, 0x6F, 0x87, 0x6A, 0x18, 0xDC, 0xEC, 0x34, 0x8C, 0xF8, 0xE3, 0x4F, 0x23,\n0x9E, 0x0A, 0xD6, 0x8B, 0xC8, 0xA6, 0x8A, 0x56, 0xA7, 0x94, 0xF1, 0x96, 0xF3, 0x1E, 0x3F, 0x2B,\n0xC2, 0x8D, 0xBB, 0xE0, 0x09, 0x60, 0x13, 0xCD, 0x44, 0xF5, 0x41, 0x6A, 0xF6, 0x9B, 0xF3, 0xFB,\n0xB9, 0x58, 0xD8, 0x02, 0xF6, 0x7B, 0x73, 0x95, 0xD8, 0x03, 0xEA, 0xF5, 0x30, 0xA3, 0xFC, 0x56,\n0x08, 0xFE, 0x8A, 0xEA, 0x00, 0xFC, 0x28, 0xC7, 0xC7, 0x4A, 0x04, 0xEC, 0xA9, 0x09, 0x48, 0x13,\n0x20, 0xBA, 0x5F, 0x6B, 0x9F, 0x06, 0x00, 0xF9, 0x45, 0x11, 0x2B, 0x35, 0xCE, 0x00, 0x42, 0xE0,\n0x9E, 0x5B, 0x0D, 0x8D, 0x21, 0xC1, 0x89, 0xAA, 0x5F, 0x31, 0x02, 0xF5, 0xBA, 0x99, 0xAE, 0xA9,\n0x56, 0xCA, 0x0F, 0x57, 0x38, 0x91, 0xF3, 0x4A, 0x7C, 0x55, 0x45, 0x52, 0xE9, 0x83, 0x8B, 0x9E,\n0x6A, 0xFF, 0x06, 0xFF, 0x20, 0x36, 0x77, 0xAA, 0x38, 0xFA, 0xF0, 0xEE, 0x94, 0x66, 0x40, 0x34,\n0x41, 0xF7, 0x45, 0xA0, 0xA1, 0xBD, 0xBA, 0x26, 0xEA, 0x17, 0x3B, 0x0D, 0x9E, 0xDC, 0x6D, 0xD8,\n0xC0, 0x09, 0x1E, 0xB0, 0x5F, 0x30, 0xA2, 0xF6, 0xF8, 0x78, 0xAA, 0x8B, 0xE9, 0xCD, 0x37, 0xDF,\n0xDC, 0xA8, 0xA2, 0xF5, 0x8D, 0x41, 0x9B, 0x22, 0x5A, 0x9D, 0xCE, 0x62, 0x30, 0x56, 0x6A, 0xD0,\n0x56, 0xEB, 0xFE, 0xF6, 0xE4, 0xF6, 0xFC, 0x36, 0x5B, 0xFC, 0xF1, 0xBC, 0xD7, 0xD7, 0x45, 0x7F,\n0xAE, 0x25, 0xE0, 0xB7, 0x57, 0xBD, 0x8F, 0xB3, 0x8F, 0x0A, 0xCD, 0xA8, 0xCC, 0xAE, 0x7F, 0xBE,\n0xA6, 0x12, 0x46, 0x50, 0x66, 0xF8, 0x37, 0xA5, 0x7F, 0xB6, 0x47, 0xDF, 0x83, 0x2C, 0xF3, 0x45,\n0xF3, 0xF9, 0x5D, 0x5F, 0xF5, 0xF3, 0x73, 0x0E, 0x7C, 0x6B, 0x7E, 0x67, 0x27, 0x62, 0x7B, 0xDF,\n0x56, 0x6B, 0x30, 0x56, 0xAB, 0xD3, 0xD2, 0xC5, 0xA4, 0xD3, 0x41, 0x6F, 0x14, 0xA2, 0xB5, 0xD1,\n0xFF, 0x6B, 0x65, 0xE8, 0x80, 0x3D, 0x62, 0x3C, 0x81, 0x6B, 0xEA, 0x78, 0x0E, 0xED, 0x3D, 0x8F,\n0x03, 0x3C, 0xFA, 0x70, 0xA4, 0xD3, 0xBE, 0xBD, 0x07, 0x82, 0x93, 0x3F, 0xC3, 0x15, 0x4E, 0xAB,\n0xA5, 0xC0, 0x44, 0x38, 0xAE, 0x1C, 0x38, 0xAC, 0x5D, 0x58, 0xD1, 0x0C, 0x08, 0xF7, 0x00, 0xA5,\n0xBE, 0xD1, 0x88, 0xBF, 0x4A, 0xD9, 0x53, 0x5B, 0x1D, 0x02, 0xA0, 0x9A, 0x7F, 0x83, 0x01, 0xA7,\n0x55, 0xA2, 0x8A, 0x41, 0x7B, 0x38, 0xBC, 0x3F, 0x3F, 0xB9, 0x65, 0x08, 0x0A, 0xF5, 0xF6, 0xE4,\n0xE4, 0xE4, 0x9C, 0xDE, 0xDA, 0x92, 0x78, 0xC1, 0xCC, 0xFC, 0xDB, 0xF9, 0xB7, 0x57, 0xDF, 0xCA,\n0xEA, 0x12, 0xFF, 0x7A, 0xBD, 0x07, 0x0D, 0xA9, 0x1E, 0x1E, 0x7E, 0xFB, 0xED, 0x9A, 0x09, 0x18,\n0x2A, 0xC2, 0xBF, 0xEB, 0xEB, 0xD9, 0x83, 0x8A, 0x7F, 0x0F, 0xF4, 0xFF, 0xBF, 0xA2, 0xEF, 0x43,\n0x12, 0x01, 0x90, 0x7E, 0xA8, 0x39, 0xFF, 0x70, 0x3D, 0xFA, 0x11, 0xFB, 0x99, 0x96, 0x7F, 0x03,\n0x27, 0x27, 0x86, 0x70, 0x27, 0x42, 0xA5, 0xE6, 0x9E, 0x52, 0xE0, 0x42, 0xC9, 0xBF, 0xC1, 0x40,\n0xCD, 0x3F, 0xAD, 0x5A, 0x9D, 0x6F, 0x58, 0x2D, 0x55, 0x6F, 0x25, 0x95, 0xFB, 0x3F, 0x00, 0x58,\n0x25, 0x36, 0x7C, 0x22, 0xD7, 0xE7, 0x88, 0xED, 0x6B, 0xEF, 0x99, 0x08, 0xC8, 0xBB, 0xE0, 0x8E,\n0x64, 0x91, 0x53, 0x24, 0x02, 0x62, 0xB2, 0xC3, 0x9C, 0x21, 0x70, 0x6A, 0x86, 0x00, 0x4F, 0x89,\n0x80, 0x6F, 0x54, 0xFC, 0x33, 0x04, 0x04, 0xF0, 0x1A, 0x31, 0x10, 0x5A, 0x2B, 0x38, 0xA5, 0xC2,\n0x08, 0x54, 0x04, 0x8B, 0xF1, 0x26, 0x84, 0xED, 0x79, 0x6C, 0x00, 0xB5, 0x52, 0xF3, 0x6F, 0x3C,\n0x28, 0xF8, 0x2D, 0xD3, 0x2E, 0x62, 0xB5, 0x54, 0x86, 0xF7, 0x44, 0x40, 0x7A, 0x2B, 0xCA, 0x3A,\n0x3F, 0x31, 0x04, 0xEC, 0x0B, 0xFC, 0xBB, 0xEB, 0x13, 0xFF, 0x98, 0x15, 0x84, 0x40, 0x31, 0xBA,\n0x57, 0xCC, 0x1F, 0x26, 0xE0, 0x43, 0x36, 0xB8, 0x21, 0xFF, 0xC7, 0x11, 0x20, 0x10, 0x8F, 0xE0,\n0x92, 0xBE, 0xEE, 0xB7, 0xD9, 0x83, 0x26, 0x01, 0xEE, 0x99, 0xEF, 0xA0, 0x7B, 0xF5, 0xAD, 0x1C,\n0x73, 0x16, 0x48, 0x97, 0x68, 0xFB, 0x7C, 0x76, 0xC2, 0xBA, 0x55, 0xE8, 0x84, 0x7E, 0xFD, 0xCD,\n0x7B, 0xF3, 0x5A, 0x14, 0x42, 0x21, 0xFF, 0xA7, 0x26, 0xA0, 0x83, 0x9B, 0x26, 0x4C, 0x0F, 0x3C,\n0x96, 0xFB, 0xAA, 0x03, 0x60, 0xE0, 0x00, 0xE5, 0x90, 0x1D, 0xE0, 0x8B, 0x40, 0xA0, 0x9D, 0xFF,\n0x55, 0xA9, 0x56, 0x95, 0x80, 0xFB, 0x0A, 0x13, 0xB8, 0xBF, 0x4B, 0xB1, 0xFF, 0xFE, 0x54, 0x70,\n0x80, 0xEE, 0xDE, 0xD0, 0xEC, 0x01, 0xDF, 0x68, 0x26, 0x81, 0x39, 0x55, 0xF6, 0xBC, 0x03, 0xF8,\n0xD0, 0xA0, 0x18, 0xA9, 0x00, 0xA8, 0xB7, 0x80, 0xC7, 0x2D, 0x87, 0x40, 0x39, 0x26, 0x7A, 0x02,\n0x0E, 0x8C, 0x98, 0x6F, 0x6C, 0xF2, 0x36, 0x2B, 0x85, 0x2D, 0xFC, 0x7C, 0xF3, 0x7E, 0x48, 0xBA,\n0x3F, 0x51, 0xBC, 0x55, 0x59, 0x4C, 0x40, 0xD1, 0x00, 0x9D, 0xF7, 0x88, 0x7F, 0x2A, 0x00, 0x32,\n0xFF, 0x2C, 0x01, 0xA5, 0x8C, 0x95, 0x60, 0x46, 0xFE, 0xEF, 0xB7, 0xD9, 0x2C, 0xF4, 0x7B, 0xEE,\n0x91, 0x72, 0x9D, 0xD1, 0x57, 0x5A, 0x02, 0x4A, 0xEA, 0x59, 0x29, 0xF9, 0xC7, 0x60, 0x67, 0xC6,\n0xE5, 0x7F, 0x01, 0xEC, 0xFF, 0x74, 0x04, 0x3C, 0x27, 0xFE, 0xB1, 0xC8, 0x03, 0x52, 0xB0, 0x69,\n0xCF, 0x94, 0x01, 0x49, 0x49, 0x40, 0xD8, 0x3B, 0x51, 0xAE, 0x03, 0xEA, 0xFC, 0xDF, 0x06, 0x01,\n0x1F, 0x07, 0x40, 0x38, 0x3F, 0x77, 0x7C, 0x19, 0x1E, 0x70, 0xCF, 0xC6, 0x73, 0x8D, 0x03, 0x6A,\n0xF2, 0xDF, 0x03, 0x5E, 0x0B, 0xF3, 0x3E, 0xEA, 0x00, 0x71, 0x75, 0xCA, 0xFE, 0x8F, 0x75, 0xAA,\n0x20, 0x20, 0xCF, 0x00, 0x9B, 0x9D, 0x20, 0xB0, 0x80, 0x41, 0xE3, 0x5B, 0x5E, 0x06, 0x68, 0x09,\n0x28, 0x03, 0x10, 0x08, 0x14, 0x0D, 0xA0, 0x2D, 0x72, 0xA2, 0x62, 0xC4, 0x14, 0xD4, 0xF2, 0x8F,\n0x0E, 0x8E, 0x76, 0xA6, 0x0E, 0x70, 0x34, 0x27, 0x85, 0x09, 0x5A, 0x82, 0x6B, 0xD4, 0x97, 0xDF,\n0xAD, 0x27, 0x3A, 0x02, 0xF6, 0x4D, 0xFE, 0x6B, 0x25, 0xF2, 0xAF, 0xEB, 0xF9, 0xD3, 0xCB, 0x5A,\n0x40, 0xC7, 0x3F, 0xB6, 0x75, 0xC4, 0xB6, 0x75, 0xBF, 0x07, 0x04, 0xE2, 0x8A, 0x30, 0xC9, 0xB4,\n0xBC, 0xA6, 0xFF, 0x32, 0xFB, 0x8F, 0x72, 0xFE, 0xCB, 0x08, 0x56, 0x79, 0xC0, 0xB9, 0x03, 0x60,\n0x4F, 0xC8, 0x81, 0x39, 0xFF, 0x75, 0x92, 0x7D, 0x75, 0x7F, 0x68, 0x74, 0xDF, 0x34, 0xAF, 0x4B,\n0x0E, 0x81, 0xEC, 0xFF, 0xAC, 0x2A, 0xE4, 0xBF, 0x2A, 0xFF, 0xA7, 0xB4, 0x80, 0x0C, 0x40, 0x03,\n0xC1, 0x6D, 0x3A, 0xC0, 0xB7, 0x2F, 0xC7, 0x01, 0xEE, 0x55, 0x26, 0x60, 0x6D, 0x9B, 0x1E, 0x90,\n0xDD, 0x1F, 0xD7, 0x83, 0x7D, 0xC1, 0x01, 0x9A, 0x25, 0x30, 0xCC, 0x40, 0xAA, 0x6F, 0x14, 0x5B,\n0xE1, 0x58, 0x17, 0x75, 0x58, 0xC0, 0xA0, 0xB1, 0xFC, 0x63, 0xF4, 0x51, 0x8C, 0x14, 0x1E, 0x10,\n0x62, 0xFE, 0xE5, 0xD5, 0x02, 0x02, 0xF3, 0x41, 0xF2, 0x08, 0x1C, 0x0F, 0x24, 0x00, 0x3A, 0x8D,\n0x57, 0x9C, 0x1B, 0xD8, 0x83, 0x3B, 0x9A, 0x87, 0x49, 0x03, 0xE6, 0x9F, 0x13, 0x01, 0x4E, 0xE2,\n0x9F, 0x97, 0x7F, 0xAF, 0xC7, 0x21, 0x70, 0x47, 0xFE, 0x0F, 0x00, 0xBC, 0xCA, 0x21, 0x85, 0xF9,\n0x07, 0x02, 0x0A, 0xFE, 0x8F, 0x1D, 0x1D, 0x51, 0x8D, 0xE1, 0x16, 0x3A, 0x40, 0xC0, 0x8F, 0x1B,\n0xCE, 0x95, 0xED, 0xD7, 0x12, 0xE6, 0xB2, 0x72, 0xFC, 0x63, 0x7D, 0xDB, 0x95, 0xF9, 0xC7, 0xA2,\n0x93, 0x73, 0xC1, 0x02, 0x9F, 0xAC, 0x24, 0x7D, 0xA6, 0xDC, 0x0E, 0x9D, 0xEE, 0x87, 0xFC, 0xB2,\n0x70, 0xA4, 0xCA, 0x80, 0xA4, 0x04, 0xE0, 0x22, 0xF8, 0xE4, 0x4C, 0x09, 0x00, 0xD4, 0x1A, 0xC0,\n0x6F, 0xB6, 0x00, 0x40, 0xD6, 0xDA, 0xE1, 0x05, 0x10, 0x90, 0xC8, 0xF7, 0x6F, 0x7A, 0x40, 0x5A,\n0x03, 0x78, 0xB0, 0x4B, 0xF0, 0x63, 0x0A, 0x1E, 0x64, 0xC6, 0x00, 0xB1, 0x13, 0xCE, 0x20, 0x90,\n0x10, 0x27, 0x03, 0xD0, 0x22, 0x10, 0xBC, 0x8B, 0x36, 0x3C, 0xFA, 0x67, 0x18, 0x38, 0x92, 0x3D,\n0x20, 0x24, 0x0E, 0x03, 0xA2, 0xFF, 0x65, 0xC7, 0x01, 0x37, 0x9E, 0x1C, 0x48, 0xFC, 0x83, 0x8C,\n0xFF, 0x83, 0xE7, 0xB3, 0x17, 0x0E, 0x8B, 0x83, 0x82, 0xDE, 0x77, 0x2B, 0x11, 0xE1, 0x04, 0xFE,\n0x79, 0x31, 0xE3, 0xFA, 0x29, 0x00, 0x9C, 0x9F, 0x7F, 0xCD, 0x8C, 0xF0, 0x92, 0x06, 0x00, 0x41,\n0x40, 0x5A, 0xE3, 0x92, 0xF6, 0x6A, 0xD6, 0xFF, 0x91, 0xA9, 0xFB, 0xCD, 0x11, 0x30, 0x9C, 0x01,\n0xE1, 0x6A, 0x9B, 0x99, 0x71, 0x8A, 0xBF, 0x71, 0x33, 0x93, 0x07, 0x00, 0x57, 0x92, 0x00, 0x08,\n0xF5, 0xEE, 0xE2, 0xEC, 0xB3, 0x07, 0xF0, 0x4F, 0xF6, 0x80, 0xC3, 0x92, 0xDA, 0x59, 0xFE, 0x15,\n0xA5, 0xD7, 0x54, 0xC7, 0x3F, 0xD9, 0x03, 0x82, 0x7F, 0x5C, 0x94, 0xFE, 0x8F, 0xB5, 0x05, 0x07,\n0xC8, 0xD5, 0x9F, 0xBE, 0x80, 0x89, 0x10, 0xB2, 0x7F, 0x08, 0x89, 0x7A, 0x38, 0xDD, 0x9A, 0x05,\n0xDC, 0x37, 0xE9, 0xAF, 0x43, 0xE0, 0x6E, 0xC6, 0x01, 0xF2, 0x00, 0x20, 0x24, 0x10, 0x90, 0xF0,\n0x07, 0x35, 0x76, 0xB2, 0xFC, 0xF3, 0x7F, 0x1C, 0x8E, 0x4F, 0x54, 0x06, 0xF0, 0x1B, 0xDB, 0x66,\n0x04, 0xFC, 0x71, 0xC9, 0x76, 0xD4, 0x32, 0x00, 0xA5, 0xC5, 0x30, 0xC5, 0x3A, 0x00, 0x3D, 0xF9,\n0x38, 0xBB, 0xB2, 0x4D, 0xE1, 0x88, 0x38, 0x18, 0x1A, 0xFF, 0x07, 0x02, 0x0A, 0xFC, 0x83, 0x18,\n0x80, 0x77, 0xA9, 0x81, 0xB0, 0x39, 0x24, 0x00, 0xD0, 0xD0, 0x07, 0x04, 0xCC, 0x4E, 0x00, 0x5F,\n0x1B, 0x4B, 0xE7, 0x6A, 0xC2, 0x00, 0xC2, 0xFF, 0xD9, 0x20, 0x68, 0xE6, 0x3C, 0x20, 0xF8, 0x27,\n0x0F, 0x03, 0xCE, 0x21, 0xE2, 0xFB, 0xDF, 0xDC, 0x9D, 0x4D, 0x6B, 0x6B, 0x55, 0x14, 0x86, 0xD5,\n0x82, 0xDA, 0x82, 0x88, 0xA0, 0x13, 0x15, 0x03, 0x99, 0xF5, 0x06, 0x4A, 0xA8, 0x03, 0xC1, 0xD1,\n0x41, 0x30, 0x93, 0x33, 0x90, 0x92, 0xC6, 0x2B, 0x19, 0x29, 0x14, 0x82, 0x99, 0x04, 0x27, 0x4E,\n0xDA, 0x5E, 0x82, 0xFE, 0x80, 0x4E, 0x04, 0xC1, 0x49, 0x13, 0xB8, 0xDC, 0x99, 0xF4, 0x2F, 0xBA,\n0xD6, 0xFE, 0xC8, 0x7B, 0x4E, 0xD6, 0xDE, 0x7B, 0xAD, 0xE3, 0x3D, 0xB1, 0xBD, 0xBE, 0x7B, 0x9F,\n0x8F, 0xA4, 0x55, 0x6C, 0x72, 0xF2, 0xF8, 0xEC, 0xAF, 0x93, 0x0B, 0x1E, 0xEA, 0x49, 0x2A, 0x30,\n0xF1, 0x8F, 0x01, 0x88, 0xA8, 0xFE, 0x07, 0x07, 0x7C, 0x75, 0x5E, 0xEE, 0x00, 0x44, 0x54, 0xFE,\n0x59, 0x14, 0x10, 0x0D, 0x60, 0xD4, 0x7C, 0x5A, 0x57, 0xF5, 0x6B, 0x1B, 0x20, 0xE6, 0x0D, 0xBE,\n0xF7, 0x46, 0x8C, 0x83, 0x1C, 0xB7, 0x8B, 0x29, 0xDD, 0x09, 0x98, 0xF7, 0xBF, 0x2F, 0x80, 0xBF,\n0xCF, 0x79, 0x28, 0x38, 0x6B, 0x80, 0xEC, 0x7F, 0xC0, 0x1F, 0x08, 0xA8, 0xF8, 0x9F, 0x77, 0xC0,\n0x77, 0x24, 0xF9, 0xD0, 0x01, 0x18, 0xE1, 0xC7, 0x1C, 0x3C, 0x31, 0xF9, 0xDF, 0x4B, 0xCD, 0x01,\n0x71, 0xDD, 0x09, 0x07, 0x2C, 0x5F, 0xC3, 0x3F, 0x97, 0x1A, 0xC1, 0xED, 0x4F, 0x0A, 0x8F, 0xFA,\n0xA2, 0xC4, 0x03, 0x33, 0x90, 0xFC, 0x0F, 0x01, 0x01, 0x15, 0xFE, 0x81, 0x80, 0x92, 0x7D, 0x7C,\n0x52, 0xD5, 0xDE, 0xFF, 0x90, 0xBC, 0xFE, 0x35, 0xE8, 0x13, 0x86, 0x82, 0x5F, 0xE4, 0x3A, 0x00,\n0x09, 0x79, 0xC4, 0x33, 0x2A, 0x54, 0xC5, 0x50, 0x30, 0x50, 0x48, 0x5B, 0x10, 0x45, 0xEF, 0x8A,\n0xBC, 0x95, 0x66, 0x40, 0x4F, 0x10, 0xA5, 0x1B, 0x70, 0xDD, 0xCE, 0xA4, 0x4A, 0x1A, 0x20, 0xDA,\n0xBF, 0x88, 0xCA, 0x3F, 0x64, 0xA6, 0xF2, 0x4F, 0x77, 0xC0, 0x59, 0xE0, 0x1F, 0x52, 0xF2, 0xBF,\n0x69, 0xAB, 0x16, 0xFD, 0xAF, 0x9D, 0x1E, 0x0C, 0x10, 0xA7, 0x4F, 0x7E, 0x20, 0xE4, 0xB8, 0x2B,\n0x00, 0x7B, 0x76, 0x40, 0x0F, 0xBF, 0xCF, 0x81, 0x40, 0xF2, 0x3C, 0x69, 0x80, 0xF0, 0x3F, 0x04,\n0x93, 0x61, 0xB2, 0xB7, 0xC4, 0x47, 0x88, 0x73, 0x19, 0xFC, 0x5D, 0x11, 0xF9, 0x3C, 0xFC, 0xA8,\n0x30, 0x0A, 0x8D, 0xFE, 0xC7, 0xD1, 0xBB, 0xFF, 0x74, 0x07, 0x8C, 0x01, 0x01, 0x17, 0xB3, 0x22,\n0xFF, 0xA4, 0x03, 0xEE, 0xFC, 0x6F, 0x27, 0x84, 0x73, 0x2F, 0x80, 0xC8, 0x28, 0x4B, 0xC0, 0xA1,\n0x48, 0x9D, 0xE9, 0x03, 0xAC, 0xD6, 0xFB, 0x51, 0x06, 0x80, 0x55, 0x07, 0xF4, 0xFC, 0x63, 0x9E,\n0xB9, 0x56, 0x70, 0xEC, 0x06, 0x04, 0xF3, 0x5A, 0x20, 0x0C, 0x0D, 0xE0, 0x68, 0x80, 0x2F, 0xE0,\n0x80, 0x59, 0xFF, 0x43, 0x2C, 0xFE, 0x87, 0xA1, 0xE0, 0xB4, 0x01, 0x0E, 0x45, 0xB2, 0xFC, 0xDB,\n0xCE, 0xF7, 0x93, 0x6E, 0x03, 0x83, 0x7F, 0x88, 0xEA, 0x7F, 0xC8, 0xCF, 0x19, 0x09, 0x3C, 0x13,\n0x00, 0x54, 0xFD, 0xEF, 0x65, 0x2F, 0x00, 0x84, 0xF8, 0xC1, 0x00, 0x9F, 0xB2, 0x03, 0x1E, 0x8B,\n0xF2, 0x1F, 0x4F, 0x07, 0x3C, 0x3D, 0xF2, 0x2D, 0xDF, 0x88, 0x40, 0x37, 0x1D, 0x30, 0x69, 0x80,\n0x47, 0xF0, 0x3F, 0x95, 0x80, 0x81, 0x7A, 0xC0, 0xDF, 0xFB, 0x49, 0xFB, 0x43, 0xFB, 0x97, 0x8A,\n0x1B, 0x06, 0x89, 0xD3, 0x01, 0x4B, 0xFC, 0xD3, 0x1D, 0x70, 0x95, 0x20, 0x60, 0xF2, 0x4A, 0xC5,\n0x73, 0x96, 0x56, 0xF0, 0x4C, 0x86, 0x47, 0x3B, 0xA2, 0xF8, 0x35, 0x85, 0x30, 0xE2, 0x0F, 0xD9,\n0x66, 0x08, 0x38, 0x94, 0xA9, 0xEA, 0xE4, 0x58, 0x70, 0x05, 0xFF, 0x43, 0x7E, 0xCC, 0xF7, 0xFF,\n0x09, 0x07, 0x94, 0xA3, 0xB6, 0x54, 0x1D, 0xC9, 0xA2, 0xD1, 0xF1, 0x8E, 0xF6, 0x60, 0x1E, 0x58,\n0xC8, 0x3B, 0x1E, 0x00, 0xE6, 0x5F, 0x09, 0xCC, 0xE4, 0x7F, 0x34, 0xA3, 0x80, 0x13, 0x44, 0x73,\n0xC0, 0xB5, 0xCC, 0x4D, 0x95, 0x34, 0xC0, 0x6A, 0x28, 0x63, 0xE6, 0xDF, 0x28, 0x35, 0x0A, 0xCC,\n0xCF, 0xCD, 0x64, 0xF4, 0x01, 0x60, 0xDD, 0x01, 0xE5, 0x25, 0xA8, 0xFA, 0x1F, 0xF2, 0x9A, 0x06,\n0xB8, 0x27, 0x80, 0x4F, 0x79, 0x28, 0x04, 0xFE, 0xF7, 0x48, 0x0E, 0xE8, 0x90, 0x47, 0xBB, 0xA6,\n0x02, 0x1E, 0x8D, 0xA5, 0x01, 0xD2, 0x93, 0x4D, 0xF6, 0x61, 0x32, 0x8C, 0xDA, 0xFF, 0x87, 0x81,\n0x90, 0x24, 0x02, 0xDD, 0xF0, 0x07, 0xEF, 0xC5, 0x50, 0xB0, 0xEA, 0x7F, 0x2F, 0xF9, 0x81, 0xD2,\n0xFF, 0xA7, 0x8C, 0x04, 0xA7, 0x03, 0x07, 0x54, 0xF8, 0x87, 0x7E, 0xC0, 0x38, 0x03, 0x86, 0x42,\n0xCF, 0x61, 0x00, 0x44, 0x23, 0xE0, 0x30, 0x95, 0x2A, 0x39, 0x19, 0x8E, 0xF8, 0x27, 0xA3, 0xB4,\n0x7F, 0x91, 0xC4, 0x74, 0xC0, 0xC8, 0x3F, 0x74, 0x01, 0xF2, 0xCE, 0x77, 0x03, 0x52, 0x01, 0x04,\n0xD1, 0xFF, 0xE7, 0xE8, 0xC7, 0x47, 0xAA, 0xBC, 0xF1, 0xB2, 0xE0, 0x94, 0xFF, 0x51, 0xA4, 0x84,\n0x6A, 0xFE, 0x07, 0x07, 0xAC, 0x52, 0x9D, 0xA0, 0xD5, 0x30, 0x15, 0x85, 0x7F, 0xC8, 0x56, 0xE2,\n0x8F, 0x33, 0x4B, 0x44, 0xE1, 0x9F, 0xEA, 0x80, 0xE0, 0x9F, 0x6E, 0x81, 0xFE, 0x4A, 0xEE, 0x0D,\n0x80, 0xA9, 0x69, 0x80, 0x4F, 0x79, 0x24, 0xE4, 0x38, 0x55, 0xBA, 0xE4, 0xB5, 0x1C, 0x90, 0x9E,\n0x62, 0x01, 0x94, 0x04, 0x4C, 0x18, 0xA0, 0xE4, 0x1F, 0x3F, 0x03, 0x07, 0xCC, 0xF4, 0xFF, 0x81,\n0x80, 0x6F, 0x27, 0x26, 0xC3, 0x7C, 0x70, 0xC5, 0xE4, 0xBB, 0xE2, 0xCD, 0x15, 0x97, 0xDC, 0x92,\n0x10, 0xE0, 0x4F, 0x19, 0x0B, 0xC6, 0x15, 0x27, 0xFA, 0x01, 0xA5, 0x00, 0x9A, 0x1D, 0x70, 0x96,\n0x8E, 0x1F, 0x02, 0xC1, 0x40, 0x30, 0xEF, 0xE7, 0x48, 0x91, 0x80, 0x00, 0xA0, 0xEC, 0x06, 0x14,\n0x83, 0xA0, 0xEB, 0x4C, 0x94, 0xF1, 0x8F, 0xA4, 0x03, 0xA2, 0xFF, 0x8F, 0xA1, 0xE7, 0xC0, 0x16,\n0x8B, 0x1F, 0xE7, 0x48, 0x39, 0xA0, 0x67, 0x9F, 0x43, 0x1F, 0x1D, 0xB8, 0x62, 0x49, 0x88, 0x1C,\n0xFF, 0x35, 0x3A, 0xE0, 0x3A, 0x47, 0x40, 0x39, 0x0A, 0x3C, 0x4C, 0x27, 0xBD, 0x00, 0x44, 0x86,\n0x97, 0x84, 0x48, 0x09, 0x9C, 0xA5, 0xDF, 0x57, 0x03, 0xFF, 0x90, 0xEC, 0x04, 0x40, 0xDD, 0x01,\n0x21, 0x80, 0x53, 0xAE, 0xC8, 0x9B, 0x62, 0x80, 0xEF, 0xF6, 0x23, 0x80, 0x8F, 0x35, 0x12, 0xE2,\n0xED, 0x4F, 0x6E, 0xE1, 0xCE, 0x2F, 0x30, 0x40, 0xF8, 0x9F, 0xEE, 0x80, 0x49, 0xFC, 0xF1, 0x92,\n0x10, 0x39, 0x16, 0x7C, 0x75, 0xE2, 0x87, 0x7F, 0xA9, 0xBA, 0x12, 0x31, 0x28, 0x01, 0x18, 0xE1,\n0x27, 0x20, 0x98, 0xEF, 0xFF, 0xD3, 0x1D, 0x30, 0x1F, 0x1B, 0xFF, 0x30, 0x12, 0x82, 0xE6, 0x2F,\n0xFB, 0x5F, 0x26, 0xDB, 0x61, 0x62, 0x01, 0x5C, 0x96, 0x80, 0xED, 0x8E, 0x30, 0x0C, 0x00, 0x2B,\n0x0E, 0x48, 0x90, 0x99, 0x20, 0x92, 0x80, 0x72, 0x01, 0x88, 0xC7, 0x5A, 0x68, 0x08, 0xBB, 0x03,\n0xA6, 0x03, 0x42, 0x01, 0x1D, 0x18, 0x83, 0x21, 0x06, 0xFD, 0xF3, 0x33, 0x62, 0x44, 0x37, 0x20,\n0xF8, 0x27, 0x09, 0xD8, 0xFE, 0x8F, 0x05, 0xFF, 0x24, 0x01, 0xAB, 0xFD, 0x17, 0x60, 0x98, 0x49,\n0x62, 0x01, 0xC8, 0x68, 0x9E, 0x8E, 0x58, 0x12, 0x72, 0xCE, 0x6F, 0x60, 0x32, 0x9D, 0xF8, 0x27,\n0x1E, 0x4F, 0xAD, 0x06, 0x38, 0x68, 0x67, 0xDA, 0x04, 0x60, 0x5F, 0x02, 0xF8, 0x84, 0x07, 0x42,\n0x04, 0xF8, 0x0E, 0x3D, 0x1D, 0x50, 0xF8, 0x5F, 0x12, 0x7F, 0x71, 0x2C, 0x18, 0x05, 0xDF, 0x05,\n0x82, 0x60, 0x28, 0x58, 0xFA, 0x9F, 0xC4, 0x1F, 0xDF, 0x1B, 0x15, 0x04, 0x6C, 0x4E, 0x80, 0xE6,\n0x12, 0xB3, 0xCC, 0xB5, 0x82, 0x05, 0xFD, 0xF2, 0x0E, 0x98, 0x07, 0xE0, 0x74, 0x4F, 0x01, 0xCF,\n0xF0, 0x50, 0x44, 0x05, 0x20, 0x82, 0x95, 0x70, 0x1C, 0xF0, 0x4F, 0xA6, 0xDE, 0x77, 0xC0, 0x61,\n0x36, 0x7B, 0x02, 0x84, 0x06, 0xB0, 0x42, 0x40, 0x66, 0x4C, 0x16, 0x80, 0x4C, 0xC0, 0xF6, 0x04,\n0xC0, 0x68, 0x74, 0x3B, 0x0E, 0xFE, 0x11, 0xBA, 0x01, 0x5F, 0xB4, 0x06, 0x40, 0xA8, 0xBC, 0x88,\n0xC3, 0x1F, 0xD0, 0x3F, 0xFE, 0xE7, 0xE4, 0x50, 0x30, 0x26, 0x40, 0xEB, 0x0E, 0x98, 0xFF, 0x9B,\n0x5A, 0xEE, 0xC7, 0xA7, 0x85, 0x97, 0x4A, 0x2C, 0x00, 0xC9, 0x64, 0x3B, 0x8A, 0x73, 0xD4, 0x1D,\n0x07, 0x79, 0x85, 0x70, 0xFE, 0x6D, 0x15, 0xFC, 0xB3, 0x0B, 0x60, 0xFE, 0x0A, 0x4C, 0x77, 0x00,\n0x4E, 0x43, 0x6F, 0x4E, 0x3B, 0x5D, 0x0D, 0x10, 0xCE, 0xF7, 0xE6, 0x18, 0x60, 0x42, 0x00, 0xFF,\n0xCB, 0x25, 0x21, 0x71, 0xFC, 0x57, 0x6C, 0x7E, 0x3A, 0x20, 0x92, 0xF6, 0x3F, 0x0C, 0x84, 0xC8,\n0xEF, 0x42, 0xCA, 0x38, 0x60, 0xDB, 0x00, 0x1B, 0xE4, 0xBB, 0x0A, 0x25, 0x44, 0x10, 0x50, 0x06,\n0x17, 0x8C, 0x26, 0x80, 0xA8, 0x53, 0xAB, 0x00, 0xCA, 0x25, 0x21, 0xAF, 0xF2, 0x9F, 0x14, 0xB7,\n0x94, 0xDE, 0x37, 0x81, 0xF9, 0x73, 0x35, 0x2F, 0xA4, 0xD6, 0xF9, 0x07, 0x07, 0x6C, 0xF6, 0x04,\n0xC2, 0xFF, 0x52, 0x00, 0xB4, 0xF0, 0x4F, 0x2E, 0x09, 0xE1, 0x05, 0x20, 0x41, 0xE8, 0x30, 0x0B,\n0x70, 0x37, 0x1A, 0x8C, 0x55, 0xC0, 0xF0, 0x3F, 0x46, 0x9E, 0x23, 0x1F, 0x74, 0x90, 0x91, 0xD9,\n0x76, 0x40, 0x4C, 0x80, 0x91, 0x71, 0x82, 0x8A, 0x52, 0xF8, 0x9B, 0x88, 0x80, 0x55, 0x73, 0x3A,\n0xE4, 0xB0, 0x90, 0xB6, 0x00, 0x5E, 0xCF, 0xB3, 0xD9, 0xCE, 0x77, 0xCB, 0x76, 0xD0, 0xFF, 0x67,\n0x01, 0xE0, 0x0C, 0xFC, 0x53, 0x1D, 0x10, 0x0D, 0x60, 0x55, 0x01, 0x5B, 0xDD, 0x7F, 0xFB, 0x08,\n0x7C, 0x43, 0x0C, 0xF0, 0xDD, 0x7E, 0xFC, 0xAF, 0x7F, 0x02, 0xEA, 0x0E, 0x48, 0x9E, 0xF7, 0x59,\n0x82, 0x7E, 0x58, 0x12, 0x82, 0xF2, 0x69, 0x3E, 0x63, 0x38, 0xA0, 0x10, 0x40, 0xE1, 0x80, 0xED,\n0x06, 0x30, 0x5A, 0xBD, 0xEE, 0x0C, 0x8F, 0xAE, 0xC4, 0x84, 0x68, 0xD1, 0x02, 0x9E, 0xE6, 0x14,\n0xF0, 0xAC, 0x84, 0xC0, 0x33, 0xFB, 0x3A, 0xA6, 0x8D, 0xEA, 0x7F, 0xC8, 0x79, 0xE3, 0xDE, 0x30,\n0xF3, 0x62, 0xAE, 0x9B, 0xBE, 0x32, 0x2C, 0x66, 0x27, 0x40, 0xF0, 0xBF, 0x5C, 0xC4, 0x04, 0x18,\n0x11, 0xB9, 0x24, 0x04, 0x03, 0x20, 0x6E, 0x4C, 0x37, 0x14, 0xFF, 0x18, 0x4B, 0x42, 0x62, 0x33,\n0xD8, 0x8F, 0xFC, 0x46, 0xEA, 0xD1, 0x9E, 0x1F, 0x79, 0x1F, 0xA4, 0x27, 0xC4, 0x04, 0xC0, 0x7C,\n0xCA, 0x00, 0x44, 0x46, 0x4C, 0x40, 0xBC, 0x00, 0x43, 0x44, 0x73, 0xC0, 0x79, 0x21, 0x23, 0x2C,\n0x09, 0x79, 0x45, 0x75, 0x56, 0x8A, 0x98, 0x00, 0x53, 0x88, 0x26, 0x80, 0xA8, 0xA9, 0x01, 0x60,\n0x80, 0xF0, 0x50, 0x06, 0xF8, 0x34, 0x97, 0x84, 0x1C, 0xF7, 0x4A, 0x40, 0xBB, 0x02, 0xC2, 0xFF,\n0x32, 0x02, 0x88, 0x25, 0x21, 0x58, 0x00, 0x52, 0x4A, 0x93, 0x80, 0x71, 0x01, 0xB0, 0xE4, 0x5F,\n0x74, 0x40, 0x2E, 0x5C, 0xD9, 0xF7, 0xC0, 0xBE, 0x10, 0x80, 0x70, 0x99, 0x1A, 0x00, 0xC6, 0x11,\n0x4D, 0x07, 0x8A, 0x2A, 0x80, 0xA8, 0x52, 0x00, 0x2D, 0x03, 0x21, 0xB3, 0xE2, 0x67, 0xC5, 0xE9,\n0x5F, 0x1C, 0x05, 0x1E, 0x29, 0x04, 0xAC, 0xC0, 0x3F, 0x25, 0x18, 0xFE, 0x9C, 0xAC, 0xCB, 0x79,\n0xAE, 0xFA, 0x1F, 0x08, 0xD8, 0xF4, 0x3F, 0x9E, 0xD2, 0x1C, 0xB5, 0x2F, 0x16, 0xFF, 0xD8, 0x13,\n0x10, 0x03, 0xC0, 0x0C, 0x3B, 0xAF, 0x7E, 0xF8, 0x0D, 0x3C, 0x26, 0x02, 0xAA, 0x1D, 0x80, 0x72,\n0x28, 0x58, 0xF9, 0x93, 0x78, 0x49, 0x48, 0x8D, 0xF1, 0xDF, 0x62, 0x14, 0xFF, 0x93, 0x4B, 0x42,\n0x5E, 0x61, 0x00, 0x24, 0x9B, 0xF4, 0x04, 0x68, 0x65, 0x28, 0x18, 0xFE, 0xA7, 0x5B, 0xA0, 0x74,\n0xBF, 0xE9, 0x6B, 0x19, 0xE0, 0xBB, 0x39, 0x03, 0x7C, 0x9A, 0x4B, 0x42, 0x8E, 0xCB, 0xE5, 0x50,\n0x04, 0x6C, 0x2C, 0x00, 0xC9, 0x0A, 0x20, 0x73, 0xF1, 0xF4, 0xA8, 0xB9, 0x00, 0xB8, 0x90, 0x31,\n0xFA, 0x01, 0xE1, 0x7F, 0x39, 0x07, 0xC4, 0x6D, 0x61, 0x00, 0xBB, 0x76, 0x1B, 0x18, 0x29, 0xF8,\n0x5F, 0xD6, 0x01, 0xD5, 0xAB, 0x8F, 0xAE, 0x55, 0xF8, 0x9F, 0xD5, 0x01, 0x67, 0x6A, 0xE2, 0x92,\n0x52, 0xCC, 0x7F, 0x51, 0x09, 0x38, 0x54, 0x13, 0x66, 0x03, 0xC2, 0xFF, 0xF2, 0x11, 0x13, 0x60,\n0x4A, 0x03, 0x21, 0x71, 0x01, 0x88, 0x2F, 0x71, 0xFE, 0x1F, 0xA3, 0x10, 0xE3, 0xBB, 0x6D, 0x07,\n0xA4, 0x53, 0x42, 0x65, 0xF8, 0x99, 0x53, 0x3F, 0x77, 0x86, 0x01, 0xE1, 0x07, 0xE1, 0x7F, 0x7A,\n0x37, 0xA0, 0x46, 0xF5, 0xF5, 0x04, 0xE3, 0xBF, 0x5A, 0x54, 0xFE, 0x81, 0x80, 0xBB, 0x79, 0x9B,\n0xEA, 0xDB, 0x6A, 0xE0, 0x1F, 0x82, 0xF9, 0x7F, 0x4A, 0x6D, 0xFA, 0xDF, 0xCB, 0xA6, 0xFB, 0x4D,\n0x0F, 0x67, 0x80, 0x4F, 0x71, 0x49, 0x08, 0xFC, 0xEF, 0x51, 0x1C, 0x90, 0xC7, 0x3F, 0x4A, 0x02,\n0xC8, 0x75, 0x1C, 0xEF, 0x00, 0x8D, 0x14, 0xFA, 0x01, 0xE1, 0x7F, 0xDF, 0x0B, 0xF8, 0x51, 0x8D,\n0xC7, 0x30, 0x10, 0x02, 0xE9, 0x4B, 0xB6, 0x81, 0xDD, 0xDD, 0xB1, 0x06, 0xE0, 0x5F, 0x9A, 0x81,\n0xB8, 0x7E, 0x8C, 0xFE, 0x87, 0x35, 0x21, 0x04, 0x42, 0x2D, 0x3F, 0x5B, 0xF8, 0x87, 0xE9, 0x80,\n0x58, 0x00, 0xAC, 0xB5, 0x82, 0xC1, 0xBF, 0x72, 0xAA, 0x70, 0x07, 0x98, 0xB5, 0x1E, 0xB4, 0x7F,\n0xD5, 0x3C, 0xEC, 0x16, 0x80, 0xC4, 0x01, 0x10, 0x3E, 0x05, 0x0E, 0xE9, 0xDC, 0x55, 0x2C, 0x8A,\n0xE3, 0xD3, 0x40, 0x3B, 0xFE, 0x01, 0xE6, 0x01, 0xC6, 0x06, 0x31, 0x15, 0x22, 0x20, 0x26, 0x00,\n0x16, 0xA3, 0xFB, 0x1F, 0x96, 0x84, 0x78, 0x05, 0x1E, 0x1A, 0x12, 0xF8, 0xB7, 0x9D, 0x6B, 0x19,\n0xC5, 0x05, 0x3B, 0x33, 0x3D, 0x68, 0xFF, 0xAA, 0xF9, 0xF9, 0x0C, 0xFE, 0x67, 0x53, 0xC0, 0x24,\n0xF6, 0x5E, 0xC3, 0x00, 0x29, 0x39, 0x03, 0x7C, 0x82, 0x4B, 0x42, 0x8E, 0x0D, 0xE5, 0x80, 0xD3,\n0x01, 0xD9, 0xFF, 0xB0, 0x04, 0x58, 0x6E, 0x58, 0x16, 0x7C, 0xA4, 0xF2, 0x6F, 0x0C, 0x02, 0x92,\n0xE0, 0x41, 0xF7, 0x12, 0x0E, 0x88, 0x3B, 0x44, 0x7F, 0xB0, 0x8F, 0xBE, 0x98, 0x93, 0x2B, 0x57,\n0x9A, 0x8B, 0xE2, 0x92, 0x11, 0x13, 0x08, 0xE0, 0x7F, 0x5A, 0xC5, 0x0D, 0x60, 0x6C, 0xAD, 0xE0,\n0x99, 0x25, 0x7E, 0x02, 0xCC, 0x48, 0xF9, 0x00, 0x62, 0x3A, 0xE0, 0xD0, 0x92, 0x8A, 0x67, 0xC3,\n0x60, 0x01, 0x88, 0x86, 0x40, 0x85, 0x7F, 0x98, 0x10, 0x4D, 0xFC, 0x43, 0xFF, 0x1F, 0xEF, 0x99,\n0x7B, 0xBE, 0x62, 0x94, 0x97, 0xDB, 0xBD, 0x71, 0x01, 0x08, 0x7A, 0x00, 0xA9, 0x62, 0xED, 0x08,\n0x15, 0xDF, 0x1D, 0xE8, 0x09, 0x88, 0x05, 0x20, 0xBA, 0x03, 0xDA, 0xFE, 0x26, 0x7F, 0x0B, 0xEC,\n0xA1, 0x95, 0x80, 0x95, 0xE1, 0xE5, 0x1F, 0x6D, 0x7D, 0x7F, 0xC5, 0xCC, 0x92, 0x2E, 0x77, 0xC0,\n0x87, 0x00, 0x6A, 0x55, 0x2C, 0x00, 0x01, 0x0C, 0x0F, 0x6C, 0x80, 0x4F, 0xC7, 0x01, 0xE1, 0x7F,\n0x8F, 0xE2, 0x80, 0xA7, 0x10, 0xC0, 0xFC, 0xC6, 0x0E, 0xA8, 0xF3, 0x0F, 0xD3, 0x01, 0xE3, 0x00,\n0xB0, 0x14, 0x40, 0x5F, 0x31, 0x1D, 0xD0, 0x2D, 0x00, 0xBE, 0x4A, 0xB5, 0x80, 0xA1, 0x82, 0x9C,\n0x65, 0xD1, 0xFF, 0xA6, 0xAD, 0x0E, 0x64, 0x83, 0xFF, 0x61, 0x51, 0x9C, 0x35, 0x66, 0xFE, 0xF1,\n0xF7, 0x24, 0x69, 0xFC, 0xC3, 0x74, 0xC0, 0x21, 0xF8, 0xA7, 0x76, 0x03, 0xDE, 0x80, 0x7F, 0xC5,\n0xC0, 0xFF, 0x54, 0x02, 0x72, 0x63, 0x75, 0xB7, 0xAE, 0x37, 0x0E, 0x7C, 0xC4, 0x02, 0x03, 0x0C,\n0x93, 0x61, 0x5E, 0x78, 0xF7, 0x6B, 0xFD, 0x04, 0x93, 0x07, 0xD1, 0x0F, 0xF8, 0x60, 0xF0, 0x3F,\n0x8C, 0x05, 0xDB, 0xFE, 0xA6, 0x35, 0x3A, 0x00, 0xD5, 0x80, 0x7F, 0x16, 0x07, 0x9C, 0x99, 0x62,\n0xE3, 0x1F, 0xFA, 0x01, 0x6D, 0x57, 0x20, 0xFC, 0x4F, 0x64, 0xFA, 0xAF, 0x01, 0xC8, 0xE9, 0x5F,\n0x01, 0xFB, 0x26, 0x20, 0xF4, 0xAF, 0x6F, 0x00, 0x76, 0x72, 0x40, 0xE2, 0x1F, 0x04, 0xB0, 0xB4,\n0x11, 0xFF, 0xC6, 0xEF, 0x9B, 0x08, 0x48, 0xFE, 0xF7, 0xFD, 0xDB, 0xF0, 0xBF, 0x9C, 0x02, 0xF2,\n0xCE, 0xF5, 0xFF, 0x71, 0x95, 0x2D, 0x60, 0xA8, 0x60, 0x58, 0x16, 0x3C, 0x58, 0x09, 0xFC, 0xA5,\n0x83, 0x1B, 0x00, 0xEA, 0x15, 0xF3, 0xFF, 0x2C, 0x0E, 0x38, 0xB3, 0x85, 0xFC, 0x6F, 0x8B, 0x0F,\n0xA0, 0xE6, 0x80, 0xE6, 0xA0, 0xFF, 0x4F, 0x0B, 0xC6, 0x3F, 0x0C, 0x0E, 0x48, 0xDA, 0xE6, 0xA9,\n0x16, 0x7B, 0xF6, 0xB8, 0x8F, 0x0F, 0x8F, 0x58, 0xF8, 0xFC, 0x23, 0xCA, 0x8E, 0x75, 0xE8, 0xF4,\n0xC3, 0x72, 0x90, 0x9D, 0x3C, 0x92, 0x03, 0x02, 0x7E, 0xAA, 0x03, 0x5A, 0xFF, 0xA6, 0x35, 0xF8,\n0xA7, 0xC7, 0xF8, 0xF2, 0x8F, 0x46, 0x24, 0xEB, 0xD6, 0xB7, 0xD5, 0xC8, 0x3F, 0xB4, 0x7F, 0x6D,\n0x35, 0x4E, 0xFD, 0xC3, 0x78, 0x9E, 0x9C, 0x06, 0xD3, 0x09, 0x54, 0x36, 0x03, 0x7C, 0x2A, 0x0E,\n0x68, 0x26, 0xE0, 0x81, 0x1C, 0x30, 0x2E, 0x80, 0xA3, 0xBD, 0xB2, 0x8D, 0xF9, 0x06, 0xD0, 0x36,\n0x02, 0x7A, 0xFC, 0x01, 0x75, 0x52, 0x00, 0xC3, 0xEE, 0x7D, 0x5E, 0x00, 0x27, 0x5B, 0xC0, 0x52,\n0x05, 0x29, 0x3C, 0x03, 0x5A, 0x3A, 0xA0, 0xD8, 0x71, 0x3A, 0x5C, 0x7D, 0x5F, 0xDA, 0x83, 0xF1,\n0x5F, 0xD5, 0x01, 0xE1, 0x7F, 0x5A, 0xB6, 0xBF, 0xDA, 0x01, 0x68, 0xE3, 0x1F, 0x63, 0x72, 0x82,\n0x68, 0x04, 0xC4, 0xFC, 0x3F, 0x22, 0x5F, 0x43, 0xFE, 0xB8, 0x40, 0xF5, 0x3C, 0xE1, 0xA2, 0x27,\n0x62, 0x16, 0x4C, 0x53, 0x03, 0x19, 0xA2, 0xA1, 0xDC, 0x10, 0xFF, 0x8C, 0x08, 0x5C, 0x5B, 0xB1,\n0xFE, 0xBC, 0x1E, 0x1A, 0x73, 0x7B, 0x57, 0xCF, 0xB5, 0x60, 0x3A, 0x20, 0xF8, 0xA7, 0xC5, 0xFE,\n0xFF, 0x4A, 0xB3, 0xFF, 0x11, 0x28, 0x07, 0x48, 0x12, 0x81, 0xDD, 0x01, 0x68, 0x17, 0xC0, 0xFF,\n0x2D, 0x00, 0xBF, 0x30, 0xCF, 0x06, 0x0C, 0x7C, 0x53, 0xF1, 0x47, 0x5F, 0x93, 0xF4, 0xA9, 0x29,\n0x63, 0x2A, 0x20, 0x20, 0x10, 0x98, 0xD1, 0x40, 0x02, 0x9B, 0xD6, 0x02, 0x5E, 0xFA, 0x67, 0x97,\n0xA0, 0x5E, 0xFB, 0x28, 0x2F, 0x99, 0x95, 0xFD, 0xFA, 0xE3, 0xAB, 0xD5, 0x96, 0x8D, 0xFD, 0x93,\n0x72, 0x8E, 0x11, 0x10, 0x2D, 0xA3, 0xEA, 0x6E, 0x68, 0xCA, 0x5D, 0x65, 0x35, 0xC0, 0x4E, 0xFC,\n0xDB, 0xB5, 0x80, 0x3D, 0xF4, 0x62, 0x65, 0xAA, 0x41, 0x02, 0x3D, 0x19, 0x9B, 0x93, 0x5E, 0x30,\n0xF7, 0xAF, 0x79, 0x07, 0xD5, 0x70, 0x80, 0x01, 0x5A, 0x62, 0xFE, 0xAB, 0x6A, 0xAB, 0x01, 0xDE,\n0x5D, 0x8F, 0x46, 0x73, 0x6B, 0xCE, 0xAD, 0x56, 0x4F, 0x06, 0x68, 0x6F, 0x2E, 0x74, 0x07, 0x20,\n0xE0, 0x87, 0x00, 0x80, 0x4F, 0x40, 0x00, 0xED, 0xFF, 0x0D, 0x07, 0x04, 0x60, 0xFF, 0x02, 0xA8,\n0xB7, 0x7E, 0x71, 0x57, 0x04, 0x1B, 0x00, 0x79, 0x18, 0x04, 0x04, 0x04, 0x02, 0x21, 0x80, 0x38,\n0xFD, 0x20, 0xCE, 0x81, 0x69, 0x6B, 0xA0, 0x54, 0xC1, 0x93, 0xE5, 0xD5, 0x72, 0x99, 0x5E, 0xFD,\n0xB6, 0x1B, 0x01, 0x46, 0xCE, 0x06, 0x76, 0x00, 0x5A, 0xB3, 0xE9, 0xD2, 0x07, 0x48, 0x04, 0x1C,\n0x99, 0x04, 0x64, 0x3B, 0x02, 0x01, 0xD5, 0x71, 0x60, 0xB3, 0x2D, 0xD9, 0xF9, 0x77, 0xCF, 0x7D,\n0x80, 0x4C, 0xB3, 0x88, 0xAE, 0xBD, 0x31, 0xE0, 0xA6, 0x04, 0x52, 0x02, 0xEB, 0x7C, 0xF5, 0x47,\n0xBF, 0x83, 0x31, 0xFA, 0xC9, 0xD0, 0xF7, 0x66, 0x02, 0xDE, 0x4C, 0xAC, 0xFC, 0xAB, 0xEB, 0xEA,\n0xD6, 0xF6, 0x52, 0x6D, 0x47, 0xDB, 0x91, 0x95, 0x7F, 0x66, 0x02, 0x62, 0x0C, 0xD8, 0x90, 0xE9,\n0x97, 0x66, 0xFE, 0xAD, 0x44, 0xFB, 0x45, 0x4E, 0x83, 0xB1, 0xD3, 0xC7, 0xC3, 0xCE, 0x6E, 0x80,\n0x5D, 0x00, 0x78, 0x98, 0x41, 0x10, 0x3B, 0xFE, 0xFE, 0x36, 0xD1, 0x8F, 0xAA, 0x39, 0xF4, 0x15,\n0xC0, 0xA7, 0x1A, 0xFD, 0x70, 0x67, 0xC0, 0xA3, 0xB1, 0xD1, 0xFF, 0x30, 0x0B, 0xA6, 0xE0, 0x7E,\n0xBC, 0x8F, 0x5F, 0x83, 0x2E, 0xA7, 0x41, 0x47, 0x20, 0xE2, 0xF6, 0xF8, 0x1C, 0x50, 0x4F, 0x9C,\n0x34, 0x1E, 0xAD, 0x08, 0x80, 0xAB, 0x33, 0x63, 0x03, 0x78, 0xDA, 0x81, 0x7F, 0x9B, 0xD9, 0x2B,\n0x13, 0xFF, 0xE6, 0x8E, 0x80, 0x16, 0xFD, 0x63, 0x00, 0xEA, 0x04, 0xC4, 0x8D, 0x01, 0x55, 0x00,\n0x3A, 0x44, 0xDE, 0x4C, 0xAC, 0x21, 0x52, 0x51, 0xF5, 0x6D, 0x5E, 0x8C, 0xEA, 0x3A, 0x20, 0xEE,\n0x06, 0x86, 0x31, 0x10, 0x4C, 0xBB, 0xF8, 0x10, 0xBD, 0x83, 0x41, 0x10, 0xA3, 0x31, 0xEE, 0xBE,\n0x29, 0xBD, 0x8B, 0x03, 0x5A, 0x42, 0x7F, 0xFD, 0xC4, 0x48, 0xC0, 0x11, 0xF1, 0x6F, 0x64, 0xE4,\n0xDF, 0xB9, 0x95, 0x80, 0x8B, 0x8D, 0x9D, 0x80, 0x53, 0xDE, 0x6C, 0x04, 0x1C, 0xAC, 0x56, 0x2B,\n0xCC, 0xE3, 0x92, 0x26, 0xD8, 0x1D, 0x80, 0xBC, 0xB3, 0x19, 0x60, 0xF8, 0x75, 0x23, 0xD5, 0x0E,\n0x45, 0xC0, 0xC7, 0xF5, 0xBF, 0x53, 0x2A, 0x26, 0x01, 0xFC, 0xF0, 0x63, 0x52, 0x40, 0x13, 0x01,\n0x31, 0x0D, 0xBA, 0x45, 0x3B, 0x9C, 0xE3, 0xC4, 0xCF, 0x83, 0x66, 0xC4, 0x41, 0x03, 0x51, 0x4E,\n0xB8, 0xF0, 0x99, 0xFB, 0xA9, 0x4B, 0x8B, 0x75, 0xE9, 0x3E, 0x41, 0xD6, 0xBF, 0x15, 0x6D, 0x26,\n0xFD, 0x73, 0x57, 0xAA, 0x95, 0x7F, 0x1C, 0xC3, 0x07, 0xE5, 0xDC, 0x03, 0xD0, 0x42, 0x40, 0xFA,\n0x9C, 0x32, 0x01, 0x87, 0xB7, 0xA6, 0x59, 0x30, 0x7C, 0x27, 0xF8, 0x1E, 0x3B, 0x00, 0x31, 0x0F,\n0x90, 0xCC, 0x0F, 0xE3, 0xB9, 0xC1, 0xE4, 0xE2, 0xE0, 0x6F, 0x73, 0xC5, 0x2F, 0xEF, 0xC2, 0x43,\n0xAF, 0x7A, 0x5C, 0xE3, 0x7A, 0xB8, 0xE8, 0x7F, 0x3C, 0x06, 0xCC, 0xE9, 0xB9, 0x15, 0x3C, 0xE1,\n0xFF, 0x01, 0xAC, 0x6B, 0xCB, 0xFF, 0x2C, 0xB6, 0x23, 0x2A, 0xEB, 0xAD, 0x89, 0x7F, 0x14, 0x63,\n0x2B, 0xD8, 0x5F, 0x01, 0x66, 0x03, 0x34, 0x3A, 0xE0, 0x8A, 0xAE, 0xD5, 0xB3, 0x16, 0xEE, 0x98,\n0x85, 0x5C, 0xDB, 0x00, 0xB4, 0x71, 0x0A, 0x04, 0xD4, 0x05, 0x10, 0xC8, 0xEC, 0x19, 0x80, 0xDD,\n0xF3, 0x68, 0x03, 0x20, 0x34, 0x0B, 0xC6, 0x15, 0x0D, 0x81, 0xCC, 0x3F, 0x5E, 0x06, 0x77, 0xF4,\n0xB1, 0x65, 0x22, 0x74, 0x8C, 0x20, 0x20, 0x1E, 0xE1, 0xCE, 0xD0, 0x84, 0xBF, 0x0F, 0xDC, 0x94,\n0xBF, 0x08, 0xBF, 0xA5, 0x2C, 0xFC, 0x6C, 0x4C, 0x8B, 0x76, 0x62, 0xF8, 0x8C, 0xB3, 0x5A, 0x39,\n0xFE, 0xAD, 0x8C, 0x23, 0x20, 0xB4, 0x59, 0xFA, 0x01, 0xE3, 0x3C, 0xD8, 0x85, 0x85, 0x7F, 0x11,\n0x81, 0xBA, 0xFF, 0xAD, 0x1D, 0x02, 0xB7, 0x3A, 0x01, 0x2B, 0xA6, 0x1F, 0x6D, 0x75, 0xBF, 0xFD,\n0x7F, 0x3E, 0x0F, 0x2F, 0xC2, 0xD7, 0xBB, 0xED, 0x1C, 0x30, 0x36, 0x70, 0xD1, 0x13, 0x48, 0xA7,\n0x2E, 0xFC, 0xC3, 0xB0, 0x05, 0x1A, 0x7A, 0x01, 0xC4, 0xBF, 0xE1, 0x41, 0xAC, 0x84, 0xEB, 0x61,\n0x20, 0x84, 0xFF, 0x7A, 0x8A, 0xC5, 0x01, 0x47, 0xF4, 0x92, 0x72, 0x55, 0x09, 0x38, 0xF2, 0xFC,\n0xE3, 0x6A, 0xE4, 0x9F, 0xCD, 0x01, 0xE3, 0xFF, 0x57, 0x4D, 0xFE, 0xE7, 0xAF, 0x55, 0x5C, 0xBF,\n0x99, 0x69, 0x30, 0x14, 0xA3, 0xFF, 0xD9, 0x0D, 0x90, 0x0F, 0x5D, 0x9D, 0xEE, 0xC9, 0x03, 0xB0,\n0xBB, 0xFF, 0x71, 0x51, 0x0C, 0x90, 0x17, 0x82, 0x7C, 0x8C, 0xA9, 0xD0, 0x06, 0xFE, 0xC1, 0x01,\n0x65, 0x27, 0x60, 0x38, 0x89, 0x4B, 0xE1, 0x38, 0x8C, 0x39, 0xA7, 0x7C, 0x74, 0x92, 0xCA, 0x12,\n0xC1, 0xD5, 0xE1, 0x36, 0xD9, 0x6E, 0x38, 0x0B, 0x65, 0x65, 0xC4, 0x1F, 0x6F, 0x2A, 0x01, 0x17,\n0x88, 0xA1, 0x01, 0x1C, 0xAB, 0x92, 0x91, 0x37, 0x15, 0xDA, 0x8F, 0x86, 0x45, 0xB1, 0xB9, 0x65,\n0xFF, 0xE3, 0x4C, 0xE8, 0x44, 0xF5, 0x3F, 0xB5, 0x01, 0x2C, 0xBF, 0x1A, 0xE4, 0x81, 0x05, 0x0E,\n0xF8, 0xC3, 0x24, 0x40, 0x2C, 0xFB, 0x88, 0x4B, 0x80, 0xFD, 0x8F, 0xC2, 0x16, 0xE1, 0xC8, 0xE3,\n0x26, 0xE1, 0x09, 0xCF, 0xBF, 0xEE, 0x0E, 0xA8, 0xC4, 0xFF, 0xF5, 0x13, 0x22, 0xA0, 0xC5, 0xFF,\n0xDC, 0xCB, 0xAA, 0xF7, 0x03, 0x06, 0xFC, 0xF1, 0x6E, 0xA1, 0xF2, 0x2F, 0xC6, 0x68, 0x80, 0x5C,\n0x55, 0xFE, 0xAD, 0xA8, 0xB8, 0x16, 0x0B, 0xAE, 0xE5, 0xB6, 0xFC, 0x01, 0x80, 0x1C, 0x13, 0x00,\n0xED, 0x7D, 0x80, 0x1D, 0x1C, 0xB0, 0x91, 0x3E, 0xF1, 0x87, 0xF4, 0xEF, 0x7F, 0x7A, 0x88, 0x7C,\n0x16, 0x02, 0x7A, 0xFF, 0x3B, 0xE2, 0xC2, 0x14, 0x1C, 0x5B, 0xF8, 0x27, 0x09, 0x28, 0x64, 0x30,\n0xDC, 0x0E, 0x06, 0x77, 0xC3, 0x8F, 0xB6, 0x97, 0x2A, 0x4B, 0x49, 0x40, 0x09, 0x3F, 0xBF, 0x8F,\n0xD7, 0x14, 0x17, 0x0D, 0x80, 0xD1, 0x00, 0x55, 0x07, 0x5C, 0x20, 0x9B, 0x32, 0xFF, 0x5E, 0x81,\n0x7F, 0x4A, 0x3F, 0xE0, 0x76, 0x14, 0xFD, 0x8F, 0x4D, 0xB0, 0xEC, 0x80, 0x55, 0xF8, 0xF8, 0xB3,\n0x02, 0xA2, 0xBD, 0x98, 0x5E, 0x34, 0x6B, 0x4F, 0xFB, 0x6E, 0x58, 0xA1, 0x63, 0x2F, 0x0E, 0x65,\n0x34, 0xC7, 0x7F, 0x81, 0x3F, 0xAE, 0xF1, 0x49, 0xFE, 0xDD, 0xC8, 0xCC, 0x00, 0x43, 0x3F, 0x00,\n0x62, 0x26, 0xA0, 0x1D, 0x80, 0xFE, 0xAF, 0xE7, 0xAC, 0x8B, 0x43, 0xC1, 0xB7, 0xC3, 0xDA, 0xD1,\n0x2F, 0xC8, 0xB5, 0x0E, 0xC0, 0x08, 0x41, 0xCD, 0xEB, 0xF1, 0xFE, 0x2F, 0x2C, 0x8D, 0xDF, 0xC0,\n0x40, 0xAD, 0xFD, 0xBB, 0xC2, 0xB5, 0x9A, 0x1A, 0xFD, 0x98, 0x76, 0x04, 0xA0, 0xDF, 0x59, 0x0C,\n0x50, 0xE8, 0x5F, 0x19, 0x6A, 0x6F, 0x0C, 0x00, 0xBB, 0xF0, 0x2F, 0xF8, 0x1F, 0x08, 0x98, 0x41,\n0x60, 0xC3, 0xFF, 0xC8, 0x00, 0x8B, 0x0E, 0x38, 0x1E, 0x6B, 0xF7, 0x83, 0x06, 0x07, 0x99, 0x7F,\n0x14, 0xDA, 0xB5, 0xEF, 0x07, 0xB8, 0x4C, 0x95, 0x56, 0x30, 0xF2, 0xCB, 0xE1, 0x23, 0x2E, 0x98,\n0xB3, 0x56, 0x51, 0xF9, 0x07, 0x04, 0x5A, 0x6F, 0x87, 0x45, 0xA7, 0x45, 0xFF, 0x63, 0x9D, 0x30,\n0x36, 0x82, 0x83, 0xFF, 0x85, 0x32, 0xBC, 0xCB, 0x22, 0xB0, 0xF2, 0x03, 0x20, 0x11, 0x82, 0x25,\n0xFC, 0xE1, 0x0E, 0xD0, 0x46, 0xFF, 0x03, 0x01, 0xD1, 0x0B, 0x18, 0x4E, 0xFF, 0x80, 0x04, 0x7A,\n0xFE, 0xC1, 0x00, 0x31, 0xF5, 0x19, 0x37, 0x0D, 0x4C, 0x7D, 0x35, 0xDC, 0x43, 0x4F, 0xDD, 0x80,\n0x35, 0xFE, 0x7A, 0xAA, 0xB7, 0x25, 0xFE, 0xCD, 0x47, 0x4E, 0x01, 0xF5, 0x7E, 0xC0, 0x11, 0xDE,\n0x28, 0xD5, 0x01, 0x17, 0x1B, 0x71, 0x3B, 0x2C, 0x13, 0x06, 0xF5, 0xFE, 0x3F, 0x34, 0x58, 0x24,\n0xF9, 0x70, 0xF2, 0x96, 0x81, 0x3E, 0xDD, 0x04, 0xB0, 0x53, 0x3F, 0xE0, 0x5E, 0x7A, 0xC4, 0x1F,\n0x62, 0xE7, 0xDF, 0xDF, 0x7D, 0xDD, 0x12, 0xBA, 0x0D, 0xC0, 0x82, 0x01, 0x7E, 0x38, 0xF6, 0xFE,\n0xF7, 0x21, 0x5A, 0xC1, 0xB9, 0x5B, 0xC1, 0x20, 0xE9, 0x1B, 0x62, 0xE1, 0x01, 0x9B, 0x5F, 0xC4,\n0xDF, 0x15, 0x1F, 0xA2, 0xFC, 0x89, 0x04, 0xFF, 0x43, 0xF2, 0x43, 0xC1, 0x6D, 0xFC, 0xAD, 0x8A,\n0xD3, 0x01, 0x81, 0x3F, 0x5F, 0x37, 0x8A, 0xFF, 0x81, 0x80, 0x6A, 0xFB, 0x17, 0x0A, 0x98, 0x0D,\n0x3E, 0xA7, 0x54, 0xB8, 0x5E, 0xE7, 0x1D, 0x90, 0xAC, 0x6F, 0x67, 0x80, 0xBE, 0x1B, 0xF0, 0x79,\n0xD6, 0xFF, 0x6E, 0x8C, 0xF8, 0x83, 0xFF, 0xC1, 0x01, 0x1D, 0xC6, 0xDC, 0x0E, 0xD5, 0x33, 0x11,\n0xD5, 0x25, 0xFC, 0x0E, 0xBE, 0x10, 0x2E, 0x4E, 0x9C, 0xDE, 0xDD, 0x13, 0x1F, 0x04, 0xEC, 0xC3,\n0x01, 0xD9, 0x7B, 0xC3, 0x20, 0x90, 0xE2, 0x80, 0xE4, 0x7F, 0x9E, 0x7C, 0x7A, 0x3F, 0xA0, 0x7F,\n0x83, 0x50, 0x55, 0xFE, 0x21, 0x3F, 0xAB, 0xE0, 0x8B, 0x0F, 0x8A, 0x13, 0x60, 0x56, 0x74, 0x89,\n0x86, 0x30, 0x0B, 0xA3, 0x02, 0xCA, 0x69, 0xAE, 0xCB, 0x08, 0xC0, 0xDE, 0x04, 0x50, 0x61, 0x9E,\n0xC6, 0xBF, 0xFE, 0x09, 0xF8, 0x48, 0x1D, 0x80, 0x28, 0xA7, 0xF9, 0x11, 0x10, 0xF7, 0x3D, 0x98,\n0x7E, 0x3B, 0xE2, 0xFD, 0xC7, 0x6A, 0xFB, 0x17, 0xC1, 0x8A, 0x38, 0x31, 0x01, 0x26, 0xF4, 0xFE,\n0x85, 0x0D, 0xB7, 0xC4, 0x92, 0xED, 0x5F, 0x91, 0x04, 0xF9, 0x5E, 0xEE, 0x06, 0x80, 0x9B, 0xE1,\n0x81, 0xDE, 0xFC, 0x04, 0xC0, 0x3D, 0x04, 0x6E, 0x4C, 0xFE, 0xC7, 0x7B, 0xB5, 0xFD, 0xAB, 0x3B,\n0x20, 0x3E, 0xA8, 0xD1, 0x03, 0xEB, 0xE1, 0x5D, 0x9E, 0x7F, 0x30, 0xC0, 0x02, 0x01, 0xC9, 0xFF,\n0xEC, 0x00, 0xBC, 0x17, 0x69, 0xDC, 0xDA, 0x0F, 0x95, 0x00, 0x17, 0xC8, 0x07, 0xFD, 0x83, 0x23,\n0x46, 0x51, 0x8C, 0xE3, 0x25, 0x6D, 0xFE, 0xF5, 0x35, 0x19, 0x86, 0xB9, 0x07, 0x03, 0xA4, 0x5D,\n0x95, 0xF3, 0xBF, 0x6A, 0xD4, 0xB0, 0x3F, 0x7F, 0xAA, 0xF9, 0x1F, 0xAA, 0xC6, 0x3F, 0x64, 0x63,\n0x35, 0xC0, 0xA2, 0x04, 0x86, 0xF1, 0x0F, 0x57, 0xB9, 0x88, 0x7E, 0x9D, 0xB8, 0x5F, 0x2D, 0x61,\n0x80, 0x05, 0x01, 0xEC, 0x60, 0x80, 0x92, 0x7E, 0x8F, 0x25, 0x80, 0x88, 0x1D, 0x7F, 0x7F, 0xF7,\n0xE2, 0x7F, 0x02, 0x80, 0x9F, 0xE5, 0x26, 0x40, 0x13, 0x00, 0x8F, 0x42, 0xF9, 0x98, 0x35, 0xF0,\n0x88, 0x5A, 0xBA, 0x0A, 0x00, 0x91, 0x54, 0x23, 0xF8, 0x03, 0xE2, 0x62, 0xFC, 0x46, 0x10, 0xDE,\n0x63, 0x32, 0x8C, 0x6C, 0x04, 0x33, 0xFF, 0x64, 0x5A, 0xBD, 0x25, 0x8D, 0x13, 0x5C, 0x52, 0x5C,\n0x0B, 0xAD, 0x60, 0x89, 0x3F, 0xCA, 0x26, 0xC7, 0x3F, 0x64, 0xE3, 0x77, 0x59, 0xFF, 0x93, 0x04,\n0x1C, 0x95, 0x3A, 0x00, 0x71, 0x18, 0xCD, 0x89, 0x80, 0xB7, 0x39, 0xFE, 0xC1, 0x00, 0x79, 0x5F,\n0xD5, 0x16, 0xFF, 0xB3, 0xF3, 0x0F, 0x0E, 0xC8, 0x28, 0x13, 0xFA, 0x47, 0x01, 0xF9, 0x02, 0x07,\n0xFD, 0xEF, 0xED, 0x7E, 0x2D, 0x2C, 0x03, 0x01, 0xFF, 0x90, 0x89, 0xDD, 0x01, 0xB3, 0xFC, 0x83,\n0xFF, 0x46, 0x12, 0x0E, 0x53, 0x61, 0xFE, 0xC1, 0xFE, 0xE8, 0x45, 0xAD, 0xE9, 0x98, 0xF7, 0x3F,\n0x51, 0x35, 0xFE, 0x21, 0x1B, 0xAB, 0x01, 0x16, 0xF8, 0x37, 0xF0, 0xDE, 0xC7, 0xBB, 0xD0, 0x16,\n0x7E, 0x89, 0x59, 0x0D, 0x2D, 0xFF, 0x5B, 0xEA, 0x00, 0x04, 0xFC, 0x54, 0x03, 0xCC, 0x12, 0xCF,\n0x0E, 0xB5, 0xC7, 0x03, 0x60, 0xFF, 0xFE, 0x27, 0x5B, 0xC1, 0xF2, 0x8B, 0x81, 0x8F, 0x5A, 0x06,\n0xC8, 0xC7, 0xC4, 0xAA, 0x60, 0x6E, 0xFF, 0xFE, 0x60, 0xF9, 0x5E, 0x60, 0x4C, 0x80, 0x6E, 0x18,\n0x60, 0x70, 0x40, 0xD9, 0x04, 0x5E, 0xA6, 0x83, 0x91, 0x60, 0x5C, 0x2B, 0xB1, 0xE1, 0xEB, 0x34,\n0xD0, 0xD7, 0x6C, 0x23, 0x18, 0xE0, 0xC3, 0x59, 0x8A, 0x80, 0xD4, 0xD8, 0x09, 0xD8, 0xE3, 0x03,\n0x95, 0x90, 0x57, 0x79, 0xFE, 0x89, 0x56, 0xF0, 0x28, 0xB9, 0x00, 0x24, 0x16, 0x30, 0x30, 0x39,\n0x21, 0xFA, 0x76, 0x67, 0x3F, 0xD8, 0x13, 0x12, 0xFB, 0xE4, 0x1F, 0x08, 0x18, 0xA7, 0x03, 0x42,\n0x02, 0x03, 0xDE, 0xDA, 0x08, 0xE4, 0x60, 0x3D, 0x08, 0xC6, 0x3F, 0xFC, 0x04, 0xC0, 0x7E, 0x1D,\n0x10, 0xED, 0x5F, 0x18, 0x60, 0x66, 0x32, 0xCC, 0x6D, 0x85, 0x17, 0x34, 0x8C, 0x04, 0xF3, 0xB9,\n0xDA, 0xFE, 0x45, 0xD5, 0xF8, 0xA7, 0x13, 0x70, 0x2A, 0x0C, 0xF0, 0xCB, 0xDC, 0x02, 0x10, 0x07,\n0x3F, 0x5C, 0xA8, 0x14, 0x31, 0x0C, 0x3C, 0x75, 0xFE, 0xC7, 0x00, 0x54, 0xE9, 0xE3, 0xAA, 0x49,\n0x00, 0x73, 0xAC, 0xEB, 0x04, 0xB5, 0x3E, 0xF1, 0x87, 0xFC, 0x97, 0x5F, 0x8C, 0x2E, 0x4B, 0x82,\n0x80, 0xF4, 0x84, 0x43, 0x1E, 0x0C, 0x90, 0x77, 0xB4, 0x1F, 0x2B, 0xFE, 0xA7, 0x38, 0x60, 0xF3,\n0xEB, 0x90, 0xE2, 0x5C, 0xC0, 0xD8, 0x0A, 0x2E, 0x36, 0x80, 0x11, 0x34, 0x11, 0x90, 0xB3, 0x58,\n0x40, 0xC1, 0xB3, 0x34, 0x01, 0x13, 0xF8, 0x43, 0x23, 0x58, 0xFA, 0x1F, 0xB2, 0xE1, 0x42, 0x87,\n0xE4, 0x04, 0xC0, 0x94, 0x56, 0x24, 0x1D, 0xD0, 0xE9, 0xC9, 0x7A, 0x0B, 0x59, 0x09, 0x63, 0x21,\n0xF2, 0x63, 0x7D, 0x17, 0xDA, 0xBF, 0x2D, 0x05, 0x14, 0x4B, 0x42, 0x3A, 0xB7, 0x7F, 0x25, 0xA9,\n0x30, 0x1D, 0x30, 0x6C, 0xA1, 0x02, 0x7E, 0x51, 0xFE, 0xC2, 0x83, 0xDD, 0x7A, 0x10, 0x3A, 0x50,\n0xC1, 0x04, 0x98, 0x9E, 0x09, 0x08, 0xF8, 0xC1, 0x00, 0x93, 0x04, 0xBC, 0x63, 0xFF, 0x6B, 0xDA,\n0x5F, 0x7C, 0x5D, 0xB3, 0xE3, 0xBF, 0xB2, 0x2A, 0xFC, 0xD3, 0x08, 0x38, 0x15, 0x06, 0x98, 0x25,\n0xA0, 0x9F, 0xAE, 0xEA, 0x0D, 0x10, 0xA7, 0xA0, 0xDF, 0x4B, 0xF8, 0x9F, 0x11, 0x80, 0x46, 0x03,\n0xEC, 0xE1, 0xCE, 0x56, 0x45, 0x00, 0xBE, 0x19, 0xFC, 0x13, 0xF8, 0x4B, 0x4F, 0x86, 0xC1, 0x04,\n0x68, 0xEF, 0x80, 0xF1, 0x8C, 0xF6, 0xEF, 0xEB, 0xFC, 0x93, 0x04, 0xC4, 0x04, 0x98, 0x94, 0x01,\n0x62, 0x49, 0x48, 0xB3, 0x64, 0x12, 0x47, 0x82, 0xE1, 0x80, 0x67, 0xED, 0xB2, 0xF2, 0x65, 0x35,\n0x48, 0xF9, 0xDF, 0x34, 0x61, 0x80, 0x54, 0x12, 0xF1, 0xD0, 0x03, 0xFA, 0x38, 0xEE, 0x28, 0xF9,\n0x87, 0x8F, 0x95, 0xD6, 0x0A, 0x0E, 0xC6, 0x17, 0x64, 0x05, 0x65, 0x24, 0x87, 0x82, 0x3D, 0xF3,\n0xEA, 0x3D, 0x08, 0xCA, 0x25, 0x21, 0xCF, 0xBB, 0x08, 0x60, 0x82, 0x54, 0x98, 0x0E, 0xE8, 0x4B,\n0x4B, 0xF0, 0x5E, 0x80, 0x7B, 0x61, 0xDB, 0x1B, 0x31, 0xC6, 0x02, 0x38, 0xA4, 0xA7, 0xE9, 0x80,\n0xF8, 0xDB, 0xDD, 0x01, 0xE7, 0x77, 0xFB, 0xFE, 0x17, 0xB4, 0x0F, 0xF6, 0x17, 0xCF, 0x14, 0xFF,\n0x43, 0x4D, 0xDD, 0x19, 0x66, 0xB3, 0x48, 0xC7, 0x68, 0x80, 0x5C, 0x0B, 0x03, 0xC0, 0xEE, 0x88,\n0xBD, 0x98, 0x04, 0x03, 0x00, 0x16, 0xE9, 0x13, 0x04, 0x50, 0x37, 0xC0, 0x32, 0xFE, 0x3A, 0x30,\n0xAD, 0x4F, 0xFA, 0x21, 0xFF, 0x15, 0xFF, 0x32, 0x00, 0x3C, 0x4D, 0x2C, 0x00, 0x19, 0x1F, 0x09,\n0x03, 0xF4, 0xFD, 0x80, 0x92, 0x7F, 0x66, 0x02, 0x52, 0xFF, 0x5F, 0xDB, 0x00, 0xF9, 0x0C, 0x43,\n0xC1, 0x8D, 0x2C, 0xF3, 0x19, 0xF8, 0x00, 0x81, 0x8E, 0x77, 0xED, 0x84, 0x76, 0x86, 0xE8, 0x88,\n0x49, 0x36, 0x80, 0x93, 0xAD, 0x60, 0x10, 0x0F, 0x02, 0x98, 0x5C, 0x12, 0xB2, 0xF8, 0x0B, 0xFE,\n0xA7, 0x10, 0x70, 0x87, 0x3D, 0xBF, 0x6B, 0x30, 0x70, 0xBE, 0xBE, 0xBE, 0xDD, 0xEB, 0xD5, 0x5F,\n0x37, 0x3E, 0xF4, 0xD8, 0x53, 0xE0, 0x80, 0xCA, 0x02, 0x60, 0xA3, 0xFF, 0xC5, 0x9B, 0xE3, 0xFF,\n0xE4, 0x71, 0xE6, 0x05, 0xAF, 0x81, 0xBC, 0x7D, 0xFC, 0x39, 0xF7, 0xDB, 0xAD, 0x21, 0x4E, 0xF0,\n0xAF, 0x97, 0xE9, 0x80, 0xC4, 0x7E, 0x69, 0x80, 0x13, 0xB7, 0x89, 0x05, 0x20, 0x98, 0x00, 0xE8,\n0x8E, 0xC0, 0xE1, 0x56, 0x15, 0x40, 0xD4, 0x2C, 0xFF, 0x74, 0x07, 0x9C, 0xE6, 0x0C, 0x50, 0x5C,\n0x7F, 0x6E, 0xFC, 0xB7, 0xDD, 0x5E, 0x89, 0x65, 0x2F, 0xAB, 0x25, 0x00, 0x98, 0xA7, 0x4F, 0xA8,\n0x36, 0x03, 0x2C, 0x0A, 0xA0, 0x9D, 0x6A, 0x07, 0xE1, 0xDF, 0x7F, 0xD6, 0xFF, 0x77, 0x9A, 0x23,\n0x60, 0xBB, 0x01, 0xEC, 0xAD, 0xAF, 0xDD, 0x07, 0x18, 0x1D, 0x70, 0x6C, 0xE4, 0x9F, 0xEC, 0x06,\n0x0C, 0xD0, 0x93, 0x7D, 0x80, 0xAC, 0x80, 0xAD, 0x36, 0xF0, 0xF2, 0xAA, 0x44, 0xC0, 0x69, 0xEB,\n0x5E, 0x30, 0xF1, 0xFF, 0xA8, 0xCD, 0x1A, 0x46, 0x85, 0x05, 0xFE, 0x72, 0x06, 0xC8, 0x75, 0x23,\n0xFC, 0x2F, 0x6D, 0x80, 0x9B, 0xBD, 0x0E, 0xC0, 0xEC, 0xA7, 0x4A, 0x10, 0x10, 0xC3, 0x94, 0x41,\n0x03, 0x51, 0xE6, 0x61, 0x51, 0x1C, 0xF8, 0x57, 0x53, 0x40, 0x00, 0xEC, 0x83, 0x03, 0x62, 0x02,\n0xE0, 0x6B, 0xF9, 0x1F, 0xBA, 0x01, 0xFD, 0xB2, 0xE0, 0x70, 0xD3, 0x67, 0x77, 0x48, 0x6F, 0x9C,\n0x08, 0x3F, 0xB7, 0x3D, 0xDC, 0xDC, 0x23, 0xBD, 0x39, 0x20, 0xCF, 0x80, 0x4C, 0x18, 0xA0, 0xAB,\n0xED, 0x97, 0xAA, 0x65, 0xD2, 0xC1, 0xAE, 0x71, 0xBE, 0x87, 0x3F, 0xF9, 0x5E, 0x61, 0x3A, 0xA0,\n0xC2, 0x3F, 0xC4, 0x68, 0x80, 0x12, 0x81, 0x00, 0x5E, 0xB3, 0xC0, 0x01, 0xA7, 0xA8, 0xCB, 0x34,\n0x00, 0x33, 0x13, 0x00, 0xCD, 0x7D, 0x80, 0x46, 0x07, 0x2C, 0xA6, 0x4F, 0xFE, 0x21, 0x76, 0xFC,\n0xFD, 0x2D, 0xF8, 0x67, 0xFF, 0x22, 0x90, 0x7C, 0x01, 0x01, 0x77, 0x0B, 0x80, 0x93, 0x06, 0x08,\n0x07, 0xC4, 0x04, 0xE8, 0x54, 0xE4, 0x8D, 0x11, 0x30, 0x00, 0x0C, 0x03, 0x64, 0xFD, 0x63, 0xFC,\n0x31, 0x01, 0xB5, 0x01, 0x60, 0xA4, 0x79, 0x0B, 0x84, 0xD5, 0x20, 0x38, 0x5F, 0xB3, 0xA2, 0x2D,\n0xDC, 0x06, 0x60, 0xC9, 0x00, 0x5B, 0x04, 0xDC, 0x2C, 0xF2, 0x06, 0x88, 0xEF, 0xC7, 0xC4, 0x02,\n0x60, 0x13, 0x01, 0x77, 0xE8, 0x03, 0x06, 0x51, 0xDA, 0xCB, 0x82, 0xB9, 0xBB, 0x2F, 0x6B, 0x80,\n0x55, 0xFD, 0xBC, 0xFB, 0xFA, 0x8F, 0x1F, 0x05, 0xFF, 0x32, 0xD3, 0x01, 0x9D, 0x02, 0x16, 0xF0,\n0x87, 0x25, 0x21, 0xFC, 0x7B, 0x98, 0x00, 0xDD, 0xAF, 0x03, 0xBA, 0x3F, 0x56, 0x1A, 0x60, 0x62,\n0x49, 0x48, 0xDD, 0x78, 0x09, 0xD7, 0x8D, 0x81, 0xA5, 0x70, 0x6A, 0xF2, 0x3F, 0xB9, 0x24, 0x64,\n0x21, 0x92, 0x5D, 0x12, 0x32, 0xCD, 0x1A, 0x20, 0x6F, 0x7B, 0x03, 0x20, 0xA5, 0x32, 0x1D, 0x20,\n0x4B, 0x05, 0x80, 0xA0, 0x96, 0xDD, 0x00, 0xED, 0x3D, 0x80, 0x4A, 0x0E, 0xC2, 0xBF, 0xC3, 0x37,\n0x80, 0xC9, 0xFF, 0xF2, 0x85, 0x1C, 0x10, 0x0D, 0xE0, 0x68, 0x7D, 0xC2, 0x00, 0xB1, 0x2C, 0x18,\n0xFC, 0x53, 0x09, 0x08, 0xFE, 0xE5, 0x0D, 0x10, 0x4B, 0x42, 0x38, 0x4B, 0x2D, 0xE8, 0x2D, 0xE6,\n0x2B, 0x87, 0xA5, 0xAF, 0x4D, 0xC0, 0x1D, 0x13, 0x07, 0x98, 0x0E, 0xC8, 0x67, 0x05, 0x03, 0xA4,\n0xB2, 0x01, 0xFF, 0x32, 0x02, 0x18, 0xCF, 0xC4, 0x04, 0xE8, 0x7C, 0x05, 0x01, 0x83, 0x93, 0x64,\n0xCA, 0x68, 0x54, 0xDF, 0xDD, 0x62, 0x01, 0x08, 0x25, 0x63, 0x80, 0x58, 0x14, 0x07, 0x00, 0xDA,\n0x07, 0x80, 0xCB, 0x0E, 0xF8, 0x82, 0x2A, 0x6F, 0x94, 0x34, 0x02, 0xB9, 0xA0, 0x1F, 0x10, 0x13,\n0x60, 0xF2, 0x99, 0x74, 0x20, 0xE0, 0xF3, 0xD6, 0x04, 0x18, 0x69, 0x80, 0xD0, 0xC0, 0xE6, 0x02,\n0xB8, 0x39, 0x78, 0x17, 0x5F, 0x5F, 0x7E, 0x10, 0x0F, 0x72, 0x02, 0x60, 0xCE, 0x01, 0xB5, 0x01,\n0x10, 0x64, 0xF3, 0xEF, 0x0C, 0x70, 0x95, 0x11, 0x40, 0xB9, 0x26, 0x6E, 0x09, 0x00, 0x8A, 0x88,\n0x09, 0x30, 0x46, 0x05, 0xA4, 0x6A, 0x55, 0x40, 0x35, 0x87, 0x00, 0x60, 0x07, 0xFE, 0xFD, 0xDD,\n0xC3, 0x02, 0x10, 0x14, 0x4C, 0x88, 0x8E, 0xFD, 0x7F, 0x6C, 0x7A, 0x49, 0x03, 0x8C, 0x4F, 0xCB,\n0x05, 0x20, 0x7A, 0x2B, 0x98, 0x49, 0x27, 0x0D, 0xD0, 0x15, 0x1F, 0x26, 0x5F, 0x68, 0x00, 0x23,\n0x9A, 0x02, 0x86, 0xD1, 0xB4, 0x16, 0xFF, 0xD0, 0x0E, 0xE6, 0xED, 0x4B, 0xE8, 0x5F, 0xD1, 0x00,\n0xA7, 0xC2, 0xFF, 0x84, 0x00, 0xE2, 0x49, 0xAF, 0x80, 0x04, 0xC2, 0xB9, 0x02, 0x40, 0x28, 0x60,\n0xFC, 0x58, 0xA6, 0x0B, 0xD5, 0x79, 0x7D, 0x7B, 0x0B, 0xFF, 0xCB, 0x1A, 0x20, 0x86, 0x82, 0x79,\n0x67, 0xC7, 0x5F, 0x91, 0x7F, 0xF8, 0x92, 0xF4, 0x78, 0x03, 0x98, 0x6C, 0x27, 0xA0, 0x8B, 0xB7,\n0xC5, 0x8C, 0xFF, 0xBD, 0xFE, 0x92, 0x10, 0x42, 0x7C, 0xC2, 0x00, 0xB1, 0xC3, 0x74, 0xC0, 0x6B,\n0x8F, 0x3C, 0x8C, 0x2C, 0x61, 0x1F, 0x5D, 0xB0, 0x79, 0x07, 0xD4, 0x72, 0xD5, 0xF9, 0x27, 0x97,\n0x84, 0x4C, 0xD3, 0x06, 0x88, 0xAA, 0xFA, 0x1F, 0xCA, 0xEE, 0x4B, 0x82, 0x97, 0x79, 0x00, 0x4A,\n0xFE, 0xD9, 0x14, 0x50, 0x27, 0xA0, 0x89, 0x6A, 0x87, 0x54, 0xC0, 0xC3, 0x77, 0x00, 0x6A, 0x04,\n0x0C, 0xFD, 0x7F, 0x50, 0x3D, 0x8C, 0x02, 0xE3, 0x8C, 0xCF, 0xC7, 0xE8, 0xFF, 0x33, 0x12, 0xF0,\n0x7B, 0x07, 0xBB, 0x82, 0x01, 0xF2, 0xE1, 0xEA, 0x04, 0xE3, 0xBF, 0x4A, 0x1A, 0xF3, 0x5F, 0xE2,\n0x74, 0x52, 0x10, 0x10, 0x07, 0x52, 0x40, 0x08, 0xA0, 0x62, 0x80, 0xC2, 0xFF, 0x72, 0x06, 0x08,\n0x07, 0x54, 0xFD, 0x0F, 0x4B, 0x42, 0xB6, 0x18, 0xA1, 0x4C, 0x94, 0x35, 0x6D, 0xEC, 0x80, 0x9E,\n0x7F, 0xF8, 0xA8, 0x27, 0x0C, 0x10, 0x8B, 0xE2, 0xFA, 0xF4, 0x3F, 0x38, 0x20, 0x0B, 0x20, 0x57,\n0xEC, 0x9A, 0x47, 0x4A, 0x14, 0x44, 0xBD, 0xFD, 0xDB, 0x7D, 0x32, 0x0C, 0xFC, 0xAF, 0x68, 0x80,\n0x74, 0xC0, 0x02, 0x90, 0x58, 0xD6, 0xE2, 0x18, 0xCE, 0x35, 0xFF, 0x43, 0x35, 0xF3, 0x0F, 0x0E,\n0x38, 0xD5, 0x0C, 0x10, 0x04, 0x84, 0x00, 0xE6, 0x8A, 0xCF, 0x74, 0x99, 0x07, 0x20, 0xE8, 0xD3,\n0xD1, 0x00, 0xF5, 0xF2, 0xB8, 0x02, 0x08, 0x04, 0xEA, 0xE9, 0xDF, 0xFF, 0xD0, 0x0F, 0x48, 0x95,\n0x07, 0x80, 0xB3, 0x06, 0x18, 0x99, 0x38, 0x06, 0x00, 0x4D, 0x04, 0x8C, 0xF8, 0x93, 0xA3, 0xC0,\n0x57, 0x7C, 0xE0, 0x23, 0xED, 0xDC, 0x37, 0x01, 0x2F, 0x2D, 0x59, 0x05, 0xFF, 0xE3, 0x84, 0x51,\n0x60, 0x74, 0x00, 0x86, 0x43, 0xD8, 0x82, 0x00, 0x6A, 0x06, 0x88, 0x81, 0x90, 0x05, 0x22, 0x0D,\n0x30, 0xEE, 0x31, 0x01, 0xDA, 0xE4, 0x80, 0x25, 0xFB, 0xC3, 0xCA, 0xE0, 0x8A, 0x1D, 0xB0, 0xC2,\n0x27, 0x5D, 0x1A, 0x60, 0x78, 0x2E, 0x38, 0xE0, 0xC4, 0x1C, 0x85, 0x7F, 0x98, 0x0E, 0xE8, 0x24,\n0x90, 0x6B, 0x1E, 0x7F, 0xF1, 0xAE, 0x08, 0x58, 0x00, 0x57, 0x4A, 0xF7, 0x25, 0x21, 0x64, 0xB8,\n0x8A, 0x01, 0x46, 0x07, 0xAC, 0xF8, 0xA5, 0x2B, 0x14, 0xBF, 0xC3, 0x00, 0x88, 0x5A, 0xC1, 0x3F,\n0x2D, 0x1B, 0xA8, 0x5E, 0xC1, 0x00, 0x79, 0xC3, 0x04, 0x40, 0x35, 0x1E, 0x81, 0x4B, 0x1D, 0x80,\n0x5C, 0x3A, 0x09, 0x20, 0x57, 0xBD, 0xD8, 0xA1, 0xD6, 0x3B, 0x00, 0x41, 0xC0, 0xC7, 0xF1, 0x3F,\n0xDC, 0x19, 0x86, 0x17, 0xC0, 0xE5, 0xFB, 0x00, 0xA9, 0x84, 0x81, 0x10, 0x42, 0xE0, 0xFB, 0xB6,\n0xD0, 0xF7, 0x04, 0x3B, 0xC4, 0x29, 0x06, 0x48, 0x47, 0x8C, 0x7F, 0x98, 0x1C, 0x90, 0xC9, 0x47,\n0x59, 0xB9, 0x42, 0x35, 0x59, 0xE8, 0x27, 0xBE, 0xFF, 0xCF, 0x64, 0x80, 0x1B, 0x0C, 0x00, 0xE7,\n0x0C, 0x10, 0x0E, 0xC8, 0x74, 0x33, 0xD4, 0xB8, 0x00, 0x98, 0x4B, 0x32, 0xF8, 0x41, 0xC5, 0xFC,\n0x6B, 0x7C, 0xCA, 0x33, 0x06, 0xC8, 0x3F, 0x01, 0xFF, 0xEC, 0x77, 0xC0, 0xD7, 0x1D, 0x90, 0xBC,\n0x6E, 0x37, 0xD2, 0x2B, 0x03, 0x03, 0x0C, 0xED, 0x5F, 0x5B, 0xE9, 0xE6, 0x80, 0xFE, 0xEF, 0x2B,\n0x1A, 0x60, 0xE5, 0x1D, 0xD0, 0x4F, 0x80, 0xCE, 0x06, 0x0C, 0x34, 0xF2, 0xCF, 0x13, 0x90, 0xDF,\n0x66, 0x43, 0x36, 0x00, 0x5D, 0xD9, 0x00, 0xFD, 0x40, 0x88, 0xBB, 0x18, 0x95, 0x3A, 0x38, 0x5B,\n0x95, 0x00, 0x88, 0x60, 0x01, 0xB0, 0xC5, 0x00, 0x3B, 0x3A, 0xA0, 0x2D, 0x3D, 0x0E, 0xA9, 0x20,\n0x87, 0xFC, 0x1A, 0x74, 0x43, 0xF9, 0xE2, 0xF4, 0xF3, 0xD0, 0xFF, 0xA7, 0x19, 0x20, 0x3D, 0x84,\n0xFE, 0xE9, 0x09, 0x77, 0x40, 0x2D, 0xF5, 0x01, 0xF2, 0xD1, 0x23, 0xD0, 0x46, 0xC0, 0xAB, 0xE5,\n0xC0, 0xEB, 0x9D, 0x5E, 0xFC, 0x9D, 0x11, 0x4C, 0x06, 0xC8, 0x0E, 0xB8, 0xB0, 0x16, 0xB4, 0x7F,\n0x75, 0x07, 0xDC, 0xE2, 0x33, 0x29, 0x0B, 0x9E, 0x67, 0x02, 0xFA, 0x6E, 0x3E, 0xDE, 0xC5, 0x52,\n0x8B, 0xBD, 0xEB, 0x07, 0xB4, 0x02, 0xF0, 0x86, 0x36, 0x13, 0xA7, 0x82, 0x03, 0xB6, 0x89, 0x87,\n0xA3, 0x7C, 0xFE, 0xC1, 0xC0, 0x54, 0x07, 0x5E, 0xF7, 0x5F, 0x61, 0x0B, 0x2F, 0x00, 0x99, 0xD4,\n0xAD, 0x42, 0x35, 0x55, 0xAA, 0x0A, 0x2F, 0x69, 0xBA, 0x20, 0x68, 0xFF, 0x6A, 0x95, 0xFC, 0xCF,\n0x5A, 0xE8, 0x8A, 0x29, 0x1B, 0x20, 0x2A, 0xF1, 0xCD, 0x58, 0x68, 0x02, 0x60, 0x19, 0x80, 0x88,\n0xFD, 0x2B, 0xE2, 0x1E, 0x3D, 0x18, 0xB5, 0xD0, 0x46, 0x37, 0x0E, 0x39, 0x01, 0x5A, 0x2F, 0xF4,\n0x5D, 0xC1, 0x63, 0x8C, 0xF6, 0x26, 0x56, 0x82, 0x00, 0x8A, 0x1F, 0x8F, 0x3B, 0x00, 0x30, 0xCC,\n0x7F, 0x01, 0xFD, 0xF0, 0xC8, 0x9F, 0xC7, 0xD3, 0x0F, 0x96, 0xF6, 0x0C, 0xA6, 0xD6, 0x40, 0xF3,\n0x14, 0x03, 0xA4, 0x6D, 0x31, 0x5B, 0x18, 0x43, 0x03, 0x20, 0x7A, 0x3C, 0x01, 0xB7, 0xD5, 0xB5,\n0x2D, 0xDB, 0xEB, 0xAA, 0xBA, 0xA9, 0xEB, 0x9B, 0xBA, 0x22, 0xC2, 0xC5, 0x13, 0x3C, 0x81, 0x3D,\n0x65, 0x62, 0xCE, 0xFA, 0x81, 0x6E, 0x57, 0x75, 0xAF, 0x57, 0x2A, 0xD4, 0xB0, 0xE5, 0xFC, 0xC6,\n0x15, 0x67, 0x7C, 0xA4, 0x82, 0xEA, 0xF2, 0x82, 0x7E, 0xDF, 0x54, 0xFE, 0x78, 0xE8, 0x20, 0xAB,\n0x95, 0x31, 0x75, 0x45, 0xAF, 0x56, 0xFD, 0xBB, 0xA5, 0x5C, 0x6F, 0xCF, 0xAD, 0x99, 0xFF, 0xB5,\n0x30, 0xC7, 0xD3, 0x4E, 0x31, 0xC0, 0xA0, 0x80, 0xF6, 0x8B, 0x75, 0xD0, 0x06, 0x60, 0xFA, 0x46,\n0x01, 0x5A, 0x02, 0x1D, 0x71, 0xB4, 0xE6, 0xD8, 0x5E, 0x3A, 0xE4, 0x6F, 0x7B, 0xBA, 0x60, 0xCD,\n0x3E, 0xFF, 0xEF, 0x0B, 0x73, 0xA8, 0x8D, 0x6B, 0xCC, 0x87, 0x1D, 0x00, 0xC8, 0x84, 0xA3, 0xC8,\n0xE6, 0x6F, 0x24, 0x20, 0x4E, 0x97, 0x83, 0xE5, 0x77, 0xA6, 0x32, 0x18, 0x3C, 0x7B, 0xF6, 0xC9,\n0xB3, 0xA9, 0x61, 0xA3, 0x5F, 0xA4, 0x6B, 0xD0, 0x58, 0x16, 0x33, 0x6B, 0x99, 0x9D, 0xDB, 0x32,\n0x3B, 0xFF, 0x66, 0x7B, 0x7D, 0xF9, 0xB5, 0x09, 0x80, 0x5F, 0x5F, 0x72, 0xCF, 0x96, 0x5A, 0x5C,\n0xAD, 0x2F, 0x9E, 0x4F, 0xD6, 0x96, 0xB2, 0xBE, 0xB8, 0x21, 0x08, 0xD9, 0xC2, 0xA8, 0x23, 0xD6,\n0xF9, 0x12, 0xCF, 0x64, 0xE1, 0x1F, 0xFD, 0xF4, 0xE7, 0x1F, 0xC6, 0xDC, 0xDF, 0x4C, 0x48, 0x57,\n0x4D, 0xE5, 0xE2, 0xA2, 0x1A, 0x9A, 0x42, 0xBF, 0x76, 0x79, 0xF9, 0xCB, 0xF5, 0xD7, 0x86, 0x72,\n0x69, 0x03, 0xE0, 0x37, 0x6E, 0xFF, 0x95, 0xF5, 0xFD, 0x27, 0x52, 0xEA, 0x57, 0x55, 0xA4, 0xE1,\n0x33, 0x8A, 0xE1, 0x52, 0xA5, 0xDF, 0xE2, 0x16, 0xF0, 0x40, 0x01, 0x20, 0x02, 0xB6, 0x29, 0x77,\n0xAF, 0x3F, 0x00, 0x02, 0x1F, 0x9F, 0x80, 0x56, 0xFE, 0xD9, 0xF3, 0x19, 0xE5, 0x43, 0x13, 0xFE,\n0x3E, 0xA7, 0xA9, 0xD2, 0x9F, 0xFE, 0x60, 0xE3, 0xDF, 0x0F, 0x6F, 0xBF, 0xCF, 0x73, 0x5C, 0x9C,\n0xE8, 0x85, 0x1D, 0x4E, 0x02, 0x0D, 0x03, 0xFE, 0x28, 0x27, 0x03, 0x9B, 0xFF, 0x51, 0xA6, 0xC4,\n0x36, 0xBD, 0xD0, 0xD5, 0xC7, 0x12, 0xA8, 0x96, 0x60, 0x81, 0x66, 0xFE, 0xFD, 0xC5, 0x04, 0xFC,\n0x46, 0x2D, 0xCC, 0xBF, 0xF9, 0xF6, 0xFA, 0x6B, 0x53, 0xB9, 0xBC, 0xBB, 0xBC, 0x1B, 0x56, 0x26,\n0x04, 0x5E, 0xD4, 0x17, 0x93, 0x0B, 0x13, 0xFF, 0x26, 0x37, 0x37, 0x13, 0x0B, 0x01, 0xA3, 0xFF,\n0x01, 0x74, 0x54, 0xF3, 0x85, 0xF2, 0xC7, 0xBD, 0x8D, 0x7F, 0x37, 0x56, 0x02, 0xD2, 0x1F, 0x55,\n0x57, 0x43, 0x53, 0xB9, 0xBB, 0xBC, 0xBC, 0xBB, 0x36, 0xBD, 0xA8, 0xD7, 0xDB, 0x6F, 0xB6, 0xDF,\n0xA8, 0x6F, 0x95, 0x67, 0x20, 0xBD, 0xAD, 0x56, 0x02, 0x7E, 0xD9, 0x81, 0x7F, 0x74, 0xA5, 0x5A,\n0x2E, 0xD5, 0x67, 0x9F, 0x0C, 0x28, 0xEE, 0x7F, 0xF0, 0x54, 0x4F, 0x06, 0x27, 0x83, 0xB7, 0x14,\n0x01, 0x04, 0xE1, 0xCA, 0xDF, 0xE3, 0xDB, 0x3F, 0x01, 0x91, 0x9E, 0x11, 0x78, 0xDC, 0x33, 0xFE,\n0x3A, 0x01, 0x90, 0x63, 0x70, 0x40, 0x1E, 0x29, 0x26, 0x02, 0xBE, 0x6F, 0x22, 0x20, 0x6E, 0x03,\n0x23, 0xFD, 0xCF, 0x05, 0x47, 0x97, 0xA5, 0x7F, 0xEF, 0xCB, 0xFB, 0x30, 0x61, 0xE0, 0x23, 0xBE,\n0x6C, 0xB8, 0x16, 0x8E, 0x8C, 0xBF, 0x67, 0x8C, 0x36, 0x0B, 0xFE, 0xCC, 0x04, 0x74, 0x31, 0x09,\n0xE0, 0x9C, 0x56, 0xFD, 0x9E, 0x13, 0x01, 0x75, 0x07, 0x24, 0xFE, 0x71, 0xA9, 0x2C, 0xFC, 0xAB,\n0x2F, 0xB8, 0x98, 0xF8, 0xC7, 0xFC, 0xB1, 0x38, 0xE0, 0xFD, 0xFD, 0x9F, 0xB1, 0xD9, 0xAB, 0x17,\n0x9F, 0xFB, 0x7B, 0x93, 0xFF, 0x4D, 0xAC, 0x04, 0x74, 0x7F, 0x54, 0x65, 0x90, 0xE0, 0x6A, 0x48,\n0xAF, 0xD4, 0xF0, 0xD2, 0x22, 0xD5, 0xD7, 0x5B, 0x9E, 0x84, 0x34, 0x9F, 0x59, 0x0C, 0x90, 0xF0,\n0x47, 0xB1, 0xF1, 0x8F, 0xB2, 0xB0, 0xF1, 0x8F, 0x01, 0xE8, 0xAF, 0x48, 0xE5, 0x72, 0x9D, 0xC6,\n0x65, 0x20, 0x27, 0xCB, 0xE5, 0x77, 0x06, 0x03, 0x7C, 0x37, 0x63, 0x80, 0xA9, 0x41, 0x0F, 0x6B,\n0xAC, 0xF8, 0x7B, 0x53, 0x08, 0x18, 0xD0, 0x76, 0x6A, 0xE3, 0x9F, 0x91, 0x80, 0xC4, 0x3F, 0x02,\n0xE0, 0xC7, 0x1F, 0x9A, 0xF9, 0xC7, 0xAD, 0x60, 0xD9, 0x04, 0x16, 0xED, 0x5F, 0x9F, 0xC1, 0xE0,\n0x64, 0x39, 0xF0, 0x57, 0x40, 0x6E, 0x3F, 0x08, 0xE1, 0x56, 0xC3, 0x20, 0x14, 0x1C, 0x5A, 0x27,\n0xEC, 0x7F, 0xCF, 0x6C, 0x04, 0x0C, 0x59, 0xA8, 0x1F, 0x81, 0xC5, 0xB7, 0x64, 0x0A, 0x54, 0x66,\n0xE7, 0x33, 0x56, 0x8B, 0xD2, 0x8E, 0xF9, 0x37, 0xDF, 0x7E, 0x43, 0x0E, 0x78, 0x49, 0x1F, 0xC6,\n0x62, 0x65, 0xFE, 0x0D, 0x79, 0xAB, 0xAC, 0xFC, 0xAB, 0xE1, 0x80, 0x0A, 0xFF, 0x0C, 0x04, 0xBC,\n0xE7, 0xE5, 0xC0, 0x82, 0x80, 0x78, 0x80, 0x0A, 0x00, 0xB2, 0x35, 0xEA, 0xFC, 0xBB, 0xE1, 0x4C,\n0xD6, 0x26, 0xFF, 0xB3, 0x3A, 0x20, 0xF9, 0xDF, 0x25, 0xED, 0x4C, 0xFC, 0x63, 0x05, 0x27, 0x07,\n0x9C, 0x95, 0xDF, 0x29, 0xCA, 0x8C, 0x42, 0xEF, 0xAB, 0x8D, 0x7F, 0x1C, 0x9B, 0xFF, 0xF1, 0xE5,\n0x37, 0xCD, 0x5C, 0x9E, 0x78, 0xCC, 0x35, 0x84, 0x2F, 0x72, 0xEF, 0x01, 0x6F, 0x15, 0xF1, 0xD7,\n0x36, 0x40, 0x94, 0xE3, 0xD7, 0x1A, 0x8B, 0xFD, 0x5F, 0x02, 0xD0, 0xCE, 0x3F, 0x5E, 0x09, 0xA7,\n0xFA, 0x9F, 0x13, 0x40, 0x93, 0x03, 0xBE, 0xED, 0xE3, 0xFA, 0x01, 0x8B, 0xF8, 0xA3, 0x2D, 0x86,\n0xF0, 0x47, 0x92, 0x47, 0x97, 0xC0, 0xFE, 0xDE, 0xF9, 0xDF, 0x92, 0x7E, 0xB8, 0x0B, 0x2E, 0x21,\n0x94, 0x76, 0x03, 0x98, 0xFD, 0xCF, 0x15, 0x3B, 0x00, 0x17, 0x9A, 0x05, 0x78, 0x51, 0x70, 0x04,\n0x2C, 0x87, 0x7E, 0xBE, 0x25, 0x00, 0xF2, 0x6A, 0x84, 0xDF, 0x89, 0x80, 0x9C, 0xAF, 0xE5, 0x1E,\n0xFE, 0x17, 0x08, 0xA8, 0x02, 0xB0, 0xBE, 0x88, 0x45, 0xE7, 0x1F, 0x87, 0x19, 0xA8, 0x35, 0x7F,\n0xC1, 0x3F, 0x89, 0x3F, 0xDE, 0x85, 0x0A, 0xFC, 0x81, 0x80, 0x0A, 0xFF, 0x58, 0x00, 0x2D, 0x04,\n0xAC, 0x41, 0x40, 0xCD, 0xFF, 0xA8, 0x01, 0x6C, 0x73, 0xC0, 0xAF, 0xD9, 0xFF, 0xA8, 0xE8, 0x0E,\n0xF8, 0x8D, 0x7F, 0x47, 0x79, 0xA7, 0xFB, 0x7F, 0xBC, 0x54, 0x8C, 0xFE, 0xC7, 0x45, 0x20, 0x10,\n0x0F, 0x9D, 0xFC, 0x7D, 0xB4, 0xE3, 0x1F, 0x1B, 0x00, 0xD5, 0xEF, 0xD2, 0x06, 0x48, 0x51, 0xFB,\n0x00, 0xDF, 0x48, 0x00, 0x1E, 0xC7, 0xE3, 0x41, 0xF8, 0x77, 0x6A, 0xE4, 0x1F, 0xC7, 0xE0, 0x7F,\n0x4C, 0x40, 0x76, 0x40, 0xBD, 0xFF, 0x6F, 0x97, 0x4C, 0x23, 0x18, 0x4F, 0xBC, 0x73, 0x12, 0x00,\n0xE8, 0x04, 0x50, 0xBA, 0x5F, 0x38, 0xA3, 0x9F, 0xC6, 0xD0, 0x59, 0x8E, 0x7F, 0x78, 0x18, 0xAF,\n0x40, 0x95, 0x80, 0x8B, 0x48, 0xC0, 0x67, 0x0B, 0x9D, 0x7F, 0x6C, 0x0A, 0xBE, 0x1F, 0xB0, 0x24,\n0x15, 0x33, 0xC7, 0x3F, 0x2E, 0xE4, 0x80, 0xDE, 0xF3, 0x82, 0xEF, 0x89, 0xF3, 0x5F, 0xDC, 0x07,\n0xDA, 0x7B, 0x8D, 0xCE, 0xBF, 0x8B, 0xDA, 0xB3, 0xE2, 0xC2, 0xC2, 0xBF, 0x89, 0x77, 0x40, 0xAB,\n0xFF, 0xFD, 0x19, 0x11, 0x88, 0x01, 0x91, 0x96, 0xFF, 0xD1, 0x86, 0x68, 0x00, 0x74, 0xED, 0x5F,\n0x2F, 0x81, 0x6A, 0xF3, 0xB7, 0x49, 0xC0, 0x72, 0xB9, 0xDB, 0xBD, 0x56, 0x43, 0xC5, 0xFF, 0x7E,\n0x67, 0xFF, 0x73, 0x85, 0x1D, 0x2F, 0xFF, 0x4E, 0x51, 0x75, 0xE8, 0xF3, 0x9B, 0xEA, 0x7F, 0x88,\n0xCE, 0x3F, 0x14, 0x5C, 0x9E, 0xB2, 0x30, 0xFF, 0x90, 0x70, 0xAD, 0x7F, 0x27, 0x00, 0x28, 0x92,\n0x52, 0x40, 0xAA, 0xA2, 0xF4, 0x89, 0x40, 0xA4, 0x57, 0x02, 0x02, 0x85, 0x8F, 0xE7, 0x7F, 0x9C,\n0x53, 0x8D, 0x80, 0x8C, 0xBF, 0x90, 0x31, 0x1C, 0x50, 0xE1, 0x1F, 0x77, 0x03, 0x66, 0xF1, 0x47,\n0x89, 0xF8, 0xF3, 0x03, 0x21, 0xDF, 0xB5, 0xDD, 0x0F, 0xFD, 0x82, 0xE2, 0x0B, 0x82, 0x9F, 0x95,\n0x0B, 0x0B, 0xA0, 0x8D, 0x80, 0x31, 0x0B, 0xE7, 0x80, 0x65, 0x00, 0x52, 0x81, 0x03, 0xEA, 0xFE,\n0x17, 0x1C, 0x70, 0x18, 0xB9, 0x07, 0xFC, 0xC5, 0xFD, 0x2F, 0xD7, 0xBE, 0x51, 0x17, 0x36, 0xAB,\n0xFF, 0xD5, 0x4A, 0x23, 0x78, 0x1D, 0xF1, 0x47, 0x5B, 0x99, 0x80, 0xC4, 0x3F, 0x24, 0x92, 0x8F,\n0x51, 0xD7, 0x26, 0xA1, 0x3F, 0x41, 0xE0, 0x80, 0x05, 0xFE, 0x51, 0xD5, 0x1D, 0xF0, 0x82, 0x08,\n0x88, 0xA2, 0xF1, 0x0F, 0xAF, 0xD4, 0xD7, 0x36, 0xFE, 0xB1, 0x03, 0x6A, 0xBA, 0x1E, 0xF0, 0xA7,\n0xF7, 0x03, 0x36, 0x00, 0x48, 0xA7, 0x4A, 0x03, 0x18, 0xF8, 0x2B, 0x16, 0xE2, 0x5F, 0xE3, 0xC2,\n0x8E, 0x57, 0xBD, 0x06, 0xC0, 0x6C, 0x27, 0xE0, 0x01, 0x1D, 0xB0, 0x91, 0xA7, 0x3E, 0x14, 0xDC,\n0x91, 0x7F, 0x48, 0xB1, 0x01, 0xEC, 0xFC, 0x0F, 0x04, 0xD4, 0xF8, 0x87, 0x46, 0x70, 0xC9, 0x00,\n0xA3, 0xFF, 0xC1, 0x01, 0xDB, 0xEE, 0x17, 0x1F, 0xD1, 0x55, 0xF1, 0x0F, 0x79, 0x67, 0xD3, 0x1A,\n0x49, 0x15, 0x85, 0xE1, 0xF8, 0x81, 0x1A, 0x41, 0x24, 0x30, 0xD9, 0x64, 0xC4, 0x82, 0xEC, 0x52,\n0x82, 0x48, 0x5C, 0x04, 0xB2, 0x6A, 0x1A, 0x14, 0xA1, 0x16, 0xC3, 0xD0, 0x69, 0x0C, 0x71, 0x95,\n0xCD, 0x34, 0xCC, 0x26, 0x64, 0xA3, 0x8B, 0x4E, 0x20, 0x98, 0x9D, 0x9B, 0xDE, 0x0C, 0x04, 0xB2,\n0x89, 0xF9, 0x01, 0xE2, 0x5F, 0xF4, 0x9C, 0xDB, 0x75, 0xF3, 0xA6, 0xFA, 0xDC, 0x7B, 0xDF, 0x53,\n0x5A, 0x6D, 0x66, 0xF4, 0x3D, 0xB7, 0x2A, 0x3D, 0x6D, 0xFC, 0xEA, 0xAE, 0x7E, 0xF2, 0xDC, 0xAF,\n0x4A, 0xD5, 0xCD, 0x56, 0xFE, 0xD2, 0xDA, 0x0E, 0x83, 0x2F, 0x8C, 0x80, 0xF0, 0x3F, 0xA4, 0xF4,\n0x09, 0x88, 0xEC, 0x93, 0xD2, 0xAF, 0xEA, 0x15, 0xDA, 0xF4, 0xA4, 0x35, 0x8D, 0x0F, 0xE1, 0x7F,\n0xA1, 0xC6, 0xFB, 0xD7, 0x1D, 0xEB, 0xC3, 0x09, 0x03, 0x80, 0x70, 0x40, 0xEE, 0x7F, 0xB1, 0x88,\n0xFF, 0x45, 0x04, 0x2A, 0x8A, 0xD8, 0xFC, 0x6F, 0xD7, 0x01, 0xE3, 0x7A, 0x17, 0x0C, 0xFC, 0xC5,\n0xC7, 0x1A, 0xEE, 0x80, 0xE0, 0x9F, 0x36, 0xCD, 0x15, 0x19, 0x00, 0x44, 0x35, 0xF9, 0x17, 0x00,\n0xFE, 0xC7, 0x1C, 0x50, 0xF9, 0x77, 0x72, 0x02, 0x00, 0x9E, 0x3C, 0x7A, 0xA7, 0xCC, 0x7B, 0x36,\n0x8D, 0xEF, 0x27, 0xEF, 0x04, 0x7F, 0xFB, 0x28, 0x84, 0x7F, 0xA1, 0x03, 0x82, 0xDA, 0x2E, 0xF1,\n0xAF, 0x9B, 0xE4, 0x32, 0x98, 0x18, 0x66, 0x80, 0x6B, 0x75, 0xC0, 0x36, 0x6F, 0xFD, 0x38, 0x60,\n0xBF, 0xF9, 0x5F, 0x84, 0x4D, 0x84, 0x3C, 0xA2, 0x9F, 0x3E, 0xDC, 0x61, 0x03, 0x80, 0x48, 0x1E,\n0x7F, 0xF0, 0x3F, 0x10, 0xF0, 0xC1, 0x00, 0x3B, 0xE3, 0x7F, 0xE8, 0x00, 0x73, 0x07, 0x9C, 0x68,\n0x6A, 0x54, 0x5D, 0xB8, 0x5C, 0x57, 0x52, 0x1A, 0x06, 0x8C, 0xE8, 0xEB, 0x2A, 0xE0, 0x34, 0x9E,\n0x10, 0xF0, 0x4F, 0xEB, 0x3E, 0x38, 0xA0, 0x31, 0x40, 0x3D, 0x22, 0xFF, 0x70, 0x1C, 0x95, 0x16,\n0xC0, 0x80, 0x13, 0x64, 0x18, 0xF0, 0xFB, 0x1F, 0xFE, 0x54, 0xF8, 0x80, 0x80, 0xD4, 0xFF, 0x90,\n0xE8, 0x7A, 0xD0, 0xBF, 0x68, 0x80, 0x6F, 0x84, 0x90, 0x3E, 0x02, 0xCA, 0x16, 0x90, 0x07, 0x01,\n0x0D, 0xED, 0x8A, 0x4C, 0x00, 0xA3, 0x46, 0x85, 0x9F, 0x00, 0xF0, 0x3F, 0x38, 0x60, 0x1A, 0x80,\n0x32, 0xF0, 0xD0, 0xA9, 0xF8, 0x4E, 0x99, 0x93, 0xFA, 0x1F, 0x0C, 0x50, 0x4F, 0xA4, 0x03, 0x8C,\n0xCC, 0x8A, 0xFE, 0xD7, 0xAD, 0xAA, 0x26, 0xFC, 0x43, 0x54, 0x00, 0x8D, 0x01, 0xA6, 0xC2, 0xA7,\n0x81, 0x51, 0xEE, 0x94, 0xF0, 0xF7, 0xAE, 0x10, 0xF0, 0xCB, 0x3E, 0xFC, 0x33, 0x29, 0xF9, 0x1F,\n0xA2, 0xC3, 0x80, 0x3B, 0x8C, 0x7F, 0x70, 0xC0, 0x5C, 0x27, 0x18, 0xFE, 0x07, 0x02, 0xC6, 0xB9,\n0x60, 0x29, 0x7D, 0x10, 0xFD, 0x0F, 0xFC, 0x03, 0x00, 0xB7, 0x72, 0x04, 0xC4, 0xA5, 0x47, 0x14,\n0x10, 0xFE, 0xC7, 0xA6, 0x82, 0x67, 0x40, 0x9F, 0x96, 0x26, 0x08, 0x44, 0xAC, 0xD8, 0xA6, 0x72,\n0x3A, 0x89, 0xFC, 0x43, 0x2F, 0xF8, 0xC8, 0x18, 0xA0, 0x1E, 0xE0, 0x1F, 0x8E, 0x2C, 0x00, 0x5A,\n0x42, 0xA0, 0xC8, 0x00, 0x20, 0x9A, 0xDC, 0x12, 0xC1, 0xCB, 0xBF, 0x9B, 0x07, 0xDC, 0x19, 0x03,\n0x44, 0x18, 0x01, 0x15, 0xB9, 0xE8, 0x83, 0x87, 0xE3, 0x8A, 0xFA, 0x1F, 0xEF, 0x04, 0x9B, 0xD7,\n0x8A, 0xF1, 0x0F, 0x05, 0xE7, 0xEB, 0x94, 0x34, 0xBC, 0xA1, 0xE1, 0x90, 0xE2, 0xFC, 0xE3, 0x33,\n0x21, 0xF5, 0x6A, 0xF9, 0xF9, 0x27, 0x13, 0x81, 0xD2, 0x36, 0x08, 0xFE, 0x5C, 0x06, 0x88, 0xFA,\n0x5F, 0x11, 0xD0, 0x8F, 0xBF, 0xBD, 0xE7, 0x89, 0x30, 0xFF, 0x43, 0x76, 0x3C, 0xFC, 0x83, 0x03,\n0x76, 0xF1, 0x07, 0xFF, 0xB3, 0x04, 0xD4, 0xB9, 0x60, 0xB5, 0x3E, 0x7D, 0x80, 0xF1, 0x3F, 0x9B,\n0x5A, 0x42, 0xC6, 0xFF, 0x6A, 0x32, 0x15, 0x8C, 0x30, 0x07, 0xBC, 0xED, 0x1A, 0x20, 0x1C, 0x30,\n0xE7, 0x7F, 0x28, 0xF9, 0x3C, 0x8A, 0x03, 0x5A, 0x03, 0xB4, 0xFC, 0xD3, 0x83, 0xFA, 0x1F, 0xAA,\n0xB4, 0x00, 0x06, 0x2D, 0x9C, 0x18, 0xFF, 0x90, 0x8E, 0xF5, 0x81, 0x84, 0x7E, 0x02, 0xDE, 0x09,\n0x72, 0x3B, 0xF8, 0x03, 0x01, 0x89, 0xFF, 0x95, 0x96, 0x03, 0x5A, 0xFE, 0x2D, 0x16, 0x49, 0x07,\n0xDC, 0xBD, 0x46, 0xF7, 0x17, 0xD5, 0x19, 0xA2, 0x45, 0xF0, 0x86, 0x86, 0xA3, 0xE4, 0x80, 0xF6,\n0x4A, 0x61, 0xE3, 0x7F, 0xA8, 0x49, 0x76, 0xB8, 0x26, 0x11, 0xD3, 0x05, 0x46, 0xB8, 0x01, 0xAE,\n0x8D, 0x80, 0xEB, 0x00, 0xE0, 0x66, 0xF2, 0xC9, 0xA7, 0x1A, 0xFF, 0xC3, 0x6A, 0x18, 0x17, 0xFF,\n0xB0, 0x25, 0x84, 0xF0, 0x0F, 0x53, 0xC1, 0x06, 0x81, 0xC9, 0xC4, 0x1D, 0x41, 0x2F, 0x30, 0xFE,\n0x27, 0x20, 0x4C, 0x66, 0x92, 0xF1, 0x3F, 0x17, 0x01, 0xE1, 0x7F, 0xDC, 0x01, 0x95, 0x7F, 0x31,\n0xE0, 0xE0, 0x6D, 0x9C, 0x5E, 0xD4, 0x86, 0x87, 0x06, 0x80, 0x3A, 0x20, 0x25, 0x0E, 0x68, 0xC7,\n0x00, 0xF1, 0x69, 0xA6, 0x13, 0x21, 0x18, 0xFF, 0x43, 0x25, 0xB7, 0x84, 0x5C, 0x81, 0x3C, 0x68,\n0x58, 0x0E, 0x48, 0xF9, 0x27, 0x4F, 0x82, 0x7B, 0x20, 0x21, 0x14, 0xF1, 0x71, 0xEE, 0xCA, 0xFC,\n0x83, 0x01, 0x0A, 0x01, 0x89, 0xFF, 0xA1, 0xA8, 0xFF, 0xE1, 0xC8, 0x2E, 0x80, 0x5E, 0xAD, 0xFB,\n0xF8, 0x16, 0xE1, 0xEB, 0xD2, 0xFF, 0x8C, 0x01, 0x4A, 0x11, 0xFE, 0x51, 0x04, 0xEA, 0xF8, 0x9F,\n0xAD, 0xCA, 0x14, 0x04, 0xD0, 0x38, 0x20, 0x00, 0x58, 0x04, 0x5F, 0xC7, 0x00, 0xC3, 0x69, 0x5D,\n0x04, 0x94, 0xBC, 0x1B, 0x0E, 0xD8, 0x83, 0x7F, 0x7B, 0x1E, 0x00, 0x62, 0x03, 0x88, 0xCD, 0x37,\n0x4A, 0x40, 0xCE, 0x3F, 0x10, 0xD0, 0xAC, 0xFF, 0x4B, 0xA6, 0xDD, 0x0F, 0xF4, 0x3A, 0xCE, 0x04,\n0x6B, 0xCB, 0xA4, 0x26, 0xFE, 0xC7, 0x08, 0x18, 0xC2, 0x09, 0xA8, 0x56, 0x68, 0x15, 0x30, 0xB3,\n0x25, 0xC4, 0xE0, 0xAF, 0x5D, 0x10, 0x7D, 0xD8, 0xC5, 0x1F, 0xFC, 0xCF, 0x12, 0x30, 0xB3, 0x00,\n0xDA, 0x56, 0xC6, 0xFF, 0xC0, 0x1F, 0x50, 0xE8, 0x8E, 0x4C, 0x80, 0xA4, 0x1C, 0x10, 0x0F, 0x10,\n0x36, 0x15, 0x7C, 0x97, 0xC0, 0x1F, 0x1C, 0x90, 0xFA, 0x9F, 0x16, 0xE5, 0x1F, 0x8E, 0x24, 0xFF,\n0x14, 0x80, 0xB6, 0xA6, 0x66, 0xFD, 0xDF, 0xFE, 0xD4, 0x0A, 0xA0, 0x7E, 0x21, 0xFC, 0x43, 0x66,\n0x64, 0x01, 0x0C, 0x75, 0xC0, 0x4C, 0x3A, 0x06, 0x98, 0x0B, 0xF8, 0x47, 0xFD, 0x4F, 0xCB, 0x9D,\n0x34, 0xFE, 0xDE, 0x15, 0x02, 0xF6, 0xE0, 0xDF, 0xF3, 0x6C, 0x9E, 0x11, 0xFE, 0x21, 0xA5, 0x09,\n0x60, 0x3B, 0x0E, 0x08, 0x04, 0x86, 0x07, 0xB9, 0x2C, 0x91, 0x87, 0x99, 0x60, 0xF8, 0x9F, 0x4D,\n0xBD, 0x35, 0x31, 0xF3, 0xBF, 0xE9, 0x52, 0xDC, 0x15, 0x05, 0x10, 0x49, 0x6E, 0x00, 0xB6, 0x0A,\n0xA8, 0x0F, 0xA3, 0xFC, 0x45, 0xB7, 0x08, 0x1B, 0x40, 0x6C, 0x89, 0x80, 0x28, 0x01, 0x11, 0x8C,\n0xFF, 0x99, 0x43, 0x09, 0xC8, 0xF8, 0x07, 0x02, 0xAE, 0xE0, 0xEF, 0x0A, 0xC0, 0x59, 0x6D, 0x77,\n0x1E, 0xFE, 0x81, 0x80, 0x5D, 0x08, 0x12, 0x02, 0x1A, 0xFE, 0xA1, 0xE1, 0xB8, 0x22, 0xFE, 0x87,\n0x4A, 0xF0, 0x2F, 0xF7, 0x62, 0x65, 0x36, 0x80, 0x24, 0x1D, 0x30, 0x2C, 0xDE, 0x44, 0x53, 0xFE,\n0x59, 0x03, 0xD4, 0x33, 0xE3, 0x1F, 0x52, 0xEE, 0xFF, 0xA2, 0x02, 0x15, 0xB7, 0x99, 0xFF, 0x81,\n0x80, 0xD8, 0x0B, 0x4C, 0xFA, 0xBE, 0x5D, 0x03, 0x7C, 0x9B, 0x09, 0xF8, 0xEF, 0x00, 0x70, 0x2F,\n0xAB, 0x7B, 0x59, 0x00, 0x72, 0x07, 0xFC, 0xDC, 0x00, 0x30, 0xBF, 0x1C, 0xF0, 0xBD, 0x5C, 0x80,\n0xBF, 0xC2, 0x00, 0x20, 0x7A, 0xC1, 0x55, 0x67, 0x26, 0x38, 0x1F, 0xE3, 0x7F, 0x28, 0xE6, 0x80,\n0x88, 0x25, 0xA0, 0xF1, 0x3F, 0x6B, 0x80, 0xD6, 0x01, 0xC3, 0x27, 0x2C, 0x0D, 0x40, 0xB5, 0x92,\n0xCE, 0x06, 0x90, 0x6C, 0x07, 0x38, 0x75, 0x5F, 0x04, 0xF4, 0x7E, 0x4D, 0xBD, 0x34, 0xFE, 0x67,\n0xF1, 0x87, 0x4D, 0x71, 0x9C, 0x7F, 0x20, 0x20, 0x4E, 0xE8, 0xF9, 0xDE, 0x10, 0x02, 0x2A, 0xFF,\n0x32, 0xF8, 0x0B, 0x04, 0xEC, 0x4C, 0x55, 0x37, 0x84, 0x80, 0x76, 0x01, 0x20, 0x77, 0xC0, 0xC3,\n0x14, 0xFF, 0x32, 0x5B, 0x42, 0x02, 0xEB, 0xEC, 0x10, 0x60, 0xC2, 0x01, 0xA7, 0xF9, 0x2B, 0x85,\n0xF9, 0x1F, 0x2A, 0xCC, 0x84, 0x94, 0x27, 0x40, 0x90, 0x8D, 0x3E, 0x37, 0xC0, 0xE2, 0x02, 0xA8,\n0xD5, 0x23, 0x06, 0x7F, 0xEF, 0x8C, 0x02, 0x0E, 0x20, 0x80, 0x76, 0x22, 0xE4, 0x19, 0xD6, 0xFF,\n0x11, 0x02, 0xC2, 0xFF, 0xAC, 0x02, 0x9A, 0x4E, 0xB0, 0x01, 0xA0, 0x99, 0x0A, 0x0E, 0x33, 0xC1,\n0xE9, 0x09, 0x10, 0x6C, 0x09, 0x99, 0x14, 0xFB, 0xBF, 0x28, 0x33, 0x17, 0x5C, 0xC8, 0xAC, 0x7B,\n0x03, 0xA4, 0x9C, 0x00, 0x76, 0x1D, 0xD0, 0x2C, 0x00, 0x34, 0x53, 0xC1, 0x60, 0x9F, 0xF6, 0x87,\n0x83, 0xEB, 0x25, 0x8F, 0x48, 0x40, 0xBB, 0x00, 0x9A, 0x0C, 0x03, 0xFE, 0xD8, 0x9D, 0xF8, 0x40,\n0x03, 0x01, 0x19, 0xFF, 0xB0, 0x1C, 0x10, 0x85, 0x10, 0x07, 0xC4, 0x06, 0x10, 0x8B, 0x40, 0x3D,\n0xFF, 0xD8, 0x15, 0xC0, 0x3C, 0x02, 0x9B, 0xDC, 0x06, 0x10, 0x7B, 0x1C, 0x99, 0x05, 0xD0, 0x39,\n0x00, 0xDE, 0xEF, 0x6B, 0xF0, 0x66, 0x65, 0x05, 0xD0, 0x38, 0x20, 0x04, 0x90, 0x38, 0x60, 0x58,\n0x00, 0x98, 0x2E, 0x0D, 0xE1, 0x5F, 0x7F, 0x00, 0x62, 0x10, 0x50, 0x1A, 0xA9, 0x7F, 0xE0, 0x80,\n0xEF, 0x0A, 0x01, 0xC9, 0x0A, 0x40, 0xC6, 0x3F, 0xE4, 0x0B, 0xB3, 0x01, 0x24, 0x83, 0x3F, 0x10,\n0x90, 0xF0, 0xCF, 0x6C, 0x09, 0x01, 0xFE, 0x92, 0xA9, 0xAA, 0xB8, 0x2B, 0x12, 0xFE, 0xC7, 0xC7,\n0x01, 0xC3, 0x85, 0x96, 0xFF, 0x01, 0x6C, 0xF8, 0xE7, 0x23, 0x60, 0x52, 0x00, 0xF1, 0xA7, 0xC7,\n0x02, 0x98, 0xC5, 0x9F, 0xF4, 0xC0, 0x22, 0x01, 0xC3, 0x09, 0xFE, 0xC7, 0x1D, 0x50, 0x17, 0x40,\n0xE7, 0xAB, 0x43, 0xC0, 0x8B, 0x54, 0x07, 0x18, 0x5B, 0x42, 0xE8, 0x04, 0x30, 0xE2, 0xE2, 0x1F,\n0x08, 0x08, 0xFE, 0x25, 0xF1, 0x67, 0xB7, 0x05, 0x1B, 0xF8, 0x15, 0x96, 0x03, 0xE2, 0x75, 0xC9,\n0x4E, 0x05, 0x83, 0x7F, 0x78, 0xC9, 0x53, 0x04, 0x1C, 0x9B, 0x0D, 0x20, 0x56, 0x00, 0xC3, 0x61,\n0xF8, 0xE7, 0x74, 0xC0, 0x49, 0x5D, 0x28, 0xB3, 0x01, 0x84, 0x01, 0xD0, 0x93, 0x8F, 0x8C, 0xFE,\n0x0D, 0xDD, 0x0B, 0x5E, 0x0B, 0x00, 0xCB, 0x38, 0xFC, 0xD7, 0x56, 0x00, 0x72, 0x07, 0xC4, 0x06,\n0x10, 0xEA, 0x80, 0xC7, 0xF8, 0x75, 0xE8, 0x48, 0x6A, 0x4B, 0x08, 0xFC, 0xAF, 0x30, 0x0E, 0x88,\n0x1D, 0xC0, 0x6E, 0x02, 0xD6, 0xE4, 0xFA, 0xA3, 0xF8, 0x43, 0xBC, 0x02, 0x28, 0xD5, 0x6A, 0x05,\n0xFC, 0x2F, 0x59, 0x20, 0x20, 0x06, 0x00, 0x09, 0x01, 0xB1, 0x00, 0x86, 0x38, 0x20, 0xF8, 0x57,\n0x42, 0x20, 0x08, 0x08, 0xFE, 0x71, 0x02, 0xAE, 0x00, 0xF0, 0x26, 0xB3, 0x18, 0x06, 0xFC, 0xCB,\n0x22, 0x50, 0x72, 0xC5, 0x07, 0x00, 0xED, 0x96, 0x10, 0xF8, 0x5F, 0xE6, 0x30, 0x1B, 0x40, 0xB2,\n0x9D, 0x60, 0x28, 0x20, 0x74, 0xCF, 0x0A, 0x60, 0x38, 0x58, 0xFF, 0x17, 0xE9, 0x6E, 0x00, 0xC9,\n0x97, 0x34, 0xE6, 0x7F, 0x00, 0xA0, 0x53, 0x00, 0xF1, 0x1B, 0x8D, 0x86, 0x05, 0xE0, 0x0A, 0xFF,\n0xDE, 0x09, 0x07, 0xE4, 0xFE, 0xB7, 0x47, 0xF9, 0x87, 0x98, 0x05, 0x30, 0x39, 0x07, 0x7C, 0x86,\n0xE5, 0x80, 0xCA, 0x3F, 0xE6, 0x80, 0xCC, 0xFF, 0x30, 0x15, 0x5C, 0x2D, 0x57, 0x03, 0x56, 0x3C,\n0x5B, 0xAC, 0x03, 0x8C, 0x2D, 0x21, 0x86, 0x80, 0x6C, 0x18, 0x50, 0x27, 0x40, 0x0A, 0x06, 0xA8,\n0x89, 0x93, 0x8A, 0x58, 0x00, 0xCD, 0x7A, 0xC1, 0xCA, 0x3F, 0x4E, 0x40, 0xF0, 0xAF, 0x5C, 0x91,\n0x29, 0x3F, 0x0A, 0x61, 0x80, 0xBF, 0x12, 0x01, 0x39, 0xFF, 0x70, 0x87, 0x68, 0x12, 0x10, 0x10,\n0x1B, 0x40, 0x32, 0xF8, 0xD3, 0xD3, 0x15, 0x26, 0x80, 0x49, 0x8D, 0x76, 0xC9, 0xF8, 0x1F, 0x46,\n0x0C, 0x0E, 0xCD, 0x02, 0xE8, 0x5C, 0xC1, 0x01, 0xA7, 0xD3, 0x92, 0x01, 0x76, 0x3A, 0xC1, 0xF4,\n0x52, 0x31, 0x1B, 0x40, 0x92, 0xA5, 0x6D, 0xB2, 0x1D, 0xAF, 0xD4, 0x4A, 0x32, 0x8C, 0x01, 0x42,\n0x00, 0x07, 0x55, 0x40, 0xE0, 0xEF, 0x5D, 0x21, 0xA0, 0x67, 0xE1, 0x8B, 0x0B, 0x7F, 0x98, 0x09,\n0xD1, 0x0D, 0x20, 0x3B, 0x19, 0xF4, 0xD9, 0x4D, 0x71, 0x00, 0x1D, 0x1D, 0x07, 0x04, 0x00, 0x99,\n0x03, 0x56, 0x9E, 0xD4, 0xB8, 0x03, 0x20, 0x53, 0x40, 0xCC, 0xFF, 0x52, 0x02, 0xC6, 0x05, 0x80,\n0xC4, 0x00, 0x5B, 0x02, 0x52, 0xFE, 0xA9, 0x03, 0x8E, 0xDB, 0x4E, 0x30, 0xA1, 0x5F, 0x20, 0xE0,\n0x12, 0x7F, 0xC4, 0xFF, 0xDA, 0x5B, 0xC3, 0xC4, 0x1B, 0x20, 0x00, 0x3A, 0x60, 0x90, 0xD9, 0x12,\n0xE2, 0xE3, 0x9F, 0x7C, 0x0F, 0xF8, 0xC7, 0x09, 0x18, 0xFD, 0xAF, 0x64, 0x80, 0x98, 0x0A, 0x7E,\n0xD9, 0xF0, 0xA2, 0xFE, 0x87, 0x83, 0xF0, 0xCF, 0x2E, 0x88, 0x56, 0x01, 0xA4, 0x0A, 0x18, 0xF0,\n0x07, 0xFE, 0x39, 0x7A, 0xC1, 0x35, 0xAD, 0x09, 0xFC, 0x8F, 0x03, 0xD0, 0x17, 0xF0, 0x6D, 0x2D,\n0x0E, 0x98, 0xCC, 0x5B, 0x78, 0x63, 0x04, 0xF8, 0x9F, 0x03, 0x81, 0xCF, 0x3D, 0x79, 0x06, 0xFF,\n0x63, 0x0E, 0x78, 0x0C, 0xFE, 0x71, 0x07, 0xA4, 0xFE, 0x87, 0x5B, 0xC3, 0x88, 0x06, 0xBA, 0x12,\n0x7E, 0xB0, 0x4E, 0x24, 0x72, 0x72, 0x11, 0x90, 0x05, 0x5B, 0x42, 0xA6, 0xCC, 0x00, 0x35, 0x2D,\n0xFF, 0x78, 0x09, 0x01, 0xD5, 0x57, 0x16, 0xFA, 0xB9, 0xA5, 0x47, 0x5C, 0x00, 0xED, 0xA8, 0x76,\n0x02, 0x98, 0x18, 0xA0, 0x9E, 0xEE, 0xC0, 0x3F, 0x1A, 0x0B, 0xC0, 0x9B, 0x2C, 0x01, 0xB1, 0x00,\n0x3A, 0x8D, 0x3F, 0x2C, 0x07, 0x84, 0xFF, 0x51, 0x07, 0xC4, 0x06, 0x60, 0x72, 0x2C, 0x17, 0xC0,\n0x8C, 0x3D, 0xEF, 0x40, 0x5C, 0x00, 0xCD, 0x0C, 0x30, 0x3A, 0xA0, 0xE7, 0x4A, 0x81, 0xFF, 0xF9,\n0x08, 0xE8, 0x02, 0x20, 0xC2, 0x11, 0xB8, 0x2E, 0x02, 0x0E, 0x1F, 0x0C, 0xFF, 0xD1, 0xAC, 0x79,\n0xFE, 0x97, 0x07, 0xFC, 0x63, 0xD9, 0x01, 0xFF, 0xA8, 0x03, 0x0A, 0xFF, 0x9C, 0xD1, 0x15, 0xF1,\n0xBE, 0xC4, 0xFD, 0xBF, 0xD2, 0x48, 0x29, 0x01, 0xA3, 0x00, 0xB2, 0xC4, 0x05, 0x80, 0x44, 0x01,\n0xB5, 0xDA, 0x3B, 0xE0, 0x9F, 0xB0, 0x92, 0x31, 0x7A, 0x2C, 0x80, 0xA6, 0x47, 0xE4, 0x1F, 0x67,\n0x05, 0x36, 0xC0, 0x15, 0x0C, 0x10, 0x5B, 0x42, 0x4E, 0xDD, 0x04, 0x64, 0x01, 0x01, 0xEF, 0xC0,\n0xBA, 0x92, 0x01, 0x06, 0x02, 0x36, 0x2F, 0x5D, 0x85, 0x05, 0xD0, 0x1E, 0x07, 0xD4, 0xD5, 0xE6,\n0xBC, 0xEE, 0xC7, 0xF0, 0x3F, 0x66, 0x80, 0xE0, 0x1F, 0xCB, 0xCC, 0xE9, 0x7F, 0x71, 0x39, 0xE0,\n0x40, 0x00, 0x04, 0xFE, 0xFC, 0xF5, 0xC4, 0x00, 0x74, 0xC2, 0x2F, 0x60, 0x72, 0x73, 0xBD, 0x3B,\n0x80, 0x79, 0x28, 0xFF, 0xB0, 0x25, 0x04, 0xFC, 0x63, 0x01, 0xFF, 0x68, 0x5E, 0x57, 0xEE, 0x28,\n0xFC, 0xA4, 0x79, 0xEA, 0x5B, 0x84, 0x3B, 0x20, 0x31, 0x40, 0x08, 0x04, 0xE7, 0x9F, 0x96, 0x7E,\n0x48, 0xC1, 0x3F, 0x76, 0x1C, 0x8D, 0x00, 0x03, 0xA6, 0x80, 0x42, 0x36, 0x86, 0x3F, 0x6D, 0xDA,\n0x0B, 0xA6, 0x34, 0xB3, 0xCA, 0xC7, 0x23, 0xFC, 0x2B, 0xE2, 0x0F, 0x10, 0x74, 0xE8, 0x5F, 0xA4,\n0xBE, 0xF4, 0x7F, 0x9D, 0x2F, 0xD6, 0x62, 0x1E, 0xEE, 0x3D, 0xEB, 0x2A, 0x6C, 0x00, 0x66, 0x0A,\n0x08, 0xFE, 0x71, 0x02, 0xF2, 0xAB, 0x0F, 0xCB, 0x01, 0x79, 0x36, 0x3E, 0x7E, 0x7A, 0x00, 0x0A,\n0x02, 0x91, 0x27, 0x41, 0x60, 0x1F, 0xFE, 0xED, 0x39, 0xE9, 0xE7, 0xE7, 0x9F, 0xFC, 0xB2, 0xE0,\n0x1D, 0x27, 0x00, 0x3F, 0xF8, 0xE6, 0x18, 0xF3, 0x1F, 0xC4, 0x01, 0xD1, 0x01, 0xA6, 0x81, 0x00,\n0xD2, 0xA8, 0x01, 0x7A, 0x0B, 0x0A, 0xC8, 0x72, 0xBB, 0xEF, 0x34, 0x40, 0x32, 0x01, 0xAC, 0x85,\n0xBB, 0x03, 0x2E, 0x16, 0xBE, 0x4F, 0xB5, 0x00, 0x50, 0x06, 0xCB, 0x9C, 0xB4, 0xB8, 0xD0, 0x70,\n0x04, 0xAA, 0x03, 0x1A, 0xA8, 0x0D, 0x41, 0xC4, 0xD0, 0x01, 0x76, 0x22, 0x30, 0xF2, 0x8D, 0xD5,\n0xCB, 0x91, 0x9B, 0x7F, 0x8B, 0x39, 0xE5, 0x1F, 0x16, 0xC3, 0x4C, 0x9D, 0x06, 0x78, 0xDB, 0x03,\n0x80, 0x93, 0xBA, 0x07, 0xFF, 0x86, 0x35, 0xC0, 0x76, 0x91, 0x9F, 0x13, 0x80, 0x22, 0x76, 0xFF,\n0x45, 0x00, 0x6E, 0x0C, 0x28, 0x80, 0x30, 0xC0, 0x6F, 0xDC, 0x0A, 0xD8, 0xCF, 0x00, 0x87, 0x07,\n0xE0, 0xD9, 0x64, 0xE2, 0x45, 0x60, 0xED, 0x75, 0xC0, 0x7A, 0x26, 0x60, 0xF3, 0x0E, 0x02, 0x8E,\n0x7D, 0x04, 0xD4, 0x5F, 0x54, 0x46, 0x87, 0x00, 0x71, 0x6F, 0xC0, 0xC6, 0x6B, 0x4B, 0x97, 0x3E,\n0xFC, 0xA9, 0x00, 0x62, 0x08, 0x70, 0x98, 0xA0, 0x0B, 0x4C, 0xF1, 0xD7, 0x9E, 0x1A, 0xAF, 0xD8,\n0x8E, 0xE4, 0x7E, 0xD9, 0x5E, 0x01, 0x14, 0xBB, 0xBE, 0xF7, 0xF6, 0x81, 0xA7, 0x1E, 0x03, 0x94,\n0x36, 0x9B, 0xB9, 0xBB, 0xC0, 0xB5, 0xFB, 0xF2, 0x9B, 0xB8, 0x00, 0x08, 0x4E, 0x79, 0xF2, 0xEE,\n0x8C, 0x01, 0x4A, 0xFC, 0xFC, 0xEB, 0x35, 0x0C, 0xE8, 0x16, 0xC0, 0x3D, 0xAF, 0x00, 0xEA, 0x1A,\n0x40, 0xEF, 0x18, 0xE0, 0x8E, 0x7B, 0x0C, 0x50, 0xE2, 0x54, 0x40, 0xAC, 0x01, 0xE4, 0x39, 0x3B,\n0xF3, 0x0A, 0xA0, 0x1F, 0x80, 0x61, 0x0D, 0xA0, 0x16, 0x9F, 0x06, 0x1E, 0x7B, 0x09, 0x28, 0xDF,\n0xE5, 0x26, 0xE0, 0x7C, 0x34, 0x1A, 0x35, 0x2E, 0x5B, 0x12, 0xAC, 0x08, 0x01, 0x7D, 0x08, 0x94,\n0xD9, 0x8A, 0xCB, 0x35, 0xF0, 0x0F, 0x8B, 0x00, 0x09, 0x02, 0x35, 0x3E, 0x03, 0x6C, 0xE4, 0x7F,\n0x7F, 0xE4, 0x02, 0xA0, 0xF2, 0x2F, 0x10, 0x90, 0xE3, 0x4F, 0xF8, 0x37, 0x1E, 0xBB, 0x06, 0x01,\n0x0F, 0xF4, 0xB7, 0x00, 0x3A, 0x01, 0xD8, 0x87, 0x7F, 0x67, 0x67, 0x67, 0xC3, 0x00, 0x10, 0x9C,\n0xF2, 0xFB, 0x5F, 0xF8, 0xF6, 0x3E, 0xD3, 0xC0, 0xEB, 0x88, 0x77, 0x0C, 0x10, 0x00, 0x74, 0xC5,\n0x05, 0x40, 0xA1, 0x9F, 0x57, 0x01, 0x3F, 0xE7, 0xB3, 0xC0, 0xB8, 0x3D, 0xFE, 0x8E, 0x93, 0x80,\n0x9F, 0x69, 0x9C, 0xFE, 0xF7, 0x5A, 0xCA, 0x89, 0x3F, 0x01, 0x60, 0xE5, 0xE5, 0x9F, 0xC4, 0xC7,\n0x3F, 0x15, 0x00, 0xF9, 0x24, 0x70, 0x03, 0x3C, 0xD0, 0xCF, 0xD4, 0xBE, 0xE3, 0xE3, 0xA7, 0xFE,\n0xD7, 0x2C, 0x09, 0xE8, 0x99, 0x03, 0xD1, 0x70, 0x52, 0x48, 0x8B, 0x60, 0x21, 0xF8, 0xD3, 0x13,\n0x7E, 0x0F, 0x12, 0xC9, 0x8D, 0xE7, 0x49, 0xF8, 0x5F, 0x20, 0x20, 0xC1, 0x1F, 0x10, 0xE8, 0xF3,\n0x3F, 0x89, 0x10, 0xD0, 0xC9, 0xBF, 0x46, 0xD8, 0xE6, 0x1A, 0x82, 0x90, 0xF2, 0x4D, 0x03, 0x0B,\n0x00, 0xE5, 0x1A, 0xF0, 0xFA, 0x9F, 0x13, 0x81, 0xCA, 0xBF, 0x49, 0xE5, 0x5E, 0x06, 0x33, 0xB4,\n0x01, 0xF6, 0xC2, 0xDF, 0x13, 0x39, 0x20, 0xFC, 0x4F, 0xCB, 0x1F, 0xD7, 0x1A, 0x98, 0xE7, 0x6E,\n0x03, 0xC4, 0x3E, 0x10, 0x96, 0x1D, 0x15, 0x40, 0x39, 0x39, 0xFD, 0x4F, 0xE3, 0x5A, 0x07, 0xA8,\n0xF5, 0xDA, 0xD9, 0x01, 0x3E, 0xAB, 0xBE, 0xAE, 0xBC, 0xFC, 0xFB, 0x5D, 0x09, 0x38, 0x73, 0xF1,\n0x2F, 0xAC, 0x03, 0x24, 0x06, 0xA8, 0xDB, 0x81, 0x43, 0x71, 0x02, 0x8E, 0xEF, 0xDB, 0xCC, 0xD9,\n0x30, 0x60, 0xE4, 0x5F, 0x70, 0x40, 0xA7, 0xFF, 0x99, 0xCE, 0xA6, 0x69, 0xCA, 0xBF, 0xBB, 0x40,\n0xAB, 0xA1, 0xFB, 0xBF, 0xAA, 0x80, 0x61, 0x1E, 0x84, 0x21, 0x10, 0x04, 0xE4, 0xFE, 0xE7, 0x23,\n0xA0, 0xF2, 0x2F, 0xA4, 0xA1, 0x0A, 0xA8, 0xFE, 0xB7, 0x04, 0xE0, 0xAD, 0x63, 0x21, 0xE0, 0x4C,\n0xE2, 0x9B, 0x07, 0xAE, 0x43, 0x7C, 0xFD, 0xDF, 0x33, 0x2D, 0x0F, 0x00, 0x9D, 0xA8, 0xD2, 0xEF,\n0xF2, 0x1A, 0x20, 0xD0, 0xE6, 0x02, 0xE0, 0xD3, 0x3A, 0x20, 0x00, 0xE8, 0x8E, 0xCF, 0xFF, 0xB4,\n0x58, 0xF6, 0x3C, 0x3B, 0x41, 0xE0, 0x7F, 0x0A, 0x40, 0x0F, 0x01, 0x3F, 0xF3, 0x03, 0x50, 0xD8,\n0xB7, 0x44, 0xA0, 0xD3, 0x00, 0x27, 0x2E, 0x07, 0x8C, 0xE1, 0x0E, 0x28, 0xBD, 0x9F, 0x90, 0x7A,\n0x7A, 0xCB, 0x0C, 0x50, 0x3F, 0x50, 0x5A, 0x81, 0x80, 0xDC, 0xFF, 0x9A, 0x40, 0x40, 0x3E, 0xFE,\n0x17, 0x43, 0xE7, 0x4A, 0x81, 0x95, 0x22, 0xFE, 0xE2, 0x2A, 0x40, 0x29, 0x10, 0x70, 0x38, 0xFE,\n0x05, 0x02, 0xB2, 0x9D, 0x20, 0x08, 0xF7, 0xBF, 0x36, 0xCD, 0x2E, 0x75, 0xC0, 0x25, 0xFD, 0x24,\n0x7C, 0x18, 0x30, 0xFE, 0xAC, 0x1A, 0xDF, 0x16, 0x0D, 0x50, 0xDB, 0x4C, 0xA3, 0x0E, 0xC8, 0x27,\n0x80, 0xEB, 0xDF, 0x9D, 0x08, 0xAC, 0xCF, 0x2A, 0x15, 0xC0, 0xAF, 0x27, 0xBE, 0x2E, 0xF0, 0xF0,\n0xFC, 0xDB, 0xF4, 0x62, 0x15, 0xB5, 0x96, 0xB8, 0xF0, 0x37, 0xB0, 0x03, 0x6E, 0xEC, 0xA9, 0xFF,\n0x85, 0xF2, 0xF1, 0x0F, 0x0E, 0xC8, 0xFA, 0xBF, 0xCB, 0xFA, 0xE6, 0x98, 0x4D, 0x00, 0x23, 0x7C,\n0x2F, 0xF0, 0x43, 0x39, 0xFC, 0x4F, 0xAA, 0xD2, 0xF2, 0xF0, 0x0F, 0x04, 0x9C, 0x71, 0xFF, 0xD3,\n0x94, 0x0D, 0x50, 0xF9, 0xD7, 0x16, 0x08, 0x48, 0xFC, 0xAF, 0x81, 0x03, 0x12, 0xFF, 0xA3, 0x04,\n0x44, 0xFF, 0x97, 0x20, 0x10, 0xFC, 0xFB, 0x67, 0x04, 0xBC, 0x49, 0xF2, 0x0F, 0x04, 0x24, 0xEB,\n0x00, 0xDD, 0x0E, 0x38, 0x8A, 0xA1, 0x04, 0x54, 0xFE, 0x35, 0x7A, 0x48, 0x23, 0x9D, 0xE0, 0xF1,\n0x3E, 0x8A, 0x6D, 0x06, 0x9E, 0xC5, 0x50, 0x07, 0xAC, 0x11, 0xEE, 0x7F, 0xE1, 0x52, 0x95, 0xAF,\n0x0C, 0x80, 0x5E, 0x58, 0x6D, 0x46, 0xB1, 0x73, 0x4D, 0x00, 0x03, 0x6E, 0x1C, 0x80, 0xA8, 0x75,\n0x64, 0x60, 0x00, 0x72, 0x04, 0xEE, 0x6D, 0x7C, 0xA9, 0xFE, 0xE7, 0x44, 0xA0, 0xE3, 0x6E, 0x80,\n0x58, 0x02, 0x18, 0x8B, 0x39, 0x20, 0xF0, 0x07, 0x07, 0x64, 0xFE, 0xA7, 0x45, 0x01, 0xA8, 0x35,\n0x71, 0x38, 0x60, 0xC8, 0xEF, 0x2E, 0x07, 0xC4, 0xF5, 0x8F, 0x5E, 0x70, 0x42, 0x00, 0xE1, 0x7F,\n0xD4, 0x01, 0xD5, 0xFF, 0x60, 0x80, 0x4A, 0x40, 0xEE, 0x7F, 0x9C, 0x80, 0x57, 0x8D, 0x17, 0x7F,\n0xE0, 0x9F, 0xD6, 0x25, 0x08, 0x38, 0x80, 0xFF, 0x81, 0x80, 0xB4, 0x03, 0x8C, 0x30, 0xFF, 0x43,\n0x84, 0x80, 0x85, 0x3D, 0xD3, 0xF7, 0x9D, 0x8C, 0x89, 0xFF, 0xA1, 0xCA, 0x02, 0x38, 0x8B, 0xD1,\n0xAE, 0x00, 0x03, 0xA0, 0x17, 0x81, 0x61, 0xAC, 0x46, 0xAF, 0x54, 0xEA, 0x80, 0x1B, 0x80, 0x14,\n0xF7, 0xBF, 0x10, 0x0F, 0xFF, 0xDC, 0x06, 0xB8, 0xF9, 0xC4, 0x04, 0xDC, 0xE8, 0x96, 0x3B, 0x6C,\n0xFE, 0x17, 0xE5, 0xE1, 0x1F, 0x3A, 0xC1, 0x52, 0x45, 0xFE, 0x81, 0x80, 0x9F, 0x65, 0xF5, 0x0F,\n0x00, 0xE4, 0x0E, 0x18, 0xC0, 0x87, 0x62, 0xFE, 0xA7, 0xD5, 0x62, 0x90, 0xF2, 0x0F, 0x29, 0x18,\n0xE0, 0xAC, 0x1B, 0x99, 0x10, 0x4C, 0x1B, 0x60, 0xE4, 0x1F, 0x2A, 0xBF, 0x1F, 0x78, 0xDC, 0xF2,\n0x2F, 0x9E, 0x9B, 0xF9, 0x82, 0xFB, 0x1F, 0x27, 0xE0, 0xF7, 0x97, 0x6E, 0x03, 0x04, 0xA9, 0x06,\n0xEC, 0x05, 0x83, 0xA9, 0x20, 0x20, 0x33, 0x40, 0xEE, 0x80, 0xDD, 0xFF, 0x7B, 0x21, 0x60, 0xDE,\n0xFF, 0xAE, 0xF5, 0xB5, 0x44, 0xCB, 0x8F, 0x03, 0x82, 0x7F, 0x20, 0x60, 0xFE, 0x76, 0x80, 0x8F,\n0x33, 0xAD, 0x09, 0xFE, 0x7E, 0xD7, 0x16, 0x52, 0xF6, 0xBF, 0xAF, 0x55, 0xFE, 0xA4, 0x85, 0x4B,\n0x95, 0x1A, 0xA0, 0x07, 0x57, 0xE0, 0x1F, 0x27, 0x60, 0xE0, 0x25, 0xE8, 0x46, 0xF8, 0xF7, 0x04,\n0x04, 0xE4, 0x00, 0xE4, 0x29, 0xCD, 0x7F, 0x28, 0xF8, 0x50, 0x94, 0x7F, 0xDC, 0x01, 0xC1, 0x3F,\n0x10, 0x90, 0x0B, 0x20, 0x1C, 0x90, 0xF8, 0x1F, 0x8A, 0xE9, 0x9F, 0xF6, 0x2C, 0x5A, 0x07, 0xAC,\n0x6B, 0x02, 0x40, 0x78, 0x60, 0xF1, 0x6E, 0x80, 0x21, 0x70, 0xC0, 0xA4, 0x01, 0x82, 0x7F, 0xA8,\n0xCC, 0xE7, 0xEF, 0x7E, 0x0C, 0xFC, 0xC5, 0x47, 0x47, 0x8B, 0xFC, 0xFA, 0xBF, 0x51, 0x27, 0xE9,\n0x1D, 0xC1, 0xA6, 0x03, 0x5C, 0xDE, 0x0B, 0x0C, 0xFF, 0x23, 0x04, 0xBC, 0x21, 0x1D, 0xE0, 0x2C,\n0xFF, 0xB0, 0x23, 0x98, 0xE1, 0x4F, 0x73, 0xF9, 0x3D, 0xF7, 0x3F, 0x10, 0x30, 0xF7, 0xD3, 0x02,\n0x4A, 0x2D, 0x29, 0xCD, 0x05, 0xEB, 0x04, 0xB0, 0x21, 0x60, 0x46, 0x00, 0x57, 0xDF, 0xFE, 0x82,\n0x03, 0xCE, 0xEA, 0x95, 0x94, 0x16, 0xC0, 0xE8, 0xA5, 0x1A, 0xF4, 0xAF, 0xE5, 0x20, 0xBD, 0x25,\n0x3E, 0xF3, 0xB4, 0x6E, 0xF8, 0x02, 0x18, 0xA7, 0x57, 0x3E, 0x29, 0x01, 0x31, 0x01, 0x8C, 0xF2,\n0x27, 0xDB, 0x01, 0x8E, 0xFD, 0x5F, 0x54, 0x61, 0x07, 0x9C, 0x21, 0x60, 0x6E, 0x1C, 0x70, 0xC9,\n0x3D, 0xD4, 0x37, 0x9F, 0x90, 0x09, 0x60, 0xEE, 0x80, 0xF0, 0x3F, 0xD4, 0x6B, 0x2A, 0x80, 0x00,\n0x21, 0xE3, 0x1F, 0xEF, 0x04, 0x6B, 0xAF, 0xA7, 0x93, 0x5A, 0xD6, 0x03, 0xA6, 0x04, 0x10, 0xFC,\n0x43, 0x65, 0xEE, 0x89, 0x3A, 0x3E, 0x81, 0xA4, 0xC4, 0x34, 0xD9, 0xFB, 0xC0, 0x98, 0x34, 0xE9,\n0x7B, 0xC2, 0x34, 0xCA, 0x15, 0x82, 0x40, 0xF0, 0xCF, 0x00, 0x70, 0x00, 0x07, 0x8C, 0x56, 0x09,\n0x02, 0x5E, 0xA4, 0x6F, 0x8A, 0xFF, 0x67, 0x82, 0x80, 0x11, 0xE3, 0x76, 0x02, 0xD8, 0x10, 0x70,\n0x71, 0x94, 0x5F, 0x00, 0xBD, 0xFA, 0xCA, 0x9E, 0xA4, 0xF9, 0xB7, 0x82, 0x3F, 0x7D, 0xEB, 0x72,\n0x06, 0x38, 0x5B, 0xC9, 0xED, 0x8C, 0xF8, 0x1F, 0x07, 0x60, 0x5D, 0x57, 0x67, 0x5F, 0x57, 0xB8,\n0x54, 0x4B, 0x04, 0xD4, 0xDF, 0x0B, 0x0C, 0x14, 0x11, 0xFC, 0x79, 0x09, 0xB8, 0x69, 0xF1, 0x96,\n0xCE, 0xE6, 0x93, 0x03, 0x50, 0x90, 0x37, 0x98, 0x02, 0x22, 0x0E, 0x00, 0xE2, 0x3E, 0x58, 0x96,\n0x80, 0xB9, 0x9B, 0x20, 0xAC, 0x12, 0x70, 0x87, 0xFA, 0x1F, 0x92, 0xBD, 0x15, 0x20, 0x0C, 0x90,\n0x38, 0xE0, 0x04, 0x02, 0x18, 0x2A, 0x4C, 0x84, 0x30, 0x00, 0x22, 0xD9, 0x0D, 0x20, 0xB3, 0x95,\n0xA4, 0x05, 0x70, 0xB6, 0x3F, 0x36, 0x00, 0x4C, 0xF7, 0x82, 0xE3, 0x02, 0x40, 0x0D, 0x46, 0x02,\n0xD3, 0x9B, 0xE2, 0x16, 0xF0, 0x3F, 0x24, 0xB7, 0x01, 0xEE, 0xF2, 0x22, 0x1D, 0x7B, 0x13, 0x04,\n0xE0, 0x0F, 0x08, 0x1C, 0x62, 0x01, 0x34, 0x2A, 0x35, 0x17, 0x8C, 0x47, 0x36, 0x97, 0xB2, 0x27,\n0x8E, 0x0A, 0x20, 0x1C, 0x30, 0xCF, 0x3F, 0xA4, 0x91, 0x12, 0x07, 0x24, 0x1D, 0x60, 0x10, 0x30,\n0x6D, 0x80, 0x33, 0x13, 0x79, 0x8A, 0xF8, 0x1F, 0x05, 0xE0, 0xE4, 0xEB, 0x88, 0xBE, 0x50, 0x95,\n0xD2, 0x30, 0xCB, 0x3F, 0x8F, 0x01, 0xFA, 0xF9, 0x27, 0x2D, 0xC9, 0xBD, 0xB7, 0x94, 0x80, 0x1B,\n0xA9, 0xF2, 0x27, 0x37, 0x01, 0xAC, 0xCC, 0xE3, 0x04, 0xDC, 0x33, 0x02, 0x88, 0xA9, 0xE0, 0xC2,\n0x04, 0x30, 0x0A, 0x0E, 0x48, 0xFC, 0x0F, 0xBD, 0x60, 0xCB, 0x3F, 0xB7, 0x03, 0x9E, 0x55, 0xB1,\n0xEB, 0x8B, 0xA2, 0xF8, 0xC3, 0xA0, 0x4D, 0xF2, 0xAA, 0xFE, 0xCE, 0xE0, 0x4F, 0x95, 0xF0, 0x36,\n0x65, 0x80, 0xC0, 0x9F, 0x9D, 0x0A, 0xB6, 0xFE, 0x07, 0x53, 0x29, 0x2C, 0x07, 0x3C, 0x3A, 0x32,\n0xFC, 0xCB, 0x2E, 0x07, 0x04, 0x56, 0x0C, 0xFE, 0x2C, 0xFF, 0x00, 0xC0, 0x7F, 0x34, 0x0C, 0x78,\n0x93, 0x9E, 0x00, 0x41, 0xC9, 0xFC, 0x4A, 0x17, 0x7C, 0x86, 0x7F, 0x64, 0x18, 0xB0, 0x19, 0x99,\n0x24, 0xB7, 0x84, 0xC4, 0x05, 0xD0, 0xDD, 0xA6, 0x47, 0x66, 0x01, 0xA0, 0x05, 0xE0, 0x38, 0x6D,\n0x80, 0x33, 0x84, 0x0C, 0x03, 0xC2, 0xFF, 0x90, 0x6C, 0xFF, 0x37, 0xA2, 0xAF, 0xE4, 0x80, 0x00,\n0x20, 0x58, 0x44, 0x26, 0x40, 0x10, 0xE2, 0x7F, 0x96, 0x6F, 0x84, 0x7E, 0x4F, 0x41, 0x40, 0xCE,\n0x3F, 0x1E, 0x32, 0x00, 0x88, 0xCA, 0x0F, 0x00, 0x72, 0x07, 0xFC, 0x26, 0x2E, 0x80, 0xF6, 0x10,\n0x30, 0xC3, 0xBF, 0xF7, 0x00, 0xC0, 0x8C, 0xFF, 0xA1, 0x72, 0xFC, 0xC3, 0x8F, 0xD5, 0xB6, 0x32,\n0x0E, 0x08, 0xF6, 0x11, 0x05, 0x9C, 0xC1, 0x00, 0x12, 0x0E, 0x08, 0x0A, 0xB6, 0x1B, 0x40, 0x4C,\n0xD9, 0x4D, 0x71, 0x91, 0x7F, 0x5D, 0x55, 0x89, 0x5B, 0x42, 0xCA, 0x13, 0xC0, 0x48, 0x63, 0x47,\n0x00, 0xE1, 0x7F, 0xC4, 0x00, 0xE3, 0x04, 0xF0, 0x00, 0x04, 0x34, 0x1B, 0x40, 0x6C, 0x61, 0x4B,\n0x08, 0xBA, 0xE3, 0xB9, 0xE4, 0xFD, 0x8F, 0x13, 0xD0, 0xF8, 0x1F, 0x86, 0x01, 0xC9, 0x04, 0x30,\n0x10, 0x78, 0x60, 0x0C, 0xD0, 0xF0, 0x2F, 0xBB, 0x18, 0x66, 0xF6, 0x2D, 0xAE, 0x26, 0x8A, 0xC0,\n0x0A, 0xE0, 0x6B, 0x4B, 0x1F, 0xE5, 0xF8, 0xC7, 0x0C, 0x10, 0xFC, 0xE3, 0x04, 0xD4, 0x96, 0x33,\n0xC0, 0xCD, 0xB7, 0x8E, 0x80, 0x18, 0xFF, 0x1B, 0xCA, 0x01, 0xB1, 0x01, 0xC4, 0x16, 0xE7, 0x1F,\n0x82, 0xA9, 0x60, 0xF8, 0x1F, 0x27, 0x20, 0x16, 0x00, 0x52, 0x07, 0x84, 0xFF, 0x25, 0x2B, 0xC7,\n0x3F, 0xAB, 0x80, 0x09, 0x07, 0x34, 0xC9, 0x6D, 0x09, 0x99, 0x48, 0x6F, 0x27, 0x9D, 0xEE, 0x7A,\n0x68, 0x7D, 0x60, 0xF1, 0x87, 0x2D, 0x21, 0x46, 0x00, 0x8D, 0xAA, 0x68, 0x2C, 0x01, 0x8F, 0x46,\n0x08, 0x71, 0x40, 0xA1, 0x4A, 0x11, 0x80, 0x66, 0x03, 0x88, 0x2D, 0x2C, 0x86, 0x81, 0xE0, 0x91,\n0x10, 0xFF, 0x33, 0x5B, 0x42, 0x40, 0xBF, 0x2C, 0x01, 0x99, 0xFF, 0xA5, 0xB7, 0x84, 0xB4, 0xFD,\n0xDF, 0xC6, 0x34, 0x6C, 0x09, 0x31, 0xFE, 0x67, 0x4A, 0x9E, 0x9F, 0x76, 0x05, 0x10, 0xFC, 0xE3,\n0xE3, 0x80, 0x75, 0x26, 0xE9, 0x09, 0xE0, 0x08, 0x3E, 0x70, 0x50, 0x4E, 0x19, 0xFE, 0x61, 0x0C,\n0x30, 0x14, 0xC1, 0x1F, 0x25, 0xE0, 0x66, 0x0F, 0x03, 0x7C, 0x22, 0x02, 0x62, 0x03, 0x70, 0xAE,\n0xFA, 0xA4, 0x3B, 0xFF, 0x01, 0xFF, 0xB3, 0xC5, 0xF9, 0x67, 0x1D, 0x10, 0xFC, 0x73, 0x12, 0xF0,\n0x33, 0x3F, 0x00, 0xF5, 0xCD, 0x77, 0x13, 0x70, 0x02, 0x03, 0x84, 0x02, 0xA6, 0xB6, 0x05, 0xA7,\n0x3B, 0xC0, 0x21, 0xE9, 0x05, 0xD0, 0x79, 0x07, 0x0C, 0x69, 0x27, 0x80, 0xF3, 0x75, 0xBF, 0xBA,\n0x01, 0x44, 0xCA, 0x2A, 0x20, 0x08, 0x08, 0xFF, 0x6B, 0x8A, 0x04, 0x8C, 0xA5, 0x27, 0xE0, 0x8F,\n0x4A, 0x60, 0x44, 0x93, 0xA9, 0xBE, 0x0E, 0x78, 0x43, 0xF8, 0x07, 0x02, 0x92, 0x0E, 0x30, 0xC2,\n0xFD, 0x0F, 0x0B, 0xA2, 0xCD, 0x06, 0x90, 0x26, 0x25, 0x80, 0x9A, 0x31, 0xF1, 0x3F, 0x14, 0xF0,\n0xA7, 0xD1, 0x3B, 0x20, 0x10, 0x02, 0xC2, 0xFF, 0xF2, 0xB1, 0xFE, 0x87, 0x9F, 0xCF, 0xE8, 0x09,\n0x0B, 0x0C, 0x27, 0x69, 0xFE, 0x71, 0x03, 0xE4, 0xFC, 0x43, 0xF5, 0x30, 0xC0, 0xCD, 0xA7, 0x23,\n0xA0, 0xF5, 0xBF, 0x61, 0x96, 0x03, 0xEA, 0x02, 0xE8, 0x42, 0x99, 0x1B, 0xC0, 0x48, 0x88, 0x03,\n0x62, 0x01, 0x4C, 0x8E, 0x80, 0xC7, 0x39, 0xFF, 0x63, 0x53, 0xC1, 0xC0, 0x1F, 0xED, 0x05, 0xC7,\n0x61, 0x14, 0x39, 0x75, 0x14, 0x30, 0xAC, 0xB6, 0x77, 0xF9, 0x1F, 0xB6, 0x84, 0x10, 0xFE, 0x61,\n0x39, 0x20, 0x04, 0xB0, 0xC4, 0x3F, 0x31, 0x8B, 0x13, 0x20, 0x50, 0x7D, 0x30, 0x63, 0x80, 0xFA,\n0x65, 0x17, 0x00, 0x44, 0xFF, 0x97, 0x3B, 0xE0, 0xF7, 0xA3, 0x4B, 0x82, 0x3F, 0xBB, 0x01, 0x64,\n0x80, 0x5E, 0x30, 0xE7, 0x1F, 0x1C, 0x10, 0x08, 0xF4, 0x3B, 0xE0, 0xC8, 0x24, 0xB3, 0x25, 0x64,\n0x31, 0x6F, 0xEE, 0x33, 0x06, 0xD8, 0xE8, 0xF9, 0xA4, 0xE3, 0x7F, 0xA5, 0xEA, 0x2A, 0xE0, 0x0C,\n0x21, 0xBD, 0xE0, 0xBA, 0x90, 0xD4, 0x02, 0xC0, 0x87, 0x82, 0x01, 0x6A, 0x4B, 0xF1, 0x0F, 0x06,\n0x18, 0xCB, 0x0A, 0xE0, 0x47, 0x7E, 0x03, 0xFC, 0xB8, 0x60, 0x80, 0x9B, 0x9C, 0x7E, 0xA8, 0x75,\n0x84, 0xFA, 0x1F, 0xAA, 0x47, 0xCC, 0x06, 0x90, 0x6C, 0x51, 0xFE, 0x21, 0x42, 0x3D, 0xCE, 0x3F,\n0xBB, 0x1C, 0x10, 0xB0, 0xA3, 0x0E, 0x08, 0xD8, 0x39, 0x1C, 0xF0, 0x2C, 0x0A, 0xE0, 0x04, 0x3F,\n0x57, 0xE3, 0x73, 0x93, 0xA2, 0xFF, 0x75, 0xD3, 0xBD, 0x01, 0x56, 0x29, 0xD3, 0x7D, 0xB3, 0x00,\n0x3A, 0x87, 0x40, 0x00, 0x30, 0xE9, 0x7F, 0x8F, 0x29, 0x88, 0x35, 0x6E, 0xC2, 0x3F, 0x02, 0xC0,\n0x07, 0xFF, 0xC3, 0x02, 0x68, 0x62, 0x80, 0x84, 0x7F, 0x84, 0x80, 0x84, 0x7F, 0x94, 0x80, 0x7A,\n0xD0, 0x30, 0xFF, 0x43, 0xE0, 0x80, 0xD8, 0x00, 0x9C, 0xCB, 0x18, 0x00, 0xDC, 0xF7, 0x12, 0x30,\n0x3D, 0xFC, 0xDB, 0xDD, 0x12, 0x82, 0x0D, 0xC0, 0x08, 0x41, 0x60, 0x77, 0x84, 0x06, 0xD3, 0xC0,\n0x89, 0x2D, 0x21, 0xD1, 0x00, 0x36, 0xF8, 0xFC, 0x87, 0x94, 0x97, 0x7F, 0x45, 0x03, 0x7C, 0x7B,\n0x08, 0x28, 0xFE, 0x47, 0xCA, 0x1D, 0x9D, 0xF7, 0xC5, 0x06, 0xE0, 0x52, 0x99, 0xFE, 0x2F, 0x23,\n0x20, 0xE7, 0x9F, 0x12, 0xD0, 0x4C, 0x00, 0x7B, 0x1C, 0x10, 0xA8, 0x73, 0x38, 0x60, 0x98, 0xEE,\n0x08, 0x5D, 0xDF, 0x0A, 0x0A, 0x08, 0x1C, 0x32, 0xFF, 0x43, 0x0A, 0x0B, 0x00, 0xED, 0x38, 0xE0,\n0x41, 0xF0, 0x84, 0x2C, 0xFF, 0xEC, 0x96, 0x90, 0x8C, 0xFF, 0xE1, 0x59, 0x5D, 0x0E, 0xE8, 0xE2,\n0x1F, 0x1C, 0x90, 0xF3, 0x0F, 0xC3, 0x80, 0x84, 0x7F, 0x4A, 0xC0, 0x9B, 0x5E, 0x9D, 0x60, 0xC2,\n0x3F, 0xB3, 0x20, 0x1A, 0xE1, 0x0E, 0x38, 0x2A, 0x07, 0x8B, 0x61, 0x16, 0x47, 0x98, 0x54, 0x4F,\n0x3A, 0xA0, 0xE4, 0x04, 0xEB, 0x5F, 0x48, 0x41, 0x00, 0x67, 0x26, 0xB9, 0xB9, 0xE0, 0x9A, 0x05,\n0x97, 0x5F, 0x15, 0xAE, 0x54, 0xD4, 0x19, 0x3A, 0x2F, 0xE1, 0x51, 0xC7, 0xFF, 0x22, 0x00, 0xCB,\n0xE3, 0x75, 0xA0, 0x1F, 0x07, 0xE0, 0x26, 0x31, 0xC0, 0x4D, 0x3C, 0xFF, 0xA4, 0x04, 0x84, 0xFF,\n0x0D, 0x38, 0x0E, 0xB8, 0xC7, 0xFC, 0x4F, 0x0B, 0xFC, 0x73, 0x12, 0x50, 0xF9, 0x57, 0x06, 0xA0,\n0xFC, 0x75, 0x2E, 0x80, 0x70, 0xC0, 0xC8, 0x3F, 0x37, 0x00, 0x23, 0xEA, 0x1E, 0x7E, 0x90, 0xE2,\n0x12, 0x0B, 0x0F, 0xC2, 0x96, 0x10, 0xD2, 0x01, 0xC6, 0x17, 0x2C, 0x00, 0x9C, 0x49, 0xB8, 0x03,\n0x52, 0xFE, 0x61, 0x4B, 0xC8, 0x49, 0xDA, 0x53, 0xBA, 0x20, 0x5C, 0x60, 0x01, 0xB4, 0x97, 0x80,\n0x1E, 0xAE, 0xA4, 0x37, 0x80, 0x0C, 0xB2, 0x1C, 0xF0, 0x86, 0xF0, 0x8F, 0x10, 0x30, 0xB3, 0x25,\n0xA4, 0x19, 0x51, 0x02, 0x46, 0x07, 0x9C, 0xDF, 0xE7, 0xD3, 0xB4, 0xA7, 0x31, 0x36, 0x80, 0x90,\n0xBA, 0xCD, 0x2E, 0x00, 0x4C, 0x6E, 0x09, 0x91, 0x93, 0x5C, 0x38, 0x34, 0x58, 0x00, 0xA3, 0xD7,\n0x29, 0x2A, 0xF6, 0x53, 0xF4, 0x49, 0xCC, 0x84, 0xC0, 0xFF, 0x98, 0x01, 0xEA, 0xB3, 0x1C, 0x80,\n0xF0, 0x3F, 0x6A, 0x80, 0x6F, 0x09, 0x01, 0x37, 0x1C, 0xD5, 0x13, 0x80, 0xE8, 0xFF, 0x72, 0x02,\n0xEE, 0x09, 0xDF, 0xCA, 0xF8, 0xC3, 0xB6, 0x60, 0xE5, 0x1F, 0x23, 0xE0, 0x31, 0xFC, 0x8F, 0x85,\n0x76, 0x80, 0xED, 0x72, 0xC0, 0x78, 0x53, 0x0D, 0x6D, 0xE1, 0x84, 0x21, 0xC0, 0xF6, 0x94, 0xA7,\n0x9F, 0xB9, 0x78, 0x67, 0x9D, 0x0D, 0x70, 0xDC, 0x01, 0xA7, 0xE4, 0x23, 0x85, 0x2D, 0x21, 0x63,\n0xF0, 0x2E, 0x63, 0x80, 0xDA, 0xE6, 0x4B, 0xB1, 0x99, 0x8F, 0x9C, 0x04, 0xBC, 0x1A, 0x88, 0x7F,\n0xA0, 0x15, 0xD4, 0xCE, 0x97, 0x3B, 0xC7, 0x3F, 0x13, 0xFC, 0xA3, 0x19, 0x29, 0xFE, 0x94, 0x7F,\n0x9C, 0x80, 0xED, 0x2F, 0x81, 0x2B, 0xF9, 0x9F, 0x9E, 0x43, 0x4E, 0xE2, 0x06, 0x10, 0x52, 0xF1,\n0xC6, 0x08, 0x8E, 0xB7, 0x7F, 0x06, 0xFF, 0x63, 0x0C, 0xEC, 0x6C, 0x00, 0xA9, 0x12, 0x02, 0x88,\n0x8B, 0x18, 0xFE, 0x07, 0x00, 0x16, 0x15, 0x10, 0xF8, 0xE3, 0x00, 0x2C, 0x8E, 0x01, 0x6E, 0xBE,\n0x4D, 0x0A, 0xB8, 0x31, 0xB8, 0x02, 0xCA, 0x01, 0xCE, 0x31, 0x02, 0x0A, 0xFE, 0x78, 0x5A, 0xFE,\n0x11, 0x00, 0x62, 0x4B, 0x08, 0x28, 0xC7, 0x1C, 0x90, 0x0B, 0xA0, 0x9E, 0x20, 0x80, 0xF1, 0x1A,\n0x8A, 0x93, 0xC1, 0x10, 0xC0, 0x70, 0x92, 0x23, 0xAC, 0x07, 0x64, 0x81, 0x03, 0x4A, 0xFF, 0x97,\n0x67, 0x8A, 0x05, 0x80, 0xA4, 0x74, 0x1C, 0x30, 0x2E, 0x7F, 0x21, 0x06, 0x78, 0x32, 0xD7, 0xFE,\n0xEF, 0xEE, 0xC8, 0x13, 0xBF, 0xFF, 0x61, 0x01, 0x20, 0x2B, 0xEA, 0x80, 0x7C, 0x00, 0xD0, 0x96,\n0x7C, 0x8F, 0xF4, 0xBF, 0x9D, 0xC1, 0x00, 0x20, 0x49, 0x33, 0x8F, 0x0B, 0x60, 0x92, 0x41, 0x27,\n0x38, 0x2A, 0x20, 0xDE, 0x10, 0x42, 0x40, 0xF8, 0x1F, 0x23, 0x20, 0x26, 0x80, 0x39, 0x01, 0x27,\n0xA1, 0x37, 0xD2, 0x55, 0xC0, 0x47, 0x06, 0x18, 0xB7, 0x84, 0xC0, 0xFF, 0x60, 0x80, 0x7F, 0x6B,\n0xCB, 0x87, 0xA9, 0x4D, 0xA7, 0x01, 0xF6, 0x5A, 0x15, 0x23, 0xCD, 0x57, 0x5E, 0x02, 0x4A, 0x13,\n0xBC, 0x6D, 0xD2, 0xD6, 0x0F, 0x81, 0x41, 0x00, 0x5D, 0x05, 0xFE, 0xD1, 0xC0, 0xFF, 0xA8, 0x03,\n0x82, 0x7F, 0x2C, 0x71, 0x02, 0x98, 0x95, 0x36, 0xA1, 0x5F, 0xFC, 0x41, 0x3A, 0x79, 0xDC, 0x56,\n0x0D, 0x50, 0xE7, 0x82, 0x09, 0xF9, 0xF0, 0x10, 0x13, 0xC0, 0x2C, 0xA1, 0xFF, 0x1B, 0x86, 0x95,\n0x78, 0x85, 0x0E, 0xF0, 0x57, 0x72, 0x5C, 0x75, 0x1B, 0x12, 0xFF, 0x24, 0x04, 0x1C, 0x35, 0xA1,\n0x68, 0x1A, 0x2C, 0x00, 0x74, 0x10, 0x50, 0xF1, 0x36, 0x38, 0x01, 0xE3, 0xFA, 0x67, 0x56, 0x10,\n0x40, 0x9A, 0xE6, 0x7B, 0x17, 0xFF, 0x82, 0x03, 0x46, 0xFF, 0xFB, 0xCA, 0x9E, 0x3A, 0x69, 0x70,\n0x07, 0x40, 0x17, 0x01, 0x67, 0x08, 0x99, 0x0A, 0xAE, 0xFD, 0x00, 0x14, 0xFF, 0x93, 0x16, 0x4E,\n0xB1, 0x04, 0x89, 0x72, 0xD2, 0x16, 0x06, 0x6B, 0xF4, 0xAF, 0xB4, 0xFC, 0x43, 0x6D, 0x24, 0x21,\n0x13, 0x27, 0x80, 0xDD, 0x64, 0x94, 0x10, 0x03, 0x44, 0x0D, 0x88, 0x34, 0x80, 0x4D, 0x0F, 0x5E,\n0xD2, 0xBC, 0x64, 0xFB, 0x43, 0xB8, 0xE6, 0x06, 0x20, 0xFC, 0x8F, 0x15, 0xF8, 0x47, 0x13, 0xF9,\n0xC7, 0x4A, 0x10, 0x08, 0xFE, 0xB1, 0x2C, 0xF9, 0x47, 0xA3, 0xDF, 0xA4, 0x0B, 0x9D, 0x2B, 0x3D,\n0x26, 0xF2, 0x45, 0x9B, 0x54, 0x7C, 0x26, 0xFE, 0x39, 0x3E, 0x4C, 0x72, 0x4F, 0x6A, 0x05, 0x7F,\n0xAA, 0x80, 0xE1, 0xDA, 0xE6, 0x25, 0x81, 0xFE, 0xD1, 0xBA, 0x9F, 0xDF, 0x37, 0xD7, 0xF2, 0x41,\n0xBC, 0x96, 0x9A, 0x3F, 0x9C, 0x1B, 0x94, 0x3C, 0xA1, 0x7F, 0x59, 0x7B, 0xC1, 0x23, 0x6F, 0xE0,\n0x7F, 0x3C, 0x6F, 0x9C, 0xE9, 0x35, 0x15, 0xAC, 0x37, 0x13, 0xF4, 0xE5, 0xC2, 0x1F, 0xF0, 0x8F,\n0x45, 0xC7, 0xFF, 0xC2, 0x8B, 0x99, 0x38, 0xCD, 0x51, 0xFA, 0x27, 0x07, 0xFF, 0x70, 0x87, 0x68,\n0xF4, 0x00, 0x58, 0x58, 0x07, 0x18, 0x97, 0x55, 0xE8, 0x9F, 0x94, 0xDA, 0xC3, 0xC3, 0xD0, 0x01,\n0x46, 0x36, 0x92, 0x40, 0xE1, 0x7C, 0x52, 0xE6, 0xE1, 0x16, 0xA9, 0x03, 0x9A, 0x1A, 0xB2, 0xB1,\n0x9E, 0x7C, 0xE9, 0x2C, 0xFC, 0x06, 0x60, 0x9E, 0xE7, 0xFE, 0x7C, 0xE0, 0xCD, 0xF3, 0xCF, 0x7D,\n0xFE, 0xA7, 0x9D, 0xE0, 0xE3, 0xCF, 0xDE, 0xF7, 0x12, 0xF0, 0x53, 0x79, 0xFF, 0x2B, 0xA9, 0x17,\n0xAF, 0x5F, 0x94, 0x9A, 0x12, 0x70, 0x7B, 0xAB, 0xDE, 0xAE, 0xA5, 0x69, 0xC5, 0x47, 0x9D, 0x67,\n0x50, 0x5B, 0xB5, 0x3B, 0x72, 0xFD, 0x7B, 0x6A, 0xFA, 0x5D, 0x7D, 0xE0, 0x05, 0xE0, 0xC1, 0xF8,\n0xFA, 0xFC, 0xFC, 0xFC, 0x7A, 0x2E, 0x6D, 0x7E, 0xAD, 0x27, 0x3D, 0xEB, 0x81, 0xD2, 0x27, 0xCE,\n0xCF, 0xE7, 0xD7, 0xD7, 0x87, 0xBB, 0xFE, 0x78, 0xE7, 0x56, 0x45, 0x14, 0xDF, 0xDC, 0xDC, 0xBC,\n0xF1, 0xD4, 0xCF, 0x37, 0xA7, 0xBF, 0x7A, 0xF3, 0xDB, 0xE9, 0x1B, 0xCF, 0x3F, 0x53, 0xFF, 0xD5,\n0x97, 0x17, 0x6E, 0x5A, 0x8F, 0x76, 0xDD, 0x99, 0x9F, 0xCF, 0xC3, 0x8B, 0x69, 0x4E, 0xFA, 0x6A,\n0xB6, 0xA5, 0x4F, 0xC9, 0xB7, 0xF9, 0x01, 0x78, 0x20, 0xEF, 0xAD, 0xB3, 0xEA, 0x1E, 0xD9, 0xDE,\n0xAA, 0xEA, 0x6D, 0x47, 0x6D, 0x55, 0xD5, 0xA7, 0xAF, 0x71, 0x9D, 0x0B, 0x00, 0x53, 0xC5, 0x49,\n0xD6, 0xCD, 0xA6, 0xBB, 0x94, 0x6B, 0x9B, 0xBE, 0x1A, 0x16, 0x6B, 0x28, 0x7F, 0x9E, 0x0F, 0xC7,\n0x3F, 0xC4, 0xCB, 0x3F, 0x19, 0x05, 0xDC, 0xF1, 0x45, 0x67, 0x82, 0x01, 0x40, 0xBA, 0x14, 0xA6,\n0xDD, 0x03, 0xF7, 0xA2, 0xD8, 0x3E, 0xFD, 0xF4, 0x45, 0x55, 0x6D, 0x6F, 0x6D, 0x6D, 0x4B, 0x69,\n0xC3, 0xD7, 0xE4, 0x13, 0x00, 0x20, 0x8F, 0xE7, 0xDA, 0x57, 0x06, 0x1E, 0x1C, 0x1C, 0x8C, 0x3D,\n0x11, 0xFE, 0xBD, 0x7A, 0x75, 0x7D, 0x78, 0x78, 0xEE, 0xC9, 0xE1, 0xE1, 0xD1, 0xC2, 0x99, 0xDD,\n0x5D, 0x71, 0xC0, 0x97, 0x9E, 0x12, 0x00, 0x5E, 0xDE, 0xF8, 0x72, 0xFA, 0xDB, 0x6F, 0x7E, 0x00,\n0xFE, 0xA6, 0x54, 0xF5, 0xE4, 0xF2, 0x52, 0x7A, 0xE1, 0xCD, 0x05, 0xAF, 0x97, 0x17, 0x22, 0x76,\n0x0B, 0x67, 0x8E, 0x8E, 0x0E, 0x1D, 0x2F, 0xA8, 0x1E, 0xD7, 0xAF, 0x5E, 0x8D, 0xBD, 0x6F, 0xD6,\n0xC1, 0x41, 0xF8, 0x01, 0xE7, 0x69, 0xB5, 0x3B, 0x5B, 0x92, 0x6D, 0x5F, 0xAB, 0xAA, 0x17, 0x8F,\n0x2E, 0xF3, 0x24, 0x00, 0xB9, 0x02, 0x9A, 0xE9, 0x91, 0x5E, 0x06, 0xE8, 0x26, 0xE0, 0x3A, 0xB2,\n0x1E, 0x50, 0x0E, 0x47, 0x40, 0xF0, 0xEF, 0xF3, 0x0F, 0x3E, 0xFF, 0xC4, 0xC7, 0xBF, 0xF7, 0x8E,\n0x65, 0x12, 0xF8, 0x7D, 0xE7, 0x24, 0x48, 0x24, 0xE0, 0x8B, 0x62, 0x93, 0xC5, 0xD0, 0x3F, 0x55,\n0x95, 0x52, 0xAE, 0x5A, 0x39, 0xB6, 0xEB, 0x95, 0x43, 0x7E, 0xAA, 0xF6, 0x23, 0xA0, 0xEF, 0xF2,\n0xD7, 0x4F, 0xCA, 0x81, 0x4A, 0xC3, 0x01, 0x39, 0x94, 0x7F, 0x4A, 0xC0, 0xF3, 0xF9, 0xB9, 0x26,\n0x9E, 0x11, 0x3C, 0x71, 0x7D, 0x28, 0x1F, 0x6A, 0x99, 0x05, 0x59, 0xD0, 0x12, 0xFE, 0x8D, 0x76,\n0x47, 0x17, 0x23, 0x17, 0x54, 0x94, 0x3F, 0x97, 0x3E, 0x05, 0xFC, 0x4D, 0xE2, 0xE4, 0xDF, 0xA9,\n0x7C, 0xAB, 0x53, 0x00, 0xF5, 0xBF, 0x20, 0xFC, 0x97, 0x90, 0xD6, 0xC8, 0xFF, 0xD0, 0xAE, 0x28,\n0xE0, 0xC2, 0x53, 0x47, 0xFA, 0x62, 0x5D, 0x87, 0x97, 0xCE, 0x9C, 0xE4, 0x40, 0x84, 0x7F, 0x92,\n0xF0, 0x66, 0xF0, 0x43, 0xE3, 0x78, 0xF7, 0xFB, 0xF9, 0xDF, 0x96, 0xD4, 0xCA, 0x15, 0x9A, 0xF9,\n0x63, 0x25, 0xF9, 0x50, 0x1C, 0xF0, 0xA1, 0x14, 0x34, 0x2B, 0xAD, 0x4D, 0x99, 0x6A, 0x26, 0x1C,\n0x7D, 0x7A, 0x6A, 0xB3, 0x41, 0xDA, 0x5A, 0x09, 0x28, 0x68, 0xF3, 0x34, 0x7F, 0x9E, 0x0F, 0x49,\n0x40, 0xF0, 0x4F, 0x08, 0xE8, 0x71, 0x40, 0x5D, 0x07, 0xF3, 0xC9, 0x31, 0x1C, 0x90, 0xF1, 0xAF,\n0x25, 0x20, 0xA9, 0x17, 0x95, 0x02, 0x30, 0x3A, 0x20, 0xAA, 0xB2, 0x47, 0xAD, 0xF8, 0xEB, 0xE9,\n0x80, 0xFC, 0x03, 0x70, 0xB0, 0x4C, 0xE8, 0x37, 0xFD, 0x52, 0x38, 0xD4, 0xFF, 0x24, 0x63, 0x21,\n0xA0, 0x21, 0xDE, 0xA1, 0x54, 0xDB, 0x34, 0xF2, 0x61, 0x3E, 0x3A, 0x52, 0x02, 0xFA, 0xF8, 0x37,\n0x12, 0x54, 0x5C, 0x78, 0xA0, 0xA2, 0xF8, 0x91, 0xBA, 0x29, 0x45, 0xF1, 0xF8, 0xB3, 0xF0, 0x4F,\n0x73, 0xEA, 0xF4, 0x3F, 0x8D, 0xFE, 0x4D, 0x24, 0xDA, 0x01, 0xBE, 0xBC, 0xBB, 0xBC, 0xF4, 0x38,\n0xE0, 0x48, 0xB1, 0xAE, 0x04, 0xE4, 0x2F, 0x81, 0xBE, 0x50, 0x81, 0x80, 0x26, 0x1D, 0x04, 0xCE,\n0x95, 0x7F, 0x21, 0xFB, 0xBF, 0x48, 0x91, 0x37, 0x4B, 0xDF, 0x51, 0x39, 0x82, 0xE2, 0x4F, 0x8B,\n0xE7, 0xEF, 0x66, 0xB5, 0x9F, 0x7F, 0xED, 0x25, 0x58, 0xE1, 0x12, 0xCD, 0x5C, 0xB2, 0x5B, 0xE1,\n0xB2, 0xFE, 0x10, 0x17, 0xBA, 0x1A, 0x20, 0x80, 0x03, 0xFE, 0x51, 0x9C, 0x41, 0x00, 0xFF, 0xC6,\n0xDA, 0x16, 0xFC, 0x3B, 0xC9, 0x03, 0x40, 0x6B, 0x2D, 0x06, 0x98, 0x7B, 0xD0, 0x9B, 0x7F, 0x5A,\n0xFE, 0x38, 0xF9, 0xF7, 0x4C, 0xA6, 0x4B, 0x64, 0x21, 0x34, 0xF7, 0x3F, 0xE1, 0x9F, 0x34, 0xC1,\n0x9B, 0x67, 0x0E, 0xD8, 0x49, 0xC0, 0x6A, 0x3B, 0xFC, 0xAC, 0x34, 0x0E, 0x68, 0xAB, 0x5A, 0xE2,\n0xAF, 0x0F, 0x00, 0xD9, 0xD5, 0xAF, 0xD7, 0x7F, 0xF8, 0xA8, 0xC8, 0x99, 0xF7, 0x7F, 0xEF, 0x5F,\n0x81, 0x80, 0xF3, 0x6C, 0x4F, 0x0D, 0xFC, 0x93, 0xA2, 0xF8, 0x5B, 0xEC, 0x8A, 0x2A, 0x5D, 0x04,\n0x09, 0xA4, 0x50, 0x51, 0xFA, 0x48, 0xBB, 0x50, 0x15, 0x7B, 0x93, 0x6D, 0x5A, 0xCA, 0x3F, 0x05,\n0xA0, 0xC7, 0x01, 0x4F, 0xE5, 0xDB, 0x34, 0xC5, 0x7F, 0xE6, 0x72, 0x58, 0x31, 0xE0, 0xD7, 0xE7,\n0x80, 0x0A, 0x40, 0xAD, 0x85, 0xCB, 0xFF, 0x94, 0x80, 0xE7, 0x34, 0xCA, 0xBF, 0x48, 0x40, 0xDA,\n0xFF, 0x9D, 0x2E, 0x11, 0xC8, 0x3A, 0xC1, 0x53, 0xF0, 0xCF, 0x91, 0xE5, 0x15, 0x18, 0x69, 0xA7,\n0xE7, 0xCC, 0x51, 0x57, 0x12, 0x45, 0xA0, 0x31, 0x40, 0x78, 0x57, 0x1B, 0xB6, 0x0A, 0xC5, 0xC6,\n0x8F, 0x3F, 0x20, 0x10, 0x5F, 0xF1, 0xF0, 0xDF, 0xE9, 0x05, 0x6B, 0xCB, 0x7F, 0xED, 0xC9, 0xBF,\n0xE1, 0x1C, 0x10, 0xFC, 0x7B, 0x86, 0xDF, 0x85, 0x5E, 0xCE, 0xF1, 0x7B, 0x82, 0x3F, 0xE9, 0x04,\n0x1F, 0xC3, 0x01, 0xE9, 0x66, 0x60, 0x01, 0x5C, 0x19, 0x80, 0xCA, 0xBF, 0xA0, 0x80, 0x20, 0x60,\n0xEE, 0xCA, 0x6A, 0xFD, 0x6F, 0xD8, 0x4E, 0xB0, 0x7E, 0x4E, 0xE4, 0xD0, 0x8C, 0xB5, 0xEF, 0xF4,\n0x4B, 0xE2, 0x18, 0x87, 0x2F, 0x63, 0x15, 0xC0, 0x90, 0xD6, 0x01, 0x0F, 0xDB, 0xD2, 0xD6, 0x31,\n0xC0, 0x6B, 0xE1, 0xDF, 0x61, 0xDB, 0xB8, 0xFF, 0x35, 0x0A, 0x0A, 0x65, 0xE0, 0x45, 0x53, 0xB0,\n0x3F, 0x39, 0x29, 0x7B, 0xDA, 0x43, 0x6D, 0x2C, 0xD5, 0x7E, 0x96, 0x93, 0x0A, 0xA0, 0x02, 0xCD,\n0xE9, 0x80, 0x8A, 0xBF, 0x90, 0xD3, 0xE0, 0x80, 0xA5, 0xB6, 0xE4, 0xDF, 0x9D, 0x67, 0x1C, 0xB0,\n0xC5, 0xDF, 0x05, 0x25, 0xE0, 0xAE, 0xFE, 0x9C, 0x80, 0x03, 0x1E, 0xC6, 0xC2, 0xAB, 0x19, 0x1F,\n0x1F, 0xCE, 0x5F, 0x69, 0xE0, 0x80, 0x07, 0xD9, 0x63, 0x1C, 0x94, 0x5E, 0x4F, 0xD3, 0x29, 0x1B,\n0x07, 0xAC, 0x7B, 0x24, 0x5E, 0x7F, 0x84, 0x7E, 0x72, 0xDE, 0x0E, 0x17, 0xB5, 0x9C, 0x3E, 0xB4,\n0x06, 0x68, 0xF9, 0x17, 0x8A, 0x1A, 0x20, 0x42, 0xF9, 0x67, 0x14, 0xD0, 0x7C, 0x59, 0xFF, 0x30,\n0xE0, 0x97, 0x6D, 0x0B, 0x85, 0x13, 0x9E, 0xE8, 0xAB, 0x7F, 0xA8, 0x1E, 0xE1, 0xFC, 0x53, 0x03,\n0x94, 0x26, 0x33, 0x21, 0x04, 0x80, 0xC7, 0x81, 0x7D, 0xA1, 0x31, 0x05, 0xFC, 0x14, 0x04, 0x7C,\n0x51, 0x76, 0x40, 0xBD, 0x4C, 0xE4, 0x50, 0x05, 0x14, 0xC1, 0x2B, 0x33, 0xB0, 0x8E, 0x00, 0xEC,\n0x83, 0xC0, 0xE0, 0x79, 0x7A, 0x84, 0x93, 0x79, 0x1C, 0xFC, 0x4F, 0x0F, 0xAD, 0xB1, 0x24, 0xDD,\n0xA1, 0x0A, 0x5F, 0x5E, 0x21, 0xE7, 0x87, 0x2B, 0x83, 0x53, 0x5D, 0x01, 0x0C, 0xFA, 0xD7, 0x36,\n0xEE, 0x7F, 0x81, 0x14, 0x7A, 0x94, 0xE4, 0xEF, 0xE5, 0xF7, 0xCA, 0x3E, 0x85, 0x8F, 0xF2, 0xE7,\n0xE7, 0x34, 0x01, 0xA5, 0x24, 0xCA, 0x3F, 0x84, 0xF9, 0xDF, 0x29, 0xBE, 0xF5, 0x4D, 0x09, 0x7F,\n0x81, 0x7F, 0xDA, 0x34, 0xAC, 0xB7, 0xDE, 0xE2, 0xCF, 0xD1, 0x09, 0x8E, 0xFC, 0xD3, 0xA6, 0xEA,\n0x8C, 0x00, 0x7E, 0x6D, 0x5E, 0xB5, 0x81, 0x03, 0xE6, 0x7A, 0xC0, 0xE3, 0xF0, 0xA6, 0x4E, 0x97,\n0x9D, 0xE0, 0x59, 0xA9, 0x1B, 0xD0, 0xDF, 0xFF, 0xD0, 0x09, 0xCE, 0x56, 0x2D, 0xF8, 0x0B, 0xF4,\n0x93, 0x86, 0x5E, 0xF0, 0x06, 0xD0, 0xA3, 0x27, 0x8B, 0x3F, 0x6A, 0x80, 0x7E, 0x00, 0x96, 0x14,\n0x10, 0xA7, 0x75, 0x22, 0xF0, 0xCB, 0x95, 0x61, 0x40, 0x7B, 0x0A, 0x6D, 0xED, 0x04, 0x14, 0xC6,\n0x95, 0xF8, 0xD7, 0x0A, 0xA0, 0x1E, 0x1F, 0x3C, 0x2B, 0x2B, 0xE0, 0x71, 0xD0, 0x3F, 0x6D, 0x72,\n0x62, 0xFD, 0x5F, 0xE4, 0xD3, 0x4F, 0x2B, 0xC2, 0x3F, 0x69, 0xED, 0xA9, 0x44, 0xBF, 0xE0, 0x7F,\n0xB8, 0x02, 0xFD, 0x89, 0xA6, 0x17, 0xE1, 0xA7, 0x0D, 0x24, 0x8C, 0x5D, 0xA5, 0x90, 0x71, 0xAE,\n0x6B, 0xF5, 0x4B, 0x1C, 0x00, 0x04, 0x01, 0x43, 0x60, 0x7D, 0x9D, 0x01, 0xC0, 0x43, 0x00, 0x50,\n0xAA, 0x2C, 0x40, 0x8D, 0x90, 0x22, 0xD6, 0x45, 0xC1, 0x00, 0x75, 0x02, 0x04, 0x04, 0xD4, 0xC5,\n0x30, 0x96, 0x52, 0xED, 0xA9, 0xC3, 0xBF, 0xD3, 0x53, 0x36, 0xFF, 0x81, 0x9C, 0xFE, 0x9C, 0x46,\n0xA0, 0x56, 0x1C, 0xFF, 0x0B, 0x0A, 0x48, 0x86, 0x01, 0x03, 0xD3, 0x81, 0xC0, 0x05, 0xF7, 0xBF,\n0xD0, 0x22, 0x01, 0x61, 0xD4, 0x9A, 0xF8, 0x78, 0x2E, 0x63, 0x0F, 0x88, 0xBC, 0x55, 0xF9, 0x7E,\n0xF0, 0xF2, 0xED, 0xDC, 0x6F, 0x4F, 0x25, 0xFD, 0xEB, 0xC7, 0x3F, 0x43, 0xC0, 0xDC, 0x11, 0x7A,\n0x35, 0xF1, 0xF8, 0x30, 0x69, 0x80, 0x4E, 0x01, 0xCC, 0x2C, 0x92, 0xE6, 0x02, 0x08, 0x0A, 0x5A,\n0xF5, 0x5B, 0xBF, 0x04, 0x82, 0x81, 0x56, 0x01, 0xFF, 0xBE, 0x00, 0xA2, 0xFA, 0x84, 0xF0, 0x2F,\n0xE0, 0x2F, 0x9C, 0x74, 0x3D, 0x74, 0x61, 0x00, 0x30, 0xFA, 0x9F, 0x3E, 0x00, 0x01, 0x1D, 0x77,\n0x44, 0x7D, 0xC1, 0xF9, 0xA7, 0x47, 0x00, 0x60, 0xDE, 0x00, 0x81, 0xBF, 0xD0, 0x7A, 0xC4, 0xF6,\n0x7A, 0xF1, 0x87, 0xD6, 0xFE, 0xA4, 0x89, 0x2E, 0x28, 0x01, 0xB5, 0x0E, 0x96, 0x0D, 0x9D, 0x2A,\n0xAD, 0xBF, 0xA8, 0x3B, 0x97, 0xD7, 0x58, 0x8A, 0x28, 0x8C, 0xFB, 0x18, 0xF1, 0x01, 0x2E, 0x02,\n0x0E, 0x17, 0x5C, 0x28, 0x64, 0x67, 0x56, 0x21, 0x9B, 0x40, 0x40, 0x88, 0x03, 0x23, 0x3E, 0x90,\n0xA0, 0x49, 0x40, 0xCD, 0xEA, 0x6E, 0x22, 0xE8, 0x4A, 0x84, 0x64, 0x31, 0x71, 0xE3, 0x80, 0x8B,\n0x6C, 0xB2, 0x11, 0x02, 0x77, 0x23, 0x82, 0x7F, 0xA8, 0xE7, 0x54, 0xF7, 0xC9, 0x37, 0x35, 0xA7,\n0xAA, 0xBE, 0xD3, 0x5A, 0x31, 0xFA, 0x9D, 0x9E, 0xEA, 0x31, 0xF7, 0x7A, 0x7D, 0x4C, 0xCF, 0x6F,\n0x7E, 0xF5, 0xEA, 0xC9, 0xF9, 0xB7, 0x58, 0xAF, 0x8E, 0x20, 0x7E, 0x38, 0xEB, 0x01, 0xFE, 0xA5,\n0x43, 0x08, 0x58, 0xEF, 0xFF, 0x26, 0x01, 0x44, 0xD5, 0x99, 0xF2, 0xF1, 0x00, 0x1E, 0xB3, 0xC0,\n0x44, 0x40, 0x47, 0xAB, 0xF4, 0x23, 0x9B, 0x00, 0x41, 0x28, 0x00, 0x91, 0x02, 0xFE, 0x30, 0xFF,\n0x01, 0x00, 0x4B, 0xAA, 0xC3, 0x80, 0xEA, 0xB1, 0xE6, 0xB4, 0xC3, 0xB9, 0xC1, 0x7F, 0xE3, 0x9F,\n0x1D, 0x4A, 0xC0, 0xFC, 0x7F, 0x2C, 0x3E, 0x57, 0xB6, 0x5E, 0x81, 0xF4, 0xAA, 0xE0, 0x85, 0xC2,\n0x63, 0x18, 0x00, 0x34, 0xFC, 0x9D, 0xCB, 0xD1, 0x18, 0x00, 0xDC, 0x0B, 0x07, 0xD7, 0x1E, 0xE5,\n0xDF, 0xFB, 0x9B, 0xFC, 0x93, 0x72, 0x63, 0x80, 0x7E, 0x02, 0x44, 0x9E, 0x12, 0x03, 0x8C, 0x13,\n0xD0, 0xA5, 0x22, 0x80, 0xBE, 0x1E, 0x45, 0x01, 0x6B, 0xF8, 0x9B, 0xC8, 0xBF, 0xCE, 0x04, 0x44,\n0x07, 0xF8, 0x1D, 0x6B, 0x84, 0x80, 0xCD, 0x09, 0x60, 0xC3, 0x9F, 0xB4, 0xE2, 0x80, 0x5C, 0x00,\n0xB9, 0x03, 0x0A, 0xF2, 0xEC, 0x5A, 0x31, 0x07, 0xE4, 0xFD, 0xDF, 0xE9, 0x0E, 0x38, 0xF4, 0x75,\n0x00, 0x3F, 0x9C, 0x60, 0x0A, 0x1A, 0xD9, 0x11, 0x9C, 0x64, 0x6F, 0x21, 0x07, 0xBA, 0x53, 0xDA,\n0xC0, 0xFF, 0x40, 0x40, 0x33, 0xBF, 0x5C, 0x58, 0x56, 0x89, 0x7F, 0xD9, 0xD1, 0x70, 0x40, 0xF5,\n0xA3, 0xAC, 0x2A, 0x50, 0x11, 0xA6, 0x08, 0x79, 0x4C, 0xBF, 0xE0, 0x80, 0x25, 0x55, 0x03, 0xFF,\n0xE0, 0x80, 0x64, 0xFE, 0x03, 0xF1, 0xC3, 0x80, 0x5A, 0xDA, 0xFC, 0x2C, 0xFF, 0x06, 0x86, 0xDF,\n0xA1, 0xFD, 0xF8, 0xCB, 0x0A, 0xAD, 0xD1, 0x01, 0xD6, 0x6A, 0x38, 0x60, 0x9A, 0xFF, 0xCD, 0x8F,\n0x15, 0x3A, 0xBF, 0xC0, 0x9F, 0xFA, 0xDF, 0x16, 0xFF, 0x6C, 0x39, 0x60, 0x69, 0xEA, 0x7E, 0x7C,\n0x35, 0xF1, 0xE1, 0xB6, 0xAC, 0x76, 0x80, 0xF7, 0xE2, 0xD9, 0xBE, 0x00, 0x4F, 0xCB, 0xF4, 0xD3,\n0xC2, 0xF5, 0x9C, 0x9A, 0xD9, 0x49, 0xD5, 0x00, 0x5F, 0x0F, 0x1A, 0xA0, 0x0F, 0xF1, 0x3F, 0x29,\n0x84, 0x08, 0x20, 0xEA, 0x71, 0x47, 0x01, 0x7D, 0x13, 0xC7, 0x9F, 0xAF, 0x09, 0x61, 0x13, 0x20,\n0xD6, 0xBC, 0x03, 0x07, 0x2C, 0xF9, 0x9F, 0x14, 0x10, 0xA8, 0xCB, 0x01, 0x19, 0xFF, 0xD8, 0x54,\n0xF0, 0x49, 0x7E, 0x9D, 0xD8, 0x72, 0x40, 0x40, 0x10, 0x95, 0xF3, 0x4F, 0x8E, 0xC9, 0x04, 0xD4,\n0x6B, 0x7E, 0x7B, 0xFA, 0xCF, 0xF0, 0x77, 0x2E, 0xAD, 0x96, 0x44, 0x79, 0xA7, 0xB5, 0xB0, 0xA4,\n0xA7, 0xE0, 0x1F, 0xB2, 0x36, 0x43, 0xC9, 0xB2, 0x76, 0xFC, 0xD3, 0x66, 0xB7, 0x3D, 0x00, 0x88,\n0xBA, 0xA9, 0xFB, 0x5F, 0x66, 0x80, 0x58, 0x0E, 0x68, 0x9C, 0xC2, 0x06, 0x90, 0x5B, 0x97, 0xA8,\n0xFF, 0x61, 0x39, 0x20, 0x0E, 0x8C, 0xFF, 0x6D, 0xFE, 0x0B, 0x68, 0x9B, 0x64, 0xAF, 0x3E, 0xFF,\n0x8B, 0xAA, 0x3B, 0x20, 0xFC, 0x0F, 0x13, 0x21, 0x60, 0x5F, 0xB6, 0x00, 0xD0, 0xBF, 0x02, 0x83,\n0xAC, 0xFB, 0x8C, 0x03, 0xBA, 0x03, 0x04, 0x87, 0x73, 0x07, 0xFF, 0x73, 0x17, 0x60, 0x6D, 0x18,\n0x70, 0x2F, 0x5D, 0xCA, 0x68, 0xF4, 0x48, 0xD7, 0xBF, 0xF7, 0xBF, 0x9C, 0x5B, 0x35, 0xAA, 0x4D,\n0x27, 0xA0, 0x26, 0x23, 0x20, 0xA1, 0xDF, 0x23, 0x77, 0x82, 0x29, 0xFE, 0x38, 0xFF, 0xFA, 0x12,\n0x10, 0xFC, 0x03, 0xFD, 0xF4, 0xA1, 0x79, 0xA3, 0xEE, 0x7F, 0x49, 0xFC, 0xEC, 0x90, 0xE6, 0x15,\n0xC2, 0x3F, 0xEA, 0x80, 0x18, 0xFF, 0x43, 0x1B, 0xEB, 0x00, 0xFF, 0x93, 0xE5, 0x80, 0xE7, 0x0F,\n0x02, 0x98, 0xC8, 0x07, 0x03, 0x4C, 0xCF, 0x92, 0x03, 0x6A, 0x2D, 0x0E, 0xE5, 0x18, 0x95, 0xA2,\n0xC0, 0x3F, 0x2C, 0x07, 0x94, 0x16, 0x47, 0x5A, 0x00, 0xED, 0x11, 0x58, 0x5F, 0x00, 0xE8, 0xAA,\n0x6C, 0x80, 0xB0, 0x2F, 0x23, 0xA1, 0x14, 0x00, 0x85, 0x09, 0x10, 0xF8, 0x1F, 0x71, 0x40, 0xF0,\n0xCF, 0x3B, 0xA0, 0x1F, 0x57, 0x4C, 0xFF, 0xBC, 0xFC, 0xDF, 0x60, 0x70, 0xC0, 0xE2, 0x0A, 0x40,\n0x5F, 0x65, 0x07, 0x54, 0xFE, 0xB9, 0x63, 0x0D, 0x05, 0xB4, 0x03, 0xFC, 0xF3, 0x0E, 0xA8, 0x2F,\n0x13, 0x66, 0x7F, 0xF5, 0x18, 0x63, 0x10, 0x4C, 0xC3, 0x1B, 0x1D, 0x06, 0x00, 0x77, 0xFC, 0x51,\n0x36, 0xC0, 0x1C, 0x7F, 0x43, 0x7B, 0x02, 0x03, 0xF4, 0xFC, 0x23, 0x1E, 0x08, 0xFC, 0x45, 0x08,\n0x28, 0xC1, 0x33, 0x84, 0x18, 0x20, 0xAA, 0x23, 0xFD, 0xD0, 0x12, 0xFC, 0x71, 0x00, 0x96, 0x2B,\n0x9E, 0x22, 0xFF, 0xF6, 0x41, 0x3F, 0x34, 0xFB, 0x65, 0xFF, 0x1B, 0x05, 0xD0, 0x24, 0x50, 0x9E,\n0x81, 0x80, 0x84, 0x7F, 0x70, 0x40, 0xEF, 0x7F, 0x17, 0xFE, 0xC3, 0x12, 0x06, 0x98, 0x75, 0x7F,\n0xFF, 0x19, 0x00, 0x01, 0x3F, 0xB7, 0x00, 0x3A, 0xCD, 0x81, 0xD8, 0x18, 0xA0, 0x9E, 0x16, 0x36,\n0xE9, 0xAB, 0x67, 0x8C, 0xFF, 0xB9, 0x60, 0x4B, 0x08, 0x52, 0xE6, 0x9F, 0x39, 0xA0, 0xF3, 0x3F,\n0xF4, 0x12, 0x51, 0x7E, 0x4B, 0x88, 0xF0, 0x0F, 0xCC, 0xC1, 0xD9, 0x1C, 0x10, 0xAA, 0x06, 0xFF,\n0x73, 0xA1, 0xFC, 0x43, 0xBC, 0x55, 0x2A, 0xFF, 0x80, 0x3E, 0x9C, 0x85, 0xCC, 0x5E, 0x01, 0xF1,\n0x9F, 0x94, 0x4D, 0x84, 0x50, 0xFF, 0xC3, 0x44, 0x08, 0x14, 0x10, 0xFE, 0x67, 0x13, 0x20, 0x8E,\n0x80, 0xE3, 0xCB, 0x84, 0xE9, 0xFA, 0x51, 0xE8, 0xCF, 0xAF, 0xCF, 0x1F, 0xE8, 0xA7, 0x71, 0x3D,\n0xE0, 0xE9, 0xFE, 0xE7, 0x8F, 0x79, 0x65, 0xFC, 0xCF, 0x21, 0x30, 0x11, 0x10, 0xDC, 0x51, 0x46,\n0x45, 0xF1, 0xD7, 0x08, 0x31, 0x40, 0x29, 0x6E, 0x80, 0xBE, 0xFA, 0xFB, 0x1F, 0x21, 0x60, 0x07,\n0x00, 0xF2, 0xD4, 0xFC, 0xCF, 0x23, 0xB0, 0xB6, 0x01, 0x44, 0x1B, 0xD3, 0x3F, 0x03, 0xE1, 0x2B,\n0xF4, 0x1B, 0xE1, 0x1A, 0xCB, 0x01, 0x31, 0xFE, 0x87, 0x26, 0xA5, 0x60, 0x80, 0x7B, 0x52, 0xFF,\n0xD4, 0x01, 0x41, 0x3F, 0xDB, 0x00, 0xAC, 0xDC, 0xC3, 0x0C, 0x70, 0x62, 0xA1, 0x3E, 0xD2, 0xC0,\n0x92, 0x8A, 0xA0, 0x1E, 0x12, 0x2C, 0x00, 0x2C, 0x10, 0x30, 0x5B, 0x01, 0x28, 0xF6, 0x52, 0xE4,\n0x9F, 0x54, 0xCC, 0xFF, 0x6A, 0x5B, 0x42, 0x32, 0xFC, 0xC9, 0x09, 0x0E, 0x08, 0x5C, 0x61, 0x03,\n0x48, 0xC9, 0x01, 0x5B, 0x0B, 0x00, 0xBD, 0x03, 0x66, 0x56, 0x29, 0xE7, 0x1B, 0xE7, 0x9F, 0xE9,\n0x24, 0x7D, 0x73, 0xAF, 0x7F, 0xC0, 0x3A, 0x9E, 0xDF, 0x14, 0x1C, 0x10, 0x03, 0x80, 0xAE, 0x17,\n0x9C, 0x29, 0xE0, 0xB1, 0xF2, 0xAF, 0x92, 0x83, 0x43, 0x7B, 0x99, 0x2C, 0x87, 0xA6, 0x7D, 0x7A,\n0x24, 0xFA, 0x09, 0x09, 0xF5, 0xD9, 0xF2, 0x1F, 0xF8, 0x5F, 0xED, 0xF2, 0x73, 0xE3, 0x80, 0x52,\n0x73, 0x77, 0x51, 0xDB, 0x96, 0x90, 0xC8, 0x06, 0x10, 0x0F, 0xB5, 0x56, 0xEA, 0xEC, 0xD3, 0xCA,\n0x43, 0xF0, 0x87, 0xEA, 0xEB, 0x7F, 0x78, 0xD2, 0x8F, 0x7F, 0xA8, 0x78, 0xCA, 0xF3, 0xBF, 0xEF,\n0xF8, 0xE6, 0x55, 0xBD, 0x37, 0xBE, 0xE7, 0x9F, 0xF5, 0x7F, 0x21, 0x81, 0xD8, 0x12, 0xD2, 0xF2,\n0x3F, 0x74, 0x82, 0xB7, 0x15, 0x70, 0x06, 0xFB, 0xCB, 0x9A, 0xD9, 0x7C, 0xDB, 0x00, 0x77, 0x6A,\n0x06, 0x38, 0xD9, 0x01, 0xB1, 0x02, 0x50, 0xCA, 0xFA, 0x49, 0x2A, 0x0B, 0x66, 0x80, 0xC3, 0xC3,\n0x86, 0xD6, 0xB5, 0x74, 0x92, 0xF1, 0xD2, 0xC7, 0x6D, 0x09, 0xC1, 0x06, 0xB8, 0x8A, 0x03, 0xE6,\n0x0E, 0x64, 0xE3, 0x7F, 0xAE, 0xDC, 0x96, 0x10, 0xF0, 0x6F, 0x1B, 0x83, 0x52, 0xD8, 0xA3, 0x3B,\n0xCE, 0xFF, 0x56, 0x01, 0x08, 0x09, 0x74, 0x0B, 0x00, 0x5D, 0x54, 0x24, 0x37, 0xAC, 0x12, 0x0B,\n0x00, 0x1D, 0x02, 0xDD, 0x96, 0x10, 0x21, 0x5D, 0xAD, 0xEE, 0xDC, 0x02, 0xC0, 0x1A, 0x01, 0x0D,\n0x7F, 0x0F, 0x31, 0xFF, 0xF3, 0xB1, 0xD7, 0xC9, 0x66, 0x83, 0x17, 0xD6, 0xF7, 0x55, 0xF4, 0xC1,\n0x00, 0x93, 0x03, 0x66, 0x6B, 0x40, 0x3B, 0xF8, 0x9F, 0x5C, 0x94, 0xCE, 0x00, 0x8D, 0x77, 0x85,\n0x2B, 0xFB, 0x04, 0xF8, 0xA9, 0x6F, 0x7F, 0x73, 0x12, 0x88, 0x10, 0x02, 0x32, 0x0A, 0x32, 0xFC,\n0xA1, 0xBA, 0xE2, 0xCF, 0xCE, 0x8E, 0x80, 0x9D, 0x01, 0xC8, 0xE3, 0x00, 0xA8, 0xB8, 0xF3, 0xCD,\n0xBE, 0x5B, 0x10, 0xFD, 0x86, 0x52, 0x6F, 0x34, 0x40, 0xA3, 0xA0, 0x39, 0x20, 0xF3, 0x3F, 0xFF,\n0xED, 0xE8, 0xF0, 0x3F, 0x77, 0x8D, 0xD8, 0x13, 0xC0, 0x0F, 0x3B, 0xE0, 0x6A, 0x47, 0x3C, 0xC3,\n0xD5, 0x8F, 0x63, 0xEC, 0x29, 0x61, 0x08, 0xD0, 0xF0, 0x77, 0x9E, 0x96, 0x03, 0x5A, 0x35, 0xFC,\n0x0F, 0xE3, 0x80, 0x0D, 0xFF, 0xC3, 0xE1, 0x16, 0xC0, 0x54, 0x2B, 0xEB, 0x57, 0xCA, 0x73, 0x60,\n0x2F, 0x3B, 0x8D, 0xBD, 0x60, 0xC3, 0x94, 0xB6, 0x60, 0x1A, 0x75, 0xC0, 0xC6, 0x6F, 0xC5, 0x5C,\n0xB0, 0x2D, 0x00, 0xCC, 0xE9, 0x8B, 0x93, 0xDB, 0x12, 0x62, 0xCE, 0xE7, 0x0B, 0x04, 0xCC, 0x17,\n0x00, 0xFA, 0x03, 0x0B, 0xA2, 0xF5, 0xE3, 0x45, 0x9A, 0xCB, 0x7A, 0xD4, 0xCF, 0x87, 0x1C, 0xE8,\n0x81, 0xD7, 0x53, 0x5A, 0x9B, 0xD6, 0x1A, 0x55, 0x30, 0x5F, 0x09, 0x35, 0x75, 0x01, 0x60, 0xE5,\n0xD8, 0xDE, 0xAA, 0x84, 0x15, 0xD0, 0xAE, 0x99, 0xD9, 0xFD, 0x5F, 0x98, 0x01, 0xBE, 0x9E, 0xFF,\n0x75, 0x0F, 0x03, 0x7C, 0x3D, 0xA0, 0x80, 0xA8, 0xBE, 0x0A, 0x68, 0xA7, 0x8E, 0x02, 0x88, 0x9A,\n0x90, 0xCA, 0xFC, 0x87, 0x6F, 0x8C, 0x80, 0xD8, 0x00, 0x92, 0xC8, 0x97, 0x1A, 0x79, 0xE0, 0xF0,\n0x53, 0xC1, 0xE0, 0x1F, 0x1B, 0x06, 0x3C, 0xF1, 0x97, 0x88, 0xE1, 0xEF, 0xFB, 0x71, 0x4B, 0x08,\n0x0C, 0xB0, 0x01, 0xC0, 0xBF, 0xB7, 0x25, 0x44, 0xCE, 0xC6, 0xBD, 0xC4, 0x3C, 0x2D, 0x15, 0xC1,\n0x71, 0xFF, 0xBC, 0x38, 0xA0, 0x05, 0xFC, 0xAB, 0x10, 0x70, 0x43, 0x56, 0x9A, 0xFC, 0x53, 0x07,\n0x24, 0xFD, 0x5F, 0xF4, 0x1A, 0xB3, 0xF9, 0x5F, 0x38, 0x97, 0x3B, 0x49, 0x9B, 0x30, 0x65, 0x03,\n0x80, 0x0A, 0x2F, 0xAA, 0x80, 0x9C, 0x7F, 0x98, 0x0B, 0xD6, 0x80, 0x7F, 0x25, 0x0C, 0xAA, 0x02,\n0x12, 0xFF, 0xC3, 0x54, 0xB0, 0xDB, 0x00, 0x52, 0x3B, 0x74, 0x32, 0x9D, 0xF8, 0x9F, 0x45, 0xED,\n0x4F, 0x3D, 0x50, 0x0F, 0x1B, 0xC6, 0xC0, 0xD4, 0x96, 0xBE, 0xA8, 0xA6, 0x80, 0x2F, 0x36, 0x3A,\n0x00, 0x1D, 0xFC, 0x6F, 0x5C, 0x8C, 0x35, 0xDF, 0xE4, 0x5F, 0xD6, 0xEB, 0xCD, 0x1A, 0x39, 0xE0,\n0x7F, 0x74, 0x05, 0x0B, 0x6A, 0x9A, 0x01, 0x3A, 0x0C, 0x96, 0x07, 0x02, 0x49, 0x3D, 0x4E, 0x27,\n0x38, 0x27, 0xE0, 0x13, 0x00, 0x10, 0x08, 0x94, 0x67, 0xFB, 0x35, 0xFC, 0x69, 0x32, 0x02, 0x7E,\n0x6D, 0xE8, 0x33, 0xFC, 0xC1, 0x01, 0xB1, 0x20, 0x1A, 0xDF, 0x85, 0xD9, 0xC8, 0xC6, 0x30, 0xE0,\n0x0C, 0x3B, 0x40, 0xB2, 0xC6, 0x4E, 0x73, 0x32, 0xFE, 0x47, 0x08, 0xC8, 0xB7, 0x84, 0x60, 0x96,\n0x50, 0x1B, 0xA0, 0x70, 0x38, 0xE1, 0xAE, 0x4A, 0xD8, 0x00, 0x57, 0xCB, 0xEA, 0xC1, 0x01, 0x57,\n0x47, 0x67, 0x6D, 0x02, 0x6E, 0xFA, 0x1F, 0x58, 0x51, 0x42, 0x60, 0xB6, 0x00, 0xD0, 0x60, 0xE3,\n0x4F, 0xD8, 0x12, 0x92, 0x3A, 0xC0, 0xB7, 0x08, 0x9B, 0x0A, 0x56, 0x22, 0x36, 0x92, 0xFC, 0x6F,\n0x58, 0x01, 0x88, 0x0D, 0xC0, 0x95, 0x13, 0xC6, 0x01, 0x6F, 0x94, 0xEA, 0xC4, 0x01, 0xB1, 0x00,\n0x50, 0x8A, 0x38, 0xE0, 0x51, 0x3A, 0xFC, 0x04, 0xF0, 0xF6, 0x82, 0x68, 0xDB, 0x15, 0xA2, 0x2F,\n0x1D, 0x16, 0xC0, 0x60, 0x26, 0xE4, 0x60, 0xAC, 0x25, 0xB6, 0x03, 0x9D, 0xEF, 0x91, 0xC4, 0xFC,\n0x6F, 0x5C, 0x0E, 0x68, 0x55, 0x02, 0x1F, 0x1A, 0x18, 0x60, 0x03, 0x81, 0x39, 0xD5, 0x68, 0xBC,\n0xFF, 0x79, 0x05, 0xC4, 0xF3, 0x47, 0xEC, 0x04, 0xF3, 0x3E, 0x70, 0x87, 0x25, 0x30, 0x3D, 0x1C,\n0x10, 0xFC, 0xAB, 0x2B, 0xE0, 0xE6, 0x4C, 0x88, 0x72, 0xAF, 0x8A, 0xC0, 0x97, 0x85, 0x80, 0xBC,\n0x03, 0xEC, 0xB7, 0x84, 0x9C, 0xBC, 0x3F, 0x2F, 0x8F, 0x94, 0x60, 0x39, 0x60, 0x61, 0x01, 0x74,\n0xBF, 0x71, 0xC0, 0x65, 0x7A, 0x77, 0x98, 0x21, 0x68, 0x33, 0xE0, 0xCF, 0xDE, 0x37, 0xE2, 0x80,\n0x36, 0xB3, 0xB8, 0xB8, 0x64, 0x71, 0x0B, 0x00, 0xAB, 0x04, 0x0C, 0xF4, 0x7F, 0x31, 0x15, 0x8C,\n0x09, 0xE0, 0x9A, 0x01, 0xA2, 0x13, 0xAC, 0xB4, 0xD2, 0x09, 0x60, 0x96, 0x7C, 0x01, 0x34, 0x21,\n0xE0, 0x38, 0x15, 0x92, 0x5B, 0x9F, 0xE3, 0x1F, 0x1C, 0x50, 0xCE, 0x2D, 0xA6, 0x67, 0xCB, 0x01,\n0x81, 0xBF, 0xCA, 0x61, 0x63, 0xAB, 0x58, 0x00, 0x5D, 0x4D, 0x52, 0x3F, 0x6D, 0x30, 0xA3, 0xA5,\n0xB4, 0xB3, 0x59, 0x60, 0xA9, 0x87, 0x74, 0x58, 0x00, 0xE8, 0x0E, 0x36, 0x01, 0x8C, 0x06, 0x13,\n0x20, 0x64, 0x1B, 0x1B, 0xF8, 0xC7, 0xB3, 0xC5, 0xBF, 0x9A, 0x01, 0x6A, 0x0B, 0x04, 0xD2, 0xEA,\n0xDC, 0xFD, 0x1D, 0xD3, 0xA1, 0xFF, 0xDB, 0x81, 0x80, 0x36, 0x01, 0x52, 0xC3, 0x9F, 0x6D, 0x09,\n0xC1, 0xF8, 0x1F, 0xA6, 0x3F, 0x86, 0xA7, 0x38, 0x40, 0xC0, 0x00, 0xFF, 0xB0, 0x1C, 0x30, 0x6D,\n0x0F, 0x6A, 0xE0, 0x4F, 0x93, 0x8D, 0xFF, 0xB5, 0x2F, 0xC1, 0x78, 0xEC, 0xF3, 0x1F, 0xEB, 0xC4,\n0x04, 0x7E, 0x03, 0x04, 0xB5, 0xCD, 0x96, 0x04, 0xDA, 0x1D, 0xA0, 0x69, 0xD6, 0xC3, 0x8D, 0x11,\n0x94, 0x7F, 0x8C, 0x80, 0x67, 0xD8, 0x00, 0x22, 0x44, 0x20, 0x0E, 0x38, 0x30, 0xE5, 0xF7, 0xA6,\n0x7E, 0x25, 0x3B, 0x1B, 0x65, 0x8D, 0xF2, 0x4F, 0xA8, 0x07, 0x00, 0xB2, 0xD8, 0xB0, 0x62, 0x61,\n0xF1, 0x4B, 0x7E, 0xC2, 0xB6, 0xE0, 0xE4, 0x7F, 0x4D, 0x07, 0x14, 0x02, 0x9A, 0xFF, 0xD1, 0x63,\n0x8D, 0x05, 0xD0, 0x24, 0xBA, 0xF8, 0x4F, 0x5F, 0xAE, 0x4C, 0xFB, 0xF4, 0x94, 0x9E, 0x64, 0x93,\n0x5C, 0x63, 0x07, 0xA0, 0x0B, 0xFF, 0xFC, 0xB6, 0xB8, 0x06, 0xFE, 0x34, 0xCC, 0xFF, 0xAC, 0xF0,\n0x24, 0x92, 0x9C, 0x7F, 0x4D, 0x03, 0x04, 0xFF, 0x78, 0xF5, 0x9F, 0x05, 0x96, 0xF4, 0xE4, 0x1F,\n0x6A, 0x42, 0xC0, 0xBF, 0x77, 0x1A, 0x0A, 0x28, 0x87, 0xDD, 0x1D, 0x50, 0x29, 0xE7, 0x0C, 0x30,\n0x3F, 0x74, 0x1C, 0x90, 0x76, 0x80, 0x31, 0x0E, 0x68, 0x1B, 0x40, 0xDA, 0x08, 0xC4, 0xDD, 0x01,\n0x77, 0xF8, 0x05, 0x38, 0x21, 0xB6, 0x00, 0x1A, 0x8B, 0x64, 0x31, 0x0A, 0x88, 0x67, 0x52, 0x32,\n0x13, 0x62, 0x0B, 0xA0, 0x59, 0x16, 0x6B, 0xDC, 0x00, 0x81, 0x11, 0x70, 0x14, 0xC0, 0xE4, 0x4A,\n0x84, 0x81, 0xD8, 0x00, 0x02, 0xEF, 0x2A, 0x9E, 0xC4, 0x01, 0xB1, 0x01, 0x98, 0x10, 0x10, 0xFC,\n0xA3, 0xC1, 0xFC, 0x2F, 0x68, 0x57, 0x3C, 0xD9, 0x54, 0x70, 0xEB, 0xBF, 0xE7, 0x26, 0x5F, 0x0E,\n0x48, 0xFC, 0x0F, 0x8B, 0x61, 0x94, 0x7F, 0x3C, 0x83, 0xAD, 0xDB, 0x6B, 0x29, 0xA8, 0x4B, 0xC4,\n0x1B, 0x78, 0x28, 0x35, 0x20, 0x71, 0x58, 0x20, 0x08, 0xFF, 0xEB, 0xCF, 0xBF, 0x66, 0x07, 0x58,\n0x01, 0x18, 0xBB, 0x03, 0xEA, 0x03, 0x03, 0xA3, 0x01, 0xED, 0xEA, 0x06, 0x88, 0x5E, 0x70, 0xB0,\n0xFA, 0xF6, 0x80, 0xAD, 0xE9, 0xD9, 0xFB, 0x45, 0x4D, 0x08, 0x6E, 0x00, 0x53, 0xA5, 0x9F, 0xFD,\n0xAA, 0x2D, 0x80, 0x2E, 0x1A, 0x20, 0x0E, 0x5B, 0x10, 0xAD, 0xF8, 0xE3, 0x91, 0xC5, 0x30, 0xC2,\n0x3F, 0x37, 0xFE, 0x57, 0x9E, 0x0B, 0x1E, 0xF0, 0xD7, 0x17, 0x81, 0x69, 0x01, 0x20, 0x7A, 0xBF,\n0xD6, 0xE9, 0x85, 0x01, 0x22, 0xD8, 0x00, 0x4C, 0x09, 0x38, 0x6C, 0x00, 0x89, 0x78, 0x0D, 0x26,\n0x40, 0x58, 0xA5, 0x1B, 0xC0, 0xFC, 0x5E, 0xF7, 0x2E, 0x9C, 0x13, 0x01, 0xC1, 0x3F, 0x3E, 0x0C,\n0x28, 0x24, 0x0C, 0x44, 0x0D, 0xB0, 0x81, 0x3E, 0x9C, 0x07, 0x07, 0xCC, 0x98, 0xEE, 0x9E, 0x65,\n0xCB, 0x01, 0xC1, 0x3F, 0xE2, 0x80, 0xB6, 0x00, 0x90, 0x05, 0xEB, 0x5F, 0xB0, 0x04, 0x06, 0x3C,\n0xBC, 0x96, 0x66, 0x30, 0x40, 0xC9, 0xF4, 0x3B, 0xE0, 0xB3, 0xC3, 0xC6, 0x01, 0x9B, 0x17, 0xB5,\n0x06, 0xFE, 0xC7, 0xCB, 0xC8, 0x16, 0x0A, 0x28, 0x47, 0x0C, 0x10, 0x00, 0x7C, 0x82, 0x6E, 0xB0,\n0x36, 0x5D, 0xF5, 0x0F, 0x35, 0x49, 0x01, 0x71, 0x07, 0xC0, 0x26, 0x03, 0xC5, 0x01, 0xD3, 0x02,\n0x40, 0x66, 0x80, 0x5F, 0xEB, 0xCF, 0x84, 0x7F, 0x08, 0x9B, 0x08, 0x31, 0xFE, 0x31, 0x06, 0xCA,\n0xA7, 0x2A, 0xAE, 0xB1, 0x5E, 0x04, 0x54, 0xFE, 0x69, 0xAC, 0xA7, 0x84, 0xCD, 0xC0, 0xF6, 0x0C,\n0xFD, 0x25, 0xCC, 0x7F, 0xB0, 0xC0, 0xFF, 0x68, 0x27, 0xD8, 0xDD, 0x00, 0xA6, 0xEE, 0x4C, 0x7A,\n0x07, 0x68, 0xE2, 0x5F, 0xD8, 0x12, 0x72, 0x1B, 0xCB, 0xF3, 0x2D, 0xFF, 0x6B, 0x13, 0x50, 0xBF,\n0x01, 0x84, 0x13, 0x58, 0x5A, 0x6C, 0x80, 0xA3, 0x85, 0x09, 0x60, 0xEA, 0x80, 0x3F, 0x62, 0x03,\n0x08, 0xC9, 0x02, 0x43, 0xB8, 0x18, 0xDD, 0x90, 0xE3, 0xDA, 0xF6, 0xF7, 0xE0, 0xC7, 0xDD, 0xFB,\n0xBF, 0x0A, 0xC9, 0xB4, 0x02, 0x90, 0x1A, 0x20, 0xC7, 0x1F, 0x2C, 0x30, 0x1C, 0x2C, 0x9C, 0x61,\n0x0A, 0xD8, 0xFF, 0x7B, 0x92, 0xE2, 0x9D, 0x60, 0x90, 0x10, 0x79, 0x12, 0x05, 0xD4, 0x05, 0x30,\n0xCC, 0x00, 0xED, 0xD6, 0x30, 0xC3, 0xEA, 0x67, 0xBF, 0x04, 0x3A, 0x7B, 0xA2, 0x0A, 0x28, 0x0E,\n0xF8, 0x56, 0x9C, 0x80, 0x73, 0xA3, 0x1F, 0x69, 0x84, 0x80, 0x30, 0xC0, 0x7E, 0x33, 0x21, 0xE8,\n0xFE, 0xDA, 0x9E, 0xF9, 0x71, 0xC4, 0xDC, 0xDE, 0x43, 0xD8, 0x16, 0x72, 0x19, 0xCD, 0x02, 0x0B,\n0x60, 0x28, 0x01, 0x65, 0x95, 0x5F, 0x90, 0x15, 0xCA, 0xBF, 0x28, 0x01, 0x6F, 0x7F, 0x89, 0x12,\n0x10, 0xFE, 0x47, 0x73, 0x75, 0x73, 0x13, 0xB0, 0x3F, 0x6D, 0x65, 0xE5, 0x8E, 0xD7, 0xBE, 0x72,\n0xF1, 0x01, 0x40, 0x4C, 0x05, 0x5F, 0x86, 0x03, 0xE9, 0xC3, 0x34, 0xB0, 0xF1, 0xD0, 0x76, 0x83,\n0x88, 0x0A, 0x6A, 0x26, 0x00, 0x30, 0xF8, 0x01, 0x2C, 0x11, 0xFE, 0xF5, 0x34, 0x40, 0xB9, 0x0B,\n0xF4, 0x34, 0x06, 0xBE, 0xF9, 0x5F, 0x53, 0xC0, 0x4A, 0x1F, 0x78, 0xE2, 0xFA, 0x97, 0x47, 0x01,\n0x20, 0xDC, 0xAF, 0xD5, 0xC8, 0x4C, 0x71, 0x66, 0x7E, 0x35, 0x04, 0xBE, 0x3C, 0x19, 0x80, 0x9C,\n0x7E, 0x36, 0x0E, 0xB8, 0x23, 0xE9, 0x69, 0x80, 0xBA, 0xF6, 0x75, 0x79, 0x78, 0xEE, 0x0D, 0x30,\n0xE1, 0xCF, 0x28, 0x88, 0x8D, 0xC1, 0x71, 0x00, 0xAE, 0xD1, 0x01, 0x66, 0xC7, 0xEA, 0xF8, 0x93,\n0x10, 0xFE, 0x8E, 0x8F, 0x93, 0x5B, 0x85, 0x10, 0x78, 0xF3, 0xDB, 0x6D, 0x38, 0x71, 0xFE, 0x3D,\n0xBF, 0xA2, 0x1D, 0x60, 0x9C, 0x8F, 0x83, 0xFC, 0x3B, 0x3E, 0x3E, 0x0A, 0x13, 0x70, 0x1D, 0x07,\n0xA0, 0xAC, 0x71, 0xB1, 0x97, 0xD0, 0x5E, 0x5E, 0x69, 0x4D, 0x05, 0x8D, 0x84, 0x52, 0x07, 0x71,\n0x00, 0x7E, 0x17, 0xED, 0x7F, 0x18, 0xFF, 0xC8, 0x05, 0xFD, 0x12, 0x87, 0x1F, 0x9C, 0x6D, 0x9A,\n0xFF, 0xBD, 0x39, 0xC1, 0x00, 0xFF, 0x65, 0xFC, 0x65, 0x02, 0xD8, 0x73, 0x0A, 0x04, 0x35, 0x8D,\n0x7F, 0x50, 0xC0, 0x56, 0x93, 0xBE, 0x2A, 0xD8, 0x90, 0xD7, 0x1C, 0x03, 0xD4, 0x5F, 0x7D, 0x19,\n0x43, 0x80, 0x8C, 0x7F, 0x3A, 0x04, 0x18, 0xC3, 0x9F, 0x7C, 0xB3, 0xFE, 0x5E, 0xD4, 0x00, 0xC3,\n0x17, 0xB5, 0x2C, 0x81, 0x79, 0x61, 0xB2, 0x67, 0x14, 0x34, 0x63, 0x48, 0x0B, 0x62, 0xF4, 0xC0,\n0x3C, 0x70, 0x0C, 0x7F, 0x97, 0xEB, 0x75, 0x98, 0x80, 0xAB, 0x55, 0xD4, 0xFF, 0x76, 0xAF, 0x46,\n0xBD, 0x22, 0x27, 0x29, 0x99, 0x03, 0x79, 0x1E, 0x15, 0xC0, 0x30, 0xFF, 0x74, 0x66, 0xC5, 0xFF,\n0x03, 0xCB, 0xE7, 0x9F, 0xAF, 0x84, 0x80, 0xFC, 0x3F, 0x4A, 0xD9, 0xBF, 0x0A, 0x12, 0x50, 0xF8,\n0xB7, 0x8E, 0x12, 0x50, 0x97, 0xC1, 0x0C, 0x2F, 0x21, 0x54, 0x4F, 0x9E, 0xD8, 0xA0, 0x06, 0x64,\n0x5F, 0xCC, 0x5E, 0xAE, 0x80, 0xFE, 0x06, 0xB8, 0xA7, 0x3B, 0x3D, 0xC8, 0x55, 0x3D, 0xA5, 0x0B,\n0x2C, 0x99, 0xC4, 0xBF, 0xB0, 0x01, 0xF6, 0x07, 0x20, 0xEF, 0x00, 0x03, 0x85, 0xD3, 0x01, 0xD8,\n0x9D, 0x7F, 0x12, 0x4E, 0xBF, 0x34, 0x0D, 0x8C, 0xBB, 0xA0, 0x26, 0xCC, 0x55, 0xC7, 0x00, 0xD3,\n0x10, 0x60, 0x94, 0x80, 0xF8, 0x1A, 0x4C, 0xD2, 0x64, 0x9D, 0x60, 0x76, 0x68, 0x05, 0xFD, 0x4F,\n0xF3, 0x02, 0x7D, 0x5D, 0x74, 0x7D, 0x55, 0x1F, 0x14, 0x7F, 0xE6, 0x09, 0x07, 0x7A, 0x5F, 0xAC,\n0xA0, 0x03, 0xEA, 0x3B, 0x75, 0x1D, 0x03, 0xE0, 0x4A, 0xA2, 0x7A, 0xC4, 0x4A, 0xF8, 0xA7, 0x54,\n0x61, 0xEA, 0xA7, 0x27, 0xE5, 0x9F, 0xD4, 0x7D, 0x0C, 0x80, 0x61, 0x04, 0x3E, 0xD7, 0x3F, 0x93,\n0xF5, 0xC1, 0x71, 0xBE, 0xB2, 0xA5, 0xDD, 0xA4, 0x56, 0x92, 0xA0, 0xFF, 0x69, 0x82, 0x00, 0xD4,\n0xBB, 0xC0, 0x9C, 0x0B, 0xDE, 0x2C, 0xE7, 0xA6, 0x83, 0xF8, 0x6E, 0x90, 0xE1, 0xD5, 0xD6, 0x2F,\n0x81, 0x89, 0x12, 0x70, 0x19, 0x06, 0xE0, 0xE9, 0xFB, 0x9A, 0x59, 0x2F, 0x03, 0x4C, 0x99, 0xD4,\n0xFF, 0x8D, 0x29, 0x60, 0x6F, 0x00, 0x72, 0xFC, 0x95, 0x6F, 0x8D, 0x1A, 0x4F, 0x77, 0xFE, 0x89,\n0xDA, 0x49, 0xB8, 0x01, 0xDA, 0x42, 0xC0, 0x37, 0x14, 0x7F, 0x09, 0x83, 0x55, 0x03, 0x54, 0xFF,\n0x8B, 0x12, 0x50, 0xB6, 0x00, 0xE3, 0x3E, 0x80, 0xAC, 0xD1, 0xAB, 0x2A, 0x26, 0x80, 0x7A, 0xA5,\n0x2E, 0x29, 0xFE, 0x34, 0x87, 0x4B, 0x8D, 0xF5, 0x79, 0x6D, 0x2B, 0xB0, 0x3A, 0xC2, 0xF0, 0x44,\n0x21, 0x98, 0x3C, 0x41, 0x1A, 0x49, 0x4C, 0x01, 0xFF, 0x58, 0x87, 0x09, 0xB8, 0x4A, 0x11, 0xBA,\n0x71, 0x53, 0xFA, 0x79, 0xCC, 0x0D, 0x47, 0x90, 0xB8, 0x1A, 0x1C, 0x90, 0x09, 0xA0, 0x56, 0xA8,\n0xFF, 0xFB, 0x9B, 0x12, 0x50, 0xD6, 0xC1, 0x50, 0x03, 0x95, 0x28, 0xAC, 0x77, 0x8F, 0x03, 0x02,\n0xB8, 0x4A, 0x09, 0xA9, 0xF2, 0x25, 0x08, 0xC8, 0xF9, 0x27, 0x49, 0xA0, 0xD3, 0x82, 0xD1, 0x5F,\n0x9B, 0x06, 0x6A, 0x93, 0x14, 0x7F, 0x29, 0x91, 0x26, 0xEA, 0x7F, 0x41, 0x04, 0xBE, 0x9F, 0x42,\n0x0D, 0x30, 0x08, 0xC0, 0xE9, 0xFC, 0x9B, 0xA8, 0x80, 0x9D, 0xF1, 0xC7, 0x15, 0xD0, 0x02, 0x00,\n0xC6, 0x11, 0xD8, 0x95, 0x7F, 0x8A, 0x3F, 0x69, 0xE8, 0x20, 0x20, 0x6E, 0x09, 0x63, 0x98, 0x83,\n0x01, 0xBA, 0x43, 0xF1, 0x97, 0x08, 0x48, 0x63, 0x77, 0x84, 0xE1, 0xC3, 0x25, 0xB3, 0xE4, 0x7F,\n0x41, 0x02, 0x6A, 0x51, 0x04, 0x82, 0x7F, 0x12, 0xAC, 0x91, 0x48, 0xF8, 0x1B, 0xFB, 0x4E, 0x63,\n0x33, 0xD4, 0x42, 0x12, 0x5B, 0x08, 0xB8, 0xB6, 0x70, 0x02, 0xAE, 0xC6, 0x50, 0x52, 0x80, 0x7F,\n0x7C, 0x18, 0x50, 0xF9, 0x97, 0x2A, 0xC2, 0xBF, 0x30, 0x01, 0x15, 0x7F, 0xA9, 0xE8, 0x42, 0x40,\n0xCB, 0xD5, 0xCD, 0x71, 0xC8, 0xFF, 0x02, 0x0E, 0x28, 0x59, 0xAD, 0x25, 0x31, 0x02, 0xE2, 0xAB,\n0x90, 0xC6, 0x28, 0xF7, 0xCC, 0xE7, 0x87, 0x87, 0xFC, 0xC4, 0xFA, 0xBF, 0x89, 0x80, 0x31, 0x01,\n0x5C, 0xC6, 0x24, 0x70, 0x6E, 0x1F, 0xD7, 0xE4, 0xAA, 0x0E, 0x76, 0x81, 0x87, 0x08, 0xD8, 0xA6,\n0xF2, 0x8F, 0x29, 0x60, 0x5F, 0x00, 0x72, 0xFC, 0xA1, 0xC5, 0xD1, 0xDF, 0x01, 0x27, 0x44, 0xD8,\n0x27, 0xC5, 0x15, 0xD0, 0xBE, 0x1D, 0x09, 0xB7, 0x82, 0x69, 0x19, 0xA0, 0xFA, 0x9F, 0x32, 0x90,\n0x13, 0x50, 0x6F, 0x08, 0x73, 0xA2, 0x04, 0xA4, 0x13, 0x21, 0x33, 0xBD, 0x9E, 0xE4, 0xA1, 0x09,\n0x00, 0x70, 0x69, 0x0E, 0x48, 0xA2, 0x9F, 0xFD, 0x46, 0x40, 0x7B, 0x5B, 0x98, 0x01, 0x62, 0x1A,\n0x78, 0xA1, 0xA7, 0xC5, 0x43, 0xE8, 0xFC, 0x87, 0x26, 0x29, 0xE0, 0x8A, 0xFB, 0x9F, 0x45, 0x15,\n0x8F, 0xF3, 0x2F, 0x26, 0x81, 0x23, 0xA8, 0xB8, 0x03, 0x1A, 0xFA, 0xA4, 0xA1, 0xA4, 0x14, 0xA8,\n0x12, 0x02, 0xDA, 0x19, 0xE1, 0x0E, 0xB8, 0x7A, 0x08, 0x03, 0xA0, 0xF0, 0xCF, 0x12, 0xF3, 0x3F,\n0xCD, 0x30, 0xA8, 0x3B, 0xAE, 0xF2, 0x1C, 0x7C, 0x5E, 0xCA, 0x96, 0x42, 0xA7, 0xFE, 0x2F, 0x08,\n0xC8, 0xFB, 0xBF, 0x72, 0x48, 0x51, 0x00, 0x8E, 0x1D, 0xE0, 0x5E, 0xCB, 0x60, 0xF0, 0x9B, 0xC2,\n0xFC, 0x9B, 0xAE, 0x80, 0x9D, 0xF1, 0xC7, 0x19, 0x08, 0xFE, 0xF5, 0x1E, 0x07, 0x9C, 0x2C, 0x80,\n0xA9, 0x6D, 0x1A, 0xA0, 0xF9, 0x9F, 0x66, 0xDF, 0x26, 0x7D, 0x8B, 0x06, 0x28, 0x78, 0x4C, 0xF0,\n0x93, 0x52, 0x02, 0xF2, 0x9B, 0x21, 0xD8, 0xDD, 0x10, 0x5A, 0x1F, 0x96, 0xCA, 0x3F, 0x64, 0x4E,\n0xF1, 0x37, 0xD2, 0x4F, 0x1F, 0x9C, 0x7F, 0x96, 0xF3, 0x7C, 0xED, 0x8B, 0x1E, 0x98, 0x0D, 0x11,\n0xF1, 0xB3, 0xF0, 0xCD, 0xC0, 0x1B, 0xEF, 0xD4, 0x1F, 0xCF, 0x08, 0xFF, 0x90, 0x30, 0xFF, 0xD8,\n0x2E, 0x10, 0xD9, 0x08, 0x67, 0xB2, 0x16, 0x74, 0xC0, 0x88, 0x02, 0x0E, 0xFC, 0x4B, 0xCD, 0x3D,\n0x3A, 0xC1, 0xA5, 0xF9, 0x90, 0x08, 0x01, 0xD1, 0xFF, 0x45, 0xD8, 0x36, 0x10, 0x84, 0xDD, 0x0C,\n0x01, 0xF9, 0x16, 0x4B, 0x61, 0x30, 0xC4, 0x21, 0x0F, 0x1B, 0xE0, 0x5D, 0x5A, 0x38, 0x01, 0x07,\n0xF7, 0x93, 0x76, 0x49, 0x3F, 0x7F, 0x93, 0xFF, 0x01, 0x80, 0xC4, 0x00, 0x25, 0x31, 0xFF, 0xD3,\n0x9A, 0xCA, 0xBF, 0xA6, 0x01, 0x3E, 0x36, 0x00, 0xF9, 0x44, 0x30, 0xAA, 0xDB, 0x54, 0xF0, 0x44,\n0xFF, 0xC3, 0xA3, 0xDD, 0xFF, 0x55, 0xFC, 0x19, 0x01, 0xDF, 0x85, 0xFD, 0x39, 0x03, 0x94, 0xC6,\n0x00, 0x98, 0x08, 0x08, 0x00, 0xB2, 0xEF, 0x05, 0x11, 0xB2, 0xB5, 0xB6, 0xC2, 0xE9, 0x05, 0x05,\n0x07, 0x64, 0xFD, 0x5F, 0x43, 0xE0, 0x92, 0xF2, 0x0F, 0xD9, 0x74, 0x3E, 0x1B, 0x12, 0x34, 0x29,\n0x04, 0xFF, 0xE8, 0x76, 0xE0, 0x75, 0x96, 0xE6, 0x72, 0xC0, 0xDD, 0xD5, 0x66, 0x5A, 0xA8, 0xD8,\n0xC2, 0x4A, 0x73, 0x00, 0xEE, 0x37, 0xB8, 0x1A, 0x9B, 0x08, 0x19, 0xD1, 0xA7, 0x0D, 0xBD, 0x1B,\n0x96, 0xE1, 0xCF, 0x86, 0x01, 0xEB, 0xFD, 0xF0, 0x1C, 0xD5, 0xC7, 0xDC, 0xFF, 0xB8, 0x03, 0x26,\n0xFF, 0x43, 0xA8, 0xFF, 0x21, 0xF8, 0x18, 0xDB, 0x58, 0xEA, 0x69, 0x42, 0xB8, 0x44, 0x08, 0x01,\n0xED, 0x82, 0x42, 0x35, 0x16, 0xC0, 0x20, 0x64, 0x22, 0x24, 0x0C, 0x40, 0xFC, 0x25, 0xE7, 0x5F,\n0xD4, 0x00, 0xA7, 0x20, 0x10, 0xE9, 0x39, 0x11, 0x9C, 0xD7, 0x84, 0x74, 0xE7, 0x5F, 0x7B, 0x2A,\n0x58, 0xFD, 0x2F, 0x8B, 0xA1, 0xCF, 0x19, 0xA0, 0xF5, 0x7F, 0x53, 0x43, 0x08, 0xA8, 0xFE, 0xA7,\n0xE0, 0x3B, 0x71, 0xDF, 0x88, 0xEE, 0x9A, 0x3C, 0x73, 0x9D, 0x0A, 0x6E, 0xE1, 0x6F, 0xB9, 0x89,\n0x40, 0xC6, 0x3F, 0x04, 0xC0, 0x33, 0xFD, 0xC3, 0x8A, 0x40, 0xBC, 0xA7, 0xE0, 0x80, 0x11, 0x00,\n0xFE, 0x21, 0xBD, 0xE0, 0xAA, 0xD3, 0x80, 0x7F, 0xC4, 0x01, 0x3D, 0xFF, 0x2A, 0x06, 0xA6, 0xAD,\n0xB1, 0xCF, 0x68, 0xF5, 0xBC, 0x39, 0xFF, 0x9B, 0x55, 0x73, 0x02, 0xD8, 0x0C, 0x10, 0x04, 0x2C,\n0xF3, 0x77, 0x3B, 0x0D, 0x00, 0xAE, 0xF2, 0xEC, 0x36, 0x56, 0x8B, 0xAF, 0xF3, 0x70, 0xFF, 0x83,\n0x03, 0xDA, 0x76, 0x1E, 0xC0, 0xCF, 0x84, 0x30, 0x2D, 0x00, 0x88, 0x10, 0x10, 0xFE, 0xA7, 0xD5,\n0x06, 0xE0, 0x1E, 0x3E, 0xA7, 0x25, 0x74, 0x0C, 0x90, 0x21, 0xD0, 0xFF, 0x32, 0xE7, 0x5F, 0xDC,\n0x00, 0xE3, 0x00, 0xEC, 0xAD, 0x80, 0x00, 0x20, 0x2A, 0x9E, 0x5E, 0x13, 0x20, 0xA0, 0x9F, 0x36,\n0xD5, 0x09, 0x60, 0xF0, 0x0F, 0xBD, 0x60, 0x20, 0x30, 0xDF, 0x05, 0x3C, 0x80, 0x4F, 0x6B, 0x20,\n0x20, 0x3A, 0xC1, 0x9E, 0x7F, 0x69, 0x00, 0x10, 0x55, 0x55, 0x40, 0x20, 0x10, 0x73, 0xC1, 0x04,\n0x81, 0xE8, 0x04, 0x73, 0xFE, 0xD9, 0xFB, 0xC0, 0x34, 0x01, 0x33, 0xC2, 0x86, 0xC0, 0xC5, 0xB7,\n0x0B, 0x0B, 0xBB, 0x25, 0xEA, 0xF6, 0x3B, 0xB5, 0xB1, 0x25, 0x78, 0xB5, 0x95, 0xFA, 0x6D, 0xF3,\n0x0C, 0x26, 0x4C, 0x02, 0xA5, 0xAE, 0xEE, 0xA1, 0x6A, 0xE9, 0xC9, 0x73, 0x32, 0xFF, 0x81, 0x62,\n0x13, 0xC0, 0xC0, 0xAA, 0x10, 0x90, 0xE0, 0x8F, 0x13, 0xF0, 0x06, 0x02, 0x48, 0x09, 0x78, 0xB6,\n0xDE, 0x0E, 0xE3, 0x1F, 0x72, 0x80, 0xE9, 0x7C, 0x1B, 0xE6, 0xB5, 0xFD, 0xC0, 0xC0, 0x1F, 0x27,\n0xE0, 0x0E, 0x14, 0xB0, 0x49, 0xC0, 0x9D, 0xF9, 0xD6, 0xC5, 0xDA, 0xF8, 0x5C, 0x3F, 0xE1, 0x00,\n0xF4, 0xBF, 0x38, 0x9D, 0x7F, 0x39, 0xFB, 0x1A, 0x21, 0xF8, 0xEB, 0xAB, 0x80, 0xA8, 0xAE, 0xE3,\n0x80, 0xF1, 0x80, 0x7C, 0xED, 0xA9, 0x60, 0xE1, 0x62, 0xF9, 0x4B, 0x91, 0x4A, 0x06, 0x68, 0xFC,\n0x33, 0x00, 0x2A, 0x01, 0x81, 0x40, 0xE7, 0x7F, 0x99, 0x01, 0x0A, 0x01, 0x4B, 0x7B, 0x82, 0x67,\n0x06, 0xBD, 0x2C, 0x15, 0xFE, 0x61, 0x94, 0x06, 0x08, 0x64, 0xFC, 0x43, 0x6C, 0xAB, 0xBC, 0x9C,\n0xF1, 0x44, 0x8E, 0x85, 0xB3, 0x0A, 0x10, 0xD0, 0x2D, 0x80, 0x76, 0x04, 0x2C, 0x03, 0x10, 0xFC,\n0x23, 0x0A, 0x28, 0xD1, 0x25, 0x25, 0x2E, 0xB5, 0xDB, 0x41, 0x03, 0x7D, 0x63, 0x71, 0x02, 0xA2,\n0x1A, 0xFC, 0x83, 0x01, 0x9A, 0x03, 0x96, 0x2C, 0x74, 0x02, 0x01, 0x57, 0x3E, 0xB5, 0x9B, 0x22,\n0xAC, 0x7D, 0x68, 0x07, 0x18, 0x39, 0x37, 0xFC, 0x1D, 0xC0, 0xE8, 0xD1, 0xFF, 0xE5, 0x04, 0x84,\n0xFF, 0xE1, 0xA3, 0xB5, 0x0A, 0xC0, 0x3F, 0xDD, 0xD5, 0x8A, 0x4B, 0xDA, 0x7D, 0x35, 0xF0, 0x06,\n0x00, 0x9B, 0xFA, 0x97, 0xFF, 0x94, 0x03, 0x90, 0x1B, 0xE0, 0xD3, 0x00, 0x10, 0x0A, 0xD8, 0x81,\n0x80, 0x3D, 0x16, 0x40, 0x67, 0x4D, 0xB9, 0x1B, 0x0C, 0xFF, 0xCB, 0x1D, 0xF0, 0xE5, 0x97, 0xFD,\n0x46, 0x38, 0xF5, 0x3F, 0x23, 0xA0, 0x36, 0x70, 0xC0, 0xCA, 0xFC, 0xAF, 0x1E, 0xD2, 0x18, 0x01,\n0x4F, 0xFC, 0xC7, 0xA5, 0xB6, 0x1E, 0x7F, 0xB5, 0xD5, 0x30, 0x18, 0xA6, 0x59, 0xB2, 0x71, 0x40,\n0xBD, 0xDC, 0x7D, 0xF0, 0x1E, 0x19, 0xD6, 0xC2, 0x48, 0xC0, 0x3F, 0x36, 0x0C, 0xB8, 0x80, 0xFF,\n0x05, 0x08, 0xB8, 0x3A, 0x2E, 0x00, 0xE0, 0xA6, 0x04, 0x40, 0xE0, 0x8F, 0x10, 0x50, 0xF9, 0x97,\n0xC1, 0xAF, 0x41, 0xC0, 0x8C, 0x7A, 0xC4, 0x01, 0x33, 0xF6, 0x0D, 0xA7, 0xCA, 0x38, 0x60, 0x8D,\n0x80, 0xC5, 0x0D, 0x20, 0x85, 0x50, 0xFF, 0x43, 0x18, 0xFF, 0x10, 0x8C, 0x64, 0x48, 0xB0, 0xDA,\n0xC9, 0xCC, 0x1F, 0x91, 0x1F, 0x35, 0x47, 0x00, 0xB3, 0xCB, 0xEB, 0xB4, 0xBA, 0x00, 0x46, 0x43,\n0x10, 0xA8, 0x8F, 0xF4, 0xB5, 0x98, 0x44, 0x01, 0x29, 0xFF, 0x38, 0xFE, 0x10, 0x6E, 0x80, 0x15,\n0xFE, 0xFD, 0x8F, 0x14, 0x70, 0x2A, 0xFF, 0x72, 0x06, 0x96, 0x27, 0x80, 0xC5, 0xF7, 0x8A, 0x04,\n0xFC, 0x3A, 0x47, 0x20, 0xF8, 0xF7, 0x72, 0x2A, 0x2C, 0x86, 0xA9, 0xF9, 0x9F, 0x32, 0x0F, 0x06,\n0xA8, 0xF5, 0x7D, 0x41, 0x01, 0x7D, 0x1A, 0x5B, 0x42, 0x30, 0x4C, 0x63, 0x0F, 0x05, 0xE0, 0x77,\n0x84, 0x7F, 0xC8, 0x0B, 0xEB, 0x00, 0xA7, 0x73, 0xE2, 0xE0, 0xF9, 0xA2, 0x90, 0x83, 0xB2, 0x02,\n0x96, 0xDF, 0xA9, 0x2B, 0xE6, 0x7F, 0x48, 0x71, 0x02, 0xB8, 0x02, 0x40, 0x8F, 0x9F, 0x9B, 0x07,\n0xFF, 0x03, 0xAF, 0x12, 0x01, 0x7F, 0xA9, 0x0D, 0x00, 0x3E, 0x90, 0xF0, 0x81, 0x88, 0xC5, 0xF1,\n0x3F, 0xF7, 0xA7, 0xEA, 0x3F, 0xA8, 0x34, 0x0E, 0x58, 0xCC, 0x55, 0x71, 0x2A, 0x78, 0x55, 0x0C,\n0xF5, 0x3F, 0x84, 0xF1, 0x0F, 0xC2, 0x7E, 0x00, 0xEC, 0xE1, 0xBC, 0x44, 0x18, 0x01, 0x97, 0xA6,\n0x7F, 0x7A, 0x32, 0x1B, 0x2C, 0xF6, 0x7F, 0x61, 0x7F, 0x79, 0x66, 0x85, 0x3E, 0xF0, 0x5B, 0x09,\n0x80, 0x48, 0x7D, 0x03, 0x88, 0xFB, 0x25, 0x0A, 0x40, 0x3E, 0x13, 0x12, 0x27, 0x20, 0xD2, 0x93,\n0x80, 0xE5, 0x8A, 0xA7, 0xCB, 0x06, 0x10, 0xAF, 0x80, 0x64, 0x02, 0xD8, 0x92, 0x6D, 0x09, 0xC1,\n0x16, 0xE0, 0xB7, 0x11, 0x20, 0xB0, 0x48, 0x40, 0x68, 0x9F, 0x14, 0x9E, 0xBA, 0x2D, 0x21, 0x98,\n0x00, 0xCE, 0x72, 0x5A, 0xE9, 0x05, 0x3B, 0x03, 0x4C, 0x7F, 0xC9, 0xFD, 0x0F, 0xD9, 0xB8, 0x85,\n0xBA, 0x7D, 0x1F, 0xD2, 0xA2, 0x4C, 0xC0, 0x83, 0xFA, 0x02, 0x40, 0xEF, 0x80, 0xC4, 0xFF, 0x90,\n0xC2, 0x04, 0x48, 0x19, 0x7F, 0xC5, 0x01, 0xC0, 0x7B, 0xEF, 0x6A, 0x70, 0x40, 0x2F, 0x80, 0x6C,\n0x1C, 0x10, 0x0B, 0xA0, 0xFD, 0x9F, 0x2A, 0x0A, 0xC8, 0xF1, 0x87, 0x2D, 0x21, 0x7E, 0x01, 0x4C,\n0x25, 0xD5, 0x0D, 0x20, 0x3E, 0x8C, 0x7F, 0x96, 0x6B, 0x71, 0x40, 0x0C, 0xEA, 0xA6, 0x33, 0x7A,\n0xC0, 0x2F, 0x08, 0x01, 0xA1, 0x7F, 0xE3, 0x09, 0x10, 0x0C, 0x0B, 0x60, 0x71, 0x54, 0x5B, 0x2F,\n0xF8, 0x18, 0x00, 0x5D, 0xF5, 0x13, 0x40, 0x4E, 0xC0, 0x7F, 0x89, 0x7E, 0x3D, 0xB6, 0x84, 0x4C,\n0x88, 0xD9, 0x9F, 0x6B, 0x4A, 0x13, 0xC0, 0x65, 0x00, 0xCA, 0xCF, 0x13, 0xF8, 0x30, 0xFF, 0xFB,\n0x75, 0xC6, 0xBE, 0xA6, 0x03, 0x4A, 0x67, 0xD7, 0xA0, 0x97, 0x0C, 0x10, 0x15, 0x15, 0xC0, 0x04,\n0x40, 0x87, 0xBF, 0xFC, 0x33, 0x1A, 0x9F, 0xDA, 0xD5, 0x0D, 0x20, 0x3E, 0xD9, 0x7A, 0x68, 0xCC,\n0xFF, 0x96, 0x10, 0x48, 0xFC, 0x0F, 0xF1, 0x53, 0xC1, 0xBB, 0xAB, 0x5A, 0x6A, 0xFE, 0x47, 0x7B,\n0xC1, 0x69, 0x01, 0x60, 0xEE, 0x6A, 0x38, 0x7B, 0xFE, 0x55, 0xAB, 0xBE, 0x00, 0x7A, 0xAB, 0x71,\n0xF7, 0x46, 0xAD, 0xC7, 0x13, 0x70, 0x55, 0x8D, 0xDF, 0x00, 0x52, 0xCD, 0x82, 0x4C, 0x80, 0x64,\n0x33, 0x21, 0xF9, 0x4D, 0x1F, 0xC1, 0x3E, 0xEA, 0x80, 0xB8, 0x9C, 0x80, 0xC0, 0xF2, 0x30, 0x20,\n0x86, 0xFF, 0x78, 0x27, 0xF8, 0x7B, 0x00, 0x10, 0x21, 0x13, 0xC0, 0x56, 0x84, 0x7F, 0xD4, 0x00,\n0x5B, 0x79, 0x74, 0xFF, 0xEB, 0x87, 0xC0, 0x7F, 0xCA, 0x3F, 0x4F, 0x3F, 0x37, 0x0C, 0x58, 0xF1,\n0x3F, 0xDB, 0x12, 0xE2, 0x3A, 0xC0, 0xDB, 0x73, 0xC0, 0xFA, 0x00, 0x01, 0xB3, 0x01, 0xC0, 0x5C,\n0x00, 0x51, 0x31, 0xFC, 0x9D, 0x16, 0x10, 0x68, 0x05, 0xFD, 0xB3, 0xC3, 0x11, 0x10, 0xFE, 0xE7,\n0x73, 0x90, 0xAF, 0x1C, 0x5B, 0x34, 0xE2, 0x36, 0x00, 0xD7, 0x72, 0xB9, 0x72, 0xF3, 0xBF, 0x31,\n0x02, 0x7E, 0x0E, 0xFE, 0x31, 0x02, 0xDE, 0x08, 0x92, 0xBC, 0x00, 0x5A, 0x33, 0x91, 0x7F, 0x48,\n0xA6, 0x7F, 0x68, 0xA4, 0xDC, 0xB7, 0x83, 0x4C, 0x20, 0xE0, 0xAA, 0x11, 0xB7, 0x00, 0xB0, 0x1E,\n0xE6, 0x7F, 0x88, 0xA2, 0x0F, 0x53, 0xFC, 0xD9, 0xFC, 0xFF, 0x36, 0x01, 0x3D, 0xFE, 0x70, 0x39,\n0xE5, 0x6B, 0x0C, 0x4E, 0x2B, 0xFE, 0xC7, 0x15, 0x70, 0xDC, 0x00, 0xB0, 0x0D, 0xC0, 0x62, 0xFF,\n0xD7, 0x57, 0x8D, 0x7F, 0x5D, 0x14, 0xF0, 0x09, 0xFC, 0xAF, 0x4B, 0x2F, 0x78, 0xF2, 0x04, 0x48,\n0xD9, 0x00, 0xB1, 0x18, 0x06, 0xFE, 0x57, 0x8B, 0x48, 0xDF, 0x86, 0x01, 0x0E, 0xE0, 0xD3, 0x16,\n0x95, 0xE2, 0xB7, 0x84, 0x80, 0x79, 0xDE, 0x02, 0xD5, 0x01, 0xF3, 0x3B, 0x60, 0x95, 0x33, 0x97,\n0x23, 0x9F, 0x08, 0xC9, 0x96, 0x69, 0x2D, 0x37, 0x0F, 0x8C, 0x03, 0x72, 0xFE, 0xD9, 0xCD, 0xB1,\n0x6C, 0x01, 0x0C, 0xC2, 0x1C, 0xB0, 0xF9, 0x4E, 0x3D, 0x3A, 0x23, 0xFC, 0x43, 0x32, 0x55, 0x22,\n0x5C, 0x41, 0xF7, 0x17, 0xFE, 0xE7, 0x0C, 0xD0, 0x11, 0x10, 0xA3, 0x7F, 0x14, 0x81, 0xF9, 0x1F,\n0x82, 0xC6, 0x08, 0x08, 0x04, 0x52, 0x02, 0x92, 0xFE, 0x2F, 0xE2, 0x36, 0x80, 0x54, 0xF3, 0x07,\n0xF7, 0x3F, 0x2C, 0x07, 0x5C, 0x60, 0x10, 0x10, 0xE4, 0x2B, 0x25, 0xE7, 0xDF, 0x43, 0xBF, 0xD7,\n0x4B, 0x60, 0xEE, 0x7F, 0xB6, 0x01, 0xB8, 0x0A, 0x40, 0x9C, 0x66, 0xE3, 0x65, 0xDF, 0x11, 0x80,\n0x1C, 0x7F, 0x38, 0x93, 0x3C, 0xA6, 0xFF, 0x69, 0xC3, 0x2A, 0x9C, 0xBF, 0xCD, 0x3F, 0x18, 0xA0,\n0x6B, 0xB0, 0x29, 0x8E, 0xF8, 0x9F, 0x64, 0x5F, 0x1C, 0x10, 0xCB, 0xA1, 0xE1, 0x7E, 0x39, 0x08,\n0xFD, 0x96, 0x90, 0xBC, 0xD7, 0xEB, 0x68, 0x28, 0x6C, 0xC3, 0x06, 0x60, 0xEE, 0x80, 0xF0, 0xBF,\n0xE5, 0xA6, 0x02, 0xE6, 0x06, 0xB8, 0x13, 0xF2, 0x3F, 0x10, 0xD0, 0xC6, 0x8B, 0xE0, 0x14, 0x8C,\n0x80, 0x6B, 0x12, 0x2C, 0x07, 0x3C, 0x82, 0x00, 0x55, 0x14, 0xD0, 0x2D, 0x80, 0x26, 0x10, 0xC4,\n0x02, 0x18, 0x3B, 0x0A, 0x4D, 0xC6, 0x3F, 0x37, 0x0B, 0x5C, 0x21, 0x20, 0x26, 0x95, 0x7D, 0xA3,\n0x05, 0x02, 0xD3, 0xDC, 0x1C, 0x73, 0xFF, 0xF3, 0x5B, 0x42, 0xD6, 0xED, 0x50, 0xFF, 0x43, 0x0E,\n0xCF, 0x71, 0x1B, 0xD4, 0xFC, 0xE5, 0x6E, 0x11, 0x70, 0xC7, 0x19, 0xE0, 0x12, 0x1F, 0xB4, 0xB9,\n0x03, 0x9E, 0xB6, 0xFC, 0x2F, 0xBF, 0x3B, 0xA0, 0x5D, 0xEB, 0x00, 0xA0, 0x43, 0x60, 0x6B, 0x6A,\n0xB8, 0xCC, 0xBF, 0x6E, 0x0A, 0xF8, 0x6F, 0xF8, 0x5F, 0xEF, 0x71, 0xC0, 0xBF, 0xB3, 0x00, 0xBA,\n0x3D, 0x10, 0xF8, 0x0E, 0xF1, 0x3F, 0x73, 0x40, 0xB7, 0x01, 0x24, 0x73, 0x40, 0x74, 0x86, 0x41,\n0xC0, 0x8A, 0xFC, 0xF9, 0x5E, 0xB0, 0x14, 0x52, 0x94, 0xC0, 0xD3, 0x87, 0x4E, 0x70, 0x7E, 0x65,\n0xE6, 0x12, 0x68, 0xBF, 0x60, 0xFC, 0x63, 0x79, 0x61, 0x83, 0xE5, 0x84, 0x7F, 0xFA, 0xCD, 0xDB,\n0x51, 0x00, 0x5E, 0x62, 0x1C, 0x70, 0x77, 0x45, 0x82, 0x01, 0xC0, 0x09, 0xFC, 0xCB, 0xE4, 0xAF,\n0xD8, 0x63, 0x6D, 0x76, 0x81, 0xB7, 0x7E, 0x96, 0x4D, 0x00, 0xB7, 0x10, 0xC8, 0xC7, 0xFF, 0xFC,\n0x72, 0xC0, 0x15, 0xCB, 0x2E, 0x36, 0x80, 0xD0, 0xE4, 0xFE, 0x77, 0x5D, 0xA9, 0xE4, 0x80, 0x1A,\n0x6C, 0x00, 0x91, 0x53, 0x35, 0x59, 0x07, 0xB8, 0x6E, 0x80, 0xD2, 0x60, 0x02, 0xB8, 0xED, 0x7F,\n0xF9, 0x02, 0x40, 0xBB, 0xD2, 0xBB, 0x01, 0xF0, 0xCD, 0x78, 0x9E, 0x0C, 0x80, 0x18, 0xFF, 0xEB,\n0xEF, 0x80, 0x53, 0x92, 0xC9, 0x9E, 0x6F, 0xF4, 0x31, 0x76, 0x80, 0x29, 0xFF, 0xD2, 0x97, 0xC4,\n0xF9, 0x05, 0x30, 0x29, 0xF8, 0x2B, 0x6C, 0x09, 0xB1, 0x1B, 0x20, 0x94, 0x05, 0x10, 0x35, 0x63,\n0xFD, 0x5F, 0x3F, 0x15, 0x0C, 0x04, 0x96, 0xC6, 0x00, 0xF5, 0xC4, 0xFD, 0x0F, 0x3E, 0x60, 0xB3,\n0xC0, 0xAD, 0xB7, 0x94, 0x06, 0x04, 0x5C, 0xB3, 0x60, 0x4B, 0xC8, 0x8A, 0xE6, 0xF8, 0x26, 0xEC,\n0x7F, 0x66, 0x5F, 0xF0, 0xBF, 0x2A, 0x01, 0x9F, 0x63, 0xF9, 0x4B, 0xBB, 0xC0, 0x49, 0xF2, 0x47,\n0xEA, 0x13, 0x85, 0x6F, 0x30, 0xC7, 0xD8, 0x00, 0x12, 0x22, 0xA0, 0xDE, 0x01, 0x3F, 0x0A, 0xC0,\n0x45, 0x5B, 0x00, 0xD3, 0x17, 0xA5, 0xDB, 0x56, 0x38, 0x79, 0x7D, 0x89, 0x02, 0x2E, 0x3D, 0xFE,\n0x70, 0x39, 0xE5, 0x5B, 0x8D, 0xC0, 0x3F, 0x9E, 0x99, 0x2D, 0x00, 0x84, 0x01, 0x92, 0x09, 0x8B,\n0xAE, 0x00, 0x74, 0xFE, 0x47, 0x10, 0xD8, 0x37, 0x95, 0xF5, 0x7F, 0x5D, 0xD6, 0x03, 0x4E, 0x89,\n0x51, 0xAE, 0xD9, 0x28, 0xFE, 0xDE, 0xD1, 0x3B, 0x60, 0xD1, 0xD8, 0x02, 0x68, 0x00, 0xCF, 0x95,\n0xD1, 0x50, 0xD8, 0x87, 0x0D, 0x20, 0x6D, 0x0B, 0x1C, 0xF8, 0x47, 0x33, 0x37, 0x02, 0xDA, 0x25,\n0x09, 0x0C, 0x7A, 0x03, 0xDC, 0x81, 0xFF, 0xD1, 0x8C, 0x06, 0xB8, 0x20, 0xB9, 0x4E, 0x04, 0x04,\n0xFF, 0x68, 0x2F, 0x58, 0xB3, 0x0A, 0x64, 0x5C, 0x00, 0x1D, 0x06, 0x20, 0xF1, 0xBF, 0x6C, 0x41,\n0x74, 0x13, 0x80, 0xF6, 0xCB, 0xE0, 0x5F, 0xEB, 0xCF, 0x54, 0xAF, 0xBC, 0xC2, 0xF8, 0x5F, 0x88,\n0x80, 0x9C, 0x7F, 0xD8, 0x12, 0xB2, 0x8E, 0x64, 0xA3, 0x03, 0x7C, 0x5D, 0xAD, 0x21, 0x87, 0x9A,\n0x65, 0x28, 0xD9, 0x04, 0x88, 0xEF, 0x50, 0xE0, 0xB1, 0x67, 0x37, 0xC0, 0x9F, 0x93, 0xCF, 0xEB,\n0x6C, 0x01, 0x4C, 0x08, 0x80, 0xAF, 0x37, 0x01, 0xF8, 0x66, 0x1F, 0x01, 0xE4, 0x04, 0xEC, 0xDF,\n0x09, 0xEE, 0xEF, 0x80, 0xF1, 0x04, 0xE8, 0xA7, 0xC1, 0x1D, 0xA0, 0xB9, 0x03, 0x3A, 0xFF, 0xCB,\n0xC0, 0x97, 0x6D, 0x8A, 0xC3, 0x02, 0xC0, 0xA2, 0x00, 0xE2, 0x87, 0xF0, 0x3F, 0xEA, 0x80, 0xD9,\n0xEC, 0xEF, 0xB2, 0x6E, 0x80, 0x02, 0xC0, 0xEF, 0xB8, 0x00, 0x8E, 0x76, 0xF0, 0x62, 0xDC, 0x01,\n0x72, 0xDD, 0xAC, 0x84, 0x40, 0xF0, 0x8F, 0x3A, 0x60, 0x80, 0x7F, 0xD8, 0x16, 0x8C, 0x0D, 0x20,\n0x14, 0x80, 0x37, 0x57, 0x54, 0x00, 0x8D, 0x80, 0xCF, 0x93, 0x02, 0xFA, 0x87, 0xFE, 0x58, 0xCB,\n0x7E, 0x5D, 0x7E, 0x22, 0x73, 0x1C, 0x0D, 0xFA, 0xE1, 0x44, 0xF9, 0x87, 0xE5, 0x80, 0xF2, 0x5F,\n0x65, 0xFC, 0x23, 0xC1, 0x02, 0x40, 0x1A, 0xE3, 0x1F, 0x33, 0x40, 0xDD, 0x13, 0xF7, 0x22, 0x01,\n0x90, 0x28, 0x20, 0xE6, 0x82, 0x77, 0xBC, 0x01, 0xC2, 0xFC, 0xEC, 0x9C, 0xE6, 0x7F, 0xE5, 0x5A,\n0xA4, 0xB1, 0xF5, 0x2F, 0xA8, 0x16, 0x00, 0xC1, 0x3F, 0x5F, 0x00, 0xE0, 0x34, 0xFE, 0x4D, 0x20,\n0x65, 0x7F, 0xFE, 0x81, 0x7E, 0x7D, 0x09, 0xD8, 0x61, 0x01, 0xA0, 0x6B, 0x04, 0x7F, 0xD8, 0x00,\n0x42, 0x82, 0x1B, 0xA0, 0xD6, 0x1C, 0x10, 0x53, 0xC1, 0xCA, 0x3F, 0x2E, 0x80, 0xAA, 0x80, 0xF1,\n0xCC, 0x55, 0xED, 0xF2, 0xC1, 0xBF, 0x8A, 0x01, 0xEE, 0x60, 0x01, 0x34, 0xED, 0x05, 0x07, 0xFC,\n0x0F, 0xBD, 0xE0, 0x75, 0x2C, 0x7F, 0x08, 0x01, 0x8F, 0x57, 0xB1, 0xE0, 0x0E, 0x80, 0x34, 0xF0,\n0x3F, 0xCA, 0xAB, 0x7B, 0xE0, 0xCF, 0x3D, 0xB4, 0xD2, 0x13, 0x43, 0x61, 0x6D, 0x46, 0xC5, 0xAF,\n0x86, 0x89, 0x45, 0x81, 0x1E, 0xE5, 0xDF, 0xF1, 0x0A, 0xFE, 0x17, 0x20, 0xE0, 0x00, 0xB9, 0x46,\n0x8D, 0xC1, 0x06, 0x10, 0xFE, 0x29, 0x88, 0x0E, 0x70, 0xC9, 0x00, 0xB5, 0x6C, 0x76, 0x4D, 0xFC,\n0x8F, 0x06, 0x23, 0x84, 0x78, 0x0B, 0xC8, 0x2C, 0xB0, 0x60, 0xC6, 0x0A, 0xE4, 0x09, 0x05, 0xD8,\n0x7B, 0x3D, 0xFD, 0xDD, 0x91, 0x43, 0x22, 0x58, 0x0B, 0x1D, 0x93, 0xA0, 0xF6, 0xD4, 0x58, 0x7B,\n0x75, 0x42, 0xFF, 0x37, 0x58, 0x01, 0xFF, 0xC3, 0x82, 0x68, 0x8C, 0xF9, 0x8D, 0xC9, 0x4C, 0x70,\n0xB3, 0x17, 0x3C, 0xDC, 0x00, 0x66, 0xF3, 0xD0, 0xCA, 0x7F, 0x34, 0x10, 0xF1, 0x64, 0xBE, 0x37,\n0x9F, 0xCF, 0x4F, 0x03, 0xC7, 0xFB, 0x3B, 0xF1, 0x2C, 0xE3, 0x11, 0xFF, 0x8B, 0xBD, 0xAD, 0x0E,\n0x17, 0xEB, 0x1F, 0xD7, 0xC1, 0xFC, 0x78, 0xB6, 0xBB, 0xBB, 0x7B, 0xB6, 0xE2, 0x8F, 0xA3, 0xDD,\n0x09, 0xFC, 0xBB, 0xBA, 0x0F, 0xE6, 0xEA, 0xFE, 0x97, 0x78, 0xEE, 0x85, 0x6D, 0xB1, 0xC0, 0x54,\n0x69, 0x82, 0xFF, 0xF9, 0x32, 0x51, 0x74, 0xF7, 0xA3, 0xFE, 0xFF, 0x0A, 0x94, 0x1C, 0xF2, 0x1A,\n0x04, 0x03, 0xFE, 0xF1, 0xC8, 0xE5, 0x82, 0xEF, 0x18, 0x2C, 0x7F, 0xF3, 0xA0, 0x36, 0x9A, 0x79,\n0x30, 0x62, 0x8A, 0x6F, 0xC9, 0x25, 0x7E, 0x62, 0x47, 0xC6, 0x91, 0x0F, 0x52, 0x69, 0x94, 0x3F,\n0x2D, 0x38, 0x39, 0x59, 0x0B, 0x57, 0x3C, 0x1F, 0xBC, 0xF7, 0xC1, 0x7B, 0x2F, 0x85, 0x8E, 0x0F,\n0xA6, 0x50, 0x2D, 0x5C, 0xC0, 0x5A, 0xC8, 0xEA, 0x82, 0x79, 0x4C, 0x00, 0xF2, 0x88, 0x02, 0x9E,\n0x24, 0xE4, 0x6D, 0x1E, 0x5A, 0x5B, 0x87, 0x3C, 0x04, 0x80, 0x3B, 0xCF, 0xE4, 0xBA, 0xDA, 0x89,\n0x54, 0x34, 0x5F, 0x4C, 0x21, 0xE0, 0xE1, 0xF5, 0xF5, 0xF5, 0x82, 0x97, 0xFE, 0xAE, 0x6F, 0x7E,\n0x8C, 0xE6, 0xE8, 0x2C, 0x9C, 0x3B, 0x41, 0x60, 0xA4, 0x74, 0xAB, 0xC8, 0xFD, 0xAD, 0x54, 0x20,\n0xB2, 0xDE, 0xE5, 0x87, 0x68, 0x64, 0x38, 0x50, 0xFE, 0x86, 0xC8, 0x9F, 0x29, 0x00, 0xB4, 0x7F,\n0x57, 0x56, 0xBB, 0x77, 0x67, 0xE1, 0x1C, 0xFD, 0x18, 0xCD, 0x37, 0x8B, 0xEB, 0x68, 0x60, 0x80,\n0x34, 0xD1, 0x4B, 0x2A, 0x65, 0xAE, 0x07, 0xCF, 0x5C, 0x00, 0x78, 0xB2, 0x51, 0x65, 0xF6, 0x70,\n0x90, 0xE5, 0xE9, 0xCA, 0x3F, 0x10, 0x30, 0x1A, 0xC5, 0x5A, 0x7F, 0xFC, 0x29, 0xD8, 0x22, 0xA5,\n0xFC, 0x43, 0x7A, 0x01, 0x50, 0x67, 0x41, 0xF6, 0x09, 0xF9, 0xB0, 0x21, 0x84, 0x12, 0x10, 0xD3,\n0x20, 0x03, 0x01, 0x37, 0x0F, 0xAD, 0xED, 0x43, 0x9A, 0xD9, 0x4C, 0x2F, 0xA8, 0x10, 0xFF, 0x5E,\n0xD3, 0xEB, 0x90, 0x97, 0xE2, 0x2F, 0x4E, 0x40, 0xFD, 0x22, 0x9D, 0x58, 0x64, 0x04, 0x2A, 0x4A,\n0xC0, 0xA3, 0x4F, 0x3F, 0x3D, 0x0B, 0xE5, 0xC3, 0xB3, 0xBB, 0x20, 0x00, 0x77, 0x85, 0x7F, 0x57,\n0x57, 0x8A, 0x21, 0x56, 0xCA, 0x33, 0x11, 0xBB, 0x1F, 0x82, 0x25, 0xB9, 0x8F, 0x44, 0xF8, 0x77,\n0x15, 0x25, 0xA0, 0x00, 0xF0, 0x2E, 0xCC, 0xBF, 0x4F, 0xA3, 0x04, 0xD4, 0x41, 0xC0, 0x28, 0xFF,\n0xE2, 0x00, 0x94, 0x8B, 0x25, 0x8C, 0xC0, 0x67, 0xB8, 0x50, 0x49, 0xCD, 0x66, 0xB3, 0xB7, 0x18,\n0x00, 0x23, 0x28, 0xFB, 0x17, 0x1C, 0x30, 0xCC, 0xBF, 0x49, 0x89, 0x03, 0x30, 0xEE, 0x7F, 0xBD,\n0x09, 0xA8, 0xBF, 0x4B, 0x13, 0xF4, 0xBF, 0xAF, 0x41, 0x40, 0xC2, 0xBF, 0xCF, 0x5E, 0x79, 0xE5,\n0x6D, 0xB3, 0x3E, 0x52, 0xB3, 0x0B, 0x25, 0x60, 0xA0, 0x94, 0x7F, 0x53, 0x12, 0xE7, 0x9F, 0x38,\n0x20, 0x37, 0x0B, 0xF5, 0xBF, 0x30, 0x01, 0x8F, 0x34, 0x41, 0xFE, 0xED, 0xDE, 0xED, 0x9E, 0x45,\n0xA8, 0x92, 0xF8, 0x97, 0x1C, 0x90, 0xE7, 0xF6, 0xA7, 0x5F, 0x7E, 0x09, 0x3A, 0xE0, 0x2F, 0x9A,\n0xDB, 0x20, 0xFF, 0x40, 0x40, 0xCE, 0xBF, 0xA8, 0x03, 0x7E, 0x7A, 0xA4, 0x04, 0xFC, 0x46, 0xF4,\n0xAE, 0x59, 0xFA, 0x1B, 0x2E, 0x25, 0xBF, 0x46, 0xF0, 0x87, 0x59, 0xE0, 0x40, 0x8C, 0x6E, 0xA1,\n0xC4, 0x00, 0xA8, 0xFC, 0xBB, 0xB8, 0x38, 0xD9, 0x20, 0x60, 0x19, 0x7F, 0x89, 0x70, 0x1C, 0x7F,\n0xF8, 0x52, 0xDF, 0x38, 0x02, 0x27, 0xA5, 0x23, 0xFF, 0x90, 0xA7, 0xE1, 0x1F, 0x12, 0xE6, 0x9F,\n0x3C, 0x0B, 0xF3, 0x4F, 0xEF, 0x03, 0xC3, 0xF3, 0xCA, 0x10, 0x4A, 0xC0, 0xB7, 0x06, 0xFE, 0xCD,\n0x4E, 0xF4, 0x92, 0xA1, 0x35, 0x21, 0x4B, 0xA9, 0x08, 0x02, 0x65, 0xA6, 0x58, 0xB2, 0x8C, 0x39,\n0xA0, 0xBC, 0xFF, 0xA2, 0x04, 0xD4, 0x77, 0xF5, 0xD1, 0xA7, 0x67, 0x77, 0x91, 0xFE, 0x6F, 0xAA,\n0x98, 0xFF, 0x29, 0x00, 0x23, 0x04, 0xBC, 0x4D, 0x50, 0x0B, 0x39, 0xA0, 0xFE, 0x36, 0xA5, 0x65,\n0x80, 0x7F, 0x5F, 0xFD, 0x0C, 0x02, 0x52, 0xFE, 0x69, 0xDD, 0x05, 0xFD, 0x4F, 0x13, 0xE9, 0xFF,\n0x8E, 0xCB, 0x60, 0x42, 0xFE, 0x17, 0x27, 0xA0, 0x5D, 0x2D, 0xB1, 0x3C, 0x93, 0x8A, 0xF9, 0x5F,\n0x4E, 0xC0, 0x9A, 0xFE, 0x11, 0x0D, 0xFC, 0xBB, 0x06, 0x38, 0x95, 0x81, 0x41, 0xFC, 0xF5, 0x27,\n0x60, 0x1C, 0x7F, 0x00, 0x60, 0x4F, 0x07, 0xB4, 0xC4, 0xF8, 0xA7, 0x79, 0x39, 0xC0, 0x3F, 0x11,\n0x40, 0x51, 0x40, 0xD9, 0x08, 0x17, 0xF2, 0x3F, 0x4D, 0x80, 0x80, 0x22, 0x80, 0xCF, 0x26, 0x42,\n0x90, 0xE7, 0x50, 0x12, 0x72, 0xC0, 0xC3, 0xEB, 0xCB, 0xF1, 0x0D, 0x98, 0x5C, 0xA5, 0xAD, 0x2A,\n0x9F, 0x9E, 0x1D, 0x29, 0x00, 0x8F, 0x22, 0xFE, 0x17, 0x23, 0xA0, 0xE4, 0x6A, 0xC8, 0xCF, 0x5F,\n0x09, 0x8B, 0x38, 0xFF, 0x34, 0xC9, 0x01, 0xF1, 0x90, 0xC3, 0x9E, 0xE1, 0xB0, 0xDC, 0x86, 0xF8,\n0x07, 0x02, 0x72, 0xFF, 0xD3, 0x8A, 0xF2, 0x4F, 0x5A, 0x25, 0x9C, 0x3C, 0xAC, 0xC5, 0x09, 0xFC,\n0xB3, 0x70, 0xFF, 0xB3, 0x84, 0xF8, 0xA7, 0x47, 0xD4, 0x01, 0x9F, 0xC9, 0x11, 0xF2, 0xBF, 0x44,\n0xC0, 0x19, 0x08, 0x58, 0x11, 0x40, 0x56, 0xC8, 0x04, 0x0A, 0xA2, 0x89, 0xE7, 0x31, 0xF8, 0xD7,\n0x5D, 0xFF, 0xFA, 0x13, 0x10, 0x61, 0x00, 0x54, 0xF6, 0x81, 0x80, 0xD4, 0xFF, 0x8C, 0x80, 0x4D,\n0x04, 0x82, 0x7F, 0x01, 0x02, 0x3E, 0x8B, 0x4F, 0x80, 0x2C, 0x53, 0x45, 0x14, 0x10, 0xEF, 0x14,\n0xDA, 0x09, 0xBE, 0xB4, 0x70, 0x07, 0x3C, 0xFA, 0xF0, 0x48, 0x12, 0x72, 0x40, 0xE3, 0xDF, 0xDD,\n0x6E, 0x8C, 0x7F, 0xD6, 0x0B, 0x26, 0xFD, 0xDF, 0x8C, 0x80, 0x52, 0x55, 0x04, 0x1A, 0x2B, 0x7F,\n0x22, 0x04, 0x94, 0x5F, 0x15, 0xFE, 0x81, 0x80, 0x84, 0x7F, 0x56, 0x21, 0xFE, 0x69, 0xCE, 0x3E,\n0x35, 0xDC, 0x69, 0x2B, 0x95, 0x9F, 0xF4, 0x09, 0x5E, 0x00, 0xEE, 0x7F, 0x71, 0x02, 0x1A, 0xFE,\n0xF4, 0x11, 0x26, 0x20, 0x43, 0xE0, 0xC5, 0xCC, 0x11, 0xD0, 0xE3, 0x0F, 0xB4, 0x0A, 0x1A, 0xA0,\n0xF1, 0x30, 0x2A, 0x80, 0xD3, 0x00, 0xF8, 0xD2, 0x7B, 0xDD, 0xF8, 0x87, 0xF4, 0xF3, 0x3F, 0xA4,\n0x2B, 0x02, 0x83, 0x04, 0x94, 0x59, 0x92, 0xAF, 0x29, 0x01, 0x31, 0xFF, 0x01, 0x02, 0x92, 0x0E,\n0xF0, 0xEC, 0x01, 0x80, 0x27, 0x17, 0x6D, 0x02, 0x3E, 0x1B, 0x7A, 0x1F, 0x51, 0xF7, 0xB3, 0x96,\n0xF2, 0x0F, 0xA1, 0xFC, 0x43, 0x86, 0xB7, 0xA5, 0x35, 0x68, 0xC1, 0x3F, 0x7B, 0x5F, 0x33, 0x07,\n0x54, 0x56, 0x58, 0x05, 0xF9, 0x27, 0x2B, 0x51, 0xBE, 0xBA, 0xBD, 0xA5, 0xFE, 0xF7, 0x13, 0x7A,\n0xC1, 0x45, 0xF6, 0x8D, 0xFE, 0xB7, 0xF9, 0x9B, 0xDB, 0xFC, 0x13, 0xF0, 0x3E, 0x84, 0x00, 0x50,\n0xFD, 0xCF, 0x8A, 0xF3, 0xCF, 0x42, 0x04, 0xF0, 0x12, 0x61, 0x04, 0x5C, 0xC6, 0x09, 0x38, 0x5E,\n0x28, 0xCB, 0xA8, 0x03, 0x3E, 0xE3, 0xE3, 0x80, 0xE0, 0x1F, 0x08, 0xD8, 0xC1, 0x00, 0xE3, 0x04,\n0x44, 0xD3, 0xAF, 0x17, 0xFC, 0xDE, 0xA3, 0x10, 0xF0, 0xA9, 0x01, 0x98, 0x65, 0xBF, 0xC9, 0x3F,\n0xE0, 0x8F, 0x3A, 0xE0, 0x2B, 0x8C, 0x80, 0xE0, 0xDF, 0x05, 0x2E, 0x95, 0x99, 0x10, 0xB0, 0x09,\n0xC0, 0xD7, 0x82, 0xFA, 0x87, 0x0B, 0x5A, 0x1F, 0x9C, 0x7F, 0xA1, 0x4E, 0xB0, 0xF5, 0x7F, 0x41,\n0xC0, 0x12, 0x02, 0xB5, 0xE0, 0x7F, 0x63, 0x2F, 0xF8, 0x8E, 0x0E, 0x00, 0xF2, 0x4E, 0x70, 0xE2,\n0x1F, 0x52, 0x27, 0xA0, 0xFE, 0x78, 0x24, 0x9A, 0x05, 0x0A, 0x98, 0x1D, 0xE0, 0x9F, 0x21, 0xB0,\n0x4E, 0xC0, 0x5B, 0x29, 0xE0, 0x8F, 0x28, 0x20, 0x98, 0xCE, 0x01, 0x78, 0x04, 0x00, 0x7E, 0xFA,\n0xA1, 0x75, 0x82, 0xCB, 0x08, 0xBC, 0xCC, 0x42, 0xF9, 0x87, 0x84, 0x3A, 0xC0, 0x71, 0x05, 0x7C,\n0x96, 0xEA, 0xA3, 0x16, 0x00, 0x67, 0xC8, 0xC5, 0x03, 0x01, 0x89, 0x00, 0x32, 0x04, 0x62, 0x06,\n0xA4, 0xBF, 0x01, 0x62, 0x39, 0x60, 0x7F, 0xFE, 0x3D, 0x9D, 0x00, 0x72, 0x02, 0x02, 0x80, 0x8C,\n0x80, 0xFB, 0xE0, 0x1F, 0x27, 0xE0, 0x5B, 0xAF, 0x10, 0x02, 0xA2, 0xFF, 0xAB, 0xFC, 0x43, 0x2E,\n0xFE, 0xE2, 0xEE, 0x6C, 0x5A, 0xDB, 0xB8, 0xA2, 0x30, 0x9C, 0x14, 0x1B, 0xDA, 0x94, 0x50, 0xB4,\n0x10, 0x86, 0xB8, 0x54, 0x50, 0xF0, 0xC2, 0x85, 0x40, 0x37, 0x45, 0xB6, 0xC1, 0xD0, 0x1A, 0x84,\n0x50, 0x41, 0x18, 0x1C, 0x2F, 0x2A, 0xB4, 0xEB, 0xC2, 0x8B, 0x7A, 0x25, 0x0C, 0xF5, 0x22, 0x74,\n0x13, 0x83, 0x17, 0xDA, 0x78, 0xE9, 0xDF, 0xD0, 0x3F, 0x90, 0xDF, 0xD7, 0x73, 0xEE, 0xCC, 0xC9,\n0xEB, 0xEB, 0x33, 0x77, 0xDE, 0x33, 0xF1, 0x18, 0xB5, 0x7D, 0xEF, 0xD5, 0x1D, 0xD9, 0x56, 0x4C,\n0xA2, 0xCC, 0x3C, 0x7E, 0xEE, 0xD7, 0xB8, 0xFC, 0x83, 0xF5, 0x97, 0xC1, 0x20, 0x6E, 0x80, 0xF9,\n0x19, 0x4D, 0xF9, 0x87, 0x90, 0x09, 0x60, 0x47, 0x40, 0x27, 0x80, 0xE8, 0xFF, 0x02, 0x80, 0x46,\n0x40, 0xE2, 0x7F, 0x36, 0x15, 0x5C, 0x98, 0xFF, 0xAD, 0xF1, 0x83, 0x4E, 0x70, 0xB9, 0x17, 0x5C,\n0x77, 0x7E, 0xAF, 0xAC, 0x13, 0x0C, 0x03, 0xCC, 0x24, 0x50, 0x02, 0xF8, 0xD5, 0xE1, 0xFE, 0x07,\n0x07, 0x0C, 0xF0, 0x8F, 0xCF, 0x84, 0x18, 0xFE, 0x6C, 0x18, 0xD0, 0xD3, 0xCF, 0x9A, 0xC5, 0x45,\n0x98, 0x80, 0xE3, 0x38, 0x00, 0xED, 0x6C, 0x91, 0x9A, 0x1A, 0x1A, 0x9C, 0x81, 0x65, 0xFF, 0x1B,\n0x6E, 0xE5, 0x04, 0x6C, 0x06, 0x60, 0xC6, 0xBE, 0x40, 0x0F, 0x18, 0xF4, 0x23, 0x0E, 0xE8, 0x14,\n0x30, 0x9E, 0x1E, 0xF9, 0x87, 0x6C, 0xC4, 0xFF, 0x10, 0x32, 0x01, 0x9C, 0x87, 0xFA, 0x1F, 0x08,\n0xC8, 0xFC, 0x0F, 0x09, 0xF8, 0x1F, 0x86, 0x01, 0x8B, 0xF3, 0xBF, 0x41, 0x03, 0x9C, 0x67, 0x5D,\n0x9A, 0xD4, 0x52, 0x00, 0xC2, 0x01, 0x79, 0xFF, 0x17, 0xC3, 0x80, 0x25, 0x04, 0xCE, 0x70, 0x55,\n0x33, 0x02, 0x7E, 0xEF, 0x00, 0xD8, 0xB6, 0x00, 0x06, 0x51, 0x18, 0xC1, 0x01, 0x1D, 0xFF, 0x72,\n0xAE, 0xAD, 0xFD, 0xCC, 0x87, 0x29, 0xA0, 0x05, 0xE3, 0x80, 0x8C, 0x7F, 0xC8, 0x5F, 0x65, 0x59,\n0x8D, 0x03, 0x10, 0xFE, 0xA7, 0x91, 0x37, 0xCE, 0xDE, 0xC7, 0x85, 0x1D, 0x2C, 0x17, 0x2E, 0x7C,\n0x00, 0x90, 0x13, 0x10, 0xF8, 0xB3, 0x93, 0x25, 0x66, 0x80, 0xDB, 0xF2, 0x28, 0xFE, 0xA8, 0xC6,\n0x49, 0x9D, 0x39, 0x60, 0x69, 0xFD, 0x1F, 0xC3, 0x1F, 0xE0, 0x87, 0x36, 0x6E, 0x80, 0x5A, 0xE3,\n0x21, 0xFC, 0xEB, 0x17, 0x80, 0x3D, 0xF1, 0x8F, 0x87, 0xFB, 0x1F, 0x1C, 0x90, 0xF9, 0x1F, 0x42,\n0x07, 0x00, 0x91, 0xC2, 0x3C, 0xC8, 0xD6, 0x52, 0x8A, 0x23, 0x60, 0x79, 0x02, 0x24, 0x38, 0x0B,\n0x3C, 0x79, 0xDC, 0xA7, 0xA1, 0xFC, 0xE3, 0x04, 0x3C, 0xB9, 0x70, 0x59, 0x78, 0xFA, 0xA5, 0xE6,\n0xC8, 0x02, 0x02, 0x92, 0xFE, 0x2F, 0xED, 0x05, 0x3B, 0xFE, 0x61, 0x22, 0xA4, 0xC8, 0x3F, 0x20,\n0x50, 0xE9, 0xE6, 0x7B, 0xBF, 0xDA, 0x34, 0x64, 0x5D, 0x5A, 0x00, 0x88, 0xA0, 0x17, 0x4C, 0x26,\n0x80, 0x51, 0xA8, 0xFF, 0xB9, 0x71, 0x40, 0x64, 0x51, 0xD5, 0x0B, 0x1F, 0xC6, 0x3F, 0x84, 0x0F,\n0x00, 0x62, 0xC8, 0x64, 0x1E, 0x35, 0x40, 0x32, 0x01, 0x9C, 0x11, 0xD0, 0x8F, 0x01, 0x3E, 0x36,\n0xB5, 0x12, 0xC7, 0xB2, 0x1E, 0xB0, 0x75, 0x82, 0x09, 0x04, 0x9F, 0x30, 0x0E, 0xF8, 0xEF, 0x04,\n0x20, 0x50, 0xD6, 0xAF, 0x04, 0x36, 0x84, 0xF1, 0x0F, 0xF9, 0x8D, 0xFB, 0x1F, 0x14, 0xF0, 0xB4,\n0xA9, 0x03, 0x0C, 0xFA, 0x51, 0x02, 0xC2, 0x00, 0x63, 0xF8, 0xB3, 0xA3, 0x9D, 0xD7, 0x8C, 0x7F,\n0xC8, 0x09, 0x11, 0x40, 0x24, 0xE7, 0x9E, 0x25, 0x73, 0x1A, 0x4C, 0x05, 0x13, 0xFE, 0xA1, 0x50,\n0xFF, 0x03, 0x01, 0xCF, 0xD6, 0xCD, 0x13, 0xC0, 0xA0, 0x9F, 0x5B, 0x0C, 0x63, 0x15, 0x13, 0xC0,\n0x19, 0x2E, 0xA5, 0xAE, 0x9B, 0xF9, 0xF7, 0x17, 0x27, 0xA0, 0xF7, 0x3F, 0x38, 0x20, 0xF5, 0x3F,\n0xE8, 0x32, 0x98, 0xA7, 0x15, 0xFE, 0xE7, 0x73, 0xC2, 0xF8, 0x87, 0x94, 0xFD, 0x0F, 0x06, 0x88,\n0x27, 0x94, 0x80, 0xDB, 0x52, 0xE4, 0x50, 0x5A, 0x00, 0xE8, 0x09, 0x98, 0x77, 0x81, 0x41, 0x3B,\n0x8E, 0xC0, 0x3A, 0x78, 0x62, 0x2D, 0xC5, 0x1F, 0x9A, 0x2E, 0xE9, 0x91, 0x7F, 0xC8, 0x06, 0xC6,\n0xFF, 0x38, 0x01, 0x0B, 0xA1, 0xFC, 0x43, 0xA8, 0xFF, 0x21, 0xCD, 0xFC, 0x0B, 0x13, 0xD0, 0xE0,\n0xD7, 0x7D, 0x0C, 0xB0, 0x3E, 0x50, 0xFE, 0xC1, 0x01, 0x99, 0xFF, 0x21, 0x6E, 0xB0, 0x0A, 0xFE,\n0x17, 0x71, 0x40, 0x27, 0x4A, 0xA5, 0xA9, 0x60, 0xF0, 0x8F, 0x3B, 0xE0, 0x3A, 0x27, 0x1A, 0x08,\n0x98, 0x77, 0x80, 0xB5, 0xC5, 0x6B, 0xB2, 0xAC, 0x39, 0xFF, 0x40, 0x40, 0xE2, 0x7F, 0x28, 0xD4,\n0xFF, 0xF0, 0x5E, 0x51, 0xFF, 0x43, 0x18, 0xFF, 0x90, 0x02, 0xFF, 0xBC, 0x01, 0x4A, 0xE6, 0x84,\n0x7F, 0x08, 0xF7, 0x3F, 0x10, 0x30, 0x07, 0x20, 0x33, 0x40, 0xF8, 0xDF, 0x47, 0x37, 0x01, 0x02,\n0x1A, 0x06, 0x10, 0xD8, 0x87, 0x03, 0x7E, 0xF7, 0xE4, 0x6C, 0x46, 0x00, 0x11, 0x3E, 0xFE, 0x87,\n0x78, 0x00, 0xDA, 0x02, 0x68, 0xEE, 0x80, 0x25, 0xFE, 0xE9, 0xA6, 0xB8, 0xE2, 0x02, 0x40, 0x4E,\n0xC0, 0xC1, 0x76, 0xCC, 0x00, 0xE7, 0x25, 0x03, 0x1C, 0x10, 0xFE, 0x21, 0x13, 0x73, 0x40, 0xE2,\n0x7F, 0x20, 0x60, 0x6E, 0x80, 0xB3, 0x38, 0x01, 0xCD, 0x95, 0x1C, 0x01, 0x8B, 0xFE, 0xC7, 0x09,\n0xB8, 0xF6, 0xF4, 0x33, 0x02, 0xE6, 0x08, 0xC4, 0xFC, 0xAF, 0xFB, 0x23, 0xEB, 0xC2, 0x02, 0x40,\n0x4A, 0x40, 0xF8, 0x1F, 0x77, 0x40, 0xF8, 0x9F, 0x0F, 0xFC, 0xCF, 0x09, 0x20, 0x75, 0xC0, 0x71,\n0x29, 0x4D, 0x00, 0x6C, 0x34, 0xC0, 0x09, 0x37, 0xC0, 0x6A, 0x10, 0x50, 0x0B, 0xF7, 0x3F, 0x10,\n0xF0, 0xB1, 0xFF, 0x71, 0x05, 0x34, 0xD0, 0x15, 0x0C, 0x30, 0x44, 0xBF, 0xEE, 0xC3, 0x80, 0x2F,\n0xFA, 0xE3, 0x1F, 0xB2, 0x21, 0xFE, 0x21, 0x14, 0x80, 0x88, 0xF3, 0x3F, 0x00, 0xD0, 0x11, 0x90,\n0xF1, 0x0F, 0x53, 0xC1, 0x4D, 0x1B, 0x40, 0x18, 0x01, 0xB1, 0x00, 0x30, 0x6A, 0x80, 0x93, 0x46,\n0x03, 0xD4, 0x27, 0x94, 0x7F, 0x40, 0xA0, 0xDF, 0x00, 0xD2, 0x4A, 0x40, 0x6B, 0xA4, 0x42, 0x00,\n0x29, 0x01, 0x01, 0x07, 0x0F, 0x40, 0x37, 0x01, 0x1C, 0x25, 0xE0, 0xBA, 0x41, 0xE9, 0x30, 0x15,\n0x8C, 0xAA, 0x45, 0x52, 0x7A, 0x71, 0x61, 0x03, 0x08, 0x27, 0x20, 0xFC, 0xCF, 0x97, 0x02, 0xFF,\n0x88, 0x03, 0x2E, 0xC0, 0xBF, 0x08, 0x01, 0xC7, 0xE5, 0x34, 0x0A, 0xA0, 0x33, 0x40, 0xAD, 0x63,\n0xC6, 0x3F, 0x84, 0xFB, 0x1F, 0x96, 0x03, 0x36, 0x8C, 0xFE, 0x31, 0x02, 0xE6, 0xE0, 0xD3, 0x0A,\n0x0F, 0x4C, 0x21, 0x04, 0xEC, 0x65, 0x39, 0xE0, 0x77, 0xFD, 0x64, 0x33, 0x13, 0x20, 0x08, 0xE5,\n0x1F, 0xE2, 0x16, 0x40, 0x17, 0xF3, 0x92, 0xF1, 0xAF, 0xB0, 0x25, 0x04, 0xFC, 0xE3, 0x04, 0x4C,\n0x3F, 0x69, 0x61, 0x80, 0xC4, 0xFF, 0x4A, 0x06, 0x28, 0x95, 0xF1, 0x0F, 0x0E, 0xC8, 0xFC, 0x0F,\n0xF1, 0x1B, 0x80, 0x4B, 0x99, 0xB9, 0x1B, 0x60, 0x95, 0x11, 0xE8, 0x16, 0x40, 0x17, 0x82, 0x4D,\n0x71, 0xE0, 0x5F, 0x39, 0xA9, 0xEB, 0x6B, 0x0D, 0xC8, 0x88, 0xC0, 0x01, 0xB9, 0xFF, 0x81, 0x80,\n0xCC, 0xFF, 0xAC, 0x04, 0xF8, 0x87, 0x2D, 0x21, 0x99, 0x03, 0x5E, 0xB4, 0x84, 0xF2, 0x0F, 0xF1,\n0xF8, 0x2B, 0x8F, 0x01, 0x72, 0x03, 0xAC, 0x1D, 0x70, 0xE0, 0x36, 0x80, 0x14, 0x09, 0x98, 0xF1,\n0x2F, 0x84, 0x3F, 0x30, 0x0F, 0x2D, 0x18, 0xE8, 0x14, 0x90, 0x90, 0x35, 0x9C, 0x67, 0xE1, 0xDF,\n0xA6, 0x06, 0x00, 0x11, 0x37, 0xFF, 0x5B, 0x0E, 0xE5, 0x1F, 0x08, 0xC8, 0xF8, 0x87, 0xB8, 0x05,\n0x80, 0xC5, 0x2C, 0xB3, 0x1B, 0xC0, 0x48, 0xA8, 0x01, 0x42, 0x00, 0x8B, 0x06, 0x38, 0x70, 0xFC,\n0x23, 0x04, 0x04, 0xFF, 0x18, 0x01, 0xE1, 0x7F, 0xB2, 0x03, 0x38, 0xE8, 0x80, 0xC6, 0x0A, 0x42,\n0x40, 0xF8, 0x5F, 0xC9, 0x01, 0x1F, 0x2E, 0x86, 0xB9, 0x6A, 0x52, 0x3A, 0x90, 0xCE, 0xAD, 0x7F,\n0x29, 0xBF, 0xD8, 0x2D, 0x80, 0x29, 0xE6, 0x7B, 0xB7, 0x01, 0xA4, 0x58, 0xD8, 0x00, 0x20, 0xB2,\n0x42, 0xC0, 0xBF, 0x00, 0x01, 0x27, 0x9C, 0x80, 0x00, 0xA0, 0x33, 0x40, 0xBA, 0x25, 0x04, 0x06,\n0x88, 0xB8, 0x0D, 0x20, 0xA5, 0x2C, 0x3B, 0x1B, 0xE0, 0x0B, 0xA8, 0x1E, 0xA0, 0x87, 0xA6, 0x8B,\n0x01, 0x3E, 0x41, 0x01, 0xBF, 0xDB, 0xB0, 0x01, 0xF6, 0xC9, 0x3F, 0x94, 0xF6, 0xFC, 0x08, 0x00,\n0xA2, 0xFF, 0x4B, 0x09, 0xA8, 0x77, 0xC0, 0x6A, 0x73, 0x40, 0xB7, 0x00, 0xB0, 0x98, 0x11, 0x1C,\n0x50, 0xCE, 0xB0, 0x03, 0x62, 0x80, 0xC0, 0x5F, 0xC1, 0x00, 0x9D, 0x02, 0xFE, 0x30, 0x26, 0x17,\n0xCA, 0xF5, 0x89, 0xDF, 0x00, 0xC2, 0x1D, 0xF0, 0x08, 0x61, 0x04, 0x04, 0x16, 0x18, 0x01, 0x3D,\n0x72, 0x8A, 0x5B, 0x42, 0x3E, 0xF8, 0x5C, 0x35, 0xF5, 0x82, 0x31, 0x00, 0x98, 0xDA, 0xA2, 0x03,\n0x62, 0x03, 0x08, 0x25, 0x20, 0x17, 0x40, 0x81, 0xE3, 0x5D, 0x40, 0x00, 0xB1, 0x25, 0x84, 0xF9,\n0x9F, 0x85, 0x09, 0x20, 0x92, 0xF1, 0xAF, 0xCD, 0x00, 0x27, 0xB4, 0x0F, 0xBC, 0x5D, 0x15, 0x7D,\n0xFE, 0x4B, 0xC4, 0xFF, 0x00, 0x40, 0x50, 0x8A, 0xF2, 0xAF, 0xE2, 0x1B, 0xE8, 0xE7, 0x9B, 0xB0,\n0x00, 0x76, 0x54, 0xC0, 0x17, 0xFD, 0xF1, 0x0F, 0xD9, 0x1C, 0xFF, 0x3C, 0x01, 0x69, 0xB2, 0x3B,\n0xC0, 0x10, 0x02, 0x12, 0xFE, 0x81, 0x80, 0xD4, 0xFF, 0x10, 0x03, 0xE0, 0x2F, 0x46, 0x3D, 0xB2,\n0x0E, 0x90, 0x1B, 0xE0, 0x5C, 0x1A, 0xE6, 0x7F, 0x70, 0x40, 0xCA, 0x3F, 0xE4, 0xD3, 0x95, 0xAA,\n0x8C, 0x6B, 0x05, 0xA0, 0x11, 0x70, 0x4A, 0xF9, 0x27, 0x21, 0xE3, 0x7F, 0x96, 0x07, 0x77, 0x88,\n0x2E, 0x29, 0x9D, 0x27, 0xA0, 0x7E, 0xD0, 0xFA, 0xE2, 0x2B, 0xA3, 0x2A, 0x26, 0x80, 0x29, 0x01,\n0x13, 0xFE, 0x08, 0x02, 0x99, 0xFF, 0xE1, 0xBD, 0xC2, 0x06, 0x38, 0x1A, 0xB7, 0x01, 0xA4, 0x18,\n0xD7, 0x01, 0x2E, 0x19, 0xA0, 0xD4, 0xA8, 0x01, 0x6E, 0xE3, 0x67, 0x35, 0x39, 0xA9, 0x9D, 0xFE,\n0x11, 0x06, 0x22, 0x25, 0x06, 0x7A, 0x07, 0x24, 0x4D, 0x38, 0xE0, 0x5F, 0x8F, 0xD9, 0x0C, 0xFF,\n0x10, 0xC7, 0x3F, 0xEE, 0x80, 0xCA, 0x3F, 0x96, 0x00, 0xFF, 0xD0, 0x0B, 0x4E, 0x00, 0x1C, 0x09,\n0xFF, 0x48, 0x86, 0x95, 0x03, 0x1A, 0xF4, 0xF8, 0x2C, 0xF0, 0xBC, 0xDD, 0x00, 0xD3, 0x01, 0x00,\n0xE4, 0x04, 0x64, 0xF3, 0x1F, 0x7E, 0x39, 0xA0, 0x8A, 0x4B, 0x7B, 0x66, 0xF0, 0x3F, 0x5A, 0xB0,\n0x00, 0x9A, 0xE6, 0xFE, 0x30, 0xD1, 0x4A, 0x79, 0x46, 0x1C, 0xB0, 0x71, 0x01, 0x60, 0xE1, 0x4F,\n0x39, 0xFE, 0xB1, 0x61, 0xC0, 0x18, 0x00, 0xB9, 0xFF, 0x61, 0x4B, 0x08, 0xEE, 0x80, 0xC5, 0x09,\n0x28, 0xCE, 0x3E, 0xE6, 0x01, 0x00, 0x89, 0x01, 0x4E, 0x88, 0x01, 0xEE, 0x98, 0x03, 0xEA, 0x53,\n0x4C, 0x00, 0x53, 0x00, 0x72, 0x52, 0x39, 0x9E, 0x11, 0x03, 0x7C, 0x40, 0x40, 0xDA, 0x74, 0x08,\n0xF0, 0xD7, 0x63, 0x9E, 0xF7, 0x0E, 0x80, 0x71, 0x02, 0x46, 0x02, 0xFF, 0xA3, 0xC1, 0x1D, 0x00,\n0x49, 0xEA, 0xDF, 0x12, 0xA2, 0xFE, 0x47, 0x63, 0xFD, 0xDF, 0xED, 0xF0, 0x18, 0xE0, 0x84, 0x8C,\n0x01, 0x6A, 0x03, 0xFE, 0xC5, 0x08, 0x78, 0x01, 0x00, 0x12, 0x02, 0x62, 0xFC, 0x8F, 0x75, 0x82,\n0x8F, 0x31, 0x50, 0xC6, 0x7A, 0xC1, 0x3F, 0x53, 0xFA, 0x60, 0x2A, 0x78, 0x7D, 0x45, 0x04, 0x10,\n0xCB, 0x01, 0x01, 0xC6, 0x96, 0xAC, 0xC1, 0xBF, 0x20, 0x01, 0x23, 0xFF, 0x2E, 0xF0, 0x8F, 0x06,\n0xFC, 0xA3, 0x41, 0xFF, 0x97, 0xC5, 0xAD, 0x7F, 0x71, 0x06, 0x48, 0xB7, 0x84, 0xEC, 0xB8, 0x0F,\n0x31, 0x01, 0x1C, 0x32, 0xC0, 0x18, 0x02, 0x81, 0xBE, 0xA2, 0x01, 0x5A, 0x1B, 0xC4, 0x9F, 0x96,\n0x78, 0x9E, 0x83, 0x7F, 0x1B, 0xD5, 0x3F, 0x10, 0x30, 0x16, 0xF0, 0x8F, 0x06, 0x0B, 0xA0, 0x69,\n0xB4, 0x03, 0x4C, 0xF9, 0x87, 0xA9, 0xE0, 0x80, 0x01, 0xC2, 0xFF, 0x98, 0x01, 0x6A, 0x05, 0xFF,\n0x22, 0x04, 0xBC, 0x88, 0x65, 0x81, 0x1B, 0x20, 0x90, 0xCC, 0x30, 0xFF, 0x41, 0x0B, 0x16, 0x00,\n0xD2, 0x68, 0x2F, 0xF8, 0x03, 0xCB, 0x95, 0x39, 0xA0, 0xB4, 0x91, 0x17, 0xAF, 0x31, 0xFF, 0xC1,\n0x09, 0x08, 0xFF, 0xE3, 0x0E, 0xC8, 0xF9, 0x87, 0x2D, 0x21, 0x17, 0xA1, 0x9C, 0x80, 0x7F, 0x2C,\n0x15, 0xFF, 0x88, 0x01, 0xE2, 0x09, 0x35, 0x40, 0x20, 0x70, 0x8B, 0x05, 0x02, 0xC8, 0x49, 0x05,\n0xAE, 0xB9, 0x6E, 0x70, 0x79, 0x24, 0x90, 0x34, 0x5A, 0xBB, 0xFD, 0xA2, 0xB8, 0xFE, 0xF3, 0xEC,\n0xF3, 0xBF, 0x1C, 0x81, 0xE1, 0x08, 0xFF, 0x82, 0xF9, 0x0D, 0x13, 0xC0, 0xDC, 0x01, 0xB1, 0x00,\n0x86, 0x64, 0x58, 0x9F, 0x65, 0x6C, 0x0C, 0x10, 0xFE, 0xC7, 0x0D, 0x70, 0x3E, 0x00, 0xFF, 0x68,\n0x70, 0x03, 0x18, 0x96, 0x85, 0xDE, 0x00, 0x21, 0x76, 0x59, 0xA3, 0xFF, 0xCB, 0x0A, 0xF8, 0x17,\n0x71, 0x40, 0x48, 0x1D, 0x73, 0x40, 0xE0, 0x90, 0x04, 0xFE, 0x47, 0x83, 0x01, 0x40, 0x5A, 0x30,\n0xFE, 0x47, 0xDF, 0x2B, 0xF0, 0x8F, 0x06, 0xFC, 0x63, 0xA9, 0xF9, 0xC7, 0x0D, 0x10, 0x61, 0x06,\n0xA8, 0xED, 0x70, 0x14, 0x04, 0x60, 0xBC, 0x13, 0xAC, 0x31, 0x14, 0x5A, 0x6D, 0x6E, 0xC2, 0x02,\n0x28, 0x35, 0x9E, 0xEF, 0x9E, 0x23, 0x5D, 0x57, 0x00, 0x6E, 0x0C, 0x80, 0x62, 0x8A, 0xF0, 0x3F,\n0x96, 0x97, 0x5F, 0x84, 0xF3, 0x0A, 0xFE, 0x47, 0x32, 0x12, 0xDC, 0xC5, 0xC7, 0x00, 0x27, 0xD4,\n0x00, 0xEB, 0x26, 0x7E, 0xA5, 0xD8, 0x00, 0x20, 0xCB, 0xED, 0xC5, 0x05, 0x04, 0x90, 0x13, 0x30,\n0xC8, 0x0A, 0x79, 0x19, 0xE5, 0x0E, 0xEE, 0x8F, 0x0A, 0x6C, 0x11, 0xAD, 0x03, 0x09, 0xC9, 0x4B,\n0xA5, 0x62, 0x02, 0x98, 0xE6, 0xEE, 0x19, 0x00, 0x78, 0xBE, 0x8A, 0xE2, 0x6F, 0x71, 0x81, 0x05,\n0x30, 0x34, 0x86, 0x37, 0x6A, 0x80, 0x93, 0x88, 0x01, 0xDA, 0xE9, 0xB9, 0xC5, 0x43, 0x05, 0x10,\n0x8D, 0x09, 0x20, 0xB5, 0x3F, 0xA3, 0x5F, 0xD8, 0x00, 0x37, 0xAD, 0x80, 0xBB, 0xFF, 0x19, 0x00,\n0x7E, 0x83, 0x1D, 0x70, 0x01, 0x05, 0xFC, 0x35, 0x0C, 0xC0, 0xAD, 0x21, 0x23, 0x20, 0x56, 0x03,\n0x1E, 0x40, 0xF9, 0xE8, 0x2C, 0x70, 0xC8, 0x00, 0xBB, 0xF0, 0x6F, 0x8C, 0x11, 0x40, 0x9A, 0x85,\n0xE9, 0x1F, 0x89, 0xBE, 0xAA, 0x4F, 0xFE, 0xC1, 0x00, 0xAF, 0x62, 0x52, 0x87, 0xD7, 0x70, 0x5A,\n0xAE, 0xCF, 0xE4, 0x5B, 0xF7, 0x4E, 0x40, 0x7D, 0x17, 0x62, 0xFC, 0x3B, 0x8A, 0x03, 0x10, 0x33,\n0x20, 0x81, 0x44, 0x0D, 0x70, 0x42, 0x0D, 0x10, 0xC1, 0x49, 0xDD, 0xCB, 0x24, 0x88, 0xC4, 0xA0,\n0x67, 0x8E, 0xD7, 0xD6, 0x40, 0x2D, 0x99, 0x02, 0x76, 0xBB, 0x43, 0x7E, 0xFF, 0xD9, 0xED, 0x96,\n0x4D, 0xF2, 0xEF, 0x8D, 0x24, 0x4A, 0xC0, 0x97, 0x2F, 0xA3, 0x04, 0xC4, 0x1C, 0x08, 0xE7, 0xDF,\n0x50, 0x08, 0xC8, 0x0C, 0x10, 0xE1, 0x06, 0xA8, 0xED, 0x78, 0x1E, 0xC5, 0x1F, 0xC6, 0x00, 0x79,\n0x56, 0x37, 0x8B, 0xA3, 0xE3, 0xD9, 0x51, 0x30, 0x41, 0xFE, 0xDD, 0xFD, 0x39, 0x0D, 0xE2, 0xEF,\n0x4F, 0x5B, 0x04, 0xCD, 0x98, 0xB6, 0xC6, 0x91, 0x8F, 0x17, 0xDE, 0x4B, 0x82, 0x00, 0xD4, 0xBF,\n0x69, 0x70, 0x14, 0x30, 0xCD, 0xF1, 0x06, 0xC7, 0x00, 0x17, 0x37, 0x8B, 0x20, 0xFF, 0xE2, 0x63,\n0x80, 0x7A, 0x02, 0xF4, 0x37, 0x06, 0x68, 0x77, 0x86, 0x91, 0x73, 0x75, 0x19, 0x01, 0x60, 0x58,\n0x00, 0x53, 0xCD, 0x27, 0x40, 0xCA, 0xF8, 0xD3, 0x50, 0xFE, 0x75, 0x17, 0xC0, 0x67, 0x70, 0xC0,\n0xDD, 0x4D, 0x03, 0x30, 0xDE, 0x01, 0x4E, 0xEB, 0x60, 0x82, 0xFE, 0xF7, 0xF2, 0xF5, 0xCB, 0x97,\n0x36, 0x09, 0x4C, 0xF8, 0x27, 0xC1, 0x2A, 0x40, 0xC6, 0xBF, 0x51, 0xBA, 0x0D, 0x42, 0x9F, 0x06,\n0x98, 0x2E, 0x80, 0x58, 0xAA, 0xB5, 0x15, 0x21, 0x07, 0x5C, 0x09, 0x00, 0x6F, 0x42, 0xFE, 0xA7,\n0x59, 0x9D, 0x07, 0xF9, 0x17, 0x06, 0x60, 0x42, 0xD5, 0x1A, 0x06, 0x48, 0xFD, 0x8F, 0x9B, 0xA0,\n0xDD, 0x16, 0x2B, 0xEC, 0x80, 0xD3, 0x98, 0x03, 0xE2, 0x9D, 0xE0, 0xFE, 0x77, 0x23, 0x65, 0x11,\n0xEA, 0x00, 0x63, 0x15, 0x0C, 0xCF, 0x5C, 0x1D, 0xB0, 0x97, 0x31, 0x40, 0x64, 0x38, 0x02, 0x01,\n0x89, 0x01, 0x46, 0x05, 0x30, 0x1B, 0xF3, 0x6B, 0xA3, 0x9F, 0xD4, 0x30, 0x01, 0x3B, 0xE5, 0xBB,\n0xFD, 0x17, 0x1B, 0x07, 0xE0, 0xEE, 0x66, 0xF8, 0x87, 0x95, 0xD0, 0x61, 0xFE, 0x89, 0x03, 0xC6,\n0xFC, 0x4F, 0x13, 0x98, 0x06, 0x19, 0x0D, 0xAB, 0xE8, 0x09, 0xD7, 0x9F, 0x01, 0xDA, 0x15, 0xC0,\n0x82, 0x5F, 0x0F, 0x72, 0x11, 0xE3, 0x9F, 0x12, 0x50, 0x96, 0x01, 0xD2, 0xBC, 0x07, 0x01, 0x59,\n0x01, 0xFD, 0x58, 0xEE, 0xAB, 0x80, 0x80, 0x91, 0xEE, 0x2D, 0x7D, 0xC1, 0x7D, 0x95, 0x3F, 0x03,\n0x51, 0x56, 0x4B, 0x7B, 0xC7, 0x1D, 0xF0, 0x7C, 0x75, 0x14, 0x55, 0xC0, 0xC4, 0x3F, 0x79, 0x5F,\n0x43, 0xFC, 0x8B, 0x13, 0x70, 0x9E, 0x1A, 0x6E, 0x80, 0x08, 0x37, 0xC0, 0x81, 0x9C, 0xAD, 0xEF,\n0x38, 0x01, 0xE3, 0x94, 0xC2, 0x0A, 0x40, 0xDA, 0xFF, 0x7D, 0x2E, 0xFE, 0x09, 0xFD, 0x92, 0x04,\n0x6E, 0x86, 0x7F, 0x48, 0xCF, 0x00, 0x8C, 0x2F, 0x82, 0xA9, 0x23, 0x7C, 0xA3, 0xFC, 0xAB, 0xC3,\n0x1D, 0x50, 0xEF, 0x08, 0x53, 0x13, 0x90, 0x31, 0x30, 0x9D, 0x51, 0xFA, 0x83, 0xF5, 0xA0, 0xA7,\n0xBD, 0xC0, 0x7A, 0x98, 0xD7, 0xA7, 0x7F, 0xC4, 0xFF, 0x2C, 0x41, 0xFE, 0x49, 0x77, 0x6D, 0xC5,\n0xBC, 0x66, 0x56, 0x03, 0x50, 0x0E, 0x77, 0xDC, 0xFF, 0xCE, 0xBA, 0xF1, 0x4F, 0x1D, 0x90, 0xED,\n0x04, 0xE9, 0x02, 0xC8, 0x7B, 0x4B, 0x98, 0xC3, 0xD3, 0xBB, 0x08, 0xFF, 0xE2, 0x33, 0xC0, 0xAB,\n0x1B, 0x2D, 0xA1, 0x9D, 0x20, 0x46, 0xC0, 0x49, 0x84, 0x7F, 0x1A, 0x6E, 0x80, 0x08, 0x9F, 0x05,\n0x5E, 0x0E, 0x53, 0xD8, 0x44, 0x70, 0x84, 0x54, 0xE8, 0x21, 0x67, 0x77, 0x43, 0x68, 0x6B, 0x24,\n0x3D, 0x12, 0x10, 0xFC, 0x4B, 0x75, 0x53, 0x02, 0x88, 0x6C, 0x68, 0x00, 0xF0, 0x4B, 0x10, 0x90,\n0xF2, 0xCF, 0x12, 0xE6, 0x1F, 0xEF, 0x05, 0x57, 0xE7, 0x93, 0x3E, 0xE8, 0x18, 0x20, 0x42, 0x0D,\n0x10, 0x57, 0x01, 0xF7, 0xBF, 0x30, 0x01, 0xED, 0x42, 0xBD, 0x59, 0xB0, 0xBD, 0x70, 0xC6, 0x3F,\n0x09, 0x75, 0xC0, 0x69, 0xCD, 0x94, 0x40, 0xFF, 0xD7, 0x92, 0x66, 0x42, 0x78, 0xD8, 0x30, 0xE0,\n0x95, 0xF1, 0xCF, 0x12, 0x20, 0x9F, 0x75, 0x82, 0x99, 0x02, 0x66, 0x88, 0x6B, 0x8D, 0xFE, 0x40,\n0x49, 0xA5, 0x9F, 0xBD, 0xC0, 0xFE, 0x7F, 0xFE, 0x89, 0x06, 0x58, 0x0B, 0xE0, 0x81, 0x3E, 0x1F,\n0x4A, 0xF6, 0x86, 0x7B, 0xD4, 0x01, 0x83, 0x9C, 0x92, 0x64, 0x88, 0x23, 0x1E, 0x08, 0x68, 0xF5,\n0xEF, 0x7F, 0x5A, 0xF7, 0x37, 0xC3, 0x3F, 0xA4, 0x57, 0xFE, 0x71, 0x07, 0x4C, 0x2F, 0x7A, 0x23,\n0x00, 0xB4, 0x50, 0xFE, 0x21, 0x7C, 0x11, 0xB4, 0x31, 0x90, 0x2C, 0x06, 0xDC, 0x1B, 0x6A, 0x19,\n0xEA, 0x63, 0xD4, 0x9B, 0x01, 0x8E, 0x91, 0x39, 0x01, 0x60, 0x76, 0x37, 0x68, 0xCE, 0xBF, 0x1A,\n0x80, 0x37, 0xAD, 0x8B, 0x61, 0x66, 0x19, 0x07, 0xE9, 0x04, 0xB0, 0x12, 0x30, 0xB5, 0x77, 0xED,\n0x00, 0xBC, 0x47, 0xCE, 0x30, 0x17, 0x4C, 0xFC, 0x8F, 0xE6, 0x1E, 0xE1, 0x33, 0x21, 0x18, 0xAB,\n0x24, 0x62, 0xDB, 0xCD, 0xFF, 0xAC, 0x2C, 0x02, 0xFC, 0x33, 0x07, 0x9C, 0x50, 0xFE, 0x59, 0xCC,\n0xF7, 0x9E, 0x62, 0x80, 0x18, 0x00, 0xDC, 0x1B, 0x26, 0x0B, 0x1C, 0x91, 0xBB, 0xC1, 0xC4, 0x30,\n0x85, 0x0F, 0x0A, 0xB3, 0xC0, 0xD9, 0xF2, 0x40, 0xA4, 0x37, 0x02, 0x8A, 0xFA, 0xA1, 0x6E, 0x0A,\n0x7F, 0x48, 0xDF, 0xFE, 0xC7, 0xF9, 0xA7, 0xF8, 0x43, 0xC2, 0xFC, 0xFB, 0xF2, 0x35, 0xF7, 0xBF,\n0x94, 0x3F, 0xDA, 0xB7, 0x83, 0x2C, 0x87, 0xA9, 0x03, 0xBC, 0x57, 0x95, 0xD1, 0xF0, 0x60, 0x1B,\n0x06, 0x48, 0xD2, 0x76, 0x37, 0x98, 0x34, 0xF6, 0xC3, 0x09, 0xE8, 0xEF, 0x07, 0xC8, 0xF8, 0x67,\n0x05, 0x04, 0xE4, 0x59, 0xB5, 0xF2, 0x4F, 0x88, 0x82, 0x50, 0xFE, 0x21, 0x4F, 0x74, 0x40, 0x2C,\n0x00, 0xCC, 0xC3, 0x01, 0x78, 0x67, 0xB4, 0x66, 0xFD, 0xDF, 0x98, 0x03, 0x3E, 0x78, 0x53, 0xDB,\n0x27, 0x42, 0x16, 0x8F, 0xEE, 0x88, 0x1A, 0x1A, 0xFF, 0xAB, 0x8E, 0xAD, 0x06, 0xC8, 0x09, 0x58,\n0xEB, 0x9F, 0xF9, 0xDF, 0xB2, 0x3E, 0x5D, 0x5B, 0xF8, 0xB7, 0x0C, 0x71, 0x4A, 0x92, 0x77, 0x7E,\n0xF1, 0x2C, 0x63, 0x20, 0xF0, 0x97, 0x01, 0xB0, 0x3F, 0xFF, 0x43, 0xDD, 0xDF, 0x0C, 0x00, 0x91,\n0xFE, 0xF8, 0x07, 0x01, 0xE4, 0xFC, 0x43, 0xDA, 0xD7, 0xBF, 0x3C, 0x44, 0x60, 0x79, 0x43, 0xF0,\n0xEB, 0xC4, 0x3F, 0x40, 0x30, 0x11, 0x70, 0x59, 0x02, 0xE0, 0x0F, 0x43, 0x65, 0xA0, 0x54, 0x38,\n0xE0, 0xD3, 0x7E, 0x27, 0x08, 0xFA, 0xBF, 0xF3, 0xF1, 0x64, 0xAE, 0x07, 0xD6, 0x01, 0x46, 0xC6,\n0x2D, 0x53, 0xC1, 0x8B, 0xDA, 0xFE, 0xE0, 0x80, 0x33, 0x36, 0xFE, 0x57, 0x3D, 0x59, 0x1D, 0x31,\n0xFF, 0xB3, 0xDC, 0x4D, 0x39, 0xFF, 0xE0, 0x80, 0x8A, 0xB0, 0x27, 0xFA, 0x1F, 0xF8, 0xE7, 0x09,\n0xC8, 0x1D, 0xB0, 0xCC, 0xBF, 0xA3, 0x60, 0x66, 0xE7, 0xD9, 0x9B, 0xDA, 0x4A, 0xC0, 0xC5, 0x75,\n0x9E, 0x13, 0xCA, 0xBF, 0xC9, 0xD8, 0xDA, 0x7E, 0x0C, 0x70, 0xAF, 0xA6, 0x9F, 0x34, 0x23, 0x73,\n0xC0, 0xC2, 0x3D, 0xF1, 0x43, 0xA6, 0x86, 0xA5, 0x82, 0x38, 0x40, 0x01, 0x9D, 0x07, 0xBA, 0x90,\n0x05, 0x80, 0x71, 0x01, 0x44, 0xDD, 0x14, 0xFF, 0x90, 0xDE, 0xFA, 0xBF, 0x91, 0x64, 0xFC, 0x23,\n0xB7, 0x84, 0x31, 0xFC, 0x59, 0x5A, 0x16, 0x44, 0x27, 0xF4, 0x41, 0x01, 0xCB, 0x0E, 0xB8, 0xD4,\n0xF3, 0xA8, 0xEE, 0x02, 0xA7, 0x27, 0xBA, 0x20, 0xFA, 0xE9, 0x06, 0x68, 0xFE, 0xA7, 0x0F, 0x6D,\n0xE6, 0x63, 0xFA, 0x3B, 0x41, 0x78, 0x2F, 0x38, 0xBB, 0x4E, 0x31, 0x13, 0xE2, 0xE1, 0x77, 0x6C,\n0xFC, 0xB3, 0x9C, 0xB7, 0x10, 0x70, 0x9A, 0xB3, 0x85, 0x2D, 0x00, 0xD4, 0x60, 0x1C, 0xF0, 0x43,\n0x37, 0x07, 0xE4, 0xFE, 0x17, 0x77, 0x40, 0x4D, 0x79, 0x1C, 0xB0, 0x09, 0x75, 0xCC, 0xFF, 0xCC,\n0x02, 0x17, 0xCC, 0xFF, 0x90, 0x76, 0xFE, 0xCD, 0xED, 0x27, 0xA0, 0x7E, 0xF0, 0xF9, 0x06, 0x88,\n0x0C, 0x2B, 0xFA, 0x8D, 0xD2, 0x09, 0xFB, 0x0E, 0x8B, 0x61, 0x9A, 0x7E, 0x33, 0x26, 0xC5, 0x54,\n0xFA, 0x3C, 0xF4, 0x0F, 0x13, 0x20, 0x74, 0xFC, 0x8F, 0xB1, 0xB5, 0xB3, 0xFF, 0x65, 0xB5, 0x0F,\n0x07, 0xDC, 0x7D, 0x52, 0xFA, 0xF1, 0xBF, 0x20, 0x03, 0x13, 0xFF, 0xF2, 0x14, 0xF9, 0x67, 0x00,\n0x44, 0x2F, 0xF8, 0x55, 0x1B, 0xFF, 0xA4, 0x45, 0x46, 0x46, 0x40, 0xEF, 0x7F, 0x4B, 0xEB, 0x54,\n0xA4, 0x76, 0xB4, 0x7C, 0x92, 0x01, 0x6A, 0xF4, 0x9C, 0x77, 0x95, 0xFA, 0x1F, 0x1C, 0x70, 0xD1,\n0x3A, 0xFE, 0x97, 0x3B, 0xA0, 0xCF, 0x4C, 0xAC, 0xE6, 0xBD, 0x9F, 0x09, 0x29, 0xF9, 0xDF, 0x59,\n0xB6, 0xC2, 0x64, 0x4A, 0xFC, 0x8F, 0x38, 0x20, 0xF1, 0x3F, 0xFE, 0x9B, 0x81, 0xD9, 0x72, 0x40,\n0x9B, 0xAF, 0x21, 0x73, 0xC1, 0x71, 0xFF, 0x03, 0x00, 0x89, 0x03, 0xC2, 0xFF, 0xA2, 0x0E, 0x38,\n0x91, 0x8A, 0xA7, 0x73, 0x9C, 0x25, 0x99, 0x01, 0x76, 0xE1, 0x9F, 0xD1, 0xCF, 0xDA, 0x77, 0x46,\n0x40, 0xCF, 0xBF, 0x57, 0x1C, 0x53, 0xD0, 0x3F, 0x34, 0xE5, 0x25, 0xD0, 0x05, 0xAC, 0xF5, 0x30,\n0xFF, 0xEB, 0x6A, 0x0F, 0xFC, 0xDB, 0x2C, 0x01, 0x81, 0xBF, 0x00, 0xFF, 0x7C, 0x68, 0xFF, 0x17,\n0x79, 0xCD, 0xFC, 0x0F, 0x69, 0x9C, 0x0A, 0x5E, 0xBE, 0xAB, 0xBC, 0x4F, 0x0E, 0x4B, 0x03, 0x61,\n0xB5, 0x20, 0xBA, 0xFB, 0xEF, 0x05, 0x86, 0x11, 0xD6, 0xB4, 0x9B, 0xE0, 0x22, 0x28, 0x8F, 0xFF,\n0x81, 0x7F, 0x88, 0x11, 0xD0, 0xF1, 0x2F, 0x2F, 0x69, 0x2A, 0xF8, 0x78, 0xE6, 0xF7, 0xFF, 0x2A,\n0xF5, 0x7C, 0x28, 0xFF, 0xB8, 0xFF, 0xF9, 0x1C, 0x82, 0x7F, 0x7C, 0xC6, 0x77, 0xCD, 0x7E, 0x2F,\n0x30, 0x9F, 0x08, 0x99, 0xFA, 0x71, 0xC0, 0x16, 0xFF, 0xE3, 0x0E, 0xB8, 0xC2, 0x04, 0xB0, 0x1F,\n0x07, 0xF4, 0x1B, 0x40, 0x7C, 0x88, 0xFF, 0x49, 0x47, 0x00, 0xE3, 0x80, 0x4F, 0x32, 0xC0, 0x83,\n0x7A, 0xFE, 0x03, 0x9D, 0xE0, 0xBD, 0x74, 0x68, 0xE4, 0x9F, 0x5C, 0x00, 0x84, 0x52, 0x10, 0xC0,\n0x0C, 0x81, 0x8F, 0x9C, 0x0F, 0xCF, 0xE2, 0xFC, 0xEB, 0x12, 0x55, 0x3E, 0x5F, 0xF7, 0x37, 0x83,\n0x3F, 0xA4, 0x07, 0xFE, 0xC5, 0x18, 0x88, 0x09, 0xE0, 0x3C, 0xAC, 0xFF, 0x8B, 0xA8, 0x03, 0x72,\n0xFE, 0xC1, 0x01, 0xFD, 0x04, 0x48, 0x1A, 0xFB, 0x4B, 0xAD, 0x4D, 0x05, 0x0B, 0x01, 0x0F, 0x9E,\n0x32, 0x06, 0x08, 0xDB, 0x1B, 0x64, 0xDD, 0xA0, 0x90, 0xFF, 0x15, 0xB7, 0x84, 0xC0, 0xFE, 0x32,\n0x07, 0x14, 0x89, 0x99, 0x3D, 0x96, 0x1A, 0x00, 0x30, 0x43, 0xA1, 0xE7, 0xDF, 0xF9, 0xDD, 0x34,\n0xEA, 0x7F, 0xE0, 0x5F, 0x16, 0x4C, 0x05, 0x33, 0xFF, 0xF3, 0x5F, 0x03, 0xFF, 0x5C, 0x8A, 0xFA,\n0xE7, 0x59, 0xFD, 0x14, 0xFF, 0x3B, 0x4E, 0x0B, 0x60, 0x88, 0x03, 0x62, 0x01, 0x74, 0x9C, 0x80,\n0x73, 0xFB, 0xF1, 0x67, 0x49, 0x27, 0x85, 0x1B, 0x03, 0xEC, 0xD4, 0x03, 0xAE, 0xD7, 0x6A, 0xA1,\n0x13, 0x9C, 0x9E, 0xBE, 0x5B, 0x36, 0xF3, 0xEF, 0xB4, 0x0C, 0x2A, 0xF0, 0xCC, 0x90, 0x57, 0x30,\n0x40, 0x8D, 0x7D, 0x88, 0x10, 0x04, 0x3E, 0xC1, 0xFF, 0x50, 0x7B, 0x00, 0xE0, 0x06, 0x09, 0x08,\n0xFC, 0x45, 0x27, 0x40, 0x38, 0x00, 0x7F, 0x03, 0xFF, 0x98, 0x03, 0x5A, 0xD7, 0xD7, 0xC5, 0x4D,\n0x83, 0xEC, 0xFD, 0xA0, 0xDC, 0xB3, 0x41, 0xC0, 0x74, 0x76, 0xD5, 0x27, 0x18, 0xC6, 0x00, 0x59,\n0x9C, 0x01, 0xD6, 0x03, 0x80, 0xF3, 0x9A, 0x78, 0x13, 0x63, 0x9D, 0x07, 0x20, 0xFC, 0xCF, 0xE5,\n0x82, 0xF0, 0x0F, 0xC3, 0x80, 0x37, 0x36, 0x15, 0x8C, 0xF1, 0x3F, 0x2F, 0x80, 0xC5, 0x4D, 0x71,\n0x53, 0x67, 0x57, 0xA5, 0xF5, 0x80, 0xF7, 0x85, 0x9C, 0x01, 0x6A, 0x44, 0x00, 0xF1, 0x35, 0xB7,\n0x00, 0xDA, 0xA7, 0xB0, 0x01, 0xC4, 0x8F, 0x03, 0x9E, 0xB9, 0x2D, 0x21, 0x77, 0xEF, 0x5B, 0x90,\n0x97, 0x99, 0xF2, 0x0C, 0xFD, 0x5F, 0xE7, 0xD6, 0x51, 0xFE, 0x9D, 0x5C, 0xB7, 0x0A, 0xE0, 0x00,\n0x13, 0xC1, 0x89, 0x80, 0xB9, 0x01, 0x22, 0x7C, 0x16, 0x58, 0x17, 0x40, 0xEF, 0xA1, 0x13, 0x3C,\n0x32, 0x1A, 0x3A, 0x07, 0x54, 0xFE, 0x49, 0xA8, 0xA8, 0xD9, 0x06, 0xE0, 0x36, 0x03, 0x94, 0x6A,\n0xA5, 0x90, 0xBE, 0xE6, 0x7F, 0xB9, 0x03, 0xC6, 0xF9, 0xB7, 0x59, 0x02, 0xE6, 0x8C, 0x0B, 0x2D,\n0x00, 0xF4, 0x29, 0x6C, 0x80, 0xF3, 0xC1, 0x96, 0x10, 0xF8, 0x5F, 0x81, 0x7F, 0x7E, 0x4B, 0xC8,\n0x1E, 0x16, 0x15, 0x2C, 0xB5, 0x95, 0x32, 0xAA, 0xDB, 0xC1, 0xF6, 0xE7, 0x1A, 0x60, 0x36, 0xF9,\n0x87, 0xAB, 0xA0, 0x49, 0x01, 0x4F, 0x0C, 0x80, 0x3E, 0x8C, 0x7F, 0x20, 0x20, 0x16, 0x44, 0xBB,\n0x09, 0x60, 0x7B, 0x5A, 0x52, 0x40, 0x74, 0x80, 0xE1, 0x7F, 0x49, 0xB3, 0xA6, 0x25, 0xFE, 0x71,\n0x07, 0x04, 0xE3, 0x48, 0xC0, 0x3F, 0x42, 0x40, 0x36, 0x17, 0x7C, 0xE7, 0xFC, 0x2F, 0x3E, 0x01,\n0x7C, 0x53, 0x2C, 0x6E, 0x01, 0x60, 0x39, 0x10, 0x3D, 0xF0, 0x4F, 0x83, 0xCF, 0x4F, 0x6A, 0x07,\n0xCC, 0x7F, 0x60, 0x46, 0xF9, 0x87, 0x0D, 0x20, 0x4A, 0x3D, 0xEB, 0xA7, 0x88, 0xFC, 0xD5, 0x93,\n0x77, 0x4B, 0xC7, 0x3F, 0x0D, 0x07, 0x15, 0xD8, 0x57, 0x32, 0x40, 0x7C, 0xA1, 0x1C, 0xA2, 0x7F,\n0x04, 0x80, 0xC5, 0xDA, 0x03, 0xFF, 0x36, 0x43, 0x40, 0x82, 0x3F, 0xE6, 0x7F, 0x96, 0xC7, 0xFC,\n0x6B, 0x49, 0xC8, 0xFF, 0xFC, 0x82, 0xE8, 0xE5, 0x08, 0xEB, 0xFF, 0x6C, 0x75, 0xA9, 0x79, 0xE0,\n0x68, 0xCB, 0x26, 0x42, 0x02, 0xC9, 0xBB, 0x34, 0x9F, 0x26, 0xFF, 0x5C, 0x37, 0x28, 0xD4, 0xFF,\n0x05, 0x01, 0x17, 0x84, 0x7F, 0xC5, 0xE5, 0x80, 0xEF, 0x83, 0xCB, 0x01, 0x9D, 0xFF, 0xE1, 0x48,\n0xF8, 0xF7, 0xD4, 0xE5, 0x80, 0xD8, 0x00, 0x12, 0x23, 0x20, 0xB4, 0xD4, 0x7F, 0x6E, 0xEA, 0x08,\n0xD8, 0x0E, 0x3D, 0xB7, 0x01, 0xA4, 0x24, 0x81, 0x94, 0x7F, 0x88, 0xE3, 0x9F, 0x69, 0xDF, 0x1C,\n0x4F, 0x30, 0x15, 0xDC, 0xDD, 0x00, 0x35, 0x72, 0xB2, 0x62, 0xA1, 0xC2, 0xC8, 0xFA, 0xBF, 0xF2,\n0xA1, 0x3C, 0x1A, 0xF8, 0x77, 0xDA, 0x00, 0x40, 0x70, 0xCA, 0xC0, 0x05, 0xC2, 0xA1, 0x69, 0x60,\n0x20, 0xC1, 0xDA, 0xE7, 0xDE, 0x00, 0x06, 0xC6, 0xD7, 0xA3, 0x03, 0xEE, 0xF6, 0x95, 0x1E, 0xF8,\n0x47, 0x18, 0x08, 0xDA, 0x51, 0x02, 0x82, 0x76, 0xD4, 0x01, 0x81, 0x3F, 0x46, 0xC0, 0xEA, 0x94,\n0x5A, 0x6A, 0x5B, 0xA3, 0xD0, 0x46, 0x99, 0xD3, 0xA6, 0xB8, 0x6D, 0xDC, 0x0D, 0x86, 0x06, 0x06,\n0x58, 0x9F, 0xE7, 0x72, 0xA8, 0x9B, 0x8A, 0x86, 0xF6, 0xC4, 0x6D, 0x00, 0x21, 0x04, 0xC4, 0x04,\n0x48, 0xB9, 0x2C, 0x12, 0x01, 0x67, 0xB8, 0xBE, 0x91, 0xF7, 0xE5, 0x5E, 0x30, 0x16, 0x00, 0xC2,\n0xFF, 0x70, 0x64, 0x13, 0xC0, 0x7E, 0x31, 0xCC, 0xD5, 0xD3, 0x36, 0x80, 0xF0, 0x99, 0x90, 0x69,\n0x51, 0x02, 0x73, 0x02, 0xAE, 0x9E, 0xE6, 0x7F, 0x28, 0x8C, 0x7F, 0x88, 0xE7, 0x9F, 0x75, 0x01,\n0xF0, 0x23, 0x70, 0x30, 0x4E, 0xE9, 0x6E, 0x80, 0x18, 0x00, 0xC4, 0x8F, 0x69, 0x29, 0x36, 0x66,\n0xFD, 0x68, 0x4B, 0xC8, 0x72, 0x69, 0x17, 0x40, 0xAB, 0xA9, 0xA5, 0xB6, 0x09, 0x7F, 0x7E, 0xF2,\n0x57, 0x2B, 0x42, 0x10, 0xD8, 0x75, 0xFD, 0x5F, 0xB9, 0xF6, 0xC0, 0xBF, 0x4D, 0x10, 0x90, 0xE3,\n0x0F, 0xFC, 0x23, 0x61, 0xFC, 0x43, 0x5E, 0x47, 0xFC, 0x0F, 0x04, 0x84, 0x00, 0x66, 0x7B, 0x40,\n0x30, 0xB0, 0x9C, 0x1E, 0x23, 0x28, 0x60, 0x97, 0xD9, 0x60, 0xBB, 0x04, 0x70, 0xC8, 0x96, 0x42,\n0x64, 0x03, 0x80, 0x24, 0x11, 0xFE, 0x81, 0x80, 0x16, 0xA2, 0x82, 0xC6, 0x89, 0xE2, 0xF8, 0x5F,\n0xA3, 0x6F, 0x11, 0x54, 0x09, 0x01, 0xE1, 0x77, 0xD4, 0x01, 0xB1, 0x00, 0x90, 0xE4, 0x31, 0x00,\n0xEF, 0x1A, 0x00, 0x58, 0x51, 0xBC, 0xCB, 0x0D, 0x10, 0x66, 0xC5, 0x05, 0x80, 0xE5, 0xA9, 0xE0,\n0x6B, 0x12, 0xE7, 0x7F, 0x30, 0xBF, 0xEA, 0xB9, 0x7D, 0x01, 0x04, 0x44, 0x22, 0x04, 0xB4, 0xB3,\n0x74, 0xA9, 0xAD, 0xF6, 0x51, 0xF0, 0x91, 0x34, 0xE6, 0x80, 0x4B, 0x29, 0xB2, 0x00, 0xA6, 0x60,\n0x80, 0x8D, 0xFD, 0x5F, 0xD7, 0x34, 0xDD, 0x00, 0x6B, 0xBF, 0x37, 0xFE, 0xF1, 0x01, 0x40, 0xD4,\n0xFD, 0xCD, 0xF0, 0x0F, 0xF9, 0x3C, 0xFE, 0x45, 0x19, 0xF8, 0x86, 0x86, 0x4E, 0x80, 0x80, 0x80,\n0xBF, 0xC2, 0xFF, 0x48, 0xB6, 0x6C, 0x4B, 0x88, 0x9D, 0x52, 0x52, 0x55, 0x02, 0xF5, 0x34, 0xD2,\n0xFE, 0xC4, 0x9E, 0x3E, 0xAA, 0x8F, 0x3E, 0xC7, 0x00, 0x8D, 0x74, 0x83, 0x54, 0x27, 0x6E, 0x1E,\n0x58, 0x2A, 0x06, 0x00, 0x49, 0x4E, 0xC0, 0x3F, 0x02, 0xC0, 0x9B, 0x15, 0xD9, 0xEE, 0xE5, 0x08,\n0x48, 0xFD, 0x6F, 0xEA, 0xFC, 0x8F, 0x11, 0x10, 0x77, 0xBD, 0xE2, 0x01, 0xFF, 0x48, 0x27, 0x38,\n0xEC, 0x80, 0xDD, 0x17, 0x00, 0xA2, 0xFF, 0x5B, 0x2A, 0x0B, 0xF0, 0x2F, 0x4C, 0xC0, 0x7C, 0xEA,\n0x0B, 0x02, 0xA8, 0xA7, 0x80, 0x8D, 0x03, 0x76, 0x37, 0xC0, 0x6A, 0x90, 0xDA, 0x26, 0x80, 0x6D,\n0xDD, 0x56, 0x7D, 0xD4, 0x66, 0xB4, 0xC4, 0x02, 0xC0, 0x3A, 0x2D, 0xA0, 0xB2, 0xA7, 0xC4, 0x00,\n0xED, 0x09, 0xC2, 0x08, 0xD8, 0x83, 0x00, 0xA2, 0x3E, 0x81, 0x7F, 0x1B, 0x23, 0x20, 0xC5, 0x1F,\n0xF8, 0xC7, 0xE3, 0xFC, 0x8F, 0x3B, 0x20, 0xF1, 0x3F, 0x2C, 0x86, 0x59, 0x8E, 0xB0, 0xF4, 0xAF,\n0xE2, 0xA0, 0x7C, 0x6C, 0x44, 0xB4, 0x71, 0x96, 0xB8, 0x03, 0xE6, 0xF3, 0xBF, 0xFE, 0x62, 0xC0,\n0x8E, 0xA8, 0x39, 0xE7, 0x1F, 0x08, 0x48, 0xFD, 0x0F, 0xE3, 0x80, 0xE7, 0x33, 0x9B, 0xFF, 0x20,\n0x0A, 0xB8, 0xAA, 0x49, 0xE1, 0x30, 0x62, 0x47, 0x1F, 0x8E, 0xAA, 0x33, 0x21, 0x60, 0xB0, 0xFF,\n0xCB, 0xFC, 0x8F, 0x3B, 0xA0, 0x0F, 0xB6, 0x84, 0xC4, 0xE0, 0x57, 0x58, 0x00, 0x58, 0xDA, 0x12,\n0x72, 0x72, 0xCD, 0xE3, 0xC7, 0xFF, 0x06, 0x52, 0x31, 0x0B, 0x66, 0xFE, 0x2F, 0x87, 0x41, 0x57,\n0x03, 0x54, 0xFF, 0xAB, 0xEB, 0x08, 0x07, 0x2D, 0xA3, 0x44, 0x3F, 0xCD, 0x12, 0xFC, 0x2B, 0x1B,\n0x20, 0x3C, 0xAD, 0x30, 0xFE, 0xD7, 0xB8, 0x07, 0x38, 0x92, 0x5E, 0xFD, 0x0F, 0x5B, 0x42, 0x36,\n0x03, 0x40, 0xA4, 0xBB, 0x00, 0x72, 0x05, 0xC4, 0xFA, 0x3F, 0x9E, 0xDF, 0xC0, 0x3F, 0xEA, 0x80,\n0x31, 0xFE, 0xD9, 0xA6, 0xB8, 0x65, 0xBD, 0xF4, 0xC5, 0x76, 0x14, 0xD9, 0xD2, 0x82, 0xA5, 0x34,\n0x36, 0x27, 0x02, 0x02, 0x06, 0x63, 0x7D, 0x5C, 0x9C, 0xF5, 0xB8, 0x04, 0x72, 0x07, 0x9C, 0x90,\n0xFE, 0x2F, 0xB6, 0x84, 0xD8, 0x06, 0x10, 0xE2, 0x80, 0x0B, 0x25, 0x60, 0xBC, 0x17, 0xFC, 0x3D,\n0x54, 0xCF, 0xF9, 0x1F, 0x16, 0xDD, 0x61, 0x01, 0x60, 0xCC, 0x01, 0xC3, 0x59, 0x4B, 0xBD, 0xE7,\n0xC1, 0x96, 0x10, 0x6C, 0x00, 0x29, 0x65, 0x0A, 0xFE, 0x85, 0x37, 0x80, 0xF0, 0xB2, 0xC0, 0x02,\n0xE8, 0xB8, 0x03, 0x4E, 0x9A, 0x77, 0x83, 0xCC, 0x2B, 0x01, 0xC4, 0x5C, 0x70, 0x90, 0x7F, 0xF3,\n0x81, 0x9E, 0x97, 0xA9, 0x63, 0x52, 0x6D, 0xDB, 0xB4, 0x61, 0xEB, 0x65, 0x35, 0x80, 0x63, 0x6B,\n0xB8, 0x96, 0x89, 0x7F, 0x48, 0x19, 0x53, 0xDA, 0x96, 0x52, 0xF8, 0x0D, 0x20, 0x3C, 0x89, 0xA0,\n0x3D, 0xA7, 0x33, 0xFF, 0x22, 0x45, 0x6A, 0x17, 0x02, 0x4A, 0x0D, 0x87, 0xE2, 0x0F, 0xFC, 0x8B,\n0x05, 0xFD, 0x5F, 0x4E, 0x40, 0xF0, 0x2F, 0xD2, 0x0B, 0xAE, 0xCE, 0x9C, 0x77, 0xF5, 0x60, 0x0A,\n0xB6, 0x83, 0xD4, 0x12, 0x88, 0x2D, 0x21, 0xD1, 0xFC, 0x20, 0xA7, 0xB4, 0x9D, 0xF3, 0x56, 0xFD,\n0x86, 0x28, 0x73, 0x04, 0x4C, 0x00, 0x73, 0x07, 0x5C, 0xDD, 0x84, 0xCA, 0x91, 0xAE, 0x7F, 0x76,\n0x45, 0xAA, 0x2F, 0x7A, 0x07, 0xD4, 0x29, 0xF5, 0x3F, 0xC7, 0x3F, 0x36, 0x13, 0xD2, 0x05, 0x80,\n0xEB, 0xE8, 0xB7, 0xFD, 0xCB, 0x56, 0x00, 0x96, 0x1C, 0x70, 0xFA, 0x60, 0x4B, 0xC8, 0xFB, 0xA3,\n0x50, 0x11, 0x02, 0xEA, 0xB8, 0x41, 0x20, 0xAB, 0xBA, 0x03, 0x7C, 0x12, 0x28, 0x6E, 0x03, 0x70,\n0x56, 0xB3, 0x15, 0xA1, 0x93, 0xC1, 0x0F, 0xC1, 0xA2, 0x11, 0xB6, 0x0D, 0x1F, 0x16, 0xFB, 0x18,\n0xC7, 0xEA, 0x4C, 0x4E, 0x13, 0xC0, 0x08, 0xC1, 0x55, 0x05, 0x43, 0x57, 0xF3, 0xA2, 0x4D, 0xFF,\n0xD1, 0x29, 0x5E, 0x78, 0x5E, 0x6F, 0x0A, 0xB8, 0xFB, 0x0C, 0xE9, 0xFD, 0x06, 0x58, 0xF0, 0xBF,\n0x58, 0xE0, 0x7F, 0x94, 0x80, 0xE0, 0x1F, 0x27, 0xE0, 0x10, 0x63, 0xC8, 0x89, 0x81, 0xF5, 0xC3,\n0x16, 0x43, 0x8F, 0xAA, 0xCE, 0x85, 0xFD, 0x9E, 0xA4, 0x60, 0xD2, 0x89, 0x4E, 0x8B, 0x56, 0xEE,\n0x7F, 0xD8, 0x14, 0x27, 0x1D, 0xB1, 0x40, 0xB9, 0x91, 0xD7, 0x09, 0x01, 0x83, 0xF9, 0x9E, 0xCF,\n0xFF, 0xEA, 0x47, 0xDA, 0x02, 0x54, 0x34, 0x57, 0x97, 0xC2, 0xB6, 0x4B, 0x57, 0x5D, 0xE4, 0x93,\n0xEB, 0xB3, 0xFB, 0x60, 0x80, 0x62, 0x07, 0x69, 0xB7, 0x25, 0xE4, 0x28, 0x98, 0xF7, 0x0A, 0xC0,\n0x48, 0x91, 0xF7, 0x95, 0xF9, 0x9F, 0xDF, 0x16, 0xEC, 0xE6, 0x80, 0xED, 0x29, 0xA6, 0x46, 0xC6,\n0x83, 0x0E, 0x49, 0xB3, 0xBF, 0x34, 0x8A, 0x40, 0xF5, 0x3F, 0x44, 0x30, 0xD3, 0x94, 0x17, 0xFA,\n0x68, 0x2B, 0x39, 0xF2, 0xE4, 0x13, 0xEE, 0x4F, 0x95, 0xBE, 0x6F, 0x3C, 0xBB, 0xBB, 0xFB, 0xB1,\n0xD2, 0x8D, 0x56, 0xC1, 0xD2, 0x09, 0x6A, 0xC1, 0xA2, 0x4D, 0x3C, 0x6F, 0xA2, 0xF9, 0xE6, 0x4B,\n0xF3, 0x3F, 0x96, 0xDF, 0x5E, 0xBE, 0x1A, 0x45, 0x01, 0x78, 0x3A, 0x1C, 0x0C, 0xEB, 0x0C, 0xA4,\n0xDA, 0x33, 0x6B, 0x90, 0x3D, 0x01, 0xE0, 0xC1, 0xC1, 0x3C, 0x58, 0xC7, 0x03, 0x01, 0xDC, 0x80,\n0x56, 0x29, 0xBF, 0x5F, 0x07, 0x33, 0xBE, 0x7E, 0xBB, 0x5A, 0xAD, 0xDE, 0xBE, 0xA5, 0x55, 0x5E,\n0x34, 0x3B, 0x3F, 0x3E, 0x0A, 0x95, 0xD9, 0xF1, 0xF9, 0x43, 0xD0, 0xE1, 0xE8, 0x3E, 0xAB, 0x2B,\n0xA5, 0xD7, 0x57, 0xEB, 0x50, 0xEE, 0xD7, 0x97, 0x3F, 0x5D, 0x5E, 0x5E, 0x7E, 0x90, 0x07, 0x5A,\n0x97, 0xFA, 0xF3, 0x57, 0xF7, 0xEB, 0x60, 0xEE, 0xEF, 0x9C, 0xF4, 0xE1, 0xE3, 0xFC, 0x33, 0xE7,\n0x47, 0xC7, 0xB1, 0x72, 0x7E, 0x9C, 0xDE, 0xB4, 0x55, 0xA4, 0xBE, 0xBD, 0x8E, 0xE6, 0x76, 0x3C,\n0x9F, 0x4B, 0xE5, 0x91, 0xD3, 0xA4, 0xC3, 0x69, 0x35, 0xB0, 0xC5, 0x7F, 0x3A, 0xE1, 0x5B, 0xAE,\n0x43, 0xC9, 0xE9, 0xC3, 0x73, 0x5C, 0x00, 0xF8, 0xAD, 0x2F, 0x25, 0x62, 0x81, 0x6D, 0xAA, 0x86,\n0x28, 0xF6, 0xB5, 0xD4, 0x22, 0x9E, 0x9B, 0x9A, 0x6F, 0xA5, 0xC6, 0xCA, 0xEE, 0xB7, 0x52, 0x79,\n0xF4, 0x55, 0xFD, 0x53, 0xAD, 0xA3, 0xD5, 0x45, 0x19, 0xD8, 0x25, 0x61, 0xFE, 0xBD, 0x41, 0x0F,\n0x38, 0x62, 0x80, 0xA7, 0x51, 0x03, 0x04, 0xEA, 0x48, 0x76, 0xB6, 0xBF, 0xFE, 0xFA, 0xE0, 0xE0,\n0x6B, 0x5E, 0xF4, 0x8C, 0x1E, 0x04, 0xCB, 0x7C, 0xFC, 0xFB, 0xDF, 0xD7, 0xA1, 0xF2, 0xF7, 0xED,\n0xED, 0xDB, 0xB7, 0x0B, 0x29, 0xA4, 0x4A, 0x66, 0xB3, 0xD9, 0x71, 0x38, 0xE7, 0x82, 0x95, 0x48,\n0xB9, 0x3B, 0x53, 0x00, 0x5E, 0xF1, 0x1C, 0xCA, 0xE3, 0xF2, 0xF2, 0xA7, 0x50, 0x84, 0x93, 0xF2,\n0xEA, 0xF5, 0x55, 0x24, 0x87, 0x67, 0x67, 0x42, 0x61, 0xA9, 0xBC, 0x9C, 0x4F, 0x8F, 0xA3, 0x99,\n0xCD, 0xDE, 0x46, 0x73, 0x7B, 0xFB, 0xF7, 0xDF, 0xD7, 0xB1, 0xA2, 0x68, 0x1B, 0xF0, 0xCC, 0xA5,\n0x1E, 0x84, 0xA2, 0x27, 0xDE, 0xF6, 0x0E, 0x7E, 0x30, 0xB3, 0x9C, 0x0A, 0xF6, 0x40, 0xC0, 0x82,\n0x92, 0x19, 0xB0, 0x4A, 0x5F, 0xFD, 0xF8, 0xD5, 0x47, 0xF9, 0x3A, 0x1E, 0x21, 0x03, 0x04, 0x01,\n0x79, 0xF4, 0x65, 0xBB, 0xDF, 0x4A, 0x09, 0x44, 0x01, 0xA8, 0x0D, 0x2F, 0xCF, 0x88, 0xC0, 0xFE,\n0x23, 0x60, 0x0B, 0xE6, 0x4B, 0x10, 0x90, 0xCE, 0x82, 0x08, 0x01, 0x47, 0xAF, 0x4E, 0x59, 0xD1,\n0xA5, 0x80, 0x5B, 0xA3, 0xAD, 0x61, 0x2C, 0xDB, 0x3B, 0x3B, 0xDB, 0x07, 0xE1, 0xE8, 0x15, 0xC0,\n0x93, 0x7A, 0xC1, 0xC1, 0x8B, 0xEA, 0x76, 0x21, 0x04, 0x54, 0x5D, 0x59, 0xB4, 0xD5, 0xF4, 0x8A,\n0x99, 0x24, 0x8A, 0xBF, 0xE3, 0xF3, 0x73, 0x4E, 0x94, 0xE4, 0x7F, 0x92, 0xF5, 0xA1, 0x3A, 0xE0,\n0x21, 0x79, 0xAC, 0xAF, 0x84, 0x6A, 0x42, 0x40, 0xD1, 0xBB, 0x47, 0xE5, 0xA7, 0xCB, 0xC7, 0xE5,\n0x52, 0x5F, 0xAB, 0x7F, 0x8A, 0x3C, 0x84, 0xBD, 0x67, 0x92, 0x20, 0xAC, 0xF5, 0x5F, 0x15, 0xE5,\n0x9F, 0x12, 0x70, 0x15, 0x29, 0xB7, 0x17, 0x42, 0xC0, 0xEB, 0x48, 0xF9, 0x7D, 0x3C, 0x57, 0xBD,\n0x0F, 0xE5, 0x20, 0x4C, 0x40, 0x39, 0x01, 0x95, 0x80, 0xE5, 0x80, 0x8D, 0x3A, 0x0F, 0xAC, 0xE6,\n0x97, 0x4A, 0xC1, 0x00, 0x4B, 0x79, 0x48, 0xBB, 0xAF, 0xF6, 0xBF, 0x12, 0x0A, 0x56, 0xDD, 0x5F,\n0xFD, 0x4C, 0xF5, 0x45, 0x39, 0x12, 0x03, 0xD4, 0x04, 0x15, 0xD0, 0x10, 0x18, 0x45, 0xDB, 0x26,\n0x2D, 0xF0, 0x59, 0x04, 0x30, 0x3E, 0x09, 0xC2, 0x09, 0x88, 0x5B, 0xA3, 0xBE, 0xFE, 0xF5, 0x0F,\n0xCA, 0xBF, 0xFA, 0x96, 0x08, 0xA7, 0xCB, 0xD0, 0x8F, 0xD5, 0x1D, 0x39, 0xFF, 0x06, 0x41, 0x02,\n0xCE, 0xA3, 0x0E, 0x58, 0x8D, 0x14, 0x86, 0x2E, 0x2A, 0xE5, 0xDF, 0x85, 0x12, 0xB0, 0x55, 0xFF,\n0x56, 0xDA, 0xCC, 0x52, 0x42, 0xF8, 0x3B, 0x3F, 0x17, 0x04, 0xC6, 0xA8, 0x72, 0xA6, 0x51, 0x07,\n0x3C, 0x64, 0x0F, 0x61, 0x9A, 0x44, 0xE8, 0xE6, 0x7D, 0xCF, 0xFB, 0x9F, 0x96, 0xD0, 0x77, 0x3D,\n0xD3, 0xBF, 0x41, 0x8C, 0x7F, 0xC7, 0x61, 0x00, 0xCE, 0x52, 0x6C, 0xF4, 0xA0, 0xF5, 0x21, 0xEF,\n0xBF, 0xFC, 0x1F, 0xC4, 0xFC, 0x6F, 0x2C, 0x25, 0x49, 0x20, 0x2D, 0x07, 0x61, 0x00, 0xCA, 0x42,\n0xD4, 0x1D, 0x75, 0x40, 0x9E, 0x41, 0x5A, 0xDC, 0x05, 0x02, 0xC2, 0x00, 0x7D, 0xDA, 0x14, 0x30,\n0x2D, 0x7A, 0x56, 0x08, 0x7E, 0x94, 0x9A, 0xD8, 0xF6, 0xF1, 0x81, 0x01, 0x2A, 0x0A, 0xB5, 0x94,\n0xDD, 0x8E, 0x06, 0xBD, 0xE0, 0x3E, 0x8B, 0xC0, 0xEF, 0x3F, 0xE3, 0x80, 0x6F, 0x52, 0x09, 0xF2,\n0x4F, 0x09, 0xF8, 0xF2, 0x35, 0xE7, 0x9F, 0xEE, 0x86, 0xFB, 0x55, 0x09, 0x48, 0x01, 0x98, 0x6E,\n0x0B, 0x38, 0x3A, 0x5D, 0x2A, 0xFE, 0x38, 0xFF, 0x34, 0x9C, 0x80, 0x18, 0xD1, 0x19, 0x84, 0x04,\n0x50, 0x0B, 0x57, 0x0A, 0xE5, 0x5F, 0x8A, 0x5E, 0xA8, 0x95, 0xEC, 0x55, 0x56, 0x92, 0xB5, 0xDA,\n0x43, 0x5E, 0xAD, 0x66, 0x75, 0x42, 0x00, 0x9C, 0x56, 0x04, 0xE4, 0x02, 0x78, 0x7F, 0x96, 0xA2,\n0x0A, 0x28, 0xB5, 0xED, 0x21, 0x44, 0xD3, 0xF2, 0x41, 0xF8, 0xE6, 0x4A, 0x1A, 0x1A, 0xB4, 0x9A,\n0xFA, 0xBF, 0x5A, 0x45, 0x01, 0xDB, 0xBF, 0xA3, 0x14, 0xE5, 0x9F, 0xE6, 0xEE, 0x2E, 0xC4, 0xBF,\n0x69, 0x8C, 0x80, 0xB3, 0x4F, 0x04, 0x6C, 0xA7, 0xDF, 0x4A, 0xF9, 0xA7, 0x0A, 0x18, 0x71, 0x40,\n0x9B, 0xE4, 0x62, 0x31, 0xFE, 0xCD, 0xA3, 0xFE, 0xA7, 0xE1, 0xFA, 0xF7, 0x8B, 0xF2, 0x2F, 0x27,\n0xE0, 0x8B, 0x0E, 0xFE, 0x27, 0x8F, 0xCA, 0xF2, 0x3E, 0xEE, 0xBF, 0x10, 0xEE, 0x09, 0xE8, 0xD2,\n0xF8, 0x5F, 0xED, 0x80, 0xB5, 0x06, 0xB6, 0x28, 0xA0, 0xE7, 0x1B, 0x2F, 0xFF, 0x2B, 0x07, 0xEC,\n0x1B, 0x80, 0xE0, 0x9F, 0x12, 0x30, 0xB8, 0x0E, 0x5A, 0x1D, 0x90, 0x19, 0xA0, 0xDD, 0x12, 0xEB,\n0x74, 0x4B, 0x4E, 0x1A, 0xCE, 0xBF, 0x2A, 0x07, 0x5F, 0x07, 0xF9, 0x77, 0x40, 0x0D, 0xC0, 0xF0,\n0x17, 0xEA, 0x05, 0xCB, 0xF5, 0x97, 0x2E, 0x41, 0xBD, 0x16, 0x6F, 0x05, 0x76, 0x49, 0x04, 0x7D,\n0xBB, 0x52, 0xFF, 0xB3, 0x04, 0xF9, 0x37, 0xE5, 0x04, 0x54, 0xFF, 0x4B, 0x49, 0x13, 0x21, 0x87,\n0xAA, 0x64, 0xA9, 0xFA, 0xE3, 0x7D, 0xD5, 0xFF, 0x4D, 0xCD, 0xA5, 0xF3, 0xBF, 0xEC, 0x53, 0xE0,\n0x9F, 0x34, 0x6B, 0x7C, 0x27, 0x7F, 0x54, 0xFF, 0xB3, 0xB0, 0x41, 0x40, 0xE3, 0x5F, 0xC4, 0x01,\n0xF1, 0x56, 0xD5, 0xEF, 0x5D, 0xE1, 0xA1, 0x51, 0xFC, 0xA5, 0xFF, 0x83, 0x98, 0xFF, 0x69, 0xE1,\n0x1D, 0x00, 0x00, 0x90, 0xF3, 0x6F, 0xB0, 0xA3, 0xE1, 0x0E, 0x38, 0xB0, 0xFB, 0x21, 0xE8, 0x4E,\n0x60, 0x18, 0x60, 0x07, 0x07, 0x7C, 0x61, 0xAD, 0x76, 0x80, 0xD5, 0x01, 0x05, 0x85, 0x09, 0x7E,\n0x1F, 0xB5, 0x26, 0x3A, 0x7A, 0xE0, 0x75, 0x4F, 0xBC, 0x13, 0xDC, 0x15, 0x90, 0xFF, 0x15, 0x07,\n0x7C, 0x83, 0x42, 0x22, 0xE8, 0x8B, 0x12, 0xF0, 0x8B, 0x3A, 0x02, 0xC2, 0xD3, 0x56, 0x07, 0x4C,\n0xAB, 0xA0, 0x8D, 0x80, 0x03, 0xCA, 0x3F, 0x4B, 0xD4, 0xFF, 0xE8, 0x30, 0xA0, 0x76, 0x80, 0xAD,\n0x30, 0x07, 0xD4, 0x2B, 0xEF, 0xA2, 0x42, 0xA0, 0x5D, 0x94, 0x8B, 0x55, 0xAD, 0x82, 0x78, 0xAE,\n0x0F, 0xF0, 0x8F, 0x13, 0xB0, 0xA6, 0x1F, 0x1C, 0x90, 0xF1, 0xAF, 0xEE, 0x05, 0xAB, 0x93, 0xA5,\n0xD2, 0x70, 0x34, 0xFF, 0x4B, 0xB5, 0x9E, 0x0B, 0xB6, 0x5A, 0x53, 0x10, 0x36, 0x68, 0xAF, 0x4B,\n0x0E, 0x58, 0xFE, 0x8E, 0xC9, 0xFF, 0x40, 0x40, 0x02, 0x40, 0xF9, 0xE7, 0x18, 0x02, 0x43, 0x00,\n0x84, 0x03, 0xB6, 0x3D, 0x6E, 0x35, 0x8B, 0xC8, 0x30, 0xE0, 0x78, 0x8E, 0x42, 0xFC, 0x6F, 0x8E,\n0x93, 0x25, 0x2A, 0x80, 0x6C, 0x1C, 0xF0, 0x97, 0xEC, 0x7E, 0x30, 0xAF, 0x0A, 0x06, 0x58, 0x0E,\n0x80, 0x26, 0xC2, 0x27, 0xE6, 0x27, 0x25, 0xB1, 0x2F, 0xF5, 0x7F, 0x15, 0x7D, 0x55, 0x93, 0xC5,\n0xD1, 0xF0, 0x19, 0x15, 0xF0, 0x5F, 0x30, 0x17, 0xDC, 0x5A, 0xFA, 0xE7, 0x1F, 0x04, 0x10, 0xBD,\n0xE0, 0xD8, 0xDD, 0x60, 0x5E, 0xBF, 0x3A, 0x6D, 0xC3, 0xDF, 0x68, 0x4B, 0xC3, 0x1C, 0xD0, 0xF8,\n0x87, 0x50, 0x00, 0x46, 0x1C, 0x10, 0xF8, 0x0B, 0x39, 0x60, 0xD5, 0xFF, 0xAA, 0x2C, 0xF0, 0x6D,\n0x92, 0x40, 0xA9, 0xAA, 0x7D, 0xAB, 0xAA, 0x49, 0x1F, 0x68, 0xAB, 0xFC, 0x43, 0x98, 0xFF, 0x25,\n0x4C, 0xA0, 0x17, 0x4C, 0xF8, 0x67, 0x0E, 0x78, 0xF5, 0xE1, 0xB0, 0xE2, 0x55, 0x3A, 0xA4, 0x87,\n0x1D, 0x94, 0x7F, 0x4A, 0xB4, 0x54, 0xE4, 0xF8, 0xC8, 0x00, 0x15, 0x7B, 0xC8, 0x27, 0x53, 0x4C,\n0x45, 0xBF, 0x49, 0xE3, 0x77, 0x3C, 0x84, 0xFF, 0xC1, 0x01, 0xCB, 0xFE, 0x07, 0xAA, 0x33, 0x07,\n0x3C, 0x9A, 0x3D, 0x0C, 0xE7, 0xDF, 0x42, 0x9B, 0xE4, 0x80, 0xBF, 0x13, 0xFE, 0xA1, 0x30, 0xFF,\n0xB3, 0xCA, 0xB2, 0x83, 0x88, 0x03, 0x72, 0xFF, 0x83, 0x03, 0xD6, 0x00, 0x44, 0xB8, 0x03, 0x26,\n0xDF, 0x4B, 0xD1, 0x2E, 0x70, 0x22, 0xA0, 0x75, 0x7F, 0xE5, 0x20, 0xD5, 0xF7, 0x79, 0xBB, 0xE7,\n0xF3, 0x10, 0x48, 0xE6, 0x82, 0x1B, 0x11, 0xF8, 0x2F, 0x55, 0xC0, 0x37, 0x59, 0xA1, 0xFC, 0x43,\n0x27, 0x58, 0x08, 0x48, 0x3A, 0xC0, 0x9C, 0x80, 0xFE, 0x17, 0xA4, 0x0F, 0xCB, 0xA7, 0xD5, 0xDE,\n0x40, 0xF9, 0x87, 0x10, 0xFE, 0x45, 0x1D, 0x70, 0x9C, 0x95, 0xB6, 0x6B, 0xCA, 0xAE, 0x3E, 0x6D,\n0xD4, 0x01, 0x55, 0x57, 0x6C, 0xD8, 0x7E, 0x91, 0x9A, 0x4F, 0x1A, 0x28, 0xD0, 0x0B, 0x10, 0x10,\n0xFD, 0x5F, 0x3C, 0x04, 0x1E, 0x8C, 0x7F, 0x70, 0x40, 0x2D, 0x87, 0xEE, 0x20, 0x2B, 0xF5, 0x94,\n0x7F, 0x28, 0x42, 0xC0, 0x4C, 0xF9, 0xB4, 0xC5, 0x00, 0xA0, 0x12, 0x12, 0x0C, 0x54, 0xAD, 0xF4,\n0xDF, 0x31, 0x3D, 0xBB, 0xBA, 0xC7, 0xDF, 0x80, 0x39, 0xE0, 0xB4, 0xA6, 0xDF, 0x94, 0x8F, 0x03,\n0xCE, 0x10, 0x46, 0xC0, 0xFA, 0xBD, 0x5F, 0x48, 0x91, 0x7A, 0x5D, 0x5E, 0xB9, 0x64, 0xE3, 0x7F,\n0xDC, 0x01, 0x07, 0xE0, 0x1F, 0x47, 0xA0, 0xF4, 0x7F, 0xA5, 0x1A, 0x00, 0x07, 0x01, 0xFF, 0xC3,\n0xFD, 0x00, 0xBD, 0x01, 0x46, 0xA3, 0xCC, 0xB3, 0xB9, 0x0E, 0xA9, 0xD6, 0x11, 0xF6, 0xAF, 0xB3,\n0x42, 0x28, 0xD7, 0x9B, 0x04, 0xFE, 0x7B, 0x1D, 0xF0, 0x1F, 0xF2, 0xCE, 0xA7, 0xB7, 0x91, 0x22,\n0x88, 0xE2, 0xFC, 0x8B, 0x04, 0xAC, 0x76, 0x23, 0x4B, 0x1B, 0x45, 0x5A, 0x90, 0x72, 0xCA, 0x8D,\n0x48, 0x5C, 0x10, 0x49, 0x56, 0x39, 0x44, 0x08, 0x45, 0x46, 0xB2, 0x56, 0x0A, 0x39, 0xAC, 0xE5,\n0x43, 0x24, 0x1F, 0x72, 0x80, 0x53, 0x84, 0x44, 0x38, 0x83, 0x94, 0x43, 0x2E, 0x1C, 0xCD, 0x85,\n0x13, 0xDA, 0x83, 0xBF, 0x40, 0x3E, 0x1F, 0x55, 0xD5, 0x5D, 0x79, 0x69, 0xF7, 0xF4, 0xBC, 0x32,\n0x4C, 0x60, 0x03, 0xAF, 0x6A, 0x7A, 0xC6, 0x8E, 0x63, 0x58, 0x7B, 0xFC, 0xCB, 0xEB, 0xAE, 0xEE,\n0xF1, 0xD0, 0x04, 0x04, 0xFF, 0x40, 0x40, 0xBD, 0x22, 0x34, 0xBB, 0x14, 0x0C, 0x86, 0x01, 0x19,\n0xFF, 0x40, 0xC0, 0x63, 0x62, 0x00, 0xA1, 0x20, 0xFF, 0x44, 0x7D, 0x03, 0x80, 0x45, 0xC8, 0x78,\n0x60, 0x7F, 0x07, 0x58, 0x36, 0x77, 0x81, 0x36, 0xDA, 0xA7, 0x26, 0x70, 0x6A, 0xF8, 0x33, 0x07,\n0x98, 0x2D, 0xE1, 0x78, 0x55, 0x41, 0xFE, 0x69, 0x90, 0xFA, 0x2F, 0xF4, 0xE3, 0xE2, 0x07, 0xF3,\n0x65, 0x30, 0x6C, 0x09, 0x55, 0xE6, 0xFF, 0xBC, 0x5B, 0x9B, 0x77, 0x30, 0x7D, 0x99, 0x84, 0x0D,\n0xFF, 0xA7, 0xBF, 0xE8, 0x4F, 0x87, 0x67, 0xCC, 0x77, 0x9C, 0x42, 0x8C, 0x80, 0xA0, 0x1F, 0x1D,\n0x07, 0x1C, 0xAF, 0x6A, 0xDA, 0x1E, 0xFF, 0x33, 0xD9, 0x1B, 0x60, 0x7B, 0x32, 0x00, 0x18, 0xF4,\n0x80, 0xC5, 0xD9, 0x42, 0xFD, 0xDF, 0x08, 0x16, 0xB0, 0xAF, 0x17, 0xDC, 0x75, 0x45, 0x7C, 0xEE,\n0x00, 0x2D, 0x6A, 0x19, 0xF7, 0x74, 0x33, 0xF4, 0xA5, 0xB0, 0xC3, 0x32, 0x02, 0xE2, 0x68, 0x1C,\n0xA8, 0xFE, 0xFB, 0x78, 0x3C, 0xE0, 0x8B, 0x30, 0x01, 0x0D, 0x7F, 0xF7, 0x11, 0x18, 0xFD, 0x4E,\n0x10, 0x9D, 0x0E, 0xD8, 0x3D, 0x0E, 0x58, 0xF3, 0x6F, 0x67, 0x16, 0xE4, 0x1F, 0x99, 0x0C, 0x33,\n0x09, 0x7A, 0xC0, 0x2F, 0xAB, 0xE8, 0xE1, 0xDF, 0xC5, 0xB5, 0x6D, 0x53, 0x3F, 0xF0, 0x0F, 0xA6,\n0x41, 0x2F, 0x39, 0x40, 0x91, 0xFA, 0xBF, 0x38, 0x01, 0x41, 0x3F, 0x3F, 0xE2, 0xFC, 0x03, 0x01,\n0xCD, 0xA0, 0xA5, 0x8A, 0x70, 0x3E, 0x96, 0xBD, 0x80, 0x11, 0x1D, 0x60, 0xE7, 0x9A, 0x81, 0xCF,\n0x24, 0x07, 0x08, 0xF8, 0x3F, 0xEC, 0x16, 0x37, 0xE9, 0xA9, 0xB0, 0x83, 0xFF, 0x2B, 0xD5, 0x72,\n0xAB, 0x67, 0xF8, 0x17, 0x31, 0x02, 0x8E, 0x6B, 0xED, 0x4D, 0xEB, 0xEA, 0xAF, 0xC6, 0xDD, 0xF0,\n0x9F, 0x6F, 0x4D, 0x0F, 0x78, 0x55, 0xBF, 0xB1, 0x0D, 0x81, 0x7F, 0xC8, 0x3E, 0xFE, 0x19, 0x02,\n0x5B, 0x1E, 0x10, 0x37, 0xBB, 0xBE, 0x13, 0xE4, 0x2F, 0x3B, 0x40, 0xAD, 0xFF, 0xBA, 0x05, 0x74,\n0x08, 0xEA, 0xD6, 0xEF, 0x00, 0xDF, 0xAA, 0x61, 0xC0, 0x7F, 0xB2, 0x14, 0xFC, 0x50, 0x00, 0x34,\n0xE6, 0x59, 0xC0, 0x03, 0x52, 0xFF, 0x47, 0x4A, 0xC1, 0x15, 0xFF, 0xD2, 0x74, 0xC0, 0x63, 0xC2,\n0x3F, 0xD7, 0x06, 0xC3, 0x1F, 0x92, 0x15, 0x80, 0x11, 0x93, 0xAB, 0xC6, 0x04, 0x68, 0xEB, 0x77,\n0xD9, 0x07, 0x4F, 0x1B, 0xD3, 0xA5, 0x51, 0x4F, 0x6D, 0x5F, 0x3E, 0x90, 0x46, 0xDC, 0xE0, 0xB8,\n0x43, 0x6C, 0xFC, 0x0F, 0xC4, 0x68, 0x74, 0x82, 0x4F, 0xBB, 0x24, 0x1E, 0x50, 0x23, 0x81, 0x2F,\n0x1F, 0x1F, 0x80, 0x67, 0x39, 0x34, 0x8D, 0x80, 0x95, 0x00, 0x4A, 0xFC, 0x8A, 0x79, 0xC0, 0x4C,\n0x54, 0xF4, 0x85, 0x31, 0x00, 0xC8, 0x3D, 0x20, 0xFE, 0x45, 0x60, 0x20, 0xE1, 0x1F, 0xE9, 0x05,\n0x1B, 0xFF, 0xCC, 0x78, 0xA3, 0xD1, 0xBC, 0x22, 0xFC, 0xA3, 0x16, 0xB0, 0xE3, 0x4C, 0xE9, 0x9B,\n0x00, 0x68, 0x22, 0x1E, 0x10, 0xFC, 0xAB, 0x08, 0xC8, 0x5C, 0x5A, 0x8B, 0x5F, 0xE6, 0xFE, 0x3C,\n0x35, 0xDE, 0x01, 0x05, 0x11, 0x03, 0xF8, 0xBF, 0x21, 0x86, 0x01, 0x01, 0xBD, 0x47, 0x50, 0x0A,\n0x7E, 0xD1, 0x11, 0xBD, 0xFD, 0xDF, 0x12, 0x81, 0xD4, 0xFF, 0xA1, 0x16, 0xDC, 0x9A, 0x00, 0x53,\n0x69, 0x07, 0xB5, 0x60, 0xC2, 0x3F, 0x78, 0x40, 0x0A, 0x40, 0x25, 0x20, 0x33, 0x80, 0x1E, 0xDD,\n0x1E, 0x30, 0xF5, 0xBC, 0xDC, 0x01, 0x3A, 0x0A, 0xD3, 0xF0, 0x9F, 0x6C, 0xDA, 0xBA, 0x03, 0x1C,\n0x77, 0xAA, 0xA7, 0x03, 0xEC, 0xE1, 0xC7, 0x5D, 0x04, 0xFC, 0xB1, 0x93, 0x3F, 0x28, 0x55, 0xD8,\n0x41, 0x42, 0x97, 0xBB, 0xBE, 0xDA, 0x03, 0xA6, 0xB8, 0x53, 0x31, 0x01, 0xC6, 0x0F, 0x34, 0xF1,\n0xAC, 0xD2, 0xA4, 0x1B, 0x0B, 0x2D, 0x00, 0xD7, 0x6A, 0x2C, 0x00, 0x91, 0x08, 0xF5, 0x82, 0xC7,\n0xDD, 0xAA, 0xE6, 0xC2, 0xC8, 0xAB, 0x7B, 0xE1, 0xFD, 0x5F, 0xBC, 0x01, 0xAD, 0xC9, 0x30, 0x8D,\n0xF7, 0xB5, 0x31, 0x00, 0x18, 0x24, 0xE0, 0x86, 0xDB, 0xBF, 0xA2, 0x17, 0x5C, 0xDA, 0x3F, 0xF0,\n0xAF, 0x96, 0x10, 0xB0, 0x70, 0x80, 0x10, 0x77, 0x80, 0x56, 0x03, 0xF6, 0xD2, 0x87, 0x36, 0xEE,\n0x04, 0x0B, 0x11, 0x10, 0xC6, 0x3D, 0xE0, 0xE3, 0x19, 0x07, 0xA4, 0x0E, 0x30, 0x8E, 0x3F, 0x44,\n0x8B, 0x7F, 0x20, 0x20, 0x3C, 0x20, 0xF1, 0x7F, 0xC4, 0x03, 0xE2, 0x7B, 0x13, 0x4A, 0x0F, 0x78,\n0xDC, 0xC1, 0xBF, 0x6E, 0x6D, 0x3C, 0x61, 0xF8, 0x03, 0x01, 0x49, 0x01, 0x18, 0x31, 0x69, 0x16,\n0x40, 0xE0, 0x02, 0xD3, 0xFE, 0x3A, 0x7F, 0x52, 0xA7, 0x79, 0x02, 0xB4, 0x19, 0xC0, 0x71, 0x43,\n0xDD, 0xFE, 0x0F, 0x1E, 0x09, 0xC7, 0x35, 0x01, 0x61, 0x00, 0xBB, 0x0A, 0x21, 0x4E, 0x3F, 0xE3,\n0x5F, 0x39, 0xA6, 0x77, 0xDF, 0xD9, 0x65, 0xD3, 0x57, 0xFB, 0xBF, 0x12, 0x96, 0x89, 0x80, 0x3E,\n0x08, 0xE8, 0x0B, 0x40, 0x5A, 0xFF, 0x03, 0x1D, 0xA5, 0x60, 0x70, 0xAF, 0x6C, 0x39, 0xFF, 0x30,\n0x19, 0xA6, 0x76, 0x80, 0x18, 0x7E, 0x75, 0x12, 0x5A, 0x76, 0x00, 0xB0, 0xF1, 0xBE, 0xB2, 0x02,\n0x30, 0xB2, 0xC7, 0xFF, 0xE5, 0x79, 0x80, 0x20, 0x60, 0x63, 0x01, 0x08, 0x04, 0x0F, 0xA8, 0x00,\n0x84, 0xE2, 0x1E, 0xF0, 0x6E, 0xDE, 0xB3, 0x07, 0x60, 0x57, 0x78, 0x40, 0xA2, 0x38, 0x12, 0xFF,\n0xEE, 0x00, 0xE0, 0x23, 0xF1, 0x80, 0x2F, 0x9A, 0xD1, 0xEA, 0xFF, 0x22, 0xE0, 0x01, 0x9F, 0x56,\n0x0B, 0x40, 0xA0, 0x72, 0x1C, 0xF0, 0xD5, 0xCE, 0x6A, 0x01, 0x04, 0x67, 0x4A, 0x49, 0x40, 0xEE,\n0xFF, 0xE0, 0x01, 0xDB, 0xF8, 0xE3, 0x1E, 0xF0, 0x4B, 0x4A, 0x40, 0xF8, 0x3F, 0xE0, 0x0F, 0x95,\n0xE0, 0x4C, 0xC0, 0x29, 0x1C, 0xA0, 0xFA, 0xBF, 0xA6, 0x9A, 0x1D, 0x60, 0x0F, 0x00, 0xE3, 0x47,\n0xC2, 0x3F, 0xC8, 0xCB, 0x1F, 0xA9, 0xD5, 0xE8, 0xC2, 0x1F, 0xA6, 0x03, 0xC2, 0x08, 0xCA, 0x01,\n0x1E, 0x8B, 0xC7, 0x65, 0x02, 0xC2, 0x02, 0x96, 0x13, 0x00, 0xB9, 0x07, 0xBC, 0xF7, 0x6F, 0x61,\n0xA5, 0xE0, 0x71, 0x0F, 0x01, 0xE1, 0x02, 0xAD, 0xB6, 0x8E, 0xE1, 0x57, 0x69, 0xEF, 0xBF, 0x11,\n0xAD, 0x05, 0x20, 0x75, 0xB4, 0x16, 0x80, 0xD4, 0xD9, 0xF2, 0x7F, 0x4A, 0xBF, 0x0D, 0x6D, 0x41,\n0xC0, 0x11, 0xEC, 0x1F, 0x16, 0x80, 0xB4, 0x08, 0x08, 0x07, 0x08, 0x45, 0x88, 0xF8, 0x51, 0xB2,\n0x7D, 0x08, 0x90, 0x8F, 0xF6, 0x9F, 0xFF, 0xDB, 0x2B, 0x42, 0x88, 0xFF, 0x1B, 0x8A, 0x80, 0x99,\n0x76, 0x1E, 0x3D, 0xD3, 0x01, 0xC1, 0xBF, 0xDA, 0x03, 0xBE, 0xAA, 0x17, 0x00, 0x37, 0x09, 0xB8,\n0xCD, 0xF8, 0xE7, 0x5A, 0x03, 0x80, 0xD4, 0xFF, 0x21, 0x56, 0xC6, 0x94, 0x96, 0xC9, 0x7A, 0x00,\n0x81, 0x7E, 0xDB, 0x08, 0xA8, 0xE0, 0xB3, 0x16, 0x13, 0x00, 0x23, 0x04, 0xAC, 0x2A, 0x05, 0x40,\n0x46, 0x65, 0xAB, 0x4E, 0xDB, 0x4A, 0xBE, 0x4F, 0x36, 0x3D, 0x90, 0x9D, 0xB3, 0xAC, 0xA0, 0x9F,\n0x13, 0x10, 0x0E, 0x10, 0xFE, 0xCF, 0xB3, 0x68, 0xEC, 0x39, 0xBD, 0x95, 0xF1, 0xBF, 0xB6, 0x5A,\n0x03, 0x80, 0xBC, 0x13, 0x3C, 0xEE, 0xD1, 0x8A, 0x03, 0xC4, 0x02, 0x10, 0x54, 0x81, 0x1D, 0x85,\n0xAC, 0xFE, 0x8B, 0x20, 0xFE, 0x0F, 0xD9, 0x58, 0x00, 0x32, 0xEA, 0x1A, 0x87, 0x1E, 0x55, 0x13,\n0x00, 0x5B, 0x9A, 0x91, 0x31, 0xC0, 0x16, 0xC6, 0x74, 0xD9, 0x87, 0x73, 0x4F, 0x13, 0xB7, 0x4A,\n0x0F, 0x48, 0x15, 0xC7, 0xE1, 0xDF, 0xF2, 0x7F, 0x8F, 0xC6, 0x03, 0x86, 0x01, 0xE8, 0xF8, 0x43,\n0x34, 0x09, 0xD8, 0xE6, 0x9F, 0xC4, 0xAB, 0xDE, 0x09, 0x30, 0xC5, 0x84, 0xE8, 0xE3, 0x51, 0xC1,\n0xBF, 0x6E, 0x00, 0x8E, 0xB4, 0x09, 0xF0, 0x0F, 0xA5, 0x60, 0x6E, 0x00, 0xEB, 0x5A, 0xF0, 0x7C,\n0xB9, 0x9C, 0x16, 0xFD, 0x2E, 0x8C, 0x03, 0x7A, 0x29, 0x18, 0x0E, 0x70, 0x0C, 0x11, 0x02, 0xAE,\n0xD2, 0xAF, 0x00, 0x87, 0x54, 0x42, 0x88, 0xFF, 0x83, 0x14, 0x7D, 0x79, 0xA2, 0xCA, 0xF9, 0x0D,\n0x70, 0x57, 0xEE, 0x2C, 0x85, 0x7D, 0x9A, 0x49, 0xE2, 0xFF, 0xCA, 0x28, 0x0F, 0xB2, 0xF7, 0xB3,\n0x16, 0xFE, 0x8F, 0xF7, 0x82, 0xC1, 0xF1, 0x8E, 0x96, 0x02, 0x10, 0x2A, 0xAF, 0x8A, 0x70, 0x2D,\n0x02, 0x03, 0xB1, 0xE9, 0x3D, 0xD4, 0xFF, 0x21, 0x1A, 0x0B, 0x40, 0x38, 0x01, 0x47, 0x19, 0x76,\n0x70, 0x7F, 0xD0, 0xA8, 0x9A, 0x00, 0xD8, 0xD2, 0xCC, 0x1D, 0x20, 0x15, 0x70, 0x76, 0x9B, 0xCB,\n0xBF, 0x75, 0x54, 0xE0, 0xCB, 0x37, 0xFE, 0x67, 0x1E, 0x70, 0x80, 0xF9, 0x7F, 0x0C, 0x80, 0xCE,\n0xBA, 0x4E, 0x0B, 0x28, 0x04, 0x44, 0xFF, 0xD7, 0xF8, 0xD7, 0x46, 0xA0, 0x78, 0x40, 0xD6, 0xFF,\n0x05, 0x01, 0x09, 0xFF, 0x20, 0xC6, 0x3F, 0xE4, 0x84, 0xFA, 0x3F, 0x84, 0x1A, 0x3F, 0xF7, 0x7F,\n0x69, 0xD4, 0x0F, 0x0E, 0xD0, 0x36, 0x1C, 0x6B, 0x27, 0x38, 0xFB, 0xC0, 0x31, 0x51, 0x61, 0x00,\n0x1D, 0x0B, 0x08, 0xDC, 0x73, 0x46, 0xFD, 0x1F, 0x26, 0xC3, 0x60, 0x1C, 0xF0, 0x87, 0x16, 0xFB,\n0x2C, 0xBC, 0x12, 0x92, 0x54, 0xD6, 0x3D, 0x3C, 0xD0, 0x60, 0x4C, 0xF1, 0xE6, 0xB4, 0x52, 0x73,\n0x49, 0x48, 0x0F, 0xFD, 0xB4, 0xE2, 0x53, 0x2D, 0x00, 0x69, 0x0B, 0xF5, 0x8F, 0xE4, 0xFF, 0xA6,\n0xA8, 0xC2, 0xFB, 0x66, 0x6D, 0xB9, 0x24, 0x64, 0x4E, 0x00, 0x48, 0xFC, 0x1F, 0xB2, 0x90, 0x62,\n0x2E, 0x19, 0x40, 0x49, 0x50, 0x10, 0x1E, 0x90, 0xF8, 0x3F, 0x00, 0x30, 0x24, 0x5C, 0xEB, 0x34,\n0x93, 0x0E, 0xE6, 0x0F, 0xC7, 0x02, 0x46, 0xFF, 0xA9, 0x07, 0x57, 0x1C, 0x85, 0x03, 0xF8, 0xBF,\n0xB7, 0x7A, 0x3A, 0xE0, 0x0B, 0x12, 0x4D, 0x03, 0x58, 0x23, 0xF0, 0x35, 0x29, 0x80, 0x14, 0x4B,\n0x42, 0x98, 0xFF, 0x03, 0x01, 0xB7, 0x29, 0xFF, 0xFC, 0x44, 0xA4, 0x00, 0x44, 0x8E, 0x60, 0xFF,\n0x08, 0x00, 0xE7, 0xAB, 0xE3, 0x7F, 0x17, 0x55, 0xEF, 0x4B, 0xD2, 0x64, 0xF4, 0xB3, 0x91, 0xC0,\n0x31, 0xD3, 0xFD, 0x05, 0xC0, 0x2D, 0x07, 0x98, 0xF7, 0xD4, 0xFF, 0x41, 0x77, 0xEB, 0xD7, 0x7E,\n0x76, 0x8E, 0x55, 0x4C, 0xC3, 0x92, 0x10, 0x8C, 0xFF, 0xE1, 0xB1, 0x96, 0x38, 0x4C, 0x71, 0xE3,\n0x43, 0x80, 0xF0, 0x7F, 0x0D, 0x55, 0x0B, 0x40, 0xEA, 0xB6, 0xEE, 0x05, 0x8F, 0x99, 0x8C, 0x7D,\n0x97, 0x9A, 0x09, 0x75, 0xA8, 0xC2, 0xBB, 0x01, 0x77, 0x1E, 0x2E, 0xE7, 0xF0, 0x7F, 0x24, 0x8A,\n0xFA, 0x6F, 0x14, 0x81, 0x98, 0xF5, 0xE2, 0x14, 0x04, 0x01, 0x0D, 0x89, 0xCC, 0xFF, 0xB9, 0x92,\n0x03, 0x8C, 0x1B, 0xC0, 0xC4, 0x3C, 0xF4, 0x73, 0x71, 0x54, 0x4C, 0x09, 0x2C, 0x7E, 0xED, 0xFF,\n0xE7, 0x01, 0x87, 0x34, 0x80, 0x88, 0x6A, 0x01, 0x5C, 0x83, 0x7F, 0x7A, 0xFC, 0xF4, 0xA9, 0xF9,\n0x3F, 0xC6, 0x3F, 0x2B, 0x05, 0x7F, 0x47, 0xF8, 0x57, 0x2D, 0x0B, 0xDE, 0x66, 0x02, 0x01, 0x37,\n0xD8, 0x29, 0xED, 0x1E, 0x90, 0xF2, 0x4F, 0xBF, 0x28, 0xE2, 0x0E, 0x80, 0x69, 0x00, 0x0A, 0x1B,\n0xAC, 0x48, 0x66, 0x63, 0x1A, 0xA6, 0x92, 0xFA, 0x2F, 0x17, 0xFC, 0x5F, 0x81, 0x88, 0x2E, 0x0E,\n0x52, 0xFF, 0x07, 0x0F, 0xE8, 0x55, 0x5B, 0xF0, 0xAB, 0x32, 0x81, 0x2B, 0xCB, 0x82, 0x6B, 0x3E,\n0xAE, 0xFC, 0xA2, 0x77, 0x82, 0x75, 0x02, 0x0C, 0xD5, 0x1D, 0xAC, 0x7B, 0xFB, 0xBF, 0x05, 0x00,\n0xC7, 0x5C, 0x18, 0xFF, 0xC3, 0x5F, 0x1E, 0x4F, 0xD9, 0xA6, 0x38, 0xE0, 0x03, 0x80, 0x88, 0x72,\n0x01, 0x48, 0x3B, 0x6B, 0xFF, 0xE7, 0xF8, 0x1B, 0xB5, 0xA7, 0x03, 0x7E, 0xD0, 0xAF, 0xB5, 0x1D,\n0x20, 0x98, 0x57, 0xB8, 0x3F, 0xD2, 0x19, 0xE6, 0x1A, 0x98, 0x80, 0x20, 0xE1, 0xA3, 0xF1, 0x80,\n0x2F, 0x78, 0x64, 0x01, 0x7D, 0x4D, 0x04, 0xBE, 0x7E, 0x4A, 0xFC, 0x1F, 0x4A, 0xC1, 0xBE, 0x00,\n0x84, 0x00, 0x10, 0x57, 0x88, 0xD6, 0xF3, 0xAB, 0xAD, 0x51, 0x49, 0xC0, 0x09, 0x49, 0x8C, 0x03,\n0x06, 0xAC, 0x02, 0xAE, 0x00, 0x08, 0xDB, 0xE1, 0x0D, 0xC6, 0xA0, 0x4C, 0x66, 0x54, 0xC0, 0x3F,\n0x46, 0xC0, 0x97, 0xEA, 0xFF, 0x80, 0x86, 0x32, 0x80, 0xC4, 0xCC, 0xBF, 0x00, 0x80, 0xD2, 0x92,\n0x10, 0xC3, 0x56, 0x89, 0xBB, 0x94, 0x85, 0xD5, 0x4B, 0x17, 0x43, 0x58, 0xB1, 0x7F, 0xB8, 0x8D,\n0x3B, 0xAD, 0x14, 0x6C, 0xFC, 0xE3, 0x22, 0xF5, 0x8F, 0xBA, 0x16, 0x3C, 0x8E, 0x28, 0x39, 0xC0,\n0x7B, 0xAF, 0x7D, 0x35, 0x04, 0xE1, 0xF7, 0x63, 0x02, 0x34, 0x0D, 0x15, 0xE3, 0x9F, 0x25, 0xF8,\n0xE7, 0xE4, 0x43, 0xB3, 0x3A, 0x19, 0xE6, 0x18, 0x13, 0x00, 0x99, 0x03, 0x5C, 0x87, 0x81, 0x6A,\n0xEE, 0x60, 0x00, 0x6D, 0x07, 0x27, 0xA8, 0x69, 0x40, 0x94, 0x6D, 0x38, 0xF4, 0x21, 0x1E, 0x91,\n0x07, 0x1C, 0xB2, 0x00, 0x8C, 0x70, 0xFE, 0x11, 0xFC, 0xF9, 0x15, 0xA2, 0x29, 0xFF, 0xCC, 0x02,\n0x0A, 0x01, 0x99, 0xFF, 0xC3, 0x92, 0x10, 0x55, 0xDD, 0xFF, 0x6D, 0x4F, 0x86, 0x99, 0x04, 0x12,\n0x0B, 0x40, 0x38, 0x01, 0xF3, 0x15, 0xF0, 0x3D, 0x51, 0xF9, 0xF5, 0x74, 0x6F, 0x92, 0x3C, 0xE0,\n0xF8, 0x65, 0x90, 0x80, 0x2F, 0xB1, 0x02, 0xB8, 0xC7, 0x01, 0x5A, 0x21, 0xE4, 0xD7, 0x10, 0x7E,\n0x94, 0x80, 0xA7, 0x25, 0xC8, 0x3A, 0x5C, 0x20, 0x3C, 0xA0, 0x80, 0xB2, 0x7E, 0x4C, 0xCE, 0xD2,\n0x03, 0x3A, 0xFF, 0x98, 0xE0, 0xFF, 0xFA, 0x21, 0x28, 0x01, 0xFE, 0x51, 0x79, 0xFF, 0xD7, 0x5F,\n0x7B, 0x4F, 0x78, 0x42, 0x6F, 0x31, 0x01, 0x9A, 0x05, 0x16, 0x80, 0xD0, 0xC4, 0x04, 0xC0, 0x12,\n0x7F, 0x1D, 0x4B, 0x42, 0x9C, 0x7F, 0x0C, 0x80, 0x61, 0xC1, 0xEF, 0x21, 0xFC, 0x42, 0xF8, 0x55,\n0x88, 0x06, 0xF3, 0x7F, 0x88, 0xBF, 0x6C, 0xFF, 0xDE, 0xF6, 0x52, 0xF0, 0x8B, 0x60, 0x80, 0x7F,\n0x5D, 0x51, 0x12, 0x90, 0xF1, 0x0F, 0x95, 0x90, 0x08, 0xFF, 0xB0, 0x2C, 0x78, 0x9B, 0xF0, 0x6F,\n0x04, 0x02, 0x06, 0xCF, 0x69, 0xF0, 0x2F, 0xE2, 0x01, 0x7D, 0xEC, 0x1D, 0x1F, 0x38, 0xDC, 0x80,\n0x2F, 0xB1, 0x71, 0xC0, 0x71, 0xF0, 0x63, 0x8D, 0x02, 0x30, 0xD0, 0xD0, 0xF2, 0x80, 0xBF, 0xC2,\n0xFF, 0x31, 0x0F, 0xD8, 0xEA, 0xCB, 0x62, 0xE7, 0xA9, 0xFC, 0xAB, 0x7F, 0x5E, 0xDF, 0x67, 0x1E,\n0xF0, 0x34, 0x28, 0x9B, 0x00, 0xD8, 0xB4, 0x80, 0x05, 0xEF, 0xC1, 0xBF, 0x80, 0x07, 0x84, 0xF3,\n0x2B, 0x5E, 0x79, 0xBF, 0x77, 0xEA, 0xE3, 0xB1, 0xE0, 0x1F, 0x0D, 0x03, 0x60, 0x94, 0x80, 0x69,\n0xE0, 0x8F, 0x58, 0x40, 0xB9, 0x07, 0xFC, 0x23, 0x00, 0x8C, 0xCB, 0x68, 0x07, 0xBF, 0x57, 0x9A,\n0xBF, 0xC2, 0x14, 0xCA, 0x55, 0xA3, 0xA1, 0xFF, 0xE9, 0x38, 0xE0, 0x03, 0x00, 0x10, 0xFC, 0xA3,\n0x04, 0x94, 0x09, 0xD1, 0xB8, 0x02, 0x20, 0x1B, 0x07, 0x04, 0xFF, 0x98, 0x07, 0x04, 0xFF, 0x22,\n0x1E, 0x70, 0x12, 0x4B, 0xFD, 0x1E, 0xD8, 0x60, 0x5C, 0x95, 0x8E, 0x0F, 0xE3, 0xEE, 0xF9, 0x06,\n0x3E, 0x9D, 0x17, 0xF0, 0x7F, 0x54, 0xF5, 0xB4, 0x97, 0xF6, 0x30, 0x20, 0xE3, 0x0E, 0x16, 0xC5,\n0x7D, 0x0F, 0xD0, 0x95, 0x9D, 0xDB, 0x0A, 0x82, 0x98, 0x00, 0x5D, 0xFF, 0xD4, 0x02, 0xD7, 0x90,\n0xC1, 0x04, 0x40, 0x4E, 0xC0, 0x92, 0xDE, 0x68, 0x4B, 0xAE, 0x6B, 0x8C, 0xC3, 0xBA, 0x2C, 0x5E,\n0xFE, 0xE2, 0x95, 0x77, 0x10, 0xBA, 0x35, 0x04, 0xFF, 0x68, 0xC0, 0x00, 0x92, 0xF4, 0x09, 0x80,\n0xD2, 0xF6, 0x5B, 0x40, 0xBD, 0x73, 0xB6, 0x33, 0x28, 0x00, 0x33, 0xEB, 0x0A, 0x13, 0x58, 0x4F,\n0x86, 0xF6, 0xFD, 0x90, 0xFE, 0x0F, 0xF1, 0x78, 0xAE, 0x8B, 0xF0, 0x30, 0x16, 0x70, 0xB3, 0xE6,\n0x5F, 0x6B, 0x32, 0xCC, 0x6B, 0xC6, 0x3F, 0x4C, 0x07, 0x04, 0x00, 0xF9, 0x30, 0x20, 0x07, 0xE0,\n0x08, 0x04, 0x9C, 0x04, 0x33, 0xFE, 0x41, 0x51, 0x00, 0x22, 0x61, 0xF8, 0x6C, 0x43, 0xAA, 0xF6,\n0xC0, 0x3F, 0x26, 0x61, 0x00, 0xA5, 0x9F, 0x6D, 0x67, 0x27, 0x30, 0x80, 0x0C, 0x80, 0x37, 0x2B,\n0xF6, 0xAD, 0xB6, 0x75, 0xF8, 0x09, 0xB0, 0x57, 0xFD, 0x4E, 0x11, 0x52, 0x09, 0x8E, 0x03, 0xD0,\n0x87, 0x35, 0xB9, 0x03, 0x3C, 0x1C, 0x87, 0xB5, 0x57, 0x74, 0x7C, 0x2F, 0xEA, 0x52, 0x08, 0x36,\n0x14, 0x40, 0x68, 0xEC, 0xC7, 0x01, 0x38, 0xC2, 0xFA, 0x0F, 0xC5, 0xA0, 0x37, 0x25, 0x01, 0x0D,\n0x8B, 0x5B, 0x1F, 0xBC, 0x1A, 0x18, 0x80, 0x9A, 0x08, 0xD0, 0x0E, 0x2E, 0x10, 0xB1, 0x96, 0x05,\n0xFC, 0xEF, 0x2D, 0x0A, 0xDE, 0x7C, 0x08, 0x00, 0x9A, 0x03, 0x6C, 0x45, 0xBD, 0x28, 0x18, 0x90,\n0xA3, 0xA3, 0x80, 0x41, 0x02, 0x6A, 0x21, 0x78, 0x3B, 0xA8, 0xD1, 0x28, 0xDC, 0x07, 0x9E, 0xEF,\n0x87, 0x3F, 0x29, 0x5E, 0x02, 0x29, 0xC6, 0xFC, 0xBA, 0x10, 0x78, 0x81, 0x6B, 0xC0, 0x50, 0x1D,\n0x1E, 0x9E, 0x91, 0x0E, 0xB0, 0x85, 0xF2, 0xE4, 0xE4, 0x24, 0x8A, 0x9F, 0x45, 0x2A, 0x81, 0xD4,\n0xB4, 0x43, 0xEB, 0xAE, 0xEE, 0xFB, 0x9F, 0xCB, 0x5A, 0x89, 0x64, 0xEB, 0x17, 0x6E, 0x6E, 0xC2,\n0x04, 0x96, 0xFF, 0xD7, 0xB3, 0xA0, 0x03, 0x3C, 0x0C, 0x13, 0xF0, 0x32, 0x2D, 0x01, 0xF6, 0xBC,\n0xF0, 0xC6, 0xD3, 0xE9, 0x67, 0x85, 0xE0, 0x38, 0xFF, 0xE6, 0x71, 0xFE, 0x09, 0xE9, 0xB2, 0xFB,\n0x03, 0xFD, 0x3A, 0x5C, 0xE0, 0xBE, 0x4E, 0x85, 0xF9, 0x60, 0x50, 0x00, 0x66, 0xE3, 0xE7, 0x06,\n0x10, 0x0B, 0x40, 0x10, 0xA8, 0x09, 0xAF, 0xA7, 0x70, 0x19, 0xE4, 0xD3, 0xC7, 0x33, 0x06, 0x38,\n0x38, 0x01, 0xF5, 0x51, 0x4A, 0x36, 0x4E, 0x40, 0xDD, 0xBD, 0xC6, 0x55, 0xF0, 0xF9, 0x18, 0x60,\n0x94, 0x80, 0x5B, 0xBB, 0x28, 0x02, 0x33, 0xFC, 0x49, 0x6E, 0x44, 0x01, 0x38, 0x0F, 0xF7, 0x80,\n0x53, 0x11, 0x18, 0xD4, 0xC3, 0xC1, 0xCA, 0xB8, 0x20, 0xAE, 0x02, 0xC3, 0xF9, 0x27, 0x82, 0x21,\n0xEA, 0xF5, 0x7F, 0xA2, 0x20, 0x01, 0xB5, 0x5A, 0x7B, 0x03, 0x9C, 0x75, 0x40, 0x10, 0x77, 0x2B,\n0x02, 0xAB, 0x1A, 0x49, 0x0D, 0x41, 0xCD, 0x53, 0x79, 0xDA, 0x20, 0xFF, 0x54, 0x31, 0x0B, 0x78,\n0x28, 0x0A, 0xF2, 0x4F, 0xCB, 0xC0, 0xF7, 0x09, 0x08, 0x13, 0x8E, 0xCC, 0xFC, 0x9B, 0xC7, 0x09,\n0x38, 0x9F, 0x07, 0x09, 0xB8, 0xA1, 0xA7, 0x55, 0x5E, 0x03, 0x07, 0xFA, 0xA1, 0x22, 0xE2, 0x1A,\n0xE5, 0x89, 0x30, 0xC3, 0x3A, 0x40, 0x85, 0x9F, 0xCF, 0xF6, 0x83, 0xFF, 0x83, 0xFB, 0xAB, 0x16,\n0x04, 0x0F, 0x4D, 0x40, 0x53, 0x9C, 0x80, 0xFF, 0x6A, 0x09, 0x64, 0x78, 0x02, 0x6E, 0xE6, 0x09,\n0x30, 0x1C, 0x81, 0xD2, 0x60, 0x16, 0x20, 0xF7, 0x7F, 0x2A, 0xFB, 0x1E, 0x24, 0xEE, 0xFF, 0x8C,\n0x80, 0x4C, 0x23, 0x07, 0x60, 0xCC, 0x03, 0xCA, 0xD9, 0x1F, 0x43, 0xA0, 0x2E, 0x08, 0x9E, 0x4B,\n0xD4, 0xB3, 0xA0, 0xB1, 0x79, 0xC7, 0x78, 0x6F, 0xAA, 0x71, 0xF9, 0x32, 0xC2, 0x3F, 0x13, 0x26,\n0xC1, 0xF4, 0xF9, 0x3F, 0x10, 0x90, 0x4F, 0x83, 0x39, 0x58, 0x08, 0x04, 0x51, 0xDD, 0x28, 0x38,\n0x88, 0x9D, 0x3B, 0x40, 0x39, 0x6A, 0x21, 0x10, 0xFD, 0xDF, 0x9F, 0x17, 0x3A, 0xB9, 0x66, 0x11,\n0xE6, 0x9F, 0x79, 0x40, 0xCA, 0xC0, 0x43, 0x53, 0xB0, 0x04, 0xA2, 0xBA, 0x58, 0xA9, 0xBB, 0xE3,\n0x36, 0x7C, 0xE1, 0x95, 0xBD, 0x55, 0x51, 0xFE, 0xED, 0x47, 0x08, 0x28, 0x9B, 0xD2, 0x0F, 0x35,\n0x60, 0x8C, 0x03, 0xFA, 0x3D, 0xD5, 0x44, 0xC0, 0x9D, 0x01, 0x01, 0x08, 0xBE, 0x81, 0x81, 0xAD,\n0x78, 0x30, 0x00, 0x3E, 0x8E, 0x69, 0x80, 0x0F, 0x31, 0x0D, 0x06, 0xFE, 0x8F, 0x44, 0xE2, 0x9F,\n0x12, 0x50, 0x3C, 0x60, 0x60, 0x1E, 0xA0, 0x08, 0x1E, 0x90, 0xF9, 0xBF, 0x99, 0x34, 0x64, 0x21,\n0x9C, 0x8E, 0xC7, 0x8C, 0x72, 0x72, 0x02, 0xEA, 0xA9, 0x3F, 0x17, 0xC5, 0xFA, 0xBF, 0x12, 0x5F,\n0x5E, 0xA5, 0x3E, 0x17, 0x36, 0xB8, 0x10, 0x6C, 0xF9, 0x9A, 0x58, 0x61, 0xFE, 0x99, 0x07, 0x3C,\n0xA1, 0xFE, 0x8F, 0x13, 0x10, 0x97, 0x84, 0x11, 0x2D, 0x60, 0xDD, 0x00, 0xB7, 0x95, 0x5B, 0x82,\n0x3F, 0x49, 0xEB, 0x05, 0x77, 0x76, 0x82, 0xEF, 0x03, 0xF4, 0x54, 0xA8, 0xAA, 0x4F, 0x1B, 0xE0,\n0x9F, 0x8B, 0x74, 0x82, 0xE5, 0xE8, 0x30, 0x2B, 0xE0, 0xFF, 0xF2, 0x17, 0x8C, 0xFA, 0xCB, 0x6D,\n0x3B, 0xBC, 0x07, 0xC8, 0x3D, 0xF1, 0x7F, 0x16, 0x21, 0x02, 0xCE, 0xF7, 0xA3, 0x04, 0xB4, 0x93,\n0xAA, 0xB0, 0x80, 0x58, 0x0E, 0x9C, 0x0F, 0xC1, 0xBF, 0x5D, 0x89, 0xAD, 0xDD, 0x01, 0x01, 0x88,\n0xFA, 0x6F, 0x57, 0xF5, 0x57, 0x13, 0x77, 0x3E, 0x88, 0x05, 0x4C, 0x7A, 0x0C, 0x00, 0xDC, 0xF4,\n0x88, 0x6B, 0x50, 0xFE, 0x09, 0xFA, 0xF2, 0x4A, 0x10, 0xE2, 0xFF, 0x04, 0x81, 0x89, 0x7F, 0x32,\n0x0E, 0xC8, 0x00, 0x38, 0x53, 0x03, 0x68, 0xC9, 0xFD, 0x9F, 0x03, 0x70, 0xC4, 0x2D, 0xE0, 0x5C,\n0xB4, 0x2F, 0xC1, 0x2B, 0x21, 0x66, 0x2A, 0x2C, 0x7C, 0xAE, 0x05, 0xB6, 0x8B, 0x62, 0x36, 0xDA,\n0xD4, 0x57, 0xC2, 0xED, 0x05, 0xF8, 0xE7, 0x02, 0x1A, 0x1A, 0xFC, 0x83, 0x02, 0xE3, 0x7F, 0x0B,\n0xA1, 0xD5, 0xF9, 0xC1, 0xA2, 0x45, 0x3E, 0x58, 0x3C, 0xC3, 0x9F, 0x0A, 0xA0, 0x6B, 0xF9, 0x44,\n0x7D, 0x5A, 0x5B, 0x0D, 0xBC, 0x06, 0x00, 0x71, 0x89, 0x9B, 0x86, 0x03, 0x3C, 0x74, 0x71, 0x02,\n0xEA, 0x4B, 0x6A, 0x08, 0x9C, 0x96, 0xD5, 0xDF, 0x1A, 0x81, 0x78, 0xAB, 0xBE, 0xA4, 0xEF, 0xEB,\n0x9B, 0xD4, 0x05, 0x98, 0x73, 0x03, 0xE8, 0x67, 0x95, 0x77, 0x7A, 0x2D, 0xB1, 0x1C, 0xB8, 0x5C,\n0x0C, 0xBC, 0x6B, 0x7F, 0xAC, 0xF9, 0x52, 0xB8, 0xB8, 0x5A, 0x9E, 0xEF, 0xB6, 0x3E, 0xFA, 0x2B,\n0x8A, 0x02, 0xF0, 0x11, 0xAC, 0x05, 0x1E, 0x76, 0x29, 0x1C, 0x3A, 0xC0, 0xA1, 0x00, 0xFF, 0x8C,\n0x80, 0xCC, 0xFF, 0x41, 0x1F, 0xCC, 0x28, 0xFF, 0x66, 0xE9, 0xB4, 0x6A, 0x8F, 0x03, 0xFA, 0x5F,\n0xE4, 0xB8, 0x07, 0xB4, 0xB3, 0xDF, 0x34, 0x61, 0xFC, 0x9B, 0xDF, 0x45, 0xED, 0x00, 0x71, 0xAC,\n0xB9, 0xE7, 0x5F, 0x10, 0x7C, 0xB1, 0xC7, 0x01, 0x08, 0x02, 0xB6, 0xFB, 0xC0, 0x6B, 0x02, 0xF0,\n0x20, 0x5D, 0xBC, 0x4F, 0xCD, 0xDA, 0xCF, 0x55, 0x21, 0xB8, 0x64, 0x9B, 0x28, 0x39, 0x40, 0x10,\n0xB0, 0xF5, 0x0B, 0x37, 0x8B, 0x03, 0xCD, 0x1B, 0xC9, 0x05, 0xC3, 0x1F, 0x74, 0x46, 0xCA, 0x20,\n0x87, 0x10, 0xE7, 0x9F, 0x5D, 0x5F, 0x56, 0xF6, 0xFA, 0x22, 0xD7, 0x85, 0x28, 0x0C, 0xC2, 0x8A,\n0x4F, 0x9F, 0xE7, 0x60, 0xFC, 0x33, 0xFB, 0x67, 0x5B, 0x9C, 0x7F, 0xB2, 0x61, 0x09, 0xF0, 0xFD,\n0x63, 0x97, 0xF0, 0xCF, 0x11, 0x38, 0x1B, 0x70, 0x22, 0x74, 0xED, 0xFD, 0xF8, 0x75, 0x50, 0xE3,\n0xE2, 0x25, 0xE0, 0xF5, 0x11, 0xF8, 0xEF, 0x5F, 0x11, 0x30, 0xAE, 0x38, 0xFF, 0x5E, 0x50, 0xFE,\n0xB9, 0x3E, 0xEC, 0x1D, 0x07, 0x7C, 0xEA, 0xFE, 0xCF, 0x3C, 0xA0, 0x10, 0x90, 0xAC, 0x02, 0x49,\n0x67, 0x94, 0x26, 0x00, 0x58, 0xDB, 0xBF, 0x82, 0x7F, 0xC4, 0x03, 0xE2, 0xEC, 0x97, 0xA4, 0xFD,\n0x5F, 0xD8, 0x8A, 0x46, 0xF5, 0x43, 0x37, 0xE5, 0x5F, 0x8A, 0x94, 0xE3, 0x97, 0x84, 0x7F, 0x10,\n0x33, 0x80, 0x51, 0x04, 0x0A, 0xA3, 0xCE, 0x8D, 0x53, 0xE7, 0x76, 0x39, 0xC0, 0x7A, 0x5E, 0x33,\n0x8E, 0x0D, 0x7D, 0x9A, 0xDA, 0x54, 0x9D, 0x65, 0x84, 0xFA, 0x3F, 0x7D, 0xD2, 0x1F, 0xE4, 0x39,\n0x35, 0x83, 0x00, 0x84, 0x07, 0x6C, 0x38, 0x40, 0xE1, 0x1F, 0x44, 0xF9, 0xA7, 0x23, 0x0B, 0xD2,\n0x48, 0xE2, 0xA5, 0xEF, 0xE8, 0x04, 0x5F, 0xC8, 0x58, 0x2D, 0x82, 0xD7, 0x3F, 0xFC, 0x24, 0xA0,\n0xF5, 0x5F, 0x64, 0x2A, 0xFB, 0xBA, 0xFD, 0xF3, 0x63, 0x1F, 0x1F, 0x4C, 0xA7, 0xEA, 0x8E, 0xEC,\n0xC8, 0x6C, 0xE8, 0x59, 0x9C, 0x56, 0x98, 0xFD, 0x87, 0x83, 0xD5, 0x52, 0xB0, 0xE6, 0xED, 0x43,\n0xF1, 0x0F, 0x7A, 0xEB, 0xAF, 0x07, 0xF8, 0x17, 0x01, 0xC8, 0x0A, 0x20, 0x31, 0xFF, 0xF7, 0x02,\n0xFC, 0x23, 0xEB, 0x81, 0xE1, 0xFF, 0x68, 0x2F, 0xF8, 0x95, 0x15, 0x40, 0x34, 0x77, 0x64, 0x9B,\n0xF5, 0x11, 0x10, 0xFD, 0xDF, 0x40, 0x25, 0x64, 0xAE, 0x92, 0x36, 0x1D, 0x44, 0xF9, 0xB7, 0xFC,\n0x12, 0x17, 0x84, 0x2E, 0x6B, 0x8F, 0x58, 0x07, 0x2C, 0x39, 0x95, 0x94, 0x26, 0xCC, 0xBF, 0xF1,\n0xE1, 0x59, 0x83, 0x7E, 0xCE, 0x3F, 0x88, 0x8C, 0xFF, 0x19, 0x01, 0xCF, 0x15, 0x81, 0xF8, 0x46,\n0xE0, 0xAE, 0x59, 0xD1, 0xA6, 0x9F, 0x81, 0x41, 0x90, 0x2F, 0xB7, 0xF8, 0xC5, 0x1B, 0x79, 0x5E,\n0x0B, 0x49, 0x11, 0xE5, 0x1F, 0x74, 0xD6, 0xE3, 0x00, 0x0F, 0x4B, 0x11, 0xFF, 0x97, 0x19, 0x38,\n0x95, 0xFC, 0x05, 0xA5, 0xA7, 0xCA, 0x01, 0xE2, 0x9D, 0xA2, 0x04, 0x04, 0xFE, 0x12, 0x01, 0xFB,\n0x0A, 0xC0, 0x25, 0x00, 0xBD, 0xFA, 0x31, 0xC2, 0x50, 0xA0, 0xB6, 0xBE, 0x0E, 0x78, 0x16, 0xF1,\n0x80, 0xB3, 0xB8, 0x03, 0xFC, 0xA8, 0x55, 0xEE, 0x40, 0x29, 0xD8, 0x7B, 0xC9, 0x7F, 0x5D, 0x1C,\n0x7F, 0xEB, 0x23, 0xF0, 0xDF, 0xFF, 0x72, 0xE0, 0xB8, 0x48, 0x01, 0x38, 0x14, 0xAB, 0xFC, 0xFB,\n0xB0, 0x3D, 0x19, 0xE6, 0xE9, 0xC7, 0x25, 0x00, 0xAD, 0x17, 0xDC, 0xE6, 0xDF, 0xCC, 0xF0, 0xB7,\n0xA5, 0xDB, 0x6E, 0x63, 0x45, 0xB0, 0x9C, 0x93, 0xAB, 0xFC, 0x93, 0xA6, 0x75, 0x56, 0x2B, 0xFF,\n0x90, 0xDA, 0xF4, 0xF1, 0xEF, 0xAA, 0xB0, 0x80, 0xCB, 0xB2, 0xF8, 0x8B, 0x61, 0x40, 0xE3, 0x1F,\n0x1C, 0x60, 0x3F, 0x01, 0xF3, 0xE7, 0x1F, 0x6A, 0x39, 0x40, 0xF0, 0x8F, 0x13, 0xD0, 0x2E, 0x83,\n0x2A, 0x3A, 0x48, 0x9B, 0xDC, 0xAE, 0xBD, 0x1F, 0xFC, 0x9F, 0xA3, 0x2F, 0xED, 0x80, 0xBC, 0xB2,\n0x14, 0xA2, 0xFD, 0x5F, 0x7D, 0xDA, 0x9C, 0x07, 0xD2, 0xBD, 0x8E, 0xF0, 0x8F, 0x94, 0x82, 0xA5,\n0x00, 0x1C, 0x06, 0x60, 0xFE, 0x7A, 0x15, 0xDB, 0x69, 0xA6, 0xE9, 0x80, 0x9D, 0x14, 0x2C, 0xF1,\n0x27, 0x6F, 0x1C, 0xE3, 0x9F, 0xA5, 0x6D, 0x7D, 0x1D, 0xE0, 0xF2, 0xBC, 0x52, 0xD2, 0x39, 0x05,\n0xB1, 0x2F, 0x0A, 0x20, 0x7A, 0xBA, 0x82, 0x80, 0x8D, 0x4B, 0xE2, 0xC7, 0xFD, 0x1F, 0x4C, 0x1F,\n0xF6, 0x08, 0x51, 0x3E, 0x78, 0xCB, 0x00, 0xF8, 0xC9, 0xA7, 0x8F, 0x07, 0x80, 0x4D, 0xFE, 0xC1,\n0xFE, 0xF1, 0x78, 0x77, 0x45, 0xAF, 0x9D, 0x80, 0x75, 0x01, 0x04, 0xF0, 0x63, 0xA5, 0xE0, 0x2D,\n0xD5, 0xEE, 0xB7, 0xBB, 0x18, 0x5B, 0x19, 0xF5, 0xCC, 0x00, 0xAC, 0x2C, 0x60, 0x17, 0x02, 0xBD,\n0xFE, 0xE1, 0x69, 0x08, 0x6C, 0x5C, 0x08, 0x6B, 0x62, 0xFC, 0x2B, 0x23, 0x2D, 0x3B, 0xAD, 0x87,\n0x01, 0xF3, 0x65, 0x3B, 0xA7, 0x29, 0x6D, 0xCC, 0x9E, 0xF9, 0x3F, 0x88, 0xF6, 0x7F, 0xA1, 0x7E,\n0x03, 0x28, 0x71, 0x6E, 0xA9, 0x81, 0x09, 0xD1, 0x20, 0x1B, 0xC6, 0xFF, 0xB4, 0x01, 0x05, 0x01,\n0xBF, 0xF2, 0x37, 0x16, 0xF9, 0x29, 0xED, 0x32, 0x83, 0x0B, 0xA5, 0x20, 0xE5, 0x1F, 0xD4, 0xEA,\n0x04, 0x1F, 0x56, 0xEA, 0xAF, 0x7F, 0xE0, 0xEF, 0x8A, 0xBE, 0xC2, 0x55, 0x01, 0x5E, 0x12, 0x05,\n0x90, 0x88, 0x07, 0x2C, 0xF1, 0xA7, 0x4D, 0xDF, 0x04, 0xC0, 0x2A, 0xB1, 0x14, 0x0E, 0x4B, 0xE2,\n0xCC, 0xFF, 0x59, 0x47, 0x65, 0x47, 0x4F, 0xD9, 0x74, 0xB2, 0xCE, 0x1A, 0xFC, 0x7B, 0xF5, 0x1E,\n0x80, 0xC5, 0x0B, 0xC0, 0xB7, 0x5D, 0xCE, 0x2F, 0xA5, 0x86, 0xF6, 0x7E, 0x09, 0x00, 0xB9, 0xF8,\n0xF8, 0xDF, 0xFA, 0x08, 0x7C, 0xFC, 0xDF, 0x0A, 0xB7, 0xD9, 0x81, 0xBF, 0x08, 0xFF, 0x7C, 0x32,\n0x0C, 0xE3, 0x1F, 0x4C, 0x20, 0xA6, 0x03, 0x56, 0xFC, 0x9B, 0xF9, 0xD9, 0xE4, 0x63, 0x2B, 0x1B,\n0x8C, 0x7F, 0xC8, 0x1E, 0xFF, 0x07, 0x04, 0x8A, 0xBA, 0x97, 0x84, 0xA4, 0x09, 0x80, 0x55, 0xF8,\n0x34, 0x8C, 0x02, 0x81, 0x17, 0xE9, 0x92, 0xC5, 0xD7, 0x97, 0x9A, 0x53, 0xED, 0x07, 0x6B, 0x52,\n0xFE, 0x81, 0x80, 0xAD, 0x09, 0x80, 0xB5, 0x5A, 0x13, 0x00, 0x73, 0xD7, 0x37, 0x71, 0xD0, 0x48,\n0x05, 0x5B, 0x57, 0x7E, 0xE9, 0x39, 0x3A, 0xBF, 0x38, 0xC4, 0x8F, 0xFD, 0x97, 0x14, 0x9F, 0x36,\n0xFD, 0xC5, 0x87, 0x15, 0xB5, 0x12, 0xA2, 0x41, 0xF8, 0xC7, 0x7A, 0xC1, 0xE0, 0x1F, 0x27, 0xA0,\n0x99, 0xEA, 0x4B, 0xC9, 0xFC, 0x82, 0xDA, 0x6B, 0x7B, 0x5D, 0x15, 0xE0, 0x35, 0x3B, 0xDE, 0xA9,\n0xAB, 0x76, 0xFD, 0xA3, 0x44, 0x60, 0xDB, 0x03, 0xC2, 0xFF, 0x21, 0xCB, 0x95, 0xC0, 0x7E, 0x63,\n0x94, 0x4E, 0xD5, 0x34, 0x64, 0xED, 0xFD, 0x95, 0x06, 0xFF, 0xF0, 0xAD, 0x70, 0xB1, 0x09, 0x80,\n0xD8, 0x37, 0x6B, 0xC1, 0x0F, 0x02, 0x40, 0x88, 0x12, 0xF0, 0x5F, 0xFF, 0x5E, 0x60, 0x02, 0x40,\n0xA6, 0xBF, 0x55, 0xFF, 0x75, 0xFE, 0x55, 0xFA, 0x86, 0x0C, 0x00, 0x12, 0x02, 0xDE, 0xFD, 0x29,\n0x05, 0x03, 0xBB, 0x4A, 0xC1, 0x23, 0xCD, 0x11, 0xB2, 0x31, 0x0C, 0x08, 0xFF, 0x57, 0xE0, 0xCF,\n0x7B, 0xC1, 0x5F, 0xD7, 0x00, 0x84, 0xFF, 0xAB, 0x3D, 0x20, 0xE6, 0xBE, 0x58, 0xE6, 0x3E, 0x5A,\n0x32, 0x81, 0xB2, 0x68, 0x41, 0x11, 0x28, 0x7B, 0xCA, 0x3F, 0xE8, 0x84, 0xF8, 0x3F, 0xA8, 0xC1,\n0x3F, 0xA3, 0x94, 0xB5, 0x96, 0xBA, 0x24, 0xA4, 0xC3, 0xD6, 0xDD, 0xF1, 0xCF, 0x37, 0x37, 0x83,\n0xE5, 0x83, 0xDC, 0xFF, 0x2D, 0xAC, 0xDF, 0x2B, 0xCF, 0xA7, 0x7B, 0x7F, 0x6A, 0xCE, 0x3F, 0x10,\n0xB0, 0x76, 0x80, 0xE0, 0x1F, 0x25, 0xE0, 0xA5, 0xCF, 0x7F, 0xB9, 0xB6, 0x9D, 0xD3, 0xF0, 0xFA,\n0xA2, 0x2E, 0xC0, 0x77, 0xBE, 0x53, 0xCB, 0x48, 0x07, 0xB8, 0x3D, 0x1D, 0xD0, 0x26, 0x00, 0x12,\n0x0B, 0x68, 0xCB, 0x3F, 0xBC, 0xFF, 0xAB, 0xE7, 0xA7, 0xC2, 0x0F, 0xC3, 0xD6, 0xDD, 0xFC, 0x7B,\n0x0F, 0x00, 0x24, 0xFE, 0x0F, 0x51, 0xB0, 0xB0, 0x9C, 0x03, 0x38, 0x88, 0xB8, 0xFB, 0x5B, 0x9F,\n0x80, 0xFF, 0x92, 0x01, 0x44, 0xAC, 0xA3, 0x1A, 0x80, 0x0D, 0xDE, 0xD5, 0x5C, 0x6C, 0xF0, 0x0F,\n0x4B, 0x42, 0x8A, 0x4B, 0xC0, 0x40, 0xA4, 0x10, 0x22, 0xFC, 0xF3, 0x3F, 0xA5, 0x3B, 0x79, 0x6F,\n0x14, 0xAC, 0x26, 0xC0, 0xC0, 0xFF, 0x51, 0x0B, 0xB8, 0xA1, 0x00, 0xDC, 0x2F, 0xB2, 0x35, 0x19,\n0x26, 0x2D, 0x80, 0xAB, 0xE3, 0xCB, 0xAB, 0xFA, 0x5B, 0x79, 0x6C, 0xD4, 0x4F, 0x37, 0xEF, 0xAB,\n0x5D, 0xE6, 0x5D, 0x93, 0x7F, 0xDC, 0x03, 0x82, 0x7F, 0x94, 0x80, 0x3F, 0x1A, 0xFF, 0x2C, 0xCF,\n0xAD, 0x4D, 0xE5, 0xE0, 0xC5, 0x02, 0x9D, 0x60, 0xEC, 0x80, 0xBF, 0x62, 0x1C, 0xD0, 0x5D, 0x22,\n0xE2, 0x7B, 0x85, 0x9E, 0x42, 0x35, 0x3D, 0xA1, 0x1B, 0x40, 0xE9, 0x09, 0x73, 0xFE, 0xD5, 0x1E,\n0xB0, 0xEE, 0xFF, 0x72, 0x02, 0xA6, 0x65, 0x35, 0xEE, 0xA8, 0xAF, 0x2F, 0xF1, 0xCD, 0x20, 0xD9,\n0x00, 0xA6, 0x0D, 0x06, 0xB0, 0x8A, 0x06, 0xFF, 0x90, 0xD8, 0xD5, 0xF8, 0x43, 0x01, 0xB8, 0x6B,\n0x1C, 0x50, 0x5D, 0x1F, 0xCE, 0xC0, 0xF4, 0x17, 0x5A, 0x62, 0x2B, 0xB5, 0x3B, 0xF9, 0x70, 0x67,\n0x95, 0x7F, 0x33, 0xF1, 0x7F, 0x70, 0x80, 0xDC, 0xFF, 0xA1, 0xE0, 0xDB, 0x28, 0x02, 0xCB, 0xD1,\n0xA0, 0xFC, 0x43, 0x50, 0x00, 0xF2, 0xF8, 0x57, 0xFC, 0x1F, 0xE2, 0xEF, 0xF1, 0xEF, 0xAF, 0x8C,\n0xFF, 0x91, 0xEF, 0x06, 0xD6, 0x05, 0x70, 0x4D, 0x02, 0xCE, 0x3A, 0xFD, 0x9F, 0xE1, 0xCF, 0xF7,\n0x09, 0x81, 0x55, 0x29, 0x78, 0xD4, 0x22, 0xE0, 0xA8, 0x35, 0x01, 0x1A, 0xE9, 0x95, 0x90, 0x09,\n0xE3, 0x1F, 0xC2, 0x3B, 0x5F, 0xD8, 0x6C, 0x9A, 0x06, 0x46, 0x01, 0x93, 0x03, 0xB4, 0x3C, 0x8A,\n0xF1, 0x0F, 0x4B, 0x42, 0x7C, 0x83, 0x01, 0x0C, 0x10, 0xD0, 0x8C, 0x5F, 0x62, 0x95, 0x10, 0x50,\n0x0F, 0x6C, 0x13, 0x03, 0xF7, 0xFD, 0x4A, 0x71, 0x03, 0xE8, 0xAB, 0xC6, 0x01, 0xF1, 0x20, 0xEF,\n0x00, 0x9F, 0x2A, 0xFA, 0xFC, 0x99, 0xD5, 0x07, 0xDA, 0x81, 0x58, 0xCB, 0x00, 0xFF, 0x40, 0xC0,\n0xF2, 0xEA, 0x58, 0x87, 0x4D, 0x35, 0xBE, 0x12, 0x38, 0x6D, 0xD2, 0x08, 0xF8, 0xEC, 0xC5, 0x95,\n0xED, 0xFA, 0xA2, 0xF8, 0x13, 0xB4, 0x77, 0x35, 0x47, 0xB9, 0x9E, 0xF5, 0x82, 0xBB, 0xF1, 0x67,\n0x33, 0xA2, 0xEB, 0x09, 0x80, 0xAD, 0x14, 0x15, 0x08, 0xDC, 0xF2, 0xDA, 0x87, 0xFF, 0xC1, 0xB6,\n0x43, 0x3D, 0x59, 0x57, 0x01, 0xA8, 0xFE, 0xCF, 0x00, 0xC8, 0xFD, 0x5F, 0x97, 0xDF, 0xEB, 0x8C,\n0x07, 0x72, 0x80, 0x83, 0x11, 0xF0, 0xE1, 0xED, 0xDF, 0xE0, 0x08, 0xFC, 0x1C, 0xFC, 0x0B, 0x4F,\n0x80, 0x86, 0xDA, 0x13, 0xA2, 0x61, 0x00, 0x2B, 0x02, 0x56, 0x13, 0xA0, 0x0D, 0x77, 0x4E, 0x3D,\n0xC7, 0xA0, 0xDD, 0x2C, 0x09, 0xA8, 0xA0, 0x6B, 0x13, 0xB0, 0xE2, 0xDF, 0x7E, 0x8D, 0xC0, 0x4E,\n0x0F, 0x78, 0x35, 0x6F, 0x45, 0x31, 0x23, 0x5A, 0x9B, 0x8C, 0xBF, 0xEB, 0x34, 0x0A, 0x28, 0xFB,\n0xE4, 0x00, 0xB5, 0xA5, 0xFC, 0x83, 0x28, 0xFF, 0xA0, 0xBA, 0xFF, 0x2B, 0x61, 0x06, 0xD0, 0x38,\n0x95, 0xB9, 0x75, 0x20, 0x04, 0x5B, 0xBD, 0x0A, 0x4C, 0x41, 0x3E, 0x09, 0xCF, 0xD5, 0xE9, 0x80,\n0x72, 0x6B, 0xA1, 0x75, 0x65, 0x37, 0x95, 0x19, 0xAB, 0x99, 0xAC, 0x1C, 0x80, 0xD0, 0x59, 0xB5,\n0x00, 0x38, 0x48, 0x40, 0x7B, 0x4D, 0xF3, 0x0B, 0x7A, 0x69, 0xF0, 0xD3, 0x9D, 0xC1, 0x30, 0xBD,\n0xEC, 0xD8, 0xAE, 0x30, 0x5A, 0xCB, 0x0A, 0x21, 0xF5, 0xBB, 0xEF, 0xBB, 0x49, 0x9C, 0x7F, 0x58,\n0x0F, 0x6C, 0xCD, 0xC8, 0xA1, 0xB7, 0x6B, 0xB1, 0xE3, 0x07, 0x9A, 0x5B, 0xAB, 0x05, 0x60, 0x51,\n0x0C, 0x80, 0xAD, 0x99, 0x2F, 0x95, 0x13, 0x1C, 0x46, 0xB5, 0xFF, 0xFB, 0x3F, 0x03, 0x70, 0xBD,\n0x05, 0x20, 0xB5, 0x30, 0x21, 0x9A, 0x15, 0x40, 0x20, 0x39, 0x3D, 0x4A, 0xFE, 0xA1, 0xDB, 0xEB,\n0x3D, 0x61, 0x47, 0x20, 0x29, 0x80, 0xB4, 0x97, 0x84, 0xB4, 0xF0, 0xB7, 0x2F, 0xB1, 0x7A, 0x01,\n0x98, 0x36, 0x01, 0xCB, 0xE9, 0x80, 0xD3, 0x3C, 0xFB, 0x6F, 0x6A, 0x5D, 0x34, 0xDB, 0xD9, 0xC5,\n0x4B, 0x52, 0x31, 0x98, 0xF2, 0x0F, 0x2A, 0x17, 0x80, 0x9C, 0x87, 0x01, 0x78, 0x63, 0xA3, 0x73,\n0xC6, 0x29, 0xEF, 0xAF, 0x4A, 0x47, 0xD5, 0xEA, 0xC0, 0x36, 0x1D, 0x10, 0xD6, 0x0E, 0xBC, 0x43,\n0xE7, 0x17, 0x44, 0x2C, 0xBB, 0xCB, 0x37, 0x5E, 0x00, 0xF6, 0xA7, 0xD4, 0x9D, 0xD3, 0x75, 0x41,\n0xF1, 0x07, 0x15, 0xFD, 0xFA, 0xC3, 0x30, 0x01, 0xBD, 0xEA, 0x9B, 0x2D, 0xB5, 0xF9, 0xC1, 0xBB,\n0x97, 0xFA, 0x17, 0xBC, 0xFE, 0x3E, 0x01, 0xB0, 0x15, 0x95, 0xFF, 0xEB, 0xC6, 0x9F, 0x28, 0xCE,\n0x3F, 0xD9, 0x36, 0xBC, 0xFC, 0xEB, 0x13, 0xA0, 0x31, 0x52, 0xE3, 0x6E, 0x30, 0xEF, 0x4A, 0xFE,\n0xBD, 0xE7, 0x00, 0x64, 0xF8, 0x6B, 0x5D, 0xF0, 0xAF, 0xBE, 0x6B, 0x28, 0x11, 0xFB, 0x37, 0x40,\n0x21, 0x04, 0x1A, 0x1C, 0x7F, 0x43, 0x0F, 0x03, 0xF6, 0x4F, 0x7A, 0x0E, 0xF1, 0x0F, 0xE3, 0x80,\n0x58, 0x00, 0xD2, 0x14, 0x96, 0x84, 0x60, 0x01, 0x1C, 0x98, 0x87, 0x62, 0x48, 0xDA, 0x6F, 0x11,\n0xFF, 0x87, 0x2C, 0xA6, 0x03, 0x3A, 0xFD, 0x6A, 0x04, 0x9A, 0xAA, 0x09, 0xD0, 0xCD, 0xB8, 0xBA,\n0x2E, 0xC6, 0xFF, 0xFC, 0xA3, 0x29, 0x76, 0x45, 0x0D, 0x8B, 0xE1, 0x2F, 0xD7, 0x43, 0x7E, 0xD9,\n0xA3, 0x00, 0x84, 0xE0, 0xFF, 0x8E, 0x4E, 0x88, 0x4A, 0xFE, 0x1D, 0x68, 0x28, 0x02, 0x73, 0x3F,\n0x58, 0x0F, 0x92, 0x77, 0xC3, 0xB5, 0xB1, 0x30, 0xFE, 0x87, 0xCD, 0xD3, 0x89, 0xE8, 0x04, 0x4C,\n0xFD, 0x5F, 0x95, 0xD9, 0x4A, 0x49, 0xE7, 0xAA, 0xE3, 0x75, 0x0D, 0x00, 0x1E, 0xC1, 0x03, 0x82,\n0x7F, 0x14, 0x80, 0xE9, 0x35, 0x35, 0x4B, 0x0D, 0x2B, 0x78, 0xA9, 0xAD, 0xC2, 0xB0, 0x58, 0x14,\n0xD7, 0xFF, 0x56, 0xCD, 0x0B, 0xFE, 0xA9, 0x9A, 0x08, 0xAC, 0x16, 0x80, 0xB4, 0x13, 0x2B, 0x40,\n0x36, 0x46, 0x58, 0xAA, 0x64, 0xCD, 0xCC, 0x27, 0x6E, 0x65, 0x53, 0x38, 0x2B, 0xFD, 0x5F, 0x10,\n0x80, 0xB7, 0x65, 0xF5, 0x17, 0x99, 0x03, 0xCD, 0x83, 0x00, 0x10, 0x1A, 0xD0, 0x03, 0x3E, 0x88,\n0x36, 0x59, 0xC4, 0x45, 0xFC, 0x1F, 0x59, 0x00, 0x42, 0x08, 0x48, 0xFC, 0x9F, 0x0A, 0x04, 0x74,\n0xD6, 0x39, 0xFD, 0xBC, 0x57, 0xA1, 0xC7, 0xBE, 0x24, 0x04, 0xE3, 0x7F, 0x24, 0x41, 0xC0, 0x06,\n0xFE, 0x30, 0x0E, 0xF8, 0x75, 0x8C, 0x7F, 0xE8, 0x04, 0x8B, 0xD4, 0xA2, 0x78, 0x17, 0x4D, 0xE4,\n0xF3, 0x60, 0x72, 0x77, 0x58, 0x6A, 0xC1, 0x9C, 0x7F, 0x28, 0x84, 0x60, 0x01, 0x70, 0x18, 0x80,\n0x3E, 0x3A, 0xA7, 0x7B, 0xDB, 0x14, 0x84, 0x09, 0x7F, 0x22, 0xB9, 0x36, 0x02, 0x56, 0x7A, 0xC0,\n0xFD, 0x61, 0x0F, 0x07, 0x08, 0x02, 0x9A, 0xFF, 0x93, 0x27, 0xF0, 0xCC, 0xE6, 0xCF, 0xDB, 0x85,\n0xF4, 0x8E, 0x6F, 0x28, 0xFF, 0xA0, 0x33, 0xF8, 0x3F, 0xA2, 0xF2, 0x0A, 0x30, 0x66, 0xFC, 0xF2,\n0x0B, 0x3A, 0xD5, 0x03, 0xBB, 0x3D, 0x4D, 0x37, 0xB1, 0x14, 0x78, 0x7E, 0x45, 0xA2, 0xAA, 0x7F,\n0xB4, 0x1C, 0x20, 0x86, 0x01, 0x23, 0x00, 0xF4, 0x2B, 0xE4, 0x1F, 0xFB, 0x69, 0xFA, 0x2D, 0x3C,\n0xA0, 0x1E, 0xD5, 0x4B, 0x42, 0x66, 0x1F, 0x13, 0x00, 0x92, 0xFE, 0x6F, 0xBD, 0x2E, 0x18, 0x2B,\n0xE0, 0x86, 0x25, 0x20, 0x55, 0x1C, 0x80, 0xFF, 0x24, 0xFF, 0x06, 0x9B, 0x0D, 0xC3, 0xB9, 0xE7,\n0x47, 0x8D, 0x02, 0x48, 0xB9, 0x2C, 0x18, 0xFE, 0x2F, 0x48, 0xC0, 0x3C, 0xA6, 0x3C, 0xC3, 0x1C,\n0x68, 0x3B, 0xC1, 0x7C, 0x87, 0x25, 0x21, 0xCA, 0x3F, 0x96, 0xA9, 0x13, 0x8C, 0xFE, 0x6F, 0x03,\n0x81, 0x2A, 0xC6, 0x3F, 0x8C, 0xAD, 0x2F, 0xF3, 0x42, 0x84, 0xE4, 0xFC, 0xCC, 0x95, 0x5C, 0x2A,\n0x03, 0xA7, 0xB9, 0xFF, 0xEB, 0xBD, 0x35, 0xBD, 0x1F, 0xFC, 0xA3, 0xC2, 0x02, 0x90, 0x28, 0x01,\n0x9D, 0x7B, 0xEE, 0xFE, 0xDC, 0x0B, 0xDE, 0xA0, 0x18, 0x9C, 0x6D, 0x1D, 0x9C, 0x1F, 0xA0, 0xF7,\n0x05, 0x60, 0x08, 0x02, 0xDA, 0x04, 0x40, 0x60, 0xCF, 0x66, 0xD7, 0xE4, 0xC6, 0x7D, 0xA0, 0x74,\n0xB0, 0xC1, 0x3F, 0x4E, 0x40, 0x4C, 0x00, 0x24, 0xAA, 0x17, 0x80, 0x68, 0xE3, 0x3D, 0xE1, 0x74,\n0x3B, 0xDD, 0x67, 0x04, 0xBC, 0xC0, 0x02, 0xE0, 0x08, 0x01, 0x81, 0x3C, 0x24, 0x76, 0xAA, 0x62,\n0x01, 0x1C, 0x49, 0xAF, 0x83, 0xD8, 0xD9, 0xB9, 0x8B, 0x9A, 0x1D, 0x7A, 0x2B, 0x3B, 0xBE, 0x86,\n0x13, 0xFE, 0x0F, 0x00, 0xE4, 0xFC, 0xAB, 0x6B, 0xC0, 0x1D, 0x95, 0xDF, 0xB7, 0x1F, 0x80, 0xEE,\n0x01, 0x93, 0xDE, 0x72, 0x02, 0xBA, 0xFF, 0x8B, 0x17, 0x80, 0xB9, 0x7C, 0x1C, 0x90, 0xF3, 0xEF,\n0xBD, 0xBC, 0x24, 0xC4, 0xFB, 0xBF, 0xC5, 0x0C, 0x18, 0x1F, 0x57, 0xC6, 0x74, 0x40, 0xE7, 0x1F,\n0x49, 0xFF, 0x9E, 0xA4, 0x39, 0xC1, 0x1F, 0x6A, 0xC1, 0xF3, 0x2B, 0x1E, 0xCB, 0x34, 0x0F, 0x03,\n0x0B, 0x55, 0xD5, 0xB1, 0x64, 0xD7, 0xE2, 0x38, 0xB4, 0x61, 0xAC, 0x0B, 0x27, 0xE0, 0x61, 0x44,\n0x98, 0x00, 0x18, 0x23, 0xA0, 0x51, 0xE9, 0xDC, 0x2B, 0x14, 0x09, 0x83, 0xE6, 0x09, 0x31, 0x60,\n0xA7, 0xBD, 0x60, 0xBF, 0x00, 0x74, 0x49, 0x3B, 0x1C, 0xF9, 0x26, 0x69, 0x13, 0x60, 0x16, 0xE7,\n0x5E, 0x4E, 0xD6, 0x30, 0x06, 0xFA, 0xF3, 0xDA, 0x10, 0x20, 0x4A, 0xC1, 0x27, 0x10, 0xF3, 0x80,\n0x87, 0x01, 0xAD, 0x2E, 0x00, 0x49, 0x76, 0xDA, 0xEC, 0x75, 0x7A, 0x61, 0xD5, 0xFC, 0xE5, 0xD2,\n0xB0, 0x4D, 0xC1, 0x04, 0xFF, 0x18, 0x01, 0xBF, 0xEC, 0xC5, 0x9F, 0x27, 0x16, 0xC0, 0xB1, 0xD4,\n0xEA, 0x87, 0x4C, 0x87, 0x49, 0x27, 0xEB, 0xD6, 0xAE, 0xD1, 0xCE, 0x36, 0x0C, 0x58, 0xFB, 0x18,\n0xF6, 0x2C, 0x2F, 0x00, 0x09, 0x02, 0x30, 0x8D, 0xFF, 0xD5, 0x15, 0xE0, 0x72, 0xE4, 0x4F, 0xB6,\n0xE1, 0x85, 0x11, 0x40, 0xA2, 0xF5, 0x00, 0xF8, 0xE9, 0xFB, 0x0F, 0x22, 0x61, 0xDB, 0xD0, 0x16,\n0x50, 0x01, 0x38, 0x58, 0xFF, 0x17, 0x93, 0x61, 0x24, 0x3F, 0xE6, 0xCA, 0xDF, 0x12, 0x02, 0xCA,\n0xC9, 0x76, 0xFF, 0x06, 0xEE, 0x93, 0xED, 0xD8, 0xC6, 0xA1, 0x47, 0x11, 0x25, 0xFE, 0xE1, 0x5C,\n0x6F, 0x20, 0x50, 0x77, 0x5F, 0x62, 0x02, 0x0C, 0x0B, 0xEB, 0x81, 0xB9, 0x3D, 0xD1, 0xA2, 0xC7,\n0xD4, 0x3A, 0x69, 0xA2, 0x3C, 0x0E, 0x28, 0x91, 0x27, 0xC8, 0x80, 0x7F, 0x4C, 0x67, 0xA2, 0x93,\n0x98, 0x72, 0x01, 0xD8, 0x10, 0x65, 0x99, 0x1C, 0x20, 0x48, 0x78, 0xA0, 0xA5, 0x10, 0xBF, 0x3A,\n0xA0, 0xAF, 0xF8, 0x40, 0x23, 0x1B, 0x4C, 0x20, 0x48, 0x28, 0x8F, 0x95, 0xDF, 0x06, 0x3F, 0xEF,\n0x86, 0x15, 0x41, 0x58, 0x9B, 0x64, 0x7D, 0xB3, 0x00, 0xFF, 0x38, 0x01, 0xE1, 0xFF, 0x88, 0xDC,\n0xFF, 0x65, 0x07, 0x78, 0x6D, 0xF8, 0xB3, 0x03, 0xB9, 0x6D, 0xFD, 0x61, 0xD1, 0xD4, 0xB2, 0x18,\n0xFF, 0xE3, 0xE3, 0x80, 0xFA, 0xF6, 0x72, 0x04, 0x62, 0x00, 0x90, 0xA6, 0x0F, 0x00, 0x5A, 0x18,\n0x07, 0x7D, 0xD8, 0x4F, 0x76, 0x30, 0x80, 0xB6, 0x24, 0x64, 0x47, 0x27, 0xC0, 0xF4, 0x3B, 0x40,\n0x5C, 0xD8, 0xE5, 0x9D, 0x86, 0x84, 0x8C, 0x98, 0x04, 0xA8, 0x94, 0x4C, 0x4F, 0xD3, 0x37, 0x39,\n0x66, 0xFD, 0xA1, 0xC2, 0x4F, 0xE3, 0x5F, 0x95, 0xB4, 0x8E, 0xDE, 0x0F, 0xC7, 0xDF, 0xB2, 0x7F,\n0x35, 0xFE, 0x2C, 0xD7, 0xD2, 0x60, 0xFE, 0x0F, 0x04, 0x04, 0xFF, 0xA8, 0x07, 0xCC, 0x0B, 0xE0,\n0xB0, 0x06, 0x78, 0x07, 0x76, 0x50, 0xEF, 0xC3, 0x0C, 0x2B, 0x31, 0x81, 0xA3, 0xA0, 0xB6, 0x27,\n0x19, 0x70, 0x5C, 0xE2, 0x14, 0xD4, 0x54, 0x5C, 0xE5, 0xCD, 0x5A, 0x0B, 0xDC, 0xC6, 0x84, 0x68,\n0x1B, 0xEB, 0x23, 0x21, 0x8F, 0x98, 0x5E, 0x82, 0x7F, 0x4C, 0xE0, 0x1F, 0x27, 0xE0, 0xE2, 0xF4,\n0x46, 0xF9, 0x76, 0x73, 0xAA, 0x61, 0x97, 0xED, 0xB3, 0x9D, 0xDE, 0x12, 0x56, 0xE9, 0x6D, 0xBF,\n0x53, 0x10, 0xB8, 0xE2, 0x00, 0x8D, 0x7C, 0x16, 0x0E, 0x41, 0x5C, 0x18, 0xE1, 0x54, 0x7F, 0xE9,\n0xC0, 0x62, 0x91, 0x9A, 0xFB, 0xCF, 0x6B, 0x4F, 0xBD, 0xD0, 0xBB, 0xC1, 0x3F, 0x26, 0xD4, 0x3F,\n0xA8, 0x6C, 0x01, 0x88, 0x06, 0x7F, 0x61, 0xC1, 0x3F, 0x3A, 0x64, 0x21, 0xFC, 0x0B, 0x4A, 0xD7,\n0x7F, 0xC4, 0xA4, 0x08, 0x4C, 0xA7, 0xA3, 0x72, 0xCE, 0x03, 0xA3, 0x7F, 0xBA, 0xF7, 0x91, 0xC1,\n0x0F, 0x6C, 0x01, 0x08, 0x00, 0xD8, 0x45, 0x14, 0xD5, 0xAD, 0xF2, 0xCF, 0xF6, 0x5D, 0x02, 0xD9,\n0xF0, 0x00, 0xAE, 0x5B, 0xE3, 0x5A, 0x34, 0xC2, 0x7A, 0x30, 0x5F, 0xB7, 0x19, 0x8F, 0x07, 0x10,\n0x86, 0xF7, 0x78, 0x28, 0xDC, 0x24, 0x3E, 0x64, 0x9B, 0x5C, 0x18, 0x01, 0x7F, 0xFE, 0x98, 0x07,\n0xDC, 0x82, 0xE7, 0xDB, 0x75, 0x08, 0xDA, 0x80, 0x60, 0xBE, 0x4F, 0x32, 0x0F, 0xB7, 0x6C, 0xCB,\n0xB9, 0x1A, 0x89, 0x8D, 0x51, 0x1A, 0x00, 0xE4, 0x61, 0x95, 0x92, 0xA5, 0x95, 0x39, 0xF2, 0x66,\n0xAD, 0x46, 0x75, 0x5B, 0x40, 0xA9, 0x3E, 0x24, 0xA4, 0xEB, 0xF1, 0xCB, 0xB3, 0xF1, 0xE1, 0x11,\n0x0F, 0xFD, 0xB2, 0xE0, 0x93, 0x38, 0x01, 0xED, 0x3A, 0xCD, 0x08, 0xE1, 0x9C, 0xA6, 0x85, 0xFD,\n0xE4, 0x40, 0xF6, 0x7A, 0xE3, 0x54, 0xBE, 0x04, 0x5D, 0x59, 0x07, 0x03, 0x88, 0x36, 0xF1, 0xCF,\n0xF5, 0xC5, 0x17, 0xDF, 0xAB, 0xBB, 0x3B, 0x97, 0xDF, 0xF2, 0xD6, 0x1A, 0xC4, 0x81, 0xCD, 0x0E,\n0x34, 0x0F, 0x08, 0xFE, 0x51, 0x1D, 0x8D, 0x0F, 0x63, 0x71, 0x78, 0x84, 0x57, 0x95, 0x6A, 0x29,\n0x13, 0xA0, 0x4B, 0x5D, 0x79, 0xAB, 0x1B, 0xEE, 0xB9, 0x9A, 0x4C, 0x9E, 0xC8, 0xBB, 0x3B, 0x0F,\n0xC5, 0xF6, 0x44, 0x62, 0x9F, 0x6E, 0x32, 0xB4, 0xB2, 0x9D, 0x99, 0x67, 0xDA, 0xD1, 0x34, 0xEC,\n0xC1, 0xF9, 0xA5, 0x9D, 0xE6, 0x2B, 0xF3, 0x00, 0x00, 0xE0, 0xF3, 0x4F, 0x57, 0xF2, 0xBE, 0x6E,\n0x75, 0xEB, 0x8A, 0x3B, 0x48, 0xDA, 0xEE, 0x56, 0x1F, 0xC5, 0x23, 0xEB, 0x79, 0x2C, 0xDF, 0x7F,\n0x1E, 0x8D, 0xE7, 0xCF, 0x3F, 0xFF, 0xFC, 0x79, 0x4C, 0x9F, 0xAF, 0xA1, 0xCD, 0x87, 0xD0, 0x8B,\n0xB0, 0xE2, 0xFC, 0xCB, 0x00, 0xB4, 0x56, 0xB6, 0xC6, 0x5E, 0x11, 0xF9, 0x21, 0x00, 0xC8, 0xF4,\n0xCD, 0xAB, 0xAD, 0xE3, 0xAD, 0x90, 0x66, 0x5B, 0xDB, 0x4F, 0x9E, 0x3D, 0x7B, 0xF6, 0x24, 0xA6,\n0xFD, 0x90, 0x26, 0x1A, 0xCB, 0xA5, 0x7C, 0x62, 0x7C, 0xF3, 0xD6, 0x8E, 0xD0, 0xBE, 0x99, 0x2F,\n0x97, 0x6F, 0x96, 0xD3, 0xBD, 0xB0, 0x5E, 0xFE, 0x2E, 0xC1, 0x64, 0x8F, 0x58, 0x03, 0x80, 0xE7,\n0x3F, 0x84, 0xF5, 0xC5, 0x17, 0x7F, 0x34, 0x02, 0x69, 0xB7, 0x94, 0x80, 0x51, 0x9D, 0x9F, 0x1C,\n0x85, 0x01, 0xF8, 0x32, 0xAC, 0xF1, 0x5E, 0x54, 0xD3, 0xE5, 0x64, 0x39, 0x2F, 0x63, 0xEE, 0xED,\n0x1B, 0x3D, 0xD0, 0xBD, 0xB5, 0x4B, 0x2F, 0xF0, 0x06, 0x4E, 0x81, 0x27, 0x51, 0x3D, 0x7B, 0xB2,\n0xBD, 0x15, 0xD2, 0xAE, 0x9C, 0xD3, 0xE5, 0x07, 0xE0, 0x9D, 0xE7, 0x9F, 0x56, 0x21, 0xF0, 0xA1,\n0x52, 0xEA, 0x19, 0xFB, 0xAC, 0xA7, 0xBA, 0x86, 0xF4, 0xE9, 0x63, 0xA1, 0x64, 0xDB, 0x0C, 0xE5,\n0xFB, 0x9B, 0x02, 0xB6, 0xCD, 0x50, 0xAC, 0xA3, 0x17, 0x9B, 0xF1, 0x88, 0x03, 0xF0, 0x01, 0x08,\n0x28, 0xBA, 0x43, 0x5C, 0x63, 0x6F, 0xF1, 0x5A, 0xA6, 0xC2, 0x3C, 0xFD, 0x26, 0x46, 0x40, 0x5D,\n0x11, 0x17, 0x24, 0xA0, 0x96, 0x41, 0x9E, 0x85, 0xF5, 0x64, 0x7F, 0x12, 0x45, 0xE0, 0x1B, 0x61,\n0x1B, 0x8F, 0xF9, 0x64, 0xA9, 0x73, 0x00, 0x63, 0x1A, 0x8F, 0x3F, 0x53, 0xBE, 0xB1, 0x30, 0x08,\n0x1E, 0x1D, 0x29, 0x2F, 0x68, 0xE8, 0xC3, 0xC4, 0xA1, 0x05, 0x68, 0xF5, 0x93, 0xF6, 0x7F, 0x15,\n0x6F, 0xBA, 0xF1, 0xF8, 0x1E, 0x04, 0x64, 0x4F, 0x7B, 0x7E, 0x1A, 0x25, 0xE0, 0xD1, 0xD1, 0xEF,\n0x09, 0xF0, 0x24, 0x25, 0xC6, 0x9F, 0x85, 0x09, 0x78, 0x7D, 0xBD, 0x7C, 0xB3, 0x42, 0xC0, 0xA5,\n0xB7, 0xF9, 0xE6, 0x3C, 0xDD, 0x9C, 0x4C, 0x42, 0x6F, 0xBF, 0x31, 0xF2, 0x59, 0x58, 0xBA, 0x06,\n0x38, 0xA4, 0xE3, 0x2D, 0x29, 0x81, 0x14, 0x00, 0xEC, 0xF2, 0x5E, 0x5C, 0xB7, 0x18, 0xA8, 0x93,\n0x0D, 0xE6, 0x8E, 0xE8, 0x81, 0x3C, 0xE0, 0x73, 0xDD, 0x3E, 0x8F, 0x04, 0x34, 0xB4, 0x05, 0x8C,\n0x93, 0x72, 0x78, 0x02, 0xBE, 0x96, 0x14, 0xCA, 0xB1, 0x10, 0x3D, 0xFD, 0x46, 0x09, 0x48, 0x10,\n0x88, 0xAF, 0xC9, 0x8C, 0x11, 0xF0, 0x78, 0x43, 0x26, 0xE1, 0x3F, 0x09, 0x3A, 0x40, 0x25, 0xE0,\n0xFE, 0x24, 0x92, 0xA2, 0xF9, 0xB2, 0x37, 0x52, 0xF3, 0x46, 0xF8, 0x17, 0x26, 0xA0, 0xB8, 0x9A,\n0xF1, 0xCB, 0x90, 0x8E, 0x54, 0x41, 0xFF, 0x77, 0x7A, 0x1E, 0xF2, 0x80, 0xC6, 0x3F, 0xC9, 0x3F,\n0x04, 0x81, 0x5C, 0xE9, 0x7B, 0x92, 0x42, 0x3A, 0x3D, 0x3F, 0x8F, 0xFA, 0x3F, 0x55, 0xD0, 0xFF,\n0x8D, 0x41, 0x40, 0x8A, 0x3F, 0xC9, 0xEA, 0xFD, 0xA9, 0x76, 0xE6, 0xFF, 0x8C, 0x80, 0x81, 0x14,\n0xFE, 0x85, 0xFD, 0x9F, 0x5D, 0x0F, 0x30, 0xD8, 0x5D, 0xB1, 0xAB, 0x20, 0x94, 0x5D, 0x60, 0x11,\n0xDA, 0xA0, 0xA4, 0xD7, 0x9B, 0xFC, 0x9F, 0x34, 0xB8, 0x37, 0xCA, 0xBF, 0x50, 0x6B, 0x26, 0x30,\n0xB2, 0x59, 0x6C, 0xF2, 0x00, 0xFF, 0x1E, 0x80, 0x80, 0x71, 0x4A, 0xAE, 0x49, 0x40, 0xAA, 0xD7,\n0x0A, 0xC0, 0x0F, 0x39, 0x01, 0xD3, 0x44, 0xC0, 0xA7, 0x4F, 0x9F, 0x7E, 0x1C, 0x01, 0xE0, 0x6C,\n0x06, 0x02, 0x32, 0xFE, 0x09, 0x00, 0xD7, 0x22, 0xA0, 0xF6, 0x6F, 0x69, 0x4E, 0x12, 0x01, 0xEF,\n0x7F, 0x9C, 0x26, 0x4B, 0x95, 0x1F, 0xE5, 0x9F, 0xA9, 0xFF, 0xD3, 0x4F, 0x60, 0xE4, 0x83, 0x6A,\n0xDF, 0x0F, 0x22, 0xCD, 0xEF, 0x09, 0x71, 0xDE, 0xDA, 0x86, 0x36, 0xED, 0x92, 0x22, 0x16, 0xF0,\n0x7C, 0x71, 0x2E, 0x0E, 0x2C, 0x06, 0x40, 0xC5, 0x9A, 0x99, 0xC0, 0x4E, 0xFD, 0x01, 0x77, 0x98,\n0x1E, 0x18, 0x23, 0xA0, 0x10, 0x58, 0x22, 0xC4, 0x3F, 0x13, 0xFE, 0xC9, 0x7A, 0x50, 0xB7, 0xB6,\n0xC9, 0xEB, 0xF4, 0x99, 0x30, 0x30, 0x04, 0xC0, 0xF4, 0x16, 0xCC, 0xEB, 0x80, 0x03, 0x94, 0x9C,\n0x18, 0xFF, 0xA2, 0x04, 0x5C, 0x93, 0x7F, 0x1B, 0x31, 0x02, 0xE6, 0x69, 0x30, 0x85, 0x03, 0x14,\n0xD2, 0xE8, 0xE6, 0xBB, 0x98, 0x7C, 0x04, 0xD0, 0xF0, 0x77, 0xAB, 0x19, 0x14, 0xE8, 0x96, 0xF6,\n0xF5, 0x31, 0xE8, 0x27, 0x2D, 0xA7, 0x5F, 0x1C, 0x80, 0x9F, 0xAF, 0xAF, 0x21, 0x0D, 0x20, 0x62,\n0x60, 0x7D, 0xA8, 0x08, 0x0C, 0x10, 0xF0, 0xB5, 0x4C, 0x81, 0x16, 0x0B, 0x18, 0x22, 0xE0, 0x2C,\n0x4F, 0x19, 0x0D, 0xFA, 0xBF, 0x6D, 0x10, 0x90, 0xEB, 0xD9, 0xFE, 0x24, 0xE2, 0xFF, 0x40, 0xC0,\n0x09, 0x3E, 0x4D, 0x38, 0x92, 0x94, 0x6D, 0xA2, 0xFE, 0x2F, 0x4C, 0xC0, 0x71, 0x92, 0x10, 0xD0,\n0x3F, 0xE6, 0xD6, 0xE2, 0x08, 0xB7, 0x5D, 0xB4, 0xA8, 0x7A, 0x72, 0x7E, 0x9E, 0xF8, 0x13, 0xE1,\n0x5F, 0x56, 0xAB, 0x0B, 0x6C, 0x10, 0x84, 0xFF, 0x0B, 0x5A, 0x40, 0xFB, 0xCF, 0x87, 0x3C, 0xE0,\n0x91, 0x0B, 0xB8, 0x3B, 0xB2, 0xAC, 0x8F, 0xD5, 0xFE, 0x89, 0x5E, 0xEE, 0x25, 0xFD, 0xD6, 0xB3,\n0xBB, 0xCE, 0x5A, 0x19, 0x07, 0x5C, 0x75, 0x80, 0x7A, 0xC7, 0x24, 0x69, 0x1D, 0xFE, 0x3D, 0x23,\n0xA1, 0xFD, 0x5F, 0x8B, 0x8D, 0x63, 0x7E, 0xAE, 0xCE, 0x70, 0x25, 0xD4, 0xD2, 0x01, 0x3E, 0xC7,\n0x16, 0x13, 0xBA, 0xBF, 0x0D, 0xF6, 0x31, 0x04, 0xF6, 0x6F, 0xCA, 0x36, 0x3D, 0x10, 0xBE, 0xB1,\n0xF4, 0x18, 0xD2, 0x01, 0x42, 0x03, 0xFB, 0xBF, 0xE1, 0x3D, 0xA0, 0xC2, 0x0F, 0x1E, 0x90, 0xF8,\n0x3F, 0x89, 0x18, 0x01, 0x3F, 0x10, 0x00, 0x82, 0x80, 0x9C, 0x7F, 0x46, 0xC0, 0x67, 0x61, 0x0F,\n0x68, 0x0E, 0x8F, 0xDA, 0x3F, 0x13, 0x3E, 0x4A, 0xD6, 0x88, 0x70, 0x53, 0xD2, 0xF8, 0x07, 0x02,\n0xFE, 0xD6, 0xDA, 0xCC, 0xFF, 0x99, 0xFD, 0xFB, 0x4C, 0xB7, 0x66, 0x1D, 0xC4, 0x39, 0x00, 0x11,\n0xA4, 0x9C, 0x08, 0xFE, 0x72, 0xC6, 0xFC, 0x9F, 0xA9, 0x61, 0x01, 0x51, 0x02, 0x49, 0x06, 0x50,\n0x33, 0xE0, 0xFF, 0x54, 0xC6, 0xE0, 0xA3, 0x10, 0xFF, 0x40, 0xC0, 0x36, 0x04, 0xC7, 0x22, 0xF7,\n0x80, 0x4D, 0xF8, 0x95, 0xFC, 0xD3, 0x71, 0xC0, 0xAE, 0x7E, 0x30, 0xF6, 0xCE, 0x3F, 0xEA, 0x01,\n0xC1, 0x3F, 0x8A, 0xC0, 0xE4, 0xFF, 0x24, 0xE0, 0x01, 0x09, 0xFF, 0x40, 0x40, 0x38, 0x40, 0x6C,\n0x51, 0xA9, 0xF5, 0x53, 0x02, 0x5A, 0x99, 0xD8, 0x33, 0xAE, 0xF7, 0x09, 0x02, 0x25, 0x1D, 0x82,\n0x84, 0x7D, 0x04, 0x81, 0xDC, 0xFF, 0x71, 0x02, 0x0E, 0xEF, 0x02, 0x07, 0x34, 0x81, 0x86, 0xBF,\n0x88, 0x07, 0x7C, 0xAD, 0xEC, 0xF3, 0xE4, 0x0B, 0xE1, 0x5C, 0xEC, 0x9C, 0xB2, 0x93, 0x0F, 0x1E,\n0x70, 0x20, 0x02, 0xDE, 0x97, 0x8E, 0x9C, 0x03, 0x79, 0x16, 0xF8, 0x48, 0xCD, 0xAF, 0x4D, 0x5F,\n0x59, 0x4B, 0xFD, 0x9F, 0xDA, 0x1A, 0x93, 0x96, 0x38, 0x6C, 0xAB, 0x5B, 0xF8, 0x3F, 0x4E, 0x40,\n0x25, 0xCE, 0x0F, 0x06, 0x1F, 0xEB, 0x82, 0x86, 0xF9, 0x97, 0xC7, 0x01, 0xBB, 0x52, 0x64, 0xFD,\n0x5F, 0x88, 0xFB, 0xBF, 0x45, 0xD0, 0x03, 0x1E, 0xD5, 0x04, 0x04, 0xF8, 0xF2, 0x96, 0x76, 0x82,\n0x3D, 0x79, 0xA5, 0x24, 0xA5, 0x09, 0xF4, 0x7F, 0xE1, 0x01, 0x57, 0x0D, 0x60, 0xE1, 0x00, 0x27,\n0x10, 0x23, 0xE0, 0x13, 0x88, 0x00, 0x50, 0x26, 0x57, 0xDD, 0x45, 0xAF, 0x07, 0x94, 0x1F, 0x56,\n0x17, 0x43, 0xA8, 0x1C, 0x60, 0x58, 0xE2, 0xFD, 0x6E, 0x65, 0x13, 0x81, 0x7C, 0x71, 0x05, 0xED,\n0x9F, 0x6D, 0xC6, 0xB6, 0x4F, 0x3B, 0xD3, 0xF8, 0x87, 0x20, 0xF6, 0xEF, 0xE1, 0x09, 0x18, 0xC7,\n0x63, 0x4C, 0xDC, 0x03, 0x02, 0x7E, 0x7A, 0xD8, 0x43, 0xC0, 0x0F, 0xEF, 0xF3, 0x4F, 0x09, 0xF8,\n0x8A, 0xF9, 0x3F, 0x57, 0x7F, 0x2D, 0x58, 0xFE, 0xF0, 0x02, 0x81, 0xFB, 0x51, 0x0F, 0xA8, 0xA5,\n0x60, 0xE6, 0xFF, 0x5C, 0x6F, 0x4A, 0xF0, 0x99, 0xE6, 0xD6, 0x28, 0x18, 0xEF, 0x7F, 0xFA, 0x96,\n0x53, 0xCE, 0x3F, 0xB7, 0x35, 0x18, 0x07, 0xF4, 0x06, 0x02, 0xFF, 0x02, 0x1E, 0xD0, 0xE8, 0x93,\n0xF2, 0xE4, 0x9C, 0xF3, 0xAF, 0xF4, 0x80, 0xD2, 0x54, 0xAD, 0xED, 0xD3, 0x43, 0x72, 0xF2, 0xFE,\n0xAF, 0xA5, 0xC6, 0x11, 0xC3, 0x1F, 0x54, 0xB9, 0x5E, 0x10, 0xD1, 0xFC, 0x1F, 0x3C, 0xE0, 0x5E,\n0x9F, 0xF0, 0xF7, 0x47, 0x05, 0x07, 0xB8, 0x52, 0xAA, 0xCA, 0xFD, 0x5F, 0x88, 0xF0, 0xAF, 0x38,\n0x91, 0xFA, 0xFC, 0xDF, 0xFE, 0x36, 0x00, 0xD8, 0x4F, 0xC0, 0x63, 0xE1, 0x5F, 0x4D, 0xC0, 0x77,\n0xFE, 0x9A, 0x01, 0x54, 0xFF, 0x27, 0xBA, 0x75, 0xFA, 0x65, 0x23, 0x18, 0x17, 0xB1, 0x7F, 0x16,\n0xDA, 0x28, 0x04, 0xBB, 0x0D, 0x20, 0xE8, 0x17, 0xF0, 0x80, 0x36, 0x03, 0xE6, 0xED, 0xF1, 0x80,\n0x03, 0x59, 0x40, 0x2B, 0x00, 0xC3, 0x01, 0x7E, 0xA8, 0x04, 0x6C, 0x15, 0x80, 0xB5, 0x03, 0x8C,\n0x7C, 0x2A, 0xF3, 0x9C, 0x63, 0xFC, 0x43, 0x21, 0x84, 0xF0, 0x6F, 0x6D, 0x02, 0x12, 0x00, 0x42,\n0x3E, 0x0C, 0x58, 0x39, 0xC0, 0x37, 0x89, 0x7F, 0xE8, 0x04, 0x4F, 0x09, 0xFF, 0x8C, 0x81, 0x9A,\n0x7B, 0xEA, 0x01, 0xEF, 0xA1, 0xEF, 0x48, 0x13, 0xBB, 0x20, 0x01, 0x75, 0xFE, 0xCB, 0x81, 0x38,\n0x2F, 0x10, 0x88, 0xF1, 0x0F, 0x12, 0xD4, 0x79, 0xC1, 0xA3, 0x6C, 0xAD, 0xFF, 0x5B, 0xAA, 0x77,\n0x02, 0x20, 0xFE, 0xE3, 0x92, 0xD4, 0xFF, 0x41, 0x85, 0xE5, 0x33, 0xF2, 0x01, 0x86, 0xE2, 0xFF,\n0xEC, 0x45, 0x92, 0x46, 0xD4, 0x26, 0xE0, 0x6F, 0xA9, 0x00, 0x0C, 0x2D, 0x57, 0x08, 0x78, 0xFF,\n0x3D, 0x7B, 0xF3, 0x27, 0x77, 0x67, 0xF0, 0x1A, 0x49, 0x15, 0x84, 0x71, 0x37, 0x2A, 0x2C, 0x0E,\n0x46, 0x04, 0x65, 0x61, 0x11, 0x3C, 0x85, 0xB9, 0x64, 0x60, 0x2F, 0x42, 0x24, 0x78, 0x08, 0x39,\n0x2C, 0x2E, 0xC4, 0x80, 0x5E, 0x5C, 0x46, 0x08, 0xF4, 0x1E, 0xF7, 0x18, 0x84, 0x3D, 0x7B, 0xF0,\n0xE0, 0x3F, 0xE0, 0x5E, 0x72, 0x92, 0x3E, 0x78, 0xF4, 0xA2, 0xFF, 0x9E, 0x55, 0xD5, 0x5D, 0x7E,\n0x79, 0xA9, 0xAE, 0xFE, 0x6A, 0x76, 0x3B, 0x24, 0xEB, 0x57, 0xAF, 0x5F, 0xBF, 0x19, 0x47, 0x89,\n0x93, 0xCE, 0x6F, 0xBE, 0xF7, 0xAA, 0x5E, 0xCF, 0x99, 0x8A, 0x7B, 0xC0, 0xC8, 0xBF, 0x39, 0xFF,\n0x67, 0x13, 0x60, 0x20, 0x30, 0xC7, 0x5F, 0x76, 0x43, 0xD4, 0x14, 0x7F, 0x95, 0x29, 0xB0, 0xAA,\n0x84, 0xBE, 0x3A, 0x02, 0xE1, 0xFE, 0x00, 0x41, 0x39, 0xA4, 0x23, 0x13, 0x60, 0x7D, 0xF0, 0xA4,\n0x6C, 0x00, 0x3F, 0xB9, 0x1D, 0x02, 0xD6, 0xD9, 0xB8, 0x88, 0x07, 0xC4, 0xFC, 0x77, 0xE8, 0x52,\n0x0F, 0x28, 0x3B, 0x40, 0x40, 0x3F, 0xE2, 0x01, 0xC3, 0x2D, 0xF1, 0xA5, 0x7A, 0x94, 0xF1, 0xCF,\n0x09, 0xB8, 0x5A, 0xC2, 0x03, 0x9E, 0xDD, 0x50, 0x67, 0x86, 0x2F, 0x3A, 0xC0, 0xFF, 0xFC, 0xDF,\n0xA9, 0xB5, 0xF9, 0x62, 0x18, 0xD8, 0x3F, 0xE9, 0x54, 0x31, 0x01, 0xEC, 0x38, 0x08, 0x9A, 0x2B,\n0x80, 0xB1, 0xF0, 0x36, 0xE3, 0x01, 0x47, 0xEC, 0x81, 0x6A, 0x20, 0x5E, 0x30, 0x80, 0xE3, 0x0B,\n0xD0, 0xE6, 0xFC, 0x1F, 0xF8, 0x6B, 0x3F, 0x41, 0x4E, 0xEB, 0x20, 0xFB, 0x9F, 0xBD, 0xC2, 0xFC,\n0xD7, 0x42, 0x07, 0xFE, 0x51, 0x11, 0x3C, 0xE0, 0x6B, 0x9C, 0x07, 0x3D, 0x07, 0xFB, 0x60, 0x01,\n0x11, 0xD6, 0xC6, 0xE1, 0xD9, 0x4D, 0x31, 0xFE, 0x71, 0x04, 0xCA, 0xC5, 0x36, 0xE2, 0x0F, 0x1E,\n0x90, 0xF9, 0x3F, 0x97, 0x17, 0xC3, 0xBC, 0x47, 0x0C, 0x60, 0x82, 0x37, 0xAC, 0xFF, 0x55, 0x1D,\n0x60, 0xDD, 0x00, 0x62, 0x0A, 0x3C, 0x7A, 0x40, 0xE7, 0x5C, 0x92, 0xFF, 0xF5, 0x90, 0x36, 0x8B,\n0xBF, 0xFB, 0x64, 0x01, 0x97, 0x59, 0x06, 0x1C, 0xA0, 0xD7, 0x60, 0x30, 0xF3, 0x7F, 0x96, 0xFF,\n0x40, 0x03, 0x01, 0x73, 0xFE, 0x71, 0x0F, 0x68, 0x0B, 0xCF, 0x08, 0x52, 0x0C, 0x53, 0x26, 0x60,\n0x94, 0x31, 0x2F, 0x38, 0x40, 0xE7, 0x1F, 0x28, 0xA8, 0x04, 0x0C, 0xE9, 0x0F, 0x93, 0x61, 0xCF,\n0x57, 0xB5, 0x2C, 0xBE, 0x75, 0xE2, 0x0D, 0xEB, 0x7E, 0x40, 0x60, 0x04, 0xC5, 0x37, 0x99, 0x01,\n0xFC, 0x5D, 0xF1, 0x83, 0xA6, 0x07, 0xF3, 0x7F, 0xD0, 0xC8, 0xBC, 0xB8, 0x04, 0x18, 0x5E, 0x98,\n0x7B, 0xC0, 0xA7, 0x23, 0x7E, 0xD1, 0x38, 0xFF, 0xA0, 0x64, 0x05, 0xC0, 0xAC, 0x9F, 0x76, 0x89,\n0x07, 0x04, 0x04, 0x07, 0xFF, 0x77, 0xDA, 0x12, 0xF0, 0xAC, 0xA9, 0x83, 0x46, 0x01, 0x60, 0xD0,\n0xCE, 0xFC, 0x8B, 0x81, 0x4B, 0x8F, 0x11, 0x10, 0xFC, 0x03, 0x01, 0xDF, 0xD2, 0x01, 0x1A, 0xF3,\n0xCA, 0xE0, 0xAB, 0x1B, 0x40, 0x43, 0x1F, 0x26, 0xC0, 0xE2, 0xFE, 0x1C, 0x78, 0xDA, 0x4B, 0x80,\n0x7F, 0x21, 0x96, 0xCC, 0x80, 0x40, 0x0B, 0xFA, 0xBF, 0x25, 0x53, 0xC1, 0x8E, 0x3D, 0xE0, 0x2F,\n0x4D, 0x05, 0x0B, 0xF2, 0x22, 0x01, 0x19, 0xFF, 0x20, 0xE2, 0xFF, 0x10, 0x3B, 0x11, 0xF0, 0x8C,\n0xF8, 0x3F, 0xA8, 0x07, 0xFB, 0xAE, 0x39, 0x40, 0xF8, 0x3F, 0x11, 0x29, 0x86, 0x19, 0xFD, 0x9F,\n0x1C, 0x18, 0x58, 0x31, 0x8C, 0x33, 0x00, 0xC3, 0x29, 0xA5, 0x09, 0xE0, 0x96, 0x3F, 0xA9, 0x07,\n0x04, 0xCA, 0xAE, 0x09, 0xCC, 0x43, 0x2F, 0x0D, 0xAF, 0xB5, 0x66, 0xE3, 0xCC, 0xFF, 0x3D, 0xBD,\n0xC9, 0x3F, 0xA4, 0x82, 0x39, 0xFF, 0x60, 0x7E, 0x21, 0x79, 0x68, 0xD8, 0xB3, 0xB6, 0x81, 0x07,\n0x6C, 0xC0, 0x97, 0xFA, 0x3F, 0x78, 0xC0, 0x36, 0x0B, 0x0C, 0xFF, 0xC7, 0x09, 0x98, 0x14, 0x40,\n0xCF, 0x26, 0x80, 0x11, 0x29, 0x01, 0x71, 0x55, 0xB7, 0x04, 0x7C, 0x8F, 0xE0, 0x2F, 0x05, 0x60,\n0x93, 0x01, 0x59, 0xB0, 0x18, 0xC6, 0xE1, 0x07, 0x0C, 0x8A, 0x0C, 0x77, 0x40, 0x9F, 0xB5, 0xC9,\n0x58, 0x14, 0x7F, 0xD0, 0x3D, 0xB5, 0x80, 0xC6, 0x3C, 0x98, 0x40, 0xA4, 0x82, 0xE3, 0xFA, 0xDF,\n0x24, 0x01, 0xCF, 0x09, 0xFF, 0x20, 0xE2, 0xFF, 0x10, 0x6F, 0x4F, 0xC0, 0x49, 0xF9, 0x7C, 0xAA,\n0x71, 0x80, 0xBF, 0x42, 0x8C, 0x80, 0xE3, 0x9C, 0xCE, 0x1D, 0xCD, 0x78, 0x1A, 0x9D, 0x9F, 0x6B,\n0x70, 0x82, 0x10, 0x23, 0x20, 0xA8, 0x83, 0x96, 0x14, 0x44, 0x37, 0xE4, 0x7B, 0x05, 0x02, 0xC6,\n0x05, 0xC0, 0xE8, 0xFF, 0xF2, 0x75, 0x40, 0xC7, 0x2F, 0x9A, 0x44, 0xC9, 0xFF, 0x81, 0x80, 0x21,\n0x03, 0x8E, 0x54, 0xF9, 0x21, 0x3C, 0xE0, 0x71, 0x9A, 0x00, 0x39, 0xB5, 0x2E, 0x21, 0x20, 0x4C,\n0xFB, 0xD9, 0xA4, 0xEA, 0x05, 0xD0, 0xDC, 0xFF, 0xC1, 0x03, 0x52, 0xFE, 0x81, 0x80, 0x70, 0x80,\n0x54, 0x71, 0x0A, 0x6C, 0xD4, 0x5B, 0xDA, 0x02, 0x0A, 0xE1, 0xDC, 0xF9, 0xB5, 0xC9, 0x10, 0x63,\n0x1F, 0x47, 0xE0, 0xA2, 0x13, 0x60, 0x68, 0x71, 0xFF, 0xB7, 0xBB, 0x07, 0xA4, 0xFE, 0xCF, 0x3A,\n0x78, 0xC0, 0x50, 0x00, 0x18, 0x5B, 0x9C, 0x04, 0x9F, 0x5B, 0x02, 0x24, 0x6A, 0x9B, 0x15, 0xC0,\n0x2C, 0xEE, 0x01, 0xCF, 0xA0, 0xA9, 0x5C, 0xB0, 0xCA, 0xCE, 0x3D, 0xFC, 0x9F, 0x74, 0x84, 0x80,\n0xFE, 0xF7, 0x2C, 0x87, 0x97, 0x02, 0x5A, 0x17, 0x4A, 0x40, 0xBE, 0x49, 0x95, 0x2D, 0x00, 0xB6,\n0x04, 0x4A, 0xB6, 0x84, 0x0C, 0x24, 0x93, 0x80, 0x40, 0xC0, 0x76, 0x01, 0x10, 0xDC, 0xB3, 0x86,\n0x7F, 0x71, 0x7A, 0x03, 0x08, 0x47, 0x20, 0xF8, 0x97, 0x13, 0x10, 0xFA, 0x46, 0xDE, 0x17, 0xA4,\n0xCA, 0xE3, 0x3A, 0x60, 0x2C, 0x80, 0x89, 0x6A, 0x96, 0x00, 0x2D, 0x81, 0xD5, 0x9F, 0x25, 0xA2,\n0xFC, 0x83, 0xA8, 0xFF, 0x83, 0x07, 0xE4, 0x13, 0x60, 0x94, 0x03, 0xBE, 0x57, 0x33, 0x80, 0x60,\n0x1C, 0x66, 0xC0, 0x0B, 0x68, 0x26, 0x03, 0xD2, 0x8C, 0x1C, 0x7D, 0x38, 0x65, 0x21, 0x2D, 0x4B,\n0x00, 0xFF, 0xCF, 0xD6, 0x01, 0x1D, 0x7B, 0x71, 0x1D, 0xB0, 0x4D, 0x05, 0xA3, 0x00, 0x90, 0x13,\n0x30, 0xFA, 0xBF, 0xBC, 0x18, 0xC6, 0xFC, 0x5F, 0x8C, 0x9D, 0xCB, 0x01, 0xB9, 0xFF, 0x03, 0x01,\n0x31, 0x0F, 0x3E, 0xEB, 0x7E, 0x0D, 0x3A, 0x4D, 0x08, 0x38, 0xD2, 0x4E, 0x04, 0x10, 0x6E, 0xB0,\n0x25, 0x04, 0x39, 0x50, 0x19, 0xE4, 0x9A, 0x2E, 0x80, 0x0E, 0xF4, 0x99, 0x2A, 0x07, 0xF4, 0xFA,\n0x97, 0x28, 0x63, 0x1E, 0x52, 0x21, 0xE0, 0x5F, 0xAB, 0xC9, 0x44, 0x48, 0x64, 0xDF, 0x48, 0x64,\n0xCE, 0x3F, 0xC8, 0xBD, 0xAF, 0x76, 0x3E, 0xFF, 0x45, 0xBE, 0x68, 0x33, 0xE7, 0x01, 0xF1, 0xB6,\n0x7B, 0xE7, 0x12, 0xE4, 0xC1, 0x01, 0xAA, 0xCE, 0x32, 0xED, 0xC0, 0xBF, 0x6C, 0x03, 0x48, 0x8C,\n0x0F, 0x4F, 0xB2, 0x02, 0xE8, 0xE8, 0x01, 0xE1, 0x00, 0xEF, 0x44, 0xD1, 0x00, 0x7A, 0x06, 0xC4,\n0xE2, 0xDA, 0xA8, 0xC9, 0xFC, 0xCE, 0x43, 0x90, 0xF8, 0xBF, 0x3B, 0xF0, 0x80, 0x8F, 0x97, 0xF5,\n0x80, 0xD1, 0xFF, 0x01, 0x86, 0x71, 0x1D, 0xF0, 0x47, 0xF7, 0x7F, 0xB1, 0x05, 0x02, 0x6E, 0x01,\n0xC0, 0x48, 0xC0, 0x47, 0xC4, 0xFF, 0x21, 0x76, 0x20, 0xE0, 0x19, 0xE7, 0x1F, 0x66, 0xC1, 0x70,\n0x80, 0x5D, 0xF0, 0x7F, 0xA9, 0x07, 0xFC, 0xB5, 0xFD, 0x93, 0xB6, 0x81, 0x3D, 0x36, 0x0A, 0x5A,\n0x31, 0x0C, 0x6C, 0xE0, 0x9C, 0x5A, 0xFE, 0x19, 0x6F, 0x62, 0xB3, 0x98, 0xF0, 0x7F, 0xD0, 0x2B,\n0xEF, 0xE1, 0x01, 0xD1, 0x4D, 0x1A, 0xC0, 0x69, 0x02, 0xC2, 0x7F, 0xB6, 0x0D, 0x5B, 0x42, 0xC0,\n0x3F, 0x46, 0x40, 0x14, 0x00, 0x62, 0xAD, 0x54, 0xCE, 0xED, 0x3A, 0x60, 0xE0, 0x5F, 0x2E, 0xF1,\n0xE7, 0xD7, 0x17, 0x2D, 0xCE, 0x72, 0x85, 0x04, 0xC8, 0x8C, 0x6E, 0xFA, 0x3F, 0x4A, 0xC0, 0x9C,\n0x7F, 0xF0, 0x80, 0xEF, 0xBD, 0x09, 0xFE, 0xD4, 0x11, 0x2E, 0xA3, 0xF7, 0x6F, 0x12, 0xB0, 0xB5,\n0x7E, 0x16, 0xBE, 0x6B, 0x04, 0xDC, 0xB3, 0x96, 0xDF, 0x19, 0x66, 0x72, 0x01, 0xF0, 0x7F, 0xB6,\n0x0E, 0x08, 0xE4, 0xA1, 0x9B, 0xF2, 0x80, 0x5A, 0x00, 0x33, 0x03, 0x40, 0x10, 0x10, 0x05, 0x80,\n0xC4, 0x03, 0x12, 0xFE, 0xBD, 0xD5, 0xA6, 0xB8, 0x59, 0xF5, 0x30, 0x80, 0xFD, 0x9F, 0xD1, 0xFE,\n0x65, 0x1E, 0x10, 0xFE, 0xEF, 0xD0, 0x0E, 0xCC, 0xEB, 0x4C, 0x09, 0xFF, 0xA8, 0x07, 0xFC, 0x0D,\n0xC8, 0x89, 0x89, 0x58, 0x9A, 0x00, 0x81, 0xB0, 0x06, 0x08, 0xFF, 0x97, 0x28, 0xFA, 0x3F, 0xEB,\n0x22, 0x05, 0x2F, 0xB8, 0x01, 0x84, 0x14, 0x7D, 0x63, 0x43, 0xFD, 0x8B, 0xAF, 0xFF, 0xF9, 0xF9,\n0x30, 0xA4, 0x82, 0x3D, 0xEF, 0x9E, 0x78, 0xC0, 0x1E, 0x0E, 0x10, 0xFE, 0x8F, 0x10, 0x90, 0xF1,\n0x2F, 0x6C, 0x00, 0xC9, 0xE3, 0x24, 0x14, 0x00, 0x26, 0xDA, 0xBE, 0x37, 0xF8, 0xAE, 0x5D, 0xB4,\n0x34, 0x06, 0x81, 0x3F, 0xF8, 0x3E, 0xD0, 0x0F, 0x4B, 0x82, 0x28, 0x01, 0x64, 0xF1, 0x84, 0xF0,\n0x6F, 0xE9, 0x72, 0xC0, 0x3A, 0x0E, 0x17, 0x2A, 0x07, 0x74, 0xD4, 0x25, 0xEB, 0x80, 0x28, 0x07,\n0x44, 0x02, 0x24, 0x6B, 0x4E, 0x40, 0xF0, 0x2F, 0x93, 0x5C, 0x4B, 0xB3, 0x09, 0xE0, 0xB7, 0xDE,\n0x12, 0x72, 0x46, 0x34, 0x4E, 0xA8, 0xB0, 0x01, 0xE4, 0x14, 0x1D, 0x40, 0x78, 0x93, 0x80, 0xDF,\n0xC2, 0xD6, 0x20, 0x0D, 0xAC, 0x9D, 0x71, 0x71, 0xA3, 0x95, 0x70, 0xBE, 0x25, 0x8C, 0x28, 0x24,\n0x80, 0x73, 0x17, 0x18, 0x37, 0x80, 0x44, 0x13, 0x08, 0x00, 0xFA, 0x81, 0x57, 0x05, 0x03, 0x68,\n0x83, 0xE0, 0xFF, 0xFC, 0x47, 0x88, 0xC9, 0x68, 0x78, 0xC0, 0x6F, 0x88, 0x0C, 0xFF, 0x5E, 0xFF,\n0x07, 0x8F, 0x8C, 0x5C, 0x08, 0x3E, 0x2F, 0xA8, 0xFF, 0x83, 0xA4, 0x48, 0x33, 0x6C, 0x80, 0xE3,\n0xB3, 0x60, 0x36, 0x75, 0x08, 0x1B, 0x40, 0x92, 0x00, 0x01, 0x51, 0x00, 0x98, 0x68, 0x5C, 0x03,\n0xAC, 0x6B, 0x59, 0x02, 0x02, 0x7F, 0x8A, 0x3A, 0x3B, 0x6E, 0x58, 0x3F, 0x40, 0x50, 0x66, 0xC7,\n0xD2, 0x73, 0x02, 0x8A, 0xDA, 0x09, 0xF0, 0xFF, 0xCF, 0x03, 0x3A, 0xEC, 0x92, 0x65, 0x40, 0xFB,\n0x8A, 0x24, 0x24, 0x80, 0xE7, 0xDA, 0xC7, 0x7B, 0xE7, 0xE7, 0x05, 0xFE, 0xA1, 0x1C, 0x10, 0x09,\n0xE0, 0x3C, 0x50, 0x10, 0x5D, 0x9B, 0x05, 0x7B, 0x63, 0x1A, 0x2D, 0x60, 0x1F, 0x13, 0xC0, 0xC1,\n0x82, 0x80, 0x7F, 0x6E, 0xF6, 0x0E, 0x37, 0x48, 0x03, 0x63, 0x1E, 0x6C, 0xDB, 0x82, 0x3D, 0x03,\n0xC2, 0x9C, 0x12, 0xF8, 0xF7, 0x5B, 0xC2, 0xBE, 0xB8, 0x29, 0xCE, 0x41, 0xA6, 0x3D, 0xD0, 0xE7,\n0x43, 0x10, 0xD0, 0xF8, 0xC7, 0x04, 0xFE, 0x8D, 0x04, 0x4E, 0x1B, 0xF7, 0x7F, 0xD0, 0x7F, 0x53,\n0x60, 0x7F, 0x4F, 0xEC, 0x8D, 0x42, 0xBE, 0x28, 0x7A, 0x40, 0x6C, 0x00, 0xC9, 0x3D, 0xA0, 0x4F,\n0x81, 0xF9, 0xAF, 0x35, 0xF2, 0x8F, 0x03, 0x50, 0xE7, 0x19, 0xB3, 0xC1, 0xFC, 0x9F, 0x4B, 0x1D,\n0xE0, 0x5D, 0x0B, 0x16, 0x10, 0x76, 0x0F, 0xD6, 0x0F, 0x4C, 0xC4, 0x0A, 0x20, 0xF7, 0x80, 0x30,\n0x80, 0x0B, 0x6A, 0x21, 0x03, 0xF8, 0xD6, 0xDB, 0x82, 0x1D, 0x75, 0x81, 0x7C, 0xDE, 0xF9, 0x96,\n0x90, 0x87, 0x3A, 0xFF, 0x25, 0x08, 0x94, 0x4D, 0x71, 0x48, 0x80, 0x30, 0x02, 0x12, 0xFF, 0x07,\n0x04, 0xEE, 0x5A, 0x10, 0xAD, 0x1D, 0x55, 0x37, 0xDC, 0x00, 0xA6, 0x4B, 0xFC, 0x1F, 0x48, 0xE8,\n0xDB, 0x82, 0x9F, 0xBB, 0x93, 0x39, 0x6C, 0xD2, 0xC0, 0x58, 0xDB, 0xB2, 0xB1, 0xDF, 0x1B, 0x8B,\n0xAB, 0x4D, 0x80, 0xE4, 0x0D, 0xE5, 0x80, 0x2F, 0xB9, 0x8C, 0x7E, 0xD2, 0xC9, 0x70, 0xD6, 0x00,\n0x6A, 0x0B, 0xFE, 0x2F, 0x67, 0xB0, 0xFF, 0xB0, 0x05, 0xE1, 0x0E, 0xA8, 0x78, 0x7F, 0xDC, 0x26,\n0xE3, 0xBD, 0x52, 0x0A, 0x7A, 0x01, 0x20, 0xE8, 0x97, 0xC9, 0x7C, 0x7A, 0x27, 0x3D, 0x57, 0x28,\n0x80, 0xE6, 0x08, 0x7C, 0xC4, 0x00, 0x28, 0x04, 0x74, 0xFF, 0xC7, 0x00, 0xF8, 0xE6, 0x5A, 0xC0,\n0x01, 0x02, 0x81, 0xB0, 0x7D, 0x72, 0xC4, 0x6C, 0xB0, 0x3D, 0x83, 0x1C, 0x30, 0x8D, 0x1A, 0xFE,\n0xEE, 0xC3, 0x1D, 0xA2, 0x1F, 0xEF, 0xAC, 0x6B, 0xA8, 0x93, 0x3E, 0x18, 0x40, 0x3D, 0xD9, 0xD7,\n0xA4, 0x63, 0x03, 0xC8, 0x4C, 0x33, 0x02, 0x82, 0x7F, 0x94, 0x80, 0xF0, 0x7F, 0xC4, 0x03, 0x96,\n0x2D, 0xA0, 0x13, 0xB0, 0xA0, 0xDE, 0xE7, 0xBF, 0x89, 0x4E, 0xAD, 0x99, 0x9E, 0xE3, 0x0E, 0xD0,\n0x6E, 0x62, 0x5C, 0x0E, 0x42, 0x73, 0x37, 0xD8, 0x16, 0x5C, 0xD1, 0xB8, 0x01, 0xF8, 0x77, 0x42,\n0x40, 0x6C, 0x09, 0x71, 0xF3, 0x87, 0xFE, 0x55, 0xC8, 0x84, 0xC0, 0xFF, 0xE1, 0xC9, 0x4C, 0xE0,\n0xDF, 0x2C, 0xFE, 0xE4, 0x27, 0x24, 0xFC, 0x8B, 0x5B, 0x42, 0x0C, 0x78, 0xD8, 0xFC, 0x91, 0xAD,\n0x03, 0x62, 0x03, 0xC8, 0xBC, 0x07, 0xD4, 0x95, 0x5A, 0xDB, 0x00, 0xC2, 0xB5, 0x3C, 0xFF, 0x40,\n0xC0, 0x2D, 0x03, 0xE0, 0xDD, 0xCD, 0x80, 0x21, 0x63, 0xDB, 0x74, 0xF9, 0x4B, 0xBB, 0x37, 0x18,\n0xFC, 0x63, 0x81, 0xF9, 0xEF, 0x5D, 0x11, 0x10, 0x10, 0x5C, 0x78, 0x19, 0x30, 0x58, 0xBE, 0xF6,\n0x91, 0xF6, 0x9E, 0x0A, 0xB6, 0x3B, 0x40, 0x3F, 0xA3, 0xED, 0xDC, 0xF9, 0xC7, 0xB4, 0x85, 0xFF,\n0xA3, 0x21, 0x68, 0xAB, 0x13, 0x50, 0xC3, 0x45, 0x52, 0xC1, 0x7D, 0xEA, 0xFF, 0x62, 0x2A, 0x18,\n0xFE, 0x6F, 0x83, 0x2C, 0x30, 0x68, 0x88, 0x54, 0x30, 0xF8, 0x47, 0x34, 0xB9, 0x01, 0x24, 0x2F,\n0x88, 0xA6, 0xB3, 0x5A, 0xCC, 0x82, 0x0B, 0x06, 0x50, 0x3B, 0xE7, 0x1F, 0x41, 0xE0, 0xE8, 0x01,\n0xBF, 0xA9, 0xC9, 0x0A, 0x00, 0x4D, 0x48, 0xFA, 0x1A, 0xFA, 0x1A, 0x18, 0x9A, 0xCC, 0xFF, 0x31,\n0x9D, 0x6A, 0xA7, 0xB9, 0xFA, 0xB3, 0x92, 0x30, 0xFF, 0xAD, 0x21, 0x10, 0xFC, 0x23, 0x04, 0x54,\n0xFE, 0x51, 0x00, 0xDE, 0x03, 0xF9, 0x62, 0x1F, 0x90, 0xE7, 0x0D, 0x86, 0xD0, 0xF0, 0x87, 0x6A,\n0x18, 0x1E, 0x28, 0x00, 0xFC, 0x7F, 0x2D, 0x03, 0x3E, 0x0C, 0xDC, 0x6B, 0x1F, 0x20, 0x15, 0xEC,\n0x05, 0x30, 0xA4, 0xC9, 0x61, 0x5F, 0x83, 0x5E, 0x12, 0xFC, 0x1F, 0x89, 0x5D, 0xEF, 0x91, 0x5F,\n0x95, 0xCC, 0x7F, 0x99, 0x70, 0x6B, 0x98, 0x63, 0x98, 0xBE, 0xB1, 0x73, 0x8F, 0xB3, 0xB1, 0xC3,\n0x05, 0xFE, 0x15, 0x08, 0xA8, 0xF6, 0x8F, 0xB7, 0xA7, 0xE2, 0x01, 0x9D, 0x5F, 0xB0, 0x80, 0x89,\n0x50, 0xFF, 0xC2, 0x75, 0xA9, 0xEB, 0x8F, 0xB4, 0xA9, 0xC0, 0x3F, 0xAA, 0xAB, 0xD1, 0xFF, 0xC1,\n0xEC, 0xF9, 0xFB, 0xA3, 0xBD, 0xD3, 0xD0, 0x86, 0x03, 0xFF, 0x4E, 0x03, 0xEF, 0xD0, 0xBB, 0xE0,\n0xFF, 0x0A, 0xB3, 0xE0, 0x1D, 0xD6, 0x4C, 0xAC, 0xD0, 0xA0, 0x42, 0x40, 0xE5, 0xDF, 0x3B, 0x01,\n0x40, 0xA7, 0x5B, 0x63, 0xFF, 0xD0, 0x70, 0x6B, 0x18, 0x9E, 0x02, 0x41, 0x31, 0x0C, 0xE8, 0xB7,\n0x30, 0x01, 0x97, 0x87, 0xE0, 0xAE, 0xFC, 0x9B, 0xF7, 0x80, 0xBE, 0x0E, 0x08, 0xFE, 0xD1, 0x86,\n0x02, 0x40, 0xAA, 0x13, 0xE0, 0x8F, 0xC5, 0x6A, 0x5D, 0xDF, 0x12, 0x52, 0x56, 0xE6, 0xFF, 0x30,\n0x3C, 0x75, 0x02, 0x2A, 0xFF, 0x40, 0x3A, 0x77, 0x7E, 0x9B, 0x06, 0x86, 0xA3, 0x09, 0xBC, 0x02,\n0x0B, 0x58, 0x26, 0xE4, 0xFB, 0x8B, 0xAF, 0x6B, 0x04, 0x7C, 0x6A, 0xFE, 0x2F, 0x52, 0x0F, 0xD3,\n0x60, 0x3B, 0x4C, 0xD4, 0x00, 0xE2, 0x89, 0xCB, 0xA7, 0x66, 0x41, 0xB9, 0x07, 0xBD, 0xFC, 0xFE,\n0x9B, 0xBA, 0xDA, 0xCF, 0x09, 0x9F, 0xFA, 0x82, 0x8A, 0xC8, 0x19, 0xF9, 0x06, 0x90, 0xE8, 0xBD,\n0xC3, 0xD3, 0x30, 0x80, 0x9C, 0x80, 0x0B, 0xF2, 0x0F, 0x04, 0xFC, 0xE0, 0x83, 0x77, 0x07, 0x80,\n0x28, 0xFC, 0x6B, 0xE0, 0x17, 0xA8, 0xB8, 0xCB, 0x97, 0x05, 0x53, 0xDD, 0x8F, 0x6F, 0x09, 0xD9,\n0x05, 0x80, 0x00, 0x1D, 0x68, 0x37, 0x7D, 0x3C, 0x7E, 0xF0, 0xF1, 0x5E, 0x89, 0x80, 0x22, 0x64,\n0x80, 0x17, 0x04, 0xE0, 0xA3, 0xA3, 0x75, 0x95, 0x80, 0xEB, 0x1D, 0x1C, 0x20, 0x9D, 0x7C, 0xD9,\n0x49, 0x01, 0xE8, 0xDC, 0x1B, 0xCC, 0x0B, 0xF6, 0xF8, 0xDB, 0x23, 0x50, 0x51, 0x55, 0x27, 0x05,\n0x08, 0x43, 0x1B, 0x6E, 0x01, 0x13, 0x12, 0xC1, 0xD1, 0x02, 0x3A, 0x18, 0x89, 0x04, 0x80, 0x6A,\n0x2E, 0x39, 0xFE, 0xEC, 0x5C, 0xE7, 0x1F, 0x0C, 0x1E, 0x4C, 0x9F, 0x33, 0x10, 0x4F, 0x1C, 0xEA,\n0x38, 0xD2, 0xAF, 0xFD, 0xEC, 0x81, 0xBA, 0xBA, 0x03, 0x5C, 0xAF, 0xCA, 0x55, 0x03, 0x14, 0x7F,\n0xA8, 0x87, 0xDE, 0xBE, 0x33, 0x00, 0x6C, 0x0B, 0xFF, 0xB2, 0x36, 0x58, 0xBB, 0x62, 0xD4, 0x57,\n0x00, 0x3F, 0xB9, 0xB5, 0x59, 0xF0, 0xE2, 0xFE, 0x4F, 0x57, 0xF7, 0x5A, 0x03, 0x98, 0xD8, 0x40,\n0xAB, 0x05, 0x2C, 0x5A, 0xC0, 0xBD, 0x3D, 0xD4, 0xC0, 0xF0, 0x45, 0xC0, 0xFA, 0xF5, 0xF7, 0xA8,\n0xBC, 0xAE, 0xD3, 0xAF, 0xCF, 0x6A, 0xEA, 0x71, 0x0F, 0x84, 0xE0, 0xFF, 0xC2, 0x14, 0x78, 0xC8,\n0x01, 0x6F, 0x1A, 0x27, 0x83, 0x6D, 0x21, 0xB8, 0x3B, 0xCC, 0xC6, 0x10, 0x58, 0x33, 0x81, 0x57,\n0x17, 0x57, 0x15, 0xF8, 0x69, 0xE7, 0xDF, 0x82, 0xC9, 0xF5, 0x95, 0xA8, 0x62, 0x00, 0xC7, 0x35,\n0xC0, 0xDF, 0x9E, 0x16, 0x7F, 0x82, 0x8B, 0xAA, 0xB1, 0x55, 0xAB, 0x0C, 0x6B, 0x8C, 0x81, 0x3D,\n0x8B, 0x27, 0x54, 0x92, 0x59, 0xF7, 0xF7, 0x9A, 0xA9, 0x3E, 0x05, 0xEE, 0xBB, 0xEA, 0x27, 0xA5,\n0xF1, 0x4F, 0x1A, 0x8F, 0x61, 0x3F, 0xC8, 0x3B, 0x03, 0xC0, 0x79, 0xF8, 0xE1, 0x16, 0x09, 0x3B,\n0xF0, 0x0F, 0x04, 0xBC, 0xDF, 0xEB, 0x80, 0x3B, 0x7F, 0x51, 0x70, 0x83, 0xBB, 0x64, 0x21, 0x50,\n0x26, 0xC0, 0x0F, 0x84, 0x80, 0x25, 0xFF, 0x27, 0xFC, 0xDB, 0x13, 0x02, 0x96, 0xF8, 0x77, 0x52,\n0x25, 0xA0, 0x75, 0x47, 0xFB, 0xB5, 0x4F, 0xF6, 0x6E, 0xD5, 0x57, 0x93, 0x20, 0x92, 0x05, 0x31,\n0xDA, 0xF1, 0x4A, 0xC0, 0xE7, 0x12, 0x61, 0xE7, 0xC7, 0xA1, 0xC4, 0xB5, 0x6A, 0x37, 0x78, 0xC0,\n0x62, 0x16, 0xF8, 0x42, 0x00, 0x58, 0x83, 0xCF, 0xA5, 0x28, 0x5F, 0x05, 0x7C, 0x85, 0x81, 0x3C,\n0x6B, 0xAA, 0x90, 0xB2, 0xC9, 0x02, 0x93, 0x76, 0xA5, 0x51, 0xE7, 0x9F, 0x9B, 0x40, 0x78, 0x64,\n0x1B, 0xE1, 0x09, 0x1B, 0xD8, 0xBB, 0x4A, 0xCC, 0xF7, 0x28, 0xEC, 0x02, 0x21, 0xD2, 0x0D, 0x20,\n0x7D, 0x57, 0xF6, 0x7F, 0xC2, 0xB6, 0xEA, 0x12, 0xE0, 0xC9, 0x3B, 0x92, 0x04, 0x51, 0xE1, 0x16,\n0x80, 0xF9, 0x04, 0x78, 0x88, 0x3A, 0x00, 0x3F, 0x5B, 0xD2, 0xFF, 0x41, 0x65, 0xFC, 0x89, 0x16,\n0x37, 0x80, 0x16, 0x0F, 0x89, 0x03, 0xD4, 0x24, 0xB0, 0xA9, 0x96, 0x02, 0x11, 0xED, 0x55, 0x96,\n0x01, 0xB7, 0xF8, 0x22, 0x38, 0x1A, 0x5E, 0x0C, 0x53, 0x20, 0x60, 0xA7, 0x16, 0xB0, 0x62, 0x16,\n0x8E, 0xFE, 0xC4, 0x7D, 0x00, 0x53, 0xFF, 0x77, 0xAA, 0xED, 0x4F, 0xE3, 0xDF, 0xF3, 0x81, 0x80,\n0x1B, 0x77, 0x80, 0xF0, 0x7F, 0xCD, 0x32, 0x57, 0x9D, 0x80, 0x02, 0x3F, 0x6D, 0x95, 0x2C, 0xB0,\n0x82, 0x2A, 0x7A, 0xC0, 0x48, 0x3F, 0xE3, 0x9F, 0xA9, 0x62, 0x00, 0x51, 0x07, 0x48, 0x9B, 0xA9,\n0x46, 0xC0, 0xF6, 0x2B, 0x40, 0x4C, 0x98, 0xFB, 0x36, 0x4F, 0xE8, 0x7B, 0x1A, 0xD2, 0xC0, 0xC1,\n0x90, 0x83, 0x7F, 0x25, 0x0F, 0x78, 0xD4, 0xAD, 0xBB, 0x55, 0x57, 0xF6, 0x7F, 0x12, 0xDC, 0x03,\n0x1A, 0xFF, 0x8C, 0x80, 0xEF, 0x0A, 0x00, 0xD3, 0x19, 0xB0, 0x04, 0xD0, 0xA8, 0x51, 0xE6, 0xDF,\n0x1D, 0x7B, 0xC0, 0x5B, 0xC9, 0x80, 0x58, 0x34, 0x19, 0x8F, 0x98, 0x13, 0x71, 0xFE, 0xA9, 0x4A,\n0xFE, 0xCF, 0x08, 0xC8, 0x0B, 0x61, 0xB6, 0x7E, 0x6F, 0x7C, 0x9A, 0x08, 0xC6, 0x60, 0xC5, 0xD7,\n0x01, 0xFB, 0x55, 0x27, 0xD7, 0xFF, 0x7A, 0x55, 0xF1, 0x7F, 0x20, 0x20, 0x59, 0x7F, 0x17, 0xFC,\n0x69, 0x18, 0x01, 0x0F, 0xB1, 0xF3, 0xA3, 0x4D, 0x68, 0xE2, 0x2F, 0xBC, 0x38, 0x09, 0x36, 0xA4,\n0x68, 0x47, 0x1D, 0xE0, 0xA5, 0x2B, 0x4D, 0x04, 0x23, 0x01, 0xE2, 0x2A, 0xF8, 0x3F, 0x17, 0x5F,\n0x07, 0x1C, 0x50, 0x5D, 0x22, 0x20, 0x20, 0x87, 0xFC, 0xB8, 0xFB, 0xE3, 0xEB, 0x4F, 0x1C, 0x2B,\n0xFF, 0x36, 0x7A, 0x3C, 0x9F, 0x2D, 0x83, 0x3E, 0x05, 0xFF, 0x4A, 0x1E, 0x50, 0x7E, 0xF7, 0x5D,\n0xAF, 0xD7, 0x01, 0xF7, 0x7F, 0x7E, 0x69, 0x55, 0xFC, 0xDF, 0xA8, 0xED, 0xBB, 0x02, 0xC0, 0x34,\n0x11, 0x02, 0x28, 0x7A, 0x14, 0xF8, 0xA7, 0x21, 0x08, 0x5C, 0xD2, 0x01, 0x42, 0x35, 0xFC, 0x2D,\n0xBC, 0x13, 0x04, 0xFE, 0x8F, 0xEE, 0x84, 0xB3, 0xAD, 0x70, 0x26, 0xB6, 0x0E, 0x88, 0xFB, 0x42,\n0xEF, 0x29, 0x01, 0xAB, 0x9B, 0x81, 0xE9, 0x15, 0x08, 0x12, 0x1E, 0xAD, 0x39, 0xFF, 0xB4, 0x5B,\n0xF7, 0xD4, 0x2C, 0xB4, 0xF7, 0x82, 0x39, 0x8D, 0xDC, 0x83, 0x94, 0x7D, 0xEE, 0x01, 0x8F, 0xA3,\n0xB7, 0x91, 0x1E, 0x4F, 0x82, 0x80, 0x04, 0x81, 0x8A, 0xBE, 0xE1, 0x78, 0xCA, 0xF9, 0x17, 0x09,\n0x18, 0x05, 0xFE, 0xFD, 0x62, 0x3D, 0x4B, 0x01, 0x5F, 0x42, 0x94, 0x7F, 0x57, 0x12, 0x35, 0x0F,\n0xF8, 0x2D, 0x84, 0x12, 0x18, 0xAC, 0x13, 0x60, 0x3B, 0x88, 0xF2, 0xCF, 0x1B, 0x52, 0xC1, 0xD1,\n0x80, 0x7B, 0x11, 0xE0, 0xA0, 0x8E, 0xF9, 0xBF, 0x7E, 0xAD, 0xEC, 0xEB, 0xA8, 0x09, 0x6C, 0xEE,\n0x80, 0x2A, 0xAD, 0xBA, 0x15, 0x6E, 0xFB, 0xEE, 0x00, 0x10, 0xBC, 0x0B, 0xF6, 0xAF, 0x09, 0xCE,\n0xBF, 0xD1, 0x01, 0xDE, 0x7B, 0x0B, 0xB8, 0x63, 0x15, 0x34, 0x02, 0xD4, 0x8B, 0x1C, 0x54, 0xFE,\n0x41, 0x73, 0x00, 0x34, 0xFF, 0x07, 0x02, 0x12, 0xFE, 0x9D, 0x28, 0xFF, 0x0E, 0x34, 0x98, 0x07,\n0x6C, 0x8B, 0x61, 0x66, 0x33, 0x21, 0x9D, 0x87, 0x20, 0x90, 0xF2, 0x0F, 0x04, 0x64, 0x25, 0x80,\n0x1E, 0x46, 0x40, 0xCF, 0x5F, 0xC2, 0xDB, 0x20, 0xB3, 0x09, 0xD1, 0x5C, 0xB0, 0xBB, 0x2A, 0xBE,\n0x0E, 0x38, 0xDA, 0x34, 0x10, 0x70, 0xC2, 0x02, 0x82, 0x7F, 0x10, 0xF5, 0x7F, 0xF8, 0xAF, 0x92,\n0xAD, 0xC0, 0xFE, 0x63, 0x6A, 0x2B, 0xF3, 0x0F, 0xAE, 0x18, 0xF0, 0xDB, 0x60, 0xB1, 0xC0, 0xCC,\n0x9F, 0xC6, 0xC6, 0x09, 0x78, 0x9A, 0x50, 0x10, 0xFC, 0xE3, 0x04, 0xEC, 0x6D, 0xFE, 0x6B, 0x1F,\n0x82, 0x7D, 0xBD, 0x00, 0x86, 0xF3, 0xEF, 0x40, 0x83, 0x6E, 0x06, 0xDE, 0xDE, 0x23, 0x00, 0x36,\n0xDF, 0x04, 0x07, 0x1C, 0xE2, 0x84, 0xA0, 0xFC, 0x73, 0x07, 0x88, 0xDD, 0x70, 0xCB, 0xAA, 0x02,\n0x3F, 0xD7, 0x72, 0xFE, 0x0F, 0x91, 0xD5, 0x40, 0xE3, 0x56, 0x08, 0x8C, 0x80, 0xF0, 0x7F, 0x20,\n0xE0, 0x07, 0x9F, 0x6F, 0xF9, 0x46, 0x60, 0x85, 0x20, 0xF5, 0x80, 0x18, 0xD2, 0x72, 0xC0, 0xBE,\n0xD3, 0x26, 0x5A, 0xAF, 0x3B, 0xB2, 0x0D, 0x6E, 0x8A, 0x80, 0xF1, 0xCF, 0xF0, 0x4F, 0xF7, 0x7F,\n0xEE, 0x01, 0x8F, 0x1D, 0x7F, 0xF0, 0x36, 0xC8, 0x09, 0xD7, 0x09, 0xE8, 0xEC, 0xB3, 0xC6, 0xF9,\n0x07, 0x5A, 0x01, 0x7A, 0xD9, 0xFC, 0xF7, 0x17, 0x61, 0x9F, 0x13, 0x70, 0xD6, 0x00, 0x5E, 0x14,\n0x3D, 0x20, 0x48, 0x2D, 0x2A, 0xF0, 0x0F, 0x42, 0xBE, 0x1C, 0x5E, 0x59, 0x9A, 0xEA, 0x39, 0xDE,\n0x52, 0x27, 0x60, 0xE6, 0xFF, 0x7C, 0x02, 0xCC, 0x09, 0xA8, 0xFE, 0xAF, 0xD3, 0xC6, 0x1C, 0xE0,\n0xFA, 0xE6, 0x1D, 0xA0, 0x67, 0x6F, 0x06, 0x23, 0xD7, 0xE8, 0xD6, 0x2E, 0xD5, 0x79, 0x02, 0x6E,\n0xEF, 0x15, 0x00, 0x81, 0xBB, 0x30, 0x17, 0xDE, 0xCD, 0x02, 0xC2, 0x01, 0x62, 0x16, 0x7C, 0x27,\n0x1E, 0x70, 0xF9, 0x04, 0x30, 0x22, 0x9F, 0x07, 0x3F, 0xD0, 0x04, 0x30, 0x44, 0xFC, 0x5F, 0x91,\n0x80, 0xBE, 0xFE, 0x67, 0x17, 0xD6, 0x36, 0x10, 0x30, 0xBF, 0x30, 0x3F, 0xCD, 0x09, 0xA8, 0xFF,\n0xA0, 0xD3, 0x26, 0x47, 0xD7, 0xE9, 0x34, 0x98, 0xF9, 0x3F, 0x97, 0x3C, 0xCA, 0xD7, 0xA0, 0xCC,\n0xA2, 0x78, 0xBC, 0x96, 0x47, 0xD8, 0xE6, 0x1F, 0x5C, 0x4E, 0x9D, 0x80, 0x60, 0x1F, 0xB5, 0x80,\n0x86, 0xBE, 0x38, 0x0B, 0x46, 0x1F, 0xFD, 0x1F, 0xF7, 0x80, 0xAF, 0x2E, 0x6F, 0xA8, 0x86, 0x3F,\n0x1B, 0x97, 0xF8, 0x17, 0xB3, 0x1F, 0x1B, 0x7F, 0x68, 0xAE, 0xD9, 0xC9, 0xE7, 0x91, 0x56, 0x43,\n0x83, 0x7F, 0x9C, 0x80, 0xDD, 0x7A, 0xB8, 0x02, 0x7A, 0x5B, 0x06, 0xEC, 0xE6, 0xFC, 0x9F, 0x25,\n0x80, 0x11, 0xE4, 0x76, 0x80, 0xEE, 0x00, 0xAD, 0x70, 0x21, 0xE7, 0xDF, 0x7D, 0x9A, 0x02, 0x63,\n0x1A, 0x1C, 0x8B, 0x02, 0x43, 0x10, 0xFF, 0x07, 0x07, 0xA8, 0xF1, 0xE4, 0x16, 0x44, 0xD1, 0x07,\n0xDD, 0x82, 0xFF, 0x8B, 0xF4, 0xF3, 0x43, 0x5C, 0x60, 0xCB, 0x3F, 0xEC, 0x88, 0x23, 0xFC, 0x1B,\n0x8A, 0x61, 0xB6, 0xF3, 0xB7, 0x43, 0xDD, 0xEA, 0x45, 0x65, 0x57, 0x16, 0xB3, 0x7F, 0x88, 0xA3,\n0x9C, 0x80, 0x9D, 0x7D, 0xF4, 0xF7, 0x9D, 0x5D, 0xF9, 0xFA, 0xC7, 0xC0, 0xF8, 0xE7, 0xEA, 0xBC,\n0x20, 0x3A, 0xDE, 0x09, 0x46, 0xF9, 0x87, 0xD0, 0xE6, 0xD0, 0x83, 0xFF, 0xF3, 0xEA, 0xB6, 0x20,\n0xC2, 0x3F, 0xB0, 0x25, 0x2B, 0x07, 0x6C, 0xFD, 0x9F, 0x7B, 0xC0, 0x44, 0xEE, 0xFF, 0x70, 0x92,\n0x27, 0x93, 0x5D, 0xC0, 0xF8, 0x8F, 0x4A, 0x9B, 0x4B, 0x05, 0x83, 0x7C, 0x76, 0x68, 0x5F, 0xE6,\n0x1F, 0xEE, 0x95, 0x33, 0x0E, 0x30, 0x84, 0xAB, 0x76, 0x83, 0xED, 0x93, 0xE0, 0x20, 0xCC, 0x7F,\n0x19, 0x01, 0x15, 0x7A, 0x12, 0x23, 0x02, 0xB5, 0xE3, 0x09, 0x60, 0x44, 0xEE, 0xFF, 0xFC, 0x73,\n0x7A, 0x9B, 0x78, 0x40, 0x7C, 0x3B, 0xFA, 0x3D, 0x03, 0x60, 0x80, 0xDF, 0x1B, 0xF2, 0x0F, 0x0E,\n0xF0, 0xD6, 0x3C, 0xE0, 0xDD, 0xFA, 0xBF, 0xE4, 0x56, 0x58, 0xBA, 0x01, 0xE4, 0xA6, 0xF2, 0x7B,\n0xA2, 0x3A, 0xF8, 0x18, 0x01, 0xB7, 0xE7, 0xA3, 0xFF, 0x3B, 0x50, 0x04, 0xEA, 0x91, 0xCF, 0x82,\n0x27, 0x9F, 0x4A, 0x52, 0xC1, 0xC3, 0xA7, 0xFF, 0x90, 0x05, 0xB1, 0xF3, 0x7A, 0xDD, 0x33, 0xFE,\n0x81, 0x80, 0xD9, 0x9F, 0x9F, 0x2F, 0x55, 0x21, 0x9E, 0x37, 0x77, 0x02, 0xC4, 0x42, 0x7F, 0x50,\n0x5E, 0x0C, 0x83, 0xD9, 0x2F, 0x46, 0x24, 0x01, 0xA2, 0x03, 0x57, 0x62, 0x01, 0xE1, 0xFC, 0x7E,\n0x61, 0x1E, 0xD0, 0xFE, 0x8B, 0xDC, 0x03, 0x4A, 0x0C, 0xEB, 0x7F, 0xED, 0x0F, 0x5C, 0xE4, 0x5F,\n0xD8, 0x3A, 0x8D, 0x61, 0x7C, 0x53, 0xB3, 0x9B, 0x22, 0x20, 0x01, 0x0C, 0x1D, 0xA5, 0x1B, 0x40,\n0x3A, 0x8D, 0xAE, 0x37, 0x02, 0x6A, 0x37, 0x5B, 0x00, 0xD8, 0xC6, 0xDC, 0x0D, 0xF1, 0x8D, 0x7C,\n0x7A, 0x1C, 0xE4, 0x1E, 0x70, 0x2B, 0xFC, 0xDB, 0x7B, 0x63, 0x00, 0xFE, 0xAD, 0x6D, 0x71, 0x19,\n0xDB, 0xC2, 0x1C, 0x38, 0x89, 0x0C, 0x7F, 0x08, 0x61, 0xE0, 0x1D, 0x78, 0x40, 0x37, 0x80, 0xD0,\n0xF2, 0xFE, 0x4F, 0x10, 0x18, 0xF0, 0xE7, 0x37, 0x02, 0x8C, 0x08, 0x9C, 0xBA, 0x2B, 0x8C, 0xF1,\n0x2F, 0x12, 0x70, 0x7A, 0x16, 0xEC, 0x6B, 0x7F, 0x4A, 0xBE, 0x2F, 0xED, 0xB2, 0x12, 0x4D, 0x5F,\n0x81, 0x13, 0x00, 0x34, 0x0F, 0x98, 0x2F, 0xFF, 0x59, 0xAF, 0x67, 0x41, 0x62, 0x77, 0x94, 0xDD,\n0x0A, 0x15, 0xCA, 0x8A, 0x61, 0xBC, 0x00, 0x30, 0x84, 0x6C, 0x8A, 0x43, 0x2E, 0x18, 0x65, 0x80,\n0xAD, 0x50, 0x0D, 0x43, 0xF8, 0x07, 0xB6, 0x7C, 0x3F, 0xC3, 0xBF, 0x0B, 0x78, 0xC0, 0x34, 0x15,\n0xEC, 0xE8, 0x0B, 0x99, 0x90, 0xB8, 0x02, 0xD8, 0xB8, 0x4A, 0x3F, 0xA5, 0xF5, 0x2F, 0x01, 0x81,\n0x57, 0x79, 0x01, 0x74, 0x14, 0xB6, 0x4E, 0x63, 0xB9, 0xE0, 0x75, 0x0B, 0x3F, 0x3B, 0x6D, 0xC2,\n0xDB, 0xEF, 0xFE, 0x2F, 0x2A, 0xDB, 0x00, 0xA2, 0x81, 0x4B, 0xC0, 0x3A, 0xEE, 0xFF, 0x10, 0xD9,\n0x06, 0x90, 0x03, 0x09, 0x57, 0xEA, 0x01, 0x95, 0x7F, 0x1F, 0xDD, 0x8F, 0xFB, 0x01, 0x26, 0xB7,\n0x86, 0x51, 0x0C, 0xE6, 0x41, 0xBF, 0x18, 0xD8, 0x1C, 0xE0, 0x1D, 0x7A, 0xC0, 0xE5, 0x0A, 0x60,\n0x1E, 0x86, 0x30, 0x06, 0x02, 0x7C, 0xCD, 0x06, 0x90, 0x08, 0xC0, 0xE9, 0x75, 0xC0, 0x29, 0x00,\n0x2A, 0x01, 0x27, 0xE7, 0xBF, 0x46, 0x3F, 0xD7, 0x00, 0xC1, 0x89, 0x9A, 0xFC, 0x7C, 0x5B, 0xF0,\n0xFE, 0x54, 0x02, 0x18, 0x0E, 0xD0, 0xCE, 0x96, 0x0A, 0x3E, 0xE2, 0xFC, 0x83, 0x07, 0x8C, 0x93,\n0x60, 0xFC, 0x89, 0x22, 0xE4, 0x11, 0xF6, 0x33, 0xA0, 0xD6, 0x6D, 0x5A, 0xC7, 0x91, 0x80, 0xC7,\n0x4F, 0x27, 0xF0, 0xA7, 0x5D, 0xBC, 0x31, 0x0B, 0xB8, 0xD7, 0xAA, 0xFD, 0x7E, 0x23, 0xF0, 0xAF,\n0xE8, 0x01, 0x01, 0x53, 0xEB, 0x5C, 0x93, 0xF9, 0xDF, 0x88, 0x3F, 0x1D, 0xD6, 0xF9, 0x87, 0xAD,\n0xD3, 0xD8, 0x43, 0x68, 0xEF, 0x61, 0x8C, 0x21, 0x11, 0x72, 0x9A, 0xF8, 0x3F, 0x46, 0x40, 0xF9,\n0x58, 0x1C, 0x09, 0xD8, 0x4B, 0x87, 0x54, 0x30, 0xF3, 0x7F, 0x88, 0xC9, 0xA7, 0x70, 0x85, 0xE2,\n0x03, 0x5B, 0x2C, 0x61, 0xF4, 0x7F, 0xDB, 0xF3, 0xBD, 0xB7, 0x01, 0xE0, 0xDF, 0xE8, 0x97, 0x14,\n0xF0, 0x47, 0x21, 0x38, 0x65, 0x00, 0x89, 0x03, 0x5C, 0x56, 0x39, 0xF9, 0x0A, 0x30, 0x24, 0xE2,\n0x06, 0x30, 0x7C, 0x33, 0x88, 0x3C, 0xE7, 0x09, 0x90, 0xA0, 0x64, 0x03, 0x08, 0xD4, 0x94, 0x03,\n0x46, 0xFE, 0xA9, 0x0E, 0xD0, 0x44, 0xDB, 0xC9, 0x2D, 0x21, 0x09, 0x00, 0xA7, 0x36, 0xC5, 0xF5,\n0xD7, 0x1D, 0xA0, 0x9C, 0x86, 0x35, 0xA0, 0x75, 0x47, 0x26, 0xC0, 0x10, 0xCA, 0x01, 0xE1, 0xFF,\n0x02, 0xFC, 0x9C, 0x87, 0xC8, 0x7E, 0xA0, 0x2E, 0xBA, 0x6A, 0x01, 0x1D, 0x24, 0x01, 0x81, 0x01,\n0x40, 0x58, 0x00, 0x04, 0xB2, 0x32, 0x0F, 0x08, 0xEC, 0xB5, 0x1E, 0x30, 0xBB, 0x11, 0x34, 0x04,\n0x06, 0x4E, 0x27, 0x40, 0x22, 0x02, 0xE5, 0xE0, 0x13, 0x60, 0x68, 0xE3, 0x46, 0x79, 0xA3, 0x7D,\n0x98, 0xFF, 0xFA, 0xA9, 0xF5, 0x80, 0xA7, 0x19, 0xFF, 0x4C, 0x5D, 0xE4, 0x5F, 0x67, 0x09, 0x60,\n0x9F, 0xFB, 0x3A, 0x09, 0x25, 0xA6, 0xF8, 0x57, 0x4B, 0xB9, 0x39, 0xFF, 0x0E, 0x06, 0x08, 0xDA,\n0xC0, 0x28, 0x18, 0xB7, 0x84, 0x0C, 0xFC, 0x63, 0x00, 0xE4, 0x5A, 0x94, 0x81, 0x91, 0x7F, 0xBB,\n0x39, 0xC0, 0x4F, 0xA2, 0x03, 0xBC, 0x03, 0x0F, 0xB8, 0x7C, 0x01, 0x4C, 0x62, 0x00, 0x1F, 0xB6,\n0xF3, 0x5F, 0x14, 0x00, 0x26, 0x04, 0x4C, 0xFC, 0x1F, 0xE4, 0x9B, 0xE2, 0x6E, 0xF2, 0x4F, 0x0D,\n0xA0, 0x7F, 0xAC, 0xEA, 0xB1, 0x95, 0x43, 0x03, 0x1E, 0x90, 0x95, 0x26, 0xC4, 0x4D, 0x71, 0x1D,\n0x1C, 0xE0, 0x70, 0xD2, 0xBF, 0x04, 0x6C, 0x09, 0x21, 0xFC, 0x03, 0x01, 0x1B, 0x08, 0x0E, 0x1B,\n0x15, 0x26, 0x09, 0x88, 0x5B, 0xDD, 0xD9, 0x00, 0xE2, 0x04, 0x34, 0xA4, 0xA0, 0x5D, 0x3F, 0x5D,\n0xDE, 0xF0, 0x7F, 0xAF, 0xC0, 0xBC, 0x8B, 0xE0, 0x01, 0x1B, 0x0B, 0x18, 0xBC, 0x1F, 0x3C, 0x60,\n0x2C, 0x00, 0x8C, 0xF6, 0x0F, 0xE5, 0x80, 0x81, 0x7F, 0x38, 0x22, 0x01, 0x39, 0xFF, 0xE2, 0x5A,\n0x20, 0xF8, 0x17, 0xE3, 0x57, 0xFC, 0x0A, 0x9C, 0x7F, 0x99, 0xB2, 0x04, 0xB0, 0x3B, 0x40, 0x1F,\n0xAE, 0xFA, 0x64, 0x03, 0x48, 0x8C, 0x89, 0x27, 0x7C, 0xA5, 0x06, 0xF6, 0xCF, 0x71, 0x18, 0xF8,\n0x27, 0x97, 0xFA, 0xDB, 0x00, 0xF0, 0xB6, 0x96, 0x01, 0xE3, 0x8E, 0xE0, 0x3C, 0x02, 0xFF, 0x32,\n0x07, 0x18, 0x00, 0xB8, 0x8C, 0x27, 0xCC, 0xC0, 0x87, 0x13, 0xF4, 0x36, 0xF3, 0xDF, 0xC4, 0x00,\n0x4A, 0x84, 0x0D, 0xC0, 0xA9, 0x88, 0xFF, 0xCB, 0x0B, 0xA2, 0xC5, 0xE9, 0xD9, 0xD5, 0x64, 0x99,\n0x0F, 0x3D, 0xB6, 0xD6, 0x7F, 0x39, 0x59, 0x0C, 0x93, 0x01, 0x30, 0x14, 0x44, 0xF7, 0xD7, 0xD7,\n0x00, 0x47, 0x27, 0xE0, 0x50, 0x2C, 0xF1, 0x2F, 0x6E, 0x0B, 0x1E, 0x0B, 0x00, 0x37, 0x93, 0x93,\n0x35, 0xDB, 0x12, 0xE2, 0x1E, 0x50, 0x22, 0x28, 0xDD, 0x12, 0x32, 0x81, 0x13, 0x8C, 0x9E, 0x86,\n0x0D, 0xC0, 0x10, 0x98, 0x65, 0xC7, 0xDC, 0xFA, 0x1F, 0xCE, 0xC8, 0x05, 0x9B, 0x74, 0x78, 0x19,\n0x17, 0x00, 0xA1, 0xEF, 0xAF, 0xFD, 0x04, 0xBF, 0xE3, 0xC7, 0xC3, 0x81, 0x56, 0xE6, 0x1F, 0x52,\n0xBF, 0xD2, 0x07, 0xFE, 0xB5, 0x43, 0xC0, 0x0F, 0xFC, 0x2B, 0x79, 0xC0, 0x7E, 0x48, 0x80, 0xF4,\n0x70, 0x80, 0xE3, 0x50, 0x62, 0x9D, 0x6C, 0x00, 0xE1, 0x1E, 0xD0, 0xF0, 0xE7, 0x17, 0x29, 0x9C,\n0x20, 0x96, 0x01, 0xC1, 0x3F, 0xC5, 0xDF, 0x02, 0x0E, 0x70, 0x41, 0x0A, 0xC6, 0x72, 0x40, 0xA0,\n0xAE, 0x04, 0xC0, 0xC4, 0x01, 0x6A, 0xDC, 0x2F, 0x0B, 0xB8, 0x13, 0xFF, 0x32, 0x03, 0x68, 0xD1,\n0x2C, 0x02, 0xCE, 0xF1, 0xEF, 0xC7, 0xC6, 0x02, 0xEA, 0x2F, 0x3F, 0xB7, 0x80, 0x4E, 0x40, 0xE7,\n0x9F, 0x71, 0xCF, 0xA9, 0xE7, 0xD7, 0xD5, 0x70, 0x26, 0xFE, 0x2F, 0xBB, 0x3F, 0xAA, 0x5D, 0xFC,\n0x03, 0xFB, 0x86, 0x91, 0x9E, 0x3D, 0xD6, 0x7D, 0x81, 0x7F, 0x28, 0x07, 0x74, 0x79, 0x01, 0x74,\n0x6A, 0x57, 0x0E, 0x51, 0xE8, 0x46, 0x14, 0xFC, 0x5F, 0x82, 0xBF, 0x36, 0x17, 0xFC, 0x14, 0xF3,\n0xDE, 0xC0, 0x2C, 0x7C, 0x41, 0x1C, 0x00, 0xC8, 0x3C, 0x60, 0xDC, 0x00, 0x62, 0x83, 0x38, 0x0B,\n0xC6, 0x17, 0xA2, 0xA7, 0xF8, 0xB3, 0x56, 0xE6, 0x9F, 0x7B, 0x65, 0xDF, 0x00, 0x32, 0x17, 0xA1,\n0x00, 0x90, 0x11, 0x10, 0xFE, 0xCF, 0x42, 0x3B, 0xE3, 0x1E, 0xEC, 0x60, 0x9F, 0x17, 0x00, 0xE6,\n0x26, 0x10, 0xFC, 0xB3, 0xB9, 0xAF, 0x74, 0xD6, 0x2C, 0x1D, 0x82, 0x72, 0x40, 0x24, 0x80, 0xF7,\n0xE4, 0x42, 0x17, 0x2D, 0x90, 0x05, 0x5E, 0x9C, 0x82, 0x74, 0x01, 0x10, 0xD1, 0xFA, 0xBF, 0xDC,\n0x01, 0xDE, 0xDA, 0x96, 0x10, 0x6A, 0x00, 0xA1, 0x37, 0x9D, 0xFF, 0xE6, 0x06, 0xD0, 0x02, 0xB3,\n0x60, 0x00, 0x30, 0x9D, 0x04, 0x73, 0xFE, 0xED, 0x39, 0x01, 0xC1, 0x3F, 0x5C, 0x54, 0xC6, 0x3C,\n0x1B, 0x6D, 0x47, 0x04, 0x9E, 0x10, 0xFB, 0x97, 0x11, 0xB0, 0x97, 0x18, 0xAC, 0x5F, 0x37, 0x4E,\n0x80, 0xDD, 0x06, 0x4A, 0x5B, 0x1F, 0x51, 0xFE, 0x01, 0x81, 0x0D, 0xFF, 0x66, 0x42, 0xCA, 0x63,\n0x8E, 0xDD, 0xD6, 0x50, 0xB5, 0x05, 0x80, 0x12, 0x19, 0x02, 0xAF, 0x42, 0xFE, 0x37, 0xD4, 0xEB,\n0x81, 0x56, 0x37, 0xF1, 0xF7, 0x12, 0x7D, 0x58, 0x07, 0x84, 0x5A, 0x27, 0xD9, 0x5A, 0x4B, 0x55,\n0x3B, 0x01, 0x4E, 0x11, 0x28, 0x22, 0xFC, 0x4B, 0x4A, 0x02, 0xF3, 0x09, 0x30, 0xB6, 0x05, 0x9F,\n0x32, 0xFE, 0x99, 0xBA, 0xE0, 0xFF, 0x06, 0xE3, 0x8F, 0x49, 0x80, 0xAF, 0x83, 0x84, 0x0D, 0x20,\n0x73, 0xD1, 0x14, 0x00, 0x6E, 0xF1, 0xF1, 0x6C, 0x87, 0x4D, 0x54, 0x64, 0xD4, 0x78, 0xC0, 0xAD,\n0x25, 0x80, 0x17, 0x71, 0x80, 0x8B, 0x92, 0x2F, 0x22, 0x90, 0x46, 0xEB, 0xFF, 0x72, 0x07, 0x78,\n0x37, 0xCB, 0x80, 0x64, 0xFD, 0x6F, 0x01, 0x07, 0x28, 0x01, 0xFF, 0xC7, 0x34, 0xD2, 0xEF, 0xC1,\n0x0C, 0xFF, 0x50, 0x0E, 0x08, 0xFE, 0x35, 0x15, 0x80, 0x00, 0xA1, 0x3E, 0xC4, 0x2C, 0x98, 0xDF,\n0xA0, 0xE8, 0xD3, 0x0F, 0xFD, 0x6B, 0x92, 0x7C, 0xF2, 0x23, 0x9D, 0xA7, 0x81, 0xDD, 0x10, 0x6A,\n0xA7, 0xC9, 0x41, 0xCA, 0x3F, 0x78, 0x40, 0xB2, 0xFE, 0xE7, 0x21, 0x1A, 0xE7, 0xBE, 0x9B, 0x1D,\n0x08, 0x78, 0x25, 0xA6, 0x2A, 0x77, 0x80, 0x36, 0xF4, 0xF2, 0xBB, 0x26, 0xED, 0x11, 0x30, 0xA8,\n0x7D, 0xBE, 0xFE, 0x17, 0x1F, 0xBB, 0xFF, 0xF3, 0x45, 0x45, 0x28, 0x2D, 0x07, 0x4C, 0x27, 0xC0,\n0x00, 0x78, 0xE0, 0x1F, 0xF7, 0x80, 0x84, 0x7F, 0x12, 0x58, 0x83, 0xA0, 0xBF, 0x2D, 0xF8, 0x3F,\n0x05, 0x9D, 0x47, 0x8F, 0xDF, 0x7E, 0x8F, 0x54, 0x70, 0xF0, 0x7F, 0xD4, 0x03, 0x9E, 0x0C, 0xA4,\n0x03, 0x02, 0xB7, 0x78, 0x24, 0x43, 0x27, 0xA0, 0xF3, 0xEF, 0x6D, 0xD7, 0x00, 0xFF, 0xC6, 0x60,\n0xF9, 0x4C, 0xC8, 0xEE, 0x04, 0xFC, 0x84, 0x38, 0xC0, 0x5B, 0xF6, 0x80, 0xDC, 0x00, 0x82, 0x87,\n0x75, 0x09, 0xDE, 0x6A, 0x16, 0x10, 0xFE, 0x8F, 0x7B, 0xC0, 0xBD, 0x67, 0x33, 0xEC, 0x6B, 0x09,\n0xA8, 0x90, 0xC3, 0x55, 0xE5, 0x23, 0x9D, 0x59, 0xFC, 0x20, 0x83, 0xB6, 0x1C, 0x50, 0x1A, 0x89,\n0x23, 0x27, 0x60, 0x2F, 0xAD, 0xC3, 0x05, 0xDF, 0xB9, 0x21, 0xF4, 0xE7, 0xFB, 0x35, 0xE1, 0x5F,\n0x48, 0x05, 0xEB, 0x06, 0x10, 0x09, 0xE6, 0x01, 0x91, 0xD8, 0x34, 0xF1, 0x4C, 0x08, 0x10, 0x42,\n0x27, 0xC1, 0x69, 0xAA, 0x16, 0x03, 0xE7, 0x5F, 0xC3, 0xBA, 0x97, 0xDE, 0x1A, 0xC5, 0xEF, 0x42,\n0x77, 0x9C, 0x06, 0xD0, 0x62, 0x03, 0xC8, 0x1C, 0x02, 0x4D, 0x75, 0xFE, 0x79, 0xB5, 0xF8, 0xEB,\n0xC0, 0xBF, 0xB4, 0x20, 0xBA, 0xE7, 0xBF, 0xAD, 0x66, 0x03, 0x48, 0x13, 0x6E, 0x05, 0x1D, 0x8C,\n0x4D, 0x01, 0x20, 0x0B, 0x2F, 0x00, 0xB4, 0x99, 0xCA, 0xD0, 0x1B, 0xFC, 0x4C, 0x28, 0x5D, 0x75,\n0x02, 0x82, 0x7F, 0x04, 0x80, 0x44, 0x0B, 0x72, 0x2F, 0x12, 0xB0, 0x1C, 0xCE, 0x3F, 0xE6, 0x00,\n0xEF, 0xC0, 0x03, 0x2E, 0x91, 0x00, 0x4E, 0x1D, 0x20, 0xC6, 0x96, 0x00, 0x79, 0x50, 0xD2, 0x33,\n0x6C, 0x00, 0xE1, 0x1E, 0xD0, 0x0B, 0x60, 0x7C, 0x06, 0xAC, 0x17, 0x92, 0x33, 0xD0, 0xCE, 0x5F,\n0x5A, 0xFF, 0x08, 0x06, 0x90, 0x85, 0x7D, 0x4B, 0x88, 0x4F, 0x72, 0x7A, 0x64, 0x00, 0x61, 0x08,\n0xED, 0x79, 0x9B, 0x05, 0xE3, 0x0E, 0xA8, 0x35, 0x0F, 0x98, 0xF8, 0xBF, 0x58, 0x0E, 0x58, 0x14,\n0x12, 0x20, 0x29, 0xFE, 0x40, 0x40, 0x6C, 0x00, 0x6E, 0xD1, 0x14, 0x26, 0xC4, 0x00, 0x60, 0xF4,\n0x7F, 0x2F, 0xF5, 0x09, 0x3C, 0x67, 0x06, 0x30, 0x31, 0x7D, 0x13, 0x1E, 0x90, 0xE2, 0xCF, 0x66,\n0xF2, 0xE0, 0x5F, 0x41, 0x1B, 0xE2, 0xFF, 0xB0, 0x29, 0x0E, 0x09, 0x10, 0xA2, 0xE1, 0xD7, 0xBA,\n0x76, 0xEC, 0x21, 0xF1, 0x8B, 0x1D, 0x21, 0xD2, 0x49, 0xEB, 0x43, 0x01, 0x20, 0xF1, 0x80, 0x28,\n0x80, 0xB6, 0x66, 0x3A, 0xB0, 0xF0, 0xE5, 0x6B, 0x45, 0xE0, 0xB6, 0x99, 0xFF, 0x2E, 0x54, 0x06,\n0x73, 0x4B, 0x05, 0xD1, 0x3B, 0x21, 0xF0, 0x09, 0xF0, 0xD7, 0x34, 0x8C, 0xC6, 0x95, 0x40, 0x61,\n0x61, 0xA9, 0x2D, 0x40, 0x40, 0x02, 0x45, 0x12, 0xA3, 0xFF, 0xCB, 0x1D, 0x20, 0xC6, 0x28, 0x80,\n0x66, 0x62, 0xFC, 0xDB, 0xBB, 0x4E, 0x40, 0xE1, 0x9F, 0x49, 0x4E, 0xD0, 0x97, 0xB0, 0x84, 0xA2,\n0xAD, 0xDF, 0x21, 0xBA, 0x26, 0x2B, 0x07, 0xC4, 0xA7, 0xBC, 0x85, 0x1B, 0x41, 0x3F, 0x7B, 0x1C,\n0xA1, 0x00, 0x9A, 0x11, 0x10, 0x05, 0xD0, 0x24, 0x84, 0x80, 0x75, 0x0D, 0xF9, 0x8F, 0x12, 0x02,\n0xBF, 0x17, 0xFE, 0x45, 0x01, 0x7C, 0x90, 0x7F, 0x03, 0x88, 0x99, 0x3E, 0x0C, 0x6C, 0xF8, 0x47,\n0xCB, 0x45, 0x2F, 0x80, 0x89, 0x0B, 0x7F, 0x17, 0xD1, 0x03, 0xFE, 0x76, 0x51, 0x91, 0x11, 0xB0,\n0x0E, 0x40, 0x4D, 0x00, 0x4B, 0xF0, 0x06, 0xFE, 0x95, 0x3C, 0xE0, 0xFA, 0xA6, 0xF9, 0xC3, 0xC8,\n0xCB, 0x02, 0x06, 0x0F, 0xB8, 0xDE, 0xE5, 0x1B, 0x90, 0x1C, 0x73, 0x98, 0xAC, 0xA8, 0x0F, 0x1C,\n0x9F, 0xDA, 0xA2, 0x1C, 0x70, 0xBB, 0x1D, 0x16, 0xBA, 0xDF, 0x3C, 0x0B, 0x0C, 0xE0, 0xDD, 0xAE,\n0x3E, 0xB3, 0x2C, 0x30, 0x6D, 0xB8, 0x03, 0x74, 0xDE, 0xF4, 0xB0, 0x4E, 0x68, 0x55, 0x43, 0xE0,\n0xED, 0x7D, 0x57, 0xE6, 0x0E, 0xFC, 0xD3, 0xD0, 0xF3, 0x64, 0x69, 0x0C, 0x86, 0x28, 0x80, 0xE1,\n0xB2, 0xF9, 0xEF, 0x1E, 0x8B, 0x67, 0xCF, 0x94, 0x80, 0xB8, 0x90, 0xB0, 0xAC, 0x8C, 0x6D, 0xE6,\n0x36, 0x3E, 0xD0, 0x81, 0x66, 0x42, 0x2A, 0xFA, 0x50, 0x09, 0x28, 0xCB, 0x3F, 0xD2, 0xD6, 0xBD,\n0x1C, 0x2B, 0xED, 0x6C, 0xD8, 0xD9, 0x40, 0x7A, 0x7F, 0xD6, 0x3C, 0x60, 0xA7, 0x78, 0xA3, 0xA1,\n0x4D, 0xF9, 0x47, 0xA5, 0xAF, 0x79, 0xBD, 0x0B, 0x01, 0x15, 0x6E, 0x16, 0x71, 0x80, 0x07, 0x76,\n0xFA, 0xCD, 0x01, 0x95, 0xD9, 0x3F, 0x9C, 0x31, 0xE7, 0x6D, 0x4F, 0x6E, 0x01, 0x21, 0xCC, 0x7F,\n0x43, 0x05, 0x4C, 0xE0, 0xEC, 0x53, 0xFF, 0x49, 0x58, 0xBB, 0x00, 0xFE, 0xB8, 0xCC, 0x35, 0xC3,\n0x03, 0x26, 0x03, 0xE9, 0xC1, 0xBF, 0x02, 0x01, 0xED, 0x77, 0xDF, 0x0D, 0x21, 0x63, 0xC1, 0xA1,\n0x9E, 0x3A, 0x1D, 0xAC, 0x25, 0x3A, 0x6B, 0xFA, 0x00, 0xFE, 0x8F, 0x7B, 0x40, 0x4D, 0x00, 0x63,\n0x95, 0x7A, 0x8B, 0x8B, 0x76, 0xA0, 0x1F, 0x96, 0xAD, 0xD5, 0xFF, 0x21, 0xF6, 0xDE, 0xFB, 0xEC,\n0xCD, 0xA4, 0xE0, 0xB1, 0x7E, 0x60, 0xD4, 0xDD, 0x8A, 0x23, 0xEA, 0xB1, 0x1D, 0xD6, 0x53, 0x01,\n0x2C, 0xD2, 0x2A, 0x01, 0x3E, 0x51, 0x3D, 0x1C, 0x1B, 0x8F, 0xC7, 0x42, 0xB5, 0x62, 0x58, 0x02,\n0xE4, 0x47, 0xE8, 0xC1, 0x4C, 0xFC, 0x28, 0x9F, 0x7B, 0xCF, 0x0A, 0xFA, 0x48, 0xDA, 0xE7, 0x7A,\n0x5B, 0xB5, 0x4A, 0x1C, 0x3C, 0x5A, 0xAD, 0x8E, 0x2A, 0x5A, 0x7D, 0x28, 0x16, 0x50, 0xB4, 0x5A,\n0xAF, 0xF7, 0xC7, 0x58, 0xDB, 0x50, 0x9F, 0xB1, 0x7E, 0xDF, 0xCE, 0xF6, 0xDC, 0x7E, 0xDF, 0x77,\n0xB5, 0x76, 0xD4, 0xCB, 0x6D, 0xAF, 0x6A, 0x7A, 0xFE, 0xDD, 0x71, 0x51, 0xDF, 0x1E, 0x0B, 0x51,\n0xAE, 0xE4, 0x98, 0x6B, 0x7E, 0xB2, 0x02, 0xE8, 0x57, 0x3C, 0xE4, 0x45, 0x5F, 0x89, 0xD1, 0x8B,\n0x92, 0x67, 0x71, 0xF2, 0xE1, 0x4B, 0x2D, 0xAC, 0xE6, 0xA1, 0xED, 0x4A, 0x74, 0x81, 0x23, 0x6B,\n0xDA, 0xC9, 0xFF, 0x59, 0x51, 0x78, 0x53, 0x89, 0x36, 0xAF, 0xFF, 0xEC, 0x8B, 0xD2, 0xBB, 0x9E,\n0x0D, 0xD7, 0x80, 0xC5, 0xBE, 0x05, 0x06, 0xA2, 0x7D, 0x8C, 0x8F, 0x3E, 0x3C, 0x2A, 0x69, 0xB5,\n0x7A, 0x64, 0x4B, 0x7C, 0xD0, 0x98, 0xF7, 0xB5, 0xFE, 0xFA, 0x33, 0x12, 0xE7, 0xCD, 0x1A, 0xF8,\n0x9B, 0x02, 0xF0, 0x6F, 0xA7, 0xA0, 0xB4, 0xDB, 0xD2, 0x93, 0xB2, 0x28, 0x53, 0x9E, 0xE8, 0x61,\n0xB1, 0xBC, 0x14, 0x41, 0xC5, 0x66, 0xAA, 0xBF, 0x92, 0x0B, 0xCC, 0xAB, 0x4A, 0x7F, 0xF9, 0x72,\n0x10, 0x29, 0x24, 0xCF, 0x0F, 0x4E, 0x64, 0x0B, 0x48, 0x29, 0x1E, 0xED, 0x97, 0xB5, 0xAE, 0x6B,\n0xD5, 0x57, 0x75, 0xFA, 0xF3, 0xEB, 0xEF, 0x5E, 0xD7, 0x74, 0x78, 0x78, 0xFC, 0x42, 0xFE, 0xB6,\n0x0F, 0x59, 0x3B, 0x96, 0x97, 0x5D, 0x55, 0x75, 0x71, 0xF1, 0xEA, 0xE5, 0xAB, 0x82, 0x04, 0x57,\n0x02, 0xB6, 0xA2, 0x84, 0x85, 0xF2, 0xFA, 0x9A, 0xC4, 0xDC, 0x51, 0x8D, 0x8C, 0xF4, 0xFF, 0x7D,\n0xD6, 0xE4, 0x38, 0x7C, 0x5D, 0xD5, 0xCF, 0xA7, 0x7D, 0x59, 0xEB, 0xBA, 0xF6, 0x4B, 0x5A, 0x49,\n0xFB, 0x30, 0xB9, 0x32, 0x85, 0x81, 0xED, 0xE3, 0x93, 0x83, 0xF3, 0x8F, 0x5A, 0x00, 0x3E, 0x09,\n0x51, 0xB4, 0x80, 0xD6, 0x24, 0x76, 0x07, 0x5B, 0x35, 0x76, 0xD0, 0xC3, 0x42, 0x18, 0x06, 0xA1,\n0xBB, 0x81, 0xA0, 0x44, 0xE5, 0x65, 0x1A, 0xBB, 0x21, 0xB0, 0x16, 0x1F, 0x3F, 0x78, 0x66, 0x7C,\n0xA3, 0xED, 0x99, 0xAE, 0x01, 0x96, 0x08, 0x78, 0x70, 0x22, 0x19, 0xB8, 0x95, 0x5D, 0x89, 0xEC,\n0x90, 0xFD, 0x70, 0x3F, 0xED, 0x57, 0xF1, 0xB7, 0x0B, 0xFF, 0x84, 0x80, 0x55, 0xFE, 0x1D, 0x3A,\n0xE0, 0xE6, 0x75, 0xF8, 0xE2, 0xEA, 0x18, 0xA6, 0x2A, 0xE9, 0xA5, 0xD9, 0x48, 0xF4, 0x4A, 0x11,\n0xC8, 0xF9, 0xA7, 0xF3, 0xDC, 0x3F, 0xFE, 0x2A, 0xF2, 0x4F, 0x5E, 0x5C, 0x21, 0xE0, 0x4B, 0xE1,\n0xDF, 0x40, 0x40, 0xD8, 0xBC, 0x99, 0xFE, 0x45, 0xE1, 0x7F, 0xDF, 0x18, 0x79, 0xB8, 0x29, 0x13,\n0xF0, 0xF4, 0xB4, 0x48, 0x40, 0xCB, 0x6E, 0x54, 0xF1, 0xB7, 0xD6, 0x4B, 0x86, 0x5E, 0x57, 0xDA,\n0x59, 0x0E, 0x98, 0x86, 0xF1, 0x4F, 0xB2, 0xC0, 0x46, 0x40, 0xE6, 0x00, 0xFF, 0xF9, 0xE2, 0x9F,\n0x99, 0xDE, 0x27, 0xBE, 0xCA, 0x40, 0xBC, 0x9C, 0x77, 0xCB, 0x7B, 0xC0, 0xCF, 0x86, 0x7E, 0x00,\n0x5C, 0xDE, 0xC6, 0xD0, 0xEE, 0xAE, 0x85, 0x54, 0x06, 0x09, 0x79, 0xE9, 0xD2, 0x04, 0x7C, 0xF0,\n0x4C, 0xDA, 0x7F, 0x2E, 0x2F, 0xF6, 0x30, 0x80, 0x52, 0x0B, 0x7D, 0x5E, 0xF4, 0x80, 0x1F, 0xCA,\n0x5E, 0x4D, 0x2B, 0x71, 0xA1, 0xDA, 0xB7, 0x0F, 0xF5, 0xAA, 0xFD, 0x03, 0x02, 0x29, 0xFF, 0x4E,\n0x4F, 0xCB, 0xFC, 0xDB, 0x6C, 0x06, 0xBE, 0x1D, 0xCA, 0x91, 0xB4, 0xE3, 0x17, 0x82, 0x88, 0x17,\n0x62, 0x96, 0x08, 0x4A, 0xDC, 0x56, 0x99, 0x14, 0x6F, 0x9C, 0x7F, 0xA6, 0x12, 0xFF, 0x74, 0x45,\n0xB0, 0xE8, 0x01, 0x2F, 0x4C, 0x70, 0x79, 0xB1, 0xC7, 0x49, 0xFF, 0xBF, 0x94, 0x6E, 0xF6, 0xFF,\n0xEF, 0xA7, 0xF8, 0x0E, 0xC8, 0x21, 0xFC, 0x2B, 0x7A, 0x40, 0x7D, 0xFF, 0x7F, 0xAE, 0x13, 0xB0,\n0xDF, 0xC5, 0xFE, 0xAD, 0xB8, 0x84, 0x7F, 0xBA, 0x0A, 0x58, 0xE4, 0xDF, 0xB9, 0xDC, 0xDE, 0x52,\n0xD6, 0x77, 0x00, 0x40, 0x62, 0x00, 0x13, 0x3C, 0x1A, 0xFD, 0x1C, 0x7F, 0x4B, 0x3B, 0x40, 0x44,\n0x5D, 0x8F, 0x1D, 0x75, 0x59, 0xBB, 0x0F, 0xEC, 0x1B, 0x09, 0xC8, 0x19, 0x28, 0xAF, 0x11, 0x3D,\n0x5E, 0xD8, 0x03, 0x4A, 0x21, 0xA0, 0xDE, 0x2D, 0x66, 0x98, 0x05, 0x67, 0xBD, 0xC5, 0x33, 0xDB,\n0x0B, 0x72, 0x7E, 0xFE, 0x39, 0x25, 0xE0, 0xC1, 0xE7, 0x1F, 0x8A, 0xF4, 0x6E, 0x07, 0x25, 0x00,\n0x96, 0x67, 0xC1, 0x7A, 0x83, 0xFC, 0x7E, 0x55, 0xE5, 0x9F, 0x11, 0xF0, 0xBB, 0x02, 0xFF, 0x36,\n0x16, 0x2F, 0xE0, 0x73, 0x92, 0x5E, 0xD8, 0xF7, 0x42, 0x60, 0x01, 0x7A, 0x04, 0x61, 0xB1, 0xCD,\n0xA4, 0xB3, 0x60, 0xCA, 0x3F, 0x4F, 0x75, 0xD4, 0xFC, 0x9F, 0xBD, 0xB8, 0x40, 0xC0, 0x4B, 0xCF,\n0xF1, 0x26, 0x02, 0x03, 0x95, 0xE9, 0x06, 0x40, 0xFB, 0xBF, 0xC4, 0x09, 0x63, 0xF4, 0xF6, 0x46,\n0x1D, 0x16, 0x96, 0x01, 0xBF, 0x13, 0xFF, 0x57, 0x26, 0xE0, 0xCA, 0x62, 0x97, 0xE9, 0x6F, 0x91,\n0x7F, 0x20, 0x20, 0xE3, 0xDF, 0x07, 0x5B, 0x10, 0x90, 0xAC, 0x01, 0x9A, 0x65, 0x8B, 0xBD, 0x09,\n0xFE, 0x6F, 0xC4, 0xA1, 0x8C, 0x59, 0xB7, 0xBB, 0xB8, 0xFF, 0xAB, 0xCF, 0x82, 0xAD, 0x7B, 0x7C,\n0x0F, 0x38, 0x58, 0x34, 0x80, 0xF0, 0x80, 0xCB, 0x00, 0x50, 0xF9, 0x27, 0xF8, 0x93, 0xB6, 0x47,\n0x1C, 0xE0, 0xC8, 0x3F, 0x21, 0xE0, 0x07, 0x07, 0x7C, 0xFD, 0xCF, 0x00, 0x28, 0xD7, 0x20, 0x27,\n0xE0, 0xFE, 0xA8, 0x12, 0xFF, 0x84, 0x80, 0x72, 0x54, 0xF9, 0x57, 0xF2, 0x80, 0x1B, 0x35, 0x80,\n0xDA, 0xC6, 0x3F, 0x71, 0x89, 0xAC, 0x57, 0x50, 0xC8, 0x71, 0x0C, 0x80, 0xC4, 0x06, 0xFF, 0x67,\n0x12, 0xBE, 0x15, 0xF8, 0xE7, 0x04, 0xFC, 0x6A, 0x2E, 0x94, 0x7F, 0x2F, 0x41, 0x40, 0x3E, 0xFF,\n0x05, 0x01, 0xBD, 0x6B, 0x9B, 0xCB, 0xFE, 0xB7, 0x5A, 0x04, 0x9A, 0x1D, 0x8C, 0x6F, 0x82, 0x7F,\n0x56, 0x14, 0x3C, 0xE0, 0xA9, 0xAB, 0x04, 0x40, 0x8B, 0x0A, 0x00, 0x57, 0x12, 0xA2, 0x22, 0xFF,\n0x8C, 0x80, 0x07, 0x04, 0x80, 0xC6, 0xBF, 0x96, 0x80, 0xEF, 0x05, 0xFF, 0x07, 0x87, 0xA7, 0xB0,\n0x8B, 0x3D, 0x78, 0x17, 0x27, 0xCC, 0xDE, 0xD2, 0x91, 0x03, 0xB4, 0x6A, 0x01, 0xEB, 0x1E, 0xD0,\n0xE1, 0xE6, 0xA4, 0x0B, 0xE3, 0x3B, 0xE7, 0xDE, 0x8E, 0x16, 0xD0, 0xCF, 0x75, 0x31, 0x00, 0x7E,\n0xAC, 0xF3, 0x5F, 0x01, 0xA0, 0xF4, 0x39, 0xFE, 0xCC, 0xFF, 0xE1, 0x8E, 0x58, 0x42, 0xC0, 0x79,\n0x03, 0x28, 0x17, 0x5F, 0x95, 0x80, 0x58, 0xB3, 0x2E, 0x4C, 0x80, 0x3D, 0xA8, 0x8C, 0x7F, 0x26,\n0x66, 0x01, 0x15, 0x7F, 0x63, 0x1C, 0xAB, 0x5E, 0x78, 0x17, 0xFB, 0x17, 0xEE, 0x95, 0x9C, 0x26,\n0xB9, 0x80, 0x9F, 0x4B, 0xCE, 0x3F, 0x10, 0x90, 0xFB, 0x3F, 0x78, 0x40, 0xE2, 0xFF, 0x20, 0x87,\n0x75, 0x66, 0x56, 0x07, 0xAC, 0x6B, 0x27, 0xD2, 0xC9, 0xEE, 0xA1, 0x9D, 0x55, 0xED, 0xFB, 0xE1,\n0xFE, 0x4F, 0xA3, 0xCC, 0x3F, 0xEE, 0x01, 0xF1, 0x6B, 0xAD, 0xF9, 0x3F, 0xA5, 0xE0, 0x3E, 0xE5,\n0x1F, 0x2E, 0x41, 0xCB, 0x78, 0xE4, 0x61, 0xFC, 0x03, 0x01, 0xD9, 0x1A, 0xA0, 0x9D, 0xA6, 0xFB,\n0x7F, 0xA4, 0x0F, 0x82, 0xD7, 0xFB, 0x27, 0x19, 0xBD, 0x91, 0x88, 0xFF, 0x83, 0xC2, 0x7A, 0x5F,\n0x8B, 0x3F, 0x3C, 0xF5, 0xF8, 0xCE, 0x59, 0x58, 0x5E, 0x04, 0xDC, 0x0D, 0x81, 0x84, 0x7F, 0xB6,\n0x02, 0xF8, 0xC0, 0x67, 0xC1, 0xD9, 0x04, 0x58, 0xF9, 0xF7, 0x81, 0xF1, 0x0F, 0x1E, 0x90, 0xF8,\n0xBF, 0x1A, 0x01, 0x6D, 0x4D, 0x5B, 0xC2, 0x2E, 0x6C, 0xE6, 0xFF, 0x10, 0xD4, 0xFF, 0x49, 0x1B,\n0x55, 0xF4, 0x7F, 0x7A, 0xB8, 0x05, 0xF4, 0x93, 0xC0, 0x00, 0x43, 0xF3, 0x7F, 0xF0, 0x80, 0x17,\n0xD9, 0xE2, 0xDA, 0x05, 0xF8, 0x47, 0x3D, 0xA0, 0xF1, 0x0F, 0x62, 0xFC, 0x2B, 0x12, 0xF0, 0x25,\n0xF8, 0x47, 0xD6, 0x01, 0x45, 0xE0, 0x9F, 0x0C, 0x30, 0xD9, 0xD5, 0x70, 0x13, 0xA8, 0x9D, 0x35,\n0xBC, 0x53, 0x87, 0xDF, 0x51, 0xFE, 0x41, 0x0C, 0x80, 0x08, 0xEE, 0xFF, 0x46, 0x08, 0x92, 0x8B,\n0x6A, 0x75, 0xA4, 0x97, 0x20, 0x08, 0x38, 0xE7, 0xFF, 0xB6, 0xCA, 0x3F, 0xD3, 0xF6, 0x40, 0x2E,\n0xF3, 0xA9, 0x2C, 0x30, 0xDC, 0x9C, 0x2A, 0x71, 0x81, 0x50, 0x7C, 0x79, 0x3E, 0x6A, 0x49, 0xF8,\n0x64, 0x97, 0xA8, 0x7B, 0x40, 0xC7, 0x1D, 0x38, 0x08, 0xFC, 0x89, 0xB4, 0xBF, 0xFB, 0x29, 0x30,\n0x3C, 0x20, 0x8F, 0xE1, 0xB5, 0x55, 0xCD, 0xF2, 0x4F, 0xB8, 0x37, 0x22, 0x50, 0xDA, 0xB3, 0xD4,\n0x01, 0x82, 0x7F, 0x26, 0x4B, 0x05, 0x33, 0xFE, 0x99, 0x64, 0xBC, 0xBF, 0x3F, 0xCF, 0x3F, 0x7C,\n0xAC, 0x13, 0xFF, 0x57, 0x07, 0x60, 0x23, 0x29, 0x48, 0x4B, 0xF5, 0x9D, 0xFB, 0x3F, 0x6D, 0x46,\n0x40, 0xB7, 0x3B, 0x80, 0x81, 0x8E, 0xE1, 0xFF, 0xFC, 0xC8, 0x72, 0xC1, 0xD6, 0x35, 0xBA, 0x2C,\n0xF0, 0x0F, 0x1E, 0x30, 0x9B, 0xFE, 0xFE, 0x81, 0xDA, 0x68, 0x4A, 0x40, 0xE7, 0x9F, 0xAB, 0x49,\n0x79, 0xA0, 0xD7, 0x03, 0x48, 0x7F, 0xA1, 0x30, 0x54, 0x59, 0xB6, 0x03, 0xF2, 0x0A, 0x19, 0xF3,\n0x7F, 0x40, 0xE0, 0x86, 0xF1, 0xAF, 0xE6, 0x01, 0x6D, 0xC7, 0x1B, 0x82, 0xE0, 0xCF, 0xD8, 0x37,\n0x62, 0x90, 0xFB, 0xBF, 0x8A, 0x07, 0x3C, 0x51, 0xFF, 0x87, 0xEF, 0x03, 0x31, 0x02, 0x66, 0x0E,\n0x70, 0xCC, 0xF7, 0x6A, 0x8B, 0x6B, 0x80, 0x38, 0xFD, 0x83, 0x87, 0xDA, 0x35, 0x0B, 0x82, 0x61,\n0xE4, 0xD3, 0xE0, 0x9D, 0xC5, 0xFD, 0x1F, 0xD4, 0xBA, 0x3F, 0x1F, 0xE2, 0x59, 0x3B, 0xBF, 0x3B,\n0x1E, 0xF0, 0xE1, 0x62, 0xB9, 0xE0, 0x1F, 0x05, 0x7D, 0x1A, 0x3F, 0x4A, 0x67, 0x04, 0x9C, 0x86,\n0x1F, 0xF8, 0x07, 0x6D, 0x53, 0xFE, 0x8D, 0xF3, 0x5F, 0x28, 0x4F, 0x05, 0x8F, 0x57, 0xF4, 0xBF,\n0xD4, 0x9D, 0x3D, 0x6F, 0x24, 0x45, 0x10, 0x86, 0x2D, 0x3E, 0x24, 0x4B, 0xAB, 0x23, 0x3B, 0x21,\n0x91, 0x23, 0x27, 0x90, 0x5B, 0x72, 0x84, 0x2E, 0x82, 0x00, 0x52, 0x5B, 0x6B, 0x09, 0xC9, 0x84,\n0x17, 0xA2, 0x95, 0x90, 0x33, 0x92, 0xFB, 0x0D, 0xBE, 0xC0, 0x3F, 0x80, 0x90, 0x84, 0xDF, 0x47,\n0x57, 0xF5, 0x94, 0x1F, 0x97, 0x6B, 0x6B, 0xAA, 0x76, 0xCF, 0x12, 0x4B, 0xF5, 0x74, 0x4F, 0xCF,\n0x79, 0xEF, 0x84, 0x97, 0xD9, 0x67, 0xDE, 0xFA, 0xE8, 0xDE, 0xDB, 0x8D, 0x3D, 0xD6, 0x2B, 0xFE,\n0xD1, 0x36, 0xAB, 0x02, 0x70, 0xB4, 0x0F, 0x26, 0x01, 0xD7, 0xCA, 0x01, 0x17, 0x87, 0xCE, 0x28,\n0xE8, 0xE3, 0x80, 0x44, 0xBE, 0xD0, 0x7F, 0x51, 0x03, 0x62, 0x90, 0x65, 0x1A, 0x04, 0x7C, 0x5F,\n0x24, 0x80, 0xB1, 0x32, 0x01, 0x5C, 0x6B, 0x40, 0xF4, 0x1F, 0xB6, 0x56, 0x00, 0x88, 0x02, 0xFC,\n0xCD, 0x34, 0xA0, 0x89, 0xDF, 0xE7, 0xEF, 0x05, 0xEF, 0xD4, 0x32, 0x29, 0xF9, 0x07, 0x01, 0xD7,\n0x00, 0x88, 0xB0, 0xAF, 0x08, 0x28, 0x4F, 0x49, 0xB9, 0x57, 0xF4, 0x76, 0xD9, 0xAC, 0xDD, 0x54,\n0x53, 0xFF, 0x61, 0xE3, 0xA6, 0xCC, 0x12, 0x20, 0xA2, 0xFF, 0x22, 0x01, 0xCF, 0xCA, 0x04, 0x70,\n0x86, 0x3F, 0x0C, 0x64, 0x1A, 0xEE, 0x14, 0x88, 0x7E, 0x86, 0x08, 0x7C, 0xDD, 0x38, 0x60, 0x4C,\n0x06, 0xEF, 0xF7, 0x81, 0x4D, 0xFD, 0x9D, 0x88, 0x04, 0x6C, 0x69, 0xC0, 0xD7, 0x8B, 0x03, 0xEA,\n0x77, 0x85, 0x98, 0x02, 0x54, 0x7B, 0x93, 0x38, 0xC1, 0xC6, 0x3F, 0x2C, 0x2D, 0x07, 0x0C, 0xFC,\n0xFB, 0x3A, 0x25, 0xA0, 0x3C, 0xCB, 0xED, 0xB8, 0x9D, 0x8F, 0xF5, 0x82, 0x7F, 0xB4, 0x8B, 0x3A,\n0x01, 0x82, 0x15, 0x09, 0x60, 0x3B, 0x64, 0x40, 0xF4, 0x68, 0x19, 0x88, 0xCE, 0x49, 0x00, 0xBB,\n0x9E, 0xE4, 0x14, 0xE0, 0x5F, 0xE1, 0x05, 0x0F, 0x7E, 0x79, 0xA2, 0xC9, 0x51, 0xF8, 0xBF, 0x58,\n0x5A, 0x0E, 0x08, 0xFF, 0xB0, 0xBD, 0x39, 0x1B, 0x0B, 0x00, 0x3E, 0x0D, 0x3A, 0x92, 0x09, 0x21,\n0x04, 0x88, 0xFF, 0xCB, 0xB0, 0x42, 0x40, 0xDE, 0x7F, 0x24, 0x60, 0xA1, 0xFF, 0x68, 0x85, 0x00,\n0x1C, 0x83, 0x9E, 0x2F, 0x46, 0xAF, 0xF9, 0x07, 0x01, 0x13, 0x00, 0xC2, 0x3F, 0x47, 0xC0, 0xB3,\n0x18, 0xFB, 0x1B, 0x1D, 0x4C, 0x65, 0x44, 0xFC, 0x07, 0xF0, 0x45, 0x10, 0x46, 0x17, 0x18, 0x44,\n0x1E, 0x6E, 0xB5, 0x00, 0xC4, 0xBC, 0x03, 0xCC, 0x04, 0xFC, 0xE9, 0x85, 0x7A, 0xCB, 0xFF, 0xA9,\n0x81, 0xBF, 0xD7, 0xAD, 0x07, 0x4C, 0xF0, 0x27, 0x09, 0x60, 0xDD, 0x0C, 0x46, 0x64, 0x20, 0x1A,\n0x30, 0x2A, 0x40, 0xF8, 0x87, 0xFD, 0xB2, 0x57, 0x03, 0x4A, 0x01, 0x60, 0xB0, 0xAF, 0x93, 0xC7,\n0xF5, 0xBC, 0x8F, 0x6F, 0xF5, 0x9E, 0xB6, 0xBB, 0xBB, 0xE2, 0x1F, 0xAD, 0xE2, 0x1F, 0x1C, 0xFC,\n0xAB, 0xE4, 0x9F, 0x0E, 0x73, 0xE2, 0x24, 0x20, 0x21, 0xC1, 0xC7, 0x00, 0xC0, 0x20, 0x01, 0x0D,\n0x33, 0xD1, 0x64, 0xF1, 0x5A, 0x47, 0xFF, 0x19, 0x01, 0xF7, 0x78, 0xC0, 0xE8, 0x3F, 0x4C, 0x19,\n0x1A, 0x04, 0xA0, 0xF0, 0x2F, 0x58, 0xA6, 0xFF, 0x08, 0xFF, 0xE9, 0x59, 0x06, 0xA1, 0x9E, 0x8F,\n0x00, 0xEA, 0xE3, 0xE0, 0xB9, 0x03, 0xBC, 0x9C, 0x4B, 0xFE, 0x41, 0xC0, 0x4A, 0xFF, 0xD5, 0x04,\n0xDC, 0xC8, 0x9D, 0x62, 0x0E, 0x83, 0xF4, 0xF4, 0xA6, 0xBA, 0xC4, 0x01, 0xCE, 0x35, 0x20, 0xFA,\n0x2F, 0x12, 0xD0, 0x29, 0xC0, 0xC8, 0x31, 0x5C, 0x5C, 0x46, 0xFC, 0xDA, 0x31, 0x45, 0x1E, 0xF2,\n0xC2, 0xE0, 0xFD, 0x06, 0x7E, 0xEA, 0xCB, 0xFA, 0x0A, 0x70, 0xD8, 0xB1, 0xA9, 0x60, 0x70, 0x38,\n0xC9, 0x67, 0xC7, 0x29, 0xA8, 0xC0, 0x76, 0x2A, 0x58, 0xCA, 0x01, 0x3F, 0x25, 0x0C, 0x28, 0x7F,\n0x36, 0x13, 0xC0, 0x3F, 0x5D, 0xDB, 0xAE, 0x58, 0x4B, 0x41, 0x74, 0x88, 0x04, 0x5A, 0x01, 0x8C,\n0x37, 0x0A, 0xA2, 0xFD, 0x02, 0x10, 0xAC, 0x48, 0x84, 0xCC, 0xA7, 0xF8, 0xD4, 0x7F, 0xD2, 0x37,\n0xCA, 0xC3, 0x8A, 0x7F, 0xB4, 0x3A, 0xFE, 0x87, 0x55, 0xFC, 0x53, 0xFC, 0x41, 0xC0, 0x25, 0x1F,\n0x4A, 0x32, 0x74, 0x61, 0x05, 0x7D, 0xFC, 0x04, 0xE6, 0x85, 0x02, 0xE8, 0x60, 0xB5, 0xFF, 0x0B,\n0x01, 0x6B, 0x01, 0x88, 0x06, 0x4C, 0x0A, 0x60, 0x72, 0x02, 0x12, 0xFF, 0xA3, 0x00, 0x46, 0x4F,\n0x72, 0xD6, 0x89, 0x2D, 0xF9, 0x9B, 0x66, 0x25, 0x30, 0x08, 0xE5, 0x67, 0x0F, 0x8D, 0xC2, 0x01,\n0xAE, 0x09, 0xB8, 0xB1, 0x56, 0xA5, 0x82, 0x9F, 0x72, 0x65, 0x3B, 0x39, 0x4B, 0x57, 0xAB, 0x02,\n0x80, 0xD8, 0x7E, 0xFF, 0xF7, 0x8B, 0x60, 0x5B, 0x25, 0xE0, 0x59, 0xD0, 0x7F, 0xD2, 0xA3, 0xA4,\n0xC3, 0x87, 0x0D, 0xE6, 0xFD, 0x5D, 0x8C, 0x6B, 0x40, 0x7A, 0x44, 0x39, 0xA0, 0x20, 0xB0, 0xA9,\n0xFF, 0x90, 0x80, 0x5E, 0x09, 0x9A, 0xFA, 0x03, 0x82, 0xDF, 0x9C, 0x00, 0x02, 0x6B, 0xF6, 0x71,\n0xF5, 0x69, 0x00, 0x54, 0xDC, 0x19, 0xF8, 0xA4, 0xCD, 0x4C, 0x08, 0xAA, 0xCF, 0x46, 0xF8, 0x17,\n0x08, 0xF8, 0x72, 0x85, 0xA5, 0x25, 0x40, 0x02, 0x01, 0xB9, 0x59, 0x3D, 0x00, 0xED, 0xA9, 0x2E,\n0x5D, 0xE7, 0x63, 0x01, 0x7C, 0xC1, 0x3F, 0x5A, 0xA1, 0xFF, 0x3E, 0xEC, 0xD6, 0x01, 0x88, 0xE3,\n0x4B, 0x10, 0x50, 0x26, 0x2A, 0x78, 0xF8, 0xE8, 0x67, 0xFA, 0x4F, 0x44, 0x93, 0x4F, 0x84, 0x68,\n0x4F, 0x0C, 0xB5, 0x96, 0xF0, 0xEF, 0x8F, 0x35, 0x02, 0xCE, 0xCD, 0xB1, 0xA2, 0x45, 0x09, 0x28,\n0xFC, 0xCB, 0x09, 0xE8, 0x46, 0xF4, 0x9F, 0x74, 0x48, 0xE8, 0x17, 0xFF, 0x4E, 0xF3, 0x2A, 0xF9,\n0xE9, 0x28, 0xF9, 0x07, 0x01, 0x2B, 0x00, 0xD2, 0x12, 0xFD, 0x87, 0x09, 0x05, 0x17, 0x11, 0xD8,\n0xE4, 0x1F, 0x05, 0xD1, 0xBE, 0x00, 0xDA, 0x1B, 0xC5, 0x30, 0x67, 0x28, 0x31, 0x2C, 0x48, 0x3D,\n0x23, 0x1F, 0x35, 0x7D, 0x0A, 0x33, 0x5E, 0x06, 0xFA, 0x34, 0x75, 0x02, 0x3E, 0x3D, 0x0F, 0x7D,\n0x2A, 0xA4, 0xAB, 0x00, 0x47, 0x3F, 0x3E, 0x0A, 0x08, 0xF4, 0x16, 0x06, 0xFE, 0xAF, 0x52, 0xC1,\n0x7C, 0xE1, 0xE5, 0xA7, 0x78, 0xC1, 0x5A, 0xFE, 0x6C, 0xE4, 0x53, 0x10, 0x2E, 0xA7, 0xA4, 0x00,\n0x3A, 0x58, 0x5C, 0x12, 0x02, 0xFF, 0x1A, 0x1A, 0x90, 0x02, 0x98, 0x9D, 0x76, 0xCA, 0x61, 0x2A,\n0xFE, 0xD1, 0x6A, 0xFD, 0x97, 0x67, 0x42, 0xEC, 0xF3, 0x8C, 0xFE, 0x43, 0x02, 0x92, 0xFA, 0x54,\n0x1B, 0xAC, 0x83, 0x7D, 0x2E, 0x6D, 0x1A, 0xDC, 0xE0, 0xD4, 0x08, 0x03, 0x92, 0x00, 0xF6, 0xB6,\n0x50, 0x2E, 0xA4, 0x82, 0x29, 0x80, 0x6E, 0x10, 0xF0, 0xD7, 0xD4, 0x82, 0x03, 0xEC, 0x93, 0xDA,\n0xB0, 0x70, 0x10, 0x10, 0xF5, 0xF7, 0x1B, 0xFA, 0x6F, 0x69, 0xC3, 0x40, 0x60, 0xB2, 0x00, 0xA4,\n0x47, 0xC0, 0xCD, 0xA6, 0x4B, 0xC0, 0x89, 0x3D, 0x81, 0x9E, 0x9C, 0x14, 0x7F, 0x8B, 0x08, 0xAC,\n0xF9, 0x07, 0x01, 0xE3, 0x02, 0x90, 0x8C, 0x80, 0x31, 0x06, 0xE8, 0xA7, 0xA6, 0xD9, 0xDC, 0x32,\n0xE0, 0x19, 0x03, 0x44, 0xD0, 0xA1, 0x14, 0x81, 0x1D, 0xBC, 0x0C, 0xEB, 0x40, 0xA6, 0x5C, 0xEC,\n0x2B, 0x40, 0x1D, 0x2B, 0xFD, 0x87, 0x9D, 0x73, 0xB8, 0xB6, 0xE4, 0x81, 0xFF, 0x0F, 0xA9, 0xE0,\n0x17, 0x3F, 0x39, 0x3F, 0x2E, 0x0C, 0x48, 0x00, 0x10, 0xFC, 0xE9, 0x84, 0xD1, 0xBB, 0xBF, 0xF0,\n0x0F, 0xA3, 0x1C, 0xF0, 0x87, 0xC0, 0xBF, 0x26, 0x01, 0xD9, 0xB6, 0x83, 0xF3, 0x12, 0x0F, 0x8C,\n0x05, 0x80, 0x59, 0x8B, 0xFA, 0x6F, 0xE7, 0x3F, 0x75, 0x58, 0xD0, 0x7F, 0xC4, 0xB4, 0x3C, 0x02,\n0x49, 0x05, 0x5F, 0x59, 0x22, 0xF4, 0x11, 0x05, 0x18, 0xBC, 0x60, 0x92, 0x0B, 0xF0, 0xAF, 0x41,\n0xC0, 0xDF, 0xF7, 0xE1, 0xCF, 0x4E, 0x0D, 0xFF, 0x17, 0x02, 0x16, 0x09, 0x60, 0xCC, 0xA7, 0x41,\n0x54, 0xC1, 0x7A, 0x9E, 0x93, 0x0F, 0x9E, 0x21, 0x40, 0x39, 0xA9, 0xBD, 0x8C, 0x12, 0x30, 0xFF,\n0xAE, 0xD4, 0x7F, 0xD8, 0x9E, 0xF5, 0xBF, 0x5D, 0x02, 0x5A, 0xB9, 0x94, 0xBF, 0x6B, 0x14, 0x85,\n0x2D, 0xFE, 0xC5, 0x25, 0x21, 0x8E, 0x7F, 0x81, 0x80, 0xB6, 0x12, 0x04, 0x88, 0xC1, 0x27, 0x5D,\n0xEA, 0x06, 0xC4, 0x12, 0x48, 0x66, 0x01, 0x3F, 0xE6, 0x2E, 0x41, 0xCC, 0xD8, 0xD4, 0x80, 0xBC,\n0xAA, 0xAD, 0x01, 0x5D, 0x02, 0x18, 0xE1, 0xC7, 0x71, 0x32, 0x0B, 0x83, 0x3B, 0x29, 0x90, 0x4F,\n0x4D, 0x05, 0x4F, 0xFC, 0xE1, 0x01, 0xCB, 0x44, 0x0F, 0x5F, 0x10, 0xCD, 0x02, 0x90, 0x94, 0x80,\n0xD4, 0xBF, 0x18, 0xFF, 0x32, 0x2F, 0xD8, 0xE1, 0x4F, 0xF5, 0x9F, 0x3E, 0xD5, 0xE7, 0xFD, 0x6C,\n0x81, 0xED, 0x98, 0x0B, 0xDE, 0xF4, 0x01, 0x08, 0xF1, 0xA2, 0x79, 0x09, 0xE8, 0xB5, 0x9F, 0xCE,\n0x68, 0x7E, 0x21, 0xAC, 0xA0, 0x62, 0x01, 0x04, 0x7D, 0x41, 0x60, 0xAD, 0xFF, 0xB0, 0x4A, 0xFF,\n0x41, 0xC2, 0xE8, 0x00, 0x43, 0x48, 0x2C, 0x16, 0xC3, 0xC0, 0xBF, 0x86, 0x06, 0xE4, 0xB7, 0x89,\n0x9D, 0xDF, 0x1E, 0xFD, 0x07, 0x05, 0xB9, 0x18, 0x47, 0xE4, 0x5F, 0x4F, 0x03, 0x2A, 0xE8, 0x7A,\n0x04, 0x34, 0xE2, 0x6D, 0xB8, 0x53, 0xA4, 0xDB, 0x55, 0xC1, 0xBF, 0x58, 0x0E, 0x48, 0x01, 0x60,\n0x46, 0xC0, 0xB3, 0x90, 0x9E, 0xD0, 0x93, 0xA3, 0x16, 0x1A, 0xCF, 0x86, 0x88, 0x41, 0x23, 0x27,\n0xB4, 0x94, 0x09, 0x85, 0x2F, 0xBC, 0xC0, 0x43, 0xB4, 0xAD, 0x00, 0x7B, 0xFC, 0xB3, 0xAD, 0x61,\n0x68, 0x21, 0xFD, 0x61, 0xA7, 0x53, 0x58, 0x12, 0xD2, 0xAE, 0x85, 0x39, 0x5A, 0x03, 0x5E, 0xA3,\n0xFD, 0x64, 0xD4, 0x42, 0x40, 0x1D, 0x96, 0x38, 0x20, 0x3B, 0xC3, 0xC0, 0xBF, 0x84, 0x80, 0x06,\n0x40, 0xF8, 0xD7, 0xD2, 0x80, 0x83, 0x73, 0x3C, 0xCB, 0xEF, 0x66, 0x71, 0x97, 0x1A, 0x61, 0xC0,\n0x82, 0x7F, 0x94, 0x03, 0xC6, 0x00, 0x20, 0x51, 0xC0, 0x8C, 0x80, 0x3F, 0xE3, 0xD3, 0xB9, 0xB8,\n0xD6, 0x9C, 0x11, 0x00, 0x93, 0xE1, 0xF1, 0x2A, 0x28, 0x40, 0xC2, 0x67, 0x69, 0x01, 0x74, 0x52,\n0x0C, 0x53, 0xF1, 0xEF, 0xFD, 0xCB, 0x65, 0xC1, 0x7F, 0x07, 0xF0, 0x65, 0x04, 0x44, 0xFF, 0x95,\n0x71, 0xC0, 0x44, 0xD2, 0xD2, 0x9F, 0x3F, 0x00, 0x78, 0x67, 0x10, 0xCB, 0x5C, 0xFC, 0x5C, 0xF2,\n0x0F, 0x8B, 0xF1, 0xBF, 0x16, 0x01, 0x95, 0x76, 0x7A, 0x10, 0x29, 0xD1, 0x3E, 0x29, 0x18, 0x17,\n0x80, 0xE4, 0x04, 0x5C, 0x4B, 0x00, 0x63, 0xDB, 0x19, 0x03, 0xCC, 0xF2, 0x1A, 0x00, 0x0D, 0x62,\n0xC1, 0x46, 0xA2, 0x7D, 0x2E, 0x13, 0xEC, 0x5E, 0xEA, 0xAA, 0x60, 0x10, 0x98, 0x50, 0xB1, 0xA3,\n0x00, 0x8F, 0x2B, 0x07, 0x9C, 0x04, 0x4C, 0x8E, 0xD3, 0x49, 0x06, 0x57, 0x25, 0x30, 0x4C, 0x47,\n0xEB, 0x9A, 0x5F, 0x00, 0x6C, 0x10, 0x94, 0x8E, 0x02, 0x54, 0x0D, 0xF8, 0xC6, 0xBC, 0xE0, 0x50,\n0x00, 0x18, 0x8B, 0x61, 0x84, 0x7D, 0xAA, 0xFF, 0xAC, 0x00, 0x30, 0xBB, 0xFB, 0x54, 0x03, 0xC2,\n0xBF, 0x0B, 0xF5, 0x61, 0x70, 0x80, 0x4D, 0x0F, 0xAA, 0x22, 0x2C, 0xF8, 0x47, 0x93, 0x23, 0xF0,\n0x2F, 0x33, 0xB7, 0x00, 0xE4, 0x99, 0x4B, 0xC7, 0x54, 0x4C, 0xAF, 0x91, 0x80, 0xCA, 0x03, 0xCB,\n0x90, 0xD2, 0x43, 0x35, 0x20, 0xFC, 0xCB, 0x09, 0x58, 0xF1, 0x0F, 0x0A, 0xC6, 0x02, 0xE8, 0x9A,\n0x80, 0x83, 0x7F, 0x8F, 0x05, 0x00, 0x0D, 0xD4, 0x85, 0x00, 0x7C, 0x7C, 0xA4, 0x06, 0x1C, 0xFD,\n0xE7, 0x2B, 0x61, 0x78, 0xE3, 0x1A, 0xFC, 0x43, 0x03, 0x12, 0xFF, 0x6B, 0x13, 0xF0, 0x49, 0xFE,\n0x59, 0xDD, 0x3C, 0x61, 0x63, 0x45, 0x60, 0xE4, 0x5F, 0xAD, 0x01, 0x95, 0x7F, 0xB9, 0x9D, 0xF9,\n0xFD, 0x0F, 0x88, 0xD6, 0x41, 0x2B, 0x7E, 0x06, 0x19, 0xE7, 0x10, 0x53, 0xBF, 0xC0, 0x0D, 0x77,\n0x3A, 0x81, 0x6B, 0xDB, 0x80, 0x60, 0x1D, 0xFF, 0x23, 0x0E, 0x98, 0x11, 0x90, 0xA2, 0xC0, 0x6F,\n0x4E, 0x81, 0x80, 0xD7, 0x3D, 0x01, 0x28, 0xFD, 0x08, 0x0D, 0xA8, 0x09, 0xE0, 0x37, 0x28, 0xC0,\n0x85, 0x81, 0xF3, 0x4F, 0x28, 0x07, 0x74, 0xFC, 0xAB, 0x35, 0x20, 0xFC, 0x2B, 0xBC, 0x60, 0xAF,\n0xFF, 0x4C, 0xFC, 0xC9, 0x68, 0x20, 0x1C, 0xB3, 0xB5, 0xF8, 0x1F, 0x4D, 0xE8, 0xB8, 0xCE, 0xBF,\n0x5D, 0xF0, 0x82, 0xC9, 0xFF, 0x5A, 0x77, 0x53, 0x6B, 0x26, 0x7F, 0x48, 0xF9, 0x46, 0xFE, 0xB1,\n0x24, 0xA4, 0xE0, 0x1F, 0x4B, 0x42, 0x48, 0x00, 0x77, 0x09, 0xC8, 0x57, 0xA4, 0x17, 0x04, 0xA4,\n0x00, 0x30, 0xB7, 0x58, 0x00, 0x98, 0x05, 0x37, 0x7F, 0x7B, 0x0A, 0x03, 0x3C, 0x3C, 0xC7, 0x1F,\n0xD1, 0x02, 0x2E, 0xE0, 0x5F, 0x1B, 0x80, 0x14, 0x00, 0xD6, 0x04, 0x9C, 0xDC, 0xBB, 0x33, 0xFF,\n0x60, 0x47, 0x20, 0xD0, 0xA0, 0x98, 0x16, 0x40, 0x67, 0xE5, 0x80, 0xF0, 0x2F, 0x03, 0xA0, 0x87,\n0x13, 0x42, 0x0E, 0x2D, 0x87, 0xEA, 0xB3, 0x98, 0x20, 0x2A, 0x10, 0x3C, 0xB2, 0x6A, 0xCE, 0x59,\n0x5C, 0x33, 0xA7, 0xD6, 0xD7, 0x80, 0x96, 0x03, 0xD1, 0xA1, 0x6F, 0xE7, 0x24, 0x83, 0x1D, 0xFF,\n0x98, 0x9D, 0x88, 0x02, 0xC4, 0x0D, 0x4E, 0xC9, 0x47, 0x28, 0xF0, 0x00, 0x63, 0x01, 0xF0, 0x1B,\n0x9F, 0xF9, 0x20, 0x17, 0x22, 0x74, 0x34, 0x02, 0xAE, 0xF3, 0x8F, 0x82, 0x68, 0xBD, 0xAF, 0xBE,\n0x2C, 0x8C, 0x25, 0x21, 0xB6, 0xA1, 0x87, 0x1C, 0x73, 0xB8, 0xBD, 0xB3, 0x00, 0x8F, 0x98, 0xF0,\n0x11, 0xFD, 0x57, 0x36, 0xF8, 0x57, 0xD9, 0x87, 0xB8, 0x03, 0x0C, 0x08, 0x74, 0xED, 0x61, 0x91,\n0x3F, 0xD4, 0xCA, 0x79, 0x44, 0x38, 0x18, 0xC2, 0xBF, 0x9A, 0x80, 0x2D, 0xFE, 0x59, 0x2A, 0xB8,\n0xD0, 0x7F, 0x94, 0x03, 0x52, 0x00, 0x58, 0xD8, 0x9E, 0x00, 0x20, 0x53, 0xBA, 0x0C, 0xE8, 0x3F,\n0xFA, 0x1C, 0x39, 0xE6, 0x99, 0x02, 0xE8, 0x92, 0x80, 0xE8, 0xBF, 0xB2, 0xA1, 0xFF, 0xD4, 0x03,\n0x26, 0x5E, 0x2C, 0x34, 0x94, 0x4E, 0xF9, 0x68, 0x8B, 0x7F, 0x2C, 0x09, 0xA1, 0x00, 0xA6, 0x52,\n0x80, 0x38, 0xB3, 0xE8, 0x37, 0xA0, 0xE5, 0xCA, 0x60, 0xF6, 0x95, 0xB8, 0xF8, 0x35, 0x73, 0xE0,\n0x74, 0xFE, 0x63, 0x38, 0xC1, 0x44, 0x19, 0x65, 0xE8, 0x56, 0x01, 0xCA, 0xA0, 0xBD, 0x29, 0x00,\n0xA9, 0x07, 0x54, 0xCB, 0x9D, 0xE0, 0x53, 0x28, 0x07, 0x3C, 0x4F, 0xB8, 0xF7, 0xE9, 0x3B, 0x44,\n0xB3, 0x00, 0x04, 0x05, 0x48, 0x22, 0x98, 0x8D, 0x11, 0x54, 0x00, 0x4A, 0x5D, 0x68, 0x4D, 0x40,\n0x0D, 0x00, 0x7E, 0xD9, 0x30, 0xDD, 0x21, 0xDA, 0x20, 0x67, 0xE2, 0xEF, 0xCE, 0xB4, 0xE0, 0x9D,\n0x06, 0x79, 0xCC, 0x31, 0x46, 0x00, 0xF6, 0x08, 0x88, 0xDA, 0x0B, 0x51, 0x40, 0x6C, 0xF7, 0xBD,\n0xF1, 0x0F, 0x2D, 0xE3, 0x61, 0x48, 0x95, 0xC7, 0x00, 0x80, 0x72, 0xAE, 0xEC, 0x57, 0x24, 0x80,\n0x1B, 0x04, 0x2C, 0xF8, 0x47, 0xC2, 0xA3, 0xE5, 0xFF, 0x92, 0x0A, 0x86, 0x7F, 0x0D, 0x2F, 0x98,\n0xC2, 0x46, 0x66, 0xB1, 0xCC, 0x51, 0x6C, 0x56, 0x8B, 0xC7, 0x68, 0xA9, 0x9B, 0xC2, 0xBF, 0x92,\n0x80, 0xE8, 0xBF, 0x1E, 0x01, 0x2D, 0xD0, 0x87, 0x7F, 0x30, 0xEE, 0x14, 0xE9, 0x7A, 0x69, 0x2A,\n0x90, 0x05, 0x20, 0x0D, 0x0D, 0x08, 0xFF, 0x52, 0x73, 0x49, 0x90, 0x7C, 0x5B, 0x84, 0xD1, 0x21,\n0x22, 0x9B, 0x1B, 0x90, 0x2F, 0x76, 0xA8, 0x14, 0xF2, 0x81, 0xD4, 0x48, 0x46, 0xFC, 0xE7, 0x32,\n0x17, 0x0C, 0x07, 0xA5, 0x1F, 0x18, 0x06, 0xB4, 0x3C, 0xF0, 0xFE, 0xE3, 0x74, 0x36, 0x89, 0x6E,\n0x39, 0xC1, 0x87, 0xA7, 0x82, 0x59, 0x00, 0x42, 0x0C, 0xF0, 0x27, 0xBD, 0x96, 0xB9, 0x2F, 0x07,\n0xFC, 0xE5, 0xDB, 0x55, 0xFE, 0xB1, 0x3B, 0x60, 0x43, 0xFF, 0x91, 0x08, 0x11, 0xFD, 0x87, 0x02,\n0xBC, 0xF5, 0x37, 0x33, 0xDB, 0x23, 0x20, 0x00, 0xAB, 0xA6, 0xFC, 0xEB, 0x19, 0xFC, 0x8B, 0x8B,\n0x40, 0xE6, 0x8C, 0xD1, 0xFC, 0xDF, 0xA2, 0xFF, 0x86, 0xFE, 0x6B, 0xD8, 0xDE, 0x02, 0x98, 0x8F,\n0x91, 0x82, 0x93, 0x80, 0xA1, 0x40, 0x26, 0x83, 0x26, 0xFC, 0x6B, 0x10, 0x50, 0xA9, 0x0D, 0xBF,\n0x13, 0xAA, 0x6B, 0x2A, 0xD8, 0x73, 0x8F, 0x69, 0x24, 0x20, 0x0E, 0x70, 0x4D, 0xC0, 0x4D, 0xAB,\n0x09, 0xFE, 0x54, 0x00, 0xDA, 0x43, 0x52, 0x47, 0x71, 0x16, 0xCC, 0x19, 0xD6, 0xAE, 0xB2, 0x90,\n0x04, 0x70, 0x4D, 0x40, 0xF8, 0x57, 0x00, 0x90, 0x05, 0x20, 0xC4, 0xF4, 0x6C, 0xE2, 0xB9, 0x05,\n0xF7, 0x92, 0x5D, 0x5E, 0xC0, 0x64, 0xE6, 0x0A, 0xFB, 0x24, 0x49, 0x65, 0x24, 0x42, 0xE6, 0x65,\n0xDB, 0x58, 0x02, 0x92, 0x1E, 0xA7, 0x5A, 0x0E, 0x98, 0x09, 0xC0, 0x43, 0x11, 0xC8, 0x02, 0x90,\n0x39, 0x5E, 0x43, 0x41, 0x9D, 0xCC, 0xD9, 0x9B, 0xA1, 0x01, 0x29, 0x00, 0x2C, 0x0C, 0xFD, 0x57,\n0x13, 0x50, 0xB4, 0x9F, 0x85, 0xFC, 0xEE, 0x6C, 0x6B, 0x37, 0x9F, 0x06, 0x5E, 0xD8, 0x88, 0xFE,\n0xAB, 0x5A, 0xEE, 0xFF, 0x06, 0x5D, 0xB8, 0x83, 0x7F, 0x04, 0xF3, 0x75, 0xF4, 0x4D, 0x0E, 0x1C,\n0xDF, 0xB5, 0x3E, 0xC3, 0x80, 0x6D, 0x43, 0xFF, 0x95, 0x46, 0x01, 0x74, 0x82, 0x4B, 0x0C, 0xFE,\n0x95, 0x36, 0x7F, 0x27, 0x1D, 0x99, 0x85, 0xAE, 0xBF, 0xD8, 0xCB, 0xFC, 0x38, 0xD7, 0x41, 0x03,\n0xD6, 0xFA, 0x0F, 0x02, 0x6E, 0xBA, 0xCD, 0x42, 0xC5, 0x03, 0x71, 0xE6, 0x05, 0x8B, 0x71, 0x36,\n0x59, 0x78, 0x01, 0xFF, 0x4A, 0xA3, 0x00, 0xB0, 0x1F, 0x03, 0xF4, 0x19, 0x5B, 0xAF, 0xE4, 0x10,\n0x83, 0x31, 0x6D, 0x82, 0x83, 0xCB, 0x8B, 0x61, 0x65, 0x34, 0x5F, 0x20, 0x5D, 0x45, 0x00, 0x3F,\n0xA7, 0x1C, 0xB0, 0x6F, 0xC3, 0xBF, 0x4D, 0xF3, 0xC0, 0x27, 0xB5, 0x22, 0x24, 0x0F, 0x03, 0xC2,\n0x3E, 0x76, 0x07, 0xEC, 0x9B, 0x7E, 0x03, 0xC8, 0x64, 0x9C, 0x21, 0xCF, 0x4E, 0xCC, 0x67, 0x31,\n0x0C, 0xFC, 0xAB, 0x12, 0x21, 0xDC, 0x7C, 0x75, 0x22, 0xE4, 0x4F, 0x76, 0x80, 0xD1, 0xE7, 0xF9,\n0x30, 0xFE, 0xE0, 0xEE, 0x56, 0x03, 0x82, 0x6A, 0xE8, 0xBF, 0xB2, 0x5D, 0xEC, 0xDE, 0x75, 0x2D,\n0x90, 0x2E, 0x06, 0x03, 0x6D, 0x4E, 0x86, 0x60, 0xAD, 0xCB, 0x71, 0x3C, 0x00, 0x3F, 0xC6, 0x29,\n0x4E, 0xB0, 0xCD, 0x6B, 0x0A, 0xBE, 0x3F, 0x00, 0x80, 0x1A, 0xF5, 0xCB, 0x15, 0x20, 0x04, 0xBC,\n0x72, 0x6F, 0xCF, 0x9C, 0x46, 0xF9, 0x3C, 0x67, 0xEF, 0xB0, 0x8A, 0x80, 0x07, 0xFC, 0x6F, 0x9D,\n0x1B, 0x60, 0x91, 0x04, 0x36, 0x9F, 0x61, 0x86, 0x00, 0x4D, 0x07, 0xCA, 0x33, 0xF5, 0xB2, 0x7F,\n0x0B, 0xC2, 0xBF, 0x0A, 0x80, 0xBE, 0x84, 0x19, 0xB1, 0x67, 0x27, 0xC7, 0xBA, 0x18, 0xFC, 0xE3,\n0x0A, 0x08, 0x52, 0x27, 0xC3, 0x48, 0x84, 0x11, 0xE9, 0x58, 0x46, 0x00, 0xB5, 0xA1, 0x00, 0xFB,\n0x56, 0x28, 0xC0, 0xD3, 0xD9, 0x19, 0xA6, 0xE1, 0x04, 0x33, 0x69, 0x5B, 0x58, 0xFF, 0x26, 0x97,\n0x72, 0x38, 0x35, 0x38, 0x6B, 0x61, 0xDA, 0x0A, 0x70, 0x4B, 0x09, 0x60, 0x69, 0x1B, 0x8B, 0x6B,\n0xCF, 0x3B, 0xDA, 0x18, 0x38, 0x06, 0x96, 0x05, 0xCB, 0x74, 0xF8, 0xBF, 0x6D, 0x02, 0x5E, 0xBC,\n0xC3, 0xAA, 0x28, 0xE0, 0x03, 0xD4, 0xB3, 0xD3, 0xEC, 0x9C, 0xAC, 0x69, 0x0E, 0xA4, 0xA5, 0x00,\n0xEF, 0xDB, 0xF8, 0x29, 0x4A, 0x60, 0x82, 0x27, 0x0C, 0x03, 0xD7, 0xA4, 0x23, 0x25, 0x80, 0xB5,\n0xDD, 0x0F, 0xF8, 0x39, 0xD2, 0xA5, 0x5C, 0xFF, 0xD1, 0xBD, 0x1F, 0x01, 0x7F, 0x62, 0x76, 0x81,\n0x02, 0x6C, 0xD8, 0x21, 0xFC, 0xFB, 0x8A, 0x24, 0xB0, 0x9A, 0xE2, 0x10, 0x51, 0xA8, 0xDE, 0xF0,\n0x6E, 0x3C, 0x2B, 0xBF, 0x6C, 0xF3, 0xEF, 0x6D, 0xE3, 0xA6, 0x3E, 0x83, 0x58, 0x3A, 0xC2, 0xBC,\n0xB8, 0xA4, 0x97, 0xD7, 0xE0, 0x2A, 0xFB, 0x04, 0x07, 0xEA, 0xCE, 0x23, 0x32, 0xC4, 0x11, 0xA9,\n0x86, 0x29, 0x14, 0xA0, 0xA8, 0x3F, 0x31, 0x24, 0x60, 0x3F, 0x06, 0x18, 0x15, 0xE0, 0xC9, 0xAE,\n0x08, 0x79, 0x4E, 0xC0, 0xBD, 0x2E, 0xF1, 0x11, 0x49, 0x10, 0x7C, 0x5F, 0x69, 0x96, 0xF4, 0xD5,\n0x93, 0x0E, 0x7A, 0xE8, 0xC0, 0x22, 0xE0, 0xCA, 0xBE, 0x7D, 0x4B, 0x11, 0x4C, 0x65, 0xE3, 0x6B,\n0xFD, 0x35, 0xB4, 0x43, 0x1D, 0xEB, 0xF4, 0x68, 0x24, 0xA1, 0xE7, 0x96, 0xC5, 0x8D, 0x17, 0x75,\n0x01, 0xF8, 0xAE, 0x6F, 0x37, 0x0F, 0x37, 0x52, 0x04, 0x88, 0xF3, 0x1B, 0x10, 0xC8, 0x69, 0x7C,\n0xFE, 0x49, 0x92, 0xE6, 0x5D, 0xF9, 0x77, 0xDF, 0xD4, 0x80, 0x9A, 0xAF, 0x6D, 0x82, 0xAF, 0x6F,\n0x9A, 0x5B, 0x6E, 0xF3, 0xEF, 0x3E, 0xCF, 0x68, 0xD3, 0x07, 0xD7, 0xC7, 0xEF, 0xFF, 0xA3, 0x7F,\n0x77, 0x98, 0x79, 0x30, 0x4A, 0x6A, 0xE9, 0xE6, 0x5D, 0xDB, 0x2E, 0x9A, 0x0E, 0xB0, 0x54, 0xC4,\n0xFB, 0x24, 0xF0, 0x1D, 0xF7, 0xCD, 0x86, 0xFB, 0xE5, 0x62, 0xF0, 0xEF, 0xB2, 0xCB, 0xBF, 0x6F,\n0x47, 0xC5, 0x42, 0x53, 0x01, 0xB2, 0x59, 0x29, 0x02, 0x0E, 0x6F, 0x98, 0x7A, 0xE6, 0x48, 0x44,\n0xCF, 0x4E, 0xB4, 0x22, 0x86, 0x20, 0x24, 0x25, 0xDC, 0x8F, 0x00, 0x5A, 0x03, 0x81, 0x5D, 0xFE,\n0x99, 0x02, 0x2C, 0x9D, 0xE0, 0xD1, 0xFE, 0x73, 0x09, 0x58, 0x39, 0xC1, 0xF6, 0xE3, 0xBE, 0x91,\n0xF2, 0x65, 0x82, 0x02, 0x1C, 0x6A, 0x90, 0xF5, 0x20, 0x02, 0xC0, 0x26, 0x01, 0xDF, 0x7E, 0xCB,\n0x36, 0x30, 0x25, 0xFE, 0x2E, 0xBF, 0xD4, 0xEF, 0x01, 0xB6, 0x64, 0xEF, 0x0E, 0xE4, 0xC9, 0x85,\n0x1C, 0x77, 0xBA, 0xE4, 0x5D, 0xBE, 0x29, 0x7B, 0xD3, 0xFB, 0xA8, 0x94, 0x4E, 0x17, 0xD3, 0xF1,\n0x41, 0xB5, 0xEF, 0x01, 0x71, 0xF8, 0x0B, 0x3E, 0x9D, 0xF0, 0x6F, 0x1C, 0x6B, 0x0A, 0x10, 0x56,\n0x08, 0x55, 0xDA, 0xFC, 0xCB, 0x35, 0x20, 0x4A, 0xEF, 0x60, 0xFE, 0xB5, 0x09, 0x78, 0x2F, 0x0D,\n0xE8, 0xE5, 0xFD, 0xF1, 0x3B, 0xF9, 0xFD, 0xC3, 0x56, 0x11, 0x46, 0x41, 0x77, 0xAD, 0xEF, 0x2A,\n0x04, 0xAC, 0xAD, 0x97, 0x03, 0x99, 0xE5, 0xF2, 0xEE, 0xC9, 0x68, 0xF7, 0xCD, 0x84, 0xE0, 0x9D,\n0xE9, 0x3F, 0xBD, 0xAF, 0x5A, 0xF6, 0x56, 0x9E, 0xD6, 0xDB, 0x26, 0x00, 0xF9, 0x52, 0x37, 0xD6,\n0xAC, 0xA1, 0xD3, 0x30, 0x12, 0x1F, 0x7E, 0xE3, 0x7C, 0xDC, 0x63, 0x87, 0xB5, 0x7C, 0xA7, 0x84,\n0x08, 0xCA, 0x2C, 0x02, 0x68, 0x3F, 0xFD, 0xDC, 0x5E, 0xD1, 0x04, 0xA0, 0x20, 0xB0, 0x56, 0x80,\n0x27, 0xB3, 0x47, 0xF4, 0x2B, 0xEF, 0x0C, 0xED, 0xA9, 0x87, 0x2B, 0x3C, 0x03, 0x82, 0x36, 0xD5,\n0x43, 0xAD, 0x55, 0x07, 0xB3, 0x95, 0x67, 0x6A, 0x93, 0x80, 0x97, 0x97, 0xF2, 0xA8, 0xB6, 0x85,\n0x20, 0xB0, 0x0F, 0x39, 0x68, 0x76, 0x31, 0xDB, 0xC5, 0xEB, 0xF3, 0xEF, 0x66, 0xF7, 0x40, 0x1D,\n0xAF, 0x13, 0x82, 0x3E, 0x39, 0xF2, 0xA3, 0x8E, 0x8D, 0x24, 0xC8, 0xE3, 0xFD, 0xFD, 0x63, 0x93,\n0x80, 0xB6, 0x68, 0xAD, 0xD6, 0x7F, 0x9C, 0x99, 0xE4, 0x5B, 0xC2, 0xB4, 0x09, 0x38, 0xFF, 0x4B,\n0xDD, 0xEE, 0x86, 0x89, 0xFE, 0xBB, 0xFA, 0xEE, 0x47, 0x10, 0x18, 0xF7, 0x8D, 0x80, 0x8A, 0xCA,\n0xBF, 0xD1, 0x0E, 0xF1, 0x82, 0x2F, 0xBA, 0xFA, 0x2F, 0xDE, 0x28, 0xE4, 0x83, 0x35, 0x86, 0xAC,\n0xFA, 0x4F, 0xEF, 0xAB, 0x5E, 0x06, 0x64, 0xAB, 0x37, 0xEB, 0xB6, 0x07, 0x40, 0xB8, 0x87, 0x9F,\n0x0A, 0x08, 0xC3, 0x3E, 0xA9, 0x91, 0x8D, 0x7A, 0x09, 0x19, 0x43, 0x94, 0xD0, 0x08, 0xEB, 0xFE,\n0xE1, 0x19, 0x0E, 0xC4, 0xC5, 0x8D, 0x48, 0x84, 0x85, 0x4C, 0x9B, 0xFC, 0x53, 0x06, 0xD6, 0x08,\n0x9C, 0x76, 0x02, 0x1A, 0x70, 0x2D, 0x07, 0x2C, 0x7C, 0x3C, 0x3F, 0x5C, 0xFF, 0x81, 0x40, 0x9B,\n0x32, 0x51, 0x11, 0xA8, 0xFA, 0x6F, 0xB1, 0x3A, 0x13, 0x2C, 0x77, 0x94, 0xB4, 0xED, 0x0F, 0x1D,\n0x00, 0xAA, 0x06, 0x94, 0x38, 0xA0, 0x31, 0x4F, 0x87, 0x9D, 0xBF, 0xBD, 0xF5, 0xA9, 0xAE, 0xAD,\n0xA3, 0x01, 0x1B, 0x71, 0x77, 0x3B, 0xDB, 0x27, 0xF5, 0x01, 0xEE, 0xC5, 0xBC, 0x26, 0xFA, 0x4F,\n0x86, 0x1A, 0x80, 0xA2, 0xA8, 0xB4, 0x77, 0xF4, 0xDF, 0x7E, 0x02, 0x7E, 0x4C, 0xB2, 0xC0, 0xEF,\n0x7B, 0xFA, 0xCF, 0xAC, 0xC5, 0xBF, 0xD9, 0xAF, 0xCA, 0xE2, 0x46, 0xC3, 0xDF, 0x4B, 0xEF, 0x37,\n0x12, 0xF1, 0x61, 0x77, 0x73, 0x38, 0x01, 0x1B, 0xFA, 0xCF, 0x9A, 0xDD, 0x22, 0x7A, 0x2C, 0x85,\n0x80, 0xC6, 0xC0, 0x8B, 0xC9, 0xBF, 0xD9, 0x1A, 0xFC, 0x13, 0xFD, 0x27, 0x6D, 0xDB, 0x07, 0x20,\n0x05, 0x2C, 0x40, 0xCE, 0x19, 0xC8, 0x0B, 0x3B, 0x1B, 0xE0, 0x3C, 0xC7, 0xBF, 0xC1, 0x19, 0xCF,\n0x39, 0xA7, 0x1D, 0x2D, 0xFB, 0x71, 0x87, 0x7F, 0xD6, 0x17, 0xCE, 0xFD, 0x0F, 0x8A, 0x01, 0xD7,\n0xDC, 0x60, 0x1D, 0x8E, 0xE0, 0x1F, 0x4A, 0x4F, 0x1B, 0x10, 0xC4, 0x2F, 0x7E, 0xB2, 0xCF, 0x86,\n0x06, 0xAC, 0x02, 0x80, 0xD6, 0xDE, 0xD6, 0xF8, 0xB3, 0xB6, 0xD1, 0xFB, 0xDB, 0x92, 0x79, 0xEC,\n0x71, 0x39, 0xAE, 0x67, 0x0D, 0x20, 0xED, 0x95, 0xF9, 0xA7, 0x6D, 0x77, 0xE3, 0x70, 0x17, 0xB6,\n0xC5, 0x57, 0x9B, 0x04, 0xA8, 0x52, 0xC1, 0x57, 0xCA, 0x93, 0xA9, 0xAC, 0x7A, 0xFA, 0x0F, 0x02,\n0x7E, 0x8C, 0x69, 0x60, 0xEC, 0x7D, 0xAA, 0xF8, 0x3E, 0xF2, 0x57, 0xD1, 0x7F, 0x68, 0xC0, 0x8A,\n0x7F, 0xDA, 0x2B, 0x2F, 0xF8, 0xCA, 0xDE, 0x80, 0xD1, 0x28, 0x7D, 0x96, 0x16, 0xA2, 0x06, 0x82,\n0xBE, 0xC3, 0x09, 0x58, 0xF1, 0x6F, 0xA0, 0x8D, 0xC6, 0xB3, 0xD1, 0x0A, 0x01, 0xE5, 0x2C, 0x27,\n0x09, 0xA7, 0xA8, 0xFE, 0x93, 0xD6, 0xA9, 0x82, 0xB6, 0x9B, 0x75, 0x5B, 0x03, 0xD0, 0x88, 0xC7,\n0x36, 0xF7, 0x61, 0xF9, 0x5A, 0x8C, 0xF9, 0xF1, 0x32, 0x05, 0x1B, 0xF0, 0xC4, 0xFC, 0xBF, 0x4C,\n0x3E, 0xB9, 0x6B, 0x71, 0x53, 0xAC, 0x3E, 0x01, 0x6D, 0xA8, 0x3D, 0xE0, 0x53, 0x89, 0x03, 0xAE,\n0x78, 0xC1, 0xEC, 0x08, 0x78, 0x28, 0xFF, 0x24, 0xD0, 0x67, 0xF5, 0x80, 0x40, 0x50, 0x3A, 0xFB,\n0xE2, 0x4F, 0xAB, 0x56, 0x03, 0x6F, 0xED, 0x91, 0xAA, 0x71, 0xC0, 0x1E, 0x00, 0x89, 0x03, 0x6A,\n0x70, 0x9B, 0x08, 0xA0, 0x9C, 0x6E, 0xE7, 0x5D, 0xDD, 0x55, 0x80, 0xBD, 0x04, 0xC8, 0x4E, 0x07,\n0x3E, 0xA8, 0x0F, 0x1F, 0x1E, 0x72, 0xFC, 0x69, 0xFE, 0xE3, 0x0A, 0xFF, 0xAF, 0xA8, 0x81, 0x31,\n0xF8, 0xC9, 0xD8, 0xE1, 0x5F, 0xE5, 0x05, 0x23, 0xFF, 0x66, 0xAB, 0x62, 0x83, 0xE5, 0x76, 0xA8,\n0x18, 0xF8, 0x1B, 0x7D, 0x5D, 0x02, 0x0A, 0xF9, 0x82, 0x02, 0xF4, 0x4A, 0x70, 0x39, 0x0D, 0xEC,\n0xD9, 0xDB, 0x7A, 0xF3, 0x7A, 0x5E, 0x30, 0xF4, 0x23, 0x0C, 0x48, 0xA0, 0xC4, 0xA4, 0xE0, 0xB8,\n0x10, 0xFE, 0xD1, 0x4A, 0xFE, 0xD1, 0x56, 0xEF, 0xEA, 0x33, 0xC7, 0x36, 0x90, 0x95, 0xA4, 0x30,\n0x74, 0x8C, 0x9B, 0x24, 0xCC, 0x0B, 0xB0, 0x19, 0x21, 0x18, 0x90, 0xC8, 0x0B, 0x13, 0xE0, 0x4D,\n0xEA, 0x7D, 0x3E, 0x7B, 0x50, 0x87, 0x05, 0xFD, 0xEC, 0xA4, 0x5E, 0x70, 0xCE, 0x3F, 0x83, 0xDF,\n0x89, 0xC4, 0x01, 0x57, 0xAB, 0x60, 0x8E, 0xE1, 0x1F, 0x0A, 0xF0, 0x1A, 0xEF, 0xD7, 0x06, 0x31,\n0xC1, 0x1F, 0x1A, 0x50, 0x09, 0x98, 0xEB, 0x3F, 0xEE, 0xAA, 0x31, 0xAF, 0xF8, 0x47, 0x53, 0xC8,\n0xB1, 0x25, 0xA0, 0x5F, 0xDF, 0xEE, 0x1E, 0xFF, 0xEB, 0xFA, 0x6F, 0x17, 0x50, 0x17, 0xCD, 0xEB,\n0x3F, 0x95, 0x80, 0xD3, 0x0B, 0xF6, 0xAE, 0x1C, 0x4C, 0x9C, 0xE2, 0x47, 0x0E, 0xB9, 0x44, 0x03,\n0xC6, 0x04, 0x30, 0x8A, 0x4A, 0xC7, 0x0E, 0xFF, 0xDA, 0xFB, 0x21, 0xC0, 0x3F, 0x2C, 0xF2, 0xCF,\n0x5B, 0x1D, 0xFF, 0xB3, 0x9E, 0x13, 0xF0, 0x51, 0xF8, 0xA7, 0x1A, 0x78, 0x1E, 0x09, 0x02, 0xC9,\n0x7F, 0xD0, 0x0E, 0x21, 0xE0, 0xA6, 0x0A, 0x00, 0xD2, 0x94, 0x7C, 0xE3, 0x98, 0xFE, 0x02, 0x26,\n0xFC, 0xD3, 0xE7, 0x29, 0xAD, 0x4A, 0x00, 0xD3, 0x56, 0xF8, 0x87, 0x02, 0x64, 0x0D, 0x70, 0x06,\n0xAE, 0xB8, 0xE5, 0x8B, 0xBF, 0x64, 0x07, 0x99, 0xA8, 0x01, 0xF9, 0xE7, 0x9B, 0x1A, 0xD0, 0xC2,\n0x7E, 0x06, 0xC3, 0xC3, 0x00, 0xE8, 0x10, 0xD8, 0x50, 0x80, 0x63, 0x76, 0x02, 0x61, 0xC0, 0xE9,\n0x04, 0x9F, 0x27, 0x5F, 0x0F, 0x7C, 0x1C, 0xFF, 0xF0, 0x81, 0xAF, 0xF9, 0x62, 0x60, 0x0A, 0x64,\n0x26, 0xFF, 0x20, 0xE0, 0x76, 0xBB, 0xB2, 0x08, 0xCE, 0xDD, 0x54, 0xFF, 0x32, 0x77, 0xFE, 0x2A,\n0x52, 0x04, 0x41, 0x18, 0x07, 0xCD, 0x14, 0xCD, 0x44, 0x10, 0x43, 0x65, 0x23, 0xC1, 0xF0, 0x60,\n0x23, 0xB9, 0xEC, 0x12, 0x53, 0x65, 0x85, 0x0B, 0x7C, 0x86, 0x05, 0xF1, 0x49, 0x34, 0xB8, 0xE7,\n0xF0, 0xF5, 0xAC, 0xA9, 0xB5, 0xF8, 0x5D, 0x6F, 0x4D, 0xF5, 0xD7, 0xBB, 0x33, 0xC2, 0xD4, 0x37,\n0x7F, 0x7A, 0x47, 0xD0, 0x13, 0x6E, 0x7F, 0x7C, 0xDD, 0x55, 0xD5, 0xF3, 0x5A, 0xF1, 0x0F, 0x35,\n0xAB, 0xDB, 0xD3, 0x54, 0x98, 0x22, 0x40, 0xDB, 0x00, 0x18, 0x0B, 0xD8, 0x2D, 0x86, 0x71, 0xE0,\n0x49, 0x00, 0x7A, 0x29, 0x20, 0xDF, 0x54, 0x3B, 0xA6, 0x33, 0x78, 0x97, 0xF1, 0xC7, 0x37, 0xDF,\n0x48, 0xD0, 0xF5, 0x80, 0x0F, 0x0D, 0xFE, 0x4C, 0x92, 0x7F, 0x44, 0x1F, 0x7F, 0x0E, 0xBF, 0x84,\n0x3F, 0xBD, 0x25, 0xBE, 0x9C, 0x00, 0x83, 0xEC, 0x8E, 0xFF, 0x0B, 0xFC, 0xC5, 0x2D, 0xB0, 0x07,\n0xFB, 0x4C, 0xE1, 0xFF, 0x7E, 0x5D, 0x4B, 0x40, 0xBD, 0x00, 0x08, 0x00, 0x21, 0x9F, 0x17, 0x09,\n0xB8, 0x15, 0x9C, 0x56, 0x06, 0x27, 0xFA, 0xA1, 0x1B, 0xC9, 0x3F, 0xF4, 0xBE, 0xE6, 0x5F, 0xF3,\n0x52, 0x24, 0x91, 0xA9, 0xB5, 0x27, 0xE9, 0x29, 0xDB, 0x9E, 0xAA, 0x6D, 0xAE, 0xA8, 0x1B, 0xAC,\n0xB9, 0x0A, 0xE6, 0xC0, 0x1F, 0xF5, 0x2F, 0x03, 0x04, 0x04, 0x7B, 0xEF, 0x1C, 0x81, 0x3A, 0x13,\n0xBC, 0xA9, 0x55, 0xC0, 0xCE, 0x2C, 0xF8, 0x7A, 0x03, 0x48, 0xEE, 0x97, 0x42, 0x98, 0x18, 0x9C,\n0x03, 0xB0, 0xDE, 0x13, 0xD5, 0x27, 0xBE, 0x8D, 0x5E, 0xF7, 0x13, 0xC0, 0xE8, 0x44, 0x40, 0xEA,\n0xA1, 0xBF, 0xF9, 0xD8, 0xF7, 0xF7, 0x30, 0xFC, 0xB5, 0x5A, 0xA7, 0x00, 0x10, 0x07, 0x38, 0xE9,\n0xC8, 0x9E, 0x30, 0x7E, 0x63, 0xD0, 0x7E, 0xF3, 0x1D, 0x05, 0xFB, 0x9F, 0x15, 0xFF, 0xEE, 0x4D,\n0x43, 0xB3, 0x60, 0x40, 0x55, 0x78, 0xC0, 0xDF, 0x19, 0x81, 0x21, 0x4C, 0x61, 0x99, 0x00, 0x21,\n0x04, 0xFE, 0x38, 0xEF, 0xCB, 0x65, 0xC0, 0xD3, 0xD2, 0x9F, 0x5D, 0x39, 0x1A, 0x07, 0x48, 0x11,\n0xF4, 0x87, 0x20, 0x1F, 0x04, 0xBC, 0x1D, 0x0F, 0xB1, 0x00, 0x98, 0x11, 0xE8, 0x46, 0x90, 0x19,\n0x70, 0xF6, 0x7F, 0x26, 0xC5, 0x3F, 0xED, 0x01, 0x79, 0x27, 0x48, 0x4B, 0x2A, 0xEE, 0x3C, 0xF5,\n0xA3, 0x99, 0xC2, 0x32, 0xF4, 0xA3, 0x0B, 0x36, 0xD2, 0x25, 0xFC, 0x2B, 0xCA, 0x01, 0x3E, 0x7D,\n0xBC, 0x0F, 0xD6, 0x38, 0x01, 0xDF, 0xC4, 0x41, 0xA8, 0x14, 0xF0, 0x66, 0xD6, 0x01, 0xBF, 0x4C,\n0xCA, 0x06, 0xD0, 0xE2, 0x5A, 0xFE, 0x11, 0x6C, 0x05, 0x18, 0x9F, 0x5E, 0x04, 0xFE, 0x88, 0x27,\n0xA4, 0x82, 0x73, 0x01, 0xCC, 0x18, 0x01, 0x6F, 0xCE, 0xE5, 0x1E, 0x90, 0x17, 0x81, 0x4C, 0x83,\n0xD3, 0xED, 0xC8, 0x6F, 0xBD, 0x5A, 0x08, 0xDC, 0xDD, 0x5E, 0xCA, 0x3F, 0x57, 0xA4, 0x82, 0x9B,\n0x5E, 0x06, 0x3F, 0xE0, 0x5F, 0x0B, 0x80, 0xFD, 0xFC, 0xB6, 0xF1, 0xDF, 0xC1, 0x1F, 0x64, 0x51,\n0xBB, 0x41, 0x13, 0xF0, 0xEC, 0x37, 0x03, 0xE0, 0xF7, 0x6F, 0xE0, 0xA7, 0xF6, 0x7F, 0x32, 0x11,\n0xC2, 0x0F, 0xC8, 0x59, 0xF0, 0x0F, 0xF0, 0x65, 0xFC, 0xB9, 0xE2, 0x9E, 0xF9, 0x67, 0xC7, 0xED,\n0x78, 0x48, 0xFF, 0x87, 0xA2, 0xF1, 0xA3, 0xA9, 0x15, 0xD8, 0x05, 0xFD, 0xD0, 0x8D, 0xE2, 0x9F,\n0xF6, 0x80, 0xFE, 0x56, 0x38, 0xBD, 0x5F, 0x69, 0x91, 0xC3, 0xE0, 0x83, 0x0A, 0x01, 0xBD, 0xEC,\n0x01, 0x71, 0x7D, 0xDC, 0x93, 0xC6, 0xF8, 0x57, 0xAF, 0x02, 0x4E, 0xA7, 0xCB, 0x47, 0x1B, 0x59,\n0x07, 0x5C, 0x6A, 0xFF, 0xA6, 0x57, 0xC0, 0xA5, 0xA0, 0x13, 0x84, 0x19, 0x31, 0xFE, 0xAF, 0x01,\n0x60, 0xF1, 0x5E, 0xE0, 0x57, 0x59, 0x10, 0xB0, 0xF0, 0x7F, 0x28, 0x5A, 0x42, 0x4C, 0xCD, 0xD6,\n0xD0, 0xF6, 0x30, 0x6B, 0xA1, 0xFF, 0x3B, 0x9E, 0xF3, 0x8F, 0x72, 0x40, 0x13, 0x17, 0x0B, 0xCC,\n0x8F, 0xDF, 0x0C, 0x07, 0x93, 0x1E, 0x66, 0xF7, 0x4B, 0x69, 0xC8, 0x17, 0x57, 0x31, 0x01, 0x56,\n0xEB, 0x80, 0x60, 0xCF, 0x34, 0x8D, 0x45, 0x01, 0xCC, 0x18, 0x01, 0xF9, 0x01, 0x65, 0x2A, 0xD8,\n0x0C, 0x60, 0x81, 0xC0, 0xF3, 0x54, 0xB0, 0x37, 0x80, 0x2C, 0xF1, 0x80, 0x3B, 0xE9, 0xFF, 0x50,\n0x9B, 0x07, 0xB1, 0x4B, 0x14, 0x00, 0x26, 0xCD, 0xF2, 0xCF, 0x13, 0xC0, 0x49, 0xF3, 0xFE, 0x2F,\n0x03, 0x90, 0xF7, 0x7A, 0x40, 0xAC, 0x4C, 0x42, 0x92, 0xC5, 0x2C, 0x1E, 0xAA, 0xB7, 0xFE, 0xD2,\n0x29, 0x3C, 0x9B, 0xFE, 0x20, 0x98, 0xFD, 0x32, 0x44, 0xA8, 0xC0, 0x5F, 0x26, 0xA0, 0x45, 0xCF,\n0x01, 0xC6, 0x54, 0x78, 0x43, 0xEB, 0x80, 0xE7, 0x5A, 0xE8, 0xFF, 0xFC, 0x29, 0x89, 0xE0, 0x2F,\n0x77, 0x34, 0x80, 0x0C, 0x11, 0xF0, 0x60, 0xB4, 0x43, 0x48, 0xFB, 0xBF, 0xA6, 0x1C, 0x30, 0xC2,\n0x27, 0xC0, 0xAC, 0x7E, 0x27, 0x0F, 0xB8, 0xD0, 0xFF, 0x7D, 0x45, 0x7C, 0x60, 0x4D, 0x3F, 0x2E,\n0x1F, 0xC0, 0x1F, 0xE7, 0x6C, 0x3D, 0x60, 0x34, 0x80, 0x68, 0x0B, 0xC8, 0xFC, 0x37, 0x7B, 0xC0,\n0x3A, 0x07, 0xEC, 0x1C, 0x7C, 0xEC, 0x00, 0xC1, 0x25, 0xFC, 0xD3, 0x04, 0x84, 0x7F, 0xF9, 0xB4,\n0xEB, 0x1C, 0xFF, 0x32, 0xFE, 0xFC, 0x64, 0x89, 0x34, 0x6E, 0xBE, 0x9A, 0xBA, 0xCC, 0x03, 0x4A,\n0xFF, 0x87, 0xA2, 0x01, 0x84, 0x3C, 0xD9, 0xF3, 0xE2, 0xF7, 0x6A, 0x26, 0xF8, 0xFD, 0x6C, 0x74,\n0x98, 0xF5, 0x7F, 0x19, 0x80, 0x7F, 0x18, 0xC4, 0x18, 0x12, 0xD2, 0xF2, 0x91, 0xB6, 0x90, 0x16,\n0xC1, 0x4E, 0x08, 0xA3, 0x5B, 0xE0, 0x0B, 0x07, 0x28, 0x09, 0xD8, 0xA6, 0x44, 0x6A, 0xF8, 0x6D,\n0xC5, 0xFA, 0xF5, 0x36, 0xC7, 0xB2, 0x63, 0x01, 0xFF, 0x98, 0xF2, 0x4E, 0x36, 0x30, 0xB2, 0xC2,\n0x77, 0x14, 0xC0, 0xB4, 0x04, 0x4C, 0x2D, 0x21, 0x9F, 0x63, 0xFE, 0x9B, 0x25, 0x00, 0x98, 0xCA,\n0x01, 0xA3, 0xB3, 0xB3, 0xB0, 0x7F, 0x45, 0x4B, 0x48, 0xCF, 0xEF, 0x65, 0xFE, 0x65, 0xFC, 0x59,\n0x1C, 0xA7, 0xDD, 0xDE, 0x93, 0x03, 0xE4, 0x68, 0xCE, 0x87, 0xE4, 0xFF, 0x00, 0x5F, 0x3B, 0xD2,\n0xFE, 0x0F, 0x02, 0xD6, 0x06, 0xF0, 0x34, 0x72, 0x09, 0xFF, 0x57, 0x10, 0x50, 0xF2, 0x8F, 0x96,\n0x10, 0x4E, 0x5F, 0x00, 0x9C, 0x3F, 0x52, 0xDF, 0xE0, 0xAF, 0x63, 0xC2, 0xDF, 0x92, 0x96, 0x10,\n0xF2, 0xBF, 0x85, 0x8C, 0x7E, 0x4C, 0x14, 0xF0, 0x7F, 0x49, 0x75, 0x01, 0x60, 0xD6, 0x21, 0xF9,\n0xBF, 0x67, 0x00, 0xB0, 0xCA, 0x57, 0xA4, 0x2E, 0x5E, 0x76, 0xC3, 0x3A, 0x6F, 0x1A, 0xD6, 0x01,\n0x5E, 0xC7, 0x21, 0xC8, 0xFA, 0x1F, 0x42, 0x9A, 0x7F, 0x3C, 0xCC, 0xFC, 0x9B, 0x6E, 0x21, 0xFF,\n0xB4, 0x89, 0x65, 0xC0, 0xD6, 0x03, 0x5E, 0xD7, 0x00, 0x52, 0xAF, 0x01, 0x46, 0x07, 0x08, 0xFE,\n0x2F, 0xC7, 0xB3, 0x33, 0x02, 0x1E, 0xA8, 0x7F, 0x41, 0x94, 0x03, 0x6A, 0x00, 0x52, 0x0E, 0xF8,\n0x9C, 0xA2, 0x06, 0x24, 0x3D, 0xA0, 0x00, 0x60, 0x2A, 0x80, 0x41, 0x7C, 0xF4, 0x62, 0x98, 0xB3,\n0x02, 0xC0, 0x79, 0xFC, 0x59, 0x18, 0x1E, 0x1A, 0xFE, 0x15, 0xF8, 0x33, 0x29, 0xFF, 0xA7, 0x09,\n0x68, 0xF2, 0xCB, 0x0C, 0x03, 0x7F, 0xC3, 0xBF, 0x32, 0xE4, 0xFC, 0xB7, 0x6C, 0x09, 0xE1, 0xBF,\n0x9F, 0x8F, 0x26, 0x5D, 0x74, 0x5A, 0xFF, 0x5B, 0x4E, 0x40, 0xED, 0xFF, 0x10, 0x53, 0xE0, 0xE3,\n0x89, 0x7F, 0xA5, 0x32, 0xFF, 0x2A, 0x1D, 0xCE, 0x13, 0xC0, 0x77, 0x16, 0x65, 0x12, 0x84, 0xC0,\n0xFF, 0x25, 0xDF, 0x47, 0x4A, 0xD7, 0x9F, 0x2D, 0x77, 0x81, 0xE4, 0x7C, 0x7D, 0x0F, 0x40, 0x29,\n0x85, 0x3F, 0x9E, 0xCF, 0x2F, 0xFF, 0xE1, 0x00, 0xB7, 0xE4, 0x05, 0xAB, 0xD9, 0xAF, 0x0E, 0xD6,\n0xFF, 0x54, 0xDC, 0xE5, 0xA0, 0x18, 0x26, 0x25, 0x80, 0x4B, 0x7D, 0x52, 0xF8, 0x43, 0x2F, 0x69,\n0x8A, 0xC3, 0xFF, 0x09, 0x0F, 0x28, 0x1B, 0x40, 0x34, 0xFF, 0x50, 0xB8, 0x9A, 0xD2, 0x01, 0xD2,\n0x14, 0xC7, 0x9B, 0x91, 0x8C, 0x1A, 0xC6, 0xBF, 0x9F, 0x25, 0x02, 0xA5, 0xFF, 0x23, 0x32, 0xFD,\n0x02, 0x7C, 0x3E, 0xAA, 0xB3, 0x20, 0x3F, 0x7A, 0x91, 0xF8, 0x57, 0x33, 0xB0, 0x69, 0x0B, 0xEE,\n0xF1, 0x6F, 0x4F, 0xF7, 0xAF, 0x5D, 0x7D, 0xFE, 0xBB, 0xA2, 0x07, 0xD4, 0x00, 0x64, 0x1A, 0x4C,\n0x03, 0x48, 0xA1, 0xDC, 0x00, 0x57, 0xEB, 0x90, 0xF8, 0x07, 0x00, 0x05, 0x05, 0x13, 0xC5, 0x28,\n0xFB, 0xE3, 0xE1, 0x7A, 0x26, 0xF0, 0x23, 0x16, 0xF0, 0x52, 0xFE, 0xD5, 0x08, 0x74, 0xB8, 0x71,\n0xE0, 0x01, 0x63, 0xB0, 0x99, 0x65, 0xC0, 0xC6, 0x03, 0xAE, 0x90, 0xFF, 0xCD, 0xEF, 0x02, 0xA9,\n0xFD, 0x5F, 0x6E, 0x09, 0x31, 0xA3, 0xD7, 0xD1, 0xA7, 0x51, 0x00, 0x42, 0x40, 0x9F, 0xD5, 0x74,\n0x1D, 0xE0, 0xEE, 0x4A, 0xFE, 0xCD, 0xAD, 0x53, 0x31, 0xF0, 0x62, 0x18, 0xE0, 0x57, 0x4C, 0x80,\n0xFD, 0xC2, 0x06, 0xD1, 0x76, 0xB9, 0xCF, 0xF8, 0x2B, 0xD6, 0x01, 0xC9, 0xFF, 0x76, 0x12, 0x21,\n0x24, 0x82, 0x5B, 0xEE, 0x51, 0x0D, 0x53, 0xE1, 0x4F, 0x13, 0xB0, 0xC0, 0x5F, 0x9C, 0xFB, 0xC7,\n0xFC, 0x2B, 0xF0, 0xE7, 0xB7, 0xA6, 0x5B, 0x06, 0xF8, 0xCD, 0xE8, 0x22, 0x02, 0xA6, 0x06, 0x90,\n0x5A, 0x11, 0x3B, 0x1A, 0x40, 0x0A, 0x49, 0xFF, 0x87, 0x0E, 0x99, 0x7F, 0x19, 0x80, 0x94, 0xFC,\n0xA5, 0x4F, 0x69, 0x93, 0x03, 0x36, 0x83, 0x11, 0x01, 0x31, 0xED, 0x36, 0x1C, 0x17, 0x5A, 0xC0,\n0x3E, 0xFE, 0xEC, 0x32, 0xEB, 0x00, 0x37, 0xB4, 0x27, 0xE0, 0xE3, 0xB8, 0x6E, 0x07, 0x18, 0xCD,\n0x3F, 0x4F, 0x07, 0xD3, 0x00, 0x57, 0x11, 0x90, 0x49, 0x30, 0xF9, 0x0F, 0xED, 0x01, 0x8D, 0x72,\n0xB5, 0xA2, 0x25, 0x84, 0x19, 0xF0, 0x90, 0x05, 0x5C, 0x8F, 0x7F, 0x47, 0x56, 0x01, 0x03, 0x74,\n0x1C, 0x9C, 0x26, 0xDA, 0x82, 0xA3, 0x01, 0xAE, 0x83, 0xC0, 0xC2, 0xFF, 0xC9, 0x54, 0x70, 0xB0,\n0x0F, 0xC1, 0xC2, 0x01, 0x00, 0x12, 0x79, 0xFE, 0xAB, 0xD6, 0x01, 0xED, 0xEE, 0x39, 0xA0, 0x12,\n0x81, 0xFB, 0x40, 0xA0, 0x45, 0x63, 0xA4, 0x17, 0x7A, 0x40, 0x9D, 0x00, 0x46, 0xEE, 0x00, 0x29,\n0x00, 0xAC, 0x95, 0x0A, 0x60, 0x6A, 0x25, 0xFE, 0x15, 0x00, 0x7C, 0x9B, 0x16, 0xFF, 0xEC, 0x92,\n0xEC, 0x5E, 0xDA, 0x17, 0x50, 0x87, 0xFF, 0x4D, 0xE3, 0xE0, 0xD3, 0x10, 0x1C, 0x74, 0x80, 0xFE,\n0xC0, 0xD9, 0x57, 0x4C, 0x7E, 0x9D, 0x89, 0xDB, 0x59, 0x06, 0x64, 0x6F, 0x98, 0x75, 0xF8, 0x47,\n0x63, 0x30, 0x05, 0x30, 0x63, 0x04, 0x7C, 0x2F, 0x00, 0x48, 0x4B, 0x48, 0xE9, 0xFF, 0x72, 0x4B,\n0x08, 0xBF, 0xFD, 0x72, 0x19, 0xF0, 0x76, 0x3C, 0x8A, 0x39, 0x5A, 0x0C, 0xA6, 0x23, 0x52, 0xC0,\n0x5E, 0xF3, 0x52, 0x3B, 0xC0, 0xC7, 0x7B, 0xE4, 0xDF, 0x77, 0xE9, 0x37, 0xA9, 0xE0, 0x9F, 0x22,\n0x20, 0xFE, 0x8F, 0x33, 0xD4, 0x16, 0x00, 0xAA, 0xD0, 0x13, 0x60, 0x52, 0xC1, 0xDF, 0x9D, 0x7F,\n0x06, 0xB8, 0xBE, 0x03, 0xDC, 0xB3, 0x0C, 0x78, 0x5C, 0x95, 0x80, 0xCC, 0x7F, 0x95, 0xC2, 0x01,\n0x0A, 0xFA, 0x91, 0x0A, 0x96, 0xFC, 0xA3, 0x1C, 0x10, 0xFE, 0xB5, 0x00, 0x54, 0x34, 0xA3, 0xFC,\n0x99, 0x2D, 0x04, 0xEB, 0xDA, 0xC1, 0xA7, 0xFA, 0x2F, 0xD6, 0x20, 0xD4, 0xD2, 0xFC, 0xA3, 0x29,\n0x38, 0xE7, 0x3F, 0x02, 0x81, 0xDB, 0xAA, 0x06, 0x9C, 0x62, 0x65, 0xFF, 0x47, 0x1E, 0xC4, 0xF9,\n0xA7, 0xE2, 0xB3, 0xCF, 0x82, 0x8D, 0x7F, 0x5A, 0xAF, 0xB5, 0xFF, 0xA3, 0x1C, 0x30, 0x12, 0xC0,\n0x4A, 0xBB, 0x8B, 0xFD, 0xDF, 0xF1, 0x97, 0xC2, 0x1F, 0x2D, 0x21, 0xF1, 0x55, 0xE7, 0x48, 0x67,\n0xEC, 0x00, 0x68, 0xE8, 0x10, 0x08, 0x2C, 0xF8, 0x27, 0x08, 0xE8, 0x95, 0x7F, 0xD3, 0x0D, 0xC1,\n0xC2, 0x26, 0x01, 0xAC, 0x03, 0xFC, 0xF5, 0xD7, 0x00, 0xA3, 0x25, 0xC4, 0xE7, 0xBF, 0x02, 0x81,\n0x16, 0xB3, 0x05, 0xD0, 0x0B, 0xCB, 0x01, 0x49, 0x00, 0x6B, 0xD1, 0x00, 0x22, 0x04, 0xFF, 0xA4,\n0x28, 0x00, 0xEC, 0x00, 0x30, 0x6F, 0x73, 0x90, 0xB6, 0x42, 0x05, 0x7A, 0xF6, 0xD4, 0x61, 0xB8,\n0x6E, 0x3C, 0x8D, 0x6E, 0x38, 0xA9, 0x8C, 0xBF, 0x9C, 0x05, 0x7E, 0x17, 0xCF, 0x0A, 0x07, 0xD8,\n0x3E, 0xD8, 0xC2, 0xEE, 0x80, 0xE1, 0x01, 0xFF, 0x4B, 0xFE, 0x43, 0xE3, 0xEF, 0xB4, 0x43, 0x74,\n0xF0, 0x4F, 0x29, 0xEC, 0x9F, 0xD2, 0x4D, 0xEC, 0x8F, 0xBA, 0xD3, 0x3A, 0xBD, 0x25, 0xE4, 0xA2,\n0x02, 0xC0, 0x79, 0x31, 0xA0, 0x1C, 0x70, 0x5F, 0xE3, 0x8F, 0xB3, 0xD9, 0x01, 0xB0, 0x0B, 0x17,\n0x5E, 0x84, 0x4E, 0xE8, 0x54, 0xB0, 0x0D, 0x27, 0xE8, 0xF9, 0xE0, 0x74, 0xFA, 0x47, 0x3B, 0xA6,\n0xB1, 0xF4, 0x7F, 0xB9, 0x18, 0xA6, 0x8B, 0xBF, 0x38, 0xBD, 0xAA, 0xD1, 0xE7, 0xF9, 0xFB, 0x2E,\n0xFE, 0xFC, 0x4F, 0xFD, 0x0D, 0x20, 0x9A, 0x7F, 0x5F, 0x2F, 0x25, 0x20, 0xFE, 0x4F, 0x00, 0x70,\n0x47, 0x03, 0x88, 0xF0, 0x80, 0xF0, 0x4F, 0x7A, 0xC0, 0x83, 0xF3, 0x0F, 0x00, 0xCA, 0xC8, 0xEE,\n0x8E, 0xCE, 0xB7, 0x55, 0x83, 0x14, 0xB0, 0x1D, 0xA4, 0x81, 0x95, 0xA8, 0xF6, 0xB3, 0x83, 0x46,\n0x60, 0x22, 0x9E, 0x99, 0x82, 0x74, 0x2D, 0x06, 0xDB, 0x2C, 0x48, 0x9C, 0x17, 0xC6, 0x9B, 0x21,\n0x8D, 0xC7, 0x1B, 0x33, 0x80, 0xC3, 0xC2, 0xFF, 0xE9, 0x75, 0xC0, 0x91, 0xF0, 0xB7, 0x84, 0xFC,\n0xA5, 0xEE, 0x8C, 0x59, 0xDB, 0x86, 0xA2, 0x28, 0x5C, 0x97, 0x06, 0x82, 0x4D, 0x34, 0x88, 0x36,\n0x86, 0x4E, 0x1E, 0x14, 0xB4, 0x64, 0xE8, 0x12, 0x11, 0x30, 0x04, 0x8C, 0x37, 0x0F, 0xF6, 0x66,\n0x5C, 0xAC, 0xCD, 0xAB, 0x32, 0x95, 0x42, 0xF1, 0xA6, 0xA1, 0x74, 0xCE, 0xE6, 0x0E, 0x9D, 0x42,\n0x7F, 0x40, 0x06, 0x93, 0xBF, 0xD7, 0x73, 0xAF, 0xFD, 0x72, 0xAC, 0xC6, 0xD2, 0xBD, 0x06, 0xA7,\n0xA1, 0xE7, 0xDC, 0xF7, 0xF4, 0xEC, 0xBC, 0x92, 0xC6, 0x79, 0xFD, 0x74, 0x9E, 0xE4, 0xA4, 0xEF,\n0xE6, 0xCF, 0xDE, 0x54, 0x55, 0xF7, 0x23, 0x21, 0x5D, 0x0D, 0x78, 0x96, 0x37, 0xBB, 0xE0, 0x8E,\n0x4F, 0x87, 0xE6, 0xBF, 0xCF, 0x2E, 0xCB, 0xF5, 0x3F, 0xB8, 0x31, 0x01, 0x6A, 0xE9, 0xFF, 0x93,\n0x44, 0x72, 0xEC, 0x1B, 0xB1, 0xF1, 0x0D, 0x30, 0xCE, 0x0C, 0x08, 0xD4, 0x31, 0x01, 0x4A, 0xFF,\n0xF7, 0xCE, 0xF8, 0x80, 0xFC, 0x87, 0x49, 0x5F, 0x42, 0x00, 0x64, 0xDF, 0xF0, 0x86, 0xE8, 0x3E,\n0xAE, 0xFF, 0x79, 0xCC, 0xFC, 0x77, 0xDC, 0x0C, 0xE8, 0x56, 0xC4, 0x37, 0x00, 0x1A, 0x06, 0xFF,\n0xE4, 0x37, 0x40, 0x7B, 0x2C, 0xF9, 0xEF, 0x6D, 0x7B, 0x14, 0xFC, 0x06, 0xB4, 0xA9, 0xD4, 0x56,\n0x89, 0xD6, 0x63, 0x6D, 0x51, 0x87, 0x80, 0x30, 0x21, 0xE8, 0xF6, 0x17, 0x11, 0x98, 0xC8, 0xD1,\n0xA5, 0x44, 0x10, 0xF7, 0x31, 0x01, 0xB3, 0xE8, 0x64, 0xD7, 0x7C, 0x5E, 0x19, 0x77, 0x7C, 0xCD,\n0x60, 0x7F, 0xB2, 0xF3, 0xD5, 0x61, 0x6A, 0xB9, 0x75, 0x36, 0x72, 0xEA, 0x8C, 0x3F, 0x00, 0x67,\n0x78, 0x7E, 0xD1, 0x95, 0x65, 0x6A, 0x4B, 0x09, 0x58, 0xA4, 0x5E, 0xB9, 0x6F, 0x00, 0xA7, 0x29,\n0xF6, 0xB7, 0x9E, 0x82, 0x41, 0x40, 0xAF, 0xFA, 0x4B, 0x9F, 0x80, 0x16, 0xF2, 0xCF, 0x24, 0xE0,\n0xFD, 0x95, 0xDB, 0xDF, 0xDC, 0xFA, 0xB2, 0xFC, 0xE5, 0xF4, 0xF2, 0xD7, 0x65, 0x55, 0x40, 0x5D,\n0x8D, 0xFA, 0x72, 0x8F, 0x57, 0x9B, 0x5D, 0x43, 0x77, 0x58, 0xFF, 0x9D, 0xFA, 0xD5, 0xE1, 0x59,\n0xD5, 0x70, 0xF7, 0x62, 0x7E, 0xE1, 0xD0, 0x07, 0xB4, 0xEA, 0x06, 0xE8, 0x4D, 0xB2, 0x4E, 0x9E,\n0x97, 0xA9, 0xC7, 0xF7, 0xC9, 0xA3, 0x74, 0xEF, 0xA5, 0x25, 0x87, 0x69, 0xED, 0xAB, 0x04, 0xE8,\n0xF2, 0xE8, 0x23, 0x7C, 0x7A, 0x5A, 0xAD, 0x6A, 0xEC, 0xE2, 0xD3, 0xEB, 0x43, 0xB0, 0xD6, 0x72,\n0x6B, 0xDA, 0x3A, 0x3B, 0x6B, 0xBD, 0x80, 0x51, 0x6E, 0xFB, 0x34, 0x6B, 0x29, 0xDB, 0x3C, 0x75,\n0x36, 0xBA, 0x40, 0x00, 0xF4, 0x68, 0x3E, 0xEF, 0xCA, 0xE9, 0xFA, 0xDA, 0x61, 0x5C, 0x06, 0xEC,\n0xC5, 0xB9, 0xCF, 0xBD, 0x61, 0x0A, 0x17, 0xA6, 0xC1, 0xBF, 0x61, 0xBC, 0x3A, 0x77, 0x39, 0x8E,\n0x57, 0xD8, 0xDD, 0x39, 0xB5, 0x58, 0x2E, 0x51, 0xA6, 0x16, 0x32, 0xCB, 0xCF, 0xAA, 0xFB, 0x87,\n0x7B, 0x97, 0x30, 0x8F, 0x01, 0xD0, 0xD4, 0x62, 0x29, 0xB6, 0x4A, 0xBB, 0x4B, 0xA7, 0xEE, 0x2E,\n0xB3, 0xD8, 0xFD, 0xBA, 0xEA, 0x77, 0xCA, 0x53, 0x70, 0xAF, 0xF0, 0xA9, 0x57, 0x76, 0xAE, 0x23,\n0x9F, 0x3B, 0x04, 0xA0, 0xA1, 0xC1, 0x45, 0xBB, 0xB2, 0xCC, 0xDF, 0xAC, 0x93, 0x67, 0xF6, 0x11,\n0x10, 0x4E, 0x82, 0x0F, 0xD1, 0xDA, 0x6B, 0x00, 0x50, 0xD8, 0x65, 0x35, 0x99, 0x76, 0x7B, 0x3A,\n0xAD, 0xB0, 0x2B, 0x41, 0xBB, 0x65, 0xA3, 0x30, 0xAF, 0xB5, 0xC5, 0x1B, 0x8A, 0xAC, 0xDB, 0x53,\n0x33, 0x60, 0xCD, 0x9F, 0xAB, 0x5E, 0x59, 0xC7, 0x4B, 0x80, 0x54, 0x7B, 0x82, 0xD5, 0xE2, 0x12,\n0xDE, 0x0A, 0x83, 0xDD, 0x4A, 0x64, 0x39, 0xEA, 0xA0, 0x95, 0x79, 0xCF, 0xA9, 0xA2, 0x18, 0x6A,\n0xAE, 0x28, 0x9B, 0x4A, 0x1B, 0x26, 0x9E, 0xFB, 0x14, 0x67, 0x59, 0x76, 0x87, 0x7F, 0xDA, 0x96,\n0xEE, 0xA4, 0x2D, 0x16, 0x82, 0x37, 0x4B, 0x4A, 0x95, 0xEF, 0x60, 0xD0, 0x4F, 0x87, 0x65, 0x07,\n0x7C, 0xFF, 0xE0, 0x12, 0x38, 0x79, 0xF5, 0x13, 0x7F, 0xC2, 0x92, 0x7E, 0x66, 0xE5, 0xB0, 0x5D,\n0x9B, 0xAF, 0x07, 0x5F, 0x9A, 0xCB, 0x59, 0xB6, 0x3A, 0x77, 0xEA, 0x6B, 0x31, 0xD4, 0x6F, 0x43,\n0x69, 0xF5, 0xE0, 0xA4, 0x9E, 0xDC, 0xEC, 0xD6, 0xEB, 0xE5, 0x65, 0x1A, 0x75, 0x5C, 0x8E, 0x4E,\n0xBA, 0x5D, 0x2F, 0xFF, 0x26, 0x6D, 0x10, 0x90, 0x7A, 0x53, 0x8B, 0xA9, 0x1A, 0x11, 0x7A, 0xC2,\n0x40, 0xE9, 0xB6, 0x4F, 0xDE, 0xB0, 0xD5, 0xD5, 0xA1, 0x3A, 0xF5, 0xBB, 0x96, 0x78, 0xBB, 0x1F,\n0x49, 0xB6, 0x0C, 0x9C, 0x09, 0xE0, 0x08, 0x3E, 0x22, 0x91, 0xFD, 0xC6, 0x7E, 0xF9, 0x53, 0x1D,\n0xDA, 0x8B, 0xD8, 0xA7, 0xD1, 0xCC, 0x47, 0xC0, 0xB3, 0xF6, 0xA4, 0x3D, 0x22, 0x01, 0x2D, 0xFE,\n0x75, 0x4F, 0x94, 0x6E, 0x9D, 0x46, 0x63, 0x46, 0x9A, 0xA7, 0x51, 0x1E, 0x83, 0x6D, 0x56, 0xE5,\n0x85, 0xCA, 0x87, 0xBF, 0xAF, 0x88, 0x15, 0xAB, 0x31, 0x92, 0x48, 0x73, 0xC1, 0xE3, 0x6C, 0x9C,\n0x65, 0xBE, 0x0C, 0x08, 0x52, 0xF4, 0x3D, 0x01, 0x50, 0xF3, 0x1F, 0xEA, 0xA7, 0x8D, 0x40, 0xCC,\n0xC0, 0xCE, 0xF6, 0x0A, 0x6C, 0x7B, 0x70, 0xE4, 0xBF, 0x2B, 0x91, 0x9B, 0x7F, 0xD0, 0xC2, 0x53,\n0x22, 0x5F, 0xFE, 0xBB, 0xC4, 0x4B, 0x35, 0xF6, 0x06, 0xC0, 0x21, 0x6A, 0x58, 0x1A, 0xA5, 0x09,\n0x10, 0x12, 0x06, 0x9A, 0xD5, 0x2B, 0x52, 0xAC, 0x16, 0x17, 0xFE, 0x3A, 0xE0, 0xDF, 0xC9, 0xC0,\n0xCD, 0xBF, 0x09, 0x96, 0xB7, 0x05, 0x40, 0x08, 0xBC, 0xBA, 0x01, 0xCD, 0xAA, 0x1D, 0xF8, 0xC6,\n0x4D, 0x70, 0xA2, 0xF8, 0x43, 0xD9, 0x68, 0x23, 0x57, 0xDD, 0xFA, 0xE4, 0x25, 0xE0, 0x1A, 0xC6,\n0xA1, 0x1A, 0x00, 0x6F, 0xC3, 0x01, 0x3D, 0x35, 0x85, 0x03, 0xF2, 0xD0, 0x55, 0x39, 0xC8, 0x0F,\n0xBC, 0x20, 0x01, 0x5F, 0x0F, 0x80, 0x94, 0x33, 0xFF, 0xB5, 0xB1, 0x54, 0x3E, 0x0C, 0x7C, 0xFC,\n0xC3, 0x02, 0xB4, 0x17, 0xEA, 0x75, 0x27, 0xCA, 0xD3, 0x3C, 0x4A, 0x0B, 0x07, 0x00, 0xE3, 0x42,\n0x65, 0x5C, 0x5A, 0x2A, 0xB5, 0xC5, 0x92, 0x2E, 0x1C, 0x9B, 0xB5, 0xF8, 0x7C, 0x85, 0x00, 0x38,\n0x1E, 0x67, 0x66, 0x04, 0x84, 0xFA, 0x0A, 0x40, 0x07, 0x01, 0xC3, 0x14, 0x01, 0x91, 0x21, 0xF0,\n0x0F, 0xD2, 0x0C, 0x68, 0xD6, 0x83, 0x4C, 0x44, 0x06, 0x74, 0xF2, 0x4F, 0x9A, 0xE7, 0x2F, 0xBB,\n0x91, 0x6B, 0xFF, 0xBB, 0x82, 0xB3, 0x71, 0x8C, 0x17, 0xCE, 0x2A, 0x81, 0x1F, 0x5A, 0xC9, 0x6F,\n0xC9, 0xDE, 0x71, 0x09, 0x17, 0x22, 0x01, 0x9C, 0xBA, 0x7E, 0x80, 0x25, 0x50, 0xA6, 0x69, 0xE9,\n0xC9, 0x80, 0x9D, 0x48, 0xD7, 0x9F, 0x87, 0x80, 0xB8, 0x05, 0x22, 0xAB, 0xBA, 0x6D, 0x27, 0xC0,\n0x75, 0x3D, 0x15, 0x81, 0x40, 0x20, 0x0F, 0x95, 0xBC, 0x47, 0x43, 0xA9, 0xAA, 0xC3, 0xA3, 0xE9,\n0xD4, 0x69, 0xC2, 0x0E, 0x07, 0xE2, 0x4E, 0xF5, 0xD7, 0x47, 0xA6, 0x52, 0x44, 0x5D, 0x65, 0xC0,\n0x87, 0x28, 0x78, 0xDA, 0xF2, 0xCB, 0x0D, 0xC0, 0x57, 0xE1, 0x1F, 0x7F, 0x25, 0x0C, 0xCA, 0xC5,\n0xBF, 0x49, 0x1B, 0x7A, 0x37, 0xF0, 0xF1, 0x0F, 0xA5, 0x19, 0xB0, 0xD1, 0xD7, 0x38, 0xA3, 0x97,\n0x70, 0x9A, 0xC7, 0xA6, 0x0B, 0x28, 0x64, 0xC0, 0x06, 0x4B, 0x09, 0x00, 0x61, 0x9B, 0x80, 0xF1,\n0x0A, 0x9B, 0x3A, 0x18, 0x04, 0x34, 0x85, 0xFD, 0x6F, 0x20, 0xE0, 0xC2, 0xB0, 0xD2, 0x07, 0x72,\n0x00, 0x10, 0x44, 0x53, 0xE9, 0x06, 0xF7, 0x41, 0xBD, 0x7F, 0x20, 0xF9, 0x4F, 0xE5, 0x21, 0xE0,\n0x52, 0xA5, 0x08, 0xB4, 0xF3, 0x9F, 0xAA, 0xEF, 0x00, 0x20, 0xF2, 0x1F, 0x2A, 0x0B, 0xD9, 0x19,\n0x87, 0xBA, 0x01, 0xD8, 0x57, 0xC0, 0x26, 0xFE, 0xA0, 0x42, 0x14, 0x10, 0x48, 0xE2, 0xF1, 0xC8,\n0x51, 0x1A, 0x61, 0xAD, 0x44, 0x79, 0xE4, 0x38, 0xB1, 0x0A, 0xFF, 0x5C, 0x04, 0xFC, 0xA0, 0xFC,\n0x83, 0x2B, 0x00, 0xB4, 0x05, 0xE6, 0x69, 0x07, 0xA1, 0x13, 0xBE, 0x01, 0x7E, 0x42, 0x40, 0x2D,\n0xE8, 0xC8, 0x11, 0x90, 0x72, 0x26, 0x40, 0x38, 0x21, 0xF2, 0x18, 0x00, 0x75, 0xA4, 0x9A, 0x32,\n0x01, 0x56, 0xA1, 0xB7, 0xBF, 0x6B, 0x05, 0x1F, 0x20, 0x1F, 0xFF, 0x5E, 0x3D, 0x03, 0xCA, 0x3C,\n0x1F, 0xFF, 0x26, 0x42, 0xC0, 0x8B, 0x81, 0xC5, 0x3F, 0x00, 0x50, 0xDC, 0xBD, 0x36, 0x4F, 0xD5,\n0x39, 0x00, 0x88, 0x65, 0xED, 0xC8, 0x80, 0xE4, 0x5F, 0x61, 0x44, 0x40, 0x14, 0x26, 0x99, 0x19,\n0xF0, 0x7C, 0xB5, 0xCD, 0x7F, 0x52, 0x63, 0x33, 0x02, 0x82, 0x7C, 0x24, 0xA0, 0xC9, 0xBF, 0xD0,\n0x80, 0x40, 0x93, 0x7F, 0x24, 0xE0, 0xC6, 0x35, 0x03, 0x9D, 0xA9, 0x19, 0xD0, 0xCC, 0x7F, 0x0A,\n0x40, 0x74, 0xD6, 0x3E, 0x18, 0x8D, 0x32, 0x09, 0xA8, 0xAF, 0x93, 0x64, 0xC0, 0x27, 0xD4, 0x85,\n0xAA, 0x1E, 0xB7, 0xFC, 0x83, 0x89, 0x39, 0xA8, 0xE4, 0x03, 0x19, 0x87, 0x63, 0x11, 0x14, 0x40,\n0xC7, 0x43, 0xF5, 0x99, 0x02, 0xCB, 0x04, 0x6B, 0x05, 0x4A, 0x4D, 0xFE, 0xC9, 0xD9, 0x57, 0x3D,\n0x70, 0xF0, 0x6F, 0x82, 0x82, 0x09, 0x40, 0x83, 0x52, 0xB2, 0xED, 0x0D, 0x0C, 0x7C, 0x0C, 0x10,\n0xC4, 0x60, 0x73, 0x1F, 0x98, 0x62, 0x06, 0xB4, 0x62, 0xE0, 0xD1, 0x09, 0xC8, 0x3B, 0xBC, 0xB7,\n0x1F, 0x65, 0x40, 0xDD, 0x56, 0x12, 0xE0, 0x94, 0xDB, 0x60, 0x83, 0x81, 0x2D, 0xFA, 0xB8, 0x19,\n0x10, 0x7A, 0xC5, 0x0C, 0x38, 0x42, 0xC1, 0x90, 0xCD, 0x3F, 0x18, 0x65, 0x67, 0xC0, 0xC1, 0x66,\n0xED, 0x69, 0x04, 0xB4, 0x32, 0x60, 0x99, 0x63, 0x53, 0x23, 0x08, 0x14, 0x02, 0xDA, 0x00, 0xE4,\n0x26, 0xB8, 0xAC, 0x35, 0x54, 0x3C, 0x39, 0x6E, 0xBC, 0xFC, 0xB7, 0xE1, 0x1F, 0x9C, 0x61, 0xE0,\n0xC8, 0x7F, 0x24, 0xA0, 0x21, 0x22, 0xB0, 0x19, 0x80, 0x7A, 0xFD, 0x2F, 0x88, 0xB8, 0xDB, 0x1B,\n0x00, 0x39, 0xD1, 0xC8, 0x80, 0xC4, 0x9F, 0xBD, 0x0B, 0x5E, 0xEC, 0xA8, 0x6F, 0xE6, 0xBF, 0x60,\n0x10, 0x70, 0x4F, 0xF0, 0x63, 0x07, 0xFE, 0x85, 0xD7, 0x5F, 0xA1, 0xB7, 0x75, 0x48, 0x80, 0x30,\n0x29, 0x58, 0x50, 0x0D, 0xF0, 0x13, 0x97, 0x51, 0x70, 0x6E, 0xE6, 0xBF, 0xB0, 0x04, 0x2D, 0x02,\n0x0E, 0xE6, 0x92, 0xFF, 0xB6, 0xD5, 0x00, 0xC0, 0x5A, 0x88, 0xDD, 0x90, 0x72, 0x42, 0x40, 0x4E,\n0x78, 0xC1, 0x0C, 0xB8, 0xB6, 0xF3, 0x9F, 0x36, 0xED, 0x89, 0x3D, 0x46, 0x3F, 0x8C, 0x82, 0xA6,\n0xEA, 0x27, 0xB5, 0xEA, 0x3B, 0x7A, 0xD6, 0xFA, 0x7F, 0x08, 0xE8, 0xCA, 0x80, 0xB3, 0x91, 0x4E,\n0xF5, 0xF1, 0x0F, 0xD5, 0x9E, 0x37, 0xAE, 0xAA, 0x93, 0x13, 0x12, 0xB0, 0x1B, 0x35, 0xE6, 0xBF,\n0x34, 0xDF, 0xD0, 0x0F, 0x7D, 0x6A, 0x10, 0x50, 0x44, 0x02, 0x36, 0x06, 0x40, 0xE2, 0x0F, 0x19,\n0x70, 0x5C, 0xB3, 0x4B, 0xD3, 0xCA, 0x20, 0xC5, 0xDF, 0x18, 0xBE, 0xBC, 0xB3, 0xF2, 0x1F, 0xD5,\n0x78, 0x01, 0xF0, 0x5B, 0xA0, 0x9F, 0xB9, 0x0B, 0x16, 0xFE, 0x35, 0x10, 0x90, 0x4F, 0x70, 0x03,\n0xFC, 0x43, 0x7B, 0xFB, 0x06, 0x08, 0xD4, 0x7C, 0x23, 0x44, 0x4D, 0x99, 0x04, 0xDC, 0xA0, 0x2F,\n0x10, 0x30, 0x7E, 0x9E, 0x00, 0xD9, 0xED, 0x9E, 0x82, 0xA8, 0x27, 0x04, 0x92, 0x82, 0x29, 0xF9,\n0x67, 0x11, 0xB0, 0xC8, 0xD3, 0x00, 0x40, 0xA8, 0x99, 0x80, 0xDD, 0xDD, 0x53, 0xB0, 0xC5, 0xBF,\n0x09, 0x8B, 0x00, 0xB4, 0x08, 0xC5, 0x3B, 0xB8, 0xE8, 0xF5, 0x91, 0x8E, 0xB4, 0x7B, 0x9E, 0x02,\n0x8F, 0xAF, 0x53, 0x2F, 0x03, 0x89, 0xBD, 0x84, 0x2C, 0x64, 0x00, 0xDC, 0xC5, 0xA0, 0x81, 0x3F,\n0x7A, 0x7A, 0x54, 0x02, 0x52, 0xFF, 0x98, 0x7F, 0xCC, 0x7F, 0x38, 0xC8, 0x4C, 0x83, 0x7F, 0x4F,\n0x05, 0x35, 0x6D, 0x82, 0xBB, 0x02, 0x40, 0xBA, 0x69, 0xA1, 0x6A, 0xF8, 0x0B, 0x4E, 0x73, 0x9B,\n0x7F, 0x24, 0x60, 0x43, 0x00, 0x2C, 0x2A, 0x8E, 0x6B, 0x76, 0x69, 0x62, 0xDD, 0xD0, 0x49, 0x9F,\n0xE9, 0xC8, 0xC8, 0x7F, 0x54, 0xBF, 0x7E, 0x13, 0x1C, 0xD8, 0xC8, 0x10, 0xE6, 0xFF, 0x75, 0x80,\n0xE0, 0x5C, 0xDD, 0x25, 0x40, 0xF0, 0x8F, 0xFA, 0x61, 0xEC, 0x82, 0x37, 0x9F, 0x9A, 0x39, 0x70,\n0xB1, 0x8F, 0x82, 0xAA, 0x45, 0x95, 0xEB, 0x4D, 0xF9, 0x6F, 0x8B, 0xBE, 0x15, 0xCC, 0x5D, 0xF0,\n0x33, 0xF4, 0xA9, 0xAB, 0x19, 0x7C, 0x58, 0xEE, 0x89, 0x80, 0xAA, 0x90, 0xFF, 0xA8, 0x5D, 0xFA,\n0xF1, 0x10, 0xF2, 0x1F, 0x17, 0x4B, 0xDE, 0x78, 0x23, 0x44, 0xF7, 0xBF, 0xB4, 0x97, 0x7F, 0xB0,\n0x9D, 0x00, 0x85, 0x67, 0x3C, 0xE8, 0xF6, 0xF7, 0xA6, 0x26, 0x01, 0x72, 0x9A, 0xA9, 0xC3, 0x32,\n0xE0, 0xA7, 0xE6, 0x0C, 0xB8, 0x86, 0x39, 0x4E, 0x48, 0x3D, 0x28, 0xD9, 0x7D, 0x30, 0x75, 0x27,\n0xC0, 0x6A, 0x00, 0x9C, 0xFD, 0xA1, 0xEE, 0x6C, 0x5A, 0x23, 0xAB, 0x82, 0x30, 0xAC, 0x32, 0x82,\n0x38, 0x24, 0x48, 0xE3, 0xC4, 0x8F, 0xD5, 0x2C, 0x0C, 0xBD, 0x71, 0xE1, 0xC6, 0x10, 0x10, 0x02,\n0xC1, 0x5D, 0x16, 0xCE, 0x2E, 0x04, 0x12, 0x70, 0x91, 0xED, 0xCC, 0x4A, 0x04, 0x71, 0x97, 0x45,\n0x18, 0x5C, 0x06, 0x37, 0x99, 0x75, 0xF0, 0x07, 0xB8, 0x08, 0xFE, 0x3D, 0xAB, 0xEA, 0xDE, 0xF2,\n0xC9, 0x49, 0x75, 0xA5, 0x2A, 0xDA, 0xAD, 0xE3, 0x5B, 0xA7, 0xCF, 0x3D, 0xF7, 0x76, 0xEB, 0xC4,\n0x9E, 0xEE, 0x27, 0xEF, 0x39, 0x55, 0xE7, 0x7A, 0xBC, 0xCE, 0x75, 0x40, 0xF8, 0xB7, 0xA9, 0xA8,\n0x74, 0x64, 0x8F, 0x87, 0x3D, 0xE0, 0xF4, 0x19, 0xA1, 0xE5, 0x1E, 0x90, 0x4F, 0x5E, 0xE5, 0x01,\n0x85, 0x7F, 0xE0, 0xCF, 0x3C, 0x60, 0x6E, 0x01, 0x03, 0x01, 0x33, 0x59, 0x02, 0x78, 0x30, 0x20,\n0xFE, 0xC5, 0x8C, 0x06, 0xD0, 0xDD, 0xCC, 0xE4, 0x6B, 0x1E, 0xF4, 0x80, 0xE7, 0xF7, 0x94, 0x12,\n0xD0, 0xE1, 0x23, 0xAD, 0x5C, 0x06, 0xD4, 0xE5, 0xBC, 0x41, 0x02, 0xBC, 0xC4, 0x00, 0xFA, 0x0B,\n0x51, 0x6A, 0xFF, 0x2E, 0x07, 0x02, 0x83, 0xC0, 0x28, 0x25, 0x79, 0xD7, 0x03, 0x1A, 0xF4, 0xFC,\n0x97, 0x85, 0x34, 0x27, 0x60, 0x44, 0xE0, 0x22, 0x54, 0xA5, 0x47, 0x0B, 0x68, 0x3C, 0xC4, 0xFF,\n0x21, 0x63, 0x5D, 0x64, 0xA0, 0x7C, 0x02, 0x96, 0x82, 0x3F, 0x02, 0x02, 0xA6, 0xFC, 0x23, 0x72,\n0xFE, 0xBD, 0xF8, 0x70, 0x24, 0x20, 0x00, 0x2C, 0xE9, 0x74, 0x40, 0x1A, 0x04, 0xFD, 0xE1, 0x24,\n0x44, 0x1B, 0x31, 0x80, 0x5F, 0x15, 0xCB, 0x7F, 0x64, 0x41, 0x86, 0x79, 0xAF, 0x0F, 0x75, 0x44,\n0x0F, 0x06, 0xBB, 0x06, 0xF0, 0xE4, 0x64, 0x8D, 0x04, 0x44, 0xFF, 0x22, 0x00, 0xF1, 0x7F, 0x3E,\n0xB2, 0x47, 0xCE, 0xBF, 0x7B, 0x00, 0xCC, 0x0B, 0xA2, 0x0F, 0xFD, 0x53, 0xC7, 0x24, 0x44, 0x08,\n0x98, 0xF8, 0xBF, 0xED, 0x31, 0x96, 0x17, 0x8B, 0x0A, 0x80, 0x68, 0xF9, 0x6D, 0x65, 0x00, 0x3D,\n0x76, 0xBE, 0x0B, 0xDF, 0x54, 0x69, 0x8B, 0x6B, 0x26, 0x74, 0x6A, 0x6C, 0x8C, 0x84, 0xB5, 0xFF,\n0xC3, 0x03, 0x16, 0x22, 0x09, 0x91, 0x2F, 0x00, 0x06, 0x8D, 0xB6, 0x2F, 0xF2, 0x8F, 0x39, 0xF0,\n0xCD, 0x9B, 0x34, 0xFF, 0x31, 0x22, 0x98, 0xBD, 0x29, 0x79, 0x02, 0x04, 0x3D, 0xE8, 0xFF, 0x54,\n0xFE, 0x4E, 0xED, 0xA5, 0x06, 0x90, 0x37, 0x3E, 0x78, 0x40, 0x3A, 0x13, 0xFC, 0x43, 0xD9, 0x02,\n0xE0, 0x36, 0xB3, 0x05, 0x0D, 0x2D, 0x07, 0xAC, 0xF8, 0x47, 0x64, 0x05, 0x80, 0xE0, 0x0F, 0x02,\n0x6E, 0xD5, 0x59, 0xE0, 0xC8, 0xB8, 0x03, 0x6B, 0x71, 0x02, 0xBC, 0xC1, 0x5C, 0x70, 0xB9, 0xFC,\n0x67, 0x1D, 0x0C, 0x74, 0xC0, 0x41, 0xC4, 0x63, 0xD0, 0xC7, 0x85, 0xE8, 0xFD, 0xA4, 0x05, 0x03,\n0x78, 0xBC, 0xCE, 0x5C, 0xF0, 0x7F, 0x82, 0x40, 0x28, 0x68, 0x21, 0xCD, 0x5E, 0x98, 0x4F, 0x80,\n0x2B, 0x02, 0x92, 0x00, 0x8E, 0x04, 0x4C, 0xCA, 0xA1, 0x27, 0xFF, 0x47, 0x2C, 0x97, 0xDB, 0x2F,\n0x9F, 0x57, 0xF8, 0xC3, 0x03, 0xFE, 0x96, 0x38, 0xC0, 0x97, 0x21, 0xE2, 0xB7, 0xD4, 0xC2, 0xBE,\n0xCC, 0xE6, 0xFF, 0xAA, 0x75, 0x40, 0x8C, 0x52, 0x91, 0x08, 0x39, 0x0F, 0xF4, 0x31, 0x1E, 0xBD,\n0x69, 0xF8, 0x3F, 0x66, 0xC1, 0x09, 0xFF, 0x9A, 0x1E, 0x10, 0xE6, 0x91, 0x09, 0x11, 0xD4, 0xC5,\n0xD5, 0x40, 0x9D, 0xFF, 0x46, 0xE5, 0xF9, 0x8F, 0x6B, 0x0D, 0xDE, 0x29, 0x29, 0x88, 0x5E, 0xF0,\n0x8E, 0xD2, 0xAD, 0xDC, 0x99, 0x88, 0x01, 0xC4, 0x02, 0xE2, 0xFF, 0x06, 0x05, 0xFC, 0x79, 0x01,\n0xCC, 0x18, 0xC2, 0xC3, 0xA7, 0x09, 0xFF, 0x42, 0xE8, 0x5D, 0xA1, 0x11, 0xFC, 0x0B, 0x9F, 0x6A,\n0xBD, 0x00, 0x00, 0x0B, 0x2C, 0x1D, 0xFC, 0xC1, 0x63, 0x22, 0x9F, 0x23, 0x30, 0x30, 0x70, 0x13,\n0x2A, 0x96, 0xFF, 0x42, 0x1A, 0xE4, 0x0B, 0x6B, 0x24, 0x81, 0x21, 0x1E, 0x18, 0xEC, 0x19, 0x40,\n0xB1, 0x7F, 0x27, 0x6B, 0x2C, 0x88, 0xFE, 0xCF, 0x00, 0x78, 0x84, 0xF3, 0xB3, 0x3B, 0x42, 0x1B,\n0x04, 0x4B, 0xFE, 0xD1, 0x20, 0xE0, 0x58, 0x00, 0x78, 0x3F, 0x92, 0x72, 0x40, 0xE6, 0xBF, 0x23,\n0x01, 0x6B, 0xFE, 0xE5, 0xB9, 0x60, 0xB3, 0x1B, 0x2F, 0x43, 0x2C, 0xC2, 0xD7, 0x74, 0x2A, 0x80,\n0xF6, 0xE9, 0xEF, 0x35, 0x3E, 0x10, 0x02, 0xE6, 0xF3, 0x5F, 0x08, 0x98, 0x17, 0x00, 0x32, 0xC8,\n0x12, 0x21, 0x6F, 0xDC, 0xCE, 0x8D, 0x1A, 0x56, 0x00, 0x13, 0xFF, 0xE7, 0x87, 0xC4, 0xFF, 0x05,\n0x08, 0xAF, 0xD6, 0xF9, 0x95, 0x01, 0xB0, 0x26, 0xE0, 0x95, 0x4D, 0x80, 0x27, 0xBF, 0xCC, 0x40,\n0xDE, 0xBB, 0x7B, 0x0E, 0x90, 0x04, 0x70, 0x62, 0x01, 0xBF, 0xA5, 0xC7, 0xFF, 0x35, 0x2C, 0xE0,\n0x73, 0xE6, 0xBF, 0x84, 0x17, 0xC3, 0xC4, 0x0D, 0x20, 0x91, 0x80, 0x78, 0x40, 0xF4, 0x6C, 0x97,\n0xF9, 0xEF, 0xE0, 0x01, 0x6B, 0x07, 0xC8, 0x32, 0x20, 0x33, 0xE0, 0x83, 0x24, 0x05, 0xF2, 0xAF,\n0xA5, 0x82, 0xA1, 0x1F, 0x63, 0xE7, 0xA0, 0x63, 0x2F, 0xAC, 0x04, 0x1E, 0x8F, 0x0E, 0x50, 0x5A,\n0x6B, 0x05, 0x50, 0x9A, 0x0C, 0xFF, 0x3F, 0x04, 0x4C, 0x04, 0xFE, 0xAC, 0xA5, 0x99, 0x90, 0xF8,\n0x29, 0xA1, 0x1C, 0x30, 0xE7, 0x1F, 0xB1, 0xDA, 0x03, 0x5E, 0x9C, 0x6D, 0x47, 0x02, 0x6A, 0x2A,\n0xB8, 0x0D, 0x40, 0x72, 0xC1, 0x08, 0xFE, 0x11, 0x72, 0x75, 0xC5, 0x57, 0x75, 0x9A, 0xCE, 0xF1,\n0x85, 0x96, 0x60, 0x4B, 0x48, 0xEE, 0xFF, 0x20, 0xE0, 0x55, 0x24, 0x20, 0xCC, 0xE1, 0x68, 0xC3,\n0x32, 0xFF, 0x81, 0x62, 0x15, 0x20, 0x05, 0x30, 0x40, 0xD0, 0xBA, 0x15, 0x58, 0x0D, 0xE8, 0xB5,\n0x2E, 0x4C, 0x81, 0x35, 0x30, 0x80, 0xA3, 0x22, 0xFF, 0xE6, 0x04, 0x88, 0xDB, 0xE5, 0x69, 0x2C,\n0x47, 0xC1, 0x5D, 0x58, 0x58, 0xE0, 0x7D, 0x1F, 0x08, 0x38, 0x18, 0x40, 0x0A, 0x00, 0x6B, 0x02,\n0x5A, 0x5C, 0x60, 0x00, 0xA9, 0x84, 0x81, 0x80, 0xEC, 0xFF, 0xF0, 0x02, 0xE8, 0x40, 0xC0, 0xF8,\n0x51, 0xB5, 0x02, 0xE8, 0x55, 0x16, 0x10, 0x00, 0xB6, 0xB8, 0x84, 0x07, 0x04, 0x7F, 0x25, 0xF4,\n0xD6, 0x62, 0x0B, 0x1F, 0x2C, 0x82, 0x66, 0x1E, 0xAC, 0xA1, 0xBA, 0xA5, 0xFE, 0x0F, 0xE3, 0xE7,\n0x7A, 0xE5, 0x29, 0x91, 0xD6, 0x0A, 0xA0, 0x3C, 0xD6, 0x58, 0x10, 0xBD, 0x69, 0x02, 0x0A, 0xDC,\n0xA2, 0x20, 0xDF, 0xCC, 0xC1, 0x2D, 0xF5, 0x7F, 0x1A, 0x4D, 0xFF, 0xB7, 0xB2, 0x1C, 0x10, 0xFE,\n0xE5, 0x1E, 0x90, 0x0D, 0x20, 0xDB, 0x31, 0x74, 0x4B, 0xC8, 0xFD, 0x5B, 0xC3, 0xBC, 0x4C, 0xF5,\n0x6D, 0xEA, 0xFF, 0x6A, 0x0F, 0x38, 0x7C, 0x9B, 0x6D, 0x38, 0x87, 0x7C, 0xE3, 0x4B, 0xFF, 0x87,\n0x07, 0x44, 0x20, 0x87, 0x23, 0x5A, 0xE1, 0xFF, 0x6E, 0xA0, 0xD9, 0x20, 0x00, 0x18, 0xF9, 0xF7,\n0xDA, 0xFE, 0xB1, 0xBC, 0x20, 0xFA, 0x72, 0xFA, 0x73, 0x63, 0x22, 0x66, 0x82, 0x1E, 0x2D, 0xE5,\n0x9F, 0x5C, 0x8F, 0x13, 0x60, 0xA6, 0xBE, 0xD2, 0xEE, 0xE4, 0xCE, 0xC3, 0xEF, 0x15, 0xFC, 0x5F,\n0x20, 0xE0, 0x68, 0x00, 0x49, 0x00, 0x47, 0x85, 0x29, 0xF0, 0xB4, 0x01, 0x24, 0x84, 0xAC, 0x0B,\n0xAE, 0x2A, 0x00, 0x2C, 0x09, 0x08, 0xFF, 0x5E, 0xC4, 0x26, 0xE1, 0x00, 0xAC, 0xE4, 0xBB, 0x80,\n0x15, 0x81, 0xD2, 0xA5, 0xF4, 0xFB, 0xB7, 0x52, 0xC1, 0x6C, 0x01, 0x66, 0x05, 0x90, 0x07, 0x0E,\n0x50, 0x07, 0xC1, 0x01, 0xFA, 0x85, 0x88, 0x3F, 0x69, 0x63, 0x1C, 0xAB, 0x0B, 0xB4, 0xD1, 0x23,\n0xF4, 0x1F, 0xF2, 0xCF, 0xFE, 0xEC, 0xD5, 0x0C, 0x3C, 0x39, 0x9A, 0x07, 0x7E, 0x80, 0x80, 0xC3,\n0x06, 0x90, 0x94, 0x80, 0x87, 0xA1, 0x00, 0x3A, 0x25, 0xE0, 0x5D, 0x0F, 0xB8, 0x8F, 0xFF, 0x1B,\n0xF1, 0xB7, 0x62, 0x4B, 0x08, 0xAA, 0x73, 0xC1, 0xF9, 0xED, 0xB1, 0x16, 0xAC, 0xD9, 0x9B, 0x6F,\n0xB9, 0x63, 0xFB, 0xF8, 0x76, 0x4F, 0x86, 0x10, 0x00, 0x92, 0x00, 0xC9, 0x14, 0xD6, 0xFF, 0x82,\n0x01, 0xF4, 0xB3, 0x50, 0x00, 0xE8, 0x40, 0x8B, 0xBA, 0xB7, 0xFE, 0x07, 0xF1, 0xD0, 0x6B, 0x08,\n0x18, 0x37, 0x80, 0x58, 0x73, 0x71, 0x46, 0x2E, 0x18, 0xFE, 0xB5, 0x3C, 0xA0, 0xAF, 0x13, 0xF8,\n0xFB, 0x25, 0x43, 0x95, 0x8D, 0x46, 0x0B, 0xB8, 0xC8, 0xFF, 0x06, 0x58, 0xFC, 0x33, 0xA5, 0xFE,\n0x8F, 0x62, 0x18, 0x0F, 0xDB, 0x00, 0xB2, 0x32, 0xA2, 0x07, 0x0C, 0xF0, 0xA3, 0x1C, 0xF0, 0xD9,\n0x08, 0x40, 0xDD, 0x00, 0x92, 0x11, 0xB0, 0x5E, 0x03, 0x44, 0x86, 0xC0, 0xA4, 0x16, 0x1A, 0x6D,\n0x26, 0x15, 0x5C, 0x64, 0x42, 0xA4, 0xB7, 0xD0, 0x81, 0xD3, 0x8F, 0x51, 0x70, 0x80, 0x5C, 0xC8,\n0xF0, 0x07, 0x02, 0xD7, 0xB8, 0x29, 0x0E, 0xFD, 0x9B, 0xCB, 0x80, 0xAC, 0xFF, 0x39, 0x02, 0xED,\n0x68, 0x5D, 0x91, 0x00, 0xA6, 0x41, 0x40, 0xE6, 0xBF, 0xE9, 0x07, 0x70, 0xFF, 0x1E, 0xFF, 0x58,\n0xD5, 0x19, 0x22, 0x6E, 0x09, 0x79, 0x50, 0x4B, 0xDC, 0xDF, 0x12, 0xFE, 0xE5, 0x04, 0x64, 0x03,\n0xF0, 0xDD, 0xB9, 0xAF, 0xB3, 0x6F, 0xFE, 0x76, 0x27, 0xFC, 0x2B, 0xD7, 0x01, 0x73, 0x03, 0x18,\n0x8A, 0x61, 0x02, 0xD1, 0x72, 0x0F, 0x78, 0x33, 0x60, 0x8F, 0xE3, 0x4D, 0xDC, 0x12, 0xC2, 0x9F,\n0x0B, 0x7A, 0x39, 0x31, 0xDF, 0xA7, 0x51, 0xF1, 0xCF, 0x3D, 0x20, 0x09, 0x10, 0x8A, 0x5F, 0xDC,\n0x0C, 0x4A, 0x18, 0x07, 0xE1, 0x1F, 0xFE, 0xAF, 0x98, 0x05, 0xCF, 0x7F, 0x5F, 0x0F, 0xC9, 0xAC,\n0x9F, 0x37, 0x0A, 0x00, 0x73, 0x0F, 0x88, 0xFF, 0xCB, 0x02, 0x02, 0xB2, 0x01, 0x24, 0x6B, 0x00,\n0xB0, 0xEB, 0x03, 0x21, 0xA0, 0x1F, 0xFE, 0x8B, 0x75, 0x40, 0xE6, 0xBE, 0x9C, 0x63, 0x01, 0xC9,\n0x05, 0xEB, 0x21, 0x75, 0x80, 0x71, 0x16, 0x1C, 0xE3, 0x64, 0x9D, 0xDB, 0x82, 0xFF, 0x75, 0x04,\n0x42, 0xC1, 0xAD, 0x99, 0x82, 0x40, 0xF0, 0x88, 0x1B, 0x23, 0xE4, 0xF3, 0xDF, 0xB8, 0x25, 0xC4,\n0x0B, 0xA0, 0x73, 0x02, 0xEA, 0xB6, 0xE0, 0x6D, 0xF8, 0xC7, 0x04, 0x38, 0xF1, 0x80, 0x01, 0x7F,\n0xF5, 0x3A, 0x20, 0xF3, 0xDF, 0x62, 0x1D, 0x50, 0xF8, 0x47, 0x55, 0x2F, 0x0C, 0x64, 0x89, 0x1F,\n0x0F, 0xC8, 0x04, 0x38, 0x25, 0x20, 0x71, 0x2F, 0xF5, 0x3B, 0x34, 0x51, 0xF4, 0x7F, 0x72, 0x48,\n0x3C, 0x60, 0x96, 0x00, 0xF6, 0x97, 0x73, 0x3A, 0xFA, 0x3F, 0x7E, 0x80, 0xDC, 0x01, 0xC2, 0xBF,\n0x16, 0x01, 0xFD, 0xD7, 0x83, 0x85, 0xFB, 0x40, 0xDE, 0xAD, 0xB0, 0x01, 0x38, 0x0B, 0x79, 0x92,\n0xBD, 0xC0, 0x2F, 0x0B, 0xDD, 0xF1, 0x7F, 0x5A, 0x00, 0xB3, 0x9D, 0xC6, 0x45, 0xE9, 0xFF, 0xF0,\n0x80, 0x3D, 0xFE, 0xE1, 0x00, 0x6B, 0x1E, 0xB1, 0xFA, 0x27, 0xC3, 0x8C, 0x74, 0x9B, 0x74, 0x83,\n0xC1, 0x03, 0x86, 0x22, 0x40, 0x9E, 0x22, 0x17, 0x0C, 0x06, 0x83, 0x03, 0xE4, 0x40, 0xF6, 0x23,\n0x71, 0x80, 0x6B, 0x22, 0x20, 0xDA, 0x2C, 0x01, 0x83, 0xFF, 0x63, 0x6C, 0x3D, 0xE7, 0x78, 0xC0,\n0x2D, 0xF7, 0x7F, 0x59, 0x3B, 0x82, 0x80, 0x6C, 0x00, 0xC9, 0xE2, 0xAF, 0xF5, 0x3F, 0xD9, 0xF3,\n0xC1, 0x2F, 0xF5, 0x18, 0xCB, 0x3B, 0xE5, 0x80, 0xA5, 0xE6, 0xEF, 0x15, 0xEB, 0x7F, 0x79, 0x2C,\n0xBE, 0x9B, 0x37, 0xAA, 0x32, 0xE5, 0x25, 0x11, 0x42, 0x32, 0x58, 0x2F, 0x94, 0xFE, 0x0F, 0x02,\n0x02, 0x17, 0xC7, 0x1E, 0x42, 0xE3, 0xAE, 0xE0, 0x37, 0x4E, 0xAF, 0x4C, 0xE4, 0x3F, 0x32, 0xFF,\n0xF7, 0x3A, 0xAE, 0x03, 0xE2, 0xF6, 0x82, 0x03, 0xF4, 0xE1, 0x79, 0xC5, 0x3F, 0xD7, 0x50, 0x00,\n0x48, 0xA1, 0xF8, 0x80, 0xC0, 0xE9, 0x18, 0x36, 0x80, 0x14, 0x1E, 0xD0, 0xEF, 0x80, 0x55, 0x08,\n0x07, 0x48, 0x01, 0x20, 0x41, 0x9C, 0x2D, 0x43, 0x01, 0x60, 0x1E, 0xBB, 0xCF, 0x4A, 0xFE, 0x59,\n0xEB, 0xAE, 0x01, 0x92, 0x03, 0xC1, 0x00, 0x66, 0xAA, 0x9F, 0x87, 0xB9, 0x7D, 0x7D, 0x2E, 0x8F,\n0x68, 0xF8, 0x24, 0xB8, 0x84, 0x2F, 0xFC, 0x9C, 0x5C, 0x70, 0xEE, 0x00, 0x2D, 0xA8, 0x00, 0xAC,\n0xE3, 0x11, 0x7A, 0x9B, 0x1C, 0xE0, 0x89, 0xF9, 0x3D, 0x77, 0x80, 0x76, 0xCA, 0x32, 0x20, 0x1E,\n0x30, 0xF7, 0x7F, 0x6C, 0x8A, 0x6B, 0xF2, 0x4F, 0x3D, 0xA0, 0xF3, 0xEF, 0xC1, 0xCF, 0xB4, 0x7A,\n0x40, 0xB7, 0x80, 0x0D, 0x2D, 0xDD, 0xFF, 0xB1, 0x03, 0x21, 0xF1, 0x80, 0xEE, 0x55, 0xFE, 0x2A,\n0x67, 0x23, 0x11, 0x32, 0x8D, 0x70, 0x37, 0xEE, 0x01, 0x01, 0x45, 0x41, 0xC0, 0x73, 0x70, 0xF3,\n0x53, 0x68, 0xEC, 0x0A, 0xC6, 0xFF, 0x41, 0x3F, 0x46, 0x81, 0x80, 0xC1, 0xFF, 0x71, 0x40, 0xF8,\n0x3F, 0x32, 0x1E, 0xD9, 0x22, 0xA0, 0x06, 0x1B, 0xE0, 0x0A, 0x0F, 0xC8, 0xFC, 0x17, 0x08, 0xF2,\n0xAB, 0xC2, 0x1E, 0x7A, 0xC1, 0x0D, 0x20, 0x6F, 0x75, 0x12, 0x9E, 0x04, 0x59, 0x96, 0xFC, 0xE3,\n0xD6, 0x30, 0x2C, 0x15, 0x67, 0x39, 0xB3, 0x65, 0xC9, 0x3F, 0xE2, 0x19, 0x05, 0x30, 0x1D, 0x07,\n0x78, 0xDB, 0xE4, 0x20, 0x2B, 0x81, 0xD5, 0x2B, 0x37, 0x20, 0xF0, 0x17, 0xEA, 0x00, 0x81, 0xA1,\n0x1E, 0x33, 0xA7, 0x37, 0x5E, 0xE7, 0x08, 0xFF, 0x36, 0x4A, 0xC0, 0x7F, 0xCF, 0x02, 0x1E, 0xDD,\n0xF5, 0x7F, 0xD1, 0x01, 0xDA, 0xD5, 0x13, 0x3F, 0x57, 0x6D, 0xA5, 0xF9, 0x8F, 0xB1, 0x20, 0x1A,\n0xFE, 0x15, 0xE1, 0x37, 0x40, 0x70, 0xFA, 0x65, 0xE1, 0xE5, 0x80, 0xA8, 0xB4, 0x80, 0x18, 0xC0,\n0x3C, 0xAC, 0x20, 0x5A, 0x66, 0xC2, 0x36, 0xAB, 0x23, 0x66, 0x08, 0xB2, 0xCF, 0x55, 0x07, 0xF8,\n0xBF, 0x42, 0x57, 0xD3, 0x92, 0x5A, 0xA0, 0x0D, 0xE2, 0xBA, 0x72, 0x4A, 0x1E, 0x81, 0x69, 0x09,\n0x01, 0x73, 0xFF, 0x37, 0xAE, 0x05, 0xB2, 0x01, 0x24, 0xB1, 0x80, 0x9C, 0xC0, 0xBF, 0x4A, 0x6C,\n0x00, 0x61, 0xB9, 0xD4, 0x27, 0xC3, 0xD8, 0x65, 0x6B, 0x3B, 0xB5, 0xFF, 0xC3, 0x03, 0xDA, 0xA8,\n0x23, 0xBB, 0x4B, 0x7E, 0xE1, 0xFF, 0xD8, 0x12, 0x02, 0xFF, 0x4A, 0x02, 0x1E, 0x52, 0x00, 0x58,\n0xAC, 0x01, 0xB6, 0x65, 0x64, 0x3B, 0xD0, 0x3E, 0xF5, 0x82, 0x9B, 0x48, 0x05, 0x7F, 0x65, 0x1E,\n0x30, 0xAE, 0x00, 0xFA, 0x23, 0x66, 0x82, 0x73, 0x07, 0x68, 0xE3, 0x60, 0x01, 0x5B, 0xD1, 0xD7,\n0xD6, 0x7F, 0x49, 0xC0, 0x41, 0x94, 0xBF, 0xD8, 0x68, 0x4B, 0x3B, 0x32, 0x23, 0xF2, 0x62, 0x9D,\n0xFF, 0x4E, 0x29, 0xB1, 0xA2, 0x1D, 0x19, 0x01, 0x6D, 0x03, 0x48, 0x15, 0xD3, 0x2C, 0x78, 0x49,\n0x02, 0x98, 0x08, 0x05, 0xD1, 0x17, 0x10, 0xB0, 0xE9, 0x01, 0x5F, 0x36, 0x62, 0x2A, 0x00, 0x74,\n0x17, 0x33, 0x96, 0x76, 0x58, 0x50, 0x1C, 0xCD, 0xFA, 0x5F, 0xA9, 0x80, 0xBE, 0x60, 0x00, 0x5D,\n0xE6, 0xD5, 0x6E, 0x42, 0x01, 0x4C, 0xE2, 0x01, 0x83, 0xFF, 0x8B, 0x63, 0x3C, 0x20, 0x7F, 0x74,\n0xFC, 0x59, 0x78, 0x0A, 0xFE, 0xB5, 0x08, 0xE8, 0xBF, 0x14, 0xA8, 0x93, 0x24, 0x11, 0xC2, 0x1E,\n0x6A, 0xFC, 0x5F, 0x0D, 0xC0, 0x97, 0xF8, 0xBF, 0x42, 0x8B, 0x97, 0xCF, 0xD9, 0x00, 0x92, 0xC6,\n0x52, 0xE3, 0xAF, 0x3B, 0x40, 0xA7, 0x41, 0x41, 0xF4, 0x29, 0xFC, 0x2B, 0x1C, 0xE0, 0x6D, 0x97,\n0x7E, 0x9E, 0x04, 0x09, 0x5D, 0xD0, 0x26, 0x2D, 0x20, 0x56, 0x2F, 0x58, 0x41, 0x0C, 0xA2, 0x41,\n0xAF, 0xE5, 0x00, 0xE1, 0x5F, 0x19, 0xEB, 0xB0, 0x80, 0x9B, 0x27, 0xA0, 0x96, 0xF9, 0xC5, 0xF5,\n0xBF, 0x70, 0xB2, 0x35, 0x3F, 0xBF, 0x45, 0x02, 0xA4, 0x6C, 0x9E, 0x00, 0xAE, 0xC2, 0x08, 0x18,\n0xE6, 0xBF, 0x79, 0x39, 0x60, 0x17, 0x80, 0xDF, 0x2E, 0x49, 0x80, 0x14, 0xA1, 0x05, 0x80, 0x7B,\n0x58, 0x19, 0x6C, 0xA0, 0x0F, 0x70, 0x3B, 0x4D, 0xFE, 0x19, 0x4E, 0x02, 0xF9, 0x10, 0xD7, 0x27,\n0x02, 0x66, 0x93, 0xD9, 0x48, 0xC0, 0x6A, 0xFD, 0xCF, 0xC7, 0x76, 0x8F, 0xFC, 0x4B, 0x92, 0x2F,\n0xF1, 0x67, 0x21, 0x0F, 0xC3, 0x02, 0x60, 0x67, 0x12, 0x6C, 0x98, 0x83, 0x7A, 0xBC, 0x61, 0xBC,\n0x77, 0xF6, 0x12, 0x12, 0xC0, 0x35, 0x01, 0xE1, 0x5F, 0xBD, 0x0C, 0x68, 0xA5, 0x02, 0x65, 0x5C,\n0x9C, 0x25, 0x1B, 0x40, 0x92, 0x72, 0x40, 0xF8, 0x97, 0xB5, 0x77, 0x60, 0x5F, 0x47, 0xDC, 0x1D,\n0x9A, 0x2D, 0x71, 0x41, 0x1B, 0x4D, 0x05, 0x63, 0xFC, 0x30, 0x82, 0xE3, 0x15, 0x67, 0xA0, 0xD1,\n0xAD, 0x76, 0x80, 0xF0, 0x6F, 0xE3, 0x04, 0x44, 0x1B, 0x25, 0xA0, 0xE1, 0x4F, 0xC9, 0x76, 0x62,\n0xA0, 0xC3, 0xF1, 0x0D, 0x8B, 0x81, 0x3C, 0x2F, 0x04, 0xAC, 0xB8, 0xC7, 0x2C, 0x18, 0xFE, 0xD5,\n0x04, 0xD4, 0x7B, 0xB9, 0xD5, 0xFC, 0x53, 0x02, 0xBE, 0x6C, 0xAB, 0xFE, 0xF2, 0x51, 0x0C, 0xE3,\n0x59, 0x4D, 0x7D, 0x80, 0x3E, 0xBE, 0xDF, 0x18, 0x9E, 0xF3, 0xB6, 0x84, 0x2C, 0x1D, 0x07, 0x68,\n0x78, 0xA2, 0x90, 0x99, 0x51, 0xE2, 0x01, 0x79, 0x3E, 0x22, 0xF3, 0x66, 0xC8, 0x84, 0xF0, 0x27,\n0xC7, 0x89, 0x38, 0x0E, 0x50, 0x1F, 0xF0, 0xAF, 0x26, 0xE0, 0x6C, 0x8D, 0x99, 0xF8, 0x86, 0xED,\n0x20, 0x7A, 0x62, 0x07, 0x12, 0xC0, 0x45, 0xC8, 0xEB, 0xBA, 0x62, 0x03, 0x48, 0x11, 0x72, 0x53,\n0x49, 0xF8, 0x57, 0x7A, 0xC0, 0xC6, 0x47, 0xFA, 0x9D, 0x3E, 0x85, 0x6E, 0x1D, 0x6C, 0xF8, 0x3E,\n0x66, 0xC2, 0x09, 0xDB, 0xD6, 0xA8, 0xAF, 0xDC, 0x02, 0x0E, 0x7E, 0xCF, 0x9B, 0xC4, 0xFD, 0x9C,\n0x88, 0xDF, 0x01, 0xA1, 0x74, 0x80, 0xC7, 0x05, 0x01, 0xD7, 0x75, 0x87, 0x68, 0xB4, 0xF9, 0x59,\n0xB0, 0x2F, 0xF3, 0xE1, 0xFD, 0xE4, 0x64, 0x74, 0x80, 0x80, 0x70, 0x8B, 0x04, 0x48, 0xD9, 0x9E,\n0x01, 0xC0, 0x2A, 0xB6, 0x5F, 0xF2, 0xC9, 0x2D, 0x20, 0xD8, 0x07, 0xE0, 0x23, 0xBE, 0x7E, 0x14,\n0xB4, 0x61, 0x6B, 0x6C, 0x20, 0xB2, 0x53, 0xD6, 0xF8, 0x01, 0x45, 0xBD, 0x0C, 0xD8, 0x59, 0x02,\n0x34, 0xBD, 0x09, 0x38, 0xB3, 0x86, 0xD0, 0x4D, 0xF4, 0x7F, 0x3C, 0x31, 0xEA, 0xCD, 0xE0, 0xF2,\n0x02, 0x85, 0xED, 0x81, 0x03, 0x6C, 0x03, 0x10, 0x83, 0xCC, 0xE2, 0x28, 0x29, 0xF4, 0xBB, 0x4F,\n0x75, 0x7F, 0x05, 0x69, 0xAA, 0xAA, 0x2D, 0xDF, 0x00, 0x52, 0x85, 0xDC, 0x2A, 0xB0, 0x0F, 0xC0,\n0x43, 0x0C, 0x60, 0xDA, 0x5A, 0x0E, 0x10, 0xA0, 0xB1, 0x02, 0xA8, 0x27, 0x3A, 0x4C, 0xF0, 0xD7,\n0xF7, 0x80, 0x8F, 0x5C, 0x09, 0x34, 0xCC, 0xE5, 0x13, 0x5F, 0xEA, 0x62, 0xA4, 0x1D, 0xE7, 0x0E,\n0x90, 0x27, 0x74, 0xD0, 0x07, 0xE0, 0x26, 0x1C, 0xE0, 0xBB, 0xD2, 0x36, 0x12, 0x50, 0x4E, 0xBC,\n0xDE, 0xBC, 0xFA, 0x07, 0x11, 0xBD, 0xB7, 0x15, 0xC0, 0xEE, 0x14, 0xF8, 0xC9, 0x69, 0xB5, 0x04,\n0x48, 0x2D, 0x96, 0xE6, 0x80, 0x5B, 0xF8, 0x13, 0xB5, 0xF9, 0xB7, 0x60, 0x02, 0x5C, 0xC4, 0xF5,\n0x82, 0xA9, 0x2F, 0x75, 0x30, 0x24, 0x35, 0xF5, 0x8C, 0x52, 0x98, 0x2E, 0x2A, 0xC0, 0x4F, 0x9E,\n0x04, 0xF6, 0x2C, 0xC8, 0x1B, 0xF8, 0x55, 0x25, 0x43, 0x6E, 0xB2, 0xA7, 0xE3, 0x14, 0x98, 0x9B,\n0x40, 0x27, 0x1C, 0xA6, 0x10, 0xA6, 0xCD, 0xBF, 0xB9, 0x06, 0xD0, 0xC2, 0x07, 0xAA, 0xB8, 0x82,\n0x20, 0xEF, 0xEA, 0xA2, 0x0D, 0xC0, 0x45, 0x9B, 0x7F, 0xCB, 0xC2, 0x00, 0x52, 0x0B, 0x28, 0xFF,\n0x0F, 0x90, 0x2E, 0xFF, 0x4E, 0xF5, 0x1E, 0x80, 0xEB, 0x71, 0x80, 0xF0, 0xCF, 0xC4, 0x7D, 0x51,\n0x73, 0xDE, 0xDD, 0x4A, 0xAC, 0x59, 0x8A, 0xBF, 0xFB, 0x53, 0x5F, 0xCE, 0xFD, 0x88, 0x21, 0xEC,\n0x3B, 0xC0, 0x36, 0xFF, 0x8E, 0x4F, 0xFE, 0x27, 0x16, 0x70, 0x4B, 0x61, 0x07, 0x02, 0xAD, 0x99,\n0x40, 0xA0, 0x76, 0xF6, 0xCC, 0x87, 0xCD, 0x35, 0x40, 0x5D, 0x02, 0x3C, 0x3D, 0x6D, 0x4E, 0x82,\n0x65, 0xAD, 0x7A, 0x7F, 0xD9, 0x5A, 0xD9, 0x59, 0xAA, 0x9A, 0xFC, 0x53, 0xB5, 0x2C, 0xC8, 0xB7,\n0xBA, 0x09, 0xE4, 0xEE, 0xEC, 0xCD, 0x3A, 0x95, 0xE7, 0x34, 0x31, 0x38, 0x14, 0xC1, 0x94, 0x62,\n0x17, 0x5C, 0xE1, 0x00, 0x05, 0x7F, 0xBE, 0x0B, 0xF8, 0x35, 0x0D, 0x8D, 0x13, 0x60, 0x4B, 0x96,\n0xE4, 0xEB, 0x7F, 0x1C, 0x7E, 0x32, 0x00, 0x46, 0xB7, 0x17, 0x11, 0x6C, 0x3F, 0x69, 0x7B, 0x02,\n0x2C, 0x00, 0x9C, 0x58, 0x07, 0xE9, 0x40, 0x9F, 0x1D, 0xE7, 0xE7, 0x84, 0x7F, 0xD7, 0x4D, 0xFE,\n0xA9, 0x9A, 0xFC, 0x33, 0x35, 0xF8, 0x77, 0x26, 0xF8, 0xB3, 0x24, 0x48, 0x8D, 0x3F, 0xE1, 0xDF,\n0x93, 0xDD, 0xD3, 0xF2, 0x43, 0xDD, 0xCF, 0x02, 0xFB, 0x1C, 0xF8, 0x0F, 0xA8, 0x67, 0x9D, 0x05,\n0xE2, 0x99, 0x0E, 0x58, 0x9B, 0x90, 0xF4, 0x09, 0xB0, 0xE2, 0xEF, 0x76, 0x9C, 0xF8, 0x72, 0xCA,\n0x91, 0xED, 0x20, 0xBD, 0x35, 0xC0, 0x26, 0x02, 0x6D, 0x57, 0xB0, 0x74, 0x7D, 0x75, 0x72, 0xC0,\n0x1B, 0x61, 0xA0, 0xC2, 0xCF, 0x0D, 0xDF, 0xE4, 0xFD, 0x58, 0x00, 0xD4, 0xE6, 0xE7, 0x2A, 0xF1,\n0x7F, 0xDD, 0x2C, 0xC8, 0xA9, 0xF0, 0xAF, 0xF0, 0x80, 0x6C, 0x87, 0xDB, 0xDF, 0x97, 0x4D, 0xC1,\n0x67, 0x1D, 0xFF, 0x67, 0xEA, 0xF1, 0xCF, 0xD4, 0x5A, 0x83, 0xBF, 0x96, 0x58, 0x4C, 0xDC, 0x93,\n0x60, 0x4D, 0xCB, 0xD9, 0xC7, 0x89, 0xE5, 0x40, 0x7B, 0x04, 0x04, 0x73, 0x55, 0x16, 0x58, 0xE8,\n0xA7, 0x11, 0x9D, 0x1C, 0x6C, 0x03, 0x80, 0x1A, 0x37, 0x7A, 0x31, 0x62, 0x8F, 0xB1, 0xC1, 0x54,\n0xB8, 0x2A, 0xED, 0x87, 0xC0, 0x5B, 0x34, 0x56, 0x42, 0xF7, 0x92, 0xC0, 0xF6, 0x16, 0xF8, 0x52,\n0x29, 0xB4, 0x1B, 0xEB, 0x62, 0xEC, 0xB9, 0xC5, 0x14, 0x2D, 0xFE, 0x99, 0xFA, 0xFC, 0xAB, 0x01,\n0x28, 0x13, 0x0A, 0xF9, 0xAD, 0x2A, 0x1B, 0x2D, 0x5B, 0x0B, 0x80, 0xF2, 0x49, 0x3D, 0xAD, 0x09,\n0xF8, 0x4E, 0xD7, 0xFF, 0x49, 0xC0, 0xB6, 0xBF, 0xF2, 0xC1, 0x7E, 0x93, 0xC0, 0xF8, 0x7A, 0x8B,\n0xF5, 0xCA, 0xD8, 0x16, 0xF7, 0x00, 0x8F, 0x13, 0x61, 0xE8, 0x27, 0x7D, 0xDB, 0x01, 0x76, 0xD6,\n0x01, 0xCD, 0xFD, 0x59, 0xD7, 0x57, 0xC2, 0xBF, 0x4D, 0x9B, 0x40, 0xE5, 0x9F, 0x68, 0x22, 0x21,\n0xCE, 0x8F, 0xC5, 0xC0, 0x79, 0x64, 0x63, 0xE3, 0x5F, 0x4D, 0x40, 0x9D, 0xFF, 0x0A, 0xFF, 0x94,\n0x80, 0x8D, 0x42, 0xC0, 0x7D, 0x51, 0x8F, 0x80, 0x4B, 0x57, 0x97, 0x7F, 0x5A, 0x05, 0xDD, 0xE1,\n0x9F, 0x05, 0x77, 0x7F, 0xB9, 0xC6, 0xDB, 0x8C, 0xDF, 0xEB, 0x2F, 0x4D, 0x52, 0x0F, 0xDD, 0x2C,\n0x84, 0x3E, 0xEF, 0x64, 0x81, 0x85, 0x52, 0x0A, 0xC0, 0x9F, 0x04, 0x5E, 0x33, 0xF4, 0xBC, 0x8F,\n0xF8, 0xF3, 0x00, 0x93, 0xE9, 0xB4, 0x78, 0xA6, 0x2A, 0x1E, 0x30, 0xB7, 0x80, 0xB3, 0x59, 0xED,\n0xCC, 0x7F, 0xFD, 0x2D, 0xF0, 0xF7, 0xC6, 0x9A, 0x87, 0xC8, 0x7F, 0x8D, 0x58, 0x0A, 0xD8, 0xA2,\n0xC1, 0x3F, 0x57, 0x9B, 0x7F, 0x35, 0x02, 0x85, 0x7F, 0xFB, 0x2A, 0xFE, 0x4F, 0x98, 0x59, 0xCC,\n0xFC, 0x53, 0x02, 0xD6, 0x75, 0x80, 0x7D, 0x50, 0x79, 0xE6, 0x37, 0xDE, 0x15, 0xDA, 0xC6, 0xE8,\n0xD6, 0xFA, 0x92, 0x81, 0x8F, 0x46, 0xA4, 0xF9, 0x3F, 0x07, 0x9F, 0x85, 0x8F, 0x42, 0x36, 0x58,\n0x5B, 0x5D, 0x07, 0x28, 0x1D, 0x67, 0xF5, 0x04, 0x78, 0xF6, 0x80, 0x6F, 0x3D, 0x01, 0x85, 0x6D,\n0x1E, 0x6E, 0xFC, 0x94, 0x85, 0xBE, 0x18, 0xE8, 0xA6, 0x50, 0x25, 0xE4, 0x3B, 0x32, 0x15, 0xA5,\n0x80, 0x22, 0xE5, 0x9F, 0x11, 0x50, 0x4B, 0xA1, 0x4B, 0xFF, 0xA7, 0x7A, 0xFA, 0xFE, 0xD3, 0x82,\n0x80, 0x4B, 0x74, 0x51, 0x03, 0xB0, 0x47, 0x40, 0xDB, 0x2A, 0x72, 0x3D, 0x7F, 0x55, 0xD9, 0xDB,\n0xC5, 0xB4, 0x4E, 0x1A, 0xAB, 0xFB, 0x13, 0xFD, 0x54, 0xAD, 0xF9, 0xAF, 0x76, 0xB5, 0x03, 0x34,\n0xA3, 0x66, 0x41, 0x21, 0x60, 0x80, 0x20, 0x33, 0x60, 0x6F, 0xD3, 0x32, 0x1F, 0xB2, 0x33, 0xFC,\n0x9F, 0xFD, 0x4B, 0xB5, 0xC3, 0x03, 0xA6, 0x8B, 0x80, 0x7F, 0xC1, 0xBA, 0xE9, 0xFF, 0x20, 0xE0,\n0xD4, 0x78, 0x83, 0x66, 0x1C, 0x8A, 0x14, 0x7F, 0x6E, 0x01, 0x2B, 0xFE, 0xA1, 0x3E, 0xFF, 0xCA,\n0x32, 0x68, 0xFB, 0x54, 0x19, 0x01, 0x5B, 0xFE, 0xCF, 0x09, 0xF8, 0x4F, 0xD6, 0x00, 0x21, 0x19,\n0xFC, 0x53, 0x85, 0x8C, 0x30, 0x87, 0x0D, 0x19, 0xC0, 0xAF, 0x04, 0x6B, 0x33, 0x02, 0x25, 0x40,\n0x5E, 0xDC, 0x05, 0x72, 0x6B, 0x43, 0x3D, 0xDE, 0x56, 0x0E, 0x70, 0x40, 0x60, 0x69, 0x00, 0xFF,\n0x99, 0x07, 0x2C, 0xB4, 0x5E, 0x03, 0xC8, 0x9F, 0x19, 0x1D, 0xA0, 0x15, 0x00, 0xDA, 0xC9, 0x09,\n0xFC, 0x2B, 0x3C, 0xA0, 0xF1, 0x6F, 0xF7, 0x14, 0x02, 0x16, 0x1B, 0xE1, 0xF6, 0x67, 0xBD, 0xFF,\n0x74, 0x59, 0x01, 0x10, 0x95, 0xF8, 0xEB, 0x12, 0x50, 0xF1, 0x37, 0x7F, 0x53, 0x17, 0x7B, 0xA4,\n0x80, 0x61, 0x21, 0x53, 0xE0, 0x2F, 0xF9, 0xF6, 0x57, 0x04, 0x64, 0x87, 0xD9, 0x79, 0x6E, 0x00,\n0xED, 0x12, 0xFC, 0x93, 0x91, 0x23, 0x2C, 0xF1, 0x7F, 0xCE, 0x3E, 0x89, 0x30, 0x55, 0xE6, 0xD4,\n0xA4, 0xD3, 0x6A, 0x0F, 0xD0, 0x17, 0x30, 0x2C, 0x81, 0x53, 0x2D, 0x09, 0x18, 0x6E, 0x86, 0x65,\n0xB1, 0x37, 0x64, 0x89, 0xFC, 0xFD, 0x5A, 0x10, 0x45, 0x09, 0x12, 0xAA, 0x08, 0xC8, 0x47, 0xA0,\n0x40, 0xE0, 0xC5, 0xC5, 0xD3, 0x7D, 0xD7, 0xB6, 0x7C, 0xFE, 0x1E, 0xF4, 0x7F, 0xBB, 0x4F, 0xFE,\n0xFA, 0xAC, 0x3E, 0xA9, 0x01, 0xD8, 0x63, 0x15, 0x08, 0x74, 0xEE, 0x59, 0x2E, 0xC4, 0x2F, 0xF1,\n0x0A, 0x1C, 0xA0, 0xC6, 0x9A, 0x2C, 0xA0, 0xE1, 0xCF, 0x1E, 0xD3, 0x89, 0xDF, 0x0B, 0xC1, 0x0F,\n0x3A, 0xE0, 0x61, 0x17, 0x4C, 0x5F, 0x54, 0x0E, 0x10, 0x38, 0x16, 0x08, 0x3C, 0x39, 0xA6, 0x7B,\n0xEB, 0x09, 0xB8, 0xA5, 0xA2, 0x06, 0x50, 0x65, 0x3E, 0x90, 0x93, 0xB9, 0x06, 0x1A, 0xFE, 0x91,\n0x0B, 0x2E, 0xF8, 0xB7, 0x5B, 0x10, 0x50, 0x13, 0x20, 0xFB, 0xAE, 0xF7, 0x49, 0x05, 0x27, 0xFC,\n0x43, 0x67, 0x05, 0xFF, 0xBA, 0x04, 0x34, 0xE7, 0xE7, 0x0E, 0xF0, 0x47, 0x6E, 0x03, 0xA8, 0x31,\n0xCC, 0xEE, 0xCC, 0xFF, 0x99, 0xF6, 0xEC, 0x51, 0xF9, 0x3F, 0xA0, 0x92, 0x7A, 0x40, 0x95, 0x4E,\n0x52, 0x41, 0x95, 0x40, 0x2E, 0x80, 0x8F, 0xF3, 0x1B, 0x0F, 0x6D, 0x62, 0x01, 0xD3, 0xA9, 0xF2,\n0x0D, 0xFF, 0x4E, 0xB3, 0x81, 0x0F, 0x96, 0xE3, 0x9C, 0xCF, 0x56, 0xD5, 0x0E, 0x05, 0xFF, 0xF6,\n0x24, 0x5C, 0x33, 0xEA, 0xFC, 0x40, 0x68, 0x07, 0xFD, 0x24, 0xAE, 0xFB, 0x00, 0x5C, 0x0F, 0xFF,\n0x96, 0x9A, 0x00, 0xD9, 0x77, 0x3D, 0x7D, 0x98, 0x80, 0xC2, 0x3F, 0xD7, 0xAE, 0x10, 0xB0, 0x00,\n0x20, 0x20, 0x4A, 0xFD, 0x1F, 0xD8, 0xC3, 0xEE, 0x29, 0xFE, 0xA6, 0xD9, 0xB0, 0x5F, 0x27, 0xF7,\n0xB1, 0xA1, 0x25, 0x40, 0x43, 0xA0, 0x3B, 0x3E, 0xEB, 0x57, 0x8E, 0x94, 0x7F, 0xDA, 0x59, 0x34,\n0x1C, 0xA0, 0xD3, 0xB1, 0xAE, 0x80, 0x71, 0x0F, 0xF8, 0x56, 0x03, 0x70, 0xCA, 0xFF, 0x4E, 0x3D,\n0x77, 0xC1, 0x72, 0x39, 0x13, 0x99, 0xFF, 0xA2, 0x1C, 0x7F, 0x52, 0x00, 0xB8, 0x7B, 0x8A, 0x9E,\n0xC8, 0x0D, 0xA1, 0x0B, 0xFE, 0x39, 0x00, 0xDF, 0xE7, 0x86, 0x80, 0x09, 0x00, 0xD1, 0x45, 0xC5,\n0x3F, 0xF4, 0xE0, 0xAD, 0x60, 0x84, 0x7E, 0xEE, 0x00, 0xE5, 0x78, 0xB7, 0x18, 0x9A, 0xD4, 0xA6,\n0xE1, 0xF0, 0x4B, 0xE4, 0x04, 0x2C, 0x6E, 0x09, 0x7D, 0xEE, 0x2D, 0x98, 0x40, 0x78, 0x64, 0x06,\n0x90, 0x18, 0xD3, 0xBB, 0xE4, 0x85, 0x0D, 0x6B, 0x04, 0x16, 0x30, 0x14, 0x0F, 0xDE, 0x8C, 0xFC,\n0xB3, 0x86, 0x07, 0x0C, 0x14, 0xB6, 0x9F, 0x8F, 0xAE, 0xE2, 0xDF, 0x5D, 0x61, 0xF8, 0xA4, 0x1B,\n0x4B, 0x01, 0xD5, 0x54, 0x13, 0x79, 0x32, 0x5E, 0x2E, 0x2F, 0x46, 0xD5, 0x13, 0xE0, 0x1A, 0x81,\n0x3E, 0xFF, 0x65, 0x12, 0x9C, 0x13, 0xF0, 0xFD, 0x67, 0x4F, 0x4E, 0x77, 0xF9, 0xA8, 0x3E, 0xE4,\n0x01, 0x01, 0x60, 0x4F, 0x7F, 0x4C, 0xCD, 0xA0, 0x67, 0xB8, 0xA3, 0x1F, 0x67, 0xC0, 0xD6, 0xE7,\n0x1C, 0xE4, 0x45, 0x7D, 0x03, 0xF8, 0xB9, 0xE2, 0x4C, 0x06, 0xD6, 0x6E, 0x43, 0xFD, 0x8B, 0x04,\n0x13, 0x63, 0x67, 0xA0, 0x1D, 0x53, 0x07, 0x48, 0xB3, 0x4E, 0x94, 0x27, 0x80, 0x4F, 0x8E, 0xFF,\n0xA9, 0x05, 0x44, 0x9B, 0x66, 0xA0, 0xB6, 0xA3, 0xBB, 0x28, 0x94, 0x46, 0x20, 0x4F, 0x80, 0xA0,\n0xCC, 0x02, 0x6A, 0x01, 0x0C, 0x00, 0xD4, 0xE4, 0x9A, 0x13, 0x30, 0x5B, 0x00, 0xE4, 0x57, 0x35,\n0xB7, 0x84, 0xCE, 0xF0, 0x87, 0x2A, 0xFE, 0xD5, 0x1E, 0xF0, 0xDB, 0x79, 0xFE, 0x8B, 0x55, 0x59,\n0x80, 0xBE, 0xE1, 0x5E, 0x4F, 0x7A, 0xC4, 0xFF, 0xCD, 0xC3, 0x82, 0x7F, 0xE7, 0x34, 0xC8, 0x77,\n0xDF, 0x00, 0x82, 0xBF, 0xB8, 0x0E, 0x38, 0xCA, 0x67, 0xBF, 0x1C, 0x82, 0x59, 0x4C, 0xFC, 0x9F,\n0xE6, 0x58, 0x56, 0x58, 0x40, 0xEA, 0x5F, 0xE8, 0xA4, 0x15, 0xFC, 0xB3, 0x0E, 0x02, 0x6A, 0x63,\n0x43, 0x88, 0x37, 0xE7, 0x1F, 0xEF, 0x6B, 0xB5, 0x00, 0x88, 0xFA, 0xFC, 0xCB, 0x6F, 0x08, 0x6D,\n0xFE, 0x0F, 0x6D, 0xE3, 0x01, 0x33, 0xFF, 0x87, 0x07, 0x4C, 0xCB, 0x01, 0xB9, 0x25, 0xFE, 0xAD,\n0x3E, 0x32, 0x4E, 0x1D, 0x00, 0x3F, 0x98, 0xC7, 0x15, 0x8C, 0xA1, 0x73, 0xCF, 0xBA, 0x26, 0xE9,\n0xFA, 0xE6, 0x8F, 0xCD, 0xC0, 0x58, 0x3E, 0x6B, 0xDA, 0x31, 0x21, 0x76, 0xF3, 0xE7, 0x2C, 0x7C,\n0x95, 0x39, 0x40, 0xF8, 0xC7, 0xF0, 0x24, 0x4F, 0x00, 0xCB, 0x11, 0x0B, 0xF8, 0xF8, 0x1B, 0x23,\n0xB4, 0xB4, 0xAE, 0x02, 0x40, 0x2C, 0xA0, 0xA1, 0x50, 0x16, 0xFB, 0xC6, 0x42, 0x40, 0x12, 0xC0,\n0x28, 0x4D, 0x84, 0x18, 0xFF, 0x9E, 0x9D, 0x0E, 0x7A, 0x22, 0x1E, 0x70, 0x25, 0xFE, 0xDC, 0xFF,\n0x21, 0x21, 0xE0, 0x59, 0x91, 0x00, 0x46, 0x6D, 0x00, 0xA6, 0x0E, 0xE4, 0x5B, 0xBD, 0x75, 0xFB,\n0x60, 0x55, 0x66, 0x02, 0x5E, 0xD3, 0xD9, 0xD7, 0x5B, 0x56, 0xF7, 0xEF, 0xF9, 0x3F, 0xCD, 0x08,\n0x3F, 0xB0, 0x00, 0xC8, 0x0C, 0x38, 0x5D, 0x07, 0xA4, 0xFE, 0x85, 0xF0, 0x72, 0x40, 0xC4, 0xFC,\n0x17, 0xF8, 0x85, 0x5C, 0xF0, 0x08, 0x42, 0xF8, 0x47, 0x5C, 0x7E, 0xBF, 0x7A, 0x1E, 0xEE, 0xE0,\n0x43, 0xA9, 0xAF, 0xE5, 0x1D, 0x18, 0x27, 0xC1, 0xD6, 0x70, 0xCB, 0xF2, 0x30, 0xE4, 0x0D, 0x91,\n0x66, 0x42, 0x16, 0x51, 0x35, 0xFF, 0xD0, 0x4A, 0xFF, 0xA7, 0xFC, 0xF3, 0x25, 0x40, 0x12, 0x21,\n0x49, 0x01, 0xE0, 0x13, 0x03, 0x20, 0xCA, 0xF7, 0x04, 0x1F, 0x09, 0x00, 0x0B, 0x4A, 0xF1, 0x0C,\n0xA0, 0xFB, 0x63, 0xA4, 0xE1, 0x38, 0x09, 0xBE, 0x85, 0xA7, 0x12, 0x29, 0x59, 0x1F, 0xEF, 0x00,\n0xE7, 0xF5, 0x3D, 0xE7, 0x61, 0xB2, 0x0D, 0x24, 0x38, 0x40, 0xB9, 0xDA, 0x75, 0x80, 0xF9, 0x24,\n0xD8, 0x3D, 0x5F, 0xE9, 0x00, 0xFB, 0x04, 0x4C, 0x98, 0xB8, 0x96, 0x02, 0x40, 0x89, 0xA9, 0x57,\n0xB9, 0x03, 0xBC, 0x5F, 0x00, 0xB8, 0x05, 0xFF, 0x50, 0x62, 0x00, 0x99, 0x51, 0x40, 0x40, 0xCA,\n0x01, 0xB3, 0xF9, 0x2F, 0xEB, 0x80, 0x67, 0x85, 0xFF, 0x43, 0x05, 0xFF, 0x4A, 0x0F, 0x48, 0x02,\n0x64, 0xF4, 0x80, 0x58, 0x40, 0x3C, 0xCE, 0x9D, 0xAF, 0x3D, 0xC7, 0x7C, 0x01, 0x90, 0x24, 0x08,\n0xCB, 0x80, 0xD1, 0x00, 0xBE, 0x91, 0xCD, 0x1A, 0x21, 0x84, 0x6B, 0x63, 0x4D, 0x74, 0x58, 0xFF,\n0x93, 0x20, 0x15, 0x1C, 0xA6, 0xC0, 0xFC, 0x3B, 0x09, 0xB9, 0x16, 0x18, 0x3C, 0x66, 0x3F, 0xF0,\n0xAC, 0x29, 0xFF, 0xF6, 0xF8, 0xEF, 0x0F, 0xB9, 0x60, 0x96, 0xFF, 0x2C, 0x01, 0x7C, 0xEF, 0x5D,\n0xDD, 0x91, 0xAE, 0xF2, 0x7F, 0xA8, 0xE4, 0x1F, 0x5A, 0x79, 0xBB, 0x0C, 0x31, 0x7C, 0xFB, 0x83,\n0xD2, 0x72, 0x40, 0xF8, 0x37, 0xCC, 0x58, 0x12, 0x03, 0x08, 0x00, 0x13, 0x52, 0x71, 0x25, 0xEE,\n0x00, 0x1E, 0x4F, 0x49, 0x80, 0x0C, 0x0E, 0x10, 0x20, 0xFE, 0x6D, 0x00, 0x9A, 0xE5, 0xBB, 0xFD,\n0x8A, 0xFC, 0x87, 0xCD, 0x80, 0x8D, 0x77, 0x21, 0x19, 0x3C, 0x69, 0x5C, 0x03, 0x7C, 0x95, 0x38,\n0x40, 0x0D, 0xDA, 0xFC, 0x38, 0x49, 0x36, 0x80, 0x50, 0x07, 0x88, 0x03, 0x6C, 0xAB, 0xEF, 0x00,\n0xD7, 0x53, 0x00, 0x88, 0x98, 0xF6, 0x82, 0x40, 0x69, 0x1A, 0xBE, 0x00, 0x58, 0x79, 0x40, 0x11,\n0xD3, 0xDF, 0x81, 0x80, 0x11, 0x80, 0x23, 0xFF, 0x58, 0x07, 0x5C, 0x9E, 0x15, 0x00, 0x44, 0x05,\n0xFF, 0x0A, 0x0F, 0xF8, 0xE3, 0xE2, 0x3A, 0x84, 0x34, 0x0A, 0x5F, 0xAC, 0x93, 0x1E, 0xFE, 0x81,\n0x80, 0xBC, 0x20, 0x1A, 0xF6, 0xC1, 0x16, 0x76, 0xC5, 0x21, 0xF1, 0x64, 0x20, 0x2A, 0xCE, 0x82,\n0x47, 0x91, 0xFF, 0x1D, 0x0F, 0xD4, 0x3F, 0xBB, 0xE0, 0x5F, 0x4C, 0x84, 0x8C, 0x10, 0xC6, 0xFF,\n0x8D, 0xC3, 0xD2, 0xFF, 0x21, 0x7E, 0x47, 0x50, 0x37, 0x79, 0xED, 0x69, 0xA5, 0x31, 0x16, 0x15,\n0xFF, 0x50, 0xCD, 0x3F, 0x14, 0x0B, 0x00, 0xF1, 0x7F, 0x85, 0x07, 0x74, 0xFE, 0x05, 0x02, 0x26,\n0xFC, 0x03, 0x80, 0x29, 0x90, 0x0E, 0x02, 0xFD, 0xB4, 0x85, 0x6B, 0x07, 0x33, 0xFD, 0x9C, 0x7F,\n0x24, 0x81, 0xA5, 0xFB, 0xE7, 0xFE, 0xCF, 0x70, 0x67, 0x94, 0x53, 0x1C, 0xDA, 0x49, 0x9C, 0x04,\n0xE3, 0x00, 0x49, 0x7F, 0xF8, 0x11, 0x07, 0x88, 0xE3, 0x0B, 0xF8, 0x93, 0x96, 0x66, 0x80, 0xA9,\n0x02, 0xB4, 0x4E, 0x1E, 0xFF, 0x80, 0x80, 0x8F, 0xDC, 0x17, 0xC7, 0xB5, 0x9A, 0x80, 0x63, 0x6C,\n0x71, 0x4D, 0xD9, 0x47, 0x01, 0xE0, 0x09, 0xFE, 0xAF, 0x24, 0x20, 0xFE, 0x0F, 0xB1, 0x25, 0xA4,\n0xF0, 0x7F, 0x49, 0x41, 0xF4, 0x32, 0x55, 0xC2, 0xBF, 0x1E, 0x01, 0x49, 0x55, 0x12, 0xD6, 0xDD,\n0xBF, 0xC9, 0xB1, 0xCF, 0x7F, 0x83, 0x20, 0x20, 0x72, 0x98, 0xA8, 0xC0, 0xDF, 0x79, 0xC0, 0x8F,\n0x3C, 0x6C, 0xAE, 0x9A, 0x78, 0xC0, 0xB1, 0x1C, 0x10, 0xE8, 0x31, 0x9A, 0x03, 0x51, 0x00, 0x48,\n0x10, 0xF1, 0x8E, 0x80, 0xB0, 0x19, 0x5C, 0x27, 0x1E, 0x50, 0x6F, 0x84, 0xBD, 0xDA, 0x02, 0x3A,\n0xFC, 0xD8, 0x36, 0xB8, 0x58, 0xB8, 0xAD, 0x26, 0x0C, 0x89, 0x15, 0xFF, 0x50, 0xC9, 0x3F, 0xB4,\n0x7A, 0x03, 0x08, 0xC2, 0x03, 0x66, 0x05, 0x80, 0x91, 0x80, 0x4F, 0x98, 0x05, 0xC3, 0x3F, 0x00,\n0x98, 0x78, 0x40, 0x85, 0x57, 0x6E, 0x00, 0xE9, 0x70, 0x7F, 0xFA, 0xA0, 0xD9, 0x29, 0x87, 0xBF,\n0xEF, 0xFF, 0xE4, 0x20, 0x9D, 0xDA, 0x3E, 0x3F, 0xBD, 0x5B, 0x10, 0x4D, 0x8F, 0x70, 0x80, 0xD4,\n0x03, 0x86, 0xF4, 0xAF, 0x76, 0x3E, 0x84, 0x84, 0x61, 0xFD, 0x6F, 0xA5, 0x03, 0x7C, 0xAC, 0x07,\n0xEC, 0x2B, 0xE2, 0xEF, 0x31, 0xF4, 0x8B, 0xD7, 0xD8, 0x15, 0x7C, 0xC2, 0x0D, 0x62, 0x02, 0xFF,\n0x92, 0x44, 0x88, 0x3C, 0x28, 0x80, 0x09, 0x04, 0x1C, 0x01, 0x48, 0xFE, 0x23, 0x48, 0xEF, 0x8D,\n0x5F, 0x01, 0xD0, 0x15, 0xF9, 0xD7, 0x26, 0xA0, 0x6F, 0x55, 0x88, 0x16, 0xD0, 0xE8, 0x87, 0x07,\n0x84, 0x7F, 0x0E, 0x00, 0x50, 0x10, 0xF3, 0x1F, 0x38, 0x2A, 0x69, 0x9C, 0x8A, 0x7E, 0x18, 0x2C,\n0xE0, 0xBC, 0x01, 0x64, 0x25, 0x02, 0xC3, 0x3E, 0x0F, 0x88, 0xC7, 0x50, 0x9B, 0xCE, 0x94, 0x31,\n0x81, 0x76, 0x4C, 0xF8, 0x27, 0xB3, 0xE0, 0x80, 0x60, 0x2C, 0xAA, 0x09, 0x0C, 0xC6, 0x04, 0x48,\n0xAA, 0xF9, 0x8D, 0xE2, 0xCD, 0xBA, 0x5E, 0x64, 0x11, 0x16, 0x20, 0x72, 0xD5, 0xFC, 0x43, 0x61,\n0x03, 0x88, 0xA9, 0xF6, 0x80, 0x19, 0xFF, 0xF4, 0x23, 0x1C, 0x00, 0x78, 0x04, 0x00, 0x0B, 0x28,\n0x05, 0x04, 0xAE, 0xCA, 0x7D, 0xE0, 0x00, 0x69, 0xDE, 0xFD, 0x03, 0xFC, 0x39, 0xEB, 0xE6, 0xE9,\n0xAF, 0xF5, 0x36, 0xB8, 0x5D, 0xB9, 0x29, 0x8E, 0x18, 0x1D, 0xE0, 0x17, 0x58, 0x40, 0x4C, 0xDF,\n0xD8, 0xFC, 0x62, 0x98, 0xFF, 0xAE, 0x76, 0x80, 0x8F, 0xF5, 0x80, 0xA5, 0xFF, 0x43, 0x7F, 0x0F,\n0x80, 0xBC, 0xF8, 0xE8, 0xAF, 0x26, 0x9D, 0x5F, 0x1B, 0x6F, 0x83, 0x05, 0xFF, 0x10, 0x04, 0x8C,\n0x05, 0x80, 0x08, 0xB1, 0x25, 0x84, 0x1B, 0xC0, 0xA0, 0x48, 0xC0, 0x02, 0x7F, 0xA8, 0xE4, 0x1F,\n0x1A, 0x01, 0x88, 0xE7, 0x8B, 0x16, 0xF0, 0x3B, 0x6E, 0x80, 0x00, 0xFF, 0x82, 0x20, 0x20, 0x02,\n0x7F, 0xD6, 0x38, 0xE5, 0xBE, 0x08, 0xDE, 0x00, 0x5F, 0x8C, 0x9B, 0x71, 0x27, 0xF0, 0x68, 0x00,\n0x47, 0x1A, 0xF2, 0x32, 0x26, 0xC0, 0x49, 0x0C, 0x0E, 0x10, 0xEF, 0xE7, 0x9D, 0x2B, 0x7A, 0x40,\n0x77, 0x7F, 0x58, 0x40, 0x34, 0xBF, 0x47, 0x5E, 0x12, 0x83, 0xF9, 0x0B, 0xB1, 0xF3, 0x6D, 0xE5,\n0xFF, 0x50, 0x28, 0x00, 0xCC, 0x35, 0x6E, 0x00, 0xC1, 0xFF, 0x15, 0x04, 0x84, 0x7F, 0x41, 0x91,\n0x80, 0x47, 0x00, 0x30, 0xF3, 0x80, 0x6C, 0x00, 0x4E, 0x1C, 0x1F, 0x83, 0x83, 0x3F, 0x7C, 0xB6,\n0x0C, 0xFE, 0x20, 0x1D, 0x83, 0xBF, 0xE3, 0xFF, 0xA6, 0xF9, 0xEE, 0x5C, 0x04, 0xE3, 0x9D, 0x86,\n0x9B, 0x40, 0xCA, 0xA1, 0x1B, 0x0E, 0x30, 0x45, 0x20, 0x4E, 0xF0, 0xFE, 0xFE, 0x8F, 0x95, 0x0E,\n0xD0, 0xBA, 0x7F, 0xC3, 0x02, 0xAA, 0xBA, 0xF9, 0x5F, 0x32, 0xC0, 0x06, 0x3E, 0xBB, 0xEA, 0x9A,\n0xE9, 0x77, 0x42, 0x01, 0x60, 0x4E, 0xC0, 0x06, 0xFF, 0xD8, 0x12, 0x02, 0xFF, 0x9E, 0xA6, 0xFC,\n0xA3, 0x18, 0xA6, 0x01, 0xC0, 0x8B, 0x04, 0x80, 0x55, 0x22, 0x04, 0xF2, 0x59, 0x47, 0x58, 0x23,\n0x09, 0xC2, 0xFA, 0x5F, 0x30, 0x80, 0x91, 0x80, 0xD0, 0x6E, 0xA0, 0x20, 0x28, 0x84, 0x3E, 0x78,\n0xBF, 0x18, 0x14, 0x44, 0xAB, 0x40, 0x9F, 0xC7, 0x78, 0xE0, 0x65, 0xAF, 0x9D, 0x7F, 0x89, 0x07,\n0x1C, 0x12, 0x31, 0x78, 0x3F, 0x7E, 0x56, 0x7E, 0xF8, 0x96, 0xFF, 0xC3, 0x03, 0x52, 0x0D, 0xB8,\n0x78, 0x28, 0x2A, 0xFF, 0x87, 0x1A, 0xFC, 0x43, 0x71, 0x03, 0x48, 0x54, 0xDC, 0x12, 0xB2, 0x1B,\n0xF8, 0x97, 0x94, 0x03, 0x3A, 0xFF, 0x00, 0x60, 0x0A, 0x26, 0x88, 0x47, 0xC7, 0x34, 0x98, 0x23,\n0xEC, 0xA3, 0x59, 0x67, 0x91, 0xA0, 0xB0, 0x6B, 0x00, 0xF5, 0x20, 0x31, 0x83, 0x10, 0x5F, 0x28,\n0xDC, 0xC3, 0x08, 0x8A, 0x12, 0x07, 0xA8, 0x84, 0x1C, 0x1C, 0x20, 0xC3, 0x00, 0x43, 0xD5, 0xE8,\n0xFF, 0x12, 0x07, 0xA8, 0xDD, 0xF1, 0xC6, 0x09, 0xC8, 0xA5, 0x32, 0x7C, 0x30, 0x21, 0x30, 0x84,\n0x17, 0xC0, 0x94, 0xFC, 0x63, 0x4B, 0x88, 0x0E, 0xE0, 0x5F, 0x42, 0x40, 0x0C, 0x20, 0x33, 0x95,\n0xC4, 0x03, 0x56, 0xFC, 0x73, 0xB5, 0xF8, 0x07, 0x01, 0xE1, 0x5F, 0x6E, 0x01, 0x7D, 0x16, 0xEC,\n0x1B, 0x80, 0x13, 0xC5, 0x72, 0x40, 0xE0, 0xC7, 0x40, 0xE5, 0x43, 0xE8, 0x03, 0xEB, 0x42, 0x58,\n0xC7, 0x0C, 0xD8, 0x51, 0x37, 0x50, 0x70, 0x1C, 0xE0, 0xFF, 0x52, 0xFC, 0x59, 0xBC, 0x61, 0xFF,\n0xC9, 0xB4, 0x01, 0x84, 0x88, 0xE4, 0xBE, 0x1A, 0x0A, 0x00, 0xA3, 0x05, 0x44, 0x7E, 0x33, 0x40,\n0xE9, 0xAE, 0x53, 0x03, 0x38, 0x45, 0x05, 0x40, 0x54, 0x4E, 0x80, 0x51, 0xD8, 0x00, 0x92, 0x89,\n0xFF, 0x43, 0x3A, 0x05, 0x80, 0x29, 0x01, 0x83, 0xFF, 0x03, 0x80, 0xD0, 0x69, 0x34, 0x80, 0xA5,\n0x03, 0x04, 0x93, 0x07, 0x80, 0xAF, 0x30, 0x80, 0x7D, 0x79, 0xE9, 0x8B, 0xF4, 0x33, 0xF4, 0xF0,\n0x7D, 0xD2, 0x91, 0xF7, 0x98, 0x47, 0x89, 0x03, 0x1C, 0xF4, 0xCA, 0x31, 0x97, 0x20, 0x10, 0x0B,\n0xE8, 0xAE, 0xAF, 0x72, 0x80, 0x9B, 0x07, 0x60, 0x3B, 0xFD, 0xE1, 0x33, 0xEC, 0x15, 0x4F, 0xCF,\n0x06, 0x31, 0xE1, 0x5F, 0x96, 0x08, 0x39, 0xDD, 0xB5, 0x25, 0xE4, 0xD0, 0xB1, 0x25, 0x24, 0x2D,\n0x00, 0x8C, 0xE5, 0x80, 0xCB, 0x0A, 0x80, 0xAE, 0x06, 0xFF, 0x20, 0x20, 0xF3, 0xDF, 0x9D, 0x07,\n0x1C, 0xA0, 0x74, 0xE4, 0x3F, 0x12, 0x03, 0x18, 0x8B, 0x61, 0x86, 0xB5, 0x34, 0x06, 0xA4, 0x19,\n0xB0, 0x80, 0xB0, 0x2F, 0x73, 0x81, 0x6C, 0x8A, 0xBB, 0x01, 0x7E, 0x03, 0x04, 0xB9, 0x24, 0xF2,\n0x02, 0x98, 0x8A, 0x80, 0x20, 0x18, 0x2C, 0xF3, 0xE3, 0xDD, 0xC5, 0xE1, 0xC0, 0xBF, 0x87, 0x35,\n0xD9, 0x65, 0x69, 0x71, 0x55, 0x35, 0x96, 0x03, 0xFA, 0x06, 0x90, 0x4A, 0x5D, 0xFE, 0x81, 0xC0,\n0x74, 0xFE, 0x1B, 0xB7, 0x84, 0x18, 0xFF, 0x76, 0x0B, 0x02, 0xC2, 0xBF, 0x02, 0x80, 0xB5, 0x03,\n0x14, 0xDE, 0xA1, 0x86, 0x01, 0x4C, 0xD2, 0x21, 0xFD, 0x3A, 0x18, 0x2F, 0x03, 0x9C, 0xA7, 0xBF,\n0x1C, 0x60, 0x5F, 0xE6, 0x00, 0xED, 0x9F, 0xC5, 0xF5, 0x39, 0xFC, 0x80, 0x9E, 0x05, 0x0D, 0x00,\n0xE2, 0xFB, 0x18, 0x71, 0xAA, 0x8F, 0xB6, 0x60, 0x59, 0x43, 0x7D, 0x03, 0x48, 0x38, 0x05, 0x35,\n0x98, 0xF7, 0x32, 0x2F, 0x76, 0xFB, 0xC7, 0x06, 0xE0, 0x82, 0x80, 0xF8, 0xBF, 0x88, 0x40, 0x39,\n0x0C, 0x9B, 0xE2, 0xD2, 0x04, 0x08, 0x5B, 0x42, 0xDC, 0x03, 0x2E, 0x1B, 0x82, 0x7F, 0x5D, 0x02,\n0x3A, 0xF4, 0x32, 0x07, 0xE8, 0x1E, 0xF0, 0x1A, 0x00, 0x46, 0x01, 0x06, 0x12, 0x20, 0xD6, 0xA6,\n0x07, 0x6E, 0x8A, 0x21, 0x1B, 0xE0, 0x72, 0xFA, 0x91, 0x0A, 0x26, 0x03, 0xCC, 0xA4, 0x37, 0x14,\n0xC3, 0x58, 0xC7, 0xFA, 0x5F, 0x19, 0xA3, 0x2B, 0x25, 0x4D, 0x13, 0x7F, 0x54, 0xD6, 0xFF, 0x4C,\n0xD1, 0x02, 0x72, 0xDD, 0xF3, 0xC0, 0x95, 0x01, 0x64, 0x16, 0xBC, 0xA8, 0x05, 0xFF, 0x4A, 0x85,\n0x0D, 0x20, 0x89, 0xE6, 0xFF, 0x49, 0xA6, 0x15, 0x00, 0xC2, 0xBA, 0xD8, 0xB1, 0x25, 0x04, 0xFE,\n0x01, 0x40, 0x84, 0x67, 0x63, 0x18, 0x1C, 0xA0, 0xE9, 0xE3, 0x83, 0xBB, 0xB1, 0x21, 0x03, 0xE8,\n0xAB, 0x7C, 0x83, 0x25, 0x14, 0x69, 0x6F, 0x67, 0x64, 0x81, 0x2B, 0x07, 0xF8, 0xEA, 0x73, 0x56,\n0x01, 0x47, 0xE8, 0x71, 0xD1, 0xDB, 0x58, 0x00, 0x98, 0x3B, 0xC0, 0xCD, 0x78, 0x40, 0x88, 0x87,\n0x9A, 0x06, 0xD0, 0x4F, 0x1D, 0x7B, 0xA3, 0x03, 0x24, 0x01, 0xDC, 0x22, 0xA0, 0xFA, 0x3F, 0x6E,\n0xAA, 0xB1, 0x4B, 0x87, 0x03, 0x94, 0x67, 0x9E, 0x19, 0x00, 0x8B, 0x8F, 0xA9, 0xAF, 0x03, 0xB2,\n0x01, 0xA4, 0x50, 0x8F, 0x7F, 0x6C, 0x0B, 0x06, 0x7B, 0xA9, 0x03, 0x94, 0x83, 0xF2, 0xCF, 0xBF,\n0xF4, 0xC1, 0x00, 0x72, 0x86, 0x07, 0x74, 0x72, 0x90, 0x5C, 0x88, 0x95, 0x30, 0xE4, 0x3F, 0x2A,\n0x04, 0x9A, 0x07, 0xCC, 0x80, 0x17, 0x0B, 0xA2, 0xF1, 0x7F, 0xA5, 0x07, 0xFC, 0x61, 0x40, 0x74,\n0x44, 0xE0, 0xDC, 0x28, 0x00, 0x2C, 0x35, 0x95, 0x42, 0xDB, 0xAE, 0xC2, 0xDA, 0x03, 0x32, 0xFF,\n0x2D, 0x04, 0xFF, 0x6A, 0x85, 0x0D, 0x20, 0x79, 0x22, 0x64, 0xBE, 0x03, 0xB4, 0x7F, 0x52, 0x03,\n0xFE, 0x9E, 0x8C, 0x5B, 0x42, 0x8E, 0x12, 0x00, 0xC2, 0x2A, 0xD6, 0xF8, 0x20, 0xE0, 0xD8, 0x19,\n0x02, 0x87, 0x7F, 0x4C, 0xBB, 0xA2, 0xF1, 0x6F, 0x6C, 0xEB, 0x2B, 0x0D, 0x39, 0x7C, 0x20, 0x21,\n0xBB, 0x81, 0xE5, 0x44, 0x61, 0xA7, 0x97, 0x0C, 0x8B, 0x9F, 0x7B, 0x91, 0xA0, 0xAF, 0x01, 0xD2,\n0x30, 0x80, 0x7E, 0xFE, 0x05, 0xA4, 0x63, 0xCA, 0x8B, 0x1F, 0x1C, 0x4D, 0x20, 0x05, 0x80, 0x0F,\n0x38, 0xC0, 0xE9, 0xD0, 0xC7, 0xA0, 0x80, 0x6C, 0x23, 0x32, 0xC4, 0xD9, 0xD1, 0x83, 0xEB, 0x9C,\n0x0B, 0x11, 0xD9, 0x00, 0x52, 0xE9, 0x85, 0xF1, 0x4F, 0x69, 0x57, 0x84, 0x16, 0xC3, 0xE0, 0xFF,\n0x0A, 0x0F, 0x28, 0x53, 0x9A, 0xE5, 0xD3, 0x56, 0xC0, 0xBF, 0x9A, 0x80, 0xB6, 0x03, 0xB8, 0x74,\n0x80, 0x7A, 0x60, 0x02, 0x5C, 0xE9, 0x1B, 0xE7, 0x5F, 0x10, 0x57, 0x39, 0xBB, 0xFC, 0xA9, 0xC4,\n0x9F, 0xC5, 0xDD, 0x0D, 0x20, 0x3E, 0xA2, 0xE3, 0x82, 0x3C, 0x9A, 0xFE, 0xCF, 0xDA, 0xB0, 0x46,\n0x19, 0xE6, 0xE8, 0xE7, 0xC0, 0xDA, 0xF9, 0x57, 0x58, 0x40, 0xCF, 0x84, 0xEC, 0xF0, 0xDB, 0x24,\n0x8F, 0x9D, 0x6B, 0x05, 0xE0, 0xA2, 0x27, 0xF8, 0x57, 0x6A, 0x9B, 0x0D, 0x20, 0x0D, 0x0F, 0x78,\n0xC8, 0x4C, 0xE5, 0xC9, 0x34, 0x43, 0xA1, 0xB3, 0x9E, 0x82, 0xE8, 0x0C, 0x80, 0x88, 0x0C, 0xEF,\n0xC7, 0x5F, 0x7C, 0x2C, 0x8F, 0x20, 0xF8, 0xD7, 0xF6, 0x78, 0xBC, 0xA6, 0x4F, 0xBE, 0xCF, 0xB5,\n0xB3, 0x91, 0xC9, 0x8F, 0x7E, 0xC9, 0x9E, 0x34, 0xFC, 0x51, 0x0E, 0xFD, 0xB9, 0xC4, 0xFD, 0x2D,\n0xC2, 0xF3, 0x25, 0x80, 0x18, 0xF7, 0x02, 0x7B, 0xCF, 0xBC, 0xF8, 0x44, 0x10, 0x58, 0x38, 0x40,\n0xEF, 0xDE, 0x02, 0xB5, 0x0A, 0x64, 0x0C, 0x83, 0x3E, 0xFF, 0xAD, 0x34, 0xCD, 0x7F, 0x1B, 0x00,\n0xB4, 0x2D, 0x21, 0x92, 0x8E, 0x13, 0x8B, 0x57, 0xC7, 0x52, 0x0D, 0xA0, 0xB4, 0x4A, 0xDB, 0x9A,\n0x0B, 0x5E, 0x74, 0xE5, 0xFC, 0xF3, 0x26, 0x91, 0xB5, 0x12, 0x7F, 0xE8, 0x1C, 0x88, 0x70, 0xE0,\n0x84, 0x67, 0xC4, 0x80, 0x81, 0xA3, 0x22, 0x94, 0x6C, 0x03, 0xEA, 0xC0, 0xE1, 0x40, 0x42, 0xED,\n0xA3, 0xFF, 0x43, 0x48, 0x9F, 0x80, 0x7B, 0x53, 0x30, 0xF4, 0x8E, 0xE1, 0x37, 0x5F, 0xA2, 0xCA,\n0x03, 0xB2, 0xB1, 0xA6, 0x9A, 0x04, 0x2F, 0xBA, 0xD2, 0xFC, 0xEF, 0xD3, 0x65, 0x4F, 0xCA, 0xBF,\n0x46, 0x3C, 0x15, 0x0F, 0xA8, 0x1B, 0x40, 0x9E, 0xA8, 0xDD, 0xD3, 0x30, 0xC7, 0x47, 0x37, 0xC1,\n0xCF, 0x9E, 0x31, 0x02, 0x1E, 0xDD, 0x05, 0xE0, 0xC1, 0xC1, 0x6D, 0x68, 0x2A, 0x3B, 0xE6, 0xFA,\n0x42, 0x9B, 0x1F, 0x6D, 0x74, 0xDB, 0x09, 0x7D, 0x5D, 0xB3, 0xBD, 0xBA, 0x3D, 0xBE, 0x7D, 0x75,\n0xFC, 0xEA, 0xD5, 0x07, 0xAF, 0x44, 0x1F, 0x1C, 0xDF, 0x1E, 0xEB, 0x89, 0x3C, 0x24, 0x89, 0x61,\n0x43, 0xB9, 0x22, 0x47, 0x79, 0xCD, 0x2B, 0x7D, 0xD9, 0xB1, 0x6B, 0x1A, 0x7F, 0x30, 0x9F, 0x7C,\n0xC0, 0x25, 0x8E, 0xA6, 0x0F, 0xF4, 0xE1, 0xCD, 0xC6, 0xB3, 0x18, 0xBF, 0x7B, 0xBC, 0x75, 0xFC,\n0xEE, 0xD6, 0xF1, 0x96, 0xF4, 0xEF, 0xEA, 0x51, 0xCF, 0xC7, 0x6E, 0x7A, 0x5E, 0x5B, 0x5F, 0xEF,\n0xB5, 0x5F, 0x76, 0xF4, 0x50, 0xBC, 0x37, 0xC4, 0x46, 0x24, 0x9F, 0xA8, 0x8E, 0x5E, 0xBC, 0x78,\n0x71, 0x18, 0x4A, 0xF5, 0xD3, 0xA2, 0x85, 0x8B, 0xE7, 0x8B, 0xB3, 0x97, 0xCF, 0x5F, 0xD6, 0x8F,\n0xB3, 0xE7, 0x8B, 0x47, 0x68, 0xC7, 0xC2, 0x9B, 0x04, 0x6D, 0xBC, 0xFC, 0xDD, 0x5E, 0x5B, 0x57,\n0x97, 0x96, 0x56, 0xB5, 0x87, 0xDF, 0x08, 0x95, 0x13, 0x2E, 0x89, 0xDE, 0xF4, 0x75, 0xD3, 0x97,\n0x90, 0xAD, 0x23, 0x7D, 0x99, 0xD9, 0xD5, 0x5E, 0xDB, 0x6B, 0xEB, 0x3B, 0xDE, 0xCA, 0xAA, 0x01,\n0xC0, 0x52, 0xF2, 0x77, 0xDB, 0xD3, 0xF3, 0x8B, 0xEE, 0xA7, 0xEA, 0xE9, 0xF6, 0xE1, 0x8B, 0x17,\n0x4F, 0x9A, 0x32, 0xFE, 0x01, 0xC0, 0x57, 0x08, 0x1D, 0x6C, 0x4C, 0xAF, 0x1E, 0x23, 0x23, 0x9E,\n0x35, 0xED, 0x3C, 0xFC, 0xA2, 0x3F, 0xEB, 0x58, 0x43, 0x5C, 0x8A, 0x4F, 0x39, 0x60, 0x8E, 0xF5,\n0xE1, 0xCD, 0xC6, 0x26, 0xC6, 0x5C, 0xE0, 0x2C, 0xA5, 0xD5, 0x46, 0xF4, 0xE1, 0x7B, 0x1F, 0x1E,\n0x65, 0x31, 0x02, 0xF0, 0xC3, 0xBE, 0x8E, 0xFA, 0xE2, 0x23, 0x55, 0x11, 0x70, 0x77, 0x7F, 0xB9,\n0xDD, 0x92, 0xDC, 0x1C, 0xF0, 0xB3, 0xCF, 0x9E, 0x77, 0xE3, 0x11, 0xFC, 0x6B, 0xEA, 0xF9, 0xCE,\n0xCE, 0xDE, 0x2F, 0x6D, 0x00, 0x9E, 0xFF, 0xDA, 0xD2, 0xF9, 0xAF, 0x3F, 0x5F, 0x3E, 0x02, 0x80,\n0xBF, 0x77, 0x75, 0xF3, 0xFA, 0x4D, 0x57, 0x97, 0x97, 0xBF, 0x9E, 0x37, 0xE3, 0x4A, 0xFF, 0xFB,\n0x7F, 0x69, 0xB5, 0x4F, 0x77, 0xDA, 0x5A, 0xB4, 0xF5, 0x7C, 0xA7, 0xFB, 0xF7, 0xFF, 0xD9, 0xD9,\n0x76, 0x5B, 0x7D, 0x00, 0xBE, 0x68, 0x00, 0xF0, 0x60, 0x93, 0x7A, 0x1C, 0x00, 0x8F, 0xD3, 0xA7,\n0x78, 0x01, 0x98, 0xEB, 0x68, 0xAB, 0x1F, 0x85, 0x36, 0x4F, 0xC0, 0xA3, 0x6E, 0x6C, 0x00, 0x80,\n0xF2, 0xD2, 0x17, 0x2D, 0x0B, 0xA8, 0x5B, 0xE5, 0x76, 0xB7, 0x5B, 0x04, 0xDC, 0x5F, 0x5E, 0x5C,\n0x9C, 0xED, 0xF4, 0x3E, 0xFF, 0x3B, 0x12, 0x8B, 0x35, 0x23, 0x70, 0xB1, 0xB3, 0xF7, 0xE9, 0xA7,\n0x4D, 0xFC, 0xFD, 0x72, 0x75, 0x75, 0x75, 0x7E, 0x29, 0xC8, 0x10, 0xB6, 0xD8, 0x51, 0x38, 0xA7,\n0x9D, 0x8D, 0x69, 0xF6, 0x0A, 0x51, 0x93, 0x54, 0xAF, 0x5F, 0xBF, 0xEE, 0x12, 0x50, 0xB2, 0x20,\n0xAF, 0xBB, 0xFC, 0x13, 0xD5, 0xE8, 0xB3, 0xFF, 0x96, 0x2B, 0xD1, 0x5E, 0x4B, 0x1F, 0x7D, 0xF7,\n0xE9, 0xA7, 0xEB, 0xC3, 0x1F, 0xFC, 0x6B, 0x12, 0x70, 0xE7, 0xB3, 0xB3, 0x8B, 0x8B, 0xDE, 0xEF,\n0xD5, 0xE5, 0xF6, 0xE1, 0x33, 0xD9, 0xEC, 0xDB, 0xE4, 0x5F, 0x0D, 0xC0, 0x83, 0xCD, 0xEA, 0x51,\n0x1E, 0x30, 0x8D, 0x7B, 0x83, 0xC7, 0x21, 0xF0, 0xB1, 0x04, 0x3C, 0x6E, 0x20, 0xB0, 0x17, 0xDA,\n0xFA, 0x3A, 0xEA, 0x47, 0x1F, 0x82, 0x7D, 0x00, 0x4A, 0x16, 0xA4, 0xC5, 0xBF, 0x4F, 0x0E, 0x77,\n0x0F, 0x3B, 0x1E, 0x50, 0x72, 0x20, 0x67, 0x17, 0x4B, 0x25, 0x60, 0xAD, 0x9D, 0x47, 0x12, 0xB0,\n0xC7, 0xBF, 0x4F, 0x3F, 0xFD, 0xAE, 0x4B, 0xC0, 0x2B, 0xD5, 0x4C, 0xBB, 0x4B, 0xED, 0x64, 0xA8,\n0x9D, 0xF4, 0x4A, 0xC2, 0x4B, 0x6F, 0xC2, 0x40, 0x53, 0x93, 0x7F, 0x37, 0x92, 0xDB, 0x6D, 0xFA,\n0x3F, 0x7D, 0x71, 0x8F, 0x7F, 0x26, 0xFD, 0xE9, 0x8A, 0x26, 0xFC, 0x53, 0xF5, 0x3C, 0xB0, 0xE0,\n0x6F, 0x6F, 0x03, 0xFE, 0x4F, 0xA3, 0xF5, 0xF7, 0x2F, 0xFC, 0xD3, 0x2C, 0xF0, 0x76, 0xAD, 0xA7,\n0xF2, 0xF9, 0x3B, 0x84, 0x80, 0x85, 0xFF, 0xBB, 0xB7, 0x06, 0x58, 0xF3, 0xEF, 0xBF, 0x21, 0x60,\n0x6D, 0x0E, 0x61, 0xE4, 0x5B, 0xE1, 0x01, 0x3B, 0x61, 0x6D, 0xAD, 0x00, 0x24, 0x9A, 0xF4, 0xEB,\n0x02, 0x70, 0x7A, 0x71, 0x8B, 0x7F, 0x87, 0xF2, 0xE9, 0xDB, 0x3D, 0x7C, 0xDA, 0xE0, 0xDF, 0x85,\n0x7E, 0xA8, 0x97, 0x67, 0xCF, 0x77, 0xFE, 0x0B, 0x02, 0xEA, 0x2B, 0x3E, 0xD5, 0xAF, 0xF5, 0xA7,\n0x3D, 0xFE, 0x39, 0x01, 0x95, 0x2C, 0x46, 0x3A, 0x6D, 0x1A, 0x76, 0x81, 0xB8, 0x9C, 0x55, 0x73,\n0xEA, 0x8D, 0x78, 0xBA, 0xAF, 0x25, 0x6E, 0x3A, 0xFC, 0x93, 0xD7, 0x69, 0xEB, 0x03, 0x50, 0xFD,\n0x69, 0xD2, 0x34, 0xEC, 0xA7, 0xBE, 0x12, 0x75, 0x09, 0x28, 0xAB, 0x05, 0x12, 0x6B, 0xE6, 0x1F,\n0x00, 0xAC, 0xF9, 0xA7, 0xAA, 0x09, 0x28, 0x9F, 0xBB, 0x4F, 0x76, 0x9F, 0x1D, 0x36, 0x09, 0x38,\n0x7F, 0xB0, 0xD1, 0x3B, 0x1D, 0xFE, 0xBD, 0x85, 0x16, 0x30, 0x3C, 0xB3, 0x09, 0x02, 0xE2, 0xFF,\n0x6A, 0xF5, 0xF9, 0xF7, 0x5F, 0x5A, 0xC0, 0x3E, 0x01, 0x3F, 0x6C, 0x12, 0xD0, 0xF8, 0xF7, 0x4C,\n0xA6, 0x20, 0x9F, 0x54, 0xB3, 0xE0, 0xF7, 0x95, 0x7F, 0xAA, 0xA5, 0x7E, 0xBE, 0x6B, 0xFC, 0x6D,\n0x60, 0x12, 0xBC, 0x67, 0xB1, 0xD3, 0xE1, 0x9F, 0x4B, 0x70, 0xE7, 0x36, 0x50, 0x18, 0xA2, 0x27,\n0xEA, 0xF9, 0xEC, 0x92, 0x8E, 0xF5, 0xFA, 0xAC, 0x9E, 0x01, 0x34, 0xAA, 0xDD, 0xB4, 0xF9, 0x77,\n0xD3, 0xE1, 0x9F, 0x4B, 0xD9, 0x2C, 0x8F, 0xD0, 0xFF, 0x3C, 0xFD, 0xA8, 0x32, 0xBC, 0x9A, 0xD5,\n0xF0, 0x7F, 0x3B, 0x62, 0x96, 0xA5, 0xAD, 0xD9, 0xFF, 0xED, 0xB4, 0x08, 0x68, 0xF3, 0x5F, 0xD3,\n0x59, 0x83, 0x80, 0xCA, 0xBF, 0xDD, 0x1E, 0x01, 0xE3, 0x2C, 0xE8, 0x9D, 0x16, 0xFF, 0xDE, 0x3E,\n0x0F, 0xE8, 0x0E, 0x70, 0xA3, 0x04, 0x24, 0x67, 0xF2, 0x6F, 0x13, 0x10, 0xAD, 0xD3, 0x03, 0x2A,\n0x24, 0x7B, 0xFC, 0x83, 0x96, 0x25, 0xFF, 0x3E, 0x11, 0xFE, 0x49, 0xEC, 0x0A, 0x01, 0x0B, 0x2D,\n0x65, 0x02, 0x3C, 0xA9, 0xFC, 0x06, 0xEC, 0x6C, 0x84, 0x80, 0x7B, 0x3A, 0xA9, 0xD3, 0xD6, 0xE7,\n0x9F, 0xEC, 0x9E, 0xC5, 0x3F, 0x09, 0x06, 0x71, 0x80, 0xCE, 0x40, 0x54, 0x92, 0x6A, 0xC6, 0x9F,\n0x74, 0x25, 0x00, 0x0D, 0x7F, 0xAA, 0x9B, 0x12, 0x7F, 0x68, 0xFA, 0xF9, 0x44, 0xF4, 0xFC, 0xC4,\n0xFA, 0x2C, 0xFF, 0x59, 0x1D, 0xFF, 0x27, 0xF8, 0xC3, 0x03, 0xAE, 0x85, 0x7F, 0xBA, 0xB4, 0x67,\n0x51, 0xFF, 0xFD, 0x5F, 0xCC, 0x3A, 0x5B, 0x56, 0xFE, 0xEF, 0x7D, 0xE3, 0x5F, 0xCB, 0x03, 0xBE,\n0x38, 0x0A, 0x04, 0x7C, 0xA7, 0xC7, 0xBF, 0xB7, 0xCE, 0x03, 0xAE, 0xB8, 0xFE, 0xB6, 0xCF, 0x82,\n0x69, 0x1B, 0x5B, 0x07, 0x6C, 0xC8, 0x5E, 0x54, 0xF3, 0xCF, 0x55, 0xA4, 0x82, 0x5F, 0x98, 0xFF,\n0x9B, 0x09, 0xF8, 0xFE, 0xC3, 0xF3, 0xDF, 0xA5, 0xE3, 0xAF, 0x26, 0xE0, 0xCE, 0x26, 0x08, 0xE8,\n0xF0, 0x93, 0xF8, 0xB4, 0xE6, 0x1F, 0xBA, 0x9C, 0x11, 0x08, 0xFB, 0x08, 0xF5, 0x7F, 0xA8, 0xE6,\n0x9F, 0xCA, 0xD8, 0x56, 0xF0, 0x8F, 0x57, 0x4A, 0xAB, 0x01, 0x08, 0x02, 0x15, 0xD5, 0xC1, 0x02,\n0x4E, 0xEC, 0xC6, 0xFF, 0x35, 0x08, 0x68, 0xFE, 0xCF, 0x7E, 0x61, 0xEC, 0xAD, 0x37, 0x01, 0xD2,\n0x21, 0xE0, 0x67, 0xF0, 0xAF, 0x24, 0xE0, 0x72, 0xE6, 0x9F, 0x79, 0xC0, 0x62, 0xC9, 0xFA, 0xEE,\n0x24, 0x09, 0x00, 0xB6, 0xF8, 0xF7, 0xD6, 0x59, 0xC0, 0x63, 0xEB, 0xDF, 0x32, 0x02, 0xF6, 0x01,\n0xF8, 0x5F, 0x10, 0xF0, 0xC8, 0x9A, 0x75, 0x25, 0xFF, 0xD0, 0xC3, 0x1E, 0xF0, 0xF4, 0xF0, 0x70,\n0xFA, 0xF4, 0x95, 0x04, 0xDC, 0x57, 0xFF, 0x87, 0xC4, 0x0B, 0xE4, 0xDA, 0xD9, 0x08, 0x01, 0xED,\n0xDB, 0x6C, 0x21, 0xEB, 0x80, 0x35, 0xFF, 0x90, 0x4D, 0x78, 0x1D, 0x22, 0xD3, 0x8C, 0x78, 0xBA,\n0x24, 0x3D, 0x2A, 0x09, 0xE8, 0x40, 0x93, 0x47, 0xE5, 0x01, 0x79, 0xA5, 0xAA, 0xCF, 0x3F, 0x52,\n0xC1, 0x46, 0x6A, 0xC6, 0x4A, 0x42, 0xF8, 0x57, 0x13, 0x50, 0xF1, 0x67, 0xBF, 0x2C, 0x94, 0x81,\n0xEB, 0xE4, 0x1F, 0x51, 0xFA, 0x3F, 0x08, 0xB8, 0x5F, 0xF3, 0xCF, 0x3D, 0xE0, 0x8B, 0xC2, 0xFF,\n0x21, 0x00, 0xD8, 0xE3, 0xDF, 0x5B, 0xE6, 0x01, 0xB9, 0xBA, 0xF1, 0x75, 0xC0, 0x3E, 0x03, 0x5B,\n0xF8, 0xFB, 0xCF, 0x52, 0xC1, 0xE0, 0x4F, 0x0F, 0xEF, 0x35, 0x00, 0x88, 0x07, 0xCC, 0xFD, 0x9F,\n0x99, 0xBF, 0xE9, 0x21, 0x04, 0x5C, 0xE6, 0xFC, 0x03, 0x7F, 0x95, 0x07, 0xDC, 0xD9, 0x08, 0x01,\n0x8D, 0x7C, 0x06, 0x3F, 0x1B, 0x95, 0xFC, 0x43, 0xB3, 0x01, 0x84, 0x2A, 0x1E, 0xEE, 0xFF, 0x50,\n0xE5, 0xFF, 0xBE, 0xE6, 0x51, 0x14, 0xC0, 0xF0, 0xCA, 0x9B, 0xD7, 0x25, 0xFF, 0x10, 0x3F, 0xA0,\n0x76, 0x0E, 0x44, 0x1D, 0xC0, 0xBF, 0x9A, 0x80, 0x77, 0x7E, 0x59, 0xE8, 0x7B, 0xB5, 0x4E, 0xFE,\n0x11, 0xB9, 0x01, 0x74, 0xFE, 0xE1, 0x01, 0xF7, 0x0B, 0xFE, 0xE1, 0x01, 0xFF, 0x64, 0xEF, 0x8C,\n0x75, 0x9E, 0x86, 0xA1, 0x28, 0x0C, 0x08, 0x16, 0x24, 0x18, 0x2A, 0x91, 0x96, 0x8D, 0x05, 0xF5,\n0x0D, 0x10, 0x13, 0x12, 0x2B, 0x03, 0xD9, 0x58, 0x5A, 0xB1, 0xC0, 0xF8, 0xF3, 0x02, 0xEC, 0x88,\n0x19, 0x31, 0x31, 0xF7, 0x45, 0xC9, 0xBD, 0x89, 0xF9, 0x6A, 0x1C, 0xF7, 0xDC, 0x40, 0x42, 0x03,\n0xE2, 0xD8, 0x71, 0xD2, 0x50, 0x10, 0x50, 0xE7, 0xEB, 0xB1, 0xEF, 0xB5, 0xFF, 0x56, 0xF0, 0x0F,\n0x4D, 0x04, 0xE0, 0xCA, 0x3C, 0xA0, 0x21, 0xF0, 0xCF, 0x10, 0xD0, 0xF0, 0xF7, 0x97, 0x10, 0xF0,\n0xD5, 0x1D, 0x81, 0x3F, 0xE6, 0xF6, 0xB4, 0x01, 0xD4, 0x04, 0x6C, 0x0F, 0x8F, 0x7A, 0xFF, 0xC7,\n0x01, 0x01, 0x8B, 0x04, 0xC0, 0x63, 0xDE, 0xA7, 0xEB, 0x1E, 0xB0, 0x59, 0x84, 0x80, 0xBB, 0x86,\n0xC7, 0xDA, 0x27, 0xF7, 0x25, 0xFF, 0x90, 0xE3, 0xCF, 0x4B, 0x1F, 0x08, 0x81, 0x88, 0x48, 0x11,\n0x10, 0xF2, 0x0D, 0x17, 0xA7, 0x3A, 0xFF, 0xB2, 0x77, 0x9A, 0x14, 0xFF, 0x90, 0x19, 0xD4, 0x01,\n0xD6, 0x1F, 0xFB, 0xBF, 0x65, 0x3A, 0xCA, 0x7F, 0x96, 0x88, 0xFF, 0x9E, 0x95, 0x45, 0xF8, 0xD7,\n0x54, 0xF9, 0x47, 0x57, 0xC1, 0x03, 0x56, 0xF8, 0xF7, 0x12, 0x00, 0xDA, 0x61, 0x04, 0x14, 0xFC,\n0x43, 0x00, 0x30, 0xC2, 0xBF, 0x2B, 0x12, 0xB0, 0x9A, 0x07, 0xF8, 0xF7, 0xCC, 0x03, 0x52, 0xAF,\n0x11, 0x0B, 0x06, 0x7F, 0xA4, 0x4D, 0xD7, 0x11, 0x58, 0xFE, 0x11, 0x6D, 0x25, 0x01, 0xC6, 0xFC,\n0x5F, 0x06, 0x40, 0x08, 0x88, 0x48, 0x80, 0xC9, 0xB4, 0x3F, 0x42, 0x40, 0xC1, 0xBF, 0xC7, 0x9B,\n0xDF, 0x27, 0x60, 0x87, 0x3C, 0xC7, 0xDF, 0x10, 0xDB, 0xB4, 0x20, 0x67, 0x98, 0x7F, 0x78, 0x40,\n0x2F, 0x9D, 0xFA, 0x4B, 0xF8, 0xA7, 0x09, 0xF8, 0x19, 0xAA, 0xD9, 0xE1, 0x27, 0xC1, 0xBF, 0xC4,\n0x40, 0xB3, 0x8E, 0x92, 0x7F, 0x08, 0x7F, 0x0A, 0xFE, 0x88, 0x7F, 0x44, 0x08, 0xE8, 0xDF, 0x15,\n0x34, 0x1E, 0x0B, 0x99, 0x21, 0x00, 0x5C, 0x16, 0xCD, 0xBF, 0x14, 0x0A, 0x1E, 0xF7, 0x80, 0xFB,\n0xE7, 0x89, 0x7F, 0x1C, 0x35, 0x02, 0xFA, 0x26, 0xD0, 0x79, 0xBD, 0x0F, 0x00, 0x43, 0xFC, 0x5B,\n0x95, 0x07, 0xFC, 0xBB, 0x08, 0xF8, 0x27, 0x11, 0xA8, 0x1D, 0xA0, 0x9F, 0x45, 0x02, 0x20, 0xD5,\n0x80, 0xD8, 0x56, 0x12, 0x00, 0x9F, 0x96, 0x04, 0x7C, 0xB8, 0x1F, 0xE3, 0x1F, 0x7D, 0x1A, 0x41,\n0xC0, 0x82, 0x7F, 0xF3, 0x7B, 0xC0, 0x67, 0xBB, 0x67, 0x46, 0x3E, 0x7F, 0x98, 0x77, 0x83, 0x0F,\n0xD4, 0x00, 0x84, 0x80, 0x6E, 0xAD, 0x86, 0x19, 0x35, 0x6F, 0x19, 0xFF, 0x46, 0x08, 0x88, 0xF1,\n0x3B, 0x0B, 0x6E, 0x9C, 0xAA, 0xFC, 0x4B, 0xEF, 0xE2, 0xF7, 0x48, 0xFE, 0x21, 0x02, 0xD4, 0xB0,\n0xF0, 0xD3, 0x97, 0x51, 0x55, 0xC6, 0xBF, 0x69, 0xF2, 0x6F, 0xC0, 0x9F, 0xB5, 0x8B, 0xF0, 0xAF,\n0x19, 0x0D, 0x80, 0x58, 0x5F, 0x29, 0x09, 0xF8, 0x7C, 0x2C, 0x02, 0xDC, 0xF1, 0xEF, 0xA7, 0x2E,\n0x98, 0x42, 0xC1, 0x25, 0xFF, 0x4A, 0x03, 0xF8, 0x37, 0x01, 0x50, 0x38, 0x40, 0xCA, 0x22, 0x2B,\n0x42, 0x7E, 0x73, 0x1A, 0xF0, 0xCF, 0x12, 0xB0, 0x1E, 0xFE, 0x80, 0x6D, 0xF5, 0x69, 0x40, 0x30,\n0x89, 0x2C, 0x1D, 0xF0, 0x30, 0xC6, 0x3F, 0xFA, 0x1D, 0xD3, 0x80, 0x2F, 0x85, 0xFF, 0x43, 0xA3,\n0x4B, 0x42, 0x9A, 0xDF, 0x26, 0xE0, 0xA5, 0x09, 0x40, 0x9E, 0x6B, 0x67, 0xA1, 0xC4, 0x1F, 0xFA,\n0x4A, 0x28, 0x38, 0xA5, 0xC4, 0x80, 0x1C, 0x49, 0xC0, 0x82, 0x67, 0x7D, 0x7B, 0xAA, 0xFA, 0xBF,\n0xBC, 0x31, 0x0F, 0x28, 0xF9, 0x87, 0x7A, 0xEF, 0xC7, 0x48, 0xDD, 0x16, 0x80, 0x14, 0xAA, 0x26,\n0x44, 0xEF, 0x98, 0xFC, 0xF3, 0xD2, 0x1B, 0xE6, 0xD7, 0x8B, 0xF0, 0xAF, 0xA9, 0x27, 0x40, 0x23,\n0xD2, 0x01, 0x4B, 0xFE, 0xD1, 0xF9, 0x38, 0x20, 0x20, 0x6A, 0x53, 0xD7, 0xA7, 0xD8, 0x1D, 0x00,\n0x18, 0xE2, 0xDF, 0x9A, 0x2C, 0xA0, 0x20, 0xE0, 0xCC, 0x0E, 0xF0, 0x5F, 0xB0, 0x80, 0x20, 0x70,\n0x18, 0x01, 0x8F, 0x12, 0x90, 0x81, 0x32, 0xC5, 0xDE, 0x0B, 0x01, 0xE1, 0x9F, 0x03, 0x50, 0x7B,\n0x40, 0xF8, 0x57, 0x12, 0xB0, 0x89, 0x12, 0xF0, 0x37, 0x2C, 0xE0, 0xC6, 0x33, 0xDA, 0xAC, 0x82,\n0x3F, 0x7F, 0xDD, 0xEC, 0xE2, 0x00, 0x24, 0xA0, 0xC0, 0xFC, 0x5F, 0x98, 0x80, 0x3E, 0x8A, 0xCD,\n0xA1, 0xC6, 0x92, 0x90, 0x92, 0x7F, 0x05, 0x02, 0xBD, 0x46, 0x00, 0x08, 0x01, 0x89, 0x7D, 0x10,\n0xFF, 0x08, 0x11, 0x70, 0xF7, 0x8C, 0xE9, 0x02, 0x3B, 0x75, 0x2F, 0xDC, 0x34, 0xFF, 0x1E, 0xFF,\n0x04, 0x00, 0xF9, 0xF0, 0x53, 0x02, 0x74, 0x29, 0x08, 0xC8, 0x02, 0x90, 0x92, 0x7E, 0x95, 0x74,\n0xC0, 0xD4, 0xE9, 0x8B, 0x07, 0x02, 0x00, 0xC6, 0x98, 0xB5, 0x1A, 0x13, 0xC8, 0xEB, 0xDF, 0xF2,\n0x80, 0x0B, 0x58, 0x40, 0x41, 0xBF, 0xAB, 0x4C, 0x03, 0xBE, 0xCA, 0xF0, 0x47, 0x1B, 0x72, 0x80,\n0x10, 0x10, 0xB5, 0x6D, 0x85, 0x7F, 0x9E, 0x10, 0xBD, 0x97, 0xFC, 0x73, 0xED, 0xF7, 0xE5, 0x13,\n0x50, 0x2D, 0xBF, 0xE3, 0x01, 0x19, 0xF8, 0x36, 0x29, 0x0C, 0xEC, 0xB7, 0x9A, 0x28, 0xFF, 0x48,\n0x86, 0xC1, 0x59, 0xD5, 0x35, 0x3A, 0x01, 0x88, 0xFB, 0xA3, 0x19, 0x21, 0x60, 0x1A, 0xFE, 0x16,\n0xCD, 0x49, 0xF3, 0x0F, 0xE5, 0x23, 0xE0, 0x8F, 0x00, 0xB0, 0x50, 0xE9, 0xFF, 0x86, 0xFF, 0x1D,\n0xAF, 0x0E, 0xC3, 0x5A, 0x20, 0x64, 0x13, 0x57, 0x13, 0x05, 0x20, 0xFC, 0xD3, 0x1E, 0x70, 0x5B,\n0xF8, 0x3F, 0x92, 0x61, 0xDA, 0x82, 0x7F, 0x58, 0x00, 0xAB, 0xBC, 0xB8, 0x35, 0x8D, 0x7F, 0x6B,\n0x31, 0x81, 0xF0, 0x6E, 0x69, 0x0F, 0x48, 0x59, 0x08, 0x81, 0xCB, 0x87, 0x82, 0xB3, 0x8F, 0x1F,\n0x1A, 0x96, 0xFC, 0x1B, 0xEF, 0x26, 0xD6, 0x42, 0x40, 0xC1, 0xBF, 0x47, 0x10, 0x90, 0x04, 0xE8,\n0x6A, 0xAF, 0xDE, 0x77, 0x5D, 0x3E, 0xC6, 0xBF, 0xC7, 0xF1, 0xE7, 0xED, 0x26, 0x27, 0x20, 0x13,\n0x5A, 0xE7, 0x17, 0x3B, 0xBF, 0x6A, 0x34, 0xFF, 0x90, 0x27, 0xFF, 0x31, 0x0E, 0x8E, 0x13, 0xF0,\n0x04, 0xC6, 0xB2, 0x06, 0x02, 0xE2, 0xFF, 0xC6, 0xDE, 0x07, 0x01, 0x35, 0xFF, 0x08, 0x05, 0xA7,\n0x83, 0xF9, 0xBF, 0x00, 0x01, 0xD3, 0x97, 0x84, 0xFD, 0x4F, 0x79, 0x25, 0x15, 0xE6, 0xD9, 0xAC,\n0x01, 0x60, 0x0A, 0x22, 0x01, 0x10, 0x55, 0x13, 0xA2, 0xF7, 0xF8, 0x3F, 0xE5, 0x01, 0x3D, 0x00,\n0x9C, 0x3F, 0x03, 0x20, 0xF0, 0xD6, 0x44, 0xFE, 0xAD, 0xC4, 0x02, 0x5E, 0x81, 0x80, 0xB8, 0xC0,\n0x89, 0xFC, 0x5B, 0x89, 0x07, 0x1C, 0x4E, 0xF9, 0x58, 0x60, 0xD4, 0xFD, 0xD1, 0x4B, 0xF8, 0x1D,\n0x46, 0x40, 0x04, 0xFF, 0xC6, 0x3D, 0xE0, 0x7E, 0x9F, 0x2D, 0x00, 0xA9, 0x6A, 0x9F, 0xA7, 0x03,\n0x36, 0x97, 0x08, 0xF8, 0x8B, 0x81, 0x90, 0x4D, 0x8F, 0x3A, 0x3F, 0x06, 0x43, 0xB3, 0xF3, 0xD6,\n0x5F, 0x37, 0x92, 0x7F, 0xE8, 0x5D, 0xB1, 0x00, 0xA4, 0xAA, 0x4B, 0x09, 0x30, 0x34, 0xDE, 0xE6,\n0x00, 0xAC, 0x1A, 0x40, 0x3F, 0x49, 0xFE, 0xA1, 0x2F, 0xFC, 0x4D, 0xF1, 0x7F, 0x9A, 0x80, 0x8D,\n0xCF, 0x8D, 0x62, 0xFB, 0x92, 0x63, 0xF6, 0xF3, 0x22, 0xFC, 0x6B, 0x2A, 0x0B, 0x40, 0x14, 0x01,\n0x49, 0x00, 0x1C, 0x23, 0xE0, 0x21, 0xF7, 0x7F, 0x45, 0x26, 0x04, 0x37, 0x6E, 0x4D, 0xE4, 0xDF,\n0x3A, 0x2C, 0xE0, 0x9B, 0x54, 0x56, 0x1A, 0x0A, 0x56, 0xFC, 0x5B, 0x1E, 0x81, 0x08, 0x33, 0x97,\n0xC3, 0xAD, 0xF4, 0x80, 0x39, 0xF1, 0xB2, 0xAF, 0xCB, 0x9C, 0x80, 0xED, 0x61, 0x9C, 0x7F, 0x2C,\n0x09, 0xD9, 0x6B, 0xFF, 0x57, 0x2E, 0x09, 0x69, 0x44, 0xF9, 0x05, 0x0F, 0xD8, 0x5D, 0x3C, 0x73,\n0xCE, 0x0D, 0x0C, 0x1C, 0x9E, 0xF0, 0x34, 0x11, 0x68, 0xF7, 0x34, 0xFF, 0x08, 0x05, 0x27, 0xFB,\n0xF7, 0xF1, 0x93, 0x50, 0x36, 0xFE, 0xAD, 0x9A, 0x3A, 0x3F, 0xE5, 0x0B, 0x40, 0x2E, 0xBE, 0x57,\n0xF3, 0x0F, 0x11, 0xB4, 0xE1, 0x1F, 0xA0, 0x08, 0x88, 0xFB, 0x7B, 0xDD, 0x27, 0xC0, 0x38, 0xFD,\n0x28, 0x8B, 0xF0, 0xAF, 0xD1, 0xFE, 0x8F, 0x74, 0x40, 0x12, 0x00, 0xF1, 0x7F, 0xE3, 0x04, 0x6C,\n0x73, 0xFF, 0x87, 0x03, 0x74, 0x71, 0xE3, 0xD6, 0x64, 0xFE, 0xAD, 0xC4, 0x03, 0xCE, 0x45, 0xC0,\n0xDB, 0xBF, 0x30, 0x11, 0xF8, 0x3E, 0x0E, 0x40, 0x55, 0x17, 0xF5, 0x80, 0xE0, 0x8F, 0x6B, 0x18,\n0x37, 0x34, 0xF0, 0xAF, 0x70, 0x80, 0xB4, 0x0E, 0xCB, 0xF6, 0x20, 0xFD, 0x9F, 0x1F, 0x10, 0x90,\n0x05, 0x20, 0xA8, 0x4C, 0x07, 0x84, 0x7F, 0xB3, 0x7B, 0xC0, 0x8D, 0x63, 0x8F, 0xE2, 0x11, 0xCD,\n0xDD, 0x39, 0x06, 0x1B, 0xF8, 0x27, 0x95, 0xF8, 0x87, 0xFF, 0xD3, 0x04, 0x84, 0x63, 0x45, 0x33,\n0x9C, 0xCE, 0xFC, 0xDF, 0xE5, 0xF7, 0x9E, 0x3E, 0x47, 0xF8, 0xC7, 0x28, 0x38, 0xF1, 0x4F, 0x29,\n0xF3, 0x7F, 0xCC, 0x97, 0x5A, 0x43, 0xCC, 0xC8, 0xEB, 0x22, 0xFC, 0x6B, 0xAA, 0x09, 0x80, 0x88,\n0x25, 0x21, 0x2C, 0x00, 0x91, 0x04, 0x84, 0x7F, 0x79, 0xA7, 0xCE, 0x1D, 0xE0, 0x64, 0xFE, 0xAD,\n0xC0, 0x03, 0x6A, 0x04, 0xAE, 0xC7, 0x02, 0x52, 0xAF, 0x32, 0x0F, 0xC8, 0xA7, 0x0E, 0xC9, 0xB8,\n0x6F, 0x0D, 0x00, 0x2C, 0xE8, 0x68, 0x2D, 0xB7, 0x87, 0x25, 0x21, 0x2D, 0x09, 0xD0, 0xD5, 0xE3,\n0x91, 0x13, 0x90, 0x05, 0xC0, 0x75, 0xB1, 0x3B, 0x60, 0xA3, 0xCB, 0x54, 0x02, 0x76, 0x8D, 0x93,\n0x8E, 0xCC, 0x97, 0x64, 0x6F, 0x9C, 0x82, 0xFD, 0xE5, 0x2E, 0xC6, 0x3F, 0x3C, 0xA0, 0xCD, 0xFF,\n0x69, 0xB1, 0x01, 0x56, 0x85, 0x68, 0xEC, 0xF7, 0x72, 0x16, 0x00, 0x56, 0xEF, 0x85, 0x7F, 0x01,\n0x02, 0xB2, 0x00, 0x44, 0x88, 0x04, 0x18, 0xAB, 0xC9, 0xFE, 0xD9, 0x29, 0xC5, 0x8B, 0x86, 0x68,\n0xF0, 0x6E, 0x11, 0xFE, 0x35, 0x9A, 0x7F, 0xA4, 0x03, 0x0E, 0x0B, 0x40, 0xC8, 0xFF, 0xAB, 0x1C,\n0x89, 0x80, 0x6D, 0xEA, 0xD3, 0xE9, 0x9C, 0x3B, 0xC0, 0x15, 0x00, 0xF0, 0xEA, 0x1E, 0xF0, 0x41,\n0x1C, 0x82, 0xF8, 0x3F, 0x29, 0x4D, 0xBF, 0xE5, 0xE7, 0x01, 0x4B, 0xD8, 0x8D, 0x85, 0x45, 0x12,\n0xFF, 0x78, 0x07, 0x24, 0xE4, 0xDA, 0x9B, 0x36, 0x4B, 0x80, 0xA9, 0x1F, 0x8F, 0x6C, 0x87, 0x68,\n0x02, 0xC0, 0xD2, 0x03, 0xC2, 0xBF, 0x59, 0x3D, 0xE0, 0xA6, 0x71, 0xBF, 0xC7, 0x48, 0xCE, 0xCF,\n0x64, 0xB9, 0x25, 0x1A, 0xA6, 0x1D, 0xF0, 0xB5, 0x08, 0x00, 0x4B, 0xE1, 0xFF, 0x6A, 0x5C, 0xCB,\n0x03, 0x21, 0xA7, 0x0B, 0xF4, 0x63, 0x59, 0x30, 0xFC, 0x93, 0x82, 0x7F, 0x52, 0x89, 0x7F, 0x79,\n0x21, 0x64, 0x9E, 0xF2, 0x01, 0xCD, 0x03, 0x6E, 0xE6, 0xE3, 0x1F, 0x45, 0xF3, 0x8F, 0x25, 0x21,\n0x69, 0x01, 0x88, 0x22, 0xE0, 0x5D, 0xEF, 0xAD, 0x40, 0x8F, 0xBE, 0x9D, 0x3B, 0xC0, 0x17, 0x57,\n0xD7, 0xEC, 0xF6, 0x6F, 0xF9, 0x79, 0xC0, 0xF7, 0x21, 0x02, 0x5E, 0x19, 0x81, 0x65, 0x06, 0x0C,\n0xDF, 0x85, 0x34, 0xF8, 0xBF, 0x51, 0x07, 0xC8, 0xED, 0x61, 0x8F, 0xFC, 0x83, 0xE6, 0xDF, 0x53,\n0x23, 0xE0, 0xB0, 0x03, 0x7E, 0x40, 0x47, 0x9E, 0x84, 0x79, 0x3D, 0x20, 0xAC, 0x7B, 0xFD, 0x03,\n0x81, 0xF9, 0x78, 0xD8, 0x99, 0xB8, 0x83, 0x7F, 0x52, 0xF0, 0x4F, 0x8A, 0x04, 0xC0, 0x71, 0x9A,\n0x71, 0x3A, 0x11, 0xFF, 0xA8, 0x34, 0x5C, 0xC0, 0x3F, 0x25, 0xC6, 0xBF, 0x31, 0x02, 0xA6, 0x58,\n0x6F, 0x3A, 0x59, 0x71, 0xE8, 0xF9, 0xC9, 0xAA, 0xDD, 0x98, 0x9A, 0x00, 0x1D, 0x25, 0xA0, 0x2F,\n0x00, 0xD1, 0x3A, 0xF6, 0x09, 0xD0, 0x11, 0x00, 0x3E, 0x3D, 0x38, 0xFF, 0x60, 0x1E, 0x7D, 0xFB,\n0xDC, 0x01, 0xBE, 0x58, 0x81, 0xA6, 0xE3, 0xEF, 0x7A, 0xA3, 0xE0, 0xF7, 0x56, 0x23, 0x82, 0x70,\n0x57, 0x9A, 0x08, 0x1C, 0x19, 0xEE, 0x02, 0xC5, 0xEC, 0xCE, 0xE0, 0xFF, 0xEA, 0x51, 0x60, 0x46,\n0xCF, 0xC9, 0xFF, 0x05, 0x08, 0xC8, 0x06, 0x08, 0x4A, 0xC7, 0x38, 0x00, 0x27, 0x11, 0x30, 0x85,\n0x3F, 0xD2, 0xA4, 0x16, 0xE1, 0xE0, 0x64, 0x6D, 0xFA, 0xB0, 0x30, 0x03, 0x60, 0x2D, 0xF8, 0xA7,\n0x09, 0x88, 0xC9, 0x1B, 0x65, 0x1A, 0xED, 0x89, 0x04, 0x18, 0xD1, 0x9C, 0x3E, 0xC3, 0x3F, 0x29,\n0xF8, 0xA7, 0x64, 0x3F, 0x01, 0x8E, 0x18, 0x51, 0x5F, 0x3C, 0x44, 0xE4, 0x06, 0x9A, 0x41, 0xB0,\n0x5D, 0x2C, 0x60, 0x00, 0x49, 0x80, 0xD6, 0x1E, 0x10, 0xFF, 0x27, 0x8F, 0x43, 0x8B, 0xE5, 0xCB,\n0xFA, 0x36, 0x96, 0xF0, 0x3F, 0x00, 0x7F, 0x75, 0x1E, 0xF0, 0xFD, 0x5F, 0x62, 0x01, 0x0B, 0x04,\n0x16, 0xB3, 0x82, 0x5E, 0x5C, 0xF5, 0x28, 0x30, 0xBF, 0xC4, 0x0E, 0x58, 0xE2, 0xE8, 0x92, 0x61,\n0x18, 0xD5, 0x48, 0x02, 0x36, 0x0B, 0x58, 0x40, 0x72, 0xFF, 0xC8, 0x68, 0xE3, 0xE4, 0xB7, 0x86,\n0xA9, 0xFD, 0xDD, 0x97, 0x45, 0x00, 0x78, 0xF2, 0x69, 0x3D, 0xE1, 0xEB, 0xBC, 0x62, 0x00, 0x55,\n0x73, 0x9A, 0x13, 0x80, 0x88, 0xCD, 0x62, 0x8D, 0x79, 0x56, 0xF3, 0x99, 0x02, 0x6F, 0xDC, 0x0D,\n0x2E, 0xE1, 0xFF, 0x1A, 0xFC, 0x9F, 0x26, 0xE0, 0x3D, 0xFC, 0x9F, 0xF2, 0x80, 0xC0, 0x2E, 0x77,\n0x80, 0x7D, 0xF9, 0x2B, 0x1D, 0x60, 0x98, 0x7F, 0x8B, 0x02, 0xF0, 0xFD, 0xCC, 0x16, 0x70, 0x19,\n0x00, 0x96, 0x31, 0x5F, 0x3F, 0xD1, 0x72, 0x01, 0xF1, 0xB8, 0x2C, 0xF0, 0x67, 0x95, 0x08, 0xB0,\n0x3C, 0xB6, 0x8C, 0x80, 0xA5, 0x9E, 0x00, 0x40, 0x55, 0xA6, 0x38, 0xC0, 0x34, 0xD0, 0xED, 0xFD,\n0x0C, 0xD3, 0x5A, 0xFD, 0x6D, 0x03, 0xE3, 0x9F, 0x72, 0x80, 0xD5, 0xC6, 0x75, 0x3A, 0xE9, 0x19,\n0x40, 0x16, 0x05, 0x2F, 0x02, 0xC0, 0xC1, 0xF6, 0x35, 0x90, 0xB0, 0x2F, 0xC9, 0x15, 0xF6, 0x08,\n0x9C, 0x66, 0x00, 0x9B, 0xB0, 0xFF, 0xDB, 0x84, 0xF9, 0x77, 0xF3, 0x70, 0x2B, 0x7B, 0x1E, 0x9B,\n0x03, 0x7A, 0xA7, 0x1D, 0x79, 0x02, 0xD6, 0x35, 0x07, 0x78, 0xF5, 0x30, 0xC8, 0xE4, 0x20, 0x08,\n0xE7, 0x59, 0x00, 0xB8, 0x8C, 0x05, 0xEC, 0x94, 0x47, 0x73, 0x73, 0x6F, 0xC7, 0x4B, 0xAF, 0xB0,\n0xAE, 0x48, 0x1E, 0xE4, 0xB0, 0x38, 0xF0, 0x21, 0x48, 0xC0, 0xED, 0xBD, 0x7B, 0x51, 0x02, 0xDE,\n0xC4, 0x09, 0x18, 0x9F, 0x81, 0x6A, 0x3A, 0xA5, 0xA9, 0x2B, 0x66, 0xB3, 0x28, 0x6E, 0xFF, 0xEC,\n0x7E, 0x47, 0xC6, 0x38, 0x01, 0x89, 0x01, 0x2B, 0x11, 0x03, 0xAE, 0x01, 0x8D, 0x28, 0x88, 0x49,\n0xD2, 0x8F, 0x5C, 0xC0, 0x28, 0xFF, 0xDE, 0x85, 0x09, 0xC8, 0x2E, 0xD0, 0x59, 0xEE, 0x4B, 0xFF,\n0xDF, 0xC6, 0x5D, 0x7B, 0x35, 0xE5, 0x13, 0x08, 0x5B, 0x40, 0x73, 0x76, 0xC1, 0x39, 0xC0, 0xED,\n0xBD, 0xAD, 0x88, 0x01, 0xB3, 0x2F, 0xCC, 0xA1, 0xB5, 0x67, 0xA0, 0x7C, 0x02, 0xCE, 0x57, 0x82,\n0x5C, 0x3D, 0x08, 0x0C, 0xFF, 0x66, 0x45, 0xE0, 0x32, 0xBB, 0xC2, 0xD8, 0x11, 0xA4, 0x5F, 0x7C,\n0x0C, 0xBC, 0x0C, 0x01, 0x4D, 0xD9, 0xA0, 0x57, 0x38, 0xC0, 0xCC, 0xEA, 0x79, 0xCD, 0x6F, 0x3B,\n0xFF, 0x6C, 0x3D, 0xDC, 0xD3, 0x00, 0x00, 0x9D, 0x7F, 0xDB, 0x20, 0x01, 0x8F, 0x37, 0xDD, 0xB1,\n0x09, 0x03, 0xF0, 0x49, 0x1C, 0x80, 0xEE, 0x59, 0xD2, 0xD3, 0xEC, 0x76, 0x8F, 0xEA, 0xF6, 0xCF,\n0xD7, 0xC4, 0x3D, 0x8B, 0x03, 0xD0, 0xE2, 0xAA, 0x53, 0xA2, 0xC0, 0xDA, 0x00, 0x3A, 0xFF, 0x5C,\n0x11, 0x03, 0xD8, 0x2F, 0x06, 0x79, 0x1B, 0xE4, 0xDF, 0xD7, 0x77, 0x93, 0xA2, 0xC0, 0x69, 0xA2,\n0x94, 0x6D, 0x60, 0x98, 0x2C, 0xB0, 0xC2, 0xC6, 0x80, 0xD1, 0x0F, 0x20, 0x86, 0x40, 0xE7, 0xDF,\n0x4D, 0x8C, 0x7F, 0xFB, 0x7B, 0x5D, 0xC7, 0xBA, 0x17, 0xF3, 0x7F, 0xDD, 0x97, 0xB5, 0x11, 0xB0,\n0x7C, 0x02, 0xBC, 0xAE, 0x26, 0x0F, 0x70, 0x2A, 0xFF, 0x96, 0xC0, 0x5F, 0x9C, 0x80, 0xDA, 0x03,\n0x82, 0xBF, 0x18, 0x02, 0xD1, 0x9C, 0x08, 0x4C, 0x2A, 0xB6, 0x01, 0xA2, 0x03, 0x14, 0x89, 0x2F,\n0xBC, 0xC6, 0x36, 0x72, 0x3B, 0xF1, 0xCF, 0x08, 0xA8, 0x3B, 0xE0, 0xF6, 0x9E, 0x69, 0xBB, 0x0F,\n0x10, 0xF0, 0xE6, 0x68, 0xF5, 0x18, 0xF2, 0x80, 0xBD, 0x26, 0x64, 0x42, 0x3F, 0x4B, 0xB6, 0x8F,\n0xBD, 0x00, 0x7B, 0xAB, 0x33, 0x20, 0x90, 0x4C, 0xE8, 0x60, 0x0C, 0xD8, 0xEA, 0xB4, 0x3C, 0x40,\n0x39, 0xAB, 0x97, 0xA4, 0xB2, 0x60, 0xA6, 0xE5, 0x01, 0xBE, 0x33, 0x4D, 0xCA, 0x03, 0x4C, 0x73,\n0x80, 0x3F, 0xA5, 0xBF, 0xA4, 0x3B, 0x6E, 0x10, 0xE3, 0x1F, 0xC0, 0x13, 0x00, 0xA8, 0x4A, 0xEA,\n0x03, 0x51, 0xFE, 0xDD, 0x63, 0x1D, 0xF0, 0xA5, 0xF5, 0xC0, 0x9D, 0x8C, 0x80, 0x74, 0x66, 0x2F,\n0x80, 0x70, 0x1D, 0x2B, 0x41, 0xAE, 0x9E, 0x08, 0x3D, 0x01, 0x81, 0x9D, 0x22, 0x51, 0x10, 0x10,\n0x18, 0xE1, 0xDF, 0x22, 0x04, 0x44, 0x23, 0x7B, 0xBB, 0x70, 0x87, 0xCB, 0x62, 0xB4, 0x5B, 0x38,\n0x40, 0xE3, 0xDF, 0x53, 0xBD, 0x12, 0xC4, 0x8F, 0x9E, 0x7F, 0xE6, 0x01, 0xF7, 0x47, 0xED, 0xFF,\n0xBC, 0xDA, 0x28, 0x58, 0x97, 0x41, 0x61, 0xFE, 0x0D, 0xF3, 0x80, 0xFC, 0x90, 0x33, 0x7F, 0x94,\n0x77, 0xC9, 0xDF, 0x64, 0x8B, 0x81, 0x03, 0xFC, 0x4B, 0x0A, 0xF3, 0x0F, 0x0F, 0x58, 0x77, 0x75,\n0x48, 0x90, 0x72, 0xD2, 0x4A, 0x90, 0x77, 0x83, 0xBE, 0x46, 0xF8, 0xC7, 0xCF, 0x02, 0x66, 0x33,\n0x84, 0x74, 0xFA, 0x71, 0xC7, 0x76, 0x05, 0xDC, 0xC4, 0x3F, 0x80, 0x24, 0xED, 0xFF, 0x8E, 0xF4,\n0x81, 0x10, 0xFF, 0x9C, 0x80, 0x01, 0xFE, 0x41, 0x40, 0x3A, 0x33, 0x76, 0x60, 0x25, 0x6B, 0x81,\n0xD7, 0xB0, 0x18, 0xD8, 0x6A, 0x00, 0x81, 0x48, 0x78, 0x40, 0x1C, 0xA0, 0xB6, 0x80, 0x8B, 0x03,\n0x90, 0xCF, 0x3B, 0x63, 0x9A, 0x97, 0x0C, 0x81, 0xCA, 0x01, 0xBE, 0xBA, 0xEF, 0xFC, 0x73, 0x29,\n0x02, 0x7A, 0x37, 0x85, 0x80, 0xDA, 0x00, 0x7A, 0x95, 0x1E, 0x90, 0x87, 0x2A, 0xFC, 0xF8, 0x6D,\n0x1A, 0x96, 0x74, 0x99, 0x95, 0x49, 0x5E, 0xD0, 0x6A, 0xBF, 0xF7, 0x71, 0x9C, 0x80, 0x67, 0x3F,\n0x0D, 0x29, 0xC6, 0x3F, 0xBD, 0x16, 0xC4, 0x01, 0x88, 0xEA, 0xA0, 0xF4, 0xE3, 0x1B, 0xD2, 0xFC,\n0x4B, 0x7F, 0xD5, 0x29, 0x6B, 0x81, 0xC9, 0xF9, 0x63, 0x2D, 0xC8, 0x79, 0x3C, 0x18, 0x69, 0xFF,\n0x97, 0x24, 0x93, 0xDB, 0x6F, 0xE8, 0x03, 0x32, 0x00, 0x4C, 0xC7, 0x7A, 0xAA, 0xF9, 0xE7, 0x3A,\n0xDC, 0x75, 0x02, 0x32, 0xF0, 0x1D, 0x9A, 0x95, 0xEC, 0x06, 0x03, 0xFF, 0xAE, 0x05, 0xC0, 0x07,\n0x20, 0x50, 0x15, 0xA4, 0x3C, 0x20, 0x08, 0x5C, 0x06, 0x80, 0x9A, 0x7F, 0x28, 0x8B, 0x7D, 0x95,\n0xA3, 0x80, 0x3A, 0xFE, 0xB8, 0x9D, 0xF8, 0x77, 0x50, 0xBB, 0xA1, 0xE2, 0xFF, 0x20, 0x20, 0xC9,\n0x30, 0xE3, 0xFE, 0x8F, 0xAF, 0xFF, 0x1B, 0x0D, 0x40, 0x08, 0xA8, 0xF8, 0x07, 0x00, 0x59, 0x09,\n0x62, 0xC4, 0x4B, 0x1C, 0xEC, 0x77, 0x85, 0x99, 0xB4, 0x1B, 0x0C, 0xFA, 0xF2, 0x4E, 0xF2, 0x0F,\n0xE9, 0xF9, 0x3F, 0x35, 0x08, 0x66, 0x25, 0x30, 0xD2, 0xF3, 0x7F, 0x26, 0x3F, 0x2B, 0xFE, 0x21,\n0x62, 0x1E, 0xC4, 0x42, 0x08, 0x01, 0xBF, 0x6E, 0xE2, 0x04, 0x6C, 0x90, 0xF0, 0x7F, 0x4F, 0xE8,\n0x03, 0x5D, 0x95, 0xFC, 0x83, 0x80, 0x82, 0x7F, 0x10, 0xD0, 0x3A, 0xEF, 0x58, 0x32, 0x98, 0x1F,\n0x7F, 0xE9, 0x7E, 0x80, 0x73, 0x4E, 0x00, 0x52, 0x35, 0xFF, 0xB4, 0x07, 0x64, 0xF4, 0x1B, 0x89,\n0x84, 0xFC, 0xB2, 0x82, 0x00, 0x64, 0x14, 0x5C, 0x38, 0x40, 0x5E, 0x15, 0x08, 0x2C, 0x03, 0xC5,\n0xF0, 0x4F, 0x13, 0xB0, 0xE7, 0x1F, 0x04, 0xBC, 0x34, 0xB4, 0xB1, 0xAF, 0xFD, 0xA8, 0x07, 0x3C,\n0xD7, 0x63, 0xF9, 0xF4, 0x41, 0xC0, 0xF4, 0x44, 0x27, 0x3B, 0x43, 0xB1, 0x04, 0xC0, 0x38, 0x01,\n0xD9, 0x12, 0x5A, 0x79, 0xC0, 0x72, 0x3F, 0x54, 0x3D, 0x00, 0xD6, 0x83, 0xE0, 0x09, 0xFB, 0x01,\n0xF6, 0xE8, 0xF3, 0x62, 0x9A, 0xB2, 0x1F, 0x60, 0x16, 0x25, 0xCA, 0x57, 0xCF, 0xE4, 0x0A, 0x7F,\n0x02, 0x22, 0x01, 0x30, 0xEB, 0x03, 0x17, 0xBB, 0xCA, 0xF3, 0xAC, 0x63, 0xBD, 0xAC, 0x7A, 0x40,\n0x5F, 0x04, 0x82, 0x9E, 0x1A, 0x01, 0xA1, 0x5F, 0xE1, 0x00, 0x17, 0x24, 0xE0, 0x87, 0xD9, 0xF9,\n0x87, 0x66, 0xB3, 0x7F, 0xD4, 0x4E, 0x9A, 0x7F, 0xDA, 0x03, 0xDE, 0x99, 0x80, 0xC0, 0x25, 0x08,\n0x58, 0x08, 0xF8, 0x15, 0x69, 0xCF, 0xE7, 0xE2, 0x3E, 0x2D, 0x3F, 0x41, 0xA9, 0x4D, 0x5F, 0xAA,\n0x62, 0x14, 0x6C, 0x3F, 0x19, 0xCE, 0x05, 0x01, 0x8F, 0x47, 0xE9, 0xFF, 0xBC, 0x1E, 0x2F, 0x79,\n0xC0, 0x9F, 0x15, 0x7D, 0xFA, 0xD8, 0x11, 0x90, 0xCD, 0x3E, 0x53, 0x13, 0xDB, 0x11, 0x9A, 0x00,\n0x48, 0x92, 0x23, 0x70, 0xCA, 0x8E, 0xD0, 0x6A, 0xFC, 0xAB, 0x11, 0x78, 0x62, 0x37, 0x40, 0x4D,\n0xC0, 0x8F, 0x8E, 0x3E, 0x20, 0xA8, 0xF9, 0x87, 0xDC, 0x1A, 0x93, 0x36, 0x74, 0xBE, 0x79, 0xE2,\n0xE6, 0x57, 0x3F, 0x81, 0x8B, 0xFE, 0xAF, 0xA3, 0xDE, 0x77, 0xE6, 0xCE, 0x58, 0xB7, 0x89, 0x20,\n0x08, 0xC3, 0x08, 0x29, 0x25, 0x14, 0x48, 0x1C, 0x2E, 0xDD, 0x44, 0x34, 0xA9, 0x2D, 0xDE, 0x82,\n0x07, 0xF0, 0x95, 0x2E, 0x7D, 0x2F, 0x90, 0x8E, 0x32, 0x65, 0x94, 0x86, 0xD4, 0x79, 0x51, 0xB2,\n0xE7, 0x5B, 0x7D, 0x4C, 0xE6, 0x66, 0xFF, 0x89, 0xB2, 0xA7, 0xE4, 0xD3, 0x62, 0x1B, 0x08, 0x92,\n0x85, 0xED, 0x4F, 0xFF, 0xDC, 0xCE, 0xAC, 0x9B, 0x11, 0x90, 0x13, 0xA1, 0x17, 0xFF, 0x61, 0xC0,\n0xB6, 0xFF, 0x38, 0xBC, 0x92, 0x13, 0xF1, 0xB9, 0x21, 0x01, 0x2E, 0x6C, 0x62, 0xBF, 0x8F, 0x2E,\n0xC0, 0x57, 0x24, 0x40, 0x10, 0x19, 0xD0, 0xE9, 0x4F, 0xF8, 0x6F, 0x7B, 0x01, 0xDA, 0x01, 0x38,\n0x34, 0xE8, 0x21, 0xF2, 0x99, 0x9F, 0x9A, 0xFD, 0x77, 0x6C, 0x7F, 0x27, 0x26, 0x0D, 0x30, 0x57,\n0xBF, 0x5E, 0x18, 0xF0, 0x57, 0x9C, 0x01, 0x8B, 0xF4, 0x58, 0xAD, 0x91, 0x90, 0xBC, 0x01, 0x07,\n0x47, 0x39, 0x03, 0xCB, 0x0E, 0x79, 0xCD, 0x21, 0x67, 0x18, 0xEE, 0x6E, 0x32, 0x06, 0x44, 0x7F,\n0x35, 0xFE, 0x15, 0x94, 0xFF, 0xF4, 0x77, 0x82, 0x58, 0xFF, 0x89, 0x66, 0x98, 0x47, 0x90, 0x06,\n0xBC, 0xAF, 0xF2, 0xAB, 0xBE, 0xD6, 0xFE, 0x03, 0x8E, 0xCC, 0x7E, 0x5E, 0x0C, 0x80, 0xEC, 0xBE,\n0xBD, 0xE1, 0x15, 0x88, 0x05, 0xE8, 0xDE, 0x03, 0x91, 0xFF, 0x46, 0xFC, 0x27, 0x0C, 0xB8, 0x14,\n0xC0, 0x70, 0xBC, 0x5E, 0x1A, 0xA2, 0x83, 0x04, 0xB8, 0x65, 0x11, 0x3C, 0x6D, 0xE6, 0xBF, 0x2E,\n0xFA, 0x4B, 0x2B, 0x90, 0x0D, 0x60, 0x99, 0x01, 0x3F, 0x67, 0x8B, 0x60, 0xD8, 0xDE, 0x80, 0x3A,\n0x01, 0x82, 0xDF, 0x05, 0xC6, 0x7F, 0xD6, 0x80, 0xEB, 0x1B, 0x20, 0xD5, 0x7F, 0x18, 0x90, 0x43,\n0x61, 0x5C, 0x00, 0xB4, 0xAB, 0xB5, 0x15, 0xEC, 0x90, 0x07, 0xE2, 0x43, 0x3D, 0xD3, 0x89, 0xD9,\n0x8F, 0xCB, 0x06, 0xB0, 0x17, 0x40, 0xEB, 0x20, 0xAC, 0x2A, 0xC1, 0xCB, 0xA3, 0x7B, 0x2D, 0x40,\n0xF0, 0x5E, 0x2B, 0xBF, 0x9E, 0x00, 0xBC, 0xFD, 0xC8, 0x7F, 0x29, 0x03, 0xDE, 0xE2, 0xBE, 0xCB,\n0x83, 0xF2, 0x2B, 0x2D, 0x40, 0xAE, 0x98, 0x72, 0x70, 0x0E, 0xFD, 0x2F, 0x16, 0xE1, 0x3F, 0x68,\n0x37, 0x00, 0xDA, 0x15, 0x37, 0x40, 0x3B, 0xD6, 0xF5, 0xF7, 0xDD, 0xF8, 0x8F, 0xAD, 0x60, 0x97,\n0x00, 0x0B, 0x08, 0xF0, 0x1D, 0x32, 0xE0, 0x04, 0xDD, 0x14, 0xF8, 0x36, 0xFD, 0xA5, 0xE3, 0x9F,\n0x3D, 0x15, 0xE1, 0xD4, 0x4E, 0x80, 0x1B, 0x09, 0x50, 0xFB, 0x0F, 0x5C, 0x02, 0x8C, 0xED, 0xE7,\n0x13, 0x60, 0xF1, 0x9F, 0x7B, 0x53, 0x5D, 0x46, 0x42, 0xFC, 0x3B, 0xF0, 0xCA, 0xF3, 0x83, 0xA1,\n0xB8, 0xF8, 0x02, 0xA0, 0x68, 0x07, 0x04, 0xD0, 0x1F, 0x3F, 0xA8, 0x83, 0xAC, 0x1C, 0x77, 0x3C,\n0xEC, 0xF0, 0x9F, 0x54, 0xE0, 0xFF, 0x7B, 0x0A, 0x95, 0x7B, 0xA9, 0xBF, 0xF8, 0x32, 0x20, 0x0D,\n0x80, 0x1E, 0x11, 0x00, 0xA5, 0x00, 0x51, 0xDF, 0x03, 0x05, 0xBB, 0xF2, 0x1F, 0xDC, 0x98, 0xC1,\n0x8F, 0x1D, 0x03, 0x20, 0x2B, 0x88, 0x17, 0x40, 0x46, 0xC0, 0xF5, 0xF7, 0xC0, 0x0A, 0xE7, 0xAF,\n0x6C, 0x80, 0x18, 0x03, 0xEA, 0xFC, 0x87, 0x01, 0x5D, 0x02, 0xBC, 0x94, 0xC0, 0xD0, 0xD3, 0x7A,\n0xDC, 0x0B, 0xFF, 0x75, 0x36, 0x60, 0x9F, 0x04, 0xA8, 0xF3, 0x1F, 0x9C, 0x9C, 0xFC, 0x72, 0x45,\n0xF0, 0x46, 0x02, 0x0C, 0x30, 0x09, 0x30, 0xD6, 0x1F, 0x7A, 0xE4, 0x1F, 0xD0, 0x00, 0x08, 0xE1,\n0x65, 0x40, 0xDE, 0xA6, 0xC0, 0x48, 0x48, 0x94, 0xFF, 0x58, 0x51, 0x06, 0x5C, 0x25, 0xEF, 0x3F,\n0x77, 0xD2, 0x71, 0xB9, 0xBB, 0x3B, 0x00, 0xAC, 0xFB, 0x0F, 0xA3, 0xD4, 0xDB, 0x67, 0xA4, 0x00,\n0x81, 0xB2, 0x97, 0x58, 0x17, 0xF1, 0xF2, 0x47, 0xCB, 0x00, 0x70, 0xC0, 0x9A, 0xFF, 0xDC, 0xD5,\n0xCA, 0xF9, 0xF7, 0xD2, 0x7F, 0x30, 0xD4, 0x1E, 0x98, 0x65, 0x76, 0xA6, 0x3C, 0x7C, 0xEB, 0x0B,\n0xA0, 0xF3, 0x1F, 0xCB, 0x31, 0x8E, 0x3F, 0x79, 0x5F, 0x19, 0xC4, 0xD7, 0x81, 0x58, 0x03, 0x46,\n0x09, 0x10, 0x3A, 0x46, 0x3F, 0xCD, 0xD4, 0x81, 0x2E, 0x05, 0xB0, 0x0E, 0x81, 0x21, 0x64, 0xC0,\n0x58, 0x7F, 0xD1, 0xE1, 0xA8, 0x9B, 0x28, 0x30, 0x84, 0x3E, 0x40, 0x2C, 0x17, 0xFB, 0xCF, 0x0E,\n0x0C, 0xFD, 0x3E, 0x3A, 0xFF, 0xD5, 0x86, 0x68, 0x3F, 0x00, 0xE2, 0x60, 0x24, 0x24, 0xBA, 0xFC,\n0xA7, 0x33, 0x60, 0x84, 0xFC, 0xF8, 0xC1, 0xA1, 0x78, 0x8F, 0x4F, 0x36, 0x0D, 0x80, 0x8E, 0xB5,\n0x06, 0x40, 0xFA, 0x8A, 0x8D, 0x57, 0x32, 0xFE, 0xA3, 0x1D, 0xD0, 0xED, 0xFF, 0x46, 0xA8, 0x0D,\n0x60, 0x08, 0x1A, 0x00, 0x29, 0xD4, 0x79, 0xDE, 0x19, 0xFF, 0x51, 0x05, 0x33, 0x42, 0x3D, 0x8F,\n0x10, 0xBE, 0xFD, 0x05, 0x88, 0x07, 0x40, 0xFC, 0x0A, 0x1B, 0xA0, 0x3D, 0xD7, 0x61, 0x03, 0x8C,\n0xE5, 0x7A, 0x6E, 0x07, 0xB4, 0x09, 0x10, 0x01, 0xF6, 0x34, 0xE0, 0xC4, 0xED, 0x54, 0x56, 0xA4,\n0xC3, 0xE9, 0x9D, 0x05, 0xF8, 0x25, 0x52, 0x60, 0x36, 0xFE, 0xC1, 0x49, 0x26, 0xC0, 0xAD, 0x04,\n0xA8, 0xFD, 0x07, 0x6E, 0x26, 0x5C, 0x84, 0x40, 0xD7, 0x00, 0xAD, 0x33, 0x20, 0xFE, 0xF3, 0xFC,\n0x1C, 0x9B, 0xF9, 0x8F, 0xB5, 0x76, 0x3E, 0x6A, 0xDA, 0x80, 0x43, 0x0C, 0xDF, 0x04, 0xC2, 0x04,\n0x48, 0xCE, 0x80, 0xC4, 0xBE, 0xC5, 0x7C, 0x10, 0xF8, 0x4F, 0x56, 0xC1, 0x08, 0x50, 0x54, 0xC1,\n0x0C, 0x00, 0xAF, 0x13, 0xD4, 0xBF, 0x78, 0x8F, 0xE7, 0x9C, 0xF0, 0x1F, 0xED, 0x80, 0xEC, 0x99,\n0x97, 0xFF, 0xB4, 0x1E, 0x2F, 0x40, 0x3C, 0x00, 0xE2, 0x97, 0xF2, 0x1F, 0xFC, 0xD0, 0xFE, 0xA3,\n0x1D, 0xD0, 0x0C, 0x36, 0x91, 0x00, 0xD3, 0x06, 0xFC, 0x10, 0x0D, 0x80, 0x96, 0x2E, 0xFA, 0xD3,\n0x06, 0xCC, 0x65, 0xC0, 0x58, 0x7F, 0xCE, 0x80, 0xBD, 0x08, 0xFC, 0xA7, 0xCA, 0x60, 0x81, 0x1D,\n0x06, 0x29, 0x03, 0xC0, 0xB1, 0x01, 0xC5, 0x05, 0x40, 0x33, 0x12, 0x12, 0x5F, 0xFF, 0x63, 0x8D,\n0x67, 0x97, 0x01, 0x5B, 0xC8, 0xCF, 0x1F, 0xEC, 0x38, 0xD2, 0x6E, 0x18, 0x0E, 0x77, 0x37, 0x59,\n0x03, 0x56, 0x9F, 0x50, 0xFA, 0x3E, 0x90, 0xB0, 0x94, 0xFF, 0xA2, 0x91, 0x90, 0x27, 0x90, 0x55,\n0xF0, 0x63, 0x0B, 0xEF, 0xBF, 0x07, 0x7B, 0x0D, 0x90, 0xE7, 0x2C, 0xFD, 0x07, 0xF6, 0x58, 0xAC,\n0x16, 0x6E, 0x00, 0x24, 0x24, 0x1E, 0x00, 0xF1, 0x2B, 0x6A, 0x80, 0x06, 0x1A, 0xA2, 0x85, 0xFF,\n0x5C, 0x3B, 0x20, 0x0A, 0x44, 0x80, 0xD0, 0xAF, 0x02, 0x9E, 0x5A, 0x25, 0xF1, 0xF4, 0x5E, 0x02,\n0xD4, 0x0A, 0xCC, 0xE5, 0x3F, 0xB4, 0xC7, 0xDD, 0xA9, 0xA5, 0xC0, 0x8F, 0x20, 0xC0, 0xC5, 0x68,\n0x1A, 0xFA, 0xA0, 0xF1, 0x5F, 0x68, 0x40, 0x95, 0xFF, 0x68, 0x88, 0x1E, 0x9B, 0xF9, 0x8F, 0x75,\n0x56, 0xF9, 0x0F, 0xF6, 0x42, 0x7F, 0xF0, 0xAD, 0x4E, 0x35, 0xF0, 0x45, 0x48, 0x29, 0x03, 0x92,\n0xA5, 0x78, 0xB0, 0xAC, 0x42, 0xDA, 0x7F, 0x8C, 0x84, 0x94, 0x3B, 0x25, 0x40, 0x4C, 0x89, 0xFF,\n0xB4, 0x01, 0x5D, 0x48, 0x65, 0x23, 0xA4, 0x20, 0xFD, 0x07, 0xC3, 0x8E, 0xC3, 0x13, 0xDB, 0xA8,\n0x17, 0x00, 0xFC, 0x00, 0x48, 0xBC, 0x9C, 0xFF, 0xB4, 0x01, 0xF1, 0x9F, 0xC8, 0x80, 0x44, 0x00,\n0x04, 0xD8, 0xD5, 0x80, 0x38, 0x50, 0xD4, 0xBF, 0x9D, 0x0D, 0xD8, 0x2B, 0x01, 0x26, 0x03, 0xA0,\n0x39, 0x1D, 0x15, 0xF7, 0xB1, 0xC2, 0x9D, 0x10, 0xE8, 0x6A, 0x40, 0x09, 0x45, 0x80, 0x82, 0x01,\n0x38, 0x1A, 0xA0, 0x65, 0x06, 0xBC, 0x12, 0xFC, 0x19, 0xDB, 0xF9, 0x8F, 0xB5, 0x27, 0x03, 0x0E,\n0x8E, 0x70, 0x24, 0x64, 0x50, 0x1C, 0x76, 0x73, 0x71, 0x57, 0xF2, 0x5F, 0xDE, 0x80, 0x36, 0x4B,\n0xE1, 0x96, 0x2A, 0x96, 0xB4, 0xFF, 0xA8, 0x82, 0xF1, 0x5F, 0xDB, 0x80, 0xE5, 0x16, 0xFF, 0x69,\n0x03, 0x9A, 0x27, 0x86, 0xFC, 0x88, 0x80, 0x70, 0x10, 0x30, 0x39, 0x3D, 0x28, 0x54, 0xFE, 0x03,\n0x3F, 0x00, 0x12, 0x2F, 0x36, 0x40, 0x42, 0xFF, 0xB1, 0x15, 0x4C, 0x03, 0xB4, 0x23, 0x1A, 0x09,\n0xD9, 0x4E, 0x80, 0xD3, 0xDA, 0x1F, 0x4C, 0x1F, 0x4B, 0x80, 0x5F, 0xD2, 0x45, 0x30, 0x9E, 0x6B,\n0x71, 0x22, 0xFE, 0x65, 0x8A, 0xE0, 0xF7, 0x12, 0x20, 0xC9, 0x5F, 0xC0, 0x56, 0x19, 0x1B, 0xC0,\n0x11, 0x4B, 0x04, 0x14, 0xFE, 0xA3, 0x21, 0x5A, 0x04, 0x40, 0x37, 0x16, 0xAC, 0xD8, 0x6B, 0xFF,\n0x11, 0x01, 0xD9, 0xFF, 0x10, 0xE0, 0x3F, 0xDC, 0x67, 0xEA, 0x5F, 0xAE, 0x0B, 0xE6, 0xFC, 0x47,\n0x15, 0x4C, 0xFE, 0xD3, 0x45, 0x30, 0x0D, 0x80, 0x0D, 0x6C, 0xFE, 0xC3, 0xD7, 0x26, 0xB7, 0x5A,\n0x05, 0x1E, 0x34, 0x43, 0xED, 0x16, 0x7F, 0x5E, 0x6D, 0x9C, 0xFF, 0xB4, 0x01, 0xF7, 0xF2, 0x3D,\n0x10, 0x0C, 0x80, 0xC4, 0x5B, 0xC1, 0xF8, 0x2F, 0xE2, 0x77, 0x69, 0x88, 0xF6, 0x09, 0xB0, 0xB3,\n0x01, 0x51, 0x5E, 0xCC, 0xD4, 0x93, 0xEE, 0xFA, 0x7B, 0x46, 0xC5, 0x3F, 0xDB, 0x0E, 0x98, 0x4B,\n0x80, 0x18, 0xB0, 0x33, 0xE8, 0x4F, 0x1B, 0xF0, 0x55, 0x0A, 0xA4, 0x01, 0xBA, 0xC5, 0x71, 0xC9,\n0x80, 0x57, 0x12, 0x1A, 0xA2, 0xCF, 0xA3, 0x58, 0x9C, 0x10, 0xAD, 0xC1, 0x7F, 0x82, 0xBF, 0xC3,\n0x61, 0xE9, 0x83, 0x49, 0x80, 0xFE, 0x8C, 0x52, 0x1E, 0xD0, 0x49, 0x7D, 0x70, 0x8B, 0xFF, 0x14,\n0x73, 0xF9, 0x8B, 0xFF, 0xB4, 0x01, 0x09, 0x80, 0xDA, 0x80, 0xB7, 0xA4, 0x53, 0x2B, 0x6C, 0x1A,\n0x77, 0x10, 0xA0, 0xA6, 0x1E, 0x05, 0x98, 0x00, 0xFF, 0x09, 0xEC, 0x00, 0x88, 0x58, 0xF8, 0x4F,\n0x1B, 0x90, 0x06, 0xC0, 0x76, 0x04, 0x5C, 0x46, 0x42, 0x00, 0x01, 0x42, 0xAF, 0xFC, 0x37, 0xD5,\n0xE5, 0xFE, 0xA2, 0xB3, 0x00, 0xF1, 0x5F, 0xE7, 0x04, 0x48, 0xFC, 0xD3, 0x01, 0x70, 0x76, 0x5C,\n0x4E, 0x81, 0x9B, 0x18, 0x30, 0x47, 0xCA, 0x7D, 0xEC, 0xFF, 0xD2, 0x00, 0xDD, 0x2E, 0x82, 0xF1,\n0x5F, 0xC6, 0x80, 0xE3, 0x59, 0xAF, 0x9A, 0x01, 0x33, 0xEC, 0x33, 0xFE, 0xE3, 0x68, 0x98, 0x03,\n0x48, 0x03, 0xAE, 0x1B, 0x05, 0x05, 0xCE, 0xE0, 0x3F, 0xCD, 0x13, 0x03, 0x20, 0x0A, 0x36, 0x80,\n0x25, 0xB3, 0xFF, 0xEC, 0xD3, 0xC4, 0xD7, 0x26, 0x0D, 0xA6, 0xFC, 0xC7, 0x58, 0x30, 0xF9, 0x4F,\n0x1B, 0x70, 0xC8, 0x40, 0x03, 0xA0, 0x5C, 0x0C, 0xC0, 0x49, 0xEA, 0x09, 0xD0, 0x8A, 0xE3, 0x6C,\n0x40, 0xC3, 0xA7, 0xC0, 0x61, 0x7D, 0x6B, 0x60, 0xC3, 0xB4, 0xC9, 0x37, 0xC5, 0xF5, 0xE6, 0x1F,\n0x73, 0x67, 0xAC, 0xDB, 0x34, 0x14, 0x46, 0x61, 0xA8, 0xC2, 0xD2, 0xC1, 0xB2, 0x40, 0x72, 0x9D,\n0x2D, 0x4B, 0xE5, 0x0E, 0xCC, 0x11, 0x13, 0x52, 0x57, 0x84, 0xE4, 0xEE, 0xA9, 0xBA, 0x90, 0x6C,\n0x0C, 0x79, 0x85, 0x0E, 0x51, 0xE4, 0x25, 0xAA, 0xE5, 0x09, 0x31, 0xD2, 0x07, 0x68, 0xDF, 0x90,\n0xFF, 0x1C, 0xDB, 0xFD, 0x0B, 0xC4, 0xDC, 0x73, 0x23, 0x47, 0xED, 0xF7, 0xDF, 0x7B, 0x73, 0x13,\n0x19, 0xB0, 0xD3, 0xF8, 0xEB, 0xB9, 0x75, 0x42, 0xDF, 0xB6, 0x0E, 0xB4, 0x16, 0x2E, 0x1D, 0x4A,\n0xF0, 0x18, 0xBF, 0x29, 0x0E, 0x8C, 0xAB, 0x40, 0x03, 0xF9, 0x2F, 0x4C, 0x89, 0x8F, 0x84, 0xBC,\n0x13, 0xE0, 0x47, 0x42, 0xF0, 0xBD, 0x5F, 0xA8, 0xDB, 0xA2, 0xFB, 0x15, 0x48, 0x42, 0xCF, 0xEC,\n0xF3, 0x6F, 0xEF, 0x6D, 0x26, 0xB5, 0xB9, 0x09, 0xF0, 0xA3, 0x6A, 0x40, 0x5F, 0xF1, 0x0E, 0x28,\n0x05, 0xD4, 0xDF, 0x22, 0x04, 0x88, 0xF5, 0xAF, 0x08, 0x5C, 0xF9, 0x43, 0xE4, 0xE9, 0x02, 0x30,\n0x6E, 0x80, 0x2F, 0xD1, 0x59, 0xEE, 0x6E, 0xFA, 0x4F, 0x04, 0xF6, 0xD3, 0xA0, 0xFF, 0x66, 0x92,\n0x01, 0x67, 0x6D, 0xFE, 0x0B, 0x16, 0x05, 0x58, 0x48, 0xFE, 0xFB, 0x74, 0x76, 0x29, 0xE4, 0x3F,\n0xFF, 0x58, 0xF0, 0x40, 0x02, 0x74, 0xCC, 0x51, 0x36, 0xEE, 0xE0, 0xA1, 0xD5, 0x40, 0x3B, 0x54,\n0x58, 0xBE, 0xE1, 0xB8, 0x21, 0x70, 0x2D, 0x35, 0x43, 0xF4, 0x55, 0xB7, 0xDD, 0x12, 0x3D, 0xDC,\n0xA0, 0x2C, 0x8C, 0xC1, 0x86, 0xD2, 0x39, 0x55, 0xEB, 0x8B, 0x95, 0xC4, 0x09, 0x86, 0x52, 0x2A,\n0x03, 0xFE, 0x0B, 0x53, 0x96, 0x13, 0xFE, 0x06, 0x10, 0xC9, 0x80, 0xEF, 0xAE, 0xFB, 0x37, 0xBB,\n0x04, 0x1A, 0x56, 0xC1, 0x32, 0x33, 0xC8, 0x4D, 0x6A, 0xBC, 0x00, 0x22, 0x52, 0x77, 0xDA, 0xA8,\n0xBD, 0xE1, 0x3E, 0xC6, 0xA6, 0xBD, 0xCB, 0x19, 0x3F, 0x14, 0x27, 0x9B, 0x0A, 0xFE, 0x53, 0xD9,\n0xFE, 0xD8, 0xC8, 0x02, 0xC4, 0x72, 0x1D, 0x3B, 0x54, 0xFB, 0x92, 0x77, 0x8F, 0xAE, 0xB1, 0xE3,\n0xD5, 0x5C, 0x25, 0x97, 0x9F, 0x55, 0xF8, 0x4F, 0x64, 0xCA, 0xFC, 0xA7, 0x34, 0xAC, 0x7F, 0x25,\n0x01, 0xE2, 0xED, 0x80, 0x8B, 0x72, 0xA2, 0xC1, 0x13, 0x80, 0x8D, 0xF5, 0x66, 0xB7, 0x97, 0xD5,\n0x6A, 0x85, 0x61, 0x74, 0x76, 0x11, 0xAC, 0x75, 0xEE, 0xC5, 0xB2, 0xB6, 0x5C, 0x2E, 0xEF, 0xC3,\n0xAD, 0xE7, 0x04, 0x3D, 0xD0, 0xC0, 0x69, 0x84, 0xD5, 0x74, 0x55, 0x95, 0x6A, 0x45, 0x30, 0x91,\n0x29, 0xD1, 0xF6, 0x50, 0xFE, 0x6B, 0xC0, 0xF3, 0x04, 0xFE, 0x13, 0xB8, 0x3C, 0xBB, 0xCD, 0x66,\n0x2A, 0xD3, 0x5C, 0x2F, 0x3B, 0x57, 0xC3, 0x8D, 0x43, 0x5A, 0xA5, 0x22, 0x75, 0xD3, 0xDC, 0xD5,\n0x77, 0x77, 0x0D, 0x3A, 0x1A, 0xA6, 0xF6, 0x40, 0xD3, 0x8D, 0x78, 0xC4, 0x66, 0x18, 0x9B, 0x1B,\n0x9D, 0xC7, 0xC7, 0xC7, 0x5F, 0x8F, 0x41, 0x1E, 0xB0, 0xCD, 0x8D, 0x4E, 0x63, 0xFB, 0xD1, 0x77,\n0x34, 0xEC, 0x14, 0xBB, 0x53, 0xA3, 0xDB, 0xCE, 0xA7, 0x79, 0x2A, 0x51, 0xA5, 0x78, 0xC2, 0xA6,\n0x99, 0x34, 0x4C, 0x73, 0x99, 0x99, 0x0C, 0x2E, 0x00, 0x0B, 0x60, 0xAB, 0x4B, 0xBC, 0xB2, 0x0F,\n0x61, 0xBF, 0x00, 0x57, 0x61, 0x3E, 0x7B, 0x1D, 0x47, 0x81, 0xAB, 0xF5, 0xC8, 0x06, 0x64, 0x41,\n0x6F, 0x62, 0x69, 0xD0, 0x90, 0x72, 0x58, 0x5B, 0x9E, 0x46, 0x30, 0xBE, 0xD6, 0xC8, 0x42, 0x26,\n0xA0, 0xBE, 0x9E, 0x12, 0x6F, 0x01, 0x14, 0x49, 0x8A, 0xD9, 0x54, 0x53, 0xA0, 0x65, 0x85, 0xFC,\n0x18, 0xE0, 0xCC, 0xFE, 0x5A, 0x55, 0xC1, 0x96, 0x56, 0x15, 0x2C, 0xC7, 0x6A, 0x6A, 0x36, 0xCC,\n0x51, 0xDD, 0x50, 0xB7, 0x0F, 0xA0, 0x6D, 0xCC, 0x41, 0x3F, 0xA4, 0xDA, 0x6E, 0x1F, 0x1E, 0x45,\n0xB6, 0x5B, 0xFC, 0x09, 0xA9, 0x36, 0x0D, 0xBC, 0xD7, 0x39, 0xD0, 0x1A, 0xB8, 0x63, 0xFF, 0x9B,\n0xFA, 0xA2, 0xC2, 0x33, 0x50, 0x09, 0x4F, 0x41, 0x8A, 0xAB, 0xE6, 0xF9, 0xD8, 0xE0, 0xCB, 0x2F,\n0x31, 0x9D, 0x15, 0xC9, 0x3B, 0x09, 0xFE, 0x0F, 0xF9, 0x13, 0x91, 0xF3, 0xC5, 0x1F, 0xEC, 0x11,\n0xE0, 0x7A, 0xA7, 0x78, 0xAC, 0x2D, 0xCC, 0xD8, 0x74, 0xD6, 0x62, 0xFE, 0x43, 0x04, 0xDC, 0x89,\n0xB5, 0x5E, 0x2F, 0xC5, 0x5A, 0x43, 0x6C, 0xBA, 0xDA, 0xA4, 0xE2, 0x10, 0xB1, 0xAC, 0x95, 0x79,\n0xB1, 0x00, 0x48, 0x16, 0x81, 0x7C, 0xE8, 0xFE, 0x33, 0x2E, 0x13, 0xCD, 0x7F, 0xB7, 0x85, 0x19,\n0x50, 0x7B, 0xFD, 0x1B, 0xB9, 0x4E, 0xA6, 0xB5, 0xCE, 0x80, 0xA6, 0xC0, 0xAF, 0xF3, 0x14, 0x7D,\n0x70, 0x52, 0x19, 0x75, 0xD3, 0x8B, 0xAF, 0xB5, 0x20, 0x83, 0x1F, 0x1F, 0x41, 0x0C, 0x44, 0x6B,\n0xC5, 0xB3, 0x81, 0x01, 0x25, 0xB6, 0xDB, 0x9F, 0x5B, 0xCB, 0x77, 0x81, 0x46, 0x6C, 0xCB, 0xED,\n0x8D, 0xC6, 0x06, 0xBB, 0x40, 0x19, 0x73, 0xAC, 0x6D, 0xB0, 0x9D, 0xED, 0x66, 0x5E, 0x8C, 0xB4,\n0x55, 0x65, 0x87, 0x8F, 0x03, 0x0D, 0x3E, 0x05, 0x51, 0x4F, 0xAB, 0xEE, 0xBF, 0xA9, 0xF6, 0xF5,\n0xCF, 0x66, 0x45, 0x51, 0x24, 0xB2, 0xFF, 0xC2, 0x06, 0xD4, 0x13, 0xE0, 0x2A, 0x2E, 0x00, 0x72,\n0x7B, 0x0C, 0x22, 0x9A, 0xFF, 0x50, 0x32, 0x3B, 0x39, 0x03, 0xC2, 0x82, 0x1D, 0xF7, 0x83, 0x63,\n0x0C, 0x51, 0xFA, 0x5B, 0x52, 0x81, 0x23, 0x1B, 0xF0, 0x18, 0xFA, 0xD3, 0xB2, 0x1F, 0x29, 0x17,\n0xF6, 0xE2, 0x5B, 0x48, 0x19, 0xF0, 0x2C, 0x29, 0x6E, 0x8B, 0x04, 0x97, 0x37, 0xC2, 0x64, 0xE6,\n0xBF, 0x98, 0x0C, 0x28, 0x9E, 0xA8, 0x5F, 0xAD, 0xCF, 0xAB, 0x74, 0x8E, 0x80, 0xC3, 0xBE, 0x6F,\n0xC2, 0x9B, 0xBA, 0x32, 0x9A, 0xD6, 0x70, 0xAD, 0x4D, 0x40, 0xEF, 0x15, 0x4A, 0xB0, 0x5F, 0x0C,\n0x6F, 0x20, 0x20, 0x31, 0xFF, 0xD1, 0x80, 0x0A, 0x5B, 0x22, 0xE6, 0xBF, 0x0D, 0x76, 0x01, 0x7B,\n0x85, 0x32, 0x98, 0x06, 0x49, 0xED, 0x85, 0x7B, 0xD5, 0x87, 0xAA, 0xBA, 0xC0, 0x81, 0xA2, 0x77,\n0x47, 0xEA, 0x13, 0x1B, 0xD8, 0xE6, 0x15, 0x16, 0xC0, 0x60, 0x74, 0xFF, 0x41, 0x80, 0x99, 0xE6,\n0xBF, 0x04, 0x06, 0x94, 0xFD, 0x27, 0xFD, 0xC0, 0x5A, 0x17, 0x60, 0x54, 0x08, 0x1C, 0x5F, 0x80,\n0xEB, 0xB6, 0xA2, 0x50, 0xEC, 0xC7, 0x11, 0x8E, 0x93, 0xF5, 0x77, 0x22, 0x96, 0xEA, 0xC0, 0x58,\n0x05, 0xBE, 0x0A, 0xFF, 0x0D, 0x51, 0xA2, 0x9D, 0x03, 0xC5, 0x80, 0x67, 0xC8, 0x7F, 0x85, 0x66,\n0x40, 0x9C, 0x26, 0x56, 0x11, 0x06, 0x9C, 0xEA, 0x27, 0x2A, 0x22, 0x60, 0xF5, 0x14, 0x77, 0x7C,\n0xE6, 0xBD, 0xEA, 0xA9, 0xE9, 0x92, 0xA7, 0xFC, 0xD7, 0x96, 0x81, 0x5B, 0x4A, 0x91, 0xFE, 0xBB,\n0xA2, 0x01, 0xC3, 0x50, 0x7F, 0x34, 0x20, 0x72, 0xDE, 0xD0, 0x48, 0x6C, 0x33, 0x2B, 0x2D, 0x03,\n0x36, 0x9B, 0x2B, 0x2B, 0xEE, 0x53, 0x67, 0x6C, 0xCE, 0xEE, 0xA8, 0xE7, 0xE7, 0xD5, 0x5C, 0xF0,\n0x98, 0xAA, 0xD6, 0x7E, 0xC3, 0x4F, 0x01, 0x22, 0x60, 0xDE, 0x31, 0xB6, 0xFF, 0x68, 0x40, 0xCD,\n0x7F, 0x20, 0x91, 0xFC, 0x77, 0xA0, 0x01, 0xF7, 0x0A, 0x50, 0xB7, 0x58, 0x3B, 0xC4, 0x23, 0xF9,\n0x8F, 0x35, 0xBE, 0xFF, 0xD8, 0x69, 0x39, 0x0C, 0x41, 0x07, 0xEA, 0xAB, 0x64, 0x35, 0x00, 0x8E,\n0x9F, 0x01, 0x5F, 0x50, 0x80, 0xBD, 0xFF, 0x68, 0x40, 0x29, 0xFF, 0x19, 0x09, 0x0C, 0xA8, 0xE4,\n0x3F, 0xD4, 0x98, 0xAB, 0x60, 0x07, 0xAB, 0x60, 0x66, 0x20, 0xDE, 0xCC, 0x39, 0xF5, 0xCE, 0x30,\n0x74, 0x51, 0x57, 0xE0, 0x82, 0x8A, 0xF3, 0x45, 0xF0, 0x93, 0x08, 0x29, 0x19, 0xCC, 0xCD, 0x7C,\n0xAD, 0x02, 0xC3, 0x3F, 0x05, 0x84, 0xD4, 0x28, 0x36, 0xBB, 0xC2, 0x11, 0x70, 0xE0, 0x2F, 0x6C,\n0x49, 0xC2, 0x7F, 0x6D, 0xC3, 0x35, 0xB8, 0xED, 0x46, 0xBF, 0x53, 0x98, 0xA0, 0xFE, 0xA6, 0xAE,\n0x79, 0x48, 0x34, 0xA0, 0x1F, 0x37, 0xA7, 0xBC, 0xF1, 0x60, 0x88, 0xFC, 0x77, 0x14, 0x01, 0x66,\n0x8A, 0x01, 0xF9, 0x56, 0x19, 0xF8, 0x0F, 0x84, 0xDF, 0x09, 0x78, 0x0E, 0x0E, 0x35, 0xE0, 0x9B,\n0xC3, 0xE3, 0x1F, 0xDB, 0x41, 0x28, 0x02, 0x1C, 0x5F, 0x81, 0x4B, 0xEF, 0xAD, 0xE4, 0x70, 0x13,\n0x74, 0xDF, 0x89, 0x5E, 0x11, 0x8C, 0x67, 0xC0, 0x63, 0x07, 0xC0, 0x85, 0xE4, 0x3F, 0x12, 0xF4,\n0x5F, 0x4F, 0x72, 0x1B, 0x32, 0x20, 0xFC, 0x27, 0x1A, 0x50, 0x8F, 0x80, 0x8E, 0x67, 0x40, 0x8C,\n0x3E, 0xEB, 0x8B, 0x31, 0xA9, 0xC3, 0x97, 0x96, 0xB4, 0x0B, 0x74, 0x08, 0xFD, 0xF5, 0x03, 0xDD,\n0x73, 0xC5, 0x25, 0xE8, 0x4D, 0x00, 0x3A, 0xCD, 0x0D, 0x38, 0x0C, 0xFD, 0x87, 0x92, 0x32, 0x20,\n0x97, 0xE0, 0x26, 0x61, 0xAB, 0x7E, 0xA7, 0x58, 0x9C, 0xD4, 0x5E, 0xC8, 0x7F, 0xA0, 0x86, 0x03,\n0xBB, 0x2B, 0x21, 0x7D, 0xF9, 0xDC, 0xFD, 0x27, 0x2A, 0x30, 0x5E, 0x7F, 0xFC, 0xEE, 0x26, 0xF9,\n0x8F, 0x84, 0xFD, 0xF7, 0xF4, 0x22, 0x9C, 0x04, 0x18, 0x53, 0x80, 0xC0, 0x34, 0x78, 0x18, 0x9A,\n0xFE, 0x58, 0x71, 0xE8, 0x09, 0xB0, 0xE7, 0x7E, 0x94, 0xFC, 0xC7, 0x0A, 0xB1, 0x3C, 0x44, 0x80,\n0xAF, 0x6C, 0x01, 0x5C, 0x72, 0xD8, 0xE7, 0xBF, 0x49, 0xC8, 0x80, 0xC5, 0x33, 0xAE, 0x67, 0x59,\n0x60, 0xFD, 0xEB, 0x95, 0xCB, 0xE8, 0x27, 0x2A, 0x0D, 0x38, 0xF7, 0xF3, 0xDE, 0x73, 0x10, 0x3A,\n0xF2, 0xDF, 0x07, 0x5F, 0x04, 0x1B, 0x34, 0x0A, 0x67, 0x1E, 0xFE, 0xB8, 0xC6, 0xA4, 0xFD, 0xBA,\n0x21, 0xF0, 0x73, 0x40, 0xA8, 0x0F, 0xE5, 0x06, 0x7C, 0x18, 0x68, 0x5D, 0xFE, 0xC3, 0x80, 0x9B,\n0x9B, 0x40, 0xFE, 0xDB, 0xF4, 0xC5, 0x9F, 0x03, 0xD2, 0xD5, 0x80, 0xDA, 0x7E, 0x4E, 0x97, 0x69,\n0xE9, 0xC0, 0xDA, 0x8E, 0xD2, 0x8F, 0xB8, 0x1D, 0xBD, 0x1F, 0xC5, 0x7F, 0x2E, 0xC0, 0xE0, 0x85,\n0x90, 0xEC, 0x3A, 0x29, 0x9C, 0xE0, 0xE7, 0xE0, 0x9C, 0x89, 0xC8, 0xB0, 0x00, 0x75, 0x85, 0xAD,\n0xB8, 0xF5, 0xAB, 0x32, 0xA0, 0xA6, 0x3F, 0x76, 0x0F, 0x80, 0x01, 0xF7, 0x1D, 0x29, 0x03, 0x9E,\n0xEA, 0xBC, 0x40, 0xFE, 0x53, 0xAF, 0x83, 0xC0, 0x7F, 0xCE, 0xE4, 0x52, 0xF2, 0x1F, 0xB9, 0xFE,\n0x9F, 0x00, 0xE1, 0x3F, 0xAF, 0x5C, 0x27, 0xE2, 0x44, 0x4D, 0x53, 0x4F, 0x7E, 0xE8, 0xA8, 0x2E,\n0x0E, 0x42, 0x10, 0xCE, 0x07, 0x66, 0x2A, 0xD0, 0x65, 0x41, 0xDC, 0x69, 0xF5, 0x87, 0xC7, 0xBB,\n0xF5, 0x2F, 0xAA, 0xD9, 0x08, 0xF9, 0xAF, 0x5F, 0x06, 0xC3, 0x73, 0x43, 0x3C, 0xB4, 0xAA, 0x6C,\n0xC7, 0x40, 0x06, 0xE4, 0x3F, 0x7D, 0xC5, 0x7E, 0xD5, 0x66, 0xC0, 0x2E, 0xF9, 0xB9, 0xB8, 0x79,\n0x1F, 0xFE, 0x23, 0x35, 0x14, 0x88, 0xDE, 0x1F, 0x2D, 0x9F, 0x00, 0x8C, 0xDE, 0x73, 0xE0, 0x8C,\n0x98, 0xFF, 0x3C, 0x03, 0x6A, 0xFE, 0x23, 0x9A, 0xFF, 0x48, 0xE0, 0x65, 0x1E, 0x14, 0x60, 0xA4,\n0xC1, 0x56, 0x07, 0x23, 0xE9, 0x8F, 0x15, 0x41, 0xF8, 0xF2, 0x87, 0xF7, 0x7F, 0xB4, 0xE7, 0x77,\n0x64, 0xE2, 0xFC, 0xB7, 0x3C, 0x50, 0x80, 0xAF, 0x28, 0xFF, 0xED, 0x17, 0xA0, 0xF3, 0x1F, 0x03,\n0x26, 0xC5, 0x73, 0x92, 0xE2, 0x7B, 0xA6, 0xF9, 0x6F, 0xBC, 0x4B, 0xC1, 0xC4, 0xF9, 0x4D, 0xDD,\n0x19, 0xAC, 0x36, 0x72, 0x04, 0x61, 0x78, 0x09, 0xC9, 0x65, 0x0F, 0x46, 0x60, 0x62, 0x5B, 0xA7,\n0xF8, 0xE2, 0xAC, 0x4E, 0xB9, 0x24, 0x88, 0x5C, 0x7D, 0x17, 0xAC, 0x21, 0x90, 0x4B, 0x84, 0x2F,\n0xEB, 0x40, 0x36, 0x98, 0x38, 0xAF, 0xE0, 0x43, 0x08, 0x26, 0x10, 0x2C, 0x74, 0x0A, 0x86, 0xB0,\n0xB0, 0x7E, 0x80, 0x35, 0xC9, 0x03, 0xA6, 0xAB, 0x66, 0x6A, 0x3F, 0xB7, 0xDB, 0xAD, 0xAA, 0xB1,\n0x5B, 0xB1, 0xF5, 0x57, 0x4F, 0xCF, 0x8C, 0x77, 0x56, 0xF6, 0xCA, 0xD2, 0xB7, 0x7F, 0x77, 0x55,\n0x8F, 0x3A, 0xFE, 0xF1, 0xA6, 0x9F, 0x32, 0x1A, 0x54, 0xFB, 0x87, 0x26, 0x62, 0xAA, 0x34, 0x9F,\n0x60, 0x18, 0xB4, 0xAA, 0xBB, 0x37, 0xBD, 0xF3, 0x3A, 0xD2, 0xB6, 0x5C, 0xAE, 0x9A, 0x07, 0x84,\n0x7E, 0x9D, 0x09, 0x14, 0x0F, 0x58, 0x4B, 0x80, 0x5C, 0x71, 0xAD, 0x72, 0xB0, 0xF2, 0x98, 0xE6,\n0xFF, 0xF4, 0xDB, 0x27, 0xA5, 0xDE, 0x26, 0x28, 0xAD, 0x20, 0xA6, 0x0B, 0x9D, 0xBF, 0xDC, 0x36,\n0x03, 0xB8, 0xE8, 0xBA, 0x91, 0x39, 0x3E, 0x8C, 0x70, 0x7F, 0xB6, 0xB7, 0x4E, 0x00, 0xFA, 0x1E,\n0x70, 0x7C, 0x7A, 0xF7, 0xC5, 0xE2, 0xF2, 0x0F, 0x95, 0x43, 0x15, 0xBA, 0x52, 0x00, 0x70, 0x28,\n0xD0, 0xB8, 0x7C, 0x5D, 0x00, 0x24, 0x5A, 0x31, 0x90, 0x2D, 0x05, 0xC0, 0x93, 0x8E, 0xB3, 0xC7,\n0x78, 0xC0, 0x35, 0x4D, 0x03, 0x3E, 0x4B, 0xFE, 0xBD, 0x16, 0xFC, 0x15, 0xDA, 0x75, 0xFC, 0x1F,\n0xDA, 0x3A, 0x1D, 0x3B, 0xFC, 0x6B, 0x4A, 0xC0, 0x52, 0xD3, 0x11, 0xDE, 0x2F, 0xED, 0xF1, 0x83,\n0x8B, 0x89, 0x39, 0x40, 0x46, 0xC1, 0x22, 0xF2, 0xC0, 0x1F, 0xB3, 0x0D, 0x47, 0x02, 0x9D, 0x14,\n0x5D, 0xD3, 0xB9, 0xB8, 0x8A, 0x40, 0x9A, 0x6E, 0xE6, 0x01, 0x0B, 0xFA, 0x89, 0xBA, 0x81, 0x32,\n0xF8, 0xAB, 0x58, 0x40, 0xE1, 0x1F, 0xF4, 0xD5, 0x9F, 0x23, 0x9D, 0x0A, 0xAA, 0x81, 0x5F, 0x67,\n0xFF, 0xF4, 0xC0, 0xFE, 0x2D, 0x7D, 0xB7, 0x9D, 0x08, 0x68, 0xF0, 0xC7, 0x08, 0x6B, 0x3F, 0x7D,\n0xC4, 0xD3, 0x5A, 0xFF, 0x5D, 0xF1, 0xEB, 0xC4, 0x03, 0xD6, 0x0B, 0x00, 0x73, 0x6D, 0x05, 0xF8,\n0x07, 0x00, 0xE3, 0x7A, 0x04, 0x00, 0x9D, 0x09, 0x40, 0x5F, 0x2E, 0xFE, 0x08, 0x57, 0x5C, 0xE2,\n0xB3, 0x8F, 0x0D, 0xE7, 0x47, 0x32, 0x64, 0x80, 0x86, 0x0E, 0x82, 0x4F, 0x1E, 0x0E, 0xC0, 0x67,\n0xC8, 0x3F, 0x2B, 0x80, 0x16, 0xB9, 0x1E, 0x70, 0xB7, 0xF0, 0x7F, 0xA2, 0xFD, 0x1D, 0x87, 0x7F,\n0x0D, 0x09, 0x88, 0x72, 0x0F, 0x68, 0xDE, 0x8F, 0xFD, 0x48, 0xF8, 0x30, 0xC9, 0x01, 0xB8, 0xDD,\n0x25, 0x14, 0x14, 0x82, 0x86, 0x41, 0xE5, 0x4C, 0xEF, 0xBC, 0x74, 0x4F, 0x31, 0xCC, 0x8A, 0x09,\n0x40, 0x30, 0x78, 0x6F, 0x39, 0xA0, 0x32, 0xD1, 0x2E, 0xD3, 0x0B, 0x4D, 0xF7, 0x3B, 0xC0, 0xCE,\n0x7F, 0x9A, 0x01, 0x95, 0xFE, 0x18, 0xF8, 0x51, 0xB2, 0x93, 0x7A, 0x43, 0xFA, 0xC4, 0x3A, 0x2B,\n0x07, 0xCC, 0xB2, 0xE0, 0xDA, 0x8F, 0xE2, 0x4F, 0xEB, 0x90, 0x2A, 0xA5, 0x71, 0x41, 0xC0, 0x9D,\n0x6A, 0x01, 0x8C, 0x4F, 0x40, 0x0A, 0x60, 0x1E, 0x89, 0xC0, 0x17, 0x41, 0xFC, 0xB5, 0x97, 0x0F,\n0x40, 0xC2, 0x15, 0x97, 0x9D, 0xC4, 0x09, 0x08, 0xFD, 0x40, 0x61, 0x45, 0x4F, 0x9B, 0x0A, 0x7E,\n0xF2, 0xF9, 0x3F, 0x77, 0xF8, 0x8B, 0x76, 0x3D, 0xFE, 0xA9, 0xB6, 0xB4, 0x18, 0x06, 0x0F, 0x80,\n0x0A, 0xFA, 0x41, 0xC0, 0x66, 0x00, 0x64, 0x1A, 0x10, 0x13, 0x64, 0x7B, 0x71, 0x47, 0xA5, 0x16,\n0xE6, 0xFA, 0x24, 0x48, 0x00, 0x2B, 0xF6, 0xBA, 0xD9, 0x37, 0xDD, 0xAA, 0x4B, 0x42, 0x7E, 0x37,\n0x31, 0xB7, 0x67, 0x04, 0x2C, 0x17, 0x80, 0x90, 0x2D, 0x01, 0x9B, 0xB5, 0x05, 0x20, 0xFD, 0x37,\n0xD7, 0xBD, 0x25, 0x43, 0x04, 0xCD, 0xF0, 0xBA, 0xCB, 0x85, 0x5C, 0xE4, 0x06, 0xD0, 0x8A, 0x61,\n0x46, 0x99, 0xF9, 0x65, 0x01, 0x48, 0x61, 0x02, 0x1B, 0xE6, 0x3F, 0x88, 0xB1, 0xC3, 0x3F, 0x87,\n0x80, 0xF0, 0xAF, 0x0D, 0x00, 0x87, 0xE1, 0xAB, 0x3D, 0x01, 0xE1, 0x5F, 0x19, 0xF1, 0x15, 0x21,\n0x3E, 0xFF, 0xD8, 0xCA, 0x31, 0x70, 0x5C, 0x43, 0x11, 0x78, 0xF2, 0xA8, 0x41, 0xF0, 0x73, 0xF1,\n0x7F, 0x36, 0x9F, 0x52, 0x00, 0x90, 0x5C, 0xF0, 0xEE, 0x96, 0x33, 0xFF, 0x67, 0xA2, 0x1C, 0xB0,\n0x96, 0x00, 0x26, 0x1E, 0xE9, 0x01, 0xF7, 0x66, 0x55, 0x02, 0x92, 0x04, 0x95, 0x90, 0x04, 0xB0,\n0xB5, 0x4C, 0x9D, 0x8D, 0xB2, 0x55, 0x70, 0x1D, 0x02, 0xC5, 0xFB, 0x09, 0x75, 0x44, 0x8A, 0xC2,\n0xAA, 0x07, 0xBC, 0x4D, 0x3F, 0x50, 0x78, 0x9C, 0x7B, 0x40, 0xF8, 0x67, 0x57, 0x01, 0xC1, 0xD2,\n0x02, 0x32, 0xFE, 0x4D, 0x9D, 0x19, 0x51, 0xFD, 0x69, 0x94, 0x7E, 0x3D, 0xFA, 0xCC, 0x02, 0x96,\n0x06, 0x70, 0xA1, 0xDB, 0xE8, 0x76, 0x25, 0xE4, 0x14, 0xFF, 0x57, 0xAA, 0x41, 0x01, 0xB4, 0xE7,\n0x01, 0xE1, 0x5F, 0x90, 0x80, 0x07, 0x85, 0xE2, 0xE5, 0x80, 0x3E, 0x00, 0xD7, 0x2F, 0x9F, 0x7F,\n0xC4, 0x10, 0xC5, 0x08, 0x98, 0xA2, 0x2C, 0x82, 0x89, 0xF3, 0xEE, 0xC9, 0x53, 0xC1, 0xFF, 0x3B,\n0xFF, 0x5E, 0x3B, 0x06, 0xD0, 0x04, 0x01, 0x29, 0x00, 0x74, 0x08, 0xE8, 0xF1, 0xCF, 0xF1, 0x80,\n0xFE, 0x1B, 0xD5, 0xF1, 0x80, 0xB8, 0xC0, 0x45, 0x8A, 0xBE, 0xE5, 0x32, 0x57, 0xB5, 0xB8, 0x54,\n0xFC, 0xA9, 0xFF, 0xC3, 0x01, 0xEA, 0x5E, 0x3B, 0x3C, 0x20, 0x02, 0x66, 0x98, 0xBB, 0x4E, 0xEA,\n0xFB, 0xBA, 0x8E, 0x02, 0x68, 0x69, 0xC0, 0xCF, 0xBA, 0x7B, 0x17, 0x80, 0xF4, 0xD4, 0xE5, 0xA7,\n0xD0, 0x54, 0x30, 0x15, 0x3B, 0x1A, 0xE6, 0xFF, 0x30, 0x80, 0x50, 0xBE, 0xFB, 0xE7, 0xDB, 0x73,\n0xC0, 0x02, 0x10, 0x3C, 0x20, 0x6A, 0xCA, 0x3F, 0x08, 0x58, 0x16, 0x00, 0xBA, 0x04, 0x84, 0x7F,\n0x8F, 0xF5, 0x80, 0x00, 0xF0, 0xC7, 0x27, 0x90, 0xCF, 0x3F, 0x22, 0x6E, 0x01, 0xFD, 0x0C, 0x30,\n0xDB, 0x35, 0x0C, 0x1C, 0xA6, 0x81, 0xA3, 0xE0, 0xCA, 0x57, 0x37, 0x0A, 0x80, 0x45, 0x01, 0x74,\n0x4D, 0x9F, 0x7D, 0x1B, 0xE0, 0xDF, 0x16, 0x04, 0x2C, 0x16, 0x80, 0x94, 0xF1, 0x38, 0x02, 0xCE,\n0x56, 0x12, 0xF0, 0x76, 0x35, 0x30, 0x68, 0x40, 0x14, 0x44, 0xB3, 0xD8, 0x2C, 0x11, 0x46, 0xB0,\n0x23, 0x08, 0x92, 0x5E, 0xF7, 0xCB, 0x23, 0xCB, 0x85, 0x88, 0x05, 0xCC, 0xFD, 0x9F, 0xAA, 0x30,\n0x77, 0x57, 0x36, 0x0F, 0x48, 0x22, 0x84, 0xFA, 0x67, 0xC6, 0xCB, 0xE5, 0x92, 0x10, 0x3D, 0xEC,\n0x16, 0x80, 0xE0, 0x00, 0xED, 0x27, 0x90, 0x91, 0xB1, 0x2D, 0x86, 0x53, 0xCF, 0xBA, 0x30, 0x9A,\n0x63, 0x00, 0x05, 0xF1, 0x94, 0x03, 0x12, 0xF8, 0xBF, 0x52, 0x4D, 0x07, 0xC0, 0x10, 0x30, 0xE7,\n0x1F, 0x05, 0x30, 0x85, 0xBE, 0x75, 0xF9, 0x37, 0x9C, 0x80, 0x0F, 0x07, 0x60, 0x1B, 0x60, 0xFA,\n0xFC, 0x23, 0x06, 0x68, 0xD8, 0x20, 0xB8, 0xCC, 0x80, 0x3C, 0xCB, 0x72, 0xC0, 0xE7, 0xC4, 0xBF,\n0xBA, 0xFF, 0xA3, 0x20, 0xBA, 0xCE, 0x3F, 0x10, 0xC8, 0x92, 0x10, 0xF8, 0xD7, 0x9C, 0x80, 0x15,\n0x51, 0x10, 0x6D, 0x0B, 0x42, 0x66, 0x9A, 0xFD, 0xC0, 0x00, 0x96, 0xA3, 0x60, 0xAB, 0x80, 0x49,\n0x3B, 0xE3, 0x8E, 0x51, 0xCF, 0x1C, 0xA0, 0xD6, 0x03, 0xFE, 0x55, 0x24, 0x80, 0x73, 0xAA, 0xF1,\n0x25, 0xA6, 0xFF, 0xD4, 0xFF, 0xE1, 0x0D, 0x71, 0x80, 0xD2, 0x72, 0x0F, 0xA8, 0x80, 0x5D, 0x2E,\n0xCD, 0x7E, 0xEA, 0x01, 0x14, 0x94, 0xD0, 0x1F, 0xD2, 0x6E, 0x64, 0x33, 0x29, 0x0C, 0xA0, 0x41,\n0x5E, 0x36, 0xD2, 0xC0, 0xF0, 0x2F, 0xE2, 0x01, 0xD1, 0x60, 0xFC, 0x11, 0x10, 0x10, 0xFE, 0x55,\n0x55, 0x5D, 0x00, 0x82, 0x86, 0x97, 0x03, 0xBE, 0x80, 0x7F, 0xED, 0x01, 0xE8, 0x2B, 0xCE, 0xBF,\n0xB8, 0x07, 0x14, 0x39, 0xE8, 0x63, 0x53, 0xF2, 0xD1, 0xC5, 0x34, 0x1C, 0x80, 0x27, 0x8F, 0x07,\n0xE0, 0x33, 0xE2, 0x1F, 0xFE, 0x0F, 0xA1, 0x74, 0xDF, 0xF1, 0xEC, 0x03, 0xD1, 0xEB, 0xDA, 0xBA,\n0x43, 0x40, 0xF8, 0xD7, 0x2E, 0x13, 0x92, 0x36, 0x8F, 0x80, 0x0C, 0x83, 0x17, 0x36, 0x3C, 0xAC,\n0x24, 0x42, 0xB4, 0x29, 0x5D, 0x20, 0x9E, 0x20, 0x27, 0x2B, 0x44, 0x49, 0x71, 0x5C, 0xE6, 0x7F,\n0xF3, 0x81, 0x2D, 0xBB, 0xF7, 0x37, 0xE8, 0x83, 0x5E, 0xC4, 0x65, 0x5C, 0xCD, 0x92, 0x90, 0xBE,\n0x69, 0x01, 0x60, 0xF7, 0xED, 0xF8, 0xC6, 0x7A, 0xA0, 0x2B, 0xE3, 0xA8, 0x7F, 0x21, 0x01, 0x8C,\n0x01, 0x34, 0xC8, 0x4F, 0x64, 0xD7, 0xD7, 0x03, 0xC2, 0xBF, 0xAA, 0x9A, 0xFB, 0x3F, 0x3C, 0x20,\n0x05, 0xD0, 0x35, 0x51, 0x0E, 0x48, 0x01, 0x4C, 0x03, 0x0F, 0x68, 0x00, 0x1C, 0xCC, 0xAD, 0x1F,\n0x9F, 0x2B, 0x00, 0x63, 0xF8, 0x63, 0x03, 0x7C, 0xCF, 0xDD, 0x03, 0x3E, 0xFB, 0x04, 0x70, 0xBE,\n0x24, 0xC4, 0xF8, 0x77, 0xFE, 0xAA, 0x2E, 0xF1, 0x80, 0x3B, 0x79, 0x01, 0x4C, 0x3D, 0x1E, 0x78,\n0x67, 0x98, 0x91, 0x4F, 0xC0, 0xAE, 0x08, 0xC6, 0x3C, 0x51, 0x61, 0x00, 0x59, 0x12, 0xC2, 0x92,\n0xB8, 0xDE, 0xFC, 0x09, 0x7D, 0x30, 0x81, 0x56, 0x91, 0xC2, 0xB2, 0xE0, 0xDF, 0x3A, 0xFF, 0x87,\n0xE0, 0x9A, 0x31, 0x91, 0x22, 0xC0, 0xF7, 0xF8, 0xC4, 0xAC, 0x66, 0x9A, 0xB3, 0xCE, 0xFB, 0x49,\n0x6F, 0xE5, 0xCF, 0xD4, 0x40, 0x4B, 0xB3, 0xAF, 0x6A, 0x39, 0x20, 0x05, 0x30, 0x85, 0x01, 0x64,\n0x20, 0x2C, 0xD2, 0xDB, 0x03, 0xDA, 0xFC, 0x9F, 0xE3, 0x01, 0x83, 0xFC, 0x1B, 0x17, 0x05, 0x80,\n0x75, 0x0F, 0xE8, 0xF2, 0x0F, 0x05, 0xF9, 0x87, 0x07, 0x4C, 0xBD, 0xA3, 0x17, 0x4F, 0xC3, 0x3F,\n0x94, 0xE1, 0xAF, 0x95, 0x07, 0x84, 0x7F, 0xEE, 0x46, 0x09, 0x4C, 0x58, 0xC3, 0xF9, 0x77, 0xD2,\n0x84, 0x80, 0xCF, 0xC4, 0xFF, 0x51, 0x00, 0x58, 0x05, 0x60, 0x2A, 0x07, 0xDC, 0x0A, 0xF1, 0x2F,\n0x55, 0xC3, 0x9C, 0xEE, 0x64, 0x09, 0x90, 0xD6, 0x1E, 0x70, 0xE6, 0x5D, 0x38, 0x35, 0xFF, 0x87,\n0x27, 0xC2, 0x00, 0xE6, 0xB2, 0x9B, 0xC1, 0x50, 0x7D, 0x2C, 0x1D, 0x36, 0x2C, 0x85, 0xD9, 0x41,\n0x73, 0x6A, 0x6A, 0x00, 0x75, 0x23, 0x20, 0x1C, 0xE5, 0x80, 0xF8, 0x3F, 0x2E, 0x63, 0xFB, 0xD8,\n0x14, 0x7E, 0x9A, 0x00, 0x36, 0xDB, 0xC9, 0x77, 0xD6, 0x06, 0x83, 0xED, 0x1E, 0x0E, 0xDB, 0x85,\n0x01, 0x54, 0x2D, 0xEC, 0x74, 0xB2, 0x18, 0x31, 0xFF, 0xE7, 0xA8, 0xE5, 0x00, 0x18, 0x04, 0x7E,\n0xE4, 0xDF, 0x2B, 0x54, 0xF7, 0x80, 0xF0, 0xAF, 0x89, 0x07, 0x7C, 0xF1, 0x44, 0xFC, 0x43, 0xE0,\n0xCF, 0x8D, 0x21, 0x8A, 0x11, 0xB0, 0xEA, 0x01, 0x9F, 0xE7, 0x92, 0x90, 0x97, 0x4F, 0xCE, 0xBF,\n0xD7, 0x1E, 0xFF, 0xAC, 0x18, 0xA6, 0x2F, 0x00, 0xAC, 0xF3, 0x8F, 0x45, 0x71, 0xE3, 0x8A, 0xFF,\n0x6B, 0x50, 0x10, 0x1D, 0xD2, 0xC8, 0xF0, 0x47, 0x85, 0x1C, 0x42, 0xA4, 0x82, 0x0D, 0x37, 0xD6,\n0xC9, 0x4E, 0x80, 0x64, 0x67, 0x2C, 0x0B, 0xBE, 0xC2, 0xC8, 0x99, 0x0A, 0xC2, 0x59, 0x2A, 0x38,\n0xBB, 0x0E, 0xF4, 0x65, 0x52, 0xA8, 0xEA, 0xF8, 0x97, 0x6F, 0xBE, 0xEC, 0x29, 0x98, 0x5B, 0x42,\n0xBB, 0x5D, 0xFF, 0xC5, 0xBD, 0x06, 0x90, 0xE5, 0x20, 0xA9, 0xB7, 0x3B, 0xE3, 0xEC, 0x95, 0x9A,\n0x3E, 0xF8, 0x69, 0x1D, 0xBB, 0xFE, 0x0F, 0x0F, 0xC8, 0x02, 0x10, 0x57, 0xF0, 0xAF, 0x15, 0x00,\n0xDB, 0xCF, 0xFF, 0xB5, 0x07, 0x20, 0x11, 0x9F, 0x06, 0x04, 0x7F, 0x2E, 0x02, 0xDB, 0xD9, 0x3F,\n0xC2, 0x37, 0x80, 0x68, 0x83, 0xF8, 0x87, 0xFF, 0x73, 0x09, 0x18, 0xE2, 0x1F, 0x4B, 0x42, 0xC6,\n0x63, 0xDF, 0x01, 0x0E, 0x24, 0x60, 0x14, 0x80, 0x53, 0x1D, 0x05, 0x67, 0x15, 0x72, 0x35, 0xC9,\n0x90, 0xD2, 0xCC, 0x17, 0x75, 0x2F, 0xD2, 0x94, 0x3D, 0xE4, 0x84, 0xFB, 0x72, 0xC0, 0xDB, 0x28,\n0x23, 0x50, 0x77, 0x6A, 0x05, 0x80, 0xD9, 0x75, 0x95, 0xBF, 0xA7, 0x03, 0x6B, 0x52, 0xD0, 0x50,\n0xB7, 0x18, 0x04, 0xB3, 0x00, 0x2E, 0x37, 0x80, 0x9C, 0x4E, 0x16, 0x17, 0xDB, 0x7A, 0x34, 0x12,\n0xED, 0x45, 0xF4, 0xC0, 0x05, 0x20, 0xCE, 0x34, 0x20, 0xFC, 0xF3, 0x3D, 0xE0, 0x2E, 0x05, 0xD0,\n0x2D, 0x10, 0xF8, 0xE2, 0xA9, 0xF8, 0x87, 0x9A, 0x02, 0x10, 0x9D, 0xC4, 0xF0, 0x27, 0xD7, 0x15,\n0x7A, 0xB6, 0x4B, 0x42, 0x5E, 0x3E, 0xFB, 0xF9, 0x3F, 0x08, 0x48, 0x01, 0xB4, 0xF7, 0xA2, 0x16,\n0xFE, 0x91, 0x00, 0x69, 0x37, 0x08, 0x8E, 0x2A, 0xBD, 0xFB, 0x35, 0xFB, 0x41, 0x0A, 0xA4, 0x2A,\n0x2D, 0x00, 0xC4, 0x6E, 0xE9, 0xB1, 0x86, 0x42, 0xC9, 0x0E, 0xCD, 0x03, 0xFE, 0x5E, 0x11, 0x4C,\n0x93, 0x13, 0xF5, 0x80, 0x70, 0xB1, 0xE2, 0x00, 0x49, 0x05, 0x2B, 0xEE, 0xAC, 0x83, 0x82, 0x77,\n0x73, 0xD2, 0x4B, 0xE5, 0x5F, 0xDD, 0x00, 0x6E, 0xCB, 0x71, 0xBF, 0x8D, 0x58, 0x00, 0xE2, 0x78,\n0xC0, 0x41, 0xC3, 0x5F, 0x7E, 0xA9, 0x0E, 0x01, 0x29, 0x80, 0xF6, 0xB4, 0x15, 0xE2, 0x5F, 0x3C,\n0x17, 0xFC, 0xE2, 0xC9, 0xF9, 0x27, 0x04, 0x84, 0x70, 0x0D, 0x53, 0xC1, 0x03, 0x2C, 0x20, 0x5A,\n0x43, 0x26, 0xC4, 0x87, 0xE1, 0x33, 0xF8, 0xA8, 0xB8, 0xB0, 0x7E, 0x38, 0x08, 0x13, 0x90, 0x57,\n0xB4, 0x47, 0xC0, 0x82, 0x7F, 0x6D, 0x8A, 0x61, 0xC2, 0x1A, 0xD9, 0xF4, 0x1F, 0x35, 0x30, 0x35,\n0x2D, 0x6D, 0xF9, 0x87, 0x8D, 0x79, 0x55, 0x4B, 0x3C, 0x21, 0xE9, 0x60, 0x4B, 0x00, 0x97, 0x91,\n0x1B, 0x40, 0x59, 0x12, 0xF2, 0xA1, 0xBC, 0xF6, 0x1E, 0x07, 0x28, 0xDB, 0x31, 0xDF, 0x9C, 0xDC,\n0x2F, 0x0E, 0x10, 0x27, 0x78, 0xFC, 0x9B, 0xF0, 0xAF, 0x6E, 0x00, 0xAD, 0x9F, 0x08, 0x0C, 0xF1,\n0x7F, 0xA1, 0xD1, 0x6D, 0x1B, 0xFF, 0x07, 0x01, 0xC3, 0xFC, 0x4B, 0x73, 0xCA, 0x3E, 0xFF, 0xE2,\n0x4B, 0x42, 0x00, 0x60, 0x88, 0x53, 0xDA, 0xAF, 0x61, 0xA6, 0x70, 0xC8, 0xE7, 0xBF, 0xC5, 0x15,\n0xA3, 0x9F, 0xF6, 0x1B, 0x64, 0x01, 0x1B, 0x03, 0xB0, 0x3D, 0xFF, 0x48, 0x05, 0x93, 0x00, 0xF1,\n0x08, 0x38, 0x8F, 0xBF, 0x53, 0xE2, 0xAB, 0xE2, 0xC8, 0x7F, 0x44, 0x00, 0xD8, 0xA3, 0xC0, 0xB5,\n0x80, 0x97, 0xCB, 0x63, 0x5C, 0xDF, 0x51, 0x76, 0xB8, 0x64, 0x52, 0x4E, 0xFD, 0x57, 0xCC, 0x00,\n0x2A, 0xD5, 0x6E, 0x38, 0x43, 0xA5, 0x03, 0xD4, 0xAE, 0x23, 0x9E, 0xD9, 0x4F, 0xF3, 0x9E, 0x38,\n0x40, 0x6E, 0xCC, 0xB0, 0xCA, 0x00, 0x32, 0xDB, 0xB9, 0x90, 0xA1, 0xB0, 0x01, 0xD0, 0x99, 0x08,\n0x04, 0x80, 0x0D, 0xF2, 0x1F, 0xC4, 0xDE, 0xF8, 0x74, 0x2B, 0x0C, 0xC0, 0xC3, 0x83, 0x76, 0x04,\n0x1C, 0x08, 0x40, 0xD9, 0xD6, 0x01, 0xC0, 0xB6, 0x0E, 0x90, 0x54, 0x70, 0x18, 0x81, 0x6B, 0x75,\n0x80, 0x27, 0x3E, 0xFF, 0x36, 0xC7, 0x02, 0x1E, 0x84, 0x75, 0x48, 0x09, 0xA0, 0xAB, 0x39, 0x29,\n0x60, 0x3F, 0xD6, 0xC0, 0xBF, 0xD1, 0x48, 0x20, 0x10, 0xB1, 0x80, 0x8B, 0xA5, 0xE2, 0x46, 0x36,\n0xE3, 0x8E, 0xEC, 0x6D, 0x19, 0x06, 0x03, 0xE1, 0x25, 0x6B, 0xE0, 0x6A, 0xFE, 0x8F, 0x44, 0xF0,\n0xFB, 0x9B, 0xF7, 0xC5, 0x85, 0xE5, 0x9C, 0xA0, 0xCD, 0x01, 0x66, 0xDF, 0x1C, 0xCB, 0xD7, 0x67,\n0x85, 0xB1, 0xA2, 0x94, 0xC0, 0x54, 0x0C, 0xE0, 0xE2, 0xC2, 0x0C, 0x60, 0xAA, 0x02, 0x8A, 0x3F,\n0x5B, 0x71, 0xFE, 0x85, 0xFF, 0x5F, 0xDB, 0x3F, 0xE7, 0x3F, 0x4B, 0x37, 0x0D, 0xD2, 0x94, 0x80,\n0x2F, 0x86, 0x10, 0x6D, 0x20, 0xD5, 0x9E, 0x6E, 0x0E, 0x30, 0x3E, 0x0D, 0xF8, 0x2C, 0x26, 0x01,\n0x5F, 0x6E, 0x0C, 0x01, 0x07, 0xF0, 0x8F, 0x22, 0x68, 0x4F, 0xE7, 0xA7, 0xF3, 0x57, 0xFB, 0x71,\n0x0F, 0xD8, 0x9E, 0x80, 0x17, 0x3A, 0x07, 0xE8, 0x5B, 0xC0, 0xED, 0xBE, 0x18, 0x3A, 0xAB, 0xFD,\n0x63, 0x2A, 0x8E, 0x29, 0x38, 0xF5, 0x7F, 0x5A, 0x04, 0x53, 0xAA, 0x18, 0xE5, 0x2A, 0xFF, 0xDE,\n0xDF, 0x54, 0xBC, 0x22, 0xD2, 0xEB, 0x8F, 0x45, 0x4A, 0x39, 0xBE, 0xB1, 0xB5, 0x25, 0x0E, 0x30,\n0x7D, 0x7B, 0x92, 0x20, 0x15, 0x03, 0x38, 0xB1, 0x62, 0xC0, 0x2E, 0x09, 0x32, 0xC5, 0xEF, 0x21,\n0xCE, 0xD1, 0xAC, 0xAD, 0xFF, 0xEB, 0xF8, 0x77, 0x3A, 0x3F, 0x0F, 0x4E, 0x01, 0xEE, 0xB6, 0x25,\n0x60, 0x3C, 0x0B, 0xFC, 0x80, 0x0F, 0x0D, 0x79, 0xCA, 0x3A, 0x98, 0x78, 0x26, 0xB8, 0x35, 0x01,\n0x89, 0xB0, 0x01, 0xDC, 0x14, 0x02, 0x86, 0x87, 0xBF, 0x07, 0x9A, 0x05, 0xF6, 0xCB, 0x00, 0x75,\n0xE6, 0x67, 0x7E, 0x9A, 0x82, 0x34, 0xB0, 0x1F, 0x51, 0xFC, 0xCD, 0xC2, 0xFC, 0x1B, 0x4D, 0x93,\n0x07, 0xF4, 0x2D, 0xA0, 0xF2, 0x4F, 0x97, 0xC1, 0x51, 0x81, 0x47, 0x01, 0x34, 0xCB, 0x42, 0xB8,\n0x23, 0x42, 0xE9, 0x01, 0x11, 0x8B, 0x41, 0x3E, 0xBC, 0xFF, 0xA0, 0x65, 0xD0, 0x65, 0x70, 0xD8,\n0x5D, 0xCC, 0x32, 0x38, 0xFD, 0x8E, 0x85, 0x15, 0xC4, 0x10, 0xCA, 0x8F, 0xFA, 0x46, 0x3E, 0x08,\n0xB8, 0x62, 0x00, 0x6D, 0x31, 0x48, 0x7F, 0x73, 0xE8, 0xB4, 0x12, 0xB0, 0xF1, 0xD3, 0x1A, 0xB7,\n0xF4, 0xC2, 0xBF, 0xD3, 0x79, 0xCC, 0xFF, 0xED, 0xEE, 0xB2, 0x0C, 0xB8, 0x41, 0x2A, 0x38, 0x5E,\n0x07, 0x38, 0xF0, 0xAE, 0x31, 0xF1, 0x4B, 0x1B, 0x16, 0x42, 0x97, 0x3A, 0x59, 0x07, 0x01, 0x83,\n0xE8, 0x3B, 0x09, 0xFB, 0xBF, 0x4D, 0x21, 0xE0, 0x41, 0x58, 0xCA, 0xBF, 0x20, 0x01, 0x4F, 0x15,\n0x80, 0xE7, 0xFB, 0xF1, 0x77, 0x4C, 0x64, 0x9E, 0x7E, 0x14, 0x7D, 0xAB, 0xEA, 0xE7, 0xA4, 0x27,\n0x04, 0x26, 0x10, 0x38, 0x16, 0x90, 0x42, 0x68, 0x26, 0xE1, 0x6E, 0xBB, 0x30, 0xD6, 0xE6, 0xDA,\n0x3D, 0xB1, 0xB4, 0x10, 0x10, 0x15, 0x34, 0xB4, 0xF1, 0xEF, 0x87, 0x14, 0x4A, 0x40, 0x84, 0xF8,\n0x9B, 0x2C, 0x05, 0xC9, 0x1C, 0x20, 0x56, 0x90, 0x99, 0xC1, 0xDF, 0xEC, 0xA6, 0x5D, 0x8B, 0xEA,\n0x0C, 0x20, 0x8B, 0x41, 0x46, 0xAA, 0x8B, 0xBD, 0xBA, 0x07, 0x9C, 0x66, 0x00, 0x6C, 0x8A, 0xBF,\n0xC4, 0xBF, 0xF9, 0xA9, 0x86, 0xBC, 0x1A, 0xBC, 0xB2, 0xF9, 0xDD, 0x5D, 0xEA, 0x60, 0x1A, 0x10,\n0x90, 0x95, 0x20, 0x3E, 0xA6, 0x50, 0x4B, 0xBB, 0xD8, 0x7E, 0x25, 0x08, 0xEC, 0x13, 0x05, 0xD8,\n0xD7, 0x96, 0x80, 0x44, 0xDF, 0x39, 0xF4, 0x4B, 0xFC, 0xDB, 0x14, 0x02, 0x1E, 0x7C, 0x3E, 0x88,\n0x7F, 0x12, 0x87, 0x9F, 0x9D, 0x7B, 0xFC, 0x9B, 0xF7, 0x00, 0x14, 0x02, 0xB6, 0x43, 0xE0, 0xCC,\n0x9A, 0xAB, 0x91, 0xF0, 0x4F, 0xBB, 0x6A, 0x22, 0x18, 0xFE, 0xF5, 0x08, 0xEC, 0x21, 0x43, 0xE5,\n0x9F, 0x41, 0xC8, 0xBC, 0x61, 0xC7, 0x29, 0xE9, 0xF3, 0xD5, 0x1D, 0xF7, 0xF0, 0x50, 0xE9, 0xF7,\n0x5E, 0x09, 0x28, 0xA7, 0xF5, 0xB0, 0xC5, 0xC0, 0xDA, 0x99, 0xF1, 0x4B, 0xE2, 0x9E, 0x34, 0x47,\n0x2C, 0x4B, 0xB6, 0x75, 0xCB, 0xA9, 0xAB, 0x18, 0x40, 0x3E, 0x1E, 0x69, 0xD4, 0x3D, 0x01, 0x17,\n0xD3, 0x59, 0xF4, 0x69, 0x6D, 0x08, 0x40, 0xF8, 0x17, 0xF0, 0x80, 0xC2, 0xBF, 0xB6, 0x04, 0x64,\n0x2D, 0xB0, 0x8F, 0x29, 0xD4, 0xD0, 0x2E, 0xFE, 0x89, 0xD6, 0xE0, 0xFF, 0x64, 0xF3, 0x32, 0x20,\n0x20, 0xB0, 0x21, 0x00, 0xB5, 0x69, 0xF8, 0xFE, 0x6F, 0x53, 0x08, 0xF8, 0xC3, 0x50, 0xFF, 0xD7,\n0x79, 0xC0, 0x73, 0xDF, 0xFF, 0x0D, 0xF5, 0x80, 0xE3, 0x1D, 0x97, 0x6A, 0xBC, 0x55, 0x7D, 0xFE,\n0x25, 0x4D, 0xA5, 0x73, 0x2C, 0xE0, 0xE2, 0xB2, 0xA7, 0x9F, 0xB4, 0x63, 0x1B, 0xFE, 0xEA, 0x0E,\n0x0C, 0x1E, 0xB1, 0x14, 0xF8, 0x2F, 0x69, 0xAE, 0x07, 0xFC, 0x5D, 0xFC, 0x9F, 0xB6, 0x14, 0x8E,\n0x07, 0xB4, 0x87, 0x95, 0x6E, 0x59, 0x73, 0x80, 0x1D, 0x02, 0xDF, 0x48, 0xC9, 0xB6, 0xC6, 0x72,\n0x52, 0x31, 0x80, 0x1F, 0x13, 0xC0, 0x76, 0x47, 0x1C, 0x16, 0xC3, 0x4D, 0x1D, 0xFC, 0xCD, 0x5C,\n0xFC, 0x0D, 0xE5, 0x1F, 0x1E, 0xD0, 0xE1, 0x5F, 0x33, 0x02, 0x02, 0x40, 0x55, 0x04, 0x53, 0xA8,\n0x99, 0x5D, 0x5C, 0xD3, 0xED, 0xB0, 0x4E, 0xC2, 0xF3, 0x80, 0x27, 0x6B, 0x23, 0x60, 0x74, 0x11,\n0xC8, 0xA6, 0x10, 0x10, 0xFE, 0xC5, 0x56, 0x81, 0x18, 0x01, 0xB7, 0xCE, 0x5D, 0xFF, 0x67, 0x1E,\n0x70, 0x48, 0x2A, 0x78, 0xEC, 0x38, 0x15, 0x5A, 0xE8, 0x56, 0x08, 0x76, 0x3B, 0x84, 0x15, 0x16,\n0x70, 0xF9, 0xC6, 0x0C, 0xA0, 0xDE, 0x0E, 0x46, 0x98, 0x47, 0xDE, 0x57, 0xC3, 0x12, 0x20, 0xDC,\n0xB4, 0x45, 0xC6, 0xC1, 0xBD, 0x01, 0x24, 0x90, 0x7C, 0x3E, 0xB0, 0xE1, 0x2F, 0xE9, 0x66, 0x95,\n0x05, 0xB4, 0x1B, 0x02, 0x6A, 0x67, 0xAB, 0x41, 0xFA, 0x9E, 0x62, 0x68, 0xCD, 0x46, 0x1F, 0xF7,\n0xA0, 0xD6, 0xFE, 0x0D, 0x9F, 0x07, 0x67, 0x9A, 0xB0, 0x5F, 0xA8, 0xFF, 0xD3, 0xA5, 0xC0, 0x23,\n0x08, 0x98, 0x09, 0x26, 0xCE, 0x68, 0xCD, 0x06, 0xC0, 0x3B, 0xE9, 0x37, 0x4F, 0xB8, 0xFE, 0xCF,\n0x25, 0x60, 0x3C, 0x11, 0x02, 0x00, 0x55, 0x11, 0x4C, 0xA1, 0x46, 0x76, 0xB1, 0xB8, 0x21, 0x6A,\n0x43, 0x03, 0x78, 0x62, 0x7D, 0x95, 0x7E, 0xF8, 0xBF, 0xC6, 0x04, 0x4C, 0x0A, 0x3A, 0xC0, 0x97,\n0x1B, 0x43, 0xC0, 0x01, 0x05, 0x80, 0xF0, 0x4F, 0x62, 0x65, 0x3D, 0xF4, 0x7C, 0x7E, 0x4A, 0x9C,\n0xCF, 0x77, 0x5C, 0xEB, 0xE0, 0xA7, 0x82, 0xA5, 0x50, 0x70, 0x96, 0xB7, 0xBA, 0xA6, 0xCA, 0x3F,\n0x8D, 0x69, 0xEF, 0x01, 0x6B, 0x16, 0xD0, 0x90, 0xD2, 0x73, 0x05, 0xEB, 0xA5, 0xF9, 0x57, 0xE3,\n0x10, 0x37, 0xC5, 0x17, 0x75, 0xFD, 0xAA, 0x3A, 0xC0, 0x44, 0x3E, 0x6B, 0x09, 0x85, 0x4A, 0xC0,\n0x9A, 0xEC, 0xE1, 0xEC, 0x81, 0x59, 0x0F, 0x4C, 0xFD, 0x61, 0x3F, 0x26, 0x37, 0xFF, 0x27, 0x2D,\n0x1D, 0x4E, 0xB6, 0x6B, 0x06, 0xF0, 0x42, 0xC7, 0xFF, 0xFA, 0x14, 0xD4, 0x3C, 0x20, 0x67, 0xB3,\n0xAC, 0x35, 0xE2, 0xDF, 0x69, 0x4A, 0x80, 0x10, 0x78, 0x40, 0x44, 0x02, 0xF8, 0x90, 0x57, 0x55,\n0x8B, 0x54, 0x30, 0x00, 0x54, 0x45, 0x28, 0x85, 0x86, 0xE0, 0x72, 0xAD, 0x77, 0x84, 0xF6, 0x7D,\n0x60, 0x9D, 0x7F, 0x82, 0xBF, 0x35, 0x4D, 0x03, 0x6A, 0xEB, 0x62, 0x25, 0xFE, 0x36, 0x85, 0x80,\n0x43, 0x0A, 0xA0, 0x3F, 0xCB, 0x00, 0x78, 0x88, 0x07, 0x2C, 0xFC, 0xDF, 0xF9, 0xFC, 0x74, 0x28,\n0x01, 0x59, 0x42, 0x5F, 0xCD, 0x7F, 0xCC, 0xC2, 0x6F, 0xD5, 0x51, 0x92, 0xDD, 0x0B, 0x39, 0xB5,\n0x14, 0x13, 0x12, 0xA4, 0xB9, 0x96, 0xA2, 0x85, 0x86, 0x1E, 0x09, 0xE7, 0x96, 0xE4, 0x7D, 0x25,\n0x7A, 0x47, 0xA8, 0x7C, 0x32, 0xA3, 0xA6, 0xBB, 0x8A, 0x05, 0x4C, 0x07, 0x02, 0x3E, 0x6B, 0xC2,\n0xC0, 0x1B, 0xF0, 0x98, 0x45, 0x92, 0x3D, 0xA8, 0x84, 0x7D, 0x24, 0xA6, 0x44, 0x12, 0x3F, 0x85,\n0xE6, 0x5F, 0xBA, 0x4F, 0x2C, 0x36, 0x04, 0x4A, 0x48, 0x2E, 0x38, 0x33, 0x80, 0xEC, 0x3B, 0x03,\n0xD8, 0xB9, 0xE0, 0xD5, 0x1E, 0x70, 0x56, 0x34, 0x77, 0x00, 0xEC, 0xC7, 0x5C, 0xF9, 0x47, 0x9C,\n0xD7, 0xFD, 0x9F, 0xCC, 0xA7, 0x10, 0x2D, 0x08, 0x08, 0x00, 0x55, 0x8D, 0x00, 0x18, 0xBF, 0xB6,\n0xFD, 0x67, 0x82, 0xC0, 0x3E, 0xBF, 0x1E, 0x50, 0xFB, 0x3C, 0x9A, 0x10, 0xD0, 0xEC, 0x9F, 0x1E,\n0x29, 0x05, 0x9B, 0x02, 0x10, 0xB5, 0x04, 0x60, 0x7B, 0xFE, 0x11, 0xBB, 0xBB, 0xAF, 0x6A, 0x3A,\n0x9D, 0xE7, 0x71, 0x7E, 0xFA, 0xD8, 0x72, 0xC0, 0xB1, 0x62, 0x2D, 0xF8, 0x4E, 0xB5, 0xD9, 0x2F,\n0x4C, 0xA0, 0x16, 0x44, 0x63, 0x01, 0xD1, 0xE2, 0x4D, 0x4F, 0x3F, 0x76, 0xCB, 0x5B, 0xE8, 0x53,\n0x29, 0xFE, 0x34, 0x01, 0x82, 0x03, 0xC4, 0x03, 0xA2, 0x3B, 0x09, 0x60, 0x6B, 0xBA, 0xBB, 0xA9,\n0x2D, 0x08, 0xC1, 0x50, 0xDA, 0x91, 0x10, 0x10, 0xE7, 0x27, 0x61, 0x0C, 0x4C, 0xC4, 0xBB, 0xFC,\n0x38, 0x08, 0x16, 0x16, 0x5E, 0x2E, 0xEE, 0x35, 0x80, 0x93, 0x8B, 0x29, 0x4F, 0x41, 0x6F, 0x01,\n0xF1, 0x80, 0x1E, 0x00, 0x1B, 0xE4, 0x3F, 0xE0, 0x5F, 0x4E, 0xC0, 0x2D, 0x87, 0x7F, 0x0D, 0x08,\n0x08, 0x00, 0x51, 0x08, 0x53, 0x71, 0x00, 0xA2, 0xF5, 0x7F, 0x2A, 0xDC, 0x83, 0xCA, 0x01, 0xDB,\n0xF2, 0x2F, 0x9E, 0x05, 0x21, 0x01, 0xBC, 0x31, 0x16, 0x30, 0xCE, 0xBF, 0x03, 0xE3, 0x1F, 0x51,\n0xBD, 0x2B, 0xCC, 0xBC, 0x78, 0xF5, 0x27, 0x02, 0xEE, 0x85, 0xDD, 0x43, 0x05, 0x80, 0xA3, 0xF0,\n0x5B, 0x55, 0x07, 0x80, 0x6A, 0x7D, 0xA6, 0x4A, 0x40, 0xCD, 0x86, 0xEA, 0x8C, 0x19, 0xC0, 0xE0,\n0x3E, 0x58, 0x4A, 0x13, 0x10, 0x78, 0x29, 0x5E, 0x8B, 0x1A, 0x40, 0x09, 0xCD, 0xC3, 0x02, 0xA9,\n0x14, 0x78, 0xC0, 0xCC, 0xCE, 0x71, 0x37, 0x68, 0x1C, 0xA0, 0x65, 0x42, 0x7E, 0xAF, 0xCC, 0xFF,\n0x15, 0x0E, 0x30, 0x79, 0x40, 0x86, 0xDE, 0xAC, 0x45, 0x61, 0xF0, 0x4B, 0xD2, 0x5A, 0xA6, 0x01,\n0xB7, 0x31, 0x80, 0xC8, 0x26, 0x00, 0x53, 0x67, 0x16, 0x10, 0xF0, 0x81, 0x42, 0xE9, 0x8A, 0x67,\n0xB5, 0xC1, 0x02, 0x90, 0x53, 0x86, 0x00, 0x0C, 0x03, 0x0C, 0x7F, 0x65, 0x01, 0x60, 0x53, 0x02,\n0x02, 0x40, 0xE4, 0x63, 0xAA, 0xC1, 0x80, 0xD9, 0x79, 0xE0, 0x16, 0x0B, 0x40, 0x38, 0xB0, 0x63,\n0x67, 0xFE, 0xAF, 0xCD, 0x28, 0x18, 0xFF, 0x07, 0xFF, 0x74, 0x57, 0x35, 0x80, 0x9B, 0x42, 0xC0,\n0x83, 0xB0, 0xE0, 0x5F, 0x46, 0x40, 0xC7, 0xFF, 0x35, 0xF0, 0x80, 0x68, 0x16, 0x34, 0x2B, 0x52,\n0xFC, 0xAB, 0x43, 0x60, 0x92, 0x20, 0x09, 0x07, 0xD9, 0x67, 0x66, 0x98, 0x6E, 0xD1, 0x04, 0xB8,\n0xA4, 0x9E, 0x55, 0xC0, 0x12, 0x6A, 0xBF, 0x80, 0x14, 0x10, 0x2C, 0x52, 0xC1, 0x59, 0x01, 0xA0,\n0x35, 0x39, 0x95, 0x8D, 0x79, 0x40, 0x44, 0x56, 0x05, 0x03, 0x88, 0x07, 0xCC, 0x1C, 0x20, 0x3F,\n0xA4, 0x45, 0xB6, 0x24, 0xC4, 0xC8, 0xBE, 0xBD, 0x98, 0x90, 0xFF, 0xB1, 0x29, 0xC0, 0x9A, 0x07,\n0x9C, 0xBA, 0xCF, 0x2A, 0xDA, 0x89, 0xFF, 0xFE, 0x48, 0x00, 0x3B, 0xA3, 0x60, 0xFC, 0x1F, 0xE1,\n0x14, 0x44, 0xFB, 0x04, 0x04, 0x80, 0x28, 0x88, 0xA9, 0xF8, 0xB0, 0x76, 0xF8, 0x03, 0x37, 0xF3,\n0x7F, 0x27, 0xD9, 0x81, 0x33, 0xFF, 0x47, 0x0C, 0x01, 0xA0, 0xE3, 0x00, 0x01, 0x61, 0x05, 0x7F,\n0x9B, 0x42, 0xC0, 0x03, 0x14, 0xE1, 0x9F, 0x4B, 0xC0, 0x2D, 0xFC, 0x5F, 0x11, 0xE7, 0x8F, 0x5C,\n0x12, 0x32, 0xAB, 0xB4, 0x52, 0xDC, 0x0A, 0x5E, 0xE9, 0x97, 0xB6, 0xD4, 0x92, 0xCA, 0x59, 0x40,\n0x70, 0x02, 0x5D, 0x04, 0x2A, 0xCA, 0x3C, 0x75, 0x5E, 0xAC, 0x40, 0x43, 0x39, 0x05, 0x8B, 0x25,\n0x70, 0x5D, 0x02, 0x18, 0xFC, 0x41, 0xC3, 0x7B, 0x96, 0x83, 0x18, 0xF2, 0x3A, 0xB6, 0x02, 0x59,\n0x3E, 0x9C, 0x58, 0xE2, 0x28, 0xE3, 0x5F, 0x7E, 0x64, 0x4B, 0x42, 0x8C, 0xEB, 0x8B, 0xDB, 0xFE,\n0x6F, 0x8A, 0x0B, 0xC4, 0x03, 0x66, 0x14, 0x1C, 0x85, 0x9F, 0xD6, 0x78, 0x02, 0x64, 0x1F, 0xFF,\n0x97, 0x85, 0x93, 0x00, 0x7E, 0x20, 0x01, 0x5D, 0x00, 0xAA, 0xC2, 0x98, 0x0A, 0xF2, 0x2F, 0xFE,\n0xC0, 0x00, 0xB0, 0x4D, 0xFE, 0xC3, 0x9B, 0x04, 0x24, 0x5A, 0x7A, 0xC0, 0x4F, 0x6C, 0xD3, 0x06,\n0x09, 0x11, 0xFC, 0xDB, 0x18, 0x02, 0x0E, 0xE2, 0xDF, 0x6E, 0x25, 0x8A, 0x8F, 0x43, 0x3A, 0x9D,\n0xD7, 0x08, 0xB8, 0xF7, 0x08, 0x0F, 0x38, 0x0A, 0xBD, 0x55, 0x49, 0x00, 0x63, 0x7C, 0xCC, 0x06,\n0x8D, 0x48, 0x04, 0xC3, 0x3F, 0x1B, 0x4A, 0xD2, 0xB8, 0x37, 0x3E, 0xF8, 0x53, 0xFF, 0x47, 0x64,\n0x10, 0x2C, 0xEE, 0x81, 0xF0, 0x3E, 0x21, 0x0F, 0x07, 0xA8, 0x21, 0x7B, 0x5D, 0x14, 0x77, 0x57,\n0xA0, 0xEF, 0xAE, 0xF8, 0x70, 0xA6, 0x6E, 0x5F, 0xC3, 0x1F, 0x37, 0x46, 0x80, 0xEB, 0x23, 0x8D,\n0xD9, 0xD4, 0x7A, 0x52, 0xC1, 0x3C, 0x49, 0x43, 0xFF, 0x5F, 0x19, 0x3F, 0xDC, 0xFF, 0x11, 0xF6,\n0x22, 0xA9, 0xFA, 0xBF, 0x56, 0xE5, 0x80, 0x3E, 0x00, 0x5B, 0xF1, 0xCF, 0x7F, 0x60, 0xF4, 0xD8,\n0xF1, 0x2F, 0xF4, 0xFB, 0x9E, 0x63, 0x9F, 0x7F, 0x44, 0x58, 0xFE, 0x1C, 0x20, 0xBB, 0x82, 0x7F,\n0x1B, 0x43, 0xC0, 0xC1, 0x0B, 0x40, 0x88, 0x7A, 0x31, 0x0C, 0xFE, 0xAF, 0x0C, 0x3E, 0x1D, 0xCE,\n0x0F, 0xCF, 0xFF, 0xD1, 0x10, 0x0B, 0x40, 0x6C, 0xF4, 0x9B, 0x7D, 0x36, 0xF0, 0x48, 0xCA, 0x01,\n0xED, 0x86, 0xA1, 0xF8, 0x3F, 0xD1, 0x82, 0x66, 0x4B, 0x42, 0xB8, 0x33, 0x81, 0xCD, 0xFF, 0x21,\n0x1C, 0x60, 0xEA, 0xEE, 0x7E, 0xDA, 0x47, 0xB7, 0x00, 0xF8, 0x43, 0x87, 0x41, 0x95, 0xBA, 0x40,\n0xDD, 0x97, 0x0B, 0x40, 0xB0, 0x80, 0x77, 0xC2, 0x12, 0x31, 0x56, 0x83, 0x73, 0xD9, 0xE5, 0x7F,\n0x31, 0xAC, 0xEC, 0x31, 0x80, 0xB6, 0x00, 0x98, 0x21, 0xB0, 0xF4, 0xFD, 0x39, 0x4B, 0x42, 0xFC,\n0xA7, 0xB5, 0xA9, 0xFF, 0x23, 0xF4, 0x7F, 0xC8, 0xDB, 0xFE, 0xEF, 0xB3, 0x4A, 0x3C, 0xCE, 0x03,\n0x02, 0x40, 0x14, 0xC4, 0x54, 0x98, 0x7F, 0xF1, 0x07, 0x46, 0x41, 0xFE, 0xC5, 0x87, 0xC0, 0xB9,\n0x0B, 0xF4, 0xF9, 0x17, 0x57, 0xC5, 0xFF, 0x91, 0x05, 0xAE, 0xA5, 0x42, 0x5E, 0x6E, 0x0C, 0x01,\n0x07, 0x2C, 0x00, 0x39, 0x2C, 0xF8, 0x57, 0x2D, 0x88, 0x26, 0xFB, 0x57, 0x19, 0x05, 0x0F, 0xF5,\n0x80, 0x0C, 0xD4, 0x5C, 0x0F, 0xC8, 0x02, 0x10, 0x8C, 0x8F, 0x1C, 0xD9, 0x46, 0x39, 0xA0, 0xF6,\n0x4B, 0x06, 0xC0, 0x34, 0x3E, 0x75, 0xD7, 0x8A, 0x50, 0x96, 0x29, 0x94, 0x74, 0x04, 0x0E, 0x50,\n0x7A, 0xB2, 0x1F, 0xD2, 0x6E, 0x48, 0x00, 0x77, 0x5D, 0x6A, 0x78, 0xC1, 0xAC, 0x56, 0x26, 0x43,\n0x5F, 0x21, 0x1D, 0x00, 0x9B, 0x07, 0xB5, 0x9F, 0xD3, 0x7A, 0x0E, 0x92, 0xF2, 0x1B, 0xFE, 0xE7,\n0xF9, 0x5F, 0xED, 0xB5, 0xBB, 0xC0, 0x03, 0x66, 0xCF, 0x6A, 0xA5, 0xB5, 0x58, 0x00, 0x52, 0xC6,\n0xDD, 0x09, 0x40, 0xE2, 0xE1, 0x1E, 0xF0, 0xF3, 0x03, 0x0F, 0x80, 0xAA, 0x18, 0xA6, 0x82, 0xFC,\n0xF3, 0x1F, 0xD8, 0x07, 0x60, 0x23, 0xF9, 0x06, 0x90, 0x08, 0x2B, 0x9C, 0x05, 0xB6, 0x03, 0xF0,\n0xB7, 0x29, 0x04, 0x7C, 0x34, 0xFF, 0x20, 0xA0, 0xC7, 0x3F, 0x08, 0xD8, 0xC1, 0x2D, 0x16, 0x85,\n0x53, 0x99, 0x7A, 0xEF, 0x55, 0xFC, 0x9F, 0x65, 0x80, 0x75, 0x93, 0xB3, 0xFE, 0x2B, 0x32, 0x5F,\n0x66, 0x37, 0x87, 0x81, 0x77, 0x20, 0xD0, 0x0E, 0x35, 0x11, 0x92, 0x2D, 0x80, 0xCB, 0x09, 0xC5,\n0x30, 0x58, 0x1A, 0x9F, 0xF4, 0x0B, 0xFF, 0xB4, 0xBB, 0xB1, 0x91, 0xB0, 0xED, 0x28, 0x07, 0xB4,\n0x04, 0x70, 0xDD, 0x02, 0x7E, 0x5C, 0x90, 0x92, 0x92, 0xD2, 0x38, 0x53, 0x11, 0x85, 0xDB, 0xDC,\n0x1A, 0x66, 0x62, 0xFE, 0xEF, 0xCE, 0xF4, 0xA7, 0xEE, 0xB5, 0xEB, 0x3C, 0xE0, 0xAD, 0xF4, 0x6F,\n0x08, 0x80, 0xC3, 0x17, 0x80, 0x9C, 0x3B, 0x04, 0x74, 0xF8, 0xD7, 0x66, 0x49, 0x08, 0x00, 0x44,\n0x21, 0x4C, 0xC5, 0xF9, 0x87, 0xE2, 0x57, 0x86, 0xF8, 0xE7, 0xAC, 0xFE, 0x40, 0x98, 0x40, 0x0C,\n0x60, 0x2B, 0x0B, 0x98, 0x31, 0xAF, 0x32, 0x07, 0x08, 0x08, 0x01, 0xE0, 0xC6, 0x10, 0xB0, 0x11,\n0xFF, 0x20, 0x20, 0xE3, 0xDF, 0x7A, 0x9C, 0xCF, 0x1F, 0x76, 0x7F, 0xD4, 0x99, 0xD7, 0x4C, 0x9A,\n0xFF, 0xFD, 0xC8, 0x80, 0x3C, 0x17, 0xAA, 0x4B, 0x23, 0x74, 0x14, 0xAC, 0x10, 0xBC, 0x7C, 0x63,\n0x40, 0x61, 0x0C, 0x6C, 0x48, 0xA4, 0x20, 0x5A, 0xFD, 0x5F, 0xBF, 0xFE, 0x37, 0x0B, 0x88, 0xC8,\n0x47, 0x24, 0xC1, 0x3F, 0x90, 0x27, 0xBD, 0x7D, 0x2D, 0x5F, 0x12, 0xC2, 0x43, 0x80, 0xC1, 0x5C,\n0x76, 0x0B, 0xD6, 0xDB, 0x0B, 0x40, 0x2C, 0xB2, 0xE3, 0x4B, 0xB3, 0x7F, 0x13, 0xE1, 0x3F, 0xFE,\n0x37, 0xF5, 0x1C, 0xE3, 0x01, 0x59, 0x00, 0x17, 0x44, 0x60, 0x98, 0x7E, 0xC2, 0x3F, 0xE7, 0x25,\n0x50, 0x59, 0x00, 0x42, 0xB4, 0x59, 0x12, 0x02, 0x00, 0xD1, 0xDA, 0x01, 0xF8, 0xA7, 0xAB, 0x16,\n0xFE, 0x0F, 0x14, 0x72, 0x82, 0x01, 0x6C, 0x85, 0xC0, 0x68, 0x16, 0x58, 0x7B, 0xF8, 0xB7, 0x29,\n0x04, 0x1C, 0xB0, 0x00, 0xB8, 0x28, 0x80, 0xAE, 0x96, 0x03, 0xB2, 0x00, 0xA4, 0x16, 0x52, 0x0E,\n0x38, 0x90, 0x80, 0x69, 0x37, 0x8B, 0xBE, 0x59, 0x6D, 0xF6, 0x6B, 0x5A, 0x6C, 0x78, 0xC0, 0xDE,\n0x2A, 0x49, 0xC1, 0x5F, 0x06, 0x11, 0x10, 0x08, 0x0F, 0xCD, 0xFF, 0x41, 0x27, 0x04, 0x11, 0x93,\n0x8C, 0x80, 0x0C, 0x7F, 0xCD, 0x08, 0xDE, 0x90, 0x0F, 0xD6, 0x50, 0x0F, 0x08, 0xFF, 0x60, 0x9F,\n0x1E, 0x10, 0x7C, 0x48, 0xF0, 0xB1, 0xCE, 0xFF, 0xE1, 0x4E, 0x01, 0x21, 0xED, 0x92, 0xF9, 0xBF,\n0xAE, 0x02, 0xB2, 0x30, 0x81, 0xDD, 0xF9, 0xED, 0x62, 0x98, 0x99, 0xDB, 0x1A, 0x2C, 0x00, 0x29,\n0x43, 0xCA, 0x01, 0xA5, 0x15, 0x09, 0x90, 0x46, 0xE5, 0x80, 0x3E, 0x00, 0x83, 0x6E, 0x6E, 0x08,\n0xD6, 0xB8, 0xD0, 0xD3, 0xA3, 0x12, 0xC0, 0xF5, 0x03, 0xA1, 0x5F, 0x5B, 0xFE, 0x81, 0xC0, 0x7B,\n0xE6, 0x00, 0xF9, 0x72, 0xCE, 0xBF, 0x8D, 0x01, 0xE0, 0x90, 0x05, 0x20, 0x82, 0xBF, 0x15, 0xE2,\n0xFE, 0xA8, 0x3A, 0xFE, 0x75, 0x3D, 0xE0, 0x78, 0x3C, 0x74, 0x59, 0xF0, 0x28, 0xCE, 0xBF, 0x3E,\n0x01, 0x2C, 0xDD, 0x9D, 0xAD, 0x8F, 0xBE, 0x1E, 0x70, 0x5B, 0x17, 0x52, 0x00, 0x13, 0x6D, 0x25,\n0x0E, 0x75, 0x18, 0x0A, 0x9C, 0xF2, 0x30, 0xE9, 0xB1, 0xDD, 0x01, 0xBF, 0x87, 0x9F, 0xE2, 0x4F,\n0x77, 0x1A, 0x7A, 0x66, 0xA3, 0x62, 0xEE, 0x00, 0x9D, 0x59, 0x40, 0x84, 0x34, 0xFD, 0x91, 0x17,\n0x40, 0xD3, 0x72, 0x16, 0xAA, 0xFF, 0xDB, 0x16, 0xFB, 0x77, 0x5F, 0x0E, 0xDC, 0xD2, 0xC1, 0x8C,\n0x82, 0xE3, 0x00, 0x8C, 0xFB, 0x3F, 0x2D, 0x80, 0xF6, 0x5F, 0x02, 0x24, 0x80, 0xD7, 0x43, 0x40,\n0x00, 0x38, 0x5C, 0x50, 0x52, 0x9A, 0x1E, 0x34, 0x13, 0xD5, 0x30, 0x0F, 0xF1, 0x7B, 0x7D, 0xE6,\n0xF7, 0x7B, 0xE9, 0xEC, 0x18, 0x2B, 0x98, 0xBA, 0x60, 0x18, 0xDB, 0x22, 0xE2, 0xE6, 0xCF, 0x6C,\n0x88, 0x53, 0xBB, 0xEC, 0x65, 0x20, 0xD6, 0xB6, 0x28, 0x6E, 0x10, 0x2C, 0x5B, 0xF0, 0x0F, 0xA9,\n0x07, 0xD4, 0x3B, 0x60, 0xF9, 0xF1, 0x4A, 0x3D, 0x60, 0x4C, 0xE3, 0x1D, 0x5D, 0x00, 0x12, 0x7D,\n0xA3, 0x4E, 0xC5, 0xFD, 0xE0, 0xF9, 0x34, 0x0A, 0x3F, 0xD8, 0x79, 0xC0, 0x9E, 0x7F, 0x7D, 0x62,\n0x35, 0x9D, 0xD8, 0xDA, 0x32, 0xFE, 0x40, 0x76, 0x3A, 0xFE, 0xF5, 0x0D, 0xA0, 0xEC, 0xC4, 0xD4,\n0xBD, 0xEF, 0xEC, 0x5E, 0xAF, 0x1B, 0x76, 0x24, 0x84, 0xB5, 0x1C, 0x90, 0x04, 0xB0, 0xF4, 0xEC,\n0xB3, 0x60, 0x49, 0x88, 0xFD, 0x50, 0x8B, 0xEE, 0x27, 0xB3, 0x33, 0xED, 0x39, 0xED, 0x3F, 0x05,\n0x73, 0xEA, 0x05, 0xF3, 0x80, 0x11, 0x8D, 0x53, 0xEC, 0x84, 0x7F, 0x5D, 0x92, 0x00, 0xF6, 0x43,\n0x09, 0x08, 0xE8, 0x5A, 0x8E, 0x82, 0x5F, 0xA3, 0x7B, 0x01, 0xA8, 0x5C, 0x43, 0xF1, 0xB2, 0x16,\n0x5F, 0xF1, 0x2B, 0x87, 0x01, 0xD0, 0xF8, 0xC6, 0x89, 0x72, 0x0F, 0x2C, 0xDA, 0xD9, 0xD0, 0xF1,\n0xAD, 0xA7, 0xC4, 0xC8, 0x6C, 0xA4, 0xCB, 0x09, 0x61, 0x9D, 0xF9, 0xBF, 0x38, 0x01, 0xDB, 0x7B,\n0xC0, 0x14, 0x31, 0x0D, 0x5D, 0x00, 0xB7, 0x1B, 0xD0, 0xA1, 0x7C, 0x54, 0xB0, 0xDC, 0xFF, 0xA3,\n0x68, 0xC2, 0x3C, 0x3D, 0x9A, 0xF7, 0xFB, 0xAD, 0xD3, 0xF4, 0x4E, 0x89, 0x6A, 0x1C, 0xF5, 0x2A,\n0x66, 0x00, 0x99, 0xFB, 0x33, 0x13, 0x94, 0x1B, 0x41, 0x21, 0x80, 0xDD, 0x01, 0xFF, 0xCD, 0xA5,\n0x39, 0x3E, 0x8C, 0x9F, 0x46, 0xFF, 0x07, 0x7A, 0x6B, 0x98, 0x8E, 0x75, 0x5E, 0xD3, 0x51, 0x70,\n0x9F, 0xFB, 0xB0, 0xC1, 0x2E, 0xBB, 0x6C, 0x2E, 0x50, 0xEF, 0x8F, 0x6A, 0x48, 0x65, 0x5F, 0x91,\n0xD4, 0xBF, 0x14, 0x43, 0x5E, 0x3D, 0xE6, 0x07, 0xB5, 0x72, 0x40, 0xC1, 0x7B, 0x24, 0x46, 0xDD,\n0x04, 0x60, 0x48, 0x43, 0xFE, 0xB7, 0x1A, 0xEF, 0xBF, 0x4A, 0x74, 0xE3, 0x55, 0x60, 0xC7, 0x77,\n0x63, 0xAE, 0xFE, 0x2F, 0xA0, 0xC1, 0x04, 0x7C, 0x7D, 0xDB, 0x01, 0xFE, 0xF4, 0x63, 0x35, 0xBE,\n0xB9, 0x75, 0x92, 0x75, 0xFF, 0x53, 0x5C, 0x0F, 0x8A, 0x5F, 0x7F, 0xBA, 0xFE, 0x35, 0x75, 0xE9,\n0x20, 0x35, 0xBE, 0x26, 0x87, 0x7F, 0xEA, 0xB1, 0xB6, 0xEB, 0xA4, 0xAF, 0x9C, 0x26, 0x57, 0x89,\n0x7E, 0x96, 0xE3, 0x48, 0xFB, 0x79, 0x80, 0x5E, 0xBE, 0xFC, 0x39, 0x1A, 0x6B, 0x19, 0xDB, 0xFE,\n0x10, 0xD7, 0x41, 0x5C, 0x72, 0xD7, 0x17, 0x57, 0xBB, 0x29, 0x0E, 0xCF, 0xF7, 0xE7, 0x2B, 0x75,\n0xDA, 0xEF, 0xCF, 0x5F, 0xED, 0xA7, 0xF7, 0x55, 0x50, 0x7B, 0xA3, 0xD9, 0x6C, 0x2F, 0xD6, 0x66,\n0x56, 0xF3, 0x87, 0xF5, 0xEB, 0x90, 0xD7, 0x9F, 0xD8, 0x3E, 0x69, 0xB2, 0xBC, 0xEC, 0xB4, 0xD0,\n0x1E, 0x2D, 0x38, 0xD0, 0x6E, 0x52, 0x26, 0x80, 0x2B, 0x66, 0x30, 0x5D, 0xF8, 0xE1, 0x46, 0x2A,\n0x5E, 0x44, 0xEF, 0xA5, 0xB1, 0xD3, 0x9E, 0x2E, 0xE9, 0xCA, 0x0A, 0xAB, 0x57, 0x3B, 0x40, 0x69,\n0x97, 0x93, 0xC5, 0x65, 0x48, 0xCB, 0x94, 0x00, 0x89, 0xE9, 0x42, 0x9E, 0xD4, 0x51, 0xF0, 0x69,\n0x8D, 0xFF, 0xAA, 0x52, 0x01, 0x4C, 0x50, 0xFB, 0xE7, 0x9F, 0xC9, 0x6B, 0x66, 0x57, 0x5E, 0x37,\n0x0E, 0x01, 0x77, 0x87, 0x10, 0x30, 0xD3, 0x8B, 0x6F, 0xAA, 0xFA, 0xF2, 0x1B, 0x57, 0x3F, 0x49,\n0x5B, 0x97, 0x7E, 0x8A, 0xEB, 0x5D, 0x3C, 0xAE, 0xDF, 0xBE, 0xBB, 0x7E, 0xE7, 0xB4, 0x6E, 0xFB,\n0xFA, 0xAB, 0xAF, 0xBF, 0xBE, 0xF6, 0xDB, 0x77, 0xE9, 0xB2, 0xB3, 0xB3, 0x2F, 0xBE, 0x3A, 0xF3,\n0xF4, 0xDD, 0xD9, 0x59, 0xBA, 0xE8, 0xD3, 0x2F, 0xBE, 0x38, 0x0B, 0xE9, 0x8B, 0xB3, 0x30, 0xA9,\n0x12, 0xD5, 0x3E, 0x8F, 0xB5, 0xD4, 0x7D, 0x7E, 0x10, 0x8C, 0xC3, 0xF8, 0x8B, 0x8A, 0x01, 0xB0,\n0xA3, 0x74, 0x6F, 0xAC, 0xF1, 0x7E, 0x4C, 0xF3, 0xFD, 0xC4, 0xAA, 0xA0, 0xD2, 0xDB, 0x75, 0x16,\n0x8C, 0xD1, 0xF6, 0xC5, 0x3D, 0x91, 0x64, 0x47, 0xF6, 0xB5, 0xD1, 0xF6, 0x65, 0x5C, 0xBF, 0x24,\n0x36, 0xFD, 0xED, 0xE0, 0x4F, 0xAF, 0xF8, 0xE5, 0xEA, 0x43, 0x5C, 0x57, 0xC7, 0xC8, 0x79, 0xDC,\n0xA3, 0xCB, 0xB0, 0xEC, 0x5F, 0xE8, 0xC7, 0x28, 0xAE, 0xF8, 0xAF, 0x6A, 0x6F, 0x3C, 0xDF, 0x8F,\n0x49, 0x00, 0xF8, 0x99, 0xF2, 0x2D, 0xC5, 0x0A, 0xA5, 0xAB, 0x06, 0x58, 0xC0, 0xC3, 0xFC, 0x55,\n0x6E, 0x00, 0xAC, 0xE9, 0xCB, 0xAE, 0xCF, 0x23, 0xC7, 0x14, 0x17, 0x96, 0x1B, 0x5A, 0x13, 0x00,\n0x41, 0xE0, 0x75, 0xDA, 0xDC, 0xFE, 0xDD, 0x5B, 0xA1, 0xDB, 0xD7, 0x5E, 0x7B, 0x2B, 0x17, 0x09,\n0x01, 0xBF, 0x93, 0xFE, 0xBB, 0x95, 0x07, 0xD2, 0x7F, 0x05, 0xD4, 0x7C, 0xB0, 0xC5, 0xF4, 0x73,\n0x02, 0xE5, 0x00, 0x00, 0xC6, 0x11, 0x18, 0x07, 0x60, 0x78, 0x05, 0x48, 0x72, 0x77, 0x9F, 0x85,\n0x94, 0x26, 0x01, 0xB7, 0xCE, 0xF7, 0x83, 0x08, 0x1C, 0x8F, 0x83, 0x04, 0x1C, 0x0D, 0xD3, 0x76,\n0x29, 0x83, 0xA0, 0x1E, 0xF5, 0x9A, 0x4C, 0x26, 0x97, 0x41, 0xAC, 0x1C, 0x1D, 0x1D, 0x29, 0xFE,\n0xFE, 0x76, 0x22, 0xE9, 0xEA, 0xEA, 0x4A, 0x2C, 0xA0, 0xAF, 0x74, 0x55, 0xBA, 0xF6, 0xCE, 0x03,\n0x54, 0x1F, 0xF7, 0x68, 0x19, 0x26, 0xE0, 0x64, 0xB2, 0x1D, 0xD4, 0x08, 0x35, 0x24, 0xE0, 0x78,\n0x1C, 0x25, 0xE0, 0x7C, 0x4B, 0x3F, 0x04, 0xD3, 0x8A, 0x0B, 0x56, 0x29, 0xBD, 0x02, 0x0F, 0x82,\n0x0C, 0xFC, 0xFC, 0x2E, 0x00, 0x7F, 0x2A, 0x22, 0xA2, 0x1F, 0xB9, 0x7E, 0x38, 0xD9, 0xFC, 0x10,\n0xFC, 0x0D, 0x22, 0xE0, 0xDB, 0xB7, 0x3F, 0x49, 0xBC, 0xBB, 0xDB, 0xEB, 0x4E, 0xE3, 0x3A, 0x9D,\n0xC8, 0xEE, 0xED, 0xD7, 0x62, 0x02, 0x57, 0xB5, 0xEB, 0x77, 0x72, 0xD1, 0x57, 0xA9, 0x7D, 0x95,\n0x9A, 0x76, 0xF5, 0x03, 0xD1, 0x59, 0x6A, 0x03, 0x08, 0x18, 0x8D, 0xD7, 0x5F, 0x84, 0xC7, 0xB5,\n0xA9, 0x05, 0x04, 0x01, 0x83, 0x11, 0xE6, 0xDF, 0x41, 0x88, 0x80, 0x32, 0x05, 0xB8, 0xB5, 0x35,\n0x0F, 0xF2, 0x2F, 0x29, 0x68, 0x2A, 0x06, 0x0A, 0x8B, 0x43, 0x94, 0x0E, 0x70, 0x92, 0x14, 0x1C,\n0x55, 0x26, 0x00, 0x2E, 0x5D, 0x07, 0xA8, 0xF4, 0xBA, 0x12, 0x7D, 0xF8, 0xE3, 0x46, 0x00, 0xE7,\n0x35, 0xBD, 0x36, 0x7F, 0x80, 0xDA, 0xE3, 0xEA, 0x4F, 0x10, 0xE4, 0x5F, 0x52, 0xCC, 0x00, 0x8E,\n0x06, 0x2A, 0xCC, 0xBF, 0x71, 0x98, 0x7F, 0x5A, 0x04, 0x18, 0xD0, 0xA1, 0xE8, 0x60, 0xAD, 0x00,\n0x2C, 0x6D, 0x1D, 0x57, 0xB7, 0x26, 0x20, 0x11, 0x97, 0x42, 0xCE, 0x10, 0x77, 0xEB, 0xB8, 0x3B,\n0xB8, 0xEE, 0x81, 0x78, 0xFD, 0x56, 0x4F, 0xBE, 0x4E, 0x2D, 0x45, 0x72, 0x7A, 0xD7, 0xF7, 0xF5,\n0x5F, 0xA7, 0x2E, 0xED, 0xC4, 0x01, 0x7E, 0x15, 0xD0, 0x77, 0xDA, 0x35, 0x27, 0xE0, 0xEB, 0xD4,\n0xCE, 0x42, 0xF4, 0x93, 0x18, 0x44, 0xC0, 0x36, 0x00, 0x84, 0x7F, 0x10, 0xD0, 0xF1, 0x7F, 0x52,\n0xD7, 0x25, 0x1E, 0x30, 0xA0, 0xB1, 0xAA, 0x25, 0xFF, 0x90, 0xEF, 0x00, 0x47, 0xDB, 0x13, 0x55,\n0xA2, 0x5B, 0xC4, 0x00, 0x26, 0x02, 0x2D, 0x43, 0x0E, 0x30, 0x21, 0x0D, 0x0F, 0x58, 0xED, 0x53,\n0xFB, 0x47, 0xF8, 0x27, 0x8A, 0x38, 0xC0, 0x23, 0xD5, 0x32, 0xCA, 0xBF, 0x90, 0x07, 0xEC, 0x4A,\n0x05, 0x03, 0x1D, 0x0A, 0xF1, 0x4F, 0x15, 0xE4, 0x9F, 0x12, 0x70, 0x37, 0xC4, 0xBF, 0xA8, 0x05,\n0xFC, 0xDC, 0x05, 0x60, 0x9D, 0x7E, 0xA5, 0xB8, 0x7A, 0x2D, 0x00, 0x94, 0x16, 0x97, 0xF2, 0xCE,\n0x8C, 0x5F, 0x0F, 0x3E, 0x3D, 0xE2, 0x4B, 0xA9, 0x4F, 0x0C, 0xEC, 0x50, 0xF7, 0xD6, 0xAC, 0x60,\n0xD9, 0xA7, 0x7D, 0xB2, 0x7F, 0xE9, 0x58, 0x86, 0xB7, 0xAE, 0xCE, 0x04, 0x81, 0xC3, 0x3C, 0x60,\n0xC8, 0xFE, 0xA5, 0x26, 0xC3, 0xE5, 0x1F, 0x3E, 0x75, 0x5B, 0x17, 0x21, 0xFA, 0xB5, 0xF7, 0x80,\n0xE9, 0x75, 0xD7, 0x2B, 0xCA, 0xBF, 0x90, 0x07, 0x1C, 0xF7, 0x6A, 0xC9, 0x3F, 0xE4, 0x3B, 0xC0,\n0x49, 0xAF, 0x88, 0xFF, 0xEB, 0x0C, 0xD8, 0x91, 0x99, 0xB4, 0xDA, 0xA6, 0xF8, 0xFB, 0x5D, 0xA9,\n0xD6, 0xA3, 0xEE, 0x86, 0x7D, 0x76, 0x2C, 0xBD, 0x5C, 0x28, 0xD2, 0xBF, 0x4B, 0x57, 0x6C, 0x49,\n0xFA, 0xED, 0x13, 0x05, 0x83, 0xFC, 0x93, 0xAE, 0xA5, 0xFF, 0x43, 0x21, 0xFE, 0xA9, 0x62, 0xFC,\n0x53, 0xF9, 0x1E, 0xF0, 0xD0, 0xD4, 0x18, 0x80, 0xC0, 0xAF, 0xB5, 0x7C, 0xF2, 0xF5, 0x31, 0x70,\n0x10, 0x0C, 0xF6, 0x94, 0x79, 0xD7, 0x76, 0xA4, 0xF1, 0xD3, 0xBB, 0x44, 0x36, 0xC1, 0x20, 0x16,\n0xB0, 0x62, 0x02, 0x53, 0xA7, 0xF6, 0x4F, 0x4E, 0x7D, 0xFF, 0x27, 0x4D, 0xB7, 0x86, 0x00, 0x7C,\n0x2D, 0xA1, 0x26, 0x50, 0xAC, 0x9D, 0xD3, 0x86, 0x12, 0xB0, 0x31, 0x00, 0x3F, 0xCA, 0xAD, 0x83,\n0x96, 0xFF, 0xD0, 0x3B, 0xCD, 0x7D, 0xFE, 0x99, 0x1A, 0xF2, 0x0F, 0xB9, 0x0E, 0x70, 0x62, 0xF2,\n0x09, 0x28, 0xEC, 0x53, 0x2D, 0xCD, 0xA4, 0x15, 0x9B, 0x79, 0xB7, 0x0E, 0x7F, 0x82, 0xC1, 0x0F,\n0x7F, 0x24, 0xCA, 0x81, 0x3E, 0x8E, 0xF5, 0x20, 0x19, 0xC0, 0x8F, 0x57, 0x0A, 0x02, 0x71, 0x7F,\n0xEC, 0xF9, 0xE2, 0x51, 0x92, 0x5A, 0xD0, 0xA3, 0x00, 0xFF, 0x4C, 0x17, 0x81, 0x09, 0xC0, 0xA8,\n0xFF, 0x43, 0x3E, 0xFF, 0xC2, 0x04, 0x34, 0xFE, 0xC9, 0xAD, 0x60, 0x7C, 0xFE, 0x45, 0x3D, 0xE0,\n0xE7, 0x25, 0x00, 0x5D, 0xFE, 0xF9, 0x7A, 0x56, 0xA3, 0xE0, 0xCE, 0xE8, 0x49, 0xA7, 0x81, 0xF7,\n0xB3, 0x9D, 0x80, 0x52, 0x18, 0x57, 0x31, 0x81, 0x46, 0xBF, 0xAE, 0xF7, 0x2D, 0xE0, 0x59, 0x0A,\n0x69, 0xCD, 0x09, 0xD8, 0x9B, 0x40, 0x7F, 0x04, 0x4C, 0x04, 0xF9, 0xD7, 0x84, 0x80, 0xF8, 0x3F,\n0xB4, 0xDA, 0xFF, 0xC9, 0x04, 0x60, 0xAF, 0x57, 0x73, 0x8F, 0x7F, 0x68, 0x18, 0x00, 0xA7, 0xC1,\n0x6E, 0xB5, 0x03, 0x9C, 0x20, 0x2F, 0x13, 0x92, 0xB8, 0xA3, 0xF0, 0x5B, 0x0A, 0x86, 0x92, 0xEE,\n0x83, 0x94, 0x19, 0x40, 0xA4, 0xA8, 0x83, 0x78, 0xDA, 0xD8, 0xFE, 0xB9, 0xD1, 0x8B, 0x18, 0x04,\n0x63, 0x01, 0xCB, 0x7D, 0xFA, 0xE6, 0x29, 0x3A, 0x45, 0xF8, 0x67, 0x1E, 0xD0, 0x33, 0x80, 0xD3,\n0xF6, 0x16, 0x70, 0x6F, 0x8C, 0x3C, 0xFE, 0x01, 0x40, 0xB9, 0x19, 0x6A, 0x5D, 0x79, 0xFD, 0x95,\n0xC7, 0x3F, 0xDF, 0x01, 0x56, 0x15, 0xCA, 0xED, 0xB6, 0x07, 0xE0, 0x20, 0x02, 0xF6, 0x49, 0x0F,\n0x9B, 0x06, 0xB4, 0xD6, 0x99, 0x40, 0xD1, 0xB5, 0xB6, 0x74, 0x5A, 0x77, 0x80, 0xFA, 0x27, 0xB7,\n0x18, 0x78, 0x1D, 0x99, 0x00, 0x94, 0xD6, 0x6C, 0x10, 0x8C, 0x03, 0xD4, 0xF6, 0xE9, 0x0F, 0xAB,\n0xDA, 0x0F, 0x83, 0x00, 0x68, 0x5B, 0x33, 0x02, 0xDE, 0x29, 0xF4, 0x73, 0xF9, 0x07, 0x01, 0x77,\n0x1C, 0xFE, 0xA1, 0x86, 0x06, 0x10, 0xAD, 0x74, 0x80, 0x13, 0xE4, 0x79, 0x40, 0x83, 0x5F, 0x52,\n0xEA, 0x95, 0x48, 0x39, 0xA4, 0x38, 0xED, 0xC7, 0xBF, 0xE6, 0x01, 0xFF, 0x51, 0xF6, 0x81, 0xC0,\n0x6C, 0x77, 0x75, 0x5B, 0xC6, 0xD1, 0xE2, 0x91, 0xA5, 0x97, 0x6F, 0xAB, 0x0C, 0x56, 0x1F, 0xE8,\n0x02, 0x10, 0xB5, 0xF3, 0x7F, 0x33, 0x69, 0xDA, 0x8D, 0x5C, 0xFE, 0x21, 0x97, 0x7F, 0x3E, 0x01,\n0xE1, 0x1F, 0x1E, 0x30, 0xC6, 0x3F, 0xE2, 0x45, 0x84, 0x7F, 0x0E, 0xF5, 0x7E, 0x7C, 0x06, 0x16,\n0xF0, 0xAD, 0x74, 0x18, 0x40, 0xB1, 0x7D, 0x24, 0x41, 0x52, 0x2F, 0x50, 0x34, 0x5F, 0x28, 0x0C,\n0x0C, 0x3A, 0xC0, 0x74, 0x1E, 0x99, 0x00, 0x1C, 0x6E, 0x01, 0x1D, 0xFE, 0x99, 0x03, 0x94, 0x7D,\n0x6D, 0xE8, 0x2B, 0xF8, 0x13, 0xEE, 0x11, 0x51, 0xFE, 0xB5, 0xF3, 0x80, 0x87, 0x51, 0x02, 0xF6,\n0xFC, 0x43, 0x1E, 0xFF, 0xD0, 0x5E, 0x80, 0x7F, 0xC3, 0x3D, 0xE0, 0xAA, 0x3A, 0xC0, 0xC9, 0x65,\n0x94, 0x80, 0x32, 0xF0, 0xC4, 0x01, 0x2E, 0xEF, 0xB3, 0x80, 0x76, 0x7A, 0x95, 0x4B, 0xF2, 0x1C,\n0xF9, 0xBC, 0x1F, 0x66, 0xF0, 0x5F, 0x2E, 0x53, 0x68, 0xE6, 0x06, 0x90, 0x47, 0x95, 0xBE, 0x43,\n0xEF, 0xF2, 0xB8, 0xFF, 0x11, 0x82, 0xF8, 0x93, 0x93, 0x16, 0x05, 0x80, 0x53, 0xC1, 0xDE, 0x6D,\n0xAD, 0x2C, 0x00, 0xCC, 0xE5, 0xF0, 0x0F, 0x41, 0xC0, 0x0A, 0xFF, 0x90, 0xC3, 0x3F, 0xD7, 0x01,\n0x3E, 0x58, 0x3F, 0x3E, 0x39, 0x01, 0xFF, 0x63, 0xEE, 0x0C, 0x5A, 0x23, 0x29, 0xA2, 0x38, 0xEE,\n0x41, 0x6F, 0x12, 0xB2, 0x84, 0x98, 0xCC, 0x41, 0x12, 0x58, 0x30, 0x83, 0xC2, 0xCA, 0x2E, 0x12,\n0xBD, 0x0E, 0xE8, 0x6D, 0x20, 0x01, 0x8F, 0x8E, 0x7B, 0x13, 0x8C, 0x48, 0xD6, 0xAF, 0x90, 0x53,\n0x08, 0x7A, 0x18, 0x08, 0x7B, 0xD9, 0x80, 0x0C, 0x18, 0x44, 0xD8, 0x8B, 0xE2, 0x7E, 0x40, 0xEB,\n0xBD, 0xEE, 0x97, 0xDF, 0xD6, 0x54, 0xAA, 0xDF, 0xEB, 0xA4, 0x34, 0xFE, 0x5F, 0x75, 0x75, 0xF5,\n0x6C, 0xCC, 0x64, 0xD7, 0xD9, 0xDF, 0xFE, 0xAB, 0xDE, 0xAB, 0xEE, 0xC4, 0x3C, 0xA2, 0xB7, 0x7D,\n0x76, 0xDD, 0x25, 0x80, 0xED, 0xD0, 0x49, 0xF1, 0x80, 0x03, 0x84, 0x7E, 0xD2, 0xA7, 0x16, 0x58,\n0x00, 0x54, 0xFC, 0x8D, 0x4A, 0x05, 0x0F, 0xF3, 0x0F, 0x07, 0x38, 0xE4, 0x01, 0x8D, 0x7F, 0x44,\n0x98, 0x7F, 0x6D, 0x08, 0x58, 0x6E, 0xF6, 0x70, 0xFC, 0x1F, 0x3A, 0xF0, 0xF9, 0xC7, 0x3E, 0x8F,\n0x20, 0xFF, 0xB8, 0x0E, 0xA8, 0xEE, 0x00, 0xA7, 0xEB, 0x1A, 0xF0, 0x7F, 0xA7, 0xEA, 0xC0, 0xD2,\n0xD1, 0xF7, 0x2C, 0xFA, 0xAD, 0x01, 0x4B, 0x50, 0x96, 0xE9, 0xCD, 0x5F, 0x39, 0xF7, 0xAC, 0x27,\n0x01, 0x8C, 0x4A, 0x03, 0x68, 0xDD, 0xA5, 0xB1, 0xF7, 0xB8, 0x97, 0x0B, 0x40, 0xB4, 0x39, 0xE0,\n0xFF, 0x0E, 0xC7, 0xE5, 0x7F, 0xB5, 0xD3, 0xE6, 0xFB, 0x3F, 0x9F, 0x80, 0x67, 0x1B, 0x88, 0x54,\n0xB0, 0xC3, 0x3F, 0x97, 0x80, 0xDB, 0xBE, 0x03, 0x0C, 0xE8, 0xA3, 0x3A, 0xF8, 0x1E, 0x9C, 0x80,\n0x49, 0x1D, 0xDC, 0x24, 0xBA, 0xB3, 0x36, 0x19, 0x4A, 0xCF, 0x21, 0x33, 0xE5, 0x7A, 0x22, 0x18,\n0x03, 0x98, 0x3A, 0x39, 0x57, 0xA4, 0xD6, 0x0F, 0x17, 0xD8, 0x6A, 0x16, 0x7C, 0x94, 0x39, 0xC0,\n0xBA, 0x07, 0x64, 0xFE, 0x4B, 0x38, 0xFC, 0x6B, 0xEC, 0x01, 0x67, 0xA5, 0x86, 0x0A, 0x00, 0x73,\n0x9D, 0x79, 0x00, 0x44, 0x0E, 0xFF, 0x1A, 0x78, 0x40, 0x91, 0x8D, 0xA6, 0x61, 0x00, 0x5E, 0xF6,\n0xE0, 0x91, 0x44, 0x70, 0x3F, 0xC2, 0x01, 0x4A, 0x40, 0xAC, 0xAB, 0x12, 0x6A, 0x69, 0x12, 0xFC,\n0x37, 0xCB, 0x7E, 0xD2, 0x17, 0xF3, 0x5F, 0x12, 0x21, 0xE4, 0x53, 0x80, 0x6B, 0xD2, 0x65, 0xEF,\n0x3F, 0x39, 0x8E, 0x83, 0xFC, 0x93, 0x82, 0xE8, 0xFB, 0xFA, 0x3F, 0xB0, 0x97, 0x0E, 0x93, 0x9B,\n0x00, 0x41, 0x4E, 0x02, 0x38, 0x23, 0xE0, 0xCE, 0x70, 0x02, 0x04, 0x55, 0xF9, 0xE7, 0x3B, 0x40,\n0x47, 0xAD, 0xB3, 0xC1, 0xDF, 0x37, 0x45, 0xE0, 0x89, 0x9D, 0x56, 0x7D, 0xE1, 0x1F, 0xA5, 0x80,\n0x0A, 0x3D, 0x43, 0xA0, 0x4C, 0x7F, 0x95, 0x88, 0xD7, 0xAB, 0xDB, 0x1D, 0xA0, 0xD2, 0x4F, 0xE1,\n0x27, 0x67, 0x6D, 0x03, 0xFE, 0x2F, 0x4B, 0x03, 0x37, 0x21, 0xE0, 0x51, 0xEE, 0x00, 0x87, 0x3C,\n0xE0, 0x18, 0x00, 0x6E, 0xB7, 0xF7, 0x80, 0x33, 0x84, 0x1C, 0xFE, 0xF9, 0x04, 0xAC, 0xEC, 0xF5,\n0xAD, 0xF0, 0xAF, 0x8D, 0x07, 0xC4, 0x01, 0x5E, 0xC0, 0x3F, 0x37, 0x13, 0xD2, 0xB9, 0xBE, 0xB7,\n0x21, 0x94, 0xDA, 0xE9, 0x0D, 0x9C, 0x20, 0x16, 0xFE, 0x2F, 0x53, 0x96, 0xFF, 0x55, 0x08, 0xA6,\n0xEE, 0x67, 0xE1, 0x5F, 0x89, 0x40, 0x8C, 0x9F, 0xC8, 0x0C, 0x60, 0x47, 0x60, 0x85, 0x6F, 0x7F,\n0x24, 0x79, 0xFC, 0x43, 0x03, 0xFE, 0x4F, 0xE5, 0xFB, 0xBF, 0xF9, 0x2D, 0x30, 0x74, 0xF9, 0x87,\n0x16, 0x21, 0xFE, 0xD5, 0x0B, 0xA2, 0x67, 0x08, 0x55, 0xF8, 0xE7, 0x3B, 0xC0, 0xF1, 0x6A, 0x8F,\n0x40, 0xA7, 0x1C, 0xD0, 0x87, 0xA0, 0x15, 0xFE, 0x51, 0x16, 0xA8, 0x76, 0xCF, 0xE6, 0xBE, 0x9D,\n0x05, 0xD4, 0xF3, 0xAA, 0x70, 0x80, 0x29, 0xB0, 0x7D, 0xDD, 0x54, 0x58, 0x5B, 0xC5, 0x03, 0xBE,\n0x28, 0x2C, 0xA0, 0xB4, 0xFB, 0x02, 0xF0, 0xA8, 0x70, 0x80, 0x12, 0x9E, 0xFB, 0x23, 0x1C, 0xFE,\n0x35, 0xF4, 0x80, 0xB3, 0x42, 0x95, 0x82, 0xE8, 0x1D, 0xF8, 0x97, 0x69, 0xE1, 0xF1, 0x0F, 0xF9,\n0xFC, 0x43, 0xE1, 0xC9, 0xDB, 0x45, 0xE1, 0x00, 0x6B, 0xFC, 0xDB, 0xAA, 0x16, 0x00, 0x9E, 0x5E,\n0x1E, 0x33, 0x0B, 0x7D, 0xAE, 0x63, 0x0C, 0xA0, 0x0E, 0x44, 0x57, 0x08, 0xB1, 0x25, 0x44, 0x3B,\n0x53, 0xE5, 0x6B, 0x31, 0x7E, 0x58, 0x4B, 0x79, 0xD7, 0x53, 0x79, 0x5B, 0xDF, 0x03, 0x4E, 0x4B,\n0xA5, 0xD7, 0xEA, 0x05, 0x80, 0x7E, 0x12, 0x18, 0x06, 0x1A, 0xF9, 0x4C, 0x1E, 0xFF, 0x90, 0xC7,\n0x3F, 0x84, 0x07, 0xAC, 0xF1, 0x0F, 0x55, 0xF8, 0xE7, 0x39, 0xC0, 0xF1, 0xFA, 0x8E, 0x9E, 0xF3,\n0xC3, 0xCC, 0x82, 0x4F, 0x18, 0x74, 0x5B, 0x3F, 0xA4, 0xE7, 0xA2, 0xA7, 0x9F, 0x2D, 0x02, 0x5A,\n0x55, 0xCC, 0xFA, 0xEA, 0x1F, 0x13, 0xE0, 0xDE, 0x01, 0x4A, 0xC7, 0x42, 0x60, 0xCD, 0xFF, 0x61,\n0x01, 0x1B, 0x6C, 0x09, 0xC1, 0x00, 0x76, 0x26, 0xB0, 0xE6, 0x01, 0xAB, 0xE1, 0xF2, 0x8F, 0x83,\n0xB2, 0x28, 0x37, 0x5C, 0xFE, 0x41, 0xC0, 0xD2, 0xFF, 0xF1, 0x29, 0xE6, 0xA8, 0x10, 0x70, 0x52,\n0x51, 0x98, 0x7F, 0xBC, 0x1E, 0xF8, 0xDB, 0x5B, 0x38, 0x40, 0xF8, 0x57, 0x10, 0xB0, 0xE0, 0xCA,\n0x71, 0x2F, 0x61, 0x0E, 0x06, 0xAC, 0x27, 0xA0, 0xD1, 0x0A, 0x03, 0x88, 0x50, 0x36, 0xF5, 0x95,\n0xF6, 0x33, 0x05, 0x30, 0x88, 0x59, 0xB0, 0x04, 0xDF, 0x58, 0xDF, 0x5C, 0xDF, 0x97, 0xB7, 0x57,\n0x2A, 0x7B, 0xFC, 0x43, 0xF7, 0xF0, 0x7F, 0x68, 0x6E, 0x67, 0x6B, 0x1E, 0xFF, 0x50, 0x95, 0x7F,\n0x7C, 0x54, 0xEA, 0x1E, 0x70, 0x56, 0xD3, 0x08, 0xFE, 0xE1, 0x00, 0x7D, 0xFD, 0xFB, 0x15, 0xD1,\n0xF7, 0xDA, 0x12, 0x72, 0xD2, 0x63, 0x90, 0xED, 0x20, 0xEC, 0x08, 0x91, 0xA6, 0x63, 0x1C, 0xA0,\n0xBC, 0xA6, 0xC0, 0xC3, 0xFE, 0xD9, 0xFC, 0x17, 0x07, 0x98, 0x46, 0xA9, 0x97, 0xAF, 0xA9, 0x17,\n0x00, 0xE2, 0x02, 0xEF, 0xB0, 0x25, 0xA4, 0xC6, 0x3F, 0x4C, 0x60, 0xC5, 0x03, 0xEE, 0x8D, 0x21,\n0xE0, 0x76, 0xE5, 0xF0, 0xB9, 0x47, 0xB8, 0x00, 0x44, 0x85, 0xFF, 0xAB, 0x6A, 0x11, 0xE5, 0x5F,\n0x79, 0x63, 0x04, 0x1F, 0x70, 0xF5, 0x0E, 0xAD, 0x3B, 0xC0, 0x2A, 0x28, 0xA6, 0xCB, 0xCB, 0x5A,\n0x01, 0xA0, 0x1E, 0x4A, 0x22, 0xB5, 0x83, 0x6C, 0x8A, 0xEB, 0x49, 0x05, 0xFE, 0x4A, 0x31, 0xFB,\n0xED, 0xCE, 0xF0, 0xAF, 0xD0, 0xF3, 0x75, 0x07, 0x08, 0xF0, 0x32, 0x03, 0x98, 0x14, 0xE6, 0xDF,\n0xB2, 0x5C, 0x07, 0xDC, 0x8C, 0xCA, 0x6A, 0x5F, 0x60, 0x1F, 0xF2, 0xF8, 0x87, 0x2A, 0xFC, 0x8B,\n0x78, 0xC0, 0x59, 0x5D, 0x05, 0xFF, 0x9A, 0x39, 0xC0, 0x8F, 0x1A, 0x24, 0x81, 0x1B, 0x5A, 0x40,\n0xD8, 0xC7, 0x10, 0x0B, 0xA8, 0x20, 0x54, 0xD6, 0xA9, 0x07, 0xEC, 0x1D, 0xA0, 0xC8, 0x26, 0xC3,\n0x6F, 0x6D, 0x0A, 0xD6, 0x50, 0xEC, 0xF5, 0x1C, 0xB4, 0x49, 0x30, 0x0E, 0x10, 0x89, 0xD1, 0x2B,\n0x5D, 0xA0, 0x51, 0xB0, 0x19, 0x00, 0xE1, 0x5F, 0xE1, 0x01, 0x89, 0xBB, 0x03, 0xF0, 0x5E, 0xDB,\n0x82, 0x07, 0x3E, 0x7D, 0x3B, 0x85, 0xFF, 0xAB, 0xCA, 0xE5, 0x1F, 0x1A, 0x81, 0xBF, 0x43, 0xDF,\n0xFF, 0x59, 0x9F, 0x3B, 0x40, 0x65, 0x42, 0x45, 0xD5, 0x02, 0x40, 0x33, 0x62, 0xDA, 0x29, 0x96,\n0x58, 0xA9, 0xD3, 0x1E, 0x88, 0x21, 0xB6, 0x84, 0x50, 0x0B, 0xC3, 0x06, 0x90, 0x52, 0xE7, 0x29,\n0xF2, 0x0C, 0x88, 0xBD, 0x6B, 0xD2, 0xA5, 0xE4, 0xA2, 0x7B, 0x04, 0xAA, 0x25, 0xAD, 0xF0, 0xCF,\n0xF5, 0x80, 0xF0, 0xEF, 0x30, 0xBE, 0xFF, 0x03, 0x31, 0x1B, 0x2E, 0xF8, 0x17, 0x25, 0xE0, 0xAD,\n0xE4, 0xB3, 0x2D, 0x21, 0x3B, 0x0E, 0xFF, 0x6A, 0xE5, 0x80, 0x43, 0x33, 0x1D, 0x03, 0xE0, 0x03,\n0xC9, 0x31, 0x80, 0x84, 0xA3, 0x93, 0xFE, 0x20, 0x13, 0x42, 0x06, 0x18, 0x27, 0x28, 0x87, 0xCD,\n0x86, 0x15, 0x8C, 0x2B, 0xB9, 0xC4, 0x01, 0xF6, 0xDE, 0x8F, 0x1C, 0x70, 0x1A, 0x98, 0x03, 0x5C,\n0x43, 0xE0, 0x0B, 0x5B, 0xF6, 0x2B, 0xFA, 0x7B, 0x59, 0xC0, 0xA3, 0x81, 0x88, 0x19, 0x40, 0xFD,\n0xF5, 0x38, 0x01, 0x47, 0x5B, 0x40, 0x36, 0x80, 0xD4, 0xB5, 0x53, 0x2E, 0x00, 0x32, 0x99, 0xC9,\n0x2F, 0xF6, 0xD1, 0x02, 0xFE, 0xB9, 0x1E, 0x30, 0x36, 0xC9, 0xAD, 0x77, 0xDA, 0xB3, 0x0E, 0x48,\n0xFE, 0xA3, 0x2E, 0x3C, 0x20, 0xFE, 0x4F, 0xB3, 0xBF, 0x7D, 0x06, 0x38, 0x9B, 0x86, 0x66, 0x06,\n0x10, 0xAA, 0x55, 0x3C, 0x20, 0x1B, 0x40, 0x06, 0x95, 0x39, 0x40, 0x9D, 0xF6, 0xF6, 0x6F, 0x0E,\n0x0C, 0x8D, 0xCA, 0x0E, 0xFF, 0x6A, 0xE5, 0x80, 0x14, 0xC0, 0xF8, 0x7F, 0xB8, 0xE0, 0x0E, 0xFB,\n0xC7, 0x39, 0xE7, 0x5F, 0x98, 0x80, 0x7C, 0x54, 0x10, 0x62, 0x16, 0x4C, 0x01, 0x4C, 0x45, 0xA3,\n0x1D, 0x60, 0x5C, 0xB8, 0x40, 0xAC, 0xDF, 0x83, 0x2E, 0x03, 0x9E, 0xAC, 0x0D, 0x99, 0xF5, 0x92,\n0x01, 0x66, 0x01, 0x50, 0x5E, 0x55, 0xF8, 0xF5, 0xDE, 0x10, 0x07, 0xC8, 0xEA, 0x9F, 0x74, 0x76,\n0x09, 0x02, 0x51, 0x0F, 0xBB, 0x0A, 0xFF, 0xEE, 0x6A, 0x01, 0x8F, 0x86, 0x63, 0xCF, 0x31, 0x80,\n0x84, 0x83, 0xBF, 0x06, 0x89, 0x10, 0xE7, 0xC3, 0x07, 0x01, 0xD9, 0x00, 0x9C, 0x2F, 0x03, 0x72,\n0xE5, 0xF2, 0x0F, 0x85, 0xF8, 0x87, 0x62, 0x90, 0x7C, 0xDB, 0x01, 0x2E, 0x1D, 0x02, 0xA2, 0x63,\n0xD2, 0xAF, 0x2A, 0xA6, 0xC1, 0xFD, 0x08, 0x03, 0x78, 0x35, 0xAC, 0xF3, 0xBF, 0xDF, 0xCA, 0x05,\n0x0F, 0x7E, 0xA1, 0x24, 0x42, 0x70, 0x80, 0xEA, 0xFB, 0x44, 0x7D, 0xEA, 0xC5, 0x68, 0x78, 0xDA,\n0xBD, 0xE4, 0xF2, 0x0F, 0x6D, 0xA1, 0xE8, 0x3F, 0x22, 0xE0, 0x8E, 0xB1, 0x36, 0xC6, 0x68, 0x77,\n0x12, 0x26, 0x60, 0xFD, 0xA3, 0xC2, 0x96, 0x10, 0xF8, 0x17, 0xF5, 0x80, 0xDB, 0x3E, 0x00, 0x91,\n0x4F, 0xBF, 0x26, 0x6A, 0x3F, 0x0B, 0x96, 0x06, 0x04, 0xC9, 0x00, 0x9F, 0xAC, 0xD2, 0x58, 0xF0,\n0xD7, 0x13, 0x4F, 0xD4, 0x53, 0xD1, 0x12, 0x21, 0xE9, 0xD0, 0xB8, 0xCE, 0x1D, 0x20, 0x7D, 0xC7,\n0xC5, 0x75, 0x02, 0x96, 0xEC, 0xE3, 0xD4, 0x90, 0x80, 0x84, 0x9B, 0x02, 0x26, 0xD0, 0xF6, 0xBF,\n0x41, 0xC0, 0x59, 0x90, 0x80, 0xF8, 0xBF, 0xAA, 0x09, 0x3C, 0x60, 0xFE, 0xEB, 0x69, 0x77, 0x04,\n0x00, 0xE3, 0xD3, 0x37, 0xB3, 0x80, 0x9B, 0x53, 0x57, 0xF8, 0xBF, 0xBE, 0x02, 0xC6, 0x16, 0x01,\n0x2D, 0x1F, 0xD1, 0x8F, 0xD2, 0xC0, 0x38, 0xC5, 0x06, 0xB8, 0x9A, 0x64, 0x4F, 0x9C, 0xFA, 0x3F,\n0xF8, 0x57, 0x45, 0xA0, 0x71, 0x55, 0xF0, 0x67, 0x6F, 0xAE, 0x10, 0x46, 0xF6, 0x4A, 0xC9, 0x3F,\n0xDF, 0x03, 0xE6, 0x09, 0x90, 0x61, 0xCD, 0x39, 0xE5, 0xE4, 0xB3, 0x21, 0x1B, 0x40, 0x3C, 0x15,\n0xFE, 0xAF, 0x3A, 0x5F, 0x48, 0x13, 0x5F, 0xF8, 0x17, 0xB1, 0x80, 0xED, 0x01, 0x88, 0x48, 0xFF,\n0xD2, 0x3F, 0x00, 0x01, 0xF1, 0x7F, 0x5C, 0xB0, 0x27, 0xD8, 0x0C, 0xE0, 0x35, 0x33, 0x60, 0x33,\n0x83, 0xF2, 0x1A, 0x37, 0x46, 0x10, 0xF0, 0xF5, 0x56, 0xCF, 0x1C, 0x20, 0x15, 0x81, 0x72, 0xD2,\n0x6B, 0x95, 0x6D, 0xFB, 0x28, 0x7C, 0x20, 0x17, 0x77, 0x22, 0xE0, 0x91, 0x1B, 0xDC, 0xFF, 0xA0,\n0x1D, 0x01, 0x47, 0xA6, 0x82, 0xE1, 0x9F, 0x4F, 0x40, 0xF8, 0x57, 0x9F, 0xD5, 0x40, 0xC0, 0xD8,\n0xA3, 0x3F, 0x54, 0x21, 0xFA, 0x39, 0xBF, 0xA8, 0x2D, 0x09, 0x0F, 0x28, 0x38, 0x88, 0x11, 0xB0,\n0xC7, 0xCC, 0xA9, 0x64, 0x20, 0x98, 0x07, 0xAB, 0xEC, 0x64, 0x06, 0xD0, 0xE1, 0x1F, 0xA9, 0x60,\n0x29, 0x80, 0xF6, 0x65, 0x16, 0x50, 0xAD, 0xA6, 0xBD, 0xB9, 0xFD, 0x00, 0x5D, 0xB3, 0xD9, 0x70,\n0xD4, 0x00, 0xB2, 0x25, 0x64, 0x6C, 0x19, 0x11, 0x09, 0x10, 0xD0, 0xC7, 0x18, 0xFF, 0xE7, 0x8A,\n0x0D, 0x20, 0x08, 0xF1, 0xC9, 0xD1, 0x87, 0xC4, 0xA9, 0x66, 0xBE, 0xC0, 0x9F, 0x0B, 0xC0, 0x07,\n0x50, 0xD3, 0xBB, 0x03, 0xB2, 0x02, 0x88, 0x13, 0x14, 0xB6, 0x65, 0xA9, 0xDF, 0x2E, 0x0D, 0x62,\n0x2F, 0x91, 0x0F, 0x59, 0x99, 0x03, 0x14, 0xF0, 0x69, 0xD9, 0x1F, 0x6B, 0x80, 0xFD, 0xA8, 0x77,\n0x80, 0x10, 0x10, 0xD3, 0x77, 0xDB, 0x85, 0xB6, 0xD1, 0x00, 0x24, 0xE3, 0x51, 0x8F, 0xBD, 0x3D,\n0xEE, 0x00, 0xE8, 0x04, 0xF4, 0x6B, 0xEF, 0x01, 0x67, 0xBE, 0xBA, 0xC7, 0xA4, 0xC3, 0xBF, 0xCA,\n0x87, 0x9A, 0x82, 0xE8, 0xC5, 0x24, 0xA2, 0x5D, 0xF8, 0xD7, 0xC0, 0x03, 0xDA, 0x05, 0x1B, 0x40,\n0x82, 0x16, 0xF0, 0xF9, 0xB1, 0xE9, 0x52, 0x43, 0x74, 0x7A, 0x93, 0x8C, 0x4D, 0xA1, 0x04, 0x64,\n0xFE, 0xEB, 0x12, 0x50, 0x10, 0xE8, 0xF3, 0x8F, 0x7B, 0x63, 0xE1, 0xFA, 0x2E, 0xED, 0x8D, 0x6D,\n0xF9, 0x11, 0x23, 0x0A, 0xFF, 0x3C, 0x0F, 0xA8, 0xFC, 0xE7, 0x0E, 0xA8, 0xD1, 0xFD, 0x1F, 0xB9,\n0x0F, 0xAC, 0x94, 0x03, 0x4E, 0x22, 0x2A, 0xF8, 0xE7, 0xA4, 0x82, 0x67, 0x11, 0xFD, 0x0B, 0x00,\n0xAC, 0xCC, 0x80, 0x1F, 0x66, 0x1D, 0x10, 0xDE, 0x99, 0x18, 0x59, 0xF9, 0x5F, 0x3A, 0xB3, 0xF8,\n0x87, 0x21, 0xCC, 0x8B, 0xA2, 0x75, 0x01, 0xB0, 0xF7, 0x7E, 0xD6, 0x58, 0x03, 0x34, 0x4B, 0xC8,\n0xAD, 0x61, 0xB0, 0x7E, 0xD9, 0x29, 0xBF, 0x18, 0xE9, 0x01, 0x8F, 0x22, 0xB1, 0x67, 0x89, 0x90,\n0x87, 0x25, 0xE0, 0x2C, 0x26, 0xF1, 0x7F, 0xF0, 0x4E, 0xFB, 0x72, 0x09, 0x10, 0x02, 0xC6, 0x1F,\n0xFF, 0xB6, 0xD9, 0x5C, 0x14, 0x00, 0x46, 0x10, 0xD8, 0xE7, 0x39, 0x6C, 0xC5, 0xAD, 0x63, 0x8F,\n0x9C, 0xF3, 0xE9, 0x28, 0x3B, 0x80, 0x5D, 0xE5, 0x05, 0xD0, 0xFE, 0x2C, 0x18, 0xE7, 0x77, 0x53,\n0x88, 0xA8, 0x3F, 0x8B, 0x1E, 0xE4, 0x63, 0x22, 0xFC, 0xE3, 0xEE, 0x80, 0x77, 0x5C, 0x43, 0x80,\n0x7E, 0x5C, 0x5B, 0x83, 0x7F, 0x8E, 0xF2, 0x02, 0x40, 0x3E, 0x30, 0x36, 0xD0, 0x31, 0xE5, 0x80,\n0xB3, 0x98, 0x14, 0x7F, 0x3E, 0x00, 0xEF, 0xA4, 0xFF, 0x59, 0x35, 0x0C, 0x1C, 0x84, 0x82, 0x1D,\n0xEC, 0xC8, 0xFF, 0x8A, 0xE4, 0x0A, 0x0E, 0x2A, 0xFE, 0x64, 0xA4, 0xD5, 0x7E, 0xCA, 0x39, 0x1D,\n0xE4, 0x4B, 0x80, 0xDA, 0x2C, 0x15, 0x82, 0x01, 0x1C, 0x70, 0x80, 0xE3, 0x37, 0xC5, 0x1D, 0x85,\n0x03, 0xFF, 0xE7, 0x05, 0x84, 0x6B, 0x49, 0x40, 0xF2, 0xBF, 0xAE, 0xE0, 0x9F, 0x67, 0x02, 0x17,\n0xF0, 0xCF, 0xD3, 0x08, 0xFE, 0xCD, 0x6B, 0x7F, 0x89, 0xB9, 0xC2, 0x03, 0x4E, 0xA3, 0x5A, 0xDA,\n0x9E, 0x0F, 0x16, 0xDC, 0xF4, 0x7C, 0x69, 0x26, 0x50, 0xBB, 0xCE, 0x8B, 0x5D, 0xBD, 0x54, 0xFC,\n0xF9, 0x8A, 0xCC, 0x7F, 0xC9, 0x05, 0x1B, 0xE2, 0xBA, 0xB7, 0xB3, 0x1F, 0x45, 0x2E, 0x78, 0x7B,\n0xF5, 0x80, 0xF0, 0xCF, 0xF7, 0x80, 0x79, 0x81, 0x90, 0xE3, 0x03, 0xE7, 0xB4, 0xD2, 0x00, 0x22,\n0xF8, 0xE7, 0x23, 0x70, 0xE1, 0x7E, 0x54, 0x58, 0x07, 0x8C, 0xAA, 0x35, 0x00, 0xFD, 0xED, 0x20,\n0xFF, 0x31, 0x00, 0x99, 0xF6, 0xF2, 0x02, 0x7D, 0xFF, 0x80, 0x10, 0x51, 0xEA, 0xB9, 0x25, 0xBE,\n0x55, 0x09, 0xEA, 0x5D, 0xB1, 0x64, 0x84, 0x03, 0x7C, 0x22, 0x67, 0xB6, 0x81, 0xC8, 0x05, 0x9B,\n0x41, 0xF4, 0x8C, 0x01, 0xAC, 0xAC, 0x01, 0x72, 0x6A, 0x09, 0x40, 0x02, 0xC2, 0xB5, 0x24, 0xE0,\n0x2C, 0x4E, 0x40, 0x4F, 0x94, 0x03, 0x16, 0x1F, 0xE2, 0xAA, 0x16, 0xBB, 0x93, 0xA8, 0xE6, 0x8D,\n0xB2, 0xBF, 0xF9, 0x6E, 0x2E, 0x81, 0x40, 0x48, 0x5B, 0x4B, 0x36, 0x5F, 0x08, 0x7A, 0x58, 0x78,\n0xEB, 0xB0, 0x78, 0x6A, 0xAF, 0xCB, 0x39, 0x4E, 0x35, 0x00, 0xE8, 0xCF, 0x82, 0x0D, 0xB3, 0xB6,\n0x09, 0x19, 0x10, 0xCB, 0xDB, 0xCB, 0x85, 0xFD, 0x68, 0xCB, 0xB0, 0xAF, 0x9D, 0x2A, 0xBA, 0x0E,\n0x23, 0x1E, 0xB0, 0xA0, 0x9C, 0x9D, 0x4A, 0x36, 0xC6, 0xF9, 0xB7, 0xBB, 0x9F, 0x7D, 0x4A, 0x18,\n0x22, 0xEE, 0x10, 0x1D, 0xFF, 0x37, 0x78, 0xFB, 0x5F, 0x00, 0xE0, 0x47, 0x0D, 0x0C, 0x5F, 0xBB,\n0x65, 0xC0, 0x92, 0x7E, 0x48, 0xAB, 0x9F, 0x57, 0xB6, 0x0C, 0xA8, 0xD6, 0xCF, 0x72, 0xC2, 0xB6,\n0x20, 0x68, 0xFB, 0x42, 0x6C, 0xDF, 0x2F, 0x95, 0xD0, 0x4A, 0xC1, 0xD2, 0x01, 0x5E, 0x53, 0x00,\n0xE8, 0x38, 0xC0, 0x91, 0xBB, 0x82, 0xE3, 0x0E, 0x30, 0x0E, 0xC0, 0x38, 0x01, 0x47, 0x38, 0xC0,\n0xB8, 0xEC, 0x11, 0x20, 0x7C, 0x94, 0xB9, 0xD2, 0x8E, 0xC1, 0xD9, 0x24, 0x4E, 0xC0, 0xB1, 0xA0,\n0xAB, 0xAF, 0xFF, 0x71, 0x06, 0x14, 0xAE, 0x2E, 0xBB, 0xE4, 0xEF, 0x29, 0x49, 0x8F, 0xEC, 0xD0,\n0xD4, 0x88, 0x42, 0x70, 0xE9, 0x54, 0x00, 0xE6, 0xF5, 0xD0, 0xA3, 0x1C, 0xA0, 0x31, 0x4F, 0x7D,\n0x9E, 0xFA, 0xCE, 0x1E, 0xC8, 0xA4, 0x61, 0x94, 0xC8, 0x50, 0xDD, 0x95, 0x39, 0xC0, 0x50, 0x1E,\n0x18, 0xC6, 0x71, 0x01, 0x03, 0xD1, 0xEE, 0x24, 0xAC, 0x45, 0x85, 0x7C, 0x5C, 0xF2, 0x91, 0x99,\n0xC5, 0xD5, 0x10, 0x80, 0xA8, 0xFD, 0x54, 0x58, 0xD0, 0x16, 0x8B, 0xDA, 0xBC, 0x97, 0x21, 0x03,\n0xAB, 0x80, 0x4E, 0x22, 0x1B, 0xDC, 0x71, 0x2F, 0x1D, 0xC6, 0xBF, 0x0E, 0x86, 0xE6, 0xEF, 0xB4,\n0xAD, 0xDD, 0x12, 0xF0, 0x9A, 0x2C, 0x70, 0x42, 0x21, 0xFB, 0x7E, 0x87, 0x1D, 0x60, 0xEA, 0xF7,\n0x9A, 0x13, 0x50, 0xB3, 0x20, 0xED, 0xF9, 0xB7, 0xFD, 0xAF, 0xF0, 0xEF, 0x3D, 0x23, 0x20, 0x2A,\n0x59, 0xA8, 0x3A, 0x5B, 0x2C, 0x26, 0x61, 0xED, 0xB6, 0xB2, 0x7F, 0x48, 0x97, 0x00, 0x1D, 0x5A,\n0xF0, 0x94, 0x38, 0x81, 0x0B, 0xC9, 0x06, 0x41, 0x9E, 0x9C, 0x99, 0x79, 0xDA, 0x28, 0x49, 0xE1,\n0x16, 0x5B, 0x03, 0x3C, 0x1F, 0xB9, 0x06, 0xC8, 0x36, 0x3C, 0x76, 0xA0, 0x74, 0x97, 0x66, 0x41,\n0x2F, 0x2F, 0xD3, 0x0F, 0xBB, 0xB5, 0x8C, 0x2E, 0x02, 0x56, 0xFE, 0x8C, 0xBC, 0x25, 0xC0, 0x39,\n0x03, 0xED, 0x80, 0x63, 0x9C, 0x7F, 0xBB, 0x93, 0xC5, 0xE2, 0xAC, 0x42, 0x3D, 0xCE, 0xAA, 0x83,\n0x34, 0xDC, 0x99, 0xC5, 0xF5, 0x1F, 0x02, 0xF0, 0xBB, 0x87, 0xBA, 0x35, 0x2A, 0xE8, 0xD3, 0x26,\n0x9D, 0x35, 0xC1, 0x9F, 0x3A, 0x40, 0xB3, 0x7E, 0xD7, 0xA9, 0x87, 0x88, 0x2B, 0x19, 0xA8, 0x48,\n0x81, 0xA8, 0xF7, 0x83, 0x7E, 0x9D, 0x21, 0x94, 0x16, 0x5E, 0x03, 0x54, 0xFA, 0xE9, 0x66, 0xB9,\n0xF6, 0x16, 0xF0, 0xDD, 0x38, 0x01, 0xC3, 0x00, 0x94, 0xD6, 0x1E, 0x80, 0x3B, 0x1B, 0x4A, 0xC0,\n0xC1, 0x29, 0x0D, 0xFC, 0x3B, 0x5B, 0xE0, 0x01, 0x9B, 0x12, 0xF0, 0xB0, 0xE8, 0x8B, 0x29, 0xF0,\n0x7C, 0x4B, 0x76, 0xC4, 0x4E, 0x91, 0xB3, 0x1B, 0xE4, 0xB2, 0xC3, 0x1D, 0x39, 0x08, 0x6A, 0x52,\n0x7A, 0xFA, 0xF1, 0x90, 0x38, 0xC3, 0x9F, 0xE7, 0xFF, 0x7E, 0x8B, 0x66, 0x41, 0x9E, 0xAB, 0xA8,\n0xBB, 0x31, 0x2F, 0x2A, 0xBE, 0xD4, 0xF6, 0x23, 0x1B, 0x82, 0x97, 0xA2, 0xAD, 0x20, 0xFF, 0x84,\n0x80, 0x87, 0x41, 0x0F, 0xC8, 0x1C, 0x97, 0x2B, 0xF0, 0x67, 0x9A, 0x8C, 0xE0, 0xDF, 0xC6, 0x62,\n0xB1, 0x28, 0x3E, 0x25, 0x8C, 0xB3, 0x25, 0xC0, 0x71, 0x04, 0xFC, 0xB7, 0xCB, 0x60, 0x1E, 0x6A,\n0x05, 0x90, 0xF5, 0x3F, 0xCE, 0xC8, 0x48, 0xB8, 0x32, 0xEF, 0x77, 0x2D, 0x3D, 0xF7, 0x89, 0x91,\n0x17, 0x99, 0x17, 0x8B, 0xCC, 0xFE, 0x41, 0xBF, 0xC2, 0x01, 0x52, 0x0B, 0xED, 0x3B, 0x40, 0x35,\n0x80, 0xCD, 0x33, 0xC1, 0x7B, 0x47, 0x02, 0xC0, 0x11, 0x49, 0xE0, 0xB0, 0x01, 0x8C, 0x99, 0xC0,\n0xD9, 0x48, 0xFE, 0x29, 0x01, 0xAB, 0xB3, 0x60, 0xF8, 0x97, 0xB4, 0x11, 0x27, 0xE0, 0xEE, 0xEE,\n0x58, 0xFA, 0x21, 0xFE, 0x92, 0xF3, 0xAB, 0x17, 0x09, 0x80, 0x42, 0xC0, 0x65, 0x84, 0x7F, 0x29,\n0x78, 0x12, 0xA6, 0x72, 0xAF, 0x47, 0x21, 0x65, 0xC9, 0x3D, 0x16, 0x3B, 0x56, 0x25, 0xBC, 0x05,\n0xF8, 0xA7, 0x3A, 0x0F, 0x95, 0xC1, 0xA8, 0x48, 0xC1, 0x80, 0xE0, 0xEC, 0xB6, 0x84, 0xEA, 0xFF,\n0xF4, 0xA7, 0x0D, 0xF1, 0x4F, 0xCB, 0x80, 0xB6, 0x2A, 0xF4, 0xC3, 0xF9, 0x55, 0x53, 0xC0, 0x8C,\n0x54, 0xA3, 0xFD, 0xDF, 0xC1, 0x22, 0xE9, 0xAC, 0x24, 0x5E, 0xA9, 0xF7, 0x92, 0xC8, 0x83, 0x44,\n0x14, 0x03, 0x60, 0x7B, 0xF2, 0xB5, 0x07, 0x60, 0x21, 0xE8, 0x57, 0x90, 0x4F, 0x0F, 0x8D, 0xEB,\n0xFC, 0x6E, 0x80, 0xEA, 0xF6, 0xC0, 0x9F, 0xBD, 0xD2, 0x11, 0x8E, 0x85, 0x3F, 0x1C, 0x20, 0xCB,\n0x80, 0xA9, 0x33, 0xF9, 0x59, 0xE0, 0x3D, 0x89, 0x71, 0x04, 0x8C, 0xF9, 0xBF, 0x28, 0x02, 0x51,\n0xC0, 0xFE, 0xC9, 0xD1, 0xC6, 0xFE, 0x91, 0x01, 0x56, 0x00, 0x32, 0x0B, 0xAE, 0x97, 0xF8, 0x2F,\n0x44, 0x6D, 0x3D, 0xA0, 0xCF, 0x42, 0x74, 0xF3, 0x48, 0xB8, 0x00, 0xFF, 0x84, 0x2A, 0xD2, 0x48,\n0xB5, 0x76, 0xEA, 0x3C, 0x20, 0x8B, 0x72, 0x97, 0x37, 0xB7, 0x2C, 0x88, 0x15, 0xC1, 0xFC, 0x26,\n0xCD, 0x21, 0x20, 0x0F, 0x07, 0x49, 0x6C, 0xD5, 0x3A, 0x1C, 0xD2, 0xBE, 0x10, 0x18, 0x0A, 0x2E,\n0xC3, 0x04, 0xBC, 0xA8, 0xEC, 0x84, 0xAB, 0xA7, 0x45, 0x30, 0x7B, 0xA5, 0x17, 0xB4, 0x97, 0x27,\n0x61, 0x2D, 0xEC, 0x23, 0xB0, 0x56, 0x33, 0x65, 0x67, 0x5E, 0xB0, 0x0F, 0x55, 0x5B, 0x00, 0x82,\n0xC0, 0x07, 0x71, 0x82, 0x64, 0x38, 0x9C, 0x70, 0xEA, 0x5E, 0xF2, 0x62, 0xE8, 0x14, 0xDA, 0x28,\n0x79, 0xB1, 0x95, 0xBF, 0x0E, 0x7F, 0x54, 0xC5, 0xD8, 0x9D, 0x62, 0xA8, 0xF6, 0x5B, 0x5F, 0x03,\n0xE4, 0xCE, 0xF8, 0x41, 0x07, 0xA8, 0x06, 0x50, 0x01, 0xF8, 0x75, 0xCB, 0x54, 0xF0, 0x5E, 0x1C,\n0x80, 0x28, 0xE4, 0xFF, 0xF4, 0x68, 0x98, 0x00, 0x36, 0xFE, 0xE1, 0x01, 0xEB, 0x5A, 0xF4, 0x6A,\n0x9D, 0x0A, 0xC6, 0xB9, 0x70, 0xCD, 0x08, 0xA9, 0xFD, 0xD3, 0xC3, 0xF3, 0x80, 0x1D, 0x52, 0x54,\n0x3D, 0x7E, 0x8E, 0xA5, 0xB7, 0x94, 0x6C, 0x57, 0x8B, 0xD7, 0xBD, 0x2E, 0xA4, 0xE2, 0x5E, 0x08,\n0x1E, 0xFF, 0x14, 0x81, 0x91, 0x49, 0xF0, 0xCD, 0x0D, 0x56, 0xCD, 0xE7, 0x49, 0xC7, 0x4C, 0x1C,\n0x08, 0x26, 0x52, 0x27, 0x5D, 0xEA, 0x11, 0xE0, 0xDF, 0x45, 0x1F, 0x95, 0x2A, 0x18, 0x5E, 0x46,\n0x86, 0xBC, 0x52, 0xE3, 0x13, 0xC0, 0x8B, 0x5E, 0xDE, 0x72, 0x09, 0x1F, 0xAA, 0xF7, 0x76, 0x5A,\n0x11, 0x10, 0x00, 0xB6, 0xA0, 0xDE, 0x83, 0xAE, 0xFF, 0xE5, 0x10, 0xB4, 0x66, 0x59, 0x0F, 0x6A,\n0x9F, 0xD9, 0x17, 0x62, 0x18, 0xD4, 0x66, 0x8F, 0x4B, 0x2F, 0x66, 0xC1, 0xDC, 0x0D, 0xA1, 0xE2,\n0x00, 0x8B, 0xD5, 0x3F, 0x85, 0xDF, 0x78, 0x0F, 0xE8, 0xFA, 0x3F, 0xA2, 0x09, 0xFF, 0x30, 0x80,\n0x7A, 0x34, 0x34, 0x80, 0xF0, 0xAF, 0x32, 0x0B, 0xC6, 0x0B, 0x2E, 0x4C, 0x67, 0x1B, 0xFB, 0x93,\n0xDD, 0xE6, 0xC5, 0x30, 0xF5, 0x29, 0xB0, 0x1E, 0x73, 0x7B, 0x10, 0x92, 0xB6, 0xD8, 0xFC, 0x57,\n0x39, 0x98, 0x9E, 0x86, 0x84, 0x94, 0x44, 0xD9, 0xFE, 0xE0, 0x1B, 0xFD, 0xEA, 0x4D, 0x82, 0xCD,\n0xFE, 0xA9, 0xBC, 0x04, 0x08, 0x8F, 0x18, 0x16, 0xCC, 0xD9, 0x1D, 0x08, 0xC9, 0x87, 0x60, 0x43,\n0xED, 0x87, 0x95, 0xE6, 0xF2, 0xCF, 0x34, 0x5D, 0x5B, 0x20, 0x2D, 0xAF, 0x18, 0x95, 0x79, 0x8F,\n0xB9, 0x8D, 0xC7, 0xF9, 0xBF, 0xFD, 0xB4, 0x06, 0x62, 0x5A, 0xE7, 0x1D, 0x23, 0x00, 0xD8, 0xD2,\n0x03, 0x72, 0x37, 0x98, 0x7B, 0x82, 0xEF, 0x23, 0x39, 0xFE, 0xDB, 0x09, 0x30, 0xF5, 0x7E, 0xE5,\n0xE0, 0x04, 0xFE, 0xF5, 0xA5, 0x80, 0xB2, 0x1C, 0x08, 0xFE, 0xB8, 0x29, 0x8C, 0x35, 0xE9, 0xAC,\n0xDA, 0x2F, 0x73, 0x80, 0x94, 0x00, 0x0A, 0xDF, 0xD0, 0x60, 0x39, 0x60, 0x32, 0x7E, 0x30, 0xB0,\n0x11, 0x00, 0xA1, 0x9F, 0x4F, 0x40, 0xE4, 0x31, 0x10, 0xF7, 0xE7, 0x39, 0xC0, 0x11, 0xCB, 0xCE,\n0xCA, 0x3F, 0x54, 0xDE, 0x0E, 0x01, 0xE9, 0xE2, 0x0F, 0x04, 0xDC, 0x6D, 0x44, 0x40, 0xFC, 0x9F,\n0x57, 0xD7, 0xAB, 0xC6, 0x47, 0x9B, 0x12, 0x60, 0xE9, 0xF0, 0x2F, 0x35, 0xEE, 0x87, 0xCF, 0xB6,\n0x37, 0x2B, 0x04, 0x14, 0xD9, 0x04, 0x18, 0x58, 0xF9, 0xFE, 0xEF, 0x5C, 0x9A, 0x50, 0x70, 0x98,\n0x7F, 0x3C, 0x6A, 0x24, 0xE9, 0xD8, 0xD2, 0xBF, 0x24, 0x44, 0x78, 0x44, 0xE6, 0x12, 0x07, 0x98,\n0x0E, 0x8F, 0x7F, 0x17, 0x1A, 0x3A, 0xAA, 0xFD, 0x63, 0xC1, 0x4B, 0xA5, 0xE6, 0xC5, 0x78, 0x8C,\n0xFF, 0x93, 0x05, 0x40, 0x08, 0x58, 0xD7, 0x01, 0xFC, 0x83, 0x80, 0x41, 0x35, 0x00, 0xA0, 0x67,\n0xF7, 0x3E, 0x6A, 0x41, 0xBF, 0xD1, 0xEB, 0x7F, 0x0E, 0x16, 0x4F, 0xF4, 0xC2, 0xC8, 0xC7, 0xAE,\n0x60, 0x6E, 0x8B, 0x9A, 0x41, 0x50, 0xC0, 0x57, 0x71, 0x80, 0x4C, 0x80, 0x21, 0x60, 0xAD, 0x02,\n0x50, 0xE9, 0x47, 0x34, 0x4A, 0x84, 0xBC, 0x1B, 0x27, 0x20, 0x72, 0x09, 0x88, 0xFF, 0xF3, 0x3C,\n0xE0, 0x6C, 0x27, 0xCE, 0x3F, 0x00, 0x08, 0x01, 0x2B, 0x7B, 0x40, 0xDE, 0xD6, 0xC6, 0x59, 0x9C,\n0x80, 0xBB, 0x63, 0x3C, 0x20, 0x18, 0x5C, 0x77, 0x30, 0x5B, 0x38, 0x40, 0x45, 0xC0, 0x70, 0x01,\n0x8C, 0x39, 0x40, 0x1D, 0xAA, 0xD7, 0x63, 0xED, 0xCF, 0x12, 0xB0, 0xEA, 0xFF, 0xAE, 0x70, 0x80,\n0x29, 0x06, 0x2C, 0x20, 0xD3, 0x5F, 0x55, 0xAD, 0x1E, 0x5A, 0xBF, 0x81, 0x7D, 0x3B, 0x6D, 0x4A,\n0x40, 0x33, 0x80, 0x72, 0xC6, 0x00, 0xA6, 0xA1, 0x19, 0x55, 0x3B, 0xBC, 0x09, 0xB0, 0x4A, 0x07,\n0x60, 0xCE, 0xB1, 0xD2, 0xE5, 0x5E, 0x10, 0x72, 0xC1, 0xF3, 0xF8, 0xBF, 0x63, 0xFB, 0x67, 0xE2,\n0xFF, 0x50, 0xAD, 0x10, 0x46, 0x87, 0xB9, 0x66, 0x23, 0xD4, 0xFC, 0x99, 0x20, 0x40, 0x2F, 0x77,\n0x81, 0x0E, 0x09, 0x9B, 0xCE, 0x80, 0xCB, 0xB2, 0x17, 0xC0, 0xC7, 0x2F, 0xF1, 0x38, 0xE0, 0xB5,\n0x59, 0x30, 0x37, 0x8A, 0x4E, 0xBD, 0x1D, 0x4F, 0x4E, 0x2A, 0x0E, 0xB0, 0xF2, 0x50, 0x74, 0xFA,\n0xFE, 0x04, 0xFF, 0x88, 0x26, 0x04, 0xDC, 0x0B, 0x13, 0xB0, 0x90, 0xBB, 0xFE, 0xC7, 0xD1, 0x82,\n0x7F, 0x86, 0x3F, 0x00, 0x58, 0xCE, 0x82, 0x73, 0xFE, 0xE1, 0x01, 0x3F, 0x98, 0x38, 0x72, 0x08,\n0xE8, 0x67, 0x2E, 0x81, 0xA1, 0xF2, 0x0F, 0x07, 0xA8, 0xC3, 0x6A, 0x39, 0x20, 0x44, 0x31, 0xD9,\n0xC2, 0x5F, 0x5A, 0xF6, 0x83, 0x84, 0x0A, 0x21, 0x51, 0xF6, 0x78, 0x60, 0x27, 0xFF, 0x91, 0xF5,\n0x43, 0xF3, 0xDF, 0x14, 0xF9, 0x2C, 0x58, 0x21, 0xAC, 0x67, 0xF9, 0x39, 0x6C, 0x49, 0x52, 0x49,\n0x8D, 0x03, 0x94, 0x36, 0x80, 0x3F, 0x1C, 0xA0, 0x8E, 0x0E, 0xF1, 0x7D, 0xB5, 0x29, 0x70, 0xC5,\n0x07, 0xD2, 0x8D, 0x48, 0x00, 0x9F, 0xAD, 0x7F, 0x06, 0x8A, 0xCF, 0x09, 0x05, 0x80, 0xA8, 0xA1,\n0x07, 0xF4, 0x01, 0x18, 0x64, 0x21, 0x47, 0x5D, 0x3E, 0x00, 0x47, 0xF0, 0xAF, 0x92, 0x01, 0x26,\n0x07, 0xAC, 0x61, 0xA9, 0x10, 0x3B, 0x2C, 0x2F, 0x7C, 0x52, 0xE2, 0x4F, 0x9B, 0x30, 0x2F, 0xFA,\n0x68, 0x60, 0x08, 0x28, 0xCD, 0xCE, 0x39, 0xFD, 0x5E, 0x8C, 0x2A, 0x07, 0xF4, 0xFD, 0x9F, 0x4F,\n0x40, 0xE4, 0x21, 0xD0, 0x9C, 0x1F, 0x47, 0x93, 0xF5, 0xBF, 0x2F, 0xB2, 0x8F, 0x2A, 0xA9, 0x60,\n0xC4, 0xFA, 0x5F, 0x41, 0xC0, 0x49, 0x03, 0x02, 0xA2, 0x4A, 0x05, 0x20, 0xFE, 0xAF, 0x07, 0x80,\n0xB5, 0x1A, 0x01, 0xB7, 0x12, 0x45, 0x8C, 0x26, 0x12, 0x3A, 0xD0, 0x64, 0x03, 0x7B, 0x70, 0x6D,\n0x25, 0xD0, 0xE0, 0x87, 0x05, 0xAC, 0x26, 0x42, 0x64, 0xDA, 0x9B, 0x35, 0x39, 0xBC, 0x47, 0x82,\n0x80, 0x40, 0xA1, 0x2D, 0x8F, 0x44, 0xD2, 0x1F, 0xC6, 0xFC, 0x1F, 0xBC, 0xEE, 0xDB, 0x70, 0x02,\n0xA4, 0x97, 0x0E, 0xEA, 0x25, 0x43, 0x76, 0x42, 0x73, 0xDA, 0xE8, 0x02, 0x18, 0x12, 0xC0, 0xB9,\n0x2A, 0xE5, 0xD0, 0xC5, 0x87, 0x2A, 0xBD, 0xD0, 0x16, 0x80, 0xF1, 0x69, 0x30, 0xD0, 0x63, 0x10,\n0xC7, 0x5F, 0xFB, 0x9B, 0x41, 0x73, 0x06, 0x7C, 0x70, 0xB0, 0xDB, 0x15, 0xAC, 0x8D, 0x72, 0x98,\n0xDE, 0x12, 0xD2, 0xB8, 0x4E, 0xD0, 0x93, 0x03, 0x1B, 0x88, 0xFF, 0x2B, 0x84, 0x03, 0xCC, 0xD2,\n0xBF, 0x05, 0x03, 0xE3, 0xDA, 0xAB, 0x2C, 0x00, 0x96, 0xFC, 0x6B, 0xF1, 0x58, 0xCC, 0xA8, 0x05,\n0x1C, 0x9F, 0xFF, 0x28, 0x3D, 0x20, 0x1F, 0x66, 0x0A, 0x00, 0x0B, 0x6D, 0x34, 0xD8, 0x12, 0x82,\n0xFF, 0x43, 0x99, 0x6F, 0xE1, 0x46, 0x80, 0xD3, 0xDC, 0x01, 0x4A, 0x57, 0x4F, 0x00, 0xE3, 0x00,\n0xB1, 0x80, 0x96, 0xFA, 0x25, 0x0B, 0x6B, 0xF8, 0x63, 0xBA, 0x2A, 0x9D, 0xD0, 0xAE, 0x56, 0x00,\n0xA8, 0x15, 0x30, 0x36, 0x48, 0xC3, 0x9A, 0xFF, 0xD3, 0xC8, 0xBF, 0x7B, 0xB6, 0x29, 0xE5, 0xB2,\n0x43, 0xA0, 0x02, 0x0F, 0x07, 0x68, 0x97, 0x5B, 0x75, 0x03, 0x88, 0x03, 0xD4, 0x53, 0xDD, 0x37,\n0xD7, 0x7F, 0x01, 0x1C, 0x8E, 0x2E, 0x00, 0x44, 0x14, 0xC3, 0x38, 0xFE, 0xAF, 0x25, 0x01, 0x5D,\n0x00, 0xFA, 0xBE, 0x8F, 0xD1, 0x58, 0x8D, 0x07, 0xA0, 0x97, 0x0B, 0x39, 0xC9, 0x0D, 0x20, 0x08,\n0xC4, 0x00, 0x16, 0x35, 0x80, 0xE0, 0x4F, 0x65, 0x37, 0x44, 0xA0, 0x87, 0x7F, 0x1E, 0x01, 0x2B,\n0xF8, 0xBB, 0xE7, 0x96, 0x90, 0x3D, 0xA0, 0x97, 0xC5, 0x7D, 0x0D, 0x20, 0xDE, 0x8F, 0xE3, 0xDE,\n0xFE, 0x0F, 0x00, 0x56, 0x97, 0x01, 0xE1, 0x5F, 0xA9, 0x83, 0x31, 0xE5, 0x80, 0xF1, 0x4C, 0x08,\n0xE2, 0xF2, 0x62, 0x8A, 0xF3, 0xD1, 0xA6, 0xC3, 0x8B, 0xDB, 0xF9, 0x87, 0xA1, 0xCA, 0x3C, 0xA0,\n0x22, 0x88, 0xC7, 0xC1, 0xA9, 0x01, 0x2C, 0x2D, 0x60, 0x65, 0x16, 0x0C, 0xFC, 0x18, 0x08, 0x03,\n0xAB, 0xFE, 0x8F, 0x6F, 0x68, 0xBA, 0xB4, 0x82, 0x40, 0x8A, 0xA0, 0x95, 0x7D, 0x38, 0xC0, 0xA1,\n0x4C, 0xC8, 0x05, 0x06, 0x10, 0x07, 0x48, 0x22, 0xA4, 0x5E, 0x45, 0x44, 0x35, 0x60, 0x69, 0x01,\n0x77, 0x47, 0x6E, 0x00, 0x29, 0x75, 0xEB, 0x8E, 0x60, 0x84, 0xEE, 0xB9, 0x29, 0x4E, 0x3F, 0xEF,\n0x02, 0x40, 0x22, 0xE2, 0xFD, 0x4A, 0x04, 0x1A, 0xFA, 0xDA, 0xAC, 0xFF, 0x8D, 0x06, 0x20, 0x32,\n0xDC, 0xC1, 0xC1, 0x62, 0x12, 0xAC, 0x5D, 0xE9, 0xFE, 0x80, 0xE1, 0xEA, 0x66, 0xDF, 0x1B, 0xFD,\n0x93, 0x7B, 0x3A, 0xC0, 0xFB, 0xDD, 0x1A, 0x6B, 0xEF, 0xA8, 0x02, 0xC0, 0x11, 0xFC, 0x73, 0xFD,\n0x1F, 0x47, 0x83, 0x0D, 0x20, 0xA8, 0x92, 0x0A, 0x86, 0x7F, 0x85, 0x36, 0xC6, 0x10, 0x30, 0x4A,\n0xBD, 0x7A, 0x01, 0xE0, 0xBA, 0x03, 0x4C, 0xAA, 0x14, 0x00, 0x96, 0x0E, 0xB0, 0x7F, 0x34, 0xC8,\n0x0D, 0x7F, 0xA4, 0x69, 0xFE, 0x03, 0xB1, 0x6C, 0x77, 0xBE, 0xEE, 0x01, 0xCF, 0x79, 0x18, 0x3A,\n0x69, 0x90, 0x73, 0xED, 0x0A, 0xFF, 0x57, 0x18, 0x40, 0x1E, 0x8D, 0xC9, 0x33, 0x49, 0xB4, 0x37,\n0x03, 0x48, 0x16, 0xD8, 0x4E, 0xB7, 0xF2, 0xAF, 0x58, 0x03, 0xD4, 0xBE, 0xD8, 0x40, 0x78, 0x58,\n0xE1, 0x21, 0xE0, 0x83, 0x84, 0xE3, 0xFD, 0x9F, 0x33, 0x0B, 0x86, 0x7F, 0xED, 0x3D, 0xE0, 0x37,\n0x0E, 0x00, 0x83, 0x7A, 0x20, 0xFB, 0x67, 0x74, 0x2B, 0xBC, 0x5F, 0x31, 0x92, 0xC8, 0x32, 0x20,\n0x25, 0x01, 0x39, 0x0B, 0xF2, 0xE8, 0xB4, 0x00, 0xD0, 0x23, 0x20, 0x05, 0x80, 0x44, 0xBB, 0x54,\n0xB0, 0x01, 0xAF, 0x8C, 0xBB, 0xF3, 0x0F, 0xCF, 0xE7, 0x7A, 0xC0, 0xD9, 0xE8, 0x09, 0x70, 0xC8,\n0x03, 0x2E, 0x0A, 0xB5, 0xDE, 0x12, 0x72, 0xC8, 0xA0, 0x9C, 0x0E, 0x77, 0xF3, 0xDF, 0xD2, 0x01,\n0xCA, 0x69, 0x59, 0x2B, 0x80, 0xC1, 0x01, 0xF6, 0xC3, 0x63, 0x72, 0xC1, 0x9A, 0x8A, 0x2D, 0x6D,\n0x1A, 0x04, 0xBC, 0xD5, 0xFF, 0x9D, 0xF7, 0x5D, 0x37, 0xE8, 0x95, 0xD3, 0xAF, 0x5C, 0xFF, 0x53,\n0x51, 0x10, 0x4D, 0x26, 0xB8, 0xC3, 0x5F, 0xB9, 0x06, 0xA8, 0xB1, 0x4E, 0x75, 0x7E, 0xC3, 0xA6,\n0x0B, 0xEB, 0xF9, 0x43, 0x73, 0xA7, 0xC0, 0xF8, 0xBF, 0xB1, 0x05, 0x30, 0xF8, 0x3F, 0x67, 0x16,\n0x0C, 0x00, 0x11, 0x05, 0xD1, 0x71, 0x8D, 0x77, 0x80, 0x01, 0xEE, 0x69, 0x60, 0x04, 0x4B, 0x35,\n0x5A, 0x00, 0xF4, 0xE7, 0xC0, 0x0E, 0x03, 0x85, 0x6D, 0x1D, 0xFA, 0x56, 0x19, 0xF3, 0x54, 0x8C,\n0xF4, 0xCB, 0xD6, 0x12, 0x21, 0x75, 0x0D, 0x14, 0x00, 0xDE, 0x3D, 0x15, 0xEC, 0xAE, 0xFF, 0x11,\n0x2E, 0xFF, 0x90, 0xEB, 0xFF, 0x38, 0x1A, 0x14, 0x40, 0xBB, 0x04, 0x3C, 0x58, 0x54, 0x95, 0x0A,\n0xA2, 0xC3, 0x9A, 0xFB, 0x7F, 0x4B, 0x0F, 0x8B, 0x85, 0x7C, 0xF3, 0x7F, 0x85, 0x03, 0x34, 0x02,\n0x14, 0xFC, 0xAB, 0x39, 0xC0, 0x25, 0x8B, 0x6F, 0x12, 0xE2, 0xFF, 0xE0, 0x93, 0x8E, 0x38, 0x14,\n0x66, 0xC8, 0xFC, 0x1F, 0xD8, 0xD3, 0xB1, 0x5E, 0xFE, 0x55, 0x59, 0x00, 0xE4, 0xBB, 0xF2, 0x2E,\n0x96, 0x7C, 0x4E, 0x9D, 0xCE, 0x7F, 0x2B, 0x0E, 0x50, 0xFA, 0x72, 0xFD, 0xEF, 0x36, 0x07, 0x28,\n0x5D, 0x46, 0x39, 0x7C, 0x60, 0xDD, 0x64, 0xE3, 0xFF, 0xC2, 0x62, 0x03, 0x48, 0x29, 0x0F, 0x7F,\n0x6D, 0x0A, 0xA2, 0xF5, 0xD3, 0xFE, 0x4E, 0x8E, 0x1B, 0x5F, 0xDF, 0xD5, 0x49, 0x88, 0x9A, 0x01,\n0x30, 0x44, 0x3F, 0xFA, 0x92, 0x7E, 0x4C, 0x8A, 0xED, 0x51, 0x20, 0xD9, 0x8D, 0xF1, 0xE5, 0x28,\n0x1B, 0xB3, 0x60, 0xC9, 0x87, 0x38, 0xCA, 0x0B, 0x00, 0xDB, 0x7B, 0x40, 0x70, 0xE7, 0x7A, 0x40,\n0x47, 0x8E, 0x01, 0xE4, 0x68, 0xC9, 0x3F, 0x94, 0xA5, 0x82, 0x17, 0x03, 0x4A, 0xE5, 0x80, 0xF7,\n0x20, 0xE0, 0xA1, 0xB3, 0xFE, 0xC7, 0x02, 0xE0, 0x45, 0xCD, 0x01, 0x5E, 0x14, 0x1B, 0x80, 0x6B,\n0x0E, 0x70, 0xA9, 0x9B, 0x7F, 0xAD, 0x26, 0x10, 0xF0, 0x65, 0x08, 0x64, 0x19, 0x10, 0xC1, 0x3E,\n0x1D, 0xD0, 0xBA, 0x23, 0x73, 0x80, 0x7C, 0xB7, 0x2C, 0xB1, 0xA2, 0x21, 0xDB, 0x82, 0x79, 0x30,\n0x88, 0x21, 0xBA, 0x5C, 0x03, 0xD4, 0xC1, 0xBA, 0xFF, 0xBB, 0xA8, 0x39, 0x40, 0xCA, 0x01, 0xB5,\n0xF9, 0xE5, 0x80, 0xE3, 0xFD, 0x1F, 0x1B, 0x40, 0x10, 0x2A, 0x01, 0xD8, 0xC2, 0x03, 0xAE, 0xB9,\n0x3F, 0x1C, 0x20, 0x31, 0x9E, 0x7C, 0xCC, 0x7F, 0x1F, 0xC0, 0xFF, 0x21, 0x78, 0x57, 0x65, 0x60,\n0x56, 0x07, 0x38, 0xD8, 0x56, 0x4F, 0x6E, 0xAA, 0x01, 0x1D, 0xFA, 0xB1, 0x23, 0x04, 0xFE, 0x35,\n0xF5, 0x80, 0xF8, 0x3F, 0xDF, 0x03, 0x7A, 0xF2, 0xFD, 0x1F, 0x87, 0xCF, 0x3F, 0xBF, 0x00, 0xB0,\n0x4C, 0x05, 0x07, 0xFC, 0x1F, 0x5B, 0x42, 0xDA, 0x17, 0x44, 0x23, 0xF9, 0x4B, 0x5E, 0x73, 0x80,\n0xF9, 0x24, 0x18, 0x86, 0x94, 0x0E, 0x50, 0xA5, 0xF0, 0xD3, 0x54, 0x44, 0xCF, 0x25, 0x63, 0x15,\n0xD4, 0x62, 0x53, 0x1C, 0xFE, 0x0F, 0xD8, 0xD9, 0x40, 0xD3, 0x20, 0x72, 0x88, 0xB2, 0x04, 0x08,\n0x0B, 0x80, 0xB0, 0x10, 0xD9, 0xCD, 0x50, 0xCD, 0x00, 0x56, 0x1C, 0xA0, 0xF4, 0x99, 0xFF, 0xAB,\n0x3B, 0x40, 0xCA, 0x01, 0x55, 0xC5, 0xD0, 0xF1, 0x7F, 0xF1, 0x0D, 0x20, 0x75, 0x15, 0xFC, 0x6B,\n0xED, 0x01, 0xED, 0x93, 0xDE, 0x3B, 0x40, 0x22, 0xAE, 0xD1, 0x33, 0xDF, 0xF6, 0x0E, 0x10, 0xF7,\n0x57, 0x73, 0x80, 0x5C, 0xDB, 0x43, 0x31, 0x73, 0xFC, 0xA9, 0xB8, 0xB6, 0x2B, 0xF6, 0x83, 0xB8,\n0xCA, 0x0B, 0x00, 0x5B, 0x7B, 0x40, 0x50, 0xE7, 0x7A, 0x40, 0x4F, 0x5E, 0xFE, 0x97, 0xC3, 0xC1,\n0x9F, 0x97, 0x00, 0xF6, 0x67, 0xC1, 0x8B, 0x61, 0x9D, 0x2D, 0xF6, 0xEF, 0x98, 0x0A, 0x3E, 0xBC,\n0x6D, 0xBA, 0xC6, 0x0B, 0x36, 0x04, 0x7D, 0xB7, 0x38, 0x40, 0xED, 0x0D, 0x14, 0x14, 0x00, 0x16,\n0x0E, 0xB0, 0xEF, 0x04, 0x7E, 0xE5, 0x06, 0x38, 0x86, 0x7A, 0xEA, 0x06, 0x37, 0x00, 0x14, 0xD8,\n0x19, 0xEB, 0x64, 0x08, 0xF8, 0x54, 0xBF, 0x25, 0x3E, 0xB2, 0x00, 0x48, 0x22, 0xA5, 0x47, 0x21,\n0x23, 0x08, 0x68, 0xFE, 0xAF, 0xEE, 0x00, 0x75, 0x94, 0x17, 0x00, 0x96, 0x0E, 0x90, 0xBE, 0xB2,\n0x8D, 0xA6, 0xB6, 0x45, 0x6E, 0x64, 0x01, 0x34, 0x1B, 0x40, 0x6A, 0x3A, 0xC8, 0xF8, 0xD7, 0x8A,\n0x80, 0x75, 0x07, 0x48, 0x38, 0xFA, 0x6F, 0xE6, 0xBF, 0x0C, 0x22, 0xE2, 0xFE, 0x2F, 0x43, 0x0E,\n0x90, 0x89, 0x2F, 0x19, 0x0F, 0xC0, 0x97, 0x53, 0xD1, 0x1C, 0xE0, 0x13, 0x2C, 0xA0, 0x97, 0x0A,\n0xD9, 0xF3, 0x63, 0x34, 0x01, 0xE1, 0x9C, 0x4F, 0xC0, 0x88, 0xF0, 0x7F, 0xEE, 0x31, 0x7E, 0x03,\n0x30, 0x72, 0x3C, 0xE0, 0x41, 0xF5, 0xC3, 0x4F, 0x2A, 0x78, 0x7F, 0x7E, 0xDF, 0x62, 0x98, 0x62,\n0xFA, 0xC6, 0x45, 0xCA, 0x7F, 0x38, 0x0E, 0xD0, 0x3C, 0xA0, 0x52, 0xA3, 0xEE, 0x00, 0xB5, 0xB3,\n0x4D, 0x20, 0xC0, 0x8F, 0x4E, 0x4F, 0x5C, 0x67, 0xF3, 0x5F, 0xEB, 0xCB, 0x99, 0xB0, 0x8E, 0xCB,\n0x02, 0x68, 0x3D, 0xD1, 0xF3, 0x2B, 0x02, 0x40, 0xEE, 0x00, 0x58, 0x73, 0x80, 0x1A, 0xF8, 0xBF,\n0x01, 0x07, 0xA8, 0x01, 0xE5, 0x10, 0x8F, 0x94, 0xE2, 0x9A, 0x59, 0xF0, 0xE8, 0x0D, 0x20, 0xBE,\n0x07, 0x3C, 0xA0, 0x00, 0xB0, 0x99, 0x07, 0x2C, 0x1D, 0x60, 0x26, 0xDB, 0x91, 0x91, 0x4F, 0x7F,\n0xC3, 0x64, 0x8B, 0xB4, 0x78, 0x8C, 0x54, 0xB1, 0x1C, 0xA8, 0x9D, 0xE9, 0xDA, 0x4A, 0xA2, 0x05,\n0x72, 0x75, 0x19, 0x0F, 0x9F, 0xA4, 0x16, 0xD3, 0x8B, 0xEE, 0x51, 0xE8, 0x4F, 0x9C, 0x90, 0x26,\n0x3A, 0x8A, 0xC5, 0xD1, 0xD1, 0x0F, 0xE9, 0x06, 0xA8, 0xA9, 0x08, 0xC6, 0x6B, 0xEF, 0x8A, 0x04,\n0x80, 0xEF, 0x7A, 0x21, 0xF8, 0xD3, 0xF5, 0xBF, 0x34, 0x70, 0x1A, 0x06, 0x30, 0xBE, 0x01, 0xD8,\n0x0B, 0xDB, 0x12, 0xB2, 0xF0, 0x35, 0xF6, 0x29, 0x21, 0x40, 0xF0, 0x30, 0x32, 0xFF, 0x9D, 0x7A,\n0x0E, 0x30, 0x9D, 0xA6, 0x4B, 0x2B, 0x00, 0x74, 0x42, 0xD6, 0x01, 0xF5, 0x09, 0x20, 0x65, 0x09,\n0x60, 0xB1, 0x76, 0xA7, 0xA6, 0xEE, 0x1C, 0xD6, 0xC9, 0xC8, 0xAE, 0xCE, 0x99, 0x08, 0x2B, 0x03,\n0x8B, 0x02, 0xE8, 0x6C, 0x3E, 0x6D, 0xA1, 0xB2, 0xFA, 0x97, 0x61, 0x07, 0xA8, 0x63, 0xFC, 0xDF,\n0x80, 0x03, 0x54, 0x81, 0xB9, 0x48, 0x3A, 0x78, 0xEC, 0x06, 0x10, 0x5F, 0x07, 0x76, 0x03, 0x04,\n0xD4, 0xA0, 0x18, 0xE6, 0x16, 0x07, 0x58, 0x37, 0x67, 0x75, 0xB7, 0xE6, 0xB8, 0xBA, 0x26, 0xE1,\n0x0B, 0xB4, 0x5D, 0x4B, 0x92, 0xE3, 0xA7, 0xD4, 0x64, 0xBC, 0x16, 0x3F, 0xF5, 0xC7, 0x89, 0xC6,\n0x75, 0x9A, 0xD8, 0x5E, 0x5F, 0x7F, 0xFF, 0x64, 0xE8, 0x48, 0xDF, 0x0D, 0xBC, 0x05, 0xF8, 0xF7,\n0xC3, 0x93, 0x17, 0x3F, 0xBC, 0x90, 0xE6, 0xE9, 0x87, 0xB8, 0x8E, 0x24, 0xC2, 0x7A, 0xD7, 0xF0,\n0xE7, 0x85, 0x6A, 0x3B, 0xD0, 0x46, 0x6F, 0x00, 0x89, 0x00, 0xF0, 0xA6, 0x00, 0xF0, 0xCC, 0x8B,\n0x8D, 0xB3, 0x0F, 0x26, 0x61, 0xDD, 0x00, 0xF0, 0xB0, 0x34, 0x7F, 0x5C, 0xB2, 0x01, 0x0E, 0xE1,\n0x00, 0x81, 0xC1, 0xCD, 0x24, 0x78, 0x6B, 0x8A, 0x9F, 0xAA, 0x04, 0xD5, 0x30, 0x41, 0xD9, 0x1D,\n0xF0, 0x15, 0x7B, 0x1D, 0xF5, 0x6C, 0x43, 0x9C, 0x8C, 0xF4, 0xB2, 0x7B, 0xE9, 0x37, 0x0A, 0x60,\n0x0A, 0x53, 0xD9, 0x8B, 0xCB, 0xA5, 0xF0, 0xCF, 0x75, 0x80, 0xD2, 0x5D, 0x68, 0xFD, 0xDF, 0x80,\n0x03, 0xE4, 0xBA, 0x00, 0x1E, 0xA3, 0xB2, 0x1C, 0x70, 0x3E, 0x92, 0x7F, 0x67, 0x6E, 0x2C, 0xCA,\n0x0D, 0x20, 0xAD, 0xCA, 0x01, 0xDF, 0xFA, 0x9C, 0x37, 0x78, 0x26, 0x08, 0x49, 0x90, 0xC6, 0xEA,\n0x0D, 0xA9, 0xDF, 0xE2, 0x5A, 0x09, 0x02, 0x57, 0x27, 0x2B, 0x79, 0x1E, 0xC8, 0xAD, 0x87, 0x64,\n0x49, 0x56, 0xDF, 0xA7, 0xE1, 0xEA, 0x7A, 0xA5, 0xB7, 0x81, 0x8E, 0xB4, 0x27, 0x5F, 0x7F, 0xFD,\n0xE2, 0xEB, 0x60, 0xF7, 0x62, 0x2F, 0x16, 0x7B, 0x7B, 0x7A, 0x07, 0xAC, 0x80, 0xF6, 0xBE, 0xD9,\n0x93, 0xFF, 0x95, 0x31, 0x6D, 0x0B, 0xD9, 0x5C, 0x7D, 0x33, 0x7A, 0x01, 0x70, 0xE3, 0xBD, 0x98,\n0xD4, 0xFF, 0x6D, 0x44, 0xDA, 0xC1, 0x64, 0x77, 0x37, 0x35, 0x4F, 0xE2, 0x14, 0x77, 0xCB, 0xA5,\n0xA9, 0xFA, 0xDA, 0x15, 0x7F, 0xDF, 0x8B, 0x2C, 0xB0, 0x8E, 0x19, 0x0A, 0xFF, 0x62, 0x92, 0x04,\n0x48, 0x50, 0x32, 0x01, 0x7E, 0xA3, 0x9C, 0x4B, 0x03, 0x3D, 0xAB, 0x18, 0xBD, 0x35, 0xB8, 0xC2,\n0xEB, 0x95, 0x09, 0x66, 0x0D, 0x32, 0x21, 0x4B, 0x5F, 0x56, 0x0C, 0x03, 0xE2, 0x2A, 0x0E, 0xD0,\n0x44, 0x11, 0x91, 0xB3, 0x29, 0x78, 0x9C, 0xFF, 0x4B, 0xFF, 0xBA, 0x85, 0x3E, 0x02, 0x67, 0xF8,\n0x3F, 0x47, 0xA3, 0xCA, 0x01, 0x65, 0x79, 0x87, 0x8F, 0xF9, 0x3B, 0x1F, 0xDD, 0x51, 0x9F, 0xA5,\n0xC6, 0x30, 0xAC, 0x6F, 0x47, 0x7C, 0xE9, 0x18, 0xFD, 0x1E, 0x09, 0xF9, 0x3A, 0x55, 0x1A, 0xD7,\n0x65, 0x5F, 0xF1, 0xEC, 0xD5, 0xEF, 0xB1, 0x78, 0xB6, 0x7A, 0xF5, 0xEA, 0xD5, 0x57, 0xAF, 0x56,\n0x5F, 0x79, 0x9D, 0x7C, 0xD9, 0xC7, 0x5F, 0x05, 0xF5, 0xF1, 0xA3, 0xED, 0xED, 0x8F, 0x23, 0x4D,\n0xBA, 0x9D, 0xED, 0xB0, 0xC2, 0x9F, 0x93, 0x9D, 0x9D, 0xF7, 0x76, 0xA2, 0x92, 0xCF, 0x60, 0x24,\n0xD2, 0x56, 0x91, 0xFD, 0x45, 0x4C, 0x07, 0x8B, 0xF9, 0xD6, 0xE6, 0x3C, 0x26, 0x5C, 0x9D, 0xAF,\n0xE9, 0xD3, 0x64, 0xED, 0x9C, 0xA6, 0x5F, 0xB4, 0xB5, 0x3C, 0x16, 0x3D, 0x3E, 0x76, 0xB5, 0x3C,\n0xFE, 0xF5, 0xD7, 0x5F, 0x9F, 0xBF, 0x8E, 0xB4, 0xD3, 0x5F, 0x13, 0xFF, 0x7E, 0x79, 0x93, 0x94,\n0xCE, 0x49, 0x32, 0x48, 0x21, 0x4D, 0x5F, 0xB7, 0xA1, 0xBE, 0x9A, 0xBE, 0x5E, 0x30, 0xE7, 0x46,\n0x7A, 0x77, 0x7E, 0x4C, 0x4F, 0xCB, 0xFE, 0x37, 0xE8, 0x36, 0x21, 0xE5, 0x90, 0x36, 0x69, 0x49,\n0xF3, 0x79, 0xF4, 0x61, 0xF5, 0xFB, 0x07, 0x8B, 0x98, 0xF6, 0x17, 0xE9, 0x23, 0x13, 0x54, 0xF4,\n0xB3, 0x2A, 0x5F, 0x37, 0xDB, 0x9E, 0xA1, 0x77, 0xDE, 0xFF, 0xF6, 0xA3, 0xB5, 0x78, 0xDF, 0x28,\n0xF5, 0xBE, 0x8F, 0x40, 0x8D, 0x90, 0xEC, 0x5B, 0xDA, 0xFB, 0x79, 0xF1, 0x7E, 0x8A, 0xB0, 0x9E,\n0x7D, 0xF9, 0x2C, 0x75, 0xA1, 0xF6, 0xC9, 0xB3, 0x6F, 0x53, 0xA4, 0x36, 0x1C, 0xD2, 0xE2, 0x7A,\n0xF5, 0xF9, 0x2B, 0x47, 0x9F, 0xDF, 0x0C, 0xBE, 0x7A, 0x14, 0x8A, 0xA4, 0x47, 0xDB, 0x8F, 0x3E,\n0xF6, 0x5A, 0xC2, 0xA4, 0xC4, 0x4E, 0x3C, 0xE2, 0x7A, 0x6F, 0x84, 0x76, 0x42, 0x91, 0xDA, 0xC6,\n0xFE, 0xFE, 0xFE, 0x22, 0x14, 0xFB, 0xF3, 0x20, 0xD2, 0x3A, 0xFC, 0x3D, 0x8D, 0x1D, 0x4F, 0x9F,\n0x4E, 0x43, 0x7A, 0x3A, 0x15, 0xA4, 0x7C, 0x7A, 0x2C, 0xDD, 0x60, 0xD3, 0x5B, 0x43, 0xBF, 0xFE,\n0x35, 0xAA, 0x97, 0x6F, 0xFE, 0xFE, 0xD3, 0x98, 0xD7, 0x85, 0x8D, 0xA4, 0x31, 0x92, 0xE3, 0x65,\n0xF8, 0xBB, 0xBE, 0x3E, 0x3D, 0x95, 0x1F, 0xD4, 0x6F, 0xA7, 0xC7, 0x8F, 0x97, 0xD3, 0xA8, 0x9E,\n0x3E, 0x8D, 0xFE, 0xB1, 0x26, 0x6D, 0x06, 0x42, 0x34, 0x9F, 0xC8, 0xFF, 0xDB, 0x90, 0x30, 0x80,\n0x2D, 0xB5, 0x93, 0xE9, 0x9D, 0xC2, 0x92, 0x09, 0x7E, 0x22, 0x0E, 0xD0, 0x1A, 0x04, 0x6C, 0x6A,\n0x02, 0xBF, 0x1D, 0xA7, 0x1E, 0x5C, 0x81, 0x26, 0x1A, 0xC2, 0x1B, 0x5F, 0x90, 0x3C, 0x60, 0x3A,\n0xFC, 0xF6, 0x6A, 0x84, 0x92, 0x0F, 0x8C, 0x29, 0xA1, 0x2D, 0x01, 0x4E, 0xE3, 0xD1, 0x60, 0x13,\n0x0C, 0x6E, 0x6F, 0x2B, 0x04, 0x03, 0x4D, 0x11, 0x38, 0x0B, 0x45, 0x52, 0x94, 0x6B, 0x72, 0xF8,\n0x52, 0xFE, 0x45, 0x09, 0xF8, 0xE3, 0x24, 0xE5, 0x81, 0xB7, 0xB6, 0x64, 0x75, 0xC9, 0x6B, 0x41,\n0x4E, 0xF6, 0x98, 0x8C, 0x02, 0x70, 0xF9, 0x78, 0x19, 0x75, 0x55, 0xA7, 0xAF, 0x4F, 0x5F, 0x47,\n0xF9, 0x97, 0x24, 0x8C, 0x2B, 0x83, 0xD6, 0x5D, 0xFF, 0xFD, 0xE6, 0x8F, 0x97, 0x57, 0x61, 0xFE,\n0xBD, 0x16, 0x00, 0x46, 0x94, 0x7E, 0x57, 0x8F, 0xA7, 0x31, 0x09, 0xD8, 0xE2, 0x0A, 0x19, 0x40,\n0xE1, 0xDF, 0x64, 0x12, 0xFB, 0xF7, 0x6F, 0xA1, 0xCB, 0xC6, 0x71, 0xED, 0xC4, 0x42, 0x34, 0x23,\n0xDE, 0xB9, 0xC5, 0x7D, 0xC5, 0xA4, 0xEC, 0xFB, 0x10, 0x07, 0x38, 0x06, 0x81, 0xD1, 0x08, 0x2B,\n0xC2, 0x3E, 0x63, 0x64, 0xC8, 0x01, 0xC2, 0x37, 0xA7, 0xE9, 0x4C, 0x39, 0xCA, 0x40, 0xA1, 0xDF,\n0x2B, 0x81, 0xDB, 0x57, 0x5E, 0x88, 0x0B, 0x14, 0xBC, 0x6D, 0x6F, 0x0F, 0x3A, 0x40, 0x09, 0x55,\n0x10, 0x7F, 0x8F, 0x66, 0x12, 0x31, 0xFE, 0x85, 0x09, 0x88, 0x02, 0x4B, 0x80, 0x41, 0x02, 0x2E,\n0x84, 0x7F, 0x93, 0x04, 0xB7, 0x4D, 0x57, 0x23, 0x01, 0x18, 0x22, 0x60, 0xFA, 0x9A, 0xC7, 0x71,\n0x02, 0xBE, 0x4E, 0xF8, 0x79, 0x1D, 0xE1, 0x94, 0xF2, 0xEF, 0x4A, 0x3C, 0x20, 0xE4, 0xAB, 0x70,\n0xF0, 0xCF, 0x97, 0x57, 0xF2, 0xC5, 0x21, 0xFE, 0x3D, 0x3F, 0x3D, 0x8D, 0x12, 0xF0, 0xF1, 0xF4,\n0xF1, 0xE3, 0x65, 0x8C, 0x80, 0x6A, 0xFF, 0xC6, 0x68, 0x1E, 0x41, 0xE0, 0x44, 0x14, 0x02, 0xE0,\n0x46, 0xBA, 0xB3, 0xE4, 0x46, 0x63, 0x00, 0x0A, 0xFF, 0x72, 0x02, 0x0A, 0x00, 0x1D, 0x39, 0x0E,\n0x10, 0x35, 0xF4, 0x80, 0xED, 0x11, 0x48, 0x0B, 0x38, 0xC0, 0x51, 0xFC, 0x1B, 0x41, 0xC0, 0x84,\n0xBF, 0x14, 0xCA, 0x37, 0xA7, 0x25, 0xFA, 0x49, 0x13, 0xBE, 0x55, 0xBD, 0x9F, 0xF1, 0x51, 0x43,\n0x9A, 0x4F, 0x40, 0x8D, 0x28, 0xFF, 0x94, 0x80, 0x2D, 0x01, 0x68, 0xCF, 0x37, 0x74, 0x01, 0x98,\n0xFC, 0x9F, 0x02, 0x70, 0x92, 0x2C, 0x43, 0x5B, 0xFE, 0x05, 0x11, 0xF8, 0x54, 0x39, 0x11, 0x24,\n0x60, 0x9A, 0x7F, 0x4A, 0x8B, 0xF9, 0x3F, 0x25, 0xE0, 0x9B, 0x92, 0x7B, 0x6B, 0x14, 0xFC, 0xFB,\n0x8D, 0x7E, 0x65, 0xC8, 0x03, 0xF6, 0xEF, 0x1F, 0xF4, 0x7F, 0xFA, 0xDB, 0x8A, 0xF1, 0x4F, 0x5B,\n0x58, 0x6A, 0xD7, 0x87, 0x9B, 0xFA, 0x3F, 0xF9, 0x5F, 0xBB, 0x70, 0xF1, 0xB7, 0xCF, 0x7D, 0x50,\n0x5B, 0x22, 0xD0, 0x84, 0x03, 0x2C, 0x0C, 0x59, 0x4C, 0x6A, 0xFF, 0x52, 0x53, 0x02, 0xFE, 0x2F,\n0x3C, 0x60, 0x14, 0x7F, 0xDA, 0x79, 0x16, 0x10, 0xBC, 0x05, 0xFC, 0x9F, 0xE8, 0x59, 0x7C, 0xFE,\n0x9B, 0xCE, 0x6A, 0x01, 0x07, 0x9B, 0x20, 0x50, 0x8F, 0x61, 0x07, 0x28, 0x08, 0x7C, 0xD4, 0x45,\n0x08, 0x7F, 0x51, 0x04, 0xA2, 0x06, 0xF8, 0x63, 0xFE, 0xDB, 0xE9, 0x0B, 0xCF, 0x03, 0xFE, 0xC8,\n0x0D, 0x61, 0x94, 0x80, 0xF3, 0x2E, 0x6E, 0x1D, 0x6C, 0xA1, 0x00, 0xFE, 0xAC, 0xF9, 0xFE, 0xCF,\n0x50, 0x71, 0x1A, 0xE0, 0xDF, 0xF3, 0x20, 0x01, 0x05, 0x69, 0xE9, 0xF8, 0xE3, 0x2A, 0x01, 0x0E,\n0xDA, 0x15, 0xA1, 0xBF, 0xFA, 0xD2, 0x14, 0xF0, 0x7F, 0xAF, 0xD3, 0xCF, 0x20, 0xE1, 0xCD, 0xD4,\n0x8F, 0xD3, 0xEC, 0x37, 0x0A, 0xC0, 0xAD, 0xBB, 0x00, 0xD0, 0x51, 0xE2, 0x9F, 0xC9, 0x05, 0xE0,\n0x99, 0xF8, 0xBF, 0x91, 0x04, 0xF4, 0xFD, 0x1F, 0x6A, 0xE3, 0x00, 0x51, 0x4B, 0x0F, 0x78, 0x37,\n0x04, 0xC6, 0xD6, 0x00, 0x49, 0x71, 0x34, 0xB1, 0x7F, 0xC2, 0x3F, 0x3B, 0x5C, 0x29, 0xFD, 0x52,\n0x88, 0x1E, 0x09, 0xE7, 0xAA, 0x06, 0x50, 0xED, 0x9F, 0x12, 0xD0, 0x71, 0x80, 0x8F, 0xE0, 0x9F,\n0xBB, 0x0E, 0x78, 0x37, 0x00, 0x86, 0xF9, 0xB7, 0x13, 0xE3, 0x9F, 0x5A, 0xC0, 0x33, 0xCF, 0x03,\n0x0A, 0xFF, 0x20, 0x60, 0x5B, 0xFF, 0xE7, 0x67, 0x42, 0x9E, 0x76, 0x98, 0x08, 0x4D, 0x82, 0x85,\n0x7D, 0x72, 0x24, 0x3D, 0x77, 0xE6, 0xBF, 0x7F, 0xBC, 0xBC, 0x11, 0xAC, 0xAB, 0xC4, 0x55, 0x6F,\n0x16, 0x03, 0x04, 0xB4, 0xB7, 0x4F, 0x9D, 0xF3, 0xA3, 0x76, 0xBF, 0x25, 0x10, 0xE8, 0xFB, 0xBF,\n0xF1, 0x04, 0x9C, 0xD7, 0x5A, 0xC6, 0xBF, 0xDD, 0x61, 0x0F, 0x28, 0xFC, 0x63, 0x2B, 0x5C, 0x5C,\n0x3E, 0x00, 0x91, 0x39, 0xC0, 0x6F, 0xEF, 0x61, 0x00, 0x55, 0xFF, 0x1F, 0x0B, 0x18, 0x9E, 0x06,\n0x3B, 0x0E, 0x30, 0x87, 0xDC, 0xAB, 0x61, 0x06, 0xAA, 0xFB, 0xD3, 0x3E, 0xC0, 0x3F, 0x63, 0x60,\n0x37, 0x09, 0xAE, 0x1B, 0xC0, 0x1B, 0xFF, 0x97, 0x46, 0xDB, 0xB7, 0x7B, 0x3F, 0x8B, 0x0C, 0x81,\n0xDE, 0xFA, 0x1F, 0xE1, 0xF1, 0x0F, 0xB5, 0xF5, 0x7F, 0x10, 0x70, 0xC0, 0xFF, 0xED, 0x4F, 0x10,\n0x04, 0x64, 0xBB, 0x07, 0x03, 0xF8, 0x17, 0xC2, 0x1F, 0xCD, 0x4B, 0x80, 0x40, 0x0A, 0x3F, 0x01,\n0xA2, 0x4D, 0x3B, 0xDF, 0xFF, 0x99, 0xC4, 0xE4, 0x0D, 0xFB, 0x3F, 0xE4, 0xF2, 0x4F, 0x1D, 0xA0,\n0x47, 0xC0, 0xF4, 0x6B, 0xC6, 0x3F, 0x69, 0x1E, 0xFF, 0xEE, 0x4A, 0xC0, 0xBA, 0xB6, 0x36, 0xDF,\n0xDE, 0x0C, 0xE7, 0x27, 0x40, 0x44, 0x2D, 0x3D, 0xA0, 0xF0, 0xAF, 0x24, 0xE0, 0x3D, 0xEA, 0x00,\n0x9B, 0x58, 0x40, 0x1F, 0x8E, 0xED, 0x12, 0xC1, 0xB4, 0x66, 0x0E, 0x10, 0xFA, 0xB9, 0xEB, 0x80,\n0x42, 0x3E, 0xA5, 0x9F, 0x76, 0x1D, 0xFE, 0x1E, 0xE9, 0x51, 0xB4, 0x9E, 0x7E, 0xD2, 0xAA, 0xB9,\n0x60, 0x0D, 0x01, 0x60, 0x03, 0x0B, 0xE8, 0x00, 0xB0, 0x0D, 0x01, 0xF3, 0x47, 0x22, 0x2D, 0x86,\n0x3C, 0xA0, 0xAC, 0xFF, 0xA1, 0xCD, 0x2D, 0xEE, 0xB9, 0x94, 0x0F, 0xF0, 0x7F, 0xA3, 0x09, 0x38,\n0x1D, 0x92, 0x10, 0xC2, 0x62, 0xFA, 0xD8, 0xE1, 0x9F, 0xF2, 0x47, 0x10, 0x94, 0x34, 0x48, 0x2A,\n0xE1, 0x1F, 0x1A, 0xC8, 0x82, 0xC0, 0xBF, 0xFE, 0x3F, 0x79, 0xED, 0xF9, 0x3F, 0x91, 0x3F, 0x09,\n0x96, 0xDF, 0x16, 0x0C, 0x7C, 0x1A, 0xF3, 0x7F, 0xE3, 0x01, 0x38, 0xAF, 0x1C, 0xCA, 0x3F, 0x14,\n0xE2, 0x5F, 0xDB, 0x59, 0x30, 0x02, 0x80, 0xB9, 0x03, 0x1C, 0x8B, 0xC0, 0xFF, 0x9B, 0x07, 0x8C,\n0x2F, 0x03, 0xFA, 0x2B, 0x80, 0x91, 0x75, 0xC0, 0x7C, 0x06, 0xFC, 0x6C, 0x98, 0x7F, 0x38, 0xC0,\n0xD4, 0x56, 0x6A, 0xF4, 0x56, 0xCA, 0xC1, 0x22, 0x6C, 0xFE, 0xDB, 0x1D, 0x5A, 0x10, 0x5D, 0xAE,\n0xFE, 0x69, 0x53, 0xE8, 0x81, 0xC0, 0x99, 0x87, 0x3F, 0xC2, 0xC3, 0x1F, 0x6A, 0x63, 0x00, 0x37,\n0x4C, 0x10, 0xB0, 0xEA, 0xFF, 0x76, 0x27, 0x99, 0x36, 0xAB, 0x16, 0x70, 0xBC, 0x01, 0xA4, 0x39,\n0xFE, 0xCF, 0x42, 0xD2, 0xA6, 0xA7, 0x43, 0xFC, 0x53, 0x02, 0x3E, 0xEF, 0x3C, 0xD8, 0xA9, 0xCB,\n0x3F, 0x94, 0xF2, 0x1C, 0x35, 0x03, 0xF8, 0x0F, 0x77, 0x67, 0x8C, 0xF3, 0x34, 0x10, 0x44, 0xE1,\n0x1B, 0x20, 0x20, 0x42, 0x31, 0x1D, 0x12, 0x05, 0x88, 0x0E, 0x2A, 0x2E, 0x40, 0xE7, 0x22, 0x07,\n0x08, 0x39, 0x01, 0xE2, 0x0E, 0x1C, 0x80, 0x32, 0x0D, 0x91, 0x10, 0x15, 0x42, 0x4A, 0x83, 0x04,\n0x07, 0x64, 0x67, 0xEC, 0xE1, 0xC3, 0xD9, 0xAC, 0x67, 0x1C, 0x26, 0x40, 0x78, 0xB3, 0x5E, 0x3B,\n0x80, 0x20, 0x40, 0xFE, 0x8F, 0xB7, 0x3B, 0x33, 0xCB, 0xFE, 0x44, 0x2E, 0xFF, 0x76, 0x6F, 0x47,\n0x04, 0x1F, 0xE7, 0x13, 0xC0, 0xFC, 0xB6, 0xCA, 0x70, 0xFD, 0x1F, 0x23, 0x2E, 0xFB, 0xEB, 0xA9,\n0xEF, 0xAB, 0xD3, 0x03, 0x11, 0x5C, 0xFE, 0xA1, 0x0C, 0x00, 0xC2, 0xBF, 0xDA, 0x01, 0xC2, 0xA4,\n0x3F, 0xA8, 0xD7, 0x51, 0x30, 0xA2, 0xC4, 0x6D, 0xC0, 0x1C, 0xFF, 0x37, 0x4A, 0x1E, 0x84, 0x82,\n0x7E, 0xFE, 0x57, 0x67, 0xB6, 0x01, 0x95, 0x7E, 0x95, 0xFF, 0x1B, 0xB0, 0x07, 0x04, 0x05, 0x75,\n0x16, 0x38, 0x40, 0x99, 0x4F, 0xA3, 0xED, 0x01, 0x2F, 0x01, 0x20, 0x04, 0xCC, 0x48, 0x00, 0x07,\n0x09, 0xF8, 0x46, 0xF9, 0x37, 0x95, 0x26, 0x18, 0x81, 0x9F, 0xCD, 0x24, 0x40, 0x96, 0x03, 0xB0,\n0x4D, 0x40, 0xF6, 0xFF, 0xF0, 0x80, 0x6F, 0xDB, 0xFC, 0x63, 0x05, 0xAA, 0x0A, 0xF3, 0xEF, 0xD0,\n0xF4, 0x80, 0xF0, 0x8F, 0x1F, 0x3C, 0xCF, 0x3F, 0x65, 0xB0, 0x4C, 0x25, 0x9C, 0x02, 0x98, 0x88,\n0x07, 0x84, 0x7F, 0x8C, 0xB8, 0xCE, 0xD2, 0x0F, 0xFE, 0xF9, 0x04, 0x84, 0x7F, 0xB9, 0xDB, 0x80,\n0x95, 0x2A, 0x07, 0xB8, 0xD8, 0xFE, 0xFD, 0x7B, 0x16, 0x30, 0x9E, 0x08, 0x76, 0xFC, 0x9F, 0x67,\n0x01, 0xF1, 0x7F, 0x5C, 0x73, 0x08, 0x7C, 0x85, 0x03, 0x34, 0x0E, 0xAA, 0xD9, 0xAB, 0x2D, 0xA0,\n0x51, 0x4F, 0x6E, 0xC6, 0x42, 0xE5, 0x9D, 0xF9, 0x40, 0x02, 0xEE, 0xF1, 0xE4, 0x6D, 0x00, 0x12,\n0x1E, 0xFF, 0x50, 0x4E, 0x01, 0x60, 0x4D, 0xC0, 0xF9, 0x04, 0x30, 0xEA, 0xEE, 0xAE, 0x58, 0xFD,\n0x32, 0x5F, 0xC6, 0x3F, 0xC6, 0xEC, 0x02, 0x98, 0x68, 0x13, 0x50, 0x89, 0x03, 0x03, 0x15, 0x44,\n0x2E, 0xFF, 0x20, 0x20, 0xDB, 0x80, 0x0D, 0xFF, 0x87, 0xDA, 0x05, 0xD0, 0x9B, 0x23, 0xF0, 0x9B,\n0x2B, 0x07, 0xE4, 0xF7, 0xE3, 0xEE, 0x03, 0xAE, 0x7E, 0x0B, 0x80, 0x15, 0xFC, 0x54, 0x2B, 0xFE,\n0x56, 0x21, 0x60, 0x03, 0x80, 0xF0, 0x2F, 0x6F, 0x11, 0x0C, 0xFF, 0x90, 0xBB, 0x07, 0xE8, 0x23,\n0x30, 0x5F, 0x7F, 0xAE, 0x20, 0xFA, 0x77, 0xFD, 0xDF, 0xE0, 0xFB, 0x58, 0xFD, 0x42, 0xC0, 0x86,\n0x01, 0x94, 0xB0, 0x49, 0xAF, 0x42, 0xB7, 0xDA, 0x02, 0x8E, 0xD6, 0x6F, 0xBA, 0x0A, 0xA6, 0xEF,\n0x97, 0x80, 0x7F, 0x84, 0xA0, 0xD0, 0x35, 0x80, 0x84, 0xC3, 0x3F, 0x14, 0xE6, 0xDF, 0x3A, 0xC8,\n0xBF, 0x66, 0x41, 0xB4, 0xF0, 0xAF, 0x56, 0xC7, 0xF6, 0x7A, 0xAF, 0xD3, 0xA5, 0x09, 0x60, 0x06,\n0xA9, 0xE0, 0x56, 0x02, 0x98, 0x28, 0x04, 0x6C, 0xFA, 0xBF, 0x71, 0xFD, 0xB9, 0x1B, 0x30, 0xD4,\n0x2A, 0x88, 0xDE, 0x23, 0x08, 0x78, 0x38, 0x5F, 0x0C, 0xB3, 0x0F, 0x13, 0xF0, 0xA8, 0x08, 0x96,\n0x3A, 0x9C, 0xCD, 0x40, 0x3F, 0x8D, 0x46, 0x01, 0x60, 0x1D, 0x0D, 0x0F, 0xB8, 0x72, 0x00, 0xE8,\n0xCA, 0xFE, 0x8A, 0xEC, 0x4E, 0x01, 0xA0, 0x4B, 0x40, 0xF8, 0x97, 0xED, 0x01, 0xCF, 0x6A, 0xEA,\n0x00, 0x13, 0x94, 0x6D, 0x01, 0xF3, 0x09, 0xE8, 0x18, 0x40, 0x00, 0xE7, 0x7A, 0x40, 0x6A, 0x5F,\n0xE4, 0xCE, 0x75, 0x16, 0x7F, 0x95, 0x03, 0x2C, 0xE3, 0xC3, 0xD8, 0xF2, 0x51, 0xF9, 0x3F, 0x2E,\n0x1E, 0xD9, 0xF9, 0x63, 0xDC, 0x23, 0x08, 0xDF, 0xFF, 0x11, 0x1E, 0xFF, 0x50, 0x82, 0xFF, 0x73,\n0x09, 0x48, 0x03, 0x48, 0x9B, 0x80, 0xA8, 0x5F, 0x42, 0xBF, 0xBB, 0x7C, 0x25, 0x4F, 0xC6, 0xEC,\n0xFE, 0x1F, 0x51, 0x46, 0xC3, 0xFF, 0x61, 0xBC, 0x86, 0x5C, 0x88, 0x4C, 0x9E, 0xFF, 0x43, 0xDF,\n0x5D, 0xFE, 0xA1, 0xB3, 0xFE, 0x0F, 0xF3, 0x29, 0xB1, 0x1B, 0x73, 0x21, 0xCE, 0xFA, 0x97, 0xC0,\n0x03, 0x36, 0xF8, 0x97, 0x92, 0x0A, 0xA6, 0x00, 0xA6, 0xD6, 0x39, 0xFE, 0xF1, 0x71, 0x49, 0xF3,\n0x80, 0xF0, 0xAF, 0x06, 0x20, 0x34, 0xFA, 0x17, 0x94, 0x40, 0xC0, 0x78, 0x4B, 0xDC, 0xEF, 0x6E,\n0x00, 0x4E, 0xA8, 0x07, 0x0B, 0x11, 0x00, 0xAC, 0x1D, 0xA0, 0xDE, 0xEE, 0x09, 0xFE, 0x26, 0xFE,\n0x0F, 0xF2, 0x4D, 0x19, 0x68, 0x79, 0x5F, 0xF6, 0xFF, 0x26, 0xD4, 0x73, 0x72, 0xC1, 0x8D, 0x88,\n0xF3, 0x4F, 0xCE, 0x7B, 0x8E, 0xF1, 0x6F, 0xDD, 0x2E, 0x80, 0xF1, 0x09, 0xF8, 0xA6, 0x79, 0x10,\n0x74, 0x4F, 0x2E, 0x38, 0xC5, 0xFF, 0xE9, 0x78, 0x3E, 0xE7, 0xFF, 0x88, 0xF3, 0xFB, 0x80, 0x23,\n0xFB, 0x76, 0x56, 0x82, 0x22, 0x2E, 0x50, 0x75, 0xF4, 0xFC, 0x1F, 0x50, 0x6B, 0x17, 0xC0, 0xD4,\n0x3A, 0xDF, 0x00, 0xA2, 0x93, 0xC8, 0xDE, 0x89, 0x44, 0xB3, 0x01, 0xA4, 0x0E, 0x27, 0x01, 0xCC,\n0x58, 0xDC, 0x12, 0x82, 0x01, 0x6C, 0xF3, 0xAF, 0x3F, 0xFD, 0x17, 0x10, 0xFF, 0x97, 0xEB, 0x01,\n0x9B, 0xC2, 0x01, 0xC6, 0x74, 0x0B, 0x1E, 0x70, 0x41, 0x2E, 0xF8, 0x24, 0x66, 0x79, 0x77, 0xBE,\n0x03, 0x98, 0x19, 0x18, 0xD6, 0xFE, 0xAF, 0x76, 0x80, 0x36, 0x24, 0xE5, 0xEB, 0x19, 0xC0, 0xD1,\n0x03, 0x8E, 0x6D, 0xC1, 0xAC, 0x7F, 0x5B, 0x08, 0xF4, 0xFD, 0x1F, 0xE1, 0xF3, 0x8F, 0x4C, 0xC8,\n0xE5, 0x05, 0x80, 0x41, 0x02, 0x52, 0x00, 0xDD, 0x20, 0xA0, 0xE9, 0xF2, 0x02, 0x18, 0x46, 0x5D,\n0x10, 0x5D, 0x5E, 0x34, 0x30, 0x01, 0x01, 0x91, 0xB2, 0xCE, 0xAC, 0xDF, 0x68, 0xC5, 0xC6, 0xD7,\n0x55, 0x03, 0x30, 0x42, 0xEA, 0x0A, 0xAB, 0x96, 0x90, 0x7D, 0x5B, 0x75, 0x03, 0xB0, 0xE5, 0x3E,\n0x88, 0xB1, 0x2D, 0xAF, 0x95, 0x00, 0xAE, 0xC9, 0x5E, 0xF3, 0x2F, 0x05, 0x80, 0x6C, 0x57, 0xC0,\n0x3F, 0x84, 0xBA, 0x53, 0x00, 0x3E, 0x91, 0x06, 0x90, 0x20, 0x01, 0xD7, 0x61, 0x02, 0xB6, 0x55,\n0x1C, 0xE0, 0xBF, 0x23, 0x07, 0x81, 0xD7, 0xCE, 0x05, 0xFB, 0x4D, 0x1F, 0xBC, 0x60, 0xE5, 0x0B,\n0xF8, 0xCC, 0x04, 0xD6, 0x00, 0x6C, 0x3A, 0xC0, 0x0F, 0xBA, 0x0D, 0x48, 0x03, 0xF0, 0xBD, 0x06,\n0xFD, 0xE4, 0xC2, 0xFB, 0x61, 0xFF, 0x08, 0xA2, 0xF2, 0x80, 0xB3, 0xE1, 0xF3, 0x0F, 0x02, 0x06,\n0xF1, 0xB7, 0x76, 0xD7, 0xBF, 0x7C, 0xA4, 0x27, 0x2D, 0x21, 0xEF, 0x48, 0x00, 0xA3, 0xAA, 0x20,\n0xBA, 0xBF, 0xB0, 0xFE, 0xC5, 0xDB, 0x07, 0xA4, 0x01, 0xB8, 0x11, 0x27, 0x0D, 0x70, 0x06, 0x1C,\n0xAD, 0x42, 0x31, 0xFC, 0x50, 0x0E, 0x88, 0xBE, 0xEC, 0x67, 0xE4, 0xAF, 0x7F, 0xA1, 0x65, 0x9D,\n0x00, 0x1E, 0x80, 0x27, 0xD3, 0xCE, 0xDE, 0x89, 0x72, 0x78, 0x4A, 0x6A, 0xFC, 0x5F, 0x1D, 0x8F,\n0x6B, 0xFF, 0x97, 0x43, 0xC0, 0x7E, 0x72, 0x00, 0x4C, 0x43, 0xB4, 0x84, 0xD0, 0x00, 0xD2, 0x16,\n0x9F, 0x2C, 0x57, 0x2E, 0xFF, 0x00, 0x60, 0x82, 0x01, 0xCC, 0x82, 0xDE, 0x5F, 0x68, 0x09, 0xF1,\n0xF7, 0xFF, 0x18, 0x53, 0x02, 0x52, 0xFF, 0x3C, 0x82, 0xAF, 0xB5, 0x0D, 0xF8, 0xAA, 0xE9, 0x00,\n0xF5, 0xE2, 0xF8, 0x97, 0x4F, 0xAD, 0xE5, 0xAF, 0x11, 0x90, 0x24, 0x70, 0x41, 0xE0, 0x5C, 0x00,\n0xBF, 0x7B, 0x8B, 0x08, 0xE8, 0xE8, 0x22, 0xFF, 0x07, 0x00, 0x11, 0x12, 0x02, 0x56, 0x0D, 0x20,\n0x0E, 0x01, 0xE1, 0xDF, 0x62, 0xFC, 0x39, 0xC5, 0x30, 0x4D, 0xF8, 0xD5, 0x6D, 0xC1, 0x0A, 0x3A,\n0x01, 0x8E, 0xB1, 0x6F, 0x37, 0xBC, 0xAA, 0xCA, 0x01, 0x8F, 0x03, 0xBD, 0x2A, 0x51, 0x0E, 0xE8,\n0xAC, 0x7F, 0xD1, 0x97, 0xAA, 0x01, 0x44, 0x7E, 0x41, 0x63, 0x9F, 0xBE, 0x13, 0x7B, 0xA8, 0x1B,\n0x40, 0x08, 0x82, 0x62, 0x18, 0xF8, 0x97, 0x44, 0xC0, 0xAA, 0x01, 0xA4, 0x09, 0xC0, 0x49, 0x03,\n0xF0, 0x9D, 0xF9, 0x4F, 0xCB, 0x75, 0x00, 0xF8, 0xAF, 0x6C, 0x00, 0x26, 0x16, 0xC3, 0xBC, 0x08,\n0x8F, 0xCB, 0x0B, 0x00, 0xC9, 0xFF, 0x42, 0xC1, 0xBA, 0x18, 0x46, 0x49, 0xD7, 0x76, 0x80, 0x62,\n0xFF, 0x6C, 0x34, 0xF0, 0xC7, 0x93, 0xD8, 0x3F, 0x12, 0x20, 0xCD, 0x20, 0x15, 0x2C, 0x95, 0xD1,\n0x6B, 0x2F, 0x16, 0x00, 0xD0, 0x27, 0x60, 0x7C, 0xFD, 0x4B, 0x53, 0x5C, 0xC4, 0xFF, 0xD1, 0x12,\n0x02, 0xFF, 0x72, 0x08, 0x38, 0xE1, 0x5F, 0xE5, 0x94, 0x5A, 0x2D, 0x21, 0x9A, 0x72, 0x38, 0x52,\n0x7D, 0xC2, 0x4E, 0x60, 0xE5, 0x01, 0xF7, 0xF3, 0x3A, 0x48, 0xE7, 0x87, 0x86, 0xC3, 0xBF, 0x03,\n0x2D, 0x21, 0x34, 0x80, 0x50, 0x07, 0x83, 0x15, 0xDD, 0xC9, 0xF3, 0xA4, 0x01, 0xC4, 0x27, 0x20,\n0xFC, 0xCB, 0xF0, 0x80, 0x74, 0x05, 0xC3, 0xBF, 0xB6, 0xAA, 0x02, 0xC0, 0x0C, 0x0F, 0xE8, 0xF1,\n0x0F, 0x00, 0xFE, 0x75, 0xFC, 0xBD, 0x0E, 0x46, 0xE6, 0x36, 0x20, 0x83, 0x58, 0x76, 0x02, 0x60,\n0x7D, 0x0D, 0x93, 0xDD, 0xE0, 0x5F, 0xC3, 0x01, 0x1A, 0x01, 0x3F, 0xD1, 0xFF, 0xD1, 0xF2, 0x7E,\n0x93, 0x83, 0x11, 0x64, 0x12, 0xC4, 0x39, 0xE1, 0x6D, 0x00, 0x12, 0xF0, 0xCF, 0x53, 0x4A, 0x02,\n0xB8, 0x55, 0x10, 0x4D, 0x03, 0xDC, 0x1C, 0x01, 0x13, 0x0D, 0x20, 0x1E, 0x10, 0xFE, 0x29, 0x12,\n0xDA, 0x71, 0xDA, 0x00, 0x07, 0x7B, 0x40, 0x1F, 0x1E, 0x90, 0x0E, 0xE0, 0x79, 0xAE, 0x0D, 0xDB,\n0x80, 0x65, 0xEC, 0x5D, 0x9D, 0x24, 0x80, 0xD5, 0x79, 0xB2, 0xF2, 0xB5, 0x37, 0xA1, 0xA3, 0xB9,\n0xFF, 0xD7, 0xDE, 0x07, 0x5C, 0x25, 0x02, 0x90, 0x82, 0x68, 0xFF, 0xFF, 0xC8, 0x74, 0xF9, 0x87,\n0xE0, 0x5B, 0x9C, 0x80, 0x0E, 0x00, 0xFF, 0x0D, 0xF7, 0x17, 0xE3, 0xE0, 0x55, 0x16, 0xC1, 0xCB,\n0x4F, 0x80, 0x81, 0x72, 0x74, 0xC0, 0xA9, 0xF5, 0x83, 0x81, 0x26, 0xE0, 0x57, 0x39, 0x40, 0xCA,\n0x01, 0x75, 0x00, 0xBB, 0x09, 0xF4, 0x26, 0x4C, 0x14, 0xF8, 0xA9, 0x0B, 0xD4, 0xD1, 0x0E, 0x3C,\n0x60, 0x20, 0xC2, 0xFC, 0xC3, 0x03, 0xE6, 0xF0, 0x0F, 0x02, 0xD2, 0x00, 0xEC, 0x12, 0x30, 0xCD,\n0x00, 0x32, 0x9E, 0x5B, 0x01, 0x0C, 0xFC, 0x6B, 0x7B, 0xC0, 0xB7, 0xC6, 0x3F, 0xAB, 0x3B, 0xD9,\n0x95, 0xA1, 0xE8, 0x33, 0xFB, 0x35, 0x42, 0xC8, 0x12, 0x20, 0xE0, 0xAF, 0xA9, 0xD1, 0x02, 0x7A,\n0x00, 0x3C, 0xC8, 0xF8, 0xA8, 0x52, 0xFA, 0xB1, 0xF3, 0x27, 0xC3, 0x5E, 0xC8, 0xAC, 0xEF, 0xAE,\n0x2A, 0x80, 0x71, 0x3D, 0x60, 0xE0, 0x4F, 0x0B, 0xC5, 0x4C, 0x20, 0xFE, 0xCF, 0x21, 0x60, 0xC5,\n0xBF, 0xB4, 0x54, 0xF0, 0xBF, 0x0F, 0xC0, 0xD7, 0xF1, 0xB8, 0x4E, 0x35, 0x8C, 0x44, 0xD4, 0xFA,\n0x51, 0xFF, 0x77, 0xA6, 0x0F, 0x04, 0x0C, 0x02, 0xC0, 0x19, 0x07, 0x68, 0x97, 0xD8, 0xBF, 0x13,\n0xF2, 0x35, 0x12, 0x21, 0x1C, 0x80, 0xE0, 0x06, 0xFE, 0x2F, 0xE8, 0x01, 0x23, 0xCA, 0xF5, 0x7F,\n0x10, 0x70, 0xFB, 0x66, 0xEB, 0xF0, 0x8F, 0x96, 0x90, 0xAC, 0x04, 0x30, 0xE3, 0x39, 0x27, 0x00,\n0xB6, 0x82, 0x96, 0x10, 0xE5, 0x9F, 0xF9, 0x3D, 0xBC, 0x1F, 0xF6, 0x4B, 0xE1, 0x64, 0x05, 0xD1,\n0xFB, 0x80, 0x0E, 0xEF, 0x8B, 0x05, 0xA4, 0x01, 0x24, 0xE0, 0x01, 0x2D, 0xF5, 0x3C, 0xDE, 0x79,\n0x31, 0x3E, 0x0D, 0x8F, 0xAE, 0xFF, 0xC3, 0x03, 0x3E, 0xA7, 0x01, 0x24, 0x8F, 0x80, 0x9A, 0xAA,\n0xEF, 0x1E, 0x46, 0x08, 0x08, 0xFF, 0x3C, 0x19, 0xDB, 0xC2, 0x04, 0xBC, 0x01, 0x00, 0x2E, 0x81,\n0xE0, 0x75, 0x16, 0xC1, 0xCB, 0x4F, 0x80, 0xB6, 0x8B, 0x3D, 0x40, 0xD0, 0x87, 0x2B, 0xC4, 0xF8,\n0xB5, 0x1D, 0xA0, 0xCC, 0x82, 0xBF, 0xAA, 0x01, 0xE4, 0x3C, 0x04, 0x23, 0xEB, 0x5F, 0xDA, 0x82,\n0xA3, 0x01, 0xFF, 0x1C, 0x85, 0xF9, 0xB7, 0x86, 0x7F, 0x01, 0x02, 0xDE, 0xB7, 0x06, 0x10, 0x4F,\n0xDD, 0x2A, 0xD1, 0xFF, 0x41, 0x40, 0x3A, 0x80, 0xBD, 0xA0, 0x01, 0xE4, 0xA7, 0xEB, 0x32, 0xDB,\n0x65, 0xF7, 0xDD, 0x08, 0x41, 0x97, 0x7F, 0xB4, 0x84, 0x7C, 0xF3, 0xFC, 0xDF, 0xE4, 0x74, 0x40,\n0x36, 0x1B, 0xD9, 0xF7, 0xA3, 0x11, 0x84, 0x74, 0x08, 0x0D, 0x20, 0x2E, 0x03, 0xC9, 0xFF, 0x26,\n0x22, 0x90, 0x06, 0x38, 0x97, 0x80, 0x34, 0x80, 0x24, 0x7B, 0x40, 0xD5, 0x3F, 0x5F, 0x06, 0x73,\n0x05, 0x0F, 0x18, 0xC7, 0x1F, 0xFE, 0x2F, 0x34, 0x38, 0xFF, 0xA0, 0xC8, 0x48, 0x68, 0x2F, 0x4E,\n0xBE, 0xED, 0x55, 0xCC, 0x01, 0x7E, 0xD2, 0x0A, 0xE8, 0x39, 0x0B, 0xC8, 0x2D, 0xCA, 0xBF, 0xA2,\n0xBF, 0xFF, 0x5F, 0xC5, 0xDD, 0x41, 0x0E, 0x01, 0xE1, 0x9F, 0x4B, 0xC0, 0xB8, 0x9E, 0xC7, 0x07,\n0x3E, 0xC9, 0x8B, 0x8D, 0xE5, 0x3E, 0x4E, 0x2D, 0x98, 0xDC, 0x35, 0xD8, 0x07, 0xDC, 0x07, 0xF5,\n0x85, 0x0D, 0x40, 0x5F, 0xC3, 0xFE, 0x1F, 0xBF, 0x24, 0xB5, 0x80, 0x96, 0x16, 0xFE, 0xF9, 0x56,\n0xF0, 0x7F, 0xBE, 0x07, 0x5C, 0x5D, 0x83, 0x80, 0xB8, 0x7A, 0x4F, 0x7A, 0x02, 0x7E, 0x3E, 0x01,\n0x6F, 0x04, 0x80, 0x0B, 0x1D, 0x60, 0x3E, 0x02, 0x97, 0x1F, 0x01, 0x8D, 0x07, 0xE4, 0x69, 0x78,\n0x34, 0x57, 0x28, 0xFC, 0xF3, 0x1C, 0xA0, 0x5D, 0x53, 0xCE, 0xD9, 0x75, 0xF6, 0x06, 0xFF, 0x9C,\n0xB8, 0x12, 0x00, 0x17, 0x25, 0x80, 0xA3, 0x04, 0xDC, 0x76, 0xE1, 0x2F, 0x15, 0x0C, 0x60, 0x1A,\n0x01, 0xCB, 0x84, 0xFF, 0x73, 0xB7, 0x01, 0x81, 0x9E, 0xB9, 0xAE, 0x9D, 0x9E, 0x8A, 0x5F, 0x06,\n0xCE, 0x70, 0xE8, 0x0A, 0xDE, 0x1F, 0x82, 0x4C, 0xDB, 0x7F, 0xFB, 0x1E, 0x75, 0x8B, 0xFB, 0xC3,\n0xDB, 0x61, 0x95, 0x6B, 0xBF, 0xA4, 0xBD, 0x01, 0x78, 0xC8, 0xB9, 0x08, 0xBC, 0x73, 0x2F, 0x9E,\n0xAF, 0xF2, 0xF9, 0xC7, 0x06, 0xA0, 0xA7, 0xAE, 0xDF, 0x2E, 0xF8, 0xB4, 0xC4, 0x3F, 0x82, 0xB7,\n0x02, 0xC0, 0xD7, 0x7F, 0xF9, 0x64, 0x98, 0xE5, 0x29, 0x60, 0xE8, 0xC7, 0x3C, 0x7E, 0x0F, 0xD3,\n0xAB, 0x98, 0x03, 0xD4, 0xF9, 0x59, 0xD0, 0x01, 0x16, 0x85, 0x11, 0x98, 0xC9, 0x3F, 0x94, 0xE6,\n0xFF, 0x30, 0x80, 0x65, 0x17, 0xB0, 0x8F, 0x5A, 0xC0, 0xFE, 0x0A, 0x04, 0x64, 0x07, 0xD0, 0x0F,\n0x29, 0x81, 0x3E, 0x4E, 0xED, 0x97, 0x84, 0x62, 0x4F, 0x1F, 0xA9, 0x49, 0xF9, 0x08, 0xFF, 0x1C,\n0xAA, 0x45, 0x1D, 0xA0, 0xA6, 0x41, 0x76, 0x43, 0xFE, 0x59, 0xC2, 0x26, 0x2B, 0xC3, 0xDE, 0x4D,\n0x6B, 0x13, 0x37, 0x60, 0xDD, 0x89, 0xEB, 0x2C, 0x81, 0xFB, 0xB0, 0xAF, 0x97, 0x1D, 0xC0, 0x38,\n0x01, 0xFF, 0x3B, 0x00, 0x86, 0x11, 0x88, 0x72, 0x4F, 0x86, 0x89, 0xE3, 0x8F, 0x34, 0x6F, 0xD5,\n0x0B, 0x5C, 0x67, 0x41, 0xE0, 0x9B, 0xB7, 0x07, 0x08, 0xF6, 0xE6, 0x1D, 0xA0, 0x28, 0xCC, 0x3F,\n0x4B, 0x81, 0x78, 0xB1, 0x46, 0x89, 0x04, 0x7C, 0x19, 0x07, 0xE0, 0x76, 0xFB, 0xE4, 0x51, 0x1F,\n0xB4, 0x0A, 0xDD, 0x12, 0x02, 0x86, 0x17, 0xC0, 0x63, 0x11, 0xA0, 0x1F, 0x05, 0x2A, 0x6C, 0xFB,\n0xE9, 0xA4, 0x0F, 0x2C, 0x86, 0xC7, 0xBC, 0xB0, 0x16, 0xC2, 0x44, 0x09, 0xA8, 0x55, 0x30, 0x6E,\n0xBE, 0x98, 0x93, 0x01, 0x87, 0xC2, 0x43, 0xFA, 0x3E, 0xAC, 0x14, 0xD1, 0x58, 0x38, 0x02, 0x9A,\n0x26, 0x60, 0x2F, 0x28, 0x02, 0xF4, 0x86, 0x70, 0xED, 0x79, 0x30, 0xBA, 0x3E, 0x46, 0xC0, 0xAE,\n0xF0, 0xEF, 0xDD, 0xF6, 0x4E, 0x5C, 0x51, 0xFC, 0xDD, 0x0E, 0x00, 0x17, 0x1A, 0xC0, 0x7C, 0x07,\n0x18, 0xC5, 0x9F, 0x10, 0xB0, 0x6A, 0xFC, 0xAD, 0x73, 0x20, 0x72, 0x8F, 0x67, 0x81, 0x07, 0x45,\n0xD6, 0xBF, 0x45, 0x65, 0x0A, 0x6E, 0x03, 0xC6, 0x2D, 0xE0, 0x42, 0x25, 0xF9, 0x3F, 0xF8, 0x57,\n0x00, 0x18, 0xF4, 0x80, 0x7D, 0xDF, 0x77, 0xDD, 0xDD, 0x2B, 0xF0, 0xCF, 0xF7, 0x80, 0x23, 0xFF,\n0x94, 0x80, 0x24, 0x5E, 0xF5, 0x52, 0xDB, 0x67, 0x1B, 0x70, 0x14, 0x02, 0x46, 0x09, 0x48, 0x1B,\n0x5C, 0x80, 0x7F, 0x2A, 0xF3, 0x80, 0x0A, 0xE2, 0x9F, 0x86, 0x6F, 0x6C, 0x48, 0xD1, 0xC9, 0xDA,\n0xE1, 0x8A, 0xB9, 0x8B, 0x18, 0x40, 0x51, 0xB6, 0x01, 0xEC, 0x1F, 0xF6, 0x31, 0x02, 0xF6, 0xC5,\n0xFF, 0x6D, 0xB7, 0x4B, 0x3C, 0xE0, 0x7F, 0x07, 0xC0, 0x6B, 0x58, 0xC0, 0x17, 0x51, 0x04, 0x0A,\n0xFE, 0xA2, 0x00, 0x2C, 0x17, 0x2B, 0x5D, 0xD8, 0x37, 0xED, 0x04, 0x59, 0x56, 0x07, 0x68, 0x32,\n0xCC, 0xCD, 0xAD, 0x7F, 0x8D, 0x80, 0x44, 0x06, 0x01, 0x17, 0x2B, 0x77, 0x01, 0xBC, 0x15, 0xBD,\n0x7B, 0x17, 0x20, 0x60, 0x27, 0x5F, 0x51, 0x3D, 0x89, 0x90, 0x9C, 0x4A, 0x68, 0xE5, 0x5F, 0x6C,\n0x11, 0x3C, 0x30, 0x65, 0xDA, 0x08, 0x6C, 0xAB, 0xCF, 0x9F, 0x14, 0x9A, 0x9C, 0x0A, 0x18, 0xE3,\n0x9F, 0x28, 0x44, 0x40, 0x1A, 0x41, 0x38, 0x87, 0xB5, 0x0C, 0x4C, 0xE9, 0xF8, 0x1E, 0x28, 0x84,\n0x8E, 0xE0, 0x4F, 0xF5, 0x38, 0xAB, 0x0E, 0x10, 0xFE, 0x89, 0x05, 0xEC, 0x22, 0xFC, 0x7B, 0xB2,\n0x15, 0xDD, 0x89, 0x6B, 0x1D, 0xE0, 0xDF, 0x6D, 0x01, 0x30, 0xCE, 0xBF, 0x7C, 0x02, 0x7E, 0x8E,\n0x7A, 0x40, 0x7C, 0x5F, 0x55, 0x09, 0xA8, 0x2F, 0xF9, 0x46, 0xBF, 0x13, 0x84, 0x61, 0x02, 0x77,\n0xAD, 0xDB, 0x75, 0x08, 0x88, 0xD2, 0x08, 0xB8, 0xBE, 0xB3, 0x84, 0x7F, 0xAA, 0x3B, 0xEF, 0xCA,\n0x17, 0x4C, 0xC0, 0xFF, 0x89, 0xA9, 0xE8, 0xB3, 0xF9, 0xA7, 0x72, 0xD7, 0x8A, 0x85, 0x7F, 0xA6,\n0x23, 0xFC, 0xD9, 0xEC, 0xAC, 0xF2, 0x05, 0x24, 0x15, 0x00, 0xDA, 0x29, 0xF6, 0x07, 0x77, 0x65,\n0x5B, 0xF8, 0x17, 0x6D, 0x05, 0xF9, 0xE5, 0x28, 0x98, 0x8D, 0x1D, 0xC3, 0x5A, 0x02, 0xF4, 0xC9,\n0x45, 0x2B, 0x5C, 0xB0, 0x12, 0xF0, 0x29, 0x04, 0xCC, 0xF5, 0x7F, 0x9D, 0x8C, 0xCE, 0xAF, 0x81,\n0xF9, 0xF9, 0x19, 0x08, 0x2B, 0xC0, 0xBF, 0x5B, 0x03, 0x60, 0x1E, 0xFF, 0x10, 0x9B, 0x7C, 0xED,\n0x41, 0x84, 0x2A, 0x00, 0x2D, 0x13, 0x0C, 0xE8, 0xF0, 0x81, 0xC0, 0x11, 0xB5, 0xB3, 0xC0, 0x36,\n0x90, 0x71, 0xAE, 0x75, 0x43, 0xDE, 0x1A, 0x58, 0xC6, 0x3A, 0x48, 0xC0, 0x8B, 0x94, 0xB8, 0xFF,\n0x67, 0xBA, 0xE3, 0xD5, 0x42, 0xDB, 0x57, 0x14, 0x04, 0xCC, 0xED, 0x05, 0x8E, 0x75, 0xC2, 0x41,\n0xC0, 0x9D, 0xC1, 0x86, 0x54, 0xC4, 0x80, 0xA2, 0x4D, 0xC9, 0x7F, 0x20, 0x9F, 0x7F, 0x16, 0x2E,\n0x00, 0xF9, 0x39, 0x3F, 0x5A, 0x1E, 0xDA, 0xF0, 0x27, 0x77, 0x4B, 0x44, 0x2B, 0xFF, 0x90, 0xCF,\n0x3F, 0x08, 0x98, 0xC7, 0xBF, 0xAE, 0xC4, 0x30, 0x5C, 0xFE, 0x3D, 0xE1, 0x33, 0xF0, 0x32, 0x8B,\n0x80, 0xEB, 0xDB, 0x03, 0x60, 0x7E, 0x09, 0x8C, 0xDE, 0x1C, 0xF6, 0x0D, 0xE6, 0x2F, 0xB4, 0x0A,\n0x2E, 0x84, 0x1B, 0x48, 0x57, 0x75, 0x83, 0xE8, 0x93, 0xDC, 0x96, 0x9F, 0x06, 0x33, 0x91, 0x63,\n0x00, 0xD1, 0xB3, 0x3C, 0x0F, 0x88, 0xB2, 0x08, 0xB8, 0x5E, 0xB6, 0xFE, 0x0D, 0x13, 0xB0, 0xEB,\n0x2F, 0x22, 0x60, 0xD0, 0xFF, 0x39, 0xCB, 0x60, 0xCE, 0x42, 0xB0, 0x55, 0x30, 0xFE, 0x0F, 0x2B,\n0x68, 0x2E, 0xAC, 0x30, 0x0A, 0x79, 0xFC, 0xD3, 0x25, 0xF0, 0x41, 0x8F, 0x43, 0x70, 0x37, 0x00,\n0xD1, 0x6E, 0x43, 0xE1, 0x1F, 0xFC, 0xB5, 0x69, 0xF3, 0xAB, 0xDC, 0x05, 0x30, 0xCA, 0x3A, 0x0D,\n0xE6, 0x6E, 0x67, 0xF8, 0x2B, 0x23, 0xE2, 0xFF, 0x16, 0x7B, 0xC0, 0xFF, 0x10, 0x80, 0x0E, 0x02,\n0x51, 0xE2, 0x22, 0x78, 0x20, 0x9F, 0xCC, 0xAE, 0x09, 0xD4, 0x04, 0x08, 0x0E, 0xB0, 0xEE, 0x85,\n0x93, 0x69, 0xD9, 0x79, 0x80, 0x15, 0x00, 0x7D, 0xFA, 0xB1, 0x0A, 0x0E, 0x34, 0xC2, 0x0D, 0x2F,\n0x1C, 0xFE, 0xA5, 0x13, 0x70, 0xFD, 0x72, 0x49, 0x01, 0x4C, 0x98, 0x80, 0x8A, 0x3F, 0x08, 0xC8,\n0xD7, 0xE3, 0xC5, 0x04, 0x34, 0xFF, 0x87, 0xDC, 0xB3, 0x60, 0xD0, 0x88, 0x1A, 0x12, 0x10, 0x96,\n0x0E, 0xDE, 0x54, 0x87, 0xE2, 0xCF, 0xF2, 0x4F, 0xE9, 0x27, 0xFE, 0x4F, 0x87, 0xEB, 0xFF, 0x10,\n0x5B, 0x90, 0xA4, 0x82, 0xCB, 0x13, 0xFC, 0x43, 0x9E, 0xFF, 0x8B, 0x7A, 0xC0, 0x38, 0xFF, 0xC4,\n0xFF, 0x31, 0x66, 0xBB, 0xE0, 0xA6, 0x1F, 0x81, 0x78, 0x26, 0x64, 0x9E, 0x7F, 0xB7, 0x09, 0xC0,\n0xDC, 0xE5, 0xAF, 0x9B, 0x0B, 0x26, 0x3E, 0xDB, 0xDD, 0xC9, 0x80, 0x28, 0xEB, 0x2C, 0x15, 0xCC,\n0x52, 0xB7, 0x6A, 0x01, 0xA9, 0x3D, 0x20, 0x0E, 0xB0, 0xC6, 0x1F, 0x6A, 0xC1, 0x0F, 0x02, 0xA2,\n0x07, 0x21, 0xFB, 0xE7, 0x14, 0x44, 0x5F, 0x2E, 0xCF, 0xFF, 0xC5, 0xF9, 0x87, 0x9E, 0xCC, 0x10,\n0xB0, 0x9F, 0x7E, 0x49, 0x75, 0x09, 0xE5, 0x80, 0xE5, 0x32, 0x03, 0x04, 0x01, 0x1D, 0xFE, 0xA1,\n0xE3, 0x88, 0x1D, 0xF3, 0x61, 0x16, 0x9B, 0xB7, 0xB2, 0x44, 0x45, 0xE5, 0x55, 0xFB, 0x70, 0x03,\n0xA5, 0x9E, 0x4C, 0xE3, 0xC3, 0xD7, 0x80, 0xFF, 0x83, 0x80, 0xA3, 0xE3, 0xB4, 0x13, 0x19, 0x8C,\n0x85, 0xC6, 0x3F, 0x34, 0x03, 0x76, 0xE4, 0x9E, 0x88, 0xB0, 0x94, 0x7F, 0xBE, 0x07, 0xEC, 0xE1,\n0x5F, 0xAA, 0x07, 0x5C, 0xDF, 0x2A, 0x00, 0x7F, 0xB0, 0x77, 0xC6, 0xB8, 0x6D, 0x03, 0x41, 0x14,\n0xBD, 0x41, 0xE0, 0xC0, 0x70, 0xA8, 0xD2, 0x80, 0x8B, 0x08, 0xE9, 0xC2, 0x2A, 0xAD, 0x8B, 0x74,\n0x2A, 0x74, 0x00, 0x39, 0x27, 0x08, 0x72, 0x07, 0x55, 0x39, 0x81, 0x1B, 0x0B, 0x30, 0x58, 0x19,\n0x29, 0x5D, 0xE4, 0x80, 0x19, 0x4E, 0x76, 0xF5, 0x25, 0x8D, 0x3E, 0xFF, 0x8A, 0xDC, 0x04, 0x90,\n0xE0, 0xBF, 0x43, 0x52, 0x4C, 0x04, 0x57, 0xF6, 0xC3, 0xDF, 0x99, 0xD9, 0xDD, 0x8A, 0xFC, 0xC3,\n0xFC, 0x97, 0xF3, 0x0F, 0x06, 0x10, 0x9F, 0x49, 0x64, 0xEE, 0xC1, 0x0C, 0x26, 0xE4, 0xE1, 0x02,\n0x0A, 0x8B, 0xCF, 0x04, 0x09, 0x22, 0x5D, 0xD0, 0xAE, 0x00, 0x40, 0xE1, 0xFF, 0x12, 0x22, 0x1B,\n0x3E, 0x0D, 0x9E, 0x26, 0x06, 0xC0, 0x53, 0xF9, 0x07, 0xAD, 0xDF, 0xDD, 0x3A, 0x01, 0xF9, 0xFC,\n0x17, 0x31, 0x7D, 0x49, 0x88, 0xDD, 0xE6, 0x90, 0x4A, 0x04, 0x2E, 0x83, 0x1C, 0x3B, 0x58, 0x10,\n0x92, 0x26, 0xC5, 0xC6, 0xBF, 0xA8, 0xE1, 0xFC, 0x9F, 0xE9, 0xD5, 0x50, 0x98, 0x4B, 0xC1, 0x9B,\n0x22, 0xFE, 0xD9, 0xFB, 0x6E, 0x0A, 0x10, 0x25, 0x90, 0xC8, 0x3F, 0x93, 0xF6, 0x7F, 0xF0, 0x80,\n0x15, 0x4E, 0x04, 0x39, 0x04, 0xE0, 0x8C, 0xFA, 0xBF, 0x8F, 0x2B, 0x06, 0x40, 0x2D, 0xCE, 0xBF,\n0xF3, 0x05, 0x60, 0x25, 0xFE, 0x81, 0x7C, 0xC4, 0x04, 0x46, 0xEB, 0x67, 0x43, 0x1C, 0x0B, 0x07,\n0x07, 0xE8, 0x01, 0xF2, 0xC5, 0x06, 0xE8, 0x48, 0xC0, 0xE3, 0x39, 0xC0, 0x28, 0xB2, 0x21, 0x20,\n0x27, 0xA0, 0x76, 0x80, 0xFF, 0x13, 0x80, 0xCD, 0x69, 0x0D, 0x80, 0xDF, 0xC3, 0xAF, 0xFF, 0xED,\n0x6C, 0x46, 0xF8, 0x37, 0x9B, 0xE2, 0x01, 0xC5, 0x6E, 0xD0, 0x02, 0x80, 0x77, 0x73, 0x72, 0x2C,\n0x66, 0x32, 0x81, 0x0E, 0x9E, 0xE4, 0xBF, 0xE0, 0xFF, 0x94, 0x07, 0x44, 0x03, 0x8C, 0x0F, 0x0B,\n0x1F, 0xCA, 0xFF, 0x41, 0xB6, 0x24, 0x04, 0xDB, 0x40, 0xC3, 0x88, 0x2E, 0x21, 0x00, 0x90, 0xD4,\n0x82, 0xE7, 0x51, 0x13, 0xFD, 0xDF, 0xE7, 0xAB, 0xAB, 0x5C, 0x00, 0x46, 0x10, 0x02, 0x2E, 0x02,\n0xFF, 0xAA, 0xB4, 0x03, 0x36, 0xE7, 0x0C, 0xC0, 0x3A, 0xFC, 0x03, 0x02, 0xC1, 0x3B, 0xD2, 0xFF,\n0x92, 0x2F, 0x1F, 0xC3, 0x3B, 0xC0, 0x58, 0xF8, 0x1B, 0x26, 0xC1, 0xA1, 0x0A, 0x2C, 0x8E, 0x05,\n0xDE, 0x73, 0x80, 0x90, 0x28, 0x84, 0x78, 0x40, 0x28, 0x84, 0x88, 0x04, 0xA0, 0x5A, 0x14, 0x37,\n0x55, 0x93, 0x1B, 0xA0, 0xA3, 0xD6, 0x2B, 0x27, 0x20, 0xF7, 0x7F, 0x08, 0x5B, 0x12, 0x32, 0x31,\n0x0F, 0x38, 0x87, 0x38, 0x01, 0x71, 0x2E, 0x70, 0x54, 0xEE, 0x00, 0x44, 0x49, 0xD6, 0xDE, 0x9E,\n0x21, 0x88, 0x37, 0x40, 0xC3, 0x04, 0x3E, 0x12, 0x0F, 0xC8, 0xF8, 0x67, 0xA0, 0x85, 0xF3, 0x4C,\n0x1F, 0x72, 0x03, 0x74, 0xD4, 0x5C, 0xE3, 0xCF, 0x75, 0x47, 0x96, 0x84, 0x94, 0xCB, 0xED, 0x5F,\n0x88, 0xA3, 0x0B, 0x40, 0xD6, 0xEB, 0x15, 0x54, 0x2B, 0x0F, 0xD8, 0xBC, 0x01, 0x10, 0xDE, 0xAF,\n0x95, 0x0E, 0xD0, 0xAF, 0x17, 0x58, 0x40, 0x32, 0x01, 0x0E, 0x39, 0xC0, 0x8C, 0xBC, 0x74, 0x89,\n0x83, 0xD1, 0x83, 0x03, 0xB4, 0x41, 0x24, 0x2A, 0x20, 0xA5, 0x85, 0x10, 0x0B, 0x75, 0x30, 0xC8,\n0x64, 0x4D, 0x6E, 0x00, 0x8C, 0x5A, 0xAF, 0xED, 0x0F, 0xA3, 0x08, 0x80, 0x36, 0xAE, 0x4B, 0x45,\n0x17, 0x80, 0x68, 0x04, 0xBA, 0x77, 0x5A, 0x12, 0x79, 0x2F, 0x0C, 0x76, 0x84, 0xB1, 0xEE, 0x3C,\n0xF8, 0x3F, 0xE5, 0x01, 0xF3, 0xA4, 0xD7, 0x46, 0x9A, 0x0A, 0xE7, 0x1B, 0xF1, 0x7F, 0xD4, 0x03,\n0x26, 0x0B, 0x98, 0xEA, 0xD1, 0x44, 0x86, 0x3B, 0x02, 0xC0, 0xA0, 0xA9, 0x0D, 0x80, 0x47, 0x01,\n0x38, 0x3B, 0xE2, 0xFF, 0x80, 0xBF, 0x8A, 0x1E, 0xB0, 0x39, 0x73, 0x00, 0x56, 0x35, 0x80, 0x78,\n0x46, 0xFE, 0x39, 0xF1, 0xA2, 0x03, 0x8C, 0x04, 0x74, 0xDE, 0xC5, 0x1C, 0x20, 0x76, 0x06, 0x0C,\n0x87, 0x81, 0x50, 0x0F, 0x98, 0xEE, 0x1E, 0x4C, 0x02, 0x7F, 0x8A, 0x80, 0x80, 0x9E, 0xBF, 0xF2,\n0x34, 0x60, 0x0D, 0x89, 0xFC, 0x9F, 0xE6, 0x5F, 0x14, 0xB6, 0xC6, 0x22, 0xF3, 0x5F, 0xC4, 0xC8,\n0x66, 0x18, 0x34, 0xC0, 0x10, 0x00, 0xCA, 0x02, 0x08, 0x84, 0xD5, 0xB8, 0xA9, 0xFE, 0x01, 0x29,\n0x0F, 0x98, 0x88, 0xF7, 0xE8, 0x45, 0xE0, 0x6D, 0x1D, 0xC4, 0x0B, 0xC2, 0xAA, 0x00, 0x0C, 0xE1,\n0x3C, 0xBA, 0xBC, 0x47, 0x17, 0x15, 0xC7, 0x9F, 0x4E, 0x03, 0x06, 0xC9, 0x06, 0xC0, 0x18, 0x91,\n0x7F, 0x2B, 0x00, 0xB0, 0x5E, 0x1E, 0xB0, 0x39, 0x77, 0x00, 0x56, 0x6A, 0x80, 0x09, 0x1F, 0xB8,\n0x03, 0xF4, 0x0B, 0x16, 0x50, 0x3B, 0x40, 0x7F, 0xF7, 0x2B, 0xEC, 0x89, 0xC0, 0xB5, 0xE3, 0x00,\n0x3D, 0xB8, 0x64, 0x01, 0x18, 0x0A, 0xF0, 0x23, 0x0E, 0xB0, 0x32, 0x00, 0xA1, 0xB1, 0x13, 0xE0,\n0x2F, 0xCE, 0x3F, 0xE6, 0x01, 0x17, 0xB4, 0x00, 0x1C, 0x3D, 0x60, 0xD9, 0xBA, 0xFC, 0x40, 0x40,\n0xF0, 0x4F, 0x5B, 0xC0, 0xE5, 0x80, 0x72, 0x21, 0xC4, 0xEF, 0x36, 0xFF, 0xE5, 0x3A, 0x98, 0xD9,\n0x6E, 0x7A, 0xE0, 0x61, 0xF4, 0xAF, 0x8F, 0x5B, 0x10, 0x4A, 0xFE, 0x41, 0x3F, 0xBC, 0x13, 0x71,\n0x5B, 0x8F, 0x1E, 0x50, 0x00, 0x3B, 0x27, 0xE0, 0xE8, 0x04, 0x20, 0xF2, 0x7F, 0xCA, 0x03, 0xCE,\n0x3E, 0xAC, 0xA0, 0x7A, 0x04, 0x6C, 0xCE, 0x1E, 0x80, 0x01, 0x81, 0x23, 0xD5, 0x0E, 0x77, 0x03,\n0xB6, 0x0F, 0xC4, 0x01, 0xDA, 0x08, 0xF4, 0xEB, 0xDA, 0x94, 0x03, 0x24, 0x0E, 0x10, 0xE7, 0x83,\n0x70, 0xED, 0x57, 0x81, 0x21, 0x59, 0x09, 0x19, 0xD4, 0x0D, 0x99, 0xF8, 0xEA, 0xBD, 0xB1, 0x2A,\n0x89, 0xCC, 0x7F, 0xA5, 0x56, 0x03, 0x82, 0x07, 0x24, 0xFC, 0xAB, 0xD0, 0x10, 0x3D, 0x4F, 0x92,\n0x00, 0x74, 0xFE, 0x71, 0x61, 0x5F, 0x2A, 0xF0, 0x8F, 0x28, 0x16, 0x80, 0x7B, 0xEC, 0xFD, 0xC6,\n0x4C, 0x18, 0x37, 0x39, 0xFF, 0x45, 0x1A, 0x30, 0x75, 0x22, 0x62, 0x01, 0x1C, 0x17, 0x29, 0x00,\n0x4B, 0x0F, 0x38, 0xCD, 0xFF, 0x21, 0xD8, 0x02, 0x10, 0x48, 0x2C, 0x09, 0xD1, 0x04, 0x6C, 0xDE,\n0x00, 0xE8, 0x6A, 0xC3, 0x6B, 0xF4, 0x7E, 0xCC, 0x01, 0xFA, 0x1B, 0xA2, 0x6B, 0x9F, 0x48, 0x0E,\n0x30, 0x9C, 0x0F, 0x42, 0x44, 0xDA, 0x01, 0xB9, 0x68, 0x0B, 0x8C, 0x46, 0x60, 0xB3, 0x37, 0x13,\n0x46, 0x04, 0x0F, 0x58, 0x4D, 0x63, 0x77, 0x00, 0xE4, 0x42, 0x3B, 0x20, 0xF2, 0x7F, 0x2C, 0x46,\n0xE6, 0x01, 0xE1, 0xFF, 0xF4, 0x2C, 0x78, 0x39, 0xAC, 0x6D, 0x0E, 0x10, 0x0B, 0x80, 0x0B, 0x08,\n0xB8, 0xD9, 0x2D, 0xFB, 0x66, 0xEE, 0x01, 0x84, 0xAF, 0xDA, 0xFF, 0x41, 0xCB, 0x34, 0x03, 0x46,\n0x03, 0x34, 0x93, 0xF2, 0x7F, 0x90, 0x11, 0x70, 0xF4, 0x02, 0x10, 0x1E, 0x82, 0x7F, 0xD3, 0xDB,\n0x01, 0x9B, 0x8B, 0x00, 0xE0, 0x1E, 0x02, 0xA1, 0x29, 0x6D, 0xD0, 0xA6, 0x80, 0x40, 0xE6, 0x00,\n0x7D, 0x1C, 0x30, 0x90, 0xE7, 0x00, 0x5B, 0xCC, 0x80, 0xA5, 0xD0, 0x0E, 0x28, 0x85, 0x43, 0x41,\n0x94, 0x3E, 0x11, 0x07, 0x38, 0xEC, 0x01, 0x2B, 0x6A, 0x74, 0x03, 0x20, 0xD7, 0x6E, 0x3B, 0x20,\n0xF0, 0x37, 0x9D, 0x80, 0xE0, 0x9F, 0xD2, 0x9D, 0xE6, 0x1F, 0x08, 0xE8, 0x25, 0xD8, 0x9E, 0x7F,\n0x4A, 0x3B, 0xFE, 0x0F, 0xA6, 0xAF, 0xBF, 0x3C, 0x17, 0x98, 0x3C, 0xE1, 0x21, 0x01, 0x9F, 0x95,\n0x7C, 0x11, 0x8A, 0x33, 0x70, 0xA9, 0xA4, 0xFD, 0x1F, 0x3C, 0xE0, 0xF8, 0x05, 0x20, 0x3C, 0xC2,\n0x02, 0x90, 0xBA, 0x93, 0xE0, 0xE6, 0x52, 0x00, 0x58, 0xCF, 0x00, 0xB6, 0xC1, 0x04, 0xC2, 0xFF,\n0x71, 0x07, 0x88, 0x42, 0x88, 0xC3, 0x8D, 0xE7, 0x00, 0x77, 0xAB, 0x20, 0x5A, 0xD1, 0xFF, 0xE9,\n0x59, 0xB0, 0xD6, 0x0D, 0x2D, 0x01, 0x73, 0x0F, 0x58, 0x55, 0x23, 0x76, 0xC0, 0x17, 0x32, 0x73,\n0x90, 0x09, 0xB8, 0x50, 0x7F, 0x52, 0x23, 0x3C, 0xA0, 0xF0, 0x7F, 0xD8, 0x1A, 0x86, 0xD5, 0x3F,\n0x62, 0x43, 0xB4, 0xF6, 0x7F, 0x28, 0x05, 0xA3, 0x00, 0x62, 0x1C, 0x4C, 0xB5, 0x60, 0x7F, 0x6C,\n0x00, 0x45, 0x10, 0x50, 0xFE, 0x50, 0xEC, 0x0E, 0xB8, 0xD4, 0xCA, 0x60, 0x9F, 0x6B, 0x5D, 0x9F,\n0x9C, 0xFF, 0x03, 0xFF, 0x84, 0x07, 0x5C, 0xA0, 0x01, 0x9A, 0xE9, 0x76, 0x04, 0x01, 0x9B, 0xCB,\n0x01, 0x60, 0xB5, 0x0C, 0x20, 0x2C, 0x20, 0x10, 0xB8, 0xCB, 0x3C, 0xE2, 0x00, 0x13, 0x02, 0x1F,\n0xDC, 0xEC, 0xD9, 0xC5, 0x73, 0x80, 0x3D, 0x09, 0xFD, 0x33, 0x54, 0x50, 0x0B, 0x2E, 0xB7, 0x80,\n0x90, 0xAE, 0x05, 0xEF, 0x55, 0x3D, 0x86, 0x3C, 0x60, 0x65, 0xD5, 0xF4, 0x7F, 0x68, 0x88, 0x5E,\n0xA4, 0xF9, 0xAF, 0x88, 0x11, 0x4B, 0x42, 0xD0, 0x00, 0xA8, 0x12, 0x81, 0x92, 0x7F, 0x79, 0x7F,\n0x54, 0xF7, 0x7F, 0x5A, 0xBF, 0x36, 0x3D, 0xD2, 0xB2, 0xD9, 0xCB, 0xB0, 0xB3, 0xB1, 0xFF, 0xC0,\n0x0E, 0xD1, 0x05, 0xFC, 0xDB, 0x6C, 0x8F, 0x89, 0x2B, 0x91, 0xF6, 0x7F, 0x68, 0x86, 0x89, 0xF8,\n0xD3, 0xFE, 0x4F, 0x45, 0x6A, 0x00, 0x04, 0xFF, 0xEA, 0x79, 0xC0, 0xE6, 0xC2, 0x00, 0x68, 0x51,\n0x55, 0x00, 0xA3, 0x71, 0xEF, 0x25, 0x45, 0x6B, 0x97, 0x3D, 0xB3, 0xB6, 0xFF, 0xD1, 0xFD, 0x05,\n0x61, 0xF7, 0xD4, 0xB5, 0xDD, 0xD3, 0x8B, 0x18, 0xDD, 0x93, 0xC5, 0x57, 0xBB, 0x93, 0xC0, 0x17,\n0x8C, 0x6C, 0x9D, 0x95, 0x79, 0xF5, 0xE8, 0x6B, 0xC1, 0xFD, 0xB8, 0xF1, 0xDB, 0x7B, 0x7E, 0xBF,\n0xB1, 0x38, 0x45, 0xF7, 0xC5, 0x67, 0x25, 0xDD, 0x9F, 0x72, 0x56, 0xE6, 0xA8, 0x06, 0x18, 0x3D,\n0x0B, 0x76, 0xC2, 0x89, 0x08, 0xE7, 0x24, 0x09, 0x39, 0xFF, 0xB4, 0xB6, 0xA7, 0x60, 0x6A, 0x02,\n0x9A, 0x07, 0xB4, 0x30, 0x12, 0x29, 0xD9, 0x77, 0x52, 0xFE, 0xCF, 0x46, 0x3A, 0x0E, 0xDD, 0x1E,\n0x3F, 0xFD, 0x91, 0xE8, 0x97, 0x7C, 0x60, 0xF6, 0x80, 0xA0, 0x1C, 0x0B, 0xD3, 0x37, 0x6F, 0xC5,\n0x29, 0x13, 0x0C, 0xA0, 0x26, 0xE0, 0x49, 0x4A, 0x05, 0x60, 0x15, 0x68, 0x00, 0xAC, 0x4D, 0xC0,\n0xA6, 0x50, 0xF7, 0x36, 0xF0, 0x6B, 0x6E, 0xE7, 0x02, 0x87, 0xF1, 0x8F, 0xF5, 0x50, 0x36, 0x26,\n0xD8, 0x3F, 0xFE, 0x4F, 0x8E, 0xB5, 0x22, 0xD9, 0x17, 0x0D, 0x7D, 0xAD, 0x03, 0xAE, 0xED, 0xFE,\n0x10, 0x77, 0xC6, 0xBE, 0x4D, 0x43, 0x41, 0x18, 0x67, 0x61, 0x6A, 0x14, 0x15, 0x79, 0x80, 0x0C,\n0x48, 0x91, 0x2A, 0x35, 0x48, 0x1E, 0x22, 0x77, 0x21, 0x03, 0x93, 0xE5, 0x31, 0x48, 0xD9, 0x10,\n0x51, 0x61, 0xC8, 0x90, 0x31, 0x53, 0xA4, 0x88, 0x8D, 0x2C, 0x4C, 0x30, 0x76, 0x61, 0x88, 0xC4,\n0x80, 0x14, 0xC9, 0x23, 0xFD, 0x03, 0xF9, 0xEE, 0x92, 0x97, 0x23, 0x7A, 0x7D, 0xBE, 0xCF, 0x05,\n0x8B, 0xDF, 0xDD, 0xBB, 0xE7, 0x96, 0x07, 0x34, 0xB5, 0xF3, 0xE3, 0x5E, 0xDC, 0x52, 0x99, 0x90,\n0x52, 0x74, 0x0E, 0x93, 0x25, 0xCC, 0x86, 0xEE, 0x0E, 0x05, 0xF1, 0x60, 0x15, 0x09, 0xC2, 0x7E,\n0x50, 0x1B, 0x01, 0x14, 0xA8, 0x3F, 0x04, 0x5D, 0x13, 0x8E, 0x4B, 0x57, 0xC9, 0x36, 0xB0, 0x02,\n0xE4, 0xFD, 0x87, 0x75, 0xAD, 0xFB, 0xBF, 0xAD, 0x13, 0xF8, 0x72, 0xC0, 0x21, 0x9E, 0x2B, 0x10,\n0x1C, 0x24, 0xE7, 0x64, 0x5B, 0x03, 0xBE, 0xE2, 0x38, 0xF8, 0x0F, 0xE9, 0xFA, 0x0F, 0x6B, 0xEA,\n0x8F, 0xA2, 0x37, 0xCA, 0x80, 0xF0, 0x9F, 0xB4, 0x7F, 0x3A, 0x90, 0xA2, 0x43, 0x9D, 0x50, 0x83,\n0xFD, 0x70, 0x20, 0x33, 0x6C, 0x89, 0xDF, 0xC1, 0xF0, 0x71, 0x25, 0x1F, 0x07, 0x05, 0xDA, 0x5A,\n0x79, 0x70, 0x6E, 0x9A, 0x01, 0xF9, 0xFB, 0x1F, 0x03, 0x37, 0xB4, 0xAF, 0x97, 0xFF, 0x01, 0x9F,\n0x41, 0xAF, 0x96, 0x38, 0x27, 0x51, 0x88, 0x01, 0x9F, 0xD3, 0x04, 0xFD, 0x05, 0x01, 0xF6, 0xE2,\n0xE8, 0x5D, 0x77, 0x06, 0xFE, 0x74, 0x70, 0xED, 0x84, 0xAC, 0xF8, 0xD0, 0x43, 0x12, 0x81, 0x65,\n0x15, 0xE2, 0x43, 0x1E, 0x32, 0xBC, 0x65, 0xEF, 0x90, 0x0C, 0xBF, 0x92, 0x23, 0x6E, 0x30, 0x1A,\n0x13, 0x2B, 0xAA, 0x9B, 0xFC, 0x46, 0xC1, 0x62, 0x94, 0x98, 0xDC, 0xA6, 0x16, 0x7C, 0xDF, 0x7C,\n0x7F, 0xED, 0xF3, 0x5D, 0x93, 0xE7, 0xD9, 0x5B, 0x3A, 0x9E, 0x3E, 0x7B, 0xFA, 0x9C, 0x0C, 0x9A,\n0xC9, 0xD3, 0x8B, 0x7E, 0x14, 0xC8, 0x38, 0xA4, 0xFF, 0x53, 0xBF, 0x39, 0x89, 0xD1, 0x1F, 0x4E,\n0x59, 0x5E, 0x64, 0x05, 0x0F, 0x36, 0xB7, 0x64, 0x5E, 0xAD, 0x66, 0x12, 0x4E, 0x2A, 0xD8, 0xDD,\n0xEA, 0x16, 0xD7, 0x4B, 0x70, 0x0F, 0x44, 0x77, 0x77, 0x9A, 0x28, 0x78, 0x0B, 0xA0, 0xE2, 0x10,\n0x03, 0xA1, 0x05, 0xEC, 0x77, 0x1C, 0x58, 0xA7, 0x1F, 0x8B, 0xC7, 0x58, 0x17, 0xF1, 0x8F, 0xBF,\n0xE0, 0xC1, 0x37, 0xC0, 0xB1, 0x0C, 0xFB, 0xA3, 0xFE, 0x2D, 0x11, 0xDB, 0xDB, 0xBE, 0x5C, 0x32,\n0x28, 0x7F, 0xD6, 0x87, 0x02, 0xEF, 0x9F, 0x3C, 0xE5, 0x39, 0x7B, 0x0A, 0x3C, 0xE9, 0x55, 0x51,\n0xBC, 0xE9, 0x1D, 0xB8, 0x7E, 0x89, 0x4C, 0xC4, 0x19, 0xBD, 0x16, 0xE0, 0x4F, 0xAF, 0x88, 0xC0,\n0xC7, 0x50, 0x55, 0x6F, 0x88, 0x00, 0x28, 0x34, 0x79, 0x5E, 0xE5, 0xD5, 0xE7, 0x0A, 0xD5, 0xC9,\n0x73, 0xD2, 0x0B, 0xF4, 0x78, 0x0E, 0x7E, 0xE4, 0x3F, 0x9A, 0x07, 0x56, 0x61, 0x2A, 0x97, 0x65,\n0x39, 0x77, 0x62, 0xB9, 0x2C, 0x97, 0xF3, 0x65, 0xB9, 0xD9, 0x94, 0x5C, 0x94, 0x0B, 0x9E, 0x8B,\n0x8B, 0x05, 0x19, 0x2D, 0xC0, 0x25, 0xCD, 0x2E, 0x95, 0xDD, 0x8F, 0x0E, 0xA7, 0xE2, 0x49, 0x32,\n0x45, 0x5F, 0x41, 0x31, 0xCD, 0xF0, 0x64, 0xBD, 0xF2, 0x46, 0x60, 0x7C, 0x45, 0x72, 0xFC, 0x59,\n0x6F, 0x4C, 0xEE, 0x59, 0xD6, 0x30, 0x5B, 0xCC, 0x57, 0x29, 0x31, 0x77, 0x7B, 0x9A, 0x7A, 0x45,\n0x52, 0xAF, 0xAE, 0x1E, 0x41, 0x61, 0x23, 0x4A, 0x1D, 0xD9, 0x25, 0x49, 0x36, 0xBD, 0x1D, 0x6D,\n0x39, 0x6E, 0xB7, 0xEC, 0x55, 0x65, 0x97, 0x1F, 0x89, 0x5D, 0xE5, 0x4F, 0x7A, 0x11, 0x55, 0xEF,\n0x65, 0xCF, 0x01, 0x66, 0x14, 0x7A, 0x32, 0xDA, 0x52, 0xB1, 0xAB, 0x60, 0x4A, 0x17, 0xB3, 0xE0,\n0x3B, 0x2A, 0x41, 0x4E, 0xF1, 0x4E, 0xCA, 0x67, 0xC9, 0x0A, 0x43, 0x0F, 0x30, 0x2C, 0xF5, 0x17,\n0xEC, 0xDD, 0x73, 0x08, 0x8E, 0x62, 0x0E, 0xBD, 0xB9, 0xCC, 0x31, 0x44, 0x82, 0x9B, 0xF7, 0x12,\n0xA5, 0x37, 0xBE, 0x7C, 0x81, 0xD7, 0x16, 0x14, 0x2A, 0xB6, 0x9F, 0x4C, 0x60, 0x61, 0x1B, 0xFA,\n0x17, 0x23, 0x2A, 0x47, 0xB8, 0xAE, 0x19, 0xB0, 0x6A, 0x38, 0xBC, 0x84, 0x01, 0xB3, 0xA9, 0x37,\n0xF0, 0xA4, 0x2A, 0x18, 0xFD, 0x15, 0x08, 0x65, 0x4C, 0x04, 0x56, 0x8D, 0xC7, 0xAB, 0x9A, 0x8A,\n0xD5, 0x7A, 0xB7, 0xDE, 0x93, 0x7C, 0xBB, 0xFB, 0x76, 0xFF, 0xEB, 0x9E, 0x03, 0x6B, 0xF7, 0x24,\n0xBB, 0xB5, 0x68, 0xD8, 0x8B, 0x5A, 0x2A, 0x1E, 0xD7, 0x15, 0x17, 0xA0, 0x90, 0xB0, 0xCF, 0x60,\n0x5A, 0x8E, 0x45, 0x76, 0x49, 0x9E, 0xAD, 0x81, 0x7C, 0x0B, 0x1C, 0xC7, 0x68, 0x44, 0x5E, 0x55,\n0x28, 0x8F, 0x04, 0x02, 0x4C, 0x71, 0x8D, 0x4C, 0x87, 0x10, 0x6A, 0xAF, 0x23, 0xD0, 0x09, 0x76,\n0x40, 0xCE, 0x85, 0x7A, 0x8D, 0x07, 0x8D, 0x1B, 0x43, 0x59, 0x22, 0x79, 0x16, 0xE5, 0x86, 0x60,\n0xB1, 0x40, 0x2E, 0x26, 0x0B, 0x9F, 0x89, 0xC4, 0x45, 0x27, 0xF4, 0x47, 0x4C, 0x0A, 0x5B, 0x4E,\n0x80, 0xC3, 0x81, 0x18, 0x50, 0xFA, 0x3B, 0x04, 0x32, 0x3D, 0xC3, 0x7F, 0x94, 0x02, 0xB5, 0xD2,\n0x8C, 0x67, 0x6A, 0x40, 0x37, 0xC1, 0x6E, 0xBD, 0x23, 0x7B, 0xC0, 0xBB, 0x6F, 0xB0, 0x1A, 0xED,\n0x3F, 0x2C, 0x26, 0xFB, 0xCA, 0x5A, 0x0D, 0xE8, 0xA6, 0xFA, 0x6F, 0x36, 0x7E, 0x7C, 0x07, 0x88,\n0x1A, 0x05, 0x28, 0xE4, 0x14, 0xC8, 0x09, 0xF1, 0xCE, 0x56, 0x06, 0xFF, 0xC1, 0x80, 0x14, 0xDB,\n0x11, 0xE8, 0x33, 0xD7, 0x55, 0xFB, 0xFE, 0xCF, 0x80, 0x00, 0xD3, 0xA4, 0xD5, 0xA6, 0xE6, 0xD3,\n0xE8, 0x4E, 0x7F, 0x48, 0x2E, 0x5A, 0x92, 0xFB, 0x98, 0xFE, 0x68, 0x68, 0xFF, 0x21, 0xBC, 0x5C,\n0x9E, 0x34, 0xB9, 0x59, 0x6C, 0x3C, 0xB0, 0x26, 0x18, 0x90, 0xC9, 0xC9, 0x84, 0xDB, 0x00, 0xB7,\n0x85, 0xF9, 0x87, 0xBA, 0x3F, 0x52, 0xB6, 0xAC, 0xFF, 0x86, 0x03, 0x18, 0xD0, 0x25, 0x2B, 0x40,\n0x66, 0x82, 0x4B, 0x0F, 0x9E, 0x19, 0x1A, 0x40, 0x31, 0x20, 0x23, 0x95, 0x4F, 0xF5, 0xAE, 0x5E,\n0xD7, 0x35, 0xE7, 0x3F, 0x68, 0x0D, 0x85, 0xE2, 0x8E, 0x36, 0xE0, 0xAE, 0x56, 0x03, 0x32, 0xBA,\n0x9E, 0x8D, 0x85, 0x76, 0xEA, 0x43, 0x5A, 0x0F, 0x1D, 0x53, 0x88, 0xFF, 0x00, 0x73, 0xAA, 0xD4,\n0x7F, 0xD2, 0x03, 0x92, 0xFE, 0x23, 0x7B, 0xC0, 0xB6, 0x38, 0x02, 0x64, 0x7A, 0x40, 0xD0, 0x93,\n0x0C, 0x0B, 0x3B, 0xD0, 0x9F, 0x4E, 0x7E, 0xB4, 0x47, 0x36, 0xAF, 0xEE, 0xC8, 0xB5, 0xB6, 0x80,\n0x12, 0xA0, 0x28, 0x10, 0xC3, 0x49, 0x18, 0x30, 0x40, 0xE9, 0xAF, 0x14, 0x03, 0xAA, 0x02, 0x1B,\n0x6B, 0x88, 0xFF, 0xD7, 0x03, 0x1E, 0xD9, 0x32, 0xFE, 0x3B, 0x37, 0xE0, 0x14, 0x99, 0x98, 0x0B,\n0x25, 0x2B, 0x5C, 0xF5, 0x61, 0x0A, 0xCC, 0xBC, 0x1C, 0x03, 0xB2, 0x07, 0x5C, 0xC3, 0x3D, 0x92,\n0x7B, 0x1F, 0x08, 0x4D, 0xF3, 0xDE, 0xE7, 0x2B, 0x44, 0xA9, 0xAB, 0x29, 0xFF, 0x69, 0x12, 0xFE,\n0xC3, 0x63, 0xD2, 0x24, 0x3E, 0x05, 0x47, 0xC6, 0xA6, 0xBF, 0xE0, 0x43, 0x2D, 0x36, 0xA9, 0xFF,\n0x4E, 0x06, 0x9C, 0x36, 0x9D, 0x2D, 0xF8, 0x0F, 0xA0, 0x90, 0xFE, 0xE3, 0x7A, 0xC0, 0xBF, 0x22,\n0x2D, 0x40, 0x47, 0x6D, 0xEA, 0xBF, 0x8E, 0xDB, 0x3F, 0xEE, 0x65, 0xC0, 0xF6, 0x0E, 0xB4, 0x2E,\n0x2F, 0x35, 0xF3, 0xF6, 0xE3, 0x0D, 0x18, 0xCC, 0xA7, 0xC5, 0x09, 0xC3, 0xDF, 0x00, 0x03, 0xF3,\n0x9F, 0x0E, 0xC9, 0xF8, 0x78, 0x62, 0x71, 0xD1, 0x05, 0xFE, 0x2B, 0x35, 0x27, 0x08, 0xFF, 0x0D,\n0x86, 0xC1, 0x80, 0xE1, 0xC9, 0xF3, 0xF0, 0x9C, 0x15, 0x47, 0x32, 0xFF, 0xF5, 0x3F, 0x1E, 0xB5,\n0x84, 0x0E, 0x77, 0x53, 0x59, 0xEF, 0x6B, 0xD2, 0x80, 0x6A, 0x34, 0x4D, 0xA6, 0xFF, 0xD3, 0xA5,\n0x28, 0x7B, 0x97, 0xBA, 0x56, 0x03, 0x4A, 0x0F, 0xC8, 0xF4, 0x7F, 0xCA, 0x55, 0x0B, 0x22, 0x05,\n0x6A, 0xB1, 0x63, 0x3B, 0x05, 0xC9, 0xB3, 0xA4, 0x73, 0x96, 0xC9, 0x49, 0x45, 0x30, 0x3D, 0xE0,\n0xC8, 0xE8, 0xB0, 0xFF, 0x8B, 0x04, 0xC8, 0xF7, 0x80, 0xF0, 0x5F, 0xD7, 0x1B, 0x60, 0xEA, 0x9E,\n0xF1, 0xA3, 0xC0, 0x3D, 0x8E, 0xCF, 0x18, 0x79, 0x6A, 0x46, 0x3D, 0xBE, 0xD1, 0x06, 0xAE, 0x01,\n0x44, 0x62, 0xA8, 0xE6, 0x6E, 0x12, 0x55, 0xB0, 0x3B, 0xBC, 0xA5, 0xDB, 0xFF, 0x81, 0x0D, 0xC2,\n0x5C, 0x77, 0x7E, 0x18, 0x8E, 0x2D, 0xFE, 0x4B, 0x0F, 0x38, 0xFA, 0x03, 0x62, 0xFF, 0x1B, 0x0C,\n0x98, 0x65, 0x69, 0xFB, 0x81, 0x42, 0x30, 0x03, 0x2A, 0x45, 0x34, 0x47, 0xCC, 0x64, 0x24, 0x73,\n0x6C, 0xCC, 0x1A, 0xF5, 0x87, 0xBA, 0x97, 0xFD, 0xEF, 0x0E, 0x63, 0xCD, 0xF6, 0x7F, 0xF0, 0x1A,\n0xEB, 0xBF, 0xAF, 0x08, 0xAF, 0x07, 0x14, 0xFD, 0xE9, 0x87, 0xB0, 0xAB, 0x3F, 0x35, 0xD8, 0xEF,\n0xD8, 0xFF, 0x05, 0x98, 0xFE, 0xCF, 0x88, 0xF5, 0x57, 0x68, 0x02, 0xF9, 0xC4, 0x07, 0xB2, 0xF8,\n0x2C, 0x9D, 0x8A, 0xF9, 0x4F, 0x27, 0x9C, 0x66, 0xCA, 0x7F, 0xA0, 0xC3, 0xFE, 0x2F, 0x12, 0x20,\n0xDB, 0x03, 0x76, 0xFB, 0x02, 0x60, 0x85, 0xD0, 0xF4, 0xE3, 0x90, 0xAD, 0xB1, 0x5B, 0xBD, 0xA9,\n0x19, 0x03, 0x54, 0xFF, 0x50, 0x80, 0xA5, 0x6D, 0x71, 0xF5, 0x38, 0x11, 0x70, 0xA0, 0x78, 0xCF,\n0x58, 0x6C, 0xD2, 0x40, 0x7E, 0xA6, 0xBF, 0xD0, 0xEF, 0x59, 0xC1, 0xB0, 0xA9, 0x7B, 0x03, 0xB2,\n0x0D, 0x20, 0x68, 0xF4, 0x5F, 0xE8, 0x13, 0xD4, 0x80, 0x2F, 0xC4, 0x80, 0xD3, 0xC4, 0x3E, 0x38,\n0xCB, 0x0A, 0x23, 0x0B, 0x7B, 0xB2, 0xD3, 0x64, 0xB3, 0x06, 0xCB, 0x58, 0xB1, 0x5D, 0x70, 0x83,\n0x00, 0x6B, 0xF3, 0x8F, 0xF7, 0x32, 0x20, 0x5C, 0x06, 0xA9, 0xA1, 0x88, 0xD9, 0x38, 0xFF, 0x31,\n0x3D, 0x20, 0xFE, 0xEA, 0xFA, 0x68, 0xE0, 0x5D, 0xDD, 0x28, 0x40, 0xD3, 0x9F, 0xEE, 0x82, 0x69,\n0x8A, 0x06, 0x05, 0xEA, 0xA7, 0xDD, 0x88, 0xCE, 0x92, 0x79, 0x10, 0x72, 0x1C, 0x06, 0x06, 0x18,\n0x8D, 0x02, 0x1C, 0x9D, 0xD1, 0x5D, 0xFF, 0xE7, 0x0B, 0x30, 0xD1, 0x02, 0x86, 0x03, 0xA3, 0x23,\n0x03, 0x62, 0x74, 0x01, 0xFA, 0x3C, 0x04, 0x48, 0xCC, 0x18, 0x6D, 0x3B, 0xC0, 0xB9, 0x63, 0xC0,\n0x52, 0x42, 0x33, 0x18, 0xD0, 0xF2, 0x06, 0xC5, 0x12, 0xFE, 0x93, 0x11, 0x02, 0xB9, 0x28, 0xD3,\n0xB7, 0x3F, 0x34, 0x00, 0x44, 0x69, 0xD6, 0xB3, 0x62, 0x87, 0x16, 0x72, 0x23, 0xA4, 0x0B, 0xFC,\n0xFE, 0xCF, 0x48, 0xFB, 0x6F, 0xAB, 0xCF, 0x0F, 0x2B, 0xD0, 0x5C, 0xFA, 0x0B, 0x00, 0x0B, 0x43,\n0x6F, 0x05, 0x2B, 0xB1, 0xFC, 0x22, 0x12, 0x7D, 0x8F, 0x0E, 0xF5, 0x83, 0xA9, 0x02, 0xF2, 0x70,\n0x5F, 0x00, 0x44, 0xCA, 0x20, 0x36, 0xC0, 0xA1, 0xDC, 0x37, 0x7D, 0x35, 0xCC, 0x69, 0xD5, 0x41,\n0x99, 0x4E, 0xFF, 0x77, 0x32, 0x70, 0xE3, 0x26, 0xB8, 0x3E, 0x7B, 0x58, 0x38, 0x66, 0xFB, 0xBF,\n0xA4, 0xFE, 0xAC, 0xFF, 0x33, 0x2E, 0x23, 0x82, 0x05, 0xB3, 0xA9, 0x9E, 0xCF, 0x01, 0x12, 0x33,\n0x06, 0x4E, 0x35, 0xE5, 0x3F, 0xD0, 0x59, 0x03, 0xE8, 0x0A, 0x30, 0xE5, 0xB8, 0xA0, 0xC0, 0x2E,\n0xA8, 0x10, 0x80, 0x6A, 0x02, 0xC1, 0xE3, 0x5B, 0xC0, 0xB4, 0x04, 0x75, 0x98, 0x03, 0x69, 0x9A,\n0x05, 0x68, 0x8E, 0x43, 0x24, 0x7A, 0x3F, 0x09, 0xB0, 0xF1, 0xBF, 0x1A, 0xA6, 0x5C, 0x20, 0x20,\n0x40, 0xCD, 0x30, 0x45, 0xFA, 0x7B, 0xB0, 0x01, 0xEC, 0xEE, 0x46, 0x88, 0xDB, 0xFE, 0x19, 0x49,\n0xFF, 0xD9, 0x3E, 0x09, 0xA1, 0x06, 0xD4, 0x1E, 0xD0, 0xD2, 0x46, 0x71, 0xC2, 0x0C, 0x88, 0x44,\n0x89, 0x66, 0x0A, 0x55, 0xA0, 0x89, 0xE2, 0x70, 0x90, 0x34, 0xA0, 0xFA, 0xEF, 0x20, 0x9E, 0xDF,\n0xD4, 0x9D, 0xBB, 0x8E, 0x14, 0x31, 0x10, 0x45, 0xC9, 0x91, 0x10, 0x12, 0x09, 0x13, 0x20, 0x21,\n0x11, 0x0C, 0x12, 0x11, 0x19, 0x01, 0x11, 0xDA, 0x70, 0x82, 0xF9, 0x80, 0x89, 0x88, 0xD1, 0x46,\n0x48, 0x88, 0x6C, 0xC9, 0x21, 0x24, 0x25, 0x46, 0x9A, 0x04, 0x89, 0xFD, 0x40, 0x5C, 0xD5, 0xBE,\n0x1C, 0x6A, 0xDD, 0x6E, 0xBB, 0x59, 0x37, 0x8F, 0xB2, 0xBB, 0xEC, 0xEE, 0x01, 0xF1, 0x3E, 0xDC,\n0x7A, 0xB8, 0x37, 0x21, 0xC8, 0x20, 0x74, 0x5E, 0x2E, 0x00, 0x27, 0xE1, 0x87, 0x08, 0x5C, 0x6A,\n0x80, 0x01, 0x80, 0x1F, 0xDD, 0x2F, 0x36, 0xC0, 0x9C, 0xBF, 0x38, 0x02, 0xED, 0xA7, 0xB1, 0xD8,\n0x0C, 0x03, 0xFE, 0xF2, 0xAF, 0xEC, 0x77, 0x1A, 0x61, 0x70, 0x14, 0x40, 0x64, 0x4F, 0x73, 0x1A,\n0xF0, 0x10, 0x2E, 0x77, 0xCE, 0x3F, 0xFE, 0x4C, 0x1B, 0xB5, 0xE0, 0x7D, 0x61, 0x5B, 0x09, 0xC0,\n0x1E, 0x05, 0xB8, 0xD0, 0x07, 0xB8, 0x89, 0x09, 0x7A, 0xED, 0x34, 0xE0, 0xAD, 0xEC, 0x4A, 0xBD,\n0xCE, 0x33, 0xAB, 0x2E, 0xF3, 0x43, 0x34, 0x60, 0x51, 0xF9, 0x95, 0xF0, 0xF3, 0x2B, 0xC2, 0xD0,\n0x55, 0x9F, 0x79, 0x46, 0x85, 0x80, 0xD4, 0x3F, 0x5E, 0x69, 0x99, 0xC1, 0x1F, 0xFC, 0xFB, 0x7B,\n0x69, 0xC0, 0x39, 0x00, 0x7E, 0xA8, 0xF0, 0xEF, 0x64, 0x1A, 0x41, 0xC3, 0x44, 0x43, 0x26, 0x20,\n0x76, 0xC8, 0x17, 0x05, 0x10, 0x08, 0xB8, 0x06, 0x7F, 0x15, 0xDD, 0x03, 0xFF, 0xD0, 0x80, 0x75,\n0xFE, 0x65, 0xED, 0x95, 0x03, 0xE1, 0xF3, 0x82, 0xFE, 0x53, 0xFA, 0x4F, 0x74, 0x5B, 0xD2, 0x7F,\n0xC2, 0xA4, 0x28, 0x58, 0xD5, 0x7F, 0x99, 0x7E, 0x12, 0xA1, 0x69, 0xD4, 0x34, 0x20, 0x5C, 0x27,\n0x08, 0xEE, 0xD4, 0x7F, 0xE8, 0xBD, 0xA8, 0x00, 0xE1, 0x1F, 0xF6, 0x80, 0x3F, 0xA5, 0x50, 0xFF,\n0xB8, 0xEF, 0xF0, 0x53, 0x04, 0xEC, 0x37, 0x35, 0x09, 0xF8, 0x61, 0x06, 0x80, 0x1B, 0x09, 0xC0,\n0x9E, 0x1C, 0x60, 0x9A, 0x95, 0xA7, 0x5B, 0x65, 0x00, 0x4B, 0xF9, 0x37, 0x6B, 0x7A, 0x8E, 0x04,\n0x5C, 0x65, 0x19, 0x73, 0x73, 0xEB, 0x15, 0x0A, 0x70, 0x54, 0x33, 0x8C, 0x98, 0x57, 0xD3, 0x80,\n0x6C, 0x10, 0x80, 0xCB, 0x79, 0xC0, 0xF4, 0x2C, 0x8D, 0xC4, 0xBC, 0x20, 0x02, 0x2B, 0x08, 0xBC,\n0x39, 0xCC, 0xDD, 0xDD, 0xC4, 0x6A, 0x0D, 0x80, 0x7D, 0x04, 0x4C, 0xCF, 0xF4, 0xAF, 0xC4, 0xD7,\n0x9D, 0x7B, 0x11, 0xF0, 0x10, 0x43, 0xAB, 0xB9, 0x23, 0xA9, 0x62, 0x9E, 0x96, 0x25, 0x04, 0x1E,\n0xCB, 0x7B, 0x0A, 0x20, 0x51, 0x03, 0x9E, 0x2B, 0xFC, 0xF3, 0x91, 0x4B, 0xB0, 0xE7, 0x05, 0x02,\n0x26, 0x88, 0xA9, 0x02, 0xC2, 0x4A, 0x10, 0x5C, 0xEA, 0x3F, 0xA9, 0x3F, 0x8D, 0x9A, 0xFE, 0xF3,\n0xF6, 0x97, 0x2F, 0xE2, 0xA0, 0x5F, 0xF5, 0x06, 0x98, 0x60, 0xFD, 0x0D, 0xD1, 0xB0, 0x2F, 0x6E,\n0xE0, 0xDF, 0x53, 0x9B, 0x51, 0x03, 0xBA, 0x69, 0x9B, 0x9E, 0x3D, 0x4E, 0xA6, 0x10, 0x58, 0x03,\n0x00, 0x56, 0xF8, 0x87, 0x6D, 0xA4, 0xFF, 0x3A, 0x15, 0x60, 0x59, 0x02, 0x46, 0x00, 0x6E, 0x2A,\n0xFF, 0x96, 0x35, 0xE0, 0x2D, 0xAD, 0xA1, 0x00, 0xB3, 0xBF, 0x1A, 0xA0, 0x01, 0x4B, 0x01, 0x48,\n0x1A, 0x90, 0xFA, 0xAF, 0x3B, 0x33, 0x04, 0x60, 0x4D, 0x02, 0xA2, 0xFF, 0x14, 0xF9, 0x66, 0x12,\n0xBE, 0x6B, 0xD1, 0x6F, 0x7B, 0x02, 0xD6, 0xFB, 0xFF, 0xDA, 0x04, 0xFC, 0x60, 0x05, 0x60, 0x1B,\n0xE6, 0x50, 0x81, 0x7E, 0x28, 0x4E, 0x92, 0xA2, 0xAA, 0xFF, 0x28, 0x05, 0xEB, 0xF4, 0x16, 0x8A,\n0xA5, 0x2D, 0x01, 0x75, 0x5B, 0x80, 0xE2, 0x68, 0xB3, 0x1E, 0xFF, 0x9A, 0x57, 0x02, 0xCE, 0x85,\n0x60, 0x35, 0xFF, 0xE7, 0x9A, 0x8E, 0x99, 0x46, 0xAD, 0x01, 0x10, 0xFD, 0xC7, 0x98, 0x6F, 0x00,\n0x74, 0x0D, 0x3A, 0x31, 0xD8, 0xBB, 0xA1, 0x6D, 0x36, 0xF5, 0x1F, 0xBB, 0x4E, 0xFD, 0x07, 0x04,\n0x03, 0x05, 0xD1, 0x7F, 0x84, 0xC0, 0xB4, 0x03, 0xC6, 0x12, 0x08, 0x0D, 0x30, 0x92, 0xF5, 0xE6,\n0x1A, 0xFC, 0x6B, 0x68, 0xC0, 0x01, 0xFC, 0x03, 0x80, 0x6B, 0x33, 0x81, 0x5B, 0x06, 0xC0, 0x41,\n0x01, 0x6A, 0x16, 0xE3, 0xD6, 0x12, 0xD0, 0xB4, 0xDD, 0x52, 0x0E, 0xF0, 0x2A, 0xEC, 0xBA, 0xAD,\n0x89, 0xBF, 0xB2, 0x14, 0x5C, 0x04, 0xC0, 0x69, 0x2E, 0x6B, 0x40, 0x23, 0xA2, 0x42, 0x5F, 0xBB,\n0x68, 0x87, 0x31, 0xE0, 0x35, 0x10, 0xB8, 0x6D, 0x43, 0x74, 0x5D, 0xFF, 0xB5, 0x09, 0xB8, 0x3F,\n0xC5, 0x44, 0x91, 0x54, 0xC3, 0xA9, 0x38, 0x12, 0x72, 0xA0, 0xFE, 0x51, 0xD1, 0x80, 0x28, 0xC0,\n0xFE, 0xFC, 0x1F, 0xFC, 0xD3, 0xAA, 0xCD, 0xE5, 0xFB, 0xB9, 0x03, 0x70, 0x6F, 0x8D, 0x7D, 0x92,\n0x5E, 0xA2, 0x61, 0x2D, 0xFF, 0x37, 0x75, 0x00, 0xCA, 0xF9, 0x9C, 0xD5, 0x7F, 0xD4, 0x3F, 0xE4,\n0x2A, 0x0D, 0xD1, 0xFE, 0xC3, 0x79, 0xF8, 0xAD, 0x3C, 0xA0, 0x1A, 0xA2, 0xEB, 0x0D, 0x80, 0xBE,\n0x61, 0xBF, 0x3A, 0x0B, 0x58, 0xF6, 0xBF, 0xA0, 0xFD, 0x62, 0x14, 0x0C, 0x06, 0xFD, 0x00, 0x88,\n0x46, 0x5C, 0xD0, 0x80, 0xF0, 0xAF, 0x62, 0x9B, 0xE8, 0x3F, 0x00, 0xB8, 0x4E, 0x02, 0x6E, 0xC7,\n0x3F, 0xB0, 0xC7, 0xD6, 0x34, 0xE0, 0xC5, 0x16, 0x56, 0x2F, 0x84, 0x5C, 0x01, 0xC2, 0x15, 0xE8,\n0x9B, 0xAE, 0xE5, 0xF0, 0x97, 0x89, 0xD3, 0x10, 0xF9, 0x7C, 0x13, 0x47, 0xA5, 0x01, 0x50, 0xF4,\n0x0B, 0xE9, 0xC0, 0x12, 0x7F, 0x33, 0xF4, 0xFB, 0x93, 0x1A, 0xB0, 0x6A, 0xB3, 0x05, 0xE0, 0x98,\n0x28, 0xD2, 0xDD, 0xFD, 0x9B, 0xFF, 0xAC, 0x6A, 0xEF, 0x65, 0x92, 0x06, 0x44, 0xB1, 0x34, 0x2C,\n0xE8, 0x3F, 0xAC, 0xA5, 0x01, 0xAD, 0x01, 0x06, 0xF6, 0x11, 0x04, 0x4B, 0x03, 0x86, 0x06, 0x40,\n0xE0, 0x47, 0x12, 0xD0, 0x50, 0xB7, 0x50, 0x00, 0xCE, 0x21, 0x70, 0x5D, 0x03, 0x4E, 0x81, 0x2F,\n0xB1, 0xAF, 0x83, 0xD0, 0x1F, 0xB4, 0xE3, 0xDF, 0xA3, 0x7C, 0xBF, 0xFE, 0x23, 0xEF, 0x17, 0xE3,\n0x5F, 0x10, 0xA8, 0x50, 0x98, 0x86, 0x68, 0x19, 0x59, 0x8D, 0x9D, 0x16, 0x1A, 0xA2, 0x4B, 0xFE,\n0xF5, 0x69, 0xC0, 0x11, 0x06, 0x00, 0x57, 0x6A, 0xC0, 0x3F, 0xC5, 0x3F, 0x7F, 0xB4, 0x99, 0x04,\n0x5C, 0xE8, 0x07, 0xBC, 0x50, 0x44, 0xBC, 0x3E, 0x0F, 0x58, 0x69, 0x80, 0xAE, 0x23, 0x30, 0xD6,\n0x7F, 0x7D, 0xC8, 0x2A, 0x1A, 0xD0, 0xEB, 0xBF, 0xE0, 0x0F, 0x19, 0xE8, 0xF3, 0x45, 0xB5, 0x00,\n0xC2, 0xF8, 0x83, 0xED, 0x80, 0xFB, 0x05, 0x9B, 0x39, 0x00, 0xE2, 0x23, 0x56, 0x41, 0xDC, 0x53,\n0x0A, 0xA6, 0x01, 0xBA, 0x46, 0xC0, 0x7E, 0x04, 0x1E, 0xC3, 0x5A, 0x00, 0x82, 0xDB, 0x40, 0x40,\n0x15, 0x40, 0xE0, 0x9E, 0xB6, 0x7E, 0x45, 0x50, 0x25, 0xCE, 0x39, 0xFD, 0x10, 0x74, 0x68, 0xC0,\n0x6A, 0xFC, 0x1B, 0x29, 0xE8, 0xDB, 0x99, 0x06, 0x18, 0x7E, 0x64, 0x0F, 0xC3, 0x33, 0xFE, 0xFC,\n0xDD, 0x58, 0x51, 0xFF, 0xD5, 0x6D, 0xF5, 0x4B, 0x11, 0x38, 0x00, 0x22, 0xEC, 0x95, 0x06, 0xFB,\n0x6C, 0x97, 0x1B, 0xA0, 0xA1, 0x1F, 0x31, 0x70, 0x41, 0xC0, 0xFD, 0x92, 0x8D, 0xD7, 0x7F, 0x00,\n0x70, 0xAD, 0x08, 0x7C, 0xB4, 0x05, 0x02, 0x61, 0x9E, 0xA6, 0x5C, 0x91, 0x07, 0x1C, 0x64, 0x57,\n0x4B, 0x27, 0x41, 0x6C, 0xC7, 0x5D, 0x27, 0xFD, 0xCC, 0xBD, 0x6A, 0xE2, 0x0F, 0x02, 0x8A, 0x81,\n0xE4, 0xFF, 0xCC, 0xCF, 0x0D, 0xF2, 0x80, 0x69, 0x43, 0x03, 0x20, 0xF4, 0xCB, 0xEE, 0x55, 0x8C,\n0x82, 0x91, 0x7F, 0x7F, 0xA7, 0x16, 0xBC, 0x5F, 0xB4, 0xC0, 0x3F, 0xC4, 0x9F, 0xEF, 0x44, 0x3F,\n0x08, 0x28, 0x8B, 0xFA, 0x6F, 0xA9, 0x19, 0xA6, 0x6D, 0x95, 0xFC, 0x1F, 0x56, 0x1E, 0x09, 0xA1,\n0x01, 0x5A, 0x0B, 0x8D, 0x78, 0xE7, 0x22, 0x08, 0x76, 0xDE, 0x45, 0xF0, 0xA1, 0x01, 0x3F, 0x56,\n0x1A, 0xA0, 0xA3, 0x5A, 0xF4, 0xED, 0xA7, 0x82, 0x7F, 0xC0, 0x57, 0x7B, 0xFF, 0x39, 0x84, 0x52,\n0x70, 0xD0, 0x7F, 0x47, 0x39, 0x2C, 0xD4, 0x82, 0x7B, 0x82, 0x60, 0x79, 0x09, 0xC0, 0x42, 0xFF,\n0xD9, 0xA5, 0x8C, 0x2D, 0x07, 0x40, 0xB2, 0x8B, 0x25, 0xFE, 0xE2, 0x48, 0xC8, 0x7E, 0xD1, 0xC6,\n0xEB, 0x3F, 0x00, 0xD8, 0xC1, 0xC0, 0xCD, 0x05, 0x20, 0xD0, 0x2B, 0xF9, 0x57, 0x52, 0x6F, 0x98,\n0x04, 0x14, 0xE0, 0x58, 0x69, 0x82, 0xE1, 0xBA, 0x5A, 0x5B, 0x08, 0x21, 0x01, 0xD8, 0x24, 0x60,\n0x1E, 0x94, 0x3F, 0x66, 0xCD, 0xEA, 0xBE, 0xE8, 0x3F, 0xE9, 0x3D, 0x1C, 0x15, 0x91, 0xD0, 0x0F,\n0x5D, 0x1D, 0x66, 0x9B, 0x11, 0x10, 0xFD, 0xD7, 0xB0, 0x10, 0xFF, 0x52, 0xFF, 0x08, 0xC3, 0x0C,\n0x02, 0x5A, 0x52, 0x89, 0x04, 0x60, 0xB5, 0x12, 0x42, 0x35, 0xA4, 0x1B, 0x81, 0x51, 0xF8, 0x69,\n0x5F, 0x1E, 0x09, 0x49, 0xEE, 0x4B, 0x94, 0x7E, 0x4A, 0xC2, 0xF9, 0x12, 0x09, 0x28, 0x0D, 0x27,\n0x92, 0x69, 0x5E, 0xBB, 0x8F, 0x1A, 0x30, 0x46, 0xCA, 0x7C, 0x73, 0x1F, 0x41, 0x03, 0xFE, 0xDA,\n0x7A, 0x23, 0x29, 0x8A, 0x0E, 0xFC, 0x5A, 0x1C, 0x00, 0x29, 0x79, 0x5E, 0xE6, 0x01, 0x7B, 0x10,\n0x28, 0x0F, 0xFF, 0x66, 0x65, 0x20, 0xFF, 0x59, 0x25, 0x14, 0x52, 0xD5, 0x2F, 0xD2, 0x1B, 0x1C,\n0x09, 0x81, 0x7F, 0x75, 0x1B, 0xAF, 0xFF, 0xD6, 0x84, 0xC0, 0x68, 0x40, 0x00, 0xB8, 0x35, 0x01,\n0xE5, 0x60, 0x20, 0xC1, 0xEF, 0x18, 0x9B, 0x22, 0x5C, 0xF3, 0xBE, 0x5E, 0x00, 0x3E, 0xD4, 0x9F,\n0xAD, 0xDD, 0xF4, 0x73, 0x6B, 0x27, 0x00, 0x09, 0x7F, 0xB5, 0x15, 0xE5, 0xAA, 0x12, 0xF0, 0xA7,\n0x06, 0x24, 0xFC, 0x35, 0x12, 0x4A, 0x07, 0x52, 0x08, 0xB6, 0x95, 0x00, 0xB8, 0x86, 0xBF, 0xFC,\n0xE1, 0x36, 0x79, 0x40, 0xF4, 0x5F, 0xD3, 0x42, 0xFE, 0x8F, 0x13, 0x70, 0xBA, 0x23, 0x13, 0x28,\n0x02, 0x52, 0x00, 0x5E, 0xD2, 0x80, 0xFD, 0x0A, 0xF0, 0x98, 0x5D, 0x05, 0x11, 0xDC, 0x1E, 0xE1,\n0x9F, 0x33, 0x8F, 0xE4, 0x1F, 0xDB, 0xE2, 0x58, 0xB0, 0xA8, 0x27, 0xB2, 0x71, 0x9B, 0xDD, 0x5C,\n0xFE, 0x2F, 0x1E, 0x04, 0x21, 0x6E, 0xBE, 0xD1, 0x00, 0x28, 0xEC, 0x21, 0x45, 0xED, 0xA1, 0x7F,\n0x84, 0x06, 0xBC, 0x84, 0x75, 0xC9, 0xD8, 0xE2, 0xF5, 0x3B, 0xD0, 0x1F, 0x06, 0x53, 0x00, 0x11,\n0xFD, 0xD8, 0xDB, 0x02, 0x01, 0x39, 0x00, 0x62, 0x3E, 0x68, 0x40, 0x3D, 0x47, 0x03, 0xEE, 0x9B,\n0x36, 0x5A, 0x00, 0x1A, 0x00, 0xFF, 0x15, 0x09, 0x18, 0xB8, 0x17, 0x50, 0xC8, 0xC2, 0x18, 0x26,\n0x01, 0x9D, 0x7E, 0xB3, 0x0A, 0x90, 0x9D, 0x28, 0xD9, 0x6F, 0x0D, 0x00, 0x32, 0xC9, 0x00, 0x3A,\n0xF5, 0xE4, 0x2B, 0xF6, 0x1A, 0x01, 0x08, 0xF7, 0xB8, 0xA1, 0x21, 0x9A, 0x20, 0xB8, 0x35, 0xB6,\n0x95, 0x80, 0xFB, 0x0E, 0x53, 0x03, 0x8C, 0x12, 0xE3, 0x31, 0x4D, 0x9E, 0x57, 0x8E, 0x84, 0xC0,\n0xBF, 0x66, 0x14, 0x6C, 0x57, 0xB7, 0x1D, 0x6B, 0xF0, 0x3B, 0xB2, 0xAA, 0x01, 0xC6, 0xF0, 0x47,\n0x0E, 0x90, 0x3B, 0x3B, 0x13, 0x42, 0x3B, 0x20, 0x05, 0x60, 0xA3, 0x17, 0x1C, 0x04, 0x68, 0x91,\n0x80, 0x99, 0x7B, 0xF4, 0xCB, 0xE0, 0x94, 0x17, 0x0C, 0x0D, 0x80, 0x36, 0x63, 0x20, 0xEC, 0x0F,\n0xF3, 0x5E, 0x00, 0xAC, 0x41, 0x9D, 0x27, 0xDD, 0xF4, 0x23, 0x00, 0x46, 0xFF, 0x45, 0x0E, 0x6A,\n0x51, 0x21, 0x84, 0x03, 0x20, 0x24, 0xFF, 0x58, 0x76, 0x31, 0x0F, 0xB8, 0x6F, 0xDB, 0x70, 0x01,\n0x08, 0x00, 0xFB, 0xD3, 0x80, 0x5B, 0xA9, 0xC0, 0x8B, 0x6A, 0x0C, 0x4C, 0x3B, 0xE0, 0x16, 0x56,\n0xCB, 0x01, 0xFA, 0x4E, 0x77, 0xF2, 0x1D, 0xEC, 0xF3, 0x49, 0x03, 0x4C, 0x63, 0xAA, 0x0A, 0xA2,\n0x38, 0xB7, 0x9A, 0x02, 0xCC, 0x51, 0xB0, 0x5D, 0xE4, 0xFD, 0x9C, 0x76, 0xDC, 0x08, 0x89, 0x8E,\n0xC0, 0x36, 0xFE, 0x6C, 0x6E, 0x9B, 0x06, 0xDC, 0x77, 0xD8, 0x87, 0x89, 0x7F, 0xD2, 0x08, 0xC4,\n0x46, 0xF2, 0x88, 0x42, 0x23, 0x20, 0xFC, 0x6B, 0x10, 0xB0, 0x17, 0x7F, 0x3A, 0x01, 0x7C, 0xAC,\n0xC1, 0x8F, 0x47, 0x99, 0x7F, 0x19, 0x7B, 0x3A, 0x07, 0xF2, 0x13, 0x42, 0xFE, 0x58, 0xA5, 0x89,\n0x70, 0x00, 0xE4, 0xA6, 0xB0, 0xCB, 0xEC, 0x0B, 0xED, 0x80, 0xE1, 0x9B, 0x80, 0x3D, 0x94, 0x23,\n0x47, 0x42, 0x7E, 0xFE, 0xA8, 0xAE, 0x44, 0xD1, 0x9F, 0xD3, 0x0C, 0xC7, 0x82, 0xCB, 0xB0, 0xFE,\n0xB2, 0x24, 0x60, 0xA7, 0x95, 0x0D, 0xD0, 0x9A, 0x73, 0xED, 0x80, 0xF0, 0x0F, 0xDA, 0xE9, 0x86,\n0x61, 0xAE, 0x28, 0x00, 0x37, 0x4B, 0xC1, 0xE3, 0xAC, 0x1F, 0x80, 0x30, 0x6F, 0x23, 0xFA, 0xD5,\n0xAA, 0xC0, 0x3E, 0xA2, 0xFA, 0x1B, 0x2B, 0x01, 0x51, 0x7E, 0x35, 0x05, 0x98, 0x5B, 0x06, 0xD7,\n0xD7, 0x82, 0x41, 0x5D, 0x75, 0x66, 0x0C, 0x8A, 0x72, 0x7E, 0x45, 0x83, 0x8D, 0xF0, 0x0F, 0xED,\n0xC7, 0xE2, 0xE1, 0x2F, 0xED, 0xD0, 0x4D, 0xFE, 0x69, 0x73, 0x77, 0x13, 0xA3, 0x01, 0xB0, 0x4D,\n0xC0, 0xC4, 0xC0, 0x20, 0xFE, 0xA0, 0x1F, 0x23, 0x6B, 0x40, 0xF8, 0xD7, 0x4A, 0x03, 0xAE, 0x32,\n0x95, 0x07, 0x4A, 0x4E, 0x60, 0x6A, 0x86, 0x39, 0x2B, 0x00, 0x15, 0x6B, 0xD4, 0x83, 0x9C, 0xCB,\n0x11, 0xB4, 0x03, 0xA2, 0xE8, 0x90, 0x7F, 0x10, 0x2E, 0x6A, 0xC0, 0x4F, 0xE5, 0x27, 0x84, 0xC9,\n0x88, 0xC1, 0xAC, 0xFF, 0x5C, 0xEC, 0x89, 0x83, 0xCC, 0xB3, 0x4D, 0xED, 0x8B, 0x03, 0xC0, 0x97,\n0x01, 0x7B, 0xE0, 0x7D, 0x8D, 0x06, 0x9C, 0x2F, 0x00, 0x13, 0xFB, 0xF2, 0xC9, 0x03, 0xE3, 0x9F,\n0x92, 0x7E, 0x1A, 0xB1, 0x0E, 0xCC, 0x91, 0x10, 0xF8, 0xD7, 0x23, 0x01, 0x07, 0xDA, 0x9D, 0x35,\n0xFC, 0xDB, 0x2E, 0x0D, 0x08, 0xE7, 0xCA, 0x2A, 0x70, 0x5E, 0xB4, 0x1B, 0x6F, 0x89, 0x71, 0x36,\n0x9D, 0x70, 0xBE, 0xEA, 0x50, 0x1C, 0x5A, 0x10, 0xEB, 0x96, 0x81, 0xAA, 0x7F, 0xB4, 0x66, 0xC6,\n0x1F, 0x94, 0x7B, 0x37, 0x3F, 0xF2, 0x87, 0xC4, 0xBC, 0xA6, 0xFD, 0x7C, 0xA7, 0x05, 0x1A, 0x2A,\n0x0D, 0xD8, 0x1C, 0xDB, 0xBE, 0x21, 0xBA, 0xD7, 0x9C, 0x7F, 0xE8, 0x04, 0xED, 0x89, 0x7E, 0x79,\n0x78, 0xA0, 0xFE, 0xD1, 0x24, 0xE0, 0x1A, 0x06, 0x92, 0x11, 0x9B, 0x63, 0x1F, 0xDC, 0x98, 0xF8,\n0xC7, 0xE9, 0xB7, 0x2C, 0xF7, 0xA4, 0xBB, 0xFC, 0x13, 0xDB, 0x25, 0x87, 0xFE, 0x8B, 0x21, 0x2F,\n0x38, 0x44, 0x03, 0xAA, 0x01, 0x86, 0x67, 0xA1, 0x67, 0xDA, 0xC7, 0x47, 0x69, 0x40, 0xA9, 0x4F,\n0xF7, 0x5F, 0xA6, 0x04, 0x20, 0x27, 0xE1, 0x54, 0x0B, 0xF1, 0x28, 0xB8, 0x50, 0xB1, 0x6C, 0x7F,\n0xB7, 0x19, 0x86, 0xF8, 0x17, 0xF0, 0xC9, 0xDB, 0xCA, 0x92, 0xE4, 0xFA, 0x2E, 0xF4, 0x72, 0x96,\n0x9D, 0x80, 0xBA, 0x83, 0x7F, 0x6D, 0x02, 0x8E, 0xE4, 0xDF, 0x6A, 0x05, 0xE8, 0x97, 0xFC, 0x50,\n0xFA, 0x35, 0xAA, 0xC0, 0xBE, 0xF3, 0x20, 0x78, 0x98, 0x04, 0xC4, 0x60, 0x9C, 0xAA, 0xC2, 0x45,\n0x0E, 0x90, 0x6E, 0xC0, 0xEE, 0x52, 0x88, 0xE4, 0x5D, 0x87, 0x06, 0x24, 0xEE, 0xAD, 0x9A, 0x18,\n0x49, 0xAA, 0xCF, 0xCC, 0xB1, 0x27, 0x1E, 0xB2, 0xF5, 0x0F, 0x0C, 0x6F, 0x7F, 0x55, 0x03, 0x76,\n0x03, 0xF0, 0xDE, 0x87, 0x5F, 0x91, 0x17, 0xC9, 0x37, 0x7D, 0x42, 0xFE, 0xA8, 0xC5, 0x3F, 0x08,\n0xB8, 0x92, 0x7F, 0x81, 0x0B, 0xBC, 0x10, 0x7A, 0x5A, 0xF8, 0xCC, 0x00, 0x83, 0xD6, 0xCB, 0xE2,\n0x4F, 0xE9, 0x40, 0x81, 0x71, 0x72, 0x5F, 0xAF, 0x3F, 0x95, 0xED, 0xCF, 0xA0, 0x2D, 0xED, 0x34,\n0x3F, 0x7F, 0xE7, 0x0D, 0xD0, 0x7C, 0x84, 0x0B, 0x79, 0x40, 0xEF, 0xFF, 0x23, 0x05, 0xE9, 0x92,\n0xCF, 0x89, 0x17, 0x8A, 0x22, 0x5E, 0x0B, 0x9E, 0xD1, 0xB0, 0x98, 0xE8, 0xE8, 0x6E, 0xBD, 0xFE,\n0x2B, 0xA0, 0xC7, 0x22, 0x7B, 0xA0, 0x6A, 0x16, 0x7F, 0xAA, 0x6C, 0x41, 0xA0, 0xB9, 0x53, 0xFF,\n0x7F, 0x97, 0x7F, 0x09, 0x80, 0x18, 0x12, 0x70, 0xB0, 0xFE, 0xAB, 0x54, 0x81, 0xF9, 0x64, 0xCB,\n0xAF, 0x14, 0x97, 0x29, 0x47, 0xE6, 0x8F, 0x9D, 0x5D, 0xF0, 0xB1, 0xDB, 0x10, 0x80, 0x2D, 0x00,\n0x72, 0xFA, 0xCD, 0xD6, 0xDA, 0x98, 0x8C, 0xD8, 0x77, 0x1A, 0x79, 0xE2, 0x78, 0xFE, 0xA2, 0x6F,\n0x98, 0xDD, 0x1D, 0x6F, 0x28, 0xC0, 0xB6, 0x9D, 0x84, 0x3C, 0x1A, 0x25, 0xC2, 0xD0, 0x7D, 0xB2,\n0xC3, 0xF3, 0x6E, 0x5B, 0xC1, 0xBF, 0xB6, 0xD1, 0x0D, 0x98, 0x8F, 0xA0, 0xD9, 0x35, 0x21, 0x87,\n0xF0, 0x97, 0x63, 0xC1, 0x16, 0xA3, 0x46, 0x84, 0x11, 0x0C, 0x8B, 0x65, 0xDC, 0xAB, 0x02, 0x9C,\n0xCC, 0x56, 0x02, 0xE1, 0xEC, 0xF8, 0x8E, 0x49, 0x28, 0xC6, 0xCE, 0xBF, 0x34, 0xA5, 0x08, 0xFD,\n0xB9, 0x0E, 0xE7, 0x99, 0x23, 0x00, 0x5E, 0x90, 0x7F, 0xAB, 0x09, 0x88, 0xFA, 0x63, 0x31, 0xA7,\n0x3B, 0xA2, 0xE1, 0x03, 0x94, 0x9B, 0xE9, 0x82, 0x89, 0x91, 0xF1, 0xFE, 0xDE, 0xFF, 0x01, 0xC0,\n0x47, 0x5B, 0x7E, 0x19, 0xA4, 0x4A, 0x15, 0x98, 0x5B, 0x34, 0xDF, 0x48, 0x09, 0xF8, 0x8C, 0x4A,\n0xB0, 0x2F, 0x40, 0x2F, 0x9C, 0x07, 0xB6, 0x75, 0x6D, 0x08, 0xDC, 0x3B, 0x09, 0x7D, 0xAB, 0xA6,\n0xCF, 0x50, 0x7B, 0x3E, 0x39, 0x01, 0xA7, 0x0D, 0x4C, 0x04, 0x72, 0x7F, 0xA1, 0x16, 0x4C, 0x0D,\n0xB8, 0xD9, 0xDA, 0xF0, 0x46, 0xFF, 0x28, 0x90, 0x08, 0xB1, 0x0F, 0x06, 0x06, 0xEE, 0x76, 0x10,\n0x70, 0x18, 0x02, 0xAB, 0x22, 0x29, 0x8A, 0x25, 0xFB, 0x84, 0x33, 0x20, 0xE6, 0x80, 0x50, 0x8E,\n0x85, 0xA1, 0xD1, 0xD9, 0xCF, 0x80, 0x5C, 0x03, 0x32, 0xD0, 0x47, 0x15, 0x58, 0xCA, 0xEE, 0xFA,\n0xDB, 0xF5, 0x37, 0x71, 0x2F, 0x7C, 0x17, 0x39, 0xBE, 0xDF, 0x67, 0xBE, 0x08, 0xC8, 0xD9, 0x83,\n0x5F, 0xF8, 0xAB, 0xD6, 0x1C, 0x15, 0x87, 0x2F, 0x63, 0x0A, 0x30, 0xEC, 0xCB, 0x65, 0x0D, 0xFF,\n0xD0, 0x7E, 0x65, 0x30, 0x8C, 0xDD, 0xDF, 0x71, 0xFA, 0x23, 0xE8, 0xBF, 0x58, 0x17, 0xC9, 0xAE,\n0x9B, 0x7F, 0xFB, 0xBB, 0x23, 0xED, 0xCE, 0x3F, 0x21, 0x00, 0xC1, 0x1D, 0x2B, 0x5B, 0x1F, 0xEC,\n0xC6, 0xEB, 0x3F, 0x1B, 0x30, 0x8E, 0xEE, 0xBF, 0xA8, 0x00, 0xD7, 0x16, 0x41, 0x3A, 0x09, 0xE8,\n0x8B, 0xAC, 0xA1, 0x00, 0xCD, 0x2B, 0xF8, 0x15, 0xFB, 0x28, 0x8A, 0x70, 0xE3, 0x2B, 0xA7, 0x40,\n0x1A, 0x63, 0x78, 0x2D, 0x58, 0x35, 0x90, 0x7B, 0x7D, 0x7F, 0xA1, 0x4F, 0x13, 0xE5, 0x80, 0x5E,\n0xD4, 0x7F, 0xBA, 0xF7, 0x6F, 0x73, 0x48, 0x73, 0x38, 0x00, 0x97, 0x00, 0x11, 0x1F, 0xE7, 0x53,\n0x20, 0x3A, 0x00, 0x9C, 0x2C, 0x23, 0x50, 0xCA, 0x4F, 0x6C, 0xCC, 0xE7, 0xE1, 0x5C, 0xBC, 0x95,\n0x19, 0xBD, 0x48, 0xC3, 0xEB, 0xC4, 0xBF, 0x8F, 0xD7, 0xBE, 0xE5, 0xA9, 0x2D, 0x88, 0x40, 0x42,\n0x60, 0x7D, 0x19, 0x4C, 0xF2, 0x8E, 0x62, 0xB0, 0x43, 0x51, 0x3B, 0x4F, 0x01, 0x26, 0x2B, 0x88,\n0x5E, 0x25, 0x7D, 0x3F, 0xFF, 0x80, 0x1E, 0x17, 0x5E, 0xD3, 0xF8, 0x77, 0xD8, 0x79, 0xFE, 0x02,\n0xCC, 0x21, 0x05, 0x23, 0x07, 0x4F, 0x69, 0xF6, 0xA6, 0x00, 0x07, 0x12, 0x70, 0x3D, 0x00, 0xB7,\n0xEF, 0x03, 0x2C, 0xAB, 0xC0, 0x2C, 0x17, 0x2F, 0xCD, 0x0F, 0x95, 0x80, 0x00, 0x70, 0x4E, 0x01,\n0x02, 0xC3, 0xDF, 0x7D, 0x27, 0x4C, 0x93, 0x80, 0xAA, 0x83, 0xC4, 0x40, 0x77, 0xA1, 0x13, 0xD0,\n0x2E, 0xCE, 0x00, 0x87, 0x44, 0xA0, 0x19, 0x8F, 0xBB, 0x11, 0x68, 0x73, 0xB4, 0x06, 0xB4, 0x97,\n0xA0, 0x26, 0xEB, 0xD3, 0x7F, 0x66, 0xA7, 0xF0, 0x6F, 0x62, 0xEE, 0xDA, 0x65, 0x00, 0xEE, 0xEE,\n0x0F, 0x26, 0xE0, 0x3C, 0x14, 0xD8, 0xF2, 0xE0, 0x72, 0xB2, 0x2C, 0xB5, 0xD4, 0x76, 0xC2, 0x9B,\n0x58, 0xCC, 0xC7, 0xC3, 0x20, 0x6A, 0xFA, 0xE3, 0x68, 0x47, 0xD9, 0xE8, 0x77, 0x6D, 0x04, 0xFC,\n0xA6, 0x3E, 0x18, 0x42, 0x60, 0x1C, 0x2A, 0xD0, 0xA9, 0xFA, 0x55, 0x21, 0xB7, 0x68, 0x67, 0xFB,\n0x74, 0x79, 0xE2, 0x51, 0x79, 0xC0, 0xF3, 0xA5, 0x9B, 0x34, 0x6C, 0x51, 0xFB, 0xA5, 0xBF, 0x7B,\n0x0D, 0x01, 0x8B, 0x92, 0xAF, 0xAF, 0xD0, 0x0F, 0x33, 0xFE, 0xA5, 0x11, 0x14, 0x20, 0x9B, 0x10,\n0x03, 0x4F, 0xD6, 0xD7, 0x07, 0x98, 0x6C, 0x60, 0x10, 0xFC, 0xCF, 0xE4, 0x00, 0xDD, 0x96, 0xAB,\n0xC0, 0xA4, 0x0A, 0x07, 0xEB, 0x3F, 0x1F, 0x2A, 0x00, 0x57, 0xDA, 0xA0, 0xD7, 0x5A, 0xE3, 0x20,\n0x1C, 0x53, 0x04, 0xEC, 0x53, 0x80, 0xAF, 0x55, 0x08, 0xF6, 0x49, 0x0D, 0x18, 0x31, 0xC8, 0x47,\n0x6E, 0x9D, 0x39, 0xC0, 0x81, 0x85, 0x10, 0xF8, 0xE7, 0xD6, 0xFE, 0x0B, 0x7D, 0x7A, 0xEC, 0xF6,\n0x86, 0x40, 0x77, 0x72, 0x0C, 0xF2, 0x7F, 0x87, 0x83, 0x13, 0xF0, 0xC1, 0x50, 0x02, 0x36, 0xB4,\n0x11, 0x3A, 0xD0, 0xF9, 0x77, 0x34, 0x67, 0x8C, 0x51, 0x18, 0x9A, 0x56, 0xAE, 0xC4, 0xA0, 0x7C,\n0x1C, 0xF8, 0x53, 0x6E, 0x84, 0xBE, 0x79, 0x9C, 0x2D, 0x88, 0x40, 0xE1, 0xEF, 0xA3, 0x4F, 0xBB,\n0x17, 0x1F, 0xAF, 0x7F, 0xFD, 0x16, 0x7A, 0xC6, 0x17, 0x88, 0xA3, 0x08, 0x62, 0xD4, 0x03, 0x7F,\n0xBC, 0x9F, 0x70, 0xE2, 0xDF, 0xB1, 0xA2, 0x01, 0xC5, 0xC5, 0xB5, 0x1A, 0x10, 0xE6, 0xB1, 0x09,\n0x46, 0x09, 0x78, 0x97, 0x01, 0x58, 0x14, 0x3C, 0x7C, 0x89, 0x4F, 0x4E, 0x99, 0x80, 0xF7, 0xDA,\n0x00, 0x1C, 0x48, 0xC0, 0xFF, 0x41, 0x01, 0x66, 0xC7, 0x18, 0x2D, 0x01, 0x21, 0xA0, 0xCD, 0xA0,\n0x00, 0xD5, 0x00, 0xA3, 0xBB, 0x8B, 0x35, 0xFC, 0xC3, 0xDA, 0xFA, 0x2F, 0x68, 0xC0, 0x25, 0x7B,\n0x67, 0xF2, 0x8F, 0x4A, 0x48, 0x72, 0x31, 0x11, 0xC8, 0x13, 0xEC, 0xC5, 0x9F, 0x2E, 0x84, 0xC0,\n0xBF, 0xBB, 0x3D, 0x00, 0xFC, 0xF0, 0x58, 0x02, 0x00, 0xD0, 0xED, 0xEA, 0xFA, 0x6F, 0x3C, 0x01,\n0x0B, 0xFA, 0x55, 0xFB, 0xE6, 0x1C, 0x28, 0x7E, 0x19, 0x65, 0xE8, 0xF9, 0xB3, 0x25, 0xD6, 0x64,\n0xDF, 0x26, 0x95, 0x96, 0xCD, 0xEA, 0x16, 0xB1, 0xF1, 0x85, 0x2A, 0x30, 0x4D, 0x80, 0xDF, 0x7C,\n0xA2, 0xF7, 0xF4, 0x0D, 0xE3, 0x3B, 0xB1, 0xC2, 0x51, 0x38, 0xFD, 0x14, 0x72, 0x57, 0x8E, 0x39,\n0xFD, 0xF8, 0x46, 0x61, 0xFF, 0x89, 0xBA, 0x8B, 0xBF, 0x30, 0x6E, 0xED, 0x52, 0xFE, 0xAF, 0x93,\n0x80, 0x42, 0x5E, 0x58, 0x75, 0x31, 0xC5, 0x3F, 0x1B, 0x87, 0xD0, 0xFC, 0xA2, 0x7D, 0x80, 0xA2,\n0xE1, 0x0F, 0x0D, 0xD8, 0xEA, 0x81, 0x19, 0x44, 0xC0, 0x5B, 0x01, 0x10, 0x05, 0x38, 0x1C, 0x81,\n0x91, 0x80, 0xAC, 0x81, 0x80, 0x43, 0x05, 0x20, 0xC3, 0x78, 0x77, 0x9B, 0xB7, 0xC1, 0x60, 0x09,\n0x67, 0x5D, 0x1A, 0x30, 0x3B, 0x3F, 0x0D, 0xB7, 0x2C, 0x01, 0x6D, 0xBE, 0xB6, 0xE9, 0x57, 0xF1,\n0x0A, 0x40, 0x5E, 0x0D, 0x93, 0x6F, 0xFB, 0x09, 0x68, 0x73, 0x60, 0x1A, 0x10, 0xFE, 0x4D, 0x08,\n0xEC, 0xE3, 0x5F, 0x2C, 0xFD, 0xB2, 0x0D, 0x8F, 0x0E, 0x1A, 0x2D, 0x02, 0x86, 0x4F, 0x3B, 0xF9,\n0xF7, 0x64, 0x2E, 0x02, 0x66, 0x75, 0xFE, 0x89, 0x2A, 0x46, 0x40, 0xC7, 0x0E, 0xE5, 0x0F, 0xD6,\n0xB7, 0x1E, 0xFF, 0x62, 0x3A, 0xFA, 0x51, 0x39, 0xE2, 0x66, 0xFA, 0x4F, 0x33, 0xF1, 0x8E, 0x77,\n0xE7, 0x13, 0x32, 0xE7, 0xA9, 0xA3, 0xC0, 0x8A, 0x82, 0xCF, 0x0A, 0xC0, 0x55, 0xF6, 0xD5, 0x69,\n0x60, 0xDB, 0xFB, 0x4F, 0xF4, 0x68, 0x0E, 0x0D, 0x58, 0x33, 0x10, 0xD8, 0x5B, 0xFF, 0x95, 0x9F,\n0x53, 0x82, 0xE2, 0xDF, 0x41, 0x03, 0x0D, 0x68, 0x6E, 0xA6, 0x25, 0x1A, 0x6B, 0x34, 0xC3, 0xE8,\n0x6F, 0xD5, 0x08, 0x02, 0x02, 0xC0, 0x7F, 0xCD, 0x8A, 0x2A, 0xB0, 0xE0, 0xF7, 0xF2, 0x62, 0x83,\n0xE3, 0x20, 0xCF, 0x22, 0x01, 0xCD, 0xF1, 0x3E, 0xC0, 0xF6, 0x59, 0xE0, 0xB6, 0x00, 0x7C, 0xB6,\n0xC4, 0x3F, 0x9C, 0x8F, 0x46, 0x15, 0x58, 0xF8, 0xB3, 0xC5, 0x61, 0x47, 0xC9, 0x17, 0x45, 0x58,\n0xDA, 0xDD, 0x16, 0x01, 0x47, 0xA6, 0x01, 0xE1, 0x9F, 0x28, 0xD8, 0xCF, 0xBF, 0x93, 0xC4, 0x5E,\n0x9A, 0x15, 0xFD, 0x37, 0x5E, 0x03, 0x02, 0x80, 0x79, 0x43, 0x2D, 0x5D, 0x66, 0x3B, 0x4E, 0x1A,\n0x50, 0xB5, 0x60, 0x15, 0x22, 0x92, 0x53, 0x69, 0x04, 0xFD, 0x47, 0x29, 0x38, 0xF9, 0xE4, 0x50,\n0x7E, 0xF0, 0xCF, 0xE5, 0x5F, 0x1E, 0xF1, 0x35, 0x80, 0xDA, 0xB9, 0x93, 0xFE, 0x83, 0x80, 0x2A,\n0xC1, 0xA8, 0x1B, 0x91, 0xD2, 0xB4, 0x91, 0xDA, 0xED, 0x6C, 0x3F, 0x59, 0xE8, 0x77, 0xC4, 0xFF,\n0x46, 0x25, 0x24, 0xC2, 0x2F, 0xB2, 0x2F, 0xCA, 0xC0, 0x07, 0x0F, 0x23, 0x00, 0xC3, 0xFF, 0x64,\n0x48, 0x41, 0xF4, 0x5F, 0x9F, 0x06, 0xE4, 0x2F, 0xD5, 0xED, 0x08, 0xF8, 0xCF, 0x02, 0x10, 0xBE,\n0x69, 0xB2, 0xC6, 0xF1, 0x72, 0xA0, 0xFE, 0x63, 0x28, 0xE4, 0xB5, 0xA5, 0x7C, 0x1B, 0xCC, 0xD5,\n0x3A, 0xFE, 0xB5, 0x25, 0xA0, 0x39, 0xBD, 0x0B, 0xC1, 0xD6, 0x45, 0x01, 0x98, 0x63, 0xDF, 0x7C,\n0x65, 0xE4, 0xC9, 0x87, 0x73, 0x21, 0x0E, 0xC7, 0xDE, 0x28, 0xF8, 0x05, 0x69, 0xC0, 0x11, 0x1A,\n0x10, 0xFE, 0xB9, 0xED, 0x97, 0x35, 0xE0, 0xBD, 0xFD, 0x63, 0x99, 0xF2, 0x80, 0x34, 0x03, 0xCE,\n0xE9, 0x3F, 0xC6, 0xEE, 0x79, 0xBF, 0xF5, 0xE3, 0x8F, 0x38, 0x91, 0x3B, 0x0A, 0xC0, 0x36, 0xCF,\n0xE2, 0x60, 0xEE, 0x45, 0x3E, 0xA3, 0xFC, 0x7E, 0xB2, 0xB0, 0xF2, 0x15, 0x81, 0x95, 0xDB, 0x23,\n0x08, 0x4E, 0xB7, 0x66, 0xA6, 0xFD, 0x74, 0x7D, 0xA6, 0x54, 0x1C, 0x5B, 0x65, 0x94, 0x00, 0xC4,\n0x24, 0x41, 0xCF, 0xDE, 0x74, 0x33, 0x21, 0x30, 0x47, 0xC5, 0xCE, 0xE9, 0xB3, 0x93, 0xBA, 0x22,\n0x01, 0xE3, 0xFD, 0x13, 0x5C, 0xDD, 0x6A, 0xC8, 0x8B, 0xDE, 0xED, 0x27, 0xFF, 0x7C, 0x3D, 0x14,\n0x2F, 0xC1, 0x62, 0xB9, 0x69, 0x3D, 0xFA, 0x6F, 0x7F, 0x3B, 0x0D, 0xF8, 0x0F, 0x03, 0xD0, 0x19,\n0x08, 0xFC, 0xE2, 0x11, 0x10, 0xC6, 0x18, 0x09, 0x08, 0xFF, 0x18, 0x94, 0x3F, 0x68, 0x83, 0x56,\n0x6C, 0x3C, 0xFC, 0x8B, 0x82, 0xB0, 0x82, 0xC3, 0x77, 0x8B, 0xFA, 0xEF, 0xB5, 0x10, 0x68, 0x44,\n0x44, 0x01, 0xDA, 0x08, 0x15, 0xE0, 0x7E, 0x02, 0x02, 0x3F, 0x5F, 0x47, 0x10, 0xF0, 0xC5, 0xA4,\n0xFF, 0xEC, 0x6F, 0x69, 0xB6, 0x16, 0xFF, 0xB0, 0x53, 0x08, 0x92, 0x42, 0xE7, 0xC4, 0xE1, 0x06,\n0x00, 0x0F, 0xB7, 0xD7, 0x80, 0xCF, 0x89, 0x7F, 0xA1, 0x60, 0x2D, 0x08, 0xCE, 0xE2, 0x0F, 0xB2,\n0x4C, 0xF5, 0xD6, 0x50, 0x8D, 0xC8, 0x2F, 0x64, 0x2E, 0x0C, 0x8C, 0xC5, 0x53, 0x1D, 0xAE, 0xFF,\n0x34, 0x3E, 0xFE, 0x60, 0xEE, 0x8C, 0x75, 0x9D, 0x88, 0x81, 0x28, 0xFA, 0x01, 0x48, 0x69, 0x68,\n0xA0, 0xA6, 0xA4, 0x40, 0xD0, 0x40, 0x8D, 0x28, 0x43, 0x4D, 0x93, 0x2A, 0xDF, 0x00, 0x3D, 0xF4,\n0x50, 0xD2, 0x52, 0x47, 0xA2, 0xE5, 0x03, 0xF1, 0x8C, 0xE7, 0x72, 0x18, 0x1C, 0x63, 0xB3, 0x5E,\n0xA4, 0xBD, 0xB3, 0xBB, 0xF6, 0x3E, 0x90, 0xC8, 0x23, 0x7E, 0xE7, 0x5D, 0x7B, 0xC6, 0x9B, 0x7A,\n0xF9, 0x6A, 0xB0, 0x63, 0xB6, 0x0C, 0x2E, 0x6F, 0x8D, 0x78, 0xF8, 0x8B, 0x9D, 0xCE, 0x5F, 0xBF,\n0x67, 0xA6, 0x2E, 0x62, 0xFF, 0x0E, 0x72, 0x7A, 0xBA, 0x79, 0x32, 0xE5, 0x01, 0x9B, 0xD4, 0xAF,\n0xAE, 0x5C, 0xD4, 0xF2, 0x36, 0xC5, 0xBB, 0x96, 0xDE, 0x55, 0x72, 0xC0, 0xF8, 0x3F, 0x34, 0xE1,\n0xFF, 0xF6, 0xF4, 0x80, 0xAF, 0x8E, 0x06, 0xC0, 0xFB, 0x0E, 0x10, 0xEC, 0x11, 0xFB, 0xFA, 0x3F,\n0x08, 0x48, 0xC9, 0xB3, 0x9E, 0x8A, 0xFF, 0x1F, 0x3F, 0x14, 0x49, 0xE6, 0x8F, 0xAF, 0x74, 0xFC,\n0x5F, 0x81, 0x1D, 0x93, 0x60, 0x13, 0xCC, 0x93, 0xF3, 0x53, 0x1E, 0x78, 0x1E, 0x80, 0x76, 0x88,\n0x7D, 0xFB, 0x7D, 0x52, 0x9C, 0x7E, 0x53, 0x5F, 0xCA, 0xE1, 0x0F, 0x85, 0x39, 0xCD, 0xF0, 0x0F,\n0x41, 0x3E, 0x05, 0xF3, 0x5F, 0x62, 0x8F, 0x82, 0xE8, 0x06, 0x7F, 0xAA, 0x0B, 0x69, 0x15, 0x33,\n0x5F, 0xBF, 0x86, 0x72, 0x1A, 0x44, 0xFB, 0xD3, 0xE0, 0x1F, 0x2A, 0x50, 0x0B, 0xA0, 0x91, 0xD5,\n0x8D, 0xFC, 0x87, 0xFB, 0xBE, 0x72, 0x94, 0xA8, 0xAD, 0xB1, 0xD2, 0x83, 0xC7, 0xE6, 0xE3, 0xFF,\n0x1A, 0x02, 0x92, 0x7D, 0x96, 0x17, 0x35, 0x04, 0xEB, 0x95, 0x3A, 0xFC, 0xFC, 0x25, 0xDF, 0xFF,\n0xBE, 0xA0, 0xDE, 0x04, 0x01, 0xD9, 0xF9, 0x91, 0x99, 0x27, 0xF1, 0xA5, 0x73, 0x7E, 0xB7, 0xEC,\n0x0E, 0xEC, 0xA5, 0x3D, 0x8F, 0x08, 0x9D, 0xFE, 0xE2, 0xFF, 0x6C, 0x44, 0x31, 0xAA, 0x4E, 0x3B,\n0xF0, 0xEF, 0x70, 0x00, 0x7C, 0x73, 0x77, 0x0D, 0x50, 0xCB, 0x7F, 0x29, 0x3A, 0x16, 0x70, 0x03,\n0xFE, 0x08, 0xD2, 0x1F, 0x7C, 0x2E, 0xB0, 0x75, 0xB7, 0xF1, 0x6F, 0xCC, 0x40, 0x35, 0x44, 0xDF,\n0x02, 0x82, 0xBF, 0xAB, 0x3C, 0xE0, 0x35, 0x9F, 0xBA, 0xB4, 0xEA, 0x12, 0x90, 0x63, 0xAF, 0x5C,\n0xB0, 0xF2, 0xBF, 0x76, 0x91, 0x09, 0xEC, 0x17, 0x00, 0xB6, 0x6A, 0x3E, 0x17, 0x5D, 0x05, 0xD0,\n0x0B, 0x04, 0x1C, 0x18, 0x40, 0x10, 0xD8, 0x5B, 0x1B, 0x73, 0xA4, 0x18, 0x4F, 0xBE, 0x83, 0x16,\n0xA7, 0x1F, 0x1B, 0x83, 0x6B, 0xA3, 0x04, 0x70, 0x56, 0x9A, 0xD1, 0x92, 0xFF, 0x08, 0xDF, 0x17,\n0x18, 0xD4, 0x2D, 0x2E, 0x91, 0x24, 0x70, 0xE7, 0x63, 0x31, 0xDF, 0x07, 0x02, 0x79, 0x0E, 0x17,\n0x13, 0xE0, 0xB0, 0xAC, 0xEA, 0xE4, 0x6F, 0x8E, 0xA6, 0xFD, 0x1F, 0xF8, 0xA7, 0x05, 0x40, 0x1D,\n0x6A, 0x9C, 0x7F, 0xBC, 0x55, 0xD6, 0x75, 0x17, 0x98, 0x2B, 0x01, 0x05, 0x42, 0xFC, 0xDF, 0x70,\n0x19, 0xD0, 0xE1, 0xE7, 0x23, 0x8A, 0x51, 0x75, 0x5A, 0xE6, 0xDF, 0xF5, 0x70, 0x00, 0xBC, 0xF7,\n0x64, 0xD4, 0x4E, 0xEC, 0xEC, 0xFF, 0x28, 0x87, 0x11, 0xFC, 0xE4, 0x00, 0xD1, 0xC7, 0xAD, 0xFC,\n0xBB, 0xC7, 0x3E, 0x42, 0x2E, 0xD0, 0xCF, 0xBB, 0xEB, 0x7F, 0x1E, 0xC2, 0x9F, 0x88, 0x48, 0xCE,\n0x97, 0xB3, 0xA3, 0x07, 0x1D, 0xFA, 0x25, 0xF8, 0xED, 0xB2, 0x29, 0xEE, 0xE4, 0x43, 0xF5, 0x74,\n0xFA, 0xC0, 0x2F, 0x6C, 0x3C, 0x60, 0x53, 0x00, 0xD8, 0x48, 0x9F, 0x8B, 0xA9, 0x13, 0xFF, 0x97,\n0xF0, 0xB7, 0x4B, 0x41, 0xF4, 0x9F, 0xCB, 0x5F, 0xDD, 0x3D, 0x63, 0x15, 0x23, 0xC6, 0xBC, 0xD2,\n0x83, 0x2D, 0xF2, 0x5E, 0xE5, 0x60, 0x22, 0x7A, 0xBB, 0x2B, 0x6C, 0x5F, 0x74, 0xBC, 0xF7, 0x43,\n0xBE, 0x2F, 0x05, 0x7B, 0x41, 0x6A, 0xF8, 0x71, 0xCB, 0xA2, 0x1C, 0x90, 0x47, 0x00, 0x46, 0xA3,\n0x09, 0x70, 0xBC, 0x54, 0x4D, 0xD9, 0x99, 0xF3, 0xA2, 0xFB, 0xFF, 0x01, 0x83, 0x04, 0x30, 0xBD,\n0x74, 0x93, 0x0A, 0xA0, 0x89, 0x73, 0xE0, 0x10, 0x0F, 0x48, 0x92, 0x1F, 0xFE, 0x8D, 0x09, 0xE8,\n0xA3, 0xA9, 0x44, 0x1E, 0x55, 0xA7, 0x55, 0xFF, 0x77, 0x3C, 0x07, 0x08, 0xFF, 0x72, 0xF6, 0x77,\n0x6C, 0x01, 0xD7, 0xF0, 0x47, 0x98, 0x94, 0x08, 0x01, 0x81, 0x6B, 0xFE, 0xAF, 0x45, 0xA0, 0xDA,\n0x17, 0x8D, 0x0F, 0xEC, 0x15, 0x00, 0x06, 0x03, 0xFD, 0xC4, 0x03, 0xE6, 0x87, 0xC1, 0xF4, 0x19,\n0xD8, 0x7D, 0x16, 0x8C, 0xB4, 0x53, 0x3D, 0xE0, 0x29, 0x86, 0xAA, 0xC6, 0xA9, 0x6E, 0xDA, 0x11,\n0x8D, 0xFF, 0x6B, 0x94, 0x1F, 0x98, 0x69, 0xFC, 0x63, 0x56, 0x45, 0xAC, 0x12, 0xB0, 0x47, 0x00,\n0xC4, 0x07, 0xC2, 0x89, 0x29, 0xB2, 0x55, 0xB5, 0xFB, 0x5D, 0xBB, 0x30, 0xE4, 0x02, 0x99, 0x00,\n0x23, 0x0A, 0xA2, 0x99, 0xFA, 0x7A, 0x13, 0xD5, 0x7F, 0xCA, 0x80, 0x58, 0x13, 0xA7, 0xFE, 0xB2,\n0x0E, 0xDB, 0x00, 0xD2, 0x51, 0xFC, 0xDB, 0xAC, 0x01, 0x56, 0xE4, 0x39, 0xAD, 0xEB, 0x6B, 0x95,\n0x9A, 0x6F, 0xAC, 0x8B, 0xC0, 0xC1, 0x02, 0x60, 0x26, 0x5F, 0x3D, 0xE9, 0x3D, 0x4C, 0xFE, 0x2F,\n0x1C, 0xA0, 0x45, 0x5B, 0x07, 0xDD, 0xD3, 0xA5, 0x57, 0xFF, 0x57, 0x06, 0xD4, 0x87, 0xDA, 0xA3,\n0x1E, 0x70, 0xC9, 0xFF, 0x1D, 0xD3, 0x01, 0x36, 0x59, 0x90, 0x7E, 0x24, 0xED, 0x05, 0xC0, 0x8F,\n0x29, 0xF5, 0xF1, 0x0E, 0xF7, 0xB7, 0x06, 0xC0, 0xC6, 0xFF, 0xA9, 0x4D, 0x14, 0x2C, 0xFD, 0xEC,\n0x01, 0xAB, 0x01, 0xB4, 0x03, 0x07, 0x18, 0xA2, 0xF4, 0x8F, 0x0E, 0x1A, 0xAE, 0x03, 0xFA, 0x11,\n0x21, 0xAD, 0xA6, 0x82, 0x03, 0x7F, 0x9C, 0x3E, 0x62, 0xF1, 0x80, 0xE8, 0xD2, 0x1D, 0xFE, 0xDA,\n0x3C, 0xCA, 0x79, 0xD6, 0x52, 0x12, 0xB1, 0x5C, 0x0C, 0x23, 0xBB, 0xD3, 0x43, 0x60, 0xFB, 0x1C,\n0x68, 0x65, 0x40, 0xAC, 0xA9, 0x48, 0xE4, 0xB3, 0x41, 0x2C, 0x0D, 0x6B, 0xBD, 0x5B, 0x57, 0xED,\n0x43, 0xA1, 0x8B, 0x8C, 0x7A, 0x32, 0x7E, 0x78, 0x40, 0xCD, 0x93, 0xC9, 0x16, 0xDF, 0x50, 0x9B,\n0x08, 0x61, 0x0D, 0xB0, 0x84, 0xBF, 0x2E, 0xCC, 0x6A, 0x34, 0x78, 0x40, 0x3B, 0x51, 0xE7, 0xDB,\n0xEF, 0xF8, 0x3F, 0x04, 0x06, 0xB3, 0xE0, 0x9F, 0x87, 0x4B, 0x5F, 0x90, 0xFF, 0xE3, 0x51, 0x17,\n0xDD, 0x21, 0xD0, 0x6E, 0x09, 0xE1, 0xD7, 0xA9, 0x4D, 0x2F, 0x34, 0xBF, 0x58, 0x05, 0xE0, 0x31,\n0x1D, 0x60, 0xE2, 0x1F, 0xB1, 0xB3, 0x05, 0x7C, 0xDA, 0x0F, 0x65, 0x3E, 0xAC, 0xEB, 0x28, 0x5C,\n0x32, 0x80, 0xA8, 0x31, 0x80, 0x35, 0x46, 0x16, 0x50, 0x04, 0xC4, 0x01, 0x5E, 0xB9, 0x61, 0x1B,\n0x08, 0xF6, 0x6F, 0x9E, 0x80, 0x52, 0xDC, 0xE9, 0x4B, 0x6B, 0xFE, 0xCF, 0xCE, 0x0F, 0x3E, 0x46,\n0x25, 0xB6, 0x84, 0x20, 0x0A, 0x00, 0x11, 0x04, 0x24, 0x58, 0x00, 0x3C, 0xDF, 0xB1, 0x80, 0x8F,\n0xB6, 0x13, 0xF0, 0xD9, 0xB4, 0x01, 0x0C, 0xDB, 0x67, 0x27, 0x10, 0xAC, 0x9D, 0x20, 0xA0, 0x92,\n0x0F, 0x14, 0x00, 0x22, 0x08, 0x98, 0x6B, 0xA1, 0x2B, 0xF0, 0xFC, 0x68, 0x3D, 0x20, 0xB5, 0x80,\n0xCC, 0x7F, 0x3B, 0xC2, 0x01, 0x3A, 0x08, 0x29, 0x56, 0x54, 0x1B, 0x5F, 0xFA, 0xDE, 0xA4, 0x82,\n0xE7, 0x09, 0x28, 0x7F, 0xA7, 0x23, 0x2E, 0xBA, 0xA5, 0xC9, 0x05, 0xD0, 0xD9, 0x01, 0xB2, 0x2D,\n0x38, 0x48, 0xF8, 0x97, 0x29, 0xC0, 0xA7, 0xBB, 0x13, 0xE0, 0x50, 0xCC, 0x2B, 0x2E, 0xD5, 0x03,\n0x2E, 0xF1, 0xEF, 0xF0, 0x0E, 0x70, 0xC4, 0xC0, 0x5D, 0x0D, 0x20, 0xF1, 0x8E, 0x2D, 0x71, 0x68,\n0x95, 0x7F, 0xE0, 0x0F, 0xE7, 0xA7, 0x9B, 0x7A, 0x07, 0x01, 0x73, 0x02, 0xB8, 0x5C, 0x1B, 0x07,\n0x18, 0x37, 0xC3, 0xC9, 0x2F, 0x6A, 0xE0, 0x67, 0x0D, 0x5A, 0xFD, 0xB8, 0x74, 0x0A, 0xA0, 0xE1,\n0x5E, 0xF5, 0x7F, 0x58, 0xC0, 0xB1, 0xFF, 0x43, 0xAC, 0x01, 0x9E, 0xB5, 0x94, 0xD4, 0xCE, 0x82,\n0xB7, 0x78, 0x40, 0xF8, 0x37, 0x36, 0x7F, 0xD4, 0xBF, 0x24, 0xFA, 0xA9, 0xF5, 0x72, 0xC0, 0x40,\n0xA0, 0x6F, 0x4A, 0x03, 0x80, 0x9D, 0x75, 0x40, 0x12, 0x20, 0x26, 0xAD, 0xFE, 0xA9, 0x25, 0x52,\n0x09, 0xCC, 0xED, 0xAE, 0x28, 0x88, 0x66, 0x0D, 0x90, 0x14, 0x4D, 0xCA, 0x02, 0x6B, 0xCE, 0xDE,\n0x59, 0xFE, 0x1B, 0xCD, 0x82, 0x5B, 0xF7, 0xD7, 0xB9, 0xB3, 0x02, 0xE8, 0x33, 0x91, 0x1D, 0x60,\n0x14, 0xC3, 0xE0, 0x01, 0xFF, 0x36, 0x06, 0x3E, 0xA5, 0xE1, 0x22, 0xDF, 0x67, 0xC3, 0xE9, 0x83,\n0xFA, 0xAB, 0xCB, 0x80, 0x75, 0xB0, 0x27, 0x00, 0x1E, 0x66, 0x5B, 0x30, 0x08, 0x1C, 0x05, 0x16,\n0x70, 0x19, 0x7F, 0x44, 0xAA, 0x81, 0x59, 0x5D, 0x00, 0x44, 0xCD, 0x22, 0x60, 0x50, 0x90, 0x2B,\n0x7F, 0x84, 0x8C, 0x7F, 0x1D, 0x07, 0xE8, 0xEA, 0x54, 0x00, 0xA2, 0xF9, 0x4D, 0x71, 0x2E, 0x6F,\n0x37, 0xF3, 0xCF, 0x74, 0x11, 0xF2, 0xEC, 0xAC, 0x57, 0xEF, 0x34, 0x1B, 0x40, 0xBA, 0xBA, 0x3C,\n0x4E, 0xFE, 0x0F, 0x07, 0xB8, 0x9B, 0x07, 0x1C, 0xFC, 0xFC, 0x27, 0x03, 0x48, 0xE5, 0x8B, 0x3A,\n0x64, 0x17, 0x9C, 0x80, 0xB5, 0x08, 0x10, 0xFF, 0xD7, 0xD3, 0x17, 0x3D, 0xEE, 0xB9, 0x5C, 0x28,\n0xFE, 0x83, 0x82, 0x3A, 0xBD, 0x1C, 0x90, 0xE9, 0xF2, 0x6D, 0x20, 0x9E, 0x81, 0x50, 0x5F, 0x54,\n0xE0, 0x59, 0x6D, 0xFD, 0x74, 0x38, 0xEB, 0xE6, 0x2D, 0x21, 0x7D, 0x03, 0xE8, 0x3D, 0x94, 0xBD,\n0x1E, 0xD8, 0xD3, 0x3D, 0x7F, 0x9A, 0x37, 0x80, 0xFC, 0xE1, 0x00, 0xD9, 0x16, 0xEC, 0x81, 0x86,\n0x04, 0xAC, 0xBF, 0x44, 0x6D, 0x48, 0xB9, 0xEC, 0xF6, 0x6A, 0x97, 0xA5, 0x59, 0x70, 0x8C, 0x77,\n0x03, 0xE0, 0x01, 0x11, 0xF8, 0x66, 0x9A, 0x80, 0xBB, 0xFA, 0x3F, 0x02, 0x07, 0xB8, 0xCE, 0x3F,\n0x94, 0xF2, 0x1F, 0xDD, 0x20, 0x15, 0xAC, 0xD9, 0x6F, 0xCF, 0x01, 0x96, 0x50, 0x0A, 0xA4, 0xF4,\n0x87, 0x6A, 0xCA, 0x5F, 0xC8, 0x7D, 0xD4, 0x93, 0xFE, 0x42, 0xFE, 0xC3, 0x83, 0x75, 0x40, 0x12,\n0x22, 0x27, 0x0A, 0x60, 0xE6, 0xFD, 0x1F, 0x05, 0xB5, 0xA6, 0x06, 0x80, 0x1B, 0x09, 0xD8, 0xF5,\n0x40, 0x8D, 0x07, 0xAC, 0x36, 0xCF, 0x41, 0x62, 0xA1, 0x06, 0x2A, 0x96, 0x82, 0xE8, 0xC2, 0x1F,\n0x9F, 0xFF, 0x0E, 0x65, 0x38, 0xF3, 0xC0, 0xFF, 0x41, 0x3F, 0xC2, 0x6E, 0xD8, 0x31, 0x02, 0x00,\n0x7B, 0x1E, 0x50, 0x4F, 0xE5, 0x7F, 0x4F, 0xFA, 0xD7, 0xA4, 0x56, 0x06, 0x30, 0x3F, 0x19, 0x66,\n0x00, 0x7F, 0x08, 0xD8, 0x29, 0x7C, 0xE1, 0x1E, 0x19, 0xFF, 0x88, 0xC6, 0x01, 0x96, 0x2E, 0x8F,\n0xFD, 0x1E, 0x09, 0xFC, 0x55, 0xEB, 0xC7, 0x90, 0xBA, 0x96, 0xF3, 0x62, 0x36, 0xD0, 0xCF, 0x8D,\n0x04, 0xFC, 0x35, 0xF6, 0x0F, 0x39, 0x05, 0xC6, 0x04, 0xCE, 0xC4, 0x7A, 0x01, 0x60, 0x1B, 0x45,\n0x09, 0x81, 0x1F, 0x57, 0xF9, 0x47, 0x26, 0x24, 0xD3, 0x8F, 0xBB, 0x6C, 0x04, 0x4D, 0x30, 0xAF,\n0xEB, 0x00, 0x7D, 0x76, 0x9C, 0xDC, 0xDF, 0x34, 0x01, 0x8B, 0x70, 0x7D, 0xF4, 0x03, 0x8E, 0x9B,\n0xF8, 0xA7, 0x95, 0x19, 0xBF, 0x5C, 0xE3, 0x96, 0xD1, 0x7B, 0x1A, 0xF3, 0x8F, 0x62, 0x18, 0xF9,\n0x3F, 0xFC, 0x03, 0x1E, 0x70, 0x75, 0x4B, 0x08, 0x3F, 0xF2, 0x43, 0x08, 0x02, 0x92, 0x28, 0x01,\n0xFC, 0xAE, 0x74, 0x48, 0x40, 0xD1, 0x08, 0xC8, 0x06, 0xB8, 0xAE, 0xD8, 0x16, 0x4C, 0x01, 0x20,\n0x8E, 0xAF, 0xE9, 0x1B, 0x01, 0x6B, 0xD1, 0xE0, 0x6D, 0x42, 0xDF, 0xF3, 0x03, 0xB0, 0x84, 0x67,\n0x6F, 0xC3, 0x12, 0x8A, 0x84, 0x93, 0x73, 0x60, 0x08, 0xD8, 0x4F, 0x7A, 0x34, 0x95, 0xD1, 0x39,\n0x51, 0x15, 0xE2, 0x0D, 0xB4, 0xD0, 0x14, 0x78, 0x42, 0x4A, 0x84, 0x68, 0x51, 0x45, 0xCB, 0xCA,\n0x17, 0xB1, 0x30, 0x62, 0x0B, 0x01, 0xA3, 0x2A, 0xEC, 0xA8, 0x49, 0x10, 0xE6, 0xC0, 0x0B, 0x16,\n0x70, 0x01, 0x80, 0x6C, 0x09, 0xD9, 0xCB, 0xFF, 0xA1, 0x1E, 0xFB, 0xA2, 0xE5, 0x6B, 0xE1, 0xFF,\n0xAC, 0xFC, 0xB9, 0x84, 0x0E, 0xBB, 0x70, 0xE0, 0x01, 0xE7, 0x08, 0x58, 0xB8, 0x06, 0xFE, 0xAC,\n0xD3, 0x20, 0x90, 0xCE, 0x96, 0x04, 0xF0, 0x03, 0x8A, 0x5F, 0x7C, 0x1F, 0x48, 0x8C, 0x5D, 0x0A,\n0xA3, 0x53, 0x01, 0xF4, 0xCC, 0x2C, 0xF8, 0xD7, 0x4F, 0x0E, 0x33, 0xAA, 0x36, 0x9E, 0xCF, 0x4B,\n0xFC, 0x9B, 0x45, 0xA0, 0x53, 0x4F, 0x29, 0x55, 0xFC, 0x15, 0xC9, 0x60, 0x11, 0x70, 0xCC, 0x3F,\n0xD6, 0x01, 0x73, 0xED, 0x1F, 0xDC, 0xFB, 0x1C, 0x37, 0xCA, 0x05, 0xF3, 0x04, 0xC0, 0x91, 0x6A,\n0x45, 0x62, 0x3C, 0xA6, 0xA1, 0x32, 0x4F, 0x74, 0xAE, 0x13, 0x76, 0x3F, 0xD3, 0xB6, 0xE0, 0x27,\n0xB3, 0x00, 0x44, 0x60, 0x90, 0xDD, 0x20, 0xCD, 0x06, 0x10, 0x22, 0xA4, 0x22, 0x76, 0xAD, 0x03,\n0x5A, 0xA0, 0x21, 0x01, 0x7D, 0x48, 0x91, 0xF4, 0xB8, 0x1A, 0xF4, 0x7C, 0x60, 0xAD, 0x78, 0xC0,\n0x57, 0xA1, 0xEB, 0x71, 0x01, 0x18, 0xEC, 0x9B, 0x71, 0x80, 0x2B, 0xEB, 0x7F, 0xA6, 0x0E, 0x00,\n0xFF, 0x0D, 0x7F, 0x02, 0xD7, 0x20, 0xFE, 0x2E, 0xFE, 0x5C, 0xB3, 0xE0, 0x6B, 0x8D, 0x97, 0x05,\n0x84, 0xD7, 0xD7, 0x2F, 0xBD, 0x67, 0x2D, 0x77, 0x05, 0x91, 0xC5, 0x02, 0x96, 0xCE, 0xAB, 0x39,\n0x02, 0x22, 0xF4, 0xF6, 0x15, 0x03, 0x62, 0xAB, 0x6C, 0x40, 0x4E, 0x84, 0x31, 0xF0, 0x62, 0x7C,\n0x1B, 0x84, 0x0A, 0xA2, 0xD1, 0x39, 0xA2, 0x95, 0x11, 0x70, 0xDA, 0x05, 0x56, 0x00, 0x3E, 0xB1,\n0x50, 0xD3, 0x8B, 0x72, 0x30, 0x81, 0x74, 0x10, 0x06, 0xF5, 0xB2, 0x01, 0xF4, 0x75, 0xC0, 0x49,\n0x00, 0x7E, 0xFB, 0x49, 0xDC, 0x19, 0xBB, 0x3A, 0x0D, 0x45, 0x61, 0xFC, 0xFD, 0x01, 0x1D, 0x42,\n0x03, 0xC5, 0x0C, 0x81, 0x42, 0xA1, 0xB8, 0x48, 0x70, 0x73, 0x28, 0x28, 0xE8, 0x20, 0xB4, 0x48,\n0x3B, 0x49, 0xC4, 0xD9, 0xE9, 0xD1, 0x41, 0xCC, 0x50, 0x3A, 0x54, 0x88, 0x38, 0xBD, 0x8E, 0x3A,\n0x75, 0x71, 0x76, 0x7C, 0xFE, 0x81, 0xDE, 0x73, 0xC8, 0xE1, 0x33, 0x4D, 0xD2, 0xF3, 0xA5, 0xA4,\n0xF8, 0x3B, 0xA7, 0x37, 0x57, 0x89, 0xE5, 0x55, 0x2F, 0xBF, 0xF7, 0xDD, 0xDE, 0xAA, 0x3F, 0xF4,\n0x23, 0x7E, 0x92, 0xF0, 0xEA, 0x99, 0x0F, 0x57, 0x9C, 0x09, 0x63, 0xFB, 0xEB, 0x22, 0xA7, 0x30,\n0x30, 0x35, 0x34, 0xAD, 0x3F, 0x04, 0x6B, 0x33, 0xE0, 0xCC, 0x2D, 0x33, 0x60, 0x5D, 0x7A, 0xE0,\n0x69, 0x7D, 0x02, 0xFF, 0x9D, 0x63, 0x67, 0x58, 0xD2, 0xEA, 0xC1, 0x2A, 0xE1, 0xFB, 0x7C, 0x14,\n0xFD, 0x29, 0xD5, 0xE2, 0xAA, 0xC0, 0xB7, 0x55, 0x4C, 0xF9, 0x75, 0x8A, 0xA9, 0xFF, 0x1E, 0xE0,\n0x5C, 0xFA, 0x42, 0xCD, 0xAB, 0x6B, 0x3A, 0x4F, 0x47, 0x37, 0xE1, 0x0D, 0x57, 0xD7, 0x1B, 0xD0,\n0xF9, 0x1B, 0x21, 0xBD, 0x0C, 0x18, 0xDA, 0x43, 0x6E, 0xAB, 0x99, 0x10, 0xD7, 0xE6, 0x67, 0x61,\n0x78, 0x44, 0x91, 0x2C, 0x2F, 0xAA, 0x46, 0xD9, 0x4F, 0x34, 0xAA, 0xDF, 0x06, 0x98, 0x01, 0xFE,\n0xF3, 0x4B, 0x62, 0x62, 0xAB, 0xEF, 0x0C, 0x98, 0x71, 0xDA, 0x6F, 0x17, 0x9C, 0xD1, 0xD8, 0x8E,\n0x52, 0xAF, 0x70, 0x8A, 0x69, 0x06, 0x5A, 0xC1, 0x07, 0x00, 0x99, 0x0C, 0xA8, 0xD4, 0x13, 0x20,\n0xAE, 0xD5, 0x54, 0x26, 0x47, 0xE4, 0x3F, 0x17, 0xC9, 0x7F, 0x38, 0xA4, 0x31, 0x5B, 0x63, 0xEB,\n0x0B, 0x5B, 0x67, 0x3C, 0x1D, 0xF9, 0x0F, 0xD2, 0xC3, 0x04, 0xFB, 0x5F, 0xD0, 0x4C, 0x80, 0x89,\n0x00, 0x01, 0x3A, 0xDC, 0x07, 0x01, 0x9A, 0xFE, 0x00, 0xD4, 0x87, 0x39, 0x1F, 0x01, 0xE5, 0xCE,\n0xDA, 0x2A, 0xBF, 0x1B, 0xA5, 0xCD, 0x4A, 0x4D, 0x80, 0xE0, 0xFC, 0x96, 0xB9, 0xD4, 0xA8, 0x1A,\n0x47, 0x3C, 0xE9, 0x68, 0x91, 0x8E, 0xA8, 0x5A, 0xF4, 0xE0, 0xFD, 0xFB, 0x05, 0x59, 0x3D, 0xF8,\n0xBA, 0xF9, 0xBA, 0x09, 0x4D, 0xD5, 0x72, 0xB9, 0xA1, 0x2A, 0xF0, 0x8B, 0xAB, 0xFD, 0xD7, 0xF2,\n0x53, 0x5E, 0x7E, 0x28, 0xCB, 0x0F, 0x32, 0x76, 0xB6, 0x3E, 0xCA, 0xFC, 0x7B, 0x9E, 0x97, 0x5C,\n0x15, 0xC5, 0x77, 0x69, 0x94, 0x76, 0x6B, 0xBD, 0xBE, 0x7F, 0xCD, 0x72, 0x3F, 0x66, 0x6B, 0xCA,\n0xB3, 0x22, 0x49, 0x92, 0x98, 0xFF, 0x2F, 0xCD, 0xB2, 0xC3, 0x21, 0x63, 0x08, 0x77, 0xED, 0xBE,\n0x7C, 0x09, 0xED, 0x22, 0x77, 0x85, 0xE3, 0xDD, 0xD3, 0x91, 0xE0, 0x74, 0x3A, 0xFE, 0x79, 0xFC,\n0xC3, 0xF1, 0xF8, 0x28, 0xB7, 0x93, 0xE0, 0x2B, 0xF5, 0xD8, 0x1D, 0xC2, 0x8B, 0x73, 0x6A, 0x5B,\n0x5D, 0x67, 0x34, 0xF2, 0x01, 0x98, 0x6E, 0x62, 0x19, 0x8C, 0x29, 0xBF, 0x06, 0xEE, 0xC7, 0x74,\n0x15, 0x74, 0xBD, 0xAE, 0x2D, 0xF2, 0xBB, 0x74, 0x91, 0x36, 0xBB, 0x5D, 0x5D, 0x40, 0xA3, 0x61,\n0x20, 0x9D, 0x73, 0x01, 0x10, 0xBF, 0x3A, 0x3C, 0x7B, 0x50, 0x60, 0x4A, 0x35, 0x8D, 0x78, 0x6D,\n0x41, 0x75, 0x60, 0x43, 0xFA, 0x6F, 0xD3, 0x87, 0xB7, 0xCB, 0x0D, 0xAB, 0xC0, 0xFD, 0x2B, 0x8A,\n0xE5, 0x7E, 0x5F, 0x96, 0x7B, 0xA6, 0xE4, 0x46, 0xDA, 0x7F, 0x79, 0x5E, 0x14, 0xB9, 0x94, 0x75,\n0x55, 0x6D, 0x3D, 0xEE, 0xC1, 0x64, 0x42, 0xB5, 0x0C, 0x93, 0x29, 0x57, 0xC9, 0x2A, 0x8E, 0xA3,\n0x28, 0x5E, 0xC5, 0xB5, 0x8E, 0xDA, 0x88, 0x65, 0xC3, 0xCA, 0x54, 0xB8, 0xEF, 0x40, 0xF3, 0xE5,\n0x73, 0x28, 0xBF, 0x4F, 0xA1, 0x8F, 0xC2, 0x4F, 0xB7, 0x02, 0x0F, 0x8F, 0x3C, 0x0F, 0xFA, 0xA4,\n0xDF, 0xBC, 0x92, 0x27, 0x3E, 0x51, 0xF2, 0xD3, 0xAF, 0xF7, 0x40, 0xA3, 0xBF, 0xA9, 0x04, 0xE1,\n0xBE, 0xE7, 0x51, 0x27, 0x41, 0x7F, 0x11, 0x88, 0x57, 0xC9, 0x64, 0xCA, 0x96, 0x2C, 0x18, 0xB2,\n0x79, 0x64, 0xB9, 0xA3, 0xEE, 0x5A, 0xDD, 0x03, 0xDB, 0x75, 0x90, 0x8A, 0xFC, 0x6C, 0x60, 0x82,\n0x1F, 0x72, 0x64, 0x4A, 0xFB, 0x6F, 0x78, 0x03, 0x2A, 0x2F, 0x37, 0x44, 0xBF, 0xDF, 0xBC, 0xDC,\n0xD0, 0x88, 0xD8, 0xF8, 0x08, 0xB8, 0xE7, 0x2A, 0x74, 0x49, 0xA2, 0x62, 0x7B, 0xD6, 0x5D, 0xE8,\n0x3C, 0x37, 0x03, 0x5A, 0x57, 0x75, 0xD6, 0x15, 0x63, 0xAE, 0x94, 0x09, 0xD5, 0x93, 0xE9, 0x94,\n0xF5, 0x5F, 0xC8, 0x14, 0x71, 0x44, 0xB0, 0x8A, 0x64, 0x67, 0x9B, 0x91, 0xFE, 0xA3, 0x0D, 0xB8,\n0xDD, 0x6D, 0x45, 0x6E, 0xEE, 0x43, 0xC6, 0xC0, 0x91, 0xE3, 0xE1, 0x81, 0x37, 0x60, 0xB8, 0xF7,\n0xC8, 0x71, 0x0A, 0xD0, 0x09, 0x70, 0x57, 0xBD, 0xBE, 0xCE, 0x36, 0x74, 0x17, 0xCC, 0x90, 0xCD,\n0xC2, 0x7B, 0x10, 0xD1, 0x2A, 0x72, 0x51, 0xFF, 0x25, 0xC1, 0x80, 0xA4, 0xFE, 0xA6, 0x63, 0x1A,\n0x76, 0xA9, 0x16, 0x02, 0xFC, 0xD7, 0x96, 0x00, 0xD5, 0x7F, 0x1E, 0x22, 0x3E, 0x1B, 0xFA, 0x6C,\n0x80, 0x79, 0x03, 0x2E, 0xA4, 0x69, 0x01, 0xF6, 0x63, 0xE3, 0xB6, 0x20, 0x23, 0xCD, 0xF0, 0x02,\n0xDC, 0x2F, 0x69, 0xFF, 0x85, 0x96, 0x6A, 0x6D, 0xCC, 0x8C, 0x82, 0x50, 0x60, 0xDE, 0xC3, 0x80,\n0x3D, 0x98, 0x4A, 0x4D, 0x88, 0xD2, 0xF3, 0x8F, 0xC9, 0x8A, 0xF2, 0x5F, 0x2C, 0x87, 0x20, 0x33,\n0x2A, 0xAC, 0x64, 0xAC, 0x01, 0xB3, 0xED, 0x6E, 0x27, 0x06, 0x64, 0x38, 0x29, 0xAC, 0x00, 0x8F,\n0x0F, 0x74, 0xFE, 0xA3, 0x0D, 0x78, 0xE2, 0x0D, 0x28, 0xAF, 0x0B, 0x9E, 0x6B, 0x1B, 0x0D, 0x3B,\n0x0B, 0x5E, 0x7B, 0x9D, 0xCD, 0xF4, 0x10, 0x2A, 0x62, 0x58, 0x25, 0x02, 0xB5, 0x04, 0x20, 0xC0,\n0x01, 0x15, 0x68, 0xFE, 0x33, 0x5A, 0x05, 0x38, 0xE2, 0x0C, 0x18, 0x6A, 0x24, 0xD5, 0x83, 0x54,\n0x8B, 0xD0, 0x1F, 0x04, 0xC8, 0x32, 0x90, 0xFE, 0xD0, 0x10, 0xE0, 0x60, 0x06, 0x14, 0x58, 0x05,\n0x96, 0xCB, 0x92, 0x34, 0x60, 0x2E, 0xA5, 0xA2, 0xFB, 0xD4, 0xD6, 0x5A, 0x76, 0x2D, 0xCC, 0x80,\n0x2C, 0xE3, 0x1B, 0x08, 0x90, 0x5A, 0xFC, 0x89, 0x42, 0x18, 0x50, 0xFC, 0xA7, 0x06, 0xCC, 0x18,\n0xFF, 0x29, 0x54, 0xFE, 0x53, 0x38, 0xFF, 0x29, 0xA4, 0xFF, 0x60, 0x40, 0xDF, 0x7F, 0x02, 0xE7,\n0x3F, 0xDA, 0x80, 0x3B, 0xE5, 0xA2, 0xFD, 0xB6, 0xF0, 0x1F, 0x95, 0x01, 0xD5, 0x7F, 0x81, 0x38,\n0x5A, 0x31, 0xFE, 0x53, 0x98, 0x35, 0x30, 0xD6, 0x1A, 0x5C, 0x80, 0x4A, 0x7E, 0x41, 0x80, 0x94,\n0xFE, 0xEC, 0x08, 0x38, 0xED, 0x99, 0xFF, 0xE8, 0x0C, 0x08, 0x01, 0x0E, 0x6F, 0x40, 0x46, 0x7E,\n0x37, 0x15, 0x20, 0x11, 0xFF, 0x82, 0xFF, 0xC2, 0xB8, 0xA4, 0x05, 0x78, 0xE9, 0x6D, 0xC0, 0x4F,\n0x36, 0x16, 0x88, 0x80, 0x48, 0x7B, 0x4A, 0x23, 0xFF, 0x19, 0x43, 0xEB, 0x4F, 0x8B, 0xF8, 0xFE,\n0x9F, 0x54, 0xAC, 0x18, 0xFF, 0x99, 0x01, 0x9D, 0xA4, 0x22, 0xFE, 0x63, 0x0D, 0xB8, 0xAB, 0x20,\n0xFC, 0x67, 0x50, 0xFE, 0x83, 0x01, 0x09, 0xFF, 0x29, 0x84, 0xFF, 0x0C, 0x2A, 0xFF, 0x29, 0x7E,\n0x00, 0xCC, 0x6A, 0x02, 0x5C, 0xCB, 0xA3, 0x39, 0x81, 0xFF, 0x84, 0xD8, 0xB3, 0x5F, 0x6C, 0xFE,\n0x63, 0x36, 0xC1, 0x10, 0xE0, 0x80, 0x0A, 0x04, 0xD8, 0x02, 0x5F, 0x95, 0xFF, 0x24, 0xFC, 0xF5,\n0x0D, 0x80, 0x38, 0xE1, 0xA5, 0xFD, 0x97, 0xFE, 0x1F, 0x03, 0xAA, 0xFC, 0xB4, 0x07, 0x35, 0x20,\n0x60, 0x12, 0x20, 0x9B, 0x01, 0x73, 0x18, 0xD0, 0x44, 0x87, 0x51, 0x1E, 0x30, 0x61, 0xFE, 0xAE,\n0x8A, 0x80, 0xCE, 0x0E, 0x18, 0x0C, 0x2A, 0xC0, 0x29, 0x8A, 0xC8, 0x7F, 0x30, 0xE0, 0xA5, 0x36,\n0xFF, 0x31, 0x19, 0x30, 0x03, 0xBE, 0xFF, 0x0C, 0x42, 0x80, 0x06, 0xE1, 0x3F, 0x18, 0xD0, 0xF7,\n0x9F, 0xF1, 0xCD, 0xF3, 0x1F, 0xF0, 0xFD, 0x67, 0x1C, 0xB2, 0x76, 0xFB, 0xD9, 0xA5, 0xF5, 0xDF,\n0xC8, 0x5F, 0x37, 0x27, 0xF0, 0x9F, 0x65, 0xC0, 0x4B, 0x9D, 0x00, 0xCF, 0x80, 0x63, 0xD4, 0xE0,\n0x02, 0x84, 0x01, 0x91, 0x00, 0x39, 0xFF, 0x01, 0x0B, 0x80, 0xBD, 0xFC, 0xC7, 0x66, 0xC0, 0xC5,\n0x4D, 0x0C, 0xC8, 0x2B, 0x10, 0xFE, 0x1B, 0x32, 0x03, 0xD6, 0x70, 0xED, 0xA7, 0x25, 0x27, 0xBC,\n0x0E, 0xED, 0x69, 0x0F, 0x23, 0x66, 0x85, 0xDA, 0xAF, 0x1A, 0x1A, 0x2B, 0x01, 0xF4, 0x33, 0xE0,\n0x75, 0x02, 0x74, 0xFD, 0x07, 0xA2, 0xD8, 0xCD, 0x7F, 0x75, 0x03, 0x36, 0x93, 0xDF, 0xDA, 0xFC,\n0x07, 0xBC, 0x0D, 0x30, 0x70, 0xFD, 0x07, 0x5C, 0xFF, 0xD1, 0x06, 0xB4, 0xFB, 0x64, 0x70, 0xFD,\n0x07, 0xDC, 0xFD, 0x2F, 0xB0, 0x57, 0xDA, 0x18, 0x91, 0xFF, 0x60, 0xC0, 0x75, 0xC3, 0x7E, 0xCD,\n0xFC, 0xE7, 0xEE, 0x82, 0x91, 0xFF, 0x88, 0x0C, 0x48, 0x08, 0xB0, 0xBF, 0x02, 0x5B, 0x16, 0x79,\n0x7E, 0xD7, 0xD7, 0x7F, 0x30, 0x60, 0x0A, 0xFF, 0xF5, 0x16, 0xA0, 0x9F, 0xFF, 0x6E, 0xB9, 0x0B,\n0x76, 0x37, 0xC0, 0x37, 0x88, 0x80, 0xC0, 0x37, 0xA0, 0x7E, 0xBC, 0x45, 0xC6, 0xF0, 0x71, 0xC0,\n0x25, 0x2D, 0x40, 0x18, 0xAF, 0x6E, 0x44, 0xBB, 0x0A, 0xEF, 0x42, 0x21, 0x03, 0x42, 0x7D, 0x2D,\n0x01, 0x10, 0x8C, 0x07, 0xF3, 0x1F, 0xEA, 0xB2, 0xFF, 0x9E, 0x24, 0xE0, 0x49, 0xD4, 0x1D, 0x29,\n0xE0, 0x3F, 0x18, 0x70, 0xED, 0xE4, 0x3F, 0xD7, 0x80, 0x59, 0xC8, 0x7F, 0x60, 0x7B, 0xC1, 0x80,\n0xBF, 0xE1, 0x3F, 0xC2, 0x80, 0x50, 0x9A, 0xE0, 0xE6, 0x3F, 0xE0, 0xFA, 0x0F, 0x78, 0xFE, 0x03,\n0xDB, 0x6D, 0x7B, 0xFA, 0x83, 0xFF, 0x00, 0x22, 0xA0, 0x36, 0x24, 0x08, 0xFF, 0xC1, 0x80, 0xDD,\n0x7F, 0x5C, 0x4F, 0x12, 0xDA, 0x80, 0xE3, 0x5A, 0x0D, 0x2B, 0x40, 0x28, 0xB0, 0x91, 0x00, 0xE1,\n0x3F, 0x2E, 0x00, 0xCE, 0xD3, 0x9E, 0xFA, 0x43, 0xD1, 0xFE, 0x4B, 0x6F, 0x22, 0x40, 0xD7, 0x7F,\n0xE8, 0x61, 0x0C, 0xD8, 0x47, 0x80, 0x7B, 0x1B, 0xE5, 0x51, 0x2E, 0x39, 0xFD, 0x35, 0x53, 0xA0,\n0xCD, 0x74, 0xC8, 0xAB, 0xFD, 0x6F, 0xA1, 0x57, 0x3B, 0x0A, 0x16, 0x1A, 0x0A, 0x6C, 0x70, 0x3F,\n0xDC, 0xFE, 0x17, 0x75, 0x41, 0x80, 0xE6, 0x3F, 0x18, 0xB0, 0x93, 0xE7, 0xFF, 0x12, 0xB7, 0xEC,\n0x82, 0x11, 0x55, 0xCE, 0x70, 0xF3, 0x1F, 0x70, 0xF2, 0x1F, 0x65, 0xC0, 0x6F, 0x50, 0x9A, 0xCC,\n0x82, 0x0E, 0x89, 0xFC, 0x47, 0x64, 0xC0, 0xD3, 0x19, 0x9E, 0xFF, 0xC0, 0xB6, 0x11, 0x00, 0x61,\n0xC1, 0xEC, 0x0C, 0x28, 0x0F, 0xAC, 0xD5, 0x7F, 0xB3, 0x58, 0x04, 0x08, 0xE2, 0xCE, 0x08, 0x58,\n0xF9, 0x0F, 0x38, 0xF9, 0x6F, 0xF0, 0x0C, 0xD8, 0x20, 0xD7, 0x04, 0x78, 0x6D, 0x00, 0x4C, 0xE7,\n0xD7, 0x6C, 0x80, 0x51, 0x43, 0x09, 0x70, 0x78, 0x03, 0xDE, 0x54, 0x80, 0xC0, 0x79, 0xF7, 0xEF,\n0x2F, 0x71, 0x67, 0xD3, 0x1A, 0x59, 0x11, 0x85, 0x61, 0x7F, 0x80, 0x8B, 0x90, 0x86, 0xA6, 0xB3,\n0x10, 0x34, 0x01, 0x99, 0x8D, 0x34, 0x2E, 0x1D, 0x06, 0x14, 0xDC, 0x0C, 0xD8, 0x34, 0x0E, 0x08,\n0x21, 0xE0, 0xDA, 0x95, 0x34, 0x4C, 0x98, 0x59, 0x84, 0x10, 0x22, 0xCC, 0x20, 0x8A, 0x4A, 0xC4,\n0x45, 0x70, 0x91, 0xCD, 0xB8, 0x0A, 0x71, 0xA7, 0xF3, 0x03, 0xAD, 0x73, 0x52, 0xC7, 0x27, 0x95,\n0xBA, 0x75, 0xCF, 0xB9, 0x5A, 0x3D, 0xF3, 0x9E, 0xBA, 0x55, 0x75, 0xBB, 0xAF, 0x18, 0xFB, 0xE3,\n0xF1, 0xAD, 0x3A, 0x55, 0xB7, 0x5F, 0xE5, 0x63, 0x64, 0x39, 0x60, 0x95, 0xF8, 0x28, 0xE9, 0x67,\n0x91, 0x4F, 0x45, 0x6B, 0xB5, 0x7E, 0xDA, 0x82, 0x3D, 0x9C, 0x60, 0x4B, 0xBB, 0xFD, 0x00, 0x48,\n0x84, 0xC6, 0xBF, 0x78, 0xC0, 0xF2, 0xD0, 0xAA, 0xDA, 0x01, 0x37, 0x9B, 0x1D, 0xA8, 0x07, 0xA4,\n0x60, 0x55, 0x2A, 0xF9, 0xF3, 0x7F, 0xBE, 0x07, 0xBC, 0xAA, 0xE4, 0xF9, 0x3F, 0x5C, 0xDD, 0xEB,\n0x26, 0xFF, 0x5E, 0xE7, 0x4B, 0x91, 0xC7, 0x3F, 0x9F, 0x80, 0x57, 0xCF, 0x4E, 0x32, 0xD7, 0xD1,\n0xB2, 0xB4, 0x7E, 0xB4, 0xCB, 0x4A, 0xA4, 0x3D, 0x0A, 0x1B, 0xB8, 0x84, 0x7F, 0x05, 0x01, 0xF3,\n0x41, 0x87, 0x09, 0xC0, 0xD0, 0x34, 0xE0, 0x6E, 0x7F, 0x0B, 0x08, 0x00, 0x11, 0x0E, 0x30, 0xCE,\n0x3F, 0x2C, 0xA0, 0x40, 0xB0, 0x3F, 0x00, 0xC1, 0xDE, 0xB6, 0x33, 0xC1, 0xFD, 0xF8, 0x87, 0x7A,\n0x00, 0x50, 0x47, 0xC0, 0xD9, 0xFC, 0x65, 0x1A, 0x46, 0x0D, 0x60, 0x89, 0x44, 0x63, 0xA1, 0x42,\n0x90, 0x0D, 0x1F, 0x7A, 0xB0, 0x1A, 0x10, 0xDB, 0x77, 0xD4, 0x04, 0x61, 0xC7, 0xF1, 0x2F, 0x31,\n0xCE, 0x3F, 0xC7, 0x03, 0xAE, 0x6C, 0x01, 0x60, 0xA9, 0xF4, 0xC0, 0x72, 0x39, 0xEE, 0xFF, 0x90,\n0xEF, 0xFF, 0x20, 0xE0, 0x95, 0xC3, 0x3F, 0x97, 0x80, 0x85, 0xFD, 0x83, 0x80, 0x0D, 0xFE, 0x55,\n0x57, 0xBB, 0xFC, 0x43, 0x11, 0xFF, 0xC7, 0x28, 0x18, 0xEB, 0x47, 0x67, 0x39, 0xA0, 0x41, 0xFF,\n0x37, 0xC0, 0xBF, 0x62, 0x41, 0x34, 0x3D, 0xE1, 0x5F, 0xAD, 0x91, 0x05, 0x80, 0xFD, 0x2D, 0xE0,\n0xB0, 0x8E, 0x0A, 0x00, 0xC2, 0xBF, 0x18, 0x01, 0xE3, 0x1A, 0xDA, 0x6F, 0xDC, 0x02, 0xE0, 0xFF,\n0xB2, 0x80, 0xFF, 0xD3, 0x04, 0x82, 0xBD, 0xAE, 0xD3, 0x80, 0xC8, 0x47, 0x20, 0xDC, 0x53, 0x12,\n0x4A, 0x9C, 0x3A, 0xFE, 0x8F, 0x28, 0xB9, 0xA7, 0x8D, 0x56, 0x3A, 0xF2, 0x4D, 0x5A, 0x4B, 0x01,\n0x81, 0x14, 0xA9, 0x14, 0x82, 0x0D, 0xF5, 0x07, 0x60, 0x7B, 0x03, 0x48, 0xA5, 0x39, 0x13, 0x4B,\n0x72, 0xB0, 0x01, 0x04, 0xE1, 0x01, 0x4B, 0xBB, 0x82, 0x01, 0xAC, 0xE5, 0x19, 0x40, 0x00, 0x78,\n0xE2, 0xF0, 0xCF, 0x25, 0x20, 0x9E, 0x0E, 0x35, 0x08, 0xF8, 0x3A, 0x5D, 0x68, 0xE4, 0x43, 0x2E,\n0xFF, 0x90, 0x07, 0x40, 0xB4, 0xA9, 0xD8, 0xC7, 0x04, 0xA0, 0xE3, 0x01, 0x45, 0xF0, 0xAF, 0x10,\n0x6F, 0x13, 0xF6, 0x0F, 0xFE, 0x15, 0x72, 0xFC, 0x5F, 0x57, 0x0F, 0xE8, 0x3A, 0xC0, 0xA4, 0x09,\n0xF8, 0xC3, 0xFE, 0x4D, 0xC4, 0x1F, 0xE1, 0x0F, 0x80, 0x29, 0x71, 0x75, 0xE0, 0x5F, 0x7F, 0x04,\n0xC6, 0xF9, 0xA7, 0xC8, 0x23, 0x4E, 0x6F, 0x15, 0x9E, 0x01, 0x54, 0x2C, 0x16, 0x43, 0x60, 0xA9,\n0x32, 0xF6, 0x98, 0x04, 0x34, 0x02, 0x42, 0x3C, 0x9C, 0x60, 0x18, 0x80, 0x13, 0xF9, 0x57, 0x47,\n0x63, 0x03, 0x08, 0x42, 0xB6, 0x29, 0x0E, 0x12, 0x92, 0x00, 0xA9, 0x08, 0x98, 0xC2, 0x44, 0x02,\n0x18, 0x21, 0x2F, 0x01, 0x82, 0x55, 0xF2, 0xF9, 0xE7, 0x03, 0xD0, 0x98, 0x86, 0xAD, 0xF3, 0x13,\n0x20, 0x5C, 0xED, 0xF2, 0x0F, 0x79, 0xFC, 0x43, 0x86, 0x3D, 0xA9, 0xAC, 0x59, 0x0E, 0xAB, 0x4E,\n0x2A, 0x91, 0x00, 0x69, 0x78, 0xC0, 0x15, 0x35, 0xFC, 0x2B, 0xE5, 0xF8, 0xBF, 0x7E, 0x1E, 0x70,\n0x58, 0x6C, 0x85, 0x63, 0xFC, 0xFB, 0x5E, 0x14, 0x80, 0xFF, 0x9B, 0x7F, 0xEF, 0x86, 0x46, 0xC0,\n0x6F, 0x78, 0x4B, 0x08, 0x23, 0xE0, 0x5E, 0xF3, 0x80, 0x6D, 0x03, 0xD8, 0x18, 0x00, 0xE7, 0x24,\n0xB0, 0xC5, 0xAB, 0x74, 0x7C, 0xE1, 0x18, 0x40, 0x22, 0x37, 0x24, 0x41, 0x52, 0x11, 0xD4, 0x19,\n0xF3, 0x4A, 0x04, 0x02, 0x3E, 0x6C, 0x60, 0x8B, 0x80, 0xDD, 0xFC, 0x1F, 0x11, 0x19, 0x00, 0x43,\n0x40, 0x54, 0x8F, 0x7F, 0xAB, 0xC5, 0x30, 0xA5, 0x55, 0x69, 0xC9, 0xF5, 0x7F, 0xE8, 0xCA, 0xE1,\n0x1F, 0x6A, 0x1A, 0x40, 0x6A, 0xED, 0xA5, 0x68, 0xF0, 0x0F, 0xEE, 0x71, 0xB9, 0x0F, 0x40, 0xD4,\n0x5A, 0x00, 0x58, 0x6B, 0xB3, 0x84, 0x7E, 0x5A, 0x09, 0xFF, 0x5C, 0x0B, 0xC8, 0x06, 0x38, 0x54,\n0xA5, 0x82, 0xED, 0x90, 0x06, 0xFE, 0xF9, 0xF3, 0x80, 0xBB, 0x8D, 0xE8, 0x09, 0x40, 0x04, 0x00,\n0x95, 0x4A, 0x71, 0x4D, 0xCD, 0x7F, 0x04, 0x4D, 0xE0, 0x9B, 0x05, 0xA0, 0x3F, 0x01, 0x48, 0xF9,\n0xEF, 0x0C, 0x44, 0x2E, 0x02, 0x33, 0xF7, 0xA4, 0x7F, 0xCF, 0x09, 0x46, 0x33, 0xC0, 0xF2, 0xB8,\n0xF9, 0x3F, 0xB3, 0x81, 0xAC, 0x7E, 0x56, 0x2B, 0x08, 0x0D, 0xD5, 0x02, 0x1A, 0x02, 0x1D, 0xED,\n0x7E, 0xDB, 0x29, 0xFD, 0xD1, 0x1E, 0x05, 0xA7, 0x2F, 0xC3, 0x62, 0xAF, 0x4D, 0x40, 0xBE, 0x53,\n0x23, 0xFC, 0x63, 0x4B, 0x08, 0x5A, 0xB6, 0xE5, 0xF8, 0x3F, 0x94, 0x6F, 0x8C, 0x80, 0xAE, 0xDA,\n0x1A, 0xF3, 0x7F, 0xF4, 0xB4, 0x69, 0xF0, 0x8F, 0x2B, 0x39, 0xF3, 0xF9, 0x87, 0x06, 0xF9, 0x27,\n0x15, 0x47, 0xD6, 0x39, 0x62, 0xFE, 0xAF, 0x4D, 0xC0, 0x7A, 0x01, 0x60, 0x9B, 0x80, 0xA8, 0xE6,\n0x5F, 0x7B, 0x31, 0x8C, 0x03, 0xC0, 0x98, 0x7C, 0xFC, 0x01, 0xC0, 0xC2, 0xFF, 0xF5, 0x90, 0xCF,\n0x3F, 0xC2, 0xE1, 0xDF, 0x1B, 0xCE, 0x05, 0xC3, 0xBB, 0xAE, 0xA3, 0xE0, 0x09, 0x04, 0x04, 0x79,\n0x36, 0xF6, 0x3D, 0xCD, 0xFA, 0xC2, 0xC1, 0x1F, 0x51, 0x0F, 0x82, 0x75, 0xF0, 0xCB, 0xDC, 0xDF,\n0x3A, 0x17, 0x11, 0xF3, 0x7E, 0xF8, 0xBF, 0x90, 0x05, 0x9C, 0x0E, 0x40, 0x1F, 0x81, 0xF0, 0x0F,\n0xA1, 0x15, 0xE6, 0x8F, 0x04, 0xB0, 0xEF, 0x01, 0x8D, 0x7F, 0x5F, 0x96, 0xC5, 0xE4, 0xF3, 0x0F,\n0x02, 0x3A, 0x00, 0x44, 0xE5, 0xFA, 0x97, 0x3B, 0x48, 0xBB, 0x51, 0x53, 0x77, 0x63, 0xE7, 0x35,\n0x01, 0x41, 0x5F, 0xBA, 0x4C, 0x4E, 0x6E, 0xF8, 0xA7, 0x7D, 0xFE, 0x21, 0x6F, 0xFC, 0x8B, 0xCE,\n0xD5, 0x03, 0xDA, 0xB1, 0x1C, 0x55, 0xB5, 0x00, 0xD0, 0x25, 0xE0, 0x4A, 0x0A, 0xFC, 0xF3, 0x09,\n0xB8, 0x3B, 0x12, 0xDB, 0x01, 0xE0, 0xDB, 0xE0, 0x1F, 0xD1, 0x97, 0x7F, 0x10, 0x30, 0x0C, 0x41,\n0xD7, 0xFE, 0x51, 0xE2, 0x8A, 0xF3, 0xAF, 0x36, 0x80, 0xF9, 0xC8, 0x63, 0x5F, 0x69, 0xE4, 0x48,\n0x4F, 0x46, 0xF8, 0x07, 0xF4, 0x18, 0x07, 0x93, 0xFA, 0x55, 0x04, 0xA6, 0xA0, 0x28, 0x01, 0xC9,\n0x06, 0x3B, 0xEA, 0xC7, 0x3F, 0xA2, 0xB9, 0x00, 0x1A, 0xD5, 0x5B, 0x42, 0x56, 0x2D, 0xFE, 0xB1,\n0x1C, 0xD0, 0xF1, 0x7F, 0x40, 0xD0, 0xE3, 0x1F, 0x99, 0x10, 0x97, 0x7F, 0xA8, 0xF4, 0x7F, 0x68,\n0xC0, 0x0A, 0x36, 0x37, 0x80, 0xD4, 0x72, 0xF9, 0x87, 0x5C, 0xFE, 0xE1, 0x02, 0xCD, 0xFC, 0x89,\n0xCA, 0x97, 0x87, 0x1A, 0x00, 0x06, 0xF8, 0xC7, 0xA6, 0x38, 0x16, 0x00, 0x46, 0x09, 0xE8, 0x00,\n0x30, 0x2E, 0x0F, 0x7F, 0x00, 0xF0, 0xED, 0xF2, 0xAF, 0x30, 0x81, 0x8F, 0x9C, 0xB2, 0xE5, 0x2D,\n0x21, 0x1D, 0xF8, 0x57, 0x23, 0xD0, 0x57, 0x79, 0x03, 0x18, 0xC1, 0x20, 0x63, 0x61, 0x6B, 0xF4,\n0x89, 0x20, 0xFF, 0xC8, 0xFD, 0xE2, 0xFF, 0xEE, 0x22, 0x50, 0x3B, 0x9C, 0x32, 0x1D, 0xEC, 0x6B,\n0xB7, 0x3F, 0x00, 0xFF, 0xFD, 0xF8, 0x93, 0x00, 0xF6, 0x09, 0x08, 0xFF, 0x7C, 0x02, 0x2E, 0x47,\n0x05, 0x01, 0x53, 0x7B, 0xE2, 0xC8, 0xE5, 0x1F, 0xAA, 0xE6, 0xFF, 0xB2, 0xF9, 0x43, 0xF9, 0xB4,\n0x20, 0x60, 0x7E, 0x84, 0x67, 0xF3, 0x71, 0x63, 0x86, 0xF1, 0x25, 0xFC, 0x73, 0xD4, 0xE4, 0xDF,\n0x66, 0x28, 0x15, 0x6C, 0x69, 0x60, 0xE0, 0x37, 0xCC, 0xC0, 0x03, 0x77, 0xFE, 0x8F, 0xE5, 0x80,\n0x86, 0x3F, 0xF8, 0xE7, 0x13, 0x70, 0xD7, 0x89, 0xCE, 0x00, 0xC4, 0x01, 0x6E, 0x9D, 0x7F, 0xBE,\n0x07, 0x7C, 0x4B, 0x00, 0x74, 0xF9, 0x47, 0xD9, 0x32, 0x00, 0xF3, 0x48, 0x57, 0xFD, 0x9E, 0xA2,\n0x50, 0x53, 0x21, 0xB7, 0x8D, 0x3E, 0x11, 0xE6, 0x9F, 0x0E, 0x82, 0xA5, 0x43, 0xFE, 0x23, 0xC3,\n0x8E, 0xB1, 0xB0, 0xD4, 0x2C, 0x86, 0x09, 0xEA, 0xDB, 0x7E, 0x13, 0x80, 0x84, 0xC7, 0x3F, 0xB4,\n0xA8, 0xC6, 0xBF, 0x3E, 0x01, 0x71, 0x34, 0x2E, 0x01, 0x41, 0x83, 0xEB, 0x01, 0xAF, 0x5C, 0xD5,\n0x1B, 0x40, 0x00, 0x5F, 0x1E, 0x07, 0x9B, 0xE0, 0x1F, 0xD2, 0x67, 0xEB, 0xBC, 0x31, 0xFC, 0x73,\n0x55, 0xF1, 0x6F, 0xA3, 0x87, 0x75, 0x37, 0xD0, 0x30, 0x71, 0x8F, 0x1D, 0x70, 0x8E, 0xCC, 0xFF,\n0xC9, 0x1D, 0x50, 0x3D, 0x02, 0x36, 0xF8, 0x37, 0x42, 0xC0, 0x0E, 0x00, 0x44, 0x51, 0x00, 0xEA,\n0xFA, 0x3F, 0x00, 0xF8, 0x16, 0x08, 0x68, 0x08, 0xEC, 0x46, 0xC0, 0x43, 0x39, 0xB6, 0x43, 0xC0,\n0xFE, 0xFC, 0x03, 0x81, 0xAF, 0xB2, 0xE9, 0xBB, 0xE5, 0xA0, 0x0C, 0x7B, 0x85, 0x7F, 0xDA, 0x08,\n0x0F, 0xF1, 0x80, 0xFE, 0x0D, 0xF0, 0x53, 0x79, 0xAE, 0x26, 0xD0, 0xE6, 0xFC, 0x0C, 0x83, 0x24,\n0x43, 0xF4, 0x71, 0x32, 0x21, 0xD2, 0xF8, 0xDA, 0xED, 0x0E, 0x40, 0x72, 0xC1, 0x7B, 0xBE, 0x16,\n0x11, 0xFF, 0xC7, 0x96, 0x90, 0xA4, 0x7B, 0x5E, 0x66, 0x23, 0x35, 0xE7, 0x05, 0x01, 0x4F, 0x7C,\n0xFD, 0x09, 0xFF, 0x5C, 0x95, 0xFE, 0x0F, 0x47, 0x67, 0xE2, 0xE4, 0x35, 0x0B, 0xA0, 0x2B, 0x0B,\n0x58, 0x08, 0x0F, 0x78, 0x85, 0x3C, 0x02, 0x82, 0xBD, 0xB1, 0x79, 0x40, 0x67, 0x02, 0x90, 0x97,\n0x2B, 0xF3, 0x4F, 0x0D, 0xE0, 0x83, 0x66, 0x11, 0xAD, 0x56, 0x55, 0x02, 0xC4, 0x4B, 0x05, 0xEF,\n0xF6, 0xB7, 0x80, 0x82, 0x3F, 0xD7, 0x01, 0xBE, 0x0D, 0xFC, 0x11, 0x18, 0x40, 0xAF, 0x6C, 0x75,\n0x4B, 0x48, 0x52, 0x47, 0x07, 0x38, 0x1D, 0x80, 0xA7, 0x3A, 0xD2, 0xBD, 0xAD, 0xF3, 0x60, 0x98,\n0x61, 0xF0, 0xA9, 0xFA, 0xC2, 0x53, 0xE3, 0x9F, 0x1B, 0x49, 0x8A, 0x3F, 0x0C, 0x20, 0xE9, 0x5F,\n0x1B, 0x06, 0x3F, 0xD7, 0xCA, 0x08, 0x38, 0xC5, 0x03, 0x76, 0xE1, 0x1F, 0x51, 0xAD, 0x7F, 0xF1,\n0x3C, 0x20, 0xA0, 0xF3, 0x12, 0x21, 0x63, 0x5F, 0x67, 0xC4, 0x00, 0xD8, 0x15, 0xFC, 0xF3, 0x64,\n0xFC, 0x43, 0x6A, 0xFB, 0xB4, 0x62, 0x74, 0xAB, 0xCD, 0x6B, 0xE3, 0x5F, 0x61, 0xF9, 0xB4, 0xBD,\n0xC1, 0x31, 0xE2, 0x01, 0xE1, 0x9F, 0x4F, 0xC0, 0x3F, 0xB3, 0xCB, 0x73, 0x08, 0x58, 0x8E, 0x7F,\n0xED, 0xD0, 0x9A, 0x46, 0x15, 0xF2, 0x7F, 0xCA, 0x40, 0x16, 0x40, 0xBB, 0x62, 0x01, 0x60, 0x77,\n0x0B, 0x88, 0x9A, 0x73, 0x80, 0x6F, 0x09, 0x80, 0x04, 0x13, 0x80, 0x4E, 0xD9, 0xE2, 0x96, 0x10,\n0xF8, 0xD7, 0x31, 0x0F, 0x82, 0x5C, 0x02, 0x42, 0xBF, 0x1C, 0x7A, 0x2A, 0xC1, 0x83, 0x96, 0x09,\n0x39, 0x0A, 0x84, 0x56, 0x8A, 0x3D, 0x28, 0x68, 0x8B, 0x60, 0xD6, 0x20, 0x51, 0x0E, 0x05, 0x61,\n0x50, 0xBB, 0x5B, 0x00, 0x20, 0x1B, 0x40, 0x7C, 0x71, 0x07, 0x98, 0x00, 0x01, 0x01, 0xA0, 0x83,\n0x41, 0x36, 0xC0, 0x39, 0xDA, 0xC0, 0x3F, 0x5F, 0xE5, 0xFC, 0x1F, 0x42, 0x37, 0x19, 0x73, 0x65,\n0x02, 0xD8, 0x1E, 0x95, 0xB6, 0x16, 0xFC, 0x73, 0xA5, 0x06, 0x10, 0x81, 0xC2, 0xDC, 0x82, 0x45,\n0x16, 0xC0, 0x20, 0x18, 0x58, 0xEA, 0x40, 0xFC, 0x1F, 0x98, 0x53, 0xC7, 0x57, 0x1D, 0x2A, 0xEE,\n0x80, 0xE5, 0x0A, 0xFF, 0xE7, 0x45, 0x77, 0x00, 0xB2, 0x01, 0x64, 0x8A, 0x3E, 0xEC, 0x80, 0x3F,\n0xC2, 0xF1, 0x7F, 0x5B, 0xDF, 0x17, 0x0C, 0xE0, 0xFA, 0x4E, 0x03, 0xC6, 0x09, 0x08, 0xE8, 0xD4,\n0xF0, 0xA5, 0x00, 0x85, 0x72, 0x62, 0x7D, 0xF8, 0xE7, 0x13, 0x50, 0xD1, 0x26, 0x47, 0x06, 0x5F,\n0x2E, 0x59, 0xEB, 0x6A, 0x41, 0x74, 0x10, 0x81, 0xFD, 0xF8, 0x47, 0xC0, 0x3F, 0x4F, 0x0B, 0x76,\n0x5F, 0xB9, 0x04, 0x2C, 0x2D, 0xCD, 0xC6, 0x4E, 0xA4, 0x57, 0x0A, 0xFF, 0xE7, 0x0B, 0xFE, 0x79,\n0xCA, 0xFE, 0x0F, 0x2F, 0xC7, 0x74, 0xDE, 0x8D, 0x36, 0xCC, 0x09, 0xB2, 0x00, 0x30, 0x17, 0x2E,\n0xC6, 0x32, 0xDA, 0xF9, 0x55, 0x58, 0x5E, 0x02, 0x98, 0xAE, 0x37, 0xFE, 0x05, 0x85, 0x6C, 0x00,\n0x81, 0x75, 0x76, 0x4A, 0xAB, 0xCD, 0x0C, 0xFE, 0xB9, 0xEA, 0x0A, 0x40, 0x10, 0x88, 0xDA, 0x00,\n0x94, 0x41, 0xE8, 0x74, 0xEA, 0x75, 0x04, 0xE0, 0x2D, 0x01, 0x63, 0x65, 0x5B, 0x04, 0x4C, 0xEA,\n0x4F, 0xC0, 0xB0, 0x64, 0x00, 0x6C, 0xE0, 0xB3, 0xBB, 0x61, 0xD9, 0x74, 0x60, 0x3E, 0x65, 0x39,\n0xE0, 0x51, 0x30, 0x74, 0x01, 0x34, 0xC7, 0x1A, 0x07, 0x68, 0x1E, 0x90, 0x9B, 0x23, 0x6C, 0x07,\n0x80, 0xEF, 0x87, 0x63, 0xBE, 0x17, 0x16, 0xFC, 0x73, 0x09, 0xE8, 0x7E, 0x9B, 0x51, 0x98, 0x7F,\n0xE7, 0xCF, 0xE2, 0x00, 0x02, 0x69, 0x2A, 0xA8, 0xC6, 0x39, 0x8B, 0x61, 0xAC, 0x8F, 0xB8, 0x82,\n0xCE, 0x44, 0x00, 0x96, 0x9C, 0xA3, 0xA9, 0xC5, 0x8B, 0x92, 0xFF, 0x6F, 0x81, 0x6C, 0xEA, 0xD4,\n0x64, 0xFE, 0x0F, 0xF2, 0x01, 0xBD, 0xB2, 0x9D, 0xED, 0x85, 0xC5, 0xF0, 0xB7, 0x23, 0x02, 0xBF,\n0x8D, 0x00, 0x30, 0xCE, 0xBF, 0xDE, 0xF8, 0x23, 0xB6, 0x02, 0xC0, 0xC3, 0x49, 0x00, 0x8C, 0x96,\n0xAE, 0x00, 0x44, 0x8A, 0x3B, 0xAD, 0xF5, 0x2E, 0xA8, 0xD9, 0xF8, 0x49, 0x62, 0xA4, 0xDA, 0x12,\n0x77, 0x14, 0x8F, 0xA3, 0x35, 0x77, 0x3F, 0xA0, 0xA4, 0x73, 0xF2, 0xC0, 0xF9, 0xE9, 0x2D, 0x11,\n0xB0, 0x3F, 0xFF, 0x16, 0x2E, 0x00, 0xD1, 0x41, 0x63, 0x48, 0x57, 0xF7, 0xCE, 0x37, 0x5B, 0x71,\n0x80, 0x83, 0x39, 0x0F, 0x86, 0xC5, 0xB9, 0x87, 0x03, 0x94, 0x92, 0x9F, 0xAD, 0xC1, 0xC9, 0x2C,\n0xE0, 0x55, 0x50, 0xD7, 0xD9, 0x01, 0x82, 0x3D, 0xCE, 0x68, 0x47, 0x1C, 0xE0, 0x66, 0x28, 0x7D,\n0x7E, 0x90, 0xC0, 0x06, 0xF7, 0x60, 0xDF, 0x80, 0x11, 0xDC, 0x59, 0xC4, 0x01, 0x18, 0x26, 0x60,\n0x37, 0x03, 0xC8, 0x10, 0x38, 0x8C, 0xB4, 0x69, 0x00, 0x8C, 0x1B, 0xC0, 0x30, 0x01, 0xB7, 0x39,\n0x09, 0x18, 0x2A, 0x5B, 0x71, 0x80, 0x66, 0xF8, 0x4E, 0x99, 0xF2, 0x53, 0x2F, 0xC8, 0x63, 0x52,\n0xE7, 0x47, 0x63, 0x3F, 0x82, 0x6E, 0x57, 0x41, 0xBD, 0xD2, 0x04, 0xAE, 0xF1, 0x85, 0xAA, 0x38,\n0xFE, 0xB6, 0x41, 0xC0, 0xC5, 0x5E, 0x14, 0x81, 0x2B, 0xDB, 0x04, 0xE7, 0x69, 0x96, 0xF8, 0x27,\n0x04, 0x84, 0x73, 0x2D, 0x29, 0xFF, 0xB6, 0x30, 0x07, 0x58, 0x26, 0x81, 0x55, 0x37, 0x74, 0xC1,\n0x9F, 0xF0, 0x8F, 0x39, 0xC0, 0x1B, 0x1E, 0xE7, 0x9F, 0xE0, 0x21, 0x92, 0x20, 0x01, 0x55, 0x53,\n0x80, 0x95, 0x36, 0x56, 0x2D, 0x21, 0xE0, 0x80, 0x43, 0xE6, 0x41, 0xE1, 0x9F, 0x11, 0x10, 0x3D,\n0xD0, 0x8A, 0x0E, 0x79, 0xE0, 0xE0, 0x18, 0x38, 0x7D, 0x00, 0xC2, 0x04, 0xEC, 0x0F, 0xC0, 0xB8,\n0xA3, 0x9B, 0xC4, 0xBF, 0x30, 0x01, 0x45, 0xDD, 0x08, 0x88, 0xFF, 0x9B, 0xB6, 0x1D, 0x44, 0xA2,\n0x7F, 0x1A, 0x38, 0xAC, 0x4C, 0x3C, 0x68, 0x77, 0x2A, 0x2D, 0x4E, 0x90, 0x29, 0xC0, 0xD3, 0x89,\n0x59, 0x60, 0x73, 0x80, 0xA5, 0x05, 0x34, 0xFC, 0x91, 0x0B, 0xDE, 0x4A, 0x16, 0x24, 0xCC, 0xBF,\n0x20, 0x01, 0xE5, 0x2B, 0x15, 0xCB, 0x02, 0xCB, 0x0F, 0x05, 0x8B, 0x07, 0xFC, 0x72, 0xEC, 0x6B,\n0x0D, 0xFF, 0xD2, 0x11, 0xCF, 0x02, 0x5F, 0x4F, 0x5B, 0x06, 0x73, 0xA3, 0xE0, 0xC2, 0xC8, 0x55,\n0x10, 0x2C, 0xB7, 0xC1, 0xD1, 0xC8, 0x41, 0x42, 0x64, 0x6A, 0x16, 0xF8, 0x7A, 0xF4, 0x36, 0x08,\n0x9B, 0xFA, 0xA6, 0x30, 0xBC, 0x44, 0x72, 0x20, 0x3D, 0xB7, 0x4A, 0x5E, 0x54, 0x3C, 0xA0, 0x1E,\n0xA5, 0xF9, 0x43, 0xF2, 0x56, 0x05, 0x3D, 0xE0, 0x5C, 0x62, 0xDE, 0x9F, 0x7F, 0xBB, 0xB1, 0x21,\n0xF0, 0x16, 0x00, 0xA8, 0x58, 0x8B, 0x1A, 0x40, 0x55, 0xEF, 0xF1, 0xAF, 0x94, 0x29, 0xEB, 0x60,\n0xB6, 0xB2, 0x10, 0x3A, 0x6E, 0x00, 0x15, 0x7E, 0xB6, 0xE6, 0x59, 0x42, 0x7D, 0xA0, 0x75, 0xCC,\n0x00, 0xC6, 0xD7, 0xC1, 0xB0, 0x0E, 0x9A, 0xD1, 0xAE, 0x1E, 0xAC, 0x8C, 0xD6, 0x9A, 0x47, 0x63,\n0xFC, 0xD3, 0xE8, 0x0A, 0xC0, 0xF9, 0x7C, 0x31, 0x0F, 0x12, 0x70, 0x21, 0xBB, 0xE0, 0x42, 0x04,\n0x14, 0xFE, 0x29, 0x01, 0x2B, 0xF6, 0xF1, 0x75, 0x86, 0x7F, 0x61, 0x02, 0x4E, 0x5D, 0x07, 0xA8,\n0xD3, 0x80, 0x08, 0xAA, 0x49, 0x63, 0x30, 0x7C, 0xCD, 0x46, 0x10, 0x9E, 0xAC, 0xCC, 0x20, 0x06,\n0x70, 0xF2, 0x3A, 0x40, 0x78, 0xB7, 0xA1, 0x2E, 0xC7, 0xBF, 0x8A, 0xC0, 0xDA, 0xEF, 0x95, 0x34,\n0x34, 0xFE, 0x29, 0x01, 0x1B, 0x03, 0x5F, 0xB0, 0xB8, 0x12, 0xC5, 0x08, 0x38, 0x87, 0x80, 0xBD,\n0xD7, 0x01, 0xFA, 0x00, 0x8C, 0x82, 0x8D, 0xCB, 0xF8, 0x61, 0xF4, 0xD1, 0xAB, 0xE3, 0x08, 0x54,\n0x75, 0xE6, 0x9F, 0x95, 0xB0, 0xDE, 0xD6, 0x4E, 0x10, 0x04, 0xF3, 0xCA, 0xBB, 0xA1, 0x6A, 0xD7,\n0xF8, 0xA7, 0x55, 0x88, 0x7F, 0xFC, 0x14, 0x48, 0x16, 0x3B, 0x40, 0xA4, 0x0F, 0x03, 0xF1, 0x80,\n0x41, 0xFE, 0xF5, 0x5D, 0x08, 0x33, 0xDF, 0xB3, 0x70, 0x25, 0xFC, 0x13, 0xCD, 0x02, 0xE3, 0xDF,\n0x24, 0x08, 0xB8, 0x19, 0x1F, 0xFF, 0x4A, 0x59, 0x6E, 0x36, 0x21, 0xFE, 0x05, 0x3D, 0x20, 0x3B,\n0xE1, 0x58, 0xC7, 0x57, 0xCF, 0x08, 0xC2, 0x3F, 0x15, 0x3F, 0x1C, 0x4C, 0x5B, 0x2E, 0xA4, 0x36,\n0x05, 0xFC, 0x9F, 0x69, 0x24, 0x01, 0xCC, 0x3A, 0x68, 0x03, 0xE0, 0x97, 0xDE, 0x46, 0x10, 0x7B,\n0x61, 0x67, 0x65, 0x02, 0x98, 0x9A, 0x9D, 0x20, 0x61, 0x02, 0xCE, 0x2D, 0xFA, 0x02, 0x10, 0x02,\n0x76, 0x71, 0x80, 0x09, 0x66, 0x3E, 0xFD, 0xB8, 0x58, 0x15, 0x37, 0x80, 0x7D, 0xF7, 0xC2, 0x81,\n0xBF, 0x9E, 0xF3, 0x80, 0xDB, 0xE2, 0xDF, 0xA9, 0x85, 0x19, 0xBD, 0x2C, 0x26, 0x05, 0x35, 0x0B,\n0x3C, 0x69, 0x2B, 0x1C, 0xB7, 0x04, 0x64, 0x03, 0x9C, 0x56, 0xF5, 0x96, 0x60, 0x69, 0x55, 0x21,\n0xFE, 0x69, 0x74, 0xB4, 0x80, 0xBB, 0x7B, 0xF3, 0x45, 0xFE, 0xFF, 0x7F, 0x64, 0x02, 0x30, 0x49,\n0xEA, 0x99, 0x3F, 0xFE, 0x35, 0x02, 0x2E, 0x51, 0x99, 0xFF, 0xD0, 0x0A, 0x00, 0x6E, 0x96, 0xFD,\n0xF6, 0x02, 0x5F, 0x17, 0x7B, 0x81, 0x4D, 0x60, 0x0C, 0x73, 0x97, 0x8E, 0x81, 0x9B, 0x41, 0xDF,\n0x94, 0xF9, 0x10, 0x53, 0xE2, 0x5E, 0x7C, 0x2F, 0x30, 0x1A, 0xF6, 0x7D, 0x30, 0x30, 0xFB, 0x3F,\n0x29, 0xCE, 0x20, 0x78, 0xF9, 0x80, 0x17, 0x96, 0x4C, 0x48, 0x35, 0x0D, 0x28, 0xCD, 0xCA, 0xB4,\n0xB3, 0x5A, 0xB8, 0xFC, 0x8B, 0x13, 0x70, 0x0B, 0x00, 0xCC, 0x24, 0x1A, 0x57, 0x7D, 0x4D, 0x22,\n0x60, 0x8A, 0x91, 0xEB, 0x63, 0x0C, 0x2C, 0xD4, 0x6F, 0xFE, 0xEF, 0x4E, 0x89, 0xAB, 0xBB, 0x01,\n0xF4, 0x11, 0xF8, 0x44, 0xF0, 0x67, 0xCA, 0x43, 0x60, 0xCD, 0xF8, 0xB2, 0x23, 0xD8, 0xB0, 0x08,\n0xFF, 0xE4, 0x9A, 0x90, 0xFF, 0xD3, 0xC8, 0xA8, 0xA3, 0xC2, 0x09, 0x32, 0x20, 0xCE, 0x47, 0x10,\n0x80, 0xD2, 0xFB, 0xBA, 0x0B, 0x02, 0x77, 0x53, 0x02, 0x78, 0x31, 0xB7, 0xCF, 0xFF, 0xC2, 0xE7,\n0x9F, 0x69, 0x16, 0xE0, 0x9F, 0x64, 0x41, 0x20, 0xE0, 0x97, 0x6D, 0x03, 0x98, 0x0B, 0x04, 0x74,\n0xF8, 0xE7, 0x7A, 0xC0, 0x6B, 0xF0, 0x97, 0x90, 0x65, 0xA8, 0xAB, 0x48, 0x68, 0xFC, 0x43, 0xCD,\n0xA5, 0x30, 0x66, 0x00, 0x91, 0x6B, 0x00, 0x51, 0x6B, 0x12, 0x10, 0xFF, 0x07, 0x00, 0x6B, 0x6D,\n0xE8, 0x7E, 0x7C, 0xF7, 0x85, 0x9D, 0x19, 0xFB, 0x5A, 0xF7, 0x42, 0x80, 0x80, 0x51, 0x00, 0x2E,\n0xE6, 0x5D, 0x00, 0x08, 0xFE, 0x34, 0x5C, 0x07, 0xA8, 0x11, 0xE5, 0x1F, 0x1E, 0xD0, 0x31, 0x80,\n0x61, 0xFE, 0xA1, 0x4E, 0xF8, 0x8B, 0x13, 0x10, 0x75, 0xBD, 0x1F, 0xE0, 0x94, 0xDB, 0x01, 0xB2,\n0x0F, 0x24, 0x8F, 0x82, 0xF1, 0x81, 0xB6, 0x3D, 0xF8, 0x34, 0xA7, 0x7F, 0x51, 0x3A, 0x3B, 0x1A,\n0x4F, 0x00, 0x73, 0x47, 0x68, 0x56, 0x3D, 0x43, 0x3F, 0x03, 0x9F, 0xFC, 0x56, 0xBA, 0x3D, 0x23,\n0x72, 0xF1, 0xD7, 0xDB, 0x03, 0xEE, 0x8A, 0xFD, 0x23, 0x1C, 0xFE, 0x01, 0x40, 0xC7, 0x03, 0xEA,\n0x97, 0x54, 0xA4, 0x9D, 0xA1, 0xAF, 0x34, 0x7D, 0xFD, 0xE6, 0x6B, 0x71, 0x08, 0xF8, 0x2C, 0x0E,\n0xC0, 0xD6, 0x0F, 0xA2, 0x97, 0x8B, 0x5B, 0xF8, 0x71, 0x4C, 0x54, 0x2E, 0x79, 0xD6, 0x03, 0x04,\n0x96, 0xF2, 0xFD, 0xDF, 0x9F, 0x7A, 0x40, 0xC0, 0x41, 0x2B, 0xB8, 0x81, 0x7F, 0xA9, 0xB4, 0xFC,\n0xB2, 0xEA, 0xA0, 0x78, 0x61, 0x6D, 0x1A, 0x90, 0xC2, 0x31, 0x5B, 0xE1, 0x00, 0x53, 0x38, 0x09,\n0xE0, 0xB0, 0x07, 0x44, 0x1D, 0x01, 0xF8, 0x6E, 0x8C, 0x80, 0x53, 0x54, 0x92, 0xAD, 0x0B, 0x01,\n0xA7, 0xE8, 0x10, 0xF8, 0x75, 0x9B, 0x07, 0xEC, 0x7F, 0x47, 0x68, 0x10, 0x48, 0xAF, 0x9C, 0x00,\n0x7C, 0xA5, 0xE9, 0x5F, 0x3B, 0x80, 0x9F, 0x56, 0xEE, 0xCD, 0xB0, 0x88, 0x62, 0x33, 0xB0, 0x1D,\n0x8C, 0x82, 0xB5, 0xCE, 0x24, 0xEC, 0x08, 0x40, 0x34, 0xBE, 0x00, 0x70, 0x1E, 0x24, 0xA0, 0x7E,\n0x93, 0x22, 0x04, 0xD4, 0xFC, 0x6F, 0xF6, 0x29, 0xE6, 0x01, 0xBF, 0x84, 0x7D, 0xB5, 0xFF, 0xA3,\n0x8C, 0xDC, 0x10, 0x66, 0x53, 0x30, 0x45, 0xE4, 0xF1, 0x0F, 0x41, 0xB3, 0xCA, 0xD9, 0xB5, 0x7F,\n0x11, 0x84, 0x8E, 0x9D, 0xDF, 0x97, 0xEB, 0xFF, 0x50, 0x45, 0xBD, 0x7B, 0x09, 0x60, 0xCA, 0xE0,\n0xCB, 0x04, 0xFF, 0x78, 0x61, 0x8D, 0x80, 0x95, 0xE0, 0x1F, 0x0C, 0x74, 0xFD, 0x1F, 0x1E, 0x70,\n0xDB, 0xF7, 0x43, 0xDD, 0x3E, 0x00, 0xA1, 0x9A, 0x0B, 0xC0, 0x5A, 0x5D, 0x16, 0x00, 0xBE, 0x45,\n0x00, 0xC2, 0x3F, 0x22, 0x6E, 0x00, 0xF3, 0x86, 0x60, 0x2C, 0x60, 0x1E, 0x12, 0xCB, 0x81, 0xBC,\n0x79, 0xC0, 0xEA, 0xA7, 0xD1, 0x33, 0xF1, 0x40, 0xA0, 0x3D, 0xC2, 0x4D, 0x11, 0x4C, 0x0E, 0xFE,\n0x3A, 0x7B, 0x40, 0xF3, 0x7F, 0x44, 0xF3, 0x5B, 0x02, 0xFD, 0x98, 0x07, 0x1C, 0x4B, 0x80, 0xE4,\n0xC1, 0x1A, 0x89, 0x10, 0x36, 0xF6, 0xD3, 0x3F, 0x90, 0xFC, 0x6F, 0x59, 0x32, 0x1E, 0xAA, 0xC3,\n0xC0, 0x07, 0x07, 0xAF, 0x7D, 0xFE, 0xB5, 0xE7, 0x01, 0x59, 0x00, 0xD8, 0x26, 0xE0, 0xBD, 0xBB,\n0x26, 0xD4, 0xBA, 0x1E, 0xA6, 0x1F, 0xFE, 0x8F, 0xB6, 0x40, 0x1F, 0xFD, 0xFC, 0x9B, 0x20, 0x95,\n0x07, 0x6C, 0xF0, 0x4F, 0x44, 0x5D, 0x2C, 0x86, 0xA1, 0x53, 0xF3, 0x2F, 0x85, 0xEB, 0xFF, 0x88,\n0x7E, 0xFE, 0x8F, 0x68, 0xEB, 0x08, 0x00, 0x36, 0x20, 0x17, 0xFE, 0xA9, 0x24, 0x2E, 0xAF, 0x14,\n0xC2, 0x9F, 0xDE, 0x1C, 0xB5, 0x03, 0xFF, 0x1C, 0x00, 0x3A, 0xEA, 0xC7, 0x3F, 0x22, 0x6E, 0x00,\n0x73, 0xBE, 0x83, 0x9D, 0xC0, 0xA7, 0xF8, 0xBF, 0xC2, 0x00, 0x4A, 0xD3, 0x1E, 0xFF, 0x1A, 0xFD,\n0x2C, 0xD8, 0x0D, 0x22, 0xDD, 0x6A, 0x05, 0x8C, 0x74, 0xF0, 0x80, 0x41, 0x00, 0x4E, 0x21, 0xA0,\n0xE7, 0xFF, 0x7C, 0x02, 0x2E, 0x8C, 0x7F, 0x68, 0x67, 0xD6, 0xE2, 0x1F, 0xDF, 0x52, 0x3B, 0x9C,\n0xF9, 0x3F, 0x4A, 0xD3, 0x03, 0x02, 0x3F, 0x24, 0xB0, 0x19, 0x9B, 0xFF, 0xAB, 0xEF, 0x8A, 0x0F,\n0xDC, 0xE0, 0x5F, 0x4D, 0xC0, 0x14, 0xF5, 0xC5, 0x08, 0xF9, 0x09, 0x90, 0x3F, 0xDD, 0x5F, 0x85,\n0xAB, 0x4A, 0x3D, 0x00, 0x86, 0x7F, 0xE5, 0x0B, 0xFB, 0x31, 0xB9, 0x60, 0xF0, 0xA7, 0x77, 0x83,\n0x46, 0x8E, 0x07, 0x9C, 0x13, 0x78, 0xC0, 0x37, 0xF8, 0x9B, 0x48, 0x47, 0x47, 0x69, 0x0E, 0x90,\n0x08, 0xFB, 0x3F, 0x12, 0x21, 0x6D, 0xFB, 0x87, 0xDA, 0xD9, 0xDF, 0xFA, 0xD2, 0x9E, 0xFC, 0xA3,\n0xC4, 0xF5, 0x86, 0x7E, 0x15, 0x13, 0xE4, 0xE1, 0x00, 0x55, 0x3A, 0xEF, 0x97, 0x9D, 0x20, 0xEB,\n0xA0, 0x5F, 0x20, 0xE4, 0xF8, 0x3F, 0xA5, 0x60, 0x2A, 0x24, 0x42, 0xB8, 0xFD, 0x81, 0x6D, 0x80,\n0x3B, 0xB2, 0x40, 0x01, 0xFC, 0x4D, 0xF7, 0x80, 0xCD, 0x05, 0xD0, 0x75, 0xB8, 0xFC, 0x43, 0x0D,\n0xFE, 0x31, 0x51, 0x6F, 0xBD, 0x16, 0x01, 0x31, 0x80, 0x94, 0x41, 0x02, 0xFE, 0x69, 0x38, 0x61,\n0x0C, 0x3C, 0xFD, 0x77, 0x81, 0xD1, 0x2F, 0xCC, 0xFF, 0x8D, 0x7B, 0x40, 0x06, 0xCE, 0x24, 0x80,\n0x3D, 0x0F, 0x78, 0x0D, 0xF8, 0x52, 0x6D, 0x4D, 0x76, 0xB2, 0x48, 0x4F, 0x96, 0x0D, 0x02, 0xD6,\n0xFA, 0x55, 0x17, 0x40, 0x97, 0x2F, 0x2C, 0x1E, 0x10, 0xA5, 0xFE, 0xAA, 0x92, 0x4C, 0xDF, 0xBA,\n0xFE, 0x8F, 0xE8, 0xE7, 0xFF, 0x88, 0x36, 0x00, 0x0B, 0x2E, 0x55, 0xE2, 0xD1, 0x10, 0x03, 0xDB,\n0x60, 0xAB, 0xA2, 0xA5, 0x08, 0xFE, 0xFA, 0xF3, 0x0F, 0x75, 0x9C, 0xFF, 0x23, 0x42, 0x0E, 0xD0,\n0x50, 0x58, 0xDC, 0x1A, 0x46, 0x1B, 0x13, 0x06, 0xB0, 0x45, 0x40, 0xBA, 0x25, 0x07, 0xCD, 0xFA,\n0xB1, 0x06, 0xBA, 0x64, 0x9F, 0xF9, 0xBF, 0x10, 0x00, 0x89, 0xB0, 0x5C, 0xFF, 0x47, 0xB4, 0x16,\n0x40, 0xD7, 0xDA, 0x19, 0x4C, 0x00, 0x97, 0xDF, 0x51, 0x16, 0x44, 0x63, 0x6C, 0xE0, 0xDF, 0x00,\n0x00, 0x97, 0xAE, 0xFF, 0x83, 0x2D, 0xD7, 0x0E, 0xFE, 0x10, 0x69, 0x5F, 0x9C, 0xDD, 0xDF, 0x2D,\n0xB1, 0x0E, 0x10, 0x10, 0x0E, 0xCB, 0x9F, 0xFF, 0x43, 0x03, 0xEB, 0xFF, 0x8A, 0x04, 0x48, 0x3B,\n0x13, 0xC2, 0x02, 0xE8, 0xEA, 0x85, 0x9D, 0x55, 0xFE, 0xAF, 0xE6, 0x5F, 0x7B, 0x39, 0xE0, 0x7C,\n0x38, 0xE6, 0xDD, 0xF8, 0x47, 0x34, 0xF0, 0xF7, 0xDC, 0x05, 0x20, 0x0F, 0xD7, 0x8B, 0x60, 0xEA,\n0x5C, 0x70, 0x8B, 0x6B, 0xAE, 0x01, 0xE4, 0xC2, 0xCE, 0xFE, 0x6F, 0x7A, 0x2A, 0xF8, 0x0D, 0x00,\n0x10, 0xE0, 0x59, 0x5B, 0xAD, 0x86, 0xD1, 0xDA, 0x6E, 0x0A, 0xD3, 0x52, 0xD3, 0xFF, 0x29, 0xFB,\n0xCA, 0x7E, 0xC6, 0x1B, 0xE3, 0x5E, 0x69, 0xE9, 0xD1, 0x38, 0xF8, 0xEB, 0x36, 0x0F, 0x98, 0x06,\n0x3B, 0x41, 0x02, 0x2E, 0x56, 0xC3, 0xFC, 0x33, 0x02, 0x56, 0xFE, 0x2F, 0x8F, 0xD0, 0xAC, 0xA7,\n0x55, 0x31, 0x0B, 0xD8, 0xE4, 0x9F, 0x32, 0xA1, 0xBA, 0x79, 0x1E, 0x6E, 0x4A, 0x3B, 0xC8, 0x05,\n0x20, 0xBA, 0x0F, 0x34, 0x16, 0x40, 0xD7, 0x02, 0x93, 0xF8, 0xBF, 0x28, 0x01, 0xF9, 0x33, 0x69,\n0xB4, 0x3E, 0x41, 0xE5, 0x06, 0x90, 0xBA, 0x0C, 0xFA, 0x3F, 0x7B, 0x25, 0x73, 0xCB, 0x3C, 0xE0,\n0xB8, 0xFF, 0x83, 0x80, 0x73, 0x8F, 0x7F, 0x10, 0xB0, 0xDB, 0xF8, 0x97, 0x18, 0x06, 0xA0, 0x39,\n0x40, 0xC2, 0xE5, 0x1F, 0xBF, 0x8C, 0x6E, 0x14, 0x44, 0x80, 0xCD, 0x25, 0x60, 0x5B, 0x5D, 0x13,\n0x20, 0x94, 0xB0, 0x7A, 0x0E, 0x80, 0x89, 0x88, 0x03, 0xB4, 0x78, 0x95, 0x6D, 0xE0, 0xE9, 0x2B,\n0xAD, 0x07, 0x0C, 0x20, 0x75, 0x69, 0xFF, 0x2A, 0xFF, 0x47, 0x14, 0xAB, 0x00, 0x8B, 0x83, 0x3A,\n0x37, 0x1D, 0x01, 0x88, 0xEA, 0x0D, 0x20, 0xED, 0xA8, 0x13, 0xC0, 0x0D, 0xCD, 0x86, 0x16, 0xC0,\n0x68, 0x48, 0xD1, 0xBE, 0xD4, 0x78, 0xC0, 0xC6, 0x04, 0x20, 0x45, 0xA9, 0x70, 0x0F, 0x14, 0x30,\n0x05, 0xAC, 0x90, 0x09, 0xF1, 0xF1, 0xC7, 0x34, 0x20, 0x6A, 0xF0, 0x8F, 0x05, 0xD1, 0x95, 0xFF,\n0x0B, 0x11, 0xF0, 0xBA, 0x41, 0x3F, 0x11, 0x5C, 0x67, 0x01, 0x60, 0x0C, 0x80, 0x60, 0xAF, 0x7E,\n0x61, 0x67, 0xF8, 0x3F, 0x12, 0x20, 0x21, 0x0F, 0x38, 0x77, 0x08, 0xD8, 0xC5, 0xFF, 0x11, 0x43,\n0xFC, 0xB3, 0x39, 0x40, 0x22, 0x00, 0x40, 0x1C, 0x20, 0xCF, 0x74, 0x30, 0x80, 0xE8, 0xED, 0xF0,\n0x0F, 0x0B, 0xB8, 0x1D, 0xFE, 0xF9, 0x0E, 0x10, 0xE5, 0x0D, 0xC1, 0xF6, 0x3B, 0x99, 0x0D, 0xD5,\n0x00, 0x34, 0xCF, 0x57, 0xFC, 0x34, 0x9C, 0x1D, 0xE4, 0x81, 0x45, 0x20, 0x50, 0xCA, 0xF8, 0x96,\n0x90, 0xDD, 0x0E, 0x04, 0xF4, 0x13, 0xC0, 0x84, 0xCB, 0x3F, 0x34, 0xAB, 0x17, 0xC0, 0x98, 0x0A,\n0xA3, 0x22, 0xB5, 0xC3, 0xBF, 0xE6, 0x62, 0x18, 0x18, 0x32, 0x20, 0x17, 0x80, 0xA8, 0xCC, 0x01,\n0xFF, 0x3D, 0xA6, 0xD7, 0xE9, 0x0A, 0xEC, 0x1F, 0x72, 0xA7, 0x01, 0x0B, 0xE0, 0xE5, 0xB6, 0x98,\n0x07, 0x44, 0xF8, 0xBF, 0xBA, 0xE0, 0x94, 0x55, 0xD5, 0xF8, 0x97, 0x46, 0x08, 0xE8, 0xF8, 0x3F,\n0x16, 0x44, 0xCF, 0x83, 0x06, 0x70, 0xB1, 0xB7, 0x55, 0x00, 0xE2, 0xFF, 0x18, 0x02, 0x13, 0x91,\n0xFC, 0x07, 0x36, 0xB0, 0xF6, 0x7F, 0x31, 0x06, 0x8E, 0xEA, 0x7F, 0x2C, 0x00, 0xEC, 0x62, 0x01,\n0x3B, 0x8E, 0x7F, 0x89, 0x96, 0xF5, 0x7B, 0x01, 0xF6, 0x30, 0x81, 0x77, 0x37, 0x03, 0xB7, 0x0C,\n0x60, 0xB5, 0x25, 0xA4, 0x98, 0xF5, 0xB3, 0x9A, 0x00, 0x7F, 0x52, 0xAF, 0x61, 0x9F, 0x35, 0xF4,\n0x1C, 0x00, 0x76, 0x48, 0x05, 0x8F, 0xD0, 0x4F, 0x22, 0xC2, 0x3F, 0x08, 0x08, 0xFF, 0x18, 0xFE,\n0x16, 0x46, 0xA5, 0xDE, 0x14, 0xD7, 0xFE, 0xF2, 0xB3, 0x29, 0x0E, 0xFE, 0x15, 0x58, 0x91, 0x2E,\n0xE7, 0xD7, 0x2E, 0xFF, 0x90, 0x9B, 0x00, 0x46, 0x5C, 0xE9, 0x12, 0x70, 0xC0, 0x00, 0xB6, 0x30,\n0x78, 0x82, 0xF0, 0x7F, 0x83, 0x65, 0x69, 0x82, 0x7F, 0xB8, 0x6B, 0xE6, 0x00, 0xF1, 0x80, 0x6C,\n0x00, 0x19, 0x23, 0xA0, 0xC7, 0x3F, 0x52, 0xC1, 0x1D, 0x36, 0x80, 0x38, 0x08, 0x3C, 0x52, 0x99,\n0x03, 0x24, 0xC2, 0x00, 0xAC, 0x66, 0x00, 0xC7, 0xB0, 0x16, 0xF1, 0x7F, 0xA8, 0xE7, 0x04, 0x20,\n0x25, 0xAE, 0xED, 0x03, 0xF0, 0x74, 0xC4, 0x02, 0x42, 0x40, 0x69, 0x3D, 0x1D, 0xB5, 0x17, 0xC0,\n0xD8, 0xB9, 0x79, 0x40, 0x16, 0x41, 0x93, 0xF4, 0x80, 0x7D, 0x05, 0x0F, 0x4B, 0xFC, 0xF5, 0xF1,\n0x80, 0xBE, 0xFF, 0x23, 0x7C, 0xFE, 0xB1, 0x1C, 0x10, 0xFE, 0x01, 0xBE, 0xCA, 0x01, 0x1E, 0xA4,\n0x2B, 0x1C, 0xFF, 0x47, 0x81, 0x80, 0xF8, 0x3F, 0x6D, 0x41, 0x09, 0xE7, 0x2E, 0xFF, 0x90, 0xC3,\n0xBF, 0xC6, 0x82, 0x68, 0x4F, 0xED, 0xF9, 0xBF, 0x54, 0x68, 0x44, 0x51, 0xFE, 0x31, 0x0A, 0x66,\n0x03, 0x48, 0xED, 0x00, 0x8D, 0x89, 0xBC, 0x05, 0xAB, 0x11, 0xED, 0xA4, 0x70, 0x13, 0xC0, 0x44,\n0x89, 0xBF, 0xFE, 0x00, 0xD4, 0xEF, 0x80, 0xE3, 0x00, 0x39, 0x6B, 0x88, 0x29, 0x40, 0xFC, 0x5F,\n0x84, 0x81, 0xA8, 0xCE, 0x81, 0x38, 0x00, 0xF4, 0xF8, 0xD7, 0xD7, 0x03, 0xF6, 0xC0, 0x1F, 0x51,\n0xF2, 0xEF, 0x45, 0xCB, 0x02, 0x6A, 0xD7, 0xD6, 0x02, 0x8E, 0x19, 0x40, 0x6D, 0xB8, 0x01, 0x02,\n0xBF, 0x86, 0xFE, 0x4D, 0xC3, 0x05, 0x8A, 0xD6, 0x55, 0xE2, 0x83, 0x09, 0x40, 0x6A, 0x1F, 0x80,\n0x44, 0x58, 0x6E, 0x02, 0x98, 0x70, 0xF9, 0x87, 0x66, 0x24, 0x40, 0x40, 0x1E, 0xDC, 0xCB, 0x5D,\n0x6D, 0x82, 0xFC, 0x13, 0x38, 0xC0, 0x3F, 0x04, 0x4C, 0x0A, 0xFD, 0x12, 0xE4, 0x5F, 0xBA, 0x00,\n0xFE, 0x85, 0x09, 0xF8, 0x8B, 0x2F, 0xFC, 0x1F, 0xF4, 0x43, 0xC5, 0x5F, 0xCE, 0xCF, 0xC0, 0x6D,\n0x9C, 0x52, 0x6F, 0x00, 0xA9, 0xE7, 0x00, 0xED, 0x64, 0xE6, 0xF0, 0x0F, 0x06, 0xBA, 0xFE, 0x0F,\n0x0F, 0xD8, 0x2F, 0x01, 0x42, 0x20, 0xFB, 0xAC, 0x8F, 0x02, 0x50, 0x4E, 0x5A, 0xA9, 0xE1, 0xFA,\n0x21, 0x4F, 0x11, 0x03, 0x08, 0x04, 0xA7, 0xF3, 0xAF, 0x17, 0x00, 0x9F, 0x80, 0xC0, 0x1E, 0xF8,\n0x23, 0x82, 0x16, 0x50, 0xBA, 0x0A, 0x43, 0xA5, 0xA0, 0xC9, 0xF3, 0x80, 0x4C, 0xFB, 0x15, 0xF0,\n0xE3, 0x4C, 0x7D, 0x20, 0x77, 0x80, 0xA1, 0x29, 0xBA, 0x2C, 0x88, 0x06, 0x7F, 0xBD, 0x3D, 0xA0,\n0x2E, 0x00, 0x74, 0xC3, 0xE7, 0x1F, 0x1E, 0x90, 0xF1, 0x2F, 0x0E, 0xB0, 0x64, 0x5F, 0x99, 0x08,\n0x09, 0x7C, 0xFD, 0x33, 0x01, 0x19, 0xEF, 0xC2, 0x15, 0x4E, 0x73, 0x0D, 0xFF, 0x5C, 0xC1, 0x3F,\n0x57, 0x4C, 0x00, 0xBA, 0xBA, 0xD6, 0x7F, 0xFF, 0x33, 0x74, 0x52, 0x25, 0xAD, 0x4D, 0x1B, 0xF3,\n0x7F, 0x51, 0x02, 0x42, 0xBA, 0x2A, 0x0B, 0xCC, 0x13, 0xB3, 0x18, 0xFF, 0x52, 0xE0, 0xFF, 0xDC,\n0xE8, 0xE7, 0xFF, 0x08, 0x13, 0x9F, 0x78, 0x00, 0x48, 0x44, 0x0C, 0x60, 0xCD, 0xBF, 0x29, 0x08,\n0xF4, 0xD5, 0xD1, 0xFF, 0x51, 0xA6, 0x7A, 0xC0, 0x5E, 0xFC, 0x23, 0x6C, 0xAD, 0xF3, 0x17, 0xFA,\n0x63, 0x1F, 0xB4, 0x74, 0xE5, 0xD0, 0xB3, 0x17, 0x92, 0x03, 0x0E, 0x49, 0xCD, 0xDD, 0x37, 0x45,\n0x79, 0x41, 0x5D, 0x96, 0xA3, 0xEF, 0x33, 0xE7, 0x92, 0xB4, 0x81, 0x7A, 0x74, 0x01, 0xE0, 0x6E,\n0x24, 0x76, 0xBF, 0x36, 0xB8, 0xF9, 0xF1, 0xFE, 0xAE, 0xFA, 0x3F, 0x3F, 0xE0, 0x9F, 0x4B, 0x40,\n0x16, 0x00, 0xD6, 0x0E, 0x10, 0xB3, 0x02, 0x01, 0x65, 0x96, 0x6F, 0x34, 0x24, 0x11, 0xB2, 0x19,\n0x30, 0x80, 0x9C, 0x16, 0x68, 0xB9, 0xE6, 0x06, 0x58, 0xAE, 0x62, 0xFC, 0x63, 0x31, 0x4C, 0x4C,\n0xA5, 0xFF, 0x2B, 0x47, 0xC0, 0xDA, 0x2D, 0x09, 0x28, 0x80, 0x73, 0x0B, 0x0B, 0x00, 0x4B, 0xFC,\n0x41, 0x41, 0x06, 0xC1, 0x4A, 0xC0, 0x15, 0xF2, 0x3C, 0xE0, 0x3C, 0x10, 0x8B, 0x8E, 0xFC, 0x23,\n0xE0, 0x1F, 0x0E, 0xB0, 0x0A, 0x95, 0xB5, 0xDE, 0x10, 0x58, 0x42, 0xAE, 0x8E, 0x07, 0x6A, 0x7B,\n0xC0, 0x74, 0xD5, 0xC4, 0x1B, 0x00, 0xF6, 0x46, 0xE0, 0x13, 0x89, 0x48, 0xF9, 0xEE, 0x16, 0x80,\n0xDF, 0x45, 0xE2, 0x3B, 0xE1, 0x9F, 0x80, 0x2E, 0xB7, 0xD6, 0xF0, 0x90, 0x14, 0x7B, 0x20, 0x88,\n0xBF, 0x57, 0xEA, 0xED, 0xBE, 0x27, 0xBE, 0xA9, 0x3B, 0x5A, 0x94, 0x80, 0x79, 0x07, 0x88, 0x1E,\n0x19, 0x73, 0x9C, 0x58, 0x25, 0xC7, 0xE7, 0x9F, 0xCB, 0x07, 0x2A, 0x24, 0x21, 0xE0, 0xFB, 0x52,\n0x8D, 0x15, 0xFD, 0x38, 0x33, 0x01, 0xE8, 0xC5, 0x9C, 0x0D, 0x20, 0x8E, 0x16, 0xC9, 0x03, 0xCE,\n0xA6, 0xFC, 0x4E, 0xD2, 0xC6, 0x8D, 0x04, 0x41, 0xF5, 0x80, 0x42, 0x0E, 0xA7, 0x08, 0x17, 0xAF,\n0xD5, 0x00, 0x6A, 0x69, 0x47, 0x2E, 0x3F, 0xFF, 0x92, 0x16, 0xC0, 0xA4, 0x52, 0xE9, 0x75, 0x19,\n0xB2, 0x18, 0x46, 0xD0, 0xE6, 0x97, 0x24, 0xD9, 0x00, 0x1C, 0xFD, 0x63, 0xCF, 0x4F, 0x84, 0xFF,\n0x91, 0xA2, 0xFC, 0x8B, 0x69, 0x36, 0x9B, 0xAD, 0x62, 0x5A, 0x08, 0xFF, 0x22, 0xDA, 0x93, 0x44,\n0x48, 0xF8, 0x87, 0x92, 0xBE, 0xDD, 0xFD, 0x36, 0xF6, 0x51, 0xB5, 0xCF, 0xBB, 0xC5, 0x3B, 0xA3,\n0x86, 0xAD, 0x05, 0x2C, 0x01, 0x1F, 0x4B, 0x01, 0xB9, 0x26, 0xA4, 0x47, 0xC1, 0x12, 0xD7, 0x34,\n0xB0, 0xF9, 0xA1, 0xE5, 0xD3, 0x27, 0x71, 0x3D, 0x96, 0x12, 0x8A, 0x2F, 0xBE, 0xD8, 0x4F, 0xF1,\n0x99, 0xD4, 0xD2, 0x26, 0x3D, 0x96, 0x23, 0x95, 0x2F, 0x72, 0x2B, 0x8F, 0x9D, 0x7E, 0x96, 0x9E,\n0x3B, 0x8D, 0xEB, 0xC5, 0xD3, 0x17, 0x41, 0x1D, 0x99, 0x3E, 0xCA, 0xB5, 0x84, 0xF6, 0x38, 0xEC,\n0xFC, 0xF9, 0xFA, 0xF9, 0xEF, 0xBF, 0x87, 0xCA, 0x7A, 0x77, 0x2E, 0xF7, 0xF6, 0xF3, 0x8A, 0x36,\n0x7B, 0xF3, 0xC5, 0x7C, 0x11, 0x28, 0x73, 0xD9, 0x00, 0xB2, 0xE3, 0x8F, 0x81, 0x77, 0x12, 0x01,\n0xCD, 0xE3, 0xB9, 0x4A, 0x04, 0x94, 0x09, 0xB0, 0x54, 0xC6, 0x74, 0xB2, 0xD1, 0xFA, 0xD9, 0x71,\n0x1A, 0xDE, 0xA6, 0xC8, 0x3E, 0x6F, 0xA0, 0xB6, 0xE7, 0x85, 0x42, 0x97, 0x4E, 0xC9, 0xF1, 0xF3,\n0xDF, 0x3F, 0x25, 0xDA, 0xC9, 0x71, 0x4F, 0x3F, 0xD5, 0xE5, 0x67, 0xFE, 0x31, 0x2F, 0xAE, 0xF4,\n0x6F, 0xD1, 0x4A, 0x74, 0xDD, 0xAC, 0x8F, 0x13, 0x02, 0x63, 0x4A, 0x03, 0xE5, 0x83, 0xB0, 0xF0,\n0x7F, 0xAE, 0x61, 0x9F, 0xCB, 0x7B, 0x1B, 0xA8, 0xD2, 0xC1, 0x47, 0xC7, 0x2D, 0x47, 0xEB, 0xE7,\n0xC1, 0x48, 0x9F, 0x6D, 0xD5, 0x91, 0x1E, 0xEF, 0x24, 0xA3, 0x35, 0x10, 0xAE, 0x3E, 0x2C, 0x62,\n0x12, 0xFF, 0xC6, 0xA2, 0x38, 0x89, 0xE9, 0x83, 0x74, 0x7C, 0x7A, 0x18, 0x8E, 0xB0, 0x9E, 0x7C,\n0xFA, 0xC3, 0xE3, 0x68, 0x4C, 0xD1, 0xD9, 0x9D, 0xD8, 0xCF, 0x07, 0xB5, 0xF5, 0xA4, 0xDA, 0x0F,\n0xC6, 0xD9, 0xFE, 0x57, 0xFB, 0x0F, 0xD3, 0x11, 0x8A, 0xA7, 0x71, 0xAD, 0xD7, 0x1F, 0x05, 0x63,\n0x3D, 0x9F, 0xCF, 0xD7, 0xB1, 0x58, 0x44, 0x35, 0x5F, 0xEC, 0xCC, 0x66, 0x3B, 0x01, 0xA5, 0xCD,\n0xF7, 0x24, 0x78, 0x1D, 0x1D, 0x2C, 0xCF, 0x8F, 0x83, 0x3A, 0x3F, 0xBE, 0x7A, 0xF9, 0x32, 0x15,\n0x4F, 0x7A, 0xD5, 0xCD, 0x1F, 0x37, 0x41, 0xFD, 0x34, 0x45, 0x37, 0x61, 0xF1, 0x97, 0x7A, 0xBA,\n0x3A, 0x3E, 0x7E, 0x16, 0x7D, 0x09, 0x96, 0x61, 0x3D, 0x48, 0xEF, 0x43, 0x44, 0xE9, 0xAA, 0x45,\n0x5C, 0xEB, 0x79, 0x34, 0xF4, 0xB3, 0x1A, 0x51, 0xBA, 0xF0, 0xE1, 0xD3, 0x3B, 0xEA, 0x01, 0xC0,\n0x3E, 0xFC, 0xAB, 0xE3, 0x83, 0x88, 0x1E, 0xA5, 0x38, 0xFC, 0x20, 0xCE, 0xB5, 0xC7, 0x29, 0x82,\n0x57, 0x46, 0xC5, 0x95, 0xBE, 0x7E, 0x3B, 0x3B, 0x3B, 0xFB, 0x64, 0x5F, 0x4A, 0x3E, 0x2E, 0x7E,\n0xBB, 0x38, 0xD3, 0xC7, 0xAC, 0xD6, 0x67, 0x3F, 0xD9, 0x7F, 0x7C, 0xF1, 0xF8, 0x4C, 0x9E, 0x71,\n0x75, 0xF1, 0xF8, 0xE2, 0xEC, 0x62, 0xFF, 0xE1, 0xC5, 0x57, 0x21, 0x3D, 0x94, 0x77, 0xFF, 0xA1,\n0x1B, 0x52, 0xE4, 0xD3, 0x12, 0x09, 0xF9, 0x50, 0xC9, 0x67, 0x30, 0x52, 0x92, 0x16, 0x51, 0xAD,\n0x76, 0x66, 0x51, 0x25, 0x63, 0x17, 0xFC, 0xB2, 0x9E, 0x2B, 0x00, 0x4F, 0xDC, 0x90, 0x72, 0xFC,\n0x32, 0xAA, 0xCB, 0x04, 0xB6, 0xDE, 0xFC, 0xFB, 0x2B, 0x4E, 0xC0, 0x74, 0xD9, 0xE5, 0x65, 0xF0,\n0x2F, 0x7D, 0x69, 0x74, 0x3B, 0x19, 0x3D, 0xB4, 0x9C, 0x27, 0x0F, 0x18, 0xFC, 0x1F, 0xCB, 0x83,\n0x59, 0x54, 0xC9, 0xB1, 0x47, 0x35, 0x9F, 0x47, 0x3F, 0x54, 0x6B, 0x05, 0xE0, 0xDA, 0x95, 0x52,\n0x52, 0x3F, 0xDF, 0x16, 0xEF, 0x38, 0xFC, 0x8B, 0x02, 0xB0, 0x3F, 0x01, 0xA3, 0xFE, 0x4F, 0xF8,\n0x77, 0xF8, 0xE8, 0xD3, 0x58, 0x1C, 0x2A, 0xD9, 0x62, 0x11, 0xBC, 0x50, 0xCA, 0x34, 0x5D, 0x68,\n0xD9, 0xD7, 0x96, 0x33, 0xAB, 0xB4, 0xDD, 0x3F, 0x7B, 0x7C, 0x91, 0x62, 0x3F, 0xA2, 0x0B, 0xA9,\n0x1E, 0xC6, 0x22, 0xE9, 0x69, 0x50, 0xFA, 0xBF, 0xCB, 0xB0, 0x62, 0xFC, 0x83, 0x80, 0xBE, 0xFF,\n0x93, 0xC9, 0xBD, 0xA0, 0xA9, 0x78, 0x60, 0xE9, 0x8D, 0x83, 0xD6, 0x21, 0x45, 0xA4, 0x43, 0xBB,\n0xE3, 0x80, 0x6E, 0x2F, 0x8A, 0xF2, 0x2F, 0x29, 0x46, 0xC0, 0xCC, 0xB6, 0xBF, 0xFD, 0x98, 0xE4,\n0x01, 0x2F, 0x93, 0x7C, 0x0F, 0xA8, 0x57, 0x1C, 0x8B, 0x14, 0xF1, 0xDE, 0x71, 0x2E, 0x1A, 0x7D,\n0x51, 0xB5, 0xD2, 0x3A, 0xAD, 0x84, 0x96, 0x37, 0xC2, 0x91, 0x5C, 0x90, 0xDE, 0xD5, 0x09, 0xFC,\n0x5B, 0x6B, 0xB8, 0x25, 0xC3, 0x6D, 0x1D, 0xF1, 0x7F, 0xE9, 0x83, 0xED, 0x3A, 0xC0, 0x28, 0x00,\n0xA1, 0x5F, 0x7F, 0x02, 0x66, 0xBC, 0x79, 0x21, 0xFC, 0xD3, 0xF8, 0x34, 0x52, 0x92, 0x0E, 0x27,\n0x58, 0xC5, 0x20, 0x01, 0xA7, 0x8E, 0x81, 0x15, 0x73, 0x32, 0xCE, 0x95, 0x1E, 0x67, 0x17, 0xDA,\n0xCB, 0xA1, 0xA7, 0xE2, 0xEE, 0xFC, 0xD8, 0x57, 0x7D, 0x25, 0x78, 0x73, 0xCB, 0x53, 0x08, 0xE8,\n0xF2, 0xEF, 0xD6, 0x02, 0xFA, 0x02, 0x80, 0x5E, 0x64, 0xC5, 0xFC, 0x9F, 0x7C, 0x53, 0x76, 0x02,\n0xF8, 0x4B, 0xFC, 0x93, 0xAF, 0x9F, 0x32, 0xAE, 0x7D, 0x68, 0x73, 0x90, 0x27, 0xB7, 0x8E, 0xCF,\n0xDD, 0x10, 0x5D, 0x05, 0x09, 0x78, 0xA9, 0x8A, 0x79, 0x35, 0x45, 0xA0, 0xD1, 0xCD, 0x57, 0xD0,\n0x58, 0x5E, 0x8A, 0x82, 0xE3, 0x5F, 0xD3, 0xF9, 0xF8, 0x71, 0x22, 0x00, 0x14, 0x0F, 0xE8, 0xE0,\n0xCF, 0x52, 0x25, 0x4A, 0xC0, 0x14, 0xAB, 0x76, 0xFD, 0xA3, 0xBC, 0x5D, 0x8B, 0x95, 0xBC, 0xB5,\n0xF3, 0x18, 0xFF, 0x82, 0x33, 0x2B, 0x66, 0xEF, 0x22, 0x16, 0x50, 0x75, 0x17, 0x80, 0x0E, 0xFF,\n0x7C, 0x0B, 0xB8, 0x1D, 0x00, 0x22, 0xCF, 0x01, 0x0A, 0xFD, 0x24, 0x04, 0x6D, 0xA3, 0xE5, 0x70,\n0x12, 0xFF, 0x9E, 0xDC, 0x32, 0x70, 0x2B, 0xBA, 0x20, 0xD4, 0xEB, 0xED, 0xFF, 0x96, 0xDA, 0x4F,\n0xF4, 0x3C, 0xF5, 0xCE, 0xAC, 0x16, 0x47, 0xB8, 0xEF, 0x47, 0x96, 0x00, 0x4E, 0xA3, 0xDD, 0xC9,\n0x7A, 0x1A, 0x09, 0xFD, 0x9C, 0x04, 0x3E, 0x52, 0x5C, 0xD1, 0x87, 0x80, 0x00, 0xD0, 0x3C, 0xE0,\n0x2A, 0xC5, 0x4E, 0xF3, 0x10, 0xFE, 0xA5, 0x60, 0x91, 0x9F, 0xB5, 0x08, 0x07, 0x78, 0x7E, 0xAB,\n0xE3, 0xB8, 0x1C, 0x43, 0x05, 0xFF, 0x42, 0xA3, 0x60, 0xE3, 0x9A, 0x18, 0xBC, 0xA6, 0xB8, 0x42,\n0xAE, 0x8F, 0xF1, 0x4F, 0x15, 0x30, 0x80, 0x8A, 0xF5, 0xA4, 0x67, 0x0E, 0x02, 0xA5, 0xBE, 0x15,\n0x2F, 0x2A, 0x2D, 0x7D, 0xAD, 0x94, 0x7F, 0x29, 0xCC, 0x02, 0xFE, 0xD8, 0xA8, 0xE5, 0xFD, 0xCA,\n0xEF, 0x6B, 0x88, 0x7F, 0x61, 0x02, 0x9A, 0xFC, 0xB9, 0x6A, 0xF9, 0x4C, 0x8B, 0x9A, 0x0E, 0x30,\n0xCE, 0xBF, 0x0F, 0x13, 0xF9, 0xB4, 0x6C, 0xC3, 0x03, 0xC2, 0x37, 0x27, 0xE0, 0x5F, 0x22, 0x5B,\n0x3A, 0x04, 0x83, 0x2D, 0x03, 0xA8, 0x10, 0x0C, 0x21, 0x70, 0xD2, 0x20, 0x58, 0xF5, 0xC3, 0xA4,\n0x24, 0x48, 0xE2, 0x9B, 0x4C, 0xF2, 0xA5, 0xC6, 0x7C, 0x9F, 0x24, 0x3F, 0xE4, 0x31, 0xE9, 0xE3,\n0x02, 0xD3, 0xB9, 0x9F, 0x03, 0xF9, 0x57, 0x18, 0x3D, 0x5A, 0xBA, 0xE6, 0xFF, 0x44, 0xA1, 0xF1,\n0xAF, 0x11, 0xD0, 0x0B, 0x00, 0xE8, 0xF3, 0xCF, 0x14, 0xE5, 0x9F, 0xEF, 0x01, 0xE5, 0xBE, 0xD0,\n0x10, 0xF0, 0xC0, 0x86, 0x64, 0xF7, 0x22, 0x3F, 0x9C, 0x0C, 0x8D, 0x79, 0x40, 0xC7, 0x00, 0x0A,\n0x20, 0x82, 0x1E, 0xF0, 0xD2, 0x14, 0x19, 0x00, 0x9B, 0x05, 0x74, 0x06, 0xC0, 0x32, 0x01, 0x28,\n0x92, 0xAB, 0x7D, 0x53, 0x79, 0x69, 0x0A, 0x1B, 0x40, 0xDF, 0x01, 0x9E, 0x90, 0x0A, 0xE6, 0x45,\n0xA5, 0x4D, 0x01, 0x0F, 0x85, 0x7F, 0x46, 0xC0, 0x55, 0x8A, 0x59, 0xB3, 0x36, 0xFE, 0xAD, 0x22,\n0xFC, 0x0B, 0x13, 0x10, 0x7D, 0x14, 0xF1, 0x7F, 0x46, 0xC0, 0x87, 0x5A, 0x6A, 0x07, 0x88, 0x3C,\n0x07, 0x08, 0xFF, 0xBA, 0x13, 0x30, 0x2C, 0x65, 0x9F, 0xC6, 0x23, 0xA5, 0x9B, 0x50, 0xB0, 0x65,\n0x02, 0xF5, 0x88, 0xA5, 0x82, 0x9F, 0x48, 0x09, 0x11, 0xF0, 0xBF, 0x69, 0xDF, 0xD8, 0x97, 0xCC,\n0xDF, 0x6F, 0x99, 0x81, 0x8A, 0xC4, 0x8C, 0xC5, 0xD4, 0x97, 0x48, 0xED, 0x7E, 0x58, 0x80, 0x8E,\n0xA6, 0xE8, 0x23, 0x7D, 0xFB, 0x5B, 0x95, 0xF2, 0x0F, 0xF9, 0xFE, 0x2F, 0xEA, 0x01, 0xB5, 0x44,\n0x08, 0x38, 0x5F, 0xD9, 0x17, 0x45, 0x09, 0xB8, 0x6A, 0x87, 0xFA, 0x3F, 0x23, 0xE0, 0x92, 0xEF,\n0xE9, 0xA0, 0x09, 0x3C, 0x47, 0xC7, 0x8E, 0x14, 0x7E, 0x2F, 0xB5, 0x71, 0x2C, 0xE0, 0x25, 0x8A,\n0xF0, 0x2F, 0x49, 0xAB, 0xBF, 0x64, 0x20, 0xDC, 0x38, 0x52, 0x88, 0xEC, 0x7A, 0xDF, 0xFF, 0x45,\n0x09, 0x98, 0x99, 0x2E, 0x18, 0x7C, 0xE6, 0x21, 0x90, 0xD5, 0x30, 0xBC, 0xA8, 0xB4, 0xD0, 0x0F,\n0xFE, 0xE1, 0x01, 0x57, 0xAD, 0x7A, 0xC1, 0x1B, 0xEB, 0x7D, 0x04, 0x90, 0xFB, 0xA9, 0xBA, 0x23,\n0x7F, 0x02, 0xD0, 0xF4, 0xB0, 0xE5, 0x00, 0xA3, 0x06, 0x10, 0xFB, 0xB7, 0x05, 0x02, 0x22, 0xCF,\n0x01, 0x1E, 0x12, 0x8F, 0xC4, 0xFB, 0xA5, 0x18, 0x36, 0x81, 0x86, 0xC0, 0x29, 0x06, 0x50, 0x21,\n0xE8, 0xE9, 0x07, 0x29, 0x71, 0xD9, 0x1A, 0x17, 0x85, 0xDE, 0x6F, 0x8A, 0x38, 0x39, 0x49, 0x25,\n0x35, 0xDA, 0x95, 0x43, 0x1F, 0x88, 0x38, 0xC0, 0x42, 0xF8, 0xBD, 0xB2, 0x32, 0xFF, 0x87, 0xDA,\n0xF8, 0x93, 0xE3, 0x23, 0xF4, 0x74, 0x7C, 0x6A, 0x79, 0x8D, 0x3C, 0x0F, 0xA8, 0xDC, 0x0B, 0x5A,\n0xC0, 0x55, 0x41, 0xC0, 0x31, 0xFF, 0x77, 0x17, 0x80, 0x0F, 0x0A, 0xDC, 0x95, 0x25, 0xA9, 0x58,\n0xFD, 0x77, 0x2C, 0xD1, 0x2A, 0xCF, 0x0A, 0x10, 0xC6, 0xFC, 0x9F, 0x9F, 0x08, 0x01, 0x7F, 0x2A,\n0xCF, 0xFF, 0x81, 0x4B, 0xD7, 0xFF, 0x21, 0xD7, 0xFF, 0xA1, 0x93, 0x36, 0xFE, 0x94, 0x7F, 0xE8,\n0x1E, 0xF2, 0x78, 0x49, 0xB5, 0x02, 0x7F, 0x29, 0xC4, 0x03, 0xCA, 0x78, 0x77, 0xA8, 0x96, 0xFC,\n0x6F, 0x0A, 0x2B, 0xE3, 0xF3, 0x80, 0xC6, 0x3E, 0x9F, 0x80, 0x8E, 0x5A, 0x74, 0x6C, 0xCD, 0x01,\n0xA2, 0x80, 0x03, 0xDC, 0x16, 0x01, 0xC3, 0x52, 0xF2, 0x11, 0xE0, 0x6F, 0x68, 0xFE, 0x4F, 0x5A,\n0x1A, 0x4F, 0x4F, 0x94, 0x83, 0xD2, 0x74, 0xF7, 0x7F, 0x82, 0xC0, 0x0C, 0xBD, 0x1C, 0x32, 0x09,\n0xC8, 0x59, 0x6E, 0x12, 0x0D, 0x6F, 0x33, 0xC2, 0x13, 0x04, 0xF7, 0x2A, 0x13, 0x58, 0xAA, 0x85,\n0x3F, 0x55, 0x45, 0xB9, 0xA8, 0x3C, 0xFF, 0xC7, 0x67, 0xDA, 0xE1, 0xDF, 0x6A, 0x41, 0x51, 0x0F,\n0x38, 0xFB, 0xB1, 0xAA, 0xE5, 0x2B, 0x55, 0x7E, 0xFB, 0x3E, 0xE6, 0xFB, 0x39, 0xB0, 0x00, 0xB0,\n0x94, 0x7E, 0xCD, 0xEB, 0x82, 0xFF, 0xD3, 0xE3, 0xA5, 0x34, 0x11, 0x00, 0xFA, 0xF3, 0x80, 0x20,\n0x8D, 0x65, 0x2E, 0x83, 0xFE, 0xCF, 0xE8, 0x47, 0xE5, 0xF8, 0xBF, 0x20, 0x01, 0xF9, 0x4F, 0x7A,\n0xE9, 0x0D, 0x84, 0xCF, 0x4B, 0x15, 0xC4, 0x53, 0xD1, 0x7F, 0x60, 0x6F, 0x01, 0x1E, 0xB0, 0xE5,\n0x00, 0xF7, 0x78, 0x57, 0xBD, 0x44, 0xC8, 0xBC, 0x90, 0xEB, 0xFF, 0x90, 0x3B, 0x01, 0x88, 0x1E,\n0x0E, 0x39, 0xC0, 0xB0, 0x1C, 0xF8, 0xB9, 0x0A, 0xD3, 0xEF, 0xBD, 0x31, 0x13, 0xF8, 0xA9, 0x0C,\n0x81, 0x09, 0x61, 0xDB, 0x23, 0x45, 0x20, 0x07, 0xF3, 0x7F, 0x22, 0xC6, 0xC2, 0x63, 0xFE, 0x0F,\n0x07, 0xD8, 0x6F, 0xF8, 0x8B, 0x01, 0xD4, 0x86, 0xB9, 0x3F, 0x1B, 0x02, 0xDB, 0x49, 0xC2, 0x1E,\n0x60, 0x94, 0x3A, 0x60, 0xFF, 0x00, 0x60, 0x8B, 0x7F, 0xEA, 0xFF, 0x7C, 0x0B, 0x88, 0xFF, 0x2B,\n0x3D, 0x60, 0x23, 0x2A, 0xCD, 0x47, 0xFD, 0x1F, 0x14, 0x4C, 0x5E, 0xD0, 0xF1, 0x7F, 0x94, 0xC5,\n0xAC, 0x31, 0xAB, 0xB4, 0x03, 0xFF, 0x18, 0x05, 0x17, 0x1E, 0x90, 0x80, 0x7F, 0xCE, 0x28, 0xD8,\n0x18, 0x68, 0x94, 0xB8, 0x1A, 0x25, 0x20, 0xFC, 0xF1, 0x3C, 0x60, 0xC9, 0xB4, 0x4C, 0xC1, 0xA6,\n0xFF, 0xBB, 0x87, 0x4B, 0xD7, 0xFF, 0xA1, 0xA0, 0xFF, 0xD3, 0xE5, 0xD0, 0x38, 0xBE, 0xB2, 0xAD,\n0xF6, 0x8A, 0xDC, 0x41, 0x1E, 0x2F, 0xAC, 0xAA, 0x7A, 0x07, 0x24, 0x2D, 0x35, 0xF8, 0x76, 0xED,\n0xF0, 0x96, 0xE2, 0x01, 0x3D, 0xFF, 0x67, 0x4D, 0xDC, 0xFF, 0x7D, 0xE4, 0x18, 0x40, 0x34, 0xE4,\n0x00, 0xD1, 0xF6, 0x11, 0x18, 0xF7, 0x7F, 0x1F, 0x04, 0x1D, 0x60, 0x3A, 0xCD, 0xD8, 0xE3, 0xA0,\n0x90, 0x02, 0xD1, 0xAA, 0x8D, 0x3F, 0x9B, 0x01, 0xF4, 0x46, 0xC1, 0xCE, 0x0A, 0x18, 0x47, 0x32,\n0xF7, 0x67, 0x46, 0xAF, 0x04, 0xA1, 0x52, 0x8F, 0x70, 0x3C, 0x60, 0x90, 0x80, 0x35, 0x00, 0x2B,\n0x31, 0x01, 0x58, 0x11, 0x10, 0x39, 0x9F, 0x35, 0x3F, 0x01, 0xEC, 0x78, 0xC0, 0x79, 0xC5, 0xBF,\n0x14, 0x83, 0xD9, 0x45, 0xE1, 0xDF, 0x83, 0x7B, 0x31, 0x3B, 0x60, 0xA2, 0x4A, 0x2A, 0xC4, 0xF6,\n0xB7, 0xD1, 0x44, 0xC8, 0xF1, 0x09, 0xF4, 0xC3, 0x29, 0xB9, 0xFE, 0x0F, 0xB5, 0xF9, 0x57, 0x20,\n0xB0, 0xF4, 0x80, 0xB4, 0x72, 0x70, 0x29, 0x95, 0xEB, 0xFF, 0xD0, 0x3F, 0xD4, 0x9D, 0x41, 0x6B,\n0x64, 0x45, 0x10, 0xC7, 0xFD, 0x00, 0x1E, 0x82, 0x01, 0x89, 0x07, 0xC1, 0x64, 0x40, 0x72, 0x88,\n0x88, 0x97, 0x80, 0x31, 0xB2, 0xC7, 0x28, 0xC8, 0xB0, 0x4A, 0x2E, 0x7E, 0x89, 0x40, 0x96, 0x41,\n0x18, 0x96, 0x90, 0x83, 0x39, 0x24, 0xA0, 0xA8, 0x7B, 0x08, 0x1E, 0x72, 0xCA, 0x45, 0x58, 0x96,\n0x3D, 0xE8, 0x17, 0xB4, 0xAB, 0xD2, 0xE5, 0xCF, 0x9E, 0x7A, 0xFD, 0xAA, 0x5E, 0x9C, 0x71, 0xF5,\n0x5F, 0xFD, 0xBA, 0xFB, 0x4D, 0x46, 0xC9, 0xCE, 0xBC, 0xF9, 0xE5, 0xDF, 0x5D, 0xDD, 0x6F, 0xEE,\n0x22, 0xFF, 0x77, 0xA7, 0xA5, 0x99, 0x07, 0x54, 0xF8, 0xD1, 0x7A, 0xB9, 0xD7, 0xD4, 0x12, 0xC0,\n0xFE, 0x2D, 0x50, 0x00, 0x7A, 0x07, 0x78, 0xB3, 0xFA, 0xB6, 0xE2, 0x01, 0x07, 0xF9, 0x07, 0xFB,\n0xE4, 0x34, 0xF2, 0x7F, 0xF1, 0x34, 0xE0, 0xC0, 0xE3, 0xCE, 0x01, 0x4E, 0xC6, 0xDF, 0x66, 0x01,\n0x88, 0x22, 0xFF, 0x47, 0x80, 0x3E, 0x8E, 0x06, 0x7A, 0x71, 0x2A, 0x18, 0xD7, 0xF7, 0xB5, 0x9D,\n0x8C, 0x3B, 0xC0, 0xEB, 0xE9, 0x06, 0x50, 0xAB, 0xBD, 0x4A, 0x3D, 0x46, 0xBF, 0x0C, 0x8B, 0x99,\n0x03, 0x1C, 0xF3, 0x80, 0x03, 0x3A, 0xF5, 0xF4, 0xF3, 0xFC, 0x63, 0x31, 0x0C, 0x95, 0x16, 0x6F,\n0x00, 0x6D, 0x31, 0x4C, 0x30, 0x01, 0x18, 0x79, 0xC0, 0xA2, 0x5A, 0xA1, 0x94, 0x01, 0x64, 0x31,\n0x8C, 0x1E, 0xF4, 0x64, 0x0F, 0xDC, 0x8C, 0xF1, 0x17, 0x04, 0xF4, 0x0B, 0x37, 0x66, 0xF0, 0xAF,\n0x25, 0xA0, 0x17, 0x8F, 0x55, 0x4A, 0x54, 0x60, 0x0C, 0x22, 0x05, 0xFE, 0x85, 0x1E, 0xB0, 0x65,\n0x9A, 0x9C, 0x4A, 0x31, 0x13, 0x68, 0x40, 0x94, 0x5E, 0x29, 0x3C, 0x15, 0x18, 0x76, 0x36, 0x80,\n0x0C, 0xFC, 0x0A, 0xA1, 0xFF, 0xE3, 0x9F, 0xB7, 0x94, 0xB6, 0x81, 0x1F, 0x09, 0x60, 0xA4, 0xAF,\n0x1D, 0xAF, 0xA9, 0xE5, 0xD5, 0x59, 0x00, 0xE8, 0x09, 0x78, 0x03, 0xF8, 0xAC, 0xCF, 0xFC, 0x1F,\n0x00, 0x8C, 0xFD, 0x1F, 0xFD, 0x80, 0x7F, 0xA1, 0x09, 0x64, 0xFC, 0x8B, 0xFE, 0x19, 0x00, 0xD1,\n0x26, 0x00, 0x18, 0x4B, 0x0C, 0x9F, 0x8B, 0xE3, 0x21, 0xFC, 0x69, 0xB1, 0x80, 0x82, 0x3D, 0x0B,\n0x48, 0x0E, 0x58, 0x82, 0x9E, 0x8B, 0x47, 0xCA, 0x08, 0xA8, 0xC4, 0xD3, 0x83, 0x85, 0x7F, 0x9F,\n0x6A, 0x63, 0xF1, 0x58, 0x0B, 0xE8, 0x2A, 0x14, 0x7A, 0xC0, 0x38, 0xD9, 0xC1, 0x65, 0x96, 0x26,\n0x20, 0x23, 0x5F, 0x40, 0xD8, 0x21, 0x20, 0x1F, 0x10, 0xCA, 0xCE, 0x56, 0xEB, 0x28, 0xBE, 0x62,\n0x01, 0x74, 0xC7, 0x03, 0xF2, 0x49, 0x55, 0x5D, 0x0E, 0xAA, 0x33, 0x05, 0x88, 0x45, 0xBA, 0x1B,\n0xCF, 0x84, 0xDC, 0xFE, 0x98, 0x26, 0xA0, 0xB3, 0x75, 0x96, 0x0B, 0x56, 0x06, 0xD6, 0xAD, 0x21,\n0x98, 0x41, 0x20, 0xA9, 0x95, 0x1C, 0x39, 0xFF, 0xD7, 0xDD, 0x12, 0x62, 0x69, 0x6D, 0x31, 0x81,\n0x56, 0x8C, 0x7E, 0x97, 0xD6, 0x4A, 0x60, 0x00, 0x5B, 0x04, 0xE2, 0x00, 0xD1, 0x0C, 0xFC, 0x35,\n0x89, 0x90, 0x76, 0x18, 0x2C, 0xFA, 0x6A, 0x6B, 0xE8, 0x8D, 0x0D, 0xE7, 0xFF, 0x20, 0xE1, 0x94,\n0x04, 0xC8, 0xE0, 0xFC, 0x5F, 0x91, 0x47, 0x60, 0x0B, 0xC0, 0x7F, 0x5B, 0x69, 0xFC, 0xBD, 0x3F,\n0xEC, 0xFF, 0xE0, 0x1E, 0x51, 0x3C, 0xA1, 0xC0, 0x6D, 0x00, 0x81, 0x26, 0xCE, 0x3A, 0xF8, 0xC3,\n0x01, 0x62, 0x01, 0x03, 0xD8, 0x5D, 0x4F, 0x36, 0x80, 0xDA, 0x7D, 0xB1, 0x67, 0x63, 0x5F, 0xC6,\n0xC1, 0x7B, 0x66, 0xFC, 0xF6, 0x2E, 0xAC, 0xDB, 0x73, 0x80, 0x1D, 0x9D, 0x8E, 0x8F, 0x7F, 0xD1,\n0xA9, 0x0E, 0x79, 0xB5, 0xD0, 0x1B, 0xA2, 0x9F, 0x50, 0xD1, 0x5D, 0x55, 0xF0, 0x2F, 0x24, 0x20,\n0x13, 0x39, 0x30, 0x50, 0x15, 0xFB, 0x3F, 0x08, 0xA8, 0x32, 0x3B, 0xA1, 0xFC, 0x93, 0x0F, 0x9B,\n0x0B, 0x21, 0xA0, 0x6A, 0xE6, 0xF3, 0x1F, 0x1D, 0x0F, 0x08, 0xFE, 0xFC, 0x2A, 0x18, 0x05, 0x86,\n0x56, 0x5E, 0x20, 0x27, 0x24, 0x20, 0x46, 0xCE, 0xF0, 0xD7, 0xA4, 0x82, 0xEB, 0xCA, 0x17, 0x21,\n0x22, 0xF0, 0x43, 0x72, 0x16, 0x03, 0x10, 0x0D, 0xF1, 0xAF, 0x2B, 0xF0, 0x67, 0xE7, 0x1D, 0xF1,\n0x77, 0x45, 0x0B, 0xFE, 0x6F, 0xD0, 0x03, 0xDA, 0xDA, 0xE7, 0x9A, 0x05, 0x76, 0xFC, 0xEB, 0x67,\n0x42, 0x5A, 0xEA, 0x71, 0xF5, 0xC4, 0xFC, 0x03, 0x80, 0x81, 0xFF, 0x43, 0x8F, 0x07, 0xE0, 0x87,\n0x9B, 0x01, 0xE0, 0xE4, 0x1D, 0x20, 0x1E, 0x81, 0x96, 0x09, 0xE6, 0xC0, 0xF4, 0x35, 0xF3, 0x81,\n0x5D, 0x02, 0x36, 0x16, 0xB0, 0xEB, 0x00, 0xD7, 0x20, 0xD6, 0xFF, 0xA9, 0xF9, 0xAB, 0x2E, 0xD0,\n0x32, 0x24, 0x74, 0x27, 0x79, 0xC0, 0x9F, 0x9E, 0x07, 0x03, 0x60, 0xD4, 0xCC, 0xFD, 0xB5, 0xFE,\n0xEF, 0x4B, 0x37, 0x0A, 0x0E, 0xAE, 0x31, 0x34, 0x3A, 0xFF, 0xD7, 0x0E, 0x83, 0x07, 0x36, 0x00,\n0x77, 0x08, 0xA8, 0x1B, 0x3F, 0x2A, 0xFC, 0xA4, 0x35, 0xFE, 0xB9, 0xD8, 0x66, 0x4B, 0x88, 0x15,\n0x00, 0x88, 0x98, 0x07, 0xF4, 0x1B, 0x80, 0xB5, 0x58, 0xD7, 0x14, 0x8E, 0x7F, 0x51, 0x17, 0x7F,\n0x78, 0x3B, 0x4E, 0x15, 0x7D, 0xE4, 0x40, 0x80, 0x9E, 0x85, 0x21, 0xB0, 0xCF, 0xBF, 0x98, 0x80,\n0x4C, 0xFF, 0x49, 0x55, 0xCB, 0x95, 0xCD, 0x03, 0x36, 0x4E, 0xB0, 0xF7, 0x4A, 0xD9, 0x20, 0x18,\n0xF5, 0xF8, 0x47, 0x2A, 0xF8, 0xE6, 0x2B, 0x5B, 0x00, 0xFD, 0x55, 0x07, 0x80, 0xA3, 0xFE, 0x6F,\n0x2E, 0x27, 0x3B, 0xD6, 0xE9, 0x0C, 0x80, 0x33, 0xF9, 0x0E, 0xFC, 0x9F, 0x13, 0x00, 0x7C, 0x23,\n0xCA, 0xE3, 0xCF, 0x6F, 0x00, 0xE9, 0x85, 0x42, 0xAF, 0x41, 0x20, 0xA6, 0x4F, 0x6B, 0x4E, 0x1C,\n0xFC, 0x30, 0x80, 0x58, 0xC0, 0x4E, 0x36, 0x38, 0x5A, 0x05, 0x18, 0x1B, 0x40, 0xCD, 0x84, 0x5C,\n0xC8, 0xFE, 0x0F, 0xA5, 0x9C, 0x34, 0x16, 0xD5, 0xFD, 0x95, 0x9E, 0x56, 0xF2, 0x58, 0x68, 0xFF,\n0xD0, 0x51, 0x90, 0x00, 0x46, 0x18, 0xC0, 0x15, 0xFF, 0x77, 0x3E, 0x37, 0x0C, 0x42, 0x40, 0x37,\n0x26, 0x4E, 0x5A, 0x40, 0x63, 0x1E, 0x2D, 0xDD, 0xD5, 0x05, 0xD0, 0xC3, 0x00, 0x64, 0x4B, 0x88,\n0x41, 0x90, 0x0D, 0x20, 0x2E, 0x84, 0x80, 0x0C, 0x7E, 0x59, 0x00, 0x98, 0xF0, 0x80, 0x0B, 0x86,\n0xBD, 0x57, 0x74, 0x2D, 0x7D, 0x10, 0xF8, 0x3F, 0xF0, 0xE3, 0x16, 0xC3, 0x18, 0xEF, 0x00, 0x1A,\n0x08, 0xAC, 0x0E, 0x50, 0xA4, 0x35, 0xCF, 0x72, 0xC0, 0x8C, 0x12, 0xC0, 0x28, 0x98, 0x00, 0x44,\n0x36, 0xF2, 0xE5, 0x45, 0x40, 0x9E, 0x80, 0xAC, 0x03, 0x64, 0x01, 0xF4, 0x18, 0x01, 0x4D, 0xF8,\n0x3F, 0x57, 0xFA, 0xFE, 0x8F, 0x0E, 0xFD, 0x26, 0x26, 0x08, 0xF8, 0xB9, 0xBF, 0xEF, 0x6F, 0x14,\n0x80, 0x31, 0x01, 0xE3, 0xFC, 0xAF, 0x8F, 0x63, 0xF0, 0xC7, 0xF6, 0x37, 0x2C, 0xA0, 0x9D, 0x48,\n0x7C, 0xED, 0x12, 0x20, 0x1D, 0x07, 0x28, 0xD5, 0x46, 0x64, 0xE9, 0x0F, 0x39, 0x74, 0x26, 0x90,\n0x15, 0x80, 0xA5, 0x7D, 0x78, 0xB8, 0x02, 0x32, 0x2D, 0x08, 0x08, 0xFF, 0x3A, 0x6A, 0x1D, 0xA0,\n0x9F, 0xFA, 0x3B, 0x87, 0x80, 0xCE, 0xFF, 0x65, 0x09, 0x48, 0xEE, 0x57, 0x5B, 0xD5, 0xDC, 0x7A,\n0x2B, 0x06, 0x70, 0xA7, 0x4F, 0x40, 0x3E, 0x53, 0xF8, 0xBF, 0x8E, 0x07, 0x6C, 0x1D, 0xE0, 0x65,\n0x4F, 0x2C, 0x88, 0x2E, 0x07, 0x82, 0x7B, 0xE6, 0x93, 0xFC, 0x96, 0x90, 0xBB, 0xDB, 0x31, 0xF5,\n0xE7, 0xFF, 0xCC, 0xCD, 0x71, 0xFA, 0xBB, 0xCD, 0x01, 0x6A, 0xD5, 0x62, 0x4F, 0x0A, 0xC0, 0x8C,\n0xFD, 0x1F, 0x72, 0xFC, 0x6B, 0x4D, 0xA0, 0x16, 0xDB, 0x15, 0x1C, 0x8C, 0x7F, 0x11, 0x09, 0x76,\n0xF8, 0x37, 0x42, 0x40, 0xF2, 0x55, 0x4C, 0x6C, 0x44, 0x04, 0x74, 0x13, 0x7F, 0x3B, 0xF5, 0x44,\n0x4A, 0xEC, 0xFF, 0xD0, 0xEA, 0xFC, 0x1F, 0xE8, 0x9B, 0x9F, 0x73, 0x61, 0x03, 0xC0, 0x37, 0xA5,\n0x34, 0xFF, 0xE2, 0x04, 0x30, 0x81, 0x03, 0x6C, 0x07, 0xC0, 0x18, 0x41, 0xC6, 0xC3, 0xC8, 0x80,\n0x97, 0x72, 0x80, 0xA1, 0x62, 0x03, 0xA8, 0x35, 0x09, 0x10, 0x0D, 0x56, 0xC0, 0x88, 0x03, 0xB4,\n0x07, 0xFD, 0x9E, 0x90, 0x40, 0xD1, 0xFC, 0x1F, 0x3A, 0xC5, 0x02, 0x0A, 0xFF, 0xA4, 0xCC, 0xDB,\n0xD1, 0xAF, 0x69, 0x65, 0x1E, 0x30, 0x50, 0xC3, 0x3F, 0x0E, 0xAF, 0xD4, 0x00, 0x98, 0xC5, 0x30,\n0x96, 0x00, 0xE9, 0x7C, 0xF8, 0x58, 0x10, 0x8D, 0x2E, 0xC7, 0xC5, 0x6A, 0xE0, 0xA5, 0x39, 0x3F,\n0x9D, 0xF5, 0xD3, 0xB6, 0xA5, 0x62, 0x34, 0xFE, 0x45, 0xBD, 0x05, 0x30, 0x4D, 0xFE, 0xD7, 0x3A,\n0xE2, 0x00, 0x6B, 0xDB, 0x3A, 0x40, 0xF0, 0x67, 0x47, 0xEC, 0xFF, 0xC8, 0x84, 0x64, 0xFC, 0x1F,\n0xCB, 0x01, 0xA5, 0x6A, 0x13, 0xC0, 0x67, 0xD4, 0x78, 0x40, 0xD5, 0x8C, 0x05, 0xD0, 0x43, 0xC1,\n0xB6, 0xE0, 0xA2, 0x1B, 0xC6, 0xBF, 0x19, 0x02, 0x02, 0xBF, 0x1D, 0xA9, 0x4D, 0xF6, 0x38, 0x11,\n0xF3, 0x8F, 0xEE, 0xE0, 0x00, 0xF8, 0xBF, 0x02, 0xC0, 0x98, 0x7F, 0x71, 0x02, 0xD8, 0x07, 0xF8,\n0x6B, 0x52, 0xBE, 0xDA, 0x72, 0xD2, 0x4F, 0x02, 0x6B, 0x81, 0x88, 0x8E, 0x81, 0x71, 0xF6, 0x23,\n0x4F, 0x45, 0x4C, 0xA0, 0x18, 0x3F, 0x29, 0x7B, 0x6A, 0x03, 0xA5, 0xC5, 0x11, 0xEA, 0x4C, 0x60,\n0x5A, 0x6E, 0xFE, 0x2F, 0xB6, 0x80, 0x25, 0xDC, 0x5F, 0xCA, 0x55, 0xC5, 0xFE, 0xCF, 0x7B, 0x40,\n0x0C, 0x1F, 0x6B, 0x1A, 0x5A, 0x02, 0xB2, 0x00, 0x30, 0x45, 0xC0, 0xAD, 0xC2, 0x3F, 0x3E, 0x68,\n0xC3, 0x89, 0x90, 0x7D, 0xB7, 0x00, 0xA6, 0xAB, 0xA5, 0x67, 0x02, 0xF0, 0xC3, 0x36, 0xC9, 0x01,\n0x53, 0x00, 0x60, 0x98, 0x08, 0xA9, 0x1C, 0x03, 0x7B, 0x30, 0x0E, 0x31, 0xFF, 0x07, 0x1C, 0x79,\n0x2A, 0x08, 0x0C, 0xFD, 0x1F, 0x5A, 0x5D, 0x00, 0x48, 0x0E, 0x58, 0xCF, 0x6A, 0x9F, 0xE5, 0x80,\n0x22, 0xD8, 0x87, 0x38, 0x25, 0x11, 0x12, 0xF1, 0x8F, 0x51, 0x30, 0xE3, 0xDF, 0x7E, 0x71, 0xFC,\n0xF3, 0xC2, 0x12, 0x26, 0xFD, 0x1F, 0xB6, 0x8F, 0x1E, 0xE2, 0x0A, 0xAF, 0x00, 0x7C, 0xA3, 0xCA,\n0xD3, 0x8F, 0x0D, 0xC0, 0x51, 0x80, 0x3F, 0x86, 0xBC, 0x38, 0xC1, 0xE6, 0x04, 0xF2, 0x85, 0x0E,\n0xF0, 0x49, 0x32, 0x01, 0x9C, 0x37, 0x80, 0xDA, 0xA8, 0x05, 0x2C, 0x81, 0xE7, 0xB3, 0x7B, 0xC1,\n0x5C, 0x60, 0x0A, 0xD5, 0x02, 0xE2, 0xFF, 0x42, 0x31, 0xFF, 0x17, 0x88, 0x0C, 0x48, 0xE7, 0x22,\n0x31, 0x47, 0xC8, 0x34, 0xE0, 0x3C, 0xA1, 0xC6, 0xFF, 0x8D, 0x6A, 0x07, 0xFF, 0x17, 0x13, 0x70,\n0x2B, 0xF4, 0x7F, 0xA4, 0x82, 0x55, 0x01, 0xFE, 0x58, 0x10, 0xBD, 0x74, 0xEB, 0x5F, 0x8C, 0x10,\n0xF0, 0xF0, 0x0E, 0xFE, 0x85, 0x04, 0xBC, 0x67, 0x01, 0x20, 0x26, 0xCE, 0x02, 0x0A, 0xAA, 0xF1,\n0xD3, 0x2C, 0xF0, 0xEF, 0xCE, 0x27, 0xB6, 0x33, 0x86, 0x5A, 0xF0, 0x7F, 0xA1, 0xE0, 0xDF, 0xA8,\n0xAE, 0x6C, 0x14, 0xBC, 0xC4, 0xFF, 0x39, 0xF2, 0x41, 0xC0, 0xAA, 0x99, 0x5F, 0x83, 0xD4, 0xDB,\n0x12, 0x12, 0xE0, 0x4F, 0x8A, 0xF3, 0x7F, 0x34, 0x2A, 0xCE, 0x9C, 0xFD, 0x0B, 0x4D, 0x20, 0x03,\n0x98, 0x8E, 0x03, 0x7C, 0xB3, 0x06, 0x10, 0x00, 0xE6, 0x15, 0xC0, 0x8F, 0xFB, 0x22, 0xEC, 0x56,\n0xC0, 0x91, 0xF8, 0xE5, 0x01, 0xC0, 0xF8, 0xF5, 0xCA, 0xEA, 0xBF, 0xDA, 0xE2, 0x00, 0x5D, 0x2E,\n0x38, 0x8D, 0xC0, 0xBC, 0x03, 0xD4, 0x90, 0x39, 0x3F, 0x2D, 0x8C, 0x86, 0xF7, 0xCC, 0x13, 0xD6,\n0x27, 0xA4, 0xC5, 0x00, 0x38, 0x12, 0x09, 0x60, 0xF4, 0xD9, 0xB7, 0xF4, 0x83, 0x2D, 0x21, 0x11,\n0x00, 0x63, 0x35, 0xEB, 0x5F, 0x62, 0x0F, 0x58, 0x0E, 0x3E, 0x67, 0x11, 0x01, 0x2F, 0x13, 0x5A,\n0x92, 0x0C, 0x75, 0x9B, 0x40, 0xD4, 0x30, 0xD1, 0x4D, 0xF2, 0x0F, 0x0F, 0x68, 0x40, 0x73, 0x0E,\n0xB0, 0x35, 0x80, 0xE2, 0x01, 0xA1, 0xA2, 0x0A, 0x1C, 0x36, 0x8F, 0xE0, 0xFF, 0x42, 0xDD, 0x35,\n0x0B, 0x00, 0x7B, 0x93, 0x80, 0x52, 0x2F, 0xB8, 0x03, 0x74, 0xA4, 0xBF, 0x16, 0xC0, 0xEC, 0x47,\n0x21, 0xEF, 0x94, 0x5B, 0x00, 0x3D, 0xBA, 0x18, 0xC6, 0xEF, 0xFF, 0x40, 0x76, 0x8A, 0xFF, 0x8B,\n0x65, 0x13, 0x80, 0xE7, 0x8D, 0xE9, 0xB3, 0x5A, 0xF4, 0x9F, 0x70, 0x80, 0x15, 0x81, 0x19, 0x31,\n0xFF, 0x17, 0x06, 0x0E, 0x50, 0x43, 0x0B, 0xEC, 0x23, 0x2D, 0xE2, 0x36, 0x80, 0xB8, 0x34, 0xB0,\n0x96, 0x4A, 0x42, 0xA9, 0x13, 0x2E, 0x30, 0x6F, 0x00, 0x6B, 0x45, 0xEE, 0xF7, 0x0B, 0x3D, 0x9C,\n0x1B, 0xAC, 0x0F, 0x3E, 0x98, 0xC1, 0x48, 0x6C, 0x09, 0x01, 0x7F, 0x7D, 0x9D, 0x0E, 0xEC, 0x00,\n0xF6, 0xFC, 0x3B, 0x7A, 0xB8, 0x8C, 0xB8, 0xED, 0x6E, 0x28, 0x96, 0x72, 0xE9, 0x81, 0xDC, 0x03,\n0x00, 0x30, 0x2C, 0x75, 0x03, 0x5C, 0x4C, 0xC0, 0x4F, 0x66, 0x6C, 0x80, 0x8B, 0x09, 0xB8, 0x04,\n0x71, 0xE0, 0x0F, 0xF6, 0xD1, 0x85, 0x7F, 0xA1, 0x18, 0x00, 0xAF, 0x98, 0xB8, 0xDA, 0x7A, 0x0E,\n0x72, 0xD6, 0x4C, 0x03, 0x4A, 0xC3, 0x23, 0xF0, 0x2F, 0x92, 0xF1, 0xAF, 0x2B, 0x66, 0x3B, 0xF5,\n0x6F, 0x00, 0xBE, 0x8F, 0x9A, 0x53, 0xB6, 0x84, 0xC0, 0xBF, 0x90, 0x80, 0x39, 0xFE, 0x7D, 0xE5,\n0xE6, 0xFF, 0xA2, 0x21, 0x30, 0x8A, 0x2C, 0xA0, 0xE0, 0x4F, 0x8F, 0xAE, 0x03, 0x7C, 0xF3, 0xFC,\n0x9B, 0x7C, 0x07, 0x98, 0x54, 0x1C, 0x93, 0xF3, 0xC5, 0x04, 0x3E, 0x34, 0xFE, 0x0E, 0x31, 0x18,\n0x3F, 0x87, 0x3D, 0x0D, 0xFC, 0xE1, 0xFA, 0xF5, 0x42, 0x01, 0x77, 0xE1, 0x66, 0xFD, 0xA4, 0x67,\n0x6E, 0xB0, 0x14, 0x39, 0x29, 0xF5, 0xDE, 0x4F, 0x13, 0xA6, 0x01, 0x31, 0x80, 0xA1, 0x05, 0x6C,\n0x86, 0xBC, 0xC5, 0x01, 0x5A, 0xB4, 0x16, 0xB0, 0x1C, 0x53, 0x3C, 0x20, 0xA9, 0x3C, 0x44, 0x0A,\n0x18, 0xB1, 0x03, 0x24, 0x2A, 0x24, 0x80, 0xA3, 0xD8, 0x6E, 0xE6, 0xFF, 0xCE, 0x06, 0x0F, 0xD3,\n0xCA, 0x1C, 0xA0, 0x0D, 0x80, 0x49, 0x03, 0x33, 0x3B, 0x08, 0xFF, 0x62, 0x02, 0x42, 0x2F, 0x10,\n0xE8, 0xE7, 0xF6, 0x10, 0xE8, 0x53, 0x35, 0x2D, 0x3D, 0x00, 0x18, 0x23, 0xB0, 0x59, 0xFA, 0xA7,\n0xB4, 0xB3, 0x33, 0xED, 0x82, 0x77, 0xB9, 0x03, 0x7E, 0x52, 0x2C, 0x00, 0x8C, 0xA2, 0x10, 0x90,\n0x04, 0x48, 0x50, 0xE2, 0xF9, 0x3F, 0x2E, 0x9C, 0x39, 0x0A, 0x2D, 0x60, 0x47, 0x0C, 0x72, 0xDE,\n0x7A, 0xF3, 0xFC, 0x53, 0x02, 0xE6, 0x84, 0x01, 0x8C, 0xA3, 0xC2, 0x0D, 0xEC, 0x81, 0x40, 0x15,\n0x3F, 0x57, 0xFE, 0x01, 0xBA, 0x61, 0x07, 0x48, 0x64, 0x94, 0x37, 0x80, 0x45, 0x75, 0x07, 0x48,\n0x69, 0xCC, 0xF0, 0x91, 0x0D, 0xD6, 0xB3, 0x52, 0x8C, 0x90, 0x13, 0x04, 0xFE, 0x42, 0x19, 0xFF,\n0x70, 0x80, 0xF3, 0x87, 0x63, 0xAE, 0x44, 0x6C, 0x52, 0xC1, 0x79, 0xD5, 0x1B, 0xC0, 0xC4, 0x22,\n0xFF, 0x1B, 0x95, 0x1D, 0xF8, 0x17, 0x8F, 0x82, 0x33, 0xF6, 0xEF, 0x0C, 0x02, 0x56, 0x4C, 0xB8,\n0x4C, 0x08, 0xB8, 0xD0, 0xE6, 0x36, 0xCD, 0x1F, 0x46, 0xBE, 0x83, 0x4B, 0xA1, 0x9B, 0xFB, 0xA3,\n0xF2, 0x70, 0xC3, 0x47, 0x9E, 0x0A, 0x47, 0x6F, 0xD3, 0x82, 0xDD, 0x1D, 0xDD, 0xF1, 0x6F, 0x8C,\n0xEC, 0x1F, 0x9A, 0xF1, 0x16, 0x04, 0xB1, 0xFD, 0x55, 0xD2, 0xD8, 0x97, 0x63, 0xC5, 0xE6, 0x35,\n0x22, 0x25, 0x9C, 0xE7, 0x1F, 0x1B, 0x40, 0xA4, 0xF2, 0x1E, 0xF0, 0xDB, 0x2F, 0xE5, 0xBA, 0x16,\n0x07, 0xF8, 0x5F, 0x50, 0x0E, 0x7F, 0xC2, 0xC9, 0x62, 0xED, 0x92, 0x0E, 0xD0, 0x46, 0xBC, 0xF8,\n0xBD, 0x66, 0x02, 0xD0, 0x80, 0xE8, 0x1D, 0xE0, 0x10, 0xF5, 0x78, 0x68, 0x23, 0x62, 0xE6, 0x4F,\n0x2A, 0xED, 0x30, 0xEA, 0x85, 0x86, 0xF2, 0xB4, 0xBC, 0x4E, 0xE1, 0x5F, 0x08, 0x40, 0xEC, 0x5F,\n0x75, 0x7D, 0x75, 0xE0, 0xF0, 0xE5, 0xB7, 0xF2, 0x20, 0x0C, 0x9C, 0xFE, 0x45, 0x71, 0x6B, 0x05,\n0xA0, 0x58, 0xC0, 0x24, 0xFF, 0x4A, 0x85, 0x01, 0x8C, 0xB4, 0x6C, 0x67, 0xFA, 0xB4, 0x25, 0x1F,\n0xD2, 0xE8, 0x2A, 0x4D, 0x9F, 0xDB, 0x26, 0xF7, 0x41, 0xD7, 0xAD, 0x06, 0x74, 0xF9, 0x61, 0xF8,\n0x08, 0x0C, 0xE9, 0x4D, 0x03, 0xE0, 0xD5, 0xC8, 0x1C, 0x20, 0xFF, 0x3C, 0x12, 0x20, 0xE8, 0x6C,\n0xE8, 0x7C, 0x39, 0x05, 0x80, 0xFB, 0xF8, 0xBF, 0xB0, 0x34, 0xE3, 0x83, 0x9D, 0x31, 0x2B, 0xF8,\n0xE8, 0x05, 0xD0, 0x0C, 0x71, 0xAA, 0xFE, 0x77, 0x00, 0x64, 0x00, 0x9C, 0x09, 0x03, 0x9D, 0x09,\n0xE0, 0x19, 0xFF, 0xD2, 0x0E, 0x70, 0x93, 0x06, 0x50, 0x65, 0xDF, 0x06, 0x72, 0x01, 0xEC, 0x38,\n0xAD, 0x3B, 0x82, 0x4B, 0xC3, 0x08, 0x38, 0x16, 0x39, 0xE0, 0x50, 0x2B, 0x19, 0xE0, 0xF9, 0x97,\n0x25, 0xD8, 0x44, 0xF4, 0xF8, 0x31, 0x70, 0x56, 0xE9, 0x11, 0xB0, 0x4C, 0x02, 0x66, 0x09, 0x38,\n0x9B, 0xCD, 0x8C, 0x80, 0x67, 0x11, 0xFF, 0xDA, 0x3D, 0x70, 0xB5, 0xA1, 0x03, 0x3F, 0xA6, 0x0D,\n0x81, 0x1B, 0xDB, 0xD7, 0x3A, 0xC0, 0xE1, 0x01, 0x2E, 0xCF, 0xA0, 0x54, 0x46, 0x82, 0xC5, 0xB4,\n0x03, 0xCD, 0xA4, 0x80, 0x2D, 0x0D, 0xB2, 0x8C, 0xFF, 0x56, 0x18, 0xFF, 0x66, 0xA4, 0x80, 0x83,\n0xD0, 0x29, 0xC0, 0xF4, 0x10, 0xD8, 0x6F, 0x14, 0x1A, 0xCE, 0x03, 0xE7, 0xA5, 0x97, 0x6C, 0x09,\n0x16, 0xB8, 0xA2, 0xCD, 0x03, 0x70, 0x77, 0x9D, 0x63, 0x60, 0x94, 0x82, 0x9F, 0x7E, 0x05, 0xB0,\n0xB1, 0x0F, 0xD8, 0x01, 0xBC, 0x36, 0x23, 0xF2, 0x75, 0x34, 0x07, 0xC8, 0x03, 0x9B, 0x52, 0x01,\n0x5C, 0x4D, 0xF5, 0x92, 0xF4, 0x95, 0x8E, 0xE5, 0x45, 0x24, 0xA6, 0x0E, 0x81, 0x4F, 0x9F, 0xE7,\n0xE7, 0x00, 0x41, 0xA0, 0x5C, 0x2A, 0xE2, 0xFD, 0x64, 0xF4, 0x5B, 0x1C, 0xA0, 0xDF, 0x56, 0x99,\n0xC5, 0x5F, 0x1A, 0x81, 0x3B, 0xA2, 0xA4, 0xFF, 0x13, 0xE5, 0x1C, 0xE0, 0xC7, 0x42, 0x40, 0x51,\n0x38, 0x0B, 0xB8, 0x2C, 0x9F, 0xFF, 0x85, 0xDF, 0x07, 0xA2, 0x1E, 0x50, 0x21, 0x81, 0x58, 0x05,\n0x9D, 0x4A, 0x82, 0xAC, 0x9A, 0x3A, 0xBA, 0x9C, 0xA1, 0x86, 0x8D, 0x98, 0xC0, 0xB6, 0xBA, 0xCD,\n0xCF, 0x01, 0xDE, 0x69, 0x12, 0xA4, 0xBF, 0x0E, 0xF0, 0x0E, 0xA7, 0xBB, 0x5C, 0x2E, 0x96, 0x9D,\n0x45, 0x80, 0x56, 0xC3, 0xBF, 0x8F, 0x93, 0x16, 0x9C, 0x24, 0x70, 0x54, 0x76, 0x44, 0xF3, 0x66,\n0xB2, 0xCF, 0x69, 0xC7, 0xFC, 0xDF, 0xE4, 0x39, 0x40, 0xE7, 0x03, 0xFF, 0x63, 0x0E, 0xF0, 0x78,\n0xD2, 0x2C, 0x60, 0xD6, 0x03, 0x0A, 0x02, 0x6B, 0x58, 0x01, 0x7E, 0xB0, 0x0F, 0x65, 0x1C, 0xA0,\n0x54, 0x9B, 0x30, 0x80, 0x0F, 0x37, 0x07, 0x24, 0xF9, 0x4B, 0xAF, 0xBD, 0x39, 0xCC, 0x14, 0xFF,\n0x77, 0xF4, 0xFC, 0xF4, 0xF4, 0x28, 0x23, 0xB2, 0xC0, 0x3E, 0x11, 0xDC, 0xCC, 0x01, 0xDA, 0x73,\n0xF2, 0x59, 0x90, 0x24, 0xFF, 0x92, 0x04, 0xB4, 0xA5, 0xD0, 0xC9, 0x2C, 0xF0, 0xCC, 0x3C, 0x60,\n0xA0, 0xE5, 0xA2, 0xF8, 0x9F, 0xA5, 0x71, 0xC1, 0xC8, 0x20, 0x82, 0x1E, 0xF8, 0x3F, 0x25, 0xE0,\n0xCB, 0x0C, 0xFF, 0x54, 0xDE, 0x01, 0x02, 0x3A, 0xF4, 0x07, 0x73, 0x80, 0xE3, 0xF8, 0x9B, 0xBC,\n0x0C, 0x86, 0x59, 0x3E, 0x27, 0x70, 0xBF, 0x28, 0xFF, 0x7C, 0x25, 0x20, 0xF0, 0xA3, 0x8B, 0x34,\n0x09, 0x3C, 0x7B, 0x20, 0x60, 0x2A, 0x07, 0x92, 0x26, 0x20, 0x69, 0x60, 0xC5, 0x20, 0xF2, 0x0C,\n0x9C, 0x4B, 0x49, 0xFB, 0x3F, 0x9B, 0x05, 0x0C, 0x00, 0xB8, 0x09, 0x57, 0xB7, 0x5B, 0x22, 0x4F,\n0xC0, 0xF5, 0xE6, 0x81, 0xB9, 0x33, 0x6A, 0x2B, 0x26, 0x03, 0x3D, 0x04, 0x47, 0xE7, 0x00, 0x5B,\n0x0C, 0x6E, 0x44, 0xC6, 0x3B, 0xCB, 0xFD, 0x5A, 0x6B, 0xE9, 0x8F, 0xA9, 0x13, 0x80, 0xCF, 0xCB,\n0x3A, 0x98, 0xD3, 0x4C, 0x22, 0xE4, 0xBC, 0x6A, 0x65, 0x12, 0xB0, 0x4E, 0x05, 0xEA, 0x23, 0xAD,\n0x01, 0xFC, 0x28, 0x09, 0x3F, 0x6D, 0x13, 0xFC, 0x03, 0x80, 0xD9, 0xAD, 0x20, 0xF1, 0x67, 0x6F,\n0xBF, 0xF0, 0x4F, 0x94, 0x58, 0x08, 0x58, 0xCC, 0x8F, 0x7C, 0xFA, 0x6D, 0x25, 0x8C, 0x5B, 0xFE,\n0xE7, 0x17, 0x42, 0xDF, 0xE5, 0xFC, 0x9F, 0x0A, 0x53, 0xE7, 0x96, 0x42, 0xD3, 0x67, 0x0F, 0x70,\n0x7B, 0xD3, 0x54, 0x8F, 0x40, 0x53, 0x8A, 0x7F, 0xAA, 0x3B, 0xC6, 0xF0, 0xEE, 0x86, 0x80, 0xA6,\n0xC2, 0xFF, 0x85, 0xD8, 0x60, 0xE0, 0x47, 0xAB, 0x4D, 0xCB, 0xBF, 0xF2, 0xDA, 0xE6, 0xFC, 0xDF,\n0x4D, 0x89, 0xAD, 0xC7, 0x2C, 0x84, 0xF6, 0x62, 0x37, 0xB0, 0x94, 0x24, 0x00, 0xB5, 0x88, 0xCE,\n0xFB, 0xB3, 0x80, 0x6F, 0x6D, 0x82, 0x7E, 0xFC, 0x17, 0xC7, 0x49, 0xFC, 0x4D, 0xF2, 0x80, 0xC7,\n0x19, 0x00, 0x5A, 0xE0, 0xFF, 0xAA, 0x80, 0x9F, 0x56, 0xDE, 0x02, 0x76, 0x1D, 0x60, 0xD5, 0x64,\n0x02, 0x8E, 0x1A, 0x40, 0xC4, 0x2D, 0x60, 0xD8, 0x1D, 0xA7, 0xA7, 0x36, 0x1D, 0x98, 0xF7, 0x7F,\n0x3F, 0x95, 0xF1, 0x6F, 0xA1, 0xDF, 0xF3, 0x32, 0x08, 0x8E, 0xC4, 0xAD, 0x00, 0x81, 0x5C, 0x23,\n0xEC, 0x1F, 0x57, 0xD4, 0x3A, 0x07, 0xC1, 0x3B, 0xA6, 0x44, 0x06, 0x78, 0xFB, 0x46, 0x63, 0xFB,\n0x93, 0xC0, 0xFE, 0x15, 0xFE, 0xC9, 0x47, 0xD5, 0x3C, 0x60, 0xE4, 0xFF, 0x04, 0x80, 0x42, 0x40,\n0xB7, 0x05, 0x98, 0x9C, 0x01, 0xFC, 0x4B, 0x8D, 0x82, 0xDD, 0x97, 0x21, 0x45, 0x0E, 0x50, 0x3D,\n0x60, 0xCF, 0x01, 0x32, 0x80, 0xCE, 0x13, 0x90, 0x5F, 0x76, 0x7C, 0x0E, 0x50, 0xE7, 0xFF, 0xF4,\n0x25, 0x78, 0x16, 0xCE, 0x03, 0x2E, 0xE5, 0x45, 0x35, 0x02, 0x06, 0x08, 0xB4, 0x3B, 0x02, 0xC6,\n0x04, 0x04, 0x80, 0xDD, 0x55, 0x80, 0x6A, 0x0D, 0xDF, 0x13, 0x00, 0x56, 0x07, 0xF8, 0x6E, 0x8E,\n0x7F, 0xDD, 0x11, 0xB0, 0xE4, 0xF6, 0x36, 0x9A, 0x05, 0xDE, 0x95, 0x90, 0x36, 0x03, 0x40, 0x2B,\n0x28, 0x64, 0x60, 0x94, 0xFE, 0x20, 0x0C, 0x7F, 0x76, 0x0E, 0x04, 0xB5, 0x52, 0xC0, 0xE1, 0x01,\n0xFB, 0x59, 0x60, 0x4E, 0xA4, 0x6C, 0x40, 0x7A, 0x3B, 0xAC, 0x76, 0x2F, 0xB0, 0x65, 0x7E, 0x2D,\n0x17, 0x32, 0xE9, 0x96, 0x80, 0xC5, 0x03, 0x16, 0x45, 0x89, 0x90, 0x73, 0x74, 0x14, 0xEC, 0x1A,\n0x02, 0x7F, 0x1F, 0xCD, 0xDF, 0x89, 0xD8, 0xA7, 0x45, 0xAB, 0x0C, 0xFF, 0x62, 0x13, 0xC8, 0x4D,\n0x51, 0xD5, 0x59, 0xA4, 0xC6, 0xBF, 0x78, 0xC0, 0xCE, 0xF4, 0x1F, 0xFE, 0x4F, 0x11, 0xB8, 0x68,\n0x77, 0xC1, 0x01, 0x42, 0x7B, 0x88, 0xFD, 0xB5, 0x21, 0xFF, 0x10, 0x18, 0xC3, 0x0C, 0x36, 0x10,\n0xB4, 0x9B, 0x41, 0x4B, 0xDD, 0x20, 0xD0, 0x9E, 0x8B, 0x5D, 0x44, 0xE1, 0xCD, 0x10, 0x90, 0x0D,\n0xE1, 0x31, 0x81, 0x8C, 0xEA, 0xF1, 0x7F, 0xEA, 0x01, 0xC7, 0xF1, 0x27, 0xFE, 0x0F, 0x02, 0x86,\n0xFE, 0xCF, 0xFE, 0x5C, 0xA5, 0x6F, 0x86, 0x70, 0x08, 0xFA, 0x3A, 0x9A, 0x30, 0x00, 0xB6, 0x4B,\n0x16, 0x0B, 0x68, 0x23, 0x9C, 0x7F, 0x2D, 0x09, 0xA2, 0xE5, 0x38, 0xE6, 0x1F, 0x00, 0xCC, 0x2B,\n0xE0, 0x5F, 0x29, 0x6C, 0x86, 0x43, 0x38, 0x3F, 0xBA, 0x08, 0xF8, 0xAD, 0x77, 0x19, 0x60, 0x60,\n0x00, 0x91, 0xB0, 0x4E, 0x2D, 0x20, 0x99, 0x5F, 0x69, 0x25, 0xF5, 0xF1, 0x05, 0x06, 0xF0, 0x22,\n0x93, 0xFE, 0x28, 0xF4, 0x53, 0x0F, 0xB8, 0x17, 0x78, 0x40, 0x05, 0x5F, 0x2D, 0xDF, 0x1F, 0x8D,\n0xAC, 0x19, 0x38, 0xB2, 0xAB, 0x69, 0x8E, 0x07, 0x4C, 0x21, 0x30, 0xE6, 0x1F, 0x8A, 0xF8, 0x77,\n0x53, 0xA3, 0x28, 0xE0, 0x5F, 0x89, 0xA2, 0xA7, 0xFA, 0x59, 0x1D, 0xF5, 0x35, 0xFA, 0xD9, 0xC7,\n0x03, 0x56, 0xD4, 0x21, 0x92, 0x06, 0xF0, 0x0F, 0x0B, 0x18, 0xF3, 0xAF, 0xF4, 0x57, 0x16, 0x40,\n0x3B, 0x07, 0xF8, 0x07, 0x0E, 0x90, 0xA1, 0xAF, 0x14, 0xB7, 0x2D, 0xA4, 0x51, 0x78, 0x33, 0x98,\n0xE4, 0xED, 0x60, 0x0C, 0x7F, 0x78, 0x40, 0x3F, 0xFE, 0x85, 0x7F, 0xF6, 0xAA, 0x06, 0xBB, 0x41,\n0xF4, 0xBD, 0xE2, 0x76, 0x80, 0x91, 0xFD, 0x0B, 0x06, 0xC1, 0xF0, 0x8F, 0x12, 0xFB, 0x3F, 0x0D,\n0x69, 0x85, 0x7F, 0x88, 0xF1, 0x2F, 0x00, 0xDC, 0xC8, 0xFC, 0x9F, 0x12, 0x30, 0x7C, 0xA6, 0xF9,\n0xBF, 0x89, 0x08, 0xCC, 0x8C, 0x7F, 0x99, 0x07, 0x5C, 0x1D, 0x0F, 0x5B, 0xB4, 0x0A, 0xE6, 0x00,\n0x2B, 0xA5, 0xF0, 0x80, 0xEB, 0x97, 0xB2, 0x0F, 0x03, 0x88, 0x23, 0x94, 0xB3, 0xB4, 0x04, 0x7A,\n0xE2, 0xFD, 0xAA, 0x0B, 0x7C, 0x1E, 0xDD, 0x10, 0x15, 0x1D, 0xF5, 0xF7, 0x02, 0x9F, 0xC7, 0x37,\n0x44, 0x45, 0x4C, 0xD5, 0x48, 0x15, 0xF2, 0x0F, 0x25, 0xFC, 0x9F, 0x39, 0x8B, 0xB1, 0x01, 0xB0,\n0x8D, 0x7F, 0xF1, 0x80, 0xFD, 0x05, 0x80, 0x0D, 0x01, 0x17, 0x40, 0xCF, 0x8A, 0x29, 0x77, 0x43,\n0x68, 0xF8, 0x87, 0x98, 0xF2, 0xA3, 0xAD, 0x1D, 0x0C, 0xA0, 0x60, 0x50, 0xDB, 0x16, 0x92, 0x0D,\n0x06, 0x85, 0xA6, 0x29, 0x02, 0xC2, 0x3F, 0xED, 0xB0, 0xF7, 0x17, 0x73, 0x8B, 0xC5, 0x05, 0x80,\n0x72, 0x00, 0x3D, 0x97, 0x0B, 0xE6, 0x6F, 0x8A, 0x6A, 0x8C, 0x80, 0xBC, 0x4F, 0x12, 0x93, 0x6F,\n0x88, 0xDA, 0xE5, 0x1F, 0xF8, 0x8B, 0xF8, 0x87, 0xDC, 0x52, 0xAE, 0xF9, 0xA6, 0x1D, 0x20, 0x0C,\n0x54, 0x0C, 0x86, 0xF6, 0x8F, 0x92, 0xC6, 0x5F, 0x29, 0x63, 0xB7, 0x43, 0xE5, 0x6E, 0x80, 0x2D,\n0xEA, 0xB4, 0x43, 0xE3, 0xEE, 0x88, 0x1A, 0x38, 0x40, 0x62, 0xAD, 0x06, 0x10, 0xED, 0x71, 0x4B,\n0x18, 0x69, 0xEC, 0xEC, 0xA2, 0xDD, 0x01, 0x7C, 0x91, 0x31, 0x80, 0x85, 0x7F, 0x9A, 0x06, 0x29,\n0x47, 0x3C, 0xFE, 0xF5, 0x1E, 0xF0, 0xDB, 0xCF, 0xB4, 0x41, 0xE6, 0xFF, 0xE8, 0xE5, 0x07, 0xC1,\n0x21, 0xFF, 0x50, 0x38, 0xFF, 0x87, 0xB3, 0xE8, 0xEE, 0x00, 0xC1, 0xFF, 0xD5, 0x8A, 0x5B, 0xC2,\n0x74, 0x26, 0x00, 0x39, 0x16, 0x8A, 0x3F, 0x04, 0x2F, 0xA6, 0xDF, 0x12, 0x1F, 0x39, 0xF8, 0xD1,\n0x69, 0xBE, 0x19, 0x84, 0x6F, 0x84, 0xE3, 0xE7, 0x8C, 0x9C, 0x9D, 0xBA, 0xBF, 0x42, 0x25, 0x1F,\n0x6A, 0x72, 0x39, 0x8D, 0x16, 0x0D, 0xFE, 0x16, 0x95, 0x80, 0x70, 0x0F, 0xFF, 0xB7, 0x9C, 0x21,\n0x7D, 0x55, 0xF7, 0xC7, 0xFC, 0x9F, 0xC6, 0x5F, 0x8A, 0xF9, 0x17, 0x13, 0x90, 0x0B, 0x2A, 0x9C,\n0x06, 0xE4, 0x2A, 0xE5, 0xA2, 0x3D, 0x6F, 0x1D, 0xA0, 0x0D, 0x6D, 0xCE, 0x01, 0xE0, 0x26, 0xE6,\n0xFF, 0x76, 0x03, 0xFE, 0x51, 0x26, 0xA7, 0x82, 0x7B, 0x2B, 0x00, 0x8F, 0x75, 0x00, 0x5C, 0xC3,\n0x7A, 0x22, 0xE9, 0x50, 0xEB, 0xE1, 0x04, 0xF8, 0x1A, 0xEA, 0xA9, 0xFF, 0x6B, 0xD8, 0xB7, 0xB9,\n0x79, 0x40, 0x21, 0x9E, 0x51, 0xCF, 0xEE, 0x05, 0x2D, 0x3C, 0x4C, 0x4B, 0x9D, 0x9F, 0x20, 0x50,\n0xD8, 0x27, 0x3E, 0xB0, 0xEF, 0x01, 0x0D, 0x7D, 0x80, 0xB0, 0x7F, 0x3B, 0x84, 0xB9, 0x1C, 0x0D,\n0x06, 0x3B, 0xE2, 0x12, 0xA5, 0x1B, 0xF0, 0x0F, 0xF5, 0x17, 0x00, 0x9A, 0x70, 0x16, 0xBD, 0xF1,\n0x2F, 0x13, 0x80, 0x4F, 0x83, 0x44, 0x48, 0x01, 0x5E, 0xCB, 0x3F, 0xB3, 0x80, 0xEC, 0x96, 0x30,\n0x4D, 0xF9, 0x52, 0x24, 0x2F, 0x48, 0xB6, 0xEA, 0x00, 0xED, 0x4E, 0xD0, 0x12, 0x45, 0xCE, 0x01,\n0x42, 0x44, 0xAF, 0xD0, 0xFF, 0xE1, 0x01, 0xF1, 0xB3, 0xDA, 0xA5, 0xE8, 0x02, 0x98, 0xE6, 0xB8,\n0xEC, 0x48, 0x5E, 0x4F, 0x39, 0xB4, 0x8C, 0x2E, 0x86, 0x69, 0xDF, 0x27, 0x8D, 0xD1, 0x01, 0x30,\n0x3A, 0x2C, 0xC7, 0xF0, 0x00, 0x58, 0x80, 0x17, 0x3B, 0x40, 0xF8, 0x57, 0x19, 0xA8, 0x35, 0x8B,\n0x61, 0x64, 0x67, 0x53, 0x7B, 0x69, 0x1F, 0xAD, 0x1F, 0x80, 0xBB, 0x8D, 0x03, 0x24, 0x15, 0x1C,\n0x1A, 0x40, 0x00, 0x98, 0x32, 0x81, 0xC1, 0xFA, 0x3F, 0x20, 0xC8, 0xA8, 0xD7, 0xA0, 0x07, 0xFE,\n0x9C, 0x94, 0x7D, 0xDE, 0x00, 0x1A, 0xFB, 0x1E, 0x3D, 0x13, 0x38, 0x6E, 0x00, 0xD1, 0x4F, 0x44,\n0x4D, 0x00, 0x9B, 0xFF, 0x43, 0x17, 0x11, 0xFF, 0xC4, 0xFF, 0xE9, 0x18, 0x58, 0xFB, 0x89, 0xAF,\n0xC5, 0x04, 0x84, 0xA7, 0x9D, 0x0C, 0xF0, 0xBC, 0x84, 0x0A, 0x04, 0xF6, 0xF9, 0x47, 0xB1, 0x2A,\n0xE2, 0x1F, 0xEA, 0xCF, 0xFF, 0x11, 0x55, 0x03, 0xA9, 0x48, 0xF8, 0xF7, 0x14, 0xBB, 0x02, 0x01,\n0xC9, 0x81, 0x30, 0xFF, 0xD7, 0x1C, 0x4B, 0x37, 0x09, 0x58, 0x17, 0x11, 0x23, 0xC0, 0x12, 0xF2,\n0x0F, 0x81, 0x3F, 0xE0, 0xC6, 0xED, 0xA0, 0xB9, 0x27, 0x6A, 0x73, 0x53, 0x40, 0xDA, 0x35, 0x7C,\n0x2D, 0xA6, 0xEA, 0x6E, 0xDC, 0xFF, 0x79, 0x0F, 0x88, 0x01, 0xD4, 0x97, 0x15, 0x3D, 0x1D, 0x21,\n0x20, 0xD9, 0x7A, 0x14, 0x18, 0xC0, 0xD8, 0x03, 0x72, 0x61, 0x85, 0x14, 0xE4, 0x2F, 0xB5, 0xD6,\n0xDA, 0xD8, 0x94, 0xB6, 0x39, 0x40, 0xBE, 0x15, 0x6E, 0xC2, 0xEC, 0xDF, 0xDB, 0x53, 0x1D, 0x20,\n0x9D, 0xFE, 0xFC, 0xDF, 0xE3, 0x3D, 0x60, 0xF7, 0x5E, 0xD0, 0x1C, 0x35, 0x20, 0x1F, 0x95, 0xB2,\n0x0E, 0xF9, 0x3C, 0xB0, 0xF4, 0x7A, 0xB1, 0x21, 0x0B, 0x68, 0x99, 0x60, 0x82, 0xFC, 0xEF, 0x84,\n0xFD, 0x1F, 0x6A, 0xFD, 0xA4, 0x23, 0x6D, 0xDF, 0x03, 0x32, 0xF4, 0x55, 0x59, 0xA7, 0x7F, 0x4F,\n0xE8, 0xB9, 0x06, 0x0A, 0xF1, 0x47, 0x15, 0xF2, 0x0F, 0x45, 0xFE, 0x8F, 0xEC, 0xE2, 0x50, 0xF6,\n0x71, 0xC6, 0xF0, 0x17, 0xBB, 0x32, 0xEC, 0x01, 0x2D, 0xFF, 0xDB, 0x1C, 0x78, 0xC0, 0x5A, 0x58,\n0x00, 0xE3, 0x15, 0xF2, 0x0F, 0x61, 0xED, 0x98, 0xDA, 0x53, 0xEC, 0xC9, 0xA1, 0x8D, 0x82, 0x50,\n0xBB, 0x40, 0x92, 0x0C, 0xF2, 0xB0, 0x32, 0xFC, 0x63, 0x1E, 0x10, 0x9C, 0xCB, 0x09, 0xFE, 0x6F,\n0xD0, 0x03, 0x9E, 0xF9, 0x05, 0xD0, 0xFA, 0x6A, 0xEA, 0x61, 0x1A, 0xF4, 0xE0, 0xED, 0xFB, 0x84,\n0x07, 0x0C, 0xFC, 0x5F, 0xE0, 0x01, 0xB9, 0xAA, 0x28, 0x81, 0x01, 0x04, 0x7F, 0xBD, 0x05, 0xD1,\n0xA7, 0x00, 0x70, 0x5D, 0x82, 0x78, 0x38, 0x40, 0xE1, 0x5A, 0xE4, 0xFF, 0x28, 0x79, 0x05, 0x0B,\n0x60, 0x00, 0x21, 0x96, 0x8F, 0x05, 0x30, 0x76, 0xD3, 0xD3, 0x84, 0x03, 0x24, 0xFF, 0xF1, 0xE8,\n0x4C, 0x48, 0x64, 0x00, 0x41, 0x20, 0xB3, 0x7F, 0xDA, 0xEC, 0xE1, 0xFF, 0x52, 0x16, 0xF0, 0xC8,\n0x56, 0x00, 0x6A, 0x47, 0x1B, 0x3D, 0x8B, 0x0D, 0xA0, 0xB5, 0x3D, 0xFF, 0x67, 0x22, 0xC1, 0x96,\n0x74, 0x80, 0xA2, 0x98, 0x7F, 0xC8, 0xDB, 0x04, 0xFD, 0x28, 0x11, 0x2C, 0x86, 0xF1, 0x04, 0x2C,\n0xFC, 0xC3, 0xA5, 0xD0, 0x72, 0x67, 0xAC, 0xE1, 0xFC, 0x07, 0xC7, 0xD2, 0xAD, 0x04, 0xBC, 0x32,\n0xFE, 0x79, 0x45, 0xFC, 0x43, 0xEE, 0xBE, 0xA8, 0xB8, 0x3F, 0xCD, 0x02, 0x5B, 0xB4, 0x5B, 0xE2,\n0x98, 0x03, 0xCC, 0x13, 0x70, 0xF0, 0x97, 0xF5, 0x5B, 0x42, 0xD8, 0x00, 0xE2, 0x8F, 0xCE, 0x06,\n0x10, 0x64, 0x20, 0x1C, 0xF2, 0x80, 0x80, 0x6F, 0xBB, 0x91, 0x27, 0xA0, 0x87, 0x5F, 0xD5, 0x70,\n0xFE, 0x23, 0x44, 0x20, 0xF8, 0xD3, 0x03, 0x08, 0xF6, 0x74, 0x5E, 0xF4, 0xD6, 0x9A, 0xFD, 0xDF,\n0x6E, 0x2D, 0xB4, 0x5A, 0x75, 0x00, 0xF8, 0xCF, 0x3C, 0xE0, 0x90, 0xFF, 0x23, 0xF0, 0x7F, 0x20,\n0x50, 0xA2, 0x23, 0x2C, 0x60, 0xDF, 0x01, 0x7E, 0xB1, 0x69, 0x0F, 0xB8, 0xA7, 0x35, 0x5F, 0x03,\n0xB2, 0x77, 0x31, 0xD1, 0xFF, 0xA9, 0xEB, 0xAB, 0xDC, 0x93, 0x14, 0x88, 0x9E, 0xB3, 0x1C, 0xD0,\n0xF9, 0x3F, 0xD8, 0x47, 0xF3, 0x91, 0x57, 0xFB, 0xD7, 0x94, 0x93, 0x10, 0x7F, 0x74, 0x23, 0xFE,\n0xA1, 0xCE, 0x06, 0x10, 0xC4, 0xC7, 0x6B, 0x90, 0x7F, 0xD8, 0x14, 0x5A, 0x4F, 0x40, 0x3E, 0xFC,\n0xCE, 0x03, 0x42, 0x3E, 0x55, 0x9F, 0x7F, 0x77, 0x21, 0xFF, 0x20, 0xD5, 0xDF, 0xB1, 0x86, 0x07,\n0x34, 0xF0, 0x99, 0xFF, 0x93, 0x1A, 0x4A, 0xE2, 0x05, 0xBB, 0xCA, 0xF0, 0x0F, 0x02, 0x62, 0x03,\n0x4B, 0xE9, 0xFD, 0xFB, 0x6D, 0x31, 0x8C, 0xF3, 0x7F, 0x78, 0xC0, 0xFE, 0x72, 0x40, 0x16, 0x40,\n0x03, 0xC2, 0x87, 0xD8, 0xEA, 0xF2, 0xCF, 0x63, 0x30, 0xB0, 0x7F, 0x94, 0x01, 0x35, 0xF8, 0x03,\n0x82, 0x03, 0x1E, 0xF0, 0x08, 0x00, 0xAE, 0x4B, 0x20, 0x50, 0x1B, 0x4E, 0x52, 0xF6, 0x6F, 0xFA,\n0x3C, 0xA0, 0xBF, 0x07, 0xAA, 0x1F, 0x02, 0x83, 0x3F, 0x55, 0x06, 0x82, 0xAB, 0xFB, 0xDF, 0x3A,\n0x24, 0x94, 0x92, 0x57, 0xC6, 0x00, 0xCA, 0xE3, 0x7B, 0x78, 0x3F, 0x0D, 0x36, 0x00, 0xC7, 0x16,\n0x50, 0xF7, 0xFF, 0xE2, 0x01, 0xB5, 0x2B, 0x1D, 0x39, 0xEF, 0xFB, 0x3F, 0xF0, 0x47, 0x2A, 0x78,\n0x08, 0x7E, 0xB4, 0x56, 0x79, 0xFC, 0x75, 0x11, 0x18, 0xF2, 0x0F, 0xB9, 0x04, 0x70, 0xC7, 0x01,\n0x96, 0xF0, 0xFC, 0x03, 0x7B, 0x5A, 0x61, 0x56, 0xDC, 0x06, 0xB8, 0xEE, 0xC7, 0x5F, 0x11, 0xC1,\n0x40, 0x18, 0xA4, 0xF8, 0xB1, 0x65, 0x8A, 0x7F, 0x78, 0xC0, 0x46, 0x06, 0xBE, 0x22, 0x73, 0x7F,\n0x98, 0x40, 0x20, 0x59, 0x9A, 0x31, 0x45, 0x03, 0x60, 0x44, 0x1A, 0xA4, 0xFA, 0xBF, 0x1E, 0x00,\n0x5D, 0x22, 0xC4, 0xFC, 0x9F, 0x33, 0x81, 0x7E, 0x4B, 0x48, 0x03, 0xBE, 0x56, 0x5B, 0x51, 0x02,\n0x04, 0x85, 0xFC, 0xEB, 0xE7, 0x82, 0x1B, 0xEC, 0x59, 0x9F, 0xB6, 0xE1, 0x5F, 0x1E, 0x80, 0x39,\n0xFF, 0xE7, 0x9C, 0x1F, 0x25, 0xE3, 0xFF, 0x28, 0x59, 0x39, 0x00, 0xFA, 0x21, 0x30, 0xB5, 0x55,\n0xAC, 0x7F, 0xE9, 0xD0, 0x6F, 0xE5, 0x6B, 0x81, 0x01, 0x1D, 0x2D, 0xFC, 0xDB, 0x84, 0x98, 0x01,\n0x9C, 0x7A, 0x0F, 0x54, 0x81, 0x9E, 0xAD, 0xFF, 0x2B, 0xD5, 0x83, 0x0B, 0xB4, 0xF3, 0x73, 0xE7,\n0xFF, 0x28, 0xA5, 0xAA, 0x8D, 0x1C, 0xED, 0xF8, 0x97, 0xB5, 0x2F, 0x7E, 0x68, 0x91, 0x75, 0x80,\n0xA2, 0x3C, 0x00, 0xDD, 0x02, 0x98, 0x41, 0x07, 0xA8, 0xF2, 0x09, 0x90, 0xF6, 0x33, 0x8A, 0x58,\n0x0C, 0xC3, 0x06, 0x90, 0xCE, 0xC1, 0xD7, 0xA2, 0x93, 0x00, 0xCE, 0x78, 0xC0, 0x51, 0x50, 0xAD,\n0xDC, 0xDA, 0x5E, 0xD1, 0x87, 0x03, 0xD4, 0x73, 0xA6, 0x01, 0xDB, 0x91, 0xF0, 0xA8, 0x22, 0xFF,\n0x87, 0x6C, 0x93, 0x8B, 0xD4, 0xF8, 0xBF, 0x41, 0x04, 0xBA, 0x0D, 0x20, 0xDE, 0x02, 0x6A, 0x0D,\n0x01, 0xD9, 0x00, 0xE7, 0x1D, 0x20, 0x1E, 0x30, 0xF0, 0x7F, 0x87, 0x56, 0xBB, 0x05, 0x30, 0xD3,\n0x06, 0xC0, 0xD4, 0x24, 0xED, 0xE6, 0x9E, 0x7F, 0xC9, 0x21, 0x70, 0xF2, 0xE7, 0x6E, 0xEE, 0xAF,\n0x29, 0xC7, 0x79, 0x07, 0xF8, 0x68, 0x0B, 0xC8, 0xB2, 0xBF, 0x06, 0x82, 0xF5, 0x51, 0x6E, 0x87,\n0x10, 0xA8, 0x9D, 0x03, 0x14, 0xCE, 0x75, 0xB3, 0x20, 0x4F, 0xD6, 0x69, 0x00, 0xD1, 0xDE, 0x5F,\n0x36, 0xB0, 0x73, 0x07, 0xC0, 0x8B, 0x12, 0x5E, 0xA4, 0x7D, 0x6B, 0xEE, 0xE3, 0x54, 0x4F, 0xE5,\n0x28, 0xE7, 0xA7, 0x63, 0xFE, 0x0F, 0x0B, 0xE8, 0x53, 0xC1, 0x73, 0x2C, 0x9F, 0x77, 0x82, 0x8E,\n0x7E, 0x0E, 0x81, 0x94, 0x88, 0x7F, 0xA8, 0x4D, 0x00, 0x7B, 0x07, 0xC8, 0x43, 0x10, 0xD0, 0x36,\n0x80, 0xB4, 0xC3, 0x34, 0xFA, 0x8C, 0x82, 0xFB, 0x13, 0x80, 0x6C, 0x09, 0xF1, 0x1B, 0xE0, 0x62,\n0x0F, 0xF8, 0x32, 0x52, 0xA5, 0x1A, 0xDB, 0x7F, 0x99, 0x03, 0x74, 0xD3, 0x80, 0x90, 0xF2, 0x65,\n0xA0, 0x8C, 0xFF, 0x83, 0x80, 0x06, 0xC1, 0xE5, 0x28, 0x00, 0x97, 0x8E, 0x7F, 0xBC, 0x8E, 0x74,\n0xDD, 0x96, 0x90, 0x15, 0xF0, 0x21, 0xB7, 0x25, 0x64, 0x18, 0x7D, 0x28, 0xE2, 0x1F, 0xA5, 0xB3,\n0x01, 0xCE, 0x6A, 0xD5, 0xC0, 0x9D, 0x61, 0xEC, 0x9A, 0x7F, 0x2B, 0xC3, 0xBF, 0x34, 0x24, 0x71,\n0x7E, 0x7E, 0x14, 0x9C, 0x35, 0x80, 0x8F, 0x5E, 0x11, 0x6D, 0x3B, 0xE0, 0x38, 0x2C, 0xE8, 0xE3,\n0xFF, 0xCA, 0xD1, 0x91, 0x5B, 0x06, 0x48, 0xC7, 0x5A, 0x1E, 0xDE, 0x90, 0xF6, 0x2C, 0xFF, 0x3B,\n0xE9, 0x8B, 0xE0, 0xEA, 0x84, 0x5F, 0x69, 0xE4, 0x90, 0x13, 0x68, 0xC8, 0xDD, 0x01, 0x07, 0x0C,\n0x60, 0x15, 0x7D, 0x0C, 0x20, 0x49, 0x0F, 0xED, 0xD6, 0x9A, 0x36, 0x1C, 0x00, 0x73, 0x16, 0xF2,\n0x0F, 0x35, 0x0B, 0x60, 0xBA, 0x0E, 0x50, 0x35, 0xEA, 0xFF, 0x38, 0x94, 0x80, 0x24, 0x80, 0x03,\n0x02, 0x2E, 0xB8, 0x33, 0x02, 0x0A, 0x08, 0xF8, 0x32, 0x14, 0x0E, 0x50, 0x73, 0xBF, 0x40, 0xAF,\n0x32, 0xD1, 0xED, 0x8B, 0x53, 0xFF, 0x17, 0x2A, 0xC5, 0x3F, 0xFD, 0x91, 0xE1, 0x8F, 0x04, 0x48,\n0xF7, 0x80, 0x7F, 0xE0, 0xCE, 0xBF, 0xBC, 0x10, 0xD0, 0x2D, 0x80, 0x06, 0x84, 0x04, 0x04, 0x44,\n0x5D, 0x0F, 0x08, 0xFF, 0xB2, 0xF8, 0x73, 0xB3, 0x7F, 0x5C, 0xBA, 0x78, 0x40, 0xFC, 0x1F, 0x0E,\n0x70, 0x2D, 0x23, 0xE0, 0x96, 0x7A, 0x1E, 0x7F, 0xC7, 0x39, 0x03, 0xF8, 0xB8, 0x3D, 0x71, 0xA5,\n0x75, 0x0B, 0x00, 0x3D, 0x08, 0xB5, 0x4A, 0x89, 0x5B, 0x03, 0xAE, 0xE4, 0x7E, 0xAD, 0xA5, 0x3F,\n0x45, 0x18, 0xC0, 0xD8, 0x01, 0xEA, 0x1C, 0x20, 0xFE, 0x2F, 0x94, 0x1A, 0xBD, 0x9A, 0xFA, 0x68,\n0xD8, 0xC7, 0xAE, 0x90, 0xAE, 0x01, 0xF4, 0x1C, 0xE4, 0x06, 0xD0, 0x00, 0x4F, 0x0E, 0xAB, 0x39,\n0x6B, 0xF8, 0x37, 0x8E, 0x40, 0xF8, 0x17, 0x8A, 0x05, 0x30, 0x7D, 0x07, 0xA8, 0xB1, 0xB5, 0x0D,\n0xFF, 0x9A, 0x8F, 0x26, 0x22, 0x17, 0xBC, 0x74, 0x1B, 0x40, 0xC6, 0x72, 0xC1, 0xF0, 0x2F, 0x26,\n0x20, 0x00, 0x8C, 0x2D, 0x20, 0x49, 0x60, 0xA6, 0x00, 0x09, 0x7B, 0xD4, 0x6E, 0x8C, 0x9A, 0x10,\n0xFC, 0x8B, 0xC4, 0x0D, 0x10, 0x46, 0x5F, 0x01, 0x79, 0x81, 0xB8, 0x03, 0xAA, 0xCA, 0x0F, 0x81,\n0xF1, 0x80, 0x15, 0x80, 0x0E, 0x7C, 0x5E, 0xDD, 0xFC, 0xAF, 0xD5, 0x08, 0xFE, 0x05, 0x08, 0x04,\n0x82, 0x18, 0x3E, 0xAE, 0xD2, 0xB6, 0x63, 0xE2, 0x8A, 0x7F, 0x2B, 0x4D, 0xBF, 0xD8, 0xFD, 0x29,\n0x03, 0xBB, 0x08, 0x74, 0xEE, 0x6F, 0x4D, 0x1E, 0xB0, 0xFD, 0x2E, 0x74, 0x1F, 0xB0, 0x90, 0x2F,\n0x02, 0x0E, 0xD5, 0xB2, 0xCF, 0xFA, 0x84, 0x88, 0xEE, 0x24, 0xBD, 0x10, 0xFE, 0xC5, 0x0A, 0x16,\n0x00, 0xF2, 0x13, 0xF2, 0xBF, 0xB6, 0xF6, 0xAF, 0xF4, 0x05, 0x77, 0x78, 0x40, 0x6C, 0xE1, 0x39,\n0xFE, 0x2F, 0xB2, 0x80, 0x6C, 0x00, 0x9E, 0x77, 0x43, 0x05, 0xFF, 0x3A, 0xF8, 0xA3, 0xC0, 0xBF,\n0x50, 0xC6, 0xBF, 0x9B, 0xC8, 0x01, 0x6E, 0xD5, 0x1B, 0x00, 0xCE, 0xDC, 0x52, 0x35, 0xEB, 0xF1,\n0x79, 0x65, 0x01, 0xE0, 0xB3, 0x88, 0x00, 0xCF, 0xAE, 0xE0, 0x5F, 0x82, 0x80, 0x57, 0x2F, 0x53,\n0x52, 0xA6, 0xD9, 0x06, 0x10, 0x6D, 0x6B, 0xAF, 0x14, 0x3C, 0x20, 0xA6, 0xF0, 0x65, 0x1A, 0x80,\n0xF0, 0x2F, 0xF6, 0x80, 0x2C, 0x80, 0xEE, 0x1F, 0x36, 0x0A, 0xE6, 0x75, 0xEC, 0xD8, 0x6B, 0x91,\n0xDD, 0x01, 0xA6, 0x21, 0x1F, 0xA7, 0xC4, 0x36, 0x03, 0xE0, 0x94, 0x07, 0x34, 0xBC, 0x65, 0x1C,\n0x60, 0x03, 0x3D, 0xAD, 0xA1, 0x1E, 0x3F, 0xC2, 0x00, 0x06, 0x0E, 0x30, 0x47, 0x41, 0xB0, 0x96,\n0x80, 0x64, 0x5E, 0x8A, 0xC0, 0x34, 0x05, 0x1F, 0x36, 0x00, 0x17, 0x08, 0x16, 0xD8, 0x49, 0xBD,\n0xAB, 0x8D, 0x15, 0xEB, 0x6B, 0xAB, 0x0B, 0x00, 0xA5, 0x48, 0xD5, 0x2D, 0x8A, 0x40, 0x89, 0x2F,\n0xB4, 0x7E, 0xF2, 0xC5, 0xD7, 0xD2, 0x97, 0xD0, 0x56, 0x1F, 0xE5, 0x91, 0x69, 0x06, 0x50, 0xD7,\n0xBA, 0xC4, 0x0E, 0xB0, 0x48, 0xAA, 0xB4, 0x24, 0xC9, 0xFB, 0xBC, 0x04, 0xB5, 0x85, 0x35, 0x5A,\n0x3F, 0xC0, 0xED, 0xBC, 0x2B, 0x48, 0xA8, 0x3B, 0x86, 0xE6, 0xDF, 0xCE, 0x4B, 0xF9, 0x48, 0xE3,\n0x5B, 0x3D, 0xE8, 0xE9, 0x0F, 0x7F, 0x9D, 0xFF, 0x5A, 0x00, 0xF8, 0x4E, 0x29, 0x7A, 0xAD, 0xEA,\n0x15, 0x4B, 0xB1, 0x96, 0xF2, 0x41, 0x79, 0xEC, 0xBD, 0x9D, 0x94, 0xEA, 0x37, 0x80, 0x8C, 0x39,\n0x40, 0x6E, 0x0F, 0xB8, 0xDD, 0xDC, 0x00, 0xC1, 0xE3, 0xCF, 0x6A, 0x9D, 0x05, 0x5C, 0x2C, 0x33,\n0xAA, 0x0B, 0x60, 0xEE, 0xA2, 0xB8, 0x13, 0x02, 0x5E, 0xDD, 0xFE, 0x90, 0x01, 0x95, 0xE6, 0x82,\n0x49, 0x78, 0x50, 0x8A, 0x09, 0xC4, 0x08, 0xCA, 0x23, 0x86, 0xBF, 0xDB, 0x14, 0x57, 0xE1, 0x5F,\n0x88, 0x6B, 0xF8, 0x17, 0x1C, 0x0B, 0x35, 0x80, 0xA0, 0xCF, 0xFF, 0x79, 0x51, 0x91, 0x0B, 0xDE,\n0x8E, 0x1C, 0x20, 0x1E, 0x30, 0x23, 0x08, 0x18, 0xC6, 0xBB, 0x7C, 0x11, 0x7A, 0xAD, 0xA5, 0x91,\n0x1E, 0x1D, 0x09, 0x39, 0x35, 0x03, 0x98, 0x03, 0xE0, 0x6E, 0xFA, 0x47, 0xC7, 0x66, 0xFF, 0x34,\n0xA4, 0x25, 0x44, 0xDA, 0x2B, 0x4F, 0xCA, 0x6B, 0xC2, 0x9E, 0xB8, 0x63, 0xB5, 0x7F, 0x52, 0x04,\n0x77, 0xD2, 0xD4, 0x53, 0x31, 0x7E, 0x56, 0x6B, 0x25, 0x0E, 0x30, 0xAD, 0x2F, 0xB2, 0x31, 0x55,\n0x7B, 0x41, 0xA8, 0x2E, 0x26, 0xCC, 0xFF, 0xFD, 0x54, 0xDC, 0x9D, 0xA6, 0x3D, 0xA8, 0xB5, 0x68,\n0x9F, 0x5A, 0x53, 0x21, 0xE7, 0x59, 0x7D, 0x14, 0x88, 0x91, 0x71, 0xD6, 0x01, 0x6A, 0xEC, 0xA0,\n0xC8, 0x03, 0xB2, 0x03, 0xAE, 0xE3, 0x00, 0xF1, 0x80, 0x7C, 0x48, 0x69, 0x10, 0x24, 0x7C, 0x48,\n0x80, 0x44, 0xAA, 0x99, 0x10, 0x90, 0x12, 0x7A, 0xC0, 0x0A, 0xA2, 0xE0, 0x10, 0x0F, 0x18, 0xA8,\n0x4D, 0x03, 0xBF, 0x4C, 0x0A, 0xFE, 0x85, 0x26, 0x50, 0xF8, 0x17, 0x87, 0x54, 0x8C, 0x7F, 0xC1,\n0x1E, 0x6A, 0x1E, 0x16, 0xFB, 0xC7, 0x72, 0xA5, 0x11, 0x07, 0x78, 0xB3, 0xB5, 0xD5, 0x1F, 0xFF,\n0xFA, 0x4C, 0x08, 0x73, 0xCB, 0x7D, 0x19, 0xFE, 0xF2, 0x3A, 0x3F, 0x22, 0xDE, 0xDA, 0x1D, 0xD6,\n0xFB, 0xC3, 0x41, 0x91, 0x0A, 0xE4, 0xC9, 0x7F, 0x90, 0x29, 0x93, 0xF4, 0x24, 0x1B, 0x53, 0x74,\n0x7D, 0x1D, 0x97, 0xDA, 0xBE, 0xD0, 0xA0, 0x88, 0xB4, 0xE5, 0xB1, 0xFA, 0xA4, 0x17, 0x2F, 0x3E,\n0x4D, 0x95, 0x72, 0x7C, 0xFA, 0xE9, 0x8B, 0x6C, 0xC9, 0xEB, 0xBB, 0x6F, 0x8A, 0xBE, 0x93, 0xF2,\n0xE9, 0x37, 0xF4, 0xDB, 0x47, 0xA4, 0x29, 0x4F, 0x3C, 0x39, 0x39, 0x3D, 0xC9, 0xE9, 0xF3, 0xCF,\n0xBF, 0x94, 0x12, 0xC7, 0xE7, 0xA7, 0x07, 0x59, 0x7D, 0x79, 0x70, 0x98, 0x97, 0x7C, 0x82, 0xB6,\n0x32, 0x65, 0x6B, 0xBF, 0x1D, 0xFF, 0xB6, 0xAE, 0x05, 0xC9, 0x93, 0x96, 0x05, 0x00, 0x49, 0xDD,\n0xBE, 0x7A, 0x75, 0x9B, 0x8A, 0xAB, 0x57, 0xF7, 0xAF, 0x5F, 0xDF, 0x27, 0xE3, 0xF7, 0xBC, 0x5E,\n0xDF, 0x67, 0xFF, 0xA7, 0xAF, 0x5F, 0xDD, 0xD6, 0x5F, 0x26, 0x2A, 0xAF, 0x6E, 0xD3, 0xFF, 0xFE,\n0x67, 0xCB, 0xC1, 0xF5, 0x7F, 0xEE, 0x15, 0x56, 0x0B, 0xB8, 0x75, 0x73, 0xB3, 0x1D, 0x1F, 0x02,\n0xC1, 0xC3, 0xBC, 0x0E, 0xBE, 0x4C, 0x5F, 0x58, 0x9F, 0x71, 0xAD, 0x06, 0x71, 0xD2, 0x08, 0x00,\n0xE6, 0x04, 0x20, 0x9B, 0x99, 0xBF, 0x4D, 0x28, 0x0B, 0xB6, 0x42, 0xC0, 0x6B, 0x0B, 0x1A, 0xFA,\n0xED, 0x43, 0x79, 0xBD, 0x98, 0xA0, 0x34, 0xD5, 0xF2, 0x4F, 0xDC, 0x90, 0xBE, 0xC9, 0xEA, 0x53,\n0x41, 0xE0, 0x03, 0x09, 0x8D, 0x88, 0x7A, 0xD0, 0xE3, 0xE1, 0xCF, 0xF2, 0xFA, 0xE5, 0xF0, 0xF0,\n0x97, 0xC3, 0x03, 0x77, 0x20, 0x84, 0x95, 0x18, 0x14, 0x36, 0xE3, 0x70, 0xFF, 0xE9, 0xC7, 0x19,\n0x3D, 0xFD, 0x58, 0x00, 0x28, 0xC3, 0xC0, 0x54, 0x79, 0x75, 0x7F, 0xFF, 0x2A, 0x19, 0xAF, 0x7F,\n0xFB, 0xED, 0x75, 0x18, 0xF2, 0x24, 0xF8, 0x97, 0x11, 0xFF, 0xD7, 0xE8, 0xFF, 0x7B, 0xFF, 0xAA,\n0xA8, 0xFE, 0x32, 0xFD, 0x22, 0xF1, 0x4A, 0xB6, 0x01, 0x87, 0x51, 0xCA, 0xD5, 0xDD, 0xF2, 0xE9,\n0x4C, 0x5E, 0xB4, 0x30, 0xCA, 0x93, 0xF6, 0x4B, 0x36, 0x2A, 0xA7, 0x9B, 0x9B, 0xE4, 0x1F, 0xC1,\n0x9B, 0xC3, 0x83, 0x83, 0xCF, 0xD2, 0xFA, 0xFC, 0x24, 0x1B, 0x27, 0xCD, 0x65, 0xFE, 0x48, 0x00,\n0x1A, 0xF8, 0x36, 0xC2, 0x3F, 0x0C, 0x60, 0xA2, 0x48, 0x75, 0x0D, 0x02, 0xAD, 0xA1, 0x4F, 0xA3,\n0xFE, 0x6F, 0x83, 0x04, 0x8C, 0xE1, 0x67, 0x00, 0x4C, 0xC5, 0x44, 0xB0, 0xA5, 0xCA, 0x37, 0x02,\n0xC0, 0x93, 0x44, 0xF9, 0x46, 0xD1, 0x96, 0x52, 0x79, 0x5A, 0xB9, 0x00, 0x0F, 0xE2, 0x90, 0x67,\n0x15, 0x1D, 0x26, 0x75, 0xA3, 0x16, 0x30, 0x8E, 0xAD, 0x9B, 0xFD, 0xFD, 0xFD, 0xDC, 0x07, 0xB5,\n0xE4, 0x81, 0x97, 0xCB, 0xBB, 0x67, 0x89, 0xD0, 0xFC, 0x87, 0x20, 0x25, 0xA1, 0x82, 0x96, 0xFB,\n0x14, 0xA8, 0x84, 0x7F, 0xBF, 0x4D, 0xE3, 0x5F, 0xF2, 0xFF, 0x5B, 0x7E, 0x83, 0xFA, 0xCB, 0xDE,\n0xCB, 0xD1, 0x2B, 0xCA, 0xBF, 0x5B, 0x25, 0x60, 0x1C, 0xCF, 0x16, 0x67, 0x4B, 0x81, 0x9B, 0xBC,\n0xB4, 0x23, 0x87, 0xBE, 0xF2, 0xE5, 0x1D, 0xD8, 0xBE, 0xC9, 0xC5, 0xD6, 0x4D, 0xF6, 0xFD, 0x3F,\n0x28, 0x00, 0xCC, 0x85, 0x12, 0x30, 0xA9, 0x93, 0x42, 0x40, 0x89, 0x5A, 0x1E, 0xED, 0x00, 0x99,\n0xDC, 0x93, 0xEE, 0x66, 0x20, 0x08, 0xE6, 0xA2, 0x62, 0xBA, 0xB6, 0x86, 0x3E, 0x8D, 0x1C, 0x1B,\n0xF2, 0x80, 0x69, 0xAC, 0x01, 0xCA, 0xA8, 0x8C, 0x72, 0x4D, 0x8E, 0xA9, 0x04, 0x54, 0x00, 0x8A,\n0xE4, 0x0A, 0x88, 0x23, 0x4F, 0xC0, 0xCF, 0x54, 0x07, 0x99, 0x50, 0xE5, 0x2E, 0xFF, 0x12, 0x5B,\n0xB1, 0x07, 0x54, 0xFE, 0x89, 0xF4, 0x83, 0x3A, 0x56, 0x94, 0x7F, 0x67, 0x65, 0x9F, 0x6B, 0xF1,\n0x80, 0xA1, 0xFD, 0x5B, 0x3C, 0x2B, 0x7B, 0x3C, 0x84, 0x80, 0x49, 0xFE, 0x29, 0x01, 0x13, 0xFA,\n0xAD, 0x40, 0x2D, 0x8F, 0xBF, 0xF2, 0xEC, 0xD7, 0x29, 0xDD, 0x8B, 0x52, 0xBF, 0xEA, 0x2B, 0xB9,\n0x85, 0x83, 0xE0, 0x2D, 0x2C, 0x77, 0x8B, 0xCB, 0xF2, 0x6A, 0x7D, 0x3C, 0xCB, 0x18, 0xC0, 0xFD,\n0x22, 0x21, 0x60, 0x42, 0xFA, 0xC6, 0xA6, 0x74, 0x20, 0xCA, 0x12, 0xF0, 0xF3, 0x2C, 0x01, 0x4F,\n0x54, 0x5C, 0xE6, 0x8F, 0x06, 0xA0, 0x48, 0xB0, 0xB7, 0x49, 0xFC, 0xA5, 0xE2, 0x7A, 0xB7, 0xE2,\n0x4E, 0xA2, 0xE3, 0x00, 0x69, 0xA4, 0x6C, 0x82, 0x80, 0xD7, 0x39, 0xFC, 0xAD, 0x9A, 0x40, 0x2D,\n0xFD, 0x07, 0x03, 0xB5, 0x44, 0xCC, 0x84, 0x28, 0x47, 0xC0, 0x29, 0x00, 0x94, 0xF8, 0xC7, 0x00,\n0x3C, 0x70, 0x00, 0x4C, 0x7A, 0xC0, 0xED, 0x7D, 0xD1, 0xCF, 0xF2, 0x51, 0x0C, 0xF8, 0xF7, 0x74,\n0x59, 0x74, 0x76, 0xB6, 0xE0, 0xAE, 0xA0, 0xBD, 0xB2, 0x28, 0x98, 0xB8, 0x2A, 0xC2, 0x02, 0x06,\n0xFC, 0x53, 0x02, 0x8E, 0x16, 0xE3, 0x5F, 0x96, 0x80, 0x82, 0xCA, 0x0C, 0x01, 0xD5, 0xFF, 0xA9,\n0xEC, 0xF7, 0x19, 0xE7, 0xDF, 0x6D, 0x89, 0xAB, 0x45, 0xC8, 0xBF, 0x2B, 0xE5, 0xDF, 0xF2, 0x8C,\n0xD7, 0xAF, 0x5F, 0x7E, 0xDE, 0x57, 0xC9, 0x9B, 0x11, 0xFA, 0xBF, 0xFA, 0xC6, 0xA6, 0xF8, 0x97,\n0x44, 0xE0, 0x81, 0x5C, 0x7E, 0xE5, 0x48, 0xF1, 0x6F, 0x3D, 0x00, 0xC4, 0x01, 0x6A, 0xE7, 0x8D,\n0x32, 0xF0, 0x89, 0x1D, 0x60, 0x4F, 0x5B, 0xA9, 0x69, 0x00, 0xE1, 0xA6, 0x3C, 0x60, 0x6C, 0x02,\n0x47, 0xC6, 0xC4, 0xAE, 0x37, 0x5D, 0x29, 0xFE, 0xA5, 0x09, 0x68, 0xCA, 0xF1, 0xEF, 0x33, 0x39,\n0xC6, 0xAE, 0x55, 0x6B, 0x72, 0x16, 0x10, 0x00, 0x6E, 0x85, 0x0E, 0x70, 0x6B, 0xBF, 0xEA, 0xE7,\n0xF8, 0x93, 0x7A, 0x29, 0x9F, 0xE8, 0xE5, 0x65, 0x40, 0x40, 0xAD, 0x14, 0x80, 0xA9, 0x51, 0xF0,\n0xBD, 0xC9, 0x30, 0xD7, 0xAF, 0x05, 0x69, 0xA2, 0xAC, 0x01, 0x34, 0x0F, 0x38, 0xC6, 0x55, 0xF8,\n0x67, 0xA3, 0xE0, 0xC8, 0xFF, 0x49, 0x19, 0xC7, 0x9F, 0x7A, 0xE0, 0xB3, 0xB3, 0xA5, 0x10, 0xF0,\n0x72, 0xF4, 0x15, 0x7D, 0x0A, 0xFF, 0xF0, 0x80, 0x81, 0xFF, 0x5B, 0x3B, 0x00, 0xE5, 0xF2, 0x2B,\n0x91, 0x05, 0xA0, 0x6A, 0x3D, 0x0E, 0x50, 0x9A, 0xCD, 0xF1, 0xEF, 0x49, 0x02, 0x80, 0xCD, 0x80,\n0x17, 0x04, 0x62, 0x09, 0x69, 0xC8, 0xF0, 0x6E, 0xC6, 0x03, 0x26, 0xE8, 0x07, 0xE0, 0x86, 0x0C,\n0x20, 0xA7, 0xF6, 0xEC, 0x5A, 0x7F, 0x33, 0x74, 0x48, 0x99, 0x4A, 0x40, 0x14, 0x11, 0x10, 0x7D,\n0x1E, 0xCA, 0x2E, 0x3F, 0xC5, 0xDC, 0x38, 0x06, 0x4D, 0x09, 0xFE, 0x59, 0x44, 0x8E, 0xA2, 0xF8,\n0x3F, 0x53, 0xE4, 0x00, 0xD5, 0xD1, 0x48, 0x5C, 0x2E, 0xEE, 0x04, 0x73, 0xFD, 0xCF, 0xBF, 0x2C,\n0x6C, 0xA9, 0x5E, 0x29, 0xF6, 0x7F, 0xAF, 0x21, 0x60, 0x9F, 0x7E, 0xF8, 0x3F, 0x51, 0x8A, 0x7F,\n0x10, 0xB0, 0x4B, 0x55, 0xFC, 0x1F, 0x1E, 0x30, 0xF2, 0x7F, 0x72, 0xC8, 0x34, 0xE0, 0xA8, 0xFD,\n0x93, 0xDD, 0xC0, 0xFA, 0x52, 0x95, 0x57, 0x2C, 0xFA, 0xBB, 0x32, 0xE3, 0x1D, 0xD8, 0x8A, 0xFD,\n0x5F, 0x8D, 0x98, 0x7F, 0x28, 0xF4, 0x7F, 0x25, 0x72, 0x16, 0xF0, 0x04, 0xAD, 0xC7, 0x01, 0x6A,\n0x43, 0xD9, 0x84, 0x62, 0x00, 0xCA, 0x28, 0x58, 0xEA, 0xC6, 0x01, 0xD2, 0xC3, 0x08, 0x5A, 0x4C,\n0x1C, 0x05, 0x97, 0x92, 0x39, 0xAE, 0x43, 0x0B, 0xC8, 0x18, 0x18, 0x14, 0x3A, 0x47, 0xD8, 0x3C,\n0x23, 0x12, 0x3C, 0xCC, 0x10, 0x10, 0xC5, 0xFE, 0x0F, 0x25, 0xF0, 0x57, 0x04, 0x01, 0x3B, 0x21,\n0x05, 0xE5, 0xF8, 0x17, 0x7B, 0xC0, 0x9B, 0xED, 0x7D, 0x34, 0x1B, 0xFD, 0x98, 0xCE, 0xE4, 0xC3,\n0xAC, 0x21, 0x04, 0x14, 0x0F, 0xD4, 0x77, 0x80, 0x57, 0x86, 0xBF, 0xD2, 0x44, 0xAE, 0x4A, 0x04,\n0x01, 0x8D, 0x81, 0x72, 0xAC, 0xF4, 0x75, 0x48, 0x9B, 0x25, 0xA0, 0x3D, 0x0F, 0x0F, 0xD8, 0xAB,\n0x01, 0x60, 0xE8, 0x01, 0x8D, 0x7E, 0xD5, 0x03, 0x8E, 0xCD, 0x81, 0x0A, 0xFE, 0x34, 0x42, 0x02,\n0x2A, 0xFF, 0x62, 0x0B, 0x28, 0x3F, 0x2A, 0xF9, 0x0F, 0x22, 0xE2, 0x5F, 0x0C, 0xC0, 0x5A, 0x55,\n0xF8, 0x49, 0x15, 0x03, 0x10, 0xAD, 0xC1, 0x01, 0x82, 0xBF, 0x4D, 0x10, 0xF0, 0x49, 0x0C, 0x40,\n0xE8, 0x57, 0x54, 0xE7, 0x02, 0x41, 0x1E, 0x3D, 0x26, 0x00, 0xDF, 0xE0, 0x3C, 0x20, 0xFC, 0xB3,\n0x42, 0x45, 0xE8, 0x49, 0x86, 0x7B, 0x08, 0x85, 0xFC, 0x43, 0x11, 0xFE, 0xF2, 0x00, 0xC4, 0x01,\n0x32, 0x0A, 0x1E, 0xF3, 0x7F, 0xE1, 0x3C, 0xA0, 0xE2, 0x8F, 0xD8, 0x1A, 0x35, 0x15, 0xFB, 0xC8,\n0x72, 0xC1, 0x7D, 0xFE, 0x2D, 0xCF, 0x2C, 0xCE, 0x16, 0x23, 0x83, 0x60, 0xE5, 0x1F, 0xB0, 0x18,\n0x65, 0x4A, 0xF1, 0x7F, 0xC8, 0x70, 0x57, 0x05, 0x02, 0x6D, 0xFC, 0x8B, 0x92, 0xFE, 0xAF, 0xCE,\n0x03, 0x02, 0x54, 0xFA, 0xB5, 0x69, 0xF8, 0x37, 0xFA, 0x9B, 0x56, 0xFE, 0xD9, 0x28, 0x78, 0x94,\n0x7F, 0xFA, 0x67, 0x42, 0x43, 0x3D, 0xE0, 0x2C, 0xE4, 0x1F, 0x04, 0xEC, 0xCF, 0xD5, 0x8A, 0xFF,\n0x23, 0x22, 0xFE, 0xA1, 0x96, 0x79, 0x6D, 0x48, 0xFE, 0x43, 0x23, 0x43, 0xC0, 0x93, 0xF5, 0x01,\n0xD0, 0xD6, 0x42, 0xEF, 0xBA, 0xB2, 0x6E, 0x45, 0x09, 0x10, 0xAD, 0x8C, 0x82, 0xF8, 0xBE, 0x21,\n0xFB, 0x47, 0x6C, 0xC0, 0x03, 0xC6, 0xA3, 0x60, 0xAD, 0x8C, 0x83, 0x34, 0xCE, 0x04, 0xF2, 0xAC,\n0x4E, 0x2E, 0xD8, 0x43, 0x30, 0xE3, 0x01, 0x51, 0x34, 0x0A, 0xCE, 0x13, 0xB0, 0x9A, 0x3F, 0x8A,\n0xBF, 0x4A, 0x6B, 0x55, 0x8E, 0x56, 0xA1, 0xFF, 0x23, 0x32, 0xFE, 0x0F, 0x0F, 0xD8, 0xCF, 0xFF,\n0x9E, 0x11, 0x97, 0xCB, 0x2E, 0x01, 0x17, 0xCF, 0x14, 0x7C, 0xB5, 0x04, 0x1E, 0xF0, 0xBE, 0x55,\n0x03, 0x28, 0xE8, 0x07, 0xFF, 0x92, 0x04, 0xE4, 0x59, 0x0F, 0x87, 0x03, 0x2A, 0xE7, 0xF7, 0x8D,\n0x02, 0xFF, 0xA7, 0xC5, 0xDA, 0xEE, 0x04, 0xC0, 0x55, 0xE1, 0x9F, 0x04, 0x1E, 0x70, 0xD6, 0x99,\n0x00, 0x84, 0x7F, 0x10, 0x30, 0xF0, 0x7F, 0x44, 0xC4, 0x3F, 0x14, 0x0C, 0x80, 0xFF, 0x5E, 0x62,\n0xFE, 0xA1, 0x7F, 0xE8, 0x00, 0x07, 0xD8, 0xB7, 0x4E, 0x00, 0x3E, 0x09, 0x09, 0x68, 0xF6, 0x0F,\n0xF5, 0x07, 0xC1, 0x1A, 0xD3, 0xF8, 0x87, 0x92, 0xFE, 0x6F, 0x94, 0x80, 0x45, 0x1D, 0xD3, 0xE7,\n0xF3, 0x20, 0x69, 0x01, 0xC5, 0xD8, 0x03, 0x4E, 0x06, 0x20, 0x8A, 0x12, 0xC0, 0x98, 0xC0, 0x7E,\n0x26, 0xC4, 0xAB, 0x77, 0xED, 0xC3, 0x3F, 0x08, 0x18, 0xCC, 0xFF, 0xA1, 0x59, 0x27, 0x17, 0x6C,\n0xFE, 0x8F, 0x90, 0xC5, 0x30, 0x83, 0x9F, 0xFF, 0x85, 0xCE, 0xFF, 0x5D, 0x81, 0x8B, 0x11, 0x02,\n0xDE, 0x3B, 0x31, 0x08, 0xB6, 0x9A, 0xF1, 0x2F, 0x0A, 0x08, 0xD8, 0x3C, 0x4D, 0x0B, 0xD8, 0x93,\n0x96, 0x04, 0xC8, 0xBD, 0xD3, 0xA8, 0xFF, 0xC3, 0x01, 0xEA, 0x3C, 0xE0, 0xA2, 0x33, 0x01, 0x58,\n0xFE, 0x40, 0xB4, 0x04, 0xEC, 0xD9, 0x3F, 0xF8, 0x17, 0x7A, 0xC0, 0x6D, 0xF7, 0xAE, 0x66, 0xF9,\n0x07, 0x01, 0x03, 0xFC, 0x05, 0x04, 0x3C, 0x59, 0x1F, 0x00, 0xDF, 0x27, 0x09, 0xB2, 0x71, 0x0F,\n0xF8, 0xA4, 0x47, 0x40, 0xC1, 0x9F, 0x14, 0x11, 0x63, 0x61, 0x88, 0xC7, 0x09, 0xB1, 0x61, 0x0F,\n0x78, 0xDD, 0xCD, 0x05, 0x7B, 0xFA, 0x35, 0xE7, 0x2E, 0x23, 0x12, 0x4F, 0xFC, 0x75, 0x1E, 0x4F,\n0xF0, 0x0F, 0x02, 0x06, 0xF8, 0x8B, 0x08, 0xD8, 0xA0, 0x4F, 0x0E, 0x51, 0x04, 0x40, 0x14, 0xFA,\n0x3F, 0xA2, 0xBF, 0x00, 0xD0, 0x13, 0xD0, 0xDB, 0x14, 0x19, 0xC1, 0x2D, 0x57, 0x01, 0x28, 0xCB,\n0x01, 0x9D, 0x09, 0xBA, 0x13, 0xFF, 0x87, 0xFD, 0x0B, 0x3C, 0x20, 0xE3, 0x5F, 0xA4, 0x58, 0x02,\n0x55, 0x3E, 0x01, 0x82, 0x32, 0xFC, 0xFB, 0xDD, 0x6A, 0x37, 0xAB, 0x88, 0xFF, 0xCB, 0x11, 0x10,\n0xF3, 0x07, 0xDA, 0x17, 0x03, 0xF8, 0x13, 0xFE, 0x19, 0xFE, 0x40, 0xE0, 0x99, 0x7F, 0x5D, 0xB5,\n0xD9, 0x37, 0x45, 0x1E, 0x10, 0xFE, 0x11, 0x09, 0xFE, 0x21, 0xF0, 0x67, 0x5D, 0x2D, 0x90, 0x2F,\n0x22, 0xE0, 0xC9, 0xFA, 0x00, 0x48, 0xFE, 0xC3, 0xC1, 0x6F, 0x6D, 0x00, 0x7C, 0x12, 0x8F, 0x82,\n0xAF, 0x5B, 0x07, 0xD8, 0xF0, 0xCF, 0x0D, 0x87, 0xAF, 0x63, 0x00, 0xC6, 0x1E, 0xF0, 0xCF, 0xEE,\n0xCE, 0x58, 0xB7, 0x91, 0x1B, 0x08, 0xC3, 0x79, 0x04, 0x03, 0xAE, 0x53, 0x04, 0x6A, 0x5C, 0x08,\n0x08, 0xD2, 0x18, 0x38, 0x04, 0x81, 0x4B, 0x39, 0x9D, 0xA1, 0x17, 0xB8, 0xE2, 0x7A, 0x17, 0x17,\n0x35, 0xAE, 0xDC, 0xB8, 0xB9, 0xEE, 0x94, 0x00, 0xAE, 0x94, 0xC6, 0x4D, 0x80, 0xE0, 0xE0, 0x22,\n0x4F, 0x18, 0xCE, 0x64, 0x27, 0x9F, 0xA8, 0xD9, 0xD9, 0x19, 0x39, 0xAB, 0x38, 0xCE, 0x3F, 0x5C,\n0x2E, 0x57, 0x16, 0x70, 0xB8, 0xB5, 0xF4, 0xF9, 0x27, 0x87, 0xE4, 0x5E, 0x27, 0xE7, 0x49, 0xFE,\n0x39, 0xFC, 0x79, 0x28, 0x62, 0x00, 0x41, 0x20, 0x6D, 0xC0, 0xE7, 0xC4, 0x0F, 0x12, 0xFC, 0xA5,\n0xC3, 0x80, 0x00, 0x30, 0x27, 0x20, 0xE8, 0x63, 0x14, 0x3A, 0x07, 0x20, 0xAA, 0xF2, 0x4F, 0xC6,\n0x01, 0xC7, 0x8C, 0xC5, 0x05, 0x42, 0x7C, 0x3B, 0xAD, 0xC8, 0x21, 0xF8, 0x73, 0x61, 0x79, 0x60,\n0xBE, 0xFC, 0xC3, 0x04, 0x40, 0x2B, 0x89, 0x07, 0x1C, 0xA3, 0xCF, 0x93, 0xCB, 0x80, 0x68, 0xA5,\n0xB3, 0xFA, 0x8A, 0x04, 0x3C, 0x78, 0x13, 0xA9, 0x60, 0xD0, 0x47, 0xFE, 0xA3, 0x48, 0xC0, 0x27,\n0xFC, 0x9F, 0x9C, 0xAC, 0x7C, 0x1C, 0x43, 0xE0, 0xDD, 0xAD, 0xBF, 0x55, 0x77, 0x23, 0xB6, 0x1A,\n0xFE, 0xF5, 0x0A, 0x13, 0xC0, 0x3E, 0xEA, 0xFC, 0x83, 0x7B, 0x1D, 0x02, 0xE1, 0x1E, 0x24, 0xAC,\n0xF0, 0x0F, 0x02, 0xFE, 0x93, 0x2E, 0xF0, 0xA9, 0xFD, 0x5F, 0xEE, 0x01, 0x91, 0xC0, 0x50, 0xAA,\n0xB8, 0x03, 0xEC, 0xA3, 0x2E, 0x18, 0x17, 0xC0, 0x0F, 0x0F, 0xE8, 0x11, 0x38, 0x4E, 0x3F, 0x47,\n0x3E, 0x60, 0x19, 0x03, 0x2E, 0x4E, 0x00, 0xA3, 0x3A, 0x01, 0x53, 0x03, 0x88, 0x26, 0xC7, 0xFF,\n0xFA, 0x0F, 0xE0, 0x32, 0xC3, 0x1F, 0x9A, 0xC4, 0x1F, 0x21, 0x5F, 0x9E, 0x78, 0x02, 0xA0, 0x27,\n0xE0, 0xA1, 0x53, 0x91, 0x05, 0x70, 0xB7, 0x3E, 0x58, 0x12, 0x02, 0x08, 0x85, 0x7F, 0xF0, 0x41,\n0xC4, 0x74, 0xC0, 0x84, 0x7F, 0xA4, 0x82, 0xBD, 0x03, 0x24, 0xFF, 0x9B, 0x03, 0xD0, 0xE3, 0x0F,\n0x02, 0xF6, 0x39, 0x10, 0xF8, 0x97, 0x10, 0xB0, 0xBD, 0x02, 0xCE, 0x5B, 0x50, 0x36, 0x7E, 0x18,\n0x80, 0x1B, 0xD4, 0xF7, 0x82, 0x17, 0xDE, 0x01, 0x5E, 0xA0, 0xCC, 0x03, 0xF2, 0xCB, 0x7C, 0x21,\n0x00, 0x9D, 0xFB, 0xC3, 0xFF, 0x75, 0xA5, 0xC2, 0x3F, 0xF4, 0x52, 0x00, 0x1A, 0xFD, 0x4E, 0xC6,\n0xBF, 0xAB, 0x2C, 0x11, 0x32, 0x78, 0x3E, 0x13, 0x57, 0x80, 0x2F, 0x40, 0xE0, 0x8B, 0x2D, 0xA0,\n0x54, 0xF9, 0x28, 0x60, 0x60, 0x00, 0x3D, 0x03, 0x83, 0x2E, 0x70, 0x71, 0xE8, 0xCF, 0xBF, 0x44,\n0xED, 0x23, 0xD2, 0xCA, 0xDB, 0xBF, 0x3A, 0x01, 0x0F, 0xD0, 0x47, 0x22, 0xE4, 0x00, 0x81, 0xF0,\n0xAF, 0x0C, 0x40, 0xEF, 0x01, 0x0F, 0x0D, 0xE0, 0x99, 0x19, 0x40, 0xAF, 0x43, 0x07, 0xB8, 0xA0,\n0xFF, 0x4B, 0x8C, 0x4F, 0x88, 0xDE, 0xEC, 0xAC, 0xE7, 0xDB, 0xD1, 0xA2, 0x29, 0xF5, 0x7F, 0xC8,\n0x1B, 0x40, 0xE5, 0x58, 0x15, 0x81, 0x87, 0x6F, 0x81, 0x80, 0xD8, 0x40, 0xFA, 0xBF, 0x45, 0x0F,\n0x38, 0xB0, 0xBC, 0x77, 0x80, 0x4A, 0x40, 0xB7, 0x00, 0x04, 0xFF, 0xD7, 0xC7, 0xB7, 0x8B, 0x60,\n0x01, 0x88, 0x13, 0x4B, 0x42, 0x22, 0xFF, 0x47, 0x64, 0xFC, 0x43, 0x2E, 0x13, 0x8C, 0xFF, 0xEB,\n0x0B, 0x0C, 0x44, 0xAB, 0x93, 0x00, 0x30, 0x2A, 0xF3, 0x2B, 0x4A, 0x81, 0x38, 0x07, 0xD8, 0x4E,\n0x1E, 0x7F, 0x41, 0xBC, 0x60, 0x32, 0x8C, 0x81, 0x70, 0xE4, 0x0C, 0x05, 0xF3, 0x0C, 0xC8, 0x48,\n0xE2, 0x17, 0xAB, 0x58, 0x24, 0x1F, 0xCA, 0x3D, 0x20, 0xF2, 0x04, 0x74, 0x00, 0x2C, 0x11, 0x70,\n0xB5, 0x67, 0xF9, 0xDC, 0xD9, 0x7D, 0x56, 0x43, 0x25, 0x00, 0x8C, 0xA6, 0x03, 0xC6, 0x1D, 0x60,\n0xBF, 0x24, 0xE4, 0x66, 0x48, 0x00, 0xE7, 0x04, 0xB4, 0x04, 0x70, 0xEF, 0x00, 0x99, 0x0C, 0xF3,\n0x54, 0xE3, 0x1F, 0xB3, 0x61, 0xAC, 0xB2, 0x4C, 0x46, 0x09, 0x80, 0xE3, 0xF8, 0xC3, 0x03, 0x92,\n0x01, 0x79, 0x8A, 0x35, 0xB6, 0x00, 0xA4, 0xC5, 0x81, 0x03, 0x64, 0x49, 0x08, 0x4F, 0xCC, 0xDC,\n0x58, 0xFE, 0xC3, 0x7B, 0x40, 0xBF, 0x00, 0x24, 0x54, 0xE6, 0xFF, 0x88, 0x84, 0x7F, 0x51, 0x22,\n0x84, 0x09, 0x80, 0xBE, 0x54, 0xF8, 0x87, 0x8E, 0x07, 0x20, 0xD6, 0xEF, 0x74, 0x04, 0xBC, 0x4A,\n0x08, 0xA8, 0x86, 0x6F, 0xDC, 0x01, 0xB2, 0x22, 0x24, 0xE6, 0x1F, 0xA7, 0xBA, 0x00, 0x9C, 0x3F,\n0xAB, 0xAE, 0x03, 0x0F, 0x08, 0xFD, 0xA0, 0x9D, 0xCB, 0xFC, 0x52, 0xCA, 0xF2, 0x09, 0x60, 0xAA,\n0x3E, 0x26, 0x94, 0xF2, 0x0F, 0xB9, 0xFC, 0x87, 0x2B, 0xDD, 0x92, 0x10, 0x3E, 0xAF, 0x53, 0x4A,\n0xF9, 0x47, 0x24, 0x09, 0xE0, 0x9E, 0x80, 0x20, 0x70, 0xC1, 0x02, 0x10, 0x1F, 0xF7, 0x1B, 0x3A,\n0xC1, 0x22, 0x67, 0x91, 0x62, 0x0F, 0xF8, 0x34, 0x21, 0x05, 0x94, 0x5F, 0x00, 0x57, 0x21, 0xA0,\n0x7F, 0x07, 0xD3, 0x01, 0xB1, 0x7F, 0xF0, 0x2F, 0xD0, 0xF8, 0x02, 0x10, 0xF7, 0xDF, 0xEB, 0x97,\n0x84, 0xE8, 0x04, 0x98, 0xFB, 0xE0, 0x66, 0xB5, 0x97, 0xDD, 0x02, 0x90, 0x58, 0x67, 0x89, 0xFF,\n0x23, 0x3C, 0xFF, 0xAA, 0x08, 0xB4, 0x2E, 0x08, 0x85, 0x66, 0x99, 0x7F, 0x2F, 0x4C, 0x82, 0x24,\n0x65, 0x7E, 0x79, 0x02, 0xC6, 0x0E, 0xB0, 0x89, 0x2C, 0xB0, 0x91, 0x2E, 0x8A, 0xBA, 0x40, 0x5D,\n0xD0, 0xFB, 0xA5, 0xED, 0x7B, 0xC0, 0xBE, 0xB2, 0x23, 0x1D, 0xFD, 0xCB, 0x73, 0xC0, 0xEE, 0x05,\n0xC7, 0xBF, 0xA2, 0x05, 0x44, 0x09, 0x01, 0x57, 0xA3, 0x7F, 0x79, 0xFD, 0x92, 0x10, 0xAD, 0x26,\n0x95, 0xF1, 0x8F, 0x38, 0xCB, 0xFC, 0x1F, 0x5A, 0xB8, 0x09, 0xD0, 0x29, 0x01, 0xB5, 0x02, 0x79,\n0xC0, 0x82, 0x06, 0xC3, 0x80, 0x24, 0x80, 0x03, 0x75, 0x93, 0x56, 0xE8, 0x00, 0xE7, 0x04, 0x0C,\n0xF1, 0xA7, 0xDA, 0xF7, 0x7F, 0x29, 0x00, 0xD1, 0x58, 0xAF, 0x1E, 0x16, 0x92, 0x05, 0xD2, 0x05,\n0xC0, 0x76, 0x6B, 0x32, 0x02, 0xC2, 0xBF, 0x78, 0x18, 0x90, 0x09, 0x80, 0x13, 0x51, 0xE7, 0x5F,\n0x37, 0x04, 0x68, 0x1F, 0x35, 0xAA, 0x7D, 0x04, 0x9E, 0x12, 0x80, 0x5F, 0x9F, 0x1E, 0x80, 0x57,\n0xD3, 0x04, 0x34, 0xBB, 0x17, 0x3A, 0x40, 0x26, 0x45, 0x1B, 0xFD, 0xA2, 0x38, 0x46, 0x71, 0xE7,\n0xD7, 0x3A, 0xC8, 0x78, 0xC0, 0xCE, 0x00, 0xC6, 0x0C, 0x74, 0x25, 0x80, 0x20, 0x13, 0xA2, 0x45,\n0x51, 0x93, 0x56, 0xCA, 0x3F, 0xB4, 0x22, 0x12, 0xF5, 0x06, 0x30, 0x40, 0x20, 0x4B, 0x42, 0x86,\n0xC8, 0x54, 0xC1, 0x1F, 0x4B, 0x42, 0xF0, 0x7F, 0x93, 0x62, 0xB8, 0x2A, 0xE2, 0x1F, 0x4B, 0x42,\n0xF0, 0x7F, 0x32, 0x01, 0x30, 0x70, 0x80, 0xFA, 0x83, 0x8C, 0x7F, 0xC8, 0x40, 0xD5, 0x2F, 0x00,\n0xCE, 0x09, 0xC8, 0xCB, 0x0E, 0x81, 0x5A, 0xE8, 0x02, 0x3F, 0x65, 0xC2, 0xFF, 0x91, 0xCF, 0x1E,\n0x37, 0xB8, 0xF0, 0x2F, 0xF2, 0x7F, 0x4C, 0x86, 0xC9, 0xF8, 0xE7, 0x53, 0xC1, 0x2C, 0x00, 0x09,\n0x22, 0xE7, 0x1F, 0xA2, 0x6F, 0xD1, 0x51, 0x4F, 0x6A, 0x0D, 0xA8, 0xE8, 0xF8, 0x37, 0x2F, 0x00,\n0x5F, 0xD9, 0x04, 0x92, 0xF2, 0x45, 0x4C, 0x8B, 0x69, 0x95, 0x75, 0x80, 0xD3, 0x38, 0x0A, 0x81,\n0x51, 0x1A, 0xD8, 0x7B, 0xC0, 0x7E, 0x50, 0x6F, 0xCA, 0x06, 0x96, 0xF3, 0x1F, 0x71, 0x66, 0x98,\n0x36, 0x67, 0xCF, 0xBF, 0xDC, 0x03, 0xA2, 0x94, 0x80, 0xB0, 0xCE, 0x95, 0xE1, 0x0C, 0x00, 0x33,\n0xA5, 0x00, 0x24, 0xDC, 0x04, 0xC0, 0x8C, 0x80, 0xF8, 0xBF, 0x28, 0xEE, 0x87, 0xE7, 0xBF, 0xED,\n0x06, 0xFE, 0x8D, 0x3A, 0x40, 0x37, 0x19, 0x26, 0xC5, 0x0F, 0xFD, 0x5F, 0xDF, 0x01, 0x8E, 0x09,\n0x38, 0x85, 0x3F, 0x55, 0x9A, 0x00, 0x41, 0xF8, 0x3F, 0x88, 0x17, 0xFC, 0xF7, 0xDC, 0x02, 0x90,\n0x20, 0x84, 0x80, 0x2C, 0x00, 0x49, 0x09, 0x88, 0xFF, 0xCB, 0xC2, 0xF3, 0x2F, 0x4F, 0x84, 0xC0,\n0x3A, 0x6A, 0x09, 0xBF, 0x31, 0xC2, 0x6A, 0x4E, 0x00, 0x7E, 0xFD, 0x6F, 0x00, 0xF0, 0x6A, 0x12,\n0x80, 0xCC, 0x7B, 0x76, 0x0E, 0x10, 0x63, 0xC8, 0x50, 0xE0, 0x68, 0xD0, 0x98, 0x75, 0x59, 0x30,\n0x1E, 0xD0, 0xE7, 0x7F, 0xE3, 0xCA, 0x68, 0x99, 0x88, 0xE9, 0x80, 0x8E, 0x7C, 0xAE, 0x05, 0x01,\n0x0B, 0x02, 0x80, 0x99, 0xDC, 0x0E, 0x08, 0xAE, 0xF0, 0x32, 0xFC, 0xCB, 0x04, 0xFF, 0x4A, 0x04,\n0x84, 0x7F, 0x49, 0x2F, 0x98, 0x05, 0x20, 0x13, 0xA1, 0x8B, 0xE2, 0x34, 0x01, 0x3C, 0x80, 0x2E,\n0x76, 0x80, 0x42, 0x40, 0x15, 0xFC, 0x8B, 0xD5, 0xF3, 0x6F, 0x12, 0x81, 0x8E, 0x7F, 0x21, 0x02,\n0xD9, 0x1B, 0x2B, 0xFF, 0xF7, 0x9F, 0xF0, 0x7F, 0xA2, 0xC8, 0x01, 0xB2, 0x24, 0x44, 0x17, 0x80,\n0x24, 0x08, 0xB4, 0x5C, 0x30, 0x13, 0x60, 0xD2, 0x5E, 0x70, 0xE1, 0xB7, 0x0A, 0xFF, 0x52, 0xC1,\n0x3F, 0x1C, 0x60, 0x57, 0x83, 0x41, 0xF8, 0x37, 0x23, 0x00, 0x21, 0x5C, 0x5E, 0x66, 0x16, 0x00,\n0x34, 0xB9, 0x65, 0x20, 0x76, 0x88, 0x0C, 0x81, 0x85, 0x38, 0x42, 0x61, 0x0F, 0xF8, 0xDA, 0x79,\n0xC0, 0xAE, 0xFF, 0x9B, 0x56, 0xA0, 0x30, 0x37, 0x7D, 0x34, 0xA8, 0x51, 0xEF, 0x01, 0x51, 0x4A,\n0xC0, 0x8A, 0xC0, 0xDF, 0xA4, 0x03, 0x24, 0x13, 0x52, 0x12, 0xFC, 0x4B, 0x03, 0xFF, 0x97, 0x49,\n0xF0, 0xC7, 0x04, 0xE8, 0x30, 0x64, 0x18, 0x70, 0xF3, 0x30, 0x2C, 0x80, 0x8B, 0x1D, 0x20, 0x1E,\n0xB0, 0xEB, 0xFF, 0xA6, 0xA9, 0xE0, 0x1C, 0x7F, 0x10, 0x30, 0xC3, 0x9F, 0x36, 0xF0, 0x7F, 0xA9,\n0xF0, 0x7F, 0x81, 0x03, 0x04, 0x86, 0x9B, 0x8F, 0xCA, 0xBF, 0x34, 0xEE, 0xEE, 0x98, 0x00, 0x5D,\n0x23, 0x60, 0xE9, 0xB7, 0x5A, 0xE5, 0x1F, 0xE3, 0x80, 0xA0, 0xAE, 0x67, 0xA0, 0x35, 0x20, 0xE0,\n0xEA, 0xED, 0x01, 0xF0, 0x6A, 0x12, 0x81, 0xBD, 0xEF, 0xB3, 0x2B, 0x3D, 0x69, 0x27, 0x58, 0x9B,\n0x85, 0xE4, 0x07, 0xCD, 0x13, 0x79, 0x40, 0xD2, 0x1C, 0x69, 0x25, 0x75, 0x5D, 0x91, 0xE3, 0xF3,\n0xA9, 0xE0, 0xA2, 0xC0, 0x5F, 0x2A, 0xF8, 0x97, 0x22, 0x10, 0xFE, 0x95, 0x08, 0x28, 0x3D, 0xA5,\n0x3C, 0xE4, 0x19, 0x70, 0x17, 0x99, 0x98, 0x0E, 0x08, 0xFF, 0xC2, 0x90, 0x61, 0x7F, 0xE9, 0x02,\n0x0B, 0x09, 0x42, 0x07, 0xA8, 0x21, 0xC2, 0xFF, 0x95, 0x3C, 0xA0, 0x50, 0xAD, 0x80, 0x40, 0xF8,\n0x17, 0x23, 0xD0, 0xEA, 0x8A, 0xFF, 0x63, 0x6F, 0x2C, 0xFA, 0xBF, 0x91, 0x03, 0x7C, 0xD0, 0x63,\n0xA3, 0x3B, 0xE0, 0x57, 0x10, 0xC8, 0x04, 0xE8, 0x54, 0x24, 0x80, 0xD3, 0x00, 0x80, 0xA9, 0xE0,\n0x5F, 0x37, 0x13, 0xBF, 0x3B, 0x41, 0xC0, 0xD5, 0x1B, 0x04, 0xE0, 0x34, 0x1C, 0x83, 0xDC, 0x2F,\n0x27, 0x39, 0xD8, 0x21, 0xBA, 0x14, 0x65, 0x99, 0xE7, 0xBB, 0xEE, 0xCE, 0xAD, 0xC2, 0x07, 0xA2,\n0x12, 0xF8, 0xAC, 0xD4, 0xE5, 0x0D, 0x5F, 0x9C, 0x0A, 0x2E, 0x6B, 0x55, 0x27, 0xA0, 0xA3, 0x5D,\n0x58, 0x96, 0x65, 0xC1, 0xBF, 0x24, 0xCE, 0xF0, 0x7F, 0xA9, 0xD8, 0x01, 0x26, 0x1B, 0xD9, 0xDA,\n0xB0, 0x01, 0x42, 0xE8, 0x00, 0x8D, 0x16, 0xF0, 0x2F, 0x95, 0x00, 0x2B, 0xC1, 0x1F, 0x04, 0x4C,\n0xF1, 0x67, 0x2D, 0xFC, 0x5F, 0x4E, 0x40, 0x9C, 0x5F, 0xEC, 0x00, 0xF5, 0xC0, 0xFF, 0xE5, 0x1E,\n0x10, 0xFE, 0x65, 0xFA, 0xC4, 0x04, 0xC0, 0x2C, 0xE0, 0x5F, 0x2E, 0x97, 0x73, 0xE3, 0x24, 0x15,\n0x05, 0xFE, 0xCD, 0x02, 0xC0, 0xD7, 0x37, 0x80, 0x4D, 0x41, 0xEE, 0x97, 0x93, 0x1E, 0x52, 0x63,\n0xF3, 0xE6, 0xF4, 0x80, 0xC1, 0x54, 0x40, 0x04, 0x11, 0x6B, 0x1D, 0x60, 0x06, 0x0B, 0xEB, 0xC2,\n0xE5, 0x71, 0xE5, 0xB5, 0x9E, 0x91, 0x7F, 0xC8, 0xE1, 0x2F, 0xF6, 0x81, 0xCB, 0xB2, 0xE0, 0x5F,\n0x16, 0x97, 0x17, 0x55, 0x9D, 0x2F, 0x6E, 0x37, 0xB5, 0x6F, 0xF5, 0xFD, 0xFD, 0x9D, 0xF0, 0x6F,\n0x72, 0x0C, 0x90, 0xE9, 0x80, 0x75, 0xFE, 0x28, 0xB7, 0x12, 0x04, 0x02, 0xC0, 0x9A, 0x03, 0x6C,\n0x6F, 0x2C, 0xFF, 0xFB, 0xCF, 0xBA, 0x00, 0x24, 0x77, 0x80, 0x8D, 0xFE, 0x8F, 0x9B, 0xFB, 0xFB,\n0x2A, 0x01, 0x3F, 0x9F, 0x5F, 0x54, 0x75, 0x59, 0x05, 0xE0, 0xD9, 0xF1, 0xFC, 0xA3, 0x68, 0xB8,\n0x4A, 0xCA, 0x6A, 0xF5, 0x7F, 0x73, 0x80, 0x0D, 0x6E, 0x81, 0x03, 0xEC, 0xC7, 0x01, 0xB5, 0x2F,\n0x5C, 0x8F, 0xBA, 0xC2, 0xAE, 0x2F, 0x27, 0x80, 0x38, 0xB7, 0x03, 0x8C, 0xBD, 0x1E, 0x8D, 0x35,\n0xD7, 0x27, 0x02, 0xA0, 0x9B, 0xFA, 0x9C, 0x3A, 0xC0, 0x5C, 0x74, 0x95, 0xB2, 0xB8, 0x28, 0xEB,\n0xB3, 0x19, 0xC0, 0x2C, 0xDA, 0xFB, 0x4A, 0x0E, 0x50, 0x5B, 0x8C, 0x00, 0xE6, 0x00, 0x7A, 0x03,\n0x0E, 0xD0, 0x2E, 0x36, 0x24, 0x40, 0xD2, 0x4C, 0xF0, 0x45, 0x59, 0xD5, 0x3F, 0x6B, 0x67, 0x9F,\n0x96, 0x75, 0x8D, 0x66, 0xDE, 0xF4, 0x70, 0x7F, 0x94, 0x57, 0xA2, 0x37, 0x96, 0x05, 0xBE, 0xCA,\n0x7A, 0xC0, 0xA1, 0x03, 0x1C, 0xD9, 0x1B, 0x70, 0x76, 0x0B, 0x08, 0xE3, 0x38, 0xF7, 0x33, 0x61,\n0xAE, 0xB3, 0x1E, 0xF0, 0x0B, 0x37, 0x01, 0x8C, 0x27, 0xBC, 0xCC, 0xD1, 0x03, 0x5E, 0x1F, 0x31,\n0x06, 0xE8, 0xFE, 0xF6, 0x06, 0xC3, 0x80, 0xCB, 0x3A, 0x01, 0xB7, 0xCB, 0xB3, 0x92, 0x07, 0x6C,\n0xFC, 0x2B, 0x13, 0x70, 0xC1, 0x18, 0x60, 0x16, 0x9B, 0x8D, 0x12, 0xF0, 0x31, 0x1F, 0x03, 0x7C,\n0xAC, 0x8F, 0x01, 0x6A, 0x12, 0x78, 0xBE, 0x31, 0x40, 0xF8, 0x07, 0x01, 0xF3, 0x2C, 0x48, 0x3E,\n0x06, 0xA8, 0x06, 0xF0, 0x41, 0x6E, 0x41, 0x95, 0x7F, 0x37, 0x8B, 0x32, 0xFF, 0xCA, 0x04, 0xBC,\n0xDC, 0xD6, 0xF9, 0x17, 0xEC, 0x81, 0x20, 0x15, 0x20, 0xD4, 0xD2, 0xF4, 0xF6, 0x00, 0xF8, 0xE2,\n0x31, 0x40, 0x9A, 0x2D, 0x72, 0x02, 0xBE, 0x08, 0x7F, 0xA4, 0x81, 0x3B, 0xD6, 0xF5, 0x17, 0xF0,\n0x31, 0xCB, 0x82, 0x74, 0x10, 0x7C, 0x89, 0xD6, 0xB1, 0x29, 0x5C, 0xCB, 0x2B, 0x55, 0xFC, 0xD5,\n0x01, 0x08, 0x01, 0xFD, 0xF4, 0x7B, 0x4A, 0xAB, 0x7E, 0x64, 0x1B, 0x84, 0x4C, 0x97, 0x2D, 0x8A,\n0x1E, 0xF0, 0xFC, 0xE2, 0x1C, 0x02, 0x66, 0x33, 0x01, 0x6F, 0xA6, 0x67, 0xC1, 0xB0, 0x22, 0x78,\n0xB3, 0x69, 0x1E, 0xF0, 0x4B, 0x9C, 0x05, 0x06, 0x1B, 0xC2, 0x94, 0x2F, 0x55, 0x00, 0x9E, 0x24,\n0x0B, 0x2C, 0xAA, 0xFA, 0x3F, 0x08, 0x18, 0x3A, 0x40, 0x69, 0x08, 0xFF, 0x9A, 0xEE, 0xEE, 0x0B,\n0x00, 0xBC, 0xBD, 0x91, 0xFB, 0x5A, 0x4D, 0x82, 0xB4, 0x52, 0x03, 0xE0, 0xB2, 0x4C, 0xC0, 0xEF,\n0x45, 0x93, 0xD3, 0xF0, 0xAD, 0x2D, 0x9A, 0x17, 0x80, 0xAF, 0x6F, 0x00, 0x1B, 0xFF, 0x30, 0x81,\n0xCE, 0x01, 0xD2, 0x2C, 0xCE, 0x83, 0x7E, 0xC9, 0x62, 0x90, 0xB8, 0x07, 0xEC, 0x4D, 0x60, 0xDD,\n0x00, 0x1E, 0x9F, 0x08, 0x89, 0x38, 0x68, 0x87, 0x46, 0x1D, 0x80, 0x35, 0x02, 0xBA, 0x8D, 0x50,\n0xA9, 0x28, 0x1A, 0x83, 0x6A, 0xFE, 0x4F, 0x3E, 0xFF, 0x97, 0x15, 0x02, 0x9E, 0x8B, 0xA9, 0x28,\n0x11, 0xF0, 0xF3, 0xCD, 0x8D, 0xAD, 0x83, 0xCB, 0xF8, 0xF7, 0xD7, 0xB7, 0x7F, 0x63, 0x2E, 0x2F,\n0x74, 0x80, 0xCA, 0xBF, 0x32, 0x01, 0xD9, 0x08, 0x75, 0xCE, 0x79, 0x80, 0x62, 0x00, 0x8B, 0x08,\n0x64, 0x1E, 0x74, 0xEC, 0x00, 0x35, 0xBE, 0x3C, 0xB4, 0xFF, 0xBD, 0xE8, 0xB6, 0xE0, 0x01, 0x17,\n0x8B, 0x32, 0x01, 0x3F, 0x69, 0x94, 0xFC, 0xDF, 0x72, 0x2B, 0x7F, 0x05, 0x6B, 0xFC, 0x8B, 0x1C,\n0x60, 0xC7, 0x45, 0xB6, 0x84, 0x79, 0x6B, 0x00, 0x9C, 0x14, 0x5B, 0x41, 0x4F, 0x3A, 0x40, 0x1E,\n0x91, 0x34, 0xAF, 0xFF, 0x73, 0x8B, 0xE1, 0xF6, 0x5F, 0xE1, 0x74, 0x74, 0x22, 0xB8, 0x4E, 0x40,\n0xF7, 0x50, 0x90, 0x18, 0x84, 0x16, 0x89, 0xDE, 0x09, 0xFE, 0x8E, 0x9D, 0x08, 0xED, 0x27, 0x9F,\n0xFA, 0x3D, 0x11, 0x44, 0x35, 0x0F, 0x28, 0x9F, 0x7F, 0x39, 0xA5, 0x4B, 0xA6, 0x1A, 0xFA, 0xB6,\n0x39, 0x01, 0x79, 0x4C, 0x7A, 0xC9, 0x03, 0x2A, 0xFF, 0x54, 0x8D, 0x04, 0xC1, 0x5A, 0x60, 0xAB,\n0x8D, 0x29, 0x29, 0x01, 0x7F, 0x17, 0x48, 0x41, 0xC0, 0x19, 0x56, 0x82, 0xC0, 0x3F, 0x00, 0x58,\n0x5E, 0x09, 0x12, 0x3B, 0x40, 0xBD, 0xDC, 0x98, 0x6E, 0xEF, 0xF3, 0xFE, 0xEF, 0xB7, 0x1A, 0x9F,\n0x4B, 0xFE, 0x4F, 0xA2, 0xB2, 0x12, 0x64, 0x29, 0x06, 0xB0, 0x95, 0x12, 0x00, 0xA5, 0x8C, 0x76,\n0x3C, 0x34, 0x68, 0xCF, 0x3F, 0x11, 0xFA, 0xB5, 0x0D, 0xE0, 0x95, 0x7B, 0x18, 0x48, 0xE8, 0x00,\n0x95, 0x6C, 0xDF, 0xCC, 0x42, 0x3F, 0x04, 0xEF, 0x02, 0xF1, 0x23, 0xDE, 0x3A, 0xD9, 0x09, 0xD6,\n0xA0, 0x39, 0xC7, 0x1A, 0x38, 0xBB, 0x20, 0x12, 0xFE, 0xB1, 0x17, 0x4C, 0x7D, 0x21, 0x88, 0x9F,\n0x7C, 0xEA, 0x06, 0x63, 0x96, 0x65, 0x0F, 0x78, 0x29, 0x0E, 0x50, 0x18, 0x58, 0xE0, 0x9F, 0xC4,\n0xB6, 0x42, 0xC0, 0xC6, 0xBE, 0x6F, 0xD5, 0x02, 0xDE, 0x24, 0x04, 0xBC, 0x37, 0xFE, 0xE1, 0x01,\n0xF3, 0xB5, 0xC0, 0x39, 0x01, 0x01, 0x20, 0xE8, 0x9B, 0x65, 0x2D, 0xB0, 0xA9, 0x00, 0x40, 0x53,\n0x30, 0x06, 0x88, 0xFF, 0xE3, 0x16, 0x64, 0xFC, 0xBB, 0x59, 0xE8, 0x7D, 0x6D, 0x55, 0x4A, 0x40,\n0xFD, 0x45, 0x49, 0x9D, 0xCF, 0x85, 0x5E, 0xAA, 0x01, 0x5C, 0xCA, 0x51, 0xF1, 0x7F, 0x52, 0x77,\n0x5B, 0xF0, 0xBA, 0xF4, 0xC7, 0x69, 0x96, 0xC2, 0xBD, 0xFA, 0x0C, 0x40, 0x08, 0xA8, 0x26, 0xD0,\n0x39, 0x40, 0x32, 0xC1, 0x83, 0x03, 0xD4, 0x1F, 0xCD, 0x6E, 0x00, 0xFB, 0xFE, 0xEE, 0x35, 0xB4,\n0xEB, 0x66, 0x42, 0xA3, 0xC2, 0x66, 0x08, 0x9C, 0x2B, 0x8A, 0xD9, 0x47, 0x13, 0x00, 0xA6, 0xFC,\n0x2B, 0x13, 0x30, 0xDC, 0x0E, 0x4B, 0xC3, 0x8A, 0x2D, 0x84, 0x33, 0x08, 0xA6, 0xFD, 0x5F, 0xAB,\n0xB6, 0x78, 0xC0, 0x88, 0x7F, 0xDA, 0x03, 0xAE, 0x78, 0xC0, 0xE1, 0x6B, 0xDA, 0x8A, 0x10, 0x70,\n0x7A, 0x21, 0x1C, 0xC2, 0x03, 0x3A, 0x07, 0xE8, 0x1E, 0x91, 0xFE, 0x9C, 0xF2, 0x0F, 0x0B, 0x38,\n0xE3, 0x6E, 0x30, 0xA8, 0x30, 0x00, 0x68, 0x8A, 0xC6, 0x00, 0xF5, 0x52, 0xF8, 0x87, 0x26, 0x86,\n0x01, 0x9B, 0x6E, 0x64, 0x9B, 0x9D, 0xE1, 0xDE, 0xA6, 0xFE, 0x4F, 0xED, 0x9F, 0xE4, 0xAC, 0x3E,\n0x25, 0x13, 0x60, 0xB6, 0xCA, 0x3E, 0xB5, 0x80, 0x39, 0x00, 0x4D, 0x4B, 0x97, 0x05, 0x1E, 0x6A,\n0xAB, 0xF6, 0xF4, 0x86, 0x00, 0x38, 0xB5, 0x08, 0x84, 0x10, 0xCA, 0x39, 0x07, 0xC8, 0xD1, 0x2A,\n0x9E, 0x0B, 0x92, 0xC4, 0xCB, 0xF8, 0x07, 0xFA, 0xA0, 0x1D, 0xE9, 0x60, 0x94, 0xAD, 0x08, 0xA9,\n0xF3, 0xEF, 0x67, 0xF8, 0xE6, 0xB2, 0xBF, 0xFC, 0x80, 0x0B, 0x02, 0x02, 0x66, 0x1B, 0x02, 0x56,\n0xF7, 0x03, 0xF4, 0x89, 0x10, 0x77, 0x21, 0x82, 0x80, 0x49, 0xFF, 0xD7, 0xA2, 0x39, 0xC1, 0xB3,\n0x09, 0x00, 0xCA, 0x57, 0xC9, 0x22, 0xC9, 0x84, 0x0C, 0xF8, 0xD3, 0xDE, 0xDA, 0x67, 0x59, 0x0E,\n0x97, 0xFA, 0xBF, 0xDD, 0x5F, 0x1E, 0xF0, 0x71, 0xC2, 0x01, 0x42, 0x94, 0xD4, 0x02, 0x3E, 0x77,\n0x9A, 0x1C, 0x03, 0x3C, 0x6A, 0x3F, 0xC0, 0x4E, 0x29, 0xFF, 0xD0, 0x83, 0x28, 0xCA, 0x02, 0xF7,\n0xB7, 0x60, 0x62, 0x1C, 0x50, 0xF9, 0xA7, 0xF8, 0xD3, 0x98, 0xE6, 0xDF, 0x96, 0xBF, 0x56, 0x09,\n0x01, 0xE9, 0x04, 0x48, 0x49, 0xFB, 0xBF, 0xE8, 0x87, 0x68, 0x2E, 0xC2, 0x89, 0xF6, 0x03, 0x7C,\n0xF5, 0x04, 0xF0, 0x80, 0x3F, 0xB5, 0x80, 0xB1, 0x03, 0x34, 0xEE, 0x59, 0x3D, 0xBF, 0xFF, 0x83,\n0x79, 0x3E, 0x1D, 0x8C, 0x31, 0xB4, 0x9F, 0x19, 0xFE, 0x5C, 0xE5, 0xF6, 0x83, 0x4E, 0x18, 0x98,\n0xAD, 0xFE, 0x40, 0xAB, 0x22, 0x01, 0xDF, 0x15, 0x37, 0x44, 0x85, 0x7F, 0xC8, 0x99, 0x3E, 0xDF,\n0x01, 0xB6, 0xFE, 0x4A, 0x92, 0x00, 0xDE, 0xB6, 0x4A, 0x0F, 0x26, 0x44, 0x07, 0xFC, 0x93, 0x3E,\n0x95, 0xC5, 0xF9, 0x54, 0x02, 0xF8, 0x76, 0x20, 0xA0, 0xC6, 0x62, 0x6A, 0x32, 0xCC, 0xF0, 0xCD,\n0x37, 0x7D, 0x1C, 0x3C, 0xA0, 0x73, 0x80, 0xC6, 0x3F, 0x10, 0x58, 0xE5, 0x1F, 0x3B, 0x42, 0x23,\n0x54, 0xDD, 0x11, 0x1A, 0xFF, 0x57, 0x22, 0xE0, 0xA3, 0xDB, 0x11, 0x3F, 0x70, 0x80, 0x8F, 0xBB,\n0xC3, 0x5B, 0x10, 0x0D, 0x03, 0x0E, 0xFC, 0x23, 0x6E, 0x0A, 0x09, 0x10, 0xFD, 0x95, 0xB5, 0xCC,\n0x7D, 0x8C, 0x3F, 0xB3, 0x7E, 0xF6, 0x39, 0x98, 0xE4, 0x1F, 0xD2, 0x76, 0x38, 0x1B, 0xF5, 0x04,\n0x3B, 0x42, 0xBF, 0x3A, 0xFF, 0x04, 0x72, 0xFE, 0xA1, 0xC0, 0xDE, 0x01, 0xD2, 0x03, 0xA6, 0x1B,\n0x9C, 0xE0, 0xEF, 0x85, 0x00, 0x44, 0xF1, 0xB6, 0x58, 0xAD, 0x04, 0x16, 0x90, 0xA0, 0xCA, 0x9F,\n0x87, 0x19, 0x5C, 0x63, 0xFD, 0x8E, 0xDD, 0x11, 0x9F, 0x48, 0x10, 0x18, 0x3E, 0x13, 0xF3, 0x20,\n0x1D, 0xC2, 0x07, 0x14, 0x4D, 0x8E, 0xFF, 0xFD, 0x65, 0xFD, 0xA4, 0xA9, 0x17, 0x67, 0x21, 0xFF,\n0xD4, 0x51, 0x10, 0x53, 0xFC, 0xB3, 0xEF, 0x68, 0x42, 0x40, 0xFC, 0x9F, 0x55, 0x77, 0xFE, 0x99,\n0x20, 0x43, 0x1B, 0x98, 0xE0, 0x01, 0x8B, 0xFC, 0x4B, 0x9E, 0x09, 0x92, 0x76, 0x82, 0xB5, 0xC6,\n0xFF, 0x15, 0x08, 0x18, 0x3C, 0x13, 0xDD, 0x39, 0xC0, 0x06, 0x46, 0x7F, 0x0B, 0xE2, 0x1D, 0xF1,\n0x0D, 0x80, 0x5A, 0x5A, 0x64, 0xF9, 0x0F, 0x22, 0xE6, 0x9F, 0x3A, 0x3F, 0x43, 0x9F, 0xF8, 0xC0,\n0x9A, 0xFF, 0xD3, 0x76, 0xBC, 0x1E, 0xC9, 0xE9, 0x9F, 0x02, 0xF0, 0xF5, 0xF9, 0xD7, 0x87, 0xF6,\n0x83, 0xB1, 0x7D, 0xE0, 0x6F, 0x20, 0x9F, 0x14, 0xBA, 0xC1, 0x33, 0x76, 0x80, 0x29, 0x76, 0x48,\n0xA1, 0x62, 0x1A, 0x4C, 0x29, 0x17, 0xEC, 0x2F, 0xD2, 0xBD, 0xB0, 0x82, 0x55, 0x70, 0xB0, 0x71,\n0xF5, 0x4F, 0x9E, 0x8B, 0x99, 0xF3, 0x0F, 0x1D, 0x0E, 0x3E, 0xDB, 0x85, 0xFF, 0xA4, 0x26, 0x06,\n0x50, 0x4F, 0xC3, 0x68, 0x60, 0xC4, 0x3F, 0xEB, 0x00, 0x63, 0x01, 0x23, 0x0F, 0x68, 0xE3, 0xF4,\n0x58, 0xC0, 0x6F, 0x6D, 0x1C, 0x30, 0xF2, 0x7F, 0x9C, 0xD8, 0x14, 0xA6, 0x77, 0x80, 0x58, 0x2A,\n0x08, 0x58, 0xE3, 0x1F, 0x4F, 0x85, 0xF3, 0xAA, 0x3F, 0x15, 0x0E, 0xFF, 0x97, 0x13, 0xF0, 0x77,\n0xFA, 0xBF, 0x28, 0x7A, 0x2A, 0x9C, 0x01, 0x90, 0x5B, 0x70, 0x77, 0x1F, 0x6C, 0x03, 0x73, 0x60,\n0x00, 0xE3, 0x4D, 0xF1, 0xCD, 0xFB, 0xB5, 0xE3, 0xDC, 0xEA, 0xA9, 0xFC, 0xC7, 0x76, 0x7F, 0x18,\n0x24, 0xF5, 0x7F, 0x28, 0x98, 0x8D, 0x75, 0x8A, 0xA7, 0xC2, 0xBD, 0x7A, 0x02, 0x64, 0x34, 0xE0,\n0x1E, 0x9D, 0x60, 0xCC, 0x1F, 0x0E, 0x70, 0x06, 0xFE, 0x79, 0x00, 0x22, 0xE7, 0x08, 0xDD, 0x9B,\n0xDE, 0x45, 0x0E, 0x90, 0x8A, 0x6E, 0x30, 0x07, 0xAD, 0x92, 0xD6, 0x73, 0x3C, 0x17, 0xF8, 0x08,\n0xFE, 0xF9, 0xBF, 0xBC, 0x43, 0xE5, 0x15, 0x27, 0x40, 0xB6, 0x6A, 0x00, 0x5B, 0x31, 0x0E, 0x8E,\n0x5A, 0x40, 0xF0, 0x47, 0x7C, 0x8A, 0xF9, 0x47, 0x30, 0x19, 0xC6, 0x8F, 0xFF, 0xDD, 0xF2, 0xDD,\n0x07, 0x01, 0x77, 0x6E, 0xF7, 0x50, 0xF8, 0xE7, 0x08, 0xF8, 0x9C, 0xF1, 0x0F, 0x02, 0xCE, 0xF1,\n0x5C, 0x60, 0xAF, 0xCC, 0xFF, 0xA1, 0xB1, 0xE7, 0x02, 0x7F, 0x79, 0xB8, 0x13, 0xFE, 0xED, 0xB4,\n0xA0, 0xDB, 0x70, 0x02, 0x8C, 0x85, 0x9D, 0x16, 0x11, 0xFF, 0x08, 0x1B, 0x0B, 0x9C, 0xF0, 0x7F,\n0x5B, 0xF5, 0x7E, 0x7C, 0x0A, 0xAA, 0xFC, 0x5B, 0xBA, 0x64, 0x70, 0xF9, 0xB9, 0xC0, 0xF0, 0x6F,\n0x5E, 0x00, 0x9E, 0x48, 0xE6, 0xF9, 0x5C, 0x80, 0x3F, 0x3B, 0x29, 0xF7, 0x5A, 0x0C, 0x04, 0x34,\n0x06, 0xCE, 0xD8, 0x01, 0xA6, 0xB8, 0x5C, 0x48, 0xB8, 0x22, 0x04, 0x06, 0x52, 0xC5, 0x7E, 0xD0,\n0x0B, 0xEF, 0x47, 0xBB, 0x7F, 0xC1, 0xFB, 0xBF, 0x7C, 0x1C, 0x70, 0x35, 0xC3, 0x83, 0xD1, 0x83,\n0x04, 0xB0, 0xFB, 0xA4, 0xC6, 0x09, 0x90, 0x56, 0xC8, 0x03, 0x4A, 0x8C, 0xF2, 0xAF, 0xEB, 0xFF,\n0xDA, 0x55, 0x38, 0x01, 0xB0, 0xFF, 0x9E, 0x06, 0x1B, 0xE3, 0x2B, 0xFF, 0x76, 0x00, 0x40, 0x2B,\n0x4D, 0x05, 0xFB, 0xED, 0x52, 0x00, 0x49, 0xEA, 0x01, 0x9F, 0x43, 0x02, 0x26, 0xFC, 0x43, 0x23,\n0x63, 0x80, 0xCF, 0xE3, 0x4A, 0xF3, 0x1F, 0x08, 0xA6, 0xB3, 0xEF, 0xC3, 0x06, 0x71, 0x27, 0x98,\n0x0E, 0x18, 0xF1, 0x8F, 0x58, 0x4C, 0x76, 0x80, 0x89, 0x60, 0x49, 0x88, 0xD2, 0xCF, 0xA0, 0x47,\n0x47, 0xA0, 0xC0, 0xBF, 0x25, 0xC3, 0x80, 0x6E, 0x1A, 0x60, 0xA0, 0x7F, 0xF0, 0x60, 0xF4, 0xFF,\n0x40, 0xFF, 0x77, 0x8C, 0x7F, 0xEC, 0x00, 0x68, 0xCD, 0x7E, 0xEA, 0x8B, 0xBC, 0x62, 0x2C, 0x9C,\n0xD1, 0xFF, 0x51, 0xBC, 0xEF, 0x8B, 0x56, 0xCA, 0xF9, 0x8C, 0x07, 0x2F, 0xF8, 0x2A, 0xD1, 0x7A,\n0x7A, 0x76, 0x74, 0x1D, 0x80, 0x44, 0x42, 0xC0, 0x1F, 0x22, 0x91, 0x7D, 0x03, 0x7F, 0x45, 0x0F,\n0x68, 0xA9, 0x0F, 0xA6, 0x01, 0x9A, 0x25, 0x1C, 0x79, 0x1E, 0x9C, 0x75, 0xAA, 0x24, 0x68, 0x9D,\n0x8F, 0xF2, 0x0F, 0xFA, 0x11, 0x4C, 0x07, 0xEC, 0x17, 0x80, 0xA0, 0x1D, 0x4D, 0xE3, 0x83, 0xF3,\n0x7F, 0x15, 0x02, 0x3E, 0x47, 0xA2, 0x13, 0x0C, 0xFF, 0x52, 0x02, 0x32, 0x01, 0x30, 0x52, 0xEE,\n0xFF, 0x20, 0x20, 0x0E, 0x90, 0x09, 0x30, 0xC3, 0x7F, 0xFC, 0xA3, 0xD6, 0x78, 0xC0, 0x98, 0x7F,\n0x52, 0x26, 0x09, 0xE8, 0xE1, 0xB7, 0x0D, 0x3C, 0xE0, 0xA5, 0xFA, 0xFF, 0xBF, 0x3F, 0x06, 0xD0,\n0xB0, 0xD4, 0xFF, 0xFD, 0x70, 0x30, 0x1F, 0x9A, 0x05, 0x20, 0x65, 0x00, 0xAE, 0xDF, 0x0E, 0x00,\n0x47, 0x63, 0x8F, 0x7B, 0x22, 0x7A, 0xBD, 0x3D, 0x05, 0xC7, 0x13, 0x21, 0x73, 0x00, 0x50, 0x8E,\n0x90, 0x85, 0xB4, 0x27, 0x7A, 0xC1, 0xAE, 0x92, 0x88, 0xA9, 0x47, 0x83, 0xEB, 0xC4, 0xFF, 0x11,\n0x09, 0xFE, 0x88, 0x8C, 0x7F, 0x08, 0x07, 0x28, 0x22, 0xFF, 0x3B, 0xA2, 0xD1, 0xF1, 0x3F, 0xA9,\n0xCD, 0xFB, 0x49, 0x25, 0xE1, 0x3C, 0x20, 0xE8, 0x73, 0x11, 0xF1, 0xCF, 0x23, 0xD0, 0x79, 0x40,\n0x1B, 0x00, 0xDC, 0xF1, 0xED, 0xC7, 0x03, 0xE2, 0x00, 0x03, 0xFF, 0xC7, 0xC3, 0x91, 0x52, 0xFC,\n0xE1, 0x01, 0x33, 0xFE, 0x21, 0xDE, 0xC5, 0x02, 0x90, 0x22, 0x00, 0x1F, 0x13, 0x02, 0x4A, 0xC0,\n0x3F, 0x6E, 0x02, 0x2E, 0xD8, 0x3C, 0x20, 0xFC, 0xBB, 0xB7, 0x09, 0x30, 0xAD, 0x10, 0x10, 0x30,\n0xF0, 0x7F, 0x74, 0x82, 0xCF, 0xC7, 0x96, 0x84, 0x28, 0xFC, 0xF8, 0x18, 0x68, 0x0B, 0x0F, 0x98,\n0x76, 0x80, 0x7D, 0x2A, 0x44, 0xAB, 0x09, 0x39, 0xFE, 0x95, 0x1C, 0xE0, 0x7F, 0x16, 0x7F, 0x6E,\n0x1B, 0x7C, 0x85, 0x5D, 0x0F, 0x41, 0xAE, 0x67, 0xCC, 0x7F, 0x50, 0x10, 0xD3, 0x00, 0xF5, 0x65,\n0x8F, 0xC6, 0xF1, 0x01, 0xC0, 0xE0, 0xD5, 0x64, 0x15, 0x5C, 0xB8, 0x22, 0x24, 0xC1, 0x5F, 0x11,\n0x80, 0xEB, 0x9C, 0x7F, 0xC8, 0x2D, 0x00, 0x46, 0x3D, 0x0D, 0xA3, 0x05, 0x20, 0x5A, 0x96, 0x5A,\n0xD9, 0x6C, 0x18, 0xBF, 0x01, 0x42, 0x80, 0x40, 0xE7, 0x01, 0x87, 0xC9, 0x7F, 0x04, 0x16, 0xD0,\n0x3C, 0x60, 0xE4, 0xFF, 0x3E, 0x1A, 0x01, 0x58, 0x12, 0x82, 0xFF, 0x0B, 0x2D, 0x20, 0x1E, 0xB0,\n0x0A, 0x40, 0xF8, 0x97, 0x13, 0x90, 0x09, 0x80, 0xB1, 0x52, 0xFE, 0xA1, 0xFD, 0xF5, 0x6F, 0xF0,\n0x0F, 0xED, 0x3E, 0x6E, 0xEC, 0x16, 0xB8, 0x05, 0x20, 0xE3, 0xB7, 0xD5, 0x2D, 0x09, 0xC1, 0xEF,\n0x39, 0x0F, 0x78, 0xB1, 0x75, 0x09, 0x90, 0x96, 0xFE, 0x30, 0xDB, 0xD7, 0x5A, 0x70, 0x30, 0xE7,\n0x1F, 0xBD, 0xE0, 0xCE, 0x01, 0x56, 0x01, 0x08, 0xFF, 0x0A, 0x59, 0xE0, 0x18, 0x78, 0xAF, 0x0D,\n0x40, 0xAD, 0xBC, 0x03, 0x34, 0xE3, 0xD7, 0x39, 0xC0, 0x39, 0x26, 0x00, 0xFA, 0xE2, 0x66, 0xFD,\n0xD1, 0x07, 0x76, 0x96, 0x30, 0x5D, 0x16, 0x5C, 0x9F, 0x0D, 0x13, 0x7A, 0xC0, 0x75, 0x05, 0x81,\n0xDA, 0x5C, 0x25, 0x04, 0x2C, 0xF2, 0x8F, 0x01, 0xC0, 0xCC, 0x00, 0xF6, 0x08, 0xD4, 0x4F, 0xBB,\n0xD6, 0x66, 0x03, 0x30, 0x03, 0x07, 0x04, 0x64, 0xD8, 0x2F, 0x21, 0xE0, 0x77, 0x36, 0xFE, 0x47,\n0x70, 0xDD, 0x2F, 0x8A, 0xBB, 0x37, 0xFF, 0x67, 0xDC, 0xA3, 0x0F, 0x6C, 0x1E, 0x90, 0x05, 0x20,\n0x53, 0x7A, 0xAC, 0xF1, 0x8F, 0x25, 0x21, 0xF0, 0x2F, 0x27, 0x20, 0x13, 0x00, 0xAB, 0x04, 0x54,\n0x26, 0xC7, 0xDA, 0x77, 0x80, 0xBB, 0xEE, 0x16, 0x48, 0x51, 0x59, 0xA3, 0x7F, 0x1C, 0xB0, 0x85,\n0x73, 0xD6, 0xED, 0xCA, 0xF9, 0xBF, 0xD0, 0xB0, 0x9F, 0xF3, 0x4B, 0x3D, 0xD3, 0x04, 0x30, 0x23,\n0x7F, 0x36, 0x18, 0x6C, 0x25, 0xE7, 0x1F, 0x13, 0x4D, 0xBB, 0xAD, 0xF0, 0x27, 0x75, 0x00, 0xC0,\n0x9A, 0x03, 0x8C, 0xDD, 0xDE, 0xBF, 0x97, 0x00, 0x86, 0x79, 0xE1, 0x64, 0x98, 0x76, 0x45, 0xF2,\n0x97, 0x0A, 0x04, 0xCE, 0xB0, 0x02, 0x78, 0xAC, 0x04, 0xBA, 0x36, 0x4B, 0xD8, 0xE7, 0x41, 0x40,\n0x1D, 0x4D, 0x2A, 0x8A, 0x67, 0x5E, 0x7A, 0x0D, 0xFE, 0x2A, 0xE3, 0x80, 0xAB, 0x32, 0x00, 0x7F,\n0x48, 0xE4, 0xF1, 0xB7, 0xD4, 0xC3, 0x9A, 0xE8, 0x20, 0xFF, 0x61, 0x49, 0x3F, 0x33, 0x80, 0x06,\n0xC1, 0x6D, 0xB7, 0x24, 0xE4, 0x52, 0x27, 0x52, 0x0C, 0x07, 0xC1, 0x4A, 0xD3, 0x0B, 0xE4, 0xC8,\n0x47, 0xB0, 0x24, 0x04, 0xFE, 0x89, 0x76, 0xD4, 0xD6, 0xC0, 0x03, 0x4E, 0xF6, 0x7F, 0x19, 0x06,\n0x7C, 0x4E, 0xF9, 0xE7, 0x97, 0x05, 0xA7, 0xE2, 0x9D, 0xF0, 0x2F, 0x50, 0x9A, 0x00, 0x41, 0x96,\n0xD7, 0x61, 0x01, 0x48, 0x4F, 0x7E, 0x2E, 0xC4, 0x24, 0xB3, 0x00, 0x64, 0x71, 0x70, 0x43, 0x29,\n0xED, 0xAA, 0x5F, 0x00, 0xC2, 0x6F, 0x47, 0x83, 0x2B, 0xB1, 0x87, 0x00, 0x50, 0x69, 0x27, 0x15,\n0x16, 0x50, 0x8A, 0x92, 0xF0, 0xB0, 0x13, 0x3C, 0x81, 0x3F, 0x12, 0x21, 0x7A, 0xCE, 0xE4, 0xF0,\n0x97, 0x03, 0x70, 0x92, 0x80, 0xAF, 0x95, 0x00, 0x21, 0x48, 0x81, 0x48, 0xF4, 0x19, 0x60, 0x03,\n0x9F, 0x95, 0xD3, 0x00, 0x50, 0xAB, 0xFE, 0x39, 0x21, 0x81, 0x48, 0x00, 0x83, 0xBF, 0xB0, 0x63,\n0x1C, 0x66, 0x81, 0xD7, 0x61, 0x9F, 0x78, 0x95, 0x11, 0x10, 0x04, 0xAE, 0x92, 0x58, 0x7B, 0xFE,\n0xE5, 0x08, 0xFC, 0xD1, 0x19, 0x40, 0x2E, 0x41, 0xA0, 0x79, 0xBE, 0x2D, 0xD3, 0xA0, 0x19, 0xFD,\n0x61, 0x3C, 0xE8, 0x8C, 0x04, 0x48, 0x4F, 0xBE, 0xD8, 0x03, 0xFA, 0x1E, 0x5A, 0x38, 0x21, 0xDA,\n0x7F, 0xF1, 0x0F, 0x5F, 0xD0, 0xE9, 0x80, 0x74, 0x80, 0x2B, 0x1E, 0xF0, 0x39, 0x15, 0x59, 0xDD,\n0x5C, 0x4C, 0x00, 0x4C, 0x95, 0xF6, 0x7F, 0x91, 0x0D, 0x03, 0xE2, 0xFF, 0x54, 0xD8, 0x40, 0x3C,\n0xF1, 0xBD, 0x5F, 0x00, 0x62, 0x0D, 0x42, 0x5F, 0x8D, 0x12, 0x20, 0xD0, 0x8F, 0x44, 0x88, 0xF1,\n0x4F, 0xBB, 0x00, 0x2D, 0x7A, 0x0B, 0xB8, 0xA5, 0x27, 0x90, 0xF0, 0x8F, 0x3C, 0x08, 0x0C, 0xFC,\n0x21, 0xD7, 0xB1, 0x00, 0x8C, 0xF1, 0x47, 0x75, 0x6A, 0x03, 0x98, 0x87, 0x8E, 0xFF, 0x29, 0xDA,\n0x0C, 0x73, 0xDE, 0x01, 0xCE, 0x3A, 0xFF, 0x85, 0xE2, 0xB6, 0xC4, 0xB7, 0xDA, 0xCF, 0x14, 0x34,\n0xCC, 0x11, 0xE5, 0x3E, 0x30, 0x98, 0x43, 0x7E, 0x66, 0x74, 0x1A, 0xF0, 0x2F, 0x27, 0x60, 0x99,\n0x7F, 0xEC, 0x91, 0xEF, 0xE4, 0x81, 0xC8, 0x00, 0xA0, 0xFD, 0xD5, 0x67, 0x04, 0x10, 0x0B, 0x78,\n0xC9, 0x1E, 0xF9, 0x01, 0xF5, 0xE8, 0x13, 0x37, 0x42, 0xB2, 0x00, 0xCE, 0x77, 0x7F, 0x3D, 0x01,\n0xD9, 0x00, 0x8B, 0xA9, 0x1F, 0x60, 0xC0, 0x2E, 0xEE, 0x76, 0x5F, 0xF0, 0x7F, 0x89, 0x07, 0xAC,\n0xF2, 0x8F, 0x25, 0x21, 0x15, 0xB1, 0x01, 0x60, 0x2E, 0x12, 0xC0, 0xA9, 0xD8, 0x01, 0x7A, 0xFC,\n0x1E, 0xE0, 0x89, 0xBB, 0x67, 0xA1, 0xFB, 0xD8, 0x3F, 0xD1, 0xFF, 0x9D, 0x0E, 0x26, 0xC3, 0x90,\n0xF3, 0xD7, 0x1A, 0x0B, 0xA8, 0xA1, 0x8D, 0x42, 0xFF, 0xD7, 0x6A, 0x12, 0x20, 0xA9, 0xC0, 0x5F,\n0x05, 0x80, 0x59, 0xC6, 0xA3, 0xCE, 0xBF, 0x53, 0xE2, 0xAF, 0xDF, 0x04, 0x50, 0x1B, 0xD8, 0x40,\n0x95, 0xB5, 0xE6, 0x4C, 0x80, 0x50, 0xB4, 0xF2, 0xF2, 0x6F, 0x62, 0x55, 0x5C, 0x61, 0x28, 0x30,\n0x47, 0x5E, 0xAF, 0xD5, 0xBA, 0x8C, 0xC0, 0xD5, 0x2A, 0x2D, 0x65, 0x00, 0x92, 0x07, 0x59, 0x5A,\n0x31, 0x2D, 0xBB, 0x0B, 0x8D, 0xFD, 0x0D, 0x50, 0x07, 0xDF, 0x27, 0x87, 0x56, 0x2C, 0x08, 0xD0,\n0xD6, 0xA5, 0x12, 0x70, 0x48, 0x20, 0x9E, 0x1F, 0x16, 0x45, 0xA0, 0xFE, 0xC8, 0x3C, 0xA0, 0x7C,\n0x4F, 0x0B, 0x1E, 0x90, 0xF1, 0x3F, 0x13, 0xE0, 0xD3, 0xC3, 0x6A, 0xC1, 0x04, 0xFE, 0x2F, 0x25,\n0x20, 0xFC, 0xCB, 0x09, 0xF8, 0x47, 0x4D, 0xF8, 0xBF, 0x54, 0xD6, 0xFF, 0x9D, 0x88, 0xFD, 0xE9,\n0x80, 0xBB, 0xCD, 0x1D, 0xE8, 0x0B, 0xC5, 0x04, 0x98, 0x2C, 0x16, 0xF8, 0xBF, 0x20, 0x18, 0xC3,\n0x3D, 0x13, 0xFF, 0x27, 0xD8, 0x6B, 0xD5, 0xA5, 0x1C, 0xDA, 0x20, 0xB6, 0xD4, 0x1D, 0x00, 0x97,\n0x3E, 0x8C, 0x81, 0x96, 0x0A, 0x29, 0x89, 0x04, 0xC8, 0x5F, 0xE5, 0x2B, 0xF5, 0x48, 0x7D, 0xD1,\n0xB8, 0x92, 0x46, 0x3D, 0xE4, 0xFD, 0x59, 0xB1, 0xB7, 0x56, 0xCA, 0x51, 0x36, 0x4D, 0x4A, 0x18,\n0xFD, 0x85, 0x1C, 0x27, 0xD1, 0xBB, 0xD2, 0x9B, 0x8E, 0x09, 0xD1, 0x4F, 0xAD, 0xB8, 0x98, 0x7A,\n0x35, 0x39, 0xB4, 0xAC, 0x0B, 0xA5, 0xB1, 0xF2, 0xFD, 0xBB, 0xF7, 0xEF, 0x57, 0x85, 0x58, 0xBF,\n0xFF, 0xF5, 0xD7, 0xD5, 0xAF, 0x35, 0xB5, 0x5E, 0xCB, 0x87, 0x7D, 0x6D, 0xF5, 0xB0, 0xAA, 0xD3,\n0x76, 0xFB, 0x61, 0xFB, 0x4B, 0x45, 0x1F, 0xDA, 0xF1, 0xF9, 0x46, 0x0C, 0x4B, 0xA1, 0xB4, 0x04,\n0xE7, 0x66, 0x37, 0xE8, 0x41, 0x8E, 0x56, 0xB8, 0x44, 0x9B, 0x8D, 0xF2, 0xA2, 0x61, 0x25, 0x09,\n0x79, 0x47, 0x23, 0x50, 0x63, 0xDB, 0xDF, 0xF1, 0x1C, 0x1C, 0xB6, 0x22, 0xA4, 0x2C, 0x4D, 0x00,\n0xFF, 0x96, 0xC7, 0x6F, 0xF2, 0xEF, 0x3F, 0x7D, 0x29, 0x3F, 0x2E, 0x7D, 0xB3, 0x33, 0x71, 0x07,\n0xA4, 0xD2, 0x82, 0xEE, 0xEE, 0x04, 0x82, 0x95, 0x68, 0xBF, 0x81, 0x9B, 0x5F, 0x6A, 0xFA, 0xB0,\n0x6D, 0xBF, 0xD8, 0x9A, 0xE4, 0xC3, 0xF2, 0x6B, 0x59, 0xEF, 0x6B, 0x6A, 0x39, 0xC0, 0xF7, 0xFB,\n0x1F, 0xF5, 0x3F, 0x01, 0x8F, 0x16, 0xBC, 0x91, 0xB3, 0x39, 0x99, 0xAD, 0x00, 0x00, 0x00, 0x00,\n0x49, 0x45, 0x4E, 0x44, 0xAE, 0x42, 0x60, 0x82\n};"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/Classes/runtime/PlayDisable_png.cpp",
    "content": "#include \"ResData.h\"\nconst unsigned char __playDisablePngData[24174] = {\n0x89, 0x50, 0x4E, 0x47, 0x0D, 0x0A, 0x1A, 0x0A, 0x00, 0x00, 0x00, 0x0D, 0x49, 0x48, 0x44, 0x52,\n0x00, 0x00, 0x01, 0xC4, 0x00, 0x00, 0x02, 0x20, 0x08, 0x03, 0x00, 0x00, 0x00, 0x2C, 0xBC, 0xE9,\n0x24, 0x00, 0x00, 0x01, 0x65, 0x50, 0x4C, 0x54, 0x45, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF,\n0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x8F, 0x8F, 0x8F, 0xFF, 0xFF,\n0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x91, 0x91, 0x91, 0xFF, 0xFF, 0xFF,\n0x97, 0x97, 0x97, 0x94, 0x94, 0x94, 0xA4, 0xA4, 0xA4, 0xFF, 0xFF, 0xFF, 0xFE, 0xFE, 0xFE, 0xC4,\n0xC4, 0xC4, 0x8B, 0x8B, 0x8B, 0xCB, 0xCB, 0xCB, 0xFF, 0xFF, 0xFF, 0xC8, 0xC8, 0xC8, 0x99, 0x99,\n0x99, 0xBC, 0xBC, 0xBC, 0xFF, 0xFF, 0xFF, 0xFE, 0xFE, 0xFE, 0x9C, 0x9C, 0x9C, 0x9E, 0x9E, 0x9E,\n0xAF, 0xAF, 0xAF, 0xB8, 0xB8, 0xB8, 0xA7, 0xA7, 0xA7, 0xBA, 0xBA, 0xBA, 0xFF, 0xFF, 0xFF, 0xA2,\n0xA2, 0xA2, 0xB1, 0xB1, 0xB1, 0xAD, 0xAD, 0xAD, 0xB6, 0xB6, 0xB6, 0xAB, 0xAB, 0xAB, 0xC0, 0xC0,\n0xC0, 0xC2, 0xC2, 0xC2, 0x88, 0x88, 0x88, 0xA0, 0xA0, 0xA0, 0xFE, 0xFE, 0xFE, 0xA9, 0xA9, 0xA9,\n0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x8C, 0x8C, 0x8C, 0xFE, 0xFE, 0xFE, 0xB4, 0xB4, 0xB4, 0xFE,\n0xFE, 0xFE, 0x92, 0x92, 0x92, 0xFE, 0xFE, 0xFE, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xCF, 0xCF,\n0xCF, 0xDA, 0xDA, 0xDA, 0x8D, 0x8D, 0x8D, 0xD1, 0xD1, 0xD1, 0xFF, 0xFF, 0xFF, 0xD3, 0xD3, 0xD3,\n0x95, 0x95, 0x95, 0xFE, 0xFE, 0xFE, 0xD5, 0xD5, 0xD5, 0xFE, 0xFE, 0xFE, 0xFE, 0xFE, 0xFE, 0xBE,\n0xBE, 0xBE, 0xFE, 0xFE, 0xFE, 0xBD, 0xBD, 0xBD, 0x86, 0x85, 0x85, 0x89, 0x89, 0x89, 0xFE, 0xFE,\n0xFE, 0xB2, 0xB2, 0xB2, 0xC6, 0xC6, 0xC6, 0x9A, 0x9A, 0x9A, 0xCD, 0xCD, 0xCD, 0xD6, 0xD6, 0xD6,\n0xE4, 0xE4, 0xE4, 0xD7, 0xD7, 0xD7, 0xD8, 0xD8, 0xD8, 0xFC, 0xFC, 0xFC, 0xFC, 0xFC, 0xFC, 0xCA,\n0xCA, 0xCA, 0x55, 0x55, 0x55, 0x5C, 0x5C, 0x5C, 0xA1, 0xA1, 0xA1, 0x6B, 0x6B, 0x6B, 0x99, 0x99,\n0x99, 0x65, 0x65, 0x65, 0xB4, 0xB4, 0xB4, 0x84, 0x84, 0x84, 0xF6, 0xF6, 0xF6, 0x82, 0x81, 0x81,\n0x83, 0x83, 0x83, 0x76, 0x76, 0x76, 0x5F, 0x5F, 0x5F, 0xBB, 0xBB, 0xBB, 0xD4, 0xD4, 0xD4, 0xB3,\n0xB3, 0xB3, 0x6F, 0x6F, 0x6F, 0xD8, 0xD8, 0xD8, 0xAE, 0xAE, 0xAE, 0xCC, 0xCC, 0xCC, 0x80, 0x80,\n0x80, 0x9C, 0x9C, 0x9C, 0xB8, 0xB8, 0xB8, 0x96, 0x96, 0x96, 0x51, 0x51, 0x51, 0xAC, 0xAC, 0xAC,\n0xA9, 0xA9, 0xA9, 0x98, 0x98, 0x98, 0xA9, 0xA9, 0xA9, 0x93, 0x93, 0x93, 0xA8, 0xA8, 0xA8, 0xAC,\n0xAC, 0xAC, 0xB2, 0xB2, 0xB2, 0x94, 0x94, 0x94, 0x91, 0x91, 0x91, 0x96, 0x96, 0x96, 0x78, 0xD9,\n0x1B, 0xEA, 0x00, 0x00, 0x00, 0x77, 0x74, 0x52, 0x4E, 0x53, 0x00, 0x04, 0x12, 0x0A, 0x03, 0x05,\n0xD5, 0x02, 0x01, 0x06, 0x15, 0xD5, 0x0E, 0xD5, 0xD5, 0xD5, 0x09, 0x10, 0xD5, 0xD5, 0xD5, 0x07,\n0xD5, 0xD5, 0xD5, 0x1D, 0x08, 0xD5, 0xD5, 0xD5, 0xD5, 0xD5, 0xD5, 0x21, 0xD5, 0xD5, 0xD5, 0xD5,\n0xD5, 0xD5, 0xD5, 0xD5, 0xD5, 0x18, 0xD5, 0x1A, 0x25, 0xD5, 0x0B, 0xD5, 0x0C, 0xD5, 0x0D, 0x1F,\n0x1B, 0xD5, 0xD5, 0xD5, 0xD5, 0x23, 0xD5, 0xD5, 0x0F, 0xD5, 0x27, 0x29, 0xD5, 0x14, 0xD5, 0xD5,\n0xD5, 0x17, 0xD5, 0xD5, 0xD5, 0xD5, 0xD5, 0x2F, 0xD5, 0xD5, 0x30, 0x2C, 0x34, 0x54, 0x4B, 0x06,\n0x29, 0x0D, 0x36, 0x16, 0x13, 0x2F, 0xD5, 0x22, 0x1B, 0x42, 0x3B, 0x1D, 0x23, 0x40, 0x36, 0x09,\n0x29, 0x33, 0x2B, 0x03, 0x02, 0x5F, 0x4D, 0x5F, 0x3B, 0x79, 0x74, 0xAD, 0x94, 0xBE, 0x91, 0xA9,\n0xBF, 0x8A, 0xC6, 0x1C, 0xBB, 0x00, 0x00, 0x5C, 0x41, 0x49, 0x44, 0x41, 0x54, 0x78, 0xDA, 0xEC,\n0xD7, 0xBD, 0x4E, 0x1B, 0x41, 0x18, 0x85, 0x61, 0xF2, 0x83, 0x62, 0x10, 0x92, 0x43, 0x41, 0x43,\n0xB3, 0x17, 0x10, 0x8A, 0x28, 0xA2, 0xA6, 0xA1, 0xC8, 0x35, 0x4C, 0x24, 0x5B, 0xC2, 0x15, 0x05,\n0x36, 0xC1, 0xF7, 0x5F, 0x64, 0x27, 0xE0, 0x3D, 0xF6, 0x9C, 0x99, 0xF9, 0xBC, 0x3F, 0xB3, 0xB0,\n0xD2, 0x79, 0x6F, 0xE1, 0xD1, 0xF9, 0x76, 0xF6, 0x64, 0xB2, 0xCD, 0x32, 0x9D, 0xA8, 0x0F, 0x5E,\n0x00, 0x26, 0xCC, 0x69, 0x75, 0x00, 0x24, 0xCB, 0xC9, 0x35, 0x43, 0xA2, 0x9C, 0x62, 0x0D, 0x83,\n0x24, 0xA7, 0xD9, 0x6C, 0x97, 0x24, 0x27, 0xDA, 0x0C, 0x09, 0x72, 0x92, 0xCD, 0xC2, 0xE4, 0x38,\n0xB5, 0x66, 0xD1, 0xE4, 0x38, 0xA1, 0x8E, 0x46, 0xF8, 0x96, 0x4A, 0x8E, 0xEF, 0x5C, 0x67, 0x3F,\n0x4E, 0x8E, 0xEF, 0x53, 0x5F, 0x3F, 0x4E, 0x8C, 0x63, 0x37, 0x2C, 0x20, 0x12, 0xE3, 0x78, 0x95,\n0x00, 0x44, 0x62, 0x1C, 0xA3, 0x62, 0x82, 0x48, 0x8C, 0x85, 0x2B, 0x2A, 0x88, 0xC4, 0x58, 0xB0,\n0xF2, 0x84, 0x48, 0x8A, 0x65, 0x2A, 0x4B, 0xC8, 0x89, 0x71, 0xF8, 0xCA, 0x13, 0x72, 0x52, 0x1C,\n0xB6, 0x3E, 0x84, 0x5F, 0x83, 0x5A, 0x30, 0x4A, 0xB1, 0x30, 0x62, 0x4B, 0x3F, 0x4E, 0x8C, 0xD9,\n0x3E, 0x84, 0x21, 0xB4, 0x7A, 0x4A, 0x4A, 0xB1, 0x90, 0x61, 0x1F, 0x41, 0x4E, 0x8C, 0x5C, 0x79,\n0xC4, 0x76, 0x82, 0x9F, 0xC2, 0xDA, 0x43, 0x4A, 0x71, 0x54, 0xC3, 0xB4, 0x9F, 0x6D, 0x29, 0xC5,\n0x72, 0x1D, 0x6F, 0x68, 0x01, 0xDA, 0x94, 0x62, 0xA4, 0xC6, 0x35, 0xCC, 0x09, 0x9E, 0x36, 0xA5,\n0x20, 0x6D, 0x47, 0x29, 0x0E, 0x86, 0x78, 0x04, 0x21, 0xE9, 0x45, 0xCB, 0x40, 0x4A, 0x71, 0x34,\n0x43, 0x9B, 0xF0, 0xD4, 0x2E, 0x05, 0x29, 0xC6, 0x21, 0x3B, 0xC6, 0xD0, 0x10, 0xB4, 0x8A, 0x3B,\n0x4A, 0xB1, 0x10, 0xA2, 0x41, 0x98, 0x12, 0x3C, 0x0B, 0x63, 0xC8, 0xA8, 0xA3, 0x14, 0x47, 0x37,\n0x8C, 0x0A, 0x9E, 0xE5, 0x4A, 0x42, 0xE6, 0x18, 0xA5, 0x38, 0x1C, 0xA2, 0x4D, 0xC8, 0x82, 0xB6,\n0x24, 0x33, 0x6A, 0x8C, 0xE5, 0x0D, 0x99, 0x90, 0x05, 0xED, 0xB2, 0x8E, 0x52, 0x1C, 0x10, 0xD1,\n0x9C, 0x21, 0x0B, 0x76, 0x84, 0x0C, 0x19, 0x75, 0x52, 0x4B, 0x21, 0xF2, 0x0C, 0x33, 0x84, 0x57,\n0x41, 0x06, 0x24, 0x31, 0x4A, 0xB1, 0xA4, 0xA1, 0x4D, 0x78, 0x95, 0xC9, 0x72, 0x04, 0xA3, 0x4E,\n0x6A, 0xE7, 0x8E, 0x35, 0x04, 0x61, 0x12, 0xF0, 0x7A, 0x3F, 0x92, 0xCC, 0x31, 0x6A, 0x8C, 0x65,\n0x10, 0x61, 0x98, 0x59, 0x21, 0xF1, 0x51, 0x49, 0xC8, 0x80, 0x51, 0x8A, 0x65, 0x0C, 0xCD, 0x19,\n0x12, 0xE0, 0x77, 0x14, 0xA7, 0x8C, 0x3A, 0x1E, 0x8C, 0x51, 0x8A, 0x43, 0x22, 0xC2, 0xD0, 0x26,\n0x04, 0x1F, 0x17, 0x42, 0xA6, 0x19, 0xA5, 0xD8, 0xB5, 0x36, 0x86, 0x24, 0x08, 0x40, 0xA3, 0x43,\n0xC8, 0x24, 0xA3, 0x4E, 0xEA, 0x88, 0x86, 0x20, 0x84, 0xE0, 0x97, 0x58, 0x01, 0x24, 0x1C, 0x99,\n0x51, 0x63, 0x1C, 0x16, 0x11, 0x86, 0x36, 0x21, 0x03, 0x72, 0x21, 0x64, 0xC8, 0x28, 0xC5, 0x7E,\n0x75, 0x33, 0x64, 0x41, 0xBB, 0xB8, 0x23, 0x33, 0x4A, 0xB1, 0xEF, 0x10, 0xD9, 0x90, 0x08, 0x77,\n0x86, 0x31, 0xC1, 0x9F, 0x07, 0x25, 0x21, 0x63, 0x8C, 0x52, 0xEC, 0x5C, 0x3B, 0x43, 0x26, 0x64,\n0x3E, 0x2E, 0xE9, 0x08, 0x46, 0x8C, 0x31, 0x79, 0x52, 0xA5, 0xD8, 0x62, 0x88, 0x86, 0x21, 0x13,\n0x42, 0xF0, 0x57, 0xA4, 0x98, 0x64, 0x30, 0x47, 0x8D, 0xB1, 0xCC, 0x10, 0x61, 0x68, 0x13, 0x06,\n0x7E, 0xB7, 0x4D, 0x44, 0x19, 0x38, 0x82, 0x51, 0x8A, 0x03, 0x23, 0xDA, 0x86, 0x44, 0x08, 0xBD,\n0x68, 0x0C, 0x89, 0x39, 0x46, 0x19, 0xA5, 0x58, 0xC6, 0x90, 0x09, 0x21, 0x08, 0xC0, 0x0B, 0xAE,\n0x91, 0x04, 0x24, 0xCF, 0x31, 0xAE, 0xE8, 0x93, 0x62, 0x3B, 0x44, 0xDB, 0x30, 0x41, 0x48, 0x7E,\n0x1C, 0x20, 0xE1, 0x08, 0x46, 0x8C, 0x11, 0x8A, 0x75, 0x52, 0xEC, 0x35, 0x44, 0x36, 0xC4, 0x0C,\n0x89, 0x10, 0x82, 0xF9, 0xE0, 0x78, 0xC0, 0xC8, 0x37, 0xB5, 0x51, 0xD4, 0x23, 0xB5, 0xCF, 0x10,\n0x43, 0xC3, 0x2B, 0x36, 0x04, 0xE1, 0x3E, 0xD4, 0x5D, 0x18, 0x41, 0x92, 0x23, 0x18, 0xA1, 0xE8,\n0x93, 0x62, 0x09, 0x43, 0x26, 0xF4, 0x24, 0xE4, 0x77, 0x89, 0x40, 0x49, 0x8E, 0xC4, 0x28, 0xC5,\n0x6E, 0xC1, 0x10, 0xB1, 0x21, 0x9F, 0x52, 0xAC, 0xB0, 0x61, 0x04, 0x5F, 0x2C, 0x48, 0xC2, 0x11,\n0x8C, 0x34, 0x46, 0x7E, 0xDE, 0x48, 0xD1, 0x1C, 0xA2, 0x61, 0x98, 0x99, 0xA1, 0xAB, 0xAB, 0x05,\n0x77, 0x80, 0x9F, 0xA3, 0x41, 0x72, 0x0F, 0x12, 0x73, 0x4C, 0x8C, 0x51, 0xCF, 0x9B, 0xA3, 0xEA,\n0x66, 0x08, 0xC2, 0x8B, 0x5B, 0xB7, 0x5E, 0x2F, 0xFF, 0x38, 0x77, 0xC7, 0x80, 0x5C, 0x03, 0x99,\n0x62, 0x94, 0x62, 0xAF, 0x21, 0xF2, 0x07, 0x31, 0x63, 0xB8, 0x23, 0xF4, 0x0C, 0x6E, 0x33, 0x7F,\n0x79, 0x5A, 0x3A, 0xE7, 0x60, 0x98, 0x0D, 0x8E, 0x87, 0x8C, 0x18, 0x23, 0x9D, 0x54, 0x29, 0x76,\n0x1C, 0x22, 0x1B, 0xD2, 0x0C, 0x5F, 0x15, 0xDC, 0x72, 0x3E, 0x9F, 0x6F, 0x37, 0x35, 0x63, 0xA0,\n0x75, 0xEF, 0x4B, 0x3A, 0x06, 0x8C, 0x18, 0xA3, 0x14, 0xFB, 0x0F, 0xD1, 0x36, 0xC4, 0x0C, 0x7D,\n0x77, 0x6E, 0xB9, 0xAD, 0xAA, 0x6A, 0xFE, 0xBC, 0x70, 0xCE, 0x35, 0x76, 0x5C, 0xC6, 0x11, 0x8C,\n0x52, 0xEC, 0x50, 0xFA, 0x98, 0x9E, 0xFA, 0xC8, 0x90, 0x66, 0x58, 0x3B, 0xB8, 0xE5, 0xDF, 0xCA,\n0x37, 0x5F, 0xD7, 0x8C, 0x20, 0xB4, 0x25, 0x63, 0x8C, 0x38, 0xA9, 0x50, 0x3C, 0xD3, 0xAF, 0x46,\n0xFB, 0x21, 0xB2, 0xA1, 0x27, 0x84, 0x21, 0x66, 0xF8, 0xFF, 0x41, 0xEA, 0xDC, 0xA6, 0x7A, 0xED,\n0x65, 0x53, 0x33, 0xD6, 0x54, 0xE7, 0x91, 0x18, 0x92, 0x19, 0x69, 0x8C, 0xF4, 0xBC, 0xD1, 0xAF,\n0x06, 0x67, 0x1D, 0x53, 0x36, 0x0C, 0x66, 0xE8, 0x1F, 0xA4, 0x97, 0x6E, 0x31, 0xAF, 0xDE, 0x7A,\n0x7E, 0x5C, 0xB9, 0x87, 0xFB, 0xF3, 0xDF, 0x14, 0x24, 0xC9, 0x11, 0x8C, 0x18, 0x23, 0x4E, 0xAA,\n0x14, 0xDB, 0x0F, 0xD1, 0x30, 0xA4, 0x19, 0x7A, 0x07, 0xB7, 0xD8, 0x56, 0xBB, 0x5E, 0xD6, 0x8B,\n0xD5, 0xC3, 0x03, 0xF0, 0x98, 0x12, 0x8E, 0xC4, 0x88, 0x31, 0xB2, 0xA2, 0x4F, 0x8A, 0xED, 0x8E,\n0x29, 0x1B, 0xF2, 0x29, 0xF5, 0x84, 0x3E, 0xE7, 0x9E, 0x77, 0x86, 0x37, 0x37, 0x37, 0xDB, 0xCD,\n0x6A, 0x05, 0xC5, 0x1C, 0x24, 0x31, 0xD2, 0x18, 0xA5, 0x38, 0xC4, 0xCB, 0x94, 0x0D, 0xC3, 0x19,\n0xFA, 0xDC, 0xD3, 0x8E, 0xD0, 0x57, 0xAD, 0x1F, 0xEB, 0x31, 0xFE, 0xD8, 0x2B, 0xE6, 0x18, 0x32,\n0xE2, 0xA6, 0x4A, 0xB1, 0x37, 0x22, 0x1B, 0x5E, 0xC7, 0x0C, 0x41, 0x78, 0xFF, 0x8F, 0x9D, 0xBB,\n0x79, 0x6D, 0x22, 0x8A, 0xA2, 0x00, 0x8E, 0x5F, 0x50, 0x5C, 0xE9, 0x42, 0x68, 0x0A, 0x8A, 0xC1,\n0x4F, 0xA8, 0x06, 0x15, 0xCD, 0x26, 0x20, 0x89, 0xBA, 0xC8, 0x26, 0x60, 0xB2, 0x93, 0x20, 0x44,\n0x29, 0x43, 0x17, 0x89, 0xC3, 0x24, 0xFF, 0x3F, 0x78, 0x6F, 0xA6, 0xE6, 0x24, 0xEF, 0x3C, 0xDF,\n0x7D, 0x33, 0x13, 0xA5, 0xC9, 0xCC, 0x59, 0xB7, 0xDD, 0xFC, 0xB8, 0xF7, 0xDC, 0x97, 0xD2, 0xDE,\n0xFC, 0xF1, 0xED, 0xBB, 0x0A, 0x22, 0x99, 0x0E, 0xE3, 0xF9, 0xEB, 0x4D, 0x3C, 0x96, 0x18, 0x47,\n0x87, 0x91, 0x14, 0xCF, 0x1A, 0xC5, 0xAA, 0xCB, 0x14, 0x86, 0x42, 0xE8, 0x35, 0x94, 0x48, 0x29,\n0xBE, 0xDA, 0x4D, 0xAA, 0xC3, 0xF8, 0x1A, 0x81, 0x25, 0x3B, 0x3A, 0x3B, 0x15, 0x2B, 0x95, 0x8E,\n0xD4, 0x46, 0xD1, 0x6B, 0xA8, 0xA1, 0x65, 0x1A, 0x34, 0x64, 0xC2, 0xBB, 0x9F, 0x7F, 0xFC, 0x4C,\n0x77, 0x0D, 0x9F, 0x3F, 0xCF, 0xE6, 0x32, 0x8C, 0xF0, 0x43, 0x1C, 0x47, 0x30, 0xFA, 0x86, 0x11,\n0xE7, 0x4D, 0xA3, 0x18, 0x61, 0xC8, 0x83, 0xC8, 0x86, 0xEF, 0xBD, 0x86, 0x32, 0x50, 0x3F, 0x7E,\n0xCE, 0xB7, 0x05, 0xF3, 0xAC, 0x87, 0xB1, 0x2B, 0xF1, 0x39, 0xBA, 0x8C, 0x8D, 0x62, 0x19, 0x43,\n0x24, 0x60, 0xF8, 0x00, 0x86, 0x6E, 0x1D, 0x82, 0x50, 0x24, 0x7E, 0xFC, 0xBC, 0x74, 0x04, 0x25,\n0xF9, 0x30, 0x76, 0x5B, 0xDD, 0x3F, 0x71, 0x1C, 0xC1, 0xE8, 0x0C, 0x23, 0x17, 0x63, 0xA3, 0x68,\n0x18, 0xD2, 0x55, 0x53, 0xDC, 0x50, 0x15, 0xB3, 0x1D, 0x41, 0x0C, 0xA3, 0x28, 0xE6, 0x8C, 0x24,\n0xC9, 0x8C, 0xF1, 0x8A, 0x9A, 0xBA, 0x2B, 0xFA, 0x0D, 0x25, 0x4E, 0x21, 0x7A, 0x0D, 0x1D, 0x42,\n0xCD, 0xB9, 0x96, 0xE2, 0x73, 0xCE, 0x53, 0x19, 0xC6, 0x24, 0x69, 0xFD, 0x09, 0x1C, 0x31, 0x8E,\n0x16, 0x63, 0xA3, 0x68, 0x18, 0x6A, 0xAC, 0x42, 0xBC, 0x95, 0x23, 0x6E, 0x0C, 0xEF, 0xFB, 0x0C,\n0x05, 0x71, 0x4E, 0x80, 0x79, 0x64, 0x18, 0x93, 0xD6, 0x87, 0x96, 0x0B, 0x09, 0xC7, 0x12, 0x8A,\n0x9A, 0xBA, 0x2B, 0x9E, 0x94, 0x59, 0xA6, 0x6C, 0x08, 0xC2, 0xD7, 0xAF, 0xA5, 0x14, 0x19, 0x30,\n0x4F, 0xF6, 0xEB, 0x4A, 0x11, 0x09, 0x30, 0x36, 0x8A, 0xE5, 0x0D, 0x79, 0x99, 0xC6, 0x1B, 0x0A,\n0x84, 0x2A, 0x66, 0x2C, 0x98, 0xE7, 0xF9, 0xE2, 0x32, 0x49, 0x3E, 0xAC, 0x43, 0x8E, 0xCC, 0x98,\n0xFF, 0x7C, 0xBF, 0xE2, 0x59, 0xA3, 0xE8, 0x33, 0x44, 0x78, 0x99, 0x72, 0x21, 0xB2, 0xA1, 0x8E,\n0xE1, 0x15, 0x62, 0x9A, 0x0B, 0x72, 0x1E, 0x3E, 0x5C, 0xFE, 0x12, 0xC5, 0x76, 0x1B, 0x90, 0xC4,\n0xE8, 0x19, 0xC6, 0xB2, 0x8A, 0x75, 0x40, 0x3C, 0x31, 0x07, 0x11, 0x85, 0xC8, 0x86, 0xA8, 0x43,\n0x8C, 0xA1, 0xA4, 0xDB, 0xCD, 0x4B, 0x91, 0xFD, 0xF2, 0xAC, 0xE6, 0x49, 0x92, 0xB4, 0x85, 0x91,\n0x1D, 0x79, 0x18, 0xB1, 0x52, 0x1B, 0xC5, 0x6A, 0x86, 0x0F, 0x62, 0x0C, 0xCF, 0x37, 0x86, 0xAD,\n0xEE, 0xCF, 0x4B, 0x0F, 0x20, 0x92, 0x5E, 0xAA, 0xA2, 0x06, 0x8E, 0xC4, 0xC8, 0x8A, 0x12, 0x3C,\n0x35, 0x1A, 0x45, 0x18, 0x16, 0x59, 0xA6, 0x6C, 0xC8, 0xAB, 0x54, 0x1C, 0x84, 0x23, 0xB9, 0xCC,\n0x3C, 0x82, 0x48, 0x36, 0x13, 0xC5, 0x9E, 0xEB, 0x08, 0x46, 0xEC, 0x54, 0x2E, 0x46, 0x47, 0xF1,\n0x41, 0xBD, 0x15, 0xC9, 0x90, 0x06, 0x91, 0x0B, 0x31, 0xC6, 0x50, 0x11, 0x93, 0x14, 0x82, 0xBE,\n0xAC, 0x16, 0x09, 0x18, 0xDB, 0xC4, 0xE8, 0x1D, 0x46, 0x9C, 0x37, 0x9B, 0x67, 0x7F, 0xED, 0x15,\n0x63, 0x0D, 0x15, 0xD1, 0x35, 0xFC, 0x48, 0x86, 0xDB, 0x84, 0xF2, 0x86, 0x48, 0xE6, 0x01, 0xC1,\n0x27, 0x9A, 0xA5, 0x0C, 0x63, 0xAF, 0x27, 0x8C, 0x79, 0xC0, 0x88, 0x61, 0x0C, 0x28, 0xBE, 0x69,\n0x14, 0xF9, 0x30, 0x35, 0x96, 0x29, 0x0A, 0x31, 0xC6, 0x50, 0x3C, 0x12, 0x29, 0x45, 0x2F, 0x1F,\n0x92, 0xCD, 0x45, 0xB1, 0x03, 0x47, 0x30, 0xBA, 0xC3, 0x88, 0x62, 0x6C, 0x14, 0x4D, 0x43, 0x1E,\n0x44, 0x2E, 0x44, 0x32, 0xA4, 0x55, 0xAA, 0x18, 0x6D, 0x29, 0x45, 0x1F, 0x20, 0x32, 0x1C, 0x0E,\n0xD7, 0x2B, 0xB5, 0xB7, 0x0E, 0x18, 0x9D, 0x9D, 0x1A, 0xAD, 0xA8, 0xA9, 0x9D, 0x22, 0x19, 0x9A,\n0xAF, 0x0B, 0xCB, 0x10, 0x63, 0x28, 0x1E, 0x52, 0x8A, 0x8E, 0x20, 0xF4, 0x90, 0xF5, 0x4A, 0xED,\n0xF8, 0x18, 0xAB, 0x2B, 0xD6, 0xE0, 0xD1, 0x6F, 0x1B, 0x02, 0x91, 0x8F, 0x1A, 0x8F, 0x61, 0x77,\n0xC7, 0xB0, 0xD7, 0x4E, 0x16, 0x0C, 0x38, 0xA4, 0xE8, 0x95, 0xDA, 0x91, 0xF4, 0x34, 0xC4, 0x88,\n0x95, 0x2A, 0xC5, 0x88, 0xA7, 0x46, 0xA3, 0x18, 0x30, 0x44, 0x21, 0xFE, 0x65, 0x99, 0x86, 0x0D,\n0x41, 0x28, 0x88, 0xBD, 0xE4, 0x17, 0x08, 0x01, 0x48, 0x59, 0x2D, 0x26, 0xC9, 0xA8, 0xA3, 0x21,\n0x46, 0x0C, 0x23, 0xCE, 0x9B, 0x42, 0x8A, 0x47, 0xBE, 0x50, 0x43, 0x86, 0xB7, 0x6D, 0x43, 0x4D,\n0xC8, 0x50, 0x3D, 0x92, 0x24, 0x0B, 0x09, 0x22, 0xE9, 0x6C, 0x32, 0xEA, 0xF4, 0xFB, 0xFD, 0x5D,\n0xC6, 0xC0, 0x4A, 0x0D, 0x2A, 0xDE, 0xA9, 0x8D, 0xA2, 0x69, 0x28, 0xC1, 0xEB, 0x82, 0x0B, 0xD1,\n0x36, 0xEC, 0x74, 0xB4, 0x14, 0x21, 0x18, 0xC8, 0xDB, 0xA5, 0x28, 0x8E, 0xFA, 0x60, 0xDC, 0x1D,\n0xC6, 0x46, 0xD1, 0x34, 0x8C, 0x2F, 0x44, 0x3A, 0x6A, 0x82, 0x86, 0xFD, 0xCE, 0x28, 0x59, 0x80,\n0x90, 0xE5, 0xB6, 0xB3, 0x9A, 0xAB, 0xE2, 0x86, 0xB1, 0xAD, 0x31, 0x15, 0x25, 0x75, 0x56, 0xB4,\n0x0C, 0x79, 0x99, 0xE2, 0xA8, 0xF1, 0x1A, 0x3A, 0x84, 0x6A, 0x28, 0x88, 0x93, 0x19, 0x04, 0x1D,\n0x3E, 0x4A, 0x3A, 0x99, 0x88, 0x22, 0x18, 0x59, 0xF1, 0xBC, 0x51, 0x2C, 0xBC, 0x4C, 0xF1, 0xBA,\n0xA0, 0x42, 0x34, 0x0D, 0x3B, 0x62, 0x28, 0x19, 0x4D, 0xB2, 0x30, 0x20, 0xF2, 0xEC, 0x99, 0xAE,\n0xD4, 0xFE, 0x20, 0x67, 0xEC, 0x39, 0x8C, 0xA5, 0x15, 0x6F, 0x1F, 0xAF, 0x62, 0x94, 0xA1, 0x86,\n0x0A, 0x31, 0xD2, 0x50, 0x25, 0x06, 0x83, 0xC1, 0x68, 0xB2, 0x34, 0x01, 0xA1, 0x98, 0x69, 0x31,\n0x0E, 0x06, 0xFE, 0x61, 0x7C, 0xAD, 0x69, 0x14, 0x2B, 0x19, 0xA2, 0x10, 0x61, 0xA8, 0x09, 0x19,\n0x2A, 0xE2, 0xC2, 0x16, 0x04, 0xE3, 0xBA, 0x18, 0xE5, 0xDB, 0x9C, 0x61, 0xBC, 0x5A, 0xA9, 0x8D,\n0xA2, 0x69, 0x68, 0x17, 0x22, 0x1F, 0xA6, 0x6C, 0x88, 0x55, 0x3A, 0xC8, 0x11, 0x67, 0x20, 0x8C,\n0x50, 0x7C, 0xBB, 0x90, 0x62, 0x54, 0x45, 0xCD, 0xD6, 0x30, 0xBA, 0x8A, 0x77, 0x6B, 0xAF, 0x68,\n0x1B, 0xE2, 0x75, 0x41, 0x85, 0x68, 0x1B, 0x82, 0x70, 0x30, 0x1E, 0x8F, 0x66, 0x2B, 0x08, 0xBA,\n0x64, 0xBE, 0xA4, 0x33, 0x51, 0x94, 0xB0, 0x62, 0xAB, 0x94, 0xE2, 0x8D, 0xE3, 0x54, 0x0C, 0x18,\n0x06, 0x0B, 0x91, 0x8F, 0x1A, 0xDB, 0x70, 0xAA, 0xA5, 0x18, 0xE0, 0xE3, 0x3C, 0x5A, 0xE6, 0x8A,\n0x60, 0x34, 0x14, 0xEF, 0xD7, 0x52, 0x31, 0xCE, 0x90, 0x0B, 0xB1, 0xA8, 0xE1, 0x58, 0x32, 0x9D,\n0x4E, 0x16, 0x04, 0x68, 0x44, 0x8B, 0x91, 0x86, 0xB1, 0x51, 0x34, 0x06, 0x91, 0x0C, 0x8D, 0x42,\n0xB4, 0x0C, 0x07, 0x1B, 0xC3, 0xAF, 0xD3, 0xE9, 0xC5, 0xCC, 0x10, 0xE4, 0x59, 0xDC, 0x55, 0xEC,\n0x34, 0x8A, 0xC5, 0x0C, 0x71, 0xD4, 0x70, 0x21, 0xE2, 0xA8, 0xD9, 0x35, 0xEC, 0x7A, 0x0D, 0xC7,\n0x6B, 0xC3, 0x35, 0xE2, 0x8A, 0x04, 0x2D, 0xC5, 0x67, 0x7A, 0xDE, 0x8C, 0x37, 0x8C, 0x9B, 0x62,\n0x6C, 0x14, 0x63, 0x8E, 0x9A, 0x70, 0x21, 0x3A, 0x86, 0xE7, 0x64, 0xD8, 0x81, 0xA1, 0x12, 0x4A,\n0xC4, 0x70, 0x9E, 0x23, 0x7A, 0xB5, 0xFC, 0x11, 0xC5, 0x74, 0xF2, 0xB7, 0x62, 0x74, 0x3F, 0x82,\n0xAB, 0xA1, 0xA2, 0x61, 0x68, 0x16, 0x22, 0x0E, 0x53, 0xDB, 0x50, 0x09, 0x2F, 0x66, 0xE9, 0x90,\n0x08, 0x89, 0x8F, 0x83, 0xF3, 0x66, 0xD0, 0x28, 0xBA, 0x31, 0x0C, 0xCB, 0x14, 0x22, 0x0C, 0xFB,\n0x1E, 0xC3, 0x25, 0x13, 0x3E, 0x8A, 0xC9, 0xE3, 0x4C, 0x14, 0xC7, 0x21, 0xC5, 0xF3, 0xBA, 0x2A,\n0x96, 0x33, 0x7C, 0x57, 0xDC, 0xF0, 0x6B, 0x5E, 0x87, 0x8B, 0x15, 0x08, 0x49, 0xD0, 0x50, 0xDC,\n0x9C, 0x37, 0x28, 0x46, 0x3C, 0xFB, 0x4B, 0x2A, 0x1E, 0xC3, 0xEF, 0xFA, 0x4F, 0xB6, 0x62, 0x18,\n0x52, 0x21, 0x46, 0x19, 0xBA, 0xAB, 0x14, 0x84, 0x24, 0x68, 0x47, 0x15, 0xE9, 0xBC, 0xA9, 0xBD,\n0x62, 0xF4, 0xE3, 0x82, 0x3F, 0xF6, 0xC6, 0x51, 0x13, 0x6F, 0x38, 0xCF, 0x0C, 0x42, 0x2B, 0x6F,\n0x17, 0xB9, 0xA2, 0xA4, 0x51, 0x04, 0xA2, 0x65, 0xC8, 0xCB, 0x14, 0x47, 0x4D, 0x51, 0x43, 0x59,\n0xA5, 0xA6, 0xE0, 0x63, 0x5F, 0x1E, 0x21, 0x7B, 0x54, 0xD4, 0x1C, 0x81, 0x62, 0xB5, 0xA3, 0x86,\n0x0F, 0xD3, 0x96, 0xC4, 0x6F, 0xA8, 0x75, 0x98, 0x6E, 0x8F, 0x61, 0xA4, 0x1F, 0x4B, 0xA6, 0xB3,\n0x8B, 0xDD, 0xF3, 0xA6, 0xE6, 0x8A, 0x85, 0x0C, 0xCF, 0x42, 0x47, 0x8D, 0x69, 0xA8, 0x57, 0x29,\n0x13, 0x32, 0xA0, 0x0D, 0xF9, 0x78, 0x19, 0x52, 0x94, 0x94, 0x54, 0x3C, 0xD0, 0xFF, 0x72, 0xBB,\n0xBF, 0xA3, 0x06, 0x0F, 0x44, 0xF7, 0x7D, 0x98, 0x7F, 0xD0, 0xA6, 0x75, 0xB8, 0x82, 0x61, 0x09,\n0x41, 0x24, 0x57, 0x9C, 0x8E, 0x49, 0x51, 0x52, 0x43, 0xC5, 0xC2, 0x86, 0x76, 0x21, 0xE2, 0xB3,\n0x36, 0x18, 0x5E, 0xBD, 0x2C, 0x30, 0x86, 0x86, 0xA0, 0x99, 0x53, 0x79, 0xF6, 0x57, 0x57, 0x3C,\n0x8E, 0xBF, 0x08, 0x2F, 0x78, 0x98, 0xDE, 0xAB, 0x62, 0x98, 0x62, 0x0C, 0x6D, 0x41, 0x3B, 0xD9,\n0xBE, 0x14, 0x71, 0xA4, 0x1E, 0xE6, 0x3F, 0x0E, 0xAF, 0x62, 0x88, 0xA3, 0xC6, 0x32, 0x44, 0x1D,\n0xC6, 0x13, 0x9E, 0xEE, 0xC6, 0xF7, 0x15, 0xAB, 0x46, 0x31, 0x6A, 0x99, 0xB2, 0x21, 0x1F, 0x35,\n0x38, 0x4C, 0xF1, 0xB8, 0x60, 0xC3, 0x79, 0xE6, 0x1D, 0x43, 0x83, 0x2F, 0x4C, 0xB9, 0x9A, 0x43,\n0x51, 0x18, 0xFF, 0x91, 0xE2, 0x75, 0x67, 0x8C, 0x2F, 0xC4, 0x33, 0xE3, 0xA8, 0x09, 0x18, 0x5E,\n0x9D, 0x34, 0x51, 0x84, 0xA7, 0x76, 0x3C, 0x8A, 0x9A, 0xDA, 0x2A, 0x96, 0x3A, 0x4C, 0xA9, 0x10,\n0xE9, 0x71, 0xC1, 0x86, 0xB3, 0x85, 0x6F, 0x95, 0x06, 0x00, 0xBF, 0x70, 0x1C, 0x48, 0x28, 0x8E,\n0x8A, 0x2A, 0xBE, 0x3F, 0x26, 0xC5, 0x7F, 0x75, 0x98, 0xB2, 0x21, 0x4E, 0x1A, 0x9B, 0xF0, 0x4B,\n0x28, 0x0E, 0xE3, 0xE9, 0x97, 0x7F, 0xA1, 0x78, 0x50, 0x8C, 0x84, 0x58, 0xEE, 0xA8, 0xB1, 0x0D,\n0x97, 0x96, 0x21, 0x01, 0xC6, 0x40, 0xE6, 0xDF, 0xF8, 0x68, 0x51, 0x55, 0xF1, 0xEC, 0x90, 0x15,\n0xED, 0x3F, 0x9C, 0xB1, 0x8F, 0x9A, 0x48, 0x43, 0x83, 0x90, 0x04, 0x3F, 0xF9, 0xC2, 0x8E, 0xFA,\n0xBD, 0x8F, 0xFF, 0x93, 0xE2, 0xF5, 0x64, 0x8C, 0x5C, 0xA6, 0x30, 0xB4, 0x8F, 0x1A, 0x36, 0xD4,\n0xA7, 0x45, 0x16, 0x36, 0x04, 0x21, 0xFB, 0x71, 0x1C, 0x46, 0x28, 0x8E, 0x6B, 0xA9, 0x18, 0x6F,\n0x68, 0x1F, 0x35, 0x38, 0x4C, 0x7B, 0x8A, 0x08, 0x43, 0x3D, 0x4B, 0x83, 0x86, 0xA6, 0xA0, 0xED,\n0x78, 0x5A, 0x5E, 0x51, 0x73, 0xC8, 0x8A, 0x46, 0x21, 0xDA, 0x47, 0x8D, 0xF5, 0xB8, 0x50, 0xC3,\n0x11, 0x19, 0x06, 0x08, 0x49, 0xCB, 0x74, 0xAC, 0xA8, 0xF8, 0xCE, 0x54, 0xBC, 0xE6, 0x8C, 0x46,\n0x21, 0x92, 0x61, 0xF1, 0xA3, 0x46, 0xE7, 0x70, 0x62, 0x18, 0x1A, 0x84, 0x36, 0x63, 0x55, 0xC5,\n0x37, 0x07, 0xAD, 0xB8, 0x8F, 0x4F, 0x6A, 0x6C, 0xC3, 0xC5, 0x90, 0x0C, 0x89, 0x10, 0x82, 0x05,\n0xB3, 0xCD, 0x58, 0x55, 0xF1, 0xDE, 0x21, 0x2A, 0x9E, 0x20, 0xB1, 0xBF, 0x06, 0xB6, 0x8F, 0x1A,\n0x36, 0x7C, 0x6B, 0x19, 0x86, 0x09, 0x5F, 0xE4, 0x09, 0x33, 0x9E, 0xAE, 0xA3, 0x8A, 0xD3, 0x7A,\n0x29, 0x1A, 0x85, 0x48, 0x86, 0x74, 0xD4, 0x54, 0x34, 0x64, 0x42, 0xC6, 0xE3, 0x04, 0x18, 0xF7,\n0xAF, 0xA8, 0xB9, 0xDE, 0x8A, 0x65, 0x0A, 0xD1, 0x3E, 0x4C, 0xD9, 0xF0, 0xAD, 0x6D, 0x48, 0x80,\n0xE1, 0x04, 0x14, 0xE7, 0xFB, 0x53, 0xD4, 0x5C, 0x77, 0xC5, 0x13, 0x64, 0xBF, 0x47, 0x4D, 0xAC,\n0x21, 0x08, 0x49, 0xD0, 0xCE, 0xDF, 0x18, 0x57, 0xB5, 0x52, 0xB4, 0x0B, 0xB1, 0xD2, 0x51, 0x93,\n0x1B, 0xA6, 0x6A, 0x98, 0xC7, 0x30, 0x24, 0x42, 0x33, 0x7E, 0xC5, 0x4F, 0xC5, 0x14, 0x63, 0xFF,\n0xE1, 0x8D, 0x32, 0x5E, 0xC3, 0xCF, 0xE0, 0x8C, 0x65, 0x5A, 0xF5, 0xA8, 0x89, 0x36, 0x64, 0xC1,\n0xF8, 0x10, 0xA3, 0xFE, 0xD0, 0x1A, 0x29, 0x9E, 0x20, 0x86, 0xE1, 0x59, 0xC9, 0xA3, 0x46, 0x0D,\n0x25, 0xB6, 0x21, 0x08, 0x8B, 0x87, 0x15, 0xF5, 0x77, 0x1A, 0x17, 0x35, 0x51, 0xB4, 0x96, 0x29,\n0x17, 0x62, 0x41, 0xC3, 0xD1, 0x64, 0xB1, 0x1F, 0xC3, 0x97, 0x79, 0x6C, 0x45, 0xCC, 0xE2, 0x2C,\n0x56, 0x51, 0x73, 0xB8, 0x8A, 0xB1, 0x85, 0x18, 0x7F, 0xD4, 0xA8, 0x61, 0x2F, 0xDA, 0x90, 0xEB,\n0xD0, 0xA3, 0x47, 0xF1, 0x5A, 0x72, 0x31, 0x7E, 0x29, 0xAE, 0x28, 0x39, 0x38, 0x45, 0x63, 0x99,\n0x56, 0x38, 0x6A, 0x60, 0x38, 0x04, 0xA2, 0xC7, 0xD0, 0x22, 0x04, 0x9B, 0xED, 0xC8, 0xC3, 0xB8,\n0x9C, 0x5D, 0xFC, 0xE6, 0xEE, 0xDE, 0x59, 0x9E, 0x08, 0xA2, 0x30, 0x8E, 0x37, 0x5A, 0x68, 0x23,\n0x88, 0x48, 0x9A, 0xD7, 0x0B, 0x5E, 0x1A, 0x45, 0x54, 0xF0, 0x82, 0x0A, 0x8A, 0xA4, 0x50, 0xBC,\n0xA7, 0xB5, 0x09, 0x22, 0xC1, 0x22, 0x31, 0x64, 0xF3, 0xFD, 0xC1, 0x3D, 0xBB, 0xBA, 0xFF, 0xCC,\n0x3C, 0x33, 0x7B, 0x36, 0xBB, 0x8E, 0x8A, 0xA7, 0xB2, 0x53, 0xF9, 0x71, 0xAE, 0x3B, 0xAF, 0x7E,\n0xFE, 0xEF, 0x15, 0x1D, 0x43, 0xE7, 0xF3, 0x93, 0x53, 0x4C, 0x93, 0x86, 0x16, 0x9E, 0x21, 0x82,\n0x5E, 0x78, 0x8A, 0xF3, 0x72, 0x8A, 0xFF, 0xCC, 0x33, 0xB8, 0xA1, 0x0D, 0x71, 0xE4, 0x50, 0xE3,\n0x1B, 0xCE, 0xC4, 0x50, 0x04, 0xBD, 0xE8, 0x51, 0x9C, 0xFD, 0xAE, 0x5C, 0x3C, 0xF3, 0x2F, 0x2B,\n0x66, 0x11, 0xBD, 0x86, 0x38, 0xD4, 0x30, 0xF8, 0x51, 0x7C, 0xCF, 0x30, 0x09, 0x78, 0xBE, 0x8B,\n0x63, 0x18, 0x51, 0x9C, 0x6F, 0x17, 0xFF, 0xB7, 0x62, 0x81, 0x86, 0xC8, 0x50, 0x33, 0xC2, 0x10,\n0x3D, 0x08, 0x25, 0x3C, 0x46, 0xC9, 0xC5, 0x72, 0x8A, 0xFF, 0xC2, 0x23, 0x7F, 0xBF, 0x98, 0xE6,\n0x1F, 0x99, 0x62, 0x28, 0x89, 0x88, 0xE1, 0xD2, 0x0C, 0x05, 0x51, 0x77, 0x0B, 0x0C, 0x1D, 0x41,\n0x24, 0x7D, 0x45, 0x36, 0x8D, 0xCD, 0xFF, 0xAC, 0x38, 0x28, 0x11, 0xC7, 0x35, 0x44, 0x33, 0xB4,\n0xF7, 0x34, 0xF9, 0x44, 0xC4, 0x10, 0xC2, 0xB4, 0xDF, 0xEB, 0x5F, 0xD1, 0x0B, 0xD9, 0xA3, 0x78,\n0x65, 0x63, 0x8B, 0xC6, 0x28, 0x45, 0xFD, 0x4A, 0xFC, 0x8F, 0xFD, 0xFF, 0xD2, 0xC7, 0x14, 0xD3,\n0xA3, 0xB7, 0x7C, 0x0C, 0x0D, 0xD1, 0x31, 0xA4, 0x11, 0x02, 0x88, 0x20, 0xA1, 0x94, 0xC3, 0x14,\n0xF7, 0xEB, 0x63, 0x15, 0x9D, 0x6F, 0xFD, 0xFF, 0x8E, 0xA2, 0x22, 0x52, 0x4C, 0x9D, 0x86, 0x28,\n0x5B, 0xBE, 0x7C, 0x7E, 0xAA, 0x0D, 0xAB, 0x57, 0x6E, 0x31, 0x85, 0xB0, 0x8E, 0x7C, 0x0E, 0x6A,\n0x24, 0x1D, 0x13, 0x8A, 0x9C, 0x6E, 0x0A, 0x28, 0x6A, 0x41, 0x1D, 0x81, 0x58, 0x38, 0x11, 0xFD,\n0x1F, 0x25, 0xD5, 0x2D, 0xBF, 0x33, 0x7C, 0xB7, 0xD8, 0xBE, 0xF2, 0x12, 0x11, 0x43, 0x2A, 0xA9,\n0x12, 0xFA, 0x90, 0xBE, 0xE2, 0x7C, 0x67, 0x8B, 0xC6, 0x6F, 0x56, 0x3C, 0xF5, 0xF7, 0x15, 0xC7,\n0x6D, 0x17, 0x7E, 0x31, 0xC5, 0xB0, 0x2F, 0x11, 0x29, 0xA6, 0x08, 0x3A, 0x86, 0xBE, 0xA3, 0x2A,\n0xD2, 0x16, 0xAB, 0xAC, 0xE2, 0x43, 0x4F, 0xD1, 0x10, 0x07, 0x2B, 0xFE, 0x7D, 0x44, 0x8A, 0xE9,\n0xF8, 0x86, 0xD8, 0x2D, 0xF9, 0x24, 0x62, 0xBA, 0x98, 0xD2, 0x0F, 0x31, 0x4C, 0x11, 0x5E, 0xAC,\n0x63, 0x80, 0x63, 0x8F, 0x62, 0xF3, 0xDB, 0x6D, 0x59, 0xFA, 0x4D, 0xF1, 0xE9, 0x60, 0xC5, 0xD1,\n0x3F, 0xA7, 0x51, 0x5E, 0x71, 0xF0, 0x7F, 0x87, 0xE8, 0x36, 0x44, 0x1D, 0x6A, 0x9A, 0x05, 0xD1,\n0x4B, 0x44, 0xA6, 0x52, 0x10, 0xF1, 0x43, 0x30, 0x0A, 0xCF, 0x31, 0x57, 0x50, 0xAF, 0x34, 0x8B,\n0x06, 0x8A, 0x77, 0xCA, 0x2B, 0x96, 0x47, 0x3C, 0xA2, 0x98, 0xFA, 0x0D, 0x31, 0x1E, 0x6A, 0x16,\n0xFC, 0x6B, 0xD0, 0x99, 0x44, 0x44, 0x30, 0x32, 0x7C, 0x9D, 0x22, 0xF4, 0x29, 0x45, 0x51, 0x0B,\n0xAA, 0x2D, 0x1A, 0xA3, 0x14, 0xEF, 0xFE, 0xAB, 0x8A, 0xC9, 0x44, 0x9C, 0x5A, 0x4C, 0x19, 0x4C,\n0x77, 0x18, 0xA6, 0x10, 0xE9, 0x86, 0xF1, 0x48, 0x93, 0xE4, 0xBB, 0xF0, 0x33, 0x7A, 0x1D, 0xFB,\n0x14, 0x5B, 0x44, 0x5B, 0x34, 0x58, 0xFA, 0x7D, 0x45, 0x5E, 0xF8, 0x7B, 0xC7, 0xF0, 0xF1, 0x88,\n0xE5, 0x8B, 0xA9, 0x6E, 0x17, 0x8E, 0x21, 0xCB, 0x85, 0x22, 0x62, 0x68, 0x13, 0x4D, 0x66, 0xB1,\n0x00, 0x10, 0x41, 0x42, 0x28, 0x8F, 0x53, 0x9C, 0xED, 0x19, 0x6E, 0x5C, 0x45, 0x43, 0x1C, 0xA9,\n0xF8, 0x37, 0x11, 0xFD, 0x62, 0xEA, 0x36, 0x44, 0x06, 0xD3, 0xFC, 0x58, 0x33, 0x9B, 0x09, 0x62,\n0x38, 0xCC, 0xF4, 0x11, 0xAA, 0x64, 0x5E, 0x51, 0x53, 0x71, 0x56, 0x8D, 0x52, 0x1C, 0xF2, 0x04,\n0x6E, 0x82, 0x62, 0xF9, 0x62, 0xCA, 0x76, 0x31, 0xBC, 0x21, 0x6E, 0xAE, 0xE5, 0x13, 0x71, 0x26,\n0x86, 0x52, 0x48, 0xC1, 0x73, 0x42, 0x18, 0x1B, 0xC4, 0x3E, 0xC5, 0xF9, 0x76, 0x9A, 0xA2, 0xBF,\n0x68, 0xF8, 0x88, 0xE5, 0x8B, 0xE9, 0xF4, 0x86, 0xD8, 0x0E, 0xA6, 0xB9, 0xB1, 0x86, 0x43, 0xCD,\n0x34, 0x43, 0x75, 0x44, 0x11, 0x46, 0x41, 0xAC, 0x47, 0xD4, 0xAF, 0xFF, 0x8B, 0xE2, 0x98, 0x62,\n0x3A, 0xBC, 0x21, 0x62, 0x18, 0x21, 0xAA, 0x21, 0xED, 0x10, 0x41, 0x0C, 0x8F, 0x71, 0x44, 0x11,\n0xC6, 0x94, 0xE2, 0xA5, 0x75, 0x8D, 0x38, 0x50, 0x51, 0x96, 0xFE, 0xE1, 0x23, 0xAA, 0x87, 0x58,\n0xBE, 0x98, 0xAA, 0x61, 0xBE, 0x98, 0x62, 0xF8, 0x82, 0xA1, 0x26, 0x53, 0x4D, 0x63, 0xC4, 0x68,\n0xA2, 0x49, 0x36, 0xC2, 0x37, 0x07, 0xE1, 0x31, 0xB2, 0x6A, 0xA0, 0x18, 0x23, 0xB6, 0xC3, 0xCD,\n0xC7, 0x11, 0x8A, 0xCE, 0xBA, 0xE8, 0x21, 0xFE, 0xEB, 0xC5, 0x34, 0xD8, 0xF2, 0xB7, 0xD7, 0x04,\n0x91, 0x8E, 0xC8, 0xA5, 0x26, 0x31, 0xD2, 0x20, 0x98, 0x32, 0x24, 0x72, 0x8C, 0x7A, 0xBF, 0x11,\n0x44, 0x0B, 0x1B, 0x6E, 0x3E, 0x86, 0x8A, 0x57, 0xD3, 0x8A, 0xFE, 0xBA, 0x78, 0xBA, 0xB4, 0xA2,\n0x6F, 0xE8, 0x17, 0xD3, 0xE1, 0xDB, 0x05, 0x43, 0x4D, 0x1A, 0x11, 0xC3, 0x97, 0x62, 0x48, 0x29,\n0x85, 0x05, 0xC2, 0x64, 0x0C, 0x53, 0xD4, 0x54, 0xB4, 0xD8, 0xBA, 0x8A, 0xB7, 0x1C, 0x45, 0xA7,\n0x2D, 0x16, 0x43, 0xC4, 0x70, 0xEA, 0x76, 0xE1, 0x0C, 0x35, 0x6A, 0x68, 0x88, 0xD1, 0xB5, 0x8D,\n0xDD, 0xC2, 0x08, 0x7D, 0x43, 0x1F, 0x92, 0x82, 0xEA, 0xA5, 0xA2, 0x5D, 0x6E, 0x7C, 0x45, 0x43,\n0x44, 0x71, 0xC4, 0x70, 0x13, 0x21, 0xFE, 0x3B, 0xC5, 0xD4, 0x6F, 0x88, 0xBB, 0x64, 0x22, 0x82,\n0x38, 0x87, 0xD0, 0x02, 0x43, 0x10, 0x31, 0xF4, 0xC3, 0x53, 0x34, 0x44, 0x55, 0xDC, 0xAF, 0x0D,\n0x71, 0x90, 0xE2, 0xF0, 0x11, 0x75, 0x44, 0x2A, 0x96, 0xFE, 0x88, 0xA8, 0xC5, 0xD4, 0x6F, 0x88,\n0xEF, 0xAC, 0x21, 0xF6, 0x21, 0x06, 0x33, 0xCD, 0x18, 0xC3, 0x47, 0x16, 0x49, 0x47, 0xA6, 0x1B,\n0x1D, 0x6E, 0x34, 0x15, 0xF7, 0x4B, 0x57, 0x51, 0x17, 0x0D, 0x46, 0x54, 0x6D, 0x8B, 0x4E, 0x2A,\n0xFE, 0x13, 0xC5, 0x74, 0x70, 0x43, 0x3C, 0xE9, 0x45, 0x9C, 0x77, 0x88, 0xC9, 0x5B, 0x69, 0x04,\n0x08, 0x9C, 0x86, 0x3A, 0xC2, 0xA8, 0xB7, 0x1B, 0x41, 0xBC, 0x52, 0xF5, 0x29, 0x0E, 0x1F, 0x51,\n0xB5, 0xA0, 0x16, 0x4C, 0x45, 0x0C, 0x47, 0xDD, 0xBD, 0xD9, 0x2E, 0xBC, 0x86, 0xD8, 0x21, 0x8A,\n0x21, 0xE7, 0x36, 0x36, 0x7C, 0xE9, 0x88, 0x3E, 0x21, 0xE1, 0x31, 0xB2, 0x2E, 0xA2, 0x68, 0x88,\n0x5D, 0x5B, 0xFC, 0x38, 0x42, 0xD1, 0x19, 0x6E, 0x4A, 0xA6, 0x22, 0x86, 0x45, 0xB6, 0x0B, 0x1A,\n0xE2, 0xC9, 0x89, 0x26, 0x22, 0x2B, 0x22, 0xCB, 0x05, 0x88, 0xA9, 0x23, 0x8D, 0x0A, 0x3E, 0xB1,\n0x70, 0x15, 0x61, 0x04, 0x11, 0xC5, 0x20, 0x15, 0x2F, 0xDD, 0x68, 0xDA, 0xA2, 0x2A, 0x3E, 0xB8,\n0x2A, 0x8A, 0x32, 0xA2, 0x3A, 0x6D, 0x51, 0x10, 0x8B, 0x1B, 0x4E, 0x2F, 0xA6, 0x07, 0x1B, 0xE2,\n0x89, 0x22, 0xB2, 0x23, 0x32, 0x98, 0x82, 0x98, 0xDE, 0x0F, 0xF1, 0x83, 0x90, 0x48, 0x32, 0xA2,\n0x08, 0x22, 0x8A, 0x82, 0x48, 0x5B, 0x4C, 0xE5, 0xE2, 0x03, 0x55, 0xD4, 0xE1, 0x86, 0x82, 0xEA,\n0x20, 0xD6, 0xF1, 0x37, 0x0D, 0xB5, 0x98, 0x3A, 0x0D, 0x51, 0x10, 0xC3, 0x83, 0x5B, 0x4B, 0xA8,\n0xD5, 0x54, 0x04, 0xB3, 0x86, 0x2A, 0x99, 0x56, 0xA4, 0x9E, 0x86, 0x8A, 0x86, 0xC8, 0x3F, 0xDF,\n0xAF, 0x8A, 0x35, 0xE3, 0x83, 0xC5, 0x66, 0x45, 0x2E, 0x32, 0xA2, 0x3A, 0xC3, 0x4D, 0xE1, 0x54,\n0xC4, 0x70, 0x5A, 0x31, 0x75, 0xB7, 0x8B, 0xBD, 0x19, 0xA6, 0x11, 0x49, 0xC4, 0xCC, 0xC1, 0x34,\n0xAE, 0xA4, 0x02, 0x98, 0x87, 0x54, 0x44, 0x14, 0xCF, 0xC7, 0xA9, 0x08, 0xE2, 0xA5, 0xA6, 0x2D,\n0x6A, 0x2E, 0xAE, 0x36, 0xBB, 0xD5, 0xCA, 0x72, 0x91, 0x45, 0xA3, 0x67, 0xB8, 0xA1, 0xA0, 0x32,\n0xA1, 0x96, 0x40, 0xC4, 0xB0, 0xC0, 0x76, 0xC1, 0x37, 0xC4, 0x65, 0x75, 0x22, 0x88, 0x87, 0xC7,\n0x1A, 0x86, 0x9A, 0x78, 0xBB, 0x48, 0xB4, 0x43, 0x11, 0x7C, 0xD6, 0x45, 0xDE, 0x31, 0x79, 0xBB,\n0x01, 0x31, 0x4C, 0xC5, 0xFA, 0x4F, 0x65, 0xDB, 0xA2, 0x28, 0xAE, 0x56, 0xD5, 0xC9, 0x06, 0x45,\n0x1D, 0x6E, 0xB4, 0x2D, 0xFA, 0xA9, 0x58, 0xC6, 0xB0, 0xC0, 0xA9, 0x66, 0x7B, 0x02, 0x22, 0x86,\n0x8C, 0xA6, 0x66, 0x98, 0x42, 0xA4, 0x1D, 0x4A, 0x37, 0x14, 0xC3, 0x94, 0xA4, 0x20, 0xAA, 0x22,\n0x7B, 0xC6, 0x21, 0xE2, 0x95, 0x4B, 0x3B, 0x0A, 0x6A, 0xAB, 0x68, 0x88, 0xCB, 0x93, 0x93, 0xDD,\n0x17, 0x43, 0x44, 0x91, 0xE1, 0xE6, 0xC8, 0xB6, 0x48, 0x2A, 0x96, 0x37, 0x3C, 0xB2, 0x98, 0x66,\n0xB6, 0x8B, 0x10, 0x91, 0xFD, 0xA2, 0x3B, 0xD5, 0x80, 0x88, 0x61, 0xDF, 0x48, 0x23, 0x7C, 0x49,\n0x48, 0x4D, 0x45, 0x18, 0x55, 0x11, 0x44, 0x8B, 0xAD, 0x15, 0xD4, 0x40, 0xF1, 0xDD, 0xCA, 0x3A,\n0xFB, 0xDA, 0xBA, 0xA2, 0x3B, 0xDC, 0x68, 0x41, 0x2D, 0x88, 0x08, 0x21, 0x86, 0xD3, 0x5F, 0xD5,\n0xE8, 0x76, 0x11, 0xCC, 0x35, 0x9C, 0x4D, 0x31, 0x8C, 0x3A, 0xA2, 0xA6, 0xA1, 0x85, 0xA6, 0x60,\n0x3E, 0x50, 0x04, 0x31, 0xA5, 0xC8, 0x17, 0x62, 0x6B, 0x8A, 0x28, 0xDE, 0x08, 0x0A, 0xAA, 0x29,\n0xAE, 0x56, 0xD6, 0x15, 0x2A, 0x52, 0x51, 0x87, 0x1B, 0x6D, 0x8B, 0x7E, 0x2A, 0x16, 0x37, 0xD4,\n0x86, 0xE8, 0x17, 0x53, 0xDD, 0x2E, 0xAE, 0x3B, 0x88, 0xF1, 0xC9, 0x14, 0xC4, 0x44, 0x37, 0xCC,\n0x19, 0x3E, 0x6F, 0xC3, 0x51, 0x64, 0x46, 0x05, 0x11, 0x45, 0x10, 0xEB, 0xD8, 0x2F, 0x43, 0xC5,\n0xFA, 0xA9, 0xA5, 0xFD, 0x2D, 0xAE, 0x7F, 0x5F, 0x45, 0x4B, 0xBF, 0xB4, 0x45, 0x29, 0xA8, 0xC5,\n0x52, 0x11, 0xC3, 0xC2, 0xDB, 0xC5, 0xFA, 0x7A, 0x06, 0xB1, 0xEB, 0x88, 0x7C, 0xCB, 0x87, 0x50,\n0x10, 0xE3, 0x5E, 0x18, 0xD2, 0x3D, 0x27, 0x14, 0x11, 0x46, 0x45, 0x0C, 0x52, 0x71, 0x0E, 0x62,\n0x1D, 0xD5, 0xB2, 0x2E, 0xA8, 0x28, 0xDA, 0x97, 0x34, 0xFB, 0x6B, 0x6C, 0x57, 0x2B, 0x96, 0xFE,\n0x68, 0xB8, 0x19, 0x55, 0x50, 0x0B, 0x1B, 0x8E, 0x38, 0xD5, 0x3C, 0xD0, 0x62, 0x2A, 0x88, 0x5C,\n0xDC, 0x98, 0x4C, 0x41, 0xD4, 0xA1, 0x86, 0x34, 0x8C, 0x9A, 0x61, 0x67, 0xF7, 0xF6, 0x67, 0x88,\n0x62, 0x9A, 0x31, 0xD3, 0x15, 0xE7, 0xA6, 0x08, 0xE2, 0x8D, 0xCD, 0x57, 0x14, 0x0D, 0xB1, 0x6A,\n0x10, 0xF7, 0xDF, 0xEA, 0x54, 0x14, 0xC5, 0x81, 0x05, 0xB5, 0x00, 0x22, 0x7C, 0x85, 0x1A, 0x62,\n0x53, 0x4C, 0x23, 0xC4, 0x70, 0x34, 0x9D, 0x25, 0x10, 0x19, 0x6A, 0x62, 0xC4, 0xB8, 0x92, 0x62,\n0x48, 0xA0, 0x18, 0x30, 0x2A, 0x22, 0x8A, 0x20, 0xCE, 0x40, 0x64, 0xCF, 0x68, 0x14, 0xAD, 0x9A,\n0x36, 0x88, 0xB6, 0x65, 0xD8, 0x19, 0x55, 0xDA, 0xE2, 0x91, 0x05, 0x95, 0x7A, 0x5A, 0xCE, 0xD0,\n0x6F, 0x88, 0x7E, 0x31, 0xFD, 0x6C, 0xC5, 0x34, 0x42, 0xBC, 0x07, 0x62, 0xFC, 0xCE, 0x34, 0x9A,\n0x6A, 0x10, 0xB4, 0x88, 0x4B, 0xE9, 0x01, 0xDE, 0x7B, 0x8B, 0xC0, 0x51, 0x1A, 0xA3, 0x22, 0xA2,\n0x18, 0x20, 0xCE, 0x40, 0xBC, 0x71, 0xA3, 0x5A, 0xA2, 0x68, 0xD5, 0xB4, 0x45, 0xDC, 0x7D, 0x5B,\n0x5D, 0xBD, 0x9A, 0x6D, 0x8B, 0xB9, 0x82, 0xEA, 0xA4, 0x62, 0x69, 0x43, 0x1A, 0xA2, 0x7F, 0xAA,\n0xD1, 0x27, 0xFB, 0x11, 0x22, 0x4B, 0x62, 0x63, 0x08, 0x62, 0x3C, 0xD5, 0xE8, 0x5C, 0x4A, 0x29,\n0x15, 0x44, 0x8B, 0x0F, 0x16, 0x54, 0x55, 0x14, 0x73, 0x88, 0x16, 0x8A, 0x38, 0x03, 0xF1, 0xD2,\n0x0D, 0xDB, 0x33, 0xDA, 0xF8, 0x5C, 0x57, 0x53, 0x43, 0xB4, 0x58, 0x5B, 0x2A, 0x3A, 0xDB, 0x22,\n0x05, 0xD5, 0x4F, 0xC5, 0xA9, 0x84, 0x6A, 0xE8, 0x37, 0xC4, 0xE3, 0x8A, 0xA9, 0x45, 0x6B, 0xD8,\n0x83, 0x18, 0xE4, 0x61, 0x74, 0x6C, 0x63, 0x3B, 0x84, 0x10, 0x44, 0x0C, 0xDB, 0x68, 0x73, 0x92,\n0x11, 0x87, 0x7A, 0x4A, 0x57, 0x04, 0x11, 0x45, 0x10, 0x67, 0x64, 0xE2, 0x0D, 0x0A, 0xEA, 0xE7,\n0xFA, 0x74, 0x78, 0xED, 0xA7, 0x62, 0x55, 0x23, 0x5E, 0x75, 0xDA, 0xA2, 0x14, 0x54, 0x52, 0x51,\n0xEB, 0x69, 0x39, 0x43, 0xBF, 0x21, 0xFA, 0xDB, 0xC5, 0xFA, 0x66, 0x0E, 0xF1, 0x92, 0x20, 0x62,\n0x38, 0x04, 0xD1, 0x04, 0xE1, 0xEB, 0x0C, 0xEB, 0x5F, 0x5A, 0x30, 0xE1, 0x88, 0x22, 0xAB, 0xA2,\n0x20, 0xBE, 0x14, 0x44, 0x0A, 0xEA, 0xE7, 0xC5, 0xE6, 0xD5, 0x2F, 0xC4, 0xEB, 0xCB, 0x1A, 0xB1,\n0x55, 0x74, 0x0A, 0x6A, 0xD1, 0x54, 0x54, 0xC3, 0x51, 0x0D, 0xD1, 0x29, 0xA6, 0xEF, 0x96, 0x3B,\n0x41, 0xEC, 0x0C, 0x41, 0x64, 0xD1, 0x27, 0x0F, 0x7B, 0x11, 0x0D, 0x48, 0x72, 0x30, 0x44, 0xAC,\n0x03, 0xC4, 0x3A, 0xB2, 0x8A, 0x86, 0x88, 0xA2, 0x20, 0x76, 0x05, 0xF5, 0xEB, 0xA2, 0x02, 0x71,\n0x1B, 0xA5, 0xE2, 0xAD, 0x54, 0x41, 0xE5, 0x86, 0xEA, 0xA6, 0xE2, 0x24, 0x42, 0x0C, 0x47, 0x35,\n0x44, 0xBF, 0x98, 0xDE, 0x04, 0x91, 0xB9, 0x06, 0x43, 0x43, 0x6C, 0x0C, 0x41, 0x34, 0xC3, 0x31,\n0x88, 0x04, 0x53, 0x8E, 0xCC, 0xA8, 0x86, 0x28, 0x1F, 0xA5, 0x02, 0xC5, 0x19, 0x4D, 0xD1, 0x10,\n0x29, 0xA8, 0x75, 0x35, 0x05, 0x71, 0x6F, 0x88, 0xC3, 0x0B, 0xAA, 0xA6, 0xA2, 0xD4, 0xD3, 0xF2,\n0x86, 0x7E, 0x43, 0xD4, 0x62, 0xFA, 0xA9, 0xF9, 0x00, 0x75, 0x88, 0xD8, 0x2D, 0x18, 0x18, 0x1A,\n0x62, 0x60, 0xD8, 0x8B, 0xF8, 0x44, 0x10, 0x91, 0x8B, 0x1C, 0xBB, 0xF9, 0xE6, 0x80, 0x31, 0x8B,\n0x88, 0x22, 0x57, 0xF0, 0x0E, 0xF1, 0x9E, 0x15, 0x54, 0x6B, 0x89, 0x9B, 0x57, 0x20, 0x5E, 0xDF,\n0xAC, 0xAE, 0x3E, 0x45, 0x71, 0x68, 0x41, 0x75, 0xEA, 0xE9, 0x44, 0xC3, 0x71, 0x0D, 0xB1, 0xFF,\n0xEE, 0x6D, 0xE3, 0xDC, 0xCD, 0x43, 0xC4, 0x57, 0x29, 0xC4, 0xE8, 0x61, 0x8D, 0x22, 0x46, 0x27,\n0xD3, 0x2C, 0xE2, 0xE3, 0x26, 0xC8, 0x46, 0x56, 0xFF, 0x01, 0x88, 0xB4, 0xC5, 0xEE, 0xAB, 0x62,\n0x87, 0xD8, 0xAE, 0xFC, 0x5F, 0xBF, 0x56, 0x87, 0x88, 0xF5, 0x68, 0x63, 0x88, 0x6C, 0x8B, 0x52,\n0x50, 0x59, 0xF9, 0x35, 0x15, 0x15, 0xB1, 0x8C, 0xA1, 0xDF, 0x10, 0xFD, 0x62, 0xBA, 0xA9, 0x0D,\n0x41, 0xBC, 0x26, 0x88, 0x9C, 0x6B, 0x30, 0xD4, 0x5B, 0x0D, 0x88, 0xAD, 0x21, 0x8A, 0x20, 0xA2,\n0xF8, 0x38, 0x9E, 0x6E, 0xB4, 0x9E, 0xBE, 0xE9, 0x47, 0x9C, 0x47, 0x88, 0xF7, 0xEC, 0x86, 0x6A,\n0xB3, 0xE9, 0x21, 0x62, 0x3D, 0xDA, 0x3C, 0x7D, 0x2A, 0x05, 0x55, 0x56, 0x7E, 0x27, 0x15, 0x41,\n0xFC, 0xCD, 0x86, 0x13, 0xFF, 0xDD, 0x2F, 0xFE, 0x2D, 0xD3, 0x7A, 0x45, 0x04, 0xB1, 0x36, 0x64,\n0xD5, 0x07, 0x91, 0x25, 0x51, 0xBE, 0x04, 0xCB, 0xAD, 0x06, 0x42, 0x45, 0x44, 0x91, 0xBE, 0x58,\n0x07, 0xC3, 0x8D, 0x1C, 0x6E, 0xA4, 0x29, 0xE6, 0x11, 0xAD, 0xA0, 0x7E, 0xB5, 0x6A, 0xFA, 0xAA,\n0x31, 0x6C, 0x11, 0xB7, 0x96, 0x8A, 0x91, 0xA2, 0xDC, 0x50, 0xDD, 0x54, 0xA4, 0x29, 0x4E, 0x35,\n0x1C, 0xDD, 0x10, 0x73, 0xA7, 0x1A, 0xA6, 0x1A, 0x10, 0x33, 0xB3, 0xA9, 0x19, 0xF6, 0x22, 0x1A,\n0xA1, 0x20, 0x36, 0x80, 0xA6, 0x04, 0xDF, 0x81, 0x20, 0x8E, 0xD1, 0x70, 0x93, 0xC9, 0x45, 0x10,\n0xA9, 0xA7, 0x01, 0xE2, 0xBD, 0xBA, 0xA0, 0x2E, 0xAB, 0x10, 0x71, 0x5F, 0x23, 0xB6, 0x8A, 0xCE,\n0x6C, 0x23, 0xA9, 0xE8, 0xD4, 0xD3, 0x91, 0x86, 0xD3, 0x1B, 0x22, 0x77, 0x6F, 0x0C, 0xBF, 0xAE,\n0x6F, 0xC7, 0x88, 0x9D, 0x21, 0xCF, 0xA3, 0x30, 0xEC, 0x45, 0x8C, 0xAE, 0x6D, 0x2D, 0x62, 0xA4,\n0xA8, 0x92, 0xDD, 0x25, 0x15, 0x45, 0x10, 0x51, 0xE4, 0x9D, 0x06, 0xA3, 0x4D, 0x80, 0x78, 0x63,\n0xBF, 0x5C, 0x2E, 0xF7, 0x01, 0xA2, 0x8D, 0x36, 0x4F, 0x9D, 0x82, 0x7A, 0x54, 0x2A, 0x96, 0x30,\n0x04, 0xF1, 0xC8, 0x86, 0x48, 0x31, 0xAD, 0xD2, 0x88, 0x66, 0x08, 0x22, 0x86, 0x20, 0x46, 0x2D,\n0xD1, 0x0C, 0x05, 0x91, 0x54, 0x44, 0x51, 0x18, 0xC3, 0xCF, 0x1A, 0x0E, 0x22, 0x8A, 0x2C, 0x19,\n0x0D, 0xA2, 0xC5, 0x76, 0xB9, 0x7E, 0x15, 0x21, 0x56, 0x8B, 0xD5, 0x1D, 0xA7, 0xA0, 0x3A, 0xA9,\n0x28, 0xF5, 0xB4, 0xAC, 0xA1, 0xDF, 0x10, 0xB5, 0x98, 0x6E, 0x6E, 0x67, 0x33, 0x11, 0xC4, 0x36,\n0x11, 0x79, 0x59, 0x63, 0x86, 0xB9, 0xA9, 0x86, 0x76, 0x68, 0x8A, 0x00, 0x8A, 0x62, 0x94, 0x88,\n0xA4, 0xA2, 0x19, 0x66, 0x11, 0x2D, 0xBA, 0x85, 0x9F, 0x75, 0xBF, 0x45, 0x7C, 0xB5, 0xDE, 0xC6,\n0x88, 0x37, 0x6D, 0xB4, 0x49, 0x16, 0x54, 0x5D, 0x33, 0x7E, 0x6F, 0x3D, 0xF5, 0x0C, 0xFD, 0x86,\n0xE8, 0x9E, 0x6A, 0xBA, 0xA9, 0x06, 0x44, 0x33, 0x14, 0xC4, 0x66, 0x36, 0x15, 0x44, 0x31, 0xF4,\n0x1A, 0x22, 0x01, 0xA1, 0x22, 0xEA, 0xF5, 0x4D, 0xBF, 0x0D, 0x83, 0x38, 0x17, 0xC4, 0x7B, 0xD5,\n0x2E, 0x42, 0xB4, 0xD1, 0xE6, 0xDD, 0x1D, 0x0A, 0xEA, 0xE4, 0x54, 0x1C, 0x6F, 0xE8, 0x0E, 0x35,\n0x99, 0x17, 0x8A, 0x4E, 0x31, 0xB5, 0xA9, 0xE6, 0xB6, 0x20, 0xEA, 0xB9, 0x06, 0x44, 0x8E, 0xDF,\n0x20, 0x62, 0x48, 0x31, 0xA5, 0x94, 0xAA, 0xA2, 0x1E, 0x6E, 0xB4, 0x9A, 0xEA, 0x80, 0xAA, 0x47,\n0x9B, 0xF6, 0xD3, 0x70, 0x88, 0x68, 0x84, 0x11, 0xE2, 0x6E, 0x41, 0x2A, 0x72, 0x43, 0xF5, 0x53,\n0xD1, 0x47, 0x9C, 0x6E, 0xE8, 0x37, 0x44, 0xBF, 0x98, 0xDA, 0x56, 0x05, 0x62, 0x6D, 0x68, 0x21,\n0x9F, 0x83, 0x19, 0x6B, 0xF4, 0x03, 0x86, 0x76, 0x44, 0x10, 0x9B, 0xD0, 0x42, 0xAA, 0x86, 0xA6,\n0x18, 0x56, 0x53, 0x14, 0x33, 0x8F, 0x6D, 0xA8, 0xA7, 0x57, 0x14, 0xF1, 0x5A, 0x80, 0x78, 0x73,\n0xBD, 0xBA, 0x93, 0x4A, 0xC5, 0xB3, 0xF9, 0x54, 0x64, 0xB4, 0x19, 0xBF, 0x2A, 0x8E, 0x6F, 0x88,\n0x7A, 0x32, 0xE5, 0x54, 0x93, 0x2A, 0xA6, 0x8B, 0xEA, 0xB6, 0x21, 0xB6, 0x8A, 0x1C, 0xDD, 0x0E,\n0xDE, 0xD6, 0x44, 0x4F, 0xF7, 0x75, 0xD3, 0xA7, 0x9C, 0xC6, 0x4F, 0x6A, 0x38, 0x98, 0xA2, 0x88,\n0xA4, 0xDC, 0xC1, 0x3B, 0x43, 0xC9, 0xC4, 0x3A, 0x04, 0xB1, 0x51, 0x64, 0xC9, 0xC8, 0x23, 0xDE,\n0xBC, 0xB9, 0x5D, 0xBC, 0xBB, 0xA3, 0xB3, 0x0D, 0x6B, 0x46, 0x81, 0x54, 0x2C, 0xD6, 0x10, 0xB5,\n0x98, 0x7E, 0xAE, 0xD7, 0x0B, 0x10, 0xA9, 0xA6, 0xF2, 0xCA, 0x2D, 0x7A, 0x96, 0x81, 0x61, 0x72,\n0xAA, 0xB1, 0x88, 0xAF, 0xDE, 0x28, 0x12, 0x38, 0xEA, 0x8E, 0xE1, 0x20, 0x32, 0x9F, 0xB2, 0x64,\n0x74, 0x86, 0x1C, 0x6C, 0x5A, 0xC4, 0xFD, 0x62, 0x51, 0x23, 0xEA, 0x6C, 0xE3, 0xA5, 0xE2, 0x74,\n0xC4, 0xE1, 0x86, 0xD9, 0x9F, 0x7F, 0xCA, 0xDE, 0xBD, 0x29, 0xA6, 0x95, 0x83, 0x98, 0x79, 0xE5,\n0x96, 0x1F, 0x6B, 0xB8, 0xD3, 0xA0, 0xE8, 0x32, 0x76, 0x9F, 0x87, 0x51, 0xA4, 0x9A, 0xF6, 0x21,\n0xCE, 0x07, 0x21, 0xDE, 0xDC, 0x34, 0xA9, 0xF8, 0x74, 0x44, 0x2A, 0x8E, 0x46, 0xFC, 0x43, 0x0D,\n0xD1, 0xF6, 0xFC, 0xCD, 0x65, 0x10, 0x59, 0x30, 0xA2, 0x72, 0x7A, 0x25, 0xF3, 0xB6, 0xE6, 0x42,\n0x72, 0xAC, 0x09, 0x11, 0xD3, 0x7C, 0x10, 0x52, 0x50, 0x0F, 0x9E, 0x31, 0xF6, 0x7C, 0x8F, 0x92,\n0x57, 0x6F, 0xD1, 0xCD, 0x46, 0xE7, 0x1A, 0x43, 0xAC, 0x16, 0xEF, 0x5E, 0xBC, 0x18, 0x9E, 0x8A,\n0xBF, 0xA3, 0x9E, 0x0E, 0x36, 0xF4, 0x5F, 0x28, 0x3A, 0xC5, 0x74, 0xB9, 0xAB, 0x11, 0x2D, 0xBA,\n0x35, 0x91, 0xD9, 0x14, 0x43, 0xEF, 0x5D, 0x46, 0xE2, 0xF0, 0xAD, 0x1B, 0xA2, 0x2A, 0xCA, 0x87,\n0xC5, 0xC0, 0x50, 0x36, 0x45, 0x55, 0xEC, 0xEE, 0xA7, 0x2E, 0xE2, 0x7E, 0xB9, 0xB8, 0xE3, 0xA4,\n0xA2, 0x9C, 0x6D, 0x1C, 0xC4, 0x49, 0x86, 0xC7, 0x6E, 0x17, 0xB7, 0x52, 0xC5, 0xB4, 0x5B, 0x2F,\n0x2E, 0x77, 0x88, 0xD7, 0x41, 0xE4, 0x99, 0x5B, 0x6B, 0x08, 0x22, 0x86, 0xA9, 0x05, 0x23, 0x5A,\n0x11, 0x75, 0xB9, 0xC8, 0xA5, 0x22, 0x5D, 0xF1, 0x59, 0xDF, 0xA7, 0x0C, 0x14, 0x39, 0x82, 0x77,\n0xFB, 0x7E, 0x0F, 0x62, 0x1D, 0x9B, 0x41, 0xA9, 0xF8, 0x1B, 0xEB, 0xA9, 0xD3, 0x10, 0x39, 0x99,\n0x3A, 0x3F, 0xFF, 0x94, 0x2F, 0xA6, 0x24, 0xA2, 0x22, 0xF2, 0xBA, 0x26, 0xFD, 0xCC, 0x2D, 0x32,\n0x34, 0x42, 0x41, 0x3C, 0xE8, 0x88, 0xCA, 0x97, 0xED, 0x8A, 0x28, 0x32, 0xDA, 0xA4, 0x11, 0xE5,\n0xE5, 0x22, 0x88, 0xA9, 0x0D, 0xE3, 0x57, 0x3D, 0xFD, 0x0D, 0xA9, 0x38, 0x18, 0xB1, 0x40, 0x31,\n0xD5, 0xF7, 0xDE, 0xB6, 0x5E, 0xD4, 0x89, 0x18, 0x21, 0x9E, 0xC4, 0x88, 0x76, 0x72, 0x0B, 0x5F,\n0xD7, 0xE4, 0x76, 0x44, 0x3A, 0x62, 0xF7, 0x4A, 0x58, 0x8B, 0x69, 0xBE, 0x29, 0xB2, 0x2B, 0x92,\n0x8B, 0x20, 0xC6, 0x4D, 0x11, 0xC4, 0xEE, 0x91, 0x86, 0x20, 0x62, 0x68, 0xB1, 0x6C, 0x15, 0xFD,\n0x54, 0x1C, 0x54, 0x4F, 0x0B, 0x1A, 0xDE, 0x0F, 0x0D, 0x73, 0xFF, 0xDF, 0x05, 0x89, 0x78, 0x0E,\n0x44, 0xE6, 0x9A, 0x24, 0x62, 0xB0, 0xEA, 0x0F, 0xFA, 0x7C, 0x21, 0xC5, 0xD4, 0x41, 0xB4, 0x08,\n0x11, 0x93, 0xE3, 0x29, 0xF3, 0x29, 0x88, 0x32, 0x9E, 0x26, 0x10, 0xB7, 0xBD, 0xA9, 0xC8, 0xD9,\n0x46, 0x47, 0x9B, 0x51, 0x88, 0xA5, 0xB6, 0x0B, 0x8A, 0x29, 0x89, 0x68, 0x91, 0x44, 0xC4, 0xB0,\n0x51, 0x94, 0x73, 0x4D, 0xEE, 0x5A, 0x93, 0x3D, 0x9A, 0xFA, 0xE5, 0xF4, 0xE7, 0x9A, 0x71, 0x60,\n0xA8, 0x99, 0x28, 0x8A, 0x1D, 0x22, 0x17, 0x70, 0x6D, 0x89, 0x5D, 0x3D, 0x9D, 0x90, 0x8A, 0xA3,\n0x11, 0xD5, 0xD0, 0x3F, 0xD5, 0x38, 0x86, 0x14, 0xD3, 0x7A, 0xCF, 0x3F, 0xD7, 0x21, 0xB2, 0x61,\n0x24, 0x0E, 0xA7, 0x6D, 0x22, 0xCA, 0x6C, 0x8A, 0x22, 0x88, 0xBC, 0x33, 0x45, 0x11, 0xC0, 0x74,\n0xE8, 0x68, 0xA3, 0x8A, 0xF9, 0xA7, 0xE0, 0x8D, 0xA1, 0x8F, 0x78, 0xFB, 0xF6, 0x72, 0x48, 0x2A,\n0x82, 0x38, 0xAD, 0x29, 0x96, 0x68, 0x88, 0x5A, 0x4C, 0x7F, 0xD0, 0x76, 0x2F, 0xBB, 0x71, 0x14,\n0x51, 0x00, 0x86, 0x77, 0x2C, 0x40, 0x60, 0xB1, 0x0A, 0x91, 0x0D, 0x16, 0x26, 0x2B, 0x83, 0x90,\n0x00, 0xC1, 0x26, 0x8A, 0xB8, 0x6D, 0xD0, 0x48, 0x96, 0x20, 0xDB, 0x6C, 0xC6, 0x91, 0x65, 0xB1,\n0x98, 0x89, 0x93, 0xE0, 0xF8, 0xF9, 0xE9, 0xE3, 0x9A, 0xF8, 0x57, 0xF5, 0x5F, 0xE5, 0xD3, 0xD3,\n0x1D, 0xD7, 0x03, 0x20, 0xA1, 0x2F, 0xE7, 0x56, 0xA7, 0x7A, 0x3C, 0xBC, 0x09, 0xBB, 0x78, 0x7B,\n0x5C, 0x10, 0x8B, 0x21, 0x88, 0xC3, 0xB9, 0x0B, 0x44, 0x26, 0x0C, 0x10, 0x0B, 0xA1, 0xF2, 0xA9,\n0xBE, 0xBC, 0x20, 0x0E, 0x73, 0x41, 0x06, 0xFE, 0xB6, 0x22, 0x91, 0xC8, 0x90, 0xE1, 0xED, 0x7E,\n0x20, 0x86, 0x61, 0x0B, 0x71, 0xC8, 0xA7, 0xBF, 0xDF, 0x17, 0x8A, 0x6A, 0x6D, 0x96, 0xE4, 0xD3,\n0xE5, 0xC9, 0xD4, 0x05, 0xD1, 0xC9, 0xF4, 0xEF, 0x08, 0x44, 0x21, 0x3E, 0x61, 0xD6, 0x17, 0xE2,\n0x1F, 0x42, 0x6C, 0xED, 0x83, 0x51, 0xD4, 0x7D, 0x5B, 0xDF, 0x90, 0xAA, 0xC8, 0x2A, 0x23, 0x7F,\n0xA3, 0x51, 0x21, 0xD2, 0xD9, 0xB8, 0x24, 0x16, 0xC4, 0xC8, 0xA7, 0x0E, 0xC5, 0x89, 0xF9, 0x74,\n0x06, 0xE2, 0x83, 0x27, 0xD3, 0x30, 0x5C, 0x0F, 0x81, 0xA8, 0x74, 0x0A, 0x62, 0xFD, 0x46, 0x8A,\n0x9A, 0x68, 0xC4, 0xFA, 0x95, 0x9B, 0xAE, 0xBE, 0xF1, 0x4B, 0x1C, 0x69, 0x4F, 0xB5, 0xDD, 0x2F,\n0xC7, 0x88, 0xBB, 0x65, 0x14, 0xA1, 0x48, 0x36, 0x15, 0x62, 0xE4, 0x53, 0x42, 0x51, 0x7B, 0x45,\n0xA6, 0x8C, 0x45, 0x45, 0xD1, 0x81, 0x38, 0xBF, 0x33, 0xC5, 0xD0, 0x57, 0x35, 0x91, 0x4C, 0x09,\n0xC4, 0x50, 0xA4, 0xAF, 0x61, 0xC4, 0x68, 0xED, 0xA1, 0xA8, 0x89, 0x32, 0x04, 0x51, 0x8A, 0x93,\n0x19, 0x4B, 0x25, 0xC5, 0x50, 0x9D, 0xCD, 0x70, 0x40, 0x24, 0x14, 0x8B, 0x21, 0x88, 0x83, 0xA2,\n0x11, 0xC9, 0xA7, 0x33, 0x42, 0x71, 0xDF, 0xA2, 0xF8, 0xD0, 0xC9, 0x94, 0x40, 0xEC, 0x20, 0xFE,\n0xE5, 0x45, 0x54, 0x6D, 0xA8, 0xAD, 0x3E, 0x86, 0xF3, 0x14, 0x47, 0x1F, 0x49, 0xF5, 0x14, 0x2B,\n0x43, 0x16, 0xC3, 0x20, 0x32, 0x27, 0xBA, 0x24, 0x0E, 0xE7, 0x4D, 0xE4, 0x53, 0x85, 0x62, 0xD2,\n0xDA, 0xCC, 0x2B, 0x8A, 0x1F, 0x2C, 0x99, 0x7E, 0xDB, 0x4F, 0xA6, 0x25, 0x10, 0x0F, 0xEA, 0x74,\n0xEA, 0x8D, 0x70, 0x09, 0x45, 0xB2, 0x69, 0x31, 0x14, 0xA2, 0x47, 0x0C, 0x6E, 0xDD, 0x72, 0xC5,\n0xA4, 0x28, 0x0E, 0x27, 0x79, 0xA2, 0x11, 0xED, 0xA9, 0x10, 0x1D, 0x88, 0xE4, 0x53, 0x42, 0x51,\n0xAD, 0x8D, 0x46, 0xC5, 0x99, 0xF9, 0x74, 0x46, 0x32, 0xCD, 0xBE, 0xEA, 0x76, 0x32, 0x8D, 0xD6,\n0x14, 0xC4, 0xA2, 0xC8, 0xEB, 0x6F, 0x10, 0xF9, 0x52, 0x7F, 0x50, 0x04, 0xB1, 0x1D, 0x8A, 0x18,\n0xF2, 0x30, 0x43, 0x8C, 0xE9, 0xA0, 0x28, 0x44, 0x2F, 0xF7, 0xF5, 0x75, 0x54, 0xF5, 0x42, 0xA3,\n0x8F, 0x18, 0xF9, 0x94, 0x50, 0x4C, 0xF2, 0x29, 0xFD, 0xE9, 0xFE, 0x88, 0x7B, 0x3C, 0xF7, 0xF6,\n0x9D, 0x29, 0x86, 0xFD, 0x64, 0x4A, 0x20, 0xD2, 0x9C, 0x82, 0xA8, 0x37, 0xA7, 0xEA, 0x6B, 0x34,\n0x27, 0xEA, 0xE1, 0xB7, 0x67, 0x0C, 0x2B, 0xDA, 0x91, 0x6F, 0x6B, 0x9A, 0x81, 0x88, 0xA2, 0x3B,\n0x1B, 0xBE, 0x17, 0x66, 0xC6, 0x68, 0x21, 0xBE, 0x1D, 0x10, 0x15, 0x8A, 0xBC, 0xD3, 0xA0, 0xB5,\n0x59, 0x5A, 0x14, 0x13, 0xC3, 0x74, 0x44, 0xF4, 0x32, 0xDF, 0xC9, 0x34, 0xBE, 0x39, 0xB9, 0x3A,\n0x18, 0x8E, 0x2E, 0x6C, 0x84, 0xA8, 0xF7, 0x35, 0x32, 0xD4, 0x32, 0x51, 0x33, 0x46, 0xA6, 0x48,\n0x3E, 0xD5, 0xB8, 0x6F, 0xC4, 0xE6, 0xC7, 0xFB, 0x4D, 0xC4, 0x30, 0xA4, 0x24, 0xC6, 0x39, 0x2E,\n0xF9, 0xB4, 0x2C, 0x33, 0xD4, 0xDA, 0x38, 0x9F, 0x3E, 0x00, 0xA2, 0x0C, 0xF7, 0xFC, 0x5B, 0x09,\n0x24, 0xD3, 0x68, 0x6B, 0x4E, 0x76, 0x88, 0xF4, 0x35, 0xA4, 0x53, 0x10, 0xEB, 0x4B, 0xB7, 0x50,\n0x4C, 0xFA, 0x1A, 0xBE, 0x0D, 0x66, 0x11, 0x05, 0x60, 0x36, 0x28, 0x7A, 0xDC, 0x57, 0x67, 0xA3,\n0x67, 0x36, 0x7E, 0x2B, 0x55, 0xE6, 0x44, 0x02, 0x11, 0xC4, 0x2D, 0xA1, 0xD8, 0x6B, 0x6D, 0x94,\n0x4F, 0xE7, 0x14, 0xC5, 0x09, 0xC9, 0xB4, 0xF7, 0x56, 0xD8, 0x86, 0x4E, 0xA6, 0x04, 0xA2, 0x11,\n0x8B, 0x22, 0x3F, 0x8F, 0x49, 0x24, 0x82, 0xD8, 0xBE, 0x3A, 0xED, 0x3E, 0x38, 0x45, 0xD1, 0x8C,\n0xDE, 0x0A, 0xB3, 0xDE, 0xD7, 0x22, 0xA3, 0x3D, 0x27, 0xFA, 0xE2, 0x8D, 0x40, 0x6C, 0x21, 0x3A,\n0x9F, 0xFE, 0x42, 0x6B, 0x93, 0xE4, 0xD3, 0x59, 0x88, 0xB3, 0xEF, 0xDB, 0xF2, 0x64, 0x1A, 0x81,\n0x78, 0x82, 0xA2, 0x11, 0xD9, 0x09, 0xEB, 0x6D, 0x86, 0x10, 0xB5, 0x4D, 0xEC, 0x7F, 0x58, 0x9A,\n0x34, 0xA6, 0x6A, 0x4E, 0xB5, 0xC8, 0x40, 0x11, 0x44, 0x3D, 0x78, 0xEB, 0x67, 0xD3, 0xE3, 0xFF,\n0xD6, 0x03, 0xE2, 0xEF, 0x49, 0x6B, 0xB3, 0xBC, 0x28, 0xCE, 0xED, 0x6A, 0xA6, 0x27, 0xD3, 0x12,\n0x88, 0x20, 0x0E, 0x87, 0x74, 0xCA, 0x5E, 0x9F, 0x9A, 0xD8, 0x7E, 0x9B, 0xA1, 0x97, 0x6E, 0x84,\n0x22, 0xAF, 0xF7, 0xFD, 0x66, 0x38, 0xD9, 0x27, 0x36, 0x0D, 0x41, 0xB4, 0x22, 0xD3, 0x3E, 0x0F,\n0x34, 0x88, 0xC4, 0x62, 0x08, 0xA2, 0xF2, 0xE9, 0x63, 0x10, 0x43, 0x51, 0xF9, 0x54, 0x37, 0x6F,\n0xCB, 0x10, 0xA7, 0x8F, 0x88, 0x9E, 0x2E, 0x46, 0xC9, 0x34, 0x16, 0xFA, 0x42, 0x0C, 0x45, 0xBF,\n0xFE, 0xD6, 0x1F, 0xC1, 0xF0, 0x0E, 0xA3, 0x39, 0xEA, 0xB7, 0x1E, 0x67, 0x80, 0x06, 0xA1, 0x3F,\n0x6F, 0xCB, 0x0D, 0x8D, 0x48, 0x36, 0x7D, 0x7F, 0x67, 0xF3, 0x65, 0x07, 0x31, 0x86, 0x0C, 0xB5,\n0x36, 0x79, 0x28, 0x4E, 0x2B, 0x8A, 0x46, 0x9C, 0x3D, 0x22, 0x7E, 0x9C, 0x24, 0xD3, 0x08, 0xC4,\n0xED, 0x89, 0xD2, 0x69, 0x20, 0x72, 0xFD, 0xDD, 0xFF, 0xE5, 0x93, 0xFB, 0xDF, 0x7E, 0xF3, 0xE4,\n0x34, 0x19, 0xF6, 0xBB, 0x1F, 0xEF, 0x27, 0x86, 0xAD, 0x40, 0x34, 0x22, 0x73, 0x62, 0x6D, 0x78,\n0xFC, 0xE6, 0x2E, 0x9F, 0x3E, 0x9D, 0x9D, 0x4F, 0xA7, 0x23, 0xEE, 0xFF, 0xAC, 0x06, 0xC3, 0xF3,\n0x50, 0xEC, 0x24, 0xD3, 0x38, 0x11, 0x88, 0xC3, 0xE9, 0x20, 0xFE, 0xD5, 0x41, 0xFC, 0xC3, 0x88,\n0x5E, 0xEC, 0xF3, 0xC0, 0x26, 0x99, 0x13, 0x81, 0x4C, 0x5B, 0x53, 0x8F, 0x89, 0x23, 0xC4, 0xD1,\n0xFB, 0x61, 0x10, 0x47, 0x81, 0x18, 0x67, 0x33, 0x23, 0x9F, 0xBA, 0x28, 0xCE, 0x43, 0x9C, 0x3E,\n0x22, 0x7E, 0x7C, 0x7E, 0xBE, 0x3D, 0x3F, 0xAF, 0x93, 0x69, 0x18, 0x12, 0x88, 0x2F, 0x86, 0x40,\n0x2C, 0x88, 0x18, 0xF2, 0x74, 0x98, 0x1F, 0x57, 0x6C, 0x3E, 0xCE, 0xB0, 0x22, 0x25, 0xD1, 0x6F,\n0x4E, 0x41, 0x4C, 0x1D, 0x55, 0x13, 0x7B, 0xEF, 0xDD, 0xB2, 0x07, 0x1A, 0xAC, 0xA2, 0x9C, 0x4D,\n0x4B, 0x3E, 0xCD, 0x5B, 0x9B, 0xF6, 0x90, 0x31, 0x03, 0x71, 0x6E, 0x57, 0x73, 0xFE, 0xF2, 0xD9,\n0xAB, 0x97, 0xE7, 0x61, 0xE8, 0xE9, 0x62, 0x17, 0x88, 0x6F, 0x41, 0x2C, 0x8A, 0xC5, 0x10, 0x44,\n0x3E, 0x6B, 0xD3, 0xE3, 0x8C, 0x64, 0xD6, 0x47, 0x71, 0xEA, 0x9D, 0x1B, 0x8A, 0x94, 0x44, 0x23,\n0x16, 0x43, 0x14, 0x09, 0x45, 0x5E, 0x4A, 0x69, 0x4E, 0x54, 0x36, 0x1D, 0xF2, 0xE9, 0x73, 0xE5,\n0xD3, 0xD9, 0x45, 0xF1, 0x83, 0x07, 0x62, 0x31, 0xDC, 0x21, 0xBE, 0xFB, 0xF7, 0xE5, 0x79, 0x2F,\n0x99, 0xC6, 0x8D, 0xDB, 0xE9, 0xC9, 0xED, 0x01, 0xB1, 0x99, 0x4E, 0x41, 0xD4, 0x4A, 0x38, 0x9D,\n0xF5, 0x75, 0x73, 0x2A, 0xC7, 0xD6, 0xD7, 0x6D, 0x71, 0x64, 0x38, 0x8A, 0x44, 0x6F, 0x14, 0xFD,\n0x52, 0x2A, 0x14, 0x6F, 0x0D, 0x8D, 0x78, 0xB0, 0x3E, 0xA3, 0xB5, 0xD1, 0xD5, 0x1B, 0xF9, 0x54,\n0x97, 0x36, 0x69, 0x51, 0xCC, 0x11, 0x31, 0x4C, 0xFF, 0x58, 0xC2, 0xF9, 0xBF, 0xCF, 0x9E, 0xBD,\n0x0E, 0x44, 0xEE, 0xBD, 0x09, 0xC4, 0x32, 0x5F, 0x18, 0xB1, 0xD3, 0xD7, 0x70, 0x77, 0xAA, 0xD7,\n0x19, 0x1A, 0x13, 0x31, 0xE4, 0xFE, 0x3B, 0x1D, 0x2F, 0xF4, 0x62, 0x31, 0xAB, 0x89, 0x81, 0xE8,\n0xD5, 0xBE, 0xBE, 0x8B, 0xE2, 0xC2, 0x06, 0xC4, 0x72, 0xB6, 0x7B, 0xE6, 0xD3, 0xE5, 0x88, 0xD3,\n0xC7, 0x0B, 0x0C, 0x5F, 0x0E, 0x88, 0xCF, 0x36, 0xC3, 0x2F, 0x98, 0x3B, 0x99, 0xEE, 0xB2, 0xE9,\n0x69, 0x20, 0xAA, 0x28, 0xB6, 0x5E, 0xD8, 0x68, 0x8B, 0x01, 0xA2, 0x15, 0x99, 0xF5, 0xE3, 0x08,\n0xB1, 0x09, 0x29, 0xC4, 0xB6, 0xA2, 0x0C, 0x85, 0x88, 0x62, 0x59, 0x63, 0x80, 0x58, 0x1B, 0xC6,\n0xA5, 0xCD, 0x3F, 0xFB, 0xE6, 0x53, 0x77, 0x36, 0x73, 0x10, 0x93, 0x4B, 0xD3, 0xCF, 0x2B, 0xC4,\n0x57, 0x03, 0xE2, 0xCD, 0xBF, 0x97, 0x8F, 0xBF, 0x76, 0x32, 0xDD, 0x05, 0x62, 0x51, 0xAC, 0x6E,\n0xC0, 0x03, 0x51, 0xA1, 0xD8, 0xBF, 0x00, 0x27, 0x14, 0x51, 0xF4, 0x77, 0x18, 0x28, 0x26, 0x87,\n0x0D, 0x86, 0x10, 0x51, 0xC4, 0x30, 0x4E, 0xF3, 0x7D, 0x06, 0xE9, 0xB4, 0x87, 0x78, 0x10, 0x43,\n0x06, 0xF9, 0xD4, 0xFD, 0x29, 0xFB, 0x28, 0x17, 0xC5, 0xA9, 0x88, 0x79, 0x20, 0x26, 0x1B, 0xA8,\n0x40, 0x1C, 0xCE, 0xF5, 0x10, 0x8A, 0x4E, 0xA6, 0x65, 0xBE, 0x00, 0x31, 0x14, 0xC3, 0x50, 0xA1,\n0x28, 0x44, 0x0C, 0x27, 0x29, 0xDE, 0xFF, 0x6D, 0xA2, 0x09, 0x4B, 0x1C, 0xFA, 0x19, 0xBF, 0xDF,\n0x2C, 0x82, 0xC8, 0x8F, 0x2F, 0x14, 0x43, 0x3D, 0xB2, 0x29, 0x88, 0x18, 0x16, 0xC5, 0x4D, 0x92,\n0x4F, 0x3F, 0x4F, 0xF2, 0xE9, 0x7C, 0xC4, 0xE9, 0x1B, 0xA8, 0x1D, 0xE2, 0xA7, 0x9B, 0xCB, 0x4B,\n0x5D, 0xD5, 0x94, 0xF9, 0xE2, 0x34, 0x10, 0xC3, 0x30, 0x4E, 0xE7, 0x01, 0x38, 0x23, 0x06, 0x88,\n0xDA, 0x09, 0x77, 0x7B, 0x1B, 0xFD, 0xF0, 0x89, 0x1D, 0x3D, 0x25, 0x16, 0x45, 0xFF, 0x38, 0x98,\n0x37, 0x51, 0xE3, 0x50, 0xF4, 0xDD, 0x29, 0xDD, 0xA9, 0x11, 0xAF, 0xF6, 0xED, 0x4F, 0x17, 0x21,\n0xE6, 0x81, 0xE8, 0xAE, 0x06, 0xC4, 0x9B, 0x57, 0x97, 0x4A, 0xA6, 0x65, 0xBE, 0x38, 0x8D, 0x43,\n0x20, 0x86, 0xA2, 0x2E, 0xC0, 0xFD, 0x3A, 0x03, 0xC5, 0x74, 0xC8, 0xF8, 0x75, 0xB4, 0x14, 0xF6,\n0x91, 0xA3, 0x56, 0x18, 0x7D, 0xC4, 0x50, 0xC4, 0x50, 0xAB, 0x28, 0x5E, 0xF1, 0x3B, 0x9B, 0x86,\n0xE1, 0x41, 0x14, 0x45, 0xE5, 0xD3, 0xB4, 0x28, 0xE6, 0x9D, 0x4D, 0x8E, 0x38, 0x7D, 0x15, 0x7C,\n0xFE, 0x72, 0x73, 0x8B, 0xF8, 0xE9, 0xF5, 0xE5, 0x25, 0x86, 0x20, 0x6E, 0x06, 0x41, 0x42, 0x31,\n0x47, 0xA4, 0xB1, 0xE9, 0x7D, 0xD8, 0x36, 0x36, 0x0C, 0xC4, 0x38, 0xD3, 0x8A, 0x22, 0x8C, 0x2A,\n0x89, 0x52, 0xF4, 0x5F, 0xAB, 0x61, 0xB3, 0xDF, 0x9D, 0xF5, 0x8B, 0x21, 0x88, 0x27, 0xEB, 0x40,\n0x6C, 0xE6, 0x53, 0x86, 0x8C, 0x25, 0x45, 0x71, 0xD9, 0x5F, 0x09, 0x0E, 0xC3, 0x1D, 0x62, 0x28,\n0x6E, 0x2F, 0x87, 0x9F, 0x8C, 0x18, 0x1B, 0x5E, 0x5C, 0x1D, 0xBD, 0x57, 0x6C, 0xAE, 0xA2, 0xD8,\n0x09, 0x0F, 0x27, 0x6D, 0x6C, 0xA4, 0x18, 0x86, 0x28, 0xF6, 0x16, 0x8A, 0x4D, 0x43, 0x97, 0x44,\n0x10, 0x6D, 0xD8, 0x47, 0x0C, 0x45, 0xCD, 0xFA, 0x77, 0x86, 0xC3, 0xD9, 0xE6, 0xF9, 0xD4, 0x45,\n0x31, 0x1F, 0xF7, 0xF3, 0x6C, 0x9A, 0xCE, 0xF9, 0x46, 0x8C, 0x84, 0xFA, 0x3D, 0xC9, 0xF4, 0xAE,\n0xAD, 0x39, 0x22, 0x14, 0xDD, 0x9D, 0x52, 0x13, 0x31, 0xD4, 0x52, 0x58, 0x8D, 0x8D, 0x14, 0x61,\n0xC4, 0xD0, 0x90, 0x00, 0x32, 0x61, 0x24, 0xBF, 0xBC, 0xE0, 0x9D, 0x70, 0x19, 0x31, 0x7C, 0xFF,\n0x0D, 0x62, 0x31, 0x04, 0xF1, 0x6A, 0x6A, 0x3E, 0x9D, 0xD9, 0xD9, 0x2C, 0x0E, 0xC4, 0x40, 0xDC,\n0xEE, 0x10, 0x23, 0xA1, 0x9E, 0x11, 0x88, 0xBB, 0xB6, 0xE6, 0xA8, 0x20, 0x32, 0x27, 0xB6, 0x06,\n0x45, 0x16, 0xFB, 0x34, 0x36, 0xF9, 0x56, 0x98, 0xCE, 0x86, 0x4F, 0x14, 0xB3, 0x92, 0xE8, 0x6D,\n0x62, 0xFA, 0x4C, 0x2A, 0xFF, 0xE9, 0x05, 0x56, 0x51, 0x0A, 0xC4, 0xE1, 0x0C, 0x37, 0x6F, 0xE4,\n0x53, 0xF6, 0x51, 0xEC, 0xF7, 0x55, 0x14, 0x17, 0x22, 0x2A, 0x10, 0x0B, 0xA2, 0x02, 0xD1, 0x88,\n0xA1, 0xB8, 0xBD, 0x3C, 0xFB, 0xAD, 0x18, 0xD2, 0xD6, 0x1C, 0x85, 0x22, 0x33, 0x86, 0x11, 0xBD,\n0xC6, 0xF0, 0x9F, 0xA5, 0xE9, 0xBF, 0x76, 0xD3, 0xB3, 0x45, 0x18, 0xF3, 0x8A, 0xC8, 0xD5, 0xA9,\n0x15, 0xFD, 0x2D, 0x46, 0x1B, 0xB1, 0xDE, 0x44, 0x39, 0x10, 0x29, 0x8A, 0xE4, 0x53, 0x0D, 0x19,\n0x2A, 0x8A, 0xBA, 0x03, 0x57, 0x67, 0x23, 0xC4, 0x05, 0x81, 0xF8, 0xCB, 0x80, 0xF8, 0xD9, 0x7B,\n0xC4, 0x9B, 0x78, 0xDD, 0x55, 0x23, 0x1E, 0x55, 0x88, 0x18, 0xB2, 0x15, 0x0E, 0x43, 0x10, 0xF9,\n0xC9, 0x61, 0x1B, 0xFA, 0x57, 0xA3, 0xF5, 0xCC, 0x26, 0x65, 0xF4, 0x94, 0xD8, 0xC9, 0xA7, 0x18,\n0xFA, 0x47, 0x4F, 0xFD, 0x55, 0x14, 0xF9, 0xF4, 0x3B, 0x23, 0x2E, 0x29, 0x8A, 0x74, 0x36, 0xCB,\n0x11, 0xDD, 0x9A, 0x82, 0xF8, 0x7A, 0x87, 0x18, 0x09, 0xF5, 0xF9, 0xD9, 0xD9, 0xAD, 0x21, 0x6D,\n0x4D, 0x9C, 0x3E, 0x62, 0x34, 0x36, 0x5E, 0x28, 0x8E, 0x14, 0x41, 0xEC, 0x2A, 0x32, 0x66, 0xE4,\n0x8E, 0x54, 0xC4, 0x38, 0x26, 0x04, 0x11, 0x43, 0xEF, 0x84, 0xB9, 0x3A, 0xF5, 0x98, 0x58, 0x1B,\n0x9E, 0x5C, 0x29, 0x9F, 0x7E, 0xD0, 0xA2, 0x98, 0x66, 0x53, 0xDA, 0x1A, 0x5D, 0xD6, 0x14, 0xC3,\n0xC7, 0x05, 0xF1, 0xBD, 0xE2, 0xF0, 0x8F, 0xEE, 0xC5, 0x8B, 0x81, 0x8F, 0xB6, 0x06, 0xC4, 0x6A,\n0x15, 0x05, 0xA2, 0x3E, 0x4F, 0x14, 0xA2, 0x77, 0xFB, 0x81, 0x68, 0x45, 0x5E, 0x69, 0xC4, 0x49,\n0x18, 0xF9, 0x6B, 0x7C, 0x41, 0x28, 0xC3, 0xDE, 0x03, 0x1B, 0x23, 0x96, 0x74, 0x4A, 0x20, 0x1A,\n0xB1, 0x2A, 0x8A, 0x0A, 0xC5, 0xC5, 0x45, 0x71, 0x8F, 0x40, 0xFC, 0x51, 0x81, 0x08, 0x22, 0xA1,\n0x78, 0x33, 0x5C, 0x32, 0x15, 0xC4, 0xB2, 0x84, 0x3A, 0x2C, 0x88, 0xC3, 0x19, 0xF5, 0x35, 0x18,\n0xBA, 0x3B, 0x1D, 0x14, 0xF5, 0xAB, 0xC3, 0x28, 0x62, 0x08, 0x62, 0x61, 0x04, 0x31, 0x81, 0x2C,\n0x31, 0x88, 0x21, 0x84, 0x18, 0xF6, 0xDE, 0x7F, 0xB3, 0xD8, 0x6F, 0x2C, 0x31, 0x18, 0x13, 0x31,\n0x1C, 0xCE, 0xFA, 0x62, 0x5E, 0x51, 0x5C, 0x8E, 0xD8, 0x9F, 0x2F, 0xEA, 0xC7, 0x51, 0x20, 0xC6,\n0x79, 0xB7, 0x1E, 0x10, 0xC9, 0xA6, 0x87, 0x87, 0xBD, 0x50, 0x64, 0x17, 0xC5, 0xEF, 0x49, 0xA1,\n0xD8, 0x29, 0x8A, 0xDD, 0x40, 0xE4, 0xA9, 0x0D, 0x8C, 0xC6, 0xE4, 0xAF, 0xB7, 0x05, 0x63, 0xF7,\n0xEE, 0x1B, 0x43, 0x87, 0xE2, 0xAD, 0x21, 0xA1, 0xE8, 0xFB, 0x6F, 0x0C, 0x41, 0x8C, 0xA2, 0x98,\n0x0C, 0x19, 0x14, 0x45, 0x8D, 0xFB, 0xF3, 0x10, 0xDD, 0xD6, 0x28, 0x10, 0x41, 0xBC, 0xBC, 0x0C,\n0x44, 0x14, 0x5F, 0x13, 0x8A, 0x17, 0xEB, 0x9B, 0x82, 0x78, 0xEA, 0x50, 0xD4, 0x37, 0xA6, 0xB5,\n0xA2, 0x02, 0x11, 0xC3, 0xF4, 0x67, 0xF8, 0x71, 0xF4, 0x81, 0x51, 0x7F, 0x10, 0x13, 0xC4, 0xA6,\n0x21, 0x2B, 0xE1, 0xE6, 0xDB, 0x61, 0x96, 0x18, 0x0A, 0xC4, 0x66, 0x51, 0xFC, 0x65, 0x46, 0x67,\n0x33, 0x0D, 0x31, 0x6B, 0x6B, 0xFC, 0xD4, 0xF4, 0x71, 0x41, 0x24, 0x14, 0x87, 0x84, 0xCA, 0xDF,\n0x32, 0xDB, 0x1E, 0x0A, 0xB1, 0x18, 0x2A, 0x14, 0xF5, 0x47, 0xA2, 0x40, 0xD4, 0x05, 0xB8, 0xFE,\n0x22, 0x06, 0x88, 0x95, 0x23, 0x5D, 0x8C, 0x18, 0x03, 0x51, 0x77, 0x35, 0x6A, 0x4D, 0x6D, 0x18,\n0x88, 0x18, 0x1A, 0x31, 0xFE, 0xAF, 0x1C, 0x88, 0x27, 0x6F, 0x9F, 0x27, 0x43, 0xC6, 0xEC, 0xCE,\n0x06, 0xC4, 0x2C, 0x9B, 0xF6, 0xE7, 0x0B, 0x23, 0x46, 0x42, 0x1D, 0x14, 0x4B, 0x36, 0xBD, 0x3E,\n0x2C, 0x8A, 0xBA, 0x3C, 0x6D, 0x4D, 0xFB, 0xF5, 0x6A, 0xBF, 0xA3, 0x88, 0xA1, 0x12, 0x2A, 0x8C,\n0x75, 0x1E, 0x35, 0xE5, 0xAF, 0xCA, 0xA5, 0x18, 0x82, 0xD8, 0xBC, 0xFD, 0x66, 0xAF, 0x4F, 0x20,\n0xA2, 0x58, 0x0C, 0x15, 0x88, 0x27, 0xA7, 0x43, 0x8D, 0x49, 0x10, 0xEB, 0xA2, 0x98, 0x20, 0xCA,\n0xD0, 0x88, 0xFD, 0xB6, 0xC6, 0x81, 0x08, 0x22, 0x8A, 0x57, 0x17, 0x17, 0x64, 0x53, 0x21, 0xFA,\n0xFB, 0x44, 0x02, 0xB1, 0x1C, 0x10, 0xA7, 0x15, 0x45, 0x10, 0x99, 0xF8, 0x7B, 0x89, 0xD4, 0x05,\n0xD1, 0x57, 0xDF, 0xDE, 0x60, 0xF8, 0xFA, 0x7B, 0x84, 0x18, 0x86, 0x04, 0xA2, 0x11, 0x37, 0x17,\n0xDC, 0xBC, 0x25, 0x45, 0x91, 0xCE, 0x66, 0x26, 0xA2, 0x07, 0x8C, 0xB4, 0xAD, 0x29, 0x88, 0x84,\n0x62, 0x9C, 0x48, 0xA8, 0xBB, 0x6C, 0x1A, 0x47, 0x88, 0xFA, 0xDC, 0x5B, 0x91, 0x98, 0x4D, 0xFB,\n0xBE, 0x77, 0x73, 0x59, 0x34, 0x64, 0xEF, 0x6F, 0xD2, 0x26, 0x6F, 0x4E, 0x51, 0xE4, 0xF9, 0x77,\n0x51, 0x04, 0x91, 0x9B, 0x53, 0x05, 0x62, 0x20, 0xAA, 0x28, 0x4E, 0xED, 0x6C, 0x8C, 0x38, 0xBD,\n0x24, 0x66, 0x6D, 0x0D, 0x88, 0x3F, 0x83, 0x58, 0x27, 0xD4, 0x92, 0x4D, 0x09, 0xC5, 0x3E, 0x22,\n0x8D, 0xCD, 0x0E, 0x51, 0xDD, 0x29, 0xD9, 0xD4, 0x8A, 0x2E, 0x8A, 0x30, 0x5A, 0xF2, 0x2E, 0x0E,\n0x21, 0xC4, 0x30, 0xFF, 0xCB, 0x6D, 0x7C, 0x4D, 0x43, 0x28, 0x0A, 0x31, 0x14, 0xC3, 0x90, 0x40,\n0x3C, 0x55, 0x51, 0x4C, 0xAE, 0x4F, 0xD3, 0xF6, 0x34, 0x47, 0x9C, 0x1E, 0x88, 0x05, 0xF1, 0xA7,\n0x51, 0x28, 0x3E, 0x8A, 0x84, 0xFA, 0xA2, 0x64, 0x53, 0x10, 0x35, 0x63, 0xB0, 0xC6, 0xB8, 0xF7,\n0xE7, 0x33, 0xFC, 0x3E, 0xC3, 0x8A, 0xBC, 0xB5, 0x01, 0x12, 0x36, 0x4E, 0x11, 0x94, 0x22, 0x84,\n0x99, 0x61, 0x20, 0xBA, 0x26, 0x52, 0x12, 0xA9, 0x89, 0x18, 0x0E, 0x88, 0x6F, 0xA6, 0x15, 0x45,\n0x77, 0x36, 0x93, 0x11, 0xF3, 0x92, 0xA8, 0xB6, 0x86, 0x40, 0xFC, 0x5A, 0x88, 0xA1, 0xB8, 0xB9,\n0x18, 0xCE, 0x76, 0xB5, 0x2A, 0x88, 0x1E, 0x14, 0xDD, 0xD8, 0xE8, 0x83, 0xEF, 0x4C, 0x91, 0x77,\n0x36, 0x66, 0x54, 0x14, 0x8A, 0x91, 0x0C, 0x0C, 0x62, 0x6E, 0x48, 0x3A, 0xC5, 0x50, 0x3B, 0x61,\n0x21, 0x46, 0x31, 0x59, 0x5F, 0x30, 0x29, 0x76, 0xC7, 0xFD, 0xBC, 0xB3, 0x99, 0x8E, 0xD8, 0xCF,\n0xA6, 0x6E, 0x6B, 0x0A, 0xE2, 0x4F, 0xA3, 0x7C, 0xBA, 0x1A, 0x12, 0xEA, 0xC5, 0xFA, 0xBA, 0x20,\n0xD6, 0xB7, 0xA7, 0xC7, 0x0E, 0x45, 0x10, 0xB5, 0xDB, 0x4F, 0x15, 0x21, 0xF4, 0x3D, 0xF8, 0x88,\n0xD2, 0xF3, 0x21, 0x88, 0x1E, 0xF5, 0xF5, 0x5A, 0x51, 0x7D, 0x8D, 0x10, 0x35, 0x25, 0x9E, 0x80,\n0xB8, 0x25, 0x9F, 0x7E, 0xE8, 0xCE, 0x06, 0x44, 0x97, 0xC4, 0x3C, 0x9B, 0x82, 0xA8, 0x50, 0x5C,\n0x5D, 0xAD, 0xD7, 0xEB, 0x9B, 0xD5, 0x6A, 0x05, 0xA2, 0x5E, 0x9E, 0xDE, 0x29, 0x16, 0x43, 0x3E,\n0x33, 0xF5, 0x36, 0x8A, 0x77, 0x36, 0x1A, 0x15, 0x41, 0x54, 0x24, 0x72, 0x94, 0x4A, 0xDD, 0xD5,\n0xE4, 0xDF, 0xD2, 0xF0, 0xC0, 0xA6, 0x04, 0xA2, 0x1F, 0x67, 0x14, 0x44, 0x9A, 0x53, 0x0C, 0x4F,\n0xF7, 0x1A, 0xF7, 0x97, 0x20, 0xCE, 0xC9, 0xA6, 0x35, 0x22, 0x55, 0xF1, 0xD1, 0x76, 0xBD, 0x59,\n0x81, 0x78, 0x0A, 0xA2, 0xAF, 0xC0, 0x89, 0x44, 0x5F, 0xD9, 0xA8, 0x43, 0xCD, 0xC6, 0x0C, 0x8A,\n0xA2, 0x4E, 0x5A, 0x11, 0x35, 0x25, 0x26, 0x7F, 0x51, 0xA1, 0x84, 0xA2, 0x6E, 0x4E, 0x31, 0x04,\n0x71, 0xEE, 0xB8, 0x3F, 0x80, 0x2C, 0x43, 0x64, 0xD2, 0xEF, 0x64, 0x53, 0x10, 0x5D, 0x15, 0x6F,\n0x36, 0xAF, 0x57, 0x28, 0x82, 0xA8, 0x2B, 0x9B, 0xCE, 0x0F, 0x9E, 0x2A, 0x12, 0xD5, 0xA1, 0xA2,\n0xE8, 0x68, 0xEC, 0x43, 0x36, 0x43, 0x51, 0x97, 0xDF, 0x18, 0x6A, 0x21, 0xDC, 0x5A, 0xEB, 0x63,\n0x08, 0x22, 0x86, 0x71, 0x6E, 0xD4, 0xD9, 0x3C, 0x24, 0xA2, 0x4B, 0xE2, 0xFD, 0xD9, 0x14, 0xC4,\n0x51, 0x28, 0x5E, 0xBF, 0x03, 0x91, 0xC6, 0xA6, 0x8D, 0xF8, 0x8D, 0x10, 0x99, 0xF6, 0x3B, 0xA3,\n0xA2, 0x83, 0xD1, 0x8E, 0xD2, 0x04, 0x50, 0xD9, 0xD4, 0xA3, 0xBE, 0x0C, 0xD9, 0x43, 0x19, 0x91,\n0xDB, 0x6F, 0x26, 0x8C, 0x62, 0x58, 0xCE, 0xD1, 0x5A, 0xE3, 0xFE, 0xB4, 0xCE, 0x66, 0x29, 0x62,\n0x5E, 0x12, 0x7F, 0xBE, 0x43, 0x74, 0x28, 0x3E, 0x5A, 0x95, 0xE3, 0x41, 0x11, 0xC5, 0x30, 0xE4,\n0x0A, 0x7C, 0xB4, 0xDC, 0xD7, 0x37, 0x8A, 0xDA, 0x0C, 0xA3, 0x28, 0xC6, 0x2A, 0x0C, 0xC1, 0xEC,\n0x8D, 0x88, 0x1E, 0x12, 0x51, 0xAC, 0x0C, 0xA3, 0xAF, 0xE9, 0x7D, 0x11, 0x45, 0x28, 0x86, 0x21,\n0x88, 0x61, 0x78, 0xB4, 0x9D, 0x34, 0xEE, 0xCF, 0x68, 0x4F, 0x41, 0xA4, 0x39, 0x55, 0x5F, 0x93,\n0x64, 0xD3, 0xA7, 0x20, 0x8E, 0x42, 0xB1, 0x28, 0x56, 0x33, 0xC6, 0x41, 0x73, 0xC6, 0xF0, 0x4E,\n0x91, 0xFE, 0x14, 0x45, 0x31, 0x62, 0x78, 0x8B, 0xC8, 0x51, 0x08, 0x02, 0xD9, 0x2B, 0x88, 0xF9,\n0x37, 0x6D, 0x7F, 0xEC, 0x0C, 0x1B, 0x6B, 0xA8, 0x31, 0x22, 0x91, 0x48, 0x20, 0x1E, 0x25, 0x9D,\n0x4D, 0xD2, 0x9E, 0xE6, 0x88, 0x79, 0x49, 0xEC, 0x67, 0xD3, 0x3B, 0xC4, 0x32, 0x65, 0x38, 0x14,\n0x7D, 0xF1, 0x56, 0x0C, 0x6B, 0x45, 0x23, 0xA2, 0x08, 0x22, 0x86, 0x20, 0x8A, 0x50, 0xF9, 0x14,\n0x3A, 0x8E, 0x14, 0xA9, 0x88, 0x6E, 0x6B, 0xBC, 0x10, 0xD6, 0xC5, 0xA9, 0xDE, 0x66, 0x94, 0x50,\n0x24, 0x10, 0x8F, 0xDE, 0xE4, 0x9D, 0x0D, 0xED, 0xE9, 0x0C, 0xC4, 0xD9, 0x25, 0xF1, 0x67, 0x10,\n0xBB, 0xA1, 0xC8, 0x95, 0x0D, 0x55, 0xD1, 0x88, 0x18, 0xDE, 0x21, 0x7E, 0xB1, 0x57, 0x3E, 0x85,\n0x90, 0x23, 0x46, 0x03, 0xEE, 0x14, 0x21, 0x44, 0x11, 0x43, 0x46, 0xFD, 0x30, 0x2C, 0x35, 0xD1,\n0x88, 0xDE, 0x25, 0x62, 0x38, 0x9C, 0x79, 0x9D, 0x4D, 0x36, 0x63, 0x80, 0x98, 0x97, 0xC4, 0x18,\n0x30, 0xF4, 0x2E, 0xA3, 0x46, 0x74, 0x28, 0x0A, 0x91, 0x50, 0x04, 0xD1, 0x7F, 0x3F, 0x31, 0x10,\n0xB5, 0x18, 0x66, 0x33, 0x8C, 0xA2, 0x32, 0xAA, 0x18, 0x6D, 0x89, 0x9E, 0x0C, 0xE3, 0xBF, 0x07,\n0xA2, 0x47, 0x7D, 0x0C, 0xA9, 0x89, 0x05, 0xB1, 0xF5, 0xE4, 0x14, 0xC3, 0x40, 0x8C, 0xC3, 0x9D,\n0x4D, 0x76, 0xF1, 0xE6, 0xF6, 0x74, 0x39, 0xA2, 0x4B, 0x62, 0x18, 0x0A, 0xB1, 0x1F, 0x8A, 0x05,\n0x91, 0x49, 0x51, 0xCB, 0x28, 0x7F, 0x19, 0x55, 0x5F, 0x82, 0x93, 0x4F, 0x51, 0x94, 0xA1, 0x9B,\n0x1B, 0x1F, 0x19, 0x6A, 0xCA, 0x6F, 0x46, 0x22, 0x4F, 0xA4, 0x30, 0xAC, 0x2E, 0x4E, 0xB5, 0xC2,\n0x50, 0x20, 0xD2, 0xD9, 0xEC, 0xD9, 0x9E, 0xE6, 0x88, 0x49, 0x73, 0xAA, 0x92, 0xA8, 0x6C, 0x5A,\n0x10, 0x3F, 0x31, 0x22, 0x8A, 0x46, 0xA4, 0xB1, 0x71, 0x67, 0xD3, 0x79, 0xB7, 0xE8, 0x79, 0x3F,\n0x8E, 0x0D, 0x39, 0xB9, 0xA2, 0x5B, 0x1A, 0xB7, 0xA6, 0xFE, 0x01, 0x1B, 0x7F, 0x86, 0xE1, 0xDB,\n0x6F, 0xDA, 0x1A, 0x10, 0x0F, 0xAF, 0x96, 0xB4, 0xA7, 0x33, 0x10, 0xE9, 0x6B, 0xF2, 0x92, 0x08,\n0x62, 0x16, 0x8A, 0x8C, 0xFB, 0x52, 0x04, 0x11, 0xC5, 0x40, 0x44, 0x51, 0x86, 0x56, 0x14, 0x60,\n0xA6, 0x88, 0x60, 0x31, 0x74, 0x57, 0xA3, 0xBE, 0x86, 0x2D, 0x14, 0x86, 0x42, 0x64, 0xD4, 0x2F,\n0x86, 0xE5, 0x5C, 0xEB, 0xDD, 0x62, 0xD6, 0x9E, 0xCE, 0x44, 0xA4, 0x39, 0x9D, 0x5C, 0x12, 0x9F,\n0x3E, 0x1D, 0x10, 0x7B, 0xA1, 0xE8, 0x7C, 0x7A, 0xD0, 0x41, 0xC4, 0x90, 0x4B, 0x70, 0x0C, 0x3B,\n0x88, 0xFD, 0x60, 0x6C, 0xD9, 0xF9, 0xB4, 0xC2, 0x50, 0x84, 0x44, 0x22, 0x7F, 0xAF, 0x8D, 0x85,\n0x70, 0x31, 0xF4, 0x0A, 0xA3, 0x28, 0x62, 0x78, 0x78, 0xC8, 0x36, 0x6A, 0x79, 0x7B, 0x9A, 0x23,\n0x4E, 0x2F, 0x89, 0x5F, 0x07, 0xE2, 0x59, 0x41, 0xB4, 0x62, 0x41, 0xB4, 0xE2, 0x71, 0x4B, 0x11,\n0x44, 0xF2, 0x29, 0x88, 0xFE, 0xD6, 0xD4, 0x1D, 0x6A, 0x1E, 0x8F, 0x12, 0x54, 0x41, 0xF4, 0x87,\n0xFA, 0x10, 0x72, 0x6F, 0x0A, 0x62, 0x67, 0x0D, 0x65, 0xC4, 0x68, 0xEF, 0xD6, 0x17, 0x73, 0xDB,\n0xD3, 0xE5, 0x88, 0x49, 0x49, 0xFC, 0xFE, 0xFB, 0xE7, 0xDB, 0x4F, 0xBA, 0xA1, 0xC8, 0xBC, 0xEF,\n0x50, 0xD4, 0x4F, 0x12, 0x51, 0x13, 0xB9, 0x04, 0xAF, 0x42, 0x51, 0xB1, 0x88, 0xA1, 0x08, 0x9B,\n0x96, 0x12, 0xEC, 0x67, 0xD3, 0x2A, 0x0C, 0x79, 0x22, 0xA5, 0x74, 0x2A, 0x43, 0x10, 0x31, 0xBC,\n0x45, 0xE4, 0x9D, 0xCD, 0xEC, 0xF6, 0x34, 0x47, 0x9C, 0xD3, 0xD7, 0x3C, 0x05, 0xB1, 0xA9, 0xC8,\n0xB8, 0x2F, 0x45, 0x10, 0xB5, 0xDD, 0x27, 0x14, 0xAD, 0x18, 0x47, 0x8A, 0x32, 0x4C, 0x0F, 0x84,\n0x1A, 0xF3, 0xB5, 0xBE, 0xA0, 0x39, 0x55, 0x5B, 0xA3, 0x49, 0xBF, 0x6F, 0x78, 0xF8, 0x00, 0xED,\n0x29, 0x88, 0xB3, 0x9A, 0x53, 0xFE, 0x7E, 0xC9, 0x59, 0x20, 0xA2, 0x58, 0xE7, 0x53, 0x10, 0x35,\n0xEE, 0xD7, 0xDB, 0x28, 0x29, 0xEA, 0x16, 0xBC, 0x4A, 0xA9, 0x3D, 0xC6, 0x7D, 0x0C, 0xFB, 0x15,\n0x71, 0x84, 0x48, 0x49, 0xB4, 0x61, 0x20, 0xFA, 0x33, 0x0C, 0x10, 0x31, 0x9C, 0xDD, 0x9E, 0x2E,\n0x41, 0x74, 0x73, 0xFA, 0x67, 0x8E, 0x48, 0x28, 0x52, 0x14, 0x8D, 0x18, 0x8A, 0x6E, 0x4F, 0x51,\n0xD4, 0x1B, 0x0D, 0x05, 0xA3, 0x18, 0xE5, 0x98, 0xF8, 0xA9, 0x20, 0xAA, 0xAD, 0x51, 0x3A, 0xD5,\n0xB7, 0xA5, 0x7C, 0xD3, 0xA6, 0x15, 0x06, 0x86, 0x20, 0x2E, 0x6A, 0x4F, 0x67, 0x22, 0xBA, 0x39,\n0xF5, 0xC5, 0x69, 0x94, 0xC4, 0x40, 0x94, 0x22, 0x88, 0xCD, 0x3B, 0x1B, 0x14, 0x79, 0xA2, 0x01,\n0x22, 0xF3, 0xBE, 0x10, 0x65, 0x08, 0x23, 0x30, 0x09, 0xA4, 0x0C, 0x5B, 0x23, 0x22, 0x84, 0x2E,\n0x89, 0xC5, 0xD0, 0x0F, 0xF8, 0x31, 0x0C, 0x45, 0xE6, 0x8B, 0xC3, 0x72, 0xDE, 0x7D, 0xD8, 0xF6,\n0x34, 0x47, 0x74, 0x73, 0xDA, 0x29, 0x89, 0x81, 0xB8, 0xF9, 0xA8, 0x17, 0x8A, 0x8F, 0x6A, 0x45,\n0xAF, 0xA3, 0x50, 0x34, 0xA2, 0xF7, 0xFB, 0xAE, 0x8A, 0x1C, 0x60, 0xCC, 0x98, 0xD7, 0x43, 0x04,\n0x41, 0x64, 0x07, 0xC5, 0x17, 0x6D, 0xFA, 0xA6, 0x4D, 0x1F, 0x61, 0x18, 0xF1, 0x70, 0x77, 0x66,\n0xDF, 0x9E, 0x2E, 0x47, 0xCC, 0xFA, 0x9A, 0xDF, 0x02, 0x31, 0x51, 0x64, 0xDC, 0x37, 0x62, 0x28,\n0xF2, 0xC1, 0xB0, 0xEE, 0x4F, 0x83, 0xD1, 0x91, 0x48, 0x28, 0x3A, 0x16, 0xA7, 0x07, 0x22, 0x82,\n0x55, 0x57, 0xA3, 0xF5, 0x05, 0x8B, 0x44, 0xA7, 0x53, 0x92, 0xA9, 0xDF, 0xEF, 0xD7, 0x88, 0xAB,\n0xD5, 0xFA, 0x61, 0xDA, 0x53, 0x23, 0x4E, 0xED, 0x6B, 0xF6, 0x43, 0xAC, 0x15, 0xFD, 0x37, 0x4E,\n0xB8, 0x04, 0x97, 0xE2, 0x6D, 0x46, 0x45, 0x51, 0x8C, 0x18, 0x26, 0x8E, 0xE0, 0xA1, 0x98, 0x54,\n0x44, 0x10, 0x31, 0x54, 0x49, 0xD4, 0x87, 0x34, 0x4C, 0x89, 0xB5, 0xE1, 0xEA, 0x81, 0xDA, 0xD3,\n0xE5, 0x88, 0xBF, 0x15, 0xC4, 0x7B, 0x14, 0xFD, 0x5C, 0xAA, 0xF9, 0x45, 0xC6, 0xE8, 0x07, 0x6D,\n0x7E, 0x78, 0xF2, 0xE4, 0xBB, 0x93, 0xDB, 0xF3, 0xE4, 0x9B, 0xAF, 0xC6, 0x8A, 0x20, 0x4A, 0x11,\n0x47, 0x53, 0x8A, 0xAF, 0x19, 0x8A, 0x18, 0xEA, 0x3B, 0x7D, 0x27, 0x53, 0x5F, 0x7E, 0xF7, 0x0D,\n0x57, 0x0F, 0xD3, 0x9E, 0x1A, 0xB1, 0x3F, 0x61, 0xD0, 0x9C, 0x56, 0x7D, 0xCD, 0x90, 0x1C, 0xFE,\n0x67, 0xEE, 0x5E, 0x7E, 0x5B, 0x27, 0xA2, 0x30, 0x80, 0x8B, 0x05, 0xD9, 0x54, 0x49, 0x51, 0x62,\n0x9C, 0x40, 0xEA, 0x87, 0x12, 0x3B, 0x36, 0x25, 0x3C, 0x4C, 0x84, 0x4A, 0x80, 0xF0, 0xB0, 0x4C,\n0xB0, 0x13, 0x90, 0x80, 0x2D, 0x2C, 0x00, 0x21, 0xC4, 0x82, 0xD7, 0x82, 0xCB, 0xDF, 0xCF, 0x1C,\n0x9F, 0x89, 0xBF, 0xD8, 0xC7, 0x66, 0x12, 0xDC, 0x02, 0x1F, 0x0F, 0x51, 0xDA, 0xA6, 0x97, 0xFC,\n0x98, 0xF1, 0x39, 0x33, 0x63, 0xDF, 0xAF, 0xBE, 0x15, 0x88, 0xE7, 0x8A, 0x87, 0x8E, 0x83, 0x8B,\n0x12, 0xB1, 0x52, 0xCC, 0x87, 0xBB, 0xF3, 0x0C, 0xEF, 0x9C, 0x19, 0x19, 0x36, 0x5A, 0x7E, 0x7F,\n0xE5, 0x25, 0xF5, 0x09, 0x15, 0x90, 0xC6, 0x08, 0x40, 0xD1, 0x23, 0x32, 0x21, 0xEE, 0x67, 0x63,\n0x44, 0x79, 0xDE, 0x54, 0xAE, 0x9B, 0xC2, 0x50, 0x45, 0x1B, 0x0A, 0x44, 0xCC, 0xA7, 0x3D, 0xCB,\n0x53, 0x33, 0x62, 0x77, 0x71, 0xFA, 0x76, 0x0D, 0xB1, 0x7B, 0x28, 0x1E, 0x80, 0xD8, 0x71, 0xE6,\n0x0D, 0x3B, 0x19, 0x4B, 0x46, 0x74, 0x0F, 0x00, 0x3C, 0xBD, 0x50, 0x90, 0x32, 0x22, 0x06, 0x62,\n0x32, 0x55, 0xF1, 0x60, 0x00, 0xC7, 0x8B, 0x24, 0xE1, 0x07, 0xC1, 0x92, 0xD0, 0xBF, 0x1B, 0x2E,\n0x32, 0x94, 0x35, 0x29, 0x2A, 0x53, 0x36, 0x74, 0xD7, 0x87, 0xDD, 0xDC, 0x49, 0x60, 0x28, 0xD7,\n0x4D, 0x17, 0xED, 0x88, 0x7F, 0x3C, 0xC1, 0xE6, 0x7E, 0x7F, 0xC4, 0xF7, 0x04, 0x22, 0x14, 0x1B,\n0x23, 0xF1, 0x4E, 0x20, 0x76, 0x9F, 0xD1, 0xC8, 0xA1, 0x07, 0xC5, 0x43, 0x12, 0xD7, 0x14, 0xED,\n0x61, 0x99, 0xCC, 0xEE, 0x50, 0x44, 0x3A, 0xC7, 0x60, 0xE8, 0x1F, 0x9B, 0x82, 0x85, 0xED, 0x0E,\n0x55, 0xE6, 0x11, 0x46, 0x22, 0x8E, 0xD6, 0xB0, 0xA1, 0xA3, 0x7E, 0x39, 0xA3, 0x11, 0xFD, 0x5A,\n0x85, 0x61, 0x27, 0xE2, 0xA1, 0xCC, 0xB3, 0xBE, 0xE5, 0xE9, 0xF5, 0x88, 0x86, 0x0E, 0x03, 0x88,\n0x9F, 0x2B, 0x44, 0x31, 0x14, 0x45, 0xAB, 0x28, 0x10, 0x45, 0x93, 0xE1, 0x68, 0x44, 0x77, 0xB9,\n0x6B, 0xCD, 0x1A, 0x8A, 0xE3, 0xC2, 0x8E, 0x18, 0xD1, 0xB5, 0x6C, 0x61, 0x78, 0x59, 0xC6, 0xF3,\n0xE1, 0xF0, 0xF6, 0xD8, 0x5C, 0xA8, 0xB1, 0xEE, 0x86, 0x14, 0x8F, 0x0C, 0x5B, 0x37, 0x12, 0xFD,\n0x79, 0x89, 0xE8, 0x85, 0x79, 0x9E, 0x0B, 0xC3, 0x8E, 0xE9, 0xF4, 0xC0, 0xA9, 0x7A, 0x0C, 0x59,\n0xD9, 0xC8, 0x5B, 0x4D, 0xCD, 0x9B, 0xFB, 0x66, 0x44, 0xD1, 0x61, 0x98, 0x11, 0x85, 0xA2, 0x44,\n0x24, 0xC5, 0xD6, 0x33, 0x6F, 0xE8, 0x32, 0x14, 0xA2, 0x33, 0x42, 0xCE, 0x15, 0xEF, 0xCF, 0x66,\n0x54, 0x3B, 0x66, 0x44, 0x1F, 0x88, 0x82, 0x11, 0x23, 0xAF, 0x25, 0xD6, 0x7C, 0xA8, 0x12, 0x36,\n0xCB, 0x52, 0x6B, 0x48, 0xD9, 0xED, 0xF2, 0xB1, 0x58, 0xFA, 0x26, 0xC2, 0xB0, 0xFC, 0xC5, 0xA9,\n0xFF, 0xC4, 0x7B, 0x17, 0x2B, 0x6E, 0x30, 0x6C, 0x47, 0x3C, 0xE8, 0x4C, 0xD5, 0x3E, 0xC6, 0xDF,\n0x94, 0xA7, 0x2A, 0xA2, 0x3C, 0x7D, 0x4A, 0x44, 0x14, 0xA7, 0x25, 0xE2, 0x9F, 0x18, 0x8A, 0x42,\n0x71, 0xDA, 0x50, 0x64, 0x44, 0x28, 0x02, 0x51, 0x2F, 0xDB, 0x54, 0x88, 0xD3, 0xF2, 0xF3, 0x87,\n0xBA, 0xA2, 0x44, 0x44, 0xE0, 0x88, 0xB4, 0x3A, 0xD2, 0x57, 0xDD, 0x0E, 0x29, 0xF7, 0x47, 0x16,\n0xAC, 0x14, 0xAD, 0x5B, 0x45, 0xA8, 0x72, 0x18, 0x6B, 0xC2, 0xC6, 0x6D, 0xFA, 0xFE, 0x81, 0x11,\n0x03, 0xF7, 0x6C, 0x36, 0x15, 0xCF, 0x3D, 0x81, 0xE1, 0x19, 0xE2, 0x54, 0xDD, 0x2B, 0x66, 0x38,\n0xB6, 0x68, 0xD8, 0xDC, 0x7F, 0x62, 0x44, 0x28, 0x0A, 0xC4, 0x0E, 0xC5, 0xE6, 0x48, 0xC4, 0x02,\n0xAA, 0xEB, 0x94, 0xDF, 0xEF, 0xBE, 0xCB, 0x37, 0xCC, 0x1C, 0xD3, 0x75, 0xA5, 0xE8, 0xB1, 0xA1,\n0x8A, 0x1D, 0xAB, 0x0F, 0xE5, 0x48, 0x94, 0x90, 0x32, 0xE5, 0x17, 0x24, 0x43, 0xCE, 0x18, 0x82,\n0x8C, 0x18, 0x57, 0x3F, 0xAA, 0x42, 0xAC, 0x5D, 0x11, 0x47, 0x8C, 0xE8, 0xBA, 0xB5, 0xB2, 0x06,\n0x8A, 0x30, 0xBC, 0x6F, 0x1A, 0x4E, 0x7F, 0xE9, 0x51, 0x9E, 0x3E, 0x29, 0xE2, 0xC7, 0x0A, 0xF1,\n0x19, 0x10, 0x85, 0x22, 0x10, 0x49, 0xB1, 0x7D, 0x11, 0xBC, 0x8E, 0x18, 0x3A, 0x1B, 0x4A, 0x1E,\n0xF3, 0x03, 0xF9, 0x0B, 0xEB, 0xE1, 0x18, 0x9C, 0xE6, 0xD5, 0x65, 0x75, 0x51, 0x8C, 0x76, 0x14,\n0x42, 0x54, 0x11, 0x84, 0x26, 0xC5, 0x74, 0xA8, 0x13, 0x59, 0x35, 0xC3, 0x71, 0xF1, 0xB0, 0xD6,\n0x8A, 0x21, 0x23, 0x36, 0xAE, 0x88, 0x87, 0x4D, 0x99, 0xFB, 0x28, 0xA9, 0xD6, 0xBE, 0x81, 0x68,\n0x30, 0x1C, 0xFE, 0xF6, 0xF8, 0xE5, 0xA9, 0x19, 0x51, 0xF6, 0xFA, 0xB2, 0x4D, 0xFC, 0xF8, 0x63,\n0x46, 0x94, 0x43, 0x11, 0x8A, 0xD8, 0x53, 0xAC, 0x3D, 0x49, 0x5A, 0xAC, 0xBC, 0x69, 0xC4, 0x60,\n0x43, 0x71, 0x66, 0xFA, 0x40, 0x7F, 0x1A, 0xDB, 0x0F, 0xC5, 0x74, 0x57, 0x66, 0x1A, 0x53, 0x80,\n0xB8, 0x73, 0x2D, 0x9B, 0x73, 0x11, 0xA2, 0x75, 0xCA, 0xFC, 0x84, 0xA8, 0xBF, 0x1F, 0xE7, 0xA2,\n0x2C, 0xEB, 0xA0, 0x7F, 0x14, 0xB6, 0xA0, 0xB0, 0x17, 0x1C, 0x6C, 0x38, 0xAE, 0x2F, 0x9E, 0x71,\n0x0A, 0x43, 0x20, 0xCE, 0x0D, 0x88, 0x7D, 0xCE, 0x9E, 0x9A, 0x11, 0xBB, 0x7B, 0xFD, 0xD7, 0x24,\n0xE2, 0x57, 0xCF, 0xB6, 0x72, 0x28, 0xA2, 0xCB, 0xE8, 0x44, 0x94, 0x8A, 0x79, 0x03, 0x51, 0xAF,\n0x83, 0xA7, 0xB1, 0xF5, 0x70, 0xBB, 0x2B, 0x93, 0x37, 0x10, 0x7D, 0x4B, 0x18, 0x76, 0x49, 0x5A,\n0xC8, 0x6A, 0x78, 0xCA, 0xBA, 0x8E, 0x48, 0x8A, 0xFE, 0x8E, 0xE3, 0xE1, 0xFE, 0xEE, 0xE6, 0x40,\n0xBC, 0x8D, 0x93, 0x3C, 0x17, 0x86, 0x28, 0x6A, 0x04, 0x22, 0x19, 0xD2, 0xE3, 0x0B, 0x7B, 0x94,\n0xA7, 0xBD, 0x11, 0xE5, 0x01, 0x9B, 0xB7, 0xEB, 0x88, 0x50, 0x44, 0x6D, 0x03, 0xC4, 0x96, 0xE9,\n0xB4, 0xE3, 0xFE, 0x28, 0x46, 0xA4, 0x57, 0x61, 0x44, 0xD7, 0xE7, 0xC1, 0x18, 0xD9, 0x0F, 0xD3,\n0x11, 0x65, 0x3E, 0x96, 0x23, 0x11, 0x88, 0x32, 0xAD, 0x8C, 0xE9, 0x59, 0xAD, 0x74, 0x6C, 0xEE,\n0x03, 0x17, 0x0F, 0xB7, 0x23, 0x8E, 0xAB, 0x09, 0x81, 0x18, 0x6C, 0x6E, 0xCA, 0xA4, 0x34, 0x10,\n0x85, 0x61, 0x3B, 0x22, 0x0C, 0xA7, 0x84, 0xF8, 0x4F, 0xCA, 0xD3, 0xE7, 0x1F, 0x13, 0x51, 0x76,\n0x18, 0x8C, 0xF8, 0x07, 0x21, 0x0A, 0x45, 0x2C, 0xDA, 0x74, 0x22, 0xCA, 0xE7, 0x12, 0x31, 0xA2,\n0xCA, 0xC6, 0xF1, 0x43, 0x17, 0x37, 0xBA, 0x45, 0x76, 0x34, 0x2A, 0xD3, 0x9C, 0x4E, 0xED, 0x42,\n0xCC, 0xA7, 0xC6, 0x1C, 0x76, 0x88, 0x85, 0xEB, 0x21, 0x27, 0xB6, 0x6D, 0x8D, 0x38, 0x87, 0x21,\n0x23, 0xFA, 0x73, 0x46, 0x5C, 0x45, 0x89, 0xF8, 0x1D, 0xBE, 0x3C, 0x8E, 0x44, 0xAC, 0x0C, 0xF9,\n0xB9, 0x77, 0x3D, 0xCA, 0xD3, 0x27, 0x47, 0x6C, 0x99, 0x50, 0xE5, 0xF2, 0x69, 0x5D, 0xB1, 0xE3,\n0xF7, 0xDC, 0x27, 0x44, 0x8A, 0xE3, 0xD7, 0x76, 0x87, 0x23, 0x6B, 0xCE, 0xC3, 0x83, 0xAF, 0x8A,\n0x85, 0x36, 0x0D, 0xC9, 0xC0, 0xBE, 0xCE, 0x71, 0xB5, 0x3B, 0x4B, 0x84, 0xE5, 0x52, 0x0A, 0xBD,\n0xF6, 0xD1, 0xD7, 0x8A, 0x2B, 0xAC, 0xB7, 0x71, 0x97, 0xB8, 0x61, 0xC4, 0xC8, 0x6D, 0x3C, 0xBA,\n0x5D, 0x34, 0xFA, 0x40, 0x64, 0x43, 0x46, 0xFC, 0x93, 0x1A, 0xC5, 0x5E, 0xE5, 0x29, 0x14, 0xCD,\n0x88, 0x62, 0xD5, 0xCD, 0x8C, 0x28, 0x87, 0x62, 0xEB, 0x4E, 0x86, 0x78, 0xA6, 0xBB, 0x58, 0x40,\n0x55, 0x88, 0x03, 0x4A, 0x72, 0x36, 0x12, 0x55, 0xD2, 0x22, 0xD7, 0x45, 0x2B, 0x37, 0x8B, 0xE7,\n0x88, 0xEC, 0x68, 0x86, 0xC4, 0x64, 0x8A, 0x84, 0x16, 0x10, 0x63, 0x4E, 0xF1, 0xB0, 0xD8, 0x70,\n0xDC, 0x2C, 0xF3, 0x61, 0xE8, 0x7A, 0x37, 0x37, 0x03, 0x15, 0x2F, 0x4D, 0x64, 0x59, 0x83, 0x1E,\n0x51, 0x18, 0xF2, 0x40, 0xA4, 0x00, 0xF1, 0xA2, 0xCA, 0xE6, 0x5F, 0x45, 0xFC, 0x7D, 0x0B, 0xC5,\n0xC6, 0x50, 0xEC, 0x3A, 0x7E, 0x0A, 0x45, 0x8D, 0x08, 0x45, 0x8D, 0xE8, 0xBA, 0x1A, 0x51, 0x2B,\n0x46, 0xC9, 0x86, 0x92, 0x50, 0xFF, 0xA6, 0x10, 0xD3, 0xCD, 0x06, 0x88, 0x70, 0xBC, 0x00, 0xF2,\n0x8E, 0xF5, 0x78, 0x4E, 0x1D, 0x39, 0x56, 0xC1, 0xC1, 0x16, 0x62, 0x6C, 0x8F, 0x35, 0xE2, 0x7D,\n0x3A, 0x03, 0x61, 0xE8, 0xEE, 0x94, 0xA1, 0x4A, 0xE8, 0x56, 0x55, 0x0D, 0x96, 0x6B, 0x0C, 0x86,\n0x3D, 0x10, 0x51, 0xD9, 0x3C, 0x39, 0xA2, 0x9C, 0x50, 0x51, 0xD9, 0xC8, 0x4D, 0x45, 0x79, 0x74,\n0x11, 0x8A, 0xE1, 0x5A, 0xBF, 0x55, 0x21, 0x14, 0x7D, 0x85, 0x98, 0xD3, 0x2B, 0x13, 0x22, 0x85,\n0x10, 0x29, 0xA1, 0x3D, 0x1E, 0xD7, 0x18, 0x8D, 0x94, 0xF9, 0x88, 0x33, 0x2E, 0xFF, 0xBE, 0x59,\n0x58, 0x0C, 0x78, 0x7E, 0x56, 0x38, 0xB6, 0x12, 0x3D, 0x71, 0x3A, 0x99, 0x36, 0xA4, 0xAC, 0xD8,\n0x70, 0x1A, 0x25, 0xB9, 0x43, 0x31, 0x1B, 0xE2, 0x82, 0xC8, 0xF9, 0x99, 0x10, 0x1F, 0xBB, 0x3C,\n0xE5, 0x7F, 0xF1, 0xA8, 0x88, 0x50, 0x1C, 0x41, 0xB1, 0x73, 0x53, 0x11, 0x8A, 0x58, 0xB7, 0x09,\n0xEF, 0x78, 0x3A, 0x75, 0xC3, 0x9A, 0x62, 0xE4, 0x9D, 0x23, 0xC6, 0x40, 0x84, 0x22, 0x00, 0xBB,\n0x35, 0x63, 0x6D, 0xB8, 0x7E, 0x67, 0xCD, 0x8B, 0x2F, 0x56, 0x65, 0x88, 0xCD, 0xFC, 0xB1, 0xA5,\n0x4B, 0x98, 0x69, 0x0A, 0x44, 0x7F, 0x38, 0x28, 0xB3, 0xF4, 0xF3, 0xF6, 0x2D, 0xA8, 0x1A, 0x22,\n0xB6, 0x2F, 0x60, 0xB8, 0xFB, 0x45, 0xAD, 0xBB, 0xF5, 0x28, 0x4F, 0xFB, 0x20, 0x76, 0x6F, 0x62,\n0x7C, 0xC4, 0x88, 0xBF, 0x6C, 0x9B, 0x8A, 0x68, 0x15, 0xB9, 0x3E, 0xED, 0x46, 0x94, 0x8A, 0xAE,\n0x46, 0x0C, 0x71, 0x1E, 0x9C, 0x12, 0x1D, 0xCA, 0x17, 0x4E, 0x35, 0x62, 0xC8, 0x88, 0x29, 0x09,\n0xC0, 0xD0, 0x18, 0x6B, 0xA1, 0x11, 0xAD, 0x77, 0xFD, 0x91, 0x7E, 0x85, 0x02, 0x82, 0x64, 0x48,\n0x29, 0xD2, 0x1B, 0x4E, 0x80, 0xD9, 0x34, 0x1F, 0x70, 0xD2, 0xB0, 0x7D, 0xC1, 0xCD, 0xEB, 0x40,\n0x84, 0x21, 0x10, 0x7B, 0x94, 0xA7, 0x50, 0x7C, 0x6C, 0x44, 0xA9, 0x88, 0x1D, 0x29, 0x23, 0xA2,\n0x5E, 0x06, 0x07, 0xE2, 0x96, 0x12, 0x95, 0x88, 0x38, 0x4A, 0xEC, 0xF2, 0x8B, 0xC7, 0x51, 0x99,\n0x71, 0xC2, 0x23, 0x3E, 0x2A, 0x05, 0x0A, 0x1D, 0xB3, 0x61, 0xB2, 0xE1, 0x84, 0x0F, 0x96, 0x1E,\n0xCB, 0x89, 0x5D, 0xC0, 0x30, 0xE2, 0xA4, 0x91, 0x75, 0x3B, 0x28, 0x33, 0x4A, 0x35, 0x61, 0xE8,\n0xAA, 0x7F, 0xB3, 0x55, 0xB9, 0x4D, 0xF3, 0xEB, 0x10, 0x61, 0xB8, 0xFB, 0xED, 0xAB, 0xAF, 0xBF,\n0xEC, 0x51, 0x9E, 0x3E, 0x29, 0xE2, 0xCF, 0x12, 0xF1, 0xA6, 0xB6, 0x6A, 0x33, 0x15, 0xAD, 0x22,\n0xBA, 0x8C, 0x2E, 0xC4, 0x94, 0x10, 0x31, 0x16, 0x33, 0x7E, 0x57, 0x0F, 0x45, 0x9A, 0x6A, 0xC4,\n0x32, 0x29, 0x09, 0xC0, 0xD1, 0x08, 0x39, 0x64, 0xB9, 0xE1, 0xBB, 0x96, 0x6D, 0xF3, 0x3F, 0x06,\n0xF4, 0x0A, 0xE2, 0x3C, 0xC6, 0xD8, 0x1E, 0x70, 0x9C, 0xD3, 0x99, 0x6F, 0x97, 0x0D, 0xB7, 0x89,\n0x0B, 0x43, 0x20, 0x8A, 0x25, 0x37, 0x81, 0xB8, 0x53, 0xF9, 0x5D, 0xAD, 0xBB, 0x5D, 0xB1, 0x7A,\n0xFA, 0xC2, 0xBF, 0x8F, 0x28, 0x15, 0x81, 0x38, 0x25, 0xC4, 0x4E, 0xC5, 0xC6, 0x74, 0x7A, 0xD8,\n0x52, 0xB2, 0xA4, 0x86, 0xB8, 0xD4, 0xEF, 0xE9, 0x38, 0x55, 0x51, 0x88, 0xB9, 0x9E, 0xDB, 0xD4,\n0x7B, 0x0F, 0x46, 0xA3, 0xE4, 0x4A, 0x17, 0x2C, 0xE9, 0xD1, 0x2E, 0x8E, 0xF3, 0x1B, 0xCA, 0xBD,\n0x2D, 0xCE, 0x45, 0xA9, 0x44, 0x76, 0x30, 0x28, 0x33, 0xCC, 0x14, 0x21, 0x65, 0xBD, 0x2D, 0x33,\n0x8C, 0x12, 0x07, 0x86, 0x62, 0xE9, 0x5B, 0xEE, 0x06, 0x4F, 0xA7, 0x40, 0xC4, 0x92, 0xCD, 0x63,\n0x97, 0xA7, 0xD7, 0x23, 0xBE, 0x54, 0x47, 0xFC, 0xFC, 0xDB, 0x37, 0x5A, 0x14, 0x37, 0x2A, 0x40,\n0xEC, 0x54, 0x94, 0x05, 0xAA, 0xFB, 0x46, 0x0B, 0x62, 0xB2, 0xE1, 0xD7, 0x1E, 0xEB, 0x2D, 0x3E,\n0x03, 0x62, 0x07, 0x25, 0xCD, 0xA0, 0xA4, 0xE8, 0xBD, 0xAF, 0xE6, 0x50, 0x6B, 0xC5, 0x83, 0xB9,\n0xD0, 0x80, 0xF5, 0xB3, 0xC2, 0x71, 0x31, 0x50, 0xA1, 0x91, 0xC7, 0x88, 0xEE, 0x6E, 0x5B, 0xC6,\n0xF1, 0xD1, 0x5E, 0x80, 0x50, 0xA5, 0xD3, 0x70, 0xCA, 0x86, 0x06, 0xC4, 0x2B, 0xCA, 0x53, 0xCE,\n0xE3, 0x22, 0x7E, 0xC9, 0x88, 0x1C, 0x89, 0x88, 0xE9, 0xB4, 0xA1, 0x28, 0x97, 0xC1, 0x59, 0xD1,\n0x9D, 0x4C, 0xDE, 0x50, 0xC9, 0x12, 0x28, 0xFA, 0xC1, 0x0D, 0xBF, 0xF4, 0xA2, 0x48, 0xB3, 0x94,\n0x12, 0x9B, 0x11, 0x65, 0xEC, 0xBB, 0x1B, 0xCE, 0x91, 0x4A, 0x52, 0x2B, 0xA4, 0x7F, 0x1C, 0x0C,\n0x66, 0x63, 0x08, 0x62, 0x33, 0x3F, 0x2D, 0x56, 0x8C, 0x78, 0xE7, 0x97, 0x8A, 0xC1, 0x1B, 0x9C,\n0x2C, 0x5C, 0xB2, 0xA1, 0xB8, 0x13, 0xCA, 0x6C, 0x08, 0xC4, 0x1E, 0xE5, 0xE9, 0x93, 0x21, 0x6E,\n0x5B, 0x86, 0xE2, 0x86, 0x52, 0x43, 0x64, 0x45, 0x32, 0xC4, 0x5E, 0x86, 0x54, 0xD4, 0x88, 0x77,\n0x7E, 0x42, 0x61, 0xC6, 0xC5, 0x56, 0xA7, 0x88, 0xB3, 0x2E, 0x44, 0xB3, 0xA3, 0x9D, 0x0F, 0x38,\n0xFE, 0x83, 0xAD, 0x10, 0x8B, 0x88, 0x3F, 0xD2, 0x27, 0x31, 0x40, 0x48, 0xC9, 0x66, 0xD1, 0x78,\n0xCB, 0xC9, 0x09, 0xD1, 0xBD, 0x67, 0xC3, 0x45, 0x9A, 0x37, 0x11, 0xBD, 0x36, 0x44, 0x69, 0x48,\n0x79, 0x46, 0x88, 0xBD, 0x1F, 0x2C, 0xD5, 0x8E, 0xC8, 0xB9, 0xFA, 0x9A, 0x08, 0xC4, 0x3F, 0xDF,\n0x90, 0x8A, 0xDC, 0xF0, 0xD7, 0x1B, 0xC5, 0x83, 0xB8, 0x3F, 0x4A, 0xAE, 0xBE, 0x05, 0xA1, 0x46,\n0x3C, 0x1D, 0x25, 0x5E, 0xDE, 0xDE, 0x6C, 0x75, 0x92, 0x22, 0x6D, 0x41, 0x04, 0xA3, 0x01, 0x72,\n0xC4, 0xDF, 0x73, 0x78, 0xB0, 0xCB, 0x2F, 0xB4, 0xF8, 0x43, 0x6F, 0x1C, 0x43, 0x90, 0xC3, 0xEB,\n0x7C, 0xF7, 0xDB, 0x32, 0x73, 0x3F, 0x54, 0x79, 0x83, 0xC3, 0x65, 0x0D, 0x16, 0x6B, 0x60, 0xD8,\n0x8A, 0x58, 0x37, 0x1C, 0x3D, 0xA3, 0x25, 0x9B, 0x1E, 0x0F, 0x96, 0xEA, 0x83, 0xF8, 0x81, 0x09,\n0xF1, 0x59, 0x85, 0x08, 0x45, 0x6C, 0x48, 0xE1, 0x9A, 0x78, 0x38, 0xC8, 0xE9, 0x94, 0x11, 0xA1,\n0xE8, 0x04, 0xFB, 0xFD, 0x64, 0x32, 0x19, 0x2C, 0x16, 0x9E, 0x7A, 0x8F, 0x6E, 0xEF, 0x36, 0x6F,\n0x54, 0x59, 0x59, 0x11, 0xBD, 0xBB, 0x8C, 0xB8, 0x2D, 0x93, 0x91, 0xA1, 0x76, 0x34, 0x51, 0x06,\n0x03, 0x4E, 0x64, 0xE9, 0xFD, 0x5F, 0x2E, 0x83, 0x37, 0x45, 0x5C, 0x13, 0xCC, 0x66, 0x65, 0xFC,\n0xC8, 0x7F, 0x83, 0xE3, 0xB9, 0xAA, 0xAC, 0x99, 0x94, 0xD9, 0xE9, 0xB2, 0x26, 0x10, 0xCF, 0x3C,\n0x69, 0x47, 0xAC, 0x1B, 0x02, 0xB1, 0xC7, 0xE6, 0xBE, 0x11, 0x11, 0xC7, 0xF8, 0xAF, 0x42, 0xFC,\n0x4A, 0x21, 0x0A, 0x45, 0x8D, 0x38, 0xAA, 0x9F, 0xD1, 0xC0, 0xD2, 0x1B, 0x14, 0xEB, 0x88, 0x4B,\n0xA7, 0x44, 0x44, 0x1A, 0x86, 0x74, 0xD7, 0x22, 0x10, 0xA3, 0x38, 0x12, 0x8C, 0x1D, 0x96, 0xF1,\n0x80, 0x73, 0xFB, 0xAE, 0xAE, 0x47, 0xED, 0x80, 0x5F, 0xA3, 0x56, 0xD0, 0xA8, 0xE8, 0xDD, 0xA7,\n0xAC, 0x98, 0xF3, 0xCF, 0x1D, 0x24, 0x89, 0x3B, 0x9A, 0x94, 0x09, 0xFC, 0x1C, 0x84, 0x62, 0xB5,\n0x46, 0x9E, 0x8F, 0xAA, 0x1B, 0x8E, 0xFE, 0xBC, 0x18, 0xF1, 0x8A, 0xCA, 0xC6, 0x8C, 0xF8, 0xD6,\n0x45, 0x88, 0x7F, 0xBC, 0xA1, 0x62, 0x40, 0xC4, 0xD6, 0xB0, 0x50, 0x14, 0x88, 0x67, 0x81, 0xA8,\n0x63, 0x45, 0xBC, 0xB9, 0x48, 0x89, 0xF5, 0x5C, 0x67, 0x09, 0xC4, 0xAE, 0xA8, 0xD9, 0x91, 0x63,\n0x59, 0xBA, 0x2F, 0xF4, 0x57, 0xDB, 0x32, 0x21, 0x10, 0x33, 0x0A, 0x09, 0x52, 0xA2, 0x74, 0xC2,\n0x39, 0xB8, 0xEB, 0x3D, 0x67, 0xA6, 0xCB, 0x1A, 0x18, 0xAE, 0xBB, 0x0C, 0xE7, 0x8D, 0x81, 0x38,\n0xBA, 0x14, 0xF1, 0x83, 0xFF, 0x0A, 0x71, 0x22, 0x14, 0x31, 0x9F, 0xE2, 0xCC, 0x9B, 0x49, 0x71,\n0xA5, 0xD2, 0x85, 0x78, 0x93, 0x29, 0x43, 0x57, 0x2B, 0x02, 0xD1, 0x8E, 0x2E, 0x45, 0xF4, 0xB7,\n0x1C, 0xF7, 0xA8, 0x7A, 0x0A, 0x37, 0xF0, 0x0E, 0xDB, 0x53, 0x96, 0x68, 0x0F, 0x89, 0xF0, 0x64,\n0xE8, 0xCE, 0x8A, 0x5B, 0xAD, 0xE8, 0x1D, 0xF6, 0x65, 0xBC, 0x2C, 0x07, 0x62, 0xCB, 0xD3, 0xF8,\n0x9A, 0x86, 0x40, 0x24, 0x43, 0x20, 0x5E, 0xF7, 0xDC, 0xD3, 0xFE, 0x88, 0xE6, 0x4D, 0x61, 0x5A,\n0x01, 0x9F, 0x4C, 0xC4, 0x84, 0x8A, 0xFA, 0x54, 0x3E, 0x39, 0xB3, 0xEB, 0x6E, 0x45, 0xCA, 0xD2,\n0x7B, 0xA5, 0x4C, 0x5D, 0x72, 0x6D, 0x15, 0xA9, 0x8F, 0x07, 0x86, 0x65, 0xE3, 0x3B, 0x9E, 0x67,\n0x8B, 0x88, 0x12, 0x9B, 0x21, 0x8B, 0xE1, 0xB6, 0xCC, 0xB4, 0x48, 0xC8, 0xEF, 0x8D, 0xB3, 0xDC,\n0x8F, 0xD3, 0x32, 0x62, 0x23, 0x3F, 0x1D, 0x0F, 0xF6, 0xB5, 0x84, 0xA1, 0x5C, 0x6F, 0x93, 0x77,\n0x95, 0xC2, 0x90, 0x15, 0x2B, 0xC3, 0x8D, 0x01, 0xD1, 0xD0, 0x63, 0x34, 0x14, 0xBB, 0xF6, 0xA2,\n0xFA, 0x20, 0x36, 0x15, 0xB1, 0x68, 0xC3, 0x8A, 0xE8, 0x15, 0xE5, 0x8E, 0x14, 0x14, 0x19, 0xB1,\n0xC1, 0x38, 0x70, 0x6C, 0x3B, 0xA2, 0xF7, 0x95, 0x11, 0x29, 0xB1, 0x42, 0x54, 0x61, 0x44, 0x38,\n0x76, 0x4B, 0x26, 0x5B, 0x0E, 0xFC, 0x10, 0x8D, 0xA8, 0x2F, 0x87, 0x78, 0xF4, 0x97, 0x1B, 0x2F,\n0x6B, 0x86, 0x9B, 0xB4, 0xF6, 0x90, 0xE1, 0x0E, 0x44, 0x18, 0x02, 0x91, 0x0D, 0x37, 0x1B, 0x42,\n0xEC, 0xD1, 0x63, 0x3C, 0x31, 0xA2, 0x54, 0xE4, 0x86, 0x7F, 0x04, 0x45, 0x42, 0x14, 0x77, 0x9C,\n0x92, 0xA2, 0x07, 0x45, 0x20, 0x8E, 0x4E, 0x94, 0x77, 0x81, 0x7F, 0xB4, 0xA3, 0x99, 0x7B, 0xB6,\n0x2D, 0x05, 0xC4, 0x49, 0x91, 0x46, 0x08, 0x1C, 0x05, 0x65, 0x36, 0xAC, 0xC8, 0x26, 0x22, 0x59,\n0xBD, 0xA6, 0xC1, 0x2D, 0x6C, 0xB3, 0xE2, 0x6E, 0xFF, 0x0A, 0xE2, 0xB8, 0x44, 0x78, 0x29, 0xA2,\n0x30, 0x04, 0x62, 0xDF, 0x1E, 0x83, 0x63, 0xD8, 0x15, 0x16, 0x87, 0x87, 0x0D, 0x88, 0xBF, 0x4C,\n0x1A, 0x8A, 0x03, 0xAD, 0x38, 0x02, 0xE2, 0xF0, 0x84, 0x48, 0x69, 0x20, 0x82, 0xB1, 0x42, 0x74,\n0xAC, 0x23, 0xBD, 0xB7, 0xD6, 0xD1, 0x2E, 0xE2, 0xD4, 0xC7, 0xDE, 0x22, 0x47, 0x21, 0xEE, 0xCB,\n0x14, 0xB8, 0xAB, 0x1F, 0x92, 0x22, 0xEE, 0x01, 0x7E, 0x2D, 0xC9, 0xAB, 0xA2, 0x86, 0x05, 0xF1,\n0xA0, 0x93, 0x2C, 0x1E, 0xC0, 0x70, 0x9B, 0x25, 0xE8, 0xF2, 0xE5, 0xEE, 0x05, 0x10, 0x59, 0x51,\n0x1A, 0x8E, 0x08, 0xF1, 0x8B, 0xD6, 0xCA, 0xE6, 0xD3, 0xEB, 0x7B, 0x0C, 0x20, 0x96, 0x69, 0x43,\n0x7C, 0xF9, 0x0A, 0xC4, 0x1F, 0x7E, 0x9E, 0x50, 0xE4, 0x84, 0x5A, 0xBF, 0xB5, 0xA6, 0x86, 0x28,\n0xE6, 0x53, 0x20, 0x7E, 0x42, 0x59, 0xCF, 0x7C, 0x6E, 0xDA, 0x14, 0x60, 0xF5, 0xE0, 0x3E, 0x38,\n0x46, 0x7C, 0xB5, 0xBA, 0xE3, 0x99, 0x10, 0x90, 0xAD, 0x92, 0xE3, 0xD1, 0xE4, 0x6F, 0xE3, 0x55,\n0x4F, 0xA4, 0x05, 0x21, 0x23, 0xBA, 0x91, 0x0B, 0xC4, 0xC0, 0x6F, 0x18, 0x7A, 0xD2, 0x50, 0x94,\n0x35, 0x30, 0xA4, 0x08, 0xC4, 0x7E, 0x3D, 0x86, 0x19, 0xF1, 0x85, 0xD6, 0x63, 0xFC, 0xAD, 0x88,\n0xDF, 0x32, 0xA2, 0x50, 0xDC, 0xB0, 0x22, 0xEE, 0x8F, 0xEA, 0x5C, 0x06, 0x07, 0xA2, 0x73, 0x28,\n0x11, 0xBD, 0x1C, 0x8F, 0x45, 0xA1, 0x34, 0x18, 0xE3, 0x3D, 0x23, 0xD2, 0x32, 0x5C, 0xC3, 0x51,\n0x6A, 0xBA, 0xFB, 0xD6, 0x0C, 0x16, 0x39, 0xFF, 0xC3, 0x34, 0x56, 0x84, 0x98, 0x4A, 0x99, 0x90,\n0xE3, 0xC7, 0x5E, 0x85, 0xE8, 0x63, 0x20, 0x1A, 0x0D, 0x55, 0x6A, 0x45, 0xCD, 0xE6, 0x7F, 0x85,\n0xF8, 0xAA, 0x38, 0x3C, 0x4C, 0x4B, 0x36, 0x93, 0x56, 0x45, 0xAE, 0x6C, 0x80, 0xA8, 0x15, 0x81,\n0x08, 0x45, 0x5C, 0x15, 0x97, 0x3B, 0x1E, 0x89, 0x39, 0xEE, 0x93, 0x12, 0x8C, 0x35, 0xC4, 0xAC,\n0x03, 0x11, 0x90, 0x7E, 0x8B, 0x5F, 0x38, 0x3E, 0x7E, 0xF8, 0xEE, 0xFB, 0xF7, 0xFC, 0x61, 0x9C,\n0xA9, 0x60, 0x20, 0xC2, 0x30, 0x49, 0xFC, 0x78, 0xF8, 0x09, 0xE7, 0xD6, 0x5F, 0x8A, 0xE5, 0x36,\n0x71, 0x5E, 0x18, 0x86, 0x68, 0xF4, 0xD9, 0x10, 0x88, 0xFD, 0xF6, 0x31, 0xA0, 0x78, 0xF1, 0x86,\n0xA2, 0xF9, 0x5E, 0x0C, 0x5E, 0x3C, 0xDD, 0x0B, 0x45, 0x46, 0xAC, 0xD5, 0xA7, 0x50, 0xBC, 0xEB,\n0x56, 0xCC, 0x19, 0x71, 0xB9, 0x0C, 0x58, 0xB1, 0x9D, 0x31, 0xE2, 0xC1, 0x31, 0x8F, 0xA9, 0x6B,\n0x34, 0x21, 0x16, 0xB5, 0x4E, 0x61, 0x91, 0x47, 0xCA, 0xEF, 0xC1, 0xB2, 0x8B, 0xB1, 0x1D, 0xF0,\n0xCB, 0x84, 0x29, 0x2E, 0x87, 0x18, 0x88, 0xFC, 0x33, 0xD3, 0x40, 0x23, 0xBA, 0x89, 0x63, 0x40,\n0x84, 0x61, 0xAD, 0xD1, 0x87, 0xE1, 0x0D, 0x10, 0xAF, 0x68, 0x14, 0xAF, 0xAA, 0x6C, 0x2E, 0x45,\n0x7C, 0x4D, 0x22, 0x3E, 0xDB, 0x0B, 0x45, 0x6E, 0x32, 0xEA, 0x47, 0x17, 0xE5, 0x58, 0x94, 0x07,\n0xC2, 0x97, 0xBB, 0x6F, 0xBE, 0x51, 0x6F, 0x99, 0xB3, 0xC4, 0x71, 0xE2, 0x16, 0xC6, 0xE8, 0x93,\n0x4F, 0x34, 0xA2, 0x4A, 0x5A, 0xA5, 0x1D, 0xD1, 0xDE, 0x69, 0xBF, 0x79, 0x30, 0xB3, 0x3E, 0x7B,\n0xFF, 0xC1, 0xB2, 0x54, 0xBF, 0x4F, 0xD7, 0xC1, 0xD8, 0x61, 0xC4, 0x55, 0x8A, 0xA9, 0x94, 0x83,\n0x47, 0x64, 0xB8, 0x03, 0x36, 0x9C, 0x66, 0x39, 0x13, 0xB2, 0xA1, 0x40, 0x44, 0x9F, 0xCF, 0x86,\n0x40, 0x84, 0xA1, 0x09, 0x11, 0xE5, 0x69, 0x2F, 0xC4, 0xE7, 0xE4, 0x0A, 0x78, 0xE7, 0xAD, 0x6D,\n0x40, 0xFC, 0x8A, 0x10, 0x1B, 0x8A, 0xB5, 0x7E, 0x1F, 0x1D, 0x3F, 0x14, 0x55, 0xE4, 0x76, 0x86,\n0x44, 0xAC, 0x33, 0x9E, 0x10, 0xC3, 0x4F, 0x28, 0xAF, 0x38, 0xBC, 0x9A, 0x8A, 0xD1, 0xD8, 0x2A,\n0x49, 0x54, 0x94, 0xD9, 0xFB, 0x0F, 0x47, 0xF2, 0x53, 0x80, 0x9C, 0xC8, 0xE7, 0x4F, 0xDC, 0x47,\n0x8C, 0x08, 0x43, 0x15, 0x36, 0x4C, 0xBC, 0x4F, 0x38, 0x61, 0x08, 0xC2, 0xC6, 0x15, 0x51, 0x20,\n0xA2, 0x34, 0xA5, 0xC0, 0x90, 0x11, 0x65, 0xA3, 0xD8, 0xA7, 0xC7, 0x30, 0x2F, 0xD9, 0x98, 0x37,\n0x14, 0x19, 0xF1, 0x8F, 0x3D, 0x14, 0x31, 0x14, 0x6B, 0x07, 0x50, 0xC5, 0x6F, 0x5B, 0x43, 0x69,\n0x47, 0x24, 0xC5, 0xC0, 0x51, 0x88, 0x50, 0xA4, 0x9C, 0x23, 0x26, 0x8C, 0x18, 0xA4, 0x33, 0xAD,\n0x08, 0x48, 0x41, 0x19, 0x6F, 0x74, 0x8B, 0x60, 0xD9, 0x3C, 0x00, 0x39, 0xF4, 0x0D, 0x36, 0x7F,\n0x66, 0x13, 0x35, 0xA7, 0x52, 0x20, 0xEE, 0xD9, 0x70, 0x94, 0xE6, 0x30, 0xA4, 0x08, 0xC3, 0x3A,\n0x22, 0x0C, 0x47, 0x30, 0x04, 0xE2, 0xE3, 0x37, 0x8A, 0xFD, 0x17, 0x4F, 0x7F, 0x57, 0x88, 0x8D,\n0x09, 0xB5, 0xBE, 0x1F, 0x85, 0x8E, 0x9F, 0x1D, 0xDB, 0x10, 0x59, 0xD1, 0x51, 0x88, 0x2A, 0x8C,\n0x08, 0x46, 0x20, 0x12, 0xA3, 0x1F, 0xF2, 0x5B, 0x1B, 0xA4, 0x7C, 0xAB, 0x06, 0x14, 0x65, 0xA2,\n0xF0, 0xD4, 0x22, 0x14, 0x10, 0xD4, 0x5F, 0x3F, 0xD6, 0x55, 0x4B, 0x26, 0x0C, 0x93, 0x32, 0x79,\n0x72, 0x5B, 0x7E, 0x5E, 0xFD, 0x7A, 0x42, 0x27, 0x08, 0x04, 0x61, 0xB3, 0xAA, 0x41, 0x69, 0x0A,\n0xC3, 0x11, 0x0C, 0xFF, 0x24, 0xC4, 0x2F, 0x80, 0xD8, 0x68, 0x14, 0x05, 0xA2, 0xA1, 0x51, 0x7C,\n0xEC, 0x25, 0x9B, 0xBD, 0x50, 0xC4, 0x56, 0xC6, 0x8E, 0x33, 0xA4, 0xB4, 0x20, 0x52, 0x24, 0xE2,\n0x8A, 0x8A, 0x08, 0x87, 0x53, 0x21, 0x42, 0x31, 0xD1, 0xC5, 0x06, 0x21, 0x9E, 0x31, 0xB6, 0x22,\n0x1E, 0x34, 0x62, 0x11, 0xA7, 0x40, 0xE4, 0x7A, 0x34, 0x5A, 0xF1, 0xEB, 0x78, 0x30, 0x74, 0xCF,\n0x08, 0xF5, 0x40, 0x54, 0xBF, 0x9C, 0x6D, 0xC4, 0x03, 0x11, 0x86, 0x40, 0x84, 0x21, 0x1E, 0x5A,\n0x03, 0x43, 0x8D, 0x78, 0xA3, 0x11, 0xBF, 0x00, 0x62, 0x9F, 0x1E, 0x83, 0x63, 0x58, 0xB2, 0xB9,\n0x12, 0xF1, 0x97, 0x7D, 0xBB, 0xE2, 0x4D, 0x13, 0x91, 0x08, 0x05, 0x22, 0x14, 0x09, 0x71, 0x04,\n0x44, 0x30, 0x36, 0x1A, 0x46, 0x5F, 0x97, 0x8C, 0xE1, 0xCC, 0x67, 0x45, 0x4A, 0x87, 0xA2, 0xAF,\n0x0D, 0xD7, 0x76, 0x04, 0xC0, 0x19, 0x27, 0xCA, 0x4F, 0x93, 0xA5, 0xCB, 0x01, 0x22, 0xCF, 0xE0,\n0x0B, 0x45, 0x48, 0x09, 0x43, 0xA7, 0x1B, 0x11, 0x4B, 0x35, 0x18, 0x88, 0x30, 0x1C, 0x55, 0x86,\n0x83, 0xFE, 0x88, 0x3A, 0x6D, 0x88, 0xFD, 0x97, 0x6C, 0xF6, 0x42, 0x91, 0x11, 0x51, 0x9E, 0x32,\n0x62, 0x7B, 0x69, 0x73, 0x5E, 0xA1, 0x56, 0x88, 0xAB, 0x15, 0x18, 0x9B, 0x8D, 0xBF, 0xBF, 0x16,\n0x88, 0x9C, 0x94, 0xB2, 0x5C, 0xA6, 0x48, 0xA4, 0x1C, 0xCA, 0xC4, 0x31, 0xF1, 0x71, 0xAA, 0x2F,\n0x8F, 0xF4, 0x27, 0x01, 0x48, 0x01, 0xE2, 0x2B, 0xDF, 0x94, 0x19, 0xA6, 0xCB, 0x96, 0x0B, 0x62,\n0xF7, 0xC1, 0x7D, 0x42, 0x94, 0x86, 0x97, 0x22, 0x7E, 0xF0, 0x0F, 0x10, 0xFB, 0x77, 0xFB, 0x3F,\n0x7C, 0x0B, 0x44, 0x95, 0xC6, 0x48, 0x1C, 0x41, 0x11, 0x1D, 0xBF, 0x50, 0x5C, 0x08, 0x44, 0x56,\n0xAC, 0xEA, 0x1B, 0x30, 0x02, 0x71, 0xEC, 0x73, 0xE0, 0xE8, 0x07, 0x77, 0x6A, 0x06, 0xDC, 0x26,\n0x50, 0xD4, 0x4C, 0x73, 0x3B, 0xCA, 0x9A, 0x88, 0xBE, 0x3F, 0x1E, 0x9C, 0xE6, 0x53, 0x0D, 0x88,\n0xB9, 0x94, 0x72, 0xF8, 0x86, 0xE3, 0x86, 0x0E, 0xF6, 0x81, 0x85, 0x21, 0x10, 0xD9, 0x10, 0x88,\n0x35, 0xC3, 0x8B, 0x11, 0x2F, 0x6E, 0x14, 0x1F, 0xBB, 0xDB, 0xAF, 0x2B, 0x6A, 0xC4, 0xC6, 0x4D,\n0x19, 0x14, 0x20, 0x0A, 0xC5, 0x3A, 0x62, 0xA0, 0x11, 0xA1, 0x88, 0x56, 0xA3, 0x42, 0x8C, 0x5C,\n0x15, 0x38, 0x3A, 0xDE, 0x50, 0x93, 0x0D, 0xD3, 0xD3, 0xE4, 0x4A, 0x5F, 0x49, 0x49, 0xC7, 0x67,\n0x86, 0xFE, 0x29, 0xD1, 0x2D, 0x7F, 0x76, 0xEB, 0x43, 0x10, 0x88, 0x4B, 0x6D, 0xB8, 0x98, 0xB5,\n0x57, 0x35, 0xDD, 0xB7, 0x94, 0x56, 0x88, 0x30, 0x54, 0x79, 0x06, 0xC4, 0xFE, 0xDD, 0xBE, 0x44,\n0x44, 0xB7, 0xFF, 0x8F, 0x1B, 0x45, 0x0E, 0x10, 0x31, 0x12, 0xEB, 0x8A, 0x07, 0x76, 0x84, 0x22,\n0xE5, 0x0C, 0x71, 0x23, 0x10, 0x03, 0x89, 0x78, 0xCB, 0xEF, 0x6E, 0xE4, 0xEA, 0xF8, 0xEE, 0xEA,\n0x76, 0xC7, 0x1E, 0x1C, 0x57, 0x7B, 0x45, 0x83, 0xD3, 0x40, 0x4C, 0x67, 0x55, 0xFC, 0x2A, 0x69,\n0xA8, 0x9D, 0x12, 0x06, 0x04, 0x21, 0x65, 0xCE, 0x9F, 0x53, 0xAB, 0xA6, 0xB5, 0x7D, 0xE0, 0xCE,\n0xCA, 0xF4, 0x20, 0x5A, 0x44, 0x18, 0x0A, 0xC4, 0x7E, 0xDD, 0x3E, 0x47, 0x20, 0xF6, 0x6B, 0x14,\n0x5F, 0x39, 0x53, 0x3C, 0xAB, 0x6C, 0xC4, 0x63, 0xC2, 0xCE, 0x8E, 0x6A, 0xC8, 0x85, 0x1B, 0x52,\n0x0C, 0x80, 0xD8, 0x3A, 0x14, 0x13, 0x8A, 0x3F, 0x54, 0xBD, 0xA4, 0xFA, 0x23, 0x75, 0xDD, 0x30,\n0x08, 0x16, 0xF7, 0x23, 0xBA, 0x76, 0x29, 0x2A, 0x24, 0x49, 0xB9, 0x5C, 0x5D, 0x9E, 0x06, 0x62,\n0x9C, 0x09, 0x43, 0xC2, 0x2F, 0xF6, 0xFC, 0x4A, 0x0B, 0x17, 0x88, 0xB9, 0x8E, 0xA3, 0x81, 0xD7,\n0x2E, 0x57, 0x35, 0x20, 0x6C, 0x59, 0xF7, 0x06, 0xE2, 0xB0, 0xB1, 0x56, 0x53, 0x19, 0x02, 0x51,\n0x85, 0x10, 0x2F, 0xDB, 0x16, 0x7E, 0xD1, 0x84, 0xD8, 0xBF, 0x51, 0xD4, 0x3D, 0x06, 0xF6, 0xE1,\n0x4F, 0x95, 0x0D, 0x4E, 0xDA, 0x60, 0x2F, 0x03, 0x8A, 0xAD, 0x88, 0xC4, 0x18, 0xDC, 0x00, 0x51,\n0x33, 0xE2, 0x81, 0xA8, 0x65, 0x18, 0xB1, 0x3D, 0x2C, 0x42, 0x65, 0x0C, 0xB7, 0x7E, 0x99, 0x77,\n0x1A, 0x88, 0xEA, 0x63, 0x04, 0x88, 0xF1, 0x9A, 0xBF, 0x6D, 0xE3, 0x87, 0x75, 0x41, 0xF5, 0xD3,\n0x16, 0xFA, 0x15, 0x67, 0x39, 0xEE, 0x44, 0x6C, 0x5D, 0x32, 0x6D, 0x2C, 0x7C, 0xCB, 0xC9, 0x74,\n0xC0, 0xF9, 0x43, 0x23, 0xF6, 0xEF, 0xF6, 0x75, 0x1E, 0xB7, 0x51, 0xFC, 0xE5, 0x15, 0x28, 0x2A,\n0x42, 0x20, 0xB2, 0xA2, 0x46, 0xD4, 0x15, 0x2A, 0xE5, 0xEC, 0xB2, 0x08, 0x44, 0xCA, 0x09, 0x71,\n0xB5, 0x5E, 0x09, 0xC6, 0xFC, 0x14, 0x20, 0x02, 0x4F, 0xFF, 0xC9, 0x49, 0xC6, 0x3C, 0xDE, 0xD2,\n0x29, 0x7F, 0x3C, 0x8B, 0x66, 0xD2, 0x90, 0x32, 0x8B, 0xF4, 0x77, 0x64, 0x8C, 0xA8, 0x05, 0x29,\n0xE1, 0x27, 0xD5, 0x40, 0x5C, 0xAD, 0x0C, 0x88, 0xAD, 0x0B, 0xDF, 0x15, 0xE2, 0xE0, 0x84, 0xF8,\n0x83, 0x01, 0xF1, 0xE2, 0x6E, 0xFF, 0x49, 0x7A, 0x8C, 0x6F, 0x71, 0x26, 0xA6, 0xDE, 0x63, 0x68,\n0x45, 0x3D, 0x12, 0xCB, 0xBF, 0x4D, 0x89, 0x51, 0xD6, 0x36, 0x5A, 0x71, 0xC5, 0x15, 0xE1, 0x92,\n0xDE, 0xB2, 0x06, 0x23, 0x06, 0xA3, 0x7B, 0x0F, 0xBD, 0x96, 0x1C, 0xD2, 0x22, 0xE3, 0x82, 0x27,\n0xF5, 0x4A, 0xDF, 0x83, 0x9D, 0xC1, 0xAE, 0x1E, 0x3D, 0x14, 0xB7, 0x19, 0x0C, 0x97, 0x65, 0x72,\n0x4F, 0xFF, 0xDF, 0xE1, 0x2F, 0x51, 0x97, 0x36, 0x26, 0xD3, 0xEE, 0x7B, 0x2F, 0xD0, 0x5E, 0x28,\n0x42, 0x20, 0x7E, 0x0D, 0x44, 0xE3, 0x3D, 0x8A, 0xFD, 0x1A, 0x45, 0xD9, 0x63, 0x98, 0xCB, 0xD3,\n0x7D, 0xA5, 0x58, 0xEB, 0x31, 0xEA, 0x77, 0xF0, 0x6B, 0xC4, 0xDA, 0xBD, 0x6E, 0xCD, 0x6E, 0x71,\n0x55, 0x5E, 0x89, 0xE6, 0x09, 0x1F, 0x62, 0xD4, 0x69, 0x5E, 0x18, 0xDD, 0xA0, 0x5B, 0x70, 0xB7,\n0xB2, 0x8F, 0xE3, 0x54, 0x5B, 0x65, 0x63, 0x5A, 0x00, 0xDA, 0xA7, 0x11, 0xEC, 0xEA, 0x09, 0x67,\n0xEA, 0x2B, 0x54, 0x9C, 0x59, 0x1D, 0xD1, 0x71, 0x4E, 0x88, 0xEB, 0x30, 0x40, 0x59, 0x2A, 0xAA,\n0x1A, 0xD1, 0x21, 0x4E, 0x1B, 0x86, 0x9B, 0x8A, 0x70, 0xBB, 0xFD, 0x9D, 0x10, 0x9F, 0xA6, 0xDB,\n0x47, 0x8F, 0xD1, 0x67, 0x33, 0xEA, 0x15, 0xAD, 0x38, 0xA1, 0x6C, 0x19, 0x11, 0x8A, 0x58, 0xB8,\n0x21, 0xC1, 0xFA, 0x13, 0x8A, 0x48, 0x11, 0x8C, 0x5E, 0x1E, 0x4E, 0x47, 0xDE, 0x2C, 0xF0, 0x3C,\n0x30, 0x02, 0x51, 0x2B, 0x86, 0xE9, 0x27, 0xAD, 0x80, 0x03, 0x2F, 0xB4, 0x8F, 0x76, 0x9C, 0x56,\n0xE3, 0xCD, 0x8F, 0xEC, 0xE5, 0xC1, 0x8B, 0xC6, 0xC2, 0x10, 0xCD, 0x7D, 0x5A, 0x1C, 0xBE, 0xD9,\n0xE6, 0x63, 0x17, 0x57, 0x43, 0x3D, 0x77, 0x87, 0xD5, 0x40, 0xEC, 0x22, 0x44, 0x73, 0x21, 0x0F,\n0xB8, 0x31, 0x21, 0x06, 0x22, 0xBD, 0x21, 0x8F, 0x89, 0xC8, 0x31, 0xF5, 0x18, 0xD7, 0x96, 0xA7,\n0x14, 0x8C, 0x44, 0x28, 0xD6, 0x9F, 0x4E, 0xA4, 0x87, 0xA2, 0x56, 0x04, 0x23, 0x14, 0xD7, 0xF9,\n0x2C, 0x75, 0x83, 0x35, 0xCE, 0x85, 0x53, 0x18, 0x11, 0x63, 0x31, 0xD3, 0x6B, 0x29, 0xC8, 0xCE,\n0x5B, 0xA6, 0xD6, 0xD1, 0x2A, 0xE2, 0x74, 0x56, 0x8A, 0x41, 0xD1, 0xB2, 0xE2, 0x4C, 0xD8, 0x21,\n0x6E, 0x6A, 0x1F, 0xAD, 0xD8, 0x3F, 0x19, 0xD2, 0x20, 0x64, 0x44, 0x3F, 0x20, 0xC3, 0x65, 0x18,\n0x00, 0x51, 0xF6, 0x87, 0x40, 0x84, 0x21, 0x23, 0x6A, 0x43, 0x8D, 0xB8, 0xA5, 0xFC, 0xD2, 0x0B,\n0xD1, 0xDC, 0x63, 0xF4, 0x2F, 0x4F, 0xA1, 0xA8, 0x10, 0x85, 0x62, 0xED, 0x69, 0x1A, 0x58, 0x45,\n0x15, 0x8A, 0x2A, 0x9E, 0xAA, 0x4C, 0x79, 0x1D, 0x15, 0x8A, 0xCD, 0x85, 0xD4, 0x30, 0x8A, 0xD7,\n0x5C, 0xB3, 0x8C, 0xA6, 0x53, 0xC7, 0x49, 0x6D, 0xDA, 0xA9, 0x8F, 0xA3, 0xCC, 0x97, 0x43, 0x6E,\n0x96, 0x55, 0xAA, 0x61, 0x4B, 0xA8, 0xEB, 0x54, 0x5F, 0x80, 0x89, 0x54, 0x23, 0x06, 0x41, 0x9E,\n0x46, 0xAB, 0x55, 0xEA, 0x3B, 0x6C, 0x28, 0x10, 0x35, 0x21, 0x19, 0x02, 0xB1, 0xDE, 0x22, 0xA2,\n0xAA, 0xD9, 0x02, 0xF1, 0xEA, 0x75, 0xB7, 0xEB, 0x1B, 0xC5, 0x1E, 0xE5, 0x29, 0xE5, 0xAC, 0x3C,\n0xA5, 0x80, 0x10, 0x88, 0x68, 0x34, 0x84, 0x22, 0xD6, 0xDF, 0x1A, 0x88, 0xAC, 0x08, 0x47, 0xA5,\n0x98, 0x8D, 0x6D, 0x8B, 0x9F, 0xBA, 0x67, 0x97, 0xFB, 0xF4, 0xAA, 0xFA, 0x6C, 0x8C, 0x30, 0x91,\n0x06, 0x1E, 0x82, 0xAA, 0x54, 0x1B, 0xF2, 0xCF, 0xCA, 0xDD, 0x2C, 0x0B, 0x9D, 0x95, 0x40, 0xC4,\n0x40, 0x84, 0x61, 0xDB, 0x6E, 0x3E, 0xDA, 0xFC, 0x2D, 0xE7, 0xE7, 0x2B, 0x10, 0xFF, 0x51, 0xB7,\n0x6F, 0x2E, 0x4F, 0x49, 0xF1, 0xD3, 0xCE, 0x03, 0x6F, 0x30, 0xD4, 0x37, 0x32, 0xA1, 0xB2, 0x01,\n0xE2, 0x49, 0x71, 0x87, 0x9E, 0xBF, 0x0B, 0xB1, 0x5B, 0x91, 0x93, 0x84, 0x7C, 0x1E, 0xBC, 0xAC,\n0x37, 0x2B, 0x93, 0xF0, 0xB2, 0x48, 0xC0, 0xDA, 0x40, 0x0C, 0xB0, 0x54, 0x14, 0x30, 0x21, 0x0C,\n0xE5, 0x8D, 0x17, 0xDD, 0xC7, 0x6A, 0x60, 0xC8, 0xA1, 0x36, 0xD1, 0x80, 0x78, 0xE9, 0xBA, 0xDB,\n0xD3, 0x94, 0xA7, 0x7F, 0x62, 0x36, 0xD5, 0x8A, 0xA8, 0x6C, 0xD0, 0x2B, 0x6A, 0x46, 0xDC, 0xEF,\n0x06, 0x44, 0xB9, 0xA1, 0x81, 0xCB, 0x62, 0x19, 0x28, 0xA2, 0xDD, 0xE0, 0x24, 0x8D, 0xFC, 0x13,\n0x43, 0x94, 0x34, 0x40, 0x5C, 0xAD, 0x24, 0xA1, 0xEC, 0xF2, 0x89, 0xB0, 0xFD, 0x7C, 0x5B, 0x49,\n0x08, 0x43, 0x5E, 0xFF, 0x36, 0xAC, 0xBB, 0xF5, 0x47, 0x34, 0xAC, 0x9E, 0x9A, 0x2A, 0x1B, 0x2C,\n0x9F, 0xEA, 0x46, 0x91, 0x22, 0x86, 0x22, 0x8E, 0x30, 0x42, 0x91, 0x11, 0x0D, 0x8C, 0x40, 0x44,\n0x8D, 0xD3, 0x05, 0x69, 0x24, 0x84, 0x21, 0x2A, 0x1A, 0x69, 0xA8, 0x11, 0x45, 0x5D, 0xCA, 0x88,\n0x30, 0xC4, 0x64, 0x4A, 0x84, 0x15, 0x22, 0x08, 0x29, 0xCF, 0x80, 0xD8, 0xFB, 0x9E, 0x9A, 0xAB,\n0x7B, 0x8C, 0x8B, 0x2B, 0x9B, 0x3D, 0x07, 0x4D, 0x46, 0x4B, 0x7D, 0x8A, 0xB5, 0x70, 0x20, 0x76,\n0x2B, 0x82, 0xB1, 0x43, 0x11, 0x90, 0x89, 0x0C, 0x89, 0x19, 0x83, 0xF6, 0x5E, 0x08, 0x62, 0x95,\n0x86, 0x53, 0x23, 0xD4, 0x88, 0xC2, 0xF0, 0x0C, 0x11, 0x86, 0x06, 0xC4, 0x2B, 0x16, 0x4F, 0x9F,\n0xB8, 0xB2, 0xA9, 0x2F, 0xDA, 0xD4, 0x14, 0x37, 0x1C, 0x8D, 0x48, 0x81, 0xE2, 0x1C, 0x8A, 0x60,\n0x04, 0x62, 0xF3, 0x96, 0x7E, 0xA9, 0x88, 0xB1, 0x78, 0x7D, 0x72, 0x0E, 0x0C, 0x21, 0xC8, 0x86,\n0x0D, 0x44, 0x10, 0x8A, 0x23, 0x8A, 0x62, 0x20, 0x62, 0x2E, 0xE5, 0xBC, 0xF1, 0xC7, 0x0F, 0xD7,\n0x21, 0xBE, 0xF9, 0x28, 0x88, 0x72, 0xE1, 0xCD, 0x5C, 0xD9, 0xE8, 0xFA, 0xB4, 0xAE, 0xB8, 0x11,\n0x8A, 0xD8, 0xE8, 0x6F, 0x67, 0x3C, 0x21, 0x42, 0x51, 0x54, 0x37, 0x9C, 0x6B, 0x15, 0x61, 0x87,\n0x90, 0xA0, 0x0E, 0x04, 0x85, 0xE1, 0xAD, 0x8A, 0x20, 0x14, 0xE7, 0x4C, 0xC5, 0x05, 0x11, 0x77,\n0xD4, 0x71, 0xAF, 0x8F, 0x6D, 0x0C, 0x8D, 0xA8, 0x72, 0x11, 0xA2, 0xB9, 0xDB, 0xEF, 0x5F, 0xD9,\n0x3C, 0x13, 0xCB, 0xA7, 0x50, 0x3C, 0x21, 0x8E, 0x80, 0x88, 0x33, 0x37, 0x52, 0xB1, 0x6B, 0x28,\n0x76, 0x39, 0x9E, 0x83, 0x98, 0xF8, 0x44, 0x1C, 0x0A, 0x0C, 0x81, 0xB8, 0xE6, 0x80, 0x50, 0x45,\n0x1A, 0x76, 0x57, 0xA6, 0x40, 0x24, 0x43, 0x89, 0xC8, 0xE5, 0xA9, 0xAC, 0x4E, 0x25, 0xA2, 0x79,\n0xC9, 0xE6, 0xF1, 0x2A, 0x1B, 0x18, 0x42, 0xB1, 0xB6, 0x23, 0x75, 0x56, 0xA1, 0x76, 0xDD, 0x2B,\n0x05, 0x45, 0x30, 0xE2, 0xBA, 0x08, 0x47, 0x8A, 0x1C, 0x8E, 0x88, 0x89, 0x10, 0x4D, 0x21, 0xFC,\n0x38, 0x0C, 0x28, 0x05, 0xC5, 0x40, 0x9C, 0xD7, 0x0C, 0x71, 0x73, 0x7E, 0x7D, 0x23, 0x58, 0x1B,\n0x52, 0xCA, 0x36, 0x11, 0x2B, 0xE0, 0xAF, 0xAB, 0x15, 0xF0, 0x1F, 0x29, 0xDF, 0x7D, 0x67, 0xD8,\n0xC6, 0x78, 0x34, 0x44, 0xF3, 0xB1, 0x45, 0x54, 0xA7, 0x2D, 0x8A, 0xD8, 0x58, 0x04, 0x22, 0x14,\n0x51, 0xA4, 0x9E, 0x5F, 0x16, 0x29, 0x40, 0x04, 0xA3, 0x70, 0xC4, 0xE5, 0xD1, 0x18, 0xF8, 0x49,\n0x43, 0xCE, 0x35, 0x86, 0xB8, 0x20, 0x32, 0x21, 0xDA, 0x7C, 0x69, 0x38, 0x99, 0x70, 0x5D, 0xC3,\n0x88, 0x64, 0x48, 0x80, 0xDF, 0xFF, 0xF4, 0xF3, 0xEF, 0xCF, 0x7E, 0xFC, 0x4E, 0x22, 0x9A, 0xB7,\n0x31, 0x64, 0x8F, 0xD1, 0xBB, 0xB2, 0xF9, 0xE1, 0x67, 0x34, 0xFB, 0x65, 0xB0, 0x1D, 0x45, 0x7F,\n0x41, 0x51, 0x74, 0x1A, 0x50, 0xAC, 0x21, 0x82, 0x11, 0x8A, 0xD2, 0x11, 0x8A, 0x48, 0x1F, 0xC3,\n0xB6, 0x99, 0x14, 0x84, 0xAD, 0x88, 0x38, 0xDD, 0x26, 0x97, 0x4C, 0x07, 0x67, 0x86, 0x7F, 0x9E,\n0x10, 0xBF, 0xFE, 0xFA, 0xCB, 0xCF, 0x3F, 0xFF, 0x5C, 0x09, 0xFE, 0xF4, 0xEB, 0xEF, 0xD4, 0x99,\n0xFD, 0xF1, 0xFD, 0x65, 0x88, 0xC6, 0x1E, 0xA3, 0x0B, 0xF1, 0x8A, 0xFB, 0xDB, 0xF6, 0x75, 0xC5,\n0xF3, 0x71, 0x48, 0x88, 0x52, 0x71, 0x08, 0x45, 0x31, 0x14, 0x25, 0xA3, 0x74, 0x14, 0x8A, 0x17,\n0x32, 0x02, 0x0F, 0x81, 0xA0, 0x1C, 0x88, 0x10, 0x04, 0x61, 0x63, 0xEB, 0x42, 0x9C, 0xF7, 0xAE,\n0x13, 0x92, 0xE1, 0x44, 0x75, 0x18, 0x4C, 0xA8, 0x04, 0xBF, 0xFA, 0xEA, 0xAB, 0x5F, 0x7F, 0xF9,\n0x43, 0x95, 0x11, 0x94, 0x9F, 0xFB, 0x20, 0xF6, 0xA9, 0x6C, 0xB0, 0x1B, 0x85, 0xC3, 0x52, 0x58,\n0x78, 0x93, 0xB3, 0xA9, 0x50, 0x14, 0x88, 0xE8, 0xFA, 0xA1, 0x28, 0x3A, 0x46, 0x30, 0x76, 0xF4,\n0x8D, 0x52, 0x72, 0xD9, 0x88, 0xD3, 0x16, 0x39, 0x0A, 0xE5, 0x2E, 0x3E, 0x08, 0x51, 0xD4, 0xC0,\n0x10, 0x88, 0x1D, 0x86, 0x93, 0xBF, 0x68, 0xBB, 0x9F, 0x1F, 0x96, 0x82, 0x20, 0x80, 0xE3, 0x37,\n0x89, 0xF8, 0x71, 0x71, 0x12, 0x27, 0x47, 0x12, 0x24, 0xC4, 0x41, 0x84, 0x10, 0xE1, 0xE6, 0xC0,\n0xD5, 0xA5, 0x44, 0xC4, 0xA1, 0xE8, 0x41, 0xFD, 0xFD, 0xDE, 0x76, 0x5E, 0xFB, 0xED, 0xBE, 0xEF,\n0x3E, 0xD3, 0xB7, 0xAD, 0x41, 0x9B, 0x10, 0x3F, 0xE2, 0x63, 0x66, 0x67, 0x76, 0xF7, 0xD5, 0x30,\n0x61, 0x7C, 0x1A, 0x08, 0xBF, 0x7E, 0xFD, 0xF8, 0x71, 0xB5, 0xDE, 0x04, 0x60, 0x89, 0xED, 0xF7,\n0xCF, 0x3A, 0x15, 0x4E, 0x76, 0xC0, 0x13, 0xC4, 0xFE, 0x4F, 0x78, 0x8B, 0x71, 0x9F, 0x19, 0x63,\n0x5E, 0x91, 0xBD, 0x1B, 0x5F, 0x28, 0x36, 0x63, 0x53, 0xD1, 0x2B, 0xA3, 0x29, 0xDB, 0x61, 0xBE,\n0xF6, 0x6A, 0x48, 0x68, 0x97, 0x06, 0x44, 0x06, 0xC4, 0xC4, 0xB0, 0xC4, 0x66, 0xF5, 0xB5, 0xC4,\n0x6A, 0xB5, 0xF9, 0xFD, 0xE7, 0x1E, 0xF1, 0x76, 0xF3, 0xE5, 0x33, 0x4F, 0x63, 0xBC, 0xB9, 0x28,\n0x62, 0xFF, 0x3D, 0x9B, 0xC8, 0x44, 0x14, 0xAF, 0xED, 0x86, 0x8C, 0x03, 0xA2, 0x93, 0x91, 0x54,\n0xAC, 0x18, 0xDB, 0xB9, 0xE8, 0x8A, 0x8A, 0x64, 0x8E, 0x69, 0x3C, 0x04, 0x4B, 0x00, 0x88, 0x20,\n0x89, 0x08, 0x62, 0xD5, 0x97, 0x82, 0xA8, 0x09, 0x31, 0x08, 0x23, 0x7E, 0xAC, 0x86, 0xF8, 0xB1,\n0x19, 0x6E, 0x77, 0x1E, 0x13, 0xBE, 0x7D, 0xFB, 0x1D, 0xC4, 0xB9, 0x03, 0xC5, 0xA5, 0xD3, 0x7E,\n0xDE, 0xD9, 0x8C, 0xE3, 0xBE, 0x17, 0x45, 0xDA, 0xD3, 0x4A, 0x71, 0x48, 0xC3, 0x32, 0x64, 0x58,\n0x11, 0x46, 0x10, 0x87, 0xB0, 0x62, 0xBB, 0xA0, 0xE2, 0x28, 0xC9, 0x3C, 0xE4, 0x87, 0xA1, 0x08,\n0x95, 0x88, 0x77, 0xE6, 0x0C, 0xD5, 0x98, 0x86, 0x61, 0xC4, 0x7A, 0xBD, 0xF9, 0x7D, 0xEB, 0xDD,\n0xBB, 0xA9, 0xE1, 0xD0, 0xD6, 0xDC, 0xBE, 0x2C, 0x22, 0x9D, 0x8D, 0x4F, 0xA3, 0xF2, 0x45, 0x71,\n0xA2, 0x48, 0x41, 0x2D, 0x8A, 0x20, 0x4A, 0x91, 0x7B, 0xE1, 0x30, 0x82, 0xA8, 0xF6, 0x06, 0xC5,\n0x6E, 0xC9, 0x89, 0x1E, 0x84, 0x46, 0x44, 0x10, 0xC4, 0x7A, 0x9F, 0x86, 0x87, 0x67, 0x34, 0x5C,\n0x1C, 0x0C, 0x87, 0xBF, 0x94, 0xED, 0xF0, 0x12, 0x84, 0x18, 0x0E, 0xF1, 0xF3, 0x7C, 0xC4, 0xBC,\n0xB3, 0xC9, 0xC7, 0x7D, 0x2F, 0x8A, 0x9A, 0x14, 0xAF, 0x81, 0x18, 0x51, 0x10, 0x61, 0xE4, 0x19,\n0x62, 0x2B, 0x06, 0x62, 0x33, 0x1D, 0xC5, 0x68, 0x47, 0xF3, 0x11, 0xF2, 0x9B, 0x37, 0xBC, 0x8F,\n0x61, 0xFB, 0xC2, 0x3E, 0x86, 0x35, 0x62, 0x10, 0x06, 0x9F, 0x0D, 0x77, 0x89, 0xF8, 0xED, 0xE8,\n0x09, 0xC5, 0x73, 0x11, 0xCF, 0x1F, 0xF7, 0xD7, 0xF7, 0x6A, 0xC5, 0xE9, 0x47, 0x13, 0x5D, 0xA1,\n0x9E, 0x8E, 0xC9, 0xC8, 0x8D, 0x8D, 0x21, 0x50, 0x64, 0x62, 0x94, 0xA2, 0x1C, 0x51, 0x5C, 0x1A,\n0xF2, 0x6B, 0x16, 0x53, 0x04, 0x49, 0x44, 0x46, 0x0B, 0x66, 0x8B, 0x12, 0x7B, 0x43, 0x10, 0x33,\n0xC3, 0x92, 0x88, 0xBA, 0x78, 0x7A, 0x21, 0xC4, 0xCE, 0x45, 0xF1, 0x1D, 0xED, 0x69, 0xF3, 0x03,\n0xA6, 0x62, 0x13, 0x95, 0x8D, 0x54, 0xDA, 0x9B, 0xF8, 0x1B, 0x41, 0x51, 0x13, 0x23, 0x88, 0x5E,\n0x1E, 0xBB, 0x18, 0x9D, 0x83, 0x16, 0xC4, 0x10, 0x41, 0xCF, 0x87, 0x07, 0x44, 0x17, 0x53, 0x08,\n0xE7, 0x0C, 0xB7, 0xDF, 0xBF, 0x5D, 0x1A, 0xD1, 0x9D, 0xCD, 0xA2, 0x45, 0xF1, 0x77, 0x75, 0x97,\n0x1F, 0xC5, 0x2B, 0xE4, 0xE2, 0xB1, 0x22, 0x88, 0x9C, 0x11, 0xAB, 0xBB, 0x71, 0x7F, 0x63, 0x48,\n0x65, 0x63, 0x6E, 0xD7, 0x30, 0x14, 0x20, 0x67, 0xF8, 0x1E, 0x0F, 0x9D, 0x88, 0x34, 0xA6, 0x2C,\n0x88, 0xA9, 0xE1, 0xDB, 0xF5, 0x60, 0x78, 0x41, 0x44, 0x3A, 0x1B, 0x2D, 0x8A, 0x20, 0x26, 0x07,\n0xC3, 0x07, 0x43, 0x76, 0x6C, 0x6A, 0xC4, 0x5A, 0xF1, 0xA8, 0x9E, 0x52, 0x52, 0x41, 0x64, 0x43,\n0x3C, 0x53, 0x84, 0x31, 0x25, 0xCC, 0x0D, 0x11, 0xAC, 0x0D, 0xD9, 0xF2, 0x66, 0x41, 0xD4, 0xA7,\n0x2B, 0xD4, 0x1B, 0xA6, 0x2E, 0xA5, 0x18, 0xEE, 0x13, 0xF1, 0xE9, 0xEC, 0x79, 0xE2, 0x62, 0xC4,\n0xFE, 0x45, 0xD1, 0x0F, 0x0C, 0xB3, 0x24, 0x06, 0xE0, 0xB1, 0x62, 0xDD, 0xDD, 0x70, 0x19, 0xB5,\n0x84, 0x52, 0xB1, 0xC4, 0x02, 0x45, 0xE2, 0x64, 0x42, 0xC2, 0xED, 0x8C, 0x10, 0x21, 0x2C, 0x86,\n0x34, 0xA6, 0x7C, 0xCC, 0x89, 0x86, 0x7C, 0x08, 0x6D, 0x58, 0xE2, 0xC7, 0xB7, 0xB3, 0x11, 0xBB,\n0x16, 0xC5, 0x50, 0x0C, 0x44, 0x9F, 0x29, 0xA2, 0x58, 0xDD, 0xD1, 0x08, 0x44, 0x06, 0x0D, 0x1A,\n0x1C, 0x14, 0x63, 0xD4, 0x30, 0x23, 0xCF, 0x6A, 0x44, 0x48, 0xD1, 0x90, 0x26, 0x6D, 0xD8, 0x89,\n0xD0, 0x86, 0x2C, 0x88, 0x34, 0x34, 0x5C, 0x8A, 0xF2, 0xAE, 0x77, 0x6A, 0x08, 0x21, 0x89, 0x78,\n0x26, 0x62, 0xF7, 0xA2, 0x98, 0x9F, 0x29, 0x5A, 0xB1, 0x00, 0xEE, 0xF3, 0x11, 0xC4, 0x2A, 0x17,\n0x35, 0xF6, 0x4B, 0x31, 0x73, 0x34, 0xA5, 0xC3, 0x7C, 0x84, 0x2A, 0x29, 0x84, 0x18, 0x72, 0x8E,\n0x5F, 0xAF, 0x87, 0x42, 0x9C, 0x4F, 0x43, 0x12, 0xF1, 0xB2, 0x88, 0x5E, 0x14, 0x3D, 0x29, 0xA6,\n0x3B, 0x6F, 0x7B, 0x43, 0xEE, 0xBC, 0xC1, 0xF8, 0xEC, 0xA0, 0x78, 0x85, 0xAD, 0x9B, 0xF2, 0xAD,\n0x4E, 0x46, 0x18, 0x51, 0x0C, 0x44, 0x39, 0x1A, 0x32, 0xD7, 0x94, 0x9E, 0x04, 0x49, 0x44, 0x75,\n0xA5, 0x2E, 0xA5, 0x85, 0x90, 0x44, 0xAC, 0x11, 0xFF, 0xB1, 0x1C, 0x92, 0x88, 0xE9, 0xC9, 0x7E,\n0x07, 0x62, 0xD7, 0xFF, 0x10, 0x4D, 0x3D, 0x8D, 0x3F, 0x37, 0x43, 0x06, 0x8A, 0x91, 0x8B, 0x94,\n0x55, 0x4A, 0xEA, 0x10, 0x30, 0x32, 0xF7, 0xA3, 0xA8, 0x1D, 0x71, 0x20, 0x45, 0x99, 0xC5, 0x52,\n0xC3, 0x7A, 0xBF, 0x1B, 0x44, 0x0C, 0xE7, 0x12, 0x31, 0x69, 0x69, 0x4A, 0x6C, 0xBE, 0x7D, 0xBB,\n0x9B, 0x5F, 0x1E, 0xF6, 0x51, 0x54, 0xFB, 0xE3, 0xDC, 0xF3, 0x45, 0x31, 0xBF, 0x68, 0xC3, 0x90,\n0xE1, 0xED, 0x53, 0x4A, 0xEA, 0xA8, 0x38, 0xDD, 0x82, 0xAB, 0x67, 0x0D, 0x18, 0xDD, 0xA5, 0x7A,\n0xFC, 0x77, 0xF4, 0x1B, 0x42, 0xE8, 0xBD, 0x52, 0x27, 0x62, 0x18, 0x4E, 0x8E, 0x2E, 0x98, 0x2E,\n0xE6, 0x09, 0x49, 0xC4, 0x16, 0xE2, 0xCB, 0x0B, 0x20, 0x2E, 0xD9, 0x3E, 0xF5, 0x90, 0x81, 0x61,\n0xF8, 0x49, 0x31, 0x5E, 0x07, 0xC4, 0x60, 0x94, 0x22, 0x73, 0xBF, 0x9A, 0x54, 0x39, 0x4A, 0xD1,\n0x91, 0xF2, 0x61, 0xE8, 0xA6, 0x14, 0x41, 0x0C, 0xD9, 0xF3, 0xA6, 0x98, 0x46, 0x26, 0x86, 0x21,\n0x3B, 0x35, 0x89, 0x61, 0x24, 0xE2, 0x85, 0x10, 0xDD, 0xD9, 0xB0, 0x28, 0x2E, 0x1C, 0x32, 0xDE,\n0xAF, 0x0E, 0x88, 0x64, 0x21, 0x88, 0x84, 0xF7, 0xC3, 0x5F, 0xA0, 0x18, 0x21, 0x45, 0x39, 0xA2,\n0x78, 0x7E, 0xA8, 0x8E, 0x0A, 0xB1, 0xD5, 0x97, 0x42, 0xD8, 0x68, 0x6B, 0x6E, 0x05, 0xA1, 0x0D,\n0x49, 0x44, 0x1E, 0xF7, 0xF6, 0xFE, 0xB7, 0x2F, 0x0F, 0xB7, 0x11, 0x3B, 0x17, 0xC5, 0x7F, 0xD5,\n0xD3, 0x2D, 0x0B, 0x22, 0x8C, 0x57, 0x40, 0x24, 0x19, 0x87, 0x54, 0x84, 0x91, 0x54, 0x54, 0x2E,\n0xCE, 0x3A, 0x92, 0x8C, 0xE7, 0xF3, 0x61, 0xE8, 0x8D, 0x52, 0x2D, 0x87, 0x21, 0xC8, 0x6C, 0x91,\n0xB6, 0x35, 0x18, 0x2A, 0x11, 0xDD, 0x9C, 0x1A, 0xF1, 0xEA, 0x59, 0x88, 0x1E, 0x32, 0xF2, 0x7A,\n0x4A, 0x67, 0x8A, 0x22, 0xA9, 0xA8, 0x64, 0x84, 0xD1, 0xCF, 0x69, 0x78, 0xD6, 0xB0, 0xE2, 0x18,\n0xFD, 0x78, 0x32, 0x44, 0x50, 0x86, 0x6C, 0xB4, 0x45, 0xEC, 0xC7, 0x24, 0x0C, 0xB9, 0x67, 0xAA,\n0x55, 0x31, 0x08, 0x89, 0xED, 0x60, 0xB8, 0x18, 0xD1, 0xCD, 0x69, 0xBE, 0x28, 0x7A, 0xC8, 0x48,\n0xEB, 0x69, 0x18, 0x4A, 0x91, 0x24, 0x24, 0x9E, 0x1C, 0x2B, 0x6A, 0xEC, 0xD7, 0x19, 0xE3, 0x9C,\n0x22, 0xD1, 0x4D, 0xE8, 0x95, 0x50, 0x88, 0x45, 0x10, 0xC4, 0xA8, 0xA5, 0x18, 0xF2, 0x64, 0xBE,\n0x0D, 0x23, 0x60, 0x64, 0x46, 0x7C, 0xCE, 0x92, 0x78, 0xC6, 0x98, 0x68, 0x44, 0x2F, 0x8A, 0x0B,\n0x4F, 0x32, 0xB6, 0xF3, 0x8A, 0x8E, 0x40, 0x44, 0x51, 0xBB, 0x37, 0x95, 0xA3, 0x15, 0x91, 0x5C,\n0x68, 0x29, 0x3D, 0x19, 0x42, 0x88, 0xA1, 0x8E, 0x0F, 0x29, 0xA6, 0x95, 0x21, 0x47, 0x18, 0xEA,\n0x6F, 0x8E, 0x13, 0x71, 0xE6, 0xF1, 0xC4, 0x1E, 0xC4, 0xF3, 0xEB, 0xA9, 0x3F, 0xBF, 0x16, 0x45,\n0x18, 0x5B, 0x86, 0xA1, 0xA8, 0x67, 0xDF, 0x98, 0xFB, 0xC7, 0x48, 0x14, 0x25, 0x99, 0x70, 0x4A,\n0x50, 0x85, 0x14, 0x41, 0x6D, 0x78, 0x0B, 0x31, 0x6A, 0xE9, 0xA1, 0xAD, 0xD9, 0x43, 0xEE, 0xFF,\n0x02, 0x02, 0x51, 0xD7, 0x32, 0xD6, 0x20, 0x26, 0xCD, 0xE9, 0xD9, 0x88, 0x1E, 0x32, 0xD2, 0x93,\n0x61, 0xF6, 0x6B, 0x46, 0xBD, 0x19, 0xC4, 0xA3, 0x47, 0xA6, 0xB8, 0x08, 0x67, 0x46, 0x1C, 0x51,\n0x34, 0xA3, 0x1D, 0xF3, 0x10, 0x1F, 0x86, 0x6E, 0x4A, 0x8B, 0xA0, 0x0D, 0xB9, 0xED, 0xBD, 0x6F,\n0x6B, 0x58, 0x14, 0x23, 0xC8, 0xC6, 0x4A, 0x71, 0x97, 0x88, 0x05, 0x91, 0x83, 0x28, 0x10, 0xAF,\n0x2F, 0x41, 0xEC, 0x58, 0x14, 0xBD, 0x69, 0xE3, 0x7A, 0x1A, 0x8A, 0xC7, 0xA5, 0x34, 0xDE, 0xC2,\n0xED, 0xA0, 0x37, 0xDE, 0xBD, 0xE1, 0x0E, 0x15, 0x57, 0x6F, 0x5C, 0x53, 0x51, 0xBC, 0x94, 0xA3,\n0x04, 0x6D, 0xE8, 0xFD, 0x6E, 0x16, 0x44, 0xC6, 0xC3, 0x30, 0xA4, 0xAF, 0x01, 0xF1, 0x40, 0xD9,\n0x38, 0x90, 0x5A, 0x87, 0x61, 0xDE, 0xD7, 0x30, 0x26, 0x76, 0x20, 0x7A, 0xC8, 0x58, 0xD0, 0x9F,\n0x1E, 0xED, 0xD7, 0x10, 0xE1, 0x17, 0x7C, 0x60, 0x86, 0x62, 0x09, 0xE6, 0xFE, 0x49, 0x7F, 0x63,\n0x45, 0x20, 0x2D, 0x99, 0xC3, 0x11, 0x26, 0x04, 0x11, 0xC2, 0x43, 0x21, 0xA5, 0x31, 0xA5, 0x92,\n0x8E, 0x01, 0xE1, 0xDE, 0x91, 0x38, 0x24, 0x23, 0x8A, 0xBF, 0x23, 0x11, 0xA9, 0xA6, 0x1D, 0x13,\n0x86, 0x10, 0xFB, 0x17, 0x45, 0xF7, 0xA7, 0x3C, 0x8C, 0xE1, 0x81, 0x3F, 0x5E, 0xA4, 0xB8, 0x47,\n0xCC, 0x15, 0x61, 0x04, 0xD2, 0x92, 0x6D, 0x40, 0x87, 0xFC, 0x20, 0x64, 0xAC, 0xC0, 0x90, 0xF1,\n0x30, 0x00, 0x0F, 0x88, 0xB4, 0x35, 0x33, 0x92, 0xB1, 0x95, 0x4A, 0xFC, 0xDC, 0x19, 0x2E, 0x68,\n0x4E, 0x13, 0xC4, 0x74, 0x51, 0xCC, 0x37, 0x6D, 0xB4, 0x7F, 0x2A, 0x45, 0x10, 0x79, 0x05, 0x91,\n0x87, 0x35, 0x6E, 0xA6, 0x8A, 0x86, 0x84, 0x71, 0x61, 0x28, 0x07, 0xB5, 0x18, 0x32, 0x56, 0x20,\n0xC8, 0x47, 0x42, 0x73, 0xB9, 0x0D, 0xC3, 0x20, 0xBC, 0x22, 0xC4, 0x12, 0x48, 0x6E, 0x22, 0x11,\n0xD9, 0xAF, 0x51, 0x5F, 0x93, 0x21, 0xCA, 0xF0, 0xC2, 0xF5, 0xF4, 0xC7, 0xA4, 0xB1, 0x71, 0x2A,\n0x96, 0x57, 0xAA, 0x2B, 0x07, 0x1B, 0xCA, 0x45, 0xAF, 0x8B, 0x17, 0x73, 0x74, 0x1D, 0xC5, 0xCF,\n0x86, 0x10, 0x62, 0x18, 0x88, 0xD5, 0xE8, 0xCB, 0xBF, 0xCF, 0x50, 0xC4, 0xB2, 0xBE, 0x0C, 0xBE,\n0x1A, 0x0C, 0xDB, 0x4B, 0x62, 0xDE, 0xD7, 0xE4, 0x88, 0x9C, 0x29, 0x76, 0xD5, 0x53, 0xCE, 0xA3,\n0xC8, 0xC2, 0x2A, 0xA8, 0x38, 0x01, 0x59, 0x9F, 0x6E, 0x78, 0x27, 0x75, 0x0C, 0x2B, 0x26, 0x0B,\n0x64, 0x0A, 0x67, 0x43, 0x08, 0xA9, 0xA4, 0x1A, 0x0E, 0x23, 0x30, 0x1C, 0x09, 0x69, 0xD6, 0xB0,\n0xA4, 0xE4, 0xE0, 0x38, 0xCE, 0x1C, 0x9B, 0x8F, 0xDF, 0x1E, 0x66, 0x4B, 0x62, 0xDE, 0x9C, 0x1A,\n0xB1, 0xA3, 0x9E, 0x32, 0xEF, 0xEB, 0x3C, 0x8A, 0x5A, 0x6A, 0x45, 0x10, 0xAB, 0x53, 0x7F, 0x1E,\n0x0B, 0x67, 0x62, 0x9C, 0xEF, 0x52, 0x09, 0x31, 0x4A, 0x52, 0x7E, 0xE2, 0xF3, 0x48, 0x81, 0x21,\n0xAB, 0xA1, 0xF3, 0x90, 0xFC, 0x23, 0x0B, 0xC1, 0xAC, 0x03, 0xC8, 0x5B, 0xDB, 0xD5, 0xB7, 0x87,\n0x0F, 0xB3, 0x25, 0x51, 0xCD, 0x69, 0x0F, 0x22, 0x43, 0x46, 0x5A, 0x4F, 0x35, 0x2A, 0x36, 0x96,\n0x44, 0x2A, 0xCB, 0x7E, 0x96, 0x42, 0x91, 0xD0, 0x56, 0x6A, 0x09, 0x96, 0xC6, 0x36, 0xA4, 0xD2,\n0x51, 0x61, 0x3A, 0x05, 0x82, 0x8D, 0x9E, 0x14, 0x43, 0x06, 0x0B, 0xD2, 0x50, 0x86, 0xED, 0x20,\n0x1B, 0x7F, 0x7C, 0x7C, 0xFF, 0x70, 0x76, 0x49, 0xEC, 0xE9, 0x6B, 0xF2, 0x45, 0xD1, 0xF5, 0x34,\n0x3D, 0xDF, 0xDF, 0xFE, 0x53, 0x91, 0x54, 0x6C, 0x28, 0xC2, 0x88, 0x62, 0x7D, 0xB4, 0xD1, 0xCF,\n0x08, 0xA0, 0x09, 0x6D, 0x78, 0x03, 0x42, 0x66, 0x43, 0x0C, 0x27, 0xAB, 0xE1, 0x61, 0x0A, 0xCE,\n0x19, 0x7F, 0x7F, 0xFC, 0xF8, 0xF0, 0xE1, 0x69, 0x4B, 0x62, 0x8E, 0xD8, 0x59, 0x4F, 0xE7, 0xCF,\n0xA3, 0xD8, 0x7A, 0xBB, 0x15, 0xC1, 0x8E, 0x0D, 0x69, 0xE8, 0xEE, 0x4D, 0x8A, 0x9C, 0x4E, 0x49,\n0x11, 0xC7, 0x56, 0x51, 0x4D, 0x31, 0x85, 0x57, 0x05, 0x80, 0x9A, 0x0C, 0x4B, 0x3C, 0x21, 0xF6,\n0xB7, 0x68, 0x29, 0x9F, 0x55, 0xAF, 0xCD, 0x1A, 0xC1, 0x85, 0x5B, 0x96, 0xCA, 0xF5, 0x90, 0x88,\n0x1D, 0x4B, 0x62, 0x82, 0x78, 0x6E, 0x3D, 0xF5, 0xA8, 0xE8, 0xFF, 0xD8, 0x14, 0x45, 0xDE, 0x72,\n0xC5, 0x9B, 0x52, 0x2C, 0x21, 0x45, 0x31, 0xB6, 0x44, 0x8D, 0x27, 0xC2, 0xB6, 0xA1, 0xB7, 0x4A,\n0x81, 0x69, 0xD4, 0x51, 0xEC, 0x18, 0x80, 0x8F, 0x7F, 0x78, 0x13, 0x86, 0x54, 0xD3, 0x64, 0x49,\n0x54, 0x5F, 0x93, 0x23, 0x76, 0xD5, 0x53, 0x8F, 0x8A, 0x3A, 0x4E, 0x04, 0x0C, 0x45, 0x3B, 0x06,\n0x22, 0x8A, 0x7A, 0x34, 0xBC, 0x83, 0x91, 0x90, 0x60, 0x6E, 0x48, 0x3F, 0xC3, 0x6A, 0x98, 0x19,\n0xC6, 0x6B, 0x84, 0x77, 0x75, 0xFE, 0xAC, 0x3E, 0xBE, 0x7F, 0xA5, 0x6A, 0xCA, 0x94, 0x38, 0x45,\n0xBC, 0xAA, 0xBE, 0x46, 0x13, 0x46, 0x52, 0x4F, 0xBB, 0x5B, 0x9B, 0xBD, 0xA1, 0x4B, 0x69, 0x28,\n0x3A, 0x3D, 0xDB, 0xB9, 0xE8, 0xA9, 0xF1, 0x86, 0x6A, 0xEA, 0x22, 0xC7, 0x04, 0xD0, 0x0D, 0x0D,\n0x63, 0x05, 0xB3, 0xFD, 0xB1, 0xE0, 0xC4, 0x30, 0xF6, 0xC2, 0x11, 0x24, 0xAE, 0x1D, 0x12, 0xD1,\n0x9F, 0x92, 0xD9, 0xBF, 0x24, 0x2E, 0xA9, 0xA7, 0x4B, 0x47, 0xC5, 0x6D, 0x08, 0xC2, 0x88, 0x1F,\n0x7D, 0x1A, 0x6F, 0xF1, 0x03, 0x44, 0x53, 0x91, 0x50, 0xA7, 0x7A, 0x22, 0x66, 0xE2, 0xC7, 0x56,\n0xB7, 0x0D, 0x0F, 0x84, 0xA1, 0x54, 0x6D, 0x95, 0x1E, 0x9F, 0xC9, 0xEC, 0xBE, 0x8A, 0x90, 0x9F,\n0xBC, 0x5D, 0xBD, 0x1F, 0x10, 0x8B, 0xE1, 0x65, 0x96, 0xC4, 0xAE, 0x7A, 0xEA, 0x51, 0x71, 0xAE,\n0xB5, 0xA9, 0x14, 0xDD, 0xCF, 0xD0, 0xF1, 0xA0, 0x2C, 0x45, 0xED, 0xE0, 0x10, 0x30, 0x42, 0x99,\n0x87, 0x09, 0x55, 0x46, 0x5D, 0x49, 0x4B, 0xC0, 0x40, 0x12, 0x62, 0xF8, 0x6C, 0x92, 0x8A, 0x10,\n0x4E, 0x29, 0xD7, 0x24, 0xA2, 0xAA, 0xA9, 0x06, 0x8C, 0xB3, 0x10, 0xA9, 0xA7, 0xDD, 0xAD, 0xCD,\n0x9F, 0xA2, 0xD8, 0x5E, 0x11, 0xA9, 0xAD, 0x74, 0xAF, 0xCC, 0x1B, 0x9A, 0x18, 0x75, 0xBD, 0x58,\n0xF9, 0xD8, 0x4B, 0x59, 0xF1, 0x79, 0xA3, 0x1B, 0x43, 0x72, 0xE9, 0x78, 0xA6, 0x38, 0xEC, 0x40,\n0x4D, 0x97, 0x74, 0x96, 0x83, 0xF1, 0x0F, 0x4F, 0x36, 0xFE, 0x2E, 0x86, 0xAF, 0x92, 0x49, 0x5F,\n0x4B, 0x62, 0xD6, 0xD7, 0xE4, 0xF5, 0x94, 0xFD, 0xD3, 0x93, 0x5B, 0x9B, 0x48, 0x45, 0x08, 0xA5,\n0x48, 0x2A, 0x3E, 0x0A, 0x4B, 0x68, 0xD5, 0xE0, 0x78, 0x0B, 0xC7, 0xCB, 0x63, 0x0F, 0x26, 0x82,\n0x18, 0x02, 0x88, 0x21, 0x02, 0xD5, 0xC8, 0x37, 0x1A, 0xFA, 0xDF, 0x5E, 0xF9, 0x56, 0x3F, 0x0E,\n0x1D, 0x6F, 0xE5, 0xBB, 0x76, 0x5D, 0x0D, 0xFF, 0x4B, 0x54, 0x47, 0x35, 0xED, 0x42, 0xA4, 0x9E,\n0x6A, 0x54, 0xCC, 0x5B, 0x9B, 0x26, 0x23, 0xEF, 0xA1, 0xF8, 0x28, 0x14, 0xCB, 0x3B, 0x8B, 0xA3,\n0x2E, 0xC3, 0x69, 0xF8, 0x87, 0x11, 0xCA, 0x45, 0x61, 0x42, 0x1B, 0x56, 0xA3, 0xE1, 0x49, 0x86,\n0x51, 0x4A, 0x21, 0xAC, 0x0A, 0xF2, 0x93, 0x61, 0xAF, 0xE6, 0xF5, 0xF9, 0xD5, 0xD4, 0x88, 0xE7,\n0xD7, 0x53, 0xA7, 0x62, 0x51, 0xFC, 0x2D, 0x42, 0xB6, 0xDD, 0xAA, 0x82, 0x1A, 0xDA, 0xBB, 0xF7,\n0x83, 0xB1, 0xBA, 0x74, 0xB2, 0x11, 0x48, 0x18, 0xBB, 0x29, 0xE1, 0x1B, 0xA3, 0xCA, 0x42, 0x5F,\n0x2A, 0xA5, 0x96, 0xFA, 0xB0, 0xBB, 0x34, 0x34, 0xE5, 0xCB, 0xFE, 0x49, 0xA1, 0x9D, 0x60, 0x6D,\n0x38, 0x14, 0x53, 0x12, 0x31, 0xA9, 0xA6, 0x1D, 0x4B, 0x22, 0x88, 0x4E, 0x45, 0xD7, 0xD3, 0xBA,\n0xB5, 0x89, 0x5D, 0x1B, 0x3D, 0x20, 0x65, 0x3E, 0x8C, 0xAA, 0x82, 0x3A, 0xC4, 0xAD, 0x67, 0x28,\n0xD6, 0x8F, 0xF9, 0xFB, 0xA2, 0x38, 0x21, 0xC6, 0x85, 0x9A, 0x37, 0x14, 0x00, 0x56, 0x75, 0xB4,\n0x71, 0x58, 0x51, 0xAF, 0x10, 0x61, 0xC8, 0x74, 0x74, 0x44, 0x78, 0xF4, 0x0B, 0xFE, 0x59, 0x57,\n0x89, 0x38, 0x5B, 0x4D, 0x19, 0x30, 0xD2, 0x25, 0x71, 0x51, 0x3D, 0x75, 0x2A, 0xE6, 0x53, 0xC6,\n0x22, 0xC5, 0xC1, 0x8F, 0xFA, 0x3B, 0xAF, 0x88, 0xA3, 0x18, 0x97, 0x46, 0x8B, 0x90, 0xD4, 0x49,\n0x0D, 0x89, 0xC8, 0xC3, 0x6B, 0xF5, 0x84, 0x1B, 0x84, 0xF5, 0xFA, 0x5A, 0x46, 0xC4, 0x99, 0xB6,\n0xA6, 0xB7, 0x9A, 0x2E, 0xAB, 0xA7, 0x49, 0x6B, 0xE3, 0x29, 0xC3, 0xA9, 0xE8, 0xCE, 0x06, 0xC5,\n0xDD, 0xE3, 0x37, 0x20, 0x4A, 0x11, 0xC6, 0x24, 0x1B, 0x3B, 0x08, 0x31, 0x84, 0xD0, 0x86, 0x84,\n0x97, 0x87, 0x31, 0xEA, 0x6D, 0xDF, 0x91, 0x90, 0xD8, 0xAE, 0x22, 0x11, 0x93, 0xB6, 0xE6, 0x4C,\n0xC4, 0x7C, 0x54, 0x54, 0x6B, 0x93, 0xA4, 0x22, 0x1E, 0x73, 0x8A, 0x05, 0x2E, 0x14, 0xCB, 0x8B,\n0x14, 0xBD, 0x30, 0x9A, 0x91, 0xE8, 0x10, 0xC4, 0x4F, 0x69, 0x88, 0xA1, 0x11, 0x19, 0x70, 0xC9,\n0x50, 0x1B, 0xD6, 0x51, 0x8A, 0x69, 0xA3, 0xAD, 0x49, 0xAA, 0x69, 0x0F, 0x62, 0x7F, 0x3D, 0xF5,\n0xC0, 0x5F, 0x5F, 0xAF, 0x61, 0x44, 0x8C, 0x6F, 0x5C, 0x94, 0x1E, 0x0B, 0xEA, 0x8E, 0x52, 0x8A,\n0xDA, 0xFF, 0x40, 0x51, 0x8C, 0x27, 0x69, 0xCA, 0xCE, 0x23, 0x05, 0x31, 0x2B, 0x88, 0xE1, 0xF0,\n0x82, 0xE1, 0x78, 0x4F, 0x08, 0x42, 0xA2, 0x14, 0xD3, 0xD7, 0xFF, 0x6E, 0x6B, 0x16, 0x54, 0x53,\n0x21, 0x66, 0xF5, 0x94, 0x51, 0xD1, 0xBB, 0x36, 0x28, 0xDE, 0xF6, 0xC0, 0x3F, 0x05, 0x99, 0x53,\n0x7C, 0x14, 0x8A, 0x71, 0x05, 0x45, 0x8A, 0x2C, 0x36, 0x40, 0xC2, 0x28, 0xC7, 0x24, 0xE4, 0xA7,\n0x89, 0x82, 0xB0, 0xE0, 0xBF, 0x0D, 0xE3, 0xAE, 0x57, 0x21, 0xB4, 0xE1, 0x9F, 0x95, 0x12, 0xF1,\n0xFC, 0x6A, 0xFA, 0x3F, 0x52, 0xF1, 0xE9, 0x24, 0x15, 0x7D, 0x50, 0xA1, 0xAE, 0x26, 0x14, 0x8B,\n0x60, 0x14, 0x54, 0x9E, 0xF4, 0xF7, 0x76, 0x6A, 0x1D, 0x46, 0xE8, 0x26, 0x74, 0x0A, 0xBA, 0x8E,\n0x4E, 0xFC, 0x08, 0x1B, 0xF2, 0x4F, 0xCC, 0xC5, 0x94, 0x44, 0x74, 0x5B, 0xE3, 0x49, 0xFF, 0x7F,\n0x21, 0x7A, 0xCA, 0x48, 0x52, 0x91, 0x98, 0x51, 0x7C, 0x34, 0x12, 0xA2, 0x08, 0xA3, 0x1C, 0x9D,\n0x8F, 0x8B, 0x31, 0x0D, 0x08, 0xA1, 0x8F, 0x8E, 0x2C, 0xF8, 0x48, 0x86, 0x65, 0xC2, 0x2F, 0x88,\n0xAC, 0xD9, 0x8A, 0xDF, 0xC5, 0xF0, 0x8C, 0x44, 0xCC, 0x10, 0x5D, 0x4F, 0xD3, 0x5D, 0x9B, 0x65,\n0xA9, 0x58, 0x1F, 0xBB, 0x95, 0xB7, 0x6A, 0xD8, 0x8F, 0x54, 0x2C, 0x81, 0xA2, 0x1D, 0x5D, 0x55,\n0xF9, 0x2B, 0x4B, 0x42, 0x80, 0x26, 0xBC, 0x29, 0x42, 0x0C, 0x7D, 0x83, 0x34, 0xDE, 0x31, 0x1C,\n0x9F, 0x99, 0x65, 0x40, 0x6C, 0x17, 0x53, 0x27, 0x62, 0xBB, 0xAD, 0xC9, 0xAA, 0x69, 0x07, 0x62,\n0x3A, 0x65, 0xE4, 0xA9, 0xC8, 0x5F, 0x07, 0x8A, 0xBB, 0x80, 0x70, 0xFC, 0x04, 0x2D, 0x14, 0x35,\n0x6F, 0xD0, 0xAB, 0x9A, 0xD1, 0x94, 0x79, 0x98, 0xD0, 0x86, 0x3E, 0x75, 0xE1, 0x19, 0x0B, 0x1B,\n0x96, 0x68, 0xB5, 0xCE, 0x51, 0x4C, 0x95, 0x88, 0x79, 0x5B, 0xD3, 0x83, 0xE8, 0x7A, 0xDA, 0x6E,\n0x6D, 0x96, 0xA4, 0x22, 0x82, 0x30, 0x4A, 0xB1, 0xC4, 0xF8, 0xD4, 0x49, 0x68, 0x86, 0xA2, 0x1C,\n0x35, 0x39, 0xC2, 0xD8, 0x85, 0x89, 0x9F, 0x0D, 0x55, 0x45, 0xD1, 0x3B, 0xFE, 0xA3, 0x31, 0x21,\n0xDA, 0x90, 0xE4, 0xFF, 0x15, 0x86, 0x4E, 0xC4, 0xB3, 0xAB, 0x69, 0x7F, 0x2A, 0x3E, 0x3E, 0x3D,\n0x15, 0x2B, 0x42, 0x66, 0x2A, 0x29, 0x86, 0xDE, 0xF1, 0xFF, 0xAA, 0x61, 0x47, 0x14, 0x81, 0xB4,\n0x63, 0x0E, 0xEA, 0x55, 0xD0, 0x84, 0xB3, 0x86, 0xB7, 0x46, 0x46, 0xCE, 0x5C, 0xEA, 0xE9, 0x02,\n0x42, 0x0C, 0xB7, 0x51, 0x4C, 0x93, 0x44, 0x4C, 0x87, 0x44, 0x23, 0x76, 0xB4, 0x36, 0x3D, 0xA9,\n0x28, 0x44, 0x36, 0xAF, 0x68, 0x13, 0xC2, 0x2F, 0x0A, 0xEA, 0xFE, 0xE5, 0x11, 0xA1, 0x64, 0x24,\n0x60, 0x5C, 0x14, 0x08, 0xDA, 0xD0, 0xD7, 0x7D, 0x31, 0xE4, 0xCF, 0xC5, 0xA5, 0x12, 0x3E, 0x43,\n0x22, 0x3E, 0x4E, 0x59, 0x84, 0x37, 0x28, 0xA6, 0x59, 0x22, 0xF6, 0x56, 0x53, 0x23, 0x7A, 0x54,\n0x9C, 0x9F, 0x32, 0xD2, 0x54, 0xDC, 0x36, 0xEF, 0x5F, 0x56, 0x8A, 0xB7, 0x8A, 0x62, 0x91, 0x2B,\n0x78, 0xA3, 0xE2, 0x3B, 0x14, 0x73, 0xC6, 0x88, 0x4E, 0x41, 0x02, 0x3E, 0x1B, 0x46, 0xFA, 0xCD,\n0x19, 0x5E, 0x89, 0x15, 0x51, 0xF7, 0xBA, 0x18, 0xF3, 0x5F, 0x67, 0x89, 0x98, 0xB4, 0x35, 0xBD,\n0x88, 0x79, 0x2A, 0xBE, 0x3C, 0x21, 0x15, 0x7F, 0x4C, 0x05, 0x61, 0x44, 0xF1, 0xD1, 0x41, 0xF1,\n0xDD, 0xA8, 0x58, 0x62, 0x56, 0x31, 0x02, 0x46, 0xA2, 0x13, 0x90, 0x04, 0x9C, 0x35, 0x2C, 0x7A,\n0x18, 0x56, 0xF5, 0xFD, 0xCA, 0xC1, 0xF0, 0xC9, 0x84, 0x70, 0xF7, 0x7A, 0x63, 0x98, 0x2E, 0x2E,\n0x93, 0x88, 0x46, 0xEC, 0x68, 0x6D, 0x98, 0x32, 0xD2, 0x54, 0xE4, 0x5C, 0x71, 0x7B, 0x92, 0x62,\n0x94, 0xD2, 0x1D, 0x1E, 0x8A, 0xA5, 0xDB, 0x41, 0x51, 0x8C, 0x6A, 0x73, 0x52, 0x4D, 0xD9, 0x11,\n0x06, 0x24, 0x18, 0x7E, 0xDA, 0x9F, 0x25, 0xC1, 0xF1, 0x13, 0x86, 0xC4, 0x9F, 0x35, 0x89, 0x78,\n0x77, 0x79, 0x22, 0xE6, 0x4B, 0x62, 0x7F, 0x2A, 0x06, 0xE2, 0x7C, 0x2A, 0x72, 0xC4, 0x3F, 0xF5,\n0xE3, 0x38, 0xA7, 0x52, 0x7C, 0x27, 0xC5, 0x78, 0x9F, 0x55, 0x24, 0xEC, 0xE8, 0xB0, 0x9F, 0x09,\n0xE1, 0x23, 0x76, 0x76, 0x18, 0xEE, 0xDE, 0x6D, 0xE8, 0xFF, 0x83, 0x9E, 0xF8, 0x51, 0x0C, 0x19,\n0x2F, 0x3A, 0x12, 0x51, 0xD5, 0xB4, 0x1F, 0x91, 0xB3, 0x8C, 0x53, 0x53, 0x31, 0x14, 0x7F, 0xB7,\n0x15, 0x77, 0x86, 0x95, 0xE2, 0xBB, 0xF8, 0x1A, 0x81, 0x62, 0x5D, 0xC3, 0x80, 0x34, 0xE5, 0x32,\n0x40, 0x02, 0x3F, 0xCD, 0xF5, 0x32, 0xBC, 0x85, 0xA1, 0xCE, 0x2E, 0x5A, 0x86, 0x2F, 0x7E, 0x63,\n0x78, 0x56, 0x22, 0x1A, 0xF1, 0xBF, 0xA6, 0xE2, 0xED, 0x34, 0x15, 0x51, 0x8C, 0x08, 0x45, 0xF0,\n0x22, 0x50, 0x64, 0x0F, 0x47, 0x90, 0xA6, 0xCC, 0x01, 0x2D, 0x68, 0x43, 0xB6, 0xE4, 0x31, 0x1C,\n0xBE, 0x62, 0xE8, 0x3D, 0xD3, 0x06, 0x61, 0x99, 0x2E, 0xDE, 0xAB, 0xAB, 0xE9, 0x4A, 0xC4, 0xCB,\n0x23, 0xE6, 0xA9, 0x78, 0x97, 0x54, 0xDC, 0x1C, 0xB7, 0x93, 0x27, 0x2B, 0xC2, 0x58, 0xFF, 0xAF,\n0x9A, 0xB9, 0x64, 0x7B, 0xB1, 0xB4, 0x1B, 0xE1, 0x91, 0x50, 0x86, 0x25, 0x30, 0x7C, 0x54, 0x19,\n0xF2, 0x28, 0x5E, 0x71, 0xAB, 0xF6, 0xF8, 0xCA, 0x82, 0xF8, 0x41, 0x89, 0xF8, 0x20, 0x4D, 0xC4,\n0xFE, 0xB6, 0xC6, 0x88, 0xB4, 0x36, 0x27, 0xA7, 0xA2, 0x6F, 0xDB, 0xAC, 0xFE, 0xEC, 0xFF, 0x42,\n0xDB, 0x3D, 0xC4, 0x23, 0x14, 0x23, 0xA4, 0x18, 0x8C, 0x64, 0x81, 0x18, 0xCF, 0x8C, 0x4A, 0xD0,\n0x86, 0xBB, 0x52, 0x3F, 0xA6, 0xE2, 0xC4, 0x30, 0x1A, 0x53, 0x0C, 0xA7, 0xFB, 0xB4, 0x87, 0x05,\n0xF1, 0x55, 0xAB, 0x98, 0x3A, 0x11, 0xC7, 0x41, 0x9F, 0xF9, 0x22, 0x43, 0xBC, 0x7C, 0x2A, 0x7A,\n0xCC, 0x88, 0x54, 0xAC, 0x6A, 0x1C, 0x8C, 0x1D, 0x8A, 0x97, 0x71, 0xCC, 0xB3, 0xB0, 0x78, 0x05,\n0x61, 0xF9, 0xAD, 0x31, 0x8C, 0xCB, 0x40, 0x0C, 0xAC, 0x18, 0x42, 0x48, 0xC4, 0x74, 0x91, 0x17,\n0xD3, 0x24, 0x11, 0x2F, 0x84, 0xD8, 0x97, 0x8A, 0x4C, 0xFC, 0x5A, 0x99, 0x32, 0x45, 0x07, 0x8C,\n0x49, 0x59, 0xED, 0xE2, 0x6B, 0xA7, 0xE1, 0xEE, 0xF7, 0xC5, 0xF0, 0x1D, 0xFF, 0x86, 0x30, 0x64,\n0x39, 0x74, 0x63, 0x5A, 0x16, 0x44, 0x8A, 0xA9, 0xBB, 0x9A, 0xB9, 0x15, 0xB1, 0xB7, 0xAD, 0x01,\n0xB1, 0x37, 0x15, 0xFF, 0x35, 0x66, 0xE0, 0xD7, 0x60, 0xE4, 0xFA, 0x69, 0xA5, 0x78, 0xEF, 0xDE,\n0xAC, 0x62, 0x44, 0x27, 0x24, 0x76, 0x26, 0xC4, 0x90, 0x21, 0x27, 0x5E, 0x87, 0x77, 0x0C, 0x69,\n0xA2, 0x8E, 0xDA, 0x52, 0x1B, 0xB2, 0x20, 0x52, 0x4C, 0x2F, 0x9B, 0x88, 0xFD, 0x53, 0x46, 0xBE,\n0x83, 0xEA, 0x31, 0x03, 0x3E, 0x33, 0x32, 0x67, 0x4C, 0x15, 0x71, 0x04, 0x12, 0xC6, 0xA6, 0x64,\n0x07, 0xA0, 0xB2, 0x30, 0x2A, 0x38, 0x86, 0xEC, 0x24, 0xB1, 0x55, 0x83, 0x21, 0x84, 0x9E, 0x10,\n0xC3, 0x50, 0x23, 0xA2, 0xBB, 0x1A, 0xB7, 0xA6, 0xED, 0x44, 0xEC, 0x40, 0xCC, 0x53, 0x91, 0xC3,\n0x8C, 0xA4, 0xB7, 0xF9, 0x4B, 0xDB, 0xBD, 0xEB, 0x38, 0x11, 0x04, 0x61, 0x14, 0xCE, 0x48, 0x90,\n0x10, 0x12, 0x11, 0x82, 0x17, 0x00, 0x09, 0x08, 0x88, 0x08, 0x90, 0x48, 0x36, 0x24, 0x21, 0x26,\n0xD8, 0x07, 0x58, 0x04, 0x8B, 0x80, 0xE7, 0xC7, 0xED, 0xF2, 0x70, 0x5C, 0x73, 0xA6, 0xB7, 0xEC,\n0x6E, 0xA6, 0xB8, 0x88, 0x64, 0x17, 0x69, 0x3F, 0xFD, 0x55, 0xD5, 0xE3, 0xB1, 0xA7, 0xA7, 0x18,\n0xC5, 0xA7, 0x2E, 0x49, 0x51, 0x8E, 0x89, 0xB1, 0xC8, 0x64, 0xAD, 0xE7, 0x8F, 0xD3, 0x93, 0x61,\n0x2B, 0x0C, 0xDF, 0xC9, 0x30, 0x14, 0x6D, 0xF8, 0x23, 0x06, 0xA2, 0x9A, 0xA9, 0xB6, 0x9A, 0xA1,\n0x20, 0xEE, 0x16, 0xC5, 0x43, 0xBD, 0xE1, 0x98, 0x91, 0x3E, 0xA0, 0xE8, 0xEC, 0x5A, 0x98, 0x18,\n0x3F, 0x9C, 0x2B, 0x3E, 0x5B, 0x2B, 0xD2, 0x57, 0x29, 0x18, 0x45, 0x39, 0x52, 0x27, 0xBD, 0x85,\n0x10, 0xB9, 0xBC, 0x5A, 0xB5, 0x6B, 0xE0, 0x18, 0xF2, 0x02, 0xE2, 0xC6, 0xDB, 0xB5, 0x0E, 0x7F,\n0xFD, 0xBA, 0xC5, 0xB0, 0x6E, 0xA6, 0x55, 0x10, 0xE7, 0x11, 0x27, 0xA2, 0x48, 0x43, 0xDD, 0xBA,\n0x88, 0xC9, 0xAD, 0xD5, 0x28, 0xEA, 0xD1, 0x3C, 0x61, 0xA9, 0x82, 0x71, 0x1C, 0xF2, 0x14, 0x3F,\n0xEA, 0x24, 0xE6, 0xA3, 0x6A, 0xFC, 0x6F, 0x32, 0xE4, 0x8C, 0x0F, 0x60, 0xD4, 0x9F, 0xDB, 0xD4,\n0x4C, 0x31, 0x7C, 0x68, 0xAB, 0xA9, 0x82, 0x78, 0x05, 0xE2, 0x78, 0x14, 0xBD, 0xDB, 0xD0, 0x50,\n0x9F, 0xA4, 0xD2, 0x53, 0x5D, 0x0A, 0xC5, 0x80, 0x54, 0xC1, 0x67, 0x4A, 0x8B, 0xB9, 0x20, 0x24,\n0x86, 0x32, 0x8C, 0xDF, 0xCB, 0x37, 0x4E, 0xD7, 0x85, 0xD6, 0x84, 0x18, 0xDE, 0x61, 0x38, 0xB0,\n0xD5, 0x0C, 0x04, 0x71, 0x36, 0x8A, 0x28, 0x82, 0xA8, 0x86, 0x1A, 0x76, 0x62, 0xB4, 0x62, 0xFC,\n0x20, 0x17, 0x32, 0x14, 0x81, 0x54, 0x67, 0x1D, 0x28, 0x0B, 0x9A, 0x8F, 0xA6, 0xDA, 0x0C, 0x3F,\n0x64, 0x43, 0x62, 0x88, 0x20, 0xF5, 0xED, 0x32, 0xC3, 0x1D, 0x82, 0x28, 0xC4, 0x6B, 0xA3, 0xD8,\n0x6D, 0xA8, 0x9F, 0x0F, 0x0D, 0xB5, 0xC1, 0xE5, 0xFB, 0x93, 0xA4, 0x78, 0x9C, 0x3A, 0x4D, 0x31,\n0xF8, 0x14, 0xC6, 0xA8, 0x2D, 0xC7, 0x01, 0xCB, 0xC2, 0x8F, 0xC2, 0x90, 0x3B, 0x44, 0xCE, 0x0D,\n0x3F, 0x2E, 0x84, 0xD4, 0x77, 0x2F, 0x35, 0xFD, 0x66, 0xDA, 0xD9, 0x6A, 0x08, 0xE2, 0x28, 0x62,\n0x1D, 0xC5, 0xA7, 0xDD, 0x28, 0x76, 0x1B, 0xAA, 0xEF, 0x73, 0xF1, 0x93, 0x23, 0x4F, 0x5B, 0xC6,\n0xC2, 0x27, 0x45, 0x24, 0x0D, 0x79, 0x85, 0x66, 0x6D, 0xC7, 0xFF, 0xC0, 0x63, 0xAF, 0x7C, 0x3E,\n0x6C, 0x84, 0x32, 0x64, 0xA9, 0xE9, 0x9C, 0x2E, 0xD4, 0x4C, 0x75, 0xCE, 0x2F, 0x82, 0xB8, 0x4F,\n0x14, 0xBD, 0xDB, 0xB8, 0xA1, 0x36, 0x3B, 0x39, 0x2A, 0x8C, 0x71, 0xD2, 0x5E, 0x14, 0x13, 0xA0,\n0xCA, 0x8E, 0x75, 0x99, 0xCE, 0x95, 0xBF, 0x35, 0xE3, 0x10, 0x43, 0x8E, 0xF8, 0x67, 0x84, 0xCB,\n0x3B, 0x57, 0x7F, 0xDF, 0x8E, 0x34, 0xD3, 0x81, 0x20, 0x4E, 0x47, 0x91, 0x8B, 0x6F, 0xDA, 0x6D,\n0x7A, 0x1B, 0xEA, 0xC7, 0x75, 0x29, 0x8C, 0x2C, 0x37, 0x31, 0x18, 0x55, 0xB3, 0x92, 0x35, 0xDF,\n0xD2, 0x01, 0xDC, 0x4A, 0x3F, 0xC8, 0x30, 0x08, 0x11, 0x8C, 0xFA, 0x53, 0x1A, 0xD6, 0xCD, 0xB4,\n0x0E, 0xE2, 0x7C, 0x14, 0x7D, 0xCC, 0x50, 0x43, 0x25, 0x8A, 0x34, 0x54, 0x29, 0x06, 0xA3, 0x14,\n0xD9, 0x13, 0x45, 0x56, 0x53, 0x1A, 0xB3, 0xC6, 0x23, 0xED, 0x18, 0x12, 0xC3, 0x0F, 0x0C, 0x44,\n0x0C, 0x97, 0xA5, 0xE6, 0x24, 0x48, 0xB1, 0x98, 0x16, 0x03, 0xD1, 0xCD, 0xD4, 0x5B, 0xCD, 0x0C,\n0xA2, 0xA3, 0x38, 0xB0, 0xDB, 0x48, 0xF1, 0x2E, 0xE0, 0xFC, 0x96, 0xC0, 0x50, 0x7C, 0x0C, 0x63,\n0x9C, 0xD8, 0x50, 0x1C, 0x81, 0xAC, 0x4B, 0xDF, 0x7F, 0x3B, 0x86, 0xCD, 0x31, 0x13, 0xB6, 0x5A,\n0x3D, 0x29, 0x90, 0x8A, 0xC5, 0xD4, 0x4B, 0x8D, 0x4E, 0x17, 0x45, 0x33, 0x9D, 0x0C, 0xA2, 0x11,\n0xEB, 0x28, 0x5E, 0xD4, 0x50, 0x7F, 0xB0, 0x90, 0xFB, 0x63, 0x44, 0x1F, 0x4B, 0x71, 0xEB, 0xD1,\n0x75, 0x33, 0x94, 0x46, 0x13, 0xE1, 0x3A, 0x86, 0x71, 0xB3, 0x56, 0xC4, 0xD0, 0x67, 0x8B, 0x20,\n0x94, 0x21, 0xAF, 0x21, 0xC6, 0x52, 0x53, 0x0C, 0xC4, 0xA2, 0x99, 0x1A, 0x71, 0xBC, 0x9F, 0x5E,\n0xBE, 0xDB, 0x78, 0x43, 0xE5, 0x9C, 0xD1, 0xEC, 0xEC, 0xB8, 0x84, 0xF1, 0xFD, 0xB9, 0x62, 0x30,\n0xB2, 0xD7, 0xC0, 0xB8, 0x53, 0x65, 0x42, 0x1E, 0x21, 0xB8, 0x18, 0xA6, 0x67, 0xB0, 0x98, 0x30,\n0x8A, 0xC3, 0x45, 0x39, 0x10, 0x39, 0xE6, 0x0F, 0x34, 0xD3, 0xA9, 0x28, 0x76, 0x8E, 0x19, 0x45,\n0x43, 0x65, 0x2C, 0xE2, 0x07, 0x23, 0x61, 0x7C, 0xEF, 0x30, 0x62, 0x28, 0xC6, 0xFD, 0x08, 0x5F,\n0x05, 0x21, 0x31, 0x0C, 0xC3, 0x32, 0x86, 0x2F, 0xDA, 0xE1, 0x62, 0x60, 0x20, 0x0E, 0x37, 0xD3,\n0xF9, 0x28, 0xD6, 0x0D, 0xD5, 0x63, 0x31, 0x9D, 0xAA, 0x32, 0xA3, 0x5B, 0x6A, 0x30, 0x5A, 0xF1,\n0x86, 0x7F, 0x21, 0x3A, 0x4B, 0xD8, 0x6A, 0x49, 0xBE, 0x62, 0xD8, 0x8A, 0x56, 0x0A, 0xE1, 0xAA,\n0x4A, 0xC3, 0x1D, 0x9A, 0xE9, 0x74, 0x14, 0xBD, 0xDB, 0xB8, 0xA1, 0xE6, 0xB1, 0xF8, 0x0D, 0xC2,\n0x63, 0xC1, 0x58, 0x87, 0x11, 0x30, 0xF0, 0x6E, 0xA2, 0xFE, 0x67, 0x20, 0x1D, 0xC3, 0xF6, 0xC7,\n0x31, 0xF4, 0xE3, 0x3A, 0xBA, 0x07, 0xC4, 0xCE, 0x40, 0x54, 0x33, 0x9D, 0x32, 0x34, 0xE2, 0x58,\n0x14, 0xDD, 0x50, 0x3D, 0x16, 0x01, 0xC4, 0x11, 0xC6, 0x83, 0xE2, 0x7A, 0x32, 0xC2, 0x08, 0x96,\n0x18, 0x27, 0x30, 0x6F, 0xB2, 0xE1, 0xF9, 0x6B, 0x24, 0xDC, 0x61, 0xAA, 0x18, 0x26, 0xC1, 0xA8,\n0xFB, 0x6D, 0x43, 0x2D, 0x35, 0x1E, 0x88, 0x6A, 0xA6, 0x05, 0xE2, 0x74, 0x14, 0xBD, 0xDB, 0xF8,\n0xB0, 0xD8, 0x57, 0xFC, 0x72, 0xFB, 0x3B, 0xE8, 0xC4, 0xC8, 0x68, 0xDC, 0x0E, 0x23, 0x8C, 0x37,\n0xFF, 0xF0, 0xC4, 0x58, 0x61, 0xF2, 0x95, 0x6A, 0xCD, 0x8A, 0x61, 0x20, 0x9E, 0x62, 0xC8, 0x7D,\n0xFA, 0x2B, 0x42, 0x2A, 0xDE, 0x0E, 0x8C, 0xA1, 0x16, 0xD3, 0x7A, 0x20, 0xD6, 0x41, 0xDC, 0x25,\n0x8A, 0x75, 0x43, 0xF5, 0x72, 0x93, 0xA7, 0x09, 0x8C, 0x0A, 0x63, 0x9F, 0xF1, 0x50, 0x72, 0xBC,\n0xA2, 0x3A, 0x23, 0x15, 0xC2, 0x16, 0x45, 0x0C, 0xB5, 0x94, 0x8A, 0xB0, 0x19, 0xDE, 0x5D, 0x6C,\n0x38, 0x32, 0x10, 0x41, 0x9C, 0x8F, 0xE2, 0x85, 0x0D, 0xD5, 0x63, 0x91, 0x8B, 0xA8, 0x77, 0x7F,\n0x30, 0x8C, 0x4A, 0x8C, 0x0A, 0xE3, 0x26, 0xA3, 0x48, 0x06, 0x04, 0x4D, 0xC8, 0xE5, 0x1E, 0xC7,\n0x10, 0x42, 0x04, 0xA9, 0x97, 0xC9, 0xF0, 0xDA, 0xA5, 0x66, 0xA0, 0x99, 0x0E, 0x23, 0x16, 0xBB,\n0x4D, 0xD1, 0x50, 0x59, 0x6E, 0xE0, 0x13, 0x63, 0x53, 0x2C, 0x18, 0x1B, 0x80, 0xD4, 0x0A, 0x47,\n0x89, 0x23, 0xA8, 0x20, 0x86, 0x21, 0xAF, 0xE1, 0xF3, 0xD1, 0x80, 0x22, 0xE4, 0x83, 0xA9, 0x4B,\n0x43, 0x96, 0x1A, 0x06, 0xE2, 0x50, 0x33, 0xDD, 0x6F, 0xB7, 0xA1, 0xA1, 0x5A, 0xD1, 0xCB, 0xCD,\n0x8F, 0x90, 0x93, 0x23, 0x61, 0xD4, 0x68, 0x14, 0xA3, 0x1C, 0xEB, 0x4A, 0x5F, 0xA3, 0xCD, 0xC6,\n0x84, 0x4D, 0x31, 0x1A, 0x29, 0x31, 0xEC, 0x3C, 0x04, 0x30, 0x0C, 0x0F, 0x65, 0x43, 0x2F, 0x35,\n0x03, 0x03, 0x71, 0x07, 0xC4, 0x4E, 0x43, 0xAD, 0xC6, 0x22, 0x8A, 0xDF, 0x59, 0xCF, 0x1F, 0x64,\n0x3C, 0x2A, 0x92, 0x46, 0x1C, 0x43, 0x43, 0x8C, 0x63, 0xA3, 0xB1, 0x4F, 0x48, 0x0C, 0xE9, 0xA4,\n0x10, 0x52, 0x97, 0x18, 0xD6, 0x97, 0x4C, 0xE7, 0x9B, 0xE9, 0xFC, 0x6E, 0xD3, 0x1F, 0x8B, 0x5E,\n0x51, 0x7F, 0xAD, 0xC6, 0xCA, 0x16, 0x23, 0x61, 0x7C, 0x04, 0x23, 0x57, 0xC5, 0xA7, 0x1D, 0xD7,\n0x21, 0x84, 0x90, 0x4E, 0x6A, 0x42, 0x04, 0x9D, 0x43, 0x1F, 0x10, 0x6D, 0x38, 0x38, 0x10, 0xE7,\n0x11, 0xCB, 0x63, 0x46, 0x3D, 0x16, 0xAD, 0x18, 0x7A, 0x54, 0x97, 0xF1, 0x50, 0x30, 0x12, 0xC7,\n0xD2, 0xF1, 0xEB, 0xF2, 0xAB, 0xDB, 0x58, 0x15, 0xC2, 0xF4, 0x02, 0x7E, 0x7A, 0xC9, 0xC9, 0x84,\n0x54, 0xCF, 0xD0, 0x8B, 0xA9, 0x4F, 0xF9, 0xF3, 0xCD, 0x74, 0x7E, 0xB7, 0xE9, 0x37, 0x54, 0x2B,\n0x36, 0x44, 0x14, 0x7F, 0x07, 0x5D, 0xC1, 0x78, 0x84, 0x3C, 0x31, 0xE2, 0x18, 0x92, 0x38, 0xD6,\n0x81, 0x34, 0x20, 0x82, 0x0F, 0x12, 0x3E, 0xD1, 0x3E, 0xA3, 0xE7, 0x18, 0x8D, 0x19, 0x16, 0x03,\n0xB1, 0x6C, 0xA6, 0xF3, 0x51, 0x74, 0x43, 0xE5, 0xC8, 0x9F, 0xC7, 0xE2, 0x6A, 0xB9, 0x39, 0x3F,\n0x2E, 0xAE, 0xF6, 0x3B, 0x1C, 0xCD, 0xF8, 0xF8, 0xC8, 0x48, 0x1C, 0x71, 0x04, 0xF2, 0x32, 0xC9,\n0xC5, 0x3C, 0x0B, 0xBE, 0x0B, 0xC1, 0x01, 0x42, 0x72, 0xF8, 0x29, 0x19, 0xA6, 0x03, 0xA2, 0x16,\n0xD3, 0xEB, 0x06, 0xE2, 0x3C, 0xA2, 0xA3, 0x58, 0x37, 0xD4, 0x7A, 0x2C, 0x7E, 0x0A, 0xC5, 0xFC,\n0xE3, 0xA8, 0x18, 0x9B, 0x24, 0x8E, 0x1B, 0xD7, 0xC7, 0x09, 0x9A, 0x0A, 0x69, 0x00, 0x11, 0xF4,\n0x95, 0xEE, 0xE6, 0xA7, 0x95, 0x94, 0xF4, 0xF1, 0x18, 0xB1, 0x7B, 0x0C, 0xDF, 0xDA, 0x90, 0x03,\n0xA2, 0x16, 0x53, 0x06, 0xE2, 0x7E, 0xCD, 0xD4, 0x51, 0xAC, 0x1B, 0xAA, 0xC6, 0x62, 0xA1, 0x88,\n0x9F, 0x1C, 0x83, 0x51, 0x77, 0x70, 0xE0, 0xD8, 0x20, 0x7D, 0xF2, 0x80, 0x93, 0x7A, 0xE0, 0x54,\n0x8F, 0x20, 0x21, 0xEC, 0x13, 0x22, 0x48, 0xDD, 0xA7, 0x6B, 0x6D, 0x36, 0x3C, 0x14, 0x86, 0x5E,\n0x6A, 0xF6, 0x6B, 0xA6, 0x20, 0x5E, 0xDF, 0x50, 0x19, 0x8B, 0xB5, 0xE2, 0x5D, 0x52, 0x54, 0x1C,\n0x61, 0xB4, 0xA3, 0x21, 0xC3, 0xB2, 0xAC, 0x74, 0xD3, 0x71, 0x08, 0xF2, 0x91, 0xE3, 0x10, 0xB6,\n0x12, 0xA1, 0x04, 0x0B, 0xC3, 0x37, 0x85, 0xE1, 0x40, 0x33, 0xDD, 0xAF, 0xA1, 0xFA, 0x9C, 0xE1,\n0xE5, 0x66, 0x3B, 0x8B, 0xF7, 0x32, 0x6C, 0x95, 0xBB, 0x6A, 0x30, 0x7E, 0x3C, 0x31, 0xE2, 0x08,\n0x64, 0x68, 0x42, 0x29, 0x4F, 0xDF, 0x44, 0x15, 0x5F, 0x27, 0x41, 0x13, 0x32, 0x0A, 0x11, 0xA4,\n0x7E, 0x16, 0x86, 0x3A, 0x5C, 0x68, 0xA9, 0xD9, 0xDD, 0xD0, 0x88, 0x3E, 0x2C, 0xD2, 0x50, 0x2B,\n0xC5, 0xE7, 0x7D, 0x45, 0x3F, 0x6A, 0x54, 0xC3, 0xB1, 0x31, 0xE2, 0xB8, 0x82, 0x0C, 0x11, 0x46,\n0x25, 0xD5, 0x79, 0x53, 0x5C, 0xFC, 0x7D, 0xFE, 0x5E, 0xC3, 0x95, 0x20, 0xEB, 0x8C, 0x09, 0x79,\n0xD4, 0xF4, 0xF7, 0x69, 0x43, 0x9F, 0x10, 0xA9, 0xC2, 0x70, 0x32, 0x8A, 0x6E, 0xA8, 0xFD, 0xB1,\n0xB8, 0x5E, 0x51, 0xAD, 0x08, 0x61, 0x82, 0xDC, 0x18, 0x8E, 0x9C, 0x1D, 0x1F, 0xFB, 0x79, 0xCB,\n0x50, 0xC2, 0x49, 0x71, 0xEB, 0xB7, 0x3F, 0x13, 0xAA, 0x09, 0x96, 0x84, 0x0B, 0x20, 0x75, 0x30,\n0xFC, 0xC2, 0xEB, 0x87, 0x85, 0xA1, 0x17, 0xD3, 0x7A, 0x20, 0xEE, 0x89, 0x48, 0x14, 0x07, 0xC6,\n0xA2, 0x15, 0x7F, 0xBE, 0x76, 0x75, 0x19, 0x71, 0x3C, 0xCE, 0x47, 0x7A, 0x2B, 0x94, 0x58, 0xB9,\n0xE0, 0x03, 0x30, 0x32, 0x98, 0x05, 0x17, 0x42, 0x42, 0x88, 0x20, 0xC5, 0x7D, 0x6D, 0xB5, 0xE1,\n0x05, 0x8B, 0x69, 0xD5, 0x4C, 0x77, 0xDA, 0x6D, 0x7C, 0xCE, 0xE0, 0xB4, 0x78, 0xBD, 0x22, 0x5D,\n0x0A, 0xC7, 0x60, 0x54, 0x1C, 0x79, 0x63, 0x5C, 0x53, 0x40, 0x92, 0xDA, 0xA4, 0xC3, 0x0F, 0x40,\n0x04, 0x0B, 0x42, 0x3D, 0xB9, 0xFF, 0x2F, 0x75, 0x77, 0x8F, 0xDB, 0x36, 0x10, 0x84, 0x61, 0xB8,\n0x4F, 0xA3, 0x34, 0xA9, 0x89, 0x34, 0xAE, 0x58, 0xA4, 0x72, 0x19, 0xE4, 0x0C, 0x3A, 0x81, 0x0F,\n0x20, 0x81, 0xA0, 0x73, 0x7F, 0x20, 0x54, 0x86, 0xC9, 0xAB, 0xC5, 0xAB, 0xF1, 0x80, 0x6B, 0x2C,\n0x60, 0x7F, 0x95, 0xED, 0xC6, 0xC0, 0x3E, 0x98, 0x9F, 0xA5, 0x6C, 0xE9, 0xD2, 0x18, 0x7E, 0xEF,\n0x36, 0x1C, 0xD8, 0x4C, 0xEB, 0x6B, 0xC6, 0xE1, 0xB1, 0x68, 0xC5, 0x78, 0x76, 0xB3, 0x70, 0x44,\n0x0D, 0xA4, 0xCA, 0x11, 0x47, 0x41, 0x86, 0x24, 0x98, 0x8E, 0xDF, 0xA2, 0x11, 0xC0, 0x47, 0x82,\n0x5B, 0x2C, 0x48, 0xD6, 0x7E, 0xC3, 0x7A, 0x31, 0x75, 0x21, 0x0E, 0x6E, 0xA8, 0x1E, 0x8B, 0x47,\n0x15, 0xCF, 0xCB, 0x83, 0x43, 0x4A, 0xCA, 0xD1, 0x7F, 0x3A, 0x8E, 0x24, 0x96, 0x0E, 0x7A, 0xF8,\n0x59, 0xD0, 0x45, 0x18, 0x82, 0x0E, 0x6B, 0x69, 0x6B, 0xF8, 0x9C, 0x18, 0x72, 0xB9, 0x60, 0xA9,\n0xE9, 0x19, 0x88, 0xE3, 0x1B, 0xAA, 0x96, 0x9B, 0x42, 0xF1, 0xFF, 0x2B, 0x53, 0xD7, 0x87, 0x07,\n0xA5, 0x72, 0xC4, 0xD1, 0x90, 0x5B, 0xA2, 0x3D, 0xDE, 0xA7, 0x71, 0xC3, 0xCF, 0x80, 0x08, 0x42,\n0xE8, 0x22, 0x3C, 0xDD, 0xF2, 0xF7, 0xAB, 0xE5, 0xAC, 0xC7, 0x34, 0x1D, 0x86, 0xE3, 0x07, 0x22,\n0x88, 0x55, 0x43, 0x4D, 0x96, 0x9B, 0x5A, 0x91, 0xD7, 0x17, 0x2F, 0xAB, 0x08, 0x13, 0x47, 0x7F,\n0xE2, 0xA8, 0xDF, 0xCA, 0x74, 0xA7, 0xBA, 0x53, 0xC3, 0xCE, 0x1F, 0x71, 0x9B, 0x08, 0x46, 0x11,\n0xE2, 0x47, 0x6E, 0x2B, 0x8D, 0xAF, 0x16, 0xFD, 0x86, 0x75, 0x21, 0x8E, 0x6E, 0xA8, 0x1A, 0x8B,\n0x7D, 0x8A, 0x2F, 0x6B, 0x7B, 0x56, 0x38, 0xBA, 0xAD, 0x32, 0x1F, 0x89, 0x29, 0x1D, 0xF8, 0xD8,\n0x43, 0x2D, 0x48, 0x11, 0x1A, 0x30, 0xC2, 0x38, 0xAC, 0x0C, 0xD3, 0x0B, 0xE2, 0xC0, 0x81, 0x58,\n0x23, 0x96, 0x63, 0x91, 0xE5, 0xA6, 0xBD, 0x68, 0x64, 0x8A, 0x2C, 0xA9, 0x8B, 0x8F, 0xEB, 0x2D,\n0xC7, 0x2D, 0xBC, 0x55, 0x3A, 0x94, 0x44, 0x72, 0xE8, 0x09, 0xB0, 0x10, 0x6C, 0xF3, 0xFA, 0x12,\n0x86, 0xBF, 0x64, 0x18, 0x84, 0x1F, 0xD2, 0xB0, 0x68, 0xA8, 0x1A, 0x8B, 0x5A, 0x51, 0xAD, 0xB8,\n0x45, 0x8A, 0xE7, 0x2B, 0x07, 0x96, 0x38, 0x6A, 0x3E, 0x02, 0x19, 0x28, 0x04, 0x52, 0xDC, 0xE0,\n0x0B, 0xBF, 0x1B, 0xA0, 0x04, 0x83, 0x50, 0x82, 0xD3, 0x34, 0x9D, 0x22, 0xD1, 0x4A, 0xB5, 0xD2,\n0xD4, 0x86, 0x3F, 0x0E, 0x18, 0x8E, 0x41, 0xAC, 0x1B, 0xAA, 0x97, 0x9B, 0x5A, 0x31, 0x96, 0x54,\n0x06, 0x23, 0x27, 0xB6, 0x05, 0xC8, 0xC4, 0x71, 0x8B, 0xFE, 0xA5, 0x83, 0x36, 0xEB, 0x50, 0xB9,\n0x0D, 0x60, 0x21, 0x38, 0xDD, 0x45, 0xAD, 0xF4, 0xA0, 0x21, 0x97, 0x0B, 0x2F, 0x35, 0xA4, 0x30,\n0x1C, 0xDD, 0x50, 0x59, 0x6E, 0x8E, 0x28, 0x32, 0x18, 0x5F, 0xF7, 0x43, 0x23, 0xA9, 0x63, 0x40,\n0x4A, 0xB2, 0x31, 0xE4, 0x07, 0x7C, 0x1F, 0x7E, 0x00, 0xA6, 0x82, 0x00, 0x92, 0xD3, 0x92, 0xB4,\n0x52, 0xAE, 0x87, 0x1F, 0xD6, 0xB0, 0x68, 0xA8, 0xD9, 0x72, 0x53, 0x2B, 0xBA, 0xA5, 0x72, 0x70,\n0x44, 0x8E, 0x82, 0x0C, 0x49, 0x30, 0x15, 0xF0, 0xE0, 0x13, 0x60, 0x08, 0x02, 0xA8, 0xAC, 0x17,\n0x5A, 0x69, 0xBE, 0xD2, 0xB0, 0x97, 0x16, 0x86, 0xF5, 0x40, 0x1C, 0x83, 0x58, 0x8F, 0x45, 0xAD,\n0xA8, 0x89, 0xE2, 0x73, 0xAB, 0x48, 0x31, 0x4E, 0x8E, 0x21, 0x79, 0x4C, 0x8E, 0x24, 0x98, 0x0E,\n0x7A, 0xF8, 0x05, 0x60, 0x29, 0x48, 0xF6, 0x32, 0xE4, 0x76, 0x38, 0xCA, 0x10, 0xC4, 0xB1, 0xA5,\n0xE8, 0xDB, 0x62, 0xAF, 0xE2, 0x96, 0x46, 0x71, 0x99, 0xB2, 0xB8, 0x20, 0x91, 0x84, 0x32, 0x0F,\n0x7C, 0x06, 0x8C, 0x00, 0xE8, 0xAC, 0x6C, 0x34, 0x1E, 0x87, 0x18, 0x7E, 0xE9, 0x37, 0x74, 0x21,\n0x0E, 0x2F, 0xC5, 0x7A, 0xB9, 0xE1, 0xBA, 0x58, 0x2A, 0xD2, 0x52, 0xB7, 0xFD, 0x46, 0xC5, 0x58,\n0x74, 0x56, 0x28, 0xA5, 0x69, 0x3B, 0xF8, 0x0C, 0x88, 0xA0, 0x13, 0x17, 0x8B, 0x74, 0x1C, 0x62,\n0x18, 0x84, 0xDC, 0xF1, 0x31, 0xFC, 0xDA, 0x6F, 0x38, 0xBE, 0xA1, 0xF6, 0x29, 0xB2, 0xDE, 0xA8,\n0xA5, 0x5E, 0xF7, 0xB3, 0x9C, 0x23, 0x05, 0x24, 0x92, 0x60, 0x2A, 0xE0, 0xE1, 0x07, 0x60, 0x52,\n0x82, 0xFC, 0x6E, 0x97, 0xA1, 0x56, 0x9A, 0x4E, 0xC3, 0x7A, 0x20, 0x8E, 0x6F, 0xA8, 0x1E, 0x8B,\n0xBA, 0x2E, 0xA2, 0xC8, 0xB3, 0x9B, 0x6C, 0xBD, 0x89, 0x62, 0x8C, 0xC9, 0x38, 0x13, 0x51, 0xEA,\n0x12, 0x69, 0x4B, 0x07, 0x3E, 0x3F, 0x51, 0x93, 0x1E, 0x61, 0x1A, 0xAA, 0x95, 0x7A, 0x1C, 0x16,\n0x86, 0xDF, 0x0A, 0xC3, 0xE1, 0x88, 0xE3, 0x14, 0x5D, 0x8C, 0xE7, 0xEB, 0x3A, 0x13, 0x92, 0x41,\n0x06, 0x25, 0x49, 0xE8, 0xE4, 0x67, 0xC0, 0xD9, 0x61, 0x29, 0xBD, 0xDF, 0x68, 0x3E, 0xA3, 0xE1,\n0x7B, 0x15, 0x7F, 0xB6, 0x8A, 0x0C, 0x46, 0xB7, 0xD4, 0x7D, 0xC1, 0xF9, 0x3D, 0xFF, 0xCB, 0xD3,\n0x53, 0x2E, 0x09, 0x25, 0x9A, 0x0A, 0x76, 0xF8, 0x45, 0xE4, 0x67, 0xC2, 0x3F, 0xCC, 0xDB, 0x31,\n0x6F, 0xD3, 0x40, 0x18, 0xC6, 0x71, 0x09, 0xC4, 0xC2, 0xC4, 0x0A, 0x52, 0xA6, 0x02, 0x0B, 0x12,\n0x02, 0x04, 0x2B, 0x42, 0x62, 0x61, 0xE9, 0x92, 0xA4, 0x71, 0x2E, 0x92, 0x03, 0xB6, 0xE5, 0xB8,\n0x49, 0x21, 0xA4, 0x4D, 0xF8, 0xFE, 0x3C, 0xEF, 0xBD, 0x67, 0x3F, 0x76, 0xDE, 0x5A, 0x47, 0x2B,\n0xC0, 0xF9, 0xDF, 0x25, 0x5D, 0xA0, 0x49, 0xEE, 0x97, 0xB3, 0xE3, 0xAA, 0xFD, 0x61, 0xB6, 0xA1,\n0x39, 0x1D, 0xDE, 0xD1, 0x10, 0x59, 0x43, 0x64, 0x0D, 0xFF, 0x1F, 0x22, 0x22, 0xE2, 0xFD, 0x14,\n0x1B, 0x46, 0x5E, 0xF9, 0x83, 0x51, 0x01, 0xDB, 0xF5, 0x1C, 0x5C, 0x49, 0x19, 0x89, 0x7C, 0xBD,\n0x1B, 0xF0, 0xE8, 0xC1, 0x70, 0x24, 0x85, 0x21, 0xAF, 0x2B, 0x02, 0xA2, 0x12, 0x76, 0x4F, 0x87,\n0xBC, 0xC4, 0x8F, 0x1B, 0xA2, 0x01, 0x0C, 0x8D, 0x62, 0xE4, 0xC3, 0x4D, 0x44, 0xB1, 0xEF, 0xE3,\n0x0D, 0x14, 0x5F, 0x37, 0x67, 0xC6, 0xEF, 0x37, 0x6D, 0x43, 0x66, 0x25, 0x03, 0x25, 0xEB, 0x91,\n0x23, 0x1F, 0x23, 0x9F, 0x7D, 0x9C, 0x9B, 0xEF, 0xB2, 0x0D, 0xCF, 0x3F, 0x79, 0x42, 0xC4, 0xD3,\n0xA1, 0xC4, 0x43, 0xE9, 0xDF, 0x32, 0xB4, 0x88, 0x27, 0xAC, 0xD8, 0x3E, 0x31, 0x3E, 0xF5, 0x71,\n0x2B, 0xEA, 0x66, 0x14, 0x45, 0x61, 0x7C, 0xC9, 0xA2, 0x9B, 0xD2, 0x6A, 0x5A, 0xBB, 0x38, 0x1F,\n0x13, 0x42, 0x18, 0x02, 0xF1, 0x93, 0x02, 0x76, 0x8F, 0xA5, 0x3C, 0x94, 0x3E, 0x6E, 0x11, 0xB6,\n0x0D, 0x1F, 0x9E, 0x9E, 0xA1, 0x45, 0xBC, 0xBF, 0x22, 0x18, 0xED, 0xC7, 0x1B, 0x75, 0xF4, 0x92,\n0xE7, 0xD2, 0xB8, 0x61, 0x7C, 0xDE, 0x29, 0x4A, 0x69, 0x8B, 0xF3, 0xF1, 0x51, 0x48, 0x28, 0x86,\n0xD2, 0xEB, 0x73, 0xBF, 0x07, 0xC3, 0xB5, 0x61, 0xFB, 0x6F, 0x9E, 0x5E, 0xD1, 0x50, 0x09, 0x83,\n0xA1, 0x10, 0x1A, 0x43, 0x34, 0xB8, 0xE1, 0xBD, 0x15, 0xF9, 0xB3, 0x1B, 0xBC, 0xC8, 0x23, 0x46,\n0xFE, 0x4A, 0xAA, 0x38, 0x7E, 0x58, 0x61, 0x9D, 0x56, 0x1D, 0x45, 0x30, 0xD2, 0xB0, 0x93, 0xA1,\n0x44, 0x71, 0x3D, 0xF2, 0x11, 0xCF, 0x04, 0xC2, 0x1F, 0x5B, 0x31, 0x1C, 0xAF, 0xCE, 0x31, 0xD8,\n0x87, 0xD5, 0x53, 0x94, 0x85, 0x9A, 0x0F, 0x34, 0x48, 0x08, 0xC5, 0x10, 0x80, 0xA8, 0x65, 0xF8,\n0xEC, 0xB4, 0x0C, 0x8D, 0x22, 0x11, 0xE3, 0x8A, 0xA8, 0xA3, 0xC8, 0x63, 0x6A, 0xE6, 0x7B, 0x8A,\n0x56, 0xDD, 0xC6, 0x2B, 0xAF, 0xB8, 0x6D, 0x18, 0x47, 0x75, 0xFD, 0x96, 0xF1, 0xAC, 0x9E, 0x0D,\n0x84, 0xC1, 0x10, 0x53, 0x46, 0xBB, 0x4C, 0x06, 0xFB, 0x9C, 0xF5, 0x19, 0xE2, 0xE5, 0x9F, 0xA0,\n0x21, 0x10, 0xEF, 0xAA, 0x88, 0x6E, 0x57, 0x44, 0x59, 0xAB, 0x95, 0x0E, 0x02, 0xD6, 0xE3, 0x1B,\n0x14, 0xB7, 0xDB, 0x9F, 0x7B, 0x21, 0xB4, 0x59, 0xCB, 0x90, 0x85, 0xEB, 0xC1, 0xB3, 0xDF, 0x0F,\n0x07, 0xD2, 0x2D, 0x12, 0xC5, 0x6F, 0xE0, 0x1B, 0x77, 0xFD, 0xF2, 0x3C, 0xC7, 0xD3, 0xCD, 0x1B,\n0xC1, 0xCC, 0x65, 0x0F, 0x9C, 0x0B, 0x67, 0x43, 0x18, 0x8A, 0x60, 0xCC, 0x70, 0x48, 0x44, 0xBB,\n0x15, 0xED, 0x85, 0x46, 0xAF, 0x22, 0x82, 0x22, 0x18, 0x9B, 0x0B, 0xFF, 0xEC, 0x01, 0xD6, 0x80,\n0x8A, 0x98, 0xC1, 0x91, 0x92, 0x63, 0x35, 0x94, 0x76, 0x37, 0x23, 0x5B, 0x64, 0x6B, 0x1A, 0x3A,\n0xD6, 0xFB, 0x8D, 0xF6, 0x87, 0xA2, 0xF0, 0x84, 0x72, 0x77, 0x89, 0xA9, 0x43, 0xCA, 0x2F, 0xF3,\n0x76, 0x59, 0xEE, 0x84, 0xD0, 0xB1, 0x8F, 0xCE, 0xE9, 0x2E, 0x14, 0x43, 0x0F, 0xE8, 0x0D, 0x83,\n0xDF, 0xA9, 0x18, 0x46, 0x4E, 0x8B, 0x54, 0x7C, 0xD4, 0xA7, 0xE8, 0x44, 0xD1, 0x69, 0x99, 0x8C,\n0x2C, 0xC7, 0x64, 0x97, 0x32, 0x24, 0x5D, 0xC0, 0x6F, 0xB8, 0x69, 0x45, 0x51, 0x1C, 0xF6, 0x23,\n0x16, 0xE7, 0xB4, 0x8D, 0xA2, 0x5D, 0xEF, 0x0A, 0x31, 0xC4, 0xF4, 0xD1, 0x90, 0x91, 0xD2, 0xC9,\n0x74, 0x98, 0x24, 0xC4, 0x97, 0xC6, 0xB0, 0x0C, 0x86, 0xE5, 0xA9, 0x19, 0xFE, 0xA1, 0x22, 0x52,\n0x45, 0x9F, 0x57, 0x44, 0xA2, 0xE8, 0xBA, 0xE5, 0x18, 0x6D, 0x40, 0x54, 0x13, 0x06, 0xC6, 0x50,\n0xE1, 0x19, 0x77, 0x70, 0xFC, 0x77, 0xED, 0x0F, 0xD3, 0xE9, 0xB4, 0xF0, 0x91, 0x11, 0x55, 0x95,\n0x95, 0x4C, 0x31, 0x60, 0x28, 0xA3, 0xD3, 0x1B, 0x97, 0x38, 0x97, 0xF8, 0x9E, 0x94, 0x08, 0x86,\n0xBE, 0x93, 0x32, 0x24, 0x62, 0x54, 0xB1, 0x2C, 0x83, 0x62, 0x09, 0xC5, 0x04, 0x88, 0x0E, 0xBD,\n0x73, 0xEF, 0x09, 0xA8, 0x84, 0xFE, 0xA6, 0x7E, 0x14, 0x3C, 0x26, 0xC4, 0x90, 0xA6, 0xD3, 0xDD,\n0xCD, 0xCB, 0x11, 0x3A, 0xB3, 0xDD, 0x81, 0xEB, 0x96, 0xFF, 0xF4, 0xF2, 0xB0, 0x9B, 0x78, 0x43,\n0x56, 0x15, 0xD5, 0x71, 0x78, 0x76, 0xA9, 0x0C, 0xCC, 0x90, 0x93, 0xE9, 0xD0, 0x02, 0xA3, 0x06,\n0xD4, 0xFB, 0x32, 0x29, 0x43, 0x8F, 0x2E, 0xA4, 0xC6, 0x70, 0xBD, 0xBE, 0xA3, 0xE1, 0x40, 0x8A,\n0x25, 0xF2, 0x8A, 0x65, 0xF9, 0xA4, 0x4C, 0x34, 0x27, 0xA3, 0x55, 0x0A, 0xC8, 0x14, 0x33, 0x4F,\n0x51, 0x8E, 0xB5, 0xD1, 0xAA, 0xCB, 0xAA, 0x1D, 0xD6, 0x52, 0x05, 0x83, 0xE2, 0x74, 0x82, 0xFD,\n0xE8, 0x01, 0xBE, 0xDC, 0xD2, 0x59, 0x24, 0xFB, 0x8F, 0x05, 0xF2, 0xF9, 0xAF, 0xDD, 0x04, 0x84,\n0x30, 0x94, 0x59, 0x74, 0xAA, 0x3A, 0x98, 0x33, 0x4C, 0x25, 0xA4, 0xE2, 0x12, 0x2D, 0x16, 0x0B,\n0x87, 0x5B, 0x82, 0x2F, 0x4A, 0xA8, 0x8C, 0xA1, 0x8B, 0x3A, 0x35, 0x94, 0x36, 0x43, 0x18, 0xB2,\n0x5E, 0x44, 0x2A, 0xE2, 0xE9, 0x96, 0x4D, 0x72, 0x64, 0x49, 0x92, 0x37, 0x41, 0x10, 0xF7, 0x0B,\n0x15, 0xC4, 0xC0, 0x94, 0xC2, 0x9B, 0x1B, 0xF7, 0x95, 0xF1, 0x6B, 0x87, 0x05, 0xF6, 0x4D, 0xE0,\n0x78, 0x3D, 0xFA, 0x72, 0xAF, 0xAC, 0xFA, 0xFE, 0xB0, 0xBB, 0x9A, 0xC0, 0x50, 0x2B, 0x74, 0xB4,\n0x9B, 0xCF, 0x31, 0x6B, 0xC3, 0x19, 0x26, 0x4A, 0x41, 0xE9, 0x5B, 0x62, 0x7A, 0x45, 0x38, 0x86,\n0x92, 0x04, 0x53, 0x0D, 0x93, 0x60, 0xC8, 0x60, 0xA8, 0x88, 0x9B, 0x8D, 0x1A, 0x0E, 0x80, 0xD8,\n0xAF, 0xB8, 0x5E, 0x37, 0x8A, 0x17, 0x52, 0xC9, 0x92, 0x3A, 0xBC, 0x53, 0x5D, 0x3D, 0x96, 0x4B,\n0x31, 0x64, 0x55, 0x3A, 0xC3, 0x2A, 0xA5, 0x04, 0x14, 0x42, 0x32, 0xEA, 0xE2, 0x92, 0x71, 0x72,\n0x05, 0xC8, 0x33, 0x62, 0xBC, 0xFD, 0x93, 0x0C, 0xE1, 0xE8, 0xFA, 0x70, 0x05, 0x41, 0x31, 0x84,\n0x62, 0xE8, 0xEB, 0xF4, 0xAB, 0xCC, 0xE2, 0x6B, 0x30, 0xC4, 0x0C, 0x91, 0x11, 0x29, 0xA3, 0x10,\n0xD6, 0x8C, 0x74, 0x34, 0x5B, 0x91, 0x05, 0x43, 0x69, 0x08, 0x43, 0x22, 0xB2, 0x96, 0x61, 0x50,\n0xBC, 0xA8, 0x3B, 0x02, 0x84, 0x9F, 0x10, 0xFA, 0x96, 0x9A, 0xBC, 0x8F, 0xB5, 0x19, 0x46, 0x35,\n0xC3, 0x08, 0xCD, 0xAB, 0x39, 0x16, 0x4F, 0x23, 0x21, 0x0D, 0xA1, 0x28, 0x8E, 0x02, 0xB9, 0xEF,\n0xF1, 0x8B, 0x72, 0x9E, 0x5D, 0x63, 0x0B, 0x22, 0x35, 0xA4, 0x22, 0x19, 0x15, 0x52, 0x77, 0xA2,\n0x34, 0x93, 0x39, 0x0B, 0xA5, 0x32, 0xE5, 0x15, 0xA8, 0xA1, 0x32, 0xD2, 0xD0, 0x28, 0x1A, 0x43,\n0x34, 0x80, 0x61, 0xBF, 0xE2, 0x66, 0xB3, 0xF6, 0xD1, 0x90, 0x8A, 0xA8, 0xDE, 0x85, 0xA1, 0xA5,\n0x5B, 0x62, 0x23, 0xA2, 0x60, 0x38, 0x93, 0xE1, 0xAB, 0x64, 0x42, 0x10, 0x03, 0x2B, 0xD7, 0x38,\n0xCA, 0x6A, 0x62, 0x4D, 0x95, 0x90, 0x8C, 0xEA, 0xA8, 0x92, 0x35, 0xCE, 0x0B, 0x66, 0x23, 0xE1,\n0xFE, 0xD7, 0xE1, 0x4A, 0x9B, 0x04, 0x43, 0xCB, 0x18, 0x9A, 0xC3, 0x91, 0x8A, 0x9E, 0x91, 0x90,\n0x18, 0x86, 0xB0, 0xC3, 0xD8, 0x63, 0xC8, 0x86, 0x32, 0xB4, 0x8A, 0x9B, 0x46, 0x91, 0x84, 0x88,\n0x86, 0x5E, 0x91, 0x2D, 0x95, 0x90, 0x8A, 0x24, 0xFC, 0xCD, 0xDD, 0xBD, 0xAC, 0x46, 0x11, 0x84,\n0x61, 0x18, 0x06, 0x0F, 0x88, 0x92, 0x85, 0x2E, 0xBC, 0x02, 0x71, 0x25, 0x82, 0x88, 0xB8, 0x74,\n0xE3, 0x42, 0x6F, 0x20, 0x87, 0x16, 0x26, 0x32, 0x4A, 0x98, 0xE0, 0x2E, 0x44, 0xEF, 0xDF, 0xFF,\n0xAB, 0xAF, 0xA6, 0xDF, 0xB6, 0xFF, 0x94, 0x35, 0x93, 0x2C, 0x32, 0x33, 0x6F, 0x75, 0x37, 0xE2,\n0x21, 0x11, 0x1F, 0xFF, 0x6A, 0x33, 0x76, 0xF4, 0x2C, 0xC6, 0xD0, 0x61, 0x18, 0x69, 0x32, 0xA6,\n0x84, 0x56, 0x34, 0xA3, 0xFB, 0x1D, 0x94, 0xAF, 0x5E, 0xF7, 0x7A, 0x75, 0x7D, 0xF5, 0xBB, 0xF8,\n0x01, 0x58, 0x19, 0x51, 0x94, 0xE0, 0x3F, 0x8A, 0x67, 0x54, 0x08, 0x31, 0x3C, 0x3F, 0x39, 0x3F,\n0xD7, 0xE9, 0x26, 0x86, 0x55, 0xF1, 0xD8, 0x84, 0xC9, 0x90, 0xEE, 0xCB, 0x30, 0x2B, 0xFE, 0x1A,\n0x15, 0x5B, 0x88, 0xDF, 0x50, 0x3C, 0xD7, 0x32, 0xA3, 0x15, 0x45, 0xB8, 0x40, 0x31, 0x1C, 0x4D,\n0x18, 0x67, 0x8C, 0x41, 0xAC, 0xAA, 0xA8, 0xC5, 0x20, 0xC2, 0x08, 0x64, 0x19, 0xCB, 0xDF, 0x7F,\n0xAE, 0xAE, 0xAE, 0xAF, 0x5F, 0x4D, 0x86, 0xF2, 0xEB, 0xF5, 0xF5, 0xD5, 0xD5, 0x9F, 0xDF, 0xE8,\n0x09, 0x70, 0x46, 0x68, 0xC1, 0x38, 0x1D, 0x84, 0x3A, 0x74, 0xC9, 0x8C, 0x0A, 0xC1, 0x30, 0xD4,\n0x69, 0x43, 0x18, 0x65, 0x48, 0x6B, 0x43, 0xBA, 0x0F, 0x43, 0x10, 0xA9, 0x20, 0xA2, 0x48, 0x20,\n0xCE, 0x37, 0x54, 0x33, 0x16, 0xC7, 0x13, 0x2B, 0xBA, 0x33, 0x2D, 0x26, 0x51, 0xBF, 0x7C, 0x18,\n0x32, 0x88, 0x66, 0x8C, 0x83, 0xC4, 0xD2, 0x2B, 0x03, 0xE6, 0x41, 0xB4, 0x20, 0x93, 0x68, 0x43,\n0x00, 0x31, 0x94, 0xA0, 0x0C, 0x81, 0xCC, 0xBB, 0xE9, 0xF1, 0xE9, 0x71, 0x18, 0xD2, 0xDA, 0x90,\n0xEE, 0xC9, 0x30, 0x2B, 0x0A, 0x11, 0xC5, 0x36, 0x22, 0x9D, 0xD7, 0x16, 0x3A, 0x4F, 0xBC, 0xA1,\n0x5A, 0x11, 0x48, 0x6F, 0xA8, 0xDF, 0xE3, 0x20, 0x46, 0x31, 0x33, 0xAA, 0x4D, 0x01, 0x75, 0x45,\n0x92, 0x5B, 0xA2, 0x09, 0x75, 0x2A, 0x0C, 0x69, 0x42, 0x68, 0x45, 0xE6, 0x50, 0xCB, 0x84, 0x5E,\n0x22, 0x3C, 0xBD, 0x88, 0xCB, 0xD8, 0x48, 0x48, 0x18, 0xDE, 0x43, 0x09, 0x11, 0x45, 0x10, 0x8F,\n0xF3, 0x28, 0x7A, 0x43, 0x9D, 0xEF, 0xA8, 0x27, 0x28, 0x6A, 0x91, 0x76, 0xB2, 0x88, 0x59, 0x84,\n0x31, 0x29, 0x42, 0xA9, 0x05, 0x9B, 0x0E, 0xC8, 0x2C, 0x48, 0xE6, 0x63, 0x0A, 0x3D, 0x83, 0xBA,\n0x48, 0xD0, 0x0B, 0x40, 0x0C, 0x47, 0xC2, 0x13, 0x14, 0x6F, 0x18, 0xC4, 0x49, 0xBF, 0x8E, 0x47,\n0x43, 0xBA, 0x3F, 0xC3, 0x7C, 0x5B, 0x6C, 0x2A, 0xBA, 0xE6, 0x2C, 0xDA, 0x31, 0xAA, 0x8A, 0x4C,\n0x23, 0xD9, 0x31, 0xDF, 0x18, 0xA1, 0x6C, 0x07, 0x9B, 0x25, 0x01, 0x84, 0xD0, 0x0B, 0x42, 0x2D,\n0x13, 0x9A, 0x31, 0xDD, 0x0E, 0x31, 0x84, 0x10, 0x43, 0xCD, 0x60, 0x61, 0x3C, 0xD6, 0x82, 0x70,\n0xE7, 0xE6, 0x30, 0x29, 0xE6, 0xFB, 0x22, 0x8C, 0x42, 0x1C, 0x19, 0x81, 0xF4, 0x30, 0xA6, 0x3B,\n0x23, 0xE3, 0xC8, 0x30, 0xC2, 0x98, 0xEE, 0x8E, 0x2A, 0x39, 0x62, 0x95, 0xDD, 0x32, 0x20, 0xE1,\n0x17, 0xD9, 0x0F, 0xC1, 0x3C, 0x85, 0xF4, 0x8D, 0x0C, 0xB8, 0xDE, 0x4B, 0xA7, 0x8C, 0x61, 0xB8,\n0x3B, 0xF7, 0xC3, 0x4D, 0x14, 0x29, 0xBF, 0x6C, 0x43, 0x93, 0x3D, 0xD5, 0x8C, 0x69, 0x1C, 0x89,\n0x5B, 0x63, 0x96, 0x84, 0xB2, 0x1B, 0x7E, 0x06, 0xA4, 0x04, 0x98, 0x3F, 0xB4, 0x68, 0x6F, 0xA4,\n0x66, 0x84, 0x50, 0x82, 0xB3, 0x3F, 0xD2, 0xEC, 0xA4, 0x61, 0x52, 0x0C, 0x46, 0x3E, 0xEA, 0xFF,\n0x9F, 0x23, 0xF7, 0x46, 0x5E, 0xBC, 0x89, 0x43, 0x85, 0x22, 0xAD, 0xEC, 0x98, 0x20, 0x09, 0x01,\n0xF2, 0x84, 0x11, 0x6E, 0x8C, 0x1E, 0x7C, 0xE8, 0xB5, 0x00, 0xD1, 0x03, 0x50, 0x21, 0x98, 0xEF,\n0x85, 0x5A, 0xF9, 0xC3, 0xC3, 0x5D, 0xF9, 0xD8, 0x22, 0x23, 0xA2, 0xA8, 0x50, 0xCC, 0x8C, 0x79,\n0x1E, 0x2B, 0xA5, 0x19, 0xCB, 0xC5, 0x31, 0x91, 0x2B, 0x49, 0xAE, 0xCE, 0x66, 0x94, 0x60, 0x62,\n0xB9, 0x7D, 0xEC, 0x9E, 0x64, 0x3D, 0xF2, 0x1E, 0x4A, 0x7E, 0xBD, 0x5B, 0x8C, 0x8C, 0x20, 0x33,\n0x88, 0xE1, 0x4D, 0x1F, 0xE2, 0xEF, 0xC4, 0xEB, 0x34, 0x7D, 0x45, 0x57, 0x19, 0xA3, 0x99, 0x22,\n0x8C, 0x79, 0x5F, 0x1D, 0xF8, 0xA3, 0xAA, 0x9B, 0xBD, 0x16, 0x17, 0x55, 0x42, 0x5E, 0xCC, 0x51,\n0x79, 0x8F, 0xFD, 0xDE, 0x75, 0x43, 0x0E, 0x3B, 0xBF, 0xDD, 0xB4, 0x7D, 0xD2, 0x42, 0x7C, 0x6A,\n0xD1, 0x9A, 0x41, 0x00, 0x15, 0x84, 0x6E, 0x0A, 0xB8, 0x4B, 0x86, 0x59, 0x11, 0xC6, 0xF1, 0x2F,\n0x35, 0x50, 0xCC, 0x8C, 0xE5, 0x15, 0xF1, 0x61, 0xBD, 0xB8, 0x43, 0x8E, 0x5D, 0x0A, 0xF3, 0x12,\n0xC8, 0x1A, 0xB3, 0xF9, 0xD3, 0x9C, 0xF6, 0x2C, 0xA6, 0x3F, 0xCB, 0xBA, 0xB9, 0xFA, 0xF5, 0xFE,\n0x5E, 0x3A, 0xCE, 0xB4, 0xE6, 0xF9, 0xBD, 0xD1, 0xA2, 0x24, 0x3C, 0x5D, 0x5A, 0x7F, 0x92, 0x51,\n0x17, 0x35, 0x08, 0x31, 0xDC, 0x81, 0xD7, 0xBC, 0x37, 0x56, 0xA4, 0xAA, 0xA8, 0x1E, 0xCF, 0x19,\n0x2B, 0xE4, 0x50, 0xCE, 0x61, 0xD6, 0xF9, 0xB0, 0x18, 0x60, 0xD4, 0xA9, 0xE3, 0x32, 0x30, 0x57,\n0x2B, 0x2C, 0x93, 0x28, 0x9C, 0xED, 0x84, 0x9E, 0xE4, 0xE2, 0x2D, 0xD4, 0xCC, 0x67, 0x40, 0xBF,\n0x06, 0x51, 0x83, 0x8F, 0xF1, 0x63, 0x00, 0x55, 0xE2, 0x73, 0x8F, 0x26, 0x86, 0x4F, 0xA2, 0x5D,\n0x34, 0x6C, 0x29, 0xBA, 0x89, 0x62, 0x54, 0x15, 0x5F, 0x5E, 0x94, 0xBF, 0xED, 0x7F, 0x78, 0xAA,\n0x15, 0x3D, 0x1C, 0x04, 0x29, 0xCA, 0x6F, 0x3A, 0xA8, 0x3C, 0x87, 0xB4, 0xD0, 0xC3, 0x2C, 0x66,\n0xF4, 0x8A, 0xE2, 0xB2, 0xD2, 0x81, 0xE3, 0xDD, 0xB3, 0xDD, 0x62, 0xA5, 0xF7, 0xE4, 0xF7, 0x45,\n0x83, 0xFD, 0xD6, 0x9B, 0x86, 0x2E, 0x3A, 0x4E, 0xE9, 0x82, 0xA6, 0x80, 0x91, 0x09, 0x0B, 0xE0,\n0xEE, 0x1A, 0xF6, 0x14, 0x55, 0x51, 0xE4, 0x01, 0xAA, 0x70, 0x2C, 0x0F, 0xDF, 0x5C, 0x84, 0xA5,\n0x9E, 0xBE, 0x89, 0xC7, 0x6F, 0x34, 0x8C, 0xEF, 0x63, 0xB9, 0xF6, 0xA3, 0x54, 0x8B, 0x38, 0xCC,\n0x38, 0x6F, 0xB5, 0x5E, 0x9B, 0x75, 0x59, 0x2E, 0x4E, 0x62, 0x5C, 0x7C, 0x44, 0x7A, 0x67, 0xEB,\n0x9D, 0x61, 0x1E, 0x7C, 0x00, 0x42, 0xC8, 0x03, 0x51, 0xC5, 0xF0, 0x49, 0xB4, 0xE3, 0x86, 0x1B,\n0x29, 0xC2, 0xC8, 0x7F, 0xC4, 0xA0, 0xF8, 0x77, 0x6F, 0x22, 0x3D, 0xD3, 0xA8, 0xA7, 0xFE, 0x8E,\n0x26, 0x82, 0x0D, 0x4D, 0xBA, 0xD4, 0xBA, 0x45, 0xE3, 0x8F, 0x5B, 0xE8, 0x4B, 0xB3, 0x06, 0x2D,\n0xB7, 0xF8, 0x17, 0x2F, 0x96, 0x77, 0x8E, 0xF7, 0xA7, 0xEF, 0x62, 0x3D, 0x8C, 0x47, 0xDA, 0x9E,\n0x8F, 0x8F, 0xB4, 0x3D, 0xE6, 0x99, 0xB6, 0xC9, 0x43, 0x6D, 0x7B, 0x61, 0x88, 0x62, 0x67, 0x4B,\n0x35, 0xA1, 0x19, 0x5F, 0x46, 0x85, 0xB0, 0x32, 0x16, 0xC3, 0xF2, 0x4C, 0xA3, 0x9F, 0x4D, 0x1D,\n0x3E, 0x0D, 0x6E, 0x19, 0x87, 0x57, 0x1C, 0x3A, 0x75, 0xFD, 0xA1, 0xD5, 0xCC, 0xB8, 0xE9, 0x68,\n0x05, 0x1C, 0x78, 0xA9, 0x0F, 0x65, 0xA3, 0xD0, 0xCF, 0x51, 0xD5, 0xCF, 0x93, 0x71, 0x17, 0xBA,\n0x3D, 0xF0, 0x68, 0x69, 0x32, 0x84, 0x70, 0x97, 0x0D, 0xB7, 0x54, 0xAC, 0x55, 0x45, 0xF7, 0xD0,\n0x8C, 0x4A, 0x8C, 0x7A, 0x50, 0xDC, 0x4F, 0xFC, 0xBF, 0x78, 0x50, 0x5A, 0xC6, 0xB1, 0x7C, 0x20,\n0xC0, 0x02, 0xF9, 0x79, 0x99, 0x93, 0xAB, 0x1E, 0x20, 0xFF, 0xA1, 0xF3, 0xE6, 0xE5, 0x96, 0xEB,\n0x35, 0x6D, 0xA8, 0x97, 0xE1, 0xDF, 0x35, 0x3C, 0x18, 0x3E, 0x45, 0x47, 0xC3, 0x91, 0x3E, 0xC1,\n0xE2, 0xDD, 0x10, 0x3F, 0xBF, 0x19, 0xE1, 0xCB, 0xE8, 0x69, 0x22, 0xDC, 0x43, 0xC3, 0xAE, 0x62,\n0x66, 0xB4, 0x62, 0x66, 0x14, 0xA2, 0xF2, 0xE7, 0x50, 0x45, 0x43, 0x1C, 0xFE, 0xE4, 0x8D, 0x90,\n0xFC, 0x1C, 0x2D, 0xB5, 0xCA, 0xE5, 0x19, 0x06, 0xB7, 0xCF, 0x6F, 0x4C, 0xA7, 0x96, 0xDE, 0x8D,\n0xF3, 0x27, 0x57, 0xBC, 0x18, 0x44, 0x78, 0x54, 0x08, 0x4B, 0xE3, 0x18, 0x56, 0x46, 0x11, 0xD6,\n0xE6, 0x63, 0xB8, 0x6F, 0x86, 0xB7, 0x51, 0xE4, 0xCE, 0x58, 0x0D, 0x33, 0x23, 0xD3, 0xA8, 0x44,\n0xE8, 0xFC, 0x79, 0x71, 0xD3, 0x96, 0x6F, 0xCB, 0xFA, 0xA8, 0x6B, 0xFD, 0xD2, 0x47, 0x1D, 0xF5,\n0x7C, 0xFB, 0xB6, 0x7E, 0xDD, 0xF8, 0x3D, 0xBE, 0xD4, 0x9E, 0xE9, 0x5C, 0xC6, 0x5B, 0xFC, 0xEC,\n0x46, 0x45, 0xFF, 0xFE, 0xA9, 0x84, 0x25, 0x08, 0x1D, 0x63, 0x58, 0x08, 0xF7, 0xDF, 0x30, 0x2B,\n0xB6, 0xB7, 0xD4, 0xCC, 0x88, 0x22, 0x8C, 0x47, 0xCA, 0x8C, 0x0A, 0x47, 0x23, 0x3A, 0xF1, 0xC5,\n0x8A, 0xDE, 0xA8, 0x65, 0x1C, 0x6F, 0xF5, 0x05, 0x5D, 0x97, 0x82, 0xAB, 0x4B, 0xDF, 0x52, 0xBF,\n0xB6, 0x1C, 0x6F, 0xE0, 0x7F, 0x16, 0x95, 0xF9, 0x76, 0xE2, 0xD3, 0x59, 0x42, 0x10, 0x42, 0x05,\n0xE1, 0x4D, 0x63, 0xB8, 0xBF, 0x86, 0x0D, 0xC5, 0xFE, 0x30, 0x76, 0x19, 0x23, 0x10, 0x71, 0x04,\n0x32, 0x22, 0x53, 0xA6, 0xFC, 0xB5, 0xE0, 0x01, 0xA8, 0x00, 0x94, 0xDF, 0x28, 0x28, 0x42, 0x95,\n0x08, 0xD9, 0x49, 0x37, 0x1D, 0xC3, 0x3D, 0x31, 0xDC, 0x42, 0x31, 0x0F, 0x63, 0x8B, 0xD1, 0xC1,\n0x98, 0x21, 0x41, 0xDC, 0x3E, 0x00, 0x25, 0x48, 0x12, 0x6C, 0x13, 0xFE, 0x7F, 0x0C, 0xF7, 0xDC,\n0x10, 0xC5, 0xED, 0x86, 0xB1, 0xCF, 0xD8, 0x76, 0x64, 0x22, 0x6F, 0xE5, 0x07, 0x20, 0xE5, 0x21,\n0xEC, 0x12, 0x1E, 0xC8, 0x56, 0x8A, 0xE2, 0x2D, 0x87, 0xB1, 0xCD, 0xC8, 0x38, 0xE2, 0x88, 0x24,\n0x94, 0x6E, 0x23, 0x3C, 0xFC, 0x00, 0xCC, 0x82, 0x0C, 0xE1, 0x96, 0x84, 0xFB, 0x6D, 0x98, 0xB7,\n0xD4, 0xBB, 0x32, 0x32, 0x8E, 0x38, 0xB6, 0x21, 0xC1, 0x24, 0x02, 0x0F, 0xBF, 0x8E, 0x60, 0x26,\n0xE4, 0x66, 0x58, 0x33, 0xE1, 0x81, 0x6C, 0xA5, 0x5B, 0x0E, 0xA3, 0x42, 0xB1, 0xC9, 0xE8, 0x71,\n0xEC, 0x39, 0x42, 0xD9, 0x0F, 0xBF, 0x0C, 0x88, 0x60, 0xDA, 0x47, 0x21, 0xEC, 0x8C, 0xE1, 0x21,\n0x18, 0xA2, 0xB8, 0xDD, 0x30, 0x66, 0x46, 0xC6, 0x11, 0xC7, 0x26, 0x24, 0x6D, 0x85, 0x07, 0x20,\n0x82, 0x79, 0x08, 0xDB, 0x84, 0xFD, 0x31, 0xDC, 0x4F, 0xC3, 0x8D, 0x15, 0x3B, 0x8C, 0x8C, 0x63,\n0xC3, 0xD1, 0x90, 0x48, 0xF6, 0xEB, 0x01, 0x22, 0xC8, 0x10, 0xF6, 0x09, 0x0F, 0x6F, 0x0C, 0x93,\n0xE2, 0xDD, 0x18, 0xDB, 0x8E, 0x40, 0xAA, 0xBB, 0xF8, 0xB5, 0x04, 0xDB, 0x84, 0x79, 0x27, 0x3D,\n0x3C, 0xC3, 0xA8, 0xAB, 0xE8, 0x50, 0xEC, 0x30, 0x26, 0x47, 0x24, 0x4D, 0xE9, 0xB6, 0xD1, 0xC3,\n0x0F, 0xC0, 0x9E, 0xA0, 0x08, 0xDB, 0x63, 0x78, 0x30, 0x5B, 0x69, 0x53, 0x71, 0x7B, 0xC6, 0x3C,\n0x8E, 0x38, 0x02, 0x89, 0xA4, 0x28, 0xA9, 0x25, 0x07, 0x1F, 0x7E, 0x8C, 0x20, 0x82, 0x5B, 0x13,\n0x1E, 0xD8, 0x18, 0x5A, 0xB1, 0xCF, 0x88, 0x62, 0x66, 0x64, 0x1C, 0xF3, 0x3C, 0x66, 0x48, 0x28,\n0x13, 0x67, 0xA6, 0x83, 0x0F, 0xBF, 0x8E, 0x20, 0xFB, 0x68, 0x26, 0x3C, 0xD4, 0x31, 0x74, 0x7D,\n0xC5, 0x3E, 0x23, 0xE3, 0x88, 0x23, 0x90, 0x48, 0xB6, 0x34, 0x09, 0xBB, 0x36, 0x60, 0x12, 0x64,\n0x08, 0x3B, 0x84, 0x87, 0x6A, 0xF8, 0x97, 0x3D, 0x3B, 0xC6, 0x91, 0x18, 0x86, 0x81, 0x20, 0x98,\n0xEA, 0xFF, 0x2F, 0x3E, 0x5C, 0xB2, 0x1D, 0x34, 0x16, 0x03, 0x9A, 0x16, 0xBC, 0xB0, 0xD8, 0xB9,\n0xA2, 0xC2, 0x30, 0x11, 0x8A, 0xD7, 0x18, 0x3D, 0x47, 0x1C, 0x81, 0x44, 0xB2, 0x18, 0x9F, 0x13,\n0x02, 0x44, 0xF0, 0x78, 0x42, 0x14, 0xDB, 0x8C, 0x38, 0x1A, 0x12, 0x49, 0x2C, 0xB3, 0x1E, 0x7E,\n0xFF, 0x80, 0x15, 0x41, 0x13, 0xBE, 0xDB, 0x30, 0x8C, 0x31, 0x32, 0xDA, 0xD1, 0x90, 0x48, 0x42,\n0x09, 0x28, 0x21, 0x87, 0x9E, 0xFD, 0x10, 0x1C, 0x42, 0x29, 0xD6, 0x19, 0xB3, 0x23, 0x92, 0x50,\n0x9A, 0xD3, 0x76, 0xF0, 0x19, 0xD0, 0x82, 0x75, 0xC2, 0xF7, 0x19, 0x16, 0x19, 0xBF, 0xCE, 0x11,\n0x47, 0x20, 0x45, 0x89, 0xA6, 0x92, 0x1D, 0x7C, 0x00, 0x26, 0x41, 0x08, 0x4F, 0x9A, 0x61, 0x50,\n0x0C, 0x8C, 0xDF, 0x1C, 0x81, 0x44, 0x12, 0xCB, 0x9C, 0x1E, 0x09, 0x10, 0x41, 0x08, 0xBD, 0xC2,\n0x63, 0x66, 0x78, 0x23, 0xA3, 0x21, 0x2D, 0xE9, 0x84, 0x26, 0x3F, 0x00, 0x83, 0xE0, 0xD1, 0x84,\n0x28, 0x66, 0xC6, 0xEC, 0x28, 0xC8, 0x40, 0x99, 0xF9, 0x00, 0x44, 0xF0, 0x0A, 0xE1, 0xCB, 0x0D,\n0x3B, 0x8C, 0x38, 0x1A, 0x12, 0x49, 0xAA, 0xE0, 0xE1, 0x07, 0x20, 0x59, 0xF0, 0x6C, 0xC2, 0xCC,\n0x98, 0x1D, 0x05, 0x89, 0x24, 0x96, 0x39, 0xF4, 0xF0, 0x33, 0xA0, 0x05, 0x21, 0x3C, 0xF0, 0x92,\n0xD2, 0xAA, 0x32, 0xCA, 0x51, 0x90, 0x50, 0x52, 0xC4, 0x33, 0x9F, 0x01, 0x3F, 0x49, 0xF0, 0xE0,\n0x19, 0x06, 0xC6, 0xEC, 0x08, 0xA4, 0x25, 0xB1, 0xCC, 0xA1, 0x87, 0x5F, 0x14, 0x1C, 0xC2, 0x1E,\n0x23, 0x8E, 0x86, 0x34, 0x25, 0x05, 0x39, 0xE9, 0x19, 0x50, 0x67, 0x74, 0x08, 0x23, 0x63, 0x76,\n0x34, 0x64, 0xD4, 0x24, 0xE3, 0x19, 0x50, 0x82, 0x79, 0x84, 0x47, 0x12, 0x16, 0x18, 0xE5, 0x08,\n0x24, 0x92, 0xFD, 0xF0, 0x33, 0x60, 0x1A, 0xE1, 0xB9, 0x86, 0x30, 0x16, 0x1C, 0x0D, 0x49, 0x77,\n0xF0, 0x01, 0x68, 0xC1, 0x21, 0xBC, 0xC0, 0x98, 0x1D, 0x81, 0xA4, 0x06, 0x9F, 0x01, 0xB3, 0xE0,\n0x10, 0xC2, 0x58, 0x75, 0xB4, 0xA4, 0xAB, 0xD0, 0xE1, 0x07, 0x20, 0x82, 0x43, 0xD8, 0x65, 0xCC,\n0x90, 0x58, 0x16, 0xB3, 0x9E, 0x01, 0x47, 0xF0, 0x1A, 0xA3, 0x1D, 0x0D, 0x69, 0x49, 0xAA, 0xE9,\n0xD9, 0x0F, 0xC0, 0x21, 0xDC, 0xE7, 0x08, 0xA4, 0x29, 0x9D, 0xD9, 0xC8, 0x7C, 0x06, 0x74, 0x6B,\n0x08, 0x23, 0xA3, 0x1D, 0xB3, 0x64, 0xB6, 0x0C, 0x7A, 0xC9, 0x0F, 0xC1, 0x21, 0x6C, 0x3B, 0x66,\n0x49, 0x8A, 0x72, 0xF6, 0x1B, 0xC1, 0x2D, 0x8C, 0x86, 0xCC, 0x96, 0x39, 0xEB, 0x65, 0xC0, 0x11,\n0xDC, 0xEF, 0x48, 0x7D, 0x3B, 0x0B, 0x0E, 0x61, 0xD7, 0x11, 0xC8, 0x27, 0x5A, 0x23, 0x78, 0xD1,\n0xF1, 0x47, 0x20, 0xD7, 0x08, 0x36, 0x1D, 0x9F, 0x91, 0xC4, 0x6F, 0x04, 0xF7, 0x41, 0xEE, 0xA7,\n0x5C, 0x03, 0xB8, 0x17, 0xD2, 0xDD, 0xCC, 0x37, 0x82, 0xB4, 0x1B, 0xD2, 0x75, 0xF1, 0x06, 0x70,\n0x7F, 0xAB, 0x50, 0x05, 0x6E, 0xFC, 0x42, 0xCF, 0x48, 0xE6, 0xC6, 0xEF, 0x6F, 0x03, 0x0F, 0x70,\n0x04, 0xF7, 0x68, 0xFC, 0x0D, 0x3D, 0x80, 0x08, 0xEC, 0xD1, 0xD8, 0x1B, 0xF2, 0x60, 0x34, 0xF6,\n0x86, 0x17, 0x18, 0x8D, 0xB9, 0x51, 0x30, 0xA4, 0x01, 0x00, 0x38, 0x7F, 0x0D, 0x28, 0x47, 0x27,\n0x6B, 0x0F, 0x00, 0x00, 0x00, 0x00, 0x49, 0x45, 0x4E, 0x44, 0xAE, 0x42, 0x60, 0x82\n};"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/Classes/runtime/PlayEnable_png.cpp",
    "content": "#include \"ResData.h\"\nconst unsigned char __playEnablePngData[20254] = {\n0x89, 0x50, 0x4E, 0x47, 0x0D, 0x0A, 0x1A, 0x0A, 0x00, 0x00, 0x00, 0x0D, 0x49, 0x48, 0x44, 0x52,\n0x00, 0x00, 0x01, 0xC4, 0x00, 0x00, 0x02, 0x20, 0x08, 0x03, 0x00, 0x00, 0x00, 0x2C, 0xBC, 0xE9,\n0x24, 0x00, 0x00, 0x01, 0x86, 0x50, 0x4C, 0x54, 0x45, 0x00, 0x00, 0x00, 0x1A, 0x93, 0xFF, 0x1C,\n0x9F, 0xE7, 0x20, 0xB2, 0xFF, 0x1C, 0x9B, 0xFF, 0x1B, 0x98, 0xFF, 0x1D, 0xA2, 0xE8, 0x00, 0x00,\n0x00, 0x21, 0xB9, 0xFF, 0x00, 0x00, 0x00, 0x1C, 0x9E, 0xFF, 0x1D, 0xA5, 0xFF, 0x1E, 0xAA, 0xFF,\n0x1F, 0xAD, 0xFF, 0x25, 0xCE, 0xFF, 0x26, 0xD3, 0xFF, 0x1A, 0x90, 0xFF, 0x28, 0xDF, 0xFF, 0x1D,\n0xA5, 0xE9, 0x27, 0xD8, 0xFF, 0x22, 0xBE, 0xFF, 0x22, 0xC0, 0xFF, 0x21, 0xBC, 0xFF, 0x1C, 0x9C,\n0xE6, 0x23, 0xC2, 0xFF, 0x17, 0x81, 0xDC, 0x23, 0xC6, 0xFF, 0x17, 0x81, 0xF2, 0x19, 0x8B, 0xFF,\n0x24, 0xCA, 0xFF, 0x1F, 0xB0, 0xFF, 0x20, 0xB5, 0xFF, 0x21, 0xB7, 0xFF, 0x17, 0x84, 0xF8, 0x23,\n0xC4, 0xFF, 0x19, 0x8E, 0xFF, 0x1D, 0xA1, 0xFF, 0x1D, 0xA3, 0xFF, 0x25, 0xD1, 0xFF, 0x17, 0x82,\n0xEE, 0x29, 0xE4, 0xFF, 0x27, 0xDB, 0xFF, 0x24, 0xC8, 0xFF, 0x00, 0x00, 0x00, 0x16, 0x7C, 0xEC,\n0x24, 0xCC, 0xFF, 0x1A, 0x93, 0xE3, 0x00, 0x00, 0x00, 0x26, 0xD6, 0xFF, 0x1B, 0x96, 0xFF, 0x1A,\n0x94, 0xEB, 0x18, 0x8A, 0xE8, 0x16, 0x7F, 0xED, 0x18, 0x87, 0xFA, 0x27, 0xDD, 0xFF, 0x28, 0xE2,\n0xFF, 0x18, 0x86, 0xFF, 0x19, 0x8F, 0xE2, 0x1B, 0x97, 0xE4, 0x1E, 0xA9, 0xEB, 0x1E, 0xA8, 0xFF,\n0x17, 0x85, 0xE8, 0x19, 0x8E, 0xEA, 0x29, 0xE6, 0xFF, 0x16, 0x7F, 0xEF, 0x00, 0x00, 0x00, 0x1E,\n0xA6, 0xEA, 0x17, 0x84, 0xF0, 0x16, 0x7F, 0xE6, 0x16, 0x7B, 0xDA, 0x18, 0x89, 0xFF, 0x18, 0x89,\n0xE0, 0x16, 0x7B, 0xE9, 0x1E, 0xAB, 0xEF, 0x16, 0x7E, 0xDB, 0x17, 0x81, 0xF5, 0x18, 0x84, 0xF4,\n0x1D, 0xA1, 0xEE, 0x01, 0x09, 0x0F, 0x20, 0xB1, 0xF5, 0x17, 0x85, 0xDE, 0x18, 0x88, 0xF4, 0x1F,\n0xAD, 0xF3, 0x1E, 0xA6, 0xF2, 0x18, 0x88, 0xF0, 0x16, 0x7B, 0xE0, 0x20, 0xB4, 0xFA, 0x00, 0x00,\n0x00, 0x1B, 0x9A, 0xF0, 0x19, 0x8D, 0xF6, 0x1C, 0x9F, 0xF6, 0x1B, 0x99, 0xF7, 0x00, 0x00, 0x00,\n0x00, 0x02, 0x03, 0x00, 0x00, 0x00, 0x1A, 0x93, 0xF3, 0x15, 0x78, 0xD9, 0x00, 0x00, 0x00, 0x00,\n0x00, 0x00, 0x19, 0x8E, 0xF0, 0x1C, 0x9B, 0xEB, 0x15, 0x79, 0xE7, 0x17, 0x81, 0xEA, 0x1B, 0x98,\n0xE6, 0x1E, 0xAA, 0xF8, 0x18, 0x86, 0xEC, 0x17, 0x82, 0xE2, 0x1A, 0x93, 0xF9, 0x15, 0x76, 0xD8,\n0x19, 0x8C, 0xFA, 0x21, 0xB8, 0xFC, 0x1F, 0xAE, 0xFA, 0x1F, 0xA8, 0xFF, 0x1D, 0xA4, 0xFA, 0x15,\n0x75, 0xD6, 0x01, 0x07, 0x08, 0x25, 0xBD, 0xF7, 0x18, 0x85, 0xD0, 0x14, 0x70, 0xB0, 0x15, 0x79,\n0xC2, 0x0D, 0x4B, 0x75, 0x1B, 0x99, 0xE8, 0x1B, 0x9A, 0xDF, 0x11, 0x62, 0x9B, 0x17, 0x82, 0xD0,\n0x1A, 0x97, 0xE9, 0x14, 0x70, 0xAF, 0x15, 0x7A, 0xD5, 0x17, 0x7E, 0xDA, 0x22, 0xC0, 0xEB, 0xCD,\n0x93, 0xC6, 0x51, 0x00, 0x00, 0x00, 0x82, 0x74, 0x52, 0x4E, 0x53, 0x00, 0xD5, 0xD5, 0xD5, 0xD5,\n0xD5, 0xD5, 0x01, 0xD5, 0x05, 0xD5, 0xD5, 0xD5, 0xD5, 0xD5, 0xD5, 0xD5, 0xD5, 0xD5, 0xD5, 0xD5,\n0xD5, 0xD5, 0xD5, 0xD5, 0xD5, 0xD5, 0xD5, 0xD5, 0xD5, 0xD5, 0xD5, 0xD5, 0xD5, 0xD5, 0xD5, 0xD5,\n0xD5, 0xD5, 0xD5, 0xD5, 0xD5, 0xD5, 0x0D, 0xD5, 0xD5, 0xD5, 0x07, 0xD5, 0xD5, 0xD5, 0xD5, 0xD5,\n0xD5, 0xD5, 0xD5, 0xD5, 0xD5, 0xD5, 0xD5, 0xD5, 0xD5, 0xD5, 0xD5, 0xD5, 0x0A, 0xD5, 0xD5, 0xD5,\n0xD5, 0xD5, 0xD5, 0xD5, 0xD5, 0xD5, 0xD5, 0xD5, 0xD5, 0x11, 0xD5, 0xD5, 0xD5, 0xD5, 0xD5, 0xD5,\n0xD5, 0xD5, 0x1B, 0xD5, 0xD5, 0xD5, 0xD5, 0x37, 0x16, 0x28, 0xD5, 0xD5, 0x22, 0x30, 0xD5, 0xD5,\n0xD5, 0xD5, 0xD5, 0xD5, 0xD5, 0xD5, 0xD5, 0xD5, 0xD5, 0xD5, 0xD5, 0xD5, 0xD5, 0xD5, 0x42, 0xD4,\n0x6C, 0x3B, 0x4E, 0x1E, 0xC1, 0x90, 0x2C, 0x83, 0xA8, 0x60, 0xA3, 0xBF, 0xAF, 0x15, 0xEB, 0x01,\n0x58, 0x00, 0x00, 0x4C, 0xC5, 0x49, 0x44, 0x41, 0x54, 0x78, 0xDA, 0xEC, 0xDA, 0x4B, 0x6E, 0xEA,\n0x30, 0x14, 0x80, 0xE1, 0xAB, 0x0C, 0xB0, 0x98, 0x32, 0xC9, 0x22, 0x90, 0x60, 0x4C, 0x3A, 0x82,\n0x05, 0xB0, 0x83, 0x2E, 0x03, 0x48, 0x02, 0x69, 0xB7, 0x7E, 0xED, 0xB4, 0xE8, 0x34, 0xEF, 0x07,\n0x24, 0xF1, 0x91, 0xFE, 0xAF, 0xA3, 0xAA, 0x9D, 0xFD, 0xB2, 0x8F, 0x6D, 0xF8, 0x07, 0x00, 0x00,\n0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n0x00, 0x7C, 0x62, 0xCC, 0x3F, 0xE8, 0x66, 0x1C, 0x3A, 0xEA, 0x66, 0xCC, 0x7A, 0xBF, 0x5E, 0x93,\n0x51, 0x35, 0xB3, 0xBE, 0xDD, 0xB6, 0xC7, 0x3D, 0x19, 0x35, 0x33, 0xFB, 0xEB, 0x21, 0xCB, 0x33,\n0x52, 0x51, 0x2D, 0xB3, 0xDF, 0x26, 0x87, 0x43, 0x7A, 0x27, 0xA3, 0x62, 0x36, 0x62, 0x7A, 0xB0,\n0x1E, 0x31, 0x15, 0xD5, 0x32, 0xEB, 0xE3, 0xE5, 0xE0, 0x24, 0xEC, 0xA9, 0x6A, 0xD9, 0x88, 0xD7,\n0xC3, 0x8F, 0x6F, 0xF6, 0x54, 0xAD, 0xD6, 0xFB, 0xF3, 0xE1, 0xE9, 0xF2, 0x49, 0x45, 0x95, 0xF2,\n0xA1, 0xE8, 0xEC, 0x2C, 0xF6, 0x54, 0x9D, 0x7E, 0x86, 0xE2, 0xEE, 0x29, 0x8D, 0xB7, 0x54, 0x54,\n0xC7, 0x0D, 0xC5, 0x9D, 0xF5, 0xEC, 0x98, 0x7C, 0xB1, 0x18, 0xF5, 0x71, 0x43, 0x71, 0xF7, 0xD7,\n0xF7, 0x9D, 0xC5, 0xA8, 0x8D, 0x1B, 0x8A, 0x85, 0x88, 0xD1, 0xEE, 0x72, 0x66, 0x31, 0xEA, 0xE2,\n0x86, 0xE2, 0xAE, 0x24, 0xBB, 0xB2, 0x18, 0x55, 0xC9, 0x87, 0x62, 0x19, 0x8B, 0x51, 0x19, 0x3B,\n0x14, 0x6D, 0x35, 0x16, 0xA3, 0x6A, 0xD5, 0xA1, 0xE8, 0x7E, 0x98, 0x8C, 0xAA, 0x54, 0x86, 0x62,\n0xF4, 0x2B, 0xE3, 0x98, 0xAA, 0x46, 0x71, 0x28, 0x46, 0x7F, 0xB1, 0x18, 0xB5, 0x30, 0x32, 0x14,\n0xA3, 0xB2, 0x94, 0xC5, 0xA8, 0xC4, 0xEF, 0x50, 0x8C, 0xEA, 0xB8, 0xD7, 0x54, 0x2A, 0x2A, 0x90,\n0x0F, 0xC5, 0xA8, 0x09, 0x1F, 0x17, 0xAB, 0xE0, 0x86, 0x62, 0xD4, 0x8C, 0xCB, 0x86, 0x06, 0xF9,\n0x50, 0x8C, 0x5A, 0x5C, 0x78, 0x13, 0xF7, 0x9F, 0x1B, 0x8A, 0x51, 0x9B, 0x94, 0x2D, 0xD5, 0x7B,\n0x6E, 0x28, 0x46, 0x4F, 0x9C, 0x6F, 0x74, 0xEA, 0x18, 0x8A, 0xA1, 0xF3, 0xE0, 0xCA, 0xE8, 0x37,\n0x37, 0x14, 0x1B, 0xF2, 0x89, 0xEC, 0x4E, 0x45, 0xAF, 0xD9, 0xA1, 0x98, 0xD5, 0x06, 0x8C, 0x7E,\n0x7F, 0xDC, 0x6F, 0xC9, 0x8D, 0x53, 0xAA, 0xCF, 0x6C, 0xC4, 0xE2, 0x50, 0x7C, 0x06, 0x2C, 0xCA,\n0x5F, 0xE1, 0xA8, 0xE8, 0x29, 0x37, 0x14, 0xAB, 0x4B, 0xB0, 0x8A, 0x53, 0xAA, 0xC7, 0xFE, 0x0C,\n0x45, 0x09, 0x58, 0x27, 0xE1, 0xE2, 0xEF, 0xAF, 0x7C, 0x28, 0x3E, 0x77, 0xD1, 0x56, 0xEE, 0xE2,\n0x4F, 0x45, 0x2F, 0xB9, 0xA1, 0x58, 0x97, 0x90, 0x2D, 0x55, 0x11, 0x37, 0x14, 0xCB, 0x09, 0xD9,\n0x52, 0x95, 0xB1, 0x43, 0xF1, 0x33, 0x0A, 0xFB, 0xE2, 0xAE, 0xE1, 0x27, 0x37, 0x14, 0xC3, 0xDE,\n0x1E, 0x67, 0x06, 0xA3, 0x87, 0xDC, 0x50, 0x94, 0x48, 0x0C, 0x46, 0x95, 0xEC, 0x50, 0xBC, 0x85,\n0x2D, 0x82, 0xA2, 0x30, 0xE1, 0x7B, 0x1B, 0xFE, 0x69, 0x1E, 0x8A, 0x41, 0x3D, 0x1E, 0xE1, 0x3C,\n0x54, 0x37, 0x14, 0x83, 0x36, 0xE1, 0x85, 0x4F, 0xA7, 0x7C, 0x53, 0x19, 0x8A, 0x41, 0xA7, 0x94,\n0xE3, 0x8D, 0x67, 0x8A, 0x43, 0x31, 0xE8, 0x23, 0xCC, 0x62, 0x1E, 0xC4, 0xBD, 0x62, 0x23, 0xC6,\n0x52, 0xB0, 0x27, 0xEE, 0xFD, 0x5E, 0x31, 0x36, 0xE2, 0x39, 0x6B, 0x2E, 0xC8, 0xF1, 0xC6, 0x7F,\n0xB6, 0xE1, 0x7E, 0x7B, 0xCF, 0xC2, 0x60, 0x30, 0x8E, 0x37, 0xBE, 0x30, 0x66, 0x7F, 0xDC, 0xDE,\n0x92, 0x60, 0x8C, 0xC7, 0x99, 0x8A, 0x1E, 0x70, 0xCB, 0xF0, 0x18, 0xA7, 0xC1, 0x48, 0x69, 0xCC,\n0x21, 0x75, 0x71, 0xF9, 0x56, 0x7A, 0xCD, 0x82, 0x2E, 0xAB, 0x22, 0xF9, 0x03, 0x87, 0xD4, 0xC5,\n0xE5, 0x5B, 0xE9, 0x25, 0xEC, 0x5F, 0xAF, 0xDA, 0x32, 0xB9, 0x53, 0x71, 0x39, 0xDD, 0x5B, 0xE9,\n0xAA, 0x0F, 0xAE, 0x1A, 0x8B, 0x91, 0xAD, 0x34, 0x19, 0x19, 0x50, 0x04, 0x5C, 0x35, 0xE6, 0x27,\n0x0D, 0xED, 0xA9, 0x34, 0x1C, 0x59, 0x50, 0xD8, 0xFF, 0xFE, 0xA2, 0xE2, 0x32, 0xDC, 0x56, 0x7A,\n0x7E, 0xBC, 0x94, 0x50, 0x2A, 0x72, 0x61, 0x9C, 0x9B, 0x8C, 0xC3, 0xEC, 0xC5, 0x82, 0xE2, 0x41,\n0xC5, 0x99, 0x74, 0x8F, 0xC3, 0xD5, 0x68, 0x29, 0xD7, 0xFE, 0xB9, 0x48, 0xC3, 0xBA, 0x9B, 0xC5,\n0xEA, 0x15, 0x7C, 0x36, 0x35, 0x2F, 0x63, 0xEA, 0xC6, 0xE1, 0xEA, 0x45, 0x19, 0x8F, 0x37, 0x33,\n0x92, 0x71, 0xD8, 0x3B, 0xE1, 0xA6, 0x8C, 0x8A, 0x4B, 0x91, 0x23, 0xCD, 0x3D, 0xE9, 0xDB, 0x70,\n0xD3, 0xA6, 0x5C, 0xF1, 0x4E, 0xC5, 0x26, 0xD3, 0x1F, 0x69, 0x3A, 0x02, 0xF6, 0x0E, 0xC9, 0x13,\n0xDC, 0xC4, 0xA4, 0x61, 0xE5, 0x86, 0x3F, 0xAE, 0xA0, 0xA0, 0xE2, 0x6C, 0xE4, 0x58, 0xFA, 0xAE,\n0x84, 0x42, 0x2A, 0x5E, 0xA9, 0x38, 0x15, 0x69, 0x58, 0x39, 0x96, 0xBE, 0x56, 0x50, 0x50, 0x71,\n0x72, 0x72, 0xB5, 0x48, 0xBB, 0x1A, 0x6E, 0xC6, 0xA2, 0xE2, 0xA4, 0xA4, 0x61, 0x9C, 0x4D, 0x93,\n0x50, 0x32, 0x6E, 0xA8, 0x58, 0x36, 0xED, 0xF5, 0x70, 0x58, 0xC2, 0xD3, 0x8F, 0x4D, 0x1B, 0xD6,\n0xE2, 0xA4, 0x6A, 0xAE, 0x87, 0x3D, 0x13, 0x9E, 0x4A, 0xDA, 0x63, 0xB2, 0x16, 0xC5, 0x14, 0x0D,\n0xAF, 0xC3, 0x1B, 0x9E, 0x44, 0xDF, 0x90, 0xAC, 0xC5, 0xA9, 0xD4, 0x5C, 0xF1, 0xBB, 0x13, 0x9E,\n0xC4, 0xA0, 0x8E, 0xAE, 0x22, 0x6F, 0x37, 0x3E, 0x34, 0x3C, 0xF5, 0x57, 0x57, 0x91, 0x17, 0xB8,\n0x29, 0x1A, 0xDE, 0xC2, 0x21, 0x0D, 0x4F, 0xC3, 0x50, 0xB1, 0x6C, 0x8E, 0x86, 0x23, 0x12, 0x7E,\n0x3C, 0xF5, 0xCA, 0x48, 0xC5, 0x65, 0x1B, 0xD6, 0xE4, 0x13, 0xCD, 0x29, 0xA9, 0x28, 0x96, 0x6E,\n0xD8, 0x18, 0xB0, 0x3B, 0x64, 0xB9, 0x22, 0x9F, 0x2F, 0xBE, 0xB7, 0x61, 0x38, 0xAA, 0xE1, 0x47,\n0xB7, 0xB6, 0x8A, 0x59, 0xCC, 0xF7, 0x6E, 0xDE, 0xDC, 0x50, 0x34, 0x37, 0xAC, 0x16, 0x1C, 0xD8,\n0x91, 0x8A, 0xE2, 0xBD, 0x77, 0x8B, 0x31, 0x0D, 0x3F, 0x86, 0x68, 0xAA, 0xC8, 0x77, 0xE0, 0xDE,\n0xD7, 0xB0, 0x65, 0x33, 0x6D, 0x49, 0x38, 0x36, 0x23, 0x15, 0xFF, 0xB3, 0x77, 0x27, 0x2F, 0x4E,\n0x44, 0x41, 0x1C, 0xC7, 0x61, 0x04, 0x17, 0x70, 0x01, 0xB7, 0x88, 0xE0, 0x82, 0x07, 0x41, 0xC5,\n0xE0, 0xD5, 0x78, 0xD2, 0x9B, 0x87, 0x28, 0xD8, 0x90, 0x83, 0xE0, 0x2D, 0xA0, 0x27, 0x83, 0xE0,\n0x3A, 0x1A, 0xF1, 0x4F, 0xB7, 0xAA, 0xBA, 0xAB, 0xBF, 0xEF, 0x55, 0xBF, 0x4E, 0x62, 0xD4, 0x4B,\n0xBA, 0x7F, 0xE3, 0x8E, 0x88, 0xE3, 0x67, 0xAA, 0x5E, 0xD5, 0xEB, 0xA8, 0xFF, 0xD8, 0xF0, 0x94,\n0xDE, 0xB5, 0xED, 0x6A, 0x08, 0xE1, 0x3E, 0xE9, 0x51, 0xFC, 0x31, 0xBE, 0xC2, 0xFF, 0x9F, 0x19,\n0x92, 0xFD, 0x0C, 0xF7, 0x57, 0xFC, 0xF4, 0x60, 0xBC, 0x46, 0xFD, 0x4B, 0xC3, 0xEF, 0x62, 0x38,\n0xD9, 0xC5, 0x10, 0xC2, 0xFD, 0x33, 0x2A, 0xFE, 0x07, 0xC3, 0x33, 0xF2, 0xFC, 0x70, 0x47, 0xC3,\n0xB2, 0xE0, 0xF3, 0x26, 0xF6, 0x0D, 0xCB, 0x3E, 0x8A, 0x5F, 0x46, 0xC5, 0xBF, 0x34, 0xDC, 0x0D,\n0x11, 0x40, 0xFC, 0x36, 0x64, 0x27, 0x45, 0xEE, 0x51, 0xC7, 0x47, 0x1A, 0x7F, 0x61, 0xF8, 0xE2,\n0x78, 0x2F, 0x43, 0x0A, 0xAF, 0x14, 0xAA, 0x73, 0x23, 0xE3, 0x78, 0x01, 0xF7, 0xCF, 0x0C, 0x35,\n0x5B, 0x0D, 0x69, 0xA4, 0xD1, 0xEF, 0x55, 0x78, 0x0B, 0x8A, 0xCF, 0x77, 0x56, 0x1C, 0x97, 0xFE,\n0x7D, 0x17, 0xC4, 0x1F, 0x18, 0x76, 0x11, 0x21, 0xC4, 0xB0, 0xD1, 0xC1, 0xD0, 0xF3, 0x52, 0x00,\n0x5F, 0xB6, 0x6F, 0x59, 0x76, 0x53, 0x5C, 0x8F, 0xEB, 0xE2, 0x7E, 0x86, 0x9F, 0x26, 0xDB, 0x0B,\n0x11, 0xC1, 0x92, 0x9E, 0x7C, 0x2D, 0x68, 0xF6, 0x89, 0xB7, 0xAE, 0xE4, 0x76, 0x45, 0xFB, 0x8B,\n0x6F, 0xE3, 0x70, 0xB3, 0xCF, 0x85, 0xE9, 0xD6, 0x42, 0x44, 0xB0, 0x44, 0xF8, 0xF2, 0xD5, 0xCB,\n0x24, 0x7C, 0x4F, 0x05, 0x83, 0xE3, 0x0E, 0x8A, 0x3F, 0xC6, 0x11, 0x75, 0x8F, 0x25, 0x7F, 0xB6,\n0xA9, 0x10, 0xF3, 0x69, 0xA6, 0xD4, 0x40, 0x51, 0x23, 0x46, 0x88, 0x24, 0x90, 0x91, 0xB1, 0xD0,\n0x50, 0xC7, 0x75, 0x71, 0x9F, 0x25, 0x7F, 0x4B, 0x21, 0x42, 0x08, 0xE0, 0x76, 0x42, 0x24, 0xBD,\n0xB7, 0x6E, 0x51, 0x04, 0x51, 0xD6, 0xC5, 0x71, 0x44, 0xDD, 0x63, 0x41, 0xDC, 0x50, 0x88, 0x91,\n0x30, 0x05, 0xDC, 0x4C, 0x18, 0x7A, 0x2C, 0x53, 0x6B, 0xA9, 0xA1, 0x8E, 0xAF, 0xBA, 0xD9, 0x33,\n0x2C, 0x17, 0x7D, 0x88, 0xD6, 0x4B, 0x8B, 0x82, 0x05, 0xBC, 0x8F, 0xF2, 0x69, 0xD1, 0x57, 0x91,\n0xAA, 0x58, 0x74, 0x2C, 0x20, 0x8E, 0x8B, 0xC6, 0x1E, 0xCB, 0x45, 0x30, 0x84, 0xD0, 0x0D, 0xB7,\n0x0A, 0x2E, 0x5E, 0x2E, 0x16, 0xFA, 0x59, 0xBF, 0x61, 0xB1, 0x6F, 0xC6, 0xC8, 0x04, 0xC4, 0x0E,\n0xB9, 0x51, 0x71, 0x3D, 0x8E, 0xA8, 0x7F, 0xBC, 0x5C, 0x44, 0x44, 0xCA, 0x50, 0x0D, 0xE5, 0x0F,\n0xBC, 0x02, 0x31, 0x18, 0x36, 0x74, 0x1F, 0xDD, 0xAE, 0xF9, 0x9E, 0xBC, 0xD9, 0x8F, 0x85, 0x7A,\n0x94, 0x37, 0x18, 0x83, 0x22, 0x88, 0x92, 0xE3, 0x71, 0xB8, 0xD9, 0x7D, 0x30, 0xDD, 0x80, 0xD8,\n0x12, 0x3E, 0x57, 0xC2, 0xB2, 0x61, 0xCD, 0xE6, 0x82, 0xFE, 0xBD, 0xF7, 0xFE, 0x4D, 0xD3, 0x44,\n0x32, 0x56, 0x63, 0x7F, 0x29, 0x8E, 0x23, 0xEA, 0xCE, 0x43, 0x8D, 0x0F, 0xA6, 0x65, 0x43, 0xDF,\n0x0C, 0xCD, 0x10, 0xC4, 0xDC, 0xAF, 0xFE, 0x4A, 0xD8, 0xDE, 0x2B, 0x5E, 0x1D, 0x43, 0xFC, 0xD8,\n0x68, 0xBE, 0x94, 0x92, 0x34, 0x46, 0x14, 0xC3, 0xD1, 0x58, 0x2C, 0xC5, 0xF1, 0x2E, 0x7C, 0xD7,\n0xA1, 0x66, 0x3D, 0xE9, 0x43, 0x64, 0x2A, 0x85, 0x30, 0x11, 0xC4, 0x4F, 0xB9, 0xDE, 0x97, 0x62,\n0xAE, 0xC6, 0x5B, 0x8B, 0xE6, 0x90, 0x52, 0x8D, 0x41, 0x31, 0x94, 0xA2, 0x8E, 0xA8, 0xE3, 0x70,\n0xB3, 0xC3, 0x81, 0x78, 0x3C, 0x21, 0xD1, 0x90, 0x5E, 0x5A, 0x28, 0x42, 0xF7, 0x53, 0xA8, 0x8D,\n0x11, 0x5F, 0x01, 0x34, 0x46, 0x95, 0x4F, 0x14, 0x25, 0x1B, 0x4B, 0x71, 0x1C, 0x6E, 0x76, 0x69,\n0xA6, 0x0C, 0x35, 0x3D, 0x85, 0x28, 0xC1, 0x30, 0x3F, 0x08, 0x21, 0xDC, 0x82, 0xB8, 0x90, 0x4F,\n0x6A, 0xD9, 0x54, 0x24, 0x8E, 0x1D, 0xC6, 0x88, 0x38, 0x0E, 0x37, 0xBB, 0x0F, 0x35, 0x65, 0xC4,\n0xE6, 0xA6, 0x2D, 0x12, 0x22, 0x68, 0x89, 0x62, 0xA7, 0x4F, 0x9F, 0x96, 0x2F, 0xAF, 0xFA, 0x5B,\n0xB0, 0x0C, 0x7B, 0xC7, 0x2B, 0x18, 0xFB, 0x15, 0x3F, 0x8D, 0x37, 0x37, 0x5B, 0xFE, 0x9F, 0x19,\n0x86, 0x9A, 0x14, 0x31, 0xBD, 0x69, 0x83, 0x90, 0xC3, 0x90, 0x40, 0x97, 0xE4, 0x2A, 0x51, 0x48,\n0x2C, 0x17, 0x56, 0x8F, 0x16, 0x18, 0x63, 0x31, 0x46, 0xC4, 0xA3, 0x71, 0xB8, 0xD9, 0x7A, 0x20,\n0x92, 0x42, 0x19, 0x42, 0x68, 0x89, 0x82, 0x9E, 0x48, 0x07, 0xA0, 0x7F, 0x9D, 0xD6, 0x63, 0xAC,\n0x46, 0x41, 0x44, 0x31, 0x96, 0xE2, 0x78, 0x73, 0xB3, 0xCB, 0x96, 0x4F, 0xCA, 0x86, 0x91, 0xB0,\n0x55, 0x44, 0x30, 0x33, 0xBC, 0xEC, 0xE9, 0x90, 0xE2, 0xE8, 0x8A, 0x1C, 0x8C, 0x30, 0x46, 0x44,\n0x1B, 0x6E, 0xC6, 0x63, 0x71, 0xE3, 0x81, 0x38, 0x03, 0x31, 0xEB, 0xA5, 0xF3, 0xF9, 0xB3, 0x67,\n0xD5, 0xF3, 0xAA, 0x12, 0xC4, 0x8A, 0x56, 0x4A, 0x1D, 0x02, 0x88, 0x5E, 0x31, 0xFD, 0x8C, 0x28,\n0xB6, 0x8C, 0x05, 0xC4, 0x71, 0xE7, 0xDF, 0x72, 0x20, 0x22, 0x98, 0x23, 0x4A, 0x1D, 0x0A, 0x62,\n0x55, 0x99, 0x61, 0x1F, 0xE1, 0xED, 0xDB, 0x10, 0x22, 0x58, 0x0C, 0x8E, 0x1A, 0x1C, 0x0B, 0xC5,\n0x58, 0x56, 0xFC, 0x32, 0x1E, 0x8B, 0x7D, 0x07, 0xE2, 0x4C, 0x10, 0xDF, 0x82, 0x98, 0xCE, 0x34,\n0x82, 0x68, 0x86, 0x0D, 0x62, 0x43, 0xB8, 0x6A, 0x09, 0x6F, 0x4B, 0x7A, 0x11, 0xAF, 0x78, 0x0A,\n0x90, 0xA7, 0x61, 0x2C, 0x14, 0x23, 0x8A, 0x20, 0xB2, 0xF3, 0x17, 0x1B, 0xCA, 0xA9, 0xC1, 0xEA,\n0xDA, 0x86, 0x38, 0x53, 0xC4, 0x92, 0xA1, 0x74, 0xD2, 0xBA, 0x0C, 0x25, 0x2D, 0xE1, 0x4A, 0x04,\n0xB7, 0x1B, 0x42, 0x48, 0x70, 0x34, 0xC5, 0xC0, 0x08, 0x62, 0x68, 0xA9, 0x20, 0x72, 0x2C, 0x16,\n0xAE, 0x0D, 0xCF, 0x0C, 0x55, 0x51, 0xDE, 0x77, 0x39, 0x10, 0x03, 0x22, 0x86, 0x73, 0x35, 0xA4,\n0x0E, 0x21, 0xB4, 0xDC, 0x32, 0xC3, 0x76, 0x98, 0x29, 0xF2, 0x5D, 0xEB, 0x83, 0x34, 0x45, 0x1C,\n0x51, 0x2C, 0x1D, 0x8C, 0x20, 0x72, 0x2C, 0xC6, 0xF7, 0xE3, 0xEB, 0x97, 0xA1, 0x1E, 0x97, 0x62,\n0xF8, 0x66, 0x8D, 0x21, 0x88, 0x6E, 0x98, 0x9E, 0x87, 0x81, 0xF0, 0x16, 0x55, 0x58, 0xEA, 0xA2,\n0xD7, 0xF2, 0x94, 0x1C, 0x61, 0x5C, 0x94, 0x8B, 0x31, 0x2A, 0x72, 0x2C, 0x76, 0x0F, 0x85, 0x2F,\n0xEB, 0x81, 0x1E, 0x97, 0xF6, 0x1C, 0x58, 0x0C, 0xE3, 0x70, 0x6A, 0x85, 0x38, 0x17, 0x44, 0x0C,\n0x25, 0x6A, 0xB8, 0x82, 0xB0, 0x0E, 0x65, 0x98, 0x57, 0x20, 0x29, 0x49, 0xD2, 0x55, 0x5B, 0xC6,\n0x3A, 0x45, 0x45, 0x47, 0x64, 0x5B, 0x8C, 0x58, 0x32, 0x61, 0x1F, 0xCF, 0x3E, 0x0F, 0xF2, 0x72,\n0x55, 0xB7, 0x8B, 0x2F, 0xB3, 0x42, 0x37, 0x6D, 0x08, 0x65, 0x2E, 0x7D, 0xD6, 0x1A, 0xAE, 0xEA,\n0xB4, 0x84, 0x08, 0x52, 0x87, 0x65, 0xBB, 0x3B, 0x9A, 0x08, 0xE9, 0x8A, 0x91, 0xD1, 0x11, 0x51,\n0x14, 0xC6, 0x0C, 0xF1, 0x88, 0x4B, 0xD4, 0xE4, 0x83, 0xF1, 0xEB, 0x6C, 0x76, 0x3C, 0xC8, 0x6B,\n0xB9, 0x7A, 0xBB, 0xA0, 0x12, 0x53, 0x43, 0x8D, 0x12, 0xEA, 0x8A, 0x58, 0x23, 0xBE, 0x84, 0x90,\n0x4E, 0x9A, 0x55, 0x61, 0x80, 0x0B, 0x41, 0xD2, 0x11, 0x43, 0x31, 0xC2, 0xF8, 0xAA, 0x09, 0x8A,\n0x29, 0xE2, 0x11, 0x97, 0xA8, 0xBC, 0x23, 0xFA, 0xC1, 0xF8, 0x7D, 0x80, 0xA5, 0x58, 0x6F, 0x17,\n0x96, 0x62, 0x1D, 0x3E, 0x99, 0x3B, 0xA1, 0x1A, 0x1A, 0x21, 0x86, 0x20, 0xD2, 0x47, 0x0B, 0x86,\n0xD7, 0x25, 0x05, 0xC7, 0xEE, 0xC9, 0x68, 0xE9, 0xAB, 0xC5, 0x80, 0x38, 0x89, 0x7B, 0xC6, 0xA9,\n0xFA, 0x1D, 0x91, 0xD7, 0x19, 0x0F, 0x0D, 0x51, 0xB7, 0x8B, 0x9F, 0xB3, 0x88, 0xE8, 0x86, 0x1A,\n0x21, 0xCC, 0x0D, 0x57, 0x9D, 0x56, 0x5A, 0x42, 0x4C, 0xC8, 0xEE, 0x4B, 0xAE, 0xD7, 0xE9, 0x2A,\n0xC2, 0x18, 0x4A, 0xD1, 0x19, 0x59, 0xFB, 0x55, 0x11, 0xC4, 0x23, 0x7F, 0xB6, 0xC8, 0x47, 0xE3,\n0x0B, 0xEB, 0x28, 0x5F, 0x07, 0x57, 0x8A, 0xF6, 0x82, 0x0C, 0x10, 0x29, 0x44, 0x33, 0xD4, 0x3A,\n0xD4, 0x18, 0xE2, 0xBB, 0xB4, 0x0E, 0x21, 0x0C, 0xAD, 0x14, 0x42, 0x0C, 0x49, 0x2B, 0xE9, 0x3F,\n0x31, 0xAC, 0x1B, 0x51, 0xD1, 0x11, 0xAB, 0x27, 0xCF, 0xEB, 0x53, 0x11, 0x44, 0x1A, 0x2A, 0xDD,\n0x74, 0x32, 0x93, 0x7C, 0x1A, 0x5A, 0x29, 0xEA, 0x87, 0xEF, 0xF1, 0xAC, 0x49, 0x30, 0x54, 0xC6,\n0x68, 0x68, 0x88, 0x27, 0xAC, 0x97, 0xC6, 0xDD, 0xB0, 0x73, 0x18, 0x5E, 0x6F, 0x72, 0x3F, 0xA6,\n0x81, 0xE4, 0x64, 0x8C, 0xBB, 0x7F, 0x54, 0x34, 0xC6, 0xAE, 0xA2, 0x3F, 0x95, 0xA2, 0x9B, 0x1A,\n0xE2, 0xB7, 0x81, 0x5D, 0x90, 0xFB, 0x55, 0x4D, 0x44, 0x3C, 0x59, 0x03, 0x2A, 0x21, 0x86, 0x16,\n0x21, 0x34, 0xC3, 0x80, 0x48, 0x1F, 0xE5, 0x14, 0x84, 0x8F, 0xE0, 0xD8, 0x76, 0x55, 0x86, 0x54,\n0x14, 0xC3, 0xC2, 0x68, 0xED, 0xB4, 0xF2, 0x09, 0x15, 0xC4, 0x66, 0xCF, 0xA0, 0x9B, 0x0A, 0xA2,\n0xE4, 0xCB, 0xB0, 0xFA, 0xA9, 0x36, 0xD3, 0x59, 0x17, 0xD1, 0xEB, 0xB0, 0x1E, 0x4B, 0x2B, 0x11,\n0x7C, 0xD7, 0x18, 0x9E, 0x10, 0xC3, 0x30, 0xD2, 0x84, 0x32, 0xC4, 0x10, 0xC4, 0x52, 0x92, 0xC3,\n0x31, 0x5B, 0x35, 0x24, 0x2C, 0x8C, 0x28, 0x1A, 0xA3, 0x28, 0x66, 0x88, 0xCD, 0x9E, 0x41, 0x37,\n0xAD, 0x11, 0xD7, 0x83, 0xDA, 0x32, 0x98, 0x4C, 0x2D, 0x6E, 0xB8, 0x14, 0x40, 0x5F, 0x2E, 0xAC,\n0x0C, 0x8D, 0xD0, 0x0C, 0x85, 0x90, 0xDD, 0x02, 0x42, 0xAA, 0xD0, 0xD2, 0x11, 0xBC, 0x51, 0xA7,\n0x4F, 0x11, 0x46, 0x43, 0xBC, 0x8D, 0x62, 0x7E, 0x2E, 0x6A, 0x2D, 0x82, 0xA8, 0xE1, 0xE2, 0x46,\n0x7A, 0xCA, 0x8F, 0x06, 0x71, 0x50, 0x0B, 0x3F, 0x93, 0x69, 0x66, 0x78, 0xB4, 0xE4, 0x3C, 0x0C,\n0x88, 0x99, 0x21, 0x53, 0xA9, 0x21, 0x6E, 0xF6, 0x23, 0x6D, 0x47, 0x05, 0x11, 0x46, 0x53, 0x94,\n0x5F, 0x3D, 0x28, 0x4A, 0x78, 0xA4, 0x01, 0x22, 0x0D, 0x55, 0xDE, 0x17, 0xED, 0xA6, 0xAA, 0x38,\n0xB0, 0x2D, 0x83, 0x35, 0xDF, 0xD2, 0x4E, 0x35, 0x73, 0xCD, 0xB3, 0x6A, 0x6E, 0x84, 0x29, 0xE2,\n0xC2, 0x11, 0xF3, 0x7B, 0xB6, 0xB4, 0x0C, 0xCB, 0x78, 0x0F, 0x2D, 0xC1, 0x31, 0xCE, 0xA9, 0x97,\n0x2D, 0xAE, 0x98, 0x6E, 0xFD, 0x28, 0xDA, 0xF5, 0x1B, 0x88, 0x34, 0x54, 0xBD, 0xC3, 0x9F, 0x18,\n0xE2, 0xB0, 0xB6, 0x0C, 0x9A, 0x29, 0x88, 0xD2, 0x4B, 0x05, 0xD1, 0xDB, 0xA9, 0xA5, 0x3D, 0x10,\n0x6F, 0x8A, 0x61, 0x82, 0xC8, 0x66, 0xD1, 0x1A, 0xA6, 0x45, 0x88, 0x5F, 0x1E, 0x14, 0x25, 0x19,\n0x23, 0x9B, 0x06, 0x8A, 0x82, 0xB8, 0x4A, 0x15, 0x03, 0x22, 0x0D, 0x55, 0xBB, 0x29, 0x88, 0x9F,\n0x9E, 0x0E, 0xA4, 0x14, 0x9B, 0x3B, 0x53, 0x62, 0x86, 0x86, 0xA8, 0xF1, 0x42, 0x7C, 0xF7, 0xCA,\n0x0D, 0x6F, 0x9E, 0x90, 0x08, 0x21, 0x86, 0x8C, 0xA5, 0xF9, 0x40, 0x9A, 0x96, 0xE0, 0xF9, 0xF3,\n0xF2, 0xD9, 0x03, 0x24, 0xD5, 0x98, 0x1C, 0x8C, 0x9C, 0x8B, 0x20, 0xD2, 0x50, 0x2B, 0x4A, 0xB1,\n0x41, 0xA4, 0xA1, 0x5A, 0x37, 0x35, 0xC4, 0x61, 0x8D, 0x36, 0x34, 0x53, 0x10, 0xC5, 0x70, 0xA9,\n0x86, 0xD4, 0xE1, 0xBB, 0xB6, 0x0E, 0x75, 0x30, 0xA5, 0x0C, 0x31, 0x2C, 0x22, 0x52, 0x81, 0xE7,\n0x63, 0x50, 0x8C, 0x88, 0x92, 0xB6, 0x14, 0x25, 0xE1, 0x58, 0x94, 0xA0, 0x58, 0x23, 0xD2, 0x50,\n0xAD, 0x9B, 0x1A, 0xE2, 0xA0, 0x46, 0x9B, 0x53, 0xDA, 0x80, 0xA6, 0x01, 0x51, 0x0C, 0x97, 0x79,\n0x1D, 0xB2, 0x5C, 0x48, 0xD4, 0x30, 0x20, 0xD2, 0x4C, 0xD3, 0x56, 0x5A, 0xF6, 0xC3, 0x31, 0x9E,\n0x8C, 0xF9, 0x95, 0xB8, 0x2B, 0xDE, 0x6A, 0x14, 0x57, 0x0C, 0x37, 0x55, 0xA3, 0x08, 0xE2, 0x44,\n0x1B, 0xAA, 0xED, 0xBB, 0x29, 0xE2, 0xF1, 0x30, 0x46, 0x1B, 0xFD, 0xD8, 0x9D, 0x4E, 0x43, 0x37,\n0x55, 0xC3, 0x23, 0xEA, 0x30, 0x1A, 0x46, 0x44, 0x53, 0xF4, 0xF3, 0xD0, 0x01, 0x25, 0xDB, 0x10,\n0x39, 0x1B, 0x8B, 0xD7, 0x37, 0x57, 0x5B, 0xC5, 0x9A, 0x71, 0xE5, 0x8A, 0x82, 0x58, 0xC9, 0xB1,\n0x38, 0x47, 0x51, 0xF3, 0xED, 0xCD, 0xD3, 0x33, 0x72, 0xBC, 0xAF, 0x1B, 0xC4, 0x01, 0x8D, 0x36,\n0x7A, 0xC1, 0xB1, 0x06, 0x11, 0x43, 0x09, 0x86, 0x1A, 0x37, 0xE4, 0x3C, 0x8C, 0x0B, 0xA2, 0x95,\n0x61, 0x8E, 0x08, 0xE1, 0xDD, 0xBB, 0x77, 0xED, 0x0B, 0x4B, 0xA8, 0x46, 0x89, 0x77, 0x54, 0x67,\n0x4C, 0xD6, 0xC5, 0xAE, 0xE2, 0x73, 0x55, 0xAC, 0xE4, 0x55, 0x5B, 0x17, 0xB3, 0x5A, 0x94, 0x8D,\n0x42, 0xFE, 0xAD, 0x08, 0x37, 0x1C, 0xCE, 0x68, 0x63, 0xFD, 0x67, 0x9A, 0x20, 0xBE, 0x6D, 0xEB,\n0xF0, 0x64, 0xC1, 0xF0, 0x26, 0xCD, 0x34, 0x7F, 0xF4, 0xE4, 0x88, 0xE6, 0x87, 0x21, 0x56, 0x0E,\n0x48, 0x1C, 0xD1, 0x15, 0x9D, 0xD1, 0x47, 0x54, 0x86, 0x1B, 0x4D, 0x49, 0x71, 0x3E, 0xCF, 0x8E,\n0xC5, 0xC9, 0xE4, 0xF3, 0x83, 0xA7, 0x74, 0xD3, 0xE1, 0x8C, 0x36, 0x36, 0xD5, 0x24, 0x88, 0x6F,\n0x6B, 0xC4, 0x79, 0xCF, 0x50, 0x73, 0x13, 0x43, 0x10, 0xD3, 0x99, 0x26, 0x74, 0x52, 0xF4, 0x0A,\n0x49, 0x9A, 0x2A, 0xF3, 0x4D, 0x69, 0x44, 0xA5, 0xA3, 0xCA, 0xEF, 0x41, 0x10, 0x5D, 0xF1, 0xF9,\n0xDC, 0x56, 0x7E, 0x10, 0xD7, 0x2F, 0x5E, 0xBC, 0x68, 0xBB, 0xE9, 0x60, 0x46, 0x9B, 0x7A, 0xAA,\n0xD1, 0x34, 0x86, 0x8E, 0x78, 0xE4, 0x88, 0x18, 0x82, 0x48, 0x33, 0x2D, 0x1E, 0x87, 0xED, 0x5E,\n0x18, 0x4A, 0xF0, 0xC2, 0x05, 0xFB, 0x52, 0x53, 0x62, 0xBC, 0x1F, 0x19, 0x79, 0xD6, 0x6F, 0x88,\n0xAE, 0xE8, 0xA7, 0xA2, 0x44, 0x11, 0x2F, 0x26, 0x88, 0x93, 0x4F, 0x6F, 0xBE, 0x4F, 0x40, 0x1C,\n0xC8, 0xAD, 0x8D, 0x4D, 0x35, 0x01, 0x91, 0x13, 0x11, 0xC3, 0x50, 0x88, 0x6C, 0x88, 0xEC, 0xF8,\n0x18, 0xD2, 0x49, 0x23, 0x22, 0xC9, 0xCB, 0x31, 0x5B, 0x19, 0xDB, 0x83, 0x11, 0xC4, 0x64, 0x46,\n0x5D, 0x49, 0x50, 0x94, 0xE1, 0x86, 0x52, 0x14, 0xBB, 0x6F, 0xDF, 0x3F, 0x45, 0xC4, 0x6F, 0x6F,\n0x0E, 0xFC, 0x81, 0x54, 0x3D, 0xD5, 0x80, 0xF8, 0x56, 0x11, 0x97, 0x92, 0xCC, 0x50, 0x19, 0x31,\n0xD4, 0xF8, 0x8D, 0x29, 0x8F, 0x2D, 0x84, 0x50, 0x92, 0xAC, 0x86, 0x3D, 0x80, 0xD1, 0x31, 0x1B,\n0x53, 0xC3, 0xE5, 0x0D, 0x0D, 0xB5, 0x47, 0xD1, 0x10, 0x51, 0x54, 0xBC, 0xE3, 0x75, 0x8A, 0x38,\n0x84, 0x07, 0x52, 0x7A, 0x57, 0xF3, 0x73, 0x0A, 0xE2, 0x5B, 0x4D, 0x34, 0x94, 0xF4, 0x1A, 0x4A,\n0x1A, 0x42, 0xCE, 0xC3, 0xED, 0x55, 0x48, 0x60, 0x7C, 0xA8, 0xE1, 0x49, 0x71, 0xF2, 0x80, 0x51,\n0x10, 0xE3, 0x88, 0x6A, 0x88, 0x95, 0x4F, 0xA8, 0xA2, 0xE8, 0x88, 0x04, 0xC3, 0xE9, 0xFA, 0xB0,\n0xFB, 0xA9, 0x4D, 0x35, 0x01, 0x71, 0x59, 0xB8, 0xAA, 0xC1, 0xD0, 0x10, 0x7D, 0x41, 0x64, 0xB5,\n0x00, 0xD1, 0xEA, 0x30, 0x10, 0xF6, 0x2B, 0xC6, 0x8E, 0x9A, 0x29, 0x52, 0x8B, 0x66, 0xC8, 0xB1,\n0xD8, 0x2A, 0x5A, 0x25, 0x0A, 0xA3, 0x20, 0x62, 0x18, 0x10, 0x0F, 0xFD, 0x65, 0x6F, 0x4C, 0x35,\n0x20, 0x2E, 0x35, 0x18, 0x4A, 0x2B, 0xD5, 0x98, 0xE1, 0x4D, 0x76, 0xC4, 0x74, 0xB9, 0x70, 0x44,\n0x23, 0xCC, 0x0C, 0xCB, 0x82, 0x8F, 0x1E, 0x3D, 0x2A, 0x3B, 0xFA, 0xA2, 0x91, 0xAE, 0xFD, 0xDC,\n0x84, 0xD7, 0x8A, 0x27, 0xEA, 0x35, 0x63, 0xF5, 0xCE, 0x14, 0xAD, 0x12, 0x25, 0x75, 0x3F, 0x4D,\n0x09, 0x5B, 0xC4, 0x83, 0x7F, 0xAD, 0x8D, 0x3E, 0xCE, 0x9F, 0x7A, 0xCC, 0x10, 0xC4, 0xB8, 0x23,\n0x9E, 0x2B, 0x19, 0x52, 0x89, 0x34, 0x53, 0x08, 0x89, 0xC9, 0x59, 0xFA, 0x5A, 0x2A, 0x0B, 0x23,\n0x8F, 0x18, 0xD9, 0x33, 0x24, 0x28, 0x6A, 0x25, 0x82, 0x58, 0xCD, 0x9F, 0xB8, 0x62, 0xAC, 0xC4,\n0x41, 0xAC, 0x8A, 0x5A, 0x88, 0xC7, 0x01, 0xD1, 0x08, 0x97, 0x14, 0x62, 0x9F, 0xA1, 0x23, 0xC6,\n0x8B, 0x1A, 0x1F, 0x69, 0x42, 0x05, 0xA2, 0xD8, 0xB1, 0x8C, 0x0D, 0xB5, 0x4E, 0xFE, 0xB2, 0x1B,\n0xAE, 0xDF, 0x54, 0x71, 0x65, 0x8A, 0x2D, 0xA2, 0x04, 0xC5, 0x62, 0x25, 0x4E, 0x0F, 0x78, 0x55,\n0x64, 0xBD, 0xD0, 0xB8, 0xA1, 0xA4, 0xBF, 0x0E, 0xE3, 0xC3, 0x8B, 0x6E, 0x1D, 0x82, 0x18, 0xBB,\n0x68, 0x27, 0x20, 0x96, 0xCE, 0xC5, 0xA0, 0xE8, 0xA3, 0x8D, 0x28, 0x9E, 0x08, 0x8A, 0x4F, 0x4A,\n0x8A, 0x19, 0xE2, 0xE1, 0xAE, 0x8A, 0xFA, 0x28, 0x78, 0x9D, 0x23, 0x4E, 0xCA, 0x86, 0x4C, 0x35,\n0x71, 0x45, 0x74, 0xC4, 0x78, 0xD1, 0x06, 0x61, 0xF4, 0xBB, 0x24, 0x09, 0x8E, 0xA9, 0xE2, 0x0D,\n0x0D, 0x3B, 0xBF, 0x21, 0xBA, 0xA2, 0x1A, 0x82, 0x88, 0xA2, 0x12, 0xAA, 0x22, 0x88, 0xB3, 0x80,\n0x78, 0xB8, 0xAF, 0x5D, 0xD4, 0x57, 0x85, 0x65, 0x86, 0x45, 0x44, 0x33, 0xF4, 0x4A, 0x34, 0x43,\n0x8E, 0xC4, 0xB8, 0xE5, 0xBB, 0x21, 0x82, 0x28, 0x06, 0x47, 0x24, 0xA9, 0x44, 0x45, 0x44, 0xD1,\n0x11, 0xB3, 0xC7, 0xFC, 0x35, 0xE2, 0xA2, 0x51, 0x14, 0x46, 0x3A, 0x6A, 0x3E, 0xDA, 0x64, 0x86,\n0xD3, 0xE9, 0xA1, 0xAE, 0x8A, 0xBA, 0xE7, 0xFF, 0x0A, 0x86, 0x2D, 0x62, 0x35, 0x7F, 0x4D, 0x21,\n0x8A, 0x61, 0x8D, 0x88, 0xA1, 0x24, 0xEF, 0xA5, 0x34, 0xD3, 0x80, 0x18, 0xF8, 0xF0, 0xA3, 0x16,\n0xBB, 0x8C, 0x59, 0x43, 0xCD, 0xEE, 0x6D, 0x6A, 0xC4, 0x85, 0x23, 0xB6, 0x8A, 0x27, 0x51, 0x2C,\n0x21, 0x1E, 0xEA, 0x53, 0x45, 0x7D, 0x81, 0xDB, 0xE3, 0x02, 0x22, 0x85, 0xF8, 0xA1, 0x72, 0x43,\n0x41, 0x0C, 0xCD, 0x94, 0x42, 0xA4, 0x99, 0xB2, 0x5D, 0x94, 0x8B, 0x10, 0x47, 0x24, 0x4B, 0xFB,\n0x22, 0x23, 0xAA, 0x95, 0x62, 0xDC, 0x15, 0xE5, 0x77, 0x72, 0xF3, 0x26, 0x95, 0x68, 0x88, 0x5E,\n0x8B, 0xE5, 0xB9, 0x46, 0xF2, 0xF5, 0x20, 0xFB, 0xA9, 0xFE, 0xA5, 0xE0, 0x6F, 0x2D, 0x62, 0xCF,\n0x85, 0x9B, 0xA6, 0x36, 0x4C, 0x10, 0xE3, 0x81, 0xD8, 0x5C, 0xB6, 0x81, 0xD8, 0xD6, 0x61, 0x0E,\n0x07, 0x1E, 0x88, 0x38, 0x3A, 0xA2, 0x84, 0x86, 0xDA, 0xA7, 0xB8, 0x88, 0x88, 0x76, 0x2C, 0x9E,\n0x5C, 0xF6, 0x54, 0xE2, 0xC1, 0xF6, 0x53, 0x7D, 0x8C, 0xF8, 0x18, 0x44, 0x33, 0x9C, 0xB0, 0x60,\n0xB4, 0x86, 0x67, 0xCD, 0x50, 0x10, 0x79, 0x9C, 0x5F, 0xF7, 0x52, 0x0C, 0xBD, 0x10, 0x93, 0xC1,\n0xB4, 0x87, 0x90, 0x14, 0xD6, 0x0D, 0x3A, 0x2A, 0x0D, 0x95, 0x65, 0xF1, 0x2A, 0x03, 0xAA, 0xD6,\n0xA2, 0xF7, 0xD3, 0xCA, 0x18, 0xE7, 0xF5, 0xCE, 0xBF, 0xA4, 0x14, 0x33, 0xC4, 0x43, 0xED, 0xA7,\n0x76, 0xE1, 0x06, 0x22, 0x85, 0x98, 0xEE, 0x88, 0x1F, 0x14, 0xB1, 0x36, 0x64, 0xAC, 0xE1, 0xC2,\n0x8D, 0xA1, 0x06, 0xC2, 0x02, 0x22, 0x8A, 0xF7, 0x34, 0x1D, 0xC8, 0xD2, 0xC2, 0x98, 0xEF, 0x19,\n0x5E, 0x8A, 0xAE, 0x78, 0x02, 0xC5, 0x77, 0x49, 0x3B, 0x3D, 0x12, 0xC5, 0x62, 0x21, 0x1E, 0x6A,\n0x3F, 0xAD, 0x0B, 0xD1, 0x15, 0xC3, 0x65, 0xCD, 0xEB, 0xA4, 0x99, 0x26, 0x88, 0x9C, 0x88, 0x18,\n0xD2, 0x4C, 0x0B, 0x84, 0xF0, 0xE1, 0xD8, 0x24, 0x3A, 0xA2, 0x48, 0x43, 0x35, 0x44, 0x14, 0x33,\n0xC4, 0xA8, 0x58, 0x3B, 0xFA, 0x68, 0x13, 0x10, 0x0F, 0xB4, 0x9F, 0xFE, 0xE6, 0xEE, 0x0E, 0x5A,\n0x23, 0x2B, 0x82, 0x00, 0x8E, 0x0B, 0x0A, 0xA2, 0x89, 0x07, 0x11, 0xD1, 0x08, 0x2A, 0x48, 0x04,\n0xC1, 0x83, 0x30, 0x0B, 0x4A, 0x24, 0x44, 0x3C, 0xC8, 0xA0, 0xE0, 0x3A, 0x18, 0xD0, 0x61, 0x82,\n0xCC, 0xC1, 0x05, 0x3D, 0xE9, 0x0C, 0xB8, 0xA8, 0x28, 0x9B, 0x7C, 0x74, 0xAB, 0xEA, 0x75, 0xBD,\n0x7F, 0x57, 0x75, 0xBF, 0x59, 0x8F, 0x6F, 0xA6, 0xD4, 0x93, 0x17, 0xF5, 0x67, 0x55, 0x77, 0x75,\n0x55, 0x5E, 0x34, 0x11, 0xAF, 0x34, 0x8A, 0x21, 0x8D, 0xFE, 0xDA, 0x12, 0x91, 0x5B, 0x0D, 0x88,\n0x18, 0xB2, 0xDC, 0xC6, 0xFC, 0x09, 0xC3, 0x49, 0xC4, 0x7E, 0x46, 0x06, 0x46, 0x52, 0xD1, 0x4F,\n0x45, 0x14, 0xA9, 0xA7, 0xDD, 0x54, 0x34, 0x44, 0x89, 0x0E, 0xE2, 0x89, 0xD6, 0x53, 0x7D, 0xF9,\n0x76, 0x44, 0x89, 0x9C, 0x88, 0x1B, 0x55, 0x24, 0x11, 0xFD, 0x48, 0xA4, 0x98, 0x2A, 0x62, 0x34,\n0x04, 0xD1, 0x38, 0x20, 0xCC, 0x19, 0xD8, 0x46, 0x28, 0xA9, 0x66, 0xE8, 0x53, 0x29, 0x16, 0xA7,\n0x68, 0x15, 0x5D, 0xB1, 0xDC, 0x6D, 0x42, 0x2A, 0xEA, 0xC6, 0x33, 0x86, 0x20, 0x6A, 0x9C, 0xDC,\n0xD6, 0x5B, 0x49, 0x44, 0x32, 0xB1, 0x32, 0x5C, 0x6B, 0x1E, 0x3A, 0xE2, 0xF9, 0xB9, 0x1B, 0xF2,\n0x6A, 0xCA, 0xBD, 0xA6, 0x1A, 0x3F, 0x39, 0xA1, 0x06, 0x86, 0x0D, 0x63, 0xDF, 0x32, 0xDF, 0x51,\n0xC9, 0x44, 0x1E, 0xC2, 0xE3, 0xA2, 0x86, 0x75, 0x19, 0x51, 0xD1, 0x42, 0xE7, 0x68, 0x0D, 0xE2,\n0x89, 0xD6, 0x53, 0x4B, 0x44, 0x8B, 0x7C, 0x22, 0x0A, 0x63, 0x34, 0x94, 0x00, 0xB1, 0xFA, 0xE9,\n0x19, 0x35, 0xA4, 0x45, 0x1C, 0x7B, 0xFC, 0x94, 0x89, 0xE0, 0xB5, 0xD1, 0xBD, 0xE0, 0x30, 0x95,\n0x72, 0x45, 0x33, 0x94, 0xE0, 0xD5, 0x86, 0x4C, 0x6C, 0x0B, 0x2A, 0x88, 0x18, 0x9E, 0x66, 0x3D,\n0xF5, 0x44, 0xD4, 0x68, 0xAE, 0x35, 0x9B, 0x6F, 0x47, 0xC4, 0xF3, 0x82, 0x48, 0x22, 0xF2, 0x6A,\n0x5A, 0xBF, 0xB7, 0xA5, 0xE6, 0xC2, 0x10, 0xFB, 0x19, 0xF8, 0xA9, 0x44, 0x72, 0xCC, 0xE7, 0xA2,\n0x77, 0x19, 0x49, 0x91, 0x5E, 0x11, 0x45, 0x10, 0x25, 0x86, 0xFB, 0xA9, 0x6C, 0xAE, 0xB7, 0x88,\n0x27, 0x79, 0x3F, 0xE5, 0x44, 0x54, 0x44, 0xAE, 0x35, 0x72, 0xAB, 0x59, 0x8B, 0x22, 0x88, 0x62,\n0x18, 0x5E, 0x6B, 0x82, 0x21, 0xD5, 0x54, 0x11, 0x03, 0xE1, 0xC1, 0x34, 0x44, 0xB2, 0x53, 0x51,\n0x39, 0x15, 0xC5, 0x90, 0x8E, 0xFF, 0xED, 0xFC, 0x0C, 0xCE, 0xB3, 0x0D, 0x8A, 0x16, 0x82, 0x28,\n0x11, 0x10, 0x4F, 0xB2, 0x9E, 0x92, 0x88, 0x12, 0x76, 0xAD, 0x01, 0x51, 0x0C, 0xED, 0x56, 0xA3,\n0x86, 0x3B, 0x4F, 0x44, 0x33, 0x34, 0x45, 0x5F, 0x52, 0x0C, 0x86, 0x12, 0x29, 0x0D, 0x35, 0x40,\n0x3C, 0x14, 0x30, 0xF2, 0x8E, 0xCA, 0xFD, 0xB4, 0x41, 0x14, 0x45, 0xEE, 0xA7, 0x05, 0x51, 0xC2,\n0x0D, 0x75, 0xE3, 0xD9, 0x14, 0x7F, 0xA9, 0x10, 0x4F, 0xB3, 0x9E, 0x7A, 0x8F, 0x28, 0x82, 0x76,\n0x26, 0x06, 0x43, 0x41, 0xDC, 0x14, 0xC3, 0x5D, 0x7D, 0x22, 0xBA, 0x61, 0x6E, 0x12, 0x79, 0x33,\n0x4D, 0x89, 0x98, 0x10, 0x5F, 0xD7, 0x38, 0xC0, 0xE8, 0x05, 0x15, 0x44, 0x89, 0xD8, 0xF0, 0x73,\n0xB5, 0x11, 0x43, 0x52, 0x31, 0x9F, 0x8A, 0xA2, 0x08, 0x22, 0x86, 0xA7, 0x35, 0x8F, 0x2A, 0x8F,\n0x35, 0x5C, 0x4E, 0x47, 0xC3, 0x75, 0x69, 0x30, 0xF6, 0x82, 0xB8, 0xFF, 0x55, 0x0C, 0x39, 0x11,\n0x25, 0xBA, 0x8F, 0x35, 0x5C, 0x6B, 0xD2, 0x83, 0xE9, 0x48, 0x08, 0x22, 0xD1, 0x65, 0xA4, 0x9E,\n0x46, 0xC5, 0xD0, 0x2A, 0x7A, 0xAF, 0x68, 0x88, 0xA6, 0x28, 0x84, 0x28, 0x4A, 0x2A, 0x0E, 0x99,\n0xF8, 0x0B, 0x88, 0x27, 0x59, 0x4F, 0x49, 0x44, 0x41, 0xF4, 0x6A, 0x0A, 0xE2, 0xAD, 0x64, 0xA2,\n0x18, 0xEE, 0xFD, 0x5A, 0x13, 0xF6, 0x14, 0x83, 0x61, 0xE9, 0x11, 0xBB, 0x2F, 0xA6, 0xE4, 0x21,\n0x8C, 0x31, 0x5A, 0xC4, 0x5C, 0x50, 0x13, 0xE2, 0x9B, 0x4D, 0xBF, 0x5F, 0x10, 0x43, 0x2A, 0x3E,\n0x91, 0x10, 0xC3, 0x0E, 0xE2, 0x29, 0xCD, 0xF7, 0x6D, 0x8E, 0x88, 0x21, 0x88, 0x6B, 0x41, 0x34,\n0xC3, 0xCD, 0x5E, 0xC2, 0x8F, 0x44, 0x12, 0xD1, 0x10, 0xFD, 0x56, 0x43, 0x31, 0xA5, 0x47, 0x8C,\n0x89, 0x18, 0x6E, 0x32, 0x1E, 0x7D, 0x47, 0x10, 0xB3, 0xA2, 0x4F, 0xA4, 0x72, 0xBF, 0xEF, 0x88,\n0xAF, 0x05, 0x44, 0x0B, 0x43, 0x94, 0x68, 0x0C, 0xAF, 0xFE, 0x7E, 0x7C, 0x42, 0x88, 0x5F, 0x3E,\n0xBB, 0x0A, 0x88, 0x24, 0xA2, 0x28, 0x6A, 0x1E, 0xDE, 0x0E, 0xD5, 0x54, 0x11, 0x79, 0xFB, 0xCE,\n0x03, 0x7D, 0x31, 0x0C, 0x6B, 0xA6, 0xD1, 0xB0, 0x46, 0x4C, 0x78, 0x9F, 0x46, 0x42, 0x18, 0x85,\n0x10, 0xC3, 0x7A, 0x9A, 0x11, 0x66, 0x19, 0x86, 0x88, 0x62, 0x41, 0x54, 0x46, 0x0E, 0xC5, 0x80,\n0x88, 0xE2, 0xC9, 0xEC, 0x4B, 0xD9, 0xE2, 0x7E, 0x40, 0x34, 0x43, 0x47, 0xDC, 0x48, 0x26, 0xEE,\n0x35, 0xAE, 0x8B, 0x21, 0xCB, 0x35, 0x3C, 0x9B, 0x62, 0xC8, 0x83, 0x1B, 0xC5, 0x34, 0xB5, 0x17,\n0xE4, 0x60, 0x90, 0xD4, 0x68, 0xDA, 0xC5, 0x38, 0x59, 0x04, 0x11, 0x45, 0x56, 0x50, 0xA7, 0x53,\n0x11, 0xC5, 0x84, 0x78, 0x2C, 0xFB, 0xA7, 0x2F, 0x6B, 0x3C, 0x6F, 0xB3, 0xE6, 0xAA, 0x46, 0x5C,\n0x78, 0x22, 0x4A, 0x6C, 0x34, 0x6E, 0xAD, 0x9A, 0x82, 0x18, 0x0D, 0x59, 0x17, 0x76, 0xC3, 0x74,\n0x24, 0xA6, 0x36, 0x1F, 0xBF, 0x1C, 0x99, 0x31, 0x2E, 0x4E, 0x15, 0x45, 0x35, 0x64, 0x67, 0x2A,\n0x21, 0xBE, 0xA7, 0x88, 0x59, 0xF1, 0x89, 0x23, 0xBA, 0x21, 0x88, 0x47, 0xB2, 0xCF, 0x2F, 0x82,\n0xAF, 0xA0, 0x38, 0xB1, 0x6B, 0x7A, 0x7F, 0xB5, 0x94, 0x3F, 0x24, 0x94, 0x50, 0x33, 0x71, 0x61,\n0x88, 0x6A, 0x28, 0x99, 0x58, 0x12, 0xD1, 0x10, 0x4D, 0x91, 0xFE, 0x02, 0xC4, 0x0F, 0x34, 0xA8,\n0xA6, 0x66, 0x18, 0x09, 0x49, 0xC2, 0x3E, 0x63, 0xAE, 0xA8, 0x5D, 0xC5, 0xE1, 0x07, 0x88, 0x25,\n0x26, 0xEA, 0xA9, 0x20, 0xE6, 0x54, 0x44, 0x31, 0x23, 0xCA, 0xBF, 0xF0, 0x71, 0xEC, 0xF3, 0xCB,\n0x6F, 0x12, 0x78, 0xF6, 0x89, 0x30, 0x1E, 0xDC, 0x35, 0x25, 0x11, 0x4B, 0x26, 0x2E, 0x4A, 0x31,\n0x15, 0x43, 0x89, 0x5F, 0x6F, 0xD5, 0x50, 0x14, 0xC3, 0xB3, 0x29, 0x4D, 0x22, 0x3F, 0x8C, 0xE8,\n0x86, 0xDC, 0x6A, 0x72, 0x6F, 0x81, 0x60, 0x2F, 0x26, 0x52, 0x91, 0x66, 0x91, 0x54, 0x0C, 0xB3,\n0x61, 0x33, 0x34, 0x45, 0x43, 0xE4, 0xE9, 0x2D, 0xA7, 0x62, 0x46, 0x7C, 0x76, 0x24, 0x88, 0x9F,\n0x5C, 0xFC, 0x83, 0xE2, 0xC4, 0x8B, 0x5B, 0xC8, 0xC4, 0x54, 0x4D, 0x3D, 0x11, 0xAF, 0xB9, 0xD6,\n0x80, 0x18, 0x9F, 0xDC, 0xCC, 0x50, 0x02, 0xC3, 0x83, 0xE7, 0xE1, 0x67, 0x16, 0x6D, 0x49, 0x25,\n0x13, 0xA3, 0x22, 0x13, 0x29, 0xCF, 0x44, 0xA6, 0x8A, 0x64, 0x22, 0x8A, 0xC5, 0x10, 0x45, 0x37,\n0x04, 0xF1, 0x38, 0x1E, 0x6D, 0xE4, 0x47, 0xD5, 0x2E, 0xEE, 0x79, 0x99, 0xE8, 0x36, 0xFA, 0x4B,\n0x41, 0x0C, 0xD7, 0x9A, 0x45, 0xE9, 0x2F, 0x40, 0xBC, 0x4E, 0x88, 0xED, 0x5A, 0x46, 0xB8, 0x9B,\n0xE6, 0xF9, 0x13, 0x82, 0xA4, 0x21, 0x90, 0x81, 0xD2, 0x0C, 0x9D, 0x31, 0xEE, 0x13, 0xD3, 0x64,\n0xE8, 0x52, 0x7F, 0x1F, 0xB1, 0x28, 0x8E, 0x4F, 0x6F, 0xB7, 0x6E, 0x08, 0x22, 0x86, 0x12, 0x47,\n0xF1, 0x68, 0x23, 0x9F, 0x53, 0xBA, 0xB8, 0xE0, 0x3B, 0xBC, 0xDD, 0x46, 0x7F, 0x99, 0x12, 0x71,\n0xB1, 0x10, 0x43, 0x12, 0x71, 0x43, 0x22, 0xAA, 0x62, 0xF8, 0x76, 0x54, 0x9E, 0x5F, 0xF0, 0x6C,\n0xAA, 0x84, 0x11, 0x11, 0xC0, 0x03, 0x61, 0xD0, 0x18, 0x0E, 0x31, 0x28, 0x36, 0x6B, 0x1A, 0xF9,\n0xC7, 0x32, 0x5E, 0x74, 0xC5, 0xEE, 0xA1, 0xF8, 0x56, 0x42, 0xBC, 0x32, 0xC5, 0xA3, 0x78, 0xB4,\n0x91, 0xDF, 0x25, 0x70, 0x71, 0x71, 0x21, 0xFD, 0x10, 0x8A, 0x4D, 0xA3, 0x6F, 0x99, 0xB8, 0xF4,\n0x44, 0x5C, 0x38, 0xA2, 0xB4, 0x17, 0x9E, 0x89, 0x20, 0xA6, 0x4E, 0x5F, 0xC3, 0x0C, 0x41, 0x64,\n0x25, 0xC3, 0x0D, 0x25, 0x40, 0xFC, 0x5F, 0x8C, 0xB9, 0xDF, 0xA7, 0x9E, 0x9A, 0xA2, 0x21, 0x86,\n0x35, 0xE2, 0x98, 0x8A, 0xE7, 0xE7, 0x62, 0xB8, 0x2F, 0x8A, 0x20, 0x8A, 0x62, 0x30, 0x54, 0xC5,\n0xA3, 0x78, 0xB4, 0x19, 0x10, 0x1F, 0xF8, 0xB0, 0x79, 0xDB, 0x5F, 0x2C, 0x25, 0xB8, 0xD7, 0x58,\n0x22, 0x72, 0x22, 0x52, 0x4D, 0x3D, 0x11, 0x41, 0x8C, 0xD5, 0x34, 0x1B, 0x4A, 0x44, 0xC2, 0xE9,\n0x4A, 0xDA, 0x4F, 0x45, 0x14, 0x43, 0x3D, 0x15, 0x44, 0x14, 0x41, 0x2C, 0xE3, 0x7D, 0x10, 0x6F,\n0xC5, 0xB1, 0x7E, 0xB4, 0x31, 0x44, 0x14, 0x07, 0xC3, 0xE3, 0x68, 0x32, 0xE4, 0x07, 0x0E, 0x2F,\n0x24, 0xFE, 0xA5, 0xA0, 0x36, 0xFD, 0x85, 0x18, 0x72, 0x26, 0x0A, 0xA1, 0x23, 0x7E, 0x6B, 0x77,\n0x53, 0x1A, 0x8C, 0x1A, 0xB1, 0x5E, 0x19, 0x76, 0x43, 0x76, 0xDC, 0x1A, 0x44, 0x0D, 0x9C, 0x12,\n0x64, 0x96, 0x74, 0xC4, 0x46, 0x71, 0x5C, 0x5E, 0xE4, 0xFD, 0x94, 0xD5, 0xC5, 0x98, 0x89, 0xBF,\n0xF7, 0xDE, 0x4F, 0x55, 0x31, 0x66, 0xE2, 0x91, 0x34, 0x19, 0x86, 0x68, 0x05, 0x15, 0xC5, 0xD8,\n0x5F, 0x0C, 0x86, 0xCB, 0xB1, 0xD5, 0x5F, 0xD0, 0x24, 0x62, 0xE8, 0x5D, 0x22, 0x77, 0x53, 0x5A,\n0x7D, 0x10, 0xBB, 0x4D, 0x22, 0xFD, 0x45, 0x86, 0x43, 0x30, 0x39, 0xA2, 0x58, 0x0D, 0x33, 0x78,\n0x7A, 0x8B, 0x99, 0xC8, 0xEA, 0xA2, 0x22, 0x92, 0x8A, 0x9A, 0x88, 0xFB, 0x06, 0xF1, 0x73, 0x27,\n0x34, 0xC3, 0xE3, 0x68, 0x32, 0x5E, 0x76, 0xC4, 0x07, 0x76, 0xBB, 0x52, 0x7F, 0x21, 0x88, 0xC6,\n0xE8, 0x99, 0x48, 0x35, 0x35, 0x46, 0x0C, 0x23, 0x62, 0x5B, 0x4D, 0x7D, 0x80, 0xC1, 0x6E, 0x94,\n0x44, 0x32, 0x44, 0x31, 0x47, 0xAF, 0x5F, 0x4C, 0xC3, 0x61, 0x47, 0xB4, 0x43, 0x11, 0x45, 0xCE,\n0xC4, 0xD2, 0x64, 0x48, 0x14, 0xC4, 0x74, 0x28, 0x4A, 0x70, 0x35, 0x55, 0xC5, 0xE3, 0x38, 0x14,\n0x35, 0xD5, 0xD4, 0xD0, 0x0A, 0x2A, 0x8A, 0x55, 0x7F, 0x11, 0x0C, 0x23, 0xA2, 0x05, 0x88, 0x07,\n0xAB, 0xA9, 0x22, 0x32, 0x84, 0xE2, 0xC1, 0x2D, 0x1B, 0xC2, 0x78, 0xD8, 0xB1, 0x28, 0x52, 0x4F,\n0x19, 0x65, 0xF4, 0x86, 0x8A, 0xB4, 0xFB, 0x66, 0x28, 0xFF, 0xB4, 0x05, 0x71, 0x93, 0x53, 0xD1,\n0x13, 0xB1, 0x18, 0x1E, 0xC3, 0x24, 0x03, 0x44, 0x0A, 0x6A, 0x9C, 0x5F, 0x18, 0x61, 0x3E, 0x12,\n0xD7, 0x01, 0xF1, 0xEC, 0xEC, 0x3A, 0x3C, 0x9C, 0x4E, 0x55, 0x53, 0x86, 0x50, 0x18, 0x82, 0x48,\n0x87, 0x7F, 0x20, 0x82, 0x21, 0x8A, 0xF5, 0xF2, 0x22, 0xA7, 0x62, 0x58, 0x05, 0x77, 0x44, 0x57,\n0xAC, 0x57, 0x6D, 0xD6, 0xD5, 0xA3, 0x0D, 0x3D, 0xE2, 0x80, 0x78, 0x04, 0x93, 0x0C, 0x10, 0x29,\n0xA8, 0xF9, 0x5A, 0x63, 0x8C, 0x53, 0x88, 0x7B, 0x45, 0xE4, 0x72, 0x0A, 0xA2, 0x44, 0xF9, 0x58,\n0x06, 0x4D, 0x62, 0x18, 0x42, 0x31, 0x44, 0xCC, 0x8D, 0xFE, 0x47, 0x39, 0x22, 0x23, 0x05, 0x95,\n0xE1, 0x30, 0x37, 0x1B, 0xEE, 0xA7, 0x3E, 0x54, 0x04, 0x91, 0x76, 0x5F, 0x53, 0x11, 0xC4, 0x30,\n0xC9, 0xE0, 0x62, 0x33, 0xC4, 0xD3, 0x63, 0x40, 0xFC, 0x53, 0x05, 0x29, 0xA8, 0xED, 0xB5, 0x86,\n0x16, 0xC3, 0x11, 0xD7, 0x16, 0x24, 0xA2, 0x1A, 0x3A, 0x22, 0xF7, 0x9A, 0xF1, 0x6B, 0x19, 0x8C,\n0xF4, 0x63, 0x39, 0x95, 0x08, 0x84, 0x24, 0xE2, 0x47, 0x6D, 0xB4, 0x05, 0x35, 0xDF, 0x4F, 0x2D,\n0x13, 0x99, 0x47, 0x35, 0xE3, 0xA8, 0xF7, 0xC3, 0xA1, 0xB8, 0x8B, 0x87, 0xA2, 0x05, 0xE5, 0xD4,\n0x8F, 0xC4, 0xA3, 0x78, 0x79, 0x03, 0x51, 0xC2, 0xBE, 0xC3, 0xDB, 0x5C, 0x6B, 0xA8, 0xA6, 0x82,\n0x48, 0x22, 0x72, 0xAD, 0x49, 0x88, 0xED, 0xAE, 0xA2, 0x21, 0x92, 0x88, 0xBD, 0x6B, 0x8D, 0x11,\n0xA2, 0x38, 0xED, 0xD8, 0x9D, 0xF1, 0x73, 0x2A, 0xF2, 0xB5, 0x30, 0x31, 0xE4, 0xE5, 0x8D, 0x9B,\n0x0D, 0x88, 0xBB, 0x82, 0xB8, 0x51, 0xC4, 0x35, 0x99, 0x98, 0x12, 0x71, 0x39, 0xFF, 0x43, 0x11,\n0x44, 0x0A, 0x6A, 0xF5, 0x5A, 0xF3, 0xD3, 0xC3, 0x32, 0x96, 0xD3, 0x85, 0xA6, 0x22, 0x89, 0xB8,\n0x77, 0xC4, 0x5D, 0x68, 0x13, 0x73, 0xAB, 0xAF, 0x86, 0x1C, 0x89, 0xF1, 0x5A, 0xE3, 0x88, 0x10,\n0x12, 0x87, 0x18, 0x31, 0xAC, 0x47, 0xFC, 0xFE, 0xE5, 0x3E, 0xBB, 0xD8, 0x30, 0x53, 0xA4, 0x9E,\n0x72, 0x28, 0xEE, 0xF6, 0xA2, 0xB8, 0x17, 0xC4, 0x8D, 0x21, 0xF2, 0x7C, 0xCA, 0xDD, 0xF4, 0x48,\n0x0E, 0x45, 0x10, 0x29, 0xA8, 0xF1, 0xB5, 0x86, 0x6A, 0xEA, 0x89, 0xD8, 0x45, 0x74, 0x43, 0x8D,\n0xF6, 0x72, 0x5A, 0x14, 0xE3, 0x5A, 0x46, 0x78, 0xF9, 0x8E, 0x82, 0x49, 0x2E, 0x13, 0xB6, 0x8A,\n0xD5, 0xCD, 0xA6, 0xBF, 0xF3, 0x56, 0xBA, 0x7D, 0xDA, 0xFD, 0x73, 0x21, 0x94, 0x10, 0xC3, 0x4D,\n0x9A, 0x29, 0x8E, 0x79, 0x78, 0x2C, 0x87, 0x62, 0x44, 0x5C, 0x85, 0x82, 0xAA, 0xD7, 0x9A, 0x9C,\n0x88, 0x16, 0x6E, 0x08, 0x22, 0x89, 0x98, 0x2F, 0xA7, 0xF5, 0xD7, 0x32, 0x52, 0x35, 0x45, 0x11,\n0x44, 0x62, 0xF2, 0x6E, 0xC3, 0x89, 0x38, 0x71, 0x3F, 0x55, 0x43, 0xAE, 0xA7, 0xF1, 0x4B, 0x1A,\n0x20, 0xCA, 0xA1, 0xA8, 0x7B, 0x96, 0x66, 0xB8, 0x09, 0xA9, 0x18, 0x12, 0x71, 0x79, 0x04, 0x87,\n0x22, 0x88, 0x14, 0xD4, 0xEA, 0x1D, 0x20, 0x27, 0x62, 0xC9, 0x44, 0x10, 0xA9, 0xA6, 0xE7, 0x24,\n0x62, 0xDA, 0x73, 0x63, 0x0C, 0x65, 0x86, 0x4C, 0x30, 0xDA, 0x77, 0xD3, 0x0C, 0xD8, 0x77, 0x8C,\n0x9B, 0x1A, 0xAC, 0x2E, 0x3A, 0x62, 0xBB, 0x2D, 0x25, 0xC1, 0x70, 0xDF, 0x14, 0x0D, 0x51, 0x14,\n0x37, 0xA5, 0x9C, 0xAE, 0x95, 0xD0, 0x6F, 0x36, 0x18, 0x6A, 0x3C, 0xCC, 0xFD, 0x50, 0x4C, 0x88,\n0x2B, 0x0A, 0xAA, 0xFE, 0xAD, 0xA7, 0x8E, 0x68, 0x8C, 0x31, 0x11, 0x1D, 0xF1, 0xC3, 0x0F, 0x25,\n0x11, 0x77, 0xF5, 0x7B, 0x8D, 0x04, 0xB3, 0xC4, 0xDA, 0xD0, 0x15, 0xE3, 0x34, 0x18, 0x42, 0x00,\n0xFB, 0x81, 0x61, 0xA5, 0x98, 0x2E, 0x36, 0x01, 0xD1, 0x14, 0xE9, 0xF6, 0x2D, 0x15, 0xE9, 0x31,\n0xAE, 0xF7, 0x1A, 0x1B, 0x69, 0xF7, 0x37, 0x82, 0x38, 0x5E, 0x6D, 0xBC, 0x4D, 0xF4, 0x4C, 0x5C,\n0xCE, 0xFE, 0xF9, 0x34, 0x23, 0xAE, 0xFE, 0xB4, 0x97, 0x70, 0xAA, 0xE9, 0xF4, 0x91, 0xE8, 0x88,\n0x9A, 0x88, 0xA2, 0xC8, 0x91, 0xA8, 0x88, 0xA9, 0x9A, 0xD2, 0xEA, 0x57, 0xD7, 0x1A, 0x12, 0x11,\n0xC2, 0x43, 0x8C, 0xA9, 0xA0, 0x26, 0x45, 0x06, 0x19, 0xCC, 0x14, 0x19, 0x47, 0x85, 0x91, 0x22,\n0x88, 0x7E, 0x28, 0xAE, 0x45, 0x11, 0xC4, 0x70, 0x28, 0x2E, 0xE7, 0xFF, 0x7C, 0xAA, 0x6F, 0x32,\n0x17, 0xB5, 0xE2, 0x83, 0xFF, 0x6F, 0x47, 0x35, 0x8D, 0x88, 0x6E, 0x08, 0xE2, 0xD9, 0x4E, 0x82,\n0xA9, 0xBE, 0xAF, 0x7E, 0x77, 0xBE, 0x79, 0x32, 0xCE, 0xF4, 0x49, 0x44, 0x8A, 0x69, 0x52, 0x7C,\n0x3E, 0x63, 0x1C, 0xF0, 0xB3, 0x69, 0xC3, 0xE2, 0x22, 0x6F, 0xE0, 0xCD, 0x5C, 0x58, 0x0C, 0xAF,\n0x4B, 0x2A, 0x4A, 0x93, 0xB1, 0x89, 0x88, 0x18, 0xEA, 0x28, 0x75, 0xF6, 0x87, 0x62, 0x83, 0xB8,\n0xBA, 0xD7, 0x82, 0xEA, 0x23, 0xFD, 0x15, 0x88, 0x37, 0x6A, 0x98, 0x11, 0xD5, 0xD0, 0x10, 0x59,\n0x74, 0x63, 0x6D, 0x98, 0x8F, 0x0C, 0xBF, 0x53, 0x7D, 0x13, 0xB3, 0x7B, 0x22, 0x42, 0x88, 0xE1,\n0x17, 0x16, 0x13, 0x8C, 0xF5, 0x9E, 0x06, 0xD3, 0x28, 0x3E, 0xA5, 0x61, 0x01, 0x22, 0x1B, 0x6F,\n0xBC, 0xD9, 0x28, 0xA2, 0x65, 0xA2, 0x86, 0x97, 0x53, 0x7A, 0x0C, 0xCA, 0xE9, 0xEC, 0x0F, 0xC5,\n0x11, 0x11, 0xC5, 0x67, 0x5A, 0x50, 0xED, 0xC9, 0xED, 0x61, 0x29, 0x8A, 0x24, 0xE2, 0x4D, 0x7B,\n0x24, 0x4A, 0x94, 0x44, 0x0C, 0x63, 0x7D, 0x45, 0xE4, 0x3B, 0x60, 0xC5, 0x10, 0x44, 0x09, 0x0C,\n0x25, 0x38, 0x11, 0x41, 0x04, 0x32, 0x49, 0xD2, 0x66, 0x50, 0x4E, 0x41, 0x6C, 0xA7, 0x51, 0xDD,\n0x6E, 0xDF, 0x32, 0x51, 0x62, 0xCC, 0xC4, 0x35, 0x8A, 0x6A, 0x18, 0x12, 0x71, 0xB9, 0x9C, 0xF9,\n0xA1, 0xD8, 0x41, 0xB4, 0x82, 0x6A, 0x4F, 0x6E, 0x2B, 0x35, 0x74, 0xC4, 0x1B, 0x10, 0xE3, 0x91,\n0xC8, 0xBD, 0x46, 0x10, 0xE3, 0xC7, 0xA2, 0xD9, 0x1A, 0x36, 0xC5, 0xFA, 0xC7, 0xD9, 0x9A, 0x6D,\n0x61, 0x14, 0xB3, 0x5F, 0x3F, 0x11, 0xB9, 0xDA, 0x70, 0x26, 0xF6, 0x5E, 0x4F, 0xD9, 0x20, 0xCE,\n0x4F, 0xE0, 0x8E, 0x28, 0x41, 0x3D, 0x05, 0xB1, 0x52, 0x9C, 0xF9, 0xA1, 0xD8, 0x22, 0x96, 0x82,\n0xAA, 0x4F, 0x6E, 0x2B, 0x55, 0xF4, 0xCB, 0xA9, 0x1A, 0xDE, 0x24, 0x43, 0x43, 0xCC, 0xEF, 0x35,\n0x86, 0xA8, 0x8A, 0x7E, 0x37, 0x65, 0x0E, 0x85, 0x61, 0xA8, 0xA6, 0x10, 0x5A, 0x8C, 0x82, 0x44,\n0xC3, 0xD8, 0x4C, 0x32, 0x38, 0x13, 0xF9, 0x06, 0x2A, 0xD7, 0xD3, 0xB0, 0x66, 0x13, 0x11, 0x37,\n0xD4, 0xD3, 0x0A, 0x11, 0x42, 0xFD, 0x63, 0xE6, 0x33, 0x45, 0x10, 0x51, 0xB4, 0x82, 0xFA, 0x8A,\n0x54, 0xD3, 0x55, 0x38, 0x12, 0x6F, 0x84, 0x50, 0x11, 0x85, 0xF1, 0x8E, 0x44, 0x6C, 0x10, 0xC3,\n0xE7, 0xDC, 0xE2, 0x8F, 0x07, 0x87, 0x56, 0x3F, 0x18, 0xA2, 0x08, 0x57, 0x76, 0x84, 0x90, 0x36,\n0x23, 0xBF, 0xBB, 0xB5, 0x23, 0x45, 0xD6, 0xC0, 0xE3, 0x99, 0xC8, 0xA1, 0x58, 0x0C, 0x25, 0x1C,\n0x51, 0xC3, 0x08, 0x8B, 0xE1, 0xF2, 0x7E, 0xF6, 0x88, 0x4F, 0x1B, 0xC4, 0x8B, 0x7F, 0xBE, 0xFC,\n0xE4, 0x13, 0xA9, 0xA6, 0x12, 0xCB, 0x15, 0x88, 0xE1, 0x72, 0x0A, 0xA2, 0x2A, 0x82, 0xF8, 0x7E,\n0x40, 0x7C, 0xB3, 0xFD, 0x61, 0xA8, 0x6A, 0xBB, 0x26, 0x0F, 0x83, 0x21, 0xE4, 0x5E, 0x93, 0x18,\n0x41, 0xD4, 0xE0, 0x05, 0x9C, 0x69, 0x54, 0xB5, 0xCC, 0xAF, 0x8A, 0x6F, 0x4A, 0xA4, 0x1E, 0x23,\n0x97, 0xD3, 0xBD, 0x96, 0xD3, 0x0A, 0x51, 0x19, 0xB9, 0xD6, 0x98, 0xA2, 0xFC, 0xB6, 0x93, 0x17,\n0xE6, 0x1B, 0x8A, 0xF8, 0x4D, 0xA3, 0x78, 0xFF, 0xF8, 0x4B, 0xF9, 0x35, 0x58, 0x86, 0x68, 0xA1,\n0x88, 0x12, 0x9C, 0x89, 0x77, 0x7E, 0x37, 0x95, 0x50, 0xC3, 0x70, 0xAF, 0x49, 0x7B, 0xC3, 0xDD,\n0x1F, 0x0F, 0xAE, 0x33, 0x91, 0x01, 0x06, 0x8A, 0x9D, 0x2C, 0x84, 0x90, 0x57, 0x9B, 0xA0, 0x48,\n0x26, 0x82, 0xE8, 0x9F, 0x5C, 0xE4, 0x67, 0x4D, 0x5B, 0x44, 0x0D, 0x47, 0x5C, 0x2C, 0x44, 0x31,\n0x95, 0x53, 0x89, 0x79, 0xBF, 0x81, 0xF7, 0x11, 0x57, 0x4F, 0x1F, 0x7F, 0xFC, 0xF8, 0x7E, 0xA5,\n0xC1, 0xC5, 0xC6, 0xCB, 0xA9, 0x23, 0x8A, 0xE1, 0xA5, 0x1A, 0x1A, 0x22, 0xDB, 0xDF, 0xAA, 0x98,\n0xF6, 0x86, 0x31, 0x4C, 0xAB, 0xDF, 0x4A, 0x48, 0x39, 0x3D, 0x58, 0x4F, 0x23, 0x63, 0x33, 0x18,\n0x4E, 0x2B, 0x1A, 0x56, 0x4D, 0x25, 0xA6, 0x76, 0xA5, 0xC4, 0x50, 0xC2, 0x1B, 0x45, 0x6B, 0xF7,\n0x35, 0x0A, 0xE2, 0x42, 0x10, 0x49, 0x43, 0x55, 0x9C, 0xF7, 0x1B, 0x78, 0x0F, 0xD1, 0x0A, 0xEA,\n0xE3, 0x7F, 0x56, 0x20, 0x0A, 0x61, 0x85, 0xB8, 0x5D, 0xDF, 0xDD, 0x99, 0xA2, 0x23, 0x8A, 0x22,\n0x1F, 0x03, 0x73, 0x43, 0x43, 0xA4, 0x4D, 0x64, 0x0E, 0x45, 0xAF, 0xDF, 0x6E, 0x65, 0x64, 0xBD,\n0x8E, 0x63, 0x2E, 0xA7, 0x28, 0x56, 0xE5, 0xB4, 0x20, 0xD2, 0x62, 0x64, 0x44, 0x53, 0xCC, 0xA9,\n0x48, 0x26, 0x92, 0x8A, 0x66, 0x38, 0xF3, 0x9B, 0x8D, 0x21, 0x76, 0x14, 0xEF, 0x7F, 0x7C, 0x56,\n0x21, 0x6A, 0x84, 0x44, 0x1C, 0xCA, 0xE9, 0xE5, 0xE5, 0xA5, 0x22, 0xB6, 0x3F, 0x10, 0xD5, 0x3E,\n0x9D, 0xBE, 0x9B, 0xDB, 0x44, 0x14, 0x3B, 0x27, 0xE2, 0xE1, 0xFB, 0x69, 0xBE, 0x9E, 0xC6, 0x43,\n0xB1, 0xFF, 0x78, 0x4A, 0x8F, 0x21, 0x86, 0x34, 0x8A, 0x67, 0xF4, 0x18, 0x05, 0x51, 0xC2, 0x14,\n0xC9, 0x44, 0xFD, 0xF3, 0xE1, 0x28, 0x11, 0x57, 0x4F, 0xA9, 0xA6, 0x11, 0x71, 0x0B, 0xE2, 0x5E,\n0x10, 0xED, 0x5E, 0x63, 0x86, 0xD3, 0x3F, 0x99, 0xF8, 0x4E, 0xDE, 0x38, 0x0D, 0x3F, 0xA4, 0xDF,\n0x9C, 0x88, 0xC4, 0x04, 0x63, 0xDE, 0x3F, 0x4D, 0xF5, 0x94, 0x89, 0x22, 0xAB, 0x52, 0x61, 0xDF,\n0x4D, 0x0C, 0x25, 0x40, 0xB4, 0xF0, 0x7A, 0xFA, 0x8B, 0x23, 0x42, 0x28, 0x31, 0xEB, 0x8F, 0xF5,\n0x19, 0x62, 0x4F, 0xB1, 0x58, 0xD2, 0x62, 0x48, 0x8C, 0xD7, 0x1A, 0x43, 0x7C, 0x55, 0x0C, 0x15,\n0xD1, 0x7F, 0x20, 0x8A, 0xA5, 0x53, 0x10, 0xF9, 0x9E, 0x5B, 0xF8, 0xEC, 0x7E, 0xD7, 0x10, 0xC4,\n0x43, 0x91, 0x7F, 0x44, 0x8A, 0x7A, 0x4A, 0x39, 0xED, 0x3C, 0x9E, 0xD2, 0x27, 0x46, 0x44, 0x55,\n0x34, 0x42, 0x6E, 0x36, 0x86, 0x58, 0x17, 0xD3, 0xD9, 0xDF, 0x6C, 0xB4, 0x4F, 0x1C, 0x11, 0x51,\n0x54, 0x41, 0xAA, 0xE9, 0x72, 0x34, 0xDC, 0x7A, 0x26, 0xDE, 0x59, 0x22, 0xEA, 0x99, 0x98, 0x11,\n0xD9, 0x92, 0x4A, 0x2B, 0xFC, 0x7C, 0x32, 0xA3, 0x28, 0x86, 0x7D, 0xD3, 0x4C, 0x78, 0x98, 0x91,\n0x65, 0x29, 0x10, 0xF9, 0xA6, 0x0D, 0x7D, 0x62, 0x44, 0x64, 0x8A, 0xE1, 0xE5, 0x94, 0x54, 0x1C,\n0x10, 0xD7, 0x19, 0x51, 0xFE, 0x9C, 0xFF, 0xCD, 0xC6, 0x10, 0x25, 0x12, 0x21, 0x88, 0x1A, 0x8F,\n0x14, 0x91, 0x4C, 0x04, 0x91, 0x4C, 0x4C, 0x67, 0xA2, 0xEF, 0x66, 0x80, 0x98, 0x06, 0x51, 0xA4,\n0x22, 0x2F, 0x36, 0xFD, 0x4A, 0x3A, 0xAD, 0xC8, 0x30, 0x2A, 0x77, 0xFB, 0xCC, 0xA2, 0x5C, 0x91,\n0x4C, 0xE4, 0xF1, 0x74, 0x67, 0x99, 0xE8, 0xA9, 0x68, 0xE1, 0x67, 0x22, 0xB7, 0xD3, 0x12, 0xB3,\n0x1E, 0x64, 0x80, 0x88, 0xA1, 0x33, 0x52, 0x4E, 0x1F, 0x39, 0xE2, 0xD6, 0x11, 0x45, 0xF1, 0xD5,\n0x4B, 0x10, 0xC3, 0x99, 0xA8, 0x8A, 0x9C, 0x89, 0x4C, 0x13, 0xD5, 0x50, 0xC3, 0x0C, 0xB9, 0x9D,\n0x32, 0xC4, 0x98, 0x3C, 0x10, 0x5B, 0x45, 0x7A, 0x8C, 0x76, 0xA2, 0x48, 0x39, 0x55, 0x42, 0x10,\n0xD5, 0xB0, 0x4E, 0x45, 0x10, 0x35, 0x2A, 0x44, 0x5A, 0x8C, 0xE2, 0x38, 0xF3, 0x9B, 0x8D, 0x23,\n0x66, 0xC5, 0x82, 0xB8, 0x2C, 0x88, 0x8F, 0xC8, 0xC4, 0x6D, 0x31, 0x34, 0xC4, 0xF1, 0xC1, 0xE6,\n0xBC, 0xF3, 0x39, 0x30, 0x33, 0xE4, 0xAB, 0xDF, 0x1C, 0x89, 0x8D, 0xA1, 0x06, 0x84, 0x31, 0x5A,\n0x47, 0x23, 0xCC, 0x9D, 0x62, 0x49, 0x44, 0x09, 0x9F, 0x45, 0x29, 0x22, 0xFB, 0xC3, 0x20, 0x4A,\n0x94, 0x16, 0x63, 0x57, 0x10, 0x49, 0xC5, 0xE6, 0x4C, 0x1C, 0xE3, 0xAF, 0x19, 0xBF, 0xD9, 0x80,\n0x88, 0x61, 0x5D, 0x4F, 0x41, 0x2C, 0x86, 0x03, 0xE2, 0x46, 0x10, 0xC5, 0xB0, 0xD3, 0xEC, 0xB3,\n0x75, 0x1A, 0xBE, 0x18, 0x4D, 0x26, 0xE6, 0x41, 0x14, 0xBD, 0x7E, 0x82, 0x23, 0xB2, 0x6B, 0xDE,\n0x5B, 0xEC, 0x3F, 0xBB, 0x71, 0x3D, 0xE5, 0xA7, 0x31, 0x40, 0x3C, 0x07, 0x71, 0x03, 0xE2, 0x42,\n0x10, 0x25, 0x0A, 0xA2, 0x18, 0x1E, 0xC5, 0xCD, 0xC6, 0x11, 0x27, 0x4E, 0x45, 0x32, 0x91, 0x44,\n0xDC, 0x0E, 0x88, 0xAF, 0xBE, 0x5A, 0x10, 0xAF, 0x41, 0xAC, 0xD7, 0xA4, 0xF8, 0x92, 0x94, 0x1A,\n0xFA, 0x38, 0x11, 0x44, 0x67, 0x0C, 0x8B, 0x6E, 0x30, 0xA6, 0xE8, 0x2B, 0xF6, 0xF6, 0xDD, 0x98,\n0x62, 0xF0, 0x5B, 0x32, 0x58, 0x77, 0x0B, 0x67, 0xA2, 0xD6, 0xD3, 0x0F, 0x29, 0xA7, 0x1A, 0x03,\n0xE1, 0xA2, 0x10, 0x92, 0x89, 0xB3, 0x9E, 0x46, 0xE9, 0x8E, 0x0D, 0x88, 0xF1, 0x54, 0xE4, 0x5E,\n0x43, 0x35, 0xDD, 0x0A, 0x62, 0xA9, 0xA6, 0x45, 0x91, 0x72, 0x9A, 0xBF, 0x7E, 0xC2, 0x8B, 0x8D,\n0x23, 0x32, 0xC3, 0x48, 0x53, 0x8C, 0x76, 0x53, 0x11, 0xCA, 0x43, 0xF5, 0x94, 0x44, 0x94, 0xE8,\n0x7C, 0x10, 0xDC, 0x10, 0xC3, 0xF6, 0x30, 0x9B, 0x52, 0x3B, 0x09, 0x47, 0xD4, 0x70, 0x43, 0x89,\n0x94, 0x88, 0x73, 0x7F, 0xB3, 0xE9, 0x21, 0xAE, 0x8A, 0x62, 0x95, 0x89, 0x3C, 0x7F, 0x07, 0x44,\n0x6F, 0xF6, 0x27, 0xB6, 0x33, 0xEA, 0xA1, 0xB0, 0x18, 0x06, 0xC4, 0x54, 0x4E, 0x21, 0x7C, 0x6E,\n0x90, 0x88, 0xCD, 0xD2, 0x22, 0x5F, 0x21, 0x2E, 0x88, 0xD5, 0x91, 0x28, 0x41, 0xB3, 0xEF, 0x88,\n0x67, 0x19, 0xF1, 0x89, 0x19, 0x16, 0x45, 0xF2, 0x70, 0xDE, 0xD3, 0x28, 0x10, 0x43, 0x3D, 0xCD,\n0x99, 0xF8, 0xC8, 0xDB, 0xC4, 0xAD, 0xC4, 0x9D, 0x06, 0x88, 0xD7, 0xCC, 0x13, 0xE3, 0x99, 0xC8,\n0x57, 0x88, 0x78, 0x76, 0x0B, 0xAB, 0x6E, 0x71, 0x81, 0x7F, 0x3A, 0x0B, 0x7B, 0x8A, 0x61, 0xF5,\n0xB4, 0x77, 0x26, 0x6A, 0x30, 0x4F, 0x64, 0x8A, 0xC1, 0xBD, 0x46, 0x11, 0x45, 0x11, 0x44, 0x55,\n0x8C, 0x67, 0x22, 0x8E, 0xAB, 0x19, 0xEF, 0xD9, 0x80, 0xD8, 0xA4, 0xA2, 0x2A, 0x96, 0x44, 0xB4,\n0x16, 0x83, 0x44, 0x5C, 0x0F, 0x88, 0xC3, 0xCD, 0x26, 0x23, 0xE6, 0x07, 0x70, 0x35, 0xF4, 0x77,\n0x37, 0x06, 0xFB, 0x6F, 0xA4, 0xA5, 0xD3, 0xC9, 0x44, 0x6C, 0x1C, 0xC3, 0xEA, 0x29, 0x86, 0x71,\n0x14, 0x65, 0x8A, 0x4D, 0x9B, 0x68, 0x88, 0x34, 0xFB, 0x5A, 0x4E, 0x6B, 0xC4, 0x0D, 0xA9, 0x78,\n0x13, 0x33, 0x51, 0xC6, 0xAA, 0x73, 0xDE, 0xB3, 0x01, 0x31, 0x2A, 0x0E, 0x8C, 0xAB, 0x92, 0x88,\n0x21, 0x13, 0x2D, 0x0F, 0x03, 0xE2, 0x0E, 0xC4, 0x6E, 0x39, 0x2D, 0xDB, 0x19, 0x12, 0xE9, 0x8B,\n0x0B, 0x21, 0x11, 0xB3, 0x63, 0xC2, 0x83, 0x30, 0x2B, 0xD6, 0x9F, 0xAF, 0x45, 0x31, 0xFF, 0x98,\n0x69, 0xBB, 0x3D, 0xCC, 0x99, 0x38, 0x99, 0x89, 0x55, 0xCC, 0xF8, 0x83, 0x36, 0x20, 0x66, 0x45,\n0x32, 0x51, 0x12, 0xD1, 0x11, 0xFD, 0x5E, 0x23, 0x86, 0x01, 0x71, 0x37, 0x7D, 0x26, 0x5A, 0x35,\n0xE5, 0xEB, 0x8A, 0x64, 0x62, 0x1E, 0x45, 0x59, 0x3C, 0xBF, 0xC5, 0x08, 0x8A, 0x9C, 0x89, 0xAE,\n0x18, 0xD7, 0xDD, 0xC2, 0x3C, 0xB1, 0x7A, 0x00, 0xE7, 0x76, 0xEA, 0x8A, 0x62, 0x88, 0xA2, 0x5C,\n0x4F, 0x2D, 0xAA, 0x4C, 0x5C, 0xCD, 0xF8, 0xE1, 0x4D, 0x97, 0xDA, 0x3A, 0x88, 0x64, 0xA2, 0x46,\n0xCC, 0xC4, 0xB5, 0x29, 0x2A, 0xA2, 0x5F, 0x6C, 0xF8, 0x80, 0x7B, 0xBF, 0x9C, 0x86, 0xF5, 0x8C,\n0x88, 0xC8, 0x83, 0x0D, 0x86, 0x87, 0x1D, 0x51, 0x64, 0x51, 0x8A, 0x21, 0x86, 0x23, 0xDA, 0x89,\n0x28, 0x11, 0x3F, 0x0D, 0xA6, 0x86, 0x20, 0x9A, 0x61, 0xEE, 0x31, 0x52, 0x26, 0xA2, 0x38, 0xE3,\n0xEB, 0x29, 0x88, 0x1A, 0x81, 0x70, 0x2C, 0xA7, 0x83, 0x21, 0x99, 0x68, 0xF1, 0x92, 0x2A, 0x5A,\n0x9F, 0xC8, 0xEE, 0x30, 0x5F, 0xAB, 0x95, 0x08, 0x0F, 0xE0, 0x62, 0xC8, 0x18, 0x83, 0x46, 0xF1,\n0xE0, 0x4F, 0xB5, 0x1D, 0x1A, 0x28, 0x36, 0x33, 0x8C, 0x58, 0x4E, 0xBB, 0xDF, 0x1F, 0x6E, 0x67,\n0xC2, 0x66, 0x08, 0x22, 0xE5, 0xF4, 0x66, 0x40, 0x44, 0x50, 0x32, 0x71, 0xC6, 0xD7, 0x53, 0x5D,\n0xD6, 0x1F, 0x09, 0x05, 0xF1, 0x9B, 0x9A, 0x51, 0x02, 0x44, 0x55, 0xFC, 0x39, 0x64, 0xA2, 0x22,\n0xAA, 0xE2, 0x8E, 0x9F, 0xA7, 0xD1, 0x28, 0x88, 0xAC, 0x67, 0x78, 0x39, 0x8D, 0xB3, 0xA8, 0x37,\n0xD2, 0x7A, 0x46, 0x20, 0x7C, 0x4E, 0x1A, 0x52, 0x4D, 0x51, 0xCC, 0x0F, 0xE0, 0x4C, 0xA2, 0x0A,\n0x22, 0x47, 0x22, 0xEB, 0x19, 0x62, 0x08, 0x22, 0x89, 0xE8, 0xA9, 0xE8, 0x88, 0x62, 0xB8, 0x9A,\n0xF1, 0xEB, 0x29, 0x88, 0x1A, 0x28, 0xD6, 0x8D, 0xE2, 0x88, 0xF8, 0xF3, 0xCF, 0x5B, 0x09, 0x37,\n0x24, 0x13, 0x23, 0x22, 0x93, 0xFD, 0x78, 0xB1, 0x51, 0xC3, 0xD0, 0x29, 0xE6, 0x67, 0xB7, 0xC3,\n0x9D, 0x3E, 0x8A, 0x87, 0x07, 0xFB, 0x1A, 0xF5, 0xDA, 0x29, 0x8B, 0x52, 0x20, 0x32, 0xD9, 0xFF,\n0x50, 0x02, 0xC4, 0xE9, 0x54, 0x94, 0x98, 0xF1, 0xEB, 0xA9, 0x20, 0x7E, 0x45, 0x2A, 0x76, 0x32,\n0x91, 0xF7, 0x6F, 0x4B, 0x44, 0xAF, 0xA6, 0x20, 0x16, 0x45, 0xCA, 0x29, 0x53, 0xE1, 0xF0, 0xBB,\n0x85, 0x12, 0x62, 0x77, 0x77, 0x18, 0xC6, 0xAC, 0x99, 0x13, 0x11, 0xC5, 0xF8, 0xED, 0x85, 0xB4,\n0xB1, 0x28, 0x86, 0x9D, 0x79, 0x22, 0x33, 0x61, 0x55, 0xBC, 0x1C, 0x10, 0xEF, 0x84, 0x70, 0x5B,\n0x52, 0xD1, 0x10, 0x97, 0x57, 0x18, 0x4A, 0xCC, 0xF8, 0xF5, 0x54, 0x11, 0xBF, 0xEA, 0xA7, 0x22,\n0x89, 0xE8, 0x88, 0x96, 0x88, 0x5B, 0x10, 0x45, 0xD1, 0x11, 0xF5, 0xBF, 0x0B, 0x88, 0x3F, 0xC8,\n0xE7, 0x45, 0xBE, 0xB5, 0xF8, 0xEE, 0xBB, 0xDF, 0xC6, 0xC5, 0xD3, 0x9C, 0x89, 0xF9, 0x4C, 0x04,\n0xB1, 0x8D, 0x49, 0xC4, 0xFC, 0x2B, 0x32, 0xE2, 0xC6, 0xA2, 0x21, 0xF2, 0x43, 0xA6, 0xAC, 0x9D,\n0x82, 0x78, 0x39, 0x20, 0xDE, 0xDD, 0x91, 0x89, 0x37, 0x64, 0xA2, 0x11, 0xDA, 0x5F, 0x33, 0xEE,\n0x31, 0xE4, 0x2B, 0x8B, 0x20, 0x92, 0x8A, 0x8A, 0xD8, 0x2F, 0xA7, 0x77, 0x9E, 0x8A, 0x5C, 0x4F,\n0xCF, 0xBC, 0x51, 0x1C, 0x10, 0x7F, 0x58, 0xDC, 0x78, 0x2C, 0x34, 0x9E, 0x7C, 0xF7, 0x76, 0x67,\n0xA0, 0xF8, 0xC1, 0xF7, 0x5F, 0xFF, 0x11, 0x26, 0xFB, 0x18, 0xFE, 0xBF, 0x3E, 0x51, 0xF8, 0xBB,\n0xDF, 0x77, 0x03, 0x51, 0xCA, 0x80, 0x29, 0x72, 0x24, 0x86, 0xDD, 0x61, 0x53, 0x14, 0xC3, 0xCB,\n0xFF, 0xA8, 0xBB, 0xF7, 0xD7, 0x46, 0xAA, 0x28, 0x0E, 0xE0, 0x48, 0x15, 0xEB, 0x2B, 0xA3, 0xF4,\n0x41, 0xB6, 0x90, 0x6E, 0x09, 0x1A, 0xDC, 0x91, 0x62, 0x37, 0x01, 0x45, 0x70, 0x22, 0x4A, 0x8A,\n0x56, 0x88, 0xC1, 0xA4, 0x2D, 0xAD, 0x22, 0x5B, 0x48, 0x76, 0xED, 0x43, 0xAB, 0x94, 0xF1, 0x01,\n0x2E, 0xAE, 0x7F, 0xBA, 0xE7, 0x7C, 0xEF, 0x3D, 0xF3, 0x9D, 0x7B, 0x67, 0xD2, 0xEA, 0x6F, 0xD3,\n0xAF, 0x22, 0xAE, 0x6F, 0xFD, 0x78, 0xEE, 0x3D, 0xE7, 0xCE, 0x9D, 0xE4, 0x3B, 0x87, 0x48, 0x43,\n0xAB, 0x44, 0x18, 0x3A, 0xC6, 0x66, 0xCF, 0x18, 0x8A, 0x18, 0x97, 0x22, 0x11, 0x43, 0x43, 0x20,\n0x82, 0xF1, 0xF5, 0xEF, 0x5E, 0x66, 0x25, 0x86, 0xB7, 0x87, 0x77, 0xFA, 0x26, 0x48, 0xC8, 0x89,\n0x36, 0xA8, 0xC1, 0x67, 0xF0, 0xE7, 0x7D, 0xC9, 0x41, 0x70, 0xCD, 0x86, 0x86, 0x4C, 0x05, 0xB2,\n0x5C, 0x87, 0x54, 0xE4, 0x67, 0x9E, 0xE6, 0x8B, 0xFE, 0xB8, 0x6D, 0x9F, 0x81, 0x02, 0xC4, 0x70,\n0xC2, 0x78, 0xF8, 0x5D, 0x7F, 0xD8, 0x3F, 0x0F, 0x11, 0x59, 0x89, 0xF2, 0xD0, 0x5B, 0x11, 0x25,\n0x95, 0x4A, 0x6C, 0xF4, 0x8C, 0xF1, 0xE1, 0x37, 0xFB, 0xE5, 0x52, 0x64, 0x2D, 0x06, 0x8D, 0x0D,\n0xFB, 0x9A, 0x60, 0xC4, 0xA8, 0x5C, 0x3C, 0x15, 0xC4, 0xE3, 0x21, 0x0B, 0x51, 0x7F, 0x72, 0xC9,\n0x4B, 0xCB, 0xA9, 0xA6, 0x8F, 0xA4, 0xB1, 0xE2, 0x1D, 0x29, 0xBF, 0x62, 0x9A, 0xE7, 0x86, 0xC8,\n0x67, 0xC2, 0x49, 0x8E, 0xD2, 0xEF, 0xF2, 0xD0, 0xAD, 0x1D, 0x7D, 0x96, 0xFB, 0xF9, 0x50, 0x73,\n0x6E, 0x88, 0xEF, 0x71, 0x39, 0x65, 0x29, 0x2A, 0x23, 0x0D, 0x1D, 0x61, 0xB3, 0x67, 0x0C, 0x20,\n0x46, 0xA5, 0x58, 0xBF, 0x9C, 0x96, 0x11, 0x5F, 0x37, 0xC4, 0xEA, 0x9D, 0xC5, 0x5F, 0x8C, 0x30,\n0x94, 0x9C, 0x9A, 0x22, 0x0A, 0x31, 0xF5, 0xB4, 0xA1, 0x21, 0xF2, 0xDF, 0x14, 0x13, 0x39, 0xE4,\n0xFC, 0x42, 0x86, 0x8C, 0xF0, 0x9A, 0x54, 0x32, 0xEE, 0x6B, 0x66, 0x44, 0xB4, 0x59, 0xDF, 0x6D,\n0x89, 0xB6, 0x4C, 0x7C, 0xB7, 0x5D, 0x20, 0xBE, 0x1B, 0x20, 0xF6, 0x9F, 0x78, 0x43, 0x20, 0x42,\n0x11, 0x69, 0xF8, 0x8C, 0x21, 0x1F, 0x0F, 0x1D, 0x95, 0x62, 0x58, 0x89, 0x03, 0x8F, 0x38, 0x0F,\n0x10, 0xBF, 0xE3, 0x9E, 0x18, 0x55, 0xE2, 0xCE, 0x34, 0x04, 0xD4, 0x5F, 0x22, 0xE3, 0x74, 0x97,\n0xAF, 0x7B, 0x77, 0xFA, 0x9A, 0x1F, 0xF3, 0x25, 0xD7, 0x16, 0x39, 0x62, 0x2C, 0x51, 0x7C, 0x84,\n0x83, 0xEA, 0x3C, 0x7E, 0xC7, 0x34, 0xE9, 0xBB, 0x4C, 0x3A, 0xFC, 0x06, 0x3E, 0x1B, 0x30, 0x24,\n0x5A, 0x88, 0xC8, 0x09, 0x10, 0xDF, 0x90, 0x00, 0x11, 0x86, 0xEC, 0x4E, 0x89, 0x08, 0x43, 0xBF,\n0x29, 0x3E, 0x68, 0xEE, 0x73, 0x0C, 0x7D, 0x21, 0xB8, 0xBE, 0x14, 0x59, 0x89, 0x92, 0xB8, 0x12,\n0x5F, 0xB6, 0x19, 0xC3, 0x23, 0xDA, 0xA0, 0x48, 0xC4, 0xFE, 0x4C, 0xA3, 0x86, 0x88, 0x2A, 0xF2,\n0xD9, 0xBE, 0x22, 0x42, 0xE1, 0xA3, 0xE8, 0x53, 0xC1, 0x68, 0x48, 0xC8, 0xBA, 0x67, 0x89, 0x07,\n0x7D, 0xCD, 0x18, 0x95, 0xC8, 0x33, 0x37, 0x54, 0x22, 0x52, 0x9A, 0xF5, 0x89, 0x88, 0x42, 0x44,\n0x66, 0x2B, 0x6E, 0xD6, 0x77, 0x95, 0xF8, 0x3A, 0x0C, 0xD9, 0x9D, 0xEA, 0x96, 0x38, 0xE4, 0x72,\n0x6A, 0xF9, 0xEB, 0xF3, 0xA6, 0x0E, 0x8A, 0x40, 0xD4, 0x18, 0x61, 0xA8, 0x08, 0xC3, 0x18, 0x31,\n0x1E, 0x14, 0x89, 0xC8, 0x4A, 0xCC, 0xA5, 0x2E, 0xB4, 0xE4, 0x5A, 0xF9, 0x0C, 0x15, 0x89, 0x3E,\n0x86, 0x97, 0x16, 0x0D, 0xD1, 0x0C, 0x83, 0x63, 0x9B, 0xBB, 0x37, 0xC4, 0xDC, 0x5B, 0xF5, 0xA2,\n0x9B, 0x6E, 0x49, 0xDA, 0x77, 0x39, 0xE8, 0xA4, 0xDD, 0xF8, 0x69, 0x22, 0x0B, 0x71, 0x70, 0x2C,\n0x95, 0x68, 0x5B, 0x22, 0x14, 0x1D, 0x22, 0xBB, 0x53, 0xEE, 0x89, 0x48, 0xC3, 0x07, 0x45, 0x41,\n0x7C, 0x41, 0x44, 0x0F, 0xE9, 0x52, 0x29, 0x44, 0x22, 0xBE, 0x6C, 0x95, 0xC8, 0x77, 0xDB, 0x22,\n0xC4, 0x49, 0x17, 0x73, 0xBE, 0xF4, 0xA4, 0x49, 0x32, 0xB5, 0x25, 0x75, 0xE2, 0x3B, 0x1B, 0x22,\n0xD2, 0x10, 0x21, 0xE1, 0xAD, 0x8A, 0xFA, 0x67, 0x5B, 0x63, 0x14, 0xCC, 0x88, 0xBD, 0xB5, 0x03,\n0x6B, 0xA4, 0xB8, 0x27, 0xF2, 0xE4, 0xD4, 0x0A, 0xF1, 0x64, 0x53, 0x1E, 0xEC, 0x87, 0x88, 0xC2,\n0x88, 0x4B, 0x60, 0x6A, 0x88, 0xC0, 0x90, 0x95, 0xD8, 0xE8, 0x41, 0xD1, 0x10, 0xA9, 0xC8, 0x19,\n0x83, 0x8A, 0x44, 0x0C, 0x14, 0x79, 0x55, 0xAA, 0x8A, 0xB8, 0xEE, 0xBF, 0x4F, 0xA1, 0x9B, 0xB6,\n0xF6, 0x52, 0x9B, 0x36, 0x3A, 0xB6, 0x29, 0x12, 0x31, 0x7E, 0xD3, 0xF4, 0x36, 0x44, 0xBB, 0xA8,\n0xB8, 0x30, 0xC4, 0xFC, 0x11, 0x08, 0x39, 0xE8, 0x27, 0xC9, 0xC2, 0xFF, 0xAD, 0xEC, 0x53, 0xC1,\n0xD8, 0x9D, 0xA2, 0x10, 0x91, 0xE3, 0x87, 0x8A, 0x88, 0x59, 0x1F, 0x86, 0x40, 0xE4, 0x9E, 0x28,\n0x0B, 0xC7, 0x27, 0x86, 0xE8, 0x0C, 0x1B, 0x3E, 0x28, 0xC6, 0x88, 0x08, 0x11, 0x6B, 0x2B, 0x91,\n0x7B, 0xA2, 0x24, 0x98, 0x31, 0x56, 0x62, 0x44, 0x3C, 0x51, 0x4C, 0x7B, 0x7B, 0xE3, 0x21, 0x32,\n0xB1, 0xFE, 0x34, 0xE8, 0x4E, 0xC3, 0x73, 0x70, 0xE4, 0xD6, 0x97, 0x30, 0x26, 0x7D, 0xCB, 0x01,\n0x11, 0x7B, 0x40, 0xEC, 0xAD, 0xE5, 0xB6, 0xED, 0x55, 0x9E, 0x26, 0xEE, 0xAC, 0xCA, 0xEF, 0x1A,\n0x48, 0xC6, 0xEB, 0xB2, 0x9A, 0x12, 0x51, 0xFE, 0x45, 0x5C, 0x67, 0xF3, 0xC4, 0x10, 0x35, 0x83,\n0x08, 0xF1, 0x41, 0x83, 0x07, 0x45, 0x41, 0x7C, 0x0E, 0xC3, 0xA8, 0x43, 0x8D, 0x11, 0xA1, 0xC8,\n0x63, 0x37, 0x22, 0x8A, 0xA1, 0x2A, 0x96, 0x2A, 0x71, 0x20, 0x11, 0x44, 0xBB, 0x65, 0xA3, 0x8A,\n0xD2, 0x36, 0x0E, 0x35, 0x8B, 0x1E, 0x14, 0x6B, 0x11, 0x79, 0xFC, 0xC6, 0xD4, 0xCE, 0xF9, 0x9D,\n0x7E, 0x91, 0x71, 0xB1, 0x9A, 0x52, 0x71, 0x3C, 0x74, 0xC9, 0x1D, 0x22, 0x6F, 0x49, 0xED, 0x9C,\n0x0F, 0x5C, 0xAE, 0xA5, 0x10, 0x6D, 0x39, 0x05, 0x22, 0x0C, 0x81, 0x88, 0x09, 0x03, 0x86, 0x44,\n0xF4, 0x86, 0x0F, 0xEE, 0x05, 0x62, 0xA9, 0x16, 0x61, 0xB8, 0x04, 0x51, 0x82, 0xE5, 0x94, 0x95,\n0x48, 0x44, 0x89, 0x20, 0x6A, 0xA6, 0x82, 0xB8, 0x69, 0x88, 0xA2, 0x98, 0x0F, 0x11, 0x1B, 0x15,\n0x05, 0x62, 0xA8, 0x88, 0x82, 0x40, 0x43, 0xE4, 0xCE, 0xCF, 0xFF, 0xC6, 0x74, 0xF1, 0xA3, 0xFF,\n0x59, 0x08, 0x43, 0xC4, 0x56, 0xD2, 0xF2, 0x88, 0x8B, 0xB6, 0xDD, 0x1C, 0xF6, 0x88, 0xAB, 0x27,\n0xCE, 0x70, 0xB6, 0xBA, 0xAD, 0x77, 0xDD, 0x88, 0xA8, 0xCB, 0x69, 0x8C, 0xF8, 0x89, 0x47, 0xA4,\n0x61, 0x83, 0xA7, 0x7D, 0x22, 0x46, 0xA5, 0x48, 0xC4, 0xDA, 0x11, 0x03, 0x8A, 0xBC, 0x04, 0x4E,\n0xC4, 0x87, 0x15, 0x44, 0x28, 0xFA, 0xBD, 0x2A, 0x57, 0x43, 0x5F, 0x89, 0x43, 0x43, 0x64, 0x6B,\n0x83, 0xDC, 0xA1, 0x38, 0xD5, 0x07, 0x7E, 0x12, 0xFC, 0xB2, 0x43, 0x44, 0x10, 0xAA, 0x62, 0xEE,\n0x15, 0xA7, 0x28, 0x45, 0x7E, 0x74, 0xC6, 0xF1, 0xC0, 0x65, 0xF3, 0x21, 0xEF, 0x66, 0xBC, 0x1B,\n0x20, 0xC2, 0xB0, 0xB6, 0x12, 0xF5, 0xB6, 0x4A, 0x73, 0xA7, 0x7D, 0x41, 0xFC, 0x0D, 0x82, 0xD5,\n0x6D, 0x11, 0x86, 0xE1, 0x9C, 0x88, 0x94, 0x10, 0xAD, 0x3D, 0x95, 0x44, 0x88, 0xC7, 0xEB, 0xE1,\n0x07, 0x83, 0xB5, 0x26, 0x21, 0xA2, 0xFC, 0xBA, 0x28, 0x08, 0xE2, 0x5D, 0xDF, 0x8A, 0x11, 0x2B,\n0x76, 0xEC, 0xB9, 0x2D, 0x7E, 0x99, 0xC7, 0x9F, 0x00, 0x2E, 0xC7, 0x42, 0xC5, 0x82, 0x7A, 0xED,\n0xBE, 0x1B, 0xDA, 0x10, 0x67, 0xCE, 0x70, 0xBC, 0xB9, 0xCD, 0xFB, 0x8A, 0xEF, 0x6A, 0x3C, 0xA2,\n0xDE, 0x6E, 0xEF, 0x3F, 0xE1, 0xD9, 0x29, 0x0D, 0x95, 0xF0, 0xC1, 0x83, 0xE6, 0x4E, 0xFB, 0xF2,\n0x54, 0x98, 0x88, 0x95, 0x05, 0xF5, 0xB2, 0x3A, 0x63, 0x7C, 0x5F, 0x45, 0xE4, 0xC1, 0x9B, 0x22,\n0x9E, 0xBB, 0x7D, 0x67, 0x33, 0x78, 0x6D, 0xBF, 0xDB, 0xF1, 0x88, 0x3D, 0xBF, 0x27, 0xE2, 0x7C,\n0x5C, 0x11, 0x25, 0x41, 0x6B, 0x73, 0xD7, 0x62, 0xEA, 0xC7, 0x79, 0xDF, 0xA0, 0x4E, 0x6A, 0x3E,\n0x9C, 0xAF, 0x97, 0x7A, 0xC4, 0x71, 0xDB, 0xE6, 0x0B, 0x20, 0x0E, 0x1D, 0xA2, 0xB4, 0xA6, 0x86,\n0x28, 0xFF, 0xEC, 0x61, 0x25, 0xD6, 0xEE, 0x89, 0x58, 0x4C, 0x55, 0xB1, 0xB1, 0x8F, 0x85, 0xF5,\n0x65, 0x8C, 0x5B, 0x10, 0x2F, 0x61, 0x48, 0xC4, 0xCA, 0x88, 0xC1, 0x71, 0xDF, 0x2B, 0xFA, 0xFF,\n0xE1, 0x8F, 0x05, 0x11, 0x8A, 0xF6, 0xC6, 0x77, 0x19, 0xB1, 0xA7, 0x88, 0xCA, 0x98, 0xD7, 0x7C,\n0x36, 0xD8, 0xED, 0x8A, 0xB9, 0xCE, 0xE2, 0x7D, 0x19, 0x56, 0x30, 0x09, 0x48, 0x67, 0x03, 0x44,\n0x0D, 0xAF, 0x9C, 0x26, 0x13, 0xAF, 0x38, 0x69, 0x1B, 0x22, 0x0B, 0xB1, 0xBF, 0xBE, 0x6D, 0x88,\n0xEF, 0x49, 0x68, 0x18, 0x54, 0xE2, 0x80, 0x88, 0xDE, 0x50, 0xD2, 0xD8, 0x23, 0x1B, 0xBD, 0xB3,\n0xB8, 0xCF, 0x54, 0x10, 0x2F, 0x89, 0x18, 0x56, 0x22, 0x15, 0x79, 0x66, 0x03, 0xC4, 0x13, 0x87,\n0xB8, 0x6A, 0x88, 0xEE, 0xC2, 0x5B, 0x67, 0x16, 0x21, 0x6A, 0x0C, 0x11, 0xB9, 0x65, 0x57, 0x24,\n0x62, 0x62, 0xB3, 0xC5, 0x67, 0x07, 0x50, 0x1C, 0x3E, 0xE2, 0x80, 0x61, 0x86, 0xE9, 0x6E, 0x31,\n0x2C, 0xFA, 0xE5, 0xD4, 0xCD, 0x17, 0x0E, 0x71, 0xBA, 0x83, 0x9B, 0x6E, 0x58, 0x4D, 0x0D, 0xF1,\n0x65, 0x20, 0xA2, 0x12, 0x0D, 0xD1, 0x1A, 0x1B, 0x5B, 0x4D, 0x35, 0x8D, 0x3D, 0xB2, 0x71, 0x88,\n0x4C, 0x80, 0x28, 0x84, 0x44, 0x9C, 0x07, 0x95, 0xF8, 0x4A, 0xA1, 0x28, 0x86, 0xF5, 0x88, 0xA5,\n0xF5, 0x54, 0x10, 0xDD, 0x7F, 0xD7, 0x6E, 0x0F, 0x87, 0xE0, 0xD6, 0x7C, 0xA4, 0x6B, 0x08, 0x67,\n0xC5, 0x72, 0x6A, 0x14, 0x3F, 0x1E, 0xBB, 0x02, 0xEC, 0xAF, 0xBD, 0x9F, 0xBB, 0xE3, 0xF5, 0x0E,\n0x5B, 0xD3, 0x5E, 0xF1, 0xF5, 0x89, 0xAD, 0xA2, 0xB7, 0xB1, 0x49, 0x9F, 0x6D, 0xCD, 0xF5, 0x0A,\n0x10, 0xC5, 0xD0, 0x10, 0x25, 0xCB, 0x2B, 0xD1, 0xEA, 0x50, 0x19, 0x1B, 0x7B, 0x64, 0xA3, 0x77,\n0x16, 0xCF, 0x48, 0x18, 0x21, 0xAA, 0x62, 0x0D, 0xE2, 0x95, 0x54, 0xA2, 0x84, 0xCF, 0x85, 0xED,\n0x16, 0x38, 0x11, 0xDB, 0xC1, 0x8D, 0xB7, 0xF6, 0xD6, 0x86, 0x8D, 0x18, 0x38, 0x04, 0x37, 0xC4,\n0xCE, 0x9A, 0xCF, 0x32, 0x44, 0xFE, 0x08, 0xC9, 0x75, 0x23, 0xD5, 0x0A, 0xFE, 0xF8, 0x9D, 0x8E,\n0xAF, 0x65, 0x31, 0xD4, 0xB8, 0xFB, 0xA6, 0xF6, 0x01, 0x8B, 0xC9, 0x78, 0xE8, 0xFE, 0xB1, 0xDB,\n0xB6, 0x9C, 0xAE, 0x8E, 0xF5, 0xC7, 0x59, 0x36, 0xD6, 0xF9, 0x02, 0xAF, 0x26, 0xF2, 0xBC, 0x46,\n0x1E, 0xAC, 0x15, 0x95, 0x38, 0x2F, 0x2A, 0x71, 0xE0, 0x11, 0xBD, 0x61, 0xC3, 0x11, 0xFF, 0x3A,\n0x8B, 0x14, 0x89, 0x28, 0xC9, 0x32, 0x87, 0x38, 0x2F, 0x10, 0xAF, 0xE4, 0xDF, 0x57, 0x0A, 0x31,\n0x3C, 0x78, 0xB3, 0x7B, 0x36, 0x05, 0x62, 0xF4, 0xCD, 0x18, 0x33, 0x37, 0xBB, 0x25, 0xBB, 0x9D,\n0x3A, 0x44, 0x1B, 0xF9, 0x23, 0xC2, 0x82, 0x91, 0x23, 0x22, 0xCA, 0x6F, 0x21, 0x47, 0x6F, 0x6B,\n0x7E, 0xDB, 0x5B, 0xE3, 0x78, 0xC1, 0x37, 0x13, 0x3B, 0x2D, 0xDF, 0xC5, 0x4C, 0x8A, 0x3D, 0xD1,\n0x19, 0x66, 0xC7, 0x0F, 0xED, 0x7E, 0x0D, 0xCF, 0x6B, 0x84, 0x11, 0xD1, 0x4A, 0x9C, 0x5B, 0x5F,\n0x53, 0x20, 0x52, 0xB1, 0xB9, 0xEF, 0x28, 0x12, 0x91, 0x8A, 0x41, 0x25, 0x8A, 0x22, 0x11, 0x4D,\n0xF1, 0x15, 0x5B, 0x4E, 0x25, 0x11, 0x62, 0x3F, 0xD3, 0xAC, 0xCB, 0x0A, 0x56, 0x42, 0xC4, 0x62,\n0x26, 0xFF, 0xC9, 0x7B, 0xEE, 0xBD, 0x1A, 0x22, 0x86, 0x5F, 0x71, 0x42, 0xC6, 0xDA, 0x4C, 0xFC,\n0x56, 0x97, 0xBF, 0x23, 0x23, 0xC9, 0xC2, 0x75, 0xA0, 0x86, 0x18, 0xDC, 0xDF, 0x4F, 0x5B, 0x53,\n0xDF, 0xC6, 0x6C, 0xF8, 0xD3, 0xEF, 0x59, 0x86, 0x48, 0x5B, 0x43, 0x44, 0xD7, 0x9B, 0x86, 0x7B,\n0xE2, 0x5C, 0x0D, 0x51, 0x8A, 0xAC, 0x44, 0x09, 0x7E, 0xD1, 0xDC, 0xC3, 0x53, 0xB9, 0x29, 0x75,\n0x56, 0x55, 0x64, 0x63, 0x63, 0xCB, 0xE9, 0x1C, 0x71, 0x86, 0x57, 0x86, 0xC8, 0xF5, 0x14, 0xD7,\n0x16, 0x81, 0x98, 0x15, 0x88, 0xFC, 0x20, 0xF0, 0x6B, 0xBF, 0xBA, 0xB5, 0x5A, 0xEE, 0x22, 0xF8,\n0x32, 0x44, 0x64, 0x29, 0xA5, 0x9D, 0xC5, 0x1C, 0xBC, 0x2F, 0x0F, 0x2F, 0x3E, 0x9A, 0xBA, 0x1F,\n0x24, 0x35, 0xDF, 0xF5, 0xA5, 0x4F, 0x4F, 0x06, 0x2E, 0xC7, 0xEE, 0xB1, 0xFE, 0xE6, 0x30, 0x43,\n0x5C, 0x5B, 0x13, 0x22, 0xDA, 0x62, 0x8A, 0x61, 0x5F, 0x11, 0x59, 0x89, 0x30, 0xB4, 0xE6, 0xB4,\n0xD1, 0xE7, 0x6E, 0xDF, 0xEC, 0x53, 0x91, 0xA5, 0x08, 0x44, 0x51, 0xCC, 0x3C, 0x22, 0x9A, 0x53,\n0x8F, 0x58, 0x54, 0x22, 0x1F, 0x0C, 0xD7, 0x21, 0xDA, 0x65, 0xFE, 0xF6, 0x64, 0xE8, 0xE7, 0xEC,\n0x64, 0x37, 0x40, 0x1C, 0x08, 0x22, 0x6F, 0xF4, 0xDF, 0x89, 0x68, 0x43, 0xFC, 0xA3, 0x77, 0xF4,\n0x4F, 0xF0, 0x7F, 0x89, 0x14, 0x8A, 0x44, 0x74, 0xCF, 0xF4, 0xB7, 0x76, 0x7D, 0x29, 0x9E, 0xAC,\n0x63, 0x47, 0x3C, 0xCF, 0x5C, 0xA4, 0xAD, 0x79, 0x93, 0x88, 0xEF, 0x12, 0x31, 0xAA, 0x44, 0xB7,\n0x25, 0x72, 0x48, 0x6C, 0x3C, 0xE2, 0x07, 0xFF, 0xD0, 0x30, 0x56, 0xE4, 0x9E, 0x38, 0x0C, 0xF6,\n0xC4, 0xC7, 0x01, 0xE2, 0x7B, 0x15, 0xC4, 0x13, 0x45, 0xB4, 0x06, 0x75, 0x36, 0xF0, 0x91, 0x42,\n0x34, 0x44, 0x37, 0xB5, 0xA4, 0x7B, 0x2E, 0x5E, 0x71, 0x89, 0xA1, 0xFF, 0xAD, 0xD6, 0x72, 0xCA,\n0x62, 0xAA, 0x7F, 0x7C, 0xCB, 0xFF, 0xA8, 0xFC, 0x82, 0x30, 0x2F, 0x9C, 0xA6, 0xA9, 0x95, 0x22,\n0x10, 0x4F, 0x32, 0x44, 0x4E, 0x6B, 0xEC, 0x02, 0x7F, 0x88, 0x48, 0xC3, 0xB9, 0x55, 0xE2, 0x97,\n0x03, 0x8F, 0x28, 0xB9, 0x1F, 0x88, 0xC2, 0x08, 0x40, 0x2A, 0x3E, 0x28, 0x10, 0xB3, 0x00, 0xF1,\n0xEA, 0xC9, 0x15, 0x3B, 0x1B, 0x87, 0x28, 0xF1, 0x88, 0x12, 0x8F, 0xB8, 0x69, 0x88, 0xC7, 0xB3,\n0xA1, 0x19, 0xE6, 0x49, 0x47, 0xE3, 0x10, 0x91, 0x08, 0xD1, 0x1C, 0xEB, 0xBF, 0x5C, 0xDF, 0xEF,\n0x56, 0x0B, 0x31, 0x44, 0xED, 0xBA, 0x45, 0xEF, 0x40, 0x08, 0xC3, 0xEF, 0x84, 0xC6, 0xE3, 0xE0,\n0x6E, 0x6B, 0xEC, 0x4B, 0x51, 0x57, 0xD3, 0xE3, 0xCC, 0x65, 0x22, 0x6D, 0x8D, 0x21, 0xBE, 0x57,\n0xBB, 0x25, 0xCE, 0x15, 0x11, 0x8A, 0xDC, 0x12, 0xCD, 0xB1, 0xD1, 0x27, 0xE0, 0x2F, 0x94, 0x30,\n0xD8, 0x16, 0xD9, 0xD9, 0x10, 0x91, 0x95, 0xA8, 0x8A, 0xDC, 0x14, 0x25, 0x8A, 0x68, 0x9D, 0xCD,\n0x2F, 0x99, 0x66, 0x20, 0xF7, 0x6B, 0x7E, 0xF9, 0x45, 0xAE, 0x81, 0x0F, 0xF5, 0x07, 0x2E, 0xD3,\n0xA4, 0xE3, 0xDE, 0x8E, 0xDA, 0x25, 0x62, 0x62, 0x8A, 0x82, 0xC8, 0xC4, 0x8A, 0x80, 0xB5, 0x42,\n0x6C, 0x79, 0xC4, 0x77, 0x9C, 0x52, 0x7F, 0x8F, 0x83, 0x7E, 0x09, 0xB1, 0x9D, 0xE6, 0x83, 0x0C,\n0x99, 0x49, 0x21, 0xFA, 0xB6, 0x66, 0xB8, 0xBE, 0x62, 0x5B, 0x62, 0x71, 0x5C, 0xC3, 0x3D, 0x11,\n0x88, 0x7E, 0x53, 0xE4, 0x96, 0xA8, 0x82, 0xF7, 0x05, 0x51, 0x7F, 0xAA, 0x22, 0xB2, 0x3B, 0x0D,\n0x11, 0xB5, 0xB3, 0x79, 0x25, 0x40, 0x54, 0x45, 0x2C, 0xA7, 0x40, 0x8C, 0x63, 0x86, 0x12, 0x20,\n0xF6, 0x3C, 0x62, 0x2B, 0x81, 0x62, 0xCC, 0xC8, 0x65, 0x95, 0x88, 0x7B, 0xD6, 0xD5, 0x7C, 0xEC,\n0x0C, 0xF7, 0x1E, 0x4D, 0xFC, 0x5F, 0xC3, 0x1B, 0x46, 0x88, 0xDD, 0xCE, 0x22, 0x43, 0x06, 0xC7,\n0xA5, 0xB6, 0x26, 0xE8, 0x4D, 0x63, 0x44, 0x28, 0x72, 0x39, 0x15, 0xC3, 0x7B, 0x84, 0xF8, 0xFC,\n0x0C, 0x8A, 0x26, 0x08, 0x45, 0x0E, 0x8A, 0x86, 0xC8, 0xEE, 0x54, 0x53, 0x8B, 0x28, 0x0B, 0x2A,\n0x11, 0xA3, 0x4C, 0xC4, 0xD0, 0x7F, 0x90, 0xB4, 0x20, 0xFA, 0xB5, 0x6E, 0xAD, 0x8C, 0xB8, 0x46,\n0xC4, 0x28, 0x8F, 0x24, 0x5F, 0xB0, 0xAB, 0x71, 0x88, 0xA9, 0x6F, 0x5D, 0x72, 0xB6, 0xA6, 0x69,\n0x09, 0x71, 0x63, 0x2B, 0xCF, 0x5C, 0x4E, 0xD8, 0xD6, 0xE8, 0x90, 0x68, 0x3B, 0x22, 0x57, 0xD3,\n0x32, 0xE2, 0x70, 0x5E, 0x18, 0x0E, 0x22, 0xC4, 0x66, 0x3F, 0x8B, 0x12, 0x44, 0x55, 0x14, 0x46,\n0x06, 0x88, 0x36, 0x27, 0x5E, 0x5C, 0x84, 0x88, 0x32, 0x64, 0x3C, 0x76, 0x88, 0x9C, 0xF7, 0x6F,\n0x47, 0x1C, 0xCA, 0x7E, 0x58, 0xFA, 0x82, 0x8C, 0xFF, 0x8F, 0xD8, 0x29, 0x75, 0x35, 0xC9, 0x56,\n0x3E, 0x1D, 0x0F, 0x7C, 0x86, 0x93, 0xC4, 0x2F, 0xA6, 0x44, 0xC4, 0xD3, 0xE0, 0x76, 0x67, 0x9C,\n0xB9, 0xCC, 0x8A, 0xB6, 0x66, 0xA5, 0x8C, 0xF8, 0x6E, 0x8C, 0xC8, 0x3D, 0x71, 0x20, 0xB1, 0xBE,\n0xE6, 0x5E, 0x20, 0xCA, 0xB3, 0x28, 0x20, 0xC6, 0x0B, 0xAA, 0x22, 0x4A, 0x80, 0x28, 0x8A, 0x87,\n0x41, 0x25, 0x02, 0x51, 0x14, 0xC3, 0x43, 0x1B, 0x45, 0x9C, 0x3D, 0x93, 0xC4, 0x86, 0xD3, 0x5E,\n0x6B, 0x0B, 0xE7, 0xE0, 0x11, 0xE2, 0x5E, 0x80, 0x08, 0x45, 0x26, 0x40, 0x5C, 0x0C, 0x90, 0x45,\n0x92, 0x4F, 0xF1, 0xAB, 0xCC, 0x38, 0x51, 0x43, 0x22, 0x16, 0x1F, 0xE8, 0xD6, 0x4D, 0x07, 0x59,\n0x29, 0xCF, 0x9E, 0x1D, 0xEF, 0x84, 0xAF, 0x43, 0xC5, 0x88, 0xD6, 0x9D, 0x72, 0x4C, 0xBC, 0x47,\n0x88, 0x7F, 0x9F, 0xC5, 0x8A, 0x38, 0x08, 0xE7, 0x89, 0x8D, 0x28, 0xC2, 0x30, 0x42, 0x94, 0x10,\n0x11, 0x03, 0x7F, 0x2D, 0xE2, 0x70, 0xDA, 0xEA, 0xA5, 0x6D, 0x3D, 0xB7, 0xA9, 0x43, 0x64, 0x6B,\n0x83, 0x50, 0x32, 0x48, 0x3E, 0x58, 0x1E, 0x22, 0xEA, 0x9C, 0xCF, 0x9B, 0x8A, 0x1B, 0xE9, 0x24,\n0x40, 0x1C, 0xAE, 0x5B, 0x21, 0x86, 0xBD, 0x29, 0x10, 0x9F, 0x58, 0x25, 0x12, 0x31, 0x8B, 0x10,\n0xBF, 0x6E, 0x34, 0xE2, 0x1F, 0x66, 0x68, 0x80, 0x44, 0xB4, 0xEE, 0xB4, 0x0E, 0x11, 0x8A, 0x44,\n0x74, 0x5F, 0x68, 0xBA, 0x22, 0x88, 0x92, 0xA1, 0x51, 0x9E, 0x4C, 0xF3, 0xA4, 0x95, 0xCA, 0xCB,\n0x9E, 0xFE, 0xCA, 0x14, 0x52, 0x42, 0x44, 0x88, 0xB8, 0x04, 0xB2, 0xB5, 0xB8, 0x05, 0x31, 0x35,\n0x44, 0xDB, 0x0F, 0x1D, 0xA2, 0x28, 0x76, 0x4E, 0xA0, 0xE7, 0x33, 0xD9, 0xB1, 0x21, 0x91, 0x88,\n0x30, 0xAC, 0xA9, 0x44, 0x18, 0x02, 0x91, 0x86, 0x5F, 0x37, 0xF7, 0x8B, 0xBF, 0xF0, 0x18, 0xC3,\n0x14, 0x59, 0x8A, 0x58, 0x4F, 0x81, 0x28, 0x29, 0x21, 0x6A, 0x80, 0xF8, 0x98, 0x88, 0xE5, 0x3B,\n0x6F, 0xDB, 0x0E, 0x71, 0xDA, 0x6A, 0xE5, 0x92, 0x56, 0xD2, 0xEA, 0xA8, 0xA0, 0x7D, 0x0B, 0x9F,\n0x7D, 0x5B, 0x4D, 0xCB, 0x10, 0x7B, 0x89, 0xE5, 0x16, 0xC4, 0x0E, 0x09, 0xEB, 0x92, 0xF3, 0x23,\n0x4E, 0x31, 0xE7, 0x7B, 0x44, 0x5C, 0x7A, 0x1D, 0x10, 0xF1, 0x62, 0x7D, 0x85, 0x43, 0x62, 0x80,\n0x58, 0x1C, 0xBA, 0xB1, 0x39, 0x65, 0x77, 0x4A, 0xC4, 0x07, 0xCD, 0x45, 0xC4, 0x09, 0xB8, 0x29,\n0xD6, 0x23, 0x0E, 0x2E, 0x06, 0xBA, 0x25, 0x22, 0x44, 0x7C, 0x5C, 0xAC, 0xA7, 0x44, 0xFC, 0x54,\n0x10, 0x47, 0x9A, 0x99, 0xB0, 0xA1, 0xBB, 0xC0, 0x03, 0xBD, 0x75, 0x89, 0x47, 0x94, 0x28, 0xE2,\n0xD0, 0x75, 0x1A, 0x3A, 0xA8, 0x27, 0xAC, 0xC6, 0x7A, 0xC5, 0xB5, 0xFE, 0x72, 0x40, 0x45, 0x3A,\n0x88, 0x16, 0x53, 0xDE, 0x19, 0x5E, 0x6F, 0x6B, 0x87, 0x3A, 0x72, 0x99, 0xAE, 0xDA, 0xA7, 0x9C,\n0x06, 0x5B, 0x22, 0x0B, 0x31, 0x46, 0xCC, 0x88, 0xA8, 0x86, 0x92, 0x06, 0x23, 0xCA, 0x09, 0x38,\n0x0C, 0x6F, 0x58, 0x8B, 0x31, 0xE2, 0x85, 0x35, 0xA7, 0x75, 0x88, 0x7C, 0xC5, 0x4D, 0xB2, 0x7D,\n0xE2, 0x10, 0xF1, 0xE6, 0x3E, 0x3F, 0x82, 0x81, 0x9F, 0xCC, 0x0F, 0xC5, 0x5E, 0xE6, 0x11, 0x5B,\n0x40, 0xBC, 0x55, 0x71, 0x2D, 0xAD, 0xCA, 0xA1, 0x2D, 0x1D, 0xE7, 0x30, 0xCC, 0x16, 0x3D, 0x2E,\n0xA6, 0xD1, 0x87, 0x2D, 0x6C, 0xA6, 0xB3, 0x91, 0xE5, 0x7A, 0xA5, 0xF8, 0x08, 0x22, 0xF6, 0xA6,\n0xAC, 0xC4, 0x9A, 0xE6, 0x14, 0x88, 0x66, 0xD8, 0x6C, 0x44, 0x39, 0x01, 0xBF, 0x39, 0x8B, 0x6B,\n0x11, 0x9B, 0x22, 0x11, 0x55, 0xF1, 0xB0, 0x52, 0x89, 0xE1, 0xD1, 0x9B, 0x47, 0xEC, 0x8F, 0x34,\n0xE7, 0xF2, 0x4E, 0xAE, 0x44, 0x19, 0x0D, 0x51, 0x52, 0x20, 0xB6, 0x22, 0x44, 0x44, 0x11, 0x99,\n0xC2, 0xB0, 0x8A, 0x98, 0x89, 0x5F, 0x6B, 0x4D, 0x4F, 0xC4, 0x33, 0x24, 0xD9, 0x4D, 0x11, 0xEE,\n0x88, 0xC5, 0x05, 0xA9, 0xF5, 0x6E, 0xDF, 0x1B, 0x8E, 0x37, 0xFD, 0x07, 0x64, 0xFA, 0x2D, 0x91,\n0x86, 0x44, 0x9C, 0x4B, 0x0A, 0xC3, 0xCC, 0x10, 0x61, 0xD8, 0x78, 0x44, 0x1C, 0x9E, 0x52, 0x31,\n0x40, 0xCC, 0x34, 0x17, 0xB6, 0x27, 0x9E, 0x06, 0x88, 0x9C, 0x32, 0x78, 0x73, 0x71, 0xC5, 0xFD,\n0x47, 0xFB, 0xE5, 0x61, 0xFC, 0x05, 0x6E, 0x7E, 0x5B, 0x8C, 0x11, 0x25, 0x49, 0x29, 0x60, 0x8C,\n0x33, 0x34, 0x3C, 0xCD, 0x38, 0x4F, 0xD7, 0xDE, 0x7F, 0x47, 0xA6, 0x45, 0x21, 0xF7, 0xDD, 0x67,\n0xDE, 0x21, 0x22, 0x6F, 0x0C, 0xE3, 0x39, 0xE2, 0x6A, 0x7B, 0xEA, 0x11, 0xFD, 0xA0, 0x0F, 0x44,\n0xDB, 0x11, 0x41, 0xF8, 0x4A, 0xA9, 0x12, 0xC3, 0x42, 0x24, 0xE2, 0xD7, 0xF7, 0x00, 0xF1, 0xC5,\n0x1D, 0x88, 0x5A, 0x89, 0xDC, 0x13, 0x4F, 0x03, 0x45, 0x20, 0x5A, 0x29, 0x12, 0x71, 0x45, 0xE3,\n0x10, 0x25, 0x44, 0x94, 0x5A, 0x89, 0x11, 0x7B, 0x61, 0x35, 0x56, 0x5B, 0xD5, 0xBE, 0x37, 0x5C,\n0x4C, 0xF2, 0x44, 0xBE, 0xDA, 0x04, 0x6F, 0x42, 0x25, 0xFA, 0xEA, 0x9C, 0x47, 0x9C, 0xB4, 0x9C,\n0x61, 0x57, 0xE2, 0x08, 0x0D, 0x51, 0xD6, 0x81, 0x81, 0x33, 0xEC, 0x6F, 0xDA, 0x6A, 0xCA, 0x1D,\n0x51, 0x11, 0x51, 0x89, 0x57, 0xA5, 0x51, 0x7F, 0x1E, 0x21, 0xC2, 0xF0, 0xDE, 0x20, 0xEE, 0x73,\n0x5B, 0x0C, 0xF6, 0x44, 0x18, 0xA2, 0x12, 0x51, 0x8A, 0xB5, 0x88, 0x92, 0x18, 0x71, 0x9B, 0xA5,\n0x18, 0x7C, 0xE6, 0x22, 0x14, 0xDB, 0x19, 0x32, 0xE9, 0xE1, 0xE5, 0x61, 0x17, 0x2A, 0x22, 0xC4,\n0xB4, 0xE3, 0xB3, 0x5C, 0x0B, 0x50, 0x7E, 0x5C, 0xDC, 0x32, 0xED, 0x75, 0x33, 0x64, 0xDC, 0x82,\n0x21, 0x10, 0xDD, 0xE7, 0xD6, 0xF0, 0xCA, 0xF0, 0xF9, 0xC8, 0x05, 0xD7, 0x32, 0x80, 0xC8, 0xD3,\n0x1A, 0x5F, 0x89, 0xAF, 0xF0, 0x11, 0x46, 0x51, 0x89, 0x99, 0x22, 0x5E, 0x06, 0x86, 0x4D, 0x1E,\n0x31, 0xEC, 0xDC, 0x8D, 0x95, 0x18, 0x20, 0x66, 0x44, 0xF4, 0x2B, 0x6A, 0x88, 0x48, 0x45, 0x8F,\n0x38, 0xFF, 0x4A, 0x13, 0x23, 0x4A, 0x80, 0xE8, 0x14, 0xD3, 0xDC, 0x4A, 0x68, 0x57, 0xD3, 0xF3,\n0x21, 0x62, 0x00, 0xD9, 0xCF, 0x90, 0x21, 0x0A, 0xD0, 0x47, 0x0C, 0x05, 0x71, 0xCD, 0xFF, 0x1E,\n0x43, 0xC4, 0x76, 0x18, 0x7C, 0x4D, 0xDB, 0xF5, 0x33, 0x67, 0x38, 0x74, 0xD7, 0x32, 0x80, 0xC8,\n0x1D, 0x91, 0x88, 0x57, 0x40, 0x64, 0x25, 0xC2, 0xF0, 0xD2, 0x1B, 0xDE, 0x07, 0x44, 0x1C, 0xD9,\n0xDC, 0xB8, 0x06, 0x95, 0xB5, 0xC8, 0xBE, 0x86, 0x95, 0x08, 0xC4, 0xD3, 0x02, 0x91, 0xAD, 0x0D,\n0x4B, 0x71, 0xBB, 0x40, 0xF4, 0x8A, 0x44, 0x84, 0xA2, 0xA4, 0x82, 0xD8, 0x92, 0x18, 0x62, 0x15,\n0xB2, 0x6B, 0x27, 0xE8, 0x8F, 0x3C, 0x21, 0xEF, 0xEC, 0x27, 0x8B, 0x0C, 0x29, 0x7D, 0x92, 0x9B,\n0x04, 0x86, 0x1E, 0x71, 0x66, 0xF3, 0xC5, 0x0E, 0x3F, 0x32, 0xBA, 0xF4, 0x10, 0x4A, 0x0D, 0x05,\n0xF1, 0x0A, 0x86, 0xAC, 0x44, 0x49, 0x26, 0x86, 0x40, 0xA4, 0x61, 0x83, 0x4F, 0x6C, 0x70, 0x64,\n0xF3, 0x13, 0x14, 0xB9, 0x2B, 0x9E, 0x09, 0xE2, 0x91, 0x22, 0x72, 0x39, 0x3D, 0x34, 0x44, 0xC9,\n0x95, 0x29, 0x02, 0x91, 0x6F, 0xD6, 0x00, 0xF1, 0xA9, 0x06, 0x88, 0xD8, 0x15, 0x35, 0x0E, 0x51,\n0x12, 0x21, 0xE6, 0x44, 0x0C, 0x14, 0x03, 0x4D, 0x3B, 0xC6, 0x4E, 0xD6, 0x82, 0x32, 0x04, 0xA2,\n0xDF, 0x14, 0xA7, 0xEE, 0x7B, 0xF6, 0x0C, 0x91, 0xEF, 0x06, 0x5F, 0xFB, 0x21, 0x71, 0xD0, 0xB6,\n0x1D, 0x91, 0x97, 0xF7, 0x89, 0x88, 0x42, 0x64, 0x25, 0x0E, 0x34, 0x97, 0x97, 0xF7, 0x0D, 0xF1,\n0xF7, 0x9F, 0x7E, 0x72, 0x82, 0xF6, 0x4B, 0x2D, 0xC4, 0xA3, 0x23, 0x43, 0xCC, 0x14, 0x51, 0x14,\n0xE1, 0xF8, 0x04, 0x8A, 0x4B, 0x10, 0xDF, 0x28, 0x23, 0x96, 0x17, 0x54, 0x45, 0x44, 0xA0, 0x98,\n0x4E, 0xE4, 0x3F, 0xAC, 0x22, 0xEE, 0x76, 0x42, 0xC5, 0x1A, 0xC9, 0x34, 0xF3, 0x50, 0x8F, 0x54,\n0x0F, 0x29, 0x10, 0x7B, 0x79, 0x86, 0x61, 0xBE, 0xDF, 0xB1, 0xC6, 0x14, 0x84, 0xF6, 0x96, 0xBE,\n0x15, 0xE2, 0x57, 0x5F, 0x1D, 0xE3, 0xC4, 0xCD, 0x23, 0xC2, 0x90, 0xAB, 0xE9, 0xE3, 0xC7, 0x5C,\n0x4D, 0xB5, 0x12, 0xFD, 0x24, 0x7A, 0xBF, 0x10, 0xE5, 0xC8, 0xE6, 0x4F, 0x41, 0xBC, 0x91, 0x62,\n0x34, 0xC4, 0x7D, 0x09, 0x0C, 0x81, 0x48, 0x45, 0x0D, 0x14, 0xAF, 0xA2, 0x51, 0x91, 0x67, 0x6F,\n0x44, 0xD4, 0x04, 0x5F, 0x31, 0x8C, 0x6C, 0x00, 0xD1, 0xF5, 0xFD, 0x8A, 0x28, 0x31, 0x44, 0x4B,\n0x9E, 0x97, 0x2C, 0xF7, 0x0E, 0x3C, 0x62, 0x6B, 0x8F, 0x86, 0x76, 0x58, 0xDA, 0xEA, 0x38, 0xC4,\n0x51, 0x1B, 0x88, 0xDC, 0x10, 0xB9, 0x23, 0xC2, 0xB0, 0x2F, 0x27, 0x6E, 0x44, 0x54, 0x43, 0x22,\n0x62, 0x47, 0xAC, 0x22, 0xD6, 0x54, 0xE2, 0x7E, 0x93, 0x11, 0x75, 0xDA, 0x17, 0x45, 0x61, 0x84,\n0xA0, 0x75, 0xA7, 0x47, 0x97, 0x47, 0x35, 0x88, 0xA7, 0x2C, 0x45, 0x20, 0xF2, 0xB1, 0xA2, 0x43,\n0x7C, 0xCB, 0x21, 0x9E, 0xAF, 0xF0, 0x8B, 0x4D, 0x81, 0x18, 0x0C, 0x8B, 0x52, 0x89, 0x48, 0x92,\n0x3A, 0x44, 0x2A, 0xEE, 0xE6, 0xB3, 0x81, 0x74, 0x2A, 0x5B, 0xBD, 0x22, 0xDE, 0x70, 0xBC, 0xA6,\n0x86, 0xBC, 0x24, 0x0C, 0xC4, 0xDD, 0x64, 0xE8, 0x10, 0x65, 0x3D, 0x2D, 0x6F, 0x88, 0x86, 0x78,\n0x82, 0xFD, 0xF9, 0xE9, 0xD3, 0xEB, 0x1D, 0x5B, 0x4C, 0x75, 0x46, 0x24, 0xA2, 0x2D, 0xA6, 0x44,\n0x1C, 0x06, 0x88, 0x41, 0x5F, 0xB3, 0xBF, 0xDF, 0xDC, 0x27, 0xFB, 0x6E, 0xDA, 0xFF, 0xC9, 0x14,\n0x11, 0x87, 0x78, 0xC4, 0x3D, 0x31, 0xA8, 0xC4, 0x27, 0x55, 0x44, 0x1E, 0xDB, 0xBC, 0x35, 0x74,\n0x88, 0xDB, 0x0E, 0x31, 0xF8, 0x6A, 0x53, 0xCE, 0x19, 0x7E, 0x02, 0x47, 0x57, 0x49, 0xC5, 0x7C,\n0xB2, 0x18, 0x65, 0xC8, 0xC2, 0xAA, 0x4E, 0x77, 0x3D, 0x24, 0xDD, 0x8B, 0x0C, 0x51, 0xC4, 0xBD,\n0x99, 0x6F, 0x3E, 0xD3, 0xA0, 0x33, 0xB5, 0xD7, 0x2F, 0x46, 0xC8, 0xD3, 0xB1, 0x7B, 0x06, 0x05,\n0x42, 0xAE, 0xA6, 0x86, 0x78, 0xA5, 0x89, 0xB6, 0xC4, 0x0C, 0x88, 0x41, 0x73, 0xBA, 0xDF, 0x78,\n0xC4, 0x17, 0x3F, 0x49, 0xA4, 0x35, 0x75, 0x84, 0x31, 0x62, 0x16, 0x20, 0x9E, 0x06, 0x9B, 0x62,\n0x70, 0x01, 0x55, 0x42, 0x44, 0x55, 0x5C, 0x61, 0x73, 0x63, 0xBD, 0x8D, 0xBB, 0xD4, 0x4F, 0x44,\n0xC7, 0xD8, 0x39, 0x9E, 0x2E, 0x46, 0x48, 0x86, 0x58, 0x29, 0x6A, 0xA9, 0x8D, 0xB2, 0x11, 0x0A,\n0x11, 0x86, 0x2C, 0x44, 0x4D, 0x2B, 0x1F, 0xB9, 0xE4, 0xD8, 0x10, 0x69, 0xB8, 0xA3, 0x39, 0x19,\n0x3D, 0xD5, 0x9F, 0x9E, 0x5D, 0x07, 0x37, 0x86, 0x89, 0x08, 0xC3, 0xC7, 0x30, 0x64, 0x25, 0x12,\n0x31, 0x34, 0x6C, 0x3E, 0xE2, 0x73, 0x45, 0x44, 0x2D, 0x62, 0x5B, 0x74, 0x73, 0x62, 0x09, 0x51,\n0x53, 0x41, 0x7C, 0x89, 0x8A, 0x3C, 0xB6, 0x21, 0xA2, 0xC4, 0x4A, 0x31, 0xFE, 0x62, 0xCC, 0xAD,\n0x7E, 0x81, 0xD8, 0xBD, 0xBE, 0x9E, 0xCE, 0x16, 0x19, 0x7E, 0xA8, 0x5A, 0x86, 0xE2, 0x4B, 0x31,\n0xB7, 0x42, 0x8C, 0x0C, 0x81, 0x28, 0xFC, 0x89, 0xFF, 0x13, 0x66, 0xA5, 0x1D, 0x11, 0x4B, 0xA9,\n0xE4, 0xF8, 0xA9, 0xCB, 0x6C, 0x73, 0x3B, 0x44, 0x34, 0x43, 0x8F, 0xA8, 0x5B, 0xE2, 0x95, 0x6D,\n0x89, 0x87, 0x30, 0x14, 0xC4, 0x2F, 0x81, 0x48, 0xC3, 0xA6, 0x2F, 0xA7, 0x32, 0x28, 0x02, 0x51,\n0x7B, 0x1B, 0x6F, 0xC8, 0xF6, 0x14, 0x88, 0x08, 0x87, 0x8C, 0x27, 0x0E, 0xF1, 0x25, 0x43, 0x64,\n0x6F, 0x53, 0x8B, 0xA8, 0x29, 0x2B, 0x6E, 0x00, 0xB1, 0x3E, 0x99, 0x93, 0xF4, 0x86, 0x89, 0x5F,\n0x77, 0xC7, 0x6B, 0x00, 0x44, 0x00, 0x88, 0x48, 0x11, 0xB7, 0xFC, 0x1F, 0xD0, 0xDF, 0xE2, 0x47,\n0xB6, 0xC3, 0x50, 0xF2, 0x9D, 0x33, 0x7C, 0x86, 0xC5, 0x54, 0x09, 0x79, 0xB5, 0x86, 0xA7, 0x35,\n0xAC, 0x44, 0xF6, 0x35, 0x99, 0xC4, 0xB6, 0x44, 0x6F, 0x88, 0x34, 0xF7, 0xF2, 0xB0, 0x9F, 0x31,\n0x4C, 0x11, 0x86, 0xB5, 0xCB, 0x29, 0x14, 0x59, 0x89, 0x54, 0xC4, 0x98, 0x11, 0x23, 0xBE, 0xE5,\n0xDF, 0xE1, 0xA7, 0xE2, 0x2A, 0x8F, 0xDF, 0xBA, 0x44, 0xAC, 0x4F, 0xBE, 0xE7, 0x11, 0xFD, 0x1A,\n0x9B, 0x26, 0x34, 0x34, 0x44, 0xF7, 0xFA, 0x53, 0x67, 0xE4, 0x92, 0xF2, 0x6B, 0xBC, 0x3D, 0xE2,\n0xEA, 0x33, 0x5F, 0x88, 0x3B, 0x5A, 0x88, 0x86, 0xC8, 0xB6, 0x86, 0x86, 0xA8, 0xC4, 0x39, 0x2B,\n0x11, 0x85, 0x68, 0x88, 0x30, 0x6C, 0x3E, 0xA2, 0x3E, 0x51, 0x54, 0x42, 0x63, 0xDC, 0x77, 0x09,\n0x10, 0xA1, 0x88, 0x6D, 0x11, 0x85, 0x78, 0x5A, 0x57, 0x8A, 0x40, 0x7C, 0xF3, 0xE4, 0xA9, 0x46,\n0x5E, 0x79, 0x30, 0x45, 0x43, 0x64, 0x77, 0xB3, 0xD1, 0x1D, 0xDF, 0x4A, 0x38, 0x4E, 0xAD, 0xF0,\n0x92, 0x69, 0xA5, 0x10, 0x9D, 0x9E, 0x3D, 0xB6, 0xB0, 0x52, 0x1C, 0xA4, 0x7E, 0x3B, 0x24, 0xE2,\n0x39, 0x0B, 0xD1, 0x3D, 0xCF, 0x47, 0x67, 0x1A, 0x9D, 0xB8, 0x3D, 0xF6, 0x88, 0x4F, 0x0C, 0x71,\n0x78, 0xE1, 0x10, 0x59, 0x89, 0x30, 0x44, 0x9A, 0xFB, 0x56, 0x14, 0xDB, 0x53, 0x18, 0x06, 0x88,\n0x47, 0x35, 0x88, 0x28, 0x44, 0x53, 0xAC, 0xAE, 0xA7, 0xBF, 0xFE, 0x32, 0x92, 0xFF, 0x72, 0x27,\n0x0F, 0xF9, 0x6D, 0x7C, 0x12, 0x87, 0x48, 0xC5, 0xF6, 0x64, 0xB9, 0x60, 0x7F, 0x92, 0x3C, 0x2A,\n0xCC, 0x7A, 0x49, 0x5F, 0x85, 0x3A, 0x89, 0x14, 0x20, 0xB7, 0x42, 0x22, 0xAA, 0x22, 0xAA, 0x7A,\n0xD2, 0x2D, 0x21, 0xEE, 0x20, 0x33, 0x2B, 0xC4, 0xB7, 0x78, 0xB3, 0xC6, 0x4E, 0xDC, 0x38, 0xE8,\n0x87, 0x88, 0xC3, 0x8B, 0x8B, 0x12, 0xA2, 0xEF, 0x6B, 0xF6, 0x2D, 0xCD, 0x7D, 0x3F, 0x91, 0xED,\n0x29, 0x02, 0x44, 0x18, 0x0A, 0x62, 0x34, 0x63, 0xE0, 0xD4, 0xE6, 0x74, 0x0E, 0x42, 0x45, 0xA4,\n0x22, 0x67, 0xC5, 0x37, 0x56, 0x8E, 0xFB, 0xC3, 0xD9, 0xE6, 0x5B, 0xFC, 0xC2, 0x13, 0x2A, 0x16,\n0x2B, 0x6A, 0x3B, 0xCD, 0x6A, 0x01, 0x87, 0x07, 0xB9, 0x08, 0x26, 0x49, 0xAB, 0x48, 0xB2, 0x96,\n0x8F, 0x0F, 0x5A, 0x7B, 0x4B, 0x0C, 0x71, 0x98, 0xDE, 0x5A, 0x8C, 0x86, 0x93, 0x56, 0xBB, 0x7C,\n0x52, 0x83, 0x5C, 0x73, 0x47, 0xE4, 0xCD, 0x9A, 0x4A, 0x21, 0x46, 0x5B, 0xA2, 0x18, 0xC6, 0x88,\n0xFB, 0x45, 0x1A, 0xFB, 0xA6, 0x30, 0xDB, 0x53, 0x1F, 0xF6, 0x35, 0x5E, 0x51, 0x9B, 0x7E, 0x22,\n0xCE, 0x0F, 0x5D, 0x2D, 0x12, 0x11, 0x87, 0x6F, 0x1C, 0x33, 0x7E, 0x5D, 0x59, 0x5F, 0xDF, 0x91,\n0xA1, 0x0C, 0x88, 0x50, 0x34, 0x44, 0x2A, 0x6E, 0xA4, 0x79, 0xAC, 0xD8, 0x3F, 0x98, 0xA4, 0x6B,\n0xF2, 0xA4, 0x57, 0x00, 0x3B, 0x45, 0xA0, 0x28, 0xAA, 0x34, 0x24, 0xA2, 0x9E, 0xD1, 0x20, 0x9D,\n0x44, 0xFE, 0x80, 0x2E, 0xA7, 0x7C, 0xFB, 0xA0, 0xE8, 0xF5, 0xA9, 0x18, 0x8E, 0xE2, 0x2B, 0x6E,\n0xE1, 0x86, 0x68, 0x88, 0xA7, 0x1E, 0xF1, 0xD0, 0x0A, 0x11, 0x71, 0x86, 0xF7, 0x05, 0x11, 0xED,\n0x69, 0x68, 0x78, 0xA4, 0x88, 0x47, 0x01, 0x22, 0xB2, 0x0C, 0x91, 0x8F, 0xF8, 0xE5, 0xF2, 0xE9,\n0x9B, 0x78, 0xE7, 0x54, 0x42, 0xC5, 0x12, 0xA2, 0x64, 0xA3, 0xD3, 0xF1, 0x73, 0x61, 0x7F, 0xB1,\n0x98, 0x4C, 0xF2, 0x16, 0x1E, 0x33, 0xE1, 0xD6, 0x5A, 0x11, 0x42, 0xB2, 0x1B, 0x65, 0xB6, 0x3C,\n0xA2, 0x4E, 0x9D, 0xE9, 0x96, 0x35, 0x35, 0x30, 0x74, 0x88, 0x2B, 0x3B, 0xED, 0xF6, 0x74, 0xBA,\n0x8E, 0x42, 0x14, 0x42, 0x20, 0x9A, 0x61, 0x84, 0xC8, 0x42, 0x3C, 0x0C, 0x0B, 0x11, 0x8B, 0x29,\n0xD3, 0xD8, 0x4F, 0xCF, 0x60, 0x7B, 0x8A, 0x70, 0xC2, 0xF0, 0x88, 0x98, 0xBE, 0x2B, 0x88, 0x08,\n0x11, 0x5F, 0x89, 0xEE, 0x4C, 0x49, 0x9C, 0x22, 0x7B, 0x9B, 0x50, 0x71, 0xBD, 0xBD, 0x25, 0x35,\n0xE6, 0x82, 0x57, 0x44, 0x77, 0x8D, 0xA8, 0xB3, 0x3C, 0x29, 0xC3, 0x42, 0xE4, 0x8C, 0x0F, 0xC4,\n0x1D, 0x44, 0x08, 0x25, 0x3B, 0x9B, 0x1B, 0x1B, 0xAB, 0x34, 0xE4, 0xA5, 0x8C, 0x12, 0xE2, 0x55,\n0x58, 0x88, 0xE8, 0x4D, 0x0B, 0xC4, 0xCB, 0x08, 0xF1, 0xCF, 0xA6, 0x7E, 0x8E, 0x8D, 0xB5, 0xA7,\n0x37, 0x21, 0xE2, 0xD1, 0xBE, 0x37, 0x34, 0x44, 0x2A, 0xDA, 0x90, 0xC1, 0x81, 0xBF, 0xF2, 0x74,\n0x18, 0x88, 0xF1, 0x82, 0x0A, 0x44, 0x3E, 0x5C, 0xD4, 0x27, 0x52, 0x14, 0xB1, 0x1B, 0x54, 0xC8,\n0x1D, 0x84, 0x34, 0xB4, 0xEF, 0xBD, 0x40, 0xB8, 0x1D, 0x82, 0xD0, 0x3D, 0x0B, 0xB3, 0x31, 0x3F,\n0xBE, 0xA6, 0x08, 0x43, 0x22, 0x7A, 0xC3, 0xF9, 0x45, 0x80, 0x18, 0x19, 0x9E, 0x35, 0xF7, 0x99,\n0x70, 0xD0, 0x9E, 0x72, 0x4E, 0x84, 0x61, 0x05, 0x11, 0x01, 0x22, 0xA7, 0x0C, 0x20, 0x86, 0x17,\n0x35, 0x14, 0x91, 0x8A, 0xFC, 0x22, 0x30, 0x2A, 0xAE, 0x23, 0xC5, 0x9D, 0x62, 0xC4, 0x14, 0x99,\n0x25, 0x84, 0x5D, 0x03, 0x34, 0x44, 0x8E, 0x16, 0xD8, 0x0D, 0x3D, 0x22, 0xBF, 0x9E, 0x8D, 0xAF,\n0x41, 0xF1, 0x66, 0x0D, 0x0C, 0x89, 0x88, 0x0C, 0xE5, 0x5E, 0x5F, 0x8C, 0x48, 0xC3, 0x26, 0x3F,\n0xC4, 0xF0, 0x9D, 0xCD, 0x0D, 0x0D, 0x81, 0x58, 0x55, 0x74, 0x82, 0x81, 0xE2, 0xDB, 0x44, 0x2C,\n0xAD, 0xA7, 0x92, 0x58, 0x11, 0x11, 0x42, 0x5B, 0x51, 0xA9, 0x28, 0x51, 0x45, 0x0B, 0x1D, 0x2B,\n0xD9, 0xD2, 0x74, 0x11, 0x1A, 0xAE, 0x4B, 0x6A, 0x0D, 0x21, 0x18, 0x20, 0x72, 0xCC, 0xF7, 0xE3,\n0x05, 0x11, 0x4F, 0x51, 0x88, 0x7E, 0xC0, 0x90, 0x70, 0x4B, 0xA4, 0xE1, 0x59, 0x93, 0x4F, 0xDD,\n0x7C, 0x67, 0x73, 0x73, 0x23, 0x86, 0x1A, 0x23, 0x84, 0xE2, 0x88, 0x88, 0x87, 0x4C, 0x8C, 0x18,\n0xEF, 0x8A, 0x12, 0x43, 0xE4, 0xBE, 0xC8, 0x07, 0x1A, 0x50, 0x24, 0x62, 0xE4, 0xB8, 0x85, 0xDC,\n0x6D, 0xC8, 0xDD, 0x90, 0x1D, 0x0D, 0x11, 0xB7, 0x89, 0xF8, 0x69, 0xF0, 0xF2, 0x05, 0xC7, 0x0B,\n0xF6, 0xA6, 0x82, 0x08, 0x45, 0x45, 0xCC, 0x0A, 0xC4, 0xCB, 0xAF, 0x25, 0x34, 0x3C, 0x6B, 0xF4,\n0x81, 0x8D, 0xEB, 0x6C, 0x80, 0xC8, 0xC5, 0x14, 0x7D, 0xCD, 0x08, 0x85, 0xF8, 0x2C, 0x40, 0x9C,\n0x7F, 0x7B, 0x78, 0xF8, 0x6D, 0x81, 0xC8, 0x52, 0x84, 0x22, 0x11, 0xAD, 0xB7, 0xA9, 0x19, 0xFA,\n0x81, 0xA8, 0x09, 0x14, 0x11, 0x32, 0x06, 0xA1, 0x1E, 0x01, 0x89, 0x08, 0x42, 0x1A, 0x02, 0x71,\n0x5B, 0xC2, 0x3A, 0xE4, 0x98, 0x8F, 0x28, 0x21, 0x17, 0xD3, 0x53, 0x0D, 0x0C, 0x15, 0xD1, 0x19,\n0x6A, 0x82, 0x13, 0xB7, 0xB3, 0xE6, 0x23, 0x5A, 0x67, 0x13, 0xD5, 0xE1, 0x08, 0x79, 0x26, 0x09,\n0x37, 0xC5, 0x6F, 0xBF, 0xF5, 0x8A, 0x40, 0xB4, 0x5A, 0x7C, 0xB9, 0xA2, 0xF8, 0xE9, 0xFF, 0x50,\n0x24, 0x23, 0x52, 0x11, 0x64, 0xB8, 0x17, 0xF2, 0x82, 0x29, 0x11, 0xB9, 0x21, 0x82, 0x30, 0x98,\n0xF2, 0x59, 0x88, 0x01, 0xA2, 0x30, 0xCE, 0x89, 0x08, 0x43, 0x22, 0x1A, 0xA1, 0xFC, 0xA2, 0xFE,\n0xC0, 0xE6, 0xD5, 0x57, 0x5F, 0x6D, 0x08, 0x2D, 0xCE, 0x6C, 0xD8, 0x9A, 0x5A, 0x1C, 0xA2, 0xE6,\n0x82, 0x8A, 0x52, 0x89, 0x73, 0x8F, 0xF8, 0xB3, 0xAC, 0xA7, 0xA6, 0x58, 0x46, 0x0C, 0xBE, 0xF4,\n0x84, 0xFB, 0x62, 0xD0, 0xDE, 0xD4, 0x29, 0x92, 0x71, 0x79, 0xC0, 0x07, 0x3F, 0x0E, 0x16, 0x55,\n0x43, 0x89, 0x19, 0x46, 0xE7, 0xDE, 0x34, 0x04, 0xA2, 0x08, 0x9A, 0x61, 0x88, 0x58, 0x3A, 0x36,\n0x55, 0x41, 0x81, 0xC4, 0xAC, 0x5F, 0x01, 0x7C, 0xED, 0xB5, 0xD7, 0x1A, 0xC2, 0x88, 0x33, 0x1B,\n0x1A, 0xEE, 0x97, 0x0C, 0x33, 0x22, 0xB2, 0x16, 0x15, 0x91, 0xA5, 0x08, 0x45, 0x5B, 0x4F, 0x83,\n0xD7, 0xA4, 0x24, 0x05, 0x22, 0x47, 0x0D, 0x32, 0x42, 0x11, 0xA1, 0x62, 0xCC, 0x18, 0xF7, 0xA2,\n0xCB, 0x0D, 0x89, 0x28, 0x82, 0x76, 0x21, 0x03, 0x03, 0x22, 0x0D, 0xD9, 0x99, 0x1A, 0xE2, 0x15,\n0x0C, 0xB1, 0x23, 0x06, 0x88, 0x47, 0x34, 0x3C, 0x03, 0x22, 0xBF, 0x69, 0x9F, 0x80, 0x1F, 0x6A,\n0x5E, 0x6B, 0x08, 0xA2, 0xDE, 0x3D, 0x45, 0x04, 0x90, 0x89, 0x11, 0x0F, 0x2F, 0x20, 0x18, 0xAE,\n0xA7, 0x9A, 0xB0, 0x43, 0xE5, 0x87, 0x85, 0x21, 0x54, 0xE4, 0xD8, 0xCF, 0x2E, 0x35, 0x62, 0xB4,\n0x84, 0x82, 0x77, 0x19, 0xEE, 0x04, 0x86, 0xDC, 0x0F, 0x81, 0xF8, 0x46, 0x15, 0x11, 0x86, 0x2F,\n0x71, 0x4B, 0x44, 0x21, 0xC2, 0x30, 0x1E, 0x30, 0x68, 0x58, 0x1E, 0x13, 0x3D, 0xE0, 0xE7, 0x9F,\n0x7F, 0xF0, 0xCD, 0xEF, 0xBF, 0xBD, 0xF8, 0xB3, 0x19, 0x07, 0x39, 0xF8, 0xAC, 0x45, 0x17, 0x5F,\n0x87, 0x54, 0x54, 0x42, 0xAB, 0xC4, 0x02, 0x31, 0x98, 0x32, 0xA2, 0x61, 0x91, 0xFB, 0x22, 0x11,\n0xAD, 0x16, 0x43, 0x45, 0x38, 0x52, 0x91, 0x8C, 0x75, 0x21, 0x21, 0x0D, 0x59, 0x86, 0x9A, 0x3A,\n0x43, 0x59, 0x0F, 0x82, 0x1D, 0x91, 0x85, 0xF8, 0x12, 0x11, 0xFD, 0x62, 0xCA, 0x42, 0x64, 0x25,\n0xDA, 0xAD, 0x78, 0x4E, 0x18, 0xAF, 0x9A, 0xE0, 0x07, 0x1F, 0xFC, 0xF5, 0xF7, 0xF3, 0x7F, 0x6E,\n0x6E, 0x9E, 0x7F, 0xD8, 0x0C, 0x44, 0x7C, 0x79, 0x9B, 0x2B, 0xC4, 0x32, 0x61, 0x81, 0x78, 0x11,\n0x6E, 0x8A, 0xA2, 0x68, 0x88, 0x50, 0x0C, 0xCF, 0x6D, 0x80, 0xC8, 0x17, 0xA5, 0xB0, 0xA2, 0xB2,\n0x14, 0x25, 0x91, 0xA2, 0xE4, 0x0E, 0x46, 0x12, 0x22, 0x06, 0xC8, 0x9E, 0x06, 0x59, 0xF1, 0xF1,\n0x86, 0x44, 0x8C, 0xA7, 0x0B, 0x89, 0x1A, 0x02, 0x51, 0x09, 0x4F, 0x61, 0x08, 0x44, 0x18, 0xB2,\n0xAF, 0x61, 0x19, 0xFA, 0xE6, 0x94, 0x25, 0xF8, 0xC3, 0xEF, 0xCF, 0xA5, 0x8D, 0xB8, 0x91, 0xFC,\n0xDE, 0x1C, 0x44, 0xF7, 0x56, 0x8D, 0x10, 0x4A, 0x2D, 0xC6, 0xED, 0x29, 0x0B, 0xD1, 0x33, 0x16,\n0x88, 0x3F, 0x03, 0x71, 0x89, 0x22, 0xBB, 0x1B, 0x2A, 0xB2, 0xBD, 0xE1, 0x9A, 0x8A, 0x90, 0xB1,\n0xCE, 0xB1, 0xAC, 0x57, 0x35, 0xE4, 0x66, 0x88, 0xED, 0x10, 0x51, 0x41, 0x16, 0x22, 0x0C, 0x6B,\n0x0A, 0xF1, 0x14, 0x71, 0x88, 0xB6, 0x98, 0x8E, 0xD8, 0x9B, 0xFA, 0x42, 0x44, 0x7E, 0xFB, 0x40,\n0xB0, 0x8A, 0x12, 0x7C, 0xA1, 0xDD, 0x3C, 0x0C, 0xA5, 0x42, 0x9B, 0xB1, 0x27, 0xFE, 0xCB, 0xDD,\n0x1D, 0xF3, 0xC6, 0x51, 0x84, 0x61, 0x1C, 0x17, 0xDF, 0x80, 0x7E, 0xDD, 0x58, 0x2E, 0xB6, 0xC0,\n0x12, 0xCD, 0x9D, 0xE4, 0x06, 0xC9, 0xD1, 0x06, 0x2B, 0x92, 0x4F, 0x48, 0x27, 0x25, 0x05, 0x45,\n0x04, 0x14, 0xB1, 0x84, 0x88, 0x25, 0x14, 0x29, 0xC4, 0x81, 0x24, 0xF0, 0xD1, 0x79, 0xE7, 0x99,\n0x9D, 0xFD, 0xEF, 0xBC, 0x33, 0x73, 0xAC, 0x93, 0x66, 0x97, 0xE7, 0x92, 0x18, 0x1A, 0x30, 0xFE,\n0xF1, 0xCC, 0xBC, 0x33, 0x7B, 0x4E, 0xD2, 0xA6, 0xF8, 0x7D, 0x46, 0x78, 0x02, 0x11, 0xC5, 0xFB,\n0x39, 0x22, 0x23, 0xAA, 0xE2, 0x15, 0x41, 0xB4, 0xD4, 0x15, 0x99, 0x55, 0xDB, 0x1B, 0x21, 0x86,\n0x06, 0xE8, 0x8F, 0xF8, 0x69, 0xA6, 0x01, 0x91, 0xB5, 0x94, 0x0D, 0x91, 0x1D, 0x51, 0x4D, 0xC4,\n0x30, 0x35, 0x71, 0x1C, 0x6B, 0x64, 0x18, 0xF3, 0xE9, 0x9B, 0x27, 0xAA, 0xE0, 0xC3, 0xBB, 0x0F,\n0xBA, 0xA3, 0x94, 0xA1, 0x65, 0x3D, 0x8F, 0x8A, 0xE3, 0x6F, 0xBF, 0x10, 0xD6, 0x52, 0x04, 0xCB,\n0x23, 0x06, 0xE3, 0x29, 0x88, 0x52, 0xB4, 0x78, 0x45, 0xDF, 0xC5, 0xD8, 0x0F, 0x14, 0x59, 0x53,\n0x15, 0x18, 0x73, 0x4C, 0x04, 0xB3, 0xA4, 0x0A, 0x2A, 0xE5, 0x75, 0x69, 0x30, 0x54, 0x16, 0x18,\n0xFA, 0x22, 0xC6, 0x26, 0xBE, 0x90, 0xA1, 0x9A, 0x38, 0xE6, 0x8F, 0x1F, 0xBE, 0xD1, 0x18, 0xA3,\n0x0A, 0x62, 0xF8, 0xCF, 0xCB, 0xB5, 0xAC, 0xA6, 0xE3, 0x9F, 0x68, 0xFA, 0xB3, 0x8A, 0x28, 0x42,\n0x9A, 0x78, 0xA7, 0x9C, 0x42, 0xF4, 0x13, 0xAA, 0x10, 0x51, 0x64, 0xBA, 0x51, 0x6A, 0x8A, 0x30,\n0xB6, 0x43, 0xFF, 0x24, 0x58, 0x18, 0x32, 0xD2, 0x80, 0x68, 0x82, 0x16, 0x7F, 0x42, 0xF4, 0x45,\n0x2C, 0x47, 0xD3, 0x17, 0x20, 0x86, 0x48, 0xF2, 0x97, 0x87, 0x4F, 0xAA, 0x20, 0x86, 0xCA, 0xDB,\n0x15, 0xDD, 0xE3, 0x84, 0x4D, 0xD1, 0x0D, 0x35, 0x99, 0x62, 0x1F, 0x04, 0x41, 0x44, 0xD1, 0x10,\n0x2D, 0x4B, 0x15, 0x59, 0x53, 0x51, 0xE4, 0x3E, 0x35, 0xE5, 0x24, 0x21, 0x86, 0x2C, 0xA5, 0x10,\n0x62, 0xA8, 0x1A, 0xCA, 0xD0, 0x5D, 0xB7, 0x81, 0xF8, 0x63, 0x0C, 0x86, 0x71, 0x4B, 0x0C, 0x89,\n0xAB, 0x69, 0x12, 0xB4, 0xBC, 0x49, 0xEF, 0x60, 0xC1, 0x50, 0x79, 0x58, 0xCD, 0x6A, 0x1A, 0x37,\n0x45, 0x08, 0x59, 0x4F, 0x41, 0xEC, 0x03, 0xE2, 0xAF, 0xC3, 0xC4, 0x48, 0x15, 0xA5, 0x08, 0x62,\n0x39, 0xDC, 0x88, 0x91, 0xBB, 0x1B, 0x05, 0x45, 0x1C, 0x61, 0x24, 0x10, 0x7A, 0xC0, 0xFA, 0x76,\n0x98, 0x5F, 0xD4, 0x80, 0xC8, 0x60, 0xCA, 0x54, 0xC3, 0x8E, 0x08, 0xA2, 0x2F, 0xA2, 0xA2, 0x37,\n0xE4, 0x56, 0x0D, 0x57, 0x75, 0xA1, 0x1A, 0x4E, 0x8A, 0xCE, 0x30, 0x45, 0xAB, 0x69, 0x50, 0x7C,\n0xAE, 0x2A, 0x52, 0x46, 0x57, 0xC5, 0xE6, 0xB6, 0x98, 0xF6, 0x45, 0xE6, 0x1B, 0x18, 0x51, 0xE4,\n0xC4, 0x51, 0x8F, 0x04, 0xBD, 0xA1, 0x00, 0x9D, 0xA1, 0x04, 0xCB, 0x77, 0x99, 0x3A, 0xC4, 0xAF,\n0x53, 0x11, 0x8F, 0x2A, 0x62, 0x42, 0x7C, 0xFA, 0x34, 0x20, 0xBE, 0x88, 0x88, 0xD4, 0xD0, 0x7E,\n0xBC, 0x7E, 0xE3, 0x0C, 0x95, 0xBF, 0x56, 0x54, 0xC4, 0xB8, 0x29, 0xCE, 0x0D, 0xD9, 0x13, 0xA3,\n0x62, 0x6F, 0x2D, 0x1C, 0x40, 0xD4, 0x91, 0x3F, 0x55, 0x11, 0x44, 0x5D, 0xA2, 0xA2, 0xC8, 0x5D,\n0xB8, 0xEF, 0xA2, 0x14, 0x2D, 0x8E, 0x91, 0x94, 0x82, 0x84, 0x0E, 0x62, 0x68, 0x69, 0x18, 0x82,\n0x88, 0xE1, 0x57, 0xA3, 0x21, 0x97, 0x35, 0x18, 0x82, 0x48, 0x0D, 0xED, 0x47, 0x41, 0xB8, 0xAE,\n0xF3, 0xC5, 0x74, 0x7D, 0x0A, 0x62, 0xDA, 0x11, 0x59, 0x4E, 0xB5, 0x9E, 0xCE, 0x15, 0x73, 0x44,\n0x46, 0xD4, 0xDA, 0x39, 0x43, 0x8A, 0xF9, 0x94, 0xCA, 0xA1, 0xB1, 0xC1, 0x48, 0xC0, 0x23, 0x55,\n0x43, 0x11, 0xF2, 0x8E, 0x9A, 0xF9, 0xAD, 0x37, 0x93, 0xA9, 0xC5, 0x0C, 0x41, 0x64, 0x35, 0xCD,\n0x8B, 0x08, 0xA2, 0x7D, 0xA7, 0xD1, 0x1B, 0x53, 0x74, 0x63, 0xA9, 0xB2, 0xB2, 0xF7, 0x4E, 0x85,\n0xEF, 0xFA, 0xF6, 0xFB, 0x21, 0x88, 0x7D, 0x08, 0xF3, 0x69, 0xB5, 0x8A, 0x5E, 0xD1, 0x3F, 0xD1,\n0xA8, 0x2B, 0xFA, 0x19, 0x67, 0x09, 0xA1, 0x37, 0x94, 0x60, 0x66, 0x98, 0x6D, 0x87, 0xFE, 0x74,\n0x41, 0x11, 0x2D, 0x32, 0x0C, 0x91, 0x61, 0x42, 0xCC, 0x0C, 0xE3, 0x6B, 0xD6, 0xC3, 0xB5, 0x16,\n0x31, 0x20, 0x3E, 0xD8, 0x67, 0xFF, 0x4A, 0x2F, 0x11, 0x9A, 0x24, 0x3D, 0x54, 0x82, 0xE1, 0xD0,\n0xAE, 0xA2, 0x52, 0x5C, 0x85, 0x33, 0xA2, 0xD6, 0xC6, 0x1B, 0x18, 0x67, 0x94, 0x6D, 0x40, 0x6F,\n0x88, 0xA0, 0x52, 0x1F, 0x69, 0x18, 0x6A, 0x22, 0xE1, 0xBC, 0x88, 0xCF, 0x2D, 0x14, 0xD1, 0x08,\n0x3D, 0xE2, 0x9B, 0xC4, 0x88, 0x21, 0x59, 0xDD, 0x3B, 0x51, 0xC3, 0x21, 0x83, 0xFB, 0x36, 0x6A,\n0x98, 0x29, 0x3E, 0x67, 0x3E, 0xA5, 0x8A, 0x0E, 0xB1, 0xA6, 0x68, 0x49, 0x8A, 0x21, 0x6D, 0x45,\n0x30, 0xEB, 0x7E, 0x10, 0x8A, 0x4F, 0xC1, 0x30, 0xD5, 0x90, 0xED, 0x90, 0xC3, 0x85, 0x25, 0xF5,\n0xF0, 0x37, 0x43, 0xBC, 0x8F, 0x53, 0x4D, 0x44, 0xCC, 0x77, 0x44, 0xCB, 0xF7, 0x21, 0x69, 0x3B,\n0x94, 0x20, 0x86, 0xEB, 0x2D, 0xA2, 0x10, 0xDF, 0xC6, 0x2A, 0x9A, 0x21, 0x01, 0x31, 0xAD, 0xA8,\n0xC3, 0x30, 0x47, 0x3C, 0x52, 0xC5, 0x96, 0xA2, 0x10, 0xAD, 0x8D, 0xF5, 0x2E, 0xC2, 0xB8, 0x24,\n0xAC, 0xA1, 0x18, 0xD2, 0x42, 0x26, 0x1A, 0x0C, 0xFD, 0x29, 0x5F, 0x45, 0xB4, 0x1E, 0x62, 0xC8,\n0x62, 0x4A, 0x11, 0x43, 0x82, 0x61, 0xAA, 0xA1, 0x18, 0x65, 0xB8, 0xE6, 0x22, 0xEA, 0xE6, 0xCD,\n0x00, 0x8D, 0x31, 0x7C, 0x7F, 0x2D, 0x99, 0x21, 0x0E, 0xF6, 0x83, 0x25, 0x95, 0x7B, 0x70, 0x21,\n0x32, 0xDC, 0xB0, 0x2F, 0x26, 0xC5, 0xDA, 0x81, 0x51, 0x81, 0x71, 0xB1, 0xA3, 0x23, 0xE4, 0x80,\n0xEF, 0x0D, 0xCB, 0xC7, 0xC0, 0x6C, 0x88, 0x20, 0x86, 0x8C, 0x86, 0x14, 0x91, 0xD5, 0xF4, 0x75,\n0xA5, 0x86, 0x14, 0x71, 0x3D, 0x37, 0x6E, 0x09, 0x51, 0x87, 0x0C, 0x33, 0xB4, 0x2E, 0xFA, 0x2A,\n0xF6, 0x51, 0x71, 0x50, 0x19, 0x41, 0x14, 0xA3, 0xAA, 0x08, 0x23, 0x8A, 0x0C, 0xA9, 0xCA, 0x69,\n0x45, 0x72, 0x5A, 0x30, 0x05, 0x40, 0x0C, 0x59, 0x4A, 0xFD, 0xD9, 0x02, 0x44, 0x36, 0xC4, 0x0C,\n0xD1, 0x14, 0x9F, 0x5A, 0x8C, 0x50, 0xC1, 0xD0, 0x6F, 0x87, 0xEB, 0x2E, 0x62, 0x3A, 0x64, 0xA4,\n0x1A, 0x12, 0x15, 0x91, 0x2A, 0x0E, 0x52, 0x1C, 0xB2, 0xC7, 0x19, 0xF7, 0x21, 0x20, 0x72, 0xEA,\n0xAF, 0x2B, 0xFE, 0x2E, 0x45, 0x18, 0xBD, 0x64, 0x93, 0xB0, 0x69, 0x28, 0x40, 0x6F, 0xE8, 0x66,\n0x1A, 0x11, 0xAA, 0x88, 0xF7, 0xF7, 0x99, 0x21, 0x63, 0xCD, 0x53, 0x21, 0x52, 0xC4, 0xD7, 0xAF,\n0xF3, 0x1E, 0xAE, 0xBD, 0x88, 0xE9, 0x90, 0xF1, 0xCA, 0x0C, 0x05, 0xF9, 0xCC, 0x5E, 0xA9, 0x89,\n0x28, 0x0E, 0x83, 0x1D, 0x18, 0x03, 0xE1, 0x90, 0x57, 0xD1, 0xE2, 0xAA, 0x98, 0x36, 0x46, 0x14,\n0x39, 0xF7, 0xF3, 0xBE, 0x62, 0x14, 0xA1, 0x6C, 0x07, 0xC2, 0xE2, 0x96, 0x0D, 0xC4, 0xD2, 0x90,\n0xC1, 0x54, 0x88, 0x32, 0x2C, 0x56, 0xD3, 0xD8, 0xC5, 0xA9, 0x89, 0x22, 0x54, 0x20, 0x5C, 0x7F,\n0x11, 0x0D, 0xF1, 0xDB, 0x07, 0x33, 0x7C, 0x15, 0x00, 0x9F, 0x8D, 0x80, 0x1E, 0x51, 0x8E, 0x7D,\n0x7F, 0xB2, 0x8A, 0x5E, 0x51, 0xA9, 0x29, 0xC2, 0xE8, 0xF3, 0x18, 0x42, 0x6F, 0xE8, 0xF6, 0x43,\n0x8A, 0x38, 0x12, 0x9A, 0x61, 0x51, 0x44, 0x10, 0x59, 0x4F, 0x4B, 0xC3, 0x0D, 0x14, 0x31, 0x1E,\n0x32, 0xC2, 0x54, 0xF3, 0xEA, 0x99, 0x52, 0x1D, 0x4F, 0x87, 0x3E, 0x54, 0x71, 0x68, 0x57, 0x11,\n0x45, 0x6E, 0xC3, 0x15, 0x14, 0x2D, 0x52, 0x54, 0x50, 0x5C, 0x16, 0x00, 0x4B, 0x43, 0x08, 0x9D,\n0x21, 0x33, 0x8D, 0x65, 0x32, 0x3C, 0xCE, 0x47, 0xD3, 0xBB, 0xBB, 0xA7, 0x31, 0xFE, 0xAC, 0x9F,\n0x0C, 0x37, 0x51, 0xC4, 0xB8, 0x9E, 0x5A, 0x11, 0xCD, 0x90, 0x5C, 0x72, 0x52, 0x54, 0x0B, 0xC7,\n0x5F, 0x06, 0x4B, 0x59, 0x45, 0x14, 0xA9, 0x62, 0x88, 0x53, 0x54, 0x46, 0xC5, 0x04, 0xF9, 0x39,\n0x84, 0x18, 0x72, 0xD1, 0xC6, 0x52, 0x0A, 0xA2, 0x08, 0x31, 0x14, 0xA2, 0x0C, 0x8F, 0x66, 0xA8,\n0x18, 0xA1, 0x25, 0xAE, 0xA7, 0xAC, 0xA8, 0xF3, 0x87, 0x18, 0x6F, 0x36, 0x52, 0xC4, 0x71, 0x3D,\n0x0D, 0x1D, 0x94, 0xDF, 0x5D, 0xC8, 0xF8, 0x71, 0x1A, 0x6B, 0x52, 0x15, 0x2D, 0x54, 0x11, 0x44,\n0xA5, 0xAD, 0x68, 0x41, 0x31, 0x67, 0xB4, 0x2C, 0x24, 0x24, 0xD9, 0x4C, 0x8A, 0xA1, 0x08, 0xD9,\n0x0F, 0x31, 0x2C, 0x8B, 0xF8, 0x6B, 0xCC, 0x5D, 0x54, 0x4C, 0x4D, 0x8C, 0x8A, 0xF1, 0x95, 0x30,\n0x63, 0x17, 0x57, 0x7B, 0x6B, 0x9A, 0xAF, 0xA7, 0x81, 0x2F, 0x09, 0x12, 0x36, 0x44, 0x29, 0xF6,\n0x49, 0xB1, 0xA8, 0xA2, 0xE2, 0x47, 0xD4, 0xB6, 0x22, 0x92, 0xD0, 0x2C, 0x23, 0xE4, 0x7D, 0xA5,\n0x18, 0x4A, 0x10, 0xC3, 0x72, 0xA4, 0xA1, 0x88, 0x9C, 0xF3, 0x63, 0x15, 0x31, 0xB4, 0x26, 0xFA,\n0x4C, 0x2B, 0x2B, 0x59, 0xDF, 0x65, 0xCD, 0xFC, 0xC9, 0xF0, 0xD4, 0xC3, 0xF0, 0x8A, 0xD9, 0xED,\n0xF2, 0xF1, 0x34, 0xAD, 0xA7, 0xAC, 0xA8, 0x01, 0x51, 0xB9, 0x58, 0xA2, 0x68, 0x81, 0x11, 0x48,\n0x78, 0x5A, 0x9C, 0xE8, 0x59, 0x44, 0x88, 0x61, 0x12, 0x5C, 0x6A, 0x98, 0x23, 0xDE, 0xD1, 0xC4,\n0x78, 0x69, 0x5C, 0x38, 0x4A, 0x92, 0xAC, 0xB6, 0x88, 0xBA, 0x04, 0x7F, 0xCA, 0x76, 0xA8, 0x44,\n0x45, 0x0C, 0xA9, 0xA2, 0x42, 0x17, 0x23, 0xE2, 0xC5, 0x05, 0xFB, 0xA2, 0x57, 0x84, 0x51, 0x09,\n0x8A, 0x84, 0x3A, 0xD6, 0x83, 0x9F, 0x37, 0x94, 0x60, 0x6E, 0xE8, 0x1F, 0x01, 0x7B, 0xC4, 0x23,\n0x86, 0x39, 0xA2, 0x08, 0x2D, 0xBC, 0x41, 0xC5, 0x61, 0xFE, 0x1C, 0x5F, 0xEB, 0x2D, 0x62, 0x5C,\n0x4F, 0x31, 0xDC, 0x85, 0x04, 0xC5, 0x5D, 0x52, 0x8C, 0x15, 0x4C, 0x94, 0x31, 0x4D, 0x45, 0x36,\n0xC6, 0x8A, 0xA2, 0x22, 0x45, 0x82, 0xCF, 0x49, 0x41, 0x08, 0x55, 0xC1, 0xA6, 0x21, 0x8F, 0x0F,\n0x4B, 0x43, 0x5F, 0xC4, 0xC0, 0xA8, 0xDF, 0x94, 0x2C, 0x24, 0x29, 0xEA, 0x63, 0x9D, 0x72, 0x5D,\n0x0F, 0xF4, 0xCB, 0xF9, 0x34, 0x11, 0xCA, 0x50, 0x49, 0x88, 0x43, 0x52, 0x94, 0xA1, 0x14, 0x95,\n0x78, 0xCE, 0x48, 0x88, 0xA5, 0xA2, 0x3F, 0x6A, 0xC0, 0x58, 0xAE, 0xAA, 0xF5, 0x20, 0x47, 0xBC,\n0x21, 0x0B, 0x29, 0x35, 0x54, 0x66, 0x84, 0x42, 0x74, 0x86, 0x4A, 0x9F, 0x9A, 0xA8, 0x36, 0x86,\n0xEB, 0x0E, 0x1F, 0x3D, 0x19, 0xB0, 0x1F, 0xCA, 0x87, 0x15, 0x17, 0x31, 0xCC, 0xA7, 0x2F, 0x5F,\n0x4C, 0x2D, 0x24, 0xBD, 0x10, 0x25, 0x67, 0x91, 0xA2, 0x10, 0x47, 0xC7, 0x63, 0x0C, 0x55, 0x5C,\n0xA0, 0x28, 0x48, 0x86, 0x1C, 0xB2, 0x50, 0xB0, 0x4E, 0xC8, 0x50, 0x5A, 0x8E, 0xA5, 0x14, 0x31,\n0x24, 0x5B, 0x4C, 0xFB, 0x3B, 0x82, 0x1B, 0x79, 0x26, 0xD5, 0x57, 0xE1, 0x5A, 0x39, 0x30, 0x7E,\n0xBF, 0xA6, 0xB7, 0xB8, 0xD5, 0xEF, 0x4F, 0x0B, 0x42, 0xBF, 0x9A, 0x5A, 0xA8, 0x22, 0x8A, 0x3F,\n0xD6, 0x15, 0x2D, 0xFE, 0xA8, 0x41, 0x32, 0x46, 0xD2, 0xF4, 0x83, 0x10, 0x43, 0x37, 0xCF, 0x60,\n0x08, 0xE2, 0x44, 0x88, 0x21, 0x88, 0x7D, 0xDC, 0x11, 0x51, 0x0C, 0x90, 0xFA, 0xE5, 0x2E, 0x45,\n0x57, 0x1F, 0xCF, 0x2C, 0xA6, 0x69, 0x79, 0xBB, 0xE6, 0x22, 0xC6, 0xE7, 0x51, 0x97, 0x20, 0x92,\n0xAE, 0xA7, 0x83, 0x96, 0x7A, 0x15, 0xD9, 0x16, 0x61, 0x64, 0x4A, 0x8D, 0x29, 0x19, 0x71, 0x5C,\n0x9C, 0x80, 0x97, 0x82, 0x21, 0x13, 0x8D, 0x42, 0x0F, 0x13, 0x21, 0x53, 0xCD, 0xD1, 0x19, 0x7E,\n0x77, 0xD7, 0xCE, 0xCE, 0x02, 0xA6, 0xE5, 0x9F, 0x97, 0xAB, 0x2E, 0x62, 0x7C, 0x1E, 0x55, 0x51,\n0xEC, 0xBB, 0x2E, 0x12, 0x4E, 0x8C, 0x54, 0xD1, 0x29, 0x82, 0xB8, 0x54, 0x71, 0xA9, 0x23, 0xFD,\n0xC3, 0xD0, 0xAF, 0xA4, 0x4A, 0x66, 0x08, 0xA2, 0x2F, 0x22, 0x33, 0x4D, 0x3D, 0xFD, 0x2C, 0x3B,\n0xE5, 0x52, 0x88, 0x9F, 0x9E, 0xAC, 0xE8, 0xBD, 0xA6, 0xAD, 0xF5, 0xD4, 0x13, 0xF6, 0x51, 0x51,\n0x66, 0x5D, 0x54, 0xA4, 0x97, 0x15, 0xC5, 0xB3, 0xBA, 0x62, 0x7B, 0x4D, 0x75, 0x8E, 0xCB, 0x04,\n0x21, 0xF4, 0x86, 0x7E, 0x3F, 0x6C, 0x18, 0x3E, 0xEF, 0x23, 0x63, 0x41, 0x97, 0x09, 0x0E, 0x21,\n0x5D, 0x37, 0x93, 0xFC, 0xFB, 0x87, 0x75, 0x5E, 0xB8, 0xE5, 0x6F, 0x22, 0x4E, 0x78, 0xD7, 0x8A,\n0x76, 0xC4, 0xEB, 0xCE, 0x22, 0xC2, 0x0E, 0xC4, 0xE6, 0x82, 0x7A, 0x76, 0xC6, 0x82, 0xCA, 0xC6,\n0x18, 0x23, 0xC5, 0x72, 0xC4, 0xC1, 0x91, 0xC0, 0x97, 0x05, 0x3C, 0x08, 0xE7, 0x86, 0x6C, 0x87,\n0x12, 0xC4, 0xD0, 0x21, 0xF6, 0xB1, 0x88, 0xFD, 0x28, 0xD7, 0xDB, 0xAF, 0xE1, 0xD5, 0x07, 0x45,\n0xFC, 0x0E, 0x96, 0x2E, 0x45, 0x5F, 0x8D, 0xF5, 0x9E, 0xF3, 0xB3, 0xA3, 0xE2, 0x28, 0xD8, 0x29,\n0x72, 0xEC, 0x3B, 0x65, 0xE8, 0xE4, 0x88, 0x22, 0x4B, 0xEA, 0x81, 0x11, 0xD5, 0xC2, 0xB6, 0x08,\n0x23, 0x8A, 0x30, 0xF2, 0xAC, 0x11, 0xC7, 0x66, 0xA8, 0x9F, 0x37, 0x6C, 0x8F, 0x34, 0x2D, 0xC3,\n0x21, 0xED, 0x88, 0x93, 0xA1, 0x25, 0x1A, 0x26, 0x41, 0xF9, 0x91, 0xDB, 0x11, 0xF2, 0xCF, 0x75,\n0x4F, 0x35, 0xD3, 0xD5, 0x9B, 0x08, 0x85, 0x98, 0x1C, 0x77, 0xFA, 0x88, 0x23, 0x4F, 0x17, 0x51,\n0x14, 0xE3, 0xFE, 0xB8, 0xDF, 0xFB, 0xF3, 0xA2, 0x92, 0x29, 0x66, 0x8E, 0x53, 0x1D, 0x49, 0xDD,\n0xAF, 0x4E, 0x98, 0xC2, 0x44, 0x93, 0x00, 0x31, 0x64, 0x31, 0x55, 0x92, 0x61, 0x1F, 0x22, 0x44,\n0x9F, 0x24, 0x78, 0x3E, 0x25, 0x42, 0xDE, 0xDE, 0xF6, 0x6B, 0x3E, 0xE7, 0xCF, 0x8F, 0x8A, 0x77,\n0x81, 0x30, 0x31, 0xF6, 0xF6, 0xEA, 0x20, 0x8D, 0x8E, 0xFD, 0x9C, 0x31, 0x21, 0x9A, 0xA2, 0x1C,\n0x63, 0x17, 0x43, 0x32, 0x45, 0x0B, 0x8A, 0x0A, 0x8C, 0x38, 0xB6, 0x83, 0x20, 0xC1, 0xAF, 0x6D,\n0x68, 0x9F, 0x47, 0x51, 0xC4, 0x48, 0x48, 0xFB, 0xC8, 0x00, 0x61, 0xB0, 0xDB, 0xC7, 0x20, 0xB9,\n0xF2, 0xE3, 0xC5, 0x6C, 0xB4, 0x11, 0x20, 0xE9, 0x43, 0x1B, 0xBB, 0x79, 0x30, 0xB4, 0xCC, 0x14,\n0x0F, 0xAA, 0x62, 0x43, 0x51, 0x81, 0x51, 0x81, 0x91, 0x2C, 0x01, 0xF4, 0x84, 0x0C, 0x34, 0x0B,\n0x0D, 0xFB, 0xC9, 0x30, 0x43, 0x9C, 0xFE, 0x53, 0x00, 0xDC, 0xDF, 0xDC, 0x00, 0xF9, 0xFE, 0x87,\n0x0D, 0x14, 0x31, 0x8E, 0x36, 0x10, 0xE2, 0x98, 0x57, 0x71, 0x80, 0x11, 0x45, 0xE5, 0x38, 0x57,\n0xF4, 0x1B, 0xA3, 0xE2, 0x15, 0x61, 0xAC, 0xA7, 0xB1, 0x84, 0x3A, 0x42, 0x09, 0x9E, 0x36, 0x64,\n0xA6, 0x51, 0x4A, 0x43, 0x4D, 0xA2, 0x33, 0xC2, 0x1B, 0xE5, 0x4A, 0x89, 0xA0, 0xEF, 0xD6, 0x7E,\n0xBC, 0x18, 0x11, 0xC3, 0x68, 0x13, 0xA8, 0x6E, 0xA7, 0x74, 0xE4, 0xD0, 0x1D, 0xA8, 0x22, 0xA1,\n0x8A, 0x86, 0x98, 0x14, 0xCF, 0x38, 0xF6, 0x3B, 0x45, 0xC7, 0xB8, 0x00, 0xD2, 0x0B, 0x96, 0x3B,\n0x21, 0x86, 0x08, 0x9A, 0x61, 0x42, 0x14, 0x61, 0x44, 0x1C, 0x30, 0xF4, 0x2D, 0xEC, 0xD2, 0x56,\n0x98, 0x04, 0x89, 0x38, 0x3F, 0xAE, 0xF4, 0x79, 0x7E, 0xF5, 0x16, 0x1C, 0x42, 0xCF, 0x78, 0xD0,\n0xCF, 0xA4, 0x48, 0x2A, 0x8A, 0x67, 0x16, 0x29, 0xE2, 0x08, 0x63, 0xE9, 0x48, 0x96, 0x03, 0x2E,\n0x32, 0x54, 0x8E, 0xA3, 0x21, 0x6B, 0x48, 0xB1, 0x13, 0x5A, 0x1C, 0xE1, 0xD9, 0x3C, 0xF6, 0xF7,\n0xFB, 0x2D, 0x4C, 0x35, 0x23, 0xA2, 0xDD, 0xDA, 0xDC, 0xFA, 0xA8, 0x9B, 0x51, 0x51, 0xD1, 0x41,\n0xBF, 0x3E, 0xD2, 0xED, 0x33, 0xC5, 0x8B, 0xBA, 0xA2, 0x67, 0x5C, 0x1A, 0xF4, 0x20, 0x54, 0x10,\n0x3C, 0x61, 0x38, 0x60, 0xE8, 0x19, 0x33, 0x43, 0x04, 0x33, 0xC4, 0x6D, 0x4C, 0x35, 0xD3, 0x77,\n0x65, 0xE4, 0x4D, 0xD4, 0x70, 0x3D, 0x29, 0x8E, 0x8C, 0x3D, 0xC9, 0x15, 0xD5, 0x45, 0xCB, 0xA8,\n0x68, 0x29, 0x14, 0x61, 0x24, 0x9F, 0x21, 0x88, 0x21, 0x80, 0xCE, 0x10, 0xC2, 0xC3, 0xC1, 0x0C,\n0x73, 0x45, 0x56, 0x53, 0xF6, 0xF4, 0xB1, 0x86, 0xE0, 0x91, 0xF7, 0xAB, 0xBF, 0xAB, 0xC9, 0x1F,\n0xF0, 0x83, 0x08, 0x63, 0x54, 0x64, 0x63, 0x2C, 0x0C, 0xE9, 0xA2, 0x10, 0x51, 0x64, 0x4E, 0xC5,\n0x91, 0x63, 0x23, 0x59, 0x26, 0x48, 0x00, 0xAC, 0x1B, 0x9E, 0x9D, 0xC5, 0xFD, 0x30, 0x22, 0xA6,\n0x22, 0xA2, 0x88, 0x20, 0x86, 0x05, 0xE1, 0x85, 0x72, 0x66, 0x59, 0xE9, 0xBB, 0x14, 0xDB, 0xA7,\n0x0C, 0xD1, 0x9D, 0x8F, 0x09, 0x7F, 0x19, 0xCA, 0x28, 0x49, 0x45, 0x8A, 0x69, 0x41, 0x25, 0xBA,\n0xBA, 0x51, 0x17, 0x33, 0x45, 0x05, 0xC5, 0x06, 0x23, 0x39, 0x01, 0x48, 0x00, 0x84, 0x10, 0x43,\n0x7D, 0xE1, 0x59, 0x4A, 0x31, 0x2C, 0x93, 0x00, 0x35, 0x94, 0x62, 0xC8, 0x32, 0x72, 0x11, 0xF3,\n0xE7, 0x56, 0xA6, 0x9A, 0xE9, 0x81, 0x14, 0x86, 0x30, 0x06, 0xC5, 0x43, 0x62, 0xA4, 0x8A, 0x7E,\n0x45, 0x6D, 0x2B, 0x52, 0x46, 0xC7, 0xF8, 0xD8, 0xB0, 0x88, 0xD6, 0x0D, 0x2F, 0xD8, 0x0D, 0xF7,\n0x75, 0x43, 0x0E, 0xFA, 0x5C, 0xCF, 0x24, 0x43, 0x04, 0xF5, 0xCF, 0x1A, 0xF3, 0xE3, 0xBA, 0x1F,\n0x05, 0x57, 0x4F, 0x19, 0x89, 0x10, 0x46, 0x11, 0x56, 0x15, 0x77, 0xB9, 0x62, 0x40, 0x44, 0x11,\n0xC6, 0xC6, 0x84, 0xA3, 0x3C, 0x52, 0xD0, 0x13, 0x22, 0x88, 0xA1, 0x08, 0x27, 0xC3, 0xC3, 0xC0,\n0x62, 0x2A, 0x41, 0x0C, 0x87, 0x6E, 0x5C, 0x49, 0x83, 0xA1, 0x08, 0x99, 0xC8, 0x50, 0x7C, 0xB7,\n0x9D, 0xA9, 0x66, 0x3A, 0x65, 0x9C, 0x17, 0x09, 0x80, 0xFA, 0xC5, 0x5E, 0xFE, 0xE6, 0xE6, 0xB4,\n0x62, 0xC9, 0x88, 0x22, 0x92, 0x8F, 0x11, 0x84, 0x10, 0x43, 0xBE, 0xE8, 0xA5, 0xE1, 0xA1, 0x30,\n0x14, 0xA0, 0x08, 0x4B, 0x43, 0x08, 0x31, 0xDC, 0xCC, 0x11, 0x71, 0x5E, 0xC5, 0x8F, 0x13, 0x9E,\n0x51, 0x4C, 0x8C, 0xA6, 0x78, 0x98, 0x29, 0xF6, 0x83, 0x7A, 0xB8, 0xAB, 0xEE, 0x30, 0x6D, 0x45,\n0x18, 0x3D, 0xE5, 0x22, 0xC1, 0x3A, 0x61, 0x4A, 0x9C, 0x42, 0x30, 0x3C, 0x28, 0x18, 0xAA, 0x85,\n0x18, 0x76, 0x5D, 0x32, 0xB4, 0x78, 0x43, 0x72, 0xBF, 0x99, 0x23, 0x62, 0xB5, 0x8A, 0xFB, 0x98,\n0xA8, 0x18, 0x7E, 0xEA, 0x11, 0x5B, 0x54, 0xE4, 0x61, 0x69, 0xB0, 0x44, 0x71, 0xCC, 0x79, 0x54,\n0xBC, 0xAF, 0x2A, 0x02, 0xE9, 0xD3, 0xF2, 0x3B, 0xBD, 0x8E, 0x42, 0xE8, 0x0C, 0x95, 0xA2, 0x87,\n0x20, 0x9E, 0x30, 0x24, 0x1B, 0x3A, 0x22, 0x66, 0x07, 0xFE, 0x49, 0xF1, 0xFC, 0xEA, 0x3C, 0x31,\n0x6A, 0xA7, 0x3C, 0x88, 0x51, 0xB9, 0xDE, 0x49, 0x31, 0xA4, 0xAA, 0x78, 0xEE, 0x14, 0x15, 0x18,\n0x91, 0x5C, 0x9E, 0x93, 0xD3, 0xCC, 0x22, 0x43, 0x0E, 0x88, 0x9D, 0x19, 0xA6, 0xB1, 0x94, 0x99,\n0x66, 0x22, 0x24, 0x1F, 0x37, 0x74, 0x44, 0xCC, 0x1E, 0x2B, 0x52, 0xC3, 0x74, 0xFD, 0x3B, 0xED,\n0x8E, 0x33, 0xC5, 0x60, 0xB7, 0x8B, 0x99, 0x2B, 0x0E, 0x5E, 0xB1, 0xCE, 0x48, 0xBE, 0x90, 0xF0,\n0x22, 0x27, 0xDC, 0x5B, 0xBC, 0x21, 0x49, 0x6B, 0xA9, 0x19, 0x1E, 0x92, 0xE1, 0xCD, 0x55, 0xDD,\n0x30, 0xFE, 0xE3, 0xB7, 0xB7, 0x98, 0x8E, 0x55, 0x7C, 0x7F, 0x2E, 0xBF, 0x94, 0xFD, 0x7C, 0x6F,\n0xE4, 0x59, 0xF7, 0xAE, 0x57, 0x09, 0xAB, 0x8A, 0x3C, 0x0F, 0x40, 0xD1, 0x31, 0x7E, 0x2E, 0xA4,\n0x3B, 0xD7, 0xFF, 0xA7, 0xE1, 0x4C, 0x30, 0x33, 0x54, 0x64, 0xB8, 0xC7, 0x10, 0xC0, 0x98, 0x2D,\n0x2E, 0xA6, 0xF1, 0xC0, 0xFF, 0xE4, 0xED, 0x3E, 0xD0, 0xC5, 0x97, 0x63, 0xB4, 0x01, 0x67, 0xEA,\n0xE2, 0x6E, 0xCA, 0xB5, 0x1C, 0xBD, 0xE2, 0x71, 0xAC, 0x33, 0x8A, 0x30, 0x2E, 0x95, 0x44, 0x8E,\n0x40, 0x48, 0x0D, 0x43, 0x8C, 0xD0, 0x1B, 0xF6, 0x84, 0xA1, 0x66, 0xC8, 0xF7, 0xC3, 0xD1, 0x90,\n0xCF, 0x8B, 0x4F, 0x6C, 0x9B, 0x8B, 0x69, 0xAA, 0xE2, 0xD5, 0xD5, 0xF9, 0x55, 0x16, 0x57, 0x46,\n0x21, 0x8A, 0x0E, 0xC8, 0x4C, 0x91, 0x25, 0xB5, 0xCD, 0xE8, 0x29, 0x53, 0x3C, 0x5C, 0x21, 0x98,\n0x82, 0x60, 0xD5, 0x70, 0xC8, 0x0D, 0xEF, 0x76, 0x53, 0x11, 0x93, 0xA1, 0x16, 0x9C, 0xC9, 0xF0,\n0xC2, 0x13, 0x7E, 0xFD, 0xDB, 0x26, 0x17, 0xD3, 0x54, 0xC5, 0x2B, 0x02, 0xA3, 0x99, 0xA4, 0xC3,\n0x7F, 0xAE, 0x78, 0x39, 0xD5, 0xD1, 0x2B, 0x1E, 0xF7, 0x30, 0xA2, 0x08, 0x23, 0x92, 0x8B, 0x03,\n0xE0, 0x98, 0x44, 0x98, 0x19, 0x0E, 0x5A, 0x49, 0x49, 0xF8, 0xC6, 0x92, 0x3E, 0x46, 0x77, 0x87,\n0xE9, 0x9E, 0x06, 0xC3, 0x51, 0xF1, 0x2B, 0xB2, 0xC9, 0xC9, 0x34, 0xAF, 0x22, 0xA1, 0x8C, 0xA3,\n0xA2, 0x65, 0x54, 0xEC, 0xFF, 0x4B, 0xD1, 0x18, 0x51, 0xAC, 0xB5, 0x91, 0x2C, 0xF5, 0x03, 0x10,\n0x42, 0xB6, 0xC3, 0x9A, 0xE1, 0x2E, 0x18, 0xF6, 0x85, 0xA1, 0x8A, 0x18, 0x0D, 0x45, 0x38, 0x1A,\n0x92, 0xAD, 0x2E, 0xA6, 0xE9, 0xAC, 0x78, 0x55, 0xCB, 0x5C, 0x91, 0xE1, 0xA6, 0xA5, 0xC8, 0x78,\n0x03, 0xA3, 0x02, 0x63, 0x3D, 0x90, 0xB9, 0x40, 0xD8, 0xAA, 0xE1, 0xC1, 0xE2, 0x0D, 0x75, 0x94,\n0xBD, 0x4B, 0x9C, 0x32, 0x8C, 0x9F, 0x99, 0x08, 0x93, 0x61, 0x49, 0xB8, 0xE1, 0xC5, 0x74, 0xAC,\n0xE2, 0xC7, 0x2B, 0x72, 0x53, 0xCC, 0xA9, 0x28, 0x26, 0x43, 0x29, 0x2A, 0x52, 0xEC, 0xA4, 0xA8,\n0x38, 0x45, 0xE7, 0xB8, 0x38, 0x08, 0xD6, 0x6B, 0xA8, 0x4F, 0xEC, 0xB4, 0xE1, 0x6E, 0x91, 0x21,\n0xD9, 0xDA, 0x9D, 0x69, 0xBD, 0x8A, 0x30, 0x26, 0xC7, 0xFD, 0x55, 0x4B, 0x91, 0xA4, 0x3B, 0x2D,\n0xCA, 0xC8, 0x80, 0x53, 0x73, 0xFC, 0x72, 0xC2, 0x78, 0x94, 0x3D, 0x9E, 0xE8, 0xA1, 0x7D, 0xC0,\n0xF0, 0x56, 0x9F, 0x53, 0x61, 0xE8, 0xD7, 0xEE, 0x6D, 0x3D, 0x80, 0xAA, 0xDF, 0xA0, 0x46, 0xBD,\n0x90, 0xF8, 0x71, 0x52, 0xBC, 0x42, 0xD1, 0x8D, 0xA8, 0x28, 0xF6, 0x83, 0x84, 0x51, 0xAC, 0x32,\n0xA6, 0x3C, 0x1A, 0x10, 0xC2, 0x7D, 0x88, 0x08, 0x55, 0xC3, 0xAA, 0x21, 0xD7, 0x4A, 0x9D, 0xE5,\n0xB4, 0x21, 0x79, 0xBF, 0xAD, 0x07, 0x50, 0xF5, 0x77, 0x2F, 0x06, 0x39, 0x02, 0x23, 0x8A, 0x42,\n0x3C, 0xAD, 0x08, 0x23, 0x8B, 0xAA, 0x77, 0x24, 0x8B, 0xFC, 0x00, 0x84, 0xF0, 0x88, 0xE1, 0xE0,\n0x0D, 0x77, 0x6D, 0x43, 0x21, 0x42, 0x98, 0xE7, 0x8F, 0x27, 0x5B, 0x5E, 0x4C, 0xC7, 0x2A, 0x7E,\n0x40, 0x10, 0xC6, 0xE4, 0x28, 0x46, 0x14, 0xCB, 0x94, 0x8A, 0x62, 0xE4, 0x6C, 0x8D, 0xE3, 0xC2,\n0x60, 0x07, 0x61, 0xAA, 0xE1, 0x6C, 0x29, 0x55, 0x30, 0xDC, 0x61, 0xB8, 0x7B, 0x94, 0xE1, 0x76,\n0x4F, 0x17, 0xD9, 0xBB, 0x6D, 0xF6, 0x37, 0x25, 0xA3, 0x04, 0xED, 0xE7, 0x39, 0x8C, 0x52, 0x64,\n0x67, 0x24, 0x43, 0x8B, 0xB1, 0x7C, 0x4F, 0xD9, 0x67, 0x08, 0x42, 0x78, 0x8C, 0x84, 0x18, 0x22,\n0x88, 0xA1, 0xC5, 0x1B, 0x5A, 0x30, 0xCC, 0x6F, 0x1A, 0xB6, 0x7D, 0xBA, 0x98, 0x57, 0xF1, 0xED,\n0xFC, 0x0B, 0x0D, 0x63, 0x8C, 0x4C, 0x50, 0x64, 0x46, 0xCD, 0xDA, 0xD8, 0x54, 0x84, 0x91, 0x2C,\n0xF7, 0x83, 0x90, 0xA1, 0x34, 0x5F, 0x4A, 0x75, 0xDE, 0x21, 0xB9, 0xA1, 0xFE, 0xF5, 0x55, 0xC3,\n0xE9, 0xAA, 0xE8, 0xA7, 0x87, 0x27, 0x2B, 0xF9, 0x63, 0x4A, 0xBF, 0xF8, 0xC4, 0x7F, 0x96, 0x82,\n0xE3, 0x22, 0x45, 0x18, 0xBB, 0x6B, 0x14, 0x3D, 0x23, 0x8E, 0x2E, 0xD8, 0x35, 0x32, 0x07, 0x84,\n0x30, 0x00, 0x62, 0x98, 0xA7, 0x77, 0x86, 0xE3, 0x62, 0xEA, 0x09, 0x15, 0x9D, 0x2E, 0xB6, 0xBE,\n0x21, 0x4E, 0x97, 0x6F, 0xEF, 0xCE, 0x5C, 0x64, 0x38, 0x2A, 0x72, 0xD4, 0x40, 0xF1, 0xB2, 0x54,\n0xEC, 0xAF, 0x1B, 0x8C, 0x38, 0x3E, 0x32, 0x37, 0x10, 0x2A, 0x73, 0xC2, 0x0E, 0xC2, 0x9A, 0xE1,\n0xE1, 0x36, 0x18, 0x1A, 0xE1, 0xDC, 0x10, 0x42, 0xF2, 0x76, 0xDB, 0xA7, 0x8B, 0x59, 0x15, 0xED,\n0x98, 0x71, 0xD6, 0x66, 0x94, 0xA2, 0xA5, 0xAE, 0x48, 0xA2, 0x22, 0x8C, 0x38, 0x2E, 0x86, 0x64,\n0x1D, 0x00, 0xD0, 0x13, 0x76, 0x21, 0x43, 0xCB, 0x70, 0xFC, 0x1F, 0xE9, 0x36, 0x6E, 0x87, 0xD1,\n0x90, 0xA5, 0xD4, 0x13, 0xFE, 0x2F, 0x36, 0x44, 0x8E, 0x19, 0xF7, 0xD5, 0x2F, 0xA6, 0x0C, 0xDB,\n0x8A, 0xD5, 0x32, 0x2A, 0x39, 0x23, 0x8E, 0x92, 0x6C, 0x53, 0x46, 0x3E, 0x00, 0x21, 0x44, 0x70,\n0xA1, 0xA1, 0x6E, 0x4B, 0xAF, 0xD8, 0x0E, 0xBF, 0xAA, 0xBD, 0xE9, 0xE7, 0xFD, 0xFF, 0x62, 0x43,\n0x64, 0xB6, 0x61, 0x83, 0x62, 0x8B, 0xAA, 0x2A, 0x5E, 0x4B, 0xF1, 0x52, 0x8A, 0x96, 0x4A, 0x19,\n0x95, 0xDB, 0x5B, 0x31, 0xE2, 0x08, 0xA4, 0x28, 0xAB, 0xD9, 0xD7, 0x05, 0x69, 0x61, 0x9D, 0xF0,\n0xD2, 0x19, 0x9E, 0x7B, 0xC3, 0xD6, 0x1B, 0xB7, 0x36, 0x7F, 0x42, 0xF4, 0xB3, 0xCD, 0xBF, 0xEC,\n0xDD, 0xFB, 0xAB, 0x4C, 0x51, 0x14, 0xC0, 0xF1, 0x24, 0x51, 0x9E, 0xE5, 0x91, 0xBC, 0x1F, 0x45,\n0x0C, 0xA1, 0x90, 0x1F, 0xFC, 0xC0, 0x2F, 0x52, 0x6A, 0x14, 0xA1, 0x3C, 0xA3, 0x48, 0x29, 0x94,\n0x3B, 0x2E, 0xE7, 0x1A, 0x35, 0xFF, 0xB9, 0xB5, 0xD7, 0x99, 0x7D, 0xBE, 0x67, 0xAD, 0xBD, 0xCF,\n0x39, 0x33, 0xFC, 0xE2, 0x9E, 0x39, 0x5F, 0xF2, 0xEC, 0xBA, 0x9A, 0x8F, 0xB5, 0xF7, 0x3E, 0xE7,\n0x8E, 0xB9, 0x67, 0x4D, 0xC9, 0x30, 0x06, 0xC3, 0xFA, 0x2C, 0x5E, 0x52, 0x48, 0xCD, 0x6C, 0x49,\n0x75, 0xC6, 0x07, 0x30, 0x12, 0x94, 0xFE, 0x0B, 0x79, 0x41, 0x3F, 0x86, 0x2A, 0x88, 0xE1, 0x07,\n0x63, 0xF8, 0x20, 0x1A, 0x4A, 0x18, 0x46, 0xC2, 0x3E, 0x6E, 0x88, 0x3C, 0x1F, 0x3C, 0x7F, 0xDA,\n0xB7, 0x8A, 0x92, 0x51, 0xAC, 0x6A, 0x61, 0x94, 0x80, 0xEC, 0x0C, 0xC1, 0x26, 0x42, 0x00, 0x5D,\n0xF3, 0xDB, 0x34, 0x71, 0x3B, 0xC4, 0x10, 0x42, 0xDB, 0x26, 0xBF, 0x65, 0x9A, 0xBD, 0x6F, 0x73,\n0xD6, 0x3F, 0x21, 0xDA, 0x2B, 0x2A, 0x23, 0x2B, 0x6A, 0x80, 0x24, 0x19, 0x4B, 0xA7, 0xC8, 0xAA,\n0x5A, 0x49, 0x2E, 0x01, 0x88, 0x20, 0x84, 0x77, 0xEE, 0x30, 0x83, 0x4D, 0x97, 0x16, 0x61, 0x3B,\n0xC4, 0xF0, 0xEC, 0xB1, 0x66, 0xC3, 0xE9, 0xE6, 0xF8, 0x6F, 0xDD, 0xCB, 0xDD, 0xB7, 0xF9, 0xB9,\n0xAF, 0x5E, 0xCA, 0x18, 0xF7, 0xC5, 0xA3, 0x0D, 0x8A, 0x0C, 0xA4, 0x65, 0xC4, 0x91, 0x91, 0xEC,\n0xF6, 0x43, 0xB0, 0xF6, 0x02, 0x1F, 0xA9, 0xE1, 0x25, 0x76, 0xE3, 0xC4, 0xB0, 0x7A, 0x4A, 0x94,\n0x21, 0xDC, 0x36, 0xEF, 0xCD, 0x46, 0x6F, 0x0E, 0x35, 0x8C, 0xE2, 0xDD, 0x75, 0x04, 0x71, 0xCC,\n0x2B, 0x4A, 0x77, 0xD8, 0x15, 0x6D, 0x30, 0x66, 0x1C, 0x91, 0x24, 0xF0, 0x9C, 0x9E, 0x4E, 0x3D,\n0x84, 0x0D, 0x63, 0xC8, 0x2B, 0xF2, 0x3C, 0x90, 0xCC, 0x9D, 0xB6, 0x74, 0x0C, 0xB7, 0x51, 0x9F,\n0x0E, 0x35, 0xB5, 0x8B, 0xC5, 0x02, 0x3F, 0xC3, 0x88, 0xE2, 0x0D, 0x14, 0x65, 0x2E, 0x44, 0x10,\n0xC5, 0x7A, 0x3C, 0xB0, 0x38, 0x56, 0xFB, 0x23, 0x98, 0x84, 0x1C, 0x80, 0x08, 0xCE, 0xDF, 0x5B,\n0x4A, 0x68, 0x27, 0xBF, 0x24, 0x94, 0x29, 0x4C, 0x0C, 0xAF, 0x6D, 0x89, 0x84, 0xD4, 0xAF, 0x43,\n0x4D, 0x6E, 0x41, 0x25, 0x86, 0xD1, 0x1C, 0x6F, 0xA2, 0x62, 0x10, 0xBB, 0xDF, 0xC1, 0x88, 0x23,\n0x13, 0x89, 0x25, 0xA6, 0xFA, 0x05, 0x40, 0x3A, 0x0F, 0x61, 0xD6, 0xF0, 0x4E, 0x87, 0x61, 0x9D,\n0x30, 0xFE, 0x87, 0x81, 0x9E, 0x1D, 0x6A, 0x6A, 0x0B, 0xEA, 0x77, 0xF3, 0xC4, 0x05, 0xC3, 0x58,\n0xDD, 0xBE, 0x31, 0x8A, 0xA8, 0x75, 0xAE, 0xAA, 0x48, 0x42, 0x49, 0xCC, 0x1F, 0x80, 0xAC, 0xA3,\n0x89, 0x9B, 0xAE, 0xE3, 0xFA, 0x33, 0xFE, 0xA9, 0xCC, 0x57, 0x52, 0x29, 0x1A, 0xA6, 0x9F, 0x87,\n0xA5, 0xAA, 0x77, 0x87, 0x9A, 0xFA, 0x09, 0x75, 0x0B, 0xE1, 0x58, 0x0E, 0x63, 0x5D, 0x31, 0x38,\n0xCA, 0xE9, 0xA6, 0x52, 0xBC, 0xCF, 0xB7, 0x29, 0x23, 0x90, 0x48, 0xA6, 0xC1, 0xE7, 0x87, 0x90,\n0xCC, 0x2E, 0x1C, 0x45, 0x19, 0x43, 0x0C, 0xCB, 0x31, 0x94, 0x2C, 0x21, 0x86, 0xFD, 0xB9, 0x53,\n0x43, 0x3C, 0x6B, 0x6A, 0x8B, 0xCB, 0x0C, 0x63, 0xA9, 0x58, 0xDF, 0x18, 0x39, 0x9F, 0x66, 0x17,\n0x55, 0x1C, 0xB1, 0xEC, 0x8E, 0x19, 0xB4, 0x84, 0xA6, 0x8A, 0x10, 0xC3, 0x48, 0x98, 0x18, 0x96,\n0x82, 0xF4, 0x62, 0xA3, 0x7F, 0x87, 0x9A, 0x88, 0x18, 0xEE, 0xA1, 0x7E, 0x62, 0x01, 0x32, 0x8C,\n0x76, 0x49, 0x95, 0xDC, 0x92, 0x7A, 0x9F, 0x61, 0xC4, 0xD3, 0x38, 0x2E, 0x45, 0x79, 0xFE, 0x68,\n0x78, 0x93, 0x54, 0x0F, 0x42, 0x37, 0x86, 0xDE, 0x70, 0x5F, 0x40, 0xE4, 0x13, 0x3D, 0x5A, 0xC3,\n0x1E, 0x1E, 0x4C, 0xCD, 0x82, 0xBA, 0x6E, 0xAF, 0x8A, 0x13, 0x46, 0x96, 0xD4, 0x90, 0x20, 0xB2,\n0xA4, 0x4A, 0x30, 0x02, 0xC9, 0x75, 0x80, 0xA9, 0x75, 0x00, 0x01, 0x44, 0xB0, 0x6B, 0x0C, 0x4F,\n0xB3, 0x94, 0x72, 0x2C, 0x85, 0xB0, 0xD6, 0x7A, 0x2F, 0x0F, 0x35, 0xE6, 0x3A, 0x03, 0x41, 0x1C,\n0x13, 0x45, 0x9E, 0xB3, 0x01, 0xE3, 0xFD, 0xB2, 0x8A, 0xD1, 0x3A, 0x02, 0xD9, 0x9D, 0x59, 0x41,\n0x5B, 0xC7, 0x50, 0x12, 0xC2, 0x07, 0x7C, 0xDC, 0x09, 0x43, 0x56, 0x52, 0x57, 0x2F, 0x2F, 0x2E,\n0xEC, 0x75, 0xC6, 0x78, 0x8A, 0x5F, 0x1B, 0x63, 0x5D, 0xB1, 0xDA, 0x17, 0x63, 0xF1, 0xC7, 0x66,\n0x5D, 0xA5, 0x6E, 0x3E, 0x04, 0xF3, 0x84, 0x8C, 0xA1, 0x9E, 0x4A, 0xAD, 0x21, 0x63, 0x08, 0x21,\n0xAF, 0xB2, 0xF2, 0xAB, 0xE7, 0x86, 0xF3, 0x6D, 0x11, 0x3E, 0xC7, 0xE8, 0x87, 0xF1, 0x01, 0xC3,\n0x08, 0x23, 0xE1, 0x08, 0x64, 0x67, 0x29, 0xE0, 0x7D, 0xFD, 0x6A, 0x0B, 0x86, 0xF1, 0xA0, 0x1B,\n0x09, 0x6F, 0x65, 0xC6, 0x30, 0x0A, 0x92, 0x5C, 0x20, 0xF6, 0xF4, 0x60, 0x6A, 0xB7, 0x45, 0x73,\n0x73, 0x23, 0xCF, 0xC8, 0x30, 0x4A, 0x3A, 0x8C, 0xD7, 0x41, 0x24, 0x1C, 0x69, 0x21, 0x3F, 0x04,\n0x59, 0x97, 0x89, 0x23, 0x4D, 0x1C, 0x43, 0x29, 0x1D, 0x43, 0x08, 0xA9, 0x18, 0xF7, 0xF5, 0xE2,\n0xC2, 0x6D, 0x8B, 0x13, 0x08, 0x6B, 0x90, 0xB5, 0x35, 0xF5, 0xDE, 0x31, 0x55, 0xF4, 0x6B, 0x2A,\n0x8C, 0x84, 0xA3, 0xC7, 0x68, 0xC4, 0xA3, 0xDA, 0xDB, 0xBA, 0x15, 0x55, 0xD7, 0xD2, 0x07, 0x92,\n0x1E, 0x4A, 0xA5, 0xEC, 0x18, 0x46, 0x42, 0x9A, 0xAE, 0x82, 0xE1, 0xFC, 0x6A, 0xD1, 0x5C, 0x1B,\n0x3B, 0x46, 0x73, 0x1F, 0xEE, 0xC6, 0xC2, 0x8C, 0x78, 0x76, 0x54, 0x91, 0x73, 0x4E, 0x2A, 0xBF,\n0x91, 0x58, 0x4A, 0x73, 0x63, 0x78, 0x96, 0x31, 0x34, 0x84, 0xBC, 0x0C, 0x67, 0x7F, 0x2F, 0xF2,\n0x1D, 0xA2, 0xDE, 0x44, 0x85, 0x50, 0x4B, 0x18, 0xB9, 0x83, 0xC3, 0x9A, 0xEA, 0xCF, 0xA9, 0x4B,\n0x62, 0xF2, 0x1B, 0xFC, 0x90, 0x20, 0x64, 0x25, 0x0D, 0x88, 0xB7, 0x22, 0x21, 0x1F, 0xFE, 0x85,\n0xB0, 0x14, 0xA4, 0x9F, 0x3F, 0x7A, 0x7C, 0x81, 0x98, 0x1E, 0x6E, 0x5E, 0x00, 0x88, 0x23, 0x8C,\n0x0D, 0x37, 0xC5, 0x23, 0xE3, 0x7D, 0x18, 0xE2, 0xA7, 0x2F, 0x96, 0xEF, 0xFE, 0x2D, 0x08, 0x59,\n0x49, 0x95, 0x90, 0x31, 0x64, 0x25, 0x85, 0xD0, 0x18, 0xF6, 0xF7, 0x46, 0x4D, 0xFE, 0x56, 0x38,\n0x7A, 0x29, 0x23, 0xC3, 0x58, 0x3A, 0xDE, 0xA8, 0x33, 0xC6, 0x55, 0x15, 0xB9, 0xF7, 0x65, 0xEA,\n0xD9, 0x21, 0x8A, 0x7D, 0xC3, 0xDC, 0x56, 0x84, 0xA7, 0x21, 0x64, 0x0C, 0xEB, 0x2B, 0xA9, 0x0A,\n0xAE, 0xAC, 0x61, 0x79, 0xB8, 0x59, 0xAF, 0x9F, 0xEC, 0x2C, 0xA3, 0x5F, 0x53, 0xF3, 0x8C, 0x38,\n0x2A, 0x23, 0x21, 0xEB, 0x9A, 0xF3, 0x49, 0x20, 0xB6, 0x10, 0xDE, 0x68, 0x59, 0x49, 0x21, 0xE4,\n0x75, 0xFE, 0x9F, 0xAF, 0x94, 0x61, 0xA9, 0x38, 0xA9, 0x08, 0x0D, 0x24, 0x8C, 0x6D, 0xD3, 0x78,\n0xA9, 0xB6, 0xAA, 0xAA, 0xC9, 0x72, 0x89, 0xA1, 0x52, 0x22, 0x18, 0xBA, 0x63, 0x09, 0xB5, 0x16,\n0x42, 0x15, 0xA4, 0x55, 0x33, 0x2C, 0x15, 0x8B, 0xB9, 0x21, 0xA5, 0x8C, 0xAA, 0x28, 0xB9, 0xBD,\n0x31, 0x8E, 0x23, 0x8E, 0xA2, 0xB2, 0x6C, 0xCA, 0xCF, 0x10, 0xA6, 0x84, 0xF7, 0x1C, 0xA1, 0x04,\n0x61, 0x29, 0x48, 0xAB, 0xB5, 0x96, 0x56, 0x87, 0x9B, 0x71, 0x61, 0xCF, 0xE7, 0x9A, 0x61, 0xD4,\n0x61, 0x3C, 0x6B, 0x18, 0xA3, 0x23, 0x67, 0x55, 0x1C, 0x97, 0x81, 0x54, 0x77, 0x08, 0x11, 0x0C,\n0xDD, 0x32, 0x84, 0xFB, 0xD8, 0x0C, 0x3D, 0xE1, 0xCE, 0x79, 0x2B, 0x69, 0x38, 0x57, 0x9C, 0x42,\n0x58, 0xD6, 0xC8, 0xC8, 0xBD, 0x38, 0xC6, 0x31, 0x71, 0xCC, 0x1A, 0x3E, 0xC9, 0x23, 0xBA, 0x9D,\n0x30, 0x4F, 0x28, 0xD5, 0x09, 0xB7, 0x41, 0x58, 0x02, 0xD2, 0x4A, 0x1A, 0x46, 0x45, 0xFC, 0xBC,\n0x63, 0x9E, 0x91, 0xDB, 0x38, 0xA7, 0xA3, 0x23, 0x90, 0x48, 0xB6, 0xE7, 0x37, 0x42, 0x15, 0xE4,\n0xCA, 0xDE, 0xDE, 0xE9, 0x96, 0x3C, 0xA1, 0xCE, 0xE0, 0x60, 0x58, 0x5D, 0xF4, 0x4F, 0xED, 0xE6,\n0xD2, 0xC4, 0x28, 0x29, 0xA3, 0x77, 0x94, 0x80, 0xB4, 0xD7, 0xF4, 0x79, 0x3D, 0xF8, 0x00, 0x44,\n0x50, 0x87, 0x90, 0xA7, 0x41, 0xE5, 0x09, 0xA3, 0xE0, 0xED, 0xD8, 0xCE, 0x9D, 0xD3, 0x95, 0xB9,\n0xC6, 0x6F, 0x52, 0xC4, 0x10, 0x48, 0xCF, 0x28, 0x8E, 0x1C, 0x55, 0xEF, 0xE1, 0x28, 0x01, 0x09,\n0x25, 0x71, 0x00, 0x25, 0x56, 0x50, 0x05, 0x64, 0x06, 0x17, 0x26, 0x54, 0x41, 0x5A, 0x61, 0x43,\n0xBD, 0xE8, 0x17, 0x45, 0xBB, 0x38, 0xA9, 0x63, 0x03, 0x23, 0xE3, 0xC8, 0xAD, 0x1C, 0x20, 0x25,\n0x61, 0x29, 0x2D, 0xC1, 0xF4, 0x78, 0xA2, 0x87, 0x9F, 0x02, 0x86, 0x14, 0x10, 0xC1, 0xB3, 0xED,\n0x84, 0xB7, 0x4D, 0x5F, 0xA7, 0xE3, 0x15, 0x36, 0x44, 0x71, 0xA7, 0x2D, 0x8E, 0x63, 0xC2, 0xC8,\n0x95, 0xA3, 0xF9, 0xAF, 0x8D, 0x48, 0x2A, 0xA5, 0x02, 0xDD, 0xC9, 0x77, 0x54, 0x33, 0x7E, 0x37,\n0x10, 0x84, 0x50, 0x05, 0x53, 0x42, 0x04, 0xBF, 0x6A, 0xB7, 0xA5, 0x95, 0xF8, 0xD8, 0x53, 0xB7,\n0xA2, 0xDF, 0x62, 0xA4, 0xFA, 0x38, 0x72, 0x33, 0x2E, 0x40, 0x7A, 0xC7, 0x38, 0x93, 0x50, 0xA2,\n0x49, 0xD8, 0xC1, 0x07, 0x60, 0x5D, 0x50, 0xDA, 0x97, 0x12, 0xC6, 0x21, 0x04, 0x30, 0x2A, 0xFE,\n0x1A, 0xAD, 0xB8, 0x61, 0xDC, 0x17, 0x21, 0x04, 0x32, 0xB7, 0xAA, 0x46, 0xC7, 0xE4, 0xC5, 0x1B,\n0x78, 0x65, 0x23, 0x30, 0x89, 0xF8, 0xFD, 0x1A, 0x9F, 0x11, 0x6C, 0x21, 0x44, 0x70, 0x57, 0xD9,\n0x57, 0x69, 0xD2, 0xFF, 0x8F, 0xE3, 0x2F, 0x7A, 0xD5, 0x0F, 0x5F, 0xEA, 0xE8, 0x19, 0xA3, 0xA3,\n0xDE, 0x04, 0x88, 0x90, 0xC6, 0x92, 0xB9, 0xB4, 0xC5, 0x13, 0x68, 0xF4, 0x03, 0xD0, 0x0B, 0x72,\n0x77, 0xC6, 0xAE, 0xA3, 0x25, 0xE0, 0xEE, 0x32, 0x51, 0xFC, 0xB8, 0x3E, 0x18, 0x5A, 0xC5, 0xAF,\n0x84, 0xA3, 0x5F, 0x55, 0x71, 0xE4, 0xF2, 0xD1, 0x4B, 0x32, 0x99, 0xE6, 0x67, 0xB6, 0x70, 0x3C,\n0x8A, 0x80, 0x08, 0x32, 0x84, 0x59, 0xC2, 0x00, 0x48, 0xBB, 0x7E, 0x7E, 0x1F, 0x0C, 0x51, 0x1C,\n0x4D, 0xBE, 0xB2, 0x4E, 0x49, 0x15, 0xA4, 0x8E, 0x63, 0x64, 0xCC, 0x3A, 0x02, 0xC9, 0x2B, 0x8E,\n0x11, 0xA1, 0x57, 0xE7, 0x53, 0x40, 0x4D, 0xFD, 0x54, 0x30, 0xBB, 0x8E, 0x22, 0x48, 0x72, 0x69,\n0xD1, 0xF3, 0xE7, 0xB5, 0x2D, 0xA1, 0xA8, 0x1F, 0x99, 0x52, 0xC2, 0xDD, 0x14, 0x20, 0x19, 0x47,\n0x1C, 0x95, 0x51, 0xB2, 0xFF, 0xE5, 0x18, 0x49, 0xE6, 0xD2, 0x05, 0x1E, 0x7E, 0x00, 0x22, 0x98,\n0x0C, 0xA1, 0x13, 0x3C, 0x71, 0xE2, 0xC4, 0x6E, 0xAD, 0x58, 0xED, 0x4B, 0x0B, 0x42, 0xF1, 0xFB,\n0x63, 0x08, 0xD9, 0x74, 0xD4, 0x31, 0xD9, 0x1D, 0x71, 0xD4, 0xDC, 0x6B, 0x00, 0x38, 0x4E, 0xD8,\n0xE6, 0xDF, 0x09, 0x1F, 0x7E, 0x4D, 0x82, 0x4A, 0xC8, 0x10, 0xCE, 0xFD, 0x68, 0xF7, 0x97, 0xC9,\n0x70, 0x2C, 0x4D, 0x14, 0xEF, 0x6E, 0xFC, 0x8C, 0xFF, 0xD4, 0x43, 0x11, 0x12, 0x47, 0x7B, 0x58,\n0x05, 0x92, 0xB5, 0x15, 0xCB, 0x50, 0xF0, 0x22, 0xD5, 0x95, 0xE0, 0xF3, 0x9F, 0x01, 0xAE, 0x79,\n0x08, 0x1D, 0xA0, 0xF6, 0x68, 0xD8, 0x0E, 0x93, 0x82, 0xE2, 0x8F, 0xC2, 0x3F, 0x56, 0x38, 0xA6,\n0xCB, 0x2A, 0x03, 0x09, 0x24, 0x92, 0x80, 0x3A, 0x39, 0xF8, 0xF0, 0x43, 0xD0, 0xEC, 0x84, 0x5E,\n0x70, 0x6B, 0x4C, 0x7E, 0x2C, 0xDB, 0xE1, 0x60, 0x98, 0x3F, 0xA4, 0x4E, 0xE6, 0x86, 0x5B, 0x35,\n0x20, 0xF3, 0x8E, 0x3A, 0x90, 0x48, 0xB2, 0xBC, 0x7A, 0x4C, 0xAF, 0x87, 0x1F, 0x80, 0xD9, 0x65,\n0x14, 0xC1, 0xAD, 0xA6, 0x13, 0xC5, 0x78, 0x38, 0xD2, 0x34, 0x1F, 0x6F, 0x1E, 0xF1, 0x80, 0xD5,\n0x24, 0x5B, 0x1C, 0x81, 0x24, 0x30, 0x4D, 0xE8, 0xE1, 0x07, 0x20, 0x82, 0x66, 0x19, 0xD5, 0xBF,\n0x8F, 0x23, 0x7C, 0x38, 0x5C, 0x1D, 0xB6, 0x6F, 0x8C, 0xD3, 0xEA, 0x31, 0xA3, 0x06, 0x47, 0x03,\n0x09, 0x65, 0x57, 0xF8, 0x01, 0xD8, 0x2D, 0x78, 0x52, 0xD3, 0x1F, 0x4E, 0x37, 0x86, 0xA5, 0xB4,\n0x5D, 0x71, 0x5C, 0xF0, 0xA0, 0x69, 0x40, 0xA6, 0x8E, 0x40, 0xF2, 0x2C, 0x72, 0xAD, 0x15, 0x0F,\n0x3F, 0x03, 0xE8, 0x04, 0x59, 0x44, 0x4F, 0xD6, 0xDB, 0xFA, 0x74, 0x32, 0x1E, 0x0C, 0x17, 0x58,\n0x52, 0x79, 0xDC, 0x90, 0x64, 0x20, 0x39, 0xAF, 0xD6, 0x21, 0xA1, 0xC4, 0xD2, 0x87, 0x9E, 0xF2,\n0xF1, 0x2C, 0x7C, 0x4E, 0x32, 0x46, 0x10, 0x40, 0x9A, 0x0D, 0xA7, 0xD2, 0x6E, 0x45, 0x3D, 0xA5,\n0x9E, 0x0C, 0x9D, 0xAA, 0x02, 0xD2, 0x0D, 0x24, 0x90, 0x48, 0x82, 0x99, 0x04, 0x1E, 0x7E, 0x11,\n0xB0, 0x76, 0x92, 0xB1, 0x80, 0xA7, 0x48, 0xFE, 0x0E, 0xC3, 0x18, 0x2E, 0xAA, 0x38, 0x5A, 0x7F,\n0x18, 0x1F, 0x3C, 0xCA, 0x3B, 0x2A, 0xA4, 0xE4, 0x9E, 0x2F, 0x97, 0x0F, 0x3E, 0xF5, 0x73, 0x80,\n0x4E, 0x10, 0x3F, 0x1A, 0xC6, 0x70, 0xB9, 0x61, 0x3C, 0x15, 0xDA, 0x51, 0xD5, 0x0E, 0x89, 0x64,\n0xB4, 0x24, 0xD4, 0x24, 0xF4, 0xC4, 0xAF, 0x13, 0xD0, 0xFF, 0x05, 0x8A, 0x61, 0x0C, 0x97, 0x1D,\n0xC6, 0xF8, 0x10, 0x52, 0x33, 0x24, 0x1F, 0x4B, 0x06, 0x33, 0x0D, 0x3C, 0x9E, 0x28, 0xA3, 0x80,\n0x08, 0x02, 0xB8, 0xC3, 0x25, 0x63, 0x18, 0xEE, 0xB3, 0x0D, 0x86, 0xCB, 0x0D, 0xE3, 0xE7, 0x1D,\n0xD2, 0x21, 0x42, 0xD2, 0x40, 0x72, 0xB7, 0x5C, 0x2D, 0xC1, 0x74, 0x81, 0xA7, 0x7C, 0xEA, 0xD7,\n0x0E, 0x58, 0x7F, 0xBF, 0x9F, 0x87, 0xDD, 0xF0, 0xAF, 0x86, 0xF1, 0xFB, 0x4C, 0x1E, 0xC7, 0x03,\n0xA6, 0x43, 0x87, 0x18, 0x49, 0x20, 0xA3, 0x24, 0x94, 0x25, 0x27, 0x41, 0x07, 0x5F, 0xF4, 0xB3,\n0x80, 0x91, 0xCF, 0xBD, 0xD3, 0x62, 0x63, 0x74, 0x65, 0x18, 0xC3, 0xBF, 0x5B, 0x53, 0xD7, 0x0C,\n0x61, 0x2A, 0xE9, 0x2E, 0x3F, 0xB0, 0x0C, 0x9C, 0x04, 0x1D, 0x7A, 0xF8, 0x01, 0x88, 0x9F, 0xE9,\n0xD0, 0x6C, 0x7D, 0x34, 0x8C, 0xE1, 0x92, 0x80, 0x9A, 0x28, 0x5E, 0x19, 0xFD, 0x98, 0xC0, 0xE8,\n0x25, 0xFD, 0x2E, 0xC9, 0x3D, 0x3A, 0x52, 0x53, 0x51, 0x23, 0x6E, 0x67, 0x77, 0xF8, 0xD1, 0xDA,\n0x64, 0x2C, 0x63, 0x28, 0x86, 0xA6, 0x61, 0x2C, 0x09, 0xB9, 0x24, 0x1D, 0xC6, 0x1F, 0x85, 0x32,\n0x1E, 0xAE, 0xD5, 0x2A, 0x09, 0x66, 0x1A, 0x78, 0x12, 0x17, 0x81, 0x19, 0xBF, 0xDA, 0xBB, 0x39,\n0x54, 0xFC, 0x18, 0xDD, 0x75, 0x86, 0x83, 0x67, 0x2B, 0x9D, 0x57, 0x94, 0xFB, 0x70, 0x1B, 0x05,\n0x84, 0x59, 0x4A, 0xB3, 0x4F, 0x82, 0xE9, 0x43, 0x0F, 0x3E, 0xEF, 0x97, 0xBE, 0x8F, 0x62, 0x63,\n0xAC, 0x86, 0x35, 0xC4, 0x81, 0x13, 0xBD, 0x2E, 0x40, 0x4D, 0x14, 0x47, 0xC2, 0x78, 0xF0, 0xB0,\n0x76, 0xA6, 0x2C, 0x47, 0xC9, 0x46, 0x89, 0xA6, 0x0D, 0x3B, 0xF8, 0xD0, 0xCB, 0x57, 0x7C, 0x1F,\n0x07, 0x43, 0x41, 0xB4, 0xAD, 0xB6, 0x65, 0xB7, 0x1C, 0xA9, 0xA1, 0x2A, 0x0A, 0xE3, 0x5A, 0x20,\n0x3C, 0x52, 0x0B, 0xCD, 0x74, 0x81, 0x8D, 0x9E, 0x04, 0x5D, 0xF3, 0xF0, 0x9D, 0xA9, 0x35, 0x27,\n0x7C, 0x35, 0x1E, 0x05, 0x43, 0x4A, 0x3D, 0x57, 0x0A, 0x73, 0x11, 0x3D, 0xE8, 0xE8, 0xEE, 0xDD,\n0xA0, 0xF8, 0x4A, 0x18, 0x4B, 0xC3, 0x8B, 0xB1, 0x0A, 0x93, 0xB1, 0xAC, 0xC7, 0x25, 0x1E, 0xD7,\n0x7C, 0x6E, 0xDF, 0x03, 0xEF, 0x88, 0x4B, 0x7E, 0x49, 0x08, 0x9F, 0xBD, 0x92, 0x39, 0x14, 0xC5,\n0x32, 0x30, 0x53, 0xCE, 0xFE, 0x6F, 0x99, 0xCB, 0xE9, 0x81, 0x17, 0x1B, 0x8D, 0x82, 0xE2, 0xB3,\n0xB7, 0x93, 0x19, 0x84, 0xF5, 0xAA, 0x87, 0x1D, 0xCD, 0x96, 0xC0, 0x63, 0xB4, 0xD3, 0x3F, 0x6F,\n0xAD, 0xD8, 0x78, 0xF6, 0xEC, 0x95, 0x20, 0x8A, 0x62, 0xEC, 0x2E, 0x35, 0x5A, 0xF6, 0x92, 0xF2,\n0xEF, 0xF4, 0xE0, 0xD3, 0xC6, 0xD2, 0xAB, 0x57, 0xCF, 0x9E, 0xBD, 0x5D, 0x2F, 0x2E, 0x86, 0x8E,\n0x9B, 0x2C, 0x26, 0x9A, 0x4D, 0x31, 0x79, 0xB8, 0x39, 0xC5, 0xD9, 0xE4, 0xF5, 0xDB, 0x60, 0x18,\n0x14, 0x69, 0x09, 0xCB, 0xFE, 0x40, 0x2E, 0xE4, 0x67, 0xF4, 0xB0, 0x43, 0xAF, 0xEC, 0x95, 0x20,\n0x8A, 0xE2, 0xDB, 0x77, 0x93, 0x99, 0x18, 0x5E, 0xBE, 0x7C, 0x79, 0x0F, 0x5D, 0x0E, 0x65, 0x38,\n0x95, 0x54, 0x8B, 0x6A, 0xC8, 0xF1, 0x8F, 0xE1, 0x32, 0xCD, 0xFF, 0x88, 0xD9, 0xEF, 0xD7, 0x6F,\n0xDF, 0x0A, 0xA2, 0x30, 0x92, 0xB1, 0x74, 0x9A, 0x0D, 0x94, 0x9B, 0x1F, 0xB2, 0x1B, 0x30, 0xEF,\n0x97, 0xEA, 0xC5, 0x9E, 0xA9, 0xE2, 0xEB, 0xD7, 0xEB, 0xC5, 0x1A, 0x84, 0x3E, 0x3C, 0xB3, 0xE1,\n0xB6, 0x27, 0x53, 0x78, 0xD3, 0xD9, 0xAF, 0x97, 0xEF, 0x5E, 0x0B, 0xA2, 0x32, 0xC6, 0x9A, 0x2C,\n0xBB, 0x25, 0x37, 0xAF, 0xE3, 0x22, 0x80, 0xDD, 0x7E, 0xE8, 0xC5, 0xC4, 0x30, 0x28, 0xBE, 0x7E,\n0xF7, 0xBB, 0x58, 0xDB, 0x23, 0x9D, 0x4B, 0xCB, 0xD2, 0xE4, 0xCD, 0x33, 0x6F, 0xB4, 0x56, 0xFC,\n0x7E, 0xF9, 0x4E, 0x0C, 0x4B, 0x45, 0x24, 0xBD, 0x65, 0xA3, 0x64, 0x5F, 0x20, 0x97, 0x16, 0xCC,\n0x03, 0xE2, 0x07, 0xA0, 0xA6, 0x8A, 0xEF, 0x5E, 0xFE, 0x2E, 0x66, 0x0A, 0xB0, 0x37, 0x13, 0x3C,\n0x44, 0xEE, 0x6D, 0x2A, 0xC8, 0x8B, 0x22, 0x28, 0x84, 0x62, 0x28, 0x01, 0xE9, 0x29, 0xBB, 0x20,\n0xBD, 0xE3, 0xF6, 0xCD, 0xE7, 0xD8, 0x42, 0x38, 0x67, 0x04, 0x30, 0xD6, 0x0C, 0x88, 0x1F, 0x82,\n0xDA, 0x3B, 0x61, 0x7C, 0xF9, 0xED, 0xD7, 0x6C, 0x8F, 0xF1, 0xB8, 0x7A, 0xF5, 0xEA, 0xDE, 0xA5,\n0x02, 0x52, 0x66, 0xF0, 0xDB, 0x4B, 0x35, 0x14, 0x45, 0x1C, 0x8D, 0x64, 0x27, 0x64, 0x3A, 0x90,\n0x71, 0x16, 0x37, 0x15, 0xE3, 0xE2, 0x43, 0xF8, 0xB7, 0x82, 0x4A, 0x28, 0x88, 0x81, 0x51, 0x1C,\n0xC3, 0x40, 0xAA, 0x9E, 0xB6, 0x7F, 0x91, 0xAE, 0x52, 0x89, 0xBE, 0x67, 0xF6, 0x2B, 0x08, 0x46,\n0x43, 0x20, 0xFF, 0xC1, 0x11, 0x46, 0xDA, 0x24, 0x8A, 0x4D, 0x86, 0xDB, 0x3D, 0x61, 0xFB, 0x2A,\n0x0A, 0xA0, 0x13, 0xC4, 0x30, 0x2A, 0x8A, 0xE3, 0xB7, 0xDF, 0xBF, 0x66, 0x6B, 0x95, 0xDF, 0x85,\n0xEE, 0xEA, 0x9C, 0xE7, 0x02, 0xA0, 0xF4, 0xB2, 0x44, 0x84, 0xB1, 0xD9, 0xB1, 0x92, 0x6C, 0x5F,\n0x57, 0x61, 0x8C, 0x86, 0x9B, 0x41, 0x71, 0xFB, 0xB2, 0x84, 0x18, 0xE6, 0xA7, 0x50, 0x1E, 0xAD,\n0x08, 0x98, 0x10, 0xA2, 0xA8, 0x8E, 0x2A, 0x39, 0xB3, 0x82, 0x37, 0x7D, 0x4E, 0xF2, 0xEA, 0xAC,\n0x98, 0x28, 0xA0, 0x0A, 0x2A, 0x21, 0x86, 0x19, 0xC7, 0xEE, 0x69, 0x1C, 0x75, 0x4E, 0xE3, 0x7F,\n0xBF, 0xA6, 0xFE, 0x61, 0xDF, 0x6E, 0x76, 0x1A, 0x04, 0xA2, 0x30, 0x0C, 0xB3, 0xEB, 0xD2, 0x18,\n0xAF, 0xC2, 0x7B, 0x22, 0x24, 0xDC, 0x83, 0x6E, 0x4C, 0x63, 0xC2, 0x9D, 0x3B, 0x1C, 0x62, 0x5F,\n0xA6, 0xF9, 0xF0, 0x4C, 0x27, 0x34, 0x71, 0xE0, 0xBC, 0xAD, 0xED, 0xC2, 0xB6, 0x2E, 0x1E, 0x0F,\n0x94, 0xBF, 0x8B, 0xCE, 0x0C, 0x25, 0x22, 0x84, 0xDA, 0x90, 0x10, 0x5C, 0x0C, 0x07, 0x14, 0x71,\n0x9C, 0x25, 0xD3, 0xD2, 0x75, 0x7A, 0x99, 0xF9, 0x5E, 0x75, 0x8B, 0xE5, 0xCB, 0x34, 0x7D, 0x19,\n0x1F, 0x82, 0x30, 0xF6, 0x37, 0x40, 0x13, 0xC4, 0x71, 0x1C, 0x18, 0x46, 0x6F, 0x99, 0xAA, 0xD7,\n0x8C, 0x0D, 0xAC, 0x18, 0x9D, 0x49, 0xC4, 0xB0, 0x68, 0x0E, 0xC7, 0xF9, 0x7E, 0x1B, 0xC3, 0x15,\n0xE3, 0xAA, 0xFE, 0xC6, 0x88, 0xE3, 0x62, 0xF9, 0x79, 0x4D, 0x9A, 0x69, 0x21, 0xFB, 0x8E, 0xDF,\n0xDB, 0xC7, 0x94, 0xEC, 0xAE, 0xD7, 0x6F, 0xE3, 0x5B, 0xEA, 0x13, 0xA1, 0x3D, 0xA0, 0xB8, 0x7C,\n0x2C, 0x41, 0x38, 0x40, 0x58, 0x36, 0x8B, 0x28, 0x1E, 0x67, 0x12, 0xCB, 0x11, 0x97, 0xE4, 0x17,\n0x1A, 0xBB, 0x41, 0x68, 0xC3, 0x43, 0xB3, 0x88, 0x1B, 0x80, 0x2A, 0x08, 0xED, 0x2F, 0xE5, 0xA3,\n0x08, 0xE3, 0xF8, 0x10, 0xE2, 0x71, 0x26, 0xD1, 0x5D, 0x9C, 0xEA, 0x49, 0xB4, 0x51, 0xC4, 0x31,\n0xDD, 0xA9, 0x67, 0x12, 0x8B, 0x29, 0xF1, 0x63, 0x0A, 0x01, 0xBC, 0x9B, 0x44, 0x08, 0xC5, 0xC2,\n0x74, 0xF3, 0xBB, 0xCD, 0x99, 0xD6, 0x89, 0x5A, 0x51, 0x6F, 0xE0, 0xD3, 0x3C, 0x21, 0xD4, 0xA7,\n0x5B, 0xEE, 0x97, 0x13, 0xE1, 0xC6, 0x6F, 0xD2, 0x13, 0xAF, 0xCB, 0xCA, 0x08, 0x07, 0x08, 0x33,\n0x45, 0xFB, 0x0F, 0xFB, 0xD3, 0xB0, 0xE1, 0x75, 0x62, 0xE1, 0x16, 0x46, 0xF9, 0x57, 0x9B, 0x31,\n0x67, 0x24, 0x63, 0x24, 0x18, 0x15, 0xE5, 0xCA, 0x4D, 0xDA, 0x01, 0x98, 0x13, 0x6E, 0x6D, 0x63,\n0x64, 0x84, 0xDE, 0x1C, 0x5A, 0xAD, 0x6D, 0x29, 0x6E, 0x31, 0x6E, 0x0F, 0xA3, 0xE3, 0xA8, 0x57,\n0x8D, 0xA9, 0x95, 0xA1, 0x84, 0x34, 0x31, 0x6E, 0x0B, 0x23, 0xA2, 0xF7, 0x94, 0x7C, 0x94, 0x05,\n0x5F, 0x2E, 0x58, 0xB1, 0xF7, 0x8D, 0xCD, 0xC4, 0xAE, 0x09, 0xC2, 0x4D, 0xC5, 0x8E, 0x65, 0xAA,\n0x70, 0xF4, 0xF7, 0x7B, 0x13, 0x8E, 0x40, 0x52, 0x5F, 0xD1, 0x22, 0x87, 0x1F, 0x5B, 0x16, 0xFE,\n0xEE, 0x9A, 0xF2, 0xFD, 0x35, 0x97, 0xFF, 0xBF, 0x3A, 0xAC, 0xDC, 0x01, 0x8E, 0xE3, 0x63, 0x90,\n0xA4, 0x24, 0x4D, 0xA4, 0x00, 0x4F, 0x35, 0xD0, 0x23, 0x80, 0x5A, 0xB0, 0xED, 0x23, 0x8B, 0xEE,\n0x38, 0xFA, 0x07, 0x32, 0xB4, 0xA4, 0xA6, 0x04, 0xB3, 0xBE, 0xC1, 0xE1, 0x13, 0x7E, 0xCE, 0x21,\n0x8C, 0x56, 0x87, 0x70, 0xDD, 0x53, 0x8E, 0x09, 0x63, 0xA9, 0x34, 0xA9, 0xC2, 0x0D, 0x3B, 0xF4,\n0xEA, 0x8F, 0x0A, 0x37, 0xB4, 0x51, 0xF1, 0xD4, 0xB3, 0x33, 0xA0, 0xD4, 0x63, 0x89, 0x26, 0x9C,\n0x80, 0x16, 0x87, 0x1C, 0x76, 0x7A, 0xF8, 0xE8, 0x3C, 0xE7, 0x67, 0x20, 0x59, 0x41, 0x89, 0xA5,\n0xC6, 0x84, 0x13, 0x4F, 0x13, 0xB5, 0xA7, 0xB2, 0x78, 0x79, 0x7A, 0x14, 0x74, 0x02, 0x0F, 0x3D,\n0xC1, 0x77, 0xCC, 0x13, 0xA5, 0x7E, 0xAB, 0x38, 0x63, 0x51, 0x69, 0xC2, 0x89, 0x27, 0xA2, 0x86,\n0x0A, 0x6C, 0xCE, 0x6B, 0x3F, 0x3A, 0x7B, 0x53, 0x7A, 0x3B, 0x21, 0x07, 0x9D, 0xB6, 0x43, 0x8F,\n0x8E, 0x78, 0xCA, 0x62, 0xDD, 0xB9, 0xC3, 0x5A, 0x13, 0x4F, 0x40, 0x25, 0x2B, 0x41, 0x8C, 0x13,\n0x09, 0x32, 0xE0, 0x90, 0xA3, 0x33, 0x9F, 0x3D, 0x5C, 0x46, 0x09, 0xA6, 0xEF, 0x89, 0x29, 0x21,\n0xEB, 0xA7, 0xC1, 0x50, 0x73, 0xE5, 0xE8, 0xB4, 0x17, 0x65, 0x5C, 0xC8, 0xE1, 0xD4, 0x9E, 0x5A,\n0xD5, 0x23, 0xD6, 0x4C, 0xDA, 0x4C, 0xCB, 0x51, 0x5C, 0x1E, 0xE5, 0x68, 0xBA, 0xA0, 0xC0, 0xEE,\n0x1A, 0x60, 0xBA, 0xB8, 0xB4, 0x6D, 0x0F, 0x4D, 0x54, 0x9F, 0x1F, 0x66, 0x61, 0x57, 0xE3, 0xD9,\n0x4E, 0x5D, 0xD4, 0x22, 0x69, 0x17, 0xED, 0x2A, 0x0B, 0xF1, 0xEE, 0x4C, 0xE1, 0x15, 0x45, 0x51,\n0x14, 0x45, 0x51, 0x14, 0x45, 0x51, 0x14, 0x45, 0x51, 0x14, 0x45, 0x51, 0x14, 0xFD, 0xB0, 0x07,\n0x07, 0x02, 0x00, 0x00, 0x00, 0x00, 0x40, 0xFE, 0xAF, 0x8D, 0xA0, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA,\n0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0x6C, 0x14, 0x8C, 0x82, 0x51, 0x30, 0x0A,\n0x46, 0xC1, 0x28, 0x18, 0x05, 0xA3, 0x60, 0xC0, 0x00, 0x00, 0xAE, 0x35, 0x8B, 0xDF, 0x5E, 0xD0,\n0xA6, 0x12, 0x00, 0x00, 0x00, 0x00, 0x49, 0x45, 0x4E, 0x44, 0xAE, 0x42, 0x60, 0x82\n};"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/Classes/runtime/Portrait_png.cpp",
    "content": "#include \"ResData.h\"\nconst unsigned char __portraitPngData[122214] = {\n0x89, 0x50, 0x4E, 0x47, 0x0D, 0x0A, 0x1A, 0x0A, 0x00, 0x00, 0x00, 0x0D, 0x49, 0x48, 0x44, 0x52,\n0x00, 0x00, 0x03, 0x20, 0x00, 0x00, 0x05, 0x00, 0x08, 0x03, 0x00, 0x00, 0x00, 0x88, 0xD2, 0xC6,\n0x56, 0x00, 0x00, 0x01, 0xE9, 0x50, 0x4C, 0x54, 0x45, 0x1E, 0xA2, 0xF1, 0x1A, 0x8A, 0xE8, 0x26,\n0x77, 0xE2, 0x25, 0xA9, 0xF5, 0x23, 0xAF, 0xF6, 0x1E, 0x9B, 0xF1, 0x18, 0x92, 0xEB, 0x19, 0x8D,\n0xE9, 0x15, 0x87, 0xE5, 0x12, 0x78, 0xDB, 0x48, 0x90, 0xE8, 0x1B, 0x8E, 0xEC, 0x47, 0x99, 0xED,\n0x17, 0x84, 0xE3, 0x12, 0x7E, 0xDE, 0x12, 0x82, 0xE1, 0x1D, 0x81, 0xE4, 0x16, 0x8E, 0xE8, 0x33,\n0xA3, 0xF3, 0x29, 0xAD, 0xF3, 0x32, 0x98, 0xF2, 0x18, 0x96, 0xEC, 0x21, 0xA5, 0xF3, 0x22, 0x7C,\n0xE2, 0x40, 0x9B, 0xF0, 0x28, 0x7C, 0xE6, 0x2D, 0xC0, 0xF6, 0x15, 0x7D, 0xE0, 0x29, 0xB3, 0xF3,\n0x22, 0xAA, 0xF5, 0x1B, 0x97, 0xEE, 0x1B, 0x9B, 0xEE, 0x20, 0xA2, 0xF3, 0x29, 0xBA, 0xF7, 0x20,\n0x93, 0xF1, 0x20, 0x99, 0xF0, 0x48, 0x95, 0xEB, 0x24, 0x83, 0xE9, 0x4E, 0x9E, 0xEB, 0x25, 0xB3,\n0xF6, 0x32, 0x8D, 0xED, 0x24, 0xA0, 0xF2, 0x41, 0xA2, 0xF0, 0x15, 0x86, 0xE3, 0x47, 0x89, 0xE5,\n0x1A, 0x90, 0xE8, 0x2B, 0xA4, 0xF4, 0x46, 0x9E, 0xEF, 0x2B, 0x89, 0xEC, 0x3A, 0x9F, 0xF3, 0x3B,\n0xAB, 0xF3, 0x5D, 0xB2, 0xE8, 0x2A, 0x82, 0xE9, 0x4D, 0x98, 0xE8, 0x2D, 0x7D, 0xE8, 0x5F, 0xB8,\n0xE9, 0x22, 0x9C, 0xF3, 0x43, 0x94, 0xEB, 0x1C, 0x77, 0xDA, 0x2B, 0x91, 0xF1, 0x54, 0xB4, 0xED,\n0x57, 0xA2, 0xDD, 0x46, 0xBF, 0xEE, 0x21, 0x8A, 0xED, 0x5E, 0xBD, 0xED, 0x5B, 0xAC, 0xE3, 0x4B,\n0xA5, 0xEE, 0x4A, 0x8D, 0xE1, 0x1F, 0x77, 0xDD, 0x4C, 0xAB, 0xED, 0x40, 0xAD, 0xF0, 0x1A, 0x84,\n0xE4, 0x3B, 0xA5, 0xF2, 0x19, 0x80, 0xE0, 0x33, 0x86, 0xE8, 0x1F, 0x85, 0xEB, 0x56, 0x9D, 0xDC,\n0x36, 0xBD, 0xED, 0x55, 0xA2, 0xE6, 0x3A, 0xB2, 0xEF, 0x4D, 0xD2, 0xE8, 0x2B, 0xB9, 0xF4, 0x32,\n0xAB, 0xF1, 0x54, 0xAD, 0xEC, 0x22, 0x8D, 0xEF, 0x35, 0xC4, 0xF2, 0x50, 0xBB, 0xED, 0x2A, 0x9A,\n0xF3, 0x58, 0xA7, 0xE2, 0x4F, 0x95, 0xDF, 0x3C, 0xB9, 0xEF, 0x32, 0xBD, 0xF1, 0x2A, 0x9C, 0xEF,\n0x4C, 0xCD, 0xE8, 0x21, 0xA8, 0xF3, 0x33, 0xB4, 0xF0, 0x43, 0xC4, 0xEB, 0x56, 0xC8, 0xEB, 0x42,\n0xB5, 0xEF, 0x1B, 0x7A, 0xDC, 0x3A, 0x87, 0xE9, 0x4C, 0x91, 0xE3, 0x56, 0xA8, 0xE9, 0x51, 0x9A,\n0xE2, 0x44, 0xA6, 0xEF, 0x23, 0x96, 0xEF, 0x39, 0x8A, 0xEB, 0x39, 0x93, 0xEE, 0x3C, 0xCC, 0xF4,\n0x67, 0xCD, 0xEA, 0x50, 0xA1, 0xEB, 0x36, 0xC8, 0xF6, 0x45, 0xAC, 0xF0, 0x5C, 0xC3, 0xED, 0x1B,\n0x92, 0xEF, 0x45, 0xCD, 0xEB, 0x48, 0xB1, 0xEF, 0x5B, 0xAB, 0xEF, 0x31, 0xC6, 0xF9, 0x50, 0xC9,\n0xE9, 0x40, 0xC7, 0xE9, 0x47, 0xD6, 0xF6, 0x3E, 0x9D, 0xF1, 0x31, 0x82, 0xE9, 0x3E, 0x8B, 0xE9,\n0x3A, 0x97, 0xF0, 0x78, 0xE6, 0xF2, 0x64, 0xC1, 0xEA, 0x6D, 0xE2, 0xF3, 0x51, 0xA7, 0xEE, 0x85,\n0xE9, 0xF0, 0x3A, 0xC6, 0xEE, 0x1D, 0x86, 0xE5, 0x15, 0x8A, 0xE5, 0x25, 0xB7, 0xF7, 0x21, 0x79,\n0xE0, 0x2F, 0xB7, 0xEF, 0x5A, 0xD6, 0xE3, 0x0E, 0x71, 0xD6, 0x3E, 0xD2, 0xF7, 0x4E, 0xD9, 0xF3,\n0x44, 0xD1, 0xF2, 0x18, 0x87, 0xE5, 0x53, 0xD7, 0xE8, 0x67, 0xC6, 0xEB, 0x20, 0x7E, 0xE3, 0x4A,\n0xC9, 0xF1, 0x95, 0xEB, 0xF0, 0x4C, 0x93, 0xE7, 0x62, 0xDB, 0xF3, 0x62, 0xDE, 0xEB, 0x57, 0xDC,\n0xEF, 0x60, 0xE1, 0xF5, 0x56, 0xDB, 0xF7, 0x62, 0xD1, 0xE8, 0x56, 0xD1, 0xF3, 0x25, 0x83, 0xDE,\n0x5A, 0xD1, 0xE5, 0x5E, 0xDB, 0xE1, 0x38, 0xCF, 0xF9, 0x6C, 0xE2, 0xE5, 0xA1, 0xEF, 0xED, 0x11,\n0x7C, 0xDB, 0x2A, 0xF1, 0xB6, 0xF5, 0x00, 0x01, 0xDB, 0x38, 0x49, 0x44, 0x41, 0x54, 0x78, 0xDA,\n0xCC, 0x99, 0xB1, 0x6A, 0xE3, 0x40, 0x10, 0x86, 0xF7, 0x60, 0x2D, 0x17, 0xAE, 0x12, 0x72, 0x2E,\n0x04, 0x96, 0x4E, 0xB8, 0x50, 0xA5, 0xFE, 0xE0, 0x5E, 0x42, 0x29, 0x5C, 0xC9, 0xDE, 0xDE, 0x20,\n0x08, 0xD8, 0x10, 0x9C, 0x5A, 0x20, 0x10, 0xC1, 0xA8, 0x3F, 0x70, 0x9E, 0xF5, 0x7E, 0xED, 0xAE,\n0xBD, 0x77, 0xC9, 0x61, 0xFD, 0x03, 0x31, 0xE4, 0x9B, 0x59, 0x29, 0x04, 0xA1, 0x58, 0xBB, 0xF3,\n0x79, 0xB4, 0x44, 0xAD, 0x97, 0x5B, 0x8A, 0xA5, 0x90, 0x89, 0x0C, 0xE5, 0x30, 0x0B, 0x06, 0x63,\n0x74, 0x0E, 0xB4, 0xCE, 0x33, 0x92, 0xD8, 0xF1, 0x4C, 0xF2, 0xE4, 0xA8, 0x49, 0x8E, 0x9E, 0xB2,\n0xEF, 0xCB, 0x51, 0xFA, 0xB2, 0xF7, 0x74, 0x6F, 0x24, 0xFD, 0x99, 0x72, 0x9C, 0x1E, 0x71, 0xF4,\n0xD4, 0x1C, 0x4F, 0x1E, 0x76, 0x7A, 0x62, 0x07, 0x39, 0xF3, 0x59, 0xAE, 0xDD, 0x6A, 0x19, 0x72,\n0x71, 0x95, 0x63, 0x22, 0x63, 0x29, 0x84, 0x2B, 0xFA, 0xED, 0x5A, 0xAD, 0xB7, 0x5F, 0xC8, 0x10,\n0x4C, 0x21, 0x6F, 0x88, 0xD6, 0x6D, 0x06, 0xE2, 0xEB, 0x19, 0x0C, 0xC9, 0x68, 0x3F, 0x62, 0xA7,\n0x48, 0xCD, 0xE3, 0xFD, 0x28, 0xCB, 0x17, 0x1C, 0x46, 0xC6, 0xB1, 0x94, 0xF9, 0x01, 0xBA, 0xDE,\n0x72, 0x64, 0x6E, 0x5F, 0x22, 0x83, 0x1E, 0x02, 0x45, 0xF0, 0xD8, 0x24, 0x17, 0x3F, 0xE2, 0xF1,\n0x6C, 0xAD, 0x21, 0x2D, 0xEB, 0x07, 0x30, 0x5F, 0xC6, 0x0F, 0xB0, 0x56, 0xF7, 0xCB, 0x2D, 0x19,\n0xE0, 0xA7, 0x24, 0x6C, 0xD9, 0xD3, 0x31, 0x51, 0x3F, 0xE6, 0x0B, 0xAD, 0x17, 0x2C, 0x30, 0x04,\n0x7E, 0xC4, 0xC4, 0x2A, 0xC5, 0x67, 0x43, 0x9E, 0x05, 0x58, 0x3F, 0x8E, 0x22, 0x41, 0x7A, 0xE0,\n0xFA, 0xC3, 0x0B, 0xC6, 0xD8, 0xB9, 0x7F, 0x13, 0x71, 0xBE, 0x39, 0xA1, 0x08, 0x8E, 0xBD, 0xC8,\n0x0F, 0x00, 0x3D, 0x24, 0x58, 0x3F, 0x68, 0xE2, 0x56, 0xC3, 0x0F, 0x7E, 0x65, 0xCD, 0xD7, 0xF1,\n0x63, 0xF9, 0xA0, 0x1E, 0x48, 0x3D, 0x10, 0x10, 0x44, 0x62, 0xC8, 0x12, 0x65, 0x2F, 0x41, 0x2D,\n0xF4, 0x82, 0x67, 0x6E, 0xF0, 0xDD, 0xC4, 0x75, 0x10, 0xEF, 0x91, 0xAC, 0x04, 0x9E, 0x06, 0x3D,\n0x5E, 0xA9, 0x40, 0x42, 0x91, 0xDE, 0x16, 0xA7, 0xAB, 0xD2, 0x1E, 0x87, 0x6B, 0x67, 0x5C, 0xF7,\n0x26, 0xC4, 0xDF, 0x1D, 0x61, 0x4F, 0x57, 0x03, 0x02, 0x8A, 0xFC, 0x78, 0x85, 0x21, 0xC2, 0xE9,\n0xE1, 0xED, 0xC8, 0x40, 0x8B, 0xE5, 0x5A, 0xD0, 0xE8, 0x85, 0xB0, 0x70, 0x26, 0x28, 0x37, 0x51,\n0xF0, 0x35, 0x7F, 0xAF, 0xD6, 0xB3, 0x1D, 0x1D, 0xB3, 0x48, 0xC0, 0x2E, 0x8A, 0x92, 0x74, 0x99,\n0x26, 0x74, 0xA4, 0x4A, 0xCD, 0xE9, 0x50, 0xCA, 0xE4, 0x59, 0x3B, 0x90, 0x8F, 0xA4, 0x65, 0x68,\n0x37, 0xB1, 0x8C, 0x95, 0x8C, 0x7A, 0x6F, 0x39, 0x8E, 0x0E, 0x24, 0x28, 0xFB, 0x4E, 0x44, 0x5F,\n0x9E, 0x6F, 0x0F, 0xAE, 0xFE, 0x29, 0xCF, 0x4A, 0x46, 0x2C, 0x23, 0xC3, 0xC4, 0x72, 0xE4, 0xF6,\n0x60, 0xB0, 0xB6, 0x24, 0x0A, 0x99, 0xA2, 0x70, 0x68, 0x26, 0x49, 0x12, 0x89, 0xD8, 0xCD, 0x8A,\n0x1D, 0x1B, 0x5B, 0xB5, 0xFD, 0x26, 0x61, 0x5A, 0xDC, 0x4D, 0x39, 0xEE, 0x8A, 0xA2, 0x80, 0x21,\n0x29, 0xE7, 0x06, 0x06, 0x50, 0x2C, 0x10, 0x44, 0xE7, 0x39, 0x92, 0xC5, 0x6F, 0x57, 0x10, 0x64,\n0xC6, 0xC8, 0xD5, 0xAA, 0xE2, 0xA2, 0xAA, 0x1A, 0xB0, 0x67, 0x39, 0xEC, 0xF7, 0x9B, 0x72, 0x53,\n0x76, 0xA7, 0xEE, 0xF4, 0xBF, 0xFC, 0x78, 0xE8, 0x3A, 0x5C, 0xBF, 0xD9, 0xB3, 0xE0, 0xCA, 0x06,\n0x54, 0x2B, 0x9A, 0xCA, 0xEE, 0xD1, 0xC8, 0x88, 0x5D, 0x53, 0xC8, 0x79, 0x74, 0xDE, 0x6A, 0xFA,\n0xDB, 0x6F, 0xAE, 0xE0, 0x07, 0x32, 0x49, 0x49, 0x92, 0xA8, 0x88, 0x8A, 0xBB, 0xBB, 0x82, 0x8C,\n0xE9, 0x37, 0x09, 0x10, 0x64, 0x2A, 0xA2, 0x60, 0x89, 0x40, 0x51, 0x70, 0x4F, 0x69, 0xDB, 0x07,\n0x22, 0x55, 0x73, 0xC3, 0x4C, 0xA2, 0x81, 0x1F, 0x6D, 0x2B, 0x11, 0xA4, 0xF5, 0xFD, 0x5E, 0x44,\n0xB5, 0x6A, 0x56, 0x1C, 0xCD, 0xA1, 0x3E, 0xC0, 0x10, 0xAE, 0x86, 0xAD, 0x1E, 0x88, 0x53, 0x47,\n0x73, 0x2A, 0x07, 0x78, 0x3F, 0xEA, 0xA6, 0x3E, 0xD4, 0xCD, 0xCD, 0xDA, 0x07, 0x90, 0x18, 0x02,\n0xAC, 0x21, 0xAC, 0x20, 0xAE, 0x18, 0x58, 0x12, 0x5B, 0x6B, 0x05, 0xCD, 0x54, 0x84, 0x50, 0x10,\n0xC0, 0x0B, 0xC2, 0x1B, 0x92, 0x24, 0xA9, 0xF2, 0x93, 0x62, 0x7B, 0xEC, 0x58, 0x38, 0x3F, 0x80,\n0xC8, 0x0F, 0xF0, 0x68, 0xEB, 0x9E, 0x1C, 0x40, 0xE0, 0x47, 0xDD, 0x34, 0x35, 0xED, 0x87, 0x63,\n0x33, 0xF4, 0x86, 0x8F, 0x03, 0xF1, 0xEE, 0x57, 0x1B, 0x7F, 0xFD, 0x86, 0x14, 0xA4, 0xC1, 0x07,\n0x42, 0xB0, 0x86, 0xE0, 0x61, 0x91, 0xF4, 0xC8, 0x2C, 0x72, 0x43, 0xE6, 0x84, 0x21, 0xB6, 0x7F,\n0xD8, 0x10, 0xF9, 0x01, 0x6E, 0xE3, 0x47, 0xF1, 0x0B, 0x82, 0x08, 0x61, 0xFD, 0xF0, 0x1F, 0xFB,\n0x7B, 0x4A, 0xA1, 0xCE, 0xA1, 0x8C, 0x19, 0xDF, 0x7E, 0x68, 0xE1, 0xE2, 0x64, 0x1E, 0xBB, 0x11,\n0x21, 0xD4, 0xA8, 0x6C, 0x02, 0xAA, 0x87, 0x34, 0x75, 0x7D, 0x08, 0x3D, 0x84, 0xEA, 0x1F, 0x9E,\n0xAE, 0xFB, 0xED, 0xD2, 0x9F, 0x31, 0x80, 0x3B, 0x87, 0xC4, 0xE5, 0x1E, 0xCE, 0x90, 0x1A, 0x1F,\n0xC6, 0x39, 0xCB, 0xF7, 0x0F, 0xFE, 0x6B, 0xE3, 0x31, 0xBB, 0x70, 0x03, 0x43, 0x14, 0xCC, 0x90,\n0x28, 0x12, 0x85, 0x52, 0x23, 0xFD, 0x90, 0x77, 0x90, 0xD9, 0xE7, 0x1B, 0x12, 0x5D, 0xC0, 0xCF,\n0x02, 0x3D, 0x00, 0x26, 0x71, 0x7C, 0x7B, 0x1E, 0xD0, 0xF9, 0x38, 0x19, 0x08, 0x86, 0x54, 0x31,\n0x49, 0x85, 0x60, 0x7A, 0xC8, 0xA0, 0x86, 0x35, 0x84, 0xDB, 0x87, 0x84, 0x72, 0x87, 0x28, 0x5D,\n0xE0, 0xAC, 0xC7, 0x09, 0xF9, 0xEE, 0xF5, 0x4A, 0x66, 0x48, 0xE3, 0xFD, 0x18, 0x06, 0xE7, 0x47,\n0x15, 0xF3, 0x64, 0x01, 0xA9, 0x21, 0xB9, 0x19, 0x33, 0xC4, 0x38, 0x3F, 0x90, 0x08, 0x99, 0x1F,\n0xE0, 0x06, 0x7E, 0xCC, 0x86, 0x4D, 0x3A, 0x04, 0x11, 0x42, 0xE8, 0x11, 0x28, 0x22, 0x52, 0x10,\n0x7B, 0x1A, 0x57, 0x04, 0x7E, 0xB4, 0x22, 0x43, 0x3E, 0xFE, 0x53, 0xBD, 0x1A, 0x4B, 0x8C, 0x33,\n0xD4, 0xFB, 0x15, 0xC2, 0x3B, 0x72, 0xA0, 0xFA, 0x47, 0x30, 0xE4, 0x14, 0x5A, 0x45, 0xE8, 0x1C,\n0x21, 0xC3, 0xFB, 0x15, 0x6D, 0x48, 0xD3, 0xB8, 0x0E, 0x42, 0xEE, 0x43, 0xFC, 0xF3, 0xB2, 0x99,\n0xFD, 0x4B, 0x2E, 0x03, 0x02, 0x5C, 0xD3, 0xC3, 0x38, 0x29, 0xD4, 0x25, 0x92, 0x51, 0x3F, 0xA2,\n0xBF, 0xF9, 0x6C, 0x3D, 0xFE, 0xB0, 0x6A, 0xC6, 0xA8, 0xD1, 0xC3, 0x40, 0x18, 0xF5, 0x42, 0x20,\n0xC5, 0x5F, 0xC7, 0xC5, 0x5F, 0x18, 0x5C, 0xA5, 0xCA, 0x61, 0x52, 0xA4, 0x0A, 0xCE, 0x09, 0xB6,\n0x4B, 0xB3, 0xBD, 0x21, 0x87, 0x08, 0xEC, 0x5D, 0x33, 0x96, 0x84, 0xDF, 0x0A, 0xD9, 0xA3, 0x19,\n0x98, 0xCF, 0xB3, 0x6B, 0x3B, 0x60, 0x30, 0x89, 0x9F, 0x9F, 0xA4, 0x89, 0xA0, 0x91, 0x0C, 0x72,\n0x89, 0x94, 0x08, 0x7C, 0x10, 0x13, 0x1E, 0x58, 0x64, 0x50, 0x66, 0xEA, 0xF0, 0x41, 0x4C, 0x7C,\n0x10, 0x8B, 0x3B, 0x4A, 0x19, 0x1C, 0x72, 0xCD, 0xC3, 0xFD, 0xA2, 0x91, 0x75, 0xB5, 0xF9, 0x83,\n0xDC, 0x51, 0x85, 0xF0, 0x40, 0xF0, 0x87, 0x8B, 0x90, 0x9B, 0xF0, 0x71, 0xCB, 0x95, 0xC9, 0xD5,\n0xE1, 0x56, 0xDC, 0xA1, 0xFB, 0xC3, 0x3B, 0x11, 0xC1, 0x21, 0x1D, 0x7D, 0xA4, 0x8D, 0xBD, 0x89,\n0x0F, 0x12, 0xAB, 0x8F, 0x4B, 0x32, 0xC8, 0xBF, 0xE7, 0x28, 0x87, 0x00, 0x88, 0xD9, 0x21, 0x00,\n0xC2, 0x99, 0xD4, 0x38, 0x76, 0xFD, 0xE1, 0x9C, 0x7E, 0x10, 0xF9, 0x49, 0x57, 0x20, 0x29, 0x05,\n0x11, 0x9D, 0x90, 0x32, 0x9A, 0x61, 0xB7, 0xDE, 0x1C, 0x7C, 0xC8, 0x29, 0x0E, 0xD9, 0xC2, 0x7C,\n0xE4, 0x9E, 0x3E, 0xF7, 0xFD, 0x02, 0xAE, 0xD0, 0xA6, 0xE7, 0xD7, 0x35, 0xB3, 0xCA, 0x3D, 0x5D,\n0x3F, 0x94, 0x20, 0x0F, 0x53, 0xCD, 0xC4, 0x47, 0x08, 0x51, 0x16, 0xB3, 0xBE, 0x18, 0x5E, 0xB1,\n0xD9, 0xF8, 0x20, 0x01, 0x7C, 0xA0, 0x0F, 0x0C, 0x22, 0xE5, 0x8C, 0x83, 0x0F, 0x16, 0xB3, 0x74,\n0x7F, 0xEC, 0xB5, 0x39, 0xE4, 0x74, 0xF9, 0xEA, 0x95, 0xB8, 0xF9, 0x80, 0x90, 0xF3, 0x40, 0x06,\n0x67, 0xCA, 0xF4, 0xBC, 0x3C, 0x89, 0xF2, 0xCD, 0x4C, 0x44, 0xE5, 0xE3, 0xE0, 0x89, 0xDF, 0x67,\n0x20, 0x8D, 0x41, 0xE0, 0xC3, 0xE6, 0x90, 0x72, 0x2F, 0x94, 0x3E, 0x55, 0x77, 0xFA, 0x63, 0x6E,\n0xE3, 0x77, 0x88, 0x10, 0xA2, 0xFB, 0x43, 0x32, 0xF0, 0x5C, 0xE8, 0xED, 0x8F, 0x83, 0x44, 0xFA,\n0x43, 0x2A, 0x1B, 0x24, 0x95, 0x33, 0x26, 0x3E, 0x70, 0xC8, 0x31, 0x21, 0x53, 0xF5, 0xA6, 0x18,\n0x52, 0xA5, 0xC8, 0x78, 0xD4, 0xC1, 0xC7, 0x93, 0x91, 0x0F, 0x62, 0x9B, 0x84, 0x7C, 0xCA, 0xA6,\n0x11, 0xB2, 0x8F, 0xF5, 0x31, 0x48, 0x26, 0x64, 0xE9, 0xFB, 0x83, 0x2C, 0xF7, 0x7A, 0xF5, 0x0A,\n0x8F, 0x40, 0x93, 0x4E, 0x08, 0xED, 0x0F, 0xEE, 0x85, 0x23, 0x08, 0x89, 0xF6, 0x47, 0x64, 0x43,\n0x64, 0xDC, 0xFD, 0x31, 0xA4, 0x2F, 0x9E, 0x8C, 0x49, 0x59, 0xDE, 0xB5, 0x13, 0xE2, 0xC5, 0xA3,\n0x31, 0x88, 0x5B, 0x22, 0x0A, 0x1E, 0x56, 0x87, 0x4C, 0xB5, 0x3F, 0xF8, 0x05, 0xC9, 0xFE, 0x40,\n0x22, 0xE7, 0xFE, 0x78, 0x32, 0xF3, 0x41, 0x43, 0xC4, 0x96, 0xC2, 0x8B, 0xE6, 0x0F, 0xF9, 0xD4,\n0x3B, 0x08, 0xD1, 0xF1, 0x40, 0x22, 0x08, 0x84, 0xC0, 0x47, 0x07, 0x11, 0xDA, 0x1F, 0x68, 0x83,\n0xA3, 0xF4, 0x09, 0x6B, 0x0F, 0xC6, 0x13, 0x82, 0x3F, 0x8A, 0x3A, 0x08, 0x88, 0x18, 0xF8, 0x20,\n0x71, 0xFE, 0x90, 0xDA, 0x00, 0xB9, 0xE0, 0x10, 0x47, 0x2E, 0xCF, 0x16, 0x3E, 0xC8, 0xDB, 0xA4,\n0xFB, 0x83, 0xB9, 0x59, 0x3A, 0x78, 0x69, 0x09, 0x19, 0x46, 0x77, 0xFB, 0x43, 0x89, 0xFA, 0xB2,\n0x44, 0x1E, 0xCA, 0x28, 0xAB, 0x9E, 0x7C, 0x60, 0x13, 0x1C, 0xD2, 0xE1, 0x83, 0x2C, 0x0F, 0xF3,\n0xF4, 0x5C, 0x72, 0xA8, 0x5D, 0x70, 0xDC, 0xFE, 0xE0, 0x56, 0x10, 0xC8, 0x89, 0x43, 0xD6, 0x0F,\n0x9F, 0x3E, 0x68, 0x7F, 0x04, 0x10, 0xD2, 0x00, 0x92, 0xF8, 0x28, 0xEA, 0xA0, 0x00, 0xC4, 0xC2,\n0x07, 0x89, 0x58, 0xBF, 0x52, 0x0C, 0x62, 0x8F, 0x0F, 0x90, 0xB7, 0x17, 0xDD, 0x1F, 0x85, 0x0E,\n0x0E, 0xEA, 0x7F, 0x3B, 0x89, 0xE5, 0xE3, 0xE7, 0x67, 0xB6, 0x75, 0x42, 0x18, 0x73, 0x1D, 0xFB,\n0x63, 0x2F, 0x1E, 0xCA, 0xCD, 0x21, 0x57, 0x1B, 0x1F, 0x38, 0xA4, 0x60, 0xA1, 0xFB, 0x83, 0x2C,\n0x4B, 0xEB, 0x0F, 0xCC, 0xB1, 0xC3, 0x4A, 0x05, 0xF8, 0x23, 0x90, 0x90, 0xBA, 0x21, 0xB2, 0xFD,\n0x71, 0x1F, 0xBC, 0x91, 0x4B, 0x75, 0xC8, 0x36, 0x68, 0x57, 0x12, 0xE5, 0x0F, 0x56, 0xB1, 0x4A,\n0x79, 0x63, 0xC7, 0x83, 0x96, 0x61, 0x8B, 0x47, 0x63, 0xD4, 0x87, 0xE5, 0x5E, 0xF7, 0xF2, 0x15,\n0x99, 0xF5, 0x08, 0x21, 0xFD, 0x59, 0x08, 0x79, 0xFF, 0xDF, 0xF2, 0xC1, 0x2B, 0x3A, 0xEF, 0x38,\n0x11, 0x44, 0x1C, 0x7C, 0xE0, 0x90, 0x5F, 0xAA, 0x7B, 0xC1, 0x59, 0xFB, 0x03, 0x34, 0x30, 0x48,\n0xE3, 0x10, 0xAF, 0x3F, 0x66, 0x12, 0x40, 0x08, 0xCB, 0xBD, 0xF8, 0x03, 0x6D, 0xF0, 0xD2, 0x64,\n0x9B, 0x9A, 0xF6, 0xA0, 0x9A, 0x80, 0xF5, 0xAB, 0xCA, 0x20, 0x94, 0x37, 0x56, 0x3C, 0x20, 0x84,\n0x0C, 0x6C, 0xB9, 0x18, 0x69, 0x95, 0x3D, 0x0D, 0x91, 0x8A, 0x0F, 0xD3, 0x3C, 0xE4, 0x7D, 0xEE,\n0x12, 0xA2, 0xCB, 0xA3, 0x7C, 0xB3, 0xF2, 0x5B, 0xF3, 0xF1, 0xCD, 0x18, 0x1F, 0x83, 0x50, 0x10,\n0x02, 0x1F, 0xBA, 0x43, 0x9A, 0xF6, 0xB9, 0x8B, 0x10, 0xDA, 0x1F, 0xA0, 0x51, 0xAF, 0x65, 0xAD,\n0xE1, 0xFE, 0x88, 0x69, 0xAA, 0x8F, 0x03, 0x63, 0xEB, 0xB2, 0x2F, 0x81, 0x95, 0x66, 0x79, 0xB7,\n0x1B, 0x37, 0x1E, 0xA4, 0x02, 0x22, 0x77, 0xD2, 0x1F, 0xCB, 0x19, 0x8D, 0x0F, 0xAD, 0x21, 0x32,\n0xFD, 0xB1, 0x72, 0xEE, 0xB8, 0x6D, 0x03, 0x41, 0x00, 0x6D, 0x08, 0x35, 0xA9, 0x99, 0x42, 0x80,\n0x21, 0xE8, 0x00, 0x3A, 0x0C, 0x8B, 0x54, 0x06, 0x75, 0x82, 0x00, 0x29, 0xDC, 0xA8, 0x27, 0xA0,\n0x36, 0x27, 0x70, 0xCE, 0x9A, 0xF5, 0xEE, 0x88, 0x4F, 0x9A, 0x5D, 0x72, 0x66, 0xB0, 0x1E, 0x52,\n0xFF, 0x04, 0xB0, 0x69, 0x3E, 0x3E, 0xCE, 0x87, 0x02, 0x0F, 0x59, 0x79, 0x95, 0x61, 0x21, 0x55,\n0x57, 0x7C, 0xF8, 0x10, 0x39, 0x7B, 0x62, 0xC7, 0x1F, 0x14, 0xB2, 0x20, 0x46, 0xB7, 0x3F, 0x6A,\n0x83, 0xD0, 0x81, 0xC8, 0x0D, 0x91, 0x19, 0x3E, 0x6C, 0x40, 0x32, 0x21, 0x9F, 0x65, 0xA5, 0xBC,\n0xEB, 0x22, 0x64, 0xFE, 0x9A, 0x72, 0xB9, 0x29, 0x83, 0xEC, 0x34, 0x44, 0x7C, 0xD6, 0x60, 0x3D,\n0xDF, 0x83, 0x84, 0xD8, 0x01, 0x21, 0xE2, 0x0F, 0xAA, 0x98, 0x3A, 0x05, 0xC1, 0x21, 0xF0, 0x61,\n0x47, 0xAF, 0x3E, 0xB4, 0x41, 0x58, 0x83, 0x01, 0x20, 0x11, 0x42, 0x74, 0x3F, 0x88, 0xA7, 0xF2,\n0x21, 0x67, 0x59, 0x85, 0x8F, 0x7B, 0xF0, 0xFC, 0xCA, 0x19, 0x7B, 0xA5, 0x2B, 0x48, 0x59, 0x85,\n0x82, 0x3F, 0x2A, 0x63, 0xF0, 0x9A, 0xDD, 0xF2, 0x41, 0x48, 0x06, 0xC0, 0x8E, 0xCF, 0x75, 0x1C,\n0x8B, 0x7F, 0xEE, 0x42, 0xE4, 0xB6, 0x54, 0x3A, 0xDB, 0x6D, 0x88, 0xF4, 0xEA, 0xA3, 0xFF, 0x34,\n0x0B, 0x87, 0xB4, 0xDA, 0x83, 0x64, 0x21, 0x7C, 0xE0, 0xE4, 0x83, 0xE8, 0x4E, 0x3F, 0xE8, 0x83,\n0x7C, 0x87, 0x43, 0x0E, 0xBE, 0x90, 0x6B, 0xA8, 0x74, 0xAB, 0x94, 0x67, 0x9C, 0x87, 0xCA, 0xED,\n0x9A, 0x36, 0x64, 0x7C, 0xBA, 0xDD, 0x17, 0xF7, 0xE6, 0x64, 0x56, 0xCD, 0x0A, 0x4F, 0x1F, 0xFE,\n0x68, 0x1A, 0xE4, 0xA6, 0x0A, 0x5A, 0xE2, 0x10, 0xC6, 0xAF, 0x3C, 0x84, 0x24, 0x46, 0x1C, 0x7C,\n0x08, 0x72, 0xA5, 0xFD, 0xC1, 0x8F, 0x80, 0x41, 0x76, 0x1A, 0x22, 0xC2, 0xBE, 0x77, 0x35, 0xCE,\n0x55, 0xBB, 0x9A, 0xEA, 0x6A, 0xFC, 0x0A, 0x1E, 0x54, 0x1E, 0x42, 0xA6, 0x4E, 0x7B, 0xD0, 0x47,\n0x48, 0x14, 0x0F, 0xDB, 0x20, 0x71, 0x89, 0xC0, 0x87, 0x9B, 0x90, 0x3A, 0xFF, 0x00, 0x8D, 0x93,\n0xCA, 0xD4, 0x7F, 0xF6, 0x94, 0xAF, 0xEC, 0x78, 0x6F, 0x0A, 0x84, 0x4A, 0xAF, 0x76, 0x08, 0xED,\n0x0F, 0x6D, 0x10, 0x9E, 0xC9, 0x6B, 0x29, 0x66, 0x39, 0xF1, 0x90, 0xA6, 0xFA, 0x27, 0xFE, 0xF0,\n0x29, 0x84, 0xF2, 0xD5, 0x66, 0x15, 0x8B, 0xCF, 0x68, 0x0F, 0xC6, 0xFD, 0x61, 0x03, 0x12, 0x2F,\n0xF7, 0x5E, 0xD7, 0xFC, 0xA3, 0xEE, 0x9D, 0xF3, 0xB6, 0x2C, 0xF0, 0xE1, 0x8B, 0x4E, 0x7F, 0xD0,\n0x07, 0xE9, 0x76, 0xC8, 0x81, 0x70, 0x10, 0x32, 0x2A, 0x7F, 0xE8, 0xCD, 0x00, 0x24, 0x22, 0x91,\n0x0E, 0x3E, 0x62, 0x89, 0x08, 0x1C, 0x68, 0x58, 0x78, 0xF1, 0x6B, 0x59, 0xD2, 0x21, 0x7B, 0x33,\n0x07, 0x51, 0x0F, 0x8B, 0x4E, 0x3F, 0xEC, 0x62, 0x56, 0xE0, 0x1F, 0x7F, 0xDD, 0xB2, 0xAA, 0xB6,\n0x0D, 0xC2, 0x3B, 0xE2, 0x10, 0x7E, 0x97, 0x7E, 0x7F, 0xF4, 0x37, 0x44, 0x54, 0xA5, 0xBF, 0x79,\n0xCC, 0x64, 0xA1, 0xFD, 0xE1, 0x8B, 0x78, 0xFB, 0xE3, 0x5B, 0x0D, 0x02, 0x76, 0x87, 0x18, 0x21,\n0x0D, 0x87, 0xAA, 0xA3, 0xC5, 0x8B, 0x43, 0x62, 0xE3, 0x57, 0x03, 0x7C, 0xF8, 0x62, 0x02, 0x00,\n0x30, 0xA8, 0x60, 0xA1, 0x96, 0x85, 0x3E, 0x36, 0x0D, 0xC2, 0xC3, 0xF2, 0xDB, 0x97, 0x7F, 0xD0,\n0x0F, 0xF9, 0xC7, 0xBC, 0x96, 0xEB, 0x7F, 0x2C, 0x42, 0xC7, 0x4E, 0x15, 0x0B, 0xAD, 0x7D, 0x64,\n0x40, 0x02, 0x97, 0xC4, 0x9C, 0x83, 0x21, 0x5F, 0x12, 0xE7, 0xCD, 0x43, 0xDE, 0x4E, 0xEA, 0xF2,\n0x0F, 0x5D, 0xCE, 0x52, 0xF9, 0x09, 0xFE, 0x70, 0x45, 0x78, 0x57, 0x06, 0x82, 0xBA, 0x8A, 0xD5,\n0xD3, 0x0E, 0x89, 0x11, 0x32, 0x8E, 0x27, 0x65, 0x0A, 0x6A, 0x17, 0x8D, 0x6B, 0x44, 0xAE, 0xC3,\n0x30, 0x84, 0xF8, 0x08, 0x10, 0xC2, 0x59, 0x56, 0xAD, 0x90, 0xFA, 0x41, 0x46, 0x7B, 0x23, 0x06,\n0xB9, 0x51, 0xC1, 0x72, 0x0A, 0x04, 0x85, 0xB8, 0x42, 0xAE, 0x1F, 0xDC, 0xCB, 0x41, 0x6E, 0xAF,\n0x49, 0x88, 0xDF, 0x1F, 0x71, 0x3E, 0xEE, 0xE7, 0xC8, 0x37, 0x05, 0x0C, 0xC3, 0x70, 0x65, 0xFF,\n0x67, 0x0F, 0x00, 0x11, 0x55, 0xBF, 0x19, 0xC7, 0xD8, 0xA1, 0xD8, 0xB3, 0x2B, 0xC7, 0x0D, 0xE2,\n0x0D, 0xF0, 0x48, 0x4B, 0x88, 0x8F, 0xF1, 0x30, 0x8A, 0x39, 0xD4, 0xE1, 0x02, 0xBF, 0xA2, 0x94,\n0xEB, 0xF0, 0x96, 0x10, 0xC1, 0xDD, 0xD6, 0xD7, 0x67, 0xE4, 0x2E, 0x79, 0x20, 0xA6, 0x74, 0x6B,\n0x3B, 0x04, 0x6E, 0x38, 0xD3, 0xA2, 0x87, 0x6E, 0x19, 0x84, 0xB9, 0xDE, 0x39, 0xC0, 0x47, 0x0E,\n0xBF, 0x42, 0xE6, 0x0F, 0x92, 0x90, 0x6D, 0x83, 0xF0, 0x66, 0xA9, 0x61, 0xBD, 0xFB, 0xFD, 0x71,\n0x3C, 0x4F, 0x11, 0x3E, 0xEE, 0x11, 0x42, 0x12, 0x1E, 0xC3, 0xF0, 0x46, 0x9F, 0x58, 0x15, 0xB3,\n0x78, 0xF3, 0xF1, 0x7A, 0x3C, 0x84, 0x08, 0x49, 0xFB, 0x65, 0x1C, 0x11, 0xDB, 0x20, 0xD1, 0xF8,\n0x71, 0xC9, 0x4B, 0x80, 0x8F, 0x42, 0xC8, 0xCA, 0x85, 0xBA, 0x58, 0x4A, 0x56, 0xF9, 0xB0, 0x7C,\n0x99, 0xDC, 0xF5, 0x6D, 0x88, 0xF0, 0x11, 0x23, 0xE4, 0x38, 0x9D, 0x27, 0x0E, 0xAA, 0x10, 0x41,\n0x00, 0xCD, 0x3A, 0x85, 0x55, 0x1B, 0x84, 0x55, 0x5E, 0x32, 0xF7, 0x3E, 0xCF, 0xDE, 0xF3, 0x2B,\n0x09, 0x08, 0xF1, 0xF0, 0x21, 0x12, 0xD9, 0xC9, 0x41, 0xF0, 0x07, 0x5D, 0x74, 0x4F, 0xFB, 0x23,\n0xD1, 0x31, 0xA5, 0x7B, 0x3F, 0x1F, 0x11, 0x42, 0xD2, 0x81, 0x2F, 0xFD, 0x69, 0x87, 0xE1, 0x59,\n0x1D, 0xA4, 0xEC, 0xBC, 0x89, 0x3E, 0x72, 0xF8, 0xF5, 0x71, 0x09, 0x12, 0x12, 0xEF, 0x83, 0x04,\n0xF8, 0xB8, 0x5C, 0xDC, 0x78, 0x08, 0x21, 0x27, 0x35, 0xBF, 0xA9, 0x94, 0x22, 0xCF, 0x86, 0x81,\n0xEF, 0xE2, 0x75, 0xF1, 0x71, 0x97, 0x70, 0x27, 0x20, 0xE7, 0xA9, 0x3D, 0xDC, 0xDB, 0x1A, 0x5C,\n0xFC, 0xB5, 0xA4, 0x05, 0x87, 0xDC, 0xF6, 0xAA, 0x58, 0x2F, 0x57, 0xDF, 0xFA, 0x32, 0xEE, 0xD6,\n0x1C, 0x96, 0x6F, 0x1E, 0x4B, 0x12, 0x91, 0x5D, 0x83, 0xC8, 0x3C, 0x56, 0xBA, 0x77, 0xE6, 0x21,\n0x69, 0xCB, 0x64, 0x3A, 0x26, 0x37, 0x1F, 0x10, 0xE2, 0xE4, 0x43, 0x08, 0x69, 0x37, 0xC5, 0x78,\n0x3B, 0xEB, 0x63, 0x8D, 0x8B, 0x8F, 0x0F, 0xD9, 0x33, 0x3B, 0x1A, 0xE9, 0x32, 0x8B, 0xD5, 0x99,\n0x7E, 0x3C, 0x16, 0xC7, 0x69, 0xD6, 0x25, 0xF3, 0x01, 0x21, 0xCC, 0x6F, 0x62, 0xD4, 0xA7, 0x2E,\n0x21, 0x7C, 0x40, 0x88, 0xC1, 0xC7, 0x53, 0xB8, 0xF0, 0xF8, 0x5A, 0x8F, 0x19, 0x12, 0xF1, 0x06,\n0x40, 0xBC, 0xD7, 0x83, 0x8B, 0x6A, 0x92, 0xB7, 0x6D, 0x10, 0x6A, 0xBC, 0xCE, 0x49, 0x13, 0xAE,\n0x0A, 0xF9, 0x07, 0x21, 0x7F, 0x1D, 0x88, 0xA8, 0x49, 0x5E, 0xC3, 0x20, 0xB4, 0x09, 0x17, 0x69,\n0x85, 0x58, 0xFE, 0x10, 0xB9, 0x9E, 0x8F, 0x21, 0x3E, 0x20, 0xC4, 0xE6, 0x43, 0x08, 0xF9, 0xC9,\n0x21, 0x52, 0x25, 0xE5, 0x38, 0x65, 0x7C, 0x0A, 0xB7, 0x3F, 0xE2, 0x0E, 0x89, 0xCF, 0x62, 0xD9,\n0xFE, 0x60, 0xF1, 0xF9, 0x43, 0x3B, 0x84, 0x6D, 0xC2, 0x5D, 0x79, 0xF3, 0xA7, 0xF0, 0x01, 0x21,\n0xA6, 0x3F, 0x08, 0x17, 0x1E, 0xC7, 0xB4, 0x0F, 0x64, 0x8D, 0xA4, 0x1B, 0x48, 0xD4, 0x0A, 0x91,\n0x16, 0xC8, 0x22, 0xEB, 0x57, 0x18, 0x7D, 0x10, 0x3D, 0xCF, 0x6B, 0x9D, 0x35, 0xCD, 0x7F, 0x8D,\n0x6B, 0x09, 0x8D, 0x59, 0x2C, 0x23, 0x07, 0x59, 0xF9, 0x58, 0xE4, 0xCE, 0x9C, 0x63, 0x2E, 0x78,\n0xE4, 0xED, 0xE4, 0x71, 0xC8, 0xEB, 0xA6, 0x37, 0x09, 0x19, 0x0A, 0x1E, 0x10, 0x42, 0x3E, 0xAE,\n0xCF, 0x29, 0xE0, 0x83, 0x7D, 0xE7, 0xE2, 0xF4, 0x47, 0xBF, 0x43, 0x12, 0x20, 0x9D, 0xFE, 0x08,\n0x38, 0x44, 0xFD, 0x96, 0x07, 0xE4, 0x91, 0x56, 0xDD, 0x22, 0x82, 0x0F, 0x08, 0xD9, 0xE7, 0x83,\n0x3F, 0x92, 0x93, 0x90, 0x52, 0xE4, 0x17, 0x44, 0x26, 0xCE, 0xCB, 0xB9, 0x3D, 0xE5, 0xAB, 0xF5,\n0xD5, 0xE8, 0x48, 0xA4, 0x3A, 0xDD, 0x6F, 0x5C, 0x99, 0xEE, 0x49, 0xCF, 0xDD, 0xE3, 0xEE, 0x33,\n0xFE, 0x80, 0x90, 0xB6, 0x41, 0xA4, 0xFF, 0x21, 0x60, 0x70, 0x6F, 0x64, 0x21, 0xB2, 0x85, 0xF2,\n0xC1, 0x23, 0xAD, 0x93, 0x97, 0x0F, 0x08, 0xB1, 0xF9, 0x80, 0x90, 0xEB, 0x6B, 0x9E, 0x4E, 0xFE,\n0x21, 0xEF, 0x8D, 0x2A, 0x1C, 0xFE, 0xB0, 0x1D, 0x12, 0x37, 0x48, 0x2C, 0xF0, 0x07, 0x8B, 0x8F,\n0x0F, 0x1C, 0xA2, 0x47, 0xB1, 0x9E, 0x07, 0x15, 0xAF, 0x85, 0x0F, 0x62, 0x8F, 0x90, 0x61, 0x90,\n0xF4, 0xFC, 0x39, 0x4C, 0x3C, 0xE4, 0x28, 0x29, 0xDD, 0x30, 0x98, 0xA0, 0x90, 0x05, 0x32, 0x7F,\n0x16, 0x0C, 0xC2, 0x40, 0xD6, 0xC6, 0x34, 0x2F, 0x63, 0x58, 0x81, 0x0B, 0xA6, 0x74, 0xCC, 0x1E,\n0x7D, 0x10, 0xAD, 0x1C, 0x84, 0x97, 0x2F, 0x74, 0x2C, 0x46, 0x31, 0xEB, 0xBD, 0x6C, 0x99, 0xB4,\n0xA6, 0x25, 0x9F, 0x67, 0x45, 0xF0, 0x80, 0x10, 0x9B, 0x0F, 0x08, 0xE1, 0x50, 0x09, 0x18, 0xE4,\n0x1F, 0x3A, 0x1C, 0xFE, 0xE8, 0x75, 0x08, 0x55, 0xAC, 0x7E, 0x7F, 0xB0, 0xF8, 0xF8, 0xC0, 0x21,\n0xAA, 0x9A, 0x47, 0xFE, 0x01, 0x1F, 0x26, 0x21, 0xF0, 0x11, 0x21, 0xA4, 0x78, 0x43, 0x0A, 0x99,\n0xC7, 0xB2, 0x23, 0x3C, 0x39, 0x44, 0x29, 0x64, 0xA5, 0x42, 0xD8, 0x10, 0x42, 0xDA, 0xB3, 0x58,\n0xE2, 0x0F, 0x1D, 0x46, 0xF9, 0x2A, 0xE4, 0x90, 0x8F, 0x46, 0x6C, 0x4E, 0xF3, 0x7E, 0xC8, 0x0F,\n0xAF, 0x18, 0xD9, 0x54, 0x48, 0x36, 0x46, 0xB9, 0x15, 0x32, 0x0C, 0x44, 0x9A, 0x5B, 0xFE, 0x3E,\n0xB8, 0xF9, 0xC0, 0x21, 0x54, 0xB4, 0x9E, 0xF2, 0x8F, 0xB1, 0x15, 0x86, 0x3F, 0x3A, 0x1D, 0xD2,\n0x32, 0x48, 0x28, 0xF0, 0x87, 0x5E, 0x5C, 0x7C, 0x10, 0xAA, 0x9A, 0xC7, 0x0C, 0xA7, 0xF0, 0x61,\n0x11, 0x02, 0x1F, 0x77, 0xC2, 0x41, 0x88, 0x54, 0x68, 0xA6, 0xD5, 0x20, 0x47, 0x1C, 0xD2, 0x10,\n0x08, 0xEE, 0xC0, 0x20, 0xAA, 0x21, 0xC2, 0x33, 0xD2, 0x73, 0x4D, 0xC8, 0xEC, 0xF2, 0x07, 0x31,\n0xFB, 0xFD, 0x41, 0x31, 0xAB, 0x36, 0xC8, 0xEF, 0x95, 0x8B, 0x05, 0x3C, 0x52, 0x6C, 0xFA, 0x63,\n0x2A, 0x02, 0x11, 0xBF, 0x9A, 0xC5, 0xAC, 0x7B, 0x2B, 0x36, 0x09, 0x19, 0x84, 0x0F, 0x4D, 0x08,\n0xF9, 0x87, 0x6E, 0x0F, 0x1E, 0x42, 0x84, 0xB0, 0x2F, 0x7E, 0x87, 0x43, 0x56, 0x83, 0x44, 0xE3,\n0xF2, 0xFA, 0x03, 0xB0, 0x84, 0xF8, 0x38, 0x8C, 0x6B, 0xCB, 0x10, 0x4A, 0x4A, 0xFB, 0x43, 0xF8,\n0xD0, 0x84, 0x0C, 0x86, 0x3F, 0xBC, 0x84, 0x1C, 0x05, 0x0C, 0x0C, 0x92, 0x9F, 0x88, 0x43, 0x60,\n0xA4, 0xE5, 0x0F, 0x76, 0xB4, 0xDF, 0x37, 0xBC, 0x21, 0x0F, 0xF0, 0x51, 0xC7, 0x6C, 0x95, 0x77,\n0x75, 0xE4, 0x8F, 0x6D, 0x3E, 0x20, 0xA4, 0x69, 0x10, 0x90, 0x78, 0x4E, 0xD4, 0xD3, 0xB2, 0xE1,\n0x0F, 0xC9, 0xCB, 0x64, 0x3B, 0x89, 0x40, 0xD2, 0x1A, 0xE0, 0x83, 0x62, 0x96, 0xCD, 0x07, 0x84,\n0x70, 0xB8, 0x64, 0x7F, 0x00, 0x0F, 0x15, 0x86, 0x3E, 0x7A, 0x25, 0x62, 0x18, 0x24, 0xAE, 0x0F,\n0x16, 0x17, 0x1F, 0x20, 0x02, 0x1D, 0xCC, 0xE3, 0x0C, 0xF0, 0x61, 0x10, 0x42, 0x7B, 0x30, 0x42,\n0xC8, 0xA4, 0x73, 0x90, 0xF4, 0xBC, 0x3C, 0x79, 0x85, 0x03, 0x7F, 0x60, 0x0F, 0xE9, 0x85, 0xE0,\n0x10, 0x76, 0x47, 0x2E, 0x47, 0x37, 0x08, 0x31, 0xF9, 0xC0, 0x21, 0xB3, 0x93, 0x0F, 0xDD, 0x10,\n0xA1, 0x7E, 0x05, 0xD3, 0xCA, 0x20, 0x6D, 0x87, 0x9C, 0x91, 0xEA, 0x24, 0x2F, 0xE4, 0x6C, 0x74,\n0x32, 0xF9, 0xB0, 0x09, 0xA1, 0xBC, 0x5B, 0x23, 0x82, 0x3F, 0x68, 0x23, 0x8F, 0xDB, 0x61, 0xF8,\n0xA3, 0x9B, 0x90, 0x87, 0x41, 0x3A, 0xDA, 0xE7, 0x2E, 0x42, 0xC0, 0xE3, 0x24, 0xF7, 0x9A, 0x90,\n0x17, 0xA3, 0xD2, 0x1E, 0x6C, 0x06, 0x4D, 0x75, 0xCD, 0x87, 0x1B, 0x11, 0x39, 0x1E, 0xBE, 0xE4,\n0x20, 0x99, 0x8D, 0x02, 0x09, 0x02, 0xA1, 0x3D, 0x58, 0x05, 0x49, 0xEF, 0x0D, 0x83, 0xD0, 0x3E,\n0x37, 0x09, 0xB1, 0xF9, 0xC0, 0x21, 0x7E, 0x3C, 0x68, 0x88, 0x50, 0xBF, 0x02, 0x08, 0x7E, 0x76,\n0x78, 0xA9, 0x9A, 0xEA, 0x79, 0x3B, 0x88, 0x54, 0x33, 0x1C, 0x05, 0x0F, 0x49, 0x43, 0x26, 0x27,\n0x1F, 0x10, 0xE2, 0xE4, 0x03, 0x42, 0x18, 0xA2, 0x50, 0xF9, 0xC7, 0x49, 0xDD, 0x52, 0x18, 0xFE,\n0xE8, 0x26, 0x04, 0x83, 0x18, 0xE1, 0xE3, 0x83, 0xC5, 0xD0, 0x87, 0xE6, 0x44, 0x8D, 0x2E, 0x52,\n0xDE, 0x25, 0x54, 0xB9, 0xB7, 0x6E, 0x7F, 0xF8, 0x09, 0x99, 0x04, 0x92, 0x89, 0x1C, 0x44, 0x4E,\n0x22, 0xC4, 0x21, 0xAA, 0xC0, 0xFB, 0xBC, 0x43, 0xE1, 0x91, 0x3A, 0x0F, 0xB9, 0x3D, 0xDA, 0xE7,\n0xFB, 0xBB, 0x70, 0x3D, 0xBE, 0xAB, 0x99, 0xD8, 0x6D, 0x88, 0xCC, 0x06, 0x20, 0xBA, 0x21, 0x42,\n0x7E, 0xAE, 0x04, 0x22, 0xA1, 0x2F, 0x0F, 0x7B, 0x34, 0x07, 0x33, 0x23, 0xF9, 0xA1, 0xE8, 0x55,\n0x38, 0xF1, 0xF2, 0x01, 0x21, 0x6E, 0x3E, 0x68, 0xAA, 0x93, 0xA4, 0x8F, 0x46, 0x1C, 0x2E, 0x46,\n0xF9, 0xCA, 0x48, 0x44, 0xFE, 0xD3, 0x76, 0xF6, 0xBA, 0x4E, 0x03, 0x41, 0x14, 0xCE, 0x95, 0xA2,\n0x60, 0x09, 0x51, 0xA4, 0xB8, 0x29, 0x50, 0x7E, 0x44, 0x95, 0xC2, 0xCA, 0x13, 0xF0, 0x00, 0x54,\n0x91, 0x70, 0xE1, 0x0A, 0xD9, 0x32, 0x25, 0x15, 0x05, 0x05, 0xEE, 0x83, 0x11, 0x34, 0x14, 0x94,\n0x48, 0xF0, 0xAC, 0x8C, 0x77, 0xD7, 0x1C, 0xB3, 0xEB, 0x78, 0xE6, 0x40, 0x72, 0x36, 0x4E, 0x7C,\n0x23, 0x08, 0x8E, 0x33, 0x9F, 0xCF, 0xCE, 0xCC, 0xE6, 0xA2, 0x29, 0xF4, 0x41, 0x58, 0x29, 0x78,\n0xC8, 0x51, 0xA6, 0xED, 0xF3, 0x43, 0x6A, 0x22, 0xD0, 0xC8, 0x57, 0xC1, 0x87, 0x4E, 0x08, 0xFC,\n0x83, 0x20, 0x24, 0x14, 0x30, 0xFD, 0x23, 0x2E, 0x8E, 0x6E, 0x0F, 0x1E, 0x82, 0xAB, 0x6A, 0x08,\n0xAF, 0x48, 0x20, 0xC5, 0x13, 0x82, 0xD5, 0xBB, 0x9A, 0x2A, 0x25, 0x3D, 0x57, 0x8A, 0x59, 0x1F,\n0x44, 0x3A, 0x21, 0x89, 0x7F, 0x5C, 0x26, 0x32, 0x90, 0x70, 0x1B, 0x4F, 0x28, 0xFF, 0x14, 0xAD,\n0xB0, 0x06, 0xC7, 0xA3, 0xE1, 0xB1, 0x91, 0x2D, 0xE1, 0x83, 0x21, 0x24, 0x4D, 0x3F, 0xD2, 0x62,\n0x16, 0xAA, 0x99, 0x23, 0x3E, 0xAE, 0x92, 0x42, 0xF8, 0x07, 0xEB, 0x21, 0x70, 0x10, 0x42, 0xF0,\n0x0F, 0x65, 0x28, 0xFE, 0x81, 0xB7, 0x9D, 0x34, 0x44, 0x34, 0x3E, 0x50, 0xCC, 0x82, 0x7F, 0x30,\n0x80, 0x0C, 0x9F, 0xFD, 0x73, 0xB7, 0x3D, 0x77, 0x44, 0x0C, 0xB4, 0x04, 0x3B, 0x19, 0x79, 0x48,\n0x79, 0x49, 0x42, 0x0A, 0xBB, 0x58, 0x76, 0xE2, 0x13, 0x11, 0xB4, 0xCF, 0x15, 0x0F, 0xA9, 0xA2,\n0xF6, 0xB9, 0xDD, 0x43, 0x2C, 0xAF, 0x8F, 0x5A, 0x2F, 0xDA, 0x1F, 0x30, 0x91, 0x14, 0xF7, 0x91,\n0x7F, 0x04, 0x0F, 0x0D, 0x35, 0xBD, 0x70, 0x8E, 0x30, 0x15, 0x2D, 0x18, 0xFF, 0x40, 0x43, 0x44,\n0xE7, 0x03, 0x19, 0xE6, 0x06, 0x13, 0x2C, 0x50, 0x31, 0x13, 0x3D, 0x89, 0x7F, 0xDC, 0xD6, 0x43,\n0x38, 0x40, 0xE0, 0x1F, 0x84, 0x87, 0xA4, 0x40, 0x4C, 0xC8, 0x37, 0x44, 0xD0, 0xFE, 0x30, 0x11,\n0x02, 0x3E, 0x18, 0x44, 0x82, 0x59, 0x14, 0x1E, 0x87, 0xE0, 0x20, 0x83, 0x99, 0xB8, 0x1F, 0x64,\n0x7F, 0x00, 0xA4, 0x04, 0x1E, 0x83, 0xB0, 0x0F, 0x4E, 0x84, 0x10, 0x2C, 0x4F, 0xD4, 0x55, 0x5D,\n0x4D, 0x3F, 0x7E, 0xE1, 0x3E, 0xF5, 0x10, 0xB9, 0xB7, 0xBD, 0x3E, 0xFA, 0xF9, 0xA3, 0xE3, 0x4C,\n0xCC, 0x0F, 0xCF, 0xC3, 0x3F, 0x3C, 0x0F, 0x58, 0xC4, 0x89, 0x1C, 0x7D, 0x98, 0x78, 0x3D, 0x67,\n0xF0, 0x40, 0x43, 0x44, 0xE7, 0x23, 0x6D, 0x88, 0x20, 0x6A, 0xD2, 0x14, 0x04, 0x4A, 0xFC, 0xE3,\n0xB6, 0x79, 0xC8, 0x4B, 0x00, 0x42, 0xF8, 0x07, 0xE1, 0x21, 0xD7, 0xD0, 0x3F, 0x44, 0x26, 0x12,\n0x5A, 0xE8, 0xE0, 0xC3, 0x42, 0x08, 0xDA, 0x1F, 0x46, 0x42, 0x3C, 0x17, 0xDE, 0x41, 0xFA, 0x1B,\n0x1C, 0x24, 0x7C, 0xF4, 0xE1, 0xEA, 0x19, 0x02, 0x26, 0xC4, 0x55, 0x94, 0x85, 0x84, 0xDD, 0xF4,\n0xB7, 0x64, 0x7D, 0xB0, 0xCA, 0xE3, 0x51, 0x7D, 0x35, 0xAB, 0x82, 0x7F, 0x58, 0x84, 0xF6, 0x39,\n0xDE, 0x00, 0x88, 0x48, 0xE5, 0x01, 0x01, 0x0F, 0x1E, 0x87, 0xC1, 0x4C, 0xE0, 0x1C, 0xE1, 0xB2,\n0x42, 0xF0, 0x01, 0x0F, 0x01, 0x1F, 0x8A, 0x87, 0xD4, 0x07, 0x7C, 0xFB, 0xC3, 0x22, 0x94, 0xAF,\n0x4C, 0x83, 0x74, 0x03, 0x38, 0x08, 0xE9, 0x1F, 0xFA, 0x00, 0x1F, 0xA0, 0xFE, 0x8A, 0xC2, 0x77,\n0xA8, 0x1E, 0x75, 0x3E, 0x90, 0x87, 0x2C, 0x3F, 0x2F, 0xB1, 0x7C, 0xD7, 0x4E, 0x48, 0xF8, 0xDC,\n0x07, 0xDB, 0x18, 0x76, 0xFD, 0x04, 0x1B, 0xA6, 0x32, 0x9E, 0x5F, 0x45, 0xD3, 0x12, 0x3C, 0x8B,\n0x88, 0xF3, 0x84, 0x20, 0x42, 0x75, 0x0F, 0x91, 0x11, 0x9B, 0xC7, 0xDC, 0xCF, 0x3D, 0x51, 0xD5,\n0x07, 0xBB, 0xFE, 0xB4, 0x07, 0x81, 0x08, 0x94, 0xCE, 0x15, 0xBD, 0x7F, 0x78, 0x77, 0xF5, 0x94,\n0x0C, 0x06, 0x3B, 0x18, 0xEB, 0xC0, 0x8C, 0x1B, 0x66, 0x3E, 0x90, 0x88, 0xA0, 0xFD, 0xA1, 0x7B,\n0x88, 0xAB, 0x65, 0x2A, 0x53, 0x8F, 0x43, 0x44, 0x88, 0x3D, 0x2E, 0xEF, 0xE9, 0x20, 0x4F, 0x31,\n0xCB, 0x33, 0x8C, 0xEB, 0xF6, 0x31, 0x2D, 0x29, 0xEF, 0xDA, 0x55, 0xF7, 0x78, 0xBC, 0xA0, 0x04,\n0x04, 0x3C, 0x28, 0x0E, 0x8F, 0x10, 0x0D, 0xFE, 0x79, 0xDF, 0x3D, 0x0E, 0x24, 0x4D, 0x44, 0x15,\n0x68, 0x89, 0xF4, 0xFE, 0xBD, 0xE0, 0xC1, 0xC8, 0x98, 0x7E, 0x80, 0x16, 0x2C, 0x4F, 0xB4, 0x9A,\n0xC8, 0x7B, 0x78, 0xDF, 0x24, 0xD3, 0x90, 0xFC, 0x51, 0xC7, 0x87, 0xC3, 0xC0, 0x21, 0xE0, 0x21,\n0xC1, 0xD9, 0x08, 0x1D, 0x55, 0x4C, 0xBB, 0x38, 0x09, 0x21, 0xCB, 0xDD, 0xD2, 0xA6, 0x9D, 0xDC,\n0x94, 0xF4, 0x23, 0x89, 0x26, 0xF8, 0x87, 0x69, 0xDC, 0xC9, 0x41, 0x1E, 0x1E, 0x64, 0x7A, 0x45,\n0x39, 0x54, 0x0F, 0xC8, 0xCA, 0x32, 0x5C, 0xC1, 0x6E, 0x2D, 0xF9, 0x47, 0xCD, 0x08, 0xCB, 0x77,\n0x4D, 0x1A, 0x5D, 0x0E, 0xE5, 0xE6, 0xF7, 0xE0, 0x20, 0x28, 0x63, 0x0E, 0x13, 0xF0, 0x92, 0xD3,\n0x85, 0x8B, 0xDF, 0xEA, 0x2B, 0xA9, 0x0F, 0x1C, 0x81, 0x97, 0x92, 0x53, 0xB0, 0x0B, 0xB7, 0x85,\n0xD3, 0xE4, 0x15, 0xAC, 0x23, 0x10, 0xE3, 0x6D, 0x04, 0xFE, 0x61, 0xD3, 0x8B, 0x63, 0xCD, 0x48,\n0x66, 0x59, 0x27, 0x89, 0x0A, 0xF3, 0xED, 0x71, 0xC5, 0x44, 0x65, 0x0F, 0xC8, 0x83, 0x59, 0xEF,\n0x16, 0x9F, 0x9E, 0x99, 0xF5, 0xED, 0xDB, 0xC3, 0x7A, 0x2D, 0x37, 0xA3, 0xBA, 0xEE, 0x04, 0x40,\n0xD4, 0x71, 0x7A, 0x5C, 0x6C, 0x16, 0xF5, 0xC6, 0xAA, 0xC5, 0x66, 0xB7, 0x24, 0x75, 0xDC, 0x16,\n0x5B, 0xB9, 0x99, 0xC6, 0xB1, 0x28, 0x8A, 0x37, 0x84, 0xBE, 0xBC, 0x29, 0xDB, 0x86, 0x18, 0x6D,\n0x55, 0xFD, 0xFC, 0xF9, 0xF3, 0xED, 0x95, 0x31, 0x71, 0xAB, 0xAA, 0x56, 0x64, 0x7E, 0xF9, 0xA6,\n0x7C, 0x43, 0xA9, 0xE8, 0x4F, 0xCD, 0x67, 0xE3, 0xAD, 0xD8, 0x1E, 0x97, 0xA4, 0x76, 0xF2, 0x81,\n0xD9, 0x25, 0xB3, 0xED, 0x95, 0x43, 0xC4, 0xA4, 0xC7, 0x53, 0xB7, 0x7E, 0x20, 0x46, 0x97, 0x65,\n0xB9, 0x39, 0xE6, 0x3F, 0x11, 0x80, 0x64, 0x79, 0x9E, 0x77, 0x6B, 0x42, 0xDD, 0x5A, 0x08, 0xB1,\n0x66, 0x5A, 0x87, 0xFE, 0xBC, 0x10, 0x7C, 0x2C, 0xFF, 0x41, 0x12, 0xFA, 0x46, 0x15, 0x22, 0x10,\n0xA2, 0xE3, 0x71, 0xBE, 0x94, 0xE7, 0xA6, 0xA9, 0x1A, 0xA3, 0xAA, 0xEA, 0xA3, 0x10, 0xF2, 0xE3,\n0xA7, 0x51, 0x3F, 0x84, 0x0F, 0xF9, 0x1B, 0x12, 0xFA, 0xFD, 0xF6, 0x5D, 0x79, 0x90, 0xD1, 0x94,\n0xE7, 0xCB, 0xF9, 0x8D, 0x51, 0x67, 0xE1, 0x43, 0x64, 0xBE, 0x7A, 0x80, 0x0F, 0x46, 0xE6, 0x6B,\n0x5F, 0xED, 0xE2, 0x00, 0x39, 0xBA, 0xAA, 0x55, 0xF7, 0x40, 0x45, 0x65, 0x26, 0xCA, 0x6F, 0x0F,\n0x48, 0xEE, 0x5E, 0x37, 0xE3, 0x08, 0xE9, 0x4E, 0x66, 0x3E, 0xE4, 0xBC, 0x88, 0x36, 0x75, 0x6D,\n0xE2, 0xA3, 0x5E, 0x42, 0x94, 0x87, 0x98, 0x86, 0xF0, 0xC1, 0x11, 0x52, 0x5E, 0x24, 0x20, 0xCB,\n0x4B, 0x53, 0x59, 0xAE, 0xEF, 0x4D, 0xDB, 0xE3, 0x21, 0x22, 0xF8, 0xF0, 0x6A, 0x02, 0x22, 0xB2,\n0x7D, 0x9F, 0x7E, 0x00, 0x1F, 0x72, 0x48, 0x84, 0x7F, 0x78, 0x42, 0x4C, 0x88, 0x14, 0xC5, 0x92,\n0x11, 0x4F, 0xC8, 0x62, 0x41, 0x11, 0x72, 0xEA, 0x3A, 0x92, 0x0F, 0x82, 0x90, 0x57, 0x00, 0x44,\n0xE5, 0xC3, 0x8B, 0x23, 0xE4, 0xC1, 0x46, 0xC8, 0xEA, 0xD1, 0xF9, 0x87, 0x9D, 0x10, 0xF0, 0x41,\n0x7B, 0x88, 0x01, 0x0F, 0xC7, 0x07, 0x43, 0xC8, 0xF9, 0x72, 0x71, 0x11, 0xD9, 0x13, 0xA2, 0x5E,\n0xDF, 0x65, 0xF3, 0xB2, 0x7B, 0x48, 0x25, 0x02, 0x21, 0xD8, 0xAE, 0xFC, 0xD4, 0xB3, 0x7A, 0x96,\n0x51, 0x12, 0x7C, 0x10, 0x1E, 0xB2, 0xFC, 0x47, 0xD5, 0x0B, 0x33, 0x1F, 0x22, 0x1B, 0x21, 0xFB,\n0xC7, 0x35, 0xED, 0x1F, 0x14, 0x21, 0x00, 0x44, 0xE5, 0xE3, 0x0E, 0x84, 0xA0, 0xC4, 0x1B, 0xCE,\n0x8B, 0x4E, 0x08, 0xEF, 0x1F, 0xBC, 0x87, 0x20, 0x60, 0x6C, 0x84, 0x94, 0xC2, 0x87, 0x1B, 0xBD,\n0x87, 0xC8, 0x98, 0xBD, 0xCC, 0xCB, 0x06, 0x11, 0xFE, 0x01, 0x42, 0xF0, 0x42, 0xF8, 0xB7, 0xF0,\n0xD3, 0xF7, 0xC6, 0x1D, 0x88, 0x27, 0x96, 0xE0, 0xC3, 0xE8, 0x21, 0xE0, 0x83, 0xD7, 0x8E, 0xE0,\n0xA3, 0x8F, 0x88, 0x95, 0x4E, 0xC8, 0xEA, 0x44, 0xF3, 0x01, 0x42, 0x38, 0x07, 0xD1, 0xF9, 0x00,\n0x21, 0x8C, 0xBA, 0xD3, 0x2A, 0x69, 0x84, 0x46, 0xDD, 0xC2, 0xC0, 0x07, 0x10, 0x21, 0xFC, 0xE3,\n0xE6, 0x1E, 0xE2, 0xF9, 0x80, 0x74, 0xFB, 0xF8, 0xE3, 0x1F, 0x92, 0x87, 0x5C, 0x5A, 0x44, 0x2D,\n0x2E, 0xEC, 0xC8, 0x1E, 0xC0, 0x87, 0xDD, 0x43, 0xAA, 0xB1, 0x9A, 0x99, 0x97, 0xF6, 0x0E, 0xE5,\n0x61, 0x0D, 0xC4, 0x9A, 0xD2, 0xF3, 0x31, 0x21, 0x84, 0x7F, 0xDC, 0x65, 0x96, 0x35, 0x8E, 0x83,\n0xFE, 0xBB, 0x20, 0x4A, 0xEC, 0x48, 0x9E, 0x4B, 0xF2, 0x01, 0xE5, 0x39, 0xE1, 0x20, 0x3A, 0x1E,\n0x50, 0x9E, 0xAD, 0x39, 0x69, 0x17, 0x02, 0x39, 0x15, 0x63, 0x51, 0xF3, 0x2B, 0x5E, 0xC7, 0x79,\n0x42, 0x12, 0x69, 0x7C, 0xB8, 0xD6, 0x42, 0x40, 0x44, 0x7E, 0x48, 0xF8, 0xF8, 0x9B, 0x98, 0xB6,\n0x8A, 0xF4, 0xE3, 0x87, 0xC5, 0x3F, 0xA0, 0xA6, 0x4D, 0x3D, 0x6A, 0xBC, 0x95, 0xE7, 0xF2, 0xEC,\n0x60, 0x0D, 0xA0, 0x18, 0xED, 0x03, 0x88, 0x10, 0xFE, 0x41, 0x6B, 0x67, 0xC4, 0x03, 0x84, 0xAC,\n0x66, 0xFD, 0x83, 0xE7, 0xC3, 0x40, 0x08, 0xEF, 0x20, 0x59, 0xA4, 0x9C, 0x3B, 0xAC, 0x87, 0x39,\n0x42, 0x4E, 0xF0, 0x0F, 0x1B, 0x22, 0x64, 0x79, 0x97, 0xF7, 0x90, 0x44, 0x7A, 0xFA, 0x81, 0x21,\n0xD1, 0xD9, 0x7E, 0x4F, 0x2C, 0x04, 0xD7, 0xF8, 0xA6, 0x8A, 0x65, 0xB4, 0x0F, 0xA8, 0x6D, 0x52,\n0x06, 0x51, 0xBF, 0xEA, 0xD9, 0x00, 0xB0, 0xB2, 0x77, 0x56, 0xF8, 0x20, 0x08, 0x61, 0xF9, 0xE0,\n0x09, 0x59, 0x70, 0x84, 0xA0, 0xE7, 0x40, 0xF1, 0x01, 0xE5, 0xBC, 0x83, 0xE8, 0x7C, 0xF0, 0x1E,\n0xD2, 0x75, 0x73, 0xEF, 0x12, 0xA7, 0x05, 0xDA, 0xD4, 0x9C, 0x7D, 0xF0, 0x84, 0x28, 0x78, 0x58,\n0x09, 0x71, 0x17, 0x6B, 0x7F, 0xCD, 0x0E, 0x77, 0x65, 0xD9, 0xA6, 0x57, 0x76, 0xFF, 0x84, 0x44,\n0x71, 0x15, 0xEB, 0x83, 0x78, 0xC8, 0x8C, 0x7F, 0xF4, 0xD5, 0xDD, 0x48, 0x40, 0x2E, 0xD9, 0xBE,\n0xBB, 0xF2, 0x6E, 0xF0, 0x8E, 0x61, 0xDE, 0x77, 0xE6, 0xF8, 0x98, 0x3B, 0x37, 0xC7, 0xE5, 0xFF,\n0xCB, 0x84, 0x07, 0x08, 0x39, 0x5C, 0x27, 0x64, 0xD5, 0xAD, 0x29, 0x65, 0x13, 0xCA, 0x79, 0x07,\n0xD1, 0xF9, 0xE0, 0x13, 0x91, 0xEE, 0xE1, 0xB4, 0x9F, 0x5C, 0x6C, 0x72, 0x5A, 0x1D, 0x30, 0xBF,\n0x32, 0x11, 0xB2, 0xA4, 0xC4, 0xA7, 0xEA, 0x93, 0x9A, 0xE1, 0x43, 0x02, 0xD0, 0x05, 0xA2, 0x27,\n0xC4, 0xED, 0xBD, 0x11, 0x0E, 0xAE, 0x44, 0xF0, 0xB4, 0x8C, 0xD3, 0x2B, 0xA8, 0x99, 0x24, 0x44,\n0x3C, 0xA4, 0x1C, 0xF2, 0xF3, 0x70, 0x48, 0x1E, 0x17, 0x8E, 0x8F, 0x2B, 0xFE, 0xAA, 0xF0, 0x61,\n0x17, 0xC1, 0x47, 0x42, 0x08, 0x56, 0xF8, 0x1E, 0xD0, 0xFE, 0x20, 0xF8, 0xE0, 0x09, 0x51, 0x01,\n0xC9, 0xB3, 0x69, 0xF1, 0x0D, 0x11, 0xAC, 0x58, 0xF4, 0x3B, 0x68, 0x0F, 0x4E, 0x13, 0x52, 0x2B,\n0xFE, 0x71, 0x07, 0x42, 0xAE, 0xEA, 0x2A, 0x1F, 0x51, 0x44, 0xBA, 0x90, 0x94, 0x7B, 0xA4, 0x0A,\n0x33, 0xE9, 0x87, 0x9E, 0xAA, 0x57, 0xB1, 0xD2, 0x62, 0x16, 0x36, 0xCF, 0xC7, 0xB9, 0x04, 0xB0,\n0xF0, 0x10, 0x9D, 0x0F, 0xDD, 0x43, 0x8A, 0xE5, 0x8D, 0x54, 0x1B, 0xF9, 0x00, 0x21, 0x11, 0x1C,\n0x4E, 0x27, 0x3A, 0xFD, 0xE0, 0x08, 0x81, 0x83, 0xF0, 0x7C, 0xDC, 0xA8, 0x65, 0x78, 0x7A, 0x04,\n0x1F, 0x0A, 0x21, 0x7C, 0x79, 0x97, 0x4F, 0x44, 0x24, 0x2A, 0xEC, 0x84, 0xC0, 0x3F, 0x30, 0x06,\n0x54, 0xA4, 0x76, 0xD4, 0x20, 0x11, 0x19, 0xA7, 0x1F, 0x0A, 0x21, 0xAA, 0x7F, 0x40, 0x93, 0x79,\n0x88, 0xFF, 0xC7, 0x2F, 0xA0, 0x03, 0x1E, 0xA2, 0xF2, 0xA1, 0x13, 0x42, 0xF8, 0x07, 0xDF, 0x10,\n0x99, 0x89, 0x83, 0xCD, 0xE4, 0x2C, 0x8B, 0x2F, 0xEF, 0x1A, 0x08, 0xE1, 0x1D, 0x24, 0x13, 0xDD,\n0x8A, 0x90, 0xB5, 0x74, 0x75, 0xFE, 0x56, 0x68, 0x9F, 0xEB, 0x84, 0xE8, 0x7C, 0xF0, 0xD2, 0xEA,\n0xBB, 0x90, 0x2B, 0x84, 0x4E, 0xB7, 0xCF, 0x07, 0xEB, 0xC0, 0x94, 0x66, 0x78, 0x6C, 0xA2, 0x59,\n0x16, 0xF8, 0x98, 0x94, 0xCA, 0x87, 0x3E, 0xCB, 0x12, 0x12, 0xC0, 0x6A, 0x9C, 0x87, 0x58, 0xF9,\n0x00, 0x21, 0x44, 0x7A, 0x4E, 0xAB, 0xB6, 0xF2, 0x81, 0xA6, 0xFA, 0xCD, 0xF9, 0x80, 0x72, 0xC5,\n0x41, 0x48, 0xFF, 0x80, 0xBE, 0xFD, 0x27, 0x21, 0x27, 0x94, 0xAF, 0x4C, 0x84, 0x28, 0x7C, 0xF0,\n0xB3, 0xAC, 0xC4, 0x3F, 0x28, 0x44, 0xCE, 0x97, 0xC8, 0x40, 0x30, 0xB5, 0xE9, 0x43, 0x35, 0x29,\n0x31, 0x89, 0x28, 0x0F, 0xA9, 0xE6, 0xD5, 0x46, 0x95, 0x64, 0x38, 0x18, 0x8A, 0x58, 0xA3, 0xBD,\n0x94, 0x0F, 0xE5, 0x0D, 0x13, 0xED, 0x0F, 0x5E, 0xBB, 0x85, 0xCE, 0x07, 0x84, 0x96, 0xE1, 0x1D,\n0xF8, 0x00, 0x21, 0xBC, 0x83, 0x64, 0x8A, 0x72, 0xB2, 0xA9, 0xBE, 0xFE, 0xFB, 0x7B, 0x60, 0xE0,\n0xC3, 0x40, 0xC8, 0x82, 0xE3, 0x83, 0xF7, 0x10, 0x4D, 0x31, 0x21, 0x01, 0x8E, 0x49, 0x03, 0x91,\n0x87, 0xB8, 0x65, 0x58, 0x69, 0x22, 0xFC, 0x03, 0xC5, 0x2C, 0xE4, 0x1F, 0x0E, 0xCA, 0x14, 0x57,\n0x0C, 0x2B, 0x1E, 0x20, 0x84, 0xF0, 0x0F, 0x9E, 0x10, 0x1D, 0x0F, 0x68, 0xE3, 0x5B, 0x86, 0xD0,\n0xBA, 0x7B, 0xB2, 0x86, 0x08, 0x3E, 0x14, 0x44, 0x48, 0x07, 0xC9, 0xF4, 0x17, 0x66, 0x09, 0x59,\n0x8D, 0x97, 0x97, 0xD4, 0xDA, 0x89, 0x41, 0x31, 0xAB, 0x26, 0x56, 0xB7, 0x53, 0x79, 0x08, 0x62,\n0x80, 0x24, 0xC4, 0x05, 0x20, 0x62, 0x30, 0xCA, 0x44, 0x5C, 0xB8, 0x4A, 0x1E, 0x02, 0x44, 0x74,\n0x8D, 0xF1, 0x80, 0x7F, 0x18, 0xF3, 0x10, 0xD4, 0xAC, 0xE0, 0x21, 0x67, 0x78, 0x48, 0xDC, 0x10,\n0x29, 0x2C, 0xDA, 0x12, 0x7C, 0xD0, 0xAA, 0x09, 0x40, 0xA2, 0x86, 0x08, 0xDB, 0x3E, 0xCF, 0x0C,\n0xCA, 0x79, 0x07, 0xC9, 0x4D, 0xAF, 0x9B, 0x71, 0x84, 0x74, 0x03, 0x1E, 0x7E, 0xF9, 0x95, 0xAA,\n0x4D, 0x20, 0x84, 0xE5, 0x83, 0xCF, 0xD4, 0x29, 0x42, 0xBE, 0xF4, 0x7C, 0x80, 0x08, 0x84, 0xA3,\n0xDF, 0xFA, 0x5D, 0xB9, 0x2F, 0x9B, 0x6A, 0x68, 0x80, 0x54, 0xBA, 0x3E, 0x8C, 0x09, 0xA9, 0x4C,\n0x1A, 0xB7, 0x3F, 0x30, 0x9B, 0xC2, 0xC1, 0x60, 0xDF, 0x1F, 0x11, 0xC9, 0x47, 0xB1, 0xA5, 0xF8,\n0xE0, 0x3D, 0x04, 0x78, 0x30, 0x84, 0xAC, 0xC8, 0xF6, 0x60, 0x66, 0x52, 0x4E, 0x3B, 0x48, 0x66,\n0xD4, 0x9A, 0x43, 0x64, 0x35, 0xF0, 0x51, 0x2F, 0x4C, 0xAA, 0x6B, 0x82, 0x0F, 0x5A, 0xC7, 0x10,\n0x07, 0x56, 0x85, 0xF8, 0x92, 0x68, 0xC3, 0xC5, 0x3A, 0x99, 0xCD, 0x20, 0x13, 0xF1, 0xB5, 0x2C,\n0xF0, 0xA1, 0x08, 0xED, 0x41, 0xAB, 0x86, 0xE5, 0x57, 0x65, 0x3A, 0xB9, 0x4A, 0x9E, 0x91, 0x9B,\n0x91, 0x0F, 0x30, 0x42, 0xB7, 0x07, 0xF9, 0x86, 0x88, 0x31, 0x0E, 0x36, 0x1B, 0x47, 0x08, 0xBD,\n0xBC, 0xE4, 0x21, 0x33, 0x2A, 0x27, 0x1C, 0x84, 0xE1, 0x83, 0x6F, 0x19, 0x4A, 0x4D, 0x02, 0xED,\n0x41, 0x23, 0x21, 0xD7, 0x7C, 0xFA, 0x06, 0x84, 0x80, 0x0F, 0x13, 0x21, 0x67, 0x97, 0x9E, 0x23,\n0x22, 0x01, 0x09, 0xF6, 0x87, 0x21, 0x79, 0x8A, 0x44, 0x6F, 0xF3, 0xE1, 0x63, 0x65, 0x11, 0x9A,\n0xEA, 0x68, 0x9F, 0xAB, 0x72, 0x0E, 0x55, 0x02, 0x89, 0xD4, 0x40, 0xF0, 0xDC, 0xE0, 0x21, 0x85,\n0x59, 0x6C, 0x7B, 0x90, 0x27, 0x44, 0x99, 0x66, 0x27, 0x0D, 0x91, 0xFD, 0x8A, 0x6D, 0x7F, 0x98,\n0x95, 0x33, 0x0E, 0x92, 0x67, 0x84, 0x38, 0xA2, 0xD7, 0xB2, 0xBA, 0x17, 0x7C, 0x18, 0x44, 0x96,\n0xAF, 0xF8, 0x62, 0x16, 0x25, 0xC7, 0x47, 0x54, 0x2C, 0x8A, 0xEA, 0xAA, 0x7E, 0x78, 0x33, 0x41,\n0xFA, 0x61, 0x13, 0xE6, 0x57, 0x66, 0x42, 0xDA, 0x99, 0xE4, 0x1C, 0xCF, 0xC1, 0x43, 0x0A, 0x46,\n0x5B, 0xAE, 0xFD, 0xC1, 0x27, 0x22, 0x8B, 0x05, 0x43, 0xC8, 0xE3, 0x89, 0xF3, 0x8F, 0x2E, 0x23,\n0x94, 0x9B, 0x1C, 0x84, 0xE7, 0x83, 0xFF, 0x86, 0x08, 0xDA, 0x1F, 0x26, 0x51, 0x7C, 0xF0, 0x2A,\n0x38, 0xBD, 0x41, 0x0E, 0x8C, 0x78, 0x2C, 0xD3, 0x90, 0x1C, 0x72, 0xF8, 0x8F, 0x15, 0x25, 0x99,\n0x5F, 0x71, 0x8A, 0xCA, 0x57, 0x57, 0x32, 0x10, 0xE4, 0x21, 0x05, 0xA7, 0xE5, 0x5D, 0x65, 0x9B,\n0x5F, 0xA1, 0x21, 0xC2, 0x96, 0x77, 0xBF, 0x65, 0x8C, 0x72, 0xB3, 0x83, 0x64, 0x84, 0xD8, 0x96,\n0x61, 0xD7, 0xA1, 0x7F, 0x6E, 0xD1, 0x64, 0xFE, 0x71, 0x4B, 0x66, 0x38, 0x0B, 0xD9, 0xBE, 0x19,\n0xE2, 0x7F, 0x1C, 0x87, 0x65, 0x7A, 0xB9, 0x0E, 0x6B, 0x7B, 0xCB, 0x8A, 0xD3, 0x8F, 0xAF, 0x34,\n0x20, 0x97, 0x52, 0xB5, 0x10, 0x1C, 0x28, 0x09, 0x08, 0x69, 0x20, 0x7C, 0xA6, 0xCE, 0x01, 0xB2,\n0xEA, 0xA8, 0x50, 0xCB, 0x48, 0xE5, 0x8A, 0x83, 0xF0, 0x7C, 0xF0, 0x0D, 0x11, 0x29, 0xF5, 0x1E,\n0xF6, 0x32, 0xC5, 0x62, 0xF8, 0x60, 0x32, 0x74, 0x7E, 0x8A, 0xC5, 0x4D, 0xB2, 0x90, 0x82, 0x8C,\n0x2E, 0xD3, 0x31, 0x1F, 0xB8, 0x6F, 0x45, 0x1C, 0x1F, 0x5F, 0x29, 0x42, 0x5A, 0xD1, 0xB9, 0x54,\n0x0C, 0x04, 0xA3, 0x24, 0xA7, 0x58, 0xDB, 0xFB, 0x4E, 0xB1, 0x76, 0x0C, 0x21, 0x9B, 0x45, 0xBF,\n0x44, 0xF1, 0x81, 0x08, 0xB5, 0x5C, 0x22, 0x93, 0x26, 0x44, 0x77, 0x10, 0xE2, 0x35, 0x79, 0x42,\n0xA4, 0x59, 0x78, 0x38, 0xEC, 0x91, 0x84, 0x98, 0xF8, 0xD8, 0x29, 0x84, 0xD4, 0xFF, 0xC3, 0x87,\n0x88, 0x20, 0x24, 0xF4, 0xD0, 0x23, 0x0C, 0xA6, 0x83, 0x51, 0x6E, 0x6D, 0xCB, 0x11, 0xF2, 0x55,\n0x00, 0x61, 0x08, 0x69, 0x9D, 0x4A, 0x83, 0x85, 0xB8, 0x15, 0x27, 0x28, 0x62, 0xD9, 0x74, 0xDC,\n0xDE, 0x93, 0x90, 0x9D, 0x08, 0x84, 0x18, 0xF8, 0xD8, 0xEF, 0x0F, 0x07, 0x34, 0x41, 0x0C, 0x7C,\n0xF0, 0xCA, 0x15, 0x07, 0xA1, 0xF8, 0xE0, 0x09, 0xE9, 0x1C, 0x1F, 0x87, 0xBD, 0x23, 0x64, 0x63,\n0xCC, 0x3F, 0x76, 0x4E, 0xCB, 0x7B, 0xE8, 0x78, 0xDC, 0x3A, 0x1D, 0x19, 0x3E, 0xB0, 0x8C, 0x17,\n0x33, 0xAA, 0x6B, 0xFE, 0x11, 0xC4, 0xF0, 0xF1, 0x43, 0xC6, 0x4F, 0x86, 0x0F, 0x91, 0x23, 0x20,\n0x22, 0x23, 0xA1, 0x04, 0x8D, 0x10, 0xC2, 0x3F, 0xEE, 0x49, 0x48, 0xF8, 0x5C, 0x37, 0x66, 0x3E,\n0x64, 0x38, 0x42, 0xBA, 0xF5, 0x03, 0xC1, 0x07, 0xA7, 0x5C, 0x73, 0x90, 0xEC, 0xDF, 0x94, 0xE7,\n0x99, 0x89, 0x8F, 0x1E, 0x8F, 0x7E, 0xEC, 0xA5, 0x51, 0xC8, 0xF0, 0xB1, 0xBB, 0x4B, 0xA6, 0xBE,\n0x0D, 0x3A, 0x9A, 0x1B, 0x85, 0x65, 0xF4, 0x45, 0xC2, 0x18, 0x12, 0x3C, 0x55, 0x3A, 0xFF, 0x60,\n0x08, 0xF9, 0xE9, 0xEC, 0xC3, 0xDD, 0xFD, 0xA4, 0xF8, 0x68, 0x1B, 0xC7, 0xAB, 0xD2, 0x08, 0x71,\n0xFE, 0xE1, 0xDF, 0x00, 0xC1, 0xC7, 0xDD, 0x08, 0xD9, 0xD5, 0xF8, 0x5D, 0xBC, 0x06, 0x3C, 0x1C,\n0x1F, 0x20, 0x84, 0xE0, 0x83, 0xD5, 0xBC, 0x83, 0xE4, 0xD9, 0xFD, 0x08, 0xE9, 0xA4, 0x7E, 0x25,\n0xDA, 0xFB, 0xF1, 0x28, 0x6F, 0xDB, 0xC8, 0x07, 0xE1, 0x21, 0x24, 0x1F, 0x14, 0x21, 0x1E, 0x8D,\n0x52, 0x86, 0x48, 0x88, 0xD0, 0xE6, 0x34, 0xED, 0x48, 0xD5, 0x6B, 0x9D, 0x0F, 0x0F, 0x87, 0xDD,\n0x43, 0x5A, 0xA8, 0x51, 0x0C, 0x04, 0xDF, 0x4E, 0x0F, 0x8C, 0x6C, 0x2D, 0x7C, 0x40, 0x4B, 0x42,\n0x84, 0x7F, 0x80, 0x10, 0xBD, 0x91, 0xBE, 0x3F, 0x0C, 0x03, 0xB5, 0x2C, 0x82, 0x0F, 0x42, 0xB1,\n0x83, 0x28, 0x7C, 0xD8, 0x09, 0xC9, 0x3B, 0xB5, 0x7C, 0x75, 0xC0, 0xDB, 0x94, 0x77, 0xBC, 0x61,\n0xF8, 0xD0, 0x01, 0xE1, 0xF9, 0x60, 0x08, 0xD9, 0x86, 0xD8, 0x1A, 0x04, 0xEB, 0x98, 0x6C, 0x39,\n0xF8, 0xF9, 0x15, 0xA4, 0xF3, 0x21, 0x58, 0x0C, 0x88, 0x80, 0x10, 0x85, 0x0F, 0xA8, 0xF7, 0x90,\n0xB9, 0x51, 0x86, 0xC3, 0x1F, 0x1E, 0x09, 0x3E, 0xEE, 0x41, 0x48, 0x5D, 0xEF, 0x28, 0x42, 0xF6,\n0x7B, 0x44, 0x4E, 0x4F, 0x48, 0x37, 0xDB, 0x6A, 0xEB, 0xA2, 0xE4, 0x9C, 0xD4, 0x75, 0x07, 0xC9,\n0xFE, 0x4B, 0x42, 0x88, 0xEA, 0x1F, 0x7B, 0x8C, 0xFD, 0xA3, 0x42, 0x48, 0xF4, 0x5F, 0x41, 0xD7,\n0x2E, 0x19, 0xAF, 0x6F, 0xCC, 0x07, 0x08, 0xD9, 0xAA, 0xFE, 0x81, 0x20, 0x73, 0x3B, 0x71, 0xAA,\n0x8E, 0x01, 0x3E, 0x20, 0x0B, 0x1F, 0xC1, 0x3F, 0xFC, 0x83, 0x91, 0x0F, 0xE4, 0x21, 0xC8, 0xD5,\n0x53, 0x6C, 0xC3, 0x52, 0xC5, 0x12, 0x94, 0x6F, 0x09, 0x3C, 0x6E, 0x3F, 0xCD, 0xDA, 0x8D, 0x25,\n0x3F, 0xCE, 0xFB, 0x87, 0x8F, 0x1B, 0x0C, 0xA5, 0xDC, 0xDB, 0x45, 0xFE, 0x41, 0x2B, 0x9F, 0x76,\n0x10, 0xB6, 0x24, 0x46, 0x10, 0x02, 0xFF, 0xC0, 0xD0, 0x8A, 0x59, 0x52, 0xE1, 0x88, 0x75, 0xF3,\n0xF2, 0x95, 0x4E, 0x08, 0xFC, 0x03, 0x01, 0x36, 0x6C, 0x08, 0x40, 0x85, 0x0F, 0x9D, 0x90, 0xB1,\n0x7D, 0x04, 0x42, 0x7E, 0x1A, 0xF9, 0x00, 0x21, 0x57, 0x0F, 0xE8, 0x02, 0x30, 0x4A, 0x53, 0x22,\n0xF2, 0x79, 0x7B, 0x57, 0x42, 0xEA, 0xF4, 0x83, 0x9D, 0x6D, 0x7F, 0x78, 0xFF, 0xC0, 0x98, 0x25,\n0x44, 0xF1, 0x0F, 0x92, 0x90, 0x31, 0x20, 0x19, 0x2B, 0x82, 0x90, 0xAE, 0x7B, 0x3C, 0x24, 0x80,\n0x80, 0x10, 0x1B, 0x1F, 0xB5, 0x42, 0x04, 0xC7, 0x07, 0x45, 0xC8, 0xE0, 0x1C, 0xC0, 0x63, 0xD4,\n0x10, 0x29, 0xA7, 0xF2, 0x0F, 0x86, 0x90, 0x8F, 0xBF, 0x99, 0x3B, 0x83, 0xDE, 0xD6, 0x89, 0x28,\n0x0A, 0xB7, 0x4A, 0x9F, 0x55, 0x84, 0x92, 0xAA, 0x8A, 0x92, 0x0D, 0x69, 0xD3, 0x1D, 0x42, 0x51,\n0x58, 0xB3, 0xCA, 0x9E, 0x45, 0x85, 0x40, 0xC0, 0x22, 0x08, 0xB7, 0x61, 0x9F, 0xC5, 0x5B, 0x95,\n0x3D, 0x44, 0x2A, 0x9B, 0x0A, 0xB1, 0x7C, 0xA2, 0x2C, 0xFA, 0x4B, 0x39, 0x9E, 0x19, 0xE7, 0xD8,\n0x33, 0x63, 0xDF, 0x7B, 0x49, 0x02, 0x9C, 0x71, 0xC6, 0x4E, 0x9B, 0x97, 0x67, 0x4F, 0xE6, 0xF3,\n0x99, 0x3B, 0xD7, 0x71, 0x11, 0x7F, 0xD0, 0x40, 0xF6, 0x88, 0xE8, 0xF8, 0xA0, 0xBE, 0xCB, 0x23,\n0xF2, 0x9D, 0x0B, 0x3F, 0x52, 0xC0, 0x05, 0xFF, 0x38, 0x19, 0x21, 0x65, 0xF4, 0xC9, 0x72, 0x32,\n0xAB, 0x7B, 0x7A, 0x37, 0x2E, 0xF3, 0x49, 0x27, 0x21, 0xBB, 0x45, 0xCA, 0x87, 0x3D, 0x21, 0x92,\n0x71, 0x10, 0xAB, 0x7F, 0xC8, 0xD3, 0xBD, 0x1C, 0x13, 0x82, 0x8F, 0x77, 0x3C, 0xBC, 0x46, 0x1C,\n0x42, 0x42, 0xD2, 0xF4, 0x47, 0x4E, 0xA7, 0xE3, 0x23, 0x9F, 0x10, 0xE1, 0x1D, 0x48, 0x33, 0x88,\n0x80, 0x90, 0xBC, 0x7F, 0xFC, 0xDC, 0xA1, 0x6E, 0xFF, 0xD8, 0xE3, 0x51, 0x9B, 0x88, 0x2B, 0x7A,\n0x3C, 0x98, 0x10, 0xE9, 0x8B, 0x3F, 0x22, 0x44, 0x04, 0x3E, 0x4E, 0x44, 0x48, 0x09, 0x03, 0xD1,\n0x10, 0x42, 0x3E, 0x32, 0x80, 0x90, 0x10, 0x4B, 0x78, 0x6E, 0x27, 0x84, 0x0E, 0x62, 0x78, 0x5B,\n0x7B, 0x42, 0x24, 0xA4, 0x3F, 0xD2, 0x72, 0xDB, 0x41, 0xC8, 0x94, 0xC3, 0xD4, 0x48, 0xE5, 0xF1,\n0xC3, 0x0F, 0x39, 0x54, 0xAF, 0xE7, 0xAE, 0x20, 0xAE, 0x99, 0x32, 0x4C, 0xF9, 0xE8, 0xEA, 0xC2,\n0xF9, 0x61, 0x13, 0xC7, 0x56, 0x1E, 0x11, 0x3E, 0xD7, 0xF1, 0x41, 0xB9, 0xEC, 0x64, 0x92, 0x34,\n0xE4, 0x0E, 0x47, 0x80, 0x0B, 0x7C, 0x9C, 0x86, 0x90, 0x9E, 0x3F, 0xBD, 0x96, 0xE7, 0x23, 0x5B,\n0x98, 0x32, 0x4C, 0xFC, 0x63, 0x77, 0x3C, 0x42, 0x08, 0x08, 0xF8, 0x38, 0x19, 0x21, 0xE7, 0xE0,\n0x83, 0x78, 0x24, 0x88, 0xA4, 0x84, 0xF4, 0xFE, 0xA9, 0xC2, 0xEE, 0x61, 0xD6, 0xD8, 0xE4, 0x1F,\n0x06, 0x0F, 0xA9, 0xA3, 0x72, 0x57, 0xDC, 0x9A, 0xA3, 0x2C, 0x9A, 0x08, 0xD3, 0x1F, 0x3D, 0xCA,\n0xF4, 0xF6, 0x7D, 0xFA, 0xE3, 0x95, 0x26, 0x82, 0x95, 0x2F, 0x3A, 0x3E, 0x28, 0xE6, 0x43, 0x58,\n0x92, 0xB1, 0x15, 0x8F, 0x42, 0xE0, 0xE3, 0x04, 0x84, 0x94, 0x65, 0xCF, 0x27, 0x9B, 0x4D, 0x7F,\n0xF4, 0x11, 0xB2, 0x13, 0xC6, 0x57, 0x07, 0x12, 0x42, 0x40, 0xF0, 0xFC, 0x44, 0x84, 0x30, 0xFD,\n0xD1, 0x7D, 0xA8, 0x53, 0x81, 0x0F, 0x6B, 0x20, 0x22, 0xF3, 0x61, 0x22, 0x24, 0x71, 0x0E, 0x56,\n0x69, 0xA8, 0x9E, 0x0B, 0x3F, 0xFA, 0x13, 0x22, 0x4D, 0x28, 0x18, 0x80, 0x70, 0xBA, 0x57, 0xC5,\n0x07, 0x09, 0x09, 0x98, 0xD2, 0x3F, 0xF2, 0x78, 0xF0, 0xBB, 0xE9, 0x09, 0x1F, 0x27, 0x25, 0xE4,\n0x86, 0x92, 0x09, 0x61, 0xFA, 0x23, 0x4F, 0x48, 0x9C, 0x10, 0xD9, 0x09, 0xFE, 0x61, 0x14, 0x01,\n0x21, 0x75, 0x87, 0xAB, 0xDA, 0xC7, 0x5D, 0xFB, 0xF2, 0x76, 0xD2, 0x91, 0x2D, 0x48, 0xAA, 0x6B,\n0xF8, 0xA0, 0x0E, 0xC6, 0xC3, 0x42, 0x48, 0x23, 0x37, 0xE8, 0x96, 0xB8, 0x82, 0x85, 0x34, 0x26,\n0xAF, 0x30, 0xBE, 0x12, 0xD4, 0x95, 0xFE, 0x20, 0x17, 0xCC, 0x17, 0xE6, 0x08, 0x91, 0xDE, 0xBF,\n0xFE, 0xAA, 0x23, 0xED, 0xA3, 0xD3, 0x41, 0xDC, 0x5A, 0xC5, 0x07, 0x75, 0x32, 0xFF, 0x20, 0x21,\n0xC4, 0x03, 0x7C, 0xF4, 0xF5, 0x1C, 0x26, 0x44, 0x18, 0x7F, 0x1C, 0x55, 0x35, 0x20, 0x47, 0x7E,\n0x5B, 0x47, 0xC8, 0x79, 0x63, 0x7A, 0x57, 0x00, 0xE4, 0xF6, 0x56, 0xC5, 0x07, 0x55, 0x1E, 0x2D,\n0xFE, 0x90, 0xE3, 0x90, 0xD0, 0xA5, 0xF2, 0x78, 0x78, 0x35, 0xCE, 0xD6, 0xE0, 0x43, 0x54, 0xC2,\n0x07, 0xF1, 0xE0, 0xD6, 0x2B, 0xE3, 0x90, 0x57, 0x1D, 0x1F, 0x24, 0x84, 0x26, 0x82, 0xCD, 0x16,\n0xDF, 0x6E, 0x45, 0x4E, 0xBC, 0x66, 0x1A, 0x3E, 0xEC, 0x84, 0x8C, 0x0D, 0xFE, 0x41, 0x42, 0x6E,\n0x14, 0xFE, 0xC1, 0xE2, 0x08, 0x39, 0x57, 0xFB, 0x87, 0x5D, 0x1E, 0x10, 0x3E, 0x3F, 0xAE, 0x87,\n0x30, 0xFD, 0x21, 0x15, 0x9F, 0x54, 0x67, 0x7A, 0x50, 0xD2, 0x11, 0x0D, 0x44, 0x98, 0xEE, 0x65,\n0x9F, 0x82, 0x52, 0x44, 0x82, 0x89, 0x34, 0xD2, 0x1F, 0x3F, 0x9A, 0x08, 0x09, 0x78, 0xD0, 0x31,\n0x22, 0x0B, 0x41, 0x01, 0x2C, 0x2A, 0x3E, 0xA8, 0xE4, 0x8E, 0x8A, 0x8C, 0x9B, 0x08, 0x7B, 0xE3,\n0xB9, 0x0A, 0x0F, 0xEA, 0x20, 0xFF, 0x30, 0x10, 0x32, 0x9D, 0xF7, 0xFB, 0x07, 0x13, 0x22, 0xE4,\n0xE3, 0xF2, 0xD8, 0xAA, 0x00, 0x79, 0xB9, 0x3C, 0xB2, 0x80, 0x31, 0x10, 0x61, 0xFA, 0x43, 0x01,\n0x08, 0x08, 0x09, 0x88, 0x00, 0x0F, 0x59, 0x65, 0x69, 0x8E, 0xD0, 0xE9, 0x1F, 0x16, 0x42, 0x1A,\n0xA1, 0x06, 0x4A, 0x44, 0x06, 0x43, 0x75, 0xDE, 0xE9, 0x47, 0xA5, 0x26, 0x1F, 0x09, 0x1D, 0xB4,\n0x12, 0xFE, 0x46, 0xCF, 0x07, 0x93, 0xEA, 0xD5, 0x3E, 0x71, 0xC7, 0x6B, 0x35, 0x77, 0x7A, 0x5F,\n0xCB, 0x7C, 0xD8, 0x03, 0x11, 0xAB, 0x7F, 0x90, 0x10, 0x4E, 0x5F, 0x4D, 0xE4, 0x9E, 0x43, 0x42,\n0xB4, 0xF6, 0x61, 0x83, 0xE8, 0xE5, 0xD7, 0xB3, 0x6F, 0xB1, 0x3A, 0xB6, 0x83, 0xD4, 0x29, 0x43,\n0xF0, 0x21, 0xE1, 0xC1, 0x84, 0x48, 0xC9, 0xF4, 0xA0, 0xAC, 0xF2, 0x24, 0xF6, 0x41, 0x31, 0xFE,\n0x88, 0x3A, 0x15, 0xB7, 0xD9, 0xCD, 0x9C, 0x87, 0x70, 0xFA, 0x4A, 0x8D, 0x08, 0x03, 0x73, 0x42,\n0x12, 0x14, 0x65, 0xD6, 0xC9, 0x87, 0x4E, 0xED, 0xDB, 0xFC, 0x90, 0x68, 0x6E, 0x12, 0x16, 0x2C,\n0xE4, 0xC3, 0x44, 0xC8, 0xE1, 0xE9, 0x8F, 0xAE, 0x84, 0x08, 0xF8, 0x90, 0xFD, 0x83, 0x09, 0x91,\n0xC0, 0x87, 0xDD, 0x40, 0x64, 0x9C, 0xBE, 0x85, 0x83, 0x2C, 0x8E, 0xEF, 0x20, 0x9E, 0x10, 0x4C,\n0xEF, 0xBE, 0x93, 0x00, 0x61, 0x52, 0xDD, 0xFF, 0x6D, 0xE7, 0x1B, 0x2D, 0x20, 0xE5, 0xA9, 0xF8,\n0x60, 0x20, 0x42, 0x3C, 0xB8, 0x22, 0x28, 0x9C, 0xF5, 0x85, 0xF8, 0xED, 0x28, 0x3D, 0x21, 0x8E,\n0x08, 0xB7, 0xB8, 0xC2, 0xF5, 0x6B, 0x64, 0x20, 0x58, 0xF4, 0x78, 0x30, 0x21, 0xD2, 0x44, 0x9A,\n0x3E, 0x98, 0x7A, 0x09, 0x44, 0x3E, 0x8E, 0x4B, 0xC8, 0xD8, 0x66, 0x1F, 0x24, 0x84, 0xFE, 0x21,\n0x16, 0xF7, 0x2D, 0x43, 0xC7, 0xC7, 0x4E, 0xD9, 0x3F, 0x4F, 0xE7, 0x20, 0x18, 0xE6, 0xE9, 0x75,\n0x35, 0x74, 0xDF, 0xFE, 0x50, 0x96, 0x6A, 0x32, 0xAB, 0x34, 0xD9, 0xB5, 0x19, 0x0F, 0xF0, 0x61,\n0x21, 0x84, 0x0E, 0x41, 0x23, 0x21, 0x16, 0x41, 0x44, 0x04, 0xC3, 0x2B, 0x8B, 0xF0, 0xED, 0x8F,\n0xBF, 0x6A, 0x04, 0xB8, 0x8E, 0x9F, 0x12, 0x94, 0x57, 0xF0, 0x61, 0x11, 0xBF, 0xFD, 0xC1, 0x3D,\n0x4D, 0x5C, 0x90, 0x26, 0x42, 0x3E, 0x54, 0xFE, 0xFA, 0xE9, 0xA7, 0x9F, 0x9A, 0x2F, 0x2F, 0x41,\n0x51, 0xC8, 0xBD, 0xAE, 0x04, 0x1F, 0x73, 0x83, 0x96, 0x8E, 0x8F, 0x53, 0x38, 0xC8, 0x0E, 0x0E,\n0xB2, 0x18, 0x6A, 0x75, 0x85, 0x3D, 0x30, 0x00, 0xB2, 0x58, 0xCE, 0x27, 0x7A, 0x15, 0xCB, 0x79,\n0x79, 0x53, 0xEA, 0x35, 0x2D, 0x7D, 0x6B, 0x86, 0xC2, 0xA5, 0x53, 0xE3, 0xD9, 0xA7, 0xE3, 0xF1,\n0x4C, 0xB3, 0xA0, 0x5C, 0x7C, 0xFA, 0xEC, 0x6E, 0xA1, 0xA8, 0xD3, 0xD7, 0xCF, 0x5F, 0xDF, 0x3F,\n0x56, 0x37, 0x5C, 0xFF, 0x45, 0xF3, 0xC0, 0x2B, 0xEF, 0x7F, 0x7E, 0xFD, 0x2D, 0xDC, 0x65, 0x14,\n0x0F, 0x94, 0x7A, 0xED, 0x56, 0x89, 0xF0, 0x33, 0xFC, 0x33, 0xFC, 0x5B, 0x9D, 0x70, 0x2F, 0xC7,\n0xFB, 0x67, 0x10, 0xFE, 0x35, 0x0E, 0x40, 0xF3, 0xC0, 0x81, 0xCE, 0x2E, 0x78, 0xF8, 0xF2, 0x22,\n0x45, 0xEA, 0xFC, 0x30, 0xC2, 0xA7, 0x83, 0x8F, 0x0B, 0x9A, 0x2A, 0x8A, 0x13, 0xFF, 0xE2, 0x81,\n0x46, 0xB7, 0xCB, 0xAB, 0x85, 0x5E, 0xE8, 0xC3, 0x57, 0x43, 0xB5, 0x10, 0xA4, 0x5F, 0xE9, 0x35,\n0x5A, 0x5C, 0xEF, 0xB4, 0xAA, 0x6E, 0x75, 0xB2, 0xAC, 0x0E, 0xB3, 0xD0, 0x2C, 0xEE, 0x6F, 0x4D,\n0x99, 0x74, 0x37, 0x18, 0x94, 0x83, 0x9B, 0x81, 0x5E, 0x65, 0x39, 0xB6, 0x68, 0x36, 0x7E, 0x7E,\n0x78, 0xC0, 0xA2, 0xD4, 0x0F, 0xF7, 0xEB, 0xC7, 0xC7, 0x95, 0x66, 0xF1, 0xE5, 0x69, 0xB3, 0xF9,\n0xB0, 0xDD, 0x74, 0x14, 0x08, 0x75, 0xA8, 0xFC, 0xB3, 0xA7, 0xA7, 0x55, 0xF5, 0xEF, 0x34, 0x5A,\n0x61, 0xB9, 0xBF, 0x77, 0x7B, 0xAF, 0x2B, 0x10, 0x0E, 0xD7, 0x22, 0x34, 0xBD, 0x41, 0x37, 0x38,\n0xF3, 0xDD, 0x9D, 0x99, 0x34, 0x2F, 0x96, 0xEC, 0x1B, 0xD2, 0xE2, 0xA2, 0x5D, 0xBD, 0x16, 0x57,\n0x06, 0x11, 0x10, 0x9D, 0xAA, 0xC8, 0x42, 0xA9, 0x25, 0x76, 0xBC, 0x50, 0xFB, 0x47, 0xF1, 0x6E,\n0x7A, 0x66, 0xD1, 0x74, 0x70, 0x83, 0x76, 0x07, 0x20, 0x16, 0x8D, 0x2F, 0xC6, 0xAA, 0x05, 0x9A,\n0xCD, 0x1C, 0x21, 0x1A, 0x3D, 0x63, 0xB9, 0xAF, 0xB4, 0x42, 0x1F, 0xD6, 0x14, 0xE0, 0x81, 0x0E,\n0xFF, 0xB4, 0xFD, 0x80, 0x92, 0x2E, 0x9B, 0x0F, 0x9B, 0xB0, 0x46, 0xED, 0x2A, 0xAC, 0xF0, 0xF2,\n0xCD, 0x93, 0x86, 0x0F, 0x08, 0x7B, 0xE1, 0x76, 0xE7, 0x41, 0xCF, 0x88, 0x3B, 0x5C, 0xB6, 0x80,\n0xB4, 0xF8, 0x6E, 0x6F, 0xD2, 0xC0, 0xF8, 0xF1, 0xCE, 0xD1, 0xF5, 0x95, 0x5A, 0xA2, 0x9F, 0x2D,\n0x2D, 0x7C, 0x8C, 0xAE, 0x74, 0xFA, 0xF2, 0xEA, 0x6A, 0x68, 0x04, 0x64, 0x34, 0x1A, 0xEE, 0x94,\n0xBA, 0x06, 0x1F, 0x90, 0xF2, 0x18, 0x27, 0x67, 0xC6, 0x06, 0xBC, 0xB1, 0xA9, 0x26, 0xA4, 0xD2,\n0x85, 0x54, 0x63, 0x99, 0xCD, 0x3C, 0x21, 0x9A, 0x12, 0xF8, 0x80, 0xD0, 0x39, 0x55, 0x67, 0xF8,\n0x27, 0xAF, 0x0D, 0xBA, 0x7E, 0xC0, 0x00, 0xC5, 0xAD, 0x3C, 0x25, 0xE1, 0x29, 0x2B, 0xFF, 0x7A,\n0x12, 0x22, 0x68, 0x7D, 0x6F, 0x23, 0xC4, 0x1F, 0xAE, 0xAE, 0x71, 0xA0, 0x9B, 0xC1, 0xE9, 0x08,\n0xA1, 0xB4, 0x84, 0x5C, 0x43, 0x06, 0x42, 0x86, 0xEC, 0xFE, 0x1A, 0x44, 0x74, 0x80, 0xF0, 0xCD,\n0x40, 0xDF, 0x4E, 0xA3, 0xF3, 0xA5, 0xE7, 0x43, 0x67, 0x22, 0xC5, 0xC9, 0xF9, 0x08, 0xBA, 0xB9,\n0x70, 0x9F, 0x71, 0x7F, 0x0D, 0x3C, 0x82, 0xC6, 0x9A, 0x1E, 0x46, 0x3E, 0x30, 0xCA, 0x5A, 0x19,\n0xF8, 0x00, 0x21, 0x5B, 0xBA, 0x44, 0x93, 0x15, 0xFE, 0x14, 0x0B, 0xF9, 0xD8, 0x3C, 0x89, 0xEF,\n0xEF, 0x10, 0xBD, 0xAF, 0xE5, 0xE0, 0x95, 0xCB, 0xAC, 0x96, 0xA2, 0x71, 0x50, 0x95, 0xFB, 0xD6,\n0xB4, 0xC9, 0xF8, 0x11, 0x9F, 0x4D, 0x96, 0x3A, 0x3E, 0x4C, 0x84, 0x5C, 0x59, 0xE4, 0x1D, 0xE4,\n0x13, 0xF5, 0xAB, 0x49, 0x88, 0x6C, 0x1F, 0xE0, 0x43, 0x4D, 0x48, 0x71, 0x6B, 0xE4, 0xA3, 0xB4,\n0xF2, 0x41, 0xB9, 0xE8, 0x22, 0x54, 0xF9, 0x1A, 0xC1, 0x3C, 0xA5, 0x20, 0x04, 0xE1, 0x07, 0xD0,\n0xD0, 0x78, 0x48, 0xF8, 0x25, 0x3A, 0x3A, 0x44, 0x0F, 0x21, 0x15, 0x59, 0x56, 0xC0, 0x07, 0xA5,\n0x00, 0x64, 0x75, 0x4F, 0xFD, 0xA0, 0xD8, 0xFF, 0x59, 0xE3, 0x78, 0x15, 0x8D, 0x43, 0x3E, 0xCC,\n0x84, 0x94, 0x56, 0x42, 0x0A, 0x1D, 0x1F, 0x81, 0x90, 0x6B, 0x2D, 0x1F, 0x06, 0x0F, 0xF9, 0xA4,\n0x02, 0xE4, 0x13, 0xAD, 0x7F, 0x8C, 0xC2, 0x5A, 0xE6, 0xC3, 0xF9, 0x47, 0x44, 0xC8, 0x3C, 0xF7,\n0xA0, 0x7F, 0x9C, 0x98, 0x0F, 0x06, 0x8C, 0xE3, 0x59, 0x18, 0x48, 0xF9, 0x6A, 0x16, 0x6D, 0x7B,\n0xFF, 0xA0, 0xA4, 0x0E, 0x46, 0xFF, 0x08, 0x71, 0x88, 0xD4, 0x81, 0x9F, 0x2A, 0x91, 0x10, 0x1F,\n0x6C, 0x04, 0x20, 0xF0, 0x84, 0xAB, 0x3A, 0x26, 0xF9, 0x91, 0x2F, 0xF7, 0x71, 0xC8, 0x4A, 0xF4,\n0x0F, 0x12, 0x22, 0x7A, 0xC8, 0x0C, 0x80, 0x50, 0x68, 0x85, 0xFE, 0xC6, 0x19, 0x40, 0xFF, 0x26,\n0x21, 0xFD, 0x7D, 0xA7, 0xD5, 0xCD, 0x0A, 0x99, 0x10, 0x9E, 0xE5, 0x75, 0xFA, 0xC4, 0x01, 0x02,\n0x42, 0x8C, 0xBA, 0x3C, 0xD7, 0xF8, 0x87, 0xD6, 0x43, 0xE6, 0xFF, 0x02, 0x1F, 0x54, 0xC9, 0xB1,\n0xB4, 0x5B, 0x27, 0x4F, 0x67, 0x91, 0x84, 0xE1, 0xD5, 0x9A, 0xF6, 0x51, 0x47, 0xEA, 0x7D, 0xFE,\n0xB1, 0xA2, 0x7F, 0xD0, 0x43, 0x1A, 0x16, 0x92, 0x18, 0xC8, 0x53, 0xA4, 0xD5, 0x4A, 0xE3, 0x1F,\n0x94, 0xE0, 0x21, 0xB3, 0x48, 0x71, 0x83, 0x44, 0x0D, 0x55, 0x0E, 0x0E, 0x23, 0xE4, 0xCE, 0x46,\n0xC8, 0x7C, 0x29, 0x85, 0xE7, 0x94, 0xEC, 0x21, 0x2F, 0x09, 0x1D, 0x5F, 0x0A, 0x7C, 0x78, 0x40,\n0x20, 0x4D, 0xF8, 0x31, 0x6A, 0x54, 0x97, 0x22, 0x1F, 0x6A, 0x42, 0x0A, 0x23, 0x1F, 0x77, 0x46,\n0x3E, 0x72, 0x93, 0x59, 0x33, 0x9E, 0x11, 0x51, 0x39, 0xD7, 0x88, 0xE3, 0x0F, 0xED, 0x30, 0xEB,\n0x3E, 0x51, 0xDF, 0x6C, 0xEC, 0x2A, 0xE6, 0x03, 0x02, 0x12, 0x91, 0x85, 0xD0, 0x40, 0xC8, 0x47,\n0xD3, 0x43, 0xBA, 0x09, 0x24, 0x1F, 0xD4, 0x83, 0x10, 0x7E, 0x24, 0x84, 0x44, 0x0D, 0x72, 0xC1,\n0x86, 0x8A, 0x0D, 0xC4, 0x8E, 0x48, 0x69, 0x9D, 0xCC, 0x2A, 0x64, 0x3E, 0xA8, 0x7E, 0x0F, 0xB9,\n0x6C, 0x47, 0x0A, 0xB2, 0x00, 0xC6, 0x97, 0x01, 0x10, 0xBB, 0x87, 0x08, 0xD3, 0x57, 0x91, 0x96,\n0x3D, 0xFE, 0xC1, 0x26, 0x3B, 0x3D, 0x1F, 0xD1, 0x64, 0x56, 0xEA, 0x20, 0xD9, 0xAB, 0x19, 0x7B,\n0x0C, 0xE4, 0x3E, 0xD1, 0x33, 0x09, 0x49, 0x1D, 0xE4, 0x8F, 0xA7, 0x8C, 0x38, 0x8D, 0x15, 0xC5,\n0xE6, 0xE4, 0x43, 0xEB, 0x21, 0xF7, 0x39, 0xA9, 0xFC, 0x83, 0x8A, 0x1A, 0xA4, 0xD9, 0x42, 0xE5,\n0xCD, 0xE0, 0xDF, 0x27, 0xA4, 0x10, 0xF9, 0xA0, 0xFA, 0x3C, 0x64, 0x91, 0x07, 0xE3, 0xCB, 0x1E,\n0x3E, 0xE8, 0x20, 0x90, 0xC6, 0x3F, 0xB8, 0x31, 0xEA, 0x48, 0x88, 0x5C, 0x92, 0x8F, 0x8C, 0x87,\n0xCC, 0x03, 0x13, 0xB4, 0x8F, 0x62, 0x6E, 0x4E, 0x7F, 0x98, 0xD4, 0x91, 0xB9, 0x22, 0x1E, 0x9C,\n0xA2, 0x49, 0xE3, 0x0F, 0x69, 0x32, 0x8B, 0xE1, 0x47, 0x8C, 0xC8, 0x2A, 0x0F, 0x08, 0xA3, 0x89,\n0x24, 0x10, 0xD9, 0xB6, 0xC2, 0x8F, 0x7A, 0x93, 0xAF, 0x91, 0xE3, 0x90, 0x15, 0xC0, 0xBC, 0xEF,\n0x22, 0x44, 0xF6, 0x0F, 0x6A, 0x8F, 0x06, 0x31, 0xF1, 0xBE, 0x32, 0x48, 0xF4, 0xAF, 0x26, 0x44,\n0xD8, 0x7F, 0xC8, 0x87, 0xCE, 0x43, 0xC8, 0x87, 0xC2, 0x44, 0x88, 0x07, 0x1D, 0x24, 0x21, 0x24,\n0xFF, 0x56, 0x6F, 0x8B, 0xB7, 0xC5, 0xFE, 0x27, 0x8B, 0xDD, 0xB9, 0xC8, 0x47, 0xDE, 0x43, 0x78,\n0x90, 0xCB, 0xE2, 0x8C, 0x3A, 0x39, 0x1F, 0x54, 0x39, 0xA8, 0x07, 0x12, 0x17, 0x6D, 0x07, 0x99,\n0xE5, 0x35, 0xCE, 0xE3, 0x41, 0xFF, 0x88, 0x85, 0xDE, 0x2A, 0x85, 0xE7, 0x14, 0x13, 0x22, 0x5C,\n0x42, 0x7A, 0xB0, 0x43, 0x7F, 0xAC, 0xB2, 0xFE, 0x04, 0x34, 0xF3, 0x7A, 0x26, 0x21, 0x02, 0x1F,\n0x8C, 0xD4, 0x21, 0x8E, 0xB3, 0xB0, 0xA2, 0x7F, 0xFC, 0x37, 0x84, 0xCC, 0xFB, 0xFD, 0x83, 0x81,\n0x88, 0x90, 0xFE, 0x70, 0xDD, 0x58, 0xF6, 0x10, 0x00, 0x41, 0x07, 0x21, 0x21, 0x92, 0xFD, 0x2C,\n0x46, 0x0D, 0x68, 0xCE, 0x13, 0x42, 0x16, 0x9C, 0xBE, 0xCA, 0x13, 0xC2, 0xE3, 0x0C, 0x7C, 0xFC,\n0xEB, 0xFE, 0x41, 0x42, 0x68, 0x21, 0xB3, 0x7A, 0x35, 0xA3, 0x64, 0x42, 0x62, 0xFF, 0x10, 0x27,\n0xB3, 0x00, 0x42, 0x0F, 0x21, 0xE0, 0xA1, 0x59, 0xFA, 0xF8, 0xC0, 0x2F, 0x56, 0x29, 0x1E, 0x48,\n0x0F, 0x76, 0x2A, 0x3B, 0x97, 0xD5, 0x7D, 0xBC, 0xCC, 0x98, 0x46, 0xE9, 0xC1, 0x53, 0x13, 0x22,\n0x4F, 0xF7, 0xCE, 0xC9, 0x87, 0x85, 0x90, 0x61, 0x3D, 0xF2, 0x91, 0x3C, 0x84, 0x7C, 0xD0, 0x41,\n0x48, 0xC8, 0xB0, 0xC7, 0x3F, 0xF8, 0xB4, 0x27, 0x21, 0x42, 0x3E, 0x32, 0x2A, 0xFE, 0xFD, 0xF4,\n0x60, 0x2F, 0x21, 0x0C, 0x42, 0xC2, 0x79, 0x72, 0xD6, 0xA7, 0x75, 0x6C, 0x1F, 0xEB, 0x1E, 0x3E,\n0x7E, 0x60, 0x20, 0x92, 0xA6, 0x07, 0xF3, 0x84, 0x44, 0xF6, 0x41, 0x3E, 0xF2, 0x5A, 0x09, 0xD3,\n0x57, 0xB2, 0x87, 0xF4, 0x1E, 0x6E, 0x38, 0x6B, 0x70, 0xA6, 0x77, 0xDC, 0xD3, 0x9C, 0xA7, 0x4F,\n0x19, 0x16, 0x8A, 0xF8, 0x83, 0x84, 0x9C, 0x0B, 0xE9, 0x41, 0x8E, 0x86, 0x68, 0x04, 0x29, 0x1F,\n0x74, 0x10, 0x2A, 0xEB, 0x1F, 0x7C, 0x4B, 0x14, 0x32, 0xE2, 0x08, 0x39, 0x4F, 0xD3, 0x1F, 0x6A,\n0x42, 0x96, 0x27, 0xE6, 0x63, 0x20, 0xA8, 0x8C, 0xE2, 0xD0, 0x59, 0xAF, 0xC6, 0xB3, 0x07, 0x21,\n0xFE, 0x88, 0x09, 0x59, 0xB5, 0x2F, 0x1F, 0xEC, 0xF0, 0x0F, 0x26, 0xD5, 0x55, 0xFE, 0x41, 0x0F,\n0x09, 0x00, 0x32, 0xFD, 0x21, 0xE8, 0x41, 0xE3, 0x1F, 0x54, 0x23, 0x3A, 0x13, 0xFC, 0xE3, 0x3F,\n0x48, 0x19, 0x0A, 0xDD, 0xAC, 0xB8, 0x56, 0xA7, 0x3F, 0x46, 0x3D, 0xFE, 0x41, 0x07, 0xA1, 0xB2,\n0xFE, 0x11, 0xE0, 0x10, 0x92, 0xEA, 0x0B, 0x4E, 0xEF, 0x6A, 0x08, 0xB1, 0xF3, 0x61, 0x9D, 0xBE,\n0x92, 0x01, 0x61, 0xEC, 0x11, 0x85, 0x1F, 0xBD, 0x91, 0x3A, 0xC3, 0x0F, 0xA5, 0x87, 0xB8, 0x75,\n0x2F, 0x1E, 0x8C, 0xD4, 0xC3, 0xC2, 0xF8, 0x5C, 0xF2, 0x10, 0xD9, 0x3F, 0x98, 0x54, 0x17, 0xF1,\n0xC8, 0x27, 0x44, 0x2E, 0x7C, 0xFE, 0xE3, 0xFF, 0x43, 0x88, 0xD0, 0xCD, 0x92, 0x84, 0x48, 0x72,\n0x9A, 0x47, 0xE9, 0x0E, 0x26, 0xC8, 0x07, 0x1D, 0x84, 0x52, 0xE5, 0x50, 0x12, 0x0F, 0xA1, 0x7F,\n0x68, 0x09, 0x29, 0x96, 0xE6, 0xF4, 0x87, 0xE9, 0x33, 0x50, 0x5D, 0x85, 0x5D, 0xB3, 0x21, 0xFA,\n0x47, 0x3A, 0xDD, 0x4B, 0x3A, 0x34, 0x71, 0x08, 0xFC, 0x43, 0xD4, 0x8F, 0x20, 0x84, 0x06, 0x82,\n0xF4, 0xB9, 0x20, 0x4E, 0x66, 0x31, 0xFD, 0xA1, 0xF6, 0x90, 0x99, 0x42, 0x74, 0x8F, 0xB1, 0xAA,\n0x35, 0x6D, 0xB2, 0x5F, 0xFF, 0x1E, 0xF1, 0xA1, 0xF6, 0x90, 0xCB, 0xD8, 0x2C, 0x08, 0x0A, 0x7F,\n0x9C, 0xE7, 0x83, 0x0E, 0x42, 0x49, 0x16, 0x14, 0xDE, 0x96, 0x93, 0x59, 0xE7, 0x51, 0x7A, 0x50,\n0x47, 0x08, 0xA6, 0x77, 0x4F, 0xED, 0x1F, 0xB2, 0x6E, 0x7C, 0xA8, 0x4E, 0x3E, 0xF4, 0x84, 0xDC,\n0x6B, 0x84, 0x8E, 0xCB, 0xF4, 0xB9, 0x24, 0xA6, 0x0C, 0x51, 0x9E, 0x54, 0x5A, 0xAD, 0xE8, 0x1F,\n0x26, 0x42, 0x66, 0x2A, 0x71, 0xFA, 0x0A, 0x2D, 0x25, 0xE8, 0xD4, 0x09, 0x91, 0x29, 0x08, 0xD1,\n0xF0, 0xC1, 0x84, 0x88, 0xF9, 0xDB, 0x1F, 0x5F, 0x92, 0x8F, 0x8C, 0x83, 0x50, 0xB1, 0x7D, 0x2C,\n0xDE, 0x58, 0x52, 0x76, 0x40, 0x48, 0x92, 0x1E, 0x94, 0x09, 0x29, 0x26, 0x46, 0x3E, 0xA6, 0x76,\n0x3E, 0x74, 0x1F, 0x69, 0x98, 0xEE, 0x9F, 0x29, 0x15, 0x66, 0x83, 0xEE, 0x95, 0x5A, 0xAF, 0x42,\n0xFA, 0x5C, 0xA9, 0x90, 0x0C, 0x91, 0xF9, 0x60, 0x52, 0x9D, 0xFE, 0xA1, 0x27, 0x64, 0xA6, 0x94,\n0xE0, 0x1F, 0xFF, 0x4D, 0xCA, 0x70, 0xA9, 0xEC, 0x67, 0xD7, 0x71, 0x7A, 0x70, 0xC4, 0x1E, 0xDC,\n0x63, 0x02, 0xE4, 0x83, 0x0E, 0x12, 0x2B, 0x42, 0x80, 0x08, 0x36, 0x7D, 0x64, 0x44, 0x82, 0xC8,\n0x87, 0x8A, 0x6D, 0xC7, 0xC7, 0xDD, 0xF4, 0xA4, 0xD3, 0x57, 0x7A, 0x69, 0xFD, 0x83, 0x17, 0x66,\n0x31, 0x7D, 0xAE, 0xF3, 0x10, 0x86, 0xE7, 0xB2, 0x00, 0x07, 0xF9, 0xD0, 0x79, 0x08, 0xF0, 0xC0,\n0xF5, 0x60, 0x4A, 0xB9, 0x38, 0x64, 0xA6, 0x16, 0xC3, 0x73, 0x25, 0x21, 0x36, 0xD9, 0x09, 0xA1,\n0x7F, 0x28, 0x09, 0x59, 0xE4, 0xFA, 0x6E, 0xBB, 0x34, 0x3C, 0x84, 0x78, 0x64, 0x1D, 0x84, 0x84,\n0x18, 0xC5, 0xE1, 0x95, 0x46, 0x45, 0xE5, 0x1F, 0x67, 0xFF, 0x13, 0x3E, 0x5C, 0x20, 0x32, 0x33,\n0x48, 0x98, 0xBE, 0x4A, 0x42, 0x75, 0xA5, 0x7F, 0x70, 0x32, 0x8B, 0xE1, 0xB9, 0x2C, 0x44, 0x2A,\n0xC8, 0x9E, 0x5B, 0xF4, 0xF0, 0xFC, 0x3C, 0x33, 0x1C, 0xAF, 0xBF, 0xFA, 0xEA, 0x7F, 0x43, 0xC8,\n0x04, 0xE1, 0xB7, 0x5A, 0xE8, 0x92, 0x8A, 0x6F, 0x0F, 0x2E, 0xBC, 0x0B, 0xD0, 0x3E, 0x64, 0x07,\n0x81, 0x1A, 0xFE, 0x41, 0xE4, 0x5A, 0x85, 0xAF, 0xC0, 0x6A, 0x01, 0x3E, 0xF4, 0xDA, 0x2D, 0xFF,\n0x47, 0x7C, 0x54, 0x09, 0x91, 0x99, 0x45, 0x63, 0x1D, 0x1F, 0xBC, 0xEC, 0xE4, 0xE9, 0xD5, 0xC0,\n0xC7, 0x8F, 0x18, 0x65, 0x59, 0x78, 0x82, 0x37, 0x01, 0x42, 0x8B, 0x9E, 0x6D, 0x87, 0x6B, 0xE2,\n0xE3, 0xF4, 0x29, 0xC3, 0xE5, 0xEE, 0x5A, 0xAF, 0x62, 0xB9, 0xA8, 0x7B, 0xA8, 0xFA, 0xEA, 0x44,\n0x9D, 0x83, 0x8C, 0xC4, 0x37, 0x5B, 0xBC, 0x45, 0x5F, 0x54, 0xB7, 0x38, 0xC8, 0xE4, 0x0C, 0x3A,\n0x5D, 0xFC, 0x51, 0x0E, 0x4C, 0x02, 0x20, 0x26, 0x01, 0x10, 0x8B, 0x78, 0xFD, 0xAE, 0x76, 0x8C,\n0xF5, 0x6A, 0xE2, 0x83, 0x06, 0xA2, 0x04, 0x64, 0x66, 0xD2, 0x38, 0xC4, 0xE7, 0xFF, 0x8F, 0x38,\n0x64, 0x3E, 0xB7, 0xF0, 0x51, 0x44, 0x03, 0x2C, 0xC6, 0xD1, 0xC9, 0xAC, 0x53, 0x60, 0x68, 0xA4,\n0x73, 0x90, 0x11, 0x24, 0xD3, 0x46, 0x36, 0xAB, 0x7B, 0xA2, 0x02, 0x57, 0xED, 0x7E, 0xCF, 0x21,\n0x13, 0x1F, 0xA5, 0x89, 0x10, 0x2B, 0x1E, 0x90, 0x05, 0x91, 0x67, 0xE8, 0x5E, 0x23, 0x7E, 0xC3,\n0xF0, 0x47, 0x3D, 0x21, 0xAF, 0x5B, 0xCC, 0xF5, 0x5A, 0x80, 0xAA, 0x82, 0x74, 0x0B, 0x1E, 0x90,\n0x01, 0x91, 0x31, 0x74, 0x4A, 0x0F, 0x29, 0x4B, 0x13, 0x21, 0x73, 0xC8, 0x12, 0x83, 0xA0, 0x5F,\n0x36, 0x49, 0xC8, 0x46, 0x21, 0xCD, 0x17, 0xA0, 0xDF, 0x6B, 0x1C, 0x64, 0x54, 0xE9, 0x8D, 0x73,\n0xC5, 0x39, 0xD1, 0xB8, 0xFC, 0xBD, 0xB2, 0x40, 0xC8, 0x72, 0xA9, 0xE6, 0x03, 0x32, 0xF1, 0x41,\n0x44, 0x4E, 0xC3, 0xC7, 0xC0, 0x82, 0x87, 0x89, 0x90, 0x70, 0xA7, 0x1F, 0xBD, 0x7F, 0x38, 0xBD,\n0xAA, 0xFD, 0xC3, 0x4F, 0x22, 0x5B, 0xF8, 0x80, 0x1E, 0xF4, 0x7C, 0x9C, 0x94, 0x90, 0x12, 0xB2,\n0x10, 0x32, 0x77, 0x2A, 0x76, 0x4A, 0x3E, 0x2E, 0xAF, 0x16, 0xE8, 0x9B, 0x74, 0x89, 0x85, 0x74,\n0xAE, 0x77, 0x92, 0x1D, 0x64, 0x14, 0xD4, 0x19, 0xF8, 0xEF, 0x9F, 0xBB, 0xDF, 0x78, 0x3E, 0x9C,\n0x87, 0x28, 0xE0, 0xDE, 0x81, 0x0F, 0x13, 0x21, 0x65, 0xAD, 0x93, 0xF1, 0x01, 0x61, 0xA5, 0x8C,\n0x3F, 0x20, 0x03, 0x21, 0x6B, 0xDF, 0x7F, 0x99, 0x46, 0x17, 0xB4, 0xFD, 0x0B, 0x06, 0x02, 0x69,\n0xE3, 0xF4, 0x3A, 0x57, 0xBF, 0xB2, 0xF0, 0x01, 0x59, 0xF2, 0x20, 0xA7, 0x23, 0xA4, 0xAC, 0x65,\n0xE1, 0x03, 0x2A, 0x74, 0x7C, 0x2C, 0x20, 0x4F, 0x48, 0x10, 0xDD, 0x22, 0x3B, 0x2B, 0x5B, 0x4B,\n0x70, 0x90, 0xD1, 0x5E, 0x00, 0x41, 0xD4, 0x1B, 0xEF, 0xB5, 0x78, 0xB5, 0xD0, 0x10, 0x52, 0xCC,\n0xF7, 0xC7, 0xA9, 0xCA, 0xA4, 0x97, 0x94, 0x0E, 0x0F, 0x3B, 0x1F, 0x01, 0x11, 0x1D, 0x1F, 0x36,\n0x42, 0xEA, 0x3C, 0x1E, 0xD6, 0x9A, 0x2E, 0x0F, 0x32, 0x1C, 0x1E, 0x58, 0x5E, 0xF5, 0xFE, 0xE1,\n0x10, 0xB4, 0xF1, 0xC1, 0x99, 0x2C, 0x6D, 0x26, 0xDD, 0x28, 0x1D, 0x1F, 0x36, 0x42, 0x26, 0xF3,\n0x5A, 0x13, 0x4D, 0x26, 0xBD, 0x79, 0x1F, 0xC5, 0x34, 0x7F, 0x9E, 0x26, 0xBE, 0x47, 0x54, 0x9F,\n0x83, 0x8C, 0x9A, 0x52, 0xF1, 0xB1, 0xA8, 0x85, 0x50, 0x5D, 0x22, 0xA4, 0xFA, 0x53, 0xB7, 0x0D,\n0x69, 0xF8, 0xA0, 0x8E, 0xCE, 0x47, 0x39, 0xE0, 0xC5, 0x46, 0x2A, 0x42, 0x9E, 0x9B, 0xD2, 0xF3,\n0x01, 0xAD, 0x34, 0xB9, 0xF4, 0x8A, 0x0C, 0x4A, 0xE6, 0x03, 0x6F, 0xCB, 0xF7, 0x5F, 0xFF, 0xA0,\n0xE1, 0x83, 0x52, 0xF0, 0xC1, 0x7B, 0xFD, 0x5C, 0x9C, 0x80, 0x90, 0xB2, 0x29, 0xA5, 0x7D, 0x90,\n0x10, 0x99, 0x0F, 0x8A, 0x84, 0xE4, 0x48, 0x61, 0xFC, 0x41, 0x25, 0x0E, 0x92, 0xE7, 0x83, 0x81,\n0x48, 0x67, 0x0C, 0x02, 0x3C, 0x1B, 0x12, 0x09, 0xF1, 0x7C, 0x50, 0x1A, 0x3E, 0x28, 0x11, 0x0F,\n0x2B, 0x1F, 0xC4, 0x43, 0x75, 0x35, 0xEF, 0x73, 0x5B, 0x7A, 0x3E, 0x74, 0xC3, 0x2C, 0x40, 0x41,\n0x6D, 0x65, 0x42, 0xA2, 0xAB, 0xE9, 0x6D, 0x7C, 0xC8, 0x84, 0xB0, 0x69, 0x2E, 0x4E, 0xE1, 0x21,\n0x65, 0x5B, 0x3A, 0x3E, 0x48, 0x88, 0x38, 0x7D, 0x45, 0x91, 0x90, 0xBC, 0x88, 0x07, 0xD5, 0xE5,\n0x20, 0xA3, 0x44, 0xFD, 0x99, 0xF9, 0x05, 0x77, 0x44, 0x26, 0x64, 0x77, 0x3D, 0x09, 0xC7, 0x49,\n0x09, 0xE1, 0x79, 0xAC, 0xA3, 0xDA, 0x07, 0xF8, 0xA0, 0x83, 0x48, 0x71, 0xC8, 0x18, 0xFE, 0x11,\n0x4B, 0x7B, 0xB5, 0x3B, 0x3D, 0x44, 0xF4, 0x8F, 0x6D, 0x58, 0xDC, 0xA6, 0xE0, 0x1F, 0xC9, 0xFB,\n0x0B, 0xD7, 0xF2, 0xC6, 0x12, 0xC3, 0x8F, 0x36, 0x22, 0x37, 0x47, 0x25, 0xA4, 0x8C, 0x35, 0xB5,\n0xF0, 0x41, 0x42, 0x64, 0x3E, 0x48, 0xC8, 0x48, 0xE4, 0x83, 0xCA, 0x3B, 0xC8, 0x28, 0xD5, 0x5B,\n0xC3, 0x92, 0x42, 0xCD, 0xF1, 0xD5, 0xE5, 0x6E, 0x11, 0xA9, 0xCA, 0xA9, 0x77, 0xA6, 0x07, 0x27,\n0xF3, 0x77, 0xF3, 0x58, 0x2A, 0x3E, 0xA8, 0xE3, 0xF2, 0x71, 0x81, 0xA5, 0x85, 0x88, 0xCA, 0x3F,\n0xA8, 0x1F, 0x24, 0xFB, 0x50, 0x7F, 0x63, 0x6A, 0x85, 0xF4, 0xC7, 0x5F, 0x1F, 0x28, 0x4F, 0xC8,\n0x46, 0xB8, 0x92, 0x37, 0xD2, 0x4A, 0xC5, 0x07, 0xA5, 0x88, 0x3F, 0xB0, 0xE6, 0x20, 0xD4, 0x28,\n0x81, 0x0F, 0x0B, 0x21, 0xF3, 0x8C, 0x94, 0x7C, 0x90, 0x90, 0x74, 0x6C, 0x55, 0x6F, 0x8D, 0x32,\n0xCA, 0x39, 0xC8, 0x28, 0xAB, 0xCE, 0x09, 0x5E, 0xF2, 0xD1, 0x22, 0x64, 0x59, 0x74, 0xF8, 0xC7,\n0x3C, 0x7B, 0x9C, 0x2A, 0x3E, 0xA8, 0xA3, 0x0D, 0xB0, 0xF8, 0x5D, 0x74, 0x21, 0x0E, 0x21, 0x1F,\n0x16, 0x42, 0xE0, 0x1F, 0xD6, 0xEF, 0xA4, 0x6F, 0x23, 0x3C, 0x7A, 0xE3, 0x10, 0xE0, 0x66, 0x21,\n0xE4, 0x39, 0x2B, 0x61, 0x7A, 0x37, 0xDC, 0x2E, 0xEE, 0x1F, 0x23, 0x22, 0xF0, 0xA1, 0x27, 0xA4,\n0xEB, 0x6F, 0x82, 0xA8, 0xF8, 0x48, 0x26, 0xB3, 0x88, 0x0A, 0xFD, 0x23, 0xA3, 0xC8, 0x41, 0x62,\n0x3E, 0x84, 0xC9, 0x2C, 0xF2, 0x91, 0xA8, 0xC3, 0x43, 0x96, 0xB0, 0x8F, 0xAC, 0x54, 0x7C, 0x50,\n0x47, 0x9B, 0xDE, 0x8D, 0x6E, 0x6A, 0xD2, 0x3B, 0x99, 0x35, 0x7E, 0xEE, 0x92, 0xE8, 0x1F, 0x9A,\n0x38, 0x04, 0xFE, 0x41, 0x2A, 0x9A, 0x83, 0xAC, 0xED, 0x46, 0x98, 0xBE, 0x8A, 0xDF, 0x5F, 0xC7,\n0x07, 0x95, 0x3F, 0x5C, 0xDE, 0x4D, 0xB1, 0x35, 0xD2, 0x3A, 0x1A, 0x21, 0x65, 0x5E, 0x53, 0x25,\n0x1F, 0x24, 0x64, 0xD9, 0x91, 0x1E, 0xEC, 0x22, 0x64, 0xD4, 0x3A, 0xC5, 0x2F, 0xC2, 0x56, 0x87,\n0xE8, 0x20, 0xE4, 0x43, 0xEF, 0x21, 0x9C, 0xDE, 0x4D, 0x74, 0x99, 0x23, 0xA4, 0x20, 0x1F, 0xB1,\n0x74, 0x7C, 0x50, 0xC7, 0xE0, 0x83, 0x5C, 0x84, 0x5B, 0xD1, 0xF2, 0x9B, 0xB7, 0x72, 0xFC, 0x21,\n0x13, 0xB2, 0xEA, 0xE8, 0xC0, 0xAB, 0x3C, 0x21, 0xAF, 0x74, 0x0F, 0x6C, 0xC9, 0xA3, 0x2C, 0xBE,\n0xBD, 0xCE, 0x43, 0x9E, 0x3B, 0x95, 0xE7, 0x83, 0xF2, 0xAD, 0xC2, 0x7B, 0xB5, 0x1E, 0x83, 0x90,\n0xB2, 0x53, 0x53, 0x35, 0x1F, 0x4C, 0x19, 0x26, 0x7C, 0xB0, 0x5B, 0x4A, 0x1E, 0x32, 0xA2, 0x7F,\n0x64, 0xD5, 0x76, 0x90, 0x51, 0xB7, 0xDE, 0xA2, 0xF8, 0x66, 0xD4, 0xC7, 0x07, 0x53, 0x86, 0x69,\n0xFA, 0x5C, 0x8F, 0x48, 0xD9, 0xA7, 0xC3, 0xF9, 0xE0, 0xA9, 0x11, 0x55, 0x7C, 0xFB, 0x0E, 0x61,\n0x7A, 0x37, 0x96, 0xCE, 0x3F, 0xC8, 0x48, 0x76, 0x7C, 0xF5, 0xDB, 0x87, 0x0E, 0x6D, 0x5F, 0x73,\n0xFE, 0xD1, 0xF3, 0xFE, 0x12, 0x1F, 0xB2, 0x87, 0xF8, 0xF6, 0xE0, 0x9D, 0x27, 0xD9, 0x44, 0x47,\n0xF1, 0x90, 0xB2, 0x4F, 0xF9, 0xF4, 0x87, 0x4C, 0x08, 0xF9, 0xE8, 0xFF, 0xC3, 0x52, 0xA9, 0x46,\n0x3D, 0x6A, 0x3A, 0xC8, 0xA8, 0x57, 0xF1, 0x15, 0x91, 0xE4, 0x23, 0xAF, 0x98, 0x90, 0x49, 0x2F,\n0x1F, 0xB7, 0x3A, 0xFF, 0xA0, 0x8E, 0x91, 0x1E, 0xBC, 0x00, 0x09, 0x44, 0x04, 0x4F, 0x38, 0xD6,\n0x12, 0xC2, 0x0F, 0x91, 0x90, 0xFE, 0xFB, 0xBB, 0x3F, 0xC5, 0xE2, 0x90, 0x2A, 0x4B, 0xC8, 0x46,\n0xEF, 0x1F, 0xF9, 0x84, 0x88, 0xB0, 0xFB, 0x39, 0xFF, 0x60, 0xBB, 0x10, 0x93, 0xD9, 0x71, 0x26,\n0xB3, 0xCA, 0x7E, 0xA9, 0xFC, 0x83, 0x2A, 0xD2, 0xF4, 0x87, 0x4C, 0xC8, 0x28, 0x9A, 0xBF, 0xEA,\n0x51, 0x70, 0x10, 0xE2, 0xA1, 0x8C, 0x43, 0x16, 0x7D, 0x78, 0x70, 0xBA, 0x97, 0x7C, 0x48, 0x52,\n0xF9, 0x07, 0x75, 0x10, 0x1F, 0x37, 0xED, 0x73, 0x62, 0xA8, 0x9A, 0x41, 0xBB, 0xCA, 0x3F, 0x28,\n0x9D, 0x7F, 0xF0, 0xEE, 0xB9, 0x3F, 0x6E, 0xD2, 0xF4, 0x20, 0x19, 0x89, 0x70, 0x81, 0xBB, 0x68,\n0xF8, 0xA0, 0x56, 0x02, 0x1F, 0x02, 0x21, 0x6C, 0x17, 0x3E, 0xD8, 0x3E, 0x07, 0x4F, 0x66, 0x95,\n0x92, 0x54, 0x78, 0x50, 0x93, 0x88, 0x8F, 0xAB, 0x45, 0x9F, 0x22, 0x0F, 0x01, 0x2A, 0x23, 0x41,\n0x1E, 0x90, 0x91, 0xAC, 0x37, 0x3D, 0x1F, 0x24, 0x84, 0x7C, 0x98, 0x08, 0x29, 0x65, 0x1D, 0xE4,\n0x1F, 0x9C, 0xC0, 0xC4, 0xD6, 0x8C, 0xC3, 0x2B, 0x0E, 0xB5, 0x5B, 0xFE, 0xF1, 0x83, 0x89, 0x90,\n0x95, 0xE2, 0x0F, 0x78, 0xB4, 0xFE, 0x3E, 0xC8, 0x5F, 0x59, 0xDF, 0x68, 0x6D, 0x27, 0xE9, 0x0F,\n0x3D, 0x21, 0xD8, 0x79, 0x13, 0x21, 0xB5, 0xB9, 0xD2, 0x36, 0xD8, 0x3E, 0x28, 0x87, 0x26, 0xD5,\n0x4B, 0x59, 0x16, 0x3E, 0x48, 0x08, 0xA7, 0xAF, 0x94, 0x84, 0x8C, 0x9C, 0x7D, 0xC8, 0xAA, 0x00,\n0xC1, 0x4A, 0x4F, 0x08, 0xD3, 0xE7, 0x32, 0x21, 0xE4, 0x43, 0x96, 0x6A, 0x78, 0x45, 0x1D, 0xC0,\n0x07, 0x23, 0x8F, 0x8B, 0x78, 0x1C, 0x81, 0x8D, 0x78, 0x2E, 0xEB, 0x59, 0xA3, 0x1F, 0xD6, 0x0A,\n0xFB, 0xA0, 0x85, 0x3C, 0xC6, 0xFE, 0x41, 0xE5, 0x31, 0x89, 0xD2, 0xE7, 0xE2, 0xFF, 0x10, 0xF1,\n0xA1, 0x27, 0xA4, 0x31, 0xBA, 0x4A, 0xFF, 0x34, 0xC8, 0xE1, 0x49, 0xF5, 0x52, 0xA3, 0xA9, 0x81,\n0x0F, 0x12, 0x42, 0x3E, 0xD4, 0x1E, 0x32, 0x52, 0x89, 0x80, 0x48, 0x4A, 0x2F, 0xBF, 0x92, 0x09,\n0x21, 0x1F, 0x32, 0x21, 0x53, 0xF2, 0xA1, 0xD0, 0x61, 0xF1, 0x47, 0xD0, 0x2C, 0x37, 0x96, 0x20,\n0x21, 0x9C, 0xBE, 0x12, 0x09, 0x21, 0x1F, 0xB2, 0x38, 0x99, 0xB5, 0xE1, 0xC0, 0x8A, 0x4C, 0xA4,\n0x94, 0xD0, 0x43, 0xB4, 0x7F, 0xE6, 0x96, 0x7C, 0xA8, 0x94, 0xDA, 0x47, 0x58, 0x6A, 0x5D, 0xD0,\n0x61, 0x0F, 0x20, 0xA4, 0xD4, 0x69, 0x4A, 0x3E, 0x54, 0x84, 0x90, 0x0F, 0x13, 0x21, 0x6F, 0xC7,\n0x06, 0xE4, 0x4D, 0xED, 0x1F, 0x4C, 0x19, 0x22, 0x3D, 0xA8, 0x16, 0xF9, 0x50, 0xE9, 0x9F, 0xA5,\n0x07, 0xD9, 0x05, 0x50, 0xE8, 0x22, 0x1E, 0x96, 0x38, 0x10, 0x19, 0x3F, 0xEB, 0x45, 0x3E, 0x64,\n0x55, 0x1E, 0xE2, 0x10, 0x69, 0x32, 0xC1, 0xE0, 0x23, 0x26, 0x85, 0x09, 0x91, 0x47, 0x8D, 0x38,\n0x99, 0xF5, 0xAC, 0x56, 0x00, 0x24, 0xFA, 0x1B, 0xA7, 0x9C, 0xCC, 0x8A, 0x4F, 0x26, 0xA5, 0x9D,\n0x10, 0xF2, 0x21, 0x13, 0xA2, 0xE5, 0x83, 0x09, 0x11, 0x2D, 0x1F, 0x9C, 0xEE, 0x1D, 0xE9, 0xF4,\n0x25, 0x01, 0xD1, 0x79, 0x08, 0xEE, 0xC3, 0xA5, 0x13, 0x3C, 0x84, 0x57, 0xB7, 0xAB, 0x44, 0x3E,\n0xD4, 0x80, 0xD8, 0xED, 0x83, 0xA7, 0x46, 0x92, 0x11, 0x40, 0xA9, 0xE9, 0xD9, 0xDF, 0x68, 0x11,\n0xCE, 0x60, 0x22, 0xE4, 0xD1, 0x20, 0xF7, 0xED, 0x41, 0x52, 0x10, 0x8B, 0xC0, 0x04, 0x6D, 0xE8,\n0x1F, 0x2A, 0x44, 0xE8, 0x1F, 0x2A, 0xF1, 0x4E, 0x8A, 0x4D, 0x44, 0x08, 0x05, 0x0A, 0x43, 0x37,\n0x7B, 0xA8, 0x4E, 0x3E, 0xD4, 0x84, 0xCC, 0x0D, 0x42, 0xC2, 0x10, 0x7C, 0x98, 0x08, 0x19, 0x69,\n0x45, 0x40, 0x14, 0xE2, 0xD5, 0x89, 0x0A, 0xC1, 0xCB, 0xC8, 0x87, 0x46, 0x13, 0xF2, 0xA1, 0x64,\n0x64, 0x50, 0x9A, 0x0A, 0x47, 0x57, 0xED, 0x61, 0x35, 0x87, 0xDD, 0x7C, 0x8A, 0xB3, 0x29, 0xF9,\n0x50, 0xC9, 0xC4, 0x07, 0xBA, 0xFA, 0x07, 0xC4, 0xE7, 0x7A, 0x6D, 0x5F, 0x39, 0x7D, 0xA5, 0x12,\n0xFC, 0xC3, 0xA4, 0xA8, 0x25, 0x18, 0x9A, 0xF3, 0xA7, 0xF4, 0x5C, 0x3B, 0x21, 0xA5, 0x4D, 0x4C,\n0x7F, 0xE8, 0x08, 0xC1, 0xCC, 0x91, 0x5E, 0x97, 0xE4, 0x43, 0xE3, 0x20, 0x7F, 0xEA, 0x01, 0x41,\n0x00, 0x82, 0x7E, 0x3F, 0xD4, 0x14, 0x97, 0xC8, 0x2F, 0x6E, 0xE7, 0xC5, 0x44, 0xA7, 0xDB, 0x49,\n0x51, 0xBC, 0xBB, 0xB3, 0xDD, 0x8E, 0x12, 0x3C, 0x4D, 0x2D, 0x2A, 0xE1, 0x21, 0x65, 0x5D, 0xD2,\n0x0D, 0x6C, 0xEE, 0x7F, 0x3F, 0x80, 0x66, 0x0F, 0x16, 0xCD, 0xD6, 0x2B, 0x8B, 0xD6, 0xAB, 0xAD,\n0xD3, 0x07, 0x75, 0xB5, 0x32, 0xFE, 0x07, 0x0F, 0x26, 0xCD, 0xDC, 0x31, 0xEF, 0x1B, 0x82, 0x2D,\n0xD3, 0x2E, 0x83, 0xBA, 0x79, 0x6C, 0x0D, 0x8F, 0xBB, 0x04, 0x9A, 0x34, 0x7D, 0x37, 0x29, 0x26,\n0x6A, 0xDD, 0xDE, 0x16, 0xE8, 0x95, 0x96, 0x53, 0xF7, 0x48, 0xAF, 0x3F, 0xCF, 0x7E, 0x7D, 0xD3,\n0x03, 0xF2, 0x36, 0xDA, 0xED, 0x16, 0x43, 0xE5, 0x5E, 0x9C, 0x17, 0xD0, 0xA4, 0xB8, 0x55, 0x3E,\n0xC0, 0xC7, 0xD9, 0x17, 0xA6, 0x72, 0x77, 0xE7, 0x1A, 0x5F, 0x55, 0xF0, 0xCA, 0xBB, 0xBB, 0x01,\n0xF4, 0x79, 0xE9, 0x0A, 0xD6, 0xBD, 0x5B, 0x95, 0xDD, 0x7C, 0xF3, 0xF0, 0xD5, 0xC3, 0x57, 0xAA,\n0x05, 0xAF, 0x5C, 0xAF, 0x6D, 0x1D, 0xF8, 0xFD, 0x66, 0x53, 0xDF, 0xA8, 0xFA, 0xF7, 0xAA, 0x60,\n0x73, 0x13, 0x36, 0xB7, 0xDB, 0xD6, 0xE2, 0x08, 0xC1, 0xCB, 0x37, 0x2B, 0x83, 0x7E, 0x5A, 0x83,\n0x10, 0xED, 0xFE, 0xE3, 0x00, 0x70, 0xB8, 0x8D, 0xE3, 0x1F, 0xB3, 0x3D, 0x32, 0x05, 0xAD, 0x88,\n0xA6, 0xD7, 0xAB, 0xBC, 0xAB, 0x64, 0xF9, 0x64, 0xDF, 0xDD, 0xBD, 0x43, 0x97, 0xB8, 0x2D, 0x54,\n0x65, 0x52, 0x40, 0xE7, 0x6A, 0x3A, 0x76, 0xC3, 0x2B, 0xF4, 0x63, 0xCA, 0x16, 0x83, 0xC8, 0x84,\n0xBC, 0xEC, 0x16, 0x9A, 0xB2, 0x18, 0x9E, 0x63, 0xC7, 0x31, 0xB9, 0x70, 0x7B, 0x3B, 0xD1, 0x94,\n0x02, 0xF9, 0x74, 0x93, 0x7F, 0xDC, 0x39, 0x4D, 0x4B, 0x2D, 0x20, 0x81, 0x90, 0x71, 0x89, 0xC1,\n0x93, 0xAB, 0x43, 0xE1, 0x36, 0x7F, 0x86, 0x9E, 0x31, 0x76, 0x42, 0x0F, 0x53, 0x2D, 0x8E, 0x8F,\n0x9F, 0x2A, 0x42, 0xBE, 0xD7, 0x2D, 0x1B, 0x27, 0xF4, 0x7E, 0x00, 0xF1, 0x1E, 0x8C, 0xBC, 0xF7,\n0x8C, 0x00, 0x11, 0x3C, 0x50, 0xB5, 0x16, 0x68, 0xE3, 0x54, 0xBD, 0x3F, 0x8A, 0xA2, 0x5A, 0x57,\n0x7A, 0xF8, 0x06, 0xBB, 0x26, 0xC8, 0xEF, 0xFE, 0xB8, 0x12, 0x0E, 0xBB, 0x6E, 0x09, 0x36, 0x48,\n0xB6, 0x7C, 0x7E, 0xE6, 0xF8, 0x50, 0x37, 0xFD, 0x9D, 0xD3, 0x99, 0x41, 0xE8, 0x0B, 0xB7, 0x05,\n0x10, 0xD1, 0x94, 0x02, 0xD2, 0x07, 0xE9, 0x2F, 0x8B, 0xAA, 0x17, 0xEB, 0xC5, 0x21, 0x96, 0x96,\n0x10, 0x55, 0x1C, 0x32, 0x5C, 0x80, 0x0D, 0x2F, 0x15, 0x1E, 0x93, 0xF9, 0x99, 0xB1, 0x01, 0x83,\n0xB4, 0x9F, 0xD2, 0x9D, 0x27, 0x04, 0xE7, 0x46, 0x74, 0x83, 0x12, 0x2B, 0x3C, 0x5A, 0x4B, 0xF8,\n0xF9, 0xB4, 0xFA, 0xCD, 0x14, 0xEE, 0x81, 0xE2, 0x08, 0x41, 0x91, 0xF8, 0x70, 0xFE, 0xE1, 0x84,\n0xF9, 0x29, 0xF4, 0x50, 0xE8, 0xFB, 0xFC, 0x46, 0xAD, 0x8D, 0x17, 0x78, 0x08, 0xD6, 0xB1, 0xF5,\n0x70, 0xB8, 0xCD, 0xBD, 0xA5, 0xBC, 0xA7, 0xB7, 0x40, 0x81, 0x10, 0xBC, 0x8D, 0x50, 0x41, 0x6B,\n0x2F, 0x87, 0x2E, 0x28, 0xE9, 0x5F, 0xBE, 0x72, 0x7C, 0xB8, 0xC3, 0x85, 0x3F, 0x8C, 0x61, 0x10,\n0xBE, 0x79, 0xD8, 0x20, 0xAC, 0x7D, 0xB3, 0x79, 0xFF, 0x50, 0x37, 0xBD, 0x97, 0x9D, 0x10, 0x65,\n0xDF, 0x09, 0xBA, 0x56, 0xFA, 0xC7, 0x08, 0x78, 0x98, 0x86, 0x58, 0x7F, 0x7E, 0x34, 0x32, 0x21,\n0x32, 0x1A, 0x6A, 0x08, 0xA9, 0xF9, 0x58, 0x6A, 0xCE, 0x03, 0x78, 0x89, 0x95, 0x0F, 0x4A, 0x6B,\n0x20, 0xF4, 0x10, 0x2C, 0x28, 0x83, 0xFD, 0xF2, 0x39, 0x9E, 0xE1, 0x41, 0x5A, 0x06, 0xDF, 0xCC,\n0x5C, 0x9F, 0xF1, 0x84, 0x88, 0xF6, 0x01, 0x3E, 0x6A, 0x79, 0x14, 0xBE, 0x7F, 0x44, 0x9D, 0xDD,\n0xF0, 0x9B, 0x9B, 0xBD, 0x7E, 0xDF, 0x3A, 0x00, 0x3C, 0x07, 0xAE, 0xAA, 0xDC, 0xA4, 0x1E, 0x6C,\n0xA1, 0x7E, 0xC5, 0x7A, 0xFB, 0xB4, 0xA9, 0xB5, 0xF7, 0x28, 0x54, 0xE9, 0x56, 0xA8, 0x1E, 0xD7,\n0xB5, 0xBC, 0x83, 0x48, 0xB5, 0x3F, 0x54, 0x3C, 0x7C, 0x53, 0x30, 0xDC, 0xA8, 0x9E, 0x01, 0x19,\n0xD6, 0xAE, 0xD9, 0x82, 0x7F, 0x40, 0x4A, 0xFF, 0xF8, 0xA7, 0x84, 0xCC, 0x55, 0x7D, 0xA7, 0x30,\n0x10, 0x82, 0xE1, 0x8F, 0x91, 0x8F, 0x8F, 0x2A, 0x40, 0x40, 0x88, 0x49, 0x8B, 0xDD, 0x8B, 0x8E,\n0x8F, 0x80, 0x88, 0x7C, 0x90, 0x73, 0x6B, 0xE3, 0x51, 0x2A, 0x13, 0xA1, 0xEE, 0xCA, 0x81, 0x77,\n0x91, 0xAA, 0x38, 0x1A, 0x42, 0x2F, 0x08, 0x1F, 0x7F, 0xB5, 0x1E, 0x38, 0x3A, 0xC2, 0x43, 0x72,\n0x10, 0xE7, 0x1F, 0x94, 0xEF, 0xA3, 0xAE, 0x4E, 0x36, 0xE8, 0x1F, 0x54, 0x45, 0xC5, 0x6B, 0x0D,\n0x83, 0x03, 0x02, 0x95, 0xC7, 0xC3, 0x55, 0xCE, 0x5B, 0x1A, 0x7A, 0xE2, 0xDB, 0xE5, 0xB7, 0x50,\n0x35, 0xF6, 0x07, 0x16, 0x11, 0x10, 0x77, 0x55, 0xBA, 0x8D, 0xB2, 0x3F, 0x56, 0x54, 0x65, 0xAB,\n0x69, 0x9C, 0x9D, 0x00, 0x95, 0x7D, 0xED, 0x1A, 0x89, 0xE1, 0x87, 0xD2, 0x3F, 0x0E, 0x21, 0x44,\n0xE3, 0x1F, 0x24, 0x64, 0x78, 0x6C, 0xFF, 0xF8, 0xC8, 0x01, 0x62, 0x25, 0xE4, 0xED, 0x4A, 0x22,\n0x64, 0x39, 0x29, 0x9A, 0x92, 0x0E, 0xD2, 0x3C, 0xBE, 0x6A, 0xAB, 0x2C, 0x35, 0x80, 0x90, 0x10,\n0xE7, 0x20, 0x83, 0xC0, 0x04, 0xB6, 0x42, 0x4F, 0x28, 0x3D, 0x38, 0x25, 0xFA, 0x0A, 0x96, 0xF0,\n0x50, 0x10, 0xB2, 0x6E, 0xEA, 0x2B, 0x7F, 0x8A, 0x7F, 0x74, 0x56, 0x81, 0xAD, 0x55, 0xB2, 0xE1,\n0xED, 0x80, 0x84, 0x40, 0x9E, 0x11, 0x0F, 0x04, 0x1E, 0x6E, 0x05, 0x74, 0x5E, 0x7D, 0x6C, 0xB2,\n0x69, 0x29, 0x18, 0xC6, 0xCA, 0xBD, 0x19, 0xAD, 0x89, 0x0E, 0xB2, 0xAE, 0xF8, 0xA0, 0x3C, 0x0D,\n0xA1, 0xE2, 0x76, 0xA8, 0x1D, 0x1F, 0x3C, 0x56, 0x68, 0xEA, 0x9B, 0x66, 0x10, 0x4E, 0x1C, 0x9E,\n0x95, 0xBA, 0x06, 0x35, 0xE4, 0x43, 0x85, 0xC8, 0x1D, 0x75, 0x0A, 0x0F, 0x29, 0x5A, 0x5A, 0x0A,\n0x78, 0xBC, 0x5C, 0xBD, 0x59, 0xF9, 0x08, 0x80, 0x58, 0x47, 0x59, 0x57, 0x2F, 0x7D, 0x84, 0x20,\n0xB1, 0x19, 0xA9, 0xFF, 0x20, 0xDF, 0x9D, 0x51, 0x76, 0x3E, 0xE4, 0x48, 0x3D, 0x88, 0x84, 0x38,\n0x97, 0xA8, 0x8C, 0xC4, 0x8F, 0xB4, 0xE9, 0x20, 0x28, 0x88, 0x3F, 0x88, 0x87, 0x1C, 0xA9, 0x7F,\n0x13, 0xF8, 0x20, 0x21, 0x6B, 0xC1, 0x41, 0x36, 0x91, 0x02, 0x17, 0xE1, 0xB1, 0xDD, 0x04, 0x5C,\n0xDC, 0xF4, 0x16, 0xE3, 0x73, 0xEA, 0x71, 0x05, 0xC8, 0x22, 0xDF, 0xA8, 0x7C, 0xE5, 0xD1, 0x03,\n0xB8, 0x8E, 0x85, 0x5D, 0x6C, 0xB9, 0x46, 0x54, 0x11, 0x8F, 0xAA, 0x42, 0x41, 0x93, 0xF8, 0xB6,\n0x41, 0xAB, 0x60, 0xD3, 0xB5, 0x56, 0x5D, 0x07, 0xFF, 0xA0, 0x94, 0xFE, 0x41, 0x19, 0x3F, 0x69,\n0x4C, 0xF7, 0x2A, 0xFC, 0x83, 0xDA, 0xF5, 0x78, 0xC8, 0x8B, 0x9D, 0x0F, 0x02, 0x62, 0x24, 0xE4,\n0x23, 0x78, 0x88, 0x82, 0x0F, 0xAA, 0x2F, 0xFE, 0x78, 0x67, 0x6D, 0xB5, 0x54, 0xA5, 0x96, 0x0F,\n0x06, 0x22, 0x3E, 0x14, 0xF1, 0x3E, 0xE2, 0xE3, 0x10, 0x1F, 0xBB, 0x7B, 0x28, 0x88, 0x48, 0x65,\n0x27, 0x3D, 0x26, 0xF2, 0x50, 0xCD, 0x5E, 0xB5, 0xF5, 0x93, 0xEF, 0xB7, 0xAE, 0x3C, 0xB5, 0x36,\n0xE8, 0x1F, 0xB1, 0x89, 0xC0, 0x36, 0xDE, 0xD7, 0x63, 0x2D, 0x2C, 0x6E, 0xE5, 0xC7, 0x5C, 0xF1,\n0x3F, 0x78, 0xBF, 0xA9, 0xC1, 0x08, 0x1E, 0x42, 0x07, 0xA9, 0xB4, 0x4E, 0x95, 0x77, 0x90, 0x30,\n0xBF, 0x90, 0x9C, 0x0E, 0xD0, 0x14, 0xA1, 0x6D, 0xAA, 0x93, 0x87, 0xAB, 0x07, 0xA1, 0x06, 0x2E,\n0x0C, 0x3F, 0x28, 0x21, 0xFC, 0x38, 0x98, 0x10, 0xD9, 0x3F, 0xA8, 0xE5, 0xEE, 0x98, 0x7C, 0x10,\n0x10, 0xE8, 0xED, 0x93, 0x91, 0x5E, 0x6F, 0x6F, 0x57, 0x30, 0x2C, 0x99, 0x0F, 0xAA, 0x7B, 0x7A,\n0xD7, 0xCE, 0x47, 0xAA, 0xA9, 0x30, 0x7D, 0x15, 0x11, 0x32, 0xAD, 0xF2, 0x21, 0xF5, 0xF8, 0x01,\n0x83, 0x2B, 0x3C, 0x7C, 0xEC, 0x01, 0x44, 0x02, 0x14, 0xF5, 0xC3, 0xE3, 0xD2, 0xC1, 0x07, 0xC3,\n0x8F, 0xB6, 0x56, 0x4F, 0x79, 0x07, 0x41, 0x78, 0x9E, 0x55, 0x85, 0x87, 0xCF, 0x88, 0xB8, 0x47,\n0x98, 0xF0, 0xDD, 0xD0, 0x3E, 0x22, 0x91, 0x07, 0x67, 0x1C, 0x58, 0xFC, 0x06, 0xFD, 0x23, 0x22,\n0x24, 0x09, 0x42, 0xC8, 0x47, 0x0B, 0x11, 0x7F, 0xEC, 0xBE, 0x69, 0x3C, 0x11, 0xE1, 0xB4, 0x11,\n0xC6, 0x57, 0x68, 0xBA, 0x44, 0x82, 0x7D, 0x1C, 0x4C, 0xC8, 0x6D, 0x21, 0xF8, 0x87, 0xE0, 0x21,\n0xD6, 0xF1, 0x15, 0x5D, 0x80, 0x80, 0x78, 0x42, 0x46, 0x36, 0x42, 0x5E, 0xB2, 0xB0, 0x0E, 0x77,\n0x45, 0x56, 0x1F, 0x17, 0x32, 0x1F, 0x76, 0x3C, 0x28, 0x9D, 0x7F, 0x90, 0x90, 0xB1, 0xFB, 0xCC,\n0x99, 0x1B, 0x0E, 0x9D, 0x22, 0x40, 0x11, 0x77, 0x99, 0xFC, 0x30, 0x0B, 0x5A, 0xE7, 0x05, 0x14,\n0xEA, 0xD3, 0x7B, 0x6B, 0x63, 0xD3, 0xA1, 0x6D, 0x3D, 0x91, 0x85, 0xAD, 0x10, 0x8E, 0xB8, 0x1F,\n0xBD, 0xDF, 0xE4, 0x45, 0x8B, 0x6A, 0x3B, 0xC8, 0x3A, 0x2F, 0x44, 0xEA, 0x1E, 0x09, 0xD2, 0xC1,\n0xFC, 0x47, 0x7A, 0x3A, 0xF0, 0xF1, 0x79, 0xE9, 0x5B, 0xC4, 0x6F, 0x02, 0x17, 0xF2, 0x11, 0x4B,\n0xE7, 0x1F, 0xD4, 0x51, 0x08, 0x99, 0x17, 0x1D, 0x42, 0x26, 0x3B, 0xCB, 0xC7, 0xC8, 0xCA, 0x47,\n0x04, 0x88, 0x3D, 0x10, 0x59, 0x9C, 0xA7, 0x78, 0xF8, 0xF4, 0x39, 0xD5, 0x3F, 0x99, 0x75, 0xC0,\n0xF4, 0x6E, 0x4A, 0xC8, 0x40, 0xF2, 0x0F, 0x0A, 0x2F, 0xC7, 0x27, 0xEE, 0x66, 0xAD, 0x82, 0x8F,\n0x20, 0xFB, 0x55, 0x32, 0x3E, 0x4F, 0xBB, 0xCC, 0xB8, 0x4A, 0x38, 0x67, 0xD3, 0x83, 0x79, 0xE5,\n0x1D, 0x64, 0xD3, 0xA9, 0x6D, 0x8D, 0x07, 0x63, 0x75, 0xA6, 0x3F, 0xF2, 0x84, 0xA4, 0xFF, 0x43,\n0xCC, 0x47, 0xF7, 0x64, 0x16, 0x2A, 0x94, 0xE4, 0x58, 0x51, 0x87, 0x75, 0x38, 0x61, 0x54, 0x6C,\n0xD4, 0x06, 0x3B, 0x08, 0xE9, 0x8F, 0x54, 0x5A, 0xFF, 0x38, 0x6A, 0x42, 0xA4, 0x28, 0x2C, 0x84,\n0xEC, 0x86, 0x46, 0x3E, 0x80, 0x43, 0x0A, 0xC8, 0xA1, 0x09, 0x91, 0x17, 0xDC, 0xC0, 0x7A, 0x52,\n0x74, 0x2B, 0x3D, 0xC8, 0xA3, 0xF0, 0xC1, 0x50, 0x5D, 0xE1, 0x1F, 0x8C, 0x43, 0xDC, 0xF4, 0xD5,\n0x34, 0xF8, 0x08, 0x2A, 0x20, 0x13, 0x80, 0x68, 0x75, 0x9B, 0xF0, 0x24, 0x4D, 0x88, 0x20, 0xC7,\n0xD6, 0xDD, 0x21, 0xD7, 0x9C, 0xBD, 0x62, 0x96, 0x62, 0xD3, 0x2D, 0x8F, 0x86, 0xAF, 0xEA, 0x39,\n0x2D, 0xF2, 0x91, 0x91, 0x77, 0x26, 0x54, 0x9C, 0x30, 0x7B, 0x5C, 0x77, 0x8B, 0x64, 0xB0, 0x4A,\n0x8F, 0x95, 0x90, 0x0C, 0x7C, 0x80, 0x1E, 0x02, 0x73, 0xCF, 0x0B, 0xE3, 0x8F, 0x44, 0x82, 0x7F,\n0x1C, 0xEA, 0x21, 0x70, 0x0B, 0x29, 0xFC, 0xE8, 0x9F, 0xEE, 0xB5, 0xA7, 0x3F, 0x32, 0x80, 0xD8,\n0x09, 0x79, 0x8B, 0xE2, 0x90, 0xAB, 0xE1, 0x75, 0xD1, 0xAB, 0x08, 0x0F, 0x6B, 0xFA, 0xE3, 0xAE,\n0x5F, 0x53, 0x35, 0x1E, 0x21, 0xA9, 0x0E, 0xDB, 0x70, 0x0E, 0xE2, 0xAA, 0xF2, 0x73, 0x9E, 0x42,\n0xA3, 0x99, 0x9D, 0xEC, 0x74, 0x2F, 0x52, 0xD0, 0xEB, 0x3E, 0x3D, 0xAE, 0x9A, 0x69, 0x6F, 0xF2,\n0x21, 0x8D, 0xB2, 0x38, 0xA7, 0xB5, 0x81, 0x04, 0x42, 0x5A, 0x0E, 0x42, 0x5E, 0xF3, 0x1E, 0x12,\n0x21, 0x82, 0x63, 0x4A, 0x8F, 0x95, 0xEB, 0x81, 0xF7, 0xD8, 0x7D, 0x74, 0xD6, 0x7B, 0xF9, 0x95,\n0xE4, 0x1F, 0x87, 0x7B, 0x88, 0xC6, 0x3F, 0x48, 0xC8, 0xC1, 0xE9, 0x8F, 0x3C, 0x20, 0x76, 0x42,\n0x86, 0x4D, 0x42, 0x86, 0x43, 0xA4, 0x3F, 0xFA, 0x75, 0x50, 0xFA, 0xE3, 0x4E, 0x94, 0xCC, 0x07,\n0x85, 0x57, 0x87, 0x51, 0x96, 0x47, 0x64, 0xD0, 0x3E, 0x85, 0xA6, 0x88, 0x24, 0x09, 0x91, 0x75,\n0xAF, 0xBE, 0x72, 0x51, 0x33, 0xB3, 0xDB, 0xE0, 0x43, 0x22, 0x64, 0xB3, 0xF5, 0x31, 0x7A, 0xF0,\n0x0F, 0x41, 0x8F, 0xCC, 0x0D, 0x3A, 0x0F, 0x91, 0xF6, 0x27, 0x9A, 0xBF, 0xAA, 0x79, 0x40, 0xC9,\n0x22, 0xE2, 0x27, 0xF9, 0x50, 0x00, 0x0A, 0xD3, 0x1F, 0x5A, 0x44, 0xEE, 0x04, 0xD9, 0x13, 0x22,\n0x91, 0x7F, 0x18, 0x08, 0x79, 0xB1, 0xF3, 0xD1, 0x0D, 0x88, 0x3D, 0x21, 0xB2, 0xDB, 0x87, 0x1F,\n0x11, 0x1F, 0x42, 0xA4, 0x5E, 0x98, 0xF9, 0xD0, 0x00, 0xD2, 0x0E, 0x3F, 0x04, 0x44, 0x06, 0x53,\n0x58, 0x88, 0x33, 0x12, 0x77, 0x05, 0x6B, 0x97, 0x83, 0xF0, 0xC2, 0x2C, 0xA8, 0x31, 0x7F, 0x25,\n0x8A, 0x3D, 0x58, 0xF4, 0x0F, 0xE8, 0xA9, 0xB2, 0x10, 0x40, 0xC2, 0xCB, 0xAF, 0x44, 0x42, 0x9A,\n0x0E, 0x22, 0xEF, 0x0F, 0xCD, 0x83, 0x97, 0x97, 0xA4, 0xC7, 0xCA, 0x1F, 0xF8, 0x2B, 0xD4, 0x06,\n0xCE, 0x5C, 0xC5, 0xD6, 0x94, 0xFC, 0xE3, 0x70, 0x42, 0x34, 0xFE, 0x41, 0x42, 0x78, 0xE2, 0xBE,\n0xDC, 0x5D, 0x59, 0xF9, 0xE8, 0x06, 0x84, 0x84, 0x98, 0x27, 0xB3, 0x86, 0x8B, 0x42, 0xDC, 0xF1,\n0x8F, 0xAF, 0x8B, 0xDB, 0x43, 0xD2, 0x1F, 0xB2, 0x18, 0x87, 0x08, 0x62, 0x52, 0xDD, 0xCF, 0xF8,\n0x12, 0x03, 0x9E, 0x55, 0x93, 0x4E, 0x84, 0x9E, 0xC5, 0xF4, 0x87, 0xA4, 0x9F, 0xF6, 0x09, 0x11,\n0xE8, 0xB1, 0x99, 0xC9, 0xF0, 0x55, 0x7E, 0x94, 0xE5, 0x7D, 0x04, 0xB5, 0xE2, 0x1F, 0xAC, 0x88,\n0xC8, 0x5A, 0xC1, 0xEB, 0x57, 0x0D, 0x0B, 0x21, 0xF8, 0x28, 0x8C, 0x41, 0x5C, 0xC5, 0x0B, 0xB3,\n0x9C, 0x81, 0xE0, 0x21, 0xFB, 0x07, 0x24, 0xF8, 0xC7, 0xC1, 0xD3, 0xBD, 0x1C, 0x7F, 0x14, 0x0A,\n0x2D, 0x5F, 0x0E, 0x48, 0x7F, 0xF4, 0x01, 0x62, 0x27, 0xE4, 0xF2, 0xC5, 0xEF, 0x08, 0xFC, 0x43,\n0x16, 0x08, 0x39, 0x05, 0x1F, 0x54, 0xA9, 0xF1, 0x0F, 0x4E, 0xF7, 0x7A, 0x07, 0xC1, 0x2A, 0x86,\n0x83, 0xDD, 0x86, 0x7D, 0x06, 0x8B, 0xB7, 0x0F, 0xF2, 0x21, 0x28, 0xE0, 0x91, 0xFA, 0x47, 0xBE,\n0xE7, 0x07, 0xF3, 0x20, 0x1F, 0x91, 0xE2, 0x97, 0xEF, 0x01, 0x5C, 0xEB, 0xF4, 0x50, 0x27, 0x74,\n0xEA, 0xC3, 0x25, 0xFC, 0xD1, 0x0F, 0x38, 0xDD, 0x3B, 0x80, 0xD0, 0x50, 0x0A, 0x09, 0xF6, 0x71,\n0xB4, 0xA4, 0x7A, 0x41, 0xC9, 0x84, 0xBC, 0x5C, 0x9A, 0xF9, 0xE8, 0x06, 0xE4, 0x80, 0x84, 0x08,\n0xD3, 0x1F, 0xA2, 0x26, 0x87, 0xA4, 0x07, 0x65, 0xD1, 0x40, 0x94, 0x84, 0x80, 0x91, 0x01, 0xA1,\n0x80, 0xB8, 0x4A, 0x86, 0x21, 0x8E, 0x10, 0xC8, 0x19, 0x84, 0x8E, 0x90, 0x76, 0xFA, 0xFC, 0xBD,\n0x10, 0x87, 0xF8, 0xF4, 0xC7, 0x46, 0x16, 0x93, 0xEA, 0xE4, 0x43, 0x4B, 0x08, 0x23, 0x2D, 0x5F,\n0x78, 0x74, 0xA1, 0xEC, 0xED, 0xA4, 0x74, 0x1E, 0x42, 0x3E, 0x04, 0x71, 0xFA, 0xEA, 0x04, 0x84,\n0x4C, 0x91, 0x10, 0x51, 0xF1, 0xC1, 0xA4, 0xFA, 0x10, 0xD3, 0x57, 0x36, 0x3E, 0x3E, 0x79, 0xFB,\n0x48, 0x04, 0x84, 0x84, 0xE8, 0xBF, 0x87, 0x3B, 0x8C, 0xD2, 0xE7, 0x42, 0xA4, 0x6E, 0x4F, 0x0F,\n0x1A, 0x44, 0xFF, 0xD0, 0x11, 0xC2, 0xAB, 0x77, 0x33, 0x0E, 0xD2, 0x1E, 0x75, 0x40, 0x69, 0x78,\n0x2E, 0xC7, 0x21, 0xE4, 0x42, 0x96, 0x73, 0x90, 0x06, 0x03, 0x92, 0x8F, 0x98, 0xF8, 0xF8, 0xC9,\n0xC5, 0x21, 0x63, 0x48, 0x74, 0x90, 0xB0, 0xAE, 0xE6, 0xB2, 0xF4, 0x7C, 0x88, 0xE3, 0xAB, 0xC3,\n0x53, 0x86, 0x85, 0x46, 0x4C, 0xAA, 0xDB, 0xD3, 0x83, 0x1A, 0x40, 0xEC, 0x29, 0xC3, 0xEB, 0x42,\n0x2F, 0xA0, 0x64, 0x4F, 0x7F, 0x18, 0x09, 0xD1, 0x0B, 0xAF, 0x1E, 0x44, 0xC3, 0x6F, 0x57, 0xA5,\n0x2B, 0x22, 0xB2, 0xB6, 0x48, 0x08, 0xCF, 0x13, 0x10, 0x74, 0xC3, 0x2B, 0x0A, 0x7C, 0x58, 0xC4,\n0xF0, 0xBC, 0xCB, 0x41, 0xDA, 0x8D, 0xF1, 0x39, 0xF9, 0xD0, 0xE9, 0xCE, 0x24, 0x7B, 0xCA, 0xD0,\n0xA2, 0xF3, 0x85, 0x39, 0x3D, 0xA8, 0x02, 0xC4, 0x3E, 0xCA, 0x62, 0xFC, 0x21, 0x6B, 0x79, 0x5D,\n0xBC, 0x9B, 0x1A, 0xF9, 0x30, 0xC9, 0xF8, 0x81, 0x7E, 0x06, 0x40, 0x1A, 0x6A, 0xA3, 0xC2, 0x15,\n0x67, 0x7B, 0x55, 0xA3, 0x2B, 0xA6, 0x0C, 0x37, 0x26, 0xAD, 0x00, 0x88, 0x46, 0x8C, 0x43, 0xB8,\n0x37, 0x3A, 0x0F, 0x19, 0xF0, 0xB8, 0xBC, 0x78, 0x74, 0xA9, 0x1E, 0xFE, 0xA6, 0xED, 0x6C, 0x72,\n0x9C, 0x06, 0x82, 0x28, 0x3C, 0x92, 0x15, 0x48, 0x84, 0x00, 0x45, 0x28, 0x5E, 0xCE, 0xB4, 0xC4,\n0x6A, 0x34, 0x9A, 0x1C, 0x61, 0xAE, 0x80, 0xC4, 0x82, 0xA5, 0x87, 0x0B, 0xB0, 0x60, 0x95, 0x13,\n0x64, 0x33, 0xC7, 0xF0, 0x49, 0x29, 0x77, 0x57, 0xF3, 0x29, 0x1D, 0xFF, 0xBC, 0x86, 0xF8, 0xD9,\n0x71, 0xEC, 0x11, 0x4A, 0x62, 0xE3, 0xCF, 0xAF, 0xAB, 0xCB, 0x5D, 0x6E, 0x42, 0x3D, 0x1F, 0x2B,\n0x7A, 0x88, 0x05, 0xB1, 0xBA, 0x0E, 0xEF, 0x3E, 0x57, 0x9E, 0xC9, 0x12, 0x20, 0x78, 0x88, 0x9C,\n0x51, 0xDF, 0x9E, 0x2B, 0x7E, 0xF7, 0xF0, 0xAC, 0x90, 0x4D, 0xD5, 0x61, 0xA9, 0x3C, 0xEC, 0x8F,\n0x98, 0x88, 0x16, 0x85, 0x38, 0x11, 0x70, 0x31, 0xE7, 0x20, 0x44, 0xE8, 0xB5, 0x0E, 0xF2, 0x7B,\n0x39, 0x12, 0x79, 0xE1, 0x06, 0x45, 0xA1, 0xD7, 0xAB, 0xCA, 0x41, 0xE8, 0xEB, 0x05, 0x8B, 0x22,\n0x55, 0x38, 0x32, 0x11, 0xA1, 0xAF, 0x82, 0x47, 0xDB, 0x56, 0x11, 0xB2, 0xD9, 0xD4, 0x11, 0x72,\n0x3E, 0x7F, 0xC4, 0x41, 0x14, 0xFF, 0x58, 0x06, 0x04, 0xE9, 0x7C, 0x3C, 0x9D, 0xB7, 0x4F, 0xDB,\n0xBD, 0xDA, 0xB9, 0x60, 0xFD, 0x57, 0x77, 0x15, 0x84, 0x6C, 0xF0, 0x8F, 0x1A, 0xD5, 0xF0, 0x91,\n0x2A, 0x66, 0x21, 0x9A, 0x19, 0x38, 0x08, 0x78, 0x98, 0x6A, 0x08, 0x29, 0xFA, 0xB0, 0x96, 0x4E,\n0xFD, 0x5F, 0x51, 0x62, 0xFC, 0x41, 0x0C, 0xA2, 0xF3, 0x31, 0xA8, 0xE8, 0x8E, 0x98, 0x71, 0x90,\n0xEF, 0x5D, 0x15, 0x21, 0x01, 0xE9, 0xAA, 0xE1, 0xC3, 0x4E, 0x9C, 0x83, 0x4C, 0xC8, 0xDE, 0x4E,\n0xCB, 0xF3, 0x93, 0x4E, 0xC8, 0x4E, 0x02, 0x04, 0xE9, 0x45, 0x1C, 0xCE, 0x5B, 0x9D, 0x90, 0xFD,\n0xFD, 0x9D, 0xED, 0xA6, 0x4E, 0x48, 0x2D, 0x1F, 0x04, 0x22, 0x2A, 0x1F, 0xA6, 0xAE, 0x68, 0x91,\n0xA3, 0x32, 0x2B, 0xF2, 0x9A, 0x54, 0x81, 0x07, 0x84, 0x08, 0xFA, 0xE5, 0x12, 0xFF, 0x79, 0x7D,\n0x2F, 0x56, 0x12, 0xBB, 0x35, 0xE3, 0x20, 0x8E, 0xC7, 0x90, 0x46, 0x0D, 0x2A, 0x1F, 0x6B, 0x12,\n0x12, 0x1E, 0x36, 0x36, 0xDD, 0x6D, 0xEE, 0xF7, 0x2A, 0x1F, 0xA6, 0xB3, 0x7E, 0x17, 0xD6, 0x4E,\n0x04, 0x04, 0xE9, 0x7C, 0x98, 0x9E, 0x9E, 0x14, 0x42, 0xDE, 0xEF, 0xEF, 0xCD, 0x3F, 0x6A, 0x08,\n0x09, 0xED, 0x3F, 0x13, 0x12, 0xA4, 0x4C, 0xE1, 0xD0, 0x91, 0x89, 0x87, 0x14, 0xE7, 0x49, 0x99,\n0x57, 0xA7, 0x56, 0x8E, 0x14, 0x7F, 0xF8, 0x7D, 0x20, 0x10, 0xB2, 0xD0, 0xD1, 0x4B, 0x2D, 0x39,\n0x2D, 0xAC, 0xA7, 0x84, 0x83, 0xCC, 0x07, 0xF7, 0x61, 0x99, 0xCA, 0x3E, 0xBA, 0x32, 0x16, 0xEB,\n0x86, 0xA3, 0x63, 0x12, 0xB3, 0x4A, 0x61, 0x55, 0x42, 0x36, 0x0F, 0x69, 0xB2, 0x48, 0xFD, 0x83,\n0xCA, 0x87, 0xE9, 0xBC, 0xD5, 0x08, 0xD9, 0x55, 0x03, 0xF2, 0xB6, 0xEB, 0x97, 0x83, 0x9A, 0x4F,\n0xDB, 0x81, 0x0F, 0x27, 0x64, 0xF9, 0x47, 0xEF, 0xEF, 0xA3, 0x4F, 0x82, 0x88, 0xC2, 0xC7, 0x6A,\n0x1E, 0x12, 0x22, 0x1E, 0xC7, 0xC6, 0x44, 0x57, 0xD6, 0x9C, 0x83, 0xD8, 0xA9, 0x95, 0xA5, 0xFA,\n0x87, 0xEE, 0x21, 0xA7, 0x34, 0x3C, 0xBD, 0xC2, 0x43, 0x22, 0x1A, 0x2E, 0xA9, 0x03, 0x0B, 0x11,\n0xA7, 0x97, 0x0E, 0xC2, 0x61, 0xE8, 0x8E, 0x7E, 0x27, 0x8E, 0x44, 0x48, 0xF8, 0x0F, 0x89, 0xFE,\n0xE1, 0x93, 0x11, 0xB2, 0xD7, 0xF8, 0xD0, 0x09, 0xE9, 0x77, 0x15, 0x80, 0xA0, 0x7E, 0x91, 0x8F,\n0x01, 0x0F, 0xAA, 0x55, 0x2B, 0xE1, 0xF9, 0x86, 0x3D, 0x5D, 0x95, 0x8F, 0xC7, 0xB0, 0xF8, 0x3F,\n0x1A, 0xAF, 0x8F, 0x3E, 0xB8, 0xD4, 0x08, 0x21, 0xF1, 0x31, 0xE6, 0x20, 0xCE, 0x07, 0x12, 0xF8,\n0xF0, 0x71, 0xB6, 0x78, 0x08, 0xFA, 0x3D, 0xEE, 0x1F, 0xC8, 0x02, 0xF6, 0xB9, 0xF0, 0x03, 0xFF,\n0x70, 0x8F, 0x92, 0xF8, 0x40, 0x65, 0xAE, 0x90, 0x1D, 0xCD, 0x0B, 0x1F, 0xAE, 0xDF, 0x44, 0x48,\n0xBA, 0xB0, 0x02, 0x1F, 0x48, 0xF1, 0x0F, 0x26, 0x81, 0x90, 0xFD, 0xD3, 0x16, 0x42, 0xCE, 0x24,\n0x0B, 0xAB, 0xF9, 0x00, 0x90, 0x7A, 0x42, 0xFA, 0xBE, 0xA8, 0xF5, 0x6E, 0x84, 0x1C, 0xE6, 0x7E,\n0xF4, 0x87, 0x07, 0xFC, 0x43, 0x20, 0xE4, 0x31, 0xA8, 0x9A, 0x42, 0x64, 0xCE, 0x43, 0x42, 0x6C,\n0x5F, 0xA5, 0x32, 0x58, 0x86, 0x88, 0xAD, 0x73, 0x8E, 0xB8, 0x8A, 0xEE, 0x9E, 0xB2, 0x22, 0xE1,\n0x6C, 0xFF, 0x2A, 0xB5, 0x1B, 0x52, 0x8D, 0x13, 0x08, 0x99, 0xEE, 0xBF, 0x2A, 0x8B, 0x29, 0xEA,\n0xFE, 0x31, 0xAC, 0x6B, 0xCD, 0x2B, 0x5A, 0x59, 0xD7, 0x0E, 0x62, 0x33, 0x88, 0x1C, 0x3B, 0x2A,\n0x85, 0x0D, 0x03, 0x0B, 0xC3, 0x0A, 0x7C, 0xE8, 0x88, 0x3C, 0x5C, 0x9E, 0x37, 0x0F, 0x0B, 0x84,\n0x9C, 0xE1, 0x03, 0x42, 0x04, 0x3E, 0x54, 0x40, 0x50, 0x2F, 0xF1, 0x01, 0x21, 0xB3, 0xFE, 0x01,\n0x1F, 0x0A, 0x21, 0x8F, 0x77, 0xF5, 0xC7, 0x5D, 0x8F, 0x43, 0x42, 0x48, 0xE6, 0x61, 0x0B, 0x47,\n0xE4, 0x0B, 0x09, 0x02, 0x7C, 0xC4, 0x37, 0xF1, 0x0F, 0xD9, 0x43, 0xC0, 0x23, 0xAF, 0x68, 0xF1,\n0x39, 0x71, 0xC8, 0x7C, 0xD4, 0x92, 0x3F, 0x9A, 0xCF, 0x97, 0xFC, 0x03, 0xB1, 0x93, 0xE0, 0x81,\n0x83, 0x74, 0x7E, 0xA3, 0x7B, 0xC2, 0xC3, 0xB6, 0x9A, 0x10, 0x04, 0x3E, 0xD6, 0x21, 0xC4, 0x4F,\n0x1B, 0x26, 0x08, 0x11, 0xF8, 0x80, 0x10, 0x81, 0x0F, 0x11, 0x10, 0xD4, 0x0B, 0x7C, 0x48, 0x84,\n0x58, 0x7A, 0x90, 0xEB, 0x80, 0x14, 0x87, 0xDC, 0xE2, 0xB8, 0x77, 0x33, 0x7C, 0xE4, 0x2A, 0xA4,\n0x19, 0x11, 0x2A, 0x9A, 0xD0, 0xE4, 0xA0, 0x1D, 0xC2, 0x19, 0x26, 0x45, 0xEA, 0x54, 0x1E, 0xF1,\n0x15, 0x93, 0xC4, 0x07, 0x71, 0xC8, 0xEC, 0x90, 0x29, 0xCC, 0x29, 0x3B, 0xD4, 0xE9, 0x45, 0xF1,\n0x0F, 0xF4, 0x8D, 0x9D, 0xBC, 0x4A, 0xF6, 0x0C, 0x5C, 0x78, 0xD1, 0x9F, 0xE6, 0xEF, 0xC0, 0xE4,\n0x36, 0xAC, 0xC0, 0x07, 0x12, 0xF8, 0x60, 0x22, 0x21, 0x22, 0xF0, 0x01, 0x21, 0x02, 0x1F, 0x2A,\n0x20, 0x68, 0x02, 0x0F, 0xE7, 0xA3, 0x24, 0x64, 0xFB, 0xAC, 0xF0, 0xC1, 0x34, 0x9D, 0xFE, 0xB8,\n0xCD, 0x61, 0xEF, 0xC2, 0xF8, 0x60, 0xA9, 0x18, 0x7A, 0xE6, 0xF1, 0xA4, 0x4D, 0x5C, 0xB1, 0xE5,\n0xF7, 0xCB, 0xA2, 0x0D, 0x38, 0xC8, 0x2B, 0x92, 0x08, 0x89, 0x95, 0xAB, 0x18, 0xCD, 0xE4, 0xEF,\n0xD3, 0xF9, 0xF0, 0x5F, 0xD7, 0x5A, 0x1A, 0x93, 0xCE, 0x17, 0xD8, 0x9C, 0x5E, 0x1A, 0x1F, 0xA8,\n0x18, 0x33, 0xC5, 0x4E, 0x0F, 0xAE, 0x11, 0x2F, 0x1C, 0x29, 0x12, 0x39, 0x76, 0xCD, 0x5C, 0xCA,\n0x30, 0xDC, 0x46, 0x15, 0x7C, 0xCC, 0x26, 0x44, 0xB6, 0xF0, 0x01, 0x21, 0xD3, 0x09, 0x91, 0x1D,\n0x12, 0x00, 0x51, 0x09, 0xF1, 0xEE, 0x5D, 0x04, 0x21, 0xE3, 0xBF, 0xFB, 0x00, 0x1F, 0x92, 0x87,\n0x84, 0x5B, 0x69, 0x22, 0xFD, 0xE1, 0xFD, 0x33, 0x38, 0x48, 0x33, 0x20, 0xD2, 0x12, 0xA9, 0x13,\n0xB1, 0x72, 0x13, 0xEF, 0xB5, 0x66, 0xFD, 0xC3, 0x87, 0x8C, 0x0F, 0xF2, 0xB7, 0x89, 0xF0, 0x83,\n0xF8, 0x83, 0x39, 0x69, 0x02, 0x0F, 0xCC, 0x23, 0x7F, 0x51, 0x7A, 0x55, 0xF0, 0x41, 0xD5, 0x38,\n0x5F, 0xF0, 0x66, 0xB6, 0xE1, 0x70, 0x74, 0xD1, 0x58, 0x73, 0x89, 0xC5, 0x09, 0x42, 0xC2, 0xAD,\n0x24, 0xF0, 0xC1, 0x74, 0x07, 0x21, 0xE3, 0xDD, 0x57, 0x68, 0x36, 0x21, 0xB2, 0xAB, 0x06, 0xA4,\n0x7F, 0x4B, 0x2F, 0xA4, 0xF0, 0x81, 0x20, 0x04, 0x3D, 0x1B, 0x1F, 0xEC, 0x9B, 0x60, 0x22, 0x21,\n0xAC, 0x48, 0x48, 0xC8, 0x67, 0x40, 0x4B, 0x41, 0x2C, 0x9B, 0xE2, 0xE0, 0x20, 0x37, 0x11, 0xAE,\n0xAB, 0xF8, 0xC7, 0x92, 0x89, 0x10, 0x9F, 0xF3, 0x98, 0x03, 0xA7, 0x04, 0x23, 0x59, 0x68, 0x5E,\n0x21, 0x67, 0x64, 0x3E, 0xFC, 0xA0, 0xAA, 0x90, 0x2D, 0x07, 0xC9, 0x7C, 0x90, 0x10, 0x81, 0x91,\n0xFC, 0xD6, 0x36, 0x6E, 0xAD, 0x1E, 0x83, 0xF8, 0x6B, 0x22, 0x21, 0x12, 0x6E, 0xA7, 0x85, 0xEE,\n0xAB, 0xF2, 0xCA, 0x7A, 0xD8, 0x3F, 0x4F, 0xF0, 0xA1, 0x13, 0xB2, 0xAB, 0x05, 0x04, 0x4C, 0x7A,\n0x36, 0xAE, 0xF9, 0xD8, 0x3A, 0x1E, 0x12, 0x21, 0x1F, 0xDE, 0xDD, 0x63, 0x1F, 0x12, 0x21, 0xE1,\n0x76, 0x87, 0xFD, 0x91, 0x84, 0x08, 0x7C, 0x44, 0x16, 0x28, 0xCF, 0x6C, 0x2B, 0xA9, 0x3A, 0x9A,\n0x3F, 0x18, 0xA4, 0x70, 0x10, 0xEC, 0x43, 0xF1, 0x90, 0x6F, 0x50, 0xE1, 0xE7, 0x30, 0xB2, 0xAD,\n0x51, 0x3E, 0xDC, 0x36, 0x70, 0x0F, 0x34, 0x53, 0x36, 0xCE, 0xC3, 0x0F, 0x1C, 0xC4, 0x96, 0x4B,\n0xE1, 0x79, 0x49, 0xC8, 0xB5, 0x83, 0x0C, 0xCD, 0xA9, 0x74, 0x60, 0xFE, 0x96, 0xBC, 0x1F, 0xB6,\n0x87, 0x2D, 0x08, 0x41, 0xE1, 0x96, 0x1A, 0x4D, 0x7F, 0x4C, 0x23, 0x72, 0xFF, 0xFC, 0x41, 0xE4,\n0x83, 0x84, 0x88, 0x1E, 0x7E, 0x00, 0xC8, 0xB2, 0xFA, 0x72, 0x04, 0x08, 0x7C, 0xCC, 0x10, 0xC2,\n0x28, 0x42, 0x6C, 0x72, 0x74, 0x0A, 0x6B, 0xF0, 0x81, 0x4A, 0x3E, 0x72, 0xFC, 0x91, 0x10, 0xF1,\n0x45, 0x7A, 0x0E, 0x42, 0x63, 0x8B, 0xD2, 0x41, 0x5E, 0x91, 0xE2, 0x21, 0x0C, 0xB3, 0x8D, 0x4B,\n0x37, 0x0F, 0x1C, 0xE5, 0xBA, 0x7B, 0xB7, 0x14, 0xB4, 0x40, 0x08, 0xCA, 0x68, 0x64, 0x67, 0xFA,\n0xE9, 0x2C, 0xE6, 0x6F, 0x94, 0xFC, 0x03, 0x5D, 0x38, 0x88, 0xCD, 0x54, 0x2B, 0xB6, 0xD9, 0xDD,\n0xD5, 0x5E, 0x71, 0xEB, 0x3A, 0x21, 0x12, 0x6E, 0x2C, 0xD9, 0x3F, 0x48, 0x88, 0x94, 0x7C, 0xE8,\n0x84, 0xC0, 0x87, 0x0E, 0xC8, 0x5B, 0x3F, 0x43, 0x08, 0xA3, 0x6C, 0xE1, 0x63, 0x54, 0x17, 0x49,\n0xF5, 0x3D, 0xFE, 0x31, 0x39, 0x6D, 0x56, 0xE1, 0x03, 0x75, 0x45, 0xFB, 0xEA, 0x98, 0x82, 0xD0,\n0x74, 0x71, 0x74, 0x07, 0x81, 0x95, 0x2F, 0x45, 0x7A, 0x50, 0x26, 0x84, 0xEE, 0x5D, 0xDA, 0x3F,\n0xF6, 0xBA, 0xB8, 0xDA, 0x97, 0xA1, 0xFA, 0x35, 0x19, 0x28, 0x6D, 0x5C, 0x77, 0x5F, 0xF1, 0xA1,\n0x54, 0x4D, 0xC1, 0xAE, 0x64, 0xFF, 0xC0, 0x43, 0x6C, 0x76, 0x91, 0xFB, 0x88, 0xD7, 0x8A, 0x36,\n0x3F, 0x6C, 0xC8, 0x6D, 0xC5, 0x36, 0xC2, 0x7A, 0x7C, 0x94, 0x84, 0x2C, 0x9F, 0x37, 0x74, 0xF7,\n0x92, 0x1E, 0x44, 0x33, 0x9D, 0x59, 0xF0, 0xA1, 0x03, 0x42, 0xB3, 0x8A, 0x68, 0x84, 0x75, 0x99,\n0x0F, 0xBA, 0x7B, 0x49, 0x9F, 0x0B, 0x80, 0xD0, 0x7D, 0xB5, 0x82, 0x2E, 0x6F, 0x2F, 0xC9, 0xD5,\n0x46, 0x9B, 0xCE, 0xA9, 0xF0, 0x3F, 0x0C, 0xD4, 0x44, 0x78, 0x70, 0x10, 0xD2, 0x83, 0x22, 0x21,\n0x2F, 0x04, 0x04, 0x91, 0x0F, 0xAE, 0xF6, 0x6C, 0x17, 0x7C, 0x8C, 0xB4, 0xAD, 0xD8, 0x2A, 0x09,\n0x31, 0xC7, 0x70, 0xAF, 0xC8, 0x53, 0x26, 0x12, 0x5C, 0x96, 0xF9, 0x40, 0xC5, 0xED, 0xEF, 0xE9,\n0xCA, 0x91, 0x68, 0xF8, 0xEB, 0x20, 0x36, 0xE7, 0xE6, 0xE8, 0x65, 0x1C, 0x12, 0xD6, 0xD0, 0x6C,\n0x78, 0x3E, 0x91, 0x10, 0xA1, 0x7B, 0x57, 0x20, 0x44, 0xE0, 0x43, 0x6E, 0x62, 0x81, 0xCC, 0x5B,\n0x7F, 0x91, 0xFE, 0x10, 0x08, 0x39, 0x38, 0x1F, 0x5F, 0xF1, 0xC9, 0xE9, 0x09, 0x44, 0xC2, 0x3A,\n0xEA, 0x5A, 0xD2, 0x1F, 0x3E, 0xE5, 0x66, 0xC3, 0x31, 0x2E, 0xFC, 0x72, 0x99, 0x50, 0xC1, 0x41,\n0x5E, 0x15, 0x31, 0x86, 0xEA, 0x65, 0x10, 0x2C, 0x38, 0x1C, 0x79, 0x2D, 0x2F, 0x47, 0xFC, 0x03,\n0x34, 0x46, 0x34, 0x76, 0x7B, 0x49, 0xD4, 0xC9, 0x3F, 0xF0, 0x94, 0xBE, 0x2F, 0xD3, 0x22, 0xF3,\n0x51, 0x26, 0xD5, 0x1B, 0x1C, 0x24, 0xB7, 0xB5, 0x6C, 0x61, 0x53, 0x6A, 0x64, 0xF9, 0x5F, 0xDB,\n0x00, 0x1F, 0x2B, 0x48, 0xF5, 0x0F, 0x92, 0xEA, 0xF0, 0x21, 0x12, 0x02, 0x1F, 0x3A, 0x20, 0x30,\n0xE1, 0x73, 0xA9, 0x5E, 0xE2, 0x83, 0xEE, 0xDE, 0x48, 0x08, 0xE9, 0x0F, 0xD1, 0x44, 0xC2, 0x4A,\n0xC7, 0xBD, 0xED, 0xF2, 0x08, 0xF4, 0x48, 0x80, 0xE7, 0x40, 0xBC, 0x28, 0x2F, 0x0E, 0x92, 0x58,\n0x69, 0x1B, 0x6F, 0x76, 0x68, 0x7C, 0x10, 0xAA, 0xE7, 0x48, 0x83, 0x18, 0x9D, 0xAB, 0xFD, 0x09,\n0x48, 0x9C, 0x90, 0x13, 0x7C, 0x8C, 0x5A, 0x08, 0x7F, 0x83, 0x0F, 0xFF, 0x00, 0xBE, 0xC2, 0x3F,\n0x1F, 0x5C, 0x06, 0x49, 0xE1, 0x47, 0x99, 0x32, 0xB4, 0xD9, 0xAB, 0x29, 0x7A, 0xF6, 0xBC, 0x73,\n0x2A, 0xF2, 0x8A, 0x1F, 0xBC, 0x9C, 0x10, 0x09, 0x6B, 0x49, 0xF4, 0x0F, 0x52, 0x86, 0xF0, 0x21,\n0x13, 0x02, 0x1F, 0x3A, 0x20, 0xA8, 0xC7, 0x3C, 0xD0, 0xDB, 0xCE, 0x3A, 0xC5, 0x04, 0x3E, 0x48,\n0x19, 0x1E, 0xE0, 0x43, 0x25, 0x24, 0xAC, 0xA7, 0x6E, 0xE0, 0xC3, 0x6F, 0xDF, 0x8D, 0xFE, 0x61,\n0x6F, 0x94, 0x75, 0x6F, 0x28, 0xF2, 0x9F, 0x4E, 0x84, 0x41, 0x5E, 0x69, 0x4D, 0xF6, 0x10, 0x22,\n0x0D, 0x5F, 0x8B, 0xD7, 0x76, 0xA2, 0x6A, 0xDE, 0x3C, 0x3C, 0x87, 0x82, 0x51, 0x4C, 0x50, 0x02,\n0x8A, 0xF6, 0x9A, 0xF3, 0xE1, 0x88, 0x5C, 0x3F, 0xA7, 0x10, 0xFF, 0xD0, 0x94, 0xFC, 0xC3, 0xA1,\n0xC8, 0xD9, 0xF3, 0xE6, 0xE2, 0xD8, 0x34, 0xF6, 0xF2, 0x72, 0xEF, 0x91, 0x90, 0xB0, 0x9E, 0xE0,\n0x43, 0x24, 0x84, 0xF4, 0xA0, 0x4A, 0xC8, 0x0E, 0x89, 0x80, 0x60, 0x1A, 0x93, 0xF2, 0xD1, 0x1F,\n0x92, 0xCE, 0x36, 0x5B, 0x78, 0x4E, 0x3F, 0x84, 0xD0, 0x9E, 0x7C, 0x34, 0xFF, 0xD0, 0x15, 0x6A,\n0x63, 0xF9, 0x36, 0x76, 0xEF, 0xC6, 0xC0, 0x23, 0x96, 0x54, 0x8C, 0x70, 0x70, 0x99, 0x74, 0x30,\n0x62, 0x4C, 0x62, 0xC2, 0x3E, 0x34, 0xF1, 0x8C, 0xDB, 0x1F, 0xEE, 0x19, 0x3F, 0x49, 0xA2, 0x47,\n0x4C, 0xBC, 0xBF, 0xC9, 0x45, 0xF3, 0xAA, 0x10, 0xAC, 0xC4, 0x25, 0x88, 0x60, 0x41, 0x7C, 0xCE,\n0x4F, 0x1C, 0xC4, 0xBF, 0xDB, 0x6D, 0x44, 0xF6, 0x0F, 0x1E, 0xE4, 0xD9, 0xE4, 0xA6, 0xE7, 0x30,\n0x73, 0x4C, 0xE2, 0x32, 0x1E, 0x23, 0xFF, 0x63, 0xBA, 0xBB, 0xB7, 0x52, 0x35, 0x44, 0xB5, 0x41,\n0xE3, 0x83, 0x94, 0xE1, 0xBB, 0xFD, 0x1F, 0xDA, 0xCE, 0x98, 0xB7, 0x69, 0x20, 0x0C, 0xC3, 0x54,\n0x51, 0x4A, 0x18, 0x62, 0x0B, 0xA1, 0x63, 0x89, 0xE4, 0x22, 0x32, 0x9D, 0x4E, 0x30, 0x74, 0x8A,\n0x18, 0x2A, 0xA6, 0xAC, 0x95, 0x3C, 0x74, 0x64, 0x30, 0x73, 0x07, 0x4B, 0xEC, 0x9D, 0xBC, 0x64,\n0x88, 0xF8, 0x0D, 0xFD, 0xA5, 0xBC, 0xB1, 0xA9, 0x5E, 0x7A, 0xBD, 0xF3, 0xBD, 0x1F, 0x84, 0xE7,\n0x12, 0x50, 0x23, 0x0F, 0x89, 0x7D, 0x4F, 0xDE, 0xBB, 0xEF, 0xB3, 0xDA, 0xD3, 0x7C, 0x93, 0x58,\n0xE1, 0xC1, 0xFC, 0x90, 0x05, 0xC9, 0xD7, 0xAF, 0xF8, 0x3A, 0x04, 0x0A, 0x6F, 0x21, 0xAA, 0x48,\n0xA8, 0xEB, 0x53, 0x7E, 0x18, 0x58, 0x9A, 0xA6, 0xFC, 0xAB, 0xF1, 0x60, 0xAF, 0x0D, 0x1C, 0xB9,\n0xFB, 0xB0, 0x18, 0xBF, 0x1B, 0x59, 0xAC, 0xC2, 0xBF, 0xF0, 0x64, 0xDA, 0x93, 0x8E, 0x5F, 0x94,\n0xBF, 0x57, 0xDC, 0x8B, 0x51, 0x95, 0x6F, 0x8C, 0x0F, 0x09, 0xF8, 0xC1, 0xE2, 0x52, 0xF4, 0x3F,\n0x23, 0x85, 0x45, 0xE0, 0x7B, 0x23, 0x77, 0xA7, 0x02, 0x00, 0xBB, 0xF3, 0x2C, 0x1E, 0x27, 0x6A,\n0x59, 0x78, 0xD2, 0x0F, 0x8D, 0x05, 0xCE, 0xC5, 0xD8, 0x1B, 0x5C, 0xF0, 0x8F, 0xFF, 0x4E, 0xE1,\n0x31, 0xB9, 0x31, 0xBD, 0xF6, 0xEE, 0xE9, 0xCC, 0xE1, 0x74, 0xFE, 0x4F, 0xAE, 0xB6, 0xA6, 0x89,\n0xF3, 0xA9, 0x5E, 0xAF, 0x54, 0xC2, 0x6A, 0x08, 0x6F, 0x88, 0x2C, 0x08, 0x53, 0x24, 0xDE, 0xA4,\n0xF3, 0xC5, 0xAA, 0x0E, 0x2B, 0xD5, 0x90, 0xB0, 0x5E, 0x0F, 0xE3, 0xEF, 0x50, 0xD4, 0x1E, 0xCE,\n0x5D, 0xBA, 0xE5, 0xD2, 0x2F, 0x65, 0x5E, 0xE1, 0xB9, 0x33, 0xE1, 0xB1, 0x3C, 0x30, 0x80, 0xFB,\n0x13, 0xAF, 0xE5, 0xD1, 0x5E, 0xDF, 0x76, 0x77, 0x36, 0xFA, 0x9F, 0x26, 0xFA, 0xFE, 0xCE, 0x44,\n0x77, 0x8D, 0xF7, 0xAF, 0x8F, 0xB6, 0xFD, 0xFC, 0x79, 0x21, 0x8E, 0xD3, 0x91, 0x7E, 0x67, 0x62,\n0x8B, 0x0B, 0x66, 0xBA, 0xB6, 0x0E, 0x73, 0x42, 0x7F, 0xB8, 0x8B, 0x10, 0x56, 0x32, 0xA1, 0xAE,\n0xAC, 0x82, 0xD0, 0x08, 0x86, 0x46, 0xEC, 0x09, 0xF6, 0x1F, 0xF5, 0x86, 0x25, 0xDE, 0x12, 0x21,\n0x5C, 0x36, 0x4E, 0x7F, 0xE0, 0xC9, 0x53, 0xA8, 0xB1, 0x6D, 0xB6, 0x26, 0x3F, 0xBC, 0xB7, 0xF8,\n0xD1, 0x82, 0xEB, 0xBD, 0x3A, 0xBF, 0xE0, 0x47, 0xD7, 0x99, 0xF4, 0x00, 0x36, 0x3F, 0x6C, 0x86,\n0xE0, 0xED, 0xC8, 0x76, 0xEC, 0xE1, 0x07, 0xF8, 0xAC, 0x82, 0x23, 0x3D, 0xB0, 0xF8, 0xB1, 0x85,\n0x21, 0x44, 0x51, 0x04, 0x53, 0xA2, 0x51, 0x71, 0xB0, 0x64, 0xB5, 0xD2, 0x56, 0xFF, 0xC3, 0xC5,\n0x0A, 0xD3, 0xB8, 0xB6, 0x08, 0xF2, 0x08, 0x2D, 0x12, 0xA1, 0x81, 0xE7, 0x73, 0x6A, 0x80, 0x0C,\n0x19, 0x86, 0xA3, 0x56, 0xC5, 0x6A, 0x1C, 0x90, 0x3F, 0xA2, 0xCD, 0x0F, 0x1C, 0x8B, 0x73, 0xFE,\n0x71, 0xB9, 0xF3, 0xB2, 0x1E, 0xEF, 0x47, 0x43, 0xB4, 0x69, 0xB0, 0x80, 0x1F, 0x00, 0xB9, 0x20,\n0xCE, 0x31, 0xF8, 0x01, 0x4C, 0x7E, 0x00, 0x8B, 0x1F, 0x36, 0x43, 0xA6, 0xF7, 0xA3, 0xE7, 0xC7,\n0x88, 0xC9, 0x0F, 0xDD, 0x10, 0x8F, 0x2B, 0x35, 0x1A, 0x62, 0xBB, 0xC0, 0x57, 0x97, 0xF2, 0xE4,\n0x01, 0x8D, 0xBA, 0x4B, 0x1F, 0x02, 0x26, 0x31, 0xD0, 0x05, 0xF9, 0x4E, 0x3F, 0x12, 0xC1, 0xC1,\n0x1F, 0xEA, 0x91, 0xAA, 0x0A, 0x8A, 0xA8, 0xE1, 0xE8, 0x9E, 0xD0, 0x3E, 0xE2, 0x95, 0xDD, 0x8F,\n0xED, 0x12, 0x43, 0x34, 0xC4, 0x2F, 0xFC, 0x84, 0x68, 0x48, 0x0B, 0x26, 0x43, 0x24, 0x45, 0xBA,\n0x27, 0x2C, 0x7E, 0x00, 0xDD, 0x0F, 0x93, 0x21, 0xDD, 0x13, 0x5A, 0x7E, 0xB4, 0xC0, 0x60, 0xC8,\n0xC2, 0x03, 0x8B, 0x21, 0xCD, 0x78, 0xA5, 0xEC, 0x86, 0x88, 0x73, 0x07, 0xE8, 0x86, 0x0C, 0x61,\n0x03, 0x3F, 0x54, 0x43, 0xA0, 0xC6, 0xF7, 0x57, 0x5F, 0x4E, 0x69, 0x51, 0x2C, 0x64, 0x55, 0xF5,\n0x04, 0xE2, 0x69, 0x3D, 0x28, 0x9D, 0xF4, 0xC6, 0x60, 0x88, 0x73, 0x5B, 0xE3, 0xC9, 0x9B, 0xEC,\n0x58, 0xAA, 0x21, 0xE2, 0x89, 0xB0, 0x11, 0x59, 0xB4, 0x44, 0xCA, 0x90, 0x8E, 0xC8, 0x7E, 0xE8,\n0x86, 0xDC, 0xFF, 0xE4, 0xF1, 0xBA, 0x1F, 0xBA, 0x21, 0x6D, 0x4B, 0x94, 0xFC, 0xF0, 0x44, 0x38,\n0xF3, 0x3B, 0x5C, 0xA4, 0xA7, 0xA1, 0xA3, 0x1B, 0xC2, 0x69, 0xE6, 0x86, 0x75, 0xB9, 0xC6, 0xBB,\n0xAE, 0x36, 0xF5, 0x6F, 0x1E, 0x15, 0x3F, 0x0E, 0x5F, 0x20, 0xC8, 0x21, 0x97, 0x21, 0x51, 0x7E,\n0x4C, 0x6C, 0xAA, 0xA2, 0x21, 0xE1, 0xB4, 0x3D, 0x27, 0x67, 0xCF, 0x8F, 0xDD, 0xC7, 0x2D, 0x4F,\n0xBB, 0xB0, 0x11, 0xC1, 0xF2, 0x0A, 0xC8, 0x19, 0xD2, 0x12, 0xC9, 0x90, 0x0E, 0xE8, 0x86, 0xDC,\n0xF4, 0x7F, 0x82, 0xF9, 0x2F, 0xE4, 0x07, 0xD1, 0xFC, 0x20, 0x5A, 0x7E, 0x10, 0xC9, 0x0F, 0x22,\n0xF8, 0xF1, 0x91, 0x97, 0x0A, 0x5F, 0x83, 0x26, 0x45, 0x04, 0x43, 0x1C, 0xA0, 0x21, 0x41, 0xF7,\n0x03, 0x54, 0x82, 0x1F, 0x93, 0x20, 0xCC, 0x90, 0x99, 0xFC, 0x20, 0x15, 0xB6, 0xEA, 0xC7, 0x79,\n0x3F, 0x9E, 0x53, 0xFA, 0x8C, 0xCB, 0xBF, 0xC9, 0x0F, 0x66, 0x88, 0x94, 0x1F, 0x44, 0xF3, 0x83,\n0xDC, 0xEE, 0x85, 0xED, 0x07, 0x91, 0xF2, 0x83, 0x48, 0xF9, 0x41, 0x1E, 0x7A, 0xC9, 0x0F, 0xA2,\n0x6D, 0x3F, 0x48, 0x41, 0x8F, 0x85, 0x7F, 0x8E, 0x94, 0x1F, 0x34, 0xE4, 0xDC, 0x19, 0xE2, 0x9E,\n0x73, 0x11, 0x0A, 0x3D, 0xC2, 0x68, 0x22, 0x17, 0xFD, 0x98, 0x04, 0xA1, 0x21, 0x85, 0xFC, 0xA0,\n0x21, 0xC7, 0x61, 0xEE, 0x5E, 0x5E, 0x17, 0x53, 0xF0, 0x83, 0x7A, 0x48, 0x8C, 0xF9, 0xC1, 0x81,\n0x62, 0x96, 0x17, 0xF2, 0x83, 0xA0, 0xB8, 0x2F, 0xF8, 0x41, 0x66, 0x33, 0x64, 0xDF, 0xC5, 0x48,\n0x7A, 0x90, 0x82, 0x1F, 0xFD, 0x0B, 0x24, 0x3F, 0x88, 0xB2, 0xBE, 0xD2, 0x33, 0xC4, 0xC7, 0x48,\n0xF9, 0xC1, 0x61, 0xFD, 0x2E, 0x2C, 0xCC, 0x9D, 0x98, 0xB7, 0x61, 0xAE, 0x77, 0x4D, 0x3F, 0x14,\n0x43, 0xE0, 0x07, 0x05, 0x39, 0xA0, 0x4D, 0x2E, 0xE6, 0x07, 0xD8, 0x20, 0x43, 0x72, 0xC5, 0xAC,\n0x10, 0x5E, 0x3B, 0x20, 0x1B, 0x62, 0x2F, 0x5F, 0xF1, 0x74, 0x2B, 0xFB, 0x10, 0x9F, 0x40, 0xCD,\n0x0F, 0x1A, 0x22, 0xE4, 0x07, 0xD1, 0xFC, 0x20, 0x33, 0xAB, 0xAC, 0xFB, 0x87, 0xC4, 0xF1, 0x92,\n0x1F, 0x24, 0x1F, 0x80, 0xC8, 0x8F, 0x04, 0xA5, 0xF2, 0x55, 0xCC, 0x8C, 0x1F, 0x88, 0x8C, 0x68,\n0x98, 0x1B, 0x22, 0x8D, 0x93, 0xFD, 0x00, 0x0D, 0x0C, 0x91, 0xFD, 0x00, 0x9B, 0x39, 0x43, 0x0E,\n0x14, 0x64, 0x52, 0x24, 0x23, 0x12, 0xF3, 0x23, 0x32, 0x24, 0xE3, 0x47, 0xE3, 0x12, 0x9C, 0xCB,\n0x0F, 0xE6, 0x87, 0x96, 0x21, 0x3E, 0x09, 0xCA, 0xB8, 0x82, 0x1F, 0x4A, 0x86, 0x74, 0x29, 0x04,\n0x3F, 0x44, 0x43, 0xFA, 0x24, 0x92, 0x1F, 0x24, 0x2F, 0x48, 0x9B, 0x24, 0x5F, 0xFC, 0xF6, 0x49,\n0x94, 0xFC, 0xB0, 0x1B, 0xC2, 0x86, 0x88, 0xE4, 0x07, 0x0D, 0x09, 0x82, 0x1F, 0x4A, 0x86, 0x1C,\n0x28, 0xC8, 0xAC, 0x21, 0x75, 0x8A, 0xEA, 0x64, 0x48, 0xD2, 0x8F, 0xB7, 0x8D, 0x4B, 0x72, 0xC6,\n0xF6, 0xC7, 0x8B, 0x01, 0x69, 0x24, 0x3F, 0x08, 0x2A, 0x55, 0x85, 0xFA, 0x55, 0x6C, 0xC8, 0x3E,\n0xE3, 0xC7, 0x8F, 0x2E, 0xC1, 0x8D, 0xE0, 0x87, 0x62, 0x48, 0x9F, 0x41, 0xF2, 0x83, 0x68, 0x7E,\n0x10, 0x2D, 0x3F, 0x48, 0x2E, 0x3F, 0x1A, 0x5E, 0x22, 0x0E, 0xE4, 0xBD, 0xD5, 0x10, 0xA7, 0xFA,\n0x01, 0x9A, 0xCB, 0x10, 0x04, 0x3F, 0x48, 0x5E, 0x0F, 0x0A, 0x92, 0x37, 0xE4, 0x40, 0x3F, 0x22,\n0xAA, 0x4D, 0xB8, 0x78, 0xA1, 0xC8, 0x7A, 0x6C, 0x0F, 0xCA, 0x86, 0xB8, 0x4B, 0x6B, 0xF9, 0x8A,\n0xF9, 0x11, 0x67, 0xC8, 0xD6, 0xEB, 0x7E, 0xB0, 0x65, 0x28, 0xE5, 0x47, 0xBE, 0x21, 0xD2, 0x11,\n0xC5, 0x90, 0x3E, 0x4B, 0xC1, 0x0F, 0xCD, 0x90, 0x9B, 0x2E, 0xC7, 0xAD, 0xB4, 0xBE, 0x22, 0x5A,\n0x7E, 0x90, 0xA4, 0x1F, 0x8C, 0x8F, 0x78, 0x2C, 0xCD, 0x86, 0x48, 0x7E, 0xB0, 0x21, 0x92, 0x6B,\n0x0F, 0xEA, 0x86, 0x1C, 0x52, 0x82, 0xD0, 0x10, 0x76, 0x0A, 0x6B, 0x20, 0x1B, 0x02, 0x3F, 0xAE,\n0x5C, 0x1E, 0xB9, 0xBC, 0xAB, 0xE7, 0x07, 0x33, 0x24, 0xD5, 0x33, 0xF4, 0x33, 0xBC, 0x4F, 0x18,\n0xD2, 0x12, 0x65, 0x1F, 0xB2, 0xEF, 0xB2, 0xEC, 0x3B, 0xC9, 0x0F, 0x92, 0x2F, 0x5F, 0xE9, 0x86,\n0xC0, 0xD7, 0x1C, 0x3F, 0x0A, 0xF5, 0xAB, 0x18, 0x2D, 0x3F, 0x48, 0xBA, 0x7D, 0xCE, 0x71, 0xF6,\n0x62, 0x96, 0x03, 0x59, 0x43, 0x8E, 0x21, 0xD5, 0x1E, 0xCC, 0x92, 0xD9, 0x9E, 0x53, 0x90, 0x9C,\n0x21, 0xF8, 0xB1, 0x9E, 0xA1, 0x8A, 0x6F, 0x7E, 0x5F, 0x1F, 0xE9, 0x87, 0x60, 0x88, 0x6B, 0xCE,\n0xE2, 0x07, 0x33, 0x24, 0x36, 0xC4, 0xCF, 0x43, 0x43, 0x04, 0x3F, 0xC0, 0x3E, 0x52, 0xA4, 0x9B,\n0xE3, 0x56, 0xF3, 0x83, 0x68, 0xF9, 0x41, 0xB4, 0xE5, 0x15, 0x91, 0xF2, 0x83, 0xBC, 0x8B, 0xFD,\n0xF0, 0xF3, 0xC4, 0xF1, 0x91, 0xCA, 0x0F, 0xA1, 0x21, 0xA2, 0x1A, 0xE2, 0x48, 0xCA, 0x90, 0x21,\n0x24, 0xDA, 0x1F, 0x79, 0x1E, 0xF3, 0x7E, 0x50, 0x10, 0x1A, 0x42, 0x3F, 0x92, 0xD6, 0x65, 0x5B,\n0x86, 0xF5, 0xE0, 0xE8, 0x47, 0x9A, 0x38, 0x3F, 0xEC, 0xE5, 0xAB, 0xFC, 0x68, 0xB6, 0x51, 0x31,\n0xCB, 0x97, 0x58, 0x24, 0xB6, 0x1F, 0x7A, 0x86, 0x74, 0x25, 0x24, 0x3F, 0x88, 0x98, 0x1F, 0x44,\n0xF2, 0x83, 0x48, 0xF9, 0x41, 0x34, 0x3F, 0x48, 0xA1, 0x7C, 0x75, 0xDE, 0x0C, 0x71, 0x39, 0xD8,\n0x54, 0x17, 0xFC, 0x20, 0x55, 0xC6, 0x0F, 0x0A, 0x42, 0x1E, 0x55, 0x3F, 0xC0, 0x66, 0x53, 0xD3,\n0x90, 0xF5, 0xE0, 0xCA, 0xFC, 0x43, 0x7B, 0x30, 0xB7, 0xFD, 0xC8, 0x35, 0xD5, 0x7D, 0x19, 0xDC,\n0xD3, 0x1E, 0xE5, 0x87, 0xAA, 0x48, 0x4B, 0x3F, 0x24, 0x43, 0x6E, 0xBE, 0xF6, 0x45, 0x1E, 0xEE,\n0xA3, 0xF6, 0x47, 0x01, 0xCD, 0x0F, 0x12, 0x6D, 0xCF, 0x8B, 0x48, 0xCB, 0x2B, 0xF2, 0xAC, 0x7C,\n0xD5, 0x14, 0xAF, 0x95, 0xF1, 0xEA, 0xC3, 0x10, 0xD1, 0x0F, 0xB6, 0x0C, 0xE9, 0x47, 0x5D, 0xA2,\n0x8A, 0xFC, 0xC8, 0x0B, 0xC2, 0x86, 0x48, 0xC1, 0x0F, 0xB6, 0x0C, 0x8F, 0x53, 0xF9, 0xEA, 0xC2,\n0x29, 0x34, 0xF4, 0xC3, 0x9F, 0x61, 0x79, 0x95, 0x6F, 0x88, 0x78, 0xA2, 0xAC, 0xB2, 0x5A, 0x05,\n0x36, 0xD5, 0xE9, 0x87, 0x66, 0x48, 0x2F, 0x71, 0x1F, 0xB5, 0x3F, 0x74, 0x45, 0x3A, 0x85, 0x3D,\n0x6F, 0x2F, 0x91, 0xD0, 0xFC, 0x20, 0x42, 0x7E, 0xFC, 0x43, 0x43, 0xC4, 0x39, 0xD1, 0x0F, 0xB6,\n0x0C, 0x59, 0xBE, 0xD2, 0x0D, 0xA1, 0x1F, 0xB1, 0x20, 0x54, 0x64, 0xE2, 0x17, 0x6D, 0x67, 0xAC,\n0xDB, 0xB8, 0x11, 0x45, 0x51, 0x13, 0x86, 0x29, 0x13, 0xC6, 0x7A, 0xC3, 0x2C, 0x54, 0x09, 0xA0,\n0x03, 0xBB, 0x12, 0x04, 0xA9, 0x50, 0x13, 0x21, 0x70, 0xA1, 0xCA, 0x48, 0x17, 0x60, 0x0B, 0xAB,\n0xD9, 0x2A, 0xA9, 0x54, 0x18, 0x70, 0x0C, 0xF7, 0x69, 0xC2, 0x66, 0x0B, 0x43, 0x1F, 0x90, 0x4A,\n0x5F, 0x9A, 0xCB, 0xE1, 0x30, 0xD7, 0x9A, 0x90, 0x7C, 0xF7, 0x05, 0xD9, 0x33, 0x14, 0xA5, 0x60,\n0x95, 0x0D, 0x43, 0xCE, 0xF1, 0x9D, 0xE1, 0xA3, 0x49, 0xA4, 0x92, 0xCD, 0xAC, 0x31, 0x84, 0xE5,\n0x41, 0x01, 0x3D, 0x3F, 0x74, 0x3F, 0xD8, 0x3A, 0x43, 0xE6, 0xE1, 0xF2, 0x5D, 0x2D, 0x43, 0x74,\n0x3F, 0x58, 0x10, 0xF9, 0x55, 0x83, 0x7E, 0x48, 0x30, 0x3F, 0x44, 0xE8, 0x87, 0x04, 0xF3, 0x43,\n0x83, 0x7E, 0x68, 0x74, 0x7E, 0x54, 0xDA, 0xB1, 0xF2, 0x17, 0x44, 0x74, 0x3F, 0xAA, 0xE9, 0x64,\n0x41, 0x3F, 0x3C, 0x86, 0x7C, 0xD5, 0x04, 0x39, 0x7E, 0x34, 0x61, 0xC9, 0x90, 0x7E, 0x08, 0xC4,\n0xF2, 0x07, 0xD1, 0xFD, 0x90, 0x33, 0x64, 0x2E, 0x73, 0x4E, 0x3F, 0x44, 0x43, 0x98, 0x1F, 0x02,\n0xF4, 0x43, 0x83, 0xD3, 0x0F, 0x0D, 0xFA, 0x21, 0x41, 0x3F, 0x34, 0x78, 0xF9, 0x95, 0xC6, 0x48,\n0xF9, 0xE3, 0x7F, 0x2B, 0x19, 0x4E, 0x55, 0xAE, 0x16, 0x0B, 0xFA, 0x61, 0x33, 0xA3, 0x1E, 0x03,\n0x82, 0x10, 0xFA, 0x21, 0x10, 0x7E, 0x0F, 0x77, 0x59, 0x4D, 0x65, 0xCC, 0xF2, 0xA0, 0x5E, 0xFE,\n0x18, 0x28, 0xAA, 0xCF, 0x1D, 0xAC, 0xCE, 0xE9, 0x87, 0x02, 0xF3, 0x43, 0x82, 0x7E, 0xE8, 0x86,\n0x78, 0xBE, 0xCF, 0xF2, 0x87, 0x44, 0xA3, 0xF7, 0x67, 0x07, 0xBC, 0xFC, 0x4A, 0x36, 0x84, 0xC7,\n0xE2, 0x9B, 0x64, 0xC8, 0x54, 0x67, 0x89, 0x91, 0x0D, 0xFD, 0xB0, 0x39, 0xC2, 0x0F, 0x4D, 0x10,\n0x94, 0x07, 0x15, 0x58, 0x10, 0xC9, 0x3D, 0xDB, 0xFD, 0xDF, 0xCA, 0xE7, 0x72, 0x83, 0x21, 0x3E,\n0xE8, 0x87, 0xC4, 0xFA, 0x57, 0x1F, 0xF4, 0x43, 0x82, 0x7E, 0x68, 0x30, 0x3E, 0x34, 0xD6, 0x9F,\n0x5D, 0x50, 0x0F, 0x0D, 0x1E, 0x29, 0x2D, 0x44, 0xDC, 0xBF, 0x65, 0xA8, 0xC0, 0xA2, 0xFA, 0x35,\n0xFC, 0xD0, 0x39, 0x7E, 0xFD, 0x36, 0x82, 0x7C, 0xAC, 0x3D, 0x82, 0xB0, 0x7C, 0xAE, 0x52, 0xB9,\n0x76, 0x7A, 0x75, 0x31, 0xD7, 0x8F, 0xAA, 0x5F, 0x90, 0x4F, 0xBF, 0x78, 0x05, 0x39, 0x78, 0xBA,\n0xFB, 0xEF, 0x4F, 0x4F, 0x3E, 0x41, 0xB6, 0x9E, 0x6D, 0x79, 0x45, 0x86, 0xF8, 0x04, 0x39, 0x9F,\n0xFB, 0xE0, 0xE5, 0x57, 0xDF, 0x64, 0x94, 0x35, 0xA5, 0x21, 0x0A, 0xF5, 0xCC, 0x25, 0x48, 0xA1,\n0x0A, 0xC2, 0x53, 0x58, 0xD2, 0x24, 0xA4, 0x9E, 0x64, 0xDC, 0x6E, 0xD5, 0x0F, 0x77, 0xF9, 0x43,\n0x9E, 0x84, 0x00, 0x87, 0x22, 0xAB, 0x73, 0x96, 0x40, 0xB4, 0x49, 0x88, 0xCF, 0x10, 0xDF, 0x10,\n0x0B, 0x7E, 0xF8, 0x0C, 0xE1, 0x0C, 0x44, 0x1D, 0x63, 0x7D, 0xE3, 0x21, 0x96, 0xEF, 0x70, 0x55,\n0x17, 0x2E, 0x70, 0x17, 0x29, 0x87, 0x22, 0x79, 0x39, 0xA9, 0x3F, 0xB2, 0x04, 0xA2, 0x4C, 0xD3,\n0x35, 0x41, 0x78, 0x92, 0x57, 0xF2, 0x23, 0xCB, 0x27, 0xA5, 0x6C, 0x48, 0x1E, 0x2E, 0x2F, 0xB9,\n0x71, 0x08, 0x82, 0x48, 0xA8, 0xE4, 0x1D, 0x8E, 0xB0, 0x99, 0x6F, 0x30, 0x51, 0x97, 0x69, 0x6F,\n0x76, 0xE3, 0xF1, 0x03, 0xB8, 0xF4, 0x00, 0x2E, 0x3F, 0x80, 0xC7, 0x0F, 0xE0, 0xF2, 0xC3, 0x65,\n0x48, 0xBB, 0x77, 0x3C, 0x7E, 0x00, 0x47, 0x88, 0xE0, 0xC0, 0x7A, 0x86, 0xDB, 0x37, 0x8D, 0x22,\n0xB9, 0xEC, 0x47, 0x9D, 0x95, 0x79, 0x26, 0x1B, 0x72, 0x6D, 0x4E, 0xD2, 0x59, 0x4C, 0xD7, 0x0D,\n0xC1, 0x18, 0xAF, 0x5C, 0x96, 0x65, 0x99, 0x89, 0xA3, 0xAC, 0x3C, 0xBF, 0x89, 0x37, 0x23, 0x95,\n0xF3, 0xA3, 0xC2, 0x7E, 0xD4, 0x87, 0x57, 0xE1, 0x32, 0x07, 0xAC, 0xF5, 0xFC, 0x58, 0x35, 0x2F,\n0x97, 0x1F, 0xC0, 0xE5, 0x87, 0x3E, 0x0D, 0x79, 0x8A, 0xB8, 0xFC, 0x00, 0xBA, 0x1F, 0x2E, 0x43,\n0xBA, 0xBD, 0xE3, 0xF1, 0x03, 0xE8, 0x7A, 0xE0, 0x85, 0xA6, 0x2A, 0x82, 0x5E, 0x83, 0xAF, 0xAA,\n0x19, 0xB2, 0xAC, 0x4B, 0x70, 0x55, 0xC2, 0x10, 0xD5, 0x0F, 0x70, 0x14, 0x04, 0xE9, 0xB8, 0xD6,\n0xFC, 0xC8, 0xCB, 0x86, 0x2C, 0x2B, 0xB5, 0xFC, 0xE8, 0x6E, 0x46, 0xEA, 0xC9, 0x0F, 0x55, 0x91,\n0x78, 0x39, 0x16, 0x0D, 0xB1, 0xFD, 0x50, 0x0D, 0xE1, 0x55, 0xEF, 0x0D, 0x0F, 0xB2, 0x1F, 0x11,\n0x97, 0x1F, 0xC0, 0xE5, 0x07, 0x50, 0xF5, 0x70, 0x19, 0x12, 0xF7, 0x0E, 0x56, 0x0E, 0x3D, 0xFC,\n0x86, 0x88, 0x13, 0x11, 0xDE, 0xCF, 0x5D, 0x2B, 0x14, 0x66, 0x65, 0xC3, 0xA4, 0x2C, 0x79, 0xA1,\n0x89, 0x56, 0x4A, 0x1F, 0x17, 0xA4, 0x78, 0x5F, 0x74, 0xB7, 0xFD, 0x58, 0xE4, 0x18, 0x5F, 0x05,\n0xB2, 0x5A, 0x29, 0x85, 0x74, 0xF1, 0x81, 0xA6, 0xE8, 0x81, 0xF8, 0x70, 0xF8, 0x71, 0xDB, 0xE6,\n0x47, 0x67, 0xC8, 0x4A, 0xBD, 0x18, 0xEB, 0x5C, 0x35, 0x84, 0x3D, 0x6C, 0xAD, 0x5D, 0x6A, 0x42,\n0x34, 0x3F, 0xC8, 0x41, 0xF2, 0x83, 0x48, 0x82, 0x10, 0x75, 0x7C, 0x15, 0x47, 0xA0, 0x2B, 0x4D,\n0x10, 0x1A, 0xE2, 0xD1, 0xA3, 0xA2, 0x21, 0x96, 0x20, 0x7A, 0x86, 0x4C, 0xB2, 0xB2, 0x63, 0xB2,\n0xB0, 0x0D, 0x39, 0x16, 0xB2, 0x20, 0x80, 0x86, 0x98, 0x7E, 0x2C, 0xF3, 0x32, 0x92, 0xA1, 0x99,\n0xF9, 0x41, 0x3F, 0xD0, 0x6C, 0x3F, 0x98, 0x1F, 0x78, 0x29, 0x7E, 0xFC, 0xC0, 0x63, 0x74, 0x61,\n0x1B, 0xD2, 0xDD, 0x49, 0x13, 0x60, 0xAD, 0xF9, 0x41, 0x5C, 0x97, 0x62, 0x09, 0x86, 0x1C, 0x9E,\n0x4E, 0xD0, 0xFC, 0x20, 0x92, 0x1E, 0x44, 0xCB, 0x0F, 0xB4, 0x88, 0xA4, 0x07, 0x51, 0x05, 0x61,\n0x86, 0x28, 0x7A, 0x30, 0x43, 0x72, 0x2D, 0x3F, 0x62, 0x88, 0x5C, 0x5A, 0x86, 0x14, 0xEF, 0xB9,\n0x2E, 0x86, 0x05, 0x29, 0x12, 0x8C, 0xCB, 0xDD, 0x2F, 0xF3, 0x65, 0x49, 0xB2, 0xBA, 0x9C, 0x56,\n0x86, 0x1F, 0xC9, 0x9D, 0xB9, 0x4D, 0x3F, 0x92, 0xFD, 0x68, 0xF8, 0x91, 0x60, 0xFB, 0xC1, 0x04,\n0x39, 0xB7, 0xAE, 0xE7, 0xFD, 0x14, 0xFD, 0x20, 0x9A, 0x1F, 0xE4, 0xA0, 0xE4, 0x87, 0x9E, 0x21,\n0xDE, 0xCB, 0xDD, 0x13, 0xD6, 0xB6, 0x1F, 0xDC, 0x39, 0xEA, 0xE5, 0xEE, 0x44, 0xD2, 0x43, 0xCF,\n0x90, 0x7F, 0xDF, 0xCF, 0xDD, 0xF6, 0x83, 0x58, 0x86, 0x14, 0x09, 0x83, 0x82, 0x14, 0xFF, 0x66,\n0xCC, 0x8F, 0xBA, 0x8B, 0x0F, 0xA6, 0x48, 0x5E, 0x0D, 0x4F, 0xCF, 0xAB, 0x98, 0x1F, 0x6C, 0xB6,\n0x1F, 0xBA, 0x21, 0xB7, 0x1B, 0xE6, 0x87, 0x64, 0xC8, 0xEA, 0x53, 0x77, 0xF4, 0x79, 0xBB, 0xEA,\n0x11, 0xD6, 0xDD, 0xFC, 0x83, 0x48, 0x7E, 0x10, 0x2D, 0x3F, 0x0E, 0x9A, 0x21, 0x08, 0xA5, 0x14,\n0xDB, 0x0F, 0xDD, 0x10, 0xDE, 0xA9, 0xBA, 0x05, 0xEF, 0x92, 0x1F, 0x44, 0x10, 0x44, 0xCF, 0x90,\n0xB4, 0xDF, 0xA0, 0xA8, 0x3E, 0x62, 0x48, 0x9E, 0xFA, 0x31, 0xC9, 0x6B, 0xE9, 0x17, 0xA6, 0x48,\n0xBF, 0x20, 0x45, 0x1F, 0x9A, 0x1F, 0x34, 0x64, 0x70, 0xAB, 0xAB, 0xDE, 0x47, 0x85, 0x48, 0xF3,\n0x0F, 0xBE, 0x94, 0x5F, 0x28, 0x24, 0x17, 0xC6, 0xFC, 0x23, 0x1E, 0x7E, 0x76, 0x06, 0x69, 0x78,\n0x45, 0x5C, 0x7E, 0xA0, 0x4B, 0x5B, 0x7E, 0xE8, 0x19, 0xB2, 0x7D, 0xEC, 0xC1, 0xE3, 0xC7, 0xC3,\n0xA8, 0x21, 0xE9, 0xBE, 0x09, 0x4D, 0xF3, 0x83, 0x08, 0x76, 0xF0, 0x55, 0xA1, 0xA8, 0x2E, 0xF8,\n0x41, 0x43, 0xA6, 0x83, 0x21, 0x92, 0x67, 0x9D, 0x20, 0x24, 0xAF, 0xFF, 0x87, 0x5F, 0xB9, 0x55,\n0x6E, 0xFA, 0x93, 0x9E, 0xBE, 0x4A, 0xA9, 0x07, 0x0B, 0x22, 0x37, 0x37, 0x8A, 0x20, 0x84, 0x3B,\n0x4F, 0x09, 0x91, 0xA6, 0xFC, 0xD1, 0xC3, 0x60, 0x51, 0x3D, 0xF6, 0x80, 0x93, 0x49, 0xC8, 0x58,\n0x41, 0x24, 0x74, 0xA9, 0x7F, 0xA3, 0xF9, 0x41, 0xB4, 0xFC, 0xA0, 0x2D, 0xCE, 0x9B, 0x36, 0xD8,\n0x7E, 0x68, 0x13, 0x91, 0x64, 0xDF, 0x44, 0xCE, 0x1D, 0x7E, 0xB0, 0x20, 0xA2, 0xF9, 0x71, 0x37,\n0x62, 0xC8, 0xC0, 0xB3, 0x09, 0x07, 0x0A, 0x22, 0x55, 0xCC, 0x8F, 0x84, 0xAB, 0xA1, 0x92, 0xE1,\n0xB5, 0x7C, 0xD3, 0x86, 0x02, 0xA8, 0x86, 0xCC, 0xE8, 0x87, 0x94, 0x21, 0x38, 0xBD, 0x3B, 0xF4,\n0xCC, 0x20, 0x63, 0xFA, 0x21, 0x86, 0x08, 0xC7, 0x57, 0x29, 0x3F, 0x0C, 0xE4, 0x47, 0x92, 0x20,\n0x9D, 0x30, 0x52, 0x7E, 0x10, 0xCD, 0x0F, 0xA2, 0x4D, 0x3F, 0x88, 0xE4, 0x07, 0xD1, 0xFC, 0x20,\n0xC2, 0xF4, 0x9C, 0x09, 0xF2, 0xA9, 0x7F, 0x98, 0xB5, 0x9A, 0x5F, 0x6C, 0x7C, 0x86, 0x54, 0x46,\n0x86, 0x58, 0x7E, 0xF0, 0x64, 0x96, 0x95, 0x1F, 0x84, 0x25, 0x43, 0xC9, 0x0F, 0x90, 0x0A, 0x72,\n0x2C, 0x5C, 0x37, 0x8E, 0x9B, 0xD0, 0x8F, 0x84, 0x7A, 0x39, 0x54, 0x3E, 0x97, 0x0D, 0xC1, 0x10,\n0x93, 0x82, 0x28, 0x21, 0xE2, 0xBE, 0x71, 0xDC, 0xE7, 0xFE, 0x04, 0x41, 0x1B, 0x2A, 0x7F, 0x0C,\n0xA0, 0xE9, 0x41, 0xC6, 0xFC, 0x38, 0xF4, 0x84, 0x88, 0xE4, 0x07, 0xD1, 0xF4, 0x20, 0x03, 0xA7,\n0x77, 0xA9, 0x86, 0x79, 0x63, 0x13, 0xFE, 0x60, 0x52, 0x0D, 0xA9, 0x3C, 0x19, 0x32, 0xFE, 0x80,\n0xDB, 0x5E, 0x3F, 0x06, 0xB8, 0x62, 0x41, 0xC4, 0xF6, 0x03, 0x5C, 0x53, 0x10, 0xC6, 0x87, 0x65,\n0x08, 0xFD, 0x58, 0x96, 0x83, 0x64, 0x65, 0x7F, 0xF9, 0x43, 0x33, 0x84, 0xF9, 0x21, 0x2B, 0x42,\n0x3F, 0x34, 0x45, 0x70, 0xA0, 0x07, 0x12, 0xA4, 0x59, 0x6B, 0xF9, 0x41, 0x24, 0x3F, 0x88, 0x96,\n0x1F, 0x44, 0xF3, 0x83, 0x48, 0x82, 0x90, 0xFE, 0xF1, 0x55, 0x9A, 0x20, 0x6C, 0xD2, 0xF8, 0x8A,\n0x78, 0xFC, 0xE0, 0xC9, 0x2C, 0x43, 0x10, 0x66, 0x88, 0x71, 0xFA, 0x2A, 0x61, 0x02, 0x43, 0x04,\n0x3F, 0x88, 0x29, 0x08, 0x39, 0xF5, 0x63, 0x51, 0x8E, 0x92, 0x4D, 0x8C, 0xFC, 0x30, 0x0C, 0x71,\n0xFA, 0x61, 0x3E, 0x00, 0xA1, 0xF7, 0xB7, 0x08, 0xD3, 0x04, 0xE1, 0x4C, 0x5D, 0xF3, 0x83, 0x48,\n0x7E, 0x90, 0xC1, 0xFC, 0x18, 0x08, 0x11, 0xCD, 0x0F, 0x62, 0xE8, 0x61, 0x19, 0x92, 0xEC, 0x11,\n0xEB, 0xE6, 0x58, 0x1B, 0x83, 0x64, 0x48, 0x6C, 0x1D, 0xD8, 0xC4, 0x10, 0xF3, 0x21, 0xE9, 0x2E,\n0x3F, 0xCA, 0x32, 0x29, 0x19, 0x1E, 0x0B, 0x83, 0x4E, 0x90, 0xC2, 0xBE, 0x11, 0xFC, 0x49, 0xF9,\n0xA3, 0x1C, 0x07, 0x5B, 0x79, 0x3A, 0x3F, 0x37, 0x1F, 0x59, 0xEA, 0xF4, 0xA3, 0xEA, 0x29, 0x9F,\n0x0F, 0x03, 0x81, 0xD2, 0xD3, 0x57, 0x7D, 0x09, 0x12, 0xC1, 0x27, 0xCD, 0x0F, 0xA2, 0xF9, 0x41,\n0x92, 0xE9, 0xB9, 0xC5, 0x41, 0xF2, 0x83, 0x48, 0x7E, 0x90, 0xC4, 0x8F, 0xF1, 0x00, 0x51, 0x1F,\n0x7F, 0x40, 0x8C, 0xFC, 0x30, 0x32, 0xC4, 0xE8, 0x37, 0x2C, 0x19, 0xDA, 0x7E, 0x80, 0xC4, 0x90,\n0xC2, 0xA6, 0x15, 0xA4, 0x50, 0x60, 0x7E, 0x5C, 0x5E, 0x59, 0x82, 0xA0, 0x25, 0xE5, 0x73, 0x59,\n0x90, 0x33, 0xD5, 0x0F, 0xE6, 0x87, 0x40, 0x3A, 0xBE, 0x7A, 0x97, 0x20, 0xFC, 0xC0, 0x81, 0x97,\n0x36, 0xFF, 0x20, 0x9A, 0x1F, 0x14, 0xE4, 0x30, 0xE0, 0xC7, 0x81, 0xC1, 0x71, 0x18, 0x30, 0xE4,\n0x51, 0x40, 0xF2, 0x83, 0x9C, 0x94, 0x3F, 0x06, 0x03, 0x84, 0xBE, 0x88, 0x7E, 0x70, 0x1E, 0x22,\n0xFB, 0x91, 0x96, 0x0C, 0xB5, 0x47, 0x40, 0x4B, 0x7E, 0xB0, 0xA8, 0x7E, 0x4D, 0x3F, 0x04, 0x1A,\n0x41, 0x0A, 0x8D, 0xA8, 0xC7, 0x75, 0xBD, 0x2C, 0x4D, 0x78, 0x32, 0x0B, 0xE5, 0x41, 0xE9, 0x51,\n0xE9, 0x2E, 0x3F, 0xE8, 0xC8, 0x2D, 0xE3, 0x43, 0xCB, 0x90, 0xF7, 0x91, 0xC1, 0xE9, 0x79, 0xDA,\n0x07, 0xCE, 0xE9, 0x87, 0xC0, 0xFA, 0x17, 0xD5, 0x8F, 0xF4, 0xEA, 0x5E, 0x3A, 0x40, 0x25, 0x68,\n0x07, 0xDE, 0x13, 0x43, 0xB6, 0x28, 0x0F, 0x0A, 0xD0, 0x0F, 0x89, 0x75, 0x72, 0xB7, 0xB8, 0x9E,\n0x00, 0x61, 0xC3, 0xF8, 0xD4, 0xFD, 0x08, 0x36, 0xFA, 0xE1, 0xCB, 0x90, 0x1B, 0xCD, 0x10, 0x96,\n0x07, 0x6D, 0x58, 0x32, 0x2C, 0x34, 0x7E, 0xC2, 0x53, 0x6E, 0x45, 0xA2, 0x1F, 0x79, 0x69, 0xC0,\n0x82, 0x48, 0xCE, 0xCB, 0x4B, 0xCC, 0xE6, 0xF6, 0x83, 0xA7, 0xAF, 0x74, 0x43, 0x78, 0xF0, 0x19,\n0x20, 0x3D, 0xCF, 0x38, 0x06, 0xFF, 0xDC, 0xE6, 0x47, 0x83, 0x7E, 0x68, 0x30, 0x3F, 0x24, 0xBC,\n0x0F, 0xF1, 0xA4, 0x1F, 0x12, 0x1C, 0x5E, 0x8D, 0x05, 0x08, 0x77, 0x1B, 0xFD, 0xD0, 0x1F, 0x52,\n0x28, 0x1F, 0xD8, 0x0A, 0xDD, 0x80, 0x76, 0x48, 0x86, 0x28, 0x7E, 0xB0, 0xA8, 0xEE, 0x7C, 0x88,\n0x27, 0x04, 0x51, 0x69, 0x7F, 0xBB, 0xB6, 0xD4, 0xC8, 0x6A, 0x6C, 0x37, 0x2F, 0x2F, 0x51, 0x1A,\n0xF6, 0x8B, 0x28, 0x47, 0x25, 0x4C, 0x3F, 0x08, 0xAF, 0xEE, 0xC5, 0x41, 0xEF, 0x49, 0x10, 0x42,\n0x73, 0x56, 0x52, 0x7C, 0xB0, 0x2E, 0x4D, 0x3F, 0x34, 0xD2, 0xE9, 0x79, 0x3A, 0xC8, 0x4A, 0x3F,\n0xD3, 0x0F, 0x09, 0xFA, 0xA1, 0xC1, 0xE9, 0xB9, 0x15, 0x20, 0xA1, 0x20, 0x42, 0x3F, 0x34, 0x28,\n0x87, 0xF2, 0x52, 0xE3, 0x83, 0x25, 0xC3, 0xA1, 0xF2, 0xC7, 0x50, 0x41, 0xC4, 0xF5, 0x18, 0xE8,\n0xEF, 0x0A, 0x1D, 0x96, 0x07, 0xB5, 0x51, 0x16, 0x7E, 0xFB, 0xE3, 0xEC, 0x46, 0x6C, 0x17, 0x67,\n0x28, 0x7F, 0x54, 0x17, 0x72, 0xC3, 0xAE, 0x64, 0x79, 0x50, 0x50, 0xE4, 0x87, 0xF9, 0xF9, 0xF9,\n0x4A, 0x6F, 0x2B, 0x5E, 0x9D, 0xA8, 0x21, 0xEA, 0xC1, 0xAB, 0x7B, 0x9F, 0x5C, 0xC0, 0x8F, 0xF8,\n0x6F, 0x4A, 0x50, 0x0F, 0xD5, 0x90, 0x76, 0xEF, 0x80, 0xEE, 0x1D, 0xAC, 0xD2, 0xD6, 0xFD, 0x29,\n0x14, 0x69, 0x76, 0xBE, 0xBA, 0xDA, 0xC4, 0x03, 0x26, 0x87, 0xC8, 0x99, 0xA7, 0x61, 0xAA, 0x0E,\n0x3F, 0x64, 0xF2, 0xF2, 0x43, 0xA1, 0xF3, 0x9D, 0x23, 0x41, 0xBE, 0x16, 0xF5, 0x32, 0xAB, 0x33,\n0x2C, 0x4A, 0x2B, 0x2F, 0x2F, 0x73, 0xFC, 0x1C, 0xA8, 0x1C, 0xAD, 0xA9, 0x69, 0xDC, 0x58, 0x8D,\n0x3F, 0x66, 0xEE, 0x36, 0x0E, 0xF0, 0x6D, 0x9C, 0x82, 0xF1, 0xB0, 0x7E, 0x08, 0x77, 0x21, 0xD4,\n0xDA, 0x7A, 0x4D, 0x41, 0xB4, 0x79, 0xC8, 0xE1, 0x09, 0x4D, 0x05, 0x19, 0xF2, 0xF8, 0xFA, 0xE8,\n0xE1, 0x15, 0xDB, 0xAE, 0x2F, 0x0F, 0xEB, 0x95, 0x87, 0xEF, 0xCF, 0xE7, 0x8E, 0x9D, 0x8F, 0xAF,\n0x36, 0xC7, 0xD5, 0xC1, 0x45, 0x85, 0xEE, 0x20, 0x83, 0x9B, 0x9D, 0xD4, 0xEC, 0x96, 0x76, 0x2B,\n0x6B, 0x74, 0x65, 0xC7, 0x10, 0xEB, 0xA8, 0x81, 0x7A, 0xE1, 0xE2, 0xAD, 0xCE, 0x64, 0xDE, 0xB2,\n0x65, 0xBE, 0xBC, 0x72, 0xF0, 0x92, 0x57, 0x77, 0x3A, 0x9B, 0xBB, 0xDB, 0xDB, 0xFD, 0x6E, 0xA3,\n0xB6, 0xFD, 0x7E, 0x87, 0xE3, 0xEA, 0x61, 0xBD, 0x7E, 0x78, 0x7E, 0xD0, 0x79, 0x7E, 0xBD, 0xBF,\n0x7F, 0x94, 0xDB, 0xFD, 0xFD, 0xF6, 0x8F, 0x96, 0xC3, 0xC9, 0x82, 0xD6, 0xF7, 0x19, 0xDF, 0xDB,\n0x6E, 0x3D, 0x7F, 0xFD, 0xE3, 0xEB, 0xF3, 0xB3, 0x63, 0xDB, 0x21, 0xC8, 0xFA, 0x7B, 0x17, 0xAB,\n0xDD, 0xFE, 0x6E, 0xA7, 0xB5, 0xFD, 0x66, 0xB7, 0xBF, 0xBD, 0xBD, 0xF3, 0x50, 0xE5, 0x2F, 0x57,\n0x0E, 0xD0, 0xD1, 0xD0, 0xDD, 0x64, 0xEA, 0xCB, 0x0F, 0xD7, 0x85, 0xC8, 0xF1, 0xAF, 0xB3, 0x3F,\n0x65, 0x3F, 0xDE, 0xEA, 0xC5, 0xA2, 0x51, 0x50, 0x5C, 0x96, 0xD3, 0xDC, 0x63, 0x48, 0x5E, 0x81,\n0x3B, 0x9D, 0x5B, 0x80, 0x7D, 0xAF, 0x36, 0xF8, 0xF1, 0x45, 0x37, 0x64, 0x05, 0x3F, 0x00, 0x7A,\n0x8E, 0xBD, 0x44, 0x3F, 0x5E, 0x9F, 0x5F, 0x1F, 0x7F, 0x94, 0xFB, 0xF0, 0x16, 0x3D, 0xFE, 0x0F,\n0x99, 0x43, 0xF3, 0xED, 0xDF, 0xD5, 0xBF, 0x1C, 0xF9, 0x71, 0x8F, 0xED, 0x79, 0x75, 0x08, 0xB2,\n0xFE, 0x19, 0x86, 0xAC, 0xE4, 0xBD, 0xD3, 0xB0, 0xDB, 0xC8, 0x7B, 0x3F, 0x1C, 0x2B, 0x8F, 0x1F,\n0xB7, 0x55, 0xA3, 0xC8, 0x8B, 0x48, 0x9E, 0xE7, 0xD3, 0x65, 0x96, 0xC9, 0x3D, 0xB3, 0x79, 0x04,\n0xD5, 0x0C, 0xFD, 0x59, 0x6A, 0x21, 0x41, 0xB4, 0xF9, 0x07, 0xEE, 0x53, 0x07, 0x1A, 0x53, 0x27,\n0x75, 0x36, 0xC9, 0xEA, 0xB1, 0x05, 0x42, 0xE7, 0xF0, 0x03, 0xBC, 0x48, 0xB4, 0x7E, 0x00, 0x8F,\n0x1F, 0xD1, 0x10, 0x25, 0x3F, 0x36, 0x5F, 0x56, 0xC0, 0x61, 0xC8, 0xBA, 0x45, 0xCF, 0x8F, 0x80,\n0xDC, 0x85, 0x43, 0x24, 0x38, 0x0C, 0xD9, 0x86, 0x6F, 0xA3, 0xE3, 0x6B, 0x0D, 0xB2, 0x02, 0xD9,\n0x90, 0x75, 0xCB, 0xF7, 0xAA, 0x22, 0xCD, 0x9E, 0xC4, 0x0B, 0xBB, 0x55, 0x62, 0x7F, 0x1B, 0xD0,\n0xFD, 0x08, 0xE4, 0xCD, 0x98, 0xE2, 0x25, 0xBF, 0x32, 0x97, 0xBC, 0x65, 0x22, 0xF6, 0xCC, 0xD0,\n0x8B, 0xF1, 0xB0, 0x8E, 0xA2, 0x51, 0x64, 0x66, 0xBC, 0x8E, 0xD7, 0x7F, 0x9D, 0xFD, 0x56, 0x84,\n0x78, 0x30, 0x5A, 0xF4, 0x03, 0x5C, 0xB6, 0x22, 0x96, 0x21, 0xAC, 0x26, 0x7D, 0x6B, 0xF0, 0x56,\n0xC2, 0x8F, 0x8E, 0x97, 0x2B, 0x73, 0x79, 0xB9, 0xAD, 0x3A, 0x1C, 0x7E, 0xEC, 0xB1, 0x34, 0x7E,\n0x18, 0xE3, 0xE1, 0xE8, 0x07, 0x5E, 0xF3, 0x95, 0x16, 0x1F, 0xF0, 0xC3, 0x65, 0xC8, 0x6B, 0x0B,\n0x32, 0x64, 0x2B, 0xFA, 0xB1, 0x0D, 0x38, 0xFC, 0x00, 0x78, 0xD7, 0x02, 0xE4, 0x35, 0xF2, 0xEC,\n0xF1, 0x03, 0xE8, 0xF9, 0x11, 0x0D, 0xD1, 0x46, 0xB7, 0xE1, 0x48, 0xE9, 0x86, 0xC4, 0xAE, 0x10,\n0x32, 0x04, 0x29, 0x92, 0x8F, 0x2D, 0x78, 0x45, 0x30, 0x4F, 0x7F, 0x13, 0x7A, 0x66, 0xEB, 0x07,\n0x0D, 0x29, 0x66, 0x58, 0xFA, 0xDF, 0x83, 0x1F, 0xC5, 0x6F, 0x67, 0xBF, 0x85, 0x27, 0x1E, 0x58,\n0x26, 0x7D, 0xAC, 0x2F, 0x17, 0x91, 0xCB, 0xC6, 0x54, 0x6E, 0x08, 0xFE, 0xC3, 0xE9, 0x1A, 0x7F,\n0x4E, 0x3F, 0x20, 0x88, 0xF1, 0x7F, 0x89, 0xFC, 0xA8, 0xDE, 0xE1, 0xF1, 0xA3, 0x35, 0xC4, 0x68,\n0xD1, 0x0F, 0x34, 0x2C, 0x8A, 0x22, 0x9F, 0xD7, 0x44, 0xF5, 0x23, 0x1A, 0x22, 0x0D, 0xAF, 0x30,\n0xBE, 0x8A, 0x60, 0xF0, 0x64, 0x71, 0x80, 0x17, 0x44, 0xD0, 0x23, 0xE4, 0x47, 0x44, 0xF7, 0x43,\n0xCF, 0x10, 0xEE, 0x4A, 0x33, 0x43, 0xEE, 0x82, 0x1F, 0x00, 0x2B, 0xA0, 0xC5, 0x07, 0x41, 0x86,\n0x58, 0xF9, 0x41, 0x50, 0x09, 0x79, 0x33, 0x7B, 0x26, 0xFC, 0xE8, 0x68, 0x0D, 0x89, 0xCB, 0xAC,\n0xEF, 0x7D, 0x06, 0x2F, 0xBE, 0x42, 0x90, 0x70, 0xB3, 0x6A, 0xDA, 0x84, 0x0F, 0xE9, 0xE7, 0x2E,\n0x3F, 0x68, 0x08, 0x1C, 0xC0, 0xAB, 0xDB, 0x94, 0x2C, 0x59, 0x23, 0x3F, 0x88, 0x99, 0x21, 0x68,\n0xD5, 0x09, 0x1E, 0x3F, 0xB0, 0xDA, 0xEC, 0x8C, 0xFC, 0xD8, 0x05, 0x3D, 0xC2, 0x0A, 0x8B, 0x96,\n0x1F, 0x44, 0xF2, 0x83, 0xDC, 0x9B, 0xE3, 0x20, 0xE8, 0xC1, 0x2E, 0xAF, 0xCD, 0x3F, 0x3A, 0xF0,\n0x51, 0x1A, 0x5F, 0x11, 0xC9, 0x0F, 0xF2, 0x59, 0xD1, 0x23, 0x1A, 0x02, 0xBE, 0x98, 0xF3, 0x90,\n0xCD, 0xC9, 0xA1, 0xDA, 0x5F, 0x28, 0x7E, 0x10, 0x74, 0x0D, 0x25, 0x3F, 0x68, 0x88, 0xD1, 0x33,\n0x83, 0x1F, 0x34, 0x84, 0xB1, 0x80, 0x55, 0x78, 0x3B, 0xBE, 0xFF, 0xE7, 0xC6, 0x8F, 0x56, 0x10,\n0x64, 0x08, 0x34, 0xA0, 0x4D, 0xF8, 0x12, 0x3D, 0x81, 0x3B, 0xC7, 0xE0, 0x07, 0xB9, 0x8C, 0x83,\n0xBD, 0x65, 0xB3, 0x29, 0x98, 0x1E, 0x2D, 0xB1, 0x3D, 0x5C, 0xC3, 0xD4, 0x6E, 0x93, 0xC3, 0xCA,\n0xC8, 0x10, 0xFA, 0xA1, 0x1A, 0xB2, 0xE7, 0x4E, 0x6F, 0xA3, 0x7B, 0xF4, 0x18, 0xED, 0x37, 0x9D,\n0x1A, 0xDD, 0xCA, 0x9A, 0x9E, 0x27, 0x68, 0xD3, 0x0F, 0x1A, 0xB2, 0x1D, 0x57, 0x04, 0xB3, 0xED,\n0xED, 0x3B, 0xC4, 0xF1, 0x15, 0x15, 0xB1, 0xF2, 0x23, 0xD9, 0x1E, 0xD1, 0x0F, 0x1A, 0xB2, 0xD2,\n0xC6, 0x57, 0x51, 0x92, 0xDD, 0xDD, 0x58, 0x88, 0xEC, 0xA2, 0x1F, 0x5C, 0xC9, 0x7E, 0xD0, 0x10,\n0x33, 0x3F, 0x38, 0x58, 0x99, 0xD4, 0xA3, 0x3D, 0x33, 0xF8, 0x41, 0x2E, 0x3F, 0x84, 0x0C, 0x89,\n0x4E, 0x74, 0x6F, 0x74, 0xA0, 0xF1, 0xA3, 0x80, 0x20, 0x45, 0x34, 0x24, 0x7E, 0x03, 0x1F, 0xF8,\n0x75, 0x88, 0x04, 0x3F, 0x3E, 0xB4, 0x7E, 0x90, 0xCB, 0xCE, 0x53, 0xC0, 0xF3, 0x03, 0xDD, 0xE7,\n0xE5, 0x34, 0x6C, 0x75, 0xD4, 0xC3, 0xCA, 0x10, 0xFA, 0x41, 0x6C, 0x3F, 0x4E, 0x56, 0x63, 0xC7,\n0xA8, 0xF1, 0x83, 0x86, 0x80, 0xF9, 0xA8, 0x21, 0x2B, 0x8C, 0xAF, 0x52, 0x54, 0x3F, 0x38, 0x11,\n0x19, 0xCF, 0x8F, 0x53, 0x24, 0x3F, 0x48, 0x33, 0x0F, 0x11, 0xC6, 0x57, 0x44, 0xF2, 0x83, 0xFC,\n0xBC, 0x52, 0x86, 0x57, 0xDC, 0x9F, 0x9B, 0xB1, 0x10, 0xE9, 0xA2, 0x9E, 0xAB, 0xBD, 0xE8, 0x07,\n0x0D, 0x19, 0xCB, 0x0F, 0x76, 0xB3, 0xF8, 0x61, 0x99, 0x8D, 0xF4, 0xCC, 0x7A, 0x11, 0xA1, 0x21,\n0xC7, 0xA0, 0x48, 0xB4, 0x22, 0xAE, 0x66, 0x5D, 0x82, 0x40, 0x8C, 0x98, 0x20, 0x80, 0x01, 0x12,\n0xB5, 0x88, 0xA3, 0xAC, 0x50, 0xFE, 0xA0, 0x1F, 0xCC, 0x10, 0x28, 0x09, 0xCA, 0x18, 0x66, 0xF1,\n0x14, 0x01, 0xE4, 0x0D, 0xA7, 0x77, 0x23, 0xD5, 0xB2, 0x5A, 0xE6, 0x15, 0x36, 0x7F, 0x28, 0x43,\n0x78, 0xFA, 0x2A, 0x41, 0x1B, 0x5E, 0x71, 0xF5, 0x65, 0x70, 0xFA, 0xB1, 0xE3, 0xF4, 0x23, 0x7C,\n0xDA, 0x35, 0x2B, 0x2D, 0x3F, 0x68, 0xC8, 0xB3, 0xE0, 0x07, 0x05, 0xC1, 0x30, 0x4B, 0xC8, 0x0F,\n0xA2, 0xF9, 0x41, 0x43, 0xA4, 0xFC, 0x20, 0xCF, 0x92, 0x1F, 0x64, 0x24, 0x43, 0xF8, 0xA3, 0x86,\n0x83, 0x56, 0x64, 0xF4, 0xE8, 0xE9, 0xAB, 0x74, 0xE5, 0xF0, 0x83, 0x19, 0x32, 0x94, 0x1F, 0xEC,\n0x66, 0x20, 0x9E, 0xEE, 0x1D, 0xEC, 0x99, 0x8B, 0x14, 0xF4, 0xEB, 0x68, 0x04, 0x5A, 0x5C, 0x51,\n0x04, 0xF8, 0x11, 0x13, 0x84, 0x86, 0x84, 0x64, 0x61, 0xE0, 0x04, 0xB9, 0x8E, 0x8B, 0x9A, 0x7E,\n0x90, 0x7A, 0x32, 0x69, 0x6C, 0xA8, 0x27, 0x34, 0x16, 0xC4, 0xFC, 0x98, 0x86, 0xAD, 0x6E, 0x8C,\n0xAE, 0x46, 0xE7, 0x21, 0xF4, 0x43, 0x36, 0xE4, 0xB6, 0x47, 0x90, 0x50, 0x32, 0xEC, 0x21, 0xFA,\n0x71, 0xFA, 0x63, 0x2F, 0x48, 0x22, 0x4C, 0x3F, 0x08, 0x32, 0xE5, 0xD9, 0x9C, 0x7E, 0x90, 0xE7,\n0xE7, 0xFB, 0xC1, 0x82, 0x48, 0x98, 0x7F, 0x10, 0x7B, 0xAA, 0xBE, 0xED, 0xF1, 0x69, 0x70, 0x1E,\n0x42, 0x3F, 0x44, 0x43, 0xD6, 0x44, 0x31, 0x84, 0xFB, 0x90, 0xFB, 0x73, 0xA4, 0x20, 0xB2, 0xEF,\n0x3F, 0x54, 0xB2, 0x1F, 0x3C, 0x99, 0x95, 0x0F, 0xE5, 0x47, 0xEC, 0x66, 0xB1, 0xBB, 0x4D, 0x5B,\n0x43, 0xA0, 0x03, 0x7B, 0x26, 0x13, 0x64, 0xD1, 0x03, 0x0C, 0x49, 0xF2, 0x23, 0xF6, 0xFD, 0xE8,\n0x07, 0x13, 0x04, 0x14, 0xB3, 0x18, 0x38, 0x1C, 0x88, 0x35, 0xF9, 0xC1, 0xF8, 0x48, 0x0D, 0xC9,\n0x02, 0xED, 0xF8, 0x2E, 0x48, 0x5A, 0xD6, 0x28, 0x7F, 0xBC, 0xA7, 0xEA, 0xB6, 0x1D, 0xBC, 0xF4,\n0x4E, 0x3F, 0xE8, 0x87, 0x66, 0x48, 0xDC, 0xCF, 0xE9, 0xEA, 0xE5, 0xCE, 0xC8, 0x8F, 0xF8, 0xC6,\n0xC3, 0x3B, 0x52, 0xFE, 0xD0, 0x33, 0xE4, 0xB5, 0x8F, 0xE1, 0x92, 0x61, 0x38, 0x53, 0xDB, 0x87,\n0x11, 0x1F, 0x8A, 0x21, 0x8D, 0x94, 0x21, 0xBE, 0xFA, 0x90, 0xF4, 0x20, 0x50, 0xC1, 0xC8, 0x0F,\n0xFA, 0x31, 0x7C, 0x32, 0x6B, 0xDF, 0x7B, 0xAC, 0x80, 0xEC, 0x07, 0x0B, 0x22, 0x3D, 0x11, 0x02,\n0x19, 0x18, 0x21, 0xD3, 0x65, 0x4C, 0x90, 0xB6, 0x64, 0xC8, 0x9E, 0x89, 0x4E, 0xDA, 0x28, 0xB3,\n0xAC, 0xE9, 0x47, 0x62, 0xC8, 0x2C, 0x7A, 0x11, 0x57, 0xA1, 0x1D, 0xC3, 0xDD, 0x15, 0x99, 0x20,\n0x91, 0xE2, 0x1A, 0x8A, 0xCC, 0x38, 0x4B, 0x39, 0xC6, 0xD3, 0x57, 0xBD, 0x7C, 0x40, 0xC9, 0xB0,\n0x8D, 0x2E, 0x4A, 0x9A, 0xBD, 0x4D, 0x72, 0x10, 0x03, 0x04, 0x5E, 0x60, 0x35, 0xED, 0xB6, 0x3C,\n0xCD, 0x10, 0xE6, 0x87, 0x6C, 0xC8, 0x05, 0xC7, 0x57, 0xC9, 0x0A, 0xEC, 0x7A, 0x4E, 0x5F, 0xCD,\n0xDB, 0xFC, 0xA0, 0x23, 0xDD, 0x32, 0x5F, 0x69, 0xF9, 0xC1, 0x0C, 0x91, 0xFC, 0xE0, 0x28, 0xAB,\n0x6F, 0x90, 0xD5, 0xE4, 0x07, 0x90, 0x0D, 0x19, 0xF9, 0xB6, 0x36, 0xFD, 0x20, 0x92, 0x20, 0xA4,\n0x57, 0x8F, 0xA8, 0x03, 0x7F, 0xE6, 0x70, 0xA7, 0xF6, 0x65, 0xC8, 0x90, 0x1F, 0x58, 0x0D, 0x96,\n0x3F, 0x06, 0x33, 0xA4, 0x37, 0x3F, 0x96, 0x55, 0xDB, 0x72, 0x80, 0x55, 0xF8, 0x14, 0x0B, 0x22,\n0x50, 0xA2, 0xEB, 0x99, 0xC1, 0x13, 0x4E, 0xCF, 0x53, 0x50, 0x54, 0xA7, 0x1D, 0x31, 0x3F, 0xA2,\n0x1F, 0x4C, 0x10, 0x1A, 0x92, 0x9E, 0x0C, 0x66, 0xF9, 0xA3, 0x47, 0x91, 0xBF, 0x69, 0x3B, 0x63,\n0xDE, 0x46, 0x8A, 0x30, 0x0C, 0xE3, 0x02, 0x1C, 0x14, 0x25, 0x16, 0x28, 0x11, 0x45, 0x24, 0x90,\n0x72, 0x55, 0x88, 0x8C, 0x44, 0x28, 0x82, 0x08, 0xD2, 0xA1, 0x93, 0x40, 0x46, 0x74, 0x24, 0xC2,\n0x0D, 0x35, 0x8A, 0x0B, 0x90, 0xB1, 0xA8, 0x68, 0x4E, 0x27, 0x61, 0xD1, 0x59, 0xFC, 0x00, 0xAA,\n0xFB, 0xA5, 0xBC, 0x3B, 0x33, 0x9B, 0xE7, 0x76, 0xBC, 0xBB, 0xF3, 0x8E, 0x81, 0x77, 0xC6, 0xE3,\n0x75, 0xCE, 0x77, 0xB2, 0x67, 0xF7, 0xD9, 0x77, 0xBE, 0xEF, 0xDB, 0xEC, 0x1D, 0xE9, 0x23, 0x04,\n0x36, 0xA6, 0x7A, 0xBC, 0x17, 0x68, 0xD1, 0xC7, 0x53, 0xEF, 0x6A, 0xD5, 0x42, 0xD2, 0xF9, 0x8E,\n0xF8, 0xC7, 0x90, 0x3C, 0xFF, 0x00, 0x91, 0x81, 0xF2, 0x47, 0xB6, 0x22, 0xA0, 0x97, 0xFD, 0x03,\n0x2D, 0x20, 0x24, 0xE3, 0xC3, 0xF7, 0x90, 0x5B, 0x8E, 0x78, 0x87, 0x90, 0xF1, 0x77, 0x7B, 0x7C,\n0xA0, 0x02, 0x1E, 0x86, 0x87, 0x60, 0x1D, 0x2D, 0x18, 0x6C, 0x5F, 0x11, 0x87, 0x50, 0xFE, 0x18,\n0xD9, 0x55, 0x9E, 0x7F, 0xE4, 0x1E, 0x92, 0xFB, 0x87, 0x22, 0x8F, 0x24, 0xB6, 0xCE, 0x53, 0x51,\n0x3D, 0x85, 0xE8, 0x29, 0xDB, 0x0B, 0x1F, 0x3D, 0x84, 0xEC, 0x42, 0x41, 0x04, 0x03, 0x81, 0x0F,\n0x1C, 0x04, 0x42, 0x22, 0x1E, 0x91, 0x26, 0xF8, 0x18, 0x25, 0x64, 0x9A, 0x10, 0xD9, 0xEE, 0x62,\n0x79, 0xB0, 0xC5, 0x3A, 0x3C, 0x05, 0x62, 0xB4, 0xB1, 0x4A, 0x1E, 0xA2, 0x16, 0x46, 0xCA, 0x1F,\n0xC3, 0xF2, 0xFC, 0x83, 0x69, 0xDF, 0xF3, 0x8F, 0x16, 0x0C, 0x9E, 0xE8, 0xF2, 0x10, 0xCB, 0x3F,\n0x90, 0xC9, 0x07, 0x25, 0xC3, 0xBD, 0xF5, 0xD5, 0x57, 0x23, 0x52, 0xC1, 0x23, 0x2F, 0x7F, 0x8C,\n0x48, 0xF4, 0x58, 0x7C, 0x20, 0x8B, 0x0F, 0xD4, 0x87, 0x47, 0x52, 0xBE, 0xC6, 0xEA, 0xF3, 0x90,\n0xCF, 0x0B, 0xBB, 0xCA, 0xC6, 0x83, 0x92, 0x61, 0x27, 0x10, 0x09, 0xE2, 0x20, 0x0B, 0xCF, 0x3A,\n0xCE, 0x56, 0x11, 0x12, 0x11, 0x12, 0x7C, 0x43, 0x3D, 0xA4, 0x8D, 0x86, 0xF9, 0xA0, 0xA8, 0x4E,\n0xFD, 0x3C, 0x94, 0x3F, 0xDE, 0x70, 0x90, 0x0F, 0xE2, 0x06, 0x71, 0x08, 0x95, 0x42, 0xF8, 0x18,\n0x5A, 0x66, 0x05, 0x42, 0x52, 0x75, 0x26, 0xFA, 0x47, 0x78, 0x20, 0x12, 0x0C, 0x31, 0x99, 0x45,\n0x53, 0xF9, 0xBC, 0xA8, 0x8C, 0x0F, 0xCD, 0xAE, 0xEB, 0x21, 0xE2, 0x23, 0xEC, 0x51, 0xFC, 0x43,\n0x82, 0x8F, 0xF8, 0x9C, 0xA5, 0x77, 0x4B, 0x32, 0xF9, 0x80, 0x90, 0xBC, 0x7C, 0x3E, 0xAA, 0xE1,\n0xF2, 0x39, 0x42, 0x0A, 0xDE, 0x2D, 0x3E, 0x90, 0xCF, 0x07, 0x1E, 0x82, 0x9E, 0xB8, 0xC0, 0x91,\n0x99, 0xDD, 0xF6, 0xDA, 0x45, 0xCA, 0x1F, 0xC5, 0x5D, 0x55, 0xC7, 0x07, 0xC9, 0xAC, 0xD0, 0x9F,\n0x16, 0xF1, 0xD9, 0x41, 0x16, 0x7D, 0x25, 0x15, 0x44, 0x48, 0xEF, 0x4E, 0xAF, 0xA5, 0x32, 0x21,\n0x29, 0x4E, 0x87, 0x0F, 0x1C, 0x04, 0x85, 0xA2, 0x7A, 0x6B, 0x20, 0x27, 0xF0, 0x31, 0x48, 0x48,\n0xA2, 0xB4, 0xF1, 0x8F, 0xF7, 0x12, 0x04, 0x09, 0xEB, 0xAE, 0x8D, 0xC8, 0x45, 0xBA, 0xD7, 0x2E,\n0xCA, 0x3F, 0x0C, 0x15, 0xD2, 0xBB, 0xBD, 0xC9, 0x2C, 0xD2, 0x57, 0xEC, 0xD1, 0x65, 0xD7, 0x41,\n0xA2, 0x87, 0x28, 0xDD, 0xEB, 0xF0, 0x81, 0x2C, 0x3E, 0x10, 0x1E, 0x12, 0xD2, 0x57, 0x25, 0xB9,\n0xEB, 0x2B, 0x3C, 0x04, 0xFA, 0xE0, 0x63, 0x58, 0x3E, 0x1F, 0x24, 0xB3, 0xF0, 0x8F, 0xAC, 0xF1,\n0x84, 0x87, 0x38, 0xFE, 0xC1, 0x50, 0xC5, 0x07, 0x05, 0x11, 0x35, 0xCE, 0xC1, 0x84, 0x1E, 0xE9,\n0x38, 0x7B, 0x42, 0x25, 0xC4, 0x1F, 0x31, 0x97, 0x25, 0xFF, 0x28, 0x12, 0x72, 0x12, 0x3D, 0x01,\n0x3E, 0xFA, 0x62, 0x10, 0x08, 0xD1, 0x83, 0xF4, 0xEE, 0xB8, 0x76, 0xDB, 0xD6, 0x41, 0xE6, 0xE9,\n0x73, 0xCB, 0xE6, 0x06, 0x14, 0x22, 0xF6, 0x64, 0x1F, 0xE2, 0xC3, 0x52, 0x56, 0x3E, 0x2F, 0x9E,\n0x98, 0xDA, 0xF0, 0x83, 0xF8, 0x63, 0x2F, 0x8B, 0x45, 0xD4, 0x8E, 0x87, 0x7C, 0xB2, 0xB8, 0x71,\n0xE4, 0xF2, 0x01, 0x21, 0xA4, 0x77, 0xCB, 0xB2, 0xF8, 0xC0, 0x41, 0x20, 0x84, 0xF4, 0xEE, 0xA8,\n0xD6, 0x3E, 0x1F, 0x14, 0xD5, 0x49, 0x5F, 0x21, 0x72, 0x81, 0xF8, 0x49, 0x28, 0x19, 0x12, 0x7E,\n0x58, 0x84, 0xC0, 0x87, 0x4F, 0x88, 0x86, 0x96, 0x07, 0xBC, 0x43, 0x63, 0x14, 0x49, 0xD3, 0x98,\n0xCC, 0x9A, 0x92, 0xDE, 0x2D, 0x10, 0x92, 0x56, 0x4E, 0x7A, 0x82, 0x05, 0x1C, 0x04, 0xA5, 0xA2,\n0xBA, 0xC1, 0x07, 0x45, 0xF5, 0x10, 0x08, 0xB5, 0x79, 0x36, 0x62, 0x10, 0x9E, 0xD4, 0x30, 0x44,\n0xAE, 0x6E, 0xB7, 0x84, 0x7F, 0x18, 0xB3, 0xAE, 0x31, 0x86, 0x1F, 0xB1, 0x7C, 0xBE, 0xCF, 0x08,\n0x3D, 0x51, 0x42, 0x79, 0xD0, 0x12, 0x7C, 0x38, 0x6A, 0x0B, 0x22, 0xE2, 0xC3, 0x25, 0x84, 0xF2,\n0x47, 0x59, 0x22, 0x04, 0x3E, 0x1C, 0xB9, 0x7C, 0xE0, 0x21, 0xF8, 0x07, 0x2E, 0xDC, 0x5D, 0xA6,\n0xB2, 0xD1, 0x16, 0x44, 0x1C, 0x38, 0x20, 0xC4, 0xE4, 0x83, 0x0B, 0xB3, 0x9E, 0x16, 0xF1, 0x44,\n0x1F, 0x44, 0x23, 0xDA, 0x20, 0xDD, 0x2B, 0xFF, 0x30, 0xF8, 0xA0, 0x64, 0x28, 0x42, 0xE0, 0xA3,\n0xDF, 0x41, 0xF0, 0x90, 0xD3, 0xA3, 0xF2, 0xBF, 0x4C, 0x41, 0x24, 0x94, 0xCF, 0xB9, 0xF6, 0x0A,\n0x21, 0xEC, 0x90, 0xF4, 0x95, 0x25, 0xFC, 0xC3, 0x23, 0x24, 0xEC, 0x26, 0xBC, 0x5F, 0x9B, 0x99,\n0x83, 0xA4, 0x21, 0x35, 0xC2, 0x73, 0x4F, 0xEB, 0xAC, 0x7C, 0xEE, 0xC4, 0x21, 0x94, 0x3F, 0xC6,\n0x44, 0xC9, 0xB0, 0x4C, 0x07, 0x05, 0x11, 0xF8, 0x30, 0xB4, 0x86, 0x0F, 0x9B, 0x10, 0xCA, 0x1F,\n0x39, 0x1F, 0xFB, 0xEB, 0xAD, 0xD5, 0xE7, 0x81, 0x0F, 0x17, 0x11, 0x9F, 0x0F, 0x92, 0x59, 0x29,\n0x31, 0xAA, 0xE5, 0x54, 0x2A, 0x9D, 0x33, 0x06, 0x25, 0x50, 0x62, 0xC9, 0x10, 0x3E, 0x8A, 0x8A,\n0x84, 0xC0, 0x47, 0x9F, 0x83, 0x40, 0x08, 0xE5, 0x41, 0x47, 0xBB, 0xC9, 0x54, 0x1F, 0xA8, 0xCD,\n0x56, 0x81, 0x33, 0x2D, 0xFE, 0x80, 0x9A, 0x3A, 0x7C, 0x18, 0x22, 0xFE, 0xB0, 0x06, 0xE1, 0x91,\n0x80, 0xC0, 0x37, 0x96, 0xEC, 0x53, 0x9C, 0x44, 0x4A, 0xC9, 0xAC, 0x9B, 0x1A, 0x61, 0x1F, 0x96,\n0x7E, 0xA0, 0xFC, 0x61, 0x88, 0xF5, 0x95, 0x4D, 0x08, 0x7C, 0x98, 0x84, 0xDC, 0x54, 0x28, 0x45,\n0xE7, 0x4C, 0x18, 0xB3, 0xC7, 0x40, 0x02, 0x84, 0xF2, 0xB9, 0x37, 0x3C, 0xFB, 0x1C, 0x3E, 0x0C,\n0xC5, 0xFC, 0x55, 0x44, 0x83, 0x2A, 0xC8, 0xD3, 0xC8, 0x51, 0x46, 0x51, 0xFD, 0xDA, 0x10, 0x05,\n0x11, 0x50, 0xE8, 0x75, 0x10, 0x04, 0x1F, 0x8E, 0x4E, 0xB6, 0x99, 0x51, 0x0C, 0x08, 0x13, 0xFC,\n0xB0, 0x4A, 0x1E, 0x1F, 0x14, 0xD5, 0x13, 0x0C, 0x41, 0x79, 0x6C, 0xDE, 0x75, 0x92, 0x65, 0x20,\n0xE4, 0xA6, 0x4E, 0x1C, 0x6E, 0x96, 0x89, 0x60, 0x1F, 0xA6, 0x87, 0x58, 0x6F, 0x23, 0x54, 0x27,\n0x3C, 0xB7, 0x74, 0x83, 0x3C, 0x0F, 0xB9, 0x4A, 0x13, 0x46, 0xE3, 0xF5, 0xB2, 0x63, 0x25, 0xD2,\n0x15, 0xA1, 0xA2, 0x33, 0xAC, 0x3E, 0xAC, 0x53, 0x38, 0xF4, 0x63, 0xF9, 0x59, 0xDB, 0x88, 0x68,\n0xA4, 0x05, 0x45, 0xEF, 0x53, 0xDB, 0x9E, 0x5C, 0xFB, 0x3A, 0xDA, 0x9E, 0x42, 0x40, 0xBF, 0x83,\n0x50, 0x0E, 0x39, 0xA9, 0x22, 0x64, 0xC2, 0xD5, 0x57, 0xE7, 0xA0, 0x1D, 0x6C, 0x70, 0xA5, 0x07,\n0x60, 0x44, 0x71, 0xC7, 0x0A, 0x4B, 0x97, 0x1B, 0x9D, 0x6A, 0x2A, 0x08, 0xF9, 0xFC, 0xAA, 0x05,\n0xA3, 0x37, 0xB9, 0xCB, 0x73, 0x6C, 0xF5, 0x80, 0xD4, 0xE9, 0xCB, 0x3A, 0x40, 0x7E, 0xFE, 0x99,\n0x6D, 0xCB, 0x42, 0x2A, 0x01, 0x09, 0xBF, 0x7E, 0xEE, 0xEB, 0x7D, 0x3C, 0x22, 0x23, 0x04, 0x6B,\n0x81, 0x10, 0xE5, 0xB2, 0x6C, 0x3E, 0x42, 0xE7, 0x37, 0x49, 0x2D, 0x3D, 0x3B, 0xE7, 0xFA, 0xBE,\n0x6C, 0xA1, 0xD2, 0xC2, 0x91, 0x94, 0x02, 0xF5, 0x6B, 0x64, 0x84, 0x21, 0x33, 0xD3, 0x41, 0xDE,\n0x9D, 0x9D, 0x1A, 0x84, 0x50, 0x2E, 0x7C, 0x6F, 0x3A, 0xE9, 0xAC, 0x01, 0x3B, 0x54, 0xC7, 0x01,\n0xB8, 0xE7, 0x1B, 0xDD, 0xDE, 0xA7, 0x8E, 0x8F, 0xCD, 0xE6, 0x72, 0xE5, 0xE2, 0x11, 0x7F, 0x7F,\n0x2A, 0x62, 0x91, 0xD7, 0x07, 0xD9, 0xB3, 0x3C, 0x5F, 0x51, 0x41, 0xF7, 0x44, 0x88, 0xEE, 0xE1,\n0x21, 0x55, 0x78, 0xC8, 0xCB, 0xE6, 0x06, 0x3F, 0x35, 0x4B, 0x2C, 0xFD, 0xF3, 0x35, 0x78, 0x54,\n0x2F, 0xB1, 0xA4, 0xE5, 0x15, 0x96, 0x2C, 0x65, 0x45, 0x74, 0x06, 0x8D, 0x4B, 0xDD, 0x06, 0xAB,\n0xC6, 0x42, 0x36, 0x9B, 0x2A, 0x42, 0x74, 0xE4, 0x44, 0x7B, 0x20, 0xE9, 0x83, 0xC2, 0x4F, 0x60,\n0x46, 0x1B, 0xBA, 0x9A, 0x76, 0x7A, 0x74, 0x62, 0xF3, 0x31, 0x3B, 0xBD, 0x80, 0x90, 0x5E, 0x07,\n0x81, 0x0F, 0x69, 0xE6, 0x12, 0xB2, 0x9B, 0xBE, 0x37, 0xD5, 0x47, 0xE1, 0x93, 0x89, 0xDE, 0xF3,\n0xD6, 0xE9, 0x62, 0x1D, 0x3D, 0xB9, 0x48, 0x60, 0x46, 0xF7, 0xF6, 0xF9, 0xA8, 0x92, 0x0F, 0xA9,\n0xC6, 0x3F, 0x9A, 0x4A, 0x15, 0xAB, 0x63, 0x08, 0xE9, 0x71, 0x92, 0x26, 0x02, 0xF9, 0x9E, 0xDF,\n0xB1, 0xB5, 0xF8, 0x58, 0x43, 0x88, 0x93, 0xE8, 0x8D, 0x84, 0xA8, 0x39, 0x7A, 0x19, 0x6F, 0xA6,\n0xC8, 0x9B, 0x8B, 0xA5, 0x10, 0xE9, 0xD6, 0xE7, 0x23, 0xDD, 0xC2, 0xC4, 0x96, 0x66, 0x46, 0xD3,\n0xF3, 0x49, 0x58, 0x4A, 0xD1, 0x86, 0x2F, 0x5A, 0x6C, 0xB4, 0xB4, 0x08, 0x49, 0x7C, 0xD4, 0x12,\n0xA2, 0x63, 0xE7, 0x9D, 0xF9, 0x39, 0x48, 0x30, 0x70, 0x76, 0x6E, 0xA5, 0x83, 0x52, 0xDA, 0xF9,\n0x7C, 0x48, 0x22, 0xA4, 0xE8, 0x20, 0xAF, 0xF5, 0x4E, 0x08, 0x31, 0xF8, 0x90, 0x1A, 0x42, 0x3A,\n0x20, 0xA3, 0xC4, 0x45, 0x5B, 0xFB, 0x14, 0x1F, 0x55, 0xA6, 0xBA, 0x69, 0x75, 0xF9, 0xCC, 0x8A,\n0x3F, 0x74, 0x0E, 0x0B, 0xC5, 0xC2, 0x37, 0x40, 0xE8, 0x89, 0x3D, 0x58, 0x42, 0x2F, 0x74, 0x00,\n0xD8, 0x26, 0xC2, 0x55, 0xBD, 0x55, 0x7C, 0xFC, 0x86, 0x87, 0x58, 0x7C, 0x40, 0x48, 0xB1, 0x98,\n0x2E, 0xFD, 0x60, 0x9B, 0x48, 0x7D, 0x9A, 0xB7, 0x91, 0x26, 0x88, 0x15, 0x55, 0x87, 0x89, 0xEE,\n0x74, 0xBE, 0x1F, 0xCE, 0x4C, 0x6A, 0x4D, 0x1D, 0xC4, 0xF4, 0x0F, 0x08, 0xB1, 0x25, 0x42, 0x5A,\n0x20, 0x10, 0x49, 0xDF, 0xF3, 0xA7, 0xEA, 0x42, 0xE0, 0x43, 0xDA, 0x56, 0xF0, 0x81, 0x87, 0x0C,\n0x3B, 0xC8, 0x69, 0xE2, 0xC3, 0x24, 0x64, 0x3B, 0x8D, 0x52, 0x4D, 0x86, 0xCF, 0xFD, 0xE6, 0xD2,\n0x30, 0x0C, 0x6D, 0x48, 0x75, 0x18, 0x1F, 0x78, 0xC8, 0xE8, 0x9C, 0x4B, 0xCF, 0x02, 0x1E, 0x0D,\n0x21, 0xCB, 0xAB, 0xF7, 0x07, 0xD6, 0x58, 0xA4, 0x5D, 0x82, 0x7F, 0x84, 0xA6, 0xEE, 0xF1, 0xF1,\n0x24, 0x2F, 0xC9, 0xDB, 0xEA, 0xB7, 0xAF, 0x7E, 0x7D, 0xE9, 0xF2, 0xF1, 0xD7, 0x5F, 0x1E, 0x21,\n0x62, 0x2E, 0xE1, 0x21, 0xF9, 0x7C, 0xF8, 0x84, 0x2C, 0x3E, 0x89, 0x73, 0xA3, 0x8E, 0x73, 0x40,\n0x45, 0x07, 0x13, 0xE9, 0x2A, 0xCE, 0xBB, 0x66, 0x5E, 0x84, 0x94, 0xC3, 0xF3, 0x84, 0x47, 0x3D,\n0x21, 0xCF, 0xDA, 0x10, 0xA4, 0xDB, 0xC4, 0x46, 0xD8, 0xE8, 0xF8, 0x07, 0x84, 0x14, 0xF9, 0xB8,\n0x68, 0x8F, 0xFA, 0x8B, 0x71, 0x07, 0x81, 0x0F, 0xD1, 0x74, 0xB4, 0x3D, 0x2A, 0xE5, 0xAF, 0xB4,\n0xBE, 0x4A, 0x12, 0x21, 0xE7, 0xED, 0xC5, 0xF9, 0xDA, 0xC0, 0x41, 0xB8, 0xA6, 0xF7, 0x5F, 0xF0,\n0xE1, 0x04, 0x22, 0x9B, 0x55, 0xE2, 0x23, 0xE8, 0x6A, 0x34, 0x8B, 0x15, 0x9A, 0xF6, 0xBD, 0x64,\n0x7A, 0x88, 0x7F, 0xA9, 0x09, 0xBF, 0x58, 0xA8, 0x16, 0xE5, 0xE4, 0xB2, 0x82, 0x77, 0x68, 0x88,\n0x8F, 0x32, 0x20, 0x3F, 0x24, 0x3C, 0xC2, 0x93, 0xCD, 0x87, 0xBD, 0xCA, 0x0A, 0x68, 0xB4, 0x83,\n0x4E, 0x26, 0xCB, 0xCE, 0x6C, 0xEE, 0x85, 0x78, 0x61, 0xE6, 0xD3, 0xB9, 0x69, 0x59, 0xB8, 0x6C,\n0x2E, 0xF1, 0x81, 0x2A, 0x09, 0x89, 0x46, 0x71, 0x3E, 0x98, 0x29, 0x4D, 0xF1, 0x07, 0x84, 0x94,\n0x33, 0xBC, 0xAF, 0x39, 0xEC, 0xB9, 0x96, 0xB7, 0xEF, 0x6A, 0xDE, 0x40, 0x52, 0xD2, 0xEB, 0x8B,\n0x52, 0xB5, 0x70, 0xF2, 0xDE, 0x14, 0x4D, 0x54, 0x2D, 0x8C, 0x8C, 0x6C, 0x22, 0xD2, 0xE4, 0x16,\n0xE6, 0xE7, 0x87, 0xFB, 0x07, 0x1A, 0x9F, 0xF1, 0xE4, 0x1F, 0x4F, 0xFB, 0x49, 0x91, 0xFA, 0x68,\n0x16, 0x6B, 0x29, 0x3E, 0x42, 0x33, 0x3D, 0x64, 0x61, 0x5E, 0xAC, 0x08, 0x1F, 0x1D, 0xFD, 0x50,\n0x22, 0xE4, 0x09, 0x8D, 0xBF, 0xE2, 0x53, 0xB9, 0x02, 0x82, 0x84, 0x88, 0xC5, 0x07, 0xD2, 0xF7,\n0xB1, 0x2E, 0xE7, 0xFD, 0x3E, 0x8D, 0xD0, 0x90, 0x5A, 0x7E, 0xF3, 0x06, 0x4D, 0xBB, 0x7A, 0xCB,\n0x88, 0x08, 0xB1, 0xF8, 0x38, 0xDC, 0x43, 0xC8, 0x63, 0x91, 0x27, 0xD5, 0x76, 0x54, 0xE0, 0x03,\n0x4D, 0x4A, 0x35, 0x42, 0x0E, 0xFA, 0xE0, 0x21, 0xEF, 0xEE, 0x39, 0x08, 0x7C, 0x9C, 0x76, 0x75,\n0x7D, 0x34, 0x62, 0x1F, 0xF0, 0x01, 0x21, 0x01, 0x08, 0xD8, 0xE6, 0x45, 0xE3, 0x1F, 0x1F, 0xBD,\n0x7D, 0x18, 0x1F, 0x78, 0xC8, 0x98, 0x7F, 0xE8, 0xD4, 0x15, 0xC0, 0x88, 0x90, 0x84, 0x50, 0x7D,\n0x2C, 0x8B, 0x15, 0xFC, 0x03, 0x3E, 0xCA, 0x1E, 0xB2, 0xAE, 0xBC, 0xDC, 0x5D, 0x47, 0x2D, 0x2A,\n0x5E, 0xAF, 0xF8, 0x17, 0xEB, 0x2B, 0x08, 0x19, 0xFD, 0x85, 0x90, 0x4C, 0x16, 0x1F, 0x48, 0x80,\n0x94, 0xFC, 0x83, 0xA6, 0xC9, 0xD9, 0x2F, 0x16, 0x92, 0xCA, 0x82, 0x8F, 0x27, 0x4C, 0x9E, 0x8D,\n0xC6, 0x21, 0x19, 0x1F, 0xF5, 0xA1, 0x3A, 0xF5, 0x36, 0xD2, 0xA4, 0x58, 0xC8, 0x7C, 0x02, 0x1F,\n0x10, 0x32, 0x52, 0x43, 0x0F, 0x62, 0xE5, 0x94, 0xFF, 0x3E, 0x08, 0xE9, 0xAB, 0xD6, 0x3F, 0xF0,\n0x90, 0xB1, 0x74, 0x2F, 0x7C, 0x40, 0x48, 0x03, 0x42, 0x5C, 0x0C, 0x62, 0x1C, 0x1A, 0x57, 0xA1,\n0x3A, 0x58, 0xC5, 0x07, 0x93, 0xE8, 0xAD, 0xB2, 0x9E, 0x2D, 0xAF, 0x5A, 0xF3, 0x80, 0x90, 0xA1,\n0x2C, 0xD6, 0x55, 0x58, 0x5F, 0xC5, 0x06, 0x26, 0xE3, 0xFE, 0x91, 0x00, 0x41, 0x5E, 0xFC, 0x81,\n0x20, 0x64, 0x80, 0x8F, 0xD4, 0xD5, 0xC2, 0x86, 0xE7, 0x1F, 0xDE, 0x2A, 0xAB, 0xFF, 0x7E, 0xBC,\n0x83, 0x7A, 0x9A, 0x12, 0x38, 0xE9, 0xA6, 0xB2, 0xBA, 0x4F, 0x4C, 0x7A, 0xD3, 0xE2, 0x32, 0xEB,\n0xB2, 0x14, 0x9E, 0xFB, 0x84, 0x3C, 0xEB, 0x23, 0x84, 0x62, 0x5B, 0x9E, 0xCC, 0x82, 0x0F, 0x8E,\n0xCC, 0xE1, 0x74, 0xAF, 0xEE, 0x64, 0x8D, 0xF6, 0x3D, 0x44, 0x80, 0xC0, 0x07, 0xFE, 0x81, 0x20,\n0x24, 0x2F, 0x7F, 0x10, 0x7E, 0x74, 0x08, 0x69, 0xD0, 0x46, 0xAB, 0x36, 0xAF, 0x35, 0x3F, 0xA4,\n0xFC, 0xB1, 0x41, 0xA3, 0xA1, 0xBA, 0xF4, 0xF9, 0x8F, 0x98, 0x87, 0x86, 0xD8, 0xC5, 0x41, 0x54,\n0x5E, 0x1F, 0xC4, 0x3F, 0x58, 0x69, 0xE3, 0x21, 0xEE, 0x6D, 0x1B, 0xD6, 0x63, 0xEB, 0xAB, 0x9E,\n0x43, 0x98, 0x5B, 0x9A, 0xF4, 0xF3, 0x01, 0x25, 0xEA, 0xD2, 0x48, 0xF9, 0x03, 0x39, 0x1E, 0xD2,\n0xFB, 0xE1, 0x8D, 0xF4, 0x55, 0x9A, 0x96, 0x76, 0x95, 0xB5, 0x84, 0x8F, 0xCE, 0xE2, 0x95, 0x49,\n0xD7, 0xF0, 0xF4, 0xE4, 0xF2, 0x71, 0x68, 0x32, 0x6B, 0x40, 0xE7, 0xF0, 0x61, 0x10, 0x72, 0x04,\n0x1F, 0xFB, 0x84, 0xE0, 0x20, 0x94, 0x3F, 0x50, 0x21, 0x99, 0x75, 0xD4, 0xF3, 0x29, 0x48, 0xF7,\n0x9E, 0xB7, 0xAB, 0xC3, 0xA4, 0xF9, 0xA6, 0xBA, 0xFC, 0x31, 0xA0, 0x81, 0xFC, 0x55, 0xC7, 0x3C,\n0x20, 0x64, 0xD9, 0x9B, 0xC5, 0xBA, 0x0A, 0x7C, 0x84, 0x06, 0x1C, 0xA3, 0x84, 0x98, 0x37, 0xFD,\n0xC1, 0x3F, 0x38, 0x84, 0x8D, 0x55, 0x96, 0xCA, 0x83, 0x98, 0x47, 0xDA, 0x20, 0xDD, 0xDB, 0x9B,\n0xBE, 0xCA, 0x15, 0x81, 0x34, 0xEC, 0xC3, 0x09, 0xD5, 0x39, 0x73, 0x74, 0xD7, 0x59, 0x57, 0x9D,\n0x15, 0x16, 0x37, 0x20, 0x85, 0x0A, 0x40, 0x91, 0x9F, 0xF7, 0x7A, 0x08, 0xF1, 0xC7, 0xBF, 0x5C,\n0x65, 0xE9, 0xAC, 0x1B, 0xEC, 0x63, 0x95, 0x15, 0xD4, 0x09, 0x3F, 0xBA, 0x12, 0x21, 0x26, 0x1F,\n0x14, 0x44, 0x70, 0x10, 0xCA, 0x1F, 0x26, 0x21, 0xF8, 0x47, 0x0F, 0x21, 0xE2, 0x02, 0xA0, 0x63,\n0xF8, 0x71, 0xA8, 0x7F, 0x38, 0x1E, 0xA2, 0xF1, 0xF3, 0x2C, 0xFC, 0x68, 0x9F, 0x35, 0xB2, 0xB2,\n0x92, 0x62, 0xF5, 0xE3, 0x2A, 0x1C, 0x01, 0xC4, 0x20, 0xD8, 0xC8, 0x27, 0x1E, 0x1F, 0xA8, 0xFF,\n0x2A, 0xF7, 0x5B, 0xEC, 0x03, 0x0D, 0x16, 0xD5, 0x5F, 0x36, 0x3C, 0xE8, 0x81, 0x7D, 0xB4, 0x86,\n0x02, 0x21, 0xBC, 0x39, 0x96, 0x3F, 0x06, 0x10, 0x59, 0x3B, 0x7C, 0xA0, 0xF1, 0xF5, 0x95, 0x1A,\n0x9C, 0xC4, 0x74, 0x2F, 0x27, 0x1C, 0xCE, 0x37, 0x5D, 0xEB, 0x60, 0xE2, 0x83, 0x87, 0xF4, 0x05,\n0x8B, 0xE8, 0x7F, 0xF0, 0x90, 0x39, 0x7C, 0x64, 0xDA, 0x0D, 0x96, 0x3F, 0x72, 0x51, 0x10, 0xC1,\n0x41, 0x48, 0x5F, 0x39, 0x84, 0x68, 0x7D, 0x85, 0x7A, 0x08, 0x79, 0x83, 0xE8, 0xA0, 0xEA, 0xF4,\n0xD5, 0x88, 0xF6, 0xF1, 0x10, 0x1F, 0x29, 0xFC, 0x60, 0xE0, 0x99, 0xD8, 0xE3, 0x89, 0x91, 0x2C,\n0x00, 0x65, 0x90, 0xBE, 0xB7, 0xF8, 0x40, 0x3D, 0x7C, 0xB0, 0xBC, 0x32, 0xE2, 0x10, 0xCA, 0x83,\n0x19, 0x22, 0x6A, 0x78, 0x08, 0xFA, 0x15, 0xFF, 0x40, 0x20, 0x52, 0xE0, 0xC3, 0x20, 0x64, 0xA1,\n0x89, 0x88, 0xBD, 0x87, 0x92, 0x2B, 0x72, 0x58, 0x6F, 0xDE, 0xE2, 0x1D, 0x34, 0x78, 0x35, 0x54,\n0x10, 0xD9, 0x8C, 0xE8, 0x80, 0x64, 0xD6, 0xB9, 0x1A, 0x57, 0x02, 0xE2, 0x1F, 0x3D, 0xDA, 0xFA,\n0x7C, 0xE0, 0x21, 0x02, 0x84, 0xF4, 0xD5, 0xE0, 0x7B, 0xF3, 0x64, 0xD6, 0x16, 0xFB, 0x40, 0x10,\n0x92, 0x65, 0x15, 0x0E, 0xE1, 0xE3, 0xD2, 0x24, 0x24, 0xF1, 0xC1, 0x0E, 0xCA, 0xF9, 0x00, 0x91,\n0xAC, 0x7C, 0x4E, 0x0C, 0xD2, 0x3D, 0x1C, 0x16, 0xD6, 0x4D, 0xB1, 0x50, 0x21, 0x7D, 0x85, 0x28,\n0xAA, 0x23, 0xF8, 0x00, 0x0F, 0xBA, 0x94, 0x11, 0xF2, 0x92, 0xF2, 0xC7, 0x80, 0xFA, 0xF9, 0xF0,\n0x09, 0x21, 0x69, 0x41, 0x7B, 0xD3, 0x43, 0xD2, 0x32, 0xAB, 0xC5, 0x24, 0x39, 0x37, 0x60, 0xF0,\n0xD4, 0x3C, 0x0A, 0xE9, 0xDD, 0x7F, 0x4F, 0x48, 0xAA, 0xB1, 0x65, 0xFE, 0x61, 0x11, 0x22, 0x3E,\n0x7A, 0x4D, 0x81, 0x64, 0x56, 0x72, 0x10, 0xF8, 0x18, 0xF1, 0x90, 0x6D, 0xA7, 0x3C, 0x38, 0x9F,\n0xA2, 0x5E, 0x42, 0x12, 0xD6, 0xE7, 0x07, 0xF9, 0x07, 0x78, 0x38, 0x71, 0x88, 0xCA, 0x1F, 0x3F,\n0xC6, 0x2A, 0x2E, 0x5E, 0x0F, 0x2B, 0x8D, 0x3A, 0xBF, 0xB3, 0xA0, 0xF2, 0x79, 0x9E, 0xC2, 0xCC,\n0x97, 0x14, 0xB6, 0x7F, 0x40, 0x08, 0x1A, 0xE4, 0x83, 0x82, 0x08, 0x2E, 0x42, 0x78, 0xDE, 0x8B,\n0x48, 0x4C, 0xFA, 0x5A, 0xFE, 0xC1, 0x2A, 0xCB, 0xE1, 0x03, 0xAD, 0x7B, 0xFC, 0x43, 0x62, 0x90,\n0xC8, 0x66, 0x51, 0x54, 0x0F, 0x83, 0x46, 0x4C, 0x9B, 0xB3, 0x53, 0x50, 0xF2, 0x90, 0x67, 0xEC,\n0x29, 0x83, 0x8F, 0x6A, 0x42, 0xB8, 0x19, 0xD6, 0x39, 0xFE, 0xE1, 0x10, 0x42, 0xF9, 0x1C, 0x21,\n0x42, 0x75, 0x39, 0xC8, 0x9F, 0xBA, 0x95, 0x09, 0x7C, 0x38, 0xAB, 0x2C, 0x3E, 0xC5, 0x30, 0x21,\n0x11, 0x8D, 0x43, 0xCB, 0x83, 0x05, 0x44, 0xBA, 0xE9, 0x5D, 0x76, 0x10, 0x43, 0xF7, 0x05, 0xE1,\n0x87, 0x9E, 0x23, 0x0D, 0x78, 0x48, 0x1E, 0xA8, 0x4B, 0x43, 0xF7, 0xC3, 0x72, 0x42, 0x75, 0xE2,\n0x8F, 0xA1, 0x48, 0xFA, 0xF6, 0xD7, 0x37, 0x4C, 0x24, 0x81, 0x31, 0xE4, 0x20, 0x10, 0x42, 0xF9,\n0x63, 0xF4, 0xDF, 0x57, 0xB3, 0xF8, 0x40, 0x59, 0xF8, 0x81, 0xA5, 0xD2, 0xB2, 0x38, 0x84, 0x2C,\n0x56, 0x67, 0xDE, 0xDF, 0x7C, 0x62, 0x53, 0x84, 0x98, 0xFE, 0x71, 0xB8, 0x87, 0x9C, 0x53, 0x1E,\n0x2C, 0x68, 0xD2, 0x5F, 0x1E, 0x44, 0x79, 0x41, 0x44, 0x80, 0x7C, 0x41, 0xF9, 0x7C, 0x4C, 0x02,\n0x8E, 0xF2, 0xC7, 0x98, 0x28, 0x88, 0xA4, 0xDF, 0x6E, 0xA9, 0xE3, 0xE3, 0x12, 0x3C, 0xAC, 0x40,\n0x44, 0xE5, 0xF3, 0x6C, 0xEF, 0x40, 0x08, 0x3F, 0x61, 0x85, 0x95, 0x28, 0xE8, 0xCB, 0x62, 0x41,\n0x0B, 0x80, 0x28, 0xBD, 0xEB, 0x11, 0xC2, 0xEF, 0xD8, 0xA2, 0x81, 0x30, 0x21, 0x16, 0xD5, 0xE1,\n0x83, 0x21, 0xA3, 0x84, 0x92, 0x21, 0xE5, 0x0F, 0x43, 0x39, 0x1F, 0xBE, 0x87, 0x10, 0x70, 0x34,\n0x43, 0x1F, 0x25, 0xEA, 0xAC, 0x58, 0x99, 0x60, 0x0D, 0xF9, 0x79, 0x2A, 0x6D, 0x5E, 0x45, 0x0F,\n0x31, 0xF9, 0xA8, 0x4F, 0x66, 0x45, 0x3C, 0x28, 0x7F, 0xB8, 0x84, 0x50, 0x1E, 0x44, 0x88, 0xCB,\n0x4E, 0xBE, 0x78, 0xEB, 0xEF, 0xD2, 0xFA, 0x8A, 0x82, 0x48, 0xBA, 0x15, 0x96, 0xA3, 0xC9, 0xBC,\n0x25, 0xDB, 0x4B, 0x5F, 0x3D, 0x83, 0x0F, 0x1C, 0xA4, 0x44, 0x88, 0xA4, 0x52, 0x47, 0x87, 0x05,\n0x16, 0x57, 0x5D, 0x6C, 0xDA, 0xA0, 0x12, 0x0C, 0xE2, 0x2E, 0x67, 0x80, 0x0F, 0x29, 0xAB, 0x0E,\n0xBA, 0x84, 0xC0, 0xC7, 0x98, 0xF8, 0x25, 0xF5, 0xE0, 0x12, 0xD0, 0x91, 0x75, 0xDC, 0xA5, 0xF5,\n0x0F, 0xEB, 0x1F, 0x87, 0x10, 0xF8, 0xF0, 0x3C, 0x84, 0x79, 0x60, 0x43, 0x82, 0x95, 0xF8, 0x94,\n0x72, 0x59, 0x9F, 0xEC, 0x83, 0xC1, 0xC4, 0xF3, 0x13, 0x6E, 0x02, 0xB4, 0xF1, 0x54, 0x97, 0xCB,\n0x7A, 0x16, 0x4F, 0xC4, 0xF0, 0x51, 0x24, 0xE4, 0x84, 0xF2, 0xA0, 0x41, 0x88, 0xFE, 0x97, 0xDB,\n0x53, 0x53, 0xBA, 0x4D, 0x96, 0xD2, 0x57, 0xF8, 0x47, 0xD1, 0x43, 0x24, 0xD2, 0xBB, 0xA6, 0x8A,\n0x78, 0x10, 0x87, 0x3C, 0x6B, 0xCB, 0x1F, 0xC5, 0x35, 0x56, 0xF2, 0x90, 0x98, 0xDE, 0xCD, 0x4F,\n0x8F, 0x71, 0x23, 0x8F, 0xD9, 0x17, 0x95, 0xFF, 0x89, 0x67, 0xF2, 0x0F, 0x47, 0x24, 0xB3, 0x02,\n0x1D, 0x7F, 0x19, 0x88, 0x84, 0xFF, 0xE5, 0x16, 0xFF, 0x30, 0x09, 0xF1, 0xE0, 0xA6, 0x20, 0x12,\n0x61, 0xC8, 0x18, 0xA1, 0x31, 0x41, 0x4F, 0xE9, 0x5D, 0x08, 0x19, 0x88, 0xD2, 0x63, 0x20, 0xE2,\n0xF1, 0x71, 0x78, 0x41, 0xC4, 0xF3, 0x0F, 0x4A, 0x86, 0x94, 0x3F, 0xCA, 0xFA, 0xC3, 0x06, 0xE4,\n0xF5, 0x85, 0x6E, 0xB4, 0x78, 0xF4, 0x1E, 0xF1, 0xB9, 0xE1, 0x21, 0xE2, 0x43, 0x80, 0x78, 0x1D,\n0xFF, 0xF0, 0x10, 0xB9, 0x94, 0xDA, 0xCB, 0xAF, 0xB2, 0x31, 0x7B, 0x50, 0x0F, 0x49, 0xE7, 0xC4,\n0xCE, 0x2E, 0xEF, 0x78, 0x0A, 0x7F, 0x00, 0x1E, 0x3E, 0x21, 0xB7, 0x35, 0xFF, 0x4D, 0xBA, 0xD2,\n0x57, 0x51, 0xC1, 0x46, 0x58, 0x50, 0xED, 0xE1, 0x11, 0x44, 0xF9, 0xC3, 0x62, 0x04, 0xFB, 0xF0,\n0x84, 0x7F, 0xB4, 0x96, 0x91, 0xC7, 0x1E, 0xDD, 0x79, 0x6A, 0xF8, 0x00, 0x84, 0xDE, 0x50, 0x84,\n0x9F, 0x04, 0x42, 0x7C, 0x3E, 0xEA, 0x7F, 0xCB, 0x90, 0xF4, 0x95, 0xA1, 0xF7, 0xA6, 0x47, 0xF8,\n0x87, 0x03, 0xC8, 0xDF, 0xF6, 0x7B, 0xDF, 0x3D, 0xDD, 0x1E, 0xC3, 0x87, 0x61, 0x22, 0x5A, 0x5E,\n0x7D, 0x54, 0xA3, 0x4B, 0xF0, 0x70, 0xA4, 0xF5, 0x55, 0xBB, 0x04, 0x66, 0xAF, 0xF0, 0x93, 0xFC,\n0x79, 0xC9, 0x0E, 0x96, 0xD8, 0xFD, 0x5D, 0xEB, 0xE0, 0x00, 0xB9, 0xA9, 0x3A, 0xC2, 0xBE, 0xF1,\n0xED, 0x23, 0x11, 0xF2, 0x33, 0xA2, 0xF4, 0x91, 0xF1, 0x02, 0x41, 0x21, 0x7D, 0x65, 0x5B, 0xC8,\n0x2D, 0x7C, 0x78, 0xBA, 0x79, 0x32, 0x0A, 0x29, 0x6D, 0xB2, 0x91, 0xB6, 0x69, 0xA1, 0x7C, 0xDE,\n0x99, 0x5D, 0x5E, 0xF1, 0xC4, 0xE6, 0x6A, 0x53, 0xA5, 0xCB, 0x8F, 0x3E, 0x92, 0x33, 0xD8, 0xFD,\n0x23, 0xC2, 0x73, 0x4B, 0x47, 0xB3, 0xD7, 0xA7, 0xA6, 0xBE, 0x6D, 0x00, 0xB9, 0xF0, 0x9A, 0x6E,\n0x06, 0xB4, 0x9B, 0x4C, 0xD4, 0x4D, 0xED, 0x76, 0xF3, 0x77, 0x36, 0x7E, 0xE3, 0xB6, 0xA4, 0x26,\n0x22, 0xC7, 0x97, 0xCB, 0xE5, 0x72, 0x15, 0x7B, 0x6A, 0x6C, 0xEF, 0x3D, 0xAF, 0x56, 0x3F, 0xBE,\n0xBF, 0x78, 0xBF, 0x46, 0x37, 0x6B, 0xAD, 0x51, 0xF4, 0xB0, 0xBA, 0xDE, 0xF9, 0x65, 0x8D, 0xBE,\n0xFE, 0x92, 0x9B, 0x55, 0x1B, 0xD2, 0x9B, 0x55, 0x43, 0xA9, 0xD1, 0xD7, 0x4A, 0x2F, 0xD8, 0x6D,\n0xBD, 0x96, 0x7F, 0xF8, 0xD2, 0x44, 0x2E, 0x57, 0x71, 0x76, 0x99, 0xE0, 0xB0, 0x11, 0x86, 0xFC,\n0x27, 0xDA, 0x60, 0x77, 0x1A, 0x0A, 0x6E, 0xA3, 0x03, 0x42, 0x32, 0xC7, 0x39, 0x87, 0xA5, 0x23,\n0xDD, 0xCF, 0xDD, 0x25, 0xE4, 0xF5, 0xDF, 0x02, 0xC4, 0xE3, 0xE3, 0xE2, 0xF5, 0x6C, 0xD7, 0xDC,\n0x47, 0x71, 0x67, 0x35, 0xE1, 0x31, 0x99, 0x2B, 0xF1, 0x76, 0x6C, 0x6B, 0xAA, 0xB6, 0x59, 0x5D,\n0xD6, 0x68, 0x75, 0x97, 0x76, 0xC8, 0xD9, 0x6A, 0xA9, 0x9E, 0x5A, 0xDA, 0x0A, 0x3F, 0xE3, 0x0F,\n0x97, 0x67, 0xDA, 0xB1, 0x9F, 0x7A, 0xFB, 0xFF, 0xD3, 0xA6, 0x3F, 0xDE, 0x3C, 0xAE, 0x2B, 0xF4,\n0xF5, 0xD7, 0x5F, 0x7F, 0xE9, 0xEB, 0x5E, 0x37, 0x7B, 0xBF, 0x1D, 0x82, 0xE1, 0x56, 0x2D, 0x8D,\n0xF4, 0xDB, 0xAF, 0xEA, 0xF8, 0x78, 0xF5, 0xF5, 0xBA, 0x46, 0x8F, 0x8B, 0xC5, 0xA7, 0xEF, 0xDB,\n0x4D, 0x73, 0x74, 0x96, 0xF8, 0x90, 0xCE, 0x78, 0x0E, 0x63, 0xE8, 0xFC, 0x68, 0x25, 0x3E, 0xEA,\n0xB4, 0xD1, 0xA1, 0xA0, 0x16, 0x06, 0x36, 0x87, 0x7F, 0x32, 0x6F, 0x08, 0x69, 0x6E, 0xE8, 0x6E,\n0xF5, 0xDD, 0x76, 0x77, 0x34, 0x33, 0x5D, 0x21, 0x04, 0xE9, 0xD6, 0x1B, 0x45, 0xD1, 0xC9, 0x76,\n0x7B, 0xB4, 0xDB, 0x7A, 0xA8, 0x26, 0x3E, 0xE6, 0xF3, 0xE3, 0x0A, 0x69, 0x5E, 0x9A, 0xEC, 0x54,\n0x68, 0x92, 0xC6, 0x92, 0x74, 0x1A, 0xF3, 0x74, 0x27, 0x3E, 0xA4, 0x66, 0xE7, 0x2E, 0x8C, 0x87,\n0xCE, 0x91, 0x8F, 0xDF, 0x2C, 0x20, 0xC4, 0xE2, 0xE3, 0x85, 0x4F, 0xC8, 0xFD, 0xAD, 0x42, 0xF4,\n0x40, 0x40, 0x1C, 0xE8, 0xE1, 0x11, 0xC7, 0xCE, 0x0F, 0xBF, 0xBA, 0xD5, 0x5F, 0xA8, 0xE0, 0xA3,\n0x51, 0x05, 0x1E, 0x37, 0x8B, 0xF5, 0x8D, 0xBE, 0xB5, 0x7D, 0xFE, 0x38, 0x83, 0x10, 0x43, 0x97,\n0x77, 0x95, 0x7C, 0x6C, 0x8E, 0x6B, 0x34, 0x9F, 0x2B, 0xDC, 0x0D, 0x1E, 0xF2, 0x9E, 0xD1, 0x77,\n0xBB, 0x23, 0xE9, 0xC4, 0xE3, 0x43, 0x31, 0x88, 0xED, 0x20, 0x4A, 0x62, 0x35, 0xD2, 0x91, 0xEF,\n0x50, 0xBA, 0x9B, 0xBE, 0x23, 0x3E, 0x20, 0xC4, 0x95, 0x08, 0x91, 0x22, 0x26, 0x8E, 0x96, 0x96,\n0x56, 0x91, 0x0F, 0x0D, 0xDA, 0xB9, 0xC5, 0x87, 0xA4, 0xFA, 0x87, 0xF8, 0xD0, 0xE8, 0xF3, 0x21,\n0xD9, 0x84, 0xE8, 0x68, 0x6F, 0x7A, 0x64, 0x21, 0x43, 0x84, 0x2D, 0x2C, 0x25, 0xF0, 0x51, 0x41,\n0x88, 0x60, 0xAD, 0x21, 0xE4, 0x46, 0xDF, 0xF5, 0x46, 0x5F, 0xD7, 0x3C, 0x7F, 0xB4, 0xB2, 0xF9,\n0x70, 0xB5, 0x8A, 0x7C, 0x4C, 0x8F, 0x2B, 0xF9, 0x48, 0x84, 0x78, 0xFE, 0x21, 0x3E, 0xA4, 0xAD,\n0x4B, 0x88, 0x96, 0x58, 0xEF, 0x5E, 0x5C, 0xF8, 0x7C, 0x48, 0x93, 0xED, 0xB4, 0x44, 0xE9, 0x36,\n0xF1, 0x51, 0x8F, 0xC8, 0x34, 0x11, 0xF2, 0xC0, 0x8C, 0x0D, 0x8E, 0x71, 0xD3, 0xE2, 0x23, 0xE2,\n0x21, 0x25, 0x87, 0xE8, 0x6F, 0x61, 0x58, 0xE8, 0x59, 0xE7, 0x53, 0x9D, 0x53, 0xD5, 0x6E, 0x5C,\n0x3E, 0x92, 0xEE, 0x1D, 0xFB, 0x68, 0xF9, 0x68, 0x3D, 0x04, 0x81, 0x4B, 0x97, 0x9B, 0xF0, 0x76,\n0x9F, 0x90, 0x88, 0x87, 0x4F, 0xC8, 0x42, 0x0E, 0xD2, 0x78, 0xC8, 0xC2, 0x38, 0x7F, 0x44, 0xFF,\n0x90, 0xF0, 0x10, 0x87, 0x8F, 0x3B, 0x1B, 0x91, 0x87, 0x63, 0xE4, 0xE1, 0x91, 0x08, 0x99, 0x1A,\n0x26, 0x32, 0x89, 0x78, 0xF8, 0x84, 0xBC, 0xDB, 0x00, 0xF2, 0xAE, 0x01, 0xC8, 0xB5, 0xF8, 0x68,\n0xB5, 0x2B, 0x52, 0x3A, 0x81, 0x8F, 0x7A, 0x13, 0x59, 0x3D, 0x84, 0x55, 0x56, 0x11, 0x8F, 0xBB,\n0xF4, 0xAA, 0x8C, 0x87, 0xF8, 0x88, 0x3A, 0x0B, 0x26, 0x32, 0xB4, 0xEF, 0xD5, 0x12, 0x43, 0x3A,\n0x9F, 0xEA, 0x98, 0x69, 0x86, 0x44, 0xC8, 0x8B, 0xB1, 0x01, 0x3E, 0x5E, 0x58, 0x84, 0x84, 0x43,\n0x3D, 0xF5, 0x96, 0x01, 0xBA, 0x94, 0x23, 0x72, 0xAB, 0xB7, 0xA6, 0xEE, 0x00, 0xF8, 0x35, 0x2A,\n0x7E, 0x76, 0xE9, 0x31, 0x7C, 0x51, 0x7D, 0xDF, 0x6F, 0xD6, 0x22, 0xA4, 0xD4, 0x16, 0x69, 0x1E,\n0x93, 0x87, 0x94, 0x67, 0xDF, 0xC2, 0x82, 0xF1, 0xB8, 0x9A, 0x0F, 0x08, 0x29, 0x7A, 0x08, 0x7C,\n0x88, 0x90, 0x6B, 0x87, 0x8F, 0x08, 0xC8, 0xBB, 0xA7, 0xE3, 0x88, 0xBC, 0xBE, 0xB8, 0x3E, 0x7A,\n0x53, 0x05, 0x52, 0x33, 0x3E, 0x0E, 0x59, 0x66, 0xB1, 0xD0, 0x7A, 0x08, 0x23, 0xDB, 0xB9, 0x87,\n0xAC, 0xCA, 0x84, 0x24, 0xFF, 0x50, 0x8F, 0x2A, 0xFA, 0xC7, 0x37, 0x8F, 0x37, 0xB1, 0x35, 0xCB,\n0xAC, 0x75, 0x49, 0xAF, 0x74, 0x20, 0x82, 0xC8, 0xBD, 0xC3, 0x07, 0xFD, 0x36, 0xF3, 0x0A, 0x9E,\n0xD4, 0xD2, 0x16, 0xEF, 0x77, 0x08, 0xB9, 0x97, 0x7F, 0x20, 0xC3, 0x3E, 0x16, 0x7C, 0xDB, 0x6F,\n0xF4, 0xF5, 0x47, 0xFD, 0xE3, 0x53, 0xE0, 0x38, 0x83, 0x10, 0x8B, 0x8F, 0x3B, 0x07, 0x91, 0xCD,\n0xA1, 0x7C, 0xE0, 0x21, 0xD3, 0xC9, 0x76, 0xB0, 0xC3, 0x87, 0x43, 0x88, 0x12, 0xB7, 0x11, 0x10,\n0xA9, 0x79, 0x35, 0xD4, 0xE2, 0xFD, 0x7F, 0x3A, 0xDA, 0x8E, 0xFB, 0xC7, 0x1C, 0x3E, 0x0E, 0x25,\n0x44, 0x34, 0xB4, 0x44, 0x48, 0xCD, 0x33, 0xDB, 0x61, 0xE3, 0xCE, 0x5C, 0x65, 0xAD, 0xEE, 0xE0,\n0x23, 0xF4, 0xE1, 0x7D, 0x9F, 0xA4, 0xB5, 0x46, 0x4B, 0x47, 0x1C, 0xAD, 0xE5, 0x15, 0x84, 0x38,\n0xEB, 0x2B, 0xBA, 0x10, 0xC0, 0x34, 0x40, 0x84, 0x17, 0xF9, 0xFB, 0x8B, 0xFE, 0xD1, 0x00, 0x82,\n0x5E, 0x95, 0xF8, 0xD0, 0x77, 0xA4, 0x15, 0x3D, 0x44, 0x62, 0x36, 0xCB, 0x71, 0xC8, 0xCA, 0x76,\n0x8E, 0x95, 0xDA, 0x81, 0x7C, 0x40, 0xC8, 0x3C, 0x04, 0x22, 0x83, 0x4A, 0x7C, 0x40, 0xC8, 0xAC,\n0xE4, 0x1F, 0x09, 0x10, 0xE9, 0x74, 0xF0, 0xBD, 0xF0, 0x81, 0x76, 0xDB, 0x31, 0xFF, 0x98, 0x83,\n0xC7, 0xA1, 0x84, 0x30, 0x85, 0xA4, 0xB5, 0xD8, 0xCE, 0xB5, 0x3A, 0x1B, 0x59, 0x5F, 0x11, 0x7F,\n0xF0, 0xBC, 0xE8, 0xDB, 0xF3, 0x29, 0x00, 0xC5, 0x3C, 0xDA, 0x2D, 0xC3, 0x3F, 0x50, 0x29, 0x99,\n0xF5, 0x55, 0x76, 0xBC, 0xCB, 0x44, 0x32, 0x22, 0xC8, 0xF5, 0x62, 0x1F, 0x1D, 0x42, 0xEE, 0x0B,\n0xE1, 0x79, 0xA6, 0x42, 0xFE, 0xAA, 0x09, 0x3F, 0xD2, 0xF7, 0x4D, 0xC9, 0xAC, 0x61, 0xFF, 0xC0,\n0x89, 0x09, 0x44, 0x56, 0x2B, 0x97, 0x8F, 0xBB, 0x31, 0x44, 0x1E, 0x2E, 0x0F, 0xE6, 0x03, 0xC5,\n0x82, 0xC8, 0x7B, 0xDB, 0xD8, 0xE7, 0xF1, 0x79, 0x12, 0x36, 0xF0, 0x0F, 0xB4, 0xDD, 0xCD, 0xC6,\n0xF9, 0x00, 0x10, 0x69, 0xC4, 0x3F, 0x10, 0x88, 0x4C, 0x3C, 0xFF, 0x38, 0x9C, 0x90, 0x55, 0xE8,\n0xC1, 0x3A, 0x92, 0xD8, 0xBE, 0xCB, 0x20, 0x59, 0x8D, 0xA7, 0xAF, 0xD2, 0xE3, 0x6C, 0x38, 0x0E,\n0xE1, 0xEC, 0xF8, 0xF8, 0x0D, 0x60, 0xA8, 0xC5, 0xED, 0x6C, 0xED, 0xCE, 0x03, 0xFF, 0x30, 0x09,\n0xF9, 0x2A, 0x05, 0xDC, 0x74, 0x79, 0x48, 0x1B, 0x6A, 0xEC, 0x3B, 0xC8, 0x2D, 0xEF, 0xE3, 0x2F,\n0x8C, 0xF1, 0x81, 0xF0, 0x10, 0x3E, 0x36, 0x8F, 0xD6, 0x3F, 0xC2, 0xB7, 0xC4, 0x41, 0x9A, 0xE0,\n0x2B, 0xCE, 0x4E, 0x6F, 0x93, 0xB2, 0x99, 0xD4, 0x58, 0xE9, 0x1F, 0x50, 0x81, 0x73, 0xC4, 0xA8,\n0xF3, 0xDF, 0xF1, 0x01, 0x21, 0x5D, 0x6D, 0xDB, 0x11, 0x3E, 0xD0, 0x70, 0x41, 0x44, 0xCB, 0xAB,\n0x7D, 0x40, 0xFA, 0xC2, 0x0F, 0xF8, 0xC8, 0x3C, 0x24, 0x06, 0x22, 0xAC, 0xF0, 0x26, 0xCD, 0xB8,\n0xEB, 0xE5, 0xA3, 0x3E, 0x97, 0x45, 0xBA, 0x37, 0x3C, 0xC2, 0x82, 0x4B, 0x6A, 0xD7, 0x5E, 0xFB,\n0x1A, 0xE5, 0xA3, 0xD3, 0x7B, 0x73, 0x59, 0xED, 0x46, 0x48, 0xEF, 0x62, 0x1F, 0x37, 0x0D, 0x22,\n0xCD, 0xAB, 0x82, 0x7F, 0x18, 0x84, 0x50, 0xFE, 0xC8, 0x3A, 0xE9, 0xDE, 0xBE, 0x18, 0xE4, 0xAB,\n0x5E, 0x42, 0xEE, 0x0D, 0x3E, 0x0C, 0x0F, 0x49, 0x5F, 0x94, 0x31, 0xE6, 0x7B, 0xC3, 0x74, 0x8C,\n0xC6, 0x1F, 0x6C, 0x91, 0xCC, 0x72, 0xF8, 0xB8, 0xCB, 0x11, 0x59, 0x3D, 0xF0, 0x92, 0xF4, 0xD5,\n0x81, 0x7C, 0x40, 0xC8, 0x76, 0xAA, 0x20, 0x20, 0x8C, 0x32, 0x0F, 0x8D, 0xA9, 0xFC, 0x81, 0xD0,\n0x90, 0x87, 0x88, 0x08, 0x00, 0x19, 0xF3, 0x90, 0x93, 0xA3, 0x1E, 0x51, 0x10, 0x99, 0x03, 0xEA,\n0x96, 0xF2, 0x60, 0x81, 0x10, 0x43, 0x0F, 0x9B, 0x0C, 0x85, 0x18, 0xC3, 0xA5, 0x69, 0xEE, 0x99,\n0xFA, 0xD5, 0x20, 0x1F, 0x2C, 0x07, 0x38, 0x01, 0x66, 0x1E, 0xD2, 0x2E, 0x2B, 0x16, 0x8B, 0x75,\n0x3C, 0x4A, 0x38, 0xA3, 0x06, 0x17, 0x59, 0x7C, 0x63, 0xC5, 0x1F, 0x10, 0xE2, 0xF1, 0x41, 0x87,\n0x0B, 0x48, 0x21, 0xFE, 0xD8, 0xEF, 0xC5, 0xF5, 0x95, 0x13, 0x87, 0x84, 0x2F, 0x17, 0x92, 0x75,\n0x20, 0x12, 0x02, 0x91, 0xFE, 0x3C, 0x06, 0x68, 0xA8, 0x31, 0x93, 0x1A, 0x6A, 0xCA, 0x1F, 0x18,\n0x87, 0x7C, 0x83, 0x1F, 0x1C, 0x52, 0xFE, 0xC8, 0x45, 0x41, 0x44, 0x9A, 0xAA, 0x25, 0xFB, 0xD0,\n0x53, 0x28, 0x9F, 0xF7, 0xEB, 0x64, 0xD0, 0x3F, 0x72, 0x40, 0x7A, 0xD3, 0xBD, 0x2A, 0x9F, 0x8F,\n0x10, 0x22, 0x09, 0xCF, 0x80, 0xC9, 0x54, 0x1D, 0x3E, 0x10, 0xAA, 0xC1, 0x23, 0x14, 0x44, 0xD2,\n0x0A, 0x6B, 0xA5, 0x81, 0xB3, 0x0D, 0xCA, 0x30, 0x19, 0x2A, 0x7F, 0xB0, 0x1E, 0x78, 0x1A, 0xF4,\n0xE8, 0xC4, 0x21, 0x2D, 0x24, 0x21, 0xBD, 0x1B, 0x5B, 0x5A, 0x9A, 0x13, 0x90, 0x38, 0x7C, 0x40,\n0xC8, 0xAB, 0xFE, 0xF0, 0x7C, 0x10, 0x90, 0xC4, 0x06, 0x4F, 0xCD, 0x90, 0xBD, 0xA7, 0x90, 0xCC,\n0x22, 0xBD, 0x6B, 0x7A, 0x48, 0x80, 0x63, 0x6F, 0x35, 0x99, 0x4A, 0x86, 0xE3, 0xF1, 0x47, 0x67,\n0x26, 0xA5, 0xE5, 0xCA, 0xE5, 0xE3, 0xAE, 0x63, 0x1C, 0xEA, 0x71, 0x7D, 0xF5, 0x5F, 0xF8, 0x07,\n0x84, 0x04, 0x13, 0x09, 0x47, 0x66, 0x34, 0x93, 0x29, 0xFE, 0x81, 0x28, 0x88, 0x8C, 0xF8, 0x07,\n0x80, 0x40, 0x48, 0x5E, 0xFE, 0x18, 0x91, 0xDC, 0x2B, 0x51, 0x1A, 0x1C, 0x8D, 0xF2, 0x39, 0x42,\n0xF5, 0x25, 0x43, 0x72, 0xBA, 0x0F, 0xB9, 0x4D, 0x13, 0xAB, 0xA3, 0x1C, 0x0F, 0xF8, 0x60, 0x3D,\n0x80, 0xCE, 0x58, 0x47, 0xA8, 0x2D, 0x02, 0x1F, 0x37, 0x4F, 0xC7, 0x09, 0x64, 0xC4, 0x83, 0x48,\n0x83, 0xC3, 0xC7, 0x58, 0x41, 0x44, 0x7C, 0x8C, 0x1C, 0xF1, 0x60, 0x01, 0x29, 0xB7, 0x3E, 0x21,\n0xF0, 0x61, 0x7B, 0x08, 0xFC, 0x87, 0xD6, 0x79, 0xF5, 0xCD, 0x62, 0x2F, 0x0E, 0x21, 0x92, 0x63,\n0x3A, 0x89, 0xD4, 0xEB, 0xCB, 0x1F, 0x2B, 0xB6, 0x0C, 0xFF, 0x30, 0xF1, 0xA0, 0x20, 0x12, 0xCE,\n0xD8, 0x81, 0x11, 0xCA, 0x1F, 0xC3, 0x84, 0xBC, 0xEE, 0xDA, 0xC7, 0xE9, 0xBB, 0x19, 0x20, 0x48,\n0x7F, 0xEA, 0xF2, 0x41, 0x32, 0x6B, 0xB2, 0x0D, 0xFE, 0x01, 0x1F, 0x06, 0x20, 0x96, 0x8B, 0xC4,\n0x08, 0x84, 0x93, 0x0D, 0x74, 0xA0, 0xC1, 0x50, 0x3D, 0xA5, 0x77, 0xD9, 0x95, 0x7A, 0xD0, 0xA8,\n0x87, 0xA4, 0xE7, 0xC6, 0x3F, 0xF2, 0x83, 0x46, 0x8D, 0xA3, 0xE7, 0x66, 0x3F, 0xFE, 0xF0, 0x08,\n0xC1, 0x3F, 0xC6, 0xFA, 0x13, 0x1E, 0xC4, 0xE7, 0x5F, 0xB9, 0x84, 0x50, 0xFE, 0xF0, 0x3D, 0x04,\n0x24, 0x08, 0xBA, 0x78, 0x16, 0x21, 0xC4, 0x21, 0x69, 0x0B, 0x31, 0x93, 0xDA, 0xEA, 0x2F, 0x88,\n0xB0, 0x8F, 0xFA, 0x3D, 0x84, 0xD0, 0xF2, 0xB0, 0xF2, 0x60, 0x81, 0x90, 0xE8, 0x21, 0x52, 0x88,\n0x8E, 0x07, 0xF8, 0x20, 0xDD, 0x9B, 0x11, 0x02, 0x0F, 0x00, 0x02, 0x21, 0x64, 0xB9, 0x2E, 0xC4,\n0x47, 0x41, 0xDB, 0x16, 0x0F, 0x51, 0xBA, 0x23, 0x3C, 0x47, 0xFF, 0x36, 0x99, 0x05, 0x0F, 0x1B,\n0xC8, 0x60, 0xE5, 0x95, 0xB5, 0xCC, 0x3F, 0xD2, 0x2E, 0x64, 0x41, 0x80, 0xE2, 0x4B, 0xD6, 0x58,\n0x4F, 0xF1, 0x79, 0x3A, 0x5E, 0x40, 0x84, 0xF5, 0xB9, 0xED, 0x1F, 0x14, 0x44, 0x10, 0x47, 0xB7,\n0x15, 0x87, 0x88, 0x0F, 0x9B, 0x10, 0xCA, 0x1F, 0xBE, 0x87, 0x2C, 0x32, 0xDB, 0xC8, 0xB6, 0xD7,\n0x91, 0x90, 0xD4, 0x30, 0xE2, 0xD4, 0x98, 0xC4, 0xA7, 0xA1, 0xE0, 0x1F, 0x98, 0x05, 0x70, 0xA4,\n0xAD, 0x43, 0xD2, 0x57, 0x16, 0x21, 0x53, 0x2D, 0xAF, 0x28, 0x7F, 0x18, 0x84, 0xE0, 0x1F, 0xC3,\n0x80, 0x50, 0x54, 0x7F, 0x0D, 0x1F, 0x23, 0x4A, 0x71, 0xC8, 0x64, 0x4A, 0xFA, 0xEA, 0xBF, 0x27,\n0x44, 0x74, 0xE4, 0x45, 0x91, 0x92, 0x87, 0xAC, 0x58, 0x2C, 0xB3, 0x10, 0xE8, 0xB4, 0x20, 0xAE,\n0x2F, 0x8A, 0xE1, 0x39, 0x39, 0xAC, 0xBC, 0x35, 0x31, 0x89, 0x6B, 0x1F, 0x10, 0x02, 0x1F, 0x25,\n0x3C, 0x9A, 0x46, 0x7C, 0x5E, 0xC6, 0x89, 0x74, 0x2F, 0xE1, 0xB9, 0x8F, 0xC8, 0x82, 0x00, 0x24,\n0x34, 0x42, 0x11, 0x3C, 0xA4, 0x9D, 0x1B, 0x96, 0x57, 0x49, 0x4C, 0x22, 0xE7, 0xA0, 0x4E, 0x41,\n0x24, 0x9A, 0xFE, 0x5D, 0x3F, 0x22, 0x2B, 0x72, 0x59, 0xEA, 0xAE, 0x7D, 0xF8, 0x7C, 0x50, 0x32,\n0x94, 0x04, 0x09, 0x7C, 0x8C, 0x12, 0xD2, 0x29, 0x9F, 0xF7, 0x00, 0x82, 0x3A, 0xE5, 0x73, 0x87,\n0x10, 0x99, 0xD8, 0x60, 0xF9, 0xE3, 0x3F, 0x2C, 0x88, 0x80, 0xC5, 0x43, 0x2C, 0xB3, 0x87, 0x91,\n0x21, 0xBE, 0x71, 0x79, 0x46, 0x79, 0x90, 0x7D, 0xDA, 0x1F, 0x85, 0xA8, 0x85, 0xE8, 0x23, 0xF1,\n0xD1, 0xA9, 0x0D, 0x86, 0xA6, 0x9F, 0x34, 0x9B, 0x1C, 0x36, 0x9E, 0x7F, 0x40, 0x88, 0xEB, 0x1F,\n0xF9, 0x85, 0x59, 0xE0, 0xE4, 0x11, 0xF2, 0x35, 0x80, 0x58, 0x84, 0x2C, 0xB2, 0xF5, 0x15, 0xA7,\n0x06, 0x9C, 0x65, 0x9D, 0x3C, 0x44, 0x3D, 0x07, 0xA3, 0x5F, 0x9C, 0x9C, 0x46, 0x0B, 0x1F, 0xB0,\n0x91, 0xF4, 0x5F, 0xFA, 0x47, 0x9E, 0xEE, 0xC5, 0x3F, 0x0A, 0x84, 0x90, 0xEE, 0x7D, 0x77, 0x14,\n0x10, 0x3C, 0x64, 0x76, 0x84, 0x0A, 0x71, 0x88, 0xCF, 0xC7, 0xE1, 0x1E, 0xD2, 0x66, 0xB4, 0x56,\n0x71, 0x09, 0x9B, 0x8B, 0x48, 0x7E, 0x19, 0x85, 0x79, 0x90, 0x95, 0xCC, 0x5A, 0x50, 0x5A, 0x41,\n0x64, 0x69, 0x5D, 0x35, 0x70, 0x79, 0xC2, 0x44, 0x4F, 0xF8, 0x87, 0xA7, 0x74, 0x00, 0x5B, 0x78,\n0xA4, 0x9A, 0xBA, 0x69, 0x20, 0x14, 0x44, 0xC4, 0x87, 0x2B, 0xD6, 0x57, 0x7B, 0xAD, 0xFD, 0xE2,\n0x7D, 0x45, 0x75, 0x66, 0x11, 0x52, 0xF2, 0x46, 0x41, 0x24, 0xBF, 0xFC, 0x0A, 0x38, 0xDA, 0x73,\n0x1A, 0xA1, 0xA4, 0x5E, 0xD7, 0xA7, 0xAF, 0x7C, 0x42, 0xE0, 0xA3, 0xAC, 0x19, 0x7C, 0xF4, 0x03,\n0x82, 0x5E, 0x53, 0x3E, 0xB7, 0x10, 0x81, 0x8F, 0xFF, 0x85, 0x90, 0xE4, 0x0F, 0x61, 0x48, 0x62,\n0xAA, 0xDB, 0x2D, 0x7A, 0xB7, 0x3C, 0xA8, 0x61, 0xD0, 0x41, 0x28, 0x88, 0xDC, 0xAC, 0x31, 0x8A,\n0xF6, 0x41, 0x03, 0x12, 0x3D, 0x2C, 0xFB, 0x20, 0x54, 0xA7, 0xFC, 0x61, 0xF5, 0xF6, 0xB7, 0x07,\n0x5D, 0x42, 0x6E, 0xEF, 0xE1, 0xC3, 0x51, 0x6F, 0x78, 0x4E, 0xCB, 0x5F, 0x63, 0x1F, 0x67, 0x70,\n0xD1, 0x6F, 0x21, 0x89, 0x90, 0xB3, 0xE5, 0x48, 0xE1, 0x03, 0x11, 0x9E, 0xD7, 0xFB, 0x47, 0x05,\n0x21, 0xF0, 0xE1, 0x11, 0x32, 0x7B, 0xFD, 0xAE, 0x01, 0x88, 0x44, 0x79, 0xD0, 0x44, 0x04, 0x3C,\n0x6A, 0x09, 0xF1, 0xD2, 0xBD, 0x2C, 0x69, 0x39, 0x2F, 0x01, 0x4D, 0x5E, 0x32, 0xA4, 0x7A, 0x0E,\n0x23, 0x1A, 0x69, 0xDD, 0x34, 0xFE, 0x22, 0x39, 0x46, 0x4F, 0xE2, 0x53, 0x43, 0x7E, 0x14, 0x99,\n0x7C, 0x90, 0xCC, 0x82, 0x0F, 0xC3, 0x43, 0x6E, 0xB1, 0x0F, 0xAF, 0x93, 0xDE, 0xB5, 0x24, 0x3E,\n0xF8, 0x32, 0xC3, 0x68, 0x24, 0xBF, 0xBC, 0x59, 0x64, 0x97, 0xEF, 0x82, 0x4A, 0xDE, 0xA2, 0xF2,\n0xE5, 0xD5, 0x5D, 0x16, 0x91, 0xA7, 0xCE, 0x1F, 0xD4, 0xFB, 0x47, 0x05, 0x21, 0x1E, 0x1E, 0xA4,\n0x7B, 0x65, 0x1F, 0x26, 0x20, 0xB3, 0xC9, 0xF6, 0xC8, 0x96, 0xEE, 0x65, 0x0D, 0x1F, 0xFF, 0x1B,\n0x21, 0x4C, 0x2F, 0x5B, 0x38, 0x37, 0x36, 0xA2, 0xD7, 0xD9, 0xA9, 0x0D, 0x52, 0x06, 0xCE, 0x7C,\n0x37, 0xEB, 0xBE, 0x83, 0x64, 0x20, 0x84, 0x5D, 0xC0, 0x87, 0xE9, 0x21, 0x14, 0xFC, 0x9C, 0x4E,\n0xFE, 0xCA, 0xE8, 0xB2, 0x1C, 0xE2, 0x73, 0x4F, 0x7C, 0x47, 0x96, 0x93, 0x64, 0xEA, 0x16, 0x4F,\n0x56, 0x9A, 0x0A, 0x22, 0xFA, 0x3F, 0xA0, 0x71, 0x60, 0x50, 0xC9, 0x04, 0x38, 0xA3, 0x75, 0x0F,\n0x61, 0x12, 0x46, 0x5C, 0xA5, 0xA6, 0xFC, 0xF1, 0x8E, 0x32, 0xFF, 0x73, 0x0E, 0x34, 0x27, 0x54,\n0xDF, 0x5D, 0x5F, 0x57, 0x00, 0xB2, 0xFD, 0xD6, 0x05, 0xE4, 0x62, 0x56, 0xE1, 0x20, 0xE1, 0x5E,\n0xBD, 0x55, 0x1F, 0x7C, 0x53, 0x57, 0x15, 0x7A, 0x78, 0x48, 0x84, 0xE0, 0x21, 0x99, 0x55, 0x3F,\n0x60, 0x28, 0x21, 0x0A, 0xE9, 0x9C, 0xE4, 0xD8, 0x81, 0xBD, 0x4D, 0x06, 0xC2, 0x51, 0xC1, 0xD1,\n0xB2, 0x47, 0x0B, 0x21, 0xEC, 0x63, 0xCD, 0xF1, 0x18, 0x1D, 0xC4, 0xED, 0x6A, 0x7F, 0xFD, 0x25,\n0x1F, 0xF1, 0x01, 0xB9, 0xA5, 0x00, 0xE2, 0xF1, 0xF1, 0x98, 0x31, 0x1F, 0x69, 0x48, 0x5F, 0x3F,\n0x6C, 0x76, 0xC3, 0xAF, 0x4F, 0xC1, 0x22, 0x8E, 0xBD, 0x16, 0xC2, 0xD5, 0xEF, 0x59, 0xF2, 0x3D,\n0x94, 0x3D, 0xC0, 0x83, 0x70, 0x5D, 0x7F, 0x22, 0x3E, 0x1E, 0x2A, 0x1D, 0x64, 0x33, 0xAF, 0x53,\n0x15, 0x21, 0x27, 0xB3, 0x53, 0x0F, 0x90, 0xD3, 0xD9, 0x8C, 0x18, 0xC4, 0xE0, 0x63, 0x3E, 0x15,\n0x21, 0xBE, 0x8E, 0x91, 0x75, 0xDA, 0x80, 0x10, 0x89, 0xD9, 0x5E, 0xE9, 0x81, 0x83, 0x90, 0xFF,\n0x5D, 0x4A, 0x2C, 0x94, 0xD9, 0x95, 0x43, 0xD2, 0x61, 0x9F, 0x4A, 0x1F, 0x9C, 0x52, 0xF7, 0x80,\n0xE1, 0x27, 0x12, 0x84, 0x38, 0x31, 0xC8, 0x67, 0xC4, 0x20, 0x0E, 0x1F, 0x92, 0xED, 0x21, 0x7A,\n0xE8, 0xDF, 0xC7, 0x43, 0x2C, 0x3E, 0x44, 0x81, 0x1A, 0xF9, 0x2A, 0x82, 0xAC, 0xF8, 0x2D, 0x3B,\n0xC6, 0xA2, 0xA9, 0x01, 0x0B, 0xA6, 0x71, 0x60, 0x36, 0x63, 0x06, 0x71, 0x20, 0x7B, 0x42, 0xA2,\n0x85, 0x15, 0x72, 0xA3, 0x9A, 0x83, 0xA1, 0x6A, 0x8D, 0x15, 0x0E, 0xCB, 0x89, 0x4F, 0x88, 0x0E,\n0x7A, 0x08, 0xE9, 0x03, 0x04, 0xFF, 0x50, 0x13, 0x21, 0x3B, 0x97, 0x8F, 0xF9, 0x54, 0xF2, 0xF9,\n0xA8, 0x0B, 0xCB, 0x36, 0x0F, 0x0D, 0x21, 0x72, 0xE5, 0x55, 0x9F, 0x87, 0x00, 0x4E, 0xF0, 0x11,\n0x6E, 0x73, 0x02, 0x1A, 0xA3, 0xB9, 0x97, 0x80, 0x87, 0xA4, 0x03, 0x9F, 0x8C, 0x27, 0x59, 0xAC,\n0x7C, 0x51, 0xAE, 0xB7, 0xD5, 0x11, 0xA2, 0xC3, 0x37, 0x46, 0xE9, 0x1E, 0x1F, 0x2F, 0xFF, 0x0A,\n0x7A, 0xA9, 0x6D, 0xD7, 0x3F, 0xA8, 0x82, 0x98, 0x7C, 0x48, 0x37, 0x7C, 0xC7, 0xDC, 0x29, 0x3B,\n0x2F, 0xE2, 0xD4, 0xE0, 0x1D, 0x61, 0x18, 0xB6, 0x90, 0x74, 0xA3, 0x1F, 0x38, 0x68, 0x8D, 0x9F,\n0xA2, 0x39, 0x7B, 0x4D, 0xFE, 0xA1, 0x3D, 0xDB, 0x34, 0x47, 0xF5, 0x1E, 0x92, 0x8E, 0x4A, 0x08,\n0x31, 0xF8, 0x80, 0x90, 0x31, 0x40, 0x66, 0x8D, 0x7F, 0x34, 0x11, 0xBD, 0x2E, 0x80, 0xB4, 0xF9,\n0x90, 0xCC, 0x3C, 0xD6, 0xA6, 0x8A, 0x8F, 0xCD, 0x46, 0x53, 0x18, 0xE6, 0xB1, 0xEB, 0x21, 0x3C,\n0x53, 0x0B, 0x51, 0xA3, 0x52, 0x88, 0x87, 0xF4, 0xD4, 0x7F, 0x21, 0x26, 0x02, 0x22, 0xED, 0xC7,\n0xAB, 0xB8, 0x06, 0x8B, 0xF2, 0xC7, 0xF5, 0x8B, 0x0A, 0x42, 0x5E, 0x04, 0x3E, 0x04, 0x88, 0xEE,\n0x82, 0xF5, 0xD2, 0xE6, 0xA3, 0xC6, 0x43, 0x1A, 0x3C, 0x3E, 0xF3, 0x3D, 0xE4, 0xB1, 0x15, 0x5F,\n0x8E, 0x4B, 0x06, 0x70, 0x15, 0xF8, 0x88, 0x84, 0x2C, 0xF6, 0xD3, 0x57, 0x6C, 0xA1, 0x65, 0xD4,\n0x27, 0x22, 0x64, 0xC5, 0x82, 0x37, 0xBF, 0x20, 0x9B, 0xEB, 0x78, 0xC3, 0x6E, 0x0D, 0xBD, 0x4E,\n0x36, 0x1F, 0x35, 0x84, 0x5C, 0x47, 0x3E, 0xD4, 0x47, 0x01, 0x81, 0x8F, 0x48, 0x48, 0xF1, 0x9F,\n0x3D, 0x4A, 0x7C, 0x24, 0x42, 0xDE, 0x31, 0xFD, 0xC3, 0xB7, 0x0F, 0x29, 0xCC, 0xE2, 0x73, 0xF9,\n0x43, 0xEE, 0x21, 0x7B, 0xF3, 0xFF, 0xC0, 0x4D, 0xCC, 0xF0, 0x10, 0x34, 0xE8, 0x1F, 0x10, 0x92,\n0xB7, 0xCC, 0x4E, 0x90, 0x83, 0x87, 0xF8, 0xE0, 0x3E, 0x71, 0x65, 0x3C, 0xE0, 0xC3, 0x23, 0xE4,\n0xAB, 0xCF, 0x82, 0x7F, 0x08, 0x11, 0xD3, 0x43, 0xF8, 0xF4, 0x38, 0xE2, 0x7E, 0xC2, 0x97, 0x6A,\n0xE1, 0x02, 0x42, 0xFA, 0xD6, 0xAB, 0xB9, 0x7F, 0xA0, 0x55, 0x37, 0x2C, 0x8F, 0xB5, 0x2B, 0x92,\n0x59, 0x09, 0x92, 0x78, 0xE2, 0xFB, 0x9F, 0x3C, 0x84, 0xA3, 0x52, 0xB9, 0xAC, 0x6B, 0x8B, 0x8F,\n0xD4, 0x67, 0x63, 0x80, 0xC0, 0x47, 0x00, 0xAA, 0x74, 0xAD, 0xC9, 0xF5, 0x6E, 0x1A, 0x3F, 0x88,\n0xED, 0x21, 0xB5, 0xCB, 0xAB, 0xE3, 0xD4, 0x9A, 0xAE, 0x2A, 0xE1, 0x5E, 0x1C, 0xC2, 0x4B, 0xFC,\n0x03, 0x42, 0xCE, 0xC6, 0x1C, 0x04, 0x3E, 0x82, 0xFA, 0x4A, 0x20, 0x5C, 0x0D, 0x1E, 0xC6, 0xC7,\n0x37, 0xF5, 0xC2, 0xF5, 0x8F, 0xD6, 0x43, 0x8A, 0xE1, 0x07, 0x7C, 0x18, 0x84, 0x04, 0x3E, 0x5A,\n0x59, 0x1E, 0xD2, 0x78, 0x1F, 0xC2, 0x39, 0x7A, 0x5A, 0x18, 0x98, 0x19, 0x3C, 0x64, 0xE4, 0xCA,\n0x84, 0x65, 0x47, 0x5C, 0xFC, 0x90, 0x95, 0x3F, 0xDA, 0xB5, 0x57, 0xF2, 0x8F, 0x16, 0x92, 0x3A,\n0x39, 0x7C, 0xA0, 0xF9, 0x54, 0x84, 0x94, 0xF9, 0x80, 0x90, 0x11, 0x40, 0x5E, 0x83, 0x47, 0x99,\n0x90, 0x6B, 0xF1, 0x11, 0x3F, 0x09, 0xB4, 0x1A, 0x57, 0xF3, 0xDA, 0x4A, 0xF3, 0xC7, 0x89, 0x26,\n0xF7, 0x90, 0xDC, 0x42, 0x96, 0x08, 0x0F, 0x19, 0x34, 0x10, 0xF8, 0x00, 0x91, 0x75, 0x8E, 0x07,\n0xA3, 0x9E, 0xBB, 0x5A, 0x9B, 0x7C, 0x70, 0x35, 0xEF, 0xB8, 0x7F, 0x00, 0x07, 0x71, 0x48, 0x29,\n0xFC, 0x80, 0x90, 0x62, 0x32, 0x2B, 0xFF, 0xF4, 0xFB, 0x89, 0xDD, 0xC7, 0xEE, 0x76, 0x12, 0x84,\n0x48, 0xC3, 0x41, 0xC8, 0x32, 0x53, 0x56, 0x41, 0x27, 0x97, 0x15, 0x5F, 0x47, 0xFF, 0x50, 0x4B,\n0x4F, 0x95, 0xDA, 0x38, 0x7C, 0xF8, 0x84, 0x5C, 0x07, 0x3C, 0x20, 0x64, 0xF0, 0x72, 0xF7, 0xD3,\n0xE8, 0x1F, 0x74, 0xDD, 0x2E, 0x6E, 0x37, 0xCA, 0xC7, 0xB4, 0x2B, 0x6B, 0x79, 0xE5, 0x03, 0xD2,\n0xB6, 0x4D, 0x82, 0x64, 0x93, 0x59, 0x48, 0x27, 0xA1, 0x25, 0x3E, 0x7E, 0xDC, 0x23, 0x84, 0x6B,\n0x50, 0x87, 0xC3, 0x0F, 0xD4, 0x1E, 0x35, 0x70, 0xC1, 0x08, 0x1F, 0x0E, 0x21, 0x3A, 0x5A, 0xC1,\n0xC3, 0x20, 0x04, 0xFF, 0x40, 0xE3, 0x1E, 0xD2, 0x40, 0xD1, 0x25, 0x04, 0x13, 0x19, 0xE1, 0x03,\n0xDD, 0xB4, 0x39, 0x2B, 0x32, 0xBB, 0xED, 0xF6, 0x1A, 0xFB, 0x80, 0x90, 0xCE, 0x34, 0x8E, 0xFB,\n0x47, 0xB3, 0x27, 0x88, 0xCA, 0x39, 0x85, 0x91, 0x73, 0x64, 0xB7, 0x86, 0xA1, 0x9A, 0x91, 0x8D,\n0xC9, 0x07, 0x84, 0x8C, 0x20, 0x72, 0x72, 0xD1, 0x01, 0x04, 0x42, 0x72, 0x40, 0xDA, 0x77, 0x60,\n0x21, 0x22, 0x64, 0x37, 0x5C, 0x1E, 0xE4, 0x83, 0xA0, 0x11, 0x0F, 0xD9, 0xF4, 0xC4, 0xE7, 0x23,\n0x05, 0x91, 0x16, 0x8A, 0xF8, 0x9C, 0xFA, 0x9E, 0x87, 0xA0, 0xA5, 0xF6, 0x52, 0xAE, 0xC1, 0x00,\n0x04, 0x3E, 0x10, 0x81, 0xC8, 0x7E, 0x06, 0x8B, 0xF5, 0x95, 0x47, 0xC8, 0x8B, 0x7B, 0x8E, 0x5F,\n0x08, 0x29, 0xA4, 0x77, 0x73, 0xC9, 0x56, 0x8A, 0xFE, 0x81, 0xE4, 0x21, 0xE6, 0xFA, 0x0A, 0x13,\n0x89, 0x0E, 0xD2, 0xF9, 0xA2, 0xE9, 0xEB, 0xEE, 0x2B, 0xBB, 0xDC, 0x84, 0x36, 0xF0, 0x3B, 0xB7,\n0xE4, 0xB2, 0xDA, 0xDB, 0x34, 0xB1, 0x16, 0x4E, 0x91, 0x65, 0x6A, 0x69, 0xFB, 0x9D, 0x2A, 0x42,\n0x0C, 0x3E, 0x10, 0x05, 0x91, 0x22, 0x1F, 0x78, 0x08, 0x80, 0xE0, 0x1F, 0x3D, 0x88, 0xCC, 0x76,\n0x3B, 0x97, 0x0F, 0x08, 0xF9, 0xF7, 0xE5, 0x0F, 0x8C, 0x43, 0x8D, 0xED, 0x48, 0x08, 0x1E, 0xC2,\n0x9C, 0x2F, 0x7B, 0x35, 0x6C, 0x20, 0xBD, 0x07, 0x41, 0x9E, 0xC9, 0x21, 0xD5, 0xF3, 0xA8, 0x43,\n0x6C, 0x5F, 0x15, 0xBF, 0x4F, 0xF8, 0x59, 0x20, 0xC4, 0xE3, 0x03, 0x42, 0x2C, 0x3E, 0xF0, 0x10,\n0xC7, 0x3F, 0xD0, 0xC0, 0x6F, 0xDC, 0xEA, 0x35, 0x42, 0x37, 0x44, 0x1E, 0x99, 0xE0, 0x23, 0xF3,\n0x10, 0x4A, 0xB9, 0x78, 0xBE, 0x9E, 0xBA, 0xA1, 0xA5, 0x1E, 0xE9, 0x07, 0x75, 0xF2, 0xF8, 0x80,\n0x90, 0xA3, 0xEB, 0x91, 0xF4, 0xEE, 0x30, 0x21, 0x00, 0x02, 0x1F, 0x59, 0x20, 0x52, 0x48, 0xEF,\n0xE6, 0x32, 0xF8, 0x30, 0xD4, 0x31, 0x8E, 0x34, 0x84, 0x11, 0x0F, 0xE1, 0xB2, 0x50, 0x69, 0x39,\n0xA0, 0xFE, 0x18, 0x04, 0x3C, 0x10, 0x71, 0xC8, 0x7A, 0xBF, 0x30, 0x30, 0xA4, 0x41, 0x3E, 0x30,\n0x90, 0xCC, 0x43, 0x0C, 0x3E, 0x90, 0xFE, 0xD4, 0xE0, 0x03, 0x42, 0x3C, 0x3E, 0x50, 0xFA, 0x7E,\n0x24, 0xAE, 0x86, 0xF9, 0xD0, 0x5B, 0x98, 0xC4, 0x31, 0xFF, 0x40, 0x2C, 0xAF, 0x3A, 0x31, 0x23,\n0xA1, 0x25, 0x3B, 0x59, 0x9B, 0x78, 0x88, 0x29, 0x17, 0x0F, 0xD2, 0xBD, 0x65, 0x3E, 0xE8, 0xA7,\n0x00, 0x02, 0x1F, 0x03, 0x7D, 0xE7, 0xF0, 0x81, 0x0A, 0xE9, 0x2B, 0xCF, 0x3F, 0x98, 0x37, 0xA6,\n0x71, 0xCF, 0x43, 0xA8, 0x3A, 0x2D, 0x07, 0xF5, 0xE3, 0xBE, 0x89, 0x68, 0x8B, 0x83, 0x20, 0x17,\n0x87, 0x09, 0x5B, 0xEB, 0xC7, 0x3A, 0x42, 0x58, 0x5F, 0x19, 0xAB, 0x2C, 0xCA, 0x1F, 0xA8, 0x90,\n0xCC, 0x02, 0x0F, 0x8B, 0x90, 0xC7, 0x61, 0x91, 0xA4, 0xE3, 0x8A, 0xFE, 0xE1, 0xA9, 0x59, 0x8C,\n0x94, 0x3F, 0x10, 0x1E, 0x92, 0x25, 0x19, 0x35, 0xA8, 0xB5, 0x4B, 0xE7, 0xC0, 0x08, 0xF6, 0x11,\n0x5E, 0xD4, 0xC9, 0xE5, 0x03, 0x42, 0x7C, 0x3E, 0x2E, 0x44, 0x08, 0x80, 0x90, 0xDE, 0xED, 0x5F,\n0x65, 0x11, 0x88, 0x64, 0xE5, 0x0F, 0x9B, 0x90, 0x4D, 0x7D, 0xF9, 0x3C, 0x35, 0xD6, 0x58, 0x3D,\n0x1E, 0x92, 0xB6, 0x56, 0x59, 0x78, 0x3E, 0x10, 0x88, 0x14, 0xFC, 0x03, 0x44, 0x28, 0x9D, 0x47,\n0x3B, 0x19, 0x53, 0x8F, 0x7F, 0x60, 0x1F, 0xB9, 0x44, 0xCE, 0x57, 0x1E, 0x1F, 0x10, 0xD2, 0x5F,\n0xFE, 0xC8, 0x45, 0xBA, 0xD7, 0xE7, 0x03, 0x42, 0xB8, 0xA2, 0x1F, 0xFF, 0xE8, 0x25, 0xC4, 0xF2,\n0x0F, 0xD4, 0x82, 0x91, 0x97, 0xCF, 0x49, 0x4E, 0xB2, 0x4A, 0xF8, 0xB7, 0x71, 0x08, 0x7C, 0xF8,\n0x84, 0x9C, 0x70, 0xA0, 0xF7, 0x7A, 0x08, 0x80, 0xCC, 0x86, 0x01, 0x09, 0x84, 0x6C, 0x77, 0x2E,\n0x1F, 0xA4, 0x7B, 0x0F, 0xE7, 0x03, 0x22, 0x62, 0xC7, 0x44, 0x36, 0xCD, 0xC8, 0x8C, 0xA7, 0x07,\n0x3B, 0xC9, 0x08, 0x44, 0x4A, 0x7C, 0xEC, 0xDD, 0xD6, 0xE4, 0x71, 0x5C, 0x23, 0xE9, 0x5D, 0x04,\n0x21, 0x14, 0xD5, 0x49, 0x5F, 0x8D, 0x13, 0x72, 0x6B, 0xF2, 0x01, 0x21, 0x3E, 0x1F, 0x59, 0x3E,\n0x22, 0x2C, 0xB6, 0x46, 0x09, 0xF1, 0xFC, 0x03, 0x6D, 0xB2, 0xA4, 0x63, 0xDA, 0x9D, 0x78, 0x47,\n0xBB, 0x79, 0x50, 0xBE, 0xD7, 0xE6, 0x83, 0x92, 0x21, 0xA2, 0xFC, 0x31, 0xD0, 0x67, 0x00, 0x02,\n0x1F, 0x03, 0x1E, 0x72, 0x2D, 0x40, 0x28, 0x0F, 0x16, 0xF8, 0xA0, 0x64, 0x48, 0xFA, 0xAA, 0x46,\n0x9C, 0x53, 0xD8, 0xE4, 0x27, 0x5D, 0x0F, 0xD1, 0xB8, 0x2C, 0xAA, 0x7B, 0xE9, 0xFB, 0x02, 0x8D,\n0xC4, 0x21, 0x5C, 0xB7, 0xF8, 0xA2, 0x40, 0xC8, 0x0B, 0x23, 0xFC, 0x40, 0x59, 0x51, 0xFD, 0x36,\n0x61, 0x30, 0x42, 0x88, 0xC9, 0x07, 0x84, 0xE4, 0xE9, 0x2B, 0x03, 0x91, 0x05, 0xE9, 0xBA, 0x82,\n0xB2, 0xF2, 0x79, 0x51, 0x9D, 0xEA, 0x47, 0xF2, 0x8F, 0x76, 0x88, 0x90, 0x50, 0x12, 0xD9, 0x54,\n0x17, 0xD5, 0x5D, 0x3E, 0x48, 0xF7, 0xE6, 0xE5, 0x8F, 0x02, 0x21, 0x11, 0x10, 0xF0, 0xE8, 0xEF,\n0x94, 0x0C, 0x29, 0x7F, 0x8C, 0xEB, 0x00, 0xFF, 0x20, 0xFE, 0xC0, 0x83, 0x37, 0xE9, 0x91, 0xAD,\n0xB2, 0xE4, 0x21, 0x68, 0x69, 0x88, 0x04, 0xCC, 0x8F, 0xE2, 0xA3, 0xA8, 0x37, 0xAF, 0x4B, 0x32,\n0xB4, 0x7E, 0x83, 0x0F, 0xD6, 0x57, 0x63, 0xAB, 0xAC, 0x1E, 0xFF, 0x78, 0xE9, 0xAD, 0xB2, 0x46,\n0xF0, 0xA0, 0x64, 0x68, 0xD8, 0xC7, 0x40, 0x51, 0xDD, 0x98, 0x1B, 0x82, 0xB9, 0xD1, 0xE5, 0x15,\n0xC9, 0x2C, 0x16, 0xC3, 0xF0, 0xD1, 0x4D, 0x50, 0xB6, 0x74, 0xA8, 0x55, 0x23, 0xE2, 0xF2, 0x01,\n0x21, 0xA4, 0x77, 0x0B, 0x80, 0x48, 0x01, 0x90, 0x8B, 0x32, 0x1F, 0xA1, 0x64, 0x68, 0xF0, 0x81,\n0x2A, 0xC3, 0xF3, 0x0D, 0x5B, 0x7B, 0xC5, 0x0F, 0xB6, 0x98, 0xCF, 0x4D, 0x4C, 0xAD, 0x4B, 0xDA,\n0x05, 0x86, 0xF0, 0x8F, 0x9B, 0x85, 0xA1, 0x37, 0x7E, 0x3D, 0xEA, 0xD1, 0x11, 0xE1, 0xF9, 0x67,\n0x19, 0x1F, 0x63, 0xA1, 0xBA, 0x1A, 0x74, 0x8C, 0xE9, 0x96, 0xCB, 0x4B, 0xC4, 0x87, 0x41, 0x88,\n0xE1, 0x1F, 0x18, 0x60, 0x72, 0x8E, 0xB5, 0xDA, 0xB8, 0x48, 0xF7, 0xDA, 0xFE, 0x81, 0x87, 0x28,\n0xFE, 0x20, 0x8C, 0x7C, 0x78, 0x1E, 0xB7, 0x37, 0xCF, 0x37, 0xCF, 0x81, 0x23, 0x0C, 0x07, 0x05,\n0x22, 0xF0, 0xE1, 0x13, 0x32, 0x83, 0x8F, 0x31, 0x0F, 0x11, 0x20, 0x06, 0x1F, 0xEA, 0x2A, 0x19,\n0x6E, 0x03, 0x1F, 0xCE, 0x07, 0xA1, 0x20, 0x52, 0x1F, 0x9E, 0xC7, 0x29, 0xC4, 0x3A, 0xF0, 0x12,\n0x68, 0xD1, 0xA6, 0x26, 0x1D, 0x3E, 0x1C, 0x42, 0x28, 0x0F, 0x3A, 0x4A, 0x09, 0x50, 0xF8, 0x70,\n0x08, 0x79, 0xC1, 0xFA, 0xAA, 0x40, 0xC8, 0x4B, 0xF8, 0x70, 0x10, 0x09, 0x6F, 0xC6, 0x3F, 0x4A,\n0x88, 0xA8, 0xA8, 0x8E, 0x7F, 0xF8, 0x1E, 0x62, 0xCE, 0xCC, 0xC2, 0xF4, 0x0F, 0x3C, 0x24, 0x95,\n0x3F, 0x58, 0x08, 0x6C, 0xB2, 0x95, 0xD6, 0x73, 0x3D, 0xE8, 0x95, 0x1E, 0x02, 0x1F, 0x1E, 0x21,\n0x47, 0xD7, 0xF8, 0x47, 0xB9, 0xEB, 0x7F, 0xB9, 0x35, 0x01, 0x39, 0x3D, 0x51, 0x8C, 0x73, 0x72,\n0x64, 0xF9, 0x07, 0x81, 0xC8, 0x71, 0x1D, 0x20, 0x5C, 0x79, 0x05, 0x1D, 0x9B, 0x36, 0x90, 0xD3,\n0x69, 0x87, 0x2B, 0x13, 0xE2, 0xA5, 0x8B, 0x4B, 0x5B, 0x67, 0x01, 0x11, 0xF0, 0x70, 0x56, 0x59,\n0x8F, 0xBE, 0x62, 0xFC, 0x51, 0xC0, 0x23, 0xBF, 0xEC, 0x04, 0x3A, 0x4A, 0x32, 0xD7, 0x57, 0x14,\n0xD5, 0x6D, 0x3E, 0x88, 0x43, 0xFC, 0xA9, 0xC1, 0x3F, 0x3C, 0xC1, 0x47, 0xB3, 0x17, 0x1B, 0x03,\n0x69, 0x5C, 0x23, 0x5B, 0x46, 0xB7, 0x5B, 0xF5, 0x05, 0x11, 0x97, 0x0F, 0x8A, 0xEA, 0xD1, 0x3F,\n0x2C, 0x40, 0xFE, 0x10, 0x20, 0x7A, 0xF2, 0xFA, 0x91, 0xD2, 0x57, 0x15, 0x12, 0x20, 0xAC, 0x9D,\n0xAC, 0x45, 0x16, 0xD6, 0x11, 0x3A, 0xDB, 0xFC, 0x80, 0xF4, 0x07, 0xE9, 0x5D, 0xCF, 0x43, 0x24,\n0xB9, 0xC2, 0xC2, 0xED, 0x5C, 0x5D, 0xE2, 0x12, 0xE2, 0xD8, 0x07, 0x37, 0x7A, 0x57, 0xF8, 0xF1,\n0xF3, 0x5F, 0x86, 0x08, 0x44, 0xC4, 0x87, 0xAB, 0x7B, 0xF8, 0xB0, 0xB4, 0x16, 0x1F, 0xEE, 0xD4,\n0xE8, 0x61, 0xFB, 0x07, 0xE9, 0x5E, 0xD6, 0x57, 0x4F, 0x18, 0x00, 0x0C, 0x3D, 0xFE, 0xEC, 0xB8,\n0x4E, 0xCD, 0x91, 0x36, 0x9D, 0x7B, 0x6A, 0x92, 0x59, 0xA4, 0xAF, 0x2C, 0x07, 0xB9, 0xF0, 0x34,\n0xD3, 0xBD, 0x80, 0xB6, 0x73, 0xFD, 0xF3, 0x53, 0xAF, 0xCD, 0x27, 0x93, 0xAA, 0xF5, 0xD5, 0x3C,\n0x3A, 0x05, 0x81, 0x06, 0xF3, 0x99, 0x30, 0xA1, 0x87, 0xC7, 0xF3, 0xD5, 0xB2, 0x4E, 0x61, 0xEF,\n0xFA, 0x7A, 0xAC, 0x53, 0xC3, 0x87, 0x7D, 0x86, 0xFF, 0xF2, 0xFE, 0x33, 0x6C, 0xC3, 0x23, 0xA4,\n0xB9, 0x66, 0xDE, 0x6B, 0x9F, 0xA9, 0xDD, 0xC3, 0x87, 0x23, 0xFC, 0xC3, 0x34, 0x91, 0x65, 0x9D,\n0x2E, 0x1F, 0x48, 0xE7, 0xB2, 0x34, 0x60, 0x5F, 0xA7, 0x4E, 0x69, 0xA4, 0x86, 0x91, 0xCD, 0x46,\n0x07, 0xA5, 0x2F, 0x1D, 0x99, 0xB3, 0x53, 0x17, 0x90, 0x8B, 0x3F, 0x14, 0xA4, 0xDB, 0x9A, 0xED,\n0x1A, 0x9D, 0xB8, 0xDA, 0x4D, 0xAB, 0x4E, 0x03, 0xC7, 0x93, 0xE7, 0x0F, 0xD2, 0x73, 0xAF, 0x49,\n0x77, 0x67, 0x67, 0x67, 0x2B, 0x75, 0xAB, 0xE9, 0xCD, 0x8B, 0xDF, 0x3F, 0xAD, 0x91, 0xF2, 0xB7,\n0x8F, 0x2F, 0xDC, 0xA6, 0x60, 0xF7, 0xBE, 0x4E, 0xCD, 0x6D, 0xE2, 0x6C, 0xE9, 0xBD, 0x9F, 0xDD,\n0x57, 0x48, 0x8B, 0x2C, 0x7D, 0x28, 0xBB, 0x89, 0xA6, 0x9A, 0xB9, 0xD1, 0x7B, 0xCF, 0x34, 0xA1,\n0xA6, 0x56, 0x7A, 0xEF, 0x9D, 0x76, 0xD8, 0x83, 0xDB, 0xF4, 0xDE, 0x49, 0xA5, 0x85, 0xEC, 0x74,\n0xB4, 0x55, 0x68, 0x76, 0xE1, 0xEA, 0x5B, 0x05, 0xE9, 0xDF, 0x9E, 0x5A, 0x4D, 0x89, 0x2C, 0xD8,\n0xB0, 0xF8, 0xD0, 0x31, 0x7F, 0xFC, 0xDC, 0x6F, 0xCF, 0xBF, 0xFB, 0x4E, 0x93, 0x63, 0x4A, 0xEF,\n0xBC, 0xBB, 0xBB, 0x5B, 0x9D, 0x99, 0xD2, 0xEE, 0x0C, 0x7B, 0xB6, 0x42, 0x1F, 0x7F, 0x2C, 0x42,\n0x74, 0x98, 0x39, 0x5D, 0xED, 0x97, 0x57, 0xBF, 0xDC, 0x57, 0xE8, 0xB3, 0x5B, 0xB5, 0x97, 0xFD,\n0x2C, 0xE4, 0x2D, 0xE0, 0x71, 0x5B, 0x41, 0x88, 0xDE, 0xF9, 0xEA, 0x97, 0x57, 0xC2, 0xDB, 0xD2,\n0x63, 0xF3, 0xF8, 0xF8, 0xE3, 0x8F, 0xFD, 0xA9, 0x09, 0x30, 0x41, 0x88, 0x31, 0xFB, 0x22, 0xA4,\n0x42, 0x3A, 0x12, 0x26, 0x55, 0x87, 0xCE, 0x7C, 0x3A, 0xF1, 0x09, 0x69, 0x0E, 0x4D, 0x85, 0xE8,\n0xE6, 0x41, 0x2F, 0x40, 0xCC, 0xB7, 0x7E, 0x7B, 0xB2, 0xBB, 0xD6, 0xBF, 0x6D, 0x7F, 0x8A, 0x89,\n0xF8, 0x98, 0x4E, 0xF5, 0xE1, 0xAD, 0x76, 0x3C, 0xD5, 0xAC, 0x88, 0x90, 0x06, 0x91, 0xBB, 0xE2,\n0x23, 0xF1, 0x21, 0xE9, 0x04, 0x65, 0xF3, 0x21, 0x69, 0xDF, 0x1A, 0x4D, 0x6F, 0xFC, 0xB8, 0x51,\n0x3C, 0xC2, 0xCA, 0xA3, 0x48, 0x7A, 0xF5, 0xEA, 0xD5, 0x8B, 0x57, 0x3F, 0x55, 0xF0, 0x01, 0x0B,\n0x79, 0xEB, 0x43, 0x46, 0x80, 0x40, 0x88, 0xA1, 0x5F, 0x5E, 0x34, 0x1F, 0xE8, 0xD1, 0xC2, 0x5B,\n0x46, 0xD9, 0xF0, 0xF1, 0xF8, 0xB1, 0x37, 0x37, 0x11, 0x0F, 0xC9, 0xB4, 0xEE, 0xE0, 0x1F, 0x81,\n0x90, 0xE7, 0xC6, 0xAE, 0x4D, 0x7C, 0x3C, 0xFF, 0xEE, 0xB9, 0x7B, 0xE4, 0x4C, 0x75, 0x94, 0x35,\n0xCB, 0x0F, 0xFF, 0xD0, 0x84, 0x10, 0xA3, 0x79, 0x0E, 0x72, 0x21, 0x9D, 0xA4, 0xC5, 0x95, 0xCB,\n0x47, 0xC0, 0x43, 0xBD, 0xF9, 0xA2, 0xC6, 0xF0, 0x0F, 0x6D, 0x67, 0xD3, 0x1A, 0x4B, 0x11, 0x85,\n0x61, 0x66, 0xE3, 0x07, 0x31, 0x18, 0x24, 0x0B, 0x21, 0x3B, 0x41, 0x91, 0x7B, 0x91, 0x28, 0x83,\n0xB8, 0x18, 0x61, 0x34, 0x28, 0xDE, 0x30, 0xE0, 0xC6, 0x80, 0x3F, 0x40, 0xB8, 0x44, 0x84, 0xD9,\n0x65, 0x13, 0x10, 0x11, 0xE2, 0xF6, 0xE2, 0x6F, 0xF0, 0x97, 0xFA, 0x76, 0xD5, 0xE9, 0x3C, 0x76,\n0x4D, 0x7D, 0xBC, 0xBD, 0xF0, 0xAD, 0xEA, 0x9A, 0x9E, 0xB9, 0x73, 0x75, 0xA6, 0xBB, 0x9E, 0x7E,\n0xEB, 0x9C, 0xD3, 0xC9, 0xDD, 0x4C, 0x07, 0x25, 0x08, 0xF9, 0xBC, 0xDD, 0xE7, 0x6D, 0x37, 0xCB,\n0x73, 0xF9, 0xC4, 0xC7, 0x07, 0x36, 0x22, 0x5F, 0x68, 0xBA, 0x64, 0x44, 0xE4, 0x21, 0x31, 0x8F,\n0x34, 0xB4, 0xF7, 0xFF, 0x4C, 0x80, 0x1C, 0x57, 0xF2, 0xB1, 0x85, 0x86, 0x8E, 0x85, 0x04, 0x1F,\n0x3E, 0x21, 0xDB, 0x3F, 0x27, 0x3E, 0xD4, 0x2D, 0xBA, 0x65, 0x93, 0x2F, 0x24, 0x08, 0xF1, 0xF8,\n0xF0, 0x3D, 0xE4, 0xD7, 0x9D, 0x14, 0x84, 0x70, 0x26, 0x9B, 0xA7, 0xF7, 0xF3, 0x7D, 0xCC, 0x84,\n0x33, 0x6F, 0xEA, 0xE4, 0x79, 0x66, 0x13, 0x32, 0x2F, 0x6F, 0x5E, 0xDE, 0x5E, 0x59, 0xBE, 0x30,\n0x55, 0xD2, 0x0D, 0x96, 0xAE, 0x6E, 0x5F, 0x3E, 0xAF, 0xAF, 0x6C, 0x3E, 0x82, 0x10, 0xEB, 0x7B,\n0x4E, 0xEE, 0x91, 0x5A, 0xCF, 0x43, 0x62, 0x27, 0xFC, 0x23, 0xE4, 0xE0, 0x11, 0xFE, 0x61, 0x9B,\n0x48, 0xF0, 0x21, 0x69, 0xFE, 0x80, 0x43, 0x1A, 0xD8, 0xCD, 0xFB, 0xC1, 0x47, 0x9A, 0x92, 0x37,\n0xAF, 0x7D, 0x3E, 0xDA, 0x1E, 0x52, 0xF2, 0xB2, 0x0D, 0x3E, 0x5C, 0x42, 0xF4, 0x41, 0x32, 0x20,\n0x22, 0x04, 0x88, 0xD5, 0xAB, 0xFB, 0xDF, 0xEB, 0xBB, 0x42, 0x88, 0xC9, 0xC7, 0x07, 0x99, 0x90,\n0x9F, 0x0D, 0xFB, 0xDE, 0xA1, 0xB0, 0x90, 0xEE, 0xE9, 0xDD, 0x8B, 0x8D, 0x40, 0xE4, 0xAC, 0x3F,\n0x6B, 0x52, 0x3B, 0x8B, 0x49, 0xE6, 0x12, 0x42, 0x00, 0x70, 0x7E, 0xEB, 0x98, 0x48, 0xBE, 0xD5,\n0x64, 0xC0, 0xD2, 0x14, 0x9E, 0x07, 0x1F, 0x1E, 0x21, 0xE7, 0x6F, 0xB2, 0x7F, 0x44, 0x8F, 0x6F,\n0x73, 0xD6, 0x1A, 0xF4, 0xE7, 0xC1, 0x87, 0x1E, 0x37, 0x04, 0x22, 0xBB, 0x30, 0x0C, 0x8E, 0xE9,\n0xE7, 0x79, 0xD8, 0xEF, 0x42, 0x1F, 0x39, 0x84, 0xEC, 0xE0, 0xC3, 0x24, 0x44, 0x73, 0x45, 0x0D,\n0x0F, 0x59, 0x30, 0xB1, 0x34, 0x10, 0xFC, 0x23, 0xBA, 0x15, 0x9E, 0xCF, 0xDA, 0x26, 0x44, 0x0A,\n0x75, 0x81, 0x71, 0xF8, 0xC8, 0xFE, 0x01, 0x21, 0x31, 0x34, 0x18, 0xD7, 0x17, 0x85, 0x10, 0x8B,\n0x0F, 0x64, 0x2C, 0x70, 0xB5, 0xBC, 0x42, 0x77, 0x20, 0xC2, 0xE9, 0x05, 0x91, 0xC9, 0x45, 0x74,\n0xFE, 0xA3, 0x1D, 0x0E, 0x60, 0x50, 0x1B, 0x32, 0x3F, 0x6F, 0x7B, 0x84, 0xC0, 0x07, 0x84, 0xBC,\n0x3F, 0x24, 0xE4, 0x6A, 0xBE, 0x59, 0xF1, 0xEA, 0xFD, 0xDE, 0xFB, 0xC4, 0x47, 0x91, 0xBB, 0x1A,\n0xF1, 0xA1, 0x4F, 0xCB, 0x27, 0x4F, 0x71, 0x88, 0xB6, 0xB3, 0xC6, 0xA0, 0x6F, 0x8B, 0x7F, 0xA8,\n0x6D, 0xF6, 0x3A, 0x4E, 0xE9, 0x70, 0x25, 0x20, 0xD4, 0x71, 0x60, 0x0D, 0x3A, 0xC8, 0xE0, 0x91,\n0x34, 0xB2, 0x8F, 0xCB, 0x57, 0x71, 0x3E, 0x3F, 0x80, 0x90, 0x91, 0x7F, 0xA0, 0x80, 0xA0, 0x32,\n0x84, 0x81, 0xFC, 0x17, 0x8F, 0x1B, 0x11, 0xB2, 0xF5, 0xF8, 0x80, 0x90, 0xB2, 0x6D, 0x69, 0xD3,\n0xB3, 0xE9, 0x5D, 0xC8, 0xF7, 0x0F, 0x75, 0x3C, 0x84, 0x87, 0xC5, 0x80, 0x7F, 0x40, 0xC8, 0x88,\n0x8F, 0x0F, 0xA6, 0x9E, 0x64, 0x24, 0xB3, 0xE2, 0x44, 0x41, 0xC8, 0x4C, 0x02, 0xA7, 0x97, 0x05,\n0x56, 0x0E, 0xCF, 0xD3, 0x5C, 0xC0, 0x43, 0x6A, 0x13, 0x26, 0x8F, 0x7A, 0xD4, 0xF4, 0x82, 0x10,\n0x55, 0xC9, 0xCF, 0x87, 0x7C, 0xA0, 0x9C, 0xCC, 0xEA, 0x4E, 0x7C, 0x6E, 0x77, 0xBF, 0xEA, 0xFB,\n0xC7, 0x49, 0xFE, 0x6A, 0xC4, 0x47, 0x18, 0x08, 0x1E, 0x32, 0x7F, 0x25, 0x8D, 0xE5, 0x1E, 0xA6,\n0x3A, 0x9B, 0x48, 0xE1, 0x21, 0x18, 0xF0, 0x2E, 0xBF, 0xBA, 0x90, 0x9E, 0x7A, 0xFE, 0xC1, 0xB9,\n0x7D, 0x1C, 0xFA, 0xC7, 0x8B, 0x1B, 0x28, 0xD1, 0x2A, 0xA4, 0xC9, 0x88, 0x7A, 0xF0, 0x01, 0x22,\n0x10, 0xD2, 0x59, 0x5E, 0xA1, 0x04, 0x41, 0xB3, 0xCD, 0x14, 0xA1, 0x21, 0x1F, 0x09, 0x10, 0x3A,\n0x5C, 0x54, 0x6D, 0xF0, 0xC5, 0x52, 0xF7, 0x8F, 0x3D, 0x3C, 0x1E, 0x61, 0xC3, 0xF3, 0x90, 0xDD,\n0x2C, 0x08, 0xD1, 0xC9, 0xE5, 0xAC, 0xE2, 0x21, 0xE9, 0xA1, 0x98, 0x09, 0x39, 0x10, 0x29, 0x26,\n0x4C, 0xB4, 0xD8, 0x5F, 0xCC, 0x32, 0x08, 0x19, 0xF1, 0x01, 0x21, 0x5D, 0xFF, 0x08, 0x40, 0x92,\n0x6E, 0xDF, 0x6F, 0xBC, 0x37, 0xC2, 0xF3, 0x42, 0x7D, 0x3E, 0x66, 0xB2, 0xE9, 0x7C, 0xA5, 0xE5,\n0x1E, 0xEB, 0x2B, 0x9A, 0x9E, 0x4E, 0x57, 0x19, 0x96, 0xA6, 0x0C, 0xD3, 0xF1, 0xE5, 0xA2, 0x94,\n0x1E, 0xFB, 0x84, 0xEC, 0x4A, 0xFF, 0xD0, 0xE3, 0x44, 0x48, 0x17, 0x8F, 0x42, 0xF7, 0x2D, 0x3C,\n0xE0, 0x83, 0xAE, 0x7C, 0xAF, 0xAA, 0x10, 0x4D, 0xE1, 0x07, 0xA8, 0x16, 0xAA, 0xF3, 0x07, 0xA7,\n0x44, 0xF5, 0xD7, 0x57, 0xF9, 0x73, 0xD0, 0x5B, 0x70, 0xE3, 0x1F, 0xB6, 0x87, 0x3C, 0x72, 0x20,\n0xD1, 0xCF, 0xBD, 0xA3, 0xCF, 0x99, 0xD2, 0x0E, 0x84, 0xEC, 0xD4, 0x97, 0xD1, 0x87, 0xCE, 0x36,\n0xFE, 0x41, 0x3B, 0x08, 0x0F, 0x26, 0x4C, 0xB4, 0x70, 0x91, 0xB3, 0x72, 0x96, 0xF5, 0x09, 0xA9,\n0x4E, 0xE2, 0xF3, 0x8E, 0x87, 0x24, 0x3E, 0x22, 0x06, 0x69, 0x7B, 0x08, 0xE9, 0x2B, 0x8F, 0x10,\n0xFD, 0x41, 0x7C, 0xF0, 0xA2, 0x4F, 0x6E, 0x99, 0x17, 0x8E, 0x7C, 0xCD, 0xD4, 0x39, 0x24, 0x1C,\n0x96, 0x43, 0x5C, 0x66, 0xE2, 0xC8, 0xB1, 0xE2, 0xFA, 0x5C, 0x7C, 0xC4, 0xA1, 0xD6, 0x88, 0x87,\n0xFC, 0xDA, 0xE4, 0x03, 0xF3, 0xB0, 0x56, 0x59, 0x2F, 0xEE, 0x63, 0xCE, 0x10, 0x85, 0x48, 0x51,\n0x10, 0x39, 0x1D, 0x98, 0x86, 0xF4, 0xE3, 0xCD, 0xEB, 0xAF, 0x4D, 0xFF, 0x60, 0x99, 0x55, 0x6B,\n0xF0, 0x61, 0x12, 0xF2, 0xF5, 0xEB, 0x58, 0x5F, 0x15, 0xFD, 0xBE, 0xCA, 0x36, 0xFE, 0xB1, 0x44,\n0xC4, 0x88, 0xCF, 0x51, 0x6F, 0x95, 0xF5, 0x2B, 0xE7, 0xE8, 0xC4, 0x43, 0x58, 0x63, 0x69, 0x0C,\n0x46, 0xB4, 0xBA, 0x3E, 0x9D, 0x0A, 0x4C, 0x99, 0xFC, 0xA8, 0x2D, 0x26, 0xD2, 0x67, 0x1B, 0xA6,\n0x17, 0x81, 0x88, 0x66, 0xA0, 0xC1, 0x07, 0x84, 0x34, 0x01, 0x49, 0x0B, 0x2B, 0x1C, 0x44, 0xBA,\n0xAD, 0xBD, 0x15, 0x3E, 0x4E, 0xE4, 0xF0, 0x41, 0x7F, 0x36, 0xC8, 0x33, 0x89, 0x2C, 0xC4, 0xDB,\n0xF8, 0x47, 0xE1, 0x21, 0x5C, 0x5D, 0x08, 0xD4, 0xB3, 0x7F, 0x84, 0x60, 0x44, 0x88, 0xF4, 0xF9,\n0x60, 0x81, 0x85, 0x87, 0x34, 0xFD, 0xA3, 0xEA, 0x21, 0x35, 0x44, 0x54, 0x81, 0xC6, 0x3F, 0x16,\n0xAB, 0xAC, 0xD7, 0x2B, 0xF8, 0xE8, 0x55, 0x0C, 0xC9, 0x5F, 0x39, 0x84, 0x6C, 0x7F, 0xBA, 0xC1,\n0x3F, 0xE8, 0xAC, 0xB2, 0x16, 0x83, 0xEE, 0x85, 0xE7, 0x7B, 0x16, 0x84, 0x34, 0xD6, 0x57, 0x1C,\n0x3F, 0xD4, 0x4E, 0xF7, 0xFE, 0x5A, 0x9E, 0x2A, 0x08, 0x89, 0x30, 0x84, 0xB3, 0x1B, 0xFE, 0xB1,\n0xAF, 0xB5, 0x39, 0x24, 0xD7, 0xC3, 0x82, 0x94, 0xB7, 0x6B, 0xF3, 0x0C, 0x42, 0x2A, 0x78, 0x58,\n0x84, 0xC0, 0x07, 0x0E, 0xF2, 0x4B, 0xF6, 0x90, 0x2B, 0xC7, 0x3F, 0x50, 0x3D, 0xBD, 0x5B, 0xE5,\n0x83, 0x64, 0x16, 0x0E, 0x12, 0x4F, 0x2B, 0x87, 0x84, 0x5C, 0xD6, 0xE7, 0xE4, 0x37, 0x28, 0x9F,\n0x23, 0x8E, 0xFC, 0x5D, 0xC3, 0x43, 0x96, 0x78, 0xB0, 0xD3, 0x20, 0x04, 0x36, 0x88, 0x42, 0x92,\n0xEE, 0x09, 0x44, 0x9A, 0xEB, 0x2B, 0xBA, 0xDA, 0x76, 0xCC, 0x07, 0xDA, 0x6E, 0x8D, 0x8A, 0xA1,\n0x41, 0x08, 0xE9, 0xAB, 0x92, 0x91, 0xFB, 0x0A, 0x22, 0xF8, 0x87, 0xB1, 0xCC, 0x2A, 0xF0, 0x18,\n0x13, 0x42, 0xFE, 0xEA, 0xA3, 0xD4, 0x63, 0x0F, 0x0F, 0x21, 0x9B, 0x95, 0x21, 0xE1, 0xEC, 0x57,\n0x3C, 0x84, 0xB4, 0xD5, 0xFC, 0x64, 0x11, 0xE5, 0x2E, 0x42, 0x75, 0x25, 0xB3, 0x4C, 0x3E, 0x3A,\n0x25, 0xC3, 0x89, 0x87, 0xC4, 0x85, 0x00, 0x49, 0x74, 0xA4, 0xE1, 0xB6, 0x48, 0x66, 0x25, 0x3E,\n0x5E, 0x9E, 0xB7, 0x54, 0xE7, 0xE3, 0xB3, 0x36, 0x20, 0x33, 0x1B, 0x7C, 0xCD, 0x83, 0xD4, 0x3A,\n0x2E, 0xFB, 0x7C, 0x0C, 0x63, 0x94, 0x0F, 0xEF, 0xF7, 0x50, 0x51, 0x71, 0xEF, 0xD3, 0x2B, 0x18,\n0x7C, 0x60, 0x21, 0xF9, 0x51, 0x0F, 0x25, 0x20, 0xA4, 0xAF, 0xEE, 0x05, 0x07, 0x2A, 0x56, 0x59,\n0xE0, 0x41, 0xF9, 0xE3, 0xB4, 0x1F, 0xF5, 0xA3, 0x53, 0x0E, 0x1F, 0xB8, 0x48, 0x25, 0x3C, 0xC7,\n0x3F, 0x1C, 0x42, 0xB6, 0x09, 0xCC, 0x7A, 0x6F, 0x85, 0x1F, 0x26, 0x21, 0x84, 0x1F, 0x0D, 0x46,\n0x2A, 0x91, 0xFA, 0xA9, 0x73, 0x20, 0x4A, 0x86, 0x04, 0xE9, 0x44, 0x1F, 0x35, 0x42, 0x58, 0x72,\n0x50, 0xFE, 0xA8, 0x74, 0xD2, 0xBD, 0x06, 0x1F, 0xBD, 0x82, 0x88, 0x4C, 0x03, 0x07, 0x09, 0x3A,\n0x34, 0x46, 0xBA, 0x17, 0xFB, 0xB8, 0xC5, 0x3F, 0xC6, 0x88, 0x9C, 0xFF, 0x10, 0xB7, 0x97, 0x34,\n0xFB, 0x7C, 0x0D, 0x98, 0xBF, 0xE4, 0xD9, 0xC7, 0xF0, 0x51, 0x71, 0x11, 0x32, 0x82, 0x7A, 0x3C,\n0xF5, 0x0F, 0x68, 0x89, 0xAD, 0xBD, 0xBE, 0x2A, 0xA3, 0x90, 0x7A, 0x32, 0x0B, 0xCB, 0x20, 0x0A,\n0x41, 0xF7, 0xC5, 0x2A, 0x0B, 0x3E, 0xEA, 0xDD, 0xE4, 0x83, 0x40, 0xA4, 0x04, 0xA4, 0xAF, 0x7A,\n0xF9, 0xA3, 0xD5, 0x15, 0x87, 0x54, 0xC2, 0x0F, 0x97, 0x10, 0xC2, 0x73, 0xC6, 0x41, 0x32, 0xAB,\n0x4A, 0x07, 0x2F, 0x50, 0x0E, 0x8E, 0x48, 0x93, 0xF0, 0xE3, 0xB4, 0x45, 0x41, 0x24, 0x82, 0x11,\n0xCA, 0x1F, 0x3D, 0x42, 0x1C, 0x3E, 0x1A, 0x45, 0x75, 0xDD, 0xC2, 0x1B, 0x34, 0xCC, 0x31, 0xC8,\n0x2F, 0xE1, 0x27, 0x12, 0x84, 0x50, 0xFE, 0x30, 0x09, 0x39, 0x4F, 0xE5, 0xC1, 0x1E, 0x1F, 0x24,\n0xB3, 0xD4, 0x48, 0x5F, 0x35, 0xDB, 0x66, 0x4F, 0x46, 0xB0, 0xF0, 0x8F, 0xBA, 0x8F, 0xF4, 0xCA,\n0x83, 0x58, 0x48, 0xDE, 0x30, 0x11, 0xF8, 0x00, 0x8C, 0x9A, 0x16, 0xA9, 0xD2, 0x01, 0x1F, 0x29,\n0x99, 0xB5, 0x94, 0x71, 0xC3, 0x2E, 0xC2, 0x3F, 0x5C, 0x0F, 0xC1, 0x3F, 0x2A, 0xBD, 0x08, 0x44,\n0xF0, 0x8F, 0x0E, 0x21, 0x05, 0x20, 0x1C, 0x36, 0xC6, 0xF6, 0x2A, 0x6B, 0x87, 0xCA, 0x53, 0x05,\n0x21, 0x84, 0x99, 0x7B, 0xFC, 0xA3, 0xB3, 0xCA, 0x52, 0x2B, 0xCA, 0x1F, 0x9D, 0x55, 0x96, 0xC7,\n0x07, 0x25, 0x43, 0x4C, 0x24, 0xF1, 0x31, 0x6D, 0x38, 0x48, 0xC0, 0xB1, 0xF0, 0x90, 0x2B, 0xF8,\n0xE8, 0xA8, 0x55, 0xFE, 0x18, 0x2E, 0xB3, 0xA6, 0xC7, 0x3E, 0x1E, 0x3A, 0x66, 0x9B, 0x39, 0x23,\n0x28, 0x55, 0xC3, 0xF3, 0x52, 0xE5, 0xED, 0x25, 0x2D, 0x0B, 0x09, 0x15, 0xF9, 0x2B, 0x22, 0x90,\n0x22, 0x0A, 0xA1, 0xA8, 0x8E, 0x83, 0x30, 0xFD, 0x9A, 0xBD, 0xCD, 0x87, 0x91, 0xCB, 0x42, 0x86,\n0x87, 0x6C, 0xE1, 0xA3, 0x89, 0x48, 0x25, 0xFC, 0xF0, 0x3C, 0x84, 0xF8, 0x83, 0x71, 0xE0, 0x21,\n0x8B, 0x13, 0x54, 0xEE, 0x53, 0x32, 0x0C, 0xED, 0x5A, 0xE1, 0xF9, 0xB2, 0xA8, 0x9E, 0x9A, 0xBA,\n0xB6, 0xD1, 0x2C, 0xD3, 0x2F, 0xF8, 0x39, 0xB7, 0xF9, 0xA0, 0x20, 0x42, 0xF9, 0xE3, 0x97, 0x1C,\n0x98, 0x7F, 0xF7, 0xEE, 0x15, 0x69, 0xDE, 0x19, 0x93, 0xF9, 0x6D, 0x2A, 0x0F, 0x12, 0x7E, 0xB4,\n0x55, 0x29, 0x9F, 0xF7, 0x7A, 0xFE, 0x82, 0xEA, 0x95, 0xF4, 0x55, 0x3D, 0x99, 0x45, 0xF9, 0xE3,\n0xD4, 0x3F, 0xD8, 0xCB, 0x7D, 0x57, 0xF0, 0xD1, 0x61, 0x44, 0x3D, 0x92, 0x59, 0xF0, 0x41, 0x04,\n0x52, 0x97, 0x17, 0x7F, 0x50, 0x10, 0x31, 0xF9, 0x40, 0x94, 0xCF, 0xF1, 0x8F, 0xB6, 0x8A, 0xF2,\n0xA0, 0x43, 0x08, 0xF1, 0x87, 0x43, 0x08, 0x7C, 0x20, 0x18, 0x69, 0xA7, 0x7B, 0x39, 0x2D, 0x35,\n0x41, 0x48, 0xAC, 0x9D, 0x09, 0x44, 0xFB, 0x26, 0x32, 0xDF, 0x66, 0x32, 0x9C, 0x64, 0x14, 0xD5,\n0x0D, 0x3E, 0xCA, 0xA2, 0xFA, 0xD5, 0xCC, 0x03, 0x0E, 0x42, 0x10, 0x92, 0x86, 0x22, 0x7D, 0x35,\n0xD2, 0xCC, 0x87, 0xE8, 0x18, 0x7F, 0x72, 0x6E, 0xCC, 0xAA, 0x79, 0x6A, 0xBB, 0x20, 0x52, 0xF8,\n0x47, 0xDB, 0x4B, 0x08, 0x3F, 0x9A, 0x78, 0xB0, 0x47, 0x1C, 0xA2, 0x09, 0x81, 0x67, 0xB4, 0xA2,\n0x10, 0x8A, 0xEA, 0xF0, 0xD1, 0xEF, 0x84, 0x1F, 0xA6, 0xFE, 0xA0, 0x3C, 0x68, 0x68, 0xEB, 0xAD,\n0xAF, 0xE8, 0x01, 0xB7, 0xC1, 0x07, 0x45, 0x75, 0x8D, 0x8B, 0xFC, 0x06, 0x63, 0x6B, 0x99, 0xB5,\n0x2C, 0x0E, 0xAA, 0xF3, 0x8C, 0x47, 0x0A, 0x22, 0x7B, 0x6F, 0x2A, 0x84, 0x7F, 0xA8, 0x3B, 0xF3,\n0x0C, 0x42, 0xCE, 0x1D, 0x91, 0xEE, 0x85, 0x84, 0x2B, 0xB5, 0x04, 0x48, 0xB2, 0x12, 0x75, 0x3D,\n0xCD, 0x2E, 0x42, 0xF9, 0xC3, 0x25, 0x44, 0x03, 0xEE, 0x31, 0x22, 0x44, 0xDA, 0x13, 0x7F, 0x18,\n0x1E, 0x52, 0xF3, 0x0F, 0x9E, 0x14, 0xCF, 0x7F, 0x85, 0x8F, 0x06, 0x23, 0x65, 0xC9, 0xF0, 0x51,\n0xC3, 0xE2, 0x8E, 0xBD, 0xAA, 0x28, 0x88, 0x24, 0xFB, 0xF0, 0xFA, 0x0D, 0x7C, 0x98, 0xA2, 0x3A,\n0x68, 0x13, 0xB2, 0x25, 0xBD, 0x3B, 0xE8, 0x39, 0xFC, 0x18, 0xF2, 0xC1, 0x81, 0x58, 0x94, 0x3F,\n0x8C, 0x65, 0xD6, 0xAF, 0x94, 0x3F, 0x10, 0x0E, 0x7F, 0x5A, 0x10, 0x21, 0xFE, 0x30, 0xDA, 0x19,\n0xE5, 0x0F, 0x8B, 0x90, 0x98, 0x9A, 0x3E, 0x21, 0x8A, 0x2F, 0xFE, 0x89, 0x70, 0x3C, 0x23, 0xA1,\n0x7D, 0x1C, 0x24, 0x33, 0x92, 0xFA, 0x2D, 0xE9, 0x2B, 0x47, 0xC9, 0x3F, 0xF4, 0xA1, 0xCC, 0xEE,\n0xC4, 0xE7, 0x65, 0x41, 0xA4, 0x75, 0x35, 0xAA, 0x3C, 0xFF, 0xB5, 0xC5, 0x07, 0xE7, 0x56, 0x9D,\n0x67, 0xF8, 0x87, 0x86, 0x56, 0x14, 0x82, 0x04, 0x08, 0xF6, 0x31, 0xEE, 0xEB, 0xF8, 0xD8, 0xF2,\n0x68, 0x13, 0xE2, 0xFB, 0x87, 0x3E, 0xF6, 0xF7, 0xF8, 0x87, 0x25, 0x11, 0xC2, 0x21, 0xEB, 0xE1,\n0x01, 0x21, 0x15, 0xEF, 0x68, 0x7B, 0x08, 0xE5, 0x0F, 0xCB, 0x43, 0xDA, 0x45, 0xB6, 0x7A, 0x51,\n0x1D, 0x59, 0x84, 0xCC, 0xE5, 0xC1, 0xE0, 0xA0, 0xB8, 0xD5, 0x24, 0x8F, 0xF1, 0x86, 0x37, 0x94,\n0x3F, 0x1C, 0x6D, 0x08, 0x3F, 0x2C, 0x0F, 0xD9, 0xC0, 0x87, 0xC1, 0xC8, 0xBE, 0xBD, 0xB8, 0xE2,\n0xEA, 0x44, 0xC9, 0x50, 0x7C, 0xBC, 0x6A, 0x11, 0xC2, 0xA9, 0x05, 0x91, 0xC7, 0xFE, 0xBA, 0xAA,\n0x14, 0x77, 0xB7, 0x3B, 0x5D, 0x05, 0x11, 0x73, 0xAE, 0x93, 0xED, 0x5D, 0xF5, 0x17, 0x4C, 0x3C,\n0x48, 0xF7, 0x5A, 0x7C, 0x10, 0x88, 0x14, 0x87, 0x6C, 0xC0, 0x48, 0x2D, 0x7D, 0xD5, 0x13, 0x37,\n0xAA, 0x5A, 0xCD, 0xBC, 0x0C, 0x93, 0xEE, 0x75, 0x44, 0x32, 0x4B, 0x7C, 0x44, 0xD5, 0xFC, 0xBB,\n0x20, 0xE2, 0x97, 0x0C, 0x88, 0x5E, 0x08, 0x70, 0x62, 0xA5, 0xB5, 0xF2, 0xC7, 0xCF, 0x37, 0xA4,\n0xAF, 0x2C, 0xF3, 0xC3, 0x53, 0x1D, 0x40, 0x7E, 0x00, 0x10, 0x4F, 0x97, 0xF0, 0xD1, 0x22, 0x84,\n0xE1, 0xF2, 0x03, 0x95, 0xC9, 0x03, 0x0C, 0x1C, 0xA3, 0x47, 0x8B, 0xC5, 0x07, 0x37, 0x66, 0x31,\n0xDF, 0x5D, 0x0F, 0x59, 0x47, 0xC8, 0x71, 0x05, 0x20, 0xD2, 0x8B, 0x75, 0x7A, 0x85, 0x73, 0x74,\n0xF0, 0x40, 0xBA, 0x42, 0xB5, 0x0C, 0x83, 0x57, 0x79, 0x89, 0xDB, 0xAF, 0xBC, 0x6B, 0xA5, 0x17,\n0xE8, 0x92, 0xCC, 0x7A, 0xC9, 0x75, 0xDE, 0xF0, 0x90, 0x48, 0x54, 0x95, 0x0E, 0x12, 0x4F, 0x53,\n0x24, 0x92, 0x94, 0x2B, 0x84, 0x2F, 0xD7, 0xF0, 0xB1, 0x02, 0x0F, 0xF1, 0xB1, 0x71, 0x96, 0x9D,\n0x54, 0x43, 0xA8, 0x80, 0x70, 0xA8, 0x5B, 0x0B, 0xAD, 0x74, 0x6B, 0x6F, 0x97, 0x8E, 0x92, 0x91,\n0x57, 0xAF, 0xC4, 0xC1, 0x0A, 0x07, 0x39, 0x12, 0xA1, 0x3B, 0x7D, 0x55, 0x04, 0xB2, 0x55, 0x45,\n0xFD, 0x0F, 0x08, 0xF1, 0xD6, 0x58, 0xAB, 0x0C, 0xE4, 0x78, 0x7D, 0xB3, 0x0E, 0x90, 0x57, 0x2C,\n0xB0, 0x5A, 0x89, 0x2C, 0x5E, 0x8D, 0x1F, 0x40, 0x07, 0x01, 0xA9, 0xF6, 0x8C, 0x20, 0x44, 0xB3,\n0xDE, 0x9F, 0x09, 0xD2, 0xDB, 0x2B, 0x2E, 0xC5, 0xA9, 0x20, 0xE2, 0x88, 0x8A, 0xFA, 0xBB, 0x70,\n0x30, 0xED, 0x10, 0x83, 0x60, 0x2A, 0x1A, 0xDF, 0xA7, 0x86, 0x3E, 0xD4, 0xCB, 0x89, 0x8F, 0xB7,\n0xD5, 0x5C, 0x3E, 0xCE, 0x26, 0x3C, 0xB4, 0xED, 0xFD, 0x18, 0x24, 0x08, 0xA9, 0x07, 0xE8, 0x3C,\n0x92, 0xC7, 0xFA, 0xB9, 0x43, 0x08, 0x0F, 0xDA, 0x2E, 0xC5, 0xC7, 0x7D, 0x10, 0x42, 0x1C, 0xD2,\n0x8B, 0x42, 0x6E, 0xAE, 0x6F, 0xAE, 0xAF, 0xED, 0x19, 0x29, 0x3E, 0xB6, 0x0F, 0xE4, 0x78, 0x9D,\n0x05, 0x96, 0xB4, 0x2E, 0x06, 0xD1, 0x22, 0xCB, 0xE7, 0xE3, 0xE6, 0x5A, 0xDD, 0x5F, 0x61, 0xBD,\n0x7A, 0xA1, 0xA6, 0xA3, 0x64, 0xAE, 0xB0, 0x22, 0x87, 0x75, 0x37, 0x5A, 0x59, 0x91, 0xC6, 0xDA,\n0xDF, 0xF9, 0x1E, 0x92, 0x00, 0x59, 0xE1, 0x21, 0xAB, 0x08, 0x79, 0x99, 0xD2, 0x58, 0x57, 0xB7,\n0xA0, 0x81, 0x83, 0xE4, 0xE7, 0x98, 0xCA, 0xAD, 0x00, 0xE1, 0x2E, 0x2C, 0xCF, 0x3F, 0xDE, 0x36,\n0x09, 0xD1, 0x7B, 0x13, 0x1F, 0x36, 0x21, 0xD3, 0x21, 0x94, 0x48, 0x63, 0xF5, 0x19, 0xB9, 0xFB,\n0xF9, 0x32, 0x6B, 0x18, 0xA3, 0x87, 0xD2, 0x14, 0x78, 0x85, 0x6F, 0xB0, 0xD7, 0x08, 0x40, 0x8E,\n0x02, 0xE4, 0xDA, 0xF4, 0x10, 0x55, 0x42, 0x72, 0x9E, 0xC9, 0x4B, 0xDA, 0x06, 0x1F, 0x2B, 0x08,\n0xA1, 0x4A, 0xE8, 0xF5, 0xEB, 0xD4, 0x6E, 0xEC, 0x2C, 0xD6, 0xAB, 0xD4, 0x70, 0xDC, 0xAA, 0x85,\n0xE0, 0x1F, 0x59, 0x7D, 0x8B, 0x67, 0x37, 0x4E, 0xAC, 0x1B, 0x86, 0x6C, 0x66, 0xB9, 0xD1, 0x2E,\n0x84, 0xB8, 0x49, 0x2C, 0x29, 0x95, 0xD1, 0xC3, 0x32, 0x88, 0x41, 0x78, 0xE9, 0xDD, 0x5F, 0xF4,\n0x96, 0xD0, 0xF9, 0x3B, 0x86, 0x87, 0xF0, 0xBB, 0xDE, 0x3D, 0x3E, 0x36, 0x21, 0x0F, 0x91, 0xC4,\n0x47, 0x6C, 0x3B, 0x43, 0x77, 0x14, 0x73, 0x3B, 0x78, 0x80, 0x89, 0xF8, 0x08, 0x42, 0x92, 0x57,\n0x2C, 0xE1, 0x80, 0x17, 0x9E, 0x7C, 0x72, 0x73, 0xED, 0x7B, 0xC8, 0xE4, 0x1F, 0x6A, 0x93, 0x2C,\n0x40, 0x02, 0x0F, 0x9B, 0x90, 0x6D, 0xF2, 0x0F, 0xDF, 0x43, 0x64, 0x1E, 0xD1, 0x5C, 0x3E, 0xE2,\n0xF0, 0x70, 0xEC, 0x7A, 0x16, 0x72, 0x39, 0xEB, 0x67, 0xCE, 0x55, 0xFD, 0xBE, 0x20, 0xF8, 0xC0,\n0x43, 0x1C, 0xFF, 0xD0, 0x1B, 0x6D, 0x42, 0x24, 0x08, 0x71, 0xFC, 0x23, 0x69, 0x32, 0x07, 0x41,\n0x80, 0x5F, 0x04, 0x20, 0x57, 0xD1, 0xB4, 0xA7, 0x5C, 0xF0, 0x1A, 0x42, 0x26, 0x4F, 0x08, 0x79,\n0x7C, 0x1C, 0x36, 0xF9, 0x9B, 0x8E, 0x01, 0x49, 0xCB, 0xAB, 0xC4, 0x86, 0x41, 0x08, 0x3F, 0x15,\n0xD2, 0x26, 0xA4, 0x3C, 0xCF, 0x97, 0x5A, 0x5F, 0xCD, 0x84, 0xBC, 0x72, 0x62, 0x90, 0x34, 0xC3,\n0xA2, 0x1D, 0x87, 0xD3, 0x31, 0xFC, 0x23, 0x06, 0x8B, 0x0F, 0xE4, 0x10, 0x12, 0x45, 0x96, 0xD4,\n0x6F, 0x1C, 0xFF, 0xA0, 0x8D, 0x53, 0x59, 0xE0, 0xA1, 0x76, 0x7A, 0x79, 0x61, 0xC4, 0x3F, 0xD0,\n0xEE, 0xAE, 0xCB, 0x06, 0x7C, 0x48, 0x3A, 0xC7, 0x46, 0x20, 0x92, 0x26, 0xCD, 0x3C, 0x75, 0x9C,\n0x94, 0xE9, 0x7C, 0xE1, 0xD6, 0xE3, 0xF8, 0x86, 0xA9, 0x97, 0x99, 0x0F, 0x3C, 0x44, 0x5E, 0x11,\n0x58, 0xC4, 0xCF, 0x83, 0xCC, 0xBA, 0xD2, 0x3B, 0x91, 0xC8, 0xB2, 0xFD, 0x83, 0x38, 0xA4, 0xC7,\n0x47, 0xE0, 0x71, 0x96, 0xBF, 0xEF, 0xB0, 0x8C, 0x1E, 0x7C, 0x40, 0xC8, 0x47, 0xED, 0x45, 0x6D,\n0xF0, 0x81, 0x06, 0x11, 0xFA, 0x65, 0xD8, 0x07, 0x26, 0x72, 0x43, 0xC4, 0x51, 0x8D, 0x42, 0xA6,\n0x08, 0x97, 0x36, 0x4A, 0x66, 0xDD, 0xBC, 0x4E, 0x73, 0x37, 0x0F, 0xDA, 0x3C, 0x3E, 0x7C, 0x42,\n0xD2, 0x7F, 0xF4, 0x61, 0x6B, 0x13, 0x02, 0xDD, 0x8E, 0x87, 0xDC, 0xA4, 0x8B, 0xC6, 0x73, 0x1B,\n0x27, 0xB2, 0xCA, 0x9F, 0x05, 0x19, 0xDE, 0x68, 0x82, 0x8C, 0x55, 0x56, 0xC0, 0xA1, 0x79, 0x63,\n0x05, 0x22, 0x4C, 0x4B, 0x87, 0x90, 0x97, 0xF1, 0xAB, 0x48, 0xF1, 0x90, 0xC8, 0xE8, 0x12, 0x83,\n0xC4, 0x7A, 0xEB, 0x5D, 0xEC, 0x43, 0x1A, 0xDD, 0xAE, 0xF8, 0x52, 0x7C, 0xE0, 0x1F, 0x63, 0x13,\n0x11, 0x1F, 0x19, 0x8F, 0xB7, 0x0F, 0xB3, 0x91, 0x58, 0xEB, 0x2B, 0x08, 0xE9, 0x16, 0x9D, 0x66,\n0x3E, 0xD0, 0xC8, 0x42, 0x5E, 0x14, 0x84, 0xDC, 0xF7, 0x6F, 0xE6, 0x4D, 0x33, 0x8B, 0x36, 0xBA,\n0x9B, 0xF7, 0xF5, 0x4C, 0x86, 0x5A, 0xEA, 0x46, 0x78, 0x6E, 0x10, 0x02, 0x1F, 0xA1, 0x99, 0xC2,\n0x5E, 0x7D, 0x9F, 0xE5, 0x95, 0xED, 0x21, 0xE0, 0x81, 0x87, 0x34, 0x0E, 0x24, 0xFE, 0x81, 0xDA,\n0x17, 0x32, 0xF8, 0xB8, 0xCB, 0xDD, 0xF0, 0x10, 0xF0, 0xD0, 0x20, 0x0F, 0x19, 0x25, 0xB3, 0x10,\n0x84, 0x74, 0x6F, 0x77, 0x47, 0xC4, 0x21, 0x1A, 0x23, 0x06, 0xA1, 0x3E, 0x58, 0xF0, 0x41, 0x32,\n0xAB, 0xED, 0x1F, 0x2E, 0x20, 0x11, 0x9E, 0x1F, 0xDE, 0x4E, 0x9B, 0x7A, 0x42, 0xA4, 0x83, 0x07,\n0x7C, 0x44, 0x93, 0x3A, 0x1E, 0x02, 0x1F, 0x06, 0x21, 0x84, 0x1F, 0x0B, 0x42, 0x2A, 0x59, 0x2C,\n0x88, 0x39, 0x99, 0x62, 0xDD, 0x1F, 0x98, 0xBA, 0x11, 0x1F, 0x19, 0x8F, 0x18, 0x34, 0x7A, 0xFE,\n0xE1, 0x05, 0x22, 0xDB, 0xB0, 0x0F, 0x28, 0x7C, 0xDD, 0xAC, 0x18, 0x16, 0x7C, 0x18, 0x91, 0xFA,\n0xFD, 0xEC, 0x1F, 0xB4, 0x57, 0x97, 0xED, 0x15, 0x16, 0x7C, 0x20, 0x80, 0xA8, 0x24, 0x78, 0x13,\n0x17, 0x20, 0x92, 0x08, 0xE9, 0xFB, 0x87, 0xFA, 0x3C, 0xBC, 0x3D, 0x48, 0xF7, 0x56, 0xFF, 0x4D,\n0x90, 0xFE, 0xCD, 0xEE, 0x4B, 0xA5, 0x74, 0x6F, 0x20, 0x42, 0x90, 0x2E, 0xFF, 0xB8, 0xD5, 0x1F,\n0x95, 0xD2, 0x6F, 0x54, 0x7C, 0xD9, 0x4D, 0x5F, 0xB9, 0x88, 0x4C, 0x7C, 0xE0, 0x20, 0xEA, 0x9B,\n0xB3, 0x04, 0xCC, 0x28, 0xFE, 0x58, 0x36, 0x4C, 0xE4, 0x23, 0x1E, 0x34, 0xC2, 0xC7, 0x52, 0x2D,\n0xFF, 0xB8, 0xAC, 0x01, 0x22, 0x0F, 0x89, 0x56, 0xD1, 0x4D, 0xC4, 0xE7, 0x9E, 0x89, 0xDC, 0x04,\n0x19, 0x0F, 0x11, 0xA6, 0x6B, 0x47, 0x83, 0xE1, 0x1F, 0x96, 0x87, 0xE0, 0x1F, 0x20, 0xA2, 0xE1,\n0xC6, 0xE7, 0x23, 0xD2, 0xBD, 0xF7, 0x9D, 0xF0, 0x9C, 0x46, 0xA8, 0xDE, 0xCA, 0x08, 0xFE, 0x7C,\n0x79, 0x2A, 0x80, 0x88, 0x3D, 0xB4, 0x9F, 0x34, 0xFD, 0x02, 0xC0, 0xCF, 0xF7, 0xD1, 0x7B, 0x1E,\n0x32, 0x2F, 0xAB, 0xA6, 0x59, 0x73, 0x16, 0xB1, 0x7A, 0x8F, 0x10, 0x01, 0x61, 0x11, 0x42, 0xF9,\n0xE3, 0x54, 0xB7, 0x99, 0x88, 0x2B, 0x6E, 0x35, 0x99, 0x3A, 0x2A, 0x03, 0x11, 0x9F, 0x8F, 0x4E,\n0xF9, 0xFC, 0x69, 0xB6, 0x49, 0x1C, 0x44, 0xEA, 0x2D, 0xAF, 0x4A, 0x3E, 0xF4, 0xBC, 0xA8, 0x39,\n0xA1, 0xCB, 0xBA, 0x9A, 0xFE, 0x71, 0xCF, 0x99, 0xA7, 0xD5, 0xA6, 0x4C, 0x7E, 0xED, 0xC8, 0x1C,\n0x73, 0x02, 0x91, 0x69, 0xBE, 0x3E, 0xCC, 0xEE, 0xC1, 0x66, 0xF0, 0x61, 0x79, 0xC8, 0xEC, 0x1B,\n0xF4, 0x34, 0x08, 0x84, 0x2A, 0x1F, 0xB5, 0x8F, 0x2E, 0xE0, 0x3B, 0xFE, 0x51, 0x6B, 0xCD, 0x44,\n0xD6, 0x65, 0x5D, 0x14, 0xD5, 0x97, 0xCA, 0x9E, 0x21, 0x2A, 0x38, 0xB3, 0x24, 0xB3, 0x1A, 0xF6,\n0x11, 0x64, 0xBC, 0xFD, 0x1C, 0x88, 0xB4, 0x8B, 0xEA, 0x85, 0x06, 0xC9, 0x2C, 0xA5, 0xAF, 0x2A,\n0x8A, 0x82, 0x88, 0x84, 0x83, 0xA4, 0x97, 0x4B, 0x51, 0x10, 0x19, 0xF1, 0x81, 0x5A, 0x7C, 0x84,\n0x4F, 0xE2, 0x20, 0x9B, 0xB3, 0x76, 0x32, 0x6B, 0x53, 0xE1, 0x23, 0x5E, 0x02, 0x0D, 0xAA, 0x1F,\n0xE2, 0xA3, 0xA5, 0xDA, 0x35, 0x2F, 0xC5, 0xE7, 0xD5, 0x49, 0xD0, 0x72, 0x10, 0x26, 0xD6, 0xC8,\n0x43, 0x28, 0x7F, 0xE0, 0x20, 0x10, 0x62, 0xF3, 0xF1, 0x55, 0x8F, 0x90, 0x2D, 0xFF, 0x71, 0x40,\n0xC9, 0x84, 0x0C, 0xF9, 0xA0, 0x1D, 0x5B, 0x1E, 0xD2, 0x38, 0x36, 0xF7, 0xAF, 0x6A, 0x16, 0xD2,\n0xE2, 0x83, 0xA2, 0x7A, 0x51, 0x4E, 0x97, 0x59, 0xC8, 0x33, 0x24, 0xE2, 0xF4, 0xE4, 0x26, 0x0D,\n0x0F, 0xC9, 0xEE, 0xC1, 0x02, 0xEB, 0x8C, 0xF1, 0xCC, 0x01, 0x04, 0x42, 0x3A, 0xE5, 0x8F, 0xBA,\n0x87, 0x50, 0x07, 0xD1, 0x23, 0xE5, 0x0F, 0xC7, 0x43, 0x5E, 0xB6, 0xF9, 0xF8, 0xAC, 0x46, 0x88,\n0x56, 0x53, 0x61, 0x93, 0xDA, 0x70, 0x10, 0xED, 0xEB, 0xC1, 0xF4, 0x0F, 0x08, 0xA9, 0xE8, 0xB2,\n0xAD, 0x76, 0x78, 0xEE, 0x7B, 0xC8, 0x34, 0x99, 0xEA, 0xAD, 0x51, 0xFE, 0xD8, 0x66, 0x07, 0x09,\n0xC5, 0xFE, 0xB4, 0xF9, 0xFE, 0x01, 0x21, 0x95, 0xF2, 0xC7, 0xFC, 0x1F, 0x07, 0x0F, 0x3C, 0xA4,\n0xBF, 0xBE, 0xA2, 0xC9, 0x15, 0xAF, 0xAB, 0xF6, 0xD1, 0x3C, 0x38, 0x14, 0x59, 0x07, 0xFE, 0x01,\n0x21, 0xC5, 0x6A, 0x98, 0xF2, 0xA0, 0xD6, 0x57, 0x89, 0x8B, 0xA9, 0xE7, 0x97, 0xF0, 0x90, 0xD2,\n0x3F, 0xD4, 0xF2, 0x5C, 0x39, 0x0B, 0x3B, 0xD1, 0x98, 0xE2, 0x10, 0x07, 0x0F, 0x08, 0x69, 0x95,\n0x3F, 0x5A, 0x1E, 0x82, 0x83, 0x10, 0x9E, 0x9B, 0x1E, 0x02, 0x1F, 0x96, 0x87, 0x7C, 0x96, 0xA8,\n0x0F, 0xF3, 0x08, 0x07, 0xC9, 0x70, 0x90, 0xCC, 0xB2, 0xF8, 0x80, 0x10, 0xEE, 0xE3, 0xE5, 0x57,\n0xFE, 0x0C, 0x3C, 0x04, 0x46, 0x64, 0x14, 0xCD, 0x49, 0xA0, 0x3F, 0xAB, 0x94, 0xCF, 0xAF, 0x9B,\n0x80, 0x1C, 0x0B, 0x13, 0x51, 0xF9, 0x63, 0x3B, 0x93, 0x41, 0x0C, 0xC2, 0x1C, 0xDE, 0x9E, 0xF2,\n0xF1, 0x77, 0xD5, 0x3F, 0x42, 0xA7, 0x80, 0xF0, 0x1F, 0x67, 0x71, 0x95, 0xFE, 0x4F, 0x75, 0x0F,\n0x69, 0x7E, 0xF2, 0xA9, 0xDB, 0xFE, 0x51, 0x2E, 0xB3, 0xF0, 0x8F, 0xAE, 0x38, 0x57, 0x45, 0xFA,\n0x4A, 0x50, 0x10, 0xA7, 0x07, 0x2F, 0xDA, 0x3D, 0xB4, 0xFC, 0xE3, 0xED, 0xCC, 0x45, 0x3C, 0x3D,\n0xE4, 0x17, 0x4A, 0x0F, 0x49, 0x20, 0x74, 0x08, 0xF1, 0xFC, 0x83, 0x64, 0x16, 0x80, 0xE0, 0x1F,\n0x86, 0x87, 0x90, 0xBE, 0x32, 0x01, 0x09, 0xE0, 0xCF, 0xB2, 0x73, 0x10, 0x83, 0x68, 0xD0, 0x8B,\n0x65, 0x20, 0x02, 0x1F, 0x3D, 0x42, 0xCA, 0xF4, 0x95, 0x4F, 0x48, 0xDC, 0x7E, 0xD5, 0x21, 0xE4,\n0xA6, 0x40, 0x64, 0x9A, 0x49, 0xDA, 0x1A, 0x4D, 0x15, 0xC3, 0x6A, 0xF9, 0x83, 0x18, 0x64, 0xCB,\n0x53, 0xA9, 0xB4, 0x83, 0xA6, 0x79, 0xD4, 0x43, 0xF5, 0x2D, 0x70, 0x80, 0xC7, 0x96, 0x90, 0x1D,\n0x42, 0x28, 0x7F, 0xB4, 0x5B, 0x89, 0xC8, 0x0D, 0x78, 0x54, 0x9B, 0x56, 0x59, 0xB6, 0x7F, 0x50,\n0x32, 0x44, 0x91, 0x77, 0x89, 0x41, 0xEE, 0x21, 0x89, 0x8D, 0x67, 0x52, 0x0A, 0x13, 0x09, 0xFF,\n0x88, 0x10, 0x24, 0x62, 0x91, 0x58, 0x9D, 0x27, 0x15, 0xB7, 0xC9, 0x76, 0x45, 0xBA, 0x97, 0xF2,\n0x60, 0x43, 0x14, 0x44, 0x22, 0x48, 0xEF, 0x1A, 0x08, 0x05, 0x11, 0xF8, 0xE8, 0x03, 0xB2, 0xF0,\n0xBE, 0xB9, 0x7C, 0xFE, 0x1C, 0x78, 0x90, 0xC5, 0x22, 0x7B, 0x77, 0x28, 0xD2, 0x57, 0xF0, 0x51,\n0x25, 0xC4, 0xE2, 0x03, 0x15, 0xFE, 0x71, 0x3F, 0x98, 0x04, 0xF6, 0xF2, 0x8A, 0x6C, 0x2F, 0xFE,\n0x11, 0x13, 0x16, 0x07, 0x89, 0x89, 0xCB, 0xB4, 0xDE, 0x16, 0x77, 0xEF, 0x76, 0xE8, 0x60, 0x95,\n0x05, 0x1F, 0x81, 0xC5, 0x82, 0x8A, 0xE7, 0xFF, 0x74, 0x51, 0x32, 0xC4, 0x3F, 0x9A, 0x78, 0x3B,\n0xF6, 0x41, 0xBB, 0x67, 0x99, 0x85, 0x7F, 0xF8, 0x84, 0xB0, 0xBE, 0x12, 0x1D, 0x1A, 0x23, 0x95,\n0x15, 0x41, 0x7B, 0xA4, 0x7B, 0x8B, 0xF2, 0x47, 0x9A, 0x2B, 0xD4, 0x97, 0x63, 0xB7, 0x5E, 0x10,\n0xF9, 0xCC, 0x20, 0xC4, 0xE2, 0x03, 0x0F, 0x11, 0x20, 0xF8, 0x87, 0x43, 0xC8, 0xCB, 0xB1, 0x7F,\n0xC4, 0x07, 0x8D, 0xEA, 0x79, 0xC4, 0x1F, 0xD8, 0x06, 0xBB, 0xB9, 0xF2, 0x93, 0xF6, 0xF1, 0x0F,\n0xF8, 0x18, 0x10, 0xF2, 0x11, 0x7C, 0xD8, 0x1E, 0xA2, 0x3D, 0xF0, 0x68, 0xB6, 0xFF, 0xC6, 0xE9,\n0xF7, 0xE4, 0xAF, 0x3A, 0x71, 0x08, 0xE5, 0x8F, 0x99, 0x06, 0x2C, 0xA3, 0x78, 0x0A, 0x21, 0x94,\n0x3F, 0x6C, 0x0F, 0xD9, 0x82, 0x87, 0x7A, 0x60, 0x11, 0xDB, 0x6C, 0x2A, 0xCF, 0x05, 0x11, 0x89,\n0xCF, 0xD8, 0x5E, 0x22, 0x8E, 0xE3, 0x0F, 0x5A, 0xDC, 0xDC, 0x8B, 0x7F, 0x38, 0x84, 0x7C, 0x74,\n0xC2, 0x47, 0xD8, 0x05, 0xB8, 0x24, 0x3C, 0xD2, 0xB0, 0x07, 0x90, 0xD9, 0x3A, 0xCE, 0x62, 0xAE,\n0xA4, 0xD9, 0xA3, 0x57, 0xF4, 0x42, 0xAD, 0x20, 0x82, 0x0C, 0x42, 0x28, 0x9F, 0x0F, 0x3C, 0x44,\n0x80, 0x90, 0xBE, 0xEA, 0xEA, 0x8D, 0x90, 0x83, 0x8F, 0xB1, 0x28, 0x7F, 0x2C, 0x52, 0x57, 0x6F,\n0xB3, 0x1B, 0xDF, 0x5B, 0xFB, 0x58, 0xC8, 0x06, 0x3E, 0xDA, 0x84, 0x70, 0xFF, 0xBB, 0xF8, 0xF0,\n0x34, 0x67, 0xF1, 0xC7, 0x74, 0x44, 0x41, 0x24, 0x04, 0x1D, 0x5D, 0x13, 0x79, 0x9D, 0xEF, 0xBE,\n0x52, 0xF9, 0x23, 0xF3, 0xB1, 0xC8, 0x62, 0xF1, 0x94, 0x82, 0x08, 0xFE, 0xD1, 0xA3, 0xA3, 0x24,\n0x04, 0x67, 0x5A, 0xFC, 0x47, 0x71, 0xAC, 0x4C, 0xC8, 0x0D, 0xE1, 0xB9, 0xD3, 0xEE, 0x03, 0x8F,\n0x6B, 0xAE, 0x1D, 0xDD, 0x46, 0xF9, 0xDC, 0xD2, 0xAE, 0xC2, 0x47, 0x76, 0x0F, 0x75, 0x5E, 0xD3,\n0x88, 0x87, 0xE0, 0x1F, 0x12, 0xAB, 0x8D, 0x44, 0x06, 0x69, 0xDF, 0x85, 0x87, 0xF4, 0xFD, 0x83,\n0x82, 0x08, 0xE5, 0x41, 0x4B, 0x02, 0x44, 0xCB, 0x2B, 0x4B, 0x2F, 0xDF, 0x28, 0x12, 0xF1, 0xF9,\n0x98, 0xFD, 0x63, 0x12, 0xB6, 0xA1, 0xE7, 0xEC, 0x4E, 0x62, 0x45, 0x59, 0xDE, 0x7E, 0xD5, 0x87,\n0xA4, 0x48, 0x5F, 0x79, 0xAB, 0x2C, 0xEE, 0x4E, 0xEC, 0x37, 0x11, 0x42, 0x79, 0xD0, 0x6A, 0xA4,\n0x77, 0x63, 0xC2, 0x12, 0x83, 0xF0, 0x94, 0x89, 0x3C, 0x4A, 0x5F, 0x41, 0x09, 0xCB, 0x2C, 0x0D,\n0x8B, 0xF0, 0x83, 0xE0, 0x86, 0x67, 0x0F, 0x73, 0xBA, 0x17, 0x3E, 0x0C, 0xBC, 0xF1, 0x0F, 0x0F,\n0x90, 0x58, 0x64, 0x5D, 0x9A, 0x0A, 0xB3, 0xC7, 0x30, 0xA8, 0x7D, 0xA4, 0x38, 0x44, 0x7D, 0x1F,\n0x03, 0xC9, 0xAC, 0x43, 0x5E, 0x5D, 0xC4, 0x0A, 0x43, 0x4D, 0x3E, 0x02, 0x19, 0x52, 0x72, 0x12,\n0x6E, 0xCC, 0x42, 0x06, 0x21, 0xDC, 0x5E, 0x32, 0xD0, 0xAD, 0x00, 0x79, 0x32, 0xF9, 0x10, 0x21,\n0x7F, 0x91, 0xBE, 0xB2, 0x24, 0x3E, 0x82, 0x72, 0x3A, 0x66, 0x32, 0xC7, 0x5E, 0x94, 0x0C, 0xE5,\n0x1F, 0x21, 0x8F, 0x10, 0xFC, 0xC3, 0x43, 0xE4, 0x72, 0x3C, 0x01, 0xB8, 0xB9, 0xF7, 0x9E, 0xF8,\n0xC3, 0x68, 0xC9, 0x43, 0x16, 0x09, 0x2B, 0x1C, 0x84, 0xA7, 0x4C, 0xEF, 0x69, 0xBA, 0x7F, 0xD3,\n0x43, 0x22, 0x36, 0x3C, 0x64, 0xBE, 0x3D, 0x71, 0x11, 0x83, 0xF0, 0x3F, 0xCC, 0xE1, 0x0E, 0xE9,\n0x5E, 0x87, 0x0F, 0xF2, 0x59, 0xE9, 0xDB, 0xBE, 0xB2, 0x1B, 0xE5, 0x73, 0x4B, 0xC9, 0x3E, 0x66,\n0xAF, 0xA0, 0x11, 0x9A, 0x7F, 0x9E, 0x86, 0x78, 0x35, 0x79, 0x08, 0xD3, 0x42, 0x3B, 0x85, 0x81,\n0x9C, 0x25, 0x70, 0x72, 0x62, 0x2B, 0x3C, 0xC4, 0xF0, 0x0F, 0x92, 0x59, 0x94, 0xCF, 0xBD, 0x7F,\n0x27, 0xFD, 0xCA, 0xD6, 0x64, 0x1F, 0x6F, 0x7D, 0xB6, 0x42, 0x9B, 0x2C, 0x1C, 0x24, 0x12, 0x57,\n0x38, 0x88, 0x9E, 0x90, 0xE0, 0x9E, 0xEF, 0xBE, 0x52, 0xEF, 0x2B, 0xAA, 0xEA, 0x9C, 0x22, 0x8B,\n0x90, 0x57, 0x92, 0x2C, 0xC4, 0xD4, 0x3D, 0xD5, 0x41, 0xA3, 0xC9, 0x43, 0xC4, 0x47, 0xA5, 0xD5,\n0x5E, 0xD0, 0x90, 0xEC, 0x43, 0xF9, 0x5D, 0x57, 0xDF, 0x24, 0x3E, 0xF8, 0x2F, 0x74, 0x9B, 0xFA,\n0x30, 0x3C, 0x2F, 0x8B, 0xEA, 0x1C, 0x17, 0x47, 0xD8, 0x87, 0xA5, 0x5C, 0x3E, 0x2F, 0xF8, 0xE0,\n0x3C, 0xDF, 0xCD, 0x43, 0x42, 0x45, 0x2D, 0xC3, 0x71, 0x96, 0x09, 0x88, 0xE0, 0x83, 0x24, 0xD6,\n0x9C, 0xEB, 0x7D, 0x3B, 0xF6, 0x44, 0xC8, 0x0A, 0xBD, 0x35, 0x05, 0x22, 0x57, 0xB6, 0x00, 0xC4,\n0xD1, 0x9B, 0xF4, 0x99, 0x7C, 0xED, 0xA7, 0x81, 0xAB, 0x01, 0x7E, 0x91, 0x95, 0xBF, 0x2D, 0x43,\n0x3A, 0x66, 0x1C, 0xA6, 0x5E, 0x97, 0x0E, 0xF8, 0x87, 0xA7, 0x17, 0x6B, 0xF4, 0x45, 0x8E, 0x3F,\n0x5C, 0x89, 0x90, 0x6F, 0x7F, 0xFA, 0xE9, 0x35, 0x2D, 0x3F, 0x89, 0xC7, 0xDA, 0x43, 0xFA, 0x15,\n0x58, 0x45, 0xAF, 0x37, 0x75, 0x79, 0xC8, 0xEB, 0xD7, 0xFA, 0x6B, 0xF4, 0x68, 0xC5, 0xFF, 0x8A,\n0xB6, 0x86, 0x6E, 0x15, 0x7A, 0xD2, 0x17, 0x5E, 0xA1, 0xCB, 0x75, 0xDA, 0xED, 0xAB, 0x0A, 0xDB,\n0xC0, 0x4F, 0x66, 0x56, 0x36, 0x0B, 0x07, 0x61, 0x64, 0xDA, 0xD0, 0x35, 0xCB, 0x56, 0xEA, 0xCD,\n0x95, 0xA7, 0xF5, 0x0E, 0x72, 0xFE, 0xC3, 0x0A, 0xDD, 0x3E, 0x69, 0xCA, 0xFB, 0x3A, 0xDB, 0x1F,\n0x3E, 0x16, 0x19, 0x9F, 0xAB, 0x3B, 0x4D, 0x7D, 0x15, 0x20, 0x9F, 0x5E, 0x7E, 0xF1, 0xF8, 0xE1,\n0x2A, 0x4D, 0x19, 0x9E, 0xAE, 0x8E, 0x34, 0x3D, 0x39, 0xFE, 0xF8, 0xDA, 0x97, 0xDE, 0xBB, 0x5D,\n0xA9, 0xF4, 0x97, 0xFC, 0xFF, 0xC1, 0xF1, 0xD8, 0xF9, 0xD4, 0xE5, 0x4B, 0x02, 0x7C, 0xDD, 0xB1,\n0x79, 0xFC, 0x62, 0x25, 0x20, 0x8A, 0xC8, 0x57, 0xB4, 0x8F, 0x0F, 0xFB, 0x15, 0x12, 0x20, 0x4F,\n0xB7, 0xB7, 0xF6, 0xBC, 0xD4, 0x3B, 0xFF, 0x27, 0x07, 0x39, 0x97, 0x56, 0x7C, 0x8C, 0xA7, 0xE4,\n0x21, 0x4F, 0xFB, 0x59, 0x87, 0xB2, 0xB3, 0x3B, 0xE1, 0xB1, 0xFF, 0xF8, 0x70, 0x91, 0x08, 0xB1,\n0xA4, 0x6B, 0x4F, 0x8E, 0xD1, 0x7F, 0x37, 0x9B, 0xF8, 0x58, 0x45, 0xC8, 0xB5, 0xA4, 0x89, 0xA3,\n0x6E, 0xE9, 0x38, 0x69, 0x05, 0x1F, 0x5B, 0xE9, 0xDB, 0xAF, 0xEC, 0x96, 0xDE, 0xFE, 0xDA, 0xD7,\n0x71, 0xD2, 0x8D, 0x2B, 0x45, 0x5A, 0xD2, 0x2A, 0x3E, 0xBE, 0x78, 0xD4, 0xA1, 0xB7, 0xDB, 0x4E,\n0xF2, 0xF1, 0x50, 0x0C, 0x22, 0x42, 0xCE, 0xF6, 0x9B, 0x98, 0x1C, 0x92, 0xC6, 0xFC, 0xA4, 0xB2,\n0xB7, 0x99, 0xF4, 0xF4, 0x83, 0xAD, 0xF3, 0xB5, 0x31, 0xC8, 0xAD, 0xF9, 0xD6, 0xF3, 0x24, 0x1B,\n0x91, 0x37, 0xB1, 0xCA, 0xDA, 0x0B, 0x92, 0xD1, 0xB6, 0x49, 0xFF, 0x94, 0xCE, 0xC7, 0xEA, 0x29,\n0x93, 0x61, 0x48, 0x78, 0xFC, 0xB6, 0xFB, 0xD4, 0xCF, 0x62, 0xFD, 0xAE, 0x53, 0xAA, 0xEE, 0xF3,\n0x91, 0x65, 0xF3, 0x91, 0xB5, 0x8A, 0x8F, 0x35, 0x8C, 0x6C, 0x93, 0x7C, 0x3E, 0xB2, 0x3C, 0x38,\n0x64, 0x1F, 0x59, 0xAB, 0xF8, 0x10, 0x21, 0xEE, 0xA1, 0x17, 0x1D, 0x9F, 0xAE, 0x21, 0x64, 0x9A,\n0x07, 0x87, 0x8F, 0x37, 0x42, 0x64, 0x3C, 0x73, 0x26, 0xFF, 0x48, 0x7A, 0x63, 0xF3, 0x91, 0x64,\n0x13, 0x62, 0xD7, 0x41, 0x6E, 0x85, 0x5D, 0x96, 0xCF, 0x47, 0x20, 0x22, 0xE1, 0x23, 0x15, 0x65,\n0xFF, 0x48, 0x7C, 0xA8, 0x7B, 0x66, 0xBC, 0x93, 0xD2, 0x81, 0x37, 0xAF, 0x61, 0x8F, 0x2F, 0x32,\n0x21, 0x8F, 0x2E, 0x1F, 0x10, 0x62, 0xF3, 0x21, 0xFD, 0x3F, 0x7C, 0x6C, 0x67, 0xB9, 0x7C, 0x84,\n0xCC, 0x0F, 0x7F, 0x1D, 0x72, 0x09, 0x49, 0x78, 0xA8, 0xC9, 0x96, 0x5D, 0xFB, 0x98, 0x2E, 0x67,\n0x3B, 0xEB, 0xC4, 0xDE, 0xC5, 0x44, 0x90, 0x87, 0x08, 0x80, 0xB1, 0x08, 0x2C, 0x7C, 0x3E, 0x7C,\n0x42, 0x6E, 0xF3, 0x3F, 0x7F, 0x70, 0xEB, 0xFA, 0x87, 0x4F, 0xC8, 0x06, 0xC5, 0xD7, 0xCC, 0xB4,\n0x9F, 0x3E, 0x3E, 0x69, 0x38, 0x4B, 0x47, 0x24, 0x08, 0xF1, 0xF8, 0xF8, 0x34, 0x35, 0xC9, 0xF3,\n0x8F, 0xC7, 0x68, 0x9E, 0x89, 0x5C, 0xA3, 0xE3, 0x1A, 0x3E, 0x3E, 0x39, 0x7A, 0x7C, 0xA0, 0xA9,\n0x5C, 0xE8, 0xD9, 0xC7, 0x4F, 0xD3, 0x60, 0xC5, 0x21, 0x47, 0x64, 0xF9, 0x07, 0x72, 0xF9, 0x80,\n0x90, 0x91, 0xC4, 0x47, 0x9C, 0x28, 0xC9, 0xE3, 0xE3, 0x10, 0x5D, 0x33, 0xE1, 0x8C, 0xD9, 0x52,\n0x7F, 0x14, 0x1F, 0xC8, 0xE2, 0x03, 0x39, 0xB3, 0x3E, 0xEE, 0xC5, 0xD2, 0x9E, 0xC3, 0x87, 0x4F,\n0xC8, 0xC5, 0x66, 0xA1, 0x58, 0x30, 0x86, 0x2D, 0xEE, 0x35, 0xAA, 0xC7, 0xF3, 0x08, 0xCF, 0xD5,\n0x72, 0xD7, 0xF6, 0xF9, 0xC0, 0x44, 0xC4, 0xC7, 0xAC, 0x4F, 0xAD, 0x38, 0x44, 0x7C, 0x40, 0x88,\n0xC7, 0x07, 0x8A, 0x69, 0x64, 0xE0, 0xE1, 0x7A, 0x08, 0xF3, 0x5D, 0xB2, 0x0C, 0x04, 0x79, 0x7C,\n0x20, 0xCB, 0x3F, 0x90, 0xB7, 0xBC, 0xA2, 0x8D, 0x43, 0x3F, 0x4E, 0x94, 0xBA, 0xB7, 0xBC, 0x8A,\n0xAE, 0x61, 0xBF, 0xA9, 0xCE, 0x1A, 0x9E, 0x6F, 0x16, 0xF2, 0xF8, 0xF0, 0x09, 0xB9, 0xE5, 0x76,\n0xF7, 0xDB, 0x71, 0x78, 0xEE, 0x13, 0x92, 0xC2, 0xF3, 0xA7, 0xCD, 0x41, 0x5B, 0xE8, 0x29, 0xBC,\n0x62, 0xA9, 0x43, 0xBC, 0x70, 0x06, 0x1F, 0xDE, 0x2A, 0x6B, 0x77, 0xF9, 0x29, 0x0E, 0x32, 0xF6,\n0x90, 0x2F, 0xF8, 0xB7, 0x60, 0x2C, 0x0F, 0xB9, 0x5E, 0xCA, 0xF2, 0x0F, 0x34, 0xE6, 0xA3, 0xD0,\n0x90, 0x90, 0x99, 0xA7, 0x87, 0xB4, 0xF3, 0xA3, 0xC3, 0x07, 0x1A, 0x19, 0xC8, 0xF5, 0x52, 0x63,\n0x3E, 0xFE, 0xDB, 0x86, 0x1E, 0x22, 0x3E, 0x70, 0x10, 0x8D, 0x06, 0x1F, 0x87, 0xC2, 0x43, 0xAA,\n0xB3, 0x26, 0x94, 0xE7, 0x19, 0x73, 0xED, 0xC9, 0xE1, 0x03, 0xBD, 0x3F, 0xE6, 0x23, 0x00, 0x11,\n0x21, 0xB7, 0x06, 0x1F, 0x68, 0xC0, 0x47, 0x64, 0xAD, 0xF9, 0xEC, 0x7B, 0xF0, 0x48, 0x97, 0x05,\n0x9E, 0x2B, 0x8B, 0x3D, 0x1F, 0x0F, 0x3C, 0x64, 0xC0, 0x07, 0xFA, 0xD4, 0xF0, 0x10, 0xCE, 0x27,\n0x84, 0x98, 0x7C, 0xB0, 0xCA, 0x3A, 0x8E, 0xF8, 0x40, 0x7F, 0x76, 0xD7, 0x57, 0x3F, 0xE5, 0xD9,\n0xFE, 0x80, 0x89, 0xD8, 0xEE, 0x11, 0x6F, 0x1F, 0xA4, 0x77, 0x4B, 0x59, 0xFE, 0x81, 0x1C, 0xFF,\n0xF0, 0x3D, 0x24, 0x63, 0x01, 0x24, 0x22, 0xA4, 0x9F, 0xDE, 0x3D, 0x14, 0x5D, 0x84, 0x94, 0xB3,\n0x26, 0xA4, 0xE7, 0x69, 0x86, 0xA1, 0xC3, 0x88, 0x10, 0xEF, 0xE7, 0x6D, 0x11, 0x80, 0x48, 0x9D,\n0x55, 0x56, 0x84, 0xE7, 0x2E, 0x22, 0xE1, 0x1B, 0x4B, 0xFB, 0x8B, 0x6F, 0x79, 0x98, 0x8C, 0xA4,\n0x80, 0x05, 0xFF, 0xA0, 0x77, 0xAA, 0x21, 0x77, 0x97, 0xE1, 0x1E, 0x5C, 0x98, 0xA6, 0x48, 0xBD,\n0x25, 0x85, 0xE7, 0x25, 0x20, 0x22, 0xC4, 0xC0, 0x83, 0x29, 0x23, 0x42, 0x86, 0x78, 0xA0, 0x4F,\n0x3E, 0xF9, 0xB1, 0x13, 0x7E, 0x30, 0xE3, 0x3D, 0x0F, 0x89, 0xE5, 0x18, 0x44, 0xF5, 0x09, 0x39,\n0xD6, 0x64, 0xF9, 0x07, 0x5A, 0xC5, 0x47, 0xBF, 0x20, 0x92, 0x4E, 0xCE, 0xE2, 0x44, 0xED, 0x7A,\n0xA5, 0x2D, 0xEC, 0x83, 0x3E, 0xC3, 0xC0, 0xAC, 0x39, 0x4C, 0x2D, 0xAD, 0xB3, 0xA4, 0x85, 0x85,\n0x68, 0x7B, 0x32, 0xF8, 0xB0, 0x08, 0xB9, 0x15, 0x1E, 0x00, 0xD2, 0x25, 0xE4, 0xBC, 0xAE, 0x3E,\n0x1F, 0x4F, 0xF8, 0x87, 0x16, 0x58, 0x73, 0xC9, 0x50, 0x63, 0x11, 0xB1, 0x9F, 0x91, 0xBE, 0x5A,\n0x74, 0x85, 0x6B, 0x0D, 0x3E, 0xE2, 0x68, 0xE3, 0x20, 0xFD, 0x7A, 0x08, 0xE7, 0xD4, 0x22, 0xE4,\n0xBA, 0xAA, 0x4F, 0xFE, 0x34, 0xF8, 0x20, 0x52, 0x3F, 0x36, 0xF9, 0xD0, 0x34, 0x67, 0xCA, 0xE3,\n0x21, 0x96, 0x7F, 0xF0, 0x17, 0x3D, 0x3E, 0x50, 0xBB, 0xFC, 0x51, 0x95, 0xC7, 0x07, 0x84, 0xF4,\n0xF3, 0x57, 0x38, 0x48, 0xE0, 0xD2, 0xF4, 0x90, 0x43, 0x7D, 0x26, 0x9C, 0x05, 0x1B, 0x44, 0xE7,\n0x79, 0x67, 0x53, 0x68, 0xB4, 0xCA, 0x72, 0x7F, 0x67, 0x03, 0xF6, 0x01, 0x20, 0x41, 0x48, 0x05,\n0x91, 0x5F, 0xF0, 0x8F, 0x52, 0xFD, 0xF8, 0x43, 0x7D, 0x29, 0xBE, 0xDA, 0x61, 0x46, 0x64, 0x43,\n0x7C, 0x7E, 0xD2, 0xEB, 0x80, 0xEC, 0x95, 0xD7, 0xDD, 0x9D, 0x38, 0x88, 0xD4, 0x8C, 0x3F, 0xF0,\n0x8F, 0x92, 0x10, 0x9F, 0x0F, 0x8A, 0xEA, 0x7D, 0x3E, 0x40, 0xA4, 0x17, 0x7E, 0x3C, 0x54, 0x96,\n0x4D, 0x7F, 0x68, 0x6B, 0xF9, 0x07, 0xF6, 0xC1, 0x2A, 0xCB, 0xE2, 0x03, 0x75, 0xFC, 0xC3, 0x27,\n0x44, 0x2C, 0xD4, 0x5B, 0xBB, 0xFC, 0x51, 0x38, 0x48, 0x6C, 0x8D, 0xF4, 0x55, 0xC5, 0x3F, 0x28,\n0x88, 0x48, 0x07, 0x5C, 0x44, 0x8F, 0xCF, 0xE6, 0x31, 0xED, 0x1E, 0x98, 0x72, 0x2D, 0x42, 0xDC,\n0xDF, 0xFA, 0x83, 0x7F, 0x00, 0x08, 0x84, 0xA8, 0x75, 0xD2, 0x57, 0xA5, 0xBA, 0xF1, 0x07, 0xE6,\n0xA7, 0x36, 0xED, 0x44, 0x42, 0x02, 0x03, 0xA1, 0xFC, 0x51, 0xE9, 0x17, 0xF5, 0x50, 0x3D, 0x1D,\n0x62, 0xC4, 0x85, 0xE9, 0xF3, 0x5D, 0x35, 0x2B, 0xDF, 0x3A, 0xA7, 0xBA, 0xF2, 0x39, 0x7C, 0x30,\n0x65, 0x3E, 0x21, 0x0E, 0x29, 0xF9, 0xF0, 0x09, 0x29, 0xAD, 0x60, 0x10, 0x87, 0xF0, 0x56, 0x40,\n0x21, 0xDD, 0x6B, 0xF0, 0x81, 0xAA, 0x80, 0xB4, 0xBF, 0xEE, 0xC0, 0x3F, 0xAC, 0x38, 0x04, 0x24,\n0x96, 0x0E, 0xA2, 0x8A, 0x48, 0x0D, 0x90, 0xDA, 0x4C, 0x20, 0x52, 0x8F, 0xAB, 0x6A, 0xAC, 0xB0,\n0x88, 0x3F, 0xB0, 0x0E, 0x76, 0xDF, 0x58, 0x7C, 0xA0, 0xDB, 0xA6, 0x7F, 0x00, 0x08, 0x1E, 0x52,\n0x2D, 0x0F, 0xFA, 0x84, 0xBC, 0x01, 0x8D, 0xC5, 0xA7, 0x4E, 0x4A, 0x78, 0x60, 0x21, 0xF2, 0x4E,\n0xFC, 0xE3, 0xA4, 0x5F, 0x9C, 0x7A, 0xC8, 0xC7, 0xFB, 0x54, 0x6F, 0xFA, 0xB4, 0xE2, 0x20, 0x55,\n0x13, 0xD9, 0xFD, 0x2E, 0xFF, 0x68, 0x22, 0x62, 0xF1, 0x81, 0x3E, 0x29, 0xE7, 0x17, 0x7C, 0x8C,\n0x09, 0xA1, 0xFC, 0x41, 0x8C, 0x9E, 0x06, 0xD4, 0xA9, 0x7F, 0x30, 0x20, 0x8F, 0x0F, 0x54, 0x29,\n0x7F, 0xF4, 0x64, 0xF1, 0x41, 0x6B, 0x85, 0x1F, 0x18, 0xC8, 0x32, 0x1C, 0xA9, 0x97, 0x07, 0xDB,\n0x84, 0x04, 0x22, 0x6A, 0x71, 0x69, 0x8D, 0x59, 0x95, 0x7C, 0x23, 0x2E, 0xC0, 0xB1, 0x49, 0x6F,\n0xAA, 0x7C, 0xF8, 0x84, 0xDC, 0x06, 0x1F, 0x00, 0x82, 0x20, 0x04, 0x3E, 0x56, 0x10, 0xF2, 0x6C,\n0x7C, 0x59, 0x44, 0x4F, 0xF1, 0x40, 0x04, 0x82, 0x7F, 0x34, 0xFB, 0x89, 0x87, 0x88, 0x0F, 0xB4,\n0x70, 0x90, 0x58, 0x66, 0xD5, 0xCA, 0x1F, 0x36, 0x21, 0x8F, 0xF0, 0x51, 0x57, 0xE1, 0x20, 0xD7,\n0x47, 0xC9, 0x20, 0x04, 0x3E, 0x4A, 0x0D, 0x72, 0x59, 0xE5, 0x7B, 0x97, 0x7F, 0xC5, 0xE3, 0x03,\n0x0D, 0xD2, 0x57, 0xA5, 0x5C, 0x3C, 0x5A, 0x45, 0xF5, 0xC5, 0x9A, 0xAA, 0x30, 0x13, 0xF5, 0x25,\n0x1E, 0xB2, 0x8F, 0x2E, 0x20, 0x24, 0xB3, 0x36, 0xAC, 0xAF, 0xA4, 0xC3, 0xD2, 0x3F, 0x78, 0x71,\n0x15, 0x1F, 0x10, 0xC2, 0xFA, 0xAA, 0x09, 0x08, 0x25, 0x43, 0xF8, 0xF0, 0x09, 0x89, 0xCF, 0x57,\n0x58, 0x08, 0x8C, 0x44, 0xBA, 0x37, 0xBE, 0x25, 0xE5, 0x8F, 0x46, 0x2F, 0x09, 0x91, 0x7F, 0x60,\n0x1E, 0x5C, 0x98, 0x62, 0x94, 0x4E, 0x6E, 0xBF, 0xEA, 0x13, 0xF2, 0x68, 0xF9, 0x07, 0x3A, 0x1A,\n0xCB, 0x2B, 0x54, 0x12, 0x12, 0xB3, 0x9B, 0x30, 0x7D, 0x94, 0xCB, 0x5A, 0x24, 0xB0, 0x8A, 0xBF,\n0x44, 0x41, 0x04, 0x3E, 0x06, 0x2A, 0xC2, 0xF3, 0x91, 0x2A, 0xE5, 0xF3, 0x01, 0x21, 0xA5, 0x7F,\n0xE0, 0x20, 0x6A, 0xEC, 0xE6, 0xBD, 0x51, 0x7A, 0xB7, 0x44, 0xE4, 0x2C, 0x39, 0x48, 0x40, 0x92,\n0x26, 0x13, 0x17, 0xE3, 0xC8, 0x03, 0x69, 0xD3, 0x6E, 0x06, 0xE6, 0xA2, 0xC2, 0x87, 0x4F, 0xC8,\n0xBB, 0x55, 0x40, 0x20, 0x04, 0x3E, 0xC6, 0x3A, 0x8D, 0xCF, 0xB1, 0x90, 0x3D, 0x9C, 0xC4, 0x1F,\n0xA8, 0x27, 0x36, 0x28, 0x9F, 0x0F, 0x0E, 0xCC, 0x82, 0x8F, 0x8A, 0x8A, 0xF0, 0x8F, 0x4B, 0xD8,\n0xC4, 0x07, 0x51, 0x65, 0xAB, 0x95, 0x7C, 0xF8, 0x84, 0x1C, 0x0D, 0x55, 0xE3, 0x0F, 0x30, 0xD1,\n0x74, 0x6F, 0xE7, 0xB2, 0x78, 0x37, 0x6F, 0x2A, 0xFE, 0xBE, 0xC7, 0x07, 0xB2, 0xFC, 0x03, 0x79,\n0xFE, 0x41, 0xBB, 0x2C, 0xFC, 0xA3, 0xE2, 0x20, 0x5C, 0xCB, 0x7E, 0xDB, 0xDD, 0xD9, 0x7C, 0x50,\n0x10, 0x89, 0x2C, 0x56, 0xCC, 0xA6, 0x7D, 0xCC, 0x33, 0x45, 0xB7, 0x5C, 0x8A, 0xD5, 0x29, 0x88,\n0xC0, 0xC7, 0x50, 0x75, 0x3E, 0x00, 0x04, 0x15, 0xE9, 0x5D, 0x9F, 0x90, 0x70, 0x09, 0x21, 0x80,\n0x85, 0x80, 0x49, 0x7A, 0x98, 0x2D, 0x64, 0xE6, 0xC3, 0xE8, 0xDC, 0x5E, 0x42, 0xF0, 0x41, 0xE3,\n0xAA, 0x74, 0x52, 0x54, 0xFF, 0x90, 0x53, 0x67, 0x78, 0x08, 0x7C, 0x98, 0x84, 0x1C, 0x1D, 0xFD,\n0x38, 0x2F, 0xAF, 0xFE, 0xFC, 0xB6, 0xEA, 0x19, 0xE5, 0x4B, 0xD5, 0xFA, 0x07, 0x5C, 0xE4, 0x0D,\n0x2D, 0xCA, 0x83, 0x86, 0x8A, 0xF4, 0x95, 0x4F, 0xC8, 0xA3, 0x75, 0x2C, 0x0B, 0xFF, 0x28, 0x1D,\n0x24, 0xB6, 0x79, 0x78, 0x26, 0xA4, 0x1D, 0x9E, 0xD7, 0x8A, 0xEA, 0xEA, 0x5C, 0x70, 0x63, 0x9E,\n0x69, 0x88, 0x31, 0x89, 0x82, 0x88, 0xC1, 0x07, 0xE9, 0x5E, 0xCA, 0xE7, 0x5D, 0x40, 0x88, 0x43,\n0xF4, 0x97, 0x2C, 0x2D, 0xED, 0x43, 0xC2, 0x42, 0x92, 0xEB, 0xE1, 0x20, 0x51, 0x54, 0x4F, 0x1A,\n0xF1, 0x41, 0xBA, 0xF7, 0xF9, 0xF6, 0x92, 0x81, 0x83, 0x50, 0x54, 0x57, 0x27, 0x7D, 0x65, 0x12,\n0x72, 0xED, 0xE9, 0x08, 0x1F, 0x2B, 0x08, 0xF9, 0x91, 0x84, 0x94, 0x7A, 0x39, 0xF3, 0x2B, 0x71,\n0x48, 0x1D, 0x23, 0x9E, 0xC6, 0xF8, 0x2D, 0x7C, 0x78, 0xC2, 0x3F, 0x2C, 0xE1, 0x1F, 0xD6, 0xC1,\n0x9C, 0x8F, 0xFD, 0x4E, 0x6A, 0xC6, 0x20, 0xC0, 0xB2, 0x48, 0x5F, 0x19, 0x3D, 0xE2, 0x10, 0x7E,\n0x14, 0xF5, 0x80, 0x79, 0x68, 0x7E, 0xB1, 0x60, 0x09, 0x63, 0x81, 0x0F, 0x8B, 0x10, 0xC2, 0x8F,\n0x1E, 0x20, 0x94, 0x0C, 0xCF, 0x6D, 0xE1, 0x1F, 0x24, 0x12, 0x66, 0xAA, 0x79, 0x91, 0xE8, 0xA4,\n0x58, 0x5F, 0x59, 0xAB, 0x2C, 0xCD, 0xFC, 0x8E, 0x81, 0x94, 0x81, 0x08, 0x7C, 0x18, 0x84, 0x78,\n0x78, 0x10, 0xA9, 0x83, 0x87, 0x47, 0x08, 0xE5, 0xF3, 0x87, 0x6A, 0x8C, 0xBE, 0x78, 0xBD, 0xAC,\n0x7F, 0xC0, 0xC4, 0x03, 0x68, 0x41, 0x4C, 0x26, 0xE4, 0xE8, 0x2B, 0xA7, 0x17, 0x6C, 0x05, 0x1F,\n0x6E, 0x9B, 0xFD, 0xA3, 0xEB, 0x20, 0xEC, 0xDD, 0x71, 0x7B, 0xA2, 0xE9, 0x21, 0xAC, 0xAF, 0x18,\n0x67, 0x2A, 0x58, 0xB0, 0xC4, 0x5C, 0x7B, 0x82, 0x0F, 0x8B, 0x10, 0xF8, 0x68, 0x00, 0x82, 0x08,\n0x3F, 0x3C, 0x11, 0x9F, 0x63, 0x1C, 0x1B, 0x6D, 0x78, 0x89, 0xC4, 0x53, 0x6E, 0x2F, 0xB1, 0x7A,\n0xE2, 0x43, 0x07, 0xB4, 0x6B, 0x20, 0x1C, 0xF6, 0xE0, 0xC3, 0x3E, 0xAD, 0x00, 0x62, 0xE9, 0x13,\n0x97, 0x0F, 0x02, 0x11, 0x2E, 0xFC, 0x2C, 0x94, 0x1A, 0xBE, 0x50, 0xD4, 0x3F, 0x18, 0x5B, 0xE9,\n0x2F, 0xF8, 0xF0, 0x84, 0x7F, 0x58, 0xC2, 0x3F, 0xAC, 0x36, 0xE3, 0x61, 0x39, 0x88, 0x32, 0x2E,\n0x7B, 0xCA, 0xE7, 0x26, 0x21, 0xCF, 0x97, 0x5C, 0xA1, 0xC2, 0xEC, 0x8A, 0x78, 0x84, 0x3F, 0xC8,\n0x1D, 0x3C, 0xEC, 0x7F, 0x27, 0xBD, 0x0B, 0x08, 0xC2, 0x3F, 0x3C, 0x40, 0xDE, 0x90, 0x96, 0xD6,\n0x06, 0x0F, 0x7B, 0xCA, 0x85, 0xF1, 0x34, 0xC9, 0x3B, 0x22, 0x94, 0x0C, 0xA7, 0xBB, 0x77, 0xDB,\n0x21, 0x08, 0x63, 0x6C, 0xDC, 0xBE, 0x3B, 0x6C, 0x53, 0x07, 0x0F, 0x4F, 0x7F, 0x5A, 0x2B, 0x1A,\n0xD2, 0xBD, 0x78, 0x01, 0x93, 0x5D, 0x3B, 0x04, 0x19, 0xA5, 0x87, 0x14, 0x74, 0x40, 0x03, 0x6F,\n0x45, 0xF0, 0xE1, 0xE9, 0x7A, 0x9D, 0x48, 0x5F, 0x59, 0xED, 0xF7, 0x00, 0xC2, 0x72, 0x10, 0x69,\n0xAF, 0xB3, 0x7B, 0xF0, 0xFB, 0x7E, 0x79, 0x19, 0x3E, 0x59, 0xB4, 0x64, 0xB1, 0xCA, 0x02, 0x10,\n0xCF, 0x43, 0xDE, 0x75, 0x01, 0x21, 0xBF, 0x6B, 0xE9, 0x4D, 0x70, 0x1D, 0xE2, 0x5E, 0x13, 0x7C,\n0x6F, 0xB6, 0xBD, 0x64, 0x8A, 0x17, 0x4A, 0x7B, 0x1F, 0xFC, 0xBE, 0x27, 0x9D, 0x3B, 0x76, 0x10,\n0x49, 0xF5, 0x41, 0xFF, 0xB4, 0xEA, 0x9D, 0xD7, 0xEB, 0xF4, 0xC9, 0x71, 0x15, 0x20, 0x31, 0xBD,\n0x11, 0x74, 0xD4, 0x3D, 0x64, 0x5B, 0x17, 0xEF, 0x87, 0xAB, 0xF5, 0x80, 0x7C, 0x72, 0xBD, 0x4E,\n0x3A, 0x92, 0xAB, 0x08, 0xD9, 0x7D, 0x4A, 0x65, 0xB0, 0xEB, 0x20, 0xDA, 0xB4, 0x6A, 0x26, 0x00,\n0x71, 0xFA, 0xC7, 0x17, 0xCF, 0xAB, 0x2A, 0x66, 0x13, 0x29, 0xA1, 0x79, 0xD8, 0x30, 0xF5, 0xCE,\n0x57, 0xE9, 0x76, 0x08, 0x08, 0x61, 0xFA, 0x1A, 0x42, 0x9E, 0x41, 0x38, 0x90, 0x8F, 0x26, 0x0C,\n0xD1, 0x8B, 0xA9, 0xCD, 0x09, 0xB9, 0xC3, 0xD3, 0xE1, 0xE2, 0xE2, 0xE0, 0x20, 0xC2, 0x5D, 0x59,\n0x77, 0xBF, 0x71, 0x8C, 0x47, 0x06, 0xC2, 0x1D, 0xBC, 0x1E, 0x1E, 0x8F, 0xD7, 0x2F, 0x56, 0xE1,\n0xF1, 0xC9, 0x97, 0x9F, 0xAC, 0xC0, 0xE3, 0x47, 0x96, 0x58, 0x58, 0x01, 0x7A, 0x60, 0xBE, 0x27,\n0x3A, 0xE4, 0x20, 0x5F, 0xF1, 0x66, 0x96, 0x63, 0x05, 0x1A, 0x68, 0xE5, 0x12, 0x4B, 0x1F, 0x7E,\n0x0D, 0x22, 0x3A, 0x34, 0x98, 0xB1, 0x19, 0x84, 0x50, 0x35, 0x1F, 0x3A, 0x88, 0xCE, 0xEC, 0x7E,\n0xC5, 0x0A, 0xEB, 0x42, 0x13, 0x27, 0xA7, 0x42, 0xF1, 0x89, 0xBC, 0xC5, 0x8B, 0x1A, 0x8A, 0x52,\n0xC3, 0x2A, 0x42, 0x74, 0x23, 0x89, 0x05, 0xC8, 0xD5, 0xCA, 0x20, 0x9D, 0x72, 0xE0, 0xA2, 0x9C,\n0x39, 0x87, 0x21, 0xC4, 0x25, 0x81, 0xBF, 0xF0, 0x50, 0xF3, 0x83, 0xF4, 0xDD, 0x44, 0xC8, 0x2E,\n0x10, 0x19, 0x1A, 0x08, 0x3F, 0x23, 0xE5, 0xF1, 0xA1, 0x29, 0xA0, 0x6D, 0x0D, 0x20, 0x9F, 0xBC,\n0xA7, 0x79, 0x6F, 0xCE, 0xC7, 0x3F, 0x5F, 0x3F, 0x50, 0x03, 0x41, 0xCC, 0xFF, 0x52, 0xF1, 0x4B,\n0x7B, 0x87, 0x8A, 0x80, 0x7D, 0x65, 0x90, 0x3E, 0xD1, 0x0D, 0x21, 0x0E, 0x1F, 0x6A, 0x7E, 0x10,\n0x52, 0xDC, 0x64, 0xD2, 0x77, 0x90, 0xC9, 0x3F, 0xA6, 0x33, 0x6B, 0x4F, 0x84, 0xC3, 0x45, 0x6A,\n0x69, 0x6E, 0x11, 0x89, 0xCF, 0xFE, 0x11, 0x0D, 0x70, 0x42, 0x2B, 0xF8, 0x10, 0x20, 0xB7, 0x06,\n0x20, 0xC2, 0x43, 0xCD, 0x27, 0x64, 0x83, 0xC2, 0xE6, 0x32, 0x0F, 0x73, 0x18, 0xC2, 0x72, 0x2B,\n0x0F, 0x17, 0x09, 0x10, 0xD7, 0x43, 0xE4, 0x1F, 0x6A, 0x3A, 0x92, 0x0A, 0xEA, 0x0C, 0x03, 0x49,\n0x7C, 0xFC, 0xAE, 0xCD, 0xF5, 0x8F, 0x34, 0x05, 0x5E, 0xBC, 0xB8, 0x7E, 0xCF, 0xC6, 0x63, 0xDA,\n0xF0, 0x10, 0xAF, 0x10, 0x52, 0x86, 0x14, 0x88, 0x24, 0xD6, 0x83, 0xFC, 0xE3, 0xAB, 0x10, 0x7F,\n0x0A, 0x4C, 0xFC, 0x65, 0x0C, 0x65, 0xAE, 0x12, 0x9A, 0x9F, 0x27, 0x7D, 0x76, 0x0D, 0x36, 0x1F,\n0xBA, 0x76, 0x68, 0x70, 0xFD, 0x23, 0x8E, 0x7D, 0xDF, 0x40, 0xF8, 0xD3, 0xE9, 0xAC, 0xFA, 0x84,\n0xC8, 0x3F, 0x52, 0xBB, 0x20, 0x59, 0x15, 0xB3, 0x4C, 0x1B, 0x1E, 0x72, 0xD0, 0xC3, 0x12, 0x11,\n0x77, 0x79, 0x25, 0x3E, 0x52, 0x6B, 0x01, 0x02, 0x1F, 0x01, 0xC8, 0xF4, 0x0F, 0xDC, 0x1A, 0xF1,\n0x39, 0x70, 0xCC, 0x1F, 0x4E, 0x63, 0x49, 0x32, 0xC6, 0xA7, 0xF5, 0x55, 0x34, 0x8B, 0x90, 0x8F,\n0x75, 0x00, 0x03, 0x91, 0xCB, 0x38, 0xC0, 0x6D, 0x03, 0x91, 0xE2, 0x14, 0x69, 0x73, 0xF2, 0x58,\n0xE2, 0x23, 0x4D, 0x02, 0xC9, 0xE4, 0xE3, 0x5A, 0xF6, 0x91, 0x06, 0x6B, 0x3E, 0xFE, 0x28, 0xFB,\n0xC8, 0xFA, 0x36, 0xE6, 0x76, 0x41, 0x47, 0xB1, 0x97, 0xD8, 0x50, 0xFF, 0x83, 0xD7, 0x2A, 0xBE,\n0xC1, 0xEA, 0x8C, 0x4A, 0xA1, 0xF5, 0x79, 0x32, 0xDE, 0xEF, 0x69, 0x34, 0xF9, 0xC8, 0x06, 0xE2,\n0x12, 0xC2, 0xB1, 0x6F, 0x1B, 0x08, 0x0B, 0xE1, 0x99, 0x0F, 0x35, 0xEF, 0x4A, 0x79, 0xF1, 0xDC,\n0xE6, 0x82, 0x9A, 0xB6, 0x27, 0xB2, 0x43, 0x07, 0x1C, 0x64, 0x1A, 0xD0, 0x3A, 0x3E, 0xCE, 0xAF,\n0xFA, 0x80, 0xE8, 0x0D, 0xB7, 0xD1, 0xB8, 0x15, 0xCB, 0xE1, 0x83, 0xFC, 0x41, 0x8C, 0x84, 0x51,\n0x07, 0xEC, 0x90, 0xAF, 0x89, 0x87, 0x74, 0x6B, 0x20, 0x00, 0x72, 0xF7, 0x69, 0x5C, 0x7C, 0x5A,\n0x0E, 0xA2, 0xE1, 0x32, 0x5F, 0xC5, 0x62, 0x95, 0x65, 0x84, 0xE7, 0x2F, 0xD4, 0x02, 0x12, 0xCB,\n0x3F, 0xC2, 0x41, 0x2C, 0x42, 0x3E, 0x49, 0xCB, 0x2B, 0x08, 0xA9, 0xDE, 0x39, 0x02, 0x09, 0xB3,\n0x7F, 0xB0, 0xCA, 0x6A, 0xDD, 0x86, 0x45, 0x11, 0x04, 0x1D, 0x87, 0x4A, 0x9F, 0x3A, 0x31, 0xA2,\n0x66, 0xE1, 0x11, 0x0E, 0xA2, 0xEE, 0xF1, 0xC1, 0xB1, 0xDF, 0xB5, 0x1C, 0x04, 0x50, 0xE2, 0xBC,\n0x9A, 0x1E, 0x22, 0x3E, 0x68, 0xD4, 0x41, 0x58, 0x9A, 0x24, 0x51, 0x04, 0x59, 0xC8, 0xE6, 0x23,\n0x5A, 0x0D, 0x10, 0xFC, 0x83, 0x66, 0x54, 0xD3, 0xDF, 0x6C, 0x10, 0x8C, 0x30, 0x92, 0xEA, 0x8D,\n0xB8, 0xE4, 0x62, 0x49, 0xC8, 0x90, 0x8F, 0xDD, 0x7F, 0x09, 0xE1, 0xE8, 0x36, 0x1C, 0x24, 0xAE,\n0x60, 0x69, 0x50, 0x73, 0xFD, 0x23, 0xAE, 0x93, 0x8E, 0x7F, 0xA8, 0xE5, 0x79, 0xA6, 0xB5, 0xFC,\n0xBA, 0x9B, 0x15, 0xA9, 0xF2, 0x15, 0x01, 0xB7, 0x3A, 0x7C, 0x30, 0x04, 0x1D, 0xE0, 0xB4, 0x7C,\n0x41, 0x5D, 0xFF, 0x51, 0xF8, 0xFB, 0xD3, 0x00, 0x24, 0x16, 0x58, 0x96, 0x87, 0x64, 0x2E, 0x18,\n0x2C, 0xFF, 0x50, 0x8B, 0x71, 0xE0, 0x20, 0xBF, 0xE1, 0x1F, 0x0E, 0x21, 0x1A, 0x96, 0x13, 0x07,\n0x32, 0xF2, 0xF5, 0x97, 0x82, 0x61, 0xBC, 0xB6, 0xD4, 0x9B, 0x31, 0x1F, 0x34, 0xFD, 0xB3, 0x39,\n0x4D, 0x40, 0xF0, 0x0F, 0x3C, 0xC4, 0xE6, 0x03, 0x9E, 0x27, 0x28, 0x58, 0x71, 0x85, 0x1B, 0x6A,\n0x4C, 0xE9, 0xAB, 0xDC, 0xE2, 0x61, 0x80, 0x88, 0x0E, 0x1D, 0x80, 0xDC, 0x11, 0x87, 0xD4, 0x1D,\n0xE4, 0xF9, 0x12, 0xF6, 0x9B, 0x86, 0x49, 0x42, 0xC0, 0xF4, 0x8F, 0xFC, 0x60, 0x84, 0xE7, 0x79,\n0xBB, 0x56, 0xD7, 0x83, 0x75, 0xBB, 0x3B, 0xDA, 0x56, 0x84, 0x51, 0x84, 0x7F, 0x80, 0x08, 0x18,\n0xF1, 0xA6, 0xA2, 0x88, 0x8E, 0x1E, 0x46, 0x81, 0x88, 0x88, 0x8E, 0xF5, 0x95, 0xBA, 0xE1, 0x21,\n0x2F, 0xE2, 0xA8, 0x44, 0x1B, 0x45, 0xEA, 0x99, 0x0F, 0x86, 0xDF, 0x07, 0x06, 0x12, 0x78, 0x70,\n0x76, 0x2F, 0x1C, 0xFF, 0xC0, 0x43, 0x9E, 0x97, 0x2A, 0x2C, 0xEE, 0x99, 0x81, 0x08, 0x42, 0x1C,\n0xFF, 0xA0, 0xB5, 0x00, 0xE1, 0x2D, 0x96, 0x87, 0xC0, 0x47, 0x25, 0x59, 0x35, 0x1B, 0xC7, 0x01,\n0x3F, 0x29, 0xFC, 0x63, 0x44, 0x48, 0x1C, 0x44, 0x9A, 0x0C, 0xA5, 0xE3, 0x20, 0x71, 0xF1, 0xCA,\n0x8A, 0xDD, 0xDE, 0x29, 0x0D, 0xE3, 0x50, 0xE7, 0x71, 0xE8, 0x1F, 0xA9, 0x67, 0x50, 0x34, 0xE5,\n0x2C, 0x3E, 0x10, 0x13, 0x9C, 0x2C, 0xD6, 0x4F, 0xF8, 0x87, 0xB0, 0x00, 0x0F, 0xA9, 0xA4, 0x03,\n0x11, 0x9E, 0xA3, 0x6F, 0xBB, 0x84, 0xE8, 0xD3, 0x86, 0x73, 0xF0, 0xF9, 0xFB, 0x7C, 0xC4, 0xE1,\n0xE1, 0x08, 0x75, 0x11, 0x99, 0xC3, 0x8F, 0xDF, 0x08, 0x44, 0x5A, 0x06, 0x12, 0xE9, 0xAB, 0xA2,\n0xF5, 0x0A, 0x22, 0x29, 0x3E, 0xA7, 0xA5, 0x41, 0x57, 0x5C, 0x2A, 0xE8, 0x4B, 0x0B, 0x79, 0x5A,\n0x4B, 0x88, 0xF0, 0x28, 0x5B, 0x1D, 0x90, 0xD3, 0xF7, 0x75, 0x93, 0x59, 0x9B, 0xAA, 0x96, 0x61,\n0xD2, 0x81, 0x0D, 0xFB, 0xF0, 0x08, 0xD1, 0x51, 0x53, 0x2F, 0x9A, 0x0E, 0x6F, 0xCD, 0x40, 0xD4,\n0xE7, 0xE5, 0xEF, 0x6F, 0x60, 0xA2, 0x87, 0xEE, 0xF2, 0x4A, 0x5B, 0x6A, 0xEC, 0x74, 0xF0, 0x08,\n0xEF, 0x48, 0x43, 0x7E, 0xD4, 0x94, 0xEB, 0xF0, 0xE1, 0xFF, 0x48, 0xFA, 0x4F, 0xB9, 0xFC, 0x11,\n0x82, 0x14, 0x72, 0x59, 0xEC, 0xC4, 0xFA, 0x0A, 0x3E, 0xD0, 0x03, 0x84, 0x54, 0xFC, 0x03, 0x36,\n0x62, 0x47, 0xC3, 0x38, 0xFE, 0x58, 0xB4, 0x2F, 0x06, 0xE1, 0x87, 0xE0, 0x00, 0x0F, 0xA9, 0x6D,\n0x20, 0xF0, 0x41, 0xDB, 0x77, 0xCA, 0x1F, 0xB5, 0xC6, 0xCF, 0x7E, 0x70, 0x47, 0x2C, 0xF5, 0x75,\n0x93, 0x10, 0xF8, 0x28, 0x5B, 0x0D, 0x10, 0xE1, 0x70, 0xDA, 0xDA, 0x84, 0xB4, 0xF1, 0xD8, 0x87,\n0x6F, 0xC4, 0x18, 0x1B, 0x7C, 0x18, 0x71, 0xC8, 0xC5, 0xC7, 0x5A, 0x52, 0x55, 0xDA, 0x3E, 0xA5,\n0xAA, 0x2A, 0x77, 0xF2, 0x62, 0x1B, 0x41, 0x89, 0xB6, 0xE9, 0x59, 0x1D, 0x8F, 0xF0, 0x8F, 0xC2,\n0x41, 0xD4, 0xDB, 0x7C, 0x44, 0xF4, 0xC1, 0x24, 0x4B, 0x81, 0x88, 0xC5, 0x07, 0x22, 0x88, 0x60,\n0xC6, 0x93, 0xBF, 0xC2, 0x40, 0x42, 0xE5, 0x7B, 0xF1, 0x8F, 0xBA, 0x7A, 0xFE, 0x11, 0xC1, 0xD3,\n0x82, 0x13, 0x27, 0xFE, 0xC0, 0x44, 0x1A, 0x1E, 0x52, 0x86, 0x1F, 0xEC, 0x55, 0x0D, 0xE4, 0x92,\n0xFC, 0x6E, 0xD1, 0x8C, 0xE5, 0x15, 0xED, 0x22, 0x27, 0xB3, 0x66, 0xF1, 0x63, 0xB7, 0x4D, 0xF5,\n0xCA, 0x1F, 0x15, 0x6B, 0x38, 0x01, 0xE4, 0x0A, 0x90, 0xCA, 0xF7, 0xAE, 0xE2, 0x83, 0xD8, 0x5C,\n0xA2, 0x24, 0x92, 0xBE, 0x52, 0xB5, 0xB5, 0xD3, 0xBB, 0xB5, 0xEB, 0xCC, 0xE7, 0x5C, 0x97, 0x16,\n0x55, 0xA7, 0x30, 0xF9, 0x62, 0x99, 0xA5, 0x5E, 0xE7, 0x03, 0xE3, 0x60, 0xA7, 0xE3, 0x21, 0x50,\n0xF1, 0xBC, 0xA3, 0x0D, 0x0F, 0x19, 0xF0, 0x81, 0x98, 0xED, 0x04, 0xDE, 0xF2, 0x0F, 0xB0, 0xD8,\n0x4E, 0x49, 0x5E, 0x3C, 0x04, 0xA0, 0xD8, 0x6B, 0xF2, 0x41, 0x1C, 0xD2, 0xF2, 0x0F, 0x7D, 0xF8,\n0xE8, 0xC1, 0x8B, 0x13, 0x7F, 0xD0, 0x7A, 0xE9, 0x5D, 0x8E, 0x3F, 0x7B, 0x15, 0x07, 0x01, 0x0F,\n0x6B, 0x95, 0x55, 0xF3, 0x0F, 0x0A, 0x22, 0x71, 0xEF, 0x06, 0xEB, 0xF8, 0xAE, 0x3C, 0xFF, 0xA0,\n0x2D, 0x01, 0xA9, 0xBC, 0x81, 0x50, 0xDD, 0xE2, 0x03, 0xE1, 0x7C, 0xB1, 0x46, 0xC4, 0x3F, 0xAA,\n0xAD, 0xE2, 0x1F, 0x1C, 0xB6, 0xD2, 0x42, 0xF6, 0xA2, 0x81, 0x5B, 0x7D, 0x62, 0x04, 0x89, 0x38,\n0x37, 0xC9, 0x43, 0xB2, 0x1A, 0xE5, 0x41, 0x0C, 0x84, 0xBD, 0x56, 0x1C, 0x02, 0x1C, 0x5C, 0x83,\n0x23, 0xD6, 0x15, 0x22, 0x15, 0x3E, 0x88, 0xA0, 0x4B, 0x15, 0x56, 0x40, 0xFA, 0x2A, 0x6F, 0x41,\n0x07, 0xC0, 0x40, 0x14, 0x37, 0x3C, 0x5A, 0xBF, 0x58, 0x11, 0xC1, 0x75, 0xE9, 0x20, 0xDA, 0xBA,\n0xE5, 0x8F, 0xE8, 0x1C, 0xA6, 0x9A, 0x87, 0x04, 0x0F, 0xBF, 0x85, 0x6F, 0xA7, 0xDD, 0xB4, 0x23,\n0xED, 0x42, 0xD4, 0x71, 0x5B, 0x7C, 0xA4, 0xC1, 0xF2, 0x0F, 0x5A, 0x51, 0x65, 0x23, 0x6C, 0x6F,\n0xC8, 0x08, 0xCF, 0x0B, 0x42, 0x00, 0xE4, 0xEA, 0x7D, 0x8B, 0x10, 0xCA, 0x1F, 0x3D, 0x85, 0xF9,\n0x11, 0x9D, 0x07, 0x1F, 0xCD, 0x2F, 0x5A, 0xF2, 0xA1, 0x63, 0xD8, 0x6C, 0x93, 0x89, 0x24, 0x71,\n0x4D, 0x92, 0x7F, 0xC0, 0x04, 0x68, 0x68, 0x27, 0xB5, 0x3A, 0x1F, 0x8F, 0x85, 0x83, 0x74, 0x3C,\n0x24, 0xD6, 0x55, 0xA9, 0xC7, 0x63, 0x46, 0x44, 0x7B, 0x95, 0x55, 0x16, 0xE5, 0x41, 0x74, 0x5A,\n0x10, 0x81, 0x14, 0xAC, 0x23, 0x08, 0x91, 0x18, 0x00, 0xCA, 0xF9, 0xFD, 0xD5, 0x0F, 0x3F, 0x9E,\n0x7C, 0x9E, 0xF8, 0xC8, 0x64, 0x79, 0x17, 0xB4, 0x57, 0xF8, 0xE0, 0xD0, 0xD0, 0x28, 0xAA, 0x9F,\n0xF0, 0xC1, 0x31, 0x4F, 0x5A, 0xE6, 0x49, 0x76, 0x85, 0x81, 0xD4, 0xF9, 0x20, 0xDD, 0x7B, 0x3A,\n0x17, 0x7A, 0x2D, 0x82, 0x90, 0xBD, 0x46, 0x6D, 0x7B, 0xC3, 0x43, 0x1C, 0x3E, 0x68, 0x00, 0xD2,\n0x7D, 0x1B, 0xE9, 0x5E, 0xF8, 0xE8, 0x8B, 0x0A, 0x61, 0xEC, 0xF1, 0xA5, 0xAC, 0x40, 0xE4, 0x6E,\n0xD7, 0xE6, 0x63, 0x1A, 0x76, 0xA4, 0x48, 0xA6, 0x91, 0xD3, 0xA2, 0x53, 0x05, 0x1A, 0xA1, 0xB2,\n0xA8, 0x8E, 0x7F, 0x94, 0x0E, 0x12, 0xBD, 0x51, 0x3E, 0x8F, 0xAE, 0x16, 0x74, 0xCC, 0x61, 0x49,\n0x59, 0x1E, 0xC4, 0x3F, 0xAA, 0x8A, 0xF9, 0x5E, 0x94, 0x3F, 0x70, 0x91, 0x85, 0x85, 0x88, 0x17,\n0x09, 0xA4, 0x48, 0xEF, 0xB6, 0x08, 0x29, 0x8B, 0xEA, 0x24, 0xDF, 0xD4, 0xFB, 0x1E, 0x82, 0x7D,\n0xA8, 0x55, 0xFC, 0x23, 0x31, 0x92, 0x8E, 0x20, 0x07, 0x33, 0x71, 0x00, 0x10, 0x91, 0xC7, 0x82,\n0x18, 0xAE, 0x65, 0xD9, 0x3F, 0xEE, 0x3A, 0x8D, 0x65, 0xD6, 0xD0, 0x3F, 0xF0, 0x10, 0x52, 0x57,\n0x86, 0x4C, 0x3E, 0x28, 0xAA, 0x07, 0x20, 0xDA, 0xED, 0x12, 0x72, 0x4B, 0xBA, 0x97, 0xF4, 0xEE,\n0x40, 0x07, 0xC6, 0x8B, 0xC3, 0xB0, 0x2D, 0x7E, 0xED, 0x4B, 0x60, 0xD0, 0x6E, 0xF2, 0x90, 0x4B,\n0x0C, 0x24, 0xF0, 0xE0, 0xEC, 0x84, 0xF4, 0xF4, 0xF9, 0xD7, 0xC7, 0xBD, 0x58, 0xF0, 0xD1, 0x75,\n0x90, 0x72, 0x99, 0x55, 0x5C, 0x76, 0xA5, 0x28, 0x47, 0xCF, 0xBB, 0x5F, 0xFE, 0x4B, 0xDB, 0xF9,\n0xBC, 0xB6, 0x53, 0x84, 0x61, 0x1C, 0x4F, 0xA2, 0x44, 0xC8, 0xA1, 0x60, 0xC5, 0x6B, 0x0D, 0x41,\n0x0F, 0xAD, 0x98, 0xAF, 0x52, 0x45, 0x44, 0x10, 0x24, 0x2A, 0x39, 0x79, 0xF0, 0x5E, 0x6C, 0xE0,\n0x1B, 0xE8, 0xCD, 0x8B, 0x1A, 0x44, 0x08, 0x78, 0x13, 0x84, 0x1E, 0xFD, 0x63, 0x7D, 0x76, 0xE6,\n0x9D, 0x7E, 0xCC, 0x74, 0x76, 0xF6, 0x59, 0x7F, 0x3C, 0x33, 0x3B, 0xBB, 0xC9, 0xB7, 0xC6, 0xED,\n0x66, 0x3E, 0x79, 0xE6, 0x7D, 0xDF, 0x6D, 0xFB, 0xB0, 0xB3, 0x96, 0x57, 0xB5, 0x87, 0x04, 0x26,\n0xBF, 0x08, 0x05, 0x1C, 0x04, 0x0B, 0x81, 0x1B, 0xEE, 0xD8, 0xA2, 0x3C, 0xD8, 0x56, 0x82, 0xB3,\n0xB6, 0x0F, 0x88, 0x68, 0x45, 0x21, 0xAB, 0xDA, 0x3E, 0x46, 0x1D, 0x24, 0x76, 0x75, 0xFC, 0xC1,\n0xA5, 0x0F, 0xC1, 0x4B, 0x8E, 0x43, 0x70, 0x10, 0xF8, 0x30, 0x3C, 0x04, 0x3E, 0xBA, 0x1E, 0x42,\n0xB2, 0xD4, 0xA1, 0xE4, 0x77, 0x8B, 0x0F, 0x5A, 0x06, 0x84, 0x30, 0xBE, 0xD3, 0x44, 0x08, 0x7C,\n0x58, 0x8A, 0xDB, 0xF3, 0x29, 0x7F, 0x38, 0x1E, 0xB2, 0xA4, 0xFC, 0xD1, 0x69, 0x9F, 0x91, 0xCB,\n0xCA, 0x6F, 0x43, 0x58, 0x47, 0xC5, 0x0A, 0x2A, 0x80, 0xC8, 0x4C, 0x02, 0x82, 0x56, 0x16, 0x2B,\n0x9E, 0x86, 0x10, 0xFC, 0x83, 0x55, 0x7C, 0x6C, 0x92, 0x76, 0x69, 0x58, 0x9C, 0x85, 0xE7, 0x2C,\n0xB0, 0x46, 0x75, 0x1E, 0x7F, 0x94, 0xAD, 0x0E, 0x42, 0x18, 0xD0, 0x04, 0x1F, 0x14, 0x44, 0x48,\n0x5F, 0xC1, 0x43, 0x8C, 0x74, 0x3C, 0x04, 0xFF, 0xE8, 0x3A, 0x48, 0x5D, 0x10, 0xE1, 0x52, 0x87,\n0x6F, 0x6B, 0x8B, 0x03, 0x50, 0x29, 0xD5, 0x73, 0xF1, 0x51, 0xA5, 0x26, 0xA7, 0x42, 0xF5, 0xA5,\n0xD1, 0xEA, 0x10, 0xDD, 0x27, 0x64, 0x7A, 0xD2, 0xAB, 0x0F, 0x80, 0xE8, 0xD0, 0x68, 0xE1, 0x21,\n0x2E, 0x1F, 0x54, 0x39, 0x49, 0x5F, 0x8D, 0xB7, 0x2F, 0x07, 0x0F, 0xE1, 0xF6, 0x2B, 0xA3, 0xAD,\n0x3F, 0x39, 0x44, 0xFD, 0x43, 0xE2, 0x7D, 0x89, 0x5D, 0x79, 0x92, 0xF6, 0x7E, 0xA3, 0x7C, 0xAE,\n0xDE, 0x30, 0x90, 0x33, 0x42, 0x32, 0x07, 0xEA, 0x95, 0x87, 0x64, 0x3A, 0x18, 0x76, 0x95, 0x7F,\n0xB8, 0x84, 0x54, 0x99, 0x2B, 0x0D, 0x80, 0x01, 0x39, 0x46, 0xF8, 0xD1, 0x2C, 0xAA, 0x93, 0xBE,\n0xA2, 0x83, 0x0A, 0x71, 0x3B, 0x7C, 0x4C, 0x38, 0x08, 0x05, 0x11, 0xEC, 0xA3, 0x8E, 0x41, 0xB8,\n0xFC, 0xC5, 0x46, 0xAA, 0xF2, 0x79, 0xBF, 0x7D, 0x7B, 0xB3, 0x34, 0xFD, 0x83, 0xA2, 0x7A, 0x8E,\n0x41, 0x5C, 0x42, 0x48, 0x5F, 0x39, 0x4D, 0x80, 0xBC, 0x6D, 0x13, 0xF2, 0xFB, 0x0C, 0xFF, 0x78,\n0x35, 0xD2, 0xD2, 0xE0, 0x61, 0x2C, 0xB3, 0xC4, 0x87, 0x85, 0x47, 0x8A, 0xD4, 0x2F, 0x28, 0x9F,\n0xA3, 0xF3, 0x77, 0x0C, 0x1D, 0x33, 0x1E, 0xD8, 0x05, 0x9F, 0x93, 0xDA, 0x55, 0x1F, 0x94, 0x10,\n0xC2, 0xDD, 0x19, 0xD1, 0x8B, 0x7F, 0x68, 0x47, 0xD0, 0xAE, 0x2D, 0xF8, 0xC0, 0x3E, 0x2C, 0x42,\n0x82, 0x00, 0x46, 0x76, 0x0C, 0x92, 0xCB, 0x07, 0xE9, 0xDE, 0xF0, 0x8F, 0x36, 0x18, 0x3C, 0x13,\n0x3D, 0xF8, 0xE8, 0x1B, 0x48, 0x5D, 0x54, 0x4F, 0xD6, 0x4D, 0xB8, 0x71, 0x24, 0x08, 0x89, 0xE7,\n0x8A, 0xB7, 0x54, 0xE5, 0x8F, 0xA9, 0x26, 0x0F, 0xB1, 0xF1, 0x18, 0xAA, 0xCF, 0xD4, 0xA5, 0x3D,\n0x51, 0xFE, 0xF0, 0x00, 0x39, 0x69, 0xF4, 0x3D, 0xE4, 0x95, 0x39, 0xE2, 0xF6, 0x2B, 0xA7, 0x25,\n0xFF, 0x58, 0x7B, 0x80, 0x08, 0x91, 0x12, 0x7E, 0x60, 0xEE, 0xDA, 0x78, 0x8F, 0x30, 0x8F, 0x40,\n0x28, 0xC2, 0x8F, 0x9E, 0x83, 0xF0, 0x64, 0x26, 0x64, 0x41, 0xFD, 0x99, 0x51, 0x1B, 0xBB, 0x18,\n0x32, 0x21, 0xBB, 0x7B, 0x5F, 0xF8, 0x07, 0xDE, 0x81, 0x8F, 0x3C, 0x7B, 0x02, 0x3E, 0x7C, 0x42,\n0x84, 0x47, 0x1D, 0x72, 0x68, 0xE4, 0x21, 0xC7, 0xAB, 0xE0, 0xA3, 0x19, 0x82, 0x70, 0x5D, 0x78,\n0x84, 0x7F, 0x10, 0xEE, 0x55, 0x16, 0x82, 0x8D, 0x27, 0x44, 0xF0, 0x0F, 0x6F, 0x95, 0xE5, 0xCC,\n0x17, 0x0A, 0x22, 0xF3, 0x94, 0xF9, 0x30, 0x67, 0xBD, 0xE5, 0x20, 0x24, 0xB3, 0x5E, 0x79, 0x75,\n0x16, 0x1E, 0x9E, 0x7F, 0x50, 0x1C, 0xFD, 0x56, 0x0E, 0x6B, 0xB6, 0xCF, 0xF4, 0x97, 0x42, 0x0A,\n0x1E, 0x0D, 0x1D, 0x9F, 0x3F, 0x56, 0xF9, 0xDC, 0xD7, 0x40, 0x08, 0xF3, 0xAB, 0xF5, 0x09, 0x0C,\n0x2D, 0xE1, 0x21, 0xBF, 0xDE, 0x2B, 0x42, 0xB0, 0x25, 0x3C, 0xC6, 0xF4, 0x8B, 0x02, 0xF7, 0xB4,\n0xC5, 0x71, 0xDA, 0xCD, 0xE2, 0x43, 0x27, 0x52, 0xAD, 0xAF, 0x5A, 0x11, 0x08, 0x47, 0x2F, 0x56,\n0xE2, 0x63, 0x8E, 0x12, 0x1F, 0x78, 0x86, 0xC4, 0x67, 0x54, 0x7E, 0xC0, 0xB1, 0xAE, 0x7C, 0x29,\n0x7F, 0x7C, 0x66, 0x6E, 0x29, 0xFC, 0xF8, 0x72, 0x6A, 0xC0, 0x44, 0xE6, 0x12, 0x92, 0x12, 0x4F,\n0x3E, 0x20, 0x96, 0xB6, 0xC3, 0xA0, 0x8A, 0x46, 0x57, 0x5F, 0x46, 0x2F, 0x4A, 0x3F, 0x58, 0x7B,\n0x7A, 0xC7, 0x6A, 0xBA, 0x28, 0x37, 0xEB, 0x9B, 0x39, 0x5A, 0x1F, 0x8F, 0x87, 0x0B, 0xA7, 0xE5,\n0xDD, 0xF1, 0xC7, 0xEB, 0xCB, 0x39, 0x0A, 0x02, 0x1C, 0x2D, 0x86, 0x61, 0xF7, 0xDD, 0xFD, 0xCE,\n0x94, 0xBE, 0x90, 0x64, 0x96, 0x27, 0xC5, 0xDE, 0xBB, 0x7B, 0x35, 0xAF, 0xDF, 0xEF, 0x56, 0xAE,\n0x02, 0xF0, 0xCB, 0x39, 0xBA, 0xBE, 0xBC, 0x38, 0x1C, 0x2E, 0xEC, 0x76, 0x3C, 0xF2, 0xC6, 0x7A,\n0x7A, 0x47, 0x33, 0x27, 0x4D, 0x8A, 0xD1, 0x01, 0x69, 0x61, 0x5E, 0xCD, 0xBF, 0xE8, 0xE3, 0x7A,\n0xDB, 0x56, 0x02, 0xE4, 0xCE, 0xFA, 0x4A, 0x7D, 0xD9, 0x97, 0xA7, 0xE5, 0x94, 0xB6, 0x4B, 0x9A,\n0xF4, 0x8E, 0xBE, 0x19, 0x53, 0xBA, 0x6B, 0x73, 0xF3, 0xCE, 0x2C, 0x3E, 0xD6, 0x87, 0x19, 0x12,\n0x1F, 0x97, 0x97, 0xB7, 0x76, 0x3B, 0xDE, 0x2E, 0x54, 0x04, 0x9C, 0xA3, 0x17, 0xAB, 0x9D, 0xAD,\n0x87, 0xDD, 0xEE, 0xBB, 0xCF, 0x7B, 0xFA, 0x6E, 0xD8, 0xAA, 0xA7, 0x76, 0xAB, 0x9D, 0xAF, 0x58,\n0x5E, 0x99, 0x7A, 0x58, 0x5D, 0x5D, 0x5D, 0x1E, 0x17, 0xF6, 0xE5, 0x11, 0x23, 0x87, 0x39, 0x5A,\n0xAF, 0x67, 0x11, 0xB2, 0xD9, 0xA4, 0xF9, 0xE0, 0x49, 0x13, 0x6C, 0xB9, 0xFC, 0x63, 0x56, 0xFB,\n0x72, 0xB9, 0xBD, 0x7B, 0xDB, 0x6C, 0x02, 0xC4, 0xA4, 0xE3, 0xB5, 0xED, 0x97, 0xD2, 0x72, 0xDB,\n0x6F, 0x99, 0x92, 0xD8, 0x24, 0x17, 0x8F, 0x81, 0xA3, 0x8D, 0xFA, 0x8D, 0xAD, 0xF5, 0x61, 0x3D,\n0x07, 0x91, 0xE3, 0xE5, 0x8F, 0x89, 0x10, 0x53, 0x0B, 0xE9, 0x8A, 0x09, 0xE6, 0x21, 0x32, 0x03,\n0x90, 0x34, 0xE7, 0x3F, 0xD0, 0xE6, 0xEA, 0xFE, 0xF3, 0xCF, 0x77, 0xBE, 0x84, 0xEB, 0x1C, 0xE9,\n0x5B, 0x5D, 0xCC, 0xF2, 0x90, 0x1F, 0x2F, 0x7F, 0x3C, 0xCE, 0xE1, 0x43, 0x9A, 0xC1, 0x47, 0x9A,\n0x0A, 0xDD, 0x8F, 0xD6, 0x13, 0x5D, 0x7C, 0xCC, 0x94, 0x7E, 0x0F, 0xE8, 0x97, 0x22, 0xC4, 0x9B,\n0xF6, 0x02, 0xC4, 0xFA, 0xDA, 0xBB, 0xD7, 0x96, 0xA7, 0xFC, 0x3B, 0x46, 0x63, 0xF6, 0xB7, 0x36,\n0xF5, 0x3F, 0x07, 0x48, 0xFE, 0xD4, 0x56, 0xA4, 0x8F, 0x02, 0x8F, 0x8F, 0x8D, 0x9A, 0x46, 0x9B,\n0x8F, 0xAC, 0xC3, 0xD1, 0xE6, 0xE3, 0x32, 0x21, 0xE2, 0xE9, 0x76, 0x91, 0x64, 0x11, 0x32, 0xDF,\n0x43, 0x56, 0x89, 0x8F, 0xF9, 0xFA, 0xDF, 0xF8, 0xC8, 0x72, 0xAF, 0x8D, 0xAE, 0xE3, 0x80, 0xC8,\n0x71, 0x16, 0x1F, 0x87, 0xF5, 0x2C, 0x3E, 0x36, 0xC6, 0x8C, 0x89, 0x91, 0xC5, 0x8B, 0xD5, 0xBE,\n0x8C, 0x69, 0x6C, 0x2D, 0x9C, 0x92, 0x83, 0xDC, 0x59, 0x24, 0xC5, 0x0B, 0x27, 0x13, 0xF9, 0x53,\n0x3D, 0xB1, 0x90, 0x0E, 0x38, 0xD6, 0x0E, 0x60, 0x40, 0xC4, 0xD2, 0x46, 0x2D, 0x75, 0xD7, 0x3F,\n0x20, 0xC4, 0xE5, 0x23, 0x11, 0x22, 0x0F, 0x59, 0x4C, 0xB7, 0x90, 0x49, 0xC8, 0xB5, 0xB6, 0xFD,\n0x83, 0xED, 0x21, 0x2B, 0xB9, 0x81, 0x84, 0x87, 0xD8, 0x9A, 0xC3, 0xC7, 0xCE, 0xE7, 0xE3, 0xAA,\n0x10, 0x62, 0xB4, 0x74, 0x15, 0x7D, 0x0F, 0x39, 0x8A, 0x8F, 0x22, 0x9B, 0x8F, 0x82, 0xC8, 0xC9,\n0x60, 0x64, 0x89, 0xF2, 0x27, 0x74, 0x6F, 0xD4, 0x76, 0xFA, 0x72, 0x16, 0x21, 0xA9, 0x92, 0x7E,\n0x77, 0xC7, 0x17, 0x8F, 0xF2, 0xA1, 0x17, 0x2E, 0x2A, 0x27, 0x03, 0x09, 0x1C, 0xE3, 0x1F, 0x89,\n0x0D, 0xCF, 0x44, 0x4E, 0xF0, 0x61, 0x12, 0xB2, 0x46, 0x07, 0x03, 0x91, 0xE3, 0x93, 0x77, 0xFC,\n0xE8, 0xAD, 0xAF, 0x90, 0x11, 0xE2, 0x86, 0xF6, 0xA9, 0x6E, 0x3D, 0x8B, 0x0F, 0x1D, 0xF5, 0x05,\n0x44, 0xF7, 0x79, 0x74, 0xF0, 0x28, 0xFE, 0xB1, 0x77, 0xFD, 0x03, 0x1D, 0x1D, 0xFF, 0x60, 0x9D,\n0x65, 0x00, 0x92, 0xF9, 0xB8, 0xC0, 0x43, 0x4C, 0x3E, 0xD4, 0x7B, 0x3A, 0x55, 0x7C, 0x30, 0xF5,\n0x46, 0xC7, 0xF4, 0x09, 0xAE, 0x5F, 0xD7, 0xAB, 0xEE, 0x12, 0x72, 0x77, 0x17, 0x37, 0x2B, 0xF6,\n0xE1, 0x50, 0xDF, 0x6A, 0xD9, 0x86, 0xB2, 0x59, 0xC5, 0xC0, 0x8E, 0xE1, 0xCF, 0x0C, 0x47, 0x48,\n0x49, 0x07, 0xDF, 0x40, 0x74, 0xEC, 0x84, 0xE7, 0x71, 0xD1, 0x3D, 0x0F, 0xF9, 0xF1, 0x1A, 0x2E,\n0x22, 0x10, 0xB9, 0x1D, 0xEB, 0xF0, 0x61, 0x12, 0x92, 0xDC, 0x43, 0xFE, 0x91, 0xF5, 0xE2, 0x61,\n0x32, 0xFC, 0xB8, 0x07, 0x8F, 0x59, 0xFA, 0x21, 0x08, 0xB1, 0xF8, 0xD8, 0xCF, 0xF2, 0x0F, 0xD4,\n0xBF, 0x34, 0xDA, 0xE0, 0xC3, 0x23, 0x64, 0xFD, 0x77, 0x59, 0x7C, 0xBC, 0x33, 0xE9, 0x21, 0xAC,\n0xAF, 0xCA, 0xC7, 0xB0, 0x36, 0xA2, 0xDF, 0xF6, 0x28, 0xA5, 0xF5, 0x15, 0x5A, 0x42, 0x48, 0xDB,\n0x14, 0xEE, 0xB8, 0xDD, 0xFD, 0xAE, 0x13, 0x88, 0xDC, 0xE9, 0x5F, 0x0B, 0x1E, 0x98, 0x48, 0xE2,\n0xB1, 0x50, 0x7B, 0x36, 0xB0, 0xB6, 0x62, 0x38, 0x4D, 0xF9, 0x07, 0x5D, 0x83, 0x6B, 0x1F, 0x26,\n0x21, 0xC4, 0x1E, 0x10, 0x62, 0xF9, 0x47, 0x44, 0xEA, 0x0F, 0x4E, 0x1E, 0xE8, 0x85, 0x66, 0xA6,\n0xFA, 0x8B, 0x7D, 0xDF, 0x43, 0x56, 0xA4, 0xAF, 0x0C, 0xB1, 0x06, 0x83, 0x2A, 0xD3, 0x3F, 0xC4,\n0xAC, 0x4E, 0x45, 0x07, 0xD7, 0xAE, 0x7F, 0x18, 0x91, 0x08, 0x7C, 0x98, 0x84, 0xE0, 0x1F, 0x1A,\n0x0C, 0x44, 0x62, 0x12, 0xD0, 0xFB, 0x0E, 0xB2, 0x44, 0x81, 0x88, 0x56, 0xF9, 0x8D, 0x31, 0x20,\n0x89, 0x3F, 0x18, 0x72, 0x7A, 0x2F, 0x9B, 0xC8, 0x69, 0x39, 0x60, 0xD0, 0xD1, 0x6B, 0x00, 0x22,\n0x06, 0x3A, 0x0E, 0x12, 0xF1, 0xF9, 0x1B, 0xA9, 0xE9, 0x7F, 0xF0, 0x86, 0x3C, 0x24, 0x9B, 0x05,\n0x91, 0x39, 0x03, 0xA7, 0x8B, 0x2C, 0xFB, 0xA0, 0xDF, 0xAC, 0x27, 0xFC, 0x23, 0xEB, 0xC2, 0x5A,\n0x65, 0x55, 0x6F, 0xAA, 0x1E, 0x05, 0x22, 0x8B, 0xB4, 0x55, 0x07, 0x8B, 0x4A, 0x46, 0x2E, 0x6B,\n0x17, 0x3E, 0x42, 0xA8, 0x3E, 0xE5, 0x1F, 0x3F, 0x94, 0x7E, 0x0F, 0x04, 0xB6, 0x87, 0x18, 0x7C,\n0x68, 0x67, 0xAA, 0xD8, 0x07, 0xE2, 0x72, 0x54, 0x07, 0xF0, 0xE1, 0x12, 0x72, 0xAC, 0x3F, 0xC9,\n0x3E, 0x11, 0x21, 0x96, 0x7F, 0xD0, 0x4F, 0xA3, 0x0E, 0x92, 0xF9, 0x88, 0x01, 0xB5, 0x1C, 0x24,\n0x7F, 0x9A, 0x6F, 0x4F, 0xC3, 0xE4, 0x55, 0xE3, 0x83, 0x1E, 0x40, 0x5A, 0xC6, 0x00, 0x20, 0xD2,\n0x56, 0xCF, 0x8C, 0x96, 0x3F, 0x02, 0x3D, 0xED, 0x45, 0x5F, 0x52, 0xA0, 0x11, 0x61, 0xF9, 0x98,\n0x38, 0x7D, 0xC5, 0x21, 0xEA, 0x7D, 0xFF, 0xF0, 0x56, 0x59, 0xB0, 0xE1, 0x99, 0x88, 0xEC, 0xA3,\n0x02, 0x24, 0x79, 0x48, 0x7B, 0x1A, 0x68, 0x68, 0x10, 0xD2, 0x45, 0x24, 0x47, 0x1E, 0x32, 0x90,\n0x12, 0x87, 0x40, 0x88, 0x93, 0xBE, 0xBA, 0xF7, 0x72, 0xBC, 0x82, 0xC3, 0xF1, 0x10, 0xCE, 0x68,\n0x1F, 0xE7, 0xB3, 0xF7, 0xF8, 0x40, 0x63, 0x78, 0xB4, 0xF8, 0x20, 0x99, 0x65, 0xF8, 0x47, 0xC8,\n0x09, 0x3F, 0xE8, 0x9B, 0x71, 0x07, 0xF9, 0xB3, 0x31, 0xD9, 0x9A, 0x91, 0x48, 0x4C, 0xD1, 0x61,\n0x06, 0xA7, 0x4D, 0x88, 0x04, 0x26, 0xA4, 0x7B, 0xC7, 0xF8, 0x00, 0x90, 0xBB, 0x11, 0x3E, 0x5E,\n0x93, 0x33, 0x9D, 0x78, 0x6D, 0x8D, 0xF1, 0xDA, 0x5B, 0xFE, 0xDF, 0x75, 0x25, 0x84, 0xA5, 0x21,\n0x0A, 0x53, 0x6C, 0x95, 0x3F, 0x9A, 0x84, 0xAC, 0xFB, 0xFE, 0xC1, 0x75, 0x87, 0x90, 0x7E, 0x78,\n0x8E, 0x7E, 0x2C, 0x1E, 0xF2, 0x44, 0x45, 0x03, 0x0F, 0x7B, 0x99, 0xB5, 0x7F, 0x10, 0x1E, 0x44,\n0x22, 0x7D, 0x0F, 0x69, 0x5A, 0x82, 0x36, 0x53, 0x81, 0x49, 0x37, 0x7D, 0xB5, 0x4B, 0x67, 0x14,\n0x6B, 0xAC, 0x07, 0xDF, 0x3F, 0x10, 0x97, 0xA3, 0x3A, 0x80, 0x8F, 0x3E, 0x21, 0xE0, 0x81, 0x78,\n0xD3, 0xAC, 0xF5, 0x15, 0xBD, 0x3D, 0x6D, 0x24, 0xB8, 0x40, 0xE4, 0xB2, 0x88, 0x47, 0xF2, 0x13,\n0xB1, 0xC0, 0x7A, 0x2F, 0xA1, 0x11, 0x13, 0x19, 0x0F, 0x69, 0xF2, 0x01, 0x20, 0xE3, 0x88, 0xDC,\n0xA5, 0xF2, 0x60, 0xA6, 0x82, 0x56, 0x72, 0x59, 0x11, 0x84, 0x24, 0x4E, 0x63, 0xE3, 0xAC, 0xEB,\n0xA3, 0xE6, 0x37, 0xDA, 0xC4, 0x23, 0x0A, 0x22, 0xEB, 0x76, 0x7A, 0x17, 0x2E, 0x0C, 0x0F, 0x39,\n0x46, 0x7C, 0xDE, 0x24, 0x64, 0x11, 0x98, 0x94, 0x83, 0xDB, 0x71, 0x40, 0xA6, 0x02, 0x11, 0xCD,\n0xC5, 0xD0, 0x0E, 0x42, 0xDA, 0xE5, 0x41, 0x26, 0x3B, 0xA3, 0xE7, 0x1F, 0x68, 0x94, 0x0F, 0xB0,\n0x9D, 0x1D, 0x9E, 0xA3, 0xB8, 0x1C, 0x11, 0x99, 0x73, 0x04, 0x1F, 0x0E, 0x21, 0x8D, 0xCF, 0x31,\n0x0A, 0x22, 0x6D, 0xFF, 0xB0, 0x2D, 0x04, 0x3C, 0xC0, 0xA4, 0x8C, 0x7C, 0x62, 0xA7, 0x02, 0x44,\n0x99, 0x9E, 0xCB, 0x62, 0x1D, 0x65, 0x2E, 0x6B, 0x29, 0x84, 0x87, 0x34, 0xF9, 0xA8, 0x01, 0x49,\n0xE9, 0xDE, 0xFA, 0xCB, 0x22, 0x3C, 0x0F, 0x67, 0xD2, 0xA8, 0x56, 0x20, 0x64, 0x75, 0x45, 0xA1,\n0xB0, 0xCD, 0x46, 0x1E, 0x9B, 0xD9, 0xAC, 0x4D, 0xBB, 0x6B, 0xEB, 0xC4, 0xE7, 0x4D, 0x0F, 0x19,\n0x2B, 0x9F, 0x37, 0x44, 0x55, 0x3D, 0x76, 0xC4, 0xE7, 0x3E, 0x21, 0xD7, 0xE1, 0x1F, 0x7B, 0x8D,\n0x81, 0x88, 0xB6, 0x17, 0x3A, 0x68, 0x12, 0xF2, 0x80, 0x7F, 0x54, 0x5C, 0xDC, 0x1B, 0x71, 0x48,\n0x05, 0xD4, 0x38, 0x1F, 0x7B, 0x31, 0xAA, 0xE1, 0x41, 0xBB, 0x6C, 0x6A, 0x7B, 0x9B, 0x0F, 0xC4,\n0x75, 0xE1, 0x80, 0x4B, 0xE9, 0x15, 0xD5, 0xD7, 0xE3, 0x72, 0xF8, 0xE8, 0x26, 0xB3, 0xF4, 0xB8,\n0x9E, 0x5F, 0xEC, 0xC2, 0x3F, 0x34, 0x12, 0x25, 0x0F, 0x78, 0x10, 0x7D, 0x94, 0x83, 0xC4, 0x08,\n0x84, 0x54, 0x7C, 0x00, 0x08, 0x84, 0x34, 0xF8, 0xC0, 0x40, 0xD2, 0x10, 0x74, 0x64, 0xF8, 0xC2,\n0xBB, 0x40, 0x16, 0xB5, 0x18, 0xB1, 0xFD, 0x43, 0x1D, 0x0F, 0xA9, 0xFC, 0xE3, 0x13, 0xF5, 0x35,\n0xEA, 0x16, 0x44, 0x8E, 0x84, 0x1F, 0xE7, 0xA2, 0x64, 0x58, 0x42, 0x73, 0xCA, 0xE7, 0xC8, 0x08,\n0xD5, 0x13, 0x35, 0x3B, 0xED, 0xCA, 0x5E, 0x83, 0xA4, 0x40, 0xA4, 0x01, 0x48, 0xC7, 0x2F, 0x4C,\n0xFF, 0x40, 0x23, 0xB7, 0x5F, 0x21, 0xEC, 0x64, 0x04, 0x91, 0x45, 0x47, 0x2C, 0xAB, 0x70, 0x58,\n0xF8, 0xA8, 0xF5, 0xE3, 0xF5, 0x71, 0xBC, 0xFC, 0x11, 0x23, 0xBA, 0xC0, 0x43, 0xFA, 0x7C, 0xD0,\n0x1B, 0x6A, 0x4D, 0x33, 0x0E, 0xE5, 0x1D, 0x69, 0x7C, 0xEA, 0xF1, 0xE9, 0x9E, 0x46, 0x6C, 0x64,\n0xA4, 0x64, 0xA8, 0x87, 0x63, 0xBF, 0x9B, 0xF7, 0xFC, 0x2B, 0x73, 0x7A, 0x57, 0xAF, 0xFB, 0x1E,\n0xAF, 0xAE, 0x0D, 0x4A, 0x44, 0x48, 0xB0, 0x9A, 0x3B, 0x61, 0x79, 0xEC, 0x11, 0x81, 0x08, 0x82,\n0x0F, 0xD3, 0x43, 0xD6, 0xC8, 0x88, 0x43, 0x88, 0x3F, 0x9A, 0x4A, 0x84, 0x20, 0x15, 0x89, 0x91,\n0x19, 0xA9, 0xEF, 0xD5, 0x12, 0x10, 0x69, 0x17, 0xEE, 0x11, 0x87, 0xDA, 0x9F, 0xEB, 0xBE, 0xCB,\n0x40, 0xAD, 0x0F, 0xE6, 0x7A, 0x48, 0xFE, 0x5F, 0x86, 0xA3, 0x11, 0x8C, 0x04, 0x2D, 0x26, 0x1F,\n0xE8, 0x96, 0x08, 0x7D, 0xB2, 0xC2, 0xFA, 0x23, 0x84, 0x50, 0x3E, 0xEF, 0xAB, 0x9D, 0xBE, 0xF2,\n0x3D, 0x64, 0x6C, 0xA6, 0x71, 0xBC, 0x55, 0x8B, 0x59, 0xA9, 0xF0, 0x43, 0xD3, 0x55, 0x5B, 0x1A,\n0x09, 0xA4, 0x9F, 0x95, 0x0C, 0x29, 0x7F, 0xD4, 0x80, 0x20, 0x8A, 0xEA, 0xDA, 0x6D, 0x4F, 0xA7,\n0x20, 0xAD, 0x8C, 0x85, 0xBF, 0x82, 0x49, 0x31, 0x8E, 0x56, 0x2E, 0x8B, 0x75, 0x21, 0x3E, 0x22,\n0x7D, 0xDD, 0xF6, 0x0F, 0x23, 0x99, 0xB5, 0x9E, 0x52, 0xA3, 0xFC, 0xD1, 0x25, 0x24, 0xC0, 0xA8,\n0xCB, 0x83, 0xBE, 0x87, 0x3C, 0xB0, 0xDE, 0x0F, 0x4A, 0x12, 0x1B, 0xE2, 0xA4, 0x22, 0xE4, 0xE1,\n0xBC, 0xFC, 0xF1, 0x03, 0x07, 0xA6, 0x7F, 0xF0, 0x95, 0x24, 0xB3, 0x1E, 0x2A, 0x3E, 0x70, 0x0C,\n0x6C, 0x43, 0x94, 0xE8, 0xD0, 0xE7, 0x03, 0x1D, 0x5B, 0xE5, 0x8F, 0x71, 0x3F, 0xEE, 0xA5, 0xAF,\n0x10, 0x0F, 0x1D, 0xFF, 0x80, 0x90, 0xAE, 0x7D, 0x30, 0xCB, 0xAA, 0xAA, 0x7A, 0x34, 0x95, 0xCF,\n0x71, 0x10, 0xF5, 0xF3, 0x56, 0x08, 0x41, 0xFD, 0x3F, 0xA0, 0x73, 0x47, 0xF9, 0x3C, 0x95, 0x3F,\n0x48, 0x5D, 0x55, 0x0E, 0x12, 0xF8, 0xB1, 0xC8, 0x82, 0xEA, 0x8A, 0x91, 0x38, 0x20, 0x54, 0xC7,\n0x40, 0x7C, 0x42, 0x48, 0x5F, 0x99, 0x71, 0xC8, 0xE5, 0xBB, 0xDD, 0x37, 0xB5, 0x2E, 0x19, 0x2E,\n0x0C, 0xD5, 0xE5, 0x8F, 0x12, 0x7E, 0xA4, 0x55, 0x3F, 0x35, 0xF5, 0xC2, 0x09, 0x84, 0xAC, 0xC2,\n0x3F, 0xA2, 0xFC, 0xC1, 0x01, 0x18, 0x60, 0x1B, 0x6E, 0x1C, 0xF2, 0x5D, 0xAB, 0x7C, 0xBE, 0x03,\n0xD9, 0x7C, 0x72, 0x3C, 0xF6, 0xE2, 0x0F, 0x54, 0x12, 0xBC, 0xF0, 0xD1, 0x45, 0xC4, 0x8A, 0x3F,\n0x28, 0x88, 0x98, 0xFE, 0x41, 0x3F, 0xC1, 0x07, 0x73, 0xAA, 0xA7, 0x6D, 0x6C, 0x79, 0xA2, 0x96,\n0x59, 0x5B, 0x26, 0x31, 0x4B, 0x22, 0x8A, 0xEA, 0x2C, 0xAF, 0x46, 0x01, 0xA1, 0xA8, 0xAE, 0xF2,\n0x47, 0x4E, 0xEF, 0x42, 0x5A, 0x01, 0xEE, 0xEC, 0x41, 0x38, 0x48, 0x93, 0xE9, 0xFA, 0x09, 0x4C,\n0x84, 0xF2, 0x87, 0x4B, 0x48, 0xB9, 0xB0, 0xA8, 0x1F, 0x87, 0x10, 0x7E, 0x58, 0x84, 0x2C, 0x1C,\n0x5D, 0xD5, 0x2B, 0x2C, 0x39, 0x88, 0xFA, 0xBE, 0x44, 0x20, 0xF9, 0xA0, 0x94, 0xEA, 0xB4, 0xC3,\n0x3F, 0x0C, 0xBF, 0x30, 0xFD, 0x03, 0xDD, 0xD7, 0xFE, 0xF1, 0xA0, 0x7D, 0x3A, 0xAD, 0x08, 0x88,\n0xD4, 0x65, 0x6B, 0xD8, 0x0A, 0x7C, 0x78, 0x72, 0xFC, 0x83, 0x6B, 0xE9, 0xFB, 0x87, 0xA4, 0xAF,\n0xA9, 0xD2, 0xBB, 0xB6, 0x89, 0xD4, 0xAB, 0x92, 0xD8, 0xEA, 0x47, 0xDB, 0xB0, 0x11, 0xD8, 0xC8,\n0xF3, 0x36, 0x8E, 0x58, 0x12, 0x51, 0x54, 0x27, 0x3C, 0x6F, 0x00, 0x82, 0x32, 0x1F, 0xA5, 0x30,\n0x8F, 0x39, 0xB1, 0x7A, 0xD3, 0xC6, 0x18, 0xF7, 0x81, 0x61, 0x1F, 0x79, 0xAC, 0x4E, 0x19, 0x95,\n0x34, 0xF6, 0xC6, 0xEC, 0x95, 0x7F, 0x98, 0x1E, 0x42, 0x7A, 0xD7, 0x20, 0x04, 0x3E, 0x3C, 0x42,\n0xAE, 0xF9, 0x90, 0xDE, 0x15, 0x27, 0xC1, 0x4B, 0x34, 0xBC, 0xA8, 0x3C, 0xE4, 0x7E, 0x9C, 0x8E,\n0x1F, 0x82, 0x04, 0x3C, 0xA4, 0xEF, 0x1E, 0x8C, 0x10, 0xB2, 0x8A, 0x3A, 0xCC, 0xD0, 0x77, 0x78,\n0x87, 0x1E, 0xC5, 0x49, 0x36, 0xCB, 0x1F, 0xAE, 0x87, 0x38, 0x7C, 0x90, 0xEE, 0x3D, 0x2A, 0x89,\n0x32, 0x46, 0x05, 0x4A, 0x5F, 0x33, 0x87, 0x0F, 0x3C, 0xA4, 0xFE, 0xCC, 0x1D, 0xE5, 0x24, 0x16,\n0x59, 0x4F, 0x19, 0xD8, 0xF8, 0x70, 0x67, 0xF2, 0xE2, 0x20, 0xFA, 0x47, 0x79, 0x08, 0x7C, 0x34,\n0x01, 0x41, 0xAC, 0xAF, 0x52, 0x26, 0x0C, 0x00, 0x69, 0x7F, 0x27, 0xA6, 0x67, 0x1D, 0x2D, 0x3B,\n0x8C, 0xF2, 0xA0, 0xD5, 0x25, 0xCF, 0x3F, 0xB8, 0xF0, 0x11, 0x9E, 0x9B, 0xEF, 0x6A, 0x15, 0x7F,\n0x98, 0x71, 0x08, 0x49, 0x2B, 0x6E, 0x7D, 0x8A, 0xC9, 0xC8, 0xF2, 0xAB, 0x14, 0x44, 0x58, 0x5F,\n0xB1, 0xCA, 0x8A, 0x7D, 0x45, 0xCD, 0xBD, 0xE9, 0x1F, 0xA8, 0x71, 0x77, 0x3B, 0xDE, 0x01, 0x1B,\n0x62, 0x45, 0x87, 0xF0, 0xE1, 0x0A, 0xFF, 0xF0, 0x09, 0x59, 0xF7, 0xFD, 0x83, 0xFD, 0x61, 0x4D,\n0xF8, 0xE1, 0x58, 0x08, 0xE9, 0xDD, 0x4A, 0x6D, 0x66, 0xCA, 0x02, 0x2B, 0x9B, 0x05, 0xD1, 0x47,\n0xAC, 0x80, 0xD8, 0xE5, 0x8A, 0x88, 0xC2, 0xE9, 0xD7, 0xE0, 0xA3, 0x09, 0x08, 0x8A, 0x9F, 0xFE,\n0x00, 0x0D, 0x5E, 0xB1, 0xF8, 0xC9, 0x59, 0x30, 0x82, 0x7D, 0x34, 0x83, 0x26, 0xF6, 0xAC, 0xB2,\n0x36, 0x6E, 0xD7, 0x86, 0x7F, 0x38, 0x1E, 0xB2, 0x8E, 0x9F, 0xFE, 0xF0, 0xF4, 0x23, 0xE9, 0x5D,\n0x53, 0xA5, 0x7A, 0xAE, 0x69, 0xB9, 0x8F, 0x23, 0x0D, 0x92, 0xF6, 0xEC, 0xF6, 0x0F, 0xFC, 0x94,\n0x61, 0xDB, 0x0E, 0x42, 0xD0, 0x02, 0x1E, 0xAE, 0x87, 0x48, 0x99, 0x0F, 0xE2, 0x9F, 0x7D, 0x5E,\n0x65, 0x25, 0x44, 0x02, 0x59, 0x19, 0xDA, 0x03, 0x69, 0x05, 0xC2, 0x0F, 0x43, 0xB6, 0x7F, 0x50,\n0x10, 0x69, 0xBF, 0x41, 0x23, 0x26, 0x42, 0xF8, 0x61, 0x75, 0x09, 0xB3, 0x50, 0x9F, 0xE6, 0x64,\n0x1B, 0xF6, 0xA1, 0x8E, 0x91, 0xC4, 0xA0, 0x5D, 0x62, 0x23, 0x1D, 0x26, 0x42, 0xE0, 0xA3, 0x0D,\n0x08, 0x7A, 0xFB, 0x24, 0xFF, 0xC8, 0xAC, 0xE1, 0x4A, 0xB1, 0x53, 0x4F, 0xFF, 0x38, 0x8C, 0x44,\n0xEA, 0x46, 0xE0, 0x84, 0x48, 0x5F, 0x19, 0x5D, 0xC3, 0x50, 0xFE, 0x88, 0xCB, 0xEC, 0xE8, 0x68,\n0x2D, 0xAF, 0x48, 0xC0, 0x2C, 0x5C, 0x91, 0xEE, 0x4D, 0x10, 0x30, 0x0B, 0x4B, 0xAA, 0xE8, 0x21,\n0xFE, 0x81, 0xF5, 0x97, 0x0A, 0x22, 0xB3, 0xF2, 0x56, 0xDF, 0xD5, 0xFE, 0xC1, 0xD8, 0xD6, 0xAE,\n0xE0, 0xB1, 0xC2, 0x42, 0x22, 0x40, 0x4A, 0x3D, 0x8B, 0x75, 0xD7, 0x62, 0x96, 0xAE, 0xBC, 0x9F,\n0xC2, 0xA4, 0x20, 0x02, 0x11, 0x14, 0x41, 0xD8, 0xF1, 0x6F, 0xE1, 0x21, 0xDE, 0x1C, 0xA0, 0x2F,\n0x11, 0xA8, 0x8C, 0xD1, 0x51, 0xEC, 0x83, 0x19, 0x4C, 0x7C, 0x1E, 0xB4, 0x84, 0x7D, 0x44, 0x5D,\n0x4F, 0xF1, 0xB9, 0x07, 0xC8, 0xDB, 0xDB, 0x5C, 0x20, 0x7C, 0x2F, 0x0C, 0x89, 0x97, 0x8D, 0x44,\n0x32, 0xA8, 0x0C, 0x4D, 0xE2, 0xAC, 0x6A, 0xF3, 0xC0, 0x5A, 0xD0, 0xCC, 0xAB, 0x72, 0x93, 0x83,\n0x3A, 0xD7, 0x43, 0xB8, 0xBF, 0xC4, 0xE3, 0xE3, 0x7A, 0xE6, 0x9C, 0xD1, 0x1D, 0xED, 0xD4, 0xD0,\n0x33, 0x19, 0xCC, 0xC0, 0x42, 0x4C, 0x49, 0x27, 0x69, 0x91, 0xF5, 0x03, 0x68, 0x8C, 0xC7, 0x21,\n0xB8, 0xC8, 0x07, 0x1A, 0x66, 0x78, 0x48, 0x94, 0x3C, 0x4A, 0xFC, 0xA3, 0x8E, 0x7F, 0x71, 0xD7,\n0x7B, 0xB1, 0x94, 0xDD, 0xE3, 0x15, 0x06, 0xE2, 0xE8, 0x7A, 0x0E, 0x21, 0x3F, 0xCA, 0x42, 0xBA,\n0xEF, 0x51, 0xFD, 0x70, 0xBE, 0x83, 0x00, 0x00, 0xE2, 0x61, 0x15, 0xEF, 0x9E, 0x4A, 0x12, 0xB6,\n0xD8, 0x07, 0xE6, 0xC1, 0xCA, 0xE8, 0x69, 0xD3, 0x4A, 0xE8, 0x6D, 0x0F, 0x90, 0xB7, 0x97, 0xDB,\n0xED, 0x56, 0xFF, 0x01, 0x77, 0x07, 0xE7, 0x7D, 0x40, 0x58, 0x5E, 0x9E, 0x4D, 0x9A, 0xB2, 0x0F,\n0xCE, 0x5E, 0x78, 0xBC, 0xE5, 0x5F, 0x95, 0x88, 0xD2, 0xD7, 0xBE, 0x2E, 0x8E, 0x47, 0x85, 0x20,\n0x3F, 0xFA, 0x7C, 0x5C, 0x8B, 0x10, 0x7F, 0xD6, 0xBC, 0xB8, 0xBA, 0xBA, 0x8A, 0xE9, 0x1F, 0xBB,\n0x34, 0x03, 0x63, 0xE5, 0x1F, 0x66, 0xA2, 0x5E, 0x0A, 0xEA, 0x0A, 0xA4, 0xBF, 0x1B, 0xE5, 0x41,\n0xBD, 0x8E, 0xD5, 0x3F, 0xF8, 0x20, 0xCC, 0xC3, 0xF2, 0x8F, 0xE1, 0xD5, 0x4B, 0x86, 0x17, 0x52,\n0x31, 0x90, 0xF3, 0x9F, 0x58, 0xD1, 0xF9, 0x5C, 0x3D, 0xCE, 0xE3, 0xE3, 0x7A, 0x01, 0x21, 0xC6,\n0x12, 0xEB, 0x78, 0x24, 0xD0, 0x88, 0x11, 0xF1, 0x6C, 0x84, 0x94, 0xC4, 0x20, 0x66, 0xD7, 0xC4,\n0xD1, 0xFC, 0xE9, 0xC7, 0xBB, 0x3C, 0x38, 0x49, 0x67, 0x81, 0x73, 0x5D, 0xAE, 0x88, 0xA8, 0x21,\n0x56, 0x45, 0x5B, 0xE9, 0xED, 0x2E, 0x20, 0xF8, 0x87, 0x24, 0x42, 0x4A, 0xDC, 0x01, 0x6D, 0x1A,\n0xCA, 0x1E, 0xF2, 0xB2, 0x5A, 0x34, 0x73, 0xA4, 0x01, 0xFB, 0xF8, 0x43, 0xDF, 0xA9, 0x79, 0x49,\n0xC8, 0x62, 0x5D, 0x4C, 0x79, 0x48, 0x44, 0xF1, 0x47, 0xE9, 0xE2, 0x22, 0x4D, 0x7D, 0xD3, 0x3F,\n0x20, 0xC4, 0x03, 0x44, 0x93, 0xAC, 0x18, 0x48, 0x12, 0x73, 0x92, 0xA0, 0x38, 0x1D, 0x26, 0x3E,\n0xEE, 0x87, 0x24, 0x16, 0xAE, 0x30, 0xB1, 0xBE, 0x2A, 0xBF, 0x03, 0xCB, 0x70, 0x8F, 0xE0, 0x43,\n0x84, 0x50, 0x24, 0x0C, 0x07, 0xC9, 0x3D, 0x0C, 0xE4, 0xE9, 0xF6, 0x2C, 0x49, 0x27, 0xAF, 0x36,\n0x87, 0x8F, 0x6B, 0xDB, 0x43, 0xF4, 0x55, 0xC7, 0xA4, 0x8A, 0x8B, 0x8B, 0x6A, 0x99, 0x85, 0x28,\n0x12, 0x7A, 0x5D, 0x13, 0x47, 0x7D, 0xD9, 0x50, 0x33, 0xE9, 0x7B, 0x1A, 0x04, 0x04, 0x54, 0x42,\n0xCA, 0xDC, 0x1D, 0x06, 0x92, 0x5B, 0xDB, 0x41, 0xCB, 0xB7, 0xBB, 0x80, 0xE0, 0x1F, 0x52, 0x2A,\n0xA3, 0x93, 0xE5, 0x3D, 0x0B, 0xCC, 0xFF, 0x4E, 0x5E, 0x51, 0xB7, 0x86, 0xCE, 0xB3, 0xC9, 0x3E,\n0xFE, 0x50, 0x73, 0xF9, 0x08, 0xB9, 0xF1, 0x47, 0xD2, 0xE1, 0x62, 0xF8, 0x3C, 0xF3, 0xFC, 0x63,\n0x91, 0xFB, 0x95, 0xB9, 0xBE, 0x4A, 0x2D, 0xA7, 0x7B, 0x6B, 0xBF, 0x60, 0x56, 0x96, 0xDB, 0x4D,\n0xC4, 0xC6, 0x0E, 0x0F, 0xC1, 0x16, 0xF2, 0x0E, 0x61, 0x1F, 0x59, 0xE9, 0x81, 0xE3, 0x1F, 0xF1,\n0x3F, 0x48, 0xAB, 0x2C, 0xC1, 0x10, 0x94, 0xC8, 0x2B, 0x70, 0x10, 0x96, 0x7D, 0xF2, 0x8F, 0x7C,\n0xF6, 0x33, 0xFC, 0x23, 0x08, 0xB1, 0xFC, 0xE3, 0xE2, 0x10, 0x84, 0xF4, 0x82, 0x73, 0x9E, 0xA4,\n0x4C, 0xE8, 0xDA, 0x87, 0x3A, 0xAB, 0xAC, 0xA9, 0xDB, 0x9A, 0x4E, 0x45, 0xCC, 0x5E, 0xD6, 0x59,\n0x25, 0x40, 0x20, 0x0E, 0xD9, 0x86, 0xDE, 0x9E, 0x02, 0x64, 0x8B, 0xA8, 0x14, 0xF2, 0xB2, 0x11,\n0x8D, 0x70, 0xCB, 0x17, 0xBF, 0xC1, 0x8E, 0x33, 0xEE, 0x24, 0xE2, 0x0A, 0x1D, 0xFA, 0x56, 0x37,\n0x26, 0x1F, 0xA1, 0x4E, 0x18, 0x42, 0x12, 0xF8, 0x88, 0x2C, 0x3E, 0xCA, 0x1C, 0xD0, 0x66, 0xF2,\n0x11, 0x2D, 0x15, 0xE4, 0x58, 0xEB, 0xEF, 0x4A, 0x48, 0xC2, 0x53, 0x7B, 0xF9, 0x47, 0xFA, 0x5D,\n0x8B, 0x69, 0x63, 0x96, 0x03, 0x49, 0x8B, 0x8F, 0xCF, 0x3F, 0xD2, 0x08, 0x21, 0x1D, 0x0F, 0xC9,\n0x7C, 0x04, 0x81, 0x82, 0xF1, 0x29, 0xBB, 0x56, 0x49, 0xE7, 0x15, 0x5E, 0xF7, 0xF8, 0x74, 0xFA,\n0xBE, 0x7F, 0xA4, 0xAE, 0x4B, 0x65, 0x2C, 0xAF, 0xD0, 0xC1, 0xC9, 0x63, 0x9D, 0xFD, 0x20, 0x88,\n0xC3, 0x47, 0x32, 0x10, 0xB5, 0x9A, 0x88, 0x76, 0xE8, 0x7B, 0x42, 0x11, 0x83, 0x54, 0x05, 0x6F,\n0x7C, 0x25, 0xDD, 0xF4, 0x8E, 0xC6, 0x01, 0x81, 0x0F, 0x08, 0xE1, 0x45, 0x34, 0x6A, 0xAB, 0x6E,\n0xE9, 0xE5, 0x2C, 0xA4, 0xD1, 0xC8, 0x89, 0x5D, 0xB2, 0xC9, 0x84, 0xC7, 0xB4, 0x87, 0xC0, 0x07,\n0xB5, 0xC2, 0x09, 0x1D, 0xD1, 0x05, 0xB9, 0x5E, 0xC3, 0x3F, 0x58, 0x66, 0x79, 0x7C, 0xE8, 0xA3,\n0x78, 0x45, 0x20, 0x4C, 0xF5, 0x23, 0xBB, 0xCA, 0xD0, 0x85, 0xD0, 0xEE, 0x5E, 0x6D, 0xE2, 0x56,\n0x45, 0xC2, 0xF3, 0x7B, 0xFC, 0x43, 0x5B, 0x37, 0x8B, 0x85, 0x7F, 0x84, 0xEE, 0x45, 0x48, 0x54,\n0x2B, 0xE3, 0x84, 0x52, 0x8F, 0xEA, 0xFE, 0x43, 0x7A, 0x46, 0x67, 0x4D, 0xF3, 0xEC, 0x83, 0x3E,\n0xE5, 0x21, 0x69, 0x79, 0x85, 0xA8, 0x59, 0x3D, 0xE7, 0x04, 0x3E, 0xD0, 0x24, 0x20, 0x9A, 0x2E,\n0xB1, 0x69, 0xF2, 0x80, 0xC7, 0xD8, 0xA7, 0xF1, 0x39, 0x1F, 0x25, 0x12, 0x01, 0x93, 0x44, 0x4C,\n0xF8, 0x4A, 0x89, 0x3F, 0x50, 0x07, 0x10, 0xF8, 0x28, 0x71, 0x08, 0xBC, 0xC5, 0x9A, 0x0D, 0xF0,\n0x4E, 0xD8, 0x07, 0x84, 0x60, 0x7D, 0xEC, 0x91, 0xBE, 0x39, 0x3E, 0x09, 0xA4, 0x8D, 0x51, 0x23,\n0x44, 0xDE, 0xFA, 0x0A, 0x41, 0x48, 0x1B, 0x8F, 0xCC, 0x07, 0x7D, 0x42, 0x82, 0x82, 0xA6, 0x4F,\n0xE3, 0x72, 0x27, 0xE0, 0xAE, 0xBA, 0x0B, 0x2A, 0xA7, 0x94, 0xC4, 0x87, 0xFC, 0x03, 0x09, 0x80,\n0xCA, 0x3E, 0x34, 0x34, 0xFC, 0x43, 0xCD, 0xF1, 0x10, 0xF8, 0xC8, 0x6B, 0x38, 0xAA, 0x85, 0xC3,\n0x29, 0x15, 0x01, 0x4D, 0xF0, 0x41, 0x33, 0xFD, 0x83, 0x65, 0x96, 0xC1, 0x07, 0x3A, 0x40, 0x43,\n0x1C, 0xB0, 0x53, 0x0F, 0x3E, 0xD0, 0x24, 0x20, 0x6F, 0xE5, 0xD0, 0x35, 0x26, 0x4E, 0x23, 0x55,\n0x1A, 0x22, 0xFE, 0x40, 0xC4, 0x21, 0x05, 0x8E, 0x72, 0x54, 0xD6, 0x43, 0xDB, 0x73, 0x8D, 0x03,\n0xB2, 0xAD, 0xBF, 0x34, 0x5E, 0x1A, 0xF4, 0xD4, 0xB8, 0xA5, 0x37, 0xF8, 0x40, 0x53, 0xFE, 0x91,\n0xC8, 0xE0, 0x93, 0xE0, 0x8F, 0x1E, 0x21, 0xF0, 0x81, 0xBA, 0xA5, 0x90, 0x58, 0x01, 0x9B, 0x84,\n0xA4, 0xF0, 0xFC, 0xAC, 0x5F, 0x1B, 0xF6, 0x41, 0x13, 0x2E, 0x25, 0x3B, 0x34, 0x0C, 0x55, 0x9A,\n0x17, 0xFF, 0x60, 0x1A, 0x7F, 0xD7, 0xCB, 0xF2, 0xCA, 0x3F, 0x44, 0x06, 0x2D, 0x11, 0xD2, 0xF1,\n0x0F, 0x05, 0xFF, 0x88, 0x55, 0x56, 0x28, 0xFC, 0xA3, 0x14, 0xD6, 0xE1, 0x83, 0x66, 0xF9, 0x07,\n0x5D, 0x84, 0x18, 0x7C, 0x20, 0x1C, 0x04, 0x38, 0xAA, 0xFB, 0xB0, 0x5C, 0x42, 0x62, 0xAA, 0xBC,\n0x95, 0xC6, 0x30, 0x93, 0x5E, 0xA0, 0x0E, 0x1F, 0x08, 0xE3, 0x88, 0x03, 0x26, 0xB2, 0xEE, 0xE5,\n0x7D, 0xA6, 0x1A, 0x10, 0xD2, 0x57, 0xB5, 0xF2, 0x1D, 0x59, 0x01, 0x1C, 0x0C, 0xB2, 0xBC, 0xAA,\n0xD5, 0x39, 0xF1, 0x30, 0x8F, 0xE2, 0x22, 0x6A, 0xFD, 0x7C, 0xEF, 0x4D, 0x43, 0x7D, 0x3E, 0x0C,\n0x42, 0x58, 0x33, 0xF3, 0xEE, 0x43, 0x88, 0xC5, 0x07, 0x8D, 0x00, 0xA4, 0xAC, 0x6D, 0x22, 0x95,\n0x85, 0x7F, 0x3C, 0xF7, 0x10, 0xEC, 0x83, 0x63, 0xE2, 0x73, 0x18, 0x49, 0x4F, 0x8F, 0x45, 0x20,\n0xF1, 0xE2, 0x95, 0x87, 0xD4, 0x41, 0xC8, 0xBE, 0x6C, 0x0F, 0x9C, 0x34, 0xCD, 0xE4, 0x03, 0x0F,\n0xE9, 0x94, 0x3F, 0x50, 0xD3, 0x43, 0x00, 0xA5, 0xF7, 0x13, 0x85, 0xFD, 0xF0, 0x23, 0xE6, 0x4E,\n0x99, 0x36, 0x67, 0x91, 0x3A, 0xBB, 0x26, 0x1E, 0x82, 0xA0, 0x8E, 0x41, 0x58, 0x72, 0x55, 0x7C,\n0x10, 0xAA, 0x03, 0x08, 0x7C, 0xB4, 0x74, 0xA2, 0xF0, 0xC8, 0x2A, 0x8E, 0xF5, 0x55, 0x2D, 0x4E,\n0x16, 0xEB, 0x0B, 0x3E, 0xF8, 0x0E, 0x09, 0x44, 0xDC, 0x9F, 0x05, 0x21, 0x54, 0xB7, 0xF8, 0x80,\n0x90, 0x4E, 0x7A, 0xB7, 0xEA, 0x52, 0x8F, 0x8F, 0xE7, 0x33, 0x4C, 0x84, 0x90, 0xC2, 0x4A, 0x0B,\n0x7D, 0x6D, 0xE1, 0x1F, 0xDF, 0xA5, 0xE0, 0xB9, 0x52, 0xEB, 0x26, 0x93, 0xE0, 0xA3, 0xF2, 0x8F,\n0x2A, 0x97, 0xD5, 0x4E, 0x5F, 0x55, 0x8C, 0xDC, 0x27, 0x0F, 0xD1, 0x80, 0x7F, 0x68, 0x88, 0xF4,\n0x55, 0xAB, 0x59, 0xCB, 0x2B, 0xBA, 0xAE, 0xDA, 0xB4, 0x7F, 0xA0, 0x8B, 0x76, 0x92, 0xD7, 0xFF,\n0x99, 0x74, 0xFA, 0x1F, 0xEA, 0x79, 0x91, 0x95, 0x16, 0xE9, 0xE9, 0xD1, 0xB8, 0x89, 0x9C, 0x9A,\n0x3A, 0x8F, 0x41, 0x88, 0xAC, 0xE1, 0xA3, 0x22, 0x04, 0x40, 0xE0, 0x63, 0x8C, 0x10, 0xD6, 0x6C,\n0x30, 0x28, 0x28, 0x4F, 0x4D, 0xB5, 0xCB, 0x36, 0x84, 0x1F, 0x1A, 0xB5, 0xC5, 0x37, 0xAD, 0xD1,\n0xFA, 0x69, 0x42, 0x64, 0xF1, 0x81, 0x9A, 0x09, 0x98, 0x08, 0x3F, 0x5A, 0xFD, 0xCA, 0xF2, 0x0F,\n0x92, 0x59, 0xC4, 0x1D, 0x7B, 0x0E, 0x5F, 0xAC, 0x58, 0x01, 0xA1, 0x01, 0x99, 0x06, 0x1A, 0xD2,\n0x77, 0xB8, 0xC7, 0x39, 0x27, 0x2D, 0x0F, 0x91, 0xDA, 0x2F, 0xAE, 0xAE, 0xF3, 0x11, 0xA2, 0x45,\n0x81, 0x2E, 0xF1, 0x79, 0xDD, 0x5C, 0x3E, 0x48, 0xF7, 0xF6, 0xF3, 0x57, 0x35, 0x21, 0xED, 0x20,\n0xE4, 0x06, 0x59, 0x91, 0x7A, 0x9A, 0x39, 0x99, 0x8A, 0x44, 0x89, 0xDA, 0xE8, 0x32, 0x6B, 0x94,\n0x8F, 0x5C, 0xEE, 0x28, 0x31, 0x34, 0x75, 0x3C, 0xF8, 0xA8, 0x09, 0x01, 0x10, 0xCA, 0x1F, 0x23,\n0x4A, 0x06, 0xA5, 0x0E, 0x76, 0x7A, 0x70, 0x1A, 0x53, 0xF3, 0x3E, 0x00, 0xD2, 0xBB, 0x1A, 0xE2,\n0x28, 0x5C, 0xB3, 0xC3, 0x87, 0xEF, 0x21, 0x17, 0xC7, 0x51, 0x51, 0x10, 0xE9, 0xF8, 0x07, 0xDD,\n0xF2, 0x0F, 0x3C, 0x24, 0xCC, 0xA3, 0xBA, 0xBD, 0xF7, 0xBB, 0x67, 0xEE, 0xD1, 0x48, 0x66, 0xC1,\n0x08, 0x6C, 0xD4, 0x2E, 0x52, 0xE5, 0xB2, 0xE0, 0xA3, 0xA1, 0x44, 0x08, 0xF5, 0xCA, 0x7D, 0x0E,\n0x8C, 0x28, 0x7F, 0x34, 0x5A, 0x67, 0x7D, 0x65, 0x12, 0xA2, 0x27, 0x8E, 0xA3, 0x5A, 0xA3, 0x71,\n0xFF, 0x40, 0x23, 0x78, 0xC4, 0x84, 0x89, 0xF9, 0xA2, 0x9E, 0x40, 0x51, 0xE7, 0xDE, 0x8C, 0xD8,\n0xC1, 0xC7, 0x88, 0x85, 0x9C, 0x65, 0xB1, 0x28, 0x0F, 0x8E, 0x13, 0x02, 0x20, 0xDB, 0x9E, 0xBE,\n0x0C, 0xF8, 0xB8, 0xE9, 0x84, 0xF5, 0x55, 0x03, 0xD6, 0x46, 0xFE, 0xEA, 0xC9, 0x3C, 0x96, 0xC5,\n0x42, 0xE0, 0xE5, 0xAD, 0xAF, 0x9F, 0xE7, 0xAF, 0xB8, 0x8C, 0x96, 0x87, 0x1C, 0xD1, 0xB8, 0x87,\n0xC0, 0xC7, 0x28, 0x1E, 0xEA, 0xB6, 0x7F, 0xE0, 0x21, 0x54, 0x44, 0xF6, 0xF9, 0xEE, 0x2B, 0xFC,\n0xA3, 0x41, 0x48, 0x1D, 0x7D, 0xA4, 0xF4, 0x2E, 0x5C, 0x74, 0x3C, 0x84, 0xF2, 0x07, 0xEA, 0x84,\n0xEA, 0x71, 0x52, 0xB0, 0x6D, 0x7A, 0xC8, 0xB5, 0x47, 0x08, 0xF6, 0x61, 0x10, 0x82, 0x26, 0x7E,\n0xB1, 0x62, 0x23, 0xFE, 0x48, 0x1B, 0xCE, 0x91, 0x67, 0x4E, 0xEA, 0xA6, 0x7F, 0x50, 0x31, 0xA4,\n0x3C, 0x41, 0x7A, 0xB7, 0xA9, 0x28, 0xAA, 0x03, 0xC8, 0xB6, 0xAF, 0x54, 0x55, 0x01, 0x3F, 0x0C,\n0xA4, 0xAD, 0xBA, 0x74, 0x43, 0xFC, 0xA1, 0x81, 0xEF, 0x91, 0x94, 0x56, 0x33, 0x3E, 0xF7, 0x3D,\n0xE4, 0xD8, 0x57, 0xDC, 0xBB, 0x88, 0x7F, 0xAC, 0x7A, 0x84, 0x68, 0x99, 0x65, 0xF1, 0x81, 0x89,\n0x70, 0x67, 0x79, 0xDC, 0x7E, 0xA5, 0xD6, 0x21, 0x04, 0x3F, 0xE0, 0xF6, 0x92, 0x11, 0x3A, 0xF4,\n0x2F, 0x61, 0x32, 0x13, 0xFE, 0x01, 0x22, 0x39, 0xDB, 0x4B, 0xDE, 0x99, 0x33, 0x6D, 0x36, 0xD7,\n0x3E, 0x28, 0x88, 0x18, 0xFE, 0x81, 0xF4, 0x4B, 0x68, 0xCE, 0x63, 0xF4, 0x9B, 0xBE, 0xDA, 0xE1,\n0x47, 0x18, 0xC8, 0x46, 0x23, 0x29, 0xD0, 0xA1, 0x5B, 0x7C, 0x50, 0x0E, 0xA1, 0x4A, 0x48, 0x7A,\n0xB7, 0xA3, 0xB7, 0x01, 0x64, 0x3B, 0xA5, 0x01, 0x3E, 0xF0, 0x9B, 0x12, 0x91, 0x3A, 0xF9, 0xAB,\n0x42, 0x3D, 0xF5, 0x1E, 0xB5, 0x92, 0xD2, 0xDA, 0x34, 0xD2, 0xBB, 0x36, 0x21, 0x17, 0xC7, 0xBE,\n0xF2, 0x6F, 0x37, 0x81, 0x8F, 0xA9, 0x39, 0x00, 0x21, 0xF0, 0xD1, 0x27, 0x84, 0x18, 0xE4, 0x05,\n0xE9, 0xAB, 0x2E, 0x21, 0x12, 0xFE, 0xD1, 0xC4, 0x83, 0x74, 0x6F, 0x32, 0x9D, 0xE8, 0x7D, 0x3E,\n0xEE, 0xD5, 0xF1, 0x90, 0xCC, 0x07, 0xE5, 0x73, 0xCF, 0x43, 0xAE, 0x1D, 0x42, 0xF0, 0x8F, 0x89,\n0x8B, 0x7F, 0x71, 0xB0, 0xFC, 0x03, 0x35, 0xCB, 0x1F, 0xDA, 0x61, 0x20, 0x69, 0x58, 0x6A, 0xA0,\n0xA8, 0x6E, 0xAC, 0xAF, 0xAA, 0x82, 0x08, 0xFE, 0xD1, 0x55, 0x01, 0x64, 0x3B, 0xAD, 0xBC, 0x68,\n0x93, 0x28, 0x7F, 0xF4, 0x54, 0xAF, 0xAF, 0x96, 0xC5, 0x3E, 0x8A, 0x8B, 0x10, 0x8B, 0x54, 0xC9,\n0x5E, 0xF1, 0x61, 0xE8, 0xC0, 0x35, 0x3F, 0x4C, 0x01, 0x22, 0xF1, 0xAE, 0x76, 0xC2, 0x8F, 0x76,\n0x51, 0x5D, 0x35, 0xC1, 0xFE, 0x0C, 0x7B, 0x4C, 0x84, 0x54, 0xE5, 0x0F, 0x83, 0x90, 0x1F, 0x48,\n0x5F, 0x75, 0xF8, 0xC8, 0x1E, 0x82, 0x76, 0xFD, 0x57, 0x87, 0x90, 0x87, 0x3D, 0xE1, 0x79, 0xB7,\n0xD9, 0xFE, 0x41, 0x41, 0x84, 0xF4, 0x55, 0x5F, 0x14, 0xD5, 0x2F, 0xF8, 0x4D, 0x0D, 0x36, 0x21,\n0x12, 0x53, 0x26, 0xA2, 0xF4, 0x18, 0xF9, 0x6C, 0xF5, 0xFC, 0x03, 0x13, 0x29, 0x3F, 0x49, 0x88,\n0x7F, 0x74, 0x95, 0x01, 0xD9, 0x5A, 0x2A, 0x2F, 0x0D, 0x1D, 0x0E, 0x22, 0x11, 0x9F, 0x47, 0xB5,\n0x27, 0x1F, 0x6A, 0x47, 0xBC, 0x95, 0x8E, 0xFF, 0x98, 0xFD, 0x17, 0xA6, 0x0E, 0xF8, 0x87, 0x23,\n0x19, 0x47, 0xE1, 0xC3, 0x00, 0x04, 0x0F, 0xA1, 0x7C, 0xDE, 0x69, 0x10, 0x82, 0x7F, 0x74, 0xF5,\n0xF7, 0xF4, 0x2E, 0x01, 0xC8, 0x68, 0x63, 0x89, 0x35, 0xF9, 0xE2, 0x14, 0xD5, 0x63, 0x7D, 0xE5,\n0x34, 0x93, 0x0F, 0x02, 0x11, 0x8B, 0x0F, 0x3C, 0xE4, 0x60, 0xF9, 0x47, 0x5D, 0x10, 0x89, 0xF0,\n0x9C, 0x8E, 0x8D, 0x3C, 0x3D, 0x25, 0x59, 0x7C, 0x80, 0x08, 0x91, 0xF4, 0xD6, 0xD2, 0x00, 0x88,\n0x76, 0x36, 0x21, 0xE0, 0x61, 0x13, 0xC2, 0x3A, 0x32, 0xB0, 0xC8, 0xA8, 0x50, 0x2F, 0x0C, 0x4E,\n0x36, 0xF8, 0x87, 0xA3, 0xF2, 0x43, 0x05, 0x16, 0x1F, 0x17, 0xF1, 0x43, 0xEA, 0xF8, 0x47, 0xB7,\n0xE3, 0x21, 0xF0, 0xD1, 0x27, 0xC4, 0xF2, 0x0F, 0x54, 0x00, 0xC1, 0x3E, 0x46, 0x1B, 0x71, 0x88,\n0xB6, 0x09, 0xFF, 0x20, 0x52, 0x87, 0x0F, 0xA3, 0xB9, 0xCB, 0x2B, 0x3C, 0xC4, 0xE3, 0x83, 0x74,\n0x2F, 0xFE, 0x61, 0xE8, 0x89, 0x0F, 0xC2, 0xD6, 0x4D, 0xCC, 0x9B, 0xB2, 0x32, 0xD7, 0x0E, 0x6A,\n0xC0, 0xC3, 0x52, 0x2C, 0x84, 0xB6, 0xA6, 0x66, 0x00, 0xB2, 0xCC, 0xC9, 0x2C, 0x5B, 0x84, 0x1F,\n0xEA, 0xB1, 0x57, 0x03, 0x91, 0xB4, 0xE7, 0xD8, 0xE4, 0x83, 0x5B, 0x17, 0xE1, 0xC3, 0x20, 0x64,\n0x88, 0x3E, 0x4C, 0x3E, 0x28, 0xAA, 0x33, 0x8B, 0x1C, 0x42, 0x12, 0x1F, 0xD3, 0x4A, 0x55, 0x3E,\n0xFC, 0x03, 0x16, 0x3A, 0xED, 0xDE, 0xFB, 0x13, 0x85, 0x14, 0x44, 0x48, 0x5F, 0x39, 0xCD, 0xE6,\n0x83, 0x64, 0x96, 0xF8, 0x70, 0x75, 0xB0, 0xED, 0x83, 0x82, 0x08, 0xA9, 0x5D, 0x2D, 0xA3, 0x62,\n0x59, 0xA5, 0x7D, 0x6E, 0xE9, 0x90, 0x65, 0x17, 0x7C, 0x58, 0x82, 0x0F, 0x17, 0x10, 0x5B, 0xE0,\n0xE1, 0x12, 0x82, 0x41, 0x96, 0x61, 0x19, 0x88, 0x68, 0xDB, 0xE4, 0xE7, 0xA8, 0x01, 0xC1, 0x87,\n0x23, 0xD6, 0x57, 0x96, 0x12, 0x1F, 0x33, 0x44, 0xFC, 0x61, 0x00, 0xF2, 0xF8, 0x42, 0x13, 0x52,\n0x53, 0xD3, 0x6B, 0x41, 0x88, 0xC5, 0x06, 0xA1, 0xFA, 0xFD, 0xA4, 0x81, 0x70, 0xDB, 0x97, 0x60,\n0xA5, 0xFC, 0x61, 0x34, 0xD6, 0x57, 0x36, 0x21, 0x47, 0x5F, 0x43, 0x39, 0xFD, 0x66, 0x86, 0x9E,\n0xAA, 0x83, 0x54, 0xCC, 0xB8, 0x0D, 0x5C, 0xF4, 0xE4, 0xE7, 0x82, 0x20, 0x09, 0x3E, 0x5C, 0x42,\n0xFC, 0x29, 0x0F, 0x20, 0x8E, 0x00, 0xC4, 0x52, 0xF2, 0x0F, 0x1C, 0x24, 0x0D, 0xA4, 0x7A, 0x71,\n0x90, 0x60, 0x84, 0xF2, 0x87, 0x27, 0xFC, 0xC3, 0x13, 0xFE, 0xE1, 0x74, 0xF9, 0x87, 0x02, 0x70,\n0xDF, 0x43, 0xC4, 0x07, 0xF5, 0x41, 0xC7, 0x43, 0xA8, 0x9E, 0x1B, 0x8D, 0xF5, 0x95, 0xA1, 0xFB,\n0x14, 0x88, 0x5C, 0xCD, 0x69, 0x94, 0x3F, 0xAC, 0x0E, 0x1E, 0x9E, 0x78, 0x63, 0x3D, 0x42, 0x08,\n0x52, 0xD3, 0xBE, 0x2E, 0x32, 0x3F, 0x61, 0x13, 0xFF, 0xB2, 0x9C, 0x37, 0x31, 0xE1, 0xC3, 0x72,\n0x90, 0x3B, 0x5F, 0xCB, 0xE5, 0x1F, 0x73, 0xDA, 0x9B, 0xF1, 0x2D, 0x2D, 0x4B, 0xB4, 0x11, 0x60,\n0xF0, 0x21, 0x70, 0x66, 0x21, 0x6F, 0x6D, 0xD6, 0x37, 0x5F, 0xF9, 0x4D, 0x80, 0xCC, 0xD2, 0xED,\n0xE2, 0xEA, 0x76, 0x8E, 0x34, 0xE7, 0x67, 0x69, 0xAF, 0xC5, 0xFF, 0x6E, 0xEF, 0xB5, 0xD5, 0x7E,\n0xF7, 0x5D, 0xD2, 0xE7, 0xC3, 0xF6, 0x69, 0x6F, 0x2C, 0x5F, 0xA7, 0xFF, 0xE8, 0x1B, 0xBB, 0xED,\n0xF6, 0x33, 0x4F, 0xFE, 0x6A, 0xD6, 0x95, 0xB9, 0x5D, 0xDC, 0x1E, 0x66, 0x69, 0xCD, 0xBB, 0x66,\n0xB4, 0xF5, 0x46, 0xD3, 0xC1, 0x6F, 0x9B, 0xB7, 0xDE, 0x5C, 0xFE, 0xE1, 0x4B, 0x13, 0xF3, 0xCE,\n0x17, 0x80, 0x58, 0x7C, 0xCC, 0x3A, 0x91, 0x37, 0xDF, 0x14, 0x21, 0xEE, 0xB7, 0x29, 0x68, 0x36,\n0x9B, 0x9F, 0x6E, 0xBE, 0xFA, 0xCA, 0xEE, 0xEB, 0xF5, 0xCB, 0x83, 0xAF, 0x97, 0xB7, 0x8B, 0xCB,\n0xC5, 0xAC, 0x59, 0xF0, 0xFA, 0x4C, 0x42, 0x1E, 0xF7, 0x9A, 0xF9, 0xFB, 0x95, 0xD5, 0xF6, 0x7B,\n0x4D, 0xFA, 0x4F, 0xB5, 0x35, 0xF4, 0x69, 0xAB, 0xE9, 0xF9, 0xBD, 0x5E, 0xDC, 0x6E, 0x8F, 0xF3,\n0xCE, 0xFD, 0xEA, 0xF5, 0xD7, 0x6F, 0x6D, 0xBD, 0xAE, 0x4B, 0x79, 0x79, 0x7B, 0x98, 0x71, 0xF5,\n0xF5, 0x56, 0xF9, 0xEF, 0xEC, 0xFA, 0xAB, 0x8D, 0xF4, 0x8E, 0x3B, 0x6D, 0x04, 0x93, 0x26, 0xDA,\n0x2C, 0x40, 0x96, 0xCB, 0xBB, 0x8F, 0xEF, 0x3C, 0x7D, 0x01, 0x20, 0x16, 0x1F, 0x3E, 0x21, 0xF2,\n0x0F, 0x49, 0x84, 0xB8, 0xDF, 0xEA, 0x26, 0x69, 0x0E, 0x1F, 0xD2, 0x4B, 0x9B, 0x8F, 0xCB, 0xEB,\n0xF4, 0x7B, 0x98, 0x6D, 0x3D, 0x6A, 0xCE, 0x40, 0x88, 0xA9, 0xF4, 0x29, 0xBF, 0x9F, 0xEC, 0x22,\n0x09, 0x1E, 0x7C, 0x99, 0xF8, 0xE9, 0x14, 0x8A, 0x7F, 0x2C, 0x5E, 0xAC, 0xA6, 0x37, 0x7D, 0xDD,\n0xEB, 0x57, 0x6A, 0xB7, 0xB6, 0xC4, 0x87, 0x56, 0x59, 0xC3, 0x55, 0x35, 0xDA, 0xCF, 0x87, 0x97,\n0xEB, 0x41, 0x73, 0xF8, 0xC8, 0x84, 0x78, 0x80, 0x88, 0x8F, 0x41, 0x73, 0xF8, 0x90, 0xFE, 0x7B,\n0x07, 0xF9, 0xF8, 0x8F, 0xF8, 0x9B, 0x0B, 0xBE, 0x7D, 0x14, 0x42, 0xAC, 0x6F, 0x73, 0x13, 0xD2,\n0xCC, 0xB7, 0xF1, 0x90, 0x4C, 0x3C, 0x0E, 0x99, 0x0F, 0xDB, 0x43, 0x34, 0x5F, 0x52, 0x73, 0xE7,\n0x58, 0x68, 0xAF, 0xE9, 0xEF, 0xF8, 0xC7, 0x2E, 0xBC, 0xE2, 0x73, 0x4C, 0xC4, 0xD1, 0xC0, 0x9F,\n0xD3, 0x6D, 0xA0, 0xF1, 0x0F, 0x7D, 0xAF, 0x8F, 0x3E, 0x1F, 0xC3, 0xB5, 0xBC, 0xBE, 0xB5, 0xFD,\n0x43, 0x12, 0x24, 0x26, 0x1E, 0x37, 0x9B, 0x90, 0xE7, 0x20, 0xC1, 0x87, 0x4F, 0x48, 0x99, 0xC6,\n0xFF, 0x29, 0x20, 0x72, 0x24, 0xFE, 0x10, 0x88, 0x0D, 0x48, 0xE8, 0x1D, 0x73, 0x7D, 0x15, 0x8A,\n0x75, 0xE8, 0x44, 0xCF, 0xD7, 0x7C, 0x18, 0x2D, 0x3E, 0x6E, 0xAF, 0x13, 0x1E, 0x2E, 0x21, 0x57,\n0x57, 0x10, 0x62, 0xEB, 0x71, 0xE8, 0x2B, 0x11, 0xB2, 0xDB, 0xC7, 0xF0, 0xAF, 0xFD, 0x03, 0x8C,\n0x7C, 0x0F, 0xD1, 0xD7, 0xC4, 0xE9, 0x64, 0x2D, 0xA6, 0xFA, 0x0B, 0xE1, 0x91, 0x9B, 0x17, 0x88,\n0xC4, 0x95, 0x1C, 0x08, 0xB1, 0x2E, 0xFE, 0xBA, 0x88, 0x77, 0xD6, 0xE0, 0x03, 0x0F, 0xE9, 0xE3,\n0x11, 0x7C, 0xD8, 0x84, 0xF0, 0xF7, 0x02, 0x6D, 0x40, 0x5E, 0xBB, 0x33, 0xA4, 0x17, 0xE6, 0x4F,\n0x86, 0x5A, 0xEB, 0x2B, 0x34, 0x8B, 0x8F, 0x77, 0x36, 0xBA, 0x4C, 0xD3, 0x78, 0xA0, 0x97, 0xD3,\n0x78, 0x64, 0xFF, 0x88, 0x6E, 0xF2, 0x11, 0xED, 0xF5, 0x3C, 0xC5, 0xC2, 0x27, 0xE8, 0x3C, 0x0E,\n0x3A, 0xCA, 0xAA, 0xA6, 0xC4, 0x21, 0xFB, 0x49, 0xFF, 0xF0, 0x4D, 0x04, 0xED, 0x84, 0x58, 0xCF,\n0x3D, 0x76, 0x6A, 0x99, 0x0E, 0xA2, 0xF4, 0x55, 0xDA, 0xDA, 0x5D, 0xE2, 0x9B, 0x15, 0x21, 0xAE,\n0x7F, 0xA4, 0x7E, 0xBD, 0x30, 0x08, 0x79, 0x7A, 0x9B, 0xD4, 0x27, 0x4D, 0x44, 0x6D, 0xB3, 0x41,\n0x06, 0x20, 0xCC, 0x32, 0x8F, 0x10, 0xFE, 0xBC, 0xBF, 0xB5, 0xCC, 0x7A, 0x6D, 0x00, 0x44, 0xA3,\n0x15, 0x7E, 0xF0, 0xA7, 0xA4, 0x26, 0xF1, 0x48, 0x7C, 0xA0, 0xC9, 0x38, 0x64, 0x73, 0xAE, 0xB5,\n0x61, 0x1F, 0x6A, 0xF6, 0x32, 0x6B, 0x11, 0xFE, 0xA1, 0xAE, 0xCD, 0xE0, 0xE3, 0xF1, 0xEF, 0x93,\n0x26, 0x66, 0x92, 0x76, 0x74, 0x1E, 0x67, 0x3C, 0x32, 0x23, 0xD9, 0x43, 0x76, 0xFB, 0x64, 0x14,\n0x78, 0x49, 0xED, 0x1F, 0x9F, 0xCF, 0xB7, 0x0F, 0x08, 0xE9, 0xDB, 0x47, 0xE6, 0x03, 0x43, 0x13,\n0xC0, 0x69, 0xAB, 0x05, 0x3C, 0x7C, 0xAB, 0x5E, 0x20, 0x52, 0xAE, 0x63, 0xC4, 0x21, 0x96, 0x7F,\n0xA0, 0xA9, 0x85, 0xF3, 0x4F, 0xFA, 0x80, 0x44, 0x1F, 0x4E, 0x11, 0x92, 0xFD, 0x03, 0x59, 0x7C,\n0x30, 0x8F, 0x0D, 0x3E, 0x5E, 0x13, 0x20, 0x1F, 0xBF, 0x36, 0x89, 0x48, 0x40, 0x17, 0x7F, 0xE9,\n0x79, 0x12, 0x11, 0x99, 0x46, 0x4D, 0x48, 0xD7, 0x26, 0x37, 0x92, 0x4D, 0x88, 0xF8, 0xA8, 0x2E,\n0xFB, 0xCB, 0x09, 0x03, 0x59, 0x24, 0xFF, 0xA0, 0x4F, 0xF1, 0xF1, 0x18, 0x93, 0x05, 0x0F, 0xA9,\n0xE6, 0x18, 0xCE, 0x11, 0x88, 0xEC, 0x33, 0x22, 0xF1, 0xD9, 0x9D, 0x26, 0x71, 0x1A, 0xD3, 0x41,\n0x95, 0xBE, 0x6A, 0x23, 0xE0, 0xAB, 0xED, 0x21, 0x3B, 0x0D, 0xC1, 0x87, 0x4E, 0x61, 0x40, 0x35,\n0x0F, 0xA1, 0x45, 0xB3, 0xA9, 0xC7, 0x77, 0x49, 0x9B, 0xF6, 0x0F, 0xFA, 0xB4, 0x87, 0xAC, 0xD1,\n0xCB, 0x69, 0x42, 0xD6, 0x9B, 0x5A, 0x13, 0xF9, 0xAB, 0x37, 0x6B, 0x4D, 0xC7, 0xE7, 0xFC, 0xDD,\n0x59, 0xF5, 0x49, 0x3E, 0xC2, 0x41, 0x84, 0x48, 0x57, 0x7A, 0xAD, 0xD2, 0xCB, 0x42, 0xCB, 0x09,\n0x3F, 0xD0, 0x6F, 0xE3, 0x1E, 0x22, 0x6D, 0x9E, 0x6B, 0x34, 0x52, 0x57, 0x7B, 0xBA, 0xDE, 0xA8,\n0x9B, 0xDE, 0xBD, 0x2C, 0xFE, 0x41, 0xEF, 0xA7, 0x77, 0xEB, 0xF6, 0xA8, 0x89, 0x24, 0x10, 0x98,\n0x59, 0xC1, 0x45, 0x1C, 0x3E, 0xE6, 0xBE, 0x4F, 0x63, 0x26, 0x24, 0xAC, 0x62, 0x1F, 0xF6, 0xC1,\n0x00, 0x1F, 0x4D, 0x59, 0xF0, 0x8C, 0xE4, 0x8D, 0x57, 0xF8, 0x47, 0xC6, 0x23, 0x16, 0x7E, 0x71,\n0xF2, 0x6D, 0xC5, 0x67, 0x01, 0xED, 0xB1, 0x4F, 0x48, 0x59, 0xAB, 0xB2, 0xCA, 0xBA, 0xED, 0x5C,\n0xFC, 0x9F, 0x79, 0xA3, 0xE2, 0x48, 0x84, 0x8C, 0xF2, 0x11, 0xE9, 0xAB, 0x9A, 0x90, 0x5E, 0xF9,\n0x03, 0x59, 0x84, 0x6C, 0xE3, 0x4F, 0x17, 0x4A, 0xDA, 0x0F, 0x07, 0x13, 0x7C, 0x88, 0x8C, 0x02,\n0x48, 0x0F, 0x91, 0x8C, 0x5D, 0x26, 0x24, 0x1D, 0xA6, 0x9D, 0x11, 0x7E, 0x18, 0x1E, 0x82, 0x7F,\n0x58, 0x84, 0x48, 0x2F, 0xB9, 0xEA, 0x86, 0x87, 0xAC, 0x79, 0x4F, 0xE9, 0xD7, 0x46, 0xFC, 0x41,\n0x13, 0x21, 0xB5, 0x87, 0xAC, 0x22, 0x85, 0x2A, 0x95, 0xB9, 0xC8, 0x81, 0x08, 0x59, 0x89, 0x85,\n0x8C, 0x08, 0x1E, 0xA2, 0xB1, 0x19, 0x9E, 0xCF, 0x8F, 0x43, 0xF4, 0xAA, 0xC5, 0x37, 0x30, 0x0F,\n0xFC, 0x23, 0x9B, 0x48, 0x65, 0x6C, 0xAB, 0x56, 0x5F, 0x5C, 0xBD, 0xDE, 0x68, 0x9E, 0x7D, 0xE0,\n0xC7, 0x9D, 0x8B, 0xCF, 0x1B, 0x05, 0x22, 0xBD, 0xF4, 0xAE, 0x47, 0x08, 0xE5, 0x8F, 0x59, 0x84,\n0x10, 0x26, 0x68, 0x2D, 0x44, 0x1C, 0xD2, 0xE5, 0x03, 0x07, 0x51, 0xEB, 0xF0, 0x41, 0x1F, 0x38,\n0x09, 0x06, 0x6D, 0x3E, 0x3A, 0x05, 0x11, 0xFC, 0xA3, 0xD6, 0x58, 0xA4, 0x1E, 0x97, 0xB9, 0xD6,\n0xCF, 0x63, 0xE9, 0xAB, 0xC6, 0x7B, 0x0A, 0x21, 0x86, 0x7F, 0xB0, 0xCC, 0x62, 0x9A, 0x9D, 0xE3,\n0xF2, 0x58, 0xD8, 0x50, 0x2F, 0x11, 0xF2, 0x2E, 0x0C, 0x03, 0x0F, 0xF9, 0x87, 0xE9, 0xAB, 0x7E,\n0x41, 0x04, 0xFE, 0xD4, 0x22, 0x7D, 0x15, 0xE7, 0x81, 0xB1, 0xB5, 0x32, 0x59, 0xDA, 0xB2, 0x7F,\n0xB4, 0xBE, 0x5B, 0x87, 0x0F, 0xFA, 0xB5, 0x08, 0xB1, 0xE2, 0x8F, 0xF2, 0xD0, 0xE4, 0xA3, 0x9F,\n0xCC, 0x82, 0x8F, 0x5A, 0xE3, 0xD1, 0x87, 0x5A, 0x99, 0xBD, 0x98, 0xC8, 0x38, 0x1F, 0x1F, 0x17,\n0x07, 0x89, 0xA3, 0x31, 0x40, 0xC2, 0x3E, 0xC4, 0x06, 0xAF, 0xBF, 0x4D, 0x26, 0x62, 0xAD, 0xAF,\n0x38, 0xF1, 0x4D, 0xDB, 0x28, 0xC7, 0xD4, 0xCE, 0x08, 0x72, 0xB5, 0x2B, 0x1D, 0x9A, 0xBA, 0x5C,\n0xA8, 0x3D, 0xEF, 0xDA, 0x2C, 0x3E, 0x68, 0xC2, 0x22, 0xCF, 0xAB, 0xE8, 0xF1, 0x98, 0x0F, 0xEC,\n0x98, 0x94, 0xE7, 0x1E, 0xB2, 0x3A, 0xF7, 0x90, 0x9D, 0x81, 0x82, 0x5B, 0x32, 0xCC, 0x35, 0x49,\n0x0C, 0x44, 0xFD, 0xEF, 0xB4, 0x6A, 0x80, 0xDF, 0xE7, 0x5A, 0x50, 0xFE, 0x78, 0xDE, 0x1E, 0x47,\n0xF9, 0x68, 0x13, 0x72, 0xD9, 0xC3, 0xA3, 0x41, 0xC9, 0x4D, 0x8B, 0x0F, 0xD2, 0xBB, 0x0D, 0x42,\n0x0C, 0xFF, 0x40, 0xE3, 0xFE, 0x11, 0x31, 0xF4, 0x56, 0x7B, 0x78, 0xE9, 0xF1, 0x81, 0x83, 0xE4,\n0xAD, 0x59, 0x1E, 0x24, 0xFA, 0xC8, 0x88, 0x14, 0x50, 0x24, 0x0B, 0x0F, 0xB4, 0xE9, 0x84, 0x1F,\n0xC6, 0x2A, 0x0B, 0xFF, 0x68, 0x7A, 0x48, 0xA7, 0xFC, 0xD1, 0xEC, 0x23, 0xE5, 0xF3, 0x76, 0x1B,\n0x08, 0x69, 0xA6, 0x83, 0xC8, 0xA9, 0x26, 0x38, 0x62, 0x76, 0xEA, 0xF0, 0xB9, 0x87, 0xFC, 0x7B,\n0xFF, 0x40, 0xBB, 0xFC, 0xC2, 0xC0, 0x47, 0xF9, 0x63, 0x5F, 0x20, 0x55, 0xDB, 0xC7, 0xB9, 0x05,\n0xCF, 0x6C, 0x99, 0x8F, 0xD1, 0xE6, 0xF8, 0x07, 0x9D, 0x82, 0x48, 0xDB, 0x3E, 0x40, 0x83, 0x92,\n0x61, 0x1D, 0x7E, 0x34, 0xFD, 0x83, 0x64, 0x96, 0xE1, 0x1F, 0xA8, 0x63, 0x20, 0xF4, 0x3C, 0x95,\n0x53, 0x38, 0xFD, 0xF1, 0x28, 0x1F, 0x64, 0xB1, 0x62, 0x6B, 0x94, 0x07, 0xE3, 0x05, 0xF5, 0x5A,\n0x58, 0x54, 0xEC, 0x6D, 0x40, 0x08, 0x44, 0xAC, 0xE5, 0xD5, 0x78, 0x51, 0x1D, 0x3C, 0xD2, 0x30,\n0x15, 0x88, 0x88, 0x8F, 0x51, 0x40, 0xAE, 0x2F, 0x5B, 0xE1, 0x47, 0xA7, 0x3D, 0x9B, 0x66, 0xE4,\n0x8B, 0xD2, 0x5C, 0x64, 0x9D, 0x95, 0xC5, 0xCA, 0x27, 0xED, 0xE0, 0xE3, 0xBF, 0xF2, 0x90, 0x7D,\n0xA3, 0xFC, 0xA1, 0x91, 0x3D, 0x11, 0x7B, 0x4B, 0x82, 0x7E, 0xBC, 0x5D, 0xF5, 0xD2, 0xBB, 0x75,\n0x57, 0x7B, 0x4E, 0x48, 0x05, 0x06, 0xC7, 0x69, 0xA8, 0xF3, 0x2E, 0x9B, 0xBE, 0xFE, 0x68, 0xA7,\n0xAF, 0x7C, 0x42, 0x88, 0xA2, 0x4B, 0xA4, 0xA0, 0x2D, 0x52, 0x4E, 0x8D, 0xA2, 0x3A, 0x48, 0x54,\n0x0E, 0x52, 0x23, 0x12, 0x86, 0x81, 0x69, 0xE8, 0x30, 0x0F, 0x71, 0xE0, 0xF1, 0xD1, 0x4E, 0x66,\n0xC1, 0x47, 0x8F, 0x90, 0x9A, 0x8F, 0x9E, 0x2C, 0xFF, 0x60, 0x95, 0x65, 0xF1, 0x81, 0x89, 0x3C,\n0xD6, 0xC9, 0x20, 0x0A, 0x20, 0xF5, 0xA1, 0x7A, 0x49, 0x66, 0xA9, 0xEB, 0x60, 0x18, 0x4C, 0xCF,\n0xE0, 0xD0, 0xBF, 0x31, 0x8B, 0xF2, 0xC7, 0x23, 0xE7, 0x90, 0x1F, 0x90, 0x44, 0x48, 0x5C, 0x97,\n0xE1, 0x45, 0xFB, 0xBB, 0x24, 0x99, 0xE5, 0xF2, 0xC1, 0x2A, 0xAB, 0xED, 0x1F, 0xB0, 0xC1, 0xAE,\n0x26, 0x04, 0x3E, 0x9C, 0x38, 0x04, 0x3E, 0x6C, 0x42, 0x0A, 0x0A, 0x01, 0x06, 0xD1, 0x7A, 0x4C,\n0xED, 0x8F, 0xDB, 0xFE, 0x41, 0x0C, 0x32, 0xB2, 0xCA, 0x8A, 0x17, 0xC2, 0x35, 0x22, 0x44, 0x27,\n0xA1, 0xE5, 0xF1, 0x81, 0xDE, 0xDA, 0x54, 0xE9, 0xAB, 0xBE, 0x5A, 0xE1, 0xC7, 0xB8, 0x85, 0xE0,\n0x21, 0xDC, 0x7E, 0xD5, 0xED, 0xE7, 0x7C, 0x68, 0x7D, 0xD5, 0x6F, 0x91, 0x32, 0xD5, 0x40, 0xF8,\n0x41, 0x0C, 0x52, 0xCC, 0x44, 0x3B, 0x42, 0xF5, 0x12, 0x4B, 0x1B, 0x7C, 0xD8, 0x82, 0x90, 0x30,\n0x90, 0xC1, 0xA5, 0xC8, 0x5C, 0x15, 0x2A, 0x62, 0x0C, 0x70, 0x9F, 0xDD, 0x7D, 0x25, 0x03, 0xE9,\n0x37, 0x8F, 0x8F, 0x76, 0x51, 0xBD, 0x81, 0x06, 0xAA, 0x3D, 0xC4, 0xE0, 0xA3, 0x2A, 0x88, 0x30,\n0x9F, 0x3C, 0x44, 0x96, 0x64, 0x97, 0x00, 0x23, 0x1F, 0x07, 0x3A, 0x6D, 0x3E, 0x70, 0x90, 0x36,\n0x21, 0x67, 0x61, 0x3F, 0xE4, 0xE1, 0x27, 0x1A, 0x3C, 0x3E, 0x10, 0x1E, 0x62, 0xF0, 0xA1, 0xB2,\n0x2A, 0xD7, 0x11, 0x30, 0x3A, 0x3A, 0xC0, 0xC7, 0x35, 0x6F, 0xA0, 0xE3, 0x21, 0x4C, 0x8D, 0x4E,\n0xAB, 0xC3, 0x90, 0xC7, 0x82, 0x42, 0xE2, 0xA2, 0x76, 0x96, 0x81, 0x90, 0x30, 0x91, 0xD5, 0xA7,\n0x6E, 0xDC, 0x11, 0x3B, 0x87, 0x90, 0xA7, 0xEA, 0xF9, 0x37, 0xAB, 0xC2, 0xC4, 0xBE, 0x50, 0x52,\n0xAC, 0x23, 0xD1, 0xAA, 0x81, 0x82, 0xA1, 0x06, 0xCA, 0x1F, 0x3D, 0x0F, 0xF1, 0xF8, 0xA0, 0x64,\n0x08, 0x22, 0x2F, 0xD7, 0x1D, 0x03, 0xC1, 0x43, 0x28, 0x7F, 0x58, 0x84, 0xE0, 0x1F, 0x8E, 0x2A,\n0x3E, 0x32, 0x14, 0x85, 0x8E, 0x90, 0x9E, 0x29, 0x65, 0xBD, 0xBF, 0xE3, 0x51, 0x03, 0x92, 0x0F,\n0x20, 0x04, 0xFF, 0x20, 0xE8, 0xD7, 0x4E, 0xDA, 0xE6, 0xC6, 0xD3, 0x1A, 0x3D, 0x3E, 0x50, 0xD8,\n0xC7, 0x19, 0x1F, 0x4E, 0xA8, 0xBE, 0x46, 0x3D, 0x52, 0x0A, 0x1E, 0x67, 0xB7, 0x97, 0x18, 0x71,\n0x88, 0x81, 0x87, 0x5A, 0x9E, 0x7E, 0xAB, 0x33, 0x38, 0x50, 0x9A, 0x9E, 0xB9, 0x87, 0xF6, 0xAB,\n0x88, 0xA3, 0xBF, 0xFB, 0x5F, 0xB4, 0x8A, 0x38, 0x84, 0x60, 0x23, 0xF6, 0x1C, 0x68, 0x0C, 0x37,\n0x41, 0x84, 0xE7, 0x9E, 0x87, 0x5C, 0x5D, 0x5E, 0x5A, 0xD7, 0x12, 0xFF, 0xA8, 0xE1, 0x68, 0x8A,\n0xF4, 0xAE, 0x25, 0xFC, 0xC3, 0x13, 0x7C, 0x10, 0x9B, 0xA7, 0x89, 0x3C, 0x4C, 0x67, 0x78, 0x29,\n0x65, 0xBD, 0x0E, 0x20, 0x67, 0x8F, 0xD5, 0x22, 0x3E, 0xC7, 0x3A, 0x60, 0x23, 0x5E, 0x4E, 0x8A,\n0x07, 0xC3, 0x08, 0x1E, 0xD6, 0x79, 0x47, 0x78, 0x6E, 0x89, 0xBB, 0x7B, 0x4B, 0xFA, 0x4A, 0xAD,\n0x2F, 0xCA, 0x1F, 0xD3, 0x5D, 0xDB, 0x02, 0xFF, 0x98, 0xED, 0x21, 0x8F, 0x31, 0xF9, 0xF6, 0x50,\n0xB1, 0x8F, 0x1E, 0xAC, 0x88, 0x10, 0xCA, 0xE7, 0xBE, 0x87, 0xA8, 0x7B, 0x4A, 0xA9, 0x2C, 0xF1,\n0xC1, 0x19, 0x95, 0x22, 0xC8, 0x5E, 0x1D, 0x8A, 0x03, 0xDE, 0x28, 0xE2, 0xC8, 0x3F, 0xBC, 0x46,\n0xFA, 0xCA, 0xEA, 0x51, 0x54, 0x27, 0xCD, 0x08, 0x22, 0xEC, 0x53, 0xCF, 0x1B, 0x7C, 0x98, 0x84,\n0x50, 0x3E, 0x77, 0x84, 0x7D, 0x10, 0x47, 0x63, 0x20, 0x99, 0x97, 0x68, 0x91, 0xEE, 0x05, 0x0F,\n0x36, 0x62, 0x90, 0xCA, 0x43, 0x60, 0xAB, 0x84, 0x37, 0x91, 0xC9, 0xD2, 0x8E, 0x67, 0xD3, 0x08,\n0x1F, 0x96, 0xF0, 0x0F, 0xDB, 0x43, 0x48, 0x5F, 0xF5, 0x2C, 0x04, 0x42, 0x8E, 0xAC, 0xAF, 0x2C,\n0x0F, 0xE9, 0x85, 0x1F, 0x75, 0x51, 0x1D, 0xB7, 0x60, 0x85, 0x9F, 0xA1, 0xC8, 0xC8, 0x00, 0x4B,\n0xC4, 0x21, 0xFF, 0x93, 0x7F, 0x10, 0xAA, 0x27, 0x04, 0x22, 0xF6, 0xA1, 0x18, 0xC3, 0x2D, 0x94,\n0xF0, 0x83, 0x7F, 0x78, 0x2D, 0xF8, 0xB0, 0xAF, 0xE5, 0x4B, 0xFC, 0xC3, 0xD1, 0x8D, 0xCD, 0x07,\n0xA1, 0xFA, 0x9B, 0xBE, 0x58, 0x5E, 0x55, 0x71, 0x47, 0xE0, 0x52, 0x55, 0xF8, 0x88, 0x3F, 0xC6,\n0x1C, 0x84, 0x2D, 0x95, 0xCF, 0x03, 0x8C, 0x46, 0x80, 0x93, 0x7B, 0xE0, 0xA3, 0x0D, 0x3E, 0xBC,\n0x13, 0xC7, 0x3F, 0x4C, 0x0F, 0x01, 0x0A, 0x43, 0xF2, 0x0F, 0xBD, 0x59, 0x26, 0x21, 0x1A, 0x6C,\n0x3E, 0x28, 0x88, 0xD4, 0x6B, 0x18, 0xD2, 0x47, 0xA8, 0xA0, 0x32, 0x37, 0x3C, 0x9F, 0x9D, 0xEE,\n0xCD, 0x34, 0x52, 0xFB, 0x20, 0x36, 0x27, 0xEB, 0xFB, 0x94, 0x90, 0xC6, 0x3F, 0xAC, 0x86, 0x7F,\n0x38, 0xFD, 0x5A, 0xE9, 0xDE, 0x66, 0x75, 0x50, 0xBD, 0x36, 0x90, 0xF0, 0x90, 0xCD, 0x1C, 0x7D,\n0x48, 0xF8, 0x61, 0x49, 0x78, 0x70, 0x6B, 0x54, 0x28, 0xA6, 0x33, 0xCF, 0x53, 0x16, 0xA9, 0xEC,\n0xA3, 0x55, 0x07, 0x79, 0x2A, 0xAA, 0xC7, 0xEB, 0xB0, 0x76, 0x2B, 0x7E, 0x32, 0x0C, 0xFC, 0x3F,\n0x22, 0x3A, 0xD9, 0xBE, 0x39, 0x4F, 0xF8, 0x87, 0x65, 0xAD, 0x9B, 0x97, 0x87, 0xB8, 0xC2, 0x8E,\n0x85, 0x7C, 0xB5, 0x96, 0x7F, 0xF8, 0x6F, 0xAA, 0x36, 0x73, 0xB2, 0x70, 0xDB, 0x09, 0x1F, 0xCB,\n0xDA, 0xEF, 0xCF, 0x1D, 0xE3, 0xA9, 0x97, 0xE9, 0xA8, 0xBF, 0x01, 0x3D, 0x9F, 0x0E, 0x5F, 0x2B,\n0xF2, 0xB9, 0x60, 0x1B, 0x4B, 0x3F, 0x9E, 0x9D, 0x19, 0x7F, 0xD0, 0xD2, 0x05, 0x72, 0xFB, 0xE2,\n0x1A, 0xFF, 0x30, 0xA4, 0xB7, 0x75, 0x33, 0x73, 0x2A, 0xCC, 0x9C, 0x68, 0xD5, 0x87, 0xB9, 0x5A,\n0x81, 0x43, 0x3B, 0x78, 0x29, 0x4F, 0xAB, 0xFE, 0xE1, 0x38, 0x88, 0xC6, 0xFC, 0x1A, 0x38, 0xD1,\n0x19, 0x85, 0x91, 0x0C, 0x00, 0x49, 0xD3, 0x40, 0xE0, 0xE3, 0xAD, 0x79, 0x97, 0x85, 0xBF, 0x78,\n0x60, 0xE9, 0x90, 0x6B, 0x57, 0x76, 0x5F, 0x50, 0x00, 0xB1, 0xDA, 0xF7, 0xB1, 0x74, 0x51, 0xCF,\n0x47, 0xC4, 0x1C, 0xA1, 0xF2, 0x74, 0x72, 0x95, 0xDD, 0x3C, 0x07, 0xF9, 0x1C, 0x9C, 0xCC, 0x3B,\n0x17, 0x13, 0x0D, 0xE1, 0x17, 0x7A, 0x50, 0x1E, 0x61, 0x1E, 0xE5, 0xF4, 0x34, 0x3C, 0x7E, 0x2F,\n0x0F, 0x9C, 0xF1, 0xCD, 0x5E, 0x2D, 0x1C, 0x42, 0x28, 0x87, 0x1C, 0x0F, 0xBE, 0x81, 0xCC, 0x77,\n0x90, 0xEA, 0xE7, 0x3F, 0x2C, 0x0F, 0x21, 0x68, 0x8E, 0x23, 0x6D, 0x99, 0x94, 0x02, 0x0C, 0xF5,\n0xC3, 0xED, 0x5D, 0xD3, 0x41, 0x9E, 0xF9, 0x87, 0xFE, 0x3B, 0x89, 0xDC, 0x98, 0x06, 0x82, 0x8F,\n0xD2, 0x78, 0x30, 0xF0, 0xA1, 0x6D, 0x06, 0x1F, 0xEF, 0x40, 0x88, 0xB5, 0xC2, 0xFA, 0xE9, 0xE6,\n0xE5, 0xC1, 0xB5, 0x10, 0xF1, 0x71, 0x14, 0x22, 0xD7, 0xB6, 0x7F, 0x48, 0xF2, 0x10, 0xDF, 0x40,\n0x5E, 0xFF, 0xFE, 0x29, 0x10, 0x81, 0x85, 0x50, 0xC6, 0x84, 0x67, 0x12, 0x1F, 0xFB, 0xDD, 0x2C,\n0x3E, 0x44, 0xC8, 0xCE, 0xE7, 0x63, 0xF5, 0x8D, 0x08, 0x49, 0xB3, 0x9F, 0x93, 0xE1, 0x21, 0xA7,\n0x52, 0xFC, 0x2C, 0xC9, 0xF7, 0x0F, 0xC9, 0x26, 0x44, 0xED, 0x78, 0x7B, 0x79, 0xF4, 0x0D, 0x44,\n0x7C, 0x38, 0x84, 0xDC, 0xE4, 0x4D, 0xFE, 0x31, 0x68, 0x3E, 0x21, 0x4C, 0x63, 0xC2, 0x0F, 0x42,\n0x0F, 0xE6, 0x79, 0xFA, 0x9B, 0x20, 0x1F, 0x3B, 0x31, 0xC8, 0x56, 0x4A, 0x3C, 0xE0, 0x42, 0x04,\n0x1F, 0x54, 0xEC, 0xA5, 0x3F, 0xB4, 0x65, 0x34, 0x7C, 0x40, 0x84, 0x87, 0x4F, 0x08, 0x3F, 0xA3,\n0xEE, 0x06, 0x21, 0x47, 0xBD, 0x4B, 0x22, 0x64, 0x71, 0xED, 0xF2, 0x31, 0x8F, 0x90, 0xA4, 0xF0,\n0x90, 0xE4, 0x12, 0xE7, 0x0B, 0x7D, 0x49, 0x3B, 0x82, 0x65, 0xF1, 0xA1, 0x3C, 0x96, 0x3B, 0xE1,\n0xB5, 0x1A, 0x4B, 0x1A, 0x8E, 0x2C, 0x09, 0x3E, 0x69, 0x0F, 0x94, 0x94, 0x3C, 0x38, 0x37, 0xB2,\n0x58, 0x8F, 0x82, 0xDB, 0x07, 0x24, 0xF8, 0x98, 0x41, 0xC8, 0x61, 0xF8, 0xED, 0x7C, 0xF2, 0x10,\n0xD3, 0x40, 0xF2, 0x5B, 0xBB, 0xF1, 0xFD, 0x43, 0xED, 0x9F, 0x10, 0x02, 0x08, 0x04, 0xCE, 0x84,\n0x1E, 0x85, 0x97, 0xA4, 0xE5, 0xB6, 0x26, 0xA4, 0xAE, 0x83, 0xA4, 0xE5, 0x55, 0xA8, 0x58, 0x07,\n0x04, 0x6A, 0x2C, 0xA1, 0x47, 0xF1, 0x27, 0xC8, 0x30, 0xF9, 0xC8, 0x72, 0xF3, 0x58, 0x3F, 0xDD,\n0x04, 0x20, 0x81, 0xC7, 0xA8, 0x85, 0xE0, 0x1F, 0x52, 0xF2, 0x10, 0x9F, 0x0F, 0x9F, 0x90, 0x22,\n0x56, 0x32, 0x67, 0x77, 0x64, 0xB1, 0xEA, 0xCA, 0xCF, 0xAF, 0x76, 0xBB, 0x6F, 0x76, 0xAE, 0x87,\n0x28, 0xC5, 0xFB, 0x24, 0xEF, 0x3F, 0x50, 0x85, 0x50, 0x2D, 0x08, 0x21, 0x20, 0x8A, 0xD3, 0x89,\n0x38, 0x1D, 0x64, 0x44, 0x47, 0xC8, 0xE5, 0x03, 0x42, 0x0C, 0xFB, 0xB8, 0x3D, 0x1E, 0xD5, 0xE5,\n0x21, 0xD6, 0x07, 0x19, 0xBF, 0x4A, 0xAE, 0x6B, 0x1C, 0xA8, 0x4C, 0x9C, 0xD9, 0x84, 0x94, 0x7A,\n0x44, 0xA9, 0xE6, 0x91, 0x86, 0x8D, 0x08, 0x3A, 0xC7, 0x1F, 0x65, 0xDA, 0x77, 0xEB, 0x20, 0x6A,\n0x85, 0x8F, 0x3B, 0x5C, 0xE4, 0x4F, 0x56, 0x6D, 0x85, 0x3B, 0x2A, 0xE9, 0x9C, 0x88, 0xBB, 0xBE,\n0x4A, 0x4D, 0xB2, 0xFD, 0x23, 0x9A, 0x13, 0x00, 0x5E, 0x0E, 0xFE, 0x31, 0xF4, 0xC3, 0xD1, 0xF0,\n0x90, 0x05, 0xF2, 0x08, 0x91, 0xF0, 0x90, 0xC8, 0x18, 0xB1, 0xBA, 0xAA, 0xEE, 0x0E, 0x4C, 0xFE,\n0x21, 0xFB, 0x48, 0xAB, 0x2C, 0x23, 0xFA, 0xDE, 0x7D, 0x8E, 0x7C, 0xFF, 0x90, 0x82, 0x90, 0x40,\n0x93, 0xD4, 0x33, 0x0A, 0xFF, 0x40, 0x16, 0x1F, 0xC8, 0xE1, 0x43, 0xFE, 0x91, 0xA5, 0x23, 0xC3,\n0x40, 0x5E, 0xF2, 0xC6, 0xFA, 0xFE, 0xA1, 0x26, 0xCD, 0x26, 0x04, 0x07, 0xC9, 0xAD, 0x11, 0x92,\n0x14, 0x3D, 0x0B, 0xD5, 0x2B, 0x40, 0x84, 0x05, 0x5A, 0xDE, 0x51, 0x22, 0x0C, 0xF1, 0xBF, 0x12,\n0x3A, 0xC1, 0x07, 0x84, 0x58, 0x78, 0x48, 0xDA, 0x79, 0xAB, 0xAC, 0xE1, 0xF2, 0xD1, 0x26, 0x2D,\n0xE4, 0x10, 0x78, 0xA8, 0xEB, 0xED, 0x32, 0x62, 0xF5, 0x79, 0x84, 0x0C, 0x33, 0x0C, 0x05, 0x04,\n0x54, 0xCF, 0x63, 0x28, 0xF9, 0xA3, 0xC4, 0x87, 0xB4, 0x4F, 0x6D, 0x65, 0xC5, 0x1F, 0xC8, 0x0A,\n0xCF, 0x9F, 0xDA, 0x6E, 0x15, 0x27, 0x40, 0xBC, 0x5E, 0x9D, 0x5B, 0xF2, 0x0F, 0x64, 0xF2, 0x01,\n0x21, 0x8E, 0x7F, 0xC4, 0xC5, 0x17, 0x22, 0x7F, 0xD1, 0x76, 0xC6, 0xBA, 0x6D, 0x1C, 0x51, 0x14,\n0x0D, 0xD8, 0x59, 0x50, 0x91, 0x2E, 0x12, 0xD2, 0x32, 0x41, 0x0A, 0x01, 0x09, 0x10, 0x99, 0x00,\n0x0D, 0xA4, 0x08, 0xA4, 0x26, 0x04, 0xE1, 0xDA, 0xAA, 0x49, 0x81, 0x80, 0xF4, 0x09, 0x52, 0x6A,\n0xD5, 0x06, 0x5C, 0xFA, 0x63, 0x73, 0x77, 0xF6, 0x8D, 0x8E, 0x39, 0x9A, 0x9D, 0xBD, 0xE3, 0x48,\n0xF7, 0xCD, 0xCE, 0xEE, 0x52, 0x0A, 0x43, 0x91, 0x73, 0x78, 0xE7, 0xCD, 0x5B, 0xD2, 0xBF, 0xCD,\n0xA8, 0xFC, 0x2A, 0xD2, 0xAA, 0x7D, 0xC4, 0x11, 0xFE, 0xC1, 0xC8, 0xE9, 0x26, 0x24, 0xA6, 0x40,\n0x71, 0xF0, 0x39, 0x8E, 0xC8, 0xD3, 0x35, 0xDA, 0xF1, 0x90, 0x86, 0x83, 0xFC, 0x9C, 0x59, 0xFA,\n0x31, 0x27, 0x22, 0x6A, 0xA4, 0xE7, 0xE1, 0x27, 0xC1, 0x9E, 0xF4, 0xB9, 0x28, 0xCC, 0x38, 0xE9,\n0x47, 0x0A, 0x49, 0x9D, 0xC7, 0x07, 0x31, 0xF7, 0xB4, 0xEB, 0xE5, 0x41, 0x46, 0x35, 0x1D, 0x19,\n0x84, 0x8C, 0xFA, 0x12, 0x21, 0x0D, 0xC3, 0x0F, 0x22, 0x28, 0xCB, 0xE5, 0xA1, 0x2A, 0x38, 0x86,\n0x29, 0x90, 0x3A, 0x8D, 0x65, 0x0D, 0x62, 0x8B, 0x0F, 0x34, 0xB7, 0xE4, 0x9B, 0xEC, 0x69, 0x0C,\n0xCD, 0xE3, 0xB6, 0x5C, 0x9B, 0x18, 0x74, 0xF0, 0x31, 0xAE, 0xC4, 0x4C, 0xF1, 0xE0, 0x3D, 0x3E,\n0x7C, 0x0F, 0x91, 0x65, 0x3F, 0x23, 0xB2, 0xD6, 0x59, 0xDB, 0x40, 0x82, 0x0F, 0xC2, 0xF3, 0x0F,\n0xC5, 0xF7, 0x4D, 0xB3, 0x00, 0x82, 0x65, 0xD9, 0x38, 0x95, 0xFE, 0x41, 0x5F, 0xD3, 0xCC, 0x69,\n0x37, 0x71, 0x2D, 0xD6, 0xE8, 0x1F, 0xD8, 0x47, 0xDA, 0x05, 0x16, 0xFC, 0x2F, 0x4A, 0xFF, 0xF0,\n0x75, 0x8E, 0x7E, 0x89, 0xCD, 0x98, 0x5E, 0x11, 0x97, 0x4A, 0x44, 0x1A, 0x16, 0xA2, 0xBC, 0x63,\n0x78, 0x79, 0x68, 0xF7, 0x16, 0x1E, 0x48, 0xEB, 0x9F, 0x2D, 0xFB, 0x88, 0xB1, 0x85, 0xB8, 0xFA,\n0x0A, 0x4C, 0xA4, 0x28, 0x6C, 0x1F, 0x34, 0x6C, 0x43, 0xDB, 0xB4, 0xD8, 0xF4, 0xD1, 0xE2, 0x03,\n0x19, 0xFE, 0x91, 0xEF, 0x7E, 0x50, 0x78, 0x45, 0xF1, 0xA5, 0x0D, 0xB9, 0xB6, 0x8F, 0x7F, 0x24,\n0x50, 0x24, 0x8F, 0x0F, 0xD4, 0xF4, 0x8F, 0x44, 0x47, 0xEA, 0xB2, 0x81, 0xCF, 0x94, 0xD0, 0xCB,\n0xA8, 0x67, 0x21, 0x59, 0xE7, 0x28, 0x20, 0xE9, 0x1C, 0x7A, 0xF9, 0x8A, 0x13, 0x26, 0x41, 0xB1,\n0x4F, 0x91, 0xFD, 0x83, 0x59, 0x56, 0xCD, 0x41, 0xE4, 0x1F, 0xFA, 0x9D, 0xEC, 0x1F, 0x88, 0xF2,\n0xF9, 0x57, 0xF8, 0x48, 0xEA, 0xE6, 0xE3, 0xDB, 0xF7, 0x81, 0x30, 0x13, 0x8B, 0x0F, 0x42, 0x3C,\n0xA0, 0x6A, 0x7A, 0x0E, 0x1F, 0xD2, 0xE4, 0x27, 0xA6, 0xD4, 0x21, 0x08, 0x31, 0x1D, 0x24, 0x50,\n0xB9, 0x2D, 0xBE, 0x55, 0x91, 0xF2, 0xB5, 0x3A, 0x66, 0x57, 0xE9, 0x30, 0x65, 0x23, 0x16, 0x1E,\n0xA8, 0xCD, 0x47, 0xF6, 0x0F, 0xB1, 0x37, 0xA6, 0xEA, 0x5C, 0xC9, 0xCB, 0xB5, 0xEE, 0x59, 0x27,\n0xB7, 0xC7, 0x0F, 0x7D, 0x86, 0x10, 0xF8, 0x70, 0xA6, 0x59, 0x89, 0x0F, 0xE8, 0x20, 0x0F, 0xA9,\n0x1B, 0x88, 0xE6, 0x57, 0x9B, 0x16, 0x21, 0x80, 0x81, 0x7F, 0x10, 0x01, 0x49, 0x7F, 0x22, 0x12,\n0x38, 0x50, 0xE8, 0xCE, 0x33, 0x21, 0xDC, 0x40, 0xFE, 0x91, 0x01, 0xA8, 0xE6, 0x20, 0xFF, 0x20,\n0xA0, 0xE2, 0x8A, 0x93, 0xE2, 0xCB, 0x4D, 0xBA, 0xCB, 0x83, 0xBF, 0x14, 0x6F, 0x03, 0x6A, 0xEA,\n0xAC, 0xF9, 0x15, 0x31, 0x99, 0x85, 0x28, 0xE7, 0x90, 0xB9, 0x2B, 0x24, 0x5E, 0x2A, 0xC3, 0x3F,\n0xBC, 0x69, 0x56, 0xB0, 0x81, 0x52, 0x41, 0x84, 0x8B, 0xB2, 0x42, 0x91, 0x7E, 0x8C, 0xE5, 0x8F,\n0x1C, 0x79, 0x27, 0x42, 0x1C, 0x3E, 0x50, 0x23, 0x3D, 0x17, 0x11, 0x47, 0x1A, 0x09, 0x21, 0x17,\n0x02, 0x5A, 0x11, 0x93, 0xFC, 0x03, 0x81, 0x49, 0x83, 0x0F, 0x9B, 0x10, 0xC5, 0xD1, 0x73, 0xAE,\n0x4D, 0x31, 0xE9, 0x21, 0xBA, 0x59, 0x75, 0xAD, 0x36, 0x21, 0xA5, 0x7D, 0x20, 0x28, 0xE9, 0xF7,\n0x10, 0x2A, 0xDE, 0x79, 0x10, 0x4B, 0x82, 0xA2, 0x3A, 0xEA, 0x5F, 0x3A, 0xC8, 0xAE, 0xF0, 0x0F,\n0x14, 0xEC, 0x65, 0x32, 0xE2, 0xFF, 0xF0, 0x79, 0x22, 0x29, 0xFF, 0x3C, 0xE9, 0x1F, 0xE5, 0xDB,\n0x40, 0x6C, 0x9E, 0x7F, 0x10, 0x53, 0xE5, 0x0F, 0xDE, 0xC4, 0x68, 0xEA, 0x6A, 0x99, 0xBA, 0xB6,\n0x29, 0x35, 0xF0, 0x90, 0xB4, 0x23, 0xD2, 0x29, 0x06, 0x72, 0x18, 0x37, 0x49, 0x7C, 0x90, 0x7E,\n0x0C, 0xFB, 0x20, 0x44, 0x07, 0x8D, 0xF2, 0x47, 0x9D, 0x90, 0xBF, 0xEA, 0x7C, 0x84, 0x3D, 0x11,\n0x49, 0xA9, 0x64, 0x88, 0x8F, 0xA8, 0x1F, 0xA7, 0x7B, 0xC9, 0x3F, 0x88, 0x76, 0xAA, 0x0E, 0x1F,\n0x2E, 0x21, 0x39, 0xF5, 0x08, 0x4A, 0x98, 0x65, 0xD5, 0x0C, 0x84, 0xFC, 0xA3, 0x8C, 0x46, 0xFA,\n0x41, 0x48, 0xDF, 0xEB, 0x21, 0x5C, 0x7B, 0xC5, 0x5B, 0xBD, 0x62, 0xB4, 0x0F, 0xFC, 0xA3, 0x28,\n0x88, 0xE4, 0x1C, 0xE4, 0x43, 0xBA, 0x19, 0x44, 0xBE, 0x92, 0x88, 0x04, 0x1D, 0xA4, 0xE6, 0xC3,\n0xDD, 0xC2, 0x81, 0x45, 0x08, 0xFE, 0xC1, 0xDB, 0x40, 0x46, 0xC4, 0xC1, 0x83, 0xB8, 0xAC, 0x59,\n0x88, 0xF8, 0x28, 0xF0, 0x48, 0x4A, 0x25, 0xC3, 0x06, 0x1F, 0xB6, 0x87, 0x68, 0x50, 0xE1, 0x20,\n0x28, 0x8A, 0xEA, 0x50, 0xA2, 0x8D, 0xE5, 0xAB, 0x22, 0x07, 0xD1, 0x4E, 0x03, 0xB9, 0x86, 0xC7,\n0x24, 0x1F, 0x14, 0xD5, 0x4B, 0x3E, 0xCA, 0xA0, 0x20, 0x92, 0x79, 0xE5, 0x72, 0xFC, 0xEC, 0x1F,\n0x08, 0x50, 0x26, 0xCA, 0xE7, 0x0D, 0x42, 0xAA, 0xCB, 0x57, 0x79, 0x46, 0x7B, 0xD4, 0x2A, 0x45,\n0x75, 0xF0, 0xA8, 0x45, 0x35, 0x0D, 0x39, 0x3F, 0x12, 0xA0, 0x7C, 0x5F, 0x51, 0x9D, 0x8A, 0x77,\n0xB4, 0xD2, 0x3F, 0xF0, 0x90, 0x9F, 0x77, 0xA2, 0x02, 0x07, 0x39, 0xCA, 0xCD, 0x4B, 0x27, 0x49,\n0x69, 0xBA, 0x1A, 0x0C, 0x4E, 0xF2, 0x61, 0xF8, 0x07, 0x0E, 0x12, 0x98, 0x78, 0x80, 0x10, 0xB2,\n0xE9, 0x42, 0xEB, 0xB3, 0xFC, 0x02, 0x65, 0x41, 0x49, 0x23, 0xFF, 0x70, 0x09, 0xA9, 0x3A, 0x08,\n0x1E, 0x72, 0xC8, 0x05, 0x42, 0xCA, 0x1F, 0x4C, 0xAD, 0xD2, 0x01, 0x37, 0x7C, 0xB4, 0xFC, 0x03,\n0xD5, 0xF9, 0x18, 0x80, 0x18, 0x3A, 0x5A, 0x80, 0x48, 0xF2, 0xF1, 0xD2, 0x3F, 0x08, 0x48, 0x69,\n0xA4, 0xE7, 0x9E, 0x87, 0x9C, 0x02, 0x84, 0xBA, 0xA3, 0x19, 0xAE, 0x4C, 0x9D, 0xF7, 0xB0, 0xDC,\n0x00, 0xC4, 0xF3, 0x90, 0x18, 0x30, 0xC4, 0xFF, 0xF1, 0x10, 0xF2, 0x0F, 0xF0, 0x60, 0xB4, 0x03,\n0x00, 0x1E, 0x92, 0x00, 0xC9, 0xE5, 0xF3, 0xB0, 0x8D, 0xA9, 0x44, 0x24, 0xB3, 0xD1, 0xC7, 0x07,\n0xFE, 0x51, 0x77, 0x90, 0xD4, 0x79, 0xE9, 0x07, 0x51, 0x7C, 0xBA, 0x79, 0x28, 0x79, 0xA4, 0x17,\n0x28, 0x75, 0x34, 0x6D, 0x92, 0x7E, 0x5A, 0xCD, 0x3F, 0x7C, 0x42, 0x82, 0x8E, 0xD2, 0x41, 0xE2,\n0xF6, 0x4C, 0x06, 0x5F, 0xF8, 0x13, 0xEB, 0xAF, 0x41, 0x47, 0x19, 0x96, 0x7F, 0xA0, 0x2A, 0x1F,\n0x6A, 0x09, 0x0C, 0xED, 0x52, 0x1F, 0x2C, 0x52, 0x32, 0x04, 0x59, 0x1E, 0x73, 0xD5, 0x41, 0x2A,\n0x7C, 0xF8, 0x84, 0x28, 0x0A, 0x2A, 0x68, 0xE3, 0xFE, 0xB7, 0x52, 0xCD, 0xD7, 0x76, 0x53, 0xE3,\n0xE3, 0x58, 0x90, 0xF2, 0xBD, 0x25, 0x43, 0x16, 0x7B, 0x19, 0xEF, 0xD5, 0x41, 0xAF, 0x5D, 0x06,\n0xA4, 0x4C, 0xCF, 0xA1, 0x8A, 0x43, 0xAE, 0x89, 0x84, 0x0F, 0x77, 0x96, 0xC5, 0x5F, 0x06, 0x1A,\n0xE3, 0x16, 0xBD, 0x65, 0x1F, 0xC4, 0xA6, 0x28, 0x9F, 0x17, 0x0E, 0xCF, 0x69, 0x9C, 0xF0, 0xED,\n0xD5, 0xCC, 0xAF, 0x7C, 0x42, 0xA4, 0x86, 0x83, 0x48, 0xCF, 0xA9, 0x31, 0x7C, 0xA8, 0x93, 0xC8,\n0x42, 0x38, 0xA2, 0xA8, 0x4E, 0x7E, 0xDE, 0xD6, 0xF1, 0xEF, 0x3F, 0xCF, 0xA8, 0xD2, 0xCC, 0x2D,\n0x51, 0x92, 0x69, 0x84, 0x10, 0xD6, 0xD6, 0x78, 0xC8, 0xC4, 0x11, 0x28, 0x16, 0x1F, 0xE8, 0x65,\n0xF9, 0x43, 0xAA, 0xE6, 0x20, 0x83, 0xB8, 0xBA, 0x37, 0xB5, 0x7B, 0x96, 0xAF, 0xBC, 0x69, 0x56,\n0x8C, 0x91, 0xA9, 0xA1, 0xD3, 0x5F, 0x32, 0x3C, 0xFE, 0x44, 0x61, 0x99, 0x7F, 0x30, 0xE2, 0x29,\n0xAA, 0xA7, 0x1C, 0xA4, 0x20, 0x47, 0x0A, 0x3B, 0xC1, 0x74, 0x70, 0x10, 0xF2, 0x0F, 0x93, 0x10,\n0x38, 0x18, 0x77, 0x34, 0x18, 0x39, 0xB7, 0xFC, 0x83, 0xE0, 0x33, 0x9C, 0xA9, 0xFC, 0x81, 0x77,\n0xF0, 0xE6, 0xC5, 0x4E, 0x1E, 0xF2, 0xBB, 0xE3, 0x1F, 0x10, 0x52, 0xF8, 0x47, 0xD3, 0x41, 0x34,\n0x81, 0x01, 0x0F, 0xF1, 0x91, 0xF4, 0x5C, 0xC0, 0xCB, 0xDA, 0x92, 0x8E, 0x1C, 0x2A, 0x78, 0xB8,\n0x1E, 0xF2, 0x97, 0x20, 0xC8, 0x0B, 0x58, 0x07, 0xEE, 0x57, 0xB7, 0xA9, 0xC5, 0xCC, 0x2B, 0x3C,\n0x84, 0xF2, 0x79, 0xC3, 0x41, 0x24, 0x8B, 0x0F, 0x54, 0x96, 0x3F, 0x78, 0xE6, 0x01, 0x03, 0x52,\n0x12, 0x21, 0x7C, 0x61, 0x1C, 0xAF, 0xAD, 0x45, 0x48, 0xB0, 0x80, 0x8E, 0x87, 0x4E, 0x7F, 0xC9,\n0x90, 0x8B, 0x7B, 0xB1, 0x8F, 0xBA, 0x22, 0xF9, 0xFE, 0x79, 0x48, 0xD2, 0xA7, 0xFC, 0x03, 0x38,\n0x02, 0xB2, 0x20, 0xCF, 0x7A, 0x20, 0xC5, 0xF4, 0xAA, 0x86, 0x47, 0x52, 0xFE, 0xA1, 0xE3, 0x1F,\n0xC4, 0xC3, 0x1F, 0xDF, 0x94, 0x3F, 0x00, 0xA3, 0x40, 0x84, 0x26, 0x42, 0x0A, 0xFB, 0xB0, 0x3D,\n0x44, 0x6A, 0x39, 0x88, 0x36, 0x0A, 0x22, 0xCC, 0xAF, 0x48, 0xCE, 0x23, 0xC8, 0x47, 0x86, 0xCD,\n0x04, 0x04, 0x44, 0x28, 0x7F, 0x70, 0xAF, 0xE4, 0x39, 0x81, 0x4A, 0x90, 0xB3, 0xC5, 0xD0, 0x4E,\n0xA4, 0x86, 0x83, 0xC4, 0x89, 0xC7, 0x07, 0x82, 0x0F, 0x80, 0x20, 0x07, 0x89, 0x16, 0x7B, 0x7D,\n0x95, 0x83, 0xD8, 0x50, 0x14, 0xF9, 0xB9, 0x93, 0x88, 0x3C, 0xB3, 0x40, 0x30, 0x76, 0xE2, 0xF4,\n0xBB, 0x3C, 0x24, 0x09, 0xBB, 0xD0, 0x01, 0x7B, 0x06, 0x7D, 0x92, 0xA6, 0x58, 0x90, 0x54, 0xF3,\n0x10, 0x38, 0xC9, 0x05, 0xC8, 0xEF, 0x4D, 0xCF, 0x69, 0x69, 0xC7, 0xCD, 0x01, 0x09, 0x7C, 0x38,\n0x31, 0x78, 0x08, 0x97, 0x5F, 0xC5, 0x56, 0xCE, 0xB1, 0x68, 0xFA, 0x92, 0x2C, 0x9F, 0x0F, 0x8A,\n0xEA, 0x09, 0x81, 0x19, 0x07, 0x19, 0x93, 0xE0, 0x28, 0x82, 0xC4, 0x5B, 0x3A, 0xE3, 0x16, 0x03,\n0x39, 0x10, 0xDB, 0x8F, 0xE0, 0x61, 0x09, 0x3E, 0x52, 0x0B, 0x25, 0x48, 0xC0, 0x44, 0xCA, 0x08,\n0x7E, 0xC1, 0x3F, 0xE6, 0x72, 0x10, 0xED, 0x32, 0x1F, 0xA7, 0xAE, 0xCE, 0x24, 0xF5, 0x90, 0xA1,\n0x56, 0x5F, 0xCB, 0xE2, 0xFA, 0x77, 0xAE, 0x4E, 0x74, 0x3D, 0x24, 0x86, 0x4A, 0xCB, 0x42, 0xD2,\n0xFE, 0x3B, 0x2B, 0x86, 0xA8, 0x5C, 0xBE, 0x85, 0x04, 0x9D, 0x07, 0x20, 0x96, 0x74, 0xD7, 0xF0,\n0x61, 0x9A, 0x48, 0x51, 0xF6, 0xA0, 0xBD, 0x9C, 0x4F, 0xC2, 0x87, 0xE7, 0x21, 0x77, 0x23, 0x1F,\n0xA5, 0xB5, 0xAF, 0x69, 0xDC, 0x22, 0x42, 0x4E, 0x87, 0xB0, 0xB5, 0x0C, 0xF7, 0xB0, 0x1C, 0x44,\n0x0A, 0x3E, 0x40, 0x23, 0x58, 0xE0, 0x34, 0x32, 0x92, 0x83, 0x3A, 0x7D, 0x1B, 0x10, 0x7C, 0xF8,\n0x84, 0xC4, 0x7F, 0x8E, 0x2B, 0x49, 0x54, 0x5A, 0x22, 0x20, 0x44, 0x0F, 0xAD, 0xED, 0x20, 0x9C,\n0x50, 0xFE, 0xB0, 0x09, 0x11, 0x1F, 0x39, 0xED, 0xC0, 0x32, 0x48, 0xD0, 0xB9, 0x51, 0xB3, 0x2C,\n0x2E, 0x4F, 0xF4, 0x3D, 0x04, 0x0C, 0x5E, 0x3A, 0x08, 0x16, 0xF2, 0xFD, 0x17, 0x66, 0xA1, 0x4A,\n0xFE, 0x81, 0x87, 0x14, 0x80, 0x08, 0xAC, 0x63, 0xBA, 0x4A, 0xD0, 0xC8, 0xCF, 0x3D, 0x42, 0x58,\n0x7A, 0xC8, 0x1D, 0xED, 0x33, 0xB7, 0x8D, 0x1A, 0xF3, 0x8F, 0x3F, 0xB4, 0x95, 0x21, 0xD1, 0xE7,\n0x1B, 0x53, 0xF9, 0x23, 0x85, 0x9A, 0xB6, 0x88, 0xD0, 0x59, 0xEA, 0xB8, 0x25, 0xE5, 0x21, 0xC8,\n0x42, 0x44, 0xBA, 0x75, 0x5B, 0xFA, 0x7A, 0x86, 0x96, 0x7E, 0x3D, 0x3E, 0x19, 0xF8, 0xF8, 0xB3,\n0x8B, 0x90, 0xB8, 0x07, 0xB4, 0xC5, 0x4D, 0x98, 0x62, 0x85, 0x81, 0xC5, 0xE5, 0x57, 0xE0, 0x80,\n0x20, 0x03, 0xF2, 0xC1, 0xC3, 0xD3, 0xEF, 0x4A, 0xFC, 0x92, 0xCA, 0xE7, 0x5C, 0x2D, 0x5E, 0x0E,\n0x6E, 0x49, 0x1E, 0xF2, 0xC7, 0x65, 0x7E, 0x2D, 0x9F, 0xB7, 0x16, 0x21, 0xC5, 0xA5, 0x57, 0x9C,\n0x32, 0x9A, 0x8E, 0x2E, 0xCC, 0x52, 0xB3, 0x25, 0x3E, 0x18, 0xD9, 0xC5, 0x3E, 0x0E, 0x83, 0x04,\n0x45, 0xCA, 0x41, 0x76, 0xC4, 0xE7, 0x5D, 0xEA, 0x38, 0x53, 0xE3, 0x27, 0xDD, 0xCB, 0xBB, 0x2B,\n0xFD, 0x05, 0x86, 0x82, 0x93, 0xF1, 0x9F, 0x5E, 0x43, 0xE9, 0xAC, 0xEC, 0xD5, 0xD4, 0x69, 0xBB,\n0xBC, 0x1B, 0xDE, 0xA1, 0xEE, 0xEF, 0x53, 0x53, 0x70, 0x50, 0x3B, 0xD2, 0x5E, 0x63, 0xDE, 0x97,\n0xF2, 0x10, 0x4D, 0x9E, 0xEC, 0xD0, 0x40, 0x3B, 0x8C, 0xAB, 0x54, 0xE3, 0xBF, 0x64, 0xA3, 0x36,\n0x44, 0x12, 0xA7, 0xC4, 0xF6, 0x57, 0xF9, 0xC7, 0xA7, 0xBF, 0xFF, 0xB2, 0x22, 0x35, 0xFD, 0x37,\n0xE5, 0xD2, 0x71, 0x71, 0xD3, 0xD1, 0x9C, 0x8B, 0x07, 0x6F, 0xC4, 0xED, 0x97, 0x65, 0xA7, 0xFE,\n0xE5, 0x99, 0x1D, 0xBA, 0xC6, 0xA1, 0xDA, 0xD9, 0xBD, 0xE6, 0x57, 0xF9, 0xC5, 0x63, 0x8B, 0x83,\n0xDC, 0x73, 0xCB, 0x6F, 0x97, 0xF8, 0x06, 0x47, 0x80, 0x41, 0x85, 0x20, 0xF5, 0xAB, 0x5E, 0x0F,\n0x49, 0x63, 0x3A, 0xC6, 0x35, 0xFB, 0x3C, 0xD4, 0xB5, 0x8B, 0x53, 0x29, 0x2D, 0xF3, 0x1E, 0xE9,\n0xFA, 0x43, 0x43, 0x4F, 0x7D, 0x0F, 0x64, 0x71, 0xDE, 0xA7, 0x87, 0x4D, 0x9F, 0x1E, 0x7B, 0x74,\n0xB7, 0x3E, 0x3D, 0xE9, 0xD0, 0x5A, 0xB6, 0xF0, 0xA5, 0x47, 0xB7, 0x37, 0x42, 0xE1, 0x46, 0xA1,\n0x5E, 0xBB, 0x88, 0xD4, 0xF2, 0x21, 0x4D, 0x37, 0xFD, 0x65, 0x6B, 0x9B, 0x7A, 0xFD, 0x37, 0x37,\n0xDC, 0x33, 0xF7, 0x3F, 0x71, 0xD6, 0xF9, 0xE0, 0x4F, 0xFA, 0xB4, 0x5C, 0xDF, 0xDD, 0x75, 0x3D,\n0xF9, 0x9B, 0x2E, 0x5D, 0xAE, 0xCE, 0xBB, 0xB4, 0xE8, 0x1B, 0x97, 0x4F, 0xBB, 0xC6, 0x38, 0x2F,\n0x60, 0x58, 0xFD, 0xF0, 0x55, 0x3D, 0xAA, 0x92, 0x02, 0x1E, 0x6A, 0xBE, 0x16, 0x92, 0xFF, 0x37,\n0x9E, 0xAF, 0x2E, 0x57, 0xAB, 0x1E, 0x44, 0xEE, 0xEE, 0x36, 0x77, 0xFE, 0x2B, 0xF4, 0xB8, 0x3E,\n0xFD, 0x7D, 0x20, 0x64, 0xED, 0x45, 0x94, 0xCF, 0x7D, 0xDD, 0xDE, 0x5E, 0x7D, 0x81, 0x00, 0x82,\n0x73, 0x22, 0xF8, 0xD0, 0xC0, 0xEF, 0x51, 0xF5, 0xBE, 0xCA, 0x93, 0xD8, 0xDF, 0x4A, 0x1D, 0x88,\n0xE8, 0x4F, 0xBD, 0x50, 0x1E, 0xB2, 0x36, 0xE3, 0x44, 0x4F, 0xE5, 0x5A, 0x4F, 0xA9, 0x8F, 0xC7,\n0x5D, 0x17, 0x21, 0xAB, 0x55, 0x83, 0x90, 0x45, 0xE5, 0xA6, 0x45, 0x17, 0x21, 0x1A, 0xC4, 0xD7,\n0x31, 0xC6, 0x15, 0xEA, 0x63, 0xAF, 0x2E, 0x1F, 0xA2, 0xD1, 0x41, 0xAE, 0x09, 0x7E, 0xAB, 0x3C,\n0xDF, 0xE9, 0xAE, 0x15, 0xB6, 0x16, 0x23, 0x20, 0x8B, 0x95, 0x15, 0xE7, 0x97, 0x03, 0x20, 0x97,\n0x22, 0xC4, 0xE6, 0x03, 0x42, 0x1C, 0x3E, 0x7E, 0x3F, 0x95, 0xDC, 0x21, 0xB0, 0xD4, 0x80, 0x19,\n0x9A, 0x8F, 0x47, 0x52, 0xF2, 0x10, 0x27, 0xC4, 0x47, 0xBF, 0xB6, 0xE2, 0x6A, 0x36, 0xE0, 0xC3,\n0x27, 0x24, 0x9B, 0xE6, 0xD2, 0xC3, 0x63, 0x7D, 0x9A, 0x04, 0x21, 0x06, 0x1F, 0x3D, 0x84, 0x5C,\n0x0E, 0x80, 0x68, 0x96, 0x55, 0x1F, 0x3B, 0x2F, 0x6F, 0x4E, 0x7A, 0xF2, 0xF9, 0x08, 0x42, 0x9E,\n0x21, 0x61, 0x9F, 0x0F, 0x73, 0xE8, 0xF0, 0xAB, 0xED, 0x20, 0xE9, 0x9E, 0x77, 0xEA, 0xBE, 0x0E,\n0xB8, 0x2E, 0xD4, 0xB7, 0xBB, 0x45, 0x68, 0xF8, 0x8B, 0x56, 0x8D, 0x3E, 0x34, 0x3C, 0x27, 0x78,\n0x88, 0xC3, 0x07, 0x84, 0x18, 0x7C, 0x9C, 0xFE, 0x9A, 0x2B, 0x1C, 0x0E, 0x1E, 0xEB, 0x93, 0x2C,\n0x17, 0x90, 0xD0, 0x8D, 0x83, 0xC8, 0xCD, 0xCD, 0xF6, 0xD3, 0x5F, 0x6F, 0x45, 0x08, 0x7C, 0x48,\n0x2E, 0x1F, 0x8F, 0x41, 0x88, 0xF5, 0xEC, 0x88, 0x0F, 0x08, 0x71, 0xF9, 0xF0, 0x09, 0x79, 0x10,\n0x1E, 0x29, 0xD2, 0xE8, 0xC0, 0x49, 0x62, 0xAC, 0x04, 0x24, 0xDC, 0xB0, 0x08, 0x59, 0xA3, 0x32,\n0xF1, 0xA1, 0xD0, 0xEE, 0x95, 0x1D, 0x24, 0xCD, 0xAF, 0x22, 0x24, 0xFD, 0xAF, 0xB4, 0xA9, 0x9F,\n0xEA, 0x06, 0x81, 0x48, 0x50, 0x3F, 0xD5, 0xC3, 0x07, 0x84, 0x18, 0x7C, 0x40, 0x88, 0xC5, 0x87,\n0x4D, 0xC8, 0x72, 0x30, 0x8F, 0xA4, 0xC7, 0xA1, 0xC2, 0x61, 0xE0, 0x81, 0x6E, 0x1C, 0x0F, 0xF9,\n0x3E, 0x3E, 0x3E, 0x26, 0x42, 0x66, 0xF1, 0x10, 0x1F, 0xC8, 0xE3, 0x03, 0x2D, 0x67, 0xED, 0x83,\n0x6A, 0x22, 0x84, 0x38, 0x7C, 0x48, 0x2E, 0x1F, 0x79, 0x2C, 0x0C, 0xA3, 0x46, 0x0D, 0xEF, 0x28,\n0x2C, 0x24, 0xED, 0xD1, 0x4F, 0x52, 0x73, 0x54, 0x26, 0xFB, 0x20, 0x3E, 0x38, 0x0E, 0x92, 0x00,\n0x79, 0x37, 0xEF, 0x20, 0xD7, 0xCF, 0xFE, 0xB1, 0x7B, 0x4A, 0x78, 0x48, 0x8B, 0x99, 0xE9, 0x15,\n0x4A, 0xBC, 0xAB, 0x2D, 0x6A, 0x7D, 0xEA, 0x2E, 0x9F, 0x03, 0x42, 0x0C, 0x3E, 0x3C, 0x42, 0xF6,\n0xC3, 0x9C, 0xF9, 0x14, 0x42, 0x66, 0x10, 0x81, 0x0F, 0x69, 0x20, 0xE4, 0xD6, 0xE7, 0xE3, 0x6A,\n0xDE, 0x43, 0x2A, 0x7C, 0xF8, 0x88, 0x6C, 0x5D, 0xFF, 0xF0, 0x09, 0x39, 0xFA, 0x6B, 0xE7, 0x12,\n0x91, 0xC4, 0x07, 0x3A, 0xB9, 0x73, 0xF8, 0x40, 0x0F, 0x1E, 0x1F, 0x10, 0x12, 0x26, 0x92, 0xBD,\n0x23, 0x1C, 0x24, 0xCE, 0xB5, 0x97, 0x7F, 0x20, 0x46, 0xE5, 0x94, 0x62, 0x14, 0xEF, 0xF0, 0x10,\n0xCB, 0x41, 0xA4, 0xA6, 0x83, 0xE4, 0xFC, 0x9C, 0x40, 0x8B, 0x6A, 0xB7, 0x18, 0x1A, 0x3A, 0xD7,\n0x9F, 0x9A, 0xFE, 0xAE, 0xD4, 0xAB, 0x69, 0x9F, 0x6F, 0x49, 0x27, 0x97, 0x0F, 0x26, 0x21, 0xF0,\n0xE1, 0x13, 0xB2, 0x5F, 0xE3, 0x1F, 0x86, 0x87, 0x2C, 0x53, 0xC6, 0x7A, 0x44, 0x88, 0xC7, 0x07,\n0x1E, 0xD2, 0x9E, 0x5F, 0xF5, 0x83, 0x81, 0x3E, 0x89, 0x10, 0xC7, 0x3F, 0x90, 0xE9, 0x1F, 0x10,\n0x62, 0xF9, 0x07, 0x84, 0x18, 0x7C, 0xA0, 0x2E, 0x3E, 0xCA, 0x3C, 0x24, 0x8E, 0x45, 0x06, 0x96,\n0x52, 0x28, 0x39, 0x48, 0x7D, 0x54, 0x4A, 0x18, 0x48, 0x20, 0x32, 0xE3, 0x20, 0x00, 0x32, 0xE7,\n0x20, 0x3B, 0xFC, 0x23, 0xF6, 0xC3, 0x7C, 0xAE, 0x61, 0x66, 0xA5, 0x54, 0x10, 0x19, 0x91, 0x97,\n0xE2, 0x6F, 0x8C, 0x03, 0x6D, 0xF8, 0x07, 0x84, 0xD8, 0x78, 0x48, 0x9B, 0xFD, 0xDD, 0xCC, 0xF2,\n0x6E, 0xC8, 0xF2, 0x10, 0xF8, 0xF0, 0x08, 0x11, 0x1F, 0x0E, 0x21, 0xF8, 0x47, 0x72, 0x82, 0xFF,\n0x21, 0xCF, 0x3F, 0x50, 0x17, 0x1F, 0x17, 0x27, 0x96, 0x7F, 0xA0, 0xF5, 0x9D, 0xC1, 0x07, 0xF2,\n0xF8, 0x20, 0x8E, 0x92, 0x90, 0xA1, 0x05, 0x29, 0xA1, 0x34, 0xB6, 0x16, 0x34, 0x8D, 0xBE, 0x98,\n0x68, 0x15, 0x5D, 0xA4, 0x1F, 0x18, 0x08, 0xB3, 0x2C, 0xCB, 0x41, 0x34, 0xC9, 0xAA, 0x3B, 0x08,\n0x7C, 0x94, 0xE1, 0xCC, 0xAF, 0x10, 0x2E, 0x49, 0xDE, 0x21, 0xA5, 0x93, 0x87, 0xD5, 0x65, 0x89,\n0xC8, 0xE5, 0xA6, 0xA1, 0x7D, 0x09, 0xC8, 0xDD, 0x66, 0x6E, 0xF9, 0xAA, 0x54, 0x83, 0x10, 0xF0,\n0x40, 0xB7, 0x20, 0x52, 0xE1, 0xC3, 0x25, 0xC4, 0x28, 0x7F, 0x98, 0x84, 0x18, 0xFE, 0x61, 0x12,\n0x12, 0xE9, 0xB9, 0xE7, 0x21, 0xF0, 0x81, 0x9A, 0xCB, 0xBD, 0x77, 0x99, 0x0F, 0xB4, 0x6F, 0x2F,\n0x5F, 0xBD, 0x8C, 0x23, 0x13, 0x49, 0x03, 0x26, 0x06, 0x90, 0x76, 0x09, 0x8F, 0xD2, 0x43, 0x24,\n0xE1, 0xC0, 0x86, 0x83, 0x64, 0xE7, 0x20, 0x58, 0xCC, 0x62, 0x0F, 0x31, 0xEF, 0x14, 0x6D, 0x07,\n0x21, 0xFF, 0x68, 0x11, 0x32, 0xD2, 0xC9, 0xD1, 0xF8, 0x40, 0x8F, 0x22, 0x4D, 0xB3, 0x92, 0x6D,\n0x90, 0x7D, 0xAC, 0x82, 0x1A, 0xE1, 0xA0, 0x28, 0x4D, 0xC4, 0xE3, 0x03, 0x0F, 0x71, 0xF9, 0x80,\n0x90, 0x89, 0xF9, 0x55, 0x45, 0x17, 0xF2, 0x10, 0x87, 0x0F, 0x12, 0x11, 0x08, 0xE9, 0xE7, 0xA3,\n0x9F, 0x10, 0xF8, 0xB8, 0xAD, 0xCA, 0xF0, 0x0F, 0xC7, 0x43, 0xB8, 0x9A, 0xD1, 0x20, 0x04, 0x3E,\n0x4A, 0xCD, 0x2D, 0xEF, 0x96, 0x31, 0x54, 0xC8, 0x14, 0x91, 0x8F, 0x04, 0x25, 0x23, 0x37, 0x35,\n0x69, 0xFC, 0xC9, 0x34, 0x50, 0x9A, 0xE9, 0x1C, 0xE1, 0xB1, 0xCB, 0x6D, 0x08, 0xCF, 0x41, 0x42,\n0x85, 0x81, 0xE0, 0x1F, 0x78, 0x53, 0xF4, 0xC3, 0x01, 0x68, 0x14, 0x94, 0x04, 0xD6, 0x85, 0x22,\n0x4D, 0x27, 0x13, 0x49, 0x19, 0x16, 0x7C, 0xB8, 0x84, 0xDC, 0x55, 0xB4, 0x51, 0x34, 0xF9, 0x30,\n0x3D, 0x44, 0x6F, 0x9E, 0x17, 0x27, 0x55, 0x44, 0x1C, 0x3E, 0xDA, 0x99, 0x3A, 0x7C, 0x7C, 0x7C,\n0x13, 0x42, 0x86, 0xF6, 0xE5, 0xEA, 0xB6, 0xAE, 0xE6, 0xF2, 0xAE, 0xE9, 0x21, 0xF0, 0x61, 0x11,\n0x02, 0x1F, 0xA5, 0x3C, 0x3E, 0x08, 0x91, 0x10, 0x1E, 0x12, 0x06, 0xB2, 0x4A, 0xE7, 0x53, 0xC2,\n0x31, 0x48, 0x3F, 0xD4, 0x93, 0x7B, 0x94, 0x1E, 0x52, 0x75, 0x90, 0x63, 0x40, 0xDE, 0xA9, 0x29,\n0xAA, 0x7A, 0x0A, 0x3A, 0x9A, 0xB3, 0x2C, 0xA0, 0x7D, 0x5A, 0x54, 0x45, 0x51, 0x1D, 0x1F, 0x19,\n0xF7, 0x97, 0x13, 0xB1, 0x7A, 0x70, 0xF8, 0xC0, 0xB9, 0xEF, 0x2C, 0x3E, 0xD0, 0xFA, 0xA4, 0x5A,\n0xFE, 0x00, 0x90, 0x42, 0x2E, 0x1E, 0x78, 0x48, 0xA5, 0xFC, 0x61, 0x02, 0x60, 0x14, 0x44, 0x2C,\n0xFF, 0x40, 0x8E, 0x7D, 0xA0, 0x7A, 0x41, 0xE4, 0x74, 0x52, 0x55, 0x42, 0xC0, 0xC3, 0x22, 0xE4,\n0x01, 0x3E, 0xAA, 0x1E, 0xC2, 0xD8, 0x89, 0x99, 0xC7, 0x34, 0x21, 0x61, 0x1B, 0x47, 0x66, 0x52,\n0xC0, 0xB1, 0xCB, 0xE7, 0x10, 0x52, 0xEA, 0x1D, 0x80, 0xA0, 0xC2, 0x43, 0xE0, 0xA3, 0xF4, 0x10,\n0x10, 0x49, 0xE9, 0x7A, 0x80, 0x8A, 0x7F, 0x54, 0x01, 0xF9, 0x89, 0x92, 0xCF, 0xE8, 0x92, 0x8B,\n0x9A, 0x7F, 0x90, 0xAA, 0x5B, 0x7C, 0xE0, 0x22, 0xB5, 0xF2, 0x07, 0xAA, 0x11, 0x52, 0xDA, 0x47,\n0x0D, 0x0F, 0x0A, 0x22, 0x36, 0x20, 0x14, 0x44, 0xFC, 0xF2, 0x79, 0x3F, 0x21, 0x4E, 0xFA, 0x81,\n0x4C, 0x3E, 0x20, 0xA4, 0x52, 0x3E, 0xB7, 0x09, 0x81, 0x0F, 0x9F, 0x90, 0x55, 0x63, 0x28, 0x90,\n0x86, 0xE8, 0x30, 0xCD, 0x40, 0x12, 0x08, 0xD5, 0x90, 0xB2, 0x6F, 0x50, 0x1C, 0x7C, 0x31, 0x88,\n0x8F, 0xA2, 0xB2, 0x8C, 0x8B, 0x04, 0x48, 0xE0, 0x52, 0x15, 0x93, 0x36, 0xEE, 0x15, 0x06, 0xB3,\n0x77, 0x2C, 0x02, 0x14, 0x75, 0x4D, 0xC5, 0x02, 0x1D, 0xD7, 0xD4, 0xF0, 0x24, 0x18, 0x84, 0xC0,\n0x87, 0x47, 0x08, 0xE5, 0x41, 0xD4, 0x58, 0xEE, 0x15, 0x1F, 0x6D, 0x59, 0x78, 0xA0, 0xE2, 0x4A,\n0x29, 0xFC, 0xE3, 0x35, 0x26, 0x59, 0x1F, 0x4B, 0x0F, 0x11, 0x1F, 0x6D, 0x79, 0xF3, 0x2B, 0xB4,\n0xAC, 0x2C, 0x5F, 0x39, 0x84, 0xC0, 0x47, 0x43, 0xC6, 0xF2, 0x55, 0xE1, 0x21, 0xB9, 0x78, 0x9E,\n0xA2, 0x61, 0x1F, 0x09, 0x11, 0x66, 0x57, 0x21, 0x46, 0xED, 0xD1, 0xE1, 0x8E, 0xA2, 0x7A, 0xC5,\n0x3F, 0xB4, 0x01, 0x08, 0xB7, 0x22, 0xCA, 0x1F, 0x25, 0x19, 0xD0, 0x52, 0x4C, 0xF8, 0x66, 0x44,\n0x26, 0x12, 0xAB, 0x76, 0x2B, 0x93, 0x10, 0xF8, 0xF0, 0x09, 0xB9, 0x63, 0xCE, 0xEC, 0x10, 0xA2,\n0x93, 0xA6, 0x64, 0x2E, 0x16, 0x1F, 0xA8, 0x2C, 0x0F, 0xBE, 0x06, 0x18, 0x00, 0x46, 0x41, 0x04,\n0xFF, 0x68, 0xCA, 0xF2, 0x8F, 0x7A, 0x22, 0xD2, 0xE0, 0x83, 0x82, 0x88, 0xC1, 0x07, 0xAA, 0x5C,\n0x5E, 0xD2, 0x8C, 0x73, 0xC4, 0xEA, 0xEE, 0x94, 0x02, 0x11, 0x84, 0x73, 0x4C, 0x1C, 0xB5, 0xA7,\n0x58, 0x9C, 0x14, 0x88, 0x5C, 0xB3, 0xBE, 0x4B, 0x0D, 0xE4, 0x85, 0x89, 0xA0, 0x58, 0x94, 0x9E,\n0x8C, 0x41, 0xCF, 0xA5, 0x42, 0xFC, 0xC3, 0x20, 0xC4, 0xE0, 0x83, 0xC5, 0x2C, 0xF8, 0x30, 0x08,\n0xA1, 0xFC, 0x61, 0xC8, 0xE6, 0x83, 0xE5, 0x5E, 0xF8, 0x30, 0xF1, 0xF0, 0x75, 0x63, 0xF9, 0x07,\n0xB2, 0xF8, 0xE0, 0xFD, 0xC0, 0xF4, 0x0F, 0x08, 0x31, 0xF8, 0x40, 0xB6, 0x7F, 0xE0, 0x21, 0x0A,\n0x00, 0x41, 0x53, 0x26, 0x82, 0xB0, 0x0E, 0xD8, 0x28, 0xA2, 0x0A, 0x07, 0x80, 0x70, 0x6B, 0xEA,\n0x28, 0x0F, 0xD6, 0xEE, 0xB3, 0xB8, 0xAD, 0xC7, 0x3F, 0xC8, 0xD4, 0xC9, 0x3F, 0xDA, 0x84, 0x5C,\n0x9A, 0x7C, 0xE0, 0x21, 0x94, 0xCF, 0x0D, 0x2D, 0x23, 0x55, 0x27, 0x3F, 0x6F, 0xCB, 0xE7, 0xA3,\n0xCC, 0x43, 0x18, 0xD7, 0xAF, 0x07, 0x8A, 0xB8, 0xC3, 0x3F, 0x0C, 0x15, 0xE5, 0x0F, 0xD7, 0x43,\n0x1C, 0x3E, 0x28, 0x19, 0xC2, 0x47, 0x5B, 0x26, 0x1F, 0x10, 0x12, 0xD9, 0x87, 0x02, 0xFB, 0xF0,\n0x3C, 0x84, 0xF2, 0x79, 0x99, 0x4C, 0xEB, 0x36, 0x16, 0xB3, 0xC0, 0x83, 0x1D, 0xAB, 0x58, 0xDC,\n0x04, 0x1F, 0x25, 0x12, 0xF4, 0x4F, 0x44, 0xE1, 0x1F, 0xB3, 0x6C, 0xC7, 0x12, 0x04, 0xFE, 0x31,\n0x13, 0xF0, 0x61, 0x48, 0xBF, 0x94, 0x97, 0xAF, 0xEC, 0xAF, 0x2F, 0xA1, 0x7C, 0x6E, 0xE8, 0xB6,\n0x83, 0x0F, 0x3C, 0x44, 0x7C, 0x04, 0x16, 0xAF, 0x36, 0xC9, 0x82, 0x10, 0x97, 0x0F, 0xC9, 0xF3,\n0x0F, 0x3C, 0x04, 0xFF, 0xF0, 0x08, 0xF1, 0xF8, 0xA0, 0x64, 0xC8, 0xF2, 0xAE, 0x11, 0xE3, 0xA2,\n0x0E, 0xF6, 0xE1, 0x7A, 0x48, 0x39, 0x03, 0xF2, 0x3D, 0x04, 0x40, 0x50, 0xC1, 0xC7, 0x2E, 0x37,\n0xC5, 0xA4, 0x8B, 0xE0, 0x1F, 0xB6, 0x87, 0xD8, 0x78, 0x84, 0x87, 0x50, 0x1E, 0xB4, 0x08, 0x11,\n0x1F, 0x4A, 0xCF, 0x3D, 0x85, 0x85, 0x80, 0xC7, 0x8C, 0xE0, 0xC3, 0xD2, 0xE1, 0x90, 0xF8, 0xB0,\n0x2F, 0x4F, 0xEC, 0xF7, 0x90, 0xC3, 0xC1, 0x7F, 0x38, 0xF0, 0xE1, 0x69, 0xD9, 0x28, 0x7F, 0x54,\n0x0B, 0x22, 0x94, 0x3F, 0x0C, 0x65, 0x3E, 0xDC, 0x60, 0x7E, 0x65, 0xA9, 0x58, 0xDE, 0x25, 0x82,\n0x12, 0x46, 0x31, 0x1E, 0xC2, 0x3C, 0xAA, 0x92, 0xA4, 0x63, 0x2D, 0xA4, 0xE7, 0xE0, 0x40, 0x8B,\n0x73, 0x76, 0xF8, 0x87, 0x8D, 0xC8, 0xEA, 0xC1, 0x27, 0x04, 0xFB, 0xF0, 0x08, 0x81, 0x0F, 0x4B,\n0x7D, 0x7C, 0x5C, 0xF4, 0xF1, 0x71, 0xA5, 0x01, 0x0C, 0x1F, 0xEE, 0x24, 0xCB, 0x57, 0xF2, 0xA7,\n0xAB, 0x5B, 0x5F, 0x2C, 0x5F, 0x39, 0x4A, 0xEE, 0xFA, 0x7B, 0x07, 0x21, 0xF0, 0xE1, 0x28, 0x3E,\n0x3D, 0x68, 0x07, 0x7C, 0xB8, 0x1E, 0x32, 0x95, 0x19, 0x94, 0x67, 0x10, 0x82, 0xEA, 0x0E, 0xC2,\n0xE5, 0x25, 0x13, 0x7E, 0xC4, 0xFD, 0xF2, 0x23, 0xFC, 0xC3, 0x93, 0xC7, 0x07, 0xA9, 0xFA, 0x9D,\n0x25, 0xAE, 0xCC, 0xE2, 0x35, 0x75, 0xB4, 0x04, 0x0F, 0x8F, 0x90, 0xDB, 0x2E, 0xDD, 0xF4, 0x81,\n0xB1, 0xF5, 0x26, 0x58, 0x14, 0x44, 0x54, 0x95, 0xEC, 0x90, 0xF8, 0xF0, 0x45, 0xFA, 0xE1, 0xEA,\n0x71, 0x0F, 0x1E, 0x8E, 0x58, 0xBE, 0xB2, 0x02, 0x3C, 0x3C, 0x4A, 0x0C, 0x36, 0x38, 0x8E, 0x69,\n0xD6, 0x3B, 0x05, 0x16, 0x02, 0x20, 0x18, 0x88, 0x62, 0x37, 0xC5, 0x5D, 0x9D, 0x96, 0xA7, 0x40,\n0xD6, 0x14, 0xF9, 0xB9, 0x89, 0x48, 0xCF, 0x93, 0x2E, 0xB7, 0x59, 0x77, 0xF1, 0xF1, 0x3B, 0x80,\n0x78, 0x84, 0x30, 0x20, 0x3D, 0x0F, 0xC1, 0x3E, 0x0C, 0x3C, 0xBA, 0xCD, 0xE5, 0x3D, 0x0F, 0xC7,\n0x12, 0xFE, 0x61, 0xE5, 0x21, 0xBC, 0xD7, 0x98, 0x79, 0xC8, 0x46, 0x61, 0x6B, 0x73, 0xF9, 0x16,\n0x80, 0xE0, 0x21, 0x4F, 0x3F, 0x51, 0xC3, 0x23, 0x03, 0xE1, 0xAC, 0xF0, 0x10, 0x7D, 0x15, 0xAF,\n0xE5, 0x20, 0xBB, 0x9D, 0xEE, 0xB3, 0x48, 0x3E, 0x48, 0xD1, 0x63, 0x4F, 0x88, 0x8F, 0x3E, 0x71,\n0x85, 0xA2, 0x17, 0x0F, 0x0F, 0x1B, 0xFB, 0x19, 0x57, 0xAC, 0xCF, 0xD6, 0x5D, 0x06, 0xB2, 0xEC,\n0xB4, 0x90, 0x8B, 0xDB, 0x1B, 0x1F, 0x8F, 0x5B, 0x0A, 0xE8, 0x9E, 0x8F, 0x7C, 0xFA, 0x1B, 0x13,\n0x31, 0x44, 0x86, 0x6E, 0xE9, 0xEA, 0xE2, 0xE2, 0xA2, 0xCB, 0x40, 0x96, 0x5D, 0x16, 0x72, 0xB6,\n0x16, 0x21, 0x1D, 0x53, 0xAC, 0x87, 0x87, 0x2E, 0x0B, 0x39, 0xEF, 0xB4, 0x90, 0xA7, 0x44, 0x08,\n0x03, 0x98, 0x43, 0xB5, 0xDA, 0x0A, 0xD4, 0x2E, 0x7B, 0x04, 0x16, 0x02, 0x20, 0x64, 0x20, 0xBB,\n0xCF, 0xFA, 0xDD, 0x29, 0xFF, 0x28, 0x7E, 0xB0, 0x4B, 0x97, 0x5F, 0xA9, 0xF9, 0x1A, 0x2F, 0xCD,\n0x74, 0xD7, 0x2E, 0x84, 0x87, 0x64, 0xE7, 0x7D, 0x89, 0x8F, 0x75, 0x07, 0x21, 0xC2, 0xA3, 0x8B,\n0x10, 0x8D, 0xB0, 0x1E, 0x0F, 0xB9, 0xD9, 0xF2, 0x11, 0xDB, 0x69, 0x38, 0xF8, 0xF1, 0xF0, 0x6F,\n0x4A, 0xF9, 0x93, 0xAC, 0x2D, 0x35, 0x10, 0x93, 0x0F, 0xA9, 0xC7, 0x3F, 0x06, 0x75, 0xF8, 0xC7,\n0x5A, 0x4F, 0x3E, 0x49, 0x88, 0xC1, 0x47, 0x0F, 0x21, 0x63, 0x75, 0xB9, 0x0B, 0x10, 0xB5, 0xDA,\n0x90, 0xE5, 0x84, 0xD3, 0xC1, 0x12, 0x34, 0xF0, 0x03, 0x03, 0x04, 0x20, 0x99, 0x0F, 0xFD, 0xDA,\n0xE0, 0x20, 0xDA, 0x0A, 0xFF, 0x28, 0xF6, 0x39, 0x12, 0x1F, 0x36, 0x21, 0xB1, 0xCC, 0xAB, 0xDE,\n0x4D, 0x40, 0x92, 0xCC, 0x59, 0xD6, 0x3E, 0xF8, 0xF0, 0x09, 0x11, 0x1E, 0x83, 0x34, 0x1A, 0x5C,\n0x3C, 0xBA, 0x08, 0x39, 0x0C, 0xEA, 0xF8, 0x10, 0xE1, 0xDF, 0x0A, 0x31, 0xE2, 0x4D, 0xB4, 0xC4,\n0x47, 0xD2, 0x4D, 0x17, 0x1F, 0xEA, 0xDC, 0x65, 0xDE, 0xE5, 0x28, 0x9F, 0x0F, 0xE9, 0x0C, 0x0F,\n0x71, 0xF8, 0x90, 0x4C, 0x3C, 0xC6, 0x61, 0xA3, 0xBE, 0x8B, 0x0F, 0x11, 0x42, 0x26, 0x42, 0x54,\n0x4B, 0x23, 0x6A, 0x22, 0x04, 0x0B, 0xF9, 0x16, 0x10, 0x6E, 0x10, 0x1F, 0xE9, 0x77, 0x15, 0x73,\n0xE9, 0x87, 0x9A, 0xBA, 0xF4, 0x48, 0x14, 0x7D, 0x7C, 0x68, 0xEF, 0x20, 0x22, 0x3E, 0xB2, 0x3C,\n0xFF, 0x18, 0xF0, 0xF8, 0x77, 0xBD, 0xBE, 0x5F, 0xFB, 0xFE, 0xD1, 0x41, 0x88, 0x46, 0x57, 0xC8,\n0x9B, 0x5F, 0x1D, 0xB2, 0xB6, 0x33, 0x93, 0x2C, 0xFC, 0xE3, 0xEF, 0x14, 0x73, 0xC2, 0x3F, 0x92,\n0x6C, 0x3E, 0x42, 0xEE, 0xFC, 0x2A, 0x64, 0xF3, 0x11, 0x84, 0xEC, 0x37, 0x36, 0x1F, 0xBE, 0x87,\n0x9C, 0x3F, 0xCB, 0x9F, 0x60, 0x85, 0x87, 0xEC, 0xE6, 0xB2, 0x74, 0x6D, 0x29, 0x86, 0x0E, 0x0F,\n0x01, 0x10, 0xF4, 0x6E, 0xE0, 0x23, 0xFF, 0x6E, 0x61, 0x4D, 0x75, 0x5E, 0x16, 0x84, 0x3B, 0xBD,\n0x0A, 0x39, 0x93, 0x2C, 0xF8, 0x30, 0x08, 0xD9, 0xEC, 0x13, 0x1F, 0x21, 0x07, 0x0F, 0x64, 0x11,\n0x72, 0x81, 0xAE, 0x4C, 0xFF, 0x08, 0xBD, 0xDF, 0x02, 0x46, 0xCB, 0x3F, 0x22, 0x1A, 0x1E, 0xC2,\n0xFD, 0x6C, 0x85, 0x47, 0x96, 0xB3, 0x94, 0x75, 0x81, 0x2C, 0x42, 0x96, 0xC8, 0xE3, 0xE3, 0x5F,\n0x45, 0x42, 0xE4, 0xD1, 0xF0, 0x90, 0x07, 0xA4, 0x25, 0x4D, 0xD3, 0x3F, 0xC2, 0x44, 0x5C, 0x3E,\n0x4A, 0x0F, 0x29, 0x41, 0xE1, 0x38, 0x5B, 0x42, 0x1A, 0xFE, 0x58, 0x08, 0x80, 0x60, 0x20, 0x01,\n0x47, 0x74, 0xAD, 0xE4, 0x43, 0xF7, 0x9A, 0xF2, 0x0F, 0xC2, 0xE7, 0xC3, 0x9B, 0x65, 0x25, 0x3E,\n0xD0, 0x6C, 0x82, 0x1E, 0x7C, 0xE8, 0x75, 0xC2, 0x43, 0x4C, 0x40, 0x48, 0xD5, 0xDB, 0xFE, 0x81,\n0x9C, 0x32, 0x3A, 0x9A, 0xFF, 0x2C, 0xC8, 0x36, 0xEC, 0xC3, 0xF5, 0x90, 0xC3, 0x91, 0x3C, 0x3E,\n0x90, 0xC7, 0x07, 0x32, 0xF8, 0x40, 0x67, 0xF7, 0xFB, 0x8D, 0x61, 0x1F, 0x68, 0x65, 0xF9, 0x87,\n0x4F, 0x48, 0x31, 0x2A, 0xA9, 0xDF, 0x15, 0x0B, 0x58, 0xCC, 0x84, 0x8E, 0x08, 0x09, 0x18, 0x00,\n0x84, 0xFC, 0x63, 0xFC, 0x45, 0xA2, 0x95, 0x7C, 0xE8, 0xE7, 0xE9, 0x81, 0x10, 0x0E, 0x1F, 0x7C,\n0xC6, 0x78, 0x66, 0x96, 0x35, 0xE4, 0xE7, 0x85, 0x36, 0x6D, 0xFF, 0xB8, 0xC7, 0x3F, 0xD2, 0x5B,\n0x99, 0x8B, 0x07, 0x84, 0xD8, 0xFE, 0x31, 0x74, 0x1E, 0x1F, 0x68, 0x66, 0x82, 0x35, 0xE0, 0x41,\n0x88, 0x96, 0x86, 0xF0, 0x0F, 0x08, 0xBC, 0x72, 0xF8, 0x00, 0x90, 0x0B, 0x87, 0x0F, 0x1F, 0x10,\n0xBD, 0x21, 0x7D, 0xAB, 0xFB, 0xBB, 0x8D, 0xC1, 0x87, 0xE9, 0x21, 0x6A, 0x0C, 0x1B, 0x05, 0x84,\n0x98, 0x7C, 0x2C, 0x6A, 0x64, 0x90, 0x82, 0xE4, 0x41, 0x4F, 0x84, 0x85, 0x00, 0x48, 0x9C, 0xF0,\n0x2B, 0xC1, 0x14, 0xE4, 0x15, 0xF4, 0x91, 0x9E, 0x77, 0x20, 0xC2, 0x87, 0x6E, 0xF9, 0x60, 0x61,\n0x3B, 0x3D, 0xF7, 0x09, 0xD9, 0x8B, 0x8F, 0xE5, 0x5A, 0x82, 0x11, 0x4C, 0xA4, 0xCD, 0x07, 0xB2,\n0xF8, 0x40, 0x1E, 0x1F, 0x08, 0x38, 0x6A, 0x7C, 0x24, 0x03, 0x71, 0x3D, 0xE4, 0xE3, 0x21, 0x0B,\n0x42, 0x2C, 0x3E, 0x90, 0x87, 0x07, 0x32, 0xEC, 0x03, 0x9D, 0xE2, 0x21, 0x0D, 0x3E, 0x6C, 0x42,\n0xF2, 0x57, 0x19, 0xE0, 0x21, 0x2E, 0x1F, 0x78, 0x48, 0x7D, 0x72, 0x45, 0xF6, 0xC1, 0x81, 0x3C,\n0xA4, 0x74, 0x10, 0xFC, 0xA3, 0x6E, 0x21, 0xE5, 0x35, 0x59, 0x4C, 0xAF, 0x8A, 0xB0, 0xD6, 0xAF,\n0xB2, 0x83, 0x24, 0x40, 0x2C, 0xFF, 0x80, 0x90, 0x66, 0xF9, 0xE3, 0x85, 0xE6, 0x97, 0xAF, 0x4A,\n0x0F, 0xB1, 0xF8, 0xB8, 0x52, 0x0C, 0xEA, 0xE1, 0x03, 0x0F, 0x69, 0xFB, 0x07, 0x8C, 0xB4, 0x3C,\n0x24, 0xD2, 0x73, 0xDB, 0x43, 0x2E, 0x10, 0x1E, 0x68, 0xF1, 0x81, 0x0C, 0x3E, 0xD0, 0x50, 0x32,\n0xDC, 0x7B, 0x7C, 0xB4, 0xA7, 0x59, 0xD8, 0x87, 0x5A, 0xE1, 0x21, 0x3E, 0x1F, 0x8B, 0xE9, 0xBA,\n0x45, 0x50, 0x41, 0xA4, 0xEE, 0xD9, 0x42, 0xF8, 0x3C, 0x08, 0xFE, 0x51, 0x1C, 0x54, 0x6A, 0x2A,\n0xDA, 0x87, 0x81, 0x38, 0x88, 0xE0, 0x1F, 0xE1, 0x20, 0x1C, 0x4C, 0x13, 0xF2, 0x20, 0xD9, 0x84,\n0x6C, 0xEA, 0x7C, 0xE0, 0x21, 0xF5, 0xE5, 0x2B, 0xDF, 0x43, 0x2E, 0x8A, 0x21, 0x46, 0xAA, 0xEE,\n0xF3, 0xC1, 0x45, 0xEF, 0x1F, 0x2B, 0xFE, 0x51, 0xE2, 0xA1, 0xF8, 0x64, 0xF0, 0x61, 0x79, 0x88,\n0x68, 0xA8, 0xA9, 0x5D, 0xFE, 0xF0, 0x09, 0x59, 0x33, 0xAD, 0x45, 0x67, 0x10, 0xD2, 0xE2, 0x03,\n0x4D, 0x55, 0xC6, 0x56, 0x7C, 0xC4, 0x2E, 0x36, 0x3C, 0xC4, 0xE1, 0xA3, 0x5C, 0xCC, 0x62, 0x1A,\n0xC4, 0xEC, 0xAA, 0x88, 0x28, 0x19, 0x16, 0x49, 0x7A, 0xFC, 0xA4, 0xF2, 0xBB, 0x25, 0x75, 0x3A,\n0x01, 0x0F, 0x13, 0x90, 0xFC, 0xB7, 0xF1, 0xCD, 0x78, 0x3A, 0x18, 0x3B, 0x97, 0x0F, 0x08, 0xA9,\n0x97, 0x3F, 0xEA, 0x32, 0xFC, 0xC3, 0x58, 0xCC, 0x3A, 0xC6, 0x22, 0x05, 0x84, 0x54, 0xCB, 0xE7,\n0x2D, 0x42, 0xCA, 0x8F, 0xCF, 0x1E, 0xB9, 0x47, 0x04, 0x05, 0x91, 0xC6, 0xF2, 0xAE, 0x47, 0x08,\n0x7C, 0x94, 0x26, 0xD2, 0xF0, 0x0F, 0x9F, 0x10, 0xD8, 0xB0, 0x08, 0x81, 0x8F, 0x52, 0xCD, 0xE5,\n0x2B, 0xBE, 0x5A, 0x71, 0x08, 0x08, 0x31, 0xF9, 0x28, 0x17, 0xB3, 0x72, 0x60, 0x04, 0x65, 0x08,\n0x89, 0x77, 0x7C, 0x1E, 0x24, 0xCA, 0xE7, 0xFC, 0x36, 0x87, 0x35, 0x73, 0x0A, 0x3E, 0x7C, 0x44,\n0xB4, 0xA8, 0xCB, 0x37, 0x36, 0xF0, 0x1D, 0xAB, 0x61, 0x22, 0x4E, 0xFE, 0x01, 0x21, 0x15, 0xFF,\n0x78, 0x3C, 0xC3, 0xE6, 0x0D, 0x0F, 0xC1, 0x3F, 0x3C, 0x42, 0x22, 0x2B, 0x77, 0x3C, 0x84, 0xF2,\n0x47, 0x9D, 0x90, 0x6D, 0x75, 0xF9, 0xEA, 0x53, 0xE9, 0x1E, 0x70, 0xB2, 0xAD, 0xF0, 0x31, 0xA9,\n0x1B, 0x8F, 0x0F, 0x64, 0xF8, 0x07, 0x3A, 0x59, 0x9A, 0xF3, 0x2B, 0x08, 0x51, 0xD4, 0xF9, 0x70,\n0x67, 0x59, 0x0C, 0x15, 0x46, 0xCE, 0xF3, 0x37, 0x9B, 0x58, 0x7C, 0xC0, 0x48, 0x51, 0x17, 0xAC,\n0xE3, 0x81, 0x4D, 0x1C, 0x7F, 0xE4, 0x76, 0xC0, 0x63, 0xE2, 0x97, 0xD5, 0xC1, 0xC6, 0x8E, 0xE9,\n0xD5, 0x54, 0x34, 0xD2, 0x0F, 0xFD, 0x89, 0xEC, 0x75, 0x5B, 0x24, 0x22, 0x95, 0xF2, 0xA0, 0x41,\n0x08, 0xFE, 0xF1, 0x58, 0xF1, 0x0F, 0xDE, 0xD7, 0x3C, 0xFF, 0x40, 0x2F, 0x46, 0x4D, 0xC9, 0x44,\n0x04, 0x84, 0x94, 0x7C, 0x6C, 0xA7, 0x47, 0xF0, 0x4D, 0xE9, 0x09, 0x3A, 0x2F, 0xDC, 0x83, 0xE3,\n0xC1, 0x44, 0xB8, 0x7C, 0x91, 0xE5, 0xAB, 0x86, 0x1A, 0xE9, 0x87, 0x49, 0xC8, 0xB2, 0x01, 0xC8,\n0x72, 0xC2, 0x3F, 0xB4, 0x29, 0x50, 0xBE, 0x9C, 0xE1, 0x45, 0x51, 0x7D, 0x5F, 0xF0, 0x31, 0x97,\n0xAA, 0x33, 0xEB, 0x48, 0x63, 0x88, 0x91, 0x33, 0x76, 0x3D, 0x7C, 0xA8, 0x03, 0x8D, 0x88, 0x1A,\n0x1F, 0x2C, 0xF7, 0x72, 0x2D, 0x56, 0xBE, 0xBC, 0xA4, 0x0C, 0x0E, 0x32, 0x76, 0xF8, 0x47, 0x0F,\n0x22, 0x7C, 0x1B, 0x77, 0x76, 0x90, 0xF1, 0x48, 0xED, 0xD9, 0x43, 0x6C, 0x3E, 0xA4, 0xC2, 0x3F,\n0xEE, 0x2B, 0xEF, 0x62, 0xAD, 0x82, 0xC8, 0xB2, 0x2D, 0x11, 0x61, 0xF8, 0x07, 0xBA, 0xBD, 0xB1,\n0xF9, 0x90, 0x8A, 0x7F, 0x1B, 0xE4, 0x63, 0xF8, 0x07, 0x64, 0x70, 0x5C, 0xF5, 0x90, 0xED, 0xFB,\n0x43, 0x53, 0x1E, 0x1F, 0xC8, 0xE3, 0x03, 0xB9, 0xFE, 0x91, 0x4B, 0x86, 0xFB, 0x4A, 0x79, 0xD0,\n0xF0, 0x10, 0xFC, 0x03, 0x0B, 0xC1, 0x48, 0x74, 0x30, 0x22, 0xE2, 0xF1, 0x81, 0x87, 0x30, 0x1B,\n0x9A, 0xCA, 0x3F, 0xCA, 0x92, 0xA1, 0x00, 0x51, 0xF9, 0xFC, 0xA7, 0x67, 0x3E, 0xA6, 0x11, 0xA1,\n0xE8, 0x08, 0x1B, 0x1E, 0x21, 0xA4, 0x1F, 0x61, 0x92, 0x69, 0x9F, 0xB1, 0x49, 0x27, 0xAB, 0x5A,\n0xF9, 0xBC, 0x6D, 0x22, 0x94, 0x3F, 0xF0, 0x8F, 0x09, 0xB9, 0x78, 0x40, 0x88, 0x61, 0x20, 0x50,\n0x53, 0xF0, 0xD1, 0x56, 0x71, 0x75, 0x2F, 0x48, 0x94, 0x59, 0x3A, 0x1E, 0xE2, 0xF9, 0x07, 0x45,\n0x75, 0x87, 0x0F, 0x64, 0xF1, 0x81, 0xCA, 0xF2, 0x47, 0x35, 0xFF, 0xC0, 0x48, 0x58, 0xEE, 0x65,\n0x7A, 0x65, 0x7A, 0x88, 0x1A, 0xB3, 0x8D, 0xE4, 0x20, 0x8C, 0x20, 0x12, 0x11, 0x0F, 0x0F, 0x0A,\n0x22, 0x54, 0x29, 0x18, 0xE5, 0x13, 0x88, 0x08, 0x8A, 0x11, 0x10, 0xEC, 0xA3, 0x61, 0x22, 0xA0,\n0x87, 0x7D, 0xB4, 0xA2, 0xF4, 0x0F, 0xBE, 0xD7, 0x3D, 0xEF, 0x28, 0x18, 0xE2, 0x21, 0x2C, 0xEF,\n0x9A, 0x84, 0x6C, 0xEE, 0x28, 0x7F, 0x18, 0x1E, 0xC2, 0xFC, 0xAA, 0xA9, 0x0B, 0x10, 0x01, 0x84,\n0x69, 0x1D, 0x7F, 0x82, 0x70, 0x8E, 0x90, 0x9B, 0x61, 0xD6, 0x04, 0x1F, 0x2F, 0xF3, 0x0F, 0xBA,\n0x17, 0x8B, 0x59, 0x07, 0x43, 0x37, 0x16, 0x1F, 0xC8, 0xE1, 0x03, 0x9D, 0x54, 0xFC, 0xA3, 0x01,\n0x09, 0x45, 0x75, 0xF8, 0xB0, 0x3D, 0x24, 0xC6, 0xCC, 0x2A, 0xF0, 0x60, 0x00, 0xAD, 0x98, 0x75,\n0x39, 0x7C, 0x10, 0x94, 0x0C, 0x9B, 0xF6, 0x41, 0x45, 0x24, 0x01, 0x52, 0xFE, 0x46, 0x3D, 0xF8,\n0x74, 0x94, 0xF1, 0x48, 0x6A, 0xCB, 0x57, 0x19, 0x89, 0x7C, 0xA2, 0x96, 0x94, 0xF6, 0x2B, 0x93,\n0x0F, 0x08, 0x89, 0x0F, 0xFE, 0xAF, 0x71, 0x79, 0xCB, 0x44, 0x4E, 0x96, 0x86, 0x28, 0x88, 0xBC,\n0xCC, 0xCA, 0x89, 0x4A, 0x51, 0xBD, 0xE0, 0x63, 0x6E, 0x31, 0xAB, 0x96, 0x7F, 0x10, 0x2F, 0x8B,\n0xEA, 0x07, 0xEF, 0xFE, 0xAF, 0x4C, 0x3E, 0xCA, 0xA2, 0xFA, 0xD2, 0x13, 0x78, 0xFC, 0xDB, 0xC0,\n0x23, 0x7C, 0x7D, 0xA9, 0xA2, 0xBA, 0xC5, 0x07, 0x1E, 0x12, 0xF1, 0x5C, 0xFE, 0x50, 0x27, 0x1A,\n0xA8, 0xA6, 0x73, 0x00, 0x21, 0x2E, 0x1F, 0x8B, 0x31, 0x31, 0x6F, 0xE5, 0x1F, 0xA9, 0xC5, 0xD1,\n0x4F, 0x03, 0x20, 0x3A, 0x34, 0x62, 0x34, 0x91, 0xB8, 0xBC, 0xC4, 0x89, 0xB2, 0xFC, 0x31, 0xE6,\n0xE4, 0x94, 0xD2, 0x79, 0x2F, 0xA0, 0xA8, 0x4E, 0xFA, 0xD1, 0x10, 0xD7, 0xBF, 0x6F, 0xE4, 0x1F,\n0xA7, 0xBC, 0x16, 0x0D, 0xDD, 0x2F, 0x99, 0x5F, 0xF5, 0x10, 0x72, 0x61, 0xEA, 0xF6, 0x0B, 0x7C,\n0x74, 0x10, 0xF2, 0x09, 0xAF, 0x28, 0xFC, 0x83, 0xBD, 0xA2, 0x8F, 0x0F, 0x3C, 0xE4, 0xC2, 0x54,\n0x63, 0xF9, 0xAA, 0xB1, 0x98, 0xB5, 0x36, 0x44, 0xC9, 0x10, 0x3E, 0xCC, 0x59, 0x16, 0xD3, 0x0E,\n0x6D, 0x39, 0x22, 0x51, 0xC7, 0x42, 0x20, 0xC4, 0x1D, 0x96, 0xE3, 0x6A, 0xEF, 0xAE, 0x0A, 0x47,\n0xC9, 0x8C, 0x12, 0x91, 0xAF, 0x3F, 0x6C, 0x74, 0x60, 0x7A, 0x88, 0xC8, 0xF3, 0x1E, 0x05, 0x88,\n0x60, 0x12, 0x0B, 0x8A, 0x83, 0x2C, 0x67, 0xC7, 0x0F, 0x93, 0xF8, 0x78, 0x94, 0xEB, 0x21, 0x9B,\n0xBB, 0x86, 0x7F, 0x94, 0xF6, 0x0F, 0x1F, 0x3E, 0x21, 0x17, 0x75, 0x03, 0xC1, 0x42, 0x30, 0x12,\n0xF8, 0xB0, 0x09, 0xC1, 0x2F, 0xAA, 0x3B, 0x42, 0xD3, 0xB0, 0x2D, 0x7C, 0xB8, 0x1E, 0x72, 0x65,\n0xC1, 0x41, 0x41, 0x64, 0x69, 0x03, 0xB2, 0x34, 0xF9, 0x60, 0xB9, 0x17, 0x3E, 0x4C, 0x42, 0x48,\n0x55, 0x99, 0x6A, 0x90, 0x83, 0x64, 0x4C, 0xC8, 0xD4, 0x7D, 0x3E, 0x94, 0xAA, 0xCF, 0x8F, 0x74,\n0x7E, 0xB4, 0xF9, 0xE1, 0xEB, 0xEE, 0xF3, 0x71, 0x68, 0xEA, 0x55, 0x0F, 0x11, 0x42, 0xFA, 0x61,\n0x45, 0x2A, 0x7F, 0xAC, 0xCC, 0x00, 0x0F, 0x4F, 0x43, 0xF9, 0xE3, 0xEC, 0x6C, 0x6D, 0x07, 0x7C,\n0x58, 0xF2, 0xED, 0x23, 0x13, 0x72, 0xE8, 0xD1, 0x50, 0x3D, 0xFF, 0x3B, 0xC6, 0xFF, 0xB8, 0xFF,\n0x66, 0x57, 0xFC, 0x40, 0x84, 0x7C, 0x12, 0x1F, 0x3D, 0x82, 0x0F, 0x4F, 0xF0, 0x61, 0x49, 0x7C,\n0xF4, 0x3C, 0xF3, 0x2C, 0x5F, 0x99, 0x88, 0xF4, 0x0C, 0x1B, 0x61, 0x02, 0x1F, 0xA6, 0x87, 0xCC,\n0x8C, 0x74, 0x7E, 0x74, 0xBD, 0xFA, 0xE1, 0xE1, 0xE9, 0xC3, 0xD3, 0xEE, 0xDB, 0x8D, 0xC3, 0x62,\n0xDB, 0x7D, 0xB8, 0xEE, 0xFC, 0xC0, 0x63, 0x42, 0xDD, 0xD7, 0x6A, 0xF8, 0x9A, 0x3D, 0x33, 0x36,\n0x22, 0xE4, 0xE4, 0xE4, 0xFE, 0x64, 0xED, 0x6E, 0x8F, 0xEB, 0x93, 0x4E, 0x5D, 0x75, 0x48, 0x4E,\n0x72, 0xB3, 0x1D, 0x32, 0x70, 0xA3, 0xF1, 0x5D, 0xD6, 0xC8, 0xFB, 0x3E, 0xF7, 0x83, 0xD5, 0x52,\n0xA7, 0x07, 0xD4, 0xA3, 0x93, 0x4E, 0xAD, 0x1F, 0xFD, 0x67, 0x5E, 0x31, 0xF8, 0x87, 0xFF, 0xD2,\n0x6E, 0x18, 0x36, 0x9E, 0x98, 0xD1, 0x5B, 0x7A, 0xBA, 0xFE, 0x30, 0xB4, 0x0F, 0xC3, 0x8E, 0xC6,\n0x4D, 0xEC, 0xAE, 0x3F, 0x9C, 0x2B, 0x49, 0x37, 0x25, 0x3C, 0xAE, 0xAF, 0xFB, 0x00, 0x11, 0x22,\n0x6A, 0x66, 0xC8, 0x31, 0x1F, 0x36, 0xA6, 0x12, 0x1F, 0xFB, 0xFD, 0xFE, 0xD1, 0xDD, 0xD4, 0xF8,\n0x7E, 0x6A, 0x4B, 0x83, 0x2B, 0xF8, 0xBA, 0xD5, 0x76, 0xD3, 0xA5, 0x6D, 0xA7, 0x6E, 0xBA, 0x14,\n0x0F, 0xC9, 0x95, 0xF9, 0x19, 0x2A, 0xAA, 0xED, 0xEB, 0xBD, 0xFD, 0xCC, 0x27, 0x69, 0xDC, 0xBB,\n0xDA, 0x6F, 0x64, 0x0A, 0x5D, 0x23, 0xA7, 0x53, 0x4F, 0x1A, 0xF7, 0xAE, 0x16, 0xE7, 0x3F, 0xAC,\n0xAE, 0x8B, 0xDF, 0xBF, 0x9E, 0x04, 0x44, 0x12, 0x24, 0x8B, 0x27, 0x6B, 0x0B, 0xA8, 0x87, 0xDC,\n0xC3, 0xDB, 0x56, 0x2B, 0xF9, 0xA5, 0x6D, 0x21, 0x0F, 0xFB, 0x41, 0x8F, 0xAE, 0xF6, 0x8F, 0xCB,\n0xD3, 0xF7, 0xCB, 0x2E, 0x40, 0x24, 0x06, 0x99, 0xA5, 0xB7, 0xE0, 0x03, 0x1D, 0x7A, 0xF8, 0xE8,\n0x82, 0xFB, 0x36, 0x66, 0x59, 0xB7, 0x66, 0x9C, 0x0C, 0xCF, 0xE5, 0x63, 0xC7, 0x93, 0x3F, 0xC8,\n0xB6, 0x10, 0xF1, 0x21, 0x9D, 0xBB, 0x23, 0x27, 0xF8, 0xF0, 0x07, 0xE6, 0xF5, 0xA0, 0xF6, 0x48,\n0x07, 0x85, 0xA8, 0xA4, 0x5F, 0x1F, 0x85, 0x5A, 0x35, 0x46, 0x8D, 0xD6, 0xA0, 0xDD, 0xEC, 0xBE,\n0x8F, 0x90, 0x95, 0xA4, 0x2E, 0xB9, 0xC3, 0xEC, 0x96, 0xEC, 0xC3, 0x27, 0x64, 0x2F, 0x3E, 0xDE,\n0x6B, 0xE6, 0xBC, 0xEC, 0xC1, 0xE3, 0x2D, 0x09, 0xD9, 0x7E, 0x97, 0x7C, 0x3E, 0x7A, 0x94, 0xB3,\n0x15, 0xDF, 0x43, 0x96, 0x52, 0x07, 0x21, 0x7B, 0x4C, 0x64, 0x7E, 0x1B, 0xFC, 0xA3, 0x87, 0x10,\n0x7C, 0xC1, 0x19, 0x98, 0x80, 0x34, 0xE2, 0x71, 0x7D, 0xD4, 0x6A, 0xE3, 0x7F, 0x95, 0x00, 0x29,\n0xB1, 0x61, 0xC7, 0x69, 0xC0, 0x17, 0x1E, 0xB2, 0x48, 0x7D, 0xFA, 0xBF, 0xD6, 0xCF, 0x91, 0x85,\n0x47, 0xE2, 0x03, 0x42, 0x1E, 0x9A, 0x9B, 0x62, 0x9F, 0xE5, 0xBD, 0x42, 0x27, 0xCB, 0xF7, 0x02,\n0x44, 0x88, 0x8C, 0x13, 0xE8, 0xD6, 0x06, 0x1F, 0x6F, 0x47, 0xC8, 0xF6, 0x3B, 0x65, 0xF3, 0xD1,\n0xE9, 0x1F, 0x7D, 0x84, 0x8C, 0x8B, 0x1D, 0xF2, 0x63, 0xF7, 0xD9, 0x87, 0x10, 0x45, 0xF3, 0xA5,\n0x4D, 0xF9, 0x07, 0x84, 0x18, 0x23, 0x87, 0x71, 0x66, 0x0E, 0xCC, 0xEB, 0xA4, 0x44, 0x48, 0xC9,\n0x07, 0xC8, 0x20, 0x39, 0x48, 0x20, 0x43, 0x54, 0x77, 0xE9, 0x8E, 0xF1, 0x10, 0x80, 0xA4, 0x8F,\n0x47, 0x11, 0x47, 0x7D, 0x84, 0xAC, 0xA4, 0x40, 0x24, 0x52, 0xF0, 0xE9, 0x6D, 0xF0, 0x0F, 0x64,\n0xF1, 0x71, 0x9A, 0xF0, 0xC8, 0x84, 0x48, 0x8F, 0xD3, 0x9B, 0x74, 0x54, 0x25, 0xEF, 0x1B, 0x6E,\n0x6F, 0xC1, 0x07, 0x7A, 0xA3, 0xF9, 0x15, 0x84, 0xB4, 0xDF, 0x40, 0xE0, 0x23, 0x08, 0x71, 0xF1,\n0x80, 0x90, 0xF6, 0x4B, 0xBB, 0x7F, 0xC8, 0x7C, 0x48, 0xF6, 0xFC, 0x0A, 0xB5, 0x07, 0xA6, 0x7A,\n0x46, 0xF1, 0x22, 0x71, 0x70, 0x5D, 0x6D, 0xA0, 0x90, 0x93, 0xF4, 0x3A, 0x4B, 0x1C, 0xE9, 0xFE,\n0x74, 0x9F, 0x98, 0x08, 0x60, 0x56, 0xFB, 0x42, 0xE7, 0x16, 0x1F, 0x10, 0xB2, 0x6F, 0xBE, 0xCD,\n0x48, 0xFB, 0x23, 0xCD, 0xA6, 0x1F, 0xF0, 0x61, 0x4D, 0xB3, 0xE0, 0xA3, 0xDF, 0x43, 0x2E, 0xDE,\n0x84, 0x0F, 0x64, 0xDB, 0x47, 0xCF, 0xFC, 0x0A, 0x25, 0x0A, 0x1E, 0x5B, 0xEF, 0x1D, 0xCB, 0x53,\n0x9E, 0x4A, 0x3C, 0xA4, 0x09, 0x08, 0x9A, 0x71, 0x10, 0xFD, 0x74, 0x85, 0x1C, 0x0F, 0xA9, 0xE2,\n0x11, 0x58, 0x94, 0xBD, 0x5A, 0xE2, 0x03, 0x4D, 0xE1, 0x91, 0x77, 0x38, 0x48, 0x7D, 0x36, 0x46,\n0x13, 0x12, 0x90, 0xF7, 0x34, 0x82, 0x02, 0xA8, 0x95, 0x5E, 0x32, 0x3D, 0x24, 0xF2, 0x8F, 0x82,\n0x90, 0xE6, 0x04, 0x6B, 0x5F, 0xCA, 0xF0, 0x0F, 0x94, 0x52, 0x75, 0x67, 0x7E, 0x05, 0x21, 0xAF,\n0x3B, 0xCD, 0xDA, 0xFE, 0xF5, 0x76, 0x84, 0xF4, 0xF3, 0xE1, 0x7F, 0x52, 0x1D, 0x3E, 0x78, 0x2E,\n0xE7, 0x3C, 0x64, 0x5F, 0xA8, 0xED, 0x20, 0xF2, 0x8F, 0x63, 0x75, 0xFA, 0x07, 0x90, 0xD4, 0x7B,\n0xD0, 0x08, 0x0F, 0x69, 0xE2, 0xA1, 0x86, 0x83, 0x54, 0x10, 0x49, 0x1B, 0x7C, 0xA0, 0x74, 0xD2,\n0x04, 0xB5, 0xA2, 0x06, 0x1E, 0x0B, 0xF8, 0x80, 0x90, 0xD6, 0xDB, 0x8C, 0x0D, 0x08, 0xFE, 0x81,\n0xF0, 0x90, 0xC7, 0xCA, 0xA6, 0x0E, 0x3E, 0x5E, 0x81, 0x10, 0x9B, 0x0F, 0x5F, 0xFE, 0xF4, 0xCA,\n0xE7, 0xC3, 0x9B, 0x65, 0x49, 0xC3, 0x52, 0x47, 0x41, 0xC8, 0xDE, 0xE0, 0x03, 0xB5, 0xDE, 0xF9,\n0xE0, 0x03, 0x2D, 0x1C, 0xFF, 0x40, 0xED, 0x77, 0x6D, 0x86, 0x30, 0xB3, 0xAC, 0x46, 0xC3, 0x41,\n0x92, 0x2A, 0x08, 0xD5, 0xF8, 0x88, 0xC3, 0xC1, 0xAF, 0xA6, 0x40, 0x45, 0xCE, 0x2C, 0x6B, 0xB1,\n0x7A, 0x21, 0x11, 0xB3, 0xDF, 0x4C, 0x4D, 0xB4, 0xE0, 0x03, 0xDD, 0xB5, 0xF8, 0x78, 0xCF, 0x9B,\n0x1E, 0x1E, 0x62, 0xCC, 0xAF, 0x7A, 0x09, 0xA1, 0x64, 0xF8, 0x16, 0x7C, 0xA0, 0x57, 0x4C, 0xCF,\n0xE1, 0x03, 0x05, 0x0D, 0xD5, 0xB7, 0x0F, 0xFC, 0x03, 0x42, 0x1E, 0xF7, 0x16, 0x1F, 0x10, 0x32,\n0xF5, 0xB2, 0x6E, 0x56, 0x15, 0xB9, 0x78, 0x00, 0x48, 0x1D, 0x0E, 0xFC, 0xC3, 0x24, 0x44, 0x6A,\n0x38, 0xC8, 0xD1, 0x2E, 0xA0, 0x28, 0x55, 0x79, 0x14, 0x81, 0xCD, 0x04, 0x21, 0xD5, 0x75, 0x3B,\n0xF8, 0x28, 0x09, 0xA9, 0xAE, 0x66, 0x91, 0x7E, 0xB4, 0x09, 0x81, 0x8F, 0x35, 0xEF, 0x79, 0xA5,\n0x87, 0xAC, 0x2B, 0xDB, 0x45, 0x5D, 0xAF, 0x46, 0xC8, 0xF6, 0xFF, 0x4A, 0x80, 0xBD, 0x7A, 0x7A,\n0x6E, 0x4C, 0xB3, 0xF0, 0x0F, 0x83, 0x10, 0xF8, 0x70, 0x11, 0xD9, 0xAB, 0x5F, 0x55, 0x65, 0x4D,\n0xAF, 0x50, 0xD3, 0x3F, 0x16, 0x35, 0x42, 0x7A, 0x1C, 0x84, 0xC6, 0x61, 0x31, 0xBF, 0xE2, 0xB8,\n0xE6, 0x20, 0xE0, 0x61, 0x9A, 0x88, 0x34, 0xF1, 0xB4, 0xAC, 0xAA, 0x78, 0x60, 0x1F, 0xA5, 0xA6,\n0xCA, 0x83, 0xE1, 0x1F, 0x25, 0x22, 0xB5, 0x59, 0x16, 0x7C, 0xBC, 0x15, 0x21, 0x87, 0xED, 0xAB,\n0xE8, 0xF0, 0xCA, 0xCB, 0xBB, 0xA5, 0x2A, 0x6F, 0x1F, 0x75, 0xFF, 0xA0, 0x20, 0xD2, 0xE0, 0xC3,\n0xC9, 0x43, 0xA4, 0xD5, 0x94, 0x16, 0x06, 0x1F, 0x46, 0x1E, 0x82, 0x5A, 0x84, 0x00, 0x07, 0x0E,\n0xC2, 0x09, 0x3F, 0xE6, 0x57, 0x41, 0xA2, 0x54, 0x25, 0xFB, 0x50, 0x34, 0x64, 0xCC, 0xAF, 0xD0,\n0x40, 0xC8, 0x7E, 0x3E, 0xFF, 0x40, 0x13, 0xE5, 0xF3, 0x65, 0xFD, 0x45, 0xAD, 0xCE, 0xB2, 0x1E,\n0x5B, 0x17, 0x23, 0xBE, 0x06, 0x21, 0xDB, 0xD7, 0xD2, 0xAB, 0x95, 0x07, 0xEB, 0x2A, 0x97, 0xAE,\n0xE0, 0xC3, 0x27, 0x64, 0x3F, 0xA9, 0xCA, 0xDC, 0x99, 0xF2, 0x87, 0x67, 0x22, 0x4D, 0x3E, 0x6A,\n0x13, 0x9B, 0x34, 0x5E, 0xEB, 0xD3, 0x2C, 0x46, 0x7B, 0x05, 0x11, 0x1C, 0x04, 0x3C, 0x8E, 0x1D,\n0xA4, 0x84, 0x22, 0x8B, 0x44, 0xA4, 0xA8, 0xC7, 0xB8, 0x1E, 0x82, 0x7D, 0x4C, 0x13, 0xF2, 0xC2,\n0x89, 0x5B, 0xAA, 0x95, 0x07, 0x79, 0x4D, 0x0B, 0x9D, 0x82, 0xC8, 0x3A, 0x3A, 0xFC, 0xA3, 0xE1,\n0x21, 0xB6, 0xDE, 0x04, 0x0F, 0xF4, 0x46, 0xFE, 0x01, 0x21, 0x28, 0x28, 0x99, 0x7E, 0x2A, 0x6B,\n0x84, 0xEC, 0x9B, 0xAA, 0xE4, 0x1F, 0xCD, 0xA1, 0xB0, 0x68, 0xF8, 0x87, 0x93, 0x87, 0x3C, 0x5D,\n0x37, 0xB4, 0x78, 0xB9, 0x7C, 0x5B, 0x73, 0x10, 0x20, 0xA9, 0x2F, 0x5F, 0xD5, 0x49, 0x29, 0x7C,\n0x6C, 0x4E, 0xC5, 0x1F, 0xC9, 0x93, 0x32, 0x4D, 0x48, 0x99, 0x9E, 0xFB, 0x88, 0x88, 0x0F, 0xE6,\n0x57, 0x13, 0xB3, 0xAC, 0x35, 0x03, 0x00, 0x3E, 0x0C, 0x0F, 0x31, 0x74, 0xFB, 0x16, 0x7C, 0xA0,\n0x37, 0xE1, 0x03, 0x15, 0xEF, 0x1D, 0x0D, 0x3E, 0x28, 0x88, 0x78, 0x80, 0x90, 0x87, 0x90, 0x7F,\n0xB4, 0xF9, 0x78, 0x58, 0x39, 0xFE, 0x81, 0x6A, 0xFE, 0xD1, 0xB0, 0x90, 0xA2, 0x20, 0x52, 0xAD,\n0xA4, 0x97, 0x74, 0xE4, 0x5F, 0x5D, 0xB4, 0x0C, 0xA4, 0x5C, 0xCB, 0x7A, 0x7A, 0x9A, 0x7D, 0xD4,\n0xE5, 0xE5, 0x57, 0x4D, 0xE9, 0xE7, 0x0F, 0x4E, 0xFE, 0x81, 0x3C, 0xFF, 0x40, 0xC0, 0x01, 0x1F,\n0x06, 0x21, 0xAE, 0xDE, 0x82, 0x0F, 0xF4, 0x0A, 0xE5, 0x8F, 0x96, 0x02, 0x0C, 0xA9, 0xCD, 0x07,\n0x97, 0x9D, 0x18, 0x7C, 0x20, 0x16, 0x29, 0x25, 0xCA, 0xE7, 0xA8, 0xB5, 0x98, 0x85, 0xAC, 0x3C,\n0x84, 0x81, 0x8B, 0xEA, 0x05, 0x91, 0xD8, 0x35, 0x1D, 0x84, 0x1C, 0xA4, 0x7D, 0xBF, 0x4F, 0x09,\n0x4C, 0x3C, 0x44, 0xE1, 0x08, 0xB7, 0x84, 0x8F, 0x95, 0x8E, 0xD8, 0xEA, 0x25, 0xC3, 0xBD, 0xF8,\n0x30, 0xD4, 0x28, 0x7F, 0x4C, 0x2D, 0x66, 0xC1, 0xC7, 0x9B, 0x12, 0xB2, 0x7D, 0x75, 0xBD, 0x09,\n0x1F, 0x88, 0x45, 0x0C, 0xD2, 0x8F, 0x29, 0xC9, 0xAA, 0x21, 0xA4, 0xC0, 0xC3, 0x48, 0xD5, 0x57,\n0xF3, 0xF2, 0xFC, 0x03, 0xE1, 0x20, 0x91, 0x9F, 0xB7, 0x2D, 0x64, 0xC2, 0x3E, 0x70, 0x10, 0x84,\n0x81, 0x14, 0xFE, 0x01, 0x2F, 0x75, 0x0F, 0x31, 0xC5, 0xF2, 0x6E, 0x4B, 0xE7, 0x5C, 0x98, 0x45,\n0x7A, 0xEE, 0x08, 0xFF, 0x60, 0x7A, 0xD5, 0xF4, 0x10, 0xCA, 0xE7, 0x6F, 0x4A, 0xC8, 0xF6, 0x0D,\n0xF4, 0x36, 0x7C, 0xA0, 0x22, 0x3D, 0xB7, 0x09, 0xD9, 0x5B, 0x2A, 0xCB, 0x83, 0xB6, 0x87, 0x58,\n0x62, 0x60, 0x6A, 0xD0, 0x96, 0x39, 0x48, 0x1B, 0x91, 0xB6, 0x83, 0x60, 0x22, 0x6D, 0x5F, 0x5A,\n0x00, 0xCC, 0x08, 0x2A, 0xF2, 0xF2, 0x10, 0x50, 0x40, 0xB5, 0x9B, 0x22, 0x55, 0xDF, 0x9B, 0xBA,\n0x7B, 0x2E, 0x0F, 0xE2, 0x1F, 0x8E, 0x87, 0x5C, 0xA0, 0x37, 0x48, 0xD5, 0x0F, 0xAF, 0x4F, 0x07,\n0x05, 0x91, 0xDE, 0xF2, 0x87, 0xF8, 0x30, 0xD5, 0x28, 0x7F, 0x34, 0x0A, 0x22, 0x7B, 0x57, 0x29,\n0x0F, 0xD9, 0x1C, 0xBD, 0xEE, 0xD5, 0x8D, 0xE5, 0xDE, 0xA1, 0xD9, 0xE2, 0xEA, 0xDD, 0x86, 0x85,\n0x20, 0xF8, 0x98, 0x73, 0x10, 0xD2, 0xF3, 0x96, 0x81, 0xA0, 0xF0, 0x33, 0x5F, 0x5C, 0x9D, 0xE8,\n0x58, 0xEB, 0x60, 0xC1, 0xFF, 0xB1, 0x77, 0xF6, 0xBC, 0x8D, 0x1B, 0x41, 0x18, 0x0E, 0xD4, 0x85,\n0x50, 0x7F, 0x51, 0xEF, 0xD2, 0x65, 0x2C, 0x40, 0x06, 0x54, 0x1C, 0xA4, 0x4A, 0x38, 0xA4, 0x8E,\n0x6B, 0x4B, 0x30, 0xE0, 0xFB, 0x09, 0x52, 0x6A, 0xD7, 0x01, 0x5C, 0xE6, 0xC7, 0x66, 0xB8, 0x1E,\n0xFA, 0x91, 0xD6, 0xCB, 0xE5, 0x3B, 0x32, 0x99, 0x0F, 0x24, 0xEF, 0x8A, 0x4B, 0x9E, 0x7C, 0x77,\n0xB6, 0xC9, 0x7D, 0xF4, 0xCE, 0xEC, 0xF0, 0x03, 0xFB, 0x90, 0x08, 0xD9, 0xEF, 0x3D, 0x3D, 0x17,\n0x04, 0x1E, 0x93, 0x10, 0x02, 0x1F, 0x53, 0xE8, 0xE9, 0xAA, 0xF4, 0x5C, 0x17, 0xFE, 0xA1, 0x10,\n0xB2, 0x4A, 0x84, 0xEC, 0x75, 0x39, 0x1F, 0x82, 0x20, 0x24, 0xF8, 0x90, 0xDB, 0x2D, 0x58, 0xD4,\n0xD4, 0xD2, 0xE4, 0x78, 0x28, 0x0E, 0x02, 0x1F, 0x92, 0x85, 0xE0, 0x20, 0xA2, 0xE0, 0xA3, 0x9A,\n0x82, 0xE0, 0x21, 0x00, 0x22, 0x28, 0x95, 0x07, 0x6F, 0x90, 0xE0, 0x21, 0xB7, 0x01, 0xC5, 0xA3,\n0xAC, 0x6F, 0x93, 0x69, 0x3D, 0x0D, 0x1F, 0x48, 0xF4, 0x0F, 0x0A, 0x22, 0xF0, 0xA1, 0x11, 0x42,\n0x30, 0xDD, 0x27, 0xBE, 0x44, 0x7C, 0x15, 0x30, 0x11, 0x93, 0x68, 0x21, 0x82, 0x83, 0xA0, 0x32,\n0x12, 0x28, 0xFF, 0xBE, 0x41, 0x2D, 0x8F, 0xE5, 0x00, 0x2B, 0x67, 0xC6, 0xB7, 0x63, 0xBB, 0x7D,\n0x77, 0xC2, 0x3E, 0x04, 0x42, 0xE6, 0xE0, 0xA1, 0x69, 0x83, 0xA4, 0x92, 0xA1, 0xC5, 0x42, 0x93,\n0x69, 0xFD, 0xED, 0xB0, 0x09, 0xFE, 0x40, 0x31, 0x35, 0xDA, 0xAE, 0xA4, 0x20, 0x12, 0x13, 0x03,\n0x40, 0xD2, 0x2C, 0xA8, 0xAD, 0x6A, 0x20, 0xDE, 0x29, 0x0E, 0x02, 0x1F, 0xCA, 0x7F, 0xEA, 0x33,\n0x59, 0x21, 0x6D, 0x0D, 0x10, 0x49, 0xD4, 0x43, 0x4E, 0x21, 0x3E, 0x56, 0x76, 0xA4, 0x64, 0xD9,\n0x00, 0xB8, 0x45, 0x13, 0x10, 0x12, 0x04, 0x24, 0x8A, 0xD3, 0xC3, 0xB4, 0x7C, 0x34, 0xA1, 0x9B,\n0x25, 0xCD, 0x57, 0x31, 0x3E, 0x8E, 0x7C, 0x0C, 0xA6, 0xAD, 0x05, 0x2B, 0x5F, 0xAE, 0x02, 0x04,\n0xD9, 0x00, 0x15, 0x2C, 0x04, 0x0F, 0x51, 0x73, 0x10, 0xD5, 0x40, 0x38, 0x6D, 0x31, 0x22, 0xA6,\n0x78, 0xCB, 0x26, 0xF2, 0x31, 0x00, 0x23, 0x47, 0x57, 0xF8, 0xB8, 0x59, 0xDD, 0xE8, 0x22, 0xC4,\n0xD2, 0x15, 0x31, 0x90, 0x68, 0x0A, 0xB2, 0x5E, 0x07, 0x08, 0x49, 0x49, 0xC8, 0x94, 0x7C, 0x98,\n0x6E, 0x02, 0x5A, 0xAD, 0x6E, 0x4E, 0xBB, 0x10, 0x1F, 0xC3, 0x01, 0x16, 0xFD, 0x22, 0x1C, 0x63,\n0xF9, 0xA0, 0xD5, 0xD3, 0x05, 0xD1, 0x41, 0xB6, 0x8A, 0x1C, 0xC6, 0x97, 0x37, 0x3E, 0xB6, 0x11,\n0xFF, 0xF0, 0x22, 0xA1, 0x50, 0x07, 0x59, 0xCE, 0x5A, 0x3C, 0xEC, 0x25, 0x47, 0x59, 0x2D, 0x1F,\n0xAB, 0x00, 0x21, 0xCD, 0x61, 0x52, 0x42, 0x1E, 0x92, 0xD6, 0x01, 0x3C, 0x22, 0x84, 0x3C, 0x24,\n0x4D, 0xC9, 0x87, 0x29, 0xC2, 0x87, 0xED, 0xFC, 0x53, 0x80, 0x0F, 0x6B, 0xA1, 0x1C, 0xDD, 0x14,\n0xC2, 0x03, 0x0F, 0xA9, 0x5B, 0x08, 0x52, 0x1C, 0x64, 0x2B, 0x1B, 0x08, 0x75, 0x42, 0x5D, 0x86,\n0xC7, 0x9B, 0xC4, 0xD4, 0xAC, 0xDB, 0x8B, 0x2A, 0x1F, 0x7E, 0xAF, 0xF7, 0x9B, 0x40, 0x8A, 0x3E,\n0x21, 0x21, 0xC1, 0x32, 0xC8, 0xDA, 0xA5, 0xF2, 0xE1, 0x9A, 0x94, 0x0F, 0x9D, 0x10, 0xDF, 0xF3,\n0x27, 0x95, 0x8F, 0x74, 0x70, 0x21, 0x64, 0xC8, 0x44, 0xDE, 0x14, 0xC2, 0x63, 0xDB, 0xF6, 0xC2,\n0x27, 0x3D, 0x52, 0x1C, 0x64, 0x2B, 0x8A, 0xF4, 0x7C, 0x9B, 0x9A, 0x4C, 0x88, 0x33, 0xB2, 0x54,\n0x74, 0x84, 0x90, 0x67, 0x99, 0x0F, 0x1D, 0x91, 0xBC, 0x90, 0xAE, 0x4B, 0xE5, 0xC3, 0xA5, 0xF2,\n0xE1, 0x52, 0xF9, 0x70, 0x4D, 0xC5, 0x87, 0x4B, 0xE5, 0x23, 0x44, 0x08, 0xC7, 0xD6, 0x08, 0xE8,\n0x5F, 0xF0, 0x8F, 0x37, 0x05, 0x12, 0x11, 0x1F, 0x9C, 0x52, 0x16, 0x82, 0x06, 0x1C, 0xE4, 0x51,\n0xA0, 0x0C, 0x25, 0x40, 0xBB, 0x1F, 0x44, 0xA3, 0x83, 0xFB, 0x73, 0x57, 0x26, 0xF8, 0x16, 0x64,\n0x1F, 0xEC, 0x46, 0x8D, 0x0F, 0x24, 0xF1, 0x31, 0x09, 0x21, 0xF0, 0x81, 0x42, 0x7C, 0x7C, 0x5D,\n0x4B, 0x7C, 0xA0, 0x49, 0xF8, 0x40, 0x0A, 0x1E, 0xE8, 0xA6, 0xD9, 0x0F, 0x27, 0x22, 0x1C, 0xDB,\n0x44, 0x88, 0x10, 0x5E, 0x75, 0x8F, 0x96, 0x92, 0xD3, 0x0F, 0x7A, 0xC1, 0x40, 0xD0, 0x63, 0xD5,\n0x41, 0xB6, 0x21, 0xE5, 0x3F, 0xCD, 0xB0, 0xFC, 0x51, 0x07, 0xC9, 0x2C, 0x07, 0x4E, 0xC6, 0x9A,\n0x81, 0x47, 0x02, 0x64, 0xB8, 0x5C, 0xD8, 0xB4, 0x87, 0x09, 0x09, 0x7C, 0x4C, 0x47, 0x48, 0xFC,\n0x64, 0x45, 0xC3, 0xE2, 0x4C, 0x12, 0x1F, 0x68, 0x02, 0x3E, 0x5E, 0x1B, 0x5B, 0xAC, 0xB5, 0xD2,\n0xF9, 0x48, 0x79, 0x48, 0xA3, 0xF8, 0x07, 0xAD, 0x36, 0xDF, 0xEF, 0xAB, 0x4E, 0x4B, 0x7B, 0x89,\n0xEE, 0x81, 0x85, 0x68, 0x59, 0x08, 0xEA, 0x77, 0x10, 0x85, 0x32, 0x64, 0xF9, 0x79, 0xD7, 0x54,\n0x3C, 0x9C, 0x8D, 0x45, 0xF7, 0x14, 0x84, 0x9A, 0x16, 0xEC, 0x44, 0xCD, 0x43, 0xDA, 0x43, 0x13,\n0x21, 0xE4, 0x90, 0x46, 0x80, 0x37, 0x9D, 0x90, 0x8D, 0x48, 0xC8, 0x43, 0x26, 0xC9, 0x3F, 0x90,\n0xC4, 0x07, 0x52, 0xF1, 0x88, 0x9C, 0x87, 0xF5, 0x4A, 0xAF, 0xF0, 0x81, 0x86, 0x08, 0xD9, 0xE5,\n0x87, 0xB6, 0xEE, 0x21, 0x3C, 0x39, 0xE3, 0x2D, 0xF8, 0x58, 0xAA, 0x78, 0xE0, 0x23, 0x82, 0x81,\n0xA0, 0x1E, 0x07, 0x89, 0xFB, 0x07, 0xDA, 0x4A, 0x99, 0x88, 0x5B, 0xA4, 0xAD, 0xBA, 0x27, 0xB1,\n0x09, 0xF9, 0x07, 0xAD, 0x3E, 0xDD, 0xFB, 0xDC, 0xAC, 0x3E, 0xA8, 0x5A, 0x1F, 0xCC, 0xF4, 0x1A,\n0xF7, 0x90, 0xE0, 0x1D, 0xE4, 0x42, 0x7C, 0xFC, 0xBA, 0x96, 0xF8, 0x40, 0xBA, 0x7D, 0x68, 0xFE,\n0x61, 0x8D, 0xDE, 0x34, 0x57, 0xF8, 0xC0, 0x44, 0x64, 0x3E, 0xF0, 0x90, 0xDE, 0x0C, 0x24, 0x71,\n0xB1, 0x38, 0x7F, 0xC4, 0xA5, 0x14, 0x61, 0xC1, 0x89, 0x78, 0x46, 0x16, 0x2A, 0x3B, 0x88, 0x44,\n0x19, 0x72, 0x24, 0xF4, 0xF8, 0xEA, 0xE2, 0x01, 0xB7, 0x26, 0x0F, 0xB3, 0x16, 0x7D, 0xF6, 0x71,\n0xFC, 0xB8, 0x1B, 0x8F, 0xD5, 0xF2, 0x47, 0x80, 0x90, 0x3B, 0x87, 0x82, 0x36, 0x6E, 0x94, 0xF5,\n0x50, 0x92, 0xC6, 0x07, 0x92, 0xF8, 0x40, 0xE3, 0xA6, 0x1F, 0x38, 0x88, 0x2F, 0x37, 0x73, 0x81,\n0x0F, 0x85, 0x90, 0xE3, 0xC7, 0x0F, 0xBF, 0xCA, 0x64, 0x16, 0x41, 0x39, 0x0F, 0x23, 0xAB, 0x10,\n0x92, 0x45, 0xFC, 0x8C, 0xD2, 0x50, 0x72, 0xFD, 0x58, 0xBC, 0xAB, 0x49, 0x4C, 0x20, 0xA1, 0x19,\n0x88, 0xE3, 0xEF, 0x98, 0xF0, 0x88, 0xA9, 0xB3, 0x58, 0x93, 0x6D, 0x76, 0xA1, 0xE8, 0x21, 0xF0,\n0xA1, 0x10, 0x32, 0xF7, 0xF2, 0xC7, 0x99, 0xA4, 0x30, 0x6B, 0x33, 0x14, 0x65, 0x51, 0x1E, 0x8C,\n0x11, 0x42, 0xFA, 0x41, 0xA2, 0xDE, 0x47, 0x48, 0xFC, 0xA6, 0x0D, 0xF9, 0x4F, 0x3F, 0xCC, 0xC7,\n0x6B, 0xE6, 0x20, 0x49, 0x12, 0x1F, 0xE8, 0x54, 0x99, 0xDE, 0xA5, 0x0D, 0xA6, 0xEA, 0x3E, 0x68,\n0x12, 0x23, 0x67, 0xA1, 0x87, 0x1E, 0x60, 0xB9, 0x24, 0x0B, 0x41, 0x1F, 0x1D, 0x24, 0x16, 0xA6,\n0xB9, 0x71, 0x61, 0x20, 0xB0, 0x5B, 0xAF, 0x7F, 0xD8, 0x0A, 0x07, 0x31, 0xF5, 0xFA, 0x87, 0x4C,\n0x08, 0xD3, 0x57, 0x3A, 0x21, 0x8D, 0xE7, 0x1F, 0xB4, 0x2B, 0x53, 0x75, 0x89, 0x0F, 0xF4, 0x24,\n0xD9, 0x07, 0x92, 0xEC, 0x03, 0x8D, 0xE8, 0x1F, 0x38, 0x08, 0xA0, 0x68, 0x7C, 0x54, 0xA7, 0x7B,\n0x9F, 0xE1, 0x43, 0x22, 0xE4, 0xE8, 0xFE, 0xD1, 0x0E, 0x99, 0x34, 0x84, 0xF8, 0x94, 0x1D, 0xC6,\n0x23, 0x6D, 0xD1, 0x42, 0xCA, 0x1C, 0x24, 0xEE, 0x1F, 0xA9, 0x15, 0x0D, 0x64, 0xDB, 0xCB, 0xC7,\n0xE5, 0xB3, 0x18, 0xF9, 0x43, 0x71, 0xEA, 0x62, 0x1F, 0x20, 0xE4, 0xE4, 0x87, 0xA9, 0x24, 0xCD,\n0x3F, 0x1C, 0x97, 0x51, 0x08, 0x81, 0x0F, 0x81, 0x10, 0xF8, 0x50, 0x3D, 0xE4, 0xA1, 0xA2, 0x71,\n0xF8, 0x78, 0x2D, 0x3A, 0x88, 0x49, 0xE6, 0x03, 0x42, 0x72, 0x3E, 0x32, 0x3C, 0x86, 0x52, 0x75,\n0x86, 0x89, 0x9B, 0x47, 0x67, 0x23, 0x45, 0x0F, 0x21, 0xA6, 0xC2, 0x41, 0x90, 0x74, 0x69, 0x21,\n0xC2, 0x41, 0x3E, 0x91, 0x9E, 0x63, 0x20, 0x75, 0x07, 0xB1, 0xDF, 0x34, 0x61, 0xE1, 0x22, 0xC0,\n0x4A, 0xFD, 0x47, 0x3C, 0x9C, 0x05, 0x5A, 0x6D, 0x32, 0x6B, 0x07, 0x1F, 0x45, 0x95, 0xF9, 0x78,\n0xCD, 0xDA, 0xBB, 0x06, 0x27, 0xAF, 0x58, 0x95, 0x08, 0xB9, 0x8D, 0xDE, 0x7A, 0xD4, 0x51, 0xE8,\n0x91, 0xC4, 0x07, 0x1A, 0xE0, 0x83, 0x9F, 0x7E, 0xD8, 0x3F, 0x70, 0x10, 0xE6, 0x7B, 0x35, 0x3E,\n0x28, 0x88, 0x14, 0xF8, 0xE8, 0x07, 0xA4, 0x30, 0xDD, 0x4B, 0xAC, 0x41, 0xFA, 0x61, 0x8B, 0x0F,\n0xA0, 0x32, 0x1E, 0x99, 0x97, 0x5C, 0xED, 0x21, 0x38, 0x48, 0xDC, 0x3E, 0xEA, 0x06, 0xB2, 0x2D,\n0xDA, 0x07, 0x9F, 0x05, 0xA4, 0xE8, 0x09, 0x0F, 0x4C, 0x04, 0x3E, 0x8E, 0xCB, 0xFE, 0x96, 0x11,\n0xB2, 0xA3, 0xFC, 0xD1, 0xA7, 0xEC, 0x92, 0x86, 0x43, 0x53, 0xD2, 0xEB, 0x58, 0x1E, 0xF2, 0x30,\n0xA0, 0x75, 0xA1, 0xFC, 0xA1, 0x7B, 0xC8, 0xC3, 0x80, 0xEA, 0xF9, 0x87, 0xEE, 0x1F, 0xB9, 0x83,\n0xB8, 0x24, 0x3C, 0x50, 0x4E, 0x48, 0x01, 0x8F, 0x4A, 0x41, 0x24, 0x0D, 0x0E, 0x02, 0x0F, 0xDF,\n0x82, 0x98, 0x02, 0x22, 0x59, 0xE0, 0x9F, 0xD3, 0x23, 0x59, 0x08, 0x7A, 0x73, 0x90, 0x38, 0x1F,\n0x43, 0x06, 0x92, 0x13, 0xC2, 0x27, 0x80, 0xDB, 0x06, 0x16, 0xE2, 0xBE, 0x52, 0x48, 0x3F, 0x64,\n0x42, 0x56, 0xC3, 0xC7, 0x29, 0xE7, 0xE3, 0xB5, 0xD0, 0xA4, 0x92, 0x61, 0x79, 0x9C, 0x49, 0xFE,\n0x81, 0x2E, 0xF9, 0xF8, 0x15, 0x1E, 0xCA, 0x8C, 0x48, 0x7C, 0xA0, 0x8A, 0x7D, 0x6C, 0x04, 0x3E,\n0x2A, 0x0E, 0x92, 0x36, 0x74, 0x3E, 0xF0, 0x90, 0x9C, 0x0F, 0x35, 0xCA, 0x22, 0xCA, 0xF0, 0x01,\n0xE4, 0x6B, 0x6B, 0x9E, 0xB6, 0x97, 0xD9, 0xC8, 0x3F, 0xB8, 0x79, 0x7B, 0x1B, 0xD4, 0x9B, 0x83,\n0x6C, 0x47, 0x35, 0x10, 0xEF, 0x11, 0x79, 0x87, 0xF5, 0xA9, 0x5B, 0xBC, 0xA1, 0xC1, 0x1B, 0xF6,\n0x96, 0xC6, 0x07, 0x84, 0x3C, 0x77, 0xAE, 0xCD, 0xF4, 0x95, 0x42, 0xC8, 0xBC, 0x29, 0x4A, 0x2E,\n0x19, 0xD6, 0xC3, 0xAC, 0x5B, 0xED, 0x01, 0x3A, 0x92, 0x7F, 0x20, 0x89, 0x0F, 0x94, 0xF1, 0x11,\n0xA1, 0x3D, 0x9B, 0xF8, 0xC6, 0x41, 0xD0, 0x41, 0xE2, 0x03, 0x35, 0x39, 0x1F, 0xBA, 0x87, 0x5C,\n0x44, 0x19, 0x0C, 0x15, 0x1F, 0x3B, 0x79, 0x94, 0x45, 0xEC, 0x52, 0x30, 0x10, 0xBE, 0x8C, 0x85,\n0x48, 0x6A, 0x1D, 0x24, 0x8C, 0x47, 0xD5, 0x40, 0xBC, 0x47, 0x7C, 0x0C, 0xB4, 0x6B, 0x7E, 0xB9,\n0xB6, 0x3B, 0xF7, 0x14, 0xE2, 0x2B, 0xA1, 0x19, 0x21, 0x9E, 0x01, 0xC2, 0x47, 0x55, 0x97, 0x7C,\n0xD4, 0x1D, 0xC4, 0xB6, 0x35, 0xE7, 0x40, 0x3C, 0x3E, 0x47, 0x12, 0x7C, 0x08, 0x32, 0x8B, 0x81,\n0x0F, 0x49, 0xB7, 0x43, 0xE1, 0xD5, 0x46, 0xF0, 0x8F, 0xDC, 0x41, 0xD8, 0x4B, 0x73, 0x8D, 0x8F,\n0xBC, 0x20, 0x72, 0x14, 0x0F, 0x2D, 0x78, 0x9C, 0xE3, 0xC0, 0x50, 0xF1, 0x28, 0xCB, 0x6B, 0x04,\n0x25, 0x0B, 0xE9, 0x35, 0x10, 0xEB, 0xA3, 0x16, 0x62, 0xCF, 0x49, 0x0F, 0xF2, 0xC1, 0xB7, 0xAD,\n0x19, 0x08, 0x8C, 0xBC, 0x3B, 0x05, 0x45, 0x90, 0xF6, 0x0F, 0xA4, 0x1F, 0xEE, 0x97, 0x8E, 0xC8,\n0x51, 0x69, 0x9C, 0x98, 0xB5, 0x52, 0xD5, 0xD2, 0xD1, 0x9D, 0x5E, 0x32, 0xE8, 0x20, 0xAF, 0x10,\n0x22, 0x52, 0x72, 0xDD, 0x43, 0x3C, 0xD7, 0xA2, 0x22, 0x7C, 0x60, 0x22, 0x72, 0x90, 0x88, 0x7F,\n0x54, 0x1C, 0x04, 0x66, 0xE0, 0x23, 0x44, 0x88, 0x78, 0x6C, 0x8F, 0xE7, 0xF9, 0x47, 0x87, 0x03,\n0x49, 0x48, 0xDB, 0xA7, 0x11, 0xD4, 0xC5, 0x25, 0x99, 0x43, 0x80, 0x89, 0xAD, 0x8A, 0xD5, 0x43,\n0xEC, 0x43, 0x01, 0x64, 0x11, 0x74, 0x90, 0xCB, 0xC1, 0xDF, 0x67, 0x20, 0xAC, 0x96, 0x33, 0x32,\n0x2A, 0xA7, 0x82, 0x3F, 0xF8, 0x9F, 0x7D, 0xE5, 0xF1, 0x95, 0xFA, 0x39, 0x73, 0x24, 0xBE, 0x92,\n0xC4, 0xD5, 0x1F, 0x82, 0x83, 0xC4, 0x13, 0x11, 0xF8, 0x90, 0xA4, 0xE1, 0x41, 0xAE, 0x4E, 0x79,\n0x50, 0x26, 0x44, 0x25, 0x03, 0x3C, 0x34, 0x07, 0xF1, 0xA2, 0xFA, 0x4A, 0x94, 0x5F, 0x65, 0xA8,\n0x1C, 0x58, 0x8A, 0xEA, 0x0C, 0x13, 0xEB, 0xB0, 0x0E, 0xAF, 0xA5, 0xFB, 0xCA, 0xFF, 0x4E, 0x69,\n0xCE, 0x8A, 0x37, 0xB2, 0xB7, 0x3C, 0x53, 0x7F, 0x99, 0xCA, 0x41, 0xB2, 0xEA, 0x8B, 0x62, 0x20,\n0xE4, 0xE3, 0x4C, 0x49, 0x90, 0x9D, 0x63, 0x2A, 0x2D, 0x32, 0x47, 0x59, 0x29, 0x11, 0x69, 0x52,\n0x7E, 0x2E, 0xBE, 0xEC, 0xEF, 0x36, 0x81, 0x47, 0x81, 0x37, 0x83, 0x99, 0x79, 0xF6, 0x45, 0x91,\n0x0F, 0x0A, 0x22, 0x3E, 0xF4, 0x95, 0x97, 0x09, 0x3E, 0x44, 0x42, 0x94, 0x2C, 0xCA, 0x7A, 0x00,\n0x89, 0xC8, 0x2F, 0x1F, 0x14, 0x5F, 0x56, 0x10, 0x39, 0x1E, 0x43, 0x07, 0xB7, 0x4B, 0x3E, 0x92,\n0x7C, 0xD8, 0x24, 0x1C, 0x6C, 0xF1, 0x15, 0xE5, 0x91, 0x25, 0x95, 0xC1, 0xC2, 0xC9, 0xEE, 0xBC,\n0xC3, 0x56, 0x40, 0xD1, 0x1C, 0x24, 0xFF, 0xB6, 0x65, 0x03, 0x61, 0xFD, 0x46, 0xC5, 0xE2, 0x8D,\n0x00, 0x4C, 0xC4, 0x0D, 0xD3, 0x29, 0xE9, 0x32, 0x13, 0x7B, 0xE9, 0x41, 0x96, 0x39, 0xC8, 0x2E,\n0xEE, 0x20, 0xBA, 0x74, 0xF7, 0xB8, 0xDE, 0x41, 0xBE, 0xCA, 0x0E, 0x42, 0x84, 0x15, 0x74, 0x90,\n0x8D, 0xEA, 0x22, 0x8D, 0xAE, 0xEB, 0x1D, 0x64, 0xBF, 0x1C, 0x7C, 0x79, 0x8C, 0xF5, 0x06, 0xC2,\n0xBB, 0x6B, 0xB0, 0xF2, 0xE8, 0x83, 0xD9, 0xAD, 0xE2, 0x9C, 0x55, 0x5E, 0x49, 0x67, 0xDB, 0x56,\n0x11, 0x1D, 0xEB, 0x0E, 0x22, 0x9C, 0x63, 0x52, 0x36, 0x10, 0x84, 0x83, 0xB8, 0x59, 0x12, 0x40,\n0xFA, 0xBA, 0xDB, 0x36, 0x29, 0x3B, 0xD1, 0x23, 0xAC, 0xD3, 0xB5, 0x39, 0xC8, 0xAB, 0xD2, 0x8A,\n0x64, 0x8C, 0x9D, 0x83, 0xAC, 0x65, 0x7D, 0x2E, 0x07, 0x11, 0x67, 0x7B, 0xB5, 0x3D, 0xF3, 0xA9,\n0x1C, 0xC4, 0x34, 0xD4, 0xFB, 0x54, 0x6F, 0xF7, 0x21, 0xCA, 0xA7, 0xAA, 0x2D, 0x84, 0x55, 0xE7,\n0x25, 0x12, 0x08, 0x41, 0x15, 0x03, 0x89, 0xE9, 0x8F, 0xF0, 0x34, 0x6F, 0x96, 0x0D, 0xD5, 0x0D,\n0xC4, 0xBA, 0xC5, 0x45, 0xD6, 0x91, 0x05, 0x90, 0x7C, 0x0E, 0x30, 0xCB, 0x3B, 0xB0, 0x0B, 0x3F,\n0x39, 0x8B, 0xA5, 0x69, 0x28, 0xE1, 0x60, 0x3D, 0xFD, 0x2C, 0xD6, 0xD7, 0xEB, 0x67, 0xB1, 0x82,\n0x6A, 0x04, 0x4D, 0x3F, 0x8B, 0xC5, 0x35, 0xE8, 0x0C, 0x1B, 0xDC, 0x83, 0x4F, 0x5B, 0x5F, 0xD0,\n0x96, 0xD6, 0x6F, 0x20, 0x49, 0x3A, 0x25, 0xF7, 0x00, 0xA2, 0x8B, 0x6F, 0x9C, 0x39, 0x48, 0xB9,\n0x94, 0x5E, 0x73, 0x10, 0xA6, 0xB7, 0x63, 0x75, 0x10, 0xC3, 0xE3, 0xFA, 0x3A, 0x88, 0xE4, 0x1F,\n0xBA, 0x36, 0x57, 0xD7, 0x41, 0x38, 0xCD, 0x64, 0xFA, 0x3A, 0xC8, 0xA6, 0x96, 0x85, 0xE8, 0x1E,\n0x92, 0xD5, 0x41, 0x62, 0x95, 0x42, 0x61, 0xF6, 0xFE, 0xB2, 0x0E, 0xC2, 0x08, 0xF1, 0x73, 0x31,\n0x7C, 0xCD, 0x29, 0x19, 0x33, 0x34, 0x85, 0x81, 0xDC, 0x6F, 0xAF, 0xA8, 0xA4, 0xDF, 0x97, 0xCF,\n0x2A, 0xC9, 0x0C, 0xE4, 0x5C, 0x4C, 0x5E, 0x93, 0x6B, 0x79, 0xB2, 0xE5, 0xD9, 0x7A, 0xF6, 0x00,\n0xCF, 0xE5, 0xB4, 0x95, 0xF4, 0x21, 0x55, 0x0C, 0x63, 0xA4, 0x4A, 0xBA, 0x86, 0x88, 0x7F, 0xED,\n0xF3, 0x95, 0x74, 0xB4, 0xF9, 0x8C, 0x87, 0xFC, 0xD5, 0x95, 0x74, 0x1F, 0x21, 0xC4, 0xE2, 0xA4,\n0x25, 0x49, 0x59, 0x29, 0x5D, 0x30, 0x90, 0xFB, 0xA8, 0x81, 0x24, 0x07, 0x81, 0x90, 0x98, 0x85,\n0xE4, 0xB6, 0xC6, 0x3B, 0x99, 0x5A, 0x18, 0xBC, 0x90, 0xEE, 0xAB, 0x37, 0x52, 0x88, 0x24, 0x2F,\n0x75, 0x9C, 0xFA, 0x5C, 0xAC, 0x7A, 0x8C, 0xAD, 0x5D, 0x12, 0x32, 0xD2, 0xB9, 0x58, 0x9A, 0x7F,\n0xA0, 0x10, 0x20, 0xF1, 0x62, 0x48, 0x75, 0xD7, 0xC8, 0xE7, 0x62, 0xC1, 0xC7, 0x6E, 0xAF, 0x12,\n0x02, 0x1F, 0x88, 0x11, 0x62, 0x0B, 0x89, 0x08, 0xC1, 0x56, 0xD0, 0x40, 0xE2, 0xA7, 0x2B, 0x6E,\n0xAF, 0x3B, 0x9B, 0x17, 0x28, 0x51, 0xF5, 0xCA, 0x74, 0xF7, 0x4B, 0xE6, 0xB2, 0xDB, 0xEE, 0x7D,\n0x39, 0xD7, 0xE0, 0x54, 0xD6, 0x18, 0x67, 0xF3, 0x16, 0x35, 0xD6, 0x15, 0x21, 0xD1, 0xB3, 0x79,\n0x2B, 0x16, 0xF2, 0x75, 0x9C, 0xB3, 0x79, 0x6D, 0x91, 0xA5, 0xF9, 0x07, 0x52, 0xF8, 0xD0, 0xCF,\n0xE6, 0xCD, 0x75, 0x3E, 0x7B, 0x55, 0x38, 0x09, 0x23, 0x53, 0xCD, 0x40, 0xF0, 0x0F, 0xDB, 0x92,\n0xF9, 0xE8, 0x1C, 0x24, 0x4E, 0x08, 0x49, 0x79, 0xF6, 0x43, 0xF8, 0x76, 0xD1, 0x44, 0xDE, 0x2F,\n0x2A, 0xF4, 0x4D, 0xD2, 0x8F, 0x5C, 0x47, 0xE2, 0xD5, 0x49, 0xAE, 0x07, 0xA9, 0x98, 0x48, 0xA4,\n0x38, 0x08, 0x1F, 0x32, 0x21, 0x91, 0xEB, 0xA5, 0xC6, 0xBD, 0x1E, 0xA4, 0x37, 0xDE, 0xDA, 0x88,\n0x1E, 0x12, 0xBF, 0x1E, 0xC4, 0xF9, 0x40, 0xA7, 0xF8, 0xF5, 0x20, 0xEF, 0xF9, 0x47, 0x66, 0x25,\n0xE0, 0x21, 0x1A, 0x48, 0xDC, 0x3F, 0xCE, 0x1D, 0x24, 0x9E, 0x88, 0x98, 0x4A, 0xB5, 0x99, 0xCA,\n0xD3, 0x09, 0x49, 0x3B, 0xDE, 0x73, 0xAE, 0xD4, 0xA3, 0x8A, 0x89, 0xC0, 0xC7, 0x69, 0x8C, 0x2B,\n0x0A, 0x0D, 0x91, 0xB2, 0x34, 0x32, 0xC6, 0xBE, 0xA2, 0xF0, 0xEB, 0xB0, 0x7F, 0xA0, 0x18, 0x1F,\n0xF1, 0x92, 0x7A, 0x59, 0x7F, 0xD3, 0x15, 0x85, 0x04, 0x54, 0x69, 0xBC, 0xB0, 0x51, 0xCE, 0xCF,\n0x2B, 0x19, 0x48, 0x37, 0xC2, 0x67, 0x3A, 0x1F, 0x38, 0x08, 0x84, 0xE8, 0xC2, 0x30, 0x08, 0xF1,\n0x06, 0x6E, 0x89, 0xC5, 0xB4, 0x04, 0xB3, 0x58, 0x28, 0xCB, 0xD4, 0xCB, 0x7C, 0x48, 0xF7, 0x6C,\n0x40, 0x95, 0x5B, 0xF2, 0x0E, 0xFA, 0x87, 0x00, 0x4B, 0xFC, 0x9A, 0x74, 0x9D, 0x90, 0xF1, 0xAE,\n0x49, 0x17, 0x2C, 0xB1, 0x19, 0xF2, 0x90, 0x4F, 0x5F, 0x93, 0x8E, 0x96, 0x42, 0x7C, 0x85, 0x16,\n0x26, 0x12, 0x10, 0xAC, 0x24, 0x68, 0x20, 0x60, 0x11, 0xE2, 0x03, 0x07, 0xB9, 0x36, 0x55, 0x77,\n0x09, 0x37, 0x37, 0xC1, 0x41, 0xFC, 0x57, 0x4D, 0x7F, 0x38, 0x66, 0x5C, 0xB0, 0x55, 0x9C, 0x06,\n0x1C, 0xEB, 0xAE, 0x26, 0xF3, 0xAB, 0xD3, 0x8F, 0xCD, 0xB4, 0x77, 0x35, 0xC1, 0x3F, 0xA6, 0xB8,\n0xAB, 0x09, 0x5B, 0x41, 0x0F, 0x19, 0xF7, 0xAE, 0x26, 0x82, 0x7F, 0x70, 0x73, 0x66, 0xE6, 0xAF,\n0x6C, 0xE1, 0xC2, 0x89, 0x8A, 0x4A, 0x06, 0xC2, 0xB0, 0x95, 0xF9, 0xC0, 0x41, 0xAE, 0x25, 0x84,\n0x24, 0xA4, 0x66, 0x20, 0xE8, 0xFD, 0xFC, 0x1A, 0xCE, 0xC9, 0x62, 0x77, 0x64, 0x5A, 0x4C, 0x7B,\n0x5F, 0xAC, 0x3B, 0x23, 0xA4, 0x66, 0x1F, 0x8D, 0x00, 0xCA, 0x98, 0xF7, 0xC5, 0x12, 0xFC, 0x63,\n0x9A, 0xFB, 0x62, 0x6D, 0xA4, 0xA2, 0xFA, 0x28, 0xF7, 0xC5, 0x42, 0x85, 0xF2, 0x07, 0x2A, 0x8C,\n0x05, 0x12, 0x90, 0x56, 0x02, 0x1E, 0x99, 0x81, 0x5C, 0xE9, 0x1F, 0x38, 0x08, 0x84, 0xC4, 0x53,\n0x75, 0x60, 0x1D, 0x24, 0x84, 0xD3, 0x6B, 0xFC, 0x1C, 0xAC, 0xB2, 0xA7, 0xFE, 0x55, 0x77, 0x56,\n0x1C, 0xF6, 0x8F, 0xA6, 0x38, 0x8A, 0x26, 0xBD, 0xB3, 0x22, 0xFE, 0x31, 0xF2, 0x9D, 0x15, 0x37,\n0x15, 0x28, 0x1A, 0xEF, 0x91, 0x94, 0x7E, 0xA0, 0x32, 0x1F, 0xBA, 0x87, 0xA0, 0x12, 0x23, 0x9D,\n0x6B, 0x9C, 0x9D, 0xF6, 0x1E, 0x33, 0x90, 0x2D, 0x9A, 0xE9, 0x7C, 0xE0, 0x20, 0x9F, 0x20, 0x04,\n0x58, 0x05, 0x6D, 0xCF, 0x2B, 0x3C, 0xEE, 0x1F, 0x68, 0x51, 0xF7, 0x10, 0xF8, 0x18, 0xF1, 0xDE,\n0xBC, 0x7C, 0x46, 0xFE, 0xED, 0xF7, 0xE6, 0x4D, 0x54, 0x38, 0x1D, 0xFF, 0x84, 0x7B, 0xF3, 0xBE,\n0xD2, 0xFE, 0xAA, 0x7B, 0xF3, 0xB2, 0xCE, 0xB7, 0xC9, 0x3F, 0x5A, 0x89, 0xB7, 0xAE, 0x66, 0x33,\n0x3A, 0x03, 0x85, 0x70, 0x90, 0xAB, 0x33, 0xF5, 0x0C, 0xD6, 0xBA, 0x2E, 0xAE, 0x09, 0xEB, 0xC9,\n0x3D, 0xD0, 0xDF, 0x76, 0x77, 0xF7, 0xC6, 0xBB, 0xAC, 0x32, 0xC8, 0xC4, 0xE8, 0x54, 0x77, 0x77,\n0x47, 0x53, 0xDF, 0xDD, 0x3D, 0x77, 0x92, 0x66, 0xCC, 0xBB, 0xBB, 0xEF, 0x22, 0x77, 0x77, 0x87,\n0x0F, 0x54, 0x0E, 0xB2, 0xAC, 0x49, 0x7C, 0xE4, 0x79, 0x71, 0xD0, 0x40, 0xEE, 0x11, 0x0E, 0x82,\n0xAE, 0xB0, 0x90, 0x88, 0x38, 0x23, 0x53, 0x79, 0xAE, 0xE9, 0xDF, 0xF1, 0x7C, 0x90, 0x0C, 0x95,\n0xBF, 0xF4, 0xF9, 0x20, 0x5F, 0xF1, 0x8F, 0x49, 0x9E, 0x0F, 0x02, 0x12, 0xE5, 0xF9, 0xAB, 0xC9,\n0x9E, 0x0F, 0x52, 0x29, 0x88, 0xD4, 0xF0, 0xE0, 0x2B, 0x9C, 0x8D, 0x25, 0xD3, 0xE1, 0x6B, 0xD5,\n0x3F, 0xC0, 0xA3, 0xE6, 0x20, 0xF1, 0x82, 0x08, 0xFE, 0x11, 0x43, 0x84, 0x9D, 0x40, 0x5F, 0x94,\n0xF3, 0x71, 0xFA, 0xFF, 0x09, 0x53, 0xA3, 0x3D, 0x61, 0x2A, 0x77, 0x8F, 0x7F, 0xCA, 0x13, 0xA6,\n0x6A, 0x0F, 0x04, 0x5F, 0xB8, 0x66, 0x9A, 0xCA, 0xE9, 0xF9, 0x4C, 0xE2, 0xA3, 0xEE, 0x20, 0xF1,\n0xC9, 0xAC, 0x98, 0xDC, 0x29, 0xD9, 0x23, 0x3D, 0xA4, 0x80, 0xC7, 0xDF, 0xF1, 0x8C, 0xC2, 0xA6,\n0xBC, 0x3D, 0xFD, 0x33, 0x0A, 0xBF, 0xFE, 0x6D, 0xCF, 0x28, 0x6C, 0xE8, 0xFF, 0x8A, 0x67, 0x14,\n0x9E, 0xD4, 0x67, 0x14, 0x2E, 0x2E, 0x3C, 0x24, 0x40, 0x47, 0x52, 0x38, 0xFD, 0x18, 0x76, 0x90,\n0xAB, 0xCF, 0xEE, 0x8D, 0x58, 0x88, 0xB0, 0x5F, 0x60, 0x04, 0x3E, 0x26, 0x7B, 0xCA, 0xAD, 0x1E,\n0x60, 0x6D, 0xFE, 0xED, 0x4F, 0xB9, 0x2D, 0x7A, 0xC7, 0x66, 0xCC, 0xA7, 0xDC, 0xEA, 0x84, 0x98,\n0xE4, 0xC7, 0x1D, 0xC3, 0x87, 0xAA, 0xCC, 0x30, 0xA4, 0x5B, 0x56, 0x0B, 0x0E, 0x32, 0x99, 0x87,\n0x40, 0xF6, 0x87, 0x54, 0x83, 0x2D, 0x56, 0x00, 0x72, 0x3C, 0xC1, 0xC7, 0x5F, 0xF1, 0x9C, 0xF4,\n0xA6, 0x72, 0xB1, 0xEA, 0xD4, 0xCF, 0x49, 0x5F, 0xFF, 0x87, 0x9E, 0x93, 0x7E, 0x2A, 0xE4, 0x1F,\n0xF5, 0xF9, 0xDE, 0xA0, 0xE2, 0xE5, 0x0F, 0xC9, 0x41, 0xA6, 0x8F, 0xB2, 0x8E, 0x4B, 0x24, 0x3C,\n0xAA, 0x10, 0xFF, 0xD0, 0x08, 0xB9, 0x9B, 0x07, 0x8E, 0xE9, 0xBC, 0x9C, 0x9F, 0x97, 0xDF, 0x8B,\n0xF3, 0xB1, 0x01, 0x90, 0x09, 0xB4, 0xFE, 0x76, 0xD8, 0x5C, 0x4D, 0x48, 0xC3, 0xDA, 0x96, 0x72,\n0x98, 0xD5, 0x44, 0x76, 0xE5, 0x1D, 0xF9, 0x87, 0x28, 0xA6, 0x77, 0x59, 0x2D, 0xFC, 0x55, 0x8A,\n0xB2, 0x62, 0x8A, 0x19, 0xC8, 0x0C, 0x10, 0x7A, 0x1D, 0x04, 0x69, 0x05, 0x15, 0x9E, 0x05, 0x1D,\n0x53, 0x2A, 0x71, 0xA0, 0x7A, 0x91, 0x68, 0xB9, 0x63, 0xD6, 0x50, 0xB3, 0xEE, 0xD3, 0x8D, 0x6C,\n0x21, 0x73, 0x42, 0x2C, 0x31, 0x09, 0xD9, 0x84, 0x44, 0x88, 0x35, 0x85, 0xD6, 0xB1, 0x14, 0x04,\n0x42, 0x50, 0xFD, 0xE3, 0x81, 0x33, 0x4C, 0x04, 0xB5, 0x7C, 0xC4, 0x08, 0xD9, 0xED, 0xEC, 0x68,\n0xCB, 0x22, 0xC0, 0xD2, 0xA3, 0x95, 0x98, 0x7F, 0x28, 0x0E, 0x02, 0x21, 0xBA, 0x7D, 0xBC, 0xC4,\n0x08, 0xE1, 0xF9, 0x9D, 0x8B, 0x7E, 0x34, 0xF8, 0x1B, 0xBB, 0xDD, 0xF1, 0xA8, 0x13, 0xF2, 0x7C,\n0x6A, 0xE3, 0xB1, 0x1B, 0xD9, 0x44, 0x9A, 0x56, 0xC3, 0x68, 0x50, 0x54, 0x3F, 0x6C, 0x22, 0xE2,\n0x1A, 0x90, 0x29, 0xF4, 0xF4, 0x10, 0x26, 0xE4, 0x70, 0xB8, 0xAD, 0xA8, 0x94, 0xA5, 0xAB, 0x9F,\n0x36, 0x77, 0x2B, 0xE3, 0x23, 0x14, 0x0C, 0xDB, 0x71, 0xDD, 0x55, 0x4F, 0x31, 0xF1, 0xCE, 0x95,\n0x06, 0xCE, 0x4C, 0x56, 0x1A, 0x97, 0x91, 0x0C, 0xE4, 0x5E, 0x72, 0x10, 0x08, 0x11, 0x11, 0x69,\n0xE9, 0x88, 0x11, 0xB2, 0x68, 0x5B, 0x06, 0x43, 0xBF, 0xF6, 0x3B, 0xD3, 0x31, 0xC0, 0x87, 0x69,\n0x7F, 0x6A, 0xEE, 0xEE, 0x3E, 0x3D, 0xCD, 0x5B, 0x7A, 0xF3, 0x10, 0xE7, 0x63, 0x2A, 0x0F, 0x59,\n0x33, 0xCD, 0x7B, 0x1B, 0x22, 0x04, 0x13, 0x19, 0xC0, 0x84, 0xB3, 0x14, 0x15, 0x3E, 0x9A, 0x96,\n0x0F, 0x53, 0x84, 0x0F, 0x27, 0x64, 0xC0, 0x46, 0xE0, 0x23, 0x38, 0xCB, 0xFB, 0xA2, 0xA7, 0x21,\n0xB3, 0x7B, 0x93, 0xEA, 0x20, 0xFE, 0xCE, 0x4C, 0xF3, 0x8F, 0x28, 0x21, 0x8B, 0xB7, 0x5F, 0x14,\n0x38, 0x0A, 0x51, 0x28, 0x85, 0xC2, 0x9D, 0x29, 0xE0, 0x21, 0xA7, 0x37, 0xED, 0xF7, 0x0D, 0x1E,\n0x22, 0x15, 0x0A, 0x4B, 0xB1, 0x38, 0x0A, 0xDA, 0x47, 0xBC, 0x50, 0x18, 0x57, 0xB4, 0x50, 0x88,\n0x9C, 0x90, 0xEC, 0xD7, 0x2D, 0x95, 0xD2, 0x05, 0x42, 0x38, 0xF9, 0x93, 0x9D, 0x2F, 0xC9, 0xE0,\n0x78, 0xD3, 0xC7, 0xB9, 0x2C, 0x9C, 0x03, 0x2D, 0x7C, 0xDC, 0xE8, 0x84, 0xF8, 0xB8, 0x7C, 0xC1,\n0x40, 0x86, 0xF8, 0xD8, 0x6A, 0x0E, 0xB2, 0xF5, 0x05, 0x0F, 0x19, 0xF0, 0x8F, 0x6D, 0x84, 0x10,\n0xFF, 0x2D, 0xA5, 0xA9, 0xDE, 0x99, 0xF1, 0xD1, 0x49, 0x23, 0xE4, 0xF4, 0xAE, 0x7D, 0x33, 0xBF,\n0x13, 0xFC, 0x03, 0x09, 0x21, 0x47, 0x9C, 0x0F, 0x34, 0x25, 0x1F, 0x71, 0x42, 0xAA, 0xBF, 0x2B,\n0xF6, 0x01, 0x21, 0x1A, 0x1F, 0x2E, 0x95, 0x8F, 0xE4, 0x20, 0xB6, 0x02, 0x86, 0x9E, 0x69, 0x9A,\n0xE3, 0x72, 0x06, 0x20, 0x0B, 0xD9, 0x3F, 0xD2, 0x62, 0xBD, 0x4B, 0xC8, 0xCF, 0xB5, 0x3A, 0x08,\n0x88, 0xCC, 0x34, 0xFF, 0xE8, 0x7E, 0x14, 0x99, 0x0F, 0x5F, 0xEA, 0xE9, 0xF9, 0xA2, 0xF5, 0x8F,\n0xF3, 0xA6, 0xE1, 0x81, 0x87, 0x0C, 0x1E, 0xD6, 0x43, 0x23, 0x10, 0xF2, 0x39, 0x3E, 0xD0, 0x64,\n0x7C, 0x5C, 0x4F, 0x48, 0xCD, 0x2D, 0x2F, 0x77, 0xCD, 0xCD, 0x7C, 0x20, 0x3D, 0x4F, 0x7C, 0x20,\n0xCD, 0x3F, 0x1C, 0x92, 0xBD, 0x11, 0x82, 0x75, 0xA0, 0xCC, 0x3F, 0x58, 0x54, 0xFF, 0xE8, 0xC2,\n0x1B, 0x0C, 0xA4, 0xC6, 0xC7, 0x96, 0x71, 0xDF, 0xE3, 0x20, 0xFC, 0x2D, 0xEB, 0x7C, 0x99, 0x0D,\n0xF9, 0x87, 0xC3, 0x11, 0xE0, 0xA3, 0x8B, 0xB1, 0x48, 0xD5, 0x7D, 0x41, 0x4C, 0x5F, 0x21, 0x08,\n0x19, 0x00, 0x04, 0x0F, 0x21, 0x55, 0x97, 0x2E, 0x99, 0xFA, 0x58, 0x51, 0xE6, 0xAD, 0x2B, 0xD2,\n0xF3, 0x5C, 0x53, 0xF0, 0x81, 0x0E, 0xA3, 0xA4, 0xEA, 0xFC, 0xFA, 0xB9, 0xE6, 0x75, 0x2B, 0xCE,\n0x77, 0xBE, 0xE8, 0x1F, 0xC7, 0xC4, 0xC9, 0x3E, 0x9B, 0xCC, 0x2A, 0xC4, 0x57, 0x00, 0xA2, 0x78,\n0x88, 0x7F, 0x5E, 0xAB, 0x1E, 0x02, 0x18, 0xAA, 0x83, 0xB0, 0x08, 0xFE, 0x61, 0x2B, 0x35, 0xCC,\n0xBA, 0x70, 0xCA, 0x56, 0x35, 0x5F, 0x35, 0x3E, 0x8E, 0xB4, 0x61, 0x42, 0x4E, 0x99, 0xF6, 0xB5,\n0xE9, 0xDE, 0x39, 0xF9, 0x07, 0xBA, 0x45, 0x7A, 0x7A, 0xAE, 0x5F, 0x74, 0x3B, 0x25, 0x1F, 0xF1,\n0xC9, 0xAC, 0x81, 0xE9, 0x2B, 0x89, 0x10, 0xCA, 0x1F, 0xA7, 0x4C, 0x92, 0x7F, 0x38, 0x26, 0x44,\n0x59, 0xC5, 0xAC, 0xD4, 0xBE, 0xE6, 0xC3, 0x86, 0x65, 0x18, 0x0F, 0x5F, 0xDC, 0x43, 0x6A, 0x06,\n0x32, 0x7B, 0x1F, 0xED, 0x18, 0x49, 0x9F, 0x83, 0x6C, 0x33, 0x07, 0xC1, 0x43, 0x6A, 0xD3, 0x57,\n0x5B, 0xEB, 0x1C, 0x5A, 0x25, 0x3D, 0x67, 0xB1, 0x56, 0xB9, 0x5A, 0x0A, 0xE7, 0xB0, 0x85, 0x54,\n0x7D, 0x90, 0x0F, 0x04, 0x21, 0xBD, 0x78, 0xAC, 0x9A, 0xE6, 0xD4, 0x76, 0xAB, 0x1A, 0x21, 0x9F,\n0xF3, 0x0F, 0xF4, 0x34, 0x19, 0x1F, 0x10, 0x32, 0x4A, 0x94, 0x95, 0xED, 0x99, 0x7A, 0x22, 0xE2,\n0x7C, 0xE4, 0x1A, 0x98, 0xBF, 0xF2, 0xE6, 0x69, 0x48, 0xB5, 0x20, 0x02, 0x1E, 0xA2, 0x87, 0xBC,\n0xF8, 0x80, 0x3C, 0x8B, 0xFD, 0xEB, 0x7C, 0x5C, 0xEF, 0x20, 0xD6, 0xF7, 0xC1, 0xD7, 0xC5, 0x79,\n0x9D, 0x95, 0x39, 0xAB, 0x1A, 0x1E, 0x2C, 0xBD, 0xE7, 0xFF, 0xEF, 0x30, 0xE1, 0xB3, 0xFD, 0xA9,\n0xF2, 0x01, 0x21, 0xF3, 0xF2, 0x9C, 0x64, 0xD2, 0x29, 0xF5, 0x6C, 0x12, 0x52, 0x8D, 0xE0, 0x1F,\n0x53, 0x11, 0xE2, 0xE5, 0x8F, 0xB1, 0x3C, 0xA4, 0x29, 0x24, 0xE9, 0xE8, 0xE4, 0x0B, 0x05, 0x91,\n0x01, 0x3E, 0x50, 0x0D, 0x0F, 0xD3, 0x31, 0x35, 0x02, 0x84, 0x3E, 0x3C, 0xF0, 0x0F, 0xD1, 0x43,\n0xCA, 0xC3, 0xB2, 0x96, 0x7E, 0x6C, 0x73, 0x07, 0xD9, 0x16, 0x1C, 0x84, 0xAF, 0x81, 0x07, 0x05,\n0x91, 0x1E, 0xFF, 0x20, 0xCE, 0x63, 0xD2, 0x40, 0x48, 0x3F, 0x58, 0xEC, 0x55, 0xAE, 0x12, 0xA6,\n0x5D, 0xE7, 0x4E, 0xCC, 0x7C, 0x47, 0xBB, 0x51, 0x29, 0x7F, 0x94, 0x08, 0x59, 0xDD, 0xD5, 0xA7,\n0xAF, 0x4E, 0xEF, 0xDD, 0x0A, 0x42, 0xF2, 0x5C, 0x24, 0xCE, 0xC7, 0x74, 0x84, 0x50, 0xFE, 0x40,\n0x4A, 0x41, 0x44, 0xCF, 0x43, 0x7C, 0xBF, 0xE0, 0x1D, 0xBE, 0x85, 0x87, 0xE4, 0xE5, 0x8F, 0xB2,\n0x2A, 0x7C, 0x9C, 0x39, 0x08, 0x87, 0xB6, 0x54, 0x1A, 0x23, 0xFD, 0xC8, 0x17, 0x25, 0xFD, 0xA8,\n0x4C, 0x66, 0xC1, 0x87, 0xEA, 0x20, 0x7C, 0x11, 0x44, 0xFA, 0x3D, 0x04, 0x4E, 0x3B, 0x27, 0xEB,\n0x7E, 0x9C, 0x6A, 0x75, 0xB0, 0x64, 0x96, 0xE5, 0x9B, 0xFE, 0x74, 0x64, 0xA4, 0xAE, 0xFB, 0xAC,\n0x49, 0x2F, 0x9D, 0x0F, 0x2F, 0x19, 0xCE, 0x7B, 0xF8, 0xF0, 0xF8, 0x21, 0x75, 0xA8, 0x14, 0x5E,\n0x8D, 0xC2, 0xC7, 0x38, 0x45, 0xF5, 0xE0, 0x8D, 0xE3, 0xE2, 0x25, 0x43, 0x88, 0x70, 0xB1, 0x0D,\n0x21, 0xF0, 0xB1, 0xC2, 0xBC, 0x25, 0x42, 0x38, 0x98, 0x97, 0x0E, 0x62, 0x02, 0x8D, 0x5A, 0x7C,\n0xC5, 0x52, 0x14, 0xE3, 0x12, 0x07, 0x71, 0x6A, 0x2A, 0xFE, 0x91, 0x3B, 0x88, 0x35, 0xDD, 0x41,\n0x4A, 0x84, 0xBC, 0xBC, 0x64, 0xDF, 0x7D, 0x60, 0x32, 0x8B, 0x5F, 0x73, 0x28, 0x11, 0xC1, 0x3F,\n0x12, 0x19, 0x38, 0x08, 0xF3, 0x82, 0x52, 0x78, 0xC5, 0x41, 0x32, 0x0F, 0xC9, 0xE7, 0x24, 0x11,\n0x8C, 0x9C, 0x48, 0x44, 0x42, 0x7C, 0xC4, 0x6F, 0x3D, 0x3A, 0x19, 0x1F, 0x78, 0xC8, 0xF5, 0x05,\n0x91, 0xB3, 0xFD, 0x72, 0xF2, 0xCE, 0x16, 0x08, 0xC9, 0xFD, 0xA3, 0xBA, 0xF7, 0x6B, 0xD3, 0xBB,\n0x38, 0x08, 0x1E, 0xD2, 0x53, 0x3E, 0xF7, 0x45, 0x48, 0x44, 0xF8, 0xC8, 0x06, 0x0F, 0xC6, 0x65,\n0x89, 0x8F, 0x11, 0x1C, 0xA4, 0xE0, 0x21, 0xE4, 0x41, 0xD9, 0x4F, 0x51, 0x9E, 0xCC, 0xAA, 0xFD,\n0x96, 0xE9, 0x95, 0xF3, 0xB1, 0x27, 0xFD, 0xC0, 0x41, 0x7C, 0xDB, 0x9A, 0x00, 0x08, 0xDA, 0x77,\n0x25, 0x43, 0xFC, 0xE3, 0x96, 0xF0, 0x8A, 0x08, 0x8B, 0x8D, 0x89, 0xF8, 0x80, 0x90, 0xB1, 0xF9,\n0x18, 0xB1, 0x64, 0xC8, 0x9E, 0xC8, 0x74, 0x82, 0x90, 0x0B, 0x3E, 0x4E, 0x55, 0x7D, 0xE4, 0x23,\n0x6B, 0xD9, 0x1F, 0x2A, 0xE5, 0x0F, 0x29, 0xCC, 0x62, 0x5C, 0x32, 0x22, 0x19, 0x97, 0x45, 0xFF,\n0xE8, 0x73, 0x90, 0xED, 0xA5, 0x83, 0x6C, 0x6B, 0x0E, 0x02, 0x21, 0x00, 0x52, 0x74, 0x10, 0xF7,\n0x32, 0x35, 0xBE, 0x62, 0xC9, 0xF8, 0x68, 0x71, 0xC8, 0x1D, 0xC4, 0xB7, 0xD3, 0x17, 0x64, 0x3E,\n0x28, 0xAA, 0xC3, 0x47, 0x61, 0x04, 0x64, 0x21, 0xF7, 0x55, 0xD3, 0x57, 0xFA, 0x23, 0x74, 0x46,\n0xE0, 0x63, 0x2A, 0x42, 0x7C, 0x67, 0x60, 0x22, 0x97, 0x91, 0xE8, 0xA6, 0x39, 0x40, 0x08, 0xE5,\n0x0F, 0x19, 0x91, 0x6E, 0x5E, 0x92, 0xE6, 0x2B, 0x3C, 0x24, 0xE7, 0xA3, 0x3E, 0x6E, 0x0A, 0xFE,\n0x81, 0x83, 0x90, 0x85, 0xD0, 0x67, 0xE5, 0x8F, 0x91, 0x1C, 0xC4, 0xB6, 0x29, 0xAA, 0x83, 0x43,\n0x9E, 0x09, 0x79, 0x97, 0x9A, 0xEC, 0x1F, 0x10, 0x42, 0x7C, 0x45, 0xBE, 0x51, 0x74, 0x10, 0x6B,\n0x32, 0x1E, 0xF9, 0x89, 0x59, 0x73, 0x42, 0x08, 0x7F, 0xC1, 0x06, 0xF1, 0xF6, 0xF5, 0x67, 0x27,\n0x1E, 0x1E, 0x04, 0x8D, 0xC2, 0xC7, 0x14, 0xA9, 0x7A, 0x16, 0x73, 0xBA, 0x9C, 0x92, 0x24, 0xFB,\n0x2B, 0x73, 0x42, 0x55, 0x69, 0xE7, 0x23, 0xB8, 0x28, 0x3A, 0x08, 0x25, 0x43, 0xF8, 0x90, 0x3D,\n0x04, 0xDF, 0x28, 0x38, 0x08, 0x3E, 0xD2, 0xE3, 0x1F, 0xB6, 0x4D, 0x4F, 0x73, 0x07, 0x91, 0x44,\n0x41, 0x04, 0xAF, 0xB8, 0xF8, 0xEE, 0xD9, 0x64, 0x96, 0x96, 0x7F, 0xB0, 0xE4, 0xF3, 0x57, 0x7D,\n0x0E, 0xE2, 0x41, 0xAC, 0xC8, 0x07, 0xA7, 0x9D, 0xDC, 0xDD, 0x39, 0x1F, 0x70, 0x80, 0x89, 0xF8,\n0xA7, 0x25, 0xBA, 0xBA, 0xFC, 0xA1, 0x69, 0x4C, 0x3E, 0x46, 0x2C, 0x19, 0xB2, 0x33, 0xB2, 0xAD,\n0xCB, 0x4C, 0x64, 0x9E, 0x9D, 0x5E, 0xA2, 0x22, 0xD2, 0x1D, 0xBB, 0x82, 0x83, 0x00, 0x0B, 0x84,\n0xE0, 0x1F, 0x8A, 0x87, 0x30, 0x12, 0x2B, 0x0E, 0x62, 0xAF, 0xAC, 0xFC, 0x21, 0x38, 0xC8, 0xF2,\n0x5E, 0x25, 0x24, 0x89, 0x49, 0x34, 0xBE, 0x2F, 0x0E, 0xC2, 0xBB, 0x22, 0x1E, 0x2C, 0xE7, 0xE5,\n0xC1, 0x63, 0xC5, 0x41, 0xBC, 0xE9, 0x7C, 0x50, 0x54, 0xCF, 0xA7, 0x77, 0x89, 0xAD, 0x4E, 0xE4,\n0x24, 0x64, 0xEA, 0xA3, 0xF3, 0x81, 0xC6, 0xE3, 0x63, 0xC4, 0x92, 0x21, 0xFB, 0x80, 0xDD, 0x92,\n0x96, 0x1C, 0x17, 0xCA, 0x1F, 0x92, 0xF0, 0x8F, 0x0E, 0x09, 0xDA, 0xE5, 0x66, 0x12, 0x7C, 0x28,\n0x23, 0x07, 0x3C, 0x18, 0x98, 0xD9, 0x3C, 0x16, 0x3D, 0x84, 0xC0, 0x47, 0x4D, 0xBA, 0x83, 0x90,\n0x87, 0xBC, 0xCC, 0x04, 0x07, 0xF1, 0x64, 0x89, 0x02, 0xA1, 0xB2, 0x24, 0x40, 0x5A, 0x0E, 0x86,\n0x1C, 0xC4, 0x37, 0x34, 0x3E, 0x28, 0x19, 0x5A, 0x22, 0x82, 0x57, 0xB0, 0x85, 0x2E, 0xD9, 0x99,\n0x92, 0x8F, 0x38, 0x22, 0x94, 0x07, 0x27, 0x8B, 0xB2, 0x40, 0x20, 0xD3, 0xCA, 0x3B, 0xC4, 0xE9,\n0x25, 0x3A, 0x21, 0x1C, 0xD7, 0xB2, 0x83, 0x50, 0x12, 0x91, 0xF8, 0x60, 0xC1, 0x3F, 0x8A, 0x23,\n0xB2, 0xEB, 0xC9, 0x90, 0x3D, 0xBC, 0xD2, 0xB4, 0xC4, 0x41, 0xA4, 0x28, 0x6B, 0x26, 0x3B, 0x88,\n0x11, 0x6D, 0x5A, 0xD8, 0x4B, 0x6C, 0xB3, 0xE5, 0xC2, 0xF7, 0xA0, 0xE0, 0x20, 0x4E, 0x88, 0x7E,\n0x8F, 0x99, 0x36, 0xCC, 0x6A, 0x22, 0x8A, 0x5D, 0x5D, 0x7B, 0x80, 0x0F, 0x51, 0xD3, 0xD8, 0x07,\n0x1E, 0x12, 0x82, 0xDB, 0xF9, 0x10, 0x75, 0x6B, 0xBB, 0xF2, 0xB4, 0x97, 0x75, 0x62, 0x7A, 0xB7,\n0xEA, 0x20, 0xEF, 0xB5, 0x61, 0xC3, 0x23, 0x32, 0x72, 0x98, 0xBE, 0x2A, 0x8F, 0xC8, 0xBC, 0x58,\n0x67, 0x89, 0x88, 0x8D, 0x65, 0x19, 0x90, 0x3F, 0x5E, 0x1E, 0xC5, 0x76, 0xFF, 0xF8, 0xC2, 0x85,\n0x28, 0xDD, 0xEA, 0xBD, 0xE7, 0xDD, 0x6E, 0x7B, 0xEB, 0xB7, 0xA8, 0x96, 0x65, 0xFE, 0xA1, 0x39,\n0x88, 0xB5, 0xBD, 0x6D, 0x36, 0xCD, 0x4A, 0x6C, 0xDF, 0x9B, 0xD5, 0x69, 0xD5, 0x04, 0xB5, 0xD1,\n0xC4, 0xDD, 0x19, 0x9E, 0xEC, 0x43, 0x5E, 0x7B, 0x59, 0x97, 0xEE, 0x5F, 0xB2, 0xB6, 0x96, 0x6B,\n0x5D, 0x6A, 0xA9, 0x7E, 0xFE, 0xF4, 0xA4, 0xBD, 0xAC, 0xC3, 0x43, 0x34, 0x35, 0x41, 0xAD, 0x2C,\n0x16, 0x0D, 0xB4, 0xFD, 0xD1, 0x34, 0xE4, 0x20, 0x1D, 0x3E, 0x6D, 0x1E, 0x12, 0x93, 0x0F, 0xB9,\n0xE2, 0x88, 0xA4, 0x67, 0x74, 0x3E, 0x6E, 0xB5, 0xF6, 0x92, 0x66, 0xB1, 0xBE, 0x7C, 0x79, 0xFC,\n0x5D, 0x6C, 0x5F, 0x5E, 0x66, 0x91, 0x66, 0xFE, 0xF7, 0xB3, 0x0D, 0x7B, 0xB5, 0x2D, 0x7F, 0x3E,\n0xCA, 0x4A, 0xBC, 0x9C, 0x7E, 0xFA, 0xE9, 0xA7, 0x95, 0xDC, 0xE6, 0xDC, 0xC1, 0x46, 0x91, 0x7A,\n0xB7, 0x45, 0xAA, 0x25, 0x4F, 0x11, 0xA5, 0x7B, 0x8C, 0x7A, 0xCB, 0x5E, 0xA5, 0x66, 0x7F, 0xFD,\n0x49, 0xD7, 0xB7, 0x27, 0xAA, 0xE4, 0x9A, 0x2C, 0x6C, 0x8A, 0x68, 0x3E, 0x8F, 0xEC, 0xF8, 0x9F,\n0x9E, 0x9F, 0x8F, 0x21, 0xFD, 0xBC, 0x5C, 0x06, 0x86, 0x8D, 0x01, 0x12, 0x1B, 0x96, 0xED, 0x88,\n0x17, 0x5F, 0x8F, 0xBB, 0x1F, 0xFE, 0x78, 0xFC, 0xF2, 0x68, 0x2F, 0xB1, 0xA5, 0x54, 0xC8, 0xBA,\n0xB6, 0xA7, 0xB5, 0x5D, 0xDB, 0xB3, 0x9D, 0x7A, 0xD3, 0x42, 0xD7, 0xF2, 0xE7, 0x10, 0x22, 0xBB,\n0xE7, 0xE7, 0xDD, 0xB3, 0xED, 0x7F, 0x55, 0xF3, 0x18, 0x20, 0x16, 0x47, 0x44, 0x10, 0x39, 0xB4,\n0x7A, 0x78, 0x12, 0xF5, 0x60, 0x7C, 0x38, 0x21, 0xF9, 0xAB, 0xFC, 0x9E, 0x79, 0x88, 0x11, 0xA2,\n0xFF, 0xFF, 0x86, 0xAB, 0x4E, 0xC8, 0x26, 0x76, 0x87, 0xB8, 0xC6, 0xF8, 0x30, 0xAD, 0x54, 0xFD,\n0xB4, 0x7A, 0x6E, 0x8F, 0x55, 0x08, 0x8F, 0x9F, 0x75, 0x0F, 0x59, 0x12, 0x62, 0x55, 0x1B, 0x63,\n0xF6, 0xE5, 0xCB, 0x4B, 0x3B, 0x96, 0xA5, 0xD7, 0x8B, 0x39, 0x88, 0x0E, 0x47, 0xFA, 0x8F, 0x67,\n0x2A, 0xAE, 0x49, 0x7A, 0x94, 0xB5, 0x6C, 0x01, 0x59, 0x1E, 0x45, 0x2D, 0x77, 0xCF, 0xB6, 0xD3,\n0x77, 0xCF, 0xDF, 0xA5, 0x03, 0xF5, 0x9B, 0xF1, 0x91, 0x14, 0xE2, 0xC3, 0x24, 0xF3, 0xF1, 0x0A,\n0x21, 0x22, 0x1F, 0xBD, 0x88, 0x14, 0xED, 0xC3, 0xA4, 0x13, 0xF2, 0x70, 0x78, 0xD3, 0xAD, 0x28,\n0x4F, 0x2C, 0x64, 0x40, 0xE6, 0x49, 0xAB, 0xDF, 0x64, 0x3E, 0xF6, 0xCF, 0x10, 0x22, 0xF1, 0x61,\n0x2D, 0xC6, 0x87, 0x3E, 0x2A, 0x5F, 0xD2, 0x48, 0xC6, 0x13, 0x06, 0x36, 0xDA, 0x59, 0x2C, 0xD5,\n0x40, 0x0C, 0x90, 0xB6, 0x49, 0x3F, 0xCB, 0xBB, 0xBA, 0x87, 0x3A, 0xCC, 0x96, 0xF5, 0x96, 0xF6,\n0x4A, 0xDB, 0xAB, 0xFE, 0x61, 0xDA, 0x1B, 0x22, 0xA2, 0x87, 0xCC, 0x3B, 0x35, 0x32, 0x1F, 0x49,\n0xBA, 0x7F, 0x40, 0x88, 0xCA, 0x47, 0x99, 0x10, 0x6F, 0x17, 0x5D, 0x8C, 0x90, 0xD7, 0xCD, 0xC1,\n0xA5, 0xE1, 0x11, 0xBD, 0x4B, 0xF5, 0xDC, 0xA5, 0xED, 0xF8, 0xEF, 0xF6, 0x31, 0x96, 0xB4, 0x53,\n0xF9, 0xF0, 0xC6, 0xA8, 0xA9, 0x35, 0xE6, 0x79, 0x45, 0x3E, 0x0C, 0x8F, 0xD4, 0xEA, 0x74, 0xF8,\n0xD6, 0x97, 0xFB, 0x04, 0xC8, 0x97, 0xDF, 0x87, 0xF1, 0x48, 0xFF, 0x69, 0xFA, 0xDF, 0x31, 0xAB,\n0x5A, 0x43, 0xEF, 0x4F, 0xCB, 0xE1, 0x69, 0x8C, 0x6C, 0x61, 0x1F, 0x10, 0x22, 0xF1, 0xE1, 0x52,\n0x3C, 0xE4, 0x37, 0xC3, 0x03, 0xDD, 0x08, 0xE3, 0xE0, 0x6C, 0xD0, 0xDC, 0x6E, 0x24, 0x3E, 0x5C,\n0x9B, 0xE1, 0x11, 0x9C, 0xD2, 0xF3, 0x3A, 0x21, 0x79, 0x87, 0xEC, 0x9F, 0x0B, 0xFE, 0x81, 0x54,\n0xFF, 0xD0, 0x11, 0x69, 0xE6, 0x67, 0xFA, 0x3E, 0xEC, 0x1F, 0xDF, 0xF7, 0x66, 0x1F, 0x01, 0x42,\n0xD2, 0x30, 0xF0, 0x96, 0xF2, 0x57, 0x1F, 0x25, 0xE5, 0x35, 0x7C, 0x68, 0x84, 0xCC, 0x12, 0x1A,\n0xD6, 0x55, 0x4C, 0x84, 0x4D, 0xEB, 0xDF, 0xEA, 0x20, 0xAA, 0x7F, 0x78, 0x13, 0x00, 0xB9, 0xD0,\n0x9B, 0x87, 0xF0, 0xF4, 0xCE, 0x37, 0xF4, 0xD9, 0x5A, 0x24, 0xFF, 0xA0, 0x69, 0x7C, 0xB8, 0x76,\n0xFB, 0xEF, 0x83, 0x26, 0x32, 0x3F, 0x97, 0x94, 0x9E, 0x37, 0x67, 0x52, 0xF8, 0x80, 0x90, 0xC3,\n0xA0, 0x7D, 0x7C, 0xFB, 0x75, 0x9D, 0x11, 0xC2, 0xAB, 0x84, 0xC7, 0x05, 0x4F, 0xDF, 0x06, 0x01,\n0x39, 0x98, 0x7F, 0x20, 0x8D, 0x0F, 0x24, 0xD9, 0x07, 0x1A, 0x0C, 0xAF, 0xBE, 0xEF, 0xCF, 0x8F,\n0x95, 0x16, 0x5F, 0x79, 0xB3, 0x17, 0xE3, 0xA5, 0xBC, 0x86, 0x0F, 0x85, 0x10, 0x7B, 0xF9, 0x00,\n0xF6, 0xE1, 0x5C, 0x60, 0x83, 0xAD, 0x36, 0x43, 0xEF, 0x0A, 0x85, 0x42, 0x90, 0xE5, 0xF6, 0xE1,\n0x9C, 0x0C, 0x85, 0x59, 0x08, 0x0F, 0x69, 0x99, 0x4F, 0xFD, 0x22, 0xA1, 0xEF, 0xB0, 0x2C, 0xF1,\n0x8F, 0xAE, 0x0D, 0x27, 0x22, 0xCF, 0x49, 0x10, 0x32, 0x57, 0xFC, 0x03, 0x89, 0x7C, 0x00, 0xC8,\n0x46, 0xE1, 0x03, 0x42, 0xBE, 0x55, 0x01, 0xB9, 0xE4, 0xE3, 0xDB, 0x50, 0x80, 0x95, 0xCB, 0xEA,\n0x85, 0x75, 0x3E, 0x32, 0x69, 0x7C, 0x20, 0x0D, 0x10, 0x08, 0xF9, 0x5E, 0x05, 0xE4, 0x94, 0xD2,\n0x0F, 0x24, 0xF9, 0x07, 0x8D, 0x51, 0x52, 0x5A, 0xE3, 0x1F, 0xA8, 0x0E, 0x08, 0xFE, 0x91, 0x5A,\n0xD9, 0x39, 0x68, 0xEF, 0x95, 0xF4, 0x1F, 0xEF, 0xEF, 0x87, 0xF0, 0xF0, 0xE6, 0x98, 0xD4, 0x4D,\n0x04, 0xE1, 0x21, 0x9D, 0x2F, 0xB6, 0x4B, 0xDB, 0xCE, 0x1E, 0x75, 0xCB, 0x4E, 0x81, 0x90, 0x61,\n0xFB, 0x40, 0xFB, 0xDD, 0xA9, 0xE6, 0x21, 0xF0, 0x21, 0x46, 0x59, 0x1F, 0xC6, 0xCC, 0xC0, 0xF4,\n0xEE, 0x83, 0x40, 0x08, 0xF1, 0xD5, 0x2F, 0xEB, 0x5C, 0xC9, 0x38, 0x32, 0x48, 0x68, 0x99, 0x7E,\n0xC1, 0x43, 0xAA, 0x7C, 0xA0, 0x8D, 0xC4, 0x07, 0x1A, 0x98, 0xBE, 0xCA, 0x55, 0xE7, 0xE3, 0xE3,\n0xB1, 0x52, 0xFC, 0x83, 0x66, 0x63, 0x24, 0x1B, 0x2D, 0xAC, 0xCB, 0xF7, 0xEA, 0xAD, 0xF3, 0xC1,\n0x10, 0xCE, 0x2C, 0x84, 0x2D, 0xDA, 0xE5, 0xA9, 0x26, 0x8F, 0xFD, 0x79, 0xC8, 0x23, 0xAE, 0x74,\n0x19, 0x66, 0x89, 0x80, 0x78, 0x41, 0x24, 0xFD, 0xA2, 0xB6, 0x24, 0x75, 0x51, 0x96, 0xA9, 0x00,\n0xC8, 0x52, 0xE0, 0x03, 0xB5, 0x05, 0x91, 0xB9, 0xC4, 0x07, 0x1E, 0xD2, 0x08, 0xFE, 0x51, 0xF3,\n0x10, 0xF8, 0x40, 0x10, 0x52, 0x89, 0xAF, 0xD6, 0x05, 0xE5, 0x4C, 0x00, 0x4C, 0x49, 0xBF, 0xF4,\n0x7B, 0x08, 0xAC, 0x8A, 0x84, 0x94, 0xAA, 0xE4, 0x43, 0xD3, 0x57, 0xC3, 0x1E, 0xC2, 0xF4, 0x95,\n0xB5, 0x4C, 0x3B, 0xC9, 0x3F, 0x68, 0xD9, 0x68, 0xF1, 0x08, 0xC4, 0x89, 0x29, 0xA8, 0x96, 0x7E,\n0x78, 0x0E, 0x4D, 0xAB, 0x9A, 0x02, 0xE7, 0x62, 0x25, 0x0B, 0xB9, 0x57, 0xEC, 0xE3, 0x11, 0x17,\n0x91, 0xF0, 0xC8, 0x26, 0xB3, 0x78, 0x18, 0x3C, 0x4F, 0xBC, 0x76, 0x3E, 0xF2, 0x26, 0xF0, 0x81,\n0xF6, 0xBD, 0x05, 0x91, 0xEF, 0xF0, 0x21, 0x78, 0x08, 0x7C, 0xE4, 0x92, 0xF8, 0x80, 0x90, 0x87,\n0xEA, 0xF4, 0x55, 0xAE, 0x6F, 0x80, 0x41, 0x57, 0xF6, 0x0F, 0x7B, 0x11, 0x65, 0x09, 0x7C, 0x40,\n0x48, 0xB9, 0xFC, 0x51, 0x94, 0x14, 0x5E, 0xA1, 0x81, 0xE9, 0x5D, 0x9D, 0x90, 0xE2, 0x40, 0x58,\n0xFA, 0x30, 0x61, 0x4E, 0xEB, 0x7D, 0x55, 0xD6, 0xC0, 0xF4, 0xAE, 0xBF, 0xB2, 0x3C, 0xA4, 0xE4,\n0x1F, 0x3F, 0x5A, 0xC3, 0x41, 0x2A, 0x84, 0xE0, 0x4A, 0x24, 0x38, 0x95, 0x5C, 0xBD, 0x47, 0x0E,\n0xBE, 0xDB, 0x25, 0x3E, 0x09, 0x1F, 0x97, 0x4D, 0xE1, 0x03, 0xF5, 0x11, 0x02, 0x1F, 0x9A, 0x87,\n0x34, 0x3D, 0xBA, 0xFD, 0x93, 0xB6, 0xB3, 0xD9, 0x6D, 0xA4, 0x88, 0xA2, 0x30, 0x62, 0x47, 0xE4,\n0x45, 0x16, 0x48, 0x31, 0x62, 0x1B, 0xAC, 0x2C, 0x90, 0x12, 0x09, 0x07, 0xA9, 0x91, 0x58, 0x20,\n0x22, 0x21, 0xAC, 0x28, 0xEB, 0xB0, 0x0E, 0xC1, 0x92, 0xF3, 0x06, 0xE0, 0xD9, 0xF1, 0x02, 0x96,\n0x7A, 0xC9, 0xC3, 0x72, 0xFB, 0xFA, 0x96, 0x3F, 0xBB, 0x5C, 0x5D, 0x7D, 0x2A, 0x84, 0x53, 0xE5,\n0xEE, 0x8E, 0x67, 0x70, 0x3C, 0x76, 0x7D, 0x7D, 0xEE, 0x4F, 0xDB, 0xBC, 0x2A, 0x7C, 0xA0, 0xDF,\n0xCA, 0x7C, 0xC4, 0x12, 0x2F, 0x08, 0x32, 0x8E, 0xC7, 0x98, 0x20, 0xA4, 0xC0, 0x87, 0x4C, 0xC8,\n0xE8, 0x95, 0x56, 0x32, 0x1F, 0x34, 0x44, 0x24, 0x3E, 0x20, 0xA4, 0x8C, 0x47, 0x99, 0x10, 0x5B,\n0x24, 0x11, 0x67, 0xC5, 0x59, 0x95, 0xF2, 0x55, 0x51, 0xE3, 0xFE, 0x71, 0x3E, 0x20, 0xA3, 0x18,\n0x5F, 0x01, 0x48, 0xC5, 0x43, 0x20, 0x22, 0x4B, 0x70, 0x8A, 0x80, 0xA0, 0x62, 0x22, 0x12, 0x76,\n0x49, 0xB1, 0x6E, 0x8C, 0x0F, 0xBB, 0xBF, 0x85, 0x0F, 0x1B, 0x6F, 0xF3, 0x0A, 0x1F, 0xA2, 0x87,\n0x60, 0x1F, 0x92, 0x87, 0xBC, 0x22, 0x89, 0x90, 0x1F, 0x2B, 0x82, 0x0A, 0x26, 0xAA, 0x12, 0x42,\n0xFB, 0x7C, 0x54, 0xE7, 0x68, 0x03, 0x48, 0x41, 0x12, 0x1F, 0x48, 0xE2, 0x03, 0xAD, 0xA4, 0xF8,\n0x8A, 0x11, 0x1F, 0x18, 0xA2, 0x29, 0x02, 0x1F, 0x45, 0x4D, 0xF9, 0x87, 0x0D, 0x8E, 0x88, 0xB3,\n0x0A, 0x7C, 0x7C, 0x01, 0x20, 0xF6, 0xC3, 0x40, 0x48, 0x01, 0x10, 0x58, 0xC3, 0x4A, 0xC6, 0xF3,\n0x90, 0x31, 0xD1, 0x10, 0xC9, 0xFB, 0x1F, 0xA3, 0x84, 0x48, 0x7C, 0x10, 0x65, 0xFD, 0x6E, 0xEF,\n0xCA, 0x74, 0x7C, 0x85, 0x34, 0xFF, 0x40, 0x1A, 0x1F, 0x44, 0x59, 0xB5, 0xF8, 0x4A, 0xF0, 0x90,\n0x22, 0x1F, 0x38, 0x10, 0x84, 0xE0, 0x1F, 0x35, 0x49, 0xFE, 0x81, 0x24, 0x3E, 0xD0, 0x39, 0x1F,\n0x94, 0x77, 0x35, 0x42, 0x32, 0xFB, 0x28, 0xA5, 0xEA, 0x34, 0x40, 0xE0, 0xA3, 0xAC, 0x31, 0x3E,\n0x58, 0xCA, 0x1C, 0x05, 0x1F, 0x05, 0xFF, 0xC8, 0x73, 0x90, 0x72, 0x31, 0x0B, 0x20, 0x18, 0x90,\n0xA7, 0xE2, 0x01, 0x21, 0x7B, 0x9D, 0xB4, 0xCF, 0x2B, 0x1E, 0x22, 0xF1, 0x41, 0xB9, 0x77, 0x2E,\n0xE0, 0x81, 0x34, 0xFF, 0x40, 0x3F, 0x4B, 0x7C, 0xE0, 0x21, 0x79, 0x79, 0x97, 0xE5, 0x3D, 0x42,\n0xC8, 0x69, 0x99, 0xB7, 0x2E, 0x8A, 0x59, 0xB4, 0xCF, 0xAB, 0x2A, 0xB4, 0xCF, 0xAB, 0x52, 0xF0,\n0x40, 0xD9, 0xA9, 0xE9, 0x1A, 0x3E, 0x2A, 0x84, 0xC8, 0x7C, 0x2C, 0xC9, 0x58, 0x5D, 0xF0, 0xA1,\n0x10, 0x62, 0x93, 0xF8, 0xA7, 0x34, 0x72, 0x44, 0x06, 0x3E, 0xBE, 0x28, 0x84, 0x58, 0xC5, 0x44,\n0x04, 0xEC, 0x62, 0x92, 0x88, 0x14, 0xCA, 0xBD, 0x2A, 0x21, 0xDF, 0x63, 0x1F, 0xB5, 0x91, 0x11,\n0xB2, 0xA9, 0x6B, 0xB5, 0xD9, 0xCE, 0x95, 0xF0, 0x0A, 0x89, 0x7C, 0xD0, 0x54, 0x57, 0xD2, 0x0F,\n0x4C, 0x24, 0xE3, 0x03, 0x34, 0xEA, 0x61, 0x16, 0xFE, 0x51, 0x55, 0x56, 0xDE, 0x9D, 0x94, 0xE6,\n0x1F, 0x48, 0x06, 0x84, 0xA6, 0x3A, 0xE5, 0x5D, 0xDA, 0xE7, 0x12, 0x21, 0x53, 0x2B, 0x21, 0x11,\n0x42, 0x7C, 0xD5, 0x46, 0x48, 0x96, 0x40, 0x67, 0x47, 0x36, 0x4F, 0x08, 0xA9, 0x7F, 0xA2, 0xB0,\n0xCC, 0x07, 0x23, 0x07, 0x51, 0xC7, 0x03, 0x42, 0x3E, 0x27, 0xFF, 0x98, 0x18, 0x12, 0x1F, 0x78,\n0xC8, 0x66, 0x2E, 0xF8, 0x07, 0xCA, 0xCB, 0x57, 0x93, 0x92, 0xFC, 0x03, 0xE5, 0xE5, 0x5D, 0x81,\n0x90, 0x7A, 0x76, 0x8E, 0x03, 0x3D, 0xE1, 0x21, 0xB4, 0xCF, 0xEB, 0xD2, 0xF8, 0x40, 0x12, 0x1E,\n0xA8, 0x43, 0x71, 0xF9, 0x55, 0x55, 0xA2, 0x7F, 0x10, 0x65, 0x85, 0x88, 0xAF, 0xEA, 0xCA, 0xDA,\n0x83, 0x8C, 0x12, 0x24, 0x79, 0x78, 0xF5, 0x85, 0x4F, 0x00, 0x89, 0x7B, 0xBC, 0xB0, 0x75, 0xD4,\n0xFD, 0xE0, 0x31, 0x6C, 0x5B, 0x4E, 0x44, 0x8E, 0x9B, 0xEA, 0x92, 0xF6, 0xD5, 0x5E, 0x81, 0x0F,\n0x5A, 0x86, 0x0A, 0x1F, 0x94, 0x7B, 0x67, 0x32, 0x1F, 0x14, 0xB3, 0xE0, 0x43, 0xF0, 0x10, 0xF8,\n0x50, 0x3D, 0x84, 0xCB, 0x4B, 0x58, 0xE2, 0xF5, 0x4C, 0x5D, 0x13, 0xE5, 0xDE, 0x57, 0x49, 0x3F,\n0xC3, 0x87, 0x24, 0x95, 0x0F, 0x1A, 0x22, 0xA4, 0xE7, 0xD3, 0x5A, 0x49, 0xFE, 0xC1, 0x48, 0xD1,\n0xB9, 0x4D, 0x4D, 0x94, 0xAF, 0xA8, 0xEB, 0x82, 0x09, 0xC9, 0x75, 0x86, 0x08, 0x6C, 0x00, 0xC8,\n0xA8, 0x87, 0x8C, 0x18, 0x07, 0x77, 0x51, 0xED, 0x55, 0xA5, 0xC5, 0x57, 0x24, 0x22, 0x5C, 0xDD,\n0x2E, 0x88, 0x86, 0xC8, 0x4C, 0x54, 0x00, 0x02, 0x1F, 0x75, 0xBD, 0x8A, 0xF1, 0x15, 0x4D, 0xF5,\n0xE0, 0x03, 0x2C, 0x04, 0x0F, 0x99, 0x10, 0x4D, 0x75, 0xD2, 0x73, 0x9D, 0x90, 0x9F, 0x45, 0x3E,\n0xF8, 0x0C, 0xD5, 0x4C, 0xD4, 0x81, 0x0F, 0xED, 0xCD, 0x5A, 0x51, 0xDF, 0x55, 0x06, 0xED, 0x41,\n0x55, 0x79, 0x7A, 0x9E, 0x35, 0x2C, 0xB2, 0xEC, 0x1A, 0xFF, 0xC0, 0x42, 0x48, 0xD2, 0xD3, 0x4C,\n0x4D, 0xF5, 0xAC, 0xFF, 0x51, 0x4A, 0x44, 0x62, 0xD8, 0xB1, 0x3F, 0x17, 0x59, 0x71, 0x2D, 0xD6,\n0x52, 0x24, 0x64, 0x49, 0x7A, 0x2E, 0x68, 0xE5, 0x84, 0xC0, 0x87, 0xE8, 0x21, 0x8E, 0x87, 0x26,\n0xF8, 0x90, 0xF4, 0xDB, 0x23, 0xFE, 0x21, 0xA8, 0xEE, 0x1F, 0x38, 0x10, 0x4D, 0x75, 0xF8, 0x50,\n0x09, 0x69, 0xF8, 0xE8, 0x39, 0x7C, 0xA8, 0x1E, 0x32, 0xF3, 0x4F, 0x47, 0x89, 0x84, 0xE0, 0x1F,\n0xD2, 0x20, 0x3D, 0xD7, 0x44, 0xFB, 0xE3, 0x85, 0x59, 0x6A, 0x85, 0xF8, 0xD6, 0x47, 0xC4, 0x57,\n0x15, 0x07, 0xA1, 0x21, 0x02, 0x19, 0x85, 0x41, 0x8D, 0xCC, 0x33, 0xF5, 0x36, 0xE1, 0x1F, 0xDA,\n0x68, 0xE0, 0x23, 0x5A, 0x86, 0xB3, 0x06, 0x91, 0x9E, 0x6B, 0x12, 0xC2, 0xAB, 0xAC, 0xDC, 0x9B,\n0x2D, 0xEF, 0x49, 0x44, 0x24, 0xC5, 0xE3, 0xC0, 0x87, 0x4C, 0xC8, 0x45, 0x83, 0x44, 0x3E, 0x28,\n0x66, 0xE1, 0x1F, 0x22, 0x21, 0x2D, 0x2B, 0x01, 0x3E, 0x64, 0x0B, 0x19, 0x5F, 0xB9, 0xEC, 0x63,\n0x84, 0x7F, 0x60, 0x21, 0x00, 0x82, 0x81, 0x84, 0x00, 0x0D, 0xC0, 0xB0, 0x93, 0x33, 0x14, 0x5B,\n0x09, 0x81, 0x0F, 0x69, 0x10, 0x5F, 0x89, 0x1E, 0x72, 0x3B, 0x6B, 0xD0, 0x2D, 0x7C, 0x48, 0x12,\n0xFD, 0x83, 0x4F, 0x88, 0xFC, 0xF8, 0xCC, 0x92, 0x9E, 0x12, 0xB9, 0xBC, 0x2A, 0xDA, 0x83, 0x9A,\n0x2E, 0x90, 0xE4, 0x21, 0x4D, 0xAF, 0x25, 0xFE, 0xA1, 0x69, 0x45, 0x1C, 0xA1, 0x0C, 0xF8, 0x50,\n0x09, 0xC9, 0x2E, 0x43, 0x07, 0x0A, 0xB2, 0x10, 0x16, 0x75, 0xCA, 0xCF, 0x47, 0x1C, 0x04, 0x70,\n0x6C, 0xF3, 0x40, 0x0B, 0xBD, 0x34, 0xF2, 0xB4, 0xE7, 0xAA, 0x15, 0x10, 0x3E, 0x37, 0xA6, 0xA4,\n0x21, 0x1B, 0x45, 0x34, 0xD5, 0xB7, 0x6D, 0xEF, 0x6A, 0x23, 0x20, 0x7D, 0xFF, 0xDA, 0xA4, 0xDF,\n0x5A, 0x97, 0xBC, 0x1E, 0x60, 0x79, 0x3B, 0xE4, 0xB5, 0x89, 0x90, 0x9E, 0x6F, 0x82, 0x93, 0x84,\n0x81, 0x48, 0xDA, 0xD2, 0xFF, 0x90, 0xF4, 0xD7, 0xFF, 0x0A, 0xC8, 0x55, 0xE4, 0xE7, 0x19, 0x1B,\n0xDC, 0xC9, 0x9F, 0x79, 0xC1, 0x29, 0xF0, 0x80, 0x84, 0xBC, 0x8A, 0x65, 0xC2, 0x43, 0x78, 0x58,\n0x66, 0xEC, 0x33, 0xBF, 0x1A, 0xD4, 0x16, 0x61, 0x41, 0x88, 0x90, 0x84, 0xAC, 0x4C, 0x1B, 0x55,\n0xF6, 0x37, 0xB7, 0x9B, 0x6D, 0xB7, 0x98, 0xC9, 0x1A, 0xBE, 0x95, 0x46, 0x47, 0xE4, 0xDB, 0xBE,\n0x87, 0x10, 0xC5, 0x3F, 0xBC, 0x85, 0xFE, 0xAC, 0x05, 0x59, 0xED, 0xF2, 0x2F, 0x10, 0x6A, 0x21,\n0xA4, 0x6F, 0x23, 0xC4, 0x5E, 0x9C, 0x86, 0xB3, 0x4D, 0xB7, 0xDD, 0x6E, 0x9B, 0x0C, 0xC4, 0xD4,\n0x14, 0x62, 0x99, 0xDA, 0xF8, 0x28, 0x17, 0xAD, 0x5E, 0x4A, 0x39, 0xC8, 0x15, 0x68, 0x8C, 0x3B,\n0x88, 0xFB, 0x47, 0x10, 0x92, 0xE1, 0x97, 0xBB, 0x14, 0x97, 0xB3, 0xEC, 0xA5, 0xF3, 0xE1, 0x6A,\n0xE0, 0xC3, 0xF5, 0xBB, 0xCE, 0xC7, 0xB6, 0x89, 0x90, 0x8B, 0x8B, 0x36, 0x42, 0xFA, 0x36, 0x42,\n0x86, 0x22, 0x93, 0x11, 0xF2, 0xA1, 0x58, 0xE0, 0x1F, 0xC3, 0x63, 0xB7, 0x64, 0x21, 0xBD, 0xAB,\n0xC1, 0x3F, 0x3A, 0xDB, 0x34, 0xF0, 0xB1, 0x69, 0x22, 0x64, 0xE5, 0x6A, 0xE0, 0xC3, 0xA5, 0xF3,\n0xE1, 0x2A, 0x16, 0xAD, 0x4A, 0xD1, 0xD1, 0x03, 0x78, 0x60, 0x21, 0x27, 0x55, 0x2C, 0x84, 0x87,\n0x8C, 0x0E, 0x98, 0x4C, 0xD2, 0xCB, 0xBC, 0x4D, 0x88, 0xAC, 0x92, 0x74, 0x3E, 0x9C, 0x10, 0x35,\n0xBC, 0x72, 0x40, 0x6C, 0xA7, 0x21, 0xE2, 0x4B, 0x4C, 0x27, 0xC4, 0x97, 0xAF, 0x13, 0xA2, 0xE8,\n0xA9, 0x2D, 0xC8, 0x72, 0x3E, 0xBC, 0x15, 0xD2, 0xAB, 0x7C, 0x84, 0xD4, 0x32, 0x6F, 0xE7, 0x43,\n0x0D, 0xB3, 0xBA, 0xCD, 0x76, 0x2F, 0x8D, 0x90, 0xDF, 0x57, 0x21, 0xF2, 0x10, 0xAD, 0x55, 0x28,\n0xF3, 0xE1, 0x2A, 0x24, 0xE8, 0xC5, 0xE3, 0x23, 0x8B, 0x98, 0x70, 0x10, 0x74, 0x75, 0x55, 0x6A,\n0x14, 0xC6, 0x4C, 0x03, 0x89, 0x7C, 0x84, 0x3E, 0x17, 0x08, 0x19, 0xFC, 0x03, 0x29, 0x7C, 0xF0,\n0x75, 0xB0, 0x12, 0x21, 0x76, 0x86, 0x8C, 0x35, 0x20, 0x9A, 0x48, 0x9F, 0xA4, 0xF2, 0xF1, 0x5B,\n0x8C, 0x8F, 0x0E, 0xB0, 0xE0, 0x43, 0xF7, 0x90, 0xFE, 0x20, 0x2D, 0xCA, 0xBA, 0x0E, 0x40, 0x20,\n0x44, 0xE0, 0x43, 0x25, 0x64, 0x85, 0xFE, 0x52, 0x7A, 0xC6, 0x5F, 0xA1, 0x16, 0x3E, 0x58, 0xC3,\n0xEC, 0x0B, 0x59, 0xBB, 0xFB, 0x07, 0xC2, 0x42, 0xA8, 0x62, 0x95, 0xF0, 0xC9, 0xA3, 0xB5, 0x82,\n0x91, 0x1C, 0x4B, 0xE3, 0x03, 0x09, 0xE9, 0xF9, 0xEA, 0x58, 0xC2, 0xA5, 0x26, 0x5B, 0xDE, 0xA4,\n0x0B, 0xD9, 0x3F, 0xC2, 0x43, 0xA6, 0xB4, 0x35, 0x3C, 0x90, 0xEE, 0x1F, 0x7B, 0x0F, 0x79, 0x14,\n0xD1, 0xD0, 0xE5, 0x78, 0xF8, 0xD0, 0x08, 0xE9, 0x8F, 0xA4, 0xFA, 0x87, 0xEE, 0x21, 0x17, 0xBC,\n0xF6, 0x10, 0x22, 0xF1, 0x01, 0x21, 0x75, 0x3E, 0x90, 0xC4, 0x07, 0x3A, 0x2F, 0x5A, 0xE5, 0x2B,\n0xFA, 0x25, 0x23, 0xA3, 0xE8, 0x20, 0xFC, 0x09, 0x3A, 0x03, 0x2E, 0xF7, 0xA7, 0x53, 0x69, 0x7C,\n0x20, 0x8D, 0x0F, 0x24, 0xFB, 0x87, 0x87, 0xC2, 0x17, 0x02, 0x1F, 0x2C, 0x82, 0xEB, 0xE9, 0x15,\n0xD3, 0x9F, 0x48, 0xE0, 0xC3, 0x07, 0x84, 0x7C, 0x68, 0x15, 0xEB, 0x31, 0xF9, 0x07, 0x1E, 0xA2,\n0xF3, 0xE1, 0xA9, 0xBA, 0xE2, 0x1F, 0xB2, 0x87, 0x78, 0xFA, 0x21, 0x12, 0x02, 0x1F, 0x10, 0xA2,\n0xA4, 0x1F, 0x87, 0x4F, 0x83, 0x34, 0xF2, 0x31, 0xBA, 0x7A, 0x89, 0xAF, 0x0A, 0xCA, 0xAB, 0x58,\n0x65, 0x41, 0x59, 0x31, 0x8A, 0x4B, 0x60, 0xFC, 0xF3, 0xB9, 0x84, 0x08, 0xD7, 0xB9, 0x07, 0x2A,\n0x1A, 0x1F, 0x48, 0xE5, 0x23, 0x12, 0x91, 0xD9, 0x62, 0x9A, 0x0F, 0x08, 0xE9, 0xEA, 0xF6, 0x11,\n0x7C, 0x20, 0x25, 0xBE, 0x62, 0x09, 0xDB, 0xD7, 0x61, 0x7D, 0x64, 0x90, 0xF5, 0x08, 0x1E, 0x9A,\n0x87, 0xF4, 0x48, 0x22, 0xE4, 0xFA, 0xA2, 0x6B, 0xF0, 0x90, 0x2D, 0x82, 0x10, 0x81, 0x0F, 0xD1,\n0x43, 0x2C, 0x20, 0xE7, 0xB3, 0xE8, 0xD3, 0x1E, 0x92, 0x2F, 0xCB, 0xE2, 0xEA, 0x65, 0x94, 0xD1,\n0xC0, 0x41, 0x46, 0x0D, 0x84, 0x54, 0x3D, 0xCF, 0x45, 0x12, 0x8E, 0xE9, 0x69, 0x20, 0xC9, 0x3F,\n0x8C, 0x10, 0xF2, 0x10, 0x81, 0x0F, 0xA4, 0xF1, 0x01, 0x21, 0x15, 0x75, 0xC4, 0x57, 0x87, 0x3C,\n0xE4, 0x5B, 0x85, 0x0F, 0x24, 0xE5, 0x1F, 0x0C, 0x21, 0x55, 0xD7, 0xF9, 0x00, 0x10, 0xC9, 0x43,\n0x7A, 0xA4, 0x44, 0x59, 0x9D, 0xF3, 0xC1, 0xB0, 0x7B, 0x04, 0xFF, 0x50, 0x09, 0x59, 0x15, 0x54,\n0x21, 0x84, 0x6B, 0xDD, 0x39, 0xB7, 0x6A, 0xF6, 0xC1, 0xF2, 0x7C, 0x39, 0xCB, 0x41, 0xB8, 0x67,\n0xC4, 0x1C, 0xB2, 0x2A, 0x56, 0xE8, 0xE1, 0x30, 0x42, 0x79, 0xF6, 0xC1, 0xA3, 0x9F, 0x3E, 0x0D,\n0x1B, 0x13, 0x84, 0xF0, 0xCF, 0xF4, 0xCD, 0x9E, 0x90, 0xB1, 0x57, 0x05, 0x3E, 0x24, 0x42, 0x7E,\n0xCF, 0xF9, 0x48, 0xC5, 0xAC, 0xDB, 0x0A, 0x1F, 0x5D, 0x36, 0xAA, 0x99, 0x7A, 0x5F, 0x50, 0xFD,\n0x3A, 0xDE, 0x1C, 0x10, 0xF3, 0x90, 0x8F, 0x0A, 0xB2, 0x1E, 0xEF, 0x79, 0x5C, 0x10, 0x11, 0xF8,\n0x10, 0x3D, 0xA4, 0xC3, 0x5D, 0x19, 0x02, 0x1F, 0x1A, 0x21, 0xAB, 0x92, 0x2A, 0xD7, 0xBC, 0x7F,\n0x15, 0x0B, 0x26, 0x34, 0x55, 0xEE, 0x85, 0x8B, 0x61, 0x77, 0x15, 0x62, 0xF9, 0x66, 0x39, 0xF4,\n0x18, 0x1B, 0x38, 0x08, 0x77, 0x81, 0x45, 0x1C, 0xE3, 0x21, 0x94, 0xAF, 0x18, 0x65, 0xD5, 0xCB,\n0xBB, 0x7C, 0x59, 0xDC, 0x70, 0x68, 0xF7, 0x8E, 0xF9, 0xC7, 0x6A, 0x44, 0x65, 0xF7, 0x80, 0x0F,\n0x91, 0x10, 0xEC, 0xE3, 0xD4, 0x44, 0x8A, 0x80, 0x6C, 0xBF, 0xED, 0x47, 0x34, 0x82, 0x07, 0xE9,\n0x79, 0x96, 0x88, 0x08, 0x57, 0xF5, 0x8A, 0xE5, 0xAB, 0x7C, 0x0C, 0xB3, 0xFF, 0x59, 0xE0, 0x43,\n0x20, 0x84, 0xF4, 0x83, 0x61, 0x77, 0xD7, 0xDA, 0x1F, 0xB9, 0x68, 0x88, 0x08, 0x7C, 0xD4, 0xCB,\n0xBD, 0x07, 0x2E, 0xC2, 0x41, 0x7C, 0x0F, 0x20, 0xA3, 0xFE, 0xB1, 0x3F, 0x67, 0x53, 0xEE, 0x2D,\n0x36, 0x42, 0xAE, 0x0A, 0xE5, 0x2B, 0x16, 0x3F, 0x55, 0xAC, 0xA2, 0x83, 0x3C, 0xC4, 0x5D, 0x57,\n0xC5, 0x1C, 0x04, 0xEB, 0x70, 0x4C, 0xA1, 0x76, 0x04, 0x90, 0x65, 0x18, 0x08, 0x89, 0x48, 0xFC,\n0xC3, 0x25, 0x3E, 0xD0, 0xEF, 0x95, 0xF2, 0x95, 0x4C, 0x48, 0x74, 0x89, 0xCF, 0x4D, 0xA4, 0x9C,\n0x9F, 0xF7, 0xF7, 0x0A, 0x21, 0x00, 0x52, 0xE2, 0x43, 0x6F, 0x88, 0xE8, 0x7C, 0x68, 0x61, 0x56,\n0x3F, 0xAA, 0x4A, 0xF9, 0xAA, 0x84, 0x48, 0x85, 0x0F, 0x8D, 0x10, 0xF8, 0xD0, 0x09, 0xF9, 0x2A,\n0x7D, 0x9B, 0x5A, 0x7C, 0xBD, 0xF3, 0xB0, 0x8D, 0xF8, 0xA3, 0x24, 0x62, 0xFE, 0xCF, 0x83, 0x93,\n0x4A, 0x1E, 0x72, 0x08, 0xAF, 0x1E, 0x4E, 0x07, 0x26, 0x42, 0x92, 0x1E, 0x7F, 0x0B, 0x1D, 0x21,\n0x72, 0x35, 0x5A, 0xDF, 0x0D, 0x24, 0xF6, 0xA0, 0xD4, 0x3C, 0xC4, 0xF1, 0x08, 0xF6, 0x6D, 0x13,\n0x3F, 0xF9, 0xB6, 0xDC, 0x3E, 0x57, 0x08, 0xE1, 0xEA, 0x2B, 0x24, 0x11, 0x02, 0x1E, 0xF9, 0x28,\n0x76, 0x0C, 0x5F, 0x01, 0x44, 0x20, 0xE4, 0x67, 0xFC, 0xA3, 0x44, 0xC8, 0x73, 0x73, 0x7B, 0x10,\n0x3D, 0xD9, 0x80, 0x0F, 0x91, 0x90, 0xBE, 0xA2, 0x8B, 0xAD, 0xE2, 0x1F, 0x14, 0xB3, 0x64, 0x3E,\n0x20, 0x24, 0x8F, 0x85, 0x2B, 0xAA, 0xD4, 0xAF, 0x7C, 0xB1, 0x38, 0x26, 0x6E, 0x21, 0xA3, 0x9F,\n0x0C, 0x39, 0x36, 0x8F, 0xC0, 0x84, 0xE3, 0xF3, 0xEB, 0xB1, 0x58, 0xF6, 0x05, 0x07, 0x01, 0x10,\n0xEE, 0xCB, 0x1C, 0x24, 0x36, 0x2F, 0x79, 0xC7, 0x70, 0x10, 0x06, 0x16, 0x70, 0x00, 0xEF, 0xF9,\n0xD3, 0x4E, 0x6E, 0x71, 0x92, 0x82, 0xF8, 0xCE, 0x54, 0x48, 0xCF, 0xAB, 0x52, 0xFC, 0x03, 0x6D,\n0xBA, 0x4A, 0xFB, 0x23, 0x1B, 0xE5, 0xA6, 0x3A, 0x78, 0x48, 0x84, 0xC0, 0xC7, 0xFF, 0xE2, 0x21,\n0xC5, 0xC7, 0x25, 0xD0, 0x92, 0xF8, 0x40, 0x9A, 0x7F, 0x10, 0x83, 0x16, 0xDA, 0x83, 0x35, 0x41,\n0x48, 0xC9, 0x3E, 0x84, 0x62, 0x56, 0xAC, 0x1B, 0x9F, 0xF1, 0xD5, 0x26, 0xE1, 0x20, 0x25, 0x0F,\n0x81, 0x0A, 0x5F, 0x8B, 0x3E, 0xFC, 0xB0, 0x98, 0x87, 0x5C, 0xBD, 0x3C, 0x9C, 0x2D, 0x7B, 0x16,\n0x3F, 0x49, 0xBA, 0x1F, 0xD4, 0x1C, 0xC4, 0x94, 0x7D, 0xBD, 0x22, 0x51, 0x1E, 0xCF, 0xE8, 0xD8,\n0x53, 0xCE, 0xC3, 0x2B, 0xD8, 0x77, 0x03, 0x89, 0x88, 0x32, 0xE5, 0x25, 0xCB, 0xBF, 0x14, 0x3E,\n0x50, 0xAD, 0x7C, 0x85, 0x68, 0xAA, 0x2F, 0xF2, 0xF2, 0x6E, 0x65, 0x40, 0x08, 0x7C, 0x54, 0xA5,\n0xF1, 0x41, 0xAA, 0xFE, 0x7E, 0x36, 0x68, 0x7F, 0xE8, 0x1E, 0xD2, 0x23, 0xC1, 0x43, 0xF0, 0x0F,\n0xC1, 0x43, 0x68, 0x0F, 0x2A, 0x84, 0xC0, 0x87, 0x4E, 0x48, 0x0A, 0x3B, 0x88, 0xCA, 0xFD, 0x47,\n0xBE, 0xE0, 0xB9, 0xCC, 0x47, 0x5E, 0xC6, 0x8A, 0x4D, 0x9E, 0x87, 0x58, 0x7E, 0xAE, 0x3B, 0xC8,\n0xC3, 0x98, 0x83, 0xC4, 0xE1, 0x49, 0x3B, 0x32, 0x84, 0x67, 0x1C, 0xFB, 0xC8, 0x9E, 0xD5, 0x72,\n0xFD, 0x2A, 0x0C, 0x84, 0x14, 0x04, 0x0F, 0x51, 0xF8, 0x40, 0x0A, 0x1F, 0x10, 0x72, 0x31, 0xBB,\n0xCD, 0xF8, 0xB0, 0x59, 0xF3, 0x10, 0x00, 0xD9, 0x1A, 0x1F, 0x53, 0x8B, 0x4C, 0xC9, 0xCF, 0x19,\n0x7C, 0xC0, 0xF0, 0x7D, 0x7C, 0x30, 0x14, 0x0F, 0xE9, 0x27, 0x15, 0xFF, 0x5A, 0xDA, 0x1F, 0x82,\n0x87, 0xC0, 0xC7, 0x66, 0x2B, 0x12, 0x02, 0x1F, 0x3A, 0x21, 0x47, 0xEB, 0x86, 0x42, 0x6F, 0xDA,\n0x15, 0x3C, 0x04, 0xDF, 0xE0, 0xC4, 0x8D, 0xF0, 0x10, 0xDA, 0xE7, 0x0F, 0x15, 0x07, 0x71, 0x0F,\n0x09, 0x40, 0x26, 0x1C, 0xE4, 0xC1, 0x66, 0xDE, 0x1E, 0x24, 0xEB, 0x38, 0xB2, 0x32, 0xC2, 0xBF,\n0xEC, 0x23, 0xB6, 0x91, 0x7D, 0xD8, 0x0D, 0x25, 0xBF, 0x74, 0x1D, 0x97, 0x77, 0x15, 0x4D, 0xF3,\n0x81, 0x36, 0xD1, 0x32, 0x84, 0x8F, 0xFA, 0x80, 0x90, 0x2D, 0xFE, 0x51, 0x53, 0xA1, 0xFD, 0x51,\n0x45, 0x44, 0x48, 0x3F, 0x84, 0xF6, 0x87, 0xE2, 0x21, 0xBD, 0x20, 0xCD, 0x3F, 0xF0, 0x90, 0xAC,\n0xBC, 0xAB, 0x11, 0x02, 0x1F, 0x3A, 0x21, 0x2C, 0x92, 0xE3, 0xB2, 0x4E, 0xEC, 0xD3, 0x1D, 0x27,\n0x78, 0x10, 0x5F, 0xED, 0x43, 0x19, 0x72, 0x91, 0x74, 0x90, 0xB5, 0x3F, 0x54, 0x07, 0x79, 0xA8,\n0x3B, 0x88, 0x8B, 0x1C, 0x87, 0x02, 0x73, 0x4A, 0xD1, 0x49, 0xD4, 0x41, 0x36, 0xB3, 0x8F, 0xF8,\n0x5F, 0x1F, 0x30, 0x22, 0x21, 0xC1, 0x44, 0xE0, 0x43, 0x91, 0xC8, 0x07, 0x4D, 0x75, 0x8D, 0x8F,\n0xBC, 0xA9, 0xDE, 0x6B, 0x12, 0xE2, 0xAB, 0x0F, 0x68, 0x88, 0xD0, 0xFE, 0x10, 0x3D, 0xA4, 0x17,\n0x44, 0xB9, 0x97, 0xF6, 0x47, 0x7D, 0x34, 0xF1, 0x01, 0x21, 0x2B, 0x49, 0x5C, 0x76, 0x12, 0xEB,\n0x06, 0xBF, 0x48, 0x94, 0xC4, 0x36, 0x15, 0xB7, 0x92, 0x4E, 0xC2, 0xAA, 0xE0, 0x84, 0x3A, 0x6B,\n0xAC, 0xD8, 0xCC, 0x3F, 0xC6, 0x1D, 0x24, 0x76, 0xAA, 0x83, 0x3C, 0xD0, 0x10, 0x81, 0xD3, 0xC8,\n0x38, 0xC6, 0x04, 0x1E, 0x7B, 0x0E, 0x52, 0xF5, 0xEA, 0x24, 0xD1, 0x8A, 0x7B, 0xA3, 0xA9, 0x6E,\n0xC9, 0xC8, 0x4A, 0x55, 0x03, 0x1F, 0x14, 0xB3, 0xBA, 0x0B, 0x6D, 0xF8, 0xA7, 0x0C, 0x6D, 0xF6,\n0x6D, 0x80, 0x08, 0x74, 0xAC, 0xF7, 0x9B, 0x77, 0xFA, 0xC7, 0xBA, 0x89, 0x90, 0x5E, 0x54, 0xD6,\n0x3E, 0x9F, 0x32, 0x91, 0x0E, 0x3E, 0x44, 0x42, 0x74, 0x3E, 0x28, 0xF7, 0x1E, 0x47, 0xE0, 0x38,\n0x08, 0xF9, 0x39, 0xDF, 0xF9, 0xEE, 0x1A, 0x16, 0x26, 0x01, 0x96, 0xBB, 0x87, 0x0D, 0x52, 0x01,\n0xBF, 0xCF, 0x45, 0xFB, 0x43, 0x70, 0x90, 0x07, 0x03, 0xE4, 0x41, 0x72, 0x90, 0x48, 0x44, 0x20,\n0xF4, 0x1F, 0x2A, 0x58, 0xB1, 0x2B, 0x34, 0xD5, 0xDD, 0x35, 0x9C, 0x81, 0x83, 0x51, 0x92, 0x62,\n0xB1, 0xF3, 0x9E, 0x21, 0xFE, 0xA1, 0x09, 0x3E, 0x34, 0x42, 0x66, 0xB7, 0x5E, 0xDE, 0xD5, 0xC6,\n0x35, 0xFE, 0xA1, 0x22, 0xF2, 0x73, 0x9F, 0xC7, 0x57, 0x13, 0xC5, 0xAC, 0xC7, 0x8F, 0x69, 0x7F,\n0x8C, 0x36, 0xD5, 0x7B, 0x59, 0x5E, 0x97, 0x30, 0x3C, 0xC4, 0x61, 0x39, 0x1D, 0xE5, 0x5D, 0x91,\n0x90, 0x55, 0x83, 0x06, 0x40, 0xD2, 0x99, 0x94, 0xEF, 0x3A, 0x8F, 0x63, 0xB6, 0x87, 0x32, 0x68,\n0xD8, 0x07, 0x4B, 0x90, 0x4D, 0x7E, 0xB1, 0x47, 0x00, 0xE2, 0xCB, 0x59, 0x72, 0x90, 0xEF, 0x3F,\n0xFB, 0xFE, 0x07, 0x5D, 0xF8, 0x47, 0xFA, 0x85, 0xC4, 0x7B, 0xDC, 0x45, 0x7F, 0x24, 0x75, 0x3B,\n0x0E, 0xED, 0x4F, 0x2C, 0xF3, 0xC4, 0x4F, 0xE2, 0x94, 0x00, 0x1E, 0x9A, 0xB6, 0x0D, 0xFA, 0x7D,\n0xD3, 0x19, 0x1F, 0xBA, 0x3A, 0x3E, 0x1D, 0xA5, 0xC9, 0xD3, 0x0F, 0x71, 0xD6, 0xCB, 0xBD, 0x8F,\n0x85, 0x09, 0x1F, 0xE2, 0x68, 0x7C, 0xF2, 0x17, 0x6D, 0xBA, 0x86, 0x0F, 0x49, 0xF0, 0x21, 0x7A,\n0x48, 0xEA, 0x7E, 0xB0, 0x3C, 0x52, 0x60, 0x65, 0x9B, 0xD8, 0xFA, 0xD1, 0x1E, 0x10, 0x56, 0x25,\n0xF5, 0x55, 0xF2, 0x63, 0xE2, 0x9C, 0x40, 0x04, 0xCB, 0x18, 0x17, 0x39, 0xC8, 0xCB, 0xEE, 0xE5,\n0x57, 0xE5, 0x66, 0xE3, 0xF2, 0xAA, 0x4D, 0x91, 0x82, 0x3B, 0x18, 0x82, 0x96, 0x37, 0xAB, 0xD5,\n0xDD, 0x4A, 0xD4, 0xDD, 0x5F, 0x37, 0xDD, 0xFC, 0xED, 0xAD, 0xD3, 0xE7, 0xEC, 0xBA, 0x41, 0x96,\n0xAD, 0xF4, 0x17, 0xAF, 0xF2, 0x30, 0xB7, 0x59, 0x3F, 0x3D, 0x2E, 0x1A, 0xC6, 0xF3, 0x4F, 0x3F,\n0x3D, 0x17, 0x47, 0x41, 0x76, 0xA7, 0x7D, 0x07, 0x96, 0xFD, 0x47, 0x4F, 0x6B, 0x69, 0xD8, 0xDF,\n0x6B, 0x79, 0xF2, 0x66, 0x36, 0xD7, 0x8D, 0xFA, 0xD4, 0xF2, 0xC2, 0xCF, 0xDF, 0x36, 0xF2, 0xDB,\n0x3A, 0xAC, 0x80, 0x9B, 0xE5, 0x57, 0x8A, 0x58, 0x5B, 0x57, 0x6D, 0xF2, 0x05, 0x2D, 0xDE, 0x0C,\n0x90, 0x5F, 0x65, 0x5D, 0x5E, 0x5E, 0xEE, 0x1A, 0x9E, 0xC6, 0x40, 0x88, 0xAE, 0x6F, 0xBE, 0x5A,\n0x2E, 0x97, 0x77, 0x77, 0xAB, 0x3B, 0x51, 0xAB, 0x9B, 0x9B, 0x9B, 0x4F, 0xF3, 0x4F, 0xD2, 0xF4,\n0xDD, 0xED, 0x7C, 0xD6, 0x20, 0xA3, 0xC9, 0x9B, 0xE8, 0xEA, 0xEC, 0xEF, 0xEF, 0xD7, 0x4F, 0x0D,\n0x7A, 0x7E, 0x7E, 0xFE, 0xE9, 0x3B, 0x5B, 0xFB, 0xDF, 0xE5, 0xB3, 0x2C, 0xFB, 0xEB, 0xF6, 0x1F,\n0x19, 0x21, 0x9A, 0xD6, 0xF7, 0xF7, 0x6D, 0xAE, 0x60, 0x67, 0x84, 0x16, 0xD9, 0x8B, 0xF9, 0xC9,\n0x34, 0x57, 0xA6, 0x0D, 0x7B, 0xAB, 0xEE, 0x96, 0xE2, 0xDB, 0x6A, 0xC3, 0x16, 0x82, 0x2D, 0x87,\n0x34, 0x7C, 0x9E, 0x0C, 0x9B, 0xCB, 0x74, 0x30, 0xC8, 0x17, 0x9B, 0x2E, 0x5B, 0xC6, 0xFA, 0x92,\n0x6F, 0x00, 0xE4, 0xD2, 0x75, 0x25, 0xF3, 0xE1, 0x1B, 0xFB, 0x27, 0xA8, 0x63, 0x39, 0x68, 0x75,\n0xA7, 0x8D, 0xBF, 0xEE, 0x6E, 0x06, 0xBD, 0xCD, 0x3F, 0x4D, 0xAB, 0xB3, 0xDB, 0xDB, 0x7C, 0x66,\n0xA3, 0x09, 0x0F, 0x03, 0x44, 0xD7, 0xBD, 0xA9, 0x37, 0x42, 0xCC, 0x45, 0xA6, 0xE7, 0x7A, 0x6D,\n0x7C, 0x0C, 0x84, 0xC8, 0xFA, 0xF1, 0xD9, 0x64, 0xD6, 0x20, 0xFD, 0x02, 0xE3, 0xA3, 0x1F, 0x9E,\n0x8E, 0xB9, 0x9A, 0x32, 0x9C, 0x8F, 0x36, 0x44, 0xE6, 0x73, 0x7B, 0x31, 0xED, 0x75, 0x15, 0x64,\n0x78, 0xBC, 0xDD, 0xDC, 0x6C, 0x6E, 0x6E, 0x44, 0xFB, 0xB0, 0xB1, 0x34, 0xE1, 0x21, 0x70, 0xC0,\n0x1D, 0x71, 0x4F, 0xA0, 0x73, 0xD5, 0xA6, 0xCB, 0x5F, 0x5B, 0x08, 0x69, 0x01, 0xC4, 0x47, 0x73,\n0x94, 0xA5, 0x6A, 0xB9, 0x97, 0x08, 0x88, 0xF9, 0x47, 0x10, 0x62, 0x6F, 0xD4, 0xC4, 0xB0, 0xF9,\n0x36, 0xF8, 0x87, 0xBD, 0xAD, 0x2D, 0xF6, 0x61, 0x88, 0x68, 0x6B, 0xEC, 0x75, 0xE8, 0x96, 0x40,\n0x88, 0xDD, 0x16, 0x95, 0xAD, 0xFB, 0xC0, 0xB3, 0xEB, 0x47, 0x95, 0x8F, 0xE7, 0x90, 0x91, 0xB5,\n0xAE, 0x3F, 0xBA, 0xC9, 0xF9, 0x70, 0xC9, 0xF6, 0xE1, 0x43, 0x27, 0x64, 0x6E, 0xB2, 0xAD, 0xBD,\n0xB0, 0xC2, 0x98, 0x1B, 0x1F, 0x2E, 0x3B, 0xA9, 0xAD, 0x94, 0xB1, 0x0C, 0x8D, 0x5A, 0x08, 0x9B,\n0x61, 0xDB, 0x18, 0x5F, 0xED, 0x2E, 0x07, 0x3C, 0x64, 0x42, 0x76, 0x43, 0x0E, 0x22, 0xF2, 0x91,\n0xA4, 0xDA, 0x47, 0x48, 0xB6, 0x8F, 0x90, 0xEA, 0x1F, 0x9B, 0x44, 0x88, 0x23, 0x50, 0x9D, 0x6F,\n0x9F, 0x66, 0x03, 0x1F, 0x3E, 0x25, 0x39, 0x1E, 0x3E, 0x44, 0xFF, 0x08, 0xF5, 0xF7, 0xC3, 0xF2,\n0xB4, 0x31, 0xB1, 0x7D, 0x4E, 0x12, 0xFD, 0xE3, 0xC7, 0x03, 0x21, 0xC2, 0xA3, 0xAF, 0x9D, 0x8F,\n0x20, 0x44, 0x00, 0x9C, 0x7F, 0xEA, 0xB5, 0xCA, 0x87, 0x4F, 0x27, 0x64, 0x6A, 0xCE, 0xBB, 0xE0,\n0x63, 0xF0, 0x10, 0x09, 0x90, 0xA5, 0x2B, 0x33, 0x91, 0xCC, 0x40, 0x70, 0x90, 0xF7, 0xF0, 0xF1,\n0xAB, 0x4E, 0x88, 0xE7, 0x20, 0x5F, 0x08, 0x84, 0xF8, 0x63, 0xA6, 0xB1, 0x53, 0xF8, 0x40, 0xA2,\n0x7F, 0x40, 0x88, 0xE4, 0x1F, 0x10, 0xF2, 0x69, 0xE2, 0x8D, 0x32, 0x3E, 0xDC, 0x3F, 0x62, 0x6A,\n0xFE, 0xC1, 0x98, 0xF4, 0x0F, 0xF8, 0x80, 0x90, 0xDA, 0x58, 0x3F, 0x1F, 0xF4, 0xA3, 0xE4, 0x21,\n0xCF, 0xE8, 0x69, 0x3A, 0x51, 0x7F, 0xB2, 0x27, 0x71, 0x90, 0xE6, 0x1F, 0x10, 0xA2, 0xE1, 0xA1,\n0x13, 0xE2, 0xF1, 0x95, 0x49, 0xF7, 0x90, 0x25, 0xC2, 0x43, 0x4A, 0x06, 0x12, 0xBB, 0x77, 0xF3,\n0xF1, 0x8F, 0x12, 0x33, 0xBD, 0x78, 0xA3, 0x50, 0x20, 0x64, 0x78, 0x48, 0xB4, 0x93, 0xF8, 0xE0,\n0x27, 0xC9, 0x3F, 0xD0, 0xDD, 0x24, 0x22, 0x37, 0x1B, 0x1B, 0x07, 0xCD, 0xFD, 0x8D, 0xAA, 0xBC,\n0x4D, 0x33, 0xF8, 0xB0, 0x9B, 0xE4, 0x1F, 0x0C, 0xD9, 0x3F, 0x20, 0xE4, 0x71, 0x11, 0xB9, 0x86,\n0x6D, 0x86, 0x1F, 0xB8, 0x27, 0xF9, 0x07, 0x88, 0x68, 0xF6, 0x81, 0xEC, 0x01, 0x0A, 0x8F, 0xCB,\n0x3D, 0xEB, 0xE0, 0x03, 0x42, 0x04, 0xFF, 0x80, 0x10, 0x85, 0x0F, 0x66, 0x95, 0x10, 0xBF, 0x25,\n0x3E, 0x36, 0xBE, 0x99, 0xC4, 0xC3, 0xF9, 0x40, 0x75, 0x03, 0xC1, 0x3E, 0x9A, 0xF8, 0x88, 0x69,\n0x9A, 0x5A, 0xF7, 0xC6, 0xC7, 0x17, 0x83, 0x83, 0x0C, 0x84, 0x5C, 0x0A, 0x06, 0xC2, 0x80, 0x00,\n0x4D, 0xAA, 0x7D, 0x28, 0x79, 0x88, 0xFD, 0x29, 0xAE, 0xED, 0x5B, 0x27, 0x64, 0x2C, 0x65, 0x34,\n0xFF, 0x88, 0x37, 0x93, 0x79, 0x2F, 0xF0, 0x21, 0x7A, 0x88, 0xA7, 0x1F, 0x39, 0x21, 0xA6, 0xC8,\n0x35, 0x42, 0x29, 0x37, 0x39, 0xA4, 0xE7, 0x0D, 0x26, 0xF2, 0x1C, 0x80, 0x40, 0xC8, 0xF9, 0xE3,\n0x72, 0x4F, 0xF0, 0x81, 0x7A, 0xC9, 0x3F, 0x20, 0x44, 0x49, 0xCF, 0xF1, 0x90, 0x59, 0x1D, 0x8F,\n0x79, 0x9C, 0xC6, 0x78, 0xB7, 0xAA, 0x1E, 0x72, 0xB3, 0x74, 0xE5, 0x1E, 0x32, 0x6A, 0x20, 0xCD,\n0x7C, 0x04, 0x1B, 0xFF, 0xF8, 0xCE, 0xC6, 0x94, 0x7F, 0x18, 0x19, 0x43, 0x0E, 0xE2, 0x84, 0x54,\n0x04, 0x73, 0x7E, 0xC3, 0x43, 0x74, 0x49, 0xFE, 0x21, 0x86, 0x59, 0xAB, 0x9B, 0x30, 0x10, 0xD4,\n0x19, 0x21, 0x63, 0xEF, 0xD3, 0x3C, 0xE3, 0xC3, 0x24, 0xF0, 0x21, 0x7A, 0x48, 0xF0, 0xD1, 0x9F,\n0xCC, 0x75, 0x8A, 0xB2, 0x6C, 0x66, 0x07, 0xF0, 0x01, 0x21, 0x9A, 0x7F, 0x20, 0x1E, 0x2C, 0xFF,\n0x05, 0xF0, 0xC1, 0xD3, 0x31, 0x42, 0x5E, 0x2B, 0x7C, 0x5F, 0xB7, 0x10, 0x02, 0x1F, 0x20, 0x62,\n0x27, 0xA0, 0x82, 0x22, 0xFF, 0x80, 0x8E, 0xC3, 0x66, 0x59, 0x4B, 0x2D, 0x97, 0x67, 0x0A, 0x3A,\n0x8A, 0x06, 0xF2, 0x5E, 0x3E, 0x4C, 0xB1, 0xAB, 0xDB, 0xC7, 0x00, 0xC6, 0x0F, 0x83, 0x83, 0xF8,\n0x41, 0x05, 0x27, 0x7F, 0xD8, 0x81, 0x3A, 0xBF, 0x7D, 0xB4, 0x87, 0xC0, 0x87, 0x66, 0x22, 0x37,\n0x08, 0x4A, 0x3E, 0xCD, 0xC7, 0x2C, 0x9E, 0xF7, 0x92, 0x39, 0x17, 0xF8, 0x90, 0x3C, 0xE4, 0x35,\n0xF9, 0xC7, 0xBA, 0xB7, 0x9B, 0x1F, 0x05, 0x21, 0xFB, 0x38, 0x28, 0x46, 0x2C, 0x5E, 0xFC, 0x43,\n0xF6, 0x90, 0xE7, 0x92, 0x9E, 0x4E, 0x1F, 0x37, 0x0E, 0xE0, 0x63, 0xB8, 0xAD, 0xE3, 0x49, 0x99,\n0xFA, 0x57, 0xC5, 0x40, 0x18, 0x52, 0x7C, 0x05, 0x21, 0xA3, 0x16, 0x62, 0xED, 0x8F, 0x5C, 0x1B,\n0x9B, 0xE3, 0x89, 0xC8, 0xB2, 0xA4, 0x20, 0x02, 0x03, 0xC1, 0x52, 0xDA, 0xF9, 0x88, 0x75, 0x6C,\n0xE3, 0x9F, 0xFD, 0xE6, 0xB2, 0xEE, 0x1F, 0x07, 0x07, 0xB1, 0xF1, 0xC5, 0x84, 0x7D, 0x30, 0x8D,\n0x11, 0xD3, 0x6E, 0xA7, 0xE4, 0x1F, 0x48, 0xF2, 0x0F, 0x34, 0xFA, 0x2A, 0x06, 0x17, 0x99, 0x36,\n0xF6, 0x76, 0xE4, 0x72, 0x44, 0xE6, 0xB3, 0x36, 0x40, 0x58, 0x28, 0x92, 0x85, 0xC4, 0x7A, 0x3C,\n0xD8, 0xC8, 0xDA, 0xB7, 0x7D, 0xCA, 0x13, 0x92, 0x9C, 0x15, 0xD2, 0x8F, 0x33, 0x44, 0x64, 0xFF,\n0x20, 0x0F, 0xE1, 0x71, 0x7D, 0x1F, 0xED, 0x8F, 0x9E, 0x48, 0x2F, 0x38, 0xE9, 0x47, 0x3D, 0xA4,\n0x88, 0x87, 0x37, 0x44, 0x24, 0xFF, 0x60, 0x8E, 0xF0, 0x41, 0x7A, 0x8E, 0x81, 0x0C, 0x92, 0xFC,\n0x03, 0x65, 0x16, 0x12, 0xE1, 0xD5, 0x3B, 0xFD, 0xE3, 0x57, 0xCC, 0x23, 0xF6, 0x35, 0xFF, 0x08,\n0x40, 0x6C, 0xE7, 0x3F, 0xBC, 0x8C, 0xFB, 0xC7, 0x80, 0x1A, 0xD3, 0x07, 0x84, 0x54, 0xF9, 0x40,\n0x9A, 0x7F, 0xA0, 0xD5, 0x94, 0x7F, 0xF0, 0x9A, 0xD3, 0x10, 0x39, 0x9E, 0xD1, 0x1E, 0x2C, 0xCF,\n0x6A, 0xFB, 0x43, 0xF4, 0x90, 0x57, 0x4F, 0xCF, 0xC3, 0x39, 0x50, 0x10, 0x62, 0x22, 0x18, 0xF2,\n0x5C, 0x61, 0x01, 0x1F, 0x9A, 0x87, 0x3C, 0xA3, 0xDC, 0x43, 0x78, 0xDC, 0x27, 0xF6, 0x03, 0x12,\n0x0E, 0x29, 0x66, 0x56, 0xF7, 0x90, 0xEB, 0xF2, 0xB8, 0x16, 0xFC, 0x03, 0x0B, 0xF1, 0x17, 0xBE,\n0xC6, 0x47, 0xFE, 0x8E, 0x95, 0x3D, 0x64, 0x39, 0xA6, 0x13, 0x07, 0xA1, 0xC0, 0xBB, 0x6B, 0xE7,\n0xC3, 0xB9, 0x48, 0x41, 0x90, 0xAF, 0x69, 0x6B, 0x04, 0x8E, 0x2C, 0xFA, 0x3D, 0x15, 0xE4, 0x20,\n0x83, 0x87, 0xBC, 0x14, 0x71, 0x8A, 0x47, 0x4D, 0x11, 0x16, 0xA9, 0x48, 0x63, 0x22, 0xB2, 0xD3,\n0xFC, 0x03, 0x95, 0xCB, 0x57, 0x80, 0x81, 0x68, 0xAA, 0x77, 0xD9, 0xBC, 0x2D, 0xBF, 0xA9, 0xA6,\n0x4A, 0x79, 0x57, 0x76, 0x91, 0xB4, 0x0A, 0xFB, 0xF5, 0x7E, 0x26, 0x0F, 0x19, 0x76, 0xD0, 0x51,\n0xC9, 0x3F, 0x40, 0x44, 0xF3, 0x0F, 0x08, 0x29, 0x5C, 0x7E, 0x95, 0x70, 0xC0, 0xCE, 0xFC, 0xC0,\n0xB1, 0xC9, 0x3D, 0x04, 0x3A, 0x2A, 0x84, 0x68, 0xFE, 0x91, 0x5A, 0x86, 0x15, 0x3E, 0x36, 0x6C,\n0x46, 0x3D, 0x64, 0x59, 0x11, 0x06, 0xF2, 0xFE, 0xFC, 0x7C, 0x58, 0xB0, 0x81, 0x05, 0x26, 0xE2,\n0x1A, 0x29, 0x5F, 0x01, 0x48, 0x1C, 0x15, 0x53, 0xF5, 0x00, 0xC3, 0x37, 0x2E, 0x3F, 0x4C, 0xF7,\n0x35, 0x42, 0x5C, 0xF6, 0x0F, 0x9D, 0x90, 0x65, 0xE6, 0x1F, 0x90, 0x92, 0x3C, 0x24, 0x2B, 0x5F,\n0x11, 0x5E, 0x95, 0xA6, 0xEE, 0x1F, 0xC5, 0xA6, 0xBA, 0xF3, 0xD1, 0x73, 0xAA, 0x4E, 0x22, 0x11,\n0x59, 0x3C, 0x32, 0xE1, 0x43, 0x36, 0x91, 0x1F, 0xAB, 0x7F, 0x9F, 0xC7, 0xDD, 0xEF, 0x9C, 0x0F,\n0x18, 0x59, 0xC7, 0x2E, 0x3D, 0xB1, 0xAA, 0x7B, 0x28, 0xA9, 0x7A, 0xF5, 0x95, 0xCC, 0xAA, 0x88,\n0xF0, 0x21, 0x7B, 0xC8, 0xB2, 0x2A, 0xFC, 0x23, 0xA9, 0xDD, 0x3F, 0x92, 0x75, 0x70, 0x90, 0xD2,\n0x91, 0xF3, 0x45, 0x6F, 0x30, 0xE4, 0x0E, 0xE2, 0xB7, 0xBC, 0xDC, 0x4B, 0x4C, 0x45, 0x6C, 0xC5,\n0xF1, 0x19, 0x21, 0x04, 0x5D, 0x23, 0x2A, 0xDB, 0x87, 0x4E, 0x48, 0xBC, 0xC0, 0x60, 0x81, 0xA2,\n0x65, 0xC8, 0x49, 0x0C, 0x3E, 0x54, 0x44, 0xC0, 0xA3, 0x38, 0xCA, 0xFE, 0x11, 0xC6, 0x71, 0x38,\n0x69, 0xA7, 0x8D, 0xCD, 0xA7, 0x88, 0xAB, 0x7C, 0x0B, 0x1E, 0x63, 0x3A, 0xC3, 0x03, 0x40, 0x4A,\n0xF2, 0x87, 0x8E, 0xE4, 0x83, 0xF2, 0x6E, 0x58, 0xD9, 0xC1, 0x39, 0xE0, 0xF7, 0x88, 0x6F, 0xF8,\n0xA8, 0x10, 0xA2, 0xE1, 0x41, 0x43, 0x64, 0xBC, 0x3D, 0x88, 0x77, 0xE0, 0xFF, 0x9A, 0x7F, 0x20,\n0x0C, 0xC4, 0x47, 0x2B, 0x1F, 0x97, 0x2C, 0x5A, 0xF2, 0x85, 0x20, 0xA5, 0xE0, 0x21, 0x2F, 0x03,\n0x0C, 0x00, 0x92, 0x7E, 0x18, 0x06, 0x84, 0x90, 0x7F, 0xC4, 0x03, 0x25, 0x1B, 0xE1, 0xC1, 0xB3,\n0x4C, 0x5D, 0x78, 0xD2, 0x9A, 0x7D, 0xA0, 0x62, 0xFB, 0x1C, 0xE5, 0x3F, 0xBF, 0xF1, 0x2E, 0x39,\n0x1F, 0x02, 0x21, 0x12, 0x1F, 0x98, 0x88, 0xC9, 0xB6, 0x2E, 0x5F, 0x76, 0x14, 0xB1, 0x86, 0x79,\n0xE6, 0x21, 0xA6, 0x54, 0x69, 0x7A, 0x46, 0x92, 0x87, 0x3C, 0x4F, 0x29, 0x75, 0x09, 0xFD, 0x57,\n0x2C, 0xF0, 0x0F, 0x0C, 0x2D, 0x50, 0x8D, 0x67, 0xA6, 0xF9, 0x07, 0x84, 0x68, 0xE1, 0x15, 0x0D,\n0x91, 0xB7, 0x8C, 0x0F, 0x54, 0x82, 0xA5, 0x89, 0x0F, 0x3C, 0xC4, 0xD5, 0xCE, 0x47, 0xE4, 0x1C,\n0x9C, 0xE4, 0xC3, 0x3D, 0x4C, 0x51, 0xD2, 0x3A, 0x5E, 0xF3, 0x38, 0x06, 0x0E, 0x92, 0x6E, 0x56,\n0xEE, 0x45, 0x06, 0x40, 0x60, 0x97, 0x48, 0xF1, 0x32, 0x59, 0xAA, 0xF6, 0x92, 0x87, 0x68, 0x7C,\n0xE4, 0x4D, 0xF5, 0xA5, 0xA2, 0x63, 0x3E, 0xDE, 0xC6, 0x32, 0x10, 0x08, 0xE9, 0x0E, 0xF1, 0x55,\n0xC7, 0xE5, 0x25, 0xA3, 0x53, 0xE4, 0x83, 0x71, 0xD0, 0x6B, 0xCA, 0x87, 0xC1, 0xC4, 0x77, 0x18,\n0x88, 0x13, 0x12, 0xC5, 0x5E, 0xFC, 0xA3, 0x2A, 0x2D, 0xFD, 0x40, 0x0B, 0x2E, 0xBF, 0x3A, 0x62,\n0xC3, 0xE7, 0x1A, 0x5A, 0xB8, 0x5B, 0xE2, 0x03, 0x42, 0x34, 0xFF, 0x20, 0x55, 0x7F, 0x4B, 0x2E,\n0x32, 0x2F, 0x32, 0xC1, 0xC6, 0xB5, 0x22, 0xCC, 0x5A, 0x2A, 0x0A, 0x34, 0xDE, 0x9D, 0x7E, 0x1C,\n0x25, 0xE8, 0xAC, 0x67, 0xC0, 0x39, 0xD2, 0x0F, 0x3F, 0x64, 0x80, 0xF0, 0x53, 0xD6, 0x10, 0x49,\n0x89, 0x0C, 0xEC, 0x51, 0x1C, 0xF3, 0xDB, 0x7F, 0x69, 0x88, 0x48, 0x7C, 0x50, 0xEE, 0x5D, 0xF2,\n0x7A, 0x57, 0x2C, 0xE4, 0xEE, 0xED, 0x6D, 0x1E, 0x57, 0xEF, 0xCE, 0xC9, 0xCF, 0xC7, 0xE7, 0xBC,\n0x8D, 0x0F, 0x08, 0x89, 0x78, 0x66, 0x80, 0x20, 0xF6, 0x11, 0x70, 0xB1, 0xC7, 0x43, 0x48, 0x3F,\n0x64, 0x0F, 0x79, 0x56, 0x94, 0xB5, 0x07, 0x9D, 0xCC, 0x78, 0x3A, 0xCE, 0x6E, 0xF8, 0x07, 0x00,\n0xC3, 0x87, 0x46, 0x08, 0x7C, 0x48, 0x84, 0xC4, 0xE7, 0x0A, 0x3E, 0x6D, 0x6E, 0x26, 0xB5, 0x81,\n0x90, 0x3A, 0x1F, 0x98, 0xCB, 0x7F, 0xBA, 0xBC, 0xE4, 0xA8, 0x70, 0x15, 0x8C, 0x90, 0x5D, 0xDB,\n0x18, 0x8C, 0x20, 0xA5, 0x1F, 0x0E, 0xC2, 0xA8, 0x83, 0xBC, 0x98, 0x87, 0x7C, 0x4D, 0xFE, 0x41,\n0xE6, 0xC1, 0xA3, 0x52, 0xD4, 0x3A, 0x6E, 0xAA, 0xEB, 0x9C, 0x9C, 0xFA, 0xC7, 0x9D, 0xE8, 0x21,\n0x9E, 0x79, 0x28, 0xB2, 0xFC, 0x70, 0x6E, 0x98, 0xCC, 0x6E, 0x85, 0xD3, 0x9E, 0x49, 0xE3, 0x83,\n0x81, 0x7F, 0x24, 0x9B, 0xB0, 0xE9, 0x0B, 0xB3, 0x8F, 0x85, 0x19, 0xF7, 0xD0, 0x54, 0xF7, 0xF6,\n0xA0, 0x28, 0xD1, 0x3F, 0x68, 0x88, 0x3C, 0x92, 0x7F, 0xB8, 0x7A, 0x1F, 0xAE, 0xD8, 0x91, 0x29,\n0x79, 0x43, 0x04, 0x3E, 0x64, 0x42, 0xC0, 0xA3, 0x3E, 0xCD, 0x43, 0x3A, 0xDA, 0x83, 0x99, 0x81,\n0x8C, 0x16, 0xB3, 0x96, 0xAA, 0xDE, 0xEF, 0x1F, 0x29, 0x2B, 0x20, 0x18, 0xA2, 0x69, 0x91, 0x35,\n0xD5, 0x83, 0x0F, 0x6E, 0xB9, 0x83, 0x24, 0x0F, 0x01, 0xB1, 0x28, 0x8C, 0xD9, 0x41, 0xAA, 0x5F,\n0xF9, 0x8E, 0x3A, 0xC0, 0x6E, 0x47, 0x7E, 0xAE, 0x48, 0xF5, 0x0F, 0x1A, 0x22, 0xCB, 0x3B, 0x5E,\n0xEE, 0x71, 0x0B, 0xA1, 0xDC, 0x6B, 0xFE, 0xE1, 0x7C, 0x28, 0x88, 0xC0, 0x87, 0x36, 0xE2, 0xD3,\n0x83, 0xBE, 0xE2, 0xB0, 0x0C, 0x32, 0x80, 0xAC, 0x8B, 0xBD, 0xC6, 0x3F, 0x64, 0x0F, 0x79, 0xD6,\n0xE5, 0xFE, 0xD1, 0xF7, 0x94, 0x08, 0x5C, 0x7B, 0x48, 0xC9, 0x41, 0x28, 0xB6, 0x61, 0x20, 0xD2,\n0x68, 0xE2, 0xC3, 0x86, 0xE4, 0x1F, 0xBC, 0x6D, 0x53, 0xFE, 0x91, 0xC1, 0xF3, 0x3E, 0xFF, 0x30,\n0x05, 0x13, 0x64, 0xD1, 0xC7, 0x69, 0xB5, 0xF7, 0x42, 0x7C, 0x4D, 0x0F, 0x02, 0x85, 0x73, 0x07,\n0xA1, 0x1F, 0xF2, 0xF5, 0xAF, 0xE1, 0x45, 0x58, 0x11, 0x4D, 0x48, 0x22, 0xB8, 0xF4, 0x33, 0x74,\n0x68, 0xFA, 0x06, 0x3E, 0x24, 0x13, 0xA1, 0x7D, 0xAE, 0x68, 0x63, 0x78, 0x90, 0x9E, 0x0B, 0x1E,\n0x42, 0xFB, 0x43, 0x19, 0xBD, 0xFB, 0x47, 0xA8, 0x4F, 0xFD, 0x86, 0x75, 0xCA, 0x3A, 0x68, 0xAD,\n0xC7, 0x31, 0xED, 0x73, 0x4D, 0xA2, 0x7F, 0x50, 0xCC, 0x4A, 0x64, 0xAE, 0x53, 0x56, 0x14, 0xE4,\n0xDA, 0x84, 0xE0, 0x78, 0x6E, 0xDE, 0x32, 0x6C, 0xF9, 0xE7, 0x5E, 0xC3, 0x87, 0x30, 0x6F, 0x49,\n0xCF, 0xEB, 0x06, 0xE2, 0xD3, 0x04, 0x1F, 0x52, 0x9C, 0xF5, 0xCD, 0x3B, 0xDB, 0xE7, 0xFF, 0xB0,\n0x8C, 0x7D, 0xC4, 0x4C, 0x46, 0x92, 0x14, 0xED, 0x8F, 0x33, 0x07, 0xE1, 0x27, 0x6E, 0x27, 0x49,\n0x07, 0x33, 0x36, 0xFC, 0xE1, 0x3B, 0x3F, 0x65, 0x28, 0xB0, 0x81, 0xEC, 0xBB, 0x1C, 0xDE, 0x20,\n0x64, 0xD2, 0x42, 0x56, 0x37, 0x9F, 0x6E, 0xE1, 0x43, 0xF1, 0x10, 0x16, 0x84, 0x64, 0x21, 0x87,\n0xFA, 0x90, 0xDD, 0x38, 0x5B, 0xDB, 0x01, 0x6B, 0xD4, 0xF7, 0x71, 0xCE, 0x7E, 0x7A, 0xC6, 0x12,\n0x24, 0x0F, 0x79, 0x6E, 0xD2, 0x82, 0xAB, 0x25, 0xF9, 0xB5, 0xC4, 0x78, 0x0E, 0xE9, 0x71, 0x9E,\n0xC4, 0x3F, 0x44, 0x1A, 0xBC, 0x52, 0x12, 0x21, 0xDD, 0x8D, 0xAE, 0x8D, 0xBD, 0xAD, 0xCB, 0xAF,\n0x6A, 0x54, 0xC4, 0x0E, 0xB5, 0xF2, 0xC1, 0x29, 0x3D, 0x26, 0x6D, 0xBC, 0xBC, 0x7B, 0x31, 0xDC,\n0x09, 0x1F, 0x23, 0x0E, 0x42, 0x1E, 0x62, 0x84, 0x90, 0xD1, 0x18, 0x68, 0xE9, 0x30, 0x02, 0xAC,\n0xEC, 0x0F, 0x1B, 0x2D, 0x64, 0xF7, 0xCD, 0x12, 0x09, 0xA8, 0x58, 0x06, 0xE2, 0x88, 0xC8, 0x16,\n0xD2, 0xE9, 0x84, 0xD8, 0xA6, 0xEB, 0xFA, 0x06, 0x3C, 0xAE, 0xB1, 0x8F, 0x38, 0x3F, 0x03, 0x49,\n0xEC, 0xE8, 0x45, 0xF8, 0xDF, 0x69, 0x73, 0x10, 0xDA, 0x1F, 0x92, 0x2C, 0xC5, 0x09, 0xFF, 0x20,\n0xC4, 0x72, 0x52, 0x13, 0xAA, 0x6B, 0x88, 0xD9, 0xAB, 0x6F, 0xE1, 0xA3, 0xEB, 0x5A, 0x08, 0xB9,\n0xED, 0x74, 0x03, 0x71, 0x59, 0xF4, 0xDC, 0xA4, 0xF6, 0x8F, 0x47, 0x51, 0x82, 0xA5, 0x5F, 0x71,\n0xDA, 0x07, 0x21, 0x8D, 0xB0, 0xFC, 0xE3, 0xDC, 0x2A, 0x4A, 0x0E, 0xF2, 0x32, 0xA8, 0x80, 0x9D,\n0x6D, 0x03, 0x3B, 0x7E, 0x30, 0x59, 0x12, 0x02, 0x21, 0x52, 0x96, 0xFE, 0x0D, 0x35, 0x5E, 0xC1,\n0x48, 0x56, 0xF6, 0x3A, 0x6E, 0x74, 0x0B, 0x79, 0x7B, 0x7B, 0xBB, 0x91, 0x53, 0x90, 0xDB, 0x79,\n0x37, 0xE8, 0x5A, 0x8D, 0x38, 0x2E, 0x48, 0xCF, 0x39, 0x51, 0x9F, 0xD4, 0xAF, 0x02, 0x91, 0x74,\n0x6C, 0x2D, 0x0A, 0x3E, 0x42, 0x28, 0xA9, 0x95, 0x8F, 0xC5, 0x3A, 0x91, 0x88, 0x8F, 0xF5, 0x80,\n0x91, 0x8E, 0x6C, 0x17, 0x47, 0x4D, 0x7C, 0xE8, 0x84, 0xD8, 0xE8, 0xDE, 0x4C, 0xEA, 0x69, 0xCC,\n0xA6, 0xC5, 0xCE, 0x10, 0xC2, 0x5A, 0x60, 0x3D, 0x64, 0x07, 0xC3, 0xC2, 0x69, 0xE1, 0xC3, 0xB4,\n0xCF, 0x05, 0x08, 0x78, 0xC0, 0x82, 0x98, 0x28, 0xD2, 0xE9, 0x17, 0xD7, 0xA4, 0x83, 0x04, 0x1F,\n0xE6, 0x21, 0xF9, 0x23, 0x0D, 0x82, 0x1A, 0x4A, 0xCB, 0x3B, 0x57, 0x03, 0x1F, 0x03, 0x21, 0x39,\n0x1C, 0xBC, 0x38, 0xA5, 0x2A, 0xD6, 0xDD, 0x4A, 0x4E, 0x42, 0xDE, 0x4C, 0xE6, 0x21, 0x72, 0x8A,\n0xDE, 0xB9, 0xE4, 0x25, 0x13, 0x1C, 0xB8, 0x47, 0x04, 0x18, 0xD4, 0xAD, 0xD2, 0xD2, 0x84, 0x1E,\n0x5B, 0xBE, 0xA6, 0xC5, 0xF3, 0xFF, 0xA4, 0x01, 0x8F, 0xA7, 0xC7, 0xF5, 0x29, 0xAD, 0x54, 0x0C,\n0x02, 0x96, 0x74, 0x85, 0x58, 0xB3, 0x87, 0x74, 0x2E, 0x39, 0xBE, 0x1A, 0x5E, 0x78, 0x93, 0x66,\n0x20, 0xCE, 0x07, 0x84, 0x08, 0x11, 0xC5, 0x57, 0x86, 0xC7, 0x37, 0x0D, 0x51, 0xD6, 0xCE, 0x75,\n0x54, 0x82, 0xA5, 0x89, 0xCE, 0x8F, 0xD4, 0xB1, 0x5E, 0xF6, 0xCA, 0x3D, 0xC4, 0x00, 0x29, 0xF8,\n0x07, 0x1E, 0x42, 0x2F, 0x85, 0x5A, 0xF2, 0x3F, 0xFC, 0xE0, 0x7C, 0x84, 0x74, 0x3E, 0xC2, 0x43,\n0x24, 0xDD, 0xD0, 0x26, 0x54, 0x2C, 0xE4, 0xCD, 0x65, 0xBB, 0xD9, 0xAD, 0xE6, 0x1F, 0x21, 0x6D,\n0xC5, 0x9C, 0x37, 0xDF, 0x92, 0x57, 0x10, 0x67, 0x1D, 0xE7, 0x23, 0xDE, 0xA7, 0x58, 0xAC, 0xF1,\n0x90, 0x8F, 0xE7, 0xC3, 0x86, 0xD5, 0x79, 0x49, 0xC9, 0xF1, 0x8C, 0xA3, 0x27, 0x44, 0x7A, 0xB2,\n0x68, 0xF0, 0x90, 0x2E, 0x74, 0xAD, 0xF4, 0x41, 0xEC, 0xB5, 0x74, 0x3C, 0xB6, 0xB2, 0x87, 0xAC,\n0x56, 0x19, 0x21, 0x77, 0xF5, 0x0C, 0x3D, 0x35, 0x98, 0x9B, 0xF8, 0x70, 0x13, 0x39, 0xE4, 0xE3,\n0x2C, 0x66, 0xEA, 0xB0, 0x91, 0xC3, 0xBF, 0x1C, 0x34, 0xE5, 0x20, 0x28, 0x82, 0x28, 0x1E, 0x30,\n0x37, 0x11, 0x4F, 0x3F, 0x90, 0x54, 0xC1, 0xE2, 0x1F, 0x5A, 0x7E, 0x21, 0x38, 0xA4, 0x0B, 0xE2,\n0x1B, 0xCD, 0x3F, 0x42, 0xDB, 0x1B, 0xA5, 0x93, 0x3E, 0x8F, 0x35, 0x20, 0x7B, 0x88, 0xAF, 0xB0,\n0x19, 0x78, 0xAC, 0x49, 0x90, 0x61, 0x83, 0x53, 0xB8, 0xD3, 0xE1, 0x84, 0x2C, 0xC4, 0xCC, 0x42,\n0x57, 0x84, 0x57, 0xEB, 0xC7, 0x44, 0x08, 0x1D, 0x99, 0xC0, 0x03, 0xAB, 0x8B, 0xA7, 0x6A, 0x9A,\n0xF9, 0x4D, 0xF1, 0x90, 0xFE, 0xBA, 0x43, 0x02, 0x1F, 0xB3, 0x37, 0xB4, 0x11, 0x0C, 0x64, 0xB3,\n0xBA, 0x83, 0x90, 0xAA, 0x8B, 0xE0, 0x1F, 0x3E, 0xC4, 0x44, 0x64, 0x87, 0xC2, 0x32, 0xDC, 0x47,\n0xA0, 0xE4, 0x24, 0xC8, 0xDA, 0xBD, 0xFC, 0x30, 0x0E, 0x48, 0x81, 0x8F, 0x88, 0xB2, 0x4E, 0x1E,\n0x30, 0x7D, 0xAC, 0x90, 0x16, 0x49, 0xF0, 0x81, 0x94, 0xFA, 0x55, 0xC2, 0x03, 0x0F, 0xA9, 0xA4,\n0x20, 0xFE, 0x1A, 0x26, 0x46, 0xA6, 0xB3, 0x90, 0x38, 0x85, 0x85, 0xA6, 0x7B, 0xE9, 0x9D, 0x09,\n0x42, 0x26, 0x53, 0xF5, 0xFB, 0xD0, 0x82, 0xAC, 0x23, 0x62, 0x2C, 0x92, 0x64, 0xE7, 0x22, 0x00,\n0x5A, 0x3C, 0x0E, 0xE6, 0x11, 0xB7, 0xA7, 0x0F, 0xE7, 0x63, 0xE0, 0xEE, 0x71, 0xB1, 0xB0, 0x8D,\n0x41, 0x48, 0xA1, 0xF7, 0x9E, 0xED, 0x3A, 0xA3, 0x76, 0x11, 0x88, 0x0C, 0x1E, 0x72, 0x21, 0xF8,\n0x87, 0x4C, 0x88, 0xF3, 0xB1, 0xE1, 0xC5, 0xBF, 0x99, 0xD6, 0xDD, 0xD1, 0xA9, 0xAF, 0x16, 0x64,\n0xE3, 0x1F, 0x0C, 0x99, 0x0F, 0x08, 0xB1, 0x99, 0x98, 0xA0, 0xDA, 0xCB, 0xB9, 0x1E, 0x3E, 0x4C,\n0xE3, 0x0E, 0x12, 0x7C, 0x20, 0xB2, 0x10, 0xDF, 0xD2, 0x64, 0x49, 0x16, 0xB2, 0x3B, 0x95, 0xE4,\n0x1F, 0x20, 0x92, 0xBD, 0x1A, 0xD0, 0x42, 0x03, 0x24, 0x08, 0x49, 0x57, 0xF3, 0x6E, 0x14, 0xFF,\n0x30, 0xF9, 0xDB, 0x35, 0x95, 0x7F, 0x74, 0x48, 0xC8, 0xD4, 0x3D, 0x3F, 0xE7, 0x24, 0x1C, 0x29,\n0x87, 0x0F, 0x13, 0xB1, 0x56, 0xDC, 0xD9, 0xBB, 0x7F, 0x18, 0x22, 0x8F, 0x0B, 0xDB, 0xD3, 0x4E,\n0xFF, 0x58, 0xFF, 0xB0, 0x87, 0xB7, 0xDB, 0x60, 0x53, 0x78, 0x1A, 0x97, 0x99, 0x10, 0x08, 0xE6,\n0xF2, 0x30, 0x6B, 0xDA, 0x3F, 0xD0, 0x54, 0x03, 0xC4, 0xF1, 0x38, 0xE8, 0x62, 0xD2, 0x40, 0x02,\n0x0F, 0x9F, 0xF6, 0xC3, 0xC8, 0x2A, 0x20, 0xBE, 0x62, 0xDD, 0x28, 0x1E, 0xB2, 0xCB, 0x04, 0x14,\n0x04, 0x43, 0x7E, 0x10, 0x2D, 0xC2, 0x1F, 0x9C, 0x0F, 0x34, 0xDA, 0x49, 0x3F, 0xD5, 0x80, 0x15,\n0xDD, 0xC1, 0x83, 0x6F, 0x44, 0x10, 0x67, 0x07, 0xBB, 0x33, 0x4D, 0xF0, 0x81, 0x7F, 0x90, 0xAA,\n0xF3, 0x4A, 0x00, 0x07, 0x7C, 0xDC, 0x1D, 0x13, 0x52, 0xB7, 0x90, 0x8D, 0x73, 0xE1, 0xD3, 0x35,\n0x94, 0x7B, 0x85, 0xFC, 0x43, 0x25, 0x64, 0x0F, 0x07, 0x27, 0x61, 0xEA, 0xA9, 0xC9, 0x43, 0x7A,\n0xD6, 0xA8, 0xED, 0x0D, 0x8E, 0x47, 0x3F, 0xC5, 0xE3, 0x21, 0x1F, 0xCD, 0xC7, 0x93, 0x33, 0x68,\n0x33, 0x08, 0x49, 0xD8, 0x06, 0xAC, 0xE9, 0x4A, 0x5E, 0x9C, 0x6F, 0x96, 0x6E, 0xF6, 0x53, 0xD5,\n0x42, 0x12, 0x1F, 0x68, 0xA2, 0xBC, 0x9B, 0xB4, 0x25, 0xCA, 0xAA, 0x08, 0x3C, 0xA6, 0xC2, 0x2C,\n0xFC, 0x83, 0xE1, 0x84, 0x28, 0x7C, 0xA0, 0x38, 0xB7, 0x9F, 0xF6, 0x0C, 0x0F, 0x17, 0xA7, 0xBF,\n0xE4, 0x1A, 0x75, 0x90, 0x73, 0x51, 0xD5, 0x3D, 0xD8, 0x07, 0x10, 0xB6, 0x01, 0x32, 0xA0, 0x9F,\n0x01, 0x02, 0x21, 0x05, 0x39, 0x1E, 0xF9, 0x2B, 0x59, 0xB7, 0x0F, 0xB4, 0x0D, 0x42, 0xC6, 0xDF,\n0xD6, 0x0E, 0x29, 0x61, 0xD6, 0x3D, 0x22, 0xCC, 0x0A, 0x20, 0x28, 0x19, 0x81, 0x8E, 0x2D, 0xDD,\n0x38, 0xB7, 0xFB, 0xE5, 0xBC, 0x83, 0x9E, 0x3E, 0xDE, 0x3F, 0xEC, 0xE6, 0xC3, 0x21, 0xE9, 0xF1,\n0x0C, 0x3C, 0xCD, 0x8F, 0x8A, 0x92, 0xC2, 0x2B, 0x54, 0xE5, 0xA3, 0xA0, 0x8A, 0x81, 0x10, 0x37,\n0xC7, 0xC4, 0x43, 0x10, 0xF7, 0xE0, 0x1F, 0x78, 0xC8, 0x57, 0x12, 0x1F, 0x88, 0x18, 0x68, 0x0F,\n0x06, 0xD9, 0x03, 0xE9, 0x79, 0xD1, 0x43, 0xC8, 0x41, 0xC0, 0x23, 0xF7, 0x90, 0xC8, 0xF5, 0x7D,\n0x4F, 0x06, 0x42, 0x7C, 0xA5, 0x21, 0xB2, 0x73, 0xFB, 0xC8, 0xC7, 0x38, 0x22, 0x01, 0x07, 0x13,\n0x42, 0xB0, 0x10, 0x84, 0xC5, 0xA3, 0x8D, 0x5D, 0xB4, 0xA8, 0xC4, 0x57, 0xA8, 0xC6, 0x87, 0x9F,\n0x7A, 0x63, 0x6B, 0x13, 0xF5, 0x69, 0x4F, 0xC9, 0xD7, 0x68, 0xF0, 0xD4, 0xE0, 0x69, 0xBF, 0x84,\n0x23, 0xCC, 0x7A, 0xFA, 0x38, 0x3E, 0x4C, 0x0E, 0x85, 0xFF, 0x96, 0xB0, 0x92, 0x43, 0xE3, 0x83,\n0x0B, 0xC5, 0x48, 0xCF, 0xFD, 0xA9, 0xDB, 0x0C, 0xFF, 0x18, 0x24, 0x86, 0x57, 0x10, 0x52, 0xE1,\n0x63, 0x93, 0x59, 0x48, 0x35, 0x11, 0xC9, 0xF0, 0xC0, 0x43, 0xEA, 0xFE, 0xC1, 0xA8, 0x12, 0xB2,\n0x2B, 0x8A, 0xD3, 0xFA, 0xBE, 0xF4, 0x44, 0x20, 0x54, 0x04, 0xE4, 0xDC, 0x41, 0x6C, 0x8C, 0xE8,\n0xB4, 0x6E, 0x85, 0x35, 0x95, 0x9F, 0xC7, 0x4E, 0xF4, 0x0F, 0xC2, 0xAC, 0xB2, 0x48, 0x3F, 0x98,\n0xC3, 0x66, 0x24, 0x0D, 0x39, 0xF1, 0x8E, 0x8D, 0x8D, 0x14, 0x65, 0x15, 0x11, 0xB9, 0xED, 0x90,\n0x42, 0xC8, 0x45, 0xC1, 0x3F, 0x16, 0x44, 0x34, 0xBE, 0x24, 0x41, 0x65, 0x48, 0x3F, 0x7C, 0xF1,\n0xAE, 0x1D, 0x8F, 0xBD, 0x97, 0x88, 0x84, 0xE8, 0xFE, 0xE1, 0xBF, 0xC2, 0x7F, 0x4B, 0x14, 0x03,\n0xF6, 0x84, 0x24, 0x1F, 0x59, 0xD3, 0xEB, 0x47, 0x8B, 0x20, 0x3B, 0x76, 0x7D, 0x39, 0x0F, 0xE9,\n0x46, 0x34, 0x76, 0x79, 0x09, 0x74, 0x9C, 0xA8, 0x68, 0x20, 0x36, 0xC8, 0xCE, 0x99, 0x10, 0x42,\n0x9A, 0x9E, 0xF9, 0x87, 0xEA, 0x21, 0xF9, 0x7A, 0x4C, 0xE2, 0xD3, 0x84, 0x41, 0x06, 0xED, 0xC1,\n0x1A, 0x21, 0x00, 0x82, 0x72, 0x13, 0x21, 0xDD, 0x0F, 0x23, 0xA1, 0x3F, 0x28, 0x12, 0x42, 0xFA,\n0xC1, 0xA8, 0x17, 0xB3, 0x48, 0x3F, 0x72, 0x13, 0xC1, 0xA9, 0x8F, 0xF9, 0xE8, 0xCE, 0xDD, 0xC3,\n0x75, 0xD3, 0xCD, 0x6E, 0x15, 0x3E, 0x20, 0xA4, 0xD8, 0x3E, 0x0F, 0xFF, 0xC8, 0x57, 0x98, 0x89,\n0x2B, 0x14, 0x63, 0xBF, 0xEE, 0x7B, 0xFB, 0x90, 0x78, 0x02, 0xE3, 0x71, 0x6D, 0x37, 0x9F, 0x1F,\n0x96, 0x87, 0x3C, 0x45, 0xFE, 0x91, 0x62, 0xB8, 0xF8, 0x45, 0x7E, 0xC0, 0x93, 0xB2, 0x01, 0x2D,\n0x86, 0x86, 0x8D, 0xD0, 0x8C, 0x43, 0x35, 0xBE, 0x82, 0x90, 0x42, 0xFB, 0x3C, 0xC3, 0x63, 0xCB,\n0x61, 0xD9, 0x3E, 0x4A, 0x78, 0x94, 0x3D, 0x84, 0xF2, 0xAE, 0xEE, 0x21, 0xBB, 0x82, 0xA8, 0xF6,\n0x02, 0x46, 0x2A, 0x5F, 0x8D, 0xEB, 0xD4, 0x41, 0xAA, 0x8A, 0x07, 0x03, 0x3F, 0xC2, 0xAB, 0x92,\n0x26, 0xCB, 0x57, 0xE5, 0x44, 0x44, 0xE0, 0x23, 0xB5, 0x0C, 0x73, 0x15, 0xDE, 0x1F, 0x40, 0x31,\n0x42, 0x0A, 0xF9, 0x87, 0xEC, 0x21, 0x5C, 0x7E, 0xC5, 0x0A, 0xB3, 0xC9, 0x42, 0xEB, 0xB9, 0x25,\n0xFF, 0xD8, 0x9B, 0x87, 0xEF, 0x63, 0x7C, 0x60, 0xCB, 0xD0, 0x49, 0x73, 0xDB, 0xF0, 0xC9, 0x2F,\n0xF2, 0x86, 0x48, 0x7F, 0x64, 0x6B, 0x28, 0x9E, 0x30, 0x70, 0x44, 0xA4, 0xD8, 0x4B, 0xF1, 0x15,\n0xA2, 0x74, 0x4E, 0x79, 0x97, 0xDA, 0x48, 0xC1, 0x44, 0x72, 0x03, 0x21, 0xAF, 0xB4, 0x21, 0x64,\n0xEA, 0xF0, 0x91, 0x8F, 0x72, 0x53, 0xBD, 0xBA, 0x2E, 0x63, 0x15, 0x73, 0x7D, 0x16, 0xE5, 0xDD,\n0x92, 0x92, 0x83, 0xE0, 0x1F, 0x15, 0x0F, 0xA1, 0xA7, 0x82, 0x7B, 0x54, 0x08, 0xF9, 0x4A, 0xF1,\n0x0F, 0x3C, 0x24, 0x57, 0x05, 0x8F, 0x61, 0xBE, 0x65, 0x16, 0x52, 0xF4, 0x0E, 0x94, 0x7B, 0x48,\n0x87, 0x94, 0x4C, 0x9D, 0xF5, 0xE4, 0xBB, 0x98, 0xA7, 0x36, 0xB2, 0x4E, 0x45, 0x23, 0xE7, 0x23,\n0x42, 0x2A, 0x37, 0x0F, 0x9F, 0x91, 0x8B, 0x7C, 0x08, 0x21, 0xFB, 0x8C, 0x1C, 0xF6, 0x1C, 0x0D,\n0x8A, 0x59, 0xE4, 0x1E, 0x36, 0xB2, 0xFE, 0xE0, 0x02, 0xBE, 0x93, 0x34, 0xFF, 0x40, 0x85, 0xF6,\n0xB9, 0x8D, 0xCC, 0x42, 0xD0, 0x44, 0xFA, 0x91, 0x23, 0x52, 0x4A, 0x3F, 0x6A, 0x43, 0xE3, 0x03,\n0x71, 0x71, 0x2F, 0xE9, 0x47, 0x95, 0x90, 0x70, 0x90, 0x97, 0x49, 0xED, 0x2B, 0xC6, 0x41, 0xE0,\n0x28, 0x1F, 0xC4, 0x7D, 0x92, 0x7F, 0x30, 0xA6, 0xF8, 0x60, 0x52, 0xEE, 0x45, 0xE5, 0x77, 0x87,\n0x3C, 0x04, 0x0F, 0x21, 0x3D, 0xAF, 0x12, 0x72, 0x84, 0x08, 0xFE, 0xC1, 0xFA, 0x82, 0x18, 0xBA,\n0x70, 0x3E, 0x92, 0x7F, 0x3C, 0x46, 0x59, 0x89, 0xE1, 0x1D, 0x8B, 0x54, 0xEE, 0x6D, 0xBB, 0xA0,\n0xBD, 0x5C, 0xBE, 0x0A, 0x1C, 0x0E, 0x36, 0xB2, 0x1F, 0x8F, 0xEE, 0x21, 0x7C, 0xF7, 0x28, 0x4F,\n0x3C, 0x94, 0x38, 0xA1, 0xDC, 0xDB, 0x4B, 0xF9, 0x07, 0xCA, 0xDA, 0x1F, 0x53, 0xDA, 0x9C, 0x1A,\n0x48, 0x19, 0x0F, 0x1A, 0x22, 0x1A, 0x1F, 0x8C, 0xAF, 0x24, 0x3E, 0x10, 0x2D, 0xBD, 0x81, 0x0F,\n0xEC, 0x63, 0x44, 0x51, 0xC5, 0x7A, 0x51, 0x74, 0xC9, 0x43, 0x67, 0x34, 0x14, 0x11, 0xD1, 0xBE,\n0xB9, 0x9A, 0x88, 0xB2, 0xDC, 0x1E, 0xCC, 0x27, 0xD5, 0x5E, 0x2C, 0x64, 0x53, 0x7D, 0x7F, 0xFC,\n0x76, 0xD2, 0x54, 0xEF, 0x3A, 0x81, 0x90, 0xA2, 0x7F, 0x00, 0x47, 0x08, 0x33, 0xA1, 0x71, 0x4D,\n0x4E, 0x9E, 0xCC, 0xC3, 0xF7, 0xB6, 0xB3, 0xDB, 0x7F, 0x2E, 0x66, 0x3D, 0x39, 0x1D, 0x4F, 0x3E,\n0x28, 0xF2, 0xC6, 0xAF, 0xA2, 0x65, 0x98, 0x2C, 0x04, 0xFB, 0xC0, 0x01, 0x13, 0x31, 0x78, 0x48,\n0xD6, 0xFE, 0x98, 0xF6, 0x10, 0xE2, 0x2B, 0xCA, 0x21, 0x25, 0x0B, 0xDF, 0xE6, 0x1E, 0x02, 0x1E,\n0xA5, 0xE9, 0x43, 0xE2, 0x83, 0x85, 0xA3, 0xE1, 0x81, 0x92, 0x81, 0xE0, 0x1F, 0x35, 0x85, 0x83,\n0xD4, 0xC5, 0x65, 0x27, 0xA1, 0x9D, 0xA4, 0xE3, 0xAB, 0xDB, 0x9B, 0x08, 0x21, 0x48, 0xAD, 0x23,\n0x12, 0x2A, 0xD9, 0xFB, 0xA6, 0x50, 0xEE, 0xBD, 0xC5, 0x3F, 0xA6, 0x05, 0x20, 0xF7, 0xE8, 0x38,\n0xF1, 0x58, 0xF8, 0x11, 0x3D, 0x75, 0x9B, 0xE4, 0x1F, 0x6E, 0x20, 0x9C, 0xD6, 0x6D, 0xA6, 0x5C,\n0x41, 0x68, 0x88, 0x08, 0xFE, 0x11, 0x9E, 0x34, 0x20, 0x92, 0x6C, 0x64, 0x01, 0x95, 0xF6, 0x53,\n0x8F, 0x7F, 0xB8, 0x66, 0xF0, 0x4C, 0x06, 0x05, 0xF7, 0x52, 0xFE, 0x81, 0x02, 0x0F, 0xDA, 0x1F,\n0x55, 0x5D, 0x90, 0x86, 0x54, 0xDF, 0x57, 0x1A, 0x22, 0xF0, 0x21, 0x00, 0x72, 0xE4, 0x21, 0x3B,\n0x49, 0x87, 0x64, 0x61, 0x58, 0xD4, 0x82, 0x1C, 0x10, 0x4D, 0xE4, 0x1F, 0x8A, 0xE0, 0x63, 0x29,\n0x00, 0x62, 0x84, 0xE0, 0x1F, 0x93, 0x78, 0xB8, 0x1D, 0x9B, 0x7B, 0xDB, 0xCB, 0x5E, 0xF3, 0x0E,\n0x44, 0x53, 0xBD, 0xD3, 0x74, 0xD6, 0xFE, 0x08, 0x2E, 0x08, 0xE2, 0xE3, 0x00, 0xB9, 0x7D, 0x2C,\n0x1E, 0x59, 0xAA, 0x51, 0x5A, 0xA2, 0xCE, 0xE4, 0xFE, 0xF1, 0x7E, 0x0F, 0xA1, 0xFD, 0xE1, 0x66,\n0x91, 0x2C, 0xE3, 0xC8, 0xAA, 0x92, 0x61, 0x25, 0x07, 0x81, 0x8A, 0x05, 0xCF, 0xF8, 0xB0, 0xC7,\n0x46, 0x1A, 0xF0, 0xC0, 0x43, 0x4A, 0xE5, 0xDD, 0x72, 0x2E, 0x92, 0x7A, 0x57, 0x53, 0x78, 0x90,\n0xAA, 0xE3, 0x1F, 0x02, 0x22, 0xF0, 0x21, 0x13, 0xC2, 0xE5, 0xBB, 0x1F, 0x09, 0xC8, 0xAF, 0x9A,\n0x7F, 0x10, 0x65, 0xD1, 0xFE, 0x50, 0x46, 0xF2, 0x8F, 0xBA, 0x83, 0xB0, 0x27, 0xFD, 0x40, 0xDB,\n0xF1, 0x38, 0x6B, 0xEF, 0x21, 0x9D, 0x2C, 0x8B, 0xCD, 0x33, 0xFF, 0x00, 0x8F, 0x38, 0x13, 0x73,\n0x7F, 0x88, 0xC4, 0x80, 0xD4, 0xC0, 0xF3, 0x73, 0x0A, 0x5A, 0xE1, 0x2F, 0x0A, 0x21, 0x95, 0xF6,\n0x07, 0xCD, 0x95, 0x60, 0x0E, 0xAB, 0xF2, 0x5A, 0xD6, 0x3A, 0x4F, 0x3A, 0x80, 0x64, 0xE1, 0x33,\n0xFB, 0xB7, 0x90, 0x7E, 0x48, 0x3A, 0xC9, 0x3F, 0x46, 0x83, 0x2C, 0x7E, 0x8A, 0xF4, 0xBC, 0x8A,\n0x07, 0xEF, 0xEB, 0x0A, 0xFF, 0x10, 0x46, 0x22, 0x64, 0xA7, 0x6A, 0xFF, 0x35, 0x72, 0x92, 0x7D,\n0xE8, 0x80, 0xD0, 0x10, 0xD9, 0x35, 0x48, 0x8C, 0xAF, 0x88, 0xB2, 0x82, 0x0F, 0x05, 0x0F, 0x1B,\n0x43, 0x16, 0x32, 0xE9, 0x1D, 0xA8, 0x9B, 0xC1, 0x87, 0xA2, 0x73, 0xFF, 0xC0, 0x3A, 0x48, 0x74,\n0x8F, 0xF4, 0x6A, 0x18, 0x70, 0x46, 0xA7, 0x3B, 0x98, 0xC0, 0xB0, 0x69, 0x7F, 0x83, 0x62, 0xD6,\n0x8F, 0x36, 0xE5, 0x61, 0x8A, 0xBE, 0x63, 0xCC, 0x33, 0x2D, 0xD8, 0xD9, 0xA6, 0x0F, 0x3A, 0xD8,\n0x01, 0x4C, 0x96, 0x4F, 0x45, 0x22, 0xD2, 0x35, 0x68, 0x36, 0x9B, 0xBB, 0x7F, 0xD4, 0x72, 0x90,\n0xF8, 0xB3, 0xAD, 0x7F, 0x42, 0x64, 0x43, 0xF9, 0x4A, 0xF0, 0x11, 0xD1, 0x3F, 0x68, 0x88, 0xC0,\n0x87, 0x96, 0x87, 0xE8, 0x7C, 0x3C, 0x00, 0x88, 0x22, 0x03, 0xE4, 0x32, 0xD7, 0x6E, 0x7C, 0x18,\n0x1F, 0xAA, 0xBC, 0x24, 0xB1, 0xC4, 0x85, 0x15, 0x3B, 0xC6, 0x3F, 0x04, 0x6D, 0x8C, 0x90, 0xEB,\n0xAE, 0x45, 0xF8, 0x87, 0x26, 0xFF, 0x1F, 0x34, 0xAF, 0x7D, 0xA4, 0xFD, 0x3E, 0xAE, 0xE2, 0x4E,\n0xBF, 0xED, 0x3D, 0xC0, 0xBF, 0xCB, 0xC1, 0x6E, 0xA5, 0x51, 0x9C, 0x4F, 0x46, 0x97, 0x3A, 0xAC,\n0x51, 0x09, 0xC8, 0xA4, 0x1C, 0x20, 0x3D, 0xCB, 0xCB, 0x72, 0xD7, 0x4D, 0xAF, 0x4C, 0x37, 0xEB,\n0xDE, 0x9A, 0x64, 0x6F, 0xAC, 0xCA, 0x87, 0x97, 0x7B, 0xB5, 0x13, 0x2B, 0x0D, 0x91, 0xCB, 0x71,\n0x1A, 0x4A, 0x77, 0xBD, 0x20, 0xC1, 0x41, 0x7E, 0xD5, 0xF5, 0xCB, 0xDF, 0x4D, 0xBA, 0xFC, 0xE6,\n0x9B, 0x9D, 0x3C, 0x4C, 0x77, 0x77, 0x37, 0x77, 0x0D, 0xBA, 0xF9, 0xD4, 0x26, 0x2B, 0xBB, 0xDC,\n0xEA, 0x73, 0x36, 0xBB, 0xB7, 0xB8, 0xFC, 0x5E, 0x1C, 0x46, 0xD3, 0xE2, 0x8F, 0xE7, 0x27, 0xD3,\n0x1F, 0x4F, 0x4F, 0xBE, 0xF7, 0x43, 0x9B, 0x1C, 0x0F, 0x7F, 0xC0, 0xE1, 0x4F, 0xDF, 0x35, 0xE9,\n0x27, 0x7F, 0x30, 0x4D, 0x7F, 0xD8, 0x58, 0xD8, 0x53, 0x6A, 0x18, 0xB3, 0x59, 0xD3, 0x8B, 0x33,\n0xFF, 0x54, 0xD0, 0x9B, 0x8F, 0xA2, 0x78, 0x5F, 0x25, 0x99, 0x7F, 0x34, 0xE9, 0xB2, 0x6D, 0x61,\n0xFE, 0xF2, 0xAB, 0x2E, 0x00, 0x51, 0xF8, 0x68, 0x7B, 0x1E, 0x66, 0x2F, 0x83, 0x07, 0x0A, 0x37,\n0x9F, 0x3B, 0x47, 0x44, 0x97, 0xC5, 0xB5, 0x5F, 0x36, 0xE0, 0xF1, 0xE7, 0x9F, 0x7F, 0xCE, 0x6F,\n0x1B, 0x34, 0x7C, 0x9F, 0xDC, 0x7D, 0x2F, 0xE2, 0xD1, 0xDF, 0x2F, 0x16, 0xF7, 0xB6, 0x32, 0xC5,\n0x61, 0x7F, 0xF3, 0x5F, 0xDA, 0xCE, 0xE7, 0xB5, 0x99, 0x2A, 0x8C, 0xC2, 0xB8, 0x12, 0xB1, 0xC5,\n0x2C, 0xB2, 0xA8, 0x74, 0x6B, 0x4B, 0xD1, 0x45, 0x2D, 0x9F, 0x45, 0xA4, 0x8B, 0x50, 0x37, 0x45,\n0x02, 0xD9, 0xE8, 0xC2, 0xFD, 0x07, 0x71, 0x11, 0xC8, 0xCE, 0x4D, 0x20, 0x88, 0x30, 0x6B, 0x41,\n0x70, 0xE9, 0x1F, 0xEB, 0x3B, 0x27, 0xEF, 0xF4, 0xF9, 0x72, 0x7B, 0xE7, 0xCE, 0x19, 0xC5, 0x33,\n0x37, 0x33, 0xD3, 0x18, 0x6B, 0x3A, 0x73, 0x9F, 0x39, 0xEF, 0x8F, 0x49, 0x7C, 0x0E, 0xBD, 0x7B,\n0xFE, 0xD6, 0x5C, 0xDE, 0xC5, 0xAB, 0x85, 0x87, 0x07, 0xC8, 0xCF, 0xBA, 0xB3, 0x64, 0x06, 0x22,\n0x17, 0xA1, 0x39, 0x7C, 0xC4, 0xB1, 0x3C, 0xFA, 0x5A, 0xF6, 0x15, 0x5E, 0x64, 0xF0, 0xA1, 0xE9,\n0x60, 0x8E, 0x3F, 0x3F, 0x8F, 0x89, 0x36, 0x07, 0x8F, 0xD0, 0xC2, 0x9E, 0xF2, 0x33, 0x00, 0x59,\n0xBC, 0xF4, 0x9A, 0xC3, 0x47, 0x48, 0xE6, 0xA0, 0xD1, 0xDE, 0x2A, 0x98, 0x84, 0x10, 0x07, 0x8F,\n0xDD, 0x5D, 0x3C, 0xDC, 0x53, 0x74, 0xBC, 0xBA, 0x0A, 0x42, 0x5C, 0x0F, 0x89, 0x87, 0xE4, 0xFB,\n0xC7, 0x6D, 0xE8, 0xF1, 0xD6, 0xBD, 0xC6, 0x8B, 0x8F, 0x9F, 0x83, 0x90, 0x77, 0x16, 0x23, 0x7A,\n0x6D, 0xC8, 0x73, 0x8F, 0x18, 0xFB, 0xC7, 0xFE, 0xED, 0xCC, 0xF1, 0x0F, 0x11, 0x32, 0x87, 0x8F,\n0x19, 0x84, 0xC4, 0x89, 0x9A, 0x45, 0x48, 0x4C, 0x03, 0x21, 0xA2, 0xF9, 0x31, 0x35, 0x42, 0x9A,\n0x68, 0x3E, 0x1F, 0xD2, 0xFF, 0xE1, 0x20, 0x2F, 0x92, 0xCF, 0x47, 0x4A, 0x7F, 0x6A, 0x10, 0x50,\n0xDB, 0x6A, 0xE8, 0xE7, 0x38, 0x26, 0x49, 0x88, 0x79, 0x24, 0xC5, 0x87, 0x3C, 0xC4, 0xE2, 0x43,\n0xA7, 0xF4, 0xCA, 0x23, 0x44, 0x7C, 0xF4, 0x93, 0x26, 0xD6, 0x2E, 0x1F, 0x02, 0x44, 0x84, 0x38,\n0x8C, 0x0C, 0x5F, 0x51, 0xFD, 0xCE, 0xA1, 0x23, 0x20, 0x4A, 0x6D, 0xCD, 0x00, 0x2B, 0x50, 0x95,\n0x7C, 0xFB, 0x98, 0x45, 0x48, 0x1C, 0xC6, 0x10, 0x84, 0x58, 0x7C, 0xC4, 0xDA, 0xF7, 0x8F, 0x7E,\n0x68, 0xF6, 0x7F, 0xDE, 0x1A, 0xC9, 0x50, 0xCE, 0x33, 0x1F, 0x10, 0x69, 0x06, 0x20, 0x9F, 0xF8,\n0x7C, 0x48, 0x36, 0x1F, 0xA9, 0x13, 0xE6, 0xB1, 0x2E, 0xB7, 0xB9, 0xC0, 0x87, 0x86, 0x87, 0x47,\n0xCA, 0xF5, 0x90, 0xFE, 0x9A, 0x77, 0x3A, 0xAB, 0x16, 0x1F, 0xC2, 0x03, 0x42, 0x2C, 0x3E, 0xD2,\n0x43, 0x7E, 0xDE, 0x4E, 0x4C, 0x5F, 0xF1, 0x91, 0xEA, 0x13, 0x11, 0xC3, 0x3F, 0x90, 0xE1, 0x1F,\n0x3F, 0x8B, 0x0F, 0x08, 0x71, 0xFD, 0xC3, 0x8E, 0xB2, 0xC4, 0x87, 0x4F, 0xC8, 0x92, 0x73, 0x65,\n0xF2, 0x91, 0x80, 0x68, 0x5E, 0x34, 0xC6, 0x9F, 0x22, 0x68, 0x81, 0x7C, 0x3C, 0x7C, 0x42, 0x74,\n0xAB, 0x89, 0x43, 0xC8, 0xE5, 0x0B, 0xF2, 0xF0, 0x40, 0x09, 0xC5, 0xE7, 0xE5, 0x76, 0x28, 0x5F,\n0x89, 0x8F, 0x1C, 0x21, 0x2F, 0xBE, 0x7A, 0xBA, 0x4B, 0x3D, 0x59, 0xF9, 0xC7, 0x95, 0xE4, 0x78,\n0x08, 0xFE, 0x21, 0x91, 0x87, 0x34, 0xF2, 0x0F, 0xC9, 0xF6, 0x10, 0xE6, 0x7B, 0x44, 0x5A, 0x16,\n0x20, 0x48, 0x0C, 0x78, 0xFE, 0xB1, 0x89, 0x87, 0xE5, 0x1F, 0xC8, 0xF5, 0x0F, 0x08, 0xF1, 0xFC,\n0x03, 0x0F, 0x31, 0xFD, 0x43, 0x03, 0x97, 0xA8, 0x8C, 0x9C, 0x3B, 0x8B, 0x0F, 0xE5, 0xF0, 0x81,\n0x16, 0x0E, 0x1F, 0x02, 0xC4, 0x20, 0xE4, 0xE5, 0x4C, 0x1E, 0x1F, 0x48, 0x35, 0xBB, 0xB4, 0x4C,\n0xB6, 0xE9, 0x1D, 0x83, 0x7D, 0x30, 0xBC, 0xF0, 0x0A, 0x19, 0xFE, 0x71, 0x35, 0x28, 0xAC, 0x64,\n0x72, 0x0A, 0x08, 0x0F, 0x64, 0xF9, 0x47, 0xDC, 0x24, 0x65, 0x7A, 0x48, 0x40, 0x21, 0xE1, 0x21,\n0x06, 0x1F, 0xC8, 0xE4, 0x63, 0xF3, 0xEA, 0x21, 0x9E, 0x7D, 0xD8, 0x61, 0x56, 0x5C, 0x6B, 0x00,\n0xE4, 0x70, 0x9C, 0xD2, 0x70, 0x1D, 0x5B, 0x9A, 0x1E, 0x12, 0x13, 0x80, 0x31, 0x5C, 0x49, 0xAB,\n0x01, 0x96, 0xFE, 0xD1, 0xE2, 0x5C, 0x16, 0x1F, 0xC8, 0xE0, 0x43, 0x80, 0x84, 0x3C, 0x3E, 0x90,\n0xC5, 0x07, 0x12, 0x07, 0x78, 0x26, 0x17, 0x05, 0xF2, 0xF3, 0xB3, 0x31, 0x19, 0x5F, 0x0D, 0xC7,\n0xDD, 0xCA, 0x43, 0x0E, 0xF7, 0x87, 0x2B, 0x14, 0x67, 0xF8, 0xB6, 0xED, 0x1F, 0xE5, 0xA4, 0x99,\n0xE4, 0x23, 0xE0, 0xE0, 0x9A, 0xFD, 0xD8, 0xF6, 0x90, 0x3E, 0xDD, 0xFE, 0xF5, 0x9C, 0x90, 0x06,\n0x1D, 0x4A, 0x3F, 0x0C, 0x42, 0xE0, 0x43, 0x78, 0xE8, 0x2D, 0xC5, 0x88, 0x37, 0xE4, 0xF9, 0x07,\n0xB2, 0xF8, 0x00, 0x91, 0x09, 0x13, 0xB9, 0x2B, 0x65, 0xF1, 0xC1, 0xD0, 0x54, 0xA9, 0x46, 0x57,\n0x72, 0x97, 0x45, 0x29, 0x83, 0x0F, 0xDF, 0x43, 0xAE, 0x3F, 0x01, 0x90, 0x4F, 0x2C, 0x3E, 0x90,\n0xC7, 0x07, 0x12, 0x08, 0x03, 0x10, 0xF9, 0x27, 0x7F, 0x33, 0x64, 0x61, 0xEB, 0xE2, 0xA8, 0x84,\n0xEE, 0x0C, 0xFF, 0xB0, 0x3C, 0x64, 0xB9, 0x3B, 0x0C, 0xF9, 0x07, 0x84, 0x34, 0xE7, 0x00, 0xB2,\n0x08, 0x79, 0xCC, 0xF9, 0xD8, 0xE3, 0x91, 0xB5, 0xAC, 0xBD, 0x3C, 0xA4, 0xE9, 0x1F, 0x5B, 0xD3,\n0x43, 0x6A, 0xFA, 0xB9, 0x81, 0x47, 0xBC, 0x07, 0xEC, 0xCC, 0xF0, 0x90, 0x8B, 0x8A, 0x26, 0xCA,\n0x57, 0xC5, 0xB1, 0x34, 0xF8, 0x30, 0x3C, 0x84, 0xF4, 0xA3, 0x42, 0x48, 0x48, 0x93, 0xE5, 0x2C,\n0x39, 0xCF, 0xF4, 0xBC, 0x94, 0xC1, 0x07, 0x6A, 0x36, 0x44, 0x16, 0xE2, 0x43, 0x80, 0x48, 0xD7,\n0x8B, 0x71, 0x3E, 0xF8, 0xD5, 0x68, 0x0E, 0x1E, 0xD9, 0x10, 0xC1, 0x3C, 0xB2, 0x82, 0x55, 0xF7,\n0x0F, 0x65, 0x69, 0x46, 0x7E, 0x6E, 0x9A, 0xC8, 0x81, 0x00, 0x0B, 0x0F, 0x31, 0xF9, 0x80, 0x90,\n0xD1, 0xF6, 0x60, 0x3A, 0xC7, 0x5E, 0x5B, 0x8D, 0x78, 0x0A, 0x0F, 0xA9, 0xF0, 0x81, 0x7F, 0x0C,\n0xB0, 0xBC, 0x33, 0xFC, 0xC3, 0xF1, 0x90, 0x6D, 0xFF, 0x1F, 0x47, 0x9B, 0x93, 0xB5, 0x3D, 0x5A,\n0x7C, 0x20, 0x83, 0x0F, 0xD3, 0x43, 0x4A, 0x38, 0xB4, 0x31, 0xD2, 0x0F, 0x06, 0x25, 0x4F, 0xCD,\n0x9F, 0xD7, 0x45, 0xAB, 0x45, 0x4D, 0x16, 0x1F, 0xA8, 0xE9, 0x1F, 0x00, 0x22, 0x42, 0xC6, 0x5E,\n0xD9, 0xBD, 0x54, 0x65, 0x01, 0x82, 0xD2, 0x42, 0x0A, 0xD3, 0x24, 0x3D, 0x2F, 0x09, 0xB1, 0xF9,\n0x68, 0x17, 0xB3, 0x74, 0x0A, 0x2B, 0x67, 0xD5, 0x4A, 0x3F, 0x50, 0xCB, 0x3F, 0x7E, 0xD1, 0x43,\n0x9B, 0xD7, 0x44, 0x04, 0x0F, 0x29, 0xF8, 0xA8, 0x7B, 0xC2, 0x58, 0x2D, 0x4B, 0xB2, 0x08, 0xD9,\n0x6A, 0x3C, 0x0E, 0xEF, 0x65, 0x1F, 0x83, 0x64, 0xC4, 0xE4, 0x03, 0x42, 0x4C, 0x3E, 0xDA, 0x89,\n0x88, 0x70, 0xA8, 0xA8, 0xD5, 0xFE, 0xA8, 0x8D, 0x3F, 0x21, 0x23, 0x84, 0x83, 0x2C, 0xEA, 0x72,\n0xF0, 0x40, 0x5D, 0x93, 0x0F, 0x00, 0x11, 0x21, 0x0E, 0x1F, 0xC8, 0xE3, 0x03, 0xE9, 0x0A, 0xF0,\n0xCD, 0x9F, 0x04, 0x5B, 0xDA, 0x70, 0x1C, 0x4A, 0x44, 0xC6, 0xF9, 0x58, 0xFA, 0x84, 0x80, 0x87,\n0xE1, 0x21, 0xF8, 0x87, 0xE1, 0x21, 0x94, 0x77, 0xD1, 0x2F, 0x39, 0x23, 0xF3, 0xB6, 0x93, 0xED,\n0x58, 0xF9, 0x0A, 0x51, 0xCC, 0x32, 0xF1, 0x80, 0x90, 0x76, 0xF9, 0x0A, 0x43, 0xC3, 0x43, 0xAA,\n0x7C, 0xF8, 0x84, 0x94, 0x7C, 0x4C, 0x14, 0xB3, 0x76, 0x85, 0x7F, 0xB0, 0xEF, 0xFA, 0x07, 0x61,\n0x16, 0xF7, 0xEB, 0x91, 0xB9, 0x2E, 0xC6, 0x64, 0xF1, 0x41, 0x94, 0xB5, 0x68, 0xF1, 0x01, 0x20,\n0x10, 0x52, 0xB6, 0xCF, 0x47, 0xE5, 0xF1, 0x81, 0x08, 0x21, 0xF5, 0xA7, 0xD2, 0x00, 0x19, 0x19,\n0x75, 0x3C, 0x96, 0x63, 0x88, 0xEC, 0x2C, 0x3E, 0xB8, 0xEE, 0x8D, 0xB6, 0xCF, 0x7D, 0x0F, 0xD1,\n0x24, 0xD4, 0xD5, 0x9A, 0xC9, 0x58, 0x2F, 0x66, 0xA9, 0x41, 0xF1, 0xD6, 0x3F, 0xC8, 0x43, 0x6A,\n0x0D, 0x91, 0x78, 0x76, 0x54, 0xD5, 0xF6, 0x47, 0xC2, 0x31, 0xBC, 0x2B, 0x8C, 0xED, 0xD6, 0xE2,\n0x03, 0x35, 0xDA, 0x1F, 0x92, 0x91, 0x88, 0x9C, 0xCE, 0x93, 0x06, 0x7B, 0xA9, 0x76, 0xFB, 0xA3,\n0x1C, 0xE4, 0xAD, 0xB9, 0x22, 0x3F, 0xF7, 0x09, 0x69, 0x4C, 0xE3, 0x31, 0x3E, 0x00, 0x04, 0xFD,\n0xF0, 0x52, 0xA6, 0x1F, 0x4D, 0x79, 0x78, 0xA0, 0xFC, 0xFB, 0x72, 0x23, 0xFF, 0x88, 0x65, 0x74,\n0x78, 0xF1, 0x15, 0x84, 0x58, 0x7C, 0x80, 0x48, 0x8D, 0x0F, 0x9F, 0x90, 0xD2, 0x3F, 0x7E, 0x61,\n0x7E, 0x6E, 0x68, 0x88, 0x14, 0xFE, 0x51, 0xC9, 0x40, 0x48, 0xD5, 0xDF, 0xE4, 0x1F, 0x15, 0x40,\n0xF8, 0x05, 0xC2, 0xA2, 0xE6, 0x1F, 0x51, 0xBB, 0xD2, 0x1E, 0xAA, 0x46, 0x59, 0x17, 0xC8, 0x22,\n0xA4, 0x7D, 0x2C, 0xEB, 0xFE, 0x51, 0x8A, 0xAB, 0x5B, 0xB3, 0x7C, 0x55, 0x0E, 0x31, 0xA1, 0x75,\n0xE8, 0x73, 0xF0, 0x18, 0x57, 0x9D, 0x0F, 0x9F, 0x90, 0x4F, 0x24, 0x00, 0x41, 0x96, 0x7F, 0x20,\n0x8F, 0x0F, 0x74, 0x43, 0x6C, 0xA5, 0x75, 0x8B, 0x8F, 0x50, 0xED, 0xF6, 0xAB, 0xD4, 0x13, 0xBB,\n0x68, 0x06, 0x1F, 0x8A, 0x17, 0x9C, 0xFC, 0x1C, 0x7D, 0x51, 0xC4, 0x57, 0x84, 0xFB, 0x31, 0x22,\n0x4B, 0xDF, 0xFF, 0x82, 0x85, 0x9C, 0x7B, 0x88, 0xB6, 0xCF, 0x4D, 0x95, 0x37, 0x66, 0x65, 0xA1,\n0xCB, 0x09, 0xB3, 0xE0, 0x83, 0xE2, 0xD5, 0x60, 0x6B, 0xE9, 0x24, 0x21, 0xDB, 0x3F, 0x40, 0xA4,\n0xF4, 0x0F, 0x9F, 0x90, 0xE5, 0xEE, 0x6E, 0x42, 0x3E, 0x1F, 0x20, 0x42, 0x80, 0xB5, 0x98, 0x92,\n0xC5, 0x07, 0x1A, 0xE1, 0x03, 0x40, 0x50, 0xE1, 0x1F, 0x53, 0xBF, 0xDA, 0xE3, 0x03, 0x89, 0x8B,\n0xCC, 0xD4, 0x27, 0x0F, 0x0A, 0x61, 0x16, 0xED, 0xF3, 0xA6, 0x76, 0xCB, 0x0F, 0xCE, 0x11, 0x7C,\n0x8C, 0x23, 0x52, 0xB6, 0xCF, 0x27, 0x54, 0xF2, 0x91, 0x8E, 0x51, 0x94, 0x8D, 0x12, 0x1C, 0x3C,\n0x84, 0xF2, 0x55, 0x3F, 0xC6, 0x13, 0x11, 0xF8, 0x78, 0xD7, 0xF4, 0x0F, 0x08, 0x29, 0xFD, 0x23,\n0x68, 0x48, 0x2A, 0x42, 0x00, 0xA3, 0x27, 0x2D, 0xFF, 0x40, 0x95, 0xF6, 0x87, 0x4F, 0xC8, 0x07,\n0xA7, 0xE4, 0xE9, 0x2C, 0xBC, 0x62, 0xCF, 0xC9, 0xCF, 0x19, 0xAF, 0x9D, 0x41, 0x8D, 0xC5, 0xB4,\n0x1C, 0x3E, 0xD0, 0xE2, 0x0D, 0x1F, 0xEF, 0x73, 0x0C, 0x80, 0x20, 0x8B, 0x0F, 0x54, 0xF0, 0x71,\n0xD3, 0x7C, 0x70, 0xFF, 0x7B, 0x6C, 0x9B, 0xF6, 0x41, 0x31, 0x0B, 0x3E, 0x96, 0x1C, 0xE2, 0x51,\n0x1D, 0x11, 0xA7, 0xB4, 0x41, 0x88, 0x15, 0x5F, 0xA1, 0x73, 0x3E, 0x36, 0x79, 0xAD, 0xCE, 0x88,\n0x7F, 0xC8, 0x8B, 0x65, 0x27, 0xA7, 0x96, 0x21, 0x1E, 0x52, 0xCE, 0xF1, 0xBA, 0x87, 0x48, 0x13,\n0xFE, 0xC1, 0x2F, 0xC0, 0xA0, 0xC8, 0x3F, 0x70, 0x10, 0x51, 0x92, 0x9B, 0xF4, 0x90, 0xC2, 0x3E,\n0x6C, 0x0F, 0x29, 0x4A, 0x81, 0xF5, 0x9C, 0xCE, 0x88, 0xAF, 0xC6, 0xCA, 0xBD, 0xB4, 0x3F, 0x1A,\n0x83, 0x00, 0x6B, 0xE1, 0xC8, 0xE2, 0x03, 0x8D, 0xF8, 0x47, 0x05, 0x10, 0x1A, 0x22, 0xDE, 0x6F,\n0xB6, 0xFD, 0x23, 0x11, 0x51, 0x12, 0x82, 0x7F, 0x78, 0x84, 0xD0, 0x1E, 0x04, 0x8F, 0x65, 0x83,\n0x90, 0xDD, 0xF2, 0x8A, 0xF6, 0x87, 0xE7, 0x21, 0xDE, 0xA4, 0x19, 0xF8, 0xC8, 0x28, 0x2A, 0x4B,\n0xBC, 0xD2, 0x9E, 0xE0, 0x5F, 0xA8, 0xA8, 0x65, 0x98, 0x1E, 0x52, 0xBA, 0x41, 0x33, 0x0F, 0x89,\n0x75, 0x5D, 0x40, 0x03, 0x21, 0x65, 0xFB, 0x7C, 0xA3, 0x15, 0xCD, 0x74, 0x6D, 0xF6, 0xA7, 0xBD,\n0x47, 0xF8, 0xB0, 0x54, 0x94, 0x77, 0x27, 0x11, 0x19, 0x0C, 0xFC, 0xCE, 0xD1, 0xEE, 0xCE, 0x49,\n0xCF, 0x19, 0x83, 0x87, 0x88, 0x0F, 0x47, 0xF0, 0x61, 0x89, 0xF4, 0x5C, 0xFE, 0x51, 0x01, 0x04,\n0x42, 0x68, 0x0F, 0xCE, 0x20, 0x04, 0x08, 0x1A, 0x5B, 0xED, 0x84, 0xE4, 0x1F, 0xB3, 0x08, 0x29,\n0x90, 0x58, 0xB6, 0x3D, 0x64, 0x79, 0xCA, 0x31, 0x1C, 0x42, 0xB0, 0x0F, 0x8F, 0x10, 0xDD, 0x9E,\n0x98, 0x5E, 0x51, 0x5E, 0xAF, 0xC9, 0x4A, 0xF2, 0x87, 0x47, 0x35, 0xD5, 0xE5, 0x1F, 0x18, 0x07,\n0xBB, 0x15, 0x42, 0x24, 0x50, 0xA8, 0x9B, 0x07, 0x1E, 0x22, 0xFA, 0x6E, 0x33, 0xFF, 0x40, 0x69,\n0x1F, 0x31, 0xE0, 0xB5, 0xD7, 0x17, 0xF0, 0xE1, 0x7B, 0x88, 0x77, 0x28, 0xF9, 0x0C, 0x55, 0xD5,\n0x35, 0xB4, 0x46, 0x0A, 0x96, 0x29, 0xEF, 0x7A, 0x43, 0xFA, 0x73, 0xE1, 0xCA, 0xC2, 0x83, 0x72,\n0x2F, 0xED, 0xF3, 0x96, 0x83, 0xE0, 0x21, 0xFC, 0x66, 0x8B, 0x10, 0x8F, 0x0E, 0x89, 0xF6, 0xB9,\n0x31, 0x92, 0x10, 0xFC, 0xA3, 0x81, 0x07, 0x4D, 0xF5, 0x83, 0xFC, 0xC3, 0x24, 0x84, 0xF4, 0xC3,\n0x51, 0x86, 0x57, 0x5C, 0x9C, 0xB9, 0x5E, 0x43, 0x0D, 0xD7, 0xEC, 0xCD, 0x16, 0xFF, 0x68, 0x24,\n0x21, 0x78, 0x44, 0xE0, 0x31, 0x2A, 0x40, 0xC3, 0x43, 0x82, 0x8F, 0x47, 0x2C, 0xEC, 0xE4, 0x1F,\n0xBF, 0x08, 0x11, 0xBD, 0x39, 0xFD, 0xBC, 0xA7, 0x41, 0xF3, 0xC5, 0x5F, 0x17, 0xC8, 0xF2, 0x10,\n0xF8, 0x30, 0x08, 0xA9, 0x86, 0x57, 0xA3, 0xC1, 0x31, 0x7C, 0x58, 0x43, 0x1E, 0xB2, 0xF0, 0x05,\n0x1F, 0x36, 0x21, 0xF0, 0x51, 0x03, 0x04, 0x42, 0xE0, 0xC3, 0x24, 0xC4, 0xF3, 0x8E, 0x61, 0xDF,\n0x3A, 0x1A, 0x0C, 0xEC, 0x03, 0x35, 0x38, 0xD9, 0x71, 0x77, 0xA2, 0xE9, 0x21, 0xC8, 0x8A, 0xB2,\n0x32, 0x74, 0x21, 0xBC, 0xD7, 0x94, 0xC4, 0x37, 0xF6, 0xF9, 0x64, 0x16, 0xB3, 0x2A, 0x26, 0xD0,\n0xCA, 0x31, 0x00, 0xA4, 0x21, 0x30, 0xF9, 0xF0, 0xEE, 0x2B, 0xC2, 0x3D, 0x22, 0x3D, 0x5A, 0xFD,\n0x8F, 0x99, 0x88, 0xCC, 0x23, 0x04, 0x3E, 0x9C, 0x83, 0x59, 0xE5, 0x63, 0xFC, 0xDA, 0x46, 0x7C,\n0xE5, 0x46, 0x59, 0x8B, 0x39, 0x9A, 0x31, 0x89, 0x95, 0x6F, 0x8B, 0x8F, 0x16, 0x20, 0x10, 0xC2,\n0xAF, 0x76, 0xE4, 0xE5, 0x1F, 0x88, 0xFC, 0xDC, 0xF3, 0x10, 0xF9, 0x07, 0x47, 0x7A, 0x32, 0xCA,\n0xA2, 0xE8, 0x62, 0x11, 0x72, 0x61, 0x4B, 0x56, 0xC3, 0xD4, 0x3B, 0x39, 0xC5, 0x46, 0x33, 0x54,\n0xD3, 0x12, 0x74, 0xB8, 0x66, 0x6F, 0x9E, 0x09, 0x99, 0x26, 0x83, 0x2C, 0x6A, 0x57, 0x6E, 0x1E,\n0x92, 0xF9, 0x07, 0xEF, 0x28, 0x8D, 0x23, 0x77, 0x50, 0xDA, 0xDB, 0xCC, 0xAB, 0x01, 0x7C, 0x18,\n0x3A, 0xDC, 0x1F, 0x2B, 0x4C, 0xB4, 0x90, 0xA1, 0xBE, 0xEB, 0x8D, 0xC5, 0x3C, 0xBD, 0xCC, 0x23,\n0x44, 0x7C, 0x38, 0x80, 0xBC, 0xBF, 0xA6, 0x43, 0xE8, 0xA8, 0xB0, 0x08, 0x76, 0xD8, 0x7E, 0xA8,\n0x35, 0x57, 0x0D, 0x33, 0x0B, 0x51, 0xDB, 0x63, 0x19, 0xC3, 0xF0, 0x90, 0xA7, 0xDD, 0x4E, 0x15,\n0x5E, 0x4B, 0x7A, 0xE1, 0x77, 0x17, 0x73, 0x44, 0x39, 0x77, 0xA3, 0x35, 0xE1, 0x56, 0x46, 0xFD,\n0x84, 0x5C, 0x32, 0x90, 0xCD, 0x86, 0xC4, 0x81, 0x9D, 0xBA, 0xB6, 0xAC, 0x9B, 0xEE, 0xC1, 0x7A,\n0x73, 0xAA, 0x60, 0x89, 0xD3, 0x33, 0x4F, 0x23, 0x6D, 0xCF, 0x4A, 0xDB, 0xF0, 0x0E, 0x83, 0x71,\n0x5F, 0x3A, 0x44, 0xF6, 0xA1, 0x0C, 0x03, 0xD9, 0x55, 0x28, 0xD0, 0xE0, 0x89, 0xFF, 0xE0, 0x20,\n0xEB, 0xB9, 0x84, 0x68, 0x1E, 0x5F, 0x7A, 0xAB, 0xEE, 0xFA, 0xFA, 0xBD, 0x07, 0xC8, 0xF5, 0xFB,\n0xEB, 0xEB, 0xEB, 0x45, 0xE7, 0xFE, 0xE6, 0x78, 0x1B, 0x45, 0x24, 0xD5, 0x2A, 0x62, 0xC5, 0xB8,\n0xE9, 0xCC, 0xA3, 0x42, 0xB7, 0xF0, 0x2C, 0xBB, 0x6B, 0x5F, 0x9C, 0x76, 0x21, 0x3B, 0xC8, 0x3A,\n0x04, 0x1E, 0xB1, 0xF1, 0xFD, 0x83, 0x0B, 0xF2, 0xFE, 0x51, 0x1B, 0xCA, 0xBA, 0xFB, 0x5F, 0xF6,\n0x8F, 0x62, 0x46, 0xD3, 0x55, 0xD7, 0x72, 0xF1, 0x11, 0xFD, 0x10, 0x26, 0xB5, 0x25, 0x10, 0x31,\n0x9A, 0x85, 0x22, 0x04, 0x22, 0x64, 0x1C, 0xA4, 0x47, 0x7A, 0x9B, 0xF9, 0xC4, 0x20, 0x9F, 0x90,\n0xFE, 0xEA, 0x61, 0x12, 0xA2, 0x5E, 0xC8, 0x2E, 0x04, 0x09, 0x35, 0x52, 0xD0, 0x72, 0x5E, 0x0E,\n0x12, 0x8B, 0x26, 0xCE, 0x3C, 0x3E, 0x7A, 0x13, 0xB9, 0x8C, 0x99, 0xFC, 0x55, 0xCC, 0xFF, 0xAF,\n0xC6, 0xF7, 0x14, 0x05, 0xFD, 0xD0, 0x4F, 0x7B, 0x07, 0x90, 0xFE, 0x75, 0xC1, 0x88, 0xAA, 0x58,\n0x97, 0x5D, 0x2C, 0xB9, 0x7E, 0xD1, 0x6F, 0x8A, 0x9D, 0xAF, 0xBA, 0x61, 0xAF, 0x7F, 0x5A, 0xDF,\n0x06, 0x3C, 0xC6, 0x03, 0x5B, 0xF8, 0x49, 0xB9, 0x47, 0x86, 0x2A, 0x2F, 0x6A, 0x78, 0xC8, 0x71,\n0x27, 0x89, 0x10, 0x93, 0x8F, 0x90, 0x0B, 0x08, 0x55, 0x22, 0x8D, 0x22, 0xEF, 0x78, 0xBB, 0xDF,\n0xB8, 0x8B, 0x17, 0x58, 0xC0, 0xC2, 0xD5, 0xAF, 0xF0, 0x91, 0x84, 0x28, 0xAC, 0x1B, 0xDE, 0x0E,\n0x69, 0x88, 0xE0, 0x05, 0x8F, 0x99, 0x84, 0x70, 0x98, 0x7C, 0x3E, 0x62, 0xD5, 0x38, 0x3B, 0x4B,\n0xAD, 0xF2, 0x41, 0x17, 0xDD, 0x1A, 0xBA, 0xAE, 0xFA, 0x84, 0x0C, 0xFF, 0x3F, 0x42, 0x5D, 0xC4,\n0x99, 0xC4, 0xF5, 0xBD, 0xC8, 0xA2, 0xAF, 0x4F, 0xF3, 0x7E, 0x1C, 0x10, 0xF8, 0x48, 0x42, 0x4E,\n0x11, 0x5C, 0xFF, 0x5B, 0xB4, 0x09, 0x2E, 0x2E, 0x3B, 0x90, 0x49, 0x07, 0x91, 0x81, 0x68, 0x40,\n0x03, 0x1B, 0x7E, 0x4C, 0xA5, 0x7F, 0x68, 0x65, 0x19, 0x08, 0xDD, 0xA4, 0x1D, 0xF6, 0x31, 0xEE,\n0x1F, 0xBB, 0x28, 0xA3, 0x24, 0x21, 0x87, 0x83, 0xC9, 0x87, 0xE4, 0xF3, 0x81, 0x88, 0x62, 0xCA,\n0x1E, 0x84, 0x6C, 0xE5, 0xF1, 0x95, 0x8F, 0xBD, 0xD1, 0x08, 0xB1, 0x61, 0x01, 0x2C, 0x5A, 0xE9,\n0x7C, 0x0E, 0x64, 0x73, 0xB2, 0x10, 0x32, 0x11, 0x3D, 0xCA, 0xA6, 0xBF, 0xCF, 0x47, 0x7A, 0x88,\n0xC3, 0xC7, 0x6E, 0x50, 0x71, 0x8A, 0x26, 0x6F, 0x7B, 0x37, 0x0D, 0x64, 0x98, 0x37, 0x3E, 0x1F,\n0x1A, 0x31, 0x57, 0xBF, 0xCA, 0xB9, 0x5A, 0xDF, 0xBB, 0x54, 0x18, 0xD4, 0xCF, 0x78, 0x08, 0x69,\n0x00, 0x92, 0x2F, 0xEB, 0x87, 0xAA, 0x00, 0x3D, 0x0F, 0x31, 0x4E, 0xA8, 0x85, 0x7B, 0xC8, 0x4A,\n0x72, 0x2F, 0xFE, 0x2B, 0x61, 0x20, 0x7F, 0xC7, 0xD0, 0x7B, 0xB9, 0x71, 0x42, 0x2C, 0xFD, 0x91,\n0xD2, 0x2C, 0x3E, 0x94, 0x87, 0x4C, 0x7A, 0xC8, 0xEE, 0x03, 0x5D, 0x7D, 0x79, 0xF0, 0xF8, 0xF0,\n0x09, 0xB9, 0x45, 0xDC, 0xC6, 0x7B, 0xEE, 0x1A, 0x64, 0xE8, 0xF0, 0x11, 0xBA, 0xDD, 0x16, 0x8D,\n0x0C, 0xAD, 0x0C, 0x24, 0x1A, 0x98, 0x88, 0x0F, 0x08, 0xC9, 0x77, 0xF1, 0xB8, 0xC7, 0x44, 0x72,\n0xCD, 0xBB, 0x83, 0x90, 0x2F, 0x2C, 0x3E, 0x7C, 0x42, 0x0E, 0x87, 0x9D, 0x54, 0xF3, 0x10, 0x6D,\n0xD8, 0x23, 0xBE, 0x9A, 0xD3, 0x2A, 0x44, 0x36, 0x21, 0x7F, 0x9F, 0x4C, 0x44, 0x93, 0x38, 0xE7,\n0x6F, 0xEE, 0xC4, 0xE3, 0xFC, 0x39, 0xF9, 0x47, 0x4E, 0xFC, 0x36, 0x20, 0x03, 0x48, 0xDA, 0xF6,\n0xCD, 0x74, 0xF1, 0xC5, 0x6F, 0x62, 0x47, 0xF4, 0xFD, 0x90, 0xDE, 0xA1, 0x0D, 0x88, 0x14, 0x19,\n0x3B, 0xCF, 0x45, 0x9A, 0x25, 0xA5, 0x87, 0x58, 0x7C, 0x80, 0xC8, 0xA4, 0x7F, 0xA0, 0x65, 0x10,\n0xD2, 0xF6, 0x90, 0xF2, 0xA4, 0xCF, 0xC8, 0x3F, 0x10, 0x3D, 0x3A, 0x7A, 0x10, 0x21, 0xF8, 0x40,\n0xCF, 0xEF, 0xB6, 0xC0, 0x61, 0x68, 0x3B, 0xE9, 0x1F, 0xFB, 0x82, 0x90, 0x3D, 0xC5, 0x2B, 0x19,\n0x09, 0x3D, 0xF4, 0x5C, 0xCD, 0xF2, 0x90, 0xE3, 0x95, 0x47, 0x08, 0xFE, 0x81, 0x64, 0xF5, 0x0D,\n0xC1, 0x87, 0xD5, 0x2C, 0x24, 0xBE, 0xB2, 0xA3, 0xAC, 0xB3, 0xFF, 0x63, 0xE7, 0xE5, 0x8B, 0x96,\n0xF4, 0x0B, 0x66, 0xB1, 0x1E, 0x9A, 0xC6, 0x9A, 0xF5, 0xD2, 0x7B, 0xD5, 0x7A, 0x4B, 0x40, 0xB0,\n0x0F, 0x65, 0x2A, 0xA9, 0x4F, 0xDE, 0xAB, 0x1D, 0x32, 0x30, 0xC7, 0x2F, 0xEC, 0x17, 0x3D, 0x23,\n0xEB, 0xD0, 0x12, 0x36, 0x32, 0xEA, 0x1A, 0x80, 0x43, 0x7C, 0x35, 0x4D, 0x48, 0x3C, 0xAC, 0xBB,\n0xDD, 0x01, 0x66, 0xA7, 0xF0, 0x0A, 0x1D, 0x9B, 0x84, 0x1C, 0x4E, 0xF6, 0x81, 0xBC, 0xF2, 0x6E,\n0xE9, 0x22, 0x4A, 0x84, 0x55, 0x42, 0x1A, 0x72, 0x75, 0x51, 0xF2, 0x4B, 0xF2, 0x81, 0xB6, 0x4E,\n0x3B, 0xC4, 0xCF, 0x40, 0x36, 0xA5, 0x84, 0x2A, 0xDC, 0xEE, 0x85, 0x2C, 0x85, 0xB5, 0xB9, 0x1E,\n0xF2, 0xE6, 0x70, 0xB5, 0xCB, 0xBB, 0x3B, 0x84, 0x87, 0x54, 0xFB, 0x84, 0xA4, 0x1F, 0xAE, 0x87,\n0xC4, 0x52, 0xCA, 0x49, 0x3F, 0x62, 0x1D, 0x2B, 0xFD, 0x90, 0x76, 0xD1, 0xC9, 0x39, 0x40, 0x45,\n0xEB, 0x2E, 0xF9, 0x48, 0xF5, 0x08, 0x8C, 0x02, 0xF2, 0x01, 0x1C, 0x19, 0x8F, 0xF5, 0x84, 0xBC,\n0xD2, 0x91, 0x21, 0x5B, 0x2E, 0xF2, 0x0F, 0xDE, 0x8A, 0x68, 0xAD, 0x16, 0x76, 0x81, 0xA5, 0xD4,\n0x7A, 0x9C, 0x10, 0xF1, 0x71, 0x57, 0xF9, 0xBE, 0x06, 0x02, 0xAD, 0x52, 0xB2, 0x8D, 0x82, 0x90,\n0xF1, 0x4F, 0x4C, 0x0D, 0x7C, 0x5C, 0xC4, 0xD0, 0x8A, 0x72, 0xAF, 0xE5, 0x1F, 0x17, 0x5C, 0x95,\n0xB5, 0xB3, 0xD1, 0x4E, 0x8C, 0xFC, 0xDA, 0xCF, 0x4D, 0xA9, 0xFD, 0x86, 0xEB, 0x3F, 0x5B, 0x5F,\n0xC2, 0x89, 0x5D, 0xF8, 0xC3, 0x43, 0xC8, 0x41, 0x32, 0x35, 0x17, 0xAB, 0x31, 0x6A, 0x9A, 0xC4,\n0x83, 0xA3, 0x23, 0x13, 0x39, 0x1C, 0x0C, 0x3E, 0x40, 0xA4, 0x11, 0x09, 0x73, 0x1B, 0x96, 0xE7,\n0x21, 0x44, 0xE5, 0x1D, 0x80, 0x18, 0x0E, 0x82, 0x8D, 0xFC, 0xAD, 0xF9, 0xCB, 0x23, 0x16, 0xC2,\n0x2D, 0xF8, 0x00, 0x92, 0x0A, 0x20, 0xF8, 0x47, 0x41, 0xC8, 0x29, 0x45, 0x27, 0xBE, 0xC2, 0x9B,\n0xD2, 0x3B, 0x62, 0x45, 0xC4, 0x57, 0x75, 0x8F, 0xDC, 0xE0, 0x1E, 0xFC, 0xBD, 0xBE, 0x7F, 0xD4,\n0x8B, 0x59, 0x14, 0x7F, 0x77, 0x15, 0x8D, 0x36, 0x44, 0x0E, 0x43, 0x7D, 0xD7, 0x32, 0x11, 0xF9,\n0x87, 0xEC, 0xA1, 0x94, 0xCC, 0x62, 0x0F, 0x23, 0x7A, 0x4E, 0xED, 0x0F, 0x04, 0x21, 0x30, 0xC1,\n0xDE, 0x7C, 0x1F, 0xC1, 0x3F, 0x6A, 0x1E, 0x42, 0x59, 0x2D, 0x77, 0x79, 0xDF, 0xBE, 0x87, 0xE8,\n0xC8, 0xC4, 0x02, 0x27, 0x3A, 0x66, 0xE3, 0xFD, 0xF3, 0x8A, 0x8A, 0xBA, 0xD5, 0xD4, 0x37, 0x9B,\n0x4C, 0xA5, 0xE7, 0xA5, 0x26, 0xE0, 0x18, 0xFC, 0xE3, 0x87, 0x1C, 0x9A, 0xBD, 0x94, 0x65, 0x63,\n0x21, 0x0C, 0x7A, 0xE3, 0x0B, 0x31, 0x6A, 0x80, 0xE4, 0xEB, 0x4A, 0x42, 0x16, 0xFA, 0x2D, 0x6F,\n0xD8, 0x53, 0x76, 0x3E, 0x58, 0x98, 0x28, 0x89, 0x05, 0x34, 0xD8, 0x21, 0x3D, 0xEF, 0x62, 0x29,\n0xD4, 0xD5, 0x3D, 0x04, 0xFF, 0x28, 0x25, 0x16, 0x2A, 0x22, 0xBE, 0x42, 0x34, 0x44, 0x2A, 0x78,\n0x10, 0x60, 0xC5, 0x9E, 0x1E, 0x9A, 0x16, 0x3E, 0x1F, 0x08, 0xFB, 0x50, 0xF4, 0x0F, 0x1F, 0x15,\n0x42, 0x20, 0xC3, 0xF7, 0x0C, 0x88, 0xD2, 0x20, 0xFD, 0xA8, 0x11, 0x22, 0x13, 0xE1, 0x6E, 0x17,\n0x0C, 0x64, 0x06, 0x21, 0x1C, 0x29, 0x19, 0x2B, 0x89, 0xC8, 0x58, 0x79, 0xB7, 0x2A, 0x2B, 0xFD,\n0x40, 0x46, 0x78, 0xD5, 0xD9, 0x84, 0x30, 0xFE, 0x8E, 0x21, 0x13, 0x21, 0x41, 0x20, 0x0A, 0xEA,\n0xDB, 0xE7, 0xF0, 0x81, 0x44, 0x08, 0x80, 0xC0, 0x47, 0x45, 0x3D, 0x21, 0xC1, 0xC4, 0xC0, 0x1E,\n0x2E, 0x72, 0x0A, 0xAC, 0x08, 0xAE, 0x44, 0x6C, 0xC9, 0x08, 0x3A, 0xFD, 0x75, 0x58, 0x08, 0xAA,\n0x21, 0x72, 0x03, 0x1E, 0x9E, 0x87, 0xC0, 0xC7, 0x54, 0x1E, 0x02, 0x1F, 0x9C, 0x7D, 0xA6, 0x44,\n0x1D, 0x90, 0x06, 0x1F, 0x9B, 0x21, 0x47, 0x27, 0xFA, 0xAF, 0xF3, 0x41, 0x22, 0x52, 0x4E, 0xFA,\n0xED, 0x7F, 0xF7, 0x0F, 0x08, 0xD1, 0x3B, 0xA0, 0xAE, 0xB6, 0xD7, 0x18, 0x53, 0x9D, 0x90, 0x3C,\n0x30, 0xF1, 0x00, 0x93, 0x01, 0x06, 0x9F, 0x0F, 0x3C, 0xC4, 0xFD, 0xEE, 0xB8, 0x56, 0x7C, 0xE5,\n0x7A, 0x08, 0xF3, 0x30, 0xED, 0x03, 0x60, 0xC8, 0x0F, 0x34, 0x7F, 0xD3, 0x41, 0xAE, 0x6B, 0xA2,\n0x65, 0x08, 0x20, 0x3F, 0xE8, 0xE9, 0x52, 0xD9, 0x32, 0xC4, 0x99, 0xC4, 0x47, 0x90, 0x07, 0x18,\n0x24, 0x21, 0xDA, 0xA7, 0xDC, 0xCB, 0xF6, 0x54, 0xBF, 0xD2, 0x40, 0xF0, 0x52, 0xE3, 0x63, 0x5C,\n0x01, 0x83, 0xC1, 0x07, 0xE2, 0xCE, 0xDE, 0x22, 0xBC, 0x2A, 0xCE, 0x7E, 0x9A, 0x88, 0x93, 0x9F,\n0x23, 0x6E, 0x36, 0xE1, 0x93, 0x7B, 0xA3, 0x7C, 0xA8, 0xA9, 0xFE, 0x6E, 0x66, 0x7B, 0x70, 0x0B,\n0x4A, 0xC6, 0x57, 0x2B, 0xE6, 0x9B, 0x18, 0x2C, 0x0D, 0xFF, 0xF0, 0x09, 0x21, 0xAE, 0xC2, 0x58,\n0xF5, 0x13, 0x1E, 0xD2, 0xE4, 0x03, 0x1D, 0xAB, 0x89, 0xFA, 0xF8, 0x99, 0x9D, 0x88, 0xAF, 0x72,\n0x8F, 0x1F, 0x9A, 0xEE, 0x11, 0x8B, 0x66, 0x26, 0x3B, 0x50, 0x11, 0x3E, 0xD2, 0xF4, 0x0F, 0x3C,\n0x04, 0x40, 0xDE, 0x93, 0xA9, 0x94, 0x2F, 0xE4, 0xB6, 0x13, 0x51, 0x22, 0x97, 0xFA, 0x21, 0xC1,\n0x08, 0x5A, 0x29, 0x63, 0x69, 0x9D, 0xD0, 0xC2, 0xC6, 0x0D, 0xF5, 0xAB, 0x18, 0x58, 0x48, 0xA3,\n0xDC, 0x8B, 0x7F, 0xD4, 0xD4, 0x68, 0x0F, 0x56, 0x55, 0x9E, 0x56, 0xFC, 0x23, 0x47, 0x6E, 0x52,\n0x4E, 0x79, 0x17, 0xDD, 0xAB, 0x1D, 0xC2, 0x25, 0x5B, 0xB7, 0x97, 0x8C, 0x6B, 0x5F, 0x7E, 0xB6,\n0xD0, 0x74, 0x0F, 0x18, 0x69, 0xF1, 0x41, 0x43, 0x84, 0x2F, 0xB3, 0x43, 0x26, 0x21, 0xC5, 0xE1,\n0xC0, 0x68, 0x21, 0x64, 0xBC, 0xBC, 0x5B, 0x2F, 0x66, 0x2D, 0x1D, 0xFF, 0xA8, 0x17, 0xB3, 0x1A,\n0x6A, 0x12, 0xF2, 0x77, 0x86, 0x57, 0x04, 0x36, 0xB1, 0xE9, 0x4B, 0x58, 0x98, 0x88, 0xD2, 0xF3,\n0x51, 0x45, 0xBF, 0x1C, 0x40, 0x14, 0x5F, 0x8D, 0xA3, 0x94, 0xE5, 0xDE, 0x21, 0xAD, 0xF9, 0x2A,\n0xF6, 0x06, 0x36, 0x71, 0x0E, 0xF1, 0x92, 0x3F, 0x03, 0x06, 0xF1, 0x55, 0x43, 0xD5, 0x4F, 0x80,\n0x38, 0x1E, 0x82, 0x7D, 0x34, 0x25, 0xCF, 0x28, 0xDB, 0x83, 0x28, 0x79, 0x01, 0x19, 0x3B, 0xBC,\n0x42, 0x7C, 0x9D, 0x49, 0xAC, 0x5B, 0xBA, 0x85, 0x10, 0x57, 0x5B, 0xDB, 0x3F, 0x20, 0x64, 0x0F,\n0x26, 0x13, 0xAA, 0xFA, 0x07, 0x8E, 0xAA, 0xCD, 0xA8, 0x87, 0xC0, 0xC7, 0x44, 0x98, 0x85, 0x7F,\n0xB4, 0x55, 0xBF, 0xBD, 0xA4, 0x6E, 0x20, 0x75, 0x0F, 0x51, 0x66, 0x4C, 0x70, 0x15, 0x3F, 0xD2,\n0x15, 0xD1, 0x0C, 0xCE, 0x79, 0x1C, 0xEA, 0xD4, 0x3E, 0x6F, 0x08, 0x40, 0x5A, 0xAF, 0x12, 0x3B,\n0xF9, 0xF9, 0xC2, 0xF4, 0x10, 0x51, 0x90, 0x4C, 0xC4, 0x83, 0x20, 0x6B, 0xD8, 0x3B, 0x57, 0xA7,\n0xD8, 0xAA, 0x6A, 0x21, 0x20, 0x62, 0xC5, 0x57, 0x10, 0xE2, 0xF0, 0x01, 0x21, 0x91, 0xA9, 0x97,\n0x7C, 0x5C, 0xC4, 0x26, 0xC7, 0x05, 0x8C, 0xC4, 0xBA, 0x24, 0xC4, 0xA1, 0x23, 0xA7, 0xA3, 0xEE,\n0xA7, 0xDD, 0x48, 0xA6, 0x87, 0x6C, 0x6D, 0x42, 0xE0, 0xC3, 0x22, 0x44, 0x2D, 0x1A, 0x4B, 0xA4,\n0xEA, 0xE4, 0x1F, 0x58, 0x88, 0xB6, 0xFC, 0x0C, 0x21, 0xF0, 0xE1, 0x13, 0x02, 0x1E, 0x8E, 0x87,\n0xC4, 0xD2, 0xD6, 0x1A, 0x42, 0x70, 0x8F, 0xB3, 0x84, 0x58, 0x3F, 0x6A, 0x3F, 0x7D, 0x25, 0xED,\n0x23, 0xA7, 0xF1, 0x38, 0x1E, 0x34, 0xD5, 0x05, 0x88, 0x7E, 0x68, 0xBF, 0x56, 0x0D, 0x11, 0x0D,\n0xEC, 0x43, 0x6B, 0x1C, 0x24, 0x37, 0xB9, 0x8F, 0x8D, 0x94, 0x38, 0xD4, 0xF3, 0x10, 0xC7, 0x3F,\n0xD0, 0x87, 0x7C, 0xB4, 0x00, 0x21, 0x55, 0x37, 0xFA, 0x5D, 0x17, 0xC3, 0xDA, 0xE5, 0x03, 0xED,\n0x75, 0xB5, 0xDE, 0xB7, 0xFD, 0x83, 0xDB, 0x4E, 0xE6, 0x17, 0xB3, 0x68, 0x7F, 0x4C, 0xEB, 0x91,\n0x6F, 0x33, 0x71, 0x54, 0x6F, 0x9F, 0xE3, 0x1E, 0xA5, 0xA1, 0x1C, 0x1C, 0x3E, 0x08, 0xB3, 0x2C,\n0x40, 0x50, 0x11, 0x5E, 0x35, 0x0D, 0xA4, 0xF4, 0x10, 0xE6, 0x1F, 0xB9, 0xB9, 0x06, 0xF9, 0x08,\n0x26, 0xD2, 0x8D, 0xF2, 0x41, 0x53, 0xFD, 0xBD, 0x00, 0x89, 0x1D, 0x5E, 0xD9, 0x22, 0x24, 0xC3,\n0xAC, 0x8C, 0xE8, 0xB4, 0xD1, 0x23, 0xE9, 0xD4, 0xE3, 0x15, 0x57, 0xA4, 0x3F, 0xA4, 0x69, 0x21,\n0x10, 0x22, 0x3E, 0x1C, 0xD9, 0xFE, 0x41, 0x43, 0x84, 0xF6, 0x60, 0x56, 0xF8, 0x2F, 0x8A, 0x44,\n0x04, 0xCD, 0xE2, 0x03, 0xFD, 0xA2, 0xF6, 0xA0, 0x43, 0x08, 0xDF, 0xF4, 0x33, 0x4B, 0x1B, 0x4F,\n0xE9, 0x21, 0xC8, 0xF4, 0x10, 0xE2, 0xCC, 0x3C, 0x4C, 0x1C, 0xA0, 0xB2, 0xCA, 0x91, 0x9F, 0xFE,\n0x40, 0xED, 0x3C, 0x64, 0xF7, 0xA4, 0xF6, 0xA0, 0x23, 0xFC, 0x63, 0xF2, 0xB2, 0x2A, 0x15, 0x05,\n0x2C, 0x82, 0x2C, 0xA6, 0x64, 0xE6, 0x23, 0xBD, 0x86, 0x69, 0x0C, 0x1F, 0x6D, 0xF5, 0x80, 0x4C,\n0xE2, 0x41, 0x53, 0x5D, 0xBF, 0x58, 0x48, 0xC0, 0xA5, 0xDE, 0xC3, 0xE0, 0x67, 0x18, 0xC9, 0x20,\n0x39, 0x61, 0x5B, 0x34, 0x44, 0x0C, 0x3E, 0x28, 0xF7, 0xC2, 0x87, 0x49, 0x08, 0xB9, 0x08, 0x78,\n0x14, 0xD7, 0xCB, 0xB2, 0xA9, 0x6E, 0xA3, 0x91, 0x9F, 0xFE, 0xF0, 0x74, 0x4B, 0x53, 0x7D, 0x96,\n0x6A, 0xED, 0x8F, 0x56, 0xCB, 0xD0, 0x15, 0x7C, 0x8C, 0x8A, 0x03, 0xA4, 0xA6, 0x3A, 0xE5, 0x2B,\n0x43, 0xB4, 0xCF, 0x2D, 0xF1, 0xE9, 0x8F, 0x09, 0x03, 0x49, 0x81, 0xC7, 0xDF, 0x84, 0x32, 0x5A,\n0x93, 0x1D, 0xD3, 0x3F, 0xFC, 0xE1, 0xD2, 0xE1, 0x83, 0x4C, 0xBD, 0x77, 0x90, 0xA6, 0xE8, 0xBE,\n0xEB, 0xD3, 0x59, 0xEA, 0xB9, 0xF0, 0xDF, 0x3D, 0x41, 0xA1, 0x0D, 0xC0, 0x0C, 0x99, 0x11, 0xE5,\n0xAB, 0x86, 0x85, 0x20, 0xFC, 0xC3, 0x27, 0x64, 0x67, 0xEB, 0x48, 0xF7, 0x9C, 0xD8, 0x81, 0x12,\n0xCD, 0x1B, 0x51, 0xBF, 0x32, 0x74, 0x1F, 0x0F, 0x93, 0x0F, 0x5A, 0x86, 0xDB, 0xB9, 0x99, 0xFA,\n0x06, 0x19, 0x84, 0x20, 0xD3, 0x43, 0xD2, 0x5A, 0x13, 0x83, 0xDC, 0x89, 0x15, 0x86, 0x82, 0xF0,\n0x0F, 0x4B, 0x84, 0x57, 0x8E, 0x48, 0xCF, 0x5B, 0xE2, 0x15, 0x95, 0x28, 0x2B, 0xE7, 0xE1, 0xAB,\n0x79, 0xC4, 0x42, 0x6E, 0x72, 0xA9, 0xF2, 0xAE, 0x39, 0xED, 0x7B, 0x40, 0xCC, 0xD7, 0xF6, 0x84,\n0xC0, 0x65, 0x7A, 0x06, 0xEB, 0x57, 0x3B, 0xE3, 0x4D, 0xDE, 0x28, 0xBC, 0xF2, 0xA4, 0xCF, 0xE1,\n0xC2, 0x87, 0x21, 0xF8, 0xF0, 0x08, 0x11, 0x17, 0xEE, 0x72, 0x0C, 0x0F, 0xF1, 0x27, 0x19, 0x7C,\n0xB8, 0x80, 0xFC, 0x8B, 0x4F, 0x88, 0x84, 0xF1, 0xF8, 0x9A, 0xF7, 0xDE, 0xF7, 0xF1, 0x85, 0x40,\n0x57, 0xC7, 0x0B, 0xFF, 0xF0, 0x5C, 0xE1, 0x1F, 0x8E, 0xE0, 0xC3, 0x23, 0x04, 0xFF, 0x30, 0xD4,\n0x05, 0x21, 0x7F, 0xCE, 0x5A, 0x5E, 0x16, 0xC1, 0x87, 0xB1, 0xE0, 0x20, 0x86, 0x54, 0x32, 0xEE,\n0x3E, 0xEA, 0x66, 0x29, 0xEA, 0xBB, 0xFE, 0xB2, 0x58, 0xDF, 0x70, 0x18, 0x1D, 0x3D, 0xF5, 0xDF,\n0x10, 0xE7, 0x2C, 0x5A, 0xF5, 0xB7, 0x9D, 0x5C, 0xB9, 0xEA, 0x5F, 0x89, 0x7F, 0x78, 0xD2, 0x57,\n0x1C, 0x3A, 0xD2, 0x0B, 0x23, 0xFF, 0x98, 0xA5, 0xE7, 0x6D, 0xD4, 0xBF, 0x62, 0xF1, 0x46, 0xD0,\n0x34, 0x4F, 0xD8, 0x83, 0x27, 0x8E, 0xBC, 0xB1, 0x1C, 0x8F, 0x9C, 0x58, 0x4F, 0x37, 0x8B, 0x19,\n0x13, 0x67, 0x7D, 0xD3, 0xCD, 0xD4, 0xB5, 0x2D, 0x39, 0xC8, 0x0F, 0xDE, 0x12, 0x90, 0x5C, 0x7E,\n0xF4, 0xF1, 0x47, 0xB3, 0xB4, 0x58, 0xAC, 0xB5, 0xC4, 0x18, 0x96, 0xEE, 0xFC, 0x67, 0x9E, 0x8F,\n0x27, 0x7F, 0xFA, 0xE9, 0xA7, 0xAF, 0xDD, 0x65, 0xF5, 0xD3, 0xD3, 0x72, 0x96, 0x1E, 0x1E, 0xBE,\n0x9C, 0xA3, 0xFB, 0xFB, 0x0C, 0x9E, 0x2E, 0x8C, 0x75, 0x6C, 0xF6, 0xBF, 0x6F, 0x9F, 0xB7, 0xBE,\n0xE2, 0x2B, 0x46, 0x67, 0xE9, 0xDD, 0xBB, 0xAD, 0xAF, 0x1F, 0xB7, 0xDB, 0xBD, 0xA2, 0x2C, 0xDE,\n0xE0, 0x9B, 0x35, 0x7F, 0xC0, 0x7D, 0xBC, 0xF4, 0xFE, 0x7E, 0xD6, 0xC1, 0x39, 0x3C, 0xCC, 0x3A,\n0xF2, 0xCB, 0xA7, 0x9F, 0x56, 0xFD, 0x49, 0x5B, 0x99, 0x8F, 0xF5, 0x69, 0x4A, 0xBC, 0xB0, 0x5A,\n0x74, 0xFC, 0x18, 0x53, 0xA5, 0x3B, 0xFB, 0x79, 0xFD, 0xD1, 0x3C, 0x5D, 0xC6, 0x6C, 0x36, 0x27,\n0x7D, 0x00, 0xD2, 0xD9, 0x7C, 0x5C, 0xFE, 0x71, 0x79, 0x39, 0xF3, 0xAD, 0xAC, 0xC5, 0x82, 0xB9,\n0xDC, 0xAC, 0xD7, 0x5F, 0x3F, 0xB9, 0x78, 0x7C, 0xFD, 0x14, 0x5A, 0x2E, 0x8F, 0xF6, 0x72, 0xF5,\n0xF0, 0xF0, 0x70, 0xFF, 0xA5, 0xB9, 0x04, 0x1F, 0xA1, 0x0B, 0x66, 0xD1, 0xC4, 0x3A, 0xF8, 0xD8,\n0xEF, 0x37, 0xB3, 0xF8, 0x08, 0xD9, 0x70, 0xFC, 0xA6, 0x97, 0x6F, 0x5D, 0xFD, 0x1A, 0x78, 0xEC,\n0x45, 0x08, 0x10, 0x68, 0xAF, 0xD8, 0x87, 0xEE, 0xFB, 0xD0, 0x97, 0x07, 0xF7, 0xD8, 0x1C, 0x0E,\n0x0F, 0x22, 0xC4, 0x3C, 0xF2, 0xCB, 0xE5, 0x53, 0x68, 0xE5, 0x5F, 0xFA, 0x22, 0xDE, 0xF6, 0x67,\n0x4D, 0xF0, 0x32, 0x97, 0x8F, 0xD0, 0xF5, 0xB5, 0x0D, 0xC8, 0xDF, 0x3E, 0x1F, 0x01, 0xC8, 0xE5,\n0x1F, 0x1F, 0xF9, 0xEA, 0xF0, 0x10, 0x63, 0xB9, 0x09, 0x40, 0xD6, 0x2B, 0xF7, 0x20, 0x06, 0x1D,\n0x42, 0xC4, 0xD4, 0xF1, 0xE1, 0x10, 0x80, 0x1C, 0x0E, 0x71, 0x76, 0x8D, 0x11, 0x7C, 0x48, 0x9A,\n0x45, 0xC6, 0x08, 0x3E, 0xA4, 0x98, 0x9A, 0x3E, 0x1F, 0xCF, 0x10, 0x02, 0x0A, 0x1A, 0x6F, 0xA4,\n0x17, 0xCF, 0x20, 0x64, 0xA3, 0x77, 0xA3, 0x96, 0x21, 0x18, 0x88, 0x0B, 0xF6, 0xB5, 0x93, 0xC0,\n0xDC, 0x4B, 0x5F, 0x7A, 0x07, 0xE7, 0x3E, 0x8E, 0x64, 0x4F, 0xC8, 0x71, 0xE9, 0xEA, 0xE9, 0xEE,\n0x29, 0xC6, 0xD7, 0xEE, 0xB9, 0x5D, 0xAF, 0x83, 0x10, 0x1B, 0x8F, 0xF5, 0x6C, 0xFF, 0x90, 0xAE,\n0x4D, 0x13, 0x09, 0x40, 0x7C, 0xFF, 0x90, 0x7C, 0x42, 0xD6, 0x5A, 0x2D, 0x4C, 0x44, 0x82, 0x8F,\n0xFE, 0xC2, 0xE1, 0xE1, 0xB1, 0x7A, 0xDA, 0x05, 0x1D, 0xBE, 0x87, 0x1C, 0x4F, 0xE7, 0x34, 0xD6,\n0xC6, 0x25, 0x12, 0x3E, 0x72, 0x0A, 0x0D, 0xA3, 0xDC, 0x67, 0xE4, 0x8C, 0xDC, 0x6F, 0x9F, 0x5D,\n0x3E, 0x12, 0x91, 0xDF, 0x84, 0x04, 0x23, 0x21, 0x29, 0x86, 0xE4, 0x13, 0xB2, 0x97, 0xD2, 0x43,\n0xC0, 0xA0, 0xDC, 0xCF, 0x77, 0x2F, 0x3E, 0x92, 0x10, 0xCB, 0x41, 0xE2, 0x28, 0x6A, 0xE9, 0x8F,\n0xFD, 0x6E, 0xFA, 0x11, 0x6C, 0xE8, 0x6A, 0xE6, 0x1A, 0x88, 0x42, 0x09, 0x1F, 0x91, 0x4E, 0x57,\n0x62, 0x5B, 0x9A, 0xC5, 0x49, 0x88, 0x09, 0xC8, 0x27, 0x16, 0x4B, 0xC9, 0x87, 0x4F, 0x48, 0x27,\n0x3C, 0x4C, 0x0F, 0xD1, 0x01, 0x89, 0x11, 0x3E, 0xB2, 0xB2, 0xFC, 0x23, 0x74, 0x17, 0x4B, 0xE8,\n0x68, 0xF9, 0x47, 0x9E, 0x53, 0x79, 0xC8, 0xBD, 0xE5, 0x1F, 0x20, 0xC2, 0xC4, 0xAA, 0xEE, 0x47,\n0xB5, 0xEB, 0x75, 0x46, 0x7A, 0x1E, 0x42, 0xE6, 0x1D, 0xB3, 0x1F, 0x2C, 0x70, 0x90, 0x62, 0x4D,\n0x3E, 0xFF, 0xE3, 0x76, 0x52, 0xCF, 0x8A, 0xAF, 0x24, 0x79, 0x48, 0x0B, 0x8F, 0x7B, 0xE1, 0x81,\n0x6C, 0xFF, 0xC8, 0xA3, 0x69, 0xD9, 0xC7, 0xE9, 0x5C, 0xC5, 0x15, 0xCD, 0xF3, 0x90, 0xF5, 0x22,\n0xA6, 0x81, 0x86, 0xCB, 0x87, 0xE6, 0x59, 0xE7, 0xF3, 0x91, 0x72, 0x92, 0xEE, 0xEB, 0xBC, 0xD5,\n0xE4, 0xB2, 0xFD, 0x4A, 0xFC, 0xC3, 0x24, 0x84, 0x37, 0xAD, 0x28, 0xCB, 0x08, 0xAF, 0x04, 0x88,\n0xED, 0x21, 0x3A, 0xDC, 0xCB, 0x38, 0xEE, 0xF2, 0x10, 0x23, 0xFD, 0x50, 0xD8, 0x9C, 0x88, 0x4C,\n0x05, 0xD8, 0xE2, 0x03, 0xD5, 0xC0, 0x60, 0x5F, 0x1F, 0xBF, 0xD8, 0x00, 0xC8, 0xED, 0xB4, 0x87,\n0x68, 0xBA, 0x97, 0x1E, 0x32, 0x58, 0xC9, 0xEB, 0x0E, 0x4F, 0x22, 0x83, 0x90, 0xE0, 0x73, 0x1F,\n0x82, 0x10, 0xF2, 0x8C, 0x0B, 0xF6, 0x73, 0x07, 0x3E, 0x40, 0x64, 0x32, 0xFF, 0x78, 0x78, 0x5D,\n0x0E, 0x32, 0x91, 0xF6, 0xA2, 0xF0, 0x2A, 0xA4, 0xB5, 0x91, 0x60, 0xDE, 0x2C, 0x92, 0x0E, 0xCF,\n0x43, 0x3A, 0x22, 0x15, 0x9F, 0x0F, 0x08, 0x99, 0x44, 0x64, 0xB8, 0x59, 0x71, 0x8A, 0x24, 0xF9,\n0x07, 0x7A, 0xB1, 0xE3, 0xAB, 0xD3, 0xA3, 0xB3, 0xFC, 0x83, 0xF1, 0xD3, 0xC4, 0x91, 0x7C, 0x1A,\n0x2E, 0x4B, 0x7A, 0xDC, 0x2D, 0x27, 0xC4, 0x29, 0x3D, 0x45, 0x59, 0x89, 0x41, 0x65, 0xC8, 0x5D,\n0xEE, 0x0B, 0x4D, 0x05, 0x59, 0xFB, 0x33, 0xDD, 0xCA, 0x43, 0x0C, 0x3E, 0xF0, 0x90, 0x1E, 0x83,\n0x01, 0x0A, 0x76, 0xB4, 0x8E, 0x7F, 0x56, 0x68, 0xEA, 0xB7, 0xFF, 0x5E, 0xBC, 0x9F, 0x2A, 0xD4,\n0xFC, 0x19, 0xF0, 0x61, 0x7A, 0xC8, 0xC3, 0xF9, 0xB2, 0x9C, 0x10, 0x56, 0x2F, 0x44, 0xA6, 0x00,\n0x61, 0x0E, 0x78, 0x84, 0x28, 0x52, 0x89, 0x21, 0x50, 0x3A, 0x27, 0xFD, 0xF0, 0x09, 0x09, 0xDB,\n0xE0, 0x76, 0xF7, 0xEB, 0xCF, 0xDA, 0x7C, 0x20, 0x8B, 0x90, 0x4E, 0x0F, 0xF6, 0x26, 0x08, 0x59,\n0x17, 0xC7, 0xE5, 0x66, 0xAA, 0x7E, 0x75, 0xC7, 0x41, 0xEF, 0xB5, 0x6C, 0x5D, 0xC9, 0xE0, 0x03,\n0x42, 0x1C, 0xFB, 0x40, 0x2D, 0xFF, 0xF8, 0x22, 0xE7, 0x23, 0xBA, 0x9D, 0xB8, 0xC4, 0xBF, 0x43,\n0xA4, 0xEA, 0x40, 0x51, 0xAE, 0x52, 0x3F, 0xC6, 0x70, 0x12, 0x91, 0x81, 0x0F, 0xD4, 0x2C, 0x2F,\n0xC0, 0x87, 0xE1, 0x21, 0x31, 0x14, 0x5F, 0xB1, 0xC8, 0x43, 0x46, 0xBB, 0x1F, 0xB1, 0xE8, 0x1C,\n0x71, 0x31, 0x23, 0xCA, 0x6A, 0xFA, 0x07, 0x63, 0xDA, 0x3F, 0xA4, 0x55, 0x3F, 0xC9, 0xD6, 0x1E,\n0x1F, 0x3E, 0x21, 0xDC, 0xEE, 0x1E, 0xF2, 0xF8, 0x40, 0x46, 0x74, 0xA5, 0xF5, 0x2A, 0xE1, 0x5E,\n0xB4, 0xE2, 0xAB, 0x37, 0x47, 0xE5, 0x66, 0xAA, 0x7C, 0xC5, 0x41, 0xD7, 0xDA, 0xF4, 0x8F, 0xB6,\n0x87, 0xE4, 0x24, 0x40, 0xAD, 0x28, 0x8B, 0xB1, 0x2F, 0xD4, 0x4E, 0xD5, 0x8B, 0x09, 0x4F, 0x94,\n0x55, 0xC5, 0x43, 0x7C, 0x80, 0x46, 0x6A, 0xA2, 0x7C, 0x55, 0x2A, 0xAD, 0xA2, 0x18, 0xF0, 0x51,\n0xCA, 0xCA, 0x3F, 0x58, 0xDA, 0xFE, 0x81, 0x83, 0xE8, 0xD1, 0x26, 0xA4, 0x08, 0x24, 0xDA, 0x79,\n0xC8, 0xD0, 0xFE, 0x58, 0xC7, 0x92, 0x74, 0x74, 0x0E, 0x1F, 0x3E, 0x21, 0xE7, 0x1F, 0xB9, 0x1D,\n0x2F, 0x0C, 0xC3, 0x87, 0x47, 0x48, 0x27, 0xA6, 0x71, 0x90, 0xA9, 0x62, 0x16, 0x87, 0x83, 0xD1,\n0x20, 0x24, 0xFD, 0x03, 0x07, 0xC1, 0x43, 0x0C, 0xFF, 0x80, 0x10, 0xC3, 0x3F, 0x50, 0xDD, 0x3F,\n0x1E, 0x85, 0x47, 0x45, 0x13, 0x7C, 0xFC, 0x08, 0x26, 0x49, 0xC8, 0xB7, 0x75, 0x07, 0x29, 0xA2,\n0xAB, 0x49, 0x42, 0xF6, 0x55, 0xDD, 0x53, 0xCC, 0x2A, 0x6B, 0x0E, 0x55, 0x8D, 0x5A, 0x08, 0x87,\n0x90, 0xA5, 0x95, 0x87, 0x24, 0x1B, 0xB1, 0x75, 0x08, 0x59, 0x89, 0x8F, 0x72, 0x58, 0xE5, 0x2B,\n0xC2, 0x79, 0x93, 0x0F, 0x74, 0xDD, 0xE0, 0x03, 0x40, 0xA4, 0x6A, 0x2D, 0x2B, 0xD2, 0xF3, 0x11,\n0x4D, 0x65, 0xE7, 0x1F, 0xD8, 0x9E, 0x7E, 0xB6, 0xD2, 0x0F, 0x3C, 0x64, 0x35, 0x82, 0x47, 0x52,\n0x81, 0x83, 0xB4, 0x8B, 0x59, 0xD5, 0x53, 0x1A, 0x1A, 0x29, 0x65, 0xDD, 0x8F, 0xA8, 0x9E, 0x7F,\n0x50, 0xBE, 0x2A, 0x3D, 0xA4, 0xC9, 0x07, 0x22, 0xCA, 0x7A, 0xA7, 0xF4, 0xFC, 0x1C, 0x8F, 0xDF,\n0x0A, 0x3A, 0xF0, 0x1D, 0x9B, 0x0F, 0x8A, 0x59, 0x55, 0x17, 0x44, 0x8E, 0x87, 0xD4, 0xFC, 0x23,\n0xF4, 0xD0, 0xF2, 0x0F, 0x09, 0x3C, 0xA4, 0x11, 0x44, 0xD6, 0xF5, 0x4B, 0xE5, 0x94, 0x7F, 0x74,\n0x9A, 0x66, 0xB1, 0xCA, 0xB5, 0xCD, 0x07, 0x84, 0xD4, 0x5C, 0xA1, 0xF6, 0xBD, 0x58, 0xF5, 0xF2,\n0xD5, 0xA8, 0xDA, 0x31, 0x96, 0x10, 0x09, 0xE1, 0x7F, 0x8D, 0xF4, 0xA3, 0x36, 0xC6, 0xF3, 0x73,\n0x1C, 0x04, 0x56, 0x46, 0x8A, 0x59, 0x35, 0x3C, 0xB2, 0xDC, 0x5B, 0x0D, 0xB2, 0x47, 0x55, 0xBD,\n0x02, 0xC3, 0x87, 0x47, 0x08, 0xAE, 0xF1, 0xAB, 0x86, 0x76, 0x92, 0x10, 0xA2, 0x2A, 0x56, 0xD2,\n0x8F, 0x58, 0x07, 0x1A, 0x6D, 0x9F, 0xD7, 0xA5, 0x6A, 0x2F, 0x88, 0x37, 0xFC, 0xA3, 0xD1, 0x10,\n0x01, 0x0F, 0xCB, 0x43, 0xF2, 0xBC, 0x70, 0xA2, 0x88, 0x88, 0x6B, 0x80, 0xAC, 0xC6, 0x66, 0xC2,\n0xCD, 0xB8, 0x7F, 0x9C, 0x18, 0x59, 0x91, 0xF4, 0x1A, 0xE5, 0x2B, 0xCF, 0x43, 0xC4, 0x07, 0x80,\n0x8C, 0x12, 0x42, 0x79, 0x17, 0x4D, 0x94, 0x7B, 0x3B, 0x21, 0x81, 0x71, 0x40, 0x4C, 0xD7, 0xD5,\n0xF8, 0x18, 0x27, 0x64, 0x55, 0xCB, 0x3F, 0x76, 0x4F, 0x32, 0xED, 0xC2, 0x41, 0x24, 0xCB, 0x3F,\n0x58, 0xDE, 0x78, 0x08, 0x7C, 0x54, 0x55, 0x09, 0xB0, 0xF6, 0xC8, 0x21, 0x04, 0x3A, 0x70, 0x05,\n0x8A, 0x59, 0x21, 0x7C, 0x04, 0x3E, 0x06, 0x4A, 0xB4, 0xE2, 0x87, 0x66, 0xFB, 0xA3, 0xEE, 0x21,\n0x65, 0xFA, 0xD4, 0x50, 0xAD, 0xA9, 0x8E, 0x7F, 0x54, 0x96, 0xBA, 0x7F, 0xDC, 0x55, 0x1D, 0x24,\n0xB6, 0x2B, 0x23, 0xBE, 0x62, 0xD4, 0x10, 0x19, 0xA6, 0x57, 0x5A, 0xC8, 0xEA, 0x74, 0x39, 0x5E,\n0xC7, 0xE8, 0x1A, 0x7C, 0xD8, 0x84, 0xD4, 0xBF, 0x59, 0x91, 0x86, 0x48, 0x59, 0xDE, 0xF5, 0x09,\n0x21, 0xC8, 0xD2, 0x16, 0x0B, 0xE9, 0x62, 0x38, 0x7C, 0x30, 0x16, 0x6F, 0xDA, 0xE7, 0x77, 0x45,\n0x72, 0xCE, 0x11, 0xAF, 0x76, 0xD5, 0xE3, 0x8C, 0xE6, 0x09, 0xB4, 0x12, 0x11, 0xF8, 0xA8, 0xEB,\n0x3C, 0xC0, 0xC2, 0x3F, 0x5C, 0x42, 0xDE, 0xD5, 0x44, 0x1E, 0xD2, 0x93, 0x11, 0x82, 0x94, 0x67,\n0xA0, 0x28, 0x9C, 0x47, 0x3F, 0x9A, 0xFE, 0x81, 0x87, 0x34, 0xD3, 0x8F, 0x76, 0x31, 0x0B, 0x3E,\n0x5C, 0x13, 0x79, 0x92, 0x2A, 0x0E, 0x52, 0xF7, 0x90, 0x15, 0xE7, 0xDD, 0x09, 0xB3, 0xBA, 0x8E,\n0x40, 0x45, 0xEA, 0x92, 0x17, 0xC3, 0x3F, 0x9C, 0x54, 0x7D, 0xFC, 0xDB, 0xDD, 0x6D, 0xFF, 0x80,\n0x90, 0xBA, 0x81, 0xAC, 0x12, 0x8B, 0x15, 0xD5, 0xDE, 0x7E, 0xE3, 0xE4, 0x1F, 0xF5, 0x86, 0x48,\n0x1C, 0xD2, 0xB3, 0xE3, 0xCD, 0x11, 0x07, 0x98, 0xE5, 0x59, 0x22, 0x02, 0x1E, 0x23, 0x88, 0x94,\n0x35, 0x1A, 0xD4, 0x0E, 0xB3, 0xC8, 0xCF, 0x9B, 0x2A, 0x6E, 0xB0, 0xC5, 0x35, 0xC8, 0x26, 0xF4,\n0x48, 0x0B, 0x29, 0xCB, 0xBD, 0xCF, 0xFC, 0x0B, 0x50, 0x52, 0x36, 0x44, 0xF0, 0x8F, 0xC9, 0xB7,\n0x53, 0x14, 0xB0, 0x90, 0x91, 0x87, 0x44, 0x7C, 0x35, 0x01, 0xC8, 0xB1, 0x72, 0xF7, 0x55, 0xDD,\n0x41, 0xAA, 0xA9, 0xFA, 0x62, 0x3D, 0x8B, 0x90, 0x9C, 0x69, 0xDA, 0xE4, 0xCE, 0x9A, 0xB4, 0xB7,\n0x73, 0xF9, 0xA8, 0x37, 0xD5, 0x3F, 0x83, 0x0F, 0x00, 0x29, 0x3C, 0xC4, 0xF1, 0x8F, 0xB2, 0x21,\n0x02, 0xD1, 0x01, 0x45, 0x57, 0x3E, 0x99, 0x09, 0xD4, 0x39, 0x1F, 0x6D, 0x3C, 0xD4, 0x10, 0x01,\n0x10, 0xA5, 0x1F, 0x0D, 0x07, 0x11, 0x21, 0x0F, 0x4A, 0x45, 0x34, 0x5A, 0xE7, 0xB3, 0xB8, 0x31,\n0x0B, 0x3E, 0xDA, 0xE2, 0x02, 0x4C, 0x7B, 0x10, 0x35, 0x1B, 0x22, 0xD8, 0x01, 0x49, 0x05, 0x04,\n0x08, 0x91, 0xBE, 0x73, 0xFE, 0xDA, 0x4D, 0xC7, 0x35, 0x78, 0x91, 0x5E, 0xC8, 0x2F, 0x78, 0xDE,\n0xA2, 0xDF, 0xF7, 0x93, 0x3A, 0x73, 0x90, 0x7B, 0xC9, 0xF3, 0x10, 0xCA, 0x57, 0xCD, 0xE5, 0x35,\n0x09, 0x1C, 0xDA, 0xE7, 0xCB, 0x8A, 0x81, 0xF0, 0xF3, 0x79, 0x7B, 0x70, 0x72, 0x26, 0x54, 0xDB,\n0xE7, 0x42, 0x63, 0x35, 0x5C, 0x80, 0x49, 0x7B, 0xAB, 0xE9, 0xB9, 0xEF, 0x21, 0xD0, 0x00, 0x20,\n0xE8, 0x03, 0x3E, 0xBE, 0x82, 0x0F, 0x93, 0x90, 0x8E, 0xE8, 0x2A, 0x59, 0xD6, 0x58, 0x89, 0x0D,\n0x8D, 0xEE, 0xFC, 0xEE, 0xDD, 0x89, 0x41, 0xAA, 0x1E, 0xED, 0x41, 0x1D, 0xF6, 0x71, 0x07, 0x91,\n0x12, 0x0F, 0xFC, 0xA3, 0xB5, 0xD0, 0x10, 0x31, 0xF0, 0x28, 0x7A, 0xEA, 0x7B, 0x43, 0xB7, 0x9B,\n0x5F, 0xE1, 0x43, 0x2A, 0xC8, 0xD0, 0x03, 0x10, 0x92, 0x8D, 0xE4, 0xA3, 0x10, 0xBE, 0x83, 0x00,\n0xC4, 0x79, 0x3F, 0x1F, 0xDE, 0x8D, 0x65, 0xA9, 0xD9, 0xFE, 0x68, 0x35, 0x44, 0x9E, 0x60, 0x62,\n0x59, 0x33, 0x90, 0xA2, 0x96, 0x65, 0xCC, 0x83, 0x33, 0x42, 0x08, 0xA9, 0xD2, 0x42, 0x28, 0x99,\n0xF2, 0x8F, 0x4C, 0x3E, 0x20, 0x84, 0xF6, 0x79, 0x0B, 0x10, 0x08, 0xB9, 0xBE, 0x34, 0x05, 0x1D,\n0x02, 0x40, 0x08, 0x6B, 0x91, 0x97, 0x04, 0xE0, 0x12, 0xD4, 0x2C, 0x16, 0x46, 0xFE, 0x51, 0x36,\n0x44, 0xC4, 0x47, 0x01, 0x46, 0x99, 0x05, 0x6A, 0x2C, 0xA5, 0xB2, 0xFD, 0xD1, 0xCE, 0x43, 0x7A,\n0x3E, 0xB8, 0xA6, 0x5A, 0x26, 0xB2, 0xF7, 0xB4, 0x39, 0x2F, 0x5F, 0x21, 0x7E, 0x40, 0x34, 0x44,\n0x78, 0xC9, 0xAF, 0x18, 0x0E, 0xFF, 0x46, 0x49, 0x08, 0xE9, 0x87, 0x11, 0x65, 0xA9, 0x3D, 0x68,\n0xEA, 0xC0, 0xED, 0x57, 0xB6, 0x87, 0xC4, 0x38, 0x47, 0xA2, 0xEE, 0x20, 0x8A, 0xB2, 0xF0, 0x0F,\n0x63, 0x9C, 0x7F, 0xFA, 0x43, 0xDE, 0x21, 0x32, 0xE4, 0x21, 0xDA, 0xC9, 0x70, 0x8B, 0xF6, 0x34,\n0x7C, 0xF8, 0x84, 0xC0, 0x07, 0x80, 0x94, 0x84, 0xD0, 0xFE, 0xB0, 0x54, 0x4D, 0xD0, 0x81, 0x99,\n0x28, 0x31, 0xB6, 0x94, 0x7B, 0xCD, 0xC3, 0x12, 0xC5, 0xAC, 0x27, 0xE5, 0x1F, 0xCB, 0xBB, 0x82,\n0x8C, 0x3C, 0x0F, 0xA5, 0x8B, 0x9F, 0x5C, 0xFE, 0x21, 0xCE, 0xAA, 0x4D, 0x48, 0x3C, 0x6C, 0xE5,\n0xA7, 0x07, 0x37, 0xE6, 0x8C, 0xFC, 0x1D, 0x3E, 0x24, 0x72, 0x0A, 0x1C, 0x21, 0x9E, 0x21, 0x55,\n0x97, 0x87, 0xA0, 0x2A, 0x4F, 0xBF, 0x62, 0x25, 0xB4, 0x3F, 0x3C, 0x40, 0x4E, 0xB9, 0xBA, 0x2D,\n0xF9, 0x87, 0x65, 0x1F, 0x5A, 0xF0, 0x8F, 0x51, 0x44, 0x70, 0x90, 0x21, 0x55, 0xB7, 0x27, 0xC2,\n0x59, 0xFB, 0x83, 0x7B, 0x99, 0xB8, 0x15, 0x0B, 0x54, 0xBA, 0x59, 0xFE, 0x41, 0x31, 0x8B, 0xF6,\n0x47, 0x1D, 0x10, 0x5A, 0x86, 0xA4, 0xE7, 0x2E, 0x21, 0xDD, 0xD0, 0xF0, 0x20, 0x73, 0x12, 0xD5,\n0x19, 0x24, 0xA6, 0xB5, 0x24, 0x21, 0xE4, 0x1F, 0x96, 0x87, 0xAC, 0x7E, 0x5A, 0x52, 0xC0, 0xE2,\n0x68, 0x97, 0x16, 0x42, 0xB5, 0xF7, 0x10, 0x49, 0xA5, 0xEB, 0x21, 0x7D, 0x22, 0x32, 0x43, 0xB4,\n0x07, 0x0D, 0x05, 0x49, 0xE2, 0x03, 0x3B, 0x28, 0x39, 0x41, 0x10, 0x82, 0x7F, 0x54, 0xC8, 0xD2,\n0x73, 0xC8, 0xE6, 0x83, 0xA6, 0xFA, 0xBD, 0x2F, 0xDA, 0xE7, 0xDE, 0x92, 0x7C, 0xB4, 0x1D, 0x84,\n0x2D, 0xED, 0x0F, 0x6B, 0x22, 0xD0, 0x3E, 0x17, 0x15, 0x64, 0xB7, 0xDC, 0xD5, 0x44, 0x5B, 0x01,\n0x3E, 0x6C, 0xA9, 0x3D, 0xD8, 0x02, 0x04, 0x55, 0xD2, 0x73, 0xB3, 0x98, 0xB5, 0x26, 0x73, 0x22,\n0x11, 0x89, 0x24, 0x04, 0x03, 0x89, 0x41, 0xFD, 0xCA, 0x19, 0xEB, 0xD5, 0xDD, 0xB2, 0xB4, 0x67,\n0xD2, 0x11, 0x9E, 0xE6, 0x13, 0x22, 0x0F, 0x34, 0xB5, 0xAC, 0x54, 0x7D, 0x9E, 0xE0, 0xC3, 0x42,\n0x84, 0x19, 0x8D, 0x8A, 0xE7, 0x30, 0x91, 0xE7, 0xC4, 0xA4, 0xC0, 0x42, 0x9B, 0xA2, 0xE0, 0x9B,\n0x3B, 0xF0, 0x61, 0x09, 0x3C, 0x4C, 0x42, 0xFA, 0x03, 0x34, 0x63, 0x11, 0x1E, 0x9E, 0x83, 0xA8,\n0x21, 0xC2, 0x85, 0xD2, 0x32, 0x91, 0xC4, 0x62, 0xC8, 0xC5, 0x3B, 0x18, 0x19, 0xD8, 0xE0, 0xD9,\n0x0E, 0x3E, 0x4C, 0x89, 0x0F, 0x0B, 0x10, 0x02, 0x2C, 0x4B, 0x2F, 0x41, 0xC8, 0x5A, 0x18, 0x60,\n0x20, 0x95, 0x7A, 0xDB, 0xAA, 0x7F, 0x4E, 0x63, 0x7D, 0xE3, 0x8F, 0xA0, 0xE9, 0x89, 0xB2, 0x48,\n0xAC, 0x5B, 0x0E, 0x22, 0x2D, 0xBF, 0xF4, 0xF1, 0x88, 0x71, 0x75, 0x3F, 0x4F, 0xBF, 0x13, 0x5F,\n0x39, 0xDA, 0x16, 0xFD, 0x0B, 0x8A, 0x59, 0x04, 0x4B, 0x15, 0x84, 0x40, 0x20, 0x05, 0x27, 0x6C,\n0x01, 0xC4, 0xD6, 0xFD, 0x3C, 0xD1, 0xFF, 0xB0, 0x96, 0x23, 0x34, 0xB4, 0x0D, 0x44, 0xCB, 0xF2,\n0x89, 0xFA, 0xAE, 0x35, 0x56, 0xCC, 0xAF, 0x35, 0xBB, 0x80, 0x92, 0xBE, 0x32, 0x3C, 0xD1, 0xBD,\n0xCC, 0xBA, 0xCC, 0x5F, 0x5E, 0x7B, 0x80, 0x28, 0x0B, 0x99, 0x07, 0xC8, 0xCB, 0x4B, 0x22, 0xC0,\n0x5B, 0x5F, 0xE1, 0x28, 0x69, 0x2B, 0xDC, 0x9C, 0xBC, 0x5A, 0xCD, 0xB1, 0x90, 0x95, 0xEE, 0xE0,\n0x2D, 0x03, 0xAC, 0x31, 0x07, 0x21, 0xC4, 0x32, 0x09, 0xD1, 0xB7, 0xFC, 0xF8, 0xBA, 0xFD, 0xFE,\n0xFB, 0xFD, 0x0C, 0x29, 0xC4, 0x42, 0x54, 0x6A, 0x47, 0x88, 0xC0, 0x3E, 0x4A, 0x13, 0x81, 0x13,\n0xFE, 0x01, 0x21, 0x96, 0xAB, 0x78, 0xF7, 0xF7, 0x33, 0x14, 0xC7, 0x66, 0x0E, 0x21, 0xCB, 0x90,\n0x6D, 0x20, 0xF1, 0xCA, 0xD5, 0xAC, 0x10, 0x6B, 0xBD, 0xFA, 0x94, 0x6A, 0xD5, 0x09, 0x8E, 0xB4,\n0x12, 0xE8, 0x58, 0x89, 0x97, 0xFC, 0xA7, 0x2F, 0x2F, 0xB3, 0xF8, 0x88, 0xD4, 0xDB, 0x03, 0x84,\n0x24, 0xDD, 0xC4, 0x23, 0x94, 0x05, 0xDD, 0x1E, 0x0C, 0x59, 0x09, 0x1E, 0x92, 0x15, 0x05, 0xC8,\n0x5F, 0x75, 0xAB, 0x4F, 0x7D, 0x42, 0xE2, 0x8E, 0x93, 0x58, 0xE2, 0x6A, 0x03, 0x02, 0x2D, 0x07,\n0x89, 0x17, 0xF6, 0xF2, 0x1D, 0xE4, 0x6A, 0x1E, 0x20, 0xDF, 0xEF, 0xBF, 0x87, 0x10, 0x8F, 0x8F,\n0xE1, 0x2B, 0xB0, 0x7E, 0x84, 0x11, 0x76, 0xDE, 0x54, 0xA8, 0xBE, 0xA5, 0x63, 0xC2, 0x8A, 0x90,\n0x8A, 0xDD, 0x18, 0xD9, 0x0A, 0x99, 0xC5, 0x47, 0x68, 0x0E, 0x1F, 0xB3, 0x08, 0x59, 0x4A, 0xB6,\n0x81, 0x44, 0x06, 0x12, 0xA7, 0xD6, 0x07, 0x24, 0xA6, 0xCD, 0x6A, 0x45, 0x20, 0xCF, 0x5C, 0xA3,\n0x1F, 0x9D, 0xCD, 0x90, 0xF4, 0x8F, 0x5E, 0x3E, 0x1F, 0xBA, 0x9F, 0xBD, 0x09, 0x08, 0x29, 0x7A,\n0x88, 0x34, 0xDD, 0xE0, 0x43, 0x84, 0x10, 0x0A, 0x92, 0x23, 0xF1, 0xA6, 0xF3, 0x2F, 0x8A, 0xC7,\n0x49, 0xB3, 0xF8, 0x58, 0xDD, 0x80, 0x40, 0xD3, 0x41, 0x84, 0xC7, 0x11, 0x42, 0x3C, 0x3E, 0x7C,\n0x44, 0x62, 0x86, 0x49, 0x36, 0x1F, 0xD2, 0xE6, 0xD7, 0x62, 0xB6, 0xD3, 0xFF, 0x60, 0x5F, 0x7A,\n0xFE, 0x36, 0x96, 0x77, 0xD0, 0xD1, 0x2E, 0x67, 0x3D, 0xFF, 0x9E, 0xBF, 0xDF, 0xE6, 0x43, 0xDA,\n0xFB, 0x7C, 0xF8, 0x84, 0x84, 0x69, 0x0F, 0xC7, 0xDE, 0x32, 0x90, 0x08, 0xAF, 0xC4, 0x47, 0x10,\n0x62, 0x4E, 0x05, 0xF1, 0x21, 0x42, 0xE8, 0x80, 0x14, 0x2D, 0x04, 0xEA, 0x5B, 0xF2, 0x0F, 0xC9,\n0xE7, 0x03, 0x42, 0x9A, 0x8D, 0xC2, 0x57, 0xB9, 0x7C, 0x40, 0x88, 0xC8, 0xA6, 0x17, 0x32, 0x74,\n0x08, 0x41, 0xA7, 0x4B, 0x3E, 0xD2, 0x43, 0x26, 0x87, 0xF8, 0xC8, 0xE5, 0x69, 0x67, 0x38, 0x88,\n0x4E, 0x91, 0x1E, 0x36, 0x1F, 0x29, 0x9F, 0x0F, 0xC9, 0xCC, 0x3F, 0x24, 0x79, 0x08, 0x13, 0x5C,\n0x0F, 0x44, 0x6A, 0x92, 0x84, 0x88, 0x11, 0x54, 0xC2, 0x45, 0xD6, 0x42, 0x9F, 0x70, 0xE3, 0xE3,\n0x21, 0xB9, 0x78, 0xCC, 0x22, 0x84, 0x63, 0xEF, 0x95, 0xB0, 0x56, 0xE2, 0xC3, 0xF6, 0x90, 0x1E,\n0x0F, 0x89, 0x78, 0x4A, 0x3B, 0x1A, 0x24, 0xE6, 0x7A, 0xC8, 0x3F, 0x06, 0xF9, 0x7C, 0x08, 0x91,\n0x06, 0x20, 0x34, 0x41, 0xF2, 0xB5, 0x2E, 0x1F, 0x20, 0x42, 0xC7, 0x5C, 0xFB, 0x10, 0xAD, 0x55,\n0xE6, 0x1F, 0xAB, 0x90, 0x17, 0x65, 0xC1, 0x47, 0x94, 0xCC, 0x0D, 0x07, 0xC9, 0x53, 0xC4, 0x37,\n0x99, 0xB4, 0x97, 0xE0, 0x03, 0xD9, 0x7C, 0x48, 0x26, 0x1E, 0x08, 0xAB, 0xE0, 0x7E, 0x11, 0xB2,\n0x74, 0xEC, 0x23, 0x96, 0xB2, 0xD1, 0x4E, 0x86, 0x1E, 0x83, 0x27, 0xCE, 0x3E, 0x69, 0xEB, 0xF0,\n0x81, 0xF6, 0x36, 0x1F, 0x3E, 0x21, 0xD9, 0xA2, 0xD5, 0xBA, 0x65, 0x20, 0xF8, 0xC7, 0xEB, 0xE2,\n0xC4, 0xDB, 0x83, 0x7F, 0xE8, 0x11, 0x73, 0x49, 0x71, 0x14, 0xED, 0x10, 0x70, 0xD1, 0x66, 0xDD,\n0xBD, 0x20, 0xAF, 0x09, 0x82, 0xC6, 0x00, 0x81, 0x0F, 0x08, 0xF9, 0xC3, 0xE0, 0x03, 0x65, 0x43,\n0x93, 0x0E, 0x61, 0xEE, 0xAC, 0x04, 0x78, 0x3F, 0x62, 0xA6, 0x0B, 0x91, 0x8F, 0x7A, 0x44, 0x8C,\n0x9B, 0x15, 0xE3, 0xE8, 0xB1, 0xC4, 0x71, 0x6D, 0x39, 0x88, 0xFC, 0x63, 0x40, 0xE4, 0x28, 0x42,\n0x0C, 0xFF, 0x40, 0x0E, 0x1F, 0xC8, 0xE4, 0x03, 0xD5, 0xA6, 0x3D, 0x02, 0x91, 0x5C, 0xC6, 0xAA,\n0xC2, 0x18, 0x49, 0x1F, 0xBF, 0xA1, 0x39, 0x7C, 0x44, 0x22, 0xE5, 0xF1, 0x81, 0x1E, 0xBC, 0x3B,\n0xB1, 0x4E, 0x9B, 0x68, 0xA6, 0x4F, 0xB7, 0xD1, 0xB5, 0x78, 0x1E, 0x22, 0xFF, 0xD0, 0x9C, 0xE9,\n0x88, 0xB2, 0xBA, 0x22, 0x7E, 0xEF, 0x12, 0x17, 0x6D, 0x5E, 0x90, 0x43, 0x88, 0x26, 0x3D, 0x1A,\n0x07, 0xE4, 0xBD, 0x6E, 0x32, 0xF1, 0x09, 0x79, 0x29, 0x94, 0x60, 0xA8, 0x98, 0x20, 0xC4, 0xA9,\n0x2A, 0x48, 0xC1, 0x86, 0xE8, 0x90, 0x26, 0x08, 0x81, 0x0F, 0x08, 0x69, 0x3B, 0x48, 0xDE, 0x2B,\n0xA7, 0x87, 0x08, 0x31, 0xFC, 0x03, 0x1D, 0xAE, 0x9C, 0xFC, 0x1C, 0xDD, 0xEF, 0x67, 0xDD, 0xEE,\n0xBE, 0x19, 0xFA, 0x85, 0x45, 0x86, 0x41, 0xAA, 0x0E, 0x1D, 0xE4, 0x21, 0x1A, 0xD5, 0x7A, 0xD7,\n0xB6, 0x94, 0xC5, 0x07, 0x88, 0x58, 0x7C, 0x20, 0xEF, 0x66, 0x5E, 0x7D, 0x53, 0x9C, 0xD4, 0x74,\n0x90, 0xE5, 0x39, 0x1F, 0x5F, 0xB7, 0x09, 0x49, 0xFF, 0x48, 0x3A, 0x04, 0x0A, 0xE9, 0xAD, 0xD8,\n0x48, 0x31, 0xD1, 0x16, 0xC5, 0xBC, 0x9C, 0xC5, 0x47, 0xE3, 0x76, 0xF7, 0x6B, 0xE5, 0xE7, 0x2E,\n0x21, 0xF0, 0x81, 0xFE, 0x18, 0xBE, 0x62, 0x82, 0xB8, 0x8A, 0x0F, 0x85, 0xF0, 0x37, 0xEA, 0xAF,\n0xEC, 0xFF, 0x68, 0x23, 0xBC, 0x62, 0xB9, 0xF9, 0x29, 0x6A, 0x54, 0xE3, 0x0E, 0x32, 0x9C, 0x23,\n0x10, 0x39, 0x36, 0x3A, 0xEA, 0x0F, 0x57, 0xC8, 0xF1, 0x90, 0xDB, 0x72, 0x86, 0xC5, 0xF0, 0xF8,\n0x80, 0x90, 0xA2, 0x98, 0x05, 0x23, 0x12, 0x74, 0x54, 0x3C, 0xA4, 0x40, 0x05, 0x3E, 0x90, 0xCF,\n0x87, 0x50, 0x37, 0xF8, 0xB0, 0x11, 0xE1, 0x4E, 0xDE, 0x57, 0xFB, 0x1E, 0x73, 0x10, 0x85, 0x01,\n0xE5, 0xA9, 0x6D, 0xDF, 0x70, 0x72, 0x13, 0x53, 0x25, 0x67, 0xCE, 0x3A, 0x16, 0x49, 0x19, 0x6E,\n0x4E, 0x32, 0x6E, 0x88, 0x5D, 0xF5, 0x5B, 0xD2, 0x0F, 0x64, 0xF0, 0x81, 0x28, 0xF7, 0xD6, 0x3E,\n0x72, 0x5B, 0xBE, 0xD8, 0xE2, 0x03, 0x75, 0x50, 0x31, 0xEC, 0x90, 0x7E, 0x74, 0xFA, 0x13, 0xD3,\n0x44, 0x3A, 0x11, 0x72, 0x33, 0xDE, 0x1E, 0xC4, 0x3F, 0x58, 0x46, 0x1D, 0x24, 0xFD, 0x03, 0x3C,\n0x76, 0xF1, 0x78, 0x3A, 0x8E, 0xD1, 0x81, 0x7D, 0x78, 0x84, 0x5C, 0xDD, 0x6A, 0x5A, 0x15, 0xF2,\n0xF8, 0x40, 0xCD, 0x3B, 0x15, 0x0B, 0x3E, 0x6A, 0xF1, 0x15, 0x49, 0x7E, 0xE0, 0xF6, 0x56, 0x1E,\n0x1F, 0x40, 0x62, 0xF0, 0xE1, 0x11, 0xB2, 0x7C, 0x15, 0x90, 0x2C, 0xC7, 0x1C, 0x64, 0x49, 0x7C,\n0xC5, 0xC2, 0x47, 0xD2, 0xAB, 0xE5, 0x5D, 0xE0, 0x50, 0x06, 0xA2, 0x0D, 0xE9, 0xB8, 0x26, 0x19,\n0x9F, 0xB2, 0xF8, 0xE3, 0xA5, 0x22, 0x8F, 0x0F, 0x54, 0x03, 0x44, 0x74, 0x94, 0x7A, 0xAF, 0x72,\n0xAF, 0xC3, 0x07, 0x84, 0xA4, 0x69, 0x08, 0x68, 0x72, 0x90, 0xF8, 0xBB, 0xB0, 0x90, 0xFC, 0x23,\n0x1B, 0xA9, 0x7A, 0x1C, 0xB2, 0x50, 0x71, 0x1C, 0x3B, 0x35, 0x44, 0x0A, 0x07, 0xD1, 0x13, 0x3A,\n0x31, 0x38, 0x08, 0x77, 0xBD, 0x7F, 0xD9, 0xE0, 0xC3, 0x25, 0xE4, 0x4A, 0xE1, 0x55, 0x45, 0x1E,\n0x1F, 0xA8, 0x98, 0xEB, 0xAC, 0xBF, 0x85, 0x90, 0xC2, 0x43, 0x80, 0x02, 0x52, 0x9E, 0xB7, 0x75,\n0x79, 0x7C, 0xE0, 0x22, 0x16, 0x1F, 0x00, 0x32, 0xFD, 0x69, 0xC2, 0x5E, 0xBB, 0xC1, 0xBF, 0x77,\n0x63, 0x39, 0x48, 0x09, 0x47, 0x2E, 0x53, 0xE5, 0x5D, 0x41, 0xC2, 0x0C, 0xD2, 0x3C, 0xE3, 0x03,\n0x21, 0x54, 0x7B, 0x5F, 0xAA, 0x6A, 0xB5, 0x07, 0x11, 0x26, 0x52, 0x02, 0x22, 0x3E, 0xEA, 0xB2,\n0xF8, 0x40, 0x14, 0xDC, 0xCE, 0x1E, 0x79, 0x11, 0x20, 0x0B, 0x91, 0x46, 0x09, 0x59, 0xE9, 0x33,\n0xB6, 0xA5, 0x13, 0xAB, 0x65, 0x58, 0x5A, 0x88, 0xF8, 0x08, 0x71, 0x96, 0x32, 0x0E, 0xCE, 0x72,\n0x6F, 0x83, 0x0F, 0x97, 0x10, 0xFC, 0xA3, 0x50, 0x1D, 0x8F, 0x0A, 0x1F, 0x94, 0x7B, 0xB9, 0xC5,\n0x84, 0x39, 0x5F, 0xA3, 0x83, 0x8E, 0x61, 0x99, 0x7E, 0x3C, 0xE3, 0x1F, 0x85, 0x1C, 0x3E, 0xD0,\n0xBE, 0xC1, 0x87, 0xED, 0x21, 0xC1, 0x07, 0x3A, 0xBE, 0xC2, 0x51, 0x4D, 0x44, 0x96, 0x6A, 0x9F,\n0x73, 0x5A, 0x8B, 0x65, 0x9C, 0x8F, 0xBC, 0xB6, 0xAE, 0x09, 0xD0, 0xBB, 0x58, 0xD1, 0x3C, 0xE8,\n0xB8, 0x67, 0x11, 0x3E, 0x4A, 0x35, 0xCA, 0xBB, 0x35, 0x01, 0x48, 0x8B, 0x0F, 0x5A, 0x86, 0x1E,\n0x1F, 0x34, 0xD5, 0xB5, 0x12, 0xE0, 0xDA, 0xAE, 0x52, 0x6B, 0xD5, 0x22, 0xF4, 0x18, 0xC2, 0x2C,\n0x27, 0xFF, 0x00, 0x11, 0x7D, 0x32, 0xA4, 0x4C, 0x42, 0xF0, 0x8F, 0xBC, 0x82, 0x1D, 0xB5, 0xD1,\n0x0E, 0x79, 0x48, 0x83, 0x0F, 0xD4, 0x28, 0x5F, 0xD5, 0x34, 0x72, 0x07, 0x6F, 0x8B, 0x10, 0x44,\n0x08, 0x25, 0x22, 0x2A, 0x0B, 0x2F, 0xF1, 0xBE, 0x7C, 0x74, 0xE3, 0xF3, 0x21, 0xE4, 0x1B, 0x7C,\n0x78, 0x84, 0x9C, 0x7F, 0xC7, 0xBB, 0xE8, 0x80, 0x95, 0x5A, 0xAA, 0x5E, 0x39, 0xA9, 0x24, 0x99,\n0xE3, 0xF1, 0x55, 0xC2, 0xB1, 0xEE, 0x12, 0x8F, 0x5E, 0x24, 0xE5, 0x69, 0x27, 0xF8, 0x47, 0x55,\n0x36, 0x1F, 0x78, 0x08, 0x80, 0x90, 0x9E, 0x57, 0xE4, 0xE3, 0x41, 0x53, 0x3D, 0x47, 0xBE, 0x73,\n0x32, 0x73, 0xD4, 0xE1, 0x21, 0x65, 0xF9, 0x4A, 0x66, 0x31, 0xB2, 0x7C, 0x98, 0x88, 0xD0, 0x3E,\n0xE7, 0x34, 0xBD, 0x51, 0xA5, 0xBC, 0xDB, 0x54, 0x8D, 0x8F, 0x39, 0x88, 0xFC, 0xBE, 0x6D, 0x68,\n0x43, 0xA7, 0x90, 0xB4, 0x1B, 0x22, 0xCA, 0xA5, 0x72, 0x57, 0x23, 0xFE, 0x51, 0x93, 0x85, 0x07,\n0xDA, 0x37, 0xF0, 0xF0, 0x08, 0x59, 0xA2, 0xB4, 0x8E, 0x64, 0xA5, 0x96, 0x88, 0xEC, 0x6A, 0xF9,\n0x47, 0xB3, 0x21, 0x22, 0x3E, 0x3E, 0x7A, 0x0D, 0x3D, 0x90, 0x3C, 0x84, 0xB6, 0x5B, 0x2C, 0x5A,\n0xBF, 0xB4, 0xE4, 0xF1, 0x81, 0x3E, 0x00, 0x04, 0x3C, 0xAA, 0xB2, 0xF8, 0x40, 0x14, 0xB1, 0x92,\n0x71, 0x70, 0x50, 0x78, 0xB5, 0xD6, 0xD2, 0xAB, 0x4B, 0x42, 0xC6, 0xDB, 0x1F, 0x2C, 0x45, 0x53,\n0x1D, 0x07, 0x21, 0x37, 0x04, 0x94, 0x23, 0xDB, 0xC8, 0x43, 0x2A, 0x7C, 0xF8, 0x84, 0x10, 0x5E,\n0x59, 0x84, 0x6C, 0xA7, 0x44, 0xAC, 0x44, 0x78, 0xD5, 0x58, 0x8A, 0x8E, 0xFB, 0x3F, 0xCC, 0x9D,\n0xCD, 0x6B, 0x2C, 0x45, 0x14, 0xC5, 0xCD, 0xC6, 0x3C, 0x19, 0x62, 0x34, 0xB8, 0x9B, 0x5D, 0x16,\n0x22, 0x86, 0xC1, 0x8F, 0x2C, 0xB2, 0x88, 0x10, 0x19, 0x0C, 0xE6, 0xE1, 0x32, 0x03, 0x6E, 0xDC,\n0x09, 0x32, 0x41, 0x7C, 0x48, 0xC0, 0x8D, 0x20, 0x41, 0xD0, 0xED, 0xA0, 0x7B, 0x57, 0xFE, 0xA5,\n0xDE, 0x3E, 0x73, 0xDB, 0x9F, 0x53, 0xA9, 0xAA, 0x3E, 0x8D, 0x08, 0x9E, 0xAA, 0xFE, 0x98, 0xBC,\n0x79, 0xCF, 0x4C, 0x75, 0xFD, 0xFA, 0xD4, 0xBD, 0x77, 0x66, 0xA4, 0xFC, 0xD1, 0x90, 0xCD, 0x07,\n0x1E, 0x52, 0xF2, 0xE1, 0x13, 0x92, 0x01, 0xDF, 0x38, 0xE0, 0x72, 0x70, 0x7C, 0x3C, 0xB6, 0xC2,\n0x42, 0x58, 0x37, 0xD7, 0x5B, 0xA5, 0xFC, 0x91, 0x3A, 0x62, 0xFA, 0xC4, 0x01, 0x0F, 0x51, 0x0F,\n0xE9, 0x08, 0x1F, 0x16, 0x21, 0xA7, 0xCB, 0xBE, 0xBE, 0x4E, 0x40, 0x28, 0x0F, 0xB6, 0x0D, 0xC7,\n0xE1, 0x03, 0xBD, 0x95, 0xBF, 0x71, 0x26, 0x78, 0x59, 0x38, 0xC6, 0xBE, 0xEA, 0x21, 0x10, 0x12,\n0xDB, 0x87, 0x53, 0x80, 0x6C, 0x0E, 0x1C, 0x24, 0xE1, 0x18, 0x91, 0x40, 0x30, 0x53, 0xA4, 0x77,\n0xA7, 0xE4, 0xF0, 0x81, 0x5C, 0x3E, 0x20, 0x04, 0xF9, 0x78, 0x24, 0x4F, 0xC6, 0x3F, 0xEF, 0xF3,\n0x81, 0x87, 0xC0, 0xC7, 0x3C, 0x42, 0x58, 0x52, 0x95, 0x29, 0x92, 0x11, 0x15, 0x4A, 0x57, 0x94,\n0x3F, 0xDA, 0xED, 0xC3, 0x8A, 0x7F, 0xC8, 0x40, 0xD4, 0xE2, 0x8C, 0x59, 0xA3, 0x55, 0x57, 0xA2,\n0x21, 0x1F, 0xA1, 0xFC, 0xD1, 0x56, 0x99, 0xBE, 0xEA, 0xEB, 0x65, 0x02, 0x22, 0xFF, 0x30, 0x08,\n0x81, 0x0F, 0x83, 0x10, 0x3E, 0xC9, 0x72, 0x03, 0xF3, 0x63, 0xEC, 0xC1, 0xC3, 0x23, 0x4A, 0x86,\n0xC4, 0xE7, 0x93, 0xC3, 0x38, 0xC6, 0x21, 0x94, 0xCF, 0xB5, 0x07, 0x14, 0xA1, 0x82, 0x87, 0x78,\n0xFE, 0x81, 0xAC, 0xF8, 0x03, 0x75, 0xD3, 0x57, 0xD5, 0x82, 0x08, 0xBA, 0x8A, 0xAD, 0xCF, 0x08,\n0x6F, 0x6A, 0x24, 0xBD, 0xDB, 0x95, 0xCF, 0x87, 0xD0, 0xF7, 0xF8, 0x40, 0x10, 0x92, 0x23, 0xAF,\n0xA5, 0x2D, 0x49, 0x76, 0x16, 0x5B, 0xAA, 0xAA, 0xE3, 0x20, 0xF0, 0xD1, 0x6E, 0x14, 0x44, 0x14,\n0x9F, 0x8F, 0xD9, 0x4E, 0xED, 0x33, 0x08, 0x49, 0x34, 0x6E, 0x24, 0xDE, 0xFB, 0x3E, 0xF2, 0xF1,\n0x56, 0x77, 0x67, 0xF2, 0x01, 0x21, 0x01, 0xC8, 0x84, 0x7F, 0x50, 0x32, 0x84, 0x0F, 0x43, 0xBB,\n0xF1, 0x57, 0xCF, 0xC5, 0x23, 0xE8, 0xC3, 0x46, 0x2E, 0x2D, 0x45, 0x48, 0x51, 0x3E, 0xEF, 0x36,\n0xC5, 0x21, 0xEF, 0xC8, 0x42, 0xC6, 0x1B, 0x16, 0x38, 0xD4, 0x15, 0xA1, 0xBA, 0xF0, 0x80, 0x8F,\n0xAE, 0x2C, 0x3E, 0x90, 0xEB, 0x1F, 0x10, 0x72, 0xAF, 0x8E, 0x7F, 0x74, 0xDA, 0x25, 0xFA, 0xC6,\n0x93, 0xCD, 0x07, 0x1E, 0x02, 0x1F, 0x3E, 0x21, 0x1A, 0xF6, 0x32, 0xEA, 0xFB, 0x36, 0xE9, 0xD0,\n0x41, 0x1A, 0x33, 0x58, 0xEF, 0x4D, 0x5F, 0x59, 0x42, 0x75, 0xC2, 0xF3, 0x5F, 0x72, 0x51, 0xCE,\n0x3C, 0x3A, 0x4C, 0x6A, 0x8D, 0xEF, 0x5C, 0xDC, 0x4D, 0xE2, 0xA1, 0xCD, 0xE3, 0x83, 0x50, 0x5D,\n0xFF, 0x8F, 0x42, 0x4B, 0x2F, 0xE1, 0xC3, 0x24, 0x44, 0x5C, 0x27, 0xEB, 0xBC, 0x34, 0x9D, 0xE9,\n0xB5, 0x1E, 0x15, 0x05, 0x11, 0x8D, 0x8A, 0x46, 0xD1, 0x68, 0x63, 0xFE, 0x0A, 0x33, 0xC7, 0x41,\n0xC0, 0x85, 0xF6, 0x11, 0xF6, 0xE1, 0x08, 0x3E, 0x2C, 0xC1, 0x87, 0x49, 0x08, 0x32, 0x18, 0xE1,\n0xFB, 0x46, 0x4D, 0xD9, 0x7C, 0xE0, 0x21, 0xF0, 0xE1, 0x2E, 0xB3, 0x8A, 0xA8, 0x4F, 0xAE, 0x0D,\n0x31, 0x44, 0x27, 0x63, 0x41, 0xC4, 0xBC, 0xB0, 0x63, 0x41, 0x44, 0x75, 0x64, 0x10, 0x19, 0x27,\n0x0E, 0x1E, 0xA2, 0x3D, 0xCB, 0xAC, 0x49, 0xF3, 0xC8, 0x13, 0xF8, 0xB0, 0x24, 0x07, 0x31, 0x05,\n0x1E, 0x86, 0x5E, 0xEE, 0x4B, 0x86, 0x89, 0xFA, 0x51, 0x6E, 0x12, 0x15, 0x51, 0x5E, 0xA5, 0x8A,\n0xEA, 0x6F, 0x69, 0x79, 0x65, 0xB6, 0x61, 0xD0, 0xB9, 0x5D, 0x01, 0xC4, 0xA1, 0x00, 0x88, 0x77,\n0x5F, 0x59, 0x22, 0x7D, 0x65, 0x09, 0x3E, 0x3C, 0x42, 0x60, 0xC3, 0x69, 0x94, 0x07, 0x4D, 0xC1,\n0x87, 0x07, 0x09, 0x7C, 0xD8, 0x84, 0xB4, 0xA2, 0x3E, 0x32, 0xED, 0x90, 0x12, 0x4E, 0x6F, 0xF3,\n0x11, 0xBB, 0x5C, 0x5E, 0x71, 0x03, 0x15, 0x23, 0x9A, 0x40, 0x65, 0x3D, 0x4D, 0x3D, 0xF9, 0xE8,\n0x9A, 0x47, 0xF4, 0xE4, 0x84, 0xF2, 0xA0, 0x63, 0x0B, 0x00, 0x62, 0x08, 0x3E, 0x2C, 0x44, 0x82,\n0x90, 0x78, 0x69, 0x43, 0x47, 0xC1, 0x7F, 0x3C, 0xC4, 0x27, 0x39, 0x0E, 0x1E, 0xA2, 0x11, 0x42,\n0x07, 0x8F, 0x72, 0xFC, 0xB4, 0xED, 0x4F, 0xAF, 0x59, 0xF1, 0x16, 0x0E, 0x52, 0x7A, 0x88, 0x2E,\n0x1A, 0x7C, 0x78, 0xB2, 0xED, 0x43, 0x18, 0xE9, 0xD3, 0x51, 0xB6, 0xE2, 0xB9, 0x10, 0x62, 0xB5,\n0xB0, 0x8F, 0x59, 0xFF, 0x01, 0xF8, 0xB0, 0x7E, 0x7D, 0x13, 0x0F, 0xAA, 0xEA, 0x05, 0x0F, 0x6A,\n0x79, 0x86, 0xA9, 0x8B, 0x14, 0xA5, 0x7B, 0x37, 0xBA, 0xB6, 0x6E, 0x23, 0xFC, 0xD0, 0x0E, 0xE5,\n0x8C, 0x29, 0x1E, 0x06, 0x1F, 0x2F, 0x5F, 0x0A, 0x82, 0xB6, 0x7B, 0x00, 0x50, 0x3C, 0x93, 0xF4,\n0xAE, 0xE5, 0x20, 0xBE, 0x76, 0xC7, 0x47, 0xB3, 0x74, 0xA3, 0xAD, 0xFC, 0x21, 0x47, 0x74, 0xA3,\n0xDD, 0xE6, 0x66, 0x8E, 0x06, 0x40, 0x7C, 0xC5, 0x77, 0x39, 0xCC, 0xD1, 0x47, 0xEF, 0xBF, 0x1F,\n0xD3, 0x66, 0xED, 0xEA, 0x83, 0xF7, 0xD7, 0xF7, 0xF1, 0x85, 0xD2, 0x66, 0xBB, 0x8F, 0xED, 0xEA,\n0x29, 0xBE, 0x25, 0xCE, 0xED, 0xD1, 0xEE, 0xBF, 0xE1, 0xEF, 0x1B, 0x6D, 0xFD, 0x81, 0xDB, 0xF4,\n0x2A, 0xF5, 0x82, 0x67, 0x48, 0xD3, 0xDE, 0xD7, 0xF5, 0xCD, 0x1C, 0x6D, 0x6E, 0x98, 0x1F, 0x37,\n0xCE, 0x2C, 0x9B, 0xA9, 0xDD, 0xD2, 0xD3, 0x7C, 0x07, 0xD9, 0x1D, 0xAF, 0x5E, 0x5F, 0xCD, 0x10,\n0x1F, 0x64, 0x41, 0xC5, 0x79, 0xEE, 0x74, 0x8C, 0xA1, 0x31, 0xBB, 0x76, 0xD7, 0x5F, 0xCE, 0x22,\n0xE4, 0xA3, 0x8F, 0xEE, 0xE6, 0x68, 0xFB, 0xFE, 0xD6, 0x9F, 0x61, 0x91, 0x0D, 0xFE, 0xF9, 0xE7,\n0x20, 0xC4, 0x6D, 0xF7, 0x97, 0x57, 0x31, 0xED, 0x7F, 0x7B, 0xB2, 0xF5, 0xE9, 0xD5, 0xD5, 0xF0,\n0xB7, 0xEC, 0xF6, 0xF3, 0xCF, 0x73, 0x08, 0x09, 0xBE, 0xB7, 0x77, 0x73, 0x14, 0xFF, 0x07, 0x68,\n0x7B, 0xF0, 0x15, 0xA7, 0xFB, 0x17, 0x56, 0x7C, 0x30, 0x27, 0x10, 0x3F, 0x29, 0x1F, 0x1E, 0xAF,\n0x7C, 0xC5, 0x04, 0x3E, 0xDE, 0xCD, 0x72, 0x90, 0x5F, 0x5E, 0x2E, 0x4D, 0x5D, 0xFC, 0x1A, 0x5F,\n0x12, 0xB7, 0x5A, 0x1D, 0xDB, 0x5A, 0xAD, 0x16, 0xE3, 0xE7, 0xBE, 0xE2, 0x38, 0xF6, 0xE3, 0x3C,\n0x03, 0x0F, 0x3D, 0x88, 0x15, 0x66, 0x6C, 0xD2, 0x87, 0x9B, 0xD8, 0x6E, 0x86, 0x78, 0x7D, 0xD3,\n0x38, 0x0F, 0x11, 0xA3, 0x9B, 0x78, 0x84, 0xEE, 0xDE, 0xDF, 0xBE, 0x7F, 0x67, 0xDC, 0x1F, 0xEF,\n0xF2, 0x49, 0xC3, 0xEA, 0xDC, 0x6C, 0x31, 0x23, 0x07, 0x42, 0x4C, 0xED, 0xBF, 0xC9, 0xDD, 0xE7,\n0x23, 0x9E, 0x2C, 0x42, 0x3C, 0x05, 0x1F, 0xC3, 0xEF, 0xE3, 0xE3, 0x11, 0x37, 0x83, 0xE1, 0x55,\n0xDB, 0x4D, 0x83, 0x39, 0x39, 0xE4, 0x5F, 0x6A, 0x13, 0x1F, 0xA1, 0x61, 0xE2, 0xEB, 0x22, 0xEA,\n0x02, 0xB6, 0xCE, 0x75, 0xF1, 0xBF, 0x88, 0x99, 0x70, 0x30, 0x71, 0xE8, 0x39, 0x7B, 0xE8, 0xB1,\n0x3B, 0x5E, 0x2D, 0x86, 0xC9, 0xE6, 0xCE, 0xC9, 0xA3, 0x39, 0x31, 0xC8, 0x49, 0x38, 0xC8, 0xE9,\n0x4B, 0x93, 0x8F, 0xDD, 0xC5, 0xEE, 0x24, 0x4C, 0xC4, 0x26, 0x64, 0x21, 0x42, 0x42, 0x8B, 0x78,\n0xAD, 0x71, 0x32, 0xD0, 0x72, 0x3C, 0xBC, 0xA8, 0x45, 0x1C, 0xA2, 0x2F, 0xF4, 0x53, 0xFD, 0xA1,\n0x5E, 0xE8, 0x30, 0x30, 0x37, 0x9B, 0x4D, 0xBA, 0xAC, 0x8E, 0x8D, 0xF3, 0xD8, 0xA8, 0x82, 0x98,\n0x7C, 0x48, 0x61, 0x0C, 0xCE, 0x0C, 0x08, 0x3E, 0xB6, 0x22, 0x24, 0x56, 0x1F, 0x3E, 0x1F, 0xAF,\n0x82, 0x90, 0x4B, 0x93, 0x0F, 0x01, 0x62, 0x13, 0xA2, 0x27, 0xBB, 0x84, 0xC4, 0xB3, 0x02, 0x8E,\n0x9F, 0x6D, 0x0F, 0x79, 0xB5, 0x7E, 0x5F, 0xDA, 0xC6, 0xEB, 0xB6, 0xF8, 0xF8, 0x28, 0x05, 0x03,\n0xB5, 0x0D, 0x4E, 0xAE, 0x37, 0x49, 0x48, 0x5E, 0x3B, 0xED, 0x5A, 0xE7, 0x9B, 0xE0, 0x43, 0x53,\n0xE1, 0xE8, 0x48, 0x13, 0xE4, 0x8B, 0x61, 0x7F, 0xDC, 0xEE, 0x8B, 0xA3, 0xC5, 0x2A, 0xA6, 0x9A,\n0x7F, 0xCF, 0x56, 0xB5, 0x62, 0x77, 0xF1, 0x72, 0x69, 0xA7, 0x79, 0x87, 0x83, 0xA1, 0xDD, 0xEE,\n0x22, 0xFE, 0xE5, 0x0B, 0x9F, 0x90, 0x85, 0x10, 0x19, 0x88, 0x10, 0x1B, 0x71, 0x1C, 0xF8, 0x5F,\n0xE4, 0x3D, 0x60, 0x81, 0x8D, 0x0C, 0x0A, 0x34, 0xD4, 0x8E, 0x62, 0x84, 0xB8, 0x95, 0x6C, 0xB4,\n0x95, 0xE7, 0xB1, 0x6D, 0x92, 0x8F, 0x8D, 0x4B, 0x88, 0xAE, 0xEA, 0x59, 0x10, 0xE2, 0xF1, 0xB1,\n0x8D, 0x26, 0xAD, 0xDF, 0x75, 0x96, 0x57, 0x9A, 0x8E, 0xD1, 0xD7, 0x03, 0x21, 0x13, 0x4D, 0x7C,\n0x48, 0x51, 0x21, 0xB4, 0xFD, 0x43, 0x32, 0x57, 0x59, 0xF1, 0x8B, 0x44, 0x0B, 0x99, 0x74, 0xEB,\n0xA5, 0xEA, 0x25, 0xDB, 0x80, 0x9C, 0x69, 0x38, 0x7D, 0xFF, 0x90, 0xF2, 0xC2, 0x6E, 0xB4, 0x10,\n0xA8, 0x9F, 0x7F, 0x38, 0xF0, 0x91, 0x73, 0x81, 0xD5, 0xC5, 0x71, 0xA3, 0x6B, 0x0E, 0xC9, 0x3F,\n0x04, 0xC8, 0xCA, 0xE5, 0x43, 0x79, 0xAC, 0x53, 0x3B, 0x48, 0x7F, 0x63, 0x69, 0x3C, 0xF7, 0x74,\n0xA7, 0x7F, 0xD9, 0x24, 0x64, 0x05, 0x20, 0x41, 0x88, 0x48, 0x48, 0x48, 0xD4, 0x43, 0x89, 0xCD,\n0x78, 0x97, 0x48, 0x3C, 0xF0, 0x90, 0x80, 0xA1, 0x6A, 0x20, 0x6A, 0xC9, 0xC7, 0xB9, 0x4D, 0xC8,\n0x47, 0x7B, 0x3C, 0xA4, 0xAD, 0xE3, 0x1F, 0xEB, 0xB4, 0x90, 0x38, 0xBC, 0x9A, 0x9C, 0x66, 0xC2,\n0x43, 0x3D, 0x48, 0xF9, 0x41, 0x93, 0xB8, 0xD3, 0x7F, 0x18, 0xF9, 0x90, 0x89, 0xF8, 0x7C, 0x40,\n0x48, 0xBF, 0x5F, 0x7E, 0x23, 0x3E, 0xA2, 0x87, 0x1C, 0x40, 0xF4, 0x32, 0x7D, 0x0F, 0xD1, 0x40,\n0xA6, 0x2C, 0xFF, 0x40, 0x18, 0x05, 0x9E, 0x71, 0x78, 0x1E, 0x07, 0xE1, 0xA1, 0x36, 0x4E, 0x96,\n0xB6, 0x7D, 0xC4, 0x4E, 0x7C, 0xA8, 0x1B, 0x1A, 0xC2, 0x8F, 0xD4, 0xC5, 0xEE, 0x74, 0xD2, 0x3E,\n0xE2, 0x19, 0xE3, 0x7B, 0xB1, 0x4E, 0x5F, 0x7A, 0x7C, 0x48, 0x41, 0xC8, 0x04, 0x22, 0xAB, 0xF8,\n0x7D, 0xC7, 0x3E, 0x86, 0xEA, 0x72, 0x0B, 0x90, 0xD0, 0xD2, 0x4A, 0x0D, 0xFF, 0x50, 0x13, 0x21,\n0xBA, 0xAF, 0x34, 0x0D, 0x44, 0x7C, 0xE0, 0x21, 0x16, 0x1F, 0x30, 0x72, 0xB7, 0xED, 0xE3, 0x71,\n0x97, 0x93, 0x25, 0x35, 0x9D, 0x02, 0x82, 0x8F, 0x20, 0xE4, 0x9B, 0xBD, 0x47, 0xB4, 0x3B, 0x7C,\n0xE0, 0x21, 0x06, 0x1F, 0x10, 0x32, 0xC1, 0x87, 0x96, 0x57, 0x74, 0xCB, 0x3F, 0xB6, 0x43, 0x17,\n0x29, 0x93, 0x80, 0x30, 0x8E, 0x53, 0x71, 0x08, 0xFE, 0x71, 0x0E, 0x21, 0x71, 0x61, 0x3B, 0x06,\n0x82, 0x7F, 0xA8, 0xE5, 0x5C, 0x69, 0x3A, 0x08, 0xFE, 0x91, 0x7D, 0xE5, 0xF1, 0x21, 0xC5, 0x82,\n0x68, 0xD2, 0x15, 0x96, 0xF9, 0x5E, 0xAC, 0x49, 0x0F, 0x09, 0xDE, 0x4E, 0xD0, 0xB4, 0x87, 0x2C,\n0x0E, 0xFA, 0x6A, 0x78, 0x2D, 0x0A, 0x37, 0x40, 0x62, 0xB1, 0xDF, 0x27, 0x38, 0x37, 0xE0, 0x11,\n0xB0, 0x90, 0xCF, 0xA8, 0x1B, 0xC8, 0xB5, 0x84, 0x87, 0x78, 0x7C, 0x70, 0x65, 0xAD, 0xF8, 0x63,\n0x1B, 0xCD, 0xF2, 0x10, 0xF1, 0x41, 0x1F, 0x3C, 0xA4, 0x87, 0xC7, 0xFD, 0x95, 0x84, 0x87, 0x78,\n0xE1, 0x07, 0x6A, 0x13, 0x22, 0x3E, 0xD2, 0x3E, 0xF0, 0x34, 0xCB, 0x3F, 0xB6, 0xDA, 0x45, 0xC3,\n0x43, 0x7A, 0xCB, 0x2B, 0x84, 0x5F, 0x70, 0xD4, 0x96, 0x4A, 0x3A, 0xCE, 0xF1, 0x10, 0xD6, 0x07,\n0x98, 0x49, 0x9E, 0xE3, 0x1F, 0x78, 0x48, 0xD7, 0x41, 0xDE, 0x5E, 0x29, 0xFE, 0xA0, 0x9B, 0x7C,\n0x40, 0x48, 0xDF, 0x3F, 0x78, 0xBB, 0x7B, 0xDF, 0x42, 0x4E, 0x14, 0x7E, 0x20, 0x92, 0x59, 0x5D,\n0x40, 0x00, 0x9B, 0x78, 0x63, 0x41, 0x16, 0x2B, 0x3D, 0x64, 0x21, 0x3E, 0x68, 0x49, 0x48, 0xA8,\n0xE7, 0x1F, 0x28, 0x1E, 0xDA, 0xFE, 0x91, 0x7B, 0x83, 0x8F, 0x94, 0x11, 0x88, 0xFC, 0x5C, 0x00,\n0x92, 0xC9, 0x2C, 0x6D, 0x95, 0x29, 0x7C, 0x38, 0xDD, 0x35, 0xFD, 0xBB, 0xD9, 0xDE, 0xE7, 0x7F,\n0xA1, 0x6D, 0x22, 0xD1, 0x0A, 0xFF, 0x98, 0x0C, 0xD5, 0xF3, 0x66, 0xC0, 0xED, 0xA0, 0x6F, 0x22,\n0x90, 0x51, 0x78, 0xC8, 0x57, 0xC5, 0x31, 0xCF, 0xB8, 0x56, 0x10, 0x42, 0x88, 0x89, 0x99, 0xE8,\n0xBC, 0xE4, 0x23, 0x5A, 0x46, 0xAE, 0xB5, 0xAE, 0x19, 0xC4, 0x1C, 0x23, 0x10, 0xE9, 0xA4, 0xAF,\n0x0E, 0x15, 0xAB, 0xA2, 0x09, 0xFF, 0x00, 0x10, 0x3C, 0xA4, 0xE3, 0x1F, 0xE8, 0xA2, 0x4D, 0xC8,\n0x0A, 0x3E, 0xE8, 0x14, 0x44, 0xA2, 0x29, 0x8B, 0x45, 0x18, 0x32, 0x00, 0x51, 0xB4, 0xF4, 0x90,\n0x9E, 0x7F, 0x94, 0x88, 0xF8, 0xFE, 0xD1, 0xF7, 0x10, 0x66, 0xCB, 0x9A, 0x39, 0x13, 0x99, 0x1E,\n0x93, 0x0F, 0x3C, 0xA4, 0xC2, 0x46, 0x6C, 0x3F, 0x5C, 0x21, 0x08, 0x31, 0xFC, 0xC3, 0x23, 0x44,\n0x7C, 0x98, 0x84, 0xE8, 0x45, 0x15, 0x37, 0x82, 0x34, 0x91, 0x6E, 0xFC, 0x31, 0xE9, 0x21, 0x50,\n0x72, 0x8D, 0x0A, 0x0F, 0xC1, 0x42, 0x74, 0x96, 0xC7, 0x5C, 0x4B, 0x14, 0x1E, 0xB2, 0x68, 0x05,\n0x20, 0xAC, 0xE4, 0xE9, 0xA8, 0xC9, 0x07, 0xBA, 0x68, 0x12, 0xC2, 0xFF, 0x0A, 0x5A, 0x80, 0x48,\n0xF1, 0x43, 0xC3, 0x3F, 0x1C, 0x0F, 0x59, 0x3C, 0xEF, 0x4A, 0x66, 0x65, 0x3A, 0x77, 0x21, 0xFA,\n0xB5, 0x67, 0x7D, 0x55, 0x34, 0x15, 0xD5, 0xF1, 0x8C, 0xB6, 0x7F, 0x9C, 0x43, 0x88, 0xE9, 0x1F,\n0x3A, 0xF1, 0xEC, 0x03, 0x19, 0xEB, 0x2B, 0xBA, 0x3C, 0x04, 0x2A, 0x40, 0xE4, 0x07, 0x66, 0x7B,\n0x41, 0x88, 0xC9, 0x07, 0x81, 0x48, 0xD5, 0x3E, 0x82, 0x8F, 0x68, 0x3E, 0x21, 0x7A, 0xB1, 0x0A,\n0x3F, 0xB4, 0xE1, 0x21, 0x3D, 0x3E, 0xC0, 0x23, 0x05, 0x1D, 0x1C, 0x25, 0xB0, 0x90, 0x52, 0xCA,\n0xC1, 0x10, 0x78, 0xFC, 0xBD, 0x52, 0x20, 0xFC, 0x28, 0x3C, 0xA4, 0xE5, 0x20, 0xC7, 0xF2, 0x8F,\n0xB2, 0x1B, 0x7C, 0x58, 0x1E, 0x12, 0x7C, 0x00, 0x88, 0xBC, 0xE4, 0xCD, 0x9E, 0x7F, 0xB8, 0x84,\n0xAC, 0x2A, 0x80, 0x90, 0xEE, 0xA5, 0x3A, 0x78, 0x2C, 0x50, 0x86, 0xA3, 0x86, 0xA1, 0xE1, 0x21,\n0xB1, 0xA9, 0xE1, 0x1F, 0xE0, 0x51, 0xAA, 0xCF, 0x07, 0x78, 0xA4, 0x1A, 0xF5, 0x10, 0xE6, 0x0B,\n0x51, 0x88, 0x44, 0x1C, 0xD2, 0xF6, 0x0F, 0xBA, 0x08, 0x29, 0x27, 0x31, 0xE9, 0x2B, 0x83, 0x10,\n0xF8, 0xA8, 0x13, 0xF2, 0xC3, 0xE1, 0x3F, 0x8E, 0x7F, 0x18, 0x84, 0x50, 0xFE, 0xA8, 0xAA, 0x99,\n0xEE, 0x65, 0x2C, 0x0B, 0x48, 0xEA, 0xF1, 0xB9, 0x6E, 0x5C, 0x98, 0x07, 0x1E, 0x52, 0x33, 0x10,\n0xFC, 0xA3, 0x6C, 0xAD, 0x44, 0x56, 0x96, 0x3F, 0xCA, 0x6E, 0xF1, 0x81, 0x20, 0xA4, 0xE2, 0x1F,\n0x5F, 0x07, 0x19, 0x02, 0x24, 0x11, 0x89, 0x1F, 0x3F, 0x7F, 0xEA, 0x05, 0xFE, 0xE1, 0x79, 0xC8,\n0xA2, 0x45, 0x08, 0x6B, 0xAA, 0x05, 0x05, 0x90, 0x81, 0x85, 0x5A, 0xA3, 0x64, 0x98, 0x16, 0xD2,\n0xF4, 0x0F, 0x1D, 0x82, 0x9C, 0x16, 0x1E, 0x55, 0x0B, 0xA9, 0x99, 0x88, 0xCA, 0x1F, 0x4D, 0xF5,\n0xF3, 0x57, 0x65, 0x5F, 0x8F, 0x48, 0x40, 0x09, 0xE9, 0x2B, 0x97, 0x90, 0x0A, 0x1E, 0xCD, 0x74,\n0x6F, 0xCB, 0x3F, 0x3A, 0x05, 0x11, 0x78, 0xD8, 0xC2, 0x86, 0x7A, 0xDD, 0x43, 0x18, 0x3B, 0x46,\n0x33, 0xCF, 0x45, 0x84, 0x76, 0x44, 0xE8, 0xD7, 0x6D, 0xDD, 0x10, 0x82, 0xC4, 0x4E, 0x37, 0xBE,\n0xBA, 0x7F, 0xA8, 0xD5, 0x4A, 0x21, 0x47, 0x45, 0xFA, 0xAA, 0x13, 0x87, 0x50, 0xFE, 0xF0, 0xBF,\n0xF7, 0x47, 0x7C, 0x2C, 0x71, 0x90, 0xAF, 0x45, 0x4B, 0x2D, 0x54, 0x7F, 0x39, 0xB8, 0x50, 0x45,\n0x24, 0xB3, 0x2C, 0xFF, 0xC8, 0xA2, 0xFA, 0x2F, 0x23, 0x18, 0x19, 0x83, 0x2C, 0x82, 0x8F, 0x56,\n0x93, 0x89, 0xEC, 0xD1, 0x90, 0x74, 0x72, 0x8D, 0x4A, 0x48, 0xAA, 0x84, 0xD4, 0xF0, 0xD0, 0xA1,\n0x0A, 0x48, 0x4C, 0x0C, 0xCC, 0x23, 0xCF, 0xD1, 0xBA, 0xC6, 0x47, 0xB3, 0xAF, 0xBF, 0x51, 0xA8,\n0x50, 0xA6, 0x77, 0xDB, 0x88, 0x58, 0xFE, 0x81, 0x7A, 0xE5, 0x8F, 0xB2, 0x57, 0x09, 0x59, 0x97,\n0xAE, 0x01, 0x21, 0xD5, 0x82, 0x08, 0xC3, 0x07, 0x26, 0x3D, 0x0F, 0xA9, 0xDF, 0xC8, 0x8A, 0x40,\n0x64, 0xD8, 0x32, 0x3E, 0x07, 0x0F, 0xCB, 0x44, 0xE0, 0xA3, 0xD2, 0x4D, 0x3E, 0x28, 0x19, 0x36,\n0xBE, 0x59, 0x31, 0xB3, 0x58, 0x3A, 0xC6, 0x06, 0x21, 0x45, 0xF9, 0xA3, 0xA1, 0x8B, 0x5A, 0x41,\n0x64, 0xD1, 0xEC, 0x42, 0x44, 0xEC, 0x13, 0x83, 0x74, 0x46, 0x25, 0x48, 0x22, 0x4E, 0xCF, 0x93,\n0x2A, 0x1A, 0x84, 0xEA, 0x1D, 0x3C, 0x4A, 0x0B, 0xD1, 0x66, 0xF9, 0x07, 0x32, 0xC2, 0x0F, 0xFA,\n0xFA, 0x95, 0x66, 0xAD, 0xC7, 0x87, 0x50, 0x30, 0xFD, 0x03, 0x42, 0xAA, 0xE5, 0x0F, 0xD3, 0x43,\n0xF0, 0x0F, 0xA2, 0x0F, 0xD2, 0x59, 0x35, 0x0F, 0x61, 0xF8, 0x38, 0xA0, 0xB3, 0xBD, 0x71, 0xA0,\n0xEA, 0x55, 0x42, 0xE3, 0x82, 0x20, 0x76, 0x21, 0xFC, 0xA3, 0xD1, 0x30, 0x91, 0x38, 0xA3, 0xFC,\n0x61, 0x20, 0x42, 0x7A, 0xB7, 0x2E, 0xDE, 0x76, 0x52, 0xA6, 0xAF, 0xD2, 0x36, 0xE4, 0x20, 0x20,\n0xB2, 0x3C, 0xA9, 0x85, 0x1F, 0x96, 0x87, 0xAC, 0x86, 0xF3, 0x45, 0xAF, 0xAF, 0x32, 0xDD, 0x7B,\n0x9C, 0x0E, 0x82, 0x7F, 0xB4, 0x3C, 0x24, 0x03, 0xBA, 0xF4, 0xE1, 0xCA, 0x78, 0xF7, 0x08, 0x69,\n0xE0, 0x81, 0x9E, 0xFB, 0xC7, 0xF6, 0xC0, 0x3C, 0x74, 0x8E, 0xB6, 0x4E, 0xF8, 0x41, 0x7F, 0xF5,\n0x73, 0xE2, 0x41, 0xF9, 0xBC, 0xA7, 0xCB, 0x4B, 0x9F, 0x0F, 0x08, 0x61, 0xAB, 0xD8, 0x47, 0xAF,\n0x20, 0xF2, 0x3E, 0xC2, 0x38, 0x21, 0xA6, 0x2C, 0x88, 0x54, 0xD6, 0xA8, 0x15, 0x0F, 0x61, 0x91,\n0xA5, 0xF0, 0xA3, 0xEF, 0x21, 0xDC, 0xFD, 0xAE, 0x49, 0xEF, 0x36, 0x1A, 0x05, 0x91, 0x2C, 0x16,\n0x4C, 0x4E, 0x35, 0x9F, 0x0F, 0x8A, 0xEA, 0x94, 0x3F, 0x14, 0x7E, 0xE0, 0x20, 0x42, 0x45, 0x1B,\n0x45, 0x75, 0xF1, 0xF1, 0x62, 0x77, 0x32, 0xA5, 0x03, 0x0F, 0x59, 0x18, 0x84, 0xC8, 0x41, 0x42,\n0xAA, 0x08, 0xF6, 0x9B, 0x08, 0x49, 0x07, 0x69, 0xF9, 0x07, 0xBC, 0x40, 0x08, 0x7C, 0x74, 0x2C,\n0x24, 0x8B, 0xEA, 0xF8, 0x87, 0x26, 0x46, 0x5B, 0xE5, 0x2A, 0xEB, 0x15, 0x93, 0xAF, 0xD1, 0x29,\n0x88, 0xE0, 0x1F, 0xD6, 0x2A, 0x8B, 0xF2, 0x47, 0x5F, 0xF7, 0x23, 0x1E, 0xF1, 0x41, 0x14, 0xF8,\n0x68, 0xF6, 0xA2, 0x7C, 0x5E, 0x8D, 0x40, 0x32, 0xD1, 0x5B, 0x7A, 0x08, 0xCB, 0x2B, 0x46, 0xB2,\n0xD4, 0x33, 0xFF, 0xA0, 0x42, 0xD8, 0xF4, 0x90, 0x8D, 0xE3, 0x1F, 0x6A, 0x44, 0xAD, 0x71, 0x58,\n0xAC, 0xA6, 0xA6, 0x9A, 0xB8, 0xB0, 0xF8, 0xA0, 0x64, 0x88, 0x7F, 0xA0, 0x31, 0x48, 0x17, 0x2D,\n0xB9, 0x9D, 0xBA, 0x7C, 0xE0, 0x21, 0xE0, 0xE1, 0x79, 0x88, 0xB6, 0x22, 0x67, 0xD1, 0x49, 0x66,\n0x49, 0x9B, 0xB6, 0x67, 0x73, 0x25, 0x36, 0x35, 0x3E, 0x8C, 0x40, 0xE4, 0x8E, 0x29, 0xD2, 0x8A,\n0x42, 0x74, 0xF2, 0x41, 0xD6, 0x43, 0xA6, 0xFC, 0x83, 0x74, 0xAF, 0x3C, 0x84, 0xF2, 0x87, 0x49,\n0x48, 0x3C, 0x70, 0xFE, 0x82, 0x92, 0x59, 0xF9, 0xE9, 0x0F, 0xA7, 0x17, 0xFE, 0x51, 0xF5, 0x10,\n0x96, 0x5A, 0x20, 0xC2, 0xF0, 0x71, 0xE8, 0x11, 0x52, 0xF8, 0xC7, 0x79, 0xCB, 0x43, 0xD2, 0x41,\n0xA0, 0xA3, 0xD7, 0x78, 0xE7, 0xBB, 0x81, 0xC7, 0xA2, 0x9B, 0xBE, 0x6A, 0x17, 0x44, 0xF0, 0x8F,\n0x68, 0x9F, 0xBD, 0x41, 0x0C, 0x12, 0xE7, 0xC3, 0xE1, 0x6B, 0x25, 0xB3, 0x4E, 0xEB, 0xE5, 0x8F,\n0x7E, 0x32, 0x6B, 0x65, 0x12, 0xA2, 0x74, 0xAF, 0xF0, 0xF0, 0x5A, 0x12, 0x52, 0xCB, 0x18, 0x72,\n0xE4, 0xC4, 0xF1, 0x0F, 0xD6, 0x09, 0xEF, 0xEC, 0x09, 0xA1, 0x3C, 0x38, 0x25, 0xF8, 0x70, 0xA6,\n0x64, 0x7A, 0x48, 0x60, 0x62, 0x01, 0x12, 0x4F, 0x33, 0xF9, 0xC0, 0x43, 0xB2, 0x7C, 0x6E, 0x12,\n0x92, 0xE5, 0x41, 0x7C, 0x03, 0xDB, 0xD4, 0x83, 0xDC, 0x49, 0x98, 0x48, 0x61, 0x1D, 0xD1, 0xEB,\n0xE2, 0xD3, 0x51, 0x5D, 0xFF, 0x28, 0x23, 0x75, 0x1F, 0x10, 0x49, 0xE5, 0x73, 0xA3, 0xFB, 0x7C,\n0x50, 0x10, 0x29, 0xFD, 0x23, 0x63, 0x90, 0x50, 0xF2, 0x42, 0x51, 0x5D, 0xE9, 0x2B, 0x87, 0x3D,\n0x11, 0x22, 0x3C, 0xAC, 0xAE, 0x8F, 0x50, 0xF9, 0x7C, 0x84, 0xAF, 0x8A, 0x90, 0x46, 0xF2, 0x8A,\n0xA3, 0x4E, 0x75, 0x69, 0x2C, 0x3C, 0xD0, 0xDD, 0x56, 0xFE, 0xB1, 0xE5, 0x36, 0x5A, 0x89, 0x42,\n0xF4, 0x10, 0x44, 0x98, 0x71, 0x06, 0x21, 0x71, 0x93, 0xBF, 0xB2, 0x24, 0x2C, 0x4C, 0x3E, 0x08,\n0x44, 0x6C, 0xFF, 0xA0, 0x20, 0xD2, 0x2A, 0x7F, 0x34, 0x8A, 0xEA, 0x07, 0x78, 0x4C, 0x7B, 0xC8,\n0x35, 0x32, 0x3C, 0x24, 0xFC, 0xC3, 0x9F, 0x0B, 0xB9, 0xBC, 0x72, 0x01, 0x81, 0x0F, 0xCB, 0x43,\n0x28, 0x7F, 0x88, 0x06, 0xBE, 0x9B, 0x57, 0x3F, 0x90, 0x96, 0x62, 0x46, 0x45, 0x75, 0xFC, 0xC3,\n0xF4, 0x90, 0x85, 0xD9, 0xE3, 0xB9, 0x04, 0x20, 0x46, 0xD3, 0x07, 0x71, 0x0B, 0x18, 0x78, 0x58,\n0x89, 0xD4, 0x1F, 0x12, 0x10, 0xC3, 0x42, 0x74, 0x2E, 0xFF, 0xC8, 0x66, 0x88, 0xFC, 0x95, 0xD7,\n0x09, 0x3F, 0x5C, 0x42, 0x74, 0x70, 0x45, 0x78, 0xEE, 0xF5, 0x57, 0xFA, 0xF4, 0x20, 0x76, 0xC1,\n0x8B, 0xCE, 0x47, 0x69, 0x29, 0x78, 0x48, 0xC9, 0x46, 0x0F, 0x91, 0x2C, 0x9F, 0xAB, 0x83, 0x45,\n0xB7, 0x20, 0xF2, 0xC5, 0x8C, 0x99, 0x40, 0xF9, 0xC3, 0xE8, 0x75, 0x3E, 0xFC, 0xFF, 0x4F, 0x7A,\n0x52, 0x92, 0x0E, 0x12, 0xA7, 0x50, 0x12, 0x5B, 0x3C, 0x1D, 0x39, 0x84, 0x2C, 0x66, 0x20, 0x72,\n0x0C, 0x1E, 0xCE, 0x8D, 0xE3, 0xF3, 0x9B, 0x82, 0x8A, 0x7A, 0x10, 0x02, 0x22, 0x1F, 0xE9, 0xA2,\n0x4E, 0x10, 0xC2, 0xFE, 0xFD, 0x6D, 0x11, 0xB2, 0x56, 0xA3, 0x10, 0x3D, 0xD4, 0x46, 0xF8, 0x61,\n0xF4, 0x57, 0x6B, 0x66, 0xBB, 0x21, 0x2D, 0xC6, 0xE6, 0xFD, 0x8D, 0x57, 0x36, 0x20, 0x02, 0xBB,\n0x4A, 0x7D, 0x89, 0x0A, 0xA7, 0x77, 0x8C, 0x5C, 0x67, 0x91, 0x85, 0x64, 0xE2, 0x96, 0x87, 0x48,\n0xF8, 0x87, 0xD3, 0xF0, 0x0F, 0xAB, 0x2F, 0x56, 0x47, 0x17, 0xDC, 0xE6, 0x8D, 0x65, 0x56, 0x86,\n0x1F, 0xD9, 0x70, 0x10, 0x1E, 0x7D, 0x96, 0x81, 0x48, 0x7E, 0x7C, 0x70, 0x06, 0x21, 0x4A, 0x2C,\n0x98, 0x7D, 0x11, 0xF5, 0x10, 0x10, 0x31, 0x02, 0xF5, 0x62, 0x58, 0x6B, 0xE7, 0xE7, 0xD9, 0x55,\n0x53, 0x17, 0x21, 0x16, 0x1D, 0xDA, 0x69, 0x72, 0x88, 0x04, 0x47, 0x6B, 0x2B, 0x40, 0x27, 0xD9,\n0xAB, 0x39, 0x6F, 0x0A, 0x36, 0x7C, 0x07, 0xB9, 0x7D, 0x65, 0xF3, 0x11, 0xBA, 0xDD, 0x12, 0x7C,\n0xE4, 0x0E, 0xE5, 0x28, 0x50, 0x32, 0x5C, 0xC7, 0xD7, 0x7E, 0x9F, 0x45, 0x73, 0xB2, 0x58, 0xD2,\n0x3B, 0x15, 0x24, 0x7A, 0x22, 0x00, 0xB1, 0xDA, 0x82, 0x59, 0x64, 0xAD, 0xE6, 0x4F, 0x90, 0x65,\n0x21, 0x6F, 0x8C, 0x1C, 0x60, 0x1A, 0xC4, 0x20, 0x82, 0x43, 0x5A, 0xBE, 0x24, 0x04, 0x31, 0x23,\n0x9C, 0xDD, 0x9C, 0x5F, 0x3D, 0x84, 0xB3, 0x1A, 0x31, 0x48, 0xA8, 0x1D, 0x83, 0x94, 0x8A, 0x25,\n0x56, 0x10, 0x62, 0xE3, 0xA1, 0xEF, 0x08, 0x4C, 0x0F, 0xB1, 0xA2, 0x90, 0xF5, 0xED, 0x76, 0xCE,\n0x12, 0x8B, 0x14, 0xAF, 0x8F, 0xC7, 0xAC, 0x18, 0x24, 0x34, 0x67, 0x89, 0xB5, 0x5D, 0xAF, 0xB7,\n0x53, 0x0E, 0xC2, 0x28, 0x0C, 0x83, 0xC3, 0xF8, 0xB1, 0xBC, 0xEA, 0x84, 0xE9, 0x0F, 0x8D, 0xA5,\n0x30, 0x7B, 0x0E, 0x1B, 0xA5, 0x78, 0xDD, 0x36, 0xF0, 0xB1, 0x98, 0xC3, 0xC7, 0x6E, 0x16, 0x1E,\n0xC1, 0xC7, 0x9B, 0x2F, 0x15, 0x98, 0xE7, 0x3A, 0x0A, 0x07, 0x21, 0x42, 0x5F, 0xCA, 0x61, 0xE2,\n0x89, 0xCB, 0xA5, 0x4F, 0xC8, 0x6E, 0x78, 0xE6, 0xCE, 0xB6, 0x90, 0x01, 0x0F, 0x9F, 0x10, 0xF1,\n0x51, 0x44, 0x21, 0x75, 0x50, 0x08, 0x41, 0x20, 0xC4, 0x60, 0xE4, 0xC7, 0x1F, 0x87, 0x1D, 0xF9,\n0x9B, 0xBE, 0xB6, 0xEB, 0x01, 0x90, 0xAD, 0x1D, 0xA4, 0xF3, 0x1D, 0x0D, 0xAE, 0x9E, 0xA2, 0x79,\n0x84, 0xF0, 0xB6, 0x5E, 0xDB, 0x43, 0x06, 0x3E, 0x6E, 0xD7, 0xC9, 0x3D, 0x50, 0xD4, 0xB2, 0x58,\n0xBA, 0x69, 0x04, 0x1F, 0x3F, 0xCA, 0x43, 0x60, 0xA4, 0xCB, 0xC7, 0x43, 0x26, 0xB1, 0x0C, 0xFF,\n0x10, 0x1F, 0xBA, 0xB8, 0x76, 0x40, 0xAA, 0x89, 0xE3, 0x2F, 0xE4, 0x77, 0x39, 0x35, 0xFD, 0x34,\n0x56, 0xD4, 0x00, 0xFF, 0x14, 0x05, 0x4B, 0xF9, 0x47, 0x91, 0xC5, 0x1A, 0x29, 0x59, 0xBE, 0x29,\n0x40, 0x6C, 0x42, 0x76, 0x92, 0x08, 0xF1, 0xF8, 0xB8, 0x11, 0x22, 0xD6, 0xA8, 0x88, 0x0F, 0x08,\n0x29, 0x82, 0x90, 0xF3, 0x0A, 0x28, 0x99, 0x69, 0xFC, 0xD2, 0x23, 0x44, 0x7C, 0x0C, 0x8D, 0x79,\n0xD1, 0x8C, 0x42, 0xF4, 0x78, 0x7D, 0xAB, 0x49, 0xB6, 0x36, 0x4D, 0xE4, 0x5E, 0xF2, 0x09, 0x11,\n0x1C, 0x10, 0x62, 0xF1, 0x91, 0x1E, 0xE2, 0x00, 0x12, 0x68, 0xAF, 0xD5, 0x1B, 0x0E, 0xC2, 0x89,\n0xF0, 0x89, 0xB1, 0x11, 0x21, 0xDE, 0x0A, 0xEB, 0x2E, 0xEA, 0xE7, 0x94, 0x09, 0xFB, 0x1E, 0x02,\n0x1F, 0x21, 0x7D, 0x44, 0xCE, 0xF3, 0x0F, 0x10, 0x71, 0xF8, 0xD8, 0x49, 0x3E, 0x1F, 0x9A, 0xF9,\n0x44, 0xE2, 0x95, 0x2C, 0x96, 0x38, 0x89, 0x27, 0x0D, 0x2D, 0x70, 0x3A, 0xD9, 0xB9, 0x7C, 0x88,\n0x90, 0x30, 0xB5, 0x95, 0xC3, 0xC7, 0xEA, 0x46, 0x9B, 0xE1, 0x21, 0xE2, 0x03, 0x42, 0x1A, 0xFE,\n0xC1, 0xD0, 0x47, 0xF8, 0xA1, 0x9B, 0x98, 0xF6, 0x77, 0xD3, 0xFE, 0x71, 0xA6, 0xCB, 0xBF, 0x6F,\n0x46, 0x21, 0x3D, 0xF8, 0x48, 0x3C, 0xB6, 0x0E, 0x21, 0xAF, 0x54, 0x05, 0x49, 0xD9, 0x7C, 0xE4,\n0x76, 0xE9, 0x55, 0x41, 0x20, 0xC4, 0xF4, 0x0F, 0xE9, 0x76, 0x4B, 0xC2, 0xAA, 0x84, 0x84, 0xBB,\n0x41, 0x8E, 0x8C, 0x3C, 0xD6, 0x58, 0x66, 0xBD, 0x83, 0xE4, 0x21, 0x7D, 0x17, 0xD1, 0xFA, 0x2A,\n0xE5, 0xCD, 0x84, 0x81, 0x8E, 0x63, 0xB9, 0xC8, 0x34, 0x1F, 0x2B, 0xF8, 0xD8, 0x79, 0x93, 0x58,\n0xA5, 0x0D, 0xCD, 0x7C, 0x59, 0x45, 0x99, 0xC5, 0x22, 0x8D, 0x15, 0x2E, 0x93, 0x80, 0xE8, 0xAD,\n0x8A, 0x16, 0x1E, 0x10, 0xB2, 0x9A, 0xE6, 0x43, 0x84, 0x04, 0x1F, 0xA1, 0xFE, 0xB0, 0xE8, 0xBB,\n0xE4, 0x86, 0xF0, 0x43, 0x7D, 0x18, 0xCE, 0x7E, 0x0C, 0x82, 0x7F, 0x24, 0x21, 0xD6, 0xF2, 0x6A,\n0x6C, 0x43, 0x20, 0x32, 0x15, 0x85, 0x6C, 0x6F, 0x13, 0x0F, 0x75, 0xCF, 0x3F, 0x6C, 0x42, 0x2E,\n0x13, 0x0D, 0x75, 0x3C, 0xC4, 0xE3, 0xE3, 0x72, 0x9A, 0x90, 0xE4, 0x63, 0x9B, 0x87, 0xB6, 0x83,\n0xAC, 0x05, 0x0E, 0x7C, 0x44, 0x63, 0xD0, 0x3A, 0xEF, 0xC5, 0x7A, 0x88, 0x26, 0x79, 0x1E, 0xB2,\n0xE1, 0xDA, 0x06, 0x21, 0x93, 0x2B, 0x09, 0x99, 0xC7, 0x38, 0x75, 0x8C, 0xF4, 0x95, 0xF8, 0x48,\n0x39, 0x7C, 0xC8, 0x3E, 0xD4, 0x54, 0x2A, 0xCC, 0xDA, 0x39, 0x31, 0x48, 0xBE, 0x7F, 0x11, 0x3E,\n0xA2, 0x41, 0x88, 0x05, 0x48, 0x3C, 0x38, 0x5A, 0x4D, 0xFD, 0xEE, 0x37, 0xD1, 0xF2, 0x95, 0xC6,\n0x61, 0xE2, 0xCE, 0x11, 0x7C, 0x48, 0x1F, 0xC6, 0x36, 0x18, 0x32, 0x29, 0xAB, 0xDA, 0xE0, 0xAB,\n0x46, 0x88, 0xE2, 0xC1, 0x84, 0x85, 0x84, 0x7F, 0x1C, 0xB4, 0xA9, 0x4A, 0x88, 0xE0, 0x48, 0x44,\n0xA2, 0x4D, 0xFB, 0x07, 0xB2, 0x3C, 0x04, 0x38, 0x1C, 0x42, 0x30, 0x27, 0xC3, 0x43, 0xE0, 0x23,\n0x5F, 0xC3, 0x2D, 0x11, 0x08, 0x1A, 0xC8, 0xC0, 0x3F, 0x0E, 0x06, 0x07, 0x30, 0x1A, 0x06, 0x22,\n0x3A, 0x10, 0x75, 0xDC, 0x56, 0xFA, 0x8A, 0x6B, 0x3B, 0x1D, 0x87, 0x28, 0xFC, 0xD0, 0x9C, 0x91,\n0x81, 0x4C, 0x78, 0x48, 0x7E, 0x79, 0x22, 0x9A, 0x9C, 0xC4, 0x27, 0xA3, 0x7F, 0x40, 0x88, 0x88,\n0x20, 0x06, 0x19, 0x7F, 0x00, 0x1F, 0xD1, 0xA8, 0xA7, 0xF7, 0xF8, 0x40, 0x27, 0x9F, 0x9F, 0x1C,\n0x2D, 0xBA, 0x1E, 0x12, 0x8A, 0x97, 0xB7, 0x52, 0xD3, 0x49, 0x10, 0xD2, 0x71, 0x10, 0xA5, 0xAF,\n0x34, 0x84, 0xB1, 0xA5, 0x87, 0x14, 0xA5, 0x73, 0x04, 0x1F, 0x20, 0xD2, 0x23, 0xE4, 0x2C, 0xFD,\n0x83, 0xA6, 0x64, 0x56, 0x23, 0x0A, 0x11, 0x1F, 0x18, 0x48, 0x68, 0x82, 0x90, 0xF8, 0xFA, 0x1F,\n0x64, 0x05, 0x22, 0x4F, 0x1C, 0x1C, 0x0F, 0x79, 0xFE, 0x6D, 0xA3, 0xAF, 0xA6, 0xFC, 0x03, 0x07,\n0x19, 0x4E, 0xFA, 0x75, 0x90, 0x72, 0x6C, 0x26, 0xCA, 0x20, 0xBA, 0x21, 0x09, 0x12, 0x56, 0x59,\n0xE7, 0x55, 0xF7, 0x20, 0xFC, 0xC8, 0x6B, 0x7B, 0x9D, 0x84, 0xF4, 0x00, 0xD1, 0xC4, 0xC1, 0x41,\n0xA2, 0x77, 0xD3, 0x57, 0xF0, 0x01, 0x21, 0xDD, 0xB7, 0xBB, 0x87, 0x7D, 0xD0, 0xF2, 0xED, 0x26,\n0x7C, 0x60, 0x4A, 0xA4, 0xE8, 0x07, 0x2F, 0x83, 0x8F, 0x25, 0x4F, 0x5D, 0x4E, 0x84, 0xEA, 0xBB,\n0x52, 0x27, 0x41, 0x48, 0x3B, 0x0E, 0xD9, 0xDF, 0x05, 0xD8, 0x16, 0xD1, 0x21, 0xA4, 0xF6, 0x3E,\n0xC5, 0x51, 0xD7, 0x03, 0x22, 0xD7, 0x95, 0x50, 0x9D, 0x20, 0x44, 0xE9, 0x2B, 0x2E, 0x91, 0xCE,\n0x21, 0x04, 0x2E, 0xD8, 0xFF, 0xF8, 0xAC, 0x11, 0xAA, 0x57, 0x04, 0x1E, 0xE3, 0x34, 0xEB, 0xA5,\n0x7B, 0xC3, 0x3F, 0x3E, 0x71, 0x09, 0x29, 0xD7, 0x57, 0x9C, 0x5D, 0x3A, 0xFE, 0x81, 0x5E, 0xB5,\n0xF1, 0x00, 0xEB, 0xDC, 0xCB, 0x43, 0x4A, 0x8D, 0xD1, 0x39, 0x7C, 0x40, 0x88, 0x6E, 0x2A, 0x8C,\n0x60, 0xCB, 0x3F, 0xD0, 0xA6, 0xED, 0x1F, 0x01, 0xC4, 0x78, 0xD7, 0xBB, 0xD6, 0x49, 0xEC, 0xF1,\n0x90, 0x96, 0x7F, 0x44, 0x1B, 0x4F, 0xE2, 0xE0, 0xF0, 0x81, 0xA6, 0x2A, 0xE8, 0x4C, 0xFA, 0x3D,\n0x01, 0xF9, 0xCE, 0x44, 0x62, 0x90, 0xE1, 0x34, 0xF8, 0x38, 0x24, 0x89, 0x64, 0x96, 0xC1, 0x07,\n0x84, 0xB4, 0x01, 0x11, 0x17, 0xD1, 0x75, 0x26, 0x4E, 0x16, 0xFD, 0xF0, 0xFC, 0xFA, 0x43, 0x0D,\n0x61, 0xEE, 0x88, 0x43, 0x10, 0x90, 0xBC, 0x53, 0x53, 0xDB, 0x3F, 0x30, 0x10, 0x5A, 0x7A, 0x48,\n0x11, 0x85, 0x48, 0x43, 0x7A, 0x34, 0x04, 0x23, 0x49, 0x48, 0xBD, 0xEB, 0xD3, 0x52, 0xC8, 0xF1,\n0x10, 0xD8, 0xB8, 0x54, 0xA6, 0x17, 0x42, 0x1A, 0x7C, 0xF8, 0x84, 0xA8, 0x3C, 0x98, 0xDE, 0xC1,\n0x2E, 0x7E, 0xD6, 0xCC, 0x62, 0x69, 0x6C, 0xEA, 0x26, 0x02, 0x1D, 0x48, 0xF6, 0xF1, 0xFC, 0xFE,\n0xB4, 0xA9, 0x46, 0x20, 0xF8, 0x47, 0xD2, 0x91, 0xEA, 0xAD, 0xAF, 0x72, 0xB6, 0xE4, 0xDA, 0x43,\n0x67, 0xD6, 0xFA, 0x0A, 0x75, 0xF8, 0x10, 0x1E, 0x65, 0x3B, 0xF8, 0x44, 0xA1, 0x48, 0x09, 0x3E,\n0xE2, 0x89, 0x25, 0x4A, 0x10, 0xE2, 0x00, 0xA2, 0x40, 0xA4, 0x41, 0xC8, 0x08, 0x3F, 0x7B, 0x19,\n0x25, 0xC9, 0xAC, 0x7A, 0xFA, 0x8A, 0x15, 0x16, 0x1E, 0x72, 0x5E, 0xFF, 0xAC, 0x54, 0x79, 0x81,\n0xF0, 0x90, 0x9A, 0x7F, 0xE4, 0x1C, 0x28, 0x5A, 0xC3, 0x43, 0x54, 0x3E, 0x28, 0x1C, 0x24, 0xBA,\n0x3C, 0xA4, 0xFA, 0x69, 0x42, 0xC9, 0x24, 0xE4, 0x52, 0x34, 0xB0, 0x85, 0x38, 0xBF, 0xF4, 0xF9,\n0x08, 0x26, 0xD7, 0xAF, 0xDA, 0xE1, 0x79, 0x52, 0xCD, 0xEE, 0x96, 0x1C, 0xD6, 0xE1, 0xE7, 0x41,\n0x02, 0x85, 0x3A, 0x20, 0x14, 0xD5, 0x4B, 0x3E, 0xAA, 0x02, 0x8E, 0x14, 0x7C, 0xA4, 0xF2, 0xEE,\n0xA7, 0x6B, 0x1B, 0x84, 0x74, 0xCA, 0x1F, 0xD0, 0xB1, 0xEA, 0x46, 0xEA, 0x2A, 0x0F, 0xEE, 0x24,\n0x87, 0x90, 0x5D, 0x83, 0x8F, 0xF4, 0x90, 0x10, 0x0E, 0x82, 0x7F, 0x58, 0x1E, 0xB2, 0x43, 0x0E,\n0x21, 0x07, 0xAB, 0x48, 0xF6, 0xF1, 0x93, 0x8A, 0xB5, 0x8A, 0x0F, 0x8D, 0x9B, 0xEE, 0x33, 0x3A,\n0x25, 0xDD, 0xCB, 0xB0, 0x73, 0x02, 0x19, 0x65, 0x1C, 0x62, 0xC5, 0x1F, 0x34, 0x79, 0x48, 0x19,\n0x85, 0x94, 0xEB, 0x2B, 0x6D, 0x79, 0xFA, 0x4D, 0xE5, 0xED, 0x57, 0xDF, 0x7C, 0x32, 0x83, 0x90,\n0xCB, 0x44, 0x81, 0x2D, 0x1A, 0xA8, 0x5C, 0x7A, 0x7C, 0x48, 0x9F, 0x34, 0x3E, 0x97, 0x1E, 0x24,\n0x97, 0x06, 0x92, 0x5B, 0xCD, 0x41, 0x5A, 0x43, 0x43, 0x41, 0xA4, 0xCD, 0x07, 0xD7, 0xA1, 0xEE,\n0x21, 0xF8, 0xC7, 0x87, 0xC3, 0x2D, 0xEF, 0x43, 0x2E, 0x6D, 0xEC, 0xDB, 0xE5, 0x73, 0x62, 0x0F,\n0x1D, 0x72, 0xAD, 0xD5, 0x2A, 0x9F, 0xEF, 0xEA, 0xB2, 0xF8, 0xA0, 0xF1, 0xAD, 0x26, 0xE3, 0xFA,\n0xEA, 0xD9, 0x33, 0x97, 0xEA, 0x22, 0xC4, 0xE3, 0x83, 0x82, 0xC8, 0x73, 0x3E, 0x60, 0x7F, 0x91,\n0xBB, 0x6C, 0x15, 0x0F, 0x11, 0x1F, 0x63, 0x00, 0xA7, 0x33, 0x9D, 0xE3, 0x21, 0x65, 0xFA, 0xEA,\n0xCB, 0xBA, 0x81, 0x8C, 0xC9, 0xAC, 0xB3, 0xBA, 0x7F, 0xB8, 0x1E, 0x52, 0xCE, 0xAD, 0xD8, 0xE1,\n0x22, 0x3F, 0x3F, 0xE7, 0x83, 0xE5, 0x95, 0xE9, 0x21, 0x4F, 0x0D, 0x07, 0xC1, 0x43, 0xFA, 0x7C,\n0xA0, 0x08, 0xD5, 0x5B, 0xE5, 0x0F, 0xC0, 0x66, 0xF7, 0x7D, 0x59, 0x49, 0x8F, 0xDE, 0x1E, 0x9A,\n0xBD, 0x89, 0x94, 0x52, 0x79, 0xB0, 0x21, 0x11, 0xD2, 0xF0, 0x8F, 0x6B, 0xF5, 0x0C, 0x44, 0xAE,\n0xEB, 0x05, 0x91, 0x4C, 0xEF, 0x8E, 0xEB, 0xAA, 0x68, 0xCC, 0x9D, 0x98, 0x53, 0xF5, 0xF2, 0x60,\n0x53, 0x55, 0x3E, 0x00, 0xA4, 0x6C, 0x38, 0x88, 0xCA, 0x1F, 0xF2, 0x8B, 0xD2, 0x40, 0xD4, 0x29,\n0x19, 0x1A, 0x7C, 0xD4, 0x0B, 0x22, 0xC4, 0x1C, 0xFF, 0x64, 0x24, 0xFB, 0x71, 0xE1, 0xAD, 0x99,\n0xDE, 0x25, 0x7E, 0xC3, 0x40, 0xF6, 0x71, 0x08, 0x77, 0x23, 0xE3, 0xEB, 0xAB, 0xBF, 0x7C, 0x28,\n0xD6, 0xCE, 0x84, 0x1F, 0x2D, 0x44, 0xB6, 0x44, 0x21, 0x59, 0xFE, 0x78, 0x4E, 0x07, 0x0F, 0xCA,\n0xAF, 0x1E, 0x25, 0x3C, 0xB7, 0x08, 0xB9, 0x04, 0x8F, 0x8A, 0x83, 0x54, 0x08, 0xB9, 0xEF, 0xEA,\n0xF9, 0x77, 0x63, 0xE1, 0x1E, 0xB5, 0x5D, 0x12, 0x42, 0x01, 0xBD, 0x37, 0x34, 0x22, 0x44, 0xBD,\n0x48, 0x5F, 0xA1, 0x87, 0x92, 0x90, 0x66, 0xFE, 0x0A, 0x4A, 0xB8, 0x17, 0x96, 0x33, 0x81, 0xF8,\n0x63, 0x9C, 0x36, 0xF9, 0x30, 0x99, 0x29, 0x66, 0x19, 0x7C, 0xD4, 0x55, 0x29, 0x7F, 0x54, 0xF0,\n0x60, 0xFE, 0x03, 0xC8, 0x92, 0xF4, 0x55, 0xA5, 0x51, 0x10, 0x31, 0xF8, 0xA8, 0x15, 0xD5, 0xF1,\n0x8C, 0xD2, 0x41, 0xD4, 0x94, 0xCC, 0x2A, 0xCB, 0x1F, 0x04, 0x70, 0x18, 0x48, 0x6C, 0xCA, 0x80,\n0x14, 0x01, 0x3A, 0x17, 0xA7, 0x34, 0x10, 0x59, 0xC8, 0x97, 0xEF, 0xDC, 0x51, 0xFA, 0x10, 0x1F,\n0x13, 0xED, 0xD0, 0x43, 0x60, 0xA1, 0xC1, 0x09, 0x84, 0xAC, 0x29, 0x9F, 0x77, 0x54, 0x5D, 0x5F,\n0x29, 0x36, 0xCF, 0x2D, 0x5A, 0x9E, 0x13, 0xAA, 0x5B, 0x7C, 0x94, 0x05, 0x11, 0xE2, 0x8F, 0xFA,\n0x8B, 0x28, 0x92, 0x59, 0xA4, 0xAF, 0x3A, 0x84, 0x14, 0x7C, 0x30, 0xE8, 0x75, 0xD5, 0xCA, 0xE7,\n0xC4, 0x94, 0x79, 0xA2, 0x6D, 0x8C, 0x43, 0x0E, 0xFD, 0x83, 0x9B, 0xA9, 0x8E, 0xDA, 0x31, 0x7F,\n0x0E, 0x3C, 0x84, 0xF2, 0x79, 0x53, 0x8D, 0xF2, 0x79, 0xCF, 0x43, 0x04, 0x48, 0x5A, 0x45, 0x13,\n0x90, 0x20, 0xE4, 0x62, 0xE7, 0xE1, 0x21, 0xA9, 0x64, 0x58, 0xA6, 0xAF, 0x4A, 0x34, 0x78, 0xB1,\n0x2A, 0x19, 0x52, 0x3F, 0x27, 0xFE, 0x48, 0x2C, 0xC8, 0x64, 0xA5, 0x6E, 0x02, 0x0B, 0x34, 0x75,\n0x91, 0x28, 0x19, 0x52, 0x3F, 0xEF, 0x37, 0xA2, 0x10, 0xF9, 0x47, 0x8F, 0x0E, 0x75, 0x10, 0x09,\n0xFF, 0x98, 0x56, 0x25, 0xBD, 0x5B, 0x15, 0x05, 0x11, 0x83, 0x0F, 0x44, 0x41, 0x44, 0x7C, 0x34,\n0xE8, 0xE0, 0x4F, 0x70, 0x10, 0xF8, 0x30, 0xE3, 0x90, 0x7C, 0xFB, 0x55, 0xC3, 0x42, 0x1E, 0xB4,\n0xC3, 0x43, 0x28, 0x9F, 0xC7, 0x26, 0x71, 0x9D, 0x47, 0x52, 0x6E, 0x8E, 0x0E, 0xCB, 0xE7, 0xC7,\n0xCF, 0xEF, 0xA6, 0xB1, 0x01, 0x4B, 0x99, 0xDE, 0x9D, 0x50, 0x51, 0x1E, 0x04, 0x8F, 0x96, 0x87,\n0x08, 0x90, 0x25, 0x01, 0x47, 0x93, 0xA5, 0x97, 0x10, 0xB2, 0x9B, 0x96, 0x3E, 0x21, 0x82, 0x7F,\n0x2C, 0xA8, 0x84, 0x96, 0xB7, 0x81, 0xFC, 0x09, 0x84, 0xDC, 0x70, 0x8F, 0xD1, 0x41, 0xBA, 0xD1,\n0x40, 0x52, 0x10, 0xD9, 0x68, 0xD4, 0xF1, 0x8F, 0x86, 0x81, 0xF0, 0x80, 0xCB, 0x3A, 0xC5, 0x07,\n0xE9, 0x5E, 0x89, 0xF4, 0x55, 0x7D, 0x47, 0x41, 0xA4, 0x28, 0x0F, 0xFA, 0xCB, 0x2C, 0x21, 0x52,\n0x6F, 0x97, 0x14, 0x44, 0x32, 0xFC, 0x70, 0x54, 0xF8, 0xC7, 0xB6, 0xE7, 0x20, 0x5B, 0x3C, 0x04,\n0x3E, 0xA6, 0x56, 0x59, 0x86, 0x7F, 0xA0, 0x4A, 0xF9, 0x43, 0xB7, 0x3D, 0xED, 0x61, 0x25, 0xB9,\n0xD1, 0x47, 0xD4, 0xF1, 0x8F, 0x68, 0x64, 0x74, 0x28, 0xA4, 0xB1, 0xD4, 0x5A, 0x58, 0x7C, 0xA0,\n0xB2, 0xFC, 0x31, 0xD5, 0x06, 0x40, 0x96, 0x7B, 0x58, 0xBA, 0x24, 0x91, 0xCC, 0x8A, 0x83, 0x47,\n0x48, 0x7A, 0x08, 0xC5, 0x73, 0xEE, 0x04, 0x34, 0x80, 0x39, 0xA2, 0x3C, 0x38, 0x8C, 0x13, 0xDE,\n0xA1, 0x93, 0x1B, 0xB1, 0x11, 0x9D, 0xC0, 0x2E, 0x05, 0x1B, 0x4D, 0x5D, 0xC7, 0x9F, 0x7B, 0xFE,\n0x41, 0xC9, 0x70, 0xFB, 0xC1, 0x36, 0xE3, 0x8F, 0x0E, 0x1D, 0x9C, 0x88, 0x10, 0xF8, 0x30, 0x09,\n0x21, 0xD2, 0xE8, 0x55, 0xD7, 0x21, 0xE4, 0xD2, 0xFC, 0xD7, 0x47, 0x0F, 0x11, 0xBC, 0x53, 0x0E,\n0x12, 0x77, 0x80, 0x91, 0x8F, 0xE9, 0x91, 0x21, 0xDF, 0xAB, 0xF2, 0xA0, 0x92, 0x23, 0x3D, 0x0B,\n0x51, 0x14, 0xB8, 0x81, 0x0F, 0x78, 0x10, 0x28, 0xB1, 0x67, 0xB1, 0xA5, 0x87, 0xE9, 0x21, 0x94,\n0x3F, 0x48, 0x7A, 0x42, 0x4A, 0x80, 0xC2, 0x99, 0xC5, 0x07, 0x2A, 0xCB, 0xE7, 0x53, 0x1E, 0x92,\n0x80, 0x4C, 0x37, 0x7D, 0x4C, 0xDD, 0xE1, 0x83, 0x92, 0xA1, 0x10, 0x21, 0x30, 0xE7, 0xE5, 0x16,\n0xF7, 0x03, 0x92, 0x59, 0xE2, 0x43, 0x20, 0x90, 0xC2, 0xD2, 0x89, 0x4C, 0x84, 0xC1, 0x4D, 0x0F,\n0x51, 0xF9, 0xBC, 0x6B, 0x20, 0x30, 0x22, 0x3C, 0xE0, 0xC3, 0xF2, 0x10, 0x66, 0x57, 0x8F, 0x11,\n0x08, 0xF9, 0x86, 0xF8, 0xC3, 0x24, 0xE4, 0x69, 0x0C, 0x3F, 0xAA, 0x0D, 0x7F, 0xB1, 0xF9, 0xA0,\n0x64, 0x08, 0x1F, 0x7D, 0x07, 0x51, 0xC9, 0x10, 0xFF, 0xB0, 0x00, 0x91, 0x72, 0xA0, 0x1D, 0x0F,\n0xD9, 0x8C, 0x7C, 0x10, 0x4E, 0x72, 0x4D, 0xC9, 0xC3, 0x44, 0xA7, 0x20, 0x02, 0x10, 0xCF, 0xEF,\n0xAD, 0xAC, 0x3E, 0x72, 0x99, 0x65, 0xF2, 0x21, 0x51, 0x1E, 0x74, 0x5A, 0x00, 0x12, 0x07, 0x8B,\n0x90, 0x79, 0x1F, 0x54, 0xD7, 0x67, 0xA8, 0x06, 0x08, 0xCA, 0xE2, 0xE0, 0x82, 0x4A, 0xFA, 0x88,\n0x06, 0xC9, 0xAC, 0xE4, 0x62, 0x1C, 0x30, 0x3D, 0xD0, 0x51, 0x7B, 0xCC, 0x59, 0x84, 0x10, 0x7E,\n0x70, 0xAC, 0xEA, 0x41, 0x84, 0x08, 0x0F, 0x5F, 0x7A, 0xF7, 0xD5, 0x04, 0x1D, 0x10, 0x72, 0xFB,\n0xEA, 0x67, 0xCA, 0x83, 0x0E, 0x21, 0xED, 0x2A, 0xF9, 0x13, 0x4D, 0x00, 0x8D, 0xD1, 0x8A, 0xCF,\n0xC7, 0xA5, 0xD2, 0xBD, 0xF1, 0xC9, 0x2E, 0x43, 0x04, 0x22, 0x3F, 0xFA, 0xFA, 0xE8, 0x2C, 0xCB,\n0x1F, 0x3F, 0x39, 0x80, 0xA8, 0x20, 0x02, 0x1A, 0xC4, 0xE8, 0xC4, 0xEB, 0x87, 0xA1, 0x89, 0x3E,\n0x7D, 0x1E, 0x82, 0x0E, 0xE6, 0x09, 0x8F, 0x59, 0x7D, 0x44, 0x46, 0x48, 0x7C, 0x78, 0x9A, 0xC3,\n0xC7, 0x52, 0x0E, 0x62, 0xEB, 0x74, 0xE7, 0x88, 0x92, 0xE1, 0x71, 0x4C, 0xFB, 0x7C, 0x95, 0x20,\n0x5F, 0xF8, 0x08, 0xB1, 0xD7, 0x62, 0x9F, 0xBE, 0xBA, 0xF1, 0x5A, 0x48, 0x7C, 0x68, 0x01, 0xF5,\n0xA0, 0x7D, 0xBB, 0xC5, 0x33, 0xA3, 0xDF, 0xE9, 0xDE, 0x67, 0x6B, 0xAB, 0x0F, 0x0F, 0x66, 0xAB,\n0xEF, 0x68, 0xF1, 0xE8, 0x7E, 0x9E, 0x62, 0xE6, 0x3B, 0x0A, 0x4C, 0xE4, 0x32, 0xF0, 0xE1, 0xE8,\n0x93, 0x7B, 0x7E, 0x3B, 0xA3, 0x85, 0x87, 0xC8, 0x18, 0x4C, 0xC5, 0x53, 0x95, 0x1E, 0xD4, 0xD8,\n0x76, 0xD7, 0x58, 0xB9, 0xED, 0xD3, 0xBB, 0x6E, 0x8B, 0xE7, 0x06, 0x1F, 0x95, 0x95, 0x15, 0x8F,\n0x8B, 0xAA, 0xDA, 0x8A, 0xF2, 0xA0, 0xA5, 0xD3, 0xA5, 0xAB, 0x97, 0x7F, 0xBC, 0xF6, 0x8B, 0x4B,\n0xC7, 0x9B, 0xCB, 0xD3, 0x5F, 0x57, 0xAB, 0xD5, 0xD1, 0xB1, 0xD7, 0x56, 0x47, 0x47, 0xAB, 0xC7,\n0xC7, 0x61, 0xE2, 0x0F, 0xD2, 0x41, 0xE2, 0xE1, 0xEB, 0xDA, 0xB4, 0x8B, 0xC7, 0xAB, 0xC7, 0xC5,\n0x66, 0x8E, 0x8E, 0x36, 0xE7, 0x5F, 0xCE, 0xD2, 0x57, 0x77, 0x77, 0x1F, 0xDF, 0xCD, 0xD0, 0x76,\n0x9E, 0x6E, 0x3F, 0xB9, 0xFC, 0xE4, 0xFE, 0x13, 0x4F, 0x31, 0x81, 0x2F, 0x9F, 0x7E, 0xF3, 0xF4,\n0x34, 0x6C, 0xD1, 0xE3, 0x2F, 0xF9, 0xED, 0x93, 0xFB, 0xDB, 0xED, 0x2C, 0xCD, 0x1A, 0x99, 0x18,\n0xC7, 0x79, 0x23, 0xFF, 0xE5, 0xF9, 0x66, 0x9E, 0x16, 0x9A, 0x38, 0x39, 0x3F, 0x98, 0x2A, 0x9A,\n0x38, 0xFC, 0x38, 0x1F, 0x3E, 0x3E, 0xC6, 0xA4, 0xF4, 0x15, 0x33, 0x73, 0x98, 0xCB, 0xCB, 0x53,\n0xA7, 0x2F, 0x7F, 0x79, 0xED, 0x97, 0x38, 0x98, 0xFD, 0xC5, 0x8B, 0xA3, 0xD5, 0x0C, 0xBD, 0xFE,\n0xFA, 0x6A, 0xF1, 0xA8, 0x97, 0x13, 0x8D, 0xAE, 0x47, 0x87, 0x78, 0x84, 0x1E, 0xB5, 0xDF, 0xF8,\n0xED, 0xF1, 0xFC, 0xFC, 0x21, 0x86, 0xDE, 0xD6, 0x59, 0xE8, 0xE3, 0x01, 0x11, 0xAB, 0x9F, 0x7D,\n0xFC, 0xF1, 0xC7, 0xF3, 0xF8, 0xB8, 0x1D, 0x08, 0x71, 0x75, 0x7F, 0xF5, 0xE9, 0xD5, 0xD3, 0x6F,\n0xDF, 0xFD, 0x66, 0xEB, 0x29, 0xFE, 0x82, 0xF8, 0xF3, 0x74, 0x1F, 0xBF, 0xCE, 0x2C, 0x3E, 0x06,\n0x42, 0xBC, 0xAE, 0xED, 0xEC, 0x8C, 0x91, 0x37, 0xF4, 0x70, 0x7E, 0x3E, 0xE3, 0xCA, 0xE6, 0x5C,\n0x60, 0x7E, 0x80, 0x87, 0xCE, 0xF8, 0x71, 0x72, 0x32, 0xCC, 0xB4, 0xE3, 0x95, 0xA7, 0x78, 0xDE,\n0xD1, 0x8B, 0x8B, 0x53, 0x01, 0xE2, 0xF4, 0x3F, 0x02, 0x10, 0x0F, 0xA5, 0x37, 0x4F, 0x8E, 0x22,\n0x4A, 0x7F, 0x71, 0xBC, 0xB2, 0x41, 0x8D, 0x5F, 0x7B, 0x15, 0x78, 0x2F, 0x4C, 0xCD, 0x24, 0xE4,\n0x3C, 0x46, 0xFD, 0x1C, 0x42, 0x0C, 0x3E, 0xDE, 0x09, 0x42, 0xFC, 0x7B, 0xE4, 0xF7, 0x77, 0x10,\n0x62, 0xF1, 0xB1, 0xBE, 0xBD, 0x17, 0x22, 0x8E, 0x81, 0x5C, 0x7D, 0xFA, 0xE9, 0xA7, 0x57, 0x57,\n0x1D, 0xD7, 0xA0, 0x4B, 0xF1, 0xE4, 0x4F, 0x7D, 0x42, 0xE2, 0x5D, 0x8B, 0xB7, 0xA1, 0x39, 0x7C,\n0x44, 0xF3, 0x87, 0x46, 0x43, 0x79, 0x36, 0xC3, 0x3F, 0xCE, 0xE3, 0x62, 0x3D, 0x6E, 0xFC, 0x6B,\n0x3B, 0x4F, 0x2B, 0xC9, 0x9D, 0x95, 0xAB, 0xDD, 0xC5, 0xC5, 0x8B, 0x17, 0x36, 0x21, 0xBF, 0xBC,\n0xF6, 0x87, 0x09, 0xC8, 0xC9, 0xEE, 0xD7, 0x17, 0x2F, 0x2E, 0x2E, 0x76, 0xAB, 0x95, 0xCB, 0xC7,\n0x6A, 0xD0, 0x4C, 0x40, 0x1E, 0x63, 0x7C, 0x36, 0x8F, 0x9B, 0xD6, 0x9E, 0x93, 0x87, 0x73, 0xC9,\n0xE7, 0x63, 0x4F, 0x88, 0xBB, 0xCA, 0xD2, 0x94, 0xF1, 0x11, 0xB9, 0x95, 0xD6, 0xF7, 0x73, 0xF8,\n0x88, 0xD6, 0xC4, 0x43, 0x07, 0xF6, 0x57, 0xC3, 0x93, 0x5D, 0x42, 0x62, 0xA5, 0x17, 0xB0, 0xCE,\n0x21, 0x24, 0xCC, 0x72, 0x68, 0xB3, 0xF8, 0x88, 0x9D, 0xCF, 0x87, 0x08, 0x39, 0xE7, 0xE2, 0x4D,\n0xEC, 0x67, 0xE9, 0x71, 0x95, 0xF2, 0x66, 0xE5, 0xF1, 0xEE, 0xC5, 0xC5, 0x8B, 0x50, 0x84, 0xE9,\n0xA6, 0x83, 0xFC, 0xBE, 0x34, 0x08, 0x89, 0x14, 0x56, 0xE0, 0x11, 0x0A, 0x42, 0x2C, 0x0F, 0xC1,\n0xD3, 0x2C, 0x40, 0x78, 0x52, 0xDE, 0x68, 0xC6, 0x75, 0xD4, 0x4D, 0x71, 0x9E, 0x27, 0x8F, 0xE7,\n0x02, 0xC4, 0xF6, 0x10, 0xD1, 0x81, 0x87, 0x18, 0x7C, 0xA8, 0x85, 0x8F, 0xD8, 0x7C, 0xE0, 0x21,\n0x0E, 0x1F, 0xEA, 0x2D, 0x0F, 0x79, 0x2A, 0x20, 0x11, 0x1E, 0x3E, 0x21, 0xF2, 0x0F, 0x9F, 0x90,\n0xB0, 0x4A, 0xDD, 0x0B, 0x4C, 0x13, 0x49, 0x3E, 0x7C, 0x0F, 0x39, 0x4F, 0x3D, 0xE8, 0xD2, 0x72,\n0x45, 0x5B, 0xE7, 0x44, 0x18, 0x3E, 0x1F, 0x92, 0xC7, 0x47, 0xE0, 0x21, 0x9D, 0x3A, 0x84, 0x9C,\n0xEE, 0xDF, 0x6A, 0x62, 0x10, 0x72, 0x21, 0x3E, 0x20, 0xC4, 0xE6, 0x63, 0xBE, 0x89, 0x88, 0x0F,\n0x39, 0xC9, 0x38, 0x64, 0x1A, 0x59, 0x9D, 0xE6, 0xC9, 0xF9, 0x39, 0xF2, 0xFD, 0x43, 0x3B, 0x3C,\n0xA4, 0x87, 0x87, 0x56, 0x58, 0xC3, 0xD1, 0x9A, 0x61, 0xB7, 0xA3, 0xD6, 0x04, 0x22, 0x6D, 0x3C,\n0xD2, 0x3F, 0xD4, 0x21, 0xA4, 0x4D, 0xC9, 0xD3, 0x55, 0x02, 0x62, 0x11, 0x72, 0x09, 0x1F, 0xA1,\n0xB5, 0xEF, 0x1F, 0x7A, 0xC9, 0xC6, 0xAD, 0x63, 0x1C, 0xC7, 0x41, 0xB6, 0x7F, 0xA4, 0x89, 0x70,\n0x41, 0xCB, 0xAB, 0xCB, 0x29, 0x78, 0x98, 0x7C, 0x20, 0x9F, 0x0F, 0xCB, 0x43, 0x42, 0xE3, 0x9B,\n0x15, 0x4F, 0xBB, 0x88, 0xE8, 0xAD, 0x58, 0x2F, 0x24, 0x21, 0xB2, 0x8B, 0x50, 0xDD, 0x08, 0x3F,\n0x00, 0x64, 0x26, 0x21, 0x87, 0x1E, 0xC2, 0xA3, 0xC0, 0x86, 0xF0, 0x03, 0x79, 0x7C, 0x70, 0x59,\n0xDD, 0xE5, 0x55, 0x9A, 0xC8, 0x76, 0x6A, 0x92, 0x0D, 0xF3, 0x11, 0xDD, 0xC7, 0x1C, 0xED, 0x03,\n0x02, 0x1E, 0x1D, 0x42, 0x9E, 0x38, 0xBD, 0xD2, 0x53, 0x47, 0x46, 0x02, 0x80, 0x3E, 0x1F, 0x03,\n0xA5, 0x16, 0x21, 0xF8, 0x47, 0x36, 0x0B, 0x91, 0x33, 0x14, 0xA3, 0xE9, 0xF9, 0x07, 0xD2, 0x45,\n0x1C, 0x2F, 0x27, 0x57, 0x97, 0x1D, 0xB1, 0xB9, 0x8F, 0x07, 0x72, 0xF8, 0x40, 0x17, 0x93, 0x80,\n0xF0, 0x76, 0xF7, 0x1E, 0x21, 0xC1, 0xC7, 0xC9, 0xAF, 0x02, 0x24, 0x75, 0x31, 0x24, 0xB3, 0xFA,\n0xFE, 0x01, 0x1F, 0xBE, 0x87, 0x90, 0xB9, 0xE0, 0xDE, 0x72, 0x30, 0x96, 0xC9, 0xC8, 0xE6, 0xBC,\n0xD0, 0x83, 0xC5, 0x47, 0x74, 0x9D, 0x4C, 0x7A, 0x08, 0x77, 0xD4, 0xB4, 0x11, 0x6B, 0x79, 0x85,\n0x89, 0x00, 0x48, 0xD5, 0x3F, 0x3E, 0x7D, 0xBA, 0x3A, 0x20, 0xE4, 0xA9, 0x86, 0x07, 0xFB, 0xA7,\n0x3D, 0x1F, 0xF4, 0xF8, 0x47, 0x0C, 0x3E, 0xD0, 0x64, 0x7E, 0x97, 0xBB, 0x81, 0xCE, 0x26, 0xE2,\n0x8F, 0x77, 0x68, 0x8E, 0x87, 0x3C, 0x9E, 0x8F, 0xBA, 0x7E, 0x90, 0x87, 0xE8, 0x2A, 0xAA, 0x43,\n0xCA, 0xCD, 0xE3, 0x08, 0x0E, 0x78, 0x58, 0x5A, 0x95, 0xEA, 0xCF, 0xCA, 0x23, 0xF1, 0x81, 0x48,\n0x66, 0x35, 0xF8, 0x00, 0x90, 0xF6, 0x2A, 0x4B, 0x7C, 0x80, 0x87, 0x43, 0xC8, 0x0A, 0xCD, 0x22,\n0x04, 0x44, 0x92, 0x0C, 0x86, 0x32, 0x86, 0xF0, 0x26, 0xF6, 0xC3, 0x60, 0x8E, 0xFE, 0x81, 0x36,\n0xA6, 0x7F, 0xE4, 0x45, 0x9D, 0x20, 0x64, 0xCB, 0x1D, 0xF5, 0x6E, 0x7F, 0xB0, 0xF8, 0x40, 0x1D,\n0x42, 0x22, 0x44, 0x19, 0xF9, 0xA0, 0x3F, 0x7D, 0xD7, 0x5D, 0x5F, 0xF1, 0x4C, 0x3C, 0xC4, 0xE0,\n0x03, 0x4D, 0xF9, 0x87, 0x3C, 0x04, 0x50, 0xBA, 0xCB, 0xAB, 0x42, 0x53, 0x84, 0x94, 0x57, 0x4A,\n0x84, 0xC0, 0x46, 0x74, 0x0C, 0x45, 0x07, 0x12, 0xFF, 0xB3, 0xFC, 0x03, 0x75, 0xF9, 0x88, 0xF4,\n0xD5, 0xA1, 0x4E, 0x7A, 0x7C, 0xBC, 0x79, 0xF8, 0x91, 0xDB, 0x37, 0xDB, 0xCF, 0x2C, 0xF0, 0x50,\n0x20, 0x02, 0x21, 0x06, 0x1F, 0x66, 0xA8, 0x4E, 0xEE, 0x9B, 0x68, 0x03, 0x4A, 0xC6, 0xC1, 0x84,\n0x0F, 0x74, 0xDD, 0x0E, 0xD5, 0xBF, 0x12, 0x17, 0xB9, 0x93, 0xFA, 0xA1, 0xFA, 0xB0, 0xD0, 0x50,\n0xE3, 0x96, 0xFA, 0xB1, 0xC7, 0x07, 0xBA, 0xEF, 0x86, 0xE7, 0x65, 0xC7, 0x43, 0x2A, 0x94, 0x5C,\n0x01, 0x08, 0x81, 0xC8, 0x7D, 0x3B, 0x7D, 0x55, 0x53, 0xDF, 0x3F, 0x44, 0xC5, 0xC1, 0x2B, 0xEE,\n0xFA, 0x87, 0x46, 0x92, 0x21, 0x8D, 0xBD, 0xC5, 0xC7, 0x35, 0x84, 0x70, 0x51, 0xB3, 0x25, 0x27,\n0xE0, 0x61, 0x6A, 0x55, 0x93, 0xC5, 0x07, 0x6A, 0x7A, 0x88, 0xF8, 0x00, 0x90, 0x26, 0x21, 0xD1,\n0x5E, 0x20, 0x87, 0x90, 0x55, 0x5D, 0x0B, 0xE4, 0x20, 0xF2, 0x28, 0xDF, 0x18, 0xF3, 0xBA, 0x8C,\n0x27, 0x7C, 0x78, 0xAB, 0xAC, 0xA4, 0x02, 0x03, 0x99, 0x48, 0x66, 0x1D, 0x98, 0x07, 0xCD, 0xE5,\n0x83, 0x64, 0x56, 0x9F, 0x0F, 0x73, 0x95, 0x55, 0xF2, 0xD1, 0x4F, 0x66, 0xC1, 0x87, 0x49, 0x08,\n0xAF, 0x92, 0xB3, 0x68, 0x9D, 0xF4, 0xAE, 0xBA, 0xC4, 0xC9, 0x57, 0x46, 0xF8, 0x51, 0x78, 0x08,\n0x58, 0x10, 0xB4, 0xFF, 0xBB, 0xF5, 0x15, 0x32, 0xF8, 0x30, 0x08, 0x11, 0x1F, 0x00, 0xD2, 0x24,\n0x44, 0xEF, 0xBF, 0xAA, 0x13, 0x12, 0x6F, 0x3B, 0x69, 0x94, 0x3F, 0xEA, 0xF2, 0xF1, 0xD0, 0xA6,\n0x61, 0x1C, 0x1B, 0x96, 0x0C, 0x1F, 0x85, 0x3A, 0xE9, 0x2B, 0x56, 0xCC, 0xDA, 0xF7, 0x96, 0x59,\n0x98, 0xC6, 0xC7, 0x85, 0x89, 0xAC, 0x1D, 0x3E, 0x20, 0xA4, 0x53, 0xFE, 0xA0, 0x4F, 0xA6, 0x7B,\n0xAF, 0xAA, 0x44, 0x41, 0x48, 0xC5, 0x3F, 0x7C, 0x42, 0x78, 0x89, 0x25, 0x25, 0x75, 0x40, 0xF6,\n0x7C, 0x30, 0x9A, 0xE0, 0xD2, 0x49, 0x5F, 0xE1, 0x1F, 0x10, 0xF2, 0x77, 0xC4, 0x91, 0xB9, 0xDD,\n0xF1, 0xFE, 0x37, 0xCF, 0x41, 0x56, 0x4D, 0x55, 0xF9, 0x50, 0xF9, 0xC3, 0x25, 0x04, 0x3E, 0x00,\n0x24, 0x54, 0xC1, 0x63, 0x49, 0xF8, 0xE1, 0x11, 0x52, 0xF2, 0x31, 0x91, 0xCC, 0x3A, 0x9E, 0xC8,\n0xF6, 0xAA, 0x93, 0xF0, 0xA0, 0xFC, 0x51, 0x21, 0xA4, 0x72, 0x9D, 0x72, 0x45, 0x00, 0x26, 0x20,\n0x52, 0x25, 0x84, 0xB9, 0x52, 0xB6, 0x56, 0x7A, 0xB7, 0x85, 0x88, 0x3C, 0xC4, 0xE2, 0x03, 0x0F,\n0x29, 0x75, 0x05, 0x1F, 0x86, 0x87, 0x90, 0xDE, 0x35, 0x09, 0x49, 0x9F, 0x84, 0x0E, 0xF6, 0x75,\n0xFF, 0xA8, 0xBA, 0xB1, 0x76, 0x86, 0x7F, 0xA0, 0x4A, 0x51, 0x9D, 0xF8, 0x23, 0x36, 0x33, 0xFE,\n0xE8, 0xA8, 0x51, 0x3E, 0x2F, 0x45, 0xBA, 0xB7, 0xCE, 0x07, 0x80, 0xE0, 0x21, 0x65, 0xFE, 0x8A,\n0xF4, 0x15, 0xEA, 0x14, 0x44, 0x56, 0x5D, 0x2D, 0x1E, 0x3D, 0x0B, 0x51, 0x8B, 0xE7, 0x12, 0xC6,\n0x8D, 0x89, 0x2C, 0xF0, 0xA8, 0xA8, 0x55, 0x1E, 0xC4, 0x42, 0xD0, 0x3B, 0x24, 0xB3, 0x2A, 0xFE,\n0x91, 0x41, 0x88, 0x36, 0xA6, 0x8F, 0xC5, 0x07, 0x05, 0x91, 0x4B, 0x87, 0x0F, 0x10, 0xA9, 0xF0,\n0xD1, 0xFD, 0x0B, 0x8D, 0xF2, 0xB9, 0x4F, 0xC8, 0x18, 0x6C, 0xF1, 0x2A, 0xF7, 0xE7, 0x71, 0x80,\n0x90, 0xA2, 0xFC, 0x81, 0x7F, 0x48, 0x84, 0x77, 0x96, 0x7F, 0x40, 0x88, 0x02, 0x11, 0x6D, 0xE3,\n0xF5, 0xD5, 0xD4, 0xC0, 0x41, 0x1C, 0x3E, 0x7C, 0x42, 0x56, 0xC7, 0xF0, 0x61, 0x10, 0x92, 0x7C,\n0x00, 0x08, 0xFA, 0xF3, 0x00, 0x10, 0xCA, 0x83, 0x6D, 0x42, 0x56, 0x45, 0x7A, 0xB7, 0x4F, 0xC8,\n0x3C, 0xED, 0xC1, 0x20, 0x4F, 0xAE, 0xA1, 0xED, 0xA8, 0x8C, 0xD4, 0xCB, 0xD5, 0x32, 0x09, 0x4A,\n0x4A, 0x86, 0x25, 0x1F, 0xC4, 0x20, 0x2C, 0x39, 0x20, 0xC4, 0xE2, 0x83, 0x74, 0xAF, 0xCF, 0x47,\n0x85, 0x10, 0xC2, 0x0F, 0xC3, 0x43, 0xF0, 0x0F, 0x97, 0x90, 0x8F, 0x5B, 0xE1, 0x56, 0x3D, 0x99,\n0x55, 0x8C, 0x25, 0xE3, 0x98, 0xAA, 0xF9, 0xC7, 0x03, 0x64, 0x94, 0x12, 0x21, 0xB4, 0x0D, 0xEF,\n0x46, 0x74, 0xFD, 0xA3, 0xAF, 0x66, 0xF9, 0x03, 0x35, 0x0B, 0x22, 0xF0, 0x01, 0x20, 0xE8, 0xD4,\n0xE4, 0x43, 0xC2, 0x43, 0x28, 0x0F, 0xF6, 0xE5, 0x78, 0x08, 0xEF, 0xF8, 0x25, 0x46, 0xDF, 0x84,\n0xC2, 0x3F, 0xAE, 0x21, 0x64, 0x3A, 0x54, 0xE7, 0x32, 0x72, 0x82, 0x44, 0x08, 0x0A, 0x58, 0xB6,\n0x2C, 0x31, 0x48, 0xEA, 0xE4, 0x23, 0x4D, 0xA4, 0xB2, 0x3C, 0xE8, 0x13, 0x72, 0x4F, 0x79, 0xB0,\n0xD5, 0x59, 0x66, 0xE1, 0x1F, 0xFD, 0x7E, 0xD9, 0x4A, 0xEF, 0xA2, 0x76, 0xC9, 0x70, 0xCF, 0x3F,\n0x0E, 0x39, 0x11, 0xAA, 0x8B, 0x8C, 0x8A, 0x1B, 0xF3, 0xA0, 0xE0, 0x83, 0xEA, 0x47, 0x3B, 0x54,\n0x7F, 0xCC, 0x95, 0xF3, 0x86, 0xA5, 0x83, 0xC7, 0xC8, 0x6A, 0x5A, 0x3E, 0x1F, 0x14, 0x44, 0x28,\n0x7F, 0xB4, 0x01, 0x81, 0x90, 0xE5, 0x9B, 0xA7, 0xBB, 0x1E, 0x1F, 0x14, 0x44, 0xE0, 0x03, 0x40,\n0x8C, 0x65, 0x96, 0xA3, 0x7F, 0xA6, 0xB0, 0xDA, 0x74, 0xA0, 0x8A, 0x7F, 0x14, 0x50, 0xD0, 0x0A,\n0x0F, 0x61, 0x82, 0x08, 0x08, 0x9D, 0x66, 0x83, 0x17, 0x74, 0x3B, 0x25, 0xDE, 0x76, 0x42, 0xF9,\n0xC3, 0x27, 0xE4, 0xA9, 0x6B, 0x1F, 0x14, 0x44, 0x12, 0x0F, 0xF8, 0xE8, 0xA9, 0x5A, 0x3E, 0x87,\n0x8A, 0x7D, 0x86, 0x9B, 0xA5, 0x56, 0x91, 0xDE, 0xCD, 0xAD, 0x40, 0x03, 0x5B, 0x29, 0xD3, 0xBB,\n0x6D, 0xFB, 0xB8, 0x16, 0x21, 0x2C, 0x0D, 0x60, 0x83, 0x93, 0xAE, 0x7D, 0x38, 0x2A, 0xCA, 0x83,\n0x06, 0x21, 0xF0, 0xD1, 0x04, 0x04, 0x42, 0xC4, 0x47, 0x11, 0x7F, 0x34, 0xD3, 0xBD, 0x86, 0x7F,\n0xB8, 0x25, 0x43, 0x46, 0x29, 0x3D, 0x24, 0xE3, 0x39, 0xCA, 0x1F, 0xD7, 0xA6, 0x87, 0x14, 0x3C,\n0x54, 0x3D, 0xE4, 0x2B, 0x08, 0xD9, 0x4F, 0x8C, 0x71, 0x72, 0x54, 0x16, 0x1D, 0xDA, 0xF9, 0x7C,\n0xE0, 0x21, 0xF2, 0x8F, 0x09, 0x3E, 0x28, 0x88, 0x90, 0xBE, 0xF2, 0x09, 0x81, 0x0F, 0x8F, 0x10,\n0x59, 0x65, 0xF9, 0x02, 0x39, 0xD3, 0xC6, 0xBB, 0x7B, 0x63, 0x84, 0x62, 0xA0, 0xC8, 0x01, 0x66,\n0x03, 0x13, 0x08, 0x81, 0x8F, 0x82, 0x87, 0x4E, 0xBA, 0x57, 0x80, 0x18, 0x70, 0xA0, 0x95, 0xA7,\n0x22, 0xBD, 0x6B, 0x7B, 0xC8, 0x1B, 0x0D, 0x40, 0xD0, 0x72, 0x9F, 0xDE, 0x7D, 0x01, 0x1E, 0x0E,\n0x21, 0x2B, 0xE4, 0x79, 0x88, 0x6F, 0x22, 0x1B, 0xF1, 0xC1, 0xB0, 0x1B, 0x84, 0x90, 0xBE, 0xEA,\n0x59, 0x88, 0x3C, 0x04, 0xFF, 0x28, 0xBD, 0x83, 0x1F, 0x82, 0xC9, 0x1A, 0x3E, 0x1C, 0x29, 0x99,\n0x75, 0xEF, 0xCC, 0x76, 0x92, 0x59, 0x65, 0xF9, 0xA3, 0x1F, 0x88, 0xB0, 0xBE, 0x32, 0x54, 0x4D,\n0xEF, 0x96, 0x9C, 0xD0, 0x12, 0x90, 0x64, 0xA0, 0xE1, 0x20, 0xFC, 0xC1, 0x57, 0x05, 0x1F, 0xD7,\n0x84, 0x21, 0x55, 0x0F, 0x21, 0x7D, 0x05, 0x1B, 0x86, 0x7F, 0xB8, 0xB2, 0xF9, 0x20, 0xDD, 0x4B,\n0xF8, 0xD1, 0x02, 0x84, 0x82, 0xC8, 0x0B, 0xC9, 0x23, 0xC4, 0xE6, 0xC3, 0x0F, 0xD5, 0xF9, 0xE4,\n0xA1, 0xCA, 0x20, 0x9E, 0x7F, 0x48, 0xC9, 0x87, 0xD4, 0x37, 0x10, 0x3D, 0x1C, 0x10, 0xA1, 0xFC,\n0x71, 0x10, 0x7D, 0x70, 0x3F, 0xE5, 0x31, 0x7C, 0x98, 0x1E, 0x22, 0x3E, 0x1C, 0x3A, 0xF0, 0x10,\n0xC3, 0x3F, 0x28, 0x88, 0x50, 0x1E, 0x74, 0x09, 0xD9, 0x67, 0xAA, 0x3A, 0x8D, 0x3F, 0x1E, 0xF8,\n0x60, 0xA4, 0xAA, 0x0E, 0x92, 0x07, 0x8A, 0xEA, 0xD6, 0x8D, 0x8C, 0xA2, 0x3A, 0x4C, 0x40, 0x89,\n0xE1, 0x1F, 0x26, 0x21, 0xE2, 0xC3, 0x14, 0x7C, 0x34, 0x01, 0xC1, 0x43, 0x4E, 0x5E, 0x48, 0x26,\n0x21, 0x94, 0x3F, 0x2C, 0x3D, 0x3E, 0x52, 0xFE, 0x30, 0xAA, 0x86, 0x1B, 0xF8, 0x40, 0x5D, 0x42,\n0xB8, 0x68, 0xA5, 0xDE, 0xA9, 0x5C, 0xE1, 0x98, 0xFF, 0x39, 0xF9, 0xBF, 0x7F, 0xEE, 0x20, 0xE0,\n0x31, 0xDA, 0x0B, 0x7C, 0x58, 0x52, 0xFA, 0xCA, 0x06, 0x64, 0x48, 0x66, 0x7D, 0x0A, 0x1F, 0x96,\n0x87, 0x60, 0x1F, 0x16, 0x21, 0xBC, 0x9E, 0x7A, 0xDF, 0x33, 0xC2, 0x43, 0xB2, 0x1C, 0x15, 0x07,\n0xE1, 0xB0, 0x97, 0xC2, 0x73, 0x47, 0xD7, 0x63, 0x41, 0x84, 0xBB, 0xA1, 0x9B, 0xBE, 0xF2, 0x45,\n0xF9, 0xC3, 0xD2, 0x09, 0x7C, 0xD4, 0x01, 0x41, 0xA7, 0x47, 0xBF, 0xCE, 0x21, 0xE4, 0x57, 0x23,\n0xFC, 0x98, 0xEB, 0x21, 0xD8, 0xEE, 0xB1, 0xE7, 0x1F, 0x88, 0x32, 0x6F, 0xC5, 0x3F, 0x9E, 0x25,\n0x60, 0xBE, 0xBA, 0xFB, 0xF8, 0xFB, 0x5C, 0x74, 0x94, 0xB7, 0xD6, 0x62, 0x8D, 0xB5, 0xDF, 0xC3,\n0x87, 0xE9, 0x21, 0x4F, 0x4C, 0x68, 0xA3, 0x3F, 0x3D, 0x61, 0x38, 0x46, 0x7F, 0xBA, 0xBC, 0x9D,\n0xF7, 0x0B, 0xA5, 0x29, 0xF2, 0x12, 0x1B, 0xF5, 0x74, 0x85, 0x64, 0x31, 0x30, 0x5F, 0x75, 0x1D,\n0x04, 0xE5, 0x7A, 0x8B, 0x3B, 0x19, 0x39, 0xAC, 0x5E, 0xC9, 0xF0, 0x58, 0x78, 0x58, 0xEB, 0xAB,\n0xD7, 0xC3, 0x6E, 0xE6, 0xDC, 0x88, 0x23, 0x28, 0x9E, 0xC5, 0xC7, 0xAF, 0xBF, 0xBE, 0x7C, 0xC3,\n0x05, 0x64, 0x89, 0x83, 0x38, 0xDA, 0x1D, 0xCD, 0x22, 0x64, 0x61, 0x2B, 0xF9, 0xF0, 0x44, 0x39,\n0x84, 0xCB, 0x87, 0x58, 0x2E, 0x17, 0x0E, 0xF2, 0xD1, 0x19, 0xCB, 0xA8, 0xAC, 0x2E, 0xC7, 0x0E,\n0x23, 0x29, 0x67, 0xD1, 0xF7, 0x14, 0x40, 0x0C, 0x3E, 0xE4, 0x20, 0xB3, 0x01, 0x99, 0xD1, 0x59,\n0x61, 0x59, 0xFA, 0xFE, 0xFB, 0xEF, 0xE5, 0x21, 0x69, 0x10, 0x8D, 0xF0, 0x83, 0xB4, 0xD6, 0x47,\n0xCF, 0x43, 0x8D, 0x46, 0xFA, 0x23, 0x7A, 0xE9, 0x20, 0xCD, 0x62, 0x08, 0x77, 0xBB, 0xC7, 0x99,\n0x29, 0xDE, 0x39, 0x7C, 0xAC, 0x8E, 0x08, 0xA3, 0x1D, 0x40, 0x4E, 0xDE, 0x34, 0x01, 0xF9, 0x73,\n0xF9, 0x26, 0x31, 0x88, 0x83, 0xC7, 0xD1, 0xEE, 0x68, 0xE5, 0x22, 0x32, 0xBF, 0x5C, 0xC8, 0x88,\n0x9A, 0x51, 0xFA, 0x83, 0x4A, 0xE8, 0xB5, 0x8B, 0x08, 0x24, 0x60, 0xF2, 0x51, 0xF4, 0x8F, 0xF7,\n0xF9, 0xAB, 0xCA, 0x54, 0x21, 0xF1, 0x9B, 0x27, 0x21, 0x08, 0x71, 0x63, 0x10, 0x7F, 0xC9, 0x14,\n0x7C, 0x44, 0xB7, 0x9F, 0xAE, 0x37, 0xF6, 0xCE, 0xE1, 0x23, 0x54, 0xA4, 0x1F, 0x7A, 0xE1, 0xFA,\n0x9D, 0x86, 0xA7, 0xE2, 0x20, 0x55, 0x29, 0x06, 0x21, 0x99, 0x62, 0x5C, 0x30, 0x11, 0x62, 0x47,\n0xE8, 0x7A, 0xC2, 0x2C, 0x3E, 0x8E, 0xE6, 0x20, 0x32, 0x64, 0x6E, 0xFF, 0x74, 0x00, 0x79, 0x73,\n0x19, 0x80, 0xBC, 0xE9, 0x12, 0xB2, 0xFB, 0xF5, 0x28, 0x04, 0x21, 0xFF, 0x09, 0x1F, 0xBE, 0x1E,\n0x86, 0x34, 0x56, 0x6C, 0x67, 0x75, 0x01, 0x07, 0x06, 0x32, 0x4C, 0x81, 0xE7, 0x5C, 0x44, 0x67,\n0x69, 0x45, 0x39, 0x44, 0xF2, 0x09, 0xC9, 0x42, 0x9E, 0x1D, 0x85, 0x3C, 0x85, 0x62, 0xE7, 0xF2,\n0x91, 0x69, 0xDE, 0x19, 0x7C, 0x48, 0xC5, 0xDB, 0xDB, 0x2B, 0x19, 0x09, 0x3D, 0xE1, 0x63, 0xC1,\n0xF1, 0x51, 0xCD, 0x41, 0xDE, 0xA9, 0x5A, 0xC8, 0x30, 0xF0, 0x44, 0xE9, 0x26, 0x28, 0x8F, 0x38,\n0x88, 0xA5, 0x59, 0x7C, 0x40, 0x88, 0xC3, 0xC7, 0xD0, 0xA6, 0x01, 0xD1, 0xD3, 0xE4, 0x21, 0xBF,\n0x7A, 0xFE, 0x21, 0x89, 0x90, 0xFF, 0x01, 0x1F, 0x5F, 0x4A, 0xD7, 0x61, 0x22, 0xF5, 0x8B, 0x58,\n0x5A, 0xC9, 0xDD, 0xD9, 0x7E, 0x16, 0xD4, 0xD3, 0x9C, 0xB9, 0x61, 0x24, 0x7F, 0xCB, 0xF5, 0x8F,\n0x94, 0x67, 0x07, 0xA2, 0x63, 0x86, 0x87, 0x7C, 0x22, 0x89, 0x90, 0xB5, 0xCB, 0x87, 0x94, 0x35,\n0x74, 0x6D, 0xAD, 0xF6, 0xFD, 0x60, 0x1F, 0xF2, 0x57, 0x8D, 0xD5, 0xB4, 0x83, 0xE8, 0xC6, 0x04,\n0x21, 0x60, 0xE1, 0x78, 0x88, 0xE4, 0x31, 0x32, 0x83, 0x0F, 0x9B, 0x90, 0x5F, 0xC5, 0x87, 0x5A,\n0x1B, 0x10, 0xFC, 0x43, 0xED, 0xCF, 0xE5, 0xC5, 0xAF, 0x1E, 0x1F, 0x10, 0xF2, 0x3F, 0xE1, 0x43,\n0x26, 0xD2, 0x74, 0x10, 0x4E, 0x74, 0xF1, 0x73, 0x16, 0xDC, 0x7D, 0x4F, 0xC9, 0xBC, 0xD2, 0xE0,\n0xC3, 0x03, 0xA4, 0xFC, 0x12, 0x20, 0x67, 0xC6, 0x27, 0x1E, 0xEA, 0x96, 0x7F, 0x20, 0x0B, 0x90,\n0xEF, 0x51, 0xE5, 0x4D, 0xBC, 0x45, 0xFB, 0x8B, 0xB9, 0xF3, 0x69, 0x6D, 0xA6, 0x8A, 0xC2, 0xB8,\n0x41, 0x9A, 0xB4, 0x94, 0x5A, 0x53, 0x0D, 0x2E, 0x0A, 0xAD, 0x34, 0xAB, 0x20, 0x29, 0x58, 0x17,\n0x8A, 0x8A, 0x88, 0x8B, 0x52, 0x57, 0x42, 0x95, 0xBA, 0x71, 0xA5, 0x1B, 0xBB, 0x10, 0x6A, 0x71,\n0x2F, 0x82, 0xD9, 0xB8, 0x28, 0x7E, 0x00, 0x57, 0x7E, 0x52, 0xCF, 0x3C, 0x39, 0xE3, 0xCF, 0xDC,\n0xDE, 0xDC, 0x3C, 0xE3, 0xFF, 0xE7, 0xCC, 0x4C, 0x26, 0x31, 0x6A, 0xDE, 0x99, 0xFB, 0x9B, 0xE7,\n0x9E, 0x73, 0x26, 0x79, 0xAF, 0x6F, 0xD2, 0x3F, 0xBA, 0x90, 0xDA, 0x0E, 0x02, 0x1F, 0xC3, 0x3D,\n0x04, 0x07, 0xB1, 0x64, 0xE0, 0x01, 0x1F, 0x16, 0x21, 0xAB, 0x37, 0x4E, 0x7B, 0x3E, 0x5E, 0x3A,\n0x6D, 0x00, 0x82, 0x7F, 0x08, 0x25, 0x83, 0x10, 0xCD, 0xAF, 0xF2, 0x73, 0x3C, 0x41, 0xC8, 0x3F,\n0xC1, 0xC7, 0xA3, 0xC3, 0xC7, 0xAB, 0xBF, 0x9F, 0xA3, 0xBA, 0x87, 0xF0, 0x5A, 0x2C, 0x79, 0xF6,\n0xBB, 0x25, 0x09, 0x69, 0x5D, 0x54, 0xA3, 0xD8, 0xB5, 0x21, 0x8B, 0x0F, 0xE4, 0xA6, 0x1F, 0x3D,\n0x25, 0x4E, 0x0B, 0x04, 0xE9, 0x5E, 0x5E, 0x03, 0x0F, 0x08, 0xD1, 0x95, 0x00, 0x48, 0x1A, 0xFE,\n0x81, 0x87, 0xB4, 0x1C, 0x04, 0x3C, 0x20, 0xC4, 0xF7, 0x10, 0xC9, 0x46, 0x64, 0x37, 0x1F, 0x13,\n0xF8, 0x80, 0x90, 0x16, 0x1F, 0x5D, 0xDE, 0xAD, 0x08, 0x52, 0x6A, 0x80, 0xC0, 0x47, 0xBC, 0x81,\n0x80, 0x90, 0x46, 0xFE, 0x01, 0x21, 0x13, 0x08, 0xF9, 0xEB, 0x78, 0x4C, 0x0E, 0xF9, 0x76, 0xD4,\n0x30, 0xFF, 0xC0, 0x43, 0xDA, 0x0E, 0xC2, 0x25, 0x52, 0xBB, 0x41, 0x40, 0x2B, 0x63, 0x4D, 0x3E,\n0xD0, 0xCE, 0xF2, 0x95, 0x7F, 0xB7, 0x3B, 0xFE, 0x91, 0x78, 0xC4, 0xB6, 0xF9, 0x76, 0xF8, 0xE0,\n0x6E, 0x5E, 0x8F, 0x0F, 0x08, 0x29, 0xCB, 0x10, 0x24, 0x5F, 0x1D, 0x1F, 0xC5, 0xC1, 0x29, 0x8E,\n0x5F, 0xCB, 0x3F, 0x24, 0xCB, 0x43, 0xD0, 0xE1, 0x30, 0x99, 0x7C, 0x40, 0x88, 0xC3, 0x07, 0xB1,\n0x1D, 0x10, 0xE8, 0xB0, 0x08, 0x19, 0x21, 0x83, 0x90, 0x61, 0x80, 0xD0, 0x3E, 0x77, 0x55, 0x7C,\n0x57, 0x4A, 0x1E, 0x52, 0xC9, 0x24, 0x15, 0x21, 0xFC, 0x23, 0x9F, 0x05, 0x21, 0xF5, 0x9B, 0x92,\n0x6E, 0x34, 0x9A, 0x1E, 0x9E, 0xC9, 0xE4, 0x03, 0x0F, 0x69, 0xE6, 0x1F, 0x98, 0x47, 0x72, 0xE2,\n0xF9, 0x07, 0x84, 0x58, 0x7C, 0xA0, 0x66, 0x02, 0x72, 0xC3, 0xF1, 0x59, 0x3F, 0xDE, 0x3C, 0x3F,\n0x7E, 0x48, 0xE9, 0x39, 0xC2, 0x43, 0x7C, 0xD1, 0x3B, 0xB6, 0xB4, 0x83, 0x0F, 0xF0, 0x30, 0x08,\n0x59, 0x1D, 0xC1, 0x07, 0x1E, 0x52, 0x03, 0x04, 0x3E, 0x88, 0xA3, 0xD5, 0x56, 0x44, 0x9E, 0xF2,\n0x63, 0xA0, 0x78, 0xA5, 0xD1, 0xC9, 0x19, 0x44, 0x07, 0xED, 0xC1, 0xE1, 0x7C, 0xE0, 0x21, 0xAD,\n0x86, 0xC8, 0x9B, 0x20, 0x72, 0x93, 0x3B, 0x37, 0x0D, 0x07, 0x79, 0xA8, 0xA8, 0x01, 0x08, 0x03,\n0xD7, 0xF3, 0x90, 0x9E, 0x0D, 0x91, 0x91, 0xAC, 0x98, 0xFE, 0x01, 0x21, 0x16, 0x1F, 0x28, 0xFF,\n0xB8, 0xDC, 0xBE, 0x9B, 0xCC, 0xC4, 0x74, 0x72, 0x33, 0x41, 0xE3, 0x3A, 0x52, 0x33, 0x10, 0xE6,\n0x57, 0x6D, 0x0F, 0x71, 0xA6, 0x59, 0xBE, 0x1A, 0x7C, 0x8C, 0x46, 0x95, 0x91, 0xD9, 0xE2, 0xE3,\n0xA5, 0x67, 0x51, 0x07, 0xA4, 0x7C, 0x9B, 0xE2, 0xC8, 0xE4, 0x03, 0x42, 0xFE, 0xC1, 0xF6, 0xE0,\n0xA3, 0xCB, 0x07, 0x84, 0xD4, 0x5B, 0x5A, 0x9C, 0x7A, 0x6D, 0xD7, 0x9B, 0x8E, 0x90, 0x8D, 0x26,\n0x7A, 0xBF, 0xBD, 0xB9, 0xB9, 0x7E, 0xA8, 0x6A, 0x67, 0xF9, 0x0A, 0xD1, 0x10, 0xA9, 0xE7, 0x1F,\n0xE0, 0xC1, 0xE2, 0xF2, 0x41, 0xAA, 0xEE, 0xF3, 0x41, 0xB5, 0x97, 0xEF, 0x11, 0xE6, 0xAF, 0x2C,\n0x5E, 0xEB, 0xC0, 0x14, 0x11, 0x0B, 0x47, 0xB0, 0xF4, 0x8F, 0xAA, 0xEC, 0x99, 0x31, 0x1E, 0x32,\n0x44, 0xDB, 0xF9, 0x60, 0x60, 0xA2, 0xED, 0xB7, 0xA6, 0x1F, 0xD5, 0x46, 0x3D, 0x84, 0x00, 0x88,\n0xBC, 0xA5, 0x8C, 0x30, 0x9F, 0xE3, 0x2D, 0xE9, 0x87, 0x3E, 0xC6, 0x8A, 0x05, 0x42, 0xC6, 0x7F,\n0x7D, 0x7A, 0x45, 0x7A, 0x6E, 0x02, 0xD2, 0xFC, 0x55, 0x13, 0xC4, 0xCF, 0x2B, 0x52, 0xBF, 0xEA,\n0xF6, 0xB5, 0x51, 0xCB, 0x90, 0xEF, 0xD8, 0x71, 0x0B, 0x16, 0xFE, 0xF1, 0x91, 0x56, 0x64, 0xF2,\n0x01, 0x21, 0x35, 0x44, 0x04, 0xC3, 0x73, 0x3C, 0x42, 0x8D, 0xF6, 0x47, 0x55, 0x3B, 0xF8, 0xF8,\n0xA8, 0xDF, 0x90, 0x87, 0xD0, 0x4F, 0x27, 0x0F, 0xD9, 0x70, 0x0E, 0x6D, 0x73, 0x83, 0xCA, 0xF6,\n0x47, 0x45, 0xF1, 0xB2, 0xEB, 0x21, 0xF7, 0x82, 0x64, 0xE8, 0x8F, 0xBA, 0x37, 0xCB, 0xBB, 0xC5,\n0xE0, 0xC4, 0x43, 0x2A, 0xED, 0x8F, 0x6A, 0xD4, 0x00, 0xA9, 0x47, 0x9D, 0x90, 0xC4, 0x63, 0xB2,\n0x5E, 0x46, 0xB1, 0x2D, 0xCA, 0xBD, 0xFF, 0x72, 0x79, 0xB7, 0x7A, 0x15, 0x53, 0xE6, 0x58, 0xBB,\n0x21, 0x4B, 0x2C, 0x64, 0x14, 0x02, 0x0D, 0xBE, 0x9C, 0xFE, 0x50, 0x8A, 0x51, 0xE6, 0xF1, 0x81,\n0x2A, 0x84, 0xA4, 0x7F, 0x54, 0x11, 0x69, 0xB4, 0x3F, 0xAA, 0xF2, 0xFC, 0x03, 0xF1, 0x33, 0xC4,\n0x38, 0xA6, 0x0E, 0x09, 0x1E, 0x72, 0xC3, 0x66, 0x83, 0x8B, 0xA2, 0xFD, 0x81, 0xCC, 0x44, 0xE4,\n0x9E, 0xED, 0xDF, 0x36, 0xCB, 0x82, 0x8F, 0xE9, 0xF3, 0xC1, 0xF9, 0x54, 0xE5, 0x63, 0xDB, 0xA8,\n0x3F, 0x2D, 0x00, 0x79, 0x09, 0x92, 0x8A, 0xA0, 0x65, 0x58, 0x96, 0xAF, 0x56, 0x93, 0x91, 0x34,\n0x5D, 0x75, 0x8C, 0x4E, 0x3A, 0x54, 0x93, 0x90, 0x7F, 0x9B, 0x0F, 0xF0, 0x68, 0xE4, 0x21, 0x5C,\n0xFA, 0x60, 0x23, 0xAD, 0x23, 0x57, 0x39, 0xC9, 0xCD, 0x43, 0xF9, 0x6B, 0x9C, 0x0F, 0x2D, 0x59,\n0x7C, 0xA0, 0xB7, 0x82, 0x87, 0x2D, 0xFD, 0xC1, 0x92, 0x0D, 0x2D, 0x15, 0xC7, 0xC1, 0x3F, 0xBC,\n0x59, 0xD6, 0x43, 0x83, 0xEF, 0xA2, 0x28, 0xF1, 0x70, 0x73, 0xFD, 0xF5, 0x89, 0x58, 0x20, 0x43,\n0x47, 0x1B, 0x4F, 0x9A, 0xFE, 0x01, 0x21, 0x0E, 0x22, 0xF7, 0x9F, 0xDD, 0xC7, 0xC3, 0x5F, 0x26,\n0x04, 0x3E, 0x34, 0x0E, 0x8B, 0xC1, 0x59, 0x23, 0x64, 0xF5, 0xC4, 0xA8, 0xAF, 0x04, 0x80, 0x74,\n0xF6, 0xB1, 0xFD, 0x8D, 0x15, 0x42, 0xC4, 0xC2, 0x54, 0x8C, 0x44, 0x8C, 0x42, 0x6C, 0xF1, 0x90,\n0x7F, 0xBB, 0x3D, 0x58, 0x35, 0xFA, 0xC2, 0x43, 0x24, 0xF2, 0x8F, 0x7C, 0xC6, 0x1A, 0x0A, 0x42,\n0x18, 0x33, 0x11, 0xC5, 0xB0, 0x2A, 0x9F, 0xB5, 0xDA, 0x1F, 0xD5, 0x54, 0xFD, 0xFB, 0x67, 0xF6,\n0xC1, 0x1C, 0x0B, 0x4A, 0xD8, 0x2B, 0xF9, 0xA8, 0xA8, 0xD5, 0x10, 0xE1, 0xF3, 0x56, 0xC5, 0xB7,\n0x25, 0x23, 0x68, 0x7F, 0xC4, 0x8A, 0x87, 0x68, 0xA5, 0xA9, 0x9E, 0xD1, 0xF0, 0x0F, 0xF7, 0xCB,\n0x85, 0xF7, 0x11, 0x3C, 0xF9, 0x2B, 0x84, 0xD0, 0x1E, 0xD4, 0x20, 0x9C, 0xC6, 0xD0, 0xDC, 0x18,\n0x9C, 0x35, 0x42, 0x56, 0x6F, 0xC0, 0x47, 0x35, 0x00, 0x44, 0xE9, 0x47, 0x25, 0x68, 0xAA, 0x57,\n0xDA, 0xE7, 0x42, 0x44, 0x5A, 0xE9, 0x33, 0xC5, 0x83, 0xB6, 0xF1, 0x21, 0xA3, 0xDC, 0xFB, 0xFF,\n0xE0, 0xA3, 0xBC, 0x31, 0x4B, 0x27, 0x56, 0x20, 0x70, 0xF2, 0x89, 0x5C, 0xE2, 0x32, 0xDA, 0x23,\n0x12, 0x95, 0x9E, 0x2D, 0x17, 0x5F, 0x54, 0xE5, 0xC3, 0x9E, 0x65, 0x41, 0x44, 0x81, 0x07, 0x2D,\n0x43, 0x23, 0x3D, 0xDF, 0xDA, 0x10, 0xA9, 0x7D, 0x78, 0xF6, 0xCB, 0x54, 0x5D, 0xED, 0x73, 0x0E,\n0x0E, 0xA4, 0xF0, 0x12, 0xA2, 0xFD, 0xD1, 0xBA, 0x3E, 0x55, 0xF2, 0x8D, 0x8C, 0x70, 0x8E, 0x8B,\n0x8B, 0x34, 0x0F, 0x99, 0xC8, 0x5F, 0xF4, 0x10, 0xDA, 0x1F, 0x9A, 0xCC, 0x4C, 0x18, 0x9C, 0x7A,\n0xD4, 0xC8, 0xDC, 0xE4, 0xA3, 0x49, 0x87, 0x9A, 0xEA, 0x09, 0x48, 0x1B, 0x0F, 0x1A, 0x22, 0xF0,\n0xA1, 0x0F, 0xA0, 0x6D, 0x80, 0xBA, 0x4C, 0x5E, 0x62, 0xD5, 0x16, 0x42, 0xFE, 0x14, 0x1F, 0x3E,\n0x1A, 0xCC, 0xAF, 0x4C, 0x0F, 0x21, 0xFD, 0x48, 0x4C, 0x18, 0x00, 0x45, 0x53, 0x5D, 0x13, 0xF3,\n0x88, 0xAB, 0x72, 0x68, 0xF1, 0x84, 0xC7, 0xB2, 0xFD, 0xD1, 0x16, 0xE5, 0xDE, 0x10, 0xED, 0xC1,\n0xAD, 0x88, 0x98, 0xFE, 0x01, 0x21, 0xBB, 0xEC, 0x83, 0x27, 0xB4, 0x0C, 0x15, 0xE9, 0x1F, 0x37,\n0x1C, 0x0B, 0x48, 0xE1, 0x48, 0x35, 0xDA, 0x83, 0xDE, 0xEF, 0xF3, 0x96, 0x06, 0xC2, 0xF3, 0x3F,\n0xDD, 0x32, 0xA4, 0xFD, 0x91, 0x13, 0xFD, 0x29, 0x83, 0x33, 0xF7, 0xC8, 0x43, 0x3C, 0x3E, 0x14,\n0x6B, 0x40, 0xE8, 0x9E, 0x37, 0xE2, 0xE8, 0x77, 0x42, 0x12, 0x87, 0x1E, 0xCD, 0xA5, 0xF6, 0x26,\n0xBD, 0x85, 0x88, 0xD4, 0x11, 0x2D, 0x43, 0x97, 0x0F, 0xCA, 0xBB, 0x7F, 0x9F, 0x7F, 0x60, 0x22,\n0x45, 0xFE, 0x51, 0xF7, 0x8F, 0x13, 0x9A, 0xEA, 0xEB, 0x7A, 0x27, 0xF9, 0x79, 0x53, 0x10, 0x62,\n0xF1, 0xA1, 0x86, 0x08, 0xFE, 0xD1, 0xC6, 0x43, 0xAB, 0xE7, 0x1F, 0xE8, 0x23, 0x27, 0xFD, 0x40,\n0xFD, 0x54, 0xF2, 0x4A, 0xFE, 0x91, 0xDA, 0xF0, 0x90, 0x12, 0x15, 0xDA, 0x83, 0x86, 0x2E, 0x50,\n0x9A, 0x05, 0x8E, 0xA1, 0x3D, 0xAD, 0x7A, 0x11, 0x13, 0xB1, 0x55, 0xFA, 0x87, 0xD8, 0x48, 0x07,\n0x61, 0x70, 0x86, 0xAB, 0xE8, 0x25, 0x08, 0x59, 0x51, 0xDE, 0x6D, 0xC4, 0x69, 0x07, 0x08, 0xE9,\n0x87, 0x43, 0xC8, 0xD3, 0x7A, 0x96, 0xB7, 0xFE, 0xBF, 0x2E, 0x13, 0x4D, 0xCC, 0x43, 0x78, 0xD0,\n0x54, 0xFF, 0x87, 0xA6, 0x57, 0xC8, 0x38, 0x41, 0x34, 0x44, 0x42, 0x34, 0xCE, 0x8B, 0x15, 0x46,\n0x3A, 0x65, 0x55, 0x07, 0x3E, 0x28, 0xF1, 0xE6, 0x93, 0x2A, 0x21, 0xEF, 0x9B, 0xEA, 0x09, 0x29,\n0x80, 0xD8, 0x8A, 0xC8, 0x20, 0x3E, 0x48, 0xD5, 0xF9, 0xAC, 0x35, 0x17, 0xE1, 0xA5, 0x2B, 0xB5,\n0x0C, 0xD5, 0x3E, 0x27, 0xE5, 0x28, 0xF2, 0x10, 0x8E, 0xD4, 0x0D, 0x3F, 0xEB, 0xEE, 0xE9, 0x8F,\n0x78, 0xA0, 0x04, 0x43, 0x12, 0x1C, 0x7A, 0xF8, 0x53, 0x0D, 0x11, 0xDA, 0x1F, 0x59, 0x2A, 0x12,\n0x24, 0xF8, 0x86, 0x9E, 0x24, 0x38, 0x4F, 0x4F, 0xF0, 0xE1, 0x44, 0xFC, 0x2D, 0xB7, 0xDE, 0x1B,\n0x3B, 0x42, 0x56, 0x6A, 0x7F, 0xF0, 0x3F, 0xD5, 0x8E, 0xA0, 0x58, 0x26, 0xAC, 0x59, 0xDD, 0xA2,\n0x65, 0x78, 0x88, 0xFE, 0x2B, 0xFF, 0x80, 0x90, 0x3C, 0xC3, 0xF8, 0x06, 0xD1, 0x17, 0xB4, 0x32,\n0xC2, 0x43, 0xBA, 0x44, 0xA4, 0xA0, 0xA1, 0x5D, 0xEE, 0xFD, 0xC8, 0xE4, 0x83, 0x86, 0x88, 0x85,\n0x87, 0x16, 0xE6, 0x57, 0x9E, 0xE0, 0xC3, 0x52, 0xC7, 0x07, 0xED, 0x73, 0x2C, 0xA3, 0xEA, 0x21,\n0xB1, 0xD0, 0x3E, 0xB7, 0xA4, 0x3C, 0x43, 0x2C, 0xF4, 0x5E, 0x01, 0x2D, 0xF9, 0x0C, 0x7A, 0x86,\n0x37, 0x44, 0xE0, 0x43, 0x6C, 0x68, 0x40, 0xC6, 0x70, 0x64, 0x70, 0xEA, 0x99, 0x8A, 0x59, 0xB1,\n0x11, 0x21, 0x6A, 0x7F, 0x58, 0xF1, 0xA3, 0xED, 0x20, 0xA7, 0xBF, 0x1E, 0xC7, 0x2F, 0x70, 0xC5,\n0xFF, 0xC0, 0x8A, 0x24, 0x64, 0xC0, 0xC5, 0x60, 0x12, 0xF1, 0x38, 0xF0, 0xEE, 0xC4, 0xF7, 0xE2,\n0xE0, 0x5B, 0x11, 0xCB, 0x17, 0xF8, 0x44, 0xC3, 0x3F, 0x48, 0x46, 0xE0, 0x03, 0x35, 0x70, 0xF1,\n0xFC, 0x83, 0x69, 0x56, 0xFA, 0x47, 0x42, 0xF2, 0x2C, 0x9E, 0x3D, 0x80, 0x87, 0x47, 0xC8, 0x0F,\n0xDE, 0xFC, 0x8A, 0xDB, 0x4E, 0x94, 0x79, 0xBC, 0x99, 0x6B, 0x08, 0x40, 0xF2, 0x05, 0x3D, 0x6A,\n0x63, 0xCE, 0xAF, 0xA8, 0x92, 0xE0, 0x20, 0x69, 0x17, 0xE0, 0xC1, 0x3F, 0x82, 0x9D, 0xC7, 0xC3,\n0xC9, 0x67, 0x93, 0x43, 0x3F, 0x54, 0xDE, 0x7D, 0xA2, 0x7C, 0xA5, 0x74, 0x58, 0x60, 0x4C, 0x99,\n0xDF, 0x88, 0x95, 0x6C, 0xAA, 0xD3, 0xFE, 0x30, 0x1C, 0xE4, 0x17, 0xF7, 0xBD, 0x51, 0xEC, 0xD2,\n0xB7, 0x6B, 0x4D, 0xE9, 0xFE, 0xF7, 0xC7, 0x01, 0x31, 0x7E, 0x1C, 0xA8, 0x0B, 0xF0, 0x70, 0x10,\n0x89, 0x9F, 0x89, 0x3B, 0x19, 0xA2, 0x98, 0x5F, 0x5D, 0x5F, 0xC7, 0x6A, 0x2D, 0xF1, 0x4E, 0x46,\n0xA7, 0x45, 0xC8, 0xF7, 0x3F, 0x7F, 0xEF, 0x2B, 0xDE, 0xFC, 0x3E, 0x00, 0x5A, 0x84, 0x5C, 0x3D,\n0x5C, 0xDB, 0x11, 0xB3, 0xAC, 0x93, 0x21, 0xBA, 0x09, 0xFB, 0xF0, 0x43, 0xB3, 0xAC, 0x41, 0x27,\n0x36, 0xD6, 0xF1, 0x80, 0xA0, 0x7D, 0x9E, 0xC9, 0x47, 0xA0, 0xD1, 0x3F, 0xD7, 0xFE, 0x34, 0x1E,\n0xE4, 0x20, 0x89, 0xC8, 0xF1, 0xC1, 0xAF, 0x2F, 0x79, 0xFA, 0x35, 0xA6, 0x58, 0x7A, 0xAF, 0xA3,\n0x83, 0xD3, 0xD5, 0xE1, 0x72, 0x62, 0x6B, 0x34, 0x1A, 0x9F, 0xCF, 0xCF, 0x07, 0x68, 0x3E, 0xE4,\n0x28, 0x1E, 0xC6, 0x71, 0x7C, 0x67, 0xF1, 0xCE, 0x00, 0x7D, 0x7E, 0x72, 0x7B, 0x62, 0x2B, 0xDE,\n0x7B, 0x75, 0x3D, 0x40, 0x57, 0xD7, 0xDF, 0xF9, 0x83, 0xF7, 0xAE, 0x5B, 0xBF, 0xFF, 0x66, 0x90,\n0xBE, 0xFF, 0x50, 0xFF, 0x9A, 0xFD, 0x3F, 0xF8, 0xEE, 0x7A, 0x90, 0xAE, 0xE2, 0xD8, 0xDC, 0x9A,\n0x11, 0xCB, 0x25, 0x47, 0xDE, 0xD2, 0x7D, 0x9C, 0xAF, 0xF8, 0x91, 0x9F, 0x38, 0x67, 0x11, 0x2C,\n0xEB, 0x97, 0x0E, 0x37, 0x9E, 0x5F, 0x74, 0x84, 0xC4, 0x60, 0x98, 0xD9, 0xCB, 0xF9, 0xF9, 0x72,\n0x32, 0xD2, 0x90, 0x5B, 0xE6, 0xA2, 0xDD, 0xA5, 0x36, 0xDA, 0x95, 0xD8, 0xDF, 0x3F, 0xB6, 0xC7,\n0x7C, 0x4C, 0xB1, 0x7E, 0x74, 0x59, 0x3A, 0x3D, 0x8E, 0x34, 0x7D, 0x6A, 0x13, 0xD2, 0xB5, 0x0B,\n0xC7, 0x67, 0xF1, 0x27, 0x3D, 0x33, 0x97, 0xD0, 0x10, 0x42, 0x2E, 0x42, 0xEF, 0x7C, 0xE1, 0x9F,\n0xA3, 0xCB, 0x93, 0xC5, 0xC9, 0xAD, 0x39, 0x06, 0x6E, 0xC3, 0x3F, 0x42, 0xD7, 0xBE, 0x1E, 0xBE,\n0xFB, 0x2E, 0x2C, 0xE4, 0xCE, 0x8C, 0x68, 0x86, 0x7C, 0xFF, 0xE1, 0xF7, 0xC3, 0xF8, 0x08, 0x42,\n0x7C, 0x40, 0xBE, 0x0B, 0x5D, 0x0F, 0xD0, 0x55, 0xC8, 0xBE, 0x7C, 0xC4, 0x1B, 0x2F, 0x2F, 0x2F,\n0xFD, 0x23, 0xBF, 0x78, 0xE7, 0x22, 0xD4, 0x5B, 0x43, 0x12, 0x91, 0xDB, 0x24, 0x83, 0x97, 0xF4,\n0xDA, 0xD9, 0x10, 0x9D, 0x9F, 0x8D, 0xBB, 0x16, 0xE1, 0xC4, 0xD4, 0x74, 0x12, 0x3F, 0x29, 0x7D,\n0x34, 0x08, 0x10, 0x53, 0x51, 0xC6, 0x7A, 0xE3, 0x68, 0x7F, 0x34, 0xF5, 0xF0, 0xE8, 0xF8, 0x10,\n0x21, 0x67, 0x83, 0xE4, 0xF3, 0x71, 0x3F, 0xEF, 0x08, 0xF9, 0x7C, 0xF1, 0xF9, 0x3B, 0x56, 0xC4,\n0x29, 0xFD, 0xE2, 0xF2, 0xD2, 0xBE, 0x46, 0x5E, 0x09, 0x90, 0x2B, 0x9F, 0x8F, 0xD0, 0x83, 0x6D,\n0x22, 0x77, 0x31, 0xDC, 0x43, 0x3F, 0x57, 0x59, 0xF8, 0xB9, 0x54, 0xBC, 0x14, 0x6F, 0x1F, 0x42,\n0xC8, 0x77, 0xD2, 0x83, 0xFB, 0xE1, 0xAF, 0xAF, 0x24, 0xDB, 0x42, 0x74, 0x28, 0x2F, 0x75, 0x58,\n0xAD, 0x58, 0xA7, 0x16, 0xC2, 0x43, 0x16, 0x91, 0x5C, 0xF0, 0x10, 0x5B, 0xF0, 0x19, 0xC6, 0xC7,\n0xFC, 0xFC, 0x6C, 0x39, 0x16, 0x21, 0x26, 0x22, 0xA3, 0xFD, 0xA3, 0x37, 0xF6, 0x6D, 0x42, 0x3E,\n0xEE, 0x92, 0xF4, 0x63, 0x8F, 0x8F, 0xEE, 0x27, 0xE2, 0xDE, 0x38, 0x7A, 0x63, 0xE4, 0xFB, 0x87,\n0x14, 0xDE, 0x60, 0x28, 0xDF, 0x64, 0x7B, 0x88, 0x0E, 0xF9, 0x9A, 0x10, 0xE3, 0x0C, 0x25, 0x1F,\n0x22, 0xC4, 0xCB, 0x3F, 0xA4, 0x68, 0x2D, 0x3F, 0xB8, 0x7C, 0x48, 0x9D, 0x87, 0x38, 0x8A, 0xFC,\n0x5C, 0x5D, 0xC2, 0x9F, 0xC1, 0x01, 0x55, 0x90, 0x89, 0xF7, 0x8A, 0x90, 0x3B, 0xDF, 0x3F, 0x24,\n0xDB, 0x3E, 0x06, 0x11, 0x12, 0x13, 0x2C, 0x21, 0xE2, 0xF2, 0x91, 0x59, 0xB8, 0x60, 0xC0, 0x48,\n0x78, 0xD4, 0xAB, 0x5A, 0xB5, 0x37, 0xCC, 0x3E, 0xE6, 0xB3, 0xB1, 0xE4, 0x12, 0x32, 0x8A, 0x21,\n0x1C, 0xF2, 0x08, 0x51, 0x92, 0xFE, 0xAE, 0x6E, 0x54, 0xDC, 0xA9, 0x37, 0x3A, 0x3E, 0xA4, 0xD1,\n0xD4, 0xF2, 0x8F, 0xFC, 0xE0, 0x4B, 0x06, 0xBF, 0xA5, 0x0B, 0x9F, 0x0F, 0x6D, 0xE6, 0x41, 0xC8,\n0x0E, 0x89, 0x0F, 0xC9, 0xF4, 0x10, 0xF1, 0x91, 0x88, 0x3C, 0xD8, 0x7C, 0xC8, 0x43, 0x0C, 0x42,\n0xBE, 0x4B, 0xFF, 0xC0, 0x43, 0x0A, 0x1C, 0x80, 0x06, 0xFF, 0x18, 0x42, 0xC8, 0x77, 0xC8, 0xF9,\n0xF0, 0x57, 0xC8, 0x9A, 0x5F, 0x05, 0x1E, 0xBA, 0xD6, 0x04, 0x21, 0x4E, 0xE6, 0x37, 0xA7, 0x9A,\n0x0B, 0x16, 0x17, 0xB0, 0x52, 0x38, 0xC8, 0x50, 0xFF, 0x18, 0x87, 0x20, 0xC4, 0xE0, 0x23, 0xB5,\n0xFF, 0x86, 0xC5, 0xC7, 0xC1, 0xBB, 0x2F, 0x7C, 0xF5, 0xD3, 0xC1, 0xE9, 0x4E, 0x0F, 0x39, 0x16,\n0x1E, 0xA9, 0xD1, 0xCE, 0x4F, 0x31, 0x59, 0xCE, 0xF8, 0xDC, 0x63, 0x08, 0xB1, 0xE4, 0xF0, 0x91,\n0x78, 0x68, 0xBB, 0x73, 0x9A, 0xF5, 0xCE, 0x17, 0xB2, 0x8F, 0x8C, 0x5D, 0x74, 0xC8, 0x3F, 0x00,\n0xE4, 0xCA, 0xE5, 0xC3, 0x34, 0x11, 0xD9, 0x87, 0x46, 0xBC, 0x30, 0xE9, 0xC6, 0x7F, 0x19, 0x35,\n0xFF, 0x48, 0x42, 0xBE, 0xDF, 0x49, 0xC8, 0x5D, 0xC7, 0x07, 0xB2, 0xFC, 0x03, 0x89, 0x80, 0x76,\n0x24, 0x1D, 0xDA, 0x7C, 0xB1, 0xCB, 0x3D, 0x16, 0xF0, 0x21, 0x42, 0x00, 0x21, 0xC4, 0xA4, 0x2B,\n0x33, 0x13, 0xA6, 0x57, 0x2E, 0x1F, 0x91, 0x7E, 0xA0, 0x48, 0xD5, 0x0D, 0x3E, 0x20, 0x64, 0x97,\n0x2D, 0x04, 0x16, 0x07, 0x3F, 0x7D, 0x15, 0x80, 0xFC, 0x14, 0x1E, 0xB2, 0x8B, 0x8F, 0xD5, 0x1B,\n0xE8, 0x68, 0xB5, 0xDC, 0xC5, 0xC7, 0x78, 0x43, 0x03, 0x09, 0xF1, 0xF8, 0xC0, 0x43, 0xDE, 0x69,\n0x02, 0x12, 0x67, 0x49, 0xE7, 0x33, 0xA2, 0xD3, 0xE2, 0x72, 0xE7, 0x35, 0xF2, 0x0A, 0x39, 0xA9,\n0xFA, 0x77, 0x9B, 0xDA, 0x39, 0x82, 0x7B, 0x3F, 0xC0, 0x43, 0x62, 0x65, 0x29, 0x89, 0x51, 0xFA,\n0x01, 0x21, 0x1F, 0x5A, 0x7C, 0x20, 0xCB, 0x3F, 0xD0, 0xEE, 0xE9, 0x95, 0xC0, 0x88, 0x48, 0x42,\n0x76, 0x20, 0x32, 0xCF, 0x93, 0x84, 0x87, 0x68, 0x15, 0x15, 0x82, 0x02, 0x07, 0xD1, 0xCE, 0x9F,\n0xE1, 0x03, 0xED, 0x22, 0x24, 0x46, 0x31, 0x52, 0xB7, 0xB0, 0xA5, 0xE3, 0xD3, 0x83, 0x9F, 0x02,\n0x90, 0xD7, 0x7E, 0xDA, 0x49, 0xC8, 0x71, 0xE0, 0xB6, 0xA1, 0xD5, 0xD4, 0xE1, 0x63, 0x96, 0xDB,\n0x3F, 0x43, 0xC8, 0x45, 0x0B, 0x8F, 0x0D, 0x40, 0x62, 0x6D, 0x17, 0xB3, 0xBE, 0x38, 0xE9, 0xAF,\n0x77, 0x8A, 0x6E, 0x96, 0xD5, 0xAA, 0x66, 0x85, 0x69, 0x94, 0x84, 0x3C, 0x18, 0x7C, 0x30, 0xCB,\n0x52, 0x99, 0x6A, 0x57, 0xFA, 0x81, 0xBE, 0x2F, 0x09, 0x89, 0x60, 0x49, 0xFF, 0x40, 0xDF, 0x7E,\n0x68, 0xCD, 0xAF, 0x90, 0xE7, 0x1F, 0x10, 0xE2, 0xCC, 0xAF, 0x92, 0x8F, 0xD0, 0xA2, 0x31, 0xCD,\n0x8A, 0x7F, 0x94, 0xE7, 0x88, 0xCD, 0x46, 0x0A, 0x72, 0xC8, 0x34, 0x2B, 0x11, 0x19, 0xCE, 0xC7,\n0x4C, 0x11, 0x8F, 0x10, 0x62, 0xF1, 0x21, 0x42, 0x4E, 0xDB, 0xFE, 0xD1, 0x91, 0x11, 0x0E, 0x72,\n0xF0, 0x53, 0x28, 0x70, 0xF1, 0xE6, 0x57, 0xD2, 0xD1, 0x7E, 0x8B, 0x0F, 0xF0, 0xC8, 0xCF, 0x3E,\n0x98, 0x90, 0x0B, 0x2B, 0xFD, 0xE0, 0x76, 0x85, 0x86, 0x87, 0x7C, 0xDE, 0x93, 0xA1, 0xB4, 0x72,\n0xBD, 0xB3, 0xAB, 0x7E, 0x55, 0xCA, 0xE2, 0x03, 0x44, 0x5A, 0x80, 0xE0, 0x06, 0x05, 0x21, 0x11,\n0x35, 0x44, 0xD2, 0x3F, 0xD0, 0xF7, 0x10, 0xD2, 0xF4, 0x0F, 0x64, 0xF1, 0x81, 0x6E, 0x5A, 0xC5,\n0xEF, 0xE0, 0x43, 0x68, 0x88, 0x90, 0x5D, 0xB3, 0xAC, 0x85, 0xF8, 0x28, 0xCF, 0x57, 0x8F, 0x44,\n0xEF, 0x19, 0xD4, 0x77, 0xFF, 0xAC, 0x7F, 0x30, 0xD8, 0x44, 0x88, 0xC1, 0x07, 0x1E, 0xD2, 0x70,\n0x05, 0x71, 0xA1, 0x29, 0x96, 0xF4, 0xEB, 0xB1, 0xC1, 0x07, 0xDA, 0x9F, 0x4C, 0x5B, 0x7C, 0x88,\n0x67, 0xB4, 0x8C, 0x72, 0xEF, 0x5F, 0x4F, 0xD5, 0xE1, 0xA3, 0x44, 0xE4, 0xFE, 0xF3, 0x45, 0x23,\n0xFF, 0xC0, 0x3F, 0x62, 0xC9, 0x59, 0xD6, 0xED, 0xB6, 0xEE, 0x60, 0x55, 0x06, 0x1F, 0x1E, 0x21,\n0x31, 0xBE, 0x4B, 0x3C, 0xE2, 0x96, 0xAC, 0x20, 0xA1, 0xC4, 0x23, 0x73, 0x11, 0xD8, 0xF0, 0x3C,\n0x44, 0xE9, 0x50, 0x29, 0x8F, 0x0F, 0xB4, 0x3D, 0x0F, 0xD1, 0x45, 0x46, 0x87, 0x32, 0x37, 0x99,\n0xAA, 0x6F, 0x39, 0xF6, 0x17, 0x52, 0x79, 0xB6, 0x64, 0x1D, 0x21, 0x10, 0x49, 0x66, 0x86, 0xB7,\n0x3F, 0x74, 0xED, 0x5D, 0x76, 0x11, 0x0F, 0xBB, 0x66, 0x59, 0x4F, 0x6F, 0x48, 0x1E, 0x21, 0xA7,\n0x1D, 0x1F, 0x38, 0x88, 0x76, 0x8F, 0x0D, 0x3E, 0xD0, 0xFE, 0x68, 0x3B, 0x1F, 0xC2, 0x23, 0x3E,\n0x76, 0xAC, 0x11, 0xDD, 0xD3, 0xE5, 0x63, 0x14, 0x1C, 0xFE, 0x16, 0x42, 0x38, 0xD2, 0x6C, 0x54,\n0xEE, 0xDD, 0x5A, 0xBE, 0xDA, 0x38, 0x9B, 0x3B, 0x52, 0xF5, 0x9B, 0xAB, 0xBA, 0x8C, 0xF4, 0x1C,\n0xA9, 0x65, 0x58, 0xE7, 0xE3, 0xDB, 0xCA, 0x88, 0x57, 0xB9, 0x37, 0x03, 0x44, 0x04, 0x4D, 0xDC,\n0x82, 0x85, 0x0C, 0x0F, 0xB9, 0xDE, 0xF2, 0x79, 0x1A, 0xED, 0x8F, 0x9A, 0xB6, 0xB5, 0x07, 0x55,\n0xDD, 0xE5, 0x70, 0xEE, 0x28, 0x66, 0x7D, 0x5E, 0xA3, 0xE3, 0x3E, 0x53, 0x75, 0x72, 0x0F, 0x18,\n0x19, 0xDA, 0xFE, 0xE0, 0x32, 0xBC, 0x3C, 0xCB, 0x01, 0xD7, 0xF0, 0x90, 0x68, 0x7F, 0xD4, 0x08,\n0x39, 0x6A, 0xFA, 0x07, 0x0E, 0x22, 0x42, 0x8E, 0xB7, 0xB4, 0x3F, 0x6A, 0x3A, 0xC2, 0x43, 0x8A,\n0xF6, 0x60, 0xD2, 0xD1, 0xED, 0xA1, 0xC7, 0xE5, 0x9F, 0xF0, 0x90, 0x0B, 0xC7, 0x3F, 0x12, 0x91,\n0xFA, 0x2C, 0x2B, 0x4F, 0x22, 0xF3, 0x2B, 0x85, 0x3C, 0xA4, 0x55, 0xDE, 0x45, 0x34, 0x44, 0x4C,\n0x3E, 0xA4, 0x6B, 0xC3, 0x3F, 0x90, 0x3C, 0x04, 0x13, 0x61, 0x03, 0x4D, 0xA5, 0xEB, 0x34, 0xDA,\n0x1F, 0x26, 0x21, 0xA4, 0xE7, 0xA8, 0xDD, 0x10, 0xC1, 0x84, 0xD7, 0x74, 0x70, 0x38, 0xEB, 0x0E,\n0xC2, 0xF9, 0x29, 0x37, 0x54, 0xB1, 0x78, 0x1C, 0xEE, 0x1F, 0xA1, 0xBC, 0x02, 0xCB, 0x3E, 0xDA,\n0xE5, 0xDE, 0x91, 0xF8, 0x30, 0x08, 0x21, 0x3D, 0x2F, 0x1D, 0x44, 0x84, 0x9C, 0x96, 0xB7, 0x97,\n0xD4, 0xF9, 0xA0, 0x21, 0x52, 0xF2, 0x91, 0x24, 0x4B, 0xDA, 0x99, 0x2D, 0xEF, 0x7B, 0x4B, 0x39,\n0xDB, 0x1B, 0x44, 0x88, 0x91, 0x9F, 0xB3, 0xA9, 0x37, 0xD5, 0xB9, 0xCC, 0x69, 0xC3, 0x6E, 0xBD,\n0x65, 0x78, 0xB5, 0x55, 0xB7, 0xA4, 0xEA, 0xCD, 0xE9, 0x55, 0xAB, 0x21, 0x72, 0x97, 0xF9, 0x79,\n0x55, 0xCF, 0x1C, 0xA4, 0xCE, 0x47, 0xAB, 0x21, 0xF2, 0x5D, 0x4B, 0x35, 0xFF, 0xB8, 0x19, 0x44,\n0x08, 0x44, 0x40, 0x4A, 0x48, 0x8F, 0x8D, 0xF6, 0x60, 0x75, 0x03, 0x1C, 0x74, 0x0B, 0x5B, 0x76,\n0x51, 0x6B, 0x7F, 0x30, 0x8F, 0x07, 0x15, 0x79, 0x08, 0x84, 0x34, 0xF8, 0x40, 0x10, 0x52, 0xF2,\n0x81, 0x83, 0x6C, 0xF7, 0x10, 0xCA, 0x57, 0x15, 0x0F, 0xE9, 0x09, 0x81, 0x0F, 0xB5, 0x3F, 0xB0,\n0x10, 0x3D, 0xEA, 0x25, 0x7D, 0xEE, 0xF1, 0x39, 0x84, 0x38, 0xAA, 0xF1, 0xB1, 0x1D, 0x90, 0xC7,\n0x20, 0xA4, 0xF0, 0xF8, 0x62, 0x2E, 0x10, 0xAB, 0x7C, 0x24, 0xF7, 0x4A, 0x13, 0x81, 0x8F, 0xBA,\n0x1E, 0x1C, 0x3E, 0x50, 0x85, 0x8F, 0xC6, 0x80, 0xFF, 0xF0, 0x79, 0x8A, 0x5E, 0x7D, 0x27, 0x0D,\n0x91, 0x7A, 0x7A, 0xEE, 0x13, 0x02, 0x1E, 0x35, 0xD5, 0xCA, 0x57, 0xBD, 0xC0, 0x64, 0x1D, 0xA1,\n0xE2, 0xC8, 0xAB, 0xBC, 0xDB, 0x00, 0x04, 0xE7, 0xC8, 0xAE, 0xE1, 0x9F, 0x6C, 0x0F, 0xA6, 0x7D,\n0x74, 0x01, 0x2A, 0x33, 0x08, 0xA1, 0xFD, 0x51, 0x17, 0x2D, 0xC3, 0xB2, 0xFD, 0x21, 0xE1, 0x20,\n0xBD, 0xD6, 0x4D, 0x75, 0xFC, 0x83, 0xF6, 0x47, 0xD3, 0x43, 0xE0, 0x83, 0x8F, 0x8D, 0x93, 0x08,\n0xEC, 0xBF, 0xA3, 0x65, 0xC8, 0x11, 0xAE, 0x6E, 0xCA, 0x86, 0x48, 0xE5, 0x5C, 0x26, 0x27, 0x8A,\n0xC5, 0xA5, 0x37, 0xBF, 0x62, 0x9A, 0xE5, 0xF0, 0x81, 0x85, 0x14, 0x1E, 0x72, 0x87, 0x7D, 0xD4,\n0x95, 0x6C, 0x30, 0xBF, 0x12, 0x37, 0x0D, 0xA4, 0x2C, 0x3E, 0x50, 0x99, 0x9E, 0x03, 0x88, 0x91,\n0xA9, 0x9F, 0x14, 0x73, 0x54, 0x32, 0x3B, 0x45, 0x99, 0xA9, 0x53, 0xDE, 0x6D, 0x78, 0x08, 0x0E,\n0x32, 0xB8, 0x3D, 0xC8, 0xF0, 0x82, 0x8A, 0x1E, 0x15, 0x5A, 0x86, 0x06, 0x1F, 0xB4, 0x0C, 0x6B,\n0xFE, 0x81, 0x83, 0x20, 0x1A, 0x22, 0xFA, 0xB5, 0x9F, 0x2D, 0x06, 0x42, 0xCB, 0x70, 0x32, 0x25,\n0x3D, 0xCF, 0x62, 0x5B, 0x42, 0x31, 0xEB, 0x70, 0xB9, 0x5F, 0xCE, 0x48, 0xD9, 0x87, 0x13, 0xE2,\n0xF9, 0x07, 0x1B, 0x4E, 0x11, 0xFE, 0x91, 0x8E, 0xA1, 0x15, 0x1F, 0x89, 0x55, 0x84, 0xA0, 0xAB,\n0xDD, 0x2A, 0xF9, 0xF0, 0x09, 0xF9, 0xEE, 0xC3, 0x36, 0x1F, 0xDF, 0xD3, 0x10, 0xA1, 0x7C, 0xD5,\n0x16, 0x1E, 0xC2, 0xFC, 0xAA, 0x29, 0x27, 0x3D, 0x47, 0x1B, 0xF7, 0xBF, 0xE7, 0xDD, 0x57, 0x44,\n0x39, 0xC7, 0x52, 0xCB, 0x70, 0xA3, 0x7D, 0xBE, 0x0B, 0x91, 0x74, 0x8E, 0x3F, 0xDF, 0xFE, 0x08,\n0x69, 0x7C, 0xE1, 0x20, 0xC0, 0x32, 0x83, 0x10, 0xCA, 0xBB, 0x15, 0xD1, 0x10, 0xF9, 0x95, 0x61,\n0x8F, 0x7F, 0xE0, 0x20, 0x15, 0x42, 0x28, 0x5F, 0x35, 0xB5, 0xEA, 0xF1, 0xF8, 0xBD, 0xBC, 0xDB,\n0xCF, 0x04, 0x11, 0xA8, 0x0F, 0x26, 0xC4, 0x48, 0xCF, 0xD9, 0xA4, 0x87, 0x48, 0x9F, 0x2F, 0x4E,\n0x0A, 0xFF, 0x10, 0x15, 0xDA, 0x03, 0x9B, 0x13, 0x3A, 0x86, 0x57, 0x8E, 0x6C, 0x3E, 0xCA, 0x9B,\n0x7B, 0xA3, 0x38, 0x5B, 0x35, 0x84, 0x4A, 0x53, 0x5D, 0xDB, 0x9F, 0x05, 0x4D, 0x43, 0x34, 0xD5,\n0xE1, 0xC3, 0x27, 0xE4, 0xCA, 0x52, 0x5E, 0x3F, 0xE4, 0x1F, 0xE0, 0x50, 0xF3, 0xE5, 0xCC, 0x43,\n0xB8, 0xFD, 0xAA, 0x4D, 0x87, 0x56, 0x12, 0x90, 0xE1, 0xFE, 0x31, 0xD3, 0x28, 0xD3, 0x84, 0x45,\n0x68, 0x74, 0x4F, 0x15, 0x4A, 0x79, 0x29, 0xF7, 0x7A, 0x7C, 0xD0, 0x54, 0x97, 0x7F, 0xC0, 0x42,\n0xE9, 0x20, 0x34, 0x44, 0x3C, 0x3E, 0xA4, 0x27, 0xCA, 0xBB, 0xD2, 0xDA, 0xE2, 0xFA, 0x1A, 0xAF,\n0xF8, 0x4E, 0xD2, 0x45, 0xCF, 0x9F, 0x6E, 0xAA, 0x5F, 0xCC, 0x77, 0xDA, 0x76, 0x36, 0xD5, 0x75,\n0xA2, 0xBE, 0xC0, 0x3F, 0x78, 0xE0, 0xA5, 0xBE, 0x98, 0xC5, 0xED, 0x57, 0x8E, 0xC8, 0xD4, 0xAD,\n0x01, 0x29, 0x0F, 0x31, 0xFC, 0x03, 0x0F, 0xE9, 0xF3, 0x8F, 0xF6, 0xBB, 0x69, 0x88, 0xC0, 0x87,\n0x25, 0xF8, 0xB0, 0x74, 0xB3, 0x71, 0xF7, 0x2E, 0x51, 0x96, 0xCC, 0x7B, 0x78, 0x7A, 0x0B, 0xE1,\n0xEB, 0xB4, 0xED, 0x4D, 0x22, 0xF2, 0x27, 0xCB, 0x57, 0x6B, 0xB3, 0x58, 0x8E, 0xFB, 0x21, 0x56,\n0x74, 0x0D, 0x45, 0x88, 0xC3, 0x07, 0x0D, 0x11, 0xDA, 0x1F, 0x75, 0x07, 0x21, 0x55, 0x87, 0x0F,\n0x8B, 0x90, 0x69, 0xC7, 0x07, 0xF3, 0x28, 0x6D, 0x4B, 0xCD, 0xC8, 0x43, 0x06, 0x36, 0x44, 0xF0,\n0x0F, 0x6B, 0x23, 0x0F, 0x51, 0xF9, 0x0A, 0xE3, 0xA0, 0xF2, 0x52, 0xF1, 0x10, 0xEE, 0xBE, 0xF2,\n0x3C, 0xE4, 0xC1, 0xE5, 0x83, 0x4C, 0x1D, 0x33, 0xD8, 0x45, 0x89, 0xF0, 0xE0, 0xF6, 0xAB, 0xA6,\n0x68, 0x88, 0x84, 0x59, 0x79, 0x2A, 0xE6, 0x57, 0xE6, 0x2C, 0x8B, 0x8B, 0x4C, 0x85, 0x12, 0x5E,\n0xEE, 0x6F, 0xCC, 0xBA, 0x37, 0xF0, 0xE0, 0x1B, 0x22, 0x83, 0xBF, 0xFD, 0xD1, 0x8F, 0xA5, 0x9C,\n0x5B, 0x31, 0xBC, 0xE8, 0xBA, 0xC5, 0x56, 0x1E, 0x42, 0x7B, 0xD0, 0x25, 0x04, 0x3E, 0xEA, 0x0E,\n0x02, 0x21, 0x47, 0x1E, 0x1F, 0x6A, 0x88, 0x4C, 0xF5, 0xED, 0x8F, 0x9C, 0x56, 0xF5, 0x80, 0x2B,\n0x64, 0x1D, 0x5A, 0x3B, 0xDD, 0xCB, 0x1B, 0x1F, 0x07, 0x37, 0x44, 0x28, 0xEF, 0x3A, 0x26, 0xD2,\n0xF9, 0x47, 0x6F, 0x11, 0x50, 0x01, 0x1D, 0x9C, 0x6A, 0xA5, 0xEA, 0xDC, 0x5E, 0xE2, 0x09, 0xFF,\n0xB0, 0x74, 0x47, 0x79, 0xD7, 0x22, 0x24, 0xD3, 0x73, 0x47, 0xA2, 0x88, 0xF6, 0x87, 0xA5, 0x07,\n0xDB, 0x3F, 0x48, 0xD5, 0xBF, 0xF8, 0xDD, 0x3F, 0x50, 0xA5, 0xF2, 0xA1, 0xD4, 0x2E, 0xBF, 0x3D,\n0x68, 0x5E, 0xCF, 0x06, 0xF3, 0x11, 0x23, 0x67, 0x5C, 0x4A, 0xA3, 0x0B, 0x25, 0x34, 0xD9, 0x32,\n0xA4, 0x3D, 0xE8, 0x10, 0x82, 0x7F, 0xD4, 0x1D, 0x84, 0x57, 0xE1, 0xC3, 0xD2, 0x68, 0xCD, 0x84,\n0x30, 0xAE, 0x39, 0xC8, 0x8C, 0xD7, 0xF8, 0x96, 0xE1, 0x00, 0x42, 0x22, 0xB9, 0xB8, 0xF0, 0x3D,\n0x24, 0xA6, 0x57, 0x25, 0x0C, 0xD4, 0xEE, 0x2B, 0xE8, 0x30, 0xBD, 0xF2, 0xC4, 0x70, 0xB3, 0x12,\n0x91, 0xB7, 0x31, 0x03, 0x8F, 0x10, 0xDE, 0xEE, 0xCC, 0xB2, 0xEE, 0x3E, 0xFD, 0x6E, 0x90, 0x28,\n0x5F, 0x59, 0xE2, 0xEE, 0x2B, 0x70, 0xC0, 0x80, 0x73, 0x97, 0x17, 0x17, 0x73, 0x9B, 0x0E, 0xAD,\n0x43, 0xF3, 0x8F, 0x19, 0x77, 0x97, 0x44, 0x50, 0x2E, 0x25, 0x72, 0xC0, 0xDD, 0x0B, 0x96, 0xD1,\n0x1B, 0xBE, 0x62, 0xC4, 0xC3, 0x47, 0xDD, 0x41, 0xD0, 0x4B, 0x16, 0x1F, 0xD4, 0xB2, 0x36, 0x79,\n0x16, 0x24, 0x84, 0x00, 0x07, 0x13, 0xFD, 0x09, 0x07, 0x89, 0x9C, 0xCF, 0xD9, 0x3C, 0xCE, 0x7B,\n0x1A, 0x54, 0xAB, 0x4A, 0x0C, 0xE0, 0xA4, 0xCF, 0xD5, 0x73, 0x77, 0xF1, 0x4F, 0x03, 0x42, 0x7D,\n0xD7, 0x24, 0x64, 0xC0, 0x7B, 0xBB, 0x7E, 0x08, 0xF3, 0x2B, 0x4B, 0x18, 0x88, 0x07, 0x48, 0xA5,\n0x40, 0x1E, 0x87, 0x0D, 0x53, 0x2E, 0x3C, 0xE4, 0x42, 0xB2, 0x11, 0x39, 0x1B, 0xA6, 0x71, 0x6D,\n0xEE, 0x3E, 0x5B, 0x96, 0x8E, 0xD2, 0x4F, 0xC1, 0xC6, 0xAB, 0xA3, 0x21, 0x84, 0xAC, 0xE2, 0xF6,\n0x5D, 0xCB, 0x41, 0xE2, 0x27, 0x7B, 0x07, 0x11, 0xF2, 0xA4, 0x1B, 0xDC, 0x67, 0x9A, 0x43, 0x65,\n0x81, 0x61, 0x23, 0xF7, 0xE8, 0x1B, 0xEA, 0x9D, 0x3A, 0x5C, 0x1E, 0x0F, 0x07, 0x11, 0x32, 0x9F,\n0xFB, 0x84, 0x64, 0xAD, 0x97, 0x49, 0x14, 0x9D, 0xC1, 0x8D, 0x73, 0x4A, 0x5C, 0x92, 0xA1, 0x7B,\n0x62, 0x86, 0x65, 0xE6, 0xE9, 0x31, 0xC5, 0xF2, 0x93, 0x90, 0x90, 0x05, 0x14, 0x1D, 0x75, 0x08,\n0xF9, 0x47, 0xA6, 0x58, 0x1B, 0xD3, 0xA9, 0x10, 0xDD, 0x73, 0x2E, 0x43, 0x1C, 0xEE, 0x7B, 0x2F,\n0x03, 0xA1, 0x73, 0x35, 0x68, 0xB6, 0x3D, 0x7E, 0x7C, 0xC4, 0x2E, 0x62, 0xB8, 0xF5, 0xA3, 0xAA,\n0x7F, 0xA6, 0x75, 0xCC, 0x05, 0x79, 0x34, 0x72, 0x32, 0x74, 0x6A, 0xBD, 0x07, 0x6D, 0x07, 0x81,\n0x8F, 0x5F, 0x3B, 0x42, 0xEC, 0xFF, 0xF6, 0xAA, 0xFB, 0xB5, 0xA1, 0xBE, 0x61, 0xBE, 0xCC, 0xE6,\n0x39, 0xB5, 0xDE, 0x6E, 0x5F, 0xAF, 0xF5, 0xF5, 0x86, 0xEE, 0x27, 0x7B, 0x06, 0x10, 0x32, 0xEF,\n0xE4, 0x1D, 0x76, 0x6D, 0x23, 0x4B, 0x54, 0x92, 0x0E, 0x14, 0x5A, 0xCA, 0xDE, 0x6F, 0xBF, 0x0D,\n0x3E, 0x4C, 0x0F, 0xA1, 0x9F, 0xFE, 0x60, 0x8F, 0xC7, 0xC0, 0xE3, 0x8E, 0x1E, 0xBA, 0xE3, 0x1F,\n0x10, 0x62, 0xF2, 0xF1, 0xF6, 0xDD, 0xFB, 0x0F, 0x3E, 0x1F, 0xC3, 0x00, 0x39, 0xE9, 0x2E, 0x1F,\n0xFD, 0xC1, 0xA2, 0x55, 0xA8, 0x28, 0x77, 0x94, 0x82, 0xCC, 0xE3, 0xE8, 0xFB, 0x66, 0xAF, 0x53,\n0x3B, 0x80, 0x8F, 0xC3, 0xC3, 0x20, 0xA4, 0x14, 0x4D, 0x90, 0xCE, 0x4B, 0x98, 0xC6, 0x9C, 0x05,\n0x1F, 0x0E, 0x21, 0xF4, 0xD3, 0x0F, 0x0E, 0x62, 0xD9, 0xED, 0x20, 0x07, 0xBF, 0xC6, 0xDB, 0x02,\n0x92, 0xF8, 0x3D, 0x77, 0xCF, 0x98, 0x46, 0x92, 0x20, 0x50, 0x92, 0x8E, 0x12, 0x75, 0x3A, 0xEA,\n0xBA, 0x6D, 0xB1, 0x23, 0xC4, 0xF7, 0x90, 0xF9, 0x5A, 0x2E, 0x1F, 0xEA, 0x15, 0xCE, 0x83, 0x10,\n0xCE, 0x5E, 0x79, 0x07, 0x2A, 0xE5, 0xAD, 0x88, 0x93, 0x10, 0x84, 0xD8, 0x8D, 0x10, 0x9B, 0x0F,\n0x85, 0xEB, 0x21, 0xDF, 0xF7, 0xFA, 0xD6, 0x4F, 0xD1, 0x15, 0x0F, 0x43, 0xCB, 0xBC, 0x3E, 0x1F,\n0x21, 0xAE, 0x2F, 0xB5, 0x6C, 0x9D, 0x63, 0x1A, 0x07, 0x9E, 0x2E, 0xBA, 0xB1, 0x99, 0x4B, 0x36,\n0x21, 0x71, 0x5D, 0xED, 0x34, 0xD3, 0xA5, 0xB7, 0x9F, 0xBD, 0xF7, 0x95, 0xA1, 0x19, 0x85, 0x2C,\n0xBD, 0x24, 0xFF, 0xF0, 0x09, 0xD9, 0x17, 0x1F, 0xB2, 0x86, 0x86, 0x83, 0xE0, 0x1F, 0xB1, 0x9A,\n0x84, 0xF0, 0x57, 0xA5, 0xE7, 0xDD, 0xC7, 0x1B, 0x09, 0x13, 0xBA, 0xCF, 0x52, 0xDC, 0xEC, 0xB0,\n0xF3, 0x8F, 0x20, 0xE4, 0xD1, 0xE7, 0x03, 0x0F, 0xD9, 0xC9, 0x47, 0xA0, 0xA1, 0x98, 0xA7, 0x87,\n0xB0, 0x64, 0xD2, 0x51, 0x5C, 0xF8, 0x4E, 0x52, 0x97, 0x37, 0x3E, 0x1F, 0x92, 0x3B, 0xBD, 0x82,\n0x10, 0x43, 0xDF, 0x23, 0x8B, 0x8F, 0xFE, 0xBF, 0x2E, 0x42, 0x4C, 0xFF, 0xF0, 0x09, 0xB9, 0x49,\n0x3E, 0x98, 0x66, 0x41, 0x05, 0xC1, 0xCE, 0xE7, 0xF7, 0xEF, 0xCC, 0xB3, 0xCE, 0x6B, 0xF3, 0x21,\n0x0D, 0xE0, 0x23, 0x2E, 0xAF, 0x87, 0x79, 0xA3, 0x06, 0xD7, 0xE0, 0x32, 0x0B, 0x11, 0x3F, 0xC1,\n0x87, 0x41, 0x08, 0xF7, 0xF4, 0x76, 0xB3, 0xA6, 0x08, 0x08, 0xA9, 0x38, 0x08, 0x7C, 0x04, 0x4D,\n0xA1, 0xA3, 0x24, 0xA4, 0x79, 0xBF, 0x62, 0xAF, 0xD5, 0xD3, 0x54, 0x00, 0x3F, 0xF3, 0xBF, 0x9C,\n0x73, 0xA5, 0x09, 0x76, 0x74, 0x48, 0x1E, 0x21, 0x73, 0x74, 0x61, 0xCD, 0xAF, 0xE2, 0x32, 0x16,\n0xA7, 0xA9, 0x9B, 0x65, 0x7D, 0x51, 0x12, 0x92, 0xC1, 0x0C, 0x6B, 0xC1, 0x7D, 0x26, 0xD1, 0x0F,\n0xB1, 0xF8, 0x40, 0x1E, 0x1F, 0xEF, 0xF7, 0x01, 0x21, 0x06, 0x1E, 0x0E, 0x21, 0xF1, 0x8E, 0xA4,\n0x43, 0x18, 0x92, 0x88, 0x58, 0x37, 0x63, 0x39, 0x7C, 0x5C, 0x72, 0x78, 0x28, 0x74, 0xE4, 0x45,\n0x86, 0x60, 0xFA, 0x35, 0xCF, 0x4B, 0x93, 0x3A, 0xE9, 0x06, 0x1F, 0xC8, 0xE7, 0x43, 0xDB, 0xBE,\n0x58, 0xAA, 0x60, 0x9E, 0xA5, 0xE8, 0x76, 0xEF, 0xD5, 0x04, 0x41, 0xFB, 0x06, 0x1F, 0x07, 0x52,\n0x47, 0xC8, 0xAF, 0x1B, 0x3C, 0xE4, 0x77, 0xD2, 0xE1, 0xE3, 0xB4, 0x23, 0x29, 0x16, 0x31, 0x72,\n0x2C, 0x42, 0x9A, 0x7C, 0xF0, 0x41, 0x22, 0x11, 0x19, 0xCF, 0x60, 0x22, 0xFD, 0xEE, 0x8F, 0xC9,\n0x7A, 0x44, 0xF0, 0x91, 0x11, 0x26, 0xE2, 0xF0, 0x81, 0xF6, 0xE6, 0x3B, 0xF9, 0xD0, 0xC9, 0xE9,\n0xDB, 0xB9, 0xEF, 0x54, 0x72, 0x10, 0xCE, 0x73, 0xCF, 0x07, 0x84, 0x9C, 0x18, 0x7C, 0x78, 0x84,\n0x70, 0xC3, 0xFB, 0x1D, 0x61, 0xDC, 0x3A, 0x82, 0xBA, 0x54, 0x64, 0x87, 0x7B, 0x7C, 0x1B, 0x7C,\n0x10, 0x10, 0xD2, 0xE4, 0x03, 0x39, 0x7C, 0x88, 0x90, 0x54, 0x59, 0xE1, 0x2D, 0xF3, 0xF5, 0x45,\n0x77, 0xC4, 0xB9, 0x61, 0x71, 0xF7, 0xA9, 0xDA, 0x90, 0xC5, 0x87, 0x2E, 0xAD, 0xDA, 0x6C, 0xCC,\n0xE4, 0xAB, 0x7D, 0xE9, 0xE5, 0x6A, 0x64, 0x10, 0x42, 0x0B, 0x44, 0x6C, 0x28, 0x20, 0xA4, 0x7E,\n0x37, 0x6F, 0x70, 0xA1, 0xC5, 0x21, 0xE4, 0x68, 0x5F, 0x7C, 0xE0, 0x21, 0xBA, 0x5D, 0x11, 0xC1,\n0x76, 0x96, 0xA5, 0xC7, 0x9A, 0x5D, 0x75, 0xEE, 0xB1, 0xDE, 0x71, 0xF1, 0x80, 0x90, 0xF6, 0xAD,\n0x8A, 0x9D, 0x7D, 0xC4, 0x22, 0x0F, 0x09, 0xC3, 0xDF, 0x74, 0x90, 0x62, 0x72, 0xA5, 0x5F, 0x7B,\n0x47, 0x86, 0x87, 0x5C, 0x17, 0x6A, 0xF3, 0x91, 0xFE, 0x41, 0xEC, 0x20, 0x24, 0xA0, 0x28, 0x10,\n0x69, 0xF7, 0x3F, 0x3E, 0x84, 0x0D, 0x05, 0x84, 0x34, 0xF8, 0xF0, 0x09, 0x39, 0x11, 0x1F, 0x68,\n0x03, 0x88, 0x8A, 0x83, 0x74, 0x9E, 0x1D, 0xD1, 0x49, 0x88, 0xB4, 0xCF, 0x14, 0x7C, 0x98, 0x84,\n0x74, 0xE9, 0xB9, 0x06, 0x8D, 0xE2, 0x30, 0xF2, 0xDA, 0x4C, 0x39, 0x36, 0xCD, 0x24, 0xF3, 0x12,\n0xFD, 0x5D, 0x53, 0x2E, 0x21, 0xF0, 0x01, 0x21, 0xB5, 0x1C, 0x04, 0x3E, 0x3C, 0x42, 0xE0, 0xA3,\n0xF4, 0x90, 0x19, 0xF7, 0x58, 0x62, 0x21, 0x2A, 0x4B, 0x8B, 0x8A, 0xB1, 0x22, 0xF7, 0x2D, 0x3E,\n0x50, 0xBB, 0x85, 0x2E, 0xFB, 0x60, 0xA3, 0x62, 0x16, 0x88, 0x64, 0x70, 0x01, 0x3C, 0x91, 0x4C,\n0x0F, 0x81, 0x0F, 0xD4, 0x6E, 0x7F, 0x68, 0x04, 0xDB, 0x84, 0x40, 0x06, 0x6A, 0xBD, 0x7B, 0xC3,\n0x3D, 0xB4, 0x40, 0x48, 0x8B, 0x0F, 0xB4, 0x8B, 0x0F, 0x84, 0x87, 0x54, 0x42, 0x4B, 0xDC, 0xBF,\n0x0B, 0x1C, 0xEF, 0x28, 0x15, 0xB9, 0xB7, 0xFC, 0x03, 0xED, 0x2E, 0x5F, 0x69, 0x86, 0xA5, 0x78,\n0x3C, 0xE4, 0x4A, 0x8C, 0x99, 0x20, 0xF8, 0x30, 0x08, 0xD9, 0x7F, 0x5A, 0xF3, 0x71, 0x70, 0x9A,\n0xCB, 0x4B, 0xBF, 0x96, 0xDF, 0x07, 0x81, 0x8F, 0x98, 0x60, 0x9D, 0xC6, 0x9B, 0xF3, 0xBD, 0x22,\n0x64, 0x5B, 0x43, 0xE4, 0x28, 0xDA, 0x1F, 0xCF, 0x14, 0x1E, 0x82, 0x70, 0xC0, 0x75, 0xB1, 0xE1,\n0x30, 0xFE, 0x7C, 0xE2, 0x22, 0x63, 0x4C, 0x31, 0xAB, 0xC1, 0x87, 0xE5, 0x21, 0xE2, 0x43, 0xE7,\n0xA7, 0x3F, 0x49, 0xCC, 0xB2, 0xBE, 0x00, 0x12, 0x9E, 0x65, 0xF9, 0xCA, 0x26, 0xE4, 0x16, 0x3E,\n0x0C, 0x42, 0x62, 0xA4, 0xF6, 0x43, 0x97, 0xD0, 0x3D, 0x27, 0x0E, 0x1F, 0xA8, 0x55, 0xDE, 0x2D,\n0x02, 0x0F, 0xB1, 0xF8, 0x90, 0x1C, 0x3E, 0x50, 0xD1, 0x12, 0xC4, 0x4F, 0x54, 0xBF, 0xC2, 0xBB,\n0xFB, 0xFD, 0xD6, 0x4D, 0xD7, 0x35, 0x6D, 0xEF, 0xA9, 0xEB, 0x52, 0xAA, 0x95, 0x38, 0x3C, 0xC3,\n0x37, 0x70, 0x0F, 0xD5, 0xB7, 0xF4, 0x77, 0xE9, 0x38, 0x84, 0xD0, 0xFE, 0x10, 0x17, 0xE4, 0x16,\n0x49, 0x08, 0x0E, 0x42, 0xFE, 0x21, 0x96, 0xC4, 0x86, 0x1E, 0x7F, 0xA5, 0x65, 0x58, 0x6B, 0x7F,\n0x54, 0x08, 0x19, 0x6D, 0xDC, 0x38, 0x06, 0xE8, 0x51, 0xC6, 0x7A, 0xC4, 0x26, 0x0D, 0x0F, 0x99,\n0xD7, 0xB5, 0xA3, 0xBC, 0xAB, 0x93, 0x33, 0xEF, 0x37, 0xF2, 0x90, 0xD0, 0xF3, 0xBA, 0x3D, 0xF5,\n0xAB, 0x2A, 0x21, 0xEE, 0x4F, 0x63, 0xB5, 0xFC, 0x03, 0x3C, 0x88, 0x00, 0xC1, 0xE0, 0x03, 0x99,\n0x7C, 0xF4, 0x3B, 0x42, 0xD3, 0xE2, 0x43, 0xF2, 0xF8, 0x40, 0x97, 0x12, 0x39, 0x3A, 0x37, 0xBA,\n0xDF, 0x73, 0xCC, 0x71, 0xF1, 0x7B, 0xCB, 0x3F, 0x50, 0xD3, 0x3F, 0x72, 0xB8, 0x64, 0x74, 0xFB,\n0xD4, 0xAC, 0x36, 0x1A, 0x0B, 0xBF, 0x97, 0x77, 0x37, 0x96, 0x58, 0xB7, 0x7E, 0x59, 0xEA, 0xA0,\n0x1F, 0xEE, 0x0A, 0x21, 0x02, 0x21, 0x38, 0x88, 0xDE, 0x15, 0x6B, 0xA2, 0xA4, 0xF7, 0xD2, 0x10,\n0xA9, 0xF1, 0x31, 0x29, 0x3E, 0x49, 0x3E, 0x8D, 0xE9, 0x15, 0xA2, 0x8B, 0x2E, 0xF7, 0xE0, 0x8F,\n0x89, 0x87, 0xB8, 0x7C, 0x40, 0x48, 0x9D, 0x8F, 0x08, 0xAE, 0x60, 0xF3, 0xF5, 0xD3, 0xF9, 0xBD,\n0x5A, 0x5B, 0x5C, 0xEA, 0xB4, 0xB3, 0xC0, 0x3F, 0x5C, 0x42, 0x06, 0xFD, 0xEA, 0x4F, 0xF0, 0x91,\n0x83, 0xB6, 0x42, 0x48, 0xA3, 0x3D, 0x58, 0x93, 0xC9, 0x87, 0x1E, 0x3F, 0xA4, 0xA9, 0xDE, 0xE4,\n0x03, 0x59, 0x7C, 0x20, 0xDC, 0x18, 0x3A, 0xC4, 0x47, 0x1E, 0x73, 0x4E, 0x82, 0x76, 0x2B, 0xDD,\n0x5D, 0xCA, 0x57, 0x36, 0x21, 0xBA, 0xB0, 0xC6, 0xA6, 0x9C, 0x9D, 0xAB, 0x98, 0xF5, 0xBB, 0x83,\n0xF4, 0x4F, 0xC4, 0xC7, 0x34, 0x86, 0xE3, 0xE4, 0xF7, 0x65, 0x14, 0x5B, 0x08, 0x29, 0xF9, 0xC8,\n0x64, 0xA2, 0x37, 0x05, 0x0D, 0x7C, 0x5A, 0x86, 0x38, 0x48, 0xEF, 0x2F, 0x30, 0xB2, 0xDE, 0x09,\n0x0F, 0xE1, 0x77, 0xAB, 0xD1, 0xFE, 0x68, 0x9A, 0x74, 0x84, 0xA6, 0x5A, 0xD4, 0x50, 0x1F, 0xA9,\n0xA9, 0x8E, 0x8B, 0x40, 0xCA, 0xE3, 0x63, 0x4F, 0x05, 0x01, 0x21, 0x1E, 0x1F, 0x52, 0xBD, 0x7C,\n0xF5, 0x85, 0x66, 0x58, 0x0A, 0x26, 0x59, 0x3A, 0x6B, 0x38, 0x08, 0x3B, 0x27, 0xA8, 0x44, 0xC4,\n0xF2, 0x0F, 0xF4, 0x50, 0xFD, 0x2A, 0xE1, 0x87, 0x0C, 0x5C, 0xC3, 0x43, 0xC0, 0xC1, 0x21, 0x44,\n0xE5, 0xDD, 0x32, 0x68, 0x88, 0x38, 0x3F, 0x69, 0x82, 0x2C, 0x3E, 0x10, 0x3F, 0xFC, 0x93, 0x92,\n0x7F, 0xCC, 0x39, 0xE6, 0x89, 0x46, 0x22, 0xD2, 0x28, 0xEF, 0x5A, 0x84, 0x50, 0xDE, 0x3D, 0x4C,\n0x2C, 0x18, 0x39, 0xF1, 0x6A, 0x25, 0x07, 0x39, 0x4B, 0xFF, 0x60, 0x76, 0x33, 0x5D, 0x8D, 0x56,\n0x42, 0x04, 0x42, 0x8A, 0xF6, 0x20, 0xC3, 0x3E, 0x77, 0xFA, 0x3D, 0x1C, 0x44, 0xED, 0x73, 0xBD,\n0x47, 0xAB, 0x96, 0x84, 0x4A, 0x1E, 0xC2, 0xBD, 0xBD, 0xB4, 0xCF, 0xC5, 0xC2, 0x34, 0xFF, 0xD7,\n0xC2, 0x43, 0xBC, 0x86, 0x44, 0x48, 0x91, 0x83, 0xE0, 0x1F, 0x38, 0x08, 0x2D, 0x43, 0x87, 0x0F,\n0x54, 0x1E, 0x71, 0xD5, 0xAF, 0x74, 0x8A, 0x58, 0xD3, 0x4C, 0xE2, 0x01, 0x42, 0xF2, 0xC6, 0xA1,\n0x05, 0xE9, 0xB9, 0x4B, 0x88, 0xF7, 0xCB, 0xD5, 0xB4, 0xCF, 0x6B, 0x68, 0xD0, 0x10, 0x71, 0xF0,\n0x40, 0xDF, 0xB6, 0xFD, 0x83, 0xA0, 0xDC, 0xFB, 0x97, 0x7E, 0x7A, 0xF4, 0xA6, 0x7D, 0x74, 0x9E,\n0xDD, 0xE8, 0x2E, 0x26, 0xFA, 0x14, 0x1D, 0x0F, 0xD7, 0xB3, 0x4A, 0x43, 0x04, 0x3E, 0x6A, 0xAA,\n0xF3, 0x21, 0x30, 0xF0, 0x11, 0xAE, 0xB3, 0xEB, 0xFB, 0x97, 0x96, 0xB1, 0xE9, 0x97, 0xA5, 0x46,\n0x65, 0xAC, 0x11, 0x13, 0xC5, 0x28, 0xA4, 0x6D, 0x85, 0x90, 0x68, 0x0F, 0xA6, 0x11, 0x64, 0x5E,\n0xC1, 0x24, 0x4B, 0x84, 0xA4, 0x83, 0xC0, 0x47, 0xDA, 0x48, 0x06, 0x50, 0xFD, 0x5A, 0xA4, 0xEA,\n0xF9, 0x57, 0xA5, 0x4F, 0x62, 0x15, 0x16, 0x01, 0x47, 0x52, 0x3B, 0x5D, 0xC3, 0xA2, 0x0F, 0x4B,\n0x15, 0x4B, 0xC0, 0xF3, 0x27, 0x23, 0xF2, 0x1F, 0x58, 0x7C, 0xA0, 0xD2, 0xBA, 0xD3, 0xDB, 0xC1,\n0x83, 0x76, 0xC8, 0x7C, 0x5D, 0xEE, 0x65, 0xF2, 0x2C, 0xFF, 0x68, 0xEA, 0xB2, 0x92, 0x9E, 0x37,\n0xF5, 0xAC, 0xBC, 0x4B, 0x07, 0xAF, 0x16, 0x41, 0x84, 0x03, 0x08, 0xB2, 0xFC, 0x03, 0x42, 0x1E,\n0x1C, 0x3E, 0x50, 0xAD, 0x7D, 0x5E, 0x17, 0x2D, 0xC3, 0x0C, 0xDA, 0x1F, 0x22, 0xA3, 0xEA, 0xE1,\n0x17, 0x8E, 0x7F, 0xA0, 0x7A, 0xFB, 0x23, 0xE2, 0xF9, 0xB8, 0xD1, 0x2B, 0x38, 0x08, 0xED, 0x0F,\n0x0D, 0x45, 0x3C, 0x44, 0x90, 0xE8, 0x02, 0x5E, 0xA6, 0xEA, 0x5D, 0x7B, 0x90, 0x61, 0x0F, 0x1C,\n0xA7, 0xE9, 0x21, 0x51, 0xEE, 0x95, 0x83, 0xA8, 0x7D, 0xDE, 0xBF, 0x43, 0x1B, 0x16, 0xF1, 0x41,\n0x31, 0x0B, 0x3E, 0xE4, 0x1E, 0x89, 0x85, 0x94, 0xD8, 0x0A, 0xD7, 0x68, 0xAA, 0xA7, 0xB2, 0x80,\n0xB5, 0xC5, 0x40, 0x68, 0x88, 0x78, 0x7C, 0xD4, 0xBB, 0xEA, 0x3A, 0x11, 0x85, 0x83, 0x6C, 0xBC,\n0xF6, 0x39, 0xE5, 0x97, 0x88, 0x5D, 0x7C, 0x70, 0xDB, 0x09, 0xF3, 0xAB, 0xB6, 0xEA, 0xED, 0xF3,\n0x6D, 0x88, 0x04, 0x21, 0x26, 0x1E, 0x34, 0x44, 0xC0, 0x43, 0xFE, 0xD1, 0x0A, 0x3C, 0x04, 0x3E,\n0x9A, 0xB2, 0xFC, 0x03, 0x6D, 0xD6, 0xB0, 0xF2, 0x42, 0x94, 0xCE, 0x51, 0x78, 0x78, 0xE9, 0x21,\n0xB1, 0xEC, 0xCD, 0x4D, 0x42, 0xE0, 0x23, 0x2B, 0xBB, 0xB5, 0x71, 0xA3, 0x5A, 0x96, 0x5A, 0x22,\n0x9A, 0xD1, 0x8F, 0xA7, 0x4F, 0x1A, 0x88, 0x72, 0x8F, 0x7E, 0xBB, 0x1C, 0xF5, 0x78, 0x94, 0xC5,\n0x2C, 0xB5, 0x3F, 0x34, 0xEC, 0x15, 0x9B, 0xA5, 0xDE, 0xBE, 0xA9, 0x2E, 0x07, 0xE9, 0xF6, 0x48,\n0x3B, 0xE2, 0x91, 0x05, 0x0F, 0x59, 0xED, 0xC3, 0x47, 0x8F, 0xE6, 0xEF, 0x1F, 0x66, 0x2A, 0x32,\n0x22, 0xD2, 0xCD, 0x36, 0x7E, 0xE1, 0x44, 0xB0, 0x57, 0xCD, 0x83, 0x44, 0x64, 0x18, 0x1F, 0x10,\n0x92, 0xE9, 0x39, 0x0E, 0x42, 0x29, 0x0B, 0x1F, 0xC9, 0x96, 0xA1, 0xD6, 0xF6, 0x00, 0x20, 0x55,\n0x87, 0x0F, 0x43, 0x45, 0x7B, 0xB0, 0x1D, 0x6A, 0xAA, 0x1B, 0xE9, 0x79, 0xBD, 0xA9, 0xBE, 0x0B,\n0x8F, 0x62, 0x96, 0x75, 0x6D, 0xA8, 0x68, 0x0F, 0x1A, 0x84, 0xF4, 0x41, 0xFB, 0x03, 0x4E, 0x72,\n0x8D, 0x20, 0x11, 0x29, 0xCA, 0x57, 0x36, 0x21, 0x6A, 0x7F, 0x34, 0xE3, 0x90, 0x51, 0x96, 0x7C,\n0x68, 0x20, 0x86, 0x02, 0x0C, 0x6D, 0x35, 0xD5, 0xD2, 0x85, 0x5C, 0x94, 0x40, 0x48, 0xB6, 0x07,\n0x9F, 0x0F, 0x76, 0x12, 0x92, 0xE0, 0xA2, 0x03, 0x24, 0xF8, 0x48, 0x36, 0x4E, 0xC9, 0x43, 0x32,\n0x92, 0x9B, 0xF4, 0x10, 0xF8, 0xC8, 0xC9, 0x5D, 0x6C, 0xD6, 0x84, 0xEA, 0x93, 0x28, 0xE2, 0x51,\n0x1E, 0x42, 0xF5, 0x2D, 0x53, 0x2A, 0xDC, 0xA3, 0x76, 0x2D, 0xB8, 0x18, 0xC4, 0x07, 0x84, 0x64,\n0x01, 0x05, 0x07, 0xE1, 0xF2, 0xA5, 0x13, 0x94, 0x79, 0xC8, 0xE7, 0x7D, 0x43, 0xEB, 0xC4, 0xD1,\n0xE5, 0x2D, 0x7C, 0x58, 0x32, 0xF9, 0x50, 0xE4, 0x6F, 0x64, 0x7D, 0x2F, 0x3E, 0x4C, 0xF9, 0xFE,\n0x11, 0xCB, 0xDB, 0x14, 0xB3, 0xAE, 0x2D, 0x59, 0xE9, 0x39, 0xD2, 0x97, 0x0C, 0x55, 0x1D, 0xA4,\n0x37, 0xA8, 0xCD, 0xC6, 0x4A, 0x35, 0x91, 0x6F, 0x7F, 0x78, 0xBA, 0x28, 0xDA, 0x1F, 0x44, 0x6D,\n0xE8, 0x68, 0x98, 0xCD, 0x62, 0x51, 0xFB, 0x43, 0x2C, 0xA4, 0x7F, 0x2C, 0xF5, 0x28, 0x4E, 0xB4,\n0xA3, 0x7D, 0x11, 0x42, 0xFB, 0x1C, 0xCB, 0xD0, 0xAA, 0xE7, 0xB9, 0xC9, 0x86, 0xC8, 0x57, 0x2F,\n0xFC, 0x12, 0x7C, 0x40, 0x11, 0xEF, 0xD2, 0x82, 0xE3, 0xF4, 0x84, 0x3C, 0x09, 0x08, 0x59, 0x59,\n0x9F, 0x84, 0x2C, 0x57, 0x7A, 0x5C, 0x8A, 0x96, 0xA9, 0x3E, 0x50, 0x7C, 0xD8, 0x24, 0x44, 0x7F,\n0xC6, 0x4A, 0xA7, 0xA7, 0x52, 0xCC, 0xF2, 0xF1, 0xA0, 0xDC, 0x4B, 0x51, 0x51, 0x24, 0xAC, 0x1F,\n0xCA, 0x6D, 0xB6, 0x0C, 0x17, 0x97, 0xE6, 0x00, 0x88, 0x80, 0x0F, 0x4B, 0xFC, 0x8A, 0x89, 0x15,\n0x1F, 0xC2, 0x87, 0x4D, 0x48, 0x30, 0x15, 0xC3, 0x7F, 0x07, 0x1E, 0xCC, 0xB2, 0xE0, 0xC3, 0x26,\n0xE4, 0xC4, 0x95, 0xBC, 0xB8, 0xF3, 0x0F, 0xDA, 0x4E, 0xA0, 0x51, 0x1C, 0xFC, 0x10, 0xED, 0x41,\n0x4F, 0x45, 0xFB, 0xA3, 0x15, 0x82, 0x84, 0xF6, 0x79, 0xD2, 0xD1, 0xFB, 0x07, 0x53, 0x7F, 0x8D,\n0xCC, 0x35, 0x3F, 0xFB, 0xF0, 0x81, 0x57, 0x90, 0x52, 0x68, 0x37, 0x9F, 0x77, 0x1E, 0xF2, 0x4B,\n0x07, 0x08, 0x8A, 0x57, 0xAA, 0xD2, 0x24, 0xEC, 0x69, 0x15, 0xED, 0x0F, 0xE1, 0xA1, 0xC9, 0x55,\n0xEE, 0xC5, 0x26, 0x6B, 0xBE, 0xC2, 0x24, 0xAB, 0x08, 0x59, 0xEE, 0x5D, 0x1E, 0xDA, 0x1A, 0xFB,\n0x7C, 0x50, 0xEE, 0xD5, 0xD5, 0x4B, 0x7C, 0x28, 0xD8, 0x2D, 0x62, 0x7D, 0xDB, 0xC9, 0xC9, 0x00,\n0xF5, 0xDF, 0x8E, 0x72, 0x96, 0xD0, 0x83, 0xDA, 0x83, 0x77, 0x6F, 0x5B, 0x7C, 0x64, 0x53, 0xDD,\n0xE7, 0x63, 0xFD, 0x33, 0x8B, 0x89, 0x47, 0x33, 0x72, 0x11, 0x21, 0x16, 0x1C, 0xFC, 0x4E, 0xAF,\n0x2E, 0x0C, 0x96, 0xB2, 0xBC, 0xCB, 0xD5, 0x69, 0x5E, 0x71, 0x10, 0x7C, 0x44, 0x1E, 0x02, 0x1F,\n0x06, 0x21, 0x17, 0x9E, 0x7F, 0xE4, 0x0C, 0x8C, 0x6F, 0x7F, 0x28, 0x33, 0xD6, 0x6C, 0x86, 0xA1,\n0xC8, 0x0B, 0x42, 0x24, 0x96, 0x6C, 0x9F, 0xE3, 0x15, 0xDA, 0x92, 0x9F, 0x6F, 0x4C, 0xB6, 0x04,\n0x48, 0x5B, 0x10, 0x92, 0xDF, 0xFE, 0xC8, 0x8C, 0x67, 0x19, 0x0C, 0xF4, 0x93, 0xAB, 0xCE, 0xD0,\n0xC4, 0xE7, 0xA4, 0xF7, 0x97, 0xF0, 0x90, 0x25, 0x7C, 0x38, 0x7A, 0x1C, 0x0F, 0xE1, 0xE3, 0x9D,\n0xB9, 0xBE, 0x3D, 0xE8, 0xC6, 0xFD, 0xFD, 0xE7, 0xF8, 0x87, 0x25, 0xD2, 0x73, 0x43, 0x22, 0x04,\n0x3A, 0x8C, 0x00, 0x0F, 0xD7, 0x43, 0x36, 0xF1, 0xD8, 0xA6, 0x3B, 0x2D, 0x41, 0x88, 0xFD, 0xE1,\n0xC5, 0x38, 0xFE, 0x61, 0x29, 0xF8, 0xB8, 0x9F, 0x47, 0x81, 0x30, 0xCE, 0x40, 0xF7, 0x10, 0xCB,\n0x7C, 0x63, 0x65, 0xBB, 0xFE, 0xC7, 0xF0, 0x61, 0xA9, 0xC3, 0x63, 0x80, 0x62, 0xA0, 0x8D, 0x9E,\n0xA8, 0xAB, 0x66, 0x42, 0x9C, 0x23, 0x73, 0xA9, 0xE7, 0x5C, 0xC9, 0xE3, 0xE9, 0xFE, 0x51, 0xCF,\n0x03, 0x53, 0x2B, 0x1A, 0x1B, 0xC2, 0xA4, 0x67, 0x25, 0x1C, 0xE4, 0xE5, 0x03, 0x57, 0x3F, 0x1D,\n0xAC, 0x96, 0x82, 0xC1, 0x8A, 0xE9, 0xFE, 0xFE, 0x78, 0x6F, 0xEF, 0xFC, 0x6C, 0x40, 0xCC, 0xF7,\n0x02, 0x91, 0x73, 0x2F, 0xF6, 0x62, 0x13, 0x17, 0xA8, 0xBD, 0x7E, 0x2D, 0xB7, 0x5A, 0x73, 0x5F,\n0x3B, 0xF3, 0x77, 0x2E, 0x6F, 0x2F, 0x7D, 0x2D, 0x2E, 0xAF, 0xAE, 0x3F, 0xB9, 0xFA, 0xE4, 0xDA,\n0x8C, 0xAB, 0xAB, 0x2F, 0xEF, 0x86, 0xE8, 0xBB, 0x3B, 0xFD, 0x10, 0xAF, 0xAB, 0xF8, 0x31, 0xA0,\n0xBB, 0x61, 0xFA, 0x2E, 0x3E, 0xBB, 0xBD, 0x04, 0x20, 0x97, 0xC3, 0xB4, 0x88, 0x4B, 0xD4, 0x00,\n0x75, 0xA7, 0xD5, 0x57, 0x8C, 0x83, 0x18, 0x0E, 0xB6, 0xF6, 0xCE, 0xC7, 0x2B, 0x0D, 0x4B, 0x33,\n0xA6, 0xAB, 0x18, 0xCA, 0xAE, 0xC2, 0x41, 0x7C, 0x3E, 0x0E, 0x8E, 0xA7, 0xE3, 0xA9, 0xAB, 0x51,\n0xE4, 0xE9, 0xE7, 0x2F, 0xBC, 0xF0, 0xC2, 0xB9, 0x19, 0x7B, 0x2F, 0xBC, 0xB0, 0xD7, 0xFD, 0x69,\n0xFD, 0x88, 0x53, 0xF4, 0xBA, 0x7D, 0x8A, 0xF6, 0x16, 0x8B, 0x17, 0x43, 0x97, 0x6E, 0x5C, 0xBE,\n0x72, 0xFB, 0xC9, 0x20, 0x01, 0x88, 0xA5, 0x6F, 0xBF, 0xFD, 0x66, 0x90, 0xBE, 0xFD, 0xF6, 0x6E,\n0x90, 0xBE, 0x1C, 0xF6, 0xE9, 0x6F, 0x6F, 0x75, 0x70, 0x2C, 0x5D, 0xC6, 0xB2, 0x58, 0x74, 0x07,\n0xDF, 0xDD, 0xBC, 0xB3, 0x3E, 0x5F, 0xEE, 0x7A, 0xB6, 0xF7, 0xC2, 0x80, 0x88, 0x21, 0x16, 0x19,\n0xFA, 0xD4, 0xD6, 0x78, 0x7A, 0x74, 0xE0, 0xEB, 0x63, 0xDF, 0x41, 0xBA, 0xBF, 0x1C, 0xE1, 0x78,\n0x35, 0x76, 0xF9, 0x58, 0x8D, 0x67, 0xB3, 0x71, 0xFC, 0x51, 0xCF, 0xF7, 0xDC, 0x78, 0x61, 0x6F,\n0xCF, 0x3F, 0x88, 0x11, 0x17, 0x61, 0x0E, 0x0B, 0x13, 0x8F, 0x78, 0x67, 0x9C, 0xD4, 0xF0, 0x10,\n0x97, 0x8F, 0xDB, 0xD0, 0x10, 0x3C, 0x3A, 0x0D, 0xE2, 0x63, 0x10, 0x21, 0x3F, 0x77, 0xEF, 0x1F,\n0x82, 0x47, 0xA7, 0x41, 0x7C, 0xDC, 0xEA, 0xD0, 0x58, 0x7A, 0xE5, 0x72, 0xD1, 0x69, 0x88, 0x81,\n0xD8, 0x74, 0x68, 0x95, 0xEC, 0x51, 0x73, 0x7E, 0xDE, 0x8D, 0xB4, 0x98, 0x3D, 0x99, 0x7C, 0x8C,\n0x62, 0x18, 0x1F, 0xFF, 0x13, 0x0E, 0x72, 0xAC, 0xBF, 0x5F, 0xC7, 0x24, 0x64, 0x35, 0xEA, 0x3E,\n0x75, 0x44, 0x0C, 0xFB, 0x73, 0x2B, 0x42, 0x1D, 0x22, 0xEE, 0xB1, 0xCC, 0x58, 0x98, 0x7C, 0x2C,\n0xD6, 0x32, 0xC7, 0x40, 0xF0, 0x21, 0x5D, 0xF9, 0x7C, 0x48, 0x3E, 0x1F, 0xD2, 0xCF, 0x3E, 0x1F,\n0xD2, 0x00, 0x3E, 0x24, 0x1B, 0x0F, 0xC9, 0xBF, 0x78, 0x2C, 0x24, 0x9F, 0x90, 0x33, 0x9D, 0x2B,\n0xD7, 0x3E, 0x34, 0x0C, 0x6C, 0x40, 0x5E, 0xD8, 0x8B, 0x41, 0x16, 0x1A, 0x7B, 0x80, 0x4C, 0xC6,\n0xAB, 0xE0, 0x23, 0xE4, 0x3B, 0xC8, 0x57, 0x36, 0x1F, 0x49, 0xC8, 0xD2, 0x9C, 0x5F, 0x75, 0x92,\n0x87, 0x78, 0x7C, 0x0C, 0x23, 0x24, 0x01, 0x39, 0x93, 0x87, 0x98, 0x7C, 0x88, 0x10, 0x63, 0x14,\n0xC4, 0x5B, 0x6E, 0x7B, 0xF9, 0x7C, 0x48, 0x3E, 0x1F, 0x92, 0xCD, 0x47, 0xEA, 0xC3, 0x0F, 0x7C,\n0x3E, 0x7C, 0x42, 0xAE, 0x6E, 0x53, 0xAF, 0xB8, 0xFE, 0x31, 0x8C, 0x90, 0xBC, 0x9C, 0x59, 0x7C,\n0x9C, 0xCD, 0x93, 0x8F, 0x90, 0xCF, 0x87, 0x4F, 0xC8, 0x78, 0x75, 0x2A, 0x3E, 0x4C, 0x42, 0x7E,\n0x3D, 0x78, 0xF7, 0x85, 0x77, 0x7F, 0xF2, 0xF9, 0x10, 0x22, 0xFB, 0x87, 0xBB, 0xE8, 0x88, 0x98,\n0xA5, 0xE4, 0x21, 0x0E, 0x1E, 0x03, 0x09, 0x21, 0x9C, 0x53, 0xB4, 0x40, 0x71, 0x82, 0x3D, 0xFB,\n0xB0, 0x3D, 0xE4, 0x4A, 0x7C, 0xA4, 0x06, 0xE0, 0x81, 0x87, 0xC4, 0xB6, 0xBE, 0xC2, 0x47, 0xCA,\n0xE3, 0x03, 0x79, 0xFE, 0x81, 0x6C, 0xFF, 0xF0, 0x09, 0x89, 0x99, 0xF0, 0xDC, 0x25, 0x04, 0x3E,\n0x24, 0x9F, 0x0F, 0x69, 0x37, 0x21, 0x93, 0xE9, 0xFE, 0x4B, 0xE2, 0xC3, 0x26, 0xE4, 0xA7, 0x00,\n0xA4, 0xFB, 0x2A, 0xE1, 0x4E, 0x92, 0x8E, 0x7B, 0xC5, 0x0F, 0x5B, 0xEF, 0xEF, 0x04, 0xA4, 0xE3,\n0x03, 0x9D, 0xEF, 0x39, 0x80, 0xA0, 0xB9, 0xE9, 0x1F, 0x69, 0xDC, 0x98, 0x48, 0xC3, 0x3F, 0xD0,\n0x2E, 0x0B, 0xE9, 0xD2, 0x73, 0x29, 0x65, 0xF9, 0x07, 0xF2, 0x00, 0x81, 0x10, 0xCF, 0x3F, 0x90,\n0xC5, 0x07, 0x32, 0xF9, 0xC0, 0x43, 0x1C, 0xFF, 0x40, 0x06, 0x1F, 0x73, 0xC2, 0xF4, 0x0F, 0xB4,\n0x93, 0x8F, 0x73, 0xF8, 0xB0, 0x08, 0x79, 0xE3, 0xA5, 0x53, 0x46, 0xB2, 0x6A, 0x59, 0x1A, 0xDD,\n0x3F, 0x69, 0xAD, 0xF8, 0xC7, 0x4F, 0x6B, 0x40, 0x7E, 0xB2, 0xFC, 0x03, 0x0F, 0x79, 0x63, 0x07,\n0x20, 0x13, 0x7D, 0x5C, 0x3C, 0x24, 0x32, 0x29, 0x03, 0x0F, 0x9F, 0x90, 0x22, 0x00, 0xA4, 0xE1,\n0x1F, 0x28, 0xCE, 0xB2, 0xE1, 0x1F, 0x78, 0x88, 0xC5, 0x07, 0xF2, 0xF0, 0x40, 0x1E, 0x1F, 0xC8,\n0xE2, 0x03, 0xD9, 0x7C, 0x18, 0x89, 0x08, 0xFE, 0x61, 0x13, 0xC2, 0xC5, 0xCC, 0xCA, 0x43, 0xE0,\n0xC3, 0x01, 0x24, 0xF8, 0x90, 0x3C, 0x42, 0x26, 0xC9, 0x07, 0xFA, 0x75, 0x6D, 0x12, 0xEB, 0x87,\n0xDC, 0xE7, 0x69, 0x3C, 0xFE, 0x94, 0x80, 0xEC, 0xF2, 0x90, 0x74, 0x25, 0x08, 0x39, 0x9E, 0x2C,\n0x5B, 0x06, 0x32, 0x2B, 0xD5, 0x9E, 0x65, 0x21, 0x6F, 0x96, 0x55, 0x00, 0x22, 0x42, 0x0C, 0x3E,\n0xAC, 0x3C, 0x04, 0x3E, 0x90, 0xC5, 0x07, 0xB2, 0xF8, 0x40, 0xDF, 0x37, 0x66, 0x59, 0xA1, 0xEF,\n0x79, 0xA7, 0x45, 0xC8, 0xB3, 0xCF, 0x63, 0xF2, 0x01, 0x21, 0xDB, 0x25, 0x3E, 0x4A, 0x19, 0xFE,\n0x41, 0x98, 0xFE, 0x81, 0x9A, 0x45, 0x4F, 0xF8, 0xF0, 0x08, 0x39, 0x5A, 0xF3, 0x81, 0x9E, 0x8D,\n0x7A, 0xC1, 0x01, 0x1F, 0x09, 0x88, 0xE4, 0xF1, 0x01, 0x21, 0xE3, 0xAD, 0xF5, 0xAB, 0xE5, 0x0C,\n0x39, 0x1E, 0x82, 0x40, 0x64, 0x6E, 0xFB, 0x87, 0x88, 0x81, 0x90, 0x06, 0x1E, 0x9E, 0x87, 0xDC,\n0x56, 0x74, 0xED, 0xE0, 0xC1, 0x88, 0x34, 0xF9, 0x80, 0x90, 0x86, 0xE0, 0x03, 0x59, 0xF6, 0x81,\n0x3C, 0x3E, 0x50, 0xC3, 0x40, 0xE0, 0x03, 0x19, 0xF9, 0x87, 0x49, 0xC8, 0x1C, 0x3C, 0x2C, 0x40,\n0xA2, 0xBC, 0x5B, 0xAA, 0xD1, 0x10, 0x39, 0x9C, 0xC2, 0x47, 0x85, 0x90, 0xDA, 0xFC, 0xCA, 0x00,\n0x04, 0x3E, 0x4A, 0x42, 0xA6, 0xE3, 0x66, 0xF9, 0xAA, 0x24, 0x24, 0xD2, 0x29, 0x87, 0x0F, 0x3C,\n0xC4, 0xF3, 0x0F, 0xF2, 0x90, 0xD7, 0x1D, 0x40, 0x40, 0xC4, 0xF1, 0x0F, 0xE4, 0xF1, 0x81, 0x2C,\n0x3E, 0x50, 0xA3, 0x3D, 0x58, 0x95, 0xC7, 0x07, 0x72, 0xF9, 0x80, 0x90, 0x9A, 0xC2, 0x5B, 0xAA,\n0x87, 0x72, 0xB1, 0xD7, 0x6A, 0x7F, 0xB8, 0x84, 0xC0, 0x47, 0xA1, 0x86, 0x7F, 0x54, 0x87, 0x1A,\n0x0D, 0x91, 0xB2, 0xFD, 0x01, 0x1F, 0x4D, 0x42, 0xC0, 0x03, 0x40, 0x24, 0x87, 0x0F, 0x32, 0x75,\n0x08, 0x29, 0xDB, 0x1F, 0x75, 0x9D, 0x07, 0x22, 0x06, 0x1F, 0xC8, 0xF0, 0x0F, 0x82, 0x86, 0x48,\n0xD1, 0x3E, 0xE7, 0x9C, 0x5A, 0x1E, 0x72, 0xBB, 0x45, 0x1E, 0x1F, 0x68, 0x08, 0x1F, 0x14, 0xB3,\n0x72, 0x61, 0x95, 0x7F, 0x54, 0xE4, 0xF1, 0x81, 0x0C, 0x3E, 0x8C, 0x3C, 0x64, 0xB1, 0x4D, 0x86,\n0x7F, 0x10, 0xA6, 0x7F, 0xA0, 0x46, 0x7B, 0xB0, 0xA2, 0xB3, 0x7A, 0xB9, 0xF7, 0x70, 0x25, 0x3E,\n0x2C, 0x42, 0xE0, 0x03, 0x40, 0xA4, 0x66, 0x7A, 0x5E, 0x4A, 0x2D, 0x43, 0xCF, 0x3F, 0xB2, 0x21,\n0xE2, 0x01, 0x82, 0x89, 0x9C, 0x79, 0xF6, 0x91, 0x4D, 0xF5, 0x9C, 0x66, 0x15, 0x7C, 0x20, 0xC7,\n0x43, 0x54, 0xBE, 0xAA, 0xCB, 0xE3, 0x03, 0x99, 0x7C, 0x40, 0x48, 0x3B, 0x3D, 0x2F, 0xE5, 0xF1,\n0x81, 0x1A, 0xED, 0x8F, 0x9A, 0x1A, 0xE5, 0xAB, 0xAA, 0x9C, 0xF4, 0x83, 0xA8, 0xE3, 0xD1, 0x50,\n0xCD, 0x3F, 0x66, 0xF8, 0x87, 0xE1, 0x21, 0xD9, 0x1E, 0xAC, 0xAA, 0x7A, 0x63, 0x96, 0x80, 0x00,\n0x90, 0x94, 0xCD, 0x07, 0x84, 0x94, 0x7C, 0x9C, 0x6D, 0x05, 0xA4, 0x76, 0xDB, 0x09, 0xAA, 0x4F,\n0xB3, 0x3C, 0xFF, 0x50, 0xCC, 0xE7, 0xCF, 0x67, 0x59, 0x8B, 0x96, 0x2A, 0x1E, 0x72, 0xDB, 0x90,\n0xC7, 0x07, 0xF2, 0xF0, 0x80, 0x10, 0x8B, 0x0F, 0xE4, 0xF1, 0x81, 0x2C, 0x3E, 0xD0, 0x2B, 0x95,\n0xF6, 0x47, 0x4B, 0x8D, 0xF2, 0x95, 0x89, 0x48, 0xFA, 0x47, 0x55, 0x15, 0x3E, 0xCE, 0xEA, 0x78,\n0xD4, 0x5B, 0x86, 0x13, 0xDA, 0x83, 0x35, 0x6D, 0xF1, 0x0F, 0x00, 0x41, 0x95, 0xF6, 0x47, 0x8B,\n0x90, 0xFD, 0xF1, 0x72, 0xE3, 0xEE, 0xAB, 0xE9, 0xAC, 0xCE, 0x07, 0x2D, 0x43, 0x0B, 0x10, 0x08,\n0x71, 0xF0, 0xC0, 0x44, 0x3C, 0x3E, 0x20, 0xC4, 0xF2, 0x0F, 0x64, 0xF1, 0x81, 0x3C, 0x40, 0x20,\n0xC4, 0xE3, 0x03, 0x59, 0x7C, 0x20, 0x97, 0x0F, 0x66, 0x59, 0x9B, 0xF9, 0xC7, 0xA2, 0x2D, 0xC7,\n0x3F, 0x88, 0x6A, 0x7B, 0xB0, 0xA5, 0x4A, 0x7B, 0xB0, 0xA5, 0x92, 0x90, 0x7D, 0xA6, 0x57, 0x35,\n0x85, 0x61, 0xD4, 0xFC, 0x03, 0x40, 0x90, 0xC5, 0x07, 0x84, 0xBC, 0xB1, 0x1C, 0x57, 0xDA, 0xE7,\n0x2D, 0x42, 0x3C, 0x3C, 0x20, 0xC4, 0xE1, 0x03, 0x42, 0x16, 0xE5, 0xDD, 0x89, 0x03, 0x3C, 0xE4,\n0x76, 0x97, 0xAE, 0x2C, 0x3E, 0x90, 0x8D, 0x07, 0x84, 0x90, 0x7E, 0x88, 0x8F, 0xB6, 0x2C, 0x3E,\n0x90, 0x95, 0x7E, 0xD4, 0x8B, 0x59, 0xA1, 0x05, 0x72, 0x08, 0x09, 0xF3, 0xF7, 0x10, 0xC1, 0x3F,\n0x7C, 0x40, 0x68, 0x0F, 0x5A, 0x84, 0x4C, 0xE0, 0xC3, 0xF1, 0x10, 0x95, 0x77, 0x4B, 0x40, 0x90,\n0xC7, 0x07, 0x84, 0x8C, 0xC7, 0x93, 0xDE, 0x3F, 0x68, 0x0F, 0xA2, 0x56, 0x43, 0x04, 0x39, 0x79,\n0x88, 0x11, 0xDC, 0xDD, 0x6B, 0xF0, 0x51, 0x34, 0x44, 0xE0, 0xA3, 0xA1, 0xCA, 0xED, 0x25, 0x2D,\n0x79, 0x7C, 0x20, 0xCF, 0x3F, 0x90, 0xC5, 0x07, 0xF2, 0xF8, 0x40, 0xA4, 0x1F, 0xF0, 0x61, 0x22,\n0x32, 0x37, 0x4E, 0x97, 0xE7, 0x1F, 0xA8, 0x2C, 0x5F, 0xB5, 0x35, 0x19, 0x01, 0x88, 0xDA, 0x83,\n0x6D, 0xFD, 0x5A, 0xE7, 0x03, 0x40, 0x50, 0xA3, 0x7C, 0xD5, 0x2A, 0x66, 0x8D, 0xF0, 0x8F, 0x86,\n0xF4, 0x0D, 0x11, 0xF8, 0x30, 0x10, 0xC1, 0x43, 0x9C, 0x50, 0xA6, 0x9E, 0x7C, 0x38, 0xA2, 0x98,\n0x75, 0x6B, 0xC9, 0xF2, 0x0F, 0xE4, 0xF2, 0x81, 0x87, 0xD0, 0xFE, 0x70, 0x64, 0xF1, 0x81, 0x86,\n0xF1, 0x41, 0x31, 0x0B, 0x3E, 0x4C, 0x40, 0xAC, 0x73, 0xE5, 0xF9, 0x07, 0x2A, 0xDB, 0xE7, 0x9E,\n0x87, 0x4C, 0xA6, 0x95, 0xF6, 0x47, 0xBB, 0x98, 0xF5, 0x53, 0x03, 0x10, 0x9A, 0xEA, 0xE2, 0xC3,\n0x23, 0xE4, 0x37, 0xDA, 0xCE, 0xD8, 0xB7, 0x7D, 0x22, 0x0C, 0xC3, 0x45, 0x86, 0x10, 0x84, 0xDA,\n0x28, 0x54, 0xCD, 0x52, 0x48, 0x2B, 0x98, 0x2A, 0xAB, 0x1D, 0x98, 0x10, 0x43, 0xC5, 0x84, 0xC4,\n0x80, 0x2A, 0x31, 0x30, 0x14, 0x11, 0x28, 0xCC, 0x0C, 0x48, 0x48, 0x1D, 0x59, 0x88, 0x04, 0x0C,\n0x15, 0x33, 0x02, 0x06, 0xFE, 0x52, 0x3E, 0xBF, 0x39, 0xF3, 0xD0, 0xEB, 0xF5, 0xF2, 0x1E, 0x4D,\n0xDE, 0xB3, 0x2F, 0xB6, 0x29, 0xF9, 0xC5, 0xCE, 0x3D, 0x7E, 0xEF, 0xBB, 0xCF, 0x76, 0x2E, 0xE5,\n0x1F, 0x84, 0xE7, 0x55, 0x42, 0x26, 0xB1, 0x87, 0x2D, 0x80, 0x8C, 0x26, 0x62, 0x14, 0x2E, 0xCC,\n0x82, 0x0F, 0xCF, 0x43, 0xC4, 0x87, 0x25, 0xF8, 0xF0, 0x04, 0x1F, 0x96, 0x48, 0x7F, 0x78, 0x22,\n0x7D, 0xEE, 0x09, 0x3E, 0x2C, 0xE1, 0x1F, 0x9E, 0x48, 0x7F, 0x98, 0x80, 0xE0, 0x1F, 0x8E, 0xF0,\n0x0F, 0x47, 0x97, 0xEB, 0x4D, 0x7A, 0x50, 0xC3, 0xBB, 0x0E, 0x21, 0xC4, 0xE7, 0x65, 0x40, 0x90,\n0xC5, 0x07, 0x29, 0xC3, 0x57, 0xA2, 0x97, 0x45, 0xFA, 0xA3, 0x2A, 0x92, 0xEA, 0xC8, 0xF3, 0x10,\n0xAB, 0xE8, 0x96, 0xDD, 0xF3, 0x94, 0xFE, 0xB0, 0x74, 0x3E, 0x34, 0x80, 0xCE, 0xE3, 0x83, 0xA4,\n0xFA, 0x37, 0x3F, 0x7C, 0xE3, 0x0A, 0x3E, 0x1C, 0xFD, 0x08, 0x1F, 0x9E, 0xB0, 0x0F, 0x4B, 0x2D,\n0x7C, 0x10, 0xAA, 0x5F, 0xD8, 0xDA, 0xF0, 0x41, 0xFA, 0xC3, 0x20, 0x64, 0x09, 0x1E, 0x06, 0x21,\n0x4A, 0x9F, 0x9B, 0x9A, 0xAC, 0x5F, 0x21, 0x3D, 0x68, 0x10, 0x42, 0xFF, 0xCA, 0x00, 0x04, 0x3E,\n0x0C, 0x42, 0xD6, 0xAF, 0x8B, 0x0F, 0x53, 0x93, 0x81, 0x10, 0x5B, 0xBA, 0xCB, 0x90, 0x62, 0xC5,\n0x21, 0xF8, 0x87, 0xE9, 0x21, 0x9F, 0x35, 0x08, 0xFB, 0xF0, 0x04, 0x1F, 0x96, 0xE0, 0xC3, 0x13,\n0x7C, 0x78, 0x62, 0xF8, 0xCA, 0x12, 0xF1, 0xB9, 0x4B, 0x08, 0x5F, 0x97, 0x47, 0x48, 0x8B, 0x02,\n0x0F, 0xC7, 0x3F, 0x18, 0xEE, 0x7D, 0x9D, 0xF4, 0xA0, 0x45, 0x08, 0x78, 0x94, 0x01, 0x01, 0x91,\n0x59, 0x83, 0x82, 0x10, 0xFA, 0x57, 0x3E, 0x21, 0xBE, 0xC2, 0x85, 0x1B, 0xCA, 0x12, 0xFF, 0xF0,\n0x84, 0x7F, 0x58, 0x82, 0x0F, 0x93, 0x10, 0xC5, 0xDB, 0xA6, 0x3E, 0xFA, 0x1E, 0x3E, 0x2C, 0xFD,\n0x06, 0x1F, 0x9E, 0xF0, 0x0F, 0x4B, 0xDD, 0x45, 0x9B, 0xC8, 0x9E, 0x3B, 0x85, 0xEE, 0x95, 0x25,\n0x86, 0x77, 0x4D, 0x91, 0xFE, 0xB0, 0x04, 0x1F, 0xBB, 0x05, 0xE4, 0xB4, 0x07, 0x10, 0x4B, 0xD8,\n0xAA, 0x69, 0x22, 0x8C, 0x8A, 0x58, 0x81, 0x3A, 0xDA, 0x03, 0x20, 0xEF, 0xB7, 0x02, 0xF2, 0x7D,\n0x5B, 0x8B, 0x87, 0x27, 0x4B, 0x04, 0x20, 0x9E, 0x30, 0x10, 0x47, 0xE4, 0x3F, 0x4C, 0xF1, 0x4D,\n0x79, 0x80, 0xB4, 0x35, 0x84, 0xB3, 0x26, 0x3E, 0x96, 0x93, 0xFE, 0xA8, 0x09, 0x90, 0xBF, 0x5D,\n0x40, 0x18, 0xE1, 0xB5, 0x0C, 0xA4, 0x9F, 0x4E, 0x2F, 0x1B, 0x08, 0x59, 0x36, 0x13, 0x12, 0x57,\n0xF5, 0xD8, 0x9E, 0x1D, 0x7C, 0x34, 0x11, 0xE2, 0x86, 0xE8, 0x64, 0x43, 0x9A, 0x08, 0x21, 0x04,\n0x71, 0xF9, 0x68, 0x23, 0x84, 0x18, 0xC4, 0xD2, 0xF0, 0x24, 0xA3, 0xBD, 0x76, 0xB1, 0x2E, 0x48,\n0xA1, 0x1B, 0xA5, 0x91, 0x8F, 0xE5, 0xC9, 0xB2, 0xE5, 0x4C, 0x7C, 0x39, 0x9D, 0xF6, 0xB3, 0xA3,\n0x06, 0x3E, 0xDC, 0x2E, 0x96, 0xA2, 0x79, 0x3F, 0x04, 0x99, 0x0E, 0xCF, 0xB5, 0x7E, 0xDD, 0xE7,\n0x63, 0x29, 0x42, 0x90, 0xEB, 0x21, 0x7E, 0x08, 0xD2, 0x40, 0x48, 0xC7, 0x20, 0xAF, 0x25, 0xE5,\n0x40, 0x6E, 0x1A, 0xF8, 0x80, 0x10, 0x97, 0x0F, 0x72, 0x20, 0x66, 0x90, 0x7E, 0xED, 0x7E, 0x9A,\n0x1F, 0xE2, 0xB3, 0xC7, 0xA7, 0x6F, 0xE2, 0xE3, 0xB8, 0x2D, 0x48, 0x0F, 0x42, 0xF6, 0xE0, 0x1F,\n0xF0, 0xD1, 0x40, 0xC8, 0x9B, 0x7D, 0x1F, 0x4D, 0xD3, 0x26, 0xE4, 0x54, 0x63, 0x53, 0x0E, 0x20,\n0x29, 0x69, 0x72, 0x6A, 0xF2, 0xF1, 0xB0, 0x9E, 0x4E, 0x21, 0xC4, 0xE1, 0x43, 0x7B, 0x19, 0x7B,\n0xBC, 0x73, 0x42, 0xB8, 0xBB, 0x30, 0x5A, 0xFE, 0x45, 0x4B, 0x22, 0xC4, 0xF7, 0x8F, 0xA1, 0x8D,\n0x91, 0x26, 0x34, 0x13, 0x21, 0x3E, 0x1E, 0x52, 0xF3, 0x30, 0xAF, 0x1B, 0x7F, 0xBC, 0xAF, 0xB2,\n0xEF, 0x61, 0xDE, 0xFD, 0xF9, 0x87, 0x64, 0x76, 0x53, 0x5E, 0xEF, 0xA7, 0x21, 0x08, 0x31, 0x13,\n0x21, 0xDB, 0x01, 0x89, 0x87, 0x8C, 0xFA, 0x89, 0x90, 0x81, 0x8F, 0x87, 0xA9, 0x08, 0x79, 0xC5,\n0xE6, 0x23, 0x11, 0x72, 0xB1, 0x5B, 0x0F, 0xC1, 0x3F, 0x7C, 0x13, 0x11, 0x1E, 0x2D, 0x89, 0xC2,\n0xE8, 0xA2, 0xA8, 0xEC, 0x3A, 0x51, 0x08, 0x20, 0xD2, 0x7E, 0x12, 0x85, 0xE3, 0x87, 0xFF, 0xD8,\n0x24, 0x84, 0x0B, 0xB1, 0x1A, 0xF8, 0x90, 0x87, 0xF8, 0xF1, 0xB9, 0xFF, 0xFD, 0xAB, 0xED, 0xF8,\n0x84, 0xCC, 0xC5, 0x87, 0x4D, 0xC8, 0x11, 0x99, 0xF4, 0x0A, 0x20, 0xF8, 0x87, 0x47, 0xC8, 0xE9,\n0xE9, 0x6C, 0xBD, 0x9E, 0x26, 0x1D, 0xAE, 0x2D, 0x3E, 0xD8, 0xCB, 0xB3, 0xC6, 0x33, 0xC8, 0xBB,\n0x46, 0x7C, 0xFE, 0x1F, 0xD9, 0xFE, 0xE1, 0x23, 0x22, 0xFB, 0x48, 0xC5, 0xE1, 0x03, 0x5D, 0x7F,\n0xE4, 0x24, 0x41, 0x04, 0x47, 0x92, 0x85, 0x07, 0xF2, 0xFD, 0x43, 0x7C, 0x7B, 0x7C, 0x20, 0x0B,\n0x0F, 0xF4, 0xDA, 0xCE, 0xFD, 0xE3, 0x8C, 0xB6, 0x63, 0x11, 0xF2, 0x8A, 0xF8, 0x10, 0x21, 0xEB,\n0xC3, 0x23, 0x87, 0x0F, 0x08, 0xA9, 0x01, 0xC2, 0x4D, 0xB9, 0x06, 0x21, 0xA7, 0x47, 0x87, 0xE2,\n0x23, 0x69, 0xB6, 0x3E, 0x39, 0xB3, 0xF8, 0x80, 0x10, 0x43, 0x7E, 0x42, 0xE4, 0x5D, 0xFF, 0x62,\n0x5E, 0xFC, 0x03, 0xB5, 0xF1, 0xF1, 0x99, 0x79, 0xB1, 0x22, 0xF2, 0xEC, 0x03, 0x79, 0x7C, 0xF8,\n0x84, 0xC4, 0x23, 0x78, 0x29, 0x46, 0x36, 0x24, 0xBB, 0x19, 0xC4, 0xE6, 0x43, 0x1E, 0x62, 0xF8,\n0x47, 0xD3, 0x77, 0x2F, 0x3E, 0xD0, 0xD6, 0xFE, 0xD5, 0xFA, 0x70, 0x1A, 0x82, 0x90, 0x53, 0x97,\n0x0F, 0x08, 0x01, 0x90, 0xCC, 0x3F, 0x50, 0xE0, 0xB2, 0xE5, 0x52, 0x45, 0xF8, 0x90, 0x87, 0x3C,\n0x4C, 0xCE, 0x3C, 0x3E, 0xA4, 0x93, 0x65, 0xAB, 0x87, 0xBC, 0xB7, 0x85, 0x8F, 0x8B, 0xB6, 0xCB,\n0xDD, 0x73, 0x6D, 0xEB, 0x5E, 0x09, 0x10, 0xCA, 0x8E, 0x2F, 0x77, 0xCF, 0xB5, 0xE3, 0xCB, 0xDD,\n0x03, 0x69, 0x9F, 0x10, 0x6E, 0xBB, 0x85, 0x10, 0x9F, 0x0F, 0x7D, 0x11, 0xEF, 0xDA, 0xE1, 0xB9,\n0xCF, 0x07, 0xDA, 0x32, 0xBC, 0xBB, 0x96, 0x7F, 0xD8, 0x84, 0xD0, 0xEA, 0x21, 0xA4, 0x04, 0x08,\n0xFE, 0xC1, 0xDF, 0x56, 0xD3, 0x1F, 0xAF, 0x88, 0x0F, 0x74, 0x38, 0x85, 0x90, 0x1A, 0x1F, 0x78,\n0xC8, 0x8E, 0x12, 0x22, 0x5C, 0xC9, 0xEB, 0x13, 0x72, 0xFC, 0x56, 0xE7, 0x11, 0xC2, 0xF0, 0x55,\n0x56, 0xDA, 0xF8, 0xB8, 0xFE, 0xBC, 0x8D, 0x0F, 0xFF, 0x86, 0x29, 0xE7, 0x8A, 0xAC, 0xF8, 0xBC,\n0x79, 0xB1, 0xEC, 0x03, 0x39, 0x7C, 0xA0, 0x8B, 0x20, 0xC4, 0xB5, 0x0F, 0x9F, 0x0F, 0x54, 0xE5,\n0xE3, 0x21, 0xF1, 0x01, 0x22, 0xFD, 0x4B, 0x6F, 0x98, 0xCA, 0xF9, 0xC0, 0x44, 0x3C, 0x3E, 0x20,\n0x64, 0xE9, 0xE1, 0x21, 0xB5, 0x26, 0xD5, 0x0F, 0xC2, 0xBA, 0x8B, 0x88, 0x44, 0x7C, 0xF2, 0x1E,\n0x5F, 0x92, 0x45, 0x48, 0xF1, 0xB7, 0x10, 0x1C, 0x3E, 0x28, 0x78, 0x88, 0xF9, 0x60, 0x93, 0x0A,\n0x1F, 0xC4, 0x1F, 0x68, 0x77, 0xB7, 0xDC, 0xF2, 0xE1, 0x3D, 0x0F, 0x29, 0x3F, 0xF3, 0xC7, 0xE2,\n0x03, 0xBD, 0xBB, 0xB3, 0xE1, 0xAB, 0x62, 0xE3, 0x79, 0x9E, 0x8F, 0x29, 0x7C, 0x40, 0x48, 0xE5,\n0x96, 0xDB, 0x92, 0x72, 0x40, 0xCA, 0x7C, 0x48, 0x65, 0x3C, 0x94, 0xFE, 0x78, 0xAA, 0xBE, 0x9F,\n0x2F, 0x3D, 0x3E, 0xA4, 0x1D, 0x25, 0xD5, 0x83, 0x0F, 0xF3, 0x99, 0x26, 0x74, 0xAF, 0xCA, 0x8D,\n0xE0, 0x79, 0x3E, 0x62, 0x08, 0xA8, 0x50, 0x2C, 0xFB, 0x40, 0x1E, 0x1F, 0xC8, 0xE2, 0x03, 0x5D,\n0x5B, 0xFE, 0x01, 0x22, 0x0D, 0x7C, 0xE8, 0x80, 0x79, 0x7C, 0x10, 0x88, 0x94, 0x4C, 0x64, 0x78,\n0x8C, 0xD9, 0x4B, 0xF8, 0x40, 0xCF, 0xA6, 0xCF, 0x33, 0x3E, 0x18, 0xCC, 0x32, 0xF9, 0x90, 0x32,\n0x40, 0xE0, 0xC3, 0x7D, 0xEC, 0xCF, 0x94, 0xF8, 0x03, 0x29, 0x21, 0xB2, 0x34, 0xF9, 0x90, 0xFE,\n0x0F, 0x21, 0x05, 0xFF, 0xA0, 0x7B, 0x65, 0x11, 0xD2, 0x11, 0x9F, 0x67, 0xB2, 0xFC, 0x83, 0xF2,\n0xB1, 0xC5, 0x07, 0xF2, 0xF8, 0x40, 0x1E, 0x1F, 0xA8, 0x32, 0x7C, 0xE5, 0x13, 0xD2, 0x95, 0x0D,\n0x24, 0x26, 0x93, 0x0F, 0x08, 0x31, 0x86, 0x77, 0xAD, 0xF4, 0x87, 0x4D, 0xC8, 0x72, 0x0E, 0x1F,\n0x0E, 0x21, 0x84, 0xE7, 0xB9, 0x00, 0x84, 0xF4, 0x87, 0x43, 0x08, 0x7C, 0x3C, 0x4C, 0x9F, 0x21,\n0xC4, 0xE0, 0xE3, 0x25, 0x84, 0x14, 0xC2, 0xF3, 0x8A, 0x3C, 0xFF, 0x40, 0x1E, 0x1F, 0xB4, 0x31,\n0x8B, 0x0F, 0x64, 0xF1, 0x81, 0xCC, 0x07, 0xC7, 0xA1, 0x4A, 0xFA, 0xC3, 0xED, 0x65, 0x5D, 0xA1,\n0x82, 0x87, 0x38, 0x7C, 0x90, 0x10, 0x79, 0x71, 0xFA, 0x03, 0x3E, 0x0A, 0x2A, 0xF1, 0x01, 0x1E,\n0x0E, 0x21, 0xA7, 0x95, 0x07, 0xC7, 0x01, 0x08, 0x7C, 0x98, 0x84, 0x28, 0x7D, 0xFE, 0xAC, 0xFA,\n0xB9, 0xC5, 0x07, 0x7B, 0xC9, 0x21, 0x73, 0x54, 0xF0, 0x90, 0x2D, 0x8F, 0x1E, 0x5D, 0xE4, 0x7C,\n0x30, 0x46, 0x53, 0x50, 0x25, 0x3D, 0xE8, 0x79, 0xC8, 0xE7, 0x55, 0x79, 0x78, 0x40, 0x88, 0xC7,\n0x07, 0xB2, 0xBA, 0x57, 0x94, 0x06, 0x3E, 0xCA, 0x49, 0x75, 0xEB, 0xD1, 0xEE, 0x94, 0x56, 0xFF,\n0xA8, 0xB7, 0x9D, 0x72, 0x7A, 0xD0, 0x27, 0xE4, 0xA8, 0xFE, 0xD3, 0x07, 0x00, 0xC2, 0x56, 0x87,\n0x90, 0xF0, 0x0F, 0xEC, 0xA3, 0x44, 0xC8, 0xDA, 0xE3, 0x03, 0x42, 0x5A, 0x87, 0x7B, 0x1D, 0xFF,\n0x40, 0x39, 0x1F, 0x5B, 0xE4, 0xF2, 0x81, 0x87, 0xF8, 0x7C, 0x30, 0x96, 0x05, 0x20, 0x35, 0x31,\n0x98, 0x65, 0xFF, 0x44, 0x88, 0xD5, 0xBF, 0xA2, 0x78, 0x7C, 0x60, 0x22, 0x1E, 0x1F, 0xE5, 0x84,\n0x48, 0xC4, 0x24, 0x1F, 0xBC, 0x86, 0xBC, 0xE1, 0xAB, 0xAA, 0x0A, 0xE9, 0xC1, 0x0A, 0x21, 0x6B,\n0x11, 0xE2, 0xF0, 0x01, 0x21, 0x02, 0x24, 0x16, 0x5D, 0x42, 0x48, 0x0F, 0xD6, 0x09, 0x59, 0x1A,\n0x7C, 0xB0, 0x97, 0xAD, 0x83, 0x59, 0xEF, 0x16, 0xD3, 0xE7, 0x75, 0x0F, 0xC1, 0x3F, 0xDA, 0x08,\n0x21, 0xFD, 0x51, 0x2E, 0xEF, 0xB7, 0xFE, 0xFC, 0x81, 0xE3, 0x1F, 0x28, 0xFE, 0xBB, 0x65, 0x1F,\n0xC8, 0xF4, 0x8F, 0xF2, 0x65, 0x27, 0xBB, 0xFF, 0xF9, 0x03, 0xA3, 0x7B, 0x65, 0xA5, 0xCF, 0xCB,\n0x7A, 0x9C, 0x1E, 0xAC, 0xF0, 0x41, 0x42, 0xC4, 0xE5, 0x83, 0x9F, 0x3F, 0xC8, 0xFB, 0x5E, 0x9A,\n0x63, 0x2A, 0x12, 0x72, 0x3A, 0x83, 0x8F, 0x0A, 0x21, 0x93, 0xA5, 0xC1, 0x07, 0x7B, 0xF9, 0x5E,\n0xBB, 0x87, 0x90, 0x1E, 0xDC, 0xF5, 0x0F, 0xE8, 0x74, 0xD9, 0xD5, 0x89, 0x5B, 0x8B, 0xC7, 0x07,\n0xF2, 0xEC, 0x03, 0x59, 0x7C, 0x20, 0x8B, 0x0F, 0x8A, 0xC7, 0x07, 0x32, 0xF9, 0xC0, 0x43, 0x48,\n0x55, 0xBD, 0xB6, 0x2B, 0xFF, 0x40, 0x79, 0xFA, 0xDC, 0x27, 0x04, 0x57, 0xA8, 0x10, 0x12, 0x80,\n0x7C, 0x5B, 0xF6, 0x8F, 0x27, 0x5B, 0x49, 0x9F, 0x4F, 0xB7, 0xAB, 0x7F, 0xF0, 0xF9, 0xC0, 0x43,\n0x7C, 0x29, 0x21, 0x42, 0xF8, 0x61, 0x7B, 0xC8, 0x95, 0xA3, 0x08, 0x50, 0xE0, 0x03, 0x40, 0x2A,\n0x85, 0xF4, 0x87, 0x27, 0xCF, 0x3F, 0x10, 0x7C, 0x58, 0x6A, 0xE2, 0xE3, 0x63, 0xBA, 0x59, 0xDD,\n0x5E, 0x7E, 0x82, 0xED, 0x35, 0xDF, 0x3F, 0x7C, 0x3E, 0x50, 0x2D, 0xFD, 0x81, 0x48, 0x88, 0x34,\n0xFE, 0x04, 0xDB, 0xB7, 0x07, 0x7F, 0x40, 0x02, 0xB6, 0x51, 0x5A, 0x4F, 0x77, 0x47, 0x31, 0x7C,\n0x55, 0x25, 0x24, 0x52, 0x86, 0x06, 0x1E, 0x2F, 0x49, 0x88, 0xE8, 0x9C, 0xE4, 0x88, 0xEB, 0xDF,\n0xA3, 0xED, 0x9B, 0xC2, 0x3F, 0x9C, 0xD2, 0xFC, 0x2B, 0xB7, 0x2D, 0xFE, 0x41, 0x1C, 0x62, 0xBF,\n0x3B, 0x7C, 0x78, 0x05, 0xFB, 0xF0, 0x10, 0x69, 0xFD, 0x11, 0x4F, 0x9D, 0xCE, 0x5A, 0xFD, 0x63,\n0x62, 0x37, 0x1E, 0x9F, 0x0F, 0x52, 0x86, 0xAD, 0xBF, 0x72, 0x0B, 0x12, 0x7F, 0xB3, 0x92, 0x96,\n0x21, 0xE4, 0x54, 0xE9, 0x41, 0x4B, 0x7D, 0x1F, 0x84, 0xF8, 0x53, 0xCC, 0x4D, 0x84, 0x0C, 0xE7,\n0x25, 0xD2, 0x83, 0x8E, 0x18, 0xDE, 0xB5, 0x24, 0x3E, 0x2A, 0xE1, 0x79, 0x9E, 0x54, 0xFF, 0x01,\n0x3E, 0x1C, 0xC1, 0x87, 0x27, 0xF8, 0xF0, 0x44, 0x78, 0x6E, 0x7B, 0xC8, 0x55, 0x83, 0xE0, 0xC3,\n0xD2, 0x6B, 0x2D, 0x7C, 0x90, 0x1E, 0x74, 0x25, 0x3E, 0x94, 0x98, 0x33, 0x00, 0x79, 0x65, 0x3A,\n0x3B, 0xDD, 0xED, 0xCF, 0x40, 0x23, 0xDD, 0x5D, 0xDB, 0x9B, 0x80, 0x1C, 0x1E, 0x0E, 0xA1, 0xFA,\n0x72, 0xE2, 0x4D, 0x7A, 0x30, 0x29, 0xB7, 0x88, 0x38, 0x91, 0x7A, 0x50, 0xD2, 0x24, 0xFC, 0xC3,\n0xD2, 0xB1, 0xAE, 0xEE, 0x33, 0xCB, 0x67, 0xE1, 0x21, 0x31, 0x42, 0x65, 0x2B, 0xFE, 0xF6, 0xB7,\n0x36, 0x99, 0x7C, 0x90, 0x54, 0x6F, 0xF9, 0xF0, 0x31, 0x07, 0x1F, 0x9D, 0x59, 0x94, 0x32, 0x6C,\n0x3B, 0xF6, 0xF1, 0x5D, 0x35, 0xDE, 0xFD, 0x41, 0xE3, 0x30, 0xA6, 0x18, 0xBE, 0xEA, 0xA7, 0xB6,\n0x7A, 0xC2, 0x73, 0x1B, 0x10, 0x0C, 0x83, 0x95, 0x7C, 0x29, 0xBA, 0x5B, 0xFD, 0x5C, 0x7C, 0x98,\n0x1F, 0x63, 0x36, 0x89, 0x81, 0x08, 0x5F, 0x11, 0x86, 0x2C, 0xCE, 0x7D, 0x6D, 0xFE, 0xF8, 0xC2,\n0x2B, 0xF1, 0x97, 0x1F, 0x9C, 0x77, 0xC7, 0x9D, 0xAF, 0xD5, 0xEA, 0xAB, 0x9B, 0xAF, 0x5A, 0x74,\n0x7B, 0xDD, 0xA2, 0xDB, 0xEB, 0xEF, 0x1A, 0x75, 0xDD, 0xF8, 0x0F, 0x7C, 0xD5, 0xA6, 0x6E, 0xD5,\n0xB5, 0x28, 0x0E, 0xE7, 0x3E, 0x75, 0xF6, 0x5E, 0x53, 0xC3, 0xB9, 0x9C, 0x1D, 0xFA, 0x78, 0x44,\n0x2F, 0xEB, 0x8D, 0x76, 0x40, 0xE8, 0x5B, 0xB1, 0xC2, 0x52, 0x5A, 0xFE, 0x5B, 0x17, 0xB8, 0x5B,\n0x5A, 0xC7, 0x34, 0x9F, 0x2C, 0xF5, 0xA0, 0x51, 0xB3, 0x1C, 0x5C, 0x1C, 0x9C, 0x2F, 0x6C, 0x05,\n0x1E, 0x31, 0xB5, 0x68, 0x31, 0x34, 0x81, 0x63, 0xBF, 0x1C, 0xB7, 0xF1, 0x71, 0x7B, 0x7B, 0x7D,\n0x7F, 0xED, 0xEB, 0xEE, 0xAE, 0x8D, 0x8F, 0xBB, 0xBB, 0xBB, 0x6B, 0x53, 0x9F, 0x0F, 0x7C, 0xDC,\n0xB6, 0x11, 0x72, 0x7C, 0xDC, 0x70, 0x64, 0xAE, 0x8E, 0x57, 0xE7, 0xAD, 0x5A, 0x2C, 0xFC, 0x3F,\n0x3D, 0x8F, 0x66, 0xD3, 0xD0, 0x6E, 0xC2, 0x6E, 0xE6, 0x43, 0x7B, 0xB3, 0x34, 0x8D, 0xE9, 0xE8,\n0xE8, 0xEF, 0x76, 0x40, 0x4A, 0xE6, 0x81, 0x64, 0x20, 0x47, 0x47, 0x71, 0xF9, 0xBB, 0x08, 0xB1,\n0x40, 0xBD, 0x8C, 0xCF, 0x1D, 0x1E, 0x62, 0xEE, 0x66, 0x18, 0x6B, 0xE8, 0x7C, 0x7F, 0x5A, 0x2D,\n0xCE, 0x17, 0x5D, 0x77, 0xB5, 0xBA, 0x3A, 0x1E, 0xE6, 0x85, 0x5E, 0xB4, 0x5A, 0x78, 0x8D, 0x7A,\n0x50, 0x0B, 0x1F, 0xDF, 0x0C, 0x84, 0x44, 0xDB, 0xF4, 0xCA, 0x5D, 0x48, 0x84, 0xFC, 0xEE, 0xCD,\n0xFA, 0xFB, 0x7B, 0xBD, 0xFF, 0xF6, 0x2A, 0xE6, 0xDB, 0x41, 0x4D, 0x7C, 0x84, 0x38, 0x0A, 0xD5,\n0xD7, 0xC0, 0x63, 0x41, 0x7B, 0xDF, 0x87, 0x0E, 0x42, 0x3E, 0x21, 0xAF, 0x45, 0x33, 0x9B, 0x98,\n0x31, 0xBA, 0xB2, 0x85, 0x71, 0xA2, 0x3F, 0x6A, 0x05, 0xA4, 0x64, 0x1E, 0xF9, 0xE6, 0xA3, 0xD0,\n0xDF, 0x22, 0xC4, 0x1B, 0xC5, 0x3A, 0x99, 0x4C, 0x20, 0xC4, 0xE0, 0x43, 0xDA, 0xD7, 0x91, 0x5F,\n0xAC, 0x06, 0xD3, 0x59, 0x0C, 0xE7, 0xBF, 0x55, 0xCC, 0xDD, 0xE6, 0x25, 0xAA, 0xE3, 0x6E, 0x35,\n0xBC, 0xB0, 0xBE, 0x8A, 0xC5, 0x58, 0x3A, 0xFE, 0x6C, 0x98, 0x7D, 0xFF, 0x90, 0x7C, 0xFB, 0x08,\n0x45, 0x6D, 0xDB, 0x87, 0x24, 0x0F, 0xF9, 0xFA, 0xF3, 0xAD, 0xD5, 0x7D, 0xF8, 0x47, 0x13, 0x21,\n0x9F, 0x89, 0x8F, 0xA8, 0xBB, 0xFC, 0x68, 0x94, 0xD6, 0xBB, 0x6E, 0xE0, 0x63, 0x8F, 0x84, 0x1C,\n0x48, 0xAF, 0xB5, 0xF0, 0x11, 0x5A, 0xF7, 0x0D, 0x7C, 0xE0, 0x21, 0x3E, 0x20, 0xF5, 0x30, 0x44,\n0x7C, 0xF8, 0x84, 0xF4, 0xEB, 0x81, 0x0F, 0x11, 0xF2, 0x9E, 0xD3, 0xCB, 0x4A, 0x7C, 0xEC, 0xCF,\n0x43, 0x56, 0xA9, 0x5B, 0xD6, 0x75, 0xE1, 0x1E, 0x71, 0x1A, 0x4C, 0x36, 0x12, 0x93, 0x96, 0x74,\n0x6A, 0x8C, 0x15, 0xFD, 0x97, 0x01, 0x8F, 0xB1, 0xC9, 0x98, 0x7C, 0xC8, 0x40, 0xD4, 0xCB, 0xDA,\n0x58, 0xC4, 0xD7, 0xCF, 0xD7, 0xE2, 0x63, 0x94, 0xFC, 0x61, 0xAB, 0x7E, 0xBF, 0x83, 0x90, 0xE4,\n0x11, 0x51, 0xE5, 0x4B, 0x54, 0xB7, 0xA3, 0x6E, 0x6C, 0xFB, 0x10, 0x23, 0x9B, 0xBD, 0x8F, 0x59,\n0x53, 0xE1, 0xE8, 0xC4, 0xD4, 0x5D, 0xC9, 0x3F, 0xF6, 0x48, 0xC8, 0xC1, 0x28, 0x07, 0x8F, 0x83,\n0x33, 0xF1, 0x01, 0x21, 0x1E, 0x1F, 0x10, 0xE2, 0x03, 0x52, 0x0F, 0x43, 0xF4, 0xAE, 0x89, 0x90,\n0xA9, 0x93, 0x49, 0x97, 0x44, 0xC8, 0xD9, 0x6B, 0x9E, 0x7D, 0x48, 0xAF, 0xED, 0x85, 0x90, 0x05,\n0x91, 0x4B, 0x37, 0x7C, 0xE1, 0xC9, 0x46, 0x86, 0x5A, 0xF3, 0x55, 0xD4, 0x22, 0x43, 0xFF, 0xE5,\n0x2A, 0xDA, 0x8B, 0x8A, 0xD9, 0xCD, 0xBA, 0x11, 0x1E, 0xBE, 0x87, 0xC0, 0xC7, 0xFD, 0x76, 0x0F,\n0x51, 0xFF, 0x0A, 0x11, 0x66, 0x14, 0x96, 0x54, 0x7D, 0x0D, 0x1F, 0x1E, 0x21, 0x9F, 0x25, 0xB7,\n0x8C, 0x12, 0xBB, 0x2E, 0x36, 0xF4, 0xA2, 0x03, 0x14, 0x45, 0x4B, 0xDA, 0xB6, 0xD9, 0xA0, 0xA3,\n0x09, 0x21, 0xFB, 0xE0, 0xC3, 0xF6, 0x10, 0xF8, 0x80, 0x10, 0x83, 0x0F, 0x08, 0x71, 0x01, 0xC1,\n0x2E, 0x10, 0x9B, 0xE1, 0xC3, 0x23, 0xA4, 0x9F, 0x4F, 0xD0, 0x10, 0xAA, 0x3B, 0x80, 0x20, 0x37,\n0xFA, 0xF6, 0xB5, 0x82, 0x90, 0xF3, 0xD5, 0x60, 0x22, 0x57, 0x1B, 0x23, 0x49, 0xE7, 0xCA, 0x55,\n0x27, 0x38, 0xD2, 0x99, 0x72, 0xB5, 0x41, 0x23, 0xA4, 0xA6, 0xF3, 0xD5, 0xCD, 0x56, 0x3E, 0xD0,\n0x4D, 0x10, 0xB2, 0xC5, 0x44, 0xC4, 0x07, 0x7A, 0xF4, 0xBB, 0x52, 0x4C, 0x5A, 0xDF, 0x68, 0xE8,\n0x8B, 0x21, 0xBD, 0x45, 0x48, 0xEF, 0x26, 0x43, 0x1A, 0xDF, 0x3D, 0x55, 0xF0, 0x61, 0x10, 0x12,\n0x3B, 0x37, 0xEE, 0xAA, 0x6A, 0x9D, 0x2C, 0x3A, 0x99, 0x88, 0x8E, 0xC6, 0x50, 0x69, 0x49, 0xDB,\n0xBA, 0xAB, 0xA8, 0x0E, 0x16, 0xD2, 0x1E, 0x08, 0x01, 0x0F, 0xD7, 0x43, 0x5E, 0x13, 0x1F, 0x34,\n0xB5, 0xDE, 0xE2, 0x03, 0x42, 0x3C, 0x40, 0xAA, 0x81, 0xC7, 0x1B, 0xF0, 0xC1, 0x1B, 0xCF, 0xFA,\n0x3A, 0x21, 0xE9, 0x43, 0x43, 0xC8, 0x96, 0x73, 0x01, 0x87, 0x65, 0xF7, 0x84, 0xE0, 0x1F, 0x10,\n0xA2, 0x13, 0xA3, 0x9C, 0x64, 0xA5, 0x73, 0xE3, 0xD8, 0x1C, 0xE4, 0x20, 0xDD, 0x67, 0x23, 0x1B,\n0xA9, 0xD9, 0x78, 0x7C, 0x98, 0x1E, 0xF2, 0x75, 0xC6, 0xC7, 0xF5, 0x9D, 0xE7, 0x1F, 0xE8, 0x5E,\n0x08, 0x8E, 0xA6, 0x11, 0x70, 0x48, 0x69, 0x21, 0x2A, 0x3E, 0x8F, 0x15, 0x88, 0xB0, 0xAB, 0x1B,\n0x1F, 0xE9, 0xE4, 0xA5, 0x69, 0x8E, 0xC0, 0x3C, 0x39, 0xEB, 0x55, 0x72, 0x10, 0x75, 0xAF, 0xD0,\n0x7E, 0xF8, 0x40, 0x5B, 0xFC, 0x63, 0x29, 0x3E, 0xD0, 0xBC, 0xCE, 0xC7, 0xF4, 0x28, 0x6B, 0xC8,\n0x26, 0x20, 0xF5, 0x61, 0x2C, 0xF8, 0xE0, 0x8D, 0x8F, 0xA6, 0x6B, 0x8F, 0x0F, 0xE9, 0xCD, 0xBA,\n0x87, 0x60, 0x1F, 0xFB, 0x20, 0xE4, 0x42, 0xF1, 0xF9, 0x28, 0x3C, 0x44, 0xDF, 0xBC, 0x8A, 0x80,\n0xD1, 0xCB, 0x10, 0x96, 0x88, 0x8E, 0xB1, 0x52, 0x5D, 0xF7, 0x90, 0xD4, 0xBD, 0x42, 0x37, 0x43,\n0x33, 0xBD, 0x2F, 0xB9, 0x87, 0x5E, 0xEF, 0x9E, 0xC8, 0x8B, 0xCF, 0xD1, 0x68, 0x1A, 0x09, 0x91,\n0xF1, 0xDD, 0xB5, 0xF5, 0xEB, 0x5B, 0x64, 0x79, 0x48, 0xDA, 0x49, 0xEA, 0xF1, 0x74, 0x21, 0x30,\n0x54, 0x75, 0xC9, 0x46, 0xBA, 0xA8, 0xE1, 0x63, 0x2F, 0x88, 0x3C, 0x6D, 0x08, 0x55, 0xFF, 0x58,\n0x5E, 0xBE, 0x39, 0x41, 0x10, 0x62, 0xF2, 0x01, 0x21, 0x3E, 0x20, 0x45, 0x37, 0x39, 0x7A, 0x22,\n0x12, 0x22, 0x35, 0x3E, 0xD0, 0x65, 0xDC, 0x14, 0x65, 0xF1, 0xB1, 0x87, 0x50, 0x7D, 0x81, 0x20,\n0x24, 0x42, 0x4E, 0x85, 0xA3, 0xE9, 0x7B, 0x1F, 0xF0, 0xD8, 0x44, 0x22, 0x5D, 0x86, 0x87, 0x66,\n0xC7, 0x3F, 0xD0, 0x8D, 0x86, 0x7B, 0xCB, 0x82, 0x8F, 0xCC, 0x43, 0xE8, 0x54, 0x51, 0xC3, 0x47,\n0xEE, 0x21, 0x92, 0xA8, 0xC8, 0x74, 0x0B, 0xAF, 0xA8, 0xEE, 0x1F, 0x8F, 0x76, 0x55, 0x6B, 0x3A,\n0x24, 0xC2, 0x44, 0x55, 0x02, 0x45, 0x6B, 0x85, 0xA3, 0xB9, 0x17, 0x3E, 0x50, 0xA5, 0x5B, 0x7E,\n0x32, 0xBF, 0x9C, 0x48, 0x0E, 0x21, 0xEB, 0x75, 0x0F, 0x1F, 0xA8, 0x1D, 0x10, 0x44, 0x7A, 0xB0,\n0x81, 0x90, 0x3E, 0xF8, 0x28, 0x29, 0x08, 0x31, 0xC2, 0x0F, 0xB4, 0x07, 0x3E, 0x90, 0x12, 0x22,\n0xFA, 0xE6, 0x93, 0x95, 0xC4, 0x6B, 0x3A, 0x6F, 0x12, 0xAF, 0xAA, 0x4A, 0xF3, 0xF3, 0xFE, 0x51,\n0x96, 0x1A, 0x6F, 0xC1, 0x44, 0xEE, 0xEF, 0x50, 0xD1, 0x43, 0xA0, 0xE3, 0x79, 0x3E, 0xBE, 0x97,\n0x87, 0x44, 0x09, 0xF1, 0xEE, 0x2A, 0xB7, 0x65, 0xD5, 0xE3, 0x0F, 0x76, 0x35, 0xAD, 0xC9, 0x33,\n0x92, 0x79, 0x74, 0x29, 0x06, 0x91, 0xEB, 0x26, 0xFF, 0xC8, 0xB4, 0x1F, 0x3E, 0x20, 0xE4, 0xD9,\n0xF4, 0x60, 0xB1, 0xA5, 0xCD, 0x2D, 0x3E, 0x90, 0x07, 0xC8, 0x87, 0x4F, 0x2E, 0xDE, 0x65, 0xF1,\n0xA8, 0xA4, 0xBF, 0x19, 0xEE, 0xCD, 0xF8, 0x00, 0x6A, 0x54, 0x49, 0x88, 0x1C, 0x94, 0xF5, 0xDA,\n0xAE, 0x7A, 0x59, 0xAB, 0xF3, 0x72, 0x12, 0x7E, 0xFC, 0xEA, 0x15, 0xA6, 0x8F, 0x8B, 0xC4, 0xAB,\n0x52, 0xC2, 0x43, 0x0B, 0x16, 0x1F, 0x28, 0xA2, 0xE5, 0x82, 0x8A, 0x74, 0x30, 0x98, 0x55, 0x19,\n0xDE, 0xCD, 0x75, 0xAD, 0xF7, 0x0F, 0xE2, 0x32, 0xFF, 0x68, 0x23, 0x04, 0x38, 0xB4, 0x9B, 0xAC,\n0xA5, 0x0E, 0x16, 0x0E, 0xA2, 0xD8, 0x1D, 0x3E, 0x76, 0x4C, 0x08, 0x7C, 0xF8, 0x84, 0xC0, 0x47,\n0xAE, 0x69, 0x5F, 0xE4, 0x43, 0x27, 0xFA, 0x82, 0x7C, 0x07, 0xA1, 0x7F, 0xC5, 0x22, 0xE1, 0x47,\n0x2E, 0x08, 0x29, 0x0C, 0xEF, 0xDA, 0x84, 0x14, 0x01, 0xD9, 0x61, 0xCA, 0x90, 0xF0, 0x03, 0x8D,\n0x09, 0x91, 0x34, 0x68, 0x15, 0x0B, 0xE3, 0x38, 0x4D, 0xEA, 0x62, 0xC4, 0x3C, 0x2E, 0xE1, 0x22,\n0x37, 0x36, 0x1F, 0x24, 0x44, 0x70, 0x11, 0x8D, 0x2F, 0xDD, 0x55, 0xE4, 0xC5, 0x1F, 0x28, 0x39,\n0x48, 0x54, 0x63, 0xF8, 0xA1, 0xF4, 0x60, 0x0B, 0x21, 0xF0, 0xC0, 0x5E, 0x8F, 0x6B, 0x5D, 0x72,\n0x91, 0xD1, 0x41, 0x86, 0x19, 0x3E, 0x76, 0x4A, 0x08, 0x7C, 0xB8, 0x84, 0x90, 0x1E, 0x2C, 0x6B,\n0xDD, 0xD7, 0x87, 0xAF, 0xDC, 0x40, 0x04, 0x40, 0xF0, 0x10, 0x44, 0x78, 0xEE, 0x10, 0x02, 0x1F,\n0x15, 0x42, 0xC2, 0x16, 0x3D, 0xFF, 0x90, 0x2E, 0x0E, 0x5E, 0x7C, 0xE4, 0x17, 0xF8, 0x47, 0x81,\n0x90, 0x2B, 0x25, 0xD4, 0x93, 0x87, 0xA8, 0x7B, 0x55, 0x70, 0x10, 0x66, 0x8B, 0x0F, 0xA4, 0x18,\n0xC1, 0xF2, 0x0F, 0x29, 0xEF, 0x60, 0xC9, 0x3F, 0x6A, 0x1A, 0xF1, 0x50, 0x30, 0x92, 0xFB, 0x87,\n0x13, 0xAA, 0x6F, 0xF6, 0x0A, 0xEF, 0x50, 0xC5, 0x9A, 0x4E, 0x19, 0x9B, 0x13, 0x48, 0x2C, 0x05,\n0x28, 0xB5, 0x0B, 0xE5, 0xF6, 0xC9, 0x07, 0x84, 0xE4, 0xE9, 0x0F, 0x93, 0x10, 0xF8, 0x68, 0x27,\n0x04, 0x40, 0x2A, 0x7C, 0x18, 0x84, 0x90, 0x3E, 0xAF, 0x11, 0xF2, 0x26, 0x84, 0xC0, 0x47, 0x85,\n0x90, 0xF3, 0x97, 0xE9, 0x02, 0xFF, 0x28, 0x7E, 0xA7, 0xBA, 0x76, 0x51, 0xFD, 0x6C, 0xE1, 0xD1,\n0x61, 0x1B, 0x05, 0x07, 0x89, 0xD5, 0x4A, 0x7A, 0xB0, 0x18, 0xA9, 0x87, 0x46, 0x13, 0xA9, 0xF3,\n0x51, 0x4E, 0xAA, 0x7F, 0x7F, 0x57, 0x17, 0x43, 0xBD, 0xA4, 0xCF, 0x2B, 0x2A, 0x86, 0x1F, 0xEC,\n0x64, 0x8E, 0x48, 0x0A, 0xCA, 0x93, 0x83, 0x10, 0x7E, 0xEC, 0x8B, 0x90, 0x83, 0xBA, 0x4A, 0xE9,\n0x73, 0x8F, 0x10, 0xF8, 0xA8, 0x11, 0x62, 0x01, 0xF2, 0xA1, 0xCB, 0x07, 0xEF, 0x7B, 0xB4, 0x5E,\n0x83, 0x47, 0xCD, 0x3F, 0x48, 0xAA, 0x1B, 0x7C, 0xEC, 0x64, 0xB8, 0xF7, 0xA2, 0xFE, 0x8D, 0xCA,\n0x43, 0x36, 0x03, 0x59, 0x69, 0x14, 0x0B, 0xDB, 0x60, 0x01, 0x3C, 0x42, 0x0C, 0xF7, 0xE2, 0x1F,\n0x75, 0x0F, 0xB9, 0xC7, 0x44, 0xB6, 0xF2, 0x41, 0x42, 0x04, 0xFF, 0xA8, 0x4B, 0xCE, 0x91, 0xA5,\n0xCF, 0x0D, 0x0F, 0xC1, 0x3F, 0x70, 0x10, 0x48, 0x61, 0xC7, 0x75, 0xEE, 0x48, 0x31, 0x08, 0x7C,\n0xEC, 0x87, 0x90, 0x83, 0xAD, 0xAA, 0xA6, 0x3F, 0x10, 0x29, 0x43, 0x8F, 0x0F, 0x08, 0x69, 0x77,\n0x90, 0x5F, 0xE1, 0xA3, 0x42, 0xC8, 0x74, 0x44, 0xA4, 0x57, 0xFA, 0xBC, 0xAE, 0xF9, 0x7C, 0x89,\n0x87, 0x10, 0x7F, 0xEC, 0x85, 0x10, 0xA5, 0x3F, 0xEA, 0x1A, 0xE2, 0x90, 0x34, 0x8A, 0xB5, 0x18,\n0xF8, 0xC0, 0x36, 0x38, 0x91, 0x82, 0x08, 0x49, 0x75, 0xAE, 0xBE, 0xAA, 0xEA, 0x86, 0x44, 0x05,\n0xC3, 0xBB, 0x6E, 0x1C, 0x12, 0xC0, 0xD4, 0x44, 0x42, 0xE4, 0x9A, 0xFE, 0x95, 0x4F, 0x08, 0xC3,\n0x57, 0xEC, 0x6A, 0x5A, 0x04, 0x12, 0x85, 0x67, 0x43, 0xFF, 0x0A, 0x3E, 0x2A, 0xDA, 0x1F, 0x1F,\n0x79, 0x42, 0x04, 0x3E, 0x2A, 0x9A, 0xE7, 0xE9, 0x0F, 0x83, 0x10, 0x0F, 0x10, 0x46, 0xB1, 0x8E,\n0xB6, 0x8B, 0x3B, 0x44, 0x82, 0x8F, 0x93, 0xC9, 0x56, 0xBD, 0x3E, 0x8F, 0x1B, 0x6B, 0x6D, 0x3C,\n0x7C, 0x42, 0xFC, 0xF8, 0x23, 0x4F, 0x88, 0x48, 0x57, 0xAB, 0x2E, 0x3B, 0x7B, 0x96, 0xF0, 0x08,\n0x15, 0xD3, 0x1F, 0xA8, 0x90, 0x32, 0x2C, 0xF8, 0xC7, 0xF7, 0xAA, 0xEA, 0x1E, 0x72, 0x57, 0x16,\n0xFF, 0x1F, 0xD7, 0xBF, 0x93, 0x3E, 0xAF, 0x49, 0x40, 0xD3, 0xBF, 0xE2, 0x64, 0x20, 0xB1, 0xF2,\n0xE8, 0x18, 0x2C, 0x74, 0xA5, 0x81, 0x86, 0xAF, 0x0C, 0xED, 0x85, 0x0F, 0x84, 0x7F, 0x44, 0xE6,\n0x79, 0xBB, 0xE6, 0x16, 0x1F, 0xA8, 0x0E, 0xC8, 0xB7, 0x9A, 0x3E, 0xCC, 0xEE, 0xFE, 0x68, 0x20,\n0xA4, 0x9F, 0xC2, 0x47, 0x55, 0xE1, 0x21, 0xF0, 0xE1, 0x68, 0x4F, 0xFE, 0x41, 0x42, 0x44, 0x16,\n0x22, 0x71, 0xF6, 0x64, 0x4D, 0x33, 0x5B, 0x2D, 0xFF, 0x40, 0xC9, 0x42, 0xEE, 0xEB, 0xAD, 0x1D,\n0x95, 0xF8, 0xF8, 0xBE, 0x02, 0xD5, 0x38, 0xBC, 0x0B, 0x1F, 0x56, 0x20, 0x02, 0x09, 0x80, 0xC2,\n0x0A, 0xE7, 0x06, 0xDD, 0x82, 0xA9, 0xF4, 0xA0, 0xA5, 0xFD, 0xF1, 0x81, 0x87, 0xC4, 0xCD, 0xEA,\n0xF3, 0x89, 0xA5, 0x39, 0xE9, 0x0F, 0x4B, 0x96, 0x83, 0xC0, 0x88, 0xC1, 0x07, 0x29, 0x43, 0x8F,\n0x0F, 0xE9, 0x52, 0x29, 0x43, 0x83, 0x8F, 0x97, 0x5D, 0xDD, 0xBB, 0x90, 0x3C, 0x42, 0xBA, 0xF0,\n0x8F, 0xCF, 0xEA, 0x0E, 0xC2, 0x56, 0xCB, 0x3F, 0xF2, 0x84, 0x48, 0xC9, 0x2F, 0x6A, 0xF9, 0x90,\n0x3B, 0x5F, 0xE2, 0xC3, 0x17, 0xF1, 0xC7, 0x36, 0x07, 0x51, 0x15, 0x1E, 0xA2, 0xBB, 0x3F, 0x4C,\n0xED, 0x85, 0x0F, 0xF4, 0x1A, 0xE9, 0x0F, 0x8F, 0x90, 0x7E, 0xAA, 0xF4, 0x87, 0x29, 0x03, 0x10,\n0xC4, 0xBB, 0x1A, 0x84, 0x1C, 0x0E, 0x77, 0xD7, 0xDA, 0x9A, 0x4F, 0x0C, 0x3E, 0x5E, 0x92, 0x10,\n0xB9, 0xC0, 0x3F, 0x3C, 0x42, 0xB8, 0x72, 0x17, 0x48, 0x70, 0x90, 0x0C, 0x1D, 0xD7, 0x3F, 0x30,\n0x11, 0xBC, 0xC0, 0xB0, 0x91, 0xDF, 0xC1, 0xC3, 0xEB, 0x66, 0xC1, 0x87, 0x25, 0xF1, 0x51, 0x77,\n0x90, 0x98, 0x10, 0x7C, 0xEC, 0x83, 0x90, 0xC5, 0x02, 0x3E, 0x1C, 0x42, 0x48, 0x7F, 0x58, 0x5A,\n0xAF, 0x0F, 0xC5, 0x87, 0x29, 0x1B, 0x10, 0xF8, 0x30, 0xBB, 0x59, 0xFD, 0xC4, 0xF2, 0x0F, 0x52,\n0x86, 0x8B, 0x83, 0x16, 0x35, 0x1F, 0xF6, 0x16, 0x9D, 0x5F, 0x74, 0x30, 0x90, 0xF7, 0xCD, 0x71,\n0x10, 0xAE, 0x07, 0x0F, 0x3E, 0x0C, 0x31, 0xDC, 0x7B, 0xE7, 0x89, 0x38, 0x24, 0x47, 0xA1, 0x0E,\n0x09, 0x7C, 0x98, 0x84, 0x74, 0x39, 0x18, 0x21, 0xD6, 0xD8, 0x5F, 0x95, 0xAF, 0xBA, 0xD6, 0xC3,\n0xD9, 0xA8, 0xB6, 0x86, 0xD0, 0xC6, 0xC7, 0xC9, 0xA4, 0x6F, 0x6C, 0xC9, 0x5B, 0x62, 0x10, 0x22,\n0x91, 0x23, 0xE4, 0x58, 0x08, 0x03, 0x58, 0x56, 0x27, 0x2B, 0x2E, 0xEE, 0x3D, 0xDF, 0x1F, 0x21,\n0xD8, 0x87, 0xEF, 0x20, 0xC9, 0x30, 0x72, 0x4C, 0xF2, 0x31, 0x50, 0xD5, 0x9F, 0xDD, 0x22, 0xDF,\n0x41, 0xEA, 0x6D, 0x1E, 0x01, 0x88, 0xA7, 0xEF, 0x1B, 0x1D, 0x44, 0x09, 0x10, 0x58, 0xC8, 0xF7,\n0xFA, 0x49, 0xA6, 0x74, 0x85, 0x83, 0x78, 0xDA, 0x27, 0x1F, 0x11, 0x9F, 0x37, 0xE9, 0x95, 0x08,\n0x40, 0x9A, 0x08, 0xF1, 0x1C, 0xC4, 0xA5, 0x8E, 0xBB, 0x43, 0xFA, 0xC3, 0xF5, 0xE5, 0xC4, 0xD6,\n0xC9, 0x32, 0x6E, 0x10, 0xD9, 0x03, 0x21, 0xF0, 0xB1, 0x6A, 0x8B, 0x41, 0x82, 0x90, 0xF2, 0xB9,\n0x14, 0x07, 0x81, 0xA1, 0xAF, 0x6E, 0x08, 0x41, 0xCC, 0x30, 0xBD, 0xE6, 0x01, 0xF9, 0x4A, 0x53,\n0x08, 0xD2, 0x1E, 0x83, 0xDC, 0xC4, 0xC7, 0x67, 0x50, 0xB7, 0xB0, 0xD7, 0x59, 0xAA, 0xB4, 0x0B,\n0x35, 0x10, 0xB2, 0x8A, 0xB2, 0x47, 0xFF, 0x58, 0x4E, 0x9A, 0x08, 0x59, 0x1F, 0x3E, 0xB4, 0x12,\n0xF2, 0xB7, 0x01, 0x48, 0x6B, 0xFF, 0x6A, 0xF6, 0xB0, 0x1E, 0x08, 0xF1, 0xF9, 0x88, 0xE7, 0x7C,\n0x41, 0x88, 0xAB, 0x06, 0x3E, 0x54, 0x5A, 0xF8, 0xB8, 0xEA, 0xD4, 0x1A, 0x72, 0x34, 0xB4, 0x82,\n0x83, 0x48, 0x1A, 0x24, 0xFD, 0xEC, 0x2B, 0x9F, 0x0F, 0xA9, 0x06, 0x07, 0xE2, 0x39, 0x27, 0xFC,\n0x0D, 0x23, 0x58, 0x2C, 0x16, 0x46, 0xB1, 0x5C, 0xC5, 0x47, 0xDF, 0x10, 0xF2, 0x59, 0xD9, 0x41,\n0xA0, 0x63, 0xA3, 0x2B, 0x1D, 0x1E, 0x9F, 0x10, 0x1D, 0xF9, 0x9D, 0xE2, 0x81, 0x16, 0x03, 0x1F,\n0xD1, 0x76, 0x7C, 0x3E, 0xFA, 0xC3, 0x7E, 0xDD, 0xCF, 0x9A, 0x08, 0x39, 0xFD, 0x7B, 0x3B, 0x20,\n0x47, 0x8D, 0x7C, 0x4C, 0x1F, 0xFA, 0x41, 0x0F, 0x97, 0x27, 0x56, 0xFC, 0xB1, 0x5C, 0x6E, 0x9E,\n0xB7, 0xB8, 0x27, 0x42, 0x56, 0xE2, 0x43, 0x1E, 0xE2, 0xF1, 0xA1, 0x2B, 0x55, 0x17, 0xB4, 0x11,\n0xCE, 0xA1, 0xAA, 0xB2, 0xB6, 0x74, 0x93, 0xB2, 0x6D, 0x66, 0xFC, 0x91, 0xD2, 0x84, 0x20, 0xB2,\n0x85, 0x94, 0xDF, 0x82, 0x0E, 0xC9, 0xF7, 0x0F, 0x5D, 0xC8, 0x62, 0xFB, 0xC7, 0x57, 0x9B, 0xA9,\n0xE0, 0x20, 0xE0, 0xC1, 0x81, 0xD0, 0x75, 0x38, 0x7E, 0x9C, 0x9E, 0x0E, 0xFD, 0x6E, 0xF9, 0xC0,\n0x3F, 0x4E, 0x82, 0x8F, 0xA1, 0xD8, 0xFE, 0xA1, 0x66, 0x39, 0x85, 0x10, 0x4F, 0x35, 0x40, 0xE0,\n0xA3, 0xC9, 0x3F, 0xA4, 0x43, 0x23, 0x52, 0x7F, 0x53, 0x7C, 0xEC, 0x93, 0x90, 0xD5, 0x08, 0x88,\n0xC5, 0xC7, 0x4A, 0xA9, 0xE2, 0xD1, 0x43, 0xE0, 0x21, 0x47, 0x24, 0x0A, 0xD7, 0x9A, 0xC4, 0x6C,\n0xF6, 0xB2, 0xBE, 0xE1, 0x69, 0x0A, 0x19, 0x21, 0x15, 0xFF, 0x08, 0x46, 0x06, 0x4A, 0x5C, 0x3C,\n0x5A, 0x3C, 0x64, 0xF3, 0xF1, 0x55, 0xE0, 0x22, 0x8F, 0xD6, 0x41, 0x64, 0xB5, 0x48, 0x97, 0x63,\n0x45, 0x75, 0xEE, 0xF2, 0xA1, 0xB2, 0x17, 0x3E, 0x86, 0xBE, 0xF9, 0xA6, 0x58, 0x91, 0xEE, 0x43,\n0xBF, 0xD1, 0xC3, 0x43, 0x2B, 0x21, 0x15, 0x40, 0xDA, 0xC3, 0x73, 0xF1, 0x21, 0x1D, 0xCE, 0x0E,\n0xB7, 0x7A, 0xC8, 0x9B, 0xB1, 0x8F, 0xEC, 0xE5, 0x59, 0x5B, 0xA8, 0xEE, 0x74, 0xAF, 0x84, 0x87,\n0xE7, 0x21, 0xE2, 0x23, 0xF0, 0x48, 0x8F, 0x36, 0x89, 0x86, 0x90, 0xE3, 0x91, 0xDF, 0x47, 0x24,\n0x3E, 0x62, 0xD2, 0xEC, 0x20, 0xF2, 0x75, 0x3A, 0xC1, 0xEB, 0x45, 0x7E, 0x61, 0xF0, 0x11, 0xE5,\n0xFB, 0x58, 0xF8, 0x6D, 0xFB, 0x30, 0x6F, 0xC2, 0x23, 0x99, 0xD4, 0x8D, 0x97, 0x03, 0xB9, 0x49,\n0x35, 0x58, 0xE4, 0x26, 0xC2, 0x13, 0x4E, 0x82, 0x8C, 0xF1, 0x0C, 0xB2, 0x3A, 0x37, 0xF0, 0xA0,\n0xEC, 0x3E, 0x3C, 0x3F, 0xA3, 0xE9, 0x38, 0x1E, 0x32, 0x17, 0x1F, 0xD2, 0x94, 0xB1, 0x5E, 0x53,\n0x15, 0x40, 0x5A, 0xFD, 0xE3, 0x70, 0xCD, 0x07, 0x09, 0x0F, 0xD9, 0x4A, 0x48, 0xEC, 0x1C, 0x65,\n0xA7, 0x84, 0x10, 0x7F, 0x50, 0xEA, 0x78, 0xA4, 0xF8, 0x5C, 0x37, 0x85, 0xE8, 0xB9, 0x81, 0xB9,\n0x83, 0x64, 0x77, 0xA2, 0x06, 0x1F, 0xA2, 0x43, 0xF3, 0xCD, 0x67, 0x5B, 0x09, 0xD9, 0x34, 0x5D,\n0x41, 0xA2, 0x76, 0x7C, 0xB7, 0x45, 0x81, 0xC6, 0x60, 0x1F, 0x2A, 0x43, 0x57, 0xCB, 0xF0, 0x0F,\n0x10, 0xD9, 0x4E, 0x48, 0x84, 0x1E, 0xE3, 0x67, 0x57, 0x0D, 0x14, 0x9B, 0x82, 0xB4, 0x92, 0x2E,\n0xE0, 0x4C, 0x16, 0x02, 0x21, 0x1E, 0x20, 0x8B, 0xDD, 0xF3, 0x41, 0xBB, 0x31, 0x3C, 0x64, 0xDE,\n0xA3, 0x87, 0x7E, 0x7D, 0x78, 0xD4, 0x48, 0x48, 0x19, 0x90, 0x76, 0x3E, 0xFA, 0x81, 0x0F, 0x34,\n0x3B, 0xAC, 0x0F, 0xF7, 0x6A, 0x27, 0x29, 0xE1, 0x21, 0xE7, 0xBB, 0x24, 0x24, 0x7D, 0x49, 0x94,\n0x3A, 0x1F, 0xBA, 0x8A, 0x42, 0xD7, 0xE3, 0xAD, 0x36, 0xF5, 0x55, 0xD6, 0xAD, 0xCA, 0x1C, 0x04,\n0xF3, 0x50, 0xB5, 0xCD, 0x43, 0x78, 0xD0, 0x88, 0xD7, 0xCB, 0xFA, 0x6E, 0x03, 0xC7, 0xF7, 0x09,\n0x93, 0xA8, 0xEF, 0xAA, 0x1A, 0xCD, 0x89, 0xAA, 0xCE, 0x07, 0xEE, 0x97, 0x28, 0x01, 0x8A, 0x27,\n0xFD, 0x2D, 0xF9, 0x47, 0xBA, 0xEB, 0x36, 0x66, 0xDD, 0x0C, 0x50, 0x4F, 0x88, 0xAC, 0xF2, 0xB2,\n0xEB, 0xE1, 0x5D, 0xB5, 0x18, 0x8A, 0xC1, 0x07, 0x6A, 0x27, 0xA4, 0x0C, 0x48, 0x7B, 0xFA, 0xE3,\n0x95, 0x7E, 0x10, 0x0E, 0xC2, 0x15, 0x8B, 0x35, 0xFF, 0xA0, 0xEC, 0x34, 0x21, 0xB2, 0x20, 0xFE,\n0xA0, 0xD4, 0xF9, 0x58, 0x05, 0x15, 0xC9, 0x42, 0x54, 0xA5, 0x76, 0x52, 0x74, 0x10, 0x35, 0x2A,\n0x10, 0xC1, 0x43, 0xCA, 0xE1, 0xB9, 0x1A, 0xAD, 0x66, 0xAA, 0xAA, 0x7F, 0x44, 0xB7, 0x4A, 0x90,\n0x04, 0x1B, 0x23, 0x23, 0xC6, 0xDD, 0x20, 0xAA, 0x9D, 0x3B, 0x42, 0x86, 0xBB, 0x59, 0x08, 0xA1,\n0xB8, 0x62, 0x11, 0x30, 0x50, 0x2C, 0x2F, 0x02, 0x89, 0x63, 0x21, 0x22, 0x23, 0xD1, 0x3D, 0xFB,\n0x35, 0x42, 0x0A, 0x47, 0x7E, 0x87, 0xC3, 0xBB, 0x67, 0x4F, 0xDB, 0x4E, 0x9D, 0x8F, 0xC3, 0x9C,\n0x90, 0xBE, 0x9D, 0x90, 0x1C, 0x90, 0x76, 0x3E, 0xA6, 0xEB, 0x3E, 0xD7, 0xE1, 0xEC, 0x95, 0x67,\n0xA3, 0x26, 0xFC, 0x03, 0x40, 0x4E, 0x76, 0x47, 0xC8, 0xA2, 0xE3, 0xDB, 0xA9, 0x07, 0x22, 0xFA,\n0xEE, 0x36, 0x57, 0x72, 0x87, 0x69, 0x8C, 0xF7, 0x15, 0xAE, 0xBA, 0xA1, 0x55, 0x10, 0x70, 0x64,\n0x0E, 0x72, 0x73, 0x93, 0x39, 0x48, 0xDD, 0x43, 0x0A, 0x78, 0xD4, 0x3C, 0xE4, 0x7B, 0x0D, 0xEF,\n0xAA, 0x73, 0xF5, 0x67, 0xB0, 0x31, 0xCC, 0x77, 0xD5, 0x48, 0x9D, 0xE8, 0x9F, 0xAA, 0x42, 0xC8,\n0x13, 0xF3, 0x93, 0x89, 0x6C, 0x76, 0x14, 0x81, 0xCA, 0xC6, 0x39, 0x74, 0x88, 0x56, 0x09, 0x94,\n0x55, 0xC5, 0x43, 0x56, 0xA5, 0xB2, 0x4B, 0xFF, 0x28, 0xB4, 0x9D, 0x5A, 0x7A, 0x10, 0xE1, 0x21,\n0xED, 0x29, 0xC3, 0x1C, 0x90, 0xF6, 0xF4, 0xC7, 0x43, 0xEF, 0x13, 0x42, 0x7C, 0x4E, 0x21, 0x21,\n0xE2, 0xCB, 0x0B, 0x3F, 0x28, 0xCF, 0x0F, 0xEF, 0xEA, 0xBB, 0x8F, 0x29, 0x99, 0x48, 0x17, 0xB4,\n0x2C, 0x8E, 0x73, 0x2E, 0xC6, 0xC5, 0x1B, 0x9A, 0x98, 0xE6, 0x9A, 0x87, 0x88, 0x8F, 0x82, 0x83,\n0x94, 0x3D, 0x84, 0xF4, 0xE0, 0xC6, 0x42, 0x52, 0x91, 0x95, 0x7C, 0x57, 0xF1, 0x8F, 0x9C, 0x0E,\n0x6D, 0x79, 0x36, 0xFD, 0xF1, 0xD8, 0xFC, 0x46, 0xBE, 0xB1, 0x4C, 0x55, 0xA4, 0xCF, 0x15, 0x95,\n0x8D, 0x0E, 0xA2, 0x5A, 0x87, 0x67, 0x71, 0xEE, 0x00, 0x82, 0x87, 0xEC, 0x2A, 0x3D, 0x58, 0x6A,\n0x39, 0x67, 0x95, 0xF4, 0x47, 0x89, 0x90, 0x87, 0xF6, 0x94, 0x21, 0x80, 0x88, 0x8F, 0xD3, 0x36,\n0x3E, 0x88, 0x3F, 0x32, 0xAD, 0x8D, 0xF0, 0xA3, 0x9D, 0x10, 0x54, 0x09, 0x3F, 0x1C, 0x0F, 0xE1,\n0x22, 0x77, 0xBA, 0x57, 0x72, 0x90, 0xB4, 0x7E, 0x0C, 0x17, 0xBC, 0xD0, 0x31, 0xD9, 0x54, 0x2C,\n0x96, 0xF9, 0xD0, 0x8D, 0x1A, 0xC4, 0x20, 0xF7, 0x43, 0x25, 0xD5, 0xC7, 0x77, 0x63, 0x8E, 0x2A,\n0x2D, 0x56, 0x22, 0x75, 0xA0, 0x88, 0x7F, 0x23, 0xDE, 0x9D, 0x47, 0x2C, 0x96, 0xF9, 0xE0, 0xE3,\n0xF2, 0xD9, 0x35, 0x15, 0x6E, 0x24, 0x8C, 0x6A, 0xA1, 0x3B, 0x00, 0xC6, 0x43, 0x24, 0x2F, 0x91,\n0x83, 0x90, 0x10, 0xA9, 0xE1, 0x41, 0x71, 0xF0, 0x68, 0xE7, 0x83, 0x52, 0x49, 0x7F, 0x94, 0x08,\n0x99, 0x35, 0x12, 0x02, 0x20, 0xED, 0xDD, 0xAB, 0x37, 0x66, 0xE0, 0xE1, 0x10, 0x52, 0xB2, 0x8F,\n0x5D, 0x26, 0x44, 0x88, 0x3E, 0x0A, 0xA5, 0x18, 0x7F, 0x68, 0x70, 0x26, 0xE6, 0x98, 0x74, 0x82,\n0xD4, 0x89, 0x32, 0xEA, 0x45, 0x34, 0x90, 0x1C, 0x91, 0x3C, 0xFC, 0x00, 0x97, 0x72, 0xCA, 0x10,\n0xF7, 0xD0, 0xC3, 0x0E, 0x1F, 0x8D, 0xC6, 0x96, 0xF9, 0x88, 0xE0, 0x7C, 0xA0, 0x61, 0xC0, 0xE2,\n0xFB, 0xF4, 0xB2, 0xE1, 0xA4, 0x84, 0xC8, 0x98, 0x5D, 0x11, 0x86, 0xE9, 0xD1, 0x58, 0xFF, 0xBE,\n0x7F, 0xD1, 0x3F, 0x32, 0xAE, 0xFF, 0xBB, 0x90, 0x25, 0xCF, 0xF5, 0xB4, 0x06, 0x45, 0x1C, 0xE1,\n0x22, 0x3A, 0x24, 0x32, 0x90, 0xA8, 0x55, 0x4A, 0x84, 0xD4, 0x8E, 0xFC, 0x2E, 0xD2, 0x83, 0xB5,\n0xB6, 0xF3, 0x44, 0x97, 0x74, 0xFB, 0xD1, 0xFF, 0x4E, 0x88, 0x00, 0x48, 0x7B, 0xFA, 0x03, 0x3E,\n0x0A, 0x84, 0x5C, 0x1A, 0xFE, 0x41, 0x89, 0xE7, 0x01, 0xB5, 0xA9, 0x94, 0xFE, 0xF0, 0x09, 0xD9,\n0x3C, 0xAC, 0x21, 0x8D, 0xEF, 0xF2, 0x7C, 0xE6, 0xF4, 0x3C, 0xC1, 0x20, 0x27, 0x4F, 0x80, 0x88,\n0x8F, 0xA2, 0x83, 0x68, 0x2E, 0x3F, 0x57, 0xF1, 0xEB, 0xAC, 0x83, 0xA5, 0x0D, 0x52, 0x01, 0x8F,\n0xB1, 0x53, 0xC5, 0x8B, 0x16, 0xB5, 0xF2, 0xDB, 0xB3, 0xE9, 0x73, 0x30, 0x4C, 0x75, 0x39, 0x52,\n0xE7, 0x33, 0x67, 0x70, 0xC8, 0x50, 0x9E, 0x38, 0x88, 0xFA, 0x56, 0x62, 0xE2, 0xB8, 0x1B, 0x87,\n0xB0, 0x16, 0x69, 0x23, 0x09, 0x11, 0xE8, 0xA8, 0x97, 0x9D, 0xA5, 0xCF, 0xCB, 0xC5, 0xF0, 0x8F,\n0x97, 0x10, 0x02, 0x20, 0x6C, 0xB3, 0x00, 0x91, 0x7F, 0xD4, 0x34, 0x39, 0x31, 0xFD, 0x83, 0x84,\n0x48, 0x8B, 0x0A, 0xE9, 0xF3, 0x6A, 0xC9, 0xF9, 0x18, 0x9F, 0xF0, 0x2F, 0x07, 0x19, 0x63, 0x10,\n0x86, 0x6D, 0xF2, 0xE1, 0xAB, 0x9C, 0x0E, 0x1C, 0x45, 0x27, 0xE7, 0x42, 0xF8, 0x91, 0xDC, 0x03,\n0x44, 0xB4, 0x96, 0x7E, 0xC8, 0xE3, 0xE9, 0xF0, 0xD5, 0xC0, 0x83, 0xC2, 0x73, 0x96, 0x14, 0xAA,\n0x97, 0x06, 0xB3, 0x1E, 0x31, 0x91, 0xFE, 0x8D, 0xD1, 0x47, 0xA2, 0x70, 0x7B, 0x61, 0xD6, 0xBF,\n0xCA, 0xD8, 0x60, 0x23, 0x39, 0xD1, 0x50, 0x7A, 0x90, 0x49, 0x98, 0x88, 0x86, 0x79, 0xB5, 0xCA,\n0x63, 0x16, 0xF5, 0xEB, 0x20, 0xE7, 0x06, 0x20, 0x94, 0x17, 0xA6, 0x3F, 0xB6, 0xB5, 0x9D, 0xCC,\n0x3F, 0xFA, 0xAA, 0x1E, 0xDA, 0x53, 0x86, 0x09, 0x90, 0xA3, 0x36, 0x29, 0xFC, 0xA8, 0x6B, 0x9E,\n0x0D, 0x5F, 0xD5, 0x0B, 0x09, 0x11, 0x53, 0x56, 0x7C, 0x4E, 0xC9, 0xD3, 0xE7, 0xC2, 0xA3, 0x53,\n0x43, 0xE0, 0x67, 0x30, 0x16, 0xC3, 0xA2, 0x68, 0x59, 0xE1, 0x20, 0x4F, 0xFB, 0x57, 0xB4, 0x2F,\n0xAA, 0x6C, 0xF8, 0x8A, 0x0E, 0xD6, 0xBD, 0x16, 0xF2, 0x27, 0x58, 0x65, 0xFE, 0xA1, 0x68, 0x7C,\n0x44, 0x43, 0x8B, 0xC9, 0x41, 0x52, 0x5A, 0xE4, 0x51, 0x2F, 0x6B, 0x64, 0xEF, 0x91, 0x83, 0x60,\n0x4F, 0x79, 0xCA, 0xF0, 0x46, 0xF1, 0x39, 0x88, 0x43, 0x09, 0x96, 0xF2, 0xE8, 0x6A, 0xF7, 0xC5,\n0x70, 0x68, 0x54, 0xC0, 0x23, 0x8E, 0x90, 0x10, 0xD1, 0x84, 0x87, 0x80, 0x47, 0xAD, 0xBC, 0x8C,\n0x8F, 0xAD, 0x6D, 0xA7, 0x38, 0xBC, 0x8B, 0x5E, 0x9A, 0x10, 0x11, 0x20, 0xAD, 0xFD, 0xAB, 0x43,\n0xF5, 0xF3, 0x4C, 0x42, 0x2E, 0xB7, 0xFA, 0x47, 0x94, 0x17, 0x0D, 0xF7, 0xAE, 0x16, 0x46, 0x21,\n0xFC, 0x08, 0xA9, 0x09, 0xA8, 0x4A, 0x40, 0x08, 0x94, 0xCD, 0x9A, 0xEC, 0xA5, 0x3B, 0x7E, 0x3B,\n0x35, 0x99, 0x82, 0x81, 0xA8, 0x62, 0x45, 0x0D, 0x10, 0x3E, 0x46, 0xB3, 0xF8, 0x9A, 0xE6, 0xCB,\n0x8F, 0x15, 0x10, 0x88, 0x64, 0xE1, 0x87, 0x02, 0x90, 0x31, 0x4A, 0x4F, 0x21, 0x88, 0x40, 0x11,\n0x3D, 0x10, 0x72, 0x97, 0xDE, 0x5F, 0x35, 0x88, 0x8C, 0xCC, 0xA8, 0x28, 0x10, 0xA1, 0x7B, 0x55,\n0x71, 0x10, 0x08, 0x49, 0xC1, 0x96, 0x2E, 0x2B, 0x49, 0x47, 0x43, 0x26, 0x2B, 0x1F, 0xD9, 0x0C,\n0x82, 0x27, 0xC7, 0x8D, 0x55, 0x12, 0x22, 0xDE, 0x91, 0xDF, 0x8F, 0x7F, 0xE0, 0x21, 0xF0, 0xB1,\n0x55, 0x0F, 0xED, 0x09, 0x91, 0x00, 0x84, 0x35, 0xEF, 0x21, 0x0D, 0x06, 0x1F, 0x81, 0xF2, 0xDC,\n0x89, 0x3F, 0x48, 0x88, 0xB4, 0xF6, 0xB2, 0xB0, 0x0F, 0xAF, 0x9C, 0x93, 0x1E, 0x54, 0x54, 0xAE,\n0x2A, 0x25, 0x41, 0xD4, 0xC3, 0xEE, 0x78, 0x1A, 0x6D, 0x34, 0x93, 0x47, 0xBF, 0x7C, 0x50, 0x75,\n0x90, 0x47, 0xC3, 0xBD, 0x98, 0x05, 0xB3, 0xDA, 0xAE, 0x5A, 0x2F, 0xBA, 0x83, 0x8F, 0x3B, 0x42,\n0x0F, 0x75, 0xAD, 0xBE, 0x8B, 0x5A, 0xC4, 0x68, 0xB3, 0x38, 0x81, 0x90, 0x11, 0x32, 0x3A, 0x54,\n0x03, 0x7F, 0x21, 0xF1, 0x81, 0xFE, 0xF5, 0x8F, 0x50, 0xDD, 0x41, 0x34, 0x33, 0xBC, 0xAB, 0xA3,\n0x32, 0xFE, 0x72, 0x4A, 0x37, 0x1A, 0x09, 0xBF, 0x16, 0x11, 0x5B, 0x48, 0xAA, 0xAF, 0xBC, 0xF2,\n0xE2, 0xF4, 0x47, 0xBD, 0x64, 0x7C, 0xEC, 0xDA, 0x43, 0xFE, 0x38, 0xF8, 0xA9, 0x8D, 0x8F, 0x80,\n0xD0, 0x28, 0x81, 0xC8, 0x2B, 0xF1, 0xD1, 0x83, 0x92, 0xA5, 0xB3, 0x93, 0x4A, 0xAA, 0xB7, 0x21,\n0x42, 0x7C, 0xEE, 0x95, 0xC4, 0x87, 0x02, 0xF3, 0x34, 0xC6, 0x9F, 0x02, 0x10, 0x21, 0x31, 0x3A,\n0xC8, 0xB0, 0x1C, 0xAF, 0x4A, 0x19, 0x8A, 0x0F, 0x4D, 0x59, 0x55, 0xD8, 0x40, 0xFA, 0xFC, 0xBF,\n0x31, 0x08, 0x71, 0x88, 0x5A, 0x32, 0xE7, 0x78, 0xFA, 0x57, 0x23, 0x18, 0x51, 0x6B, 0x51, 0x5C,\n0xA4, 0x4D, 0x1B, 0x44, 0x06, 0x6A, 0xF0, 0x0F, 0x94, 0x4C, 0x23, 0xC1, 0x92, 0xC2, 0x90, 0x04,\n0x22, 0x97, 0x5F, 0xD5, 0x1D, 0x84, 0x38, 0x44, 0xFE, 0xC1, 0x15, 0x58, 0x63, 0xC1, 0x69, 0x37,\n0x70, 0xE8, 0x35, 0x79, 0x88, 0x7D, 0xE8, 0xFF, 0x2F, 0x1F, 0x27, 0x4B, 0xA7, 0x90, 0x1E, 0x74,\n0xD4, 0x7A, 0x0F, 0xD5, 0x4F, 0x38, 0x88, 0xC5, 0xC7, 0x5A, 0x79, 0x18, 0x47, 0x9B, 0x94, 0x61,\n0xB4, 0x7C, 0x73, 0x9E, 0xC4, 0x70, 0xEF, 0x07, 0x4D, 0x45, 0x5F, 0x93, 0x0F, 0x48, 0xF0, 0x31,\n0xF4, 0x19, 0x54, 0x3A, 0xCD, 0x7A, 0xD1, 0x8A, 0x8A, 0x16, 0x36, 0xCB, 0xF2, 0x10, 0x5D, 0x5E,\n0xB2, 0x75, 0xE2, 0xD2, 0xC5, 0x6B, 0xCC, 0x42, 0x51, 0x01, 0x31, 0xC2, 0x08, 0x06, 0xFA, 0x5C,\n0xE9, 0xF3, 0x84, 0x82, 0x16, 0x46, 0xC7, 0x18, 0x7F, 0x84, 0x8D, 0xE9, 0xF7, 0xF4, 0x20, 0xD2,\n0xE4, 0x46, 0x80, 0x40, 0xF4, 0xC1, 0xDB, 0x27, 0x3C, 0xBF, 0x49, 0x77, 0x7F, 0xF0, 0x19, 0x37,\n0xD5, 0x67, 0xAC, 0x8D, 0x45, 0x9B, 0xC5, 0xC7, 0x78, 0x28, 0x62, 0x52, 0x89, 0x89, 0x0D, 0xBC,\n0x74, 0xF2, 0x10, 0x5B, 0xC9, 0x43, 0x5A, 0xBE, 0xD9, 0xD7, 0x86, 0xF4, 0x47, 0x34, 0x7D, 0xAB,\n0x9C, 0xC0, 0x87, 0xE7, 0x21, 0x4D, 0x83, 0x59, 0x7F, 0x34, 0x01, 0x32, 0xD3, 0x25, 0x89, 0x56,\n0xE9, 0x67, 0xB3, 0xD9, 0x64, 0x19, 0x57, 0x29, 0x7B, 0x5A, 0x8A, 0x90, 0xB6, 0xB3, 0x8C, 0xAE,\n0xBE, 0x6A, 0x50, 0x1A, 0xDF, 0xD5, 0x18, 0xA6, 0xE6, 0x28, 0xF1, 0xA2, 0x95, 0xB4, 0x3A, 0x2E,\n0x0F, 0xB7, 0x88, 0xBC, 0xFD, 0x55, 0x28, 0xAA, 0xFA, 0x34, 0xEA, 0xED, 0x5B, 0x7E, 0x25, 0x27,\n0xD5, 0x31, 0xB1, 0x32, 0xBE, 0x26, 0xDD, 0x5E, 0xA7, 0x6E, 0x94, 0xC2, 0x8F, 0xD1, 0x44, 0xB4,\n0xFA, 0x74, 0x92, 0x78, 0x7B, 0xDE, 0x57, 0x62, 0x63, 0x92, 0x16, 0x6F, 0xBF, 0x3A, 0x4E, 0x1F,\n0x8C, 0x17, 0x2D, 0xB2, 0x91, 0xC5, 0xA8, 0xBB, 0x55, 0xA7, 0x9D, 0x57, 0x61, 0xE9, 0x8A, 0x35,\n0x95, 0xB1, 0x87, 0xBA, 0x68, 0x51, 0x7C, 0x4B, 0xAD, 0x77, 0x0F, 0x46, 0xAF, 0xDB, 0xD6, 0x72,\n0x39, 0x19, 0x5A, 0x5B, 0x6F, 0x6B, 0xD6, 0xE2, 0x20, 0x2D, 0x5D, 0xAC, 0x19, 0xF1, 0x87, 0xA1,\n0x00, 0x24, 0x1E, 0xC3, 0xED, 0xEB, 0x44, 0x2D, 0xBE, 0x41, 0xEF, 0x74, 0xAB, 0xA6, 0x72, 0xDC,\n0xA2, 0x77, 0x8E, 0x7F, 0xFE, 0xF9, 0x8B, 0x9F, 0x37, 0xFA, 0xAA, 0x52, 0xBF, 0xAD, 0x29, 0xF4,\n0xE9, 0xD7, 0x2D, 0xFA, 0xF4, 0xFE, 0xCF, 0xEF, 0xFE, 0xFA, 0xDD, 0xD4, 0x9F, 0x43, 0x35, 0x30,\n0xD0, 0xA0, 0x4F, 0x7F, 0x6E, 0xD3, 0x71, 0x9B, 0xBA, 0x36, 0xBD, 0xB3, 0x6A, 0xD3, 0xC1, 0xC9,\n0x59, 0x8B, 0x2E, 0xC1, 0xC3, 0xD0, 0x74, 0xE6, 0x13, 0xF2, 0x49, 0x0B, 0x20, 0xB3, 0xD0, 0x7A,\n0x3D, 0xF5, 0x14, 0x5E, 0x36, 0x9F, 0x37, 0x11, 0x22, 0x4F, 0xF0, 0xE9, 0x18, 0xD4, 0x35, 0xA9,\n0x89, 0x90, 0xB7, 0x43, 0x02, 0xC4, 0xD4, 0xA7, 0x9F, 0xFA, 0x84, 0x44, 0x53, 0xBF, 0xBF, 0xBF,\n0xFF, 0x33, 0x7A, 0x55, 0xA6, 0xE2, 0x51, 0xD6, 0xF1, 0x3F, 0x98, 0x84, 0x5C, 0x8B, 0x8F, 0x4F,\n0x9B, 0x08, 0x89, 0x9D, 0x3D, 0x2E, 0xEA, 0xD5, 0xF2, 0xD6, 0x77, 0x1A, 0xF9, 0x08, 0xAD, 0x7C,\n0x0D, 0x7E, 0x73, 0xD6, 0xA0, 0xCB, 0xF9, 0x7C, 0xED, 0xE3, 0x31, 0x9D, 0x85, 0xF6, 0xE1, 0x20,\n0x7A, 0xDF, 0xD9, 0x74, 0x6A, 0xFA, 0x47, 0xE4, 0xD3, 0xE7, 0xEB, 0xF9, 0x99, 0xAD, 0x8D, 0xB7,\n0xB6, 0x01, 0xD2, 0xFA, 0x3D, 0xBD, 0x7A, 0x4C, 0x89, 0xA9, 0x56, 0x86, 0x26, 0xF3, 0x76, 0x0B,\n0x1F, 0xA1, 0x6B, 0x13, 0x8F, 0x81, 0x8F, 0xBB, 0x98, 0xD4, 0xF6, 0xF3, 0xA9, 0xEC, 0x21, 0xF7,\n0x83, 0x6C, 0xFE, 0xAE, 0xF5, 0x71, 0xBE, 0xF0, 0xF9, 0x90, 0x8E, 0xBB, 0x27, 0x07, 0x45, 0x34,\n0x3C, 0xDD, 0xB8, 0x6A, 0xE6, 0x23, 0xD4, 0xC2, 0x47, 0xA8, 0x81, 0x8F, 0xE1, 0xD2, 0x8D, 0xB5,\n0xCF, 0x87, 0xB4, 0x7B, 0x07, 0x49, 0xEF, 0x3B, 0xEB, 0x3D, 0x42, 0xD6, 0x31, 0x86, 0x35, 0xE8,\n0xC4, 0xE5, 0x63, 0x01, 0x21, 0x26, 0x1F, 0x10, 0xE2, 0xAB, 0x76, 0x6E, 0x44, 0xAB, 0x4D, 0x83,\n0x79, 0xDB, 0x25, 0xE4, 0x0B, 0x35, 0x48, 0x93, 0x90, 0xF8, 0xA3, 0x01, 0x8F, 0xFB, 0x2F, 0xEF,\n0xEF, 0x0A, 0x3C, 0xB0, 0x89, 0x2D, 0xDF, 0x09, 0x0F, 0xDF, 0x43, 0xC4, 0x07, 0x84, 0x18, 0x7C,\n0x48, 0xAE, 0x83, 0xAC, 0xDA, 0xFD, 0x43, 0xF2, 0xF9, 0x68, 0x21, 0xE4, 0x44, 0xCD, 0xCC, 0x25,\n0x64, 0xDA, 0xCF, 0x92, 0x7C, 0x07, 0xF1, 0xF9, 0xC0, 0x43, 0x4C, 0x3E, 0x7C, 0x42, 0x88, 0xCF,\n0x7C, 0x3E, 0xA4, 0xD6, 0xCE, 0xF0, 0xF1, 0xE0, 0x0E, 0x9A, 0x87, 0x25, 0x2D, 0xE4, 0x73, 0x17,\n0x64, 0x8C, 0xFA, 0xCA, 0xE5, 0x03, 0x44, 0x0C, 0xFF, 0x48, 0x82, 0x90, 0x9A, 0xBE, 0xFB, 0xE5,\n0x6E, 0xFC, 0xF3, 0x7B, 0xD7, 0x3F, 0x9A, 0x08, 0x61, 0x6F, 0xB3, 0x23, 0x52, 0x3E, 0x40, 0xCD,\n0x87, 0xFC, 0x5F, 0xF9, 0x7C, 0x48, 0x2E, 0x1F, 0x10, 0xE2, 0xF2, 0x21, 0xD9, 0x0E, 0x72, 0xEA,\n0xF1, 0x81, 0xFA, 0xA9, 0xC7, 0x07, 0x84, 0x18, 0x7C, 0x20, 0x8B, 0x8F, 0x17, 0x10, 0x22, 0x30,\n0x54, 0x25, 0x4A, 0xF2, 0x19, 0x3E, 0x86, 0x5E, 0xD6, 0x17, 0x4E, 0xF7, 0xEA, 0xD6, 0x27, 0x24,\n0xF9, 0x47, 0xD2, 0x2F, 0x03, 0x21, 0x31, 0x8F, 0x35, 0x0B, 0xAC, 0xDD, 0x23, 0xC3, 0x43, 0x84,\n0x07, 0x84, 0x38, 0x7C, 0xA0, 0x74, 0x6C, 0x38, 0x1A, 0xDA, 0xF2, 0x68, 0x6E, 0xEE, 0xD7, 0x22,\n0x87, 0x90, 0x83, 0x03, 0xE4, 0xF1, 0x01, 0x21, 0x36, 0x1F, 0x3E, 0x21, 0xA7, 0x03, 0x20, 0xA7,\n0x2E, 0x1E, 0x10, 0xE2, 0xF0, 0x01, 0x21, 0x16, 0x1F, 0xC8, 0xE2, 0x03, 0xB5, 0x8E, 0xA7, 0x24,\n0x3C, 0x54, 0x95, 0xF0, 0x10, 0x1F, 0xC8, 0x0A, 0x3F, 0xD0, 0xAD, 0x3A, 0x51, 0x55, 0xFF, 0x08,\n0x3E, 0x10, 0x74, 0xA8, 0x2E, 0xF8, 0xC7, 0x3D, 0x8A, 0xFF, 0x95, 0xC1, 0xAC, 0x1A, 0x1F, 0xC8,\n0xE2, 0x03, 0xA5, 0xA0, 0x83, 0x23, 0xA4, 0x9A, 0xF9, 0x7F, 0xF9, 0x07, 0xB2, 0xF8, 0x40, 0x06,\n0x1F, 0x68, 0x48, 0xA6, 0xCF, 0x2C, 0x3E, 0xE8, 0x0D, 0x6D, 0xE5, 0x43, 0x80, 0x84, 0x4C, 0x3E,\n0x20, 0xA4, 0x8A, 0xC8, 0x1C, 0x3E, 0x0C, 0x42, 0x96, 0x85, 0x04, 0x87, 0xC1, 0xC7, 0xCB, 0x7A,\n0x59, 0xC3, 0xFC, 0xE8, 0x7C, 0xC9, 0xFC, 0x76, 0xD6, 0x64, 0xF0, 0x90, 0x1A, 0x1F, 0xA8, 0xDE,\n0x82, 0xBF, 0xBC, 0x47, 0x78, 0x08, 0xCA, 0xCD, 0x44, 0xFE, 0x81, 0xEE, 0xBE, 0x84, 0x90, 0xE2,\n0xF8, 0x55, 0xF2, 0x32, 0x64, 0xF1, 0x81, 0x60, 0xA2, 0x88, 0xC8, 0xEA, 0x7F, 0xF1, 0x81, 0x1C,\n0x3E, 0x7C, 0x44, 0x52, 0x33, 0x83, 0x90, 0x2A, 0x1E, 0xF0, 0xE1, 0x9A, 0xC8, 0x69, 0x02, 0x24,\n0xE4, 0xF1, 0x71, 0xE4, 0x10, 0x32, 0x4D, 0x7C, 0xA0, 0xF5, 0xC4, 0xF2, 0x0F, 0xE4, 0xF1, 0x81,\n0x1A, 0xBF, 0x33, 0x7D, 0xDB, 0x54, 0x72, 0x8D, 0x34, 0xE3, 0x1F, 0xC8, 0xE2, 0x03, 0xDD, 0xD6,\n0xE2, 0xF3, 0xEB, 0xE4, 0x1F, 0x28, 0x12, 0x22, 0x95, 0xF8, 0x43, 0xC3, 0x57, 0x19, 0x22, 0xFF,\n0x30, 0x77, 0xF6, 0xBA, 0xAD, 0x54, 0x51, 0x14, 0x4E, 0x84, 0x19, 0x6E, 0x13, 0xAE, 0x22, 0x64,\n0x57, 0xBE, 0x31, 0x5D, 0x8A, 0x91, 0x5F, 0x21, 0x2D, 0xA2, 0xB0, 0x04, 0x12, 0x69, 0xB0, 0x62,\n0x9C, 0x07, 0xA0, 0xA2, 0x48, 0xFA, 0x60, 0x64, 0x1A, 0x8A, 0x5B, 0x22, 0x85, 0x82, 0x27, 0x65,\n0xCF, 0xF6, 0x31, 0x1F, 0x3E, 0x39, 0xDE, 0x5E, 0x87, 0xCC, 0x04, 0xD6, 0x99, 0x19, 0x4F, 0x12,\n0x5F, 0xDF, 0xB1, 0x73, 0x3E, 0xAF, 0xFD, 0x33, 0x9E, 0x44, 0x8F, 0xBF, 0x40, 0x12, 0x21, 0x3C,\n0x5D, 0x3C, 0x64, 0x07, 0xC9, 0x14, 0x30, 0xD2, 0x97, 0xF8, 0x47, 0x35, 0x1E, 0x48, 0xE3, 0x03,\n0x8D, 0x23, 0x3E, 0x36, 0x97, 0x87, 0x82, 0x90, 0x88, 0x8F, 0xCF, 0x7D, 0xDD, 0x29, 0xC4, 0xC3,\n0xE4, 0x39, 0xC8, 0x09, 0x42, 0x78, 0xD4, 0xD0, 0x43, 0xE0, 0x03, 0x3C, 0x38, 0xF2, 0xD9, 0xA7,\n0x02, 0x1E, 0x68, 0x22, 0xF1, 0x81, 0xEA, 0xF3, 0x90, 0x29, 0x36, 0x62, 0x37, 0x2C, 0xD3, 0x5C,\n0x71, 0x31, 0x6B, 0x51, 0x92, 0x71, 0x10, 0xA7, 0x1F, 0x39, 0x21, 0x3F, 0x52, 0xEF, 0xDD, 0x93,\n0x41, 0xFB, 0x23, 0xD7, 0xB1, 0x28, 0xEB, 0xC6, 0x96, 0xC5, 0xB2, 0x8A, 0x90, 0x69, 0x49, 0xE9,\n0x85, 0x21, 0xD2, 0xE2, 0xCB, 0xEA, 0xB7, 0xA2, 0x2A, 0x42, 0xCA, 0xED, 0x76, 0x89, 0x0F, 0x08,\n0x79, 0x17, 0x94, 0x77, 0x4B, 0x0A, 0xF9, 0xC0, 0x41, 0x4C, 0x5A, 0x7C, 0x05, 0x28, 0xEF, 0x36,\n0xE5, 0xF4, 0x23, 0xF1, 0x91, 0x69, 0x0E, 0x21, 0x31, 0x1F, 0x10, 0xA2, 0xE3, 0x51, 0xEF, 0x21,\n0x38, 0xC8, 0x41, 0x14, 0x41, 0xFD, 0xEA, 0x40, 0x34, 0xD5, 0x63, 0x3E, 0x20, 0xE4, 0xC8, 0x0C,\n0x7E, 0x28, 0xEA, 0xA6, 0xD4, 0x32, 0x74, 0x3E, 0x32, 0xFF, 0xA0, 0x98, 0xA5, 0xF8, 0x07, 0x92,\n0xFC, 0x03, 0xF1, 0xA2, 0xA4, 0x24, 0xDD, 0x37, 0xAF, 0xF5, 0x0F, 0x24, 0xF1, 0x81, 0x82, 0xF6,\n0xC7, 0x65, 0x81, 0x90, 0x8D, 0xC4, 0x07, 0x33, 0x39, 0xE0, 0x03, 0x07, 0x71, 0x05, 0x7C, 0xB0,\n0x45, 0x10, 0x92, 0xB7, 0x07, 0x4B, 0xB2, 0x96, 0xE1, 0x99, 0xC8, 0x07, 0x84, 0xE8, 0x7C, 0xD4,\n0x97, 0x56, 0x0E, 0xC2, 0x07, 0xDB, 0x9A, 0x56, 0x85, 0xF9, 0x12, 0x16, 0xB3, 0x96, 0x8B, 0xEF,\n0x63, 0x42, 0x62, 0x3E, 0x10, 0x84, 0xE0, 0x21, 0x45, 0xFF, 0xA0, 0x98, 0x25, 0xE4, 0xE7, 0x48,\n0xF6, 0x0F, 0x3C, 0xC4, 0xC1, 0x18, 0xF1, 0x0E, 0xF2, 0x7A, 0xFF, 0x40, 0x01, 0x1F, 0x3A, 0x21,\n0xF3, 0xCC, 0x3F, 0x28, 0x66, 0x05, 0x7C, 0x94, 0x66, 0x72, 0xC0, 0x07, 0x0E, 0xE2, 0x92, 0xF2,\n0x73, 0xC8, 0x83, 0x10, 0xF8, 0xC0, 0x3F, 0x72, 0x6D, 0xE6, 0x63, 0x4C, 0x24, 0xE3, 0x43, 0x26,\n0xE4, 0x43, 0x4F, 0x80, 0xF8, 0x99, 0x79, 0x59, 0x8A, 0x8E, 0x7D, 0x14, 0x09, 0x29, 0xF2, 0x11,\n0xE8, 0x46, 0xE0, 0x03, 0x0F, 0xB9, 0xA7, 0x8C, 0x15, 0xF9, 0x07, 0x1E, 0x22, 0xF1, 0x81, 0x96,\n0x35, 0x7C, 0x50, 0xEE, 0xA5, 0xA4, 0xD5, 0x87, 0x7F, 0xA0, 0x80, 0x0F, 0x95, 0x90, 0x4B, 0x93,\n0x4C, 0x08, 0xE9, 0x39, 0xF3, 0x97, 0xDD, 0x80, 0x0F, 0x1C, 0xC4, 0x25, 0xE4, 0xE7, 0x07, 0x6A,\n0x37, 0x61, 0x79, 0x37, 0xF7, 0x90, 0xF1, 0x99, 0xC8, 0x07, 0x84, 0xE4, 0x7C, 0xF4, 0x4C, 0x08,\n0x67, 0x53, 0x98, 0x7D, 0xC0, 0x87, 0x96, 0x87, 0x2C, 0x50, 0xE8, 0x21, 0xF0, 0x71, 0xDC, 0x11,\n0xEE, 0xEE, 0x7F, 0xB5, 0x44, 0x24, 0xC8, 0x3F, 0x02, 0x0F, 0x81, 0x8F, 0x90, 0x10, 0x9D, 0x0F,\n0xAA, 0xBD, 0x44, 0x9F, 0xF5, 0xED, 0xF3, 0x50, 0x12, 0x1F, 0x28, 0x2C, 0xEF, 0xC6, 0x84, 0xC0,\n0x07, 0x73, 0x38, 0xDF, 0x2F, 0xF3, 0x81, 0x83, 0x1C, 0x27, 0xE4, 0x28, 0x73, 0x34, 0xD5, 0x45,\n0x3E, 0x5C, 0xE3, 0x4F, 0x15, 0x3E, 0x90, 0x84, 0x07, 0x84, 0xD4, 0x22, 0x82, 0x83, 0x50, 0xBE,\n0xD2, 0x3D, 0x64, 0x11, 0x6B, 0x8B, 0x87, 0xD0, 0xFE, 0x08, 0x3C, 0xE4, 0xE1, 0xF7, 0x3F, 0xB0,\n0x0F, 0xCA, 0xBB, 0x82, 0x87, 0x80, 0x47, 0x28, 0x89, 0x0F, 0xB4, 0x77, 0x10, 0xD2, 0x8F, 0x7A,\n0x3E, 0x74, 0x42, 0xCE, 0x4E, 0x48, 0xE4, 0x03, 0x42, 0x72, 0x3E, 0x62, 0x95, 0xF9, 0xC0, 0x41,\n0x50, 0x54, 0xBE, 0xF2, 0x3D, 0x94, 0x9F, 0x98, 0xF5, 0xDE, 0xF9, 0x08, 0xB5, 0x81, 0x10, 0xF8,\n0x88, 0x24, 0xF1, 0x81, 0xAA, 0x09, 0x21, 0x82, 0x20, 0xFF, 0x10, 0xF3, 0x10, 0xBA, 0xE7, 0x42,\n0x94, 0x65, 0x7B, 0xF0, 0x11, 0x44, 0x59, 0x28, 0xE6, 0x83, 0x62, 0x16, 0xED, 0x8F, 0x93, 0x92,\n0xF8, 0x40, 0x07, 0x95, 0xAC, 0xEA, 0x1C, 0xEF, 0xA4, 0x24, 0x3E, 0x90, 0xC6, 0x07, 0x0D, 0x91,\n0x30, 0xBE, 0xFA, 0x3C, 0x2C, 0xF7, 0xC2, 0x07, 0x0E, 0x82, 0xA2, 0xF4, 0xA3, 0xE0, 0x27, 0x94,\n0x7B, 0xDF, 0x7B, 0x7B, 0x30, 0x16, 0xE7, 0xBF, 0x73, 0x7A, 0x62, 0x2C, 0x0D, 0x10, 0x08, 0xA9,\n0x54, 0x7A, 0x9B, 0x24, 0xFF, 0x88, 0xA7, 0x8C, 0xE8, 0x1F, 0x34, 0x44, 0x6E, 0x04, 0x3E, 0x90,\n0x19, 0xC7, 0xFE, 0xEC, 0x44, 0x81, 0x0F, 0x7B, 0xC0, 0xBC, 0x7C, 0xA5, 0x13, 0x62, 0xB8, 0x0B,\n0x84, 0xB8, 0xFA, 0xF5, 0x0F, 0xA4, 0xF1, 0x81, 0xC6, 0x12, 0x1F, 0x10, 0x42, 0xFB, 0x83, 0xD9,\n0x1A, 0xA8, 0xCC, 0x07, 0x0E, 0x82, 0xE0, 0xE3, 0x80, 0xB5, 0xCF, 0xCB, 0x90, 0x7C, 0x9E, 0x08,\n0xA1, 0x3D, 0x18, 0x8A, 0x96, 0xE1, 0x99, 0xA6, 0x8C, 0x8F, 0xBE, 0x11, 0xD9, 0xBD, 0x4D, 0xDA,\n0xCD, 0x14, 0x45, 0x1E, 0x02, 0x1F, 0x32, 0x21, 0xDE, 0x1E, 0xBC, 0x0F, 0xF9, 0xA0, 0x21, 0x42,\n0x7B, 0x50, 0xD1, 0xCD, 0x4D, 0x7A, 0x7C, 0xFC, 0x23, 0x14, 0x7C, 0x48, 0x1A, 0xED, 0x3D, 0xA4,\n0x4F, 0xFB, 0x40, 0xF0, 0xA1, 0x89, 0xF6, 0xB9, 0x20, 0x27, 0x24, 0x2B, 0x5F, 0x25, 0xFD, 0xD9,\n0xDA, 0x78, 0x39, 0x95, 0x73, 0x3C, 0x72, 0x07, 0x41, 0xC7, 0xFC, 0xA3, 0xCD, 0x1F, 0x19, 0x0F,\n0xE9, 0xF8, 0x98, 0xCF, 0x2F, 0x15, 0x35, 0xF0, 0x21, 0x69, 0x12, 0xF0, 0xD1, 0x47, 0x43, 0xC4,\n0xFD, 0x63, 0x2A, 0x4B, 0xE5, 0x83, 0x28, 0xCB, 0x96, 0xBB, 0x07, 0x51, 0xF7, 0x3F, 0xFE, 0x41,\n0xF9, 0x4A, 0x31, 0x11, 0x27, 0xF0, 0x66, 0xA1, 0x2A, 0x6B, 0x7F, 0x68, 0x1E, 0xD2, 0x33, 0x1F,\n0x88, 0xF4, 0x5C, 0x13, 0xED, 0x41, 0x89, 0x90, 0x77, 0xEF, 0xE1, 0x23, 0xA7, 0x84, 0xD9, 0xCC,\n0xB7, 0xE1, 0xA3, 0xEC, 0x20, 0x08, 0xFF, 0xF0, 0x0D, 0xE4, 0x81, 0x60, 0xFB, 0x4F, 0x80, 0xDE,\n0xB9, 0x7F, 0xC0, 0x87, 0x40, 0xC8, 0x99, 0xAE, 0x49, 0x80, 0x47, 0x2F, 0x4D, 0x75, 0xD3, 0x54,\n0x17, 0x7C, 0xC8, 0x84, 0x10, 0x5E, 0x69, 0x1E, 0xC2, 0xDD, 0x05, 0x13, 0x81, 0x0F, 0x95, 0x90,\n0xA9, 0xAE, 0x1E, 0xCA, 0xBB, 0xA1, 0xE0, 0x43, 0x92, 0xEA, 0x1F, 0xB4, 0x0C, 0xE1, 0x43, 0x10,\n0x7C, 0x94, 0x1D, 0x04, 0xE1, 0x1F, 0xA0, 0x16, 0x89, 0xF6, 0xB9, 0xA2, 0x66, 0x7C, 0x56, 0xA5,\n0x09, 0x7C, 0x48, 0x5A, 0xD5, 0x9A, 0xC8, 0xB4, 0x4A, 0xB4, 0x3F, 0x44, 0x42, 0x1E, 0x6A, 0x74,\n0x4F, 0x7C, 0xA5, 0x7A, 0xC8, 0xA2, 0x4A, 0xF0, 0xA1, 0x21, 0xF2, 0xC9, 0x00, 0x7C, 0x20, 0xF8,\n0x10, 0x09, 0xB9, 0x54, 0x44, 0x31, 0x0B, 0x87, 0xF8, 0xB3, 0x4D, 0x23, 0xC8, 0xAB, 0xE1, 0xA3,\n0xEC, 0x20, 0x28, 0xF3, 0x8F, 0xB2, 0x88, 0xDE, 0xDA, 0x46, 0xE1, 0x83, 0x96, 0xE1, 0x6C, 0x52,\n0x47, 0xC8, 0x87, 0x3A, 0xD5, 0xD6, 0xB2, 0xEA, 0x66, 0x8C, 0xE6, 0x1F, 0x54, 0x7B, 0xF1, 0x0F,\n0x41, 0x77, 0x37, 0xBF, 0xFF, 0x58, 0x07, 0xD4, 0xC3, 0xA2, 0x0E, 0x58, 0xE2, 0x2B, 0x11, 0x90,\n0x21, 0xF9, 0xF8, 0xA4, 0x72, 0x22, 0x9C, 0xD1, 0x3E, 0x17, 0xD4, 0xCC, 0xDB, 0xF2, 0xF4, 0x75,\n0x4C, 0xD8, 0x45, 0x10, 0x10, 0x3B, 0x48, 0x99, 0x07, 0xF2, 0x9B, 0x1C, 0x92, 0x0D, 0x09, 0xBA,\n0x44, 0xF6, 0xF8, 0xFF, 0x44, 0x48, 0x5D, 0x84, 0x65, 0x17, 0xC9, 0xA9, 0x23, 0x64, 0x4D, 0x83,\n0x50, 0x74, 0x10, 0xEE, 0xAD, 0x88, 0x0A, 0x96, 0xA4, 0x1F, 0xA8, 0x60, 0x89, 0x59, 0x48, 0xFF,\n0x7C, 0xA0, 0xCA, 0x69, 0x30, 0x1B, 0x13, 0xC8, 0x2B, 0x31, 0x96, 0x05, 0x59, 0x47, 0xDF, 0xE1,\n0xB3, 0x99, 0x9C, 0xEE, 0xA7, 0x38, 0x88, 0xF3, 0xF1, 0x75, 0x91, 0x8D, 0x43, 0x04, 0x09, 0xB0,\n0x4C, 0x7A, 0x8C, 0x35, 0x1F, 0x9B, 0x66, 0x5F, 0x4E, 0xFE, 0x27, 0x84, 0x90, 0x83, 0x88, 0x29,\n0x88, 0x5D, 0x44, 0x6A, 0x21, 0xCB, 0xEB, 0x4C, 0x37, 0x55, 0x7C, 0xD8, 0xA2, 0xDF, 0xDD, 0xAF,\n0x81, 0x55, 0xE1, 0x21, 0xDD, 0xD1, 0x6F, 0x6B, 0xF8, 0x30, 0xFD, 0x7F, 0xF8, 0x68, 0x9A, 0xF1,\n0xB8, 0x26, 0x07, 0x31, 0xB5, 0xEF, 0x65, 0xF9, 0xAC, 0x17, 0x1C, 0x04, 0x3C, 0x88, 0xDC, 0xA2,\n0x30, 0xCB, 0xF9, 0xD0, 0x09, 0x69, 0xC6, 0xA6, 0xCE, 0x43, 0x26, 0x43, 0xE6, 0x21, 0x15, 0x7C,\n0xB8, 0x64, 0xFF, 0xB0, 0x19, 0x66, 0x8B, 0xCC, 0xC7, 0xAE, 0x4D, 0xF1, 0x51, 0x35, 0x85, 0xF4,\n0x87, 0x0A, 0xEF, 0x65, 0x3E, 0xFC, 0xE1, 0x0D, 0x11, 0x51, 0x76, 0xF0, 0xDD, 0xD0, 0xF9, 0x70,\n0xFD, 0x3F, 0xF2, 0x0F, 0xE7, 0xC3, 0x34, 0xD7, 0xF9, 0x48, 0x84, 0x90, 0x83, 0x64, 0xB3, 0xB9,\n0xE5, 0x5B, 0xCC, 0xFA, 0xC8, 0x41, 0x08, 0xAF, 0x2E, 0x80, 0xA4, 0x20, 0x6C, 0xC4, 0xAE, 0xB5,\n0x78, 0xBE, 0xD9, 0x13, 0xD2, 0x68, 0x7C, 0xB8, 0x1A, 0x08, 0xD1, 0xD4, 0x37, 0x21, 0xF0, 0x31,\n0xD2, 0x09, 0x31, 0x36, 0x76, 0x88, 0x2C, 0x45, 0x3E, 0xBC, 0xCC, 0x6B, 0xAB, 0xCA, 0xC7, 0xEF,\n0xF7, 0x36, 0x8C, 0x11, 0xB9, 0xC8, 0x9B, 0xFA, 0x2C, 0x3A, 0x1F, 0x3E, 0x74, 0x3E, 0x5C, 0xFF,\n0x03, 0x3E, 0x26, 0x67, 0xE9, 0x22, 0x9D, 0xA2, 0x87, 0xCC, 0x8D, 0x0F, 0x08, 0x89, 0x72, 0x05,\n0x94, 0x18, 0x89, 0x1D, 0x84, 0x3B, 0xBE, 0x14, 0x86, 0x82, 0x7F, 0x6C, 0x9C, 0x0F, 0xD7, 0xE5,\n0xBC, 0x91, 0xF9, 0xB0, 0x60, 0x92, 0x4E, 0xBA, 0xA4, 0x2F, 0x57, 0x55, 0xBF, 0x80, 0x1A, 0x3C,\n0x5C, 0x1A, 0x1F, 0x5B, 0x5B, 0x7C, 0x68, 0xF1, 0xD5, 0xDA, 0x25, 0x12, 0x72, 0xEF, 0x3D, 0x74,\n0x8F, 0xB1, 0xB4, 0x44, 0xC4, 0x1F, 0x1F, 0x0F, 0x11, 0xF9, 0xF0, 0xA1, 0xF3, 0xE1, 0xAF, 0xCF,\n0x00, 0xE1, 0xD5, 0xEA, 0xCB, 0x7A, 0x3E, 0x64, 0x42, 0x1A, 0xF7, 0x8F, 0xA4, 0x77, 0x6A, 0x7C,\n0x75, 0x91, 0xF6, 0x22, 0x07, 0xE1, 0xEE, 0x50, 0x02, 0x19, 0x2F, 0x78, 0x79, 0xBF, 0x41, 0x2D,\n0x1E, 0x12, 0xF1, 0x01, 0x21, 0xE3, 0xB3, 0xFF, 0xD6, 0x43, 0x56, 0x9C, 0xE9, 0xAE, 0x10, 0xF2,\n0x45, 0x37, 0xB3, 0x98, 0x62, 0xA7, 0x9A, 0xD7, 0xCB, 0xC5, 0x9A, 0x93, 0xA5, 0x6C, 0x51, 0xF8,\n0xF8, 0xB1, 0x33, 0x10, 0xDB, 0xC4, 0x84, 0x70, 0xF9, 0x06, 0x24, 0x10, 0xC2, 0xC1, 0xDB, 0x10,\n0x32, 0x75, 0xA7, 0x03, 0x44, 0xFA, 0xE6, 0xA3, 0xB2, 0x7C, 0xC5, 0xB5, 0x7A, 0x05, 0x42, 0x1A,\n0xF7, 0x0F, 0xA4, 0xA7, 0x20, 0x78, 0x48, 0xD9, 0x41, 0xDE, 0x73, 0xCF, 0x8B, 0xA0, 0x07, 0xE2,\n0xDF, 0xC4, 0x3F, 0x04, 0x0F, 0x81, 0x0F, 0x04, 0x21, 0xBD, 0xA6, 0xEA, 0x3A, 0x21, 0xE0, 0xE1,\n0x9B, 0x93, 0x7C, 0xF8, 0x0C, 0x63, 0x9C, 0xE0, 0xC3, 0xF1, 0x48, 0x12, 0xDA, 0x85, 0x06, 0x86,\n0xA3, 0xE1, 0x9B, 0xFB, 0x6E, 0x5F, 0x8A, 0xAF, 0xF8, 0x0F, 0x4E, 0x01, 0x9B, 0x1F, 0xFE, 0x17,\n0x8A, 0x7F, 0xF0, 0x16, 0xF2, 0x3F, 0xE2, 0x03, 0x42, 0x62, 0xFF, 0x40, 0x04, 0x3F, 0x2F, 0x47,\n0x9A, 0xF2, 0xE0, 0x61, 0x3A, 0xE6, 0x20, 0x46, 0x45, 0xC1, 0x41, 0x10, 0x0F, 0x8B, 0x7F, 0x1C,\n0xAA, 0x69, 0x34, 0x3E, 0x5C, 0xCD, 0x30, 0x84, 0xA0, 0xB8, 0xFD, 0x61, 0x02, 0x91, 0x93, 0x26,\n0x92, 0xDE, 0x80, 0x19, 0x21, 0x21, 0x5B, 0xF3, 0x8F, 0x1B, 0xF1, 0xF3, 0x52, 0xAE, 0x1D, 0x1A,\n0xC9, 0x42, 0x3A, 0x58, 0x4E, 0x11, 0x92, 0x3D, 0x3A, 0x1E, 0x12, 0xFB, 0x07, 0x23, 0x24, 0x84,\n0xCB, 0xFF, 0x70, 0x3D, 0xAC, 0xC1, 0xCA, 0x57, 0x3A, 0x1F, 0x28, 0xF4, 0x8F, 0xF3, 0x4D, 0xAE,\n0x93, 0xDE, 0xD1, 0x26, 0x4F, 0x48, 0x2A, 0x3B, 0xC8, 0x7B, 0x74, 0x81, 0x95, 0x1C, 0xAF, 0x5F,\n0x9D, 0xBF, 0x38, 0x90, 0x36, 0xF0, 0x90, 0xF9, 0xF8, 0x85, 0xE6, 0x4D, 0x2D, 0x21, 0xB5, 0x8D,\n0xA8, 0x98, 0x0F, 0x2E, 0xDE, 0x91, 0x28, 0x09, 0xFC, 0xC3, 0xB3, 0x8F, 0x0C, 0x91, 0xC0, 0x3F,\n0xC0, 0x03, 0xB9, 0x87, 0x44, 0x7C, 0xD8, 0x06, 0x0B, 0xB1, 0x5B, 0x25, 0xBE, 0x82, 0x90, 0xC8,\n0x43, 0x88, 0x0E, 0x05, 0x0F, 0x21, 0xBC, 0x02, 0x0F, 0xD3, 0x70, 0xED, 0x41, 0x9D, 0x0F, 0x14,\n0xF0, 0xB1, 0x29, 0x88, 0x86, 0x48, 0x09, 0x8F, 0xFD, 0x16, 0x95, 0x1C, 0x24, 0xFF, 0x57, 0x54,\n0xB2, 0xF0, 0x0D, 0xCC, 0xE4, 0x7D, 0x4B, 0x7C, 0x75, 0x98, 0x88, 0x28, 0x7C, 0x40, 0x08, 0x7A,\n0x13, 0x42, 0xE0, 0xE3, 0xF0, 0xE2, 0x1D, 0x49, 0xC7, 0x4E, 0xE3, 0x65, 0x7A, 0x49, 0x84, 0xE0,\n0x1F, 0x9A, 0x87, 0xDC, 0x13, 0x5E, 0xD9, 0x48, 0xFB, 0x01, 0x21, 0x1F, 0x0B, 0xF8, 0x45, 0x84,\n0x6C, 0x13, 0x1F, 0xD9, 0x88, 0xC3, 0xAB, 0xFD, 0xC5, 0x47, 0xA7, 0xBE, 0x8B, 0x87, 0xBC, 0x35,\n0x1F, 0x33, 0xE3, 0xA3, 0xA0, 0x46, 0xE1, 0x03, 0x5D, 0x84, 0x0E, 0x62, 0xC3, 0x4D, 0x01, 0xBD,\n0x74, 0x90, 0xF7, 0x08, 0x0B, 0x69, 0xE1, 0x2A, 0xF3, 0x0F, 0x43, 0x61, 0x53, 0xD0, 0xBB, 0x44,\n0x48, 0x18, 0x5E, 0xA1, 0xA6, 0x99, 0xFD, 0x27, 0x1E, 0xE2, 0x68, 0x98, 0xB8, 0x49, 0x7B, 0x8A,\n0x7F, 0x10, 0x64, 0x6D, 0xCB, 0xFE, 0xF1, 0x3D, 0x78, 0x1C, 0xE8, 0xE6, 0xEE, 0x18, 0x1F, 0x0E,\n0xC7, 0xA1, 0x85, 0x38, 0x34, 0xC7, 0xDB, 0x1F, 0x37, 0x15, 0x84, 0x90, 0x7E, 0x64, 0x23, 0x2E,\n0x5F, 0xA5, 0x95, 0x3C, 0xED, 0xFF, 0xC4, 0x07, 0x0D, 0x91, 0x42, 0xFB, 0xA3, 0xA4, 0x96, 0xF7,\n0x7A, 0x06, 0x19, 0xF7, 0x0B, 0xE1, 0x20, 0xE0, 0x51, 0xB6, 0x10, 0xC4, 0xA3, 0x9A, 0x7F, 0x1C,\n0x95, 0x13, 0x12, 0xFB, 0x07, 0xAA, 0x3E, 0xED, 0xE4, 0xCB, 0x3E, 0x8A, 0x59, 0x5C, 0x8E, 0x20,\n0xBD, 0x4F, 0x02, 0x4B, 0xF1, 0x63, 0x20, 0xDF, 0x97, 0x27, 0x98, 0x4D, 0xBC, 0x28, 0x3D, 0x47,\n0x71, 0x2D, 0xCB, 0xA0, 0xC0, 0x40, 0xE0, 0xC4, 0x17, 0xCD, 0x3F, 0xE2, 0x5A, 0xD6, 0x31, 0x3C,\n0x8E, 0x10, 0x02, 0x1E, 0xE4, 0xE9, 0x29, 0xE8, 0xFA, 0xEF, 0xDA, 0x83, 0x82, 0x87, 0xD0, 0xFE,\n0x08, 0x08, 0x29, 0xE9, 0x22, 0x6D, 0x72, 0x33, 0xC0, 0x41, 0x0A, 0x7C, 0x5C, 0xE4, 0xB1, 0x19,\n0x6A, 0x2D, 0xBE, 0x7A, 0xB7, 0x09, 0x44, 0xB9, 0x17, 0xFF, 0x38, 0xAE, 0x86, 0x86, 0xC8, 0x5B,\n0x11, 0x92, 0x2E, 0xF4, 0xC4, 0xD5, 0xE3, 0x0E, 0xF6, 0x0A, 0xF9, 0x79, 0x30, 0x94, 0xCB, 0xC6,\n0xA1, 0x9B, 0x42, 0x31, 0x6B, 0x5F, 0xBE, 0x02, 0x0C, 0x48, 0x29, 0x7D, 0xB4, 0x30, 0x7E, 0x7C,\n0x89, 0x0F, 0x46, 0x99, 0x0F, 0xF0, 0x18, 0x1D, 0xDE, 0xBE, 0x3D, 0x1F, 0xD1, 0xD4, 0x99, 0x2B,\n0xFE, 0x11, 0x34, 0x44, 0x28, 0x47, 0xF9, 0xE6, 0x85, 0x70, 0x90, 0x32, 0x57, 0xB6, 0x52, 0xFC,\n0x22, 0x07, 0xB1, 0x6C, 0x87, 0xF4, 0x43, 0x20, 0x04, 0x3E, 0x66, 0xD9, 0x0A, 0x21, 0x03, 0x34,\n0x44, 0x50, 0xDE, 0xFE, 0x70, 0xE5, 0x59, 0x28, 0x7B, 0x1A, 0x1F, 0xE4, 0x21, 0x8A, 0x7F, 0xA0,\n0x9B, 0x02, 0x1F, 0x09, 0x09, 0xB8, 0xB8, 0xDF, 0x83, 0x82, 0x87, 0x90, 0x9E, 0xF3, 0xF0, 0x0A,\n0x21, 0x4B, 0xF8, 0x90, 0x08, 0xF9, 0x87, 0x6B, 0x70, 0xDD, 0x49, 0x5E, 0x9F, 0xFF, 0xA0, 0x3D,\n0x18, 0x4C, 0x9E, 0xA6, 0xD0, 0xFE, 0x08, 0xF4, 0x5B, 0x01, 0x0F, 0x66, 0x7B, 0x41, 0x7B, 0x07,\n0x39, 0xC2, 0xD5, 0xD1, 0xF0, 0x6C, 0x13, 0x8A, 0x86, 0x48, 0xEC, 0x1F, 0x3C, 0xCD, 0xF1, 0x9B,\n0x12, 0xB2, 0xCB, 0x3A, 0xC9, 0x3D, 0xD3, 0x0A, 0x28, 0x2F, 0x4E, 0xDF, 0x8D, 0xC7, 0x56, 0xF3,\n0x0F, 0x08, 0xC9, 0xD3, 0x8F, 0x3C, 0xAC, 0xB2, 0x85, 0x58, 0xCB, 0xF6, 0xF3, 0xF2, 0x55, 0xF0,\n0x3F, 0xD0, 0x10, 0x81, 0x8F, 0x13, 0x47, 0xDF, 0xC5, 0x90, 0x88, 0xA4, 0xC3, 0x56, 0x13, 0x90,\n0xA4, 0x1F, 0xBD, 0x75, 0xFB, 0x23, 0x56, 0x53, 0x68, 0x7F, 0x44, 0x22, 0x55, 0x20, 0xFD, 0xA0,\n0x87, 0xFE, 0x52, 0x3B, 0x40, 0xDE, 0x07, 0xBA, 0x70, 0x4E, 0xC8, 0x41, 0x68, 0x7F, 0xC8, 0x1E,\n0xD2, 0x80, 0xC3, 0x11, 0x35, 0x57, 0x6F, 0x47, 0x48, 0x6E, 0x1B, 0x94, 0x34, 0xB9, 0x4A, 0xAF,\n0x64, 0x1F, 0xE4, 0x21, 0xCB, 0x05, 0x5A, 0x9F, 0xF0, 0x0F, 0xCA, 0xBD, 0xB4, 0x07, 0x89, 0xAA,\n0x18, 0x7C, 0xEF, 0x30, 0x55, 0x8F, 0x1E, 0x9D, 0x13, 0xB3, 0xE0, 0xA3, 0x50, 0xBE, 0x8A, 0xCA,\n0xBD, 0xD8, 0x07, 0xCE, 0x01, 0x30, 0xFE, 0xE3, 0xB7, 0xE5, 0xA3, 0x3C, 0x77, 0xF8, 0x56, 0xA3,\n0xFB, 0x07, 0x84, 0xA0, 0x96, 0x34, 0xA2, 0xAC, 0x0E, 0x90, 0xE3, 0x74, 0xEC, 0xD9, 0x68, 0xBB,\n0x1B, 0x4E, 0xBF, 0x52, 0x74, 0x3E, 0x6F, 0xE0, 0x23, 0xD0, 0xEC, 0x8D, 0x5B, 0x86, 0x87, 0xBF,\n0xEF, 0x51, 0x02, 0x22, 0x2F, 0xF8, 0x16, 0x4E, 0x2F, 0x89, 0x10, 0xD9, 0x0A, 0xFE, 0x81, 0x6E,\n0x20, 0xE4, 0x3E, 0x33, 0x0B, 0x16, 0xBE, 0x05, 0x21, 0xB4, 0xCF, 0xE3, 0x20, 0x0B, 0x0F, 0xA1,\n0xFB, 0x1F, 0x79, 0xC8, 0xB6, 0x98, 0x9F, 0xE7, 0x65, 0x3E, 0xBE, 0xBB, 0x7A, 0xBB, 0xF6, 0xA0,\n0x20, 0xCA, 0xBB, 0x92, 0x0A, 0x27, 0x97, 0x5C, 0x44, 0x06, 0x11, 0x01, 0x92, 0x72, 0x7B, 0x1B,\n0xD4, 0xB1, 0x3E, 0xBF, 0xD8, 0x08, 0xA2, 0x98, 0x35, 0xCF, 0x79, 0xF0, 0x35, 0x6D, 0xD0, 0xFC,\n0x8D, 0x08, 0xE1, 0x97, 0xCD, 0x0D, 0xBB, 0x7B, 0x66, 0x4C, 0xA9, 0xFD, 0xB1, 0x15, 0x47, 0xD6,\n0xFE, 0x88, 0x74, 0x83, 0x87, 0x18, 0x02, 0x07, 0x44, 0xE4, 0x1E, 0xC2, 0x0E, 0xFE, 0xA1, 0xE8,\n0x86, 0xF2, 0xAE, 0xE2, 0x80, 0xFB, 0xA6, 0x3A, 0xBD, 0x53, 0xDE, 0x30, 0xA6, 0xDC, 0x80, 0xC8,\n0x80, 0xE5, 0x5D, 0x94, 0xF1, 0xC1, 0xB4, 0xC9, 0xED, 0x04, 0x3E, 0x24, 0xB5, 0xD0, 0x41, 0xF5,\n0xEA, 0xB8, 0x22, 0x40, 0xF8, 0xA7, 0x54, 0x7C, 0xBD, 0xFD, 0xA1, 0x69, 0xDE, 0xB8, 0x7D, 0x68,\n0x6A, 0x9A, 0x4F, 0xEB, 0x1B, 0x22, 0x2B, 0xAC, 0x41, 0x13, 0x45, 0x7D, 0xDF, 0xA3, 0x76, 0x85,\n0x9B, 0xEC, 0xB5, 0xF3, 0x0F, 0x45, 0x78, 0xC8, 0x8D, 0xF1, 0xA1, 0x0C, 0x6B, 0x88, 0xDC, 0x93,\n0x9E, 0x1F, 0x5B, 0x88, 0xB3, 0x9C, 0x10, 0xDA, 0xE7, 0xAA, 0x87, 0xE0, 0x7E, 0x52, 0x94, 0x95,\n0xF7, 0x4E, 0xA7, 0x05, 0x07, 0x49, 0x7A, 0x9B, 0xF6, 0x07, 0x64, 0xC4, 0x39, 0xEC, 0x5C, 0xE6,\n0x83, 0xA6, 0x3A, 0x8D, 0x8C, 0x70, 0xFA, 0xC7, 0x0E, 0xC2, 0x83, 0xD8, 0x92, 0x92, 0x10, 0x01,\n0x0F, 0x5A, 0x86, 0x96, 0xAB, 0x7B, 0xFC, 0xA4, 0x2C, 0x73, 0x2B, 0x66, 0x55, 0xE9, 0xCB, 0xAE,\n0x21, 0x5E, 0x03, 0xC8, 0x6A, 0x45, 0x79, 0x86, 0x5A, 0x0D, 0xF1, 0x95, 0xDF, 0x42, 0x49, 0x8A,\n0xAF, 0x54, 0x19, 0x1E, 0xEE, 0x1F, 0xC2, 0xD2, 0xDD, 0xF1, 0x66, 0x77, 0x7A, 0xC9, 0xFD, 0x8F,\n0xF7, 0x3B, 0x75, 0x7B, 0x0C, 0x5B, 0x9E, 0xD3, 0xAD, 0x7F, 0x6D, 0x77, 0x4C, 0x57, 0xC1, 0x92,\n0x16, 0xAF, 0x65, 0x95, 0xE8, 0x48, 0x96, 0xE2, 0xFA, 0xFB, 0x6B, 0xDF, 0x24, 0x1C, 0x60, 0x80,\n0x97, 0x82, 0x34, 0x9D, 0xF7, 0x94, 0xCA, 0x2B, 0x63, 0xAC, 0x28, 0x5F, 0x89, 0x9A, 0x35, 0x73,\n0x75, 0xE6, 0x78, 0x1E, 0xB2, 0x41, 0x92, 0x87, 0x40, 0xC6, 0x09, 0x44, 0x0C, 0x90, 0xF6, 0x42,\n0x94, 0x5F, 0x67, 0xA8, 0x95, 0xF5, 0xBE, 0x9D, 0x03, 0x7F, 0x20, 0x3E, 0x21, 0x62, 0xAF, 0xA3,\n0xAE, 0xC9, 0x6A, 0x54, 0xA9, 0x2F, 0xA6, 0xD7, 0xCE, 0x83, 0xB0, 0xD8, 0x34, 0xB8, 0xDE, 0x2E,\n0x96, 0xDF, 0x2E, 0x45, 0x6D, 0xBF, 0xDD, 0x5A, 0x7E, 0xBE, 0x7E, 0x5C, 0x3F, 0x49, 0xAB, 0x95,\n0x9A, 0x1E, 0x9F, 0x7F, 0x7F, 0xD6, 0x65, 0x77, 0x5E, 0x3F, 0x75, 0x8F, 0x2F, 0xC9, 0xEE, 0xF7,\n0xE8, 0x07, 0xBF, 0xB5, 0x8D, 0xB2, 0xDA, 0x3D, 0xA7, 0x5F, 0xF0, 0xE2, 0x08, 0xAF, 0xCF, 0xA8,\n0x52, 0xF6, 0xEB, 0xAA, 0x11, 0xED, 0x41, 0x45, 0x57, 0xF3, 0x56, 0x12, 0xD7, 0x5A, 0xBC, 0x50,\n0xF5, 0xD5, 0xCF, 0x67, 0xDF, 0xBD, 0x13, 0xD5, 0x6E, 0xDA, 0x8D, 0xCE, 0x47, 0x77, 0x14, 0x97,\n0x33, 0xD3, 0xF8, 0x6A, 0x36, 0x16, 0xB6, 0xB3, 0xAB, 0xAB, 0xB3, 0x9A, 0x29, 0xFF, 0xE1, 0xC3,\n0xA8, 0x52, 0xD7, 0xD7, 0x53, 0x5D, 0xD7, 0x53, 0xE0, 0xD0, 0xF4, 0xF4, 0x58, 0xA1, 0xA7, 0xC7,\n0xBB, 0xE7, 0x5F, 0xAB, 0xF4, 0x7C, 0xF7, 0x58, 0xA5, 0xA7, 0x65, 0x85, 0x6E, 0x97, 0xDF, 0x7E,\n0x3B, 0xAD, 0xD0, 0xB7, 0xD7, 0xD7, 0xD7, 0xA3, 0x01, 0xB5, 0x3A, 0x9B, 0x5D, 0xCD, 0x2A, 0x34,\n0xDF, 0xB4, 0xEF, 0x06, 0xD2, 0x77, 0x67, 0x3F, 0xFF, 0x36, 0xC8, 0x83, 0xB7, 0x5D, 0xB6, 0xE2,\n0xD7, 0x73, 0xBF, 0x52, 0xC6, 0x95, 0x7F, 0x4A, 0x7D, 0x32, 0x1A, 0x29, 0xD5, 0x42, 0x5B, 0xC1,\n0xA3, 0x06, 0x91, 0x1A, 0x3E, 0x4C, 0x36, 0x73, 0xA4, 0xC5, 0xB4, 0x78, 0xBA, 0x5D, 0x3C, 0x56,\n0xE8, 0xCE, 0xF4, 0xFB, 0x1F, 0xBF, 0xFF, 0x6A, 0xFA, 0xBD, 0x5B, 0x0C, 0x97, 0xB4, 0xDA, 0x57,\n0x85, 0x61, 0x77, 0xAF, 0x22, 0x64, 0x71, 0xFB, 0xB4, 0x58, 0xCA, 0xC7, 0x6F, 0x7C, 0x54, 0x11,\n0x02, 0x1D, 0xBA, 0x3E, 0xC8, 0x1A, 0x4D, 0xBA, 0x18, 0xCB, 0x66, 0xC4, 0x95, 0x34, 0x66, 0xE3,\n0xF3, 0xCD, 0x65, 0x0D, 0x21, 0x35, 0xF3, 0xFD, 0x37, 0x1C, 0xA4, 0x77, 0x3E, 0x3C, 0x32, 0x1C,\n0x6B, 0x80, 0x98, 0x85, 0x9C, 0x79, 0x95, 0xFC, 0xC3, 0x48, 0x7D, 0x15, 0x87, 0x25, 0xE4, 0x5B,\n0xD7, 0x6E, 0x8A, 0x9D, 0xDA, 0x3A, 0x1F, 0x4F, 0x4F, 0xB7, 0xCB, 0x75, 0x0D, 0x1F, 0x0F, 0x46,\n0xC8, 0xAF, 0x45, 0x1C, 0x32, 0x25, 0x3E, 0x1E, 0x6A, 0x10, 0x59, 0x3C, 0xD9, 0x11, 0x19, 0x21,\n0xC2, 0xC1, 0x3B, 0x1F, 0xAE, 0x21, 0xF8, 0x40, 0xEA, 0x6F, 0x76, 0xE4, 0x7C, 0x4C, 0xCE, 0x6C,\n0x4E, 0x48, 0x78, 0xCC, 0xC6, 0x1B, 0x9F, 0x6A, 0x16, 0xB4, 0xF4, 0xAF, 0x76, 0x28, 0x07, 0x69,\n0xBB, 0x14, 0x7D, 0x4F, 0x88, 0xE0, 0x1F, 0x57, 0x9D, 0x7F, 0xB8, 0x46, 0xA3, 0x01, 0xF0, 0x40,\n0x9A, 0x7D, 0x74, 0x7C, 0xB8, 0x76, 0x33, 0xE8, 0x36, 0xD8, 0xFA, 0xC6, 0xE6, 0xE3, 0x6D, 0xB7,\n0x8A, 0x61, 0x56, 0x37, 0xD9, 0x5D, 0x39, 0x0F, 0xAE, 0x1C, 0x17, 0xE7, 0xC3, 0xA5, 0x12, 0xE2,\n0x47, 0x63, 0xCB, 0x82, 0x43, 0x0D, 0xB6, 0xCE, 0x87, 0x6B, 0x30, 0x3E, 0x74, 0x13, 0x31, 0x8C,\n0x52, 0x19, 0x4B, 0xF4, 0x90, 0x59, 0xB3, 0x49, 0x53, 0x4D, 0x73, 0x06, 0xEE, 0xA5, 0x3A, 0xC8,\n0xCF, 0x17, 0xEF, 0x7A, 0x57, 0xDB, 0x1D, 0x74, 0x22, 0xA4, 0x51, 0x00, 0x99, 0x51, 0x04, 0xB4,\n0xC9, 0xDF, 0x3F, 0x1F, 0xE8, 0x5A, 0xE6, 0xC3, 0xA5, 0xBC, 0x09, 0x1B, 0x1F, 0x26, 0x9B, 0x92,\n0xB6, 0x4A, 0x7C, 0xA0, 0x1D, 0x00, 0xD9, 0xC8, 0x61, 0x79, 0xBE, 0x43, 0x12, 0x1F, 0xC6, 0x86,\n0x1D, 0x8A, 0x49, 0xB0, 0x3F, 0xCF, 0x3F, 0xAA, 0x08, 0x19, 0xFD, 0x6B, 0xE9, 0x7C, 0x38, 0x22,\n0x82, 0x87, 0xC0, 0x07, 0x84, 0xF4, 0xAA, 0x8B, 0x0E, 0x90, 0x8B, 0xB6, 0x77, 0xFF, 0x38, 0xBF,\n0xDC, 0xEB, 0xBC, 0x23, 0xE4, 0x94, 0x7F, 0x9C, 0xFD, 0x53, 0x96, 0xAA, 0xF7, 0x0F, 0x08, 0xD2,\n0xD2, 0x0F, 0x08, 0xB9, 0x3D, 0x19, 0x60, 0x75, 0x60, 0xF8, 0x3B, 0x76, 0x37, 0xD6, 0x77, 0x02,\n0x1F, 0xE8, 0xB9, 0x60, 0x22, 0x45, 0xFF, 0xD0, 0x09, 0x49, 0xA8, 0xDE, 0x2E, 0x16, 0x76, 0x23,\n0x04, 0x58, 0x07, 0xCF, 0x77, 0x10, 0x3E, 0x90, 0xC6, 0x07, 0xBD, 0xF4, 0x93, 0x80, 0x58, 0xFF,\n0xE3, 0xB3, 0xBF, 0xA7, 0x5A, 0xFF, 0x84, 0x5C, 0x38, 0x20, 0x7D, 0x13, 0xD2, 0x3A, 0xD3, 0x10,\n0x32, 0x3F, 0x01, 0x08, 0x5D, 0x74, 0x91, 0x90, 0xD1, 0x6B, 0x74, 0xAD, 0xA5, 0x1F, 0x10, 0x12,\n0x87, 0x59, 0xCB, 0x85, 0xBF, 0x5D, 0xA7, 0x71, 0xBB, 0xB8, 0xD5, 0xF8, 0x80, 0x10, 0x83, 0x20,\n0x72, 0x90, 0xE4, 0x1F, 0x48, 0xE0, 0x63, 0x37, 0x6E, 0xDD, 0xD5, 0xFC, 0xE8, 0xA3, 0xA7, 0x90,\n0x3D, 0x5D, 0x81, 0x8F, 0xE1, 0x00, 0xB1, 0xF2, 0x15, 0xEA, 0x66, 0x45, 0xEC, 0x21, 0x1D, 0x1F,\n0xBC, 0x15, 0x7B, 0x22, 0xD2, 0x37, 0x1F, 0x0E, 0x88, 0x69, 0x20, 0x3E, 0x20, 0x24, 0x62, 0x84,\n0xF8, 0x0A, 0x42, 0x06, 0x00, 0x04, 0x44, 0x24, 0x3E, 0x50, 0xFC, 0x26, 0xFC, 0xB4, 0xF7, 0x8E,\n0x5B, 0x5B, 0x9E, 0x6E, 0x6F, 0x9F, 0x34, 0x3E, 0x20, 0x24, 0x70, 0x10, 0x13, 0x7C, 0x68, 0x84,\n0xF8, 0x51, 0x24, 0x46, 0x3C, 0x55, 0x8F, 0x62, 0x44, 0xF0, 0x40, 0x83, 0xA4, 0x1F, 0x48, 0xE0,\n0x43, 0xF4, 0x10, 0xD3, 0x25, 0x7C, 0x0C, 0x41, 0xC8, 0x05, 0x80, 0x5C, 0xB4, 0x03, 0xF0, 0x01,\n0x21, 0x97, 0xE3, 0x59, 0x10, 0x5F, 0xC1, 0x87, 0x42, 0xC8, 0xE8, 0xF5, 0xBA, 0xD6, 0xF9, 0x20,\n0xCC, 0x3A, 0x5A, 0xBF, 0xB2, 0x91, 0x82, 0xAC, 0xE4, 0x22, 0x0A, 0x1F, 0xE8, 0xA7, 0xE7, 0x97,\n0x61, 0x15, 0xA4, 0xC0, 0x87, 0x46, 0x48, 0x47, 0xA8, 0x1F, 0x0E, 0x87, 0x94, 0x0E, 0xB6, 0x88,\n0x48, 0xE9, 0xD9, 0x0E, 0xC1, 0x07, 0xD2, 0xF8, 0xC0, 0x43, 0xA2, 0xF2, 0x15, 0x7C, 0x0C, 0x41,\n0x48, 0x7B, 0x01, 0x20, 0x10, 0xD2, 0x27, 0x1F, 0xC8, 0x09, 0x29, 0xE3, 0x51, 0xFE, 0xB4, 0xD4,\n0x84, 0x97, 0x52, 0x07, 0x44, 0x97, 0x98, 0x7F, 0x40, 0x88, 0xA9, 0x10, 0xA1, 0x78, 0x7A, 0x7E,\n0xEB, 0xB1, 0x8C, 0x6D, 0x7D, 0x3E, 0x42, 0x88, 0xC8, 0x07, 0x0D, 0x11, 0xB8, 0x20, 0xFF, 0x28,\n0xDF, 0x3F, 0xF4, 0x0F, 0x1B, 0xF0, 0xB1, 0x2F, 0xF7, 0x0A, 0xE1, 0x15, 0x1A, 0x92, 0x8F, 0xE0,\n0xF7, 0x0A, 0x1F, 0x07, 0x88, 0x44, 0x7C, 0x5C, 0x22, 0x08, 0xE9, 0x8F, 0x0F, 0x00, 0x71, 0x55,\n0xFE, 0x7B, 0x85, 0x0F, 0x3C, 0x64, 0x33, 0xFE, 0xF4, 0x48, 0xFB, 0x63, 0x72, 0xE4, 0x6C, 0xDD,\n0x51, 0xFF, 0x78, 0xA0, 0x6B, 0xC9, 0x3F, 0x10, 0x15, 0x5D, 0xB6, 0xCE, 0x07, 0x83, 0xD0, 0xE6,\n0x76, 0xB1, 0x3E, 0xCA, 0xC7, 0x37, 0x77, 0x05, 0x3D, 0x14, 0x73, 0x10, 0xDB, 0x35, 0x7F, 0x51,\n0x09, 0x81, 0x8F, 0x5B, 0xDC, 0x63, 0x67, 0x26, 0x4F, 0xC7, 0x82, 0xAC, 0x63, 0xCF, 0x56, 0xE7,\n0xA3, 0x9F, 0x86, 0x08, 0xED, 0x8F, 0x32, 0x21, 0x57, 0x45, 0x3E, 0xCE, 0x99, 0x6A, 0xFD, 0x12,\n0x02, 0x1F, 0x00, 0xE2, 0xEA, 0xA9, 0x3D, 0x98, 0x8B, 0x86, 0x48, 0xA1, 0x7D, 0x5E, 0xE6, 0xE3,\n0x58, 0xCB, 0xD0, 0x5E, 0xDC, 0x81, 0x08, 0xA1, 0xBC, 0x5B, 0xD6, 0xB1, 0xF2, 0xEE, 0x2D, 0xF5,\n0xAB, 0x83, 0x69, 0x29, 0xDB, 0x87, 0xB7, 0x00, 0x1F, 0xBA, 0x54, 0x1D, 0x32, 0xD2, 0xC0, 0x3F,\n0x34, 0x44, 0xD6, 0xB7, 0x07, 0x98, 0xB2, 0xBE, 0x68, 0x19, 0x12, 0x5F, 0x6D, 0x4B, 0xCB, 0xB7,\n0xC3, 0xF0, 0x01, 0x21, 0x12, 0x1F, 0x10, 0x52, 0x00, 0xC4, 0xDB, 0x83, 0x65, 0x95, 0x5B, 0x86,\n0x6D, 0x2D, 0x1F, 0x05, 0x40, 0xDA, 0xD7, 0x7A, 0x48, 0xFB, 0x5B, 0xE9, 0xA0, 0x69, 0x88, 0x7C,\n0x1A, 0xF8, 0x87, 0x44, 0xC8, 0xA8, 0x3F, 0x5D, 0x8B, 0x7C, 0x94, 0x5B, 0x86, 0x2E, 0xCA, 0x57,\n0x4C, 0xCA, 0xFD, 0x37, 0x1E, 0xD7, 0x1A, 0x1F, 0x34, 0x44, 0x40, 0x83, 0xF4, 0x23, 0x50, 0xB9,\n0xBC, 0x9B, 0x90, 0xF0, 0x5B, 0x56, 0xE3, 0x38, 0xAF, 0x65, 0x99, 0xA2, 0x67, 0xFB, 0xCB, 0x00,\n0x7C, 0xA0, 0xD2, 0x2F, 0x36, 0x38, 0xF3, 0x7D, 0x82, 0x87, 0x64, 0xED, 0x8F, 0x4C, 0x4A, 0x43,\n0x44, 0xE7, 0x03, 0x40, 0xD0, 0x40, 0xFE, 0x41, 0xCB, 0x30, 0xF3, 0x8F, 0x00, 0x0F, 0x5A, 0x86,\n0xFD, 0xFA, 0x07, 0xAA, 0xE2, 0x63, 0xFA, 0xB2, 0x96, 0xE5, 0x73, 0x8F, 0x7A, 0xEA, 0x41, 0x8C,\n0x65, 0xDF, 0x97, 0xF8, 0x40, 0xCF, 0x7F, 0x18, 0x13, 0x38, 0x88, 0x2D, 0x77, 0xB1, 0x8A, 0xED,\n0xF3, 0x63, 0xC3, 0x7E, 0x96, 0x39, 0x48, 0xF2, 0x8F, 0x82, 0xF0, 0x90, 0x9C, 0x8F, 0xA1, 0x10,\n0xB1, 0x2F, 0x4F, 0x7C, 0x38, 0xA4, 0xD0, 0x3E, 0x0F, 0xA7, 0x5A, 0xDB, 0x17, 0x1F, 0x5F, 0x39,\n0x20, 0xA8, 0x7D, 0x0D, 0x1E, 0xAD, 0xD7, 0x14, 0x42, 0x42, 0x0E, 0xFD, 0x23, 0xE7, 0x23, 0x2E,\n0x66, 0x8D, 0xFA, 0x96, 0x92, 0x9E, 0xA3, 0x69, 0x9A, 0x5A, 0xF8, 0x07, 0x7E, 0x91, 0x47, 0x58,\n0x5E, 0xFA, 0xAD, 0xE2, 0xC3, 0xA2, 0x2C, 0xE0, 0xA0, 0xFD, 0xA1, 0x13, 0xB2, 0xAB, 0x32, 0xDB,\n0x92, 0xA5, 0x21, 0x69, 0x2F, 0x35, 0xD5, 0x41, 0xC4, 0x90, 0x8F, 0x95, 0xB5, 0x3F, 0x7A, 0x56,\n0x21, 0x3D, 0x0F, 0xE5, 0x1E, 0x42, 0xFB, 0x23, 0xE0, 0xA3, 0x87, 0x96, 0x21, 0x3C, 0xE0, 0x20,\n0xAF, 0x25, 0xC4, 0xFF, 0x14, 0xF4, 0x09, 0x6D, 0x0E, 0x1A, 0x22, 0x63, 0xAF, 0xE2, 0x55, 0x10,\n0x32, 0xEA, 0x5D, 0x35, 0x7C, 0x50, 0xCB, 0xA2, 0x7D, 0xCE, 0x38, 0x8C, 0xB1, 0x0C, 0x91, 0x6E,\n0x91, 0xF8, 0x40, 0xCF, 0xD0, 0x01, 0x1F, 0x2A, 0x21, 0x1C, 0xC3, 0x81, 0x93, 0xB1, 0x73, 0x50,\n0xCB, 0xC2, 0x3F, 0xB6, 0x85, 0x25, 0x39, 0xCB, 0x20, 0x7C, 0xA0, 0x98, 0x8F, 0xA0, 0x21, 0x92,\n0xB7, 0x07, 0x7B, 0x4F, 0xD5, 0xA1, 0x01, 0x07, 0x41, 0xFD, 0xF3, 0x81, 0x8C, 0xFB, 0x3D, 0x20,\n0xB4, 0xCF, 0x55, 0x42, 0x46, 0x03, 0x48, 0xE3, 0x03, 0x11, 0xC0, 0xBF, 0x78, 0xA3, 0x26, 0x01,\n0xC0, 0x56, 0xAA, 0xF8, 0xF8, 0xC9, 0x09, 0x31, 0x3C, 0xF0, 0x0F, 0x9D, 0x90, 0x9D, 0x89, 0xED,\n0x0F, 0x82, 0x5B, 0xDF, 0x38, 0x1E, 0xB6, 0x26, 0xB4, 0x1D, 0x0F, 0xE5, 0x09, 0x0F, 0x11, 0x5E,\n0xA1, 0x0A, 0x3E, 0x68, 0x88, 0xD0, 0x1E, 0x1C, 0x8C, 0x10, 0xF8, 0xC0, 0x41, 0x2A, 0x3D, 0x44,\n0x2F, 0xEF, 0x96, 0x5B, 0x86, 0xA9, 0x7C, 0x05, 0x20, 0x02, 0x21, 0xA3, 0x92, 0x56, 0xA3, 0x50,\n0xFA, 0x67, 0xA8, 0xAE, 0xBF, 0x15, 0xB5, 0x4C, 0x7A, 0x02, 0x04, 0xE6, 0x63, 0x1A, 0x8E, 0x89,\n0xDB, 0xC8, 0x02, 0x3E, 0x24, 0x3D, 0xC3, 0x87, 0x26, 0xCA, 0xBB, 0x1C, 0x01, 0xC8, 0x1E, 0x00,\n0xEB, 0x99, 0x92, 0xD1, 0x4D, 0x7B, 0x30, 0x4C, 0x42, 0x7C, 0xED, 0x93, 0x8F, 0x55, 0x01, 0x11,\n0xCA, 0x57, 0x0A, 0x22, 0x59, 0x7B, 0x70, 0x20, 0x42, 0x48, 0x3F, 0x70, 0x90, 0x4C, 0xED, 0x40,\n0x7C, 0xD0, 0x32, 0x8C, 0xCA, 0xBB, 0xE5, 0x86, 0xC8, 0x68, 0x28, 0x5D, 0xD3, 0xFE, 0xD0, 0x3D,\n0x24, 0x03, 0xA3, 0x8C, 0x89, 0x23, 0xB2, 0x96, 0xF8, 0xA0, 0xA9, 0x4E, 0x7A, 0xAE, 0xE9, 0xB0,\n0x3D, 0x48, 0x09, 0x2B, 0x1D, 0x0B, 0x7B, 0xE9, 0xC7, 0xC9, 0x3F, 0x28, 0xF0, 0x96, 0x22, 0x2C,\n0x74, 0x0D, 0x1F, 0x03, 0xC8, 0xF9, 0x50, 0x2E, 0x06, 0x44, 0xB9, 0x97, 0xF6, 0xE0, 0x00, 0x84,\n0xC0, 0x47, 0xD9, 0x41, 0xD0, 0x10, 0x7C, 0x40, 0x48, 0x33, 0xA3, 0xBC, 0x2B, 0x12, 0x32, 0x1A,\n0x4E, 0xD7, 0xC4, 0x57, 0x92, 0x9C, 0x0F, 0x3A, 0x1F, 0x80, 0xC1, 0x57, 0xDD, 0xAE, 0xE3, 0x61,\n0xBB, 0xF0, 0xA1, 0xC9, 0x00, 0x81, 0x0F, 0x91, 0x10, 0x6F, 0xE3, 0xC3, 0x66, 0x71, 0xDC, 0xA6,\n0x63, 0x0A, 0xCA, 0x57, 0xF8, 0x07, 0x2B, 0x7C, 0x0C, 0x22, 0xF8, 0x10, 0x09, 0xA1, 0x3D, 0x28,\n0x12, 0x52, 0xDF, 0xFE, 0x08, 0x1C, 0x04, 0xD5, 0x7F, 0x3A, 0x4A, 0x11, 0xC5, 0x2C, 0xC2, 0x2B,\n0x89, 0x90, 0xC0, 0xAF, 0x7B, 0x10, 0x7C, 0x48, 0x32, 0x3E, 0xB2, 0xFE, 0x07, 0xD5, 0x2B, 0x82,\n0x1B, 0x42, 0xAD, 0xBB, 0x2A, 0x3D, 0xD0, 0x1E, 0x14, 0xE5, 0xB4, 0xA6, 0x51, 0xB2, 0x90, 0xEC,\n0xA7, 0xCB, 0x9C, 0x85, 0x58, 0xAF, 0xE7, 0x63, 0x15, 0x12, 0x52, 0x35, 0x11, 0x26, 0x94, 0x77,\n0x25, 0x6D, 0x5E, 0xE9, 0x1F, 0x38, 0xC8, 0xEB, 0xA2, 0x2C, 0x95, 0x0F, 0x4E, 0xEE, 0xE5, 0x1A,\n0xDF, 0x5A, 0x1E, 0x32, 0xA8, 0x44, 0x30, 0xE8, 0x87, 0x50, 0x1F, 0x62, 0xE4, 0xA5, 0x2C, 0xF6,\n0x38, 0xBD, 0x44, 0xD2, 0x73, 0x85, 0x81, 0xF8, 0x43, 0x2F, 0x28, 0x0A, 0x1C, 0x35, 0x11, 0xC2,\n0xAC, 0xC5, 0x32, 0xA3, 0xA3, 0x5C, 0xC4, 0x62, 0x1D, 0x0D, 0x28, 0xF2, 0x73, 0x11, 0x10, 0xEA,\n0x57, 0x22, 0x21, 0xBF, 0xD5, 0xF2, 0x11, 0x3B, 0x08, 0x6A, 0x87, 0xE3, 0xE3, 0x72, 0xDE, 0x90,\n0x82, 0x68, 0xAF, 0xCB, 0x90, 0x84, 0x10, 0x60, 0x69, 0xA2, 0x83, 0x7E, 0xD8, 0x3A, 0x2F, 0xE5,\n0xC7, 0x7E, 0x56, 0xD6, 0xFA, 0xAE, 0x46, 0xCF, 0xA6, 0x9A, 0xFB, 0xAF, 0x3F, 0xA6, 0x14, 0xDD,\n0xD7, 0xD8, 0x42, 0xD2, 0xC7, 0x43, 0x12, 0x07, 0x9A, 0x85, 0x0C, 0x1A, 0x62, 0x7D, 0x58, 0x4D,\n0x26, 0x95, 0xD7, 0x7A, 0x6F, 0x2A, 0x09, 0xA9, 0xE7, 0x23, 0x76, 0x10, 0x34, 0x10, 0x1F, 0x9B,\n0xF3, 0xF9, 0x6C, 0xDC, 0x34, 0x15, 0x84, 0xAC, 0xEC, 0x55, 0x24, 0xCA, 0xEA, 0xBB, 0x9A, 0x75,\n0xDD, 0xCD, 0x81, 0x1A, 0x3E, 0xBA, 0x28, 0xDE, 0x70, 0xA0, 0x37, 0xC8, 0x28, 0x60, 0x63, 0x78,\n0xAC, 0x1F, 0x6B, 0xF8, 0xF8, 0xBD, 0x8E, 0x90, 0x8E, 0xBF, 0xB5, 0x11, 0xE2, 0x30, 0x9C, 0xF4,\n0x0F, 0x92, 0xF4, 0x48, 0x74, 0x42, 0x76, 0xAF, 0x0D, 0x84, 0xF4, 0x5D, 0xCC, 0xB2, 0x5F, 0xEC,\n0x6A, 0x52, 0xC3, 0x47, 0x33, 0xBE, 0x6A, 0x98, 0x6E, 0x2A, 0x21, 0x3A, 0x1F, 0x82, 0x83, 0xD4,\n0x13, 0x72, 0x29, 0x89, 0x0F, 0xE0, 0x8E, 0x4D, 0xF6, 0x4C, 0xCF, 0x56, 0x15, 0x7C, 0x90, 0x87,\n0xC8, 0xD2, 0xF9, 0xA8, 0x21, 0x64, 0xE9, 0xDA, 0x92, 0x86, 0x1C, 0xE4, 0xE9, 0x39, 0x21, 0x8B,\n0xC7, 0xBB, 0x8F, 0x8F, 0x6B, 0x1B, 0x35, 0xFE, 0x51, 0x45, 0xC8, 0xE3, 0x8E, 0x10, 0xFF, 0xEF,\n0x42, 0x0B, 0xF1, 0x3D, 0xE3, 0xC3, 0x45, 0x68, 0x15, 0x15, 0xB1, 0xB6, 0xCE, 0x47, 0x9F, 0x84,\n0xE4, 0xF9, 0x87, 0x6B, 0xA5, 0xC6, 0x11, 0xDD, 0xAC, 0x31, 0x55, 0x7A, 0xC8, 0x79, 0x05, 0x1F,\n0xB2, 0x83, 0xE8, 0x51, 0x56, 0x2B, 0xF2, 0xC1, 0x59, 0xEF, 0x2E, 0x27, 0x44, 0xB1, 0xD7, 0xC9,\n0xC4, 0xF8, 0x18, 0x8E, 0x90, 0xA9, 0xF3, 0xE1, 0x43, 0xE6, 0xC3, 0x09, 0x59, 0x32, 0xEF, 0xF2,\n0xC1, 0x4F, 0x6E, 0x1F, 0xEF, 0x7C, 0xFA, 0xDA, 0x10, 0xF1, 0x70, 0xFF, 0xE8, 0x6E, 0x64, 0xFF,\n0x78, 0xFC, 0xE8, 0x88, 0x74, 0x86, 0x16, 0x79, 0x08, 0xFE, 0xE1, 0x12, 0x0D, 0x64, 0x9A, 0x5E,\n0x1A, 0x1A, 0xE9, 0x7D, 0xF3, 0xE1, 0xD2, 0xFC, 0xC3, 0xF9, 0xE8, 0xD4, 0x58, 0x98, 0x5E, 0x23,\n0x99, 0x0F, 0xD5, 0x41, 0xF0, 0x90, 0x4D, 0xDF, 0xE9, 0x79, 0x77, 0x31, 0x6B, 0x08, 0x11, 0xEC,\n0xD5, 0xF8, 0x70, 0xAD, 0x20, 0xA4, 0x57, 0x3E, 0xEA, 0x00, 0x59, 0xA2, 0xC5, 0x22, 0xB6, 0x10,\n0x3F, 0x19, 0xEB, 0x6E, 0xCD, 0x1C, 0xD6, 0xF9, 0x70, 0x44, 0x34, 0xFB, 0x70, 0xF6, 0x7C, 0x2C,\n0xC2, 0x2C, 0x24, 0xF5, 0x40, 0x90, 0x52, 0xC5, 0xEA, 0xFA, 0x43, 0x10, 0xD2, 0x77, 0xFD, 0xCA,\n0x7E, 0xB1, 0x48, 0xE6, 0x23, 0x11, 0x52, 0x17, 0x66, 0x89, 0x7C, 0xC8, 0x0E, 0x82, 0xF4, 0xF6,\n0x87, 0xDA, 0x46, 0x47, 0x4D, 0xD3, 0xB8, 0x87, 0xC4, 0x78, 0xF0, 0x32, 0xDA, 0x17, 0xFD, 0xF3,\n0x31, 0x65, 0x88, 0x7C, 0xA0, 0xA7, 0x82, 0x81, 0x40, 0x8A, 0x01, 0xB4, 0x76, 0x3C, 0x6C, 0x7D,\n0x94, 0x3C, 0xE4, 0x19, 0x39, 0x2A, 0x8A, 0x7F, 0x24, 0x02, 0xBB, 0xAD, 0x31, 0x20, 0xD8, 0x07,\n0x84, 0x4C, 0xA3, 0x2A, 0x16, 0x7C, 0xF4, 0xEE, 0x21, 0xF0, 0xA1, 0x03, 0x32, 0xC9, 0xFF, 0x56,\n0xC8, 0x25, 0x97, 0x32, 0x51, 0xB4, 0x51, 0xF8, 0x90, 0x1D, 0x44, 0x0F, 0xB3, 0x7E, 0xAB, 0xE6,\n0xE3, 0x6A, 0x3C, 0x46, 0x73, 0x08, 0x89, 0xF8, 0x40, 0xAB, 0x9E, 0x92, 0x73, 0xCA, 0x57, 0x53,\n0xC6, 0xA9, 0x44, 0x64, 0x9A, 0xF1, 0xB1, 0xF5, 0x7E, 0x48, 0xD9, 0x43, 0xEC, 0x76, 0xF9, 0xB4,\n0xC3, 0xC3, 0x57, 0x4F, 0x44, 0x44, 0x3E, 0xD0, 0x49, 0x3E, 0x7C, 0x7C, 0xDC, 0xFF, 0x27, 0x4F,\n0xB7, 0xC7, 0x2D, 0xC4, 0xC6, 0x32, 0x57, 0x60, 0x21, 0x84, 0x57, 0x8C, 0x9E, 0xF9, 0x38, 0x9B,\n0x1C, 0xEA, 0x84, 0x7F, 0x24, 0xFB, 0x80, 0x90, 0xF3, 0xBA, 0xD2, 0x90, 0x84, 0x87, 0xEE, 0x20,\n0x48, 0x68, 0x0F, 0x8A, 0xDA, 0xC0, 0x07, 0x26, 0x42, 0x43, 0x44, 0xE0, 0x63, 0x72, 0xB6, 0x1A,\n0xC2, 0x3F, 0x40, 0x44, 0xC3, 0x03, 0x39, 0x0F, 0xE5, 0xAE, 0xBA, 0x5D, 0xCA, 0x1A, 0x3E, 0x52,\n0x22, 0x72, 0xF7, 0x8D, 0xC8, 0x87, 0x94, 0x88, 0xAC, 0x77, 0x0F, 0xBB, 0xE7, 0xC3, 0x46, 0xE4,\n0x21, 0x9E, 0x9F, 0x67, 0x9A, 0x0A, 0xF1, 0x55, 0x7F, 0x1E, 0xB2, 0xCA, 0xFD, 0x43, 0x26, 0x64,\n0x52, 0xFA, 0x53, 0xE9, 0xB5, 0x0D, 0x11, 0x89, 0x0F, 0xDD, 0x41, 0x50, 0xDB, 0x1B, 0x1F, 0xF3,\n0xC2, 0x1F, 0xCD, 0xA1, 0xA7, 0x1E, 0xF0, 0x31, 0x0C, 0x21, 0xF8, 0x87, 0xE4, 0x21, 0xCB, 0x82,\n0x16, 0x8B, 0xC3, 0x49, 0xC8, 0x6C, 0xEC, 0xDA, 0x83, 0xEB, 0x9C, 0x90, 0x75, 0x58, 0xDE, 0x25,\n0xFF, 0x40, 0xA1, 0x7F, 0x40, 0x5E, 0x72, 0xA8, 0x75, 0x39, 0x0B, 0x21, 0xBE, 0xCA, 0x14, 0x7C,\n0xE4, 0xD6, 0xFD, 0x23, 0x1F, 0xD7, 0x43, 0xF8, 0x07, 0x0A, 0xF8, 0x48, 0xFE, 0x91, 0x11, 0xD2,\n0x83, 0x87, 0xC0, 0x87, 0xEA, 0x20, 0x3A, 0x21, 0xF5, 0x7C, 0xCC, 0x64, 0x42, 0xE0, 0x23, 0xD7,\n0xAA, 0xBF, 0xF6, 0x60, 0x61, 0x88, 0x7C, 0xA0, 0x83, 0x53, 0xA0, 0xB8, 0x62, 0x82, 0x9D, 0x81,\n0x45, 0x76, 0xDE, 0xAD, 0x69, 0x12, 0x07, 0xED, 0x73, 0xA8, 0x50, 0x3C, 0x64, 0x9D, 0xF2, 0x73,\n0x5C, 0x24, 0x35, 0x44, 0x00, 0x95, 0x41, 0x7E, 0x9E, 0x4B, 0x8A, 0xAF, 0x78, 0x71, 0xFA, 0x6B,\n0x0F, 0x16, 0x15, 0xB5, 0x3F, 0x10, 0x84, 0xF4, 0xD0, 0x10, 0x81, 0x8F, 0x7A, 0x07, 0x41, 0xFD,\n0xB4, 0x07, 0xAF, 0xC6, 0x05, 0xD1, 0x32, 0x2C, 0x94, 0xAF, 0xCA, 0xFA, 0x30, 0x04, 0x1F, 0x0C,\n0x9D, 0x0F, 0xAE, 0xEA, 0x9E, 0xD7, 0xB3, 0xAC, 0xBC, 0x9B, 0xE6, 0x6C, 0xB6, 0x3E, 0x8A, 0xF1,\n0x15, 0x84, 0x44, 0xF1, 0x15, 0x2B, 0x0C, 0xEE, 0xE8, 0x38, 0xF4, 0x10, 0xF8, 0x50, 0x09, 0x99,\n0x16, 0x06, 0x2D, 0xC3, 0x9E, 0xF9, 0x40, 0x55, 0x7C, 0x5C, 0x8D, 0xE7, 0x3D, 0x14, 0xB3, 0xE0,\n0xA3, 0xDE, 0x41, 0x50, 0xD0, 0xFE, 0x50, 0xFD, 0x83, 0xE7, 0x98, 0xC9, 0x7E, 0x30, 0x99, 0x08,\n0x7C, 0xE0, 0x21, 0x3D, 0x85, 0x57, 0x01, 0x20, 0x3A, 0x1F, 0x94, 0x7B, 0x49, 0x45, 0x96, 0x8B,\n0x5D, 0xFA, 0x71, 0x60, 0x20, 0x69, 0xAC, 0x3F, 0x1E, 0x6F, 0x9F, 0x97, 0x15, 0xF3, 0xC1, 0xFF,\n0x63, 0x1B, 0x0F, 0xEA, 0x76, 0x36, 0x66, 0x0B, 0xD4, 0xC2, 0xC7, 0x4B, 0x15, 0x02, 0xAC, 0xE0,\n0xB5, 0x91, 0x09, 0xF9, 0x22, 0xF8, 0xD9, 0xE4, 0xB8, 0x24, 0x3E, 0x10, 0x4D, 0x75, 0x4D, 0x1A,\n0x1F, 0xBA, 0x83, 0xA0, 0xA0, 0xBC, 0xAB, 0xE8, 0x9C, 0xF6, 0x47, 0x89, 0x90, 0x42, 0xCB, 0x70,\n0x82, 0x2A, 0x3C, 0xE4, 0x8B, 0x0A, 0x3E, 0x82, 0xA1, 0xF3, 0x01, 0x21, 0x36, 0x25, 0xFF, 0x6E,\n0x57, 0xAF, 0x69, 0x0F, 0x1E, 0x86, 0x58, 0xFE, 0xCD, 0xA8, 0xFD, 0x81, 0xA2, 0x86, 0xC8, 0x63,\n0xC1, 0x3E, 0x08, 0xBA, 0x76, 0x67, 0xBE, 0xA7, 0x56, 0x8C, 0x5F, 0x14, 0x2B, 0xD4, 0xA9, 0xF4,\n0xBC, 0xAF, 0x54, 0x9D, 0xF4, 0x3C, 0x54, 0xD4, 0xFE, 0xC8, 0x55, 0xDF, 0x10, 0xD9, 0xC8, 0x7C,\n0x20, 0x09, 0x90, 0xF6, 0x75, 0xFE, 0x91, 0xF1, 0x31, 0xFB, 0x7B, 0x0B, 0x21, 0x01, 0x1E, 0xBD,\n0x9B, 0xC8, 0x75, 0x1F, 0x7C, 0x20, 0xD0, 0x70, 0x3C, 0xAC, 0xBC, 0x9B, 0x68, 0x28, 0xC4, 0x58,\n0x36, 0x5E, 0x78, 0x48, 0x01, 0x8F, 0xB0, 0x21, 0xB2, 0x3E, 0xB4, 0xA6, 0x7D, 0x33, 0x32, 0x59,\n0x49, 0xD7, 0x54, 0x5F, 0x90, 0x87, 0xE0, 0x1F, 0xCB, 0x6D, 0xB6, 0x49, 0xAB, 0x96, 0x7F, 0x40,\n0xC8, 0x10, 0x7C, 0xA0, 0x90, 0x8F, 0x19, 0x6B, 0x3F, 0x84, 0xB4, 0xF0, 0x21, 0x38, 0x88, 0x8E,\n0x48, 0xE5, 0x41, 0xCD, 0x1B, 0x9E, 0xA1, 0x2B, 0xFF, 0x92, 0xD3, 0x4E, 0x88, 0xAF, 0x86, 0x20,\n0x04, 0xFF, 0x88, 0xC6, 0x54, 0xE6, 0x03, 0x0F, 0x79, 0x22, 0x0B, 0x79, 0xFC, 0x48, 0x44, 0x95,\n0x39, 0x88, 0xEF, 0xD8, 0xA6, 0x10, 0x5E, 0xE9, 0x84, 0xE4, 0x8F, 0x8A, 0x39, 0x51, 0xEE, 0x25,\n0x3F, 0x0F, 0xFC, 0x83, 0x96, 0xA1, 0x82, 0x07, 0x63, 0x10, 0x3E, 0x50, 0xC6, 0x07, 0x53, 0xA5,\n0x4F, 0x0F, 0x81, 0x0F, 0xD9, 0x41, 0x74, 0x42, 0x5E, 0x53, 0xDE, 0x2D, 0x92, 0x02, 0x21, 0x94,\n0xAF, 0x62, 0x9D, 0xAD, 0x06, 0x48, 0xCF, 0x19, 0x32, 0x1E, 0x14, 0xB3, 0xE0, 0x63, 0x1F, 0x01,\n0x7D, 0xCC, 0x11, 0x29, 0x9E, 0x76, 0xF2, 0x2C, 0x29, 0xAF, 0x5F, 0xDD, 0x85, 0xEB, 0x3A, 0xC5,\n0x7C, 0xF8, 0x47, 0xD1, 0x43, 0x90, 0x14, 0x5F, 0xE1, 0x21, 0x43, 0xF0, 0x81, 0x98, 0x07, 0x59,\n0x7B, 0xB0, 0x3C, 0x87, 0x9A, 0xAE, 0xDC, 0x7B, 0x5E, 0x49, 0x08, 0xE1, 0x95, 0xEA, 0x20, 0x3A,\n0x21, 0xF5, 0x9F, 0x8E, 0xE2, 0xF9, 0x1C, 0x33, 0x91, 0xCE, 0x47, 0x53, 0xB9, 0x17, 0x3E, 0x62,\n0xAD, 0x86, 0xC8, 0x3F, 0x68, 0x88, 0xD4, 0xF1, 0xB1, 0x5D, 0xFC, 0xDD, 0x32, 0xB4, 0x77, 0xF3,\n0x83, 0xC4, 0xA0, 0x98, 0x86, 0xAC, 0x73, 0xFF, 0xD0, 0x09, 0x89, 0xF1, 0xA0, 0xA9, 0x9E, 0xAE,\n0xA7, 0x0D, 0x19, 0xB6, 0x64, 0xDA, 0x02, 0x8A, 0xE4, 0x1F, 0x8C, 0xFA, 0x44, 0x9D, 0xF6, 0x87,\n0x4E, 0x08, 0xED, 0xC1, 0x02, 0x1C, 0x3D, 0x34, 0x44, 0xE0, 0x43, 0x70, 0x10, 0x45, 0x6D, 0x4F,\n0xED, 0x41, 0x94, 0x37, 0xD5, 0x05, 0x3E, 0xF0, 0x90, 0x21, 0xFC, 0x03, 0x44, 0x2A, 0xF8, 0x20,\n0x11, 0xF1, 0xF6, 0x47, 0x4A, 0x10, 0xA2, 0xB7, 0x7A, 0xCB, 0x14, 0x1E, 0x32, 0xFF, 0x10, 0xA3,\n0xAC, 0xB5, 0xC4, 0x87, 0x6D, 0x77, 0x55, 0x83, 0xA5, 0x2A, 0xFC, 0x43, 0xF2, 0xD7, 0x41, 0xFC,\n0x03, 0xD1, 0x3E, 0x87, 0x87, 0x2C, 0x03, 0xE1, 0xFB, 0xF5, 0x84, 0xC0, 0x87, 0xEA, 0x20, 0xAA,\n0x2C, 0x68, 0x6B, 0xEB, 0x8E, 0xE5, 0x72, 0x1E, 0xBF, 0x07, 0xA0, 0xD4, 0x32, 0x9C, 0xA8, 0xF2,\n0x3F, 0x90, 0x50, 0x4D, 0x89, 0xDB, 0x83, 0xA4, 0xBF, 0xF9, 0xD8, 0xC6, 0x6B, 0x9A, 0x60, 0x7E,\n0x21, 0x07, 0xAB, 0xE2, 0xAE, 0x45, 0xDD, 0x19, 0x22, 0x9A, 0x7F, 0xD0, 0x10, 0x79, 0xB8, 0xEB,\n0xBA, 0xF1, 0x27, 0x87, 0xFB, 0xD4, 0x53, 0xA9, 0x3D, 0xB8, 0xCD, 0x8F, 0x3C, 0xED, 0xD8, 0x1D,\n0x23, 0xFF, 0xE8, 0xA1, 0xA9, 0xBE, 0xF2, 0xF6, 0x87, 0xA8, 0xD5, 0x04, 0x3E, 0x24, 0x35, 0x95,\n0x27, 0x66, 0xC1, 0x87, 0xE8, 0x20, 0xB2, 0x7E, 0xFB, 0xED, 0xDC, 0xA2, 0xA6, 0x3A, 0xFF, 0x68,\n0xC4, 0x31, 0x9F, 0x77, 0xC5, 0xAC, 0x55, 0x05, 0x21, 0x1F, 0xEA, 0xFD, 0x43, 0x9F, 0x03, 0xD7,\n0xA2, 0x7F, 0x30, 0xD1, 0xBA, 0x4B, 0xFC, 0xF8, 0xA2, 0x0D, 0xFC, 0x43, 0x93, 0x87, 0x57, 0xEA,\n0x30, 0x44, 0xC0, 0x63, 0x7B, 0xFC, 0x98, 0x91, 0xE3, 0xF1, 0x8B, 0xB8, 0xFC, 0x45, 0xDB, 0xD9,\n0xEB, 0xA8, 0x0D, 0x44, 0x51, 0x98, 0x48, 0x28, 0x29, 0x52, 0xA5, 0x08, 0x05, 0x52, 0x16, 0x51,\n0x51, 0xF1, 0x04, 0x79, 0x09, 0xB6, 0xA0, 0x22, 0xA6, 0x8F, 0x84, 0x94, 0x62, 0x1B, 0x7A, 0x2B,\n0x48, 0xA9, 0xD2, 0x47, 0xDA, 0x3C, 0x6B, 0xAE, 0x2F, 0x63, 0xBE, 0xCC, 0x30, 0x1E, 0xCE, 0xC4,\n0xCE, 0x99, 0xC1, 0x18, 0xF2, 0x67, 0x0F, 0xF3, 0xF9, 0xCC, 0xBD, 0xD7, 0x4B, 0x6A, 0x08, 0xE1,\n0xDB, 0x19, 0x16, 0xB2, 0x8C, 0x10, 0x0B, 0x2E, 0xC2, 0xBC, 0x78, 0xD8, 0xEC, 0xF7, 0x18, 0x21,\n0xF9, 0x9E, 0x6D, 0xDF, 0xE1, 0x43, 0x71, 0x90, 0xAF, 0xEF, 0x44, 0xBD, 0x79, 0xF3, 0xEE, 0xFD,\n0x76, 0xFB, 0xAE, 0x42, 0x6F, 0x75, 0x3E, 0x6C, 0x40, 0x3E, 0xAC, 0x8E, 0xF3, 0x63, 0x8D, 0x36,\n0xEB, 0xF5, 0xE5, 0x82, 0x78, 0x91, 0xD7, 0xBA, 0x52, 0xFB, 0x3A, 0x9D, 0x5F, 0x6A, 0x74, 0x7E,\n0xE9, 0xFE, 0x7B, 0xB5, 0x1F, 0x9A, 0xFC, 0x37, 0xDA, 0x1F, 0xA9, 0x51, 0x1B, 0x1D, 0xDC, 0x61,\n0xFF, 0x48, 0xEB, 0xE7, 0x75, 0x95, 0x8A, 0x23, 0x7D, 0xF7, 0xC6, 0xE6, 0x58, 0xA3, 0xF9, 0x71,\n0xD5, 0xE1, 0xA1, 0x76, 0x9B, 0x3C, 0xEF, 0x2A, 0xB4, 0x7D, 0x6F, 0x73, 0x59, 0xD6, 0x17, 0x00,\n0x11, 0xF4, 0xFE, 0xFD, 0xFB, 0xAD, 0xDE, 0x48, 0x42, 0x68, 0x5A, 0xCD, 0xEA, 0x5C, 0x7B, 0x53,\n0x37, 0xE7, 0x9F, 0xAD, 0x2D, 0xE5, 0xBE, 0x5E, 0xDA, 0xAC, 0x69, 0x55, 0x3A, 0xBE, 0xED, 0x4F,\n0xCC, 0x5F, 0x49, 0xBB, 0xDD, 0x8F, 0x2A, 0xED, 0x76, 0xBB, 0x97, 0x1A, 0x9D, 0x5A, 0x9D, 0xED,\n0xF6, 0xDB, 0xFE, 0xB0, 0x5C, 0x56, 0x0D, 0x4F, 0x25, 0x4D, 0x1B, 0xF3, 0x90, 0x0A, 0xBB, 0x99,\n0xB1, 0x02, 0x17, 0x43, 0xD8, 0x8A, 0x79, 0x69, 0x80, 0xE8, 0x7A, 0xF3, 0x15, 0x40, 0x34, 0xE9,\n0x87, 0xF1, 0xB6, 0x93, 0x7E, 0x8E, 0xAB, 0xD5, 0xEC, 0xA3, 0x7F, 0xD3, 0xA8, 0xA2, 0xA3, 0xFD,\n0xC6, 0x4B, 0x87, 0x88, 0x2C, 0x30, 0x51, 0xFA, 0xF3, 0xB2, 0x93, 0x03, 0xD2, 0x3E, 0xEE, 0xA6,\n0xD3, 0x4B, 0xDB, 0x56, 0xE1, 0xB1, 0x6B, 0x76, 0x55, 0x7C, 0x34, 0x75, 0x84, 0xB4, 0x67, 0x23,\n0x84, 0xA3, 0x2F, 0x1E, 0xBF, 0xB5, 0xE5, 0xD2, 0x08, 0xD1, 0x87, 0xC7, 0x75, 0x51, 0xD5, 0xF1,\n0x61, 0x84, 0x1C, 0x3F, 0x49, 0xEA, 0xB2, 0x5D, 0x36, 0x17, 0xAA, 0xF0, 0x30, 0x4D, 0x8B, 0x07,\n0xFA, 0x0C, 0x20, 0xA2, 0x74, 0xFF, 0x70, 0xC9, 0x7C, 0xCC, 0xAC, 0xAD, 0x54, 0x42, 0x8E, 0xF3,\n0x4D, 0xA7, 0x39, 0x6E, 0xAE, 0xF1, 0xF1, 0x6C, 0xB3, 0x40, 0xEA, 0x57, 0xE9, 0xD7, 0xE0, 0x97,\n0xF6, 0x74, 0x6E, 0x4F, 0x35, 0x7C, 0x54, 0x11, 0xD2, 0xE1, 0x51, 0x41, 0xC8, 0xD9, 0x8E, 0xC6,\n0x10, 0xD9, 0xAB, 0xF2, 0x93, 0x3D, 0xC8, 0x06, 0x12, 0x06, 0x53, 0x1D, 0xF9, 0x4D, 0xF8, 0xB0,\n0x8E, 0x22, 0x1F, 0xAB, 0x55, 0x37, 0x19, 0xEA, 0xF8, 0xD0, 0x3D, 0xA4, 0xD2, 0x0F, 0x70, 0x90,\n0x49, 0x3D, 0xC4, 0xF8, 0xE8, 0x25, 0xF3, 0xE1, 0x84, 0xAC, 0x8C, 0x10, 0x8D, 0x0F, 0x57, 0xB7,\n0xCC, 0x92, 0xF9, 0x08, 0x88, 0x98, 0x3F, 0x94, 0xB7, 0x76, 0x85, 0x3C, 0xDC, 0x08, 0x69, 0x05,\n0xFF, 0xB0, 0xE9, 0x78, 0x6A, 0xCF, 0xDD, 0x9C, 0x94, 0xF9, 0x70, 0x44, 0x64, 0x42, 0x76, 0x2E,\n0x99, 0x90, 0xEE, 0x60, 0xBC, 0x49, 0x16, 0x12, 0xF8, 0x70, 0x0F, 0x11, 0x44, 0xB0, 0x22, 0x8E,\n0xFC, 0xE5, 0xF6, 0x61, 0x1D, 0x65, 0x3E, 0xBC, 0xE9, 0x80, 0xB8, 0xA6, 0xF6, 0x0F, 0x1C, 0xA4,\n0x56, 0xBA, 0x7F, 0x40, 0xC8, 0xAA, 0xF0, 0xB0, 0x18, 0xBD, 0xE7, 0x63, 0x06, 0x21, 0x02, 0x1F,\n0x2A, 0x21, 0xEB, 0x44, 0xCB, 0xD2, 0xD6, 0x36, 0x3E, 0x59, 0x22, 0x0F, 0x69, 0x33, 0x5B, 0xEC,\n0xC3, 0x00, 0x71, 0x3E, 0x4E, 0x9A, 0x87, 0x74, 0x6C, 0x04, 0xBD, 0xCA, 0xFE, 0x11, 0x24, 0xF3,\n0xE1, 0x8C, 0xB4, 0x1C, 0x65, 0xE1, 0x2C, 0x96, 0xBD, 0x0E, 0x52, 0x1C, 0xF2, 0xB7, 0x74, 0xFF,\n0x80, 0x90, 0x32, 0x1F, 0x0B, 0xC7, 0xC3, 0x1B, 0x37, 0xED, 0x0D, 0x3E, 0x1C, 0x0F, 0x08, 0x99,\n0xD2, 0x3F, 0x70, 0x10, 0xA0, 0x52, 0x25, 0xF8, 0x07, 0xDA, 0x0A, 0x1E, 0x62, 0x83, 0xC2, 0xB0,\n0x2C, 0x1E, 0x10, 0x72, 0x0C, 0x7C, 0x40, 0x88, 0x9E, 0xBF, 0x22, 0x58, 0x77, 0xBB, 0xC8, 0xEF,\n0x83, 0x87, 0xE9, 0xE0, 0xB3, 0x28, 0x3B, 0xB9, 0x42, 0xF7, 0xA9, 0xD8, 0x33, 0x72, 0x56, 0xF8,\n0x40, 0x8D, 0x80, 0x07, 0x3C, 0x69, 0x84, 0x9C, 0x03, 0x1F, 0xD7, 0xE3, 0xDA, 0x63, 0x1F, 0xF9,\n0xB3, 0x80, 0x0F, 0x29, 0x0E, 0x49, 0xA4, 0x84, 0x1F, 0x08, 0x42, 0x0A, 0x7C, 0x30, 0x17, 0x04,\n0x0F, 0xB1, 0x99, 0x86, 0x26, 0xF7, 0x8F, 0x37, 0xEF, 0xDF, 0x75, 0x4B, 0xAC, 0xF7, 0x6F, 0xDE,\n0x55, 0x4A, 0xF3, 0x0F, 0x79, 0x95, 0x05, 0x1C, 0xF6, 0x80, 0x10, 0x81, 0x0F, 0xC9, 0x43, 0xEE,\n0xFC, 0xA3, 0x83, 0xC1, 0x36, 0xE9, 0xBE, 0xE3, 0x71, 0xF3, 0x0F, 0x08, 0x69, 0x7B, 0x44, 0xDA,\n0x64, 0xEB, 0x32, 0x34, 0x02, 0x1C, 0xEE, 0x21, 0x67, 0x91, 0x0F, 0x10, 0xF9, 0xFD, 0x20, 0xC5,\n0x0B, 0x1E, 0x12, 0x21, 0x9D, 0x9F, 0x59, 0x0F, 0xC4, 0x9E, 0xF1, 0x10, 0x3B, 0xE6, 0xCC, 0x96,\n0x73, 0x95, 0x3C, 0x64, 0x9D, 0x4A, 0xE1, 0x03, 0x59, 0xBD, 0xB0, 0xC8, 0xC7, 0xEC, 0xC6, 0x87,\n0xEF, 0x3C, 0x24, 0xC4, 0x2E, 0xBF, 0x31, 0x21, 0xD3, 0xFA, 0x87, 0xA1, 0x61, 0x80, 0x74, 0x9C,\n0xD4, 0x4A, 0xE2, 0x03, 0x15, 0xCF, 0xF1, 0xE6, 0x1F, 0x50, 0x52, 0x20, 0xE4, 0xF8, 0x89, 0x21,\n0xD7, 0x3C, 0xE4, 0xEE, 0x23, 0xBD, 0x39, 0x85, 0xD1, 0xC0, 0xFE, 0x8D, 0x9E, 0x3B, 0x71, 0x01,\n0xF6, 0xA7, 0xF8, 0x45, 0xB8, 0x5C, 0xD3, 0xCB, 0xC9, 0xAC, 0x26, 0xE5, 0x63, 0xD7, 0x68, 0xFE,\n0x81, 0x1E, 0xAD, 0xAF, 0xC0, 0xC3, 0x7A, 0x94, 0xCC, 0x2A, 0x2C, 0xAF, 0x10, 0x46, 0xBB, 0x4C,\n0xB6, 0xF9, 0xFC, 0xAE, 0xC8, 0x07, 0x84, 0x14, 0xF9, 0xC0, 0x3E, 0x14, 0x0F, 0x79, 0x9B, 0xAA,\n0xCE, 0x3F, 0x74, 0x07, 0xA9, 0x37, 0x11, 0x89, 0x0F, 0x00, 0xD9, 0x66, 0xD7, 0x8F, 0x51, 0xFC,\n0x01, 0x24, 0x4E, 0xC8, 0x7C, 0x28, 0xFC, 0x60, 0xC8, 0x15, 0x42, 0xC0, 0x03, 0x05, 0xD7, 0xF0,\n0x47, 0xBC, 0x6F, 0xA8, 0xF8, 0x65, 0xD4, 0x37, 0xA1, 0x41, 0x08, 0xF3, 0xAA, 0xF5, 0x8E, 0x7F,\n0xFC, 0xDD, 0xDB, 0x93, 0xE8, 0x1F, 0x84, 0xEA, 0xBF, 0x15, 0x3E, 0x50, 0x53, 0xF2, 0x0F, 0x48,\n0xED, 0x8F, 0x08, 0x32, 0xEE, 0x19, 0xE9, 0x7D, 0x83, 0xB6, 0x74, 0x23, 0x0D, 0x03, 0x93, 0x6E,\n0xB3, 0x12, 0xF8, 0x10, 0x08, 0x81, 0x0F, 0x2C, 0x84, 0x64, 0xD6, 0xA3, 0xF0, 0x03, 0x4D, 0xC8,\n0x87, 0x83, 0x61, 0x80, 0x18, 0x26, 0xD6, 0x6B, 0xB5, 0x2D, 0x94, 0x3F, 0x32, 0x1A, 0xF6, 0x8F,\n0xBF, 0x07, 0x04, 0x0F, 0xB1, 0xE1, 0x92, 0xF8, 0x70, 0xCD, 0xE7, 0x83, 0x84, 0xE4, 0x3F, 0xD2,\n0x2B, 0x12, 0xD6, 0x43, 0xF4, 0xD1, 0xEF, 0x87, 0xF0, 0x23, 0x6C, 0x11, 0x9E, 0xE1, 0x7B, 0x28,\n0xB1, 0x0F, 0x7F, 0xD1, 0xB6, 0x9A, 0x7F, 0xE0, 0x21, 0x1A, 0x1F, 0x10, 0x55, 0xE0, 0x23, 0x3E,\n0x96, 0xF3, 0xCD, 0x43, 0x20, 0x3B, 0x4E, 0x5F, 0x39, 0x13, 0xE9, 0x2A, 0xAB, 0xAF, 0x05, 0x19,\n0x12, 0xD1, 0x76, 0x40, 0x02, 0x1F, 0x88, 0x82, 0x48, 0xB6, 0xFC, 0x61, 0x4D, 0xF5, 0x90, 0x6D,\n0x96, 0x90, 0xE9, 0xF8, 0x70, 0x2E, 0xEA, 0x1D, 0x04, 0x29, 0xF6, 0x81, 0xB6, 0xA5, 0xF0, 0x83,\n0x01, 0x31, 0x15, 0x0A, 0x22, 0x84, 0x1F, 0xF7, 0x84, 0x48, 0x7C, 0x20, 0x5F, 0x30, 0x2C, 0x7B,\n0x37, 0x09, 0x06, 0xD2, 0x4D, 0x0F, 0x18, 0xC1, 0x4C, 0x58, 0x65, 0xC1, 0x09, 0xE5, 0x0F, 0x62,\n0x90, 0x36, 0x20, 0x72, 0x6A, 0x14, 0xFB, 0x40, 0x83, 0x7C, 0xE4, 0xF5, 0x5A, 0xF0, 0x0F, 0x8E,\n0x85, 0x38, 0xE4, 0x04, 0x1E, 0x51, 0xF6, 0x0D, 0x26, 0x38, 0xE1, 0x5B, 0x41, 0x24, 0xE4, 0x33,\n0xC2, 0xD6, 0x9F, 0xAA, 0x08, 0x21, 0xBD, 0x2B, 0x10, 0x02, 0x1F, 0x19, 0x0F, 0x91, 0xD6, 0x57,\n0x68, 0xB2, 0xF0, 0x23, 0x76, 0x10, 0xEB, 0xB5, 0x52, 0xFC, 0x03, 0x65, 0xCF, 0x91, 0x31, 0x61,\n0x60, 0x28, 0x88, 0xA8, 0x7C, 0xE0, 0x21, 0x3A, 0x1F, 0x61, 0x06, 0xF4, 0x6B, 0x09, 0x7B, 0x36,\n0x1D, 0x98, 0x32, 0x31, 0x28, 0x4E, 0x08, 0x15, 0x85, 0x20, 0x2F, 0x36, 0xA4, 0x0E, 0xE2, 0x84,\n0x9C, 0x15, 0x3E, 0x50, 0xA3, 0xF3, 0x11, 0x3C, 0x25, 0x67, 0x4F, 0x27, 0xD6, 0x57, 0xE9, 0x42,\n0x2B, 0xEB, 0x20, 0x9C, 0x26, 0x1B, 0x3C, 0xE4, 0x79, 0xE9, 0xBE, 0x81, 0x85, 0x14, 0x54, 0x28,\n0x7F, 0xE4, 0x04, 0x21, 0x51, 0xF9, 0x63, 0x96, 0xB6, 0xF0, 0x54, 0x48, 0x5F, 0x65, 0x35, 0x99,\n0x7D, 0xE0, 0x20, 0xA1, 0xD7, 0x4A, 0xF6, 0x8F, 0xD4, 0x43, 0xB2, 0xE1, 0x87, 0x89, 0x17, 0x10,\n0x22, 0xF0, 0x01, 0x21, 0x1A, 0x1F, 0x58, 0x08, 0xAC, 0x04, 0xFF, 0x00, 0x0A, 0xE6, 0xCD, 0xB5,\n0x7F, 0x03, 0x8C, 0x7E, 0xA2, 0xBD, 0x38, 0x13, 0x71, 0xF7, 0xB7, 0xF0, 0x90, 0x4C, 0xF9, 0x43,\n0x26, 0xA4, 0xD9, 0x15, 0x94, 0x4F, 0xEF, 0x62, 0x68, 0x99, 0x50, 0x3D, 0x71, 0x90, 0x65, 0xDE,\n0x40, 0x1C, 0x1A, 0x1F, 0x12, 0x7C, 0x03, 0x3C, 0x06, 0x94, 0x2F, 0x7F, 0xC8, 0x84, 0x50, 0x1E,\n0x4C, 0xDB, 0x75, 0x23, 0xFA, 0x07, 0x84, 0x4C, 0xE2, 0x1F, 0xDE, 0xBD, 0x0E, 0x32, 0x91, 0x87,\n0xC0, 0x47, 0x5E, 0x85, 0xF2, 0x07, 0xD1, 0x07, 0xBB, 0xA4, 0x7B, 0x49, 0xEF, 0x16, 0x34, 0xDF,\n0x24, 0x9F, 0x93, 0x52, 0x12, 0xFE, 0xBB, 0xFE, 0xC1, 0x44, 0xC1, 0x42, 0xD0, 0x7A, 0x9F, 0x5A,\n0x08, 0xD1, 0x47, 0xD4, 0xFB, 0x55, 0x56, 0xC1, 0x3F, 0x34, 0x42, 0x32, 0x3C, 0x95, 0x02, 0x11,\n0xFB, 0x97, 0xDB, 0x5C, 0x48, 0x44, 0x51, 0x3D, 0x76, 0x90, 0x40, 0x03, 0x8A, 0x2F, 0x0C, 0x0E,\n0x45, 0x6F, 0x21, 0xC2, 0xAD, 0xBE, 0x1A, 0x1F, 0x10, 0x52, 0xF6, 0x8F, 0xF4, 0x8A, 0x49, 0xA8,\n0x8E, 0x7F, 0x14, 0x34, 0xBA, 0xFC, 0x91, 0x3A, 0x08, 0xBD, 0x52, 0x8A, 0x7F, 0xA0, 0xED, 0xB0,\n0x7F, 0xE0, 0xAA, 0x34, 0x08, 0x11, 0xF8, 0xA0, 0x20, 0xA2, 0xF2, 0xE1, 0x9F, 0x7D, 0x5F, 0xFF,\n0xA0, 0xFC, 0x71, 0x7D, 0x86, 0x14, 0x2E, 0xAB, 0xFB, 0x34, 0x3E, 0xC7, 0x38, 0xE8, 0x81, 0x11,\n0x56, 0x59, 0x45, 0xFF, 0x40, 0xCD, 0xCF, 0xD4, 0x3F, 0x9A, 0x5D, 0x59, 0xF9, 0xF0, 0x23, 0x3D,\n0x1C, 0x8A, 0xEA, 0x37, 0x3A, 0x5C, 0xB0, 0x70, 0xF0, 0x4D, 0xEA, 0x21, 0xFD, 0xB2, 0x8A, 0xF5,\n0xE7, 0x03, 0xD5, 0xF0, 0x01, 0x21, 0x94, 0xCF, 0x07, 0x1A, 0x1E, 0x92, 0x96, 0x3F, 0xCA, 0x84,\n0x4C, 0xE2, 0x1F, 0xD4, 0x41, 0x46, 0x78, 0x88, 0xE0, 0x1F, 0xF9, 0xA2, 0x3A, 0x34, 0xF8, 0x28,\n0x04, 0xA5, 0x05, 0x11, 0x85, 0x0F, 0x08, 0xA9, 0x02, 0xE4, 0x42, 0x01, 0xE4, 0x39, 0x5A, 0x4E,\n0x01, 0x47, 0x52, 0x32, 0x64, 0x7E, 0xB5, 0x44, 0x1F, 0x49, 0x27, 0x10, 0x91, 0xFC, 0x03, 0x4F,\n0x78, 0xCD, 0xA4, 0xAF, 0x64, 0x42, 0xCE, 0x2D, 0xFF, 0x38, 0x0E, 0x12, 0xEF, 0xED, 0x71, 0x90,\n0x03, 0xE7, 0x8A, 0xC2, 0x6B, 0x8A, 0xEA, 0x21, 0x0E, 0x11, 0x55, 0x4C, 0x5F, 0x15, 0xD2, 0xBD,\n0x94, 0xCF, 0x4B, 0x4D, 0x5A, 0x5E, 0x21, 0xC1, 0x3F, 0xEA, 0x1D, 0x64, 0x54, 0x41, 0x04, 0x3C,\n0x8A, 0xCA, 0xFB, 0x47, 0xBF, 0x71, 0x2C, 0x58, 0x71, 0x41, 0x08, 0x7C, 0xA8, 0x1E, 0xB2, 0x56,\n0xE4, 0x78, 0xF8, 0x66, 0x89, 0x00, 0x25, 0xEC, 0xF3, 0x72, 0x1F, 0x97, 0xCF, 0x0B, 0x0E, 0x42,\n0x41, 0x44, 0xE2, 0x23, 0xBD, 0x77, 0xF1, 0x67, 0xA3, 0xFC, 0x89, 0xA4, 0x7C, 0x9E, 0x77, 0x10,\n0xF6, 0x70, 0x90, 0x18, 0x09, 0xAE, 0x0A, 0x9C, 0xAC, 0x8B, 0xF4, 0xB7, 0x24, 0x9D, 0x0F, 0x08,\n0xA1, 0x7C, 0x9E, 0xB6, 0xAB, 0xC8, 0x6B, 0x46, 0xF1, 0xB9, 0x42, 0xC8, 0x14, 0xFE, 0x41, 0x16,\n0x8B, 0x5E, 0x2B, 0xD2, 0x57, 0x9A, 0x28, 0x7F, 0x84, 0xD6, 0x0B, 0xEB, 0xA0, 0x75, 0x05, 0x11,\n0xCA, 0xE7, 0x12, 0x21, 0x6B, 0xF0, 0x10, 0x14, 0x56, 0x59, 0xAC, 0x33, 0xBC, 0x27, 0x9C, 0xF0,\n0x12, 0x3E, 0xDA, 0x92, 0x83, 0x84, 0x47, 0x1B, 0x95, 0x3F, 0x04, 0x44, 0x34, 0xFF, 0x40, 0xC4,\n0x1F, 0xB1, 0x7D, 0x51, 0x07, 0x61, 0xD7, 0x1A, 0xCB, 0x2B, 0xCE, 0x94, 0x2D, 0xC2, 0x43, 0xBA,\n0xAE, 0x7B, 0x88, 0xCE, 0x07, 0x84, 0x50, 0x1E, 0x4C, 0xDB, 0xB5, 0xB3, 0xCE, 0xC0, 0x3F, 0x24,\n0x8D, 0xCB, 0x5F, 0x8D, 0x77, 0x10, 0x44, 0xF8, 0x21, 0x29, 0xF0, 0x71, 0x37, 0x12, 0xD1, 0xB2,\n0x33, 0x2A, 0x19, 0x76, 0xE5, 0xC1, 0xCB, 0xA6, 0x86, 0x90, 0x75, 0x9D, 0x42, 0x7C, 0x8E, 0x0E,\n0x45, 0x0F, 0xF1, 0xF2, 0x47, 0xFB, 0xD0, 0x41, 0x20, 0x64, 0x87, 0x24, 0x42, 0xC0, 0x43, 0x33,\n0x91, 0x16, 0x1E, 0x32, 0xC7, 0x05, 0xB5, 0xC1, 0x43, 0xD2, 0x35, 0x15, 0x4F, 0xD6, 0xE8, 0xB6,\n0xB9, 0x86, 0x1F, 0xFA, 0x70, 0xC2, 0x87, 0xA2, 0xEB, 0x97, 0x39, 0x0C, 0xF1, 0xC1, 0xB2, 0xBB,\n0x37, 0x18, 0xF0, 0xD0, 0xF4, 0x4F, 0x7C, 0xA4, 0x34, 0xE0, 0x20, 0x23, 0x4C, 0x04, 0xFF, 0x10,\n0x11, 0x89, 0xFD, 0x83, 0xC1, 0x88, 0x0B, 0x22, 0x94, 0x0C, 0xD5, 0x21, 0x0F, 0x3F, 0x43, 0x55,\n0x89, 0xC7, 0xBA, 0x5F, 0x5C, 0x0C, 0x5B, 0x08, 0x0A, 0xEB, 0xAB, 0xB2, 0x83, 0x50, 0x55, 0xC7,\n0x3F, 0x24, 0x35, 0x22, 0x1F, 0x54, 0x44, 0xD2, 0xDB, 0x4B, 0xD8, 0xA7, 0xC7, 0xD9, 0xDE, 0x65,\n0x0C, 0x41, 0xE6, 0x4C, 0x79, 0x87, 0x05, 0x96, 0x26, 0xF8, 0x50, 0x34, 0x8F, 0xCA, 0x83, 0x65,\n0x1F, 0xF1, 0x06, 0x1F, 0x92, 0xC6, 0xDA, 0x07, 0x0E, 0x32, 0xD2, 0x44, 0x34, 0x3E, 0x08, 0xD5,\n0xEF, 0x86, 0x80, 0x1D, 0x60, 0x01, 0x91, 0x4F, 0x17, 0xFC, 0x43, 0x22, 0xA4, 0x52, 0x5C, 0x40,\n0x53, 0x13, 0xE1, 0x05, 0xDD, 0x6F, 0x2F, 0x61, 0x21, 0x55, 0x72, 0x10, 0xDF, 0x6F, 0x7E, 0xEE,\n0x90, 0x10, 0xAA, 0xFF, 0x86, 0x0F, 0x45, 0x0D, 0xE1, 0x47, 0x72, 0x38, 0xF9, 0x74, 0x96, 0xF1,\n0x81, 0x30, 0x0E, 0x04, 0x3C, 0xEE, 0x21, 0x95, 0xDA, 0xD4, 0x5C, 0xCC, 0x2E, 0x97, 0x4F, 0xAB,\n0x87, 0xF9, 0xAB, 0xBE, 0xFB, 0x0B, 0xD2, 0x57, 0x92, 0xEA, 0x23, 0xEA, 0x14, 0x05, 0x07, 0x64,\n0xB4, 0x85, 0x6C, 0xEB, 0xF8, 0xF8, 0x98, 0xF1, 0x51, 0x3C, 0x24, 0x4D, 0xF7, 0xDA, 0x3E, 0x0B,\n0x2C, 0x49, 0x95, 0x84, 0xDC, 0x5D, 0x47, 0x99, 0x31, 0xBC, 0x40, 0xDD, 0xFD, 0xBB, 0xA4, 0xB0,\n0x86, 0xAE, 0xD7, 0xA4, 0xB2, 0x9A, 0xBA, 0xF9, 0x4E, 0x7D, 0x50, 0x53, 0x83, 0x45, 0x14, 0x8E,\n0x08, 0x83, 0xD9, 0x47, 0xB8, 0x83, 0x82, 0xEF, 0xA5, 0xA8, 0x98, 0xD6, 0x55, 0xAA, 0xFC, 0xA0,\n0xC8, 0xEF, 0x66, 0x5B, 0x12, 0x98, 0x5A, 0x7F, 0x22, 0x19, 0xA4, 0x48, 0x0A, 0xD0, 0xFF, 0xBF,\n0x83, 0x6C, 0x4D, 0x15, 0x7C, 0x3C, 0xAD, 0x4C, 0x85, 0x70, 0x8C, 0x14, 0xD6, 0xB5, 0x2D, 0x66,\n0x8B, 0xFF, 0x47, 0x48, 0x7C, 0xFB, 0x2E, 0x82, 0x9A, 0xC4, 0x42, 0xAE, 0x4B, 0xAC, 0xF3, 0xE3,\n0xAB, 0x36, 0xE5, 0xC2, 0x66, 0x57, 0x13, 0xA5, 0xBF, 0xFE, 0x78, 0xAD, 0x8C, 0x41, 0x5A, 0x5C,\n0xAB, 0xD0, 0x6F, 0xE5, 0xC2, 0xBB, 0x70, 0x7C, 0x30, 0x02, 0xF3, 0xC7, 0xFF, 0xE4, 0x63, 0xB6,\n0x58, 0x14, 0xF8, 0x48, 0x13, 0x5A, 0xDD, 0xCE, 0x53, 0x8D, 0x87, 0x6C, 0xB7, 0xD5, 0x84, 0x40,\n0x01, 0x75, 0x90, 0xD1, 0xFE, 0xE1, 0xAA, 0xE2, 0xE3, 0x89, 0x33, 0x4F, 0x17, 0x55, 0xFD, 0xFB,\n0x84, 0x20, 0xC7, 0x45, 0xE7, 0x21, 0x97, 0x69, 0x09, 0xE1, 0xB6, 0xDE, 0xA4, 0x80, 0x4E, 0x2C,\n0x42, 0x60, 0x82, 0x0E, 0x3E, 0xC3, 0x6C, 0xDE, 0x73, 0x59, 0x2E, 0x06, 0x23, 0x2F, 0x8D, 0x9C,\n0xC5, 0xE2, 0x27, 0x70, 0x21, 0x44, 0xE1, 0xC3, 0x1E, 0xA7, 0x96, 0x63, 0x29, 0x1C, 0x4E, 0xB8,\n0x27, 0x8B, 0x22, 0x48, 0xF4, 0x18, 0x2C, 0x8D, 0xFC, 0x27, 0x3E, 0x2C, 0x58, 0x99, 0xCD, 0x9C,\n0x90, 0x41, 0x2C, 0xB8, 0x5E, 0x7A, 0x5F, 0x3D, 0x41, 0x88, 0xC6, 0x47, 0x3D, 0x21, 0x8A, 0x83,\n0xD4, 0xF3, 0xE1, 0x52, 0xE3, 0x8F, 0x5E, 0x78, 0x06, 0xBB, 0x38, 0xEA, 0x0D, 0x93, 0xC5, 0xC2,\n0x2C, 0xC4, 0x08, 0xB1, 0x01, 0xAD, 0xD1, 0x5A, 0x54, 0xFE, 0x46, 0x0B, 0x17, 0xE4, 0xE0, 0x1F,\n0x7C, 0x8B, 0xC9, 0xE3, 0xAB, 0xB6, 0x6D, 0x9C, 0x0F, 0x3D, 0x8D, 0xE5, 0x70, 0x54, 0x10, 0xD2,\n0x34, 0xB7, 0x32, 0xA1, 0xE4, 0x20, 0xE9, 0x6D, 0x58, 0xE0, 0x9F, 0xB9, 0x77, 0x00, 0x4F, 0x9D,\n0x96, 0x0F, 0xE2, 0x8F, 0x59, 0xB7, 0x38, 0x80, 0x90, 0x6C, 0xE3, 0xE9, 0x26, 0x08, 0x11, 0xF8,\n0x18, 0xED, 0x21, 0xA3, 0xEB, 0x20, 0xDB, 0x5E, 0x3A, 0x1F, 0x58, 0x26, 0x7E, 0x11, 0x0D, 0x05,\n0x11, 0x9A, 0x0F, 0xA0, 0x23, 0x72, 0x14, 0x3C, 0x64, 0x5E, 0x4B, 0x08, 0x31, 0x2A, 0x20, 0x30,\n0x49, 0xEE, 0xB4, 0x47, 0x83, 0x89, 0x2C, 0x96, 0x5D, 0xBD, 0x7F, 0x68, 0x1E, 0xD2, 0x04, 0xFF,\n0x08, 0x90, 0x28, 0x84, 0x34, 0xD1, 0x9D, 0x26, 0x8F, 0x1D, 0x84, 0xA3, 0x87, 0x8C, 0xE8, 0x64,\n0x79, 0x46, 0xFA, 0x32, 0x6B, 0x83, 0x14, 0xFF, 0x38, 0xCE, 0x1C, 0x90, 0xAB, 0x87, 0xE4, 0xD1,\n0x88, 0xD0, 0x79, 0x52, 0x09, 0x81, 0x0F, 0x9D, 0x10, 0xBD, 0x0E, 0x52, 0xAB, 0x2D, 0x12, 0x0E,\n0xB9, 0xE3, 0x03, 0x31, 0x10, 0xC9, 0xC0, 0xB0, 0x6B, 0xCB, 0xAB, 0x6B, 0x33, 0x42, 0x36, 0x17,\n0x01, 0x0F, 0xF4, 0x30, 0x3D, 0x79, 0x21, 0x3C, 0xCF, 0xCC, 0x16, 0xD8, 0x49, 0xFC, 0x03, 0x0F,\n0x29, 0xA6, 0x8D, 0x3C, 0xC3, 0x8B, 0x1A, 0xB5, 0x06, 0x82, 0x87, 0xE8, 0x7C, 0x50, 0x0B, 0x19,\n0xEC, 0xE9, 0x37, 0x9C, 0xDC, 0x9D, 0x2C, 0xD7, 0x09, 0x3A, 0x03, 0xF3, 0x1F, 0xF8, 0x70, 0x3C,\n0x82, 0x87, 0x64, 0x4D, 0xC4, 0xC4, 0x62, 0x1B, 0x89, 0x84, 0x30, 0x2F, 0x47, 0x94, 0xD2, 0xC7,\n0xDF, 0xCD, 0x1B, 0x4B, 0xE7, 0x23, 0x1F, 0x73, 0xC4, 0x6F, 0x3A, 0x1F, 0x3D, 0x20, 0x0B, 0x08,\n0x51, 0xA5, 0xF0, 0x01, 0x1E, 0xF9, 0xBC, 0x2E, 0xF2, 0xAF, 0x22, 0x45, 0x07, 0x23, 0xA4, 0x94,\n0x36, 0x82, 0x0F, 0x8D, 0x90, 0xA6, 0x71, 0x34, 0x7E, 0xFD, 0xE8, 0xBA, 0x33, 0xB2, 0x6B, 0x14,\n0x3E, 0x50, 0x5B, 0x3C, 0x9C, 0x97, 0x76, 0x1F, 0x2B, 0xAD, 0x83, 0x66, 0x45, 0x78, 0xB6, 0xBE,\n0x68, 0xCB, 0x2B, 0x9D, 0x0F, 0x3E, 0x59, 0x27, 0x24, 0xD3, 0x6E, 0x9B, 0x9B, 0x7F, 0x40, 0xC8,\n0x56, 0xC1, 0x63, 0x94, 0x89, 0xE0, 0x20, 0xE3, 0xED, 0x03, 0x15, 0x8F, 0xF9, 0x63, 0xC2, 0xC7,\n0xD3, 0x8A, 0x58, 0x0C, 0x2F, 0xA1, 0x6A, 0xE8, 0xFE, 0x01, 0x20, 0x13, 0x26, 0xB3, 0xBC, 0xDA,\n0x5E, 0x48, 0x56, 0xA1, 0xC4, 0x3F, 0x10, 0xF5, 0xC2, 0xBC, 0x8F, 0xBC, 0x20, 0x81, 0x90, 0x86,\n0xF8, 0xC3, 0x64, 0x8C, 0x38, 0x21, 0x4A, 0xF8, 0x81, 0xDA, 0x81, 0x63, 0x21, 0x3C, 0x8F, 0x94,\n0xA2, 0x91, 0x35, 0x10, 0x7E, 0x69, 0xDA, 0xF4, 0x15, 0xFE, 0x31, 0xE4, 0x21, 0x37, 0x11, 0x9F,\n0xAF, 0x90, 0x4D, 0x27, 0x8D, 0x8F, 0xD1, 0x81, 0x48, 0x54, 0x07, 0xA9, 0xD2, 0x1B, 0xF8, 0xD0,\n0x00, 0xB9, 0x9D, 0x23, 0x84, 0x30, 0x2A, 0x78, 0x08, 0xE5, 0x0F, 0xBF, 0xCA, 0xD0, 0x26, 0x21,\n0x04, 0x45, 0xC9, 0x2A, 0x76, 0xD3, 0x6C, 0x16, 0xE5, 0x8F, 0x7D, 0xAA, 0x42, 0x00, 0x82, 0x7F,\n0x68, 0x84, 0x34, 0x3F, 0x60, 0xE3, 0xB5, 0x47, 0xA5, 0x11, 0xEF, 0xE4, 0x4D, 0xEE, 0xC8, 0x2A,\n0xFC, 0x58, 0x3A, 0xB2, 0xD3, 0x89, 0x4F, 0x96, 0xD3, 0x45, 0x8C, 0x8B, 0x6D, 0x26, 0x2D, 0x7F,\n0xCC, 0x92, 0x76, 0x9C, 0x15, 0x8A, 0xE8, 0xE0, 0x81, 0x28, 0x88, 0x08, 0x7C, 0xD4, 0x13, 0x32,\n0x85, 0x83, 0xC0, 0x87, 0x42, 0xC8, 0x16, 0x3E, 0xEE, 0x09, 0xC1, 0x3B, 0x08, 0xD4, 0xBB, 0x41,\n0x5B, 0xC8, 0x84, 0xCC, 0x6B, 0x09, 0x79, 0xCE, 0xDE, 0xE3, 0x9D, 0x46, 0xAC, 0xB0, 0xB2, 0x47,\n0x11, 0x21, 0x59, 0x13, 0x31, 0x3E, 0x1A, 0x95, 0x10, 0xFC, 0xC3, 0x97, 0x57, 0xD1, 0xA3, 0xD1,\n0xFD, 0xC3, 0xF3, 0xBD, 0xC3, 0xB9, 0xAC, 0x7D, 0x4E, 0x9C, 0x6C, 0xDE, 0x32, 0x93, 0x11, 0x9A,\n0x8E, 0x0F, 0xEC, 0x23, 0xBF, 0xCA, 0x62, 0xA1, 0xED, 0xCF, 0x00, 0x22, 0x10, 0x02, 0x1F, 0xA3,\n0x08, 0xC9, 0xD5, 0x41, 0x46, 0xF1, 0x81, 0x0A, 0xE5, 0x8F, 0x8C, 0xF0, 0x10, 0x76, 0x03, 0x1F,\n0x0C, 0x1F, 0x6D, 0xA0, 0xA8, 0x3E, 0xAF, 0xF6, 0x90, 0x68, 0x16, 0xB0, 0x17, 0xB3, 0xC1, 0x2F,\n0xEF, 0xF3, 0xCA, 0x57, 0x43, 0xE0, 0x23, 0xD6, 0x50, 0x51, 0xBD, 0x79, 0x0D, 0x4C, 0xE0, 0x22,\n0xE5, 0xBB, 0x7A, 0x07, 0xFE, 0xF6, 0x2E, 0xDD, 0x7B, 0x6F, 0x1F, 0xF0, 0x71, 0x27, 0x4E, 0x3E,\n0x4A, 0xEC, 0xA2, 0x78, 0x84, 0x26, 0xF3, 0x0F, 0x00, 0x89, 0x10, 0xC9, 0x17, 0xD1, 0xC1, 0x43,\n0x20, 0x04, 0x3E, 0xC6, 0x12, 0x72, 0xE7, 0x20, 0x63, 0xF9, 0x40, 0x92, 0x7F, 0xA0, 0xB8, 0x7A,\n0xEE, 0x22, 0x7D, 0x95, 0xF1, 0x90, 0xCD, 0xE8, 0x92, 0xA1, 0xBD, 0x97, 0xCE, 0x01, 0x84, 0x73,\n0x80, 0x0C, 0x7C, 0xA4, 0x6A, 0xF9, 0xD6, 0x51, 0xE9, 0xCB, 0x15, 0x9B, 0x81, 0x9F, 0x94, 0x7A,\n0x65, 0x7D, 0x65, 0x1B, 0x3C, 0x84, 0x64, 0x56, 0x89, 0x0F, 0x74, 0xBA, 0x8B, 0x41, 0x88, 0x3F,\n0x32, 0xE2, 0xBA, 0x20, 0x7A, 0xC8, 0xF8, 0xF2, 0x47, 0xD6, 0x3F, 0x72, 0x05, 0x11, 0x48, 0xC9,\n0x89, 0x92, 0xA1, 0xC6, 0x47, 0x3D, 0x21, 0x49, 0x16, 0x6B, 0x3C, 0x1F, 0x28, 0x57, 0xFE, 0x28,\n0x28, 0x1D, 0x16, 0xCA, 0x1F, 0x59, 0x44, 0x3E, 0x8D, 0x28, 0xAA, 0xC3, 0x47, 0xEE, 0x8E, 0x76,\n0x6B, 0x60, 0x81, 0x32, 0x78, 0x94, 0x0A, 0x22, 0xF0, 0xA1, 0x11, 0xD2, 0xF4, 0xB6, 0x81, 0x8F,\n0xFC, 0x2A, 0xA5, 0x7B, 0x9B, 0x12, 0x20, 0x4D, 0xA1, 0xFC, 0x51, 0xF0, 0x90, 0xC1, 0x5A, 0x7A,\n0x32, 0x24, 0x53, 0x95, 0xCF, 0xB3, 0x8D, 0x82, 0x08, 0x62, 0x3F, 0x27, 0x08, 0x11, 0xF8, 0xA8,\n0x25, 0x24, 0x76, 0x90, 0x5A, 0x42, 0xB6, 0x55, 0x80, 0xC0, 0x47, 0xC9, 0x43, 0x18, 0x12, 0x96,\n0x57, 0xF7, 0xCD, 0x08, 0x19, 0x9B, 0xEE, 0x5D, 0xA2, 0x34, 0x16, 0x4F, 0x7F, 0x81, 0xF0, 0x63,\n0x50, 0xE7, 0xC8, 0x44, 0x08, 0xCF, 0x55, 0x42, 0x5E, 0x93, 0xB5, 0x95, 0xC7, 0xE8, 0x61, 0x1F,\n0x42, 0xCA, 0xFE, 0x81, 0x9A, 0x73, 0x5C, 0x10, 0x81, 0x8F, 0xAC, 0xDA, 0x70, 0x96, 0x99, 0x9B,\n0x09, 0xF2, 0xCE, 0x3A, 0x8E, 0x0F, 0xCA, 0x1F, 0x65, 0x0F, 0x21, 0x42, 0x47, 0x02, 0x21, 0xF0,\n0x31, 0x9D, 0x87, 0x18, 0x20, 0x53, 0xF9, 0x07, 0xD2, 0xFD, 0x03, 0x42, 0x18, 0x92, 0x59, 0xC1,\n0x3F, 0x32, 0x05, 0x91, 0x79, 0x2D, 0x21, 0x77, 0xB7, 0x74, 0x83, 0x03, 0x54, 0xC0, 0xCD, 0xFE,\n0x81, 0xDA, 0x24, 0x10, 0x79, 0x04, 0x48, 0x13, 0xDB, 0x81, 0xFB, 0x46, 0x08, 0xD0, 0x7D, 0x13,\n0x76, 0xC9, 0x66, 0x35, 0x22, 0x1F, 0xF9, 0x82, 0xC8, 0xFE, 0x91, 0x22, 0x36, 0x12, 0x2E, 0x32,\n0xAE, 0xB2, 0xBE, 0x8C, 0x2B, 0x0F, 0x2E, 0xF2, 0x8D, 0x64, 0x96, 0x6B, 0x16, 0xFA, 0x93, 0x48,\n0x08, 0x78, 0x4C, 0x49, 0x48, 0x70, 0x90, 0xE9, 0xEC, 0x03, 0x25, 0xE5, 0x41, 0x89, 0x90, 0xBE,\n0x77, 0x5E, 0x5B, 0x6C, 0x10, 0x02, 0x1F, 0x45, 0xC5, 0xE5, 0x41, 0x14, 0x05, 0xA5, 0xE0, 0x82,\n0x02, 0x1F, 0x8A, 0x87, 0x38, 0x25, 0xF8, 0x87, 0xE0, 0x21, 0xDC, 0xBE, 0x9B, 0x46, 0xE7, 0xFE,\n0x26, 0xA0, 0x10, 0xAA, 0x2B, 0x7C, 0x50, 0x10, 0x21, 0xFC, 0x28, 0x8A, 0x53, 0xCF, 0x39, 0x08,\n0xE4, 0x84, 0x77, 0xC6, 0x97, 0xCF, 0x8B, 0x1E, 0x42, 0x6E, 0xD7, 0x9E, 0xCB, 0xA2, 0x64, 0x08,\n0x1F, 0x53, 0x23, 0xE2, 0x75, 0x90, 0x09, 0xF9, 0x40, 0x51, 0x79, 0x50, 0x46, 0x84, 0xF2, 0x47,\n0xD9, 0x43, 0xAA, 0x0B, 0x22, 0xF0, 0xC1, 0xA7, 0x9F, 0x52, 0xC2, 0x33, 0x7D, 0xAF, 0xC8, 0x26,\n0x23, 0xE9, 0x2B, 0x85, 0x90, 0x26, 0x8D, 0x3F, 0xBC, 0xE3, 0x25, 0x90, 0xE2, 0xF8, 0x68, 0x7C,\n0xA0, 0x10, 0x7C, 0x58, 0xDB, 0x2B, 0x2A, 0xDC, 0x85, 0x96, 0x7B, 0xEF, 0x59, 0xE0, 0x43, 0x2C,\n0x7F, 0x0C, 0xA7, 0x7B, 0xAF, 0x1B, 0x91, 0x10, 0xF0, 0x98, 0x9E, 0x90, 0x7A, 0x40, 0xB6, 0xA2,\n0x48, 0x5F, 0x3D, 0xD6, 0xD3, 0x1F, 0xE6, 0xCE, 0xA7, 0xC5, 0x69, 0x20, 0x8C, 0xC3, 0x2B, 0x56,\n0x3D, 0x2B, 0xD2, 0x43, 0xC0, 0x75, 0x97, 0x1C, 0xC4, 0xC3, 0xDE, 0x05, 0xBF, 0x44, 0x2E, 0x3D,\n0xA9, 0xB9, 0x0B, 0x0B, 0x05, 0x85, 0xE0, 0x9E, 0x85, 0x42, 0xD1, 0xD0, 0x6F, 0xE0, 0x67, 0xF5,\n0xCD, 0xCB, 0x74, 0x1F, 0x33, 0x9D, 0x4C, 0x7F, 0xA3, 0x46, 0xF3, 0x4C, 0x92, 0xFE, 0xD9, 0xAE,\n0x76, 0xD3, 0x3C, 0xFD, 0xCD, 0x3B, 0xD3, 0x3F, 0x97, 0x41, 0x8F, 0xC1, 0x8F, 0x5C, 0x80, 0x30,\n0x98, 0xF5, 0x9B, 0xA5, 0x7A, 0x05, 0x09, 0x4B, 0xB8, 0x8E, 0xFC, 0x90, 0x0D, 0xD1, 0xBF, 0xA3,\n0xF0, 0x03, 0xF9, 0x41, 0x7C, 0x00, 0xCE, 0x78, 0xE5, 0x8E, 0x21, 0x4C, 0x7F, 0x40, 0x7A, 0x42,\n0x84, 0xFC, 0x50, 0x88, 0x9E, 0x20, 0xE2, 0x57, 0xF4, 0xC6, 0x9D, 0xAD, 0x3F, 0x9B, 0x1E, 0xCC,\n0xB7, 0x76, 0x30, 0x44, 0xD2, 0x23, 0x1E, 0xEE, 0xBD, 0x11, 0x29, 0x3C, 0xDA, 0xDF, 0x96, 0x0A,\n0x72, 0xA3, 0xA2, 0xFB, 0x11, 0x66, 0x82, 0x2E, 0xC2, 0xF4, 0x87, 0x10, 0x21, 0x16, 0xD5, 0x83,\n0x21, 0xAB, 0x52, 0x43, 0x52, 0xF9, 0xE1, 0x6B, 0x3A, 0x42, 0xEC, 0x05, 0x57, 0x05, 0x86, 0x08,\n0xF9, 0x41, 0x21, 0x32, 0xA4, 0x48, 0x18, 0xDB, 0x1D, 0x34, 0x08, 0x2B, 0x0B, 0xA6, 0x1C, 0x0D,\n0xB1, 0x45, 0xFD, 0xD7, 0x3D, 0x43, 0xF0, 0x43, 0xCB, 0x90, 0xE9, 0xE2, 0x9C, 0x74, 0x21, 0x43,\n0xCA, 0xFD, 0xF0, 0xE1, 0x2B, 0xA5, 0xAD, 0x43, 0x82, 0x94, 0x19, 0x72, 0x23, 0x53, 0x9C, 0x20,\n0x0F, 0x4A, 0x78, 0x72, 0xF3, 0xF4, 0x89, 0xC6, 0xD3, 0x9B, 0xC7, 0x4F, 0xDD, 0x8F, 0x4B, 0xA1,\n0xD9, 0xAD, 0x7C, 0xAF, 0x14, 0x60, 0x76, 0x94, 0x7D, 0x96, 0x83, 0x51, 0x59, 0x13, 0x97, 0xCA,\n0x16, 0x7B, 0x6E, 0xD5, 0xDA, 0xBB, 0x77, 0x5F, 0x8D, 0xCF, 0x32, 0x5F, 0x86, 0x10, 0xF9, 0xE0,\n0xEF, 0x1E, 0xB4, 0x45, 0x68, 0xC3, 0x60, 0x16, 0xF9, 0xA1, 0xD5, 0x21, 0x5F, 0xDF, 0x6D, 0x64,\n0xDE, 0x5D, 0x0F, 0xF5, 0xB7, 0xD8, 0xAA, 0xAA, 0xD4, 0x8F, 0xD5, 0xC9, 0xF4, 0x79, 0x1A, 0xFF,\n0x81, 0x57, 0xEA, 0xCC, 0x0F, 0x42, 0x6E, 0x42, 0xE4, 0xE6, 0xE9, 0xD3, 0x1B, 0xB1, 0x3D, 0x79,\n0x50, 0x80, 0xCF, 0xA4, 0x7F, 0x12, 0x9B, 0x7D, 0x14, 0xD7, 0xA7, 0xC7, 0x3A, 0x76, 0xDB, 0xCB,\n0x97, 0x75, 0x30, 0x40, 0xB2, 0xC4, 0x77, 0x90, 0x44, 0x3B, 0xAC, 0xAF, 0xAE, 0x77, 0x32, 0x43,\n0x86, 0x54, 0x65, 0x6C, 0xCA, 0xA0, 0x7F, 0x25, 0xD1, 0x10, 0x12, 0x87, 0xA8, 0xA5, 0x21, 0x3F,\n0x34, 0x36, 0x65, 0x54, 0x65, 0x98, 0x1F, 0x3B, 0x9D, 0xE3, 0xBB, 0x3F, 0x68, 0x6D, 0x12, 0xFC,\n0xB1, 0x03, 0x47, 0xE6, 0xD1, 0xE5, 0xE5, 0xE3, 0x22, 0x3E, 0xD9, 0x81, 0xAC, 0xB6, 0x8F, 0x17,\n0xCF, 0x3E, 0xD6, 0xF5, 0x47, 0xB1, 0xD5, 0x6F, 0x1E, 0xBD, 0xA9, 0xF5, 0xF6, 0xA8, 0x0C, 0xFF,\n0x08, 0xAC, 0x17, 0xED, 0x34, 0x2F, 0xEE, 0x9B, 0x2D, 0xEB, 0x76, 0x57, 0x5D, 0x97, 0x50, 0x75,\n0x25, 0x54, 0xDB, 0xDB, 0xFE, 0xF6, 0xF6, 0x9B, 0xD4, 0x86, 0xE5, 0xB6, 0x3F, 0x1C, 0x9A, 0xC3,\n0xDD, 0xA1, 0x11, 0xB6, 0x76, 0xCB, 0xBB, 0xC3, 0x8F, 0x42, 0x86, 0xDF, 0x69, 0xF4, 0xFF, 0xA2,\n0xBF, 0x95, 0xF1, 0xFB, 0xBF, 0x2D, 0xDC, 0x3D, 0xD7, 0x45, 0xEC, 0x5E, 0xAC, 0xDB, 0x11, 0xAB,\n0x36, 0xC9, 0x2A, 0x6C, 0x2F, 0xCA, 0x0E, 0x9C, 0x47, 0x1C, 0x74, 0x52, 0xB3, 0x23, 0x5E, 0x6D,\n0xCF, 0x2E, 0x9E, 0xEB, 0x7A, 0x18, 0x25, 0xF7, 0xC3, 0xEF, 0xBB, 0xDA, 0xEC, 0xA6, 0x57, 0x6B,\n0xBE, 0x57, 0x0A, 0x32, 0x5F, 0x55, 0x38, 0xCC, 0x89, 0x8B, 0xCD, 0xCB, 0x8F, 0xAE, 0x84, 0xED,\n0xF6, 0xD6, 0x14, 0x51, 0xE9, 0x8D, 0xE1, 0xC0, 0xB7, 0xF5, 0xEE, 0xEC, 0xB6, 0x19, 0x1C, 0x29,\n0x34, 0xC4, 0xAD, 0xB2, 0xC5, 0x6A, 0xF5, 0xF3, 0x5B, 0xF3, 0xA3, 0xE7, 0xBE, 0x2B, 0x6C, 0xB7,\n0x65, 0x7E, 0x54, 0x25, 0x86, 0x54, 0xBB, 0x55, 0xF4, 0x79, 0xEE, 0xED, 0x24, 0xF6, 0x43, 0xF3,\n0xE3, 0x02, 0x43, 0x34, 0xEA, 0x42, 0x3E, 0x6A, 0xD4, 0x1F, 0xDF, 0x5F, 0xBC, 0x97, 0x6F, 0x5C,\n0x46, 0x71, 0x7E, 0x0C, 0xB4, 0xAA, 0x1F, 0xED, 0x2A, 0x7C, 0x27, 0x88, 0x86, 0xFB, 0xA1, 0x67,\n0x48, 0x65, 0x7E, 0x18, 0xB7, 0x3A, 0xFD, 0x80, 0x1D, 0xC0, 0x7E, 0x8C, 0x9E, 0xDF, 0x1E, 0x06,\n0xF6, 0xBA, 0x1E, 0xFB, 0x83, 0x33, 0xFC, 0x66, 0xA3, 0x6C, 0xFB, 0x81, 0x22, 0x3F, 0x8C, 0xAE,\n0xD2, 0xFD, 0x08, 0x86, 0x54, 0xD2, 0x32, 0x3C, 0x52, 0x66, 0x88, 0xFA, 0xE0, 0x9A, 0x1F, 0x8B,\n0x31, 0xC4, 0x04, 0x79, 0x5E, 0x2F, 0xC7, 0x0F, 0x0C, 0x11, 0xFC, 0x18, 0x0C, 0x79, 0x25, 0x15,\n0xDE, 0x0C, 0xEF, 0xEA, 0xF1, 0xE1, 0xC8, 0x7A, 0x04, 0x1A, 0x3B, 0x86, 0x0D, 0xDB, 0x4C, 0x6F,\n0x0F, 0xB6, 0x04, 0xF6, 0x65, 0x7E, 0xEC, 0x0F, 0x92, 0x7C, 0x83, 0x1F, 0x01, 0x5D, 0x0F, 0xA7,\n0x2A, 0xF1, 0x83, 0x0C, 0x11, 0x3F, 0x4C, 0xCE, 0x0C, 0x51, 0xFD, 0x58, 0x8E, 0x21, 0xF5, 0x73,\n0x13, 0x64, 0x2E, 0x3F, 0x5E, 0xEA, 0x92, 0x50, 0x7E, 0xAF, 0x55, 0x3F, 0x1C, 0x33, 0x44, 0xA2,\n0x3A, 0xA2, 0xE5, 0xC7, 0xF6, 0x9E, 0xDB, 0x5E, 0xF5, 0xC3, 0x09, 0x3D, 0x9C, 0x3B, 0x3F, 0x4D,\n0x9E, 0xF7, 0xB5, 0xD0, 0x90, 0x03, 0xF4, 0x41, 0xB2, 0xC3, 0xE4, 0xF6, 0x80, 0x1F, 0xAA, 0x21,\n0xDD, 0x36, 0xA0, 0xFA, 0xA1, 0x1B, 0x52, 0xF1, 0x5D, 0x21, 0xA2, 0x21, 0x56, 0xA1, 0x2F, 0xC9,\n0x10, 0x13, 0x64, 0x2E, 0x3F, 0xD0, 0x43, 0xF0, 0x03, 0xD6, 0x9A, 0x1F, 0x18, 0x52, 0x59, 0xD3,\n0xFC, 0x70, 0xA4, 0xFC, 0x00, 0xC9, 0x0F, 0x18, 0x4C, 0x68, 0x50, 0x22, 0x79, 0xFE, 0x57, 0xC4,\n0xFC, 0x80, 0x73, 0xDD, 0xAB, 0x66, 0x28, 0x3F, 0x40, 0xCA, 0x0F, 0x90, 0xF5, 0xC0, 0x90, 0x73,\n0xF1, 0xED, 0xF1, 0x81, 0x21, 0xA2, 0x1F, 0x28, 0xF2, 0x3F, 0x0D, 0xD1, 0x05, 0xA9, 0x4B, 0x29,\n0xCC, 0x8F, 0xF5, 0xC8, 0x90, 0x55, 0x7B, 0xB6, 0x3E, 0x1F, 0x19, 0x92, 0x7F, 0x90, 0x76, 0xAE,\n0x85, 0xAF, 0x8E, 0x94, 0x1F, 0x50, 0xE0, 0x07, 0x19, 0x12, 0x08, 0xF9, 0xD1, 0x70, 0xBE, 0x6F,\n0x86, 0xAE, 0x92, 0xAD, 0x7A, 0x86, 0x1C, 0xC6, 0x34, 0x77, 0xD6, 0x26, 0xB7, 0x96, 0x31, 0x63,\n0x24, 0x3F, 0x40, 0xF6, 0xA3, 0xB3, 0x45, 0xC8, 0x10, 0xFC, 0xE0, 0x1B, 0x0F, 0x32, 0xB4, 0x1C,\n0x08, 0x08, 0x32, 0x9B, 0x22, 0x25, 0x82, 0xD4, 0x7F, 0xD3, 0x8F, 0x47, 0xE5, 0xF9, 0xA1, 0x64,\n0x08, 0xF1, 0x01, 0x4A, 0xA9, 0x5E, 0x45, 0x48, 0xF9, 0x01, 0xBA, 0x1F, 0x14, 0x22, 0xA1, 0x4B,\n0x45, 0x7E, 0xD0, 0x03, 0x8A, 0x11, 0xF3, 0x03, 0x9A, 0x69, 0xC8, 0x0F, 0x90, 0xFC, 0x00, 0xC5,\n0x0F, 0xDF, 0x12, 0x22, 0x52, 0x7E, 0x38, 0x3B, 0x0C, 0x11, 0xFC, 0x98, 0xBF, 0x9B, 0x55, 0x92,\n0x20, 0xF5, 0xDF, 0x2D, 0xCF, 0x8B, 0xF2, 0x23, 0xE6, 0xAA, 0x5D, 0x09, 0x7E, 0x88, 0x86, 0x8C,\n0xF3, 0xC3, 0xB7, 0x92, 0x1F, 0xA0, 0xF9, 0x01, 0xC7, 0xCC, 0xB8, 0x57, 0x83, 0xF3, 0x77, 0x64,\n0xC7, 0xFD, 0x39, 0x31, 0x3F, 0x20, 0x84, 0x51, 0xAA, 0xE1, 0x07, 0x48, 0x7E, 0x80, 0x9A, 0x1F,\n0x81, 0x6C, 0xFD, 0xB1, 0xC3, 0x0F, 0xBE, 0x13, 0xA4, 0x55, 0xFC, 0x58, 0x46, 0x21, 0xF2, 0x16,\n0x41, 0xD4, 0xF8, 0x98, 0x21, 0x3F, 0xD8, 0x2B, 0x80, 0x21, 0x53, 0x7E, 0xC0, 0xCA, 0x0D, 0xC9,\n0x8D, 0x5F, 0x45, 0x0F, 0xEB, 0x75, 0x25, 0xFA, 0x41, 0xA5, 0xAE, 0xFA, 0x41, 0x86, 0x98, 0x0B,\n0xAE, 0xC4, 0x38, 0x44, 0x30, 0xC3, 0xD6, 0x23, 0xA2, 0x1F, 0xE0, 0x7A, 0xD8, 0xE6, 0xEE, 0x64,\n0xDB, 0x03, 0x48, 0x7E, 0x40, 0xD6, 0x0F, 0xDC, 0xE8, 0x8E, 0x67, 0x27, 0xF7, 0x7D, 0x85, 0x1F,\n0x40, 0x21, 0x92, 0x1C, 0xBE, 0x5A, 0x98, 0x21, 0x08, 0xF2, 0xFF, 0xF2, 0x03, 0x41, 0xA2, 0x0C,\n0x51, 0xFC, 0x20, 0x43, 0x2A, 0x21, 0x3F, 0x8C, 0xBC, 0x21, 0xD5, 0x76, 0x82, 0x6F, 0x8A, 0x1F,\n0x70, 0x18, 0xE4, 0x08, 0x8C, 0x42, 0x24, 0xCD, 0x5E, 0xF3, 0x03, 0x8E, 0xE2, 0x8D, 0xB6, 0x0C,\n0xEF, 0x8A, 0x86, 0xF4, 0xF8, 0xA1, 0x19, 0x82, 0x1A, 0x06, 0x67, 0xF5, 0xFC, 0xC0, 0x90, 0xB4,\n0x1F, 0x0B, 0x34, 0xC4, 0x04, 0x41, 0x05, 0xC1, 0x8F, 0x19, 0xC7, 0xAF, 0xE2, 0x0C, 0x91, 0xFD,\n0x08, 0x13, 0x22, 0x00, 0x71, 0x7C, 0x74, 0xB6, 0x60, 0x08, 0x30, 0x3D, 0x08, 0xB0, 0xE9, 0x14,\n0x3D, 0xE0, 0x5B, 0xDF, 0x7C, 0x67, 0x60, 0xE9, 0x7E, 0x5C, 0x36, 0xA4, 0x07, 0x5E, 0xD8, 0x92,\n0x35, 0x64, 0xCF, 0x2D, 0x47, 0xAB, 0x41, 0x2E, 0xB1, 0xE2, 0x47, 0x8C, 0x96, 0x1F, 0x50, 0xE5,\n0xF2, 0x83, 0x93, 0x7C, 0x37, 0x0B, 0x3F, 0xF2, 0x86, 0xE0, 0xC7, 0x12, 0x0D, 0x31, 0x41, 0xAC,\n0xA7, 0xB5, 0xA0, 0xFA, 0x63, 0x64, 0x88, 0xE0, 0x07, 0x86, 0x54, 0xF9, 0xFC, 0xE0, 0xC4, 0x0D,\n0xA9, 0xA4, 0xFE, 0x15, 0x7C, 0x53, 0xFC, 0x00, 0x8E, 0x5B, 0xAF, 0x18, 0x28, 0x3F, 0x50, 0x63,\n0x84, 0x1A, 0x1F, 0x64, 0x08, 0x85, 0x8D, 0x9F, 0x52, 0x9E, 0xCB, 0x8A, 0x64, 0xFE, 0xDC, 0xAE,\n0x4A, 0xFA, 0x01, 0x74, 0xB1, 0xBA, 0x54, 0xA5, 0x6E, 0xCD, 0xA7, 0x07, 0x05, 0x43, 0xF0, 0x63,\n0x79, 0x86, 0x9C, 0xD6, 0x20, 0xF5, 0x9F, 0xEA, 0xF1, 0xC7, 0xF9, 0x01, 0x6B, 0xD9, 0x0F, 0x26,\n0xD5, 0xC7, 0xE5, 0x07, 0x4E, 0x00, 0x57, 0xE5, 0x87, 0x77, 0x63, 0x64, 0x3F, 0xA8, 0x43, 0xE8,\n0x5E, 0xF9, 0x8A, 0x1D, 0x90, 0xCB, 0x90, 0x3D, 0x37, 0xF0, 0x2D, 0xA7, 0xBE, 0x69, 0xEE, 0x09,\n0xFF, 0x43, 0x9F, 0x45, 0xEA, 0x5E, 0xC1, 0x44, 0x7E, 0x20, 0x46, 0x60, 0x62, 0x56, 0x9D, 0xE9,\n0x41, 0xD1, 0x90, 0x44, 0x3F, 0x7B, 0x19, 0x13, 0x22, 0x91, 0x20, 0x97, 0x38, 0xF2, 0x3B, 0xA3,\n0xBB, 0x85, 0xF9, 0x71, 0x66, 0xAF, 0xAC, 0x05, 0x3F, 0xC0, 0x0D, 0x49, 0xF7, 0xAF, 0x78, 0x5C,\n0xD9, 0x18, 0x91, 0x1F, 0x9B, 0x2D, 0x08, 0xA5, 0x7A, 0x7F, 0x0E, 0xEF, 0x56, 0x31, 0x7C, 0x15,\n0xDB, 0x11, 0x5F, 0x98, 0xC8, 0x8F, 0xD8, 0x0E, 0xE8, 0x0F, 0xC4, 0x94, 0x5D, 0x3A, 0x87, 0xD4,\n0xBD, 0x82, 0x6C, 0x7C, 0x10, 0xCB, 0x64, 0x08, 0x4F, 0x4E, 0x79, 0x3F, 0x98, 0x10, 0x89, 0xFD,\n0x58, 0x62, 0x86, 0x20, 0x08, 0xFC, 0x81, 0x20, 0xE5, 0xE3, 0x57, 0x79, 0x5E, 0xAC, 0xD0, 0x03,\n0x3F, 0x26, 0x43, 0x84, 0x47, 0x69, 0x00, 0x19, 0x02, 0xE1, 0x3C, 0x48, 0xF9, 0x01, 0x9A, 0x1F,\n0xE0, 0xB3, 0xDE, 0xA1, 0x13, 0xC4, 0xF1, 0x4D, 0x4D, 0x11, 0x91, 0xF2, 0x63, 0x9F, 0xB3, 0xC4,\n0xB4, 0x23, 0x43, 0xFA, 0x32, 0x43, 0xB6, 0x9B, 0x22, 0x43, 0xB0, 0x22, 0xD2, 0x04, 0xC4, 0xFC,\n0xC0, 0x90, 0xFC, 0xF0, 0xEE, 0x52, 0x26, 0x44, 0x4E, 0x05, 0xA9, 0xFF, 0xC8, 0x0F, 0x3D, 0x3F,\n0x94, 0x77, 0x47, 0x5D, 0x1D, 0x0D, 0xB1, 0x48, 0x5E, 0xED, 0xCE, 0x0A, 0xB2, 0x72, 0x35, 0x02,\n0x55, 0x72, 0x4C, 0x72, 0xFC, 0x48, 0x4B, 0x7E, 0x80, 0xE4, 0x07, 0x34, 0xBC, 0xB8, 0x77, 0x22,\n0x37, 0x70, 0x25, 0xEE, 0x65, 0x25, 0x6F, 0x1E, 0x5F, 0x19, 0xA6, 0xE7, 0xED, 0x4C, 0xAF, 0x20,\n0xE5, 0x07, 0x74, 0x90, 0xA8, 0x3D, 0x3A, 0x2E, 0x05, 0x41, 0x46, 0xD3, 0x83, 0xCA, 0x97, 0xA4,\n0xFF, 0xEA, 0xC7, 0x62, 0x0D, 0x41, 0x10, 0xBC, 0x98, 0xA9, 0xFE, 0xD0, 0xFD, 0x80, 0x75, 0x1B,\n0xFC, 0x10, 0x76, 0xF9, 0x78, 0xCA, 0x70, 0x24, 0x47, 0xF4, 0xE8, 0x02, 0xE5, 0xB9, 0x84, 0xEA,\n0x07, 0x8A, 0x30, 0x7E, 0x15, 0x65, 0x08, 0x17, 0x61, 0xE4, 0x47, 0x5C, 0xD3, 0x73, 0xCA, 0xAF,\n0x35, 0x61, 0xC2, 0xB0, 0xD7, 0xC0, 0x0F, 0x89, 0x44, 0xF9, 0x01, 0x09, 0x67, 0x8E, 0x3B, 0x7F,\n0x97, 0xCF, 0x0F, 0x26, 0xD5, 0xDB, 0x7B, 0x3F, 0xFE, 0xBF, 0x21, 0xB5, 0x2E, 0x08, 0x7E, 0xC0,\n0x0C, 0xF9, 0x21, 0xD2, 0x52, 0x7E, 0x68, 0x86, 0x54, 0x27, 0xE5, 0x07, 0x4F, 0x77, 0x13, 0x19,\n0x52, 0x6D, 0x55, 0xF0, 0x43, 0x83, 0xE9, 0x73, 0x5F, 0xD3, 0x25, 0x3A, 0xA7, 0xF8, 0xC1, 0xF5,\n0x13, 0xEC, 0x99, 0x54, 0x3F, 0xF4, 0x2A, 0xF8, 0x21, 0x91, 0xCE, 0x8F, 0xB8, 0xAC, 0x03, 0xA6,\n0x3F, 0x20, 0x5F, 0xAA, 0x87, 0xE1, 0xAB, 0x05, 0x1B, 0x92, 0x16, 0x64, 0xFE, 0xFC, 0x58, 0xEB,\n0x86, 0xE0, 0x87, 0xF4, 0xE9, 0x00, 0xE9, 0xE9, 0x41, 0x7F, 0x30, 0x39, 0x03, 0x4C, 0x7F, 0x48,\n0xE0, 0x87, 0x86, 0x1F, 0xC0, 0x11, 0x98, 0x32, 0x51, 0xA9, 0x67, 0x1C, 0x8A, 0xB9, 0x23, 0x3F,\n0x14, 0xF0, 0x43, 0xA3, 0x8A, 0xF2, 0x83, 0x1D, 0x98, 0x7C, 0x06, 0x22, 0x3F, 0x44, 0x43, 0xFC,\n0xDD, 0x83, 0xCB, 0x31, 0xA4, 0x96, 0x05, 0xA9, 0x4B, 0x29, 0xAF, 0x3F, 0x64, 0xD6, 0xBC, 0x7A,\n0x57, 0xEC, 0x65, 0x25, 0xC7, 0x75, 0x27, 0xC7, 0x61, 0xD0, 0x43, 0x02, 0x3D, 0x44, 0x43, 0xB2,\n0xA3, 0xB5, 0xF1, 0xA5, 0x3D, 0xC3, 0xBB, 0xC9, 0x1E, 0x99, 0x5F, 0xCB, 0x45, 0xA3, 0x2F, 0x03,\n0x3F, 0x24, 0xD8, 0x77, 0x99, 0xDE, 0x2A, 0x92, 0x30, 0x3D, 0x28, 0xB1, 0x1A, 0xF2, 0x63, 0x49,\n0x86, 0x08, 0x82, 0xCC, 0x9F, 0x1F, 0xB5, 0xF9, 0x51, 0x00, 0x5F, 0x92, 0xAE, 0x1A, 0xC2, 0xE1,\n0x7F, 0xD2, 0xC5, 0xE2, 0x4A, 0xA6, 0x0C, 0xB7, 0x45, 0x74, 0x08, 0xA2, 0xC1, 0xA1, 0x9C, 0xC8,\n0x00, 0xAE, 0x22, 0x43, 0x84, 0x1B, 0xF1, 0xA3, 0x72, 0x41, 0xBA, 0x72, 0x41, 0x86, 0x0D, 0x32,\n0x4C, 0x25, 0xB3, 0x83, 0x1F, 0xEA, 0x57, 0x41, 0x97, 0x19, 0x52, 0xCF, 0x6B, 0xC8, 0x6C, 0x09,\n0x42, 0x7E, 0x08, 0x7E, 0xBC, 0xBE, 0x00, 0x31, 0x41, 0x30, 0x44, 0xE9, 0x64, 0xF1, 0xF0, 0xB1,\n0xF1, 0x85, 0x8B, 0xAC, 0xC5, 0x09, 0xF2, 0xB9, 0x2F, 0xA1, 0x69, 0x4E, 0xE6, 0x3E, 0xF6, 0x99,\n0x7A, 0x7D, 0x9F, 0xEC, 0x61, 0x71, 0x21, 0xFE, 0x2D, 0x06, 0x78, 0x35, 0x3E, 0x13, 0x20, 0x12,\n0x89, 0x02, 0x84, 0x93, 0x53, 0xE8, 0x60, 0x49, 0xAC, 0x1E, 0xAE, 0x2F, 0x0A, 0xB8, 0xBA, 0x78,\n0x8D, 0x21, 0x33, 0x08, 0x32, 0x67, 0x0D, 0x52, 0x34, 0x7E, 0xF5, 0xDA, 0xFE, 0xD4, 0x99, 0x6A,\n0x90, 0xD5, 0x2B, 0x7B, 0x8C, 0x98, 0x42, 0x17, 0xE8, 0xBA, 0xCD, 0xAC, 0x35, 0x48, 0xD3, 0x60,\n0x45, 0x36, 0x19, 0xF6, 0xA3, 0x1A, 0x84, 0xB2, 0x1E, 0xAB, 0x12, 0xD7, 0x37, 0xFD, 0x9C, 0x35,\n0xC8, 0xA6, 0xAB, 0xC6, 0x35, 0x08, 0x72, 0xB0, 0x65, 0xE4, 0xD7, 0x3F, 0xFA, 0xFD, 0x55, 0x49,\n0x0D, 0xD2, 0x16, 0xF5, 0xB1, 0x5E, 0x63, 0xC8, 0x1C, 0xF9, 0x31, 0xEF, 0x28, 0x96, 0xDE, 0xBF,\n0xB2, 0xBF, 0xD2, 0x5A, 0x81, 0x1F, 0x0F, 0x07, 0x43, 0x76, 0x72, 0x05, 0xB2, 0x33, 0xAE, 0x4F,\n0xC3, 0x22, 0x3D, 0x9B, 0xBE, 0x31, 0x3D, 0xAA, 0x59, 0x46, 0xB1, 0x78, 0x7B, 0x61, 0x1F, 0xD5,\n0x1E, 0xA9, 0xFC, 0x10, 0x46, 0xB1, 0xB8, 0xC0, 0xE5, 0xC6, 0xE9, 0x8D, 0x99, 0x46, 0xB1, 0x36,\n0xB6, 0x54, 0x00, 0x89, 0x92, 0xDD, 0xF7, 0x3C, 0x93, 0x84, 0x8A, 0x1F, 0xAD, 0x3E, 0x8A, 0x15,\n0x8E, 0x9B, 0xAB, 0x47, 0xF5, 0x22, 0x46, 0xB1, 0xE6, 0x31, 0xC4, 0x6E, 0x15, 0xF4, 0x10, 0x23,\n0xE4, 0xAA, 0x7D, 0xF1, 0x70, 0x10, 0xA4, 0x7D, 0x21, 0x19, 0x72, 0xF4, 0xE3, 0xBE, 0x9B, 0xD5,\n0xA5, 0x4B, 0x4A, 0x1E, 0x5F, 0x67, 0x53, 0xCD, 0x34, 0x0F, 0x32, 0xE8, 0x61, 0xB8, 0x21, 0x51,\n0x25, 0xC2, 0x79, 0xC8, 0xBE, 0xCE, 0x24, 0x35, 0x0D, 0xDF, 0xFB, 0xBF, 0xFF, 0x97, 0xE7, 0x41,\n0xA0, 0xF2, 0x00, 0x21, 0x43, 0x7C, 0x9D, 0x1E, 0xF4, 0xD8, 0x39, 0xF2, 0x38, 0x96, 0xF5, 0x0C,\n0x1E, 0x5A, 0x93, 0x0D, 0xF1, 0x27, 0x55, 0x37, 0x64, 0x11, 0xF3, 0x20, 0xE5, 0x8A, 0xE8, 0xF9,\n0x71, 0xE1, 0x92, 0xA8, 0xF9, 0xE1, 0x6D, 0x6D, 0x86, 0xA8, 0xF9, 0xE1, 0x5C, 0x8F, 0xE4, 0x98,\n0x60, 0x90, 0x63, 0x58, 0x2C, 0x48, 0x24, 0x3F, 0xE0, 0xB3, 0x98, 0x1F, 0x81, 0x28, 0x3F, 0xD8,\n0x8E, 0xF3, 0x03, 0xA2, 0x5B, 0x24, 0x7F, 0x89, 0x4F, 0x01, 0x9A, 0x65, 0x26, 0xDD, 0x77, 0x4D,\n0x3A, 0x43, 0x50, 0x85, 0xE7, 0x1B, 0xF6, 0xBC, 0x8D, 0x64, 0x49, 0x03, 0x58, 0x26, 0xC8, 0xD0,\n0x5E, 0xB4, 0x57, 0x6A, 0x7E, 0x90, 0x21, 0xFF, 0x73, 0x26, 0x1D, 0xEA, 0xCB, 0xBA, 0x84, 0xF3,\n0xF7, 0xF9, 0xA8, 0x87, 0xAF, 0x57, 0x62, 0x7E, 0x78, 0xE3, 0xB5, 0x26, 0x99, 0xF2, 0x03, 0x3F,\n0xE8, 0x65, 0x55, 0x9C, 0xD0, 0xC5, 0xC2, 0x8F, 0x6A, 0x58, 0x36, 0xFA, 0x6B, 0xB1, 0x74, 0x43,\n0x3E, 0xF7, 0xE1, 0xF8, 0x1D, 0x5A, 0xDF, 0x9C, 0xC6, 0x00, 0x67, 0xA8, 0x3F, 0x60, 0x3F, 0x79,\n0x5B, 0x87, 0xFC, 0x08, 0x08, 0xE5, 0x39, 0x28, 0x86, 0xD8, 0x3E, 0x61, 0xF7, 0x20, 0x45, 0x3A,\n0x3C, 0xF0, 0x43, 0xCD, 0x90, 0xD6, 0x78, 0x88, 0x21, 0x42, 0x7E, 0x50, 0x88, 0xBC, 0xA9, 0xEB,\n0x7F, 0xFF, 0x5A, 0xAC, 0xF9, 0xBB, 0x59, 0x75, 0xFD, 0xDA, 0x05, 0x41, 0x11, 0xE1, 0x75, 0x26,\n0x2D, 0x86, 0xB4, 0x79, 0x43, 0x06, 0x3F, 0x76, 0x0E, 0x86, 0xA0, 0xC3, 0x89, 0x2B, 0xF6, 0xD3,\n0xFB, 0x67, 0xC8, 0xAA, 0x53, 0x32, 0xE4, 0x76, 0x8C, 0xFE, 0x4A, 0x2C, 0x7A, 0x59, 0x71, 0xB5,\n0xBE, 0xCF, 0xBC, 0xAB, 0x90, 0x9B, 0x70, 0x72, 0x12, 0x1F, 0xF7, 0xEF, 0x06, 0x69, 0xFE, 0xFA,\n0xAB, 0x79, 0x5D, 0x0C, 0x5F, 0xFC, 0x89, 0x04, 0x1D, 0xA2, 0xFC, 0xA0, 0xFE, 0x80, 0xB3, 0x86,\n0xAC, 0xDC, 0x0F, 0x0C, 0x59, 0x6B, 0xF9, 0xE1, 0xCD, 0x96, 0x37, 0x8F, 0xEA, 0x45, 0xBC, 0x9A,\n0xF7, 0xAF, 0x18, 0xC2, 0x7D, 0x0E, 0x52, 0xF8, 0x56, 0xA8, 0x43, 0xD6, 0x21, 0x3E, 0x50, 0x64,\n0x25, 0xF8, 0x01, 0xAF, 0xA2, 0xE1, 0xDE, 0x98, 0xA3, 0x1A, 0xC1, 0x91, 0x7C, 0x86, 0x74, 0xB7,\n0xA0, 0x65, 0x08, 0xFD, 0xAB, 0x20, 0x4A, 0xE4, 0x45, 0x14, 0x0C, 0x3F, 0x4E, 0xA0, 0x5F, 0x05,\n0x08, 0x46, 0x7E, 0xA0, 0x88, 0xA0, 0x07, 0x9C, 0xF5, 0x83, 0x00, 0x21, 0x43, 0xD2, 0x74, 0xF8,\n0xA1, 0x19, 0xB2, 0x72, 0x3D, 0x68, 0x67, 0x5F, 0xEF, 0xCE, 0x93, 0x69, 0x70, 0x04, 0x43, 0xFE,\n0xC9, 0xFB, 0x41, 0xE6, 0x37, 0xA4, 0x0E, 0xE5, 0x07, 0x09, 0xE2, 0xE7, 0xF2, 0xF9, 0xD1, 0x46,\n0x86, 0x64, 0x32, 0x84, 0xFE, 0x55, 0x64, 0x48, 0x97, 0xEC, 0x35, 0x7B, 0x7E, 0x84, 0x0A, 0x04,\n0x47, 0x36, 0x52, 0x7C, 0xC0, 0xF9, 0xFC, 0xB8, 0xF3, 0xE6, 0x87, 0x30, 0x33, 0x86, 0xEA, 0xBB,\n0xD2, 0x31, 0xE8, 0x64, 0xE8, 0x2B, 0xCA, 0x0F, 0xC3, 0xB6, 0x92, 0x1F, 0x20, 0xE6, 0x87, 0x5B,\n0x42, 0x86, 0x10, 0xCB, 0xEC, 0x54, 0xFC, 0x90, 0x0C, 0xC1, 0x0F, 0x5A, 0xC6, 0x10, 0x8E, 0x1B,\n0x6F, 0xC1, 0x97, 0xBA, 0x9E, 0xDB, 0x0F, 0x04, 0x99, 0xD3, 0x10, 0xFC, 0x78, 0xED, 0x31, 0x49,\n0x82, 0x84, 0xFE, 0xE4, 0x14, 0xEB, 0x87, 0xBE, 0xE3, 0xB4, 0x0C, 0x59, 0x91, 0x1F, 0xB1, 0x21,\n0x38, 0x02, 0xC3, 0xD5, 0xC7, 0x07, 0x1F, 0x3B, 0x6C, 0x15, 0xF2, 0x43, 0xCB, 0x90, 0x26, 0xC9,\n0xA8, 0x4C, 0x27, 0x10, 0xF0, 0x23, 0x66, 0x72, 0xBE, 0x30, 0xE4, 0x07, 0x1B, 0xF7, 0x50, 0xF3,\n0x03, 0x72, 0x7E, 0x84, 0x05, 0x51, 0xF0, 0x02, 0x47, 0xE8, 0x5F, 0xC9, 0x86, 0xE0, 0x87, 0x9A,\n0x21, 0x1C, 0x37, 0x24, 0x08, 0x13, 0x22, 0xFF, 0xE2, 0x3D, 0xE9, 0xB3, 0x1B, 0xC2, 0xF0, 0x55,\n0x9C, 0x20, 0xB6, 0xA4, 0xA1, 0xFC, 0x88, 0x0C, 0x91, 0xFC, 0x80, 0x71, 0x7E, 0x40, 0xE8, 0x5B,\n0x93, 0x20, 0xE1, 0x68, 0x90, 0xF2, 0x03, 0xA6, 0xFC, 0xF0, 0x03, 0xD8, 0x96, 0x63, 0x9D, 0x1E,\n0xB6, 0x13, 0x81, 0xF0, 0x63, 0x12, 0x6E, 0x97, 0xAE, 0x3F, 0x7C, 0x03, 0x9A, 0x1F, 0x30, 0x3D,\n0x7C, 0xC5, 0x82, 0x2C, 0x9E, 0x15, 0xB6, 0x01, 0xF2, 0x43, 0x36, 0x04, 0x3F, 0x62, 0x43, 0xDA,\n0x4C, 0x7E, 0x44, 0x09, 0xC2, 0x60, 0xD6, 0xAC, 0x7E, 0x20, 0xC8, 0xFC, 0x86, 0x84, 0x98, 0x24,\n0x41, 0xF8, 0x43, 0x55, 0x3F, 0x30, 0x04, 0x78, 0x3F, 0xFA, 0x2E, 0xCD, 0xF8, 0x83, 0x4D, 0x98,\n0x1E, 0x34, 0xE2, 0x04, 0xF1, 0xD3, 0x4E, 0xF2, 0x03, 0x3E, 0x67, 0xCA, 0x0F, 0xE4, 0xE0, 0xAD,\n0x7F, 0x00, 0x3F, 0x32, 0xE4, 0xCA, 0x0F, 0x08, 0x32, 0x1E, 0xFE, 0xE4, 0x73, 0xB1, 0x80, 0xF8,\n0x60, 0xBF, 0xF8, 0x12, 0xE5, 0x07, 0xC3, 0x57, 0x00, 0x4C, 0xAA, 0x0B, 0x7E, 0x60, 0x48, 0xC2,\n0x8F, 0x44, 0x82, 0x84, 0x0C, 0x59, 0xC4, 0xE7, 0x62, 0xFD, 0x64, 0xEE, 0x6C, 0x5A, 0x5C, 0x29,\n0xA2, 0x30, 0x2C, 0x24, 0xFE, 0x01, 0x23, 0xB3, 0x68, 0x32, 0x3A, 0x41, 0x50, 0x9C, 0x85, 0x32,\n0xBB, 0xAC, 0x5D, 0xB9, 0x74, 0x84, 0xE0, 0x62, 0x86, 0x2C, 0x45, 0x21, 0x98, 0x85, 0x18, 0x88,\n0xA0, 0xF8, 0x01, 0x77, 0x33, 0x06, 0x41, 0xD0, 0x19, 0x37, 0x8E, 0x3F, 0xD5, 0x53, 0x27, 0xA7,\n0xF3, 0xD0, 0x9D, 0xEA, 0xEA, 0xB7, 0xC0, 0x11, 0xDF, 0xAA, 0xEA, 0xAE, 0xE4, 0xC6, 0xEB, 0xDC,\n0xEA, 0x7A, 0xFA, 0xAD, 0x53, 0xA7, 0x67, 0xA6, 0x9E, 0x90, 0x52, 0xFA, 0x1C, 0x07, 0xE1, 0x8D,\n0x7C, 0xFA, 0x63, 0xA0, 0x40, 0x08, 0xE1, 0xC7, 0x20, 0x1F, 0x24, 0x44, 0xEC, 0x80, 0x30, 0x0E,\n0x3A, 0xED, 0x84, 0x58, 0xFD, 0x6B, 0x3F, 0x59, 0x91, 0x49, 0x4C, 0xBA, 0xE2, 0x13, 0xD1, 0x3F,\n0x50, 0x26, 0x9E, 0x6F, 0xC9, 0xE3, 0xC0, 0xFF, 0x41, 0xE3, 0x03, 0x65, 0x97, 0x57, 0x5D, 0x28,\n0xA8, 0xD6, 0xCE, 0xF5, 0x2A, 0xAB, 0xC1, 0xA4, 0xBA, 0xA7, 0x3F, 0xF2, 0x05, 0x42, 0x7A, 0xFE,\n0x91, 0x71, 0x10, 0x3C, 0xE4, 0x65, 0xF8, 0xC8, 0x03, 0xF2, 0x32, 0x29, 0x43, 0x7B, 0x89, 0x4D,\n0xE2, 0x20, 0xAC, 0x27, 0x33, 0x7C, 0x0C, 0xE1, 0x41, 0x52, 0xBD, 0x1F, 0x9E, 0x97, 0x08, 0xE9,\n0x09, 0x28, 0x70, 0x10, 0x60, 0xF9, 0x17, 0x7E, 0x36, 0x6F, 0x4C, 0xDA, 0x38, 0x32, 0x83, 0xD3,\n0xCA, 0xEB, 0x6C, 0x91, 0x25, 0xFE, 0xEC, 0x6A, 0x74, 0x42, 0x0F, 0x02, 0x0B, 0x88, 0x54, 0xFF,\n0x6C, 0xDE, 0x66, 0xD5, 0x37, 0x90, 0xBC, 0x87, 0x94, 0xFD, 0x83, 0x84, 0x48, 0x36, 0x7D, 0x9E,\n0x2F, 0x96, 0x10, 0xC9, 0xF0, 0x91, 0x77, 0x10, 0x92, 0xEA, 0x2F, 0xFF, 0xB3, 0x79, 0x5F, 0x90,\n0x10, 0xF6, 0xAF, 0xF2, 0x0E, 0xC2, 0x09, 0x5D, 0xAD, 0x27, 0xA5, 0x42, 0xCA, 0x50, 0xE1, 0x83,\n0x84, 0x08, 0x17, 0x76, 0xD5, 0x81, 0xA2, 0x0F, 0x4B, 0xF5, 0x4F, 0x77, 0xFF, 0x3A, 0x93, 0x3E,\n0x47, 0x7B, 0x4E, 0x24, 0x44, 0x90, 0xFA, 0xD3, 0xDD, 0xF9, 0x8F, 0xCC, 0x86, 0x32, 0x6C, 0x70,\n0xD6, 0xF8, 0x40, 0x99, 0xF0, 0x3C, 0x13, 0x82, 0x50, 0x9B, 0x9D, 0xE2, 0x1F, 0x24, 0xD5, 0xF3,\n0xE9, 0xF3, 0x7C, 0x81, 0x90, 0x8E, 0x7F, 0xE4, 0x1D, 0xC4, 0x09, 0x01, 0x91, 0x17, 0xE0, 0xE3,\n0x45, 0x7F, 0x3F, 0x48, 0x3F, 0x7D, 0x3E, 0xE4, 0x20, 0x24, 0xD5, 0xF9, 0x61, 0x3F, 0x23, 0x80,\n0xAC, 0x27, 0x10, 0x02, 0x1F, 0x63, 0x1E, 0xB2, 0x63, 0x7D, 0x55, 0x76, 0x10, 0x08, 0x81, 0x0F,\n0x9D, 0x90, 0x9E, 0x7D, 0x20, 0xDE, 0x13, 0xE3, 0x8F, 0xFC, 0x76, 0xEF, 0x81, 0xE0, 0x26, 0x0E,\n0xFC, 0xBE, 0x85, 0xE8, 0x49, 0x7C, 0xA0, 0x33, 0xFF, 0xE8, 0x5A, 0x48, 0xC1, 0x43, 0xF0, 0x0F,\n0xC9, 0x43, 0x5E, 0x91, 0x1E, 0xCC, 0x16, 0x52, 0x86, 0xF0, 0x91, 0x77, 0x10, 0x92, 0xEA, 0x96,\n0x32, 0xFC, 0x5F, 0xFC, 0x7E, 0x90, 0x7A, 0x42, 0x08, 0x3F, 0xF8, 0x77, 0xE6, 0x1D, 0xC4, 0x1B,\n0x83, 0xD2, 0x0D, 0xCF, 0x4B, 0xA1, 0x3A, 0xE9, 0x41, 0x85, 0x90, 0xD0, 0x6A, 0x37, 0xE2, 0x20,\n0x3B, 0xFB, 0x8C, 0xC6, 0x07, 0xCA, 0xFC, 0x60, 0xF7, 0xDE, 0x2C, 0x46, 0x7C, 0x87, 0x08, 0xFE,\n0xA1, 0x12, 0xD2, 0x0F, 0x6E, 0x78, 0xD9, 0x41, 0x12, 0x3C, 0x24, 0x65, 0xD2, 0x83, 0x1D, 0x22,\n0x06, 0xE3, 0x10, 0x65, 0xE8, 0x21, 0xC4, 0xF8, 0x18, 0xC1, 0x83, 0x84, 0x08, 0xFE, 0x51, 0x72,\n0x10, 0xEF, 0x38, 0x21, 0x2F, 0xF9, 0x1B, 0xA6, 0xDE, 0xF8, 0xF2, 0xE5, 0x08, 0x79, 0x07, 0xFF,\n0x28, 0x3A, 0x88, 0x9F, 0x48, 0x7F, 0x28, 0x84, 0xBC, 0x7A, 0xA5, 0xF1, 0x41, 0x42, 0x84, 0xF4,\n0x79, 0xD1, 0x41, 0x9C, 0x1F, 0x91, 0x0F, 0x3C, 0x84, 0xF5, 0x55, 0xDF, 0x38, 0x38, 0x59, 0xFB,\n0xF5, 0xE8, 0x30, 0xA4, 0x3F, 0xEA, 0x08, 0xE9, 0x07, 0x37, 0x5D, 0x42, 0x78, 0xC5, 0xE3, 0x57,\n0x92, 0x7A, 0xF1, 0x79, 0x3E, 0x08, 0xA1, 0xAA, 0x7C, 0x40, 0x88, 0xC6, 0x07, 0x09, 0x11, 0x90,\n0x28, 0x3B, 0x88, 0x35, 0x27, 0xE4, 0xE5, 0xF8, 0x78, 0x47, 0x74, 0x10, 0x1E, 0x5D, 0x7C, 0x5B,\n0x2E, 0x84, 0x1F, 0x63, 0x0E, 0x02, 0x22, 0x17, 0xF8, 0x47, 0xA9, 0x5C, 0x3A, 0x21, 0xA4, 0x3F,\n0x34, 0x42, 0x16, 0xC7, 0x10, 0xA3, 0x19, 0x6B, 0x3C, 0x99, 0xB5, 0x11, 0xB5, 0xDD, 0x1C, 0x3E,\n0x89, 0xA7, 0x13, 0x0F, 0xDE, 0x0E, 0xA7, 0x83, 0xC9, 0xCF, 0xA1, 0x78, 0x85, 0x7F, 0x88, 0x22,\n0x3C, 0x0F, 0x11, 0xFF, 0xF3, 0x06, 0x20, 0xE2, 0x1F, 0x9A, 0x56, 0x6D, 0xFA, 0xBC, 0x14, 0x83,\n0xE0, 0x21, 0xF0, 0xA1, 0x13, 0xA2, 0xF1, 0xC1, 0x66, 0x16, 0xCB, 0xEE, 0xB2, 0x83, 0x04, 0x21,\n0xD5, 0x7C, 0x88, 0x7A, 0xE3, 0xB5, 0xFB, 0x2F, 0x65, 0xBD, 0x55, 0x01, 0x88, 0xD5, 0xB4, 0xBE,\n0x02, 0xFF, 0x92, 0x83, 0x78, 0x75, 0xFF, 0x58, 0x8B, 0xBA, 0xB8, 0xB0, 0x41, 0x37, 0x48, 0x54,\n0xBD, 0x77, 0x0A, 0x44, 0x56, 0xED, 0x5A, 0x2B, 0x0E, 0xD1, 0x90, 0x31, 0xE2, 0x56, 0x73, 0xE4,\n0xE3, 0x67, 0xA1, 0xA4, 0x4F, 0xB9, 0x7F, 0x1C, 0xCE, 0x8A, 0xD5, 0xEC, 0x9B, 0x47, 0x3E, 0xF2,\n0x4F, 0x98, 0x64, 0x8A, 0x7B, 0x48, 0xF7, 0xAF, 0xB3, 0x0A, 0x7E, 0xF4, 0x03, 0x47, 0xF3, 0xB4,\n0xF8, 0xC2, 0x84, 0x62, 0x84, 0xEF, 0xB6, 0xAB, 0x46, 0x12, 0xD9, 0xC1, 0xF7, 0x2A, 0x46, 0x7F,\n0x3A, 0x9D, 0x5E, 0x5C, 0xAC, 0x55, 0x5D, 0xF8, 0xA4, 0x58, 0x76, 0xCA, 0xEB, 0xA7, 0xB2, 0xBC,\n0x8A, 0x5E, 0xBC, 0x9B, 0x08, 0x89, 0x29, 0x37, 0x5A, 0x8E, 0xD5, 0x7E, 0xC2, 0xAE, 0x49, 0x5D,\n0x62, 0xDD, 0xDC, 0x7F, 0xD9, 0x2F, 0x9F, 0x7D, 0xE6, 0xE7, 0x7E, 0x79, 0xF3, 0x7E, 0xB9, 0x5C,\n0xBE, 0xB3, 0xBC, 0x7F, 0x7D, 0xBC, 0x1E, 0xF5, 0xFE, 0xFB, 0x57, 0x15, 0x5A, 0x5E, 0xD9, 0xDD,\n0x63, 0xA2, 0x6A, 0x7D, 0x75, 0xB9, 0xA8, 0x53, 0xB3, 0x7D, 0xB6, 0x79, 0x20, 0xCA, 0x32, 0x86,\n0x0F, 0x87, 0x0A, 0x6D, 0x1E, 0xF6, 0xBF, 0x3E, 0x3E, 0xFE, 0xA2, 0xD6, 0x5F, 0x7E, 0xF9, 0xF5,\n0xEF, 0xBF, 0xFF, 0xF8, 0xFB, 0xAF, 0xBF, 0xFF, 0xB0, 0xDA, 0x3B, 0xE5, 0xCB, 0x5F, 0xFE, 0x5F,\n0xF6, 0xF5, 0xCB, 0xF0, 0x8B, 0x83, 0xFE, 0xF5, 0x3F, 0x58, 0x65, 0x68, 0x14, 0x3D, 0x37, 0x8B,\n0x2A, 0xA5, 0xF5, 0xD5, 0x44, 0xD6, 0xE5, 0xE4, 0xEA, 0xFD, 0xD7, 0xAC, 0x8A, 0xD3, 0xE7, 0xB5,\n0xAB, 0xA5, 0x49, 0x9A, 0x9A, 0x21, 0x9B, 0xCC, 0x6A, 0xB9, 0x79, 0xED, 0xE3, 0x37, 0xEF, 0xC5,\n0xF2, 0xE6, 0xFD, 0xFD, 0xFB, 0xEF, 0x5B, 0x35, 0x95, 0x8E, 0x7E, 0x3A, 0x7E, 0xF2, 0xE2, 0xE2,\n0xFD, 0x2B, 0xBD, 0xAC, 0xA7, 0xD3, 0xD9, 0x54, 0xD4, 0x6C, 0x3A, 0x99, 0xDE, 0xEE, 0x9A, 0x1A,\n0xED, 0x9E, 0x1F, 0x1E, 0x9E, 0x75, 0x3D, 0xEC, 0xEB, 0xF4, 0xF8, 0xF8, 0xC7, 0xA3, 0xAE, 0x3F,\n0xFF, 0xF8, 0xBB, 0x52, 0xC7, 0xBF, 0xFD, 0x0F, 0xB9, 0xEE, 0x2B, 0xF4, 0xCB, 0x7E, 0x9F, 0x86,\n0xE6, 0x41, 0x2C, 0x56, 0x19, 0x7A, 0xC9, 0x71, 0x6E, 0xA7, 0x13, 0xBB, 0x64, 0x33, 0xB9, 0xAE,\n0x6D, 0x3A, 0xC8, 0xBA, 0xB8, 0xF2, 0xC9, 0x76, 0x3F, 0x36, 0x2F, 0xF9, 0x94, 0xCD, 0x66, 0xB5,\n0x5C, 0x1B, 0x20, 0x32, 0x1E, 0xA6, 0xA5, 0xFD, 0x1F, 0xC6, 0xCB, 0x32, 0x7D, 0x25, 0x66, 0x20,\n0xCB, 0xAB, 0x1A, 0x3E, 0xD6, 0x17, 0x97, 0x3E, 0xF5, 0x95, 0x7A, 0x39, 0x9B, 0xCE, 0xDF, 0xBB,\n0x6D, 0x34, 0x45, 0xFC, 0x61, 0xA6, 0x50, 0xC1, 0x87, 0xA9, 0x66, 0x8A, 0x99, 0x1E, 0x1F, 0x7F,\n0x57, 0xF9, 0xF8, 0x23, 0xA9, 0x8E, 0x0F, 0xD3, 0xA3, 0xAE, 0x5F, 0x4C, 0x7B, 0x5D, 0x0F, 0xA6,\n0x8A, 0xB1, 0xD9, 0xDA, 0x60, 0xDA, 0x90, 0xCA, 0x7A, 0xF5, 0xDE, 0xFC, 0xBD, 0x49, 0xC5, 0xBD,\n0xEF, 0xE2, 0x22, 0x4D, 0x7A, 0x71, 0xF2, 0xA4, 0x8F, 0x1E, 0x67, 0x9C, 0x54, 0x96, 0xC6, 0x47,\n0x05, 0x21, 0x1F, 0xBF, 0x76, 0x2D, 0x7F, 0xD8, 0x65, 0xFF, 0x03, 0xA5, 0xA4, 0xCF, 0x25, 0x5D,\n0x49, 0x1E, 0x72, 0x95, 0x3E, 0xB8, 0xB6, 0x61, 0x99, 0x88, 0x1E, 0x32, 0x99, 0xDA, 0x90, 0xBF,\n0x37, 0x9D, 0xFB, 0xDC, 0x1F, 0xAF, 0x76, 0xD8, 0x25, 0x6D, 0x6B, 0xF8, 0x30, 0xD5, 0xF0, 0xE1,\n0x84, 0xC8, 0x80, 0xB8, 0x2A, 0xF0, 0x70, 0x55, 0xF0, 0xE1, 0xAA, 0xE0, 0xA3, 0x8A, 0x10, 0xE3,\n0x23, 0x08, 0x11, 0xAA, 0xC9, 0x2E, 0xD5, 0xFC, 0xD5, 0x7B, 0x33, 0x43, 0xE4, 0x72, 0xBC, 0x98,\n0x7D, 0x5C, 0xA4, 0x78, 0x45, 0xBE, 0xB1, 0x5E, 0x2D, 0x8F, 0xEE, 0xB0, 0x54, 0xA7, 0xA6, 0xEB,\n0x5F, 0x06, 0xE4, 0xE8, 0x1F, 0x81, 0x88, 0x08, 0x6A, 0xC8, 0x00, 0x1F, 0x2D, 0xF6, 0x29, 0xE7,\n0xC3, 0x8E, 0xC9, 0x1D, 0xC6, 0x8A, 0xF1, 0x31, 0x7F, 0x35, 0x4F, 0x88, 0xCC, 0xD3, 0xD4, 0x5F,\n0x94, 0x4B, 0x93, 0xB4, 0xDD, 0x55, 0x11, 0xF2, 0x10, 0x52, 0xF9, 0x08, 0xA9, 0xAB, 0xAC, 0x3F,\n0x42, 0x3A, 0x1F, 0x21, 0x95, 0x8F, 0x90, 0xCA, 0x47, 0x48, 0xE7, 0xC3, 0x65, 0xD3, 0x7F, 0x7C,\n0xEC, 0x8D, 0x23, 0xBB, 0x4C, 0x5E, 0x66, 0x97, 0xA3, 0x84, 0x84, 0x7F, 0x98, 0xD6, 0xA2, 0x87,\n0x5C, 0xBC, 0x1F, 0x52, 0xD7, 0x36, 0x2E, 0x1D, 0x90, 0xEB, 0xD7, 0xAE, 0x75, 0xFB, 0xA8, 0xF2,\n0x90, 0x93, 0x24, 0x0F, 0x71, 0x3E, 0x5A, 0x42, 0x4A, 0x03, 0xE8, 0x7C, 0xCC, 0x7C, 0xC0, 0x1D,\n0x91, 0x45, 0xE3, 0xD7, 0xA9, 0xD4, 0xAC, 0x9C, 0xB4, 0x55, 0xF9, 0x08, 0xE9, 0x7C, 0xE8, 0x84,\n0xFC, 0x81, 0x44, 0x3E, 0x90, 0xCA, 0x47, 0x48, 0xE7, 0x43, 0x27, 0x84, 0xC1, 0x54, 0x46, 0xDE,\n0xF8, 0x68, 0x01, 0x71, 0x0F, 0x99, 0x0A, 0xFE, 0x61, 0xD2, 0x3D, 0xA4, 0x95, 0xEA, 0x1F, 0x48,\n0x05, 0xE4, 0x3B, 0x8D, 0x0F, 0x24, 0x2C, 0xF8, 0xE0, 0xC3, 0xBA, 0xC2, 0x6D, 0xE0, 0x02, 0xAD,\n0x2F, 0x07, 0x09, 0x31, 0xD9, 0x61, 0x72, 0x39, 0x8B, 0x21, 0x0F, 0x0F, 0xD9, 0x8D, 0xDE, 0xC9,\n0x9E, 0x77, 0xE8, 0x79, 0x54, 0xB6, 0x23, 0x55, 0x45, 0x88, 0x71, 0x01, 0x21, 0x20, 0x52, 0xE0,\n0x03, 0x89, 0x7C, 0x20, 0x91, 0x0F, 0x9D, 0x90, 0xC3, 0xC3, 0x03, 0xD2, 0xFC, 0x03, 0x35, 0x8B,\n0xD2, 0xD8, 0xDB, 0x9F, 0xC2, 0x47, 0x2A, 0xD3, 0xA2, 0x87, 0x58, 0x85, 0x8F, 0x44, 0x88, 0xDD,\n0x5A, 0xC7, 0xD7, 0xE6, 0x4C, 0x35, 0xD5, 0x40, 0x20, 0x64, 0x7C, 0xE5, 0xF4, 0x5D, 0x72, 0x10,\n0x81, 0x90, 0x9E, 0x04, 0xF7, 0x00, 0x90, 0x31, 0xA7, 0x34, 0x3E, 0xD6, 0xEB, 0x1C, 0x21, 0x5E,\n0x39, 0x47, 0xFF, 0x12, 0x3E, 0x52, 0x19, 0xF5, 0x10, 0x03, 0xA8, 0x2B, 0xCD, 0x3F, 0x74, 0x42,\n0x12, 0x1E, 0x48, 0xF3, 0x0F, 0x24, 0xF2, 0x81, 0x24, 0x3E, 0x90, 0xE0, 0x1F, 0x68, 0xFF, 0xB0,\n0x11, 0xFD, 0x03, 0x13, 0x69, 0xC6, 0xFC, 0x63, 0xFE, 0x1E, 0x65, 0x36, 0xF5, 0x40, 0x24, 0x5B,\n0xED, 0xC2, 0x4E, 0x2F, 0x63, 0x22, 0x40, 0x48, 0xB9, 0x74, 0xE6, 0xDA, 0x72, 0xCC, 0x45, 0x5A,\n0xFB, 0x80, 0x90, 0x31, 0x44, 0x6E, 0x7C, 0x89, 0x75, 0x33, 0xF6, 0xB9, 0x33, 0x61, 0x21, 0x25,\n0xFB, 0x40, 0x57, 0xC5, 0x12, 0xCB, 0x2B, 0x04, 0x13, 0x71, 0xA2, 0x93, 0x06, 0xD8, 0x8D, 0x03,\n0x42, 0x66, 0x8B, 0xA6, 0x60, 0xF4, 0xF0, 0xA1, 0x12, 0xC2, 0x94, 0x91, 0x08, 0xF9, 0xA5, 0x2B,\n0xB6, 0x7B, 0x8B, 0x7C, 0x20, 0x91, 0x0F, 0x24, 0xF1, 0x81, 0x34, 0xFF, 0x40, 0x2A, 0x1F, 0x78,\n0xC8, 0xE0, 0xC8, 0x27, 0xFF, 0x98, 0xCE, 0xBB, 0x84, 0x5C, 0x4E, 0x0A, 0xF1, 0xC7, 0x91, 0x0F,\n0x94, 0x08, 0x29, 0xFB, 0x47, 0x4F, 0x85, 0x89, 0xC9, 0xF2, 0x4A, 0x5E, 0x65, 0x99, 0x75, 0x38,\n0x20, 0x66, 0x24, 0x25, 0x42, 0x00, 0x44, 0xF4, 0x10, 0x04, 0x21, 0x4A, 0xF8, 0x81, 0x2E, 0x73,\n0x91, 0x7A, 0xF0, 0x31, 0x7B, 0xE5, 0xF1, 0x79, 0xCF, 0x43, 0x76, 0x03, 0xCD, 0x77, 0x77, 0xAD,\n0xA1, 0x91, 0xED, 0xDE, 0xD3, 0xF2, 0x0A, 0xA9, 0x7C, 0x10, 0x88, 0x08, 0x7C, 0x20, 0x91, 0x0F,\n0x24, 0xE1, 0x81, 0x34, 0xFF, 0x40, 0x2A, 0x1F, 0x10, 0xD2, 0xE4, 0xC3, 0xF5, 0xE6, 0xE4, 0x1F,\n0x94, 0x57, 0x78, 0x48, 0xB7, 0x4C, 0xD7, 0x76, 0xCD, 0x2F, 0x5A, 0x41, 0x88, 0xC6, 0x07, 0xBA,\n0x57, 0xC2, 0x0F, 0x54, 0x9C, 0xF8, 0x37, 0x38, 0xC8, 0xB7, 0x46, 0x81, 0xC2, 0x07, 0x80, 0x00,\n0x6B, 0xC9, 0x3F, 0x20, 0x44, 0xE3, 0x03, 0x0F, 0xB1, 0x2D, 0x8F, 0xCC, 0x1A, 0x0B, 0x3E, 0x3A,\n0x1E, 0x72, 0xDB, 0x24, 0x1C, 0xFC, 0xB2, 0x2C, 0x38, 0x37, 0xA9, 0xED, 0x72, 0x2A, 0x84, 0x1F,\n0x39, 0x1D, 0x04, 0x3C, 0xD0, 0xFE, 0x17, 0x8D, 0x0F, 0xA4, 0xF1, 0x81, 0x24, 0x3E, 0x90, 0xE6,\n0x1F, 0xA8, 0x94, 0xFE, 0xC8, 0x13, 0x12, 0x21, 0x47, 0xA7, 0x79, 0xFA, 0x03, 0x40, 0x28, 0x93,\n0x20, 0xA2, 0x53, 0xAD, 0xCC, 0xE0, 0x43, 0x21, 0xC4, 0xFE, 0x20, 0xA7, 0xA5, 0xE2, 0x1F, 0xA8,\n0xEC, 0x1F, 0x01, 0x48, 0xEA, 0x7D, 0x37, 0x18, 0x88, 0x0C, 0xE9, 0xFD, 0xD7, 0xEF, 0x25, 0xFF,\n0x20, 0x10, 0xC9, 0xA7, 0x3F, 0xF2, 0x32, 0x12, 0x58, 0x64, 0x51, 0x26, 0xE7, 0x03, 0xEE, 0x09,\n0x91, 0xDB, 0x86, 0xDB, 0x58, 0x2E, 0xFE, 0x50, 0x3D, 0xE4, 0x21, 0xAF, 0x83, 0xC8, 0x07, 0x1E,\n0xA2, 0xF0, 0x81, 0x34, 0x3E, 0x90, 0xC6, 0x07, 0x92, 0xFC, 0x03, 0x49, 0x7C, 0x6C, 0xDB, 0x73,\n0x22, 0x24, 0x82, 0x75, 0xEF, 0x1C, 0xDB, 0xCE, 0xF9, 0x98, 0x67, 0xCA, 0x34, 0x93, 0x10, 0xC1,\n0x3F, 0x72, 0x84, 0x08, 0xF6, 0x81, 0x04, 0xFF, 0x90, 0x10, 0x31, 0x3A, 0x8C, 0x8B, 0x00, 0xC4,\n0x3D, 0xC4, 0x58, 0x10, 0xEC, 0x03, 0x65, 0x61, 0x5D, 0x0E, 0x7E, 0xD9, 0x00, 0x42, 0xC1, 0x3F,\n0x72, 0x84, 0x64, 0xD2, 0x1F, 0xD9, 0x11, 0x8F, 0x94, 0xE1, 0x0E, 0x32, 0xD8, 0x85, 0xDF, 0x56,\n0x11, 0xF2, 0x30, 0x28, 0x91, 0x0F, 0x08, 0x51, 0xF8, 0x40, 0x22, 0x1F, 0x48, 0xE2, 0x03, 0x49,\n0x7C, 0xA0, 0xD1, 0xED, 0xAB, 0xD5, 0x0E, 0xD9, 0x63, 0x27, 0x41, 0x47, 0x37, 0xF9, 0x44, 0xA8,\n0xD8, 0x2F, 0x93, 0xF3, 0xC5, 0xB3, 0xA7, 0x3F, 0x0A, 0x84, 0x14, 0xFC, 0x43, 0x88, 0x43, 0xE0,\n0x43, 0x04, 0xC4, 0xD7, 0x57, 0xEE, 0x1C, 0xC7, 0x5D, 0x2C, 0x57, 0xD6, 0x43, 0x4A, 0x92, 0xFC,\n0x03, 0xF5, 0x11, 0x29, 0xF1, 0x41, 0x42, 0x64, 0x8A, 0x1D, 0xAF, 0x2F, 0x87, 0xF8, 0xB0, 0xFA,\n0x5E, 0xEB, 0x20, 0xE9, 0x9C, 0x8A, 0xF3, 0x31, 0xAC, 0xAD, 0xC4, 0x07, 0x52, 0xF9, 0x20, 0x54,\n0x17, 0xF0, 0x40, 0x22, 0x1E, 0x48, 0xE2, 0x03, 0x49, 0x78, 0xA0, 0x12, 0x1F, 0x80, 0x42, 0xD7,\n0x87, 0x9B, 0xCD, 0x44, 0xD2, 0x1F, 0xD9, 0x72, 0x4C, 0xAA, 0x53, 0xE1, 0x43, 0xF5, 0x10, 0xF0,\n0x50, 0xE2, 0x10, 0xF8, 0x50, 0x11, 0x09, 0x20, 0x88, 0x41, 0x6E, 0xAC, 0xE4, 0x22, 0xF5, 0xB2,\n0xCE, 0x2D, 0x04, 0x65, 0x4D, 0xA4, 0xEF, 0x1F, 0x6C, 0xEF, 0xE6, 0x09, 0x39, 0xF3, 0x0F, 0xE2,\n0x8F, 0x7E, 0x99, 0xBE, 0xE7, 0xDB, 0x29, 0x04, 0x88, 0x1D, 0xFF, 0xB0, 0x0E, 0x87, 0x90, 0x14,\n0x7F, 0x20, 0x89, 0x0F, 0xA4, 0xD9, 0x07, 0x12, 0xF9, 0x40, 0x12, 0x1F, 0x48, 0xE2, 0x03, 0x65,\n0xF8, 0x28, 0xA9, 0x69, 0x70, 0x0E, 0xD2, 0x83, 0xC3, 0xC5, 0x22, 0x4C, 0x0A, 0xE9, 0x8F, 0x61,\n0x42, 0xFA, 0xE9, 0xF3, 0xA2, 0x96, 0x85, 0xEC, 0x87, 0x46, 0xC8, 0x77, 0x0E, 0x85, 0x9D, 0x3C,\n0x0F, 0x12, 0x16, 0x62, 0xAF, 0xB4, 0x05, 0x16, 0x52, 0xDD, 0x83, 0x38, 0x44, 0x89, 0x3F, 0x48,\n0x88, 0x84, 0x89, 0xA4, 0x7A, 0x39, 0x61, 0xC3, 0x30, 0x5B, 0x12, 0x21, 0xB8, 0x87, 0x1D, 0x7B,\n0xF7, 0x39, 0xB4, 0x8A, 0xB7, 0x25, 0xFB, 0x40, 0x85, 0xF4, 0x60, 0x36, 0x52, 0xFF, 0x43, 0xE1,\n0x03, 0x89, 0x7C, 0x20, 0x9D, 0x0F, 0xFF, 0x4A, 0xAB, 0xF8, 0xD8, 0xF7, 0x09, 0x61, 0xEC, 0xE8,\n0x75, 0xD4, 0x0E, 0xFC, 0x4E, 0xE0, 0x03, 0x0F, 0x11, 0xF8, 0xC8, 0x26, 0x44, 0xCA, 0x93, 0x4D,\n0xF0, 0x8F, 0x62, 0x42, 0xC4, 0x58, 0xF0, 0x6A, 0x88, 0xB8, 0x83, 0x38, 0x2D, 0x51, 0xBA, 0x34,\n0x8D, 0x4A, 0x09, 0x3F, 0xF2, 0x49, 0x75, 0xD2, 0x83, 0x05, 0xD9, 0x10, 0xB6, 0xF6, 0x71, 0xC9,\n0xE3, 0x25, 0x25, 0x0F, 0x21, 0x87, 0xDB, 0x07, 0x63, 0xD5, 0x1E, 0x90, 0xE4, 0x1F, 0x48, 0xF2,\n0x0F, 0xA4, 0xF1, 0x81, 0x44, 0x3E, 0x90, 0xC4, 0x07, 0xD2, 0xF8, 0x40, 0x05, 0xFF, 0x58, 0xD1,\n0x41, 0x31, 0xF0, 0xA4, 0xCF, 0x8B, 0x65, 0x1A, 0x09, 0x11, 0xAB, 0xA4, 0x3F, 0x8A, 0x84, 0xF4,\n0xD2, 0xE7, 0x65, 0x49, 0xFE, 0x81, 0xB2, 0xFE, 0x61, 0x72, 0x07, 0x09, 0x5A, 0xFC, 0xAD, 0x8E,\n0x87, 0x48, 0x12, 0x1C, 0x04, 0x11, 0x6D, 0x91, 0x1E, 0x2C, 0xAA, 0x4D, 0xAA, 0xE3, 0x1F, 0x25,\n0x0F, 0x99, 0x87, 0x87, 0xA4, 0xB6, 0x53, 0x24, 0xF9, 0x07, 0xCA, 0xA4, 0xCF, 0x4B, 0x32, 0x2C,\n0xE0, 0x43, 0x50, 0x86, 0x0F, 0x99, 0x10, 0x80, 0x95, 0x08, 0x79, 0xA8, 0x03, 0x64, 0xA7, 0xA8,\n0x59, 0xF0, 0xDD, 0x1F, 0xE5, 0x2B, 0x45, 0x52, 0xBD, 0x9B, 0x3E, 0x2F, 0x2F, 0xB3, 0xE0, 0x43,\n0x90, 0x68, 0x1F, 0x08, 0x0B, 0x09, 0x10, 0xAC, 0x5A, 0x71, 0x07, 0xF1, 0xDE, 0x8D, 0x1D, 0xDC,\n0x43, 0x84, 0xE5, 0x55, 0xE6, 0xC9, 0x2C, 0x91, 0x0F, 0xA2, 0x2D, 0x81, 0x0F, 0x12, 0x22, 0x93,\n0x29, 0xFE, 0x51, 0x2A, 0xF1, 0x1D, 0x22, 0x5D, 0xFF, 0x58, 0x45, 0x43, 0x2C, 0xBB, 0x00, 0x44,\n0x12, 0x7C, 0x68, 0x82, 0x0F, 0x49, 0x22, 0x1F, 0x08, 0xFB, 0x90, 0x54, 0xC3, 0x07, 0xCB, 0xAC,\n0x87, 0xE7, 0x9C, 0x0B, 0x67, 0x23, 0x75, 0x2B, 0xA6, 0x5B, 0xFC, 0xA3, 0x54, 0x1C, 0x90, 0x29,\n0xE9, 0x0F, 0x81, 0x10, 0x95, 0x0F, 0x36, 0xB3, 0x8C, 0x0F, 0x51, 0xF8, 0x47, 0x8B, 0x88, 0xB5,\n0x08, 0xD2, 0xDD, 0x52, 0xEC, 0x65, 0xBC, 0x8F, 0x7F, 0x48, 0x8A, 0x5D, 0x03, 0x55, 0x57, 0x17,\n0xA4, 0x07, 0x55, 0x0F, 0x21, 0xFD, 0x51, 0x2E, 0x27, 0x42, 0xB2, 0xE1, 0xC7, 0x0A, 0x5C, 0xF0,\n0x90, 0x07, 0xD2, 0xE7, 0x82, 0x6A, 0xF8, 0x60, 0xBB, 0xF7, 0x0F, 0x55, 0xF0, 0x21, 0x0A, 0x3E,\n0x24, 0xC1, 0x87, 0xA6, 0xBC, 0x7F, 0x30, 0x8C, 0x3D, 0x50, 0x82, 0x8F, 0x11, 0x3C, 0x48, 0xAA,\n0xBB, 0x7F, 0xC0, 0x87, 0x40, 0x08, 0x7C, 0x08, 0xBA, 0xC7, 0x3F, 0x74, 0x0F, 0x71, 0x97, 0x48,\n0x47, 0x37, 0x8D, 0x88, 0x41, 0xC2, 0x51, 0xBC, 0x13, 0x71, 0x08, 0x12, 0x57, 0x59, 0xBA, 0x9C,\n0x0F, 0x5D, 0x9E, 0x1E, 0x7C, 0x35, 0x57, 0x11, 0x79, 0x05, 0x1F, 0x92, 0x9C, 0x0F, 0x5D, 0xF0,\n0xA1, 0x09, 0x3E, 0x24, 0xC1, 0x87, 0x28, 0xF8, 0xD0, 0x04, 0x1F, 0x32, 0x21, 0x30, 0x31, 0x40,\n0x0A, 0x12, 0xFD, 0x03, 0x0F, 0xC1, 0x3F, 0x54, 0x42, 0x6A, 0xB4, 0x24, 0xFE, 0x50, 0x14, 0xE1,\n0x79, 0x28, 0x7A, 0xED, 0x12, 0xCB, 0xEA, 0xB7, 0xD6, 0x22, 0x3D, 0x72, 0x5F, 0xA7, 0x2A, 0x3C,\n0x96, 0xA4, 0x3F, 0x34, 0xAD, 0x59, 0xD1, 0x4A, 0x88, 0x2C, 0x0A, 0x17, 0x32, 0xF7, 0xFA, 0xA1,\n0x4E, 0x84, 0x1F, 0xA2, 0x87, 0xD4, 0x09, 0x3C, 0x44, 0xF1, 0xD5, 0x48, 0x02, 0x0F, 0x49, 0xF9,\n0xF0, 0x7C, 0xF8, 0xBD, 0x66, 0x3E, 0x95, 0x2F, 0x95, 0xDD, 0xF5, 0xD8, 0xBE, 0x92, 0x08, 0x21,\n0x3C, 0x17, 0x75, 0x5F, 0x27, 0x77, 0x0E, 0xB7, 0x10, 0x3B, 0xB9, 0x5B, 0x84, 0x83, 0xDC, 0x18,\n0x1D, 0xA6, 0x53, 0x1C, 0x72, 0x5F, 0xA9, 0x4A, 0xAE, 0xE1, 0x43, 0xD2, 0x6C, 0xAE, 0x18, 0x08,\n0x0F, 0x66, 0xF9, 0xCA, 0xCA, 0xDB, 0x8A, 0xC6, 0xB5, 0xEC, 0x2F, 0x9E, 0x37, 0x75, 0x73, 0x66,\n0x5F, 0x77, 0xC7, 0x7E, 0x79, 0x40, 0xAA, 0x0C, 0xAD, 0x12, 0x90, 0xFD, 0x33, 0x03, 0x57, 0xC4,\n0x64, 0x1B, 0x47, 0x8B, 0xCF, 0xF5, 0x9B, 0x99, 0xAD, 0xB2, 0x2E, 0x90, 0x42, 0x48, 0x25, 0x20,\n0xF7, 0x95, 0x0A, 0x7F, 0x30, 0x79, 0xFC, 0x81, 0x83, 0x44, 0x16, 0xC4, 0xCF, 0xCE, 0x4A, 0x25,\n0x1F, 0x10, 0x22, 0xA9, 0x6E, 0x54, 0x26, 0xB3, 0x59, 0x8D, 0x81, 0xDC, 0x2E, 0xB0, 0x10, 0x61,\n0xF5, 0xBC, 0xDD, 0x6E, 0x09, 0x41, 0x04, 0xB1, 0x83, 0xA5, 0x2E, 0xB1, 0x2A, 0xF9, 0xA8, 0x24,\n0xA4, 0x7A, 0x89, 0x55, 0x45, 0xC8, 0xB3, 0x0D, 0x4F, 0x9F, 0x0B, 0x8E, 0xAB, 0x33, 0x48, 0x16,\n0x0B, 0x22, 0x10, 0xA1, 0xCC, 0x66, 0x75, 0x16, 0x42, 0x06, 0x44, 0xE3, 0xA3, 0x96, 0x10, 0xC7,\n0xC0, 0x8D, 0xC3, 0x23, 0x75, 0x1C, 0xE4, 0xDB, 0xF6, 0x6D, 0xE7, 0xE6, 0x5E, 0x26, 0x84, 0x54,\n0x88, 0xAA, 0x65, 0xC2, 0xA3, 0xC6, 0x42, 0xD6, 0xB3, 0xD9, 0x6C, 0x92, 0x08, 0x51, 0xA3, 0x74,\n0xBB, 0x46, 0x46, 0xC8, 0x36, 0x4B, 0x06, 0x82, 0x8F, 0x4D, 0x22, 0x44, 0x53, 0x7D, 0x0C, 0xF2,\n0xF8, 0xA2, 0x31, 0x08, 0x41, 0xBA, 0xCE, 0x47, 0x15, 0x21, 0x69, 0x6C, 0x20, 0x24, 0xAB, 0x55,\n0x27, 0x48, 0xBF, 0xAD, 0x22, 0x64, 0x96, 0x54, 0x43, 0x48, 0x9A, 0x3B, 0x3A, 0x22, 0xF7, 0x3A,\n0x21, 0x64, 0x0B, 0x7D, 0x29, 0x85, 0x61, 0xE0, 0x20, 0xA7, 0xD0, 0x3D, 0x82, 0xF9, 0x1A, 0x40,\n0xBC, 0xBC, 0xAE, 0xDA, 0x87, 0x13, 0x52, 0xC1, 0x87, 0x13, 0x32, 0x97, 0xF9, 0x30, 0xDD, 0xDE,\n0xAA, 0x61, 0x7A, 0x9A, 0x00, 0x1B, 0x83, 0x44, 0xF4, 0x10, 0x2D, 0x0B, 0x82, 0x62, 0xFE, 0x3E,\n0xBE, 0xD4, 0x2E, 0xD6, 0x63, 0xE8, 0x85, 0x76, 0xB1, 0x9E, 0xD3, 0xED, 0xE3, 0x79, 0x03, 0x21,\n0x25, 0x48, 0xEC, 0x53, 0xC6, 0x47, 0x92, 0x74, 0x33, 0x4B, 0x7C, 0x4C, 0x6A, 0x08, 0x59, 0xA7,\n0x69, 0xA3, 0x13, 0x42, 0xAE, 0x50, 0xE7, 0x23, 0x55, 0x63, 0xE0, 0x5B, 0x6B, 0x89, 0x10, 0x62,\n0x90, 0xC0, 0xC5, 0x9B, 0xC7, 0xF2, 0xAE, 0xFB, 0x65, 0x05, 0x1E, 0x62, 0x1C, 0xB2, 0x0C, 0x3E,\n0x54, 0x13, 0xB1, 0x21, 0x0C, 0x42, 0xA4, 0xF0, 0xC3, 0x76, 0x79, 0x17, 0x41, 0xC8, 0xF6, 0x78,\n0xE9, 0x68, 0x5C, 0x4A, 0xBA, 0xDB, 0x4D, 0x9A, 0x01, 0xAC, 0xB2, 0xF4, 0x4C, 0xE1, 0xA3, 0xC8,\n0x47, 0xE8, 0x65, 0xF2, 0x20, 0xFC, 0xFD, 0x5A, 0xFC, 0x71, 0xA8, 0xC9, 0x83, 0xEC, 0xCD, 0x3F,\n0x7C, 0x74, 0x36, 0xCF, 0x8C, 0xA5, 0x1D, 0x06, 0xD5, 0x1C, 0xF1, 0x68, 0x44, 0x42, 0xE6, 0xB3,\n0x69, 0x7B, 0x71, 0x2B, 0xFC, 0x23, 0x15, 0x4D, 0x4C, 0x4D, 0xD9, 0x3E, 0xC2, 0x1B, 0x22, 0x02,\n0x31, 0x16, 0xE2, 0x69, 0x5E, 0xEB, 0x7D, 0xEB, 0x0E, 0x12, 0x87, 0xF4, 0x29, 0xAF, 0x2A, 0x20,\n0xBA, 0x87, 0x04, 0x1D, 0x5E, 0x55, 0x3E, 0x62, 0x20, 0x05, 0xFB, 0x98, 0x1F, 0xE9, 0x70, 0xA3,\n0x6F, 0xB6, 0xC2, 0xA2, 0xC0, 0xAE, 0xBD, 0x4F, 0x01, 0x43, 0x64, 0x9C, 0x90, 0xE7, 0x3D, 0x3A,\n0x68, 0x7C, 0x20, 0x0D, 0x0F, 0xA4, 0xF1, 0x81, 0x24, 0xFF, 0x40, 0xA2, 0x7F, 0x3C, 0x5B, 0xC1,\n0x43, 0x18, 0x40, 0x1A, 0x56, 0x6C, 0x7C, 0xC4, 0xD8, 0x37, 0xE3, 0x84, 0x58, 0x0D, 0x3A, 0xA6,\n0x12, 0x21, 0x6B, 0x00, 0xB9, 0xBA, 0x90, 0xF9, 0x88, 0x22, 0xDB, 0x47, 0x10, 0xF2, 0x6D, 0xD8,\n0x45, 0xA2, 0xC4, 0x01, 0xF1, 0x3D, 0xAC, 0x6F, 0xEF, 0xBF, 0xBB, 0xF9, 0xEE, 0xE6, 0x3E, 0x0C,\n0xC4, 0x0F, 0x2A, 0x1E, 0xBA, 0x87, 0x5C, 0xAD, 0x71, 0x10, 0xD3, 0x5A, 0xE1, 0xC3, 0xF1, 0xF0,\n0xCE, 0xFC, 0xD5, 0x18, 0x1F, 0xB6, 0x08, 0xB6, 0xB6, 0x68, 0x6E, 0xD3, 0x79, 0x37, 0xB6, 0x43,\n0x19, 0x70, 0xA4, 0xA6, 0x10, 0x22, 0x3E, 0xAB, 0x08, 0x1F, 0xFF, 0xE9, 0xC3, 0x8A, 0x1A, 0x1E,\n0x68, 0xD4, 0x3F, 0x12, 0x1E, 0x0C, 0xD0, 0x68, 0x0C, 0x92, 0x86, 0x3E, 0xC6, 0x3E, 0x81, 0x32,\n0x1D, 0x8D, 0x3F, 0xB8, 0xB8, 0x0A, 0x21, 0xDC, 0x58, 0xED, 0xA0, 0xF1, 0x41, 0x91, 0xF8, 0xA0,\n0x9A, 0x71, 0xF8, 0x6E, 0x96, 0x63, 0x12, 0x89, 0xC2, 0x88, 0xDE, 0xF1, 0x99, 0x40, 0x64, 0x29,\n0xF0, 0x21, 0x12, 0xB2, 0x84, 0x0F, 0xD1, 0x43, 0x2E, 0x63, 0x04, 0xA7, 0xE9, 0x38, 0x1D, 0x59,\n0x65, 0xBD, 0x37, 0x4D, 0x6C, 0xC4, 0x3D, 0xCC, 0x4F, 0xCD, 0xC8, 0xAA, 0xD9, 0xEE, 0x8C, 0xCC,\n0x01, 0x23, 0x44, 0xE3, 0x03, 0x09, 0x7C, 0xBC, 0xFC, 0xE3, 0xEE, 0x3A, 0x21, 0x87, 0x2A, 0x42,\n0x82, 0x0F, 0x5A, 0x39, 0x94, 0x8B, 0xF5, 0x55, 0x8C, 0x7D, 0x33, 0x1A, 0xAA, 0xBF, 0x17, 0x78,\n0x58, 0x13, 0x3C, 0x64, 0xDD, 0xF2, 0xC1, 0x2A, 0x6B, 0x59, 0xC3, 0x87, 0xF8, 0x34, 0x2F, 0x84,\n0x04, 0x0C, 0xED, 0xB3, 0x58, 0xCE, 0x4B, 0xEC, 0x5F, 0xF1, 0x19, 0xEF, 0x6B, 0x7C, 0x40, 0x48,\n0x19, 0x90, 0xE0, 0x9F, 0x5A, 0xF4, 0x90, 0x49, 0x3B, 0x82, 0xAD, 0x26, 0xA3, 0x7C, 0x84, 0x81,\n0xF8, 0x91, 0xCD, 0xAC, 0x5C, 0x22, 0x04, 0xFF, 0x00, 0x11, 0x95, 0x0F, 0x42, 0xF5, 0x22, 0x1E,\n0xFF, 0xF3, 0x6F, 0x98, 0x3A, 0x48, 0x7C, 0xD0, 0xF2, 0x3E, 0x4C, 0x78, 0x6E, 0xD5, 0x07, 0xDE,\n0xF1, 0x18, 0x21, 0x64, 0x06, 0x1E, 0xD1, 0x9B, 0xAC, 0x15, 0xFF, 0xA0, 0x82, 0x48, 0x81, 0x0F,\n0x8A, 0x82, 0x87, 0x35, 0xEA, 0x8D, 0xF3, 0x60, 0xCD, 0x9F, 0xE6, 0x4D, 0x3D, 0xA3, 0x05, 0x3C,\n0x90, 0xC0, 0x87, 0x44, 0xC8, 0x92, 0xF8, 0x43, 0x34, 0x91, 0x29, 0xA3, 0x68, 0x25, 0x5E, 0x95,\n0x1E, 0xC2, 0x8A, 0x08, 0xF1, 0x36, 0xFC, 0x03, 0x42, 0x06, 0xB7, 0xAF, 0xA2, 0x45, 0x0F, 0x42,\n0xD4, 0xEF, 0x4A, 0x97, 0xF8, 0x40, 0x22, 0x1F, 0x48, 0xE3, 0x03, 0x15, 0xD2, 0x83, 0x39, 0x29,\n0x7C, 0xD0, 0x36, 0x67, 0x0F, 0xB5, 0xC1, 0x47, 0xE3, 0x51, 0x1F, 0x16, 0x62, 0x98, 0x40, 0x48,\n0xD6, 0x3F, 0xFA, 0x88, 0x94, 0x12, 0x22, 0xEB, 0xFE, 0xB4, 0xB1, 0x42, 0x42, 0xA4, 0xC0, 0x87,\n0x46, 0x48, 0x4C, 0x7B, 0xF0, 0x08, 0x0F, 0x49, 0x95, 0x47, 0x4D, 0x4C, 0x9D, 0x8F, 0xE1, 0x21,\n0x02, 0x1F, 0x92, 0x87, 0x5C, 0xE1, 0x1F, 0xD4, 0x41, 0x0F, 0x59, 0x9F, 0x46, 0x70, 0x6E, 0x8D,\n0x58, 0x7D, 0x38, 0x3D, 0xE8, 0xCE, 0x61, 0x05, 0x03, 0x71, 0x42, 0x3A, 0x8F, 0xF5, 0xA2, 0xF3,\n0x09, 0x50, 0x4C, 0x88, 0xEC, 0x73, 0x3A, 0xEC, 0x25, 0x3E, 0x90, 0xC8, 0x07, 0xD2, 0xF8, 0x40,\n0x82, 0x7F, 0x28, 0x84, 0x6C, 0xE0, 0xA3, 0x10, 0x87, 0x30, 0xB4, 0x3E, 0xEC, 0x7E, 0x01, 0xAC,\n0x36, 0xDE, 0x2D, 0xAD, 0xB2, 0xCC, 0x2F, 0x1C, 0x09, 0xBF, 0xB8, 0x6D, 0xCF, 0x08, 0x91, 0xED,\n0xA3, 0xEC, 0x21, 0xCC, 0x46, 0x09, 0x90, 0x08, 0xB9, 0x03, 0x00, 0xBA, 0xDF, 0x9D, 0x96, 0x58,\n0x37, 0xD6, 0xB5, 0x06, 0x1E, 0x9C, 0x93, 0x0A, 0x78, 0xC8, 0x88, 0x84, 0x7D, 0x08, 0x1E, 0x02,\n0x1F, 0x31, 0x6C, 0xA9, 0xCE, 0xAD, 0xB5, 0x56, 0x92, 0xDF, 0x13, 0x09, 0xEB, 0x68, 0xFC, 0xEC,\n0xA4, 0x34, 0xB1, 0xA3, 0x52, 0xF4, 0x8F, 0x7E, 0xDB, 0x6E, 0x24, 0x3E, 0x90, 0xC6, 0x07, 0xD2,\n0xF8, 0x40, 0x1A, 0x1E, 0x48, 0xE2, 0x03, 0xD5, 0xF0, 0x91, 0x4D, 0x19, 0x92, 0xFE, 0x68, 0x02,\n0x12, 0xEF, 0xBA, 0x85, 0x0F, 0x11, 0x32, 0x0D, 0xFF, 0x88, 0x8B, 0xCB, 0xCD, 0x6F, 0x3D, 0xF4,\n0x7C, 0xC9, 0x00, 0x22, 0x4B, 0xC5, 0x3E, 0x28, 0x43, 0x7C, 0x64, 0x1C, 0x84, 0x6F, 0x9B, 0x8A,\n0x6D, 0x5E, 0xE7, 0xA0, 0x8B, 0x10, 0xA8, 0x68, 0x80, 0x50, 0x34, 0x3E, 0xA8, 0xEB, 0x2C, 0x1F,\n0x2E, 0x86, 0x8F, 0x17, 0x39, 0x40, 0xD2, 0xD2, 0xD7, 0x2F, 0x4C, 0xE0, 0xE1, 0x6A, 0xAC, 0x97,\n0xD9, 0xCC, 0x62, 0x7B, 0x57, 0xF6, 0x90, 0xFD, 0xB0, 0x34, 0x3E, 0x90, 0xC6, 0x07, 0xD2, 0xF8,\n0x40, 0x12, 0x1F, 0x48, 0xE1, 0x83, 0x96, 0x23, 0x24, 0xD2, 0xE7, 0x3E, 0xFE, 0x6E, 0x21, 0xD1,\n0xF5, 0xF6, 0x5E, 0xDE, 0x3F, 0x60, 0x23, 0x6E, 0x7F, 0x71, 0x75, 0xD7, 0x82, 0x7F, 0x50, 0xB3,\n0xA1, 0x7A, 0x61, 0x5A, 0x0E, 0xFB, 0xC7, 0xF9, 0xB4, 0x67, 0x95, 0x65, 0x80, 0x38, 0x2A, 0xF6,\n0x1E, 0x95, 0xAE, 0x4B, 0xE3, 0x83, 0x52, 0x48, 0x7F, 0x68, 0x1E, 0x32, 0x69, 0xDD, 0x02, 0xFF,\n0x0D, 0x33, 0x4E, 0x83, 0x9B, 0xF7, 0x8F, 0x45, 0xAC, 0x83, 0xFD, 0xEC, 0x16, 0x32, 0x98, 0x54,\n0xDF, 0x02, 0x48, 0xA6, 0x3D, 0xEC, 0xC7, 0xF9, 0x40, 0x07, 0x8D, 0x0F, 0xA4, 0xE1, 0x81, 0x34,\n0x3E, 0x90, 0xC4, 0x07, 0xCA, 0x7C, 0x97, 0x54, 0x96, 0x8F, 0x6C, 0x42, 0x84, 0xC7, 0x4B, 0x9A,\n0x85, 0x9F, 0xC3, 0xC6, 0x7D, 0xF8, 0xF3, 0x09, 0x91, 0xD3, 0xF6, 0x2E, 0x17, 0x77, 0x4A, 0x9B,\n0xE4, 0xD2, 0xE7, 0xF9, 0xEA, 0x65, 0x99, 0xF7, 0x0F, 0x1D, 0x91, 0x76, 0xBE, 0x73, 0xA6, 0x5A,\n0x6B, 0x13, 0x85, 0xFC, 0x19, 0x15, 0xB7, 0x01, 0x11, 0x8D, 0x8F, 0x73, 0x40, 0x5E, 0xCB, 0xD9,\n0x47, 0x2E, 0x21, 0xC2, 0xF6, 0x55, 0xDE, 0x41, 0xF2, 0x29, 0xC3, 0xD3, 0xF6, 0x7B, 0xBB, 0xAC,\n0x4A, 0x2D, 0x42, 0x75, 0x12, 0x22, 0x1D, 0xFF, 0x18, 0x06, 0x04, 0x42, 0xE0, 0xA3, 0x28, 0x8D,\n0x0F, 0x24, 0x02, 0x82, 0x32, 0x7C, 0xE8, 0x84, 0x3C, 0xEE, 0xC7, 0x94, 0x4B, 0x9F, 0xEB, 0x84,\n0xC4, 0x90, 0x73, 0x6F, 0x0A, 0x43, 0x89, 0x78, 0xBD, 0x4F, 0x08, 0xFB, 0x57, 0x1C, 0x9D, 0x95,\n0x78, 0x35, 0xD1, 0xFC, 0x83, 0x40, 0x44, 0xE1, 0x83, 0x92, 0xE1, 0xA3, 0x84, 0xC8, 0xCD, 0xD1,\n0x41, 0xCC, 0x40, 0x06, 0xF8, 0xC0, 0x48, 0x72, 0x78, 0xE8, 0x88, 0x90, 0xFE, 0xC8, 0xD6, 0x7C,\n0xFA, 0x1C, 0xEB, 0x98, 0xC6, 0x2B, 0x62, 0x92, 0x57, 0x9D, 0xF0, 0x3C, 0x1E, 0x2F, 0x69, 0xBC,\n0x9D, 0x1C, 0x3F, 0x75, 0x4D, 0x67, 0x71, 0x48, 0x01, 0x0E, 0x6F, 0xA4, 0x0C, 0xC1, 0xA3, 0x2C,\n0x81, 0x8F, 0xFF, 0xF2, 0xD7, 0x1F, 0x74, 0xF9, 0x38, 0x28, 0x84, 0xC0, 0x07, 0x78, 0x0C, 0xB5,\n0xB3, 0xF4, 0xB9, 0x83, 0xE1, 0x36, 0x12, 0xD1, 0x5F, 0x54, 0x3F, 0x18, 0x21, 0x73, 0x4A, 0x18,\n0x05, 0xDE, 0x11, 0x68, 0xF0, 0xDE, 0xA4, 0x10, 0x7E, 0x50, 0x49, 0xAA, 0x6B, 0x7C, 0x50, 0xF2,\n0xE9, 0x0F, 0xCE, 0x3D, 0x13, 0x71, 0x40, 0xAC, 0x53, 0xC4, 0xC3, 0x9B, 0xC8, 0x07, 0x84, 0xBC,\n0xC6, 0xF6, 0x6E, 0xD9, 0x3F, 0x48, 0x88, 0x90, 0x1E, 0x04, 0x87, 0xD4, 0x42, 0x81, 0x4A, 0x24,\n0x44, 0xBA, 0x7C, 0x44, 0xF8, 0x61, 0xF2, 0x3E, 0x9C, 0x34, 0x8E, 0xCE, 0x0E, 0x13, 0x19, 0x9D,\n0x00, 0xC4, 0x21, 0x0A, 0x1F, 0xFD, 0x84, 0xC8, 0xE3, 0xFF, 0xE0, 0x17, 0xE8, 0x68, 0xCB, 0x2B,\n0xD4, 0xDF, 0xDE, 0xD5, 0x09, 0x69, 0x30, 0x6C, 0x32, 0x85, 0xAE, 0xE8, 0xC7, 0x76, 0x2F, 0xDB,\n0xBB, 0xD3, 0x8C, 0x83, 0xC0, 0x4A, 0x9F, 0x90, 0x11, 0x40, 0xAC, 0xC4, 0x14, 0x83, 0x0F, 0x8D,\n0x10, 0xF0, 0x28, 0x39, 0x48, 0x6C, 0xF3, 0x16, 0xDD, 0x83, 0xFF, 0x06, 0x3E, 0x34, 0x42, 0x78,\n0xBA, 0x5D, 0xA9, 0x7C, 0xF7, 0xC7, 0xC9, 0x76, 0x23, 0x06, 0x61, 0x1B, 0x8B, 0xC8, 0x7D, 0x32,\n0xED, 0x3E, 0xBD, 0xBB, 0x20, 0x49, 0x15, 0xA4, 0x78, 0xF7, 0xB4, 0xA5, 0xB5, 0xD8, 0x11, 0x7E,\n0x14, 0x2E, 0x3E, 0xA1, 0xFA, 0x7E, 0x0F, 0x1F, 0x1A, 0x21, 0xE0, 0xA1, 0x13, 0xF2, 0xF2, 0xBF,\n0x82, 0xED, 0x50, 0x47, 0x88, 0xFB, 0xC7, 0xE8, 0xF0, 0x9C, 0xE2, 0x8F, 0xC0, 0x81, 0x55, 0x56,\n0xA6, 0x9E, 0xB6, 0x7B, 0xAD, 0x4E, 0x58, 0x53, 0xE1, 0x19, 0xDE, 0xE1, 0x70, 0x22, 0x64, 0x5D,\n0x00, 0x24, 0x9F, 0x54, 0x97, 0xA6, 0x66, 0x0F, 0x90, 0x22, 0x1E, 0xF1, 0x1B, 0xA6, 0x8A, 0x7C,\n0x98, 0xE2, 0x04, 0x1F, 0x15, 0x84, 0x2C, 0xF3, 0xE9, 0x8F, 0xA1, 0x84, 0xC8, 0xD5, 0x05, 0xBB,\n0x1B, 0x7E, 0xA0, 0xB1, 0xDE, 0x4A, 0x9A, 0x90, 0x1E, 0x74, 0x32, 0x3C, 0x42, 0x27, 0x9D, 0x6B,\n0x35, 0x48, 0x69, 0xFF, 0x20, 0x7E, 0xAC, 0x22, 0x8F, 0x97, 0x94, 0x4D, 0xC4, 0xD0, 0xD0, 0xF9,\n0x38, 0xB4, 0x84, 0x3C, 0xAA, 0x82, 0x8F, 0x3A, 0x42, 0x5E, 0xEE, 0x97, 0x78, 0xB2, 0x7D, 0x25,\n0xB4, 0x7E, 0xFA, 0x7C, 0x11, 0xEB, 0x29, 0x78, 0xA1, 0x4F, 0x42, 0xA4, 0x8F, 0x82, 0x7B, 0x06,\n0xB0, 0x70, 0x58, 0x0B, 0xF6, 0x91, 0x49, 0x88, 0x88, 0x53, 0xB3, 0xE7, 0x1F, 0xA5, 0x15, 0x56,\n0x7A, 0x7D, 0xFD, 0xDA, 0x8D, 0x75, 0xEC, 0xE3, 0x5F, 0x66, 0x8F, 0x5F, 0xDE, 0x5B, 0xF5, 0x0F,\n0x24, 0x40, 0x96, 0x4B, 0x6B, 0xA2, 0xEE, 0x97, 0xAF, 0xBD, 0xFD, 0xFE, 0xD2, 0xE2, 0xF3, 0x2B,\n0x45, 0x69, 0x3D, 0xC9, 0xF6, 0x2E, 0xBB, 0x1B, 0x20, 0xC2, 0xCB, 0xE8, 0x18, 0x1E, 0x53, 0xB2,\n0xB7, 0x8B, 0x26, 0x56, 0xBD, 0xED, 0x35, 0xC2, 0x41, 0x3C, 0x37, 0x72, 0xEB, 0x84, 0xD8, 0xC5,\n0x95, 0xE4, 0x09, 0x91, 0xE7, 0x7C, 0xFA, 0xFC, 0x70, 0x56, 0xD2, 0x21, 0x4D, 0x47, 0x75, 0xF2,\n0x5A, 0x31, 0x44, 0x1E, 0x8F, 0x7C, 0xFC, 0xD5, 0xAB, 0x25, 0x42, 0x1E, 0x75, 0x04, 0x8F, 0x7C,\n0x18, 0xE1, 0x9A, 0xF8, 0xEE, 0x0F, 0x91, 0x10, 0x53, 0xCC, 0x7F, 0xD6, 0xB7, 0xB8, 0x06, 0xFD,\n0x63, 0x2F, 0xF9, 0x07, 0x57, 0x92, 0xE5, 0x15, 0x1D, 0x0E, 0x56, 0x9D, 0x90, 0x2B, 0x51, 0x17,\n0xB6, 0x98, 0x4F, 0x0F, 0x92, 0xFB, 0x0F, 0xC2, 0x95, 0x9A, 0x4D, 0xE2, 0x48, 0x7F, 0x1C, 0x49,\n0x89, 0x03, 0x67, 0xAA, 0xFF, 0x96, 0xDB, 0x37, 0x0B, 0xBA, 0xF1, 0x1A, 0x72, 0xFF, 0x90, 0x2A,\n0x26, 0x72, 0x65, 0x94, 0x0B, 0x25, 0x45, 0x2A, 0x6B, 0x5F, 0x5F, 0xA9, 0x35, 0x3D, 0xBB, 0xD8,\n0x86, 0xE3, 0x5E, 0x4D, 0xB8, 0x46, 0xCB, 0x09, 0x17, 0x2F, 0x3D, 0xFF, 0xBE, 0xDD, 0xA8, 0x78,\n0x58, 0x3D, 0xFA, 0x47, 0x3A, 0x70, 0x2C, 0x08, 0xFF, 0xD0, 0x84, 0x7F, 0x68, 0xC2, 0x3E, 0x54,\n0x42, 0xC0, 0x5B, 0x90, 0xFB, 0xC7, 0x76, 0x23, 0x56, 0x7F, 0xBA, 0xC4, 0x86, 0x5E, 0x53, 0xF2,\n0x10, 0xBB, 0x62, 0xE2, 0xA5, 0xB5, 0x43, 0x22, 0xC4, 0x26, 0x84, 0x5C, 0x4C, 0xB1, 0xB8, 0x91,\n0x9A, 0x89, 0x09, 0xDE, 0x3D, 0x72, 0x30, 0x45, 0xA2, 0xF0, 0xC7, 0x0F, 0xAF, 0x53, 0xB9, 0xFE,\n0x22, 0x77, 0xBC, 0x4E, 0x35, 0xCA, 0x47, 0x1F, 0x5E, 0xDF, 0xBC, 0xF1, 0xC6, 0xC7, 0x7A, 0xF9,\n0xF8, 0x8D, 0xC9, 0x07, 0x35, 0x4A, 0x43, 0x33, 0x99, 0x48, 0xD5, 0x0F, 0xB7, 0x4D, 0xB3, 0x08,\n0x14, 0x22, 0x00, 0x89, 0x23, 0x06, 0xD2, 0xB4, 0x2E, 0x6F, 0xD7, 0x73, 0x65, 0xCF, 0xE7, 0x6D,\n0x1E, 0x54, 0x6D, 0x0E, 0x7F, 0xD6, 0xE8, 0x97, 0x3F, 0x9F, 0x7E, 0xA8, 0xD2, 0xF7, 0x3F, 0x55,\n0xEA, 0x87, 0x3A, 0x3D, 0xD9, 0x97, 0x54, 0xA3, 0xC3, 0x26, 0x06, 0x47, 0x39, 0xEE, 0x0F, 0xDB,\n0x5B, 0xD6, 0x53, 0x3E, 0xDC, 0x7E, 0x8C, 0xB7, 0xD2, 0x2B, 0x17, 0xB7, 0xA9, 0xD9, 0x44, 0xBD,\n0xB2, 0x8E, 0xC8, 0x07, 0x55, 0x9A, 0xA4, 0xB9, 0x26, 0x17, 0x9B, 0xC3, 0xD7, 0x1F, 0xDA, 0x84,\n0x36, 0xF9, 0xC4, 0x6E, 0x4F, 0xD7, 0x3E, 0xE3, 0x4F, 0x8A, 0x37, 0x7E, 0x34, 0x40, 0xBE, 0xB0,\n0xF2, 0x51, 0xF6, 0x48, 0xF1, 0x77, 0xAE, 0x3F, 0xAE, 0x91, 0x7D, 0x25, 0x1F, 0x54, 0xE9, 0xD3,\n0x44, 0x88, 0x7A, 0x9F, 0xB1, 0xE3, 0xED, 0x5D, 0xD3, 0x34, 0x77, 0x5A, 0x59, 0x34, 0xCD, 0x76,\n0x93, 0x16, 0x43, 0x0F, 0x5A, 0xB1, 0xE5, 0xD5, 0x9F, 0x7F, 0x3E, 0xFD, 0xF9, 0x98, 0x99, 0x4A,\n0x8F, 0x67, 0x25, 0xE9, 0xE9, 0xE9, 0x87, 0xEF, 0xD3, 0xBC, 0x97, 0x8A, 0xD5, 0x6A, 0x40, 0xBE,\n0xFF, 0xDE, 0xB9, 0x92, 0x9A, 0x1D, 0x9F, 0x9E, 0x2A, 0xE8, 0xB0, 0xCF, 0x9A, 0x89, 0x1C, 0x52,\n0x39, 0xEC, 0xFD, 0x34, 0x72, 0xDC, 0x6C, 0x6D, 0x44, 0xEF, 0xF4, 0x72, 0xCB, 0x95, 0x55, 0xEA,\n0xCC, 0xEE, 0xAC, 0x2A, 0x24, 0xF6, 0xC1, 0x4F, 0xDF, 0x88, 0x3B, 0xB2, 0xD8, 0xAE, 0xAF, 0xD3,\n0xFD, 0xFE, 0xFA, 0x8B, 0x74, 0xCF, 0xFF, 0xD0, 0xCE, 0x7E, 0xFB, 0x77, 0x27, 0xB0, 0xAE, 0x4D,\n0x7C, 0x3F, 0x1C, 0xFF, 0xF4, 0xDA, 0x00, 0x39, 0x1A, 0x48, 0xE6, 0xD8, 0x51, 0xBC, 0x53, 0x43,\n0xAA, 0xC9, 0x3C, 0x44, 0x76, 0x91, 0x49, 0xD2, 0x4C, 0x5E, 0x61, 0xCD, 0x6F, 0xE7, 0xF3, 0xDB,\n0x46, 0xD4, 0x62, 0xB1, 0xDA, 0x6E, 0x77, 0x29, 0x07, 0x78, 0x90, 0xCA, 0xC3, 0x3E, 0x45, 0xB8,\n0x35, 0x53, 0xCC, 0xE4, 0xD3, 0x53, 0xD3, 0xF7, 0x49, 0xC3, 0x2C, 0x44, 0x8B, 0xA3, 0x77, 0x92,\n0x6A, 0x0C, 0xE4, 0xA9, 0x8A, 0x10, 0x5B, 0x22, 0xFA, 0xF3, 0xEF, 0xD6, 0x4C, 0xD1, 0x3B, 0xF4,\n0xFB, 0x71, 0xD8, 0xEF, 0x37, 0x36, 0x9A, 0x2B, 0x0B, 0xEE, 0x34, 0xDD, 0x2D, 0xE6, 0xB3, 0xDB,\n0xF9, 0x6C, 0x52, 0x81, 0xC7, 0xC4, 0x9A, 0x24, 0xFF, 0xD8, 0x1B, 0x26, 0xDD, 0x43, 0x6E, 0x12,\n0x20, 0xB1, 0x2A, 0xF2, 0xDA, 0x2D, 0x61, 0x24, 0xDE, 0x0F, 0x40, 0x5C, 0xED, 0x1F, 0x22, 0xB7,\n0x1D, 0xAA, 0xC1, 0x71, 0x63, 0x2D, 0x39, 0x94, 0x54, 0x42, 0x93, 0x1A, 0x3C, 0x3E, 0x50, 0xC7,\n0xF0, 0xC8, 0x87, 0x1D, 0x34, 0x3C, 0xEE, 0x9A, 0xD5, 0xD6, 0x2E, 0xE9, 0x6E, 0x73, 0x48, 0x84,\n0x8C, 0xD7, 0x87, 0x34, 0x61, 0xAC, 0x55, 0xF0, 0xE1, 0xD2, 0xF9, 0x70, 0x05, 0x02, 0xDF, 0x47,\n0xA1, 0x13, 0xED, 0x7B, 0x70, 0x01, 0x10, 0xC5, 0x40, 0xE2, 0xCB, 0x91, 0xFD, 0xC3, 0x83, 0xA8,\n0x3D, 0x77, 0x0F, 0xB0, 0xE8, 0xF7, 0x13, 0x1F, 0x87, 0x8D, 0x6D, 0x77, 0x38, 0x21, 0x92, 0x7D,\n0x34, 0x8B, 0xB9, 0x6B, 0xA6, 0xE2, 0x61, 0x92, 0xEF, 0xAB, 0x81, 0x87, 0x4E, 0x88, 0xF9, 0x87,\n0xCF, 0xE4, 0xE0, 0x83, 0xC9, 0x9F, 0x2F, 0x09, 0x90, 0x98, 0xFF, 0xED, 0xE7, 0xA2, 0x02, 0x58,\n0x54, 0xFB, 0x8B, 0xAD, 0xEA, 0x1E, 0xD2, 0x4A, 0xFB, 0xA7, 0x26, 0x36, 0x3E, 0x0D, 0x0B, 0x11,\n0xF9, 0x70, 0xDD, 0x2A, 0x8B, 0xAC, 0xC5, 0xC2, 0x2E, 0x68, 0xB2, 0x90, 0xD5, 0xB6, 0x4C, 0x48,\n0x4C, 0x8F, 0xCD, 0xBE, 0xDD, 0x22, 0x4D, 0x0B, 0x2A, 0x41, 0x4F, 0x76, 0xC7, 0xD6, 0x3D, 0xE4,\n0x29, 0xF8, 0x30, 0x42, 0x8A, 0x02, 0x12, 0xFF, 0xB0, 0xEE, 0x21, 0x4F, 0xAD, 0xD4, 0x00, 0x2A,\n0xE1, 0xE1, 0x84, 0xC0, 0x42, 0x9C, 0x7A, 0x7D, 0xF7, 0x8F, 0x34, 0x8E, 0xAB, 0x20, 0x44, 0xD0,\n0xED, 0x3C, 0xA4, 0xF1, 0x61, 0x80, 0xD8, 0xAA, 0xC9, 0x8E, 0x33, 0x69, 0xDA, 0x4C, 0xDE, 0x70,\n0xE9, 0x84, 0xA4, 0x69, 0x6C, 0x0D, 0x2C, 0xBA, 0xEE, 0x81, 0x4D, 0xF8, 0xD9, 0x62, 0x90, 0xCF,\n0xE3, 0x6D, 0x3E, 0x92, 0x35, 0x1E, 0xFE, 0x5E, 0xC9, 0x43, 0x90, 0xE4, 0x21, 0x93, 0x59, 0xFA,\n0xB7, 0xDA, 0x51, 0x5A, 0x64, 0xC1, 0x87, 0xB4, 0xCA, 0x5A, 0x34, 0xE9, 0x6A, 0xA6, 0x66, 0xE5,\n0xB4, 0xCA, 0xCA, 0x57, 0x3F, 0xF8, 0x74, 0xF1, 0x92, 0x02, 0x11, 0x81, 0x0F, 0xA4, 0x10, 0xF2,\n0x3D, 0x0A, 0x0B, 0xF1, 0x13, 0x3D, 0x2A, 0xEB, 0x2B, 0x08, 0x29, 0xFA, 0x54, 0x42, 0xF4, 0x09,\n0x69, 0xFE, 0x11, 0x7C, 0xD8, 0x5D, 0xA1, 0xCB, 0x02, 0x5D, 0x50, 0xD9, 0x1F, 0x12, 0x1F, 0x49,\n0x76, 0x14, 0x3C, 0x04, 0x3E, 0x44, 0x0F, 0x31, 0xD9, 0xC1, 0x20, 0xD1, 0x5C, 0xE4, 0x0D, 0x24,\n0xAD, 0xAF, 0x7C, 0x12, 0xFB, 0x34, 0x66, 0xC2, 0x9F, 0x15, 0x2C, 0xE2, 0x23, 0x73, 0x90, 0x77,\n0x2D, 0x18, 0x19, 0x2E, 0xE0, 0x61, 0x25, 0x08, 0x91, 0xF8, 0x40, 0x09, 0xF4, 0x31, 0xF9, 0xB8,\n0x04, 0x22, 0xE3, 0xA3, 0x38, 0x77, 0x41, 0x48, 0xD1, 0x3E, 0x9C, 0x8F, 0x40, 0x64, 0x67, 0x84,\n0x70, 0xA3, 0xEC, 0x7B, 0x87, 0xC3, 0x93, 0xF8, 0x70, 0x36, 0xBC, 0x0A, 0x71, 0xC8, 0xEF, 0x4F,\n0xC8, 0x4D, 0xA4, 0x58, 0xE0, 0x03, 0x0F, 0x81, 0x05, 0x7A, 0xBC, 0x48, 0x7C, 0x20, 0xC9, 0x3F,\n0x42, 0x66, 0x6C, 0xE3, 0x78, 0x1C, 0xBD, 0xB2, 0xFD, 0x17, 0x3B, 0x0A, 0xBD, 0xFB, 0x05, 0x9D,\n0x07, 0x33, 0xE0, 0xF0, 0x0F, 0xAB, 0x26, 0x1B, 0x5D, 0xC5, 0x3F, 0xF0, 0x90, 0x51, 0xFF, 0x70,\n0x32, 0x7C, 0x31, 0x61, 0x3D, 0xD5, 0x3F, 0x30, 0x11, 0x61, 0x7D, 0xE5, 0xD3, 0x18, 0x0B, 0xA1,\n0x9C, 0x59, 0x84, 0x51, 0xF2, 0xEE, 0xE7, 0xAF, 0xFD, 0xF8, 0x95, 0x85, 0xEC, 0xD6, 0x2F, 0x96,\n0x60, 0xC3, 0x29, 0x11, 0x3C, 0x04, 0x49, 0xAB, 0x2C, 0x87, 0x23, 0xA1, 0x11, 0xAB, 0x2C, 0x89,\n0x0F, 0x08, 0x29, 0x5D, 0xA3, 0xE0, 0x63, 0x75, 0xB2, 0x90, 0xDD, 0xEA, 0x61, 0xEF, 0x24, 0xE4,\n0xBC, 0x23, 0xF8, 0xD8, 0x53, 0xED, 0x30, 0xE6, 0x21, 0x4F, 0x5D, 0x55, 0xF8, 0x07, 0x71, 0x48,\n0xC7, 0x34, 0x08, 0x48, 0xE0, 0x03, 0x29, 0xFE, 0x81, 0x7E, 0x10, 0x96, 0x57, 0x4E, 0x47, 0x92,\n0x7B, 0x48, 0x0C, 0x42, 0x90, 0xB1, 0x6F, 0x17, 0x56, 0x11, 0x9E, 0x3F, 0x04, 0x19, 0x26, 0xEF,\n0xDC, 0x2D, 0x46, 0xF8, 0x88, 0x8B, 0x85, 0x87, 0x8C, 0xF0, 0xE1, 0x60, 0xA4, 0x49, 0xE0, 0x47,\n0xD1, 0x3F, 0xD4, 0x65, 0x96, 0xE3, 0x91, 0x8A, 0x9F, 0x6E, 0x46, 0x26, 0xBD, 0xED, 0x65, 0x7D,\n0xF4, 0xEE, 0x8F, 0xAF, 0x7D, 0xF3, 0xEE, 0x47, 0xEF, 0x8E, 0x11, 0x02, 0x1B, 0x56, 0xC7, 0x3D,\n0x04, 0x49, 0x1E, 0x92, 0x6E, 0x15, 0x31, 0x30, 0x01, 0x4A, 0x79, 0x10, 0xFD, 0xA6, 0x84, 0x7C,\n0xBB, 0x77, 0xC0, 0x3D, 0x6C, 0x07, 0xE5, 0x2E, 0x2E, 0xA5, 0x1D, 0x5D, 0xEE, 0x21, 0x00, 0xC1,\n0xDA, 0x9A, 0xF0, 0x1C, 0x3C, 0xBC, 0x15, 0x09, 0xF9, 0x9D, 0x19, 0xD9, 0x59, 0x65, 0x3D, 0x65,\n0x5B, 0x9F, 0x8F, 0xF3, 0xED, 0x5E, 0x5E, 0x07, 0x2A, 0x7D, 0xE5, 0x43, 0xF5, 0x78, 0x13, 0xFF,\n0x40, 0xA3, 0xFE, 0xC1, 0x8A, 0x92, 0xCD, 0xAC, 0xCE, 0xB0, 0x70, 0xEF, 0xD8, 0xEC, 0x56, 0xDC,\n0x6E, 0xEC, 0x90, 0x08, 0x19, 0x5E, 0x66, 0x35, 0xCD, 0xFC, 0x4C, 0xE5, 0x6B, 0xEB, 0xE6, 0xE1,\n0x93, 0x20, 0xB6, 0x6C, 0x8A, 0xF7, 0x55, 0xF8, 0x10, 0x97, 0x59, 0xCE, 0x07, 0xB5, 0x34, 0xE9,\n0xDD, 0x3F, 0xBE, 0xFA, 0xF0, 0xAB, 0x14, 0xA4, 0x7F, 0x94, 0xCA, 0xF0, 0x27, 0x83, 0x0F, 0x28,\n0x49, 0x7A, 0x43, 0xE0, 0x43, 0xF4, 0x90, 0xC9, 0xC9, 0x3B, 0xD2, 0xD9, 0x4F, 0xB3, 0x52, 0xF8,\n0x71, 0xA6, 0xD9, 0x7C, 0x31, 0xB8, 0xC1, 0xB8, 0x08, 0x38, 0xAC, 0xC6, 0x29, 0x6D, 0x66, 0xED,\n0xE3, 0xB2, 0xE3, 0x23, 0xAC, 0x21, 0xE0, 0xE3, 0xD8, 0xB5, 0x93, 0x6A, 0x1F, 0xAC, 0xB2, 0x14,\n0xFF, 0x00, 0x11, 0xFC, 0xC3, 0xFB, 0x5D, 0x37, 0x41, 0xC3, 0x1E, 0x02, 0x24, 0x4F, 0x19, 0x8D,\n0x85, 0xE7, 0xAD, 0x57, 0x76, 0x43, 0xF5, 0x40, 0xA3, 0x6D, 0x7B, 0xAB, 0xF0, 0xB1, 0x05, 0x91,\n0x66, 0xD8, 0x44, 0x16, 0xF8, 0x87, 0x40, 0x88, 0xB5, 0xA3, 0xD2, 0x39, 0x26, 0x44, 0x61, 0xB7,\n0x97, 0xE5, 0x95, 0xE2, 0x21, 0xF8, 0x07, 0xD5, 0x36, 0x7C, 0x87, 0x11, 0x71, 0xFF, 0x30, 0x30,\n0xBE, 0x49, 0x0E, 0x12, 0x1E, 0x32, 0xF8, 0x51, 0xFB, 0x8B, 0xBA, 0x90, 0x98, 0x86, 0x60, 0x85,\n0x0F, 0xD1, 0x43, 0x0C, 0x0F, 0xBF, 0x57, 0x78, 0xF3, 0x62, 0xAF, 0x87, 0x43, 0xB8, 0x79, 0x4E,\n0x83, 0x84, 0x38, 0x1F, 0x78, 0x87, 0x2B, 0x08, 0x31, 0xE1, 0x23, 0xED, 0x9D, 0x32, 0xAD, 0x32,\n0xC0, 0xC3, 0x5A, 0x78, 0xC8, 0xEF, 0x02, 0x1F, 0x48, 0x5C, 0x5F, 0x09, 0x9B, 0x59, 0x86, 0x4F,\n0x4E, 0xD9, 0x48, 0xDD, 0x03, 0xF8, 0xAC, 0xCA, 0xEB, 0x2B, 0x1C, 0x24, 0x7A, 0x87, 0x18, 0x17,\n0x96, 0x5B, 0x61, 0x26, 0xCE, 0x07, 0x23, 0x1A, 0xB0, 0xEC, 0xB2, 0x39, 0x43, 0xBB, 0x22, 0x77,\n0xF3, 0xAC, 0x4A, 0xE1, 0x87, 0x17, 0x3F, 0x3B, 0x22, 0x8E, 0x8B, 0x10, 0x7E, 0x28, 0x71, 0x88,\n0xF1, 0x91, 0xB9, 0xD3, 0x0F, 0x13, 0x62, 0x70, 0x18, 0x15, 0xE6, 0x20, 0x1E, 0x83, 0x94, 0x56,\n0x59, 0x04, 0x36, 0x6C, 0xF5, 0x16, 0x3C, 0x64, 0x48, 0x93, 0x52, 0x70, 0x1E, 0x59, 0x90, 0x38,\n0x17, 0x36, 0xB3, 0x06, 0xC6, 0x7C, 0x9E, 0x5D, 0x65, 0xDD, 0x3A, 0x1F, 0xAB, 0x9E, 0x85, 0x04,\n0x21, 0x2C, 0xB5, 0x89, 0x41, 0x83, 0x0A, 0xAA, 0x37, 0x93, 0xC6, 0x47, 0x39, 0x52, 0x07, 0x8F,\n0x0C, 0x21, 0x99, 0x3D, 0x2C, 0xEC, 0x43, 0x30, 0x91, 0x27, 0xFC, 0x23, 0xA3, 0xE1, 0xF5, 0x95,\n0xD5, 0x8E, 0x83, 0xF8, 0x21, 0xBC, 0x23, 0x52, 0xA6, 0xD1, 0x0F, 0xFF, 0x60, 0x40, 0xF1, 0x92,\n0xDC, 0xED, 0xC9, 0x10, 0x99, 0x0F, 0x68, 0x56, 0xB0, 0x8F, 0xB0, 0x10, 0x02, 0x91, 0x84, 0x82,\n0x14, 0x7E, 0x40, 0xC8, 0xE0, 0xF6, 0x95, 0x83, 0xD1, 0xA7, 0x64, 0xD0, 0x3F, 0x8E, 0xC6, 0x61,\n0x31, 0x88, 0xD3, 0x31, 0xE4, 0x21, 0x99, 0xBF, 0x93, 0x55, 0x56, 0xC1, 0x3F, 0x54, 0x0F, 0x89,\n0x98, 0xC3, 0xB3, 0x20, 0x9C, 0xDD, 0x43, 0x06, 0xD2, 0xE7, 0x39, 0xE5, 0x53, 0x86, 0x8B, 0x66,\n0xD5, 0xBD, 0x90, 0xF4, 0x76, 0xDB, 0xFD, 0x9E, 0xA5, 0x55, 0xDB, 0x05, 0x8C, 0xA8, 0xAC, 0xB3,\n0xFE, 0x7C, 0x7A, 0xCC, 0xA6, 0x3F, 0x86, 0x24, 0xD9, 0x07, 0x1A, 0x88, 0x40, 0x4C, 0x22, 0x21,\n0xC4, 0x1F, 0x3A, 0x21, 0xB1, 0x7B, 0x85, 0x83, 0xF0, 0xF2, 0xC4, 0x05, 0x5B, 0xDF, 0xFB, 0x34,\n0x6A, 0x67, 0x0E, 0x32, 0x9C, 0x10, 0xE1, 0x4A, 0x29, 0x1E, 0x62, 0x2D, 0x0C, 0x84, 0x5D, 0xAC,\n0x59, 0x9B, 0x3D, 0x56, 0xFC, 0x03, 0x15, 0xFC, 0xA3, 0xCF, 0x86, 0xD7, 0x2C, 0x22, 0x89, 0x07,\n0x2B, 0x11, 0x83, 0x80, 0x48, 0xFF, 0x63, 0x9E, 0x73, 0xE4, 0x2F, 0xA4, 0xFA, 0x41, 0xC2, 0x03,\n0x4D, 0xB2, 0xFE, 0x11, 0x03, 0x61, 0x8D, 0xB3, 0xF5, 0x9C, 0x10, 0x81, 0x0F, 0x08, 0xB9, 0xCB,\n0x3D, 0x5E, 0xD2, 0x75, 0x10, 0xDA, 0x2A, 0x11, 0xD2, 0xDE, 0x20, 0xE1, 0x63, 0x00, 0x11, 0x93,\n0xEA, 0x1F, 0x78, 0xC8, 0x38, 0x1F, 0x08, 0xD3, 0x28, 0xFB, 0x07, 0x7A, 0x22, 0x54, 0x8F, 0xDE,\n0x53, 0x49, 0x19, 0xFF, 0xC0, 0x37, 0xE8, 0x9D, 0x98, 0x09, 0x38, 0xF6, 0x71, 0xB4, 0xDA, 0xBB,\n0xCB, 0x70, 0xC8, 0x25, 0xD5, 0xE1, 0x43, 0xF2, 0x90, 0xD8, 0xDE, 0x0D, 0x79, 0xAF, 0x5D, 0x65,\n0xF9, 0x0A, 0x7C, 0xA2, 0xF9, 0x07, 0x88, 0xE4, 0xC3, 0xF3, 0xDC, 0x24, 0xB6, 0x96, 0xDB, 0xBE,\n0x72, 0x28, 0xAC, 0x58, 0x0C, 0xF2, 0x79, 0x3A, 0x45, 0xEB, 0x7D, 0xD6, 0xFD, 0x83, 0xBF, 0x96,\n0xDA, 0x6E, 0x66, 0x9D, 0xE1, 0x8A, 0x94, 0x50, 0xDD, 0x40, 0x60, 0x7B, 0xB7, 0x73, 0x0E, 0x52,\n0xB2, 0xE9, 0xF3, 0x82, 0x87, 0x74, 0xD2, 0x1F, 0x77, 0x1D, 0x3C, 0xFC, 0x48, 0xF3, 0xCD, 0x2C,\n0xA2, 0xF3, 0x24, 0xFB, 0x9E, 0x8E, 0x41, 0x3C, 0xF0, 0x90, 0x1E, 0x1F, 0xAA, 0x85, 0x3C, 0x65,\n0xF8, 0x28, 0x25, 0x44, 0xE0, 0x43, 0xF5, 0x90, 0xA7, 0xB2, 0xF2, 0xFE, 0x91, 0x75, 0x10, 0x12,\n0x22, 0x54, 0xE3, 0x63, 0x77, 0x4E, 0x07, 0x77, 0x9E, 0x66, 0xA1, 0xF9, 0x47, 0x3E, 0x21, 0x62,\n0x87, 0xD6, 0x40, 0xBA, 0xBB, 0x58, 0x93, 0x48, 0x01, 0xE4, 0xFD, 0x43, 0x27, 0xE4, 0x0C, 0x8F,\n0x78, 0x91, 0xF7, 0x10, 0x67, 0x03, 0x07, 0xC1, 0x40, 0xBE, 0x4A, 0x48, 0xF0, 0xB9, 0xF0, 0x8F,\n0x21, 0x07, 0x39, 0x4F, 0xAA, 0x23, 0x65, 0x99, 0xC5, 0x2D, 0xE3, 0xD3, 0x70, 0x92, 0x78, 0xA7,\n0xC5, 0xA6, 0xE3, 0x21, 0xC3, 0xFE, 0xC1, 0x76, 0x6F, 0x37, 0xFD, 0x91, 0xBB, 0x9A, 0x70, 0xE2,\n0x29, 0xC3, 0xD3, 0xDE, 0xEE, 0x29, 0xFE, 0xC8, 0x22, 0x42, 0x42, 0x44, 0xE6, 0x83, 0xA4, 0x3A,\n0xFE, 0x51, 0x16, 0x78, 0x84, 0x93, 0x8C, 0xE9, 0x49, 0x89, 0xCF, 0xD1, 0xEF, 0x9D, 0x2F, 0x9E,\n0x1D, 0x88, 0xAC, 0x83, 0x58, 0xE7, 0xB4, 0x79, 0x45, 0xFA, 0x83, 0xC6, 0x81, 0xA4, 0x3A, 0x26,\n0x02, 0x1F, 0x83, 0xCA, 0xA6, 0xCF, 0xE3, 0xBE, 0xC8, 0x64, 0xB0, 0x16, 0xDB, 0x9B, 0x35, 0xFE,\n0x01, 0x21, 0xF0, 0x91, 0x9B, 0xC7, 0x64, 0xBE, 0x3B, 0x78, 0x60, 0x20, 0x56, 0x22, 0x93, 0x7E,\n0x32, 0x91, 0x4E, 0x20, 0xD2, 0xFF, 0x8B, 0xA8, 0x44, 0xEB, 0x20, 0x62, 0x3D, 0x85, 0x10, 0xC4,\n0x9A, 0x33, 0xA0, 0x88, 0x33, 0x43, 0xC4, 0x00, 0x76, 0xD3, 0x83, 0x42, 0x1C, 0x72, 0xEB, 0xE9,\n0xF3, 0x02, 0x22, 0x4E, 0x48, 0x6C, 0x5E, 0x45, 0xFA, 0x3C, 0x8F, 0x07, 0x53, 0xA9, 0x8B, 0x07,\n0x33, 0x72, 0x34, 0x54, 0x87, 0x8F, 0x22, 0x21, 0x1D, 0x46, 0x04, 0x65, 0xD2, 0x83, 0x25, 0xF5,\n0xD3, 0x1F, 0xD6, 0xF2, 0x0E, 0x12, 0xAC, 0x90, 0x3A, 0x4D, 0xE9, 0x73, 0xE8, 0xC8, 0x39, 0x48,\n0x24, 0x44, 0xF0, 0x8F, 0x51, 0x9D, 0xA7, 0xCF, 0x09, 0x44, 0x71, 0x90, 0x24, 0x1E, 0xCC, 0x22,\n0xFD, 0x21, 0xA8, 0xEB, 0x1F, 0xB9, 0x79, 0xCC, 0xD9, 0xD4, 0xF5, 0x0F, 0x1C, 0xC4, 0x77, 0xB1,\n0x58, 0x64, 0xD9, 0x5B, 0xF0, 0x61, 0xFE, 0x31, 0x8A, 0x88, 0x6A, 0x1F, 0xAC, 0xB2, 0xFA, 0xFE,\n0x11, 0x9B, 0xBC, 0xEE, 0x24, 0x9C, 0x03, 0x1C, 0x6E, 0x31, 0x73, 0xFC, 0xA3, 0xE8, 0x21, 0xB1,\n0x7D, 0x75, 0xC7, 0xB5, 0x2B, 0xD8, 0x08, 0xA1, 0x68, 0x70, 0x90, 0x47, 0xE4, 0xD4, 0xE1, 0x7B,\n0x42, 0xD2, 0x2D, 0x59, 0x20, 0x04, 0xFF, 0x10, 0xA4, 0xF9, 0x07, 0x32, 0x2C, 0x04, 0x3E, 0x72,\n0x49, 0x75, 0x62, 0x8D, 0x41, 0x07, 0x89, 0x5F, 0x18, 0x7D, 0x88, 0xF4, 0xC7, 0x98, 0x83, 0x38,\n0x21, 0xB6, 0xB0, 0x8D, 0xF4, 0xA0, 0xA2, 0x09, 0xE1, 0x79, 0xD0, 0x10, 0x01, 0x28, 0xCB, 0x0A,\n0x47, 0x25, 0x9C, 0x44, 0xE5, 0x03, 0x0F, 0x81, 0x8F, 0x82, 0x83, 0xF4, 0x93, 0xEA, 0xCE, 0x47,\n0x27, 0x06, 0xF9, 0x31, 0x5E, 0xB4, 0xE0, 0xC0, 0xC7, 0x10, 0x1E, 0xE0, 0x68, 0xBA, 0xA9, 0x02,\n0x84, 0x50, 0xBD, 0xBB, 0xE6, 0x8C, 0x81, 0xE1, 0xEC, 0x22, 0xA9, 0x3E, 0x01, 0x8F, 0x32, 0x21,\n0x8B, 0x78, 0xBC, 0x9D, 0x6B, 0x97, 0x3F, 0x44, 0x8B, 0xED, 0x5E, 0x9F, 0x16, 0x05, 0x07, 0x39,\n0x1D, 0xD9, 0xBE, 0x92, 0x04, 0x1F, 0x92, 0x08, 0x3F, 0x44, 0xB1, 0x7D, 0xA5, 0xA9, 0x9B, 0x1E,\n0x2C, 0x3A, 0x88, 0x19, 0x66, 0x24, 0xD5, 0xF7, 0x9B, 0x02, 0x1D, 0xD6, 0xE8, 0x5B, 0xDC, 0x97,\n0x46, 0x5F, 0xE3, 0xE3, 0xB6, 0x97, 0x3E, 0x27, 0x00, 0x9D, 0x91, 0x07, 0x71, 0x1D, 0x09, 0x99,\n0xB1, 0xBE, 0x52, 0x09, 0x69, 0xB7, 0xAF, 0x0A, 0x0E, 0x12, 0xD5, 0x84, 0x7F, 0x14, 0x1C, 0x84,\n0xA4, 0x7A, 0x64, 0x3B, 0x0A, 0x0E, 0x42, 0xCA, 0x10, 0x3E, 0x74, 0x42, 0x26, 0x21, 0x50, 0x88,\n0x47, 0x4D, 0xFC, 0xDC, 0x9A, 0x88, 0xF5, 0x1D, 0x0F, 0xE7, 0x43, 0xD3, 0x1D, 0xDB, 0x57, 0x23,\n0x0E, 0x42, 0xCA, 0xF0, 0xE0, 0xEB, 0xAB, 0x82, 0x83, 0x78, 0xC1, 0x43, 0x9E, 0x64, 0xC5, 0x3E,\n0x93, 0x2C, 0xF8, 0xD0, 0x44, 0x7C, 0xAE, 0xA9, 0xF7, 0x78, 0x62, 0xDE, 0x41, 0xA0, 0x85, 0xF4,\n0x79, 0x81, 0x11, 0xBA, 0xB6, 0x99, 0x05, 0x1F, 0x82, 0xC2, 0x3F, 0xB8, 0x41, 0x4E, 0x38, 0xFB,\n0xE9, 0x94, 0x38, 0x3C, 0x26, 0xD5, 0xAD, 0xC0, 0x87, 0xE4, 0x21, 0x11, 0x7E, 0x94, 0x1D, 0x84,\n0xA4, 0xFA, 0xC9, 0x3F, 0x08, 0x42, 0xCC, 0x41, 0x58, 0x60, 0xE1, 0x21, 0x9E, 0x3D, 0xB7, 0x52,\n0x76, 0x90, 0x10, 0x7C, 0xC8, 0x84, 0x4C, 0x3A, 0x3B, 0x16, 0x0C, 0x90, 0xDB, 0x0A, 0xE4, 0x78,\n0xD7, 0x06, 0x71, 0xAE, 0x2B, 0x05, 0x22, 0x5C, 0xC8, 0xF2, 0xC1, 0x09, 0x89, 0xF0, 0xBC, 0xEC,\n0x20, 0x78, 0x08, 0xFE, 0x21, 0x09, 0x3C, 0x34, 0xF9, 0x16, 0x6F, 0x8D, 0xE0, 0x43, 0x25, 0x04,\n0xE7, 0x28, 0x3B, 0x48, 0x10, 0x62, 0x7C, 0x48, 0x0E, 0xE2, 0x47, 0xF8, 0x90, 0x14, 0xE9, 0x73,\n0x47, 0xC4, 0x44, 0xEC, 0x41, 0x1E, 0xC4, 0x4E, 0xE4, 0x0E, 0xD9, 0xBE, 0x12, 0x11, 0xF1, 0xF4,\n0x87, 0xE2, 0x20, 0x11, 0xA9, 0x03, 0x46, 0x0B, 0x4A, 0xC6, 0x41, 0xAC, 0x97, 0xF0, 0x80, 0x86,\n0x92, 0x83, 0x44, 0x42, 0x04, 0xAE, 0x25, 0x42, 0x42, 0x31, 0x32, 0x0C, 0x00, 0x90, 0x44, 0x24,\n0x62, 0x95, 0xED, 0x2B, 0x4D, 0xB3, 0xC5, 0xD6, 0xA4, 0x32, 0xB2, 0x6A, 0xB6, 0xCC, 0x8A, 0xB2,\n0x83, 0xC4, 0xE7, 0x2A, 0xF8, 0xF0, 0x40, 0xE5, 0xFB, 0x2A, 0xC1, 0x87, 0xAA, 0xA7, 0x3A, 0x79,\n0xFA, 0x83, 0x36, 0xE0, 0x20, 0x14, 0x1F, 0x28, 0xD1, 0x41, 0x4C, 0xB7, 0xF3, 0x59, 0x15, 0x21,\n0x5C, 0x7D, 0x02, 0xD0, 0x98, 0x18, 0xF1, 0x66, 0x6C, 0xE6, 0xA4, 0x0E, 0xE1, 0x87, 0x26, 0xD2,\n0x1F, 0x45, 0x07, 0xA1, 0xEB, 0x60, 0xF4, 0x1D, 0xE4, 0x1B, 0xEF, 0x77, 0xC1, 0x61, 0xF2, 0x2B,\n0x0E, 0x62, 0x80, 0xD4, 0xC9, 0x97, 0x4E, 0x04, 0x1F, 0x24, 0x4F, 0xFD, 0x6D, 0x8C, 0x36, 0x02,\n0x95, 0xAA, 0x21, 0x37, 0x9A, 0xC6, 0xA0, 0xE0, 0xE0, 0x7B, 0x59, 0x9E, 0xFF, 0x18, 0x77, 0x10,\n0xEF, 0x39, 0x20, 0x75, 0xAA, 0x07, 0xA4, 0xCA, 0x73, 0x54, 0x03, 0x01, 0x10, 0xDD, 0x41, 0x6C,\n0xE5, 0x79, 0xB0, 0x11, 0x92, 0x6E, 0x37, 0xD1, 0xB8, 0x95, 0x89, 0x71, 0x08, 0x8B, 0x28, 0xA8,\n0x60, 0xC9, 0xED, 0x07, 0xDC, 0xA4, 0x1E, 0x90, 0x8F, 0x35, 0x07, 0x09, 0x92, 0xE0, 0xA0, 0x10,\n0x83, 0xD8, 0xD9, 0x27, 0xBD, 0xE6, 0x20, 0xBE, 0x7E, 0xAB, 0x5C, 0x62, 0x7D, 0xFA, 0x46, 0xCC,\n0x7E, 0x6C, 0x34, 0x56, 0x9C, 0x0C, 0x53, 0xF8, 0x88, 0x6F, 0xF5, 0xD6, 0xDD, 0x94, 0xEE, 0xEE,\n0x2C, 0x44, 0x57, 0x11, 0xD9, 0xAD, 0x36, 0xA6, 0x3D, 0xB7, 0xD5, 0xB2, 0x83, 0x58, 0xDF, 0x42,\n0xDC, 0xA7, 0x0A, 0x11, 0xA2, 0xEB, 0x41, 0x48, 0x1D, 0x1F, 0x75, 0x84, 0xF0, 0x84, 0xA2, 0xE0,\n0x20, 0x7F, 0xEE, 0x1F, 0x6C, 0x74, 0x56, 0xBB, 0x2E, 0x06, 0x85, 0x83, 0x6D, 0x64, 0xF1, 0x84,\n0xA2, 0xB8, 0xC4, 0x62, 0x1A, 0x40, 0x05, 0x79, 0x10, 0xF7, 0x8E, 0xC8, 0x8A, 0x4D, 0xEC, 0xC7,\n0x97, 0x20, 0x2D, 0x4C, 0xD7, 0x1D, 0xE4, 0xE6, 0x3A, 0x13, 0x82, 0x7C, 0x98, 0x9E, 0xC5, 0xCA,\n0x85, 0x20, 0x26, 0xCD, 0x41, 0x3C, 0xBE, 0x31, 0x52, 0x6B, 0xF0, 0xB0, 0xFB, 0x00, 0x4B, 0xCE,\n0xA3, 0x69, 0x30, 0x08, 0x18, 0xAD, 0x77, 0x3F, 0x48, 0x78, 0x68, 0x1E, 0xC2, 0xF7, 0x86, 0xDC,\n0xDE, 0x6D, 0x25, 0x44, 0x3C, 0x04, 0xF9, 0x2D, 0x11, 0x62, 0x26, 0x22, 0x38, 0x88, 0xF3, 0x91,\n0x08, 0xF9, 0x41, 0xE6, 0xC3, 0xA5, 0xE3, 0xF1, 0xC2, 0x41, 0xFA, 0xEF, 0xBF, 0xC4, 0x26, 0x96,\n0xE0, 0x20, 0xA9, 0x6B, 0x43, 0x63, 0xC3, 0xB3, 0x95, 0x2D, 0xD9, 0x46, 0x1F, 0x42, 0x24, 0x40,\n0xAC, 0xFA, 0x02, 0x82, 0x27, 0x2A, 0x88, 0x45, 0xF0, 0x8E, 0xD8, 0xB8, 0xF1, 0xD9, 0x53, 0xC5,\n0x87, 0x6F, 0xF2, 0x16, 0x1D, 0x84, 0xEA, 0xCA, 0x39, 0x48, 0xCF, 0x40, 0x8C, 0x0E, 0xFF, 0x91,\n0x40, 0x39, 0xD6, 0xA8, 0xDD, 0x07, 0xB2, 0x4C, 0xFA, 0xFA, 0xCA, 0xFE, 0x91, 0x56, 0x4E, 0x81,\n0x19, 0xC9, 0x53, 0x92, 0x85, 0x44, 0xED, 0xCE, 0x87, 0x49, 0xE6, 0xC3, 0x64, 0x84, 0x34, 0xDA,\n0xFA, 0x6A, 0xBB, 0xF9, 0x87, 0xB2, 0x33, 0xD6, 0x95, 0x1A, 0x06, 0xA2, 0x68, 0xC1, 0x1F, 0x40,\n0x87, 0x68, 0x68, 0x29, 0xC2, 0x3F, 0x50, 0xD1, 0x2E, 0x12, 0x15, 0x3F, 0x40, 0x81, 0x28, 0x91,\n0xE8, 0xE8, 0x61, 0x9B, 0x54, 0x50, 0xF1, 0xAB, 0x8C, 0x8F, 0x27, 0x1C, 0xC5, 0x38, 0x66, 0x76,\n0xEC, 0x8D, 0x9D, 0xE5, 0x09, 0xB1, 0x59, 0x9F, 0x5C, 0x5F, 0x8F, 0x5F, 0xB8, 0x7F, 0x22, 0x18,\n0x0E, 0x4B, 0x05, 0xE1, 0xC4, 0xA7, 0xC4, 0x95, 0xF9, 0x20, 0x1E, 0x01, 0x84, 0x43, 0x9D, 0x0F,\n0xA2, 0x2A, 0x1F, 0x6E, 0x33, 0x59, 0x28, 0x88, 0xFA, 0xD1, 0xF0, 0xF8, 0x7E, 0xDF, 0xC3, 0xA6,\n0x57, 0x0C, 0x1D, 0x89, 0x90, 0x46, 0xC8, 0xED, 0x59, 0x1D, 0x8F, 0x28, 0x4F, 0xB6, 0x94, 0x0D,\n0xD3, 0x84, 0xFD, 0x04, 0xED, 0x10, 0x9B, 0x2D, 0x46, 0xCD, 0x06, 0x22, 0x55, 0x3E, 0x88, 0xA2,\n0x82, 0x40, 0x87, 0x1A, 0x62, 0x26, 0x7D, 0x54, 0x90, 0x8F, 0x3E, 0x03, 0xAB, 0xA2, 0x20, 0x6F,\n0x33, 0xCA, 0x1A, 0xB2, 0x85, 0x82, 0xE0, 0xE9, 0x53, 0x46, 0x37, 0x93, 0xA7, 0xC2, 0x71, 0xC8,\n0x2D, 0xFA, 0xF1, 0x80, 0x86, 0xDC, 0x82, 0x0E, 0x0A, 0x1A, 0xF2, 0x3F, 0x44, 0x82, 0x8F, 0xBD,\n0x11, 0x72, 0x67, 0x96, 0xB5, 0xCA, 0xA4, 0x13, 0xA6, 0x41, 0xA2, 0xAD, 0xF3, 0xC1, 0xB1, 0x8A,\n0xC7, 0x81, 0xC8, 0x03, 0xF3, 0xAB, 0x3A, 0x21, 0xF1, 0xEF, 0x96, 0x90, 0x95, 0x82, 0xA8, 0x1F,\n0xC4, 0x3D, 0x1E, 0x35, 0x5A, 0xF0, 0x1F, 0xCF, 0xDB, 0x04, 0xEB, 0x39, 0x0A, 0x5E, 0xE6, 0x83,\n0xE2, 0x02, 0x0D, 0x5F, 0x3B, 0x8D, 0x27, 0x87, 0x2D, 0x61, 0xE6, 0x01, 0x22, 0x8F, 0xF1, 0xF1,\n0xB4, 0xE8, 0x41, 0x22, 0xBD, 0x41, 0x2C, 0x33, 0xE9, 0xF8, 0x8F, 0xF6, 0x14, 0x45, 0x1E, 0x2D,\n0x77, 0x89, 0x88, 0x6F, 0xA0, 0x1E, 0x19, 0x25, 0x3C, 0x90, 0x49, 0xCA, 0xB1, 0x62, 0x75, 0x4A,\n0x9E, 0x9E, 0xE6, 0x57, 0x1B, 0xFA, 0xF1, 0x00, 0x21, 0x28, 0xBC, 0x84, 0x2C, 0xE9, 0x80, 0x8F,\n0x16, 0xFB, 0x77, 0x9A, 0xFF, 0x29, 0x88, 0x78, 0x94, 0x35, 0xC4, 0x7D, 0x84, 0x35, 0x42, 0xCC,\n0xA3, 0xD7, 0x34, 0x24, 0xF1, 0x20, 0x6A, 0xFA, 0x61, 0xAC, 0x15, 0x04, 0xFD, 0x00, 0x8D, 0xB8,\n0x3A, 0x7B, 0x74, 0x0A, 0x02, 0xF2, 0x01, 0x3E, 0x7A, 0xBD, 0xD5, 0xF9, 0xA0, 0xE8, 0xC7, 0xFB,\n0x20, 0xE0, 0xC4, 0x8D, 0x58, 0xED, 0x8D, 0x7E, 0x6B, 0x0D, 0x3E, 0xA2, 0xD6, 0xF8, 0x30, 0x56,\n0x99, 0x74, 0xEF, 0xF5, 0x0C, 0xFC, 0x18, 0xFF, 0x67, 0x13, 0x32, 0xAC, 0x62, 0x25, 0x44, 0x01,\n0x07, 0xB1, 0xB6, 0xE8, 0xF1, 0x02, 0x90, 0x3A, 0x22, 0xFD, 0x23, 0x52, 0xA2, 0x1F, 0x10, 0xE8,\n0xCF, 0x4E, 0x0E, 0x1D, 0x1D, 0x91, 0x8F, 0x1A, 0x21, 0xCF, 0x6E, 0x89, 0x47, 0xD4, 0x97, 0x51,\n0xDE, 0x2F, 0x10, 0xC1, 0x9F, 0xDF, 0x3F, 0xDD, 0xF9, 0xF6, 0x9B, 0x0F, 0x41, 0x43, 0x56, 0x0A,\n0x22, 0x20, 0x66, 0xD3, 0x4B, 0xF2, 0x51, 0xF5, 0x21, 0x6E, 0xC3, 0xA2, 0xD6, 0xF4, 0x43, 0x46,\n0x8A, 0x7C, 0x88, 0xF8, 0x62, 0x37, 0x2F, 0x4D, 0xC3, 0x23, 0x63, 0x6F, 0x1A, 0xF2, 0xBF, 0xF9,\n0x15, 0x57, 0x3F, 0xBF, 0x00, 0x35, 0x64, 0xC9, 0x87, 0x05, 0x30, 0xC6, 0x65, 0x9A, 0x7C, 0x03,\n0xA3, 0xDA, 0x6E, 0xA9, 0xBD, 0xD2, 0x7D, 0x84, 0x8F, 0xEB, 0xCD, 0xEE, 0xB6, 0x3C, 0x58, 0xF7,\n0x18, 0xF4, 0xD1, 0x9F, 0x7B, 0x90, 0xCF, 0xF0, 0x01, 0x45, 0xD8, 0x95, 0xE8, 0xAC, 0x14, 0x44,\n0xFD, 0xA8, 0x02, 0x12, 0x5C, 0xF0, 0x19, 0x29, 0xD1, 0xE1, 0x52, 0xE4, 0xB5, 0x19, 0x32, 0xE9,\n0x4F, 0xE0, 0xE3, 0x45, 0x0D, 0x11, 0xFD, 0x07, 0xF2, 0x11, 0x53, 0x61, 0x18, 0x61, 0xF5, 0x65,\n0x31, 0xBF, 0x82, 0x0E, 0x24, 0x84, 0x6E, 0x3C, 0x8D, 0x77, 0xB5, 0x17, 0x6B, 0x1C, 0x60, 0xC5,\n0xED, 0xEE, 0x52, 0xB2, 0x1C, 0xEC, 0x29, 0x1F, 0x8F, 0x6C, 0x77, 0x17, 0x3F, 0x0E, 0xF5, 0xF9,\n0x95, 0xB3, 0xAC, 0x2B, 0x05, 0x89, 0xE9, 0x66, 0x5E, 0x13, 0x6A, 0x3B, 0x5C, 0xEF, 0x4B, 0xE0,\n0x88, 0x7C, 0x50, 0x7A, 0x73, 0x2B, 0xF1, 0x61, 0xE9, 0xAE, 0xF3, 0x34, 0x08, 0x5A, 0xA1, 0x03,\n0x1F, 0x5B, 0xBF, 0xB7, 0x82, 0x48, 0x15, 0x0F, 0x09, 0xB9, 0x32, 0x0B, 0x79, 0x20, 0x9A, 0x78,\n0xE4, 0xE8, 0xFF, 0x3C, 0xF5, 0x20, 0x9F, 0x5F, 0x83, 0x47, 0x47, 0x24, 0xB5, 0x64, 0x6D, 0xD1,\n0x05, 0xA4, 0x86, 0x08, 0x78, 0x74, 0x07, 0xD2, 0x3F, 0x6B, 0x5E, 0x11, 0xAF, 0x86, 0xBF, 0x4C,\n0xB6, 0x3D, 0x83, 0x8F, 0x3A, 0x21, 0x37, 0xBF, 0x1F, 0x4A, 0xCC, 0xB2, 0x2E, 0xE8, 0x60, 0xF9,\n0xAA, 0x7D, 0xE9, 0xBF, 0x77, 0xC4, 0x23, 0x7A, 0x04, 0x3B, 0x4E, 0x26, 0x78, 0x28, 0x1F, 0x75,\n0x42, 0x04, 0xC3, 0x28, 0xF8, 0x8F, 0xF2, 0x2F, 0x4C, 0x29, 0x1D, 0xB4, 0x44, 0x49, 0x3F, 0x8C,\n0xEB, 0xDD, 0xBC, 0x2C, 0xEF, 0xEE, 0x28, 0x6B, 0x36, 0x10, 0x32, 0x37, 0x22, 0xBC, 0xC0, 0xC3,\n0x82, 0x86, 0x2C, 0xF9, 0x18, 0xCA, 0x0B, 0x95, 0xC3, 0x41, 0xD0, 0x82, 0xCE, 0xD6, 0x17, 0x76,\n0x38, 0x36, 0x50, 0xA2, 0xD6, 0x00, 0x91, 0x90, 0x95, 0x82, 0xE4, 0xDC, 0x2A, 0x2A, 0x33, 0x27,\n0x30, 0x98, 0x79, 0x90, 0xD7, 0x92, 0xD4, 0x7F, 0xB8, 0x95, 0xC9, 0xDC, 0xCD, 0xED, 0x2B, 0x44,\n0x99, 0x90, 0x9C, 0x5C, 0xF1, 0x29, 0x0F, 0x1F, 0xA2, 0x0D, 0xA3, 0xDD, 0x9C, 0x85, 0xCA, 0x47,\n0x8D, 0x90, 0x5C, 0xBF, 0x3A, 0x4A, 0x54, 0x66, 0x59, 0xD7, 0xE9, 0xC1, 0x5D, 0x30, 0x0E, 0x23,\n0xC2, 0x9E, 0xDE, 0x29, 0x22, 0xF0, 0x51, 0x27, 0x44, 0x34, 0xA2, 0xFD, 0x59, 0xD0, 0x10, 0x88,\n0x10, 0x92, 0xEC, 0xAE, 0xF8, 0x50, 0x9B, 0x24, 0xB1, 0xA4, 0x1F, 0xC6, 0x95, 0x07, 0xF9, 0x11,\n0x7C, 0x18, 0xEA, 0xEC, 0xC5, 0xD5, 0x1C, 0xF9, 0xC8, 0xE6, 0x65, 0x49, 0x3E, 0x24, 0xE4, 0x80,\n0xC3, 0x41, 0x70, 0x74, 0x99, 0x54, 0x81, 0xC7, 0x16, 0x05, 0x17, 0x5B, 0xC7, 0xC3, 0x59, 0xD6,\n0xA5, 0x07, 0x21, 0x3E, 0xB6, 0x8A, 0x88, 0xD0, 0xCC, 0x76, 0xF3, 0x4A, 0xD2, 0x47, 0x18, 0xE9,\n0x13, 0xAD, 0x29, 0x1B, 0xB9, 0x8D, 0xF7, 0x21, 0x42, 0x92, 0xFC, 0x2E, 0x96, 0x48, 0x08, 0xA8,\n0xA4, 0x0F, 0xC9, 0x0C, 0xFA, 0x61, 0x45, 0xD4, 0x8F, 0x22, 0x21, 0xE3, 0x17, 0x94, 0x5F, 0xD2,\n0xC4, 0xAA, 0xE3, 0xCF, 0xC1, 0x81, 0x2F, 0x3F, 0xEF, 0x92, 0xFD, 0xF0, 0xFD, 0xEB, 0xAF, 0x09,\n0x1E, 0xF2, 0x31, 0x46, 0xCD, 0x7F, 0x18, 0x05, 0x7B, 0xAE, 0x80, 0x44, 0x2C, 0xF5, 0x63, 0x12,\n0xAB, 0x7D, 0xEE, 0xD7, 0x1A, 0xA2, 0x82, 0x64, 0x37, 0xAF, 0x4C, 0xD6, 0xD4, 0xD9, 0xA8, 0x5F,\n0x2E, 0xE4, 0xF8, 0x36, 0x5C, 0xF9, 0x2C, 0x25, 0x40, 0x2C, 0xFF, 0x0C, 0x02, 0x22, 0xFA, 0x39,\n0x58, 0xDA, 0x08, 0xD2, 0xC5, 0xBE, 0x2B, 0x03, 0x22, 0x22, 0xF3, 0xA5, 0xD8, 0x9C, 0x30, 0xA1,\n0x1F, 0xB0, 0xC1, 0xD0, 0x07, 0x89, 0x93, 0x82, 0xBC, 0xCA, 0x80, 0x0E, 0x20, 0x49, 0x37, 0x32,\n0x55, 0x10, 0xF1, 0x18, 0xE3, 0x5A, 0x3F, 0x38, 0x6C, 0xF4, 0xF8, 0xA8, 0x7C, 0xC6, 0xBE, 0xCB,\n0x46, 0x81, 0xE5, 0xFA, 0x60, 0x3F, 0x8A, 0x80, 0xC8, 0x87, 0x45, 0x11, 0x99, 0xCD, 0x9C, 0x5B,\n0xFA, 0xFC, 0x8E, 0x6E, 0xFC, 0x76, 0x25, 0xB3, 0x23, 0xB2, 0x3B, 0x4E, 0xA8, 0x2B, 0x3E, 0x88,\n0x6F, 0x2B, 0xFF, 0x91, 0x98, 0x2C, 0x35, 0xC4, 0xF9, 0x95, 0x16, 0x44, 0x50, 0x0A, 0xFA, 0x61,\n0xBD, 0x22, 0x64, 0xF9, 0x58, 0xAC, 0x51, 0x41, 0xB0, 0x1F, 0x79, 0x69, 0xEE, 0x47, 0x87, 0xF8,\n0x7E, 0x91, 0x10, 0x21, 0xFD, 0xA1, 0xF9, 0xD3, 0x8B, 0x5C, 0x24, 0x44, 0x9E, 0x4D, 0xF9, 0x48,\n0x1F, 0xE2, 0x20, 0x40, 0x44, 0xA2, 0xD9, 0xD2, 0xB5, 0xAA, 0x20, 0x9C, 0x55, 0xF1, 0x30, 0xA6,\n0x93, 0x2C, 0x02, 0x5B, 0x11, 0x90, 0xA0, 0x1F, 0xD1, 0x03, 0x15, 0x77, 0xF3, 0x66, 0xFA, 0x5C,\n0xEF, 0xC1, 0x21, 0x41, 0x12, 0x91, 0x73, 0x7D, 0x3A, 0x03, 0x84, 0x37, 0xA7, 0x84, 0x1C, 0x26,\n0x0B, 0xF2, 0x39, 0x6C, 0xAD, 0xB4, 0x8E, 0x57, 0xC5, 0x25, 0xDE, 0xAB, 0x4B, 0xC8, 0xC5, 0x9D,\n0x2F, 0xEF, 0x52, 0x87, 0x96, 0x69, 0xD6, 0x80, 0x47, 0xA6, 0x07, 0x77, 0x15, 0xA4, 0x55, 0x5E,\n0x44, 0x8C, 0x90, 0x01, 0x0F, 0xF9, 0x98, 0xC5, 0xD2, 0x7F, 0x1C, 0x5D, 0x63, 0xCE, 0xC7, 0xD4,\n0x82, 0x10, 0x2B, 0x7B, 0x3E, 0x8B, 0x9A, 0x7E, 0x18, 0xC3, 0x73, 0xB1, 0x4C, 0x9F, 0xA7, 0xF3,\n0xF0, 0x1A, 0x01, 0xCC, 0xC4, 0x87, 0x84, 0xD7, 0xCB, 0x4B, 0x7E, 0xA0, 0xE1, 0xA1, 0x24, 0x1F,\n0x16, 0x96, 0x2E, 0x87, 0x1D, 0xDD, 0xC9, 0x05, 0xF3, 0x0F, 0x48, 0xC9, 0xB3, 0xA8, 0x65, 0x3E,\n0xD4, 0x90, 0x51, 0x44, 0x18, 0xED, 0x70, 0x91, 0xBD, 0x1C, 0xF9, 0xE0, 0xF0, 0x77, 0x37, 0x6F,\n0x34, 0x70, 0x10, 0x87, 0x43, 0x37, 0xDE, 0x44, 0xB7, 0x8B, 0xCE, 0x90, 0x0F, 0xD1, 0x9E, 0x5F,\n0xC7, 0x65, 0xFA, 0x3C, 0xC5, 0x63, 0xE3, 0x94, 0x42, 0x4F, 0x03, 0xD2, 0xB5, 0xD5, 0x4B, 0x58,\n0x10, 0x11, 0x97, 0xAF, 0xA6, 0x88, 0x8C, 0x1B, 0xB3, 0xE0, 0x83, 0xD0, 0x9D, 0xEF, 0xBF, 0x79,\n0xED, 0xDF, 0xE9, 0xE9, 0xD4, 0x7D, 0x26, 0xD6, 0x2A, 0x16, 0xFA, 0x21, 0x1D, 0x2B, 0x0D, 0xB9,\n0x7A, 0xEE, 0x68, 0x72, 0x32, 0xE3, 0xE3, 0x4A, 0x42, 0x22, 0x4A, 0xFA, 0x61, 0x28, 0x97, 0x11,\n0xA6, 0x3F, 0xA2, 0x62, 0x3B, 0x78, 0xE9, 0x42, 0x76, 0x96, 0x7B, 0x67, 0xE9, 0xF3, 0x93, 0x7C,\n0xCB, 0xCB, 0xAD, 0xC4, 0x87, 0x25, 0xE1, 0x10, 0x12, 0xBD, 0x79, 0x34, 0x89, 0x06, 0xA7, 0xFC,\n0x41, 0x9D, 0x0F, 0x35, 0x64, 0x92, 0x3E, 0xCF, 0x27, 0x31, 0x70, 0x82, 0xF1, 0x3E, 0x7C, 0x88,\n0xBB, 0x79, 0x93, 0x9B, 0x43, 0x37, 0x92, 0x12, 0xFA, 0xC4, 0x90, 0x95, 0xE7, 0xDF, 0x51, 0x27,\n0xC4, 0xEC, 0x07, 0xDC, 0xA7, 0x11, 0xF1, 0xB6, 0x10, 0x64, 0xB8, 0x63, 0xCD, 0xF4, 0x47, 0x91,\n0x90, 0xDB, 0x0A, 0x8F, 0x97, 0x7D, 0x31, 0x4B, 0x46, 0xBA, 0x7E, 0x74, 0xC1, 0x48, 0xE5, 0xE0,\n0x20, 0x35, 0x81, 0x84, 0x0A, 0xB2, 0xE6, 0xC3, 0x84, 0xC8, 0x5C, 0x3F, 0x0A, 0x6B, 0x59, 0x67,\n0xD1, 0xA0, 0xE3, 0x19, 0x27, 0x43, 0xF8, 0xB7, 0xCF, 0x63, 0x69, 0xCF, 0x8D, 0x49, 0x52, 0x9D,\n0x0E, 0xD7, 0x20, 0x2F, 0x8C, 0x37, 0x11, 0x2F, 0xD1, 0x91, 0x10, 0x71, 0x7B, 0xA2, 0x78, 0xD8,\n0x98, 0x10, 0x29, 0xF1, 0x61, 0x71, 0x1A, 0xC1, 0xB1, 0x8F, 0x0F, 0x70, 0xA0, 0xCB, 0x11, 0x58,\n0x20, 0xA5, 0xCA, 0x87, 0x1A, 0x32, 0x4D, 0x9F, 0x37, 0xE3, 0x9D, 0xAE, 0x82, 0x11, 0x4F, 0xDB,\n0x22, 0x3D, 0x08, 0x3F, 0x94, 0xA2, 0xF1, 0xF1, 0xB0, 0xEA, 0xE0, 0x42, 0x9F, 0x24, 0x8A, 0x88,\n0x98, 0xFE, 0xA8, 0x22, 0xB2, 0x75, 0xF1, 0xA0, 0x4A, 0x06, 0x25, 0x6F, 0x04, 0x3E, 0x07, 0xC9,\n0xF4, 0x60, 0x95, 0x90, 0xDB, 0xF3, 0x95, 0x80, 0xD0, 0xFB, 0x22, 0x1E, 0xF0, 0x61, 0xFA, 0x63,\n0xA7, 0xC3, 0x81, 0x3E, 0x71, 0x77, 0xD7, 0x49, 0x81, 0x8F, 0x61, 0x31, 0x6B, 0x18, 0xAD, 0xB6,\n0x73, 0x11, 0x11, 0x05, 0x2D, 0xC8, 0x78, 0x3E, 0xF0, 0x31, 0x17, 0x10, 0xA1, 0xA9, 0xEB, 0xC7,\n0x98, 0x54, 0x4F, 0xFF, 0x91, 0xB2, 0xDA, 0xD9, 0xB8, 0x7B, 0x6D, 0xE2, 0xB6, 0xC2, 0xB6, 0x13,\n0x05, 0x44, 0x3E, 0x46, 0x05, 0x31, 0x21, 0x52, 0xF1, 0x1F, 0x96, 0xD4, 0x90, 0xDC, 0x72, 0x94,\n0xB6, 0x35, 0xC5, 0x22, 0x9A, 0x94, 0x13, 0x2A, 0x27, 0x55, 0x3E, 0x24, 0x64, 0x34, 0x20, 0x0E,\n0x76, 0x74, 0x03, 0x11, 0x39, 0xDE, 0x7E, 0xCD, 0xD3, 0xDD, 0x99, 0x5F, 0x11, 0xE9, 0x4F, 0xE8,\n0x6A, 0x43, 0x06, 0x11, 0x71, 0xF9, 0x6A, 0x21, 0x65, 0x13, 0xF9, 0xE8, 0x30, 0xF4, 0x2A, 0x27,\n0xC9, 0xCA, 0x61, 0xCC, 0xE4, 0xA3, 0x4A, 0x88, 0x2B, 0x28, 0xB3, 0x82, 0x88, 0xB8, 0xDC, 0x1B,\n0x2F, 0xA6, 0xD6, 0xD4, 0xDD, 0x34, 0x98, 0xD3, 0x6E, 0xCE, 0xBF, 0xFF, 0xF8, 0xE1, 0xF3, 0xE2,\n0x0A, 0x84, 0xA8, 0x21, 0xFF, 0xD2, 0xB0, 0x5E, 0xCB, 0x12, 0x84, 0x93, 0x05, 0xF1, 0x9C, 0x76,\n0xB4, 0x1F, 0xD4, 0xEB, 0x78, 0x40, 0x3F, 0x9C, 0x66, 0x31, 0xBD, 0xCA, 0x0B, 0x83, 0x5E, 0x98,\n0x08, 0xF9, 0xAD, 0xCA, 0xB6, 0x36, 0xFE, 0x0F, 0xE8, 0xD3, 0xF2, 0xEE, 0x20, 0x1D, 0x2F, 0x4F,\n0x7C, 0xA0, 0x21, 0xF2, 0xF1, 0xDF, 0x82, 0x86, 0x1C, 0xBB, 0xB0, 0x10, 0x8C, 0xFE, 0x72, 0xA8,\n0xE4, 0xD9, 0xB1, 0x2C, 0xEA, 0x30, 0x63, 0x54, 0x96, 0x08, 0x71, 0xF9, 0x2A, 0x4A, 0x7A, 0x8F,\n0x43, 0x3F, 0xA0, 0x25, 0xCA, 0x81, 0x43, 0x98, 0xF4, 0x63, 0xEA, 0x05, 0x45, 0x58, 0x79, 0x7F,\n0xCA, 0xFD, 0x29, 0x69, 0x6A, 0xD0, 0x8F, 0x4A, 0x00, 0x7D, 0x2E, 0x5F, 0xA9, 0x1D, 0x74, 0x38,\n0x66, 0xC9, 0xF7, 0xD3, 0x87, 0x0C, 0xFE, 0x63, 0x61, 0xD5, 0xE5, 0xC3, 0x2F, 0xE8, 0xCA, 0xA8,\n0xBB, 0xED, 0xE4, 0x4B, 0x07, 0x01, 0xD1, 0x30, 0x05, 0xE2, 0x9B, 0x79, 0x24, 0xA9, 0xAE, 0x3D,\n0x2F, 0x6B, 0xC8, 0x74, 0xD4, 0xAE, 0x34, 0x64, 0xF0, 0x1D, 0x74, 0x0D, 0xDD, 0xBB, 0x7C, 0xAC,\n0x04, 0x44, 0x70, 0xCA, 0xFA, 0xE1, 0x2C, 0x8B, 0xFA, 0x57, 0x3B, 0x34, 0x22, 0xF4, 0x54, 0x59,\n0xCE, 0xB8, 0x9A, 0x3D, 0x7D, 0x2E, 0x21, 0x43, 0xF1, 0xFD, 0x5B, 0x51, 0x3F, 0x24, 0x84, 0x95,\n0xFF, 0x4C, 0x9F, 0x8B, 0xC8, 0x49, 0x41, 0x4C, 0x88, 0x28, 0x1F, 0xB5, 0x50, 0x3E, 0x88, 0x1C,\n0xF2, 0xEA, 0x07, 0x18, 0xE8, 0xD8, 0xDB, 0x56, 0x13, 0xA5, 0x02, 0x94, 0xB0, 0xE6, 0x4A, 0x4A,\n0xFA, 0x7C, 0x7E, 0x4B, 0xBD, 0xC8, 0x07, 0x99, 0x4B, 0x97, 0xAF, 0x14, 0x0E, 0x3F, 0x24, 0x0D,\n0xC7, 0x24, 0x05, 0x61, 0x35, 0xFD, 0x51, 0x14, 0x11, 0x67, 0xC0, 0xCB, 0x39, 0x16, 0x4F, 0xB1,\n0xCE, 0xE5, 0x5D, 0xEE, 0x85, 0xE9, 0x43, 0xB8, 0x57, 0xB2, 0xD4, 0xEF, 0x9D, 0x33, 0x5A, 0x12,\n0x22, 0xA6, 0x07, 0xCB, 0x1A, 0x32, 0x1D, 0xB8, 0xD3, 0x9C, 0xC5, 0x98, 0x1E, 0xA4, 0xDA, 0xCB,\n0xD6, 0x50, 0x3F, 0xAC, 0xAB, 0x18, 0x1E, 0x15, 0x57, 0xD3, 0x90, 0x3B, 0x02, 0x61, 0x76, 0x88,\n0x53, 0x29, 0x21, 0x10, 0x5E, 0x7C, 0x88, 0xE9, 0x41, 0xCB, 0x7C, 0xAE, 0x7B, 0xD3, 0x7F, 0x94,\n0x4A, 0xCE, 0x25, 0x4C, 0x9F, 0x9B, 0x38, 0x33, 0x8D, 0x66, 0x42, 0xA4, 0xA6, 0x1F, 0x0E, 0xCD,\n0x14, 0x91, 0x6E, 0x1E, 0x12, 0x0F, 0x27, 0x5A, 0xAE, 0xE6, 0xF2, 0xE7, 0x01, 0xC8, 0x1F, 0x5A,\n0xCE, 0x9F, 0x55, 0x6A, 0x20, 0x8A, 0xE2, 0x82, 0x7E, 0x02, 0xED, 0xC4, 0xC6, 0x4A, 0xB0, 0x10,\n0x8C, 0x85, 0xDD, 0x16, 0x42, 0xC2, 0x36, 0xB2, 0xF0, 0x16, 0x9B, 0x55, 0x7C, 0x6A, 0xF1, 0xB0,\n0x10, 0x62, 0xB3, 0x82, 0x16, 0xE2, 0x9F, 0x52, 0x5F, 0x13, 0x49, 0xB1, 0x6C, 0xA1, 0x7E, 0x53,\n0xCF, 0x9C, 0xDC, 0x78, 0xC8, 0x38, 0xE6, 0x9D, 0x80, 0x9E, 0x7B, 0xE7, 0x66, 0xE6, 0xF9, 0x58,\n0xB3, 0x33, 0xF3, 0xCB, 0x49, 0x56, 0xDC, 0x81, 0x85, 0x77, 0x93, 0x8A, 0xCC, 0xC7, 0x00, 0xE7,\n0x2E, 0x74, 0xD5, 0xD6, 0xDD, 0x27, 0x77, 0x70, 0xFA, 0xAE, 0xF0, 0xAB, 0x4F, 0xD3, 0xFD, 0x95,\n0xAF, 0x1B, 0xB7, 0xAE, 0xDC, 0xBA, 0x79, 0xFD, 0xA6, 0xA5, 0xEB, 0xF8, 0x3A, 0xA0, 0xF6, 0xCD,\n0xF5, 0x36, 0x9E, 0x33, 0xD9, 0x14, 0x48, 0xF5, 0x92, 0xBE, 0xB7, 0xED, 0xAB, 0xC1, 0x40, 0xBE,\n0x5A, 0x3A, 0xBC, 0x4D, 0x26, 0x02, 0x4A, 0xBC, 0x88, 0x6F, 0x5D, 0x04, 0x20, 0x3F, 0xB0, 0xEB,\n0x7F, 0x7C, 0xCA, 0xE3, 0x7D, 0xD6, 0x68, 0x21, 0xF8, 0x75, 0xF7, 0xE5, 0x09, 0x08, 0xBE, 0xBD,\n0x24, 0x9D, 0x99, 0x19, 0x6F, 0x21, 0xBE, 0x79, 0x96, 0xEF, 0x38, 0xB0, 0xF2, 0x58, 0x10, 0xEE,\n0xB2, 0xF8, 0x55, 0x8A, 0x4E, 0xF0, 0x8B, 0x4E, 0x6E, 0xDD, 0xBA, 0xB1, 0x60, 0x65, 0x2F, 0x5F,\n0xC6, 0x5E, 0xA0, 0xBC, 0x2D, 0x74, 0x15, 0xE9, 0xEB, 0x2E, 0xFE, 0x0B, 0xEC, 0xDD, 0xDB, 0xAE,\n0xF0, 0x0C, 0xF2, 0xE0, 0xA3, 0x15, 0x29, 0x5F, 0x2E, 0xD3, 0xBA, 0x3A, 0x59, 0x57, 0x5E, 0x5C,\n0xAD, 0xD6, 0xEB, 0x93, 0x93, 0x6B, 0xA7, 0xD7, 0x50, 0xCC, 0x3C, 0x3D, 0x85, 0xC1, 0xEF, 0xCC,\n0x80, 0xDA, 0xEE, 0xFC, 0xBC, 0x3B, 0x87, 0x6D, 0xC0, 0x3B, 0xCE, 0x15, 0xF8, 0x81, 0x7A, 0xC8,\n0x2F, 0xC3, 0x01, 0x77, 0x59, 0xFD, 0x82, 0x38, 0xF4, 0xD8, 0xF1, 0x4B, 0x82, 0xC6, 0xF0, 0x8D,\n0x39, 0x15, 0x7F, 0x38, 0x6D, 0x2C, 0xC9, 0x41, 0xDC, 0x24, 0x4D, 0x38, 0x2D, 0xA4, 0x13, 0x3D,\n0x7E, 0xF7, 0x78, 0xDE, 0xFD, 0x9E, 0x87, 0xA1, 0xC7, 0x8C, 0x71, 0x74, 0x14, 0x9F, 0x31, 0xA7,\n0x48, 0x2F, 0x1E, 0x3E, 0x3E, 0x3D, 0x3D, 0xF1, 0x95, 0x36, 0xC1, 0x7A, 0x5D, 0x41, 0xEB, 0x94,\n0x54, 0x8C, 0x9A, 0xBF, 0xC4, 0xCB, 0x65, 0xC2, 0x5E, 0x76, 0x63, 0x7F, 0xE9, 0xFE, 0xDE, 0xD7,\n0xF6, 0x6C, 0xEB, 0xE7, 0x7E, 0x5B, 0xBF, 0x5E, 0xA2, 0xBA, 0xD9, 0x6C, 0x2A, 0xB4, 0x4D, 0x63,\n0x65, 0xB5, 0x59, 0x25, 0xED, 0xEC, 0xF6, 0xFC, 0xD0, 0x1F, 0x4B, 0xEA, 0xD5, 0x63, 0x8B, 0x3C,\n0x62, 0x93, 0xD9, 0x81, 0x8B, 0xF6, 0xA7, 0x6F, 0xD8, 0xC5, 0x56, 0x0C, 0x5B, 0xFE, 0xE7, 0x42,\n0x91, 0x15, 0x47, 0xF1, 0x57, 0x7C, 0xF0, 0x89, 0x4D, 0x3C, 0xF5, 0xC5, 0x99, 0x89, 0xC3, 0x21,\n0xFF, 0x83, 0xBE, 0x5B, 0xBD, 0xF0, 0x27, 0x1F, 0x6A, 0xB0, 0x62, 0x9E, 0xB8, 0xB4, 0xD8, 0x0D,\n0x8B, 0xB6, 0xCE, 0xD9, 0x36, 0x85, 0x9D, 0x7B, 0x5F, 0xF7, 0x09, 0x88, 0x4F, 0xC8, 0xC7, 0xAD,\n0xAB, 0xB3, 0x6D, 0x5D, 0x2F, 0x23, 0xA4, 0xE1, 0xC6, 0xB7, 0x82, 0x24, 0xBD, 0xC0, 0xDC, 0x3F,\n0x32, 0x63, 0xB7, 0xC2, 0x65, 0xF0, 0xD8, 0x73, 0xB1, 0x09, 0x80, 0xDA, 0xB4, 0xA7, 0x3D, 0x10,\n0x9E, 0x60, 0x25, 0xB6, 0x18, 0xF6, 0xAF, 0x19, 0xCC, 0xA5, 0x80, 0x10, 0x2B, 0x5F, 0x34, 0x9C,\n0x05, 0xEA, 0x7B, 0xBD, 0x75, 0xF2, 0x30, 0x2F, 0x4C, 0x26, 0xB6, 0x3E, 0x67, 0xD6, 0x98, 0xFC,\n0xD5, 0x0E, 0xFB, 0xBE, 0x5A, 0x10, 0x4D, 0xD3, 0xBC, 0x96, 0x6A, 0xE6, 0x8C, 0xB0, 0xD1, 0xB0,\n0x31, 0xFD, 0xD8, 0x2F, 0xD0, 0xBD, 0x4B, 0xF7, 0x50, 0x7D, 0xD9, 0x27, 0x71, 0x56, 0x53, 0x8B,\n0xF8, 0x00, 0x21, 0xA6, 0x2A, 0xB4, 0x1D, 0x72, 0xDE, 0x43, 0x94, 0xE4, 0x63, 0xD5, 0x15, 0x96,\n0xFA, 0x90, 0xF5, 0xC4, 0x07, 0x08, 0x31, 0x45, 0x3E, 0x90, 0xAE, 0xC2, 0x0B, 0x16, 0xF2, 0xE1,\n0x13, 0x02, 0x02, 0xD3, 0x09, 0xD9, 0x27, 0x4F, 0x3E, 0x82, 0x10, 0x03, 0x93, 0x1E, 0x7C, 0x40,\n0x31, 0xC9, 0xA8, 0xCC, 0x99, 0x86, 0x95, 0x1A, 0x10, 0xF1, 0x94, 0xF8, 0xA8, 0x9A, 0xB8, 0xAB,\n0xA8, 0x79, 0x6C, 0xA2, 0x8F, 0x92, 0x05, 0x7F, 0x08, 0xF9, 0x78, 0x80, 0x8F, 0xED, 0xFF, 0x71,\n0x10, 0xBE, 0xB0, 0x7B, 0x1A, 0x75, 0x88, 0xEF, 0xC9, 0x28, 0x98, 0x93, 0x14, 0xD0, 0xC6, 0x48,\n0xF2, 0x41, 0x42, 0x76, 0xC9, 0x1E, 0xDA, 0x94, 0xF4, 0x89, 0x76, 0x32, 0x1E, 0x33, 0xF1, 0x41,\n0x1D, 0x2F, 0xD4, 0x41, 0x7C, 0x0C, 0x1E, 0x62, 0x09, 0xDB, 0x11, 0x5A, 0xC0, 0x07, 0xB5, 0x8C,\n0x0F, 0x12, 0xE2, 0x24, 0x14, 0x9F, 0x91, 0xF9, 0xFE, 0x41, 0x1D, 0x4D, 0x75, 0xAB, 0x81, 0x10,\n0x3A, 0x78, 0x8B, 0x43, 0x4C, 0x7E, 0xB1, 0x05, 0x1F, 0x28, 0xD6, 0xCA, 0xA2, 0x35, 0x49, 0x55,\n0xEE, 0x21, 0xC3, 0x98, 0x4C, 0xE4, 0xFE, 0x41, 0x2D, 0xF0, 0x8F, 0xED, 0xFF, 0x71, 0x90, 0x2D,\n0x63, 0xBF, 0xC4, 0x3F, 0xE4, 0x21, 0x7A, 0x5B, 0x59, 0x2F, 0x84, 0x09, 0x09, 0x61, 0x1E, 0x2F,\n0x4C, 0x94, 0xDD, 0x48, 0x08, 0x11, 0x08, 0x27, 0x69, 0xD1, 0x34, 0xE6, 0x70, 0xC7, 0xE8, 0x46,\n0x01, 0x00, 0x43, 0x3D, 0x65, 0x7B, 0x48, 0x7C, 0x32, 0x4B, 0x42, 0x9C, 0x2D, 0xFC, 0x6D, 0xD4,\n0x32, 0x3E, 0x7C, 0x0F, 0x49, 0x78, 0x30, 0x6C, 0xFF, 0xF0, 0x09, 0xE9, 0xC9, 0x07, 0x15, 0xD6,\n0x01, 0x44, 0x78, 0x60, 0xF7, 0xCF, 0x46, 0x3E, 0x06, 0x42, 0x8C, 0x24, 0x1F, 0x41, 0x88, 0x6C,\n0x62, 0x44, 0xA3, 0xA6, 0x9B, 0xE4, 0xF6, 0x11, 0xF2, 0xFD, 0x03, 0xF1, 0xCF, 0x1D, 0x24, 0xC0,\n0x43, 0x39, 0xB3, 0xFC, 0x43, 0xA2, 0x3B, 0x5E, 0x14, 0x01, 0x48, 0x85, 0xDC, 0xCC, 0x07, 0xCB,\n0x6E, 0x27, 0x42, 0xB0, 0x04, 0xF4, 0x8D, 0x96, 0x57, 0x34, 0x94, 0x18, 0x73, 0xD1, 0x78, 0x71,\n0x13, 0x1F, 0xB8, 0xCB, 0xEA, 0x65, 0x15, 0x48, 0x0D, 0x72, 0x3E, 0x7C, 0x0F, 0x79, 0x1F, 0x3B,\n0x32, 0x29, 0x11, 0xE0, 0xF9, 0x07, 0xE5, 0xE1, 0x21, 0xA4, 0xC8, 0xD7, 0x45, 0x2D, 0xF0, 0xE0,\n0x29, 0x05, 0x03, 0xA5, 0xC6, 0x82, 0xEC, 0xA5, 0x6C, 0x6E, 0xCA, 0xEA, 0x92, 0x44, 0x08, 0x93,\n0x73, 0x5F, 0x76, 0x90, 0xDD, 0x46, 0x51, 0x19, 0x0F, 0x20, 0x0D, 0x95, 0x79, 0xC8, 0xE8, 0x1B,\n0x64, 0x42, 0xC2, 0x98, 0x0A, 0xD9, 0xFE, 0x81, 0x66, 0xEB, 0x12, 0x9A, 0x4F, 0x08, 0x8A, 0xE3,\n0x21, 0xF5, 0x44, 0x7C, 0x73, 0xB3, 0x4A, 0xB3, 0x22, 0xC5, 0x53, 0x46, 0xB9, 0x86, 0x7D, 0x28,\n0xC8, 0xC2, 0xE0, 0x14, 0x6D, 0x30, 0xA1, 0x61, 0x0A, 0xFA, 0x87, 0xD6, 0x94, 0x6B, 0x8F, 0x66,\n0xF8, 0x07, 0x25, 0x42, 0xD0, 0xCB, 0x0A, 0x15, 0x7B, 0x31, 0x36, 0x65, 0x30, 0xC0, 0x52, 0xEE,\n0x4C, 0x65, 0xDA, 0x87, 0xEB, 0x21, 0xC1, 0x07, 0x9B, 0xF1, 0x20, 0x12, 0x7C, 0x48, 0x86, 0x7F,\n0x3C, 0xEB, 0xA4, 0xB8, 0x0A, 0xB1, 0x3C, 0x0A, 0x58, 0xB2, 0xA3, 0x56, 0x2B, 0x9E, 0x43, 0x66,\n0x6A, 0xF0, 0x21, 0x8D, 0xAE, 0x21, 0xC3, 0x60, 0x5F, 0xA3, 0x7A, 0x22, 0xC3, 0x3F, 0xA0, 0x6D,\n0xC4, 0xBF, 0x73, 0x90, 0x40, 0x43, 0x2F, 0x6C, 0xF2, 0x21, 0x0F, 0xB1, 0xEC, 0x23, 0x54, 0xC5,\n0x53, 0x46, 0xA1, 0xE2, 0x80, 0x98, 0x00, 0x82, 0x51, 0xB2, 0x0C, 0xBA, 0x79, 0x30, 0xC1, 0x23,\n0x87, 0x2C, 0x89, 0x0F, 0x09, 0xA3, 0x7E, 0xFE, 0x11, 0xBD, 0xCF, 0xA4, 0x0B, 0x6E, 0x51, 0xE3,\n0x56, 0xCC, 0x3C, 0x84, 0x35, 0xEB, 0xB0, 0xE6, 0x72, 0xF9, 0x10, 0x22, 0x33, 0x36, 0x02, 0x09,\n0x56, 0x87, 0x90, 0x29, 0x1F, 0xC6, 0x67, 0x59, 0xAB, 0x6E, 0xAA, 0xD1, 0x40, 0x52, 0x8C, 0xD7,\n0x26, 0x1E, 0x89, 0x48, 0xF8, 0x87, 0x62, 0x33, 0xBF, 0xB8, 0xCD, 0x28, 0x79, 0x88, 0x1E, 0x3B,\n0xD8, 0xE5, 0x40, 0xA3, 0x4C, 0x86, 0x7F, 0x30, 0x70, 0xFC, 0xE7, 0xCF, 0x20, 0x82, 0x0F, 0x07,\n0x8F, 0x0F, 0x11, 0x32, 0x67, 0x21, 0x9C, 0x89, 0xA9, 0x36, 0x27, 0x25, 0xF3, 0x95, 0x7F, 0x64,\n0x93, 0x9E, 0x56, 0x23, 0x1C, 0x1D, 0x65, 0xD5, 0xCA, 0xF6, 0x31, 0xD4, 0x05, 0x2F, 0xBB, 0xCD,\n0x9A, 0xF9, 0xF8, 0x2A, 0x27, 0xC4, 0xB9, 0xBF, 0x62, 0x7E, 0x12, 0x21, 0x45, 0x4C, 0xC4, 0x87,\n0x64, 0xF2, 0x21, 0xE9, 0xD5, 0xA7, 0x8D, 0x95, 0x8C, 0x2A, 0x51, 0x0C, 0xFF, 0x30, 0x4D, 0x04,\n0x7F, 0xF4, 0xE7, 0x6C, 0xD2, 0xC0, 0x31, 0xD3, 0xB9, 0x71, 0x73, 0x5C, 0x58, 0xAC, 0x40, 0x22,\n0x0F, 0xF9, 0x47, 0xA6, 0xDC, 0x40, 0x34, 0x92, 0x7F, 0x48, 0x06, 0x1F, 0xA6, 0x87, 0xF8, 0x80,\n0x08, 0x0B, 0x44, 0xA0, 0xE2, 0xF1, 0x21, 0xF9, 0xFE, 0xC1, 0x61, 0xD9, 0x82, 0x73, 0xFF, 0x90,\n0x87, 0xC4, 0x72, 0x04, 0x1A, 0x13, 0x44, 0xBA, 0x3F, 0xF5, 0x8C, 0x4C, 0x94, 0x8B, 0x00, 0xF1,\n0x1E, 0x44, 0x74, 0xA5, 0x8E, 0x1E, 0x14, 0xFF, 0xF8, 0xCD, 0xCC, 0x3B, 0x25, 0x99, 0x7C, 0x48,\n0xC1, 0x83, 0x24, 0x5E, 0xA6, 0x78, 0xA0, 0x01, 0xE0, 0xF1, 0x54, 0xF3, 0x0A, 0xF5, 0x25, 0x65,\n0x33, 0x22, 0xF1, 0xF6, 0x2A, 0x57, 0xF8, 0x77, 0xDC, 0x55, 0xB5, 0x23, 0x2B, 0xC4, 0x44, 0x6B,\n0xA5, 0xE0, 0x22, 0x96, 0x17, 0xB7, 0x29, 0x09, 0x44, 0x64, 0x06, 0x12, 0xC3, 0x46, 0x7C, 0x98,\n0x84, 0xEC, 0x29, 0xDF, 0x43, 0x7C, 0x07, 0xD9, 0x4E, 0x82, 0x2F, 0x5D, 0xCF, 0x7C, 0x7C, 0x55,\n0xD2, 0x8C, 0x81, 0x08, 0x10, 0x89, 0xB3, 0x58, 0x4D, 0x2A, 0x5A, 0x09, 0x0F, 0x3D, 0xAA, 0x3F,\n0x12, 0x16, 0x84, 0x64, 0x25, 0x3E, 0x32, 0x42, 0xE4, 0x21, 0x92, 0xF0, 0x98, 0x23, 0x84, 0x47,\n0xE1, 0x32, 0x7E, 0x7C, 0xA5, 0x64, 0x91, 0x64, 0x1D, 0x2C, 0x65, 0x99, 0x7C, 0x48, 0x25, 0xFF,\n0xA0, 0x74, 0xBF, 0xC7, 0x8C, 0x32, 0xF3, 0xF1, 0x55, 0x49, 0x33, 0xFF, 0xFC, 0x51, 0x54, 0x9A,\n0x6F, 0x5D, 0x9D, 0x08, 0x4B, 0x0A, 0xF1, 0x51, 0x20, 0x84, 0x31, 0x5D, 0x5C, 0xF8, 0x47, 0x41,\n0xD5, 0xAF, 0xDA, 0xCE, 0x58, 0x57, 0x6A, 0x18, 0x88, 0xA2, 0xFF, 0xB4, 0x0D, 0x1D, 0x5D, 0xD2,\n0xAE, 0x04, 0xDA, 0x86, 0x06, 0x48, 0x8F, 0x44, 0x81, 0x44, 0x8B, 0xE0, 0x0F, 0x16, 0x21, 0x04,\n0xFC, 0x2C, 0xC9, 0x65, 0xE0, 0xC8, 0x66, 0x32, 0xBE, 0xD6, 0xC2, 0xB5, 0x5F, 0x92, 0xB7, 0x20,\n0xDE, 0xBE, 0xD8, 0x27, 0x77, 0xC6, 0x93, 0x2C, 0xBD, 0x81, 0x70, 0x69, 0x45, 0x16, 0x21, 0x8D,\n0x73, 0x30, 0x9B, 0x1F, 0xCE, 0x41, 0x30, 0x0E, 0x50, 0x39, 0x64, 0xF9, 0x07, 0x72, 0xF1, 0x80,\n0x10, 0x2F, 0xBE, 0x82, 0x90, 0x88, 0x7E, 0xB5, 0xD5, 0x20, 0xC1, 0x47, 0x16, 0x65, 0x91, 0xAA,\n0x77, 0xF6, 0xE1, 0x7B, 0x48, 0x03, 0x06, 0x5D, 0x55, 0xF5, 0x14, 0x92, 0x33, 0x79, 0x7C, 0xA0,\n0xC2, 0x3F, 0x3A, 0x03, 0x29, 0xC2, 0x2C, 0xF8, 0xF0, 0x3C, 0x04, 0x3E, 0xB2, 0x30, 0x2B, 0x82,\n0x2B, 0x59, 0x89, 0xAE, 0x4E, 0x37, 0xF1, 0x51, 0x12, 0xD2, 0x1E, 0xAD, 0xA8, 0xF7, 0x90, 0x2C,\n0x03, 0x59, 0x90, 0x93, 0xA9, 0x43, 0x45, 0xB3, 0x77, 0x57, 0xB1, 0x7C, 0xF7, 0xE0, 0x9F, 0xF7,\n0xFC, 0x03, 0xAD, 0xC0, 0x1F, 0x4D, 0xE5, 0x8F, 0x5C, 0xFB, 0xC2, 0xD6, 0xB3, 0xCE, 0x82, 0xE1,\n0x23, 0x27, 0x44, 0xE3, 0x43, 0xBF, 0xC1, 0x47, 0x4A, 0x48, 0x9A, 0x9E, 0x9B, 0x84, 0xC0, 0x47,\n0xDE, 0xB9, 0x15, 0x51, 0x3D, 0x54, 0xDC, 0x3D, 0x65, 0xF2, 0x81, 0x0C, 0xFF, 0x68, 0x8C, 0xC4,\n0xF2, 0x0F, 0x64, 0xF9, 0x07, 0x92, 0x6F, 0x60, 0xDB, 0xB7, 0x17, 0xC4, 0x57, 0x59, 0x83, 0x8E,\n0x32, 0xBE, 0x22, 0x55, 0x6F, 0x33, 0x90, 0x0A, 0x10, 0xA9, 0x28, 0x9F, 0x77, 0x74, 0x3C, 0xEE,\n0x20, 0xCF, 0xD3, 0x55, 0xAC, 0xD8, 0x2E, 0x49, 0xF9, 0xA3, 0x90, 0xEF, 0x1F, 0x7A, 0xFD, 0xFA,\n0xDB, 0x7D, 0x69, 0x2F, 0x4E, 0x5B, 0x94, 0x0C, 0xA3, 0xAA, 0xAB, 0x0E, 0x1F, 0x27, 0x1E, 0x02,\n0x1D, 0xF0, 0xE1, 0x10, 0x02, 0x1F, 0x15, 0x21, 0x80, 0x41, 0x79, 0xF0, 0x5C, 0x45, 0xF9, 0x23,\n0x57, 0xE2, 0x1F, 0xC5, 0xBB, 0x11, 0x21, 0xB0, 0x81, 0x7F, 0xF8, 0x1E, 0x72, 0x47, 0x69, 0x94,\n0x85, 0x8D, 0xEC, 0x92, 0x7F, 0x14, 0xC3, 0x75, 0xE9, 0xDA, 0xB3, 0x15, 0x65, 0x61, 0x16, 0x5A,\n0xA2, 0x2C, 0x52, 0x29, 0x4F, 0xCF, 0x4F, 0x22, 0xAC, 0xE7, 0x0F, 0xE5, 0x20, 0x00, 0xC7, 0x0F,\n0x00, 0x3D, 0xCF, 0x3F, 0x90, 0xC5, 0x07, 0x0A, 0xD3, 0x88, 0x9D, 0xEC, 0xA3, 0x24, 0x84, 0xAA,\n0x2E, 0xE5, 0x8F, 0x8A, 0x10, 0xE0, 0xA8, 0xF9, 0x90, 0x7E, 0xB8, 0xFE, 0xD1, 0x97, 0x0C, 0x63,\n0x5F, 0x4D, 0x76, 0xA1, 0x90, 0xFA, 0x87, 0xE7, 0x21, 0x2C, 0x5F, 0xE5, 0x5D, 0xE8, 0x58, 0xFE,\n0x81, 0xB2, 0xDB, 0x4B, 0x6A, 0x42, 0x22, 0xB6, 0x8A, 0xF5, 0xC4, 0xD1, 0x68, 0x75, 0x83, 0x5B,\n0x03, 0xB2, 0x92, 0x86, 0xAC, 0xD8, 0x47, 0xA1, 0xAA, 0xFC, 0xC1, 0x94, 0x7E, 0x3C, 0x07, 0xF9,\n0x3B, 0x37, 0xAF, 0xF2, 0x90, 0x65, 0xA8, 0xB6, 0x1E, 0x52, 0xE2, 0x41, 0x1E, 0x42, 0x79, 0xF0,\n0x45, 0x7D, 0xD2, 0x05, 0x86, 0xEE, 0x2E, 0xA5, 0xFC, 0x91, 0x88, 0x92, 0xE1, 0x57, 0x9F, 0x0F,\n0x96, 0x7B, 0x59, 0xDE, 0xAD, 0x11, 0x11, 0x21, 0x50, 0x32, 0x56, 0x8A, 0x87, 0xED, 0x21, 0x67,\n0x78, 0xF0, 0x07, 0x49, 0xFA, 0x61, 0x79, 0x88, 0x76, 0xF7, 0xA1, 0x22, 0xAA, 0x8D, 0xD3, 0x7F,\n0x1D, 0xB5, 0x26, 0xC8, 0x1A, 0x4E, 0x04, 0xCA, 0x04, 0xA4, 0xE7, 0xA5, 0xF2, 0xF2, 0x07, 0x54,\n0xF0, 0xC2, 0x08, 0x12, 0x1C, 0x64, 0x44, 0x09, 0x07, 0x79, 0x1E, 0xB2, 0x18, 0x4A, 0xCA, 0xE7,\n0x95, 0xE2, 0xF4, 0xB1, 0xBA, 0x5B, 0xB7, 0x6B, 0x8C, 0xD1, 0xB1, 0x7D, 0x75, 0x1F, 0x2B, 0xE1,\n0xC3, 0x25, 0x44, 0x04, 0x8C, 0x08, 0x41, 0x9F, 0x1D, 0x99, 0x7C, 0x20, 0xFC, 0x03, 0x12, 0x0A,\n0x13, 0x49, 0xCA, 0x1F, 0x95, 0x02, 0x0E, 0xF8, 0xA8, 0x15, 0xA5, 0x41, 0xF9, 0xC8, 0x60, 0xB0,\n0x28, 0x88, 0x68, 0x0B, 0x1F, 0x95, 0xDE, 0xA2, 0x49, 0x40, 0x9E, 0x27, 0x50, 0x74, 0xCD, 0x70,\n0x90, 0x82, 0x8C, 0xCC, 0x4E, 0x28, 0xAA, 0xC3, 0xC7, 0x1C, 0x21, 0x43, 0xFF, 0xE0, 0xC6, 0xAC,\n0x2B, 0xE9, 0xC7, 0xC0, 0xB8, 0x63, 0x90, 0xD2, 0xFC, 0x23, 0x2F, 0x88, 0xB0, 0x7E, 0x35, 0x43,\n0x88, 0x26, 0x5C, 0xD9, 0xB5, 0xA1, 0xFC, 0x61, 0x69, 0x96, 0x8F, 0xFE, 0xEE, 0xC4, 0x91, 0x89,\n0xB8, 0xE1, 0x15, 0x84, 0x84, 0xBC, 0xB3, 0x79, 0xA0, 0xA1, 0xB3, 0xFF, 0xD2, 0x1C, 0xAD, 0xB8,\n0xF2, 0xAD, 0xA8, 0x98, 0x09, 0x3D, 0x1F, 0x3E, 0x22, 0x67, 0xAB, 0x4D, 0x20, 0x33, 0x9F, 0x83,\n0x94, 0x98, 0x35, 0xE6, 0x04, 0x1F, 0x9E, 0xAC, 0xFC, 0x03, 0x89, 0x90, 0x0B, 0xF9, 0xC7, 0xD8,\n0x43, 0x28, 0x7F, 0x38, 0xC2, 0x3E, 0x2C, 0xC1, 0x87, 0xD7, 0xA3, 0x62, 0xE1, 0xCA, 0xE5, 0x03,\n0x44, 0xF0, 0x0F, 0x87, 0x58, 0xFC, 0x63, 0x02, 0x91, 0x6F, 0xEF, 0xEF, 0xA6, 0x8A, 0xF2, 0x47,\n0xB5, 0xDC, 0xCB, 0x4C, 0xA8, 0x19, 0x81, 0x0F, 0x4B, 0xF0, 0x91, 0x2D, 0xC1, 0x46, 0xE3, 0xB5,\n0x69, 0x07, 0xE9, 0x89, 0xA0, 0x41, 0xC7, 0x1F, 0x0F, 0x59, 0x7C, 0x81, 0x87, 0xA7, 0xAB, 0x15,\n0x5F, 0x91, 0x88, 0x4C, 0xF1, 0xF1, 0x0A, 0x3E, 0x7C, 0x0F, 0xE1, 0x6A, 0x5D, 0xF6, 0x43, 0xF0,\n0xE1, 0x09, 0x3E, 0x4C, 0x55, 0xCB, 0xBB, 0x67, 0x45, 0xF5, 0x2F, 0xBE, 0x0E, 0x8B, 0xBD, 0x23,\n0x23, 0xCC, 0x82, 0x0F, 0x93, 0x90, 0x15, 0x59, 0x1E, 0xB2, 0xD8, 0x12, 0x1E, 0xE9, 0xAD, 0x20,\n0x49, 0x9B, 0x75, 0x10, 0x30, 0x53, 0x3B, 0xF3, 0x14, 0x75, 0xFC, 0xC3, 0x13, 0xE1, 0x95, 0x25,\n0xF1, 0xE1, 0x9E, 0x73, 0x11, 0x32, 0x33, 0xA4, 0x77, 0xF8, 0xB0, 0x14, 0xCB, 0x57, 0xEE, 0x35,\n0x1B, 0x3C, 0x3C, 0xF9, 0x7C, 0x40, 0x88, 0x50, 0x34, 0x5D, 0x04, 0x3E, 0x5C, 0x42, 0xEE, 0x33,\n0xA2, 0xFC, 0xE1, 0x8D, 0x16, 0xF6, 0xE1, 0x30, 0x72, 0x01, 0x0F, 0x4F, 0xA4, 0x1F, 0xF9, 0xD2,\n0x6E, 0xCB, 0x8C, 0xEF, 0x20, 0x43, 0xCC, 0xFA, 0x3C, 0x64, 0x99, 0x93, 0xEF, 0x1F, 0xFA, 0x9B,\n0xF0, 0xE1, 0xE5, 0x21, 0xF7, 0x19, 0xBD, 0xBA, 0x7F, 0x99, 0xBA, 0xA4, 0x7E, 0xF9, 0x90, 0x54,\n0x1C, 0xCA, 0xD5, 0xDE, 0x39, 0xC1, 0x87, 0x29, 0xCB, 0x3F, 0x28, 0xCF, 0xF0, 0xCB, 0x7A, 0x62,\n0x79, 0xD7, 0x12, 0xE5, 0x0F, 0xAF, 0x4D, 0x4D, 0x84, 0xCB, 0x65, 0x99, 0x13, 0xE5, 0x8F, 0x3C,\n0x3F, 0xEF, 0x6D, 0xC0, 0x77, 0x10, 0x30, 0x4B, 0x69, 0x69, 0xFF, 0x0A, 0x06, 0xE2, 0x5A, 0xC8,\n0xD4, 0x75, 0x63, 0xDD, 0x26, 0xCE, 0x39, 0x0E, 0x62, 0x0B, 0x07, 0xB1, 0x24, 0x07, 0xF1, 0x67,\n0xE4, 0xAC, 0x85, 0xCC, 0x3B, 0x88, 0xED, 0x1F, 0xE2, 0x63, 0x12, 0x90, 0x1F, 0x24, 0x20, 0x8E,\n0x88, 0xB0, 0xAC, 0xB6, 0x5D, 0xE7, 0xAE, 0x95, 0x6F, 0xE7, 0x01, 0x81, 0x10, 0x72, 0xE7, 0x93,\n0xA4, 0xE1, 0x11, 0x07, 0x49, 0x5E, 0x03, 0x4D, 0x37, 0x07, 0xE1, 0xE9, 0x10, 0x72, 0x10, 0x87,\n0x8F, 0x6D, 0xBB, 0x4E, 0x45, 0x58, 0x10, 0x62, 0x65, 0xE9, 0xAF, 0x21, 0xC4, 0x0A, 0xB1, 0xE4,\n0x21, 0x36, 0x1F, 0x53, 0x84, 0x7C, 0x3C, 0xF0, 0x00, 0x10, 0x3F, 0x07, 0xF1, 0x23, 0xAC, 0x39,\n0x42, 0x28, 0xA1, 0xCF, 0xE4, 0x20, 0x3E, 0x20, 0xDB, 0xA6, 0x21, 0xB6, 0xF9, 0x20, 0xC6, 0xF2,\n0xD2, 0xF4, 0x40, 0xE4, 0x6C, 0x42, 0xB7, 0x7F, 0xE8, 0x3B, 0x08, 0x06, 0x51, 0xC7, 0x58, 0xBB,\n0x84, 0x07, 0x84, 0x58, 0x7C, 0x88, 0x90, 0x8B, 0x79, 0x52, 0xAE, 0x3B, 0x1E, 0xEF, 0xD6, 0x19,\n0x3E, 0x20, 0xC4, 0xCA, 0x40, 0x20, 0xC4, 0x5C, 0xC5, 0x12, 0x21, 0x2E, 0x1F, 0xFF, 0x7D, 0x15,\n0x4B, 0x72, 0x53, 0x22, 0xBD, 0xF9, 0x09, 0x44, 0x5E, 0xFF, 0x38, 0x34, 0xC3, 0x87, 0x08, 0xB1,\n0xF1, 0x58, 0xB7, 0x2B, 0x84, 0x18, 0x7C, 0x4C, 0x27, 0xE9, 0x7B, 0xCF, 0x6A, 0xE8, 0xCF, 0xD3,\n0x66, 0x3A, 0x08, 0x10, 0x8C, 0x62, 0x2C, 0xED, 0x77, 0x36, 0x40, 0xC4, 0xE4, 0x03, 0x0F, 0xF1,\n0xFC, 0x63, 0xDB, 0xB7, 0x6E, 0x7C, 0x15, 0xB2, 0xFD, 0x43, 0x7A, 0x6F, 0xE6, 0x21, 0x9A, 0x5D,\n0x51, 0x47, 0xB7, 0xF9, 0xF0, 0x09, 0x11, 0x1B, 0x10, 0xE2, 0x17, 0x42, 0x5C, 0xFF, 0xD0, 0x7B,\n0xF7, 0x01, 0xB9, 0xFF, 0x80, 0x10, 0x9B, 0x0F, 0xDF, 0x43, 0xD6, 0x2D, 0x46, 0xF7, 0x62, 0x4C,\n0x04, 0xF1, 0x21, 0xF9, 0x78, 0x74, 0x84, 0x30, 0x6D, 0xD3, 0xEA, 0xB7, 0xED, 0x20, 0x19, 0x16,\n0xA7, 0x9C, 0x1C, 0xEF, 0x21, 0xBA, 0xCF, 0x87, 0x08, 0x21, 0x11, 0x29, 0xD3, 0x8F, 0xED, 0xE8,\n0xEB, 0xDE, 0xDC, 0x2A, 0x88, 0xEA, 0x20, 0xDB, 0x53, 0xDB, 0x3F, 0x64, 0x21, 0xF7, 0x1F, 0x0E,\n0x22, 0x1F, 0x42, 0x5F, 0x0E, 0x42, 0xFE, 0x5B, 0x25, 0x5D, 0x8C, 0xF8, 0x7C, 0xF8, 0x1E, 0xF2,\n0x01, 0x39, 0x78, 0x7C, 0x8F, 0x93, 0xE3, 0x12, 0x12, 0xA7, 0xFE, 0x90, 0x45, 0xC8, 0x2F, 0x38,\n0x14, 0x65, 0x39, 0x53, 0x41, 0x7C, 0x48, 0x73, 0x7C, 0x2C, 0x5C, 0xCF, 0xB3, 0xA4, 0x01, 0x64,\n0x1C, 0x07, 0x99, 0xAF, 0x15, 0x2E, 0x00, 0xF2, 0xDC, 0xE5, 0x43, 0x1A, 0x2E, 0xF6, 0xEA, 0xA4,\n0x89, 0x0D, 0x39, 0xF1, 0x3B, 0x33, 0xBE, 0x42, 0xB6, 0x7F, 0x10, 0x66, 0x19, 0x7C, 0xC4, 0xD6,\n0xF0, 0x10, 0x81, 0xE1, 0x13, 0x22, 0x2C, 0xD4, 0x25, 0x17, 0x0F, 0x33, 0xCA, 0xDA, 0x9B, 0xDE,\n0xFB, 0x1B, 0x75, 0x87, 0x10, 0xA1, 0x21, 0x59, 0x84, 0x04, 0x1B, 0xDA, 0x39, 0x61, 0x96, 0x86,\n0x56, 0x88, 0x10, 0x66, 0xD5, 0x0B, 0xBC, 0x93, 0xB7, 0x9A, 0xB4, 0x84, 0x60, 0x16, 0xE9, 0xC4,\n0x46, 0x73, 0x0E, 0x52, 0x16, 0x56, 0x94, 0x9E, 0x37, 0xDD, 0xE2, 0xC3, 0xF5, 0x90, 0xC0, 0x03,\n0x0B, 0xD9, 0x0C, 0xFF, 0xE0, 0xD3, 0x60, 0xB7, 0x21, 0x21, 0xF8, 0x87, 0x47, 0x48, 0xE0, 0xB1,\n0x4F, 0x30, 0x6D, 0xBC, 0xF8, 0x4A, 0x33, 0xF8, 0x60, 0xC9, 0xF4, 0x0F, 0xA2, 0x2C, 0xD3, 0x3E,\n0xF8, 0x11, 0x83, 0x8A, 0x8C, 0xDE, 0x37, 0xB2, 0x8A, 0xE8, 0x20, 0xF2, 0xDE, 0xB2, 0x8F, 0xBD,\n0x85, 0xAE, 0x43, 0xFB, 0x38, 0xFA, 0xBA, 0xED, 0x5A, 0x87, 0x1E, 0x72, 0x59, 0xE1, 0x43, 0xB2,\n0xFC, 0x83, 0x9E, 0xB0, 0xD1, 0xEC, 0x1F, 0x7A, 0x1E, 0x44, 0x0D, 0x41, 0xA3, 0xFC, 0xC3, 0x27,\n0x84, 0xFC, 0x5C, 0x5F, 0x3A, 0x84, 0x90, 0x94, 0x0F, 0x9D, 0x45, 0x49, 0x47, 0xEB, 0x36, 0xE4,\n0x43, 0xC2, 0xE9, 0x2D, 0xFB, 0x60, 0x26, 0x0C, 0xF9, 0x40, 0x42, 0xA5, 0x08, 0xFD, 0xF1, 0x0F,\n0x34, 0xE2, 0x03, 0x07, 0x89, 0x4D, 0x2D, 0x9E, 0xBA, 0x95, 0x46, 0xCB, 0xBD, 0x62, 0x1B, 0xC4,\n0x47, 0x84, 0x40, 0x47, 0xC8, 0x4B, 0x3F, 0xE0, 0x64, 0x90, 0x7E, 0x08, 0x0C, 0x0D, 0xEA, 0x6A,\n0x78, 0x08, 0x53, 0xC6, 0x43, 0xA4, 0x9F, 0x96, 0x14, 0xD4, 0x69, 0x0F, 0xDD, 0x8B, 0x85, 0x72,\n0x33, 0x8A, 0x3B, 0x79, 0xF5, 0x46, 0x9A, 0x6E, 0xD8, 0x87, 0xEE, 0xE9, 0x1F, 0x7A, 0x08, 0xE9,\n0x79, 0x34, 0xB9, 0xC8, 0x20, 0xBC, 0x8A, 0xFB, 0xDD, 0xF1, 0x7A, 0xCB, 0x3F, 0x38, 0x18, 0xF1,\n0xF1, 0x26, 0xBE, 0x7E, 0xC3, 0x52, 0x04, 0x59, 0x88, 0xA7, 0x0A, 0xBD, 0xFC, 0x1C, 0x79, 0xFE,\n0x81, 0x87, 0x14, 0x7C, 0x00, 0x06, 0xF2, 0xF8, 0x00, 0x93, 0x92, 0x8F, 0x78, 0x88, 0x53, 0xFB,\n0xE1, 0x62, 0xD6, 0x11, 0x12, 0x88, 0x0A, 0x0D, 0x6A, 0x1C, 0x9C, 0x4F, 0x05, 0xF8, 0xE0, 0x93,\n0xE3, 0x3C, 0x3E, 0xE8, 0x55, 0xC1, 0x02, 0xCD, 0x3A, 0x08, 0x2C, 0xF4, 0x8D, 0xF8, 0xCA, 0xF7,\n0x10, 0x3E, 0x21, 0xEF, 0x38, 0x1C, 0x2E, 0xF7, 0xCA, 0x37, 0xE2, 0x04, 0xAA, 0xEB, 0xA8, 0x5E,\n0xBE, 0x92, 0x6E, 0xA0, 0x52, 0x3C, 0x93, 0x8E, 0x2C, 0x42, 0x3E, 0x20, 0x48, 0x39, 0x21, 0x24,\n0xEA, 0x83, 0x13, 0x1E, 0x42, 0x7E, 0x4E, 0xAF, 0x08, 0x09, 0xE0, 0x4C, 0x0F, 0xD9, 0x1B, 0xEB,\n0x0B, 0x96, 0x87, 0x80, 0x85, 0x65, 0x22, 0xD8, 0x36, 0x17, 0x27, 0x11, 0x52, 0xC5, 0x57, 0xBF,\n0xC8, 0x88, 0x23, 0x3C, 0xA4, 0xE0, 0x83, 0x47, 0xD2, 0x6B, 0x44, 0xD2, 0x99, 0x09, 0x19, 0xF6,\n0x33, 0xB7, 0x38, 0x88, 0x81, 0x88, 0xD4, 0x3D, 0x91, 0x9E, 0xF7, 0xD1, 0x5D, 0xBC, 0x0B, 0x2E,\n0x42, 0xA6, 0x9E, 0xAE, 0x5F, 0x71, 0x79, 0x51, 0xA7, 0x20, 0x92, 0xFA, 0x07, 0x8F, 0x23, 0x48,\n0xB5, 0x87, 0x00, 0x45, 0x6C, 0x63, 0x3F, 0xF2, 0x8F, 0x2F, 0x5E, 0x94, 0x75, 0x08, 0x44, 0x98,\n0xC4, 0xA6, 0x7F, 0xA0, 0x8F, 0x8E, 0x7F, 0xD4, 0x89, 0xC8, 0xDE, 0xF4, 0x66, 0xE3, 0xFD, 0x6B,\n0x37, 0x30, 0x11, 0xCE, 0x4E, 0xAB, 0xFA, 0x49, 0x10, 0x74, 0x2B, 0x3D, 0x64, 0x1F, 0xC6, 0x6B,\n0xE0, 0x41, 0x8C, 0xB0, 0x51, 0x54, 0x4F, 0xCB, 0x1F, 0x68, 0xC1, 0x44, 0x6C, 0xFF, 0x50, 0x2D,\n0x22, 0x09, 0x86, 0xE6, 0x9F, 0x28, 0xF4, 0x6B, 0xEA, 0xFC, 0x6C, 0xCB, 0x43, 0xB8, 0x02, 0x90,\n0xA3, 0xE3, 0x21, 0x59, 0x79, 0x30, 0x32, 0x73, 0xCC, 0x23, 0x3C, 0x65, 0xE0, 0x1F, 0xFD, 0xFF,\n0xDC, 0x32, 0xCA, 0x3F, 0xAC, 0x4C, 0xBD, 0x75, 0x8F, 0xA8, 0x86, 0x48, 0x56, 0xFA, 0x81, 0x0C,\n0xFB, 0xA8, 0x4D, 0x04, 0x3E, 0x20, 0x2F, 0x0E, 0xA5, 0x0C, 0x10, 0xC1, 0xD1, 0xAA, 0xA8, 0x18,\n0x7E, 0xD0, 0xC9, 0x20, 0xC0, 0x1A, 0x12, 0xD2, 0x9C, 0xF8, 0x9B, 0x76, 0xAC, 0x65, 0xA5, 0xFE,\n0x41, 0x74, 0xC0, 0xD8, 0x46, 0xAA, 0x9E, 0xF0, 0x81, 0x7D, 0x68, 0xFA, 0x20, 0x0B, 0x0F, 0x3A,\n0x7E, 0xD1, 0x38, 0x89, 0xE7, 0x20, 0xB5, 0xAC, 0xF0, 0x8A, 0x5E, 0xF8, 0x07, 0x57, 0x00, 0x40,\n0x21, 0xFA, 0x6C, 0xF8, 0x08, 0x0F, 0x69, 0xDA, 0xF1, 0xF2, 0xF5, 0x84, 0x8F, 0x17, 0xD1, 0x7B,\n0x56, 0x2C, 0xFF, 0x00, 0x94, 0x13, 0x3C, 0xD8, 0x34, 0xC9, 0x88, 0x08, 0x19, 0xFB, 0x07, 0x53,\n0xD8, 0xB3, 0x0F, 0xE4, 0xE4, 0x1F, 0xB5, 0x87, 0x7C, 0x6C, 0x99, 0x08, 0x33, 0xD9, 0xBB, 0x94,\n0xDA, 0x47, 0x0F, 0x07, 0xDF, 0x9D, 0xF9, 0x07, 0x58, 0x68, 0x07, 0x21, 0x67, 0xE5, 0x73, 0x16,\n0x28, 0x89, 0xB7, 0x44, 0x48, 0x5E, 0xFE, 0x40, 0xFD, 0x07, 0xF3, 0xFA, 0x7C, 0x2C, 0x22, 0xC4,\n0xF0, 0x0F, 0xDB, 0x41, 0x8A, 0x7B, 0x50, 0x96, 0x39, 0x42, 0xBA, 0x2B, 0x40, 0xA4, 0x5A, 0xDA,\n0xF4, 0x45, 0x75, 0xD1, 0xA2, 0x53, 0x48, 0x88, 0x15, 0x67, 0x55, 0x81, 0x2A, 0x05, 0x11, 0x6E,\n0xDF, 0x6D, 0x75, 0x63, 0x80, 0x24, 0xC3, 0x3F, 0x98, 0x01, 0x09, 0x21, 0x2D, 0x15, 0xB8, 0x09,\n0x1E, 0x92, 0xF8, 0x07, 0x5B, 0xF6, 0x39, 0x21, 0xB0, 0xE0, 0x78, 0x08, 0xFE, 0x01, 0x75, 0xDA,\n0xE1, 0x21, 0x49, 0xF9, 0x83, 0xF7, 0xAF, 0x5E, 0x9A, 0x08, 0xF6, 0x61, 0x79, 0x48, 0x1F, 0x58,\n0x71, 0xDE, 0x75, 0xD8, 0x13, 0x82, 0x6D, 0x44, 0x86, 0x1E, 0x07, 0x41, 0x4A, 0x3F, 0x15, 0xF0,\n0x0F, 0xE6, 0x4F, 0xE5, 0x21, 0xF9, 0x7C, 0x64, 0x31, 0x0B, 0x42, 0x66, 0x3E, 0x7A, 0xD4, 0x51,\n0x5F, 0x3E, 0xAF, 0xFB, 0xB9, 0x7F, 0x04, 0xFD, 0x27, 0x05, 0x11, 0xFC, 0x03, 0x30, 0x8E, 0x2F,\n0x75, 0x1D, 0x2B, 0x82, 0x6D, 0x01, 0xC1, 0xDE, 0xFB, 0x50, 0x38, 0xF7, 0x90, 0x0E, 0x08, 0x8E,\n0x75, 0x40, 0x51, 0x1D, 0x3E, 0x9A, 0xD0, 0x5D, 0x47, 0x24, 0xBC, 0x14, 0x44, 0xE0, 0x03, 0x01,\n0x09, 0xC7, 0x89, 0x7F, 0xA8, 0x9F, 0xC9, 0xF2, 0x0F, 0x04, 0x21, 0x22, 0x37, 0x72, 0x72, 0xC0,\n0x06, 0x8D, 0xCC, 0x43, 0xAA, 0x8B, 0x87, 0xB6, 0x3D, 0x1E, 0x5B, 0x9B, 0x9B, 0x6B, 0xF3, 0x89,\n0x81, 0xE8, 0x08, 0x89, 0xCB, 0x5C, 0x93, 0x82, 0xD0, 0x28, 0x88, 0xB4, 0xE9, 0x39, 0x5A, 0xBB,\n0xEF, 0x3D, 0xFF, 0xA0, 0xF7, 0xA9, 0xB4, 0xEF, 0x20, 0x3E, 0x20, 0xF8, 0x87, 0x4B, 0x48, 0xEB,\n0x8F, 0xFA, 0x35, 0x69, 0x6D, 0xAA, 0xDE, 0x56, 0xCF, 0x7F, 0x1F, 0xB1, 0x8E, 0x15, 0xAF, 0x74,\n0xFE, 0xC1, 0x18, 0x01, 0x0B, 0x5E, 0xBF, 0x35, 0x84, 0xBC, 0x67, 0xAC, 0x51, 0x87, 0x4C, 0xC7,\n0x07, 0x02, 0x12, 0x75, 0x8A, 0xEA, 0x9D, 0x7F, 0xA8, 0x13, 0x66, 0xB5, 0x3A, 0x2B, 0x0F, 0x16,\n0x1E, 0x52, 0xE4, 0x1F, 0x1C, 0xE1, 0x21, 0x20, 0x12, 0xF9, 0x79, 0xB2, 0x86, 0xF5, 0x06, 0x50,\n0xF2, 0xE5, 0x5D, 0xC7, 0x43, 0x9A, 0x70, 0x16, 0x1B, 0xE1, 0x95, 0xEE, 0x09, 0xDC, 0x66, 0x6C,\n0x05, 0x07, 0x43, 0x4B, 0x51, 0xBD, 0x2F, 0x9F, 0x2F, 0x2B, 0x8D, 0xEF, 0x88, 0xB2, 0x1C, 0x3E,\n0xF0, 0x10, 0xDA, 0x3F, 0xFF, 0x74, 0x77, 0x09, 0xFB, 0x30, 0xA3, 0xAC, 0x3E, 0xC5, 0xC2, 0x40,\n0x7A, 0x0F, 0x61, 0xF9, 0x2A, 0xF2, 0x36, 0xF6, 0xB8, 0x48, 0x93, 0xA9, 0xC7, 0x13, 0xB6, 0x78,\n0x46, 0xCB, 0x09, 0x62, 0x4C, 0x53, 0x22, 0x7A, 0x50, 0xF0, 0x10, 0xAE, 0xB6, 0x84, 0xEE, 0xAC,\n0x99, 0xC6, 0x96, 0xE5, 0xDE, 0x44, 0x49, 0x44, 0xE4, 0xF9, 0x07, 0x4A, 0xEC, 0x03, 0x1E, 0xC0,\n0x23, 0x29, 0x88, 0x28, 0x24, 0xC4, 0xEC, 0x50, 0xBC, 0x28, 0xB5, 0x7C, 0xE8, 0x0B, 0x25, 0x98,\n0xF4, 0xE5, 0x8F, 0xF0, 0x8B, 0xE6, 0xD4, 0xF3, 0x1D, 0x84, 0x10, 0x29, 0x33, 0x94, 0x31, 0xB2,\n0x7F, 0x5E, 0xA4, 0x20, 0x92, 0xF8, 0x07, 0xCB, 0x9F, 0xC8, 0xE3, 0x83, 0x4E, 0x02, 0xE2, 0xE9,\n0xC9, 0x4F, 0x06, 0x78, 0xF0, 0xB8, 0x1C, 0xC0, 0x2B, 0x2E, 0x00, 0x00, 0x00, 0x00, 0x49, 0x45,\n0x4E, 0x44, 0xAE, 0x42, 0x60, 0x82\n};"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/Classes/runtime/Protos.pb.cc",
    "content": "// Generated by the protocol buffer compiler.  DO NOT EDIT!\n// source: Protos.proto\n\n#define INTERNAL_SUPPRESS_PROTOBUF_FIELD_DEPRECATION\n#include \"Protos.pb.h\"\n\n#include <algorithm>\n\n#include <google/protobuf/stubs/common.h>\n#include <google/protobuf/stubs/once.h>\n#include <google/protobuf/io/coded_stream.h>\n#include <google/protobuf/wire_format_lite_inl.h>\n// @@protoc_insertion_point(includes)\n\nnamespace runtime {\n\nvoid protobuf_ShutdownFile_Protos_2eproto() {\n  delete FileSendProtos::default_instance_;\n  delete FileSendComplete::default_instance_;\n}\n\n#ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER\nvoid protobuf_AddDesc_Protos_2eproto_impl() {\n  GOOGLE_PROTOBUF_VERIFY_VERSION;\n\n#else\nvoid protobuf_AddDesc_Protos_2eproto() {\n  static bool already_here = false;\n  if (already_here) return;\n  already_here = true;\n  GOOGLE_PROTOBUF_VERIFY_VERSION;\n\n#endif\n  FileSendProtos::default_instance_ = new FileSendProtos();\n  FileSendComplete::default_instance_ = new FileSendComplete();\n  FileSendProtos::default_instance_->InitAsDefaultInstance();\n  FileSendComplete::default_instance_->InitAsDefaultInstance();\n  ::google::protobuf::internal::OnShutdown(&protobuf_ShutdownFile_Protos_2eproto);\n}\n\n#ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER\nGOOGLE_PROTOBUF_DECLARE_ONCE(protobuf_AddDesc_Protos_2eproto_once_);\nvoid protobuf_AddDesc_Protos_2eproto() {\n  ::google::protobuf::::google::protobuf::GoogleOnceInit(&protobuf_AddDesc_Protos_2eproto_once_,\n                 &protobuf_AddDesc_Protos_2eproto_impl);\n}\n#else\n// Force AddDescriptors() to be called at static initialization time.\nstruct StaticDescriptorInitializer_Protos_2eproto {\n  StaticDescriptorInitializer_Protos_2eproto() {\n    protobuf_AddDesc_Protos_2eproto();\n  }\n} static_descriptor_initializer_Protos_2eproto_;\n#endif\n\n// ===================================================================\n\nbool FileSendProtos_CompressType_IsValid(int value) {\n  switch(value) {\n    case 0:\n    case 1:\n      return true;\n    default:\n      return false;\n  }\n}\n\n#ifndef _MSC_VER\nconst FileSendProtos_CompressType FileSendProtos::NO_COMPRESS;\nconst FileSendProtos_CompressType FileSendProtos::ZIP;\nconst FileSendProtos_CompressType FileSendProtos::CompressType_MIN;\nconst FileSendProtos_CompressType FileSendProtos::CompressType_MAX;\nconst int FileSendProtos::CompressType_ARRAYSIZE;\n#endif  // _MSC_VER\nbool FileSendProtos_VerifyMode_IsValid(int value) {\n  switch(value) {\n    case 0:\n    case 1:\n    case 2:\n      return true;\n    default:\n      return false;\n  }\n}\n\n#ifndef _MSC_VER\nconst FileSendProtos_VerifyMode FileSendProtos::NO_VERIFY;\nconst FileSendProtos_VerifyMode FileSendProtos::CRC;\nconst FileSendProtos_VerifyMode FileSendProtos::MD5;\nconst FileSendProtos_VerifyMode FileSendProtos::VerifyMode_MIN;\nconst FileSendProtos_VerifyMode FileSendProtos::VerifyMode_MAX;\nconst int FileSendProtos::VerifyMode_ARRAYSIZE;\n#endif  // _MSC_VER\n#ifndef _MSC_VER\nconst int FileSendProtos::kFileNameFieldNumber;\nconst int FileSendProtos::kPackageSeqFieldNumber;\nconst int FileSendProtos::kPackageSumFieldNumber;\nconst int FileSendProtos::kContentSizeFieldNumber;\nconst int FileSendProtos::kCompressTypeFieldNumber;\nconst int FileSendProtos::kModifiedTimeFieldNumber;\nconst int FileSendProtos::kVerifyModeFieldNumber;\nconst int FileSendProtos::kVerifySignFieldNumber;\nconst int FileSendProtos::kUncompressSizeFieldNumber;\n#endif  // !_MSC_VER\n\nFileSendProtos::FileSendProtos()\n  : ::google::protobuf::MessageLite() {\n  SharedCtor();\n}\n\nvoid FileSendProtos::InitAsDefaultInstance() {\n}\n\nFileSendProtos::FileSendProtos(const FileSendProtos& from)\n  : ::google::protobuf::MessageLite() {\n  SharedCtor();\n  MergeFrom(from);\n}\n\nvoid FileSendProtos::SharedCtor() {\n  _cached_size_ = 0;\n  file_name_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);\n  package_seq_ = 0;\n  package_sum_ = 0;\n  content_size_ = GOOGLE_ULONGLONG(0);\n  compress_type_ = 0;\n  modified_time_ = GOOGLE_ULONGLONG(0);\n  verify_mode_ = 0;\n  verify_sign_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);\n  uncompress_size_ = GOOGLE_ULONGLONG(0);\n  ::memset(_has_bits_, 0, sizeof(_has_bits_));\n}\n\nFileSendProtos::~FileSendProtos() {\n  SharedDtor();\n}\n\nvoid FileSendProtos::SharedDtor() {\n  if (file_name_ != &::google::protobuf::internal::kEmptyString) {\n    delete file_name_;\n  }\n  if (verify_sign_ != &::google::protobuf::internal::kEmptyString) {\n    delete verify_sign_;\n  }\n  #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER\n  if (this != &default_instance()) {\n  #else\n  if (this != default_instance_) {\n  #endif\n  }\n}\n\nvoid FileSendProtos::SetCachedSize(int size) const {\n  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();\n  _cached_size_ = size;\n  GOOGLE_SAFE_CONCURRENT_WRITES_END();\n}\nconst FileSendProtos& FileSendProtos::default_instance() {\n#ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER\n  protobuf_AddDesc_Protos_2eproto();\n#else\n  if (default_instance_ == NULL) protobuf_AddDesc_Protos_2eproto();\n#endif\n  return *default_instance_;\n}\n\nFileSendProtos* FileSendProtos::default_instance_ = NULL;\n\nFileSendProtos* FileSendProtos::New() const {\n  return new FileSendProtos;\n}\n\nvoid FileSendProtos::Clear() {\n  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {\n    if (has_file_name()) {\n      if (file_name_ != &::google::protobuf::internal::kEmptyString) {\n        file_name_->clear();\n      }\n    }\n    package_seq_ = 0;\n    package_sum_ = 0;\n    content_size_ = GOOGLE_ULONGLONG(0);\n    compress_type_ = 0;\n    modified_time_ = GOOGLE_ULONGLONG(0);\n    verify_mode_ = 0;\n    if (has_verify_sign()) {\n      if (verify_sign_ != &::google::protobuf::internal::kEmptyString) {\n        verify_sign_->clear();\n      }\n    }\n  }\n  if (_has_bits_[8 / 32] & (0xffu << (8 % 32))) {\n    uncompress_size_ = GOOGLE_ULONGLONG(0);\n  }\n  ::memset(_has_bits_, 0, sizeof(_has_bits_));\n}\n\nbool FileSendProtos::MergePartialFromCodedStream(\n    ::google::protobuf::io::CodedInputStream* input) {\n#define DO_(EXPRESSION) if (!(EXPRESSION)) return false\n  ::google::protobuf::uint32 tag;\n  while ((tag = input->ReadTag()) != 0) {\n    switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {\n      // required string file_name = 1;\n      case 1: {\n        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==\n            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {\n          DO_(::google::protobuf::internal::WireFormatLite::ReadString(\n                input, this->mutable_file_name()));\n        } else {\n          goto handle_uninterpreted;\n        }\n        if (input->ExpectTag(16)) goto parse_package_seq;\n        break;\n      }\n\n      // required int32 package_seq = 2;\n      case 2: {\n        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==\n            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {\n         parse_package_seq:\n          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<\n                   ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(\n                 input, &package_seq_)));\n          set_has_package_seq();\n        } else {\n          goto handle_uninterpreted;\n        }\n        if (input->ExpectTag(24)) goto parse_package_sum;\n        break;\n      }\n\n      // required int32 package_sum = 3;\n      case 3: {\n        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==\n            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {\n         parse_package_sum:\n          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<\n                   ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(\n                 input, &package_sum_)));\n          set_has_package_sum();\n        } else {\n          goto handle_uninterpreted;\n        }\n        if (input->ExpectTag(32)) goto parse_content_size;\n        break;\n      }\n\n      // required uint64 content_size = 4;\n      case 4: {\n        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==\n            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {\n         parse_content_size:\n          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<\n                   ::google::protobuf::uint64, ::google::protobuf::internal::WireFormatLite::TYPE_UINT64>(\n                 input, &content_size_)));\n          set_has_content_size();\n        } else {\n          goto handle_uninterpreted;\n        }\n        if (input->ExpectTag(40)) goto parse_compress_type;\n        break;\n      }\n\n      // required .runtime.FileSendProtos.CompressType compress_type = 5;\n      case 5: {\n        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==\n            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {\n         parse_compress_type:\n          int value;\n          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<\n                   int, ::google::protobuf::internal::WireFormatLite::TYPE_ENUM>(\n                 input, &value)));\n          if (::runtime::FileSendProtos_CompressType_IsValid(value)) {\n            set_compress_type(static_cast< ::runtime::FileSendProtos_CompressType >(value));\n          }\n        } else {\n          goto handle_uninterpreted;\n        }\n        if (input->ExpectTag(48)) goto parse_modified_time;\n        break;\n      }\n\n      // optional uint64 modified_time = 6;\n      case 6: {\n        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==\n            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {\n         parse_modified_time:\n          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<\n                   ::google::protobuf::uint64, ::google::protobuf::internal::WireFormatLite::TYPE_UINT64>(\n                 input, &modified_time_)));\n          set_has_modified_time();\n        } else {\n          goto handle_uninterpreted;\n        }\n        if (input->ExpectTag(56)) goto parse_verify_mode;\n        break;\n      }\n\n      // optional .runtime.FileSendProtos.VerifyMode verify_mode = 7;\n      case 7: {\n        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==\n            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {\n         parse_verify_mode:\n          int value;\n          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<\n                   int, ::google::protobuf::internal::WireFormatLite::TYPE_ENUM>(\n                 input, &value)));\n          if (::runtime::FileSendProtos_VerifyMode_IsValid(value)) {\n            set_verify_mode(static_cast< ::runtime::FileSendProtos_VerifyMode >(value));\n          }\n        } else {\n          goto handle_uninterpreted;\n        }\n        if (input->ExpectTag(66)) goto parse_verify_sign;\n        break;\n      }\n\n      // optional string verify_sign = 8;\n      case 8: {\n        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==\n            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {\n         parse_verify_sign:\n          DO_(::google::protobuf::internal::WireFormatLite::ReadString(\n                input, this->mutable_verify_sign()));\n        } else {\n          goto handle_uninterpreted;\n        }\n        if (input->ExpectTag(72)) goto parse_uncompress_size;\n        break;\n      }\n\n      // optional uint64 uncompress_size = 9;\n      case 9: {\n        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==\n            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {\n         parse_uncompress_size:\n          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<\n                   ::google::protobuf::uint64, ::google::protobuf::internal::WireFormatLite::TYPE_UINT64>(\n                 input, &uncompress_size_)));\n          set_has_uncompress_size();\n        } else {\n          goto handle_uninterpreted;\n        }\n        if (input->ExpectAtEnd()) return true;\n        break;\n      }\n\n      default: {\n      handle_uninterpreted:\n        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==\n            ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {\n          return true;\n        }\n        DO_(::google::protobuf::internal::WireFormatLite::SkipField(input, tag));\n        break;\n      }\n    }\n  }\n  return true;\n#undef DO_\n}\n\nvoid FileSendProtos::SerializeWithCachedSizes(\n    ::google::protobuf::io::CodedOutputStream* output) const {\n  // required string file_name = 1;\n  if (has_file_name()) {\n    ::google::protobuf::internal::WireFormatLite::WriteString(\n      1, this->file_name(), output);\n  }\n\n  // required int32 package_seq = 2;\n  if (has_package_seq()) {\n    ::google::protobuf::internal::WireFormatLite::WriteInt32(2, this->package_seq(), output);\n  }\n\n  // required int32 package_sum = 3;\n  if (has_package_sum()) {\n    ::google::protobuf::internal::WireFormatLite::WriteInt32(3, this->package_sum(), output);\n  }\n\n  // required uint64 content_size = 4;\n  if (has_content_size()) {\n    ::google::protobuf::internal::WireFormatLite::WriteUInt64(4, this->content_size(), output);\n  }\n\n  // required .runtime.FileSendProtos.CompressType compress_type = 5;\n  if (has_compress_type()) {\n    ::google::protobuf::internal::WireFormatLite::WriteEnum(\n      5, this->compress_type(), output);\n  }\n\n  // optional uint64 modified_time = 6;\n  if (has_modified_time()) {\n    ::google::protobuf::internal::WireFormatLite::WriteUInt64(6, this->modified_time(), output);\n  }\n\n  // optional .runtime.FileSendProtos.VerifyMode verify_mode = 7;\n  if (has_verify_mode()) {\n    ::google::protobuf::internal::WireFormatLite::WriteEnum(\n      7, this->verify_mode(), output);\n  }\n\n  // optional string verify_sign = 8;\n  if (has_verify_sign()) {\n    ::google::protobuf::internal::WireFormatLite::WriteString(\n      8, this->verify_sign(), output);\n  }\n\n  // optional uint64 uncompress_size = 9;\n  if (has_uncompress_size()) {\n    ::google::protobuf::internal::WireFormatLite::WriteUInt64(9, this->uncompress_size(), output);\n  }\n\n}\n\nint FileSendProtos::ByteSize() const {\n  int total_size = 0;\n\n  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {\n    // required string file_name = 1;\n    if (has_file_name()) {\n      total_size += 1 +\n        ::google::protobuf::internal::WireFormatLite::StringSize(\n          this->file_name());\n    }\n\n    // required int32 package_seq = 2;\n    if (has_package_seq()) {\n      total_size += 1 +\n        ::google::protobuf::internal::WireFormatLite::Int32Size(\n          this->package_seq());\n    }\n\n    // required int32 package_sum = 3;\n    if (has_package_sum()) {\n      total_size += 1 +\n        ::google::protobuf::internal::WireFormatLite::Int32Size(\n          this->package_sum());\n    }\n\n    // required uint64 content_size = 4;\n    if (has_content_size()) {\n      total_size += 1 +\n        ::google::protobuf::internal::WireFormatLite::UInt64Size(\n          this->content_size());\n    }\n\n    // required .runtime.FileSendProtos.CompressType compress_type = 5;\n    if (has_compress_type()) {\n      total_size += 1 +\n        ::google::protobuf::internal::WireFormatLite::EnumSize(this->compress_type());\n    }\n\n    // optional uint64 modified_time = 6;\n    if (has_modified_time()) {\n      total_size += 1 +\n        ::google::protobuf::internal::WireFormatLite::UInt64Size(\n          this->modified_time());\n    }\n\n    // optional .runtime.FileSendProtos.VerifyMode verify_mode = 7;\n    if (has_verify_mode()) {\n      total_size += 1 +\n        ::google::protobuf::internal::WireFormatLite::EnumSize(this->verify_mode());\n    }\n\n    // optional string verify_sign = 8;\n    if (has_verify_sign()) {\n      total_size += 1 +\n        ::google::protobuf::internal::WireFormatLite::StringSize(\n          this->verify_sign());\n    }\n\n  }\n  if (_has_bits_[8 / 32] & (0xffu << (8 % 32))) {\n    // optional uint64 uncompress_size = 9;\n    if (has_uncompress_size()) {\n      total_size += 1 +\n        ::google::protobuf::internal::WireFormatLite::UInt64Size(\n          this->uncompress_size());\n    }\n\n  }\n  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();\n  _cached_size_ = total_size;\n  GOOGLE_SAFE_CONCURRENT_WRITES_END();\n  return total_size;\n}\n\nvoid FileSendProtos::CheckTypeAndMergeFrom(\n    const ::google::protobuf::MessageLite& from) {\n  MergeFrom(*::google::protobuf::down_cast<const FileSendProtos*>(&from));\n}\n\nvoid FileSendProtos::MergeFrom(const FileSendProtos& from) {\n  GOOGLE_CHECK_NE(&from, this);\n  if (from._has_bits_[0 / 32] & (0xffu << (0 % 32))) {\n    if (from.has_file_name()) {\n      set_file_name(from.file_name());\n    }\n    if (from.has_package_seq()) {\n      set_package_seq(from.package_seq());\n    }\n    if (from.has_package_sum()) {\n      set_package_sum(from.package_sum());\n    }\n    if (from.has_content_size()) {\n      set_content_size(from.content_size());\n    }\n    if (from.has_compress_type()) {\n      set_compress_type(from.compress_type());\n    }\n    if (from.has_modified_time()) {\n      set_modified_time(from.modified_time());\n    }\n    if (from.has_verify_mode()) {\n      set_verify_mode(from.verify_mode());\n    }\n    if (from.has_verify_sign()) {\n      set_verify_sign(from.verify_sign());\n    }\n  }\n  if (from._has_bits_[8 / 32] & (0xffu << (8 % 32))) {\n    if (from.has_uncompress_size()) {\n      set_uncompress_size(from.uncompress_size());\n    }\n  }\n}\n\nvoid FileSendProtos::CopyFrom(const FileSendProtos& from) {\n  if (&from == this) return;\n  Clear();\n  MergeFrom(from);\n}\n\nbool FileSendProtos::IsInitialized() const {\n  if ((_has_bits_[0] & 0x0000001f) != 0x0000001f) return false;\n\n  return true;\n}\n\nvoid FileSendProtos::Swap(FileSendProtos* other) {\n  if (other != this) {\n    std::swap(file_name_, other->file_name_);\n    std::swap(package_seq_, other->package_seq_);\n    std::swap(package_sum_, other->package_sum_);\n    std::swap(content_size_, other->content_size_);\n    std::swap(compress_type_, other->compress_type_);\n    std::swap(modified_time_, other->modified_time_);\n    std::swap(verify_mode_, other->verify_mode_);\n    std::swap(verify_sign_, other->verify_sign_);\n    std::swap(uncompress_size_, other->uncompress_size_);\n    std::swap(_has_bits_[0], other->_has_bits_[0]);\n    std::swap(_cached_size_, other->_cached_size_);\n  }\n}\n\n::std::string FileSendProtos::GetTypeName() const {\n  return \"runtime.FileSendProtos\";\n}\n\n\n// ===================================================================\n\nbool FileSendComplete_RESULTTYPE_IsValid(int value) {\n  switch(value) {\n    case 0:\n    case 1:\n    case 2:\n    case 3:\n    case 4:\n      return true;\n    default:\n      return false;\n  }\n}\n\n#ifndef _MSC_VER\nconst FileSendComplete_RESULTTYPE FileSendComplete::SUCCESS;\nconst FileSendComplete_RESULTTYPE FileSendComplete::RECV_ERROR;\nconst FileSendComplete_RESULTTYPE FileSendComplete::UNCOMPRESS_ERROR;\nconst FileSendComplete_RESULTTYPE FileSendComplete::FOPEN_ERROR;\nconst FileSendComplete_RESULTTYPE FileSendComplete::FWRITE_ERROR;\nconst FileSendComplete_RESULTTYPE FileSendComplete::RESULTTYPE_MIN;\nconst FileSendComplete_RESULTTYPE FileSendComplete::RESULTTYPE_MAX;\nconst int FileSendComplete::RESULTTYPE_ARRAYSIZE;\n#endif  // _MSC_VER\n#ifndef _MSC_VER\nconst int FileSendComplete::kFileNameFieldNumber;\nconst int FileSendComplete::kResultFieldNumber;\nconst int FileSendComplete::kErrorNumFieldNumber;\n#endif  // !_MSC_VER\n\nFileSendComplete::FileSendComplete()\n  : ::google::protobuf::MessageLite() {\n  SharedCtor();\n}\n\nvoid FileSendComplete::InitAsDefaultInstance() {\n}\n\nFileSendComplete::FileSendComplete(const FileSendComplete& from)\n  : ::google::protobuf::MessageLite() {\n  SharedCtor();\n  MergeFrom(from);\n}\n\nvoid FileSendComplete::SharedCtor() {\n  _cached_size_ = 0;\n  file_name_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);\n  result_ = 0;\n  error_num_ = 0;\n  ::memset(_has_bits_, 0, sizeof(_has_bits_));\n}\n\nFileSendComplete::~FileSendComplete() {\n  SharedDtor();\n}\n\nvoid FileSendComplete::SharedDtor() {\n  if (file_name_ != &::google::protobuf::internal::kEmptyString) {\n    delete file_name_;\n  }\n  #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER\n  if (this != &default_instance()) {\n  #else\n  if (this != default_instance_) {\n  #endif\n  }\n}\n\nvoid FileSendComplete::SetCachedSize(int size) const {\n  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();\n  _cached_size_ = size;\n  GOOGLE_SAFE_CONCURRENT_WRITES_END();\n}\nconst FileSendComplete& FileSendComplete::default_instance() {\n#ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER\n  protobuf_AddDesc_Protos_2eproto();\n#else\n  if (default_instance_ == NULL) protobuf_AddDesc_Protos_2eproto();\n#endif\n  return *default_instance_;\n}\n\nFileSendComplete* FileSendComplete::default_instance_ = NULL;\n\nFileSendComplete* FileSendComplete::New() const {\n  return new FileSendComplete;\n}\n\nvoid FileSendComplete::Clear() {\n  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {\n    if (has_file_name()) {\n      if (file_name_ != &::google::protobuf::internal::kEmptyString) {\n        file_name_->clear();\n      }\n    }\n    result_ = 0;\n    error_num_ = 0;\n  }\n  ::memset(_has_bits_, 0, sizeof(_has_bits_));\n}\n\nbool FileSendComplete::MergePartialFromCodedStream(\n    ::google::protobuf::io::CodedInputStream* input) {\n#define DO_(EXPRESSION) if (!(EXPRESSION)) return false\n  ::google::protobuf::uint32 tag;\n  while ((tag = input->ReadTag()) != 0) {\n    switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {\n      // required string file_name = 1;\n      case 1: {\n        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==\n            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {\n          DO_(::google::protobuf::internal::WireFormatLite::ReadString(\n                input, this->mutable_file_name()));\n        } else {\n          goto handle_uninterpreted;\n        }\n        if (input->ExpectTag(16)) goto parse_result;\n        break;\n      }\n\n      // required .runtime.FileSendComplete.RESULTTYPE result = 2;\n      case 2: {\n        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==\n            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {\n         parse_result:\n          int value;\n          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<\n                   int, ::google::protobuf::internal::WireFormatLite::TYPE_ENUM>(\n                 input, &value)));\n          if (::runtime::FileSendComplete_RESULTTYPE_IsValid(value)) {\n            set_result(static_cast< ::runtime::FileSendComplete_RESULTTYPE >(value));\n          }\n        } else {\n          goto handle_uninterpreted;\n        }\n        if (input->ExpectTag(24)) goto parse_error_num;\n        break;\n      }\n\n      // required int32 error_num = 3;\n      case 3: {\n        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==\n            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {\n         parse_error_num:\n          DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<\n                   ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(\n                 input, &error_num_)));\n          set_has_error_num();\n        } else {\n          goto handle_uninterpreted;\n        }\n        if (input->ExpectAtEnd()) return true;\n        break;\n      }\n\n      default: {\n      handle_uninterpreted:\n        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==\n            ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {\n          return true;\n        }\n        DO_(::google::protobuf::internal::WireFormatLite::SkipField(input, tag));\n        break;\n      }\n    }\n  }\n  return true;\n#undef DO_\n}\n\nvoid FileSendComplete::SerializeWithCachedSizes(\n    ::google::protobuf::io::CodedOutputStream* output) const {\n  // required string file_name = 1;\n  if (has_file_name()) {\n    ::google::protobuf::internal::WireFormatLite::WriteString(\n      1, this->file_name(), output);\n  }\n\n  // required .runtime.FileSendComplete.RESULTTYPE result = 2;\n  if (has_result()) {\n    ::google::protobuf::internal::WireFormatLite::WriteEnum(\n      2, this->result(), output);\n  }\n\n  // required int32 error_num = 3;\n  if (has_error_num()) {\n    ::google::protobuf::internal::WireFormatLite::WriteInt32(3, this->error_num(), output);\n  }\n\n}\n\nint FileSendComplete::ByteSize() const {\n  int total_size = 0;\n\n  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {\n    // required string file_name = 1;\n    if (has_file_name()) {\n      total_size += 1 +\n        ::google::protobuf::internal::WireFormatLite::StringSize(\n          this->file_name());\n    }\n\n    // required .runtime.FileSendComplete.RESULTTYPE result = 2;\n    if (has_result()) {\n      total_size += 1 +\n        ::google::protobuf::internal::WireFormatLite::EnumSize(this->result());\n    }\n\n    // required int32 error_num = 3;\n    if (has_error_num()) {\n      total_size += 1 +\n        ::google::protobuf::internal::WireFormatLite::Int32Size(\n          this->error_num());\n    }\n\n  }\n  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();\n  _cached_size_ = total_size;\n  GOOGLE_SAFE_CONCURRENT_WRITES_END();\n  return total_size;\n}\n\nvoid FileSendComplete::CheckTypeAndMergeFrom(\n    const ::google::protobuf::MessageLite& from) {\n  MergeFrom(*::google::protobuf::down_cast<const FileSendComplete*>(&from));\n}\n\nvoid FileSendComplete::MergeFrom(const FileSendComplete& from) {\n  GOOGLE_CHECK_NE(&from, this);\n  if (from._has_bits_[0 / 32] & (0xffu << (0 % 32))) {\n    if (from.has_file_name()) {\n      set_file_name(from.file_name());\n    }\n    if (from.has_result()) {\n      set_result(from.result());\n    }\n    if (from.has_error_num()) {\n      set_error_num(from.error_num());\n    }\n  }\n}\n\nvoid FileSendComplete::CopyFrom(const FileSendComplete& from) {\n  if (&from == this) return;\n  Clear();\n  MergeFrom(from);\n}\n\nbool FileSendComplete::IsInitialized() const {\n  if ((_has_bits_[0] & 0x00000007) != 0x00000007) return false;\n\n  return true;\n}\n\nvoid FileSendComplete::Swap(FileSendComplete* other) {\n  if (other != this) {\n    std::swap(file_name_, other->file_name_);\n    std::swap(result_, other->result_);\n    std::swap(error_num_, other->error_num_);\n    std::swap(_has_bits_[0], other->_has_bits_[0]);\n    std::swap(_cached_size_, other->_cached_size_);\n  }\n}\n\n::std::string FileSendComplete::GetTypeName() const {\n  return \"runtime.FileSendComplete\";\n}\n\n\n// @@protoc_insertion_point(namespace_scope)\n\n}  // namespace runtime\n\n// @@protoc_insertion_point(global_scope)\n"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/Classes/runtime/Protos.pb.h",
    "content": "// Generated by the protocol buffer compiler.  DO NOT EDIT!\n// source: Protos.proto\n\n#ifndef PROTOBUF_Protos_2eproto__INCLUDED\n#define PROTOBUF_Protos_2eproto__INCLUDED\n\n#include <string>\n\n#include <google/protobuf/stubs/common.h>\n\n#if GOOGLE_PROTOBUF_VERSION < 2005000\n#error This file was generated by a newer version of protoc which is\n#error incompatible with your Protocol Buffer headers.  Please update\n#error your headers.\n#endif\n#if 2005000 < GOOGLE_PROTOBUF_MIN_PROTOC_VERSION\n#error This file was generated by an older version of protoc which is\n#error incompatible with your Protocol Buffer headers.  Please\n#error regenerate this file with a newer version of protoc.\n#endif\n\n#include <google/protobuf/generated_message_util.h>\n#include <google/protobuf/message_lite.h>\n#include <google/protobuf/repeated_field.h>\n#include <google/protobuf/extension_set.h>\n// @@protoc_insertion_point(includes)\n\nnamespace runtime {\n\n// Internal implementation detail -- do not call these.\nvoid  protobuf_AddDesc_Protos_2eproto();\nvoid protobuf_AssignDesc_Protos_2eproto();\nvoid protobuf_ShutdownFile_Protos_2eproto();\n\nclass FileSendProtos;\nclass FileSendComplete;\n\nenum FileSendProtos_CompressType {\n  FileSendProtos_CompressType_NO_COMPRESS = 0,\n  FileSendProtos_CompressType_ZIP = 1\n};\nbool FileSendProtos_CompressType_IsValid(int value);\nconst FileSendProtos_CompressType FileSendProtos_CompressType_CompressType_MIN = FileSendProtos_CompressType_NO_COMPRESS;\nconst FileSendProtos_CompressType FileSendProtos_CompressType_CompressType_MAX = FileSendProtos_CompressType_ZIP;\nconst int FileSendProtos_CompressType_CompressType_ARRAYSIZE = FileSendProtos_CompressType_CompressType_MAX + 1;\n\nenum FileSendProtos_VerifyMode {\n  FileSendProtos_VerifyMode_NO_VERIFY = 0,\n  FileSendProtos_VerifyMode_CRC = 1,\n  FileSendProtos_VerifyMode_MD5 = 2\n};\nbool FileSendProtos_VerifyMode_IsValid(int value);\nconst FileSendProtos_VerifyMode FileSendProtos_VerifyMode_VerifyMode_MIN = FileSendProtos_VerifyMode_NO_VERIFY;\nconst FileSendProtos_VerifyMode FileSendProtos_VerifyMode_VerifyMode_MAX = FileSendProtos_VerifyMode_MD5;\nconst int FileSendProtos_VerifyMode_VerifyMode_ARRAYSIZE = FileSendProtos_VerifyMode_VerifyMode_MAX + 1;\n\nenum FileSendComplete_RESULTTYPE {\n  FileSendComplete_RESULTTYPE_SUCCESS = 0,\n  FileSendComplete_RESULTTYPE_RECV_ERROR = 1,\n  FileSendComplete_RESULTTYPE_UNCOMPRESS_ERROR = 2,\n  FileSendComplete_RESULTTYPE_FOPEN_ERROR = 3,\n  FileSendComplete_RESULTTYPE_FWRITE_ERROR = 4\n};\nbool FileSendComplete_RESULTTYPE_IsValid(int value);\nconst FileSendComplete_RESULTTYPE FileSendComplete_RESULTTYPE_RESULTTYPE_MIN = FileSendComplete_RESULTTYPE_SUCCESS;\nconst FileSendComplete_RESULTTYPE FileSendComplete_RESULTTYPE_RESULTTYPE_MAX = FileSendComplete_RESULTTYPE_FWRITE_ERROR;\nconst int FileSendComplete_RESULTTYPE_RESULTTYPE_ARRAYSIZE = FileSendComplete_RESULTTYPE_RESULTTYPE_MAX + 1;\n\n// ===================================================================\n\nclass FileSendProtos : public ::google::protobuf::MessageLite {\n public:\n  FileSendProtos();\n  virtual ~FileSendProtos();\n\n  FileSendProtos(const FileSendProtos& from);\n\n  inline FileSendProtos& operator=(const FileSendProtos& from) {\n    CopyFrom(from);\n    return *this;\n  }\n\n  static const FileSendProtos& default_instance();\n\n  #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER\n  // Returns the internal default instance pointer. This function can\n  // return NULL thus should not be used by the user. This is intended\n  // for Protobuf internal code. Please use default_instance() declared\n  // above instead.\n  static inline const FileSendProtos* internal_default_instance() {\n    return default_instance_;\n  }\n  #endif\n\n  void Swap(FileSendProtos* other);\n\n  // implements Message ----------------------------------------------\n\n  FileSendProtos* New() const;\n  void CheckTypeAndMergeFrom(const ::google::protobuf::MessageLite& from);\n  void CopyFrom(const FileSendProtos& from);\n  void MergeFrom(const FileSendProtos& from);\n  void Clear();\n  bool IsInitialized() const;\n\n  int ByteSize() const;\n  bool MergePartialFromCodedStream(\n      ::google::protobuf::io::CodedInputStream* input);\n  void SerializeWithCachedSizes(\n      ::google::protobuf::io::CodedOutputStream* output) const;\n  int GetCachedSize() const { return _cached_size_; }\n  private:\n  void SharedCtor();\n  void SharedDtor();\n  void SetCachedSize(int size) const;\n  public:\n\n  ::std::string GetTypeName() const;\n\n  // nested types ----------------------------------------------------\n\n  typedef FileSendProtos_CompressType CompressType;\n  static const CompressType NO_COMPRESS = FileSendProtos_CompressType_NO_COMPRESS;\n  static const CompressType ZIP = FileSendProtos_CompressType_ZIP;\n  static inline bool CompressType_IsValid(int value) {\n    return FileSendProtos_CompressType_IsValid(value);\n  }\n  static const CompressType CompressType_MIN =\n    FileSendProtos_CompressType_CompressType_MIN;\n  static const CompressType CompressType_MAX =\n    FileSendProtos_CompressType_CompressType_MAX;\n  static const int CompressType_ARRAYSIZE =\n    FileSendProtos_CompressType_CompressType_ARRAYSIZE;\n\n  typedef FileSendProtos_VerifyMode VerifyMode;\n  static const VerifyMode NO_VERIFY = FileSendProtos_VerifyMode_NO_VERIFY;\n  static const VerifyMode CRC = FileSendProtos_VerifyMode_CRC;\n  static const VerifyMode MD5 = FileSendProtos_VerifyMode_MD5;\n  static inline bool VerifyMode_IsValid(int value) {\n    return FileSendProtos_VerifyMode_IsValid(value);\n  }\n  static const VerifyMode VerifyMode_MIN =\n    FileSendProtos_VerifyMode_VerifyMode_MIN;\n  static const VerifyMode VerifyMode_MAX =\n    FileSendProtos_VerifyMode_VerifyMode_MAX;\n  static const int VerifyMode_ARRAYSIZE =\n    FileSendProtos_VerifyMode_VerifyMode_ARRAYSIZE;\n\n  // accessors -------------------------------------------------------\n\n  // required string file_name = 1;\n  inline bool has_file_name() const;\n  inline void clear_file_name();\n  static const int kFileNameFieldNumber = 1;\n  inline const ::std::string& file_name() const;\n  inline void set_file_name(const ::std::string& value);\n  inline void set_file_name(const char* value);\n  inline void set_file_name(const char* value, size_t size);\n  inline ::std::string* mutable_file_name();\n  inline ::std::string* release_file_name();\n  inline void set_allocated_file_name(::std::string* file_name);\n\n  // required int32 package_seq = 2;\n  inline bool has_package_seq() const;\n  inline void clear_package_seq();\n  static const int kPackageSeqFieldNumber = 2;\n  inline ::google::protobuf::int32 package_seq() const;\n  inline void set_package_seq(::google::protobuf::int32 value);\n\n  // required int32 package_sum = 3;\n  inline bool has_package_sum() const;\n  inline void clear_package_sum();\n  static const int kPackageSumFieldNumber = 3;\n  inline ::google::protobuf::int32 package_sum() const;\n  inline void set_package_sum(::google::protobuf::int32 value);\n\n  // required uint64 content_size = 4;\n  inline bool has_content_size() const;\n  inline void clear_content_size();\n  static const int kContentSizeFieldNumber = 4;\n  inline ::google::protobuf::uint64 content_size() const;\n  inline void set_content_size(::google::protobuf::uint64 value);\n\n  // required .runtime.FileSendProtos.CompressType compress_type = 5;\n  inline bool has_compress_type() const;\n  inline void clear_compress_type();\n  static const int kCompressTypeFieldNumber = 5;\n  inline ::runtime::FileSendProtos_CompressType compress_type() const;\n  inline void set_compress_type(::runtime::FileSendProtos_CompressType value);\n\n  // optional uint64 modified_time = 6;\n  inline bool has_modified_time() const;\n  inline void clear_modified_time();\n  static const int kModifiedTimeFieldNumber = 6;\n  inline ::google::protobuf::uint64 modified_time() const;\n  inline void set_modified_time(::google::protobuf::uint64 value);\n\n  // optional .runtime.FileSendProtos.VerifyMode verify_mode = 7;\n  inline bool has_verify_mode() const;\n  inline void clear_verify_mode();\n  static const int kVerifyModeFieldNumber = 7;\n  inline ::runtime::FileSendProtos_VerifyMode verify_mode() const;\n  inline void set_verify_mode(::runtime::FileSendProtos_VerifyMode value);\n\n  // optional string verify_sign = 8;\n  inline bool has_verify_sign() const;\n  inline void clear_verify_sign();\n  static const int kVerifySignFieldNumber = 8;\n  inline const ::std::string& verify_sign() const;\n  inline void set_verify_sign(const ::std::string& value);\n  inline void set_verify_sign(const char* value);\n  inline void set_verify_sign(const char* value, size_t size);\n  inline ::std::string* mutable_verify_sign();\n  inline ::std::string* release_verify_sign();\n  inline void set_allocated_verify_sign(::std::string* verify_sign);\n\n  // optional uint64 uncompress_size = 9;\n  inline bool has_uncompress_size() const;\n  inline void clear_uncompress_size();\n  static const int kUncompressSizeFieldNumber = 9;\n  inline ::google::protobuf::uint64 uncompress_size() const;\n  inline void set_uncompress_size(::google::protobuf::uint64 value);\n\n  // @@protoc_insertion_point(class_scope:runtime.FileSendProtos)\n private:\n  inline void set_has_file_name();\n  inline void clear_has_file_name();\n  inline void set_has_package_seq();\n  inline void clear_has_package_seq();\n  inline void set_has_package_sum();\n  inline void clear_has_package_sum();\n  inline void set_has_content_size();\n  inline void clear_has_content_size();\n  inline void set_has_compress_type();\n  inline void clear_has_compress_type();\n  inline void set_has_modified_time();\n  inline void clear_has_modified_time();\n  inline void set_has_verify_mode();\n  inline void clear_has_verify_mode();\n  inline void set_has_verify_sign();\n  inline void clear_has_verify_sign();\n  inline void set_has_uncompress_size();\n  inline void clear_has_uncompress_size();\n\n  ::std::string* file_name_;\n  ::google::protobuf::int32 package_seq_;\n  ::google::protobuf::int32 package_sum_;\n  ::google::protobuf::uint64 content_size_;\n  ::google::protobuf::uint64 modified_time_;\n  int compress_type_;\n  int verify_mode_;\n  ::std::string* verify_sign_;\n  ::google::protobuf::uint64 uncompress_size_;\n\n  mutable int _cached_size_;\n  ::google::protobuf::uint32 _has_bits_[(9 + 31) / 32];\n\n  #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER\n  friend void  protobuf_AddDesc_Protos_2eproto_impl();\n  #else\n  friend void  protobuf_AddDesc_Protos_2eproto();\n  #endif\n  friend void protobuf_AssignDesc_Protos_2eproto();\n  friend void protobuf_ShutdownFile_Protos_2eproto();\n\n  void InitAsDefaultInstance();\n  static FileSendProtos* default_instance_;\n};\n// -------------------------------------------------------------------\n\nclass FileSendComplete : public ::google::protobuf::MessageLite {\n public:\n  FileSendComplete();\n  virtual ~FileSendComplete();\n\n  FileSendComplete(const FileSendComplete& from);\n\n  inline FileSendComplete& operator=(const FileSendComplete& from) {\n    CopyFrom(from);\n    return *this;\n  }\n\n  static const FileSendComplete& default_instance();\n\n  #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER\n  // Returns the internal default instance pointer. This function can\n  // return NULL thus should not be used by the user. This is intended\n  // for Protobuf internal code. Please use default_instance() declared\n  // above instead.\n  static inline const FileSendComplete* internal_default_instance() {\n    return default_instance_;\n  }\n  #endif\n\n  void Swap(FileSendComplete* other);\n\n  // implements Message ----------------------------------------------\n\n  FileSendComplete* New() const;\n  void CheckTypeAndMergeFrom(const ::google::protobuf::MessageLite& from);\n  void CopyFrom(const FileSendComplete& from);\n  void MergeFrom(const FileSendComplete& from);\n  void Clear();\n  bool IsInitialized() const;\n\n  int ByteSize() const;\n  bool MergePartialFromCodedStream(\n      ::google::protobuf::io::CodedInputStream* input);\n  void SerializeWithCachedSizes(\n      ::google::protobuf::io::CodedOutputStream* output) const;\n  int GetCachedSize() const { return _cached_size_; }\n  private:\n  void SharedCtor();\n  void SharedDtor();\n  void SetCachedSize(int size) const;\n  public:\n\n  ::std::string GetTypeName() const;\n\n  // nested types ----------------------------------------------------\n\n  typedef FileSendComplete_RESULTTYPE RESULTTYPE;\n  static const RESULTTYPE SUCCESS = FileSendComplete_RESULTTYPE_SUCCESS;\n  static const RESULTTYPE RECV_ERROR = FileSendComplete_RESULTTYPE_RECV_ERROR;\n  static const RESULTTYPE UNCOMPRESS_ERROR = FileSendComplete_RESULTTYPE_UNCOMPRESS_ERROR;\n  static const RESULTTYPE FOPEN_ERROR = FileSendComplete_RESULTTYPE_FOPEN_ERROR;\n  static const RESULTTYPE FWRITE_ERROR = FileSendComplete_RESULTTYPE_FWRITE_ERROR;\n  static inline bool RESULTTYPE_IsValid(int value) {\n    return FileSendComplete_RESULTTYPE_IsValid(value);\n  }\n  static const RESULTTYPE RESULTTYPE_MIN =\n    FileSendComplete_RESULTTYPE_RESULTTYPE_MIN;\n  static const RESULTTYPE RESULTTYPE_MAX =\n    FileSendComplete_RESULTTYPE_RESULTTYPE_MAX;\n  static const int RESULTTYPE_ARRAYSIZE =\n    FileSendComplete_RESULTTYPE_RESULTTYPE_ARRAYSIZE;\n\n  // accessors -------------------------------------------------------\n\n  // required string file_name = 1;\n  inline bool has_file_name() const;\n  inline void clear_file_name();\n  static const int kFileNameFieldNumber = 1;\n  inline const ::std::string& file_name() const;\n  inline void set_file_name(const ::std::string& value);\n  inline void set_file_name(const char* value);\n  inline void set_file_name(const char* value, size_t size);\n  inline ::std::string* mutable_file_name();\n  inline ::std::string* release_file_name();\n  inline void set_allocated_file_name(::std::string* file_name);\n\n  // required .runtime.FileSendComplete.RESULTTYPE result = 2;\n  inline bool has_result() const;\n  inline void clear_result();\n  static const int kResultFieldNumber = 2;\n  inline ::runtime::FileSendComplete_RESULTTYPE result() const;\n  inline void set_result(::runtime::FileSendComplete_RESULTTYPE value);\n\n  // required int32 error_num = 3;\n  inline bool has_error_num() const;\n  inline void clear_error_num();\n  static const int kErrorNumFieldNumber = 3;\n  inline ::google::protobuf::int32 error_num() const;\n  inline void set_error_num(::google::protobuf::int32 value);\n\n  // @@protoc_insertion_point(class_scope:runtime.FileSendComplete)\n private:\n  inline void set_has_file_name();\n  inline void clear_has_file_name();\n  inline void set_has_result();\n  inline void clear_has_result();\n  inline void set_has_error_num();\n  inline void clear_has_error_num();\n\n  ::std::string* file_name_;\n  int result_;\n  ::google::protobuf::int32 error_num_;\n\n  mutable int _cached_size_;\n  ::google::protobuf::uint32 _has_bits_[(3 + 31) / 32];\n\n  #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER\n  friend void  protobuf_AddDesc_Protos_2eproto_impl();\n  #else\n  friend void  protobuf_AddDesc_Protos_2eproto();\n  #endif\n  friend void protobuf_AssignDesc_Protos_2eproto();\n  friend void protobuf_ShutdownFile_Protos_2eproto();\n\n  void InitAsDefaultInstance();\n  static FileSendComplete* default_instance_;\n};\n// ===================================================================\n\n\n// ===================================================================\n\n// FileSendProtos\n\n// required string file_name = 1;\ninline bool FileSendProtos::has_file_name() const {\n  return (_has_bits_[0] & 0x00000001u) != 0;\n}\ninline void FileSendProtos::set_has_file_name() {\n  _has_bits_[0] |= 0x00000001u;\n}\ninline void FileSendProtos::clear_has_file_name() {\n  _has_bits_[0] &= ~0x00000001u;\n}\ninline void FileSendProtos::clear_file_name() {\n  if (file_name_ != &::google::protobuf::internal::kEmptyString) {\n    file_name_->clear();\n  }\n  clear_has_file_name();\n}\ninline const ::std::string& FileSendProtos::file_name() const {\n  return *file_name_;\n}\ninline void FileSendProtos::set_file_name(const ::std::string& value) {\n  set_has_file_name();\n  if (file_name_ == &::google::protobuf::internal::kEmptyString) {\n    file_name_ = new ::std::string;\n  }\n  file_name_->assign(value);\n}\ninline void FileSendProtos::set_file_name(const char* value) {\n  set_has_file_name();\n  if (file_name_ == &::google::protobuf::internal::kEmptyString) {\n    file_name_ = new ::std::string;\n  }\n  file_name_->assign(value);\n}\ninline void FileSendProtos::set_file_name(const char* value, size_t size) {\n  set_has_file_name();\n  if (file_name_ == &::google::protobuf::internal::kEmptyString) {\n    file_name_ = new ::std::string;\n  }\n  file_name_->assign(reinterpret_cast<const char*>(value), size);\n}\ninline ::std::string* FileSendProtos::mutable_file_name() {\n  set_has_file_name();\n  if (file_name_ == &::google::protobuf::internal::kEmptyString) {\n    file_name_ = new ::std::string;\n  }\n  return file_name_;\n}\ninline ::std::string* FileSendProtos::release_file_name() {\n  clear_has_file_name();\n  if (file_name_ == &::google::protobuf::internal::kEmptyString) {\n    return NULL;\n  } else {\n    ::std::string* temp = file_name_;\n    file_name_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);\n    return temp;\n  }\n}\ninline void FileSendProtos::set_allocated_file_name(::std::string* file_name) {\n  if (file_name_ != &::google::protobuf::internal::kEmptyString) {\n    delete file_name_;\n  }\n  if (file_name) {\n    set_has_file_name();\n    file_name_ = file_name;\n  } else {\n    clear_has_file_name();\n    file_name_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);\n  }\n}\n\n// required int32 package_seq = 2;\ninline bool FileSendProtos::has_package_seq() const {\n  return (_has_bits_[0] & 0x00000002u) != 0;\n}\ninline void FileSendProtos::set_has_package_seq() {\n  _has_bits_[0] |= 0x00000002u;\n}\ninline void FileSendProtos::clear_has_package_seq() {\n  _has_bits_[0] &= ~0x00000002u;\n}\ninline void FileSendProtos::clear_package_seq() {\n  package_seq_ = 0;\n  clear_has_package_seq();\n}\ninline ::google::protobuf::int32 FileSendProtos::package_seq() const {\n  return package_seq_;\n}\ninline void FileSendProtos::set_package_seq(::google::protobuf::int32 value) {\n  set_has_package_seq();\n  package_seq_ = value;\n}\n\n// required int32 package_sum = 3;\ninline bool FileSendProtos::has_package_sum() const {\n  return (_has_bits_[0] & 0x00000004u) != 0;\n}\ninline void FileSendProtos::set_has_package_sum() {\n  _has_bits_[0] |= 0x00000004u;\n}\ninline void FileSendProtos::clear_has_package_sum() {\n  _has_bits_[0] &= ~0x00000004u;\n}\ninline void FileSendProtos::clear_package_sum() {\n  package_sum_ = 0;\n  clear_has_package_sum();\n}\ninline ::google::protobuf::int32 FileSendProtos::package_sum() const {\n  return package_sum_;\n}\ninline void FileSendProtos::set_package_sum(::google::protobuf::int32 value) {\n  set_has_package_sum();\n  package_sum_ = value;\n}\n\n// required uint64 content_size = 4;\ninline bool FileSendProtos::has_content_size() const {\n  return (_has_bits_[0] & 0x00000008u) != 0;\n}\ninline void FileSendProtos::set_has_content_size() {\n  _has_bits_[0] |= 0x00000008u;\n}\ninline void FileSendProtos::clear_has_content_size() {\n  _has_bits_[0] &= ~0x00000008u;\n}\ninline void FileSendProtos::clear_content_size() {\n  content_size_ = GOOGLE_ULONGLONG(0);\n  clear_has_content_size();\n}\ninline ::google::protobuf::uint64 FileSendProtos::content_size() const {\n  return content_size_;\n}\ninline void FileSendProtos::set_content_size(::google::protobuf::uint64 value) {\n  set_has_content_size();\n  content_size_ = value;\n}\n\n// required .runtime.FileSendProtos.CompressType compress_type = 5;\ninline bool FileSendProtos::has_compress_type() const {\n  return (_has_bits_[0] & 0x00000010u) != 0;\n}\ninline void FileSendProtos::set_has_compress_type() {\n  _has_bits_[0] |= 0x00000010u;\n}\ninline void FileSendProtos::clear_has_compress_type() {\n  _has_bits_[0] &= ~0x00000010u;\n}\ninline void FileSendProtos::clear_compress_type() {\n  compress_type_ = 0;\n  clear_has_compress_type();\n}\ninline ::runtime::FileSendProtos_CompressType FileSendProtos::compress_type() const {\n  return static_cast< ::runtime::FileSendProtos_CompressType >(compress_type_);\n}\ninline void FileSendProtos::set_compress_type(::runtime::FileSendProtos_CompressType value) {\n  assert(::runtime::FileSendProtos_CompressType_IsValid(value));\n  set_has_compress_type();\n  compress_type_ = value;\n}\n\n// optional uint64 modified_time = 6;\ninline bool FileSendProtos::has_modified_time() const {\n  return (_has_bits_[0] & 0x00000020u) != 0;\n}\ninline void FileSendProtos::set_has_modified_time() {\n  _has_bits_[0] |= 0x00000020u;\n}\ninline void FileSendProtos::clear_has_modified_time() {\n  _has_bits_[0] &= ~0x00000020u;\n}\ninline void FileSendProtos::clear_modified_time() {\n  modified_time_ = GOOGLE_ULONGLONG(0);\n  clear_has_modified_time();\n}\ninline ::google::protobuf::uint64 FileSendProtos::modified_time() const {\n  return modified_time_;\n}\ninline void FileSendProtos::set_modified_time(::google::protobuf::uint64 value) {\n  set_has_modified_time();\n  modified_time_ = value;\n}\n\n// optional .runtime.FileSendProtos.VerifyMode verify_mode = 7;\ninline bool FileSendProtos::has_verify_mode() const {\n  return (_has_bits_[0] & 0x00000040u) != 0;\n}\ninline void FileSendProtos::set_has_verify_mode() {\n  _has_bits_[0] |= 0x00000040u;\n}\ninline void FileSendProtos::clear_has_verify_mode() {\n  _has_bits_[0] &= ~0x00000040u;\n}\ninline void FileSendProtos::clear_verify_mode() {\n  verify_mode_ = 0;\n  clear_has_verify_mode();\n}\ninline ::runtime::FileSendProtos_VerifyMode FileSendProtos::verify_mode() const {\n  return static_cast< ::runtime::FileSendProtos_VerifyMode >(verify_mode_);\n}\ninline void FileSendProtos::set_verify_mode(::runtime::FileSendProtos_VerifyMode value) {\n  assert(::runtime::FileSendProtos_VerifyMode_IsValid(value));\n  set_has_verify_mode();\n  verify_mode_ = value;\n}\n\n// optional string verify_sign = 8;\ninline bool FileSendProtos::has_verify_sign() const {\n  return (_has_bits_[0] & 0x00000080u) != 0;\n}\ninline void FileSendProtos::set_has_verify_sign() {\n  _has_bits_[0] |= 0x00000080u;\n}\ninline void FileSendProtos::clear_has_verify_sign() {\n  _has_bits_[0] &= ~0x00000080u;\n}\ninline void FileSendProtos::clear_verify_sign() {\n  if (verify_sign_ != &::google::protobuf::internal::kEmptyString) {\n    verify_sign_->clear();\n  }\n  clear_has_verify_sign();\n}\ninline const ::std::string& FileSendProtos::verify_sign() const {\n  return *verify_sign_;\n}\ninline void FileSendProtos::set_verify_sign(const ::std::string& value) {\n  set_has_verify_sign();\n  if (verify_sign_ == &::google::protobuf::internal::kEmptyString) {\n    verify_sign_ = new ::std::string;\n  }\n  verify_sign_->assign(value);\n}\ninline void FileSendProtos::set_verify_sign(const char* value) {\n  set_has_verify_sign();\n  if (verify_sign_ == &::google::protobuf::internal::kEmptyString) {\n    verify_sign_ = new ::std::string;\n  }\n  verify_sign_->assign(value);\n}\ninline void FileSendProtos::set_verify_sign(const char* value, size_t size) {\n  set_has_verify_sign();\n  if (verify_sign_ == &::google::protobuf::internal::kEmptyString) {\n    verify_sign_ = new ::std::string;\n  }\n  verify_sign_->assign(reinterpret_cast<const char*>(value), size);\n}\ninline ::std::string* FileSendProtos::mutable_verify_sign() {\n  set_has_verify_sign();\n  if (verify_sign_ == &::google::protobuf::internal::kEmptyString) {\n    verify_sign_ = new ::std::string;\n  }\n  return verify_sign_;\n}\ninline ::std::string* FileSendProtos::release_verify_sign() {\n  clear_has_verify_sign();\n  if (verify_sign_ == &::google::protobuf::internal::kEmptyString) {\n    return NULL;\n  } else {\n    ::std::string* temp = verify_sign_;\n    verify_sign_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);\n    return temp;\n  }\n}\ninline void FileSendProtos::set_allocated_verify_sign(::std::string* verify_sign) {\n  if (verify_sign_ != &::google::protobuf::internal::kEmptyString) {\n    delete verify_sign_;\n  }\n  if (verify_sign) {\n    set_has_verify_sign();\n    verify_sign_ = verify_sign;\n  } else {\n    clear_has_verify_sign();\n    verify_sign_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);\n  }\n}\n\n// optional uint64 uncompress_size = 9;\ninline bool FileSendProtos::has_uncompress_size() const {\n  return (_has_bits_[0] & 0x00000100u) != 0;\n}\ninline void FileSendProtos::set_has_uncompress_size() {\n  _has_bits_[0] |= 0x00000100u;\n}\ninline void FileSendProtos::clear_has_uncompress_size() {\n  _has_bits_[0] &= ~0x00000100u;\n}\ninline void FileSendProtos::clear_uncompress_size() {\n  uncompress_size_ = GOOGLE_ULONGLONG(0);\n  clear_has_uncompress_size();\n}\ninline ::google::protobuf::uint64 FileSendProtos::uncompress_size() const {\n  return uncompress_size_;\n}\ninline void FileSendProtos::set_uncompress_size(::google::protobuf::uint64 value) {\n  set_has_uncompress_size();\n  uncompress_size_ = value;\n}\n\n// -------------------------------------------------------------------\n\n// FileSendComplete\n\n// required string file_name = 1;\ninline bool FileSendComplete::has_file_name() const {\n  return (_has_bits_[0] & 0x00000001u) != 0;\n}\ninline void FileSendComplete::set_has_file_name() {\n  _has_bits_[0] |= 0x00000001u;\n}\ninline void FileSendComplete::clear_has_file_name() {\n  _has_bits_[0] &= ~0x00000001u;\n}\ninline void FileSendComplete::clear_file_name() {\n  if (file_name_ != &::google::protobuf::internal::kEmptyString) {\n    file_name_->clear();\n  }\n  clear_has_file_name();\n}\ninline const ::std::string& FileSendComplete::file_name() const {\n  return *file_name_;\n}\ninline void FileSendComplete::set_file_name(const ::std::string& value) {\n  set_has_file_name();\n  if (file_name_ == &::google::protobuf::internal::kEmptyString) {\n    file_name_ = new ::std::string;\n  }\n  file_name_->assign(value);\n}\ninline void FileSendComplete::set_file_name(const char* value) {\n  set_has_file_name();\n  if (file_name_ == &::google::protobuf::internal::kEmptyString) {\n    file_name_ = new ::std::string;\n  }\n  file_name_->assign(value);\n}\ninline void FileSendComplete::set_file_name(const char* value, size_t size) {\n  set_has_file_name();\n  if (file_name_ == &::google::protobuf::internal::kEmptyString) {\n    file_name_ = new ::std::string;\n  }\n  file_name_->assign(reinterpret_cast<const char*>(value), size);\n}\ninline ::std::string* FileSendComplete::mutable_file_name() {\n  set_has_file_name();\n  if (file_name_ == &::google::protobuf::internal::kEmptyString) {\n    file_name_ = new ::std::string;\n  }\n  return file_name_;\n}\ninline ::std::string* FileSendComplete::release_file_name() {\n  clear_has_file_name();\n  if (file_name_ == &::google::protobuf::internal::kEmptyString) {\n    return NULL;\n  } else {\n    ::std::string* temp = file_name_;\n    file_name_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);\n    return temp;\n  }\n}\ninline void FileSendComplete::set_allocated_file_name(::std::string* file_name) {\n  if (file_name_ != &::google::protobuf::internal::kEmptyString) {\n    delete file_name_;\n  }\n  if (file_name) {\n    set_has_file_name();\n    file_name_ = file_name;\n  } else {\n    clear_has_file_name();\n    file_name_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);\n  }\n}\n\n// required .runtime.FileSendComplete.RESULTTYPE result = 2;\ninline bool FileSendComplete::has_result() const {\n  return (_has_bits_[0] & 0x00000002u) != 0;\n}\ninline void FileSendComplete::set_has_result() {\n  _has_bits_[0] |= 0x00000002u;\n}\ninline void FileSendComplete::clear_has_result() {\n  _has_bits_[0] &= ~0x00000002u;\n}\ninline void FileSendComplete::clear_result() {\n  result_ = 0;\n  clear_has_result();\n}\ninline ::runtime::FileSendComplete_RESULTTYPE FileSendComplete::result() const {\n  return static_cast< ::runtime::FileSendComplete_RESULTTYPE >(result_);\n}\ninline void FileSendComplete::set_result(::runtime::FileSendComplete_RESULTTYPE value) {\n  assert(::runtime::FileSendComplete_RESULTTYPE_IsValid(value));\n  set_has_result();\n  result_ = value;\n}\n\n// required int32 error_num = 3;\ninline bool FileSendComplete::has_error_num() const {\n  return (_has_bits_[0] & 0x00000004u) != 0;\n}\ninline void FileSendComplete::set_has_error_num() {\n  _has_bits_[0] |= 0x00000004u;\n}\ninline void FileSendComplete::clear_has_error_num() {\n  _has_bits_[0] &= ~0x00000004u;\n}\ninline void FileSendComplete::clear_error_num() {\n  error_num_ = 0;\n  clear_has_error_num();\n}\ninline ::google::protobuf::int32 FileSendComplete::error_num() const {\n  return error_num_;\n}\ninline void FileSendComplete::set_error_num(::google::protobuf::int32 value) {\n  set_has_error_num();\n  error_num_ = value;\n}\n\n\n// @@protoc_insertion_point(namespace_scope)\n\n}  // namespace runtime\n\n// @@protoc_insertion_point(global_scope)\n\n#endif  // PROTOBUF_Protos_2eproto__INCLUDED\n"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/Classes/runtime/ResData.h",
    "content": "#ifndef  _RESDATA__H_\n#define  _RESDATA__H_\n\nextern const unsigned char __shinePngData[11776];\nextern const unsigned char __portraitPngData[122214];\nextern const unsigned char __playEnablePngData[20254];\nextern const unsigned char __landscapePngData[115832];\n\n#endif // _RESDATA__H_"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/Classes/runtime/Runtime.cpp",
    "content": "/****************************************************************************\nCopyright (c) 2013 cocos2d-x.org\n\nhttp://www.cocos2d-x.org\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in\nall copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\nTHE SOFTWARE.\n****************************************************************************/\n\n#include \"Runtime.h\"\n#include \"FileServer.h\"\n#include \"ConnectWaitLayer.h\"\n#include \"ConsoleCommand.h\"\n#include \"cocos2d.h\"\n#include \"ConfigParser.h\"\n#include \"lua_debugger.h\"\n#include \"CCLuaEngine.h\"\n#include \"LuaBasicConversions.h\"\n\n#include <vector>\n\nstd::string g_projectPath;\n\nvoid startScript(std::string strDebugArg)\n{\n    // register lua engine\n    auto engine = LuaEngine::getInstance();\n    if (!strDebugArg.empty())\n    {\n        // open debugger.lua module\n        cocos2d::log(\"debug args = %s\", strDebugArg.c_str());\n        luaopen_lua_debugger(engine->getLuaStack()->getLuaState());\n        engine->executeString(strDebugArg.c_str());\n    }\n\n    std::string code(\"require \\\"\");\n    code.append(ConfigParser::getInstance()->getEntryFile().c_str());\n    code.append(\"\\\"\");\n    engine->executeString(code.c_str());\n}\n\n\nvoid recvBuf(int fd, char *pbuf, unsigned long bufsize)\n{\n    unsigned long leftLength = bufsize;\n    while (leftLength != 0)\n    {\n        size_t recvlen = recv(fd, pbuf + bufsize - leftLength, leftLength ,0);\n        if (recvlen <= 0)\n        {\n            usleep(1);\n            continue;\n        }\n        leftLength -= recvlen;\n    }\n}\n\nvoid sendBuf(int fd, const char *pbuf, unsigned long bufsize)\n{\n    unsigned long leftLength = bufsize;\n    while (leftLength != 0)\n    {\n        size_t sendlen = send(fd, pbuf + bufsize - leftLength, leftLength ,0);\n        if (sendlen <= 0)\n        {\n            usleep(1);\n            continue;\n        }\n        leftLength -= sendlen;\n    }\n}\n\nstd::string& replaceAll(std::string& str, const std::string& old_value, const std::string& new_value)\n{\n    size_t start = 0;\n    while(true)\n    {\n        size_t pos = 0;\n        if((pos = str.find(old_value, start)) != std::string::npos) {\n            str.replace(pos, old_value.length(), new_value);\n            start = pos + new_value.length();\n        }\n        else break;\n    }\n    return str;\n}\n\nconst char* getRuntimeVersion()\n{\n    return \"1.7\";\n}\n\nint lua_cocos2dx_runtime_addSearchPath(lua_State* tolua_S)\n{\n    int argc = 0;\n    cocos2d::FileUtils* cobj = nullptr;\n    bool ok  = true;\n\n#if COCOS2D_DEBUG >= 1\n    tolua_Error tolua_err;\n#endif\n\n\n#if COCOS2D_DEBUG >= 1\n    if (!tolua_isusertype(tolua_S,1,\"cc.FileUtils\",0,&tolua_err)) goto tolua_lerror;\n#endif\n\n    cobj = (cocos2d::FileUtils*)tolua_tousertype(tolua_S,1,0);\n\n#if COCOS2D_DEBUG >= 1\n    if (!cobj) \n    {\n        tolua_error(tolua_S,\"invalid 'cobj' in function 'lua_cocos2dx_FileUtils_addSearchPath'\", nullptr);\n        return 0;\n    }\n#endif\n\n    argc = lua_gettop(tolua_S)-1;\n    if (argc == 1 || argc == 2) \n    {\n        std::string arg0;\n        bool arg1 = false;\n\n        ok &= luaval_to_std_string(tolua_S, 2,&arg0);\n\n        if (argc == 2)\n        {\n            ok &= luaval_to_boolean(tolua_S, 3, &arg1);\n        }\n\n        if(!ok)\n            return 0;\n\n        if (! FileUtils::getInstance()->isAbsolutePath(arg0))\n        {\n            // add write path to search path\n            if (FileServer::getShareInstance()->getIsUsingWritePath())\n            {\n                cobj->addSearchPath(FileServer::getShareInstance()->getWritePath() + arg0, arg1);\n            } else\n            {\n                cobj->addSearchPath(arg0, arg1);\n            }\n            \n#if(CC_TARGET_PLATFORM == CC_PLATFORM_MAC || CC_TARGET_PLATFORM == CC_PLATFORM_WIN32)\n            // add project path to search path\n            cobj->addSearchPath(g_projectPath + arg0, arg1);\n#endif\n        }\n        return 0;\n    }\n    CCLOG(\"%s has wrong number of arguments: %d, was expecting %d \\n\", \"addSearchPath\",argc, 1);\n    return 0;\n\n#if COCOS2D_DEBUG >= 1\ntolua_lerror:\n    tolua_error(tolua_S,\"#ferror in function 'lua_cocos2dx_FileUtils_addSearchPath'.\",&tolua_err);\n#endif\n\n    return 0;\n}\n\nint lua_cocos2dx_runtime_setSearchPaths(lua_State* tolua_S)\n{\n    int argc = 0;\n    cocos2d::FileUtils* cobj = nullptr;\n    bool ok  = true;\n\n#if COCOS2D_DEBUG >= 1\n    tolua_Error tolua_err;\n#endif\n\n\n#if COCOS2D_DEBUG >= 1\n    if (!tolua_isusertype(tolua_S,1,\"cc.FileUtils\",0,&tolua_err)) goto tolua_lerror;\n#endif\n\n    cobj = (cocos2d::FileUtils*)tolua_tousertype(tolua_S,1,0);\n\n#if COCOS2D_DEBUG >= 1\n    if (!cobj) \n    {\n        tolua_error(tolua_S,\"invalid 'cobj' in function 'lua_cocos2dx_runtime_setSearchPaths'\", nullptr);\n        return 0;\n    }\n#endif\n\n    argc = lua_gettop(tolua_S)-1;\n    if (argc == 1) \n    {\n        std::vector<std::string> vecPaths, writePaths;\n\n        ok &= luaval_to_std_vector_string(tolua_S, 2, &vecPaths);\n        if(!ok)\n            return 0;\n        std::vector<std::string> originPath; // for IOS platform.\n        std::vector<std::string> projPath; // for Desktop platform.\n        for (size_t i = 0; i < vecPaths.size(); i++)\n        {\n            if (!FileUtils::getInstance()->isAbsolutePath(vecPaths[i]))\n            {\n                originPath.push_back(vecPaths[i]); // for IOS platform.\n                projPath.push_back(g_projectPath + vecPaths[i]); //for Desktop platform.\n                writePaths.push_back(FileServer::getShareInstance()->getWritePath() + vecPaths[i]);\n            }\n        }\n        \n#if(CC_TARGET_PLATFORM == CC_PLATFORM_MAC || CC_TARGET_PLATFORM == CC_PLATFORM_WIN32)\n        vecPaths.insert(vecPaths.end(), projPath.begin(), projPath.end());\n#endif\n        if (FileServer::getShareInstance()->getIsUsingWritePath())\n        {\n            vecPaths.insert(vecPaths.end(), writePaths.begin(), writePaths.end());\n        } else\n        {\n            vecPaths.insert(vecPaths.end(), originPath.begin(), originPath.end());\n        }\n        \n        cobj->setSearchPaths(vecPaths);\n        return 0;\n    }\n    CCLOG(\"%s has wrong number of arguments: %d, was expecting %d \\n\", \"setSearchPaths\",argc, 1);\n    return 0;\n\n#if COCOS2D_DEBUG >= 1\ntolua_lerror:\n    tolua_error(tolua_S,\"#ferror in function 'lua_cocos2dx_runtime_setSearchPaths'.\",&tolua_err);\n#endif\n\n    return 0;\n}\n\nvoid register_runtime_override_function(lua_State* tolua_S)\n{\n    lua_pushstring(tolua_S, \"cc.FileUtils\");\n    lua_rawget(tolua_S, LUA_REGISTRYINDEX);\n    if (lua_istable(tolua_S,-1)){\n        tolua_function(tolua_S,\"addSearchPath\",lua_cocos2dx_runtime_addSearchPath);\n        tolua_function(tolua_S,\"setSearchPaths\",lua_cocos2dx_runtime_setSearchPaths);\n    }\n    lua_pop(tolua_S, 1);\n}\n\nvoid initRuntime()\n{\n#if (CC_TARGET_PLATFORM == CC_PLATFORM_WIN32 || CC_TARGET_PLATFORM == CC_PLATFORM_MAC)\n    vector<std::string> searchPathArray = FileUtils::getInstance()->getSearchPaths();\n    \n    extern std::string getCurAppPath();\n    std::string appPath = getCurAppPath();\n#if (CC_TARGET_PLATFORM == CC_PLATFORM_WIN32)\n    appPath.append(\"/../../\");\n#elif (CC_TARGET_PLATFORM == CC_PLATFORM_MAC)\n    appPath.append(\"/../../../\");\n#endif\n    appPath = replaceAll(appPath, \"\\\\\", \"/\");\n    g_projectPath = appPath;\n    \n    // add project's root directory to search path\n    searchPathArray.insert(searchPathArray.begin(), g_projectPath);\n    \n    // add writable path to search path\n    searchPathArray.insert(searchPathArray.begin(), FileServer::getShareInstance()->getWritePath());\n    FileUtils::getInstance()->setSearchPaths(searchPathArray);\n#endif\n\n    auto engine = LuaEngine::getInstance();\n    ScriptEngineManager::getInstance()->setScriptEngine(engine);\n    register_runtime_override_function(engine->getLuaStack()->getLuaState());\n\n    ConsoleCommand::getShareInstance()->init();\n}\n\nvoid startRuntime()\n{\n    auto scene = Scene::create();\n    auto connectLayer = new ConnectWaitLayer();\n    connectLayer->autorelease();\n    auto director = Director::getInstance();\n    scene->addChild(connectLayer);\n    director->runWithScene(scene);\n}\n\nvoid endRuntime()\n{\n\tConsoleCommand::purge();\n\tFileServer::getShareInstance()->stop();\n\t//FileServer::purge();\n}\n"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/Classes/runtime/Runtime.h",
    "content": "/****************************************************************************\nCopyright (c) 2013 cocos2d-x.org\n\nhttp://www.cocos2d-x.org\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in\nall copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\nTHE SOFTWARE.\n****************************************************************************/\n\n#ifndef  _RUNTIME__H_\n#define  _RUNTIME__H_\n\n#include <string>\n\nvoid recvBuf(int fd, char *pbuf, unsigned long bufsize);\n\nvoid sendBuf(int fd, const char *pbuf, unsigned long bufsize);\n\nstd::string& replaceAll(std::string& str, const std::string& old_value, const std::string& new_value);\n\nstd::string getIPAddress();\n\nconst char* getRuntimeVersion();\n\nvoid startScript(std::string strDebugArg);\n\nvoid initRuntime();\n\nvoid startRuntime();\n\nvoid endRuntime();\n\n#endif // _RUNTIME__H_\n\n"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/Classes/runtime/Shine_png.cpp",
    "content": "#include \"ResData.h\"\nconst unsigned char __shinePngData[11776] = {\n0x89, 0x50, 0x4E, 0x47, 0x0D, 0x0A, 0x1A, 0x0A, 0x00, 0x00, 0x00, 0x0D, 0x49, 0x48, 0x44, 0x52,\n0x00, 0x00, 0x01, 0xC4, 0x00, 0x00, 0x02, 0x20, 0x04, 0x03, 0x00, 0x00, 0x00, 0xE9, 0x4C, 0x04,\n0x25, 0x00, 0x00, 0x00, 0x1E, 0x50, 0x4C, 0x54, 0x45, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF,\n0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,\n0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x24, 0x7C, 0x9B, 0x95, 0x00, 0x00, 0x00, 0x0A, 0x74,\n0x52, 0x4E, 0x53, 0x00, 0x01, 0x05, 0x09, 0x0E, 0x13, 0x19, 0x24, 0x2B, 0x1E, 0x3A, 0xC3, 0xFD,\n0x9D, 0x00, 0x00, 0x2D, 0x87, 0x49, 0x44, 0x41, 0x54, 0x78, 0xDA, 0xDC, 0x9A, 0x4B, 0xB2, 0xD4,\n0x30, 0x0C, 0x45, 0x3B, 0xAC, 0x00, 0x04, 0x0B, 0xC0, 0x36, 0x0B, 0xA0, 0x9C, 0x66, 0x0E, 0x24,\n0x30, 0x87, 0xA2, 0xD9, 0x01, 0xEC, 0x7F, 0x09, 0x58, 0x96, 0xAD, 0x2B, 0xC7, 0xFC, 0x26, 0x14,\n0x4A, 0x94, 0xA6, 0xAA, 0xD3, 0x2F, 0x50, 0x1C, 0x8E, 0x7E, 0xE6, 0xBD, 0xDB, 0xBF, 0x8C, 0xE5,\n0x99, 0x8D, 0xA7, 0xB7, 0xAB, 0x45, 0x27, 0xBB, 0x2A, 0x26, 0xA0, 0xE6, 0xB8, 0x5D, 0x20, 0x24,\n0x3F, 0x2F, 0x4C, 0x39, 0x01, 0x5E, 0x2D, 0x63, 0x01, 0x78, 0x55, 0x95, 0xCF, 0x4A, 0x5C, 0x1A,\n0xD2, 0x2A, 0xBC, 0x66, 0xBA, 0x0A, 0xE1, 0x95, 0x45, 0x0A, 0xE1, 0x95, 0x45, 0x0A, 0xE1, 0x95,\n0x45, 0xFE, 0x82, 0x90, 0x9E, 0x05, 0xBC, 0x4E, 0xCE, 0xF8, 0x6C, 0x8E, 0x19, 0x2A, 0x9C, 0x99,\n0x11, 0x12, 0x21, 0x50, 0x24, 0x96, 0x8B, 0xCA, 0xC5, 0x6F, 0x44, 0xEA, 0x59, 0x19, 0x67, 0x3E,\n0x06, 0x52, 0x56, 0x26, 0xD4, 0xFB, 0x70, 0x4A, 0xC6, 0x59, 0xA2, 0xA0, 0x04, 0x32, 0x80, 0x5D,\n0x2A, 0x7F, 0x7C, 0x3E, 0xC6, 0x03, 0x1B, 0xA3, 0x90, 0xBD, 0x15, 0xAB, 0xA1, 0x0B, 0x3E, 0xE1,\n0xEC, 0x98, 0x25, 0x42, 0x56, 0x18, 0x53, 0x95, 0xF0, 0xAF, 0x70, 0x2A, 0xC6, 0x11, 0x4E, 0x40,\n0x04, 0xC1, 0x02, 0x52, 0xFF, 0x88, 0xCE, 0x57, 0x8E, 0x56, 0x62, 0x47, 0x22, 0x6D, 0x39, 0x14,\n0x62, 0x09, 0x8A, 0xA1, 0xDB, 0x05, 0x28, 0x9D, 0x46, 0xA3, 0x45, 0x0C, 0x3A, 0x20, 0x84, 0x34,\n0xC4, 0x10, 0xA9, 0x44, 0xA8, 0xA0, 0xF2, 0xB1, 0x54, 0xE7, 0xA9, 0xCA, 0xF1, 0xE8, 0x10, 0xA3,\n0xA1, 0xD8, 0x1B, 0x23, 0x46, 0xF3, 0x44, 0xB9, 0xE8, 0x1C, 0xA9, 0xBA, 0x4C, 0x0E, 0xA9, 0xB9,\n0x6A, 0x80, 0xC1, 0x46, 0x8C, 0x66, 0x6C, 0x84, 0x93, 0x94, 0x23, 0x10, 0xD1, 0x63, 0x38, 0xA8,\n0x31, 0x69, 0x40, 0xA5, 0xE8, 0x6E, 0xFB, 0xCF, 0x09, 0x52, 0x15, 0x39, 0x0A, 0x48, 0x56, 0x18,\n0xA2, 0xF0, 0x50, 0x23, 0x64, 0xD8, 0xAE, 0x32, 0xC8, 0x73, 0x74, 0x92, 0xAE, 0x7A, 0x28, 0xC4,\n0x40, 0x50, 0xD8, 0xEC, 0x85, 0xFA, 0x1A, 0x5C, 0x46, 0xB3, 0xE8, 0x04, 0xEF, 0x8C, 0xC8, 0x53,\n0x4C, 0x04, 0x51, 0xC8, 0x50, 0x82, 0xA6, 0xA8, 0x35, 0x84, 0x5E, 0x25, 0x06, 0xF7, 0x5D, 0x55,\n0x11, 0x09, 0xA0, 0x4D, 0x21, 0x09, 0x1F, 0x82, 0x75, 0x76, 0xC8, 0x08, 0x48, 0x72, 0xAE, 0x11,\n0x0E, 0xB4, 0x77, 0x44, 0xC9, 0xC5, 0x9F, 0x87, 0x80, 0x57, 0xC9, 0x92, 0xA5, 0xE4, 0xBE, 0x1C,\n0x9F, 0xD9, 0x00, 0x61, 0x75, 0xF6, 0xEB, 0x20, 0x59, 0x08, 0x7A, 0x76, 0x07, 0xD7, 0xA9, 0x0A,\n0x83, 0xD4, 0x09, 0x43, 0x08, 0xBF, 0x07, 0xAC, 0x5F, 0xAE, 0x4F, 0x9D, 0x61, 0x57, 0x5D, 0x8E,\n0xC7, 0x28, 0xC2, 0xA8, 0xF8, 0x43, 0xF4, 0xF1, 0x41, 0x3C, 0x23, 0x1D, 0x6B, 0x6C, 0x88, 0x18,\n0xF8, 0x62, 0xE7, 0x8F, 0xD1, 0x0B, 0xF2, 0x04, 0xBB, 0xEA, 0x71, 0x22, 0xB6, 0x61, 0x01, 0x89,\n0x39, 0xD9, 0xD7, 0x01, 0xB2, 0x4D, 0x8F, 0xC0, 0x97, 0xDB, 0x54, 0x3D, 0xEC, 0x36, 0x71, 0xCC,\n0xD2, 0x42, 0xF5, 0xDB, 0x54, 0xAD, 0x73, 0xD3, 0xFB, 0xE9, 0x78, 0x5C, 0x6D, 0xA8, 0x96, 0xD7,\n0xC8, 0x91, 0xE3, 0xDA, 0x82, 0xDF, 0xB3, 0x4B, 0x68, 0x6C, 0x1E, 0xB9, 0x18, 0xDD, 0x76, 0x9C,\n0xC5, 0x4C, 0xC4, 0xF2, 0x6B, 0xA8, 0x43, 0xC9, 0xCB, 0xB4, 0xAE, 0x49, 0x82, 0xDF, 0xE5, 0xA3,\n0x46, 0xD6, 0xCE, 0x19, 0xEE, 0x77, 0x8F, 0x1B, 0xD7, 0x37, 0x8A, 0x14, 0x4C, 0x9A, 0x2A, 0xA0,\n0x48, 0xCC, 0x39, 0xAF, 0xA9, 0xB8, 0x54, 0x93, 0x60, 0xE4, 0xDF, 0xED, 0x75, 0x38, 0x8E, 0xEB,\n0xDB, 0x40, 0x98, 0x63, 0x8A, 0x15, 0xCB, 0x84, 0xDC, 0x4F, 0xC3, 0x23, 0x7A, 0x3E, 0x39, 0x0E,\n0x79, 0x4A, 0x25, 0xC6, 0x22, 0x2C, 0x02, 0x11, 0x2A, 0x53, 0x4C, 0xC2, 0x23, 0x33, 0xCA, 0x99,\n0xC3, 0xA3, 0xC6, 0x71, 0x73, 0x43, 0xAF, 0xE1, 0x4C, 0x64, 0x42, 0x90, 0x21, 0xF8, 0xE3, 0x7C,\n0x58, 0xE6, 0x82, 0xDF, 0x6A, 0xB4, 0x2B, 0xF8, 0xC1, 0x61, 0xE1, 0x58, 0xCB, 0x6B, 0x8A, 0x2C,\n0x90, 0x10, 0xC9, 0x94, 0xE4, 0x76, 0x8F, 0x5B, 0xEC, 0x7E, 0xCA, 0xED, 0x94, 0xD4, 0x61, 0xCA,\n0x86, 0x70, 0x8E, 0xA3, 0x48, 0x2E, 0x47, 0xF2, 0xD8, 0x71, 0xEC, 0x86, 0x2A, 0x12, 0xE1, 0x30,\n0xA5, 0x21, 0x47, 0xE7, 0x6C, 0xCD, 0x92, 0xCE, 0x6D, 0x25, 0x2F, 0x13, 0xC7, 0xA5, 0x46, 0x20,\n0x06, 0x62, 0x89, 0x28, 0xC4, 0x3C, 0x0B, 0x9C, 0x45, 0x5A, 0x8F, 0xE4, 0x74, 0x55, 0x35, 0x79,\n0x3A, 0x6E, 0x6E, 0x63, 0x8A, 0xDE, 0x25, 0xF4, 0x5E, 0x5B, 0x6B, 0xF7, 0x48, 0xEC, 0x51, 0x0E,\n0x2A, 0xDE, 0x34, 0x0E, 0x07, 0x61, 0x34, 0xD3, 0x71, 0x5A, 0x6C, 0xDB, 0xB6, 0xD6, 0x0B, 0x98,\n0x93, 0x47, 0x5E, 0x6E, 0x5D, 0xAE, 0xAA, 0xA6, 0x14, 0xC9, 0x0E, 0x8C, 0x94, 0x0D, 0x20, 0x93,\n0xED, 0x72, 0xED, 0x7C, 0x33, 0x79, 0xEC, 0x90, 0x2E, 0x53, 0x75, 0x19, 0x0E, 0xC2, 0x2A, 0x71,\n0x20, 0x5C, 0xF7, 0xAD, 0x90, 0xED, 0x1C, 0x77, 0x86, 0xDD, 0x4A, 0xD8, 0x09, 0x12, 0x21, 0xB2,\n0xFE, 0x41, 0xCE, 0x4E, 0x55, 0xC6, 0x22, 0x24, 0xDA, 0x56, 0x53, 0x99, 0x76, 0x1B, 0xDB, 0x7E,\n0x17, 0x93, 0x60, 0x4C, 0x9E, 0x3B, 0x8E, 0xC9, 0xD3, 0x5E, 0x8A, 0x89, 0x0B, 0x51, 0x09, 0xD7,\n0x42, 0xB4, 0x1F, 0xE3, 0xCE, 0x22, 0x95, 0x30, 0x23, 0x51, 0x29, 0xFA, 0x9B, 0xFF, 0x68, 0xA8,\n0xE6, 0x10, 0x95, 0x54, 0xE2, 0xA6, 0x02, 0x27, 0xCA, 0x15, 0xD9, 0x9A, 0xB2, 0x9E, 0x3B, 0xA8,\n0xA6, 0xAA, 0xA7, 0x55, 0x75, 0xCC, 0xD3, 0x26, 0x31, 0x65, 0x38, 0x84, 0xC2, 0x29, 0xB6, 0xBB,\n0x76, 0xD5, 0xA4, 0x84, 0xE4, 0xEE, 0x9B, 0x1C, 0x40, 0x24, 0xA2, 0x3E, 0x13, 0xD7, 0xF4, 0x37,\n0x84, 0xE5, 0x4B, 0xA8, 0x48, 0x1C, 0x1F, 0xDD, 0x0D, 0x0E, 0xE4, 0x69, 0x84, 0xC4, 0xD4, 0x18,\n0xC7, 0x32, 0xFC, 0xC0, 0x71, 0x60, 0x5C, 0xB5, 0x20, 0x41, 0x18, 0x9D, 0xCD, 0x7F, 0xD3, 0x6D,\n0x30, 0xF7, 0xB3, 0xF6, 0x52, 0x25, 0xFC, 0x52, 0x62, 0x2F, 0xD7, 0x88, 0xB9, 0xC1, 0x63, 0x6A,\n0x87, 0x0E, 0xDE, 0x01, 0x5D, 0x69, 0x34, 0x79, 0x0A, 0x89, 0xE8, 0xA6, 0x46, 0xE0, 0xE3, 0xF1,\n0xA1, 0x5E, 0x8F, 0x07, 0xD3, 0x82, 0x51, 0x7B, 0x0E, 0x13, 0x36, 0x48, 0x57, 0xA9, 0xBA, 0x20,\n0x4F, 0x55, 0xE2, 0x9A, 0xBA, 0x44, 0xEE, 0xA6, 0x6B, 0x05, 0xFC, 0x52, 0xE0, 0x34, 0x3E, 0x30,\n0xA5, 0x29, 0xC8, 0x9E, 0xAA, 0x1D, 0xD2, 0x57, 0xAA, 0x0E, 0x69, 0x0A, 0x89, 0x20, 0xDC, 0x5F,\n0x3F, 0xDF, 0xF7, 0xC7, 0x17, 0xF0, 0x01, 0x12, 0x23, 0xB2, 0x9F, 0x1E, 0x5D, 0xAE, 0xAA, 0x66,\n0x64, 0xC4, 0x16, 0x87, 0x89, 0xF8, 0xEE, 0xF6, 0xCA, 0x1A, 0xFC, 0x52, 0x2E, 0x81, 0xDC, 0x95,\n0x71, 0x6D, 0x8C, 0xDA, 0x55, 0x3D, 0x0D, 0x0E, 0x94, 0x62, 0x24, 0x95, 0x28, 0x8C, 0x7D, 0xE4,\n0xBF, 0xBF, 0xDD, 0xDE, 0x80, 0x70, 0x60, 0x85, 0xC8, 0xB1, 0xAB, 0x52, 0x5B, 0x55, 0x5D, 0x68,\n0x54, 0x44, 0x1C, 0x86, 0x33, 0xD2, 0x94, 0xE3, 0xC3, 0x56, 0x9E, 0x9A, 0x19, 0x45, 0x64, 0xEB,\n0xAD, 0x5B, 0x67, 0x3C, 0x6A, 0xF4, 0x50, 0x8D, 0xF3, 0xFF, 0x68, 0xA4, 0x35, 0xB7, 0xCD, 0xB4,\n0x0F, 0x8B, 0xF2, 0xD8, 0x13, 0xCE, 0xD4, 0xAF, 0x8F, 0x6F, 0xF2, 0x82, 0xC8, 0xEE, 0x51, 0xF7,\n0xD5, 0x4E, 0x18, 0x79, 0x55, 0xF5, 0xF1, 0xB3, 0x2A, 0x73, 0x9E, 0xAE, 0x69, 0x48, 0xD3, 0x52,\n0x78, 0xFC, 0xD7, 0x7B, 0x5E, 0xD8, 0x4C, 0xC0, 0x24, 0x7B, 0x14, 0xC8, 0x3E, 0x1C, 0xB1, 0xAA,\n0xBA, 0xD0, 0xB8, 0x4C, 0xCD, 0x26, 0xA5, 0x3E, 0xF4, 0x3B, 0xE1, 0xE3, 0x25, 0x3F, 0xF9, 0xE2,\n0xF1, 0x0D, 0xF1, 0xD5, 0xA8, 0x6C, 0x1E, 0xEF, 0x9A, 0xAA, 0x66, 0xFE, 0x93, 0x83, 0xA6, 0x6A,\n0xF3, 0x94, 0x4C, 0x25, 0x6A, 0x96, 0xF2, 0xC4, 0x7F, 0x5D, 0x1F, 0x7D, 0x53, 0xE4, 0x7D, 0xAF,\n0x31, 0x9A, 0xD4, 0x5D, 0xE7, 0xAE, 0xC3, 0x11, 0xF3, 0x9F, 0xFE, 0xBB, 0xC6, 0x65, 0x3E, 0x64,\n0xA4, 0x5C, 0x09, 0x9B, 0xC4, 0x3A, 0x2C, 0xDE, 0xCA, 0xB3, 0x1F, 0xBF, 0x4B, 0x7C, 0x13, 0xCA,\n0x62, 0x15, 0x1E, 0x51, 0x8E, 0xD8, 0x71, 0xC8, 0xC5, 0x1A, 0x07, 0x44, 0x1A, 0x66, 0xE2, 0x7D,\n0x15, 0x40, 0x19, 0x87, 0x9F, 0xE4, 0xE1, 0x27, 0x2C, 0x11, 0xC1, 0x90, 0xF0, 0x38, 0x6B, 0x24,\n0xAE, 0xC6, 0xFF, 0xAF, 0x51, 0x09, 0xB1, 0xBB, 0x65, 0x7B, 0xBE, 0x90, 0x21, 0xFF, 0xB9, 0x3D,\n0xFD, 0x02, 0x7C, 0xEC, 0xD2, 0x26, 0xEB, 0xD0, 0x55, 0xA3, 0x84, 0x8B, 0x6D, 0xFC, 0x07, 0x33,\n0xE7, 0xCE, 0xEB, 0x34, 0x10, 0x44, 0xE1, 0x0D, 0x8F, 0x1E, 0x21, 0xA0, 0xC6, 0x44, 0x3C, 0x4A,\n0x84, 0x23, 0x01, 0x1D, 0x12, 0x41, 0x40, 0x47, 0x61, 0x10, 0x74, 0x20, 0xE0, 0x82, 0x3B, 0x10,\n0x02, 0x3B, 0x25, 0x2F, 0x79, 0xE9, 0xA0, 0x20, 0x26, 0xFF, 0x96, 0xAC, 0x67, 0xBD, 0x67, 0xD6,\n0x63, 0xB3, 0x91, 0xF1, 0x62, 0xE6, 0x07, 0x5C, 0xDD, 0x93, 0x6F, 0x1E, 0x67, 0x76, 0x37, 0xE1,\n0x73, 0x3F, 0xF1, 0x9B, 0x0D, 0x04, 0x3E, 0x7C, 0xF9, 0x5C, 0xD9, 0xB8, 0x78, 0xE4, 0x85, 0xE9,\n0x3B, 0x2E, 0x55, 0xD1, 0x55, 0xAF, 0xA1, 0xE5, 0xCC, 0x8F, 0x51, 0xEE, 0xFB, 0xF0, 0x35, 0xC8,\n0xD3, 0x47, 0x0F, 0x95, 0x09, 0x2A, 0xC7, 0xED, 0x76, 0xEB, 0x25, 0xAB, 0xA7, 0x71, 0xD5, 0xA6,\n0xAA, 0xBB, 0xAB, 0x9A, 0x13, 0xA3, 0xDC, 0xA3, 0x00, 0x71, 0xE5, 0x41, 0xDC, 0xB3, 0x72, 0xFF,\n0xDB, 0xB1, 0x27, 0xBB, 0x5D, 0xBE, 0x0F, 0x2E, 0x12, 0xA9, 0x4A, 0x18, 0xE1, 0x71, 0x4E, 0xCF,\n0x8F, 0x91, 0x2F, 0xC3, 0x83, 0x10, 0x5F, 0xEE, 0x1B, 0xE8, 0x79, 0xD5, 0xC6, 0x99, 0x5D, 0x13,\n0x8E, 0xE5, 0x23, 0x33, 0x25, 0xA1, 0x11, 0x56, 0xD5, 0xC6, 0x5C, 0x18, 0x01, 0x11, 0xA5, 0x48,\n0x1A, 0x79, 0x25, 0x52, 0x96, 0x36, 0xC3, 0xF0, 0x96, 0x72, 0x71, 0xC9, 0x28, 0x24, 0x95, 0xE0,\n0xC8, 0x1D, 0x80, 0x2D, 0xC6, 0x6B, 0xFF, 0x45, 0x35, 0x4A, 0x88, 0xCB, 0x74, 0x09, 0x85, 0x99,\n0x53, 0x78, 0xF4, 0x80, 0x7D, 0x2E, 0x4F, 0xAC, 0xC4, 0x7C, 0x47, 0xE9, 0x4A, 0x18, 0x49, 0x23,\n0x75, 0x55, 0x60, 0x4C, 0x66, 0xC6, 0xB8, 0x90, 0x97, 0x8A, 0xE9, 0x12, 0x6B, 0x62, 0x66, 0x0B,\n0xD1, 0xC8, 0x78, 0xA6, 0x10, 0xC7, 0xF3, 0x1D, 0x40, 0x7A, 0x1C, 0xD7, 0x0C, 0x63, 0x7A, 0xE1,\n0x7F, 0x68, 0xAA, 0x50, 0xC8, 0xFA, 0x29, 0x20, 0x32, 0x85, 0x47, 0xCF, 0x15, 0x8B, 0xB3, 0x3B,\n0x17, 0x47, 0xA4, 0xB1, 0xE5, 0xE8, 0xBB, 0xF1, 0xF9, 0xAB, 0x91, 0x5F, 0x0D, 0xBB, 0x3C, 0x25,\n0x88, 0x74, 0x1A, 0x65, 0x14, 0x52, 0x9E, 0xE6, 0x2F, 0x14, 0x8F, 0xFB, 0x9B, 0xDA, 0x89, 0xCC,\n0x99, 0xC6, 0x8C, 0x38, 0xAE, 0x98, 0x8D, 0x4B, 0x80, 0x71, 0x06, 0x89, 0x5C, 0x21, 0x51, 0xE4,\n0x10, 0xD7, 0x0D, 0x16, 0xEB, 0xBB, 0xB7, 0x3F, 0x15, 0x8F, 0x63, 0xAF, 0x76, 0x1B, 0xA7, 0x32,\n0xC7, 0x78, 0x44, 0x35, 0x9A, 0x18, 0x68, 0xAA, 0x2A, 0x7E, 0x48, 0x88, 0x58, 0x15, 0x89, 0x22,\n0x20, 0xDA, 0xD5, 0x62, 0x5F, 0x7C, 0xFE, 0x87, 0x7F, 0xB6, 0x28, 0x48, 0x23, 0xEA, 0x91, 0x34,\n0xFE, 0x5F, 0x18, 0x9D, 0x3E, 0xAC, 0x8A, 0x4B, 0x0E, 0x11, 0x95, 0xB8, 0xDD, 0x0B, 0xB9, 0xAA,\n0xBC, 0xB8, 0x59, 0x18, 0x91, 0x1B, 0x70, 0x34, 0xA9, 0x8A, 0x95, 0x23, 0xA5, 0x98, 0x19, 0xE3,\n0xA2, 0x3F, 0x4F, 0x01, 0x11, 0xBD, 0xC6, 0xC8, 0xB8, 0xA5, 0x3A, 0xA9, 0x5A, 0x6C, 0xF6, 0x2A,\n0x6B, 0xC7, 0xD1, 0x61, 0xA4, 0xE1, 0x68, 0x1F, 0x91, 0xCD, 0x80, 0x31, 0x00, 0x91, 0x26, 0x46,\n0xA7, 0x12, 0xF3, 0x66, 0x46, 0x3C, 0x55, 0x7E, 0x9C, 0x30, 0x02, 0xEB, 0x16, 0x24, 0x52, 0xD5,\n0xB3, 0xAA, 0xCB, 0xD9, 0x30, 0x4A, 0x89, 0x56, 0x23, 0xF2, 0x94, 0x41, 0xDC, 0x1A, 0x0D, 0xF5,\n0x0F, 0xA5, 0x64, 0xAA, 0x32, 0x8E, 0x98, 0x1C, 0x19, 0x26, 0xC7, 0x0C, 0x18, 0x03, 0x8F, 0x89,\n0xD2, 0x6B, 0x6E, 0x62, 0xB0, 0x76, 0xDA, 0x68, 0xD8, 0xBC, 0x53, 0x4A, 0xA4, 0xAA, 0x51, 0x28,\n0x35, 0xAE, 0xB3, 0xFF, 0x04, 0xE3, 0x60, 0x9E, 0x76, 0x21, 0xE6, 0x8D, 0xC2, 0xE2, 0xBD, 0xEA,\n0xC6, 0xC9, 0x82, 0x34, 0x52, 0xAE, 0x52, 0x39, 0x52, 0x53, 0x75, 0x18, 0x97, 0xB3, 0x61, 0x94,\n0x10, 0x21, 0x71, 0xB5, 0x6A, 0x14, 0x12, 0x44, 0x97, 0xA6, 0x45, 0xF1, 0x41, 0x89, 0xB8, 0xDE,\n0x68, 0xDC, 0x58, 0x8E, 0xB9, 0xDF, 0x55, 0x57, 0xE9, 0x9C, 0x18, 0xE5, 0xE3, 0x4C, 0x0A, 0x76,\n0x8B, 0xF1, 0xD0, 0x83, 0x58, 0xD7, 0x9B, 0xA2, 0x90, 0x9F, 0xFC, 0xB1, 0xBA, 0x2C, 0x48, 0xE5,\n0x26, 0x8C, 0xF1, 0x42, 0xF0, 0xF5, 0x7F, 0x24, 0x88, 0xD8, 0xA3, 0x00, 0x11, 0xED, 0xD4, 0x15,\n0xA2, 0xD1, 0x81, 0xC1, 0xC8, 0x0C, 0x40, 0xC5, 0x38, 0xB2, 0x8E, 0xD3, 0xD3, 0x54, 0xE9, 0x14,\n0x27, 0x90, 0xA9, 0xB1, 0x20, 0x9E, 0x96, 0x27, 0x1A, 0x19, 0x6F, 0xA7, 0xA4, 0xB0, 0x78, 0xA0,\n0x64, 0xDC, 0xAD, 0xAA, 0x8A, 0x38, 0xC2, 0xC9, 0x39, 0xAB, 0x2A, 0xAA, 0xF1, 0x9F, 0xBE, 0xFE,\n0x5F, 0xF4, 0x4E, 0x0C, 0x52, 0x28, 0x21, 0xD6, 0x46, 0x63, 0xF5, 0x5D, 0xC9, 0x38, 0xF6, 0xAB,\n0x6A, 0x40, 0xD6, 0xD4, 0x72, 0x50, 0x8D, 0x6B, 0xBF, 0x1A, 0x29, 0x02, 0xFB, 0x46, 0x74, 0x88,\n0xC8, 0x53, 0x0E, 0x31, 0x77, 0x10, 0xCB, 0xB7, 0xAA, 0x27, 0xCE, 0x69, 0x5D, 0x10, 0x47, 0x93,\n0xA9, 0x3B, 0x5E, 0x8E, 0x12, 0xE3, 0x05, 0xBA, 0x8A, 0x8E, 0x8E, 0x11, 0x12, 0xD1, 0x4F, 0xBB,\n0xE6, 0xCD, 0x83, 0x58, 0x37, 0x02, 0xCB, 0xEA, 0xB3, 0xEA, 0x8B, 0xC7, 0x5A, 0xD3, 0xEC, 0xA8,\n0x69, 0x38, 0x5A, 0x8F, 0x73, 0x47, 0xB8, 0x71, 0xDC, 0xA9, 0xC6, 0xC7, 0x28, 0x9B, 0x0D, 0xB7,\n0xE0, 0x46, 0xE1, 0x1A, 0x10, 0xA9, 0x9B, 0x9A, 0x3C, 0xD5, 0x5F, 0x55, 0x5F, 0x1C, 0x2F, 0xB5,\n0xA6, 0x7A, 0x6C, 0xBB, 0x2A, 0x96, 0xE3, 0xDB, 0xC0, 0x68, 0x0F, 0xE3, 0x92, 0xC0, 0xDC, 0x88,\n0x05, 0x51, 0x2C, 0x19, 0x7E, 0x25, 0x16, 0xB5, 0x11, 0x58, 0xEA, 0x6F, 0xAA, 0x37, 0x2E, 0x6B,\n0x5D, 0x16, 0x6E, 0xED, 0xC8, 0x7D, 0x8C, 0x69, 0x17, 0x23, 0x32, 0x55, 0x62, 0x8C, 0xD7, 0x6C,\n0xF8, 0x92, 0x71, 0xDB, 0x1D, 0x68, 0x00, 0x22, 0x55, 0xA2, 0xD6, 0xBA, 0xFF, 0x7F, 0x5A, 0xFC,\n0xD2, 0x15, 0x89, 0x2C, 0x5C, 0xC7, 0x71, 0xD5, 0x28, 0x30, 0x06, 0xC6, 0x7F, 0xD4, 0x4A, 0x5C,\n0x3A, 0x8A, 0x77, 0x32, 0x52, 0x68, 0x21, 0x52, 0x96, 0x9A, 0xA0, 0xC1, 0x28, 0x7D, 0x9C, 0xC9,\n0x54, 0x94, 0xA3, 0xDB, 0x38, 0x66, 0xAB, 0x46, 0x09, 0x91, 0x5B, 0x9B, 0xB5, 0x73, 0x36, 0x8F,\n0x38, 0xC4, 0xB2, 0x34, 0x12, 0x1F, 0x0C, 0xFC, 0xB9, 0x7B, 0xDA, 0x8A, 0x24, 0xAF, 0x1A, 0xA8,\n0xC6, 0x40, 0x53, 0x8D, 0x64, 0x4F, 0xB1, 0x64, 0xC8, 0x4A, 0x24, 0x81, 0x4D, 0xBC, 0x51, 0x6A,\n0xB0, 0xE3, 0x50, 0xA6, 0xD6, 0xCE, 0xAA, 0x1A, 0x8C, 0x4D, 0x39, 0xA6, 0xB3, 0x60, 0xEC, 0x40,\n0xEC, 0x9A, 0xB7, 0x3B, 0x46, 0xA1, 0x07, 0x51, 0x93, 0xC6, 0x8F, 0x4A, 0x0D, 0x76, 0x9C, 0xB6,\n0xE7, 0x98, 0x6A, 0x74, 0x1A, 0x7B, 0xAA, 0xF1, 0x42, 0xA0, 0x1A, 0x63, 0x41, 0xC4, 0x50, 0x74,\n0x47, 0x36, 0x0E, 0x22, 0x14, 0xEA, 0x2F, 0x83, 0x7F, 0xF1, 0x17, 0x65, 0x2A, 0xAA, 0x91, 0xAE,\n0x56, 0xEF, 0xF4, 0x54, 0x63, 0xEC, 0xA7, 0xB8, 0x72, 0xC7, 0xB0, 0x10, 0x31, 0x14, 0xD7, 0x59,\n0x0B, 0x71, 0xDB, 0x42, 0xAC, 0x34, 0x05, 0x66, 0xBF, 0xF0, 0x38, 0xC0, 0xE8, 0x34, 0x5A, 0x8C,\n0xB7, 0x7B, 0x31, 0x26, 0x12, 0x63, 0xFC, 0xB1, 0xBF, 0xA4, 0x3C, 0xA5, 0x89, 0x41, 0x0A, 0x5D,\n0x25, 0x52, 0x54, 0xE7, 0xD5, 0x60, 0x3C, 0xA6, 0x8E, 0x43, 0xC3, 0x11, 0x8B, 0xE3, 0x0C, 0xD5,\n0x28, 0xF2, 0x94, 0x20, 0xF2, 0xA1, 0xE8, 0x9C, 0x0D, 0x2A, 0xD1, 0x06, 0x1A, 0xAA, 0x8C, 0x13,\n0x84, 0x11, 0xB3, 0xD1, 0x62, 0x94, 0xD5, 0x48, 0xCF, 0xC6, 0xE3, 0x62, 0x94, 0x13, 0x03, 0x43,\n0x91, 0xDB, 0x53, 0x40, 0x94, 0x69, 0x2A, 0xE3, 0x46, 0xAB, 0xD1, 0x60, 0xDC, 0x6E, 0x81, 0x11,\n0xD5, 0x28, 0x6E, 0xFF, 0xA1, 0x31, 0x2A, 0x44, 0xDE, 0x6C, 0xE8, 0xCC, 0x66, 0x00, 0xE2, 0xB7,\n0x3F, 0xE7, 0xD4, 0x31, 0xF3, 0x49, 0x90, 0x01, 0x70, 0x18, 0x45, 0x35, 0xE2, 0x2D, 0x4E, 0x12,\n0xB3, 0xE3, 0x88, 0x5E, 0x83, 0xB1, 0xBF, 0x62, 0x43, 0x31, 0x07, 0xC4, 0x40, 0x9A, 0x62, 0x70,\n0x40, 0x23, 0x30, 0x8A, 0x6A, 0xC4, 0xF7, 0xFF, 0xA3, 0x61, 0x14, 0x13, 0x03, 0x79, 0x0A, 0x88,\n0xFB, 0x20, 0x88, 0x65, 0x11, 0x4E, 0x53, 0x0C, 0x0E, 0x5D, 0x56, 0x7B, 0x85, 0xA2, 0xA9, 0xAE,\n0x43, 0x18, 0x63, 0xE7, 0xA9, 0x74, 0xE0, 0x47, 0x80, 0xD8, 0x2A, 0xAC, 0xF0, 0x8F, 0x84, 0x07,\n0x47, 0x8D, 0xA6, 0x2A, 0xAB, 0x51, 0x7E, 0x89, 0x23, 0x0A, 0x44, 0x4C, 0x8C, 0xD3, 0x72, 0x8D,\n0xA2, 0xA1, 0x68, 0x2B, 0xB1, 0xB2, 0x33, 0xF1, 0xA9, 0x0A, 0xC7, 0x6B, 0xCF, 0xAA, 0x1E, 0x56,\n0x8D, 0xD0, 0xF8, 0xAF, 0x9D, 0x4D, 0x9E, 0x5B, 0x88, 0x21, 0x5F, 0xE3, 0x6F, 0x1C, 0xA4, 0x91,\n0xAA, 0x31, 0x30, 0x1B, 0xE5, 0x70, 0x8C, 0x73, 0xA5, 0x28, 0xEF, 0x6A, 0x00, 0x71, 0x57, 0x33,\n0x5F, 0x23, 0x86, 0xFE, 0xE0, 0xFC, 0xD7, 0x85, 0xC0, 0x28, 0x4E, 0x71, 0xE2, 0x62, 0xE4, 0x10,\n0x69, 0xEE, 0xBB, 0x37, 0x1A, 0xD8, 0x85, 0x69, 0x62, 0x30, 0x88, 0x3F, 0xD4, 0x41, 0x71, 0x02,\n0x4D, 0x55, 0x60, 0x94, 0x37, 0x1C, 0x3C, 0x22, 0x41, 0x4C, 0x64, 0xB3, 0xC9, 0x30, 0xF6, 0xA9,\n0x14, 0x49, 0x21, 0x3F, 0xB4, 0x09, 0xCF, 0xFF, 0x40, 0x35, 0x12, 0x46, 0xFA, 0xDD, 0x4A, 0x74,\n0xD5, 0xC8, 0x79, 0x8A, 0x6E, 0xD3, 0x42, 0xEC, 0xB4, 0xD3, 0x5B, 0xEA, 0xC0, 0x38, 0x4E, 0xC5,\n0x18, 0xAC, 0x46, 0xFA, 0x9E, 0x4A, 0x9C, 0x67, 0xE3, 0xFE, 0xC4, 0x20, 0x8C, 0x29, 0x9C, 0x4D,\n0xD7, 0x9E, 0x56, 0x62, 0x24, 0x06, 0x31, 0x9A, 0x38, 0xB4, 0x1A, 0x79, 0xC4, 0xCA, 0x53, 0x40,\n0x5C, 0xAF, 0x90, 0xA7, 0x80, 0x18, 0xEA, 0x35, 0xD2, 0xC6, 0x61, 0x36, 0x06, 0xAA, 0x31, 0x89,\n0xF4, 0x23, 0x0E, 0xC3, 0xF6, 0x94, 0x14, 0x76, 0x9C, 0x4D, 0xD9, 0xD7, 0x6B, 0xC2, 0x36, 0xAE,\n0x1A, 0xC6, 0x88, 0x47, 0x9C, 0xA4, 0x71, 0xFA, 0xC9, 0xE1, 0xDB, 0xD3, 0x04, 0x67, 0x36, 0x70,\n0x36, 0xA4, 0x10, 0xC7, 0x6E, 0xF2, 0xF4, 0x34, 0xE0, 0xC6, 0x87, 0x31, 0xA6, 0x14, 0x96, 0x62,\n0x9C, 0x54, 0x5D, 0x88, 0x03, 0x62, 0x71, 0xE1, 0xC6, 0x2B, 0xD1, 0xD9, 0xEF, 0x08, 0x18, 0x71,\n0xC4, 0x81, 0xF1, 0x11, 0x37, 0x4F, 0x6F, 0x77, 0x76, 0x8C, 0x82, 0x0F, 0x8C, 0xC9, 0x30, 0xAE,\n0x1C, 0x46, 0x67, 0xE3, 0xA6, 0x4E, 0xD5, 0x21, 0x7B, 0x9A, 0xAE, 0xBA, 0xCE, 0xA6, 0xB9, 0x6C,\n0x1B, 0x1C, 0x18, 0xE1, 0xA5, 0x2A, 0x80, 0xD1, 0x2D, 0x55, 0x7E, 0x4C, 0x96, 0xA7, 0xF2, 0x4B,\n0x27, 0x2B, 0xEE, 0x6C, 0x72, 0x78, 0x37, 0x32, 0xA7, 0x63, 0x30, 0x56, 0xD5, 0x41, 0x18, 0x29,\n0x51, 0x11, 0x71, 0x9F, 0x12, 0xC1, 0xD9, 0xE4, 0x04, 0xB1, 0xC0, 0xC0, 0x18, 0x81, 0xB1, 0x94,\n0x18, 0x9D, 0x46, 0x87, 0x31, 0x21, 0x8C, 0x10, 0x79, 0x6A, 0xCA, 0x3C, 0x95, 0x4F, 0x88, 0x79,\n0xB3, 0x71, 0xEE, 0xF4, 0x93, 0x52, 0xE3, 0x30, 0x6A, 0x59, 0x8D, 0xEC, 0x85, 0xA3, 0x6B, 0x38,\n0x34, 0x1A, 0x11, 0x13, 0xE6, 0xA9, 0x29, 0x04, 0xB9, 0x0B, 0x8B, 0x4A, 0xAC, 0x00, 0x71, 0x92,\n0x6A, 0x04, 0x46, 0x68, 0x34, 0x31, 0x95, 0x01, 0x18, 0x3E, 0x78, 0x73, 0x73, 0x1F, 0x5B, 0x14,\n0x8D, 0x7D, 0x5C, 0x7D, 0x4F, 0xD4, 0x54, 0x2D, 0xC5, 0xD4, 0x2A, 0x34, 0x0B, 0x87, 0xCF, 0x71,\n0x32, 0x89, 0xB2, 0xD9, 0x64, 0x1D, 0x7B, 0x5A, 0xBA, 0xD3, 0x8C, 0x11, 0x71, 0xE5, 0x50, 0x8C,\n0xB0, 0x38, 0xC0, 0x38, 0x55, 0x9E, 0x72, 0x88, 0x69, 0xF7, 0xCC, 0xC6, 0x40, 0xAC, 0x46, 0x42,\n0x84, 0x53, 0xAD, 0xAA, 0x70, 0x35, 0x1A, 0x8B, 0xD5, 0xE1, 0x38, 0x65, 0x9E, 0xE2, 0xDD, 0x22,\n0x9A, 0x0D, 0xEE, 0x31, 0x4A, 0x40, 0x1C, 0x83, 0x31, 0xD8, 0x54, 0xF1, 0x16, 0x37, 0x11, 0x56,\n0x75, 0x1A, 0x7F, 0xCA, 0xEC, 0x69, 0xEA, 0x5D, 0x29, 0xC2, 0xD9, 0x00, 0xE2, 0x48, 0x8C, 0x7A,\n0xB8, 0x1A, 0x31, 0x38, 0x92, 0x64, 0xBA, 0xF9, 0xBF, 0x18, 0xBE, 0xFA, 0x76, 0xCE, 0x06, 0x95,\n0x18, 0x82, 0x38, 0x7E, 0x6F, 0x94, 0x97, 0x71, 0x89, 0x6F, 0x55, 0x4F, 0x4D, 0xF4, 0x8B, 0x36,\n0x21, 0x67, 0x33, 0x1E, 0x22, 0xD6, 0x7F, 0xD9, 0x54, 0xE9, 0x88, 0x43, 0xBA, 0x71, 0x3F, 0xA6,\n0xF9, 0xE6, 0x10, 0x45, 0x9F, 0xB3, 0xC1, 0x8E, 0x01, 0x88, 0x63, 0xE2, 0x5E, 0x2F, 0xC6, 0x3B,\n0x19, 0xFB, 0x4A, 0x15, 0xAA, 0x51, 0xB8, 0xF1, 0x09, 0x7E, 0x04, 0x0D, 0xCE, 0x86, 0x35, 0x1B,\n0xF4, 0x53, 0x5D, 0x02, 0xE2, 0xC8, 0x38, 0xD1, 0xDF, 0x54, 0xD7, 0xA2, 0x1A, 0xCD, 0x7F, 0x33,\n0xCD, 0x52, 0xB5, 0x90, 0xE6, 0xED, 0x9A, 0x3C, 0xB3, 0xB1, 0x79, 0x5A, 0x00, 0xE2, 0xE8, 0x78,\n0x2C, 0x9B, 0xAA, 0x09, 0x89, 0x71, 0xB2, 0x63, 0x1C, 0xD1, 0x6C, 0xE4, 0x99, 0x0D, 0x9C, 0x0D,\n0xDC, 0xE9, 0xF8, 0x38, 0xD9, 0xDB, 0x54, 0x33, 0xBE, 0x54, 0x59, 0x85, 0xF2, 0x27, 0xD5, 0x26,\n0x18, 0x19, 0x14, 0xD8, 0x14, 0xE1, 0x6C, 0x60, 0x4F, 0xCF, 0xFF, 0xAD, 0x23, 0xFE, 0x4D, 0xDC,\n0xD9, 0xEB, 0x36, 0x11, 0x05, 0x51, 0x78, 0x11, 0x24, 0x28, 0x9D, 0x71, 0xE3, 0x16, 0x27, 0x05,\n0x29, 0x51, 0x48, 0x01, 0x35, 0x58, 0x49, 0x0D, 0x76, 0x78, 0x03, 0x7E, 0x4A, 0x24, 0xC4, 0xDA,\n0x1D, 0x12, 0x88, 0x85, 0x07, 0x40, 0xF0, 0xB8, 0x44, 0x77, 0xCD, 0x7C, 0x3B, 0x1C, 0x7B, 0x75,\n0xB3, 0x93, 0xBB, 0xCC, 0x0B, 0x58, 0x57, 0x67, 0x7E, 0xCE, 0x9C, 0x9D, 0x19, 0xBF, 0xB3, 0x68,\n0x14, 0x18, 0xCF, 0x13, 0x8C, 0xB6, 0x6E, 0x24, 0xAE, 0x1A, 0xF7, 0xD3, 0xB9, 0xCC, 0xD9, 0xC0,\n0x6C, 0x52, 0xC5, 0x00, 0xC4, 0x80, 0x1D, 0x91, 0x54, 0x15, 0x46, 0xEA, 0x06, 0x30, 0x62, 0x51,\n0x3F, 0xD5, 0x61, 0xFE, 0x25, 0xCC, 0x26, 0x91, 0x37, 0x66, 0xC1, 0x42, 0x30, 0xAE, 0xF7, 0xC2,\n0x08, 0x53, 0xCD, 0x38, 0x37, 0x16, 0x0C, 0xC5, 0xF3, 0xE7, 0xB4, 0x51, 0x08, 0x6F, 0x34, 0xFB,\n0x21, 0x7B, 0xD4, 0x03, 0xA3, 0x67, 0xAA, 0x78, 0x2A, 0x4F, 0x8C, 0xE7, 0x53, 0x34, 0xF0, 0xC5,\n0x3F, 0xCC, 0xA6, 0x11, 0xC5, 0x26, 0x44, 0xC6, 0xF7, 0x46, 0x23, 0x30, 0x6A, 0x52, 0x0D, 0x3C,\n0x71, 0xAF, 0xB6, 0x78, 0xD5, 0xE9, 0x14, 0x91, 0xDD, 0x82, 0xF6, 0xB4, 0x37, 0x1A, 0x75, 0x31,\n0x0E, 0x8B, 0x76, 0x19, 0x52, 0x14, 0xBD, 0x66, 0x23, 0xDF, 0x84, 0x83, 0xE5, 0x3F, 0x27, 0x1A,\n0xE7, 0x9C, 0x1B, 0x15, 0x4F, 0x8D, 0xF9, 0x29, 0xEB, 0x0A, 0x80, 0x28, 0x02, 0x78, 0xA8, 0xFC,\n0xEB, 0xD7, 0x7F, 0xB7, 0xA7, 0xAA, 0x30, 0xC6, 0x9F, 0x48, 0xB2, 0x91, 0x76, 0x1F, 0xE1, 0x0D,\n0xEE, 0x16, 0xAD, 0x1B, 0x7D, 0x30, 0x76, 0x58, 0xDC, 0x5C, 0xE6, 0x8D, 0x62, 0x14, 0x7C, 0x8A,\n0x2C, 0xF5, 0x7C, 0x47, 0xBB, 0x2F, 0x65, 0x3F, 0x54, 0x37, 0xFA, 0x60, 0xA4, 0x36, 0xEA, 0xB5,\n0xD1, 0xE8, 0xA5, 0x10, 0xE6, 0x16, 0x61, 0xE0, 0x30, 0x1B, 0xBE, 0x27, 0xC6, 0xED, 0x74, 0x1F,\n0x8C, 0xF2, 0xBD, 0x71, 0x2A, 0xD3, 0x7F, 0x81, 0x50, 0x44, 0x3E, 0x4D, 0x20, 0xA6, 0xF9, 0x5A,\n0xC7, 0x6C, 0xA8, 0x18, 0x61, 0xBB, 0x6B, 0x44, 0x55, 0x60, 0x74, 0xAD, 0xB1, 0xD4, 0x8D, 0x49,\n0x84, 0xDA, 0xA8, 0x7C, 0x7A, 0xE5, 0x14, 0x0D, 0xAD, 0x18, 0xF1, 0xB6, 0xB1, 0x11, 0x18, 0x77,\n0x7E, 0xA8, 0xC2, 0x53, 0x07, 0x3F, 0x11, 0xD1, 0xE6, 0xCC, 0xCF, 0x2D, 0x7A, 0xCD, 0x46, 0x56,\n0xA3, 0xA2, 0xFD, 0x86, 0x46, 0x23, 0xFB, 0x8D, 0x68, 0x71, 0xBE, 0xFA, 0x07, 0x54, 0x1B, 0xB7,\n0x74, 0x82, 0x9F, 0xBE, 0xC1, 0x4F, 0xA5, 0x51, 0x0C, 0xD9, 0xEF, 0x84, 0x62, 0x0F, 0x8C, 0x27,\n0x5D, 0xF5, 0x1F, 0x8B, 0xFB, 0x29, 0xCA, 0x9B, 0x2B, 0x8A, 0x8D, 0xF4, 0x18, 0x51, 0x9B, 0x99,\n0xA7, 0x7A, 0x18, 0x17, 0xBB, 0x64, 0xE3, 0xC1, 0xC5, 0x5F, 0xFA, 0xA8, 0x2E, 0x8A, 0xA2, 0x81,\n0x4B, 0x8F, 0x11, 0x26, 0xAA, 0xFD, 0xB3, 0x38, 0xF4, 0x54, 0xD7, 0xC6, 0x77, 0xAA, 0xC9, 0x40,\n0x3F, 0xD5, 0x8A, 0x41, 0x51, 0x0C, 0xD0, 0xD3, 0x8C, 0x69, 0x23, 0x81, 0x71, 0xC5, 0x46, 0x15,\n0x09, 0x67, 0x68, 0x4A, 0xF5, 0xBA, 0x14, 0xF9, 0x14, 0xF9, 0xD4, 0x3A, 0xC5, 0x46, 0xE9, 0x69,\n0x3C, 0xE1, 0x18, 0x8C, 0xBF, 0xBA, 0x30, 0x2E, 0x57, 0xAE, 0x6E, 0xA8, 0xA7, 0x0E, 0x06, 0x91,\n0x27, 0x22, 0x9F, 0x5A, 0x3E, 0x25, 0xD9, 0xDC, 0x7A, 0xC2, 0xD1, 0xA4, 0xAA, 0x22, 0xCE, 0xD4,\n0x25, 0x9C, 0x10, 0x88, 0x7C, 0xAB, 0x69, 0xA7, 0x4F, 0xD9, 0x34, 0xB5, 0x64, 0x53, 0x20, 0xE1,\n0x74, 0x61, 0x6C, 0x37, 0xAA, 0x10, 0x71, 0x10, 0xAA, 0x08, 0xC6, 0x50, 0xBF, 0x4F, 0xDD, 0xF7,\n0x20, 0xD6, 0xF4, 0xC2, 0x85, 0x12, 0x0E, 0x30, 0xDA, 0x5E, 0xBC, 0x7A, 0x2A, 0xC1, 0x38, 0x8C,\n0xBC, 0xD1, 0x64, 0x9C, 0x77, 0x87, 0xF9, 0xAD, 0x28, 0x7E, 0xAB, 0x6E, 0xDF, 0x2E, 0x89, 0x46,\n0xDB, 0xE1, 0x94, 0xB6, 0x11, 0x12, 0x07, 0xBF, 0x09, 0x5C, 0x08, 0xF3, 0xCD, 0x30, 0x45, 0x91,\n0x36, 0xEA, 0x56, 0xED, 0x70, 0xEB, 0xA9, 0x4D, 0xBB, 0xC3, 0xC1, 0xB6, 0xB1, 0xEB, 0x37, 0x44,\n0x8A, 0x0B, 0xCC, 0xF5, 0x9D, 0xF9, 0xD1, 0x4C, 0x5F, 0x14, 0x1F, 0x56, 0x05, 0x6C, 0xFD, 0x1D,\n0xD9, 0x98, 0x35, 0x55, 0xA7, 0xFE, 0x3B, 0x4F, 0x25, 0x18, 0xF3, 0x41, 0x54, 0x3F, 0x85, 0xBC,\n0xB9, 0x4E, 0xF1, 0x6B, 0x55, 0xC2, 0x4E, 0x5D, 0xF9, 0x07, 0x46, 0x3C, 0xF5, 0xC4, 0xA6, 0x8D,\n0xC8, 0xA9, 0x03, 0xE8, 0xA9, 0x5F, 0x36, 0xF5, 0x4D, 0xC6, 0xA6, 0x48, 0x51, 0x44, 0xC3, 0xE1,\n0x8D, 0xDB, 0xE5, 0x3F, 0x3B, 0x36, 0x02, 0xC3, 0x19, 0x18, 0x8C, 0xFB, 0x2F, 0x30, 0xD0, 0x64,\n0xBC, 0x2F, 0xC0, 0xC0, 0x45, 0xC3, 0x81, 0x8C, 0xFF, 0x64, 0x4D, 0xC5, 0x31, 0x1C, 0x19, 0x6F,\n0x98, 0x0C, 0x9A, 0x5C, 0xD4, 0x65, 0xD3, 0xA4, 0xBC, 0x59, 0xC9, 0xF8, 0x52, 0x95, 0xB1, 0xFB,\n0x1D, 0x18, 0x5F, 0x02, 0x63, 0xBB, 0x6C, 0xDC, 0xBE, 0xD1, 0xCE, 0xA9, 0xDB, 0x39, 0x95, 0xC9,\n0x80, 0xC9, 0x45, 0x27, 0xDA, 0xC8, 0xB4, 0x54, 0xDF, 0x5C, 0x66, 0xBC, 0x34, 0x02, 0xE3, 0xE3,\n0xF7, 0xC0, 0x68, 0x8A, 0x2A, 0xE3, 0x0D, 0x32, 0x2C, 0x36, 0x60, 0xD6, 0x9D, 0xB3, 0x44, 0xD4,\n0xFD, 0x4D, 0xEB, 0xA7, 0x3F, 0xAA, 0x52, 0x76, 0x09, 0x8C, 0x93, 0x67, 0x0E, 0x46, 0x29, 0x8D,\n0x5C, 0xE1, 0x1E, 0x32, 0x4B, 0x84, 0x68, 0x43, 0x51, 0xA4, 0xC9, 0x28, 0x40, 0xDE, 0x50, 0x1B,\n0x0D, 0xC6, 0x4F, 0xD5, 0x61, 0x47, 0x19, 0xEF, 0x9C, 0x8C, 0x35, 0x9E, 0x6A, 0x93, 0xFF, 0x37,\n0x5F, 0x19, 0xD6, 0x95, 0x8C, 0xAB, 0x4E, 0xC9, 0x68, 0x4A, 0x90, 0x37, 0xFC, 0x69, 0x8B, 0xE2,\n0xBA, 0xF9, 0x58, 0xDD, 0x4B, 0x28, 0x6E, 0x89, 0xAA, 0x0A, 0x1C, 0xE8, 0x1B, 0xD9, 0x6E, 0x4A,\n0x33, 0xAC, 0x2B, 0x19, 0xBC, 0xB0, 0x9C, 0x9F, 0xD2, 0x35, 0x26, 0x18, 0x3F, 0x54, 0x77, 0xBA,\n0x57, 0x2A, 0x16, 0xBE, 0x34, 0xA6, 0x60, 0x94, 0xC6, 0x3F, 0xFF, 0xA2, 0x0D, 0xE3, 0x52, 0x3A,\n0xB8, 0xB8, 0x96, 0xAD, 0x7D, 0xB5, 0x38, 0x89, 0x6B, 0x2B, 0xEF, 0x6B, 0xDA, 0x46, 0x0E, 0x38,\n0xB8, 0x60, 0x6C, 0xB9, 0xF8, 0x64, 0xD8, 0x59, 0xA2, 0xE4, 0xA8, 0xF2, 0x25, 0xA3, 0xB4, 0x9F,\n0x42, 0xE2, 0x9A, 0xEB, 0x1F, 0x79, 0x04, 0x51, 0x75, 0x07, 0x1C, 0x68, 0xA8, 0x40, 0x31, 0xEF,\n0x85, 0x5A, 0x14, 0xCF, 0xF9, 0xBC, 0xCF, 0xA0, 0x4D, 0x81, 0x26, 0x43, 0x49, 0x5C, 0x3A, 0xB6,\n0x72, 0xF0, 0x97, 0xC5, 0x69, 0xBB, 0xE1, 0x97, 0x1B, 0xF2, 0xDC, 0x94, 0xA2, 0xA8, 0xCA, 0xDB,\n0x8A, 0xE5, 0xA8, 0xEF, 0x45, 0xFD, 0x14, 0x7D, 0x23, 0xC5, 0xFB, 0xDD, 0x9A, 0x45, 0x5C, 0x3C,\n0x95, 0x8F, 0x54, 0x36, 0xD9, 0x78, 0x13, 0x10, 0x8F, 0xF5, 0x68, 0x0F, 0xE7, 0x5E, 0x52, 0xC9,\n0xC0, 0x4F, 0x4B, 0xD9, 0x9A, 0x95, 0x88, 0xB7, 0x1B, 0x4A, 0xE3, 0x72, 0x85, 0xA7, 0x12, 0x8C,\n0xAD, 0x65, 0xBD, 0x50, 0x8B, 0xA2, 0x26, 0x9B, 0xF4, 0xC2, 0x62, 0xF9, 0x14, 0x4F, 0x65, 0xD6,\n0xFC, 0xA2, 0x85, 0x11, 0x0D, 0x67, 0x4B, 0xC5, 0xCF, 0x6E, 0x12, 0x8C, 0x0F, 0x04, 0x44, 0xBD,\n0xC0, 0xE0, 0x3E, 0xEF, 0x17, 0xF3, 0x53, 0x3C, 0x95, 0x73, 0x32, 0xB3, 0xBA, 0x36, 0x0D, 0x87,\n0x37, 0x12, 0x8C, 0xC7, 0xA4, 0xD4, 0x0C, 0x10, 0xB9, 0xF7, 0x42, 0x51, 0x54, 0xE5, 0x0D, 0x3F,\n0x2D, 0x68, 0x1C, 0x05, 0x3A, 0xF8, 0x7B, 0x32, 0x46, 0x3F, 0x6F, 0x24, 0x03, 0xC5, 0xBC, 0x17,\n0x6A, 0x51, 0x44, 0x04, 0x87, 0x82, 0x97, 0xF5, 0x53, 0x3C, 0xF5, 0x61, 0x62, 0xE5, 0xA9, 0x35,\n0xB6, 0xD2, 0x48, 0xF5, 0xCF, 0x0F, 0x46, 0x5E, 0x07, 0x77, 0xD3, 0x19, 0x62, 0x44, 0x9B, 0xEC,\n0x91, 0xB7, 0xB8, 0xA7, 0x56, 0xC9, 0xDE, 0xD6, 0x1B, 0x72, 0xAA, 0x13, 0x54, 0xD3, 0x0B, 0x6D,\n0x02, 0x27, 0x1B, 0xC4, 0x6B, 0xA3, 0x28, 0x5A, 0xB6, 0x41, 0xB4, 0x59, 0xAF, 0xE9, 0xA3, 0x4A,\n0x1A, 0x02, 0xDF, 0x45, 0x5D, 0xBB, 0x76, 0x83, 0xCA, 0x28, 0x28, 0xE6, 0x81, 0x08, 0x03, 0xEF,\n0x19, 0x04, 0xAF, 0xCA, 0xDB, 0xA9, 0xF5, 0xDC, 0xB3, 0x76, 0x12, 0xC7, 0xDA, 0x0D, 0x8B, 0x46,\n0xC6, 0xC5, 0x12, 0x8C, 0xD9, 0x20, 0x6A, 0x51, 0xA4, 0xC9, 0xD8, 0xA4, 0x92, 0x51, 0xA8, 0xDF,\n0x57, 0x9E, 0xFA, 0x79, 0xEB, 0xB3, 0xA6, 0x53, 0x59, 0xEF, 0xEF, 0x15, 0x1C, 0xC9, 0x37, 0x02,\n0xA2, 0x26, 0x1B, 0x8A, 0xA2, 0x8A, 0x36, 0xD9, 0x5F, 0x86, 0xE3, 0xF3, 0x1B, 0x49, 0xFE, 0x4A,\n0xF9, 0xA6, 0xEE, 0xF0, 0xD4, 0x25, 0xC1, 0x68, 0x0B, 0x71, 0x3C, 0xB1, 0x17, 0x44, 0xDA, 0x28,\n0x2D, 0x8A, 0x88, 0x36, 0x6B, 0xF4, 0xD3, 0xC2, 0xF6, 0xD4, 0xBE, 0x5D, 0xFE, 0x4A, 0x30, 0x9A,\n0x12, 0x67, 0x67, 0xC6, 0x69, 0xA8, 0x28, 0x8C, 0xBD, 0x20, 0xE2, 0xA7, 0x28, 0xC4, 0x7A, 0x81,\n0xA1, 0x49, 0xBC, 0x6A, 0x0C, 0x3B, 0xB2, 0x88, 0xBF, 0x48, 0xC2, 0xB8, 0xEF, 0xA8, 0x08, 0x46,\n0x4E, 0xC5, 0xE6, 0x81, 0xE8, 0x65, 0x7E, 0x2B, 0x8A, 0xAC, 0xB8, 0x19, 0xE9, 0x28, 0x6E, 0x77,\n0xAC, 0x99, 0x99, 0xD5, 0xE4, 0x54, 0xF3, 0x54, 0x82, 0x91, 0x94, 0x9A, 0x95, 0x6C, 0x44, 0xD1,\n0x58, 0xC9, 0xB8, 0x14, 0xD4, 0xA6, 0xB0, 0xBD, 0xB2, 0xCC, 0xD3, 0x8A, 0xC6, 0x76, 0x12, 0x2F,\n0x39, 0x2A, 0xC1, 0x68, 0x30, 0xE6, 0xF8, 0x29, 0xDF, 0xBE, 0x29, 0x8A, 0x2A, 0x82, 0xFF, 0xA8,\n0x46, 0xB6, 0xBB, 0x35, 0x04, 0xC7, 0xE4, 0x0D, 0xB7, 0xD8, 0x00, 0x8A, 0x59, 0x7E, 0xCA, 0x38,\n0x3F, 0x17, 0x6D, 0x64, 0x10, 0x7C, 0x5C, 0x4B, 0xD7, 0xD4, 0xF6, 0x07, 0xE3, 0xB1, 0xE4, 0x1B,\n0x7D, 0xA2, 0xDE, 0xD1, 0xF0, 0x45, 0x11, 0x0A, 0xCE, 0xF8, 0xE9, 0x98, 0xF6, 0x7A, 0xFB, 0xB1,\n0x11, 0x4F, 0x75, 0xC1, 0xC8, 0x10, 0x55, 0x06, 0xB3, 0x99, 0x03, 0xA2, 0x2B, 0x8A, 0xE4, 0xD3,\n0xA4, 0x36, 0x8C, 0x6D, 0xA7, 0xB5, 0x27, 0x38, 0x04, 0x23, 0x6B, 0x54, 0x19, 0x4F, 0x94, 0xCB,\n0x4B, 0xDC, 0xEA, 0xE3, 0xB6, 0x14, 0x8B, 0xED, 0xA3, 0xDA, 0x11, 0xC1, 0x68, 0xAA, 0x38, 0xC1,\n0x88, 0xA3, 0xE6, 0xB6, 0x51, 0x9C, 0x79, 0xE3, 0x56, 0x1F, 0xA2, 0x8D, 0xD1, 0xAA, 0x31, 0xED,\n0xA0, 0x21, 0x18, 0xAF, 0x70, 0x54, 0x04, 0x63, 0x2D, 0x8C, 0xFA, 0x44, 0xFD, 0x2B, 0xBE, 0x4E,\n0xA7, 0x68, 0xF9, 0xB4, 0x0E, 0xEC, 0x64, 0xC4, 0x3E, 0xE4, 0x00, 0xA3, 0x9F, 0x33, 0xF6, 0x2C,\n0x35, 0xD7, 0x4F, 0xB5, 0x28, 0x26, 0x14, 0x6D, 0x29, 0xBA, 0xFA, 0x0F, 0xF6, 0x7B, 0x47, 0x30,\n0xA6, 0x7C, 0x03, 0x83, 0xCB, 0x79, 0xE2, 0x5C, 0x66, 0x88, 0xF5, 0x4B, 0x06, 0x25, 0x63, 0x5C,\n0xBB, 0x34, 0x4F, 0x25, 0x18, 0x9F, 0x68, 0x30, 0x66, 0xC8, 0x52, 0x32, 0xD5, 0xE7, 0x44, 0x70,\n0xBA, 0x8C, 0xD1, 0x6D, 0x96, 0xE6, 0x37, 0xF6, 0x06, 0x23, 0x29, 0xB5, 0x27, 0x14, 0x99, 0x96,\n0xE2, 0xB3, 0xE9, 0xE2, 0x85, 0x6C, 0x9B, 0xD2, 0x65, 0x8C, 0x6B, 0x87, 0xBB, 0x83, 0x11, 0x14,\n0xA7, 0x39, 0x4F, 0x9C, 0xCB, 0x02, 0x98, 0xBD, 0x90, 0x7C, 0x3A, 0x36, 0x7B, 0x63, 0xC4, 0xC1,\n0x05, 0xE3, 0x72, 0x99, 0x82, 0x51, 0xF2, 0x8D, 0x3E, 0x51, 0x92, 0x8D, 0x4E, 0x30, 0x30, 0x9C,\n0x19, 0x13, 0xA6, 0xE2, 0xFD, 0xF1, 0xEE, 0x60, 0x3C, 0xB1, 0x27, 0xCE, 0x79, 0x62, 0xCF, 0x87,\n0x0C, 0x94, 0x37, 0x16, 0x6B, 0x5C, 0x93, 0x31, 0x3E, 0x7B, 0xE3, 0x46, 0xA5, 0x0B, 0xC6, 0x85,\n0xD7, 0x6F, 0xA6, 0x74, 0x8C, 0xFA, 0x44, 0xFD, 0x53, 0xCC, 0x33, 0xFC, 0x94, 0x45, 0xC5, 0xCD,\n0x26, 0xE5, 0xD3, 0xF1, 0xD9, 0x1B, 0x29, 0xB5, 0xF1, 0xC1, 0xE8, 0x9B, 0x8D, 0x7D, 0x85, 0x51,\n0xFD, 0x14, 0x7E, 0x8A, 0xF2, 0xE6, 0xF3, 0xE9, 0xB7, 0xEA, 0xFF, 0xD8, 0x1F, 0xE6, 0xCE, 0x5E,\n0xB9, 0x89, 0x20, 0x08, 0xC2, 0x5B, 0x70, 0x50, 0x10, 0x42, 0xA4, 0x98, 0x80, 0x9F, 0x14, 0x25,\n0xE4, 0x86, 0xDC, 0x81, 0xA5, 0x32, 0x99, 0xA8, 0x02, 0x97, 0xF5, 0x04, 0x27, 0x87, 0x44, 0xA7,\n0x90, 0x08, 0x9B, 0xB7, 0x85, 0xDB, 0x5B, 0xEF, 0x77, 0xA3, 0x5E, 0xED, 0x91, 0xED, 0xEC, 0x1B,\n0x74, 0xF5, 0xED, 0x74, 0xCF, 0xCF, 0xCE, 0xAD, 0x8E, 0x03, 0x97, 0x71, 0x3E, 0xBC, 0x61, 0x0B,\n0x8D, 0xF5, 0x68, 0xA3, 0x7F, 0x1D, 0x42, 0x14, 0x89, 0xA7, 0x3F, 0x43, 0x9B, 0xF3, 0xFC, 0x78,\n0x38, 0x93, 0x50, 0x19, 0xD5, 0x58, 0xFA, 0xE9, 0x10, 0xF1, 0x54, 0x16, 0x82, 0x47, 0x84, 0x2D,\n0xAE, 0x22, 0x21, 0x75, 0xA6, 0x8C, 0x84, 0x9B, 0x14, 0x6F, 0xA8, 0x33, 0x2E, 0xED, 0xE8, 0x85,\n0x45, 0x7D, 0x93, 0xD1, 0xF7, 0x6D, 0xAE, 0x22, 0x43, 0x1C, 0x83, 0x29, 0x8A, 0xF3, 0xA5, 0xF2,\n0xBA, 0xB8, 0x0E, 0x31, 0xBD, 0x71, 0x23, 0x9E, 0x32, 0x43, 0x4C, 0x3C, 0x6D, 0x70, 0x15, 0x71,\n0xA9, 0x71, 0x24, 0xCE, 0xD4, 0xA8, 0x2E, 0x62, 0xBC, 0xA9, 0x09, 0x63, 0x51, 0xF7, 0x53, 0x71,\n0x51, 0x93, 0x8C, 0xA1, 0xD1, 0x55, 0x64, 0xA2, 0x0A, 0x65, 0xDC, 0xCC, 0x59, 0xFC, 0x58, 0x61,\n0xD1, 0x92, 0x58, 0xCC, 0xF7, 0x6F, 0x4C, 0x3C, 0x6D, 0x62, 0x50, 0x09, 0xA9, 0xBD, 0xB9, 0x8C,\n0x57, 0x74, 0x52, 0x97, 0x59, 0xD4, 0x78, 0x5A, 0x48, 0x32, 0x7A, 0x16, 0x83, 0xB6, 0x39, 0x2F,\n0xF3, 0x65, 0xA4, 0x0C, 0x37, 0x61, 0xAC, 0x84, 0x54, 0x89, 0xA7, 0xA5, 0x31, 0xE9, 0xFD, 0x7E,\n0xFA, 0xF9, 0xD7, 0xB1, 0x95, 0x41, 0xA5, 0xDF, 0xC8, 0x65, 0x8C, 0xC9, 0x06, 0x16, 0xEE, 0x7C,\n0x52, 0xAC, 0x24, 0x92, 0x47, 0xB1, 0xD2, 0x86, 0xD5, 0xFC, 0x6D, 0x0C, 0x2A, 0x89, 0x7F, 0xC4,\n0x68, 0xFC, 0x4D, 0x41, 0x18, 0x97, 0x57, 0x2E, 0x22, 0x19, 0xE2, 0x4F, 0xA9, 0xF4, 0xB7, 0x39,\n0x07, 0xA3, 0x1A, 0x69, 0xC8, 0x08, 0x23, 0x7E, 0x0E, 0xA2, 0xB2, 0x28, 0x92, 0x41, 0x3C, 0x6D,\n0x50, 0xB6, 0xD1, 0x3F, 0xA9, 0x15, 0xE2, 0x8D, 0x86, 0x54, 0x85, 0xA8, 0x2B, 0x17, 0x19, 0xE7,\n0x37, 0xF1, 0x74, 0x08, 0x0D, 0xCF, 0xA7, 0x38, 0x66, 0x6C, 0xCB, 0xFE, 0x92, 0x31, 0x0A, 0x44,\n0xF2, 0xFD, 0x79, 0xE9, 0xAD, 0xFC, 0x66, 0xB8, 0x41, 0x05, 0x55, 0x26, 0xC6, 0x11, 0x7F, 0x4A,\n0xE2, 0x55, 0x16, 0x97, 0x4A, 0x6F, 0xDB, 0xEF, 0x89, 0xC4, 0x88, 0xB0, 0x41, 0x05, 0x55, 0x1A,\n0xE3, 0x83, 0x69, 0xA5, 0xE6, 0x71, 0x7F, 0x1A, 0x70, 0x02, 0x51, 0x4B, 0x1A, 0xD6, 0xDA, 0x7C,\n0xDB, 0xE6, 0x1F, 0x2C, 0xB0, 0x87, 0xB8, 0xD9, 0xE9, 0x8E, 0x24, 0x1B, 0xB4, 0x19, 0xB3, 0x6A,\n0xBC, 0x29, 0x40, 0xAC, 0x94, 0xDE, 0x52, 0xFD, 0x74, 0xF7, 0x96, 0x21, 0xE2, 0xB6, 0xC2, 0x8F,\n0x11, 0x9F, 0x35, 0x6F, 0x22, 0xC2, 0xAA, 0xF6, 0xEB, 0xFF, 0x5C, 0xD2, 0xAC, 0x7B, 0x9E, 0x5C,\n0xDC, 0x75, 0x74, 0xDC, 0xDA, 0x79, 0x70, 0x8C, 0xB8, 0x84, 0x54, 0x54, 0xA3, 0x9C, 0x14, 0x9F,\n0xEB, 0xD6, 0x50, 0x7A, 0xDB, 0x85, 0xAF, 0xE9, 0x6F, 0x8A, 0xFC, 0xCC, 0xA5, 0xE1, 0xB9, 0x96,\n0x90, 0x0A, 0x8D, 0x35, 0x16, 0xB5, 0x35, 0x8C, 0x64, 0xEC, 0xC2, 0x87, 0x14, 0x4F, 0xDB, 0x0B,\n0x7F, 0x9C, 0x35, 0xD2, 0x90, 0x4A, 0x2D, 0xB5, 0xC2, 0xA2, 0xB4, 0x86, 0xB1, 0x36, 0x97, 0xA1,\n0x23, 0x9E, 0xC6, 0x16, 0x7F, 0x93, 0x83, 0x6A, 0xA4, 0xCC, 0x3F, 0x85, 0xD4, 0xCF, 0x57, 0xB1,\n0x96, 0x4A, 0x52, 0x2C, 0x10, 0xF5, 0x2A, 0xE6, 0x39, 0x94, 0x0C, 0x31, 0xEC, 0xE7, 0xFF, 0x3A,\n0x09, 0x6D, 0xCF, 0xCB, 0x18, 0x52, 0x89, 0x37, 0x34, 0x36, 0xD0, 0x7E, 0x85, 0xA8, 0x57, 0x91,\n0x61, 0xA2, 0x08, 0xF1, 0x43, 0xEF, 0x26, 0xDA, 0x84, 0x2E, 0x19, 0x71, 0x20, 0x32, 0xB5, 0x59,\n0x6E, 0x6B, 0x94, 0xAF, 0xE2, 0x88, 0xF1, 0x0A, 0x88, 0x1D, 0x08, 0x9B, 0x65, 0xFC, 0xE4, 0x1A,\n0x23, 0xC6, 0xFB, 0x1C, 0x52, 0xB3, 0x30, 0xAE, 0xC5, 0xC1, 0xA1, 0xFC, 0xB0, 0x58, 0xBA, 0x8A,\n0x37, 0xBB, 0x38, 0x0B, 0xDA, 0x0F, 0x3E, 0xA2, 0x4D, 0x08, 0x87, 0xCC, 0x22, 0x46, 0x9C, 0x5C,\n0xE3, 0xB5, 0x42, 0xD4, 0x84, 0xDF, 0x66, 0xC3, 0x91, 0xC5, 0xF0, 0x6E, 0x8C, 0x36, 0xED, 0xD3,\n0x8C, 0x78, 0x6E, 0xE7, 0x16, 0xCE, 0x18, 0x71, 0x84, 0xB1, 0x08, 0xF1, 0x8D, 0xBD, 0x8A, 0x64,\n0x19, 0x7F, 0x46, 0x88, 0x5D, 0x44, 0xD8, 0xAC, 0xBE, 0xA8, 0x15, 0x2A, 0x12, 0x7F, 0xD2, 0xA9,\n0x65, 0x16, 0x67, 0x53, 0xC4, 0xEB, 0xF9, 0x3B, 0xBE, 0xCB, 0x69, 0x6A, 0xF9, 0xC8, 0x6F, 0x24,\n0x1A, 0x1D, 0x84, 0x51, 0xAB, 0x70, 0x62, 0xC4, 0x15, 0x22, 0xAF, 0x32, 0xE4, 0x7D, 0xD4, 0x25,\n0xEB, 0xE7, 0x9B, 0x16, 0x35, 0x34, 0x9D, 0x22, 0xF1, 0x5F, 0xC7, 0x74, 0x4A, 0xAA, 0x37, 0x72,\n0x17, 0xB5, 0xBC, 0x08, 0xC4, 0xEE, 0xE8, 0x25, 0xDA, 0x8C, 0xE9, 0x54, 0xC4, 0x68, 0xDA, 0x53,\n0x52, 0x4A, 0x55, 0x88, 0x92, 0x2B, 0xB2, 0x84, 0xE1, 0x72, 0xBA, 0xE4, 0x3E, 0xBC, 0x4D, 0x12,\n0xC6, 0x21, 0x6B, 0xFF, 0x8F, 0xE4, 0xC3, 0xC9, 0xFB, 0x15, 0xA2, 0xF5, 0x36, 0xFA, 0xF4, 0x3B,\n0x41, 0x7C, 0xE7, 0x25, 0xDA, 0x44, 0x61, 0x34, 0x2E, 0x15, 0x61, 0xAC, 0xB2, 0x98, 0x11, 0x8E,\n0x07, 0xC9, 0x80, 0xC5, 0xAE, 0x79, 0x09, 0x15, 0x61, 0x3C, 0x49, 0xA7, 0x3E, 0x23, 0x8C, 0xB5,\n0x70, 0x43, 0xD9, 0x86, 0xA2, 0x86, 0x81, 0x18, 0x1E, 0x3C, 0x64, 0x52, 0xF9, 0xCE, 0xF4, 0x77,\n0xB0, 0xB8, 0x11, 0x7B, 0x53, 0x65, 0x51, 0x9E, 0x7E, 0x67, 0x88, 0xEF, 0x5D, 0xD8, 0xB7, 0x99,\n0x30, 0xDE, 0x4D, 0xC2, 0x48, 0x1B, 0x55, 0xED, 0x0D, 0x10, 0x69, 0x2C, 0xAE, 0x19, 0x7B, 0x3B,\n0x85, 0xD8, 0xA5, 0xDE, 0x69, 0xFB, 0x33, 0x09, 0xE3, 0x9D, 0x0A, 0x63, 0xD9, 0xDE, 0xE8, 0x6E,\n0xA2, 0x98, 0x0E, 0x23, 0x19, 0x19, 0x62, 0x78, 0x70, 0x61, 0xDF, 0x72, 0xC6, 0xD8, 0x67, 0x61,\n0xFC, 0x92, 0x84, 0x91, 0xBC, 0xBF, 0x0C, 0xF1, 0x64, 0xEE, 0xED, 0x4A, 0x21, 0xAE, 0x1C, 0x24,\n0x8B, 0x79, 0xA5, 0x81, 0xED, 0x6B, 0x90, 0xF7, 0x57, 0x58, 0x64, 0x87, 0x16, 0x0B, 0xA5, 0xD3,\n0x0C, 0xC3, 0x23, 0xC4, 0xCE, 0x41, 0xB2, 0x18, 0xCF, 0xB3, 0xB4, 0x77, 0xEB, 0x8C, 0x30, 0x56,\n0x59, 0x24, 0x93, 0x62, 0x8C, 0x18, 0x88, 0xE1, 0xC1, 0x83, 0x7D, 0x1B, 0x27, 0xFD, 0x33, 0x8B,\n0x56, 0x18, 0x3F, 0x56, 0x3F, 0x54, 0x34, 0x83, 0x21, 0x86, 0x4D, 0x2A, 0xF4, 0x67, 0x88, 0x2B,\n0x1F, 0x01, 0x35, 0x2E, 0xA6, 0xC8, 0x4F, 0x36, 0xB6, 0x19, 0x21, 0xA5, 0x8D, 0x1A, 0x8B, 0x24,\n0x8B, 0x34, 0x87, 0x61, 0xB1, 0xF3, 0x11, 0x50, 0x47, 0xED, 0x27, 0x63, 0xDC, 0x8C, 0x87, 0x52,\n0x6A, 0xC1, 0xDE, 0xE0, 0xDF, 0x08, 0xA8, 0x66, 0x2B, 0xF8, 0x3D, 0x2C, 0x86, 0x5B, 0x17, 0x01,\n0x35, 0x6A, 0xFF, 0xE1, 0x71, 0x88, 0x6A, 0x5B, 0x2D, 0x50, 0x29, 0x8B, 0x0C, 0x68, 0x12, 0x50,\n0x67, 0x10, 0x57, 0x2E, 0x02, 0x6A, 0x08, 0xD7, 0xB0, 0x48, 0x11, 0x2E, 0x6B, 0xFF, 0x59, 0x16,\n0x91, 0xC5, 0x0B, 0xFB, 0xBC, 0x7D, 0x06, 0xF1, 0xA9, 0x07, 0x87, 0x3A, 0x6D, 0x50, 0x39, 0x50,\n0x4A, 0xC5, 0xDE, 0x10, 0x6E, 0x8A, 0x2C, 0xCA, 0x3E, 0xBB, 0x02, 0xC4, 0xF0, 0x3D, 0xB8, 0x38,\n0x2F, 0x4C, 0xC3, 0x9F, 0xBB, 0x88, 0x49, 0x2D, 0xB3, 0x68, 0x1D, 0x2A, 0x01, 0x75, 0x0E, 0xF1,\n0x55, 0x70, 0x71, 0xFE, 0xD9, 0x9B, 0x34, 0x97, 0x4A, 0xDE, 0x6F, 0xAA, 0x37, 0x02, 0x11, 0xFF,\n0x36, 0x6B, 0x2C, 0x6E, 0x67, 0x2C, 0x7A, 0x3B, 0xCF, 0x27, 0xED, 0xD7, 0xB1, 0x0D, 0xEC, 0x8D,\n0x42, 0x84, 0xC5, 0x24, 0xFC, 0x04, 0x54, 0x87, 0x10, 0xBB, 0x24, 0x8C, 0xD8, 0x1B, 0xDE, 0x32,\n0x28, 0x8B, 0x2A, 0x8B, 0x6B, 0x1B, 0x50, 0x3D, 0x42, 0x7C, 0x92, 0x58, 0x94, 0xBC, 0xDF, 0x9A,\n0x54, 0x65, 0x51, 0x65, 0x71, 0xEF, 0x94, 0xC5, 0x20, 0xF6, 0xC6, 0x3C, 0x0F, 0x13, 0x88, 0x65,\n0x59, 0x8C, 0x0E, 0x75, 0xEF, 0x94, 0x45, 0xEC, 0x4D, 0xB1, 0x06, 0xB7, 0xC8, 0xE2, 0xC5, 0x49,\n0x40, 0xED, 0x7D, 0x98, 0xB6, 0x53, 0x7B, 0xD3, 0x57, 0xEC, 0x4D, 0x95, 0x45, 0x95, 0x45, 0x97,\n0x10, 0xAF, 0x27, 0xD5, 0x48, 0x10, 0xC5, 0xA4, 0x56, 0x58, 0x5C, 0x9F, 0xC8, 0xE2, 0xDE, 0x2B,\n0x8B, 0x9F, 0x0A, 0xD5, 0x9B, 0x45, 0x16, 0xC9, 0x16, 0x91, 0xC5, 0x51, 0x33, 0x7C, 0xB2, 0xB8,\n0x2A, 0x55, 0x6F, 0x96, 0x59, 0x64, 0xBA, 0xCF, 0xEE, 0xEC, 0x3B, 0x38, 0x84, 0x18, 0x1D, 0xDC,\n0x39, 0x93, 0xAA, 0xA2, 0x11, 0x0F, 0xCA, 0x3F, 0xCF, 0x33, 0xF6, 0x71, 0x7C, 0xF1, 0x57, 0x70,\n0x77, 0x46, 0x07, 0x97, 0x0B, 0x54, 0x4B, 0x26, 0x95, 0x2A, 0x2A, 0x2D, 0x9B, 0x13, 0x16, 0x1D,\n0x42, 0x8C, 0x83, 0x70, 0x6A, 0x52, 0x61, 0x51, 0x21, 0x52, 0x45, 0x85, 0xC5, 0x29, 0xA0, 0xFA,\n0x64, 0x71, 0x5C, 0xD7, 0x34, 0x30, 0xD2, 0x20, 0x26, 0xB5, 0xC2, 0x22, 0xE6, 0x66, 0xBB, 0x99,\n0x20, 0xFA, 0x64, 0xF1, 0x69, 0x44, 0xB8, 0x68, 0x52, 0x95, 0x45, 0xD2, 0xC5, 0x49, 0x16, 0x7F,\n0x4F, 0x8B, 0xC1, 0xDB, 0x77, 0x14, 0xCB, 0x53, 0x1B, 0x6A, 0x52, 0x97, 0x59, 0xCC, 0xB3, 0xC4,\n0xE6, 0x49, 0xE6, 0xE0, 0x10, 0xE2, 0xA2, 0x49, 0x55, 0x88, 0xF8, 0x37, 0x63, 0x6E, 0xDC, 0xB2,\n0xF8, 0x7F, 0x26, 0x55, 0x58, 0x24, 0x21, 0xB6, 0x16, 0xD5, 0x41, 0xEB, 0xFB, 0x2F, 0x75, 0x67,\n0xAF, 0x1B, 0x45, 0x10, 0x04, 0x61, 0x16, 0xE3, 0x03, 0x32, 0x84, 0x84, 0x80, 0xD0, 0x22, 0x00,\n0x52, 0x83, 0x84, 0x09, 0xD1, 0x61, 0x61, 0x52, 0x38, 0x10, 0xC4, 0x88, 0xBF, 0x90, 0x84, 0x5B,\n0x9E, 0x60, 0x97, 0x07, 0x00, 0xE3, 0xB7, 0xC5, 0xCB, 0xCC, 0xFA, 0xBB, 0xBE, 0xDA, 0xD9, 0xDD,\n0xEC, 0x8A, 0x8D, 0x1C, 0xBA, 0x55, 0xD3, 0xD3, 0xD5, 0xD5, 0xD5, 0x73, 0xFA, 0xFD, 0x19, 0x25,\n0xA9, 0x21, 0x44, 0x45, 0x71, 0x09, 0x8A, 0x67, 0xBE, 0x28, 0x7E, 0x99, 0x4F, 0x52, 0x15, 0xC5,\n0xDE, 0xC8, 0xF0, 0x36, 0xA3, 0x58, 0x9F, 0x5B, 0xC1, 0xFD, 0xBE, 0x77, 0x33, 0x49, 0xAA, 0xA2,\n0x48, 0x8C, 0x5D, 0x59, 0x4C, 0xE4, 0xA6, 0x76, 0x0C, 0xF1, 0x68, 0x36, 0x49, 0x55, 0x14, 0x99,\n0x4A, 0xF5, 0x28, 0x7A, 0xCC, 0x31, 0x64, 0x8A, 0x1A, 0x46, 0x8C, 0x63, 0xEE, 0x22, 0x45, 0x31,\n0xCD, 0x6C, 0x92, 0x72, 0x93, 0x50, 0x74, 0x0C, 0xF1, 0x0E, 0x23, 0xC6, 0xB0, 0xE0, 0xAF, 0x24,\n0x55, 0x51, 0xD4, 0x46, 0xC3, 0x63, 0xE0, 0x56, 0x68, 0x35, 0x36, 0x57, 0x19, 0xC4, 0xE6, 0x5F,\n0xCC, 0x45, 0x1A, 0x8D, 0x44, 0x51, 0x2D, 0x43, 0xBC, 0xBA, 0x4D, 0x52, 0x9F, 0x0B, 0x49, 0x9D,\n0x44, 0x11, 0x8A, 0x6A, 0xE1, 0x43, 0x91, 0x59, 0x38, 0x24, 0x15, 0xEF, 0x8D, 0x92, 0x54, 0x45,\n0x51, 0x1A, 0x8D, 0x2E, 0x17, 0x2D, 0x43, 0x5C, 0x6C, 0x91, 0xD4, 0x55, 0x49, 0x49, 0x2D, 0xA3,\n0x48, 0x2F, 0xD5, 0x6D, 0x81, 0xF9, 0x7D, 0xFB, 0x58, 0xFD, 0x04, 0x45, 0xE8, 0x4D, 0x44, 0x11,\n0x1A, 0x8E, 0x8A, 0x9A, 0x16, 0xA5, 0x2C, 0x43, 0xBC, 0x92, 0x50, 0x14, 0x1F, 0x9C, 0x92, 0x54,\n0x45, 0x91, 0xBD, 0xCC, 0xBC, 0x03, 0xEE, 0x60, 0xB2, 0x2D, 0x3A, 0x1A, 0x20, 0xA9, 0xC7, 0x42,\n0x6F, 0xC6, 0x51, 0xCC, 0x1E, 0xC6, 0x84, 0xA2, 0x65, 0x88, 0x97, 0x5B, 0x48, 0x6A, 0xDF, 0x6A,\n0xE8, 0xB8, 0x7F, 0x3C, 0x17, 0x3F, 0x79, 0xA3, 0x58, 0xE5, 0x5C, 0x44, 0x83, 0xE3, 0xA0, 0x52,\n0xFB, 0x0B, 0x28, 0x3E, 0xDF, 0x46, 0xD1, 0xC3, 0x4E, 0x24, 0x21, 0x0A, 0x49, 0x95, 0xAD, 0xE9,\n0xD9, 0x28, 0x9A, 0x38, 0xA6, 0x86, 0xDA, 0xFE, 0x48, 0x52, 0xF5, 0xBA, 0x99, 0x46, 0x31, 0xDF,\n0xA8, 0x16, 0x2E, 0x5B, 0xF9, 0x6A, 0xB5, 0xF9, 0x2B, 0x49, 0x1D, 0xBD, 0x51, 0x99, 0x2E, 0x7A,\n0x18, 0x89, 0x35, 0xC4, 0x39, 0x24, 0xF5, 0x86, 0xA2, 0x48, 0x8C, 0xA0, 0x58, 0xB7, 0xCD, 0x25,\n0xC3, 0xEF, 0x0F, 0x24, 0x15, 0x67, 0xB1, 0xD0, 0x9B, 0x02, 0x8A, 0xAC, 0xD9, 0x24, 0x14, 0x3D,\n0x43, 0xFC, 0x52, 0x26, 0xA9, 0xD3, 0x28, 0x22, 0xC0, 0xA5, 0x1D, 0x69, 0x0F, 0x0F, 0xAA, 0x84,\n0x58, 0x22, 0xA9, 0x3A, 0xB9, 0xA9, 0x86, 0x51, 0x64, 0xBA, 0x68, 0x62, 0xB3, 0x15, 0xF1, 0xA6,\n0x84, 0xA2, 0xAE, 0xDC, 0x54, 0xE5, 0x5C, 0xCC, 0xCD, 0x94, 0xC3, 0x6A, 0xC6, 0x60, 0x88, 0x28,\n0xA9, 0x4A, 0x52, 0x35, 0x44, 0x45, 0x11, 0x19, 0xB5, 0xDB, 0xE3, 0xF7, 0xFB, 0x4E, 0xA6, 0x49,\n0x2A, 0x21, 0xFE, 0xFB, 0x46, 0x72, 0xD1, 0xC3, 0xF2, 0x2E, 0x21, 0xCE, 0x23, 0xA9, 0x84, 0x78,\n0xB3, 0x5C, 0x17, 0x4D, 0x5C, 0xFD, 0xAA, 0x32, 0xAA, 0x92, 0xFA, 0x7C, 0x1E, 0x8A, 0x5A, 0x17,\n0x1D, 0x36, 0xC1, 0x06, 0x43, 0x2C, 0x2B, 0xA9, 0x34, 0xC5, 0xDB, 0x28, 0x1E, 0x82, 0xE2, 0x66,\n0x5D, 0x6C, 0x0D, 0xBD, 0x45, 0xA0, 0x38, 0xEA, 0x49, 0xBD, 0xA1, 0x28, 0xD2, 0x2F, 0xC2, 0x51,\n0x3D, 0x43, 0x7C, 0x40, 0x2E, 0x8E, 0x78, 0x52, 0x15, 0x45, 0x3A, 0x0D, 0xC6, 0x8B, 0x26, 0x4B,\n0x44, 0x1A, 0xA2, 0xAC, 0xDC, 0x88, 0x27, 0xB5, 0x84, 0xE2, 0x73, 0x45, 0xD1, 0x70, 0x12, 0x9E,\n0x50, 0x0C, 0x7A, 0xF8, 0x4A, 0x16, 0xA7, 0x26, 0x50, 0xA4, 0x5F, 0xF4, 0x0D, 0xB1, 0xA9, 0x69,\n0x35, 0xD8, 0x28, 0x8E, 0xB5, 0x1F, 0x14, 0xB1, 0x16, 0x89, 0x76, 0xE3, 0xB0, 0x3E, 0x5C, 0x40,\n0x91, 0x47, 0x61, 0x40, 0x91, 0x56, 0x23, 0x86, 0xA8, 0x28, 0xBE, 0xE9, 0x51, 0xB4, 0xD8, 0x90,\n0x1E, 0x9E, 0xDB, 0x34, 0x23, 0xE3, 0xFE, 0x32, 0x8A, 0x78, 0x8A, 0x41, 0xD1, 0x72, 0x86, 0x7A,\n0x07, 0x14, 0x0B, 0x4A, 0xEA, 0x14, 0x8A, 0xE8, 0xA8, 0x26, 0x9B, 0xA7, 0x32, 0x9A, 0x12, 0x14,\n0x45, 0x0F, 0x1F, 0xCF, 0xC5, 0xCD, 0xF9, 0xA2, 0xC9, 0xBA, 0x9B, 0xA2, 0x18, 0x4C, 0x1B, 0xC4,\n0xA8, 0xEF, 0xC1, 0x6D, 0x85, 0x28, 0xCE, 0xF0, 0xDA, 0x63, 0x45, 0x5A, 0x43, 0x64, 0xC3, 0x2F,\n0xA1, 0xB8, 0x0A, 0xAD, 0x86, 0x86, 0xB8, 0xB1, 0xA6, 0x11, 0x2D, 0x70, 0xAE, 0x73, 0x9B, 0x07,\n0x6D, 0x8E, 0x51, 0x4D, 0x1B, 0xA3, 0x28, 0xDE, 0x63, 0xC9, 0xF6, 0xE2, 0xC1, 0x50, 0x8B, 0x97,\n0x43, 0x46, 0x4A, 0xBF, 0x58, 0x6F, 0xE6, 0xA1, 0x78, 0xCC, 0x96, 0x86, 0xAB, 0x56, 0x9C, 0x50,\n0x84, 0xC1, 0xCD, 0x46, 0x11, 0x83, 0x3F, 0x53, 0xE2, 0xDA, 0x52, 0x48, 0x4D, 0x28, 0xE2, 0x2E,\n0x12, 0x67, 0x71, 0xFE, 0x82, 0x39, 0x7C, 0x18, 0x45, 0x57, 0x95, 0x11, 0x14, 0xE3, 0xCB, 0x85,\n0xFA, 0xA2, 0xAF, 0xA2, 0xF8, 0x18, 0xF7, 0x54, 0x42, 0xD1, 0x53, 0x65, 0x3C, 0x02, 0x45, 0x1A,\n0xC6, 0x99, 0x28, 0x22, 0xDE, 0x64, 0x14, 0x2D, 0x5E, 0x47, 0xD1, 0x10, 0x43, 0x2E, 0x16, 0xDE,\n0x68, 0x10, 0x14, 0x91, 0xE0, 0x68, 0xFB, 0x7F, 0x9C, 0xA3, 0x68, 0x29, 0xC1, 0x0D, 0xA1, 0xA8,\n0x53, 0x0D, 0x45, 0xF1, 0xDE, 0x10, 0x8A, 0x16, 0xCF, 0xF8, 0x0C, 0x2A, 0x70, 0xBA, 0xC4, 0xA8,\n0x28, 0xDE, 0xD8, 0x0A, 0xF1, 0x50, 0xE5, 0x70, 0x57, 0xF1, 0xE6, 0x44, 0xAE, 0x1B, 0xF1, 0x87,\n0xE7, 0x10, 0xB5, 0xED, 0x57, 0x39, 0xDC, 0xB2, 0x27, 0x7E, 0x97, 0x43, 0x3C, 0x4D, 0x3D, 0xB1,\n0xAE, 0xA2, 0x12, 0xA2, 0x4A, 0x70, 0x69, 0x4F, 0x03, 0x39, 0xBC, 0xB1, 0x6C, 0x18, 0xFF, 0x85,\n0xD8, 0x6C, 0xA3, 0xB8, 0x54, 0x14, 0x4B, 0x0D, 0x63, 0x5A, 0x62, 0xC8, 0x55, 0xC3, 0xB2, 0x61,\n0xEC, 0x26, 0x53, 0xFD, 0xDB, 0x8C, 0xBF, 0x75, 0x57, 0x83, 0x77, 0x99, 0xE7, 0x34, 0x8C, 0x8D,\n0x65, 0x37, 0xF5, 0x07, 0x14, 0x7F, 0x87, 0xF7, 0x52, 0x98, 0x4D, 0x11, 0xE2, 0x54, 0xC3, 0x58,\n0x5B, 0xB6, 0x1A, 0x5D, 0x88, 0xE3, 0x06, 0xAA, 0xFC, 0x49, 0x88, 0xD2, 0x6A, 0x9C, 0x87, 0x68,\n0xD9, 0x6A, 0xD4, 0x01, 0x45, 0x11, 0x6F, 0x80, 0x91, 0x10, 0xF3, 0x46, 0xD1, 0x7F, 0xD3, 0x6A,\n0xD4, 0x83, 0x28, 0x2E, 0xA5, 0xED, 0x57, 0x14, 0x69, 0x35, 0x28, 0x1A, 0x96, 0x86, 0x86, 0x16,\n0x14, 0x11, 0x6F, 0x28, 0xFD, 0xF3, 0x50, 0x7C, 0xEB, 0x3C, 0x0A, 0xAF, 0xDA, 0x76, 0x5A, 0xBC,\n0x51, 0x92, 0xCA, 0xDC, 0x26, 0x93, 0xD4, 0x6C, 0x0E, 0x77, 0x1C, 0xA2, 0x5E, 0x1E, 0x46, 0x71,\n0x29, 0x28, 0x96, 0x49, 0x2A, 0xF4, 0xC6, 0x93, 0xA4, 0xEE, 0x81, 0x22, 0xE2, 0xCD, 0x34, 0x8A,\n0x71, 0x4E, 0x0C, 0x49, 0xAD, 0x0D, 0x67, 0x53, 0xE9, 0xDD, 0x3D, 0x8C, 0xC5, 0x48, 0x70, 0xF4,\n0xC4, 0xCA, 0xC3, 0xCB, 0x24, 0xD5, 0x90, 0xC1, 0xDD, 0xEA, 0x51, 0xE4, 0x69, 0x46, 0xDE, 0x4A,\n0x03, 0x45, 0x09, 0x51, 0xE8, 0x4D, 0x26, 0xA9, 0x86, 0x7A, 0xF8, 0xF5, 0x14, 0x21, 0x07, 0x95,\n0x66, 0x8A, 0x07, 0x36, 0x09, 0x51, 0xE8, 0x0D, 0x27, 0xD5, 0x56, 0x2C, 0xBE, 0xDA, 0x6A, 0x5D,\n0x3C, 0x06, 0xC5, 0xF2, 0x41, 0x45, 0x0F, 0xE7, 0xA0, 0x9E, 0x5A, 0xD2, 0x9B, 0x6B, 0x39, 0x17,\n0x9B, 0x0D, 0xE7, 0x0D, 0xB9, 0x58, 0x42, 0xB1, 0xAC, 0xA4, 0x1A, 0xCA, 0x8C, 0x77, 0x40, 0xF1,\n0xF7, 0x92, 0xBA, 0x58, 0x40, 0xB1, 0x1A, 0xD0, 0xC3, 0x8F, 0x03, 0x49, 0x35, 0x94, 0x19, 0x8F,\n0xFA, 0x1B, 0xF5, 0xC7, 0xEB, 0x1B, 0x7B, 0x08, 0xA9, 0xE4, 0xA2, 0x34, 0x8C, 0xE8, 0xE1, 0xDD,\n0x07, 0xBD, 0x49, 0x28, 0x1A, 0x0A, 0x54, 0x27, 0x19, 0xC5, 0x8F, 0xE7, 0xFF, 0xD8, 0xFE, 0x19,\n0x75, 0x11, 0x14, 0xA5, 0x61, 0x14, 0x25, 0xD5, 0x5C, 0xA0, 0x4A, 0x1D, 0xF1, 0xF7, 0x67, 0xDD,\n0xDF, 0x0F, 0x83, 0x1C, 0x5E, 0x42, 0x51, 0xF5, 0x70, 0xEE, 0x1B, 0xCB, 0xDA, 0xDF, 0xB5, 0x8B,\n0x3F, 0x5F, 0xA5, 0xBF, 0xDF, 0xFF, 0x0E, 0x72, 0xF8, 0x38, 0x8A, 0xBC, 0x3E, 0xD5, 0x6B, 0x70,\n0xAE, 0xEA, 0x4D, 0xDD, 0xB6, 0x1F, 0xB2, 0x80, 0x5D, 0x9D, 0x15, 0x50, 0xD4, 0x56, 0x03, 0x22,\n0x8E, 0x7A, 0x93, 0x51, 0xB4, 0x93, 0x36, 0xAA, 0xF6, 0xD7, 0xC5, 0xED, 0x70, 0x85, 0xA1, 0x86,\n0x0A, 0xA9, 0x84, 0xA8, 0xF4, 0x86, 0x29, 0xAA, 0xA3, 0xB4, 0x51, 0x6D, 0xB4, 0x3E, 0x77, 0xF1,\n0x32, 0x16, 0x50, 0xE4, 0xC9, 0x9B, 0x48, 0x6F, 0xEC, 0xFB, 0xFE, 0xFE, 0x7B, 0x19, 0xC7, 0xC4,\n0x8A, 0xA2, 0xD0, 0x9B, 0x58, 0x18, 0x8D, 0xFB, 0xFE, 0xFE, 0xFB, 0xBA, 0x39, 0x26, 0x1E, 0x47,\n0xF1, 0x40, 0xFB, 0x7E, 0x73, 0xF3, 0x74, 0xEA, 0x1C, 0x71, 0xC1, 0xCD, 0x46, 0x31, 0x16, 0x46,\n0xE3, 0xB1, 0x46, 0xFA, 0x16, 0x8C, 0x89, 0xA7, 0x73, 0xF1, 0x66, 0x42, 0x31, 0xD3, 0x1B, 0xFF,\n0xB1, 0x46, 0xFA, 0x9E, 0x76, 0x21, 0x4E, 0xA2, 0x38, 0xD9, 0xF7, 0x37, 0x96, 0x9A, 0x7F, 0x4E,\n0x45, 0xB1, 0x6C, 0x28, 0x8A, 0x54, 0x0D, 0x1D, 0x6B, 0xFC, 0x53, 0xA8, 0x3C, 0x3B, 0xC6, 0x3E,\n0x15, 0x51, 0xE0, 0xCA, 0x28, 0x2A, 0xBD, 0xD1, 0xC2, 0xE8, 0x5B, 0x35, 0x16, 0x67, 0x61, 0xDF,\n0x66, 0x02, 0xC5, 0x83, 0x52, 0x61, 0xB4, 0x5D, 0x7F, 0x3B, 0xFF, 0x9E, 0xE0, 0x2D, 0x1A, 0x47,\n0x51, 0x0B, 0xE3, 0xF3, 0x50, 0x18, 0x7D, 0xAB, 0xC6, 0x67, 0x55, 0xC3, 0x41, 0x11, 0xEF, 0xB4,\n0x14, 0xC6, 0xA5, 0x74, 0x8C, 0xAE, 0x55, 0x63, 0x2F, 0x4B, 0xC5, 0x1F, 0x91, 0xA7, 0xA4, 0xD3,\n0x18, 0xBC, 0x6E, 0x28, 0x8C, 0x39, 0x19, 0x1B, 0xD7, 0xAA, 0xB1, 0xC8, 0x53, 0x62, 0xD4, 0x70,\n0x45, 0x51, 0x0A, 0xE3, 0xA0, 0xCD, 0xBF, 0x36, 0xD4, 0x19, 0x53, 0x2A, 0xAE, 0xC3, 0x94, 0xB8,\n0xD0, 0x2F, 0x0E, 0x15, 0xC6, 0xC7, 0x48, 0xA9, 0xA6, 0xBD, 0x46, 0x9F, 0x8A, 0xD8, 0xFC, 0x50,\n0xA7, 0x4A, 0x28, 0x6A, 0x61, 0xE4, 0x4A, 0xB5, 0x5D, 0x9A, 0xDE, 0xC3, 0x3D, 0x15, 0xE6, 0x8B,\n0x28, 0x70, 0x84, 0xA8, 0x7D, 0x7F, 0x9C, 0x14, 0x9B, 0x2E, 0x6A, 0x2E, 0x70, 0x4F, 0xC5, 0x73,\n0x8A, 0x8E, 0x1A, 0x51, 0x3C, 0x00, 0xC5, 0x7C, 0xA5, 0x3A, 0x2B, 0x54, 0x29, 0x15, 0x71, 0x4F,\n0xAD, 0x32, 0x8A, 0x87, 0x82, 0xA2, 0x5C, 0xA9, 0x2A, 0xC2, 0xFD, 0xB0, 0x25, 0xE2, 0xA7, 0x03,\n0x1E, 0xB8, 0x47, 0x39, 0x15, 0x35, 0x44, 0xEE, 0x1B, 0xED, 0x35, 0x3C, 0x47, 0x37, 0xE7, 0xB2,\n0x0D, 0x6B, 0xA8, 0xD0, 0xF0, 0x39, 0x28, 0x72, 0x50, 0x33, 0x4B, 0x5D, 0xBB, 0x5E, 0xA9, 0x77,\n0x19, 0x12, 0x4F, 0xA3, 0x98, 0x0B, 0x23, 0x28, 0xE2, 0xF3, 0x37, 0xBE, 0x52, 0x5F, 0x30, 0x41,\n0x0D, 0x02, 0x5C, 0x01, 0x45, 0xED, 0x35, 0xEC, 0xAF, 0xD4, 0x6A, 0x1D, 0x50, 0x0C, 0x43, 0xE2,\n0x78, 0xA3, 0x6A, 0x61, 0x44, 0xBE, 0xB1, 0xD6, 0x36, 0xF6, 0xD7, 0x58, 0xE0, 0x28, 0xFD, 0x62,\n0x67, 0x90, 0xC2, 0x88, 0x08, 0x07, 0x4B, 0xFD, 0xE1, 0x39, 0x0D, 0xBF, 0x8F, 0x05, 0xAE, 0xD8,\n0x68, 0x10, 0x22, 0x85, 0x51, 0xE5, 0x1B, 0x5B, 0xB3, 0xDF, 0xE7, 0xB0, 0x4B, 0xBC, 0x4A, 0x20,\n0x6A, 0xBB, 0x38, 0xC6, 0xE0, 0x18, 0xF8, 0x5B, 0x36, 0xFE, 0x7B, 0xFD, 0x03, 0xF0, 0x90, 0x9B,\n0x65, 0x19, 0xC5, 0xFC, 0x6D, 0xA2, 0xE8, 0xDF, 0xF8, 0x5F, 0x4F, 0x4F, 0xFA, 0xE4, 0xE9, 0x22,\n0x6B, 0x61, 0x82, 0x62, 0x28, 0x8C, 0xFC, 0x1E, 0x83, 0xF8, 0x19, 0xFD, 0x5E, 0x69, 0x38, 0xE1,\n0x61, 0xA6, 0x44, 0x6E, 0x30, 0x32, 0x46, 0x14, 0xB5, 0x30, 0x1E, 0x6E, 0x5F, 0xA9, 0x9E, 0x5A,\n0x6A, 0x55, 0xAF, 0x63, 0x59, 0x9C, 0x83, 0x22, 0x0C, 0x2E, 0x5E, 0xA9, 0x9E, 0xEE, 0x9B, 0xFD,\n0x46, 0xCA, 0x22, 0x28, 0xF6, 0x11, 0x6A, 0x88, 0xC3, 0x2C, 0xD5, 0xD3, 0x79, 0x7B, 0xBF, 0xC9,\n0x4F, 0x6C, 0x48, 0xCF, 0x2F, 0xE4, 0x46, 0xAF, 0x54, 0x65, 0xA9, 0xA7, 0x86, 0x8F, 0x50, 0xFD,\n0x91, 0x0B, 0x55, 0xCE, 0xA9, 0x86, 0xC8, 0x49, 0x8D, 0x5A, 0xAA, 0xA5, 0x67, 0xF3, 0x0A, 0xEB,\n0x44, 0xC1, 0x8D, 0x7A, 0x6F, 0x0A, 0xC5, 0x03, 0x58, 0x2A, 0x4F, 0x89, 0x75, 0x07, 0xD5, 0xEE,\n0xBE, 0xB9, 0xCD, 0x0E, 0xEA, 0x1B, 0x76, 0x6D, 0x58, 0x99, 0x1A, 0x47, 0x91, 0x17, 0x53, 0x7C,\n0xF9, 0x4D, 0xF5, 0xAE, 0x5F, 0xB5, 0xC1, 0xE3, 0x87, 0x72, 0x13, 0x74, 0x0D, 0xB9, 0x52, 0x21,\n0xE2, 0xF8, 0x36, 0x0C, 0xF9, 0xCD, 0xE5, 0x56, 0x2E, 0x54, 0xF5, 0xF7, 0x6B, 0x88, 0xB0, 0x54,\n0x8A, 0xFF, 0xDB, 0x7E, 0xB3, 0xC8, 0xEC, 0x2D, 0xB1, 0xEB, 0x6D, 0x1B, 0x2E, 0xD4, 0xE3, 0xA9,\n0x83, 0x5A, 0x15, 0xDA, 0x29, 0x5E, 0xD7, 0x76, 0xEB, 0xA7, 0x4E, 0xDA, 0xB5, 0x32, 0x54, 0x36,\n0xA6, 0x2E, 0x50, 0xE4, 0x64, 0x6B, 0x32, 0x2E, 0x49, 0xC6, 0x0E, 0x45, 0xB3, 0x37, 0x53, 0x2E,\n0xD7, 0x38, 0x8A, 0x59, 0x5E, 0xA4, 0x2C, 0xC6, 0x10, 0xF5, 0x4A, 0x8D, 0xDA, 0x06, 0x8B, 0x8C,\n0x46, 0xFA, 0xCD, 0x82, 0x54, 0xE4, 0x42, 0x0D, 0x7D, 0x86, 0x86, 0xA8, 0x72, 0xF1, 0xE6, 0xAC,\n0xD8, 0xCE, 0x97, 0x7A, 0xD4, 0x06, 0x86, 0x4A, 0x43, 0xAC, 0x28, 0x6A, 0x88, 0x58, 0x53, 0xFA,\n0x96, 0xD1, 0xB0, 0xD9, 0xA8, 0xEA, 0x36, 0xD0, 0xB7, 0x15, 0xE7, 0x14, 0x72, 0xA3, 0x21, 0xEA,\n0xEF, 0xDB, 0x45, 0x7E, 0xE3, 0xF4, 0x0C, 0xD5, 0xE2, 0xDF, 0x7D, 0xCA, 0x4A, 0x98, 0xB6, 0x52,\n0x84, 0xA8, 0x57, 0xEA, 0x16, 0x11, 0x0F, 0x3B, 0x29, 0x36, 0xC5, 0xFF, 0x28, 0xA5, 0x62, 0xF0,\n0xA3, 0x2C, 0x41, 0x51, 0xCB, 0x22, 0x21, 0xEA, 0xAF, 0xDC, 0x30, 0x65, 0x34, 0x4A, 0xC6, 0xAA,\n0x4E, 0xA9, 0xC8, 0x6D, 0x13, 0x18, 0xEA, 0x01, 0x28, 0x6A, 0x88, 0x5C, 0xA9, 0x3D, 0x85, 0xE3,\n0xA4, 0x1A, 0x8D, 0xFC, 0xF7, 0xF3, 0xFA, 0x82, 0x2A, 0xE1, 0x87, 0x82, 0x62, 0xE1, 0xBE, 0xA1,\n0x2D, 0x8E, 0x0F, 0x18, 0xAD, 0x4D, 0xEC, 0xC5, 0x47, 0xA4, 0x62, 0xE2, 0x36, 0xD8, 0x8A, 0xE6,\n0x86, 0x88, 0x44, 0xB5, 0xEA, 0x8B, 0xBF, 0x53, 0x32, 0x56, 0x35, 0xA9, 0x18, 0x9A, 0x45, 0xBA,\n0xC5, 0x10, 0xA2, 0x5E, 0xA9, 0x9C, 0x54, 0x4D, 0x46, 0x0B, 0x26, 0xBE, 0x68, 0x63, 0x55, 0x0C,\n0x4B, 0xB6, 0x5A, 0x16, 0x35, 0x19, 0xE3, 0x2F, 0xF9, 0xF4, 0x9D, 0xBF, 0x53, 0x32, 0x76, 0xE7,\n0x54, 0x52, 0x71, 0xB9, 0x94, 0xB2, 0x58, 0x0C, 0x11, 0x87, 0xD1, 0xA3, 0x98, 0x8C, 0x2E, 0x95,\n0xB1, 0x3B, 0xA7, 0x0D, 0xA9, 0x48, 0xCD, 0xE0, 0x42, 0x1D, 0x0B, 0x51, 0xF9, 0x4D, 0x4C, 0x46,\n0x07, 0xBF, 0xDF, 0xF5, 0xEE, 0x9C, 0x92, 0x8A, 0x38, 0x51, 0xE5, 0x42, 0x95, 0x10, 0x95, 0xDF,\n0x3C, 0xB6, 0xAC, 0x8C, 0x27, 0x6D, 0xDB, 0x88, 0x84, 0x4A, 0x2A, 0x6A, 0x88, 0x7A, 0xA5, 0xC6,\n0x64, 0xEC, 0x2D, 0x8D, 0x36, 0xB6, 0x86, 0xCB, 0x5D, 0x84, 0x4D, 0x07, 0x22, 0xA9, 0x08, 0xB7,\n0x91, 0x0B, 0xB5, 0x74, 0xA5, 0x92, 0x8C, 0x4A, 0x53, 0xBF, 0x5D, 0xDA, 0xED, 0x77, 0x7B, 0xEB,\n0x77, 0x26, 0xC4, 0x32, 0x0D, 0x8A, 0x12, 0x22, 0xFC, 0xA6, 0x9C, 0x8C, 0xCD, 0xEE, 0x05, 0xE3,\n0xFC, 0xA3, 0x7D, 0x85, 0x54, 0x14, 0x14, 0xCB, 0xF7, 0x8D, 0x26, 0xA3, 0xC9, 0x40, 0x7C, 0xAF,\n0xCD, 0xB7, 0xCD, 0xF6, 0x90, 0x9F, 0x36, 0xE3, 0xE6, 0xBC, 0x10, 0x19, 0xA4, 0x5E, 0xD0, 0x54,\n0x8F, 0xF5, 0xF0, 0x07, 0x2D, 0xD4, 0x46, 0xAA, 0xA2, 0xDE, 0x36, 0xA3, 0x57, 0x6A, 0x4C, 0x46,\n0x97, 0xA7, 0x61, 0xAA, 0x3A, 0x81, 0x78, 0x2A, 0x55, 0x11, 0x14, 0x25, 0x44, 0x4D, 0xC6, 0xED,\n0xDF, 0xB8, 0x63, 0x40, 0xB5, 0x7B, 0x77, 0xCA, 0x7E, 0xBF, 0x07, 0x2E, 0x22, 0x31, 0xB7, 0xCD,\n0x54, 0x88, 0xF0, 0x1B, 0x4D, 0xC6, 0xB3, 0xF5, 0xCE, 0x5F, 0x83, 0xCF, 0x3F, 0x4F, 0xD0, 0x9B,\n0x89, 0xB1, 0x6A, 0x70, 0x50, 0x25, 0x15, 0x09, 0x71, 0x2C, 0x19, 0x51, 0x53, 0x9B, 0x9D, 0x94,\n0x0D, 0x8A, 0x62, 0xB8, 0x4F, 0xA9, 0x8A, 0x72, 0x4E, 0x25, 0xC4, 0xF9, 0xC9, 0x58, 0xD7, 0xBB,\n0x28, 0x1B, 0x14, 0x45, 0xBA, 0x0C, 0x74, 0xF0, 0xE0, 0x63, 0x38, 0x98, 0x0C, 0x51, 0x93, 0x71,\n0x15, 0x04, 0x9C, 0xDD, 0xFE, 0x34, 0xC3, 0x97, 0x8B, 0x8A, 0xA1, 0xA9, 0x78, 0xC8, 0x39, 0x25,\n0x15, 0x67, 0x24, 0x23, 0xBA, 0xBF, 0x83, 0x28, 0xFE, 0x97, 0xB8, 0x33, 0xD7, 0x95, 0x1A, 0x88,\n0x82, 0x28, 0x6B, 0x40, 0x46, 0xC0, 0x22, 0x32, 0x20, 0x60, 0xC9, 0x10, 0x02, 0x41, 0xCA, 0x4E,\n0xCE, 0x1E, 0xB3, 0x88, 0x89, 0x01, 0xE1, 0xF9, 0x01, 0x66, 0x52, 0x90, 0xB0, 0x79, 0x7F, 0x8B,\n0xDC, 0xD5, 0x9E, 0xE3, 0xA6, 0x34, 0xB8, 0x69, 0xEC, 0x7E, 0x7C, 0x00, 0xA8, 0x54, 0xDB, 0xBD,\n0xD7, 0x36, 0xA3, 0x1F, 0xEC, 0xD3, 0x73, 0x45, 0x48, 0x64, 0x40, 0xCD, 0x86, 0x98, 0x9A, 0x31,\n0x3E, 0x66, 0x94, 0x19, 0x0F, 0x79, 0xC0, 0xB9, 0xBB, 0x43, 0x48, 0xD8, 0xA8, 0xF7, 0x09, 0x9B,\n0x4B, 0x13, 0x10, 0xF7, 0x9B, 0x31, 0x19, 0x70, 0x6A, 0xEF, 0xC5, 0x84, 0x8D, 0x56, 0xC5, 0x64,\n0xB4, 0x11, 0xC6, 0x29, 0x2B, 0xFA, 0x7C, 0x93, 0xBE, 0x9C, 0x42, 0x6D, 0x1C, 0xEA, 0xE3, 0xE2,\n0xF3, 0x81, 0x44, 0x56, 0x45, 0x7E, 0xEB, 0xCD, 0xAC, 0x38, 0x01, 0xD1, 0xCC, 0xF8, 0x3C, 0x35,\n0x63, 0xFD, 0x4C, 0x25, 0x6C, 0xB6, 0xF4, 0x3E, 0xEF, 0x12, 0xF3, 0xD4, 0x2D, 0x1F, 0x62, 0x6A,\n0x46, 0xD1, 0xC8, 0xE3, 0xE2, 0xC3, 0xBA, 0xE0, 0x9C, 0xA4, 0xF6, 0xDB, 0x70, 0x23, 0x26, 0x4F,\n0xB9, 0x83, 0x9B, 0x15, 0xF7, 0x94, 0xFF, 0x5E, 0x33, 0x8A, 0xC6, 0xCA, 0x4A, 0x65, 0xB2, 0x49,\n0xE6, 0xD3, 0x50, 0x19, 0x1A, 0x6D, 0x98, 0xDE, 0x32, 0x20, 0xBA, 0x19, 0x05, 0x91, 0x27, 0xE2,\n0x87, 0xD6, 0xFE, 0xC7, 0x21, 0x51, 0x79, 0x2A, 0x84, 0x13, 0x56, 0x9C, 0x32, 0x63, 0x7A, 0x14,\n0x3F, 0xE4, 0xF6, 0xBF, 0x9A, 0x90, 0xC8, 0x8B, 0x6F, 0x41, 0xA8, 0xEC, 0x8A, 0xB9, 0x10, 0xA1,\n0x51, 0x8F, 0x36, 0x2C, 0x53, 0xEB, 0xCE, 0xA9, 0xAC, 0x51, 0x90, 0xF8, 0x82, 0x27, 0xA7, 0x19,\n0x3A, 0x05, 0x22, 0x66, 0xE4, 0xBD, 0x06, 0x1B, 0x70, 0x0E, 0xE7, 0x2A, 0x7E, 0x8A, 0x9F, 0x97,\n0x08, 0xA5, 0xC8, 0x36, 0x2C, 0x12, 0x27, 0x8A, 0xDF, 0xCD, 0x48, 0xA6, 0xF2, 0x1E, 0x55, 0xCC,\n0xD4, 0xEE, 0x6B, 0x53, 0xF9, 0x93, 0x4D, 0x7E, 0x71, 0x91, 0xFF, 0x15, 0x8D, 0x09, 0xDC, 0x46,\n0x1B, 0xD3, 0xA9, 0x41, 0xC4, 0x8C, 0xBC, 0x0D, 0x27, 0xA9, 0xA2, 0xD4, 0x9A, 0x3F, 0x8E, 0x4E,\n0x63, 0x34, 0x0C, 0x6F, 0x71, 0x04, 0x27, 0x4F, 0xB1, 0x22, 0x24, 0xE6, 0x99, 0x51, 0x5F, 0x33,\n0x4A, 0xA8, 0xC9, 0x28, 0xBE, 0xA9, 0x7C, 0xA5, 0x7A, 0x1A, 0xD7, 0x7D, 0x85, 0x4D, 0xF2, 0x09,\n0x11, 0x2F, 0x14, 0x99, 0x15, 0xF3, 0xCC, 0xA8, 0xF6, 0x7F, 0x4E, 0xA6, 0xD6, 0x7F, 0xEC, 0xCF,\n0x8E, 0xC1, 0xBA, 0xAF, 0xDE, 0x17, 0xC6, 0xAC, 0xD1, 0x06, 0x88, 0x6E, 0xC6, 0x5B, 0xF6, 0xD5,\n0x46, 0xCD, 0x75, 0xC3, 0x77, 0x8C, 0x56, 0x1F, 0xB9, 0x53, 0xFB, 0x3C, 0x39, 0x35, 0x2B, 0x66,\n0x9A, 0x51, 0x34, 0x72, 0xDE, 0x10, 0x8D, 0x75, 0x4F, 0x38, 0xC7, 0xB5, 0x63, 0x10, 0x36, 0xEF,\n0xED, 0xA4, 0x31, 0x59, 0x19, 0x40, 0x74, 0x33, 0x3E, 0x90, 0x52, 0x95, 0xA9, 0x91, 0xC6, 0x6D,\n0xDD, 0xC0, 0xB9, 0x06, 0x89, 0xC9, 0xA6, 0xF8, 0x40, 0x2C, 0x12, 0x36, 0x06, 0x31, 0xCF, 0x8C,\n0xEA, 0x8D, 0x90, 0xA9, 0x49, 0xE0, 0xD4, 0x9B, 0xC5, 0x8F, 0x35, 0x22, 0x91, 0xD7, 0x88, 0xD9,\n0x14, 0x3D, 0x4F, 0xD1, 0x69, 0xBE, 0x19, 0x55, 0x1B, 0x64, 0xEA, 0x57, 0xBD, 0x4B, 0xF5, 0xFD,\n0x48, 0xAD, 0x3F, 0x57, 0x77, 0x59, 0x43, 0xD8, 0x3C, 0x7C, 0xBE, 0x3B, 0xDA, 0x64, 0xE5, 0xA9,\n0x2B, 0x95, 0x6D, 0x63, 0x9C, 0xA9, 0xBB, 0x6A, 0x6C, 0xEA, 0x3C, 0x6A, 0x84, 0xC4, 0x06, 0x12,\n0x43, 0xD8, 0x78, 0x29, 0x5E, 0x36, 0x9D, 0x66, 0xE5, 0x8D, 0x67, 0x2A, 0x4A, 0xAD, 0xF1, 0x74,\n0x03, 0x12, 0x37, 0x23, 0x12, 0xF5, 0x0B, 0xB6, 0x94, 0x62, 0x6E, 0x9E, 0xBA, 0x52, 0xF7, 0x64,\n0xEA, 0xAA, 0xF6, 0xF2, 0x0F, 0x89, 0xEC, 0xC2, 0x90, 0x68, 0x79, 0x9A, 0x0B, 0xD1, 0x33, 0x95,\n0x6A, 0xD4, 0x25, 0xAE, 0xA9, 0x74, 0xFA, 0x77, 0x12, 0xF5, 0xAC, 0xC6, 0x4A, 0xF1, 0xF2, 0xA4,\n0x4E, 0x51, 0xAA, 0x67, 0x2A, 0xB3, 0xF8, 0x8B, 0x51, 0x35, 0x36, 0x8B, 0xBF, 0x82, 0xEB, 0x24,\n0xB6, 0x8C, 0xA7, 0x94, 0x62, 0x2E, 0x89, 0x40, 0xDC, 0x9F, 0xA9, 0x2C, 0xC6, 0xFD, 0x87, 0xA9,\n0x9B, 0xA5, 0x37, 0x63, 0x27, 0xB1, 0x1D, 0x16, 0xC5, 0x47, 0x22, 0xD1, 0x4A, 0x31, 0x13, 0x22,\n0x4A, 0xC5, 0x8C, 0x16, 0x38, 0xD5, 0xF6, 0x8D, 0xE3, 0xC3, 0x74, 0xDA, 0xD1, 0x18, 0x6C, 0x8A,\n0x13, 0x79, 0x3A, 0x65, 0xC6, 0xF4, 0xD9, 0x06, 0x34, 0xAA, 0x37, 0x6A, 0xD1, 0x78, 0x37, 0xED,\n0x44, 0xC6, 0xD3, 0x07, 0x69, 0xED, 0x67, 0xE8, 0x14, 0x88, 0xAE, 0x54, 0x49, 0x55, 0xDF, 0x6D,\n0xC4, 0xD3, 0x7F, 0x85, 0xB5, 0x91, 0x15, 0x43, 0xDB, 0x7E, 0xD4, 0x29, 0x24, 0xA2, 0x53, 0xAB,\n0x8C, 0x3C, 0xA5, 0x5E, 0xF6, 0x4C, 0x1D, 0x2E, 0x71, 0x6D, 0x54, 0xEA, 0x66, 0xBB, 0x59, 0x9A,\n0xC6, 0xD7, 0x90, 0xA8, 0xDA, 0x7F, 0x69, 0x08, 0x5D, 0xA7, 0x39, 0x10, 0x3D, 0x53, 0xFF, 0x08,\n0x9C, 0x5A, 0xDB, 0xFF, 0x49, 0x48, 0x1C, 0x0D, 0xE0, 0x76, 0x96, 0x72, 0x12, 0xF3, 0xCD, 0x28,\n0xA5, 0x42, 0x23, 0x81, 0xB3, 0xAE, 0xE1, 0xC6, 0xA3, 0x1F, 0x21, 0x71, 0x54, 0xFB, 0x90, 0x78,\n0x13, 0x12, 0x0B, 0x20, 0x32, 0xE0, 0x58, 0x35, 0x42, 0xE3, 0xC2, 0xDD, 0x78, 0x01, 0x12, 0x99,\n0xDD, 0x34, 0xBC, 0x31, 0xD9, 0x4C, 0xF4, 0xFE, 0x74, 0x6D, 0x78, 0x35, 0x26, 0x34, 0x2E, 0x75,\n0x8B, 0xA3, 0xF5, 0xF5, 0x71, 0xD4, 0xF8, 0x3E, 0xCC, 0xAB, 0xE0, 0x25, 0x24, 0xA6, 0x34, 0xF2,\n0x26, 0x95, 0xBB, 0x71, 0xD9, 0xE3, 0x3F, 0x85, 0x61, 0x5B, 0x54, 0x20, 0xF1, 0xD6, 0xAD, 0xB1,\n0x4E, 0x45, 0x62, 0x09, 0xC4, 0x88, 0x90, 0x6A, 0x8C, 0x07, 0x55, 0x68, 0x5C, 0x6C, 0x6F, 0xE4,\n0xB0, 0xD8, 0xDF, 0x4E, 0x0F, 0xD6, 0xEA, 0x44, 0x15, 0x86, 0x3F, 0x53, 0x84, 0x44, 0x74, 0x9A,\n0xA9, 0x54, 0x32, 0x95, 0x95, 0x6A, 0xE7, 0x46, 0xF6, 0xC6, 0xD9, 0xD7, 0x7F, 0xB2, 0x66, 0xFB,\n0x35, 0xEA, 0x74, 0xD5, 0xEE, 0x73, 0xA2, 0xE7, 0x69, 0x81, 0x19, 0x45, 0xA3, 0x16, 0xE3, 0xD4,\n0x8D, 0xDA, 0x1B, 0x3F, 0xCD, 0x8C, 0x8D, 0xE1, 0x54, 0x08, 0x83, 0x4C, 0xCD, 0x89, 0xD4, 0xBE,\n0x59, 0xB1, 0xC0, 0x8C, 0xD0, 0x68, 0x6E, 0x5C, 0xE4, 0x7D, 0x2A, 0xDE, 0x59, 0x1C, 0xC2, 0xA6,\n0xD5, 0xDD, 0xCD, 0x6F, 0x36, 0x62, 0x31, 0x4F, 0xA7, 0x40, 0x74, 0x1A, 0xA9, 0x46, 0x21, 0x4C,\n0xBA, 0x71, 0xA9, 0xC4, 0x79, 0xCD, 0x49, 0x0A, 0x27, 0x22, 0x53, 0xAF, 0x7D, 0x48, 0xCC, 0x57,\n0xAA, 0x67, 0xEA, 0x70, 0x6D, 0xC4, 0x8D, 0xBA, 0x1B, 0xFF, 0x98, 0x1F, 0xE1, 0x75, 0x6D, 0x18,\n0x91, 0xC4, 0xA1, 0x13, 0x59, 0x14, 0x19, 0xDE, 0x0A, 0x21, 0x92, 0xA9, 0x36, 0xE1, 0x98, 0x1B,\n0x9B, 0x66, 0x81, 0x51, 0xF5, 0xB8, 0x2A, 0x51, 0x7D, 0x81, 0x13, 0x21, 0xD1, 0x6A, 0xDF, 0x74,\n0x9A, 0xA9, 0x54, 0x68, 0xE4, 0x68, 0x9C, 0xB8, 0xB1, 0xE3, 0xFC, 0x3F, 0xFB, 0xE4, 0x96, 0x92,\n0xA8, 0xF1, 0xD4, 0x16, 0x45, 0x5B, 0x86, 0xF3, 0x69, 0x64, 0x4E, 0xA5, 0x1A, 0xD5, 0x8D, 0xA9,\n0x1B, 0x97, 0x91, 0xEA, 0x9D, 0x2D, 0x24, 0x0A, 0x21, 0x71, 0x1A, 0x48, 0xA4, 0x14, 0x3D, 0x6C,\n0xCA, 0x95, 0x8A, 0x54, 0xA3, 0x1B, 0x3F, 0x88, 0xC6, 0x05, 0x4E, 0x55, 0x67, 0x85, 0x30, 0x3E,\n0xD9, 0xD7, 0x67, 0x8A, 0x0A, 0x1B, 0x23, 0x91, 0xC6, 0x30, 0x88, 0x99, 0x4A, 0x75, 0x1A, 0xE9,\n0xC6, 0x55, 0xBF, 0x37, 0x76, 0xA2, 0x91, 0x01, 0x60, 0x26, 0x23, 0x92, 0xA6, 0x92, 0xA9, 0x93,\n0x88, 0x4C, 0xD1, 0x69, 0x01, 0x44, 0x68, 0x4C, 0x06, 0x55, 0xB9, 0x51, 0x34, 0xAE, 0x23, 0xC6,\n0xCF, 0xB3, 0xF6, 0x05, 0x24, 0xC6, 0xAC, 0x99, 0x93, 0x44, 0x94, 0xCA, 0xEE, 0x0F, 0x8D, 0xFD,\n0x23, 0x63, 0xDC, 0xA8, 0xB3, 0x71, 0x94, 0xEA, 0x8F, 0x39, 0x8D, 0xF8, 0x35, 0xAC, 0x50, 0x38,\n0xF1, 0xE5, 0x3E, 0x12, 0xAD, 0x31, 0x0A, 0x68, 0x64, 0xC2, 0xD1, 0x14, 0xC7, 0xA4, 0x2A, 0x1A,\n0x35, 0xAA, 0xCE, 0xF8, 0x8A, 0xC3, 0x39, 0x2D, 0x89, 0x51, 0xA7, 0xAB, 0xD8, 0xFA, 0x90, 0x68,\n0xE3, 0x69, 0x29, 0x44, 0x0F, 0x1C, 0x66, 0x71, 0xF1, 0x28, 0x1A, 0x29, 0xC7, 0x99, 0xDA, 0xF1,\n0x44, 0xFF, 0x37, 0xA5, 0x95, 0xF8, 0x82, 0x73, 0x06, 0x9D, 0x28, 0x12, 0x0B, 0x74, 0x8A, 0x52,\n0xA9, 0x46, 0x30, 0x9A, 0x1B, 0x29, 0xC7, 0xB9, 0x22, 0xE7, 0xD8, 0xAF, 0xC1, 0x88, 0x5D, 0x87,\n0x4C, 0xC5, 0x21, 0x07, 0x8D, 0x12, 0x12, 0x1D, 0x22, 0x99, 0xEA, 0xB3, 0x38, 0x7B, 0x63, 0x7B,\n0xA0, 0x54, 0x8D, 0x13, 0xC0, 0xE9, 0xFF, 0x46, 0x38, 0xEE, 0x7C, 0x21, 0xD4, 0x5C, 0xF3, 0x62,\n0x46, 0x12, 0xDD, 0x8C, 0xBC, 0xF6, 0x97, 0xD0, 0x88, 0x54, 0xB1, 0xE3, 0x97, 0xFF, 0xC4, 0x78,\n0x74, 0x17, 0xA6, 0xEB, 0xA0, 0xD3, 0x55, 0x28, 0x0C, 0x27, 0x91, 0xF1, 0xD4, 0x20, 0x16, 0xD1,\n0x88, 0x1B, 0xA1, 0x91, 0xFE, 0x6F, 0xC7, 0x34, 0x6E, 0x3F, 0xFF, 0x1F, 0xC6, 0x27, 0x01, 0x61,\n0xE3, 0x69, 0xAA, 0x38, 0x85, 0x44, 0x0E, 0x1A, 0xE8, 0xB4, 0x04, 0x22, 0x99, 0xCA, 0xA0, 0x0A,\n0x8D, 0x3D, 0x48, 0xA5, 0x2A, 0xD5, 0x01, 0xC6, 0x52, 0x84, 0x92, 0x29, 0x08, 0x95, 0x35, 0xBC,\n0x82, 0xE2, 0x4E, 0x84, 0xC4, 0x52, 0xA5, 0x3A, 0x8D, 0xAC, 0xC6, 0x21, 0x71, 0x48, 0xD5, 0xC0,\n0x23, 0x5A, 0x2D, 0xE4, 0xB0, 0xAF, 0xC4, 0xB5, 0xB6, 0x44, 0x93, 0x29, 0x24, 0x52, 0xFB, 0x90,\n0x58, 0x4E, 0xE3, 0xE5, 0x00, 0x12, 0x1A, 0x83, 0x52, 0x03, 0xC6, 0x5E, 0xAA, 0xD8, 0x31, 0x6A,\n0xF5, 0xCB, 0xC5, 0x42, 0x1F, 0x8A, 0xC3, 0x66, 0xF0, 0x61, 0xAB, 0xAC, 0x89, 0xCF, 0x69, 0x66,\n0x26, 0xD1, 0x95, 0xEA, 0x34, 0x3E, 0x12, 0x8D, 0x92, 0x6A, 0xB0, 0x63, 0x37, 0xF0, 0xF8, 0xED,\n0x46, 0x11, 0xC2, 0x57, 0xE2, 0x30, 0x64, 0x4D, 0x97, 0xCA, 0xF4, 0xC5, 0x04, 0x89, 0x40, 0x2C,\n0x56, 0xAA, 0xD1, 0xA8, 0xC4, 0x51, 0x39, 0x32, 0xE4, 0x0C, 0x3C, 0x6E, 0xEE, 0x95, 0xB4, 0x45,\n0xE0, 0xB0, 0x57, 0x69, 0xB7, 0x56, 0x98, 0x5A, 0xD6, 0xA4, 0x17, 0x1B, 0x0B, 0x9B, 0x39, 0x69,\n0x64, 0xE3, 0x88, 0x37, 0x8E, 0x30, 0xAB, 0x0A, 0x63, 0xD3, 0x67, 0xCE, 0xF6, 0xED, 0xBF, 0xFE,\n0x73, 0x67, 0x62, 0xE3, 0x6F, 0x06, 0x0E, 0x0F, 0x84, 0x50, 0x51, 0x63, 0x85, 0x51, 0x4E, 0xA2,\n0xD3, 0x48, 0xFD, 0x3B, 0x8D, 0xA4, 0xAA, 0x22, 0xA7, 0xEB, 0x22, 0xC8, 0x7F, 0x37, 0xE4, 0x95,\n0x46, 0x3E, 0xD4, 0x64, 0x2A, 0x84, 0x6C, 0x89, 0x8F, 0x66, 0x27, 0x11, 0x88, 0xFB, 0x69, 0x64,\n0x1A, 0x97, 0x1D, 0xDB, 0x03, 0x19, 0x52, 0x7E, 0xE4, 0x17, 0x20, 0xF3, 0x44, 0xDA, 0xDB, 0x30,\n0xFA, 0x70, 0x0D, 0x87, 0x32, 0x22, 0xD7, 0x8C, 0x59, 0x9D, 0x88, 0x52, 0xF9, 0x14, 0xDE, 0x69,\n0x8C, 0xCB, 0x31, 0x76, 0xEC, 0xBB, 0x03, 0x90, 0x3F, 0x2F, 0xE6, 0x8B, 0x74, 0xA7, 0xD2, 0x4E,\n0xC3, 0x77, 0x4B, 0xE9, 0x3F, 0x07, 0xE1, 0x7C, 0x24, 0x3A, 0x8D, 0x42, 0xE8, 0x34, 0x2A, 0x71,\n0xD4, 0x1C, 0x1A, 0xC8, 0x63, 0xE6, 0x04, 0x8C, 0x9B, 0x77, 0xA7, 0x73, 0x28, 0x7C, 0xB3, 0x55,\n0xD0, 0x88, 0xC5, 0x83, 0x38, 0x9A, 0x46, 0x23, 0xAA, 0x13, 0xB9, 0x9D, 0x1A, 0x89, 0x06, 0xB1,\n0x3C, 0x70, 0xA0, 0x71, 0x6C, 0x47, 0xB9, 0x11, 0xA9, 0x4A, 0xAB, 0x0A, 0x9D, 0x5E, 0xAD, 0xCF,\n0x26, 0x9F, 0x67, 0x3E, 0x6E, 0x06, 0x0A, 0xF1, 0xE1, 0x0A, 0x23, 0xD2, 0x17, 0xFA, 0x03, 0x89,\n0xA6, 0xD3, 0x22, 0x88, 0x1E, 0x38, 0x1C, 0xAA, 0x74, 0x70, 0xEC, 0xA5, 0x1A, 0xDE, 0x71, 0x80,\n0x47, 0x88, 0x14, 0x93, 0x17, 0xFF, 0x06, 0xF0, 0xF6, 0x2F, 0x51, 0xA8, 0xA0, 0x89, 0x3E, 0x6C,\n0x93, 0xC1, 0x4D, 0x1C, 0x72, 0x00, 0x9F, 0x89, 0x44, 0x94, 0xEA, 0x34, 0xB2, 0x37, 0x8A, 0x46,\n0xEC, 0xB8, 0x92, 0x1F, 0xB5, 0x3D, 0xF6, 0x44, 0x0A, 0xE4, 0xCF, 0xFB, 0x7B, 0xFE, 0x81, 0xDF,\n0xD4, 0x9D, 0xE1, 0x8D, 0xD3, 0x40, 0x10, 0x46, 0x5B, 0x00, 0x53, 0x81, 0x49, 0x07, 0xF1, 0x75,\n0x10, 0xD2, 0x41, 0x72, 0x1D, 0x18, 0x89, 0x0A, 0x42, 0x2A, 0x08, 0x15, 0x1C, 0xA2, 0x5B, 0x3C,\n0x3B, 0xB3, 0x7E, 0x5E, 0x7D, 0xB2, 0x2C, 0x24, 0xAF, 0xB5, 0xCC, 0x59, 0x70, 0x90, 0xFB, 0x71,\n0x8F, 0xF7, 0xCD, 0xCC, 0x6E, 0xEE, 0x07, 0x5F, 0xDE, 0xFD, 0x2B, 0x7E, 0xE6, 0x85, 0xFF, 0xF8,\n0x8D, 0x43, 0x6F, 0x44, 0x52, 0xEA, 0x35, 0x13, 0xCA, 0xB0, 0xD9, 0x55, 0xE3, 0x80, 0x46, 0xDA,\n0x71, 0xC9, 0xF8, 0x28, 0x45, 0x1A, 0xE5, 0xE5, 0x93, 0xF0, 0x5D, 0x7F, 0xDB, 0x4B, 0xFE, 0x13,\n0xC4, 0xF9, 0x0A, 0x8C, 0xC3, 0x04, 0xC8, 0x4A, 0x2C, 0x67, 0xCD, 0x54, 0x22, 0xB1, 0x82, 0x46,\n0xF6, 0xBF, 0x9F, 0x00, 0x98, 0xAB, 0x7F, 0x1E, 0x21, 0xD2, 0x4D, 0x7A, 0x3D, 0xC7, 0xDB, 0xF0,\n0xD5, 0xFF, 0xEF, 0xAE, 0xD3, 0xDB, 0xFD, 0xC7, 0x23, 0xD3, 0xBF, 0x96, 0x0A, 0x71, 0x38, 0x95,\n0x4C, 0xD3, 0xF3, 0x79, 0x6F, 0x89, 0x20, 0xAA, 0xC6, 0x60, 0x04, 0x72, 0x5C, 0xB6, 0xA3, 0x31,\n0x06, 0xE4, 0xCB, 0x55, 0x6A, 0x31, 0x46, 0xF3, 0x0D, 0xF8, 0xE9, 0x0E, 0x49, 0xA9, 0xC7, 0x94,\n0x6B, 0xE2, 0x30, 0x03, 0xF6, 0xD2, 0x89, 0x7B, 0x24, 0x55, 0x35, 0x92, 0x54, 0x4E, 0x00, 0xC9,\n0x23, 0x1B, 0x32, 0x65, 0xF0, 0x85, 0x4B, 0xCA, 0x5B, 0xD0, 0xBB, 0xD0, 0x09, 0x71, 0x58, 0x10,\n0x22, 0x91, 0xA3, 0x1B, 0x31, 0x45, 0xE2, 0x8E, 0x1A, 0x79, 0x8B, 0x03, 0x48, 0x8F, 0x6A, 0x78,\n0xFC, 0xE1, 0x33, 0x27, 0x4F, 0xD6, 0xC4, 0xF8, 0x0A, 0x99, 0xF6, 0x5B, 0xD0, 0xBD, 0xA2, 0x05,\n0x99, 0xA4, 0x76, 0xA6, 0x31, 0x87, 0x7E, 0x81, 0xA2, 0x11, 0x07, 0xEE, 0xFA, 0x21, 0x51, 0xC6,\n0x69, 0x35, 0x8D, 0x24, 0xD5, 0x6A, 0x0C, 0x8F, 0x1F, 0xC6, 0xC8, 0x91, 0x35, 0x83, 0xBA, 0xCE,\n0x5F, 0x3F, 0xA7, 0xDE, 0xB3, 0xC7, 0x19, 0x69, 0x43, 0x0F, 0xA9, 0x13, 0xDE, 0xCB, 0x94, 0x72,\n0x38, 0x0D, 0x87, 0x22, 0xB1, 0xB6, 0x46, 0x66, 0xCE, 0x3D, 0x18, 0x3F, 0xFE, 0xE4, 0x8E, 0xF4,\n0xB8, 0xDA, 0xD4, 0x71, 0xC6, 0x47, 0x66, 0x0B, 0x3C, 0x06, 0xA9, 0xA7, 0x94, 0x95, 0xAF, 0x27,\n0xB7, 0x3A, 0x12, 0xD7, 0x35, 0x9E, 0x5D, 0xE3, 0x10, 0xE7, 0xB8, 0xBC, 0x1E, 0x63, 0xAE, 0x3A,\n0x63, 0xC4, 0x15, 0x8F, 0x13, 0x98, 0xC1, 0x39, 0x63, 0x08, 0x34, 0x42, 0x8E, 0x34, 0x6B, 0xEB,\n0xC2, 0x6A, 0x5D, 0x62, 0x1D, 0x8D, 0x43, 0x30, 0x5A, 0x56, 0x99, 0x39, 0x71, 0x94, 0xB3, 0x8E,\n0x0C, 0x46, 0x43, 0x78, 0xAC, 0x95, 0x59, 0x76, 0x3E, 0x08, 0xC7, 0xEC, 0xF0, 0x1A, 0x4B, 0x9F,\n0x46, 0xAC, 0x20, 0x11, 0x44, 0xDE, 0xFC, 0x97, 0xCD, 0xC1, 0x9D, 0x03, 0x8F, 0x9C, 0x02, 0x8C,\n0xD2, 0x54, 0x3E, 0x15, 0xCF, 0x04, 0x3E, 0xDD, 0xA0, 0xEF, 0x0A, 0x66, 0x29, 0x8D, 0xA8, 0xD3,\n0xB4, 0xDF, 0x55, 0x22, 0x49, 0x85, 0x91, 0x1B, 0x07, 0x87, 0x1C, 0x3C, 0xFA, 0x19, 0x20, 0x86,\n0xCE, 0x02, 0xF2, 0x99, 0x78, 0x8C, 0xCA, 0xD1, 0xCC, 0xAD, 0x05, 0x74, 0xEE, 0x42, 0x42, 0x5A,\n0x12, 0xCE, 0x80, 0x67, 0x39, 0x9C, 0x22, 0x71, 0x5F, 0x8D, 0x1D, 0x59, 0x3D, 0x9F, 0x79, 0x5B,\n0x35, 0x1F, 0xC8, 0x59, 0x1E, 0xDE, 0x91, 0x94, 0xF1, 0x18, 0xE9, 0x54, 0x46, 0x68, 0xD8, 0x26,\n0x10, 0x85, 0xBE, 0x2C, 0xC4, 0xE1, 0x85, 0xA5, 0xCF, 0x0D, 0x43, 0x24, 0x56, 0xD0, 0xC8, 0xAD,\n0xCA, 0xDB, 0x91, 0xAC, 0x46, 0x43, 0x0A, 0xA4, 0x19, 0x9B, 0x98, 0x42, 0x1E, 0x74, 0x00, 0xFA,\n0x28, 0x65, 0x96, 0x5A, 0x0D, 0x8C, 0x9A, 0x7A, 0x12, 0x55, 0xA3, 0x6E, 0x0E, 0x63, 0x24, 0xAB,\n0x34, 0x24, 0x90, 0x94, 0xC3, 0x29, 0x20, 0x83, 0x06, 0x87, 0x6C, 0xC4, 0x13, 0x84, 0x9D, 0x48,\n0xAC, 0xA0, 0x91, 0x76, 0x0C, 0xC6, 0xCB, 0x5B, 0x91, 0xD5, 0x77, 0x1A, 0x12, 0x48, 0x29, 0x7A,\n0x90, 0x36, 0x8C, 0x94, 0xDE, 0x5C, 0x22, 0x37, 0xA8, 0x33, 0x80, 0x7A, 0x3A, 0xAD, 0xA1, 0xD1,\n0x2C, 0x32, 0x55, 0x19, 0x39, 0x78, 0xB4, 0xB1, 0x98, 0x21, 0x39, 0xD3, 0x29, 0x9F, 0x01, 0x12,\n0x52, 0x71, 0x38, 0x44, 0x23, 0x32, 0x6B, 0x98, 0xA6, 0x48, 0xAC, 0xA0, 0xB1, 0x5B, 0x4E, 0xD5,\n0x53, 0xD9, 0x8F, 0xB7, 0x60, 0x9C, 0x8C, 0x10, 0x56, 0x1F, 0xAF, 0x8E, 0xA9, 0x78, 0x7E, 0xB1,\n0xF0, 0x90, 0x06, 0xA1, 0xEC, 0x7C, 0x24, 0x56, 0xE8, 0x44, 0x34, 0x52, 0xA6, 0x91, 0x91, 0xC3,\n0x49, 0x0E, 0x46, 0x87, 0x9C, 0x1E, 0x20, 0xD2, 0x6F, 0x1F, 0xB9, 0xD2, 0x1F, 0xA9, 0x31, 0x67,\n0x14, 0x87, 0x10, 0xD2, 0x88, 0x7D, 0x05, 0x89, 0xA2, 0x51, 0x27, 0xCE, 0x39, 0x34, 0x8A, 0xC7,\n0xF1, 0xDD, 0x20, 0x47, 0x67, 0x20, 0xB3, 0xE9, 0x23, 0x98, 0xE3, 0x93, 0xD4, 0xBB, 0x63, 0x6E,\n0xC3, 0x99, 0x90, 0x9F, 0xD1, 0xE8, 0x34, 0x45, 0x62, 0x05, 0x8D, 0x2C, 0x0E, 0xDA, 0x11, 0x8F,\n0x2C, 0x0F, 0x9F, 0xAC, 0x13, 0xE7, 0x18, 0x6C, 0xE9, 0x01, 0x15, 0x83, 0x36, 0x66, 0x20, 0xBC,\n0x42, 0x48, 0x23, 0xB2, 0x12, 0xEB, 0x48, 0x44, 0xA3, 0xFE, 0x30, 0x8E, 0xCD, 0x81, 0xC7, 0x2B,\n0x8C, 0x49, 0xE4, 0xFD, 0x7B, 0x5E, 0x93, 0x5A, 0xEF, 0x00, 0x7A, 0x48, 0x21, 0xCC, 0x31, 0x5D,\n0x38, 0xAC, 0x22, 0x11, 0x8D, 0xEA, 0x91, 0x91, 0x23, 0x1E, 0x81, 0x0C, 0x82, 0xD1, 0x31, 0x85,\n0x6F, 0xBC, 0xC7, 0xED, 0x97, 0x41, 0x53, 0x12, 0xE2, 0x90, 0x69, 0x8A, 0xC4, 0x5D, 0x4B, 0x10,\n0x61, 0x34, 0x42, 0x3C, 0x3A, 0x61, 0xDC, 0xAE, 0xA2, 0x27, 0x1D, 0x73, 0x42, 0x5A, 0x3E, 0xFE,\n0x8A, 0xF3, 0x31, 0x67, 0x20, 0xD4, 0x51, 0xF3, 0xB5, 0x96, 0x44, 0x34, 0xEA, 0x76, 0x24, 0xAB,\n0xDA, 0x8F, 0x33, 0x23, 0x94, 0x3C, 0x2E, 0xD6, 0x13, 0xAA, 0x21, 0x85, 0x70, 0x58, 0xC6, 0xB4,\n0xAF, 0x42, 0x48, 0x29, 0x22, 0x8C, 0x83, 0xF4, 0x23, 0xD7, 0x64, 0x28, 0xCB, 0x1A, 0x47, 0xBF,\n0xF9, 0x72, 0x9E, 0xB9, 0xCD, 0x1B, 0x5F, 0x53, 0x6A, 0x80, 0x1A, 0xD3, 0x8A, 0x8C, 0x3A, 0x56,\n0x99, 0xAB, 0xDF, 0x12, 0x23, 0x90, 0x54, 0x52, 0x37, 0xFF, 0x5A, 0xD4, 0xD5, 0x15, 0xE2, 0x90,\n0x51, 0x73, 0xCC, 0xAC, 0x21, 0xAA, 0xDA, 0x8E, 0x72, 0xB1, 0x1A, 0xF0, 0x78, 0x8B, 0x43, 0xAB,\n0x96, 0x00, 0xD2, 0x86, 0x5C, 0x2E, 0x58, 0x17, 0xEC, 0xFC, 0x5A, 0x12, 0xD1, 0xA8, 0xED, 0xA8,\n0x1E, 0x2F, 0x34, 0x24, 0x26, 0x37, 0x00, 0x6F, 0x0C, 0x9A, 0xE1, 0x92, 0x09, 0xD3, 0xCE, 0x87,\n0xB1, 0xB2, 0x44, 0x34, 0x6A, 0x3B, 0xE2, 0x11, 0x46, 0x20, 0x6F, 0x06, 0x09, 0xA5, 0xF2, 0x01,\n0x48, 0x1B, 0x92, 0x52, 0x8E, 0xA6, 0xD5, 0x09, 0xD1, 0xA8, 0xED, 0x88, 0x47, 0xC2, 0x0A, 0xA3,\n0x01, 0x18, 0x89, 0xE2, 0xDD, 0xA6, 0x32, 0x3A, 0x00, 0x8D, 0x90, 0x94, 0xA2, 0x90, 0x46, 0xAC,\n0x19, 0x53, 0x18, 0xB5, 0x1D, 0xF1, 0x28, 0x22, 0x09, 0xAC, 0xD7, 0x92, 0xEE, 0xEE, 0xAF, 0x40,\n0xE8, 0x21, 0xE5, 0x8D, 0x0C, 0x2C, 0xF6, 0xC7, 0x48, 0x24, 0xAA, 0x54, 0x67, 0x90, 0xEA, 0x11,\n0x91, 0xB8, 0x0C, 0x9D, 0x51, 0xDF, 0xEC, 0x43, 0x15, 0x8A, 0xC3, 0xE3, 0x62, 0x8A, 0x46, 0x3D,\n0xAC, 0x8A, 0x47, 0x15, 0x09, 0x27, 0x1F, 0x65, 0xBD, 0xA1, 0x90, 0x33, 0xCD, 0x31, 0xD3, 0x74,\n0x9B, 0xB1, 0x9C, 0xAB, 0x85, 0x48, 0x20, 0xA5, 0x14, 0x10, 0x85, 0x4A, 0xB8, 0x21, 0xF1, 0xA8,\n0xA8, 0x2A, 0xA3, 0x69, 0xB9, 0x40, 0xB9, 0x01, 0x28, 0x21, 0xE5, 0x64, 0x7A, 0x14, 0x21, 0x1A,\n0x75, 0x75, 0x68, 0x58, 0x31, 0xF9, 0x6D, 0x05, 0x92, 0xC3, 0x8C, 0xFD, 0x4B, 0x08, 0xA1, 0xBC,\n0x1D, 0x75, 0x48, 0x4C, 0x61, 0x54, 0x8F, 0xCA, 0x88, 0xC9, 0x37, 0xAB, 0x15, 0x7F, 0x0C, 0x99,\n0xB5, 0x90, 0x1E, 0x4E, 0x48, 0x54, 0xD5, 0xA3, 0x42, 0x5E, 0xDC, 0xE4, 0x94, 0x43, 0x93, 0x55,\n0xD8, 0xF4, 0xBF, 0x70, 0xD1, 0xD2, 0x86, 0xE2, 0xF0, 0x90, 0x98, 0x2A, 0xA3, 0x7A, 0xA4, 0x21,\n0x13, 0x23, 0xE5, 0xAA, 0x92, 0x34, 0xCA, 0xE1, 0x45, 0xA1, 0x38, 0x3C, 0x94, 0x90, 0xA8, 0x6E,\n0x7B, 0xE4, 0x38, 0x97, 0x31, 0x01, 0x8A, 0xB7, 0x97, 0xE3, 0x65, 0x00, 0x9D, 0x10, 0x87, 0x10,\n0x6E, 0xC5, 0xF4, 0x18, 0xC6, 0xE4, 0x91, 0x1A, 0x02, 0x92, 0x02, 0xB5, 0x28, 0x08, 0x99, 0x33,\n0xCC, 0xD2, 0x03, 0x09, 0x35, 0xAA, 0xBA, 0x1F, 0x4B, 0x91, 0xA7, 0xA9, 0x06, 0x54, 0x66, 0x67,\n0x17, 0x82, 0x4B, 0xA1, 0x50, 0x1C, 0x1E, 0x16, 0xD3, 0x6D, 0x46, 0x08, 0x05, 0x52, 0x8A, 0x70,\n0xB2, 0x28, 0xDC, 0x20, 0x0A, 0x71, 0x78, 0x18, 0xE1, 0xB6, 0xC7, 0xDE, 0x4A, 0x21, 0x95, 0x52,\n0x01, 0xB9, 0x38, 0xC1, 0x78, 0xB8, 0x43, 0x6D, 0x47, 0x2D, 0x08, 0xA9, 0x89, 0xB0, 0xA0, 0x54,\n0x3E, 0x0C, 0x92, 0x51, 0xAB, 0xCF, 0x3B, 0x34, 0xE2, 0xFE, 0x8C, 0x1D, 0x93, 0xB5, 0xDC, 0x92,\n0x50, 0x2A, 0x1E, 0x80, 0x5C, 0x0F, 0x9B, 0x20, 0x5C, 0x67, 0xC4, 0x24, 0x75, 0x8E, 0x82, 0xEE,\n0x14, 0xC5, 0xD7, 0x10, 0x51, 0x9B, 0x34, 0x2D, 0x10, 0x3A, 0xA3, 0x54, 0xCF, 0x64, 0x95, 0xC8,\n0x52, 0xE0, 0x69, 0x75, 0x5F, 0xFB, 0x56, 0x08, 0x95, 0x51, 0x45, 0x6E, 0x97, 0x46, 0x54, 0x00,\n0x8F, 0x1F, 0x35, 0xCA, 0xA8, 0x22, 0x2D, 0x6C, 0xCB, 0x9C, 0x9E, 0xEC, 0xA1, 0xF4, 0xEF, 0x49,\n0x69, 0x5B, 0x84, 0x30, 0xAA, 0xC8, 0xCE, 0x18, 0x05, 0xA8, 0x7C, 0xA4, 0x09, 0x1D, 0xB0, 0x29,\n0x42, 0x18, 0x65, 0x7D, 0xE0, 0x71, 0xAB, 0xD8, 0x14, 0xD6, 0xC6, 0xCD, 0x11, 0xC2, 0xA8, 0x90,\n0x56, 0xFF, 0x42, 0x98, 0x15, 0xB6, 0x32, 0x69, 0x84, 0x71, 0x65, 0xEE, 0x6C, 0x43, 0xB2, 0xEB,\n0x27, 0xC0, 0x26, 0x09, 0xE5, 0x2C, 0x27, 0x26, 0x37, 0x29, 0xFB, 0xDC, 0x84, 0xAD, 0x12, 0x16,\n0x8C, 0x6A, 0x32, 0x63, 0x76, 0xEB, 0xFE, 0xE2, 0xB8, 0xD6, 0x30, 0x61, 0x11, 0x56, 0xAD, 0x80,\n0x08, 0x9F, 0x74, 0x5E, 0x86, 0x83, 0xAF, 0xBD, 0x41, 0xB3, 0xCD, 0x88, 0xCB, 0xA8, 0x7E, 0xAE,\n0x98, 0x2E, 0x71, 0x65, 0x6A, 0x5D, 0xA1, 0x86, 0xB5, 0xFB, 0xDC, 0xCF, 0x4F, 0xD1, 0x98, 0x52,\n0xF9, 0xB5, 0x6E, 0xF1, 0x34, 0x4A, 0xB8, 0x2E, 0x52, 0xBF, 0x6B, 0x95, 0xDC, 0x7C, 0x48, 0x55,\n0x64, 0x7C, 0xE3, 0x5D, 0xE2, 0xB3, 0x2A, 0x28, 0x45, 0x77, 0xFE, 0xDA, 0xCF, 0x7D, 0xB3, 0x21,\n0x9D, 0x4B, 0x08, 0x02, 0x35, 0x68, 0xF4, 0xC9, 0xA2, 0xED, 0xF5, 0xE6, 0x15, 0xAE, 0xA5, 0xD5,\n0x31, 0xFA, 0xB5, 0x30, 0xF6, 0xF1, 0x52, 0xFF, 0xBF, 0x00, 0x06, 0xA4, 0x52, 0xD8, 0x43, 0x1A,\n0xF9, 0x24, 0xF0, 0x9B, 0x1E, 0xA4, 0xDB, 0x90, 0x4C, 0x1D, 0x22, 0xC9, 0x27, 0x5D, 0xEB, 0x9B,\n0xE2, 0xEF, 0x48, 0xF1, 0x24, 0xA6, 0x07, 0x87, 0x4A, 0x31, 0x4A, 0x7A, 0x9B, 0x4E, 0x70, 0xA8,\n0x54, 0xF5, 0xE4, 0xFB, 0x72, 0x28, 0x34, 0xD6, 0x48, 0xF0, 0xE5, 0xB0, 0x8D, 0x3F, 0x54, 0x6F,\n0x0E, 0xD3, 0xE8, 0xC3, 0x00, 0xC3, 0x31, 0xF2, 0x06, 0x15, 0x00, 0x00, 0x30, 0x6F, 0xE5, 0x21,\n0x41, 0x39, 0x13, 0x54, 0x00, 0x00, 0x00, 0x00, 0x49, 0x45, 0x4E, 0x44, 0xAE, 0x42, 0x60, 0x82\n};"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/Classes/runtime/lua_debugger.c",
    "content": "\n/* lua_debugger.c */\n\n#if __cplusplus\nextern \"C\" {\n#endif\n\n#include \"lua.h\"\n#include \"lauxlib.h\"\n#include \"lua_debugger.h\"\n\n/* debugger */\nstatic const char lua_m_debugger[] = {\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x0a,\n    0x2d,0x2d,0x20,0x43,0x6f,0x70,0x79,0x72,0x69,0x67,0x68,0x74,0x20,0x28,0x63,0x29,\n    0x20,0x32,0x30,0x31,0x31,0x2d,0x32,0x30,0x31,0x32,0x20,0x53,0x69,0x65,0x72,0x72,\n    0x61,0x20,0x57,0x69,0x72,0x65,0x6c,0x65,0x73,0x73,0x20,0x61,0x6e,0x64,0x20,0x6f,\n    0x74,0x68,0x65,0x72,0x73,0x2e,0x0a,0x2d,0x2d,0x20,0x41,0x6c,0x6c,0x20,0x72,0x69,\n    0x67,0x68,0x74,0x73,0x20,0x72,0x65,0x73,0x65,0x72,0x76,0x65,0x64,0x2e,0x20,0x54,\n    0x68,0x69,0x73,0x20,0x70,0x72,0x6f,0x67,0x72,0x61,0x6d,0x20,0x61,0x6e,0x64,0x20,\n    0x74,0x68,0x65,0x20,0x61,0x63,0x63,0x6f,0x6d,0x70,0x61,0x6e,0x79,0x69,0x6e,0x67,\n    0x20,0x6d,0x61,0x74,0x65,0x72,0x69,0x61,0x6c,0x73,0x0a,0x2d,0x2d,0x20,0x61,0x72,\n    0x65,0x20,0x6d,0x61,0x64,0x65,0x20,0x61,0x76,0x61,0x69,0x6c,0x61,0x62,0x6c,0x65,\n    0x20,0x75,0x6e,0x64,0x65,0x72,0x20,0x74,0x68,0x65,0x20,0x74,0x65,0x72,0x6d,0x73,\n    0x20,0x6f,0x66,0x20,0x74,0x68,0x65,0x20,0x45,0x63,0x6c,0x69,0x70,0x73,0x65,0x20,\n    0x50,0x75,0x62,0x6c,0x69,0x63,0x20,0x4c,0x69,0x63,0x65,0x6e,0x73,0x65,0x20,0x76,\n    0x31,0x2e,0x30,0x0a,0x2d,0x2d,0x20,0x77,0x68,0x69,0x63,0x68,0x20,0x61,0x63,0x63,\n    0x6f,0x6d,0x70,0x61,0x6e,0x69,0x65,0x73,0x20,0x74,0x68,0x69,0x73,0x20,0x64,0x69,\n    0x73,0x74,0x72,0x69,0x62,0x75,0x74,0x69,0x6f,0x6e,0x2c,0x20,0x61,0x6e,0x64,0x20,\n    0x69,0x73,0x20,0x61,0x76,0x61,0x69,0x6c,0x61,0x62,0x6c,0x65,0x20,0x61,0x74,0x0a,\n    0x2d,0x2d,0x20,0x68,0x74,0x74,0x70,0x3a,0x2f,0x2f,0x77,0x77,0x77,0x2e,0x65,0x63,\n    0x6c,0x69,0x70,0x73,0x65,0x2e,0x6f,0x72,0x67,0x2f,0x6c,0x65,0x67,0x61,0x6c,0x2f,\n    0x65,0x70,0x6c,0x2d,0x76,0x31,0x30,0x2e,0x68,0x74,0x6d,0x6c,0x0a,0x2d,0x2d,0x0a,\n    0x2d,0x2d,0x20,0x43,0x6f,0x6e,0x74,0x72,0x69,0x62,0x75,0x74,0x6f,0x72,0x73,0x3a,\n    0x0a,0x2d,0x2d,0x20,0x20,0x20,0x20,0x20,0x53,0x69,0x65,0x72,0x72,0x61,0x20,0x57,\n    0x69,0x72,0x65,0x6c,0x65,0x73,0x73,0x20,0x2d,0x20,0x69,0x6e,0x69,0x74,0x69,0x61,\n    0x6c,0x20,0x41,0x50,0x49,0x20,0x61,0x6e,0x64,0x20,0x69,0x6d,0x70,0x6c,0x65,0x6d,\n    0x65,0x6e,0x74,0x61,0x74,0x69,0x6f,0x6e,0x0a,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x0a,0x2d,0x2d,0x20,0x44,0x65,0x62,0x75,\n    0x67,0x67,0x65,0x72,0x20,0x75,0x73,0x69,0x6e,0x67,0x20,0x44,0x42,0x47,0x70,0x20,\n    0x70,0x72,0x6f,0x74,0x6f,0x63,0x6f,0x6c,0x2e,0x0a,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x0a,0x2d,0x2d,0x20,0x54,0x68,0x65,\n    0x20,0x6d,0x6f,0x64,0x75,0x6c,0x65,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x73,0x20,\n    0x61,0x20,0x73,0x69,0x6e,0x67,0x6c,0x65,0x20,0x69,0x6e,0x69,0x74,0x20,0x66,0x75,\n    0x6e,0x63,0x74,0x69,0x6f,0x6e,0x20,0x77,0x68,0x69,0x63,0x68,0x20,0x74,0x61,0x6b,\n    0x65,0x73,0x20,0x36,0x20,0x70,0x61,0x72,0x61,0x6d,0x65,0x74,0x65,0x72,0x73,0x20,\n    0x28,0x49,0x44,0x45,0x48,0x4f,0x53,0x54,0x2c,0x20,0x49,0x44,0x45,0x50,0x4f,0x52,\n    0x54,0x2c,0x20,0x49,0x44,0x45,0x4b,0x45,0x59,0x2c,0x20,0x54,0x52,0x41,0x4e,0x53,\n    0x50,0x4f,0x52,0x54,0x2c,0x20,0x50,0x4c,0x41,0x54,0x46,0x4f,0x52,0x4d,0x2c,0x20,\n    0x57,0x4f,0x52,0x4b,0x49,0x4e,0x47,0x44,0x49,0x52,0x29,0x2e,0x0a,0x2d,0x2d,0x0a,\n    0x2d,0x2d,0x20,0x49,0x44,0x45,0x48,0x4f,0x53,0x54,0x3a,0x20,0x74,0x68,0x65,0x20,\n    0x68,0x6f,0x73,0x74,0x20,0x6e,0x61,0x6d,0x65,0x20,0x6f,0x72,0x20,0x74,0x68,0x65,\n    0x20,0x69,0x70,0x20,0x61,0x64,0x64,0x72,0x65,0x73,0x73,0x20,0x6f,0x66,0x20,0x74,\n    0x68,0x65,0x20,0x44,0x42,0x47,0x50,0x20,0x73,0x65,0x72,0x76,0x65,0x72,0x20,0x28,\n    0x73,0x6f,0x20,0x79,0x6f,0x75,0x72,0x20,0x69,0x64,0x65,0x29,0x0a,0x2d,0x2d,0x20,\n    0x69,0x66,0x20,0x48,0x4f,0x53,0x54,0x20,0x69,0x73,0x20,0x6e,0x69,0x6c,0x2c,0x20,\n    0x74,0x68,0x65,0x20,0x44,0x42,0x47,0x50,0x5f,0x49,0x44,0x45,0x48,0x4f,0x53,0x54,\n    0x20,0x65,0x6e,0x76,0x20,0x76,0x61,0x72,0x20,0x69,0x73,0x20,0x75,0x73,0x65,0x64,\n    0x2e,0x0a,0x2d,0x2d,0x20,0x69,0x66,0x20,0x74,0x68,0x65,0x20,0x65,0x6e,0x76,0x20,\n    0x76,0x61,0x72,0x20,0x69,0x73,0x20,0x6e,0x69,0x6c,0x2c,0x20,0x74,0x68,0x65,0x20,\n    0x64,0x65,0x66,0x61,0x75,0x6c,0x74,0x20,0x76,0x61,0x6c,0x75,0x65,0x20,0x27,0x31,\n    0x32,0x37,0x2e,0x30,0x2e,0x30,0x2e,0x31,0x27,0x20,0x69,0x73,0x20,0x75,0x73,0x65,\n    0x64,0x2e,0x0a,0x2d,0x2d,0x0a,0x2d,0x2d,0x20,0x49,0x44,0x45,0x50,0x4f,0x52,0x54,\n    0x3a,0x20,0x74,0x68,0x65,0x20,0x70,0x6f,0x72,0x74,0x20,0x6f,0x66,0x20,0x74,0x68,\n    0x65,0x20,0x44,0x42,0x47,0x50,0x20,0x73,0x65,0x72,0x76,0x65,0x72,0x20,0x28,0x6d,\n    0x75,0x73,0x74,0x20,0x62,0x65,0x20,0x63,0x6f,0x6e,0x66,0x69,0x67,0x75,0x72,0x65,\n    0x20,0x69,0x6e,0x20,0x74,0x68,0x65,0x20,0x49,0x44,0x45,0x29,0x0a,0x2d,0x2d,0x20,\n    0x69,0x66,0x20,0x50,0x4f,0x52,0x54,0x20,0x69,0x73,0x20,0x6e,0x69,0x6c,0x2c,0x20,\n    0x74,0x68,0x65,0x20,0x44,0x42,0x47,0x50,0x5f,0x49,0x44,0x45,0x50,0x4f,0x52,0x54,\n    0x20,0x65,0x6e,0x76,0x20,0x76,0x61,0x72,0x20,0x69,0x73,0x20,0x75,0x73,0x65,0x64,\n    0x2e,0x0a,0x2d,0x2d,0x20,0x69,0x66,0x20,0x74,0x68,0x65,0x20,0x65,0x6e,0x76,0x20,\n    0x76,0x61,0x72,0x20,0x69,0x73,0x20,0x6e,0x69,0x6c,0x2c,0x20,0x74,0x68,0x65,0x20,\n    0x64,0x65,0x66,0x61,0x75,0x6c,0x74,0x20,0x76,0x61,0x6c,0x75,0x65,0x20,0x27,0x31,\n    0x30,0x30,0x30,0x30,0x27,0x20,0x69,0x73,0x20,0x75,0x73,0x65,0x64,0x2e,0x0a,0x2d,\n    0x2d,0x0a,0x2d,0x2d,0x20,0x49,0x44,0x45,0x49,0x44,0x45,0x4b,0x45,0x59,0x3a,0x20,\n    0x61,0x20,0x73,0x74,0x72,0x69,0x6e,0x67,0x20,0x77,0x68,0x69,0x63,0x68,0x20,0x69,\n    0x73,0x20,0x75,0x73,0x65,0x64,0x20,0x61,0x73,0x20,0x73,0x65,0x73,0x73,0x69,0x6f,\n    0x6e,0x20,0x6b,0x65,0x79,0x0a,0x2d,0x2d,0x20,0x69,0x66,0x20,0x49,0x44,0x45,0x4b,\n    0x45,0x59,0x20,0x69,0x73,0x20,0x6e,0x69,0x6c,0x2c,0x20,0x74,0x68,0x65,0x20,0x44,\n    0x42,0x47,0x50,0x5f,0x49,0x44,0x45,0x4b,0x45,0x59,0x20,0x65,0x6e,0x76,0x20,0x76,\n    0x61,0x72,0x20,0x69,0x73,0x20,0x75,0x73,0x65,0x64,0x2e,0x0a,0x2d,0x2d,0x20,0x69,\n    0x66,0x20,0x74,0x68,0x65,0x20,0x65,0x6e,0x76,0x20,0x76,0x61,0x72,0x20,0x69,0x73,\n    0x20,0x6e,0x69,0x6c,0x2c,0x20,0x74,0x68,0x65,0x20,0x64,0x65,0x66,0x61,0x75,0x6c,\n    0x74,0x20,0x76,0x61,0x6c,0x75,0x65,0x20,0x27,0x6c,0x75,0x61,0x69,0x64,0x65,0x6b,\n    0x65,0x79,0x27,0x20,0x69,0x73,0x20,0x75,0x73,0x65,0x64,0x2e,0x0a,0x2d,0x2d,0x0a,\n    0x2d,0x2d,0x20,0x54,0x52,0x41,0x4e,0x53,0x50,0x4f,0x52,0x54,0x3a,0x20,0x28,0x61,\n    0x64,0x76,0x61,0x6e,0x63,0x65,0x64,0x20,0x6f,0x70,0x74,0x69,0x6f,0x6e,0x61,0x6c,\n    0x20,0x70,0x61,0x72,0x61,0x6d,0x65,0x74,0x65,0x72,0x29,0x20,0x74,0x68,0x65,0x20,\n    0x6d,0x6f,0x64,0x75,0x6c,0x65,0x20,0x6e,0x61,0x6d,0x65,0x20,0x6f,0x66,0x20,0x77,\n    0x68,0x69,0x63,0x68,0x20,0x69,0x6d,0x70,0x6c,0x65,0x6d,0x65,0x6e,0x74,0x20,0x74,\n    0x68,0x65,0x20,0x74,0x72,0x61,0x6e,0x73,0x70,0x6f,0x72,0x74,0x20,0x69,0x6e,0x74,\n    0x65,0x72,0x66,0x61,0x63,0x65,0x20,0x75,0x73,0x65,0x64,0x20,0x74,0x6f,0x20,0x64,\n    0x6f,0x20,0x74,0x68,0x65,0x20,0x63,0x6f,0x6e,0x6e,0x65,0x63,0x74,0x69,0x6f,0x6e,\n    0x20,0x77,0x69,0x74,0x68,0x20,0x74,0x68,0x65,0x20,0x73,0x65,0x72,0x76,0x65,0x72,\n    0x2e,0x0a,0x2d,0x2d,0x20,0x62,0x79,0x20,0x64,0x65,0x66,0x61,0x75,0x6c,0x74,0x20,\n    0x74,0x68,0x65,0x20,0x64,0x65,0x62,0x75,0x67,0x67,0x65,0x72,0x20,0x75,0x73,0x65,\n    0x20,0x61,0x6e,0x20,0x20,0x69,0x6e,0x74,0x65,0x72,0x6e,0x61,0x6c,0x20,0x69,0x6d,\n    0x70,0x6c,0x65,0x6d,0x65,0x6e,0x74,0x61,0x74,0x69,0x6f,0x6e,0x20,0x62,0x61,0x73,\n    0x65,0x64,0x20,0x6f,0x6e,0x20,0x6c,0x75,0x61,0x73,0x6f,0x63,0x6b,0x65,0x74,0x2c,\n    0x20,0x62,0x75,0x74,0x20,0x69,0x66,0x20,0x63,0x61,0x6e,0x20,0x6e,0x6f,0x74,0x20,\n    0x75,0x73,0x65,0x20,0x69,0x74,0x2c,0x20,0x79,0x6f,0x75,0x20,0x63,0x6f,0x75,0x6c,\n    0x64,0x20,0x69,0x6d,0x70,0x6c,0x65,0x6d,0x65,0x6e,0x74,0x20,0x6f,0x72,0x20,0x75,\n    0x73,0x65,0x20,0x61,0x6e,0x6f,0x74,0x68,0x65,0x72,0x20,0x74,0x72,0x61,0x6e,0x73,\n    0x70,0x6f,0x72,0x74,0x20,0x6c,0x61,0x79,0x65,0x72,0x20,0x69,0x6d,0x70,0x6c,0x65,\n    0x6d,0x65,0x6e,0x74,0x61,0x74,0x69,0x6f,0x6e,0x2e,0x0a,0x2d,0x2d,0x20,0x69,0x66,\n    0x20,0x54,0x52,0x41,0x4e,0x53,0x50,0x4f,0x52,0x54,0x20,0x69,0x73,0x20,0x6e,0x69,\n    0x6c,0x2c,0x20,0x74,0x68,0x65,0x20,0x44,0x42,0x47,0x50,0x5f,0x54,0x52,0x41,0x4e,\n    0x53,0x50,0x4f,0x52,0x54,0x20,0x65,0x6e,0x76,0x20,0x76,0x61,0x72,0x20,0x69,0x73,\n    0x20,0x75,0x73,0x65,0x64,0x2e,0x0a,0x2d,0x2d,0x20,0x69,0x66,0x20,0x74,0x68,0x65,\n    0x20,0x65,0x6e,0x76,0x20,0x76,0x61,0x72,0x20,0x69,0x73,0x20,0x6e,0x69,0x6c,0x2c,\n    0x20,0x74,0x68,0x65,0x20,0x64,0x65,0x66,0x61,0x75,0x6c,0x74,0x20,0x76,0x61,0x6c,\n    0x75,0x65,0x20,0x27,0x64,0x65,0x62,0x75,0x67,0x67,0x65,0x72,0x2e,0x74,0x72,0x61,\n    0x6e,0x73,0x70,0x6f,0x72,0x74,0x2e,0x6c,0x75,0x61,0x73,0x6f,0x63,0x6b,0x65,0x74,\n    0x27,0x20,0x69,0x73,0x20,0x75,0x73,0x65,0x64,0x20,0x3a,0x20,0x74,0x68,0x69,0x73,\n    0x20,0x69,0x73,0x20,0x74,0x68,0x65,0x20,0x64,0x65,0x66,0x61,0x75,0x6c,0x74,0x20,\n    0x69,0x6d,0x70,0x6c,0x65,0x6d,0x65,0x6e,0x74,0x61,0x74,0x69,0x6f,0x6e,0x20,0x62,\n    0x61,0x73,0x65,0x64,0x20,0x6f,0x6e,0x20,0x6c,0x75,0x61,0x73,0x6f,0x63,0x6b,0x65,\n    0x74,0x2e,0x0a,0x2d,0x2d,0x0a,0x2d,0x2d,0x20,0x50,0x4c,0x41,0x54,0x46,0x4f,0x52,\n    0x4d,0x3a,0x20,0x28,0x61,0x64,0x76,0x61,0x6e,0x63,0x65,0x64,0x20,0x6f,0x70,0x74,\n    0x69,0x6f,0x6e,0x61,0x6c,0x20,0x70,0x61,0x72,0x61,0x6d,0x65,0x74,0x65,0x72,0x29,\n    0x20,0x27,0x75,0x6e,0x69,0x78,0x27,0x20,0x6f,0x72,0x20,0x27,0x77,0x69,0x6e,0x33,\n    0x32,0x27,0x20,0x73,0x74,0x72,0x69,0x6e,0x67,0x20,0x77,0x68,0x69,0x63,0x68,0x20,\n    0x64,0x65,0x66,0x69,0x6e,0x65,0x20,0x74,0x68,0x65,0x20,0x6b,0x69,0x6e,0x64,0x20,\n    0x6f,0x66,0x20,0x70,0x6c,0x61,0x74,0x66,0x6f,0x72,0x6d,0x20,0x6f,0x6e,0x20,0x77,\n    0x68,0x69,0x63,0x68,0x20,0x74,0x68,0x65,0x20,0x70,0x72,0x6f,0x67,0x72,0x61,0x6d,\n    0x20,0x74,0x6f,0x20,0x64,0x65,0x62,0x75,0x67,0x20,0x69,0x73,0x20,0x65,0x78,0x65,\n    0x63,0x75,0x74,0x65,0x64,0x2e,0x0a,0x2d,0x2d,0x20,0x62,0x79,0x20,0x64,0x65,0x66,\n    0x61,0x75,0x6c,0x74,0x20,0x74,0x68,0x65,0x20,0x64,0x65,0x62,0x75,0x67,0x67,0x65,\n    0x72,0x20,0x77,0x69,0x6c,0x6c,0x20,0x74,0x72,0x79,0x20,0x74,0x6f,0x20,0x67,0x75,\n    0x65,0x73,0x73,0x20,0x69,0x74,0x20,0x61,0x6e,0x64,0x20,0x73,0x75,0x72,0x65,0x6c,\n    0x79,0x20,0x73,0x75,0x63,0x63,0x65,0x73,0x73,0x2c,0x20,0x69,0x66,0x20,0x66,0x6f,\n    0x72,0x20,0x73,0x6f,0x6d,0x65,0x20,0x72,0x65,0x61,0x73,0x6f,0x6e,0x73,0x20,0x69,\n    0x74,0x20,0x66,0x61,0x69,0x6c,0x73,0x20,0x79,0x6f,0x75,0x20,0x63,0x6f,0x75,0x6c,\n    0x64,0x20,0x68,0x65,0x6c,0x70,0x20,0x69,0x74,0x20,0x62,0x79,0x20,0x70,0x72,0x65,\n    0x63,0x69,0x73,0x65,0x20,0x74,0x68,0x65,0x20,0x65,0x78,0x65,0x63,0x75,0x74,0x69,\n    0x6f,0x6e,0x20,0x70,0x6c,0x61,0x74,0x66,0x6f,0x72,0x6d,0x2e,0x0a,0x2d,0x2d,0x20,\n    0x69,0x66,0x20,0x50,0x4c,0x41,0x54,0x46,0x4f,0x52,0x4d,0x20,0x69,0x73,0x20,0x6e,\n    0x69,0x6c,0x2c,0x20,0x74,0x68,0x65,0x20,0x44,0x42,0x47,0x50,0x5f,0x50,0x4c,0x41,\n    0x54,0x46,0x4f,0x52,0x4d,0x20,0x65,0x6e,0x76,0x20,0x76,0x61,0x72,0x20,0x69,0x73,\n    0x20,0x75,0x73,0x65,0x64,0x2e,0x0a,0x2d,0x2d,0x20,0x69,0x66,0x20,0x74,0x68,0x65,\n    0x20,0x65,0x6e,0x76,0x20,0x76,0x61,0x72,0x20,0x69,0x73,0x20,0x6e,0x69,0x6c,0x2c,\n    0x20,0x74,0x68,0x65,0x20,0x64,0x65,0x62,0x75,0x67,0x67,0x65,0x72,0x20,0x77,0x69,\n    0x6c,0x6c,0x20,0x74,0x72,0x79,0x20,0x74,0x6f,0x20,0x67,0x75,0x65,0x73,0x73,0x20,\n    0x69,0x74,0x2e,0x0a,0x2d,0x2d,0x0a,0x2d,0x2d,0x20,0x57,0x4f,0x52,0x4b,0x49,0x4e,\n    0x47,0x44,0x49,0x52,0x3a,0x20,0x28,0x61,0x64,0x76,0x61,0x6e,0x63,0x65,0x64,0x20,\n    0x6f,0x70,0x74,0x69,0x6f,0x6e,0x61,0x6c,0x20,0x70,0x61,0x72,0x61,0x6d,0x65,0x74,\n    0x65,0x72,0x29,0x20,0x74,0x68,0x65,0x20,0x77,0x6f,0x72,0x6b,0x69,0x6e,0x67,0x20,\n    0x64,0x69,0x72,0x65,0x63,0x74,0x6f,0x72,0x79,0x20,0x69,0x6e,0x20,0x77,0x68,0x69,\n    0x63,0x68,0x20,0x74,0x68,0x65,0x20,0x70,0x72,0x6f,0x67,0x72,0x61,0x6d,0x20,0x74,\n    0x6f,0x20,0x64,0x65,0x62,0x75,0x67,0x20,0x69,0x73,0x20,0x65,0x78,0x65,0x63,0x75,\n    0x74,0x65,0x64,0x2e,0x0a,0x2d,0x2d,0x20,0x62,0x79,0x20,0x64,0x65,0x66,0x61,0x75,\n    0x6c,0x74,0x20,0x74,0x68,0x65,0x20,0x64,0x65,0x62,0x75,0x67,0x67,0x65,0x72,0x20,\n    0x77,0x69,0x6c,0x6c,0x20,0x74,0x72,0x79,0x20,0x74,0x6f,0x20,0x67,0x75,0x65,0x73,\n    0x73,0x20,0x69,0x74,0x20,0x61,0x6e,0x64,0x20,0x73,0x75,0x72,0x65,0x6c,0x79,0x20,\n    0x73,0x75,0x63,0x63,0x65,0x73,0x73,0x2c,0x20,0x69,0x66,0x20,0x66,0x6f,0x72,0x20,\n    0x73,0x6f,0x6d,0x65,0x20,0x72,0x65,0x61,0x73,0x6f,0x6e,0x73,0x20,0x69,0x74,0x20,\n    0x66,0x61,0x69,0x6c,0x73,0x20,0x79,0x6f,0x75,0x20,0x63,0x6f,0x75,0x6c,0x64,0x20,\n    0x68,0x65,0x6c,0x70,0x20,0x69,0x74,0x20,0x62,0x79,0x20,0x70,0x72,0x65,0x63,0x69,\n    0x73,0x65,0x20,0x74,0x68,0x65,0x20,0x77,0x6f,0x72,0x6b,0x69,0x6e,0x67,0x20,0x64,\n    0x69,0x72,0x65,0x63,0x74,0x6f,0x72,0x79,0x2e,0x0a,0x2d,0x2d,0x20,0x69,0x66,0x20,\n    0x57,0x4f,0x52,0x4b,0x49,0x4e,0x47,0x44,0x49,0x52,0x20,0x69,0x73,0x20,0x6e,0x69,\n    0x6c,0x2c,0x20,0x74,0x68,0x65,0x20,0x44,0x42,0x47,0x50,0x5f,0x57,0x4f,0x52,0x4b,\n    0x49,0x4e,0x47,0x44,0x49,0x52,0x20,0x65,0x6e,0x76,0x20,0x76,0x61,0x72,0x20,0x69,\n    0x73,0x20,0x75,0x73,0x65,0x64,0x2e,0x0a,0x2d,0x2d,0x20,0x69,0x66,0x20,0x74,0x68,\n    0x65,0x20,0x65,0x6e,0x76,0x20,0x76,0x61,0x72,0x20,0x69,0x73,0x20,0x6e,0x69,0x6c,\n    0x2c,0x20,0x74,0x68,0x65,0x20,0x64,0x65,0x62,0x75,0x67,0x67,0x65,0x72,0x20,0x77,\n    0x69,0x6c,0x6c,0x20,0x74,0x72,0x79,0x20,0x74,0x6f,0x20,0x67,0x75,0x65,0x73,0x73,\n    0x20,0x69,0x74,0x2e,0x0a,0x2d,0x2d,0x0a,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x0a,0x2d,0x2d,0x20,0x4b,0x6e,0x6f,0x77,0x6e,\n    0x20,0x49,0x73,0x73,0x75,0x65,0x73,0x3a,0x0a,0x2d,0x2d,0x20,0x20,0x20,0x2a,0x20,\n    0x46,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x73,0x20,0x63,0x61,0x6e,0x6e,0x6f,0x74,\n    0x20,0x62,0x65,0x20,0x63,0x72,0x65,0x61,0x74,0x65,0x64,0x20,0x75,0x73,0x69,0x6e,\n    0x67,0x20,0x74,0x68,0x65,0x20,0x64,0x65,0x62,0x75,0x67,0x67,0x65,0x72,0x20,0x61,\n    0x6e,0x64,0x20,0x74,0x68,0x65,0x6e,0x20,0x63,0x61,0x6c,0x6c,0x65,0x64,0x20,0x69,\n    0x6e,0x20,0x70,0x72,0x6f,0x67,0x72,0x61,0x6d,0x20,0x62,0x65,0x63,0x61,0x75,0x73,\n    0x65,0x20,0x74,0x68,0x65,0x69,0x72,0x20,0x65,0x6e,0x76,0x69,0x72,0x6f,0x6e,0x6d,\n    0x65,0x6e,0x74,0x20,0x69,0x73,0x20,0x6d,0x61,0x70,0x70,0x65,0x64,0x20,0x64,0x69,\n    0x72,0x65,0x63,0x74,0x6c,0x79,0x20,0x74,0x6f,0x0a,0x2d,0x2d,0x20,0x20,0x20,0x20,\n    0x20,0x61,0x20,0x64,0x65,0x62,0x75,0x67,0x67,0x65,0x72,0x20,0x69,0x6e,0x74,0x65,\n    0x72,0x6e,0x61,0x6c,0x20,0x73,0x74,0x72,0x75,0x63,0x74,0x75,0x72,0x65,0x20,0x77,\n    0x68,0x69,0x63,0x68,0x20,0x63,0x61,0x6e,0x6e,0x6f,0x74,0x20,0x62,0x65,0x20,0x70,\n    0x65,0x72,0x73,0x69,0x73,0x74,0x65,0x64,0x20,0x28,0x69,0x2e,0x65,0x2e,0x20,0x75,\n    0x73,0x65,0x64,0x20,0x6f,0x75,0x74,0x73,0x69,0x64,0x65,0x20,0x6f,0x66,0x20,0x74,\n    0x68,0x65,0x20,0x64,0x65,0x62,0x75,0x67,0x5f,0x68,0x6f,0x6f,0x6b,0x29,0x2e,0x0a,\n    0x2d,0x2d,0x20,0x20,0x20,0x2a,0x20,0x54,0x68,0x65,0x20,0x44,0x4c,0x54,0x4b,0x20,\n    0x63,0x6c,0x69,0x65,0x6e,0x74,0x20,0x69,0x6d,0x70,0x6c,0x65,0x6d,0x65,0x6e,0x74,\n    0x61,0x74,0x69,0x6f,0x6e,0x20,0x64,0x6f,0x65,0x73,0x20,0x6e,0x6f,0x74,0x20,0x68,\n    0x61,0x6e,0x64,0x6c,0x65,0x20,0x63,0x6f,0x6e,0x74,0x65,0x78,0x74,0x20,0x66,0x6f,\n    0x72,0x20,0x70,0x72,0x6f,0x70,0x65,0x72,0x74,0x69,0x65,0x73,0x2e,0x20,0x41,0x73,\n    0x20,0x61,0x20,0x77,0x6f,0x72,0x6b,0x61,0x72,0x6f,0x75,0x6e,0x64,0x2c,0x20,0x74,\n    0x68,0x65,0x20,0x63,0x6f,0x6e,0x74,0x65,0x78,0x74,0x20,0x69,0x73,0x20,0x65,0x6e,\n    0x63,0x6f,0x64,0x65,0x64,0x20,0x69,0x6e,0x74,0x6f,0x20,0x74,0x68,0x65,0x0a,0x2d,\n    0x2d,0x20,0x20,0x20,0x20,0x20,0x66,0x75,0x6c,0x6c,0x6e,0x61,0x6d,0x65,0x20,0x61,\n    0x74,0x74,0x72,0x69,0x62,0x75,0x74,0x65,0x20,0x6f,0x66,0x20,0x65,0x61,0x63,0x68,\n    0x20,0x70,0x72,0x6f,0x70,0x65,0x72,0x74,0x79,0x20,0x61,0x6e,0x64,0x20,0x69,0x73,\n    0x20,0x75,0x73,0x65,0x64,0x20,0x6c,0x69,0x6b,0x65,0x77,0x69,0x73,0x65,0x20,0x69,\n    0x6e,0x20,0x70,0x72,0x6f,0x70,0x65,0x72,0x74,0x79,0x5f,0x67,0x65,0x74,0x20,0x63,\n    0x6f,0x6d,0x6d,0x61,0x6e,0x64,0x73,0x2e,0x20,0x54,0x68,0x65,0x20,0x73,0x79,0x6e,\n    0x74,0x61,0x78,0x20,0x69,0x73,0x20,0x22,0x3c,0x63,0x6f,0x6e,0x74,0x65,0x78,0x74,\n    0x20,0x49,0x44,0x3e,0x7c,0x3c,0x66,0x75,0x6c,0x6c,0x20,0x6e,0x61,0x6d,0x65,0x3e,\n    0x22,0x0a,0x2d,0x2d,0x20,0x20,0x20,0x2a,0x20,0x44,0x79,0x6e,0x61,0x6d,0x69,0x63,\n    0x20,0x63,0x6f,0x64,0x65,0x20,0x28,0x63,0x6f,0x6d,0x70,0x69,0x6c,0x65,0x64,0x20,\n    0x77,0x69,0x74,0x68,0x20,0x6c,0x6f,0x61,0x64,0x20,0x6f,0x72,0x20,0x6c,0x6f,0x61,\n    0x64,0x73,0x74,0x72,0x69,0x6e,0x67,0x29,0x20,0x69,0x73,0x20,0x6e,0x6f,0x74,0x20,\n    0x68,0x61,0x6e,0x64,0x6c,0x65,0x64,0x20,0x28,0x74,0x68,0x65,0x20,0x64,0x65,0x62,\n    0x75,0x67,0x67,0x65,0x72,0x20,0x77,0x69,0x6c,0x6c,0x20,0x73,0x74,0x65,0x70,0x20,\n    0x6f,0x76,0x65,0x72,0x20,0x69,0x74,0x2c,0x20,0x6c,0x69,0x6b,0x65,0x20,0x43,0x20,\n    0x63,0x6f,0x64,0x65,0x29,0x0a,0x2d,0x2d,0x20,0x44,0x65,0x73,0x69,0x67,0x6e,0x20,\n    0x6e,0x6f,0x74,0x65,0x73,0x3a,0x0a,0x2d,0x2d,0x20,0x20,0x20,0x2a,0x20,0x54,0x68,\n    0x65,0x20,0x77,0x68,0x6f,0x6c,0x65,0x20,0x64,0x65,0x62,0x75,0x67,0x67,0x65,0x72,\n    0x20,0x73,0x74,0x61,0x74,0x65,0x20,0x69,0x73,0x20,0x6b,0x65,0x70,0x74,0x20,0x69,\n    0x6e,0x20,0x61,0x20,0x28,0x63,0x75,0x72,0x72,0x65,0x6e,0x74,0x6c,0x79,0x29,0x20,\n    0x75,0x6e,0x69,0x71,0x75,0x65,0x20,0x73,0x65,0x73,0x73,0x69,0x6f,0x6e,0x20,0x74,\n    0x61,0x62,0x6c,0x65,0x20,0x69,0x6e,0x20,0x6f,0x72,0x64,0x65,0x72,0x20,0x74,0x6f,\n    0x20,0x65,0x61,0x73,0x65,0x20,0x65,0x76,0x65,0x6e,0x74,0x75,0x61,0x6c,0x20,0x61,\n    0x64,0x61,0x70,0x74,0x61,0x74,0x69,0x6f,0x6e,0x20,0x74,0x6f,0x20,0x61,0x20,0x6d,\n    0x75,0x6c,0x74,0x69,0x2d,0x74,0x68,0x72,0x65,0x61,0x64,0x65,0x64,0x0a,0x2d,0x2d,\n    0x20,0x20,0x20,0x20,0x20,0x6d,0x6f,0x64,0x65,0x6c,0x2c,0x20,0x61,0x73,0x20,0x44,\n    0x42,0x47,0x70,0x20,0x6e,0x65,0x65,0x64,0x73,0x20,0x6f,0x6e,0x65,0x20,0x63,0x6f,\n    0x6e,0x6e,0x65,0x63,0x74,0x69,0x6f,0x6e,0x20,0x70,0x65,0x72,0x20,0x74,0x68,0x72,\n    0x65,0x61,0x64,0x2e,0x0a,0x2d,0x2d,0x20,0x20,0x20,0x2a,0x20,0x46,0x75,0x6c,0x6c,\n    0x20,0x6e,0x61,0x6d,0x65,0x73,0x20,0x6f,0x66,0x20,0x70,0x72,0x6f,0x70,0x65,0x72,\n    0x74,0x69,0x65,0x73,0x20,0x61,0x72,0x65,0x20,0x62,0x61,0x73,0x65,0x36,0x34,0x20,\n    0x65,0x6e,0x63,0x6f,0x64,0x65,0x64,0x20,0x62,0x65,0x63,0x61,0x75,0x73,0x65,0x20,\n    0x74,0x68,0x65,0x79,0x20,0x63,0x61,0x6e,0x20,0x63,0x6f,0x6e,0x74,0x61,0x69,0x6e,\n    0x20,0x61,0x72,0x62,0x69,0x74,0x72,0x61,0x72,0x79,0x20,0x64,0x61,0x74,0x61,0x20,\n    0x28,0x73,0x70,0x61,0x63,0x65,0x73,0x2c,0x20,0x65,0x73,0x63,0x61,0x70,0x65,0x20,\n    0x63,0x68,0x61,0x72,0x61,0x63,0x74,0x65,0x72,0x73,0x2c,0x20,0x2e,0x2e,0x2e,0x29,\n    0x2c,0x20,0x74,0x68,0x69,0x73,0x20,0x6d,0x61,0x6b,0x65,0x73,0x0a,0x2d,0x2d,0x20,\n    0x20,0x20,0x20,0x20,0x63,0x6f,0x6d,0x6d,0x61,0x6e,0x64,0x20,0x70,0x61,0x72,0x73,\n    0x69,0x6e,0x67,0x20,0x6d,0x75,0x6e,0x63,0x68,0x20,0x65,0x61,0x73,0x69,0x65,0x72,\n    0x20,0x61,0x6e,0x64,0x20,0x66,0x61,0x73,0x74,0x65,0x72,0x0a,0x2d,0x2d,0x20,0x20,\n    0x20,0x2a,0x20,0x54,0x68,0x69,0x73,0x20,0x64,0x65,0x62,0x75,0x67,0x67,0x65,0x72,\n    0x20,0x73,0x75,0x70,0x70,0x6f,0x72,0x74,0x73,0x20,0x61,0x73,0x79,0x6e,0x63,0x68,\n    0x72,0x6f,0x6e,0x6f,0x75,0x73,0x20,0x63,0x6f,0x6d,0x6d,0x61,0x6e,0x64,0x73,0x3a,\n    0x20,0x61,0x6e,0x79,0x20,0x63,0x6f,0x6d,0x6d,0x61,0x6e,0x64,0x20,0x63,0x61,0x6e,\n    0x20,0x62,0x65,0x20,0x64,0x6f,0x6e,0x65,0x20,0x61,0x74,0x20,0x61,0x6e,0x79,0x20,\n    0x74,0x69,0x6d,0x65,0x2c,0x20,0x62,0x75,0x74,0x20,0x73,0x6f,0x6d,0x65,0x20,0x6f,\n    0x66,0x20,0x74,0x68,0x65,0x6d,0x20,0x28,0x63,0x6f,0x6e,0x74,0x69,0x6e,0x75,0x61,\n    0x74,0x69,0x6f,0x6e,0x73,0x29,0x20,0x63,0x61,0x6e,0x20,0x6c,0x65,0x61,0x64,0x20,\n    0x74,0x6f,0x0a,0x2d,0x2d,0x20,0x20,0x20,0x20,0x20,0x69,0x6e,0x63,0x6f,0x6e,0x73,\n    0x69,0x73,0x74,0x65,0x6e,0x74,0x20,0x73,0x74,0x61,0x74,0x65,0x73,0x2e,0x20,0x49,\n    0x6e,0x20,0x61,0x64,0x64,0x69,0x74,0x69,0x6f,0x6e,0x2c,0x20,0x74,0x68,0x69,0x73,\n    0x20,0x68,0x61,0x76,0x65,0x20,0x61,0x20,0x71,0x75,0x69,0x74,0x65,0x20,0x62,0x69,\n    0x67,0x20,0x6f,0x76,0x65,0x72,0x68,0x65,0x61,0x64,0x20,0x28,0x7e,0x36,0x36,0x25,\n    0x29,0x2c,0x20,0x69,0x66,0x20,0x70,0x65,0x72,0x66,0x6f,0x72,0x6d,0x61,0x6e,0x63,\n    0x65,0x20,0x69,0x73,0x20,0x61,0x6e,0x20,0x69,0x73,0x73,0x75,0x65,0x2c,0x20,0x61,\n    0x20,0x63,0x75,0x73,0x74,0x6f,0x6d,0x20,0x63,0x6f,0x6d,0x6d,0x61,0x6e,0x64,0x20,\n    0x74,0x6f,0x20,0x64,0x69,0x73,0x61,0x62,0x6c,0x65,0x0a,0x2d,0x2d,0x20,0x20,0x20,\n    0x20,0x20,0x61,0x73,0x79,0x6e,0x63,0x20,0x6d,0x6f,0x64,0x65,0x20,0x63,0x6f,0x75,\n    0x6c,0x64,0x20,0x62,0x65,0x20,0x64,0x6f,0x6e,0x65,0x2e,0x0a,0x2d,0x2d,0x20,0x20,\n    0x20,0x2a,0x20,0x41,0x6c,0x6c,0x20,0x63,0x6f,0x6d,0x6d,0x61,0x6e,0x64,0x73,0x20,\n    0x61,0x72,0x65,0x20,0x69,0x6d,0x70,0x6c,0x65,0x6d,0x65,0x6e,0x74,0x65,0x64,0x20,\n    0x69,0x6e,0x20,0x74,0x61,0x62,0x6c,0x65,0x20,0x63,0x6f,0x6d,0x6d,0x61,0x6e,0x64,\n    0x73,0x2c,0x20,0x73,0x65,0x65,0x20,0x74,0x68,0x69,0x73,0x20,0x63,0x6f,0x6d,0x6d,\n    0x65,0x6e,0x74,0x73,0x20,0x6f,0x6e,0x20,0x74,0x68,0x69,0x73,0x20,0x74,0x61,0x62,\n    0x6c,0x65,0x20,0x74,0x6f,0x20,0x61,0x64,0x64,0x69,0x74,0x69,0x6f,0x6e,0x61,0x6c,\n    0x20,0x64,0x65,0x74,0x61,0x69,0x6c,0x73,0x20,0x61,0x62,0x6f,0x75,0x74,0x20,0x63,\n    0x6f,0x6d,0x6d,0x61,0x6e,0x64,0x73,0x20,0x69,0x6d,0x70,0x6c,0x65,0x6d,0x65,0x6e,\n    0x74,0x61,0x74,0x69,0x6f,0x6e,0x0a,0x2d,0x2d,0x20,0x20,0x20,0x2a,0x20,0x54,0x68,\n    0x65,0x20,0x65,0x6e,0x76,0x69,0x72,0x6f,0x6e,0x6d,0x65,0x6e,0x74,0x73,0x20,0x69,\n    0x6e,0x20,0x77,0x68,0x69,0x63,0x68,0x20,0x61,0x72,0x65,0x20,0x65,0x76,0x61,0x6c,\n    0x75,0x61,0x74,0x65,0x64,0x20,0x75,0x73,0x65,0x72,0x20,0x63,0x6f,0x64,0x65,0x20,\n    0x28,0x70,0x72,0x6f,0x70,0x65,0x72,0x74,0x79,0x5f,0x2a,0x20,0x61,0x6e,0x64,0x20,\n    0x65,0x76,0x61,0x6c,0x20,0x63,0x6f,0x6d,0x6d,0x61,0x6e,0x64,0x73,0x2c,0x20,0x63,\n    0x6f,0x6e,0x64,0x69,0x74,0x69,0x6f,0x6e,0x61,0x6c,0x20,0x62,0x72,0x65,0x61,0x6b,\n    0x70,0x6f,0x69,0x6e,0x74,0x73,0x2c,0x20,0x2e,0x2e,0x2e,0x29,0x20,0x69,0x73,0x20,\n    0x61,0x20,0x72,0x65,0x61,0x64,0x2f,0x77,0x72,0x69,0x74,0x65,0x0a,0x2d,0x2d,0x20,\n    0x20,0x20,0x20,0x20,0x6d,0x61,0x70,0x70,0x69,0x6e,0x67,0x20,0x6f,0x66,0x20,0x74,\n    0x68,0x65,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x65,0x6e,0x76,0x69,0x72,0x6f,0x6e,\n    0x6d,0x65,0x6e,0x74,0x20,0x6f,0x66,0x20,0x61,0x20,0x67,0x69,0x76,0x65,0x6e,0x20,\n    0x73,0x74,0x61,0x63,0x6b,0x20,0x6c,0x65,0x76,0x65,0x6c,0x20,0x28,0x63,0x61,0x6e,\n    0x20,0x62,0x65,0x20,0x61,0x63,0x63,0x65,0x73,0x73,0x65,0x64,0x20,0x77,0x69,0x74,\n    0x68,0x20,0x76,0x61,0x72,0x69,0x61,0x62,0x6c,0x65,0x20,0x6e,0x61,0x6d,0x65,0x73,\n    0x29,0x2e,0x20,0x53,0x65,0x65,0x20,0x43,0x6f,0x6e,0x74,0x65,0x78,0x74,0x20,0x66,\n    0x6f,0x72,0x20,0x61,0x64,0x64,0x69,0x74,0x69,0x6f,0x6e,0x61,0x6c,0x20,0x64,0x65,\n    0x74,0x61,0x69,0x6c,0x73,0x2e,0x0a,0x2d,0x2d,0x20,0x20,0x20,0x20,0x20,0x43,0x6f,\n    0x6e,0x74,0x65,0x78,0x74,0x20,0x69,0x6e,0x73,0x74,0x61,0x6e,0x74,0x69,0x61,0x74,\n    0x69,0x6f,0x6e,0x20,0x69,0x73,0x20,0x70,0x6f,0x6f,0x6c,0x65,0x64,0x20,0x69,0x6e,\n    0x73,0x69,0x64,0x65,0x20,0x61,0x20,0x64,0x65,0x62,0x75,0x67,0x67,0x69,0x6e,0x67,\n    0x20,0x6c,0x6f,0x6f,0x70,0x20,0x77,0x69,0x74,0x68,0x20,0x43,0x6f,0x6e,0x74,0x65,\n    0x78,0x74,0x4d,0x61,0x6e,0x61,0x67,0x65,0x72,0x20,0x28,0x65,0x61,0x63,0x68,0x20,\n    0x73,0x74,0x61,0x63,0x6b,0x20,0x6c,0x65,0x76,0x65,0x6c,0x20,0x69,0x73,0x20,0x69,\n    0x6e,0x73,0x74,0x61,0x6e,0x74,0x69,0x61,0x74,0x65,0x64,0x20,0x6f,0x6e,0x6c,0x79,\n    0x20,0x6f,0x6e,0x63,0x65,0x29,0x2e,0x0a,0x2d,0x2d,0x20,0x20,0x20,0x2a,0x20,0x4f,\n    0x75,0x74,0x70,0x75,0x74,0x20,0x72,0x65,0x64,0x69,0x72,0x65,0x63,0x74,0x69,0x6f,\n    0x6e,0x20,0x69,0x73,0x20,0x64,0x6f,0x6e,0x65,0x20,0x62,0x79,0x20,0x72,0x65,0x64,\n    0x65,0x66,0x69,0x6e,0x69,0x6e,0x67,0x20,0x70,0x72,0x69,0x6e,0x74,0x20,0x61,0x6e,\n    0x64,0x20,0x73,0x6f,0x6d,0x65,0x20,0x76,0x61,0x6c,0x75,0x65,0x73,0x20,0x69,0x6e,\n    0x73,0x69,0x64,0x65,0x20,0x74,0x68,0x65,0x20,0x69,0x6f,0x20,0x74,0x61,0x62,0x6c,\n    0x65,0x2e,0x20,0x53,0x65,0x65,0x20,0x22,0x4f,0x75,0x74,0x70,0x75,0x74,0x20,0x72,\n    0x65,0x64,0x69,0x72,0x65,0x63,0x74,0x69,0x6f,0x6e,0x20,0x68,0x61,0x6e,0x64,0x6c,\n    0x69,0x6e,0x67,0x22,0x20,0x66,0x6f,0x72,0x20,0x64,0x65,0x74,0x61,0x69,0x6c,0x73,\n    0x2e,0x0a,0x2d,0x2d,0x20,0x54,0x6f,0x64,0x6f,0x20,0x6c,0x69,0x73,0x74,0x3a,0x0a,\n    0x2d,0x2d,0x20,0x20,0x20,0x2a,0x20,0x4f,0x76,0x65,0x72,0x72,0x69,0x64,0x65,0x20,\n    0x49,0x2f,0x4f,0x20,0x69,0x6e,0x20,0x69,0x6e,0x69,0x74,0x20,0x66,0x75,0x6e,0x63,\n    0x74,0x69,0x6f,0x6e,0x20,0x69,0x6e,0x73,0x74,0x65,0x61,0x64,0x20,0x6f,0x66,0x20,\n    0x6f,0x6e,0x20,0x6d,0x6f,0x64,0x75,0x6c,0x65,0x20,0x6c,0x6f,0x61,0x64,0x69,0x6e,\n    0x67,0x2e,0x0a,0x2d,0x2d,0x20,0x20,0x20,0x2a,0x20,0x41,0x6c,0x6c,0x6f,0x77,0x20,\n    0x74,0x6f,0x20,0x62,0x72,0x65,0x61,0x6b,0x20,0x70,0x72,0x6f,0x67,0x72,0x61,0x6d,\n    0x61,0x74,0x69,0x63,0x61,0x6c,0x6c,0x79,0x20,0x28,0x64,0x65,0x62,0x75,0x67,0x67,\n    0x65,0x72,0x2e,0x62,0x72,0x65,0x61,0x6b,0x28,0x29,0x29,0x2e,0x0a,0x2d,0x2d,0x20,\n    0x20,0x20,0x2a,0x20,0x42,0x72,0x65,0x61,0x6b,0x2d,0x6f,0x6e,0x2d,0x65,0x72,0x72,\n    0x6f,0x72,0x20,0x66,0x65,0x61,0x74,0x75,0x72,0x65,0x20,0x28,0x62,0x72,0x65,0x61,\n    0x6b,0x20,0x69,0x66,0x20,0x61,0x6e,0x20,0x65,0x72,0x72,0x6f,0x72,0x20,0x69,0x73,\n    0x20,0x74,0x68,0x72,0x6f,0x77,0x6e,0x20,0x61,0x6e,0x64,0x20,0x74,0x68,0x65,0x72,\n    0x65,0x20,0x69,0x73,0x20,0x6e,0x6f,0x20,0x70,0x63,0x61,0x6c,0x6c,0x20,0x69,0x6e,\n    0x20,0x73,0x74,0x61,0x63,0x6b,0x20,0x74,0x6f,0x20,0x68,0x61,0x6e,0x64,0x6c,0x65,\n    0x20,0x69,0x74,0x29,0x2e,0x0a,0x2d,0x2d,0x20,0x20,0x20,0x2a,0x20,0x55,0x73,0x65,\n    0x20,0x6e,0x65,0x77,0x20,0x35,0x2e,0x32,0x20,0x66,0x61,0x63,0x69,0x6c,0x69,0x74,\n    0x69,0x65,0x73,0x20,0x74,0x6f,0x20,0x70,0x72,0x6f,0x76,0x69,0x64,0x65,0x20,0x69,\n    0x6e,0x66,0x6f,0x72,0x6d,0x61,0x74,0x69,0x6f,0x6e,0x73,0x20,0x61,0x62,0x6f,0x75,\n    0x74,0x20,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x20,0x28,0x61,0x72,0x67,0x75,\n    0x6d,0x65,0x6e,0x74,0x73,0x20,0x6e,0x61,0x6d,0x65,0x73,0x2c,0x20,0x76,0x61,0x72,\n    0x61,0x72,0x67,0x2c,0x20,0x2e,0x2e,0x2e,0x29,0x0a,0x2d,0x2d,0x20,0x20,0x20,0x2a,\n    0x20,0x41,0x6c,0x6c,0x6f,0x77,0x20,0x74,0x6f,0x20,0x73,0x65,0x65,0x20,0x2e,0x2e,\n    0x2e,0x20,0x63,0x6f,0x6e,0x74,0x65,0x6e,0x74,0x20,0x66,0x6f,0x72,0x20,0x76,0x61,\n    0x72,0x61,0x72,0x67,0x20,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x73,0x20,0x28,\n    0x35,0x2e,0x32,0x20,0x6f,0x6e,0x6c,0x79,0x29,0x0a,0x2d,0x2d,0x20,0x20,0x20,0x2a,\n    0x20,0x49,0x6e,0x73,0x70,0x65,0x63,0x74,0x20,0x4c,0x75,0x61,0x4a,0x49,0x54,0x20,\n    0x43,0x20,0x64,0x61,0x74,0x61,0x20,0x28,0x68,0x74,0x74,0x70,0x3a,0x2f,0x2f,0x6c,\n    0x75,0x61,0x2d,0x75,0x73,0x65,0x72,0x73,0x2e,0x6f,0x72,0x67,0x2f,0x6c,0x69,0x73,\n    0x74,0x73,0x2f,0x6c,0x75,0x61,0x2d,0x6c,0x2f,0x32,0x30,0x31,0x31,0x2d,0x30,0x32,\n    0x2f,0x6d,0x73,0x67,0x30,0x31,0x30,0x31,0x32,0x2e,0x68,0x74,0x6d,0x6c,0x29,0x2d,\n    0x2d,0x20,0x2f,0x21,0x5c,0x20,0x54,0x68,0x69,0x73,0x20,0x66,0x69,0x6c,0x65,0x20,\n    0x69,0x73,0x20,0x61,0x75,0x74,0x6f,0x2d,0x67,0x65,0x6e,0x65,0x72,0x61,0x74,0x65,\n    0x64,0x2e,0x20,0x44,0x6f,0x20,0x6e,0x6f,0x74,0x20,0x61,0x6c,0x74,0x65,0x72,0x20,\n    0x6d,0x61,0x6e,0x75,0x61,0x6c,0x6c,0x79,0x20,0x2f,0x21,0x5c,0x0a,0x0a,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x0a,0x2d,\n    0x2d,0x20,0x20,0x53,0x75,0x62,0x6d,0x6f,0x64,0x75,0x6c,0x65,0x73,0x20,0x62,0x6f,\n    0x64,0x79,0x0a,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x0a,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x0a,0x2d,0x2d,0x20,0x20,0x4d,0x6f,0x64,0x75,0x6c,0x65,0x20,\n    0x64,0x65,0x62,0x75,0x67,0x67,0x65,0x72,0x2e,0x74,0x72,0x61,0x6e,0x73,0x70,0x6f,\n    0x72,0x74,0x2e,0x61,0x70,0x72,0x0a,0x70,0x61,0x63,0x6b,0x61,0x67,0x65,0x2e,0x70,\n    0x72,0x65,0x6c,0x6f,0x61,0x64,0x5b,0x22,0x64,0x65,0x62,0x75,0x67,0x67,0x65,0x72,\n    0x2e,0x74,0x72,0x61,0x6e,0x73,0x70,0x6f,0x72,0x74,0x2e,0x61,0x70,0x72,0x22,0x5d,\n    0x20,0x3d,0x20,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x28,0x2e,0x2e,0x2e,0x29,\n    0x0a,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x0a,0x2d,0x2d,0x20,0x43,0x6f,0x70,0x79,0x72,0x69,0x67,0x68,0x74,0x20,0x28,0x63,\n    0x29,0x20,0x32,0x30,0x31,0x31,0x2d,0x32,0x30,0x31,0x32,0x20,0x53,0x69,0x65,0x72,\n    0x72,0x61,0x20,0x57,0x69,0x72,0x65,0x6c,0x65,0x73,0x73,0x20,0x61,0x6e,0x64,0x20,\n    0x6f,0x74,0x68,0x65,0x72,0x73,0x2e,0x0a,0x2d,0x2d,0x20,0x41,0x6c,0x6c,0x20,0x72,\n    0x69,0x67,0x68,0x74,0x73,0x20,0x72,0x65,0x73,0x65,0x72,0x76,0x65,0x64,0x2e,0x20,\n    0x54,0x68,0x69,0x73,0x20,0x70,0x72,0x6f,0x67,0x72,0x61,0x6d,0x20,0x61,0x6e,0x64,\n    0x20,0x74,0x68,0x65,0x20,0x61,0x63,0x63,0x6f,0x6d,0x70,0x61,0x6e,0x79,0x69,0x6e,\n    0x67,0x20,0x6d,0x61,0x74,0x65,0x72,0x69,0x61,0x6c,0x73,0x0a,0x2d,0x2d,0x20,0x61,\n    0x72,0x65,0x20,0x6d,0x61,0x64,0x65,0x20,0x61,0x76,0x61,0x69,0x6c,0x61,0x62,0x6c,\n    0x65,0x20,0x75,0x6e,0x64,0x65,0x72,0x20,0x74,0x68,0x65,0x20,0x74,0x65,0x72,0x6d,\n    0x73,0x20,0x6f,0x66,0x20,0x74,0x68,0x65,0x20,0x45,0x63,0x6c,0x69,0x70,0x73,0x65,\n    0x20,0x50,0x75,0x62,0x6c,0x69,0x63,0x20,0x4c,0x69,0x63,0x65,0x6e,0x73,0x65,0x20,\n    0x76,0x31,0x2e,0x30,0x0a,0x2d,0x2d,0x20,0x77,0x68,0x69,0x63,0x68,0x20,0x61,0x63,\n    0x63,0x6f,0x6d,0x70,0x61,0x6e,0x69,0x65,0x73,0x20,0x74,0x68,0x69,0x73,0x20,0x64,\n    0x69,0x73,0x74,0x72,0x69,0x62,0x75,0x74,0x69,0x6f,0x6e,0x2c,0x20,0x61,0x6e,0x64,\n    0x20,0x69,0x73,0x20,0x61,0x76,0x61,0x69,0x6c,0x61,0x62,0x6c,0x65,0x20,0x61,0x74,\n    0x0a,0x2d,0x2d,0x20,0x68,0x74,0x74,0x70,0x3a,0x2f,0x2f,0x77,0x77,0x77,0x2e,0x65,\n    0x63,0x6c,0x69,0x70,0x73,0x65,0x2e,0x6f,0x72,0x67,0x2f,0x6c,0x65,0x67,0x61,0x6c,\n    0x2f,0x65,0x70,0x6c,0x2d,0x76,0x31,0x30,0x2e,0x68,0x74,0x6d,0x6c,0x0a,0x2d,0x2d,\n    0x0a,0x2d,0x2d,0x20,0x43,0x6f,0x6e,0x74,0x72,0x69,0x62,0x75,0x74,0x6f,0x72,0x73,\n    0x3a,0x0a,0x2d,0x2d,0x20,0x20,0x20,0x20,0x20,0x53,0x69,0x65,0x72,0x72,0x61,0x20,\n    0x57,0x69,0x72,0x65,0x6c,0x65,0x73,0x73,0x20,0x2d,0x20,0x69,0x6e,0x69,0x74,0x69,\n    0x61,0x6c,0x20,0x41,0x50,0x49,0x20,0x61,0x6e,0x64,0x20,0x69,0x6d,0x70,0x6c,0x65,\n    0x6d,0x65,0x6e,0x74,0x61,0x74,0x69,0x6f,0x6e,0x0a,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x0a,0x2d,0x2d,0x20,0x41,0x70,0x61,\n    0x63,0x68,0x65,0x20,0x50,0x6f,0x72,0x74,0x61,0x62,0x6c,0x65,0x20,0x52,0x75,0x6e,\n    0x74,0x69,0x6d,0x65,0x20,0x62,0x61,0x63,0x6b,0x65,0x6e,0x64,0x20,0x66,0x6f,0x72,\n    0x20,0x44,0x42,0x47,0x50,0x20,0x64,0x65,0x62,0x75,0x67,0x67,0x65,0x72,0x2e,0x0a,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x0a,\n    0x0a,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x61,0x70,0x72,0x20,0x3d,0x20,0x72,0x65,0x71,\n    0x75,0x69,0x72,0x65,0x20,0x22,0x61,0x70,0x72,0x22,0x0a,0x0a,0x2d,0x2d,0x20,0x62,\n    0x61,0x73,0x65,0x20,0x36,0x34,0x20,0x77,0x72,0x61,0x70,0x70,0x69,0x6e,0x67,0x0a,\n    0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x20,0x62,0x36,0x34,0x5f,0x77,0x72,0x61,\n    0x70,0x28,0x73,0x72,0x63,0x29,0x0a,0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x74,\n    0x20,0x3d,0x20,0x7b,0x7d,0x0a,0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x62,0x36,\n    0x34,0x5f,0x73,0x72,0x63,0x20,0x3d,0x20,0x6d,0x69,0x6d,0x65,0x2e,0x62,0x36,0x34,\n    0x28,0x73,0x72,0x63,0x29,0x0a,0x20,0x20,0x66,0x6f,0x72,0x20,0x69,0x3d,0x31,0x2c,\n    0x20,0x23,0x62,0x36,0x34,0x5f,0x73,0x72,0x63,0x2c,0x20,0x37,0x36,0x20,0x64,0x6f,\n    0x20,0x74,0x5b,0x23,0x74,0x2b,0x31,0x5d,0x20,0x3d,0x20,0x62,0x36,0x34,0x5f,0x73,\n    0x72,0x63,0x3a,0x73,0x75,0x62,0x28,0x69,0x2c,0x20,0x69,0x2b,0x37,0x35,0x29,0x2e,\n    0x2e,0x22,0x5c,0x72,0x5c,0x6e,0x22,0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,0x72,0x65,\n    0x74,0x75,0x72,0x6e,0x20,0x74,0x61,0x62,0x6c,0x65,0x2e,0x63,0x6f,0x6e,0x63,0x61,\n    0x74,0x28,0x74,0x29,0x0a,0x65,0x6e,0x64,0x0a,0x0a,0x2d,0x2d,0x20,0x69,0x6d,0x70,\n    0x6c,0x65,0x6d,0x65,0x6e,0x74,0x73,0x20,0x61,0x20,0x73,0x75,0x62,0x73,0x65,0x74,\n    0x20,0x6f,0x66,0x20,0x4c,0x75,0x61,0x53,0x6f,0x63,0x6b,0x65,0x74,0x20,0x41,0x50,\n    0x49,0x20,0x75,0x73,0x69,0x6e,0x67,0x20,0x41,0x50,0x52,0x0a,0x6c,0x6f,0x63,0x61,\n    0x6c,0x20,0x53,0x4f,0x43,0x4b,0x45,0x54,0x5f,0x4d,0x54,0x20,0x3d,0x20,0x7b,0x0a,\n    0x20,0x20,0x63,0x6f,0x6e,0x6e,0x65,0x63,0x74,0x20,0x3d,0x20,0x66,0x75,0x6e,0x63,\n    0x74,0x69,0x6f,0x6e,0x28,0x73,0x65,0x6c,0x66,0x2c,0x20,0x61,0x64,0x64,0x72,0x65,\n    0x73,0x73,0x2c,0x20,0x70,0x6f,0x72,0x74,0x29,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,\n    0x20,0x73,0x65,0x6c,0x66,0x2e,0x73,0x6b,0x74,0x3a,0x63,0x6f,0x6e,0x6e,0x65,0x63,\n    0x74,0x28,0x61,0x64,0x64,0x72,0x65,0x73,0x73,0x2c,0x20,0x70,0x6f,0x72,0x74,0x29,\n    0x20,0x65,0x6e,0x64,0x2c,0x0a,0x20,0x20,0x72,0x65,0x63,0x65,0x69,0x76,0x65,0x20,\n    0x3d,0x20,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x28,0x73,0x65,0x6c,0x66,0x2c,\n    0x20,0x6e,0x29,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x73,0x65,0x6c,0x66,0x2e,0x73,0x6b,0x74,0x3a,\n    0x72,0x65,0x61,0x64,0x28,0x6e,0x29,0x20,0x65,0x6e,0x64,0x2c,0x20,0x2d,0x2d,0x20,\n    0x6f,0x6e,0x6c,0x79,0x20,0x6e,0x75,0x6d,0x65,0x72,0x69,0x63,0x20,0x72,0x65,0x61,\n    0x64,0x20,0x69,0x73,0x20,0x75,0x73,0x65,0x64,0x0a,0x20,0x20,0x73,0x65,0x6e,0x64,\n    0x20,0x20,0x20,0x20,0x3d,0x20,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x28,0x73,\n    0x65,0x6c,0x66,0x2c,0x20,0x64,0x61,0x74,0x61,0x29,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x73,0x65,0x6c,0x66,0x2e,\n    0x73,0x6b,0x74,0x3a,0x77,0x72,0x69,0x74,0x65,0x28,0x64,0x61,0x74,0x61,0x29,0x20,\n    0x65,0x6e,0x64,0x2c,0x0a,0x20,0x20,0x63,0x6c,0x6f,0x73,0x65,0x20,0x20,0x20,0x3d,\n    0x20,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x28,0x73,0x65,0x6c,0x66,0x29,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x72,\n    0x65,0x74,0x75,0x72,0x6e,0x20,0x73,0x65,0x6c,0x66,0x2e,0x73,0x6b,0x74,0x3a,0x63,\n    0x6c,0x6f,0x73,0x65,0x28,0x29,0x20,0x65,0x6e,0x64,0x2c,0x0a,0x20,0x20,0x73,0x65,\n    0x74,0x74,0x69,0x6d,0x65,0x6f,0x75,0x74,0x20,0x3d,0x20,0x66,0x75,0x6e,0x63,0x74,\n    0x69,0x6f,0x6e,0x28,0x73,0x65,0x6c,0x66,0x2c,0x20,0x73,0x65,0x63,0x29,0x0a,0x20,\n    0x20,0x20,0x20,0x69,0x66,0x20,0x20,0x20,0x20,0x20,0x73,0x65,0x63,0x20,0x3d,0x3d,\n    0x20,0x6e,0x69,0x6c,0x20,0x74,0x68,0x65,0x6e,0x20,0x73,0x65,0x6c,0x66,0x2e,0x73,\n    0x6b,0x74,0x3a,0x74,0x69,0x6d,0x65,0x6f,0x75,0x74,0x5f,0x73,0x65,0x74,0x28,0x74,\n    0x72,0x75,0x65,0x29,0x0a,0x20,0x20,0x20,0x20,0x65,0x6c,0x73,0x65,0x69,0x66,0x20,\n    0x73,0x65,0x63,0x20,0x3d,0x3d,0x20,0x30,0x20,0x20,0x20,0x74,0x68,0x65,0x6e,0x20,\n    0x73,0x65,0x6c,0x66,0x2e,0x73,0x6b,0x74,0x3a,0x74,0x69,0x6d,0x65,0x6f,0x75,0x74,\n    0x5f,0x73,0x65,0x74,0x28,0x66,0x61,0x6c,0x73,0x65,0x29,0x0a,0x20,0x20,0x20,0x20,\n    0x65,0x6c,0x73,0x65,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x73,0x65,0x6c,0x66,0x2e,0x73,0x6b,0x74,0x3a,\n    0x74,0x69,0x6d,0x65,0x6f,0x75,0x74,0x5f,0x73,0x65,0x74,0x28,0x6d,0x61,0x74,0x68,\n    0x2e,0x66,0x6c,0x6f,0x6f,0x72,0x28,0x73,0x65,0x63,0x20,0x2a,0x20,0x31,0x30,0x30,\n    0x30,0x30,0x30,0x30,0x29,0x29,0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,0x65,0x6e,0x64,\n    0x0a,0x7d,0x0a,0x53,0x4f,0x43,0x4b,0x45,0x54,0x5f,0x4d,0x54,0x2e,0x5f,0x5f,0x69,\n    0x6e,0x64,0x65,0x78,0x20,0x3d,0x20,0x53,0x4f,0x43,0x4b,0x45,0x54,0x5f,0x4d,0x54,\n    0x0a,0x0a,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x7b,0x0a,0x20,0x20,0x20,0x20,0x63,\n    0x72,0x65,0x61,0x74,0x65,0x20,0x3d,0x20,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,\n    0x28,0x29,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x73,\n    0x6b,0x74,0x2c,0x20,0x65,0x72,0x72,0x20,0x3d,0x20,0x61,0x70,0x72,0x2e,0x73,0x6f,\n    0x63,0x6b,0x65,0x74,0x5f,0x63,0x72,0x65,0x61,0x74,0x65,0x28,0x27,0x74,0x63,0x70,\n    0x27,0x29,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x69,0x66,0x20,0x6e,0x6f,0x74,0x20,\n    0x73,0x6b,0x74,0x20,0x74,0x68,0x65,0x6e,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,\n    0x6e,0x69,0x6c,0x2c,0x20,0x65,0x72,0x72,0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x73,0x65,0x74,0x6d,0x65,0x74,\n    0x61,0x74,0x61,0x62,0x6c,0x65,0x28,0x7b,0x73,0x6b,0x74,0x20,0x3d,0x20,0x73,0x6b,\n    0x74,0x7d,0x2c,0x20,0x53,0x4f,0x43,0x4b,0x45,0x54,0x5f,0x4d,0x54,0x29,0x0a,0x20,\n    0x20,0x20,0x20,0x65,0x6e,0x64,0x2c,0x0a,0x20,0x20,0x20,0x20,0x73,0x6c,0x65,0x65,\n    0x70,0x20,0x20,0x20,0x20,0x20,0x20,0x3d,0x20,0x61,0x70,0x72,0x2e,0x73,0x6c,0x65,\n    0x65,0x70,0x2c,0x20,0x2d,0x2d,0x20,0x65,0x78,0x61,0x63,0x74,0x20,0x73,0x61,0x6d,\n    0x65,0x20,0x41,0x50,0x49,0x20,0x61,0x73,0x20,0x4c,0x75,0x61,0x53,0x6f,0x63,0x6b,\n    0x65,0x74,0x0a,0x0a,0x20,0x20,0x20,0x20,0x2d,0x2d,0x20,0x42,0x61,0x73,0x65,0x36,\n    0x34,0x20,0x72,0x65,0x6c,0x61,0x74,0x65,0x64,0x20,0x66,0x75,0x6e,0x63,0x74,0x69,\n    0x6f,0x6e,0x73,0x0a,0x20,0x20,0x20,0x20,0x2d,0x2d,0x2d,0x20,0x45,0x6e,0x63,0x6f,\n    0x64,0x65,0x73,0x20,0x61,0x20,0x73,0x74,0x72,0x69,0x6e,0x67,0x20,0x69,0x6e,0x74,\n    0x6f,0x20,0x42,0x61,0x73,0x65,0x36,0x34,0x20,0x77,0x69,0x74,0x68,0x20,0x6c,0x69,\n    0x6e,0x65,0x20,0x77,0x72,0x61,0x70,0x70,0x69,0x6e,0x67,0x0a,0x20,0x20,0x20,0x20,\n    0x2d,0x2d,0x20,0x40,0x70,0x61,0x72,0x61,0x6d,0x20,0x64,0x61,0x74,0x61,0x20,0x28,\n    0x73,0x74,0x72,0x69,0x6e,0x67,0x29,0x20,0x64,0x61,0x74,0x61,0x20,0x74,0x6f,0x20,\n    0x65,0x6e,0x63,0x6f,0x64,0x65,0x0a,0x20,0x20,0x20,0x20,0x2d,0x2d,0x20,0x40,0x72,\n    0x65,0x74,0x75,0x72,0x6e,0x20,0x62,0x61,0x73,0x65,0x36,0x34,0x20,0x65,0x6e,0x63,\n    0x6f,0x64,0x65,0x64,0x20,0x73,0x74,0x72,0x69,0x6e,0x67,0x0a,0x20,0x20,0x20,0x20,\n    0x62,0x36,0x34,0x20,0x3d,0x20,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x28,0x64,\n    0x61,0x74,0x61,0x29,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x74,0x20,0x3d,\n    0x20,0x7b,0x7d,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,0x61,\n    0x6c,0x20,0x62,0x36,0x34,0x5f,0x64,0x61,0x74,0x61,0x20,0x3d,0x20,0x61,0x70,0x72,\n    0x2e,0x62,0x61,0x73,0x65,0x36,0x34,0x5f,0x65,0x6e,0x63,0x6f,0x64,0x65,0x28,0x64,\n    0x61,0x74,0x61,0x29,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x66,0x6f,0x72,\n    0x20,0x69,0x3d,0x31,0x2c,0x20,0x23,0x62,0x36,0x34,0x5f,0x64,0x61,0x74,0x61,0x2c,\n    0x20,0x37,0x36,0x20,0x64,0x6f,0x20,0x74,0x5b,0x23,0x74,0x2b,0x31,0x5d,0x20,0x3d,\n    0x20,0x62,0x36,0x34,0x5f,0x64,0x61,0x74,0x61,0x3a,0x73,0x75,0x62,0x28,0x69,0x2c,\n    0x20,0x69,0x2b,0x37,0x35,0x29,0x2e,0x2e,0x22,0x5c,0x72,0x5c,0x6e,0x22,0x20,0x65,\n    0x6e,0x64,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x72,0x65,0x74,0x75,0x72,\n    0x6e,0x20,0x74,0x61,0x62,0x6c,0x65,0x2e,0x63,0x6f,0x6e,0x63,0x61,0x74,0x28,0x74,\n    0x29,0x0a,0x20,0x20,0x20,0x20,0x65,0x6e,0x64,0x2c,0x0a,0x0a,0x20,0x20,0x20,0x20,\n    0x2d,0x2d,0x2d,0x20,0x45,0x6e,0x63,0x6f,0x64,0x65,0x73,0x20,0x61,0x20,0x73,0x74,\n    0x72,0x69,0x6e,0x67,0x20,0x69,0x6e,0x74,0x6f,0x20,0x42,0x61,0x73,0x65,0x36,0x34,\n    0x2c,0x20,0x77,0x69,0x74,0x68,0x6f,0x75,0x74,0x20,0x61,0x6e,0x79,0x20,0x65,0x78,\n    0x74,0x72,0x61,0x20,0x70,0x61,0x72,0x73,0x69,0x6e,0x67,0x20,0x28,0x77,0x72,0x61,\n    0x70,0x70,0x69,0x6e,0x67,0x2c,0x20,0x2e,0x2e,0x2e,0x29,0x0a,0x20,0x20,0x20,0x20,\n    0x2d,0x2d,0x20,0x40,0x70,0x61,0x72,0x61,0x6d,0x20,0x64,0x61,0x74,0x61,0x20,0x28,\n    0x73,0x74,0x72,0x69,0x6e,0x67,0x29,0x20,0x64,0x61,0x74,0x61,0x20,0x74,0x6f,0x20,\n    0x65,0x6e,0x63,0x6f,0x64,0x65,0x0a,0x20,0x20,0x20,0x20,0x2d,0x2d,0x20,0x40,0x72,\n    0x65,0x74,0x75,0x72,0x6e,0x20,0x64,0x65,0x63,0x6f,0x64,0x65,0x64,0x20,0x73,0x74,\n    0x72,0x69,0x6e,0x67,0x0a,0x20,0x20,0x20,0x20,0x72,0x61,0x77,0x62,0x36,0x34,0x20,\n    0x3d,0x20,0x61,0x70,0x72,0x2e,0x62,0x61,0x73,0x65,0x36,0x34,0x5f,0x65,0x6e,0x63,\n    0x6f,0x64,0x65,0x2c,0x0a,0x0a,0x20,0x20,0x20,0x20,0x2d,0x2d,0x2d,0x20,0x44,0x65,\n    0x63,0x6f,0x64,0x65,0x73,0x20,0x62,0x61,0x73,0x65,0x36,0x34,0x20,0x64,0x61,0x74,\n    0x61,0x0a,0x20,0x20,0x20,0x20,0x2d,0x2d,0x20,0x40,0x70,0x61,0x72,0x61,0x6d,0x20,\n    0x64,0x61,0x74,0x61,0x20,0x28,0x73,0x74,0x72,0x69,0x6e,0x67,0x29,0x20,0x62,0x61,\n    0x73,0x65,0x36,0x34,0x20,0x65,0x6e,0x63,0x6f,0x64,0x65,0x64,0x20,0x64,0x61,0x74,\n    0x61,0x0a,0x20,0x20,0x20,0x20,0x2d,0x2d,0x20,0x40,0x72,0x65,0x74,0x75,0x72,0x6e,\n    0x20,0x64,0x65,0x63,0x6f,0x64,0x65,0x64,0x20,0x73,0x74,0x72,0x69,0x6e,0x67,0x0a,\n    0x20,0x20,0x20,0x20,0x75,0x6e,0x62,0x36,0x34,0x20,0x3d,0x20,0x61,0x70,0x72,0x2e,\n    0x62,0x61,0x73,0x65,0x36,0x34,0x5f,0x64,0x65,0x63,0x6f,0x64,0x65,0x2c,0x0a,0x7d,\n    0x0a,0x0a,0x65,0x6e,0x64,0x0a,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x0a,0x2d,0x2d,0x20,0x45,0x6e,0x64,0x20,0x6f,0x66,\n    0x20,0x6d,0x6f,0x64,0x75,0x6c,0x65,0x64,0x65,0x62,0x75,0x67,0x67,0x65,0x72,0x2e,\n    0x74,0x72,0x61,0x6e,0x73,0x70,0x6f,0x72,0x74,0x2e,0x61,0x70,0x72,0x0a,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x0a,0x0a,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x0a,0x2d,0x2d,0x20,0x20,0x4d,0x6f,0x64,0x75,0x6c,0x65,0x20,0x64,0x65,0x62,0x75,\n    0x67,0x67,0x65,0x72,0x2e,0x74,0x72,0x61,0x6e,0x73,0x70,0x6f,0x72,0x74,0x2e,0x6c,\n    0x75,0x61,0x73,0x6f,0x63,0x6b,0x65,0x74,0x0a,0x70,0x61,0x63,0x6b,0x61,0x67,0x65,\n    0x2e,0x70,0x72,0x65,0x6c,0x6f,0x61,0x64,0x5b,0x22,0x64,0x65,0x62,0x75,0x67,0x67,\n    0x65,0x72,0x2e,0x74,0x72,0x61,0x6e,0x73,0x70,0x6f,0x72,0x74,0x2e,0x6c,0x75,0x61,\n    0x73,0x6f,0x63,0x6b,0x65,0x74,0x22,0x5d,0x20,0x3d,0x20,0x66,0x75,0x6e,0x63,0x74,\n    0x69,0x6f,0x6e,0x28,0x2e,0x2e,0x2e,0x29,0x0a,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x0a,0x2d,0x2d,0x20,0x43,0x6f,0x70,0x79,\n    0x72,0x69,0x67,0x68,0x74,0x20,0x28,0x63,0x29,0x20,0x32,0x30,0x31,0x31,0x2d,0x32,\n    0x30,0x31,0x32,0x20,0x53,0x69,0x65,0x72,0x72,0x61,0x20,0x57,0x69,0x72,0x65,0x6c,\n    0x65,0x73,0x73,0x20,0x61,0x6e,0x64,0x20,0x6f,0x74,0x68,0x65,0x72,0x73,0x2e,0x0a,\n    0x2d,0x2d,0x20,0x41,0x6c,0x6c,0x20,0x72,0x69,0x67,0x68,0x74,0x73,0x20,0x72,0x65,\n    0x73,0x65,0x72,0x76,0x65,0x64,0x2e,0x20,0x54,0x68,0x69,0x73,0x20,0x70,0x72,0x6f,\n    0x67,0x72,0x61,0x6d,0x20,0x61,0x6e,0x64,0x20,0x74,0x68,0x65,0x20,0x61,0x63,0x63,\n    0x6f,0x6d,0x70,0x61,0x6e,0x79,0x69,0x6e,0x67,0x20,0x6d,0x61,0x74,0x65,0x72,0x69,\n    0x61,0x6c,0x73,0x0a,0x2d,0x2d,0x20,0x61,0x72,0x65,0x20,0x6d,0x61,0x64,0x65,0x20,\n    0x61,0x76,0x61,0x69,0x6c,0x61,0x62,0x6c,0x65,0x20,0x75,0x6e,0x64,0x65,0x72,0x20,\n    0x74,0x68,0x65,0x20,0x74,0x65,0x72,0x6d,0x73,0x20,0x6f,0x66,0x20,0x74,0x68,0x65,\n    0x20,0x45,0x63,0x6c,0x69,0x70,0x73,0x65,0x20,0x50,0x75,0x62,0x6c,0x69,0x63,0x20,\n    0x4c,0x69,0x63,0x65,0x6e,0x73,0x65,0x20,0x76,0x31,0x2e,0x30,0x0a,0x2d,0x2d,0x20,\n    0x77,0x68,0x69,0x63,0x68,0x20,0x61,0x63,0x63,0x6f,0x6d,0x70,0x61,0x6e,0x69,0x65,\n    0x73,0x20,0x74,0x68,0x69,0x73,0x20,0x64,0x69,0x73,0x74,0x72,0x69,0x62,0x75,0x74,\n    0x69,0x6f,0x6e,0x2c,0x20,0x61,0x6e,0x64,0x20,0x69,0x73,0x20,0x61,0x76,0x61,0x69,\n    0x6c,0x61,0x62,0x6c,0x65,0x20,0x61,0x74,0x0a,0x2d,0x2d,0x20,0x68,0x74,0x74,0x70,\n    0x3a,0x2f,0x2f,0x77,0x77,0x77,0x2e,0x65,0x63,0x6c,0x69,0x70,0x73,0x65,0x2e,0x6f,\n    0x72,0x67,0x2f,0x6c,0x65,0x67,0x61,0x6c,0x2f,0x65,0x70,0x6c,0x2d,0x76,0x31,0x30,\n    0x2e,0x68,0x74,0x6d,0x6c,0x0a,0x2d,0x2d,0x0a,0x2d,0x2d,0x20,0x43,0x6f,0x6e,0x74,\n    0x72,0x69,0x62,0x75,0x74,0x6f,0x72,0x73,0x3a,0x0a,0x2d,0x2d,0x20,0x20,0x20,0x20,\n    0x20,0x53,0x69,0x65,0x72,0x72,0x61,0x20,0x57,0x69,0x72,0x65,0x6c,0x65,0x73,0x73,\n    0x20,0x2d,0x20,0x69,0x6e,0x69,0x74,0x69,0x61,0x6c,0x20,0x41,0x50,0x49,0x20,0x61,\n    0x6e,0x64,0x20,0x69,0x6d,0x70,0x6c,0x65,0x6d,0x65,0x6e,0x74,0x61,0x74,0x69,0x6f,\n    0x6e,0x0a,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x0a,0x2d,0x2d,0x20,0x4c,0x75,0x61,0x53,0x6f,0x63,0x6b,0x65,0x74,0x20,0x62,\n    0x61,0x63,0x6b,0x65,0x6e,0x64,0x20,0x66,0x6f,0x72,0x20,0x44,0x42,0x47,0x50,0x20,\n    0x64,0x65,0x62,0x75,0x67,0x67,0x65,0x72,0x2e,0x0a,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x0a,0x0a,0x2d,0x2d,0x20,0x69,0x6e,\n    0x20,0x6f,0x72,0x64,0x65,0x72,0x20,0x74,0x6f,0x20,0x62,0x65,0x20,0x61,0x73,0x20,\n    0x6c,0x69,0x67,0x68,0x74,0x77,0x65,0x69,0x67,0x68,0x74,0x20,0x61,0x73,0x20,0x70,\n    0x6f,0x73,0x73,0x69,0x62,0x6c,0x65,0x20,0x77,0x69,0x74,0x68,0x20,0x4c,0x75,0x61,\n    0x73,0x6f,0x63,0x6b,0x65,0x74,0x2c,0x20,0x63,0x6f,0x72,0x65,0x20,0x41,0x50,0x49,\n    0x20,0x69,0x73,0x20,0x75,0x73,0x65,0x64,0x0a,0x2d,0x2d,0x20,0x64,0x69,0x72,0x65,\n    0x63,0x74,0x6c,0x79,0x20,0x28,0x74,0x6f,0x20,0x6e,0x6f,0x20,0x61,0x64,0x64,0x20,\n    0x79,0x65,0x74,0x20,0x61,0x6e,0x6f,0x74,0x68,0x65,0x72,0x20,0x6c,0x61,0x79,0x65,\n    0x72,0x29,0x0a,0x0a,0x2d,0x2d,0x46,0x49,0x58,0x4d,0x45,0x3a,0x20,0x72,0x65,0x6d,\n    0x6f,0x76,0x65,0x20,0x74,0x68,0x69,0x73,0x20,0x68,0x61,0x63,0x6b,0x20,0x61,0x73,\n    0x20,0x73,0x6f,0x6f,0x6e,0x20,0x61,0x73,0x20,0x6c,0x75,0x61,0x73,0x6f,0x63,0x6b,\n    0x65,0x74,0x20,0x6f,0x66,0x66,0x69,0x63,0x69,0x61,0x6c,0x6c,0x79,0x20,0x73,0x75,\n    0x70,0x70,0x6f,0x72,0x74,0x20,0x35,0x2e,0x32,0x0a,0x69,0x66,0x20,0x5f,0x56,0x45,\n    0x52,0x53,0x49,0x4f,0x4e,0x20,0x3d,0x3d,0x20,0x22,0x4c,0x75,0x61,0x20,0x35,0x2e,\n    0x32,0x22,0x20,0x74,0x68,0x65,0x6e,0x0a,0x20,0x20,0x74,0x61,0x62,0x6c,0x65,0x2e,\n    0x67,0x65,0x74,0x6e,0x20,0x3d,0x20,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x28,\n    0x74,0x29,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x74,0x20,0x61,0x6e,0x64,0x20,\n    0x23,0x74,0x20,0x65,0x6e,0x64,0x0a,0x65,0x6e,0x64,0x0a,0x0a,0x6c,0x6f,0x63,0x61,\n    0x6c,0x20,0x73,0x6f,0x63,0x6b,0x65,0x74,0x20,0x3d,0x20,0x72,0x65,0x71,0x75,0x69,\n    0x72,0x65,0x20,0x22,0x73,0x6f,0x63,0x6b,0x65,0x74,0x22,0x0a,0x6c,0x6f,0x63,0x61,\n    0x6c,0x20,0x6d,0x69,0x6d,0x65,0x20,0x20,0x20,0x3d,0x20,0x72,0x65,0x71,0x75,0x69,\n    0x72,0x65,0x20,0x22,0x6d,0x69,0x6d,0x65,0x22,0x0a,0x6c,0x6f,0x63,0x61,0x6c,0x20,\n    0x6c,0x74,0x6e,0x31,0x32,0x20,0x20,0x3d,0x20,0x72,0x65,0x71,0x75,0x69,0x72,0x65,\n    0x20,0x22,0x6c,0x74,0x6e,0x31,0x32,0x22,0x0a,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x72,\n    0x65,0x67,0x20,0x3d,0x20,0x64,0x65,0x62,0x75,0x67,0x2e,0x67,0x65,0x74,0x72,0x65,\n    0x67,0x69,0x73,0x74,0x72,0x79,0x28,0x29,0x0a,0x0a,0x0a,0x72,0x65,0x74,0x75,0x72,\n    0x6e,0x20,0x7b,0x0a,0x20,0x20,0x20,0x20,0x63,0x72,0x65,0x61,0x74,0x65,0x20,0x3d,\n    0x20,0x73,0x6f,0x63,0x6b,0x65,0x74,0x2e,0x74,0x63,0x70,0x2c,0x0a,0x20,0x20,0x20,\n    0x20,0x73,0x6c,0x65,0x65,0x70,0x20,0x20,0x3d,0x20,0x73,0x6f,0x63,0x6b,0x65,0x74,\n    0x2e,0x73,0x6c,0x65,0x65,0x70,0x2c,0x0a,0x0a,0x20,0x20,0x20,0x20,0x2d,0x2d,0x20,\n    0x42,0x61,0x73,0x65,0x36,0x34,0x20,0x72,0x65,0x6c,0x61,0x74,0x65,0x64,0x20,0x66,\n    0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x73,0x0a,0x20,0x20,0x20,0x20,0x2d,0x2d,0x2d,\n    0x20,0x45,0x6e,0x63,0x6f,0x64,0x65,0x73,0x20,0x61,0x20,0x73,0x74,0x72,0x69,0x6e,\n    0x67,0x20,0x69,0x6e,0x74,0x6f,0x20,0x42,0x61,0x73,0x65,0x36,0x34,0x20,0x77,0x69,\n    0x74,0x68,0x20,0x6c,0x69,0x6e,0x65,0x20,0x77,0x72,0x61,0x70,0x70,0x69,0x6e,0x67,\n    0x0a,0x20,0x20,0x20,0x20,0x2d,0x2d,0x20,0x40,0x70,0x61,0x72,0x61,0x6d,0x20,0x64,\n    0x61,0x74,0x61,0x20,0x28,0x73,0x74,0x72,0x69,0x6e,0x67,0x29,0x20,0x64,0x61,0x74,\n    0x61,0x20,0x74,0x6f,0x20,0x65,0x6e,0x63,0x6f,0x64,0x65,0x0a,0x20,0x20,0x20,0x20,\n    0x2d,0x2d,0x20,0x40,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x62,0x61,0x73,0x65,0x36,\n    0x34,0x20,0x65,0x6e,0x63,0x6f,0x64,0x65,0x64,0x20,0x73,0x74,0x72,0x69,0x6e,0x67,\n    0x0a,0x20,0x20,0x20,0x20,0x62,0x36,0x34,0x20,0x3d,0x20,0x66,0x75,0x6e,0x63,0x74,\n    0x69,0x6f,0x6e,0x28,0x64,0x61,0x74,0x61,0x29,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x66,0x69,0x6c,0x74,0x65,0x72,0x20,0x3d,\n    0x20,0x6c,0x74,0x6e,0x31,0x32,0x2e,0x66,0x69,0x6c,0x74,0x65,0x72,0x2e,0x63,0x68,\n    0x61,0x69,0x6e,0x28,0x6d,0x69,0x6d,0x65,0x2e,0x65,0x6e,0x63,0x6f,0x64,0x65,0x28,\n    0x22,0x62,0x61,0x73,0x65,0x36,0x34,0x22,0x29,0x2c,0x20,0x6d,0x69,0x6d,0x65,0x2e,\n    0x77,0x72,0x61,0x70,0x28,0x22,0x62,0x61,0x73,0x65,0x36,0x34,0x22,0x29,0x29,0x0a,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x73,0x69,\n    0x6e,0x6b,0x2c,0x20,0x6f,0x75,0x74,0x70,0x75,0x74,0x20,0x3d,0x20,0x6c,0x74,0x6e,\n    0x31,0x32,0x2e,0x73,0x69,0x6e,0x6b,0x2e,0x74,0x61,0x62,0x6c,0x65,0x28,0x29,0x0a,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x6c,0x74,0x6e,0x31,0x32,0x2e,0x70,0x75,\n    0x6d,0x70,0x2e,0x61,0x6c,0x6c,0x28,0x6c,0x74,0x6e,0x31,0x32,0x2e,0x73,0x6f,0x75,\n    0x72,0x63,0x65,0x2e,0x73,0x74,0x72,0x69,0x6e,0x67,0x28,0x64,0x61,0x74,0x61,0x29,\n    0x2c,0x20,0x6c,0x74,0x6e,0x31,0x32,0x2e,0x73,0x69,0x6e,0x6b,0x2e,0x63,0x68,0x61,\n    0x69,0x6e,0x28,0x66,0x69,0x6c,0x74,0x65,0x72,0x2c,0x20,0x73,0x69,0x6e,0x6b,0x29,\n    0x29,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,\n    0x20,0x74,0x61,0x62,0x6c,0x65,0x2e,0x63,0x6f,0x6e,0x63,0x61,0x74,0x28,0x6f,0x75,\n    0x74,0x70,0x75,0x74,0x29,0x0a,0x20,0x20,0x20,0x20,0x65,0x6e,0x64,0x2c,0x0a,0x0a,\n    0x20,0x20,0x20,0x20,0x2d,0x2d,0x2d,0x20,0x45,0x6e,0x63,0x6f,0x64,0x65,0x73,0x20,\n    0x61,0x20,0x73,0x74,0x72,0x69,0x6e,0x67,0x20,0x69,0x6e,0x74,0x6f,0x20,0x42,0x61,\n    0x73,0x65,0x36,0x34,0x2c,0x20,0x77,0x69,0x74,0x68,0x6f,0x75,0x74,0x20,0x61,0x6e,\n    0x79,0x20,0x65,0x78,0x74,0x72,0x61,0x20,0x70,0x61,0x72,0x73,0x69,0x6e,0x67,0x20,\n    0x28,0x77,0x72,0x61,0x70,0x70,0x69,0x6e,0x67,0x2c,0x20,0x2e,0x2e,0x2e,0x29,0x0a,\n    0x20,0x20,0x20,0x20,0x2d,0x2d,0x20,0x40,0x70,0x61,0x72,0x61,0x6d,0x20,0x64,0x61,\n    0x74,0x61,0x20,0x28,0x73,0x74,0x72,0x69,0x6e,0x67,0x29,0x20,0x64,0x61,0x74,0x61,\n    0x20,0x74,0x6f,0x20,0x65,0x6e,0x63,0x6f,0x64,0x65,0x0a,0x20,0x20,0x20,0x20,0x2d,\n    0x2d,0x20,0x40,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x64,0x65,0x63,0x6f,0x64,0x65,\n    0x64,0x20,0x73,0x74,0x72,0x69,0x6e,0x67,0x0a,0x20,0x20,0x20,0x20,0x72,0x61,0x77,\n    0x62,0x36,0x34,0x20,0x3d,0x20,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x28,0x64,\n    0x61,0x74,0x61,0x29,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x72,0x65,0x74,\n    0x75,0x72,0x6e,0x20,0x28,0x6d,0x69,0x6d,0x65,0x2e,0x62,0x36,0x34,0x28,0x64,0x61,\n    0x74,0x61,0x29,0x29,0x20,0x2d,0x2d,0x20,0x66,0x69,0x72,0x73,0x74,0x20,0x72,0x65,\n    0x73,0x75,0x6c,0x74,0x20,0x6f,0x66,0x20,0x74,0x68,0x65,0x20,0x6c,0x6f,0x77,0x2d,\n    0x6c,0x65,0x76,0x65,0x6c,0x20,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x20,0x69,\n    0x73,0x20,0x66,0x69,0x6e,0x65,0x20,0x68,0x65,0x72,0x65,0x0a,0x20,0x20,0x20,0x20,\n    0x65,0x6e,0x64,0x2c,0x0a,0x0a,0x20,0x20,0x20,0x20,0x2d,0x2d,0x2d,0x20,0x44,0x65,\n    0x63,0x6f,0x64,0x65,0x73,0x20,0x62,0x61,0x73,0x65,0x36,0x34,0x20,0x64,0x61,0x74,\n    0x61,0x0a,0x20,0x20,0x20,0x20,0x2d,0x2d,0x20,0x40,0x70,0x61,0x72,0x61,0x6d,0x20,\n    0x64,0x61,0x74,0x61,0x20,0x28,0x73,0x74,0x72,0x69,0x6e,0x67,0x29,0x20,0x62,0x61,\n    0x73,0x65,0x36,0x34,0x20,0x65,0x6e,0x63,0x6f,0x64,0x65,0x64,0x20,0x64,0x61,0x74,\n    0x61,0x0a,0x20,0x20,0x20,0x20,0x2d,0x2d,0x20,0x40,0x72,0x65,0x74,0x75,0x72,0x6e,\n    0x20,0x64,0x65,0x63,0x6f,0x64,0x65,0x64,0x20,0x73,0x74,0x72,0x69,0x6e,0x67,0x0a,\n    0x20,0x20,0x20,0x20,0x75,0x6e,0x62,0x36,0x34,0x20,0x3d,0x20,0x66,0x75,0x6e,0x63,\n    0x74,0x69,0x6f,0x6e,0x28,0x64,0x61,0x74,0x61,0x29,0x0a,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x28,0x6d,0x69,0x6d,0x65,0x2e,\n    0x75,0x6e,0x62,0x36,0x34,0x28,0x64,0x61,0x74,0x61,0x29,0x29,0x20,0x2d,0x2d,0x20,\n    0x66,0x69,0x72,0x73,0x74,0x20,0x72,0x65,0x73,0x75,0x6c,0x74,0x20,0x6f,0x66,0x20,\n    0x74,0x68,0x65,0x20,0x6c,0x6f,0x77,0x2d,0x6c,0x65,0x76,0x65,0x6c,0x20,0x66,0x75,\n    0x6e,0x63,0x74,0x69,0x6f,0x6e,0x20,0x69,0x73,0x20,0x66,0x69,0x6e,0x65,0x20,0x68,\n    0x65,0x72,0x65,0x0a,0x20,0x20,0x20,0x20,0x65,0x6e,0x64,0x2c,0x0a,0x7d,0x0a,0x0a,\n    0x65,0x6e,0x64,0x0a,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x0a,0x2d,0x2d,0x20,0x45,0x6e,0x64,0x20,0x6f,0x66,0x20,0x6d,\n    0x6f,0x64,0x75,0x6c,0x65,0x64,0x65,0x62,0x75,0x67,0x67,0x65,0x72,0x2e,0x74,0x72,\n    0x61,0x6e,0x73,0x70,0x6f,0x72,0x74,0x2e,0x6c,0x75,0x61,0x73,0x6f,0x63,0x6b,0x65,\n    0x74,0x0a,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x0a,0x0a,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x0a,0x2d,0x2d,0x20,0x20,0x4d,0x6f,0x64,0x75,0x6c,0x65,0x20,\n    0x64,0x65,0x62,0x75,0x67,0x67,0x65,0x72,0x2e,0x74,0x72,0x61,0x6e,0x73,0x70,0x6f,\n    0x72,0x74,0x2e,0x6c,0x75,0x61,0x73,0x6f,0x63,0x6b,0x65,0x74,0x5f,0x73,0x63,0x68,\n    0x65,0x64,0x0a,0x70,0x61,0x63,0x6b,0x61,0x67,0x65,0x2e,0x70,0x72,0x65,0x6c,0x6f,\n    0x61,0x64,0x5b,0x22,0x64,0x65,0x62,0x75,0x67,0x67,0x65,0x72,0x2e,0x74,0x72,0x61,\n    0x6e,0x73,0x70,0x6f,0x72,0x74,0x2e,0x6c,0x75,0x61,0x73,0x6f,0x63,0x6b,0x65,0x74,\n    0x5f,0x73,0x63,0x68,0x65,0x64,0x22,0x5d,0x20,0x3d,0x20,0x66,0x75,0x6e,0x63,0x74,\n    0x69,0x6f,0x6e,0x28,0x2e,0x2e,0x2e,0x29,0x0a,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x0a,0x2d,0x2d,0x20,0x43,0x6f,0x70,0x79,\n    0x72,0x69,0x67,0x68,0x74,0x20,0x28,0x63,0x29,0x20,0x32,0x30,0x31,0x31,0x2d,0x32,\n    0x30,0x31,0x32,0x20,0x53,0x69,0x65,0x72,0x72,0x61,0x20,0x57,0x69,0x72,0x65,0x6c,\n    0x65,0x73,0x73,0x20,0x61,0x6e,0x64,0x20,0x6f,0x74,0x68,0x65,0x72,0x73,0x2e,0x0a,\n    0x2d,0x2d,0x20,0x41,0x6c,0x6c,0x20,0x72,0x69,0x67,0x68,0x74,0x73,0x20,0x72,0x65,\n    0x73,0x65,0x72,0x76,0x65,0x64,0x2e,0x20,0x54,0x68,0x69,0x73,0x20,0x70,0x72,0x6f,\n    0x67,0x72,0x61,0x6d,0x20,0x61,0x6e,0x64,0x20,0x74,0x68,0x65,0x20,0x61,0x63,0x63,\n    0x6f,0x6d,0x70,0x61,0x6e,0x79,0x69,0x6e,0x67,0x20,0x6d,0x61,0x74,0x65,0x72,0x69,\n    0x61,0x6c,0x73,0x0a,0x2d,0x2d,0x20,0x61,0x72,0x65,0x20,0x6d,0x61,0x64,0x65,0x20,\n    0x61,0x76,0x61,0x69,0x6c,0x61,0x62,0x6c,0x65,0x20,0x75,0x6e,0x64,0x65,0x72,0x20,\n    0x74,0x68,0x65,0x20,0x74,0x65,0x72,0x6d,0x73,0x20,0x6f,0x66,0x20,0x74,0x68,0x65,\n    0x20,0x45,0x63,0x6c,0x69,0x70,0x73,0x65,0x20,0x50,0x75,0x62,0x6c,0x69,0x63,0x20,\n    0x4c,0x69,0x63,0x65,0x6e,0x73,0x65,0x20,0x76,0x31,0x2e,0x30,0x0a,0x2d,0x2d,0x20,\n    0x77,0x68,0x69,0x63,0x68,0x20,0x61,0x63,0x63,0x6f,0x6d,0x70,0x61,0x6e,0x69,0x65,\n    0x73,0x20,0x74,0x68,0x69,0x73,0x20,0x64,0x69,0x73,0x74,0x72,0x69,0x62,0x75,0x74,\n    0x69,0x6f,0x6e,0x2c,0x20,0x61,0x6e,0x64,0x20,0x69,0x73,0x20,0x61,0x76,0x61,0x69,\n    0x6c,0x61,0x62,0x6c,0x65,0x20,0x61,0x74,0x0a,0x2d,0x2d,0x20,0x68,0x74,0x74,0x70,\n    0x3a,0x2f,0x2f,0x77,0x77,0x77,0x2e,0x65,0x63,0x6c,0x69,0x70,0x73,0x65,0x2e,0x6f,\n    0x72,0x67,0x2f,0x6c,0x65,0x67,0x61,0x6c,0x2f,0x65,0x70,0x6c,0x2d,0x76,0x31,0x30,\n    0x2e,0x68,0x74,0x6d,0x6c,0x0a,0x2d,0x2d,0x0a,0x2d,0x2d,0x20,0x43,0x6f,0x6e,0x74,\n    0x72,0x69,0x62,0x75,0x74,0x6f,0x72,0x73,0x3a,0x0a,0x2d,0x2d,0x20,0x20,0x20,0x20,\n    0x20,0x53,0x69,0x65,0x72,0x72,0x61,0x20,0x57,0x69,0x72,0x65,0x6c,0x65,0x73,0x73,\n    0x20,0x2d,0x20,0x69,0x6e,0x69,0x74,0x69,0x61,0x6c,0x20,0x41,0x50,0x49,0x20,0x61,\n    0x6e,0x64,0x20,0x69,0x6d,0x70,0x6c,0x65,0x6d,0x65,0x6e,0x74,0x61,0x74,0x69,0x6f,\n    0x6e,0x0a,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x0a,0x2d,0x2d,0x20,0x4c,0x75,0x61,0x53,0x6f,0x63,0x6b,0x65,0x74,0x20,0x77,\n    0x69,0x74,0x68,0x20,0x4c,0x75,0x61,0x53,0x63,0x68,0x65,0x64,0x20,0x62,0x61,0x63,\n    0x6b,0x65,0x6e,0x64,0x20,0x66,0x6f,0x72,0x20,0x44,0x42,0x47,0x50,0x20,0x64,0x65,\n    0x62,0x75,0x67,0x67,0x65,0x72,0x2e,0x0a,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x0a,0x0a,0x2d,0x2d,0x20,0x41,0x73,0x20,0x4c,\n    0x75,0x61,0x53,0x68,0x65,0x64,0x20,0x74,0x6f,0x74,0x61,0x6c,0x6c,0x79,0x20,0x68,\n    0x69,0x64,0x65,0x73,0x20,0x62,0x6c,0x6f,0x63,0x6b,0x69,0x6e,0x67,0x20,0x66,0x75,\n    0x6e,0x63,0x74,0x69,0x6f,0x6e,0x73,0x2c,0x20,0x74,0x68,0x69,0x73,0x20,0x6d,0x6f,\n    0x64,0x75,0x6c,0x65,0x20,0x4d,0x55,0x53,0x54,0x20,0x62,0x65,0x20,0x6c,0x6f,0x61,\n    0x64,0x65,0x64,0x20,0x6f,0x6e,0x20,0x74,0x68,0x65,0x20,0x76,0x65,0x72,0x79,0x20,\n    0x73,0x74,0x61,0x72,0x74,0x20,0x6f,0x66,0x20,0x74,0x68,0x65,0x20,0x70,0x72,0x6f,\n    0x67,0x72,0x61,0x6d,0x0a,0x2d,0x2d,0x20,0x28,0x62,0x65,0x66,0x6f,0x72,0x65,0x20,\n    0x6c,0x6f,0x61,0x64,0x69,0x6e,0x67,0x20,0x73,0x63,0x68,0x65,0x64,0x29,0x20,0x74,\n    0x6f,0x20,0x63,0x61,0x74,0x63,0x68,0x20,0x72,0x65,0x66,0x65,0x72,0x65,0x6e,0x63,\n    0x65,0x73,0x20,0x74,0x6f,0x20,0x62,0x6c,0x6f,0x63,0x6b,0x69,0x6e,0x67,0x20,0x66,\n    0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x73,0x2e,0x0a,0x0a,0x6c,0x6f,0x63,0x61,0x6c,\n    0x20,0x73,0x6f,0x63,0x6b,0x65,0x74,0x63,0x6f,0x72,0x65,0x20,0x3d,0x20,0x72,0x65,\n    0x71,0x75,0x69,0x72,0x65,0x22,0x73,0x6f,0x63,0x6b,0x65,0x74,0x2e,0x63,0x6f,0x72,\n    0x65,0x22,0x0a,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x64,0x65,0x62,0x75,0x67,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x3d,0x20,0x72,0x65,0x71,0x75,0x69,0x72,0x65,0x20,0x22,0x64,\n    0x65,0x62,0x75,0x67,0x22,0x0a,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x72,0x65,0x67,0x20,\n    0x3d,0x20,0x64,0x65,0x62,0x75,0x67,0x2e,0x67,0x65,0x74,0x72,0x65,0x67,0x69,0x73,\n    0x74,0x72,0x79,0x28,0x29,0x0a,0x0a,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x62,0x6c,0x6f,\n    0x63,0x6b,0x69,0x6e,0x67,0x63,0x72,0x65,0x61,0x74,0x65,0x20,0x20,0x3d,0x20,0x73,\n    0x6f,0x63,0x6b,0x65,0x74,0x63,0x6f,0x72,0x65,0x2e,0x74,0x63,0x70,0x0a,0x6c,0x6f,\n    0x63,0x61,0x6c,0x20,0x62,0x6c,0x6f,0x63,0x6b,0x69,0x6e,0x67,0x73,0x6c,0x65,0x65,\n    0x70,0x20,0x20,0x20,0x3d,0x20,0x73,0x6f,0x63,0x6b,0x65,0x74,0x63,0x6f,0x72,0x65,\n    0x2e,0x73,0x6c,0x65,0x65,0x70,0x0a,0x0a,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x62,0x6c,\n    0x6f,0x63,0x6b,0x69,0x6e,0x67,0x63,0x6f,0x6e,0x6e,0x65,0x63,0x74,0x20,0x20,0x20,\n    0x20,0x3d,0x20,0x72,0x65,0x67,0x5b,0x22,0x74,0x63,0x70,0x7b,0x6d,0x61,0x73,0x74,\n    0x65,0x72,0x7d,0x22,0x5d,0x2e,0x5f,0x5f,0x69,0x6e,0x64,0x65,0x78,0x2e,0x63,0x6f,\n    0x6e,0x6e,0x65,0x63,0x74,0x0a,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x62,0x6c,0x6f,0x63,\n    0x6b,0x69,0x6e,0x67,0x72,0x65,0x63,0x65,0x69,0x76,0x65,0x20,0x20,0x20,0x20,0x3d,\n    0x20,0x72,0x65,0x67,0x5b,0x22,0x74,0x63,0x70,0x7b,0x63,0x6c,0x69,0x65,0x6e,0x74,\n    0x7d,0x22,0x5d,0x2e,0x5f,0x5f,0x69,0x6e,0x64,0x65,0x78,0x2e,0x72,0x65,0x63,0x65,\n    0x69,0x76,0x65,0x0a,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x62,0x6c,0x6f,0x63,0x6b,0x69,\n    0x6e,0x67,0x73,0x65,0x6e,0x64,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x3d,0x20,0x72,\n    0x65,0x67,0x5b,0x22,0x74,0x63,0x70,0x7b,0x63,0x6c,0x69,0x65,0x6e,0x74,0x7d,0x22,\n    0x5d,0x2e,0x5f,0x5f,0x69,0x6e,0x64,0x65,0x78,0x2e,0x73,0x65,0x6e,0x64,0x0a,0x6c,\n    0x6f,0x63,0x61,0x6c,0x20,0x62,0x6c,0x6f,0x63,0x6b,0x69,0x6e,0x67,0x73,0x65,0x74,\n    0x74,0x69,0x6d,0x65,0x6f,0x75,0x74,0x20,0x3d,0x20,0x72,0x65,0x67,0x5b,0x22,0x74,\n    0x63,0x70,0x7b,0x6d,0x61,0x73,0x74,0x65,0x72,0x7d,0x22,0x5d,0x2e,0x5f,0x5f,0x69,\n    0x6e,0x64,0x65,0x78,0x2e,0x73,0x65,0x74,0x74,0x69,0x6d,0x65,0x6f,0x75,0x74,0x0a,\n    0x6c,0x6f,0x63,0x61,0x6c,0x20,0x62,0x6c,0x6f,0x63,0x6b,0x69,0x6e,0x67,0x63,0x6c,\n    0x6f,0x73,0x65,0x20,0x20,0x20,0x20,0x20,0x20,0x3d,0x20,0x72,0x65,0x67,0x5b,0x22,\n    0x74,0x63,0x70,0x7b,0x6d,0x61,0x73,0x74,0x65,0x72,0x7d,0x22,0x5d,0x2e,0x5f,0x5f,\n    0x69,0x6e,0x64,0x65,0x78,0x2e,0x63,0x6c,0x6f,0x73,0x65,0x0a,0x0a,0x2d,0x2d,0x20,\n    0x77,0x65,0x20,0x63,0x61,0x6e,0x6e,0x6f,0x74,0x20,0x73,0x65,0x74,0x20,0x61,0x20,\n    0x6e,0x65,0x77,0x20,0x6d,0x65,0x74,0x61,0x74,0x61,0x62,0x6c,0x65,0x20,0x64,0x69,\n    0x72,0x65,0x63,0x74,0x6c,0x79,0x20,0x6f,0x6e,0x20,0x73,0x6f,0x63,0x6b,0x65,0x74,\n    0x20,0x6f,0x62,0x6a,0x65,0x63,0x74,0x2c,0x20,0x73,0x6f,0x20,0x77,0x72,0x61,0x70,\n    0x20,0x69,0x74,0x20,0x69,0x6e,0x74,0x6f,0x20,0x61,0x20,0x6e,0x65,0x77,0x20,0x74,\n    0x61,0x62,0x6c,0x65,0x0a,0x2d,0x2d,0x20,0x61,0x6e,0x64,0x20,0x66,0x6f,0x72,0x77,\n    0x61,0x72,0x64,0x20,0x61,0x6c,0x6c,0x20,0x63,0x61,0x6c,0x6c,0x73,0x2e,0x0a,0x6c,\n    0x6f,0x63,0x61,0x6c,0x20,0x62,0x6c,0x6f,0x63,0x6b,0x69,0x6e,0x67,0x74,0x63,0x70,\n    0x20,0x3d,0x20,0x7b,0x0a,0x20,0x20,0x63,0x6f,0x6e,0x6e,0x65,0x63,0x74,0x20,0x20,\n    0x20,0x20,0x3d,0x20,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x28,0x73,0x65,0x6c,\n    0x66,0x2c,0x20,0x61,0x64,0x64,0x72,0x65,0x73,0x73,0x2c,0x20,0x70,0x6f,0x72,0x74,\n    0x29,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x62,0x6c,0x6f,0x63,0x6b,0x69,0x6e,\n    0x67,0x63,0x6f,0x6e,0x6e,0x65,0x63,0x74,0x28,0x73,0x65,0x6c,0x66,0x2e,0x73,0x6b,\n    0x74,0x2c,0x20,0x61,0x64,0x64,0x72,0x65,0x73,0x73,0x2c,0x20,0x70,0x6f,0x72,0x74,\n    0x29,0x20,0x65,0x6e,0x64,0x2c,0x0a,0x20,0x20,0x72,0x65,0x63,0x65,0x69,0x76,0x65,\n    0x20,0x20,0x20,0x20,0x3d,0x20,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x28,0x73,\n    0x65,0x6c,0x66,0x2c,0x20,0x6e,0x29,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x62,0x6c,0x6f,0x63,0x6b,\n    0x69,0x6e,0x67,0x72,0x65,0x63,0x65,0x69,0x76,0x65,0x28,0x73,0x65,0x6c,0x66,0x2e,\n    0x73,0x6b,0x74,0x2c,0x20,0x6e,0x29,0x20,0x65,0x6e,0x64,0x2c,0x0a,0x20,0x20,0x73,\n    0x65,0x6e,0x64,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x3d,0x20,0x66,0x75,0x6e,0x63,\n    0x74,0x69,0x6f,0x6e,0x28,0x73,0x65,0x6c,0x66,0x2c,0x20,0x64,0x61,0x74,0x61,0x29,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,\n    0x20,0x62,0x6c,0x6f,0x63,0x6b,0x69,0x6e,0x67,0x73,0x65,0x6e,0x64,0x28,0x73,0x65,\n    0x6c,0x66,0x2e,0x73,0x6b,0x74,0x2c,0x20,0x64,0x61,0x74,0x61,0x29,0x20,0x65,0x6e,\n    0x64,0x2c,0x0a,0x20,0x20,0x73,0x65,0x74,0x74,0x69,0x6d,0x65,0x6f,0x75,0x74,0x20,\n    0x3d,0x20,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x28,0x73,0x65,0x6c,0x66,0x2c,\n    0x20,0x73,0x65,0x63,0x29,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x62,0x6c,0x6f,0x63,0x6b,0x69,0x6e,0x67,0x73,\n    0x65,0x74,0x74,0x69,0x6d,0x65,0x6f,0x75,0x74,0x28,0x73,0x65,0x6c,0x66,0x2e,0x73,\n    0x6b,0x74,0x2c,0x20,0x73,0x65,0x63,0x29,0x20,0x65,0x6e,0x64,0x2c,0x0a,0x20,0x20,\n    0x63,0x6c,0x6f,0x73,0x65,0x20,0x20,0x20,0x20,0x20,0x20,0x3d,0x20,0x66,0x75,0x6e,\n    0x63,0x74,0x69,0x6f,0x6e,0x28,0x73,0x65,0x6c,0x66,0x29,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x72,0x65,0x74,0x75,0x72,\n    0x6e,0x20,0x62,0x6c,0x6f,0x63,0x6b,0x69,0x6e,0x67,0x63,0x6c,0x6f,0x73,0x65,0x28,\n    0x73,0x65,0x6c,0x66,0x2e,0x73,0x6b,0x74,0x29,0x20,0x65,0x6e,0x64,0x2c,0x0a,0x7d,\n    0x0a,0x0a,0x62,0x6c,0x6f,0x63,0x6b,0x69,0x6e,0x67,0x74,0x63,0x70,0x2e,0x5f,0x5f,\n    0x69,0x6e,0x64,0x65,0x78,0x20,0x3d,0x20,0x62,0x6c,0x6f,0x63,0x6b,0x69,0x6e,0x67,\n    0x74,0x63,0x70,0x0a,0x0a,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x6d,0x69,0x6d,0x65,0x20,\n    0x20,0x3d,0x20,0x72,0x65,0x71,0x75,0x69,0x72,0x65,0x20,0x22,0x6d,0x69,0x6d,0x65,\n    0x22,0x0a,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x6c,0x74,0x6e,0x31,0x32,0x20,0x3d,0x20,\n    0x72,0x65,0x71,0x75,0x69,0x72,0x65,0x20,0x22,0x6c,0x74,0x6e,0x31,0x32,0x22,0x0a,\n    0x0a,0x2d,0x2d,0x20,0x76,0x65,0x72,0x69,0x66,0x79,0x20,0x74,0x68,0x61,0x74,0x20,\n    0x74,0x68,0x65,0x20,0x73,0x6f,0x63,0x6b,0x65,0x74,0x20,0x66,0x75,0x6e,0x63,0x74,\n    0x69,0x6f,0x6e,0x20,0x61,0x72,0x65,0x20,0x74,0x68,0x65,0x20,0x72,0x65,0x61,0x6c,\n    0x20,0x6f,0x6e,0x65,0x73,0x20,0x61,0x6e,0x64,0x20,0x6e,0x6f,0x74,0x20,0x73,0x63,\n    0x68,0x65,0x64,0x20,0x6e,0x6f,0x74,0x20,0x62,0x6c,0x6f,0x63,0x6b,0x69,0x6e,0x67,\n    0x20,0x76,0x65,0x72,0x73,0x69,0x6f,0x6e,0x73,0x0a,0x61,0x73,0x73,0x65,0x72,0x74,\n    0x28,0x64,0x65,0x62,0x75,0x67,0x2e,0x67,0x65,0x74,0x69,0x6e,0x66,0x6f,0x28,0x62,\n    0x6c,0x6f,0x63,0x6b,0x69,0x6e,0x67,0x63,0x72,0x65,0x61,0x74,0x65,0x2c,0x20,0x22,\n    0x53,0x22,0x29,0x2e,0x77,0x68,0x61,0x74,0x20,0x3d,0x3d,0x20,0x22,0x43,0x22,0x2c,\n    0x20,0x22,0x54,0x68,0x65,0x20,0x64,0x65,0x62,0x75,0x67,0x67,0x65,0x72,0x20,0x6e,\n    0x65,0x65,0x64,0x73,0x20,0x74,0x68,0x65,0x20,0x72,0x65,0x61,0x6c,0x20,0x73,0x6f,\n    0x63,0x6b,0x65,0x74,0x20,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x73,0x20,0x21,\n    0x22,0x29,0x0a,0x2d,0x2d,0x20,0x63,0x6c,0x65,0x61,0x6e,0x75,0x70,0x20,0x74,0x68,\n    0x65,0x20,0x70,0x61,0x63,0x6b,0x61,0x67,0x65,0x2e,0x6c,0x6f,0x61,0x64,0x65,0x64,\n    0x20,0x74,0x61,0x62,0x6c,0x65,0x20,0x28,0x73,0x6f,0x63,0x6b,0x65,0x74,0x2e,0x63,\n    0x6f,0x72,0x65,0x20,0x61,0x64,0x64,0x73,0x20,0x73,0x6f,0x63,0x6b,0x65,0x74,0x20,\n    0x66,0x69,0x65,0x6c,0x64,0x20,0x69,0x6e,0x74,0x6f,0x20,0x69,0x74,0x29,0x0a,0x70,\n    0x61,0x63,0x6b,0x61,0x67,0x65,0x2e,0x6c,0x6f,0x61,0x64,0x65,0x64,0x2e,0x73,0x6f,\n    0x63,0x6b,0x65,0x74,0x20,0x3d,0x20,0x6e,0x69,0x6c,0x0a,0x0a,0x72,0x65,0x74,0x75,\n    0x72,0x6e,0x20,0x7b,0x0a,0x20,0x20,0x20,0x20,0x63,0x72,0x65,0x61,0x74,0x65,0x20,\n    0x3d,0x20,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x28,0x29,0x20,0x72,0x65,0x74,\n    0x75,0x72,0x6e,0x20,0x73,0x65,0x74,0x6d,0x65,0x74,0x61,0x74,0x61,0x62,0x6c,0x65,\n    0x28,0x7b,0x20,0x73,0x6b,0x74,0x20,0x3d,0x20,0x62,0x6c,0x6f,0x63,0x6b,0x69,0x6e,\n    0x67,0x63,0x72,0x65,0x61,0x74,0x65,0x28,0x29,0x20,0x7d,0x2c,0x20,0x62,0x6c,0x6f,\n    0x63,0x6b,0x69,0x6e,0x67,0x74,0x63,0x70,0x29,0x20,0x65,0x6e,0x64,0x2c,0x0a,0x20,\n    0x20,0x20,0x20,0x73,0x6c,0x65,0x65,0x70,0x20,0x20,0x3d,0x20,0x62,0x6c,0x6f,0x63,\n    0x6b,0x69,0x6e,0x67,0x73,0x6c,0x65,0x65,0x70,0x2c,0x0a,0x0a,0x20,0x20,0x20,0x20,\n    0x2d,0x2d,0x20,0x42,0x61,0x73,0x65,0x36,0x34,0x20,0x72,0x65,0x6c,0x61,0x74,0x65,\n    0x64,0x20,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x73,0x0a,0x20,0x20,0x20,0x20,\n    0x2d,0x2d,0x2d,0x20,0x45,0x6e,0x63,0x6f,0x64,0x65,0x73,0x20,0x61,0x20,0x73,0x74,\n    0x72,0x69,0x6e,0x67,0x20,0x69,0x6e,0x74,0x6f,0x20,0x42,0x61,0x73,0x65,0x36,0x34,\n    0x20,0x77,0x69,0x74,0x68,0x20,0x6c,0x69,0x6e,0x65,0x20,0x77,0x72,0x61,0x70,0x70,\n    0x69,0x6e,0x67,0x0a,0x20,0x20,0x20,0x20,0x2d,0x2d,0x20,0x40,0x70,0x61,0x72,0x61,\n    0x6d,0x20,0x64,0x61,0x74,0x61,0x20,0x28,0x73,0x74,0x72,0x69,0x6e,0x67,0x29,0x20,\n    0x64,0x61,0x74,0x61,0x20,0x74,0x6f,0x20,0x65,0x6e,0x63,0x6f,0x64,0x65,0x0a,0x20,\n    0x20,0x20,0x20,0x2d,0x2d,0x20,0x40,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x62,0x61,\n    0x73,0x65,0x36,0x34,0x20,0x65,0x6e,0x63,0x6f,0x64,0x65,0x64,0x20,0x73,0x74,0x72,\n    0x69,0x6e,0x67,0x0a,0x20,0x20,0x20,0x20,0x62,0x36,0x34,0x20,0x3d,0x20,0x66,0x75,\n    0x6e,0x63,0x74,0x69,0x6f,0x6e,0x28,0x64,0x61,0x74,0x61,0x29,0x0a,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x66,0x69,0x6c,0x74,0x65,\n    0x72,0x20,0x3d,0x20,0x6c,0x74,0x6e,0x31,0x32,0x2e,0x66,0x69,0x6c,0x74,0x65,0x72,\n    0x2e,0x63,0x68,0x61,0x69,0x6e,0x28,0x6d,0x69,0x6d,0x65,0x2e,0x65,0x6e,0x63,0x6f,\n    0x64,0x65,0x28,0x22,0x62,0x61,0x73,0x65,0x36,0x34,0x22,0x29,0x2c,0x20,0x6d,0x69,\n    0x6d,0x65,0x2e,0x77,0x72,0x61,0x70,0x28,0x22,0x62,0x61,0x73,0x65,0x36,0x34,0x22,\n    0x29,0x29,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,\n    0x20,0x73,0x69,0x6e,0x6b,0x2c,0x20,0x6f,0x75,0x74,0x70,0x75,0x74,0x20,0x3d,0x20,\n    0x6c,0x74,0x6e,0x31,0x32,0x2e,0x73,0x69,0x6e,0x6b,0x2e,0x74,0x61,0x62,0x6c,0x65,\n    0x28,0x29,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x6c,0x74,0x6e,0x31,0x32,\n    0x2e,0x70,0x75,0x6d,0x70,0x2e,0x61,0x6c,0x6c,0x28,0x6c,0x74,0x6e,0x31,0x32,0x2e,\n    0x73,0x6f,0x75,0x72,0x63,0x65,0x2e,0x73,0x74,0x72,0x69,0x6e,0x67,0x28,0x64,0x61,\n    0x74,0x61,0x29,0x2c,0x20,0x6c,0x74,0x6e,0x31,0x32,0x2e,0x73,0x69,0x6e,0x6b,0x2e,\n    0x63,0x68,0x61,0x69,0x6e,0x28,0x66,0x69,0x6c,0x74,0x65,0x72,0x2c,0x20,0x73,0x69,\n    0x6e,0x6b,0x29,0x29,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x72,0x65,0x74,\n    0x75,0x72,0x6e,0x20,0x74,0x61,0x62,0x6c,0x65,0x2e,0x63,0x6f,0x6e,0x63,0x61,0x74,\n    0x28,0x6f,0x75,0x74,0x70,0x75,0x74,0x29,0x0a,0x20,0x20,0x20,0x20,0x65,0x6e,0x64,\n    0x2c,0x0a,0x0a,0x20,0x20,0x20,0x20,0x2d,0x2d,0x2d,0x20,0x45,0x6e,0x63,0x6f,0x64,\n    0x65,0x73,0x20,0x61,0x20,0x73,0x74,0x72,0x69,0x6e,0x67,0x20,0x69,0x6e,0x74,0x6f,\n    0x20,0x42,0x61,0x73,0x65,0x36,0x34,0x2c,0x20,0x77,0x69,0x74,0x68,0x6f,0x75,0x74,\n    0x20,0x61,0x6e,0x79,0x20,0x65,0x78,0x74,0x72,0x61,0x20,0x70,0x61,0x72,0x73,0x69,\n    0x6e,0x67,0x20,0x28,0x77,0x72,0x61,0x70,0x70,0x69,0x6e,0x67,0x2c,0x20,0x2e,0x2e,\n    0x2e,0x29,0x0a,0x20,0x20,0x20,0x20,0x2d,0x2d,0x20,0x40,0x70,0x61,0x72,0x61,0x6d,\n    0x20,0x64,0x61,0x74,0x61,0x20,0x28,0x73,0x74,0x72,0x69,0x6e,0x67,0x29,0x20,0x64,\n    0x61,0x74,0x61,0x20,0x74,0x6f,0x20,0x65,0x6e,0x63,0x6f,0x64,0x65,0x0a,0x20,0x20,\n    0x20,0x20,0x2d,0x2d,0x20,0x40,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x64,0x65,0x63,\n    0x6f,0x64,0x65,0x64,0x20,0x73,0x74,0x72,0x69,0x6e,0x67,0x0a,0x20,0x20,0x20,0x20,\n    0x72,0x61,0x77,0x62,0x36,0x34,0x20,0x3d,0x20,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,\n    0x6e,0x28,0x64,0x61,0x74,0x61,0x29,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x28,0x6d,0x69,0x6d,0x65,0x2e,0x62,0x36,0x34,\n    0x28,0x64,0x61,0x74,0x61,0x29,0x29,0x20,0x2d,0x2d,0x20,0x66,0x69,0x72,0x73,0x74,\n    0x20,0x72,0x65,0x73,0x75,0x6c,0x74,0x20,0x6f,0x66,0x20,0x74,0x68,0x65,0x20,0x6c,\n    0x6f,0x77,0x2d,0x6c,0x65,0x76,0x65,0x6c,0x20,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,\n    0x6e,0x20,0x69,0x73,0x20,0x66,0x69,0x6e,0x65,0x20,0x68,0x65,0x72,0x65,0x0a,0x20,\n    0x20,0x20,0x20,0x65,0x6e,0x64,0x2c,0x0a,0x0a,0x20,0x20,0x20,0x20,0x2d,0x2d,0x2d,\n    0x20,0x44,0x65,0x63,0x6f,0x64,0x65,0x73,0x20,0x62,0x61,0x73,0x65,0x36,0x34,0x20,\n    0x64,0x61,0x74,0x61,0x0a,0x20,0x20,0x20,0x20,0x2d,0x2d,0x20,0x40,0x70,0x61,0x72,\n    0x61,0x6d,0x20,0x64,0x61,0x74,0x61,0x20,0x28,0x73,0x74,0x72,0x69,0x6e,0x67,0x29,\n    0x20,0x62,0x61,0x73,0x65,0x36,0x34,0x20,0x65,0x6e,0x63,0x6f,0x64,0x65,0x64,0x20,\n    0x64,0x61,0x74,0x61,0x0a,0x20,0x20,0x20,0x20,0x2d,0x2d,0x20,0x40,0x72,0x65,0x74,\n    0x75,0x72,0x6e,0x20,0x64,0x65,0x63,0x6f,0x64,0x65,0x64,0x20,0x73,0x74,0x72,0x69,\n    0x6e,0x67,0x0a,0x20,0x20,0x20,0x20,0x75,0x6e,0x62,0x36,0x34,0x20,0x3d,0x20,0x66,\n    0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x28,0x64,0x61,0x74,0x61,0x29,0x0a,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x28,0x6d,0x69,\n    0x6d,0x65,0x2e,0x75,0x6e,0x62,0x36,0x34,0x28,0x64,0x61,0x74,0x61,0x29,0x29,0x20,\n    0x2d,0x2d,0x20,0x66,0x69,0x72,0x73,0x74,0x20,0x72,0x65,0x73,0x75,0x6c,0x74,0x20,\n    0x6f,0x66,0x20,0x74,0x68,0x65,0x20,0x6c,0x6f,0x77,0x2d,0x6c,0x65,0x76,0x65,0x6c,\n    0x20,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x20,0x69,0x73,0x20,0x66,0x69,0x6e,\n    0x65,0x20,0x68,0x65,0x72,0x65,0x0a,0x20,0x20,0x20,0x20,0x65,0x6e,0x64,0x2c,0x0a,\n    0x7d,0x0a,0x0a,0x65,0x6e,0x64,0x0a,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x0a,0x2d,0x2d,0x20,0x45,0x6e,0x64,0x20,0x6f,\n    0x66,0x20,0x6d,0x6f,0x64,0x75,0x6c,0x65,0x64,0x65,0x62,0x75,0x67,0x67,0x65,0x72,\n    0x2e,0x74,0x72,0x61,0x6e,0x73,0x70,0x6f,0x72,0x74,0x2e,0x6c,0x75,0x61,0x73,0x6f,\n    0x63,0x6b,0x65,0x74,0x5f,0x73,0x63,0x68,0x65,0x64,0x0a,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x0a,0x0a,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x0a,0x2d,0x2d,\n    0x20,0x20,0x4d,0x6f,0x64,0x75,0x6c,0x65,0x20,0x64,0x65,0x62,0x75,0x67,0x67,0x65,\n    0x72,0x2e,0x63,0x6f,0x6d,0x6d,0x61,0x6e,0x64,0x73,0x0a,0x70,0x61,0x63,0x6b,0x61,\n    0x67,0x65,0x2e,0x70,0x72,0x65,0x6c,0x6f,0x61,0x64,0x5b,0x22,0x64,0x65,0x62,0x75,\n    0x67,0x67,0x65,0x72,0x2e,0x63,0x6f,0x6d,0x6d,0x61,0x6e,0x64,0x73,0x22,0x5d,0x20,\n    0x3d,0x20,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x28,0x2e,0x2e,0x2e,0x29,0x0a,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x0a,\n    0x2d,0x2d,0x20,0x43,0x6f,0x70,0x79,0x72,0x69,0x67,0x68,0x74,0x20,0x28,0x63,0x29,\n    0x20,0x32,0x30,0x31,0x31,0x2d,0x32,0x30,0x31,0x32,0x20,0x53,0x69,0x65,0x72,0x72,\n    0x61,0x20,0x57,0x69,0x72,0x65,0x6c,0x65,0x73,0x73,0x20,0x61,0x6e,0x64,0x20,0x6f,\n    0x74,0x68,0x65,0x72,0x73,0x2e,0x0a,0x2d,0x2d,0x20,0x41,0x6c,0x6c,0x20,0x72,0x69,\n    0x67,0x68,0x74,0x73,0x20,0x72,0x65,0x73,0x65,0x72,0x76,0x65,0x64,0x2e,0x20,0x54,\n    0x68,0x69,0x73,0x20,0x70,0x72,0x6f,0x67,0x72,0x61,0x6d,0x20,0x61,0x6e,0x64,0x20,\n    0x74,0x68,0x65,0x20,0x61,0x63,0x63,0x6f,0x6d,0x70,0x61,0x6e,0x79,0x69,0x6e,0x67,\n    0x20,0x6d,0x61,0x74,0x65,0x72,0x69,0x61,0x6c,0x73,0x0a,0x2d,0x2d,0x20,0x61,0x72,\n    0x65,0x20,0x6d,0x61,0x64,0x65,0x20,0x61,0x76,0x61,0x69,0x6c,0x61,0x62,0x6c,0x65,\n    0x20,0x75,0x6e,0x64,0x65,0x72,0x20,0x74,0x68,0x65,0x20,0x74,0x65,0x72,0x6d,0x73,\n    0x20,0x6f,0x66,0x20,0x74,0x68,0x65,0x20,0x45,0x63,0x6c,0x69,0x70,0x73,0x65,0x20,\n    0x50,0x75,0x62,0x6c,0x69,0x63,0x20,0x4c,0x69,0x63,0x65,0x6e,0x73,0x65,0x20,0x76,\n    0x31,0x2e,0x30,0x0a,0x2d,0x2d,0x20,0x77,0x68,0x69,0x63,0x68,0x20,0x61,0x63,0x63,\n    0x6f,0x6d,0x70,0x61,0x6e,0x69,0x65,0x73,0x20,0x74,0x68,0x69,0x73,0x20,0x64,0x69,\n    0x73,0x74,0x72,0x69,0x62,0x75,0x74,0x69,0x6f,0x6e,0x2c,0x20,0x61,0x6e,0x64,0x20,\n    0x69,0x73,0x20,0x61,0x76,0x61,0x69,0x6c,0x61,0x62,0x6c,0x65,0x20,0x61,0x74,0x0a,\n    0x2d,0x2d,0x20,0x68,0x74,0x74,0x70,0x3a,0x2f,0x2f,0x77,0x77,0x77,0x2e,0x65,0x63,\n    0x6c,0x69,0x70,0x73,0x65,0x2e,0x6f,0x72,0x67,0x2f,0x6c,0x65,0x67,0x61,0x6c,0x2f,\n    0x65,0x70,0x6c,0x2d,0x76,0x31,0x30,0x2e,0x68,0x74,0x6d,0x6c,0x0a,0x2d,0x2d,0x0a,\n    0x2d,0x2d,0x20,0x43,0x6f,0x6e,0x74,0x72,0x69,0x62,0x75,0x74,0x6f,0x72,0x73,0x3a,\n    0x0a,0x2d,0x2d,0x20,0x20,0x20,0x20,0x20,0x53,0x69,0x65,0x72,0x72,0x61,0x20,0x57,\n    0x69,0x72,0x65,0x6c,0x65,0x73,0x73,0x20,0x2d,0x20,0x69,0x6e,0x69,0x74,0x69,0x61,\n    0x6c,0x20,0x41,0x50,0x49,0x20,0x61,0x6e,0x64,0x20,0x69,0x6d,0x70,0x6c,0x65,0x6d,\n    0x65,0x6e,0x74,0x61,0x74,0x69,0x6f,0x6e,0x0a,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x0a,0x2d,0x2d,0x20,0x43,0x6f,0x6d,0x6d,\n    0x61,0x6e,0x64,0x73,0x20,0x68,0x61,0x6e,0x64,0x6c,0x65,0x72,0x73,0x20,0x66,0x6f,\n    0x72,0x20,0x44,0x42,0x47,0x70,0x20,0x70,0x72,0x6f,0x74,0x6f,0x63,0x6f,0x6c,0x2e,\n    0x0a,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x0a,0x2d,0x2d,0x20,0x44,0x65,0x62,0x75,0x67,0x67,0x65,0x72,0x20,0x63,0x6f,0x6d,\n    0x6d,0x61,0x6e,0x64,0x20,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x73,0x2e,0x20,\n    0x45,0x61,0x63,0x68,0x20,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x20,0x68,0x61,\n    0x6e,0x64,0x6c,0x65,0x20,0x61,0x20,0x64,0x69,0x66,0x66,0x65,0x72,0x65,0x6e,0x74,\n    0x20,0x63,0x6f,0x6d,0x6d,0x61,0x6e,0x64,0x2e,0x0a,0x2d,0x2d,0x20,0x41,0x20,0x63,\n    0x6f,0x6d,0x6d,0x61,0x6e,0x64,0x20,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x20,\n    0x69,0x73,0x20,0x63,0x61,0x6c,0x6c,0x65,0x64,0x20,0x77,0x69,0x74,0x68,0x20,0x33,\n    0x20,0x61,0x72,0x67,0x75,0x6d,0x65,0x6e,0x74,0x73,0x0a,0x2d,0x2d,0x20,0x20,0x20,\n    0x31,0x2e,0x20,0x74,0x68,0x65,0x20,0x64,0x65,0x62,0x75,0x67,0x20,0x73,0x65,0x73,\n    0x73,0x69,0x6f,0x6e,0x20,0x69,0x6e,0x73,0x74,0x61,0x6e,0x63,0x65,0x0a,0x2d,0x2d,\n    0x20,0x20,0x20,0x32,0x2e,0x20,0x74,0x68,0x65,0x20,0x63,0x6f,0x6d,0x6d,0x61,0x6e,\n    0x64,0x20,0x61,0x72,0x67,0x75,0x6d,0x65,0x6e,0x74,0x73,0x20,0x61,0x73,0x20,0x74,\n    0x61,0x62,0x6c,0x65,0x0a,0x2d,0x2d,0x20,0x20,0x20,0x33,0x2e,0x20,0x74,0x68,0x65,\n    0x20,0x63,0x6f,0x6d,0x6d,0x61,0x6e,0x64,0x20,0x64,0x61,0x74,0x61,0x2c,0x20,0x69,\n    0x66,0x20,0x61,0x6e,0x79,0x0a,0x2d,0x2d,0x20,0x54,0x68,0x65,0x20,0x72,0x65,0x73,\n    0x75,0x6c,0x74,0x20,0x69,0x73,0x20,0x65,0x69,0x74,0x68,0x65,0x72,0x20,0x3a,0x0a,\n    0x2d,0x2d,0x20,0x20,0x20,0x2a,0x20,0x74,0x72,0x75,0x65,0x20,0x28,0x6f,0x72,0x20,\n    0x61,0x6e,0x79,0x20,0x76,0x61,0x6c,0x75,0x65,0x20,0x65,0x76,0x61,0x6c,0x75,0x61,\n    0x74,0x65,0x64,0x20,0x74,0x6f,0x20,0x74,0x72,0x75,0x65,0x29,0x20,0x3a,0x20,0x74,\n    0x68,0x65,0x20,0x64,0x65,0x62,0x75,0x67,0x67,0x65,0x72,0x20,0x77,0x69,0x6c,0x6c,\n    0x20,0x72,0x65,0x73,0x75,0x6d,0x65,0x20,0x74,0x68,0x65,0x20,0x65,0x78,0x65,0x63,\n    0x75,0x74,0x69,0x6f,0x6e,0x20,0x6f,0x66,0x20,0x74,0x68,0x65,0x20,0x61,0x70,0x70,\n    0x6c,0x69,0x63,0x61,0x74,0x69,0x6f,0x6e,0x20,0x28,0x63,0x6f,0x6e,0x74,0x69,0x6e,\n    0x75,0x61,0x74,0x69,0x6f,0x6e,0x20,0x63,0x6f,0x6d,0x6d,0x61,0x6e,0x64,0x29,0x0a,\n    0x2d,0x2d,0x20,0x20,0x20,0x2a,0x20,0x66,0x61,0x6c,0x73,0x65,0x20,0x3a,0x20,0x6f,\n    0x6e,0x6c,0x79,0x20,0x69,0x6e,0x20,0x61,0x73,0x79,0x6e,0x63,0x20,0x6d,0x6f,0x64,\n    0x65,0x2c,0x20,0x74,0x68,0x65,0x20,0x64,0x65,0x62,0x75,0x67,0x67,0x65,0x72,0x20,\n    0x57,0x49,0x4c,0x4c,0x20,0x77,0x61,0x69,0x74,0x20,0x66,0x6f,0x72,0x20,0x66,0x75,\n    0x72,0x74,0x68,0x65,0x72,0x20,0x63,0x6f,0x6d,0x6d,0x61,0x6e,0x64,0x73,0x20,0x69,\n    0x6e,0x73,0x74,0x65,0x61,0x64,0x20,0x6f,0x66,0x20,0x63,0x6f,0x6e,0x74,0x69,0x6e,\n    0x75,0x69,0x6e,0x67,0x20,0x28,0x74,0x79,0x70,0x69,0x63,0x61,0x6c,0x6c,0x79,0x2c,\n    0x20,0x62,0x72,0x65,0x61,0x6b,0x20,0x63,0x6f,0x6d,0x6d,0x61,0x6e,0x64,0x29,0x0a,\n    0x2d,0x2d,0x20,0x20,0x20,0x2a,0x20,0x6e,0x69,0x6c,0x2f,0x6e,0x6f,0x20,0x72,0x65,\n    0x74,0x75,0x72,0x6e,0x20,0x3a,0x20,0x69,0x6e,0x20,0x73,0x79,0x6e,0x63,0x20,0x6d,\n    0x6f,0x64,0x65,0x2c,0x20,0x74,0x68,0x65,0x20,0x64,0x65,0x62,0x75,0x67,0x67,0x65,\n    0x72,0x20,0x77,0x69,0x6c,0x6c,0x20,0x77,0x61,0x69,0x74,0x20,0x66,0x6f,0x72,0x20,\n    0x61,0x6e,0x6f,0x74,0x68,0x65,0x72,0x20,0x63,0x6f,0x6d,0x6d,0x61,0x6e,0x64,0x2e,\n    0x20,0x49,0x6e,0x20,0x61,0x73,0x79,0x6e,0x63,0x20,0x6d,0x6f,0x64,0x65,0x20,0x74,\n    0x68,0x65,0x20,0x64,0x65,0x62,0x75,0x67,0x67,0x65,0x72,0x20,0x77,0x69,0x6c,0x6c,\n    0x20,0x63,0x6f,0x6e,0x74,0x69,0x6e,0x75,0x65,0x20,0x74,0x68,0x65,0x20,0x65,0x78,\n    0x65,0x63,0x75,0x74,0x69,0x6f,0x6e,0x0a,0x0a,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x63,\n    0x6f,0x77,0x72,0x61,0x70,0x2c,0x20,0x63,0x6f,0x79,0x69,0x65,0x6c,0x64,0x20,0x3d,\n    0x20,0x63,0x6f,0x72,0x6f,0x75,0x74,0x69,0x6e,0x65,0x2e,0x77,0x72,0x61,0x70,0x2c,\n    0x20,0x63,0x6f,0x72,0x6f,0x75,0x74,0x69,0x6e,0x65,0x2e,0x79,0x69,0x65,0x6c,0x64,\n    0x0a,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x64,0x65,0x62,0x75,0x67,0x20,0x3d,0x20,0x72,\n    0x65,0x71,0x75,0x69,0x72,0x65,0x20,0x22,0x64,0x65,0x62,0x75,0x67,0x22,0x0a,0x0a,\n    0x6c,0x6f,0x63,0x61,0x6c,0x20,0x63,0x6f,0x72,0x65,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x3d,0x20,0x72,0x65,0x71,0x75,0x69,0x72,0x65,0x20,0x22,0x64,\n    0x65,0x62,0x75,0x67,0x67,0x65,0x72,0x2e,0x63,0x6f,0x72,0x65,0x22,0x0a,0x6c,0x6f,\n    0x63,0x61,0x6c,0x20,0x64,0x62,0x67,0x70,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x3d,0x20,0x72,0x65,0x71,0x75,0x69,0x72,0x65,0x20,0x22,0x64,0x65,0x62,\n    0x75,0x67,0x67,0x65,0x72,0x2e,0x64,0x62,0x67,0x70,0x22,0x0a,0x6c,0x6f,0x63,0x61,\n    0x6c,0x20,0x75,0x74,0x69,0x6c,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x3d,0x20,0x72,0x65,0x71,0x75,0x69,0x72,0x65,0x20,0x22,0x64,0x65,0x62,0x75,0x67,\n    0x67,0x65,0x72,0x2e,0x75,0x74,0x69,0x6c,0x22,0x0a,0x6c,0x6f,0x63,0x61,0x6c,0x20,\n    0x70,0x6c,0x61,0x74,0x66,0x6f,0x72,0x6d,0x20,0x20,0x20,0x20,0x20,0x20,0x3d,0x20,\n    0x72,0x65,0x71,0x75,0x69,0x72,0x65,0x20,0x22,0x64,0x65,0x62,0x75,0x67,0x67,0x65,\n    0x72,0x2e,0x70,0x6c,0x61,0x74,0x66,0x6f,0x72,0x6d,0x22,0x0a,0x6c,0x6f,0x63,0x61,\n    0x6c,0x20,0x69,0x6e,0x74,0x72,0x6f,0x73,0x70,0x65,0x63,0x74,0x69,0x6f,0x6e,0x20,\n    0x3d,0x20,0x72,0x65,0x71,0x75,0x69,0x72,0x65,0x20,0x22,0x64,0x65,0x62,0x75,0x67,\n    0x67,0x65,0x72,0x2e,0x69,0x6e,0x74,0x72,0x6f,0x73,0x70,0x65,0x63,0x74,0x69,0x6f,\n    0x6e,0x22,0x0a,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x63,0x6f,0x6e,0x74,0x65,0x78,0x74,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x3d,0x20,0x72,0x65,0x71,0x75,0x69,0x72,0x65,\n    0x20,0x22,0x64,0x65,0x62,0x75,0x67,0x67,0x65,0x72,0x2e,0x63,0x6f,0x6e,0x74,0x65,\n    0x78,0x74,0x22,0x0a,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x6c,0x6f,0x67,0x20,0x3d,0x20,\n    0x75,0x74,0x69,0x6c,0x2e,0x6c,0x6f,0x67,0x0a,0x0a,0x6c,0x6f,0x63,0x61,0x6c,0x20,\n    0x4d,0x20,0x3d,0x20,0x7b,0x20,0x7d,0x20,0x2d,0x2d,0x20,0x63,0x6f,0x6d,0x6d,0x61,\n    0x6e,0x64,0x20,0x68,0x61,0x6e,0x64,0x6c,0x65,0x72,0x73,0x20,0x74,0x61,0x62,0x6c,\n    0x65,0x0a,0x0a,0x2d,0x2d,0x2d,0x20,0x47,0x65,0x74,0x73,0x20,0x74,0x68,0x65,0x20,\n    0x63,0x6f,0x72,0x6f,0x75,0x74,0x69,0x6e,0x65,0x20,0x62,0x65,0x68,0x69,0x6e,0x64,\n    0x20,0x61,0x6e,0x20,0x69,0x64,0x0a,0x2d,0x2d,0x20,0x54,0x68,0x72,0x6f,0x77,0x73,\n    0x20,0x65,0x72,0x72,0x6f,0x72,0x73,0x20,0x6f,0x6e,0x20,0x75,0x6e,0x6b,0x6e,0x6f,\n    0x77,0x6e,0x20,0x69,0x64,0x65,0x6e,0x74,0x69,0x66,0x69,0x65,0x72,0x73,0x0a,0x2d,\n    0x2d,0x20,0x40,0x70,0x61,0x72,0x61,0x6d,0x20,0x20,0x63,0x6f,0x72,0x6f,0x5f,0x69,\n    0x64,0x20,0x20,0x28,0x73,0x74,0x72,0x69,0x6e,0x67,0x20,0x6f,0x72,0x20,0x6e,0x69,\n    0x6c,0x29,0x20,0x43,0x6f,0x72,0x6f,0x75,0x74,0x69,0x6e,0x65,0x20,0x69,0x64,0x65,\n    0x6e,0x74,0x69,0x66,0x69,0x65,0x72,0x20,0x6f,0x72,0x20,0x6e,0x69,0x6c,0x20,0x28,\n    0x63,0x75,0x72,0x72,0x65,0x6e,0x74,0x20,0x63,0x6f,0x72,0x6f,0x75,0x74,0x69,0x6e,\n    0x65,0x29,0x0a,0x2d,0x2d,0x20,0x40,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x43,0x6f,\n    0x72,0x6f,0x75,0x74,0x69,0x6e,0x65,0x20,0x69,0x6e,0x73,0x74,0x61,0x6e,0x63,0x65,\n    0x20,0x6f,0x72,0x20,0x6e,0x69,0x6c,0x20,0x28,0x69,0x66,0x20,0x63,0x6f,0x72,0x6f,\n    0x5f,0x69,0x64,0x20,0x77,0x61,0x73,0x20,0x6e,0x69,0x6c,0x20,0x6f,0x72,0x20,0x69,\n    0x66,0x20,0x63,0x6f,0x72,0x6f,0x75,0x74,0x69,0x6e,0x65,0x20,0x69,0x73,0x20,0x74,\n    0x68,0x65,0x20,0x63,0x75,0x72,0x72,0x65,0x6e,0x74,0x20,0x63,0x6f,0x72,0x6f,0x75,\n    0x74,0x69,0x6e,0x65,0x29,0x0a,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x66,0x75,0x6e,0x63,\n    0x74,0x69,0x6f,0x6e,0x20,0x67,0x65,0x74,0x5f,0x63,0x6f,0x72,0x6f,0x75,0x74,0x69,\n    0x6e,0x65,0x28,0x73,0x65,0x6c,0x66,0x2c,0x20,0x63,0x6f,0x72,0x6f,0x5f,0x69,0x64,\n    0x29,0x0a,0x20,0x20,0x20,0x20,0x69,0x66,0x20,0x63,0x6f,0x72,0x6f,0x5f,0x69,0x64,\n    0x20,0x74,0x68,0x65,0x6e,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x6c,0x6f,\n    0x63,0x61,0x6c,0x20,0x63,0x6f,0x72,0x6f,0x20,0x3d,0x20,0x64,0x62,0x67,0x70,0x2e,\n    0x61,0x73,0x73,0x65,0x72,0x74,0x28,0x33,0x39,0x39,0x2c,0x20,0x63,0x6f,0x72,0x65,\n    0x2e,0x61,0x63,0x74,0x69,0x76,0x65,0x5f,0x63,0x6f,0x72,0x6f,0x75,0x74,0x69,0x6e,\n    0x65,0x73,0x2e,0x66,0x72,0x6f,0x6d,0x5f,0x69,0x64,0x5b,0x74,0x6f,0x6e,0x75,0x6d,\n    0x62,0x65,0x72,0x28,0x63,0x6f,0x72,0x6f,0x5f,0x69,0x64,0x29,0x5d,0x2c,0x20,0x22,\n    0x4e,0x6f,0x20,0x73,0x75,0x63,0x68,0x20,0x63,0x6f,0x72,0x6f,0x75,0x74,0x69,0x6e,\n    0x65,0x22,0x29,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x64,0x62,0x67,0x70,\n    0x2e,0x61,0x73,0x73,0x65,0x72,0x74,0x28,0x33,0x39,0x39,0x2c,0x20,0x63,0x6f,0x72,\n    0x6f,0x75,0x74,0x69,0x6e,0x65,0x2e,0x73,0x74,0x61,0x74,0x75,0x73,0x28,0x63,0x6f,\n    0x72,0x6f,0x29,0x20,0x7e,0x3d,0x20,0x22,0x64,0x65,0x61,0x64,0x22,0x2c,0x20,0x22,\n    0x43,0x6f,0x72,0x6f,0x75,0x74,0x69,0x6e,0x65,0x20,0x69,0x73,0x20,0x64,0x65,0x61,\n    0x64,0x22,0x29,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x69,0x66,0x20,0x63,\n    0x6f,0x72,0x6f,0x20,0x7e,0x3d,0x20,0x73,0x65,0x6c,0x66,0x2e,0x63,0x6f,0x72,0x6f,\n    0x5b,0x31,0x5d,0x20,0x74,0x68,0x65,0x6e,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,\n    0x75,0x74,0x69,0x6c,0x2e,0x46,0x6f,0x72,0x65,0x69,0x67,0x6e,0x54,0x68,0x72,0x65,\n    0x61,0x64,0x28,0x63,0x6f,0x72,0x6f,0x29,0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,0x20,\n    0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,0x20,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,\n    0x73,0x65,0x6c,0x66,0x2e,0x63,0x6f,0x72,0x6f,0x0a,0x65,0x6e,0x64,0x0a,0x0a,0x4d,\n    0x5b,0x22,0x62,0x72,0x65,0x61,0x6b,0x22,0x5d,0x20,0x3d,0x20,0x66,0x75,0x6e,0x63,\n    0x74,0x69,0x6f,0x6e,0x28,0x73,0x65,0x6c,0x66,0x2c,0x20,0x61,0x72,0x67,0x73,0x29,\n    0x0a,0x20,0x20,0x20,0x20,0x73,0x65,0x6c,0x66,0x2e,0x73,0x74,0x61,0x74,0x65,0x20,\n    0x3d,0x20,0x22,0x62,0x72,0x65,0x61,0x6b,0x22,0x0a,0x20,0x20,0x20,0x20,0x2d,0x2d,\n    0x20,0x73,0x65,0x6e,0x64,0x20,0x72,0x65,0x73,0x70,0x6f,0x6e,0x73,0x65,0x20,0x74,\n    0x6f,0x20,0x70,0x72,0x65,0x76,0x69,0x6f,0x75,0x73,0x20,0x63,0x6f,0x6d,0x6d,0x61,\n    0x6e,0x64,0x0a,0x20,0x20,0x20,0x20,0x63,0x6f,0x72,0x65,0x2e,0x70,0x72,0x65,0x76,\n    0x69,0x6f,0x75,0x73,0x5f,0x63,0x6f,0x6e,0x74,0x65,0x78,0x74,0x5f,0x72,0x65,0x73,\n    0x70,0x6f,0x6e,0x73,0x65,0x28,0x73,0x65,0x6c,0x66,0x29,0x0a,0x20,0x20,0x20,0x20,\n    0x2d,0x2d,0x20,0x61,0x6e,0x64,0x20,0x74,0x68,0x65,0x6e,0x20,0x72,0x65,0x73,0x70,\n    0x6f,0x6e,0x73,0x65,0x20,0x74,0x6f,0x20,0x62,0x72,0x65,0x61,0x6b,0x20,0x63,0x6f,\n    0x6d,0x6d,0x61,0x6e,0x64,0x20,0x69,0x74,0x73,0x65,0x6c,0x66,0x0a,0x20,0x20,0x20,\n    0x20,0x64,0x62,0x67,0x70,0x2e,0x73,0x65,0x6e,0x64,0x5f,0x78,0x6d,0x6c,0x28,0x73,\n    0x65,0x6c,0x66,0x2e,0x73,0x6b,0x74,0x2c,0x20,0x7b,0x20,0x74,0x61,0x67,0x20,0x3d,\n    0x20,0x22,0x72,0x65,0x73,0x70,0x6f,0x6e,0x73,0x65,0x22,0x2c,0x20,0x61,0x74,0x74,\n    0x72,0x20,0x3d,0x20,0x7b,0x20,0x63,0x6f,0x6d,0x6d,0x61,0x6e,0x64,0x20,0x3d,0x20,\n    0x22,0x62,0x72,0x65,0x61,0x6b,0x22,0x2c,0x20,0x74,0x72,0x61,0x6e,0x73,0x61,0x63,\n    0x74,0x69,0x6f,0x6e,0x5f,0x69,0x64,0x20,0x3d,0x20,0x61,0x72,0x67,0x73,0x2e,0x69,\n    0x2c,0x20,0x73,0x75,0x63,0x63,0x65,0x73,0x73,0x20,0x3d,0x20,0x31,0x20,0x7d,0x20,\n    0x7d,0x20,0x29,0x0a,0x20,0x20,0x20,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x66,\n    0x61,0x6c,0x73,0x65,0x0a,0x65,0x6e,0x64,0x0a,0x0a,0x66,0x75,0x6e,0x63,0x74,0x69,\n    0x6f,0x6e,0x20,0x4d,0x2e,0x73,0x74,0x61,0x74,0x75,0x73,0x28,0x73,0x65,0x6c,0x66,\n    0x2c,0x20,0x61,0x72,0x67,0x73,0x29,0x0a,0x20,0x20,0x20,0x20,0x64,0x62,0x67,0x70,\n    0x2e,0x73,0x65,0x6e,0x64,0x5f,0x78,0x6d,0x6c,0x28,0x73,0x65,0x6c,0x66,0x2e,0x73,\n    0x6b,0x74,0x2c,0x20,0x7b,0x20,0x74,0x61,0x67,0x20,0x3d,0x20,0x22,0x72,0x65,0x73,\n    0x70,0x6f,0x6e,0x73,0x65,0x22,0x2c,0x20,0x61,0x74,0x74,0x72,0x20,0x3d,0x20,0x7b,\n    0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x63,0x6f,0x6d,0x6d,0x61,0x6e,0x64,\n    0x20,0x3d,0x20,0x22,0x73,0x74,0x61,0x74,0x75,0x73,0x22,0x2c,0x0a,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x72,0x65,0x61,0x73,0x6f,0x6e,0x20,0x3d,0x20,0x22,0x6f,\n    0x6b,0x22,0x2c,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x73,0x74,0x61,0x74,\n    0x75,0x73,0x20,0x3d,0x20,0x73,0x65,0x6c,0x66,0x2e,0x73,0x74,0x61,0x74,0x65,0x2c,\n    0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x74,0x72,0x61,0x6e,0x73,0x61,0x63,\n    0x74,0x69,0x6f,0x6e,0x5f,0x69,0x64,0x20,0x3d,0x20,0x61,0x72,0x67,0x73,0x2e,0x69,\n    0x20,0x7d,0x20,0x7d,0x20,0x29,0x0a,0x65,0x6e,0x64,0x0a,0x0a,0x66,0x75,0x6e,0x63,\n    0x74,0x69,0x6f,0x6e,0x20,0x4d,0x2e,0x73,0x74,0x6f,0x70,0x28,0x73,0x65,0x6c,0x66,\n    0x2c,0x20,0x61,0x72,0x67,0x73,0x29,0x0a,0x20,0x20,0x20,0x20,0x64,0x62,0x67,0x70,\n    0x2e,0x73,0x65,0x6e,0x64,0x5f,0x78,0x6d,0x6c,0x28,0x73,0x65,0x6c,0x66,0x2e,0x73,\n    0x6b,0x74,0x2c,0x20,0x7b,0x20,0x74,0x61,0x67,0x20,0x3d,0x20,0x22,0x72,0x65,0x73,\n    0x70,0x6f,0x6e,0x73,0x65,0x22,0x2c,0x20,0x61,0x74,0x74,0x72,0x20,0x3d,0x20,0x7b,\n    0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x63,0x6f,0x6d,0x6d,0x61,0x6e,0x64,\n    0x20,0x3d,0x20,0x22,0x73,0x74,0x6f,0x70,0x22,0x2c,0x0a,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x72,0x65,0x61,0x73,0x6f,0x6e,0x20,0x3d,0x20,0x22,0x6f,0x6b,0x22,\n    0x2c,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x73,0x74,0x61,0x74,0x75,0x73,\n    0x20,0x3d,0x20,0x22,0x73,0x74,0x6f,0x70,0x70,0x65,0x64,0x22,0x2c,0x0a,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x74,0x72,0x61,0x6e,0x73,0x61,0x63,0x74,0x69,0x6f,\n    0x6e,0x5f,0x69,0x64,0x20,0x3d,0x20,0x61,0x72,0x67,0x73,0x2e,0x69,0x20,0x7d,0x20,\n    0x7d,0x20,0x29,0x0a,0x20,0x20,0x20,0x20,0x73,0x65,0x6c,0x66,0x2e,0x73,0x6b,0x74,\n    0x3a,0x63,0x6c,0x6f,0x73,0x65,0x28,0x29,0x0a,0x20,0x20,0x20,0x20,0x6f,0x73,0x2e,\n    0x65,0x78,0x69,0x74,0x28,0x31,0x29,0x0a,0x65,0x6e,0x64,0x0a,0x0a,0x66,0x75,0x6e,\n    0x63,0x74,0x69,0x6f,0x6e,0x20,0x4d,0x2e,0x66,0x65,0x61,0x74,0x75,0x72,0x65,0x5f,\n    0x67,0x65,0x74,0x28,0x73,0x65,0x6c,0x66,0x2c,0x20,0x61,0x72,0x67,0x73,0x29,0x0a,\n    0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x6e,0x61,0x6d,0x65,0x20,0x3d,\n    0x20,0x61,0x72,0x67,0x73,0x2e,0x6e,0x0a,0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,0x61,\n    0x6c,0x20,0x72,0x65,0x73,0x70,0x6f,0x6e,0x73,0x65,0x20,0x3d,0x20,0x75,0x74,0x69,\n    0x6c,0x2e,0x66,0x65,0x61,0x74,0x75,0x72,0x65,0x73,0x5b,0x6e,0x61,0x6d,0x65,0x5d,\n    0x20,0x6f,0x72,0x20,0x28,0x6e,0x6f,0x74,0x20,0x6e,0x6f,0x74,0x20,0x4d,0x5b,0x6e,\n    0x61,0x6d,0x65,0x5d,0x29,0x0a,0x20,0x20,0x20,0x20,0x64,0x62,0x67,0x70,0x2e,0x73,\n    0x65,0x6e,0x64,0x5f,0x78,0x6d,0x6c,0x28,0x73,0x65,0x6c,0x66,0x2e,0x73,0x6b,0x74,\n    0x2c,0x20,0x7b,0x20,0x74,0x61,0x67,0x20,0x3d,0x20,0x22,0x72,0x65,0x73,0x70,0x6f,\n    0x6e,0x73,0x65,0x22,0x2c,0x20,0x61,0x74,0x74,0x72,0x20,0x3d,0x20,0x7b,0x0a,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x63,0x6f,0x6d,0x6d,0x61,0x6e,0x64,\n    0x20,0x3d,0x20,0x22,0x66,0x65,0x61,0x74,0x75,0x72,0x65,0x5f,0x67,0x65,0x74,0x22,\n    0x2c,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x66,0x65,0x61,0x74,\n    0x75,0x72,0x65,0x5f,0x6e,0x61,0x6d,0x65,0x20,0x3d,0x20,0x6e,0x61,0x6d,0x65,0x2c,\n    0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x73,0x75,0x70,0x70,0x6f,\n    0x72,0x74,0x65,0x64,0x20,0x3d,0x20,0x72,0x65,0x73,0x70,0x6f,0x6e,0x73,0x65,0x20,\n    0x61,0x6e,0x64,0x20,0x22,0x31,0x22,0x20,0x6f,0x72,0x20,0x22,0x30,0x22,0x2c,0x0a,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x74,0x72,0x61,0x6e,0x73,0x61,\n    0x63,0x74,0x69,0x6f,0x6e,0x5f,0x69,0x64,0x20,0x3d,0x20,0x61,0x72,0x67,0x73,0x2e,\n    0x69,0x20,0x7d,0x2c,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x74,0x6f,0x73,\n    0x74,0x72,0x69,0x6e,0x67,0x28,0x72,0x65,0x73,0x70,0x6f,0x6e,0x73,0x65,0x29,0x20,\n    0x7d,0x20,0x29,0x0a,0x65,0x6e,0x64,0x0a,0x0a,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,\n    0x6e,0x20,0x4d,0x2e,0x66,0x65,0x61,0x74,0x75,0x72,0x65,0x5f,0x73,0x65,0x74,0x28,\n    0x73,0x65,0x6c,0x66,0x2c,0x20,0x61,0x72,0x67,0x73,0x29,0x0a,0x20,0x20,0x20,0x20,\n    0x6c,0x6f,0x63,0x61,0x6c,0x20,0x6e,0x61,0x6d,0x65,0x2c,0x20,0x76,0x61,0x6c,0x75,\n    0x65,0x20,0x3d,0x20,0x61,0x72,0x67,0x73,0x2e,0x6e,0x2c,0x20,0x61,0x72,0x67,0x73,\n    0x2e,0x76,0x0a,0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x73,0x75,0x63,\n    0x63,0x65,0x73,0x73,0x20,0x3d,0x20,0x70,0x63,0x61,0x6c,0x6c,0x28,0x66,0x75,0x6e,\n    0x63,0x74,0x69,0x6f,0x6e,0x28,0x29,0x20,0x75,0x74,0x69,0x6c,0x2e,0x66,0x65,0x61,\n    0x74,0x75,0x72,0x65,0x73,0x5b,0x6e,0x61,0x6d,0x65,0x5d,0x20,0x3d,0x20,0x76,0x61,\n    0x6c,0x75,0x65,0x20,0x65,0x6e,0x64,0x29,0x0a,0x20,0x20,0x20,0x20,0x64,0x62,0x67,\n    0x70,0x2e,0x73,0x65,0x6e,0x64,0x5f,0x78,0x6d,0x6c,0x28,0x73,0x65,0x6c,0x66,0x2e,\n    0x73,0x6b,0x74,0x2c,0x20,0x7b,0x20,0x74,0x61,0x67,0x20,0x3d,0x20,0x22,0x72,0x65,\n    0x73,0x70,0x6f,0x6e,0x73,0x65,0x22,0x2c,0x20,0x61,0x74,0x74,0x72,0x20,0x3d,0x20,\n    0x7b,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x63,0x6f,0x6d,0x6d,0x61,0x6e,\n    0x64,0x20,0x3d,0x20,0x22,0x66,0x65,0x61,0x74,0x75,0x72,0x65,0x5f,0x73,0x65,0x74,\n    0x22,0x2c,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x66,0x65,0x61,0x74,0x75,\n    0x72,0x65,0x20,0x3d,0x20,0x6e,0x61,0x6d,0x65,0x2c,0x0a,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x73,0x75,0x63,0x63,0x65,0x73,0x73,0x20,0x3d,0x20,0x73,0x75,0x63,\n    0x63,0x65,0x73,0x73,0x20,0x61,0x6e,0x64,0x20,0x31,0x20,0x6f,0x72,0x20,0x30,0x2c,\n    0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x74,0x72,0x61,0x6e,0x73,0x61,0x63,\n    0x74,0x69,0x6f,0x6e,0x5f,0x69,0x64,0x20,0x3d,0x20,0x61,0x72,0x67,0x73,0x2e,0x69,\n    0x0a,0x20,0x20,0x20,0x20,0x7d,0x20,0x7d,0x20,0x29,0x0a,0x65,0x6e,0x64,0x0a,0x0a,\n    0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x20,0x4d,0x2e,0x74,0x79,0x70,0x65,0x6d,\n    0x61,0x70,0x5f,0x67,0x65,0x74,0x28,0x73,0x65,0x6c,0x66,0x2c,0x20,0x61,0x72,0x67,\n    0x73,0x29,0x0a,0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x66,0x75,0x6e,\n    0x63,0x74,0x69,0x6f,0x6e,0x20,0x67,0x65,0x6e,0x74,0x79,0x70,0x65,0x28,0x6e,0x61,\n    0x6d,0x65,0x2c,0x20,0x74,0x79,0x70,0x65,0x2c,0x20,0x78,0x73,0x64,0x74,0x79,0x70,\n    0x65,0x29,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x72,0x65,0x74,0x75,0x72,\n    0x6e,0x20,0x7b,0x20,0x74,0x61,0x67,0x20,0x3d,0x20,0x22,0x6d,0x61,0x70,0x22,0x2c,\n    0x20,0x61,0x74,0x74,0x73,0x20,0x3d,0x20,0x7b,0x20,0x6e,0x61,0x6d,0x65,0x20,0x3d,\n    0x20,0x6e,0x61,0x6d,0x65,0x2c,0x20,0x74,0x79,0x70,0x65,0x20,0x3d,0x20,0x74,0x79,\n    0x70,0x65,0x2c,0x20,0x5b,0x22,0x78,0x73,0x69,0x3a,0x74,0x79,0x70,0x65,0x22,0x5d,\n    0x20,0x3d,0x20,0x78,0x73,0x64,0x74,0x79,0x70,0x65,0x20,0x7d,0x20,0x7d,0x0a,0x20,\n    0x20,0x20,0x20,0x65,0x6e,0x64,0x0a,0x0a,0x20,0x20,0x20,0x20,0x64,0x62,0x67,0x70,\n    0x2e,0x73,0x65,0x6e,0x64,0x5f,0x78,0x6d,0x6c,0x28,0x73,0x65,0x6c,0x66,0x2e,0x73,\n    0x6b,0x74,0x2c,0x20,0x7b,0x20,0x74,0x61,0x67,0x20,0x3d,0x20,0x22,0x72,0x65,0x73,\n    0x70,0x6f,0x6e,0x73,0x65,0x22,0x2c,0x20,0x61,0x74,0x74,0x72,0x20,0x3d,0x20,0x7b,\n    0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x63,0x6f,0x6d,\n    0x6d,0x61,0x6e,0x64,0x20,0x3d,0x20,0x22,0x74,0x79,0x70,0x65,0x6d,0x61,0x70,0x5f,\n    0x67,0x65,0x74,0x22,0x2c,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x74,0x72,0x61,0x6e,0x73,0x61,0x63,0x74,0x69,0x6f,0x6e,0x5f,0x69,0x64,\n    0x20,0x3d,0x20,0x61,0x72,0x67,0x73,0x2e,0x69,0x2c,0x0a,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x5b,0x22,0x78,0x6d,0x6c,0x6e,0x73,0x3a,0x78,\n    0x73,0x69,0x22,0x5d,0x20,0x3d,0x20,0x22,0x68,0x74,0x74,0x70,0x3a,0x2f,0x2f,0x77,\n    0x77,0x77,0x2e,0x77,0x33,0x2e,0x6f,0x72,0x67,0x2f,0x32,0x30,0x30,0x31,0x2f,0x58,\n    0x4d,0x4c,0x53,0x63,0x68,0x65,0x6d,0x61,0x2d,0x69,0x6e,0x73,0x74,0x61,0x6e,0x63,\n    0x65,0x22,0x2c,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x5b,0x22,0x78,0x6d,0x6c,0x6e,0x73,0x3a,0x78,0x73,0x64,0x22,0x5d,0x20,0x3d,0x20,\n    0x22,0x68,0x74,0x74,0x70,0x3a,0x2f,0x2f,0x77,0x77,0x77,0x2e,0x77,0x33,0x2e,0x6f,\n    0x72,0x67,0x2f,0x32,0x30,0x30,0x31,0x2f,0x58,0x4d,0x4c,0x53,0x63,0x68,0x65,0x6d,\n    0x61,0x22,0x2c,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x7d,0x2c,0x0a,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x67,0x65,0x6e,0x74,0x79,0x70,0x65,0x28,0x22,\n    0x6e,0x69,0x6c,0x22,0x2c,0x20,0x22,0x6e,0x75,0x6c,0x6c,0x22,0x29,0x2c,0x0a,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x67,0x65,0x6e,0x74,0x79,0x70,0x65,0x28,0x22,\n    0x62,0x6f,0x6f,0x6c,0x65,0x61,0x6e,0x22,0x2c,0x20,0x22,0x62,0x6f,0x6f,0x6c,0x22,\n    0x2c,0x20,0x22,0x78,0x73,0x64,0x3a,0x62,0x6f,0x6f,0x6c,0x65,0x61,0x6e,0x22,0x29,\n    0x2c,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x67,0x65,0x6e,0x74,0x79,0x70,\n    0x65,0x28,0x22,0x6e,0x75,0x6d,0x62,0x65,0x72,0x22,0x2c,0x20,0x22,0x66,0x6c,0x6f,\n    0x61,0x74,0x22,0x2c,0x20,0x22,0x78,0x73,0x64,0x3a,0x66,0x6c,0x6f,0x61,0x74,0x22,\n    0x29,0x2c,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x67,0x65,0x6e,0x74,0x79,\n    0x70,0x65,0x28,0x22,0x73,0x74,0x72,0x69,0x6e,0x67,0x22,0x2c,0x20,0x22,0x73,0x74,\n    0x72,0x69,0x6e,0x67,0x22,0x2c,0x20,0x22,0x78,0x73,0x64,0x3a,0x73,0x74,0x72,0x69,\n    0x6e,0x67,0x22,0x29,0x2c,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x67,0x65,\n    0x6e,0x74,0x79,0x70,0x65,0x28,0x22,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x22,\n    0x2c,0x20,0x22,0x72,0x65,0x73,0x6f,0x75,0x72,0x63,0x65,0x22,0x29,0x2c,0x0a,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x67,0x65,0x6e,0x74,0x79,0x70,0x65,0x28,0x22,\n    0x75,0x73,0x65,0x72,0x64,0x61,0x74,0x61,0x22,0x2c,0x20,0x22,0x72,0x65,0x73,0x6f,\n    0x75,0x72,0x63,0x65,0x22,0x29,0x2c,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x67,0x65,0x6e,0x74,0x79,0x70,0x65,0x28,0x22,0x74,0x68,0x72,0x65,0x61,0x64,0x22,\n    0x2c,0x20,0x22,0x72,0x65,0x73,0x6f,0x75,0x72,0x63,0x65,0x22,0x29,0x2c,0x0a,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x67,0x65,0x6e,0x74,0x79,0x70,0x65,0x28,0x22,\n    0x74,0x61,0x62,0x6c,0x65,0x22,0x2c,0x20,0x22,0x68,0x61,0x73,0x68,0x22,0x29,0x2c,\n    0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x67,0x65,0x6e,0x74,0x79,0x70,0x65,\n    0x28,0x22,0x73,0x65,0x71,0x75,0x65,0x6e,0x63,0x65,0x22,0x2c,0x20,0x22,0x61,0x72,\n    0x72,0x61,0x79,0x22,0x29,0x2c,0x20,0x2d,0x2d,0x20,0x61,0x72,0x74,0x69,0x66,0x69,\n    0x63,0x69,0x61,0x6c,0x20,0x74,0x79,0x70,0x65,0x20,0x74,0x6f,0x20,0x72,0x65,0x70,\n    0x72,0x65,0x73,0x65,0x6e,0x74,0x20,0x73,0x65,0x71,0x75,0x65,0x6e,0x63,0x65,0x73,\n    0x20,0x28,0x31,0x2d,0x6e,0x20,0x63,0x6f,0x6e,0x74,0x69,0x6e,0x75,0x6f,0x75,0x73,\n    0x20,0x69,0x6e,0x64,0x65,0x78,0x65,0x73,0x29,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x67,0x65,0x6e,0x74,0x79,0x70,0x65,0x28,0x22,0x6d,0x75,0x6c,0x74,0x69,\n    0x76,0x61,0x6c,0x22,0x2c,0x20,0x22,0x61,0x72,0x72,0x61,0x79,0x22,0x29,0x2c,0x20,\n    0x2d,0x2d,0x20,0x75,0x73,0x65,0x64,0x20,0x74,0x6f,0x20,0x72,0x65,0x70,0x72,0x65,\n    0x73,0x65,0x6e,0x74,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x76,0x61,0x6c,0x75,\n    0x65,0x73,0x0a,0x20,0x20,0x20,0x20,0x7d,0x20,0x29,0x0a,0x65,0x6e,0x64,0x0a,0x0a,\n    0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x20,0x4d,0x2e,0x72,0x75,0x6e,0x28,0x73,\n    0x65,0x6c,0x66,0x29,0x0a,0x20,0x20,0x20,0x20,0x63,0x6f,0x72,0x65,0x2e,0x70,0x72,\n    0x65,0x76,0x5f,0x62,0x72,0x65,0x61,0x6b,0x5f,0x6c,0x69,0x6e,0x65,0x20,0x3d,0x20,\n    0x6e,0x69,0x6c,0x0a,0x20,0x20,0x20,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x74,\n    0x72,0x75,0x65,0x0a,0x65,0x6e,0x64,0x0a,0x0a,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,\n    0x6e,0x20,0x4d,0x2e,0x73,0x74,0x65,0x70,0x5f,0x6f,0x76,0x65,0x72,0x28,0x73,0x65,\n    0x6c,0x66,0x29,0x0a,0x20,0x20,0x20,0x20,0x63,0x6f,0x72,0x65,0x2e,0x65,0x76,0x65,\n    0x6e,0x74,0x73,0x2e,0x72,0x65,0x67,0x69,0x73,0x74,0x65,0x72,0x28,0x22,0x6f,0x76,\n    0x65,0x72,0x22,0x29,0x0a,0x20,0x20,0x20,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,\n    0x74,0x72,0x75,0x65,0x0a,0x65,0x6e,0x64,0x0a,0x0a,0x66,0x75,0x6e,0x63,0x74,0x69,\n    0x6f,0x6e,0x20,0x4d,0x2e,0x73,0x74,0x65,0x70,0x5f,0x6f,0x75,0x74,0x28,0x73,0x65,\n    0x6c,0x66,0x29,0x0a,0x20,0x20,0x20,0x20,0x63,0x6f,0x72,0x65,0x2e,0x65,0x76,0x65,\n    0x6e,0x74,0x73,0x2e,0x72,0x65,0x67,0x69,0x73,0x74,0x65,0x72,0x28,0x22,0x6f,0x75,\n    0x74,0x22,0x29,0x0a,0x20,0x20,0x20,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x74,\n    0x72,0x75,0x65,0x0a,0x65,0x6e,0x64,0x0a,0x0a,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,\n    0x6e,0x20,0x4d,0x2e,0x73,0x74,0x65,0x70,0x5f,0x69,0x6e,0x74,0x6f,0x28,0x73,0x65,\n    0x6c,0x66,0x29,0x0a,0x20,0x20,0x20,0x20,0x63,0x6f,0x72,0x65,0x2e,0x65,0x76,0x65,\n    0x6e,0x74,0x73,0x2e,0x72,0x65,0x67,0x69,0x73,0x74,0x65,0x72,0x28,0x22,0x69,0x6e,\n    0x74,0x6f,0x22,0x29,0x0a,0x20,0x20,0x20,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,\n    0x74,0x72,0x75,0x65,0x0a,0x65,0x6e,0x64,0x0a,0x0a,0x66,0x75,0x6e,0x63,0x74,0x69,\n    0x6f,0x6e,0x20,0x4d,0x2e,0x65,0x76,0x61,0x6c,0x28,0x73,0x65,0x6c,0x66,0x2c,0x20,\n    0x61,0x72,0x67,0x73,0x2c,0x20,0x64,0x61,0x74,0x61,0x29,0x0a,0x20,0x20,0x20,0x20,\n    0x6c,0x6f,0x67,0x28,0x22,0x44,0x45,0x42,0x55,0x47,0x22,0x2c,0x20,0x22,0x47,0x6f,\n    0x69,0x6e,0x67,0x20,0x74,0x6f,0x20,0x65,0x76,0x61,0x6c,0x20,0x22,0x2e,0x2e,0x64,\n    0x61,0x74,0x61,0x29,0x0a,0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x72,\n    0x65,0x73,0x75,0x6c,0x74,0x2c,0x20,0x65,0x72,0x72,0x2c,0x20,0x73,0x75,0x63,0x63,\n    0x65,0x73,0x73,0x0a,0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x65,0x6e,\n    0x76,0x20,0x3d,0x20,0x73,0x65,0x6c,0x66,0x2e,0x73,0x74,0x61,0x63,0x6b,0x28,0x73,\n    0x65,0x6c,0x66,0x2e,0x63,0x6f,0x72,0x6f,0x2c,0x20,0x30,0x29,0x0a,0x20,0x20,0x20,\n    0x20,0x2d,0x2d,0x20,0x66,0x69,0x72,0x73,0x74,0x2c,0x20,0x74,0x72,0x79,0x20,0x74,\n    0x6f,0x20,0x6c,0x6f,0x61,0x64,0x20,0x61,0x73,0x20,0x65,0x78,0x70,0x72,0x65,0x73,\n    0x73,0x69,0x6f,0x6e,0x0a,0x20,0x20,0x20,0x20,0x2d,0x2d,0x20,0x44,0x42,0x47,0x70,\n    0x20,0x64,0x6f,0x65,0x73,0x20,0x6e,0x6f,0x74,0x20,0x73,0x75,0x70,0x70,0x6f,0x72,\n    0x74,0x20,0x73,0x74,0x61,0x63,0x6b,0x20,0x6c,0x65,0x76,0x65,0x6c,0x20,0x68,0x65,\n    0x72,0x65,0x2c,0x20,0x73,0x65,0x65,0x20,0x68,0x74,0x74,0x70,0x3a,0x2f,0x2f,0x62,\n    0x75,0x67,0x73,0x2e,0x61,0x63,0x74,0x69,0x76,0x65,0x73,0x74,0x61,0x74,0x65,0x2e,\n    0x63,0x6f,0x6d,0x2f,0x73,0x68,0x6f,0x77,0x5f,0x62,0x75,0x67,0x2e,0x63,0x67,0x69,\n    0x3f,0x69,0x64,0x3d,0x38,0x31,0x31,0x37,0x38,0x0a,0x20,0x20,0x20,0x20,0x6c,0x6f,\n    0x63,0x61,0x6c,0x20,0x66,0x75,0x6e,0x63,0x2c,0x20,0x65,0x72,0x72,0x20,0x3d,0x20,\n    0x75,0x74,0x69,0x6c,0x2e,0x6c,0x6f,0x61,0x64,0x69,0x6e,0x28,0x22,0x72,0x65,0x74,\n    0x75,0x72,0x6e,0x20,0x22,0x2e,0x2e,0x64,0x61,0x74,0x61,0x2c,0x20,0x65,0x6e,0x76,\n    0x29,0x0a,0x0a,0x20,0x20,0x20,0x20,0x2d,0x2d,0x20,0x69,0x66,0x20,0x69,0x74,0x20,\n    0x69,0x73,0x20,0x6e,0x6f,0x74,0x20,0x61,0x6e,0x20,0x65,0x78,0x70,0x72,0x65,0x73,\n    0x73,0x69,0x6f,0x6e,0x2c,0x20,0x74,0x72,0x79,0x20,0x61,0x73,0x20,0x73,0x74,0x61,\n    0x74,0x65,0x6d,0x65,0x6e,0x74,0x20,0x28,0x61,0x73,0x73,0x69,0x67,0x6e,0x6d,0x65,\n    0x6e,0x74,0x2c,0x20,0x2e,0x2e,0x2e,0x29,0x0a,0x20,0x20,0x20,0x20,0x69,0x66,0x20,\n    0x6e,0x6f,0x74,0x20,0x66,0x75,0x6e,0x63,0x20,0x74,0x68,0x65,0x6e,0x0a,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x66,0x75,0x6e,0x63,0x2c,0x20,0x65,0x72,0x72,0x20,\n    0x3d,0x20,0x75,0x74,0x69,0x6c,0x2e,0x6c,0x6f,0x61,0x64,0x69,0x6e,0x28,0x64,0x61,\n    0x74,0x61,0x2c,0x20,0x65,0x6e,0x76,0x29,0x0a,0x20,0x20,0x20,0x20,0x65,0x6e,0x64,\n    0x0a,0x0a,0x20,0x20,0x20,0x20,0x69,0x66,0x20,0x66,0x75,0x6e,0x63,0x20,0x74,0x68,\n    0x65,0x6e,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x73,0x75,0x63,0x63,0x65,\n    0x73,0x73,0x2c,0x20,0x72,0x65,0x73,0x75,0x6c,0x74,0x20,0x3d,0x20,0x70,0x63,0x61,\n    0x6c,0x6c,0x28,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x28,0x29,0x20,0x72,0x65,\n    0x74,0x75,0x72,0x6e,0x20,0x69,0x6e,0x74,0x72,0x6f,0x73,0x70,0x65,0x63,0x74,0x69,\n    0x6f,0x6e,0x2e,0x4d,0x75,0x6c,0x74,0x69,0x76,0x61,0x6c,0x28,0x66,0x75,0x6e,0x63,\n    0x28,0x29,0x29,0x20,0x65,0x6e,0x64,0x29,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x69,0x66,0x20,0x6e,0x6f,0x74,0x20,0x73,0x75,0x63,0x63,0x65,0x73,0x73,0x20,\n    0x74,0x68,0x65,0x6e,0x20,0x65,0x72,0x72,0x20,0x3d,0x20,0x72,0x65,0x73,0x75,0x6c,\n    0x74,0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,0x20,0x20,0x65,0x6e,0x64,0x0a,0x0a,0x20,\n    0x20,0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x72,0x65,0x73,0x70,0x6f,0x6e,0x73,\n    0x65,0x20,0x3d,0x20,0x7b,0x20,0x74,0x61,0x67,0x20,0x3d,0x20,0x22,0x72,0x65,0x73,\n    0x70,0x6f,0x6e,0x73,0x65,0x22,0x2c,0x20,0x61,0x74,0x74,0x72,0x20,0x3d,0x20,0x7b,\n    0x20,0x63,0x6f,0x6d,0x6d,0x61,0x6e,0x64,0x20,0x3d,0x20,0x22,0x65,0x76,0x61,0x6c,\n    0x22,0x2c,0x20,0x74,0x72,0x61,0x6e,0x73,0x61,0x63,0x74,0x69,0x6f,0x6e,0x5f,0x69,\n    0x64,0x20,0x3d,0x20,0x61,0x72,0x67,0x73,0x2e,0x69,0x20,0x7d,0x20,0x7d,0x0a,0x20,\n    0x20,0x20,0x20,0x69,0x66,0x20,0x6e,0x6f,0x74,0x20,0x65,0x72,0x72,0x20,0x74,0x68,\n    0x65,0x6e,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,\n    0x20,0x6e,0x72,0x65,0x73,0x75,0x6c,0x74,0x73,0x20,0x3d,0x20,0x72,0x65,0x73,0x75,\n    0x6c,0x74,0x2e,0x6e,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x69,0x66,0x20,\n    0x6e,0x72,0x65,0x73,0x75,0x6c,0x74,0x73,0x20,0x3d,0x3d,0x20,0x31,0x20,0x74,0x68,\n    0x65,0x6e,0x20,0x72,0x65,0x73,0x75,0x6c,0x74,0x20,0x3d,0x20,0x72,0x65,0x73,0x75,\n    0x6c,0x74,0x5b,0x31,0x5d,0x20,0x65,0x6e,0x64,0x0a,0x0a,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x2d,0x2d,0x20,0x73,0x74,0x6f,0x72,0x65,0x20,0x72,0x65,0x73,0x75,\n    0x6c,0x74,0x20,0x66,0x6f,0x72,0x20,0x66,0x75,0x72,0x74,0x68,0x65,0x72,0x20,0x75,\n    0x73,0x65,0x20,0x28,0x70,0x72,0x6f,0x70,0x65,0x72,0x74,0x79,0x5f,0x2a,0x29,0x0a,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x2d,0x2d,0x20,0x54,0x4f,0x44,0x4f,0x3a,\n    0x20,0x74,0x68,0x69,0x73,0x20,0x63,0x6f,0x75,0x6c,0x64,0x20,0x62,0x65,0x20,0x6f,\n    0x70,0x74,0x69,0x6d,0x69,0x7a,0x65,0x64,0x3a,0x20,0x74,0x68,0x69,0x73,0x20,0x69,\n    0x73,0x20,0x6f,0x6e,0x6c,0x79,0x20,0x75,0x73,0x65,0x64,0x20,0x66,0x6f,0x72,0x20,\n    0x45,0x78,0x70,0x72,0x65,0x73,0x73,0x69,0x6f,0x6e,0x73,0x20,0x76,0x69,0x65,0x77,\n    0x20,0x61,0x6e,0x64,0x20,0x74,0x6f,0x74,0x61,0x6c,0x6c,0x79,0x20,0x75,0x73,0x65,\n    0x6c,0x65,0x73,0x73,0x20,0x66,0x6f,0x72,0x20,0x69,0x6e,0x74,0x65,0x72,0x61,0x63,\n    0x74,0x69,0x76,0x65,0x20,0x63,0x6f,0x6e,0x73,0x6f,0x6c,0x65,0x2c,0x0a,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x2d,0x2d,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x73,\n    0x6f,0x20,0x73,0x74,0x6f,0x72,0x69,0x6e,0x67,0x20,0x72,0x65,0x73,0x75,0x6c,0x74,\n    0x20,0x6f,0x72,0x20,0x6e,0x6f,0x74,0x20,0x63,0x6f,0x75,0x6c,0x64,0x20,0x62,0x65,\n    0x20,0x73,0x65,0x74,0x20,0x62,0x79,0x20,0x61,0x6e,0x20,0x61,0x72,0x67,0x75,0x6d,\n    0x65,0x6e,0x74,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,0x61,\n    0x6c,0x20,0x69,0x64,0x78,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x69,0x66,\n    0x20,0x6e,0x72,0x65,0x73,0x75,0x6c,0x74,0x73,0x20,0x3e,0x20,0x30,0x20,0x74,0x68,\n    0x65,0x6e,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x6c,\n    0x6f,0x63,0x61,0x6c,0x20,0x63,0x61,0x63,0x68,0x65,0x20,0x3d,0x20,0x65,0x6e,0x76,\n    0x5b,0x63,0x6f,0x6e,0x74,0x65,0x78,0x74,0x2e,0x43,0x6f,0x6e,0x74,0x65,0x78,0x74,\n    0x5b,0x2d,0x31,0x5d,0x5d,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x69,0x64,0x78,0x20,0x3d,0x20,0x23,0x63,0x61,0x63,0x68,0x65,0x20,0x2b,\n    0x20,0x31,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x63,\n    0x61,0x63,0x68,0x65,0x5b,0x69,0x64,0x78,0x5d,0x20,0x3d,0x20,0x72,0x65,0x73,0x75,\n    0x6c,0x74,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x65,0x6e,0x64,0x0a,0x0a,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x2d,0x2d,0x20,0x41,0x73,0x20,0x6f,0x66,\n    0x20,0x4c,0x75,0x61,0x20,0x35,0x2e,0x31,0x2c,0x20,0x74,0x68,0x65,0x20,0x6d,0x61,\n    0x78,0x69,0x6d,0x75,0x6d,0x20,0x73,0x74,0x61,0x63,0x6b,0x20,0x73,0x69,0x7a,0x65,\n    0x20,0x28,0x61,0x6e,0x64,0x20,0x72,0x65,0x73,0x75,0x6c,0x74,0x20,0x63,0x6f,0x75,\n    0x6e,0x74,0x29,0x20,0x69,0x73,0x20,0x38,0x30,0x30,0x30,0x2c,0x20,0x74,0x68,0x69,\n    0x73,0x20,0x6c,0x69,0x6d,0x69,0x74,0x20,0x69,0x73,0x20,0x75,0x73,0x65,0x64,0x20,\n    0x74,0x6f,0x20,0x66,0x69,0x74,0x20,0x61,0x6c,0x6c,0x20,0x72,0x65,0x73,0x75,0x6c,\n    0x74,0x73,0x20,0x69,0x6e,0x20,0x6f,0x6e,0x65,0x20,0x70,0x61,0x67,0x65,0x0a,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x72,0x65,0x73,0x70,0x6f,0x6e,0x73,0x65,0x5b,\n    0x31,0x5d,0x20,0x3d,0x20,0x69,0x6e,0x74,0x72,0x6f,0x73,0x70,0x65,0x63,0x74,0x69,\n    0x6f,0x6e,0x2e,0x6d,0x61,0x6b,0x65,0x5f,0x70,0x72,0x6f,0x70,0x65,0x72,0x74,0x79,\n    0x28,0x2d,0x31,0x2c,0x20,0x72,0x65,0x73,0x75,0x6c,0x74,0x2c,0x20,0x69,0x64,0x78,\n    0x20,0x6f,0x72,0x20,0x22,0x22,0x2c,0x20,0x6e,0x69,0x6c,0x2c,0x20,0x31,0x2c,0x20,\n    0x38,0x30,0x30,0x30,0x2c,0x20,0x30,0x2c,0x20,0x6e,0x69,0x6c,0x29,0x0a,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x72,0x65,0x73,0x70,0x6f,0x6e,0x73,0x65,0x2e,0x61,\n    0x74,0x74,0x72,0x2e,0x73,0x75,0x63,0x63,0x65,0x73,0x73,0x20,0x3d,0x20,0x31,0x0a,\n    0x20,0x20,0x20,0x20,0x65,0x6c,0x73,0x65,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x72,0x65,0x73,0x70,0x6f,0x6e,0x73,0x65,0x2e,0x61,0x74,0x74,0x72,0x2e,0x73,\n    0x75,0x63,0x63,0x65,0x73,0x73,0x20,0x3d,0x20,0x30,0x0a,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x72,0x65,0x73,0x70,0x6f,0x6e,0x73,0x65,0x5b,0x31,0x5d,0x20,0x3d,\n    0x20,0x64,0x62,0x67,0x70,0x2e,0x6d,0x61,0x6b,0x65,0x5f,0x65,0x72,0x72,0x6f,0x72,\n    0x28,0x32,0x30,0x36,0x2c,0x20,0x65,0x72,0x72,0x29,0x0a,0x20,0x20,0x20,0x20,0x65,\n    0x6e,0x64,0x0a,0x20,0x20,0x20,0x20,0x64,0x62,0x67,0x70,0x2e,0x73,0x65,0x6e,0x64,\n    0x5f,0x78,0x6d,0x6c,0x28,0x73,0x65,0x6c,0x66,0x2e,0x73,0x6b,0x74,0x2c,0x20,0x72,\n    0x65,0x73,0x70,0x6f,0x6e,0x73,0x65,0x29,0x0a,0x65,0x6e,0x64,0x0a,0x0a,0x66,0x75,\n    0x6e,0x63,0x74,0x69,0x6f,0x6e,0x20,0x4d,0x2e,0x62,0x72,0x65,0x61,0x6b,0x70,0x6f,\n    0x69,0x6e,0x74,0x5f,0x73,0x65,0x74,0x28,0x73,0x65,0x6c,0x66,0x2c,0x20,0x61,0x72,\n    0x67,0x73,0x2c,0x20,0x64,0x61,0x74,0x61,0x29,0x0a,0x20,0x20,0x20,0x20,0x69,0x66,\n    0x20,0x61,0x72,0x67,0x73,0x2e,0x6f,0x20,0x61,0x6e,0x64,0x20,0x6e,0x6f,0x74,0x20,\n    0x63,0x6f,0x72,0x65,0x2e,0x62,0x72,0x65,0x61,0x6b,0x70,0x6f,0x69,0x6e,0x74,0x73,\n    0x2e,0x68,0x69,0x74,0x5f,0x63,0x6f,0x6e,0x64,0x69,0x74,0x69,0x6f,0x6e,0x73,0x5b,\n    0x61,0x72,0x67,0x73,0x2e,0x6f,0x5d,0x20,0x74,0x68,0x65,0x6e,0x20,0x64,0x62,0x67,\n    0x70,0x2e,0x65,0x72,0x72,0x6f,0x72,0x28,0x32,0x30,0x30,0x2c,0x20,0x22,0x49,0x6e,\n    0x76,0x61,0x6c,0x69,0x64,0x20,0x68,0x69,0x74,0x5f,0x63,0x6f,0x6e,0x64,0x69,0x74,\n    0x69,0x6f,0x6e,0x20,0x6f,0x70,0x65,0x72,0x61,0x74,0x6f,0x72,0x3a,0x20,0x22,0x2e,\n    0x2e,0x61,0x72,0x67,0x73,0x2e,0x6f,0x29,0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,0x20,\n    0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x66,0x69,0x6c,0x65,0x6e,0x61,0x6d,0x65,0x2c,\n    0x20,0x6c,0x69,0x6e,0x65,0x6e,0x6f,0x20,0x3d,0x20,0x61,0x72,0x67,0x73,0x2e,0x66,\n    0x2c,0x20,0x74,0x6f,0x6e,0x75,0x6d,0x62,0x65,0x72,0x28,0x61,0x72,0x67,0x73,0x2e,\n    0x6e,0x29,0x0a,0x20,0x20,0x20,0x20,0x2d,0x2d,0x69,0x66,0x20,0x69,0x74,0x20,0x69,\n    0x73,0x20,0x6e,0x6f,0x74,0x20,0x69,0x6e,0x20,0x63,0x75,0x72,0x72,0x65,0x6e,0x74,\n    0x20,0x70,0x72,0x6f,0x6a,0x65,0x63,0x74,0x20,0x70,0x61,0x74,0x68,0x2c,0x20,0x69,\n    0x67,0x6e,0x6f,0x72,0x65,0x20,0x74,0x68,0x65,0x20,0x62,0x72,0x65,0x61,0x6b,0x70,\n    0x6f,0x69,0x6e,0x74,0x5f,0x73,0x65,0x74,0x20,0x63,0x6f,0x6d,0x6d,0x61,0x6e,0x64,\n    0x2c,0x20,0x73,0x65,0x6e,0x64,0x20,0x65,0x6d,0x70,0x74,0x79,0x20,0x72,0x65,0x73,\n    0x70,0x6f,0x6e,0x73,0x65,0x20,0x74,0x6f,0x20,0x61,0x76,0x6f,0x69,0x64,0x20,0x62,\n    0x6c,0x6f,0x63,0x6b,0x69,0x6e,0x67,0x20,0x28,0x61,0x64,0x64,0x20,0x62,0x79,0x20,\n    0x67,0x75,0x61,0x6e,0x79,0x75,0x29,0x0a,0x20,0x20,0x20,0x20,0x69,0x66,0x20,0x6e,\n    0x6f,0x74,0x20,0x66,0x69,0x6c,0x65,0x6e,0x61,0x6d,0x65,0x3a,0x66,0x69,0x6e,0x64,\n    0x28,0x70,0x6c,0x61,0x74,0x66,0x6f,0x72,0x6d,0x2e,0x62,0x61,0x73,0x65,0x5f,0x64,\n    0x69,0x72,0x2c,0x31,0x2c,0x74,0x72,0x75,0x65,0x29,0x20,0x74,0x68,0x65,0x6e,0x0a,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x64,0x62,0x67,0x70,0x2e,0x73,0x65,0x6e,\n    0x64,0x5f,0x78,0x6d,0x6c,0x28,0x73,0x65,0x6c,0x66,0x2e,0x73,0x6b,0x74,0x2c,0x20,\n    0x7b,0x20,0x74,0x61,0x67,0x20,0x3d,0x20,0x22,0x72,0x65,0x73,0x70,0x6f,0x6e,0x73,\n    0x65,0x22,0x2c,0x20,0x61,0x74,0x74,0x72,0x20,0x3d,0x20,0x7b,0x20,0x63,0x6f,0x6d,\n    0x6d,0x61,0x6e,0x64,0x20,0x3d,0x20,0x22,0x62,0x72,0x65,0x61,0x6b,0x70,0x6f,0x69,\n    0x6e,0x74,0x5f,0x73,0x65,0x74,0x22,0x2c,0x20,0x74,0x72,0x61,0x6e,0x73,0x61,0x63,\n    0x74,0x69,0x6f,0x6e,0x5f,0x69,0x64,0x20,0x3d,0x20,0x61,0x72,0x67,0x73,0x2e,0x69,\n    0x7d,0x20,0x7d,0x20,0x29,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x72,0x65,\n    0x74,0x75,0x72,0x6e,0x20,0x6e,0x69,0x6c,0x3b,0x0a,0x20,0x20,0x20,0x20,0x65,0x6e,\n    0x64,0x0a,0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x62,0x70,0x20,0x3d,\n    0x20,0x7b,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x74,0x79,0x70,0x65,0x20,\n    0x3d,0x20,0x61,0x72,0x67,0x73,0x2e,0x74,0x2c,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x73,0x74,0x61,0x74,0x65,0x20,0x3d,0x20,0x61,0x72,0x67,0x73,0x2e,0x73,\n    0x20,0x6f,0x72,0x20,0x22,0x65,0x6e,0x61,0x62,0x6c,0x65,0x64,0x22,0x2c,0x0a,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x74,0x65,0x6d,0x70,0x6f,0x72,0x61,0x72,0x79,\n    0x20,0x3d,0x20,0x61,0x72,0x67,0x73,0x2e,0x72,0x20,0x3d,0x3d,0x20,0x22,0x31,0x22,\n    0x2c,0x20,0x2d,0x2d,0x20,0x22,0x30,0x22,0x20,0x6f,0x72,0x20,0x6e,0x69,0x6c,0x20,\n    0x6d,0x61,0x6b,0x65,0x73,0x20,0x74,0x68,0x69,0x73,0x20,0x70,0x72,0x6f,0x70,0x65,\n    0x72,0x74,0x79,0x20,0x66,0x61,0x6c,0x73,0x65,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x68,0x69,0x74,0x5f,0x63,0x6f,0x75,0x6e,0x74,0x20,0x3d,0x20,0x30,0x2c,\n    0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x66,0x69,0x6c,0x65,0x6e,0x61,0x6d,\n    0x65,0x20,0x3d,0x20,0x66,0x69,0x6c,0x65,0x6e,0x61,0x6d,0x65,0x2c,0x0a,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x6c,0x69,0x6e,0x65,0x6e,0x6f,0x20,0x3d,0x20,0x6c,\n    0x69,0x6e,0x65,0x6e,0x6f,0x2c,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x68,\n    0x69,0x74,0x5f,0x76,0x61,0x6c,0x75,0x65,0x20,0x3d,0x20,0x74,0x6f,0x6e,0x75,0x6d,\n    0x62,0x65,0x72,0x28,0x61,0x72,0x67,0x73,0x2e,0x68,0x20,0x6f,0x72,0x20,0x30,0x29,\n    0x2c,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x68,0x69,0x74,0x5f,0x63,0x6f,\n    0x6e,0x64,0x69,0x74,0x69,0x6f,0x6e,0x20,0x3d,0x20,0x61,0x72,0x67,0x73,0x2e,0x6f,\n    0x20,0x6f,0x72,0x20,0x22,0x3e,0x3d,0x22,0x2c,0x0a,0x20,0x20,0x20,0x20,0x7d,0x0a,\n    0x0a,0x20,0x20,0x20,0x20,0x69,0x66,0x20,0x61,0x72,0x67,0x73,0x2e,0x74,0x20,0x3d,\n    0x3d,0x20,0x22,0x63,0x6f,0x6e,0x64,0x69,0x74,0x69,0x6f,0x6e,0x61,0x6c,0x22,0x20,\n    0x74,0x68,0x65,0x6e,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x62,0x70,0x2e,\n    0x65,0x78,0x70,0x72,0x65,0x73,0x73,0x69,0x6f,0x6e,0x20,0x3d,0x20,0x64,0x61,0x74,\n    0x61,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x2d,0x2d,0x20,0x74,0x68,0x65,\n    0x20,0x65,0x78,0x70,0x72,0x65,0x73,0x73,0x69,0x6f,0x6e,0x20,0x69,0x73,0x20,0x63,\n    0x6f,0x6d,0x70,0x69,0x6c,0x65,0x64,0x20,0x6f,0x6e,0x6c,0x79,0x20,0x6f,0x6e,0x63,\n    0x65,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x62,0x70,0x2e,0x63,0x6f,0x6e,\n    0x64,0x69,0x74,0x69,0x6f,0x6e,0x20,0x3d,0x20,0x64,0x62,0x67,0x70,0x2e,0x61,0x73,\n    0x73,0x65,0x72,0x74,0x28,0x32,0x30,0x37,0x2c,0x20,0x6c,0x6f,0x61,0x64,0x73,0x74,\n    0x72,0x69,0x6e,0x67,0x28,0x22,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x28,0x22,0x20,\n    0x2e,0x2e,0x20,0x64,0x61,0x74,0x61,0x20,0x2e,0x2e,0x20,0x22,0x29,0x22,0x29,0x29,\n    0x0a,0x20,0x20,0x20,0x20,0x65,0x6c,0x73,0x65,0x69,0x66,0x20,0x61,0x72,0x67,0x73,\n    0x2e,0x74,0x20,0x7e,0x3d,0x20,0x22,0x6c,0x69,0x6e,0x65,0x22,0x20,0x74,0x68,0x65,\n    0x6e,0x20,0x64,0x62,0x67,0x70,0x2e,0x65,0x72,0x72,0x6f,0x72,0x28,0x32,0x30,0x31,\n    0x2c,0x20,0x22,0x42,0x50,0x20,0x74,0x79,0x70,0x65,0x20,0x22,0x20,0x2e,0x2e,0x20,\n    0x61,0x72,0x67,0x73,0x2e,0x74,0x20,0x2e,0x2e,0x20,0x22,0x20,0x6e,0x6f,0x74,0x20,\n    0x79,0x65,0x74,0x20,0x73,0x75,0x70,0x70,0x6f,0x72,0x74,0x65,0x64,0x22,0x29,0x20,\n    0x65,0x6e,0x64,0x0a,0x0a,0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x62,\n    0x70,0x69,0x64,0x20,0x3d,0x20,0x63,0x6f,0x72,0x65,0x2e,0x62,0x72,0x65,0x61,0x6b,\n    0x70,0x6f,0x69,0x6e,0x74,0x73,0x2e,0x69,0x6e,0x73,0x65,0x72,0x74,0x28,0x62,0x70,\n    0x29,0x0a,0x20,0x20,0x20,0x20,0x64,0x62,0x67,0x70,0x2e,0x73,0x65,0x6e,0x64,0x5f,\n    0x78,0x6d,0x6c,0x28,0x73,0x65,0x6c,0x66,0x2e,0x73,0x6b,0x74,0x2c,0x20,0x7b,0x20,\n    0x74,0x61,0x67,0x20,0x3d,0x20,0x22,0x72,0x65,0x73,0x70,0x6f,0x6e,0x73,0x65,0x22,\n    0x2c,0x20,0x61,0x74,0x74,0x72,0x20,0x3d,0x20,0x7b,0x20,0x63,0x6f,0x6d,0x6d,0x61,\n    0x6e,0x64,0x20,0x3d,0x20,0x22,0x62,0x72,0x65,0x61,0x6b,0x70,0x6f,0x69,0x6e,0x74,\n    0x5f,0x73,0x65,0x74,0x22,0x2c,0x20,0x74,0x72,0x61,0x6e,0x73,0x61,0x63,0x74,0x69,\n    0x6f,0x6e,0x5f,0x69,0x64,0x20,0x3d,0x20,0x61,0x72,0x67,0x73,0x2e,0x69,0x2c,0x20,\n    0x73,0x74,0x61,0x74,0x65,0x20,0x3d,0x20,0x62,0x70,0x2e,0x73,0x74,0x61,0x74,0x65,\n    0x2c,0x20,0x69,0x64,0x20,0x3d,0x20,0x62,0x70,0x69,0x64,0x20,0x7d,0x20,0x7d,0x20,\n    0x29,0x0a,0x65,0x6e,0x64,0x0a,0x0a,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x20,\n    0x4d,0x2e,0x62,0x72,0x65,0x61,0x6b,0x70,0x6f,0x69,0x6e,0x74,0x5f,0x67,0x65,0x74,\n    0x28,0x73,0x65,0x6c,0x66,0x2c,0x20,0x61,0x72,0x67,0x73,0x29,0x0a,0x20,0x20,0x20,\n    0x20,0x64,0x62,0x67,0x70,0x2e,0x73,0x65,0x6e,0x64,0x5f,0x78,0x6d,0x6c,0x28,0x73,\n    0x65,0x6c,0x66,0x2e,0x73,0x6b,0x74,0x2c,0x20,0x7b,0x20,0x74,0x61,0x67,0x20,0x3d,\n    0x20,0x22,0x72,0x65,0x73,0x70,0x6f,0x6e,0x73,0x65,0x22,0x2c,0x0a,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x61,0x74,0x74,0x72,0x20,\n    0x3d,0x20,0x7b,0x20,0x63,0x6f,0x6d,0x6d,0x61,0x6e,0x64,0x20,0x3d,0x20,0x22,0x62,\n    0x72,0x65,0x61,0x6b,0x70,0x6f,0x69,0x6e,0x74,0x5f,0x67,0x65,0x74,0x22,0x2c,0x20,\n    0x74,0x72,0x61,0x6e,0x73,0x61,0x63,0x74,0x69,0x6f,0x6e,0x5f,0x69,0x64,0x20,0x3d,\n    0x20,0x61,0x72,0x67,0x73,0x2e,0x69,0x20,0x7d,0x2c,0x0a,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x64,0x62,0x67,0x70,0x2e,0x61,0x73,\n    0x73,0x65,0x72,0x74,0x28,0x32,0x30,0x35,0x2c,0x20,0x63,0x6f,0x72,0x65,0x2e,0x62,\n    0x72,0x65,0x61,0x6b,0x70,0x6f,0x69,0x6e,0x74,0x73,0x2e,0x67,0x65,0x74,0x5f,0x78,\n    0x6d,0x6c,0x28,0x74,0x6f,0x6e,0x75,0x6d,0x62,0x65,0x72,0x28,0x61,0x72,0x67,0x73,\n    0x2e,0x64,0x29,0x29,0x29,0x20,0x7d,0x29,0x0a,0x65,0x6e,0x64,0x0a,0x0a,0x66,0x75,\n    0x6e,0x63,0x74,0x69,0x6f,0x6e,0x20,0x4d,0x2e,0x62,0x72,0x65,0x61,0x6b,0x70,0x6f,\n    0x69,0x6e,0x74,0x5f,0x6c,0x69,0x73,0x74,0x28,0x73,0x65,0x6c,0x66,0x2c,0x20,0x61,\n    0x72,0x67,0x73,0x29,0x0a,0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x62,\n    0x70,0x73,0x20,0x3d,0x20,0x7b,0x20,0x74,0x61,0x67,0x20,0x3d,0x20,0x22,0x72,0x65,\n    0x73,0x70,0x6f,0x6e,0x73,0x65,0x22,0x2c,0x20,0x61,0x74,0x74,0x72,0x20,0x3d,0x20,\n    0x7b,0x20,0x63,0x6f,0x6d,0x6d,0x61,0x6e,0x64,0x20,0x3d,0x20,0x22,0x62,0x72,0x65,\n    0x61,0x6b,0x70,0x6f,0x69,0x6e,0x74,0x5f,0x6c,0x69,0x73,0x74,0x22,0x2c,0x20,0x74,\n    0x72,0x61,0x6e,0x73,0x61,0x63,0x74,0x69,0x6f,0x6e,0x5f,0x69,0x64,0x20,0x3d,0x20,\n    0x61,0x72,0x67,0x73,0x2e,0x69,0x20,0x7d,0x20,0x7d,0x0a,0x20,0x20,0x20,0x20,0x66,\n    0x6f,0x72,0x20,0x69,0x64,0x2c,0x20,0x62,0x70,0x20,0x69,0x6e,0x20,0x70,0x61,0x69,\n    0x72,0x73,0x28,0x63,0x6f,0x72,0x65,0x2e,0x62,0x72,0x65,0x61,0x6b,0x70,0x6f,0x69,\n    0x6e,0x74,0x73,0x2e,0x67,0x65,0x74,0x28,0x29,0x29,0x20,0x64,0x6f,0x20,0x62,0x70,\n    0x73,0x5b,0x23,0x62,0x70,0x73,0x20,0x2b,0x20,0x31,0x5d,0x20,0x3d,0x20,0x63,0x6f,\n    0x72,0x65,0x2e,0x62,0x72,0x65,0x61,0x6b,0x70,0x6f,0x69,0x6e,0x74,0x73,0x2e,0x67,\n    0x65,0x74,0x5f,0x78,0x6d,0x6c,0x28,0x69,0x64,0x29,0x20,0x65,0x6e,0x64,0x0a,0x20,\n    0x20,0x20,0x20,0x64,0x62,0x67,0x70,0x2e,0x73,0x65,0x6e,0x64,0x5f,0x78,0x6d,0x6c,\n    0x28,0x73,0x65,0x6c,0x66,0x2e,0x73,0x6b,0x74,0x2c,0x20,0x62,0x70,0x73,0x29,0x0a,\n    0x65,0x6e,0x64,0x0a,0x0a,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x20,0x4d,0x2e,\n    0x62,0x72,0x65,0x61,0x6b,0x70,0x6f,0x69,0x6e,0x74,0x5f,0x75,0x70,0x64,0x61,0x74,\n    0x65,0x28,0x73,0x65,0x6c,0x66,0x2c,0x20,0x61,0x72,0x67,0x73,0x29,0x0a,0x20,0x20,\n    0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x62,0x70,0x20,0x3d,0x20,0x63,0x6f,0x72,\n    0x65,0x2e,0x62,0x72,0x65,0x61,0x6b,0x70,0x6f,0x69,0x6e,0x74,0x73,0x2e,0x67,0x65,\n    0x74,0x28,0x74,0x6f,0x6e,0x75,0x6d,0x62,0x65,0x72,0x28,0x61,0x72,0x67,0x73,0x2e,\n    0x64,0x29,0x29,0x0a,0x20,0x20,0x20,0x20,0x69,0x66,0x20,0x6e,0x6f,0x74,0x20,0x62,\n    0x70,0x20,0x74,0x68,0x65,0x6e,0x20,0x64,0x62,0x67,0x70,0x2e,0x65,0x72,0x72,0x6f,\n    0x72,0x28,0x32,0x30,0x35,0x2c,0x20,0x22,0x4e,0x6f,0x20,0x73,0x75,0x63,0x68,0x20,\n    0x62,0x72,0x65,0x61,0x6b,0x70,0x69,0x6e,0x74,0x20,0x22,0x2e,0x2e,0x61,0x72,0x67,\n    0x73,0x2e,0x64,0x29,0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,0x20,0x20,0x69,0x66,0x20,\n    0x61,0x72,0x67,0x73,0x2e,0x6f,0x20,0x61,0x6e,0x64,0x20,0x6e,0x6f,0x74,0x20,0x63,\n    0x6f,0x72,0x65,0x2e,0x62,0x72,0x65,0x61,0x6b,0x70,0x6f,0x69,0x6e,0x74,0x73,0x2e,\n    0x68,0x69,0x74,0x5f,0x63,0x6f,0x6e,0x64,0x69,0x74,0x69,0x6f,0x6e,0x73,0x5b,0x61,\n    0x72,0x67,0x73,0x2e,0x6f,0x5d,0x20,0x74,0x68,0x65,0x6e,0x20,0x64,0x62,0x67,0x70,\n    0x2e,0x65,0x72,0x72,0x6f,0x72,0x28,0x32,0x30,0x30,0x2c,0x20,0x22,0x49,0x6e,0x76,\n    0x61,0x6c,0x69,0x64,0x20,0x68,0x69,0x74,0x5f,0x63,0x6f,0x6e,0x64,0x69,0x74,0x69,\n    0x6f,0x6e,0x20,0x6f,0x70,0x65,0x72,0x61,0x74,0x6f,0x72,0x3a,0x20,0x22,0x2e,0x2e,\n    0x61,0x72,0x67,0x73,0x2e,0x6f,0x29,0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,0x20,0x20,\n    0x6c,0x6f,0x63,0x61,0x6c,0x20,0x72,0x65,0x73,0x70,0x6f,0x6e,0x73,0x65,0x20,0x3d,\n    0x20,0x7b,0x20,0x74,0x61,0x67,0x20,0x3d,0x20,0x22,0x72,0x65,0x73,0x70,0x6f,0x6e,\n    0x73,0x65,0x22,0x2c,0x20,0x61,0x74,0x74,0x72,0x20,0x3d,0x20,0x7b,0x20,0x63,0x6f,\n    0x6d,0x6d,0x61,0x6e,0x64,0x20,0x3d,0x20,0x22,0x62,0x72,0x65,0x61,0x6b,0x70,0x6f,\n    0x69,0x6e,0x74,0x5f,0x75,0x70,0x64,0x61,0x74,0x65,0x22,0x2c,0x20,0x74,0x72,0x61,\n    0x6e,0x73,0x61,0x63,0x74,0x69,0x6f,0x6e,0x5f,0x69,0x64,0x20,0x3d,0x20,0x61,0x72,\n    0x67,0x73,0x2e,0x69,0x20,0x7d,0x20,0x7d,0x0a,0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,\n    0x61,0x6c,0x20,0x6e,0x65,0x65,0x64,0x55,0x70,0x64,0x61,0x74,0x65,0x20,0x3d,0x20,\n    0x66,0x61,0x6c,0x73,0x65,0x0a,0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,\n    0x6f,0x6c,0x64,0x6c,0x69,0x6e,0x65,0x20,0x3d,0x20,0x62,0x70,0x2e,0x6c,0x69,0x6e,\n    0x65,0x6e,0x6f,0x0a,0x20,0x20,0x20,0x20,0x69,0x66,0x20,0x74,0x6f,0x6e,0x75,0x6d,\n    0x62,0x65,0x72,0x28,0x61,0x72,0x67,0x73,0x2e,0x6e,0x29,0x20,0x7e,0x3d,0x20,0x74,\n    0x6f,0x6e,0x75,0x6d,0x62,0x65,0x72,0x28,0x62,0x70,0x2e,0x6c,0x69,0x6e,0x65,0x6e,\n    0x6f,0x29,0x20,0x74,0x68,0x65,0x6e,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x6e,0x65,0x65,0x64,0x55,0x70,0x64,0x61,0x74,0x65,0x20,0x3d,0x20,0x74,0x72,0x75,\n    0x65,0x0a,0x20,0x20,0x20,0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,0x20,0x20,0x62,0x70,\n    0x2e,0x73,0x74,0x61,0x74,0x65,0x20,0x3d,0x20,0x61,0x72,0x67,0x73,0x2e,0x73,0x20,\n    0x6f,0x72,0x20,0x62,0x70,0x2e,0x73,0x74,0x61,0x74,0x65,0x0a,0x20,0x20,0x20,0x20,\n    0x62,0x70,0x2e,0x6c,0x69,0x6e,0x65,0x6e,0x6f,0x20,0x3d,0x20,0x74,0x6f,0x6e,0x75,\n    0x6d,0x62,0x65,0x72,0x28,0x61,0x72,0x67,0x73,0x2e,0x6e,0x20,0x6f,0x72,0x20,0x62,\n    0x70,0x2e,0x6c,0x69,0x6e,0x65,0x6e,0x6f,0x29,0x0a,0x20,0x20,0x20,0x20,0x62,0x70,\n    0x2e,0x68,0x69,0x74,0x5f,0x76,0x61,0x6c,0x75,0x65,0x20,0x3d,0x20,0x74,0x6f,0x6e,\n    0x75,0x6d,0x62,0x65,0x72,0x28,0x61,0x72,0x67,0x73,0x2e,0x68,0x20,0x6f,0x72,0x20,\n    0x62,0x70,0x2e,0x68,0x69,0x74,0x5f,0x76,0x61,0x6c,0x75,0x65,0x29,0x0a,0x20,0x20,\n    0x20,0x20,0x62,0x70,0x2e,0x68,0x69,0x74,0x5f,0x63,0x6f,0x6e,0x64,0x69,0x74,0x69,\n    0x6f,0x6e,0x20,0x3d,0x20,0x61,0x72,0x67,0x73,0x2e,0x6f,0x20,0x6f,0x72,0x20,0x62,\n    0x70,0x2e,0x68,0x69,0x74,0x5f,0x63,0x6f,0x6e,0x64,0x69,0x74,0x69,0x6f,0x6e,0x0a,\n    0x20,0x20,0x20,0x20,0x69,0x66,0x20,0x6e,0x65,0x65,0x64,0x55,0x70,0x64,0x61,0x74,\n    0x65,0x20,0x20,0x74,0x68,0x65,0x6e,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x63,0x6f,0x72,0x65,0x2e,0x62,0x72,0x65,0x61,0x6b,0x70,0x6f,0x69,0x6e,0x74,0x73,\n    0x2e,0x75,0x70,0x64,0x61,0x74,0x65,0x28,0x6f,0x6c,0x64,0x6c,0x69,0x6e,0x65,0x2c,\n    0x20,0x62,0x70,0x29,0x0a,0x20,0x20,0x20,0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,0x20,\n    0x20,0x64,0x62,0x67,0x70,0x2e,0x73,0x65,0x6e,0x64,0x5f,0x78,0x6d,0x6c,0x28,0x73,\n    0x65,0x6c,0x66,0x2e,0x73,0x6b,0x74,0x2c,0x20,0x72,0x65,0x73,0x70,0x6f,0x6e,0x73,\n    0x65,0x29,0x0a,0x65,0x6e,0x64,0x0a,0x0a,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,\n    0x20,0x4d,0x2e,0x62,0x72,0x65,0x61,0x6b,0x70,0x6f,0x69,0x6e,0x74,0x5f,0x72,0x65,\n    0x6d,0x6f,0x76,0x65,0x28,0x73,0x65,0x6c,0x66,0x2c,0x20,0x61,0x72,0x67,0x73,0x29,\n    0x0a,0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x72,0x65,0x73,0x70,0x6f,\n    0x6e,0x73,0x65,0x20,0x3d,0x20,0x7b,0x20,0x74,0x61,0x67,0x20,0x3d,0x20,0x22,0x72,\n    0x65,0x73,0x70,0x6f,0x6e,0x73,0x65,0x22,0x2c,0x20,0x61,0x74,0x74,0x72,0x20,0x3d,\n    0x20,0x7b,0x20,0x63,0x6f,0x6d,0x6d,0x61,0x6e,0x64,0x20,0x3d,0x20,0x22,0x62,0x72,\n    0x65,0x61,0x6b,0x70,0x6f,0x69,0x6e,0x74,0x5f,0x72,0x65,0x6d,0x6f,0x76,0x65,0x22,\n    0x2c,0x20,0x74,0x72,0x61,0x6e,0x73,0x61,0x63,0x74,0x69,0x6f,0x6e,0x5f,0x69,0x64,\n    0x20,0x3d,0x20,0x61,0x72,0x67,0x73,0x2e,0x69,0x20,0x7d,0x20,0x7d,0x0a,0x20,0x20,\n    0x20,0x20,0x2d,0x2d,0x20,0x61,0x72,0x67,0x73,0x2e,0x64,0x20,0x6d,0x61,0x79,0x20,\n    0x62,0x65,0x20,0x6e,0x69,0x6c,0x2c,0x20,0x62,0x65,0x63,0x61,0x75,0x73,0x65,0x20,\n    0x74,0x68,0x65,0x20,0x62,0x72,0x65,0x61,0x6b,0x70,0x6f,0x69,0x6e,0x74,0x20,0x64,\n    0x6f,0x65,0x73,0x20,0x6e,0x6f,0x74,0x20,0x62,0x65,0x6c,0x6f,0x6e,0x67,0x20,0x74,\n    0x6f,0x20,0x63,0x75,0x72,0x72,0x65,0x6e,0x74,0x20,0x70,0x72,0x6f,0x6a,0x65,0x63,\n    0x74,0x20,0x28,0x61,0x64,0x64,0x20,0x62,0x79,0x20,0x67,0x75,0x61,0x6e,0x79,0x75,\n    0x29,0x0a,0x20,0x20,0x20,0x20,0x69,0x66,0x20,0x61,0x72,0x67,0x73,0x2e,0x64,0x20,\n    0x61,0x6e,0x64,0x20,0x6e,0x6f,0x74,0x20,0x63,0x6f,0x72,0x65,0x2e,0x62,0x72,0x65,\n    0x61,0x6b,0x70,0x6f,0x69,0x6e,0x74,0x73,0x2e,0x72,0x65,0x6d,0x6f,0x76,0x65,0x28,\n    0x74,0x6f,0x6e,0x75,0x6d,0x62,0x65,0x72,0x28,0x61,0x72,0x67,0x73,0x2e,0x64,0x29,\n    0x29,0x20,0x74,0x68,0x65,0x6e,0x20,0x64,0x62,0x67,0x70,0x2e,0x65,0x72,0x72,0x6f,\n    0x72,0x28,0x32,0x30,0x35,0x2c,0x20,0x22,0x4e,0x6f,0x20,0x73,0x75,0x63,0x68,0x20,\n    0x62,0x72,0x65,0x61,0x6b,0x70,0x69,0x6e,0x74,0x20,0x22,0x2e,0x2e,0x61,0x72,0x67,\n    0x73,0x2e,0x64,0x29,0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,0x20,0x20,0x64,0x62,0x67,\n    0x70,0x2e,0x73,0x65,0x6e,0x64,0x5f,0x78,0x6d,0x6c,0x28,0x73,0x65,0x6c,0x66,0x2e,\n    0x73,0x6b,0x74,0x2c,0x20,0x72,0x65,0x73,0x70,0x6f,0x6e,0x73,0x65,0x29,0x0a,0x65,\n    0x6e,0x64,0x0a,0x0a,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x20,0x4d,0x2e,0x73,\n    0x74,0x61,0x63,0x6b,0x5f,0x64,0x65,0x70,0x74,0x68,0x28,0x73,0x65,0x6c,0x66,0x2c,\n    0x20,0x61,0x72,0x67,0x73,0x29,0x0a,0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,\n    0x20,0x64,0x65,0x70,0x74,0x68,0x20,0x3d,0x20,0x30,0x0a,0x20,0x20,0x20,0x20,0x6c,\n    0x6f,0x63,0x61,0x6c,0x20,0x63,0x6f,0x72,0x6f,0x20,0x3d,0x20,0x67,0x65,0x74,0x5f,\n    0x63,0x6f,0x72,0x6f,0x75,0x74,0x69,0x6e,0x65,0x28,0x73,0x65,0x6c,0x66,0x2c,0x20,\n    0x61,0x72,0x67,0x73,0x2e,0x6f,0x29,0x0a,0x20,0x20,0x20,0x20,0x66,0x6f,0x72,0x20,\n    0x6c,0x65,0x76,0x65,0x6c,0x20,0x3d,0x20,0x30,0x2c,0x20,0x6d,0x61,0x74,0x68,0x2e,\n    0x68,0x75,0x67,0x65,0x20,0x64,0x6f,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x6c,0x6f,0x63,0x61,0x6c,0x20,0x69,0x6e,0x66,0x6f,0x20,0x3d,0x20,0x63,0x6f,0x72,\n    0x6f,0x3a,0x67,0x65,0x74,0x69,0x6e,0x66,0x6f,0x28,0x6c,0x65,0x76,0x65,0x6c,0x2c,\n    0x20,0x22,0x53,0x74,0x22,0x29,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x69,\n    0x66,0x20,0x6e,0x6f,0x74,0x20,0x69,0x6e,0x66,0x6f,0x20,0x74,0x68,0x65,0x6e,0x20,\n    0x62,0x72,0x65,0x61,0x6b,0x20,0x65,0x6e,0x64,0x20,0x2d,0x2d,0x20,0x65,0x6e,0x64,\n    0x20,0x6f,0x66,0x20,0x73,0x74,0x61,0x63,0x6b,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x64,0x65,0x70,0x74,0x68,0x20,0x3d,0x20,0x64,0x65,0x70,0x74,0x68,0x20,\n    0x2b,0x20,0x31,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x69,0x66,0x20,0x69,\n    0x6e,0x66,0x6f,0x2e,0x69,0x73,0x74,0x61,0x69,0x6c,0x63,0x61,0x6c,0x6c,0x20,0x74,\n    0x68,0x65,0x6e,0x20,0x64,0x65,0x70,0x74,0x68,0x20,0x3d,0x20,0x64,0x65,0x70,0x74,\n    0x68,0x20,0x2b,0x20,0x31,0x20,0x65,0x6e,0x64,0x20,0x2d,0x2d,0x20,0x61,0x20,0x27,\n    0x66,0x61,0x6b,0x65,0x27,0x20,0x6c,0x65,0x76,0x65,0x6c,0x20,0x69,0x73,0x20,0x61,\n    0x64,0x64,0x65,0x64,0x20,0x69,0x6e,0x20,0x74,0x68,0x61,0x74,0x20,0x63,0x61,0x73,\n    0x65,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x69,0x66,0x20,0x69,0x6e,0x66,\n    0x6f,0x2e,0x77,0x68,0x61,0x74,0x20,0x3d,0x3d,0x20,0x22,0x6d,0x61,0x69,0x6e,0x22,\n    0x20,0x74,0x68,0x65,0x6e,0x20,0x62,0x72,0x65,0x61,0x6b,0x20,0x65,0x6e,0x64,0x20,\n    0x2d,0x2d,0x20,0x6c,0x65,0x76,0x65,0x6c,0x73,0x20,0x62,0x65,0x6c,0x6f,0x77,0x20,\n    0x6d,0x61,0x69,0x6e,0x20,0x63,0x68,0x75,0x6e,0x6b,0x20,0x61,0x72,0x65,0x20,0x6e,\n    0x6f,0x74,0x20,0x69,0x6e,0x74,0x65,0x72,0x65,0x73,0x74,0x69,0x6e,0x67,0x0a,0x20,\n    0x20,0x20,0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,0x20,0x20,0x64,0x62,0x67,0x70,0x2e,\n    0x73,0x65,0x6e,0x64,0x5f,0x78,0x6d,0x6c,0x28,0x73,0x65,0x6c,0x66,0x2e,0x73,0x6b,\n    0x74,0x2c,0x20,0x7b,0x20,0x74,0x61,0x67,0x20,0x3d,0x20,0x22,0x72,0x65,0x73,0x70,\n    0x6f,0x6e,0x73,0x65,0x22,0x2c,0x20,0x61,0x74,0x74,0x72,0x20,0x3d,0x20,0x7b,0x20,\n    0x63,0x6f,0x6d,0x6d,0x61,0x6e,0x64,0x20,0x3d,0x20,0x22,0x73,0x74,0x61,0x63,0x6b,\n    0x5f,0x64,0x65,0x70,0x74,0x68,0x22,0x2c,0x20,0x74,0x72,0x61,0x6e,0x73,0x61,0x63,\n    0x74,0x69,0x6f,0x6e,0x5f,0x69,0x64,0x20,0x3d,0x20,0x61,0x72,0x67,0x73,0x2e,0x69,\n    0x2c,0x20,0x64,0x65,0x70,0x74,0x68,0x20,0x3d,0x20,0x64,0x65,0x70,0x74,0x68,0x7d,\n    0x20,0x7d,0x20,0x29,0x0a,0x65,0x6e,0x64,0x0a,0x0a,0x66,0x75,0x6e,0x63,0x74,0x69,\n    0x6f,0x6e,0x20,0x4d,0x2e,0x73,0x74,0x61,0x63,0x6b,0x5f,0x67,0x65,0x74,0x28,0x73,\n    0x65,0x6c,0x66,0x2c,0x20,0x61,0x72,0x67,0x73,0x29,0x20,0x2d,0x2d,0x20,0x54,0x4f,\n    0x44,0x4f,0x3a,0x20,0x64,0x79,0x6e,0x61,0x6d,0x69,0x63,0x20,0x63,0x6f,0x64,0x65,\n    0x0a,0x20,0x20,0x20,0x20,0x2d,0x2d,0x20,0x73,0x70,0x65,0x63,0x69,0x61,0x6c,0x20,\n    0x55,0x52,0x49,0x73,0x20,0x74,0x6f,0x20,0x69,0x64,0x65,0x6e,0x74,0x69,0x66,0x79,\n    0x20,0x75,0x6e,0x72,0x65,0x61,0x63,0x68,0x61,0x62,0x6c,0x65,0x20,0x73,0x74,0x61,\n    0x63,0x6b,0x20,0x6c,0x65,0x76,0x65,0x6c,0x73,0x0a,0x20,0x20,0x20,0x20,0x6c,0x6f,\n    0x63,0x61,0x6c,0x20,0x77,0x68,0x61,0x74,0x32,0x75,0x72,0x69,0x20,0x3d,0x20,0x7b,\n    0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x74,0x61,0x69,0x6c,0x20,0x3d,0x20,\n    0x22,0x74,0x61,0x69,0x6c,0x72,0x65,0x74,0x75,0x72,0x6e,0x3a,0x2f,0x22,0x2c,0x0a,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x43,0x20,0x20,0x20,0x20,0x3d,0x20,0x22,\n    0x63,0x63,0x6f,0x64,0x65,0x3a,0x2f,0x22,0x2c,0x0a,0x20,0x20,0x20,0x20,0x7d,0x0a,\n    0x0a,0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x66,0x75,0x6e,0x63,0x74,\n    0x69,0x6f,0x6e,0x20,0x6d,0x61,0x6b,0x65,0x5f,0x6c,0x65,0x76,0x65,0x6c,0x28,0x69,\n    0x6e,0x66,0x6f,0x2c,0x20,0x6c,0x65,0x76,0x65,0x6c,0x29,0x0a,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x61,0x74,0x74,0x72,0x20,0x3d,\n    0x20,0x7b,0x20,0x6c,0x65,0x76,0x65,0x6c,0x20,0x3d,0x20,0x6c,0x65,0x76,0x65,0x6c,\n    0x2c,0x20,0x77,0x68,0x65,0x72,0x65,0x20,0x3d,0x20,0x69,0x6e,0x66,0x6f,0x2e,0x6e,\n    0x61,0x6d,0x65,0x2c,0x20,0x74,0x79,0x70,0x65,0x3d,0x22,0x66,0x69,0x6c,0x65,0x22,\n    0x20,0x7d,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,\n    0x20,0x75,0x72,0x69,0x20,0x3d,0x20,0x70,0x6c,0x61,0x74,0x66,0x6f,0x72,0x6d,0x2e,\n    0x67,0x65,0x74,0x5f,0x75,0x72,0x69,0x28,0x69,0x6e,0x66,0x6f,0x2e,0x73,0x6f,0x75,\n    0x72,0x63,0x65,0x29,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x69,0x66,0x20,\n    0x75,0x72,0x69,0x20,0x61,0x6e,0x64,0x20,0x69,0x6e,0x66,0x6f,0x2e,0x63,0x75,0x72,\n    0x72,0x65,0x6e,0x74,0x6c,0x69,0x6e,0x65,0x20,0x74,0x68,0x65,0x6e,0x20,0x2d,0x2d,\n    0x20,0x72,0x65,0x61,0x63,0x68,0x61,0x62,0x6c,0x65,0x20,0x6c,0x65,0x76,0x65,0x6c,\n    0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x61,0x74,0x74,\n    0x72,0x2e,0x66,0x69,0x6c,0x65,0x6e,0x61,0x6d,0x65,0x20,0x3d,0x20,0x75,0x72,0x69,\n    0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x61,0x74,0x74,\n    0x72,0x2e,0x6c,0x69,0x6e,0x65,0x6e,0x6f,0x20,0x3d,0x20,0x69,0x6e,0x66,0x6f,0x2e,\n    0x63,0x75,0x72,0x72,0x65,0x6e,0x74,0x6c,0x69,0x6e,0x65,0x0a,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x65,0x6c,0x73,0x65,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x61,0x74,0x74,0x72,0x2e,0x66,0x69,0x6c,0x65,0x6e,0x61,\n    0x6d,0x65,0x20,0x3d,0x20,0x77,0x68,0x61,0x74,0x32,0x75,0x72,0x69,0x5b,0x69,0x6e,\n    0x66,0x6f,0x2e,0x77,0x68,0x61,0x74,0x5d,0x20,0x6f,0x72,0x20,0x22,0x75,0x6e,0x6b,\n    0x6e,0x6f,0x77,0x6e,0x3a,0x2f,0x22,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x61,0x74,0x74,0x72,0x2e,0x6c,0x69,0x6e,0x65,0x6e,0x6f,0x20,\n    0x3d,0x20,0x2d,0x31,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x65,0x6e,0x64,\n    0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,\n    0x7b,0x20,0x74,0x61,0x67,0x20,0x3d,0x20,0x22,0x73,0x74,0x61,0x63,0x6b,0x22,0x2c,\n    0x20,0x61,0x74,0x74,0x72,0x20,0x3d,0x20,0x61,0x74,0x74,0x72,0x20,0x7d,0x0a,0x20,\n    0x20,0x20,0x20,0x65,0x6e,0x64,0x0a,0x0a,0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,0x61,\n    0x6c,0x20,0x6e,0x6f,0x64,0x65,0x20,0x3d,0x20,0x7b,0x20,0x74,0x61,0x67,0x20,0x3d,\n    0x20,0x22,0x72,0x65,0x73,0x70,0x6f,0x6e,0x73,0x65,0x22,0x2c,0x20,0x61,0x74,0x74,\n    0x72,0x20,0x3d,0x20,0x7b,0x20,0x63,0x6f,0x6d,0x6d,0x61,0x6e,0x64,0x20,0x3d,0x20,\n    0x22,0x73,0x74,0x61,0x63,0x6b,0x5f,0x67,0x65,0x74,0x22,0x2c,0x20,0x74,0x72,0x61,\n    0x6e,0x73,0x61,0x63,0x74,0x69,0x6f,0x6e,0x5f,0x69,0x64,0x20,0x3d,0x20,0x61,0x72,\n    0x67,0x73,0x2e,0x69,0x7d,0x20,0x7d,0x0a,0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,0x61,\n    0x6c,0x20,0x63,0x6f,0x72,0x6f,0x20,0x3d,0x20,0x67,0x65,0x74,0x5f,0x63,0x6f,0x72,\n    0x6f,0x75,0x74,0x69,0x6e,0x65,0x28,0x73,0x65,0x6c,0x66,0x2c,0x20,0x61,0x72,0x67,\n    0x73,0x2e,0x6f,0x29,0x0a,0x0a,0x20,0x20,0x20,0x20,0x69,0x66,0x20,0x61,0x72,0x67,\n    0x73,0x2e,0x64,0x20,0x74,0x68,0x65,0x6e,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x73,0x74,0x61,0x63,0x6b,0x5f,0x6c,0x65,0x76,\n    0x65,0x6c,0x20,0x3d,0x20,0x74,0x6f,0x6e,0x75,0x6d,0x62,0x65,0x72,0x28,0x61,0x72,\n    0x67,0x73,0x2e,0x64,0x29,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x6e,0x6f,\n    0x64,0x65,0x5b,0x23,0x6e,0x6f,0x64,0x65,0x2b,0x31,0x5d,0x20,0x3d,0x20,0x6d,0x61,\n    0x6b,0x65,0x5f,0x6c,0x65,0x76,0x65,0x6c,0x28,0x63,0x6f,0x72,0x6f,0x3a,0x67,0x65,\n    0x74,0x69,0x6e,0x66,0x6f,0x28,0x73,0x74,0x61,0x63,0x6b,0x5f,0x6c,0x65,0x76,0x65,\n    0x6c,0x2c,0x20,0x22,0x6e,0x53,0x6c,0x22,0x29,0x2c,0x20,0x73,0x74,0x61,0x63,0x6b,\n    0x5f,0x6c,0x65,0x76,0x65,0x6c,0x29,0x0a,0x20,0x20,0x20,0x20,0x65,0x6c,0x73,0x65,\n    0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x66,0x6f,0x72,0x20,0x69,0x3d,0x30,\n    0x2c,0x20,0x6d,0x61,0x74,0x68,0x2e,0x68,0x75,0x67,0x65,0x20,0x64,0x6f,0x0a,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,\n    0x20,0x69,0x6e,0x66,0x6f,0x20,0x3d,0x20,0x63,0x6f,0x72,0x6f,0x3a,0x67,0x65,0x74,\n    0x69,0x6e,0x66,0x6f,0x28,0x69,0x2c,0x20,0x22,0x6e,0x53,0x6c,0x74,0x22,0x29,0x0a,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x69,0x66,0x20,0x6e,\n    0x6f,0x74,0x20,0x69,0x6e,0x66,0x6f,0x20,0x74,0x68,0x65,0x6e,0x20,0x62,0x72,0x65,\n    0x61,0x6b,0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x6e,0x6f,0x64,0x65,0x5b,0x23,0x6e,0x6f,0x64,0x65,0x2b,0x31,0x5d,\n    0x20,0x3d,0x20,0x6d,0x61,0x6b,0x65,0x5f,0x6c,0x65,0x76,0x65,0x6c,0x28,0x69,0x6e,\n    0x66,0x6f,0x2c,0x20,0x69,0x29,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x2d,0x2d,0x20,0x61,0x64,0x64,0x20,0x61,0x20,0x66,0x61,0x6b,0x65,\n    0x20,0x6c,0x65,0x76,0x65,0x6c,0x20,0x6f,0x66,0x20,0x73,0x74,0x61,0x63,0x6b,0x20,\n    0x66,0x6f,0x72,0x20,0x74,0x61,0x69,0x6c,0x20,0x63,0x61,0x6c,0x6c,0x73,0x20,0x28,\n    0x74,0x65,0x6c,0x6c,0x73,0x20,0x75,0x73,0x65,0x72,0x20,0x74,0x68,0x61,0x74,0x20,\n    0x74,0x68,0x65,0x20,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x20,0x68,0x61,0x73,\n    0x20,0x6e,0x6f,0x74,0x20,0x62,0x65,0x65,0x6e,0x20,0x63,0x61,0x6c,0x6c,0x65,0x64,\n    0x20,0x64,0x69,0x72,0x65,0x63,0x74,0x6c,0x79,0x29,0x0a,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x69,0x66,0x20,0x69,0x6e,0x66,0x6f,0x2e,0x69,\n    0x73,0x74,0x61,0x69,0x6c,0x63,0x61,0x6c,0x6c,0x20,0x74,0x68,0x65,0x6e,0x0a,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x6e,\n    0x6f,0x64,0x65,0x5b,0x23,0x6e,0x6f,0x64,0x65,0x2b,0x31,0x5d,0x20,0x3d,0x20,0x7b,\n    0x20,0x74,0x61,0x67,0x20,0x3d,0x20,0x22,0x73,0x74,0x61,0x63,0x6b,0x22,0x2c,0x20,\n    0x61,0x74,0x74,0x72,0x20,0x3d,0x20,0x7b,0x20,0x6c,0x65,0x76,0x65,0x6c,0x3d,0x69,\n    0x2c,0x20,0x74,0x79,0x70,0x65,0x3d,0x22,0x66,0x69,0x6c,0x65,0x22,0x2c,0x20,0x66,\n    0x69,0x6c,0x65,0x6e,0x61,0x6d,0x65,0x3d,0x22,0x74,0x61,0x69,0x6c,0x72,0x65,0x74,\n    0x75,0x72,0x6e,0x3a,0x2f,0x22,0x2c,0x20,0x6c,0x69,0x6e,0x65,0x6e,0x6f,0x3d,0x2d,\n    0x31,0x20,0x7d,0x20,0x7d,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x69,0x66,0x20,0x69,0x6e,0x66,0x6f,0x2e,0x77,0x68,0x61,0x74,0x20,0x3d,\n    0x3d,0x20,0x22,0x6d,0x61,0x69,0x6e,0x22,0x20,0x74,0x68,0x65,0x6e,0x20,0x62,0x72,\n    0x65,0x61,0x6b,0x20,0x65,0x6e,0x64,0x20,0x2d,0x2d,0x20,0x6c,0x65,0x76,0x65,0x6c,\n    0x73,0x20,0x62,0x65,0x6c,0x6f,0x77,0x20,0x6d,0x61,0x69,0x6e,0x20,0x63,0x68,0x75,\n    0x6e,0x6b,0x20,0x61,0x72,0x65,0x20,0x6e,0x6f,0x74,0x20,0x69,0x6e,0x74,0x65,0x72,\n    0x65,0x73,0x74,0x69,0x6e,0x67,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x65,\n    0x6e,0x64,0x0a,0x20,0x20,0x20,0x20,0x65,0x6e,0x64,0x0a,0x0a,0x20,0x20,0x20,0x20,\n    0x64,0x62,0x67,0x70,0x2e,0x73,0x65,0x6e,0x64,0x5f,0x78,0x6d,0x6c,0x28,0x73,0x65,\n    0x6c,0x66,0x2e,0x73,0x6b,0x74,0x2c,0x20,0x6e,0x6f,0x64,0x65,0x29,0x0a,0x65,0x6e,\n    0x64,0x0a,0x0a,0x2d,0x2d,0x2d,0x20,0x4c,0x69,0x73,0x74,0x73,0x20,0x61,0x6c,0x6c,\n    0x20,0x61,0x63,0x74,0x69,0x76,0x65,0x20,0x63,0x6f,0x72,0x6f,0x75,0x74,0x69,0x6e,\n    0x65,0x73,0x2e,0x0a,0x2d,0x2d,0x20,0x52,0x65,0x74,0x75,0x72,0x6e,0x73,0x20,0x61,\n    0x20,0x6c,0x69,0x73,0x74,0x20,0x6f,0x66,0x20,0x61,0x63,0x74,0x69,0x76,0x65,0x20,\n    0x63,0x6f,0x72,0x6f,0x75,0x74,0x69,0x6e,0x65,0x73,0x20,0x77,0x69,0x74,0x68,0x20,\n    0x74,0x68,0x65,0x69,0x72,0x20,0x69,0x64,0x20,0x28,0x61,0x6e,0x20,0x61,0x72,0x62,\n    0x69,0x74,0x72,0x61,0x72,0x79,0x20,0x73,0x74,0x72,0x69,0x6e,0x67,0x29,0x20,0x74,\n    0x6f,0x20,0x71,0x75,0x65,0x72,0x79,0x20,0x73,0x74,0x61,0x63,0x6b,0x20,0x61,0x6e,\n    0x64,0x20,0x70,0x72,0x6f,0x70,0x65,0x72,0x74,0x69,0x65,0x73,0x2e,0x20,0x54,0x68,\n    0x65,0x20,0x69,0x64,0x20,0x69,0x73,0x0a,0x2d,0x2d,0x20,0x67,0x75,0x61,0x72,0x61,\n    0x6e,0x74,0x65,0x65,0x64,0x20,0x74,0x6f,0x20,0x62,0x65,0x20,0x75,0x6e,0x69,0x71,\n    0x75,0x65,0x20,0x61,0x6e,0x64,0x20,0x73,0x74,0x61,0x62,0x6c,0x65,0x20,0x66,0x6f,\n    0x72,0x20,0x61,0x6c,0x6c,0x20,0x63,0x6f,0x72,0x6f,0x75,0x74,0x69,0x6e,0x65,0x20,\n    0x6c,0x69,0x66,0x65,0x20,0x28,0x74,0x68,0x65,0x79,0x20,0x63,0x61,0x6e,0x20,0x62,\n    0x65,0x20,0x72,0x65,0x75,0x73,0x65,0x64,0x20,0x61,0x73,0x20,0x6c,0x6f,0x6e,0x67,\n    0x20,0x61,0x73,0x20,0x63,0x6f,0x72,0x6f,0x75,0x74,0x69,0x6e,0x65,0x20,0x65,0x78,\n    0x69,0x73,0x74,0x73,0x29,0x2e,0x0a,0x2d,0x2d,0x20,0x4f,0x74,0x68,0x65,0x72,0x73,\n    0x20,0x63,0x6f,0x6d,0x6d,0x61,0x6e,0x64,0x73,0x20,0x73,0x75,0x63,0x68,0x20,0x61,\n    0x73,0x20,0x73,0x74,0x61,0x63,0x6b,0x5f,0x67,0x65,0x74,0x20,0x6f,0x72,0x20,0x70,\n    0x72,0x6f,0x70,0x65,0x72,0x74,0x79,0x5f,0x2a,0x20,0x63,0x6f,0x6d,0x6d,0x61,0x6e,\n    0x64,0x73,0x20,0x74,0x61,0x6b,0x65,0x73,0x20,0x61,0x6e,0x20,0x61,0x64,0x64,0x69,\n    0x74,0x69,0x6f,0x6e,0x61,0x6c,0x20,0x2d,0x6f,0x20,0x73,0x77,0x69,0x74,0x63,0x68,\n    0x20,0x74,0x6f,0x20,0x71,0x75,0x65,0x72,0x79,0x20,0x61,0x20,0x70,0x61,0x72,0x74,\n    0x69,0x63,0x75,0x6c,0x61,0x72,0x20,0x63,0x4f,0x72,0x6f,0x75,0x74,0x69,0x6e,0x65,\n    0x2e,0x0a,0x2d,0x2d,0x20,0x49,0x66,0x20,0x74,0x68,0x65,0x20,0x73,0x77,0x69,0x74,\n    0x63,0x68,0x20,0x69,0x73,0x20,0x6e,0x6f,0x74,0x20,0x67,0x69,0x76,0x65,0x6e,0x2c,\n    0x20,0x72,0x75,0x6e,0x6e,0x69,0x6e,0x67,0x20,0x63,0x6f,0x72,0x6f,0x75,0x74,0x69,\n    0x6e,0x65,0x20,0x77,0x69,0x6c,0x6c,0x20,0x62,0x65,0x20,0x75,0x73,0x65,0x64,0x2e,\n    0x0a,0x2d,0x2d,0x20,0x49,0x6e,0x20,0x63,0x61,0x73,0x65,0x20,0x6f,0x66,0x20,0x65,\n    0x72,0x72,0x6f,0x72,0x20,0x6f,0x6e,0x20,0x63,0x6f,0x72,0x6f,0x75,0x74,0x69,0x6e,\n    0x65,0x73,0x20,0x28,0x6d,0x6f,0x73,0x74,0x20,0x6c,0x69,0x6b,0x65,0x6c,0x79,0x20,\n    0x63,0x6f,0x72,0x6f,0x75,0x74,0x69,0x6e,0x65,0x20,0x6e,0x6f,0x74,0x20,0x66,0x6f,\n    0x75,0x6e,0x64,0x20,0x6f,0x72,0x20,0x64,0x65,0x61,0x64,0x29,0x2c,0x20,0x61,0x6e,\n    0x20,0x65,0x72,0x72,0x6f,0x72,0x20,0x33,0x39,0x39,0x20,0x69,0x73,0x20,0x74,0x68,\n    0x72,0x6f,0x77,0x6e,0x2e,0x0a,0x2d,0x2d,0x20,0x4e,0x6f,0x74,0x65,0x20,0x74,0x68,\n    0x65,0x72,0x65,0x20,0x69,0x73,0x20,0x61,0x6e,0x20,0x69,0x6d,0x70,0x6f,0x72,0x74,\n    0x61,0x6e,0x74,0x20,0x6c,0x69,0x6d,0x69,0x74,0x61,0x74,0x69,0x6f,0x6e,0x20,0x64,\n    0x75,0x65,0x20,0x74,0x6f,0x20,0x4c,0x75,0x61,0x20,0x35,0x2e,0x31,0x20,0x63,0x6f,\n    0x72,0x6f,0x75,0x74,0x69,0x6e,0x65,0x20,0x69,0x6d,0x70,0x6c,0x65,0x6d,0x65,0x6e,\n    0x74,0x61,0x74,0x69,0x6f,0x6e,0x3a,0x20,0x79,0x6f,0x75,0x20,0x63,0x61,0x6e,0x6e,\n    0x6f,0x74,0x20,0x71,0x75,0x65,0x72,0x79,0x20,0x6d,0x61,0x69,0x6e,0x20,0x22,0x63,\n    0x6f,0x72,0x6f,0x75,0x74,0x69,0x6e,0x65,0x22,0x20,0x66,0x72,0x6f,0x6d,0x0a,0x2d,\n    0x2d,0x20,0x61,0x6e,0x6f,0x74,0x68,0x65,0x72,0x20,0x6f,0x6e,0x65,0x2c,0x20,0x73,\n    0x6f,0x20,0x6d,0x61,0x69,0x6e,0x20,0x63,0x6f,0x72,0x6f,0x75,0x74,0x69,0x6e,0x65,\n    0x20,0x69,0x73,0x20,0x6e,0x6f,0x74,0x20,0x69,0x6e,0x20,0x72,0x65,0x74,0x75,0x72,\n    0x6e,0x65,0x64,0x20,0x6c,0x69,0x73,0x74,0x20,0x28,0x74,0x68,0x69,0x73,0x20,0x77,\n    0x69,0x6c,0x6c,0x20,0x63,0x68,0x61,0x6e,0x67,0x65,0x20,0x77,0x69,0x74,0x68,0x20,\n    0x4c,0x75,0x61,0x20,0x35,0x2e,0x32,0x29,0x2e,0x0a,0x2d,0x2d,0x0a,0x2d,0x2d,0x20,\n    0x54,0x68,0x69,0x73,0x20,0x69,0x73,0x20,0x61,0x20,0x6e,0x6f,0x6e,0x2d,0x73,0x74,\n    0x61,0x6e,0x64,0x61,0x72,0x64,0x20,0x63,0x6f,0x6d,0x6d,0x61,0x6e,0x64,0x2e,0x20,\n    0x54,0x68,0x65,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x65,0x64,0x20,0x58,0x4d,0x4c,\n    0x20,0x68,0x61,0x73,0x20,0x74,0x68,0x65,0x20,0x66,0x6f,0x6c,0x6c,0x6f,0x77,0x69,\n    0x6e,0x67,0x20,0x73,0x74,0x72,0x75,0x63,0x75,0x74,0x75,0x72,0x65,0x3a,0x0a,0x2d,\n    0x2d,0x20,0x20,0x20,0x20,0x20,0x3c,0x72,0x65,0x73,0x70,0x6f,0x6e,0x73,0x65,0x20,\n    0x63,0x6f,0x6d,0x6d,0x61,0x6e,0x64,0x3d,0x22,0x63,0x6f,0x72,0x6f,0x75,0x74,0x69,\n    0x6e,0x65,0x5f,0x6c,0x69,0x73,0x74,0x22,0x20,0x74,0x72,0x61,0x6e,0x73,0x61,0x63,\n    0x74,0x69,0x6f,0x6e,0x5f,0x69,0x64,0x3d,0x22,0x30,0x22,0x3e,0x0a,0x2d,0x2d,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x3c,0x63,0x6f,0x72,0x6f,0x75,0x74,0x69,0x6e,0x65,\n    0x20,0x6e,0x61,0x6d,0x65,0x3d,0x22,0x3c,0x73,0x6f,0x6d,0x65,0x20,0x70,0x72,0x69,\n    0x6e,0x74,0x74,0x61,0x62,0x6c,0x65,0x20,0x6e,0x61,0x6d,0x65,0x3e,0x22,0x20,0x69,\n    0x64,0x3d,0x22,0x3c,0x63,0x6f,0x72,0x6f,0x75,0x74,0x69,0x6e,0x65,0x20,0x69,0x64,\n    0x3e,0x22,0x20,0x72,0x75,0x6e,0x6e,0x69,0x6e,0x67,0x3d,0x22,0x30,0x7c,0x31,0x22,\n    0x20,0x2f,0x3e,0x0a,0x2d,0x2d,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x2e,0x2e,0x2e,\n    0x0a,0x2d,0x2d,0x20,0x20,0x20,0x20,0x20,0x3c,0x2f,0x72,0x65,0x73,0x70,0x6f,0x6e,\n    0x73,0x65,0x3e,0x0a,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x20,0x4d,0x2e,0x63,\n    0x6f,0x72,0x6f,0x75,0x74,0x69,0x6e,0x65,0x5f,0x6c,0x69,0x73,0x74,0x28,0x73,0x65,\n    0x6c,0x66,0x2c,0x20,0x61,0x72,0x67,0x73,0x29,0x0a,0x20,0x20,0x20,0x20,0x6c,0x6f,\n    0x63,0x61,0x6c,0x20,0x72,0x75,0x6e,0x6e,0x69,0x6e,0x67,0x20,0x3d,0x20,0x73,0x65,\n    0x6c,0x66,0x2e,0x63,0x6f,0x72,0x6f,0x5b,0x31,0x5d,0x0a,0x20,0x20,0x20,0x20,0x6c,\n    0x6f,0x63,0x61,0x6c,0x20,0x63,0x6f,0x72,0x6f,0x75,0x74,0x69,0x6e,0x65,0x73,0x20,\n    0x3d,0x20,0x7b,0x20,0x74,0x61,0x67,0x20,0x3d,0x20,0x22,0x72,0x65,0x73,0x70,0x6f,\n    0x6e,0x73,0x65,0x22,0x2c,0x20,0x61,0x74,0x74,0x72,0x20,0x3d,0x20,0x7b,0x20,0x63,\n    0x6f,0x6d,0x6d,0x61,0x6e,0x64,0x20,0x3d,0x20,0x22,0x63,0x6f,0x72,0x6f,0x75,0x74,\n    0x69,0x6e,0x65,0x5f,0x6c,0x69,0x73,0x74,0x22,0x2c,0x20,0x74,0x72,0x61,0x6e,0x73,\n    0x61,0x63,0x74,0x69,0x6f,0x6e,0x5f,0x69,0x64,0x20,0x3d,0x20,0x61,0x72,0x67,0x73,\n    0x2e,0x69,0x20,0x7d,0x20,0x7d,0x0a,0x20,0x20,0x20,0x20,0x2d,0x2d,0x20,0x61,0x73,\n    0x20,0x61,0x6e,0x79,0x20,0x6f,0x70,0x65,0x72,0x61,0x74,0x69,0x6f,0x6e,0x20,0x6f,\n    0x6e,0x20,0x6d,0x61,0x69,0x6e,0x20,0x63,0x6f,0x72,0x6f,0x75,0x74,0x69,0x6e,0x65,\n    0x20,0x77,0x69,0x6c,0x6c,0x20,0x66,0x61,0x69,0x6c,0x2c,0x20,0x69,0x74,0x20,0x69,\n    0x73,0x20,0x6e,0x6f,0x74,0x20,0x79,0x65,0x74,0x20,0x6c,0x69,0x73,0x74,0x65,0x64,\n    0x0a,0x20,0x20,0x20,0x20,0x2d,0x2d,0x20,0x63,0x6f,0x72,0x6f,0x75,0x74,0x69,0x6e,\n    0x65,0x73,0x5b,0x31,0x5d,0x20,0x3d,0x20,0x7b,0x20,0x6e,0x61,0x6d,0x65,0x20,0x3d,\n    0x20,0x22,0x63,0x6f,0x72,0x6f,0x75,0x74,0x69,0x6e,0x65,0x22,0x2c,0x20,0x61,0x74,\n    0x74,0x72,0x20,0x3d,0x20,0x7b,0x20,0x69,0x64,0x20,0x3d,0x20,0x30,0x2c,0x20,0x6e,\n    0x61,0x6d,0x65,0x20,0x3d,0x20,0x22,0x6d,0x61,0x69,0x6e,0x22,0x2c,0x20,0x72,0x75,\n    0x6e,0x6e,0x69,0x6e,0x67,0x20,0x3d,0x20,0x28,0x72,0x75,0x6e,0x6e,0x69,0x6e,0x67,\n    0x20,0x3d,0x3d,0x20,0x6e,0x69,0x6c,0x29,0x20,0x61,0x6e,0x64,0x20,0x22,0x31,0x22,\n    0x20,0x6f,0x72,0x20,0x22,0x30,0x22,0x20,0x7d,0x20,0x7d,0x0a,0x20,0x20,0x20,0x20,\n    0x66,0x6f,0x72,0x20,0x69,0x64,0x2c,0x20,0x63,0x6f,0x72,0x6f,0x20,0x69,0x6e,0x20,\n    0x70,0x61,0x69,0x72,0x73,0x28,0x63,0x6f,0x72,0x65,0x2e,0x61,0x63,0x74,0x69,0x76,\n    0x65,0x5f,0x63,0x6f,0x72,0x6f,0x75,0x74,0x69,0x6e,0x65,0x73,0x2e,0x66,0x72,0x6f,\n    0x6d,0x5f,0x69,0x64,0x29,0x20,0x64,0x6f,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x69,0x66,0x20,0x69,0x64,0x20,0x7e,0x3d,0x20,0x22,0x6e,0x22,0x20,0x74,0x68,\n    0x65,0x6e,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x63,\n    0x6f,0x72,0x6f,0x75,0x74,0x69,0x6e,0x65,0x73,0x5b,0x23,0x63,0x6f,0x72,0x6f,0x75,\n    0x74,0x69,0x6e,0x65,0x73,0x20,0x2b,0x20,0x31,0x5d,0x20,0x3d,0x20,0x7b,0x20,0x74,\n    0x61,0x67,0x20,0x3d,0x20,0x22,0x63,0x6f,0x72,0x6f,0x75,0x74,0x69,0x6e,0x65,0x22,\n    0x2c,0x20,0x61,0x74,0x74,0x72,0x20,0x3d,0x20,0x7b,0x20,0x69,0x64,0x20,0x3d,0x20,\n    0x69,0x64,0x2c,0x20,0x6e,0x61,0x6d,0x65,0x20,0x3d,0x20,0x74,0x6f,0x73,0x74,0x72,\n    0x69,0x6e,0x67,0x28,0x63,0x6f,0x72,0x6f,0x29,0x2c,0x20,0x72,0x75,0x6e,0x6e,0x69,\n    0x6e,0x67,0x20,0x3d,0x20,0x28,0x63,0x6f,0x72,0x6f,0x20,0x3d,0x3d,0x20,0x72,0x75,\n    0x6e,0x6e,0x69,0x6e,0x67,0x29,0x20,0x61,0x6e,0x64,0x20,0x22,0x31,0x22,0x20,0x6f,\n    0x72,0x20,0x22,0x30,0x22,0x20,0x7d,0x20,0x7d,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,0x20,0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,\n    0x20,0x20,0x64,0x62,0x67,0x70,0x2e,0x73,0x65,0x6e,0x64,0x5f,0x78,0x6d,0x6c,0x28,\n    0x73,0x65,0x6c,0x66,0x2e,0x73,0x6b,0x74,0x2c,0x20,0x63,0x6f,0x72,0x6f,0x75,0x74,\n    0x69,0x6e,0x65,0x73,0x29,0x0a,0x65,0x6e,0x64,0x0a,0x0a,0x66,0x75,0x6e,0x63,0x74,\n    0x69,0x6f,0x6e,0x20,0x4d,0x2e,0x63,0x6f,0x6e,0x74,0x65,0x78,0x74,0x5f,0x6e,0x61,\n    0x6d,0x65,0x73,0x28,0x73,0x65,0x6c,0x66,0x2c,0x20,0x61,0x72,0x67,0x73,0x29,0x0a,\n    0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x63,0x6f,0x72,0x6f,0x20,0x3d,\n    0x20,0x67,0x65,0x74,0x5f,0x63,0x6f,0x72,0x6f,0x75,0x74,0x69,0x6e,0x65,0x28,0x73,\n    0x65,0x6c,0x66,0x2c,0x20,0x61,0x72,0x67,0x73,0x2e,0x6f,0x29,0x0a,0x20,0x20,0x20,\n    0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x6c,0x65,0x76,0x65,0x6c,0x20,0x3d,0x20,0x74,\n    0x6f,0x6e,0x75,0x6d,0x62,0x65,0x72,0x28,0x61,0x72,0x67,0x73,0x2e,0x64,0x20,0x6f,\n    0x72,0x20,0x30,0x29,0x0a,0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x69,\n    0x6e,0x66,0x6f,0x20,0x3d,0x20,0x63,0x6f,0x72,0x6f,0x3a,0x67,0x65,0x74,0x69,0x6e,\n    0x66,0x6f,0x28,0x6c,0x65,0x76,0x65,0x6c,0x2c,0x20,0x22,0x66,0x22,0x29,0x20,0x6f,\n    0x72,0x20,0x64,0x62,0x67,0x70,0x2e,0x65,0x72,0x72,0x6f,0x72,0x28,0x33,0x30,0x31,\n    0x2c,0x20,0x22,0x4e,0x6f,0x20,0x73,0x75,0x63,0x68,0x20,0x73,0x74,0x61,0x63,0x6b,\n    0x20,0x6c,0x65,0x76,0x65,0x6c,0x20,0x22,0x2e,0x2e,0x74,0x6f,0x73,0x74,0x72,0x69,\n    0x6e,0x67,0x28,0x6c,0x65,0x76,0x65,0x6c,0x29,0x29,0x0a,0x0a,0x20,0x20,0x20,0x20,\n    0x2d,0x2d,0x20,0x41,0x6c,0x6c,0x20,0x63,0x6f,0x6e,0x74,0x65,0x78,0x74,0x73,0x20,\n    0x61,0x72,0x65,0x20,0x61,0x6c,0x77,0x61,0x79,0x73,0x20,0x70,0x61,0x73,0x73,0x65,\n    0x64,0x2c,0x20,0x65,0x76,0x65,0x6e,0x20,0x69,0x66,0x20,0x65,0x6d,0x70,0x74,0x79,\n    0x2e,0x20,0x54,0x68,0x69,0x73,0x20,0x69,0x73,0x20,0x68,0x6f,0x77,0x20,0x44,0x4c,\n    0x54,0x4b,0x20,0x65,0x78,0x70,0x65,0x63,0x74,0x20,0x63,0x6f,0x6e,0x74,0x65,0x78,\n    0x74,0x2c,0x20,0x77,0x68,0x61,0x74,0x20,0x61,0x62,0x6f,0x75,0x74,0x20,0x6f,0x74,\n    0x68,0x65,0x72,0x73,0x20,0x3f,0x0a,0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,\n    0x20,0x63,0x6f,0x6e,0x74,0x65,0x78,0x74,0x73,0x20,0x3d,0x20,0x7b,0x0a,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x74,0x61,0x67,0x20,0x3d,0x20,0x22,0x72,0x65,0x73,\n    0x70,0x6f,0x6e,0x73,0x65,0x22,0x2c,0x20,0x61,0x74,0x74,0x72,0x20,0x3d,0x20,0x7b,\n    0x20,0x63,0x6f,0x6d,0x6d,0x61,0x6e,0x64,0x20,0x3d,0x20,0x22,0x63,0x6f,0x6e,0x74,\n    0x65,0x78,0x74,0x5f,0x6e,0x61,0x6d,0x65,0x73,0x22,0x2c,0x20,0x74,0x72,0x61,0x6e,\n    0x73,0x61,0x63,0x74,0x69,0x6f,0x6e,0x5f,0x69,0x64,0x20,0x3d,0x20,0x61,0x72,0x67,\n    0x73,0x2e,0x69,0x20,0x7d,0x2c,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x7b,\n    0x20,0x74,0x61,0x67,0x20,0x3d,0x20,0x22,0x63,0x6f,0x6e,0x74,0x65,0x78,0x74,0x22,\n    0x2c,0x20,0x61,0x74,0x74,0x72,0x20,0x3d,0x20,0x7b,0x20,0x6e,0x61,0x6d,0x65,0x20,\n    0x3d,0x20,0x22,0x4c,0x6f,0x63,0x61,0x6c,0x22,0x2c,0x20,0x20,0x20,0x69,0x64,0x20,\n    0x3d,0x20,0x30,0x20,0x7d,0x20,0x7d,0x2c,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x7b,0x20,0x74,0x61,0x67,0x20,0x3d,0x20,0x22,0x63,0x6f,0x6e,0x74,0x65,0x78,\n    0x74,0x22,0x2c,0x20,0x61,0x74,0x74,0x72,0x20,0x3d,0x20,0x7b,0x20,0x6e,0x61,0x6d,\n    0x65,0x20,0x3d,0x20,0x22,0x55,0x70,0x76,0x61,0x6c,0x75,0x65,0x22,0x2c,0x20,0x69,\n    0x64,0x20,0x3d,0x20,0x32,0x20,0x7d,0x20,0x7d,0x2c,0x0a,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x7b,0x20,0x74,0x61,0x67,0x20,0x3d,0x20,0x22,0x63,0x6f,0x6e,0x74,\n    0x65,0x78,0x74,0x22,0x2c,0x20,0x61,0x74,0x74,0x72,0x20,0x3d,0x20,0x7b,0x20,0x6e,\n    0x61,0x6d,0x65,0x20,0x3d,0x20,0x22,0x47,0x6c,0x6f,0x62,0x61,0x6c,0x22,0x2c,0x20,\n    0x20,0x69,0x64,0x20,0x3d,0x20,0x31,0x20,0x7d,0x20,0x7d,0x2c,0x0a,0x20,0x20,0x20,\n    0x20,0x7d,0x0a,0x0a,0x20,0x20,0x20,0x20,0x64,0x62,0x67,0x70,0x2e,0x73,0x65,0x6e,\n    0x64,0x5f,0x78,0x6d,0x6c,0x28,0x73,0x65,0x6c,0x66,0x2e,0x73,0x6b,0x74,0x2c,0x20,\n    0x63,0x6f,0x6e,0x74,0x65,0x78,0x74,0x73,0x29,0x0a,0x65,0x6e,0x64,0x0a,0x0a,0x66,\n    0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x20,0x4d,0x2e,0x63,0x6f,0x6e,0x74,0x65,0x78,\n    0x74,0x5f,0x67,0x65,0x74,0x28,0x73,0x65,0x6c,0x66,0x2c,0x20,0x61,0x72,0x67,0x73,\n    0x29,0x0a,0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x63,0x78,0x74,0x5f,\n    0x6e,0x75,0x6d,0x20,0x3d,0x20,0x74,0x6f,0x6e,0x75,0x6d,0x62,0x65,0x72,0x28,0x61,\n    0x72,0x67,0x73,0x2e,0x63,0x20,0x6f,0x72,0x20,0x30,0x29,0x0a,0x20,0x20,0x20,0x20,\n    0x6c,0x6f,0x63,0x61,0x6c,0x20,0x63,0x78,0x74,0x5f,0x69,0x64,0x20,0x3d,0x20,0x63,\n    0x6f,0x6e,0x74,0x65,0x78,0x74,0x2e,0x43,0x6f,0x6e,0x74,0x65,0x78,0x74,0x5b,0x63,\n    0x78,0x74,0x5f,0x6e,0x75,0x6d,0x5d,0x20,0x6f,0x72,0x20,0x64,0x62,0x67,0x70,0x2e,\n    0x65,0x72,0x72,0x6f,0x72,0x28,0x33,0x30,0x32,0x2c,0x20,0x22,0x4e,0x6f,0x20,0x73,\n    0x75,0x63,0x68,0x20,0x63,0x6f,0x6e,0x74,0x65,0x78,0x74,0x3a,0x20,0x22,0x2e,0x2e,\n    0x74,0x6f,0x73,0x74,0x72,0x69,0x6e,0x67,0x28,0x63,0x78,0x74,0x5f,0x6e,0x75,0x6d,\n    0x29,0x29,0x0a,0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x6c,0x65,0x76,\n    0x65,0x6c,0x20,0x3d,0x20,0x74,0x6f,0x6e,0x75,0x6d,0x62,0x65,0x72,0x28,0x61,0x72,\n    0x67,0x73,0x2e,0x64,0x20,0x6f,0x72,0x20,0x30,0x29,0x0a,0x20,0x20,0x20,0x20,0x6c,\n    0x6f,0x63,0x61,0x6c,0x20,0x63,0x6f,0x72,0x6f,0x20,0x3d,0x20,0x67,0x65,0x74,0x5f,\n    0x63,0x6f,0x72,0x6f,0x75,0x74,0x69,0x6e,0x65,0x28,0x73,0x65,0x6c,0x66,0x2c,0x20,\n    0x61,0x72,0x67,0x73,0x2e,0x6f,0x29,0x0a,0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,0x61,\n    0x6c,0x20,0x63,0x78,0x74,0x20,0x3d,0x20,0x73,0x65,0x6c,0x66,0x2e,0x73,0x74,0x61,\n    0x63,0x6b,0x28,0x63,0x6f,0x72,0x6f,0x2c,0x20,0x6c,0x65,0x76,0x65,0x6c,0x29,0x0a,\n    0x0a,0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x70,0x72,0x6f,0x70,0x65,\n    0x72,0x74,0x69,0x65,0x73,0x20,0x3d,0x20,0x7b,0x20,0x74,0x61,0x67,0x20,0x3d,0x20,\n    0x22,0x72,0x65,0x73,0x70,0x6f,0x6e,0x73,0x65,0x22,0x2c,0x20,0x61,0x74,0x74,0x72,\n    0x20,0x3d,0x20,0x7b,0x20,0x63,0x6f,0x6d,0x6d,0x61,0x6e,0x64,0x20,0x3d,0x20,0x22,\n    0x63,0x6f,0x6e,0x74,0x65,0x78,0x74,0x5f,0x67,0x65,0x74,0x22,0x2c,0x20,0x74,0x72,\n    0x61,0x6e,0x73,0x61,0x63,0x74,0x69,0x6f,0x6e,0x5f,0x69,0x64,0x20,0x3d,0x20,0x61,\n    0x72,0x67,0x73,0x2e,0x69,0x2c,0x20,0x63,0x6f,0x6e,0x74,0x65,0x78,0x74,0x20,0x3d,\n    0x20,0x63,0x6f,0x6e,0x74,0x65,0x78,0x74,0x7d,0x20,0x7d,0x0a,0x20,0x20,0x20,0x20,\n    0x2d,0x2d,0x20,0x69,0x74,0x65,0x72,0x61,0x74,0x69,0x6f,0x6e,0x20,0x6f,0x76,0x65,\n    0x72,0x20,0x67,0x6c,0x6f,0x62,0x61,0x6c,0x20,0x69,0x73,0x20,0x64,0x69,0x66,0x66,\n    0x65,0x72,0x65,0x6e,0x74,0x20,0x28,0x74,0x68,0x69,0x73,0x20,0x63,0x6f,0x75,0x6c,\n    0x64,0x20,0x62,0x65,0x20,0x75,0x6e,0x69,0x66,0x69,0x65,0x64,0x20,0x69,0x6e,0x20,\n    0x4c,0x75,0x61,0x20,0x35,0x2e,0x32,0x20,0x74,0x68,0x61,0x6e,0x6b,0x73,0x20,0x74,\n    0x6f,0x20,0x5f,0x5f,0x70,0x61,0x69,0x72,0x73,0x20,0x6d,0x65,0x74,0x61,0x6d,0x65,\n    0x74,0x68,0x6f,0x64,0x29,0x0a,0x20,0x20,0x20,0x20,0x66,0x6f,0x72,0x20,0x6e,0x61,\n    0x6d,0x65,0x2c,0x20,0x76,0x61,0x6c,0x20,0x69,0x6e,0x20,0x28,0x63,0x78,0x74,0x5f,\n    0x6e,0x75,0x6d,0x20,0x3d,0x3d,0x20,0x31,0x20,0x61,0x6e,0x64,0x20,0x6e,0x65,0x78,\n    0x74,0x20,0x6f,0x72,0x20,0x67,0x65,0x74,0x6d,0x65,0x74,0x61,0x74,0x61,0x62,0x6c,\n    0x65,0x28,0x63,0x78,0x74,0x5b,0x63,0x78,0x74,0x5f,0x69,0x64,0x5d,0x29,0x2e,0x69,\n    0x74,0x65,0x72,0x61,0x74,0x6f,0x72,0x29,0x2c,0x20,0x63,0x78,0x74,0x5b,0x63,0x78,\n    0x74,0x5f,0x69,0x64,0x5d,0x2c,0x20,0x6e,0x69,0x6c,0x20,0x64,0x6f,0x0a,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x2d,0x2d,0x20,0x74,0x68,0x65,0x20,0x44,0x42,0x47,\n    0x70,0x20,0x73,0x70,0x65,0x63,0x69,0x66,0x69,0x63,0x61,0x74,0x69,0x6f,0x6e,0x20,\n    0x69,0x73,0x20,0x6e,0x6f,0x74,0x20,0x63,0x6c,0x65,0x61,0x72,0x20,0x61,0x62,0x6f,\n    0x75,0x74,0x20,0x74,0x68,0x65,0x20,0x64,0x65,0x70,0x74,0x68,0x20,0x6f,0x66,0x20,\n    0x61,0x20,0x63,0x6f,0x6e,0x74,0x65,0x78,0x74,0x5f,0x67,0x65,0x74,0x2c,0x20,0x62,\n    0x75,0x74,0x20,0x61,0x20,0x72,0x65,0x63,0x75,0x72,0x73,0x69,0x76,0x65,0x20,0x67,\n    0x65,0x74,0x20,0x63,0x6f,0x75,0x6c,0x64,0x20,0x62,0x65,0x20,0x2a,0x72,0x65,0x61,\n    0x6c,0x6c,0x79,0x2a,0x20,0x73,0x6c,0x6f,0x77,0x20,0x69,0x6e,0x20,0x4c,0x75,0x61,\n    0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x70,0x72,0x6f,0x70,0x65,0x72,0x74,\n    0x69,0x65,0x73,0x5b,0x23,0x70,0x72,0x6f,0x70,0x65,0x72,0x74,0x69,0x65,0x73,0x20,\n    0x2b,0x20,0x31,0x5d,0x20,0x3d,0x20,0x69,0x6e,0x74,0x72,0x6f,0x73,0x70,0x65,0x63,\n    0x74,0x69,0x6f,0x6e,0x2e,0x6d,0x61,0x6b,0x65,0x5f,0x70,0x72,0x6f,0x70,0x65,0x72,\n    0x74,0x79,0x28,0x63,0x78,0x74,0x5f,0x6e,0x75,0x6d,0x2c,0x20,0x76,0x61,0x6c,0x2c,\n    0x20,0x6e,0x61,0x6d,0x65,0x2c,0x20,0x6e,0x69,0x6c,0x2c,0x20,0x30,0x2c,0x20,0x75,\n    0x74,0x69,0x6c,0x2e,0x66,0x65,0x61,0x74,0x75,0x72,0x65,0x73,0x2e,0x6d,0x61,0x78,\n    0x5f,0x63,0x68,0x69,0x6c,0x64,0x72,0x65,0x6e,0x2c,0x20,0x30,0x2c,0x0a,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x75,0x74,0x69,0x6c,0x2e,0x66,0x65,0x61,0x74,0x75,0x72,0x65,0x73,0x2e,\n    0x6d,0x61,0x78,0x5f,0x64,0x61,0x74,0x61,0x2c,0x20,0x63,0x78,0x74,0x5f,0x6e,0x75,\n    0x6d,0x20,0x7e,0x3d,0x20,0x31,0x29,0x0a,0x20,0x20,0x20,0x20,0x65,0x6e,0x64,0x0a,\n    0x0a,0x20,0x20,0x20,0x20,0x64,0x62,0x67,0x70,0x2e,0x73,0x65,0x6e,0x64,0x5f,0x78,\n    0x6d,0x6c,0x28,0x73,0x65,0x6c,0x66,0x2e,0x73,0x6b,0x74,0x2c,0x20,0x70,0x72,0x6f,\n    0x70,0x65,0x72,0x74,0x69,0x65,0x73,0x29,0x0a,0x65,0x6e,0x64,0x0a,0x0a,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x0a,0x2d,0x2d,\n    0x20,0x20,0x50,0x72,0x6f,0x70,0x65,0x72,0x74,0x79,0x5f,0x2a,0x20,0x63,0x6f,0x6d,\n    0x6d,0x61,0x6e,0x64,0x73,0x0a,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x0a,0x2d,0x2d,0x20,0x54,0x68,0x69,0x73,0x20,0x69,0x6e,\n    0x20,0x74,0x68,0x65,0x20,0x65,0x6e,0x76,0x69,0x72,0x6f,0x6e,0x6d,0x65,0x6e,0x74,\n    0x20,0x69,0x6e,0x20,0x77,0x68,0x69,0x63,0x68,0x20,0x70,0x72,0x6f,0x70,0x65,0x72,\n    0x74,0x69,0x65,0x73,0x20,0x61,0x72,0x65,0x20,0x67,0x65,0x74,0x20,0x6f,0x72,0x20,\n    0x73,0x65,0x74,0x2e,0x0a,0x2d,0x2d,0x20,0x49,0x74,0x20,0x6e,0x6f,0x74,0x61,0x62,\n    0x6c,0x79,0x20,0x63,0x6f,0x6e,0x74,0x61,0x69,0x6e,0x20,0x61,0x20,0x63,0x6f,0x6c,\n    0x6c,0x65,0x63,0x74,0x69,0x6f,0x6e,0x20,0x6f,0x66,0x20,0x70,0x72,0x6f,0x78,0x79,\n    0x20,0x74,0x61,0x62,0x6c,0x65,0x20,0x77,0x68,0x69,0x63,0x68,0x20,0x68,0x61,0x6e,\n    0x64,0x6c,0x65,0x20,0x74,0x72,0x61,0x6e,0x73,0x70,0x61,0x72,0x65,0x6e,0x74,0x65,\n    0x6c,0x79,0x20,0x67,0x65,0x74,0x2f,0x73,0x65,0x74,0x20,0x6f,0x70,0x65,0x72,0x61,\n    0x74,0x69,0x6f,0x6e,0x73,0x20,0x6f,0x6e,0x20,0x73,0x70,0x65,0x63,0x69,0x61,0x6c,\n    0x20,0x66,0x69,0x65,0x6c,0x64,0x73,0x0a,0x2d,0x2d,0x20,0x61,0x6e,0x64,0x20,0x74,\n    0x68,0x65,0x20,0x63,0x61,0x63,0x68,0x65,0x20,0x6f,0x66,0x20,0x63,0x6f,0x6d,0x70,\n    0x6c,0x65,0x78,0x20,0x6b,0x65,0x79,0x73,0x2e,0x0a,0x6c,0x6f,0x63,0x61,0x6c,0x20,\n    0x70,0x72,0x6f,0x70,0x65,0x72,0x74,0x79,0x5f,0x65,0x76,0x61,0x6c,0x75,0x61,0x74,\n    0x69,0x6f,0x6e,0x5f,0x65,0x6e,0x76,0x69,0x72,0x6f,0x6e,0x6d,0x65,0x6e,0x74,0x20,\n    0x3d,0x20,0x7b,0x0a,0x20,0x20,0x20,0x20,0x6b,0x65,0x79,0x5f,0x63,0x61,0x63,0x68,\n    0x65,0x20,0x3d,0x20,0x69,0x6e,0x74,0x72,0x6f,0x73,0x70,0x65,0x63,0x74,0x69,0x6f,\n    0x6e,0x2e,0x6b,0x65,0x79,0x5f,0x63,0x61,0x63,0x68,0x65,0x2c,0x0a,0x20,0x20,0x20,\n    0x20,0x6d,0x65,0x74,0x61,0x74,0x61,0x62,0x6c,0x65,0x20,0x3d,0x20,0x73,0x65,0x74,\n    0x6d,0x65,0x74,0x61,0x74,0x61,0x62,0x6c,0x65,0x28,0x7b,0x20,0x7d,0x2c,0x20,0x7b,\n    0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x5f,0x5f,0x69,0x6e,0x64,0x65,0x78,\n    0x20,0x3d,0x20,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x28,0x73,0x65,0x6c,0x66,\n    0x2c,0x20,0x74,0x62,0x6c,0x29,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x67,0x65,\n    0x74,0x6d,0x65,0x74,0x61,0x74,0x61,0x62,0x6c,0x65,0x28,0x74,0x62,0x6c,0x29,0x20,\n    0x65,0x6e,0x64,0x2c,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x5f,0x5f,0x6e,\n    0x65,0x77,0x69,0x6e,0x64,0x65,0x78,0x20,0x3d,0x20,0x66,0x75,0x6e,0x63,0x74,0x69,\n    0x6f,0x6e,0x28,0x73,0x65,0x6c,0x66,0x2c,0x20,0x74,0x62,0x6c,0x2c,0x20,0x6d,0x74,\n    0x29,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x73,0x65,0x74,0x6d,0x65,0x74,0x61,\n    0x74,0x61,0x62,0x6c,0x65,0x28,0x74,0x62,0x6c,0x2c,0x20,0x6d,0x74,0x29,0x20,0x65,\n    0x6e,0x64,0x2c,0x0a,0x20,0x20,0x20,0x20,0x7d,0x29,0x2c,0x0a,0x20,0x20,0x20,0x20,\n    0x65,0x6e,0x76,0x69,0x72,0x6f,0x6e,0x6d,0x65,0x6e,0x74,0x20,0x3d,0x20,0x75,0x74,\n    0x69,0x6c,0x2e,0x65,0x76,0x61,0x6c,0x5f,0x65,0x6e,0x76,0x2c,0x0a,0x7d,0x0a,0x2d,\n    0x2d,0x20,0x74,0x6f,0x20,0x61,0x6c,0x6c,0x6f,0x77,0x73,0x20,0x74,0x6f,0x20,0x62,\n    0x65,0x20,0x73,0x65,0x74,0x20,0x61,0x73,0x20,0x6d,0x65,0x74,0x61,0x74,0x61,0x62,\n    0x6c,0x65,0x0a,0x70,0x72,0x6f,0x70,0x65,0x72,0x74,0x79,0x5f,0x65,0x76,0x61,0x6c,\n    0x75,0x61,0x74,0x69,0x6f,0x6e,0x5f,0x65,0x6e,0x76,0x69,0x72,0x6f,0x6e,0x6d,0x65,\n    0x6e,0x74,0x2e,0x5f,0x5f,0x69,0x6e,0x64,0x65,0x78,0x20,0x3d,0x20,0x70,0x72,0x6f,\n    0x70,0x65,0x72,0x74,0x79,0x5f,0x65,0x76,0x61,0x6c,0x75,0x61,0x74,0x69,0x6f,0x6e,\n    0x5f,0x65,0x6e,0x76,0x69,0x72,0x6f,0x6e,0x6d,0x65,0x6e,0x74,0x0a,0x0a,0x66,0x75,\n    0x6e,0x63,0x74,0x69,0x6f,0x6e,0x20,0x4d,0x2e,0x70,0x72,0x6f,0x70,0x65,0x72,0x74,\n    0x79,0x5f,0x67,0x65,0x74,0x28,0x73,0x65,0x6c,0x66,0x2c,0x20,0x61,0x72,0x67,0x73,\n    0x29,0x0a,0x20,0x20,0x20,0x20,0x2d,0x2d,0x54,0x4f,0x44,0x4f,0x20,0x42,0x55,0x47,\n    0x20,0x45,0x43,0x4c,0x49,0x50,0x53,0x45,0x20,0x54,0x4f,0x4f,0x4c,0x53,0x4c,0x49,\n    0x4e,0x55,0x58,0x2d,0x39,0x39,0x20,0x33,0x35,0x32,0x33,0x31,0x36,0x0a,0x20,0x20,\n    0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x63,0x78,0x74,0x5f,0x6e,0x75,0x6d,0x2c,\n    0x20,0x6e,0x61,0x6d,0x65,0x20,0x3d,0x20,0x61,0x73,0x73,0x65,0x72,0x74,0x28,0x75,\n    0x74,0x69,0x6c,0x2e,0x75,0x6e,0x62,0x36,0x34,0x28,0x61,0x72,0x67,0x73,0x2e,0x6e,\n    0x29,0x3a,0x6d,0x61,0x74,0x63,0x68,0x28,0x22,0x5e,0x28,0x25,0x2d,0x3f,0x25,0x64,\n    0x2b,0x29,0x7c,0x28,0x2e,0x2a,0x29,0x24,0x22,0x29,0x29,0x0a,0x20,0x20,0x20,0x20,\n    0x63,0x78,0x74,0x5f,0x6e,0x75,0x6d,0x20,0x3d,0x20,0x74,0x6f,0x6e,0x75,0x6d,0x62,\n    0x65,0x72,0x28,0x61,0x72,0x67,0x73,0x2e,0x63,0x20,0x6f,0x72,0x20,0x63,0x78,0x74,\n    0x5f,0x6e,0x75,0x6d,0x29,0x0a,0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,\n    0x63,0x78,0x74,0x5f,0x69,0x64,0x20,0x3d,0x20,0x63,0x6f,0x6e,0x74,0x65,0x78,0x74,\n    0x2e,0x43,0x6f,0x6e,0x74,0x65,0x78,0x74,0x5b,0x63,0x78,0x74,0x5f,0x6e,0x75,0x6d,\n    0x5d,0x20,0x6f,0x72,0x20,0x64,0x62,0x67,0x70,0x2e,0x65,0x72,0x72,0x6f,0x72,0x28,\n    0x33,0x30,0x32,0x2c,0x20,0x22,0x4e,0x6f,0x20,0x73,0x75,0x63,0x68,0x20,0x63,0x6f,\n    0x6e,0x74,0x65,0x78,0x74,0x3a,0x20,0x22,0x2e,0x2e,0x74,0x6f,0x73,0x74,0x72,0x69,\n    0x6e,0x67,0x28,0x63,0x78,0x74,0x5f,0x6e,0x75,0x6d,0x29,0x29,0x0a,0x20,0x20,0x20,\n    0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x6c,0x65,0x76,0x65,0x6c,0x20,0x3d,0x20,0x74,\n    0x6f,0x6e,0x75,0x6d,0x62,0x65,0x72,0x28,0x61,0x72,0x67,0x73,0x2e,0x64,0x20,0x6f,\n    0x72,0x20,0x30,0x29,0x0a,0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x63,\n    0x6f,0x72,0x6f,0x20,0x3d,0x20,0x67,0x65,0x74,0x5f,0x63,0x6f,0x72,0x6f,0x75,0x74,\n    0x69,0x6e,0x65,0x28,0x73,0x65,0x6c,0x66,0x2c,0x20,0x61,0x72,0x67,0x73,0x2e,0x6f,\n    0x29,0x0a,0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x73,0x69,0x7a,0x65,\n    0x20,0x3d,0x20,0x74,0x6f,0x6e,0x75,0x6d,0x62,0x65,0x72,0x28,0x61,0x72,0x67,0x73,\n    0x2e,0x6d,0x20,0x6f,0x72,0x20,0x75,0x74,0x69,0x6c,0x2e,0x66,0x65,0x61,0x74,0x75,\n    0x72,0x65,0x73,0x2e,0x6d,0x61,0x78,0x5f,0x64,0x61,0x74,0x61,0x29,0x0a,0x20,0x20,\n    0x20,0x20,0x69,0x66,0x20,0x73,0x69,0x7a,0x65,0x20,0x3c,0x20,0x30,0x20,0x74,0x68,\n    0x65,0x6e,0x20,0x73,0x69,0x7a,0x65,0x20,0x3d,0x20,0x6e,0x69,0x6c,0x20,0x65,0x6e,\n    0x64,0x20,0x2d,0x2d,0x20,0x63,0x61,0x6c,0x6c,0x20,0x66,0x72,0x6f,0x6d,0x20,0x70,\n    0x72,0x6f,0x70,0x65,0x72,0x74,0x79,0x5f,0x76,0x61,0x6c,0x75,0x65,0x0a,0x20,0x20,\n    0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x70,0x61,0x67,0x65,0x20,0x3d,0x20,0x74,\n    0x6f,0x6e,0x75,0x6d,0x62,0x65,0x72,0x28,0x61,0x72,0x67,0x73,0x2e,0x70,0x20,0x6f,\n    0x72,0x20,0x30,0x29,0x0a,0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x63,\n    0x78,0x74,0x20,0x3d,0x20,0x73,0x65,0x6c,0x66,0x2e,0x73,0x74,0x61,0x63,0x6b,0x28,\n    0x63,0x6f,0x72,0x6f,0x2c,0x20,0x6c,0x65,0x76,0x65,0x6c,0x29,0x0a,0x20,0x20,0x20,\n    0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x63,0x68,0x75,0x6e,0x6b,0x20,0x3d,0x20,0x64,\n    0x62,0x67,0x70,0x2e,0x61,0x73,0x73,0x65,0x72,0x74,0x28,0x32,0x30,0x36,0x2c,0x20,\n    0x75,0x74,0x69,0x6c,0x2e,0x6c,0x6f,0x61,0x64,0x69,0x6e,0x28,0x22,0x72,0x65,0x74,\n    0x75,0x72,0x6e,0x20,0x22,0x2e,0x2e,0x6e,0x61,0x6d,0x65,0x2c,0x20,0x70,0x72,0x6f,\n    0x70,0x65,0x72,0x74,0x79,0x5f,0x65,0x76,0x61,0x6c,0x75,0x61,0x74,0x69,0x6f,0x6e,\n    0x5f,0x65,0x6e,0x76,0x69,0x72,0x6f,0x6e,0x6d,0x65,0x6e,0x74,0x29,0x29,0x0a,0x20,\n    0x20,0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x70,0x72,0x6f,0x70,0x20,0x3d,0x20,\n    0x73,0x65,0x6c,0x65,0x63,0x74,0x28,0x32,0x2c,0x20,0x64,0x62,0x67,0x70,0x2e,0x61,\n    0x73,0x73,0x65,0x72,0x74,0x28,0x33,0x30,0x30,0x2c,0x20,0x70,0x63,0x61,0x6c,0x6c,\n    0x28,0x63,0x68,0x75,0x6e,0x6b,0x2c,0x20,0x63,0x78,0x74,0x5b,0x63,0x78,0x74,0x5f,\n    0x69,0x64,0x5d,0x29,0x29,0x29,0x0a,0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,\n    0x20,0x72,0x65,0x73,0x70,0x6f,0x6e,0x73,0x65,0x20,0x3d,0x20,0x69,0x6e,0x74,0x72,\n    0x6f,0x73,0x70,0x65,0x63,0x74,0x69,0x6f,0x6e,0x2e,0x6d,0x61,0x6b,0x65,0x5f,0x70,\n    0x72,0x6f,0x70,0x65,0x72,0x74,0x79,0x28,0x63,0x78,0x74,0x5f,0x6e,0x75,0x6d,0x2c,\n    0x20,0x70,0x72,0x6f,0x70,0x2c,0x20,0x6e,0x61,0x6d,0x65,0x2c,0x20,0x6e,0x61,0x6d,\n    0x65,0x2c,0x20,0x75,0x74,0x69,0x6c,0x2e,0x66,0x65,0x61,0x74,0x75,0x72,0x65,0x73,\n    0x2e,0x6d,0x61,0x78,0x5f,0x64,0x65,0x70,0x74,0x68,0x2c,0x20,0x75,0x74,0x69,0x6c,\n    0x2e,0x66,0x65,0x61,0x74,0x75,0x72,0x65,0x73,0x2e,0x6d,0x61,0x78,0x5f,0x63,0x68,\n    0x69,0x6c,0x64,0x72,0x65,0x6e,0x2c,0x20,0x70,0x61,0x67,0x65,0x2c,0x20,0x73,0x69,\n    0x7a,0x65,0x29,0x0a,0x20,0x20,0x20,0x20,0x2d,0x2d,0x20,0x6d,0x61,0x6b,0x65,0x5f,\n    0x70,0x72,0x6f,0x70,0x65,0x72,0x74,0x79,0x20,0x69,0x73,0x20,0x6e,0x6f,0x74,0x20,\n    0x61,0x62,0x6c,0x65,0x20,0x74,0x6f,0x20,0x66,0x6c,0x61,0x67,0x20,0x73,0x70,0x65,\n    0x63,0x69,0x61,0x6c,0x20,0x76,0x61,0x72,0x69,0x61,0x62,0x6c,0x65,0x73,0x20,0x61,\n    0x73,0x20,0x73,0x75,0x63,0x68,0x20,0x77,0x68,0x65,0x6e,0x20,0x74,0x68,0x65,0x79,\n    0x20,0x61,0x72,0x65,0x20,0x61,0x74,0x20,0x72,0x6f,0x6f,0x74,0x20,0x6f,0x66,0x20,\n    0x70,0x72,0x6f,0x70,0x65,0x72,0x74,0x79,0x0a,0x20,0x20,0x20,0x20,0x2d,0x2d,0x20,\n    0x73,0x70,0x65,0x63,0x69,0x61,0x6c,0x20,0x76,0x61,0x72,0x69,0x61,0x62,0x6c,0x65,\n    0x73,0x20,0x71,0x75,0x65,0x72,0x69,0x65,0x73,0x20,0x61,0x72,0x65,0x20,0x69,0x6e,\n    0x20,0x74,0x68,0x65,0x20,0x66,0x6f,0x72,0x6d,0x20,0x22,0x3c,0x70,0x72,0x6f,0x78,\n    0x79,0x20,0x6e,0x61,0x6d,0x65,0x3e,0x5b,0x28,0x2e,0x2e,0x2e,0x29,0x5b,0x61,0x5d,\n    0x5b,0x62,0x5d,0x3c,0x2e,0x2e,0x2e,0x3e,0x5d,0x22,0x0a,0x20,0x20,0x20,0x20,0x2d,\n    0x2d,0x20,0x54,0x4f,0x44,0x4f,0x3a,0x20,0x73,0x75,0x63,0x68,0x20,0x70,0x61,0x72,\n    0x73,0x69,0x6e,0x67,0x20,0x69,0x73,0x20,0x66,0x61,0x72,0x20,0x66,0x72,0x6f,0x6d,\n    0x20,0x70,0x65,0x72,0x66,0x65,0x63,0x74,0x0a,0x20,0x20,0x20,0x20,0x69,0x66,0x20,\n    0x6e,0x61,0x6d,0x65,0x3a,0x6d,0x61,0x74,0x63,0x68,0x28,0x22,0x5e,0x5b,0x25,0x77,\n    0x5f,0x5d,0x2b,0x25,0x5b,0x2e,0x2d,0x25,0x62,0x5b,0x5d,0x25,0x5d,0x24,0x22,0x29,\n    0x20,0x3d,0x3d,0x20,0x6e,0x61,0x6d,0x65,0x20,0x74,0x68,0x65,0x6e,0x20,0x72,0x65,\n    0x73,0x70,0x6f,0x6e,0x73,0x65,0x2e,0x61,0x74,0x74,0x72,0x2e,0x74,0x79,0x70,0x65,\n    0x20,0x3d,0x20,0x22,0x73,0x70,0x65,0x63,0x69,0x61,0x6c,0x22,0x20,0x65,0x6e,0x64,\n    0x0a,0x20,0x20,0x20,0x20,0x64,0x62,0x67,0x70,0x2e,0x73,0x65,0x6e,0x64,0x5f,0x78,\n    0x6d,0x6c,0x28,0x73,0x65,0x6c,0x66,0x2e,0x73,0x6b,0x74,0x2c,0x20,0x7b,0x20,0x74,\n    0x61,0x67,0x20,0x3d,0x20,0x22,0x72,0x65,0x73,0x70,0x6f,0x6e,0x73,0x65,0x22,0x2c,\n    0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x61,\n    0x74,0x74,0x72,0x20,0x3d,0x20,0x7b,0x20,0x63,0x6f,0x6d,0x6d,0x61,0x6e,0x64,0x20,\n    0x3d,0x20,0x22,0x70,0x72,0x6f,0x70,0x65,0x72,0x74,0x79,0x5f,0x67,0x65,0x74,0x22,\n    0x2c,0x20,0x74,0x72,0x61,0x6e,0x73,0x61,0x63,0x74,0x69,0x6f,0x6e,0x5f,0x69,0x64,\n    0x20,0x3d,0x20,0x61,0x72,0x67,0x73,0x2e,0x69,0x2c,0x20,0x63,0x6f,0x6e,0x74,0x65,\n    0x78,0x74,0x20,0x3d,0x20,0x63,0x6f,0x6e,0x74,0x65,0x78,0x74,0x7d,0x2c,0x0a,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x72,0x65,0x73,\n    0x70,0x6f,0x6e,0x73,0x65,0x20,0x7d,0x20,0x29,0x0a,0x65,0x6e,0x64,0x0a,0x0a,0x66,\n    0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x20,0x4d,0x2e,0x70,0x72,0x6f,0x70,0x65,0x72,\n    0x74,0x79,0x5f,0x76,0x61,0x6c,0x75,0x65,0x28,0x73,0x65,0x6c,0x66,0x2c,0x20,0x61,\n    0x72,0x67,0x73,0x29,0x0a,0x20,0x20,0x20,0x20,0x61,0x72,0x67,0x73,0x2e,0x6d,0x20,\n    0x3d,0x20,0x2d,0x31,0x0a,0x20,0x20,0x20,0x20,0x4d,0x2e,0x70,0x72,0x6f,0x70,0x65,\n    0x72,0x74,0x79,0x5f,0x67,0x65,0x74,0x28,0x73,0x65,0x6c,0x66,0x2c,0x20,0x61,0x72,\n    0x67,0x73,0x29,0x0a,0x65,0x6e,0x64,0x0a,0x0a,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,\n    0x6e,0x20,0x4d,0x2e,0x70,0x72,0x6f,0x70,0x65,0x72,0x74,0x79,0x5f,0x73,0x65,0x74,\n    0x28,0x73,0x65,0x6c,0x66,0x2c,0x20,0x61,0x72,0x67,0x73,0x2c,0x20,0x64,0x61,0x74,\n    0x61,0x29,0x0a,0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x63,0x78,0x74,\n    0x5f,0x6e,0x75,0x6d,0x2c,0x20,0x6e,0x61,0x6d,0x65,0x20,0x3d,0x20,0x61,0x73,0x73,\n    0x65,0x72,0x74,0x28,0x75,0x74,0x69,0x6c,0x2e,0x75,0x6e,0x62,0x36,0x34,0x28,0x61,\n    0x72,0x67,0x73,0x2e,0x6e,0x29,0x3a,0x6d,0x61,0x74,0x63,0x68,0x28,0x22,0x5e,0x28,\n    0x25,0x2d,0x3f,0x25,0x64,0x2b,0x29,0x7c,0x28,0x2e,0x2a,0x29,0x24,0x22,0x29,0x29,\n    0x0a,0x20,0x20,0x20,0x20,0x63,0x78,0x74,0x5f,0x6e,0x75,0x6d,0x20,0x3d,0x20,0x74,\n    0x6f,0x6e,0x75,0x6d,0x62,0x65,0x72,0x28,0x61,0x72,0x67,0x73,0x2e,0x63,0x20,0x6f,\n    0x72,0x20,0x63,0x78,0x74,0x5f,0x6e,0x75,0x6d,0x29,0x0a,0x20,0x20,0x20,0x20,0x6c,\n    0x6f,0x63,0x61,0x6c,0x20,0x63,0x78,0x74,0x5f,0x69,0x64,0x20,0x3d,0x20,0x63,0x6f,\n    0x6e,0x74,0x65,0x78,0x74,0x2e,0x43,0x6f,0x6e,0x74,0x65,0x78,0x74,0x5b,0x63,0x78,\n    0x74,0x5f,0x6e,0x75,0x6d,0x5d,0x20,0x6f,0x72,0x20,0x64,0x62,0x67,0x70,0x2e,0x65,\n    0x72,0x72,0x6f,0x72,0x28,0x33,0x30,0x32,0x2c,0x20,0x22,0x4e,0x6f,0x20,0x73,0x75,\n    0x63,0x68,0x20,0x63,0x6f,0x6e,0x74,0x65,0x78,0x74,0x3a,0x20,0x22,0x2e,0x2e,0x74,\n    0x6f,0x73,0x74,0x72,0x69,0x6e,0x67,0x28,0x63,0x78,0x74,0x5f,0x6e,0x75,0x6d,0x29,\n    0x29,0x0a,0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x6c,0x65,0x76,0x65,\n    0x6c,0x20,0x3d,0x20,0x74,0x6f,0x6e,0x75,0x6d,0x62,0x65,0x72,0x28,0x61,0x72,0x67,\n    0x73,0x2e,0x64,0x20,0x6f,0x72,0x20,0x30,0x29,0x0a,0x20,0x20,0x20,0x20,0x6c,0x6f,\n    0x63,0x61,0x6c,0x20,0x63,0x6f,0x72,0x6f,0x20,0x3d,0x20,0x67,0x65,0x74,0x5f,0x63,\n    0x6f,0x72,0x6f,0x75,0x74,0x69,0x6e,0x65,0x28,0x73,0x65,0x6c,0x66,0x2c,0x20,0x61,\n    0x72,0x67,0x73,0x2e,0x6f,0x29,0x0a,0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,\n    0x20,0x63,0x78,0x74,0x20,0x3d,0x20,0x73,0x65,0x6c,0x66,0x2e,0x73,0x74,0x61,0x63,\n    0x6b,0x28,0x63,0x6f,0x72,0x6f,0x2c,0x20,0x6c,0x65,0x76,0x65,0x6c,0x29,0x0a,0x0a,\n    0x20,0x20,0x20,0x20,0x2d,0x2d,0x20,0x65,0x76,0x61,0x6c,0x75,0x61,0x74,0x65,0x20,\n    0x74,0x68,0x65,0x20,0x6e,0x65,0x77,0x20,0x76,0x61,0x6c,0x75,0x65,0x20,0x69,0x6e,\n    0x20,0x74,0x68,0x65,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x63,0x6f,0x6e,0x74,0x65,\n    0x78,0x74,0x0a,0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x76,0x61,0x6c,\n    0x75,0x65,0x20,0x3d,0x20,0x73,0x65,0x6c,0x65,0x63,0x74,0x28,0x32,0x2c,0x20,0x64,\n    0x62,0x67,0x70,0x2e,0x61,0x73,0x73,0x65,0x72,0x74,0x28,0x32,0x30,0x36,0x2c,0x20,\n    0x70,0x63,0x61,0x6c,0x6c,0x28,0x64,0x62,0x67,0x70,0x2e,0x61,0x73,0x73,0x65,0x72,\n    0x74,0x28,0x32,0x30,0x36,0x2c,0x20,0x75,0x74,0x69,0x6c,0x2e,0x6c,0x6f,0x61,0x64,\n    0x69,0x6e,0x28,0x22,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x22,0x2e,0x2e,0x64,0x61,\n    0x74,0x61,0x2c,0x20,0x63,0x78,0x74,0x29,0x29,0x29,0x29,0x29,0x0a,0x0a,0x20,0x20,\n    0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x63,0x68,0x75,0x6e,0x6b,0x20,0x3d,0x20,\n    0x64,0x62,0x67,0x70,0x2e,0x61,0x73,0x73,0x65,0x72,0x74,0x28,0x32,0x30,0x36,0x2c,\n    0x20,0x75,0x74,0x69,0x6c,0x2e,0x6c,0x6f,0x61,0x64,0x69,0x6e,0x28,0x6e,0x61,0x6d,\n    0x65,0x20,0x2e,0x2e,0x20,0x22,0x20,0x3d,0x20,0x76,0x61,0x6c,0x75,0x65,0x22,0x2c,\n    0x20,0x73,0x65,0x74,0x6d,0x65,0x74,0x61,0x74,0x61,0x62,0x6c,0x65,0x28,0x7b,0x20,\n    0x76,0x61,0x6c,0x75,0x65,0x20,0x3d,0x20,0x76,0x61,0x6c,0x75,0x65,0x20,0x7d,0x2c,\n    0x20,0x70,0x72,0x6f,0x70,0x65,0x72,0x74,0x79,0x5f,0x65,0x76,0x61,0x6c,0x75,0x61,\n    0x74,0x69,0x6f,0x6e,0x5f,0x65,0x6e,0x76,0x69,0x72,0x6f,0x6e,0x6d,0x65,0x6e,0x74,\n    0x29,0x29,0x29,0x0a,0x20,0x20,0x20,0x20,0x64,0x62,0x67,0x70,0x2e,0x61,0x73,0x73,\n    0x65,0x72,0x74,0x28,0x32,0x30,0x36,0x2c,0x20,0x70,0x63,0x61,0x6c,0x6c,0x28,0x63,\n    0x68,0x75,0x6e,0x6b,0x2c,0x20,0x63,0x78,0x74,0x5b,0x63,0x78,0x74,0x5f,0x69,0x64,\n    0x5d,0x29,0x29,0x0a,0x20,0x20,0x20,0x20,0x64,0x62,0x67,0x70,0x2e,0x73,0x65,0x6e,\n    0x64,0x5f,0x78,0x6d,0x6c,0x28,0x73,0x65,0x6c,0x66,0x2e,0x73,0x6b,0x74,0x2c,0x20,\n    0x7b,0x20,0x74,0x61,0x67,0x20,0x3d,0x20,0x22,0x72,0x65,0x73,0x70,0x6f,0x6e,0x73,\n    0x65,0x22,0x2c,0x20,0x61,0x74,0x74,0x72,0x20,0x3d,0x20,0x7b,0x20,0x73,0x75,0x63,\n    0x63,0x65,0x73,0x73,0x20,0x3d,0x20,0x31,0x2c,0x20,0x74,0x72,0x61,0x6e,0x73,0x61,\n    0x63,0x74,0x69,0x6f,0x6e,0x5f,0x69,0x64,0x20,0x3d,0x20,0x61,0x72,0x67,0x73,0x2e,\n    0x69,0x20,0x7d,0x20,0x7d,0x20,0x29,0x0a,0x65,0x6e,0x64,0x0a,0x0a,0x2d,0x2d,0x54,\n    0x4f,0x44,0x4f,0x20,0x64,0x79,0x6e,0x61,0x6d,0x69,0x63,0x20,0x63,0x6f,0x64,0x65,\n    0x20,0x68,0x61,0x6e,0x64,0x6c,0x69,0x6e,0x67,0x0a,0x2d,0x2d,0x20,0x54,0x68,0x65,\n    0x20,0x44,0x42,0x47,0x70,0x20,0x73,0x70,0x65,0x63,0x69,0x66,0x69,0x63,0x61,0x74,\n    0x69,0x6f,0x6e,0x20,0x69,0x73,0x20,0x6e,0x6f,0x74,0x20,0x63,0x6c,0x65,0x61,0x72,\n    0x20,0x61,0x62,0x6f,0x75,0x74,0x20,0x74,0x68,0x65,0x20,0x6c,0x69,0x6e,0x65,0x20,\n    0x6e,0x75,0x6d,0x62,0x65,0x72,0x20,0x6d,0x65,0x61,0x6e,0x69,0x6e,0x67,0x2c,0x20,\n    0x74,0x68,0x69,0x73,0x20,0x69,0x6d,0x70,0x6c,0x65,0x6d,0x65,0x6e,0x74,0x61,0x74,\n    0x69,0x6f,0x6e,0x20,0x69,0x73,0x20,0x31,0x2d,0x62,0x61,0x73,0x65,0x64,0x20,0x61,\n    0x6e,0x64,0x20,0x6e,0x75,0x6d,0x62,0x65,0x72,0x73,0x20,0x61,0x72,0x65,0x20,0x69,\n    0x6e,0x63,0x6c,0x75,0x73,0x69,0x76,0x65,0x0a,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,\n    0x6e,0x20,0x4d,0x2e,0x73,0x6f,0x75,0x72,0x63,0x65,0x28,0x73,0x65,0x6c,0x66,0x2c,\n    0x20,0x61,0x72,0x67,0x73,0x29,0x0a,0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,\n    0x20,0x70,0x61,0x74,0x68,0x0a,0x20,0x20,0x20,0x20,0x69,0x66,0x20,0x61,0x72,0x67,\n    0x73,0x2e,0x66,0x20,0x74,0x68,0x65,0x6e,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x70,0x61,0x74,0x68,0x20,0x3d,0x20,0x70,0x6c,0x61,0x74,0x66,0x6f,0x72,0x6d,\n    0x2e,0x67,0x65,0x74,0x5f,0x70,0x61,0x74,0x68,0x28,0x61,0x72,0x67,0x73,0x2e,0x66,\n    0x29,0x0a,0x20,0x20,0x20,0x20,0x65,0x6c,0x73,0x65,0x0a,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x70,0x61,0x74,0x68,0x20,0x3d,0x20,0x73,0x65,0x6c,0x66,0x2e,0x63,\n    0x6f,0x72,0x6f,0x3a,0x67,0x65,0x74,0x69,0x6e,0x66,0x6f,0x28,0x30,0x2c,0x20,0x22,\n    0x53,0x22,0x29,0x2e,0x73,0x6f,0x75,0x72,0x63,0x65,0x0a,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x61,0x73,0x73,0x65,0x72,0x74,0x28,0x70,0x61,0x74,0x68,0x3a,0x73,\n    0x75,0x62,0x28,0x31,0x2c,0x31,0x29,0x20,0x3d,0x3d,0x20,0x22,0x40,0x22,0x29,0x0a,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x70,0x61,0x74,0x68,0x20,0x3d,0x20,0x70,\n    0x61,0x74,0x68,0x3a,0x73,0x75,0x62,0x28,0x32,0x29,0x0a,0x20,0x20,0x20,0x20,0x65,\n    0x6e,0x64,0x0a,0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x66,0x69,0x6c,\n    0x65,0x2c,0x20,0x65,0x72,0x72,0x20,0x3d,0x20,0x69,0x6f,0x2e,0x6f,0x70,0x65,0x6e,\n    0x28,0x70,0x61,0x74,0x68,0x29,0x0a,0x20,0x20,0x20,0x20,0x69,0x66,0x20,0x6e,0x6f,\n    0x74,0x20,0x66,0x69,0x6c,0x65,0x20,0x74,0x68,0x65,0x6e,0x20,0x64,0x62,0x67,0x70,\n    0x2e,0x65,0x72,0x72,0x6f,0x72,0x28,0x31,0x30,0x30,0x2c,0x20,0x65,0x72,0x72,0x2c,\n    0x20,0x7b,0x20,0x73,0x75,0x63,0x63,0x65,0x73,0x73,0x20,0x3d,0x20,0x30,0x20,0x7d,\n    0x29,0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,0x20,0x20,0x2d,0x2d,0x20,0x54,0x72,0x79,\n    0x20,0x74,0x6f,0x20,0x69,0x64,0x65,0x6e,0x74,0x69,0x66,0x79,0x20,0x63,0x6f,0x6d,\n    0x70,0x69,0x6c,0x65,0x64,0x20,0x66,0x69,0x6c,0x65,0x73,0x0a,0x20,0x20,0x20,0x20,\n    0x69,0x66,0x20,0x66,0x69,0x6c,0x65,0x3a,0x72,0x65,0x61,0x64,0x28,0x31,0x29,0x20,\n    0x3d,0x3d,0x20,0x22,0x5c,0x30,0x33,0x33,0x22,0x20,0x74,0x68,0x65,0x6e,0x20,0x64,\n    0x62,0x67,0x70,0x2e,0x65,0x72,0x72,0x6f,0x72,0x28,0x31,0x30,0x30,0x2c,0x20,0x61,\n    0x72,0x67,0x73,0x2e,0x66,0x2e,0x2e,0x22,0x20,0x69,0x73,0x20,0x62,0x79,0x74,0x65,\n    0x63,0x6f,0x64,0x65,0x22,0x2c,0x20,0x7b,0x20,0x73,0x75,0x63,0x63,0x65,0x73,0x73,\n    0x20,0x3d,0x20,0x30,0x20,0x7d,0x29,0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,0x20,0x20,\n    0x66,0x69,0x6c,0x65,0x3a,0x73,0x65,0x65,0x6b,0x28,0x22,0x73,0x65,0x74,0x22,0x2c,\n    0x20,0x30,0x29,0x0a,0x0a,0x0a,0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,\n    0x73,0x72,0x63,0x6c,0x69,0x6e,0x65,0x73,0x20,0x3d,0x20,0x7b,0x20,0x7d,0x0a,0x20,\n    0x20,0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x62,0x65,0x67,0x69,0x6e,0x6c,0x69,\n    0x6e,0x65,0x2c,0x20,0x65,0x6e,0x64,0x6c,0x69,0x6e,0x65,0x2c,0x20,0x63,0x75,0x72,\n    0x72,0x65,0x6e,0x74,0x6c,0x69,0x6e,0x65,0x20,0x3d,0x20,0x74,0x6f,0x6e,0x75,0x6d,\n    0x62,0x65,0x72,0x28,0x61,0x72,0x67,0x73,0x2e,0x62,0x20,0x6f,0x72,0x20,0x30,0x29,\n    0x2c,0x20,0x74,0x6f,0x6e,0x75,0x6d,0x62,0x65,0x72,0x28,0x61,0x72,0x67,0x73,0x2e,\n    0x65,0x20,0x6f,0x72,0x20,0x6d,0x61,0x74,0x68,0x2e,0x68,0x75,0x67,0x65,0x29,0x2c,\n    0x20,0x30,0x0a,0x20,0x20,0x20,0x20,0x66,0x6f,0x72,0x20,0x6c,0x69,0x6e,0x65,0x20,\n    0x69,0x6e,0x20,0x66,0x69,0x6c,0x65,0x3a,0x6c,0x69,0x6e,0x65,0x73,0x28,0x29,0x20,\n    0x64,0x6f,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x63,0x75,0x72,0x72,0x65,\n    0x6e,0x74,0x6c,0x69,0x6e,0x65,0x20,0x3d,0x20,0x63,0x75,0x72,0x72,0x65,0x6e,0x74,\n    0x6c,0x69,0x6e,0x65,0x20,0x2b,0x20,0x31,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x69,0x66,0x20,0x63,0x75,0x72,0x72,0x65,0x6e,0x74,0x6c,0x69,0x6e,0x65,0x20,\n    0x3e,0x3d,0x20,0x62,0x65,0x67,0x69,0x6e,0x6c,0x69,0x6e,0x65,0x20,0x61,0x6e,0x64,\n    0x20,0x63,0x75,0x72,0x72,0x65,0x6e,0x74,0x6c,0x69,0x6e,0x65,0x20,0x3c,0x3d,0x20,\n    0x65,0x6e,0x64,0x6c,0x69,0x6e,0x65,0x20,0x74,0x68,0x65,0x6e,0x0a,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x73,0x72,0x63,0x6c,0x69,0x6e,0x65,\n    0x73,0x5b,0x23,0x73,0x72,0x63,0x6c,0x69,0x6e,0x65,0x73,0x20,0x2b,0x20,0x31,0x5d,\n    0x20,0x3d,0x20,0x6c,0x69,0x6e,0x65,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x65,0x6c,0x73,0x65,0x69,0x66,0x20,0x63,0x75,0x72,0x72,0x65,0x6e,0x74,0x6c,0x69,\n    0x6e,0x65,0x20,0x3e,0x3d,0x20,0x65,0x6e,0x64,0x6c,0x69,0x6e,0x65,0x20,0x74,0x68,\n    0x65,0x6e,0x20,0x62,0x72,0x65,0x61,0x6b,0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,0x20,\n    0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,0x20,0x20,0x66,0x69,0x6c,0x65,0x3a,0x63,0x6c,\n    0x6f,0x73,0x65,0x28,0x29,0x0a,0x20,0x20,0x20,0x20,0x73,0x72,0x63,0x6c,0x69,0x6e,\n    0x65,0x73,0x5b,0x23,0x73,0x72,0x63,0x6c,0x69,0x6e,0x65,0x73,0x20,0x2b,0x20,0x31,\n    0x5d,0x20,0x3d,0x20,0x22,0x22,0x20,0x2d,0x2d,0x20,0x74,0x6f,0x20,0x61,0x64,0x64,\n    0x20,0x61,0x20,0x74,0x72,0x61,0x69,0x6c,0x69,0x6e,0x67,0x20,0x5c,0x6e,0x0a,0x0a,\n    0x20,0x20,0x20,0x20,0x64,0x62,0x67,0x70,0x2e,0x73,0x65,0x6e,0x64,0x5f,0x78,0x6d,\n    0x6c,0x28,0x73,0x65,0x6c,0x66,0x2e,0x73,0x6b,0x74,0x2c,0x20,0x7b,0x20,0x74,0x61,\n    0x67,0x20,0x3d,0x20,0x22,0x72,0x65,0x73,0x70,0x6f,0x6e,0x73,0x65,0x22,0x2c,0x0a,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x61,0x74,\n    0x74,0x72,0x20,0x3d,0x20,0x7b,0x20,0x63,0x6f,0x6d,0x6d,0x61,0x6e,0x64,0x20,0x3d,\n    0x20,0x22,0x73,0x6f,0x75,0x72,0x63,0x65,0x22,0x2c,0x20,0x74,0x72,0x61,0x6e,0x73,\n    0x61,0x63,0x74,0x69,0x6f,0x6e,0x5f,0x69,0x64,0x20,0x3d,0x20,0x61,0x72,0x67,0x73,\n    0x2e,0x69,0x2c,0x20,0x73,0x75,0x63,0x63,0x65,0x73,0x73,0x20,0x3d,0x20,0x31,0x7d,\n    0x2c,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x75,0x74,0x69,0x6c,0x2e,0x62,0x36,0x34,0x28,0x74,0x61,0x62,0x6c,0x65,0x2e,0x63,\n    0x6f,0x6e,0x63,0x61,0x74,0x28,0x73,0x72,0x63,0x6c,0x69,0x6e,0x65,0x73,0x2c,0x20,\n    0x22,0x5c,0x6e,0x22,0x29,0x29,0x20,0x7d,0x29,0x0a,0x65,0x6e,0x64,0x0a,0x0a,0x2d,\n    0x2d,0x20,0x46,0x61,0x63,0x74,0x6f,0x72,0x79,0x20,0x66,0x6f,0x72,0x20,0x62,0x6f,\n    0x74,0x68,0x20,0x73,0x74,0x64,0x6f,0x75,0x74,0x20,0x61,0x6e,0x64,0x20,0x73,0x74,\n    0x64,0x65,0x72,0x72,0x20,0x63,0x6f,0x6d,0x6d,0x61,0x6e,0x64,0x73,0x2c,0x20,0x63,\n    0x68,0x61,0x6e,0x67,0x65,0x20,0x66,0x69,0x6c,0x65,0x20,0x64,0x65,0x73,0x63,0x72,\n    0x69,0x70,0x74,0x6f,0x72,0x20,0x69,0x6e,0x20,0x69,0x6f,0x0a,0x6c,0x6f,0x63,0x61,\n    0x6c,0x20,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x20,0x6f,0x75,0x74,0x70,0x75,\n    0x74,0x5f,0x63,0x6f,0x6d,0x6d,0x61,0x6e,0x64,0x5f,0x68,0x61,0x6e,0x64,0x6c,0x65,\n    0x72,0x5f,0x66,0x61,0x63,0x74,0x6f,0x72,0x79,0x28,0x6d,0x6f,0x64,0x65,0x29,0x0a,\n    0x20,0x20,0x20,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x66,0x75,0x6e,0x63,0x74,\n    0x69,0x6f,0x6e,0x28,0x73,0x65,0x6c,0x66,0x2c,0x20,0x61,0x72,0x67,0x73,0x29,0x0a,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x69,0x66,0x20,0x61,0x72,0x67,0x73,0x2e,\n    0x63,0x20,0x3d,0x3d,0x20,0x22,0x30,0x22,0x20,0x74,0x68,0x65,0x6e,0x20,0x2d,0x2d,\n    0x20,0x64,0x69,0x73,0x61,0x62,0x6c,0x65,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x69,0x6f,0x5b,0x6d,0x6f,0x64,0x65,0x5d,0x20,0x3d,0x20,\n    0x69,0x6f,0x2e,0x62,0x61,0x73,0x65,0x5b,0x6d,0x6f,0x64,0x65,0x5d,0x0a,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x65,0x6c,0x73,0x65,0x0a,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x69,0x6f,0x5b,0x6d,0x6f,0x64,0x65,0x5d,0x20,\n    0x3d,0x20,0x73,0x65,0x74,0x6d,0x65,0x74,0x61,0x74,0x61,0x62,0x6c,0x65,0x28,0x7b,\n    0x20,0x73,0x6b,0x74,0x20,0x3d,0x20,0x73,0x65,0x6c,0x66,0x2e,0x73,0x6b,0x74,0x2c,\n    0x20,0x6d,0x6f,0x64,0x65,0x20,0x3d,0x20,0x6d,0x6f,0x64,0x65,0x20,0x7d,0x2c,0x20,\n    0x61,0x72,0x67,0x73,0x2e,0x63,0x20,0x3d,0x3d,0x20,0x22,0x31,0x22,0x20,0x61,0x6e,\n    0x64,0x20,0x63,0x6f,0x72,0x65,0x2e,0x63,0x6f,0x70,0x79,0x5f,0x6f,0x75,0x74,0x70,\n    0x75,0x74,0x20,0x6f,0x72,0x20,0x63,0x6f,0x72,0x65,0x2e,0x72,0x65,0x64,0x69,0x72,\n    0x65,0x63,0x74,0x5f,0x6f,0x75,0x74,0x70,0x75,0x74,0x29,0x0a,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x64,0x62,0x67,0x70,0x2e,0x73,0x65,0x6e,0x64,0x5f,0x78,0x6d,0x6c,0x28,0x73,0x65,\n    0x6c,0x66,0x2e,0x73,0x6b,0x74,0x2c,0x20,0x7b,0x20,0x74,0x61,0x67,0x20,0x3d,0x20,\n    0x22,0x72,0x65,0x73,0x70,0x6f,0x6e,0x73,0x65,0x22,0x2c,0x20,0x61,0x74,0x74,0x72,\n    0x20,0x3d,0x20,0x7b,0x20,0x63,0x6f,0x6d,0x6d,0x61,0x6e,0x64,0x20,0x3d,0x20,0x6d,\n    0x6f,0x64,0x65,0x2c,0x20,0x74,0x72,0x61,0x6e,0x73,0x61,0x63,0x74,0x69,0x6f,0x6e,\n    0x5f,0x69,0x64,0x20,0x3d,0x20,0x61,0x72,0x67,0x73,0x2e,0x69,0x2c,0x20,0x73,0x75,\n    0x63,0x63,0x65,0x73,0x73,0x20,0x3d,0x20,0x22,0x31,0x22,0x20,0x7d,0x20,0x7d,0x20,\n    0x29,0x0a,0x20,0x20,0x20,0x20,0x65,0x6e,0x64,0x0a,0x65,0x6e,0x64,0x0a,0x0a,0x4d,\n    0x2e,0x73,0x74,0x64,0x6f,0x75,0x74,0x20,0x3d,0x20,0x6f,0x75,0x74,0x70,0x75,0x74,\n    0x5f,0x63,0x6f,0x6d,0x6d,0x61,0x6e,0x64,0x5f,0x68,0x61,0x6e,0x64,0x6c,0x65,0x72,\n    0x5f,0x66,0x61,0x63,0x74,0x6f,0x72,0x79,0x28,0x22,0x73,0x74,0x64,0x6f,0x75,0x74,\n    0x22,0x29,0x0a,0x4d,0x2e,0x73,0x74,0x64,0x65,0x72,0x72,0x20,0x3d,0x20,0x6f,0x75,\n    0x74,0x70,0x75,0x74,0x5f,0x63,0x6f,0x6d,0x6d,0x61,0x6e,0x64,0x5f,0x68,0x61,0x6e,\n    0x64,0x6c,0x65,0x72,0x5f,0x66,0x61,0x63,0x74,0x6f,0x72,0x79,0x28,0x22,0x73,0x74,\n    0x64,0x65,0x72,0x72,0x22,0x29,0x0a,0x0a,0x0a,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,\n    0x4d,0x0a,0x0a,0x65,0x6e,0x64,0x0a,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x0a,0x2d,0x2d,0x20,0x45,0x6e,0x64,0x20,0x6f,\n    0x66,0x20,0x6d,0x6f,0x64,0x75,0x6c,0x65,0x64,0x65,0x62,0x75,0x67,0x67,0x65,0x72,\n    0x2e,0x63,0x6f,0x6d,0x6d,0x61,0x6e,0x64,0x73,0x0a,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x0a,0x0a,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x0a,0x2d,0x2d,0x20,\n    0x20,0x4d,0x6f,0x64,0x75,0x6c,0x65,0x20,0x64,0x65,0x62,0x75,0x67,0x67,0x65,0x72,\n    0x2e,0x63,0x6f,0x6e,0x74,0x65,0x78,0x74,0x0a,0x70,0x61,0x63,0x6b,0x61,0x67,0x65,\n    0x2e,0x70,0x72,0x65,0x6c,0x6f,0x61,0x64,0x5b,0x22,0x64,0x65,0x62,0x75,0x67,0x67,\n    0x65,0x72,0x2e,0x63,0x6f,0x6e,0x74,0x65,0x78,0x74,0x22,0x5d,0x20,0x3d,0x20,0x66,\n    0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x28,0x2e,0x2e,0x2e,0x29,0x0a,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x0a,0x2d,0x2d,0x20,\n    0x43,0x6f,0x70,0x79,0x72,0x69,0x67,0x68,0x74,0x20,0x28,0x63,0x29,0x20,0x32,0x30,\n    0x31,0x31,0x2d,0x32,0x30,0x31,0x32,0x20,0x53,0x69,0x65,0x72,0x72,0x61,0x20,0x57,\n    0x69,0x72,0x65,0x6c,0x65,0x73,0x73,0x20,0x61,0x6e,0x64,0x20,0x6f,0x74,0x68,0x65,\n    0x72,0x73,0x2e,0x0a,0x2d,0x2d,0x20,0x41,0x6c,0x6c,0x20,0x72,0x69,0x67,0x68,0x74,\n    0x73,0x20,0x72,0x65,0x73,0x65,0x72,0x76,0x65,0x64,0x2e,0x20,0x54,0x68,0x69,0x73,\n    0x20,0x70,0x72,0x6f,0x67,0x72,0x61,0x6d,0x20,0x61,0x6e,0x64,0x20,0x74,0x68,0x65,\n    0x20,0x61,0x63,0x63,0x6f,0x6d,0x70,0x61,0x6e,0x79,0x69,0x6e,0x67,0x20,0x6d,0x61,\n    0x74,0x65,0x72,0x69,0x61,0x6c,0x73,0x0a,0x2d,0x2d,0x20,0x61,0x72,0x65,0x20,0x6d,\n    0x61,0x64,0x65,0x20,0x61,0x76,0x61,0x69,0x6c,0x61,0x62,0x6c,0x65,0x20,0x75,0x6e,\n    0x64,0x65,0x72,0x20,0x74,0x68,0x65,0x20,0x74,0x65,0x72,0x6d,0x73,0x20,0x6f,0x66,\n    0x20,0x74,0x68,0x65,0x20,0x45,0x63,0x6c,0x69,0x70,0x73,0x65,0x20,0x50,0x75,0x62,\n    0x6c,0x69,0x63,0x20,0x4c,0x69,0x63,0x65,0x6e,0x73,0x65,0x20,0x76,0x31,0x2e,0x30,\n    0x0a,0x2d,0x2d,0x20,0x77,0x68,0x69,0x63,0x68,0x20,0x61,0x63,0x63,0x6f,0x6d,0x70,\n    0x61,0x6e,0x69,0x65,0x73,0x20,0x74,0x68,0x69,0x73,0x20,0x64,0x69,0x73,0x74,0x72,\n    0x69,0x62,0x75,0x74,0x69,0x6f,0x6e,0x2c,0x20,0x61,0x6e,0x64,0x20,0x69,0x73,0x20,\n    0x61,0x76,0x61,0x69,0x6c,0x61,0x62,0x6c,0x65,0x20,0x61,0x74,0x0a,0x2d,0x2d,0x20,\n    0x68,0x74,0x74,0x70,0x3a,0x2f,0x2f,0x77,0x77,0x77,0x2e,0x65,0x63,0x6c,0x69,0x70,\n    0x73,0x65,0x2e,0x6f,0x72,0x67,0x2f,0x6c,0x65,0x67,0x61,0x6c,0x2f,0x65,0x70,0x6c,\n    0x2d,0x76,0x31,0x30,0x2e,0x68,0x74,0x6d,0x6c,0x0a,0x2d,0x2d,0x0a,0x2d,0x2d,0x20,\n    0x43,0x6f,0x6e,0x74,0x72,0x69,0x62,0x75,0x74,0x6f,0x72,0x73,0x3a,0x0a,0x2d,0x2d,\n    0x20,0x20,0x20,0x20,0x20,0x53,0x69,0x65,0x72,0x72,0x61,0x20,0x57,0x69,0x72,0x65,\n    0x6c,0x65,0x73,0x73,0x20,0x2d,0x20,0x69,0x6e,0x69,0x74,0x69,0x61,0x6c,0x20,0x41,\n    0x50,0x49,0x20,0x61,0x6e,0x64,0x20,0x69,0x6d,0x70,0x6c,0x65,0x6d,0x65,0x6e,0x74,\n    0x61,0x74,0x69,0x6f,0x6e,0x0a,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x0a,0x2d,0x2d,0x20,0x20,0x43,0x6f,0x6e,0x74,0x65,0x78,\n    0x74,0x20,0x68,0x61,0x6e,0x64,0x6c,0x69,0x6e,0x67,0x3a,0x20,0x61,0x6c,0x6c,0x6f,\n    0x77,0x73,0x20,0x74,0x6f,0x20,0x65,0x76,0x61,0x6c,0x75,0x61,0x74,0x65,0x20,0x63,\n    0x6f,0x64,0x65,0x20,0x73,0x6e,0x69,0x70,0x70,0x65,0x74,0x73,0x20,0x69,0x6e,0x20,\n    0x74,0x68,0x65,0x20,0x63,0x6f,0x6e,0x74,0x65,0x78,0x74,0x20,0x6f,0x66,0x20,0x61,\n    0x20,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x0a,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x0a,0x0a,0x6c,0x6f,0x63,0x61,0x6c,\n    0x20,0x4d,0x20,0x3d,0x20,0x7b,0x20,0x7d,0x0a,0x0a,0x6c,0x6f,0x63,0x61,0x6c,0x20,\n    0x64,0x62,0x67,0x70,0x20,0x3d,0x20,0x72,0x65,0x71,0x75,0x69,0x72,0x65,0x20,0x22,\n    0x64,0x65,0x62,0x75,0x67,0x67,0x65,0x72,0x2e,0x64,0x62,0x67,0x70,0x22,0x0a,0x6c,\n    0x6f,0x63,0x61,0x6c,0x20,0x75,0x74,0x69,0x6c,0x20,0x3d,0x20,0x72,0x65,0x71,0x75,\n    0x69,0x72,0x65,0x20,0x22,0x64,0x65,0x62,0x75,0x67,0x67,0x65,0x72,0x2e,0x75,0x74,\n    0x69,0x6c,0x22,0x0a,0x0a,0x2d,0x2d,0x20,0x6d,0x61,0x6b,0x65,0x20,0x75,0x6e,0x69,\n    0x71,0x75,0x65,0x20,0x6f,0x62,0x6a,0x65,0x63,0x74,0x20,0x74,0x6f,0x20,0x61,0x63,\n    0x63,0x65,0x73,0x73,0x20,0x63,0x6f,0x6e,0x74,0x65,0x78,0x74,0x73,0x0a,0x6c,0x6f,\n    0x63,0x61,0x6c,0x20,0x4c,0x4f,0x43,0x41,0x4c,0x2c,0x20,0x55,0x50,0x56,0x41,0x4c,\n    0x2c,0x20,0x47,0x4c,0x4f,0x42,0x41,0x4c,0x2c,0x20,0x45,0x56,0x41,0x4c,0x2c,0x20,\n    0x53,0x54,0x4f,0x52,0x45,0x2c,0x20,0x48,0x41,0x4e,0x44,0x4c,0x45,0x20,0x3d,0x20,\n    0x7b,0x7d,0x2c,0x20,0x7b,0x7d,0x2c,0x20,0x7b,0x7d,0x2c,0x20,0x7b,0x7d,0x2c,0x20,\n    0x7b,0x7d,0x2c,0x20,0x7b,0x7d,0x0a,0x0a,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x67,0x65,\n    0x74,0x67,0x6c,0x6f,0x62,0x61,0x6c,0x73,0x0a,0x69,0x66,0x20,0x5f,0x56,0x45,0x52,\n    0x53,0x49,0x4f,0x4e,0x20,0x3d,0x3d,0x20,0x22,0x4c,0x75,0x61,0x20,0x35,0x2e,0x31,\n    0x22,0x20,0x74,0x68,0x65,0x6e,0x0a,0x20,0x20,0x20,0x20,0x67,0x65,0x74,0x67,0x6c,\n    0x6f,0x62,0x61,0x6c,0x73,0x20,0x3d,0x20,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,\n    0x28,0x66,0x29,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x67,0x65,0x74,0x66,0x65,\n    0x6e,0x76,0x28,0x66,0x29,0x20,0x65,0x6e,0x64,0x0a,0x65,0x6c,0x73,0x65,0x69,0x66,\n    0x20,0x5f,0x56,0x45,0x52,0x53,0x49,0x4f,0x4e,0x20,0x3d,0x3d,0x20,0x22,0x4c,0x75,\n    0x61,0x20,0x35,0x2e,0x32,0x22,0x20,0x74,0x68,0x65,0x6e,0x0a,0x20,0x20,0x20,0x20,\n    0x67,0x65,0x74,0x67,0x6c,0x6f,0x62,0x61,0x6c,0x73,0x20,0x3d,0x20,0x66,0x75,0x6e,\n    0x63,0x74,0x69,0x6f,0x6e,0x28,0x66,0x2c,0x20,0x63,0x78,0x74,0x29,0x0a,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x2d,0x2d,0x20,0x27,0x67,0x6c,0x6f,0x62,0x61,0x6c,\n    0x27,0x20,0x65,0x6e,0x76,0x69,0x72,0x6f,0x6e,0x6d,0x65,0x6e,0x74,0x3a,0x20,0x74,\n    0x68,0x69,0x73,0x20,0x69,0x73,0x20,0x65,0x69,0x74,0x68,0x65,0x72,0x20,0x74,0x68,\n    0x65,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x5f,0x45,0x4e,0x56,0x20,0x6f,0x72,0x20,\n    0x75,0x70,0x76,0x61,0x6c,0x75,0x65,0x20,0x5f,0x45,0x4e,0x56,0x2e,0x20,0x41,0x20,\n    0x73,0x70,0x65,0x63,0x69,0x61,0x6c,0x20,0x63,0x61,0x73,0x65,0x20,0x68,0x61,0x70,\n    0x70,0x65,0x6e,0x20,0x77,0x68,0x65,0x6e,0x20,0x61,0x0a,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x2d,0x2d,0x20,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x20,0x64,\n    0x6f,0x65,0x73,0x20,0x6e,0x6f,0x74,0x20,0x72,0x65,0x66,0x65,0x72,0x65,0x6e,0x63,\n    0x65,0x20,0x61,0x6e,0x79,0x20,0x67,0x6c,0x6f,0x62,0x61,0x6c,0x20,0x76,0x61,0x72,\n    0x69,0x61,0x62,0x6c,0x65,0x3a,0x20,0x74,0x68,0x65,0x20,0x75,0x70,0x76,0x61,0x6c,\n    0x75,0x65,0x20,0x5f,0x45,0x4e,0x56,0x20,0x6d,0x61,0x79,0x20,0x6e,0x6f,0x74,0x20,\n    0x65,0x78,0x69,0x73,0x74,0x20,0x61,0x74,0x20,0x61,0x6c,0x6c,0x2e,0x20,0x49,0x6e,\n    0x20,0x74,0x68,0x69,0x73,0x20,0x63,0x61,0x73,0x65,0x2c,0x0a,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x2d,0x2d,0x20,0x67,0x6c,0x6f,0x62,0x61,0x6c,0x20,0x65,0x6e,\n    0x76,0x69,0x72,0x6f,0x6e,0x6d,0x65,0x6e,0x74,0x20,0x69,0x73,0x20,0x6e,0x6f,0x74,\n    0x20,0x72,0x65,0x6c,0x65,0x76,0x61,0x6e,0x74,0x20,0x73,0x6f,0x20,0x69,0x74,0x20,\n    0x69,0x73,0x20,0x66,0x69,0x78,0x65,0x64,0x20,0x74,0x6f,0x20,0x61,0x6e,0x20,0x65,\n    0x6d,0x70,0x74,0x79,0x20,0x74,0x61,0x62,0x6c,0x65,0x2e,0x20,0x41,0x6e,0x6f,0x74,\n    0x68,0x65,0x72,0x20,0x73,0x6f,0x6c,0x75,0x74,0x69,0x6f,0x6e,0x20,0x77,0x6f,0x75,\n    0x6c,0x64,0x20,0x62,0x65,0x20,0x74,0x6f,0x20,0x73,0x65,0x74,0x20,0x69,0x74,0x0a,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x2d,0x2d,0x20,0x74,0x6f,0x20,0x74,0x68,\n    0x65,0x20,0x65,0x6e,0x76,0x69,0x72,0x6f,0x6e,0x6d,0x65,0x6e,0x74,0x20,0x66,0x72,\n    0x6f,0x6d,0x20,0x61,0x62,0x6f,0x76,0x65,0x20,0x73,0x74,0x61,0x63,0x6b,0x20,0x6c,\n    0x65,0x76,0x65,0x6c,0x20,0x62,0x75,0x74,0x20,0x69,0x74,0x20,0x77,0x6f,0x75,0x6c,\n    0x64,0x20,0x72,0x65,0x71,0x75,0x69,0x72,0x65,0x20,0x73,0x6f,0x6d,0x65,0x20,0x6f,\n    0x76,0x65,0x72,0x68,0x65,0x61,0x64,0x20,0x28,0x65,0x73,0x70,0x65,0x63,0x69,0x61,\n    0x6c,0x6c,0x79,0x20,0x69,0x66,0x20,0x6d,0x75,0x6c,0x74,0x69,0x70,0x6c,0x65,0x0a,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x2d,0x2d,0x20,0x6c,0x65,0x76,0x65,0x6c,\n    0x73,0x20,0x6d,0x75,0x73,0x74,0x20,0x62,0x65,0x20,0x69,0x6e,0x73,0x74,0x61,0x6e,\n    0x74,0x69,0x61,0x74,0x65,0x64,0x29,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x69,0x66,0x20,0x20,0x20,0x20,0x20,0x63,0x78,0x74,0x5b,0x4c,0x4f,0x43,0x41,0x4c,\n    0x5d,0x5b,0x53,0x54,0x4f,0x52,0x45,0x5d,0x5b,0x22,0x5f,0x45,0x4e,0x56,0x22,0x5d,\n    0x20,0x74,0x68,0x65,0x6e,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x63,0x78,0x74,\n    0x5b,0x4c,0x4f,0x43,0x41,0x4c,0x5d,0x5b,0x22,0x5f,0x45,0x4e,0x56,0x22,0x5d,0x0a,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x65,0x6c,0x73,0x65,0x69,0x66,0x20,0x63,\n    0x78,0x74,0x5b,0x55,0x50,0x56,0x41,0x4c,0x5d,0x5b,0x53,0x54,0x4f,0x52,0x45,0x5d,\n    0x5b,0x22,0x5f,0x45,0x4e,0x56,0x22,0x5d,0x20,0x74,0x68,0x65,0x6e,0x20,0x72,0x65,\n    0x74,0x75,0x72,0x6e,0x20,0x63,0x78,0x74,0x5b,0x55,0x50,0x56,0x41,0x4c,0x5d,0x5b,\n    0x22,0x5f,0x45,0x4e,0x56,0x22,0x5d,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x65,0x6c,0x73,0x65,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x7b,0x20,0x7d,0x20,\n    0x65,0x6e,0x64,0x0a,0x20,0x20,0x20,0x20,0x65,0x6e,0x64,0x0a,0x65,0x6e,0x64,0x0a,\n    0x0a,0x2d,0x2d,0x2d,0x20,0x43,0x61,0x70,0x74,0x75,0x72,0x65,0x73,0x20,0x76,0x61,\n    0x72,0x69,0x61,0x62,0x6c,0x65,0x73,0x20,0x66,0x6f,0x72,0x20,0x67,0x69,0x76,0x65,\n    0x6e,0x20,0x73,0x74,0x61,0x63,0x6b,0x20,0x6c,0x65,0x76,0x65,0x6c,0x2e,0x20,0x54,\n    0x68,0x65,0x20,0x63,0x61,0x70,0x74,0x75,0x72,0x65,0x20,0x63,0x6f,0x6e,0x74,0x61,\n    0x69,0x6e,0x73,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x2c,0x20,0x75,0x70,0x76,0x61,0x6c,\n    0x75,0x65,0x73,0x20,0x61,0x6e,0x64,0x20,0x67,0x6c,0x6f,0x62,0x61,0x6c,0x20,0x76,\n    0x61,0x72,0x69,0x61,0x62,0x6c,0x65,0x73,0x2e,0x0a,0x2d,0x2d,0x20,0x54,0x68,0x65,\n    0x20,0x63,0x61,0x70,0x74,0x75,0x72,0x65,0x20,0x63,0x61,0x6e,0x20,0x62,0x65,0x20,\n    0x73,0x65,0x65,0x6e,0x20,0x61,0x73,0x20,0x61,0x20,0x70,0x72,0x6f,0x78,0x79,0x20,\n    0x74,0x61,0x62,0x6c,0x65,0x20,0x74,0x6f,0x20,0x74,0x68,0x65,0x20,0x73,0x74,0x61,\n    0x63,0x6b,0x20,0x6c,0x65,0x76,0x65,0x6c,0x3a,0x20,0x61,0x6e,0x79,0x20,0x76,0x61,\n    0x6c,0x75,0x65,0x20,0x63,0x61,0x6e,0x20,0x62,0x65,0x20,0x71,0x75,0x65,0x72,0x69,\n    0x65,0x64,0x20,0x6f,0x72,0x20,0x73,0x65,0x74,0x20,0x6e,0x6f,0x20,0x6d,0x61,0x74,\n    0x74,0x65,0x72,0x0a,0x2d,0x2d,0x20,0x69,0x74,0x20,0x69,0x73,0x20,0x61,0x20,0x6c,\n    0x6f,0x63,0x61,0x6c,0x20,0x6f,0x72,0x20,0x61,0x6e,0x20,0x75,0x70,0x76,0x61,0x6c,\n    0x75,0x65,0x2e,0x0a,0x2d,0x2d,0x20,0x54,0x68,0x65,0x20,0x69,0x6e,0x64,0x69,0x76,\n    0x69,0x64,0x75,0x61,0x6c,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x61,0x6e,0x64,0x20,\n    0x75,0x70,0x76,0x61,0x6c,0x75,0x65,0x73,0x20,0x63,0x6f,0x6e,0x74,0x65,0x78,0x74,\n    0x20,0x61,0x72,0x65,0x20,0x61,0x6c,0x73,0x6f,0x20,0x61,0x76,0x61,0x69,0x6c,0x61,\n    0x62,0x6c,0x65,0x20,0x61,0x6e,0x64,0x20,0x63,0x61,0x6e,0x20,0x62,0x65,0x20,0x71,\n    0x75,0x65,0x72,0x69,0x65,0x64,0x20,0x61,0x6e,0x64,0x20,0x6d,0x6f,0x64,0x69,0x66,\n    0x69,0x65,0x64,0x20,0x77,0x69,0x74,0x68,0x20,0x69,0x6e,0x64,0x65,0x78,0x65,0x64,\n    0x20,0x6e,0x6f,0x74,0x61,0x74,0x69,0x6f,0x6e,0x20,0x74,0x6f,0x6f,0x2e,0x0a,0x2d,\n    0x2d,0x20,0x54,0x68,0x65,0x73,0x65,0x20,0x6f,0x62,0x6a,0x65,0x63,0x74,0x73,0x20,\n    0x61,0x72,0x65,0x20,0x4e,0x4f,0x54,0x20,0x70,0x65,0x72,0x73,0x69,0x73,0x74,0x61,\n    0x6e,0x74,0x20,0x61,0x6e,0x64,0x20,0x6d,0x75,0x73,0x74,0x20,0x6e,0x6f,0x74,0x20,\n    0x62,0x65,0x20,0x75,0x73,0x65,0x64,0x20,0x6f,0x75,0x74,0x73,0x69,0x64,0x65,0x20,\n    0x74,0x68,0x65,0x20,0x64,0x65,0x62,0x75,0x67,0x67,0x65,0x72,0x20,0x6c,0x6f,0x6f,\n    0x70,0x20,0x77,0x68,0x69,0x63,0x68,0x20,0x69,0x6e,0x73,0x74,0x61,0x6e,0x63,0x69,\n    0x61,0x74,0x65,0x64,0x20,0x74,0x68,0x65,0x6d,0x20,0x21,0x0a,0x4d,0x2e,0x43,0x6f,\n    0x6e,0x74,0x65,0x78,0x74,0x20,0x3d,0x20,0x7b,0x0a,0x20,0x20,0x20,0x20,0x2d,0x2d,\n    0x20,0x43,0x6f,0x6e,0x74,0x65,0x78,0x74,0x20,0x69,0x64,0x65,0x6e,0x74,0x69,0x66,\n    0x69,0x65,0x72,0x73,0x20,0x63,0x61,0x6e,0x20,0x62,0x65,0x20,0x61,0x63,0x63,0x65,\n    0x73,0x73,0x65,0x64,0x20,0x62,0x79,0x20,0x74,0x68,0x65,0x69,0x72,0x20,0x44,0x42,\n    0x47,0x70,0x20,0x63,0x6f,0x6e,0x74,0x65,0x78,0x74,0x20,0x49,0x44,0x0a,0x20,0x20,\n    0x20,0x20,0x5b,0x30,0x5d,0x20,0x3d,0x20,0x4c,0x4f,0x43,0x41,0x4c,0x2c,0x0a,0x20,\n    0x20,0x20,0x20,0x5b,0x31,0x5d,0x20,0x3d,0x20,0x47,0x4c,0x4f,0x42,0x41,0x4c,0x2c,\n    0x20,0x2d,0x2d,0x20,0x44,0x4c,0x54,0x4b,0x20,0x69,0x6e,0x74,0x65,0x72,0x6e,0x61,\n    0x6c,0x20,0x49,0x44,0x20,0x66,0x6f,0x72,0x20,0x67,0x6c,0x6f,0x62,0x61,0x6c,0x73,\n    0x20,0x69,0x73,0x20,0x31,0x0a,0x20,0x20,0x20,0x20,0x5b,0x32,0x5d,0x20,0x3d,0x20,\n    0x55,0x50,0x56,0x41,0x4c,0x2c,0x0a,0x20,0x20,0x20,0x20,0x2d,0x2d,0x20,0x45,0x56,\n    0x41,0x4c,0x20,0x69,0x73,0x20,0x75,0x73,0x65,0x64,0x20,0x74,0x6f,0x20,0x6b,0x65,\n    0x65,0x70,0x20,0x72,0x65,0x73,0x75,0x6c,0x74,0x73,0x20,0x66,0x72,0x6f,0x6d,0x20,\n    0x65,0x76,0x61,0x6c,0x20,0x69,0x6e,0x20,0x63,0x61,0x63,0x68,0x65,0x20,0x69,0x6e,\n    0x20,0x6f,0x72,0x64,0x65,0x72,0x20,0x74,0x6f,0x20,0x62,0x72,0x6f,0x77,0x73,0x65,\n    0x20,0x6f,0x72,0x20,0x6d,0x6f,0x64,0x69,0x66,0x79,0x20,0x74,0x68,0x65,0x6d,0x2c,\n    0x20,0x72,0x65,0x73,0x75,0x6c,0x74,0x73,0x20,0x61,0x72,0x65,0x20,0x73,0x74,0x6f,\n    0x72,0x65,0x64,0x20,0x61,0x73,0x20,0x73,0x65,0x71,0x75,0x65,0x6e,0x63,0x65,0x0a,\n    0x20,0x20,0x20,0x20,0x5b,0x2d,0x31,0x5d,0x20,0x3d,0x20,0x45,0x56,0x41,0x4c,0x2c,\n    0x0a,0x20,0x20,0x20,0x20,0x53,0x54,0x4f,0x52,0x45,0x20,0x3d,0x20,0x53,0x54,0x4f,\n    0x52,0x45,0x2c,0x0a,0x0a,0x20,0x20,0x20,0x20,0x2d,0x2d,0x20,0x67,0x65,0x74,0x73,\n    0x20,0x61,0x20,0x76,0x61,0x72,0x69,0x61,0x62,0x6c,0x65,0x20,0x62,0x79,0x20,0x6e,\n    0x61,0x6d,0x65,0x20,0x77,0x69,0x74,0x68,0x20,0x63,0x6f,0x72,0x72,0x65,0x63,0x74,\n    0x20,0x68,0x61,0x6e,0x64,0x6c,0x69,0x6e,0x67,0x20,0x6f,0x66,0x20,0x4c,0x75,0x61,\n    0x20,0x73,0x63,0x6f,0x70,0x65,0x20,0x63,0x68,0x61,0x69,0x6e,0x0a,0x20,0x20,0x20,\n    0x20,0x2d,0x2d,0x20,0x74,0x68,0x65,0x20,0x6f,0x72,0x20,0x63,0x68,0x61,0x69,0x6e,\n    0x20,0x64,0x6f,0x65,0x73,0x20,0x6e,0x6f,0x74,0x20,0x77,0x6f,0x72,0x6b,0x20,0x68,\n    0x65,0x72,0x65,0x20,0x62,0x65,0x61,0x63,0x61,0x75,0x73,0x65,0x20,0x5f,0x5f,0x69,\n    0x6e,0x64,0x65,0x78,0x20,0x6d,0x65,0x74,0x61,0x6d,0x65,0x74,0x68,0x6f,0x64,0x20,\n    0x77,0x6f,0x75,0x6c,0x64,0x20,0x72,0x61,0x69,0x73,0x65,0x20,0x61,0x6e,0x20,0x65,\n    0x72,0x72,0x6f,0x72,0x20,0x69,0x6e,0x73,0x74,0x65,0x61,0x64,0x20,0x6f,0x66,0x20,\n    0x72,0x65,0x74,0x75,0x72,0x6e,0x69,0x6e,0x67,0x20,0x6e,0x69,0x6c,0x0a,0x20,0x20,\n    0x20,0x20,0x5f,0x5f,0x69,0x6e,0x64,0x65,0x78,0x20,0x3d,0x20,0x66,0x75,0x6e,0x63,\n    0x74,0x69,0x6f,0x6e,0x28,0x73,0x65,0x6c,0x66,0x2c,0x20,0x6b,0x29,0x0a,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x69,0x66,0x20,0x20,0x20,0x20,0x20,0x73,0x65,0x6c,\n    0x66,0x5b,0x4c,0x4f,0x43,0x41,0x4c,0x5d,0x5b,0x53,0x54,0x4f,0x52,0x45,0x5d,0x5b,\n    0x6b,0x5d,0x20,0x74,0x68,0x65,0x6e,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x73,\n    0x65,0x6c,0x66,0x5b,0x4c,0x4f,0x43,0x41,0x4c,0x5d,0x5b,0x6b,0x5d,0x0a,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x65,0x6c,0x73,0x65,0x69,0x66,0x20,0x73,0x65,0x6c,\n    0x66,0x5b,0x55,0x50,0x56,0x41,0x4c,0x5d,0x5b,0x53,0x54,0x4f,0x52,0x45,0x5d,0x5b,\n    0x6b,0x5d,0x20,0x74,0x68,0x65,0x6e,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x73,\n    0x65,0x6c,0x66,0x5b,0x55,0x50,0x56,0x41,0x4c,0x5d,0x5b,0x6b,0x5d,0x0a,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x65,0x6c,0x73,0x65,0x20,0x72,0x65,0x74,0x75,0x72,\n    0x6e,0x20,0x73,0x65,0x6c,0x66,0x5b,0x47,0x4c,0x4f,0x42,0x41,0x4c,0x5d,0x5b,0x6b,\n    0x5d,0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,0x20,0x20,0x65,0x6e,0x64,0x2c,0x0a,0x20,\n    0x20,0x20,0x20,0x5f,0x5f,0x6e,0x65,0x77,0x69,0x6e,0x64,0x65,0x78,0x20,0x3d,0x20,\n    0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x28,0x73,0x65,0x6c,0x66,0x2c,0x20,0x6b,\n    0x2c,0x20,0x76,0x29,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x69,0x66,0x20,\n    0x20,0x20,0x20,0x20,0x73,0x65,0x6c,0x66,0x5b,0x4c,0x4f,0x43,0x41,0x4c,0x5d,0x5b,\n    0x53,0x54,0x4f,0x52,0x45,0x5d,0x5b,0x6b,0x5d,0x20,0x74,0x68,0x65,0x6e,0x20,0x73,\n    0x65,0x6c,0x66,0x5b,0x4c,0x4f,0x43,0x41,0x4c,0x5d,0x5b,0x6b,0x5d,0x20,0x3d,0x20,\n    0x76,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x65,0x6c,0x73,0x65,0x69,0x66,\n    0x20,0x73,0x65,0x6c,0x66,0x5b,0x55,0x50,0x56,0x41,0x4c,0x5d,0x5b,0x53,0x54,0x4f,\n    0x52,0x45,0x5d,0x5b,0x6b,0x5d,0x20,0x74,0x68,0x65,0x6e,0x20,0x73,0x65,0x6c,0x66,\n    0x5b,0x55,0x50,0x56,0x41,0x4c,0x5d,0x5b,0x6b,0x5d,0x20,0x3d,0x20,0x76,0x0a,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x65,0x6c,0x73,0x65,0x20,0x73,0x65,0x6c,0x66,\n    0x5b,0x47,0x4c,0x4f,0x42,0x41,0x4c,0x5d,0x5b,0x6b,0x5d,0x20,0x3d,0x20,0x76,0x20,\n    0x65,0x6e,0x64,0x0a,0x20,0x20,0x20,0x20,0x65,0x6e,0x64,0x2c,0x0a,0x0a,0x20,0x20,\n    0x20,0x20,0x2d,0x2d,0x20,0x64,0x65,0x62,0x75,0x67,0x20,0x6f,0x6e,0x6c,0x79,0x20,\n    0x21,0x21,0x0a,0x20,0x20,0x20,0x20,0x5f,0x5f,0x74,0x6f,0x73,0x74,0x72,0x69,0x6e,\n    0x67,0x20,0x3d,0x20,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x28,0x73,0x65,0x6c,\n    0x66,0x29,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,\n    0x20,0x62,0x75,0x66,0x20,0x3d,0x20,0x7b,0x20,0x22,0x4c,0x6f,0x63,0x61,0x6c,0x73,\n    0x3a,0x20,0x5c,0x6e,0x22,0x20,0x7d,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x66,0x6f,0x72,0x20,0x6b,0x2c,0x76,0x20,0x69,0x6e,0x20,0x70,0x61,0x69,0x72,0x73,\n    0x28,0x73,0x65,0x6c,0x66,0x5b,0x4c,0x4f,0x43,0x41,0x4c,0x5d,0x5b,0x53,0x54,0x4f,\n    0x52,0x45,0x5d,0x29,0x20,0x64,0x6f,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x62,0x75,0x66,0x5b,0x23,0x62,0x75,0x66,0x2b,0x31,0x5d,0x20,\n    0x3d,0x20,0x22,0x5c,0x74,0x22,0x2e,0x2e,0x74,0x6f,0x73,0x74,0x72,0x69,0x6e,0x67,\n    0x28,0x6b,0x29,0x2e,0x2e,0x22,0x28,0x22,0x2e,0x2e,0x74,0x6f,0x73,0x74,0x72,0x69,\n    0x6e,0x67,0x28,0x76,0x29,0x2e,0x2e,0x22,0x29,0x3d,0x22,0x2e,0x2e,0x74,0x6f,0x73,\n    0x74,0x72,0x69,0x6e,0x67,0x28,0x73,0x65,0x6c,0x66,0x5b,0x4c,0x4f,0x43,0x41,0x4c,\n    0x5d,0x5b,0x6b,0x5d,0x29,0x2e,0x2e,0x22,0x5c,0x6e,0x22,0x0a,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x62,0x75,0x66,0x5b,0x23,0x62,0x75,0x66,0x2b,0x31,0x5d,0x20,0x3d,0x20,0x22,0x55,\n    0x70,0x76,0x61,0x6c,0x75,0x65,0x73,0x3a,0x20,0x5c,0x6e,0x22,0x0a,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x66,0x6f,0x72,0x20,0x6b,0x2c,0x76,0x20,0x69,0x6e,0x20,\n    0x70,0x61,0x69,0x72,0x73,0x28,0x73,0x65,0x6c,0x66,0x5b,0x55,0x50,0x56,0x41,0x4c,\n    0x5d,0x5b,0x53,0x54,0x4f,0x52,0x45,0x5d,0x29,0x20,0x64,0x6f,0x0a,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x62,0x75,0x66,0x5b,0x23,0x62,0x75,\n    0x66,0x2b,0x31,0x5d,0x20,0x3d,0x20,0x22,0x5c,0x74,0x22,0x2e,0x2e,0x74,0x6f,0x73,\n    0x74,0x72,0x69,0x6e,0x67,0x28,0x6b,0x29,0x2e,0x2e,0x22,0x28,0x22,0x2e,0x2e,0x74,\n    0x6f,0x73,0x74,0x72,0x69,0x6e,0x67,0x28,0x76,0x29,0x2e,0x2e,0x22,0x29,0x3d,0x22,\n    0x2e,0x2e,0x74,0x6f,0x73,0x74,0x72,0x69,0x6e,0x67,0x28,0x73,0x65,0x6c,0x66,0x5b,\n    0x55,0x50,0x56,0x41,0x4c,0x5d,0x5b,0x6b,0x5d,0x29,0x2e,0x2e,0x22,0x5c,0x6e,0x22,\n    0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x74,0x61,0x62,0x6c,\n    0x65,0x2e,0x63,0x6f,0x6e,0x63,0x61,0x74,0x28,0x62,0x75,0x66,0x29,0x0a,0x20,0x20,\n    0x20,0x20,0x65,0x6e,0x64,0x2c,0x0a,0x0a,0x20,0x20,0x20,0x20,0x4c,0x6f,0x63,0x61,\n    0x6c,0x43,0x6f,0x6e,0x74,0x65,0x78,0x74,0x20,0x3d,0x20,0x7b,0x0a,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x5f,0x5f,0x69,0x6e,0x64,0x65,0x78,0x20,0x3d,0x20,0x66,\n    0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x28,0x73,0x65,0x6c,0x66,0x2c,0x20,0x6b,0x29,\n    0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,\n    0x61,0x6c,0x20,0x69,0x6e,0x64,0x65,0x78,0x20,0x3d,0x20,0x73,0x65,0x6c,0x66,0x5b,\n    0x53,0x54,0x4f,0x52,0x45,0x5d,0x5b,0x6b,0x5d,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x69,0x66,0x20,0x6e,0x6f,0x74,0x20,0x69,0x6e,0x64,\n    0x65,0x78,0x20,0x74,0x68,0x65,0x6e,0x20,0x65,0x72,0x72,0x6f,0x72,0x28,0x22,0x54,\n    0x68,0x65,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x22,0x2e,0x2e,0x74,0x6f,0x73,0x74,\n    0x72,0x69,0x6e,0x67,0x28,0x6b,0x29,0x2e,0x2e,0x22,0x20,0x64,0x6f,0x65,0x73,0x20,\n    0x6e,0x6f,0x74,0x20,0x65,0x78,0x69,0x73,0x74,0x73,0x2e,0x22,0x29,0x20,0x65,0x6e,\n    0x64,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x6c,0x6f,\n    0x63,0x61,0x6c,0x20,0x68,0x61,0x6e,0x64,0x6c,0x65,0x20,0x3d,0x20,0x73,0x65,0x6c,\n    0x66,0x5b,0x48,0x41,0x4e,0x44,0x4c,0x45,0x5d,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x73,0x65,0x6c,\n    0x65,0x63,0x74,0x28,0x32,0x2c,0x20,0x68,0x61,0x6e,0x64,0x6c,0x65,0x2e,0x63,0x6f,\n    0x72,0x6f,0x3a,0x67,0x65,0x74,0x6c,0x6f,0x63,0x61,0x6c,0x28,0x68,0x61,0x6e,0x64,\n    0x6c,0x65,0x2e,0x6c,0x65,0x76,0x65,0x6c,0x2c,0x20,0x69,0x6e,0x64,0x65,0x78,0x29,\n    0x29,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x65,0x6e,0x64,0x2c,0x0a,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x5f,0x5f,0x6e,0x65,0x77,0x69,0x6e,0x64,0x65,\n    0x78,0x20,0x3d,0x20,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x28,0x73,0x65,0x6c,\n    0x66,0x2c,0x20,0x6b,0x2c,0x20,0x76,0x29,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x69,0x6e,0x64,0x65,0x78,\n    0x20,0x3d,0x20,0x73,0x65,0x6c,0x66,0x5b,0x53,0x54,0x4f,0x52,0x45,0x5d,0x5b,0x6b,\n    0x5d,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x69,0x66,\n    0x20,0x69,0x6e,0x64,0x65,0x78,0x20,0x74,0x68,0x65,0x6e,0x0a,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,0x61,\n    0x6c,0x20,0x68,0x61,0x6e,0x64,0x6c,0x65,0x20,0x3d,0x20,0x73,0x65,0x6c,0x66,0x5b,\n    0x48,0x41,0x4e,0x44,0x4c,0x45,0x5d,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x68,0x61,0x6e,0x64,0x6c,0x65,0x2e,0x63,\n    0x6f,0x72,0x6f,0x3a,0x73,0x65,0x74,0x6c,0x6f,0x63,0x61,0x6c,0x28,0x68,0x61,0x6e,\n    0x64,0x6c,0x65,0x2e,0x6c,0x65,0x76,0x65,0x6c,0x2c,0x20,0x69,0x6e,0x64,0x65,0x78,\n    0x2c,0x20,0x76,0x29,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x65,0x6c,0x73,0x65,0x20,0x65,0x72,0x72,0x6f,0x72,0x28,0x22,0x43,0x61,0x6e,\n    0x6e,0x6f,0x74,0x20,0x73,0x65,0x74,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x22,0x20,\n    0x2e,0x2e,0x20,0x6b,0x29,0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x65,0x6e,0x64,0x2c,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x2d,\n    0x2d,0x20,0x4c,0x75,0x61,0x20,0x35,0x2e,0x32,0x20,0x72,0x65,0x61,0x64,0x79,0x20,\n    0x3a,0x29,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x2d,0x2d,0x5f,0x5f,0x70,\n    0x61,0x69,0x72,0x73,0x20,0x3d,0x20,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x28,\n    0x73,0x65,0x6c,0x66,0x29,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x67,0x65,0x74,\n    0x6d,0x65,0x74,0x61,0x74,0x61,0x62,0x6c,0x65,0x28,0x73,0x65,0x6c,0x66,0x29,0x2e,\n    0x69,0x74,0x65,0x72,0x61,0x74,0x6f,0x72,0x2c,0x20,0x73,0x65,0x6c,0x66,0x2c,0x20,\n    0x6e,0x69,0x6c,0x20,0x65,0x6e,0x64,0x2c,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x69,0x74,0x65,0x72,0x61,0x74,0x6f,0x72,0x20,0x3d,0x20,0x66,0x75,0x6e,0x63,\n    0x74,0x69,0x6f,0x6e,0x28,0x73,0x65,0x6c,0x66,0x2c,0x20,0x70,0x72,0x65,0x76,0x29,\n    0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,\n    0x61,0x6c,0x20,0x6b,0x65,0x79,0x2c,0x20,0x69,0x6e,0x64,0x65,0x78,0x20,0x3d,0x20,\n    0x6e,0x65,0x78,0x74,0x28,0x73,0x65,0x6c,0x66,0x5b,0x53,0x54,0x4f,0x52,0x45,0x5d,\n    0x2c,0x20,0x70,0x72,0x65,0x76,0x29,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x69,0x66,0x20,0x6b,0x65,0x79,0x20,0x74,0x68,0x65,0x6e,0x20,\n    0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x6b,0x65,0x79,0x2c,0x20,0x73,0x65,0x6c,0x66,\n    0x5b,0x6b,0x65,0x79,0x5d,0x20,0x65,0x6c,0x73,0x65,0x20,0x72,0x65,0x74,0x75,0x72,\n    0x6e,0x20,0x6e,0x69,0x6c,0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x65,0x6e,0x64,0x2c,0x0a,0x20,0x20,0x20,0x20,0x7d,0x2c,0x0a,0x0a,0x20,\n    0x20,0x20,0x20,0x55,0x70,0x76,0x61,0x6c,0x43,0x6f,0x6e,0x74,0x65,0x78,0x74,0x20,\n    0x3d,0x20,0x7b,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x5f,0x5f,0x69,0x6e,\n    0x64,0x65,0x78,0x20,0x3d,0x20,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x28,0x73,\n    0x65,0x6c,0x66,0x2c,0x20,0x6b,0x29,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x69,0x6e,0x64,0x65,0x78,0x20,\n    0x3d,0x20,0x73,0x65,0x6c,0x66,0x5b,0x53,0x54,0x4f,0x52,0x45,0x5d,0x5b,0x6b,0x5d,\n    0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x69,0x66,0x20,\n    0x6e,0x6f,0x74,0x20,0x69,0x6e,0x64,0x65,0x78,0x20,0x74,0x68,0x65,0x6e,0x20,0x65,\n    0x72,0x72,0x6f,0x72,0x28,0x22,0x54,0x68,0x65,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,\n    0x22,0x2e,0x2e,0x74,0x6f,0x73,0x74,0x72,0x69,0x6e,0x67,0x28,0x6b,0x29,0x2e,0x2e,\n    0x22,0x20,0x64,0x6f,0x65,0x73,0x20,0x6e,0x6f,0x74,0x20,0x65,0x78,0x69,0x74,0x73,\n    0x74,0x73,0x2e,0x22,0x29,0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x73,0x65,0x6c,\n    0x65,0x63,0x74,0x28,0x32,0x2c,0x20,0x64,0x65,0x62,0x75,0x67,0x2e,0x67,0x65,0x74,\n    0x75,0x70,0x76,0x61,0x6c,0x75,0x65,0x28,0x73,0x65,0x6c,0x66,0x5b,0x48,0x41,0x4e,\n    0x44,0x4c,0x45,0x5d,0x2c,0x20,0x69,0x6e,0x64,0x65,0x78,0x29,0x29,0x0a,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x65,0x6e,0x64,0x2c,0x0a,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x5f,0x5f,0x6e,0x65,0x77,0x69,0x6e,0x64,0x65,0x78,0x20,0x3d,0x20,\n    0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x28,0x73,0x65,0x6c,0x66,0x2c,0x20,0x6b,\n    0x2c,0x20,0x76,0x29,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x69,0x6e,0x64,0x65,0x78,0x20,0x3d,0x20,0x73,\n    0x65,0x6c,0x66,0x5b,0x53,0x54,0x4f,0x52,0x45,0x5d,0x5b,0x6b,0x5d,0x0a,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x69,0x66,0x20,0x69,0x6e,0x64,\n    0x65,0x78,0x20,0x74,0x68,0x65,0x6e,0x20,0x64,0x65,0x62,0x75,0x67,0x2e,0x73,0x65,\n    0x74,0x75,0x70,0x76,0x61,0x6c,0x75,0x65,0x28,0x73,0x65,0x6c,0x66,0x5b,0x48,0x41,\n    0x4e,0x44,0x4c,0x45,0x5d,0x2c,0x20,0x69,0x6e,0x64,0x65,0x78,0x2c,0x20,0x76,0x29,\n    0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x65,0x6c,0x73,\n    0x65,0x20,0x65,0x72,0x72,0x6f,0x72,0x28,0x22,0x43,0x61,0x6e,0x6e,0x6f,0x74,0x20,\n    0x73,0x65,0x74,0x20,0x75,0x70,0x76,0x61,0x6c,0x75,0x65,0x20,0x22,0x20,0x2e,0x2e,\n    0x20,0x6b,0x29,0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x65,0x6e,0x64,0x2c,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x2d,0x2d,0x20,\n    0x4c,0x75,0x61,0x20,0x35,0x2e,0x32,0x20,0x72,0x65,0x61,0x64,0x79,0x20,0x3a,0x29,\n    0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x2d,0x2d,0x20,0x5f,0x5f,0x70,0x61,\n    0x69,0x72,0x73,0x20,0x3d,0x20,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x28,0x73,\n    0x65,0x6c,0x66,0x29,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x67,0x65,0x74,0x6d,\n    0x65,0x74,0x61,0x74,0x61,0x62,0x6c,0x65,0x28,0x73,0x65,0x6c,0x66,0x29,0x2e,0x69,\n    0x74,0x65,0x72,0x61,0x74,0x6f,0x72,0x2c,0x20,0x73,0x65,0x6c,0x66,0x2c,0x20,0x6e,\n    0x69,0x6c,0x20,0x65,0x6e,0x64,0x2c,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x69,0x74,0x65,0x72,0x61,0x74,0x6f,0x72,0x20,0x3d,0x20,0x66,0x75,0x6e,0x63,0x74,\n    0x69,0x6f,0x6e,0x28,0x73,0x65,0x6c,0x66,0x2c,0x20,0x70,0x72,0x65,0x76,0x29,0x0a,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,0x61,\n    0x6c,0x20,0x6b,0x65,0x79,0x2c,0x20,0x69,0x6e,0x64,0x65,0x78,0x20,0x3d,0x20,0x6e,\n    0x65,0x78,0x74,0x28,0x73,0x65,0x6c,0x66,0x5b,0x53,0x54,0x4f,0x52,0x45,0x5d,0x2c,\n    0x20,0x70,0x72,0x65,0x76,0x29,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x69,0x66,0x20,0x6b,0x65,0x79,0x20,0x74,0x68,0x65,0x6e,0x20,0x72,\n    0x65,0x74,0x75,0x72,0x6e,0x20,0x6b,0x65,0x79,0x2c,0x20,0x73,0x65,0x6c,0x66,0x5b,\n    0x6b,0x65,0x79,0x5d,0x20,0x65,0x6c,0x73,0x65,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,\n    0x20,0x6e,0x69,0x6c,0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x65,0x6e,0x64,0x2c,0x0a,0x20,0x20,0x20,0x20,0x7d,0x2c,0x0a,0x0a,0x20,0x20,\n    0x20,0x20,0x2d,0x2d,0x2d,0x20,0x43,0x6f,0x6e,0x74,0x65,0x78,0x74,0x20,0x63,0x6f,\n    0x6e,0x73,0x74,0x72,0x75,0x63,0x74,0x6f,0x72,0x0a,0x20,0x20,0x20,0x20,0x2d,0x2d,\n    0x20,0x40,0x70,0x61,0x72,0x61,0x6d,0x20,0x63,0x6f,0x72,0x6f,0x20,0x20,0x28,0x75,\n    0x74,0x69,0x6c,0x2e,0x2a,0x54,0x68,0x72,0x65,0x61,0x64,0x20,0x69,0x6e,0x73,0x74,\n    0x61,0x6e,0x63,0x65,0x29,0x20,0x63,0x6f,0x72,0x6f,0x75,0x74,0x69,0x6e,0x65,0x20,\n    0x74,0x6f,0x20,0x6d,0x61,0x70,0x20,0x74,0x6f,0x0a,0x20,0x20,0x20,0x20,0x2d,0x2d,\n    0x20,0x40,0x70,0x61,0x72,0x61,0x6d,0x20,0x6c,0x65,0x76,0x65,0x6c,0x20,0x28,0x6e,\n    0x75,0x6d,0x62,0x65,0x72,0x29,0x20,0x73,0x74,0x61,0x63,0x6b,0x20,0x6c,0x65,0x76,\n    0x65,0x6c,0x20,0x64,0x6f,0x20,0x64,0x75,0x6d,0x70,0x20,0x28,0x73,0x63,0x72,0x69,\n    0x70,0x74,0x20,0x73,0x74,0x61,0x63,0x6b,0x20,0x6c,0x65,0x76,0x65,0x6c,0x29,0x0a,\n    0x20,0x20,0x20,0x20,0x6e,0x65,0x77,0x20,0x3d,0x20,0x66,0x75,0x6e,0x63,0x74,0x69,\n    0x6f,0x6e,0x28,0x63,0x6c,0x73,0x2c,0x20,0x63,0x6f,0x72,0x6f,0x2c,0x20,0x6c,0x65,\n    0x76,0x65,0x6c,0x29,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,\n    0x61,0x6c,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x73,0x2c,0x20,0x75,0x70,0x76,0x61,0x6c,\n    0x75,0x65,0x73,0x20,0x3d,0x20,0x7b,0x7d,0x2c,0x20,0x7b,0x7d,0x0a,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x69,0x66,0x20,0x6c,0x65,0x76,0x65,0x6c,0x20,0x3c,0x20,\n    0x30,0x20,0x74,0x68,0x65,0x6e,0x20,0x64,0x62,0x67,0x70,0x2e,0x65,0x72,0x72,0x6f,\n    0x72,0x28,0x33,0x30,0x31,0x2c,0x20,0x22,0x4e,0x6f,0x20,0x73,0x75,0x63,0x68,0x20,\n    0x73,0x74,0x61,0x63,0x6b,0x20,0x6c,0x65,0x76,0x65,0x6c,0x3a,0x20,0x22,0x2e,0x2e,\n    0x74,0x6f,0x73,0x74,0x72,0x69,0x6e,0x67,0x28,0x6c,0x65,0x76,0x65,0x6c,0x29,0x29,\n    0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,\n    0x61,0x6c,0x20,0x66,0x75,0x6e,0x63,0x20,0x3d,0x20,0x28,0x63,0x6f,0x72,0x6f,0x3a,\n    0x67,0x65,0x74,0x69,0x6e,0x66,0x6f,0x28,0x6c,0x65,0x76,0x65,0x6c,0x2c,0x20,0x22,\n    0x66,0x22,0x29,0x20,0x6f,0x72,0x20,0x64,0x62,0x67,0x70,0x2e,0x65,0x72,0x72,0x6f,\n    0x72,0x28,0x33,0x30,0x31,0x2c,0x20,0x22,0x4e,0x6f,0x20,0x73,0x75,0x63,0x68,0x20,\n    0x73,0x74,0x61,0x63,0x6b,0x20,0x6c,0x65,0x76,0x65,0x6c,0x3a,0x20,0x22,0x2e,0x2e,\n    0x74,0x6f,0x73,0x74,0x72,0x69,0x6e,0x67,0x28,0x6c,0x65,0x76,0x65,0x6c,0x29,0x29,\n    0x29,0x2e,0x66,0x75,0x6e,0x63,0x0a,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x2d,0x2d,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x76,0x61,0x72,0x69,0x61,0x62,0x6c,\n    0x65,0x73,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x66,0x6f,0x72,0x20,0x69,\n    0x3d,0x31,0x2c,0x20,0x6d,0x61,0x74,0x68,0x2e,0x68,0x75,0x67,0x65,0x20,0x64,0x6f,\n    0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,\n    0x61,0x6c,0x20,0x6e,0x61,0x6d,0x65,0x2c,0x20,0x76,0x61,0x6c,0x20,0x3d,0x20,0x63,\n    0x6f,0x72,0x6f,0x3a,0x67,0x65,0x74,0x6c,0x6f,0x63,0x61,0x6c,0x28,0x6c,0x65,0x76,\n    0x65,0x6c,0x2c,0x20,0x69,0x29,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x69,0x66,0x20,0x6e,0x6f,0x74,0x20,0x6e,0x61,0x6d,0x65,0x20,0x74,\n    0x68,0x65,0x6e,0x20,0x62,0x72,0x65,0x61,0x6b,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x65,0x6c,0x73,0x65,0x69,0x66,0x20,0x6e,0x61,0x6d,\n    0x65,0x3a,0x73,0x75,0x62,0x28,0x31,0x2c,0x31,0x29,0x20,0x7e,0x3d,0x20,0x22,0x28,\n    0x22,0x20,0x74,0x68,0x65,0x6e,0x20,0x2d,0x2d,0x20,0x73,0x6b,0x69,0x70,0x20,0x69,\n    0x6e,0x74,0x65,0x72,0x6e,0x61,0x6c,0x20,0x76,0x61,0x6c,0x75,0x65,0x73,0x0a,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x6c,\n    0x6f,0x63,0x61,0x6c,0x73,0x5b,0x6e,0x61,0x6d,0x65,0x5d,0x20,0x3d,0x20,0x69,0x0a,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x65,0x6e,0x64,0x0a,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x65,0x6e,0x64,0x0a,0x0a,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x2d,0x2d,0x20,0x75,0x70,0x76,0x61,0x6c,0x75,0x65,0x73,\n    0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x66,0x6f,0x72,0x20,0x69,0x3d,0x31,\n    0x2c,0x20,0x6d,0x61,0x74,0x68,0x2e,0x68,0x75,0x67,0x65,0x20,0x64,0x6f,0x0a,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,\n    0x20,0x6e,0x61,0x6d,0x65,0x2c,0x20,0x76,0x61,0x6c,0x20,0x3d,0x20,0x64,0x65,0x62,\n    0x75,0x67,0x2e,0x67,0x65,0x74,0x75,0x70,0x76,0x61,0x6c,0x75,0x65,0x28,0x66,0x75,\n    0x6e,0x63,0x2c,0x20,0x69,0x29,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x69,0x66,0x20,0x6e,0x6f,0x74,0x20,0x6e,0x61,0x6d,0x65,0x20,0x74,\n    0x68,0x65,0x6e,0x20,0x62,0x72,0x65,0x61,0x6b,0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x75,0x70,0x76,0x61,0x6c,0x75,\n    0x65,0x73,0x5b,0x6e,0x61,0x6d,0x65,0x5d,0x20,0x3d,0x20,0x69,0x0a,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x65,0x6e,0x64,0x0a,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x73,0x20,0x3d,0x20,0x73,0x65,0x74,0x6d,0x65,\n    0x74,0x61,0x74,0x61,0x62,0x6c,0x65,0x28,0x7b,0x20,0x5b,0x53,0x54,0x4f,0x52,0x45,\n    0x5d,0x20,0x3d,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x73,0x2c,0x20,0x5b,0x48,0x41,0x4e,\n    0x44,0x4c,0x45,0x5d,0x20,0x3d,0x20,0x7b,0x20,0x6c,0x65,0x76,0x65,0x6c,0x20,0x3d,\n    0x20,0x6c,0x65,0x76,0x65,0x6c,0x2c,0x20,0x63,0x6f,0x72,0x6f,0x20,0x3d,0x20,0x63,\n    0x6f,0x72,0x6f,0x20,0x7d,0x20,0x7d,0x2c,0x20,0x63,0x6c,0x73,0x2e,0x4c,0x6f,0x63,\n    0x61,0x6c,0x43,0x6f,0x6e,0x74,0x65,0x78,0x74,0x29,0x0a,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x75,0x70,0x76,0x61,0x6c,0x75,0x65,0x73,0x20,0x3d,0x20,0x73,0x65,\n    0x74,0x6d,0x65,0x74,0x61,0x74,0x61,0x62,0x6c,0x65,0x28,0x7b,0x20,0x5b,0x53,0x54,\n    0x4f,0x52,0x45,0x5d,0x20,0x3d,0x20,0x75,0x70,0x76,0x61,0x6c,0x75,0x65,0x73,0x2c,\n    0x20,0x5b,0x48,0x41,0x4e,0x44,0x4c,0x45,0x5d,0x20,0x3d,0x20,0x66,0x75,0x6e,0x63,\n    0x20,0x7d,0x2c,0x20,0x63,0x6c,0x73,0x2e,0x55,0x70,0x76,0x61,0x6c,0x43,0x6f,0x6e,\n    0x74,0x65,0x78,0x74,0x29,0x0a,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x6c,\n    0x6f,0x63,0x61,0x6c,0x20,0x72,0x65,0x73,0x75,0x6c,0x74,0x20,0x3d,0x20,0x73,0x65,\n    0x74,0x6d,0x65,0x74,0x61,0x74,0x61,0x62,0x6c,0x65,0x28,0x7b,0x20,0x5b,0x4c,0x4f,\n    0x43,0x41,0x4c,0x5d,0x20,0x3d,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x73,0x2c,0x20,0x5b,\n    0x55,0x50,0x56,0x41,0x4c,0x5d,0x20,0x3d,0x20,0x75,0x70,0x76,0x61,0x6c,0x75,0x65,\n    0x73,0x2c,0x20,0x5b,0x45,0x56,0x41,0x4c,0x5d,0x20,0x3d,0x20,0x7b,0x7d,0x20,0x7d,\n    0x2c,0x20,0x63,0x6c,0x73,0x29,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x72,\n    0x61,0x77,0x73,0x65,0x74,0x28,0x72,0x65,0x73,0x75,0x6c,0x74,0x2c,0x20,0x47,0x4c,\n    0x4f,0x42,0x41,0x4c,0x2c,0x20,0x67,0x65,0x74,0x67,0x6c,0x6f,0x62,0x61,0x6c,0x73,\n    0x28,0x66,0x75,0x6e,0x63,0x2c,0x20,0x72,0x65,0x73,0x75,0x6c,0x74,0x29,0x29,0x0a,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x72,\n    0x65,0x73,0x75,0x6c,0x74,0x0a,0x20,0x20,0x20,0x20,0x65,0x6e,0x64,0x2c,0x0a,0x7d,\n    0x0a,0x0a,0x2d,0x2d,0x2d,0x20,0x48,0x61,0x6e,0x64,0x6c,0x65,0x20,0x63,0x61,0x63,\n    0x68,0x69,0x6e,0x67,0x20,0x6f,0x66,0x20,0x61,0x6c,0x6c,0x20,0x69,0x6e,0x73,0x74,\n    0x61,0x6e,0x74,0x69,0x61,0x74,0x65,0x64,0x20,0x63,0x6f,0x6e,0x74,0x65,0x78,0x74,\n    0x2e,0x0a,0x2d,0x2d,0x20,0x52,0x65,0x74,0x75,0x72,0x6e,0x73,0x20,0x61,0x20,0x66,\n    0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x20,0x77,0x68,0x69,0x63,0x68,0x20,0x74,0x61,\n    0x6b,0x65,0x73,0x20,0x32,0x20,0x70,0x61,0x72,0x61,0x6d,0x65,0x74,0x65,0x72,0x73,\n    0x3a,0x20,0x74,0x68,0x72,0x65,0x61,0x64,0x20,0x61,0x6e,0x64,0x20,0x73,0x74,0x61,\n    0x63,0x6b,0x20,0x6c,0x65,0x76,0x65,0x6c,0x20,0x61,0x6e,0x64,0x20,0x72,0x65,0x74,\n    0x75,0x72,0x6e,0x73,0x20,0x74,0x68,0x65,0x20,0x63,0x6f,0x72,0x72,0x65,0x73,0x70,\n    0x6f,0x6e,0x64,0x69,0x6e,0x67,0x20,0x63,0x6f,0x6e,0x74,0x65,0x78,0x74,0x2e,0x20,\n    0x49,0x66,0x20,0x74,0x68,0x69,0x73,0x0a,0x2d,0x2d,0x20,0x63,0x6f,0x6e,0x74,0x65,\n    0x78,0x74,0x20,0x68,0x61,0x73,0x20,0x62,0x65,0x65,0x6e,0x20,0x61,0x6c,0x72,0x65,\n    0x61,0x64,0x79,0x20,0x71,0x75,0x65,0x72,0x69,0x65,0x64,0x20,0x74,0x68,0x65,0x72,\n    0x65,0x20,0x69,0x73,0x20,0x6e,0x6f,0x20,0x6e,0x65,0x77,0x20,0x69,0x6e,0x73,0x74,\n    0x61,0x6e,0x74,0x69,0x61,0x74,0x69,0x6f,0x6e,0x2e,0x20,0x41,0x20,0x43,0x6f,0x6e,\n    0x74,0x65,0x78,0x74,0x4d,0x61,0x6e,0x61,0x67,0x65,0x72,0x20,0x69,0x73,0x20,0x76,\n    0x61,0x6c,0x69,0x64,0x20,0x6f,0x6e,0x6c,0x79,0x20,0x64,0x75,0x72,0x69,0x6e,0x67,\n    0x20,0x74,0x68,0x65,0x20,0x64,0x65,0x62,0x75,0x67,0x20,0x6c,0x6f,0x6f,0x70,0x0a,\n    0x2d,0x2d,0x20,0x6f,0x6e,0x20,0x77,0x68,0x69,0x63,0x68,0x20,0x69,0x74,0x20,0x68,\n    0x61,0x73,0x20,0x62,0x65,0x65,0x6e,0x20,0x69,0x6e,0x73,0x74,0x61,0x6e,0x74,0x69,\n    0x61,0x74,0x65,0x64,0x2e,0x20,0x52,0x65,0x66,0x65,0x72,0x65,0x6e,0x63,0x65,0x73,\n    0x20,0x74,0x6f,0x20,0x61,0x20,0x43,0x6f,0x6e,0x74,0x65,0x78,0x74,0x4d,0x61,0x6e,\n    0x61,0x67,0x65,0x72,0x20,0x6d,0x75,0x73,0x74,0x20,0x62,0x65,0x20,0x6c,0x6f,0x73,\n    0x74,0x20,0x61,0x66,0x74,0x65,0x72,0x20,0x74,0x68,0x65,0x20,0x65,0x6e,0x64,0x20,\n    0x6f,0x66,0x20,0x64,0x65,0x62,0x75,0x67,0x20,0x6c,0x6f,0x6f,0x70,0x20,0x28,0x73,\n    0x6f,0x0a,0x2d,0x2d,0x20,0x74,0x68,0x72,0x65,0x61,0x64,0x73,0x20,0x63,0x61,0x6e,\n    0x20,0x62,0x65,0x20,0x63,0x6f,0x6c,0x6c,0x65,0x63,0x74,0x65,0x64,0x29,0x2e,0x0a,\n    0x2d,0x2d,0x20,0x49,0x66,0x20,0x61,0x20,0x63,0x6f,0x6e,0x74,0x65,0x78,0x74,0x20,\n    0x63,0x61,0x6e,0x6e,0x6f,0x74,0x20,0x62,0x65,0x20,0x69,0x6e,0x73,0x74,0x61,0x6e,\n    0x74,0x69,0x61,0x74,0x65,0x64,0x2c,0x20,0x61,0x6e,0x20,0x33,0x30,0x31,0x20,0x44,\n    0x42,0x47,0x50,0x20,0x65,0x72,0x72,0x6f,0x72,0x20,0x69,0x73,0x20,0x74,0x68,0x72,\n    0x6f,0x77,0x6e,0x2e,0x0a,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x20,0x4d,0x2e,\n    0x43,0x6f,0x6e,0x74,0x65,0x78,0x74,0x4d,0x61,0x6e,0x61,0x67,0x65,0x72,0x28,0x29,\n    0x0a,0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x63,0x61,0x63,0x68,0x65,\n    0x20,0x3d,0x20,0x7b,0x20,0x7d,0x0a,0x20,0x20,0x20,0x20,0x72,0x65,0x74,0x75,0x72,\n    0x6e,0x20,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x28,0x74,0x68,0x72,0x65,0x61,\n    0x64,0x2c,0x20,0x6c,0x65,0x76,0x65,0x6c,0x29,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x2d,0x2d,0x20,0x74,0x68,0x65,0x20,0x72,0x65,0x61,0x6c,0x20,0x63,0x6f,\n    0x72,0x6f,0x75,0x74,0x69,0x6e,0x65,0x20,0x69,0x73,0x20,0x75,0x73,0x65,0x64,0x20,\n    0x61,0x73,0x20,0x6b,0x65,0x79,0x20,0x28,0x6e,0x6f,0x74,0x20,0x74,0x68,0x65,0x20,\n    0x77,0x72,0x61,0x70,0x70,0x65,0x64,0x20,0x69,0x6e,0x73,0x74,0x61,0x6e,0x63,0x65,\n    0x20,0x61,0x73,0x20,0x69,0x74,0x73,0x20,0x75,0x6e,0x69,0x63,0x69,0x74,0x79,0x20,\n    0x69,0x73,0x20,0x6e,0x6f,0x74,0x20,0x67,0x75,0x61,0x72,0x61,0x6e,0x74,0x65,0x65,\n    0x64,0x29,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x2d,0x2d,0x20,0x6f,0x74,\n    0x68,0x65,0x72,0x77,0x69,0x73,0x65,0x2c,0x20,0x74,0x72,0x75,0x65,0x20,0x69,0x73,\n    0x20,0x75,0x73,0x65,0x64,0x20,0x74,0x6f,0x20,0x69,0x64,0x65,0x6e,0x74,0x69,0x66,\n    0x79,0x20,0x63,0x75,0x72,0x72,0x65,0x6e,0x74,0x20,0x74,0x68,0x72,0x65,0x61,0x64,\n    0x20,0x28,0x61,0x73,0x20,0x6e,0x69,0x6c,0x20,0x69,0x73,0x20,0x6e,0x6f,0x74,0x20,\n    0x61,0x20,0x76,0x61,0x6c,0x69,0x64,0x20,0x74,0x61,0x62,0x6c,0x65,0x20,0x6b,0x65,\n    0x79,0x29,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,\n    0x20,0x6b,0x65,0x79,0x20,0x3d,0x20,0x74,0x68,0x72,0x65,0x61,0x64,0x5b,0x31,0x5d,\n    0x20,0x6f,0x72,0x20,0x74,0x72,0x75,0x65,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x74,0x68,0x72,0x65,0x61,0x64,0x5f,0x63,0x6f,\n    0x6e,0x74,0x65,0x78,0x74,0x73,0x20,0x3d,0x20,0x63,0x61,0x63,0x68,0x65,0x5b,0x6b,\n    0x65,0x79,0x5d,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x69,0x66,0x20,0x6e,\n    0x6f,0x74,0x20,0x74,0x68,0x72,0x65,0x61,0x64,0x5f,0x63,0x6f,0x6e,0x74,0x65,0x78,\n    0x74,0x73,0x20,0x74,0x68,0x65,0x6e,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x74,0x68,0x72,0x65,0x61,0x64,0x5f,0x63,0x6f,0x6e,0x74,0x65,\n    0x78,0x74,0x73,0x20,0x3d,0x20,0x7b,0x20,0x7d,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x63,0x61,0x63,0x68,0x65,0x5b,0x6b,0x65,0x79,0x5d,\n    0x20,0x3d,0x20,0x74,0x68,0x72,0x65,0x61,0x64,0x5f,0x63,0x6f,0x6e,0x74,0x65,0x78,\n    0x74,0x73,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x65,0x6e,0x64,0x0a,0x0a,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x63,0x6f,\n    0x6e,0x74,0x65,0x78,0x74,0x20,0x3d,0x20,0x74,0x68,0x72,0x65,0x61,0x64,0x5f,0x63,\n    0x6f,0x6e,0x74,0x65,0x78,0x74,0x73,0x5b,0x6c,0x65,0x76,0x65,0x6c,0x5d,0x0a,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x69,0x66,0x20,0x6e,0x6f,0x74,0x20,0x63,0x6f,\n    0x6e,0x74,0x65,0x78,0x74,0x20,0x74,0x68,0x65,0x6e,0x0a,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x63,0x6f,0x6e,0x74,0x65,0x78,0x74,0x20,0x3d,\n    0x20,0x4d,0x2e,0x43,0x6f,0x6e,0x74,0x65,0x78,0x74,0x3a,0x6e,0x65,0x77,0x28,0x74,\n    0x68,0x72,0x65,0x61,0x64,0x2c,0x20,0x6c,0x65,0x76,0x65,0x6c,0x29,0x0a,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x74,0x68,0x72,0x65,0x61,0x64,\n    0x5f,0x63,0x6f,0x6e,0x74,0x65,0x78,0x74,0x73,0x5b,0x6c,0x65,0x76,0x65,0x6c,0x5d,\n    0x20,0x3d,0x20,0x63,0x6f,0x6e,0x74,0x65,0x78,0x74,0x0a,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x65,0x6e,0x64,0x0a,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x63,0x6f,0x6e,0x74,0x65,0x78,0x74,0x0a,0x20,\n    0x20,0x20,0x20,0x65,0x6e,0x64,0x0a,0x65,0x6e,0x64,0x0a,0x0a,0x72,0x65,0x74,0x75,\n    0x72,0x6e,0x20,0x4d,0x0a,0x0a,0x65,0x6e,0x64,0x0a,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x0a,0x2d,0x2d,0x20,0x45,0x6e,\n    0x64,0x20,0x6f,0x66,0x20,0x6d,0x6f,0x64,0x75,0x6c,0x65,0x64,0x65,0x62,0x75,0x67,\n    0x67,0x65,0x72,0x2e,0x63,0x6f,0x6e,0x74,0x65,0x78,0x74,0x0a,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x0a,0x0a,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x0a,0x2d,\n    0x2d,0x20,0x20,0x4d,0x6f,0x64,0x75,0x6c,0x65,0x20,0x64,0x65,0x62,0x75,0x67,0x67,\n    0x65,0x72,0x2e,0x64,0x62,0x67,0x70,0x0a,0x70,0x61,0x63,0x6b,0x61,0x67,0x65,0x2e,\n    0x70,0x72,0x65,0x6c,0x6f,0x61,0x64,0x5b,0x22,0x64,0x65,0x62,0x75,0x67,0x67,0x65,\n    0x72,0x2e,0x64,0x62,0x67,0x70,0x22,0x5d,0x20,0x3d,0x20,0x66,0x75,0x6e,0x63,0x74,\n    0x69,0x6f,0x6e,0x28,0x2e,0x2e,0x2e,0x29,0x0a,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x0a,0x2d,0x2d,0x20,0x43,0x6f,0x70,0x79,\n    0x72,0x69,0x67,0x68,0x74,0x20,0x28,0x63,0x29,0x20,0x32,0x30,0x31,0x31,0x2d,0x32,\n    0x30,0x31,0x32,0x20,0x53,0x69,0x65,0x72,0x72,0x61,0x20,0x57,0x69,0x72,0x65,0x6c,\n    0x65,0x73,0x73,0x20,0x61,0x6e,0x64,0x20,0x6f,0x74,0x68,0x65,0x72,0x73,0x2e,0x0a,\n    0x2d,0x2d,0x20,0x41,0x6c,0x6c,0x20,0x72,0x69,0x67,0x68,0x74,0x73,0x20,0x72,0x65,\n    0x73,0x65,0x72,0x76,0x65,0x64,0x2e,0x20,0x54,0x68,0x69,0x73,0x20,0x70,0x72,0x6f,\n    0x67,0x72,0x61,0x6d,0x20,0x61,0x6e,0x64,0x20,0x74,0x68,0x65,0x20,0x61,0x63,0x63,\n    0x6f,0x6d,0x70,0x61,0x6e,0x79,0x69,0x6e,0x67,0x20,0x6d,0x61,0x74,0x65,0x72,0x69,\n    0x61,0x6c,0x73,0x0a,0x2d,0x2d,0x20,0x61,0x72,0x65,0x20,0x6d,0x61,0x64,0x65,0x20,\n    0x61,0x76,0x61,0x69,0x6c,0x61,0x62,0x6c,0x65,0x20,0x75,0x6e,0x64,0x65,0x72,0x20,\n    0x74,0x68,0x65,0x20,0x74,0x65,0x72,0x6d,0x73,0x20,0x6f,0x66,0x20,0x74,0x68,0x65,\n    0x20,0x45,0x63,0x6c,0x69,0x70,0x73,0x65,0x20,0x50,0x75,0x62,0x6c,0x69,0x63,0x20,\n    0x4c,0x69,0x63,0x65,0x6e,0x73,0x65,0x20,0x76,0x31,0x2e,0x30,0x0a,0x2d,0x2d,0x20,\n    0x77,0x68,0x69,0x63,0x68,0x20,0x61,0x63,0x63,0x6f,0x6d,0x70,0x61,0x6e,0x69,0x65,\n    0x73,0x20,0x74,0x68,0x69,0x73,0x20,0x64,0x69,0x73,0x74,0x72,0x69,0x62,0x75,0x74,\n    0x69,0x6f,0x6e,0x2c,0x20,0x61,0x6e,0x64,0x20,0x69,0x73,0x20,0x61,0x76,0x61,0x69,\n    0x6c,0x61,0x62,0x6c,0x65,0x20,0x61,0x74,0x0a,0x2d,0x2d,0x20,0x68,0x74,0x74,0x70,\n    0x3a,0x2f,0x2f,0x77,0x77,0x77,0x2e,0x65,0x63,0x6c,0x69,0x70,0x73,0x65,0x2e,0x6f,\n    0x72,0x67,0x2f,0x6c,0x65,0x67,0x61,0x6c,0x2f,0x65,0x70,0x6c,0x2d,0x76,0x31,0x30,\n    0x2e,0x68,0x74,0x6d,0x6c,0x0a,0x2d,0x2d,0x0a,0x2d,0x2d,0x20,0x43,0x6f,0x6e,0x74,\n    0x72,0x69,0x62,0x75,0x74,0x6f,0x72,0x73,0x3a,0x0a,0x2d,0x2d,0x20,0x20,0x20,0x20,\n    0x20,0x53,0x69,0x65,0x72,0x72,0x61,0x20,0x57,0x69,0x72,0x65,0x6c,0x65,0x73,0x73,\n    0x20,0x2d,0x20,0x69,0x6e,0x69,0x74,0x69,0x61,0x6c,0x20,0x41,0x50,0x49,0x20,0x61,\n    0x6e,0x64,0x20,0x69,0x6d,0x70,0x6c,0x65,0x6d,0x65,0x6e,0x74,0x61,0x74,0x69,0x6f,\n    0x6e,0x0a,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x0a,0x2d,0x2d,0x20,0x44,0x42,0x47,0x70,0x20,0x70,0x72,0x6f,0x74,0x6f,0x63,\n    0x6f,0x6c,0x20,0x75,0x74,0x69,0x6c,0x69,0x74,0x79,0x20,0x66,0x75,0x6e,0x63,0x74,\n    0x69,0x6f,0x6e,0x20,0x28,0x70,0x61,0x72,0x73,0x69,0x6e,0x67,0x2c,0x20,0x65,0x72,\n    0x72,0x6f,0x72,0x20,0x68,0x61,0x6e,0x64,0x6c,0x69,0x6e,0x67,0x2c,0x20,0x58,0x4d,\n    0x4c,0x20,0x67,0x65,0x6e,0x65,0x72,0x61,0x74,0x69,0x6f,0x6e,0x29,0x2e,0x0a,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x0a,0x0a,\n    0x6c,0x6f,0x63,0x61,0x6c,0x20,0x75,0x74,0x69,0x6c,0x20,0x3d,0x20,0x72,0x65,0x71,\n    0x75,0x69,0x72,0x65,0x20,0x22,0x64,0x65,0x62,0x75,0x67,0x67,0x65,0x72,0x2e,0x75,\n    0x74,0x69,0x6c,0x22,0x0a,0x0a,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x65,0x72,0x72,0x6f,\n    0x72,0x2c,0x20,0x73,0x65,0x74,0x6d,0x65,0x74,0x61,0x74,0x61,0x62,0x6c,0x65,0x2c,\n    0x20,0x74,0x79,0x70,0x65,0x2c,0x20,0x70,0x61,0x69,0x72,0x73,0x2c,0x20,0x69,0x70,\n    0x61,0x69,0x72,0x73,0x2c,0x20,0x74,0x6f,0x73,0x74,0x72,0x69,0x6e,0x67,0x2c,0x20,\n    0x74,0x63,0x6f,0x6e,0x63,0x61,0x74,0x20,0x3d,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x65,0x72,0x72,0x6f,0x72,0x2c,0x20,0x73,0x65,0x74,0x6d,0x65,0x74,0x61,0x74,0x61,\n    0x62,0x6c,0x65,0x2c,0x20,0x74,0x79,0x70,0x65,0x2c,0x20,0x70,0x61,0x69,0x72,0x73,\n    0x2c,0x20,0x69,0x70,0x61,0x69,0x72,0x73,0x2c,0x20,0x74,0x6f,0x73,0x74,0x72,0x69,\n    0x6e,0x67,0x2c,0x20,0x74,0x61,0x62,0x6c,0x65,0x2e,0x63,0x6f,0x6e,0x63,0x61,0x74,\n    0x0a,0x0a,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x4d,0x20,0x3d,0x20,0x7b,0x20,0x7d,0x0a,\n    0x0a,0x2d,0x2d,0x2d,0x20,0x50,0x61,0x72,0x73,0x65,0x73,0x20,0x74,0x68,0x65,0x20,\n    0x44,0x42,0x47,0x70,0x20,0x63,0x6f,0x6d,0x6d,0x61,0x6e,0x64,0x20,0x61,0x72,0x67,\n    0x75,0x6d,0x65,0x6e,0x74,0x73,0x20,0x61,0x6e,0x64,0x20,0x72,0x65,0x74,0x75,0x72,\n    0x6e,0x73,0x20,0x69,0x74,0x20,0x61,0x73,0x20,0x61,0x20,0x4c,0x75,0x61,0x20,0x74,\n    0x61,0x62,0x6c,0x65,0x20,0x77,0x69,0x74,0x68,0x20,0x6b,0x65,0x79,0x2f,0x76,0x61,\n    0x6c,0x75,0x65,0x20,0x70,0x61,0x69,0x72,0x73,0x2e,0x0a,0x2d,0x2d,0x20,0x46,0x6f,\n    0x72,0x20,0x65,0x78,0x61,0x6d,0x70,0x6c,0x65,0x2c,0x20,0x74,0x68,0x65,0x20,0x73,\n    0x65,0x71,0x75,0x65,0x6e,0x63,0x65,0x20,0x3c,0x63,0x6f,0x64,0x65,0x3e,0x2d,0x69,\n    0x20,0x35,0x20,0x2d,0x6a,0x20,0x66,0x6f,0x6f,0x3c,0x2f,0x63,0x6f,0x64,0x65,0x3e,\n    0x20,0x77,0x69,0x6c,0x6c,0x20,0x72,0x65,0x73,0x75,0x6c,0x74,0x20,0x69,0x6e,0x20,\n    0x3c,0x63,0x6f,0x64,0x65,0x3e,0x7b,0x69,0x3d,0x35,0x2c,0x20,0x6a,0x3d,0x66,0x6f,\n    0x6f,0x7d,0x3c,0x2f,0x63,0x6f,0x64,0x65,0x3e,0x0a,0x2d,0x2d,0x20,0x40,0x70,0x61,\n    0x72,0x61,0x6d,0x20,0x63,0x6d,0x64,0x5f,0x61,0x72,0x67,0x73,0x20,0x28,0x73,0x74,\n    0x72,0x69,0x6e,0x67,0x29,0x20,0x73,0x65,0x71,0x75,0x65,0x6e,0x63,0x65,0x20,0x6f,\n    0x66,0x20,0x61,0x72,0x67,0x75,0x6d,0x65,0x6e,0x74,0x73,0x0a,0x2d,0x2d,0x20,0x40,\n    0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x74,0x61,0x62,0x6c,0x65,0x20,0x64,0x65,0x73,\n    0x63,0x72,0x69,0x62,0x65,0x64,0x20,0x61,0x62,0x6f,0x76,0x65,0x0a,0x66,0x75,0x6e,\n    0x63,0x74,0x69,0x6f,0x6e,0x20,0x4d,0x2e,0x61,0x72,0x67,0x5f,0x70,0x61,0x72,0x73,\n    0x65,0x28,0x63,0x6d,0x64,0x5f,0x61,0x72,0x67,0x73,0x29,0x0a,0x20,0x20,0x20,0x20,\n    0x6c,0x6f,0x63,0x61,0x6c,0x20,0x61,0x72,0x67,0x73,0x20,0x3d,0x20,0x7b,0x7d,0x0a,\n    0x20,0x20,0x20,0x20,0x66,0x6f,0x72,0x20,0x61,0x72,0x67,0x2c,0x20,0x76,0x61,0x6c,\n    0x20,0x69,0x6e,0x20,0x63,0x6d,0x64,0x5f,0x61,0x72,0x67,0x73,0x3a,0x67,0x6d,0x61,\n    0x74,0x63,0x68,0x28,0x22,0x25,0x2d,0x28,0x25,0x77,0x29,0x20,0x28,0x25,0x53,0x2b,\n    0x29,0x22,0x29,0x20,0x64,0x6f,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x61,\n    0x72,0x67,0x73,0x5b,0x61,0x72,0x67,0x5d,0x20,0x3d,0x20,0x76,0x61,0x6c,0x0a,0x20,\n    0x20,0x20,0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,0x20,0x20,0x72,0x65,0x74,0x75,0x72,\n    0x6e,0x20,0x61,0x72,0x67,0x73,0x0a,0x65,0x6e,0x64,0x0a,0x0a,0x2d,0x2d,0x2d,0x20,\n    0x50,0x61,0x72,0x73,0x65,0x73,0x20,0x61,0x20,0x63,0x6f,0x6d,0x6d,0x61,0x6e,0x64,\n    0x20,0x6c,0x69,0x6e,0x65,0x0a,0x2d,0x2d,0x20,0x40,0x72,0x65,0x74,0x75,0x72,0x6e,\n    0x20,0x63,0x6f,0x6d,0x6d,0x61,0x6e,0x64,0x65,0x20,0x6e,0x61,0x6d,0x65,0x20,0x28,\n    0x73,0x74,0x72,0x69,0x6e,0x67,0x29,0x0a,0x2d,0x2d,0x20,0x40,0x72,0x65,0x74,0x72,\n    0x75,0x6e,0x20,0x61,0x72,0x67,0x75,0x6d,0x65,0x6e,0x74,0x73,0x20,0x28,0x74,0x61,\n    0x62,0x6c,0x65,0x29,0x0a,0x2d,0x2d,0x20,0x40,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,\n    0x64,0x61,0x74,0x61,0x20,0x28,0x73,0x74,0x72,0x69,0x6e,0x67,0x2c,0x20,0x6f,0x70,\n    0x74,0x69,0x6f,0x6e,0x61,0x6c,0x29,0x0a,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,\n    0x20,0x4d,0x2e,0x63,0x6d,0x64,0x5f,0x70,0x61,0x72,0x73,0x65,0x28,0x63,0x6d,0x64,\n    0x29,0x0a,0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x63,0x6d,0x64,0x5f,\n    0x6e,0x61,0x6d,0x65,0x2c,0x20,0x61,0x72,0x67,0x73,0x2c,0x20,0x64,0x61,0x74,0x61,\n    0x0a,0x20,0x20,0x20,0x20,0x69,0x66,0x20,0x63,0x6d,0x64,0x3a,0x66,0x69,0x6e,0x64,\n    0x28,0x22,0x2d,0x2d,0x22,0x2c,0x20,0x31,0x2c,0x20,0x74,0x72,0x75,0x65,0x29,0x20,\n    0x74,0x68,0x65,0x6e,0x20,0x2d,0x2d,0x20,0x74,0x68,0x65,0x72,0x65,0x20,0x69,0x73,\n    0x20,0x61,0x20,0x64,0x61,0x74,0x61,0x20,0x70,0x61,0x72,0x74,0x0a,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x63,0x6d,0x64,0x5f,0x6e,0x61,0x6d,0x65,0x2c,0x20,0x61,\n    0x72,0x67,0x73,0x2c,0x20,0x64,0x61,0x74,0x61,0x20,0x3d,0x20,0x63,0x6d,0x64,0x3a,\n    0x6d,0x61,0x74,0x63,0x68,0x28,0x22,0x5e,0x28,0x25,0x53,0x2b,0x29,0x25,0x73,0x2b,\n    0x28,0x2e,0x2a,0x29,0x25,0x73,0x2b,0x25,0x2d,0x25,0x2d,0x25,0x73,0x2a,0x28,0x2e,\n    0x2a,0x29,0x24,0x22,0x29,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x64,0x61,\n    0x74,0x61,0x20,0x3d,0x20,0x75,0x74,0x69,0x6c,0x2e,0x75,0x6e,0x62,0x36,0x34,0x28,\n    0x64,0x61,0x74,0x61,0x29,0x0a,0x20,0x20,0x20,0x20,0x65,0x6c,0x73,0x65,0x0a,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x63,0x6d,0x64,0x5f,0x6e,0x61,0x6d,0x65,0x2c,\n    0x20,0x61,0x72,0x67,0x73,0x20,0x3d,0x20,0x63,0x6d,0x64,0x3a,0x6d,0x61,0x74,0x63,\n    0x68,0x28,0x22,0x5e,0x28,0x25,0x53,0x2b,0x29,0x25,0x73,0x2b,0x28,0x2e,0x2a,0x29,\n    0x24,0x22,0x29,0x0a,0x20,0x20,0x20,0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,0x20,0x20,\n    0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x63,0x6d,0x64,0x5f,0x6e,0x61,0x6d,0x65,0x2c,\n    0x20,0x4d,0x2e,0x61,0x72,0x67,0x5f,0x70,0x61,0x72,0x73,0x65,0x28,0x61,0x72,0x67,\n    0x73,0x29,0x2c,0x20,0x64,0x61,0x74,0x61,0x0a,0x65,0x6e,0x64,0x0a,0x0a,0x2d,0x2d,\n    0x2d,0x20,0x52,0x65,0x74,0x75,0x72,0x6e,0x73,0x20,0x74,0x68,0x65,0x20,0x70,0x61,\n    0x63,0x6b,0x65,0x74,0x20,0x72,0x65,0x61,0x64,0x20,0x66,0x72,0x6f,0x6d,0x20,0x73,\n    0x6f,0x63,0x6b,0x65,0x74,0x2c,0x20,0x6f,0x72,0x20,0x6e,0x69,0x6c,0x20,0x66,0x6f,\n    0x6c,0x6c,0x6f,0x77,0x65,0x64,0x20,0x62,0x79,0x20,0x61,0x6e,0x20,0x65,0x72,0x72,\n    0x6f,0x72,0x20,0x6d,0x65,0x73,0x73,0x61,0x67,0x65,0x20,0x6f,0x6e,0x20,0x65,0x72,\n    0x72,0x6f,0x72,0x73,0x2e,0x0a,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x20,0x4d,\n    0x2e,0x72,0x65,0x61,0x64,0x5f,0x70,0x61,0x63,0x6b,0x65,0x74,0x28,0x73,0x6b,0x74,\n    0x29,0x0a,0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x73,0x69,0x7a,0x65,\n    0x20,0x3d,0x20,0x7b,0x7d,0x0a,0x20,0x20,0x20,0x20,0x77,0x68,0x69,0x6c,0x65,0x20,\n    0x74,0x72,0x75,0x65,0x20,0x64,0x6f,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x6c,0x6f,0x63,0x61,0x6c,0x20,0x62,0x79,0x74,0x65,0x2c,0x20,0x65,0x72,0x72,0x20,\n    0x3d,0x20,0x73,0x6b,0x74,0x3a,0x72,0x65,0x63,0x65,0x69,0x76,0x65,0x28,0x31,0x29,\n    0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x69,0x66,0x20,0x6e,0x6f,0x74,0x20,\n    0x62,0x79,0x74,0x65,0x20,0x74,0x68,0x65,0x6e,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,\n    0x20,0x6e,0x69,0x6c,0x2c,0x20,0x65,0x72,0x72,0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x69,0x66,0x20,0x62,0x79,0x74,0x65,0x20,0x3d,0x3d,\n    0x20,0x22,0x5c,0x30,0x30,0x30,0x22,0x20,0x74,0x68,0x65,0x6e,0x20,0x62,0x72,0x65,\n    0x61,0x6b,0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x73,\n    0x69,0x7a,0x65,0x5b,0x23,0x73,0x69,0x7a,0x65,0x2b,0x31,0x5d,0x20,0x3d,0x20,0x62,\n    0x79,0x74,0x65,0x0a,0x20,0x20,0x20,0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,0x20,0x20,\n    0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x74,0x63,0x6f,0x6e,0x63,0x61,0x74,0x28,0x73,\n    0x69,0x7a,0x65,0x29,0x0a,0x65,0x6e,0x64,0x0a,0x0a,0x4d,0x2e,0x44,0x42,0x47,0x50,\n    0x5f,0x45,0x52,0x52,0x5f,0x4d,0x45,0x54,0x41,0x54,0x41,0x42,0x4c,0x45,0x20,0x3d,\n    0x20,0x7b,0x7d,0x20,0x2d,0x2d,0x20,0x75,0x6e,0x69,0x71,0x75,0x65,0x20,0x6f,0x62,\n    0x6a,0x65,0x63,0x74,0x20,0x75,0x73,0x65,0x64,0x20,0x74,0x6f,0x20,0x69,0x64,0x65,\n    0x6e,0x74,0x69,0x66,0x79,0x20,0x44,0x42,0x47,0x70,0x20,0x65,0x72,0x72,0x6f,0x72,\n    0x73,0x0a,0x0a,0x2d,0x2d,0x2d,0x20,0x54,0x68,0x72,0x6f,0x77,0x73,0x20,0x61,0x20,\n    0x63,0x6f,0x72,0x72,0x65,0x63,0x74,0x20,0x44,0x42,0x47,0x70,0x20,0x65,0x72,0x72,\n    0x6f,0x72,0x20,0x77,0x68,0x69,0x63,0x68,0x20,0x72,0x65,0x73,0x75,0x6c,0x74,0x20,\n    0x69,0x6e,0x20,0x61,0x20,0x66,0x69,0x6e,0x65,0x20,0x74,0x75,0x6e,0x65,0x64,0x20,\n    0x65,0x72,0x72,0x6f,0x72,0x20,0x6d,0x65,0x73,0x73,0x61,0x67,0x65,0x20,0x74,0x6f,\n    0x20,0x74,0x68,0x65,0x20,0x73,0x65,0x72,0x76,0x65,0x72,0x2e,0x0a,0x2d,0x2d,0x20,\n    0x49,0x74,0x20,0x69,0x73,0x20,0x69,0x6e,0x74,0x65,0x6e,0x64,0x65,0x64,0x20,0x74,\n    0x6f,0x20,0x62,0x65,0x20,0x63,0x61,0x6c,0x6c,0x65,0x64,0x20,0x69,0x6e,0x74,0x6f,\n    0x20,0x61,0x20,0x63,0x6f,0x6d,0x6d,0x61,0x6e,0x64,0x20,0x74,0x6f,0x20,0x6d,0x61,\n    0x6b,0x65,0x20,0x61,0x20,0x75,0x73,0x65,0x66,0x75,0x6c,0x20,0x65,0x72,0x72,0x6f,\n    0x72,0x20,0x6d,0x65,0x73,0x73,0x61,0x67,0x65,0x2c,0x20,0x61,0x20,0x73,0x74,0x61,\n    0x6e,0x64,0x61,0x72,0x64,0x20,0x4c,0x75,0x61,0x20,0x65,0x72,0x72,0x6f,0x72,0x0a,\n    0x2d,0x2d,0x20,0x72,0x65,0x73,0x75,0x6c,0x74,0x20,0x69,0x6e,0x20,0x61,0x20,0x63,\n    0x6f,0x64,0x65,0x20,0x39,0x39,0x38,0x20,0x65,0x72,0x72,0x6f,0x72,0x20,0x28,0x69,\n    0x6e,0x74,0x65,0x72,0x6e,0x61,0x6c,0x20,0x64,0x65,0x62,0x75,0x67,0x67,0x65,0x72,\n    0x20,0x65,0x72,0x72,0x6f,0x72,0x29,0x2e,0x0a,0x2d,0x2d,0x20,0x40,0x70,0x61,0x72,\n    0x61,0x6d,0x20,0x63,0x6f,0x64,0x65,0x20,0x6e,0x75,0x6d,0x65,0x72,0x69,0x63,0x61,\n    0x6c,0x20,0x65,0x72,0x72,0x6f,0x72,0x20,0x63,0x6f,0x64,0x65,0x0a,0x2d,0x2d,0x20,\n    0x40,0x70,0x61,0x72,0x61,0x6d,0x20,0x6d,0x65,0x73,0x73,0x61,0x67,0x65,0x20,0x6d,\n    0x65,0x73,0x73,0x61,0x67,0x65,0x20,0x73,0x74,0x72,0x69,0x6e,0x67,0x20,0x28,0x6f,\n    0x70,0x74,0x69,0x6f,0x6e,0x61,0x6c,0x29,0x0a,0x2d,0x2d,0x20,0x40,0x70,0x61,0x72,\n    0x61,0x6d,0x20,0x61,0x74,0x74,0x72,0x20,0x65,0x78,0x74,0x72,0x61,0x20,0x61,0x74,\n    0x74,0x72,0x69,0x62,0x75,0x74,0x65,0x73,0x20,0x74,0x6f,0x20,0x61,0x64,0x64,0x20,\n    0x74,0x6f,0x20,0x74,0x68,0x65,0x20,0x72,0x65,0x73,0x70,0x6f,0x6e,0x73,0x65,0x20,\n    0x74,0x61,0x67,0x20,0x28,0x6f,0x70,0x74,0x69,0x6f,0x6e,0x61,0x6c,0x29,0x0a,0x66,\n    0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x20,0x4d,0x2e,0x65,0x72,0x72,0x6f,0x72,0x28,\n    0x63,0x6f,0x64,0x65,0x2c,0x20,0x6d,0x65,0x73,0x73,0x61,0x67,0x65,0x2c,0x20,0x61,\n    0x74,0x74,0x72,0x29,0x0a,0x20,0x20,0x20,0x20,0x65,0x72,0x72,0x6f,0x72,0x28,0x73,\n    0x65,0x74,0x6d,0x65,0x74,0x61,0x74,0x61,0x62,0x6c,0x65,0x28,0x7b,0x20,0x63,0x6f,\n    0x64,0x65,0x20,0x3d,0x20,0x63,0x6f,0x64,0x65,0x2c,0x20,0x6d,0x65,0x73,0x73,0x61,\n    0x67,0x65,0x20,0x3d,0x20,0x6d,0x65,0x73,0x73,0x61,0x67,0x65,0x2c,0x20,0x61,0x74,\n    0x74,0x72,0x20,0x3d,0x20,0x61,0x74,0x74,0x72,0x20,0x6f,0x72,0x20,0x7b,0x7d,0x20,\n    0x7d,0x2c,0x20,0x4d,0x2e,0x44,0x42,0x47,0x50,0x5f,0x45,0x52,0x52,0x5f,0x4d,0x45,\n    0x54,0x41,0x54,0x41,0x42,0x4c,0x45,0x29,0x2c,0x20,0x32,0x29,0x0a,0x65,0x6e,0x64,\n    0x0a,0x0a,0x2d,0x2d,0x2d,0x20,0x4c,0x69,0x6b,0x65,0x20,0x63,0x6f,0x72,0x65,0x20,\n    0x61,0x73,0x73,0x65,0x72,0x74,0x20,0x62,0x75,0x74,0x20,0x74,0x68,0x72,0x6f,0x77,\n    0x73,0x20,0x61,0x20,0x44,0x42,0x47,0x70,0x20,0x65,0x72,0x72,0x6f,0x72,0x20,0x69,\n    0x66,0x20,0x63,0x6f,0x6e,0x64,0x69,0x74,0x69,0x6f,0x6e,0x20,0x69,0x73,0x20,0x6e,\n    0x6f,0x74,0x20,0x6d,0x65,0x74,0x2e,0x0a,0x2d,0x2d,0x20,0x40,0x70,0x61,0x72,0x61,\n    0x6d,0x20,0x63,0x6f,0x64,0x65,0x20,0x6e,0x75,0x6d,0x65,0x72,0x69,0x63,0x61,0x6c,\n    0x20,0x65,0x72,0x72,0x6f,0x72,0x20,0x63,0x6f,0x64,0x65,0x20,0x74,0x68,0x72,0x6f,\n    0x77,0x6e,0x20,0x69,0x66,0x20,0x63,0x6f,0x6e,0x64,0x69,0x74,0x69,0x6f,0x6e,0x20,\n    0x69,0x73,0x20,0x6e,0x6f,0x74,0x20,0x6d,0x65,0x74,0x2e,0x0a,0x2d,0x2d,0x20,0x40,\n    0x70,0x61,0x72,0x61,0x6d,0x20,0x6d,0x65,0x73,0x73,0x61,0x67,0x65,0x20,0x63,0x6f,\n    0x6e,0x64,0x69,0x74,0x69,0x6f,0x6e,0x20,0x74,0x6f,0x20,0x74,0x65,0x73,0x74,0x0a,\n    0x2d,0x2d,0x20,0x40,0x70,0x61,0x72,0x61,0x6d,0x20,0x2e,0x2e,0x2e,0x20,0x77,0x69,\n    0x6c,0x6c,0x20,0x62,0x65,0x20,0x75,0x73,0x65,0x64,0x20,0x61,0x73,0x20,0x65,0x72,\n    0x72,0x6f,0x72,0x20,0x6d,0x65,0x73,0x73,0x61,0x67,0x65,0x20,0x69,0x66,0x20,0x74,\n    0x65,0x73,0x74,0x20,0x66,0x61,0x69,0x6c,0x73,0x2e,0x0a,0x66,0x75,0x6e,0x63,0x74,\n    0x69,0x6f,0x6e,0x20,0x4d,0x2e,0x61,0x73,0x73,0x65,0x72,0x74,0x28,0x63,0x6f,0x64,\n    0x65,0x2c,0x20,0x73,0x75,0x63,0x63,0x65,0x73,0x73,0x2c,0x20,0x2e,0x2e,0x2e,0x29,\n    0x0a,0x20,0x20,0x20,0x20,0x69,0x66,0x20,0x6e,0x6f,0x74,0x20,0x73,0x75,0x63,0x63,\n    0x65,0x73,0x73,0x20,0x74,0x68,0x65,0x6e,0x20,0x4d,0x2e,0x65,0x72,0x72,0x6f,0x72,\n    0x28,0x63,0x6f,0x64,0x65,0x2c,0x20,0x28,0x2e,0x2e,0x2e,0x29,0x29,0x20,0x65,0x6e,\n    0x64,0x0a,0x20,0x20,0x20,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x73,0x75,0x63,\n    0x63,0x65,0x73,0x73,0x2c,0x20,0x2e,0x2e,0x2e,0x0a,0x65,0x6e,0x64,0x0a,0x0a,0x2d,\n    0x2d,0x20,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x0a,0x2d,0x2d,0x20,0x4f,0x75,0x74,0x67,0x6f,0x69,0x6e,0x67,0x20,\n    0x64,0x61,0x74,0x61,0x0a,0x2d,0x2d,0x20,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x0a,0x6c,0x6f,0x63,0x61,0x6c,0x20,\n    0x78,0x6d,0x6c,0x61,0x74,0x74,0x72,0x5f,0x73,0x70,0x65,0x63,0x69,0x61,0x6c,0x63,\n    0x68,0x61,0x72,0x73,0x20,0x3d,0x20,0x7b,0x20,0x5b,0x27,0x22,0x27,0x5d,0x20,0x3d,\n    0x20,0x22,0x26,0x71,0x75,0x6f,0x74,0x3b,0x22,0x2c,0x20,0x5b,0x22,0x3c,0x22,0x5d,\n    0x20,0x3d,0x20,0x22,0x26,0x6c,0x74,0x3b,0x22,0x2c,0x20,0x5b,0x22,0x26,0x22,0x5d,\n    0x20,0x3d,0x20,0x22,0x26,0x61,0x6d,0x70,0x3b,0x22,0x20,0x7d,0x0a,0x2d,0x2d,0x2d,\n    0x20,0x56,0x65,0x72,0x79,0x20,0x62,0x61,0x73,0x69,0x63,0x20,0x58,0x4d,0x4c,0x20,\n    0x67,0x65,0x6e,0x65,0x72,0x61,0x74,0x6f,0x72,0x0a,0x2d,0x2d,0x20,0x47,0x65,0x6e,\n    0x65,0x72,0x61,0x74,0x65,0x73,0x20,0x61,0x20,0x58,0x4d,0x4c,0x20,0x73,0x74,0x72,\n    0x69,0x6e,0x67,0x20,0x66,0x72,0x6f,0x6d,0x20,0x61,0x20,0x4c,0x75,0x61,0x20,0x4f,\n    0x62,0x6a,0x65,0x63,0x74,0x20,0x4d,0x6f,0x64,0x65,0x6c,0x20,0x28,0x4c,0x4f,0x4d,\n    0x29,0x20,0x74,0x61,0x62,0x6c,0x65,0x2e,0x0a,0x2d,0x2d,0x20,0x53,0x65,0x65,0x20,\n    0x68,0x74,0x74,0x70,0x3a,0x2f,0x2f,0x6d,0x61,0x74,0x74,0x68,0x65,0x77,0x77,0x69,\n    0x6c,0x64,0x2e,0x63,0x6f,0x2e,0x75,0x6b,0x2f,0x70,0x72,0x6f,0x6a,0x65,0x63,0x74,\n    0x73,0x2f,0x6c,0x75,0x61,0x65,0x78,0x70,0x61,0x74,0x2f,0x6c,0x6f,0x6d,0x2e,0x68,\n    0x74,0x6d,0x6c,0x0a,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x20,0x4d,0x2e,0x6c,\n    0x6f,0x6d,0x32,0x73,0x74,0x72,0x28,0x78,0x6d,0x6c,0x29,0x0a,0x20,0x20,0x20,0x20,\n    0x6c,0x6f,0x63,0x61,0x6c,0x20,0x70,0x69,0x65,0x63,0x65,0x73,0x20,0x3d,0x20,0x7b,\n    0x20,0x7d,0x20,0x2d,0x2d,0x20,0x73,0x74,0x72,0x69,0x6e,0x67,0x20,0x62,0x75,0x66,\n    0x66,0x65,0x72,0x0a,0x0a,0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x66,\n    0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x20,0x67,0x65,0x6e,0x65,0x72,0x61,0x74,0x65,\n    0x28,0x6e,0x6f,0x64,0x65,0x29,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x70,\n    0x69,0x65,0x63,0x65,0x73,0x5b,0x23,0x70,0x69,0x65,0x63,0x65,0x73,0x20,0x2b,0x20,\n    0x31,0x5d,0x20,0x3d,0x20,0x22,0x3c,0x22,0x2e,0x2e,0x6e,0x6f,0x64,0x65,0x2e,0x74,\n    0x61,0x67,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x70,0x69,0x65,0x63,0x65,\n    0x73,0x5b,0x23,0x70,0x69,0x65,0x63,0x65,0x73,0x20,0x2b,0x20,0x31,0x5d,0x20,0x3d,\n    0x20,0x22,0x20,0x22,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x2d,0x2d,0x20,\n    0x61,0x74,0x74,0x72,0x69,0x62,0x75,0x74,0x65,0x20,0x6f,0x72,0x64,0x65,0x72,0x69,\n    0x6e,0x67,0x20,0x69,0x73,0x20,0x6e,0x6f,0x74,0x20,0x68,0x6f,0x6e,0x6f,0x72,0x65,\n    0x64,0x20,0x68,0x65,0x72,0x65,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x66,\n    0x6f,0x72,0x20,0x61,0x74,0x74,0x72,0x2c,0x20,0x76,0x61,0x6c,0x20,0x69,0x6e,0x20,\n    0x70,0x61,0x69,0x72,0x73,0x28,0x6e,0x6f,0x64,0x65,0x2e,0x61,0x74,0x74,0x72,0x20,\n    0x6f,0x72,0x20,0x7b,0x7d,0x29,0x20,0x64,0x6f,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x69,0x66,0x20,0x74,0x79,0x70,0x65,0x28,0x61,0x74,\n    0x74,0x72,0x29,0x20,0x3d,0x3d,0x20,0x22,0x73,0x74,0x72,0x69,0x6e,0x67,0x22,0x20,\n    0x74,0x68,0x65,0x6e,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x70,0x69,0x65,0x63,0x65,0x73,0x5b,0x23,0x70,0x69,0x65,\n    0x63,0x65,0x73,0x20,0x2b,0x20,0x31,0x5d,0x20,0x3d,0x20,0x61,0x74,0x74,0x72,0x20,\n    0x2e,0x2e,0x20,0x27,0x3d,0x22,0x27,0x20,0x2e,0x2e,0x20,0x74,0x6f,0x73,0x74,0x72,\n    0x69,0x6e,0x67,0x28,0x76,0x61,0x6c,0x29,0x3a,0x67,0x73,0x75,0x62,0x28,0x27,0x5b,\n    0x22,0x26,0x3c,0x5d,0x27,0x2c,0x20,0x78,0x6d,0x6c,0x61,0x74,0x74,0x72,0x5f,0x73,\n    0x70,0x65,0x63,0x69,0x61,0x6c,0x63,0x68,0x61,0x72,0x73,0x29,0x20,0x2e,0x2e,0x20,\n    0x27,0x22,0x27,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x70,0x69,0x65,0x63,0x65,0x73,0x5b,0x23,0x70,0x69,0x65,0x63,\n    0x65,0x73,0x20,0x2b,0x20,0x31,0x5d,0x20,0x3d,0x20,0x22,0x20,0x22,0x0a,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x70,0x69,0x65,0x63,0x65,0x73,0x5b,0x23,0x70,0x69,0x65,0x63,0x65,0x73,\n    0x5d,0x20,0x3d,0x20,0x6e,0x69,0x6c,0x20,0x2d,0x2d,0x20,0x72,0x65,0x6d,0x6f,0x76,\n    0x65,0x20,0x74,0x68,0x65,0x20,0x6c,0x61,0x73,0x74,0x20,0x73,0x65,0x70,0x61,0x72,\n    0x61,0x74,0x6f,0x72,0x20,0x28,0x75,0x73,0x65,0x6c,0x65,0x73,0x73,0x29,0x0a,0x0a,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x69,0x66,0x20,0x6e,0x6f,0x64,0x65,0x5b,\n    0x31,0x5d,0x20,0x74,0x68,0x65,0x6e,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x70,0x69,0x65,0x63,0x65,0x73,0x5b,0x23,0x70,0x69,0x65,0x63,\n    0x65,0x73,0x20,0x2b,0x20,0x31,0x5d,0x20,0x3d,0x20,0x22,0x3e,0x22,0x0a,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x66,0x6f,0x72,0x20,0x5f,0x2c,\n    0x20,0x63,0x68,0x69,0x6c,0x64,0x20,0x69,0x6e,0x20,0x69,0x70,0x61,0x69,0x72,0x73,\n    0x28,0x6e,0x6f,0x64,0x65,0x29,0x20,0x64,0x6f,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x69,0x66,0x20,0x74,0x79,0x70,\n    0x65,0x28,0x63,0x68,0x69,0x6c,0x64,0x29,0x20,0x3d,0x3d,0x20,0x22,0x74,0x61,0x62,\n    0x6c,0x65,0x22,0x20,0x74,0x68,0x65,0x6e,0x20,0x67,0x65,0x6e,0x65,0x72,0x61,0x74,\n    0x65,0x28,0x63,0x68,0x69,0x6c,0x64,0x29,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x65,0x6c,0x73,0x65,0x20,0x70,0x69,\n    0x65,0x63,0x65,0x73,0x5b,0x23,0x70,0x69,0x65,0x63,0x65,0x73,0x20,0x2b,0x20,0x31,\n    0x5d,0x20,0x3d,0x20,0x22,0x3c,0x21,0x5b,0x43,0x44,0x41,0x54,0x41,0x5b,0x22,0x20,\n    0x2e,0x2e,0x20,0x74,0x6f,0x73,0x74,0x72,0x69,0x6e,0x67,0x28,0x63,0x68,0x69,0x6c,\n    0x64,0x29,0x20,0x2e,0x2e,0x20,0x22,0x5d,0x5d,0x3e,0x22,0x20,0x65,0x6e,0x64,0x0a,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x65,0x6e,0x64,0x0a,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x70,0x69,0x65,0x63,\n    0x65,0x73,0x5b,0x23,0x70,0x69,0x65,0x63,0x65,0x73,0x20,0x2b,0x20,0x31,0x5d,0x20,\n    0x3d,0x20,0x22,0x3c,0x2f,0x22,0x20,0x2e,0x2e,0x20,0x6e,0x6f,0x64,0x65,0x2e,0x74,\n    0x61,0x67,0x20,0x2e,0x2e,0x20,0x22,0x3e,0x22,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x65,0x6c,0x73,0x65,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x70,0x69,0x65,0x63,0x65,0x73,0x5b,0x23,0x70,0x69,0x65,0x63,0x65,\n    0x73,0x20,0x2b,0x20,0x31,0x5d,0x20,0x3d,0x20,0x22,0x2f,0x3e,0x22,0x0a,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,0x20,0x20,0x65,0x6e,\n    0x64,0x0a,0x0a,0x20,0x20,0x20,0x20,0x67,0x65,0x6e,0x65,0x72,0x61,0x74,0x65,0x28,\n    0x78,0x6d,0x6c,0x29,0x0a,0x20,0x20,0x20,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,\n    0x74,0x63,0x6f,0x6e,0x63,0x61,0x74,0x28,0x70,0x69,0x65,0x63,0x65,0x73,0x29,0x0a,\n    0x65,0x6e,0x64,0x0a,0x0a,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x20,0x4d,0x2e,\n    0x73,0x65,0x6e,0x64,0x5f,0x78,0x6d,0x6c,0x28,0x73,0x6b,0x74,0x2c,0x20,0x72,0x65,\n    0x73,0x70,0x29,0x0a,0x20,0x20,0x20,0x20,0x69,0x66,0x20,0x6e,0x6f,0x74,0x20,0x72,\n    0x65,0x73,0x70,0x2e,0x61,0x74,0x74,0x72,0x20,0x74,0x68,0x65,0x6e,0x20,0x72,0x65,\n    0x73,0x70,0x2e,0x61,0x74,0x74,0x72,0x20,0x3d,0x20,0x7b,0x7d,0x20,0x65,0x6e,0x64,\n    0x0a,0x20,0x20,0x20,0x20,0x72,0x65,0x73,0x70,0x2e,0x61,0x74,0x74,0x72,0x2e,0x78,\n    0x6d,0x6c,0x6e,0x73,0x20,0x3d,0x20,0x22,0x75,0x72,0x6e,0x3a,0x64,0x65,0x62,0x75,\n    0x67,0x67,0x65,0x72,0x5f,0x70,0x72,0x6f,0x74,0x6f,0x63,0x6f,0x6c,0x5f,0x76,0x31,\n    0x22,0x0a,0x0a,0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x64,0x61,0x74,\n    0x61,0x20,0x3d,0x20,0x27,0x3c,0x3f,0x78,0x6d,0x6c,0x20,0x76,0x65,0x72,0x73,0x69,\n    0x6f,0x6e,0x3d,0x22,0x31,0x2e,0x30,0x22,0x20,0x65,0x6e,0x63,0x6f,0x64,0x69,0x6e,\n    0x67,0x3d,0x22,0x55,0x54,0x46,0x2d,0x38,0x22,0x20,0x3f,0x3e,0x5c,0x6e,0x27,0x2e,\n    0x2e,0x4d,0x2e,0x6c,0x6f,0x6d,0x32,0x73,0x74,0x72,0x28,0x72,0x65,0x73,0x70,0x29,\n    0x0a,0x20,0x20,0x20,0x20,0x75,0x74,0x69,0x6c,0x2e,0x6c,0x6f,0x67,0x28,0x22,0x44,\n    0x45,0x42,0x55,0x47,0x22,0x2c,0x20,0x22,0x53,0x65,0x6e,0x64,0x20,0x22,0x20,0x2e,\n    0x2e,0x20,0x64,0x61,0x74,0x61,0x29,0x0a,0x20,0x20,0x20,0x20,0x73,0x6b,0x74,0x3a,\n    0x73,0x65,0x6e,0x64,0x28,0x74,0x6f,0x73,0x74,0x72,0x69,0x6e,0x67,0x28,0x23,0x64,\n    0x61,0x74,0x61,0x29,0x2e,0x2e,0x22,0x5c,0x30,0x30,0x30,0x22,0x2e,0x2e,0x64,0x61,\n    0x74,0x61,0x2e,0x2e,0x22,0x5c,0x30,0x30,0x30,0x22,0x29,0x0a,0x65,0x6e,0x64,0x0a,\n    0x0a,0x2d,0x2d,0x2d,0x20,0x52,0x65,0x74,0x75,0x72,0x6e,0x20,0x61,0x6e,0x20,0x58,\n    0x4d,0x4c,0x20,0x74,0x61,0x67,0x20,0x64,0x65,0x73,0x63,0x72,0x69,0x62,0x69,0x6e,\n    0x67,0x20,0x61,0x20,0x64,0x65,0x62,0x75,0x67,0x67,0x65,0x72,0x20,0x65,0x72,0x72,\n    0x6f,0x72,0x2c,0x20,0x77,0x69,0x74,0x68,0x20,0x61,0x6e,0x20,0x6f,0x70,0x74,0x69,\n    0x6f,0x6e,0x61,0x6c,0x20,0x6d,0x65,0x73,0x73,0x61,0x67,0x65,0x0a,0x2d,0x2d,0x20,\n    0x40,0x70,0x61,0x72,0x61,0x6d,0x20,0x63,0x6f,0x64,0x65,0x20,0x28,0x6e,0x75,0x6d,\n    0x62,0x65,0x72,0x29,0x20,0x65,0x72,0x72,0x6f,0x72,0x20,0x63,0x6f,0x64,0x65,0x20,\n    0x28,0x73,0x65,0x65,0x20,0x44,0x42,0x47,0x70,0x20,0x73,0x70,0x65,0x63,0x69,0x66,\n    0x69,0x63,0x61,0x74,0x69,0x6f,0x6e,0x29,0x0a,0x2d,0x2d,0x20,0x40,0x70,0x61,0x72,\n    0x61,0x6d,0x20,0x6d,0x73,0x67,0x20,0x20,0x28,0x73,0x74,0x72,0x69,0x6e,0x67,0x2c,\n    0x20,0x6f,0x70,0x74,0x69,0x6f,0x6e,0x61,0x6c,0x29,0x20,0x74,0x65,0x78,0x74,0x75,\n    0x61,0x6c,0x20,0x64,0x65,0x73,0x63,0x72,0x69,0x70,0x74,0x69,0x6f,0x6e,0x20,0x6f,\n    0x66,0x20,0x65,0x72,0x72,0x6f,0x72,0x0a,0x2d,0x2d,0x20,0x40,0x72,0x65,0x74,0x75,\n    0x72,0x6e,0x20,0x74,0x61,0x62,0x6c,0x65,0x2c,0x20,0x73,0x75,0x69,0x74,0x61,0x62,\n    0x6c,0x65,0x20,0x74,0x6f,0x20,0x62,0x65,0x20,0x63,0x6f,0x6e,0x76,0x65,0x72,0x74,\n    0x65,0x64,0x20,0x69,0x6e,0x74,0x6f,0x20,0x58,0x4d,0x4c,0x0a,0x66,0x75,0x6e,0x63,\n    0x74,0x69,0x6f,0x6e,0x20,0x4d,0x2e,0x6d,0x61,0x6b,0x65,0x5f,0x65,0x72,0x72,0x6f,\n    0x72,0x28,0x63,0x6f,0x64,0x65,0x2c,0x20,0x6d,0x73,0x67,0x29,0x0a,0x20,0x20,0x20,\n    0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x65,0x6c,0x65,0x6d,0x20,0x3d,0x20,0x7b,0x20,\n    0x74,0x61,0x67,0x20,0x3d,0x20,0x22,0x65,0x72,0x72,0x6f,0x72,0x22,0x2c,0x20,0x61,\n    0x74,0x74,0x72,0x20,0x3d,0x20,0x7b,0x20,0x63,0x6f,0x64,0x65,0x20,0x3d,0x20,0x63,\n    0x6f,0x64,0x65,0x20,0x7d,0x20,0x7d,0x0a,0x20,0x20,0x20,0x20,0x69,0x66,0x20,0x6d,\n    0x73,0x67,0x20,0x74,0x68,0x65,0x6e,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x65,0x6c,0x65,0x6d,0x5b,0x31,0x5d,0x20,0x3d,0x20,0x7b,0x20,0x74,0x6f,0x73,0x74,\n    0x72,0x69,0x6e,0x67,0x28,0x6d,0x73,0x67,0x29,0x2c,0x20,0x74,0x61,0x67,0x20,0x3d,\n    0x20,0x22,0x6d,0x65,0x73,0x73,0x61,0x67,0x65,0x22,0x20,0x7d,0x0a,0x20,0x20,0x20,\n    0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,0x20,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,\n    0x65,0x6c,0x65,0x6d,0x0a,0x65,0x6e,0x64,0x0a,0x0a,0x72,0x65,0x74,0x75,0x72,0x6e,\n    0x20,0x4d,0x0a,0x0a,0x65,0x6e,0x64,0x0a,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x0a,0x2d,0x2d,0x20,0x45,0x6e,0x64,0x20,\n    0x6f,0x66,0x20,0x6d,0x6f,0x64,0x75,0x6c,0x65,0x64,0x65,0x62,0x75,0x67,0x67,0x65,\n    0x72,0x2e,0x64,0x62,0x67,0x70,0x0a,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x0a,0x0a,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x0a,0x2d,0x2d,0x20,0x20,0x4d,0x6f,\n    0x64,0x75,0x6c,0x65,0x20,0x64,0x65,0x62,0x75,0x67,0x67,0x65,0x72,0x2e,0x69,0x6e,\n    0x74,0x72,0x6f,0x73,0x70,0x65,0x63,0x74,0x69,0x6f,0x6e,0x0a,0x70,0x61,0x63,0x6b,\n    0x61,0x67,0x65,0x2e,0x70,0x72,0x65,0x6c,0x6f,0x61,0x64,0x5b,0x22,0x64,0x65,0x62,\n    0x75,0x67,0x67,0x65,0x72,0x2e,0x69,0x6e,0x74,0x72,0x6f,0x73,0x70,0x65,0x63,0x74,\n    0x69,0x6f,0x6e,0x22,0x5d,0x20,0x3d,0x20,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,\n    0x28,0x2e,0x2e,0x2e,0x29,0x0a,0x2d,0x2d,0x20,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x0a,0x2d,0x2d,0x20,0x43,0x6f,0x70,0x79,0x72,0x69,0x67,\n    0x68,0x74,0x20,0x28,0x63,0x29,0x20,0x32,0x30,0x31,0x31,0x2d,0x32,0x30,0x31,0x32,\n    0x20,0x53,0x69,0x65,0x72,0x72,0x61,0x20,0x57,0x69,0x72,0x65,0x6c,0x65,0x73,0x73,\n    0x20,0x61,0x6e,0x64,0x20,0x6f,0x74,0x68,0x65,0x72,0x73,0x2e,0x0a,0x2d,0x2d,0x20,\n    0x41,0x6c,0x6c,0x20,0x72,0x69,0x67,0x68,0x74,0x73,0x20,0x72,0x65,0x73,0x65,0x72,\n    0x76,0x65,0x64,0x2e,0x20,0x54,0x68,0x69,0x73,0x20,0x70,0x72,0x6f,0x67,0x72,0x61,\n    0x6d,0x20,0x61,0x6e,0x64,0x20,0x74,0x68,0x65,0x20,0x61,0x63,0x63,0x6f,0x6d,0x70,\n    0x61,0x6e,0x79,0x69,0x6e,0x67,0x20,0x6d,0x61,0x74,0x65,0x72,0x69,0x61,0x6c,0x73,\n    0x0a,0x2d,0x2d,0x20,0x61,0x72,0x65,0x20,0x6d,0x61,0x64,0x65,0x20,0x61,0x76,0x61,\n    0x69,0x6c,0x61,0x62,0x6c,0x65,0x20,0x75,0x6e,0x64,0x65,0x72,0x20,0x74,0x68,0x65,\n    0x20,0x74,0x65,0x72,0x6d,0x73,0x20,0x6f,0x66,0x20,0x74,0x68,0x65,0x20,0x45,0x63,\n    0x6c,0x69,0x70,0x73,0x65,0x20,0x50,0x75,0x62,0x6c,0x69,0x63,0x20,0x4c,0x69,0x63,\n    0x65,0x6e,0x73,0x65,0x20,0x76,0x31,0x2e,0x30,0x0a,0x2d,0x2d,0x20,0x77,0x68,0x69,\n    0x63,0x68,0x20,0x61,0x63,0x63,0x6f,0x6d,0x70,0x61,0x6e,0x69,0x65,0x73,0x20,0x74,\n    0x68,0x69,0x73,0x20,0x64,0x69,0x73,0x74,0x72,0x69,0x62,0x75,0x74,0x69,0x6f,0x6e,\n    0x2c,0x20,0x61,0x6e,0x64,0x20,0x69,0x73,0x20,0x61,0x76,0x61,0x69,0x6c,0x61,0x62,\n    0x6c,0x65,0x20,0x61,0x74,0x0a,0x2d,0x2d,0x20,0x68,0x74,0x74,0x70,0x3a,0x2f,0x2f,\n    0x77,0x77,0x77,0x2e,0x65,0x63,0x6c,0x69,0x70,0x73,0x65,0x2e,0x6f,0x72,0x67,0x2f,\n    0x6c,0x65,0x67,0x61,0x6c,0x2f,0x65,0x70,0x6c,0x2d,0x76,0x31,0x30,0x2e,0x68,0x74,\n    0x6d,0x6c,0x0a,0x2d,0x2d,0x0a,0x2d,0x2d,0x20,0x43,0x6f,0x6e,0x74,0x72,0x69,0x62,\n    0x75,0x74,0x6f,0x72,0x73,0x3a,0x0a,0x2d,0x2d,0x20,0x20,0x20,0x20,0x20,0x4a,0x75,\n    0x6c,0x69,0x65,0x6e,0x20,0x44,0x65,0x73,0x67,0x61,0x74,0x73,0x20,0x2d,0x20,0x69,\n    0x6e,0x69,0x74,0x69,0x61,0x6c,0x20,0x41,0x50,0x49,0x20,0x61,0x6e,0x64,0x20,0x69,\n    0x6d,0x70,0x6c,0x65,0x6d,0x65,0x6e,0x74,0x61,0x74,0x69,0x6f,0x6e,0x0a,0x2d,0x2d,\n    0x20,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x0a,0x2d,0x2d,\n    0x20,0x50,0x72,0x6f,0x70,0x65,0x72,0x74,0x69,0x65,0x73,0x20,0x67,0x65,0x6e,0x65,\n    0x72,0x61,0x74,0x69,0x6f,0x6e,0x2e,0x20,0x47,0x65,0x6e,0x65,0x72,0x61,0x74,0x65,\n    0x20,0x61,0x20,0x4c,0x4f,0x4d,0x20,0x74,0x61,0x62,0x6c,0x65,0x20,0x77,0x69,0x74,\n    0x68,0x20,0x64,0x61,0x74,0x61,0x20,0x66,0x72,0x6f,0x6d,0x20,0x69,0x6e,0x74,0x72,\n    0x6f,0x73,0x70,0x65,0x63,0x74,0x69,0x6f,0x6e,0x2e,0x0a,0x2d,0x2d,0x20,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x0a,0x0a,0x6c,0x6f,0x63,0x61,\n    0x6c,0x20,0x64,0x65,0x62,0x75,0x67,0x20,0x3d,0x20,0x72,0x65,0x71,0x75,0x69,0x72,\n    0x65,0x20,0x22,0x64,0x65,0x62,0x75,0x67,0x22,0x0a,0x6c,0x6f,0x63,0x61,0x6c,0x20,\n    0x70,0x6c,0x61,0x74,0x66,0x6f,0x72,0x6d,0x20,0x3d,0x20,0x72,0x65,0x71,0x75,0x69,\n    0x72,0x65,0x20,0x22,0x64,0x65,0x62,0x75,0x67,0x67,0x65,0x72,0x2e,0x70,0x6c,0x61,\n    0x74,0x66,0x6f,0x72,0x6d,0x22,0x0a,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x75,0x74,0x69,\n    0x6c,0x20,0x3d,0x20,0x72,0x65,0x71,0x75,0x69,0x72,0x65,0x20,0x22,0x64,0x65,0x62,\n    0x75,0x67,0x67,0x65,0x72,0x2e,0x75,0x74,0x69,0x6c,0x22,0x0a,0x0a,0x6c,0x6f,0x63,\n    0x61,0x6c,0x20,0x74,0x6f,0x73,0x74,0x72,0x69,0x6e,0x67,0x2c,0x20,0x74,0x79,0x70,\n    0x65,0x2c,0x20,0x61,0x73,0x73,0x65,0x72,0x74,0x2c,0x20,0x6e,0x65,0x78,0x74,0x2c,\n    0x20,0x72,0x61,0x77,0x67,0x65,0x74,0x2c,0x20,0x67,0x65,0x74,0x6d,0x65,0x74,0x61,\n    0x74,0x61,0x62,0x6c,0x65,0x2c,0x20,0x73,0x65,0x74,0x6d,0x65,0x74,0x61,0x74,0x61,\n    0x62,0x6c,0x65,0x2c,0x20,0x67,0x65,0x74,0x66,0x65,0x6e,0x76,0x2c,0x20,0x73,0x65,\n    0x6c,0x65,0x63,0x74,0x2c,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x63,0x6f,\n    0x79,0x69,0x65,0x6c,0x64,0x2c,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x63,\n    0x6f,0x63,0x72,0x65,0x61,0x74,0x65,0x2c,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x63,0x6f,0x73,0x74,0x61,0x74,0x75,0x73,0x2c,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x63,0x6f,0x72,0x65,0x73,0x75,0x6d,0x65,0x2c,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x73,0x66,0x6f,0x72,0x6d,0x61,0x74,0x2c,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x74,0x63,0x6f,0x6e,0x63,0x61,0x74,0x20,0x3d,0x0a,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x74,0x6f,0x73,0x74,0x72,0x69,0x6e,0x67,0x2c,0x20,0x74,0x79,0x70,0x65,0x2c,\n    0x20,0x61,0x73,0x73,0x65,0x72,0x74,0x2c,0x20,0x6e,0x65,0x78,0x74,0x2c,0x20,0x72,\n    0x61,0x77,0x67,0x65,0x74,0x2c,0x20,0x67,0x65,0x74,0x6d,0x65,0x74,0x61,0x74,0x61,\n    0x62,0x6c,0x65,0x2c,0x20,0x73,0x65,0x74,0x6d,0x65,0x74,0x61,0x74,0x61,0x62,0x6c,\n    0x65,0x2c,0x20,0x67,0x65,0x74,0x66,0x65,0x6e,0x76,0x2c,0x20,0x73,0x65,0x6c,0x65,\n    0x63,0x74,0x2c,0x20,0x63,0x6f,0x72,0x6f,0x75,0x74,0x69,0x6e,0x65,0x2e,0x79,0x69,\n    0x65,0x6c,0x64,0x2c,0x20,0x63,0x6f,0x72,0x6f,0x75,0x74,0x69,0x6e,0x65,0x2e,0x63,\n    0x72,0x65,0x61,0x74,0x65,0x2c,0x20,0x63,0x6f,0x72,0x6f,0x75,0x74,0x69,0x6e,0x65,\n    0x2e,0x73,0x74,0x61,0x74,0x75,0x73,0x2c,0x20,0x63,0x6f,0x72,0x6f,0x75,0x74,0x69,\n    0x6e,0x65,0x2e,0x72,0x65,0x73,0x75,0x6d,0x65,0x2c,0x20,0x73,0x74,0x72,0x69,0x6e,\n    0x67,0x2e,0x66,0x6f,0x72,0x6d,0x61,0x74,0x2c,0x20,0x74,0x61,0x62,0x6c,0x65,0x2e,\n    0x63,0x6f,0x6e,0x63,0x61,0x74,0x0a,0x0a,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x4d,0x55,\n    0x4c,0x54,0x49,0x56,0x41,0x4c,0x5f,0x4d,0x54,0x20,0x3d,0x20,0x7b,0x20,0x5f,0x5f,\n    0x74,0x6f,0x73,0x74,0x72,0x69,0x6e,0x67,0x20,0x3d,0x20,0x66,0x75,0x6e,0x63,0x74,\n    0x69,0x6f,0x6e,0x28,0x29,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x22,0x22,0x20,\n    0x65,0x6e,0x64,0x20,0x7d,0x0a,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x70,0x72,0x6f,0x62,\n    0x65,0x73,0x20,0x3d,0x20,0x7b,0x20,0x7d,0x0a,0x0a,0x2d,0x2d,0x20,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x20,0x2d,0x2d,0x0a,0x2d,0x2d,0x20,0x50,0x75,\n    0x62,0x6c,0x69,0x63,0x20,0x41,0x50,0x49,0x20,0x2d,0x2d,0x0a,0x2d,0x2d,0x20,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x20,0x2d,0x2d,0x0a,0x0a,0x2d,0x2d,\n    0x2d,0x0a,0x2d,0x2d,0x20,0x49,0x6e,0x74,0x72,0x6f,0x73,0x70,0x65,0x63,0x74,0x69,\n    0x6f,0x6e,0x20,0x6c,0x6f,0x67,0x69,0x63,0x2e,0x20,0x54,0x68,0x69,0x73,0x20,0x6d,\n    0x6f,0x64,0x75,0x6c,0x65,0x20,0x69,0x6d,0x70,0x6c,0x65,0x6d,0x65,0x6e,0x74,0x73,\n    0x20,0x4c,0x75,0x61,0x20,0x6f,0x62,0x6a,0x65,0x63,0x74,0x73,0x20,0x69,0x6e,0x74,\n    0x72,0x6f,0x73,0x70,0x65,0x63,0x74,0x69,0x6f,0x6e,0x20,0x61,0x6e,0x64,0x0a,0x2d,\n    0x2d,0x20,0x67,0x65,0x6e,0x65,0x72,0x61,0x74,0x65,0x73,0x20,0x61,0x20,0x5b,0x44,\n    0x42,0x47,0x50,0x5d,0x28,0x68,0x74,0x74,0x70,0x3a,0x2f,0x2f,0x78,0x64,0x65,0x62,\n    0x75,0x67,0x2e,0x6f,0x72,0x67,0x2f,0x64,0x6f,0x63,0x73,0x2d,0x64,0x62,0x67,0x70,\n    0x2e,0x70,0x68,0x70,0x29,0x20,0x63,0x6f,0x6d,0x70,0x61,0x74,0x69,0x62,0x6c,0x65,\n    0x0a,0x2d,0x2d,0x20,0x5b,0x4c,0x4f,0x4d,0x5d,0x28,0x68,0x74,0x74,0x70,0x3a,0x2f,\n    0x2f,0x6d,0x61,0x74,0x74,0x68,0x65,0x77,0x77,0x69,0x6c,0x64,0x2e,0x63,0x6f,0x2e,\n    0x75,0x6b,0x2f,0x70,0x72,0x6f,0x6a,0x65,0x63,0x74,0x73,0x2f,0x6c,0x75,0x61,0x65,\n    0x78,0x70,0x61,0x74,0x2f,0x6c,0x6f,0x6d,0x2e,0x68,0x74,0x6d,0x6c,0x29,0x20,0x64,\n    0x61,0x74,0x61,0x20,0x73,0x63,0x72,0x75,0x63,0x74,0x75,0x72,0x65,0x2e,0x0a,0x2d,\n    0x2d,0x20,0x40,0x6d,0x6f,0x64,0x75,0x6c,0x65,0x20,0x64,0x65,0x62,0x75,0x67,0x67,\n    0x65,0x72,0x2e,0x69,0x6e,0x74,0x72,0x6f,0x73,0x70,0x65,0x63,0x74,0x69,0x6f,0x6e,\n    0x0a,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x4d,0x20,0x3d,0x20,0x7b,0x20,0x7d,0x0a,0x0a,\n    0x2d,0x2d,0x2d,0x0a,0x2d,0x2d,0x20,0x52,0x65,0x70,0x72,0x65,0x73,0x65,0x6e,0x74,\n    0x20,0x74,0x68,0x65,0x20,0x61,0x63,0x74,0x75,0x61,0x6c,0x20,0x64,0x61,0x74,0x61,\n    0x20,0x74,0x6f,0x20,0x73,0x65,0x6e,0x64,0x20,0x74,0x6f,0x20,0x74,0x68,0x65,0x20,\n    0x64,0x65,0x62,0x75,0x67,0x67,0x65,0x72,0x2e,0x0a,0x2d,0x2d,0x20,0x46,0x75,0x6c,\n    0x6c,0x20,0x58,0x4d,0x4c,0x20,0x73,0x70,0x65,0x63,0x69,0x66,0x69,0x63,0x61,0x74,\n    0x69,0x6f,0x6e,0x20,0x63,0x61,0x6e,0x20,0x62,0x65,0x20,0x66,0x6f,0x75,0x6e,0x64,\n    0x20,0x69,0x6e,0x20,0x5b,0x44,0x42,0x47,0x50,0x20,0x73,0x70,0x65,0x63,0x69,0x66,\n    0x69,0x63,0x61,0x74,0x69,0x6f,0x6e,0x5d,0x28,0x68,0x74,0x74,0x70,0x3a,0x2f,0x2f,\n    0x78,0x64,0x65,0x62,0x75,0x67,0x2e,0x6f,0x72,0x67,0x2f,0x64,0x6f,0x63,0x73,0x2d,\n    0x64,0x62,0x67,0x70,0x2e,0x70,0x68,0x70,0x23,0x70,0x72,0x6f,0x70,0x65,0x72,0x74,\n    0x69,0x65,0x73,0x2d,0x76,0x61,0x72,0x69,0x61,0x62,0x6c,0x65,0x73,0x2d,0x61,0x6e,\n    0x64,0x2d,0x76,0x61,0x6c,0x75,0x65,0x73,0x29,0x2e,0x0a,0x2d,0x2d,0x20,0x4d,0x6f,\n    0x64,0x69,0x66,0x79,0x69,0x6e,0x67,0x20,0x70,0x72,0x6f,0x70,0x65,0x72,0x74,0x69,\n    0x65,0x73,0x20,0x61,0x66,0x74,0x65,0x72,0x20,0x74,0x68,0x65,0x69,0x72,0x20,0x67,\n    0x65,0x6e,0x65,0x72,0x61,0x74,0x69,0x6f,0x6e,0x20,0x69,0x73,0x20,0x70,0x6f,0x73,\n    0x73,0x69,0x62,0x6c,0x65,0x20,0x28,0x61,0x73,0x20,0x61,0x63,0x74,0x75,0x61,0x6c,\n    0x20,0x64,0x61,0x74,0x61,0x20,0x73,0x65,0x72,0x69,0x61,0x6c,0x69,0x7a,0x61,0x74,\n    0x69,0x6f,0x6e,0x2f,0x73,0x65,0x6e,0x64,0x69,0x6e,0x67,0x20,0x69,0x73,0x20,0x64,\n    0x65,0x6c,0x61,0x79,0x65,0x64,0x29,0x0a,0x2d,0x2d,0x20,0x62,0x75,0x74,0x20,0x73,\n    0x68,0x6f,0x75,0x6c,0x64,0x20,0x62,0x65,0x20,0x75,0x73,0x65,0x64,0x20,0x77,0x69,\n    0x74,0x68,0x20,0x63,0x61,0x72,0x65,0x2e,0x20,0x54,0x68,0x65,0x20,0x58,0x4d,0x4c,\n    0x20,0x73,0x74,0x72,0x75,0x63,0x74,0x75,0x72,0x65,0x20,0x75,0x73,0x65,0x73,0x20,\n    0x74,0x68,0x65,0x20,0x5b,0x4c,0x4f,0x4d,0x5d,0x28,0x68,0x74,0x74,0x70,0x3a,0x2f,\n    0x2f,0x6d,0x61,0x74,0x74,0x68,0x65,0x77,0x77,0x69,0x6c,0x64,0x2e,0x63,0x6f,0x2e,\n    0x75,0x6b,0x2f,0x70,0x72,0x6f,0x6a,0x65,0x63,0x74,0x73,0x2f,0x6c,0x75,0x61,0x65,\n    0x78,0x70,0x61,0x74,0x2f,0x6c,0x6f,0x6d,0x2e,0x68,0x74,0x6d,0x6c,0x29,0x0a,0x2d,\n    0x2d,0x20,0x66,0x6f,0x72,0x6d,0x61,0x74,0x2c,0x20,0x72,0x65,0x66,0x65,0x72,0x20,\n    0x74,0x6f,0x20,0x74,0x68,0x65,0x73,0x65,0x20,0x64,0x6f,0x63,0x75,0x6d,0x65,0x6e,\n    0x74,0x73,0x20,0x74,0x6f,0x20,0x67,0x65,0x74,0x20,0x6d,0x6f,0x72,0x65,0x20,0x69,\n    0x6e,0x66,0x6f,0x72,0x6d,0x61,0x74,0x69,0x6f,0x6e,0x73,0x20,0x61,0x62,0x6f,0x75,\n    0x74,0x20,0x66,0x69,0x65,0x6c,0x64,0x73,0x2e,0x0a,0x2d,0x2d,0x0a,0x2d,0x2d,0x20,\n    0x49,0x6e,0x20,0x61,0x64,0x64,0x69,0x74,0x69,0x6f,0x6e,0x20,0x74,0x6f,0x20,0x74,\n    0x61,0x62,0x6c,0x65,0x20,0x66,0x69,0x65,0x6c,0x64,0x73,0x2c,0x20,0x69,0x74,0x20,\n    0x68,0x61,0x73,0x20,0x61,0x6e,0x20,0x61,0x72,0x72,0x61,0x79,0x20,0x70,0x61,0x72,\n    0x74,0x2c,0x20,0x60,0x5b,0x31,0x5d,0x60,0x20,0x62,0x65,0x69,0x6e,0x67,0x20,0x74,\n    0x68,0x65,0x20,0x73,0x74,0x72,0x69,0x6e,0x67,0x20,0x72,0x65,0x70,0x72,0x65,0x73,\n    0x65,0x6e,0x74,0x61,0x74,0x69,0x6f,0x6e,0x20,0x28,0x62,0x61,0x73,0x65,0x36,0x34,\n    0x20,0x65,0x6e,0x63,0x6f,0x64,0x65,0x64,0x29,0x2c,0x0a,0x2d,0x2d,0x20,0x70,0x6f,\n    0x73,0x73,0x69,0x62,0x6c,0x79,0x20,0x66,0x6f,0x6c,0x6c,0x6f,0x77,0x65,0x64,0x20,\n    0x62,0x79,0x20,0x63,0x68,0x6c,0x69,0x64,0x20,0x70,0x72,0x6f,0x70,0x65,0x72,0x74,\n    0x69,0x65,0x73,0x20,0x28,0x40,0x7b,0x23,0x44,0x42,0x47,0x50,0x50,0x72,0x6f,0x70,\n    0x65,0x72,0x74,0x79,0x7d,0x20,0x74,0x68,0x65,0x6d,0x73,0x65,0x6c,0x76,0x65,0x73,\n    0x29,0x0a,0x2d,0x2d,0x0a,0x2d,0x2d,0x20,0x40,0x66,0x69,0x65,0x6c,0x64,0x20,0x23,\n    0x73,0x74,0x72,0x69,0x6e,0x67,0x20,0x74,0x61,0x67,0x20,0x41,0x6c,0x77,0x61,0x79,\n    0x73,0x20,0x22,0x70,0x72,0x6f,0x70,0x65,0x72,0x74,0x79,0x22,0x0a,0x2d,0x2d,0x20,\n    0x40,0x66,0x69,0x65,0x6c,0x64,0x20,0x23,0x74,0x61,0x62,0x6c,0x65,0x20,0x61,0x74,\n    0x74,0x72,0x20,0x58,0x4d,0x4c,0x20,0x61,0x74,0x74,0x72,0x69,0x62,0x75,0x74,0x65,\n    0x73,0x2c,0x20,0x73,0x65,0x65,0x20,0x44,0x42,0x47,0x50,0x20,0x73,0x70,0x65,0x63,\n    0x69,0x66,0x69,0x63,0x61,0x74,0x69,0x6f,0x6e,0x0a,0x2d,0x2d,0x20,0x40,0x74,0x79,\n    0x70,0x65,0x20,0x44,0x42,0x47,0x50,0x50,0x72,0x6f,0x70,0x65,0x72,0x74,0x79,0x0a,\n    0x0a,0x2d,0x2d,0x2d,0x0a,0x2d,0x2d,0x20,0x49,0x6e,0x70,0x65,0x63,0x74,0x6f,0x72,\n    0x73,0x20,0x74,0x61,0x62,0x6c,0x65,0x2c,0x20,0x63,0x6f,0x6e,0x74,0x61,0x69,0x6e,\n    0x20,0x61,0x6c,0x6c,0x20,0x69,0x6e,0x73,0x70,0x65,0x63,0x74,0x6f,0x72,0x20,0x66,\n    0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x73,0x2e,0x0a,0x2d,0x2d,0x20,0x4b,0x65,0x79,\n    0x73,0x20,0x61,0x72,0x65,0x20,0x65,0x69,0x74,0x68,0x65,0x72,0x20,0x74,0x79,0x70,\n    0x65,0x20,0x6e,0x61,0x6d,0x65,0x73,0x20,0x28,0x60,0x73,0x74,0x72,0x69,0x6e,0x67,\n    0x60,0x2c,0x20,0x60,0x6e,0x75,0x6d,0x62,0x65,0x72,0x60,0x2c,0x20,0x2e,0x2e,0x2e,\n    0x29,0x20,0x6f,0x72,0x20,0x6d,0x65,0x74,0x61,0x74,0x61,0x62,0x6c,0x65,0x73,0x0a,\n    0x2d,0x2d,0x20,0x74,0x68,0x61,0x74,0x20,0x68,0x61,0x76,0x65,0x20,0x61,0x20,0x63,\n    0x75,0x73,0x74,0x6f,0x6d,0x20,0x69,0x6e,0x73,0x70,0x65,0x63,0x74,0x6f,0x72,0x20,\n    0x61,0x74,0x74,0x61,0x63,0x68,0x65,0x64,0x2e,0x0a,0x2d,0x2d,0x20,0x40,0x66,0x69,\n    0x65,0x6c,0x64,0x20,0x5b,0x70,0x61,0x72,0x65,0x6e,0x74,0x3d,0x23,0x64,0x65,0x62,\n    0x75,0x67,0x67,0x65,0x72,0x2e,0x69,0x6e,0x74,0x72,0x6f,0x73,0x70,0x65,0x63,0x74,\n    0x69,0x6f,0x6e,0x5d,0x20,0x23,0x74,0x61,0x62,0x6c,0x65,0x20,0x69,0x6e,0x73,0x70,\n    0x65,0x63,0x74,0x6f,0x72,0x73,0x0a,0x4d,0x2e,0x69,0x6e,0x73,0x70,0x65,0x63,0x74,\n    0x6f,0x72,0x73,0x20,0x3d,0x20,0x7b,0x20,0x7d,0x0a,0x0a,0x2d,0x2d,0x2d,0x0a,0x2d,\n    0x2d,0x20,0x47,0x65,0x6e,0x65,0x72,0x61,0x74,0x65,0x20,0x61,0x20,0x44,0x42,0x47,\n    0x50,0x20,0x70,0x72,0x6f,0x70,0x65,0x72,0x74,0x79,0x20,0x69,0x66,0x20,0x6e,0x65,\n    0x65,0x64,0x65,0x64,0x2e,0x20,0x49,0x66,0x20,0x64,0x61,0x74,0x61,0x20,0x69,0x73,\n    0x20,0x69,0x6e,0x20,0x64,0x61,0x74,0x61,0x20,0x70,0x61,0x67,0x69,0x6e,0x61,0x74,\n    0x69,0x6f,0x6e,0x20,0x61,0x6e,0x64,0x20,0x72,0x65,0x63,0x75,0x72,0x73,0x69,0x6f,\n    0x6e,0x20,0x64,0x65,0x70,0x74,0x68,0x20,0x72,0x61,0x6e,0x67,0x65,0x73,0x2c,0x0a,\n    0x2d,0x2d,0x20,0x61,0x6e,0x64,0x20,0x73,0x65,0x6e,0x64,0x20,0x61,0x20,0x70,0x72,\n    0x6f,0x70,0x65,0x72,0x74,0x79,0x20,0x74,0x6f,0x20,0x74,0x68,0x65,0x20,0x64,0x65,\n    0x62,0x75,0x67,0x67,0x65,0x72,0x2c,0x20,0x6f,0x74,0x68,0x65,0x72,0x77,0x69,0x73,\n    0x65,0x20,0x64,0x72,0x6f,0x70,0x20,0x63,0x75,0x72,0x72,0x65,0x6e,0x74,0x20,0x70,\n    0x72,0x6f,0x70,0x65,0x72,0x74,0x79,0x2e,0x0a,0x2d,0x2d,0x20,0x40,0x70,0x61,0x72,\n    0x61,0x6d,0x20,0x23,0x73,0x74,0x72,0x69,0x6e,0x67,0x20,0x6e,0x61,0x6d,0x65,0x20,\n    0x50,0x72,0x6f,0x70,0x65,0x72,0x74,0x79,0x20,0x6e,0x61,0x6d,0x65,0x20,0x28,0x64,\n    0x69,0x73,0x70,0x6c,0x61,0x79,0x65,0x64,0x20,0x69,0x6e,0x20,0x49,0x44,0x45,0x29,\n    0x0a,0x2d,0x2d,0x20,0x40,0x70,0x61,0x72,0x61,0x6d,0x20,0x23,0x73,0x74,0x72,0x69,\n    0x6e,0x67,0x20,0x74,0x79,0x70,0x65,0x6e,0x61,0x6d,0x65,0x20,0x54,0x79,0x70,0x65,\n    0x20,0x6e,0x61,0x6d,0x65,0x20,0x28,0x64,0x69,0x73,0x70,0x6c,0x61,0x79,0x65,0x64,\n    0x20,0x69,0x6e,0x20,0x49,0x44,0x45,0x29,0x0a,0x2d,0x2d,0x20,0x40,0x70,0x61,0x72,\n    0x61,0x6d,0x20,0x23,0x73,0x74,0x72,0x69,0x6e,0x67,0x20,0x72,0x65,0x70,0x72,0x20,\n    0x56,0x61,0x6c,0x75,0x65,0x20,0x73,0x74,0x72,0x69,0x6e,0x67,0x20,0x72,0x65,0x70,\n    0x72,0x65,0x73,0x65,0x6e,0x74,0x61,0x74,0x69,0x6f,0x6e,0x0a,0x2d,0x2d,0x20,0x40,\n    0x70,0x61,0x72,0x61,0x6d,0x20,0x23,0x44,0x42,0x47,0x50,0x50,0x72,0x6f,0x70,0x65,\n    0x72,0x74,0x79,0x20,0x70,0x61,0x72,0x65,0x6e,0x74,0x20,0x50,0x61,0x72,0x65,0x6e,\n    0x74,0x20,0x70,0x72,0x6f,0x70,0x65,0x72,0x74,0x79,0x0a,0x2d,0x2d,0x20,0x40,0x70,\n    0x61,0x72,0x61,0x6d,0x20,0x23,0x73,0x74,0x72,0x69,0x6e,0x67,0x20,0x66,0x75,0x6c,\n    0x6c,0x6e,0x61,0x6d,0x65,0x20,0x4c,0x75,0x61,0x20,0x65,0x78,0x70,0x72,0x65,0x73,\n    0x73,0x69,0x6f,0x6e,0x20,0x75,0x73,0x65,0x64,0x20,0x74,0x6f,0x20,0x67,0x65,0x74,\n    0x20,0x76,0x61,0x6c,0x75,0x65,0x20,0x62,0x61,0x63,0x6b,0x20,0x69,0x6e,0x20,0x66,\n    0x75,0x72,0x74,0x68,0x65,0x72,0x20,0x63,0x61,0x6c,0x6c,0x73,0x0a,0x2d,0x2d,0x20,\n    0x40,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x23,0x74,0x61,0x62,0x6c,0x65,0x20,0x64,\n    0x65,0x73,0x63,0x72,0x69,0x70,0x74,0x69,0x6f,0x6e,0x0a,0x2d,0x2d,0x20,0x40,0x66,\n    0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x20,0x5b,0x70,0x61,0x72,0x65,0x6e,0x74,0x3d,\n    0x23,0x64,0x65,0x62,0x75,0x67,0x67,0x65,0x72,0x2e,0x69,0x6e,0x74,0x72,0x6f,0x73,\n    0x70,0x65,0x63,0x74,0x69,0x6f,0x6e,0x5d,0x20,0x70,0x72,0x6f,0x70,0x65,0x72,0x74,\n    0x79,0x0a,0x4d,0x2e,0x70,0x72,0x6f,0x70,0x65,0x72,0x74,0x79,0x20,0x3d,0x20,0x63,\n    0x6f,0x79,0x69,0x65,0x6c,0x64,0x0a,0x0a,0x2d,0x2d,0x2d,0x0a,0x2d,0x2d,0x20,0x41,\n    0x64,0x64,0x73,0x20,0x61,0x20,0x70,0x72,0x6f,0x62,0x65,0x20,0x74,0x68,0x61,0x74,\n    0x20,0x77,0x69,0x6c,0x6c,0x20,0x62,0x65,0x20,0x63,0x61,0x6c,0x6c,0x65,0x64,0x20,\n    0x66,0x6f,0x72,0x20,0x65,0x76,0x65,0x72,0x79,0x20,0x75,0x6e,0x6b,0x6e,0x6f,0x77,\n    0x6e,0x20,0x74,0x61,0x62,0x6c,0x65,0x2f,0x75,0x73,0x65,0x72,0x64,0x61,0x74,0x61,\n    0x2e,0x0a,0x2d,0x2d,0x20,0x40,0x70,0x61,0x72,0x61,0x6d,0x20,0x23,0x66,0x75,0x6e,\n    0x63,0x74,0x69,0x6f,0x6e,0x20,0x70,0x72,0x6f,0x62,0x65,0x20,0x49,0x6e,0x73,0x70,\n    0x65,0x63,0x74,0x6f,0x72,0x20,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x20,0x74,\n    0x6f,0x20,0x63,0x61,0x6c,0x6c,0x2e,0x0a,0x2d,0x2d,0x20,0x40,0x66,0x75,0x6e,0x63,\n    0x74,0x69,0x6f,0x6e,0x20,0x5b,0x70,0x61,0x72,0x65,0x6e,0x74,0x3d,0x23,0x64,0x65,\n    0x62,0x75,0x67,0x67,0x65,0x72,0x2e,0x69,0x6e,0x74,0x72,0x6f,0x73,0x70,0x65,0x63,\n    0x74,0x69,0x6f,0x6e,0x5d,0x20,0x61,0x64,0x64,0x5f,0x70,0x72,0x6f,0x62,0x65,0x0a,\n    0x4d,0x2e,0x61,0x64,0x64,0x5f,0x70,0x72,0x6f,0x62,0x65,0x20,0x3d,0x20,0x66,0x75,\n    0x6e,0x63,0x74,0x69,0x6f,0x6e,0x28,0x70,0x72,0x6f,0x62,0x65,0x29,0x20,0x70,0x72,\n    0x6f,0x62,0x65,0x73,0x5b,0x23,0x70,0x72,0x6f,0x62,0x65,0x73,0x20,0x2b,0x20,0x31,\n    0x5d,0x20,0x3d,0x20,0x70,0x72,0x6f,0x62,0x65,0x20,0x65,0x6e,0x64,0x0a,0x0a,0x2d,\n    0x2d,0x2d,0x0a,0x2d,0x2d,0x20,0x49,0x6e,0x73,0x70,0x65,0x63,0x74,0x73,0x20,0x61,\n    0x20,0x4c,0x75,0x61,0x20,0x76,0x61,0x6c,0x75,0x65,0x20,0x62,0x79,0x20,0x64,0x69,\n    0x73,0x70,0x61,0x74,0x63,0x68,0x69,0x6e,0x67,0x20,0x69,0x74,0x20,0x74,0x6f,0x20,\n    0x63,0x6f,0x72,0x72,0x65,0x63,0x74,0x20,0x69,0x6e,0x73,0x70,0x65,0x63,0x74,0x6f,\n    0x72,0x2e,0x20,0x49,0x6e,0x73,0x70,0x65,0x63,0x74,0x6f,0x72,0x20,0x66,0x75,0x6e,\n    0x63,0x74,0x69,0x6f,0x6e,0x73,0x20,0x68,0x61,0x76,0x65,0x20,0x74,0x68,0x65,0x20,\n    0x73,0x61,0x6d,0x65,0x20,0x41,0x50,0x49,0x2e,0x0a,0x2d,0x2d,0x20,0x40,0x70,0x61,\n    0x72,0x61,0x6d,0x20,0x23,0x73,0x74,0x72,0x69,0x6e,0x67,0x20,0x6e,0x61,0x6d,0x65,\n    0x20,0x50,0x72,0x6f,0x70,0x65,0x72,0x74,0x79,0x20,0x6e,0x61,0x6d,0x65,0x20,0x28,\n    0x77,0x69,0x6c,0x6c,0x20,0x62,0x65,0x20,0x64,0x69,0x73,0x70,0x6c,0x61,0x79,0x65,\n    0x64,0x20,0x62,0x79,0x20,0x49,0x44,0x45,0x29,0x0a,0x2d,0x2d,0x20,0x40,0x70,0x61,\n    0x72,0x61,0x6d,0x20,0x76,0x61,0x6c,0x75,0x65,0x20,0x56,0x61,0x6c,0x75,0x65,0x20,\n    0x74,0x6f,0x20,0x69,0x6e,0x73,0x70,0x65,0x63,0x74,0x0a,0x2d,0x2d,0x20,0x40,0x70,\n    0x61,0x72,0x61,0x6d,0x20,0x23,0x74,0x61,0x62,0x6c,0x65,0x20,0x70,0x61,0x72,0x65,\n    0x6e,0x74,0x20,0x50,0x61,0x72,0x65,0x6e,0x74,0x20,0x70,0x72,0x6f,0x70,0x65,0x72,\n    0x74,0x79,0x20,0x28,0x4c,0x4f,0x4d,0x20,0x74,0x61,0x62,0x6c,0x65,0x20,0x6f,0x66,\n    0x20,0x74,0x68,0x65,0x20,0x29,0x0a,0x2d,0x2d,0x20,0x40,0x70,0x61,0x72,0x61,0x6d,\n    0x20,0x23,0x73,0x74,0x72,0x69,0x6e,0x67,0x20,0x66,0x75,0x6c,0x6c,0x6e,0x61,0x6d,\n    0x65,0x20,0x45,0x78,0x70,0x72,0x65,0x73,0x73,0x69,0x6f,0x6e,0x20,0x75,0x73,0x65,\n    0x64,0x20,0x74,0x6f,0x20,0x72,0x65,0x74,0x72,0x69,0x65,0x76,0x65,0x20,0x60,0x76,\n    0x61,0x6c,0x75,0x65,0x60,0x20,0x66,0x6f,0x72,0x20,0x66,0x75,0x72,0x74,0x68,0x65,\n    0x72,0x20,0x64,0x65,0x62,0x75,0x67,0x67,0x65,0x72,0x20,0x63,0x61,0x6c,0x6c,0x73,\n    0x0a,0x2d,0x2d,0x20,0x40,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x23,0x44,0x42,0x47,\n    0x50,0x50,0x72,0x6f,0x70,0x65,0x72,0x74,0x79,0x20,0x54,0x68,0x65,0x20,0x69,0x6e,\n    0x73,0x70,0x65,0x63,0x74,0x65,0x64,0x20,0x76,0x61,0x6c,0x75,0x65,0x20,0x61,0x73,\n    0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x65,0x64,0x20,0x62,0x79,0x20,0x40,0x7b,0x64,\n    0x65,0x62,0x75,0x67,0x67,0x65,0x72,0x2e,0x69,0x6e,0x74,0x72,0x6f,0x73,0x70,0x65,\n    0x63,0x74,0x69,0x6f,0x6e,0x23,0x64,0x65,0x62,0x75,0x67,0x67,0x65,0x72,0x2e,0x69,\n    0x6e,0x74,0x72,0x6f,0x73,0x70,0x65,0x63,0x74,0x69,0x6f,0x6e,0x2e,0x70,0x72,0x6f,\n    0x70,0x65,0x72,0x74,0x79,0x7d,0x2e,0x0a,0x2d,0x2d,0x20,0x40,0x72,0x65,0x74,0x75,\n    0x72,0x6e,0x20,0x23,0x6e,0x69,0x6c,0x20,0x49,0x66,0x20,0x74,0x68,0x65,0x20,0x76,\n    0x61,0x6c,0x75,0x65,0x20,0x68,0x61,0x73,0x20,0x6e,0x6f,0x74,0x20,0x62,0x65,0x65,\n    0x6e,0x20,0x69,0x6e,0x73,0x70,0x65,0x63,0x74,0x65,0x64,0x0a,0x2d,0x2d,0x20,0x40,\n    0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x20,0x5b,0x70,0x61,0x72,0x65,0x6e,0x74,\n    0x3d,0x23,0x64,0x65,0x62,0x75,0x67,0x67,0x65,0x72,0x2e,0x69,0x6e,0x74,0x72,0x6f,\n    0x73,0x70,0x65,0x63,0x74,0x69,0x6f,0x6e,0x5d,0x20,0x69,0x6e,0x73,0x70,0x65,0x63,\n    0x74,0x0a,0x4d,0x2e,0x69,0x6e,0x73,0x70,0x65,0x63,0x74,0x20,0x3d,0x20,0x66,0x75,\n    0x6e,0x63,0x74,0x69,0x6f,0x6e,0x28,0x6e,0x61,0x6d,0x65,0x2c,0x20,0x76,0x61,0x6c,\n    0x75,0x65,0x2c,0x20,0x70,0x61,0x72,0x65,0x6e,0x74,0x2c,0x20,0x66,0x75,0x6c,0x6c,\n    0x6e,0x61,0x6d,0x65,0x29,0x0a,0x20,0x20,0x20,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,\n    0x20,0x28,0x4d,0x2e,0x69,0x6e,0x73,0x70,0x65,0x63,0x74,0x6f,0x72,0x73,0x5b,0x74,\n    0x79,0x70,0x65,0x28,0x76,0x61,0x6c,0x75,0x65,0x29,0x5d,0x20,0x6f,0x72,0x20,0x4d,\n    0x2e,0x69,0x6e,0x73,0x70,0x65,0x63,0x74,0x6f,0x72,0x73,0x2e,0x64,0x65,0x66,0x61,\n    0x75,0x6c,0x74,0x29,0x28,0x6e,0x61,0x6d,0x65,0x2c,0x20,0x76,0x61,0x6c,0x75,0x65,\n    0x2c,0x20,0x70,0x61,0x72,0x65,0x6e,0x74,0x2c,0x20,0x66,0x75,0x6c,0x6c,0x6e,0x61,\n    0x6d,0x65,0x29,0x0a,0x65,0x6e,0x64,0x0a,0x0a,0x2d,0x2d,0x20,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x20,0x2d,0x2d,\n    0x0a,0x2d,0x2d,0x20,0x55,0x74,0x69,0x6c,0x69,0x74,0x79,0x20,0x66,0x75,0x6e,0x63,\n    0x74,0x69,0x6f,0x6e,0x73,0x20,0x2d,0x2d,0x0a,0x2d,0x2d,0x20,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x20,0x2d,0x2d,\n    0x0a,0x0a,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,\n    0x20,0x64,0x65,0x66,0x61,0x75,0x6c,0x74,0x5f,0x69,0x6e,0x73,0x70,0x65,0x63,0x74,\n    0x6f,0x72,0x28,0x6e,0x61,0x6d,0x65,0x2c,0x20,0x76,0x61,0x6c,0x75,0x65,0x2c,0x20,\n    0x70,0x61,0x72,0x65,0x6e,0x74,0x2c,0x20,0x66,0x75,0x6c,0x6c,0x6e,0x61,0x6d,0x65,\n    0x29,0x0a,0x20,0x20,0x20,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x4d,0x2e,0x70,\n    0x72,0x6f,0x70,0x65,0x72,0x74,0x79,0x28,0x6e,0x61,0x6d,0x65,0x2c,0x20,0x74,0x79,\n    0x70,0x65,0x28,0x76,0x61,0x6c,0x75,0x65,0x29,0x2c,0x20,0x74,0x6f,0x73,0x74,0x72,\n    0x69,0x6e,0x67,0x28,0x76,0x61,0x6c,0x75,0x65,0x29,0x2c,0x20,0x70,0x61,0x72,0x65,\n    0x6e,0x74,0x2c,0x20,0x66,0x75,0x6c,0x6c,0x6e,0x61,0x6d,0x65,0x29,0x0a,0x65,0x6e,\n    0x64,0x0a,0x0a,0x2d,0x2d,0x20,0x49,0x6e,0x73,0x70,0x65,0x63,0x74,0x73,0x20,0x74,\n    0x79,0x70,0x65,0x73,0x20,0x74,0x68,0x61,0x74,0x20,0x63,0x61,0x6e,0x20,0x68,0x61,\n    0x76,0x65,0x20,0x61,0x20,0x6d,0x65,0x74,0x61,0x74,0x61,0x62,0x6c,0x65,0x20,0x28,\n    0x74,0x61,0x62,0x6c,0x65,0x20,0x61,0x6e,0x64,0x20,0x75,0x73,0x65,0x72,0x64,0x61,\n    0x74,0x61,0x29,0x2e,0x20,0x52,0x65,0x74,0x75,0x72,0x6e,0x73,0x0a,0x2d,0x2d,0x20,\n    0x20,0x20,0x31,0x29,0x20,0x67,0x65,0x6e,0x65,0x72,0x61,0x74,0x65,0x64,0x20,0x70,\n    0x72,0x6f,0x70,0x65,0x72,0x74,0x79,0x0a,0x2d,0x2d,0x20,0x20,0x20,0x32,0x29,0x20,\n    0x62,0x6f,0x6f,0x6c,0x65,0x61,0x6e,0x20,0x69,0x6e,0x64,0x69,0x63,0x61,0x74,0x69,\n    0x6e,0x67,0x20,0x77,0x68,0x65,0x74,0x68,0x65,0x72,0x20,0x61,0x20,0x63,0x75,0x73,\n    0x74,0x6f,0x6d,0x20,0x69,0x6e,0x73,0x70,0x65,0x63,0x74,0x6f,0x72,0x20,0x68,0x61,\n    0x73,0x20,0x62,0x65,0x65,0x6e,0x20,0x63,0x61,0x6c,0x6c,0x65,0x64,0x20,0x28,0x69,\n    0x6e,0x20,0x74,0x68,0x61,0x74,0x20,0x63,0x61,0x73,0x65,0x2c,0x20,0x64,0x6f,0x20,\n    0x6e,0x6f,0x74,0x20,0x70,0x72,0x6f,0x63,0x65,0x73,0x73,0x20,0x76,0x61,0x6c,0x75,\n    0x65,0x20,0x61,0x6e,0x79,0x20,0x66,0x75,0x72,0x74,0x68,0x65,0x72,0x29,0x0a,0x6c,\n    0x6f,0x63,0x61,0x6c,0x20,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x20,0x6d,0x65,\n    0x74,0x61,0x74,0x61,0x62,0x6c,0x65,0x5f,0x69,0x6e,0x73,0x70,0x65,0x63,0x74,0x6f,\n    0x72,0x28,0x6e,0x61,0x6d,0x65,0x2c,0x20,0x76,0x61,0x6c,0x75,0x65,0x2c,0x20,0x70,\n    0x61,0x72,0x65,0x6e,0x74,0x2c,0x20,0x66,0x75,0x6c,0x6c,0x6e,0x61,0x6d,0x65,0x29,\n    0x0a,0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x6d,0x74,0x20,0x3d,0x20,\n    0x67,0x65,0x74,0x6d,0x65,0x74,0x61,0x74,0x61,0x62,0x6c,0x65,0x28,0x76,0x61,0x6c,\n    0x75,0x65,0x29,0x0a,0x20,0x20,0x20,0x20,0x64,0x6f,0x0a,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x2d,0x2d,0x20,0x66,0x69,0x6e,0x64,0x20,0x20,0x62,0x79,0x20,0x6d,\n    0x65,0x74,0x61,0x74,0x61,0x62,0x6c,0x65,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x63,0x75,0x73,0x74,0x6f,0x6d,0x20,0x3d,0x20,\n    0x4d,0x2e,0x69,0x6e,0x73,0x70,0x65,0x63,0x74,0x6f,0x72,0x73,0x5b,0x6d,0x74,0x5d,\n    0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x69,0x66,0x20,0x63,0x75,0x73,0x74,\n    0x6f,0x6d,0x20,0x74,0x68,0x65,0x6e,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x63,\n    0x75,0x73,0x74,0x6f,0x6d,0x28,0x6e,0x61,0x6d,0x65,0x2c,0x20,0x76,0x61,0x6c,0x75,\n    0x65,0x2c,0x20,0x70,0x61,0x72,0x65,0x6e,0x74,0x2c,0x20,0x66,0x75,0x6c,0x6c,0x6e,\n    0x61,0x6d,0x65,0x29,0x2c,0x20,0x74,0x72,0x75,0x65,0x20,0x65,0x6e,0x64,0x0a,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x2d,0x2d,0x20,0x6f,0x72,0x20,0x65,0x6c,0x73,\n    0x65,0x20,0x63,0x61,0x6c,0x6c,0x20,0x70,0x72,0x6f,0x62,0x65,0x73,0x0a,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x66,0x6f,0x72,0x20,0x69,0x3d,0x31,0x2c,0x20,0x23,\n    0x70,0x72,0x6f,0x62,0x65,0x73,0x20,0x64,0x6f,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x70,0x72,0x6f,0x70,0x20,0x3d,\n    0x20,0x70,0x72,0x6f,0x62,0x65,0x73,0x5b,0x69,0x5d,0x28,0x6e,0x61,0x6d,0x65,0x2c,\n    0x20,0x76,0x61,0x6c,0x75,0x65,0x2c,0x20,0x70,0x61,0x72,0x65,0x6e,0x74,0x2c,0x20,\n    0x66,0x75,0x6c,0x6c,0x6e,0x61,0x6d,0x65,0x29,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x69,0x66,0x20,0x70,0x72,0x6f,0x70,0x20,0x74,0x68,0x65,0x6e,\n    0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x70,0x72,0x6f,0x70,0x2c,0x20,0x74,0x72,\n    0x75,0x65,0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x65,\n    0x6e,0x64,0x0a,0x20,0x20,0x20,0x20,0x65,0x6e,0x64,0x0a,0x0a,0x20,0x20,0x20,0x20,\n    0x6c,0x6f,0x63,0x61,0x6c,0x20,0x70,0x72,0x6f,0x70,0x20,0x3d,0x20,0x64,0x65,0x66,\n    0x61,0x75,0x6c,0x74,0x5f,0x69,0x6e,0x73,0x70,0x65,0x63,0x74,0x6f,0x72,0x28,0x6e,\n    0x61,0x6d,0x65,0x2c,0x20,0x76,0x61,0x6c,0x75,0x65,0x2c,0x20,0x70,0x61,0x72,0x65,\n    0x6e,0x74,0x2c,0x20,0x66,0x75,0x6c,0x6c,0x6e,0x61,0x6d,0x65,0x29,0x0a,0x20,0x20,\n    0x20,0x20,0x69,0x66,0x20,0x6d,0x74,0x20,0x61,0x6e,0x64,0x20,0x70,0x72,0x6f,0x70,\n    0x20,0x74,0x68,0x65,0x6e,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x6c,0x6f,\n    0x63,0x61,0x6c,0x20,0x6d,0x74,0x70,0x72,0x6f,0x70,0x20,0x3d,0x20,0x4d,0x2e,0x69,\n    0x6e,0x73,0x70,0x65,0x63,0x74,0x28,0x22,0x6d,0x65,0x74,0x61,0x74,0x61,0x62,0x6c,\n    0x65,0x22,0x2c,0x20,0x6d,0x74,0x2c,0x20,0x70,0x72,0x6f,0x70,0x2c,0x20,0x22,0x6d,\n    0x65,0x74,0x61,0x74,0x61,0x62,0x6c,0x65,0x5b,0x22,0x2e,0x2e,0x70,0x72,0x6f,0x70,\n    0x2e,0x61,0x74,0x74,0x72,0x2e,0x66,0x75,0x6c,0x6c,0x6e,0x61,0x6d,0x65,0x2e,0x2e,\n    0x22,0x5d,0x22,0x29,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x69,0x66,0x20,\n    0x6d,0x74,0x70,0x72,0x6f,0x70,0x20,0x74,0x68,0x65,0x6e,0x20,0x6d,0x74,0x70,0x72,\n    0x6f,0x70,0x2e,0x61,0x74,0x74,0x72,0x2e,0x74,0x79,0x70,0x65,0x20,0x3d,0x20,0x22,\n    0x73,0x70,0x65,0x63,0x69,0x61,0x6c,0x22,0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,0x20,\n    0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,0x20,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,\n    0x70,0x72,0x6f,0x70,0x2c,0x20,0x66,0x61,0x6c,0x73,0x65,0x0a,0x65,0x6e,0x64,0x0a,\n    0x0a,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x20,\n    0x66,0x61,0x6e,0x63,0x79,0x5f,0x66,0x75,0x6e,0x63,0x5f,0x72,0x65,0x70,0x72,0x28,\n    0x66,0x2c,0x20,0x69,0x6e,0x66,0x6f,0x29,0x0a,0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,\n    0x61,0x6c,0x20,0x61,0x72,0x67,0x73,0x20,0x3d,0x20,0x7b,0x7d,0x0a,0x20,0x20,0x20,\n    0x20,0x66,0x6f,0x72,0x20,0x69,0x3d,0x31,0x2c,0x20,0x69,0x6e,0x66,0x6f,0x2e,0x6e,\n    0x70,0x61,0x72,0x61,0x6d,0x73,0x20,0x64,0x6f,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x61,0x72,0x67,0x73,0x5b,0x69,0x5d,0x20,0x3d,0x20,0x64,0x65,0x62,0x75,\n    0x67,0x2e,0x67,0x65,0x74,0x6c,0x6f,0x63,0x61,0x6c,0x28,0x66,0x2c,0x20,0x69,0x29,\n    0x0a,0x20,0x20,0x20,0x20,0x65,0x6e,0x64,0x0a,0x0a,0x20,0x20,0x20,0x20,0x69,0x66,\n    0x20,0x69,0x6e,0x66,0x6f,0x2e,0x69,0x73,0x76,0x61,0x72,0x61,0x72,0x67,0x20,0x74,\n    0x68,0x65,0x6e,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x61,0x72,0x67,0x73,\n    0x5b,0x23,0x61,0x72,0x67,0x73,0x2b,0x31,0x5d,0x20,0x3d,0x20,0x22,0x2e,0x2e,0x2e,\n    0x22,0x0a,0x20,0x20,0x20,0x20,0x65,0x6e,0x64,0x0a,0x0a,0x20,0x20,0x20,0x20,0x72,\n    0x65,0x74,0x75,0x72,0x6e,0x20,0x22,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x28,\n    0x22,0x20,0x2e,0x2e,0x20,0x74,0x63,0x6f,0x6e,0x63,0x61,0x74,0x28,0x61,0x72,0x67,\n    0x73,0x2c,0x20,0x22,0x2c,0x20,0x22,0x29,0x20,0x2e,0x2e,0x20,0x22,0x29,0x22,0x0a,\n    0x65,0x6e,0x64,0x0a,0x0a,0x2d,0x2d,0x2d,0x20,0x47,0x65,0x6e,0x65,0x72,0x61,0x74,\n    0x65,0x20,0x61,0x20,0x6e,0x61,0x6d,0x65,0x20,0x73,0x69,0x75,0x74,0x61,0x62,0x6c,\n    0x65,0x20,0x66,0x6f,0x72,0x20,0x74,0x61,0x62,0x6c,0x65,0x20,0x69,0x6e,0x64,0x65,\n    0x78,0x20,0x73,0x79,0x6e,0x74,0x61,0x78,0x0a,0x2d,0x2d,0x20,0x40,0x70,0x61,0x72,\n    0x61,0x6d,0x20,0x6e,0x61,0x6d,0x65,0x20,0x4b,0x65,0x79,0x20,0x6e,0x61,0x6d,0x65,\n    0x0a,0x2d,0x2d,0x20,0x40,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x23,0x73,0x74,0x72,\n    0x69,0x6e,0x67,0x20,0x41,0x20,0x74,0x61,0x62,0x6c,0x65,0x20,0x69,0x6e,0x64,0x65,\n    0x78,0x20,0x73,0x74,0x79,0x6c,0x65,0x20,0x69,0x6e,0x64,0x65,0x78,0x0a,0x2d,0x2d,\n    0x20,0x40,0x75,0x73,0x61,0x67,0x65,0x20,0x67,0x65,0x6e,0x65,0x72,0x61,0x74,0x65,\n    0x5f,0x70,0x72,0x69,0x6e,0x74,0x61,0x62,0x6c,0x65,0x5f,0x6b,0x65,0x79,0x28,0x27,\n    0x66,0x6f,0x6f,0x27,0x29,0x20,0x3d,0x3e,0x20,0x27,0x5b,0x22,0x66,0x6f,0x6f,0x22,\n    0x5d,0x27,0x0a,0x2d,0x2d,0x20,0x40,0x75,0x73,0x61,0x67,0x65,0x20,0x67,0x65,0x6e,\n    0x65,0x72,0x61,0x74,0x65,0x5f,0x70,0x72,0x69,0x6e,0x74,0x61,0x62,0x6c,0x65,0x5f,\n    0x6b,0x65,0x79,0x28,0x31,0x32,0x29,0x20,0x20,0x20,0x20,0x3d,0x3e,0x20,0x27,0x5b,\n    0x31,0x32,0x5d,0x27,0x0a,0x2d,0x2d,0x20,0x40,0x75,0x73,0x61,0x67,0x65,0x20,0x67,\n    0x65,0x6e,0x65,0x72,0x61,0x74,0x65,0x5f,0x70,0x72,0x69,0x6e,0x74,0x61,0x62,0x6c,\n    0x65,0x5f,0x6b,0x65,0x79,0x28,0x7b,0x7d,0x29,0x20,0x20,0x20,0x20,0x3d,0x3e,0x20,\n    0x27,0x5b,0x74,0x61,0x62,0x6c,0x65,0x3a,0x20,0x30,0x78,0x31,0x32,0x33,0x34,0x35,\n    0x36,0x37,0x38,0x5d,0x0a,0x2d,0x2d,0x20,0x40,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,\n    0x6e,0x20,0x5b,0x70,0x61,0x72,0x65,0x6e,0x74,0x3d,0x23,0x64,0x65,0x62,0x75,0x67,\n    0x67,0x65,0x72,0x2e,0x69,0x6e,0x74,0x72,0x6f,0x73,0x70,0x65,0x63,0x74,0x69,0x6f,\n    0x6e,0x5d,0x20,0x67,0x65,0x6e,0x65,0x72,0x61,0x74,0x65,0x5f,0x70,0x72,0x69,0x6e,\n    0x74,0x61,0x62,0x6c,0x65,0x5f,0x6b,0x65,0x79,0x0a,0x6c,0x6f,0x63,0x61,0x6c,0x20,\n    0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x20,0x67,0x65,0x6e,0x65,0x72,0x61,0x74,\n    0x65,0x5f,0x70,0x72,0x69,0x6e,0x74,0x61,0x62,0x6c,0x65,0x5f,0x6b,0x65,0x79,0x28,\n    0x6e,0x61,0x6d,0x65,0x29,0x0a,0x20,0x20,0x20,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,\n    0x20,0x22,0x5b,0x22,0x20,0x2e,0x2e,0x20,0x28,0x74,0x79,0x70,0x65,0x28,0x6e,0x61,\n    0x6d,0x65,0x29,0x20,0x3d,0x3d,0x20,0x22,0x73,0x74,0x72,0x69,0x6e,0x67,0x22,0x20,\n    0x61,0x6e,0x64,0x20,0x73,0x66,0x6f,0x72,0x6d,0x61,0x74,0x28,0x22,0x25,0x71,0x22,\n    0x2c,0x20,0x6e,0x61,0x6d,0x65,0x29,0x20,0x6f,0x72,0x20,0x74,0x6f,0x73,0x74,0x72,\n    0x69,0x6e,0x67,0x28,0x6e,0x61,0x6d,0x65,0x29,0x29,0x20,0x2e,0x2e,0x20,0x22,0x5d,\n    0x22,0x0a,0x65,0x6e,0x64,0x0a,0x4d,0x2e,0x67,0x65,0x6e,0x65,0x72,0x61,0x74,0x65,\n    0x5f,0x70,0x72,0x69,0x6e,0x74,0x61,0x62,0x6c,0x65,0x5f,0x6b,0x65,0x79,0x20,0x3d,\n    0x20,0x67,0x65,0x6e,0x65,0x72,0x61,0x74,0x65,0x5f,0x70,0x72,0x69,0x6e,0x74,0x61,\n    0x62,0x6c,0x65,0x5f,0x6b,0x65,0x79,0x0a,0x0a,0x2d,0x2d,0x20,0x55,0x73,0x65,0x64,\n    0x20,0x74,0x6f,0x20,0x73,0x74,0x6f,0x72,0x65,0x20,0x63,0x6f,0x6d,0x70,0x6c,0x65,\n    0x78,0x20,0x6b,0x65,0x79,0x73,0x20,0x28,0x6f,0x74,0x68,0x65,0x72,0x20,0x74,0x68,\n    0x61,0x6e,0x20,0x73,0x74,0x72,0x69,0x6e,0x67,0x20,0x61,0x6e,0x64,0x20,0x6e,0x75,\n    0x6d,0x62,0x65,0x72,0x29,0x20,0x61,0x73,0x20,0x74,0x68,0x65,0x79,0x20,0x63,0x61,\n    0x6e,0x6e,0x6f,0x74,0x20,0x62,0x65,0x20,0x70,0x61,0x73,0x73,0x65,0x64,0x20,0x69,\n    0x6e,0x20,0x74,0x65,0x78,0x74,0x0a,0x2d,0x2d,0x20,0x46,0x6f,0x72,0x20,0x74,0x68,\n    0x65,0x73,0x65,0x20,0x6b,0x65,0x79,0x73,0x2c,0x20,0x74,0x68,0x65,0x20,0x72,0x65,\n    0x73,0x75,0x6c,0x74,0x69,0x6e,0x67,0x20,0x65,0x78,0x70,0x72,0x65,0x73,0x73,0x69,\n    0x6f,0x6e,0x20,0x77,0x69,0x6c,0x6c,0x20,0x6e,0x6f,0x74,0x20,0x62,0x65,0x20,0x74,\n    0x68,0x65,0x20,0x6b,0x65,0x79,0x20,0x69,0x74,0x73,0x65,0x6c,0x66,0x20,0x62,0x75,\n    0x74,0x20,0x22,0x6b,0x65,0x79,0x5f,0x63,0x61,0x63,0x68,0x65,0x5b,0x2e,0x2e,0x2e,\n    0x5d,0x22,0x0a,0x2d,0x2d,0x20,0x77,0x68,0x65,0x72,0x65,0x20,0x6b,0x65,0x79,0x5f,\n    0x63,0x61,0x63,0x68,0x65,0x20,0x6d,0x75,0x73,0x74,0x20,0x62,0x65,0x20,0x6d,0x61,\n    0x70,0x70,0x65,0x64,0x20,0x74,0x6f,0x20,0x74,0x68,0x69,0x73,0x20,0x74,0x61,0x62,\n    0x6c,0x65,0x20,0x74,0x6f,0x20,0x72,0x65,0x73,0x6f,0x6c,0x76,0x65,0x20,0x6b,0x65,\n    0x79,0x20,0x63,0x6f,0x72,0x72,0x65,0x63,0x74,0x6c,0x79,0x2e,0x0a,0x4d,0x2e,0x6b,\n    0x65,0x79,0x5f,0x63,0x61,0x63,0x68,0x65,0x20,0x3d,0x20,0x73,0x65,0x74,0x6d,0x65,\n    0x74,0x61,0x74,0x61,0x62,0x6c,0x65,0x28,0x7b,0x20,0x6e,0x3d,0x30,0x20,0x7d,0x2c,\n    0x20,0x7b,0x20,0x5f,0x5f,0x6d,0x6f,0x64,0x65,0x20,0x3d,0x20,0x22,0x76,0x22,0x20,\n    0x7d,0x29,0x0a,0x0a,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x66,0x75,0x6e,0x63,0x74,0x69,\n    0x6f,0x6e,0x20,0x67,0x65,0x6e,0x65,0x72,0x61,0x74,0x65,0x5f,0x6b,0x65,0x79,0x28,\n    0x6e,0x61,0x6d,0x65,0x29,0x0a,0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,\n    0x74,0x6e,0x61,0x6d,0x65,0x20,0x3d,0x20,0x74,0x79,0x70,0x65,0x28,0x6e,0x61,0x6d,\n    0x65,0x29,0x0a,0x20,0x20,0x20,0x20,0x69,0x66,0x20,0x74,0x6e,0x61,0x6d,0x65,0x20,\n    0x3d,0x3d,0x20,0x22,0x73,0x74,0x72,0x69,0x6e,0x67,0x22,0x20,0x74,0x68,0x65,0x6e,\n    0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x73,0x66,0x6f,0x72,0x6d,0x61,0x74,0x28,\n    0x22,0x25,0x71,0x22,0x2c,0x20,0x6e,0x61,0x6d,0x65,0x29,0x0a,0x20,0x20,0x20,0x20,\n    0x65,0x6c,0x73,0x65,0x69,0x66,0x20,0x74,0x6e,0x61,0x6d,0x65,0x20,0x3d,0x3d,0x20,\n    0x22,0x6e,0x75,0x6d,0x62,0x65,0x72,0x22,0x20,0x6f,0x72,0x20,0x74,0x6e,0x61,0x6d,\n    0x65,0x20,0x3d,0x3d,0x20,0x22,0x62,0x6f,0x6f,0x6c,0x65,0x61,0x6e,0x22,0x20,0x74,\n    0x68,0x65,0x6e,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x74,0x6f,0x73,0x74,0x72,\n    0x69,0x6e,0x67,0x28,0x6e,0x61,0x6d,0x65,0x29,0x0a,0x20,0x20,0x20,0x20,0x65,0x6c,\n    0x73,0x65,0x20,0x2d,0x2d,0x20,0x63,0x6f,0x6d,0x70,0x6c,0x65,0x78,0x20,0x6b,0x65,\n    0x79,0x2c,0x20,0x75,0x73,0x65,0x20,0x6b,0x65,0x79,0x5f,0x63,0x61,0x63,0x68,0x65,\n    0x20,0x66,0x6f,0x72,0x20,0x6c,0x6f,0x6f,0x6b,0x75,0x70,0x0a,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x69,0x20,0x3d,0x20,0x4d,0x2e,\n    0x6b,0x65,0x79,0x5f,0x63,0x61,0x63,0x68,0x65,0x2e,0x6e,0x0a,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x4d,0x2e,0x6b,0x65,0x79,0x5f,0x63,0x61,0x63,0x68,0x65,0x5b,\n    0x69,0x5d,0x20,0x3d,0x20,0x6e,0x61,0x6d,0x65,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x4d,0x2e,0x6b,0x65,0x79,0x5f,0x63,0x61,0x63,0x68,0x65,0x2e,0x6e,0x20,\n    0x3d,0x20,0x69,0x2b,0x31,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x72,0x65,\n    0x74,0x75,0x72,0x6e,0x20,0x22,0x6b,0x65,0x79,0x5f,0x63,0x61,0x63,0x68,0x65,0x5b,\n    0x22,0x2e,0x2e,0x74,0x6f,0x73,0x74,0x72,0x69,0x6e,0x67,0x28,0x69,0x29,0x2e,0x2e,\n    0x22,0x5d,0x22,0x0a,0x20,0x20,0x20,0x20,0x65,0x6e,0x64,0x0a,0x65,0x6e,0x64,0x0a,\n    0x0a,0x2d,0x2d,0x2d,0x20,0x47,0x65,0x6e,0x65,0x72,0x61,0x74,0x65,0x20,0x61,0x20,\n    0x75,0x73,0x61,0x62,0x6c,0x65,0x20,0x66,0x75,0x6c,0x6c,0x6e,0x61,0x6d,0x65,0x20,\n    0x66,0x6f,0x72,0x20,0x61,0x20,0x76,0x61,0x6c,0x75,0x65,0x2e,0x0a,0x2d,0x2d,0x20,\n    0x42,0x61,0x73,0x65,0x64,0x20,0x6f,0x6e,0x20,0x70,0x61,0x72,0x65,0x6e,0x74,0x20,\n    0x66,0x75,0x6c,0x6c,0x6e,0x61,0x6d,0x65,0x20,0x61,0x6e,0x64,0x20,0x6b,0x65,0x79,\n    0x20,0x76,0x61,0x6c,0x75,0x65,0x2c,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x61,\n    0x20,0x76,0x61,0x6c,0x69,0x64,0x20,0x4c,0x75,0x61,0x20,0x65,0x78,0x70,0x72,0x65,\n    0x73,0x73,0x69,0x6f,0x6e,0x2e,0x0a,0x2d,0x2d,0x20,0x4b,0x65,0x79,0x20,0x63,0x61,\n    0x6e,0x20,0x62,0x65,0x20,0x61,0x6e,0x79,0x20,0x76,0x61,0x6c,0x75,0x65,0x20,0x28,\n    0x61,0x73,0x20,0x61,0x6e,0x79,0x74,0x68,0x69,0x6e,0x67,0x20,0x63,0x61,0x6e,0x20,\n    0x61,0x63,0x74,0x20,0x61,0x73,0x20,0x74,0x61,0x62,0x6c,0x65,0x20,0x6b,0x65,0x79,\n    0x29,0x2e,0x20,0x49,0x66,0x20,0x69,0x74,0x20,0x63,0x61,0x6e,0x6e,0x6f,0x74,0x0a,\n    0x2d,0x2d,0x20,0x62,0x65,0x20,0x73,0x65,0x72,0x69,0x61,0x6c,0x69,0x7a,0x65,0x64,\n    0x20,0x28,0x6f,0x6e,0x6c,0x79,0x20,0x73,0x74,0x72,0x69,0x6e,0x67,0x2c,0x20,0x6e,\n    0x75,0x6d,0x62,0x65,0x72,0x20,0x61,0x6e,0x64,0x20,0x62,0x6f,0x6f,0x6c,0x65,0x61,\n    0x6e,0x20,0x63,0x61,0x6e,0x29,0x2c,0x20,0x69,0x74,0x20,0x77,0x69,0x6c,0x6c,0x20,\n    0x62,0x65,0x20,0x74,0x65,0x6d,0x70,0x6f,0x72,0x61,0x72,0x6c,0x79,0x0a,0x2d,0x2d,\n    0x20,0x73,0x74,0x6f,0x72,0x65,0x64,0x20,0x69,0x6e,0x20,0x61,0x6e,0x20,0x69,0x6e,\n    0x74,0x65,0x72,0x6e,0x61,0x6c,0x20,0x63,0x61,0x63,0x68,0x65,0x20,0x74,0x6f,0x20,\n    0x62,0x65,0x20,0x72,0x65,0x74,0x72,0x69,0x65,0x76,0x65,0x64,0x20,0x6c,0x61,0x74,\n    0x65,0x72,0x2e,0x0a,0x2d,0x2d,0x20,0x40,0x70,0x61,0x72,0x61,0x6d,0x20,0x23,0x73,\n    0x74,0x72,0x69,0x6e,0x67,0x20,0x70,0x61,0x72,0x65,0x6e,0x74,0x20,0x50,0x61,0x72,\n    0x65,0x6e,0x74,0x20,0x66,0x75,0x6c,0x6c,0x6e,0x61,0x6d,0x65,0x0a,0x2d,0x2d,0x20,\n    0x40,0x70,0x61,0x72,0x61,0x6d,0x20,0x6b,0x65,0x79,0x20,0x54,0x68,0x65,0x20,0x63,\n    0x68,0x69,0x6c,0x64,0x20,0x6b,0x65,0x79,0x20,0x74,0x6f,0x20,0x67,0x65,0x6e,0x65,\n    0x72,0x61,0x74,0x65,0x20,0x66,0x75,0x6c,0x6c,0x6e,0x61,0x6d,0x65,0x20,0x66,0x6f,\n    0x72,0x0a,0x2d,0x2d,0x20,0x40,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x23,0x73,0x74,\n    0x72,0x69,0x6e,0x67,0x20,0x41,0x20,0x76,0x61,0x6c,0x69,0x64,0x20,0x66,0x75,0x6c,\n    0x6c,0x6e,0x61,0x6d,0x65,0x20,0x65,0x78,0x70,0x72,0x65,0x73,0x73,0x69,0x6f,0x6e,\n    0x0a,0x2d,0x2d,0x20,0x40,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x20,0x5b,0x70,\n    0x61,0x72,0x65,0x6e,0x74,0x3d,0x23,0x64,0x65,0x62,0x75,0x67,0x67,0x65,0x72,0x2e,\n    0x69,0x6e,0x74,0x72,0x6f,0x73,0x70,0x65,0x63,0x74,0x69,0x6f,0x6e,0x5d,0x20,0x6d,\n    0x61,0x6b,0x65,0x5f,0x66,0x75,0x6c,0x6c,0x6e,0x61,0x6d,0x65,0x0a,0x6c,0x6f,0x63,\n    0x61,0x6c,0x20,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x20,0x6d,0x61,0x6b,0x65,\n    0x5f,0x66,0x75,0x6c,0x6c,0x6e,0x61,0x6d,0x65,0x28,0x70,0x61,0x72,0x65,0x6e,0x74,\n    0x2c,0x20,0x6b,0x65,0x79,0x29,0x0a,0x20,0x20,0x20,0x20,0x72,0x65,0x74,0x75,0x72,\n    0x6e,0x20,0x70,0x61,0x72,0x65,0x6e,0x74,0x20,0x2e,0x2e,0x20,0x22,0x5b,0x22,0x20,\n    0x2e,0x2e,0x20,0x67,0x65,0x6e,0x65,0x72,0x61,0x74,0x65,0x5f,0x6b,0x65,0x79,0x28,\n    0x6b,0x65,0x79,0x29,0x20,0x2e,0x2e,0x20,0x22,0x5d,0x22,0x0a,0x65,0x6e,0x64,0x0a,\n    0x4d,0x2e,0x6d,0x61,0x6b,0x65,0x5f,0x66,0x75,0x6c,0x6c,0x6e,0x61,0x6d,0x65,0x20,\n    0x3d,0x20,0x6d,0x61,0x6b,0x65,0x5f,0x66,0x75,0x6c,0x6c,0x6e,0x61,0x6d,0x65,0x0a,\n    0x0a,0x2d,0x2d,0x20,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x20,0x2d,\n    0x2d,0x0a,0x2d,0x2d,0x20,0x49,0x6e,0x73,0x70,0x65,0x63,0x74,0x6f,0x72,0x73,0x20,\n    0x2d,0x2d,0x0a,0x2d,0x2d,0x20,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x20,0x2d,0x2d,0x0a,0x0a,0x4d,0x2e,0x69,0x6e,0x73,0x70,0x65,0x63,0x74,0x6f,0x72,\n    0x73,0x2e,0x6e,0x75,0x6d,0x62,0x65,0x72,0x20,0x20,0x20,0x3d,0x20,0x64,0x65,0x66,\n    0x61,0x75,0x6c,0x74,0x5f,0x69,0x6e,0x73,0x70,0x65,0x63,0x74,0x6f,0x72,0x0a,0x4d,\n    0x2e,0x69,0x6e,0x73,0x70,0x65,0x63,0x74,0x6f,0x72,0x73,0x2e,0x62,0x6f,0x6f,0x6c,\n    0x65,0x61,0x6e,0x20,0x20,0x3d,0x20,0x64,0x65,0x66,0x61,0x75,0x6c,0x74,0x5f,0x69,\n    0x6e,0x73,0x70,0x65,0x63,0x74,0x6f,0x72,0x0a,0x4d,0x2e,0x69,0x6e,0x73,0x70,0x65,\n    0x63,0x74,0x6f,0x72,0x73,0x5b,0x22,0x6e,0x69,0x6c,0x22,0x5d,0x20,0x20,0x20,0x3d,\n    0x20,0x64,0x65,0x66,0x61,0x75,0x6c,0x74,0x5f,0x69,0x6e,0x73,0x70,0x65,0x63,0x74,\n    0x6f,0x72,0x0a,0x4d,0x2e,0x69,0x6e,0x73,0x70,0x65,0x63,0x74,0x6f,0x72,0x73,0x2e,\n    0x75,0x73,0x65,0x72,0x64,0x61,0x74,0x61,0x20,0x3d,0x20,0x64,0x65,0x66,0x61,0x75,\n    0x6c,0x74,0x5f,0x69,0x6e,0x73,0x70,0x65,0x63,0x74,0x6f,0x72,0x0a,0x4d,0x2e,0x69,\n    0x6e,0x73,0x70,0x65,0x63,0x74,0x6f,0x72,0x73,0x2e,0x74,0x68,0x72,0x65,0x61,0x64,\n    0x20,0x20,0x20,0x3d,0x20,0x64,0x65,0x66,0x61,0x75,0x6c,0x74,0x5f,0x69,0x6e,0x73,\n    0x70,0x65,0x63,0x74,0x6f,0x72,0x0a,0x4d,0x2e,0x69,0x6e,0x73,0x70,0x65,0x63,0x74,\n    0x6f,0x72,0x73,0x2e,0x64,0x65,0x66,0x61,0x75,0x6c,0x74,0x20,0x20,0x3d,0x20,0x64,\n    0x65,0x66,0x61,0x75,0x6c,0x74,0x5f,0x69,0x6e,0x73,0x70,0x65,0x63,0x74,0x6f,0x72,\n    0x20,0x2d,0x2d,0x20,0x61,0x6c,0x6c,0x6f,0x77,0x73,0x20,0x33,0x72,0x64,0x20,0x70,\n    0x61,0x72,0x74,0x79,0x20,0x69,0x6e,0x73,0x70,0x65,0x63,0x74,0x6f,0x72,0x73,0x20,\n    0x74,0x6f,0x20,0x75,0x73,0x65,0x20,0x74,0x68,0x65,0x20,0x64,0x65,0x66,0x61,0x75,\n    0x6c,0x74,0x20,0x69,0x6e,0x73,0x70,0x65,0x63,0x74,0x6f,0x72,0x20,0x69,0x66,0x20,\n    0x6e,0x65,0x65,0x64,0x65,0x64,0x0a,0x0a,0x4d,0x2e,0x69,0x6e,0x73,0x70,0x65,0x63,\n    0x74,0x6f,0x72,0x73,0x2e,0x75,0x73,0x65,0x72,0x64,0x61,0x74,0x61,0x20,0x3d,0x20,\n    0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x28,0x6e,0x61,0x6d,0x65,0x2c,0x20,0x76,\n    0x61,0x6c,0x75,0x65,0x2c,0x20,0x70,0x61,0x72,0x65,0x6e,0x74,0x2c,0x20,0x66,0x75,\n    0x6c,0x6c,0x6e,0x61,0x6d,0x65,0x29,0x0a,0x20,0x20,0x20,0x20,0x72,0x65,0x74,0x75,\n    0x72,0x6e,0x20,0x28,0x6d,0x65,0x74,0x61,0x74,0x61,0x62,0x6c,0x65,0x5f,0x69,0x6e,\n    0x73,0x70,0x65,0x63,0x74,0x6f,0x72,0x28,0x6e,0x61,0x6d,0x65,0x2c,0x20,0x76,0x61,\n    0x6c,0x75,0x65,0x2c,0x20,0x70,0x61,0x72,0x65,0x6e,0x74,0x2c,0x20,0x66,0x75,0x6c,\n    0x6c,0x6e,0x61,0x6d,0x65,0x29,0x29,0x20,0x2d,0x2d,0x20,0x64,0x72,0x6f,0x70,0x20,\n    0x73,0x65,0x63,0x6f,0x6e,0x64,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x76,0x61,\n    0x6c,0x75,0x65,0x0a,0x65,0x6e,0x64,0x0a,0x0a,0x4d,0x2e,0x69,0x6e,0x73,0x70,0x65,\n    0x63,0x74,0x6f,0x72,0x73,0x2e,0x73,0x74,0x72,0x69,0x6e,0x67,0x20,0x3d,0x20,0x66,\n    0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x28,0x6e,0x61,0x6d,0x65,0x2c,0x20,0x76,0x61,\n    0x6c,0x75,0x65,0x2c,0x20,0x70,0x61,0x72,0x65,0x6e,0x74,0x2c,0x20,0x66,0x75,0x6c,\n    0x6c,0x6e,0x61,0x6d,0x65,0x29,0x0a,0x20,0x20,0x20,0x20,0x2d,0x2d,0x20,0x65,0x73,\n    0x63,0x61,0x70,0x65,0x20,0x6c,0x69,0x6e,0x65,0x62,0x72,0x65,0x61,0x6b,0x73,0x20,\n    0x61,0x73,0x20,0x5c,0x6e,0x20,0x61,0x6e,0x64,0x20,0x6e,0x6f,0x74,0x20,0x61,0x73,\n    0x20,0x5c,0x3c,0x30,0x78,0x30,0x41,0x3e,0x20,0x6c,0x69,0x6b,0x65,0x20,0x25,0x71,\n    0x20,0x64,0x6f,0x65,0x73,0x0a,0x20,0x20,0x20,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,\n    0x20,0x4d,0x2e,0x70,0x72,0x6f,0x70,0x65,0x72,0x74,0x79,0x28,0x6e,0x61,0x6d,0x65,\n    0x2c,0x20,0x22,0x73,0x74,0x72,0x69,0x6e,0x67,0x22,0x2c,0x20,0x73,0x66,0x6f,0x72,\n    0x6d,0x61,0x74,0x28,0x22,0x25,0x71,0x22,0x2c,0x20,0x76,0x61,0x6c,0x75,0x65,0x29,\n    0x3a,0x67,0x73,0x75,0x62,0x28,0x22,0x5c,0x5c,0x5c,0x6e,0x22,0x2c,0x20,0x22,0x5c,\n    0x5c,0x6e,0x22,0x29,0x2c,0x20,0x70,0x61,0x72,0x65,0x6e,0x74,0x2c,0x20,0x66,0x75,\n    0x6c,0x6c,0x6e,0x61,0x6d,0x65,0x29,0x0a,0x65,0x6e,0x64,0x0a,0x0a,0x4d,0x2e,0x69,\n    0x6e,0x73,0x70,0x65,0x63,0x74,0x6f,0x72,0x73,0x5b,0x22,0x66,0x75,0x6e,0x63,0x74,\n    0x69,0x6f,0x6e,0x22,0x5d,0x20,0x3d,0x20,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,\n    0x28,0x6e,0x61,0x6d,0x65,0x2c,0x20,0x76,0x61,0x6c,0x75,0x65,0x2c,0x20,0x70,0x61,\n    0x72,0x65,0x6e,0x74,0x2c,0x20,0x66,0x75,0x6c,0x6c,0x6e,0x61,0x6d,0x65,0x29,0x0a,\n    0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x69,0x6e,0x66,0x6f,0x20,0x3d,\n    0x20,0x64,0x65,0x62,0x75,0x67,0x2e,0x67,0x65,0x74,0x69,0x6e,0x66,0x6f,0x28,0x76,\n    0x61,0x6c,0x75,0x65,0x2c,0x20,0x22,0x6e,0x53,0x66,0x6c,0x75,0x22,0x29,0x0a,0x20,\n    0x20,0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x70,0x72,0x6f,0x70,0x0a,0x20,0x20,\n    0x20,0x20,0x69,0x66,0x20,0x69,0x6e,0x66,0x6f,0x2e,0x77,0x68,0x61,0x74,0x20,0x7e,\n    0x3d,0x20,0x22,0x43,0x22,0x20,0x74,0x68,0x65,0x6e,0x0a,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x2d,0x2d,0x20,0x74,0x72,0x79,0x20,0x74,0x6f,0x20,0x63,0x72,0x65,\n    0x61,0x74,0x65,0x20,0x61,0x20,0x66,0x61,0x6e,0x63,0x79,0x20,0x72,0x65,0x70,0x72,\n    0x65,0x73,0x65,0x6e,0x74,0x61,0x74,0x69,0x6f,0x6e,0x20,0x69,0x66,0x20,0x70,0x6f,\n    0x73,0x73,0x69,0x62,0x6c,0x65,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x6c,\n    0x6f,0x63,0x61,0x6c,0x20,0x72,0x65,0x70,0x72,0x20,0x3d,0x20,0x69,0x6e,0x66,0x6f,\n    0x2e,0x6e,0x70,0x61,0x72,0x61,0x6d,0x73,0x20,0x61,0x6e,0x64,0x20,0x66,0x61,0x6e,\n    0x63,0x79,0x5f,0x66,0x75,0x6e,0x63,0x5f,0x72,0x65,0x70,0x72,0x28,0x76,0x61,0x6c,\n    0x75,0x65,0x2c,0x20,0x69,0x6e,0x66,0x6f,0x29,0x20,0x6f,0x72,0x20,0x74,0x6f,0x73,\n    0x74,0x72,0x69,0x6e,0x67,0x28,0x76,0x61,0x6c,0x75,0x65,0x29,0x0a,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x69,0x66,0x20,0x69,0x6e,0x66,0x6f,0x2e,0x73,0x6f,0x75,\n    0x72,0x63,0x65,0x3a,0x73,0x75,0x62,0x28,0x31,0x2c,0x31,0x29,0x20,0x3d,0x3d,0x20,\n    0x22,0x40,0x22,0x20,0x74,0x68,0x65,0x6e,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x72,0x65,0x70,0x72,0x20,0x3d,0x20,0x72,0x65,0x70,0x72,\n    0x20,0x2e,0x2e,0x20,0x22,0x5c,0x6e,0x22,0x20,0x2e,0x2e,0x20,0x70,0x6c,0x61,0x74,\n    0x66,0x6f,0x72,0x6d,0x2e,0x67,0x65,0x74,0x5f,0x75,0x72,0x69,0x28,0x22,0x40,0x22,\n    0x20,0x2e,0x2e,0x20,0x69,0x6e,0x66,0x6f,0x2e,0x73,0x6f,0x75,0x72,0x63,0x65,0x29,\n    0x20,0x2e,0x2e,0x20,0x22,0x5c,0x6e,0x22,0x20,0x2e,0x2e,0x20,0x74,0x6f,0x73,0x74,\n    0x72,0x69,0x6e,0x67,0x28,0x69,0x6e,0x66,0x6f,0x2e,0x6c,0x69,0x6e,0x65,0x64,0x65,\n    0x66,0x69,0x6e,0x65,0x64,0x29,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x65,\n    0x6e,0x64,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x70,0x72,0x6f,0x70,0x20,\n    0x3d,0x20,0x4d,0x2e,0x70,0x72,0x6f,0x70,0x65,0x72,0x74,0x79,0x28,0x6e,0x61,0x6d,\n    0x65,0x2c,0x20,0x22,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x20,0x28,0x4c,0x75,\n    0x61,0x29,0x22,0x2c,0x20,0x72,0x65,0x70,0x72,0x2c,0x20,0x70,0x61,0x72,0x65,0x6e,\n    0x74,0x2c,0x20,0x66,0x75,0x6c,0x6c,0x6e,0x61,0x6d,0x65,0x29,0x0a,0x20,0x20,0x20,\n    0x20,0x65,0x6c,0x73,0x65,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x70,0x72,\n    0x6f,0x70,0x20,0x3d,0x20,0x4d,0x2e,0x70,0x72,0x6f,0x70,0x65,0x72,0x74,0x79,0x28,\n    0x6e,0x61,0x6d,0x65,0x2c,0x20,0x22,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x22,\n    0x2c,0x20,0x74,0x6f,0x73,0x74,0x72,0x69,0x6e,0x67,0x28,0x76,0x61,0x6c,0x75,0x65,\n    0x29,0x2c,0x20,0x70,0x61,0x72,0x65,0x6e,0x74,0x2c,0x20,0x66,0x75,0x6c,0x6c,0x6e,\n    0x61,0x6d,0x65,0x29,0x0a,0x20,0x20,0x20,0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,0x20,\n    0x20,0x69,0x66,0x20,0x6e,0x6f,0x74,0x20,0x70,0x72,0x6f,0x70,0x20,0x74,0x68,0x65,\n    0x6e,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x6e,0x69,0x6c,0x20,0x65,0x6e,0x64,\n    0x0a,0x0a,0x20,0x20,0x20,0x20,0x2d,0x2d,0x20,0x28,0x35,0x2e,0x31,0x20,0x6f,0x6e,\n    0x6c,0x79,0x29,0x20,0x65,0x6e,0x76,0x69,0x72,0x6f,0x6e,0x6d,0x65,0x6e,0x74,0x20,\n    0x69,0x73,0x20,0x64,0x75,0x6d,0x70,0x65,0x64,0x20,0x6f,0x6e,0x6c,0x79,0x20,0x69,\n    0x66,0x20,0x69,0x74,0x20,0x69,0x73,0x20,0x64,0x69,0x66,0x66,0x65,0x72,0x65,0x6e,\n    0x74,0x20,0x66,0x72,0x6f,0x6d,0x20,0x67,0x6c,0x6f,0x62,0x61,0x6c,0x20,0x65,0x6e,\n    0x76,0x69,0x72,0x6f,0x6e,0x6d,0x65,0x6e,0x74,0x0a,0x20,0x20,0x20,0x20,0x2d,0x2d,\n    0x20,0x54,0x4f,0x44,0x4f,0x3a,0x20,0x74,0x68,0x69,0x73,0x20,0x69,0x73,0x20,0x6e,\n    0x6f,0x74,0x20,0x61,0x20,0x63,0x6f,0x72,0x72,0x65,0x63,0x74,0x20,0x62,0x65,0x68,\n    0x61,0x76,0x69,0x6f,0x72,0x3a,0x20,0x65,0x6e,0x76,0x69,0x72,0x6f,0x6e,0x6d,0x65,\n    0x6e,0x74,0x20,0x73,0x68,0x6f,0x75,0x6c,0x64,0x20,0x62,0x65,0x20,0x64,0x75,0x6d,\n    0x70,0x65,0x64,0x20,0x69,0x66,0x20,0x69,0x73,0x20,0x64,0x69,0x66,0x66,0x65,0x72,\n    0x65,0x6e,0x74,0x20,0x66,0x72,0x6f,0x6d,0x20,0x63,0x75,0x72,0x72,0x65,0x6e,0x74,\n    0x20,0x73,0x74,0x61,0x63,0x6b,0x20,0x6c,0x65,0x76,0x65,0x6c,0x20,0x6f,0x6e,0x65,\n    0x0a,0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x66,0x65,0x6e,0x76,0x20,\n    0x3d,0x20,0x67,0x65,0x74,0x66,0x65,0x6e,0x76,0x20,0x61,0x6e,0x64,0x20,0x67,0x65,\n    0x74,0x66,0x65,0x6e,0x76,0x28,0x76,0x61,0x6c,0x75,0x65,0x29,0x0a,0x20,0x20,0x20,\n    0x20,0x69,0x66,0x20,0x66,0x65,0x6e,0x76,0x20,0x61,0x6e,0x64,0x20,0x66,0x65,0x6e,\n    0x76,0x20,0x7e,0x3d,0x20,0x67,0x65,0x74,0x66,0x65,0x6e,0x76,0x28,0x30,0x29,0x20,\n    0x74,0x68,0x65,0x6e,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,\n    0x61,0x6c,0x20,0x66,0x65,0x6e,0x76,0x70,0x72,0x6f,0x70,0x20,0x3d,0x20,0x4d,0x2e,\n    0x69,0x6e,0x73,0x70,0x65,0x63,0x74,0x28,0x22,0x65,0x6e,0x76,0x69,0x72,0x6f,0x6e,\n    0x6d,0x65,0x6e,0x74,0x22,0x2c,0x20,0x66,0x65,0x6e,0x76,0x2c,0x20,0x70,0x72,0x6f,\n    0x70,0x2c,0x20,0x22,0x65,0x6e,0x76,0x69,0x72,0x6f,0x6e,0x6d,0x65,0x6e,0x74,0x5b,\n    0x22,0x2e,0x2e,0x70,0x72,0x6f,0x70,0x2e,0x61,0x74,0x74,0x72,0x2e,0x66,0x75,0x6c,\n    0x6c,0x6e,0x61,0x6d,0x65,0x2e,0x2e,0x22,0x5d,0x22,0x29,0x0a,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x69,0x66,0x20,0x66,0x65,0x6e,0x76,0x70,0x72,0x6f,0x70,0x20,\n    0x74,0x68,0x65,0x6e,0x20,0x66,0x65,0x6e,0x76,0x70,0x72,0x6f,0x70,0x2e,0x61,0x74,\n    0x74,0x72,0x2e,0x74,0x79,0x70,0x65,0x20,0x3d,0x20,0x22,0x73,0x70,0x65,0x63,0x69,\n    0x61,0x6c,0x22,0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,0x20,0x20,0x65,0x6e,0x64,0x0a,\n    0x0a,0x20,0x20,0x20,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x70,0x72,0x6f,0x70,\n    0x0a,0x65,0x6e,0x64,0x0a,0x0a,0x0a,0x4d,0x2e,0x69,0x6e,0x73,0x70,0x65,0x63,0x74,\n    0x6f,0x72,0x73,0x2e,0x74,0x61,0x62,0x6c,0x65,0x20,0x3d,0x20,0x66,0x75,0x6e,0x63,\n    0x74,0x69,0x6f,0x6e,0x28,0x6e,0x61,0x6d,0x65,0x2c,0x20,0x76,0x61,0x6c,0x75,0x65,\n    0x2c,0x20,0x70,0x61,0x72,0x65,0x6e,0x74,0x2c,0x20,0x66,0x75,0x6c,0x6c,0x6e,0x61,\n    0x6d,0x65,0x29,0x0a,0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x70,0x72,\n    0x6f,0x70,0x2c,0x20,0x69,0x73,0x63,0x75,0x73,0x74,0x6f,0x6d,0x20,0x3d,0x20,0x6d,\n    0x65,0x74,0x61,0x74,0x61,0x62,0x6c,0x65,0x5f,0x69,0x6e,0x73,0x70,0x65,0x63,0x74,\n    0x6f,0x72,0x28,0x6e,0x61,0x6d,0x65,0x2c,0x20,0x76,0x61,0x6c,0x75,0x65,0x2c,0x20,\n    0x70,0x61,0x72,0x65,0x6e,0x74,0x2c,0x20,0x66,0x75,0x6c,0x6c,0x6e,0x61,0x6d,0x65,\n    0x29,0x0a,0x20,0x20,0x20,0x20,0x69,0x66,0x20,0x6e,0x6f,0x74,0x20,0x70,0x72,0x6f,\n    0x70,0x20,0x6f,0x72,0x20,0x69,0x73,0x63,0x75,0x73,0x74,0x6f,0x6d,0x20,0x74,0x68,\n    0x65,0x6e,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x70,0x72,0x6f,0x70,0x20,0x65,\n    0x6e,0x64,0x0a,0x0a,0x20,0x20,0x20,0x20,0x2d,0x2d,0x20,0x69,0x74,0x65,0x72,0x61,\n    0x74,0x65,0x20,0x6f,0x76,0x65,0x72,0x20,0x74,0x61,0x62,0x6c,0x65,0x20,0x76,0x61,\n    0x6c,0x75,0x65,0x73,0x20,0x61,0x6e,0x64,0x20,0x64,0x65,0x74,0x65,0x63,0x74,0x20,\n    0x61,0x72,0x72,0x61,0x79,0x73,0x20,0x61,0x74,0x20,0x74,0x68,0x65,0x20,0x73,0x61,\n    0x6d,0x65,0x20,0x74,0x69,0x6d,0x65,0x0a,0x20,0x20,0x20,0x20,0x2d,0x2d,0x20,0x6e,\n    0x65,0x78,0x74,0x20,0x69,0x73,0x20,0x75,0x73,0x65,0x64,0x20,0x74,0x6f,0x20,0x63,\n    0x69,0x72,0x63,0x75,0x6d,0x76,0x65,0x6e,0x74,0x20,0x5f,0x5f,0x70,0x61,0x69,0x72,\n    0x73,0x20,0x6d,0x65,0x74,0x61,0x6d,0x65,0x74,0x68,0x6f,0x64,0x20,0x69,0x6e,0x20,\n    0x35,0x2e,0x32,0x0a,0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x69,0x73,\n    0x61,0x72,0x72,0x61,0x79,0x2c,0x20,0x69,0x20,0x3d,0x20,0x74,0x72,0x75,0x65,0x2c,\n    0x20,0x31,0x0a,0x20,0x20,0x20,0x20,0x66,0x6f,0x72,0x20,0x6b,0x2c,0x76,0x20,0x69,\n    0x6e,0x20,0x6e,0x65,0x78,0x74,0x2c,0x20,0x76,0x61,0x6c,0x75,0x65,0x2c,0x20,0x6e,\n    0x69,0x6c,0x20,0x64,0x6f,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x4d,0x2e,\n    0x69,0x6e,0x73,0x70,0x65,0x63,0x74,0x28,0x67,0x65,0x6e,0x65,0x72,0x61,0x74,0x65,\n    0x5f,0x70,0x72,0x69,0x6e,0x74,0x61,0x62,0x6c,0x65,0x5f,0x6b,0x65,0x79,0x28,0x6b,\n    0x29,0x2c,0x20,0x76,0x2c,0x20,0x70,0x72,0x6f,0x70,0x2c,0x20,0x6d,0x61,0x6b,0x65,\n    0x5f,0x66,0x75,0x6c,0x6c,0x6e,0x61,0x6d,0x65,0x28,0x66,0x75,0x6c,0x6c,0x6e,0x61,\n    0x6d,0x65,0x2c,0x20,0x6b,0x29,0x29,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x2d,0x2d,0x20,0x61,0x72,0x72,0x61,0x79,0x20,0x64,0x65,0x74,0x65,0x63,0x74,0x69,\n    0x6f,0x6e,0x3a,0x20,0x6b,0x65,0x79,0x73,0x20,0x73,0x68,0x6f,0x75,0x6c,0x64,0x20,\n    0x62,0x65,0x20,0x61,0x63,0x63,0x65,0x73,0x73,0x69,0x62,0x6c,0x65,0x20,0x62,0x79,\n    0x20,0x31,0x2e,0x2e,0x6e,0x20,0x6b,0x65,0x79,0x73,0x0a,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x69,0x73,0x61,0x72,0x72,0x61,0x79,0x20,0x3d,0x20,0x69,0x73,0x61,\n    0x72,0x72,0x61,0x79,0x20,0x61,0x6e,0x64,0x20,0x72,0x61,0x77,0x67,0x65,0x74,0x28,\n    0x76,0x61,0x6c,0x75,0x65,0x2c,0x20,0x69,0x29,0x20,0x7e,0x3d,0x20,0x6e,0x69,0x6c,\n    0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x69,0x20,0x3d,0x20,0x69,0x20,0x2b,\n    0x20,0x31,0x0a,0x20,0x20,0x20,0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,0x20,0x20,0x2d,\n    0x2d,0x20,0x65,0x6d,0x70,0x74,0x79,0x20,0x74,0x61,0x62,0x6c,0x65,0x73,0x20,0x61,\n    0x72,0x65,0x20,0x63,0x6f,0x6e,0x73,0x69,0x64,0x65,0x72,0x65,0x64,0x20,0x61,0x73,\n    0x20,0x74,0x61,0x62,0x6c,0x65,0x73,0x0a,0x20,0x20,0x20,0x20,0x69,0x66,0x20,0x69,\n    0x73,0x61,0x72,0x72,0x61,0x79,0x20,0x61,0x6e,0x64,0x20,0x69,0x20,0x3e,0x20,0x31,\n    0x20,0x74,0x68,0x65,0x6e,0x20,0x70,0x72,0x6f,0x70,0x2e,0x61,0x74,0x74,0x72,0x2e,\n    0x74,0x79,0x70,0x65,0x20,0x3d,0x20,0x22,0x73,0x65,0x71,0x75,0x65,0x6e,0x63,0x65,\n    0x22,0x20,0x65,0x6e,0x64,0x0a,0x0a,0x20,0x20,0x20,0x20,0x72,0x65,0x74,0x75,0x72,\n    0x6e,0x20,0x70,0x72,0x6f,0x70,0x0a,0x65,0x6e,0x64,0x0a,0x0a,0x4d,0x2e,0x69,0x6e,\n    0x73,0x70,0x65,0x63,0x74,0x6f,0x72,0x73,0x5b,0x4d,0x55,0x4c,0x54,0x49,0x56,0x41,\n    0x4c,0x5f,0x4d,0x54,0x5d,0x20,0x3d,0x20,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,\n    0x28,0x6e,0x61,0x6d,0x65,0x2c,0x20,0x76,0x61,0x6c,0x75,0x65,0x2c,0x20,0x70,0x61,\n    0x72,0x65,0x6e,0x74,0x2c,0x20,0x66,0x75,0x6c,0x6c,0x6e,0x61,0x6d,0x65,0x29,0x0a,\n    0x20,0x20,0x20,0x20,0x69,0x66,0x20,0x76,0x61,0x6c,0x75,0x65,0x2e,0x6e,0x20,0x3d,\n    0x3d,0x20,0x31,0x20,0x74,0x68,0x65,0x6e,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x2d,0x2d,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x64,0x69,0x72,0x65,0x63,\n    0x74,0x6c,0x79,0x20,0x74,0x68,0x65,0x20,0x76,0x61,0x6c,0x75,0x65,0x20,0x61,0x73,\n    0x20,0x72,0x65,0x73,0x75,0x6c,0x74,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x4d,0x2e,0x69,0x6e,0x73,0x70,0x65,0x63,0x74,\n    0x28,0x6e,0x61,0x6d,0x65,0x2c,0x20,0x76,0x61,0x6c,0x75,0x65,0x5b,0x31,0x5d,0x2c,\n    0x20,0x70,0x61,0x72,0x65,0x6e,0x74,0x2c,0x20,0x66,0x75,0x6c,0x6c,0x6e,0x61,0x6d,\n    0x65,0x29,0x0a,0x20,0x20,0x20,0x20,0x65,0x6c,0x73,0x65,0x0a,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x2d,0x2d,0x20,0x77,0x72,0x61,0x70,0x20,0x76,0x61,0x6c,0x75,\n    0x65,0x73,0x20,0x69,0x6e,0x73,0x69,0x64,0x65,0x20,0x61,0x20,0x6d,0x75,0x6c,0x74,\n    0x69,0x76,0x61,0x6c,0x20,0x63,0x6f,0x6e,0x74,0x61,0x69,0x6e,0x65,0x72,0x0a,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x70,0x72,0x6f,\n    0x70,0x20,0x3d,0x20,0x4d,0x2e,0x70,0x72,0x6f,0x70,0x65,0x72,0x74,0x79,0x28,0x6e,\n    0x61,0x6d,0x65,0x2c,0x20,0x22,0x6d,0x75,0x6c,0x74,0x69,0x76,0x61,0x6c,0x22,0x2c,\n    0x20,0x22,0x22,0x2c,0x20,0x70,0x61,0x72,0x65,0x6e,0x74,0x2c,0x20,0x66,0x75,0x6c,\n    0x6c,0x6e,0x61,0x6d,0x65,0x29,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x69,\n    0x66,0x20,0x6e,0x6f,0x74,0x20,0x70,0x72,0x6f,0x70,0x20,0x74,0x68,0x65,0x6e,0x20,\n    0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x6e,0x69,0x6c,0x20,0x65,0x6e,0x64,0x0a,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x66,0x6f,0x72,0x20,0x69,0x3d,0x31,0x2c,0x20,\n    0x76,0x61,0x6c,0x75,0x65,0x2e,0x6e,0x20,0x64,0x6f,0x0a,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x4d,0x2e,0x69,0x6e,0x73,0x70,0x65,0x63,0x74,\n    0x28,0x67,0x65,0x6e,0x65,0x72,0x61,0x74,0x65,0x5f,0x70,0x72,0x69,0x6e,0x74,0x61,\n    0x62,0x6c,0x65,0x5f,0x6b,0x65,0x79,0x28,0x69,0x29,0x2c,0x20,0x76,0x61,0x6c,0x75,\n    0x65,0x5b,0x69,0x5d,0x2c,0x20,0x70,0x72,0x6f,0x70,0x2c,0x20,0x66,0x75,0x6c,0x6c,\n    0x6e,0x61,0x6d,0x65,0x20,0x2e,0x2e,0x20,0x22,0x5b,0x22,0x20,0x2e,0x2e,0x20,0x69,\n    0x20,0x2e,0x2e,0x20,0x22,0x5d,0x22,0x29,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x72,0x65,0x74,\n    0x75,0x72,0x6e,0x20,0x70,0x72,0x6f,0x70,0x0a,0x20,0x20,0x20,0x20,0x65,0x6e,0x64,\n    0x0a,0x65,0x6e,0x64,0x0a,0x0a,0x2d,0x2d,0x20,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x20,0x2d,0x2d,0x0a,0x2d,0x2d,0x20,0x49,0x6e,0x74,0x65,\n    0x72,0x6e,0x61,0x6c,0x20,0x41,0x50,0x49,0x20,0x2d,0x2d,0x0a,0x2d,0x2d,0x20,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x20,0x2d,0x2d,0x0a,0x0a,\n    0x2d,0x2d,0x20,0x55,0x73,0x65,0x64,0x20,0x74,0x6f,0x20,0x69,0x6e,0x73,0x70,0x65,\n    0x63,0x74,0x20,0x22,0x6d,0x75,0x6c,0x74,0x69,0x76,0x61,0x6c,0x22,0x20,0x6f,0x72,\n    0x20,0x22,0x76,0x61,0x72,0x61,0x72,0x67,0x22,0x20,0x76,0x61,0x6c,0x75,0x65,0x73,\n    0x2e,0x20,0x54,0x68,0x65,0x20,0x74,0x79,0x70,0x69,0x63,0x61,0x6c,0x20,0x75,0x73,\n    0x65,0x20,0x69,0x73,0x20,0x74,0x6f,0x20,0x70,0x61,0x63,0x6b,0x20,0x66,0x75,0x6e,\n    0x63,0x74,0x69,0x6f,0x6e,0x20,0x72,0x65,0x73,0x75,0x6c,0x74,0x28,0x73,0x29,0x20,\n    0x69,0x6e,0x20,0x61,0x20,0x73,0x69,0x6e,0x67,0x6c,0x65,0x0a,0x2d,0x2d,0x20,0x76,\n    0x61,0x6c,0x75,0x65,0x20,0x74,0x6f,0x20,0x69,0x6e,0x73,0x70,0x65,0x63,0x74,0x2e,\n    0x20,0x54,0x68,0x65,0x20,0x4d,0x75,0x6c,0x74,0x69,0x76,0x61,0x6c,0x20,0x69,0x6e,\n    0x73,0x74,0x61,0x6e,0x63,0x65,0x73,0x20,0x63,0x61,0x6e,0x20,0x62,0x65,0x20,0x70,\n    0x61,0x73,0x73,0x65,0x64,0x20,0x74,0x6f,0x20,0x6d,0x61,0x6b,0x65,0x5f,0x70,0x72,\n    0x6f,0x70,0x65,0x72,0x74,0x79,0x20,0x61,0x73,0x20,0x61,0x20,0x73,0x69,0x6e,0x67,\n    0x6c,0x65,0x20,0x76,0x61,0x6c,0x75,0x65,0x2c,0x20,0x74,0x68,0x65,0x79,0x20,0x77,\n    0x69,0x6c,0x6c,0x20,0x62,0x65,0x0a,0x2d,0x2d,0x20,0x63,0x6f,0x72,0x72,0x65,0x63,\n    0x74,0x6c,0x79,0x20,0x72,0x65,0x70,0x6f,0x72,0x74,0x65,0x64,0x20,0x74,0x6f,0x20,\n    0x64,0x65,0x62,0x75,0x67,0x67,0x65,0x72,0x0a,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,\n    0x6e,0x20,0x4d,0x2e,0x4d,0x75,0x6c,0x74,0x69,0x76,0x61,0x6c,0x28,0x2e,0x2e,0x2e,\n    0x29,0x0a,0x20,0x20,0x20,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x73,0x65,0x74,\n    0x6d,0x65,0x74,0x61,0x74,0x61,0x62,0x6c,0x65,0x28,0x7b,0x20,0x6e,0x3d,0x73,0x65,\n    0x6c,0x65,0x63,0x74,0x28,0x22,0x23,0x22,0x2c,0x20,0x2e,0x2e,0x2e,0x29,0x2c,0x20,\n    0x2e,0x2e,0x2e,0x20,0x7d,0x2c,0x20,0x4d,0x55,0x4c,0x54,0x49,0x56,0x41,0x4c,0x5f,\n    0x4d,0x54,0x29,0x0a,0x65,0x6e,0x64,0x0a,0x0a,0x2d,0x2d,0x2d,0x20,0x4d,0x61,0x6b,\n    0x65,0x73,0x20,0x61,0x20,0x70,0x72,0x6f,0x70,0x65,0x72,0x74,0x79,0x20,0x66,0x6f,\n    0x72,0x6d,0x20,0x61,0x20,0x6e,0x61,0x6d,0x65,0x2f,0x76,0x61,0x6c,0x75,0x65,0x20,\n    0x70,0x61,0x69,0x72,0x20,0x28,0x61,0x6e,0x64,0x20,0x66,0x75,0x6c,0x6c,0x6e,0x61,\n    0x6d,0x65,0x29,0x2e,0x20,0x54,0x68,0x69,0x73,0x20,0x69,0x73,0x20,0x61,0x6e,0x20,\n    0x2a,0x2a,0x69,0x6e,0x74,0x65,0x72,0x6e,0x61,0x6c,0x2a,0x2a,0x20,0x66,0x75,0x6e,\n    0x63,0x74,0x69,0x6f,0x6e,0x2c,0x20,0x61,0x6e,0x64,0x20,0x73,0x68,0x6f,0x75,0x6c,\n    0x64,0x20,0x6e,0x6f,0x74,0x20,0x62,0x65,0x20,0x75,0x73,0x65,0x64,0x20,0x62,0x79,\n    0x20,0x33,0x72,0x64,0x20,0x70,0x61,0x72,0x74,0x79,0x20,0x69,0x6e,0x73,0x70,0x65,\n    0x63,0x74,0x6f,0x72,0x73,0x2e,0x0a,0x2d,0x2d,0x20,0x40,0x70,0x61,0x72,0x61,0x6d,\n    0x20,0x23,0x6e,0x75,0x6d,0x62,0x65,0x72,0x20,0x63,0x78,0x74,0x5f,0x69,0x64,0x20,\n    0x43,0x6f,0x6e,0x74,0x65,0x78,0x74,0x20,0x49,0x44,0x20,0x69,0x6e,0x20,0x77,0x68,\n    0x69,0x63,0x68,0x20,0x74,0x68,0x69,0x73,0x20,0x76,0x61,0x6c,0x75,0x65,0x20,0x72,\n    0x65,0x73,0x69,0x64,0x65,0x73,0x20,0x28,0x77,0x6f,0x72,0x6b,0x61,0x72,0x6f,0x75,\n    0x6e,0x64,0x20,0x62,0x75,0x67,0x20,0x33,0x35,0x32,0x33,0x31,0x36,0x29,0x0a,0x2d,\n    0x2d,0x20,0x40,0x70,0x61,0x72,0x61,0x6d,0x20,0x76,0x61,0x6c,0x75,0x65,0x20,0x54,\n    0x68,0x65,0x20,0x76,0x61,0x6c,0x75,0x65,0x20,0x74,0x6f,0x20,0x64,0x65,0x62,0x75,\n    0x67,0x0a,0x2d,0x2d,0x20,0x40,0x70,0x61,0x72,0x61,0x6d,0x20,0x6e,0x61,0x6d,0x65,\n    0x20,0x54,0x68,0x65,0x20,0x6e,0x61,0x6d,0x65,0x20,0x61,0x73,0x73,0x6f,0x63,0x69,\n    0x61,0x74,0x65,0x64,0x20,0x77,0x69,0x74,0x68,0x20,0x76,0x61,0x6c,0x75,0x65,0x2c,\n    0x20,0x70,0x61,0x73,0x73,0x65,0x64,0x20,0x74,0x68,0x72,0x6f,0x75,0x67,0x68,0x20,\n    0x74,0x6f,0x73,0x74,0x72,0x69,0x6e,0x67,0x2c,0x20,0x73,0x6f,0x20,0x69,0x74,0x20,\n    0x63,0x61,0x6e,0x20,0x62,0x65,0x20,0x61,0x6e,0x79,0x74,0x68,0x69,0x6e,0x67,0x0a,\n    0x2d,0x2d,0x20,0x40,0x70,0x61,0x72,0x61,0x6d,0x20,0x23,0x73,0x74,0x72,0x69,0x6e,\n    0x67,0x20,0x66,0x75,0x6c,0x6c,0x6e,0x61,0x6d,0x65,0x20,0x41,0x20,0x4c,0x75,0x61,\n    0x20,0x65,0x78,0x70,0x72,0x65,0x73,0x73,0x69,0x6f,0x6e,0x20,0x74,0x6f,0x20,0x65,\n    0x76,0x61,0x6c,0x20,0x74,0x6f,0x20,0x67,0x65,0x74,0x20,0x74,0x68,0x61,0x74,0x20,\n    0x70,0x72,0x6f,0x70,0x65,0x72,0x74,0x79,0x20,0x61,0x67,0x61,0x69,0x6e,0x20,0x28,\n    0x69,0x66,0x20,0x6e,0x69,0x6c,0x2c,0x20,0x63,0x6f,0x6d,0x70,0x75,0x74,0x65,0x64,\n    0x20,0x61,0x75,0x74,0x6f,0x6d,0x61,0x74,0x69,0x63,0x61,0x6c,0x6c,0x79,0x29,0x0a,\n    0x2d,0x2d,0x20,0x40,0x70,0x61,0x72,0x61,0x6d,0x20,0x23,0x6e,0x75,0x6d,0x62,0x65,\n    0x72,0x20,0x64,0x65,0x70,0x74,0x68,0x20,0x54,0x68,0x65,0x20,0x6d,0x61,0x78,0x69,\n    0x6d,0x75,0x6d,0x20,0x70,0x72,0x6f,0x70,0x65,0x72,0x74,0x79,0x20,0x64,0x65,0x70,\n    0x74,0x68,0x20,0x28,0x72,0x65,0x63,0x75,0x72,0x73,0x69,0x76,0x65,0x20,0x63,0x61,\n    0x6c,0x6c,0x73,0x29,0x0a,0x2d,0x2d,0x20,0x40,0x70,0x61,0x72,0x61,0x6d,0x20,0x23,\n    0x6e,0x75,0x6d,0x62,0x65,0x72,0x20,0x70,0x61,0x67,0x65,0x73,0x69,0x7a,0x65,0x20,\n    0x6d,0x61,0x78,0x69,0x6d,0x75,0x6d,0x20,0x63,0x68,0x69,0x6c,0x64,0x72,0x65,0x6e,\n    0x20,0x74,0x6f,0x20,0x69,0x6e,0x63,0x6c,0x75,0x64,0x65,0x0a,0x2d,0x2d,0x20,0x40,\n    0x70,0x61,0x72,0x61,0x6d,0x20,0x23,0x6e,0x75,0x6d,0x62,0x65,0x72,0x20,0x70,0x61,\n    0x67,0x65,0x20,0x54,0x68,0x65,0x20,0x70,0x61,0x67,0x65,0x20,0x74,0x6f,0x20,0x67,\n    0x65,0x6e,0x65,0x72,0x61,0x74,0x65,0x20,0x28,0x30,0x20,0x62,0x61,0x73,0x65,0x64,\n    0x29,0x0a,0x2d,0x2d,0x20,0x40,0x70,0x61,0x72,0x61,0x6d,0x20,0x23,0x6e,0x75,0x6d,\n    0x62,0x65,0x72,0x20,0x73,0x69,0x7a,0x65,0x5f,0x6c,0x69,0x6d,0x69,0x74,0x20,0x4f,\n    0x70,0x74,0x69,0x6f,0x6e,0x61,0x6c,0x2c,0x20,0x69,0x66,0x20,0x73,0x65,0x74,0x2c,\n    0x20,0x74,0x68,0x65,0x20,0x6d,0x61,0x78,0x69,0x6d,0x75,0x6d,0x20,0x73,0x69,0x7a,\n    0x65,0x20,0x6f,0x66,0x20,0x74,0x68,0x65,0x20,0x73,0x74,0x72,0x69,0x6e,0x67,0x20,\n    0x72,0x65,0x70,0x72,0x65,0x73,0x65,0x6e,0x74,0x61,0x74,0x69,0x6f,0x6e,0x20,0x28,\n    0x69,0x6e,0x20,0x62,0x79,0x74,0x65,0x73,0x29,0x0a,0x2d,0x2d,0x20,0x40,0x70,0x61,\n    0x72,0x61,0x6d,0x20,0x23,0x62,0x6f,0x6f,0x6c,0x65,0x61,0x6e,0x20,0x73,0x61,0x66,\n    0x65,0x5f,0x6e,0x61,0x6d,0x65,0x20,0x49,0x66,0x20,0x74,0x72,0x75,0x65,0x2c,0x20,\n    0x64,0x6f,0x65,0x73,0x20,0x6e,0x6f,0x74,0x20,0x65,0x6e,0x63,0x6f,0x64,0x65,0x20,\n    0x74,0x68,0x65,0x20,0x6e,0x61,0x6d,0x65,0x20,0x61,0x73,0x20,0x74,0x61,0x62,0x6c,\n    0x65,0x20,0x6b,0x65,0x79,0x0a,0x2d,0x2d,0x20,0x40,0x72,0x65,0x74,0x75,0x72,0x6e,\n    0x20,0x23,0x44,0x42,0x47,0x50,0x50,0x72,0x6f,0x70,0x65,0x72,0x74,0x79,0x20,0x72,\n    0x6f,0x6f,0x74,0x20,0x70,0x72,0x6f,0x70,0x65,0x72,0x74,0x79,0x0a,0x2d,0x2d,0x20,\n    0x40,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x20,0x5b,0x70,0x61,0x72,0x65,0x6e,\n    0x74,0x3d,0x23,0x64,0x65,0x62,0x75,0x67,0x67,0x65,0x72,0x2e,0x69,0x6e,0x74,0x72,\n    0x6f,0x73,0x70,0x65,0x63,0x74,0x69,0x6f,0x6e,0x5d,0x20,0x6d,0x61,0x6b,0x65,0x5f,\n    0x70,0x72,0x6f,0x70,0x65,0x72,0x74,0x79,0x0a,0x2d,0x2d,0x54,0x4f,0x44,0x4f,0x20,\n    0x42,0x55,0x47,0x20,0x45,0x43,0x4c,0x49,0x50,0x53,0x45,0x20,0x54,0x4f,0x4f,0x4c,\n    0x53,0x4c,0x49,0x4e,0x55,0x58,0x2d,0x39,0x39,0x20,0x33,0x35,0x32,0x33,0x31,0x36,\n    0x20,0x3a,0x20,0x61,0x73,0x20,0x61,0x20,0x77,0x6f,0x72,0x6b,0x61,0x72,0x6f,0x75,\n    0x6e,0x64,0x2c,0x20,0x63,0x6f,0x6e,0x74,0x65,0x78,0x74,0x20,0x69,0x73,0x20,0x65,\n    0x6e,0x63,0x6f,0x64,0x65,0x64,0x20,0x69,0x6e,0x74,0x6f,0x20,0x74,0x68,0x65,0x20,\n    0x66,0x75,0x6c,0x6c,0x6e,0x61,0x6d,0x65,0x20,0x70,0x72,0x6f,0x70,0x65,0x72,0x74,\n    0x79,0x0a,0x4d,0x2e,0x6d,0x61,0x6b,0x65,0x5f,0x70,0x72,0x6f,0x70,0x65,0x72,0x74,\n    0x79,0x20,0x3d,0x20,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x28,0x63,0x78,0x74,\n    0x5f,0x69,0x64,0x2c,0x20,0x76,0x61,0x6c,0x75,0x65,0x2c,0x20,0x6e,0x61,0x6d,0x65,\n    0x2c,0x20,0x66,0x75,0x6c,0x6c,0x6e,0x61,0x6d,0x65,0x2c,0x20,0x64,0x65,0x70,0x74,\n    0x68,0x2c,0x20,0x70,0x61,0x67,0x65,0x73,0x69,0x7a,0x65,0x2c,0x20,0x70,0x61,0x67,\n    0x65,0x2c,0x20,0x73,0x69,0x7a,0x65,0x5f,0x6c,0x69,0x6d,0x69,0x74,0x2c,0x20,0x73,\n    0x61,0x66,0x65,0x5f,0x6e,0x61,0x6d,0x65,0x29,0x0a,0x20,0x20,0x20,0x20,0x66,0x75,\n    0x6c,0x6c,0x6e,0x61,0x6d,0x65,0x20,0x3d,0x20,0x66,0x75,0x6c,0x6c,0x6e,0x61,0x6d,\n    0x65,0x20,0x6f,0x72,0x20,0x22,0x28,0x2e,0x2e,0x2e,0x29,0x5b,0x22,0x20,0x2e,0x2e,\n    0x20,0x67,0x65,0x6e,0x65,0x72,0x61,0x74,0x65,0x5f,0x6b,0x65,0x79,0x28,0x6e,0x61,\n    0x6d,0x65,0x29,0x20,0x2e,0x2e,0x20,0x22,0x5d,0x22,0x0a,0x20,0x20,0x20,0x20,0x69,\n    0x66,0x20,0x6e,0x6f,0x74,0x20,0x73,0x61,0x66,0x65,0x5f,0x6e,0x61,0x6d,0x65,0x20,\n    0x74,0x68,0x65,0x6e,0x20,0x6e,0x61,0x6d,0x65,0x20,0x3d,0x20,0x67,0x65,0x6e,0x65,\n    0x72,0x61,0x74,0x65,0x5f,0x70,0x72,0x69,0x6e,0x74,0x61,0x62,0x6c,0x65,0x5f,0x6b,\n    0x65,0x79,0x28,0x6e,0x61,0x6d,0x65,0x29,0x20,0x65,0x6e,0x64,0x0a,0x0a,0x20,0x20,\n    0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x67,0x65,0x6e,0x65,0x72,0x61,0x74,0x6f,\n    0x72,0x20,0x3d,0x20,0x63,0x6f,0x63,0x72,0x65,0x61,0x74,0x65,0x28,0x66,0x75,0x6e,\n    0x63,0x74,0x69,0x6f,0x6e,0x28,0x29,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x4d,\n    0x2e,0x69,0x6e,0x73,0x70,0x65,0x63,0x74,0x28,0x6e,0x61,0x6d,0x65,0x2c,0x20,0x76,\n    0x61,0x6c,0x75,0x65,0x2c,0x20,0x6e,0x69,0x6c,0x2c,0x20,0x66,0x75,0x6c,0x6c,0x6e,\n    0x61,0x6d,0x65,0x29,0x20,0x65,0x6e,0x64,0x29,0x0a,0x20,0x20,0x20,0x20,0x6c,0x6f,\n    0x63,0x61,0x6c,0x20,0x70,0x72,0x6f,0x70,0x73,0x74,0x61,0x63,0x6b,0x20,0x3d,0x20,\n    0x7b,0x20,0x7d,0x0a,0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x72,0x6f,\n    0x6f,0x74,0x6e,0x6f,0x64,0x65,0x0a,0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,\n    0x20,0x63,0x61,0x74,0x63,0x68,0x74,0x68,0x69,0x73,0x20,0x3d,0x20,0x74,0x72,0x75,\n    0x65,0x0a,0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x6e,0x6f,0x64,0x65,\n    0x73,0x74,0x6f,0x73,0x6b,0x69,0x70,0x20,0x3d,0x20,0x70,0x61,0x67,0x65,0x20,0x2a,\n    0x20,0x70,0x61,0x67,0x65,0x73,0x69,0x7a,0x65,0x20,0x2d,0x2d,0x20,0x6e,0x6f,0x64,\n    0x65,0x73,0x20,0x74,0x6f,0x20,0x73,0x6b,0x69,0x70,0x20,0x61,0x74,0x20,0x72,0x6f,\n    0x6f,0x74,0x20,0x6c,0x65,0x76,0x65,0x6c,0x20,0x74,0x6f,0x20,0x72,0x65,0x73,0x70,\n    0x65,0x63,0x74,0x20,0x70,0x61,0x67,0x69,0x6e,0x61,0x74,0x69,0x6f,0x6e,0x0a,0x20,\n    0x20,0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x66,0x75,0x6c,0x6c,0x6e,0x61,0x6d,\n    0x65,0x5f,0x70,0x72,0x65,0x66,0x69,0x78,0x20,0x3d,0x20,0x74,0x6f,0x73,0x74,0x72,\n    0x69,0x6e,0x67,0x28,0x63,0x78,0x74,0x5f,0x69,0x64,0x29,0x2e,0x2e,0x22,0x7c,0x22,\n    0x0a,0x0a,0x20,0x20,0x20,0x20,0x77,0x68,0x69,0x6c,0x65,0x20,0x74,0x72,0x75,0x65,\n    0x20,0x64,0x6f,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,0x61,\n    0x6c,0x20,0x73,0x75,0x63,0x63,0x65,0x73,0x2c,0x20,0x6e,0x61,0x6d,0x65,0x2c,0x20,\n    0x64,0x61,0x74,0x61,0x74,0x79,0x70,0x65,0x2c,0x20,0x72,0x65,0x70,0x72,0x2c,0x20,\n    0x70,0x61,0x72,0x65,0x6e,0x74,0x2c,0x20,0x66,0x75,0x6c,0x6c,0x6e,0x61,0x6d,0x65,\n    0x20,0x3d,0x20,0x61,0x73,0x73,0x65,0x72,0x74,0x28,0x63,0x6f,0x72,0x65,0x73,0x75,\n    0x6d,0x65,0x28,0x67,0x65,0x6e,0x65,0x72,0x61,0x74,0x6f,0x72,0x2c,0x20,0x63,0x61,\n    0x74,0x63,0x68,0x74,0x68,0x69,0x73,0x20,0x61,0x6e,0x64,0x20,0x70,0x72,0x6f,0x70,\n    0x73,0x74,0x61,0x63,0x6b,0x5b,0x23,0x70,0x72,0x6f,0x70,0x73,0x74,0x61,0x63,0x6b,\n    0x5d,0x20,0x6f,0x72,0x20,0x6e,0x69,0x6c,0x29,0x29,0x0a,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x2d,0x2d,0x20,0x66,0x69,0x6e,0x61,0x6c,0x69,0x7a,0x65,0x20,0x61,\n    0x6e,0x64,0x20,0x70,0x6f,0x70,0x20,0x61,0x6c,0x6c,0x20,0x66,0x69,0x6e,0x69,0x73,\n    0x68,0x65,0x64,0x20,0x70,0x72,0x6f,0x70,0x65,0x72,0x74,0x69,0x65,0x73,0x0a,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x77,0x68,0x69,0x6c,0x65,0x20,0x70,0x72,0x6f,\n    0x70,0x73,0x74,0x61,0x63,0x6b,0x5b,0x23,0x70,0x72,0x6f,0x70,0x73,0x74,0x61,0x63,\n    0x6b,0x5d,0x20,0x7e,0x3d,0x20,0x70,0x61,0x72,0x65,0x6e,0x74,0x20,0x64,0x6f,0x0a,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,0x61,\n    0x6c,0x20,0x74,0x6f,0x70,0x6f,0x70,0x20,0x3d,0x20,0x70,0x72,0x6f,0x70,0x73,0x74,\n    0x61,0x63,0x6b,0x5b,0x23,0x70,0x72,0x6f,0x70,0x73,0x74,0x61,0x63,0x6b,0x5d,0x0a,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x74,0x6f,0x70,0x6f,\n    0x70,0x2e,0x61,0x74,0x74,0x72,0x2e,0x66,0x75,0x6c,0x6c,0x6e,0x61,0x6d,0x65,0x20,\n    0x3d,0x20,0x75,0x74,0x69,0x6c,0x2e,0x72,0x61,0x77,0x62,0x36,0x34,0x28,0x66,0x75,\n    0x6c,0x6c,0x6e,0x61,0x6d,0x65,0x5f,0x70,0x72,0x65,0x66,0x69,0x78,0x20,0x2e,0x2e,\n    0x20,0x74,0x6f,0x70,0x6f,0x70,0x2e,0x61,0x74,0x74,0x72,0x2e,0x66,0x75,0x6c,0x6c,\n    0x6e,0x61,0x6d,0x65,0x29,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x70,0x72,0x6f,0x70,0x73,0x74,0x61,0x63,0x6b,0x5b,0x23,0x70,0x72,0x6f,\n    0x70,0x73,0x74,0x61,0x63,0x6b,0x5d,0x20,0x3d,0x20,0x6e,0x69,0x6c,0x0a,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x69,0x66,0x20,0x63,0x6f,0x73,0x74,0x61,0x74,0x75,0x73,0x28,0x67,0x65,\n    0x6e,0x65,0x72,0x61,0x74,0x6f,0x72,0x29,0x20,0x3d,0x3d,0x20,0x22,0x64,0x65,0x61,\n    0x64,0x22,0x20,0x74,0x68,0x65,0x6e,0x20,0x62,0x72,0x65,0x61,0x6b,0x20,0x65,0x6e,\n    0x64,0x0a,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,\n    0x20,0x70,0x72,0x6f,0x70,0x20,0x3d,0x20,0x7b,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x74,0x61,0x67,0x20,0x3d,0x20,0x22,0x70,0x72,0x6f,0x70,0x65,\n    0x72,0x74,0x79,0x22,0x2c,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x61,0x74,0x74,0x72,0x20,0x3d,0x20,0x7b,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x63,0x68,0x69,0x6c,0x64,0x72,0x65,0x6e,0x20,0x3d,0x20,\n    0x30,0x2c,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x70,\n    0x61,0x67,0x65,0x73,0x69,0x7a,0x65,0x20,0x3d,0x20,0x70,0x61,0x67,0x65,0x73,0x69,\n    0x7a,0x65,0x2c,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x70,0x61,0x67,0x65,0x20,0x3d,0x20,0x70,0x61,0x72,0x65,0x6e,0x74,0x20,0x61,0x6e,\n    0x64,0x20,0x30,0x20,0x6f,0x72,0x20,0x70,0x61,0x67,0x65,0x2c,0x0a,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x74,0x79,0x70,0x65,0x20,0x3d,0x20,\n    0x64,0x61,0x74,0x61,0x74,0x79,0x70,0x65,0x2c,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x6e,0x61,0x6d,0x65,0x20,0x3d,0x20,0x6e,0x61,0x6d,\n    0x65,0x2c,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x66,\n    0x75,0x6c,0x6c,0x6e,0x61,0x6d,0x65,0x20,0x3d,0x20,0x66,0x75,0x6c,0x6c,0x6e,0x61,\n    0x6d,0x65,0x2c,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x65,0x6e,0x63,0x6f,0x64,0x69,0x6e,0x67,0x20,0x3d,0x20,0x22,0x62,0x61,0x73,0x65,\n    0x36,0x34,0x22,0x2c,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x73,0x69,0x7a,0x65,0x20,0x3d,0x20,0x23,0x72,0x65,0x70,0x72,0x2c,0x0a,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x7d,0x2c,0x0a,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x75,0x74,0x69,0x6c,0x2e,0x62,0x36,0x34,0x28,0x73,\n    0x69,0x7a,0x65,0x5f,0x6c,0x69,0x6d,0x69,0x74,0x20,0x61,0x6e,0x64,0x20,0x72,0x65,\n    0x70,0x72,0x3a,0x73,0x75,0x62,0x28,0x31,0x2c,0x20,0x73,0x69,0x7a,0x65,0x5f,0x6c,\n    0x69,0x6d,0x69,0x74,0x29,0x20,0x6f,0x72,0x20,0x72,0x65,0x70,0x72,0x29,0x0a,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x7d,0x0a,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x69,0x66,0x20,0x70,0x61,0x72,0x65,0x6e,0x74,0x20,0x74,0x68,0x65,0x6e,\n    0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x70,0x61,0x72,\n    0x65,0x6e,0x74,0x2e,0x61,0x74,0x74,0x72,0x2e,0x63,0x68,0x69,0x6c,0x64,0x72,0x65,\n    0x6e,0x20,0x3d,0x20,0x31,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x70,0x61,0x72,0x65,0x6e,0x74,0x2e,0x61,0x74,0x74,0x72,0x2e,0x6e,0x75,\n    0x6d,0x63,0x68,0x69,0x6c,0x64,0x72,0x65,0x6e,0x20,0x3d,0x20,0x28,0x70,0x61,0x72,\n    0x65,0x6e,0x74,0x2e,0x61,0x74,0x74,0x72,0x2e,0x6e,0x75,0x6d,0x63,0x68,0x69,0x6c,\n    0x64,0x72,0x65,0x6e,0x20,0x6f,0x72,0x20,0x30,0x29,0x20,0x2b,0x20,0x31,0x0a,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x2d,0x2d,0x20,0x74,0x61,\n    0x6b,0x65,0x20,0x70,0x61,0x67,0x69,0x6e,0x61,0x74,0x69,0x6f,0x6e,0x20,0x69,0x6e,\n    0x74,0x6f,0x20,0x61,0x63,0x63,0x6f,0x6e,0x74,0x20,0x74,0x6f,0x20,0x6b,0x6e,0x6f,\n    0x77,0x20,0x69,0x66,0x20,0x6e,0x6f,0x64,0x65,0x20,0x6e,0x65,0x65,0x64,0x73,0x20,\n    0x74,0x6f,0x20,0x62,0x65,0x20,0x63,0x61,0x74,0x63,0x68,0x65,0x64,0x0a,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x63,0x61,0x74,0x63,0x68,0x74,\n    0x68,0x69,0x73,0x20,0x3d,0x20,0x23,0x70,0x61,0x72,0x65,0x6e,0x74,0x20,0x3c,0x3d,\n    0x20,0x70,0x61,0x67,0x65,0x73,0x69,0x7a,0x65,0x20,0x61,0x6e,0x64,0x20,0x23,0x70,\n    0x72,0x6f,0x70,0x73,0x74,0x61,0x63,0x6b,0x20,0x3c,0x3d,0x20,0x64,0x65,0x70,0x74,\n    0x68,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x69,0x66,\n    0x20,0x70,0x61,0x72,0x65,0x6e,0x74,0x20,0x3d,0x3d,0x20,0x72,0x6f,0x6f,0x74,0x6e,\n    0x6f,0x64,0x65,0x20,0x74,0x68,0x65,0x6e,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x63,0x61,0x74,0x63,0x68,0x74,0x68,\n    0x69,0x73,0x20,0x3d,0x20,0x63,0x61,0x74,0x63,0x68,0x74,0x68,0x69,0x73,0x20,0x61,\n    0x6e,0x64,0x20,0x6e,0x6f,0x64,0x65,0x73,0x74,0x6f,0x73,0x6b,0x69,0x70,0x20,0x3c,\n    0x3d,0x20,0x30,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x6e,0x6f,0x64,0x65,0x73,0x74,0x6f,0x73,0x6b,0x69,0x70,0x20,\n    0x3d,0x20,0x6e,0x6f,0x64,0x65,0x73,0x74,0x6f,0x73,0x6b,0x69,0x70,0x20,0x2d,0x20,\n    0x31,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x65,0x6e,\n    0x64,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x2d,0x2d,\n    0x20,0x61,0x64,0x64,0x20,0x6e,0x6f,0x64,0x65,0x20,0x74,0x6f,0x20,0x74,0x72,0x65,\n    0x65,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x69,0x66,\n    0x20,0x63,0x61,0x74,0x63,0x68,0x74,0x68,0x69,0x73,0x20,0x74,0x68,0x65,0x6e,0x0a,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x70,0x61,\n    0x72,0x65,0x6e,0x74,0x5b,0x23,0x70,0x61,0x72,0x65,0x6e,0x74,0x20,0x2b,0x20,0x31,\n    0x5d,0x20,0x3d,0x20,0x70,0x72,0x6f,0x70,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x70,0x72,0x6f,0x70,0x73,0x74,0x61,0x63,0x6b,\n    0x5b,0x23,0x70,0x72,0x6f,0x70,0x73,0x74,0x61,0x63,0x6b,0x20,0x2b,0x20,0x31,0x5d,\n    0x20,0x3d,0x20,0x70,0x72,0x6f,0x70,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x65,0x6c,0x73,0x65,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x72,0x6f,0x6f,0x74,0x6e,0x6f,0x64,0x65,0x20,0x3d,0x20,0x70,0x72,0x6f,0x70,\n    0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x63,0x61,0x74,\n    0x63,0x68,0x74,0x68,0x69,0x73,0x20,0x3d,0x20,0x74,0x72,0x75,0x65,0x0a,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x70,0x72,0x6f,0x70,0x73,0x74,\n    0x61,0x63,0x6b,0x5b,0x23,0x70,0x72,0x6f,0x70,0x73,0x74,0x61,0x63,0x6b,0x20,0x2b,\n    0x20,0x31,0x5d,0x20,0x3d,0x20,0x70,0x72,0x6f,0x70,0x0a,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,0x20,0x20,0x65,0x6e,0x64,0x0a,0x0a,\n    0x20,0x20,0x20,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x72,0x6f,0x6f,0x74,0x6e,\n    0x6f,0x64,0x65,0x0a,0x65,0x6e,0x64,0x0a,0x0a,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,\n    0x4d,0x0a,0x0a,0x65,0x6e,0x64,0x0a,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x0a,0x2d,0x2d,0x20,0x45,0x6e,0x64,0x20,0x6f,\n    0x66,0x20,0x6d,0x6f,0x64,0x75,0x6c,0x65,0x64,0x65,0x62,0x75,0x67,0x67,0x65,0x72,\n    0x2e,0x69,0x6e,0x74,0x72,0x6f,0x73,0x70,0x65,0x63,0x74,0x69,0x6f,0x6e,0x0a,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x0a,\n    0x0a,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x0a,0x2d,0x2d,0x20,0x20,0x4d,0x6f,0x64,0x75,0x6c,0x65,0x20,0x64,0x65,0x62,\n    0x75,0x67,0x67,0x65,0x72,0x2e,0x70,0x6c,0x75,0x67,0x69,0x6e,0x73,0x2e,0x66,0x66,\n    0x69,0x0a,0x70,0x61,0x63,0x6b,0x61,0x67,0x65,0x2e,0x70,0x72,0x65,0x6c,0x6f,0x61,\n    0x64,0x5b,0x22,0x64,0x65,0x62,0x75,0x67,0x67,0x65,0x72,0x2e,0x70,0x6c,0x75,0x67,\n    0x69,0x6e,0x73,0x2e,0x66,0x66,0x69,0x22,0x5d,0x20,0x3d,0x20,0x66,0x75,0x6e,0x63,\n    0x74,0x69,0x6f,0x6e,0x28,0x2e,0x2e,0x2e,0x29,0x0a,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x0a,0x2d,0x2d,0x20,0x43,0x6f,0x70,\n    0x79,0x72,0x69,0x67,0x68,0x74,0x20,0x28,0x63,0x29,0x20,0x32,0x30,0x31,0x32,0x2d,\n    0x32,0x30,0x31,0x33,0x20,0x4a,0x75,0x6c,0x69,0x65,0x6e,0x20,0x44,0x65,0x73,0x67,\n    0x61,0x74,0x73,0x0a,0x2d,0x2d,0x20,0x41,0x6c,0x6c,0x20,0x72,0x69,0x67,0x68,0x74,\n    0x73,0x20,0x72,0x65,0x73,0x65,0x72,0x76,0x65,0x64,0x2e,0x20,0x54,0x68,0x69,0x73,\n    0x20,0x70,0x72,0x6f,0x67,0x72,0x61,0x6d,0x20,0x61,0x6e,0x64,0x20,0x74,0x68,0x65,\n    0x20,0x61,0x63,0x63,0x6f,0x6d,0x70,0x61,0x6e,0x79,0x69,0x6e,0x67,0x20,0x6d,0x61,\n    0x74,0x65,0x72,0x69,0x61,0x6c,0x73,0x0a,0x2d,0x2d,0x20,0x61,0x72,0x65,0x20,0x6d,\n    0x61,0x64,0x65,0x20,0x61,0x76,0x61,0x69,0x6c,0x61,0x62,0x6c,0x65,0x20,0x75,0x6e,\n    0x64,0x65,0x72,0x20,0x74,0x68,0x65,0x20,0x74,0x65,0x72,0x6d,0x73,0x20,0x6f,0x66,\n    0x20,0x74,0x68,0x65,0x20,0x45,0x63,0x6c,0x69,0x70,0x73,0x65,0x20,0x50,0x75,0x62,\n    0x6c,0x69,0x63,0x20,0x4c,0x69,0x63,0x65,0x6e,0x73,0x65,0x20,0x76,0x31,0x2e,0x30,\n    0x0a,0x2d,0x2d,0x20,0x77,0x68,0x69,0x63,0x68,0x20,0x61,0x63,0x63,0x6f,0x6d,0x70,\n    0x61,0x6e,0x69,0x65,0x73,0x20,0x74,0x68,0x69,0x73,0x20,0x64,0x69,0x73,0x74,0x72,\n    0x69,0x62,0x75,0x74,0x69,0x6f,0x6e,0x2c,0x20,0x61,0x6e,0x64,0x20,0x69,0x73,0x20,\n    0x61,0x76,0x61,0x69,0x6c,0x61,0x62,0x6c,0x65,0x20,0x61,0x74,0x0a,0x2d,0x2d,0x20,\n    0x68,0x74,0x74,0x70,0x3a,0x2f,0x2f,0x77,0x77,0x77,0x2e,0x65,0x63,0x6c,0x69,0x70,\n    0x73,0x65,0x2e,0x6f,0x72,0x67,0x2f,0x6c,0x65,0x67,0x61,0x6c,0x2f,0x65,0x70,0x6c,\n    0x2d,0x76,0x31,0x30,0x2e,0x68,0x74,0x6d,0x6c,0x0a,0x2d,0x2d,0x0a,0x2d,0x2d,0x20,\n    0x43,0x6f,0x6e,0x74,0x72,0x69,0x62,0x75,0x74,0x6f,0x72,0x73,0x3a,0x0a,0x2d,0x2d,\n    0x20,0x20,0x20,0x20,0x20,0x4a,0x75,0x6c,0x69,0x65,0x6e,0x20,0x44,0x65,0x73,0x67,\n    0x61,0x74,0x73,0x20,0x2d,0x20,0x69,0x6e,0x69,0x74,0x69,0x61,0x6c,0x20,0x41,0x50,\n    0x49,0x20,0x61,0x6e,0x64,0x20,0x69,0x6d,0x70,0x6c,0x65,0x6d,0x65,0x6e,0x74,0x61,\n    0x74,0x69,0x6f,0x6e,0x0a,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x0a,0x2d,0x2d,0x20,0x4c,0x75,0x61,0x4a,0x49,0x54,0x20,0x63,\n    0x64,0x61,0x74,0x61,0x20,0x69,0x6e,0x74,0x72,0x6f,0x73,0x70,0x65,0x63,0x74,0x69,\n    0x6f,0x6e,0x20,0x6c,0x69,0x62,0x72,0x61,0x72,0x79,0x2e,0x0a,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x0a,0x0a,0x2d,0x2d,0x20,\n    0x6b,0x6e,0x6f,0x77,0x6e,0x20,0x69,0x73,0x73,0x75,0x65,0x73,0x3a,0x0a,0x2d,0x2d,\n    0x20,0x20,0x2a,0x20,0x72,0x65,0x66,0x65,0x72,0x65,0x6e,0x63,0x65,0x73,0x20,0x61,\n    0x72,0x65,0x20,0x64,0x65,0x2d,0x72,0x65,0x66,0x65,0x72,0x65,0x6e,0x63,0x65,0x64,\n    0x20,0x65,0x76,0x65,0x6e,0x74,0x20,0x69,0x66,0x20,0x69,0x6e,0x73,0x70,0x65,0x63,\n    0x74,0x5f,0x72,0x65,0x66,0x65,0x72,0x65,0x6e,0x63,0x65,0x73,0x20,0x69,0x73,0x20,\n    0x75,0x6e,0x73,0x65,0x74,0x0a,0x2d,0x2d,0x20,0x20,0x2a,0x20,0x69,0x73,0x20,0x61,\n    0x75,0x74,0x6f,0x6d,0x61,0x74,0x69,0x63,0x20,0x70,0x6f,0x69,0x6e,0x74,0x65,0x72,\n    0x20,0x61,0x6e,0x64,0x20,0x72,0x65,0x66,0x65,0x72,0x65,0x6e,0x63,0x65,0x20,0x64,\n    0x65,0x2d,0x72,0x65,0x66,0x65,0x72,0x65,0x6e,0x63,0x69,0x6e,0x67,0x20,0x69,0x73,\n    0x20,0x70,0x6f,0x73,0x73,0x69,0x62,0x6c,0x65,0x20,0x3f,0x0a,0x2d,0x2d,0x20,0x20,\n    0x20,0x20,0x28,0x6f,0x6e,0x6c,0x79,0x20,0x66,0x6f,0x72,0x20,0x66,0x69,0x72,0x73,\n    0x74,0x20,0x69,0x74,0x65,0x6d,0x20,0x69,0x6e,0x20,0x63,0x61,0x73,0x65,0x20,0x6f,\n    0x66,0x20,0x61,0x72,0x72,0x61,0x79,0x73,0x29,0x2e,0x20,0x50,0x6f,0x73,0x73,0x69,\n    0x62,0x6c,0x65,0x20,0x6c,0x65,0x61,0x64,0x73,0x3a,0x0a,0x2d,0x2d,0x20,0x20,0x20,\n    0x20,0x68,0x74,0x74,0x70,0x3a,0x2f,0x2f,0x73,0x74,0x61,0x63,0x6b,0x6f,0x76,0x65,\n    0x72,0x66,0x6c,0x6f,0x77,0x2e,0x63,0x6f,0x6d,0x2f,0x71,0x75,0x65,0x73,0x74,0x69,\n    0x6f,0x6e,0x73,0x2f,0x37,0x31,0x33,0x34,0x35,0x39,0x30,0x2f,0x68,0x6f,0x77,0x2d,\n    0x74,0x6f,0x2d,0x74,0x65,0x73,0x74,0x2d,0x69,0x66,0x2d,0x61,0x6e,0x2d,0x61,0x64,\n    0x64,0x72,0x65,0x73,0x73,0x2d,0x69,0x73,0x2d,0x72,0x65,0x61,0x64,0x61,0x62,0x6c,\n    0x65,0x2d,0x69,0x6e,0x2d,0x6c,0x69,0x6e,0x75,0x78,0x2d,0x75,0x73,0x65,0x72,0x73,\n    0x70,0x61,0x63,0x65,0x2d,0x61,0x70,0x70,0x0a,0x2d,0x2d,0x20,0x20,0x20,0x20,0x68,\n    0x74,0x74,0x70,0x3a,0x2f,0x2f,0x77,0x77,0x77,0x2e,0x73,0x6f,0x66,0x74,0x77,0x61,\n    0x72,0x65,0x76,0x65,0x72,0x69,0x66,0x79,0x2e,0x63,0x6f,0x6d,0x2f,0x62,0x6c,0x6f,\n    0x67,0x2f,0x3f,0x70,0x3d,0x33,0x31,0x39,0x0a,0x2d,0x2d,0x20,0x20,0x2a,0x20,0x77,\n    0x68,0x65,0x6e,0x20,0x73,0x65,0x74,0x74,0x69,0x6e,0x67,0x20,0x61,0x20,0x76,0x61,\n    0x6c,0x75,0x65,0x20,0x66,0x72,0x6f,0x6d,0x20,0x45,0x63,0x6c,0x69,0x70,0x73,0x65,\n    0x2c,0x20,0x74,0x68,0x65,0x20,0x74,0x79,0x70,0x65,0x20,0x69,0x73,0x20,0x73,0x6f,\n    0x6d,0x65,0x74,0x69,0x6d,0x65,0x73,0x20,0x63,0x68,0x61,0x6e,0x67,0x65,0x64,0x20,\n    0x28,0x65,0x2e,0x67,0x2e,0x20,0x69,0x6e,0x74,0x20,0x3d,0x3e,0x20,0x6e,0x75,0x6d,\n    0x62,0x65,0x72,0x29,0x0a,0x0a,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x69,0x6e,0x74,0x72,\n    0x6f,0x73,0x70,0x65,0x63,0x74,0x69,0x6f,0x6e,0x20,0x3d,0x20,0x72,0x65,0x71,0x75,\n    0x69,0x72,0x65,0x20,0x22,0x64,0x65,0x62,0x75,0x67,0x67,0x65,0x72,0x2e,0x69,0x6e,\n    0x74,0x72,0x6f,0x73,0x70,0x65,0x63,0x74,0x69,0x6f,0x6e,0x22,0x0a,0x6c,0x6f,0x63,\n    0x61,0x6c,0x20,0x72,0x65,0x66,0x6c,0x65,0x63,0x74,0x20,0x3d,0x20,0x72,0x65,0x71,\n    0x75,0x69,0x72,0x65,0x20,0x22,0x64,0x65,0x62,0x75,0x67,0x67,0x65,0x72,0x2e,0x70,\n    0x6c,0x75,0x67,0x69,0x6e,0x73,0x2e,0x66,0x66,0x69,0x2e,0x72,0x65,0x66,0x6c,0x65,\n    0x63,0x74,0x22,0x0a,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x66,0x66,0x69,0x20,0x3d,0x20,\n    0x72,0x65,0x71,0x75,0x69,0x72,0x65,0x20,0x22,0x66,0x66,0x69,0x22,0x0a,0x0a,0x6c,\n    0x6f,0x63,0x61,0x6c,0x20,0x74,0x6f,0x73,0x74,0x72,0x69,0x6e,0x67,0x2c,0x20,0x74,\n    0x6f,0x6e,0x75,0x6d,0x62,0x65,0x72,0x2c,0x20,0x74,0x79,0x70,0x65,0x2c,0x20,0x61,\n    0x73,0x73,0x65,0x72,0x74,0x2c,0x20,0x73,0x66,0x6f,0x72,0x6d,0x61,0x74,0x2c,0x20,\n    0x74,0x63,0x6f,0x6e,0x63,0x61,0x74,0x20,0x3d,0x20,0x74,0x6f,0x73,0x74,0x72,0x69,\n    0x6e,0x67,0x2c,0x20,0x74,0x6f,0x6e,0x75,0x6d,0x62,0x65,0x72,0x2c,0x20,0x74,0x79,\n    0x70,0x65,0x2c,0x20,0x61,0x73,0x73,0x65,0x72,0x74,0x2c,0x20,0x73,0x74,0x72,0x69,\n    0x6e,0x67,0x2e,0x66,0x6f,0x72,0x6d,0x61,0x74,0x2c,0x20,0x74,0x61,0x62,0x6c,0x65,\n    0x2e,0x63,0x6f,0x6e,0x63,0x61,0x74,0x0a,0x0a,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x4d,\n    0x20,0x3d,0x20,0x7b,0x20,0x7d,0x0a,0x0a,0x2d,0x2d,0x2d,0x20,0x57,0x68,0x65,0x74,\n    0x68,0x65,0x72,0x20,0x74,0x68,0x65,0x20,0x72,0x65,0x66,0x65,0x72,0x65,0x6e,0x63,\n    0x65,0x20,0x74,0x79,0x70,0x65,0x73,0x20,0x61,0x72,0x65,0x20,0x69,0x6e,0x73,0x70,\n    0x65,0x63,0x74,0x65,0x64,0x2e,0x20,0x55,0x73,0x75,0x61,0x6c,0x6c,0x79,0x20,0x72,\n    0x65,0x66,0x65,0x72,0x65,0x6e,0x63,0x65,0x73,0x20,0x73,0x68,0x6f,0x75,0x6c,0x64,\n    0x20,0x62,0x65,0x20,0x73,0x61,0x66,0x65,0x20,0x28,0x61,0x74,0x20,0x6c,0x65,0x61,\n    0x73,0x74,0x20,0x61,0x20,0x62,0x69,0x74,0x0a,0x2d,0x2d,0x20,0x73,0x61,0x66,0x65,\n    0x72,0x20,0x74,0x68,0x61,0x6e,0x20,0x70,0x6f,0x69,0x6e,0x74,0x65,0x72,0x73,0x29,\n    0x20,0x73,0x6f,0x20,0x74,0x68,0x65,0x79,0x20,0x61,0x72,0x65,0x20,0x69,0x6e,0x73,\n    0x70,0x65,0x63,0x74,0x65,0x64,0x2e,0x20,0x49,0x66,0x20,0x61,0x20,0x72,0x65,0x66,\n    0x65,0x72,0x65,0x6e,0x63,0x65,0x20,0x70,0x6f,0x69,0x6e,0x74,0x73,0x20,0x74,0x6f,\n    0x20,0x75,0x6e,0x73,0x61,0x66,0x65,0x20,0x6d,0x65,0x6d,0x6f,0x72,0x79,0x2c,0x20,\n    0x74,0x68,0x65,0x20,0x77,0x68,0x6f,0x6c,0x65,0x0a,0x2d,0x2d,0x20,0x70,0x72,0x6f,\n    0x67,0x72,0x61,0x6d,0x20,0x63,0x6f,0x75,0x6c,0x64,0x20,0x63,0x72,0x61,0x73,0x68,\n    0x20,0x21,0x0a,0x2d,0x2d,0x20,0x49,0x66,0x20,0x74,0x68,0x69,0x73,0x20,0x66,0x65,\n    0x61,0x74,0x75,0x72,0x65,0x20,0x69,0x73,0x20,0x64,0x69,0x73,0x61,0x62,0x6c,0x65,\n    0x64,0x2c,0x20,0x64,0x65,0x65,0x70,0x6c,0x79,0x20,0x6e,0x65,0x73,0x74,0x65,0x64,\n    0x20,0x43,0x20,0x74,0x79,0x70,0x65,0x73,0x20,0x77,0x69,0x6c,0x6c,0x20,0x6e,0x6f,\n    0x74,0x20,0x62,0x65,0x20,0x64,0x69,0x73,0x70,0x6c,0x61,0x79,0x65,0x64,0x20,0x63,\n    0x6f,0x72,0x72,0x65,0x63,0x74,0x6c,0x79,0x20,0x61,0x73,0x20,0x65,0x76,0x61,0x6c,\n    0x75,0x61,0x74,0x69,0x6f,0x6e,0x0a,0x2d,0x2d,0x20,0x68,0x61,0x73,0x20,0x61,0x20,\n    0x72,0x65,0x63,0x75,0x72,0x73,0x69,0x6f,0x6e,0x20,0x6c,0x69,0x6d,0x69,0x74,0x2c,\n    0x20,0x61,0x6e,0x79,0x20,0x66,0x75,0x72,0x74,0x68,0x65,0x72,0x20,0x65,0x76,0x61,\n    0x6c,0x75,0x61,0x74,0x69,0x6f,0x6e,0x20,0x69,0x73,0x20,0x64,0x6f,0x6e,0x65,0x20,\n    0x74,0x68,0x72,0x6f,0x75,0x67,0x68,0x20,0x72,0x65,0x66,0x65,0x72,0x65,0x6e,0x63,\n    0x65,0x73,0x2e,0x0a,0x4d,0x2e,0x69,0x6e,0x73,0x70,0x65,0x63,0x74,0x5f,0x72,0x65,\n    0x66,0x65,0x72,0x65,0x6e,0x63,0x65,0x73,0x20,0x3d,0x20,0x74,0x72,0x75,0x65,0x0a,\n    0x0a,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x20,\n    0x6d,0x61,0x6b,0x65,0x5f,0x74,0x79,0x70,0x65,0x6e,0x61,0x6d,0x65,0x28,0x72,0x65,\n    0x66,0x63,0x74,0x29,0x0a,0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x74,\n    0x20,0x3d,0x20,0x72,0x65,0x66,0x63,0x74,0x2e,0x77,0x68,0x61,0x74,0x0a,0x20,0x20,\n    0x20,0x20,0x69,0x66,0x20,0x74,0x20,0x3d,0x3d,0x20,0x22,0x69,0x6e,0x74,0x22,0x20,\n    0x74,0x68,0x65,0x6e,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x69,0x66,0x20,\n    0x72,0x65,0x66,0x63,0x74,0x2e,0x62,0x6f,0x6f,0x6c,0x20,0x74,0x68,0x65,0x6e,0x20,\n    0x74,0x20,0x3d,0x20,0x22,0x62,0x6f,0x6f,0x6c,0x22,0x0a,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x65,0x6c,0x73,0x65,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x2d,0x2d,0x20,0x75,0x73,0x65,0x20,0x43,0x39,0x39,0x20,0x74,\n    0x79,0x70,0x65,0x20,0x6e,0x6f,0x74,0x61,0x74,0x69,0x6f,0x6e,0x20,0x74,0x6f,0x20,\n    0x67,0x69,0x76,0x65,0x20,0x6d,0x6f,0x72,0x65,0x20,0x64,0x65,0x74,0x61,0x69,0x6c,\n    0x73,0x20,0x61,0x62,0x6f,0x75,0x74,0x20,0x61,0x63,0x75,0x74,0x61,0x6c,0x20,0x74,\n    0x79,0x70,0x65,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x74,0x20,0x3d,0x20,0x28,0x72,0x65,0x66,0x63,0x74,0x2e,0x75,0x6e,0x73,0x69,0x67,\n    0x6e,0x65,0x64,0x20,0x61,0x6e,0x64,0x20,0x22,0x75,0x69,0x6e,0x74,0x22,0x20,0x6f,\n    0x72,0x20,0x22,0x69,0x6e,0x74,0x22,0x29,0x20,0x2e,0x2e,0x20,0x74,0x6f,0x73,0x74,\n    0x72,0x69,0x6e,0x67,0x28,0x72,0x65,0x66,0x63,0x74,0x2e,0x73,0x69,0x7a,0x65,0x20,\n    0x2a,0x20,0x38,0x29,0x20,0x2e,0x2e,0x20,0x22,0x5f,0x74,0x22,0x0a,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,0x20,0x20,0x65,0x6c,0x73,\n    0x65,0x69,0x66,0x20,0x74,0x20,0x3d,0x3d,0x20,0x22,0x66,0x6c,0x6f,0x61,0x74,0x22,\n    0x20,0x74,0x68,0x65,0x6e,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x2d,0x2d,\n    0x20,0x61,0x73,0x73,0x75,0x6d,0x65,0x20,0x49,0x45,0x45,0x45,0x37,0x35,0x34,0x0a,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x69,0x66,0x20,0x20,0x20,0x20,0x20,0x72,\n    0x65,0x66,0x63,0x74,0x2e,0x73,0x69,0x7a,0x65,0x20,0x3d,0x3d,0x20,0x20,0x38,0x20,\n    0x74,0x68,0x65,0x6e,0x20,0x74,0x20,0x3d,0x20,0x22,0x64,0x6f,0x75,0x62,0x6c,0x65,\n    0x22,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x65,0x6c,0x73,0x65,0x69,0x66,\n    0x20,0x72,0x65,0x66,0x63,0x74,0x2e,0x73,0x69,0x7a,0x65,0x20,0x3d,0x3d,0x20,0x31,\n    0x36,0x20,0x74,0x68,0x65,0x6e,0x20,0x74,0x20,0x3d,0x20,0x22,0x6c,0x6f,0x6e,0x67,\n    0x20,0x64,0x6f,0x75,0x62,0x6c,0x65,0x22,0x20,0x2d,0x2d,0x20,0x6e,0x6f,0x74,0x20,\n    0x72,0x65,0x61,0x6c,0x6c,0x79,0x20,0x73,0x75,0x72,0x65,0x20,0x74,0x68,0x69,0x73,\n    0x20,0x6f,0x6e,0x65,0x20,0x69,0x73,0x20,0x61,0x6c,0x77,0x61,0x79,0x73,0x20,0x74,\n    0x72,0x75,0x65,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x65,0x6e,0x64,0x0a,\n    0x20,0x20,0x20,0x20,0x65,0x6c,0x73,0x65,0x69,0x66,0x20,0x74,0x20,0x3d,0x3d,0x20,\n    0x22,0x73,0x74,0x72,0x75,0x63,0x74,0x22,0x20,0x6f,0x72,0x20,0x74,0x20,0x3d,0x3d,\n    0x20,0x22,0x65,0x6e,0x75,0x6d,0x22,0x20,0x6f,0x72,0x20,0x74,0x20,0x3d,0x3d,0x20,\n    0x22,0x75,0x6e,0x69,0x6f,0x6e,0x22,0x20,0x74,0x68,0x65,0x6e,0x0a,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x74,0x20,0x3d,0x20,0x72,0x65,0x66,0x63,0x74,0x2e,0x6e,\n    0x61,0x6d,0x65,0x20,0x61,0x6e,0x64,0x20,0x28,0x74,0x20,0x2e,0x2e,0x20,0x22,0x20,\n    0x22,0x20,0x2e,0x2e,0x20,0x72,0x65,0x66,0x63,0x74,0x2e,0x6e,0x61,0x6d,0x65,0x29,\n    0x20,0x6f,0x72,0x20,0x28,0x22,0x61,0x6e,0x6f,0x6e,0x79,0x6d,0x6f,0x75,0x73,0x20,\n    0x22,0x2e,0x2e,0x74,0x29,0x0a,0x20,0x20,0x20,0x20,0x65,0x6c,0x73,0x65,0x69,0x66,\n    0x20,0x74,0x20,0x3d,0x3d,0x20,0x22,0x66,0x75,0x6e,0x63,0x22,0x20,0x74,0x68,0x65,\n    0x6e,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x74,0x20,0x3d,0x20,0x22,0x66,\n    0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x20,0x28,0x46,0x46,0x49,0x29,0x22,0x0a,0x20,\n    0x20,0x20,0x20,0x65,0x6c,0x73,0x65,0x69,0x66,0x20,0x74,0x20,0x3d,0x3d,0x20,0x22,\n    0x70,0x74,0x72,0x22,0x20,0x74,0x68,0x65,0x6e,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x74,0x20,0x3d,0x20,0x6d,0x61,0x6b,0x65,0x5f,0x74,0x79,0x70,0x65,0x6e,\n    0x61,0x6d,0x65,0x28,0x72,0x65,0x66,0x63,0x74,0x2e,0x65,0x6c,0x65,0x6d,0x65,0x6e,\n    0x74,0x5f,0x74,0x79,0x70,0x65,0x29,0x20,0x2e,0x2e,0x20,0x22,0x2a,0x22,0x0a,0x20,\n    0x20,0x20,0x20,0x65,0x6c,0x73,0x65,0x69,0x66,0x20,0x74,0x20,0x3d,0x3d,0x20,0x22,\n    0x72,0x65,0x66,0x22,0x20,0x74,0x68,0x65,0x6e,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x74,0x20,0x3d,0x20,0x6d,0x61,0x6b,0x65,0x5f,0x74,0x79,0x70,0x65,0x6e,\n    0x61,0x6d,0x65,0x28,0x72,0x65,0x66,0x63,0x74,0x2e,0x65,0x6c,0x65,0x6d,0x65,0x6e,\n    0x74,0x5f,0x74,0x79,0x70,0x65,0x29,0x20,0x2e,0x2e,0x20,0x22,0x26,0x22,0x0a,0x20,\n    0x20,0x20,0x20,0x65,0x6c,0x73,0x65,0x69,0x66,0x20,0x74,0x20,0x3d,0x3d,0x20,0x22,\n    0x66,0x69,0x65,0x6c,0x64,0x22,0x20,0x74,0x68,0x65,0x6e,0x0a,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x6d,0x61,0x6b,0x65,0x5f,\n    0x74,0x79,0x70,0x65,0x6e,0x61,0x6d,0x65,0x28,0x72,0x65,0x66,0x63,0x74,0x2e,0x74,\n    0x79,0x70,0x65,0x29,0x0a,0x20,0x20,0x20,0x20,0x65,0x6c,0x73,0x65,0x69,0x66,0x20,\n    0x74,0x20,0x3d,0x3d,0x20,0x22,0x62,0x69,0x74,0x66,0x69,0x65,0x6c,0x64,0x22,0x20,\n    0x74,0x68,0x65,0x6e,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x74,0x20,0x3d,\n    0x20,0x28,0x72,0x65,0x66,0x63,0x74,0x2e,0x74,0x79,0x70,0x65,0x2e,0x75,0x6e,0x73,\n    0x69,0x67,0x6e,0x65,0x64,0x20,0x61,0x6e,0x64,0x20,0x22,0x75,0x6e,0x73,0x69,0x67,\n    0x6e,0x65,0x64,0x22,0x20,0x6f,0x72,0x20,0x22,0x73,0x69,0x67,0x6e,0x65,0x64,0x22,\n    0x29,0x20,0x2e,0x2e,0x20,0x22,0x3a,0x22,0x20,0x2e,0x2e,0x20,0x74,0x6f,0x73,0x74,\n    0x72,0x69,0x6e,0x67,0x28,0x72,0x65,0x66,0x63,0x74,0x2e,0x73,0x69,0x7a,0x65,0x20,\n    0x2a,0x20,0x38,0x29,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x72,0x65,0x66,\n    0x63,0x74,0x20,0x3d,0x20,0x72,0x65,0x66,0x63,0x74,0x2e,0x74,0x79,0x70,0x65,0x0a,\n    0x20,0x20,0x20,0x20,0x65,0x6e,0x64,0x0a,0x0a,0x20,0x20,0x20,0x20,0x69,0x66,0x20,\n    0x72,0x65,0x66,0x63,0x74,0x2e,0x63,0x6f,0x6e,0x73,0x74,0x20,0x74,0x68,0x65,0x6e,\n    0x20,0x74,0x20,0x3d,0x20,0x22,0x63,0x6f,0x6e,0x73,0x74,0x20,0x22,0x20,0x2e,0x2e,\n    0x20,0x74,0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,0x20,0x20,0x69,0x66,0x20,0x72,0x65,\n    0x66,0x63,0x74,0x2e,0x76,0x6f,0x6c,0x61,0x74,0x69,0x6c,0x65,0x20,0x74,0x68,0x65,\n    0x6e,0x20,0x74,0x20,0x3d,0x20,0x22,0x76,0x6f,0x6c,0x61,0x74,0x69,0x6c,0x65,0x20,\n    0x22,0x20,0x2e,0x2e,0x20,0x74,0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,0x20,0x20,0x72,\n    0x65,0x74,0x75,0x72,0x6e,0x20,0x74,0x0a,0x65,0x6e,0x64,0x0a,0x0a,0x2d,0x2d,0x20,\n    0x69,0x66,0x20,0x63,0x64,0x61,0x74,0x61,0x6b,0x69,0x6e,0x64,0x20,0x69,0x73,0x20,\n    0x75,0x6e,0x6b,0x6e,0x6f,0x77,0x6e,0x2c,0x20,0x74,0x68,0x69,0x73,0x20,0x6f,0x6e,\n    0x65,0x20,0x77,0x69,0x6c,0x6c,0x20,0x62,0x65,0x20,0x63,0x61,0x6c,0x6c,0x65,0x64,\n    0x0a,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x64,0x65,0x66,0x61,0x75,0x6c,0x74,0x5f,0x69,\n    0x6e,0x73,0x70,0x65,0x63,0x74,0x6f,0x72,0x20,0x3d,0x20,0x69,0x6e,0x74,0x72,0x6f,\n    0x73,0x70,0x65,0x63,0x74,0x69,0x6f,0x6e,0x2e,0x69,0x6e,0x73,0x70,0x65,0x63,0x74,\n    0x6f,0x72,0x73,0x2e,0x6e,0x75,0x6d,0x62,0x65,0x72,0x0a,0x6c,0x6f,0x63,0x61,0x6c,\n    0x20,0x69,0x6e,0x73,0x70,0x65,0x63,0x74,0x0a,0x0a,0x2d,0x2d,0x20,0x72,0x65,0x63,\n    0x75,0x72,0x73,0x69,0x6f,0x6e,0x20,0x6d,0x75,0x73,0x74,0x20,0x62,0x65,0x20,0x68,\n    0x61,0x6e,0x64,0x6c,0x65,0x64,0x20,0x77,0x69,0x74,0x68,0x20,0x73,0x6f,0x6d,0x65,\n    0x20,0x63,0x61,0x72,0x65,0x3a,0x20,0x69,0x66,0x20,0x77,0x65,0x20,0x63,0x61,0x6c,\n    0x6c,0x20,0x72,0x65,0x67,0x75,0x6c,0x61,0x72,0x20,0x69,0x6e,0x74,0x72,0x6f,0x73,\n    0x70,0x65,0x63,0x74,0x69,0x6f,0x6e,0x2e,0x69,0x6e,0x73,0x70,0x65,0x63,0x74,0x0a,\n    0x2d,0x2d,0x20,0x77,0x65,0x20,0x6d,0x61,0x79,0x20,0x63,0x72,0x65,0x61,0x74,0x65,\n    0x20,0x62,0x6f,0x78,0x65,0x64,0x20,0x72,0x65,0x66,0x65,0x72,0x65,0x6e,0x63,0x65,\n    0x73,0x20,0x6f,0x72,0x20,0x4c,0x75,0x61,0x20,0x6e,0x61,0x74,0x69,0x76,0x65,0x20,\n    0x6f,0x62,0x6a,0x65,0x63,0x74,0x73,0x20,0x77,0x68,0x69,0x63,0x68,0x20,0x77,0x69,\n    0x6c,0x6c,0x20,0x62,0x65,0x20,0x69,0x6e,0x73,0x70,0x65,0x63,0x74,0x65,0x64,0x20,\n    0x61,0x73,0x20,0x73,0x75,0x63,0x68,0x0a,0x2d,0x2d,0x20,0x28,0x6c,0x65,0x61,0x64,\n    0x69,0x6e,0x67,0x20,0x74,0x6f,0x20,0x77,0x72,0x6f,0x6e,0x67,0x20,0x74,0x79,0x70,\n    0x65,0x20,0x6e,0x61,0x6d,0x65,0x73,0x29,0x2e,0x0a,0x6c,0x6f,0x63,0x61,0x6c,0x20,\n    0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x20,0x72,0x65,0x63,0x75,0x72,0x73,0x65,\n    0x28,0x6e,0x61,0x6d,0x65,0x2c,0x20,0x76,0x61,0x6c,0x75,0x65,0x2c,0x20,0x70,0x61,\n    0x72,0x65,0x6e,0x74,0x2c,0x20,0x66,0x75,0x6c,0x6c,0x6e,0x61,0x6d,0x65,0x2c,0x20,\n    0x72,0x65,0x66,0x63,0x74,0x29,0x0a,0x20,0x20,0x20,0x20,0x69,0x66,0x20,0x74,0x79,\n    0x70,0x65,0x28,0x76,0x61,0x6c,0x75,0x65,0x29,0x20,0x3d,0x3d,0x20,0x22,0x63,0x64,\n    0x61,0x74,0x61,0x22,0x20,0x74,0x68,0x65,0x6e,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x69,0x6e,0x73,0x70,0x65,0x63,0x74,\n    0x28,0x6e,0x61,0x6d,0x65,0x2c,0x20,0x76,0x61,0x6c,0x75,0x65,0x2c,0x20,0x70,0x61,\n    0x72,0x65,0x6e,0x74,0x2c,0x20,0x66,0x75,0x6c,0x6c,0x6e,0x61,0x6d,0x65,0x2c,0x20,\n    0x72,0x65,0x66,0x63,0x74,0x29,0x0a,0x20,0x20,0x20,0x20,0x65,0x6c,0x73,0x65,0x0a,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x70,0x72,\n    0x6f,0x70,0x20,0x3d,0x20,0x69,0x6e,0x74,0x72,0x6f,0x73,0x70,0x65,0x63,0x74,0x69,\n    0x6f,0x6e,0x2e,0x69,0x6e,0x73,0x70,0x65,0x63,0x74,0x28,0x6e,0x61,0x6d,0x65,0x2c,\n    0x20,0x76,0x61,0x6c,0x75,0x65,0x2c,0x20,0x70,0x61,0x72,0x65,0x6e,0x74,0x2c,0x20,\n    0x66,0x75,0x6c,0x6c,0x6e,0x61,0x6d,0x65,0x29,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x69,0x66,0x20,0x70,0x72,0x6f,0x70,0x20,0x74,0x68,0x65,0x6e,0x0a,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x70,0x72,0x6f,0x70,0x2e,\n    0x61,0x74,0x74,0x72,0x2e,0x74,0x79,0x70,0x65,0x20,0x3d,0x20,0x6d,0x61,0x6b,0x65,\n    0x5f,0x74,0x79,0x70,0x65,0x6e,0x61,0x6d,0x65,0x28,0x72,0x65,0x66,0x63,0x74,0x29,\n    0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x70,0x72,0x6f,0x70,\n    0x0a,0x20,0x20,0x20,0x20,0x65,0x6e,0x64,0x0a,0x65,0x6e,0x64,0x0a,0x0a,0x2d,0x2d,\n    0x20,0x63,0x64,0x61,0x74,0x61,0x20,0x73,0x70,0x65,0x63,0x69,0x66,0x69,0x63,0x20,\n    0x69,0x6e,0x73,0x70,0x65,0x63,0x74,0x6f,0x72,0x73,0x0a,0x6c,0x6f,0x63,0x61,0x6c,\n    0x20,0x69,0x6e,0x73,0x70,0x65,0x63,0x74,0x6f,0x72,0x73,0x20,0x3d,0x20,0x7b,0x0a,\n    0x20,0x20,0x20,0x20,0x73,0x74,0x72,0x75,0x63,0x74,0x20,0x3d,0x20,0x66,0x75,0x6e,\n    0x63,0x74,0x69,0x6f,0x6e,0x28,0x6e,0x61,0x6d,0x65,0x2c,0x20,0x76,0x61,0x6c,0x75,\n    0x65,0x2c,0x20,0x70,0x61,0x72,0x65,0x6e,0x74,0x2c,0x20,0x66,0x75,0x6c,0x6c,0x6e,\n    0x61,0x6d,0x65,0x2c,0x20,0x72,0x65,0x66,0x63,0x74,0x29,0x0a,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x70,0x72,0x6f,0x70,0x20,0x3d,\n    0x20,0x69,0x6e,0x74,0x72,0x6f,0x73,0x70,0x65,0x63,0x74,0x69,0x6f,0x6e,0x2e,0x70,\n    0x72,0x6f,0x70,0x65,0x72,0x74,0x79,0x28,0x6e,0x61,0x6d,0x65,0x2c,0x20,0x6d,0x61,\n    0x6b,0x65,0x5f,0x74,0x79,0x70,0x65,0x6e,0x61,0x6d,0x65,0x28,0x72,0x65,0x66,0x63,\n    0x74,0x29,0x2c,0x20,0x74,0x6f,0x73,0x74,0x72,0x69,0x6e,0x67,0x28,0x76,0x61,0x6c,\n    0x75,0x65,0x29,0x2c,0x20,0x70,0x61,0x72,0x65,0x6e,0x74,0x2c,0x20,0x66,0x75,0x6c,\n    0x6c,0x6e,0x61,0x6d,0x65,0x29,0x0a,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x2d,0x2d,0x20,0x69,0x6e,0x73,0x70,0x65,0x63,0x74,0x20,0x63,0x68,0x69,0x6c,0x64,\n    0x72,0x65,0x6e,0x2c,0x20,0x69,0x66,0x20,0x6e,0x65,0x65,0x64,0x65,0x64,0x0a,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x69,0x66,0x20,0x70,0x72,0x6f,0x70,0x20,0x74,\n    0x68,0x65,0x6e,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x66,0x6f,0x72,0x20,0x6d,0x65,0x6d,0x62,0x65,0x72,0x20,0x69,0x6e,0x20,0x72,0x65,\n    0x66,0x63,0x74,0x3a,0x6d,0x65,0x6d,0x62,0x65,0x72,0x73,0x28,0x29,0x20,0x64,0x6f,\n    0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x6d,0x6e,0x61,0x6d,0x65,0x20,0x3d,0x20,0x6d,\n    0x65,0x6d,0x62,0x65,0x72,0x2e,0x6e,0x61,0x6d,0x65,0x0a,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x72,0x65,0x63,0x75,0x72,\n    0x73,0x65,0x28,0x6d,0x6e,0x61,0x6d,0x65,0x2c,0x20,0x76,0x61,0x6c,0x75,0x65,0x5b,\n    0x6d,0x6e,0x61,0x6d,0x65,0x5d,0x2c,0x20,0x70,0x72,0x6f,0x70,0x2c,0x20,0x66,0x75,\n    0x6c,0x6c,0x6e,0x61,0x6d,0x65,0x20,0x2e,0x2e,0x20,0x73,0x66,0x6f,0x72,0x6d,0x61,\n    0x74,0x28,0x27,0x5b,0x25,0x71,0x5d,0x27,0x2c,0x20,0x6d,0x6e,0x61,0x6d,0x65,0x29,\n    0x2c,0x20,0x6d,0x65,0x6d,0x62,0x65,0x72,0x29,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x72,0x65,\n    0x74,0x75,0x72,0x6e,0x20,0x70,0x72,0x6f,0x70,0x0a,0x20,0x20,0x20,0x20,0x65,0x6e,\n    0x64,0x2c,0x0a,0x0a,0x20,0x20,0x20,0x20,0x61,0x72,0x72,0x61,0x79,0x20,0x3d,0x20,\n    0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x28,0x6e,0x61,0x6d,0x65,0x2c,0x20,0x76,\n    0x61,0x6c,0x75,0x65,0x2c,0x20,0x70,0x61,0x72,0x65,0x6e,0x74,0x2c,0x20,0x66,0x75,\n    0x6c,0x6c,0x6e,0x61,0x6d,0x65,0x2c,0x20,0x72,0x65,0x66,0x63,0x74,0x29,0x0a,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x65,0x74,0x79,\n    0x70,0x65,0x20,0x3d,0x20,0x72,0x65,0x66,0x63,0x74,0x2e,0x65,0x6c,0x65,0x6d,0x65,\n    0x6e,0x74,0x5f,0x74,0x79,0x70,0x65,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x2d,0x2d,0x20,0x66,0x6f,0x72,0x20,0x56,0x4c,0x41,0x73,0x2c,0x20,0x72,0x65,0x66,\n    0x6c,0x65,0x63,0x74,0x20,0x64,0x6f,0x65,0x73,0x20,0x6e,0x6f,0x74,0x20,0x67,0x69,\n    0x76,0x65,0x20,0x73,0x69,0x7a,0x65,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x6c,0x6f,0x63,0x61,0x6c,0x20,0x73,0x69,0x7a,0x65,0x20,0x3d,0x20,0x72,0x65,0x66,\n    0x63,0x74,0x2e,0x73,0x69,0x7a,0x65,0x20,0x7e,0x3d,0x20,0x22,0x6e,0x6f,0x6e,0x65,\n    0x22,0x20,0x61,0x6e,0x64,0x20,0x72,0x65,0x66,0x63,0x74,0x2e,0x73,0x69,0x7a,0x65,\n    0x20,0x6f,0x72,0x20,0x66,0x66,0x69,0x2e,0x73,0x69,0x7a,0x65,0x6f,0x66,0x28,0x76,\n    0x61,0x6c,0x75,0x65,0x29,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x73,0x69,\n    0x7a,0x65,0x20,0x3d,0x20,0x73,0x69,0x7a,0x65,0x20,0x61,0x6e,0x64,0x20,0x28,0x73,\n    0x69,0x7a,0x65,0x20,0x2f,0x20,0x65,0x74,0x79,0x70,0x65,0x2e,0x73,0x69,0x7a,0x65,\n    0x29,0x20,0x2d,0x2d,0x20,0x77,0x65,0x27,0x76,0x65,0x20,0x67,0x6f,0x74,0x20,0x74,\n    0x68,0x65,0x20,0x62,0x79,0x74,0x65,0x20,0x73,0x69,0x7a,0x65,0x2c,0x20,0x6e,0x6f,\n    0x74,0x20,0x65,0x6c,0x65,0x6d,0x65,0x6e,0x74,0x20,0x63,0x6f,0x75,0x6e,0x74,0x0a,\n    0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x74,\n    0x79,0x70,0x65,0x6e,0x61,0x6d,0x65,0x20,0x3d,0x20,0x6d,0x61,0x6b,0x65,0x5f,0x74,\n    0x79,0x70,0x65,0x6e,0x61,0x6d,0x65,0x28,0x65,0x74,0x79,0x70,0x65,0x29,0x0a,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x70,0x72,0x6f,\n    0x70,0x20,0x3d,0x20,0x69,0x6e,0x74,0x72,0x6f,0x73,0x70,0x65,0x63,0x74,0x69,0x6f,\n    0x6e,0x2e,0x70,0x72,0x6f,0x70,0x65,0x72,0x74,0x79,0x28,0x6e,0x61,0x6d,0x65,0x2c,\n    0x20,0x74,0x79,0x70,0x65,0x6e,0x61,0x6d,0x65,0x20,0x2e,0x2e,0x20,0x22,0x5b,0x22,\n    0x20,0x2e,0x2e,0x20,0x28,0x74,0x6f,0x73,0x74,0x72,0x69,0x6e,0x67,0x28,0x73,0x69,\n    0x7a,0x65,0x29,0x20,0x6f,0x72,0x20,0x22,0x22,0x29,0x20,0x2e,0x2e,0x20,0x22,0x5d,\n    0x22,0x2c,0x20,0x74,0x6f,0x73,0x74,0x72,0x69,0x6e,0x67,0x28,0x76,0x61,0x6c,0x75,\n    0x65,0x29,0x2c,0x20,0x70,0x61,0x72,0x65,0x6e,0x74,0x2c,0x20,0x66,0x75,0x6c,0x6c,\n    0x6e,0x61,0x6d,0x65,0x29,0x0a,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x69,\n    0x66,0x20,0x70,0x72,0x6f,0x70,0x20,0x61,0x6e,0x64,0x20,0x73,0x69,0x7a,0x65,0x20,\n    0x74,0x68,0x65,0x6e,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x66,0x6f,0x72,0x20,0x69,0x3d,0x30,0x2c,0x20,0x73,0x69,0x7a,0x65,0x2d,0x31,\n    0x20,0x64,0x6f,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x69,0x64,0x78,0x20,0x3d,0x20,\n    0x22,0x5b,0x22,0x2e,0x2e,0x74,0x6f,0x73,0x74,0x72,0x69,0x6e,0x67,0x28,0x69,0x29,\n    0x2e,0x2e,0x22,0x5d,0x22,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x72,0x65,0x63,0x75,0x72,0x73,0x65,0x28,0x69,0x64,\n    0x78,0x2c,0x20,0x76,0x61,0x6c,0x75,0x65,0x5b,0x69,0x5d,0x2c,0x20,0x70,0x72,0x6f,\n    0x70,0x2c,0x20,0x66,0x75,0x6c,0x6c,0x6e,0x61,0x6d,0x65,0x20,0x2e,0x2e,0x20,0x69,\n    0x64,0x78,0x2c,0x20,0x65,0x74,0x79,0x70,0x65,0x29,0x0a,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x72,\n    0x65,0x74,0x75,0x72,0x6e,0x20,0x70,0x72,0x6f,0x70,0x0a,0x20,0x20,0x20,0x20,0x65,\n    0x6e,0x64,0x2c,0x0a,0x0a,0x20,0x20,0x20,0x20,0x66,0x75,0x6e,0x63,0x20,0x3d,0x20,\n    0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x28,0x6e,0x61,0x6d,0x65,0x2c,0x20,0x76,\n    0x61,0x6c,0x75,0x65,0x2c,0x20,0x70,0x61,0x72,0x65,0x6e,0x74,0x2c,0x20,0x66,0x75,\n    0x6c,0x6c,0x6e,0x61,0x6d,0x65,0x2c,0x20,0x72,0x65,0x66,0x63,0x74,0x29,0x0a,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x61,0x72,0x67,\n    0x73,0x20,0x3d,0x20,0x7b,0x20,0x7d,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x66,0x6f,0x72,0x20,0x61,0x72,0x67,0x20,0x69,0x6e,0x20,0x72,0x65,0x66,0x63,0x74,\n    0x3a,0x61,0x72,0x67,0x75,0x6d,0x65,0x6e,0x74,0x73,0x28,0x29,0x20,0x64,0x6f,0x0a,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x61,0x72,0x67,0x73,\n    0x5b,0x23,0x61,0x72,0x67,0x73,0x20,0x2b,0x20,0x31,0x5d,0x20,0x3d,0x20,0x6d,0x61,\n    0x6b,0x65,0x5f,0x74,0x79,0x70,0x65,0x6e,0x61,0x6d,0x65,0x28,0x61,0x72,0x67,0x2e,\n    0x74,0x79,0x70,0x65,0x29,0x20,0x2e,0x2e,0x20,0x22,0x20,0x22,0x20,0x2e,0x2e,0x20,\n    0x61,0x72,0x67,0x2e,0x6e,0x61,0x6d,0x65,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x65,0x6e,0x64,0x0a,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x69,0x66,\n    0x20,0x72,0x65,0x66,0x63,0x74,0x2e,0x76,0x61,0x72,0x61,0x72,0x67,0x20,0x74,0x68,\n    0x65,0x6e,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x61,\n    0x72,0x67,0x73,0x5b,0x23,0x61,0x72,0x67,0x73,0x20,0x2b,0x20,0x31,0x5d,0x20,0x3d,\n    0x20,0x22,0x2e,0x2e,0x2e,0x22,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x65,\n    0x6e,0x64,0x0a,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,0x61,\n    0x6c,0x20,0x72,0x65,0x70,0x72,0x20,0x3d,0x20,0x6d,0x61,0x6b,0x65,0x5f,0x74,0x79,\n    0x70,0x65,0x6e,0x61,0x6d,0x65,0x28,0x72,0x65,0x66,0x63,0x74,0x2e,0x72,0x65,0x74,\n    0x75,0x72,0x6e,0x5f,0x74,0x79,0x70,0x65,0x29,0x20,0x2e,0x2e,0x20,0x22,0x20,0x22,\n    0x20,0x2e,0x2e,0x20,0x72,0x65,0x66,0x63,0x74,0x2e,0x6e,0x61,0x6d,0x65,0x20,0x2e,\n    0x2e,0x20,0x22,0x28,0x22,0x20,0x2e,0x2e,0x20,0x74,0x63,0x6f,0x6e,0x63,0x61,0x74,\n    0x28,0x61,0x72,0x67,0x73,0x2c,0x20,0x22,0x2c,0x20,0x22,0x29,0x20,0x2e,0x2e,0x20,\n    0x22,0x29,0x22,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x72,0x65,0x74,0x75,\n    0x72,0x6e,0x20,0x69,0x6e,0x74,0x72,0x6f,0x73,0x70,0x65,0x63,0x74,0x69,0x6f,0x6e,\n    0x2e,0x70,0x72,0x6f,0x70,0x65,0x72,0x74,0x79,0x28,0x6e,0x61,0x6d,0x65,0x2c,0x20,\n    0x6d,0x61,0x6b,0x65,0x5f,0x74,0x79,0x70,0x65,0x6e,0x61,0x6d,0x65,0x28,0x72,0x65,\n    0x66,0x63,0x74,0x29,0x2c,0x20,0x72,0x65,0x70,0x72,0x2c,0x20,0x70,0x61,0x72,0x65,\n    0x6e,0x74,0x2c,0x20,0x66,0x75,0x6c,0x6c,0x6e,0x61,0x6d,0x65,0x29,0x0a,0x20,0x20,\n    0x20,0x20,0x65,0x6e,0x64,0x2c,0x0a,0x0a,0x20,0x20,0x20,0x20,0x65,0x6e,0x75,0x6d,\n    0x20,0x3d,0x20,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x28,0x6e,0x61,0x6d,0x65,\n    0x2c,0x20,0x76,0x61,0x6c,0x75,0x65,0x2c,0x20,0x70,0x61,0x72,0x65,0x6e,0x74,0x2c,\n    0x20,0x66,0x75,0x6c,0x6c,0x6e,0x61,0x6d,0x65,0x2c,0x20,0x72,0x65,0x66,0x63,0x74,\n    0x29,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,\n    0x72,0x65,0x70,0x72,0x20,0x3d,0x20,0x74,0x6f,0x6e,0x75,0x6d,0x62,0x65,0x72,0x28,\n    0x76,0x61,0x6c,0x75,0x65,0x29,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x2d,\n    0x2d,0x20,0x74,0x72,0x79,0x20,0x74,0x6f,0x20,0x63,0x6f,0x6e,0x76,0x65,0x72,0x74,\n    0x20,0x6e,0x75,0x6d,0x65,0x72,0x69,0x63,0x20,0x76,0x61,0x6c,0x75,0x65,0x20,0x69,\n    0x6e,0x74,0x6f,0x20,0x65,0x6e,0x75,0x6d,0x20,0x6e,0x61,0x6d,0x65,0x0a,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x2d,0x2d,0x54,0x4f,0x44,0x4f,0x3a,0x20,0x69,0x73,\n    0x20,0x74,0x68,0x65,0x72,0x65,0x20,0x61,0x20,0x66,0x61,0x73,0x74,0x65,0x72,0x20,\n    0x6d,0x65,0x74,0x68,0x6f,0x64,0x20,0x74,0x6f,0x20,0x6d,0x61,0x6b,0x65,0x20,0x69,\n    0x74,0x20,0x3f,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x66,0x6f,0x72,0x20,\n    0x76,0x61,0x6c,0x20,0x69,0x6e,0x20,0x72,0x65,0x66,0x63,0x74,0x3a,0x76,0x61,0x6c,\n    0x75,0x65,0x73,0x28,0x29,0x20,0x64,0x6f,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x69,0x66,0x20,0x76,0x61,0x6c,0x2e,0x76,0x61,0x6c,0x75,\n    0x65,0x20,0x3d,0x3d,0x20,0x72,0x65,0x70,0x72,0x20,0x74,0x68,0x65,0x6e,0x0a,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x72,\n    0x65,0x70,0x72,0x20,0x3d,0x20,0x76,0x61,0x6c,0x2e,0x6e,0x61,0x6d,0x65,0x0a,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x62,\n    0x72,0x65,0x61,0x6b,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x65,0x6e,0x64,\n    0x0a,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,\n    0x20,0x69,0x6e,0x74,0x72,0x6f,0x73,0x70,0x65,0x63,0x74,0x69,0x6f,0x6e,0x2e,0x70,\n    0x72,0x6f,0x70,0x65,0x72,0x74,0x79,0x28,0x6e,0x61,0x6d,0x65,0x2c,0x20,0x6d,0x61,\n    0x6b,0x65,0x5f,0x74,0x79,0x70,0x65,0x6e,0x61,0x6d,0x65,0x28,0x72,0x65,0x66,0x63,\n    0x74,0x29,0x2c,0x20,0x74,0x6f,0x73,0x74,0x72,0x69,0x6e,0x67,0x28,0x72,0x65,0x70,\n    0x72,0x29,0x2c,0x20,0x70,0x61,0x72,0x65,0x6e,0x74,0x2c,0x20,0x66,0x75,0x6c,0x6c,\n    0x6e,0x61,0x6d,0x65,0x29,0x0a,0x20,0x20,0x20,0x20,0x65,0x6e,0x64,0x2c,0x0a,0x0a,\n    0x20,0x20,0x20,0x20,0x72,0x65,0x66,0x20,0x3d,0x20,0x66,0x75,0x6e,0x63,0x74,0x69,\n    0x6f,0x6e,0x28,0x6e,0x61,0x6d,0x65,0x2c,0x20,0x76,0x61,0x6c,0x75,0x65,0x2c,0x20,\n    0x70,0x61,0x72,0x65,0x6e,0x74,0x2c,0x20,0x66,0x75,0x6c,0x6c,0x6e,0x61,0x6d,0x65,\n    0x2c,0x20,0x72,0x65,0x66,0x63,0x74,0x29,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x2d,0x2d,0x20,0x74,0x68,0x69,0x73,0x20,0x6d,0x61,0x79,0x20,0x62,0x65,0x20,\n    0x75,0x6e,0x73,0x61,0x66,0x65,0x2c,0x20,0x73,0x65,0x65,0x20,0x69,0x6e,0x73,0x70,\n    0x65,0x63,0x74,0x5f,0x72,0x65,0x66,0x65,0x72,0x65,0x6e,0x63,0x65,0x73,0x20,0x73,\n    0x65,0x74,0x74,0x69,0x6e,0x67,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x6c,\n    0x6f,0x63,0x61,0x6c,0x20,0x74,0x79,0x70,0x65,0x6e,0x61,0x6d,0x65,0x20,0x3d,0x20,\n    0x6d,0x61,0x6b,0x65,0x5f,0x74,0x79,0x70,0x65,0x6e,0x61,0x6d,0x65,0x28,0x72,0x65,\n    0x66,0x63,0x74,0x29,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x69,0x66,0x20,\n    0x6e,0x6f,0x74,0x20,0x4d,0x2e,0x69,0x6e,0x73,0x70,0x65,0x63,0x74,0x5f,0x72,0x65,\n    0x66,0x65,0x72,0x65,0x6e,0x63,0x65,0x73,0x20,0x74,0x68,0x65,0x6e,0x0a,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,\n    0x20,0x69,0x6e,0x74,0x72,0x6f,0x73,0x70,0x65,0x63,0x74,0x69,0x6f,0x6e,0x2e,0x70,\n    0x72,0x6f,0x70,0x65,0x72,0x74,0x79,0x28,0x6e,0x61,0x6d,0x65,0x2c,0x20,0x74,0x79,\n    0x70,0x65,0x6e,0x61,0x6d,0x65,0x2c,0x20,0x74,0x6f,0x73,0x74,0x72,0x69,0x6e,0x67,\n    0x28,0x76,0x61,0x6c,0x75,0x65,0x29,0x2c,0x20,0x70,0x61,0x72,0x65,0x6e,0x74,0x2c,\n    0x20,0x66,0x75,0x6c,0x6c,0x6e,0x61,0x6d,0x65,0x29,0x0a,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x65,0x6e,0x64,0x0a,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x6c,0x6f,0x63,0x61,0x6c,0x20,0x70,0x72,0x6f,0x70,0x20,0x3d,0x20,0x72,0x65,0x63,\n    0x75,0x72,0x73,0x65,0x28,0x6e,0x61,0x6d,0x65,0x2c,0x20,0x76,0x61,0x6c,0x75,0x65,\n    0x2c,0x20,0x70,0x61,0x72,0x65,0x6e,0x74,0x2c,0x20,0x66,0x75,0x6c,0x6c,0x6e,0x61,\n    0x6d,0x65,0x2c,0x20,0x72,0x65,0x66,0x63,0x74,0x2e,0x65,0x6c,0x65,0x6d,0x65,0x6e,\n    0x74,0x5f,0x74,0x79,0x70,0x65,0x29,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x69,0x66,0x20,0x70,0x72,0x6f,0x70,0x20,0x74,0x68,0x65,0x6e,0x0a,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x70,0x72,0x6f,0x70,0x2e,0x61,0x74,\n    0x74,0x72,0x2e,0x74,0x79,0x70,0x65,0x20,0x3d,0x20,0x74,0x79,0x70,0x65,0x6e,0x61,\n    0x6d,0x65,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x65,0x6e,0x64,0x0a,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x70,0x72,\n    0x6f,0x70,0x0a,0x20,0x20,0x20,0x20,0x65,0x6e,0x64,0x2c,0x0a,0x0a,0x20,0x20,0x20,\n    0x20,0x69,0x6e,0x74,0x20,0x3d,0x20,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x28,\n    0x6e,0x61,0x6d,0x65,0x2c,0x20,0x76,0x61,0x6c,0x75,0x65,0x2c,0x20,0x70,0x61,0x72,\n    0x65,0x6e,0x74,0x2c,0x20,0x66,0x75,0x6c,0x6c,0x6e,0x61,0x6d,0x65,0x2c,0x20,0x72,\n    0x65,0x66,0x63,0x74,0x29,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x72,0x65,\n    0x74,0x75,0x72,0x6e,0x20,0x69,0x6e,0x74,0x72,0x6f,0x73,0x70,0x65,0x63,0x74,0x69,\n    0x6f,0x6e,0x2e,0x70,0x72,0x6f,0x70,0x65,0x72,0x74,0x79,0x28,0x6e,0x61,0x6d,0x65,\n    0x2c,0x20,0x6d,0x61,0x6b,0x65,0x5f,0x74,0x79,0x70,0x65,0x6e,0x61,0x6d,0x65,0x28,\n    0x72,0x65,0x66,0x63,0x74,0x29,0x2c,0x20,0x74,0x6f,0x73,0x74,0x72,0x69,0x6e,0x67,\n    0x28,0x74,0x6f,0x6e,0x75,0x6d,0x62,0x65,0x72,0x28,0x76,0x61,0x6c,0x75,0x65,0x29,\n    0x29,0x2c,0x20,0x70,0x61,0x72,0x65,0x6e,0x74,0x2c,0x20,0x66,0x75,0x6c,0x6c,0x6e,\n    0x61,0x6d,0x65,0x29,0x0a,0x20,0x20,0x20,0x20,0x65,0x6e,0x64,0x2c,0x0a,0x0a,0x20,\n    0x20,0x20,0x20,0x2d,0x2d,0x20,0x70,0x6f,0x69,0x6e,0x74,0x65,0x72,0x73,0x20,0x61,\n    0x72,0x65,0x20,0x74,0x6f,0x6f,0x20,0x75,0x6e,0x73,0x61,0x66,0x65,0x2c,0x20,0x64,\n    0x6f,0x20,0x6e,0x6f,0x74,0x20,0x69,0x6e,0x73,0x70,0x65,0x63,0x74,0x20,0x74,0x68,\n    0x65,0x6d,0x0a,0x20,0x20,0x20,0x20,0x70,0x74,0x72,0x20,0x3d,0x20,0x66,0x75,0x6e,\n    0x63,0x74,0x69,0x6f,0x6e,0x28,0x6e,0x61,0x6d,0x65,0x2c,0x20,0x76,0x61,0x6c,0x75,\n    0x65,0x2c,0x20,0x70,0x61,0x72,0x65,0x6e,0x74,0x2c,0x20,0x66,0x75,0x6c,0x6c,0x6e,\n    0x61,0x6d,0x65,0x2c,0x20,0x72,0x65,0x66,0x63,0x74,0x29,0x0a,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x69,0x6e,0x74,0x72,0x6f,\n    0x73,0x70,0x65,0x63,0x74,0x69,0x6f,0x6e,0x2e,0x70,0x72,0x6f,0x70,0x65,0x72,0x74,\n    0x79,0x28,0x6e,0x61,0x6d,0x65,0x2c,0x20,0x6d,0x61,0x6b,0x65,0x5f,0x74,0x79,0x70,\n    0x65,0x6e,0x61,0x6d,0x65,0x28,0x72,0x65,0x66,0x63,0x74,0x29,0x2c,0x20,0x74,0x6f,\n    0x73,0x74,0x72,0x69,0x6e,0x67,0x28,0x76,0x61,0x6c,0x75,0x65,0x29,0x2c,0x20,0x70,\n    0x61,0x72,0x65,0x6e,0x74,0x2c,0x20,0x66,0x75,0x6c,0x6c,0x6e,0x61,0x6d,0x65,0x29,\n    0x0a,0x20,0x20,0x20,0x20,0x65,0x6e,0x64,0x2c,0x0a,0x7d,0x0a,0x0a,0x69,0x6e,0x73,\n    0x70,0x65,0x63,0x74,0x6f,0x72,0x73,0x2e,0x75,0x6e,0x69,0x6f,0x6e,0x20,0x3d,0x20,\n    0x69,0x6e,0x73,0x70,0x65,0x63,0x74,0x6f,0x72,0x73,0x2e,0x73,0x74,0x72,0x75,0x63,\n    0x74,0x0a,0x69,0x6e,0x73,0x70,0x65,0x63,0x74,0x6f,0x72,0x73,0x2e,0x66,0x6c,0x6f,\n    0x61,0x74,0x20,0x3d,0x20,0x69,0x6e,0x73,0x70,0x65,0x63,0x74,0x6f,0x72,0x73,0x2e,\n    0x69,0x6e,0x74,0x0a,0x0a,0x2d,0x2d,0x20,0x66,0x6f,0x72,0x20,0x73,0x74,0x72,0x75,\n    0x63,0x74,0x2f,0x75,0x6e,0x69,0x6f,0x6e,0x20,0x66,0x69,0x65,0x6c,0x64,0x73,0x2c,\n    0x20,0x74,0x68,0x65,0x20,0x61,0x63,0x74,0x75,0x61,0x6c,0x20,0x74,0x79,0x70,0x65,\n    0x20,0x69,0x73,0x20,0x6e,0x65,0x73,0x74,0x65,0x64,0x20,0x69,0x6e,0x74,0x6f,0x20,\n    0x74,0x68,0x65,0x20,0x72,0x65,0x66,0x63,0x74,0x0a,0x69,0x6e,0x73,0x70,0x65,0x63,\n    0x74,0x6f,0x72,0x73,0x2e,0x66,0x69,0x65,0x6c,0x64,0x20,0x3d,0x20,0x66,0x75,0x6e,\n    0x63,0x74,0x69,0x6f,0x6e,0x28,0x6e,0x61,0x6d,0x65,0x2c,0x20,0x76,0x61,0x6c,0x75,\n    0x65,0x2c,0x20,0x70,0x61,0x72,0x65,0x6e,0x74,0x2c,0x20,0x66,0x75,0x6c,0x6c,0x6e,\n    0x61,0x6d,0x65,0x2c,0x20,0x72,0x65,0x66,0x63,0x74,0x29,0x0a,0x20,0x20,0x20,0x20,\n    0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x69,0x6e,0x73,0x70,0x65,0x63,0x74,0x28,0x6e,\n    0x61,0x6d,0x65,0x2c,0x20,0x76,0x61,0x6c,0x75,0x65,0x2c,0x20,0x70,0x61,0x72,0x65,\n    0x6e,0x74,0x2c,0x20,0x66,0x75,0x6c,0x6c,0x6e,0x61,0x6d,0x65,0x2c,0x20,0x72,0x65,\n    0x66,0x63,0x74,0x2e,0x74,0x79,0x70,0x65,0x29,0x0a,0x65,0x6e,0x64,0x0a,0x69,0x6e,\n    0x73,0x70,0x65,0x63,0x74,0x6f,0x72,0x73,0x2e,0x62,0x69,0x74,0x66,0x69,0x65,0x6c,\n    0x64,0x20,0x3d,0x20,0x69,0x6e,0x73,0x70,0x65,0x63,0x74,0x6f,0x72,0x73,0x2e,0x66,\n    0x69,0x65,0x6c,0x64,0x0a,0x0a,0x69,0x6e,0x73,0x70,0x65,0x63,0x74,0x20,0x3d,0x20,\n    0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x28,0x6e,0x61,0x6d,0x65,0x2c,0x20,0x76,\n    0x61,0x6c,0x75,0x65,0x2c,0x20,0x70,0x61,0x72,0x65,0x6e,0x74,0x2c,0x20,0x66,0x75,\n    0x6c,0x6c,0x6e,0x61,0x6d,0x65,0x2c,0x20,0x72,0x65,0x66,0x63,0x74,0x29,0x0a,0x20,\n    0x20,0x20,0x20,0x2d,0x2d,0x20,0x69,0x6e,0x73,0x70,0x65,0x63,0x74,0x20,0x6f,0x6e,\n    0x6c,0x79,0x20,0x76,0x61,0x6c,0x75,0x65,0x73,0x2c,0x20,0x6e,0x6f,0x74,0x20,0x63,\n    0x74,0x79,0x70,0x65,0x73,0x0a,0x20,0x20,0x20,0x20,0x2d,0x2d,0x46,0x49,0x58,0x4d,\n    0x45,0x3a,0x20,0x74,0x68,0x69,0x73,0x20,0x63,0x61,0x75,0x73,0x65,0x20,0x72,0x65,\n    0x66,0x65,0x72,0x65,0x6e,0x63,0x65,0x73,0x20,0x74,0x6f,0x20,0x62,0x65,0x20,0x64,\n    0x65,0x72,0x65,0x66,0x65,0x72,0x65,0x6e,0x63,0x65,0x64,0x20,0x61,0x6e,0x64,0x20,\n    0x63,0x72,0x61,0x73,0x68,0x20,0x74,0x68,0x65,0x20,0x70,0x72,0x6f,0x63,0x65,0x73,\n    0x73,0x20,0x69,0x66,0x20,0x74,0x68,0x65,0x79,0x20,0x61,0x72,0x65,0x20,0x77,0x72,\n    0x6f,0x6e,0x67,0x20,0x21,0x0a,0x20,0x20,0x20,0x20,0x69,0x66,0x20,0x66,0x66,0x69,\n    0x2e,0x74,0x79,0x70,0x65,0x6f,0x66,0x28,0x76,0x61,0x6c,0x75,0x65,0x29,0x20,0x7e,\n    0x3d,0x20,0x76,0x61,0x6c,0x75,0x65,0x20,0x74,0x68,0x65,0x6e,0x0a,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x72,0x65,0x66,0x63,0x74,0x20,0x3d,0x20,0x72,0x65,0x66,\n    0x63,0x74,0x20,0x6f,0x72,0x20,0x72,0x65,0x66,0x6c,0x65,0x63,0x74,0x2e,0x74,0x79,\n    0x70,0x65,0x6f,0x66,0x28,0x76,0x61,0x6c,0x75,0x65,0x29,0x0a,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x28,0x69,0x6e,0x73,0x70,\n    0x65,0x63,0x74,0x6f,0x72,0x73,0x5b,0x72,0x65,0x66,0x63,0x74,0x2e,0x77,0x68,0x61,\n    0x74,0x5d,0x20,0x6f,0x72,0x20,0x64,0x65,0x66,0x61,0x75,0x6c,0x74,0x5f,0x69,0x6e,\n    0x73,0x70,0x65,0x63,0x74,0x6f,0x72,0x29,0x28,0x6e,0x61,0x6d,0x65,0x2c,0x20,0x76,\n    0x61,0x6c,0x75,0x65,0x2c,0x20,0x70,0x61,0x72,0x65,0x6e,0x74,0x2c,0x20,0x66,0x75,\n    0x6c,0x6c,0x6e,0x61,0x6d,0x65,0x2c,0x20,0x72,0x65,0x66,0x63,0x74,0x29,0x0a,0x20,\n    0x20,0x20,0x20,0x65,0x6e,0x64,0x0a,0x0a,0x20,0x20,0x20,0x20,0x2d,0x2d,0x20,0x72,\n    0x65,0x74,0x75,0x72,0x6e,0x20,0x61,0x20,0x73,0x69,0x6d,0x70,0x6c,0x65,0x20,0x70,\n    0x72,0x6f,0x70,0x65,0x72,0x74,0x79,0x20,0x66,0x6f,0x72,0x20,0x63,0x74,0x79,0x70,\n    0x65,0x73,0x0a,0x20,0x20,0x20,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x69,0x6e,\n    0x74,0x72,0x6f,0x73,0x70,0x65,0x63,0x74,0x69,0x6f,0x6e,0x2e,0x70,0x72,0x6f,0x70,\n    0x65,0x72,0x74,0x79,0x28,0x6e,0x61,0x6d,0x65,0x2c,0x20,0x22,0x63,0x74,0x79,0x70,\n    0x65,0x22,0x2c,0x20,0x74,0x6f,0x73,0x74,0x72,0x69,0x6e,0x67,0x28,0x76,0x61,0x6c,\n    0x75,0x65,0x29,0x2c,0x20,0x70,0x61,0x72,0x65,0x6e,0x74,0x2c,0x20,0x66,0x75,0x6c,\n    0x6c,0x6e,0x61,0x6d,0x65,0x29,0x0a,0x65,0x6e,0x64,0x0a,0x0a,0x69,0x6e,0x74,0x72,\n    0x6f,0x73,0x70,0x65,0x63,0x74,0x69,0x6f,0x6e,0x2e,0x69,0x6e,0x73,0x70,0x65,0x63,\n    0x74,0x6f,0x72,0x73,0x2e,0x63,0x64,0x61,0x74,0x61,0x20,0x3d,0x20,0x69,0x6e,0x73,\n    0x70,0x65,0x63,0x74,0x0a,0x0a,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x4d,0x0a,0x0a,\n    0x65,0x6e,0x64,0x0a,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x0a,0x2d,0x2d,0x20,0x45,0x6e,0x64,0x20,0x6f,0x66,0x20,0x6d,\n    0x6f,0x64,0x75,0x6c,0x65,0x64,0x65,0x62,0x75,0x67,0x67,0x65,0x72,0x2e,0x70,0x6c,\n    0x75,0x67,0x69,0x6e,0x73,0x2e,0x66,0x66,0x69,0x0a,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x0a,0x0a,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x0a,0x2d,0x2d,0x20,\n    0x20,0x4d,0x6f,0x64,0x75,0x6c,0x65,0x20,0x64,0x65,0x62,0x75,0x67,0x67,0x65,0x72,\n    0x2e,0x70,0x6c,0x75,0x67,0x69,0x6e,0x73,0x2e,0x66,0x66,0x69,0x2e,0x72,0x65,0x66,\n    0x6c,0x65,0x63,0x74,0x0a,0x70,0x61,0x63,0x6b,0x61,0x67,0x65,0x2e,0x70,0x72,0x65,\n    0x6c,0x6f,0x61,0x64,0x5b,0x22,0x64,0x65,0x62,0x75,0x67,0x67,0x65,0x72,0x2e,0x70,\n    0x6c,0x75,0x67,0x69,0x6e,0x73,0x2e,0x66,0x66,0x69,0x2e,0x72,0x65,0x66,0x6c,0x65,\n    0x63,0x74,0x22,0x5d,0x20,0x3d,0x20,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x28,\n    0x2e,0x2e,0x2e,0x29,0x0a,0x2d,0x2d,0x5b,0x5b,0x20,0x4c,0x75,0x61,0x4a,0x49,0x54,\n    0x20,0x46,0x46,0x49,0x20,0x72,0x65,0x66,0x6c,0x65,0x63,0x74,0x69,0x6f,0x6e,0x20,\n    0x4c,0x69,0x62,0x72,0x61,0x72,0x79,0x20,0x5d,0x5d,0x2d,0x2d,0x0a,0x2d,0x2d,0x5b,\n    0x5b,0x20,0x43,0x6f,0x70,0x79,0x72,0x69,0x67,0x68,0x74,0x20,0x28,0x43,0x29,0x20,\n    0x32,0x30,0x31,0x33,0x20,0x50,0x65,0x74,0x65,0x72,0x20,0x43,0x61,0x77,0x6c,0x65,\n    0x79,0x20,0x3c,0x6c,0x75,0x61,0x40,0x63,0x6f,0x72,0x73,0x69,0x78,0x2e,0x6f,0x72,\n    0x67,0x3e,0x2e,0x20,0x41,0x6c,0x6c,0x20,0x72,0x69,0x67,0x68,0x74,0x73,0x20,0x72,\n    0x65,0x73,0x65,0x72,0x76,0x65,0x64,0x2e,0x0a,0x0a,0x50,0x65,0x72,0x6d,0x69,0x73,\n    0x73,0x69,0x6f,0x6e,0x20,0x69,0x73,0x20,0x68,0x65,0x72,0x65,0x62,0x79,0x20,0x67,\n    0x72,0x61,0x6e,0x74,0x65,0x64,0x2c,0x20,0x66,0x72,0x65,0x65,0x20,0x6f,0x66,0x20,\n    0x63,0x68,0x61,0x72,0x67,0x65,0x2c,0x20,0x74,0x6f,0x20,0x61,0x6e,0x79,0x20,0x70,\n    0x65,0x72,0x73,0x6f,0x6e,0x20,0x6f,0x62,0x74,0x61,0x69,0x6e,0x69,0x6e,0x67,0x20,\n    0x61,0x20,0x63,0x6f,0x70,0x79,0x0a,0x6f,0x66,0x20,0x74,0x68,0x69,0x73,0x20,0x73,\n    0x6f,0x66,0x74,0x77,0x61,0x72,0x65,0x20,0x61,0x6e,0x64,0x20,0x61,0x73,0x73,0x6f,\n    0x63,0x69,0x61,0x74,0x65,0x64,0x20,0x64,0x6f,0x63,0x75,0x6d,0x65,0x6e,0x74,0x61,\n    0x74,0x69,0x6f,0x6e,0x20,0x66,0x69,0x6c,0x65,0x73,0x20,0x28,0x74,0x68,0x65,0x20,\n    0x22,0x53,0x6f,0x66,0x74,0x77,0x61,0x72,0x65,0x22,0x29,0x2c,0x20,0x74,0x6f,0x20,\n    0x64,0x65,0x61,0x6c,0x0a,0x69,0x6e,0x20,0x74,0x68,0x65,0x20,0x53,0x6f,0x66,0x74,\n    0x77,0x61,0x72,0x65,0x20,0x77,0x69,0x74,0x68,0x6f,0x75,0x74,0x20,0x72,0x65,0x73,\n    0x74,0x72,0x69,0x63,0x74,0x69,0x6f,0x6e,0x2c,0x20,0x69,0x6e,0x63,0x6c,0x75,0x64,\n    0x69,0x6e,0x67,0x20,0x77,0x69,0x74,0x68,0x6f,0x75,0x74,0x20,0x6c,0x69,0x6d,0x69,\n    0x74,0x61,0x74,0x69,0x6f,0x6e,0x20,0x74,0x68,0x65,0x20,0x72,0x69,0x67,0x68,0x74,\n    0x73,0x0a,0x74,0x6f,0x20,0x75,0x73,0x65,0x2c,0x20,0x63,0x6f,0x70,0x79,0x2c,0x20,\n    0x6d,0x6f,0x64,0x69,0x66,0x79,0x2c,0x20,0x6d,0x65,0x72,0x67,0x65,0x2c,0x20,0x70,\n    0x75,0x62,0x6c,0x69,0x73,0x68,0x2c,0x20,0x64,0x69,0x73,0x74,0x72,0x69,0x62,0x75,\n    0x74,0x65,0x2c,0x20,0x73,0x75,0x62,0x6c,0x69,0x63,0x65,0x6e,0x73,0x65,0x2c,0x20,\n    0x61,0x6e,0x64,0x2f,0x6f,0x72,0x20,0x73,0x65,0x6c,0x6c,0x0a,0x63,0x6f,0x70,0x69,\n    0x65,0x73,0x20,0x6f,0x66,0x20,0x74,0x68,0x65,0x20,0x53,0x6f,0x66,0x74,0x77,0x61,\n    0x72,0x65,0x2c,0x20,0x61,0x6e,0x64,0x20,0x74,0x6f,0x20,0x70,0x65,0x72,0x6d,0x69,\n    0x74,0x20,0x70,0x65,0x72,0x73,0x6f,0x6e,0x73,0x20,0x74,0x6f,0x20,0x77,0x68,0x6f,\n    0x6d,0x20,0x74,0x68,0x65,0x20,0x53,0x6f,0x66,0x74,0x77,0x61,0x72,0x65,0x20,0x69,\n    0x73,0x0a,0x66,0x75,0x72,0x6e,0x69,0x73,0x68,0x65,0x64,0x20,0x74,0x6f,0x20,0x64,\n    0x6f,0x20,0x73,0x6f,0x2c,0x20,0x73,0x75,0x62,0x6a,0x65,0x63,0x74,0x20,0x74,0x6f,\n    0x20,0x74,0x68,0x65,0x20,0x66,0x6f,0x6c,0x6c,0x6f,0x77,0x69,0x6e,0x67,0x20,0x63,\n    0x6f,0x6e,0x64,0x69,0x74,0x69,0x6f,0x6e,0x73,0x3a,0x0a,0x0a,0x54,0x68,0x65,0x20,\n    0x61,0x62,0x6f,0x76,0x65,0x20,0x63,0x6f,0x70,0x79,0x72,0x69,0x67,0x68,0x74,0x20,\n    0x6e,0x6f,0x74,0x69,0x63,0x65,0x20,0x61,0x6e,0x64,0x20,0x74,0x68,0x69,0x73,0x20,\n    0x70,0x65,0x72,0x6d,0x69,0x73,0x73,0x69,0x6f,0x6e,0x20,0x6e,0x6f,0x74,0x69,0x63,\n    0x65,0x20,0x73,0x68,0x61,0x6c,0x6c,0x20,0x62,0x65,0x20,0x69,0x6e,0x63,0x6c,0x75,\n    0x64,0x65,0x64,0x20,0x69,0x6e,0x0a,0x61,0x6c,0x6c,0x20,0x63,0x6f,0x70,0x69,0x65,\n    0x73,0x20,0x6f,0x72,0x20,0x73,0x75,0x62,0x73,0x74,0x61,0x6e,0x74,0x69,0x61,0x6c,\n    0x20,0x70,0x6f,0x72,0x74,0x69,0x6f,0x6e,0x73,0x20,0x6f,0x66,0x20,0x74,0x68,0x65,\n    0x20,0x53,0x6f,0x66,0x74,0x77,0x61,0x72,0x65,0x2e,0x0a,0x0a,0x54,0x48,0x45,0x20,\n    0x53,0x4f,0x46,0x54,0x57,0x41,0x52,0x45,0x20,0x49,0x53,0x20,0x50,0x52,0x4f,0x56,\n    0x49,0x44,0x45,0x44,0x20,0x22,0x41,0x53,0x20,0x49,0x53,0x22,0x2c,0x20,0x57,0x49,\n    0x54,0x48,0x4f,0x55,0x54,0x20,0x57,0x41,0x52,0x52,0x41,0x4e,0x54,0x59,0x20,0x4f,\n    0x46,0x20,0x41,0x4e,0x59,0x20,0x4b,0x49,0x4e,0x44,0x2c,0x20,0x45,0x58,0x50,0x52,\n    0x45,0x53,0x53,0x20,0x4f,0x52,0x0a,0x49,0x4d,0x50,0x4c,0x49,0x45,0x44,0x2c,0x20,\n    0x49,0x4e,0x43,0x4c,0x55,0x44,0x49,0x4e,0x47,0x20,0x42,0x55,0x54,0x20,0x4e,0x4f,\n    0x54,0x20,0x4c,0x49,0x4d,0x49,0x54,0x45,0x44,0x20,0x54,0x4f,0x20,0x54,0x48,0x45,\n    0x20,0x57,0x41,0x52,0x52,0x41,0x4e,0x54,0x49,0x45,0x53,0x20,0x4f,0x46,0x20,0x4d,\n    0x45,0x52,0x43,0x48,0x41,0x4e,0x54,0x41,0x42,0x49,0x4c,0x49,0x54,0x59,0x2c,0x0a,\n    0x46,0x49,0x54,0x4e,0x45,0x53,0x53,0x20,0x46,0x4f,0x52,0x20,0x41,0x20,0x50,0x41,\n    0x52,0x54,0x49,0x43,0x55,0x4c,0x41,0x52,0x20,0x50,0x55,0x52,0x50,0x4f,0x53,0x45,\n    0x20,0x41,0x4e,0x44,0x20,0x4e,0x4f,0x4e,0x49,0x4e,0x46,0x52,0x49,0x4e,0x47,0x45,\n    0x4d,0x45,0x4e,0x54,0x2e,0x20,0x20,0x49,0x4e,0x20,0x4e,0x4f,0x20,0x45,0x56,0x45,\n    0x4e,0x54,0x20,0x53,0x48,0x41,0x4c,0x4c,0x20,0x54,0x48,0x45,0x0a,0x41,0x55,0x54,\n    0x48,0x4f,0x52,0x53,0x20,0x4f,0x52,0x20,0x43,0x4f,0x50,0x59,0x52,0x49,0x47,0x48,\n    0x54,0x20,0x48,0x4f,0x4c,0x44,0x45,0x52,0x53,0x20,0x42,0x45,0x20,0x4c,0x49,0x41,\n    0x42,0x4c,0x45,0x20,0x46,0x4f,0x52,0x20,0x41,0x4e,0x59,0x20,0x43,0x4c,0x41,0x49,\n    0x4d,0x2c,0x20,0x44,0x41,0x4d,0x41,0x47,0x45,0x53,0x20,0x4f,0x52,0x20,0x4f,0x54,\n    0x48,0x45,0x52,0x0a,0x4c,0x49,0x41,0x42,0x49,0x4c,0x49,0x54,0x59,0x2c,0x20,0x57,\n    0x48,0x45,0x54,0x48,0x45,0x52,0x20,0x49,0x4e,0x20,0x41,0x4e,0x20,0x41,0x43,0x54,\n    0x49,0x4f,0x4e,0x20,0x4f,0x46,0x20,0x43,0x4f,0x4e,0x54,0x52,0x41,0x43,0x54,0x2c,\n    0x20,0x54,0x4f,0x52,0x54,0x20,0x4f,0x52,0x20,0x4f,0x54,0x48,0x45,0x52,0x57,0x49,\n    0x53,0x45,0x2c,0x20,0x41,0x52,0x49,0x53,0x49,0x4e,0x47,0x20,0x46,0x52,0x4f,0x4d,\n    0x2c,0x0a,0x4f,0x55,0x54,0x20,0x4f,0x46,0x20,0x4f,0x52,0x20,0x49,0x4e,0x20,0x43,\n    0x4f,0x4e,0x4e,0x45,0x43,0x54,0x49,0x4f,0x4e,0x20,0x57,0x49,0x54,0x48,0x20,0x54,\n    0x48,0x45,0x20,0x53,0x4f,0x46,0x54,0x57,0x41,0x52,0x45,0x20,0x4f,0x52,0x20,0x54,\n    0x48,0x45,0x20,0x55,0x53,0x45,0x20,0x4f,0x52,0x20,0x4f,0x54,0x48,0x45,0x52,0x20,\n    0x44,0x45,0x41,0x4c,0x49,0x4e,0x47,0x53,0x20,0x49,0x4e,0x0a,0x54,0x48,0x45,0x20,\n    0x53,0x4f,0x46,0x54,0x57,0x41,0x52,0x45,0x2e,0x0a,0x2d,0x2d,0x5d,0x5d,0x0a,0x6c,\n    0x6f,0x63,0x61,0x6c,0x20,0x66,0x66,0x69,0x20,0x3d,0x20,0x72,0x65,0x71,0x75,0x69,\n    0x72,0x65,0x20,0x22,0x66,0x66,0x69,0x22,0x0a,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x62,\n    0x69,0x74,0x20,0x3d,0x20,0x72,0x65,0x71,0x75,0x69,0x72,0x65,0x20,0x22,0x62,0x69,\n    0x74,0x22,0x0a,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x72,0x65,0x66,0x6c,0x65,0x63,0x74,\n    0x20,0x3d,0x20,0x7b,0x7d,0x0a,0x0a,0x2d,0x2d,0x20,0x52,0x65,0x6c,0x65,0x76,0x61,\n    0x6e,0x74,0x20,0x6d,0x69,0x6e,0x69,0x6d,0x61,0x6c,0x20,0x64,0x65,0x66,0x69,0x6e,\n    0x69,0x74,0x69,0x6f,0x6e,0x73,0x20,0x66,0x72,0x6f,0x6d,0x20,0x6c,0x6a,0x5f,0x63,\n    0x74,0x79,0x70,0x65,0x2e,0x68,0x0a,0x66,0x66,0x69,0x2e,0x63,0x64,0x65,0x66,0x20,\n    0x5b,0x5b,0x0a,0x20,0x20,0x74,0x79,0x70,0x65,0x64,0x65,0x66,0x20,0x73,0x74,0x72,\n    0x75,0x63,0x74,0x20,0x43,0x54,0x79,0x70,0x65,0x20,0x7b,0x0a,0x20,0x20,0x20,0x20,\n    0x75,0x69,0x6e,0x74,0x33,0x32,0x5f,0x74,0x20,0x69,0x6e,0x66,0x6f,0x3b,0x0a,0x20,\n    0x20,0x20,0x20,0x75,0x69,0x6e,0x74,0x33,0x32,0x5f,0x74,0x20,0x73,0x69,0x7a,0x65,\n    0x3b,0x0a,0x20,0x20,0x20,0x20,0x75,0x69,0x6e,0x74,0x31,0x36,0x5f,0x74,0x20,0x73,\n    0x69,0x62,0x3b,0x0a,0x20,0x20,0x20,0x20,0x75,0x69,0x6e,0x74,0x31,0x36,0x5f,0x74,\n    0x20,0x6e,0x65,0x78,0x74,0x3b,0x0a,0x20,0x20,0x20,0x20,0x75,0x69,0x6e,0x74,0x33,\n    0x32,0x5f,0x74,0x20,0x6e,0x61,0x6d,0x65,0x3b,0x0a,0x20,0x20,0x7d,0x20,0x43,0x54,\n    0x79,0x70,0x65,0x3b,0x0a,0x0a,0x20,0x20,0x74,0x79,0x70,0x65,0x64,0x65,0x66,0x20,\n    0x73,0x74,0x72,0x75,0x63,0x74,0x20,0x43,0x54,0x53,0x74,0x61,0x74,0x65,0x20,0x7b,\n    0x0a,0x20,0x20,0x20,0x20,0x43,0x54,0x79,0x70,0x65,0x20,0x2a,0x74,0x61,0x62,0x3b,\n    0x0a,0x20,0x20,0x20,0x20,0x75,0x69,0x6e,0x74,0x33,0x32,0x5f,0x74,0x20,0x74,0x6f,\n    0x70,0x3b,0x0a,0x20,0x20,0x20,0x20,0x75,0x69,0x6e,0x74,0x33,0x32,0x5f,0x74,0x20,\n    0x73,0x69,0x7a,0x65,0x74,0x61,0x62,0x3b,0x0a,0x20,0x20,0x20,0x20,0x76,0x6f,0x69,\n    0x64,0x20,0x2a,0x4c,0x3b,0x0a,0x20,0x20,0x20,0x20,0x76,0x6f,0x69,0x64,0x20,0x2a,\n    0x67,0x3b,0x0a,0x20,0x20,0x20,0x20,0x76,0x6f,0x69,0x64,0x20,0x2a,0x66,0x69,0x6e,\n    0x61,0x6c,0x69,0x7a,0x65,0x72,0x3b,0x0a,0x20,0x20,0x20,0x20,0x76,0x6f,0x69,0x64,\n    0x20,0x2a,0x6d,0x69,0x73,0x63,0x6d,0x61,0x70,0x3b,0x0a,0x20,0x20,0x7d,0x20,0x43,\n    0x54,0x53,0x74,0x61,0x74,0x65,0x3b,0x0a,0x5d,0x5d,0x0a,0x0a,0x6c,0x6f,0x63,0x61,\n    0x6c,0x20,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x20,0x67,0x63,0x5f,0x73,0x74,\n    0x72,0x28,0x67,0x63,0x72,0x65,0x66,0x29,0x20,0x2d,0x2d,0x20,0x43,0x6f,0x6e,0x76,\n    0x65,0x72,0x74,0x20,0x61,0x20,0x47,0x43,0x72,0x65,0x66,0x20,0x28,0x74,0x6f,0x20,\n    0x61,0x20,0x47,0x43,0x73,0x74,0x72,0x29,0x20,0x69,0x6e,0x74,0x6f,0x20,0x61,0x20,\n    0x73,0x74,0x72,0x69,0x6e,0x67,0x0a,0x20,0x20,0x69,0x66,0x20,0x67,0x63,0x72,0x65,\n    0x66,0x20,0x7e,0x3d,0x20,0x30,0x20,0x74,0x68,0x65,0x6e,0x0a,0x20,0x20,0x20,0x20,\n    0x6c,0x6f,0x63,0x61,0x6c,0x20,0x74,0x73,0x20,0x3d,0x20,0x66,0x66,0x69,0x2e,0x63,\n    0x61,0x73,0x74,0x28,0x22,0x75,0x69,0x6e,0x74,0x33,0x32,0x5f,0x74,0x2a,0x22,0x2c,\n    0x20,0x67,0x63,0x72,0x65,0x66,0x29,0x0a,0x20,0x20,0x20,0x20,0x72,0x65,0x74,0x75,\n    0x72,0x6e,0x20,0x66,0x66,0x69,0x2e,0x73,0x74,0x72,0x69,0x6e,0x67,0x28,0x74,0x73,\n    0x20,0x2b,0x20,0x34,0x2c,0x20,0x74,0x73,0x5b,0x33,0x5d,0x29,0x0a,0x20,0x20,0x65,\n    0x6e,0x64,0x0a,0x65,0x6e,0x64,0x0a,0x0a,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x66,0x75,\n    0x6e,0x63,0x74,0x69,0x6f,0x6e,0x20,0x6d,0x65,0x6d,0x70,0x74,0x72,0x28,0x67,0x63,\n    0x6f,0x62,0x6a,0x29,0x0a,0x20,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x74,0x6f,\n    0x6e,0x75,0x6d,0x62,0x65,0x72,0x28,0x74,0x6f,0x73,0x74,0x72,0x69,0x6e,0x67,0x28,\n    0x67,0x63,0x6f,0x62,0x6a,0x29,0x3a,0x6d,0x61,0x74,0x63,0x68,0x22,0x25,0x78,0x2a,\n    0x24,0x22,0x2c,0x20,0x31,0x36,0x29,0x0a,0x65,0x6e,0x64,0x0a,0x0a,0x2d,0x2d,0x20,\n    0x41,0x63,0x71,0x75,0x69,0x72,0x65,0x20,0x61,0x20,0x70,0x6f,0x69,0x6e,0x74,0x65,\n    0x72,0x20,0x74,0x6f,0x20,0x74,0x68,0x69,0x73,0x20,0x4c,0x75,0x61,0x20,0x75,0x6e,\n    0x69,0x76,0x65,0x72,0x73,0x65,0x27,0x73,0x20,0x43,0x54,0x53,0x74,0x61,0x74,0x65,\n    0x0a,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x43,0x54,0x53,0x74,0x61,0x74,0x65,0x20,0x64,\n    0x6f,0x0a,0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x63,0x6f,0x20,0x3d,0x20,0x63,\n    0x6f,0x72,0x6f,0x75,0x74,0x69,0x6e,0x65,0x2e,0x63,0x72,0x65,0x61,0x74,0x65,0x28,\n    0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x28,0x29,0x65,0x6e,0x64,0x29,0x20,0x2d,\n    0x2d,0x20,0x41,0x6e,0x79,0x20,0x6c,0x69,0x76,0x65,0x20,0x63,0x6f,0x72,0x6f,0x75,\n    0x74,0x69,0x6e,0x65,0x20,0x77,0x69,0x6c,0x6c,0x20,0x64,0x6f,0x2e,0x0a,0x20,0x20,\n    0x6c,0x6f,0x63,0x61,0x6c,0x20,0x75,0x69,0x6e,0x74,0x33,0x32,0x5f,0x70,0x74,0x72,\n    0x20,0x3d,0x20,0x66,0x66,0x69,0x2e,0x74,0x79,0x70,0x65,0x6f,0x66,0x28,0x22,0x75,\n    0x69,0x6e,0x74,0x33,0x32,0x5f,0x74,0x2a,0x22,0x29,0x0a,0x20,0x20,0x6c,0x6f,0x63,\n    0x61,0x6c,0x20,0x47,0x20,0x3d,0x20,0x66,0x66,0x69,0x2e,0x63,0x61,0x73,0x74,0x28,\n    0x75,0x69,0x6e,0x74,0x33,0x32,0x5f,0x70,0x74,0x72,0x2c,0x20,0x66,0x66,0x69,0x2e,\n    0x63,0x61,0x73,0x74,0x28,0x75,0x69,0x6e,0x74,0x33,0x32,0x5f,0x70,0x74,0x72,0x2c,\n    0x20,0x6d,0x65,0x6d,0x70,0x74,0x72,0x28,0x63,0x6f,0x29,0x29,0x5b,0x32,0x5d,0x29,\n    0x0a,0x20,0x20,0x2d,0x2d,0x20,0x49,0x6e,0x20,0x67,0x6c,0x6f,0x62,0x61,0x6c,0x5f,\n    0x53,0x74,0x61,0x74,0x65,0x2c,0x20,0x60,0x4d,0x52,0x65,0x66,0x20,0x63,0x74,0x79,\n    0x70,0x65,0x5f,0x73,0x74,0x61,0x74,0x65,0x60,0x20,0x69,0x73,0x20,0x69,0x6d,0x6d,\n    0x65,0x64,0x69,0x61,0x74,0x65,0x6c,0x79,0x20,0x62,0x65,0x66,0x6f,0x72,0x65,0x20,\n    0x60,0x47,0x43,0x52,0x65,0x66,0x20,0x67,0x63,0x72,0x6f,0x6f,0x74,0x5b,0x47,0x43,\n    0x52,0x4f,0x4f,0x54,0x5f,0x4d,0x41,0x58,0x5d,0x60,0x2e,0x0a,0x20,0x20,0x2d,0x2d,\n    0x20,0x57,0x65,0x20,0x66,0x69,0x72,0x73,0x74,0x20,0x66,0x69,0x6e,0x64,0x20,0x28,\n    0x61,0x6e,0x20,0x65,0x6e,0x74,0x72,0x79,0x20,0x69,0x6e,0x29,0x20,0x67,0x63,0x72,\n    0x6f,0x6f,0x74,0x20,0x62,0x79,0x20,0x6c,0x6f,0x6f,0x6b,0x69,0x6e,0x67,0x20,0x66,\n    0x6f,0x72,0x20,0x61,0x20,0x6d,0x65,0x74,0x61,0x6d,0x65,0x74,0x68,0x6f,0x64,0x20,\n    0x6e,0x61,0x6d,0x65,0x20,0x73,0x74,0x72,0x69,0x6e,0x67,0x2e,0x0a,0x20,0x20,0x6c,\n    0x6f,0x63,0x61,0x6c,0x20,0x61,0x6e,0x63,0x68,0x6f,0x72,0x20,0x3d,0x20,0x66,0x66,\n    0x69,0x2e,0x63,0x61,0x73,0x74,0x28,0x22,0x75,0x69,0x6e,0x74,0x33,0x32,0x5f,0x74,\n    0x22,0x2c,0x20,0x66,0x66,0x69,0x2e,0x63,0x61,0x73,0x74,0x28,0x22,0x63,0x6f,0x6e,\n    0x73,0x74,0x20,0x63,0x68,0x61,0x72,0x2a,0x22,0x2c,0x20,0x22,0x5f,0x5f,0x69,0x6e,\n    0x64,0x65,0x78,0x22,0x29,0x29,0x0a,0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x69,\n    0x20,0x3d,0x20,0x30,0x0a,0x20,0x20,0x77,0x68,0x69,0x6c,0x65,0x20,0x6d,0x61,0x74,\n    0x68,0x2e,0x61,0x62,0x73,0x28,0x74,0x6f,0x6e,0x75,0x6d,0x62,0x65,0x72,0x28,0x47,\n    0x5b,0x69,0x5d,0x20,0x2d,0x20,0x61,0x6e,0x63,0x68,0x6f,0x72,0x29,0x29,0x20,0x3e,\n    0x20,0x36,0x34,0x20,0x64,0x6f,0x0a,0x20,0x20,0x20,0x20,0x69,0x20,0x3d,0x20,0x69,\n    0x20,0x2b,0x20,0x31,0x0a,0x20,0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,0x2d,0x2d,0x20,\n    0x57,0x65,0x20,0x74,0x68,0x65,0x6e,0x20,0x77,0x6f,0x72,0x6b,0x20,0x62,0x61,0x63,\n    0x6b,0x77,0x61,0x72,0x64,0x73,0x20,0x6c,0x6f,0x6f,0x6b,0x69,0x6e,0x67,0x20,0x66,\n    0x6f,0x72,0x20,0x73,0x6f,0x6d,0x65,0x74,0x68,0x69,0x6e,0x67,0x20,0x72,0x65,0x73,\n    0x65,0x6d,0x62,0x6c,0x69,0x6e,0x67,0x20,0x63,0x74,0x79,0x70,0x65,0x5f,0x73,0x74,\n    0x61,0x74,0x65,0x2e,0x0a,0x20,0x20,0x72,0x65,0x70,0x65,0x61,0x74,0x0a,0x20,0x20,\n    0x20,0x20,0x69,0x20,0x3d,0x20,0x69,0x20,0x2d,0x20,0x31,0x0a,0x20,0x20,0x20,0x20,\n    0x43,0x54,0x53,0x74,0x61,0x74,0x65,0x20,0x3d,0x20,0x66,0x66,0x69,0x2e,0x63,0x61,\n    0x73,0x74,0x28,0x22,0x43,0x54,0x53,0x74,0x61,0x74,0x65,0x2a,0x22,0x2c,0x20,0x47,\n    0x5b,0x69,0x5d,0x29,0x0a,0x20,0x20,0x75,0x6e,0x74,0x69,0x6c,0x20,0x66,0x66,0x69,\n    0x2e,0x63,0x61,0x73,0x74,0x28,0x75,0x69,0x6e,0x74,0x33,0x32,0x5f,0x70,0x74,0x72,\n    0x2c,0x20,0x43,0x54,0x53,0x74,0x61,0x74,0x65,0x2e,0x67,0x29,0x20,0x3d,0x3d,0x20,\n    0x47,0x0a,0x65,0x6e,0x64,0x0a,0x0a,0x2d,0x2d,0x20,0x41,0x63,0x71,0x75,0x69,0x72,\n    0x65,0x20,0x74,0x68,0x65,0x20,0x43,0x54,0x53,0x74,0x61,0x74,0x65,0x27,0x73,0x20,\n    0x6d,0x69,0x73,0x63,0x6d,0x61,0x70,0x20,0x74,0x61,0x62,0x6c,0x65,0x20,0x61,0x73,\n    0x20,0x61,0x20,0x4c,0x75,0x61,0x20,0x76,0x61,0x72,0x69,0x61,0x62,0x6c,0x65,0x0a,\n    0x6c,0x6f,0x63,0x61,0x6c,0x20,0x6d,0x69,0x73,0x63,0x6d,0x61,0x70,0x20,0x64,0x6f,\n    0x0a,0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x74,0x20,0x3d,0x20,0x7b,0x7d,0x3b,\n    0x20,0x74,0x5b,0x30,0x5d,0x20,0x3d,0x20,0x74,0x0a,0x20,0x20,0x6c,0x6f,0x63,0x61,\n    0x6c,0x20,0x74,0x76,0x61,0x6c,0x75,0x65,0x20,0x3d,0x20,0x66,0x66,0x69,0x2e,0x63,\n    0x61,0x73,0x74,0x28,0x22,0x75,0x69,0x6e,0x74,0x33,0x32,0x5f,0x74,0x2a,0x22,0x2c,\n    0x20,0x6d,0x65,0x6d,0x70,0x74,0x72,0x28,0x74,0x29,0x29,0x5b,0x32,0x5d,0x0a,0x20,\n    0x20,0x66,0x66,0x69,0x2e,0x63,0x61,0x73,0x74,0x28,0x22,0x75,0x69,0x6e,0x74,0x33,\n    0x32,0x5f,0x74,0x2a,0x22,0x2c,0x20,0x74,0x76,0x61,0x6c,0x75,0x65,0x29,0x5b,0x66,\n    0x66,0x69,0x2e,0x61,0x62,0x69,0x22,0x6c,0x65,0x22,0x20,0x61,0x6e,0x64,0x20,0x30,\n    0x20,0x6f,0x72,0x20,0x31,0x5d,0x20,0x3d,0x20,0x66,0x66,0x69,0x2e,0x63,0x61,0x73,\n    0x74,0x28,0x22,0x75,0x69,0x6e,0x74,0x33,0x32,0x5f,0x74,0x22,0x2c,0x20,0x66,0x66,\n    0x69,0x2e,0x63,0x61,0x73,0x74,0x28,0x22,0x75,0x69,0x6e,0x74,0x70,0x74,0x72,0x5f,\n    0x74,0x22,0x2c,0x20,0x43,0x54,0x53,0x74,0x61,0x74,0x65,0x2e,0x6d,0x69,0x73,0x63,\n    0x6d,0x61,0x70,0x29,0x29,0x0a,0x20,0x20,0x6d,0x69,0x73,0x63,0x6d,0x61,0x70,0x20,\n    0x3d,0x20,0x74,0x5b,0x30,0x5d,0x0a,0x65,0x6e,0x64,0x0a,0x0a,0x2d,0x2d,0x20,0x49,\n    0x6e,0x66,0x6f,0x72,0x6d,0x61,0x74,0x69,0x6f,0x6e,0x20,0x66,0x6f,0x72,0x20,0x75,\n    0x6e,0x70,0x61,0x63,0x6b,0x69,0x6e,0x67,0x20,0x61,0x20,0x60,0x73,0x74,0x72,0x75,\n    0x63,0x74,0x20,0x43,0x54,0x79,0x70,0x65,0x60,0x2e,0x0a,0x2d,0x2d,0x20,0x4f,0x6e,\n    0x65,0x20,0x74,0x61,0x62,0x6c,0x65,0x20,0x70,0x65,0x72,0x20,0x43,0x54,0x5f,0x2a,\n    0x20,0x63,0x6f,0x6e,0x73,0x74,0x61,0x6e,0x74,0x2c,0x20,0x63,0x6f,0x6e,0x74,0x61,\n    0x69,0x6e,0x69,0x6e,0x67,0x3a,0x0a,0x2d,0x2d,0x20,0x2a,0x20,0x41,0x20,0x6e,0x61,\n    0x6d,0x65,0x20,0x66,0x6f,0x72,0x20,0x74,0x68,0x61,0x74,0x20,0x43,0x54,0x5f,0x0a,\n    0x2d,0x2d,0x20,0x2a,0x20,0x52,0x6f,0x6c,0x65,0x73,0x20,0x6f,0x66,0x20,0x74,0x68,\n    0x65,0x20,0x63,0x69,0x64,0x20,0x61,0x6e,0x64,0x20,0x73,0x69,0x7a,0x65,0x20,0x66,\n    0x69,0x65,0x6c,0x64,0x73,0x2e,0x0a,0x2d,0x2d,0x20,0x2a,0x20,0x57,0x68,0x65,0x74,\n    0x68,0x65,0x72,0x20,0x74,0x68,0x65,0x20,0x73,0x69,0x62,0x20,0x66,0x69,0x65,0x6c,\n    0x64,0x20,0x69,0x73,0x20,0x6d,0x65,0x61,0x6e,0x69,0x6e,0x67,0x66,0x75,0x6c,0x2e,\n    0x0a,0x2d,0x2d,0x20,0x2a,0x20,0x5a,0x65,0x72,0x6f,0x20,0x6f,0x72,0x20,0x6d,0x6f,\n    0x72,0x65,0x20,0x61,0x70,0x70,0x6c,0x69,0x63,0x61,0x62,0x6c,0x65,0x20,0x62,0x6f,\n    0x6f,0x6c,0x65,0x61,0x6e,0x20,0x66,0x6c,0x61,0x67,0x73,0x2e,0x0a,0x6c,0x6f,0x63,\n    0x61,0x6c,0x20,0x43,0x54,0x73,0x20,0x3d,0x20,0x7b,0x5b,0x30,0x5d,0x20,0x3d,0x0a,\n    0x20,0x20,0x7b,0x22,0x69,0x6e,0x74,0x22,0x2c,0x0a,0x20,0x20,0x20,0x20,0x22,0x22,\n    0x2c,0x20,0x22,0x73,0x69,0x7a,0x65,0x22,0x2c,0x20,0x66,0x61,0x6c,0x73,0x65,0x2c,\n    0x0a,0x20,0x20,0x20,0x20,0x7b,0x30,0x78,0x30,0x38,0x30,0x30,0x30,0x30,0x30,0x30,\n    0x2c,0x20,0x22,0x62,0x6f,0x6f,0x6c,0x22,0x7d,0x2c,0x0a,0x20,0x20,0x20,0x20,0x7b,\n    0x30,0x78,0x30,0x34,0x30,0x30,0x30,0x30,0x30,0x30,0x2c,0x20,0x22,0x66,0x6c,0x6f,\n    0x61,0x74,0x22,0x2c,0x20,0x22,0x73,0x75,0x62,0x77,0x68,0x61,0x74,0x22,0x7d,0x2c,\n    0x0a,0x20,0x20,0x20,0x20,0x7b,0x30,0x78,0x30,0x32,0x30,0x30,0x30,0x30,0x30,0x30,\n    0x2c,0x20,0x22,0x63,0x6f,0x6e,0x73,0x74,0x22,0x7d,0x2c,0x0a,0x20,0x20,0x20,0x20,\n    0x7b,0x30,0x78,0x30,0x31,0x30,0x30,0x30,0x30,0x30,0x30,0x2c,0x20,0x22,0x76,0x6f,\n    0x6c,0x61,0x74,0x69,0x6c,0x65,0x22,0x7d,0x2c,0x0a,0x20,0x20,0x20,0x20,0x7b,0x30,\n    0x78,0x30,0x30,0x38,0x30,0x30,0x30,0x30,0x30,0x2c,0x20,0x22,0x75,0x6e,0x73,0x69,\n    0x67,0x6e,0x65,0x64,0x22,0x7d,0x2c,0x0a,0x20,0x20,0x20,0x20,0x7b,0x30,0x78,0x30,\n    0x30,0x34,0x30,0x30,0x30,0x30,0x30,0x2c,0x20,0x22,0x6c,0x6f,0x6e,0x67,0x22,0x7d,\n    0x2c,0x0a,0x20,0x20,0x7d,0x2c,0x0a,0x20,0x20,0x7b,0x22,0x73,0x74,0x72,0x75,0x63,\n    0x74,0x22,0x2c,0x0a,0x20,0x20,0x20,0x20,0x22,0x22,0x2c,0x20,0x22,0x73,0x69,0x7a,\n    0x65,0x22,0x2c,0x20,0x74,0x72,0x75,0x65,0x2c,0x0a,0x20,0x20,0x20,0x20,0x7b,0x30,\n    0x78,0x30,0x32,0x30,0x30,0x30,0x30,0x30,0x30,0x2c,0x20,0x22,0x63,0x6f,0x6e,0x73,\n    0x74,0x22,0x7d,0x2c,0x0a,0x20,0x20,0x20,0x20,0x7b,0x30,0x78,0x30,0x31,0x30,0x30,\n    0x30,0x30,0x30,0x30,0x2c,0x20,0x22,0x76,0x6f,0x6c,0x61,0x74,0x69,0x6c,0x65,0x22,\n    0x7d,0x2c,0x0a,0x20,0x20,0x20,0x20,0x7b,0x30,0x78,0x30,0x30,0x38,0x30,0x30,0x30,\n    0x30,0x30,0x2c,0x20,0x22,0x75,0x6e,0x69,0x6f,0x6e,0x22,0x2c,0x20,0x22,0x73,0x75,\n    0x62,0x77,0x68,0x61,0x74,0x22,0x7d,0x2c,0x0a,0x20,0x20,0x20,0x20,0x7b,0x30,0x78,\n    0x30,0x30,0x31,0x30,0x30,0x30,0x30,0x30,0x2c,0x20,0x22,0x76,0x6c,0x61,0x22,0x7d,\n    0x2c,0x0a,0x20,0x20,0x7d,0x2c,0x0a,0x20,0x20,0x7b,0x22,0x70,0x74,0x72,0x22,0x2c,\n    0x0a,0x20,0x20,0x20,0x20,0x22,0x65,0x6c,0x65,0x6d,0x65,0x6e,0x74,0x5f,0x74,0x79,\n    0x70,0x65,0x22,0x2c,0x20,0x22,0x73,0x69,0x7a,0x65,0x22,0x2c,0x20,0x66,0x61,0x6c,\n    0x73,0x65,0x2c,0x0a,0x20,0x20,0x20,0x20,0x7b,0x30,0x78,0x30,0x32,0x30,0x30,0x30,\n    0x30,0x30,0x30,0x2c,0x20,0x22,0x63,0x6f,0x6e,0x73,0x74,0x22,0x7d,0x2c,0x0a,0x20,\n    0x20,0x20,0x20,0x7b,0x30,0x78,0x30,0x31,0x30,0x30,0x30,0x30,0x30,0x30,0x2c,0x20,\n    0x22,0x76,0x6f,0x6c,0x61,0x74,0x69,0x6c,0x65,0x22,0x7d,0x2c,0x0a,0x20,0x20,0x20,\n    0x20,0x7b,0x30,0x78,0x30,0x30,0x38,0x30,0x30,0x30,0x30,0x30,0x2c,0x20,0x22,0x72,\n    0x65,0x66,0x22,0x2c,0x20,0x22,0x73,0x75,0x62,0x77,0x68,0x61,0x74,0x22,0x7d,0x2c,\n    0x0a,0x20,0x20,0x7d,0x2c,0x0a,0x20,0x20,0x7b,0x22,0x61,0x72,0x72,0x61,0x79,0x22,\n    0x2c,0x0a,0x20,0x20,0x20,0x20,0x22,0x65,0x6c,0x65,0x6d,0x65,0x6e,0x74,0x5f,0x74,\n    0x79,0x70,0x65,0x22,0x2c,0x20,0x22,0x73,0x69,0x7a,0x65,0x22,0x2c,0x20,0x66,0x61,\n    0x6c,0x73,0x65,0x2c,0x0a,0x20,0x20,0x20,0x20,0x7b,0x30,0x78,0x30,0x38,0x30,0x30,\n    0x30,0x30,0x30,0x30,0x2c,0x20,0x22,0x76,0x65,0x63,0x74,0x6f,0x72,0x22,0x7d,0x2c,\n    0x0a,0x20,0x20,0x20,0x20,0x7b,0x30,0x78,0x30,0x34,0x30,0x30,0x30,0x30,0x30,0x30,\n    0x2c,0x20,0x22,0x63,0x6f,0x6d,0x70,0x6c,0x65,0x78,0x22,0x7d,0x2c,0x0a,0x20,0x20,\n    0x20,0x20,0x7b,0x30,0x78,0x30,0x32,0x30,0x30,0x30,0x30,0x30,0x30,0x2c,0x20,0x22,\n    0x63,0x6f,0x6e,0x73,0x74,0x22,0x7d,0x2c,0x0a,0x20,0x20,0x20,0x20,0x7b,0x30,0x78,\n    0x30,0x31,0x30,0x30,0x30,0x30,0x30,0x30,0x2c,0x20,0x22,0x76,0x6f,0x6c,0x61,0x74,\n    0x69,0x6c,0x65,0x22,0x7d,0x2c,0x0a,0x20,0x20,0x20,0x20,0x7b,0x30,0x78,0x30,0x30,\n    0x31,0x30,0x30,0x30,0x30,0x30,0x2c,0x20,0x22,0x76,0x6c,0x61,0x22,0x7d,0x2c,0x0a,\n    0x20,0x20,0x7d,0x2c,0x0a,0x20,0x20,0x7b,0x22,0x76,0x6f,0x69,0x64,0x22,0x2c,0x0a,\n    0x20,0x20,0x20,0x20,0x22,0x22,0x2c,0x20,0x22,0x73,0x69,0x7a,0x65,0x22,0x2c,0x20,\n    0x66,0x61,0x6c,0x73,0x65,0x2c,0x0a,0x20,0x20,0x20,0x20,0x7b,0x30,0x78,0x30,0x32,\n    0x30,0x30,0x30,0x30,0x30,0x30,0x2c,0x20,0x22,0x63,0x6f,0x6e,0x73,0x74,0x22,0x7d,\n    0x2c,0x0a,0x20,0x20,0x20,0x20,0x7b,0x30,0x78,0x30,0x31,0x30,0x30,0x30,0x30,0x30,\n    0x30,0x2c,0x20,0x22,0x76,0x6f,0x6c,0x61,0x74,0x69,0x6c,0x65,0x22,0x7d,0x2c,0x0a,\n    0x20,0x20,0x7d,0x2c,0x0a,0x20,0x20,0x7b,0x22,0x65,0x6e,0x75,0x6d,0x22,0x2c,0x0a,\n    0x20,0x20,0x20,0x20,0x22,0x74,0x79,0x70,0x65,0x22,0x2c,0x20,0x22,0x73,0x69,0x7a,\n    0x65,0x22,0x2c,0x20,0x74,0x72,0x75,0x65,0x2c,0x0a,0x20,0x20,0x7d,0x2c,0x0a,0x20,\n    0x20,0x7b,0x22,0x66,0x75,0x6e,0x63,0x22,0x2c,0x0a,0x20,0x20,0x20,0x20,0x22,0x72,\n    0x65,0x74,0x75,0x72,0x6e,0x5f,0x74,0x79,0x70,0x65,0x22,0x2c,0x20,0x22,0x6e,0x61,\n    0x72,0x67,0x73,0x22,0x2c,0x20,0x74,0x72,0x75,0x65,0x2c,0x0a,0x20,0x20,0x20,0x20,\n    0x7b,0x30,0x78,0x30,0x30,0x38,0x30,0x30,0x30,0x30,0x30,0x2c,0x20,0x22,0x76,0x61,\n    0x72,0x61,0x72,0x67,0x22,0x7d,0x2c,0x0a,0x20,0x20,0x20,0x20,0x7b,0x30,0x78,0x30,\n    0x30,0x34,0x30,0x30,0x30,0x30,0x30,0x2c,0x20,0x22,0x73,0x73,0x65,0x5f,0x72,0x65,\n    0x67,0x5f,0x70,0x61,0x72,0x61,0x6d,0x73,0x22,0x7d,0x2c,0x0a,0x20,0x20,0x7d,0x2c,\n    0x0a,0x20,0x20,0x7b,0x22,0x74,0x79,0x70,0x65,0x64,0x65,0x66,0x22,0x2c,0x20,0x2d,\n    0x2d,0x20,0x4e,0x6f,0x74,0x20,0x73,0x65,0x65,0x6e,0x0a,0x20,0x20,0x20,0x20,0x22,\n    0x65,0x6c,0x65,0x6d,0x65,0x6e,0x74,0x5f,0x74,0x79,0x70,0x65,0x22,0x2c,0x20,0x22,\n    0x22,0x2c,0x20,0x66,0x61,0x6c,0x73,0x65,0x2c,0x0a,0x20,0x20,0x7d,0x2c,0x0a,0x20,\n    0x20,0x7b,0x22,0x61,0x74,0x74,0x72,0x69,0x62,0x22,0x2c,0x20,0x2d,0x2d,0x20,0x4f,\n    0x6e,0x6c,0x79,0x20,0x73,0x65,0x65,0x6e,0x20,0x69,0x6e,0x74,0x65,0x72,0x6e,0x61,\n    0x6c,0x6c,0x79,0x0a,0x20,0x20,0x20,0x20,0x22,0x74,0x79,0x70,0x65,0x22,0x2c,0x20,\n    0x22,0x76,0x61,0x6c,0x75,0x65,0x22,0x2c,0x20,0x74,0x72,0x75,0x65,0x2c,0x0a,0x20,\n    0x20,0x7d,0x2c,0x0a,0x20,0x20,0x7b,0x22,0x66,0x69,0x65,0x6c,0x64,0x22,0x2c,0x0a,\n    0x20,0x20,0x20,0x20,0x22,0x74,0x79,0x70,0x65,0x22,0x2c,0x20,0x22,0x6f,0x66,0x66,\n    0x73,0x65,0x74,0x22,0x2c,0x20,0x74,0x72,0x75,0x65,0x2c,0x0a,0x20,0x20,0x7d,0x2c,\n    0x0a,0x20,0x20,0x7b,0x22,0x62,0x69,0x74,0x66,0x69,0x65,0x6c,0x64,0x22,0x2c,0x0a,\n    0x20,0x20,0x20,0x20,0x22,0x22,0x2c,0x20,0x22,0x6f,0x66,0x66,0x73,0x65,0x74,0x22,\n    0x2c,0x20,0x74,0x72,0x75,0x65,0x2c,0x0a,0x20,0x20,0x20,0x20,0x7b,0x30,0x78,0x30,\n    0x38,0x30,0x30,0x30,0x30,0x30,0x30,0x2c,0x20,0x22,0x62,0x6f,0x6f,0x6c,0x22,0x7d,\n    0x2c,0x0a,0x20,0x20,0x20,0x20,0x7b,0x30,0x78,0x30,0x32,0x30,0x30,0x30,0x30,0x30,\n    0x30,0x2c,0x20,0x22,0x63,0x6f,0x6e,0x73,0x74,0x22,0x7d,0x2c,0x0a,0x20,0x20,0x20,\n    0x20,0x7b,0x30,0x78,0x30,0x31,0x30,0x30,0x30,0x30,0x30,0x30,0x2c,0x20,0x22,0x76,\n    0x6f,0x6c,0x61,0x74,0x69,0x6c,0x65,0x22,0x7d,0x2c,0x0a,0x20,0x20,0x20,0x20,0x7b,\n    0x30,0x78,0x30,0x30,0x38,0x30,0x30,0x30,0x30,0x30,0x2c,0x20,0x22,0x75,0x6e,0x73,\n    0x69,0x67,0x6e,0x65,0x64,0x22,0x7d,0x2c,0x0a,0x20,0x20,0x7d,0x2c,0x0a,0x20,0x20,\n    0x7b,0x22,0x63,0x6f,0x6e,0x73,0x74,0x61,0x6e,0x74,0x22,0x2c,0x0a,0x20,0x20,0x20,\n    0x20,0x22,0x74,0x79,0x70,0x65,0x22,0x2c,0x20,0x22,0x76,0x61,0x6c,0x75,0x65,0x22,\n    0x2c,0x20,0x74,0x72,0x75,0x65,0x2c,0x0a,0x20,0x20,0x20,0x20,0x7b,0x30,0x78,0x30,\n    0x32,0x30,0x30,0x30,0x30,0x30,0x30,0x2c,0x20,0x22,0x63,0x6f,0x6e,0x73,0x74,0x22,\n    0x7d,0x2c,0x0a,0x20,0x20,0x7d,0x2c,0x0a,0x20,0x20,0x7b,0x22,0x65,0x78,0x74,0x65,\n    0x72,0x6e,0x22,0x2c,0x20,0x2d,0x2d,0x20,0x4e,0x6f,0x74,0x20,0x73,0x65,0x65,0x6e,\n    0x0a,0x20,0x20,0x20,0x20,0x22,0x43,0x49,0x44,0x22,0x2c,0x20,0x22,0x22,0x2c,0x20,\n    0x74,0x72,0x75,0x65,0x2c,0x0a,0x20,0x20,0x7d,0x2c,0x0a,0x20,0x20,0x7b,0x22,0x6b,\n    0x77,0x22,0x2c,0x20,0x2d,0x2d,0x20,0x4e,0x6f,0x74,0x20,0x73,0x65,0x65,0x6e,0x0a,\n    0x20,0x20,0x20,0x20,0x22,0x54,0x4f,0x4b,0x22,0x2c,0x20,0x22,0x73,0x69,0x7a,0x65,\n    0x22,0x2c,0x0a,0x20,0x20,0x7d,0x2c,0x0a,0x7d,0x0a,0x0a,0x2d,0x2d,0x20,0x53,0x65,\n    0x74,0x20,0x6f,0x66,0x20,0x43,0x54,0x79,0x70,0x65,0x3a,0x3a,0x63,0x69,0x64,0x20,\n    0x72,0x6f,0x6c,0x65,0x73,0x20,0x77,0x68,0x69,0x63,0x68,0x20,0x61,0x72,0x65,0x20,\n    0x61,0x20,0x43,0x54,0x79,0x70,0x65,0x49,0x44,0x2e,0x0a,0x6c,0x6f,0x63,0x61,0x6c,\n    0x20,0x74,0x79,0x70,0x65,0x5f,0x6b,0x65,0x79,0x73,0x20,0x3d,0x20,0x7b,0x0a,0x20,\n    0x20,0x65,0x6c,0x65,0x6d,0x65,0x6e,0x74,0x5f,0x74,0x79,0x70,0x65,0x20,0x3d,0x20,\n    0x74,0x72,0x75,0x65,0x2c,0x0a,0x20,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x5f,0x74,\n    0x79,0x70,0x65,0x20,0x3d,0x20,0x74,0x72,0x75,0x65,0x2c,0x0a,0x20,0x20,0x76,0x61,\n    0x6c,0x75,0x65,0x5f,0x74,0x79,0x70,0x65,0x20,0x3d,0x20,0x74,0x72,0x75,0x65,0x2c,\n    0x0a,0x20,0x20,0x74,0x79,0x70,0x65,0x20,0x3d,0x20,0x74,0x72,0x75,0x65,0x2c,0x0a,\n    0x7d,0x0a,0x0a,0x2d,0x2d,0x20,0x43,0x72,0x65,0x61,0x74,0x65,0x20,0x61,0x20,0x6d,\n    0x65,0x74,0x61,0x74,0x61,0x62,0x6c,0x65,0x20,0x66,0x6f,0x72,0x20,0x65,0x61,0x63,\n    0x68,0x20,0x43,0x54,0x2e,0x0a,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x6d,0x65,0x74,0x61,\n    0x74,0x61,0x62,0x6c,0x65,0x73,0x20,0x3d,0x20,0x7b,0x0a,0x7d,0x0a,0x66,0x6f,0x72,\n    0x20,0x5f,0x2c,0x20,0x43,0x54,0x20,0x69,0x6e,0x20,0x69,0x70,0x61,0x69,0x72,0x73,\n    0x28,0x43,0x54,0x73,0x29,0x20,0x64,0x6f,0x0a,0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,\n    0x20,0x77,0x68,0x61,0x74,0x20,0x3d,0x20,0x43,0x54,0x5b,0x31,0x5d,0x0a,0x20,0x20,\n    0x6c,0x6f,0x63,0x61,0x6c,0x20,0x6d,0x74,0x20,0x3d,0x20,0x7b,0x5f,0x5f,0x69,0x6e,\n    0x64,0x65,0x78,0x20,0x3d,0x20,0x7b,0x7d,0x7d,0x0a,0x20,0x20,0x6d,0x65,0x74,0x61,\n    0x74,0x61,0x62,0x6c,0x65,0x73,0x5b,0x77,0x68,0x61,0x74,0x5d,0x20,0x3d,0x20,0x6d,\n    0x74,0x0a,0x65,0x6e,0x64,0x0a,0x0a,0x2d,0x2d,0x20,0x4c,0x6f,0x67,0x69,0x63,0x20,\n    0x66,0x6f,0x72,0x20,0x6d,0x65,0x72,0x67,0x69,0x6e,0x67,0x20,0x61,0x6e,0x20,0x61,\n    0x74,0x74,0x72,0x69,0x62,0x75,0x74,0x65,0x20,0x43,0x54,0x79,0x70,0x65,0x20,0x6f,\n    0x6e,0x74,0x6f,0x20,0x74,0x68,0x65,0x20,0x61,0x6e,0x6e,0x6f,0x74,0x61,0x74,0x65,\n    0x64,0x20,0x43,0x54,0x79,0x70,0x65,0x2e,0x0a,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x43,\n    0x54,0x41,0x73,0x20,0x3d,0x20,0x7b,0x5b,0x30,0x5d,0x20,0x3d,0x0a,0x20,0x20,0x66,\n    0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x28,0x61,0x2c,0x20,0x72,0x65,0x66,0x63,0x74,\n    0x29,0x20,0x65,0x72,0x72,0x6f,0x72,0x28,0x22,0x54,0x4f,0x44,0x4f,0x3a,0x20,0x43,\n    0x54,0x41,0x5f,0x4e,0x4f,0x4e,0x45,0x22,0x29,0x20,0x65,0x6e,0x64,0x2c,0x0a,0x20,\n    0x20,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x28,0x61,0x2c,0x20,0x72,0x65,0x66,\n    0x63,0x74,0x29,0x20,0x65,0x72,0x72,0x6f,0x72,0x28,0x22,0x54,0x4f,0x44,0x4f,0x3a,\n    0x20,0x43,0x54,0x41,0x5f,0x51,0x55,0x41,0x4c,0x22,0x29,0x20,0x65,0x6e,0x64,0x2c,\n    0x0a,0x20,0x20,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x28,0x61,0x2c,0x20,0x72,\n    0x65,0x66,0x63,0x74,0x29,0x0a,0x20,0x20,0x20,0x20,0x61,0x20,0x3d,0x20,0x32,0x5e,\n    0x61,0x2e,0x76,0x61,0x6c,0x75,0x65,0x0a,0x20,0x20,0x20,0x20,0x72,0x65,0x66,0x63,\n    0x74,0x2e,0x61,0x6c,0x69,0x67,0x6e,0x6d,0x65,0x6e,0x74,0x20,0x3d,0x20,0x61,0x0a,\n    0x20,0x20,0x20,0x20,0x72,0x65,0x66,0x63,0x74,0x2e,0x61,0x74,0x74,0x72,0x69,0x62,\n    0x75,0x74,0x65,0x73,0x2e,0x61,0x6c,0x69,0x67,0x6e,0x20,0x3d,0x20,0x61,0x0a,0x20,\n    0x20,0x65,0x6e,0x64,0x2c,0x0a,0x20,0x20,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,\n    0x28,0x61,0x2c,0x20,0x72,0x65,0x66,0x63,0x74,0x29,0x0a,0x20,0x20,0x20,0x20,0x72,\n    0x65,0x66,0x63,0x74,0x2e,0x74,0x72,0x61,0x6e,0x73,0x70,0x61,0x72,0x65,0x6e,0x74,\n    0x20,0x3d,0x20,0x74,0x72,0x75,0x65,0x0a,0x20,0x20,0x20,0x20,0x72,0x65,0x66,0x63,\n    0x74,0x2e,0x61,0x74,0x74,0x72,0x69,0x62,0x75,0x74,0x65,0x73,0x2e,0x73,0x75,0x62,\n    0x74,0x79,0x70,0x65,0x20,0x3d,0x20,0x72,0x65,0x66,0x63,0x74,0x2e,0x74,0x79,0x70,\n    0x65,0x69,0x64,0x0a,0x20,0x20,0x65,0x6e,0x64,0x2c,0x0a,0x20,0x20,0x66,0x75,0x6e,\n    0x63,0x74,0x69,0x6f,0x6e,0x28,0x61,0x2c,0x20,0x72,0x65,0x66,0x63,0x74,0x29,0x20,\n    0x72,0x65,0x66,0x63,0x74,0x2e,0x73,0x79,0x6d,0x5f,0x6e,0x61,0x6d,0x65,0x20,0x3d,\n    0x20,0x61,0x2e,0x6e,0x61,0x6d,0x65,0x20,0x65,0x6e,0x64,0x2c,0x0a,0x20,0x20,0x66,\n    0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x28,0x61,0x2c,0x20,0x72,0x65,0x66,0x63,0x74,\n    0x29,0x20,0x65,0x72,0x72,0x6f,0x72,0x28,0x22,0x54,0x4f,0x44,0x4f,0x3a,0x20,0x43,\n    0x54,0x41,0x5f,0x42,0x41,0x44,0x22,0x29,0x20,0x65,0x6e,0x64,0x2c,0x0a,0x7d,0x0a,\n    0x0a,0x2d,0x2d,0x20,0x43,0x20,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x20,0x63,\n    0x61,0x6c,0x6c,0x69,0x6e,0x67,0x20,0x63,0x6f,0x6e,0x76,0x65,0x6e,0x74,0x69,0x6f,\n    0x6e,0x73,0x20,0x28,0x43,0x54,0x43,0x43,0x5f,0x2a,0x20,0x63,0x6f,0x6e,0x73,0x74,\n    0x61,0x6e,0x74,0x73,0x20,0x69,0x6e,0x20,0x6c,0x6a,0x5f,0x72,0x65,0x66,0x63,0x74,\n    0x2e,0x68,0x29,0x0a,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x43,0x54,0x43,0x43,0x73,0x20,\n    0x3d,0x20,0x7b,0x5b,0x30,0x5d,0x20,0x3d,0x0a,0x20,0x20,0x22,0x63,0x64,0x65,0x63,\n    0x6c,0x22,0x2c,0x0a,0x20,0x20,0x22,0x74,0x68,0x69,0x73,0x63,0x61,0x6c,0x6c,0x22,\n    0x2c,0x0a,0x20,0x20,0x22,0x66,0x61,0x73,0x74,0x63,0x61,0x6c,0x6c,0x22,0x2c,0x0a,\n    0x20,0x20,0x22,0x73,0x74,0x64,0x63,0x61,0x6c,0x6c,0x22,0x2c,0x0a,0x7d,0x0a,0x0a,\n    0x6c,0x6f,0x63,0x61,0x6c,0x20,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x20,0x72,\n    0x65,0x66,0x63,0x74,0x5f,0x66,0x72,0x6f,0x6d,0x5f,0x69,0x64,0x28,0x69,0x64,0x29,\n    0x20,0x2d,0x2d,0x20,0x72,0x65,0x66,0x63,0x74,0x20,0x3d,0x20,0x72,0x65,0x66,0x63,\n    0x74,0x5f,0x66,0x72,0x6f,0x6d,0x5f,0x69,0x64,0x28,0x43,0x54,0x79,0x70,0x65,0x49,\n    0x44,0x29,0x0a,0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x63,0x74,0x79,0x70,0x65,\n    0x20,0x3d,0x20,0x43,0x54,0x53,0x74,0x61,0x74,0x65,0x2e,0x74,0x61,0x62,0x5b,0x69,\n    0x64,0x5d,0x0a,0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x43,0x54,0x5f,0x63,0x6f,\n    0x64,0x65,0x20,0x3d,0x20,0x62,0x69,0x74,0x2e,0x72,0x73,0x68,0x69,0x66,0x74,0x28,\n    0x63,0x74,0x79,0x70,0x65,0x2e,0x69,0x6e,0x66,0x6f,0x2c,0x20,0x32,0x38,0x29,0x0a,\n    0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x43,0x54,0x20,0x3d,0x20,0x43,0x54,0x73,\n    0x5b,0x43,0x54,0x5f,0x63,0x6f,0x64,0x65,0x5d,0x0a,0x20,0x20,0x6c,0x6f,0x63,0x61,\n    0x6c,0x20,0x77,0x68,0x61,0x74,0x20,0x3d,0x20,0x43,0x54,0x5b,0x31,0x5d,0x0a,0x20,\n    0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x72,0x65,0x66,0x63,0x74,0x20,0x3d,0x20,0x73,\n    0x65,0x74,0x6d,0x65,0x74,0x61,0x74,0x61,0x62,0x6c,0x65,0x28,0x7b,0x0a,0x20,0x20,\n    0x20,0x20,0x77,0x68,0x61,0x74,0x20,0x3d,0x20,0x77,0x68,0x61,0x74,0x2c,0x0a,0x20,\n    0x20,0x20,0x20,0x74,0x79,0x70,0x65,0x69,0x64,0x20,0x3d,0x20,0x69,0x64,0x2c,0x0a,\n    0x20,0x20,0x20,0x20,0x6e,0x61,0x6d,0x65,0x20,0x3d,0x20,0x67,0x63,0x5f,0x73,0x74,\n    0x72,0x28,0x63,0x74,0x79,0x70,0x65,0x2e,0x6e,0x61,0x6d,0x65,0x29,0x2c,0x0a,0x20,\n    0x20,0x7d,0x2c,0x20,0x6d,0x65,0x74,0x61,0x74,0x61,0x62,0x6c,0x65,0x73,0x5b,0x77,\n    0x68,0x61,0x74,0x5d,0x29,0x0a,0x0a,0x20,0x20,0x2d,0x2d,0x20,0x49,0x6e,0x74,0x65,\n    0x72,0x70,0x72,0x65,0x74,0x20,0x28,0x6d,0x6f,0x73,0x74,0x20,0x6f,0x66,0x29,0x20,\n    0x74,0x68,0x65,0x20,0x43,0x54,0x79,0x70,0x65,0x3a,0x3a,0x69,0x6e,0x66,0x6f,0x20,\n    0x66,0x69,0x65,0x6c,0x64,0x0a,0x20,0x20,0x66,0x6f,0x72,0x20,0x69,0x20,0x3d,0x20,\n    0x35,0x2c,0x20,0x23,0x43,0x54,0x20,0x64,0x6f,0x0a,0x20,0x20,0x20,0x20,0x69,0x66,\n    0x20,0x62,0x69,0x74,0x2e,0x62,0x61,0x6e,0x64,0x28,0x63,0x74,0x79,0x70,0x65,0x2e,\n    0x69,0x6e,0x66,0x6f,0x2c,0x20,0x43,0x54,0x5b,0x69,0x5d,0x5b,0x31,0x5d,0x29,0x20,\n    0x7e,0x3d,0x20,0x30,0x20,0x74,0x68,0x65,0x6e,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x69,0x66,0x20,0x43,0x54,0x5b,0x69,0x5d,0x5b,0x33,0x5d,0x20,0x3d,0x3d,0x20,0x22,\n    0x73,0x75,0x62,0x77,0x68,0x61,0x74,0x22,0x20,0x74,0x68,0x65,0x6e,0x0a,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x72,0x65,0x66,0x63,0x74,0x2e,0x77,0x68,0x61,0x74,\n    0x20,0x3d,0x20,0x43,0x54,0x5b,0x69,0x5d,0x5b,0x32,0x5d,0x0a,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x65,0x6c,0x73,0x65,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x72,\n    0x65,0x66,0x63,0x74,0x5b,0x43,0x54,0x5b,0x69,0x5d,0x5b,0x32,0x5d,0x5d,0x20,0x3d,\n    0x20,0x74,0x72,0x75,0x65,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x65,0x6e,0x64,0x0a,\n    0x20,0x20,0x20,0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,\n    0x69,0x66,0x20,0x43,0x54,0x5f,0x63,0x6f,0x64,0x65,0x20,0x3c,0x3d,0x20,0x35,0x20,\n    0x74,0x68,0x65,0x6e,0x0a,0x20,0x20,0x20,0x20,0x72,0x65,0x66,0x63,0x74,0x2e,0x61,\n    0x6c,0x69,0x67,0x6e,0x6d,0x65,0x6e,0x74,0x20,0x3d,0x20,0x62,0x69,0x74,0x2e,0x6c,\n    0x73,0x68,0x69,0x66,0x74,0x28,0x31,0x2c,0x20,0x62,0x69,0x74,0x2e,0x62,0x61,0x6e,\n    0x64,0x28,0x62,0x69,0x74,0x2e,0x72,0x73,0x68,0x69,0x66,0x74,0x28,0x63,0x74,0x79,\n    0x70,0x65,0x2e,0x69,0x6e,0x66,0x6f,0x2c,0x20,0x31,0x36,0x29,0x2c,0x20,0x31,0x35,\n    0x29,0x29,0x0a,0x20,0x20,0x65,0x6c,0x73,0x65,0x69,0x66,0x20,0x77,0x68,0x61,0x74,\n    0x20,0x3d,0x3d,0x20,0x22,0x66,0x75,0x6e,0x63,0x22,0x20,0x74,0x68,0x65,0x6e,0x0a,\n    0x20,0x20,0x20,0x20,0x72,0x65,0x66,0x63,0x74,0x2e,0x63,0x6f,0x6e,0x76,0x65,0x6e,\n    0x74,0x69,0x6f,0x6e,0x20,0x3d,0x20,0x43,0x54,0x43,0x43,0x73,0x5b,0x62,0x69,0x74,\n    0x2e,0x62,0x61,0x6e,0x64,0x28,0x62,0x69,0x74,0x2e,0x72,0x73,0x68,0x69,0x66,0x74,\n    0x28,0x63,0x74,0x79,0x70,0x65,0x2e,0x69,0x6e,0x66,0x6f,0x2c,0x20,0x31,0x36,0x29,\n    0x2c,0x20,0x33,0x29,0x5d,0x0a,0x20,0x20,0x65,0x6e,0x64,0x0a,0x0a,0x20,0x20,0x69,\n    0x66,0x20,0x43,0x54,0x5b,0x32,0x5d,0x20,0x7e,0x3d,0x20,0x22,0x22,0x20,0x74,0x68,\n    0x65,0x6e,0x20,0x2d,0x2d,0x20,0x49,0x6e,0x74,0x65,0x72,0x70,0x72,0x65,0x74,0x20,\n    0x74,0x68,0x65,0x20,0x43,0x54,0x79,0x70,0x65,0x3a,0x3a,0x63,0x69,0x64,0x20,0x66,\n    0x69,0x65,0x6c,0x64,0x0a,0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x6b,\n    0x20,0x3d,0x20,0x43,0x54,0x5b,0x32,0x5d,0x0a,0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,\n    0x61,0x6c,0x20,0x63,0x69,0x64,0x20,0x3d,0x20,0x62,0x69,0x74,0x2e,0x62,0x61,0x6e,\n    0x64,0x28,0x63,0x74,0x79,0x70,0x65,0x2e,0x69,0x6e,0x66,0x6f,0x2c,0x20,0x30,0x78,\n    0x66,0x66,0x66,0x66,0x29,0x0a,0x20,0x20,0x20,0x20,0x69,0x66,0x20,0x74,0x79,0x70,\n    0x65,0x5f,0x6b,0x65,0x79,0x73,0x5b,0x6b,0x5d,0x20,0x74,0x68,0x65,0x6e,0x0a,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x69,0x66,0x20,0x63,0x69,0x64,0x20,0x3d,0x3d,0x20,0x30,\n    0x20,0x74,0x68,0x65,0x6e,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x63,0x69,\n    0x64,0x20,0x3d,0x20,0x6e,0x69,0x6c,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x65,0x6c,\n    0x73,0x65,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x63,0x69,0x64,0x20,0x3d,\n    0x20,0x72,0x65,0x66,0x63,0x74,0x5f,0x66,0x72,0x6f,0x6d,0x5f,0x69,0x64,0x28,0x63,\n    0x69,0x64,0x29,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,\n    0x20,0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,0x20,0x20,0x72,0x65,0x66,0x63,0x74,0x5b,\n    0x6b,0x5d,0x20,0x3d,0x20,0x63,0x69,0x64,0x0a,0x20,0x20,0x65,0x6e,0x64,0x0a,0x0a,\n    0x20,0x20,0x69,0x66,0x20,0x43,0x54,0x5b,0x33,0x5d,0x20,0x7e,0x3d,0x20,0x22,0x22,\n    0x20,0x74,0x68,0x65,0x6e,0x20,0x2d,0x2d,0x20,0x49,0x6e,0x74,0x65,0x72,0x70,0x72,\n    0x65,0x74,0x20,0x74,0x68,0x65,0x20,0x43,0x54,0x79,0x70,0x65,0x3a,0x3a,0x73,0x69,\n    0x7a,0x65,0x20,0x66,0x69,0x65,0x6c,0x64,0x0a,0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,\n    0x61,0x6c,0x20,0x6b,0x20,0x3d,0x20,0x43,0x54,0x5b,0x33,0x5d,0x0a,0x20,0x20,0x20,\n    0x20,0x72,0x65,0x66,0x63,0x74,0x5b,0x6b,0x5d,0x20,0x3d,0x20,0x63,0x74,0x79,0x70,\n    0x65,0x2e,0x73,0x69,0x7a,0x65,0x0a,0x20,0x20,0x20,0x20,0x69,0x66,0x20,0x6b,0x20,\n    0x3d,0x3d,0x20,0x22,0x73,0x69,0x7a,0x65,0x22,0x20,0x61,0x6e,0x64,0x20,0x62,0x69,\n    0x74,0x2e,0x62,0x6e,0x6f,0x74,0x28,0x72,0x65,0x66,0x63,0x74,0x5b,0x6b,0x5d,0x29,\n    0x20,0x3d,0x3d,0x20,0x30,0x20,0x74,0x68,0x65,0x6e,0x0a,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x72,0x65,0x66,0x63,0x74,0x5b,0x6b,0x5d,0x20,0x3d,0x20,0x22,0x6e,0x6f,0x6e,\n    0x65,0x22,0x0a,0x20,0x20,0x20,0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,0x65,0x6e,0x64,\n    0x0a,0x0a,0x20,0x20,0x69,0x66,0x20,0x77,0x68,0x61,0x74,0x20,0x3d,0x3d,0x20,0x22,\n    0x61,0x74,0x74,0x72,0x69,0x62,0x22,0x20,0x74,0x68,0x65,0x6e,0x0a,0x20,0x20,0x20,\n    0x20,0x2d,0x2d,0x20,0x4d,0x65,0x72,0x67,0x65,0x20,0x6c,0x65,0x61,0x64,0x69,0x6e,\n    0x67,0x20,0x61,0x74,0x74,0x72,0x69,0x62,0x75,0x74,0x65,0x73,0x20,0x6f,0x6e,0x74,\n    0x6f,0x20,0x74,0x68,0x65,0x20,0x74,0x79,0x70,0x65,0x20,0x62,0x65,0x69,0x6e,0x67,\n    0x20,0x64,0x65,0x63,0x6f,0x72,0x61,0x74,0x65,0x64,0x2e,0x0a,0x20,0x20,0x20,0x20,\n    0x6c,0x6f,0x63,0x61,0x6c,0x20,0x43,0x54,0x41,0x20,0x3d,0x20,0x43,0x54,0x41,0x73,\n    0x5b,0x62,0x69,0x74,0x2e,0x62,0x61,0x6e,0x64,0x28,0x62,0x69,0x74,0x2e,0x72,0x73,\n    0x68,0x69,0x66,0x74,0x28,0x63,0x74,0x79,0x70,0x65,0x2e,0x69,0x6e,0x66,0x6f,0x2c,\n    0x20,0x31,0x36,0x29,0x2c,0x20,0x30,0x78,0x66,0x66,0x29,0x5d,0x0a,0x20,0x20,0x20,\n    0x20,0x69,0x66,0x20,0x72,0x65,0x66,0x63,0x74,0x2e,0x74,0x79,0x70,0x65,0x20,0x74,\n    0x68,0x65,0x6e,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,\n    0x63,0x74,0x20,0x3d,0x20,0x72,0x65,0x66,0x63,0x74,0x2e,0x74,0x79,0x70,0x65,0x0a,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x63,0x74,0x2e,0x61,0x74,0x74,0x72,0x69,0x62,0x75,\n    0x74,0x65,0x73,0x20,0x3d,0x20,0x7b,0x7d,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x43,\n    0x54,0x41,0x28,0x72,0x65,0x66,0x63,0x74,0x2c,0x20,0x63,0x74,0x29,0x0a,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x63,0x74,0x2e,0x74,0x79,0x70,0x65,0x69,0x64,0x20,0x3d,0x20,\n    0x72,0x65,0x66,0x63,0x74,0x2e,0x74,0x79,0x70,0x65,0x69,0x64,0x0a,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x72,0x65,0x66,0x63,0x74,0x20,0x3d,0x20,0x63,0x74,0x0a,0x20,0x20,\n    0x20,0x20,0x65,0x6c,0x73,0x65,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x72,0x65,0x66,\n    0x63,0x74,0x2e,0x43,0x54,0x41,0x20,0x3d,0x20,0x43,0x54,0x41,0x0a,0x20,0x20,0x20,\n    0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,0x65,0x6c,0x73,0x65,0x69,0x66,0x20,0x77,0x68,\n    0x61,0x74,0x20,0x3d,0x3d,0x20,0x22,0x62,0x69,0x74,0x66,0x69,0x65,0x6c,0x64,0x22,\n    0x20,0x74,0x68,0x65,0x6e,0x0a,0x20,0x20,0x20,0x20,0x2d,0x2d,0x20,0x44,0x65,0x63,\n    0x6f,0x64,0x65,0x20,0x65,0x78,0x74,0x72,0x61,0x20,0x62,0x69,0x74,0x66,0x69,0x65,\n    0x6c,0x64,0x20,0x66,0x69,0x65,0x6c,0x64,0x73,0x2c,0x20,0x61,0x6e,0x64,0x20,0x6d,\n    0x61,0x6b,0x65,0x20,0x69,0x74,0x20,0x6c,0x6f,0x6f,0x6b,0x20,0x6c,0x69,0x6b,0x65,\n    0x20,0x61,0x20,0x6e,0x6f,0x72,0x6d,0x61,0x6c,0x20,0x66,0x69,0x65,0x6c,0x64,0x2e,\n    0x0a,0x20,0x20,0x20,0x20,0x72,0x65,0x66,0x63,0x74,0x2e,0x6f,0x66,0x66,0x73,0x65,\n    0x74,0x20,0x3d,0x20,0x72,0x65,0x66,0x63,0x74,0x2e,0x6f,0x66,0x66,0x73,0x65,0x74,\n    0x20,0x2b,0x20,0x62,0x69,0x74,0x2e,0x62,0x61,0x6e,0x64,0x28,0x63,0x74,0x79,0x70,\n    0x65,0x2e,0x69,0x6e,0x66,0x6f,0x2c,0x20,0x31,0x32,0x37,0x29,0x20,0x2f,0x20,0x38,\n    0x0a,0x20,0x20,0x20,0x20,0x72,0x65,0x66,0x63,0x74,0x2e,0x73,0x69,0x7a,0x65,0x20,\n    0x3d,0x20,0x62,0x69,0x74,0x2e,0x62,0x61,0x6e,0x64,0x28,0x62,0x69,0x74,0x2e,0x72,\n    0x73,0x68,0x69,0x66,0x74,0x28,0x63,0x74,0x79,0x70,0x65,0x2e,0x69,0x6e,0x66,0x6f,\n    0x2c,0x20,0x38,0x29,0x2c,0x20,0x31,0x32,0x37,0x29,0x20,0x2f,0x20,0x38,0x0a,0x20,\n    0x20,0x20,0x20,0x72,0x65,0x66,0x63,0x74,0x2e,0x74,0x79,0x70,0x65,0x20,0x3d,0x20,\n    0x7b,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x77,0x68,0x61,0x74,0x20,0x3d,0x20,0x22,\n    0x69,0x6e,0x74,0x22,0x2c,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x62,0x6f,0x6f,0x6c,\n    0x20,0x3d,0x20,0x72,0x65,0x66,0x63,0x74,0x2e,0x62,0x6f,0x6f,0x6c,0x2c,0x0a,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x63,0x6f,0x6e,0x73,0x74,0x20,0x3d,0x20,0x72,0x65,0x66,\n    0x63,0x74,0x2e,0x63,0x6f,0x6e,0x73,0x74,0x2c,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x76,0x6f,0x6c,0x61,0x74,0x69,0x6c,0x65,0x20,0x3d,0x20,0x72,0x65,0x66,0x63,0x74,\n    0x2e,0x76,0x6f,0x6c,0x61,0x74,0x69,0x6c,0x65,0x2c,0x0a,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x75,0x6e,0x73,0x69,0x67,0x6e,0x65,0x64,0x20,0x3d,0x20,0x72,0x65,0x66,0x63,\n    0x74,0x2e,0x75,0x6e,0x73,0x69,0x67,0x6e,0x65,0x64,0x2c,0x0a,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x73,0x69,0x7a,0x65,0x20,0x3d,0x20,0x62,0x69,0x74,0x2e,0x62,0x61,0x6e,\n    0x64,0x28,0x62,0x69,0x74,0x2e,0x72,0x73,0x68,0x69,0x66,0x74,0x28,0x63,0x74,0x79,\n    0x70,0x65,0x2e,0x69,0x6e,0x66,0x6f,0x2c,0x20,0x31,0x36,0x29,0x2c,0x20,0x31,0x32,\n    0x37,0x29,0x2c,0x0a,0x20,0x20,0x20,0x20,0x7d,0x0a,0x20,0x20,0x20,0x20,0x72,0x65,\n    0x66,0x63,0x74,0x2e,0x62,0x6f,0x6f,0x6c,0x2c,0x20,0x72,0x65,0x66,0x63,0x74,0x2e,\n    0x63,0x6f,0x6e,0x73,0x74,0x2c,0x20,0x72,0x65,0x66,0x63,0x74,0x2e,0x76,0x6f,0x6c,\n    0x61,0x74,0x69,0x6c,0x65,0x2c,0x20,0x72,0x65,0x66,0x63,0x74,0x2e,0x75,0x6e,0x73,\n    0x69,0x67,0x6e,0x65,0x64,0x20,0x3d,0x20,0x6e,0x69,0x6c,0x0a,0x20,0x20,0x65,0x6e,\n    0x64,0x0a,0x0a,0x20,0x20,0x69,0x66,0x20,0x43,0x54,0x5b,0x34,0x5d,0x20,0x74,0x68,\n    0x65,0x6e,0x20,0x2d,0x2d,0x20,0x4d,0x65,0x72,0x67,0x65,0x20,0x73,0x69,0x62,0x6c,\n    0x69,0x6e,0x67,0x20,0x61,0x74,0x74,0x72,0x69,0x62,0x75,0x74,0x65,0x73,0x20,0x6f,\n    0x6e,0x74,0x6f,0x20,0x74,0x68,0x69,0x73,0x20,0x74,0x79,0x70,0x65,0x2e,0x0a,0x20,\n    0x20,0x20,0x20,0x77,0x68,0x69,0x6c,0x65,0x20,0x63,0x74,0x79,0x70,0x65,0x2e,0x73,\n    0x69,0x62,0x20,0x7e,0x3d,0x20,0x30,0x20,0x64,0x6f,0x0a,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x65,0x6e,0x74,0x72,0x79,0x20,0x3d,0x20,0x43,\n    0x54,0x53,0x74,0x61,0x74,0x65,0x2e,0x74,0x61,0x62,0x5b,0x63,0x74,0x79,0x70,0x65,\n    0x2e,0x73,0x69,0x62,0x5d,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x69,0x66,0x20,0x43,\n    0x54,0x73,0x5b,0x62,0x69,0x74,0x2e,0x72,0x73,0x68,0x69,0x66,0x74,0x28,0x65,0x6e,\n    0x74,0x72,0x79,0x2e,0x69,0x6e,0x66,0x6f,0x2c,0x20,0x32,0x38,0x29,0x5d,0x5b,0x31,\n    0x5d,0x20,0x7e,0x3d,0x20,0x22,0x61,0x74,0x74,0x72,0x69,0x62,0x22,0x20,0x74,0x68,\n    0x65,0x6e,0x20,0x62,0x72,0x65,0x61,0x6b,0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x69,0x66,0x20,0x62,0x69,0x74,0x2e,0x62,0x61,0x6e,0x64,0x28,0x65,\n    0x6e,0x74,0x72,0x79,0x2e,0x69,0x6e,0x66,0x6f,0x2c,0x20,0x30,0x78,0x66,0x66,0x66,\n    0x66,0x29,0x20,0x7e,0x3d,0x20,0x30,0x20,0x74,0x68,0x65,0x6e,0x20,0x62,0x72,0x65,\n    0x61,0x6b,0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,\n    0x61,0x6c,0x20,0x73,0x69,0x62,0x20,0x3d,0x20,0x72,0x65,0x66,0x63,0x74,0x5f,0x66,\n    0x72,0x6f,0x6d,0x5f,0x69,0x64,0x28,0x63,0x74,0x79,0x70,0x65,0x2e,0x73,0x69,0x62,\n    0x29,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x73,0x69,0x62,0x3a,0x43,0x54,0x41,0x28,\n    0x72,0x65,0x66,0x63,0x74,0x29,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x63,0x74,0x79,\n    0x70,0x65,0x20,0x3d,0x20,0x65,0x6e,0x74,0x72,0x79,0x0a,0x20,0x20,0x20,0x20,0x65,\n    0x6e,0x64,0x0a,0x20,0x20,0x65,0x6e,0x64,0x0a,0x0a,0x20,0x20,0x72,0x65,0x74,0x75,\n    0x72,0x6e,0x20,0x72,0x65,0x66,0x63,0x74,0x0a,0x65,0x6e,0x64,0x0a,0x0a,0x6c,0x6f,\n    0x63,0x61,0x6c,0x20,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x20,0x73,0x69,0x62,\n    0x5f,0x69,0x74,0x65,0x72,0x28,0x73,0x2c,0x20,0x72,0x65,0x66,0x63,0x74,0x29,0x0a,\n    0x20,0x20,0x72,0x65,0x70,0x65,0x61,0x74,0x0a,0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,\n    0x61,0x6c,0x20,0x63,0x74,0x79,0x70,0x65,0x20,0x3d,0x20,0x43,0x54,0x53,0x74,0x61,\n    0x74,0x65,0x2e,0x74,0x61,0x62,0x5b,0x72,0x65,0x66,0x63,0x74,0x2e,0x74,0x79,0x70,\n    0x65,0x69,0x64,0x5d,0x0a,0x20,0x20,0x20,0x20,0x69,0x66,0x20,0x63,0x74,0x79,0x70,\n    0x65,0x2e,0x73,0x69,0x62,0x20,0x3d,0x3d,0x20,0x30,0x20,0x74,0x68,0x65,0x6e,0x20,\n    0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,0x20,0x20,0x72,\n    0x65,0x66,0x63,0x74,0x20,0x3d,0x20,0x72,0x65,0x66,0x63,0x74,0x5f,0x66,0x72,0x6f,\n    0x6d,0x5f,0x69,0x64,0x28,0x63,0x74,0x79,0x70,0x65,0x2e,0x73,0x69,0x62,0x29,0x0a,\n    0x20,0x20,0x75,0x6e,0x74,0x69,0x6c,0x20,0x72,0x65,0x66,0x63,0x74,0x2e,0x77,0x68,\n    0x61,0x74,0x20,0x7e,0x3d,0x20,0x22,0x61,0x74,0x74,0x72,0x69,0x62,0x22,0x20,0x2d,\n    0x2d,0x20,0x50,0x75,0x72,0x65,0x20,0x61,0x74,0x74,0x72,0x69,0x62,0x73,0x20,0x61,\n    0x72,0x65,0x20,0x73,0x6b,0x69,0x70,0x70,0x65,0x64,0x2e,0x0a,0x20,0x20,0x72,0x65,\n    0x74,0x75,0x72,0x6e,0x20,0x72,0x65,0x66,0x63,0x74,0x0a,0x65,0x6e,0x64,0x0a,0x0a,\n    0x6c,0x6f,0x63,0x61,0x6c,0x20,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x20,0x73,\n    0x69,0x62,0x6c,0x69,0x6e,0x67,0x73,0x28,0x72,0x65,0x66,0x63,0x74,0x29,0x0a,0x20,\n    0x20,0x2d,0x2d,0x20,0x46,0x6f,0x6c,0x6c,0x6f,0x77,0x20,0x74,0x6f,0x20,0x74,0x68,\n    0x65,0x20,0x65,0x6e,0x64,0x20,0x6f,0x66,0x20,0x74,0x68,0x65,0x20,0x61,0x74,0x74,\n    0x72,0x69,0x62,0x20,0x63,0x68,0x61,0x69,0x6e,0x2c,0x20,0x69,0x66,0x20,0x61,0x6e,\n    0x79,0x2e,0x0a,0x20,0x20,0x77,0x68,0x69,0x6c,0x65,0x20,0x72,0x65,0x66,0x63,0x74,\n    0x2e,0x61,0x74,0x74,0x72,0x69,0x62,0x75,0x74,0x65,0x73,0x20,0x64,0x6f,0x0a,0x20,\n    0x20,0x20,0x20,0x72,0x65,0x66,0x63,0x74,0x20,0x3d,0x20,0x72,0x65,0x66,0x63,0x74,\n    0x5f,0x66,0x72,0x6f,0x6d,0x5f,0x69,0x64,0x28,0x72,0x65,0x66,0x63,0x74,0x2e,0x61,\n    0x74,0x74,0x72,0x69,0x62,0x75,0x74,0x65,0x73,0x2e,0x73,0x75,0x62,0x74,0x79,0x70,\n    0x65,0x20,0x6f,0x72,0x20,0x43,0x54,0x53,0x74,0x61,0x74,0x65,0x2e,0x74,0x61,0x62,\n    0x5b,0x72,0x65,0x66,0x63,0x74,0x2e,0x74,0x79,0x70,0x65,0x69,0x64,0x5d,0x2e,0x73,\n    0x69,0x62,0x29,0x0a,0x20,0x20,0x65,0x6e,0x64,0x0a,0x0a,0x20,0x20,0x72,0x65,0x74,\n    0x75,0x72,0x6e,0x20,0x73,0x69,0x62,0x5f,0x69,0x74,0x65,0x72,0x2c,0x20,0x6e,0x69,\n    0x6c,0x2c,0x20,0x72,0x65,0x66,0x63,0x74,0x0a,0x65,0x6e,0x64,0x0a,0x0a,0x6d,0x65,\n    0x74,0x61,0x74,0x61,0x62,0x6c,0x65,0x73,0x2e,0x73,0x74,0x72,0x75,0x63,0x74,0x2e,\n    0x5f,0x5f,0x69,0x6e,0x64,0x65,0x78,0x2e,0x6d,0x65,0x6d,0x62,0x65,0x72,0x73,0x20,\n    0x3d,0x20,0x73,0x69,0x62,0x6c,0x69,0x6e,0x67,0x73,0x0a,0x6d,0x65,0x74,0x61,0x74,\n    0x61,0x62,0x6c,0x65,0x73,0x2e,0x66,0x75,0x6e,0x63,0x2e,0x5f,0x5f,0x69,0x6e,0x64,\n    0x65,0x78,0x2e,0x61,0x72,0x67,0x75,0x6d,0x65,0x6e,0x74,0x73,0x20,0x3d,0x20,0x73,\n    0x69,0x62,0x6c,0x69,0x6e,0x67,0x73,0x0a,0x6d,0x65,0x74,0x61,0x74,0x61,0x62,0x6c,\n    0x65,0x73,0x2e,0x65,0x6e,0x75,0x6d,0x2e,0x5f,0x5f,0x69,0x6e,0x64,0x65,0x78,0x2e,\n    0x76,0x61,0x6c,0x75,0x65,0x73,0x20,0x3d,0x20,0x73,0x69,0x62,0x6c,0x69,0x6e,0x67,\n    0x73,0x0a,0x0a,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,\n    0x6e,0x20,0x66,0x69,0x6e,0x64,0x5f,0x73,0x69,0x62,0x6c,0x69,0x6e,0x67,0x28,0x72,\n    0x65,0x66,0x63,0x74,0x2c,0x20,0x6e,0x61,0x6d,0x65,0x29,0x0a,0x20,0x20,0x6c,0x6f,\n    0x63,0x61,0x6c,0x20,0x6e,0x75,0x6d,0x20,0x3d,0x20,0x74,0x6f,0x6e,0x75,0x6d,0x62,\n    0x65,0x72,0x28,0x6e,0x61,0x6d,0x65,0x29,0x0a,0x20,0x20,0x69,0x66,0x20,0x6e,0x75,\n    0x6d,0x20,0x74,0x68,0x65,0x6e,0x0a,0x20,0x20,0x20,0x20,0x66,0x6f,0x72,0x20,0x73,\n    0x69,0x62,0x20,0x69,0x6e,0x20,0x73,0x69,0x62,0x6c,0x69,0x6e,0x67,0x73,0x28,0x72,\n    0x65,0x66,0x63,0x74,0x29,0x20,0x64,0x6f,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x69,\n    0x66,0x20,0x6e,0x75,0x6d,0x20,0x3d,0x3d,0x20,0x31,0x20,0x74,0x68,0x65,0x6e,0x0a,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x73,\n    0x69,0x62,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x6e,0x75,0x6d,0x20,0x3d,0x20,0x6e,0x75,0x6d,0x20,0x2d,0x20,0x31,\n    0x0a,0x20,0x20,0x20,0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,0x65,0x6c,0x73,0x65,0x0a,\n    0x20,0x20,0x20,0x20,0x66,0x6f,0x72,0x20,0x73,0x69,0x62,0x20,0x69,0x6e,0x20,0x73,\n    0x69,0x62,0x6c,0x69,0x6e,0x67,0x73,0x28,0x72,0x65,0x66,0x63,0x74,0x29,0x20,0x64,\n    0x6f,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x69,0x66,0x20,0x73,0x69,0x62,0x2e,0x6e,\n    0x61,0x6d,0x65,0x20,0x3d,0x3d,0x20,0x6e,0x61,0x6d,0x65,0x20,0x74,0x68,0x65,0x6e,\n    0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,\n    0x73,0x69,0x62,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,\n    0x20,0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,0x65,0x6e,0x64,0x0a,0x65,0x6e,0x64,0x0a,\n    0x0a,0x6d,0x65,0x74,0x61,0x74,0x61,0x62,0x6c,0x65,0x73,0x2e,0x73,0x74,0x72,0x75,\n    0x63,0x74,0x2e,0x5f,0x5f,0x69,0x6e,0x64,0x65,0x78,0x2e,0x6d,0x65,0x6d,0x62,0x65,\n    0x72,0x20,0x3d,0x20,0x66,0x69,0x6e,0x64,0x5f,0x73,0x69,0x62,0x6c,0x69,0x6e,0x67,\n    0x0a,0x6d,0x65,0x74,0x61,0x74,0x61,0x62,0x6c,0x65,0x73,0x2e,0x66,0x75,0x6e,0x63,\n    0x2e,0x5f,0x5f,0x69,0x6e,0x64,0x65,0x78,0x2e,0x61,0x72,0x67,0x75,0x6d,0x65,0x6e,\n    0x74,0x20,0x3d,0x20,0x66,0x69,0x6e,0x64,0x5f,0x73,0x69,0x62,0x6c,0x69,0x6e,0x67,\n    0x0a,0x6d,0x65,0x74,0x61,0x74,0x61,0x62,0x6c,0x65,0x73,0x2e,0x65,0x6e,0x75,0x6d,\n    0x2e,0x5f,0x5f,0x69,0x6e,0x64,0x65,0x78,0x2e,0x76,0x61,0x6c,0x75,0x65,0x20,0x3d,\n    0x20,0x66,0x69,0x6e,0x64,0x5f,0x73,0x69,0x62,0x6c,0x69,0x6e,0x67,0x0a,0x0a,0x66,\n    0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x20,0x72,0x65,0x66,0x6c,0x65,0x63,0x74,0x2e,\n    0x74,0x79,0x70,0x65,0x6f,0x66,0x28,0x78,0x29,0x20,0x2d,0x2d,0x20,0x72,0x65,0x66,\n    0x63,0x74,0x20,0x3d,0x20,0x72,0x65,0x66,0x6c,0x65,0x63,0x74,0x2e,0x74,0x79,0x70,\n    0x65,0x6f,0x66,0x28,0x63,0x74,0x29,0x0a,0x20,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,\n    0x20,0x72,0x65,0x66,0x63,0x74,0x5f,0x66,0x72,0x6f,0x6d,0x5f,0x69,0x64,0x28,0x74,\n    0x6f,0x6e,0x75,0x6d,0x62,0x65,0x72,0x28,0x66,0x66,0x69,0x2e,0x74,0x79,0x70,0x65,\n    0x6f,0x66,0x28,0x78,0x29,0x29,0x29,0x0a,0x65,0x6e,0x64,0x0a,0x0a,0x66,0x75,0x6e,\n    0x63,0x74,0x69,0x6f,0x6e,0x20,0x72,0x65,0x66,0x6c,0x65,0x63,0x74,0x2e,0x67,0x65,\n    0x74,0x6d,0x65,0x74,0x61,0x74,0x61,0x62,0x6c,0x65,0x28,0x78,0x29,0x20,0x2d,0x2d,\n    0x20,0x6d,0x74,0x20,0x3d,0x20,0x72,0x65,0x66,0x6c,0x65,0x63,0x74,0x2e,0x67,0x65,\n    0x74,0x6d,0x65,0x74,0x61,0x74,0x61,0x62,0x6c,0x65,0x28,0x63,0x74,0x29,0x0a,0x20,\n    0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x6d,0x69,0x73,0x63,0x6d,0x61,0x70,0x5b,\n    0x2d,0x74,0x6f,0x6e,0x75,0x6d,0x62,0x65,0x72,0x28,0x66,0x66,0x69,0x2e,0x74,0x79,\n    0x70,0x65,0x6f,0x66,0x28,0x78,0x29,0x29,0x5d,0x0a,0x65,0x6e,0x64,0x0a,0x0a,0x72,\n    0x65,0x74,0x75,0x72,0x6e,0x20,0x72,0x65,0x66,0x6c,0x65,0x63,0x74,0x0a,0x65,0x6e,\n    0x64,0x0a,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x0a,0x2d,0x2d,0x20,0x45,0x6e,0x64,0x20,0x6f,0x66,0x20,0x6d,0x6f,0x64,\n    0x75,0x6c,0x65,0x64,0x65,0x62,0x75,0x67,0x67,0x65,0x72,0x2e,0x70,0x6c,0x75,0x67,\n    0x69,0x6e,0x73,0x2e,0x66,0x66,0x69,0x2e,0x72,0x65,0x66,0x6c,0x65,0x63,0x74,0x0a,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x0a,0x0a,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x0a,0x2d,0x2d,0x20,0x20,0x4d,0x6f,0x64,0x75,0x6c,0x65,0x20,0x64,0x65,\n    0x62,0x75,0x67,0x67,0x65,0x72,0x2e,0x70,0x6c,0x61,0x74,0x66,0x6f,0x72,0x6d,0x0a,\n    0x70,0x61,0x63,0x6b,0x61,0x67,0x65,0x2e,0x70,0x72,0x65,0x6c,0x6f,0x61,0x64,0x5b,\n    0x22,0x64,0x65,0x62,0x75,0x67,0x67,0x65,0x72,0x2e,0x70,0x6c,0x61,0x74,0x66,0x6f,\n    0x72,0x6d,0x22,0x5d,0x20,0x3d,0x20,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x28,\n    0x2e,0x2e,0x2e,0x29,0x0a,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x0a,0x2d,0x2d,0x20,0x43,0x6f,0x70,0x79,0x72,0x69,0x67,0x68,\n    0x74,0x20,0x28,0x63,0x29,0x20,0x32,0x30,0x31,0x31,0x2d,0x32,0x30,0x31,0x32,0x20,\n    0x53,0x69,0x65,0x72,0x72,0x61,0x20,0x57,0x69,0x72,0x65,0x6c,0x65,0x73,0x73,0x20,\n    0x61,0x6e,0x64,0x20,0x6f,0x74,0x68,0x65,0x72,0x73,0x2e,0x0a,0x2d,0x2d,0x20,0x41,\n    0x6c,0x6c,0x20,0x72,0x69,0x67,0x68,0x74,0x73,0x20,0x72,0x65,0x73,0x65,0x72,0x76,\n    0x65,0x64,0x2e,0x20,0x54,0x68,0x69,0x73,0x20,0x70,0x72,0x6f,0x67,0x72,0x61,0x6d,\n    0x20,0x61,0x6e,0x64,0x20,0x74,0x68,0x65,0x20,0x61,0x63,0x63,0x6f,0x6d,0x70,0x61,\n    0x6e,0x79,0x69,0x6e,0x67,0x20,0x6d,0x61,0x74,0x65,0x72,0x69,0x61,0x6c,0x73,0x0a,\n    0x2d,0x2d,0x20,0x61,0x72,0x65,0x20,0x6d,0x61,0x64,0x65,0x20,0x61,0x76,0x61,0x69,\n    0x6c,0x61,0x62,0x6c,0x65,0x20,0x75,0x6e,0x64,0x65,0x72,0x20,0x74,0x68,0x65,0x20,\n    0x74,0x65,0x72,0x6d,0x73,0x20,0x6f,0x66,0x20,0x74,0x68,0x65,0x20,0x45,0x63,0x6c,\n    0x69,0x70,0x73,0x65,0x20,0x50,0x75,0x62,0x6c,0x69,0x63,0x20,0x4c,0x69,0x63,0x65,\n    0x6e,0x73,0x65,0x20,0x76,0x31,0x2e,0x30,0x0a,0x2d,0x2d,0x20,0x77,0x68,0x69,0x63,\n    0x68,0x20,0x61,0x63,0x63,0x6f,0x6d,0x70,0x61,0x6e,0x69,0x65,0x73,0x20,0x74,0x68,\n    0x69,0x73,0x20,0x64,0x69,0x73,0x74,0x72,0x69,0x62,0x75,0x74,0x69,0x6f,0x6e,0x2c,\n    0x20,0x61,0x6e,0x64,0x20,0x69,0x73,0x20,0x61,0x76,0x61,0x69,0x6c,0x61,0x62,0x6c,\n    0x65,0x20,0x61,0x74,0x0a,0x2d,0x2d,0x20,0x68,0x74,0x74,0x70,0x3a,0x2f,0x2f,0x77,\n    0x77,0x77,0x2e,0x65,0x63,0x6c,0x69,0x70,0x73,0x65,0x2e,0x6f,0x72,0x67,0x2f,0x6c,\n    0x65,0x67,0x61,0x6c,0x2f,0x65,0x70,0x6c,0x2d,0x76,0x31,0x30,0x2e,0x68,0x74,0x6d,\n    0x6c,0x0a,0x2d,0x2d,0x0a,0x2d,0x2d,0x20,0x43,0x6f,0x6e,0x74,0x72,0x69,0x62,0x75,\n    0x74,0x6f,0x72,0x73,0x3a,0x0a,0x2d,0x2d,0x20,0x20,0x20,0x20,0x20,0x53,0x69,0x65,\n    0x72,0x72,0x61,0x20,0x57,0x69,0x72,0x65,0x6c,0x65,0x73,0x73,0x20,0x2d,0x20,0x69,\n    0x6e,0x69,0x74,0x69,0x61,0x6c,0x20,0x41,0x50,0x49,0x20,0x61,0x6e,0x64,0x20,0x69,\n    0x6d,0x70,0x6c,0x65,0x6d,0x65,0x6e,0x74,0x61,0x74,0x69,0x6f,0x6e,0x0a,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x0a,0x2d,0x2d,\n    0x20,0x50,0x6c,0x61,0x74,0x66,0x6f,0x72,0x6d,0x2f,0x4f,0x53,0x20,0x73,0x70,0x65,\n    0x63,0x69,0x66,0x69,0x63,0x20,0x66,0x65,0x61,0x74,0x75,0x72,0x65,0x73,0x20,0x61,\n    0x6e,0x64,0x20,0x70,0x61,0x74,0x68,0x20,0x68,0x61,0x6e,0x64,0x6c,0x69,0x6e,0x67,\n    0x2e,0x0a,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x0a,0x0a,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x75,0x72,0x6c,0x20,0x3d,0x20,0x72,\n    0x65,0x71,0x75,0x69,0x72,0x65,0x20,0x22,0x64,0x65,0x62,0x75,0x67,0x67,0x65,0x72,\n    0x2e,0x75,0x72,0x6c,0x22,0x0a,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x75,0x74,0x69,0x6c,\n    0x20,0x3d,0x20,0x72,0x65,0x71,0x75,0x69,0x72,0x65,0x20,0x22,0x64,0x65,0x62,0x75,\n    0x67,0x67,0x65,0x72,0x2e,0x75,0x74,0x69,0x6c,0x22,0x0a,0x0a,0x6c,0x6f,0x63,0x61,\n    0x6c,0x20,0x4d,0x20,0x3d,0x20,0x7b,0x20,0x7d,0x0a,0x0a,0x2d,0x2d,0x20,0x45,0x78,\n    0x65,0x63,0x75,0x74,0x69,0x6f,0x6e,0x20,0x70,0x6c,0x61,0x66,0x6f,0x72,0x6d,0x20,\n    0x28,0x63,0x6f,0x75,0x6c,0x64,0x20,0x62,0x65,0x20,0x77,0x69,0x6e,0x20,0x6f,0x72,\n    0x20,0x75,0x6e,0x69,0x78,0x29,0x0a,0x2d,0x2d,0x20,0x55,0x73,0x65,0x64,0x20,0x74,\n    0x6f,0x20,0x6d,0x61,0x6e,0x61,0x67,0x65,0x20,0x66,0x69,0x6c,0x65,0x20,0x70,0x61,\n    0x74,0x68,0x20,0x64,0x69,0x66,0x66,0x65,0x72,0x65,0x6e,0x63,0x65,0x20,0x62,0x65,\n    0x74,0x77,0x65,0x65,0x6e,0x20,0x74,0x68,0x65,0x20,0x32,0x20,0x70,0x6c,0x61,0x74,\n    0x66,0x6f,0x72,0x6d,0x0a,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x70,0x6c,0x61,0x74,0x66,\n    0x6f,0x72,0x6d,0x20,0x3d,0x20,0x6e,0x69,0x6c,0x0a,0x0a,0x2d,0x2d,0x20,0x6b,0x65,\n    0x65,0x70,0x20,0x61,0x6c,0x6c,0x20,0x63,0x6f,0x6d,0x70,0x75,0x74,0x65,0x64,0x20,\n    0x55,0x52,0x49,0x73,0x20,0x69,0x6e,0x20,0x63,0x61,0x63,0x68,0x65,0x20,0x28,0x61,\n    0x73,0x20,0x74,0x68,0x65,0x79,0x20,0x61,0x72,0x65,0x20,0x71,0x75,0x69,0x74,0x65,\n    0x20,0x6c,0x6f,0x6e,0x67,0x20,0x74,0x6f,0x20,0x63,0x6f,0x6d,0x70,0x75,0x74,0x65,\n    0x29,0x0a,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x75,0x72,0x69,0x5f,0x63,0x61,0x63,0x68,\n    0x65,0x20,0x3d,0x20,0x7b,0x20,0x7d,0x0a,0x0a,0x2d,0x2d,0x20,0x70,0x61,0x72,0x73,\n    0x65,0x20,0x61,0x20,0x6e,0x6f,0x72,0x6d,0x61,0x6c,0x69,0x7a,0x65,0x64,0x20,0x70,\n    0x61,0x74,0x68,0x20,0x61,0x6e,0x64,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x61,\n    0x20,0x74,0x61,0x62,0x6c,0x65,0x20,0x6f,0x66,0x20,0x65,0x61,0x63,0x68,0x20,0x73,\n    0x65,0x67,0x6d,0x65,0x6e,0x74,0x0a,0x2d,0x2d,0x20,0x79,0x6f,0x75,0x20,0x63,0x6f,\n    0x75,0x6c,0x64,0x20,0x70,0x72,0x65,0x63,0x69,0x73,0x65,0x20,0x74,0x68,0x65,0x20,\n    0x70,0x61,0x74,0x68,0x20,0x73,0x65,0x70,0x65,0x72,0x61,0x74,0x6f,0x72,0x2e,0x0a,\n    0x6c,0x6f,0x63,0x61,0x6c,0x20,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x20,0x73,\n    0x70,0x6c,0x69,0x74,0x28,0x70,0x61,0x74,0x68,0x2c,0x73,0x65,0x70,0x29,0x0a,0x20,\n    0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x74,0x20,0x3d,0x20,0x7b,0x7d,0x0a,0x20,0x20,\n    0x66,0x6f,0x72,0x20,0x77,0x20,0x69,0x6e,0x20,0x70,0x61,0x74,0x68,0x3a,0x67,0x6d,\n    0x61,0x74,0x63,0x68,0x28,0x22,0x5b,0x5e,0x22,0x2e,0x2e,0x28,0x73,0x65,0x70,0x20,\n    0x6f,0x72,0x20,0x22,0x2f,0x22,0x29,0x2e,0x2e,0x22,0x5d,0x2b,0x22,0x29,0x64,0x6f,\n    0x0a,0x20,0x20,0x20,0x20,0x74,0x61,0x62,0x6c,0x65,0x2e,0x69,0x6e,0x73,0x65,0x72,\n    0x74,0x28,0x74,0x2c,0x20,0x77,0x29,0x0a,0x20,0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,\n    0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x74,0x0a,0x65,0x6e,0x64,0x0a,0x0a,0x2d,0x2d,\n    0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x61,0x20,0x74,0x61,0x62,0x6c,0x65,0x3a,\n    0x20,0x6b,0x65,0x79,0x3d,0x73,0x65,0x61,0x72,0x63,0x68,0x70,0x61,0x74,0x68,0x6e,\n    0x61,0x6d,0x65,0x2c,0x76,0x61,0x6c,0x75,0x65,0x3d,0x74,0x72,0x75,0x65,0x20,0x28,\n    0x61,0x64,0x64,0x20,0x62,0x79,0x20,0x67,0x75,0x61,0x6e,0x79,0x75,0x29,0x0a,0x6c,\n    0x6f,0x63,0x61,0x6c,0x20,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x20,0x63,0x6f,\n    0x6e,0x76,0x65,0x72,0x74,0x5f,0x74,0x6f,0x5f,0x73,0x65,0x61,0x72,0x63,0x68,0x5f,\n    0x70,0x61,0x74,0x68,0x73,0x28,0x73,0x65,0x61,0x72,0x63,0x68,0x70,0x61,0x74,0x68,\n    0x73,0x29,0x0a,0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x74,0x20,0x3d,\n    0x20,0x20,0x7b,0x7d,0x0a,0x20,0x20,0x20,0x20,0x66,0x6f,0x72,0x20,0x77,0x20,0x69,\n    0x6e,0x20,0x73,0x65,0x61,0x72,0x63,0x68,0x70,0x61,0x74,0x68,0x73,0x3a,0x67,0x6d,\n    0x61,0x74,0x63,0x68,0x28,0x22,0x5b,0x5e,0x3b,0x5d,0x2b,0x22,0x29,0x20,0x64,0x6f,\n    0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x74,0x5b,0x77,0x5d,0x20,0x3d,0x20,\n    0x74,0x72,0x75,0x65,0x0a,0x20,0x20,0x20,0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,0x20,\n    0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x74,0x3b,0x0a,0x65,0x6e,0x64,0x0a,0x0a,\n    0x2d,0x2d,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x61,0x20,0x72,0x65,0x6c,0x61,\n    0x74,0x69,0x76,0x65,0x20,0x75,0x72,0x69,0x20,0x74,0x6f,0x20,0x4d,0x2e,0x62,0x61,\n    0x73,0x65,0x5f,0x64,0x69,0x72,0x20,0x66,0x6f,0x72,0x20,0x61,0x20,0x67,0x69,0x76,\n    0x65,0x6e,0x20,0x73,0x6f,0x75,0x72,0x63,0x65,0x2c,0x20,0x66,0x6f,0x72,0x20,0x61,\n    0x6e,0x64,0x72,0x6f,0x69,0x64,0x20,0x64,0x65,0x76,0x69,0x63,0x65,0x20,0x28,0x61,\n    0x64,0x64,0x65,0x64,0x20,0x62,0x79,0x20,0x67,0x75,0x61,0x6e,0x79,0x75,0x29,0x0a,\n    0x6c,0x6f,0x63,0x61,0x6c,0x20,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x20,0x63,\n    0x6f,0x6e,0x76,0x65,0x72,0x74,0x5f,0x74,0x6f,0x5f,0x61,0x6e,0x64,0x72,0x6f,0x69,\n    0x64,0x5f,0x66,0x69,0x6c,0x65,0x5f,0x75,0x72,0x69,0x28,0x73,0x6f,0x75,0x72,0x63,\n    0x65,0x29,0x0a,0x20,0x20,0x20,0x20,0x69,0x66,0x20,0x73,0x6f,0x75,0x72,0x63,0x65,\n    0x3a,0x73,0x75,0x62,0x28,0x31,0x2c,0x36,0x29,0x20,0x3d,0x3d,0x20,0x22,0x61,0x73,\n    0x73,0x65,0x74,0x73,0x22,0x20,0x74,0x68,0x65,0x6e,0x20,0x2d,0x2d,0x20,0x72,0x65,\n    0x70,0x6c,0x61,0x63,0x65,0x20,0x61,0x73,0x73,0x65,0x74,0x73,0x0a,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x73,0x6f,0x75,0x72,0x63,0x65,0x20,0x3d,0x20,0x73,0x6f,\n    0x75,0x72,0x63,0x65,0x3a,0x73,0x75,0x62,0x28,0x38,0x29,0x0a,0x20,0x20,0x20,0x20,\n    0x65,0x6c,0x73,0x65,0x69,0x66,0x20,0x4d,0x2e,0x73,0x65,0x61,0x72,0x63,0x68,0x5f,\n    0x70,0x61,0x74,0x68,0x73,0x20,0x74,0x68,0x65,0x6e,0x20,0x20,0x20,0x2d,0x2d,0x20,\n    0x72,0x65,0x70,0x6c,0x61,0x63,0x65,0x20,0x2f,0x6d,0x6e,0x74,0x2f,0x73,0x64,0x63,\n    0x61,0x72,0x64,0x2f,0x70,0x61,0x63,0x6b,0x61,0x67,0x65,0x6e,0x61,0x6d,0x65,0x2f,\n    0x20,0x77,0x69,0x74,0x68,0x20,0x65,0x6d,0x70,0x74,0x79,0x20,0x73,0x74,0x72,0x69,\n    0x6e,0x67,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x66,0x6f,0x72,0x20,0x6b,\n    0x2c,0x20,0x76,0x20,0x69,0x6e,0x20,0x70,0x61,0x69,0x72,0x73,0x28,0x4d,0x2e,0x73,\n    0x65,0x61,0x72,0x63,0x68,0x5f,0x70,0x61,0x74,0x68,0x73,0x29,0x20,0x64,0x6f,0x0a,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x69,0x66,0x20,0x23,\n    0x73,0x6f,0x75,0x72,0x63,0x65,0x20,0x3e,0x20,0x23,0x6b,0x20,0x61,0x6e,0x64,0x20,\n    0x4d,0x2e,0x73,0x65,0x61,0x72,0x63,0x68,0x5f,0x70,0x61,0x74,0x68,0x73,0x5b,0x73,\n    0x6f,0x75,0x72,0x63,0x65,0x3a,0x73,0x75,0x62,0x28,0x31,0x2c,0x23,0x6b,0x29,0x5d,\n    0x20,0x74,0x68,0x65,0x6e,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x73,0x6f,0x75,0x72,0x63,0x65,0x20,0x3d,0x20,0x73,\n    0x6f,0x75,0x72,0x63,0x65,0x3a,0x73,0x75,0x62,0x28,0x23,0x6b,0x2b,0x31,0x29,0x0a,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x62,0x72,0x65,0x61,0x6b,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x65,0x6e,\n    0x64,0x0a,0x20,0x20,0x20,0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,0x20,0x20,0x72,0x65,\n    0x74,0x75,0x72,0x6e,0x20,0x73,0x6f,0x75,0x72,0x63,0x65,0x0a,0x65,0x6e,0x64,0x0a,\n    0x0a,0x2d,0x2d,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x61,0x20,0x72,0x65,0x6c,\n    0x61,0x74,0x69,0x76,0x65,0x20,0x75,0x72,0x69,0x20,0x74,0x6f,0x20,0x4d,0x2e,0x62,\n    0x61,0x73,0x65,0x5f,0x64,0x69,0x72,0x20,0x66,0x6f,0x72,0x20,0x61,0x20,0x67,0x69,\n    0x76,0x65,0x6e,0x20,0x73,0x6f,0x75,0x72,0x63,0x65,0x2c,0x20,0x2c,0x20,0x66,0x6f,\n    0x72,0x20,0x69,0x6f,0x73,0x20,0x73,0x69,0x6d,0x75,0x6c,0x61,0x74,0x6f,0x72,0x2f,\n    0x64,0x65,0x76,0x69,0x63,0x65,0x3f,0x20,0x28,0x61,0x64,0x64,0x65,0x64,0x20,0x62,\n    0x79,0x20,0x67,0x75,0x61,0x6e,0x79,0x75,0x0a,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x66,\n    0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x20,0x63,0x6f,0x6e,0x76,0x65,0x72,0x74,0x5f,\n    0x74,0x6f,0x5f,0x69,0x6f,0x73,0x5f,0x66,0x69,0x6c,0x65,0x5f,0x75,0x72,0x69,0x28,\n    0x73,0x6f,0x75,0x72,0x63,0x65,0x29,0x0a,0x20,0x20,0x20,0x69,0x66,0x20,0x4d,0x2e,\n    0x73,0x65,0x61,0x72,0x63,0x68,0x5f,0x70,0x61,0x74,0x68,0x73,0x20,0x74,0x68,0x65,\n    0x6e,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x66,0x6f,0x72,0x20,0x6b,0x2c,0x20,0x76,\n    0x20,0x69,0x6e,0x20,0x70,0x61,0x69,0x72,0x73,0x28,0x4d,0x2e,0x73,0x65,0x61,0x72,\n    0x63,0x68,0x5f,0x70,0x61,0x74,0x68,0x73,0x29,0x20,0x64,0x6f,0x0a,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x69,0x66,0x20,0x23,0x73,0x6f,0x75,0x72,0x63,\n    0x65,0x20,0x3e,0x20,0x23,0x6b,0x20,0x61,0x6e,0x64,0x20,0x4d,0x2e,0x73,0x65,0x61,\n    0x72,0x63,0x68,0x5f,0x70,0x61,0x74,0x68,0x73,0x5b,0x73,0x6f,0x75,0x72,0x63,0x65,\n    0x3a,0x73,0x75,0x62,0x28,0x31,0x2c,0x23,0x6b,0x29,0x5d,0x20,0x74,0x68,0x65,0x6e,\n    0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x73,\n    0x6f,0x75,0x72,0x63,0x65,0x20,0x3d,0x20,0x73,0x6f,0x75,0x72,0x63,0x65,0x3a,0x73,\n    0x75,0x62,0x28,0x23,0x6b,0x2b,0x31,0x29,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x62,0x72,0x65,0x61,0x6b,0x0a,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,0x72,0x65,\n    0x74,0x75,0x72,0x6e,0x20,0x73,0x6f,0x75,0x72,0x63,0x65,0x0a,0x65,0x6e,0x64,0x0a,\n    0x0a,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x20,\n    0x63,0x6f,0x6e,0x76,0x65,0x72,0x74,0x5f,0x74,0x6f,0x5f,0x72,0x65,0x6c,0x61,0x74,\n    0x69,0x76,0x65,0x5f,0x66,0x69,0x6c,0x65,0x5f,0x75,0x72,0x69,0x28,0x73,0x6f,0x75,\n    0x72,0x63,0x65,0x29,0x0a,0x20,0x20,0x20,0x69,0x66,0x20,0x4d,0x2e,0x73,0x65,0x61,\n    0x72,0x63,0x68,0x5f,0x70,0x61,0x74,0x68,0x73,0x20,0x74,0x68,0x65,0x6e,0x0a,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x66,0x6f,0x72,0x20,0x6b,0x2c,0x20,0x76,0x20,0x69,0x6e,\n    0x20,0x70,0x61,0x69,0x72,0x73,0x28,0x4d,0x2e,0x73,0x65,0x61,0x72,0x63,0x68,0x5f,\n    0x70,0x61,0x74,0x68,0x73,0x29,0x20,0x64,0x6f,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x69,0x66,0x20,0x23,0x73,0x6f,0x75,0x72,0x63,0x65,0x20,0x3e,\n    0x20,0x23,0x6b,0x20,0x61,0x6e,0x64,0x20,0x4d,0x2e,0x73,0x65,0x61,0x72,0x63,0x68,\n    0x5f,0x70,0x61,0x74,0x68,0x73,0x5b,0x73,0x6f,0x75,0x72,0x63,0x65,0x3a,0x73,0x75,\n    0x62,0x28,0x31,0x2c,0x23,0x6b,0x29,0x5d,0x20,0x74,0x68,0x65,0x6e,0x0a,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x73,0x6f,0x75,0x72,\n    0x63,0x65,0x20,0x3d,0x20,0x73,0x6f,0x75,0x72,0x63,0x65,0x3a,0x73,0x75,0x62,0x28,\n    0x23,0x6b,0x2b,0x31,0x29,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x62,0x72,0x65,0x61,0x6b,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x65,0x6e,\n    0x64,0x0a,0x20,0x20,0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,0x72,0x65,0x74,0x75,0x72,\n    0x6e,0x20,0x73,0x6f,0x75,0x72,0x63,0x65,0x0a,0x65,0x6e,0x64,0x0a,0x0a,0x2d,0x2d,\n    0x2d,0x20,0x52,0x65,0x74,0x75,0x72,0x6e,0x73,0x20,0x61,0x20,0x52,0x46,0x43,0x32,\n    0x33,0x39,0x36,0x20,0x63,0x6f,0x6d,0x70,0x6c,0x69,0x61,0x6e,0x74,0x20,0x55,0x52,\n    0x49,0x20,0x66,0x6f,0x72,0x20,0x67,0x69,0x76,0x65,0x6e,0x20,0x73,0x6f,0x75,0x72,\n    0x63,0x65,0x2c,0x20,0x6f,0x72,0x20,0x66,0x61,0x6c,0x73,0x65,0x20,0x69,0x66,0x20,\n    0x74,0x68,0x65,0x20,0x6d,0x61,0x70,0x70,0x69,0x6e,0x67,0x20,0x66,0x61,0x69,0x6c,\n    0x65,0x64,0x0a,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,\n    0x6e,0x20,0x67,0x65,0x74,0x5f,0x61,0x62,0x73,0x5f,0x66,0x69,0x6c,0x65,0x5f,0x75,\n    0x72,0x69,0x20,0x28,0x73,0x6f,0x75,0x72,0x63,0x65,0x29,0x0a,0x20,0x20,0x20,0x20,\n    0x6c,0x6f,0x63,0x61,0x6c,0x20,0x75,0x72,0x69,0x0a,0x20,0x20,0x20,0x20,0x69,0x66,\n    0x20,0x73,0x6f,0x75,0x72,0x63,0x65,0x3a,0x73,0x75,0x62,0x28,0x31,0x2c,0x31,0x29,\n    0x20,0x3d,0x3d,0x20,0x22,0x40,0x22,0x20,0x74,0x68,0x65,0x6e,0x20,0x2d,0x2d,0x20,\n    0x72,0x65,0x61,0x6c,0x20,0x73,0x6f,0x75,0x72,0x63,0x65,0x20,0x66,0x69,0x6c,0x65,\n    0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x73,\n    0x6f,0x75,0x72,0x63,0x65,0x70,0x61,0x74,0x68,0x20,0x3d,0x20,0x73,0x6f,0x75,0x72,\n    0x63,0x65,0x3a,0x73,0x75,0x62,0x28,0x32,0x29,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x69,0x66,0x20,0x4d,0x2e,0x62,0x61,0x73,0x65,0x5f,0x64,0x69,0x72,0x20,\n    0x74,0x68,0x65,0x6e,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x73,0x6f,0x75,0x72,0x63,0x65,0x70,0x61,0x74,0x68,0x20,0x3d,0x20,0x63,0x6f,\n    0x6e,0x76,0x65,0x72,0x74,0x5f,0x74,0x6f,0x5f,0x72,0x65,0x6c,0x61,0x74,0x69,0x76,\n    0x65,0x5f,0x66,0x69,0x6c,0x65,0x5f,0x75,0x72,0x69,0x28,0x73,0x6f,0x75,0x72,0x63,\n    0x65,0x70,0x61,0x74,0x68,0x29,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x65,\n    0x6e,0x64,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,\n    0x20,0x6e,0x6f,0x72,0x6d,0x61,0x6c,0x69,0x7a,0x65,0x64,0x70,0x61,0x74,0x68,0x20,\n    0x3d,0x20,0x4d,0x2e,0x6e,0x6f,0x72,0x6d,0x61,0x6c,0x69,0x7a,0x65,0x28,0x73,0x6f,\n    0x75,0x72,0x63,0x65,0x70,0x61,0x74,0x68,0x29,0x0a,0x2d,0x2d,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x69,0x66,0x20,0x6e,0x6f,0x74,0x20,0x4d,0x2e,0x69,0x73,0x5f,\n    0x70,0x61,0x74,0x68,0x5f,0x61,0x62,0x73,0x6f,0x6c,0x75,0x74,0x65,0x28,0x6e,0x6f,\n    0x72,0x6d,0x61,0x6c,0x69,0x7a,0x65,0x64,0x70,0x61,0x74,0x68,0x29,0x20,0x74,0x68,\n    0x65,0x6e,0x0a,0x2d,0x2d,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x6e,0x6f,0x72,0x6d,0x61,0x6c,0x69,0x7a,0x65,0x64,0x70,0x61,0x74,0x68,0x20,\n    0x3d,0x20,0x4d,0x2e,0x6e,0x6f,0x72,0x6d,0x61,0x6c,0x69,0x7a,0x65,0x28,0x4d,0x2e,\n    0x62,0x61,0x73,0x65,0x5f,0x64,0x69,0x72,0x20,0x2e,0x2e,0x20,0x22,0x2f,0x22,0x20,\n    0x2e,0x2e,0x20,0x6e,0x6f,0x72,0x6d,0x61,0x6c,0x69,0x7a,0x65,0x64,0x70,0x61,0x74,\n    0x68,0x29,0x2d,0x2d,0x4d,0x2e,0x62,0x61,0x73,0x65,0x5f,0x64,0x69,0x72,0x20,0x2e,\n    0x2e,0x20,0x22,0x2f,0x73,0x72,0x63,0x2f,0x22,0x20,0x2e,0x2e,0x20,0x6e,0x6f,0x72,\n    0x6d,0x61,0x6c,0x69,0x7a,0x65,0x64,0x70,0x61,0x74,0x68,0x0a,0x2d,0x2d,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x4d,0x2e,0x74,0x6f,0x5f,0x66,0x69,\n    0x6c,0x65,0x5f,0x75,0x72,0x69,0x28,0x6e,0x6f,0x72,0x6d,0x61,0x6c,0x69,0x7a,0x65,\n    0x64,0x70,0x61,0x74,0x68,0x29,0x0a,0x20,0x20,0x20,0x20,0x65,0x6c,0x73,0x65,0x69,\n    0x66,0x20,0x73,0x6f,0x75,0x72,0x63,0x65,0x3a,0x73,0x75,0x62,0x28,0x23,0x73,0x6f,\n    0x75,0x72,0x63,0x65,0x2d,0x33,0x2c,0x2d,0x31,0x29,0x3a,0x6c,0x6f,0x77,0x65,0x72,\n    0x28,0x29,0x20,0x3d,0x3d,0x20,0x22,0x2e,0x6c,0x75,0x61,0x22,0x20,0x74,0x68,0x65,\n    0x6e,0x20,0x2d,0x2d,0x20,0x6c,0x6f,0x61,0x64,0x73,0x74,0x72,0x69,0x6e,0x67,0x20,\n    0x72,0x65,0x6c,0x61,0x74,0x69,0x76,0x65,0x20,0x70,0x61,0x74,0x68,0x20,0x73,0x6f,\n    0x75,0x72,0x63,0x65,0x20,0x66,0x69,0x6c,0x65,0x20,0x28,0x61,0x64,0x64,0x65,0x64,\n    0x20,0x62,0x79,0x20,0x67,0x75,0x61,0x6e,0x79,0x75,0x29,0x0a,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x2d,0x2d,0x20,0x61,0x6e,0x64,0x72,0x6f,0x69,0x64,0x0a,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x69,0x66,0x20,0x70,0x6c,0x61,0x74,0x66,0x6f,\n    0x72,0x6d,0x20,0x3d,0x3d,0x20,0x22,0x61,0x6e,0x64,0x72,0x6f,0x69,0x64,0x22,0x20,\n    0x74,0x68,0x65,0x6e,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x73,0x6f,0x75,0x72,0x63,0x65,0x20,0x3d,0x20,0x63,0x6f,0x6e,0x76,0x65,0x72,\n    0x74,0x5f,0x74,0x6f,0x5f,0x61,0x6e,0x64,0x72,0x6f,0x69,0x64,0x5f,0x66,0x69,0x6c,\n    0x65,0x5f,0x75,0x72,0x69,0x28,0x73,0x6f,0x75,0x72,0x63,0x65,0x29,0x0a,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x2d,0x2d,0x20,0x69,0x6f,0x73,0x20,0x3f,0x3f,0x3f,\n    0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x65,0x6c,0x73,0x65,0x69,0x66,0x20,\n    0x70,0x6c,0x61,0x74,0x66,0x6f,0x72,0x6d,0x20,0x3d,0x3d,0x20,0x22,0x69,0x6f,0x73,\n    0x22,0x20,0x74,0x68,0x65,0x6e,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x73,0x6f,0x75,0x72,0x63,0x65,0x20,0x3d,0x20,0x63,0x6f,0x6e,0x76,\n    0x65,0x72,0x74,0x5f,0x74,0x6f,0x5f,0x69,0x6f,0x73,0x5f,0x66,0x69,0x6c,0x65,0x5f,\n    0x75,0x72,0x69,0x28,0x73,0x6f,0x75,0x72,0x63,0x65,0x29,0x0a,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x6c,0x6f,0x63,0x61,0x6c,0x20,0x6e,0x6f,0x72,0x6d,0x61,0x6c,0x69,0x7a,0x65,0x64,\n    0x70,0x61,0x74,0x68,0x20,0x3d,0x20,0x4d,0x2e,0x6e,0x6f,0x72,0x6d,0x61,0x6c,0x69,\n    0x7a,0x65,0x28,0x73,0x6f,0x75,0x72,0x63,0x65,0x29,0x0a,0x2d,0x2d,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x69,0x66,0x20,0x6e,0x6f,0x74,0x20,0x4d,0x2e,0x69,0x73,\n    0x5f,0x70,0x61,0x74,0x68,0x5f,0x61,0x62,0x73,0x6f,0x6c,0x75,0x74,0x65,0x28,0x6e,\n    0x6f,0x72,0x6d,0x61,0x6c,0x69,0x7a,0x65,0x64,0x70,0x61,0x74,0x68,0x29,0x20,0x74,\n    0x68,0x65,0x6e,0x0a,0x2d,0x2d,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x6e,0x6f,0x72,0x6d,0x61,0x6c,0x69,0x7a,0x65,0x64,0x70,0x61,0x74,0x68,\n    0x20,0x3d,0x20,0x4d,0x2e,0x6e,0x6f,0x72,0x6d,0x61,0x6c,0x69,0x7a,0x65,0x28,0x4d,\n    0x2e,0x62,0x61,0x73,0x65,0x5f,0x64,0x69,0x72,0x20,0x2e,0x2e,0x20,0x22,0x2f,0x22,\n    0x20,0x2e,0x2e,0x20,0x6e,0x6f,0x72,0x6d,0x61,0x6c,0x69,0x7a,0x65,0x64,0x70,0x61,\n    0x74,0x68,0x29,0x2d,0x2d,0x4d,0x2e,0x62,0x61,0x73,0x65,0x5f,0x64,0x69,0x72,0x20,\n    0x2e,0x2e,0x20,0x22,0x2f,0x73,0x72,0x63,0x2f,0x22,0x20,0x2e,0x2e,0x20,0x6e,0x6f,\n    0x72,0x6d,0x61,0x6c,0x69,0x7a,0x65,0x64,0x70,0x61,0x74,0x68,0x0a,0x2d,0x2d,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x4d,0x2e,0x74,0x6f,0x5f,0x66,\n    0x69,0x6c,0x65,0x5f,0x75,0x72,0x69,0x28,0x6e,0x6f,0x72,0x6d,0x61,0x6c,0x69,0x7a,\n    0x65,0x64,0x70,0x61,0x74,0x68,0x29,0x0a,0x20,0x20,0x20,0x20,0x65,0x6c,0x73,0x65,\n    0x20,0x2d,0x2d,0x20,0x64,0x79,0x6e,0x61,0x6d,0x69,0x63,0x20,0x63,0x6f,0x64,0x65,\n    0x2c,0x20,0x73,0x74,0x72,0x69,0x70,0x70,0x65,0x64,0x20,0x62,0x79,0x74,0x65,0x63,\n    0x6f,0x64,0x65,0x2c,0x20,0x74,0x61,0x69,0x6c,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,\n    0x2c,0x20,0x2e,0x2e,0x2e,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x72,0x65,\n    0x74,0x75,0x72,0x6e,0x20,0x66,0x61,0x6c,0x73,0x65,0x0a,0x20,0x20,0x20,0x20,0x65,\n    0x6e,0x64,0x0a,0x65,0x6e,0x64,0x0a,0x0a,0x2d,0x2d,0x46,0x49,0x58,0x4d,0x45,0x3a,\n    0x20,0x61,0x73,0x20,0x72,0x65,0x73,0x75,0x6c,0x74,0x20,0x69,0x73,0x20,0x63,0x61,\n    0x63,0x68,0x65,0x64,0x2c,0x20,0x63,0x68,0x61,0x6e,0x67,0x65,0x73,0x20,0x69,0x6e,\n    0x20,0x70,0x61,0x63,0x6b,0x61,0x67,0x65,0x2e,0x70,0x61,0x74,0x68,0x20,0x74,0x68,\n    0x61,0x74,0x20,0x6d,0x6f,0x64,0x69,0x66,0x79,0x20,0x74,0x68,0x65,0x20,0x6d,0x6f,\n    0x64,0x75,0x6c,0x65,0x20,0x6e,0x61,0x6d,0x65,0x20,0x61,0x72,0x65,0x20,0x6d,0x69,\n    0x73,0x73,0x65,0x64,0x0a,0x2d,0x2d,0x20,0x28,0x6d,0x6f,0x73,0x74,0x6c,0x79,0x20,\n    0x61,0x66,0x66,0x65,0x63,0x74,0x20,0x6d,0x61,0x69,0x6e,0x20,0x6d,0x6f,0x64,0x75,\n    0x6c,0x65,0x20,0x77,0x68,0x65,0x6e,0x20,0x4c,0x75,0x61,0x20,0x69,0x6e,0x74,0x65,\n    0x72,0x70,0x72,0x65,0x74,0x65,0x72,0x20,0x69,0x73,0x20,0x6c,0x61,0x75,0x6e,0x63,\n    0x68,0x65,0x64,0x20,0x77,0x69,0x74,0x68,0x20,0x61,0x6e,0x20,0x61,0x62,0x73,0x6f,\n    0x6c,0x75,0x74,0x65,0x20,0x70,0x61,0x74,0x68,0x29,0x0a,0x6c,0x6f,0x63,0x61,0x6c,\n    0x20,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x20,0x67,0x65,0x74,0x5f,0x6d,0x6f,\n    0x64,0x75,0x6c,0x65,0x5f,0x75,0x72,0x69,0x20,0x28,0x73,0x6f,0x75,0x72,0x63,0x65,\n    0x29,0x0a,0x20,0x20,0x20,0x20,0x69,0x66,0x20,0x73,0x6f,0x75,0x72,0x63,0x65,0x3a,\n    0x73,0x75,0x62,0x28,0x31,0x2c,0x31,0x29,0x20,0x3d,0x3d,0x20,0x22,0x40,0x22,0x20,\n    0x74,0x68,0x65,0x6e,0x20,0x2d,0x2d,0x20,0x72,0x65,0x61,0x6c,0x20,0x73,0x6f,0x75,\n    0x72,0x63,0x65,0x20,0x66,0x69,0x6c,0x65,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x75,0x72,0x69,0x0a,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x73,0x6f,0x75,0x72,0x63,0x65,0x70,\n    0x61,0x74,0x68,0x20,0x3d,0x20,0x73,0x6f,0x75,0x72,0x63,0x65,0x3a,0x73,0x75,0x62,\n    0x28,0x32,0x29,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,0x61,\n    0x6c,0x20,0x6e,0x6f,0x72,0x6d,0x61,0x6c,0x69,0x7a,0x65,0x64,0x70,0x61,0x74,0x68,\n    0x20,0x3d,0x20,0x4d,0x2e,0x6e,0x6f,0x72,0x6d,0x61,0x6c,0x69,0x7a,0x65,0x28,0x73,\n    0x6f,0x75,0x72,0x63,0x65,0x70,0x61,0x74,0x68,0x29,0x0a,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x6c,0x75,0x61,0x70,0x61,0x74,0x68,\n    0x74,0x61,0x62,0x6c,0x65,0x20,0x3d,0x20,0x73,0x70,0x6c,0x69,0x74,0x20,0x28,0x70,\n    0x61,0x63,0x6b,0x61,0x67,0x65,0x2e,0x70,0x61,0x74,0x68,0x2c,0x20,0x22,0x3b,0x22,\n    0x29,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,\n    0x69,0x73,0x5f,0x73,0x6f,0x75,0x72,0x63,0x65,0x5f,0x61,0x62,0x73,0x6f,0x6c,0x75,\n    0x74,0x65,0x20,0x3d,0x20,0x4d,0x2e,0x69,0x73,0x5f,0x70,0x61,0x74,0x68,0x5f,0x61,\n    0x62,0x73,0x6f,0x6c,0x75,0x74,0x65,0x28,0x73,0x6f,0x75,0x72,0x63,0x65,0x70,0x61,\n    0x74,0x68,0x29,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x2d,0x2d,0x20,0x77,\n    0x6f,0x72,0x6b,0x61,0x72,0x72,0x6f,0x75,0x6e,0x64,0x20,0x3a,0x20,0x41,0x64,0x64,\n    0x20,0x61,0x6c,0x77,0x61,0x79,0x73,0x20,0x74,0x68,0x65,0x20,0x3f,0x2e,0x6c,0x75,\n    0x61,0x20,0x65,0x6e,0x74,0x72,0x79,0x20,0x74,0x6f,0x20,0x73,0x75,0x70,0x70,0x6f,\n    0x72,0x74,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x2d,0x2d,0x20,0x74,0x68,\n    0x65,0x20,0x63,0x61,0x73,0x65,0x20,0x77,0x68,0x65,0x72,0x65,0x20,0x66,0x69,0x6c,\n    0x65,0x20,0x77,0x61,0x73,0x20,0x6c,0x6f,0x61,0x64,0x65,0x64,0x20,0x62,0x79,0x20,\n    0x3a,0x20,0x22,0x6c,0x75,0x61,0x20,0x6d,0x79,0x66,0x69,0x6c,0x65,0x2e,0x6c,0x75,\n    0x61,0x22,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x74,0x61,0x62,0x6c,0x65,\n    0x2e,0x69,0x6e,0x73,0x65,0x72,0x74,0x28,0x6c,0x75,0x61,0x70,0x61,0x74,0x68,0x74,\n    0x61,0x62,0x6c,0x65,0x2c,0x22,0x3f,0x2e,0x6c,0x75,0x61,0x22,0x29,0x0a,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x66,0x6f,0x72,0x20,0x69,0x2c,0x76,0x61,0x72,0x20,\n    0x69,0x6e,0x20,0x69,0x70,0x61,0x69,0x72,0x73,0x28,0x6c,0x75,0x61,0x70,0x61,0x74,\n    0x68,0x74,0x61,0x62,0x6c,0x65,0x29,0x20,0x64,0x6f,0x0a,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x2d,0x2d,0x20,0x61,0x76,0x6f,0x69,0x64,0x20,\n    0x72,0x65,0x6c,0x61,0x74,0x69,0x76,0x65,0x20,0x70,0x61,0x74,0x74,0x65,0x72,0x6e,\n    0x73,0x20,0x6d,0x61,0x74,0x63,0x68,0x69,0x6e,0x67,0x20,0x61,0x62,0x73,0x6f,0x6c,\n    0x75,0x74,0x65,0x20,0x6f,0x6e,0x65,0x73,0x20,0x28,0x65,0x2e,0x67,0x2e,0x20,0x3f,\n    0x2e,0x6c,0x75,0x61,0x20,0x6d,0x61,0x74,0x63,0x68,0x65,0x73,0x20,0x61,0x6e,0x79,\n    0x74,0x68,0x69,0x6e,0x67,0x29,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x69,0x66,0x20,0x4d,0x2e,0x69,0x73,0x5f,0x70,0x61,0x74,0x68,0x5f,\n    0x61,0x62,0x73,0x6f,0x6c,0x75,0x74,0x65,0x28,0x76,0x61,0x72,0x29,0x20,0x3d,0x3d,\n    0x20,0x69,0x73,0x5f,0x73,0x6f,0x75,0x72,0x63,0x65,0x5f,0x61,0x62,0x73,0x6f,0x6c,\n    0x75,0x74,0x65,0x20,0x74,0x68,0x65,0x6e,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x65,\n    0x73,0x63,0x61,0x70,0x65,0x64,0x20,0x3d,0x20,0x73,0x74,0x72,0x69,0x6e,0x67,0x2e,\n    0x67,0x73,0x75,0x62,0x28,0x4d,0x2e,0x6e,0x6f,0x72,0x6d,0x61,0x6c,0x69,0x7a,0x65,\n    0x28,0x76,0x61,0x72,0x29,0x2c,0x22,0x5b,0x25,0x5e,0x25,0x24,0x25,0x28,0x25,0x29,\n    0x25,0x25,0x25,0x2e,0x25,0x5b,0x25,0x5d,0x25,0x2a,0x25,0x2b,0x25,0x2d,0x25,0x3f,\n    0x5d,0x22,0x2c,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x28,0x63,0x29,0x20,0x72,\n    0x65,0x74,0x75,0x72,0x6e,0x20,0x22,0x25,0x22,0x2e,0x2e,0x63,0x20,0x65,0x6e,0x64,\n    0x29,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x70,0x61,0x74,0x74,0x65,0x72,0x6e,0x20,\n    0x3d,0x20,0x73,0x74,0x72,0x69,0x6e,0x67,0x2e,0x67,0x73,0x75,0x62,0x28,0x65,0x73,\n    0x63,0x61,0x70,0x65,0x64,0x2c,0x22,0x25,0x25,0x25,0x3f,0x22,0x2c,0x22,0x28,0x2e,\n    0x2b,0x29,0x22,0x29,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x6d,0x6f,0x64,0x75,0x6c,\n    0x65,0x6e,0x61,0x6d,0x65,0x20,0x3d,0x20,0x73,0x74,0x72,0x69,0x6e,0x67,0x2e,0x6d,\n    0x61,0x74,0x63,0x68,0x28,0x6e,0x6f,0x72,0x6d,0x61,0x6c,0x69,0x7a,0x65,0x64,0x70,\n    0x61,0x74,0x68,0x2c,0x70,0x61,0x74,0x74,0x65,0x72,0x6e,0x29,0x0a,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x69,0x66,0x20,\n    0x6d,0x6f,0x64,0x75,0x6c,0x65,0x6e,0x61,0x6d,0x65,0x20,0x74,0x68,0x65,0x6e,0x0a,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x6d,0x6f,0x64,0x75,0x6c,0x65,0x6e,0x61,0x6d,0x65,0x20,0x3d,\n    0x20,0x73,0x74,0x72,0x69,0x6e,0x67,0x2e,0x67,0x73,0x75,0x62,0x28,0x6d,0x6f,0x64,\n    0x75,0x6c,0x65,0x6e,0x61,0x6d,0x65,0x2c,0x22,0x2f,0x22,0x2c,0x22,0x2e,0x22,0x29,\n    0x3b,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x2d,0x2d,0x20,0x69,0x66,0x20,0x77,0x65,0x20,0x66,\n    0x69,0x6e,0x64,0x20,0x6d,0x6f,0x72,0x65,0x20,0x74,0x68,0x61,0x6e,0x20,0x31,0x20,\n    0x70,0x6f,0x73,0x73,0x69,0x62,0x6c,0x65,0x20,0x6d,0x6f,0x64,0x75,0x6c,0x65,0x6e,\n    0x61,0x6d,0x65,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x74,0x68,0x65,0x20,0x73,\n    0x68,0x6f,0x72,0x74,0x65,0x72,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x69,0x66,0x20,0x6e,0x6f,\n    0x74,0x20,0x75,0x72,0x69,0x20,0x6f,0x72,0x20,0x73,0x74,0x72,0x69,0x6e,0x67,0x2e,\n    0x6c,0x65,0x6e,0x28,0x75,0x72,0x69,0x29,0x3e,0x73,0x74,0x72,0x69,0x6e,0x67,0x2e,\n    0x6c,0x65,0x6e,0x28,0x6d,0x6f,0x64,0x75,0x6c,0x65,0x6e,0x61,0x6d,0x65,0x29,0x20,\n    0x74,0x68,0x65,0x6e,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x75,0x72,0x69,\n    0x20,0x3d,0x20,0x6d,0x6f,0x64,0x75,0x6c,0x65,0x6e,0x61,0x6d,0x65,0x0a,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x69,0x66,\n    0x20,0x75,0x72,0x69,0x20,0x74,0x68,0x65,0x6e,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,\n    0x20,0x22,0x6d,0x6f,0x64,0x75,0x6c,0x65,0x3a,0x2f,0x2f,0x2f,0x22,0x2e,0x2e,0x75,\n    0x72,0x69,0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,0x20,0x20,0x65,0x6e,0x64,0x0a,0x20,\n    0x20,0x20,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x66,0x61,0x6c,0x73,0x65,0x0a,\n    0x65,0x6e,0x64,0x0a,0x0a,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x20,0x4d,0x2e,\n    0x67,0x65,0x74,0x5f,0x75,0x72,0x69,0x20,0x28,0x73,0x6f,0x75,0x72,0x63,0x65,0x29,\n    0x0a,0x20,0x20,0x20,0x20,0x2d,0x2d,0x20,0x73,0x65,0x61,0x72,0x63,0x68,0x20,0x69,\n    0x6e,0x20,0x63,0x61,0x63,0x68,0x65,0x0a,0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,0x61,\n    0x6c,0x20,0x75,0x72,0x69,0x20,0x3d,0x20,0x75,0x72,0x69,0x5f,0x63,0x61,0x63,0x68,\n    0x65,0x5b,0x73,0x6f,0x75,0x72,0x63,0x65,0x5d,0x0a,0x20,0x20,0x20,0x20,0x69,0x66,\n    0x20,0x75,0x72,0x69,0x20,0x7e,0x3d,0x20,0x6e,0x69,0x6c,0x20,0x74,0x68,0x65,0x6e,\n    0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x75,0x72,0x69,0x20,0x65,0x6e,0x64,0x0a,\n    0x0a,0x20,0x20,0x20,0x20,0x2d,0x2d,0x20,0x6e,0x6f,0x74,0x20,0x66,0x6f,0x75,0x6e,\n    0x64,0x2c,0x20,0x63,0x72,0x65,0x61,0x74,0x65,0x20,0x75,0x72,0x69,0x0a,0x20,0x20,\n    0x20,0x20,0x69,0x66,0x20,0x75,0x74,0x69,0x6c,0x2e,0x66,0x65,0x61,0x74,0x75,0x72,\n    0x65,0x73,0x2e,0x75,0x72,0x69,0x20,0x3d,0x3d,0x20,0x22,0x6d,0x6f,0x64,0x75,0x6c,\n    0x65,0x22,0x20,0x74,0x68,0x65,0x6e,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x75,0x72,0x69,0x20,0x3d,0x20,0x67,0x65,0x74,0x5f,0x6d,0x6f,0x64,0x75,0x6c,0x65,\n    0x5f,0x75,0x72,0x69,0x28,0x73,0x6f,0x75,0x72,0x63,0x65,0x29,0x0a,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x69,0x66,0x20,0x6e,0x6f,0x74,0x20,0x75,0x72,0x69,0x20,\n    0x74,0x68,0x65,0x6e,0x20,0x75,0x72,0x69,0x20,0x3d,0x20,0x67,0x65,0x74,0x5f,0x61,\n    0x62,0x73,0x5f,0x66,0x69,0x6c,0x65,0x5f,0x75,0x72,0x69,0x20,0x28,0x73,0x6f,0x75,\n    0x72,0x63,0x65,0x29,0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,0x20,0x20,0x65,0x6c,0x73,\n    0x65,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x75,0x72,0x69,0x20,0x3d,0x20,\n    0x20,0x67,0x65,0x74,0x5f,0x61,0x62,0x73,0x5f,0x66,0x69,0x6c,0x65,0x5f,0x75,0x72,\n    0x69,0x20,0x28,0x73,0x6f,0x75,0x72,0x63,0x65,0x29,0x0a,0x20,0x20,0x20,0x20,0x65,\n    0x6e,0x64,0x0a,0x0a,0x20,0x20,0x20,0x20,0x75,0x72,0x69,0x5f,0x63,0x61,0x63,0x68,\n    0x65,0x5b,0x73,0x6f,0x75,0x72,0x63,0x65,0x5d,0x20,0x3d,0x20,0x75,0x72,0x69,0x0a,\n    0x20,0x20,0x20,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x75,0x72,0x69,0x0a,0x65,\n    0x6e,0x64,0x0a,0x0a,0x2d,0x2d,0x20,0x67,0x65,0x74,0x20,0x70,0x61,0x74,0x68,0x20,\n    0x66,0x69,0x6c,0x65,0x20,0x66,0x72,0x6f,0x6d,0x20,0x75,0x72,0x69,0x0a,0x66,0x75,\n    0x6e,0x63,0x74,0x69,0x6f,0x6e,0x20,0x4d,0x2e,0x67,0x65,0x74,0x5f,0x70,0x61,0x74,\n    0x68,0x20,0x28,0x75,0x72,0x69,0x29,0x0a,0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,0x61,\n    0x6c,0x20,0x70,0x61,0x72,0x73,0x65,0x64,0x5f,0x70,0x61,0x74,0x68,0x20,0x3d,0x20,\n    0x61,0x73,0x73,0x65,0x72,0x74,0x28,0x75,0x72,0x6c,0x2e,0x70,0x61,0x72,0x73,0x65,\n    0x28,0x75,0x72,0x69,0x29,0x29,0x0a,0x20,0x20,0x20,0x20,0x69,0x66,0x20,0x70,0x61,\n    0x72,0x73,0x65,0x64,0x5f,0x70,0x61,0x74,0x68,0x2e,0x73,0x63,0x68,0x65,0x6d,0x65,\n    0x20,0x3d,0x3d,0x20,0x22,0x66,0x69,0x6c,0x65,0x22,0x20,0x74,0x68,0x65,0x6e,0x0a,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x4d,\n    0x2e,0x74,0x6f,0x5f,0x70,0x61,0x74,0x68,0x28,0x70,0x61,0x72,0x73,0x65,0x64,0x5f,\n    0x70,0x61,0x74,0x68,0x29,0x0a,0x20,0x20,0x20,0x20,0x65,0x6c,0x73,0x65,0x0a,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x2d,0x2d,0x20,0x73,0x65,0x61,0x72,0x63,0x68,\n    0x20,0x69,0x6e,0x20,0x63,0x61,0x63,0x68,0x65,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x2d,0x2d,0x20,0x77,0x65,0x20,0x73,0x68,0x6f,0x75,0x6c,0x64,0x20,0x73,\n    0x75,0x72,0x65,0x6c,0x79,0x20,0x63,0x61,0x6c,0x63,0x75,0x6c,0x61,0x74,0x65,0x20,\n    0x69,0x74,0x20,0x69,0x6e,0x73,0x74,0x65,0x61,0x64,0x20,0x6f,0x66,0x20,0x66,0x69,\n    0x6e,0x64,0x20,0x69,0x6e,0x20,0x63,0x61,0x63,0x68,0x65,0x0a,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x66,0x6f,0x72,0x20,0x6b,0x2c,0x76,0x20,0x69,0x6e,0x20,0x70,\n    0x61,0x69,0x72,0x73,0x28,0x75,0x72,0x69,0x5f,0x63,0x61,0x63,0x68,0x65,0x29,0x64,\n    0x6f,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x69,0x66,\n    0x20,0x76,0x20,0x3d,0x3d,0x20,0x75,0x72,0x69,0x20,0x74,0x68,0x65,0x6e,0x0a,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x61,\n    0x73,0x73,0x65,0x72,0x74,0x28,0x6b,0x3a,0x73,0x75,0x62,0x28,0x31,0x2c,0x31,0x29,\n    0x20,0x3d,0x3d,0x20,0x22,0x40,0x22,0x29,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,\n    0x6b,0x3a,0x73,0x75,0x62,0x28,0x32,0x29,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,0x20,0x20,0x65,0x6e,0x64,0x0a,0x65,0x6e,0x64,\n    0x0a,0x0a,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x20,0x4d,0x2e,0x6e,0x6f,0x72,\n    0x6d,0x61,0x6c,0x69,0x7a,0x65,0x28,0x70,0x61,0x74,0x68,0x29,0x0a,0x20,0x20,0x20,\n    0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x70,0x61,0x72,0x74,0x73,0x20,0x3d,0x20,0x7b,\n    0x20,0x7d,0x0a,0x20,0x20,0x20,0x20,0x66,0x6f,0x72,0x20,0x77,0x20,0x69,0x6e,0x20,\n    0x70,0x61,0x74,0x68,0x3a,0x67,0x6d,0x61,0x74,0x63,0x68,0x28,0x22,0x5b,0x5e,0x2f,\n    0x5d,0x2b,0x22,0x29,0x20,0x64,0x6f,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x69,0x66,0x20,0x20,0x20,0x20,0x20,0x77,0x20,0x3d,0x3d,0x20,0x22,0x2e,0x2e,0x22,\n    0x20,0x61,0x6e,0x64,0x20,0x23,0x70,0x61,0x72,0x74,0x73,0x20,0x7e,0x3d,0x30,0x20,\n    0x74,0x68,0x65,0x6e,0x20,0x74,0x61,0x62,0x6c,0x65,0x2e,0x72,0x65,0x6d,0x6f,0x76,\n    0x65,0x28,0x70,0x61,0x72,0x74,0x73,0x29,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x65,0x6c,0x73,0x65,0x69,0x66,0x20,0x77,0x20,0x7e,0x3d,0x20,0x22,0x2e,0x22,\n    0x20,0x20,0x74,0x68,0x65,0x6e,0x20,0x74,0x61,0x62,0x6c,0x65,0x2e,0x69,0x6e,0x73,\n    0x65,0x72,0x74,0x28,0x70,0x61,0x72,0x74,0x73,0x2c,0x20,0x77,0x29,0x0a,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,0x20,0x20,0x65,0x6e,\n    0x64,0x0a,0x20,0x20,0x20,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x28,0x70,0x61,\n    0x74,0x68,0x3a,0x73,0x75,0x62,0x28,0x31,0x2c,0x31,0x29,0x20,0x3d,0x3d,0x20,0x22,\n    0x2f,0x22,0x20,0x61,0x6e,0x64,0x20,0x22,0x2f,0x22,0x20,0x6f,0x72,0x20,0x22,0x22,\n    0x29,0x20,0x2e,0x2e,0x20,0x74,0x61,0x62,0x6c,0x65,0x2e,0x63,0x6f,0x6e,0x63,0x61,\n    0x74,0x28,0x70,0x61,0x72,0x74,0x73,0x2c,0x20,0x22,0x2f,0x22,0x29,0x0a,0x65,0x6e,\n    0x64,0x0a,0x0a,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x20,0x4d,0x2e,0x69,0x6e,\n    0x69,0x74,0x28,0x65,0x78,0x65,0x63,0x75,0x74,0x69,0x6f,0x6e,0x70,0x6c,0x61,0x74,\n    0x66,0x6f,0x72,0x6d,0x2c,0x77,0x6f,0x72,0x6b,0x69,0x6e,0x67,0x64,0x69,0x72,0x65,\n    0x63,0x74,0x6f,0x72,0x79,0x2c,0x73,0x65,0x61,0x72,0x63,0x68,0x70,0x61,0x74,0x68,\n    0x73,0x29,0x0a,0x20,0x20,0x20,0x20,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x0a,0x20,0x20,0x20,0x20,0x2d,0x2d,0x20,0x64,0x65,0x66,0x69,0x6e,0x65,0x20,\n    0x63,0x75,0x72,0x72,0x65,0x6e,0x74,0x20,0x70,0x6c,0x61,0x74,0x66,0x6f,0x72,0x6d,\n    0x0a,0x20,0x20,0x20,0x20,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x0a,\n    0x20,0x20,0x20,0x20,0x2d,0x2d,0x20,0x63,0x68,0x65,0x63,0x6b,0x20,0x70,0x61,0x72,\n    0x61,0x6d,0x65,0x74,0x65,0x72,0x0a,0x20,0x20,0x20,0x20,0x69,0x66,0x20,0x65,0x78,\n    0x65,0x63,0x75,0x74,0x69,0x6f,0x6e,0x70,0x6c,0x61,0x74,0x66,0x6f,0x72,0x6d,0x20,\n    0x61,0x6e,0x64,0x20,0x65,0x78,0x65,0x63,0x75,0x74,0x69,0x6f,0x6e,0x70,0x6c,0x61,\n    0x74,0x66,0x6f,0x72,0x6d,0x20,0x7e,0x3d,0x20,0x22,0x75,0x6e,0x69,0x78,0x22,0x20,\n    0x61,0x6e,0x64,0x20,0x65,0x78,0x65,0x63,0x75,0x74,0x69,0x6f,0x6e,0x70,0x6c,0x61,\n    0x74,0x66,0x6f,0x72,0x6d,0x20,0x7e,0x3d,0x22,0x77,0x69,0x6e,0x22,0x20,0x61,0x6e,\n    0x64,0x20,0x65,0x78,0x65,0x63,0x75,0x74,0x69,0x6f,0x6e,0x70,0x6c,0x61,0x74,0x66,\n    0x6f,0x72,0x6d,0x20,0x7e,0x3d,0x22,0x61,0x6e,0x64,0x72,0x6f,0x69,0x64,0x22,0x20,\n    0x61,0x6e,0x64,0x20,0x65,0x78,0x65,0x63,0x75,0x74,0x69,0x6f,0x6e,0x70,0x6c,0x61,\n    0x74,0x66,0x6f,0x72,0x6d,0x20,0x7e,0x3d,0x22,0x69,0x6f,0x73,0x22,0x74,0x68,0x65,\n    0x6e,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x65,0x72,0x72,0x6f,0x72,0x28,\n    0x22,0x55,0x6e,0x61,0x62,0x6c,0x65,0x20,0x74,0x6f,0x20,0x69,0x6e,0x69,0x74,0x69,\n    0x61,0x6c,0x69,0x7a,0x65,0x20,0x70,0x6c,0x61,0x74,0x66,0x6f,0x72,0x6d,0x20,0x6d,\n    0x6f,0x64,0x75,0x6c,0x65,0x20,0x3a,0x20,0x65,0x78,0x65,0x63,0x75,0x74,0x69,0x6f,\n    0x6e,0x20,0x70,0x6c,0x61,0x74,0x66,0x6f,0x72,0x6d,0x20,0x73,0x68,0x6f,0x75,0x6c,\n    0x64,0x20,0x62,0x65,0x20,0x27,0x75,0x6e,0x69,0x78,0x27,0x20,0x6f,0x72,0x20,0x27,\n    0x77,0x69,0x6e,0x27,0x2e,0x22,0x29,0x0a,0x20,0x20,0x20,0x20,0x65,0x6e,0x64,0x0a,\n    0x0a,0x20,0x20,0x20,0x20,0x2d,0x2d,0x20,0x75,0x73,0x65,0x20,0x70,0x61,0x72,0x61,\n    0x6d,0x65,0x74,0x65,0x72,0x20,0x61,0x73,0x20,0x63,0x75,0x72,0x72,0x65,0x6e,0x74,\n    0x20,0x70,0x6c,0x61,0x74,0x66,0x6f,0x72,0x6d,0x0a,0x20,0x20,0x20,0x20,0x69,0x66,\n    0x20,0x65,0x78,0x65,0x63,0x75,0x74,0x69,0x6f,0x6e,0x70,0x6c,0x61,0x74,0x66,0x6f,\n    0x72,0x6d,0x20,0x74,0x68,0x65,0x6e,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x70,0x6c,0x61,0x74,0x66,0x6f,0x72,0x6d,0x20,0x3d,0x20,0x65,0x78,0x65,0x63,0x75,\n    0x74,0x69,0x6f,0x6e,0x70,0x6c,0x61,0x74,0x66,0x6f,0x72,0x6d,0x0a,0x20,0x20,0x20,\n    0x20,0x65,0x6c,0x73,0x65,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x2d,0x2d,\n    0x69,0x66,0x20,0x6e,0x6f,0x74,0x20,0x64,0x65,0x66,0x69,0x6e,0x65,0x20,0x74,0x72,\n    0x79,0x20,0x74,0x6f,0x20,0x67,0x75,0x65,0x73,0x73,0x20,0x69,0x74,0x2e,0x0a,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x66,0x75,0x6e,\n    0x63,0x74,0x69,0x6f,0x6e,0x20,0x69,0x73,0x77,0x69,0x6e,0x64,0x6f,0x77,0x73,0x28,\n    0x29,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x6c,0x6f,\n    0x63,0x61,0x6c,0x20,0x70,0x20,0x3d,0x20,0x69,0x6f,0x2e,0x70,0x6f,0x70,0x65,0x6e,\n    0x28,0x22,0x65,0x63,0x68,0x6f,0x20,0x25,0x6f,0x73,0x25,0x22,0x29,0x0a,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x69,0x66,0x20,0x70,0x20,0x74,\n    0x68,0x65,0x6e,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x72,0x65,0x73,0x75,0x6c,0x74,\n    0x20,0x3d,0x70,0x3a,0x72,0x65,0x61,0x64,0x28,0x22,0x2a,0x6c,0x22,0x29,0x0a,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x70,\n    0x3a,0x63,0x6c,0x6f,0x73,0x65,0x28,0x29,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,\n    0x72,0x65,0x73,0x75,0x6c,0x74,0x20,0x3d,0x3d,0x20,0x22,0x57,0x69,0x6e,0x64,0x6f,\n    0x77,0x73,0x5f,0x4e,0x54,0x22,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x66,0x61,0x6c,0x73,0x65,0x0a,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x65,0x6e,0x64,0x0a,0x0a,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x73,0x74,0x61,0x74,0x75,\n    0x73,0x2c,0x20,0x69,0x73,0x77,0x69,0x6e,0x20,0x3d,0x20,0x70,0x63,0x61,0x6c,0x6c,\n    0x28,0x69,0x73,0x77,0x69,0x6e,0x64,0x6f,0x77,0x73,0x29,0x0a,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x69,0x66,0x20,0x73,0x74,0x61,0x74,0x75,0x73,0x20,0x61,0x6e,\n    0x64,0x20,0x69,0x73,0x77,0x69,0x6e,0x20,0x74,0x68,0x65,0x6e,0x0a,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x70,0x6c,0x61,0x74,0x66,0x6f,0x72,\n    0x6d,0x20,0x3d,0x20,0x22,0x77,0x69,0x6e,0x22,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x65,0x6c,0x73,0x65,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x70,0x6c,0x61,0x74,0x66,0x6f,0x72,0x6d,0x20,0x3d,0x20,0x22,0x75,\n    0x6e,0x69,0x78,0x22,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x65,0x6e,0x64,\n    0x0a,0x20,0x20,0x20,0x20,0x65,0x6e,0x64,0x0a,0x0a,0x20,0x20,0x20,0x20,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x0a,0x20,0x20,0x20,0x20,0x2d,0x2d,0x20,\n    0x70,0x6c,0x61,0x74,0x66,0x6f,0x72,0x6d,0x20,0x64,0x65,0x70,0x65,0x6e,0x64,0x65,\n    0x6e,0x74,0x20,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x0a,0x20,0x20,0x20,0x20,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x0a,0x20,0x20,0x20,0x20,0x69,\n    0x66,0x20,0x70,0x6c,0x61,0x74,0x66,0x6f,0x72,0x6d,0x20,0x3d,0x3d,0x20,0x22,0x75,\n    0x6e,0x69,0x78,0x22,0x20,0x6f,0x72,0x20,0x70,0x6c,0x61,0x74,0x66,0x6f,0x72,0x6d,\n    0x20,0x3d,0x3d,0x20,0x22,0x61,0x6e,0x64,0x72,0x6f,0x69,0x64,0x22,0x20,0x6f,0x72,\n    0x20,0x70,0x6c,0x61,0x74,0x66,0x6f,0x72,0x6d,0x20,0x3d,0x3d,0x20,0x22,0x69,0x6f,\n    0x73,0x22,0x20,0x74,0x68,0x65,0x6e,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x2d,0x2d,0x20,0x54,0x68,0x65,0x20,0x50,0x61,0x74,0x68,0x20,0x73,0x65,0x70,0x61,\n    0x72,0x61,0x74,0x6f,0x72,0x20,0x63,0x68,0x61,0x72,0x61,0x63,0x74,0x65,0x72,0x0a,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x4d,0x2e,0x70,0x61,0x74,0x68,0x5f,0x73,\n    0x65,0x70,0x20,0x3d,0x20,0x22,0x2f,0x22,0x0a,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x2d,0x2d,0x20,0x54,0x4f,0x44,0x4f,0x20,0x74,0x68,0x65,0x20,0x77,0x61,\n    0x79,0x20,0x74,0x6f,0x20,0x67,0x65,0x74,0x20,0x74,0x68,0x65,0x20,0x61,0x62,0x73,\n    0x6f,0x6c,0x75,0x74,0x65,0x20,0x70,0x61,0x74,0x68,0x20,0x63,0x61,0x6e,0x20,0x62,\n    0x65,0x20,0x77,0x72,0x6f,0x6e,0x67,0x20,0x69,0x66,0x20,0x74,0x68,0x65,0x20,0x70,\n    0x72,0x6f,0x67,0x72,0x61,0x6d,0x20,0x6c,0x6f,0x61,0x64,0x73,0x20,0x6e,0x65,0x77,\n    0x20,0x73,0x6f,0x75,0x72,0x63,0x65,0x20,0x66,0x69,0x6c,0x65,0x73,0x20,0x62,0x79,\n    0x20,0x72,0x65,0x6c,0x61,0x74,0x69,0x76,0x65,0x20,0x70,0x61,0x74,0x68,0x20,0x61,\n    0x66,0x74,0x65,0x72,0x20,0x61,0x20,0x63,0x64,0x2e,0x0a,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x2d,0x2d,0x20,0x63,0x75,0x72,0x72,0x65,0x6e,0x74,0x6c,0x79,0x2c,\n    0x20,0x74,0x68,0x65,0x20,0x64,0x69,0x72,0x65,0x63,0x74,0x6f,0x72,0x79,0x20,0x69,\n    0x73,0x20,0x72,0x65,0x67,0x69,0x73,0x74,0x65,0x72,0x65,0x64,0x20,0x6f,0x6e,0x20,\n    0x73,0x74,0x61,0x72,0x74,0x2c,0x20,0x74,0x68,0x69,0x73,0x20,0x61,0x6c,0x6c,0x6f,\n    0x77,0x73,0x20,0x70,0x72,0x6f,0x67,0x72,0x61,0x6d,0x20,0x74,0x6f,0x20,0x6c,0x6f,\n    0x61,0x64,0x20,0x61,0x6e,0x79,0x20,0x73,0x6f,0x75,0x72,0x63,0x65,0x20,0x66,0x69,\n    0x6c,0x65,0x20,0x61,0x6e,0x64,0x20,0x74,0x68,0x65,0x6e,0x20,0x63,0x68,0x61,0x6e,\n    0x67,0x65,0x20,0x77,0x6f,0x72,0x6b,0x69,0x6e,0x67,0x20,0x64,0x69,0x72,0x2c,0x0a,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x2d,0x2d,0x20,0x77,0x68,0x69,0x63,0x68,\n    0x20,0x69,0x73,0x20,0x74,0x68,0x65,0x20,0x6d,0x6f,0x73,0x74,0x20,0x63,0x6f,0x6d,\n    0x6d,0x6f,0x6e,0x20,0x75,0x73,0x65,0x20,0x63,0x61,0x73,0x65,0x2e,0x0a,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x4d,0x2e,0x62,0x61,0x73,0x65,0x5f,0x64,0x69,0x72,\n    0x20,0x3d,0x20,0x77,0x6f,0x72,0x6b,0x69,0x6e,0x67,0x64,0x69,0x72,0x65,0x63,0x74,\n    0x6f,0x72,0x79,0x20,0x6f,0x72,0x20,0x6f,0x73,0x2e,0x67,0x65,0x74,0x65,0x6e,0x76,\n    0x28,0x22,0x50,0x57,0x44,0x22,0x29,0x0a,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x2d,0x2d,0x20,0x63,0x6f,0x6e,0x76,0x65,0x72,0x74,0x20,0x70,0x61,0x72,0x73,\n    0x65,0x64,0x20,0x55,0x52,0x4c,0x20,0x74,0x61,0x62,0x6c,0x65,0x20,0x74,0x6f,0x20,\n    0x66,0x69,0x6c,0x65,0x20,0x70,0x61,0x74,0x68,0x20,0x20,0x66,0x6f,0x72,0x20,0x74,\n    0x68,0x65,0x20,0x63,0x75,0x72,0x72,0x65,0x6e,0x74,0x20,0x4f,0x53,0x20,0x28,0x73,\n    0x65,0x65,0x20,0x75,0x72,0x6c,0x2e,0x70,0x61,0x72,0x73,0x65,0x20,0x66,0x72,0x6f,\n    0x6d,0x20,0x6c,0x75,0x61,0x73,0x6f,0x63,0x6b,0x65,0x74,0x29,0x0a,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x4d,0x2e,0x74,0x6f,0x5f,0x66,0x69,0x6c,0x65,0x5f,0x75,\n    0x72,0x69,0x20,0x3d,0x20,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x20,0x28,0x70,\n    0x61,0x74,0x68,0x29,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x69,0x66,0x20,0x73,0x74,0x72,0x69,0x6e,0x67,0x2e,0x66,0x69,0x6e,0x64,0x28,\n    0x70,0x61,0x74,0x68,0x2c,0x22,0x2f,0x22,0x29,0x20,0x7e,0x3d,0x20,0x31,0x20,0x74,\n    0x68,0x65,0x6e,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x70,0x61,0x74,0x68,0x3d,0x22,0x2f,0x22,0x2e,0x2e,0x70,0x61,\n    0x74,0x68,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x65,\n    0x6e,0x64,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x72,\n    0x65,0x74,0x75,0x72,0x6e,0x20,0x75,0x72,0x6c,0x2e,0x62,0x75,0x69,0x6c,0x64,0x7b,\n    0x73,0x63,0x68,0x65,0x6d,0x65,0x3d,0x22,0x66,0x69,0x6c,0x65,0x22,0x2c,0x61,0x75,\n    0x74,0x68,0x6f,0x72,0x69,0x74,0x79,0x3d,0x22,0x22,0x2c,0x20,0x70,0x61,0x74,0x68,\n    0x3d,0x70,0x61,0x74,0x68,0x7d,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x65,\n    0x6e,0x64,0x0a,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x2d,0x2d,0x20,0x72,\n    0x65,0x74,0x75,0x72,0x6e,0x20,0x74,0x72,0x75,0x65,0x20,0x69,0x73,0x20,0x74,0x68,\n    0x65,0x20,0x70,0x61,0x74,0x68,0x20,0x69,0x73,0x20,0x61,0x62,0x73,0x6f,0x6c,0x75,\n    0x74,0x65,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x2d,0x2d,0x20,0x74,0x68,\n    0x65,0x20,0x70,0x61,0x74,0x68,0x20,0x6d,0x75,0x73,0x74,0x20,0x62,0x65,0x20,0x6e,\n    0x6f,0x72,0x6d,0x61,0x6c,0x69,0x7a,0x65,0x64,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x4d,0x2e,0x69,0x73,0x5f,0x70,0x61,0x74,0x68,0x5f,0x61,0x62,0x73,0x6f,\n    0x6c,0x75,0x74,0x65,0x20,0x3d,0x20,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x20,\n    0x28,0x70,0x61,0x74,0x68,0x29,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x70,0x61,\n    0x74,0x68,0x3a,0x73,0x75,0x62,0x28,0x31,0x2c,0x31,0x29,0x20,0x3d,0x3d,0x20,0x22,\n    0x2f,0x22,0x20,0x65,0x6e,0x64,0x0a,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x2d,0x2d,0x20,0x63,0x6f,0x6e,0x76,0x65,0x72,0x74,0x20,0x61,0x62,0x73,0x6f,0x6c,\n    0x75,0x74,0x65,0x20,0x6e,0x6f,0x72,0x6d,0x61,0x6c,0x69,0x7a,0x65,0x64,0x20,0x70,\n    0x61,0x74,0x68,0x20,0x66,0x69,0x6c,0x65,0x20,0x74,0x6f,0x20,0x75,0x72,0x69,0x0a,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x4d,0x2e,0x74,0x6f,0x5f,0x70,0x61,0x74,\n    0x68,0x20,0x3d,0x20,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x20,0x28,0x70,0x61,\n    0x72,0x73,0x65,0x64,0x5f,0x75,0x72,0x6c,0x29,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,\n    0x20,0x75,0x72,0x6c,0x2e,0x75,0x6e,0x65,0x73,0x63,0x61,0x70,0x65,0x28,0x70,0x61,\n    0x72,0x73,0x65,0x64,0x5f,0x75,0x72,0x6c,0x2e,0x70,0x61,0x74,0x68,0x29,0x20,0x65,\n    0x6e,0x64,0x0a,0x20,0x20,0x20,0x20,0x65,0x6c,0x73,0x65,0x0a,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x2d,0x2d,0x20,0x49,0x6d,0x70,0x6c,0x65,0x6d,0x65,0x6e,0x74,\n    0x61,0x74,0x69,0x6f,0x6e,0x73,0x20,0x66,0x6f,0x72,0x20,0x57,0x69,0x6e,0x64,0x6f,\n    0x77,0x73,0x2c,0x20,0x73,0x65,0x65,0x20,0x55,0x4e,0x49,0x58,0x20,0x76,0x65,0x72,\n    0x73,0x69,0x6f,0x6e,0x73,0x20,0x66,0x6f,0x72,0x20,0x64,0x6f,0x63,0x75,0x6d,0x65,\n    0x6e,0x74,0x61,0x74,0x69,0x6f,0x6e,0x2e,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x4d,0x2e,0x70,0x61,0x74,0x68,0x5f,0x73,0x65,0x70,0x20,0x3d,0x20,0x22,0x5c,\n    0x5c,0x22,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x4d,0x2e,0x69,0x73,0x5f,\n    0x70,0x61,0x74,0x68,0x5f,0x61,0x62,0x73,0x6f,0x6c,0x75,0x74,0x65,0x20,0x3d,0x20,\n    0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x20,0x28,0x70,0x61,0x74,0x68,0x29,0x20,\n    0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x70,0x61,0x74,0x68,0x3a,0x6d,0x61,0x74,0x63,\n    0x68,0x28,0x22,0x5e,0x25,0x61,0x3a,0x2f,0x22,0x29,0x20,0x65,0x6e,0x64,0x0a,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x4d,0x2e,0x74,0x6f,0x5f,0x66,0x69,0x6c,0x65,\n    0x5f,0x75,0x72,0x69,0x20,0x3d,0x20,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x20,\n    0x28,0x70,0x61,0x74,0x68,0x29,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x75,0x72,\n    0x6c,0x2e,0x62,0x75,0x69,0x6c,0x64,0x7b,0x73,0x63,0x68,0x65,0x6d,0x65,0x3d,0x22,\n    0x66,0x69,0x6c,0x65,0x22,0x2c,0x61,0x75,0x74,0x68,0x6f,0x72,0x69,0x74,0x79,0x3d,\n    0x22,0x22,0x2c,0x20,0x70,0x61,0x74,0x68,0x3d,0x22,0x2f,0x22,0x2e,0x2e,0x70,0x61,\n    0x74,0x68,0x7d,0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x4d,0x2e,0x74,0x6f,0x5f,0x70,0x61,0x74,0x68,0x20,0x3d,0x20,0x66,0x75,0x6e,0x63,\n    0x74,0x69,0x6f,0x6e,0x20,0x28,0x70,0x61,0x72,0x73,0x65,0x64,0x5f,0x75,0x72,0x6c,\n    0x29,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x75,0x72,0x6c,0x2e,0x75,0x6e,0x65,\n    0x73,0x63,0x61,0x70,0x65,0x28,0x70,0x61,0x72,0x73,0x65,0x64,0x5f,0x75,0x72,0x6c,\n    0x2e,0x70,0x61,0x74,0x68,0x29,0x3a,0x67,0x73,0x75,0x62,0x28,0x22,0x5e,0x2f,0x22,\n    0x2c,0x20,0x22,0x22,0x29,0x20,0x65,0x6e,0x64,0x0a,0x0a,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x75,0x6e,0x69,0x78,0x6e,0x6f,0x72,\n    0x6d,0x61,0x6c,0x69,0x7a,0x65,0x20,0x3d,0x20,0x4d,0x2e,0x6e,0x6f,0x72,0x6d,0x61,\n    0x6c,0x69,0x7a,0x65,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x4d,0x2e,0x6e,\n    0x6f,0x72,0x6d,0x61,0x6c,0x69,0x7a,0x65,0x20,0x3d,0x20,0x66,0x75,0x6e,0x63,0x74,\n    0x69,0x6f,0x6e,0x28,0x70,0x61,0x74,0x68,0x29,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,\n    0x20,0x75,0x6e,0x69,0x78,0x6e,0x6f,0x72,0x6d,0x61,0x6c,0x69,0x7a,0x65,0x28,0x70,\n    0x61,0x74,0x68,0x3a,0x67,0x73,0x75,0x62,0x28,0x22,0x5c,0x5c,0x22,0x2c,0x22,0x2f,\n    0x22,0x29,0x3a,0x6c,0x6f,0x77,0x65,0x72,0x28,0x29,0x29,0x20,0x65,0x6e,0x64,0x0a,\n    0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x2d,0x2d,0x20,0x64,0x65,0x74,0x65,\n    0x72,0x6d,0x69,0x6e,0x65,0x20,0x62,0x61,0x73,0x65,0x20,0x64,0x69,0x72,0x0a,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x66,0x75,0x6e,\n    0x63,0x74,0x69,0x6f,0x6e,0x20,0x67,0x65,0x74,0x77,0x6f,0x72,0x6b,0x69,0x6e,0x67,\n    0x64,0x69,0x72,0x65,0x63,0x74,0x6f,0x72,0x79,0x28,0x29,0x0a,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x70,0x20,\n    0x3d,0x20,0x69,0x6f,0x2e,0x70,0x6f,0x70,0x65,0x6e,0x28,0x22,0x65,0x63,0x68,0x6f,\n    0x20,0x25,0x63,0x64,0x25,0x22,0x29,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x69,0x66,0x20,0x70,0x20,0x74,0x68,0x65,0x6e,0x0a,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x6c,0x6f,\n    0x63,0x61,0x6c,0x20,0x72,0x65,0x73,0x20,0x3d,0x20,0x70,0x3a,0x72,0x65,0x61,0x64,\n    0x28,0x22,0x2a,0x6c,0x22,0x29,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x70,0x3a,0x63,0x6c,0x6f,0x73,0x65,0x28,0x29,\n    0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x4d,0x2e,0x6e,0x6f,0x72,0x6d,0x61,0x6c,\n    0x69,0x7a,0x65,0x28,0x72,0x65,0x73,0x29,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x4d,0x2e,0x62,\n    0x61,0x73,0x65,0x5f,0x64,0x69,0x72,0x20,0x3d,0x20,0x77,0x6f,0x72,0x6b,0x69,0x6e,\n    0x67,0x64,0x69,0x72,0x65,0x63,0x74,0x6f,0x72,0x79,0x20,0x6f,0x72,0x20,0x67,0x65,\n    0x74,0x77,0x6f,0x72,0x6b,0x69,0x6e,0x67,0x64,0x69,0x72,0x65,0x63,0x74,0x6f,0x72,\n    0x79,0x28,0x29,0x0a,0x0a,0x20,0x20,0x20,0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,0x20,\n    0x20,0x2d,0x2d,0x66,0x69,0x78,0x20,0x62,0x75,0x67,0x3a,0x20,0x63,0x61,0x6e,0x20,\n    0x6e,0x6f,0x74,0x20,0x62,0x72,0x65,0x61,0x6b,0x20,0x77,0x68,0x65,0x6e,0x20,0x70,\n    0x72,0x6f,0x6a,0x65,0x63,0x74,0x20,0x70,0x61,0x74,0x68,0x20,0x63,0x6f,0x6e,0x74,\n    0x61,0x69,0x6e,0x73,0x20,0x62,0x6c,0x61,0x6e,0x6b,0x0a,0x20,0x20,0x20,0x20,0x2d,\n    0x2d,0x72,0x65,0x70,0x6c,0x61,0x63,0x65,0x20,0x62,0x6c,0x61,0x6e,0x6b,0x20,0x77,\n    0x69,0x74,0x68,0x20,0x25,0x32,0x30,0x20,0x28,0x61,0x64,0x64,0x20,0x62,0x79,0x20,\n    0x67,0x75,0x61,0x6e,0x79,0x75,0x29,0x0a,0x20,0x20,0x20,0x20,0x4d,0x2e,0x62,0x61,\n    0x73,0x65,0x5f,0x64,0x69,0x72,0x20,0x3d,0x20,0x4d,0x2e,0x62,0x61,0x73,0x65,0x5f,\n    0x64,0x69,0x72,0x3a,0x67,0x73,0x75,0x62,0x28,0x22,0x20,0x22,0x2c,0x22,0x25,0x25,\n    0x32,0x30,0x22,0x29,0x0a,0x20,0x20,0x20,0x20,0x2d,0x2d,0x20,0x74,0x68,0x65,0x20,\n    0x6a,0x73,0x2f,0x6c,0x75,0x61,0x20,0x73,0x63,0x72,0x69,0x70,0x74,0x20,0x73,0x65,\n    0x61,0x72,0x63,0x68,0x70,0x61,0x74,0x68,0x20,0x69,0x66,0x20,0x68,0x61,0x73,0x20,\n    0x6d,0x6f,0x72,0x65,0x20,0x74,0x68,0x65,0x6e,0x20,0x6f,0x6e,0x65,0x2c,0x20,0x73,\n    0x70,0x6c,0x69,0x74,0x20,0x74,0x68,0x65,0x6d,0x20,0x77,0x69,0x74,0x68,0x20,0x61,\n    0x20,0x73,0x65,0x6d,0x69,0x63,0x6f,0x6c,0x6f,0x6e,0x20,0x22,0x3b,0x22,0x20,0x28,\n    0x61,0x64,0x64,0x65,0x64,0x20,0x62,0x79,0x20,0x67,0x75,0x61,0x6e,0x79,0x75,0x29,\n    0x0a,0x20,0x20,0x20,0x20,0x69,0x66,0x20,0x73,0x65,0x61,0x72,0x63,0x68,0x70,0x61,\n    0x74,0x68,0x73,0x20,0x74,0x68,0x65,0x6e,0x20,0x4d,0x2e,0x73,0x65,0x61,0x72,0x63,\n    0x68,0x5f,0x70,0x61,0x74,0x68,0x73,0x20,0x3d,0x20,0x63,0x6f,0x6e,0x76,0x65,0x72,\n    0x74,0x5f,0x74,0x6f,0x5f,0x73,0x65,0x61,0x72,0x63,0x68,0x5f,0x70,0x61,0x74,0x68,\n    0x73,0x28,0x73,0x65,0x61,0x72,0x63,0x68,0x70,0x61,0x74,0x68,0x73,0x29,0x20,0x65,\n    0x6e,0x64,0x0a,0x20,0x20,0x20,0x20,0x69,0x66,0x20,0x6e,0x6f,0x74,0x20,0x4d,0x2e,\n    0x62,0x61,0x73,0x65,0x5f,0x64,0x69,0x72,0x20,0x74,0x68,0x65,0x6e,0x20,0x65,0x72,\n    0x72,0x6f,0x72,0x28,0x22,0x55,0x6e,0x61,0x62,0x6c,0x65,0x20,0x74,0x6f,0x20,0x64,\n    0x65,0x74,0x65,0x72,0x6d,0x69,0x6e,0x65,0x20,0x74,0x68,0x65,0x20,0x77,0x6f,0x72,\n    0x6b,0x69,0x6e,0x67,0x20,0x64,0x69,0x72,0x65,0x63,0x74,0x6f,0x72,0x79,0x2e,0x22,\n    0x29,0x20,0x65,0x6e,0x64,0x0a,0x65,0x6e,0x64,0x0a,0x0a,0x72,0x65,0x74,0x75,0x72,\n    0x6e,0x20,0x4d,0x0a,0x0a,0x65,0x6e,0x64,0x0a,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x0a,0x2d,0x2d,0x20,0x45,0x6e,0x64,\n    0x20,0x6f,0x66,0x20,0x6d,0x6f,0x64,0x75,0x6c,0x65,0x64,0x65,0x62,0x75,0x67,0x67,\n    0x65,0x72,0x2e,0x70,0x6c,0x61,0x74,0x66,0x6f,0x72,0x6d,0x0a,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x0a,0x0a,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x0a,0x2d,\n    0x2d,0x20,0x20,0x4d,0x6f,0x64,0x75,0x6c,0x65,0x20,0x64,0x65,0x62,0x75,0x67,0x67,\n    0x65,0x72,0x2e,0x75,0x74,0x69,0x6c,0x0a,0x70,0x61,0x63,0x6b,0x61,0x67,0x65,0x2e,\n    0x70,0x72,0x65,0x6c,0x6f,0x61,0x64,0x5b,0x22,0x64,0x65,0x62,0x75,0x67,0x67,0x65,\n    0x72,0x2e,0x75,0x74,0x69,0x6c,0x22,0x5d,0x20,0x3d,0x20,0x66,0x75,0x6e,0x63,0x74,\n    0x69,0x6f,0x6e,0x28,0x2e,0x2e,0x2e,0x29,0x0a,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x0a,0x2d,0x2d,0x20,0x43,0x6f,0x70,0x79,\n    0x72,0x69,0x67,0x68,0x74,0x20,0x28,0x63,0x29,0x20,0x32,0x30,0x31,0x31,0x2d,0x32,\n    0x30,0x31,0x32,0x20,0x53,0x69,0x65,0x72,0x72,0x61,0x20,0x57,0x69,0x72,0x65,0x6c,\n    0x65,0x73,0x73,0x20,0x61,0x6e,0x64,0x20,0x6f,0x74,0x68,0x65,0x72,0x73,0x2e,0x0a,\n    0x2d,0x2d,0x20,0x41,0x6c,0x6c,0x20,0x72,0x69,0x67,0x68,0x74,0x73,0x20,0x72,0x65,\n    0x73,0x65,0x72,0x76,0x65,0x64,0x2e,0x20,0x54,0x68,0x69,0x73,0x20,0x70,0x72,0x6f,\n    0x67,0x72,0x61,0x6d,0x20,0x61,0x6e,0x64,0x20,0x74,0x68,0x65,0x20,0x61,0x63,0x63,\n    0x6f,0x6d,0x70,0x61,0x6e,0x79,0x69,0x6e,0x67,0x20,0x6d,0x61,0x74,0x65,0x72,0x69,\n    0x61,0x6c,0x73,0x0a,0x2d,0x2d,0x20,0x61,0x72,0x65,0x20,0x6d,0x61,0x64,0x65,0x20,\n    0x61,0x76,0x61,0x69,0x6c,0x61,0x62,0x6c,0x65,0x20,0x75,0x6e,0x64,0x65,0x72,0x20,\n    0x74,0x68,0x65,0x20,0x74,0x65,0x72,0x6d,0x73,0x20,0x6f,0x66,0x20,0x74,0x68,0x65,\n    0x20,0x45,0x63,0x6c,0x69,0x70,0x73,0x65,0x20,0x50,0x75,0x62,0x6c,0x69,0x63,0x20,\n    0x4c,0x69,0x63,0x65,0x6e,0x73,0x65,0x20,0x76,0x31,0x2e,0x30,0x0a,0x2d,0x2d,0x20,\n    0x77,0x68,0x69,0x63,0x68,0x20,0x61,0x63,0x63,0x6f,0x6d,0x70,0x61,0x6e,0x69,0x65,\n    0x73,0x20,0x74,0x68,0x69,0x73,0x20,0x64,0x69,0x73,0x74,0x72,0x69,0x62,0x75,0x74,\n    0x69,0x6f,0x6e,0x2c,0x20,0x61,0x6e,0x64,0x20,0x69,0x73,0x20,0x61,0x76,0x61,0x69,\n    0x6c,0x61,0x62,0x6c,0x65,0x20,0x61,0x74,0x0a,0x2d,0x2d,0x20,0x68,0x74,0x74,0x70,\n    0x3a,0x2f,0x2f,0x77,0x77,0x77,0x2e,0x65,0x63,0x6c,0x69,0x70,0x73,0x65,0x2e,0x6f,\n    0x72,0x67,0x2f,0x6c,0x65,0x67,0x61,0x6c,0x2f,0x65,0x70,0x6c,0x2d,0x76,0x31,0x30,\n    0x2e,0x68,0x74,0x6d,0x6c,0x0a,0x2d,0x2d,0x0a,0x2d,0x2d,0x20,0x43,0x6f,0x6e,0x74,\n    0x72,0x69,0x62,0x75,0x74,0x6f,0x72,0x73,0x3a,0x0a,0x2d,0x2d,0x20,0x20,0x20,0x20,\n    0x20,0x53,0x69,0x65,0x72,0x72,0x61,0x20,0x57,0x69,0x72,0x65,0x6c,0x65,0x73,0x73,\n    0x20,0x2d,0x20,0x69,0x6e,0x69,0x74,0x69,0x61,0x6c,0x20,0x41,0x50,0x49,0x20,0x61,\n    0x6e,0x64,0x20,0x69,0x6d,0x70,0x6c,0x65,0x6d,0x65,0x6e,0x74,0x61,0x74,0x69,0x6f,\n    0x6e,0x0a,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x0a,0x2d,0x2d,0x20,0x55,0x74,0x69,0x6c,0x69,0x74,0x79,0x20,0x66,0x75,0x6e,\n    0x63,0x74,0x69,0x6f,0x6e,0x73,0x2e,0x0a,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x0a,0x0a,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x4d,\n    0x20,0x3d,0x20,0x7b,0x20,0x7d,0x0a,0x0a,0x2d,0x2d,0x20,0x6c,0x6f,0x67,0x20,0x73,\n    0x79,0x73,0x74,0x65,0x6d,0x0a,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x4c,0x45,0x56,0x45,\n    0x4c,0x53,0x20,0x3d,0x20,0x7b,0x20,0x45,0x52,0x52,0x4f,0x52,0x20,0x3d,0x20,0x30,\n    0x2c,0x20,0x57,0x41,0x52,0x4e,0x49,0x4e,0x47,0x20,0x3d,0x20,0x31,0x2c,0x20,0x49,\n    0x4e,0x46,0x4f,0x20,0x3d,0x20,0x32,0x2c,0x20,0x44,0x45,0x54,0x41,0x49,0x4c,0x20,\n    0x3d,0x20,0x33,0x2c,0x20,0x44,0x45,0x42,0x55,0x47,0x20,0x3d,0x20,0x34,0x20,0x7d,\n    0x0a,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x4c,0x4f,0x47,0x5f,0x4c,0x45,0x56,0x45,0x4c,\n    0x20,0x3d,0x20,0x4c,0x45,0x56,0x45,0x4c,0x53,0x2e,0x57,0x41,0x52,0x4e,0x49,0x4e,\n    0x47,0x0a,0x0a,0x2d,0x2d,0x20,0x44,0x65,0x62,0x75,0x67,0x67,0x65,0x72,0x20,0x66,\n    0x65,0x61,0x74,0x75,0x72,0x65,0x73,0x20,0x68,0x61,0x6e,0x64,0x6c,0x69,0x6e,0x67,\n    0x2e,0x20,0x41,0x6e,0x79,0x20,0x66,0x65,0x61,0x74,0x75,0x72,0x65,0x20,0x63,0x61,\n    0x6e,0x20,0x62,0x65,0x20,0x67,0x65,0x74,0x20,0x6c,0x69,0x6b,0x65,0x20,0x61,0x6e,\n    0x79,0x20,0x72,0x65,0x67,0x75,0x6c,0x61,0x72,0x20,0x74,0x61,0x62,0x6c,0x65,0x2c,\n    0x20,0x73,0x65,0x74,0x74,0x69,0x6e,0x67,0x20,0x66,0x65,0x61,0x74,0x75,0x72,0x65,\n    0x73,0x20,0x72,0x65,0x73,0x75,0x6c,0x74,0x20,0x69,0x6e,0x0a,0x2d,0x2d,0x20,0x65,\n    0x72,0x72,0x6f,0x72,0x20,0x66,0x6f,0x72,0x20,0x75,0x6e,0x6b,0x6e,0x6f,0x77,0x6e,\n    0x20,0x6f,0x72,0x20,0x72,0x65,0x61,0x64,0x2d,0x6f,0x6e,0x6c,0x79,0x20,0x66,0x65,\n    0x61,0x74,0x75,0x72,0x65,0x73,0x2e,0x0a,0x4d,0x2e,0x66,0x65,0x61,0x74,0x75,0x72,\n    0x65,0x73,0x20,0x3d,0x20,0x73,0x65,0x74,0x6d,0x65,0x74,0x61,0x74,0x61,0x62,0x6c,\n    0x65,0x28,0x7b,0x20,0x7d,0x2c,0x20,0x7b,0x0a,0x20,0x20,0x20,0x20,0x2d,0x2d,0x20,\n    0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x73,0x20,0x74,0x68,0x61,0x74,0x20,0x66,\n    0x6f,0x72,0x6d,0x61,0x74,0x2f,0x76,0x61,0x6c,0x69,0x64,0x61,0x74,0x65,0x20,0x64,\n    0x61,0x74,0x61,0x2e,0x20,0x49,0x66,0x20,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,\n    0x20,0x69,0x73,0x20,0x6e,0x6f,0x74,0x20,0x70,0x72,0x6f,0x76,0x69,0x64,0x65,0x64,\n    0x2c,0x20,0x74,0x68,0x65,0x20,0x66,0x65,0x61,0x74,0x75,0x72,0x65,0x20,0x63,0x61,\n    0x6e,0x6e,0x6f,0x74,0x20,0x62,0x65,0x20,0x6d,0x6f,0x64,0x69,0x66,0x69,0x65,0x64,\n    0x2e,0x0a,0x20,0x20,0x20,0x20,0x76,0x61,0x6c,0x69,0x64,0x61,0x74,0x6f,0x72,0x73,\n    0x20,0x3d,0x20,0x7b,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x6d,0x75,0x6c,\n    0x74,0x69,0x70,0x6c,0x65,0x5f,0x73,0x65,0x73,0x73,0x69,0x6f,0x6e,0x73,0x20,0x3d,\n    0x20,0x74,0x6f,0x6e,0x75,0x6d,0x62,0x65,0x72,0x2c,0x0a,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x65,0x6e,0x63,0x6f,0x64,0x69,0x6e,0x67,0x20,0x3d,0x20,0x74,0x6f,\n    0x73,0x74,0x72,0x69,0x6e,0x67,0x2c,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x6d,0x61,0x78,0x5f,0x63,0x68,0x69,0x6c,0x64,0x72,0x65,0x6e,0x20,0x3d,0x20,0x74,\n    0x6f,0x6e,0x75,0x6d,0x62,0x65,0x72,0x2c,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x6d,0x61,0x78,0x5f,0x64,0x61,0x74,0x61,0x20,0x3d,0x20,0x74,0x6f,0x6e,0x75,\n    0x6d,0x62,0x65,0x72,0x2c,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x6d,0x61,\n    0x78,0x5f,0x64,0x65,0x70,0x74,0x68,0x20,0x3d,0x20,0x74,0x6f,0x6e,0x75,0x6d,0x62,\n    0x65,0x72,0x2c,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x73,0x68,0x6f,0x77,\n    0x5f,0x68,0x69,0x64,0x64,0x65,0x6e,0x20,0x3d,0x20,0x74,0x6f,0x6e,0x75,0x6d,0x62,\n    0x65,0x72,0x2c,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x75,0x72,0x69,0x20,\n    0x3d,0x20,0x74,0x6f,0x73,0x74,0x72,0x69,0x6e,0x67,0x2c,0x0a,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x6c,0x6f,0x67,0x5f,0x6c,0x65,0x76,0x65,0x6c,0x20,0x3d,0x20,\n    0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x28,0x6c,0x65,0x76,0x65,0x6c,0x5f,0x6e,\n    0x61,0x6d,0x65,0x29,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x2d,0x2d,0x20,0x73,0x65,0x74,0x20,0x6e,0x75,0x6d,0x65,0x72,0x69,0x63,0x61,\n    0x6c,0x20,0x69,0x6e,0x64,0x65,0x78,0x20,0x69,0x6e,0x20,0x69,0x6e,0x74,0x65,0x72,\n    0x6e,0x61,0x6c,0x20,0x76,0x61,0x72,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x4c,0x4f,0x47,0x5f,0x4c,0x45,0x56,0x45,0x4c,0x20,0x3d,0x20,\n    0x61,0x73,0x73,0x65,0x72,0x74,0x28,0x4c,0x45,0x56,0x45,0x4c,0x53,0x5b,0x6c,0x65,\n    0x76,0x65,0x6c,0x5f,0x6e,0x61,0x6d,0x65,0x5d,0x2c,0x20,0x22,0x4e,0x6f,0x20,0x73,\n    0x75,0x63,0x68,0x20,0x6c,0x65,0x76,0x65,0x6c,0x22,0x29,0x0a,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x6c,\n    0x65,0x76,0x65,0x6c,0x5f,0x6e,0x61,0x6d,0x65,0x20,0x2d,0x2d,0x20,0x74,0x68,0x65,\n    0x20,0x64,0x69,0x73,0x70,0x6c,0x61,0x79,0x65,0x64,0x20,0x6c,0x65,0x76,0x65,0x6c,\n    0x20,0x69,0x73,0x20,0x73,0x74,0x69,0x6c,0x6c,0x20,0x74,0x68,0x65,0x20,0x6e,0x61,\n    0x6d,0x65,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x65,0x6e,0x64,0x2c,0x0a,\n    0x20,0x20,0x20,0x20,0x7d,0x2c,0x0a,0x20,0x20,0x20,0x20,0x5f,0x5f,0x69,0x6e,0x64,\n    0x65,0x78,0x20,0x3d,0x20,0x7b,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x6d,\n    0x75,0x6c,0x74,0x69,0x70,0x6c,0x65,0x5f,0x73,0x65,0x73,0x73,0x69,0x6f,0x6e,0x73,\n    0x20,0x3d,0x20,0x30,0x2c,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x65,0x6e,\n    0x63,0x6f,0x64,0x69,0x6e,0x67,0x20,0x3d,0x22,0x55,0x54,0x46,0x2d,0x38,0x22,0x2c,\n    0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x6d,0x61,0x78,0x5f,0x63,0x68,0x69,\n    0x6c,0x64,0x72,0x65,0x6e,0x20,0x3d,0x20,0x33,0x32,0x2c,0x0a,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x6d,0x61,0x78,0x5f,0x64,0x61,0x74,0x61,0x20,0x3d,0x20,0x30,\n    0x78,0x46,0x46,0x46,0x46,0x2c,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x6d,\n    0x61,0x78,0x5f,0x64,0x65,0x70,0x74,0x68,0x20,0x3d,0x20,0x31,0x2c,0x0a,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x73,0x68,0x6f,0x77,0x5f,0x68,0x69,0x64,0x64,0x65,\n    0x6e,0x20,0x3d,0x20,0x31,0x2c,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x75,\n    0x72,0x69,0x20,0x3d,0x20,0x22,0x66,0x69,0x6c,0x65,0x22,0x2c,0x0a,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x6c,0x6f,0x67,0x5f,0x6c,0x65,0x76,0x65,0x6c,0x20,0x3d,\n    0x20,0x22,0x57,0x41,0x52,0x4e,0x49,0x4e,0x47,0x22,0x2c,0x0a,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x2d,0x2d,0x20,0x72,0x65,0x61,0x64,0x20,0x6f,0x6e,0x6c,0x79,\n    0x20,0x66,0x65,0x61,0x74,0x75,0x72,0x65,0x73,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x6c,0x61,0x6e,0x67,0x75,0x61,0x67,0x65,0x5f,0x73,0x75,0x70,0x70,0x6f,\n    0x72,0x74,0x73,0x5f,0x74,0x68,0x72,0x65,0x61,0x64,0x73,0x20,0x3d,0x20,0x30,0x2c,\n    0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x6c,0x61,0x6e,0x67,0x75,0x61,0x67,\n    0x65,0x5f,0x6e,0x61,0x6d,0x65,0x20,0x3d,0x20,0x22,0x4c,0x75,0x61,0x22,0x2c,0x0a,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x6c,0x61,0x6e,0x67,0x75,0x61,0x67,0x65,\n    0x5f,0x76,0x65,0x72,0x73,0x69,0x6f,0x6e,0x20,0x3d,0x20,0x5f,0x56,0x45,0x52,0x53,\n    0x49,0x4f,0x4e,0x2c,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x70,0x72,0x6f,\n    0x74,0x6f,0x63,0x6f,0x6c,0x5f,0x76,0x65,0x72,0x73,0x69,0x6f,0x6e,0x20,0x3d,0x20,\n    0x31,0x2c,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x73,0x75,0x70,0x70,0x6f,\n    0x72,0x74,0x73,0x5f,0x61,0x73,0x79,0x6e,0x63,0x20,0x3d,0x20,0x31,0x2c,0x0a,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x64,0x61,0x74,0x61,0x5f,0x65,0x6e,0x63,0x6f,\n    0x64,0x69,0x6e,0x67,0x20,0x3d,0x20,0x22,0x62,0x61,0x73,0x65,0x36,0x34,0x22,0x2c,\n    0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x62,0x72,0x65,0x61,0x6b,0x70,0x6f,\n    0x69,0x6e,0x74,0x5f,0x6c,0x61,0x6e,0x67,0x75,0x61,0x67,0x65,0x73,0x20,0x3d,0x20,\n    0x22,0x4c,0x75,0x61,0x22,0x2c,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x62,\n    0x72,0x65,0x61,0x6b,0x70,0x6f,0x69,0x6e,0x74,0x5f,0x74,0x79,0x70,0x65,0x73,0x20,\n    0x3d,0x20,0x22,0x6c,0x69,0x6e,0x65,0x20,0x63,0x6f,0x6e,0x64,0x69,0x74,0x69,0x6f,\n    0x6e,0x61,0x6c,0x22,0x2c,0x0a,0x20,0x20,0x20,0x20,0x7d,0x2c,0x0a,0x20,0x20,0x20,\n    0x20,0x5f,0x5f,0x6e,0x65,0x77,0x69,0x6e,0x64,0x65,0x78,0x20,0x3d,0x20,0x66,0x75,\n    0x6e,0x63,0x74,0x69,0x6f,0x6e,0x28,0x73,0x65,0x6c,0x66,0x2c,0x20,0x6b,0x2c,0x20,\n    0x76,0x29,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,\n    0x20,0x6d,0x74,0x20,0x3d,0x20,0x67,0x65,0x74,0x6d,0x65,0x74,0x61,0x74,0x61,0x62,\n    0x6c,0x65,0x28,0x73,0x65,0x6c,0x66,0x29,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x76,0x61,0x6c,0x75,0x65,0x73,0x2c,0x20,0x76,\n    0x61,0x6c,0x69,0x64,0x61,0x74,0x6f,0x72,0x20,0x3d,0x20,0x6d,0x74,0x2e,0x5f,0x5f,\n    0x69,0x6e,0x64,0x65,0x78,0x2c,0x20,0x6d,0x74,0x2e,0x76,0x61,0x6c,0x69,0x64,0x61,\n    0x74,0x6f,0x72,0x73,0x5b,0x6b,0x5d,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x69,0x66,0x20,0x76,0x61,0x6c,0x75,0x65,0x73,0x5b,0x6b,0x5d,0x20,0x3d,0x3d,0x20,\n    0x6e,0x69,0x6c,0x20,0x74,0x68,0x65,0x6e,0x20,0x65,0x72,0x72,0x6f,0x72,0x28,0x22,\n    0x4e,0x6f,0x20,0x73,0x75,0x63,0x68,0x20,0x66,0x65,0x61,0x74,0x75,0x72,0x65,0x20,\n    0x22,0x20,0x2e,0x2e,0x20,0x74,0x6f,0x73,0x74,0x72,0x69,0x6e,0x67,0x28,0x6b,0x29,\n    0x29,0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x69,0x66,\n    0x20,0x6e,0x6f,0x74,0x20,0x76,0x61,0x6c,0x69,0x64,0x61,0x74,0x6f,0x72,0x20,0x74,\n    0x68,0x65,0x6e,0x20,0x65,0x72,0x72,0x6f,0x72,0x28,0x22,0x54,0x68,0x65,0x20,0x66,\n    0x65,0x61,0x74,0x75,0x72,0x65,0x20,0x22,0x20,0x2e,0x2e,0x20,0x74,0x6f,0x73,0x74,\n    0x72,0x69,0x6e,0x67,0x28,0x6b,0x29,0x20,0x2e,0x2e,0x20,0x22,0x20,0x69,0x73,0x20,\n    0x72,0x65,0x61,0x64,0x2d,0x6f,0x6e,0x6c,0x79,0x22,0x29,0x20,0x65,0x6e,0x64,0x0a,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x76,0x20,0x3d,0x20,0x61,0x73,0x73,0x65,\n    0x72,0x74,0x28,0x76,0x61,0x6c,0x69,0x64,0x61,0x74,0x6f,0x72,0x28,0x76,0x29,0x29,\n    0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x76,0x61,0x6c,0x75,0x65,0x73,0x5b,\n    0x6b,0x5d,0x20,0x3d,0x20,0x76,0x0a,0x20,0x20,0x20,0x20,0x65,0x6e,0x64,0x2c,0x0a,\n    0x7d,0x29,0x0a,0x0a,0x2d,0x2d,0x20,0x57,0x72,0x61,0x70,0x73,0x20,0x64,0x65,0x62,\n    0x75,0x67,0x20,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x20,0x61,0x6e,0x64,0x20,\n    0x61,0x6e,0x20,0x61,0x74,0x74,0x61,0x63,0x68,0x65,0x64,0x20,0x74,0x68,0x72,0x65,\n    0x61,0x64,0x0a,0x2d,0x2d,0x20,0x61,0x6c,0x73,0x6f,0x20,0x68,0x61,0x6e,0x64,0x6c,\n    0x65,0x20,0x73,0x74,0x61,0x63,0x6b,0x20,0x26,0x20,0x63,0x6f,0x72,0x6f,0x75,0x74,\n    0x69,0x6e,0x65,0x20,0x6d,0x61,0x6e,0x61,0x67,0x65,0x6d,0x65,0x6e,0x74,0x20,0x64,\n    0x69,0x66,0x66,0x65,0x72,0x65,0x6e,0x63,0x69,0x65,0x73,0x20,0x62,0x65,0x74,0x77,\n    0x65,0x65,0x6e,0x20,0x4c,0x75,0x61,0x20,0x76,0x65,0x72,0x73,0x69,0x6f,0x6e,0x73,\n    0x0a,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x67,0x65,0x74,0x69,0x6e,0x66,0x6f,0x2c,0x20,\n    0x67,0x65,0x74,0x6c,0x6f,0x63,0x61,0x6c,0x2c,0x20,0x73,0x65,0x74,0x6c,0x6f,0x63,\n    0x61,0x6c,0x20,0x3d,0x20,0x64,0x65,0x62,0x75,0x67,0x2e,0x67,0x65,0x74,0x69,0x6e,\n    0x66,0x6f,0x2c,0x20,0x64,0x65,0x62,0x75,0x67,0x2e,0x67,0x65,0x74,0x6c,0x6f,0x63,\n    0x61,0x6c,0x2c,0x20,0x64,0x65,0x62,0x75,0x67,0x2e,0x73,0x65,0x74,0x6c,0x6f,0x63,\n    0x61,0x6c,0x0a,0x0a,0x2d,0x2d,0x20,0x46,0x6f,0x72,0x65,0x69,0x67,0x6e,0x20,0x74,\n    0x68,0x72,0x65,0x61,0x64,0x20,0x69,0x73,0x20,0x75,0x73,0x65,0x64,0x20,0x74,0x6f,\n    0x20,0x64,0x65,0x62,0x75,0x67,0x20,0x70,0x61,0x75,0x73,0x65,0x64,0x20,0x74,0x68,\n    0x72,0x65,0x61,0x64,0x0a,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x46,0x6f,0x72,0x65,0x69,\n    0x67,0x6e,0x54,0x68,0x72,0x65,0x61,0x64,0x4d,0x54,0x20,0x3d,0x20,0x7b,0x0a,0x20,\n    0x20,0x20,0x20,0x67,0x65,0x74,0x69,0x6e,0x66,0x6f,0x20,0x20,0x3d,0x20,0x66,0x75,\n    0x6e,0x63,0x74,0x69,0x6f,0x6e,0x28,0x73,0x65,0x6c,0x66,0x2c,0x20,0x6c,0x65,0x76,\n    0x65,0x6c,0x2c,0x20,0x77,0x68,0x61,0x74,0x29,0x20,0x20,0x20,0x20,0x20,0x72,0x65,\n    0x74,0x75,0x72,0x6e,0x20,0x67,0x65,0x74,0x69,0x6e,0x66,0x6f,0x28,0x73,0x65,0x6c,\n    0x66,0x5b,0x31,0x5d,0x2c,0x20,0x6c,0x65,0x76,0x65,0x6c,0x2c,0x20,0x77,0x68,0x61,\n    0x74,0x29,0x20,0x65,0x6e,0x64,0x2c,0x0a,0x20,0x20,0x20,0x20,0x67,0x65,0x74,0x6c,\n    0x6f,0x63,0x61,0x6c,0x20,0x3d,0x20,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x28,\n    0x73,0x65,0x6c,0x66,0x2c,0x20,0x6c,0x65,0x76,0x65,0x6c,0x2c,0x20,0x69,0x64,0x78,\n    0x29,0x20,0x20,0x20,0x20,0x20,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x67,0x65,\n    0x74,0x6c,0x6f,0x63,0x61,0x6c,0x28,0x73,0x65,0x6c,0x66,0x5b,0x31,0x5d,0x2c,0x20,\n    0x6c,0x65,0x76,0x65,0x6c,0x2c,0x20,0x69,0x64,0x78,0x29,0x20,0x65,0x6e,0x64,0x2c,\n    0x0a,0x20,0x20,0x20,0x20,0x73,0x65,0x74,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x3d,0x20,\n    0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x28,0x73,0x65,0x6c,0x66,0x2c,0x20,0x6c,\n    0x65,0x76,0x65,0x6c,0x2c,0x20,0x69,0x64,0x78,0x2c,0x20,0x76,0x61,0x6c,0x29,0x20,\n    0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x73,0x65,0x74,0x6c,0x6f,0x63,0x61,0x6c,0x28,\n    0x73,0x65,0x6c,0x66,0x5b,0x31,0x5d,0x2c,0x20,0x6c,0x65,0x76,0x65,0x6c,0x2c,0x20,\n    0x69,0x64,0x78,0x2c,0x20,0x76,0x61,0x6c,0x29,0x20,0x65,0x6e,0x64,0x2c,0x0a,0x7d,\n    0x0a,0x46,0x6f,0x72,0x65,0x69,0x67,0x6e,0x54,0x68,0x72,0x65,0x61,0x64,0x4d,0x54,\n    0x2e,0x5f,0x5f,0x69,0x6e,0x64,0x65,0x78,0x20,0x3d,0x20,0x46,0x6f,0x72,0x65,0x69,\n    0x67,0x6e,0x54,0x68,0x72,0x65,0x61,0x64,0x4d,0x54,0x0a,0x66,0x75,0x6e,0x63,0x74,\n    0x69,0x6f,0x6e,0x20,0x4d,0x2e,0x46,0x6f,0x72,0x65,0x69,0x67,0x6e,0x54,0x68,0x72,\n    0x65,0x61,0x64,0x28,0x63,0x6f,0x72,0x6f,0x29,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,\n    0x20,0x73,0x65,0x74,0x6d,0x65,0x74,0x61,0x74,0x61,0x62,0x6c,0x65,0x28,0x7b,0x20,\n    0x63,0x6f,0x72,0x6f,0x20,0x7d,0x2c,0x20,0x46,0x6f,0x72,0x65,0x69,0x67,0x6e,0x54,\n    0x68,0x72,0x65,0x61,0x64,0x4d,0x54,0x29,0x20,0x65,0x6e,0x64,0x0a,0x0a,0x2d,0x2d,\n    0x20,0x43,0x75,0x72,0x72,0x65,0x6e,0x74,0x20,0x74,0x68,0x72,0x65,0x61,0x64,0x20,\n    0x69,0x73,0x20,0x75,0x73,0x65,0x64,0x20,0x74,0x6f,0x20,0x64,0x65,0x62,0x75,0x67,\n    0x20,0x74,0x68,0x65,0x20,0x74,0x68,0x72,0x65,0x61,0x64,0x20,0x74,0x68,0x61,0x74,\n    0x20,0x63,0x61,0x75,0x73,0x65,0x64,0x20,0x74,0x68,0x65,0x20,0x68,0x6f,0x6f,0x6b,\n    0x0a,0x2d,0x2d,0x20,0x69,0x6e,0x74,0x65,0x6e,0x64,0x65,0x64,0x20,0x74,0x6f,0x20,\n    0x62,0x65,0x20,0x75,0x73,0x65,0x64,0x20,0x2a,0x4f,0x4e,0x4c,0x59,0x2a,0x20,0x69,\n    0x6e,0x20,0x64,0x65,0x62,0x75,0x67,0x20,0x6c,0x6f,0x6f,0x70,0x20,0x28,0x65,0x78,\n    0x65,0x63,0x75,0x74,0x65,0x64,0x20,0x69,0x6e,0x20,0x61,0x20,0x6e,0x65,0x77,0x20,\n    0x74,0x68,0x72,0x65,0x61,0x64,0x29,0x0a,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x43,0x75,\n    0x72,0x72,0x65,0x6e,0x74,0x54,0x68,0x72,0x65,0x61,0x64,0x4d,0x54,0x20,0x3d,0x20,\n    0x7b,0x0a,0x20,0x20,0x20,0x20,0x67,0x65,0x74,0x69,0x6e,0x66,0x6f,0x20,0x20,0x3d,\n    0x20,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x28,0x73,0x65,0x6c,0x66,0x2c,0x20,\n    0x6c,0x65,0x76,0x65,0x6c,0x2c,0x20,0x77,0x68,0x61,0x74,0x29,0x20,0x20,0x20,0x20,\n    0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x67,0x65,0x74,0x69,0x6e,0x66,0x6f,0x28,\n    0x73,0x65,0x6c,0x66,0x5b,0x31,0x5d,0x2c,0x20,0x6c,0x65,0x76,0x65,0x6c,0x20,0x2b,\n    0x20,0x32,0x2c,0x20,0x77,0x68,0x61,0x74,0x29,0x20,0x65,0x6e,0x64,0x2c,0x0a,0x20,\n    0x20,0x20,0x20,0x67,0x65,0x74,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x3d,0x20,0x66,0x75,\n    0x6e,0x63,0x74,0x69,0x6f,0x6e,0x28,0x73,0x65,0x6c,0x66,0x2c,0x20,0x6c,0x65,0x76,\n    0x65,0x6c,0x2c,0x20,0x69,0x64,0x78,0x29,0x20,0x20,0x20,0x20,0x20,0x20,0x72,0x65,\n    0x74,0x75,0x72,0x6e,0x20,0x67,0x65,0x74,0x6c,0x6f,0x63,0x61,0x6c,0x28,0x73,0x65,\n    0x6c,0x66,0x5b,0x31,0x5d,0x2c,0x20,0x6c,0x65,0x76,0x65,0x6c,0x20,0x2b,0x20,0x32,\n    0x2c,0x20,0x69,0x64,0x78,0x29,0x20,0x65,0x6e,0x64,0x2c,0x0a,0x20,0x20,0x20,0x20,\n    0x73,0x65,0x74,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x3d,0x20,0x66,0x75,0x6e,0x63,0x74,\n    0x69,0x6f,0x6e,0x28,0x73,0x65,0x6c,0x66,0x2c,0x20,0x6c,0x65,0x76,0x65,0x6c,0x2c,\n    0x20,0x69,0x64,0x78,0x2c,0x20,0x76,0x61,0x6c,0x29,0x20,0x72,0x65,0x74,0x75,0x72,\n    0x6e,0x20,0x73,0x65,0x74,0x6c,0x6f,0x63,0x61,0x6c,0x28,0x73,0x65,0x6c,0x66,0x5b,\n    0x31,0x5d,0x2c,0x20,0x6c,0x65,0x76,0x65,0x6c,0x20,0x2b,0x20,0x32,0x2c,0x20,0x69,\n    0x64,0x78,0x2c,0x20,0x76,0x61,0x6c,0x29,0x20,0x65,0x6e,0x64,0x2c,0x0a,0x7d,0x0a,\n    0x43,0x75,0x72,0x72,0x65,0x6e,0x74,0x54,0x68,0x72,0x65,0x61,0x64,0x4d,0x54,0x2e,\n    0x5f,0x5f,0x69,0x6e,0x64,0x65,0x78,0x20,0x3d,0x20,0x43,0x75,0x72,0x72,0x65,0x6e,\n    0x74,0x54,0x68,0x72,0x65,0x61,0x64,0x4d,0x54,0x0a,0x66,0x75,0x6e,0x63,0x74,0x69,\n    0x6f,0x6e,0x20,0x4d,0x2e,0x43,0x75,0x72,0x72,0x65,0x6e,0x74,0x54,0x68,0x72,0x65,\n    0x61,0x64,0x28,0x63,0x6f,0x72,0x6f,0x29,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,\n    0x73,0x65,0x74,0x6d,0x65,0x74,0x61,0x74,0x61,0x62,0x6c,0x65,0x28,0x7b,0x20,0x63,\n    0x6f,0x72,0x6f,0x20,0x7d,0x2c,0x20,0x43,0x75,0x72,0x72,0x65,0x6e,0x74,0x54,0x68,\n    0x72,0x65,0x61,0x64,0x4d,0x54,0x29,0x20,0x65,0x6e,0x64,0x0a,0x0a,0x0a,0x2d,0x2d,\n    0x20,0x53,0x6f,0x6d,0x65,0x20,0x76,0x65,0x72,0x73,0x69,0x6f,0x6e,0x20,0x64,0x65,\n    0x70,0x65,0x6e,0x64,0x61,0x6e,0x74,0x20,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,\n    0x73,0x0a,0x69,0x66,0x20,0x5f,0x56,0x45,0x52,0x53,0x49,0x4f,0x4e,0x20,0x3d,0x3d,\n    0x20,0x22,0x4c,0x75,0x61,0x20,0x35,0x2e,0x31,0x22,0x20,0x74,0x68,0x65,0x6e,0x0a,\n    0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x6c,0x6f,0x61,0x64,0x73,0x74,\n    0x72,0x69,0x6e,0x67,0x2c,0x20,0x67,0x65,0x74,0x66,0x65,0x6e,0x76,0x2c,0x20,0x73,\n    0x65,0x74,0x66,0x65,0x6e,0x76,0x2c,0x20,0x64,0x65,0x62,0x75,0x67,0x5f,0x67,0x65,\n    0x74,0x69,0x6e,0x66,0x6f,0x2c,0x20,0x4d,0x61,0x69,0x6e,0x54,0x68,0x72,0x65,0x61,\n    0x64,0x20,0x3d,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x6c,0x6f,\n    0x61,0x64,0x73,0x74,0x72,0x69,0x6e,0x67,0x2c,0x20,0x67,0x65,0x74,0x66,0x65,0x6e,\n    0x76,0x2c,0x20,0x73,0x65,0x74,0x66,0x65,0x6e,0x76,0x2c,0x20,0x64,0x65,0x62,0x75,\n    0x67,0x2e,0x67,0x65,0x74,0x69,0x6e,0x66,0x6f,0x2c,0x20,0x6e,0x69,0x6c,0x0a,0x0a,\n    0x20,0x20,0x20,0x20,0x2d,0x2d,0x20,0x69,0x6e,0x20,0x35,0x2e,0x31,0x20,0x22,0x74,\n    0x22,0x20,0x66,0x6c,0x61,0x67,0x20,0x64,0x6f,0x65,0x73,0x20,0x6e,0x6f,0x74,0x20,\n    0x65,0x78,0x69,0x73,0x74,0x20,0x61,0x6e,0x64,0x20,0x74,0x72,0x69,0x67,0x67,0x65,\n    0x72,0x20,0x61,0x6e,0x20,0x65,0x72,0x72,0x6f,0x72,0x20,0x73,0x6f,0x20,0x72,0x65,\n    0x6d,0x6f,0x76,0x65,0x20,0x69,0x74,0x20,0x66,0x72,0x6f,0x6d,0x20,0x77,0x68,0x61,\n    0x74,0x0a,0x20,0x20,0x20,0x20,0x43,0x75,0x72,0x72,0x65,0x6e,0x74,0x54,0x68,0x72,\n    0x65,0x61,0x64,0x4d,0x54,0x2e,0x67,0x65,0x74,0x69,0x6e,0x66,0x6f,0x20,0x3d,0x20,\n    0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x28,0x73,0x65,0x6c,0x66,0x2c,0x20,0x6c,\n    0x65,0x76,0x65,0x6c,0x2c,0x20,0x77,0x68,0x61,0x74,0x29,0x20,0x72,0x65,0x74,0x75,\n    0x72,0x6e,0x20,0x67,0x65,0x74,0x69,0x6e,0x66,0x6f,0x28,0x73,0x65,0x6c,0x66,0x5b,\n    0x31,0x5d,0x2c,0x20,0x6c,0x65,0x76,0x65,0x6c,0x20,0x2b,0x20,0x32,0x2c,0x20,0x77,\n    0x68,0x61,0x74,0x3a,0x67,0x73,0x75,0x62,0x28,0x22,0x74,0x22,0x2c,0x20,0x22,0x22,\n    0x2c,0x20,0x31,0x29,0x29,0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,0x20,0x20,0x46,0x6f,\n    0x72,0x65,0x69,0x67,0x6e,0x54,0x68,0x72,0x65,0x61,0x64,0x4d,0x54,0x2e,0x67,0x65,\n    0x74,0x69,0x6e,0x66,0x6f,0x20,0x3d,0x20,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,\n    0x28,0x73,0x65,0x6c,0x66,0x2c,0x20,0x6c,0x65,0x76,0x65,0x6c,0x2c,0x20,0x77,0x68,\n    0x61,0x74,0x29,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x67,0x65,0x74,0x69,0x6e,\n    0x66,0x6f,0x28,0x73,0x65,0x6c,0x66,0x5b,0x31,0x5d,0x2c,0x20,0x6c,0x65,0x76,0x65,\n    0x6c,0x2c,0x20,0x77,0x68,0x61,0x74,0x3a,0x67,0x73,0x75,0x62,0x28,0x22,0x74,0x22,\n    0x2c,0x20,0x22,0x22,0x2c,0x20,0x31,0x29,0x29,0x20,0x65,0x6e,0x64,0x0a,0x0a,0x20,\n    0x20,0x20,0x20,0x2d,0x2d,0x20,0x77,0x68,0x65,0x6e,0x20,0x77,0x65,0x27,0x72,0x65,\n    0x20,0x66,0x6f,0x72,0x63,0x65,0x64,0x20,0x74,0x6f,0x20,0x73,0x74,0x61,0x72,0x74,\n    0x20,0x64,0x65,0x62,0x75,0x67,0x20,0x6c,0x6f,0x6f,0x70,0x20,0x6f,0x6e,0x20,0x74,\n    0x6f,0x70,0x20,0x6f,0x66,0x20,0x70,0x72,0x6f,0x67,0x72,0x61,0x6d,0x20,0x73,0x74,\n    0x61,0x63,0x6b,0x20,0x28,0x77,0x68,0x65,0x6e,0x20,0x6f,0x6e,0x20,0x6d,0x61,0x69,\n    0x6e,0x20,0x63,0x6f,0x72,0x6f,0x75,0x74,0x69,0x6e,0x65,0x29,0x0a,0x20,0x20,0x20,\n    0x20,0x2d,0x2d,0x20,0x74,0x68,0x69,0x73,0x20,0x72,0x65,0x71,0x75,0x69,0x72,0x65,\n    0x73,0x20,0x73,0x6f,0x6d,0x65,0x20,0x68,0x61,0x63,0x6b,0x65,0x72,0x79,0x20,0x74,\n    0x6f,0x20,0x67,0x65,0x74,0x20,0x72,0x69,0x67,0x68,0x74,0x20,0x73,0x74,0x61,0x63,\n    0x6b,0x20,0x6c,0x65,0x76,0x65,0x6c,0x0a,0x0a,0x20,0x20,0x20,0x20,0x2d,0x2d,0x20,\n    0x46,0x61,0x6c,0x6c,0x62,0x61,0x63,0x6b,0x20,0x6d,0x65,0x74,0x68,0x6f,0x64,0x20,\n    0x74,0x6f,0x20,0x69,0x6e,0x73,0x70,0x65,0x63,0x74,0x20,0x72,0x75,0x6e,0x6e,0x69,\n    0x6e,0x67,0x20,0x74,0x68,0x72,0x65,0x61,0x64,0x20,0x28,0x6f,0x6e,0x6c,0x79,0x20,\n    0x66,0x6f,0x72,0x20,0x6d,0x61,0x69,0x6e,0x20,0x74,0x68,0x72,0x65,0x61,0x64,0x20,\n    0x69,0x6e,0x20,0x35,0x2e,0x31,0x20,0x6f,0x72,0x20,0x66,0x6f,0x72,0x20,0x63,0x6f,\n    0x6e,0x64,0x69,0x74,0x69,0x6f,0x6e,0x61,0x6c,0x20,0x62,0x72,0x65,0x61,0x6b,0x70,\n    0x6f,0x69,0x6e,0x74,0x73,0x29,0x0a,0x20,0x20,0x20,0x20,0x2d,0x2d,0x2d,0x20,0x47,\n    0x65,0x74,0x73,0x20,0x61,0x20,0x73,0x63,0x72,0x69,0x70,0x74,0x20,0x73,0x74,0x61,\n    0x63,0x6b,0x20,0x6c,0x65,0x76,0x65,0x6c,0x20,0x77,0x69,0x74,0x68,0x20,0x61,0x64,\n    0x64,0x69,0x74,0x69,0x6f,0x6e,0x61,0x6c,0x20,0x64,0x65,0x62,0x75,0x67,0x67,0x65,\n    0x72,0x20,0x6c,0x6f,0x67,0x69,0x63,0x20,0x61,0x64,0x64,0x65,0x64,0x0a,0x20,0x20,\n    0x20,0x20,0x2d,0x2d,0x20,0x40,0x70,0x61,0x72,0x61,0x6d,0x20,0x6c,0x20,0x28,0x6e,\n    0x75,0x6d,0x62,0x65,0x72,0x29,0x20,0x73,0x74,0x61,0x63,0x6b,0x20,0x6c,0x65,0x76,\n    0x65,0x6c,0x20,0x74,0x6f,0x20,0x67,0x65,0x74,0x20,0x66,0x6f,0x72,0x20,0x64,0x65,\n    0x62,0x75,0x67,0x67,0x65,0x64,0x20,0x73,0x63,0x72,0x69,0x70,0x74,0x20,0x28,0x30,\n    0x20,0x62,0x61,0x73,0x65,0x64,0x29,0x0a,0x20,0x20,0x20,0x20,0x2d,0x2d,0x20,0x40,\n    0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x72,0x65,0x61,0x6c,0x20,0x4c,0x75,0x61,0x20,\n    0x73,0x74,0x61,0x63,0x6b,0x20,0x6c,0x65,0x76,0x65,0x6c,0x20,0x73,0x75,0x69,0x74,\n    0x61,0x62,0x6c,0x65,0x20,0x74,0x6f,0x20,0x62,0x65,0x20,0x70,0x61,0x73,0x73,0x65,\n    0x64,0x20,0x74,0x68,0x72,0x6f,0x75,0x67,0x68,0x20,0x64,0x65,0x75,0x62,0x67,0x20,\n    0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x73,0x0a,0x20,0x20,0x20,0x20,0x6c,0x6f,\n    0x63,0x61,0x6c,0x20,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x20,0x67,0x65,0x74,\n    0x5f,0x73,0x63,0x72,0x69,0x70,0x74,0x5f,0x6c,0x65,0x76,0x65,0x6c,0x28,0x6c,0x29,\n    0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x68,\n    0x6f,0x6f,0x6b,0x20,0x3d,0x20,0x64,0x65,0x62,0x75,0x67,0x2e,0x67,0x65,0x74,0x68,\n    0x6f,0x6f,0x6b,0x28,0x29,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x66,0x6f,\n    0x72,0x20,0x69,0x3d,0x32,0x2c,0x20,0x6d,0x61,0x74,0x68,0x2e,0x68,0x75,0x67,0x65,\n    0x20,0x64,0x6f,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x69,0x66,0x20,0x61,0x73,0x73,0x65,0x72,0x74,0x28,0x64,0x65,0x62,0x75,0x67,0x2e,\n    0x67,0x65,0x74,0x69,0x6e,0x66,0x6f,0x28,0x69,0x2c,0x20,0x22,0x66,0x22,0x29,0x29,\n    0x2e,0x66,0x75,0x6e,0x63,0x20,0x3d,0x3d,0x20,0x68,0x6f,0x6f,0x6b,0x20,0x74,0x68,\n    0x65,0x6e,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x69,0x20,0x2b,0x20,0x6c,0x20,\n    0x2d,0x2d,0x20,0x74,0x68,0x65,0x20,0x73,0x63,0x72,0x69,0x70,0x74,0x20,0x74,0x6f,\n    0x20,0x6c,0x65,0x76,0x65,0x6c,0x20,0x69,0x73,0x20,0x6a,0x75,0x73,0x74,0x20,0x62,\n    0x65,0x6c,0x6f,0x77,0x2c,0x20,0x62,0x75,0x74,0x20,0x62,0x65,0x63,0x61,0x75,0x73,\n    0x65,0x20,0x6f,0x66,0x20,0x74,0x68,0x65,0x20,0x65,0x78,0x74,0x72,0x61,0x20,0x63,\n    0x61,0x6c,0x6c,0x20,0x74,0x6f,0x20,0x74,0x68,0x69,0x73,0x20,0x66,0x75,0x6e,0x63,\n    0x74,0x69,0x6f,0x6e,0x2c,0x20,0x74,0x68,0x65,0x20,0x6c,0x65,0x76,0x65,0x6c,0x20,\n    0x69,0x73,0x20,0x6f,0x6b,0x20,0x66,0x6f,0x72,0x20,0x63,0x61,0x6c,0x6c,0x65,0x65,\n    0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x65,0x6e,0x64,\n    0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,0x20,\n    0x20,0x65,0x6e,0x64,0x0a,0x0a,0x20,0x20,0x20,0x20,0x69,0x66,0x20,0x72,0x61,0x77,\n    0x67,0x65,0x74,0x28,0x5f,0x47,0x2c,0x20,0x22,0x6a,0x69,0x74,0x22,0x29,0x20,0x74,\n    0x68,0x65,0x6e,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x4d,0x61,0x69,0x6e,\n    0x54,0x68,0x72,0x65,0x61,0x64,0x20,0x3d,0x20,0x7b,0x0a,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x5b,0x31,0x5d,0x20,0x3d,0x20,0x22,0x6d,0x61,\n    0x69,0x6e,0x22,0x2c,0x20,0x2d,0x2d,0x20,0x61,0x73,0x20,0x74,0x68,0x65,0x20,0x72,\n    0x61,0x77,0x20,0x74,0x68,0x72,0x65,0x61,0x64,0x20,0x6f,0x62,0x6a,0x65,0x63,0x74,\n    0x20,0x69,0x73,0x20,0x75,0x73,0x65,0x64,0x20,0x61,0x73,0x20,0x74,0x61,0x62,0x6c,\n    0x65,0x20,0x6b,0x65,0x79,0x73,0x2c,0x20,0x70,0x72,0x6f,0x76,0x69,0x64,0x65,0x20,\n    0x61,0x20,0x72,0x65,0x70,0x6c,0x61,0x63,0x65,0x6d,0x65,0x6e,0x74,0x2e,0x0a,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x2d,0x2d,0x20,0x4c,0x75,\n    0x61,0x4a,0x49,0x54,0x20,0x63,0x6f,0x6d,0x70,0x6c,0x65,0x74,0x65,0x6c,0x79,0x20,\n    0x65,0x6c,0x69,0x6d,0x69,0x6e,0x61,0x74,0x65,0x73,0x20,0x74,0x61,0x69,0x6c,0x20,\n    0x63,0x61,0x6c,0x6c,0x73,0x20,0x66,0x72,0x6f,0x6d,0x20,0x73,0x74,0x61,0x63,0x6b,\n    0x2c,0x20,0x73,0x6f,0x20,0x67,0x65,0x74,0x5f,0x73,0x63,0x72,0x69,0x70,0x74,0x5f,\n    0x6c,0x65,0x76,0x65,0x6c,0x20,0x72,0x65,0x74,0x75,0x6e,0x72,0x73,0x20,0x77,0x72,\n    0x6f,0x6e,0x67,0x20,0x72,0x65,0x73,0x75,0x6c,0x74,0x20,0x69,0x6e,0x20,0x74,0x68,\n    0x69,0x73,0x20,0x63,0x61,0x73,0x65,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x67,0x65,0x74,0x69,0x6e,0x66,0x6f,0x20,0x20,0x3d,0x20,0x66,\n    0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x28,0x73,0x65,0x6c,0x66,0x2c,0x20,0x6c,0x65,\n    0x76,0x65,0x6c,0x2c,0x20,0x77,0x68,0x61,0x74,0x29,0x20,0x20,0x20,0x20,0x20,0x72,\n    0x65,0x74,0x75,0x72,0x6e,0x20,0x67,0x65,0x74,0x69,0x6e,0x66,0x6f,0x28,0x67,0x65,\n    0x74,0x5f,0x73,0x63,0x72,0x69,0x70,0x74,0x5f,0x6c,0x65,0x76,0x65,0x6c,0x28,0x6c,\n    0x65,0x76,0x65,0x6c,0x29,0x20,0x2d,0x20,0x31,0x2c,0x20,0x77,0x68,0x61,0x74,0x3a,\n    0x67,0x73,0x75,0x62,0x28,0x22,0x74,0x22,0x2c,0x20,0x22,0x22,0x2c,0x20,0x31,0x29,\n    0x29,0x20,0x65,0x6e,0x64,0x2c,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x67,0x65,0x74,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x3d,0x20,0x66,0x75,\n    0x6e,0x63,0x74,0x69,0x6f,0x6e,0x28,0x73,0x65,0x6c,0x66,0x2c,0x20,0x6c,0x65,0x76,\n    0x65,0x6c,0x2c,0x20,0x69,0x64,0x78,0x29,0x20,0x20,0x20,0x20,0x20,0x20,0x72,0x65,\n    0x74,0x75,0x72,0x6e,0x20,0x67,0x65,0x74,0x6c,0x6f,0x63,0x61,0x6c,0x28,0x67,0x65,\n    0x74,0x5f,0x73,0x63,0x72,0x69,0x70,0x74,0x5f,0x6c,0x65,0x76,0x65,0x6c,0x28,0x6c,\n    0x65,0x76,0x65,0x6c,0x29,0x20,0x2d,0x20,0x31,0x2c,0x20,0x69,0x64,0x78,0x29,0x20,\n    0x65,0x6e,0x64,0x2c,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x73,0x65,0x74,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x3d,0x20,0x66,0x75,0x6e,0x63,\n    0x74,0x69,0x6f,0x6e,0x28,0x73,0x65,0x6c,0x66,0x2c,0x20,0x6c,0x65,0x76,0x65,0x6c,\n    0x2c,0x20,0x69,0x64,0x78,0x2c,0x20,0x76,0x61,0x6c,0x29,0x20,0x72,0x65,0x74,0x75,\n    0x72,0x6e,0x20,0x73,0x65,0x74,0x6c,0x6f,0x63,0x61,0x6c,0x28,0x67,0x65,0x74,0x5f,\n    0x73,0x63,0x72,0x69,0x70,0x74,0x5f,0x6c,0x65,0x76,0x65,0x6c,0x28,0x6c,0x65,0x76,\n    0x65,0x6c,0x29,0x20,0x2d,0x20,0x31,0x2c,0x20,0x69,0x64,0x78,0x2c,0x20,0x76,0x61,\n    0x6c,0x29,0x20,0x65,0x6e,0x64,0x2c,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x7d,0x0a,0x20,0x20,0x20,0x20,0x65,0x6c,0x73,0x65,0x0a,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x4d,0x61,0x69,0x6e,0x54,0x68,0x72,0x65,0x61,0x64,0x20,0x3d,0x20,\n    0x7b,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x5b,0x31,\n    0x5d,0x20,0x3d,0x20,0x22,0x6d,0x61,0x69,0x6e,0x22,0x2c,0x0a,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x67,0x65,0x74,0x69,0x6e,0x66,0x6f,0x20,\n    0x20,0x3d,0x20,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x28,0x73,0x65,0x6c,0x66,\n    0x2c,0x20,0x6c,0x65,0x76,0x65,0x6c,0x2c,0x20,0x77,0x68,0x61,0x74,0x29,0x20,0x20,\n    0x20,0x20,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x67,0x65,0x74,0x69,0x6e,0x66,\n    0x6f,0x28,0x67,0x65,0x74,0x5f,0x73,0x63,0x72,0x69,0x70,0x74,0x5f,0x6c,0x65,0x76,\n    0x65,0x6c,0x28,0x6c,0x65,0x76,0x65,0x6c,0x29,0x20,0x2c,0x20,0x77,0x68,0x61,0x74,\n    0x3a,0x67,0x73,0x75,0x62,0x28,0x22,0x74,0x22,0x2c,0x20,0x22,0x22,0x2c,0x20,0x31,\n    0x29,0x29,0x20,0x65,0x6e,0x64,0x2c,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x67,0x65,0x74,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x3d,0x20,0x66,\n    0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x28,0x73,0x65,0x6c,0x66,0x2c,0x20,0x6c,0x65,\n    0x76,0x65,0x6c,0x2c,0x20,0x69,0x64,0x78,0x29,0x20,0x20,0x20,0x20,0x20,0x20,0x72,\n    0x65,0x74,0x75,0x72,0x6e,0x20,0x67,0x65,0x74,0x6c,0x6f,0x63,0x61,0x6c,0x28,0x67,\n    0x65,0x74,0x5f,0x73,0x63,0x72,0x69,0x70,0x74,0x5f,0x6c,0x65,0x76,0x65,0x6c,0x28,\n    0x6c,0x65,0x76,0x65,0x6c,0x29,0x2c,0x20,0x69,0x64,0x78,0x29,0x20,0x65,0x6e,0x64,\n    0x2c,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x73,0x65,\n    0x74,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x3d,0x20,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,\n    0x6e,0x28,0x73,0x65,0x6c,0x66,0x2c,0x20,0x6c,0x65,0x76,0x65,0x6c,0x2c,0x20,0x69,\n    0x64,0x78,0x2c,0x20,0x76,0x61,0x6c,0x29,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,\n    0x73,0x65,0x74,0x6c,0x6f,0x63,0x61,0x6c,0x28,0x67,0x65,0x74,0x5f,0x73,0x63,0x72,\n    0x69,0x70,0x74,0x5f,0x6c,0x65,0x76,0x65,0x6c,0x28,0x6c,0x65,0x76,0x65,0x6c,0x29,\n    0x2c,0x20,0x69,0x64,0x78,0x2c,0x20,0x76,0x61,0x6c,0x29,0x20,0x65,0x6e,0x64,0x2c,\n    0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x7d,0x0a,0x20,0x20,0x20,0x20,0x65,\n    0x6e,0x64,0x0a,0x0a,0x0a,0x0a,0x20,0x20,0x20,0x20,0x2d,0x2d,0x20,0x49,0x66,0x20,\n    0x74,0x68,0x65,0x20,0x56,0x4d,0x20,0x69,0x73,0x20,0x76,0x61,0x6e,0x69,0x6c,0x6c,\n    0x61,0x20,0x4c,0x75,0x61,0x20,0x35,0x2e,0x31,0x20,0x6f,0x72,0x20,0x4c,0x75,0x61,\n    0x4a,0x49,0x54,0x20,0x32,0x20,0x77,0x69,0x74,0x68,0x6f,0x75,0x74,0x20,0x35,0x2e,\n    0x32,0x20,0x63,0x6f,0x6d,0x70,0x61,0x74,0x69,0x62,0x69,0x6c,0x69,0x74,0x79,0x2c,\n    0x20,0x74,0x68,0x65,0x72,0x65,0x20,0x69,0x73,0x20,0x6e,0x6f,0x20,0x77,0x61,0x79,\n    0x20,0x74,0x6f,0x20,0x67,0x65,0x74,0x20,0x61,0x20,0x72,0x65,0x66,0x65,0x72,0x65,\n    0x6e,0x63,0x65,0x20,0x74,0x6f,0x0a,0x20,0x20,0x20,0x20,0x2d,0x2d,0x20,0x74,0x68,\n    0x65,0x20,0x6d,0x61,0x69,0x6e,0x20,0x63,0x6f,0x72,0x6f,0x75,0x74,0x69,0x6e,0x65,\n    0x2c,0x20,0x73,0x6f,0x20,0x66,0x61,0x6c,0x6c,0x20,0x62,0x61,0x63,0x6b,0x20,0x74,\n    0x6f,0x20,0x64,0x69,0x72,0x65,0x63,0x74,0x20,0x6d,0x6f,0x64,0x65,0x3a,0x20,0x74,\n    0x68,0x65,0x20,0x64,0x65,0x62,0x75,0x67,0x67,0x65,0x72,0x20,0x6c,0x6f,0x6f,0x70,\n    0x20,0x69,0x73,0x20,0x73,0x74,0x61,0x72,0x74,0x65,0x64,0x20,0x6f,0x6e,0x20,0x74,\n    0x68,0x65,0x20,0x74,0x6f,0x70,0x20,0x6f,0x66,0x20,0x6d,0x61,0x69,0x6e,0x20,0x74,\n    0x68,0x72,0x65,0x61,0x64,0x0a,0x20,0x20,0x20,0x20,0x2d,0x2d,0x20,0x61,0x6e,0x64,\n    0x20,0x74,0x68,0x65,0x20,0x61,0x63,0x74,0x75,0x61,0x6c,0x20,0x6c,0x65,0x76,0x65,\n    0x6c,0x20,0x69,0x73,0x20,0x72,0x65,0x63,0x6f,0x6d,0x70,0x75,0x74,0x65,0x64,0x20,\n    0x65,0x61,0x63,0x68,0x20,0x74,0x69,0x6d,0x65,0x0a,0x20,0x20,0x20,0x20,0x6c,0x6f,\n    0x63,0x61,0x6c,0x20,0x6f,0x6c,0x64,0x43,0x75,0x72,0x72,0x65,0x6e,0x74,0x54,0x68,\n    0x72,0x65,0x61,0x64,0x20,0x3d,0x20,0x4d,0x2e,0x43,0x75,0x72,0x72,0x65,0x6e,0x74,\n    0x54,0x68,0x72,0x65,0x61,0x64,0x0a,0x20,0x20,0x20,0x20,0x4d,0x2e,0x43,0x75,0x72,\n    0x72,0x65,0x6e,0x74,0x54,0x68,0x72,0x65,0x61,0x64,0x20,0x3d,0x20,0x66,0x75,0x6e,\n    0x63,0x74,0x69,0x6f,0x6e,0x28,0x63,0x6f,0x72,0x6f,0x29,0x20,0x72,0x65,0x74,0x75,\n    0x72,0x6e,0x20,0x63,0x6f,0x72,0x6f,0x20,0x61,0x6e,0x64,0x20,0x6f,0x6c,0x64,0x43,\n    0x75,0x72,0x72,0x65,0x6e,0x74,0x54,0x68,0x72,0x65,0x61,0x64,0x28,0x63,0x6f,0x72,\n    0x6f,0x29,0x20,0x6f,0x72,0x20,0x4d,0x61,0x69,0x6e,0x54,0x68,0x72,0x65,0x61,0x64,\n    0x20,0x65,0x6e,0x64,0x0a,0x0a,0x20,0x20,0x20,0x20,0x2d,0x2d,0x20,0x6c,0x6f,0x61,\n    0x64,0x20,0x61,0x20,0x70,0x69,0x65,0x63,0x65,0x20,0x6f,0x66,0x20,0x63,0x6f,0x64,\n    0x65,0x20,0x61,0x6c,0x6f,0x67,0x20,0x77,0x69,0x74,0x68,0x20,0x69,0x74,0x73,0x20,\n    0x65,0x6e,0x76,0x69,0x72,0x6f,0x6e,0x6d,0x65,0x6e,0x74,0x0a,0x20,0x20,0x20,0x20,\n    0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x20,0x4d,0x2e,0x6c,0x6f,0x61,0x64,0x69,\n    0x6e,0x28,0x63,0x6f,0x64,0x65,0x2c,0x20,0x65,0x6e,0x76,0x29,0x0a,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x66,0x2c,0x65,0x72,0x72,0x20,0x3d,\n    0x20,0x6c,0x6f,0x61,0x64,0x73,0x74,0x72,0x69,0x6e,0x67,0x28,0x63,0x6f,0x64,0x65,\n    0x29,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x69,0x66,0x20,0x6e,0x6f,0x74,0x20,0x66,\n    0x20,0x74,0x68,0x65,0x6e,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x72,0x65,\n    0x74,0x75,0x72,0x6e,0x20,0x6e,0x69,0x6c,0x2c,0x20,0x65,0x72,0x72,0x0a,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x65,0x6c,0x73,0x65,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x66,0x20,0x61,0x6e,0x64,0x20,0x73,0x65,\n    0x74,0x66,0x65,0x6e,0x76,0x28,0x66,0x2c,0x20,0x65,0x6e,0x76,0x29,0x0a,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,0x20,0x20,0x65,0x6e,0x64,0x0a,\n    0x0a,0x20,0x20,0x20,0x20,0x2d,0x2d,0x20,0x74,0x61,0x62,0x6c,0x65,0x20,0x74,0x68,\n    0x61,0x74,0x20,0x6d,0x61,0x70,0x73,0x20,0x5b,0x67,0x73,0x5d,0x65,0x74,0x20,0x65,\n    0x6e,0x76,0x69,0x72,0x6f,0x6e,0x6d,0x65,0x6e,0x74,0x20,0x74,0x6f,0x20,0x69,0x6e,\n    0x64,0x65,0x78,0x0a,0x20,0x20,0x20,0x20,0x4d,0x2e,0x65,0x76,0x61,0x6c,0x5f,0x65,\n    0x6e,0x76,0x20,0x3d,0x20,0x73,0x65,0x74,0x6d,0x65,0x74,0x61,0x74,0x61,0x62,0x6c,\n    0x65,0x28,0x7b,0x20,0x7d,0x2c,0x20,0x7b,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x5f,0x5f,0x69,0x6e,0x64,0x65,0x78,0x20,0x3d,0x20,0x66,0x75,0x6e,0x63,0x74,\n    0x69,0x6f,0x6e,0x28,0x73,0x65,0x6c,0x66,0x2c,0x20,0x66,0x75,0x6e,0x63,0x29,0x20,\n    0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x67,0x65,0x74,0x66,0x65,0x6e,0x76,0x28,0x66,\n    0x75,0x6e,0x63,0x29,0x20,0x65,0x6e,0x64,0x2c,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x5f,0x5f,0x6e,0x65,0x77,0x69,0x6e,0x64,0x65,0x78,0x20,0x3d,0x20,0x66,\n    0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x28,0x73,0x65,0x6c,0x66,0x2c,0x20,0x66,0x75,\n    0x6e,0x63,0x2c,0x20,0x65,0x6e,0x76,0x29,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,\n    0x73,0x65,0x74,0x66,0x65,0x6e,0x76,0x28,0x66,0x75,0x6e,0x63,0x2c,0x20,0x65,0x6e,\n    0x76,0x29,0x20,0x65,0x6e,0x64,0x2c,0x0a,0x20,0x20,0x20,0x20,0x7d,0x29,0x0a,0x65,\n    0x6c,0x73,0x65,0x69,0x66,0x20,0x5f,0x56,0x45,0x52,0x53,0x49,0x4f,0x4e,0x20,0x3d,\n    0x3d,0x20,0x22,0x4c,0x75,0x61,0x20,0x35,0x2e,0x32,0x22,0x20,0x74,0x68,0x65,0x6e,\n    0x0a,0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x6c,0x6f,0x61,0x64,0x2c,\n    0x20,0x64,0x65,0x62,0x75,0x67,0x5f,0x67,0x65,0x74,0x69,0x6e,0x66,0x6f,0x20,0x3d,\n    0x20,0x6c,0x6f,0x61,0x64,0x2c,0x20,0x64,0x65,0x62,0x75,0x67,0x2e,0x67,0x65,0x74,\n    0x69,0x6e,0x66,0x6f,0x0a,0x20,0x20,0x20,0x20,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,\n    0x6e,0x20,0x4d,0x2e,0x67,0x65,0x74,0x69,0x6e,0x66,0x6f,0x28,0x63,0x6f,0x72,0x6f,\n    0x2c,0x20,0x6c,0x65,0x76,0x65,0x6c,0x2c,0x20,0x77,0x68,0x61,0x74,0x29,0x0a,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x69,0x66,0x20,0x63,0x6f,0x72,0x6f,0x20,0x74,\n    0x68,0x65,0x6e,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x64,0x65,0x62,0x75,0x67,\n    0x5f,0x67,0x65,0x74,0x69,0x6e,0x66,0x6f,0x28,0x63,0x6f,0x72,0x6f,0x2c,0x20,0x6c,\n    0x65,0x76,0x65,0x6c,0x2c,0x20,0x77,0x68,0x61,0x74,0x29,0x0a,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x65,0x6c,0x73,0x65,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,\n    0x64,0x65,0x62,0x75,0x67,0x5f,0x67,0x65,0x74,0x69,0x6e,0x66,0x6f,0x28,0x6c,0x65,\n    0x76,0x65,0x6c,0x20,0x2b,0x20,0x31,0x2c,0x20,0x77,0x68,0x61,0x74,0x29,0x20,0x65,\n    0x6e,0x64,0x0a,0x20,0x20,0x20,0x20,0x65,0x6e,0x64,0x0a,0x0a,0x20,0x20,0x20,0x20,\n    0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x20,0x4d,0x2e,0x6c,0x6f,0x61,0x64,0x69,\n    0x6e,0x28,0x63,0x6f,0x64,0x65,0x2c,0x20,0x65,0x6e,0x76,0x29,0x20,0x72,0x65,0x74,\n    0x75,0x72,0x6e,0x20,0x6c,0x6f,0x61,0x64,0x28,0x63,0x6f,0x64,0x65,0x2c,0x20,0x6e,\n    0x69,0x6c,0x2c,0x20,0x6e,0x69,0x6c,0x2c,0x20,0x65,0x6e,0x76,0x29,0x20,0x65,0x6e,\n    0x64,0x0a,0x0a,0x20,0x20,0x20,0x20,0x2d,0x2d,0x20,0x6e,0x6f,0x20,0x65,0x76,0x61,\n    0x6c,0x5f,0x65,0x6e,0x76,0x20,0x66,0x6f,0x72,0x20,0x35,0x2e,0x32,0x20,0x61,0x73,\n    0x20,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x73,0x20,0x64,0x6f,0x65,0x73,0x20,\n    0x6e,0x6f,0x74,0x20,0x68,0x61,0x76,0x65,0x20,0x65,0x6e,0x76,0x69,0x72,0x6f,0x6e,\n    0x6d,0x65,0x6e,0x74,0x73,0x20,0x61,0x6e,0x79,0x6d,0x6f,0x72,0x65,0x0a,0x65,0x6e,\n    0x64,0x0a,0x0a,0x2d,0x2d,0x20,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x0a,0x2d,0x2d,0x20,0x42,0x61,0x72,0x65,0x20,0x6d,0x69,0x6e,0x69,0x6d,\n    0x61,0x6c,0x20,0x6c,0x6f,0x67,0x20,0x73,0x79,0x73,0x74,0x65,0x6d,0x2e,0x0a,0x2d,\n    0x2d,0x20,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x0a,0x66,\n    0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x20,0x4d,0x2e,0x6c,0x6f,0x67,0x28,0x6c,0x65,\n    0x76,0x65,0x6c,0x2c,0x20,0x6d,0x73,0x67,0x2c,0x20,0x2e,0x2e,0x2e,0x29,0x0a,0x20,\n    0x20,0x20,0x20,0x69,0x66,0x20,0x28,0x4c,0x45,0x56,0x45,0x4c,0x53,0x5b,0x6c,0x65,\n    0x76,0x65,0x6c,0x5d,0x20,0x6f,0x72,0x20,0x2d,0x31,0x29,0x20,0x3e,0x20,0x4c,0x4f,\n    0x47,0x5f,0x4c,0x45,0x56,0x45,0x4c,0x20,0x74,0x68,0x65,0x6e,0x20,0x72,0x65,0x74,\n    0x75,0x72,0x6e,0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,0x20,0x20,0x69,0x66,0x20,0x73,\n    0x65,0x6c,0x65,0x63,0x74,0x28,0x22,0x23,0x22,0x2c,0x20,0x2e,0x2e,0x2e,0x29,0x20,\n    0x3e,0x20,0x30,0x20,0x74,0x68,0x65,0x6e,0x20,0x6d,0x73,0x67,0x20,0x3d,0x20,0x6d,\n    0x73,0x67,0x3a,0x66,0x6f,0x72,0x6d,0x61,0x74,0x28,0x2e,0x2e,0x2e,0x29,0x20,0x65,\n    0x6e,0x64,0x0a,0x20,0x20,0x20,0x20,0x69,0x6f,0x2e,0x62,0x61,0x73,0x65,0x2e,0x73,\n    0x74,0x64,0x65,0x72,0x72,0x3a,0x77,0x72,0x69,0x74,0x65,0x28,0x73,0x74,0x72,0x69,\n    0x6e,0x67,0x2e,0x66,0x6f,0x72,0x6d,0x61,0x74,0x28,0x22,0x44,0x45,0x42,0x55,0x47,\n    0x47,0x45,0x52,0x5c,0x74,0x25,0x73,0x5c,0x74,0x25,0x73,0x5c,0x6e,0x22,0x2c,0x20,\n    0x6c,0x65,0x76,0x65,0x6c,0x2c,0x20,0x6d,0x73,0x67,0x29,0x29,0x0a,0x65,0x6e,0x64,\n    0x0a,0x0a,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x4d,0x0a,0x0a,0x65,0x6e,0x64,0x0a,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x0a,0x2d,0x2d,0x20,0x45,0x6e,0x64,0x20,0x6f,0x66,0x20,0x6d,0x6f,0x64,0x75,0x6c,\n    0x65,0x64,0x65,0x62,0x75,0x67,0x67,0x65,0x72,0x2e,0x75,0x74,0x69,0x6c,0x0a,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x0a,\n    0x0a,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x0a,0x2d,0x2d,0x20,0x20,0x4d,0x6f,0x64,0x75,0x6c,0x65,0x20,0x64,0x65,0x62,\n    0x75,0x67,0x67,0x65,0x72,0x2e,0x75,0x72,0x6c,0x0a,0x70,0x61,0x63,0x6b,0x61,0x67,\n    0x65,0x2e,0x70,0x72,0x65,0x6c,0x6f,0x61,0x64,0x5b,0x22,0x64,0x65,0x62,0x75,0x67,\n    0x67,0x65,0x72,0x2e,0x75,0x72,0x6c,0x22,0x5d,0x20,0x3d,0x20,0x66,0x75,0x6e,0x63,\n    0x74,0x69,0x6f,0x6e,0x28,0x2e,0x2e,0x2e,0x29,0x0a,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x0a,0x2d,0x2d,0x20,0x55,0x52,0x49,0x20,0x70,\n    0x61,0x72,0x73,0x69,0x6e,0x67,0x2c,0x20,0x63,0x6f,0x6d,0x70,0x6f,0x73,0x69,0x74,\n    0x69,0x6f,0x6e,0x20,0x61,0x6e,0x64,0x20,0x72,0x65,0x6c,0x61,0x74,0x69,0x76,0x65,\n    0x20,0x55,0x52,0x4c,0x20,0x72,0x65,0x73,0x6f,0x6c,0x75,0x74,0x69,0x6f,0x6e,0x0a,\n    0x2d,0x2d,0x20,0x4c,0x75,0x61,0x53,0x6f,0x63,0x6b,0x65,0x74,0x20,0x74,0x6f,0x6f,\n    0x6c,0x6b,0x69,0x74,0x2e,0x0a,0x2d,0x2d,0x20,0x41,0x75,0x74,0x68,0x6f,0x72,0x3a,\n    0x20,0x44,0x69,0x65,0x67,0x6f,0x20,0x4e,0x65,0x68,0x61,0x62,0x0a,0x2d,0x2d,0x20,\n    0x52,0x43,0x53,0x20,0x49,0x44,0x3a,0x20,0x24,0x49,0x64,0x3a,0x20,0x75,0x72,0x6c,\n    0x2e,0x6c,0x75,0x61,0x2c,0x76,0x20,0x31,0x2e,0x33,0x38,0x20,0x32,0x30,0x30,0x36,\n    0x2f,0x30,0x34,0x2f,0x30,0x33,0x20,0x30,0x34,0x3a,0x34,0x35,0x3a,0x34,0x32,0x20,\n    0x64,0x69,0x65,0x67,0x6f,0x20,0x45,0x78,0x70,0x20,0x24,0x0a,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x0a,0x0a,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x0a,0x2d,0x2d,0x20,0x44,0x65,0x63,0x6c,\n    0x61,0x72,0x65,0x20,0x6d,0x6f,0x64,0x75,0x6c,0x65,0x0a,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x0a,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x73,\n    0x74,0x72,0x69,0x6e,0x67,0x20,0x3d,0x20,0x72,0x65,0x71,0x75,0x69,0x72,0x65,0x28,\n    0x22,0x73,0x74,0x72,0x69,0x6e,0x67,0x22,0x29,0x0a,0x6c,0x6f,0x63,0x61,0x6c,0x20,\n    0x62,0x61,0x73,0x65,0x20,0x3d,0x20,0x5f,0x47,0x0a,0x6c,0x6f,0x63,0x61,0x6c,0x20,\n    0x74,0x61,0x62,0x6c,0x65,0x20,0x3d,0x20,0x72,0x65,0x71,0x75,0x69,0x72,0x65,0x28,\n    0x22,0x74,0x61,0x62,0x6c,0x65,0x22,0x29,0x0a,0x0a,0x6c,0x6f,0x63,0x61,0x6c,0x20,\n    0x5f,0x45,0x4e,0x56,0x20,0x3d,0x20,0x7b,0x20,0x7d,0x0a,0x69,0x66,0x20,0x73,0x65,\n    0x74,0x66,0x65,0x6e,0x76,0x20,0x74,0x68,0x65,0x6e,0x20,0x73,0x65,0x74,0x66,0x65,\n    0x6e,0x76,0x28,0x31,0x2c,0x20,0x5f,0x45,0x4e,0x56,0x29,0x20,0x65,0x6e,0x64,0x0a,\n    0x0a,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x0a,0x2d,\n    0x2d,0x20,0x4d,0x6f,0x64,0x75,0x6c,0x65,0x20,0x76,0x65,0x72,0x73,0x69,0x6f,0x6e,\n    0x0a,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x0a,0x5f,\n    0x56,0x45,0x52,0x53,0x49,0x4f,0x4e,0x20,0x3d,0x20,0x22,0x55,0x52,0x4c,0x20,0x31,\n    0x2e,0x30,0x2e,0x31,0x22,0x0a,0x0a,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x0a,0x2d,0x2d,0x20,0x45,0x6e,0x63,0x6f,0x64,0x65,0x73,0x20,\n    0x61,0x20,0x73,0x74,0x72,0x69,0x6e,0x67,0x20,0x69,0x6e,0x74,0x6f,0x20,0x69,0x74,\n    0x73,0x20,0x65,0x73,0x63,0x61,0x70,0x65,0x64,0x20,0x68,0x65,0x78,0x61,0x64,0x65,\n    0x63,0x69,0x6d,0x61,0x6c,0x20,0x72,0x65,0x70,0x72,0x65,0x73,0x65,0x6e,0x74,0x61,\n    0x74,0x69,0x6f,0x6e,0x0a,0x2d,0x2d,0x20,0x49,0x6e,0x70,0x75,0x74,0x0a,0x2d,0x2d,\n    0x20,0x20,0x20,0x73,0x3a,0x20,0x62,0x69,0x6e,0x61,0x72,0x79,0x20,0x73,0x74,0x72,\n    0x69,0x6e,0x67,0x20,0x74,0x6f,0x20,0x62,0x65,0x20,0x65,0x6e,0x63,0x6f,0x64,0x65,\n    0x64,0x0a,0x2d,0x2d,0x20,0x52,0x65,0x74,0x75,0x72,0x6e,0x73,0x0a,0x2d,0x2d,0x20,\n    0x20,0x20,0x65,0x73,0x63,0x61,0x70,0x65,0x64,0x20,0x72,0x65,0x70,0x72,0x65,0x73,\n    0x65,0x6e,0x74,0x61,0x74,0x69,0x6f,0x6e,0x20,0x6f,0x66,0x20,0x73,0x74,0x72,0x69,\n    0x6e,0x67,0x20,0x62,0x69,0x6e,0x61,0x72,0x79,0x0a,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x0a,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,\n    0x20,0x65,0x73,0x63,0x61,0x70,0x65,0x28,0x73,0x29,0x0a,0x20,0x20,0x20,0x20,0x72,\n    0x65,0x74,0x75,0x72,0x6e,0x20,0x73,0x74,0x72,0x69,0x6e,0x67,0x2e,0x67,0x73,0x75,\n    0x62,0x28,0x73,0x2c,0x20,0x22,0x28,0x5b,0x5e,0x41,0x2d,0x5a,0x61,0x2d,0x7a,0x30,\n    0x2d,0x39,0x5f,0x5d,0x29,0x22,0x2c,0x20,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,\n    0x28,0x63,0x29,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x72,0x65,0x74,0x75,\n    0x72,0x6e,0x20,0x73,0x74,0x72,0x69,0x6e,0x67,0x2e,0x66,0x6f,0x72,0x6d,0x61,0x74,\n    0x28,0x22,0x25,0x25,0x25,0x30,0x32,0x78,0x22,0x2c,0x20,0x73,0x74,0x72,0x69,0x6e,\n    0x67,0x2e,0x62,0x79,0x74,0x65,0x28,0x63,0x29,0x29,0x0a,0x20,0x20,0x20,0x20,0x65,\n    0x6e,0x64,0x29,0x0a,0x65,0x6e,0x64,0x0a,0x0a,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x0a,0x2d,0x2d,0x20,0x50,0x72,0x6f,0x74,0x65,0x63,\n    0x74,0x73,0x20,0x61,0x20,0x70,0x61,0x74,0x68,0x20,0x73,0x65,0x67,0x6d,0x65,0x6e,\n    0x74,0x2c,0x20,0x74,0x6f,0x20,0x70,0x72,0x65,0x76,0x65,0x6e,0x74,0x20,0x69,0x74,\n    0x20,0x66,0x72,0x6f,0x6d,0x20,0x69,0x6e,0x74,0x65,0x72,0x66,0x65,0x72,0x69,0x6e,\n    0x67,0x20,0x77,0x69,0x74,0x68,0x20,0x74,0x68,0x65,0x0a,0x2d,0x2d,0x20,0x75,0x72,\n    0x6c,0x20,0x70,0x61,0x72,0x73,0x69,0x6e,0x67,0x2e,0x0a,0x2d,0x2d,0x20,0x49,0x6e,\n    0x70,0x75,0x74,0x0a,0x2d,0x2d,0x20,0x20,0x20,0x73,0x3a,0x20,0x62,0x69,0x6e,0x61,\n    0x72,0x79,0x20,0x73,0x74,0x72,0x69,0x6e,0x67,0x20,0x74,0x6f,0x20,0x62,0x65,0x20,\n    0x65,0x6e,0x63,0x6f,0x64,0x65,0x64,0x0a,0x2d,0x2d,0x20,0x52,0x65,0x74,0x75,0x72,\n    0x6e,0x73,0x0a,0x2d,0x2d,0x20,0x20,0x20,0x65,0x73,0x63,0x61,0x70,0x65,0x64,0x20,\n    0x72,0x65,0x70,0x72,0x65,0x73,0x65,0x6e,0x74,0x61,0x74,0x69,0x6f,0x6e,0x20,0x6f,\n    0x66,0x20,0x73,0x74,0x72,0x69,0x6e,0x67,0x20,0x62,0x69,0x6e,0x61,0x72,0x79,0x0a,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x0a,0x6c,0x6f,\n    0x63,0x61,0x6c,0x20,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x20,0x6d,0x61,0x6b,\n    0x65,0x5f,0x73,0x65,0x74,0x28,0x74,0x29,0x0a,0x09,0x6c,0x6f,0x63,0x61,0x6c,0x20,\n    0x73,0x20,0x3d,0x20,0x7b,0x7d,0x0a,0x09,0x66,0x6f,0x72,0x20,0x69,0x2c,0x76,0x20,\n    0x69,0x6e,0x20,0x62,0x61,0x73,0x65,0x2e,0x69,0x70,0x61,0x69,0x72,0x73,0x28,0x74,\n    0x29,0x20,0x64,0x6f,0x0a,0x09,0x09,0x73,0x5b,0x74,0x5b,0x69,0x5d,0x5d,0x20,0x3d,\n    0x20,0x31,0x0a,0x09,0x65,0x6e,0x64,0x0a,0x09,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,\n    0x73,0x0a,0x65,0x6e,0x64,0x0a,0x0a,0x2d,0x2d,0x20,0x74,0x68,0x65,0x73,0x65,0x20,\n    0x61,0x72,0x65,0x20,0x61,0x6c,0x6c,0x6f,0x77,0x65,0x64,0x20,0x77,0x69,0x74,0x68,\n    0x69,0x6e,0x67,0x20,0x61,0x20,0x70,0x61,0x74,0x68,0x20,0x73,0x65,0x67,0x6d,0x65,\n    0x6e,0x74,0x2c,0x20,0x61,0x6c,0x6f,0x6e,0x67,0x20,0x77,0x69,0x74,0x68,0x20,0x61,\n    0x6c,0x70,0x68,0x61,0x6e,0x75,0x6d,0x0a,0x2d,0x2d,0x20,0x6f,0x74,0x68,0x65,0x72,\n    0x20,0x63,0x68,0x61,0x72,0x61,0x63,0x74,0x65,0x72,0x73,0x20,0x6d,0x75,0x73,0x74,\n    0x20,0x62,0x65,0x20,0x65,0x73,0x63,0x61,0x70,0x65,0x64,0x0a,0x6c,0x6f,0x63,0x61,\n    0x6c,0x20,0x73,0x65,0x67,0x6d,0x65,0x6e,0x74,0x5f,0x73,0x65,0x74,0x20,0x3d,0x20,\n    0x6d,0x61,0x6b,0x65,0x5f,0x73,0x65,0x74,0x20,0x7b,0x0a,0x20,0x20,0x20,0x20,0x22,\n    0x2d,0x22,0x2c,0x20,0x22,0x5f,0x22,0x2c,0x20,0x22,0x2e,0x22,0x2c,0x20,0x22,0x21,\n    0x22,0x2c,0x20,0x22,0x7e,0x22,0x2c,0x20,0x22,0x2a,0x22,0x2c,0x20,0x22,0x27,0x22,\n    0x2c,0x20,0x22,0x28,0x22,0x2c,0x0a,0x09,0x22,0x29,0x22,0x2c,0x20,0x22,0x3a,0x22,\n    0x2c,0x20,0x22,0x40,0x22,0x2c,0x20,0x22,0x26,0x22,0x2c,0x20,0x22,0x3d,0x22,0x2c,\n    0x20,0x22,0x2b,0x22,0x2c,0x20,0x22,0x24,0x22,0x2c,0x20,0x22,0x2c,0x22,0x2c,0x0a,\n    0x7d,0x0a,0x0a,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,\n    0x6e,0x20,0x70,0x72,0x6f,0x74,0x65,0x63,0x74,0x5f,0x73,0x65,0x67,0x6d,0x65,0x6e,\n    0x74,0x28,0x73,0x29,0x0a,0x09,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x73,0x74,0x72,\n    0x69,0x6e,0x67,0x2e,0x67,0x73,0x75,0x62,0x28,0x73,0x2c,0x20,0x22,0x28,0x5b,0x5e,\n    0x41,0x2d,0x5a,0x61,0x2d,0x7a,0x30,0x2d,0x39,0x5f,0x5d,0x29,0x22,0x2c,0x20,0x66,\n    0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x20,0x28,0x63,0x29,0x0a,0x09,0x09,0x69,0x66,\n    0x20,0x73,0x65,0x67,0x6d,0x65,0x6e,0x74,0x5f,0x73,0x65,0x74,0x5b,0x63,0x5d,0x20,\n    0x74,0x68,0x65,0x6e,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x63,0x0a,0x09,0x09,\n    0x65,0x6c,0x73,0x65,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x73,0x74,0x72,0x69,\n    0x6e,0x67,0x2e,0x66,0x6f,0x72,0x6d,0x61,0x74,0x28,0x22,0x25,0x25,0x25,0x30,0x32,\n    0x78,0x22,0x2c,0x20,0x73,0x74,0x72,0x69,0x6e,0x67,0x2e,0x62,0x79,0x74,0x65,0x28,\n    0x63,0x29,0x29,0x20,0x65,0x6e,0x64,0x0a,0x09,0x65,0x6e,0x64,0x29,0x0a,0x65,0x6e,\n    0x64,0x0a,0x0a,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x0a,0x2d,0x2d,0x20,0x45,0x6e,0x63,0x6f,0x64,0x65,0x73,0x20,0x61,0x20,0x73,0x74,\n    0x72,0x69,0x6e,0x67,0x20,0x69,0x6e,0x74,0x6f,0x20,0x69,0x74,0x73,0x20,0x65,0x73,\n    0x63,0x61,0x70,0x65,0x64,0x20,0x68,0x65,0x78,0x61,0x64,0x65,0x63,0x69,0x6d,0x61,\n    0x6c,0x20,0x72,0x65,0x70,0x72,0x65,0x73,0x65,0x6e,0x74,0x61,0x74,0x69,0x6f,0x6e,\n    0x0a,0x2d,0x2d,0x20,0x49,0x6e,0x70,0x75,0x74,0x0a,0x2d,0x2d,0x20,0x20,0x20,0x73,\n    0x3a,0x20,0x62,0x69,0x6e,0x61,0x72,0x79,0x20,0x73,0x74,0x72,0x69,0x6e,0x67,0x20,\n    0x74,0x6f,0x20,0x62,0x65,0x20,0x65,0x6e,0x63,0x6f,0x64,0x65,0x64,0x0a,0x2d,0x2d,\n    0x20,0x52,0x65,0x74,0x75,0x72,0x6e,0x73,0x0a,0x2d,0x2d,0x20,0x20,0x20,0x65,0x73,\n    0x63,0x61,0x70,0x65,0x64,0x20,0x72,0x65,0x70,0x72,0x65,0x73,0x65,0x6e,0x74,0x61,\n    0x74,0x69,0x6f,0x6e,0x20,0x6f,0x66,0x20,0x73,0x74,0x72,0x69,0x6e,0x67,0x20,0x62,\n    0x69,0x6e,0x61,0x72,0x79,0x0a,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x0a,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x20,0x75,0x6e,0x65,\n    0x73,0x63,0x61,0x70,0x65,0x28,0x73,0x29,0x0a,0x20,0x20,0x20,0x20,0x72,0x65,0x74,\n    0x75,0x72,0x6e,0x20,0x73,0x74,0x72,0x69,0x6e,0x67,0x2e,0x67,0x73,0x75,0x62,0x28,\n    0x73,0x2c,0x20,0x22,0x25,0x25,0x28,0x25,0x78,0x25,0x78,0x29,0x22,0x2c,0x20,0x66,\n    0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x28,0x68,0x65,0x78,0x29,0x0a,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x73,0x74,0x72,0x69,\n    0x6e,0x67,0x2e,0x63,0x68,0x61,0x72,0x28,0x62,0x61,0x73,0x65,0x2e,0x74,0x6f,0x6e,\n    0x75,0x6d,0x62,0x65,0x72,0x28,0x68,0x65,0x78,0x2c,0x20,0x31,0x36,0x29,0x29,0x0a,\n    0x20,0x20,0x20,0x20,0x65,0x6e,0x64,0x29,0x0a,0x65,0x6e,0x64,0x0a,0x0a,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x0a,0x2d,0x2d,0x20,0x42,\n    0x75,0x69,0x6c,0x64,0x73,0x20,0x61,0x20,0x70,0x61,0x74,0x68,0x20,0x66,0x72,0x6f,\n    0x6d,0x20,0x61,0x20,0x62,0x61,0x73,0x65,0x20,0x70,0x61,0x74,0x68,0x20,0x61,0x6e,\n    0x64,0x20,0x61,0x20,0x72,0x65,0x6c,0x61,0x74,0x69,0x76,0x65,0x20,0x70,0x61,0x74,\n    0x68,0x0a,0x2d,0x2d,0x20,0x49,0x6e,0x70,0x75,0x74,0x0a,0x2d,0x2d,0x20,0x20,0x20,\n    0x62,0x61,0x73,0x65,0x5f,0x70,0x61,0x74,0x68,0x0a,0x2d,0x2d,0x20,0x20,0x20,0x72,\n    0x65,0x6c,0x61,0x74,0x69,0x76,0x65,0x5f,0x70,0x61,0x74,0x68,0x0a,0x2d,0x2d,0x20,\n    0x52,0x65,0x74,0x75,0x72,0x6e,0x73,0x0a,0x2d,0x2d,0x20,0x20,0x20,0x63,0x6f,0x72,\n    0x72,0x65,0x73,0x70,0x6f,0x6e,0x64,0x69,0x6e,0x67,0x20,0x61,0x62,0x73,0x6f,0x6c,\n    0x75,0x74,0x65,0x20,0x70,0x61,0x74,0x68,0x0a,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x0a,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x66,0x75,0x6e,\n    0x63,0x74,0x69,0x6f,0x6e,0x20,0x61,0x62,0x73,0x6f,0x6c,0x75,0x74,0x65,0x5f,0x70,\n    0x61,0x74,0x68,0x28,0x62,0x61,0x73,0x65,0x5f,0x70,0x61,0x74,0x68,0x2c,0x20,0x72,\n    0x65,0x6c,0x61,0x74,0x69,0x76,0x65,0x5f,0x70,0x61,0x74,0x68,0x29,0x0a,0x20,0x20,\n    0x20,0x20,0x69,0x66,0x20,0x73,0x74,0x72,0x69,0x6e,0x67,0x2e,0x73,0x75,0x62,0x28,\n    0x72,0x65,0x6c,0x61,0x74,0x69,0x76,0x65,0x5f,0x70,0x61,0x74,0x68,0x2c,0x20,0x31,\n    0x2c,0x20,0x31,0x29,0x20,0x3d,0x3d,0x20,0x22,0x2f,0x22,0x20,0x74,0x68,0x65,0x6e,\n    0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x72,0x65,0x6c,0x61,0x74,0x69,0x76,0x65,\n    0x5f,0x70,0x61,0x74,0x68,0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,0x20,0x20,0x6c,0x6f,\n    0x63,0x61,0x6c,0x20,0x70,0x61,0x74,0x68,0x20,0x3d,0x20,0x73,0x74,0x72,0x69,0x6e,\n    0x67,0x2e,0x67,0x73,0x75,0x62,0x28,0x62,0x61,0x73,0x65,0x5f,0x70,0x61,0x74,0x68,\n    0x2c,0x20,0x22,0x5b,0x5e,0x2f,0x5d,0x2a,0x24,0x22,0x2c,0x20,0x22,0x22,0x29,0x0a,\n    0x20,0x20,0x20,0x20,0x70,0x61,0x74,0x68,0x20,0x3d,0x20,0x70,0x61,0x74,0x68,0x20,\n    0x2e,0x2e,0x20,0x72,0x65,0x6c,0x61,0x74,0x69,0x76,0x65,0x5f,0x70,0x61,0x74,0x68,\n    0x0a,0x20,0x20,0x20,0x20,0x70,0x61,0x74,0x68,0x20,0x3d,0x20,0x73,0x74,0x72,0x69,\n    0x6e,0x67,0x2e,0x67,0x73,0x75,0x62,0x28,0x70,0x61,0x74,0x68,0x2c,0x20,0x22,0x28,\n    0x5b,0x5e,0x2f,0x5d,0x2a,0x25,0x2e,0x2f,0x29,0x22,0x2c,0x20,0x66,0x75,0x6e,0x63,\n    0x74,0x69,0x6f,0x6e,0x20,0x28,0x73,0x29,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x69,0x66,0x20,0x73,0x20,0x7e,0x3d,0x20,0x22,0x2e,0x2f,0x22,0x20,0x74,0x68,\n    0x65,0x6e,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x73,0x20,0x65,0x6c,0x73,0x65,\n    0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x22,0x22,0x20,0x65,0x6e,0x64,0x0a,0x20,\n    0x20,0x20,0x20,0x65,0x6e,0x64,0x29,0x0a,0x20,0x20,0x20,0x20,0x70,0x61,0x74,0x68,\n    0x20,0x3d,0x20,0x73,0x74,0x72,0x69,0x6e,0x67,0x2e,0x67,0x73,0x75,0x62,0x28,0x70,\n    0x61,0x74,0x68,0x2c,0x20,0x22,0x2f,0x25,0x2e,0x24,0x22,0x2c,0x20,0x22,0x2f,0x22,\n    0x29,0x0a,0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x72,0x65,0x64,0x75,\n    0x63,0x65,0x64,0x0a,0x20,0x20,0x20,0x20,0x77,0x68,0x69,0x6c,0x65,0x20,0x72,0x65,\n    0x64,0x75,0x63,0x65,0x64,0x20,0x7e,0x3d,0x20,0x70,0x61,0x74,0x68,0x20,0x64,0x6f,\n    0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x72,0x65,0x64,0x75,0x63,0x65,0x64,\n    0x20,0x3d,0x20,0x70,0x61,0x74,0x68,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x70,0x61,0x74,0x68,0x20,0x3d,0x20,0x73,0x74,0x72,0x69,0x6e,0x67,0x2e,0x67,0x73,\n    0x75,0x62,0x28,0x72,0x65,0x64,0x75,0x63,0x65,0x64,0x2c,0x20,0x22,0x28,0x5b,0x5e,\n    0x2f,0x5d,0x2a,0x2f,0x25,0x2e,0x25,0x2e,0x2f,0x29,0x22,0x2c,0x20,0x66,0x75,0x6e,\n    0x63,0x74,0x69,0x6f,0x6e,0x20,0x28,0x73,0x29,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x69,0x66,0x20,0x73,0x20,0x7e,0x3d,0x20,0x22,0x2e,\n    0x2e,0x2f,0x2e,0x2e,0x2f,0x22,0x20,0x74,0x68,0x65,0x6e,0x20,0x72,0x65,0x74,0x75,\n    0x72,0x6e,0x20,0x22,0x22,0x20,0x65,0x6c,0x73,0x65,0x20,0x72,0x65,0x74,0x75,0x72,\n    0x6e,0x20,0x73,0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x65,0x6e,0x64,0x29,0x0a,0x20,0x20,0x20,0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,0x20,\n    0x20,0x70,0x61,0x74,0x68,0x20,0x3d,0x20,0x73,0x74,0x72,0x69,0x6e,0x67,0x2e,0x67,\n    0x73,0x75,0x62,0x28,0x72,0x65,0x64,0x75,0x63,0x65,0x64,0x2c,0x20,0x22,0x28,0x5b,\n    0x5e,0x2f,0x5d,0x2a,0x2f,0x25,0x2e,0x25,0x2e,0x29,0x24,0x22,0x2c,0x20,0x66,0x75,\n    0x6e,0x63,0x74,0x69,0x6f,0x6e,0x20,0x28,0x73,0x29,0x0a,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x69,0x66,0x20,0x73,0x20,0x7e,0x3d,0x20,0x22,0x2e,0x2e,0x2f,0x2e,\n    0x2e,0x22,0x20,0x74,0x68,0x65,0x6e,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x22,\n    0x22,0x20,0x65,0x6c,0x73,0x65,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x73,0x20,\n    0x65,0x6e,0x64,0x0a,0x20,0x20,0x20,0x20,0x65,0x6e,0x64,0x29,0x0a,0x20,0x20,0x20,\n    0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x70,0x61,0x74,0x68,0x0a,0x65,0x6e,0x64,\n    0x0a,0x0a,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x0a,\n    0x2d,0x2d,0x20,0x50,0x61,0x72,0x73,0x65,0x73,0x20,0x61,0x20,0x75,0x72,0x6c,0x20,\n    0x61,0x6e,0x64,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x73,0x20,0x61,0x20,0x74,0x61,\n    0x62,0x6c,0x65,0x20,0x77,0x69,0x74,0x68,0x20,0x61,0x6c,0x6c,0x20,0x69,0x74,0x73,\n    0x20,0x70,0x61,0x72,0x74,0x73,0x20,0x61,0x63,0x63,0x6f,0x72,0x64,0x69,0x6e,0x67,\n    0x20,0x74,0x6f,0x20,0x52,0x46,0x43,0x20,0x32,0x33,0x39,0x36,0x0a,0x2d,0x2d,0x20,\n    0x54,0x68,0x65,0x20,0x66,0x6f,0x6c,0x6c,0x6f,0x77,0x69,0x6e,0x67,0x20,0x67,0x72,\n    0x61,0x6d,0x6d,0x61,0x72,0x20,0x64,0x65,0x73,0x63,0x72,0x69,0x62,0x65,0x73,0x20,\n    0x74,0x68,0x65,0x20,0x6e,0x61,0x6d,0x65,0x73,0x20,0x67,0x69,0x76,0x65,0x6e,0x20,\n    0x74,0x6f,0x20,0x74,0x68,0x65,0x20,0x55,0x52,0x4c,0x20,0x70,0x61,0x72,0x74,0x73,\n    0x0a,0x2d,0x2d,0x20,0x3c,0x75,0x72,0x6c,0x3e,0x20,0x3a,0x3a,0x3d,0x20,0x3c,0x73,\n    0x63,0x68,0x65,0x6d,0x65,0x3e,0x3a,0x2f,0x2f,0x3c,0x61,0x75,0x74,0x68,0x6f,0x72,\n    0x69,0x74,0x79,0x3e,0x2f,0x3c,0x70,0x61,0x74,0x68,0x3e,0x3b,0x3c,0x70,0x61,0x72,\n    0x61,0x6d,0x73,0x3e,0x3f,0x3c,0x71,0x75,0x65,0x72,0x79,0x3e,0x23,0x3c,0x66,0x72,\n    0x61,0x67,0x6d,0x65,0x6e,0x74,0x3e,0x0a,0x2d,0x2d,0x20,0x3c,0x61,0x75,0x74,0x68,\n    0x6f,0x72,0x69,0x74,0x79,0x3e,0x20,0x3a,0x3a,0x3d,0x20,0x3c,0x75,0x73,0x65,0x72,\n    0x69,0x6e,0x66,0x6f,0x3e,0x40,0x3c,0x68,0x6f,0x73,0x74,0x3e,0x3a,0x3c,0x70,0x6f,\n    0x72,0x74,0x3e,0x0a,0x2d,0x2d,0x20,0x3c,0x75,0x73,0x65,0x72,0x69,0x6e,0x66,0x6f,\n    0x3e,0x20,0x3a,0x3a,0x3d,0x20,0x3c,0x75,0x73,0x65,0x72,0x3e,0x5b,0x3a,0x3c,0x70,\n    0x61,0x73,0x73,0x77,0x6f,0x72,0x64,0x3e,0x5d,0x0a,0x2d,0x2d,0x20,0x3c,0x70,0x61,\n    0x74,0x68,0x3e,0x20,0x3a,0x3a,0x20,0x3d,0x20,0x7b,0x3c,0x73,0x65,0x67,0x6d,0x65,\n    0x6e,0x74,0x3e,0x2f,0x7d,0x3c,0x73,0x65,0x67,0x6d,0x65,0x6e,0x74,0x3e,0x0a,0x2d,\n    0x2d,0x20,0x49,0x6e,0x70,0x75,0x74,0x0a,0x2d,0x2d,0x20,0x20,0x20,0x75,0x72,0x6c,\n    0x3a,0x20,0x75,0x6e,0x69,0x66,0x6f,0x72,0x6d,0x20,0x72,0x65,0x73,0x6f,0x75,0x72,\n    0x63,0x65,0x20,0x6c,0x6f,0x63,0x61,0x74,0x6f,0x72,0x20,0x6f,0x66,0x20,0x72,0x65,\n    0x71,0x75,0x65,0x73,0x74,0x0a,0x2d,0x2d,0x20,0x20,0x20,0x64,0x65,0x66,0x61,0x75,\n    0x6c,0x74,0x3a,0x20,0x74,0x61,0x62,0x6c,0x65,0x20,0x77,0x69,0x74,0x68,0x20,0x64,\n    0x65,0x66,0x61,0x75,0x6c,0x74,0x20,0x76,0x61,0x6c,0x75,0x65,0x73,0x20,0x66,0x6f,\n    0x72,0x20,0x65,0x61,0x63,0x68,0x20,0x66,0x69,0x65,0x6c,0x64,0x0a,0x2d,0x2d,0x20,\n    0x52,0x65,0x74,0x75,0x72,0x6e,0x73,0x0a,0x2d,0x2d,0x20,0x20,0x20,0x74,0x61,0x62,\n    0x6c,0x65,0x20,0x77,0x69,0x74,0x68,0x20,0x74,0x68,0x65,0x20,0x66,0x6f,0x6c,0x6c,\n    0x6f,0x77,0x69,0x6e,0x67,0x20,0x66,0x69,0x65,0x6c,0x64,0x73,0x2c,0x20,0x77,0x68,\n    0x65,0x72,0x65,0x20,0x52,0x46,0x43,0x20,0x6e,0x61,0x6d,0x69,0x6e,0x67,0x20,0x63,\n    0x6f,0x6e,0x76,0x65,0x6e,0x74,0x69,0x6f,0x6e,0x73,0x20,0x68,0x61,0x76,0x65,0x0a,\n    0x2d,0x2d,0x20,0x20,0x20,0x62,0x65,0x65,0x6e,0x20,0x70,0x72,0x65,0x73,0x65,0x72,\n    0x76,0x65,0x64,0x3a,0x0a,0x2d,0x2d,0x20,0x20,0x20,0x20,0x20,0x73,0x63,0x68,0x65,\n    0x6d,0x65,0x2c,0x20,0x61,0x75,0x74,0x68,0x6f,0x72,0x69,0x74,0x79,0x2c,0x20,0x75,\n    0x73,0x65,0x72,0x69,0x6e,0x66,0x6f,0x2c,0x20,0x75,0x73,0x65,0x72,0x2c,0x20,0x70,\n    0x61,0x73,0x73,0x77,0x6f,0x72,0x64,0x2c,0x20,0x68,0x6f,0x73,0x74,0x2c,0x20,0x70,\n    0x6f,0x72,0x74,0x2c,0x0a,0x2d,0x2d,0x20,0x20,0x20,0x20,0x20,0x70,0x61,0x74,0x68,\n    0x2c,0x20,0x70,0x61,0x72,0x61,0x6d,0x73,0x2c,0x20,0x71,0x75,0x65,0x72,0x79,0x2c,\n    0x20,0x66,0x72,0x61,0x67,0x6d,0x65,0x6e,0x74,0x0a,0x2d,0x2d,0x20,0x4f,0x62,0x73,\n    0x3a,0x0a,0x2d,0x2d,0x20,0x20,0x20,0x74,0x68,0x65,0x20,0x6c,0x65,0x61,0x64,0x69,\n    0x6e,0x67,0x20,0x27,0x2f,0x27,0x20,0x69,0x6e,0x20,0x7b,0x2f,0x3c,0x70,0x61,0x74,\n    0x68,0x3e,0x7d,0x20,0x69,0x73,0x20,0x63,0x6f,0x6e,0x73,0x69,0x64,0x65,0x72,0x65,\n    0x64,0x20,0x70,0x61,0x72,0x74,0x20,0x6f,0x66,0x20,0x3c,0x70,0x61,0x74,0x68,0x3e,\n    0x0a,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x0a,0x66,\n    0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x20,0x70,0x61,0x72,0x73,0x65,0x28,0x75,0x72,\n    0x6c,0x2c,0x20,0x64,0x65,0x66,0x61,0x75,0x6c,0x74,0x29,0x0a,0x20,0x20,0x20,0x20,\n    0x2d,0x2d,0x20,0x69,0x6e,0x69,0x74,0x69,0x61,0x6c,0x69,0x7a,0x65,0x20,0x64,0x65,\n    0x66,0x61,0x75,0x6c,0x74,0x20,0x70,0x61,0x72,0x61,0x6d,0x65,0x74,0x65,0x72,0x73,\n    0x0a,0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x70,0x61,0x72,0x73,0x65,\n    0x64,0x20,0x3d,0x20,0x7b,0x7d,0x0a,0x20,0x20,0x20,0x20,0x66,0x6f,0x72,0x20,0x69,\n    0x2c,0x76,0x20,0x69,0x6e,0x20,0x62,0x61,0x73,0x65,0x2e,0x70,0x61,0x69,0x72,0x73,\n    0x28,0x64,0x65,0x66,0x61,0x75,0x6c,0x74,0x20,0x6f,0x72,0x20,0x70,0x61,0x72,0x73,\n    0x65,0x64,0x29,0x20,0x64,0x6f,0x20,0x70,0x61,0x72,0x73,0x65,0x64,0x5b,0x69,0x5d,\n    0x20,0x3d,0x20,0x76,0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,0x20,0x20,0x2d,0x2d,0x20,\n    0x65,0x6d,0x70,0x74,0x79,0x20,0x75,0x72,0x6c,0x20,0x69,0x73,0x20,0x70,0x61,0x72,\n    0x73,0x65,0x64,0x20,0x74,0x6f,0x20,0x6e,0x69,0x6c,0x0a,0x20,0x20,0x20,0x20,0x69,\n    0x66,0x20,0x6e,0x6f,0x74,0x20,0x75,0x72,0x6c,0x20,0x6f,0x72,0x20,0x75,0x72,0x6c,\n    0x20,0x3d,0x3d,0x20,0x22,0x22,0x20,0x74,0x68,0x65,0x6e,0x20,0x72,0x65,0x74,0x75,\n    0x72,0x6e,0x20,0x6e,0x69,0x6c,0x2c,0x20,0x22,0x69,0x6e,0x76,0x61,0x6c,0x69,0x64,\n    0x20,0x75,0x72,0x6c,0x22,0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,0x20,0x20,0x2d,0x2d,\n    0x20,0x72,0x65,0x6d,0x6f,0x76,0x65,0x20,0x77,0x68,0x69,0x74,0x65,0x73,0x70,0x61,\n    0x63,0x65,0x0a,0x20,0x20,0x20,0x20,0x2d,0x2d,0x20,0x75,0x72,0x6c,0x20,0x3d,0x20,\n    0x73,0x74,0x72,0x69,0x6e,0x67,0x2e,0x67,0x73,0x75,0x62,0x28,0x75,0x72,0x6c,0x2c,\n    0x20,0x22,0x25,0x73,0x22,0x2c,0x20,0x22,0x22,0x29,0x0a,0x20,0x20,0x20,0x20,0x2d,\n    0x2d,0x20,0x67,0x65,0x74,0x20,0x66,0x72,0x61,0x67,0x6d,0x65,0x6e,0x74,0x0a,0x20,\n    0x20,0x20,0x20,0x75,0x72,0x6c,0x20,0x3d,0x20,0x73,0x74,0x72,0x69,0x6e,0x67,0x2e,\n    0x67,0x73,0x75,0x62,0x28,0x75,0x72,0x6c,0x2c,0x20,0x22,0x23,0x28,0x2e,0x2a,0x29,\n    0x24,0x22,0x2c,0x20,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x28,0x66,0x29,0x0a,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x70,0x61,0x72,0x73,0x65,0x64,0x2e,0x66,\n    0x72,0x61,0x67,0x6d,0x65,0x6e,0x74,0x20,0x3d,0x20,0x66,0x0a,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x22,0x22,0x0a,0x20,0x20,\n    0x20,0x20,0x65,0x6e,0x64,0x29,0x0a,0x20,0x20,0x20,0x20,0x2d,0x2d,0x20,0x67,0x65,\n    0x74,0x20,0x73,0x63,0x68,0x65,0x6d,0x65,0x0a,0x20,0x20,0x20,0x20,0x75,0x72,0x6c,\n    0x20,0x3d,0x20,0x73,0x74,0x72,0x69,0x6e,0x67,0x2e,0x67,0x73,0x75,0x62,0x28,0x75,\n    0x72,0x6c,0x2c,0x20,0x22,0x5e,0x28,0x5b,0x25,0x77,0x5d,0x5b,0x25,0x77,0x25,0x2b,\n    0x25,0x2d,0x25,0x2e,0x5d,0x2a,0x29,0x25,0x3a,0x22,0x2c,0x0a,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x28,0x73,0x29,0x20,\n    0x70,0x61,0x72,0x73,0x65,0x64,0x2e,0x73,0x63,0x68,0x65,0x6d,0x65,0x20,0x3d,0x20,\n    0x73,0x3b,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x22,0x22,0x20,0x65,0x6e,0x64,\n    0x29,0x0a,0x20,0x20,0x20,0x20,0x2d,0x2d,0x20,0x67,0x65,0x74,0x20,0x61,0x75,0x74,\n    0x68,0x6f,0x72,0x69,0x74,0x79,0x0a,0x20,0x20,0x20,0x20,0x75,0x72,0x6c,0x20,0x3d,\n    0x20,0x73,0x74,0x72,0x69,0x6e,0x67,0x2e,0x67,0x73,0x75,0x62,0x28,0x75,0x72,0x6c,\n    0x2c,0x20,0x22,0x5e,0x2f,0x2f,0x28,0x5b,0x5e,0x2f,0x5d,0x2a,0x29,0x22,0x2c,0x20,\n    0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x28,0x6e,0x29,0x0a,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x70,0x61,0x72,0x73,0x65,0x64,0x2e,0x61,0x75,0x74,0x68,0x6f,\n    0x72,0x69,0x74,0x79,0x20,0x3d,0x20,0x6e,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x22,0x22,0x0a,0x20,0x20,0x20,0x20,0x65,\n    0x6e,0x64,0x29,0x0a,0x20,0x20,0x20,0x20,0x2d,0x2d,0x20,0x67,0x65,0x74,0x20,0x71,\n    0x75,0x65,0x72,0x79,0x20,0x73,0x74,0x72,0x69,0x6e,0x67,0x69,0x6e,0x67,0x0a,0x20,\n    0x20,0x20,0x20,0x75,0x72,0x6c,0x20,0x3d,0x20,0x73,0x74,0x72,0x69,0x6e,0x67,0x2e,\n    0x67,0x73,0x75,0x62,0x28,0x75,0x72,0x6c,0x2c,0x20,0x22,0x25,0x3f,0x28,0x2e,0x2a,\n    0x29,0x22,0x2c,0x20,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x28,0x71,0x29,0x0a,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x70,0x61,0x72,0x73,0x65,0x64,0x2e,0x71,\n    0x75,0x65,0x72,0x79,0x20,0x3d,0x20,0x71,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x22,0x22,0x0a,0x20,0x20,0x20,0x20,0x65,\n    0x6e,0x64,0x29,0x0a,0x20,0x20,0x20,0x20,0x2d,0x2d,0x20,0x67,0x65,0x74,0x20,0x70,\n    0x61,0x72,0x61,0x6d,0x73,0x0a,0x20,0x20,0x20,0x20,0x75,0x72,0x6c,0x20,0x3d,0x20,\n    0x73,0x74,0x72,0x69,0x6e,0x67,0x2e,0x67,0x73,0x75,0x62,0x28,0x75,0x72,0x6c,0x2c,\n    0x20,0x22,0x25,0x3b,0x28,0x2e,0x2a,0x29,0x22,0x2c,0x20,0x66,0x75,0x6e,0x63,0x74,\n    0x69,0x6f,0x6e,0x28,0x70,0x29,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x70,\n    0x61,0x72,0x73,0x65,0x64,0x2e,0x70,0x61,0x72,0x61,0x6d,0x73,0x20,0x3d,0x20,0x70,\n    0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,\n    0x22,0x22,0x0a,0x20,0x20,0x20,0x20,0x65,0x6e,0x64,0x29,0x0a,0x20,0x20,0x20,0x20,\n    0x2d,0x2d,0x20,0x70,0x61,0x74,0x68,0x20,0x69,0x73,0x20,0x77,0x68,0x61,0x74,0x65,\n    0x76,0x65,0x72,0x20,0x77,0x61,0x73,0x20,0x6c,0x65,0x66,0x74,0x0a,0x20,0x20,0x20,\n    0x20,0x69,0x66,0x20,0x75,0x72,0x6c,0x20,0x7e,0x3d,0x20,0x22,0x22,0x20,0x74,0x68,\n    0x65,0x6e,0x20,0x70,0x61,0x72,0x73,0x65,0x64,0x2e,0x70,0x61,0x74,0x68,0x20,0x3d,\n    0x20,0x75,0x72,0x6c,0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,\n    0x61,0x6c,0x20,0x61,0x75,0x74,0x68,0x6f,0x72,0x69,0x74,0x79,0x20,0x3d,0x20,0x70,\n    0x61,0x72,0x73,0x65,0x64,0x2e,0x61,0x75,0x74,0x68,0x6f,0x72,0x69,0x74,0x79,0x0a,\n    0x20,0x20,0x20,0x20,0x69,0x66,0x20,0x6e,0x6f,0x74,0x20,0x61,0x75,0x74,0x68,0x6f,\n    0x72,0x69,0x74,0x79,0x20,0x74,0x68,0x65,0x6e,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,\n    0x20,0x70,0x61,0x72,0x73,0x65,0x64,0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,0x20,0x20,\n    0x61,0x75,0x74,0x68,0x6f,0x72,0x69,0x74,0x79,0x20,0x3d,0x20,0x73,0x74,0x72,0x69,\n    0x6e,0x67,0x2e,0x67,0x73,0x75,0x62,0x28,0x61,0x75,0x74,0x68,0x6f,0x72,0x69,0x74,\n    0x79,0x2c,0x22,0x5e,0x28,0x5b,0x5e,0x40,0x5d,0x2a,0x29,0x40,0x22,0x2c,0x0a,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x28,\n    0x75,0x29,0x20,0x70,0x61,0x72,0x73,0x65,0x64,0x2e,0x75,0x73,0x65,0x72,0x69,0x6e,\n    0x66,0x6f,0x20,0x3d,0x20,0x75,0x3b,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x22,\n    0x22,0x20,0x65,0x6e,0x64,0x29,0x0a,0x20,0x20,0x20,0x20,0x61,0x75,0x74,0x68,0x6f,\n    0x72,0x69,0x74,0x79,0x20,0x3d,0x20,0x73,0x74,0x72,0x69,0x6e,0x67,0x2e,0x67,0x73,\n    0x75,0x62,0x28,0x61,0x75,0x74,0x68,0x6f,0x72,0x69,0x74,0x79,0x2c,0x20,0x22,0x3a,\n    0x28,0x5b,0x5e,0x3a,0x5d,0x2a,0x29,0x24,0x22,0x2c,0x0a,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x28,0x70,0x29,0x20,0x70,\n    0x61,0x72,0x73,0x65,0x64,0x2e,0x70,0x6f,0x72,0x74,0x20,0x3d,0x20,0x70,0x3b,0x20,\n    0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x22,0x22,0x20,0x65,0x6e,0x64,0x29,0x0a,0x20,\n    0x20,0x20,0x20,0x69,0x66,0x20,0x61,0x75,0x74,0x68,0x6f,0x72,0x69,0x74,0x79,0x20,\n    0x7e,0x3d,0x20,0x22,0x22,0x20,0x74,0x68,0x65,0x6e,0x20,0x70,0x61,0x72,0x73,0x65,\n    0x64,0x2e,0x68,0x6f,0x73,0x74,0x20,0x3d,0x20,0x61,0x75,0x74,0x68,0x6f,0x72,0x69,\n    0x74,0x79,0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,\n    0x20,0x75,0x73,0x65,0x72,0x69,0x6e,0x66,0x6f,0x20,0x3d,0x20,0x70,0x61,0x72,0x73,\n    0x65,0x64,0x2e,0x75,0x73,0x65,0x72,0x69,0x6e,0x66,0x6f,0x0a,0x20,0x20,0x20,0x20,\n    0x69,0x66,0x20,0x6e,0x6f,0x74,0x20,0x75,0x73,0x65,0x72,0x69,0x6e,0x66,0x6f,0x20,\n    0x74,0x68,0x65,0x6e,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x70,0x61,0x72,0x73,\n    0x65,0x64,0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,0x20,0x20,0x75,0x73,0x65,0x72,0x69,\n    0x6e,0x66,0x6f,0x20,0x3d,0x20,0x73,0x74,0x72,0x69,0x6e,0x67,0x2e,0x67,0x73,0x75,\n    0x62,0x28,0x75,0x73,0x65,0x72,0x69,0x6e,0x66,0x6f,0x2c,0x20,0x22,0x3a,0x28,0x5b,\n    0x5e,0x3a,0x5d,0x2a,0x29,0x24,0x22,0x2c,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x28,0x70,0x29,0x20,0x70,0x61,0x72,\n    0x73,0x65,0x64,0x2e,0x70,0x61,0x73,0x73,0x77,0x6f,0x72,0x64,0x20,0x3d,0x20,0x70,\n    0x3b,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x22,0x22,0x20,0x65,0x6e,0x64,0x29,\n    0x0a,0x20,0x20,0x20,0x20,0x70,0x61,0x72,0x73,0x65,0x64,0x2e,0x75,0x73,0x65,0x72,\n    0x20,0x3d,0x20,0x75,0x73,0x65,0x72,0x69,0x6e,0x66,0x6f,0x0a,0x20,0x20,0x20,0x20,\n    0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x70,0x61,0x72,0x73,0x65,0x64,0x0a,0x65,0x6e,\n    0x64,0x0a,0x0a,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x0a,0x2d,0x2d,0x20,0x52,0x65,0x62,0x75,0x69,0x6c,0x64,0x73,0x20,0x61,0x20,0x70,\n    0x61,0x72,0x73,0x65,0x64,0x20,0x55,0x52,0x4c,0x20,0x66,0x72,0x6f,0x6d,0x20,0x69,\n    0x74,0x73,0x20,0x63,0x6f,0x6d,0x70,0x6f,0x6e,0x65,0x6e,0x74,0x73,0x2e,0x0a,0x2d,\n    0x2d,0x20,0x43,0x6f,0x6d,0x70,0x6f,0x6e,0x65,0x6e,0x74,0x73,0x20,0x61,0x72,0x65,\n    0x20,0x70,0x72,0x6f,0x74,0x65,0x63,0x74,0x65,0x64,0x20,0x69,0x66,0x20,0x61,0x6e,\n    0x79,0x20,0x72,0x65,0x73,0x65,0x72,0x76,0x65,0x64,0x20,0x6f,0x72,0x20,0x75,0x6e,\n    0x61,0x6c,0x6c,0x6f,0x77,0x65,0x64,0x20,0x63,0x68,0x61,0x72,0x61,0x63,0x74,0x65,\n    0x72,0x73,0x20,0x61,0x72,0x65,0x20,0x66,0x6f,0x75,0x6e,0x64,0x0a,0x2d,0x2d,0x20,\n    0x49,0x6e,0x70,0x75,0x74,0x0a,0x2d,0x2d,0x20,0x20,0x20,0x70,0x61,0x72,0x73,0x65,\n    0x64,0x3a,0x20,0x70,0x61,0x72,0x73,0x65,0x64,0x20,0x55,0x52,0x4c,0x2c,0x20,0x61,\n    0x73,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x65,0x64,0x20,0x62,0x79,0x20,0x70,0x61,\n    0x72,0x73,0x65,0x0a,0x2d,0x2d,0x20,0x52,0x65,0x74,0x75,0x72,0x6e,0x73,0x0a,0x2d,\n    0x2d,0x20,0x20,0x20,0x61,0x20,0x73,0x74,0x72,0x69,0x6e,0x67,0x69,0x6e,0x67,0x20,\n    0x77,0x69,0x74,0x68,0x20,0x74,0x68,0x65,0x20,0x63,0x6f,0x72,0x72,0x65,0x73,0x70,\n    0x6f,0x6e,0x64,0x69,0x6e,0x67,0x20,0x55,0x52,0x4c,0x0a,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x0a,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,\n    0x6e,0x20,0x62,0x75,0x69,0x6c,0x64,0x28,0x70,0x61,0x72,0x73,0x65,0x64,0x29,0x0a,\n    0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x70,0x70,0x61,0x74,0x68,0x20,\n    0x3d,0x20,0x70,0x61,0x72,0x73,0x65,0x5f,0x70,0x61,0x74,0x68,0x28,0x70,0x61,0x72,\n    0x73,0x65,0x64,0x2e,0x70,0x61,0x74,0x68,0x20,0x6f,0x72,0x20,0x22,0x22,0x29,0x0a,\n    0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x75,0x72,0x6c,0x20,0x3d,0x20,\n    0x62,0x75,0x69,0x6c,0x64,0x5f,0x70,0x61,0x74,0x68,0x28,0x70,0x70,0x61,0x74,0x68,\n    0x29,0x0a,0x20,0x20,0x20,0x20,0x69,0x66,0x20,0x70,0x61,0x72,0x73,0x65,0x64,0x2e,\n    0x70,0x61,0x72,0x61,0x6d,0x73,0x20,0x74,0x68,0x65,0x6e,0x20,0x75,0x72,0x6c,0x20,\n    0x3d,0x20,0x75,0x72,0x6c,0x20,0x2e,0x2e,0x20,0x22,0x3b,0x22,0x20,0x2e,0x2e,0x20,\n    0x70,0x61,0x72,0x73,0x65,0x64,0x2e,0x70,0x61,0x72,0x61,0x6d,0x73,0x20,0x65,0x6e,\n    0x64,0x0a,0x20,0x20,0x20,0x20,0x69,0x66,0x20,0x70,0x61,0x72,0x73,0x65,0x64,0x2e,\n    0x71,0x75,0x65,0x72,0x79,0x20,0x74,0x68,0x65,0x6e,0x20,0x75,0x72,0x6c,0x20,0x3d,\n    0x20,0x75,0x72,0x6c,0x20,0x2e,0x2e,0x20,0x22,0x3f,0x22,0x20,0x2e,0x2e,0x20,0x70,\n    0x61,0x72,0x73,0x65,0x64,0x2e,0x71,0x75,0x65,0x72,0x79,0x20,0x65,0x6e,0x64,0x0a,\n    0x09,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x61,0x75,0x74,0x68,0x6f,0x72,0x69,0x74,0x79,\n    0x20,0x3d,0x20,0x70,0x61,0x72,0x73,0x65,0x64,0x2e,0x61,0x75,0x74,0x68,0x6f,0x72,\n    0x69,0x74,0x79,0x0a,0x09,0x69,0x66,0x20,0x70,0x61,0x72,0x73,0x65,0x64,0x2e,0x68,\n    0x6f,0x73,0x74,0x20,0x74,0x68,0x65,0x6e,0x0a,0x09,0x09,0x61,0x75,0x74,0x68,0x6f,\n    0x72,0x69,0x74,0x79,0x20,0x3d,0x20,0x70,0x61,0x72,0x73,0x65,0x64,0x2e,0x68,0x6f,\n    0x73,0x74,0x0a,0x09,0x09,0x69,0x66,0x20,0x70,0x61,0x72,0x73,0x65,0x64,0x2e,0x70,\n    0x6f,0x72,0x74,0x20,0x74,0x68,0x65,0x6e,0x20,0x61,0x75,0x74,0x68,0x6f,0x72,0x69,\n    0x74,0x79,0x20,0x3d,0x20,0x61,0x75,0x74,0x68,0x6f,0x72,0x69,0x74,0x79,0x20,0x2e,\n    0x2e,0x20,0x22,0x3a,0x22,0x20,0x2e,0x2e,0x20,0x70,0x61,0x72,0x73,0x65,0x64,0x2e,\n    0x70,0x6f,0x72,0x74,0x20,0x65,0x6e,0x64,0x0a,0x09,0x09,0x6c,0x6f,0x63,0x61,0x6c,\n    0x20,0x75,0x73,0x65,0x72,0x69,0x6e,0x66,0x6f,0x20,0x3d,0x20,0x70,0x61,0x72,0x73,\n    0x65,0x64,0x2e,0x75,0x73,0x65,0x72,0x69,0x6e,0x66,0x6f,0x0a,0x09,0x09,0x69,0x66,\n    0x20,0x70,0x61,0x72,0x73,0x65,0x64,0x2e,0x75,0x73,0x65,0x72,0x20,0x74,0x68,0x65,\n    0x6e,0x0a,0x09,0x09,0x09,0x75,0x73,0x65,0x72,0x69,0x6e,0x66,0x6f,0x20,0x3d,0x20,\n    0x70,0x61,0x72,0x73,0x65,0x64,0x2e,0x75,0x73,0x65,0x72,0x0a,0x09,0x09,0x09,0x69,\n    0x66,0x20,0x70,0x61,0x72,0x73,0x65,0x64,0x2e,0x70,0x61,0x73,0x73,0x77,0x6f,0x72,\n    0x64,0x20,0x74,0x68,0x65,0x6e,0x0a,0x09,0x09,0x09,0x09,0x75,0x73,0x65,0x72,0x69,\n    0x6e,0x66,0x6f,0x20,0x3d,0x20,0x75,0x73,0x65,0x72,0x69,0x6e,0x66,0x6f,0x20,0x2e,\n    0x2e,0x20,0x22,0x3a,0x22,0x20,0x2e,0x2e,0x20,0x70,0x61,0x72,0x73,0x65,0x64,0x2e,\n    0x70,0x61,0x73,0x73,0x77,0x6f,0x72,0x64,0x0a,0x09,0x09,0x09,0x65,0x6e,0x64,0x0a,\n    0x09,0x09,0x65,0x6e,0x64,0x0a,0x09,0x09,0x69,0x66,0x20,0x75,0x73,0x65,0x72,0x69,\n    0x6e,0x66,0x6f,0x20,0x74,0x68,0x65,0x6e,0x20,0x61,0x75,0x74,0x68,0x6f,0x72,0x69,\n    0x74,0x79,0x20,0x3d,0x20,0x75,0x73,0x65,0x72,0x69,0x6e,0x66,0x6f,0x20,0x2e,0x2e,\n    0x20,0x22,0x40,0x22,0x20,0x2e,0x2e,0x20,0x61,0x75,0x74,0x68,0x6f,0x72,0x69,0x74,\n    0x79,0x20,0x65,0x6e,0x64,0x0a,0x09,0x65,0x6e,0x64,0x0a,0x20,0x20,0x20,0x20,0x69,\n    0x66,0x20,0x61,0x75,0x74,0x68,0x6f,0x72,0x69,0x74,0x79,0x20,0x74,0x68,0x65,0x6e,\n    0x20,0x75,0x72,0x6c,0x20,0x3d,0x20,0x22,0x2f,0x2f,0x22,0x20,0x2e,0x2e,0x20,0x61,\n    0x75,0x74,0x68,0x6f,0x72,0x69,0x74,0x79,0x20,0x2e,0x2e,0x20,0x75,0x72,0x6c,0x20,\n    0x65,0x6e,0x64,0x0a,0x20,0x20,0x20,0x20,0x69,0x66,0x20,0x70,0x61,0x72,0x73,0x65,\n    0x64,0x2e,0x73,0x63,0x68,0x65,0x6d,0x65,0x20,0x74,0x68,0x65,0x6e,0x20,0x75,0x72,\n    0x6c,0x20,0x3d,0x20,0x70,0x61,0x72,0x73,0x65,0x64,0x2e,0x73,0x63,0x68,0x65,0x6d,\n    0x65,0x20,0x2e,0x2e,0x20,0x22,0x3a,0x22,0x20,0x2e,0x2e,0x20,0x75,0x72,0x6c,0x20,\n    0x65,0x6e,0x64,0x0a,0x20,0x20,0x20,0x20,0x69,0x66,0x20,0x70,0x61,0x72,0x73,0x65,\n    0x64,0x2e,0x66,0x72,0x61,0x67,0x6d,0x65,0x6e,0x74,0x20,0x74,0x68,0x65,0x6e,0x20,\n    0x75,0x72,0x6c,0x20,0x3d,0x20,0x75,0x72,0x6c,0x20,0x2e,0x2e,0x20,0x22,0x23,0x22,\n    0x20,0x2e,0x2e,0x20,0x70,0x61,0x72,0x73,0x65,0x64,0x2e,0x66,0x72,0x61,0x67,0x6d,\n    0x65,0x6e,0x74,0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,0x20,0x20,0x2d,0x2d,0x20,0x75,\n    0x72,0x6c,0x20,0x3d,0x20,0x73,0x74,0x72,0x69,0x6e,0x67,0x2e,0x67,0x73,0x75,0x62,\n    0x28,0x75,0x72,0x6c,0x2c,0x20,0x22,0x25,0x73,0x22,0x2c,0x20,0x22,0x22,0x29,0x0a,\n    0x20,0x20,0x20,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x75,0x72,0x6c,0x0a,0x65,\n    0x6e,0x64,0x0a,0x0a,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x0a,0x2d,0x2d,0x20,0x42,0x75,0x69,0x6c,0x64,0x73,0x20,0x61,0x20,0x61,0x62,\n    0x73,0x6f,0x6c,0x75,0x74,0x65,0x20,0x55,0x52,0x4c,0x20,0x66,0x72,0x6f,0x6d,0x20,\n    0x61,0x20,0x62,0x61,0x73,0x65,0x20,0x61,0x6e,0x64,0x20,0x61,0x20,0x72,0x65,0x6c,\n    0x61,0x74,0x69,0x76,0x65,0x20,0x55,0x52,0x4c,0x20,0x61,0x63,0x63,0x6f,0x72,0x64,\n    0x69,0x6e,0x67,0x20,0x74,0x6f,0x20,0x52,0x46,0x43,0x20,0x32,0x33,0x39,0x36,0x0a,\n    0x2d,0x2d,0x20,0x49,0x6e,0x70,0x75,0x74,0x0a,0x2d,0x2d,0x20,0x20,0x20,0x62,0x61,\n    0x73,0x65,0x5f,0x75,0x72,0x6c,0x0a,0x2d,0x2d,0x20,0x20,0x20,0x72,0x65,0x6c,0x61,\n    0x74,0x69,0x76,0x65,0x5f,0x75,0x72,0x6c,0x0a,0x2d,0x2d,0x20,0x52,0x65,0x74,0x75,\n    0x72,0x6e,0x73,0x0a,0x2d,0x2d,0x20,0x20,0x20,0x63,0x6f,0x72,0x72,0x65,0x73,0x70,\n    0x6f,0x6e,0x64,0x69,0x6e,0x67,0x20,0x61,0x62,0x73,0x6f,0x6c,0x75,0x74,0x65,0x20,\n    0x75,0x72,0x6c,0x0a,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x0a,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x20,0x61,0x62,0x73,0x6f,0x6c,\n    0x75,0x74,0x65,0x28,0x62,0x61,0x73,0x65,0x5f,0x75,0x72,0x6c,0x2c,0x20,0x72,0x65,\n    0x6c,0x61,0x74,0x69,0x76,0x65,0x5f,0x75,0x72,0x6c,0x29,0x0a,0x20,0x20,0x20,0x20,\n    0x69,0x66,0x20,0x62,0x61,0x73,0x65,0x2e,0x74,0x79,0x70,0x65,0x28,0x62,0x61,0x73,\n    0x65,0x5f,0x75,0x72,0x6c,0x29,0x20,0x3d,0x3d,0x20,0x22,0x74,0x61,0x62,0x6c,0x65,\n    0x22,0x20,0x74,0x68,0x65,0x6e,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x62,\n    0x61,0x73,0x65,0x5f,0x70,0x61,0x72,0x73,0x65,0x64,0x20,0x3d,0x20,0x62,0x61,0x73,\n    0x65,0x5f,0x75,0x72,0x6c,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x62,0x61,\n    0x73,0x65,0x5f,0x75,0x72,0x6c,0x20,0x3d,0x20,0x62,0x75,0x69,0x6c,0x64,0x28,0x62,\n    0x61,0x73,0x65,0x5f,0x70,0x61,0x72,0x73,0x65,0x64,0x29,0x0a,0x20,0x20,0x20,0x20,\n    0x65,0x6c,0x73,0x65,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x62,0x61,0x73,\n    0x65,0x5f,0x70,0x61,0x72,0x73,0x65,0x64,0x20,0x3d,0x20,0x70,0x61,0x72,0x73,0x65,\n    0x28,0x62,0x61,0x73,0x65,0x5f,0x75,0x72,0x6c,0x29,0x0a,0x20,0x20,0x20,0x20,0x65,\n    0x6e,0x64,0x0a,0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x72,0x65,0x6c,\n    0x61,0x74,0x69,0x76,0x65,0x5f,0x70,0x61,0x72,0x73,0x65,0x64,0x20,0x3d,0x20,0x70,\n    0x61,0x72,0x73,0x65,0x28,0x72,0x65,0x6c,0x61,0x74,0x69,0x76,0x65,0x5f,0x75,0x72,\n    0x6c,0x29,0x0a,0x20,0x20,0x20,0x20,0x69,0x66,0x20,0x6e,0x6f,0x74,0x20,0x62,0x61,\n    0x73,0x65,0x5f,0x70,0x61,0x72,0x73,0x65,0x64,0x20,0x74,0x68,0x65,0x6e,0x20,0x72,\n    0x65,0x74,0x75,0x72,0x6e,0x20,0x72,0x65,0x6c,0x61,0x74,0x69,0x76,0x65,0x5f,0x75,\n    0x72,0x6c,0x0a,0x20,0x20,0x20,0x20,0x65,0x6c,0x73,0x65,0x69,0x66,0x20,0x6e,0x6f,\n    0x74,0x20,0x72,0x65,0x6c,0x61,0x74,0x69,0x76,0x65,0x5f,0x70,0x61,0x72,0x73,0x65,\n    0x64,0x20,0x74,0x68,0x65,0x6e,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x62,0x61,\n    0x73,0x65,0x5f,0x75,0x72,0x6c,0x0a,0x20,0x20,0x20,0x20,0x65,0x6c,0x73,0x65,0x69,\n    0x66,0x20,0x72,0x65,0x6c,0x61,0x74,0x69,0x76,0x65,0x5f,0x70,0x61,0x72,0x73,0x65,\n    0x64,0x2e,0x73,0x63,0x68,0x65,0x6d,0x65,0x20,0x74,0x68,0x65,0x6e,0x20,0x72,0x65,\n    0x74,0x75,0x72,0x6e,0x20,0x72,0x65,0x6c,0x61,0x74,0x69,0x76,0x65,0x5f,0x75,0x72,\n    0x6c,0x0a,0x20,0x20,0x20,0x20,0x65,0x6c,0x73,0x65,0x0a,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x72,0x65,0x6c,0x61,0x74,0x69,0x76,0x65,0x5f,0x70,0x61,0x72,0x73,\n    0x65,0x64,0x2e,0x73,0x63,0x68,0x65,0x6d,0x65,0x20,0x3d,0x20,0x62,0x61,0x73,0x65,\n    0x5f,0x70,0x61,0x72,0x73,0x65,0x64,0x2e,0x73,0x63,0x68,0x65,0x6d,0x65,0x0a,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x69,0x66,0x20,0x6e,0x6f,0x74,0x20,0x72,0x65,\n    0x6c,0x61,0x74,0x69,0x76,0x65,0x5f,0x70,0x61,0x72,0x73,0x65,0x64,0x2e,0x61,0x75,\n    0x74,0x68,0x6f,0x72,0x69,0x74,0x79,0x20,0x74,0x68,0x65,0x6e,0x0a,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x72,0x65,0x6c,0x61,0x74,0x69,0x76,\n    0x65,0x5f,0x70,0x61,0x72,0x73,0x65,0x64,0x2e,0x61,0x75,0x74,0x68,0x6f,0x72,0x69,\n    0x74,0x79,0x20,0x3d,0x20,0x62,0x61,0x73,0x65,0x5f,0x70,0x61,0x72,0x73,0x65,0x64,\n    0x2e,0x61,0x75,0x74,0x68,0x6f,0x72,0x69,0x74,0x79,0x0a,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x69,0x66,0x20,0x6e,0x6f,0x74,0x20,0x72,0x65,\n    0x6c,0x61,0x74,0x69,0x76,0x65,0x5f,0x70,0x61,0x72,0x73,0x65,0x64,0x2e,0x70,0x61,\n    0x74,0x68,0x20,0x74,0x68,0x65,0x6e,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x72,0x65,0x6c,0x61,0x74,0x69,0x76,0x65,\n    0x5f,0x70,0x61,0x72,0x73,0x65,0x64,0x2e,0x70,0x61,0x74,0x68,0x20,0x3d,0x20,0x62,\n    0x61,0x73,0x65,0x5f,0x70,0x61,0x72,0x73,0x65,0x64,0x2e,0x70,0x61,0x74,0x68,0x0a,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x69,0x66,0x20,0x6e,0x6f,0x74,0x20,0x72,0x65,0x6c,0x61,0x74,0x69,0x76,0x65,0x5f,\n    0x70,0x61,0x72,0x73,0x65,0x64,0x2e,0x70,0x61,0x72,0x61,0x6d,0x73,0x20,0x74,0x68,\n    0x65,0x6e,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x72,0x65,0x6c,0x61,0x74,0x69,0x76,0x65,0x5f,\n    0x70,0x61,0x72,0x73,0x65,0x64,0x2e,0x70,0x61,0x72,0x61,0x6d,0x73,0x20,0x3d,0x20,\n    0x62,0x61,0x73,0x65,0x5f,0x70,0x61,0x72,0x73,0x65,0x64,0x2e,0x70,0x61,0x72,0x61,\n    0x6d,0x73,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x69,0x66,0x20,0x6e,0x6f,0x74,0x20,0x72,0x65,\n    0x6c,0x61,0x74,0x69,0x76,0x65,0x5f,0x70,0x61,0x72,0x73,0x65,0x64,0x2e,0x71,0x75,\n    0x65,0x72,0x79,0x20,0x74,0x68,0x65,0x6e,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x72,0x65,0x6c,0x61,0x74,0x69,0x76,0x65,0x5f,0x70,0x61,0x72,0x73,0x65,0x64,\n    0x2e,0x71,0x75,0x65,0x72,0x79,0x20,0x3d,0x20,0x62,0x61,0x73,0x65,0x5f,0x70,0x61,\n    0x72,0x73,0x65,0x64,0x2e,0x71,0x75,0x65,0x72,0x79,0x0a,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x65,\n    0x6e,0x64,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x65,0x6c,0x73,0x65,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x72,0x65,0x6c,0x61,0x74,0x69,0x76,0x65,\n    0x5f,0x70,0x61,0x72,0x73,0x65,0x64,0x2e,0x70,0x61,0x74,0x68,0x20,0x3d,0x20,0x61,\n    0x62,0x73,0x6f,0x6c,0x75,0x74,0x65,0x5f,0x70,0x61,0x74,0x68,0x28,0x62,0x61,0x73,\n    0x65,0x5f,0x70,0x61,0x72,0x73,0x65,0x64,0x2e,0x70,0x61,0x74,0x68,0x20,0x6f,0x72,\n    0x20,0x22,0x22,0x2c,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x72,0x65,0x6c,0x61,0x74,0x69,0x76,\n    0x65,0x5f,0x70,0x61,0x72,0x73,0x65,0x64,0x2e,0x70,0x61,0x74,0x68,0x29,0x0a,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x65,0x6e,0x64,0x0a,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x62,0x75,0x69,0x6c,0x64,0x28,\n    0x72,0x65,0x6c,0x61,0x74,0x69,0x76,0x65,0x5f,0x70,0x61,0x72,0x73,0x65,0x64,0x29,\n    0x0a,0x20,0x20,0x20,0x20,0x65,0x6e,0x64,0x0a,0x65,0x6e,0x64,0x0a,0x0a,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x0a,0x2d,0x2d,0x20,0x42,\n    0x72,0x65,0x61,0x6b,0x73,0x20,0x61,0x20,0x70,0x61,0x74,0x68,0x20,0x69,0x6e,0x74,\n    0x6f,0x20,0x69,0x74,0x73,0x20,0x73,0x65,0x67,0x6d,0x65,0x6e,0x74,0x73,0x2c,0x20,\n    0x75,0x6e,0x65,0x73,0x63,0x61,0x70,0x69,0x6e,0x67,0x20,0x74,0x68,0x65,0x20,0x73,\n    0x65,0x67,0x6d,0x65,0x6e,0x74,0x73,0x0a,0x2d,0x2d,0x20,0x49,0x6e,0x70,0x75,0x74,\n    0x0a,0x2d,0x2d,0x20,0x20,0x20,0x70,0x61,0x74,0x68,0x0a,0x2d,0x2d,0x20,0x52,0x65,\n    0x74,0x75,0x72,0x6e,0x73,0x0a,0x2d,0x2d,0x20,0x20,0x20,0x73,0x65,0x67,0x6d,0x65,\n    0x6e,0x74,0x3a,0x20,0x61,0x20,0x74,0x61,0x62,0x6c,0x65,0x20,0x77,0x69,0x74,0x68,\n    0x20,0x6f,0x6e,0x65,0x20,0x65,0x6e,0x74,0x72,0x79,0x20,0x70,0x65,0x72,0x20,0x73,\n    0x65,0x67,0x6d,0x65,0x6e,0x74,0x0a,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x0a,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x20,0x70,0x61,\n    0x72,0x73,0x65,0x5f,0x70,0x61,0x74,0x68,0x28,0x70,0x61,0x74,0x68,0x29,0x0a,0x09,\n    0x6c,0x6f,0x63,0x61,0x6c,0x20,0x70,0x61,0x72,0x73,0x65,0x64,0x20,0x3d,0x20,0x7b,\n    0x7d,0x0a,0x09,0x70,0x61,0x74,0x68,0x20,0x3d,0x20,0x70,0x61,0x74,0x68,0x20,0x6f,\n    0x72,0x20,0x22,0x22,0x0a,0x09,0x2d,0x2d,0x70,0x61,0x74,0x68,0x20,0x3d,0x20,0x73,\n    0x74,0x72,0x69,0x6e,0x67,0x2e,0x67,0x73,0x75,0x62,0x28,0x70,0x61,0x74,0x68,0x2c,\n    0x20,0x22,0x25,0x73,0x22,0x2c,0x20,0x22,0x22,0x29,0x0a,0x09,0x73,0x74,0x72,0x69,\n    0x6e,0x67,0x2e,0x67,0x73,0x75,0x62,0x28,0x70,0x61,0x74,0x68,0x2c,0x20,0x22,0x28,\n    0x5b,0x5e,0x2f,0x5d,0x2b,0x29,0x22,0x2c,0x20,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,\n    0x6e,0x20,0x28,0x73,0x29,0x20,0x74,0x61,0x62,0x6c,0x65,0x2e,0x69,0x6e,0x73,0x65,\n    0x72,0x74,0x28,0x70,0x61,0x72,0x73,0x65,0x64,0x2c,0x20,0x73,0x29,0x20,0x65,0x6e,\n    0x64,0x29,0x0a,0x09,0x66,0x6f,0x72,0x20,0x69,0x20,0x3d,0x20,0x31,0x2c,0x20,0x23,\n    0x70,0x61,0x72,0x73,0x65,0x64,0x20,0x64,0x6f,0x0a,0x09,0x09,0x70,0x61,0x72,0x73,\n    0x65,0x64,0x5b,0x69,0x5d,0x20,0x3d,0x20,0x75,0x6e,0x65,0x73,0x63,0x61,0x70,0x65,\n    0x28,0x70,0x61,0x72,0x73,0x65,0x64,0x5b,0x69,0x5d,0x29,0x0a,0x09,0x65,0x6e,0x64,\n    0x0a,0x09,0x69,0x66,0x20,0x73,0x74,0x72,0x69,0x6e,0x67,0x2e,0x73,0x75,0x62,0x28,\n    0x70,0x61,0x74,0x68,0x2c,0x20,0x31,0x2c,0x20,0x31,0x29,0x20,0x3d,0x3d,0x20,0x22,\n    0x2f,0x22,0x20,0x74,0x68,0x65,0x6e,0x20,0x70,0x61,0x72,0x73,0x65,0x64,0x2e,0x69,\n    0x73,0x5f,0x61,0x62,0x73,0x6f,0x6c,0x75,0x74,0x65,0x20,0x3d,0x20,0x31,0x20,0x65,\n    0x6e,0x64,0x0a,0x09,0x69,0x66,0x20,0x73,0x74,0x72,0x69,0x6e,0x67,0x2e,0x73,0x75,\n    0x62,0x28,0x70,0x61,0x74,0x68,0x2c,0x20,0x2d,0x31,0x2c,0x20,0x2d,0x31,0x29,0x20,\n    0x3d,0x3d,0x20,0x22,0x2f,0x22,0x20,0x74,0x68,0x65,0x6e,0x20,0x70,0x61,0x72,0x73,\n    0x65,0x64,0x2e,0x69,0x73,0x5f,0x64,0x69,0x72,0x65,0x63,0x74,0x6f,0x72,0x79,0x20,\n    0x3d,0x20,0x31,0x20,0x65,0x6e,0x64,0x0a,0x09,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,\n    0x70,0x61,0x72,0x73,0x65,0x64,0x0a,0x65,0x6e,0x64,0x0a,0x0a,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x0a,0x2d,0x2d,0x20,0x42,0x75,0x69,\n    0x6c,0x64,0x73,0x20,0x61,0x20,0x70,0x61,0x74,0x68,0x20,0x63,0x6f,0x6d,0x70,0x6f,\n    0x6e,0x65,0x6e,0x74,0x20,0x66,0x72,0x6f,0x6d,0x20,0x69,0x74,0x73,0x20,0x73,0x65,\n    0x67,0x6d,0x65,0x6e,0x74,0x73,0x2c,0x20,0x65,0x73,0x63,0x61,0x70,0x69,0x6e,0x67,\n    0x20,0x70,0x72,0x6f,0x74,0x65,0x63,0x74,0x65,0x64,0x20,0x63,0x68,0x61,0x72,0x61,\n    0x63,0x74,0x65,0x72,0x73,0x2e,0x0a,0x2d,0x2d,0x20,0x49,0x6e,0x70,0x75,0x74,0x0a,\n    0x2d,0x2d,0x20,0x20,0x20,0x70,0x61,0x72,0x73,0x65,0x64,0x3a,0x20,0x70,0x61,0x74,\n    0x68,0x20,0x73,0x65,0x67,0x6d,0x65,0x6e,0x74,0x73,0x0a,0x2d,0x2d,0x20,0x20,0x20,\n    0x75,0x6e,0x73,0x61,0x66,0x65,0x3a,0x20,0x69,0x66,0x20,0x74,0x72,0x75,0x65,0x2c,\n    0x20,0x73,0x65,0x67,0x6d,0x65,0x6e,0x74,0x73,0x20,0x61,0x72,0x65,0x20,0x6e,0x6f,\n    0x74,0x20,0x70,0x72,0x6f,0x74,0x65,0x63,0x74,0x65,0x64,0x20,0x62,0x65,0x66,0x6f,\n    0x72,0x65,0x20,0x70,0x61,0x74,0x68,0x20,0x69,0x73,0x20,0x62,0x75,0x69,0x6c,0x74,\n    0x0a,0x2d,0x2d,0x20,0x52,0x65,0x74,0x75,0x72,0x6e,0x73,0x0a,0x2d,0x2d,0x20,0x20,\n    0x20,0x70,0x61,0x74,0x68,0x3a,0x20,0x63,0x6f,0x72,0x72,0x65,0x73,0x70,0x6f,0x6e,\n    0x64,0x69,0x6e,0x67,0x20,0x70,0x61,0x74,0x68,0x20,0x73,0x74,0x72,0x69,0x6e,0x67,\n    0x69,0x6e,0x67,0x0a,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x0a,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x20,0x62,0x75,0x69,0x6c,0x64,\n    0x5f,0x70,0x61,0x74,0x68,0x28,0x70,0x61,0x72,0x73,0x65,0x64,0x2c,0x20,0x75,0x6e,\n    0x73,0x61,0x66,0x65,0x29,0x0a,0x09,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x70,0x61,0x74,\n    0x68,0x20,0x3d,0x20,0x22,0x22,0x0a,0x09,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x6e,0x20,\n    0x3d,0x20,0x23,0x70,0x61,0x72,0x73,0x65,0x64,0x0a,0x09,0x69,0x66,0x20,0x75,0x6e,\n    0x73,0x61,0x66,0x65,0x20,0x74,0x68,0x65,0x6e,0x0a,0x09,0x09,0x66,0x6f,0x72,0x20,\n    0x69,0x20,0x3d,0x20,0x31,0x2c,0x20,0x6e,0x2d,0x31,0x20,0x64,0x6f,0x0a,0x09,0x09,\n    0x09,0x70,0x61,0x74,0x68,0x20,0x3d,0x20,0x70,0x61,0x74,0x68,0x20,0x2e,0x2e,0x20,\n    0x70,0x61,0x72,0x73,0x65,0x64,0x5b,0x69,0x5d,0x0a,0x09,0x09,0x09,0x70,0x61,0x74,\n    0x68,0x20,0x3d,0x20,0x70,0x61,0x74,0x68,0x20,0x2e,0x2e,0x20,0x22,0x2f,0x22,0x0a,\n    0x09,0x09,0x65,0x6e,0x64,0x0a,0x09,0x09,0x69,0x66,0x20,0x6e,0x20,0x3e,0x20,0x30,\n    0x20,0x74,0x68,0x65,0x6e,0x0a,0x09,0x09,0x09,0x70,0x61,0x74,0x68,0x20,0x3d,0x20,\n    0x70,0x61,0x74,0x68,0x20,0x2e,0x2e,0x20,0x70,0x61,0x72,0x73,0x65,0x64,0x5b,0x6e,\n    0x5d,0x0a,0x09,0x09,0x09,0x69,0x66,0x20,0x70,0x61,0x72,0x73,0x65,0x64,0x2e,0x69,\n    0x73,0x5f,0x64,0x69,0x72,0x65,0x63,0x74,0x6f,0x72,0x79,0x20,0x74,0x68,0x65,0x6e,\n    0x20,0x70,0x61,0x74,0x68,0x20,0x3d,0x20,0x70,0x61,0x74,0x68,0x20,0x2e,0x2e,0x20,\n    0x22,0x2f,0x22,0x20,0x65,0x6e,0x64,0x0a,0x09,0x09,0x65,0x6e,0x64,0x0a,0x09,0x65,\n    0x6c,0x73,0x65,0x0a,0x09,0x09,0x66,0x6f,0x72,0x20,0x69,0x20,0x3d,0x20,0x31,0x2c,\n    0x20,0x6e,0x2d,0x31,0x20,0x64,0x6f,0x0a,0x09,0x09,0x09,0x70,0x61,0x74,0x68,0x20,\n    0x3d,0x20,0x70,0x61,0x74,0x68,0x20,0x2e,0x2e,0x20,0x70,0x72,0x6f,0x74,0x65,0x63,\n    0x74,0x5f,0x73,0x65,0x67,0x6d,0x65,0x6e,0x74,0x28,0x70,0x61,0x72,0x73,0x65,0x64,\n    0x5b,0x69,0x5d,0x29,0x0a,0x09,0x09,0x09,0x70,0x61,0x74,0x68,0x20,0x3d,0x20,0x70,\n    0x61,0x74,0x68,0x20,0x2e,0x2e,0x20,0x22,0x2f,0x22,0x0a,0x09,0x09,0x65,0x6e,0x64,\n    0x0a,0x09,0x09,0x69,0x66,0x20,0x6e,0x20,0x3e,0x20,0x30,0x20,0x74,0x68,0x65,0x6e,\n    0x0a,0x09,0x09,0x09,0x70,0x61,0x74,0x68,0x20,0x3d,0x20,0x70,0x61,0x74,0x68,0x20,\n    0x2e,0x2e,0x20,0x70,0x72,0x6f,0x74,0x65,0x63,0x74,0x5f,0x73,0x65,0x67,0x6d,0x65,\n    0x6e,0x74,0x28,0x70,0x61,0x72,0x73,0x65,0x64,0x5b,0x6e,0x5d,0x29,0x0a,0x09,0x09,\n    0x09,0x69,0x66,0x20,0x70,0x61,0x72,0x73,0x65,0x64,0x2e,0x69,0x73,0x5f,0x64,0x69,\n    0x72,0x65,0x63,0x74,0x6f,0x72,0x79,0x20,0x74,0x68,0x65,0x6e,0x20,0x70,0x61,0x74,\n    0x68,0x20,0x3d,0x20,0x70,0x61,0x74,0x68,0x20,0x2e,0x2e,0x20,0x22,0x2f,0x22,0x20,\n    0x65,0x6e,0x64,0x0a,0x09,0x09,0x65,0x6e,0x64,0x0a,0x09,0x65,0x6e,0x64,0x0a,0x09,\n    0x69,0x66,0x20,0x70,0x61,0x72,0x73,0x65,0x64,0x2e,0x69,0x73,0x5f,0x61,0x62,0x73,\n    0x6f,0x6c,0x75,0x74,0x65,0x20,0x74,0x68,0x65,0x6e,0x20,0x70,0x61,0x74,0x68,0x20,\n    0x3d,0x20,0x22,0x2f,0x22,0x20,0x2e,0x2e,0x20,0x70,0x61,0x74,0x68,0x20,0x65,0x6e,\n    0x64,0x0a,0x09,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x70,0x61,0x74,0x68,0x0a,0x65,\n    0x6e,0x64,0x0a,0x0a,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x5f,0x45,0x4e,0x56,0x0a,\n    0x0a,0x65,0x6e,0x64,0x0a,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x0a,0x2d,0x2d,0x20,0x45,0x6e,0x64,0x20,0x6f,0x66,0x20,\n    0x6d,0x6f,0x64,0x75,0x6c,0x65,0x64,0x65,0x62,0x75,0x67,0x67,0x65,0x72,0x2e,0x75,\n    0x72,0x6c,0x0a,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x0a,0x0a,0x0a,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x0a,0x2d,0x2d,0x20,0x20,0x4d,0x61,0x69,0x6e,0x20,\n    0x63,0x6f,0x6e,0x74,0x65,0x6e,0x74,0x0a,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x0a,0x0a,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x0a,0x2d,0x2d,0x20,0x43,0x6f,0x70,\n    0x79,0x72,0x69,0x67,0x68,0x74,0x20,0x28,0x63,0x29,0x20,0x32,0x30,0x31,0x31,0x2d,\n    0x32,0x30,0x31,0x32,0x20,0x53,0x69,0x65,0x72,0x72,0x61,0x20,0x57,0x69,0x72,0x65,\n    0x6c,0x65,0x73,0x73,0x20,0x61,0x6e,0x64,0x20,0x6f,0x74,0x68,0x65,0x72,0x73,0x2e,\n    0x0a,0x2d,0x2d,0x20,0x41,0x6c,0x6c,0x20,0x72,0x69,0x67,0x68,0x74,0x73,0x20,0x72,\n    0x65,0x73,0x65,0x72,0x76,0x65,0x64,0x2e,0x20,0x54,0x68,0x69,0x73,0x20,0x70,0x72,\n    0x6f,0x67,0x72,0x61,0x6d,0x20,0x61,0x6e,0x64,0x20,0x74,0x68,0x65,0x20,0x61,0x63,\n    0x63,0x6f,0x6d,0x70,0x61,0x6e,0x79,0x69,0x6e,0x67,0x20,0x6d,0x61,0x74,0x65,0x72,\n    0x69,0x61,0x6c,0x73,0x0a,0x2d,0x2d,0x20,0x61,0x72,0x65,0x20,0x6d,0x61,0x64,0x65,\n    0x20,0x61,0x76,0x61,0x69,0x6c,0x61,0x62,0x6c,0x65,0x20,0x75,0x6e,0x64,0x65,0x72,\n    0x20,0x74,0x68,0x65,0x20,0x74,0x65,0x72,0x6d,0x73,0x20,0x6f,0x66,0x20,0x74,0x68,\n    0x65,0x20,0x45,0x63,0x6c,0x69,0x70,0x73,0x65,0x20,0x50,0x75,0x62,0x6c,0x69,0x63,\n    0x20,0x4c,0x69,0x63,0x65,0x6e,0x73,0x65,0x20,0x76,0x31,0x2e,0x30,0x0a,0x2d,0x2d,\n    0x20,0x77,0x68,0x69,0x63,0x68,0x20,0x61,0x63,0x63,0x6f,0x6d,0x70,0x61,0x6e,0x69,\n    0x65,0x73,0x20,0x74,0x68,0x69,0x73,0x20,0x64,0x69,0x73,0x74,0x72,0x69,0x62,0x75,\n    0x74,0x69,0x6f,0x6e,0x2c,0x20,0x61,0x6e,0x64,0x20,0x69,0x73,0x20,0x61,0x76,0x61,\n    0x69,0x6c,0x61,0x62,0x6c,0x65,0x20,0x61,0x74,0x0a,0x2d,0x2d,0x20,0x68,0x74,0x74,\n    0x70,0x3a,0x2f,0x2f,0x77,0x77,0x77,0x2e,0x65,0x63,0x6c,0x69,0x70,0x73,0x65,0x2e,\n    0x6f,0x72,0x67,0x2f,0x6c,0x65,0x67,0x61,0x6c,0x2f,0x65,0x70,0x6c,0x2d,0x76,0x31,\n    0x30,0x2e,0x68,0x74,0x6d,0x6c,0x0a,0x2d,0x2d,0x0a,0x2d,0x2d,0x20,0x43,0x6f,0x6e,\n    0x74,0x72,0x69,0x62,0x75,0x74,0x6f,0x72,0x73,0x3a,0x0a,0x2d,0x2d,0x20,0x20,0x20,\n    0x20,0x20,0x53,0x69,0x65,0x72,0x72,0x61,0x20,0x57,0x69,0x72,0x65,0x6c,0x65,0x73,\n    0x73,0x20,0x2d,0x20,0x69,0x6e,0x69,0x74,0x69,0x61,0x6c,0x20,0x41,0x50,0x49,0x20,\n    0x61,0x6e,0x64,0x20,0x69,0x6d,0x70,0x6c,0x65,0x6d,0x65,0x6e,0x74,0x61,0x74,0x69,\n    0x6f,0x6e,0x0a,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x0a,0x0a,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x44,0x42,0x47,0x50,0x5f,0x43,\n    0x4c,0x49,0x45,0x4e,0x54,0x5f,0x56,0x45,0x52,0x53,0x49,0x4f,0x4e,0x20,0x3d,0x20,\n    0x22,0x31,0x2e,0x31,0x2e,0x30,0x22,0x0a,0x0a,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x64,\n    0x65,0x62,0x75,0x67,0x20,0x3d,0x20,0x72,0x65,0x71,0x75,0x69,0x72,0x65,0x20,0x22,\n    0x64,0x65,0x62,0x75,0x67,0x22,0x0a,0x0a,0x2d,0x2d,0x20,0x54,0x6f,0x20,0x61,0x76,\n    0x6f,0x69,0x64,0x20,0x63,0x79,0x63,0x6c,0x69,0x63,0x20,0x64,0x65,0x70,0x65,0x6e,\n    0x64,0x65,0x6e,0x63,0x79,0x2c,0x20,0x69,0x6e,0x74,0x65,0x72,0x6e,0x61,0x6c,0x20,\n    0x73,0x74,0x61,0x74,0x65,0x20,0x6f,0x66,0x20,0x74,0x68,0x65,0x20,0x64,0x65,0x62,\n    0x75,0x67,0x67,0x65,0x72,0x20,0x74,0x68,0x61,0x74,0x20,0x6d,0x75,0x73,0x74,0x20,\n    0x62,0x65,0x20,0x61,0x63,0x63,0x65,0x73,0x73,0x65,0x64,0x0a,0x2d,0x2d,0x20,0x65,\n    0x6c,0x73,0x65,0x77,0x68,0x65,0x72,0x65,0x20,0x28,0x69,0x6e,0x20,0x63,0x6f,0x6d,\n    0x6d,0x61,0x6e,0x64,0x73,0x20,0x6d,0x6f,0x73,0x74,0x20,0x6c,0x69,0x6b,0x65,0x6c,\n    0x79,0x29,0x20,0x77,0x69,0x6c,0x6c,0x20,0x62,0x65,0x20,0x73,0x74,0x6f,0x72,0x65,\n    0x64,0x20,0x69,0x6e,0x20,0x61,0x20,0x66,0x61,0x6b,0x65,0x20,0x6d,0x6f,0x64,0x75,\n    0x6c,0x65,0x20,0x22,0x64,0x65,0x62,0x75,0x67,0x67,0x65,0x72,0x2e,0x63,0x6f,0x72,\n    0x65,0x22,0x0a,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x63,0x6f,0x72,0x65,0x20,0x3d,0x20,\n    0x7b,0x20,0x7d,0x0a,0x70,0x61,0x63,0x6b,0x61,0x67,0x65,0x2e,0x6c,0x6f,0x61,0x64,\n    0x65,0x64,0x5b,0x22,0x64,0x65,0x62,0x75,0x67,0x67,0x65,0x72,0x2e,0x63,0x6f,0x72,\n    0x65,0x22,0x5d,0x20,0x3d,0x20,0x63,0x6f,0x72,0x65,0x0a,0x0a,0x6c,0x6f,0x63,0x61,\n    0x6c,0x20,0x75,0x74,0x69,0x6c,0x20,0x3d,0x20,0x72,0x65,0x71,0x75,0x69,0x72,0x65,\n    0x20,0x22,0x64,0x65,0x62,0x75,0x67,0x67,0x65,0x72,0x2e,0x75,0x74,0x69,0x6c,0x22,\n    0x0a,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x70,0x6c,0x61,0x74,0x66,0x6f,0x72,0x6d,0x20,\n    0x3d,0x20,0x72,0x65,0x71,0x75,0x69,0x72,0x65,0x20,0x22,0x64,0x65,0x62,0x75,0x67,\n    0x67,0x65,0x72,0x2e,0x70,0x6c,0x61,0x74,0x66,0x6f,0x72,0x6d,0x22,0x0a,0x6c,0x6f,\n    0x63,0x61,0x6c,0x20,0x64,0x62,0x67,0x70,0x20,0x3d,0x20,0x72,0x65,0x71,0x75,0x69,\n    0x72,0x65,0x20,0x22,0x64,0x65,0x62,0x75,0x67,0x67,0x65,0x72,0x2e,0x64,0x62,0x67,\n    0x70,0x22,0x0a,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x63,0x6f,0x6d,0x6d,0x61,0x6e,0x64,\n    0x73,0x20,0x3d,0x20,0x72,0x65,0x71,0x75,0x69,0x72,0x65,0x20,0x22,0x64,0x65,0x62,\n    0x75,0x67,0x67,0x65,0x72,0x2e,0x63,0x6f,0x6d,0x6d,0x61,0x6e,0x64,0x73,0x22,0x0a,\n    0x6c,0x6f,0x63,0x61,0x6c,0x20,0x63,0x6f,0x6e,0x74,0x65,0x78,0x74,0x20,0x3d,0x20,\n    0x72,0x65,0x71,0x75,0x69,0x72,0x65,0x20,0x22,0x64,0x65,0x62,0x75,0x67,0x67,0x65,\n    0x72,0x2e,0x63,0x6f,0x6e,0x74,0x65,0x78,0x74,0x22,0x0a,0x6c,0x6f,0x63,0x61,0x6c,\n    0x20,0x75,0x72,0x6c,0x20,0x3d,0x20,0x72,0x65,0x71,0x75,0x69,0x72,0x65,0x20,0x22,\n    0x64,0x65,0x62,0x75,0x67,0x67,0x65,0x72,0x2e,0x75,0x72,0x6c,0x22,0x0a,0x0a,0x6c,\n    0x6f,0x63,0x61,0x6c,0x20,0x6c,0x6f,0x67,0x20,0x3d,0x20,0x75,0x74,0x69,0x6c,0x2e,\n    0x6c,0x6f,0x67,0x0a,0x0a,0x0a,0x2d,0x2d,0x20,0x54,0x4f,0x44,0x4f,0x20,0x63,0x6f,\n    0x6d,0x70,0x6c,0x65,0x74,0x65,0x20,0x74,0x68,0x65,0x20,0x73,0x74,0x64,0x6c,0x69,\n    0x62,0x20,0x61,0x63,0x63,0x65,0x73,0x73,0x0a,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x63,\n    0x6f,0x72,0x75,0x6e,0x6e,0x69,0x6e,0x67,0x2c,0x20,0x63,0x6f,0x63,0x72,0x65,0x61,\n    0x74,0x65,0x2c,0x20,0x63,0x6f,0x77,0x72,0x61,0x70,0x2c,0x20,0x63,0x6f,0x79,0x69,\n    0x65,0x6c,0x64,0x2c,0x20,0x63,0x6f,0x72,0x65,0x73,0x75,0x6d,0x65,0x2c,0x20,0x63,\n    0x6f,0x73,0x74,0x61,0x74,0x75,0x73,0x20,0x3d,0x20,0x63,0x6f,0x72,0x6f,0x75,0x74,\n    0x69,0x6e,0x65,0x2e,0x72,0x75,0x6e,0x6e,0x69,0x6e,0x67,0x2c,0x20,0x63,0x6f,0x72,\n    0x6f,0x75,0x74,0x69,0x6e,0x65,0x2e,0x63,0x72,0x65,0x61,0x74,0x65,0x2c,0x20,0x63,\n    0x6f,0x72,0x6f,0x75,0x74,0x69,0x6e,0x65,0x2e,0x77,0x72,0x61,0x70,0x2c,0x20,0x63,\n    0x6f,0x72,0x6f,0x75,0x74,0x69,0x6e,0x65,0x2e,0x79,0x69,0x65,0x6c,0x64,0x2c,0x20,\n    0x63,0x6f,0x72,0x6f,0x75,0x74,0x69,0x6e,0x65,0x2e,0x72,0x65,0x73,0x75,0x6d,0x65,\n    0x2c,0x20,0x63,0x6f,0x72,0x6f,0x75,0x74,0x69,0x6e,0x65,0x2e,0x73,0x74,0x61,0x74,\n    0x75,0x73,0x0a,0x0a,0x0a,0x2d,0x2d,0x20,0x72,0x65,0x67,0x69,0x73,0x74,0x65,0x72,\n    0x20,0x74,0x68,0x65,0x20,0x55,0x52,0x49,0x20,0x6f,0x66,0x20,0x74,0x68,0x65,0x20,\n    0x64,0x65,0x62,0x75,0x67,0x67,0x65,0x72,0x2c,0x20,0x74,0x6f,0x20,0x6e,0x6f,0x74,\n    0x20,0x6a,0x75,0x6d,0x70,0x20,0x69,0x6e,0x74,0x6f,0x20,0x77,0x69,0x74,0x68,0x20,\n    0x72,0x65,0x64,0x65,0x66,0x69,0x6e,0x65,0x64,0x20,0x66,0x75,0x6e,0x63,0x74,0x69,\n    0x6f,0x6e,0x20,0x6f,0x72,0x20,0x63,0x6f,0x72,0x6f,0x75,0x74,0x69,0x6e,0x65,0x20,\n    0x62,0x6f,0x6f,0x74,0x73,0x74,0x72,0x61,0x70,0x20,0x73,0x74,0x75,0x66,0x66,0x0a,\n    0x6c,0x6f,0x63,0x61,0x6c,0x20,0x64,0x65,0x62,0x75,0x67,0x67,0x65,0x72,0x5f,0x75,\n    0x72,0x69,0x20,0x3d,0x20,0x6e,0x69,0x6c,0x20,0x2d,0x2d,0x20,0x73,0x65,0x74,0x20,\n    0x69,0x6e,0x20,0x69,0x6e,0x69,0x74,0x20,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,\n    0x0a,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x74,0x72,0x61,0x6e,0x73,0x70,0x6f,0x72,0x74,\n    0x6d,0x6f,0x64,0x75,0x6c,0x65,0x5f,0x75,0x72,0x69,0x20,0x3d,0x20,0x6e,0x69,0x6c,\n    0x20,0x2d,0x2d,0x20,0x73,0x65,0x74,0x20,0x69,0x6e,0x20,0x69,0x6e,0x69,0x74,0x20,\n    0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x0a,0x0a,0x2d,0x2d,0x20,0x77,0x69,0x6c,\n    0x6c,0x20,0x63,0x6f,0x6e,0x74,0x61,0x69,0x6e,0x20,0x74,0x68,0x65,0x20,0x73,0x65,\n    0x73,0x73,0x69,0x6f,0x6e,0x20,0x6f,0x62,0x6a,0x65,0x63,0x74,0x2c,0x20,0x61,0x6e,\n    0x64,0x20,0x70,0x6f,0x73,0x73,0x69,0x62,0x6c,0x79,0x20,0x61,0x20,0x6c,0x69,0x73,\n    0x74,0x20,0x6f,0x66,0x20,0x61,0x6c,0x6c,0x20,0x73,0x65,0x73,0x73,0x69,0x6f,0x6e,\n    0x73,0x20,0x69,0x66,0x20,0x61,0x20,0x6d,0x75,0x6c,0x74,0x69,0x2d,0x74,0x68,0x72,\n    0x65,0x61,0x64,0x65,0x64,0x20,0x6d,0x6f,0x64,0x65,0x6c,0x20,0x69,0x73,0x20,0x61,\n    0x64,0x6f,0x70,0x74,0x65,0x64,0x0a,0x2d,0x2d,0x20,0x74,0x68,0x69,0x73,0x20,0x69,\n    0x73,0x20,0x6f,0x6e,0x6c,0x79,0x20,0x75,0x73,0x65,0x64,0x20,0x66,0x6f,0x72,0x20,\n    0x61,0x73,0x79,0x6e,0x63,0x20,0x63,0x6f,0x6d,0x6d,0x61,0x6e,0x64,0x73,0x2e,0x0a,\n    0x6c,0x6f,0x63,0x61,0x6c,0x20,0x61,0x63,0x74,0x69,0x76,0x65,0x5f,0x73,0x65,0x73,\n    0x73,0x69,0x6f,0x6e,0x20,0x3d,0x20,0x6e,0x69,0x6c,0x0a,0x0a,0x2d,0x2d,0x20,0x74,\n    0x72,0x61,0x63,0x6b,0x73,0x20,0x61,0x6c,0x6c,0x20,0x61,0x63,0x74,0x69,0x76,0x65,\n    0x20,0x63,0x6f,0x72,0x6f,0x75,0x74,0x69,0x6e,0x65,0x73,0x20,0x61,0x6e,0x64,0x20,\n    0x61,0x73,0x73,0x6f,0x63,0x69,0x61,0x74,0x65,0x20,0x61,0x6e,0x20,0x69,0x64,0x20,\n    0x74,0x6f,0x20,0x74,0x68,0x65,0x6d,0x2c,0x20,0x74,0x68,0x65,0x20,0x74,0x61,0x62,\n    0x6c,0x65,0x20,0x66,0x72,0x6f,0x6d,0x5f,0x69,0x64,0x20,0x69,0x73,0x20,0x74,0x68,\n    0x65,0x20,0x69,0x64,0x3d,0x3e,0x63,0x6f,0x72,0x6f,0x20,0x6d,0x61,0x70,0x70,0x69,\n    0x6e,0x67,0x2c,0x20,0x74,0x68,0x65,0x20,0x74,0x61,0x62,0x6c,0x65,0x20,0x66,0x72,\n    0x6f,0x6d,0x5f,0x63,0x6f,0x72,0x6f,0x20,0x69,0x73,0x20,0x74,0x68,0x65,0x20,0x72,\n    0x65,0x76,0x65,0x72,0x73,0x65,0x0a,0x63,0x6f,0x72,0x65,0x2e,0x61,0x63,0x74,0x69,\n    0x76,0x65,0x5f,0x63,0x6f,0x72,0x6f,0x75,0x74,0x69,0x6e,0x65,0x73,0x20,0x3d,0x20,\n    0x7b,0x20,0x6e,0x20,0x3d,0x20,0x30,0x2c,0x20,0x66,0x72,0x6f,0x6d,0x5f,0x69,0x64,\n    0x20,0x3d,0x20,0x73,0x65,0x74,0x6d,0x65,0x74,0x61,0x74,0x61,0x62,0x6c,0x65,0x28,\n    0x7b,0x20,0x7d,0x2c,0x20,0x7b,0x20,0x5f,0x5f,0x6d,0x6f,0x64,0x65,0x20,0x3d,0x20,\n    0x22,0x76,0x22,0x20,0x7d,0x29,0x2c,0x20,0x66,0x72,0x6f,0x6d,0x5f,0x63,0x6f,0x72,\n    0x6f,0x20,0x3d,0x20,0x73,0x65,0x74,0x6d,0x65,0x74,0x61,0x74,0x61,0x62,0x6c,0x65,\n    0x28,0x7b,0x20,0x7d,0x2c,0x20,0x7b,0x20,0x5f,0x5f,0x6d,0x6f,0x64,0x65,0x20,0x3d,\n    0x20,0x22,0x6b,0x22,0x20,0x7d,0x29,0x20,0x7d,0x0a,0x0a,0x63,0x6f,0x72,0x65,0x2e,\n    0x70,0x72,0x65,0x76,0x5f,0x62,0x72,0x65,0x61,0x6b,0x5f,0x6c,0x69,0x6e,0x65,0x20,\n    0x3d,0x20,0x6e,0x69,0x6c,0x20,0x2d,0x2d,0x20,0x73,0x65,0x74,0x20,0x69,0x6e,0x20,\n    0x6c,0x69,0x6e,0x65,0x5f,0x68,0x6f,0x6f,0x6b,0x20,0x66,0x75,0x6e,0x63,0x74,0x69,\n    0x6f,0x6e,0x0a,0x0a,0x2d,0x2d,0x20,0x22,0x42,0x45,0x47,0x49,0x4e,0x20,0x56,0x45,\n    0x52,0x53,0x49,0x4f,0x4e,0x20,0x44,0x45,0x50,0x45,0x4e,0x44,0x45,0x4e,0x54,0x20,\n    0x43,0x4f,0x44,0x45,0x22,0x0a,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x73,0x65,0x74,0x62,\n    0x70,0x65,0x6e,0x76,0x20,0x20,0x20,0x20,0x20,0x2d,0x2d,0x20,0x73,0x65,0x74,0x20,\n    0x65,0x6e,0x76,0x69,0x72,0x6f,0x6e,0x6d,0x65,0x6e,0x74,0x20,0x6f,0x66,0x20,0x61,\n    0x20,0x62,0x72,0x65,0x61,0x6b,0x70,0x6f,0x69,0x6e,0x74,0x20,0x28,0x63,0x6f,0x6d,\n    0x70,0x69,0x6c,0x65,0x64,0x20,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x29,0x0a,\n    0x69,0x66,0x20,0x5f,0x56,0x45,0x52,0x53,0x49,0x4f,0x4e,0x20,0x3d,0x3d,0x20,0x22,\n    0x4c,0x75,0x61,0x20,0x35,0x2e,0x31,0x22,0x20,0x74,0x68,0x65,0x6e,0x0a,0x20,0x20,\n    0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x73,0x65,0x74,0x66,0x65,0x6e,0x76,0x20,\n    0x3d,0x20,0x73,0x65,0x74,0x66,0x65,0x6e,0x76,0x0a,0x20,0x20,0x20,0x20,0x73,0x65,\n    0x74,0x62,0x70,0x65,0x6e,0x76,0x20,0x3d,0x20,0x73,0x65,0x74,0x66,0x65,0x6e,0x76,\n    0x0a,0x65,0x6c,0x73,0x65,0x69,0x66,0x20,0x5f,0x56,0x45,0x52,0x53,0x49,0x4f,0x4e,\n    0x20,0x3d,0x3d,0x20,0x22,0x4c,0x75,0x61,0x20,0x35,0x2e,0x32,0x22,0x20,0x74,0x68,\n    0x65,0x6e,0x0a,0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x73,0x65,0x74,\n    0x75,0x70,0x76,0x61,0x6c,0x75,0x65,0x20,0x3d,0x20,0x64,0x65,0x62,0x75,0x67,0x2e,\n    0x73,0x65,0x74,0x75,0x70,0x76,0x61,0x6c,0x75,0x65,0x0a,0x20,0x20,0x20,0x20,0x2d,\n    0x2d,0x20,0x5f,0x45,0x4e,0x56,0x20,0x69,0x73,0x20,0x74,0x68,0x65,0x20,0x66,0x69,\n    0x72,0x73,0x74,0x20,0x75,0x70,0x76,0x61,0x6c,0x75,0x65,0x0a,0x20,0x20,0x20,0x20,\n    0x73,0x65,0x74,0x62,0x70,0x65,0x6e,0x76,0x20,0x3d,0x20,0x66,0x75,0x6e,0x63,0x74,\n    0x69,0x6f,0x6e,0x28,0x66,0x2c,0x20,0x74,0x29,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,\n    0x20,0x73,0x65,0x74,0x75,0x70,0x76,0x61,0x6c,0x75,0x65,0x28,0x66,0x2c,0x20,0x31,\n    0x2c,0x20,0x74,0x29,0x20,0x65,0x6e,0x64,0x0a,0x65,0x6c,0x73,0x65,0x20,0x65,0x72,\n    0x72,0x6f,0x72,0x28,0x5f,0x56,0x45,0x52,0x53,0x49,0x4f,0x4e,0x20,0x2e,0x2e,0x20,\n    0x22,0x69,0x73,0x20,0x6e,0x6f,0x74,0x20,0x73,0x75,0x70,0x70,0x6f,0x72,0x74,0x65,\n    0x64,0x2e,0x22,0x29,0x20,0x65,0x6e,0x64,0x0a,0x2d,0x2d,0x20,0x22,0x45,0x4e,0x44,\n    0x20,0x56,0x45,0x52,0x53,0x49,0x4f,0x4e,0x20,0x44,0x45,0x50,0x45,0x4e,0x44,0x45,\n    0x4e,0x54,0x20,0x43,0x4f,0x44,0x45,0x22,0x0a,0x0a,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x0a,0x2d,0x2d,0x20,0x20,0x4f,0x75,\n    0x74,0x70,0x75,0x74,0x20,0x72,0x65,0x64,0x69,0x72,0x65,0x63,0x74,0x69,0x6f,0x6e,\n    0x20,0x68,0x61,0x6e,0x64,0x6c,0x69,0x6e,0x67,0x0a,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x0a,0x2d,0x2d,0x20,0x4f,0x76,0x65,\n    0x72,0x72,0x69,0x64,0x65,0x20,0x73,0x74,0x61,0x6e,0x64,0x61,0x72,0x64,0x20,0x6f,\n    0x75,0x74,0x70,0x75,0x74,0x20,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x73,0x20,\n    0x26,0x20,0x63,0x6f,0x6e,0x73,0x74,0x61,0x6e,0x74,0x73,0x20,0x74,0x6f,0x20,0x72,\n    0x65,0x64,0x69,0x72,0x65,0x63,0x74,0x20,0x64,0x61,0x74,0x61,0x20,0x77,0x72,0x69,\n    0x74,0x74,0x65,0x6e,0x20,0x74,0x6f,0x20,0x74,0x68,0x65,0x73,0x65,0x20,0x66,0x69,\n    0x6c,0x65,0x73,0x20,0x74,0x6f,0x20,0x49,0x44,0x45,0x20,0x74,0x6f,0x6f,0x2e,0x0a,\n    0x2d,0x2d,0x20,0x54,0x68,0x69,0x73,0x20,0x77,0x6f,0x72,0x6b,0x73,0x20,0x6f,0x6e,\n    0x6c,0x79,0x20,0x66,0x6f,0x72,0x20,0x6f,0x75,0x74,0x70,0x75,0x74,0x20,0x64,0x6f,\n    0x6e,0x65,0x20,0x69,0x6e,0x20,0x4c,0x75,0x61,0x2c,0x20,0x6f,0x75,0x74,0x70,0x75,\n    0x74,0x20,0x77,0x72,0x69,0x74,0x74,0x65,0x6e,0x20,0x62,0x79,0x20,0x43,0x20,0x65,\n    0x78,0x74,0x65,0x6e,0x73,0x69,0x6f,0x6e,0x73,0x20,0x69,0x73,0x20,0x73,0x74,0x69,\n    0x6c,0x6c,0x20,0x67,0x6f,0x20,0x74,0x6f,0x20,0x73,0x79,0x73,0x74,0x65,0x6d,0x20,\n    0x6f,0x75,0x74,0x70,0x75,0x74,0x20,0x66,0x69,0x6c,0x65,0x2e,0x0a,0x0a,0x2d,0x2d,\n    0x20,0x72,0x65,0x66,0x65,0x72,0x65,0x6e,0x63,0x65,0x73,0x20,0x74,0x6f,0x20,0x6e,\n    0x61,0x74,0x69,0x76,0x65,0x20,0x76,0x61,0x6c,0x75,0x65,0x73,0x0a,0x69,0x6f,0x2e,\n    0x62,0x61,0x73,0x65,0x20,0x3d,0x20,0x7b,0x20,0x6f,0x75,0x74,0x70,0x75,0x74,0x20,\n    0x3d,0x20,0x69,0x6f,0x2e,0x6f,0x75,0x74,0x70,0x75,0x74,0x2c,0x20,0x73,0x74,0x64,\n    0x69,0x6e,0x20,0x3d,0x20,0x69,0x6f,0x2e,0x73,0x74,0x64,0x69,0x6e,0x2c,0x20,0x73,\n    0x74,0x64,0x6f,0x75,0x74,0x20,0x3d,0x20,0x69,0x6f,0x2e,0x73,0x74,0x64,0x6f,0x75,\n    0x74,0x2c,0x20,0x73,0x74,0x64,0x65,0x72,0x72,0x20,0x3d,0x20,0x69,0x6f,0x2e,0x73,\n    0x74,0x64,0x65,0x72,0x72,0x20,0x7d,0x0a,0x0a,0x2d,0x2d,0x20,0x63,0x6f,0x6d,0x6d,\n    0x65,0x6e,0x74,0x20,0x6f,0x75,0x74,0x20,0x62,0x79,0x20,0x67,0x75,0x61,0x6e,0x79,\n    0x75,0x5f,0x79,0x61,0x6e,0x2c,0x20,0x6e,0x6f,0x74,0x20,0x72,0x65,0x64,0x69,0x72,\n    0x65,0x63,0x74,0x20,0x69,0x6f,0x2e,0x0a,0x2d,0x2d,0x20,0x66,0x75,0x6e,0x63,0x74,\n    0x69,0x6f,0x6e,0x20,0x70,0x72,0x69,0x6e,0x74,0x28,0x2e,0x2e,0x2e,0x29,0x0a,0x2d,\n    0x2d,0x20,0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x62,0x75,0x66,0x20,\n    0x3d,0x20,0x7b,0x2e,0x2e,0x2e,0x7d,0x0a,0x2d,0x2d,0x20,0x20,0x20,0x20,0x20,0x66,\n    0x6f,0x72,0x20,0x69,0x3d,0x31,0x2c,0x20,0x73,0x65,0x6c,0x65,0x63,0x74,0x28,0x22,\n    0x23,0x22,0x2c,0x20,0x2e,0x2e,0x2e,0x29,0x20,0x64,0x6f,0x0a,0x2d,0x2d,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x62,0x75,0x66,0x5b,0x69,0x5d,0x20,0x3d,0x20,\n    0x74,0x6f,0x73,0x74,0x72,0x69,0x6e,0x67,0x28,0x62,0x75,0x66,0x5b,0x69,0x5d,0x29,\n    0x0a,0x2d,0x2d,0x20,0x20,0x20,0x20,0x20,0x65,0x6e,0x64,0x0a,0x2d,0x2d,0x20,0x20,\n    0x20,0x20,0x20,0x69,0x6f,0x2e,0x73,0x74,0x64,0x6f,0x75,0x74,0x3a,0x77,0x72,0x69,\n    0x74,0x65,0x28,0x74,0x61,0x62,0x6c,0x65,0x2e,0x63,0x6f,0x6e,0x63,0x61,0x74,0x28,\n    0x62,0x75,0x66,0x2c,0x20,0x22,0x5c,0x74,0x22,0x29,0x20,0x2e,0x2e,0x20,0x22,0x5c,\n    0x6e,0x22,0x29,0x0a,0x2d,0x2d,0x20,0x65,0x6e,0x64,0x0a,0x0a,0x2d,0x2d,0x20,0x41,\n    0x63,0x74,0x75,0x61,0x6c,0x6c,0x79,0x20,0x63,0x68,0x61,0x6e,0x67,0x65,0x20,0x73,\n    0x74,0x61,0x6e,0x64,0x61,0x72,0x64,0x20,0x6f,0x75,0x74,0x70,0x75,0x74,0x20,0x66,\n    0x69,0x6c,0x65,0x20,0x62,0x75,0x74,0x20,0x73,0x74,0x69,0x6c,0x6c,0x20,0x72,0x65,\n    0x74,0x75,0x72,0x6e,0x20,0x74,0x68,0x65,0x20,0x22,0x66,0x61,0x6b,0x65,0x22,0x20,\n    0x73,0x74,0x64,0x6f,0x75,0x74,0x0a,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x20,\n    0x69,0x6f,0x2e,0x6f,0x75,0x74,0x70,0x75,0x74,0x28,0x6f,0x75,0x74,0x70,0x75,0x74,\n    0x29,0x0a,0x20,0x20,0x20,0x20,0x69,0x6f,0x2e,0x62,0x61,0x73,0x65,0x2e,0x6f,0x75,\n    0x74,0x70,0x75,0x74,0x28,0x6f,0x75,0x74,0x70,0x75,0x74,0x29,0x0a,0x20,0x20,0x20,\n    0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x69,0x6f,0x2e,0x73,0x74,0x64,0x6f,0x75,\n    0x74,0x0a,0x65,0x6e,0x64,0x0a,0x0a,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x64,0x75,0x6d,\n    0x6d,0x79,0x20,0x3d,0x20,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x28,0x29,0x20,\n    0x65,0x6e,0x64,0x0a,0x0a,0x2d,0x2d,0x20,0x6d,0x65,0x74,0x61,0x74,0x61,0x62,0x6c,\n    0x65,0x20,0x66,0x6f,0x72,0x20,0x72,0x65,0x64,0x69,0x72,0x65,0x63,0x74,0x69,0x6e,\n    0x67,0x20,0x6f,0x75,0x74,0x70,0x75,0x74,0x20,0x28,0x6e,0x6f,0x74,0x20,0x70,0x72,\n    0x69,0x6e,0x74,0x65,0x64,0x20,0x61,0x74,0x20,0x61,0x6c,0x6c,0x20,0x69,0x6e,0x20,\n    0x61,0x63,0x74,0x75,0x61,0x6c,0x20,0x6f,0x75,0x74,0x70,0x75,0x74,0x29,0x0a,0x63,\n    0x6f,0x72,0x65,0x2e,0x72,0x65,0x64,0x69,0x72,0x65,0x63,0x74,0x5f,0x6f,0x75,0x74,\n    0x70,0x75,0x74,0x20,0x3d,0x20,0x7b,0x0a,0x20,0x20,0x20,0x20,0x77,0x72,0x69,0x74,\n    0x65,0x20,0x3d,0x20,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x28,0x73,0x65,0x6c,\n    0x66,0x2c,0x20,0x2e,0x2e,0x2e,0x29,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x6c,0x6f,0x63,0x61,0x6c,0x20,0x62,0x75,0x66,0x20,0x3d,0x20,0x7b,0x2e,0x2e,0x2e,\n    0x7d,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x66,0x6f,0x72,0x20,0x69,0x3d,\n    0x31,0x2c,0x20,0x73,0x65,0x6c,0x65,0x63,0x74,0x28,0x22,0x23,0x22,0x2c,0x20,0x2e,\n    0x2e,0x2e,0x29,0x20,0x64,0x6f,0x20,0x62,0x75,0x66,0x5b,0x69,0x5d,0x20,0x3d,0x20,\n    0x74,0x6f,0x73,0x74,0x72,0x69,0x6e,0x67,0x28,0x62,0x75,0x66,0x5b,0x69,0x5d,0x29,\n    0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x62,0x75,0x66,\n    0x20,0x3d,0x20,0x74,0x61,0x62,0x6c,0x65,0x2e,0x63,0x6f,0x6e,0x63,0x61,0x74,0x28,\n    0x62,0x75,0x66,0x29,0x3a,0x67,0x73,0x75,0x62,0x28,0x22,0x5c,0x6e,0x22,0x2c,0x20,\n    0x22,0x5c,0x72,0x5c,0x6e,0x22,0x29,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x64,0x62,0x67,0x70,0x2e,0x73,0x65,0x6e,0x64,0x5f,0x78,0x6d,0x6c,0x28,0x73,0x65,\n    0x6c,0x66,0x2e,0x73,0x6b,0x74,0x2c,0x20,0x7b,0x20,0x74,0x61,0x67,0x20,0x3d,0x20,\n    0x22,0x73,0x74,0x72,0x65,0x61,0x6d,0x22,0x2c,0x20,0x61,0x74,0x74,0x72,0x20,0x3d,\n    0x20,0x7b,0x20,0x74,0x79,0x70,0x65,0x3d,0x73,0x65,0x6c,0x66,0x2e,0x6d,0x6f,0x64,\n    0x65,0x20,0x7d,0x2c,0x20,0x20,0x75,0x74,0x69,0x6c,0x2e,0x62,0x36,0x34,0x28,0x62,\n    0x75,0x66,0x29,0x20,0x7d,0x20,0x29,0x0a,0x20,0x20,0x20,0x20,0x65,0x6e,0x64,0x2c,\n    0x0a,0x20,0x20,0x20,0x20,0x66,0x6c,0x75,0x73,0x68,0x20,0x3d,0x20,0x64,0x75,0x6d,\n    0x6d,0x79,0x2c,0x0a,0x20,0x20,0x20,0x20,0x63,0x6c,0x6f,0x73,0x65,0x20,0x3d,0x20,\n    0x64,0x75,0x6d,0x6d,0x79,0x2c,0x0a,0x20,0x20,0x20,0x20,0x73,0x65,0x74,0x76,0x62,\n    0x75,0x66,0x20,0x3d,0x20,0x64,0x75,0x6d,0x6d,0x79,0x2c,0x0a,0x20,0x20,0x20,0x20,\n    0x73,0x65,0x65,0x6b,0x20,0x3d,0x20,0x64,0x75,0x6d,0x6d,0x79,0x0a,0x7d,0x0a,0x63,\n    0x6f,0x72,0x65,0x2e,0x72,0x65,0x64,0x69,0x72,0x65,0x63,0x74,0x5f,0x6f,0x75,0x74,\n    0x70,0x75,0x74,0x2e,0x5f,0x5f,0x69,0x6e,0x64,0x65,0x78,0x20,0x3d,0x20,0x63,0x6f,\n    0x72,0x65,0x2e,0x72,0x65,0x64,0x69,0x72,0x65,0x63,0x74,0x5f,0x6f,0x75,0x74,0x70,\n    0x75,0x74,0x0a,0x0a,0x2d,0x2d,0x20,0x6d,0x65,0x74,0x61,0x74,0x61,0x62,0x6c,0x65,\n    0x20,0x66,0x6f,0x72,0x20,0x63,0x6c,0x6f,0x6e,0x69,0x6e,0x67,0x20,0x6f,0x75,0x74,\n    0x70,0x75,0x74,0x20,0x28,0x6f,0x75,0x74,0x70,0x75,0x74,0x73,0x20,0x74,0x6f,0x20,\n    0x61,0x63,0x74,0x75,0x61,0x6c,0x20,0x73,0x79,0x73,0x74,0x65,0x6d,0x20,0x61,0x6e,\n    0x64,0x20,0x73,0x65,0x6e,0x64,0x20,0x74,0x6f,0x20,0x49,0x44,0x45,0x29,0x0a,0x63,\n    0x6f,0x72,0x65,0x2e,0x63,0x6f,0x70,0x79,0x5f,0x6f,0x75,0x74,0x70,0x75,0x74,0x20,\n    0x3d,0x20,0x7b,0x0a,0x20,0x20,0x20,0x20,0x77,0x72,0x69,0x74,0x65,0x20,0x3d,0x20,\n    0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x28,0x73,0x65,0x6c,0x66,0x2c,0x20,0x2e,\n    0x2e,0x2e,0x29,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x63,0x6f,0x72,0x65,\n    0x2e,0x72,0x65,0x64,0x69,0x72,0x65,0x63,0x74,0x5f,0x6f,0x75,0x74,0x70,0x75,0x74,\n    0x2e,0x77,0x72,0x69,0x74,0x65,0x28,0x73,0x65,0x6c,0x66,0x2c,0x20,0x2e,0x2e,0x2e,\n    0x29,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x69,0x6f,0x2e,0x62,0x61,0x73,\n    0x65,0x5b,0x73,0x65,0x6c,0x66,0x2e,0x6d,0x6f,0x64,0x65,0x5d,0x3a,0x77,0x72,0x69,\n    0x74,0x65,0x28,0x2e,0x2e,0x2e,0x29,0x0a,0x20,0x20,0x20,0x20,0x65,0x6e,0x64,0x2c,\n    0x0a,0x20,0x20,0x20,0x20,0x66,0x6c,0x75,0x73,0x68,0x20,0x20,0x20,0x3d,0x20,0x66,\n    0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x28,0x73,0x65,0x6c,0x66,0x2c,0x20,0x2e,0x2e,\n    0x2e,0x29,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x73,0x65,0x6c,0x66,0x2e,0x6f,\n    0x75,0x74,0x3a,0x66,0x6c,0x75,0x73,0x68,0x28,0x2e,0x2e,0x2e,0x29,0x20,0x65,0x6e,\n    0x64,0x2c,0x0a,0x20,0x20,0x20,0x20,0x63,0x6c,0x6f,0x73,0x65,0x20,0x20,0x20,0x3d,\n    0x20,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x28,0x73,0x65,0x6c,0x66,0x2c,0x20,\n    0x2e,0x2e,0x2e,0x29,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x73,0x65,0x6c,0x66,\n    0x2e,0x6f,0x75,0x74,0x3a,0x63,0x6c,0x6f,0x73,0x65,0x28,0x2e,0x2e,0x2e,0x29,0x20,\n    0x65,0x6e,0x64,0x2c,0x0a,0x20,0x20,0x20,0x20,0x73,0x65,0x74,0x76,0x62,0x75,0x66,\n    0x20,0x3d,0x20,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x28,0x73,0x65,0x6c,0x66,\n    0x2c,0x20,0x2e,0x2e,0x2e,0x29,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x73,0x65,\n    0x6c,0x66,0x2e,0x6f,0x75,0x74,0x3a,0x73,0x65,0x74,0x76,0x62,0x75,0x66,0x28,0x2e,\n    0x2e,0x2e,0x29,0x20,0x65,0x6e,0x64,0x2c,0x0a,0x20,0x20,0x20,0x20,0x73,0x65,0x65,\n    0x6b,0x20,0x20,0x20,0x20,0x3d,0x20,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x28,\n    0x73,0x65,0x6c,0x66,0x2c,0x20,0x2e,0x2e,0x2e,0x29,0x20,0x72,0x65,0x74,0x75,0x72,\n    0x6e,0x20,0x73,0x65,0x6c,0x66,0x2e,0x6f,0x75,0x74,0x3a,0x73,0x65,0x65,0x6b,0x28,\n    0x2e,0x2e,0x2e,0x29,0x20,0x65,0x6e,0x64,0x2c,0x0a,0x7d,0x0a,0x63,0x6f,0x72,0x65,\n    0x2e,0x63,0x6f,0x70,0x79,0x5f,0x6f,0x75,0x74,0x70,0x75,0x74,0x2e,0x5f,0x5f,0x69,\n    0x6e,0x64,0x65,0x78,0x20,0x3d,0x20,0x63,0x6f,0x72,0x65,0x2e,0x63,0x6f,0x70,0x79,\n    0x5f,0x6f,0x75,0x74,0x70,0x75,0x74,0x0a,0x0a,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x0a,0x2d,0x2d,0x20,0x20,0x42,0x72,0x65,\n    0x61,0x6b,0x70,0x6f,0x69,0x6e,0x74,0x20,0x72,0x65,0x67,0x69,0x73,0x74,0x72,0x79,\n    0x0a,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x0a,0x2d,0x2d,0x20,0x52,0x65,0x67,0x69,0x73,0x74,0x72,0x79,0x20,0x6f,0x66,0x20,\n    0x63,0x75,0x72,0x72,0x65,0x6e,0x74,0x20,0x73,0x74,0x61,0x63,0x6b,0x20,0x6c,0x65,\n    0x76,0x65,0x6c,0x73,0x20,0x6f,0x66,0x20,0x61,0x6c,0x6c,0x20,0x72,0x75,0x6e,0x6e,\n    0x69,0x6e,0x67,0x20,0x74,0x68,0x72,0x65,0x61,0x64,0x73,0x0a,0x6c,0x6f,0x63,0x61,\n    0x6c,0x20,0x73,0x74,0x61,0x63,0x6b,0x5f,0x6c,0x65,0x76,0x65,0x6c,0x73,0x20,0x3d,\n    0x20,0x73,0x65,0x74,0x6d,0x65,0x74,0x61,0x74,0x61,0x62,0x6c,0x65,0x28,0x20,0x7b,\n    0x20,0x7d,0x2c,0x20,0x7b,0x20,0x5f,0x5f,0x6d,0x6f,0x64,0x65,0x20,0x3d,0x20,0x22,\n    0x6b,0x22,0x20,0x7d,0x20,0x29,0x0a,0x0a,0x2d,0x2d,0x20,0x46,0x69,0x6c,0x65,0x2f,\n    0x6c,0x69,0x6e,0x65,0x20,0x6d,0x61,0x70,0x70,0x69,0x6e,0x67,0x20,0x66,0x6f,0x72,\n    0x20,0x62,0x72,0x65,0x61,0x6b,0x70,0x6f,0x69,0x6e,0x74,0x73,0x20,0x28,0x42,0x50,\n    0x29,0x2e,0x20,0x46,0x6f,0x72,0x20,0x61,0x20,0x67,0x69,0x76,0x65,0x6e,0x20,0x66,\n    0x69,0x6c,0x65,0x2f,0x6c,0x69,0x6e,0x65,0x2c,0x20,0x61,0x20,0x6c,0x69,0x73,0x74,\n    0x20,0x6f,0x66,0x20,0x42,0x50,0x20,0x69,0x73,0x20,0x61,0x73,0x73,0x6f,0x63,0x69,\n    0x61,0x74,0x65,0x64,0x20,0x28,0x44,0x42,0x47,0x70,0x20,0x73,0x70,0x65,0x63,0x69,\n    0x66,0x69,0x63,0x61,0x74,0x69,0x6f,0x6e,0x20,0x73,0x65,0x63,0x74,0x69,0x6f,0x6e,\n    0x20,0x37,0x2e,0x36,0x2e,0x31,0x0a,0x2d,0x2d,0x20,0x72,0x65,0x71,0x75,0x69,0x72,\n    0x65,0x20,0x74,0x68,0x61,0x74,0x20,0x6d,0x75,0x6c,0x74,0x69,0x70,0x6c,0x65,0x20,\n    0x42,0x50,0x20,0x61,0x74,0x20,0x73,0x61,0x6d,0x65,0x20,0x70,0x6c,0x61,0x63,0x65,\n    0x20,0x6d,0x75,0x73,0x74,0x20,0x62,0x65,0x20,0x68,0x61,0x6e,0x64,0x6c,0x65,0x64,\n    0x29,0x0a,0x2d,0x2d,0x20,0x41,0x20,0x42,0x50,0x20,0x69,0x73,0x20,0x61,0x20,0x74,\n    0x61,0x62,0x6c,0x65,0x20,0x77,0x69,0x74,0x68,0x20,0x61,0x6c,0x6c,0x20,0x61,0x64,\n    0x64,0x69,0x74,0x69,0x6f,0x6e,0x61,0x6c,0x20,0x70,0x72,0x6f,0x70,0x65,0x72,0x74,\n    0x69,0x65,0x73,0x20,0x28,0x74,0x79,0x70,0x65,0x2c,0x20,0x63,0x6f,0x6e,0x64,0x69,\n    0x74,0x69,0x6f,0x6e,0x2c,0x20,0x2e,0x2e,0x2e,0x29,0x20,0x74,0x68,0x65,0x20,0x69,\n    0x64,0x20,0x69,0x73,0x20,0x74,0x68,0x65,0x20,0x73,0x74,0x72,0x69,0x6e,0x67,0x20,\n    0x72,0x65,0x70,0x72,0x65,0x73,0x65,0x6e,0x74,0x61,0x74,0x69,0x6f,0x6e,0x20,0x6f,\n    0x66,0x20,0x74,0x68,0x65,0x20,0x74,0x61,0x62,0x6c,0x65,0x2e,0x0a,0x63,0x6f,0x72,\n    0x65,0x2e,0x62,0x72,0x65,0x61,0x6b,0x70,0x6f,0x69,0x6e,0x74,0x73,0x20,0x3d,0x20,\n    0x7b,0x0a,0x20,0x20,0x20,0x20,0x2d,0x2d,0x20,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,\n    0x6e,0x73,0x20,0x74,0x6f,0x20,0x63,0x61,0x6c,0x6c,0x20,0x74,0x6f,0x20,0x6d,0x61,\n    0x74,0x63,0x68,0x20,0x68,0x69,0x74,0x20,0x63,0x6f,0x6e,0x64,0x69,0x74,0x69,0x6f,\n    0x6e,0x73,0x0a,0x20,0x20,0x20,0x20,0x68,0x69,0x74,0x5f,0x63,0x6f,0x6e,0x64,0x69,\n    0x74,0x69,0x6f,0x6e,0x73,0x20,0x3d,0x20,0x7b,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x5b,0x22,0x3e,0x3d,0x22,0x5d,0x20,0x3d,0x20,0x66,0x75,0x6e,0x63,0x74,\n    0x69,0x6f,0x6e,0x28,0x76,0x61,0x6c,0x75,0x65,0x2c,0x20,0x74,0x61,0x72,0x67,0x65,\n    0x74,0x29,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x76,0x61,0x6c,0x75,0x65,0x20,\n    0x3e,0x3d,0x20,0x74,0x61,0x72,0x67,0x65,0x74,0x20,0x65,0x6e,0x64,0x2c,0x0a,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x5b,0x22,0x3d,0x3d,0x22,0x5d,0x20,0x3d,0x20,\n    0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x28,0x76,0x61,0x6c,0x75,0x65,0x2c,0x20,\n    0x74,0x61,0x72,0x67,0x65,0x74,0x29,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x76,\n    0x61,0x6c,0x75,0x65,0x20,0x3d,0x3d,0x20,0x74,0x61,0x72,0x67,0x65,0x74,0x20,0x65,\n    0x6e,0x64,0x2c,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x5b,0x22,0x25,0x22,\n    0x5d,0x20,0x20,0x3d,0x20,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x28,0x76,0x61,\n    0x6c,0x75,0x65,0x2c,0x20,0x74,0x61,0x72,0x67,0x65,0x74,0x29,0x20,0x72,0x65,0x74,\n    0x75,0x72,0x6e,0x20,0x28,0x76,0x61,0x6c,0x75,0x65,0x20,0x25,0x20,0x74,0x61,0x72,\n    0x67,0x65,0x74,0x29,0x20,0x3d,0x3d,0x20,0x30,0x20,0x65,0x6e,0x64,0x2c,0x0a,0x20,\n    0x20,0x20,0x20,0x7d,0x0a,0x7d,0x0a,0x0a,0x2d,0x2d,0x20,0x74,0x72,0x61,0x63,0x6b,\n    0x73,0x20,0x65,0x76,0x65,0x6e,0x74,0x73,0x20,0x73,0x75,0x63,0x68,0x20,0x61,0x73,\n    0x20,0x73,0x74,0x65,0x70,0x5f,0x69,0x6e,0x74,0x6f,0x20,0x6f,0x72,0x20,0x73,0x74,\n    0x65,0x70,0x5f,0x6f,0x76,0x65,0x72,0x0a,0x63,0x6f,0x72,0x65,0x2e,0x65,0x76,0x65,\n    0x6e,0x74,0x73,0x20,0x3d,0x20,0x7b,0x20,0x7d,0x0a,0x0a,0x64,0x6f,0x0a,0x20,0x20,\n    0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x66,0x69,0x6c,0x65,0x5f,0x6d,0x61,0x70,\n    0x70,0x69,0x6e,0x67,0x20,0x3d,0x20,0x7b,0x20,0x7d,0x0a,0x20,0x20,0x20,0x20,0x6c,\n    0x6f,0x63,0x61,0x6c,0x20,0x69,0x64,0x5f,0x6d,0x61,0x70,0x70,0x69,0x6e,0x67,0x20,\n    0x3d,0x20,0x7b,0x20,0x7d,0x0a,0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,\n    0x77,0x61,0x69,0x74,0x69,0x6e,0x67,0x5f,0x73,0x65,0x73,0x73,0x69,0x6f,0x6e,0x73,\n    0x20,0x3d,0x20,0x7b,0x20,0x7d,0x20,0x2d,0x2d,0x20,0x73,0x65,0x73,0x73,0x69,0x6f,\n    0x6e,0x73,0x20,0x74,0x68,0x61,0x74,0x20,0x77,0x61,0x69,0x74,0x20,0x66,0x6f,0x72,\n    0x20,0x61,0x6e,0x20,0x65,0x76,0x65,0x6e,0x74,0x20,0x28,0x6f,0x76,0x65,0x72,0x2c,\n    0x20,0x69,0x6e,0x74,0x6f,0x2c,0x20,0x6f,0x75,0x74,0x29,0x0a,0x20,0x20,0x20,0x20,\n    0x6c,0x6f,0x63,0x61,0x6c,0x20,0x73,0x74,0x65,0x70,0x5f,0x69,0x6e,0x74,0x6f,0x20,\n    0x3d,0x20,0x6e,0x69,0x6c,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x2d,0x2d,0x20,\n    0x73,0x65,0x73,0x73,0x69,0x6f,0x6e,0x20,0x74,0x68,0x61,0x74,0x20,0x72,0x65,0x67,\n    0x69,0x73,0x74,0x65,0x72,0x65,0x64,0x20,0x61,0x20,0x73,0x74,0x65,0x70,0x5f,0x69,\n    0x6e,0x74,0x6f,0x20,0x65,0x76,0x65,0x6e,0x74,0x2c,0x20,0x69,0x66,0x20,0x61,0x6e,\n    0x79,0x0a,0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x73,0x65,0x71,0x75,\n    0x65,0x6e,0x63,0x65,0x20,0x3d,0x20,0x30,0x20,0x2d,0x2d,0x20,0x75,0x73,0x65,0x64,\n    0x20,0x74,0x6f,0x20,0x67,0x65,0x6e,0x65,0x72,0x61,0x74,0x65,0x20,0x62,0x72,0x65,\n    0x61,0x6b,0x70,0x6f,0x69,0x6e,0x74,0x20,0x49,0x44,0x73,0x0a,0x20,0x20,0x20,0x20,\n    0x6c,0x6f,0x63,0x61,0x6c,0x20,0x6c,0x69,0x6e,0x65,0x5f,0x6d,0x61,0x70,0x70,0x69,\n    0x6e,0x67,0x20,0x3d,0x20,0x7b,0x7d,0x20,0x20,0x2d,0x2d,0x20,0x75,0x73,0x65,0x20,\n    0x74,0x6f,0x20,0x72,0x65,0x63,0x6f,0x72,0x64,0x20,0x74,0x68,0x65,0x20,0x6c,0x69,\n    0x6e,0x65,0x20,0x6f,0x66,0x20,0x62,0x70,0x0a,0x0a,0x20,0x20,0x20,0x20,0x6c,0x6f,\n    0x63,0x61,0x6c,0x20,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x20,0x69,0x6e,0x73,\n    0x65,0x72,0x74,0x5f,0x6c,0x69,0x6e,0x65,0x5f,0x6d,0x61,0x70,0x70,0x69,0x6e,0x67,\n    0x28,0x6c,0x69,0x6e,0x65,0x29,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x69,\n    0x66,0x20,0x6c,0x69,0x6e,0x65,0x5f,0x6d,0x61,0x70,0x70,0x69,0x6e,0x67,0x5b,0x6c,\n    0x69,0x6e,0x65,0x5d,0x20,0x3d,0x3d,0x20,0x6e,0x69,0x6c,0x20,0x74,0x68,0x65,0x6e,\n    0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x6c,0x69,0x6e,\n    0x65,0x5f,0x6d,0x61,0x70,0x70,0x69,0x6e,0x67,0x5b,0x6c,0x69,0x6e,0x65,0x5d,0x20,\n    0x3d,0x20,0x31,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x65,0x6c,0x73,0x65,\n    0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x6c,0x69,0x6e,\n    0x65,0x5f,0x6d,0x61,0x70,0x70,0x69,0x6e,0x67,0x5b,0x6c,0x69,0x6e,0x65,0x5d,0x20,\n    0x3d,0x20,0x6c,0x69,0x6e,0x65,0x5f,0x6d,0x61,0x70,0x70,0x69,0x6e,0x67,0x5b,0x6c,\n    0x69,0x6e,0x65,0x5d,0x20,0x2b,0x20,0x31,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,0x20,0x20,0x65,0x6e,0x64,0x0a,0x0a,0x20,0x20,\n    0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,\n    0x20,0x72,0x65,0x6d,0x6f,0x76,0x65,0x5f,0x6c,0x69,0x6e,0x65,0x5f,0x6d,0x61,0x70,\n    0x70,0x69,0x6e,0x67,0x28,0x6c,0x69,0x6e,0x65,0x29,0x0a,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x69,0x66,0x20,0x6e,0x6f,0x74,0x20,0x6c,0x69,0x6e,0x65,0x5f,0x6d,\n    0x61,0x70,0x70,0x69,0x6e,0x67,0x5b,0x6c,0x69,0x6e,0x65,0x5d,0x20,0x61,0x6e,0x64,\n    0x20,0x6c,0x69,0x6e,0x65,0x5f,0x6d,0x61,0x70,0x70,0x69,0x6e,0x67,0x5b,0x6c,0x69,\n    0x6e,0x65,0x5d,0x20,0x3e,0x20,0x31,0x20,0x74,0x68,0x65,0x6e,0x0a,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x6c,0x69,0x6e,0x65,0x5f,0x6d,0x61,\n    0x70,0x70,0x69,0x6e,0x67,0x5b,0x6c,0x69,0x6e,0x65,0x5d,0x20,0x3d,0x20,0x6c,0x69,\n    0x6e,0x65,0x5f,0x6d,0x61,0x70,0x70,0x69,0x6e,0x67,0x5b,0x6c,0x69,0x6e,0x65,0x5d,\n    0x20,0x2d,0x20,0x31,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x65,0x6c,0x73,\n    0x65,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x6c,0x69,\n    0x6e,0x65,0x5f,0x6d,0x61,0x70,0x70,0x69,0x6e,0x67,0x5b,0x6c,0x69,0x6e,0x65,0x5d,\n    0x20,0x3d,0x20,0x6e,0x69,0x6c,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x65,\n    0x6e,0x64,0x0a,0x20,0x20,0x20,0x20,0x65,0x6e,0x64,0x0a,0x0a,0x20,0x20,0x20,0x20,\n    0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x20,0x63,0x6f,0x72,0x65,0x2e,0x62,0x72,\n    0x65,0x61,0x6b,0x70,0x6f,0x69,0x6e,0x74,0x73,0x2e,0x67,0x75,0x65,0x73,0x73,0x28,\n    0x6c,0x69,0x6e,0x65,0x29,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x72,0x65,\n    0x74,0x75,0x72,0x6e,0x20,0x6c,0x69,0x6e,0x65,0x5f,0x6d,0x61,0x70,0x70,0x69,0x6e,\n    0x67,0x5b,0x6c,0x69,0x6e,0x65,0x5d,0x0a,0x20,0x20,0x20,0x20,0x65,0x6e,0x64,0x0a,\n    0x0a,0x20,0x20,0x20,0x20,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x20,0x63,0x6f,\n    0x72,0x65,0x2e,0x62,0x72,0x65,0x61,0x6b,0x70,0x6f,0x69,0x6e,0x74,0x73,0x2e,0x75,\n    0x70,0x64,0x61,0x74,0x65,0x28,0x6f,0x6c,0x64,0x6c,0x69,0x6e,0x65,0x2c,0x6e,0x65,\n    0x77,0x62,0x70,0x29,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,\n    0x61,0x6c,0x20,0x66,0x69,0x6c,0x65,0x20,0x3d,0x20,0x6e,0x65,0x77,0x62,0x70,0x2e,\n    0x66,0x69,0x6c,0x65,0x6e,0x61,0x6d,0x65,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x6c,0x69,0x6e,0x65,0x20,0x3d,0x20,0x6f,0x6c,\n    0x64,0x6c,0x69,0x6e,0x65,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x6c,0x6f,\n    0x63,0x61,0x6c,0x20,0x66,0x69,0x6c,0x65,0x72,0x65,0x67,0x20,0x3d,0x20,0x66,0x69,\n    0x6c,0x65,0x5f,0x6d,0x61,0x70,0x70,0x69,0x6e,0x67,0x5b,0x66,0x69,0x6c,0x65,0x5d,\n    0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x69,0x66,0x20,0x6e,0x6f,0x74,0x20,\n    0x66,0x69,0x6c,0x65,0x72,0x65,0x67,0x20,0x74,0x68,0x65,0x6e,0x20,0x72,0x65,0x74,\n    0x75,0x72,0x6e,0x20,0x6e,0x69,0x6c,0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x6c,0x69,0x6e,0x65,0x72,0x65,\n    0x67,0x20,0x3d,0x20,0x66,0x69,0x6c,0x65,0x72,0x65,0x67,0x5b,0x6c,0x69,0x6e,0x65,\n    0x5d,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x69,0x66,0x20,0x6e,0x6f,0x74,\n    0x20,0x6c,0x69,0x6e,0x65,0x72,0x65,0x67,0x20,0x74,0x68,0x65,0x6e,0x20,0x72,0x65,\n    0x74,0x75,0x72,0x6e,0x20,0x6e,0x69,0x6c,0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x72,0x65,0x6d,0x6f,0x76,0x65,0x5f,0x6c,0x69,0x6e,0x65,\n    0x5f,0x6d,0x61,0x70,0x70,0x69,0x6e,0x67,0x28,0x6f,0x6c,0x64,0x6c,0x69,0x6e,0x65,\n    0x29,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x66,0x6f,0x72,0x20,0x69,0x3d,\n    0x31,0x2c,0x20,0x23,0x6c,0x69,0x6e,0x65,0x72,0x65,0x67,0x20,0x64,0x6f,0x0a,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x69,0x66,0x20,0x6c,0x69,\n    0x6e,0x65,0x72,0x65,0x67,0x5b,0x69,0x5d,0x2e,0x69,0x64,0x20,0x3d,0x3d,0x20,0x6e,\n    0x65,0x77,0x62,0x70,0x2e,0x69,0x64,0x20,0x74,0x68,0x65,0x6e,0x0a,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x74,0x61,0x62,\n    0x6c,0x65,0x2e,0x72,0x65,0x6d,0x6f,0x76,0x65,0x28,0x6c,0x69,0x6e,0x65,0x72,0x65,\n    0x67,0x2c,0x20,0x69,0x29,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x62,0x72,0x65,0x61,0x6b,0x0a,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x6c,0x69,0x6e,0x65,0x72,0x65,0x67,0x20,0x3d,0x20,0x7b,0x7d,0x0a,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x69,0x6e,0x73,0x65,0x72,0x74,0x5f,0x6c,0x69,0x6e,0x65,\n    0x5f,0x6d,0x61,0x70,0x70,0x69,0x6e,0x67,0x28,0x6e,0x65,0x77,0x62,0x70,0x2e,0x6c,\n    0x69,0x6e,0x65,0x6e,0x6f,0x29,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x74,\n    0x61,0x62,0x6c,0x65,0x2e,0x69,0x6e,0x73,0x65,0x72,0x74,0x28,0x6c,0x69,0x6e,0x65,\n    0x72,0x65,0x67,0x2c,0x20,0x6e,0x65,0x77,0x62,0x70,0x29,0x0a,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x66,0x69,0x6c,0x65,0x72,0x65,0x67,0x5b,0x6e,0x65,0x77,0x62,\n    0x70,0x2e,0x6c,0x69,0x6e,0x65,0x6e,0x6f,0x5d,0x20,0x3d,0x20,0x6c,0x69,0x6e,0x65,\n    0x72,0x65,0x67,0x0a,0x20,0x20,0x20,0x20,0x65,0x6e,0x64,0x0a,0x0a,0x20,0x20,0x20,\n    0x20,0x2d,0x2d,0x2d,0x20,0x49,0x6e,0x73,0x65,0x72,0x74,0x73,0x20,0x61,0x20,0x6e,\n    0x65,0x77,0x20,0x62,0x72,0x65,0x61,0x6b,0x70,0x6f,0x69,0x6e,0x74,0x20,0x69,0x6e,\n    0x74,0x6f,0x20,0x72,0x65,0x67,0x69,0x73,0x74,0x72,0x79,0x0a,0x20,0x20,0x20,0x20,\n    0x2d,0x2d,0x20,0x40,0x70,0x61,0x72,0x61,0x6d,0x20,0x62,0x70,0x20,0x28,0x74,0x61,\n    0x62,0x6c,0x65,0x29,0x20,0x62,0x72,0x65,0x61,0x6b,0x70,0x6f,0x69,0x6e,0x74,0x20,\n    0x64,0x61,0x74,0x61,0x0a,0x20,0x20,0x20,0x20,0x2d,0x2d,0x20,0x40,0x70,0x61,0x72,\n    0x61,0x6d,0x20,0x75,0x72,0x69,0x20,0x28,0x73,0x74,0x72,0x69,0x6e,0x67,0x2c,0x20,\n    0x6f,0x70,0x74,0x69,0x6f,0x6e,0x61,0x6c,0x29,0x20,0x41,0x62,0x73,0x6f,0x6c,0x75,\n    0x74,0x65,0x20,0x66,0x69,0x6c,0x65,0x20,0x55,0x52,0x49,0x2c,0x20,0x66,0x6f,0x72,\n    0x20,0x6c,0x69,0x6e,0x65,0x20,0x62,0x72,0x65,0x61,0x6b,0x70,0x6f,0x69,0x6e,0x74,\n    0x73,0x0a,0x20,0x20,0x20,0x20,0x2d,0x2d,0x20,0x40,0x70,0x61,0x72,0x61,0x6d,0x20,\n    0x6c,0x69,0x6e,0x65,0x20,0x28,0x6e,0x75,0x6d,0x62,0x65,0x72,0x2c,0x20,0x6f,0x70,\n    0x74,0x69,0x6f,0x6e,0x61,0x6c,0x29,0x20,0x4c,0x69,0x6e,0x65,0x20,0x77,0x68,0x65,\n    0x72,0x65,0x20,0x62,0x72,0x65,0x61,0x6b,0x70,0x6f,0x69,0x6e,0x74,0x20,0x73,0x74,\n    0x6f,0x70,0x73,0x2c,0x20,0x66,0x6f,0x72,0x20,0x6c,0x69,0x6e,0x65,0x20,0x62,0x72,\n    0x65,0x61,0x6b,0x70,0x6f,0x69,0x6e,0x74,0x73,0x0a,0x20,0x20,0x20,0x20,0x2d,0x2d,\n    0x20,0x40,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x62,0x72,0x65,0x61,0x6b,0x70,0x6f,\n    0x69,0x6e,0x74,0x20,0x69,0x64,0x65,0x6e,0x74,0x69,0x66,0x69,0x65,0x72,0x0a,0x20,\n    0x20,0x20,0x20,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x20,0x63,0x6f,0x72,0x65,\n    0x2e,0x62,0x72,0x65,0x61,0x6b,0x70,0x6f,0x69,0x6e,0x74,0x73,0x2e,0x69,0x6e,0x73,\n    0x65,0x72,0x74,0x28,0x62,0x70,0x29,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x6c,0x6f,0x63,0x61,0x6c,0x20,0x62,0x70,0x69,0x64,0x20,0x3d,0x20,0x73,0x65,0x71,\n    0x75,0x65,0x6e,0x63,0x65,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x73,0x65,\n    0x71,0x75,0x65,0x6e,0x63,0x65,0x20,0x3d,0x20,0x62,0x70,0x69,0x64,0x20,0x2b,0x20,\n    0x31,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x62,0x70,0x2e,0x69,0x64,0x20,\n    0x3d,0x20,0x62,0x70,0x69,0x64,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x2d,\n    0x2d,0x20,0x72,0x65,0x2d,0x65,0x6e,0x63,0x6f,0x64,0x65,0x20,0x74,0x68,0x65,0x20,\n    0x55,0x52,0x49,0x20,0x74,0x6f,0x20,0x61,0x76,0x6f,0x69,0x64,0x20,0x61,0x6e,0x79,\n    0x20,0x6d,0x69,0x73,0x6d,0x61,0x74,0x63,0x68,0x20,0x28,0x77,0x69,0x74,0x68,0x20,\n    0x61,0x75,0x74,0x68,0x6f,0x72,0x69,0x74,0x79,0x20,0x66,0x6f,0x72,0x20,0x65,0x78,\n    0x61,0x6d,0x70,0x6c,0x65,0x29,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x6c,\n    0x6f,0x63,0x61,0x6c,0x20,0x75,0x72,0x69,0x20,0x3d,0x20,0x75,0x72,0x6c,0x2e,0x70,\n    0x61,0x72,0x73,0x65,0x28,0x62,0x70,0x2e,0x66,0x69,0x6c,0x65,0x6e,0x61,0x6d,0x65,\n    0x29,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x62,0x70,0x2e,0x66,0x69,0x6c,\n    0x65,0x6e,0x61,0x6d,0x65,0x20,0x3d,0x20,0x75,0x72,0x6c,0x2e,0x62,0x75,0x69,0x6c,\n    0x64,0x7b,0x20,0x73,0x63,0x68,0x65,0x6d,0x65,0x3d,0x75,0x72,0x69,0x2e,0x73,0x63,\n    0x68,0x65,0x6d,0x65,0x2c,0x20,0x61,0x75,0x74,0x68,0x6f,0x72,0x69,0x74,0x79,0x3d,\n    0x22,0x22,0x2c,0x20,0x70,0x61,0x74,0x68,0x3d,0x70,0x6c,0x61,0x74,0x66,0x6f,0x72,\n    0x6d,0x2e,0x6e,0x6f,0x72,0x6d,0x61,0x6c,0x69,0x7a,0x65,0x28,0x75,0x72,0x69,0x2e,\n    0x70,0x61,0x74,0x68,0x29,0x7d,0x0a,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x6c,0x6f,0x63,0x61,0x6c,0x20,0x66,0x69,0x6c,0x65,0x72,0x65,0x67,0x20,0x3d,0x20,\n    0x66,0x69,0x6c,0x65,0x5f,0x6d,0x61,0x70,0x70,0x69,0x6e,0x67,0x5b,0x62,0x70,0x2e,\n    0x66,0x69,0x6c,0x65,0x6e,0x61,0x6d,0x65,0x5d,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x69,0x66,0x20,0x6e,0x6f,0x74,0x20,0x66,0x69,0x6c,0x65,0x72,0x65,0x67,\n    0x20,0x74,0x68,0x65,0x6e,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x66,0x69,0x6c,0x65,0x72,0x65,0x67,0x20,0x3d,0x20,0x7b,0x20,0x7d,0x0a,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x66,0x69,0x6c,0x65,\n    0x5f,0x6d,0x61,0x70,0x70,0x69,0x6e,0x67,0x5b,0x62,0x70,0x2e,0x66,0x69,0x6c,0x65,\n    0x6e,0x61,0x6d,0x65,0x5d,0x20,0x3d,0x20,0x66,0x69,0x6c,0x65,0x72,0x65,0x67,0x0a,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x65,0x6e,0x64,0x0a,0x0a,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x6c,0x69,0x6e,0x65,0x72,\n    0x65,0x67,0x20,0x3d,0x20,0x66,0x69,0x6c,0x65,0x72,0x65,0x67,0x5b,0x62,0x70,0x2e,\n    0x6c,0x69,0x6e,0x65,0x6e,0x6f,0x5d,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x69,0x66,0x20,0x6e,0x6f,0x74,0x20,0x6c,0x69,0x6e,0x65,0x72,0x65,0x67,0x20,0x74,\n    0x68,0x65,0x6e,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x6c,0x69,0x6e,0x65,0x72,0x65,0x67,0x20,0x3d,0x20,0x7b,0x7d,0x0a,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x66,0x69,0x6c,0x65,0x72,0x65,0x67,\n    0x5b,0x62,0x70,0x2e,0x6c,0x69,0x6e,0x65,0x6e,0x6f,0x5d,0x20,0x3d,0x20,0x6c,0x69,\n    0x6e,0x65,0x72,0x65,0x67,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x65,0x6e,\n    0x64,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x69,0x6e,0x73,0x65,0x72,0x74,\n    0x5f,0x6c,0x69,0x6e,0x65,0x5f,0x6d,0x61,0x70,0x70,0x69,0x6e,0x67,0x28,0x62,0x70,\n    0x2e,0x6c,0x69,0x6e,0x65,0x6e,0x6f,0x29,0x0a,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x74,0x61,0x62,0x6c,0x65,0x2e,0x69,0x6e,0x73,0x65,0x72,0x74,0x28,0x6c,\n    0x69,0x6e,0x65,0x72,0x65,0x67,0x2c,0x20,0x62,0x70,0x29,0x0a,0x0a,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x69,0x64,0x5f,0x6d,0x61,0x70,0x70,0x69,0x6e,0x67,0x5b,\n    0x62,0x70,0x69,0x64,0x5d,0x20,0x3d,0x20,0x62,0x70,0x0a,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x62,0x70,0x69,0x64,0x0a,0x20,\n    0x20,0x20,0x20,0x65,0x6e,0x64,0x0a,0x0a,0x20,0x20,0x20,0x20,0x2d,0x2d,0x2d,0x20,\n    0x49,0x66,0x20,0x62,0x72,0x65,0x61,0x6b,0x70,0x6f,0x69,0x6e,0x74,0x28,0x73,0x29,\n    0x20,0x65,0x78,0x69,0x73,0x74,0x73,0x20,0x66,0x6f,0x72,0x20,0x67,0x69,0x76,0x65,\n    0x6e,0x20,0x66,0x69,0x6c,0x65,0x2f,0x6c,0x69,0x6e,0x65,0x2c,0x20,0x75,0x70,0x74,\n    0x61,0x74,0x65,0x73,0x20,0x62,0x72,0x65,0x61,0x6b,0x70,0x6f,0x69,0x6e,0x74,0x20,\n    0x63,0x6f,0x75,0x6e,0x74,0x65,0x72,0x73,0x0a,0x20,0x20,0x20,0x20,0x2d,0x2d,0x20,\n    0x61,0x6e,0x64,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x73,0x20,0x77,0x68,0x65,0x74,\n    0x68,0x65,0x72,0x20,0x61,0x20,0x62,0x72,0x65,0x61,0x6b,0x70,0x6f,0x69,0x6e,0x74,\n    0x20,0x68,0x61,0x73,0x20,0x6d,0x61,0x74,0x63,0x68,0x65,0x64,0x20,0x28,0x62,0x6f,\n    0x6f,0x6c,0x65,0x61,0x6e,0x29,0x0a,0x20,0x20,0x20,0x20,0x66,0x75,0x6e,0x63,0x74,\n    0x69,0x6f,0x6e,0x20,0x63,0x6f,0x72,0x65,0x2e,0x62,0x72,0x65,0x61,0x6b,0x70,0x6f,\n    0x69,0x6e,0x74,0x73,0x2e,0x61,0x74,0x28,0x66,0x69,0x6c,0x65,0x2c,0x20,0x6c,0x69,\n    0x6e,0x65,0x29,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,0x61,\n    0x6c,0x20,0x74,0x65,0x6d,0x70,0x20,0x3d,0x20,0x66,0x69,0x6c,0x65,0x3a,0x73,0x75,\n    0x62,0x28,0x23,0x22,0x66,0x69,0x6c,0x65,0x3a,0x2f,0x2f,0x22,0x2b,0x31,0x29,0x0a,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x66,0x6f,0x72,0x20,0x6b,0x2c,0x20,0x5f,\n    0x20,0x69,0x6e,0x20,0x70,0x61,0x69,0x72,0x73,0x28,0x66,0x69,0x6c,0x65,0x5f,0x6d,\n    0x61,0x70,0x70,0x69,0x6e,0x67,0x29,0x20,0x64,0x6f,0x0a,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x69,0x2c,0x6a,0x20,0x3d,0x20,0x6b,0x3a,0x66,0x69,0x6e,\n    0x64,0x28,0x74,0x65,0x6d,0x70,0x29,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x69,0x66,0x28,0x6a,0x20,0x3d,0x3d,0x20,0x23,0x6b,0x29,0x20,0x74,0x68,\n    0x65,0x6e,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x66,0x69,0x6c,0x65,0x20,0x3d,0x20,0x6b,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x62,0x72,0x65,0x61,0x6b,0x3b,0x0a,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x62,0x70,0x73,0x20,0x3d,0x20,0x66,0x69,0x6c,\n    0x65,0x5f,0x6d,0x61,0x70,0x70,0x69,0x6e,0x67,0x5b,0x66,0x69,0x6c,0x65,0x5d,0x20,\n    0x61,0x6e,0x64,0x20,0x66,0x69,0x6c,0x65,0x5f,0x6d,0x61,0x70,0x70,0x69,0x6e,0x67,\n    0x5b,0x66,0x69,0x6c,0x65,0x5d,0x5b,0x6c,0x69,0x6e,0x65,0x5d,0x0a,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x69,0x66,0x20,0x6e,0x6f,0x74,0x20,0x62,0x70,0x73,0x20,\n    0x74,0x68,0x65,0x6e,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x6e,0x69,0x6c,0x20,\n    0x65,0x6e,0x64,0x0a,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,\n    0x61,0x6c,0x20,0x64,0x6f,0x5f,0x62,0x72,0x65,0x61,0x6b,0x20,0x3d,0x20,0x66,0x61,\n    0x6c,0x73,0x65,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x66,0x6f,0x72,0x20,\n    0x5f,0x2c,0x20,0x62,0x70,0x20,0x69,0x6e,0x20,0x70,0x61,0x69,0x72,0x73,0x28,0x62,\n    0x70,0x73,0x29,0x20,0x64,0x6f,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x69,0x66,0x20,0x62,0x70,0x2e,0x73,0x74,0x61,0x74,0x65,0x20,0x3d,\n    0x3d,0x20,0x22,0x65,0x6e,0x61,0x62,0x6c,0x65,0x64,0x22,0x20,0x74,0x68,0x65,0x6e,\n    0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x6d,0x61,0x74,0x63,0x68,0x20,0x3d,0x20,0x74,\n    0x72,0x75,0x65,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x69,0x66,0x20,0x62,0x70,0x2e,0x63,0x6f,0x6e,0x64,0x69,0x74,\n    0x69,0x6f,0x6e,0x20,0x74,0x68,0x65,0x6e,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x2d,0x2d,0x20,\n    0x54,0x4f,0x44,0x4f,0x3a,0x20,0x74,0x68,0x69,0x73,0x20,0x69,0x73,0x20,0x6e,0x6f,\n    0x74,0x20,0x74,0x68,0x65,0x20,0x6f,0x70,0x74,0x69,0x6d,0x61,0x6c,0x20,0x73,0x6f,\n    0x6c,0x75,0x74,0x69,0x6f,0x6e,0x20,0x62,0x65,0x63,0x61,0x75,0x73,0x65,0x20,0x43,\n    0x6f,0x6e,0x74,0x65,0x78,0x74,0x20,0x63,0x61,0x6e,0x20,0x62,0x65,0x20,0x69,0x6e,\n    0x73,0x74,0x61,0x6e,0x74,0x69,0x61,0x74,0x65,0x64,0x20,0x74,0x77,0x69,0x63,0x65,\n    0x20,0x69,0x66,0x20,0x74,0x68,0x65,0x20,0x62,0x72,0x65,0x61,0x6b,0x70,0x6f,0x69,\n    0x6e,0x74,0x20,0x6d,0x61,0x74,0x63,0x68,0x65,0x73,0x0a,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x6c,\n    0x6f,0x63,0x61,0x6c,0x20,0x63,0x78,0x74,0x20,0x3d,0x20,0x63,0x6f,0x6e,0x74,0x65,\n    0x78,0x74,0x2e,0x43,0x6f,0x6e,0x74,0x65,0x78,0x74,0x3a,0x6e,0x65,0x77,0x28,0x61,\n    0x63,0x74,0x69,0x76,0x65,0x5f,0x73,0x65,0x73,0x73,0x69,0x6f,0x6e,0x2e,0x63,0x6f,\n    0x72,0x6f,0x2c,0x20,0x30,0x29,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x73,0x65,0x74,0x62,0x70,\n    0x65,0x6e,0x76,0x28,0x62,0x70,0x2e,0x63,0x6f,0x6e,0x64,0x69,0x74,0x69,0x6f,0x6e,\n    0x2c,0x20,0x63,0x78,0x74,0x29,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,\n    0x20,0x73,0x75,0x63,0x63,0x65,0x73,0x73,0x2c,0x20,0x72,0x65,0x73,0x75,0x6c,0x74,\n    0x20,0x3d,0x20,0x70,0x63,0x61,0x6c,0x6c,0x28,0x62,0x70,0x2e,0x63,0x6f,0x6e,0x64,\n    0x69,0x74,0x69,0x6f,0x6e,0x29,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x69,0x66,0x20,0x6e,0x6f,\n    0x74,0x20,0x73,0x75,0x63,0x63,0x65,0x73,0x73,0x20,0x74,0x68,0x65,0x6e,0x20,0x6c,\n    0x6f,0x67,0x28,0x22,0x45,0x52,0x52,0x4f,0x52,0x22,0x2c,0x20,0x22,0x43,0x6f,0x6e,\n    0x64,0x69,0x74,0x69,0x6f,0x6e,0x20,0x65,0x76,0x61,0x6c,0x75,0x61,0x74,0x69,0x6f,\n    0x6e,0x20,0x66,0x61,0x69,0x6c,0x65,0x64,0x20,0x66,0x6f,0x72,0x20,0x62,0x72,0x65,\n    0x61,0x6b,0x70,0x6f,0x69,0x6e,0x74,0x20,0x61,0x74,0x20,0x25,0x73,0x3a,0x25,0x64,\n    0x3a,0x20,0x25,0x73,0x22,0x2c,0x20,0x66,0x69,0x6c,0x65,0x2c,0x20,0x6c,0x69,0x6e,\n    0x65,0x2c,0x20,0x72,0x65,0x73,0x75,0x6c,0x74,0x29,0x20,0x65,0x6e,0x64,0x0a,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x2d,0x2d,0x20,0x64,0x65,0x62,0x75,0x67,0x67,0x65,0x72,0x20,0x61,\n    0x6c,0x77,0x61,0x79,0x73,0x20,0x73,0x74,0x6f,0x70,0x73,0x20,0x69,0x66,0x20,0x61,\n    0x6e,0x20,0x65,0x72,0x72,0x6f,0x72,0x20,0x6f,0x63,0x63,0x75,0x72,0x73,0x0a,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x6d,0x61,0x74,0x63,0x68,0x20,0x3d,0x20,0x28,0x6e,0x6f,0x74,0x20,\n    0x73,0x75,0x63,0x63,0x65,0x73,0x73,0x29,0x20,0x6f,0x72,0x20,0x72,0x65,0x73,0x75,\n    0x6c,0x74,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x69,0x66,0x20,0x6d,0x61,0x74,0x63,0x68,0x20,\n    0x74,0x68,0x65,0x6e,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x62,0x70,0x2e,0x68,0x69,0x74,0x5f,\n    0x63,0x6f,0x75,0x6e,0x74,0x20,0x3d,0x20,0x62,0x70,0x2e,0x68,0x69,0x74,0x5f,0x63,\n    0x6f,0x75,0x6e,0x74,0x20,0x2b,0x20,0x31,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x69,0x66,0x20,\n    0x63,0x6f,0x72,0x65,0x2e,0x62,0x72,0x65,0x61,0x6b,0x70,0x6f,0x69,0x6e,0x74,0x73,\n    0x2e,0x68,0x69,0x74,0x5f,0x63,0x6f,0x6e,0x64,0x69,0x74,0x69,0x6f,0x6e,0x73,0x5b,\n    0x62,0x70,0x2e,0x68,0x69,0x74,0x5f,0x63,0x6f,0x6e,0x64,0x69,0x74,0x69,0x6f,0x6e,\n    0x5d,0x28,0x62,0x70,0x2e,0x68,0x69,0x74,0x5f,0x63,0x6f,0x75,0x6e,0x74,0x2c,0x20,\n    0x62,0x70,0x2e,0x68,0x69,0x74,0x5f,0x76,0x61,0x6c,0x75,0x65,0x29,0x20,0x74,0x68,\n    0x65,0x6e,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x69,0x66,0x20,0x62,0x70,\n    0x2e,0x74,0x65,0x6d,0x70,0x6f,0x72,0x61,0x72,0x79,0x20,0x74,0x68,0x65,0x6e,0x0a,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x63,0x6f,0x72,0x65,\n    0x2e,0x62,0x72,0x65,0x61,0x6b,0x70,0x6f,0x69,0x6e,0x74,0x73,0x2e,0x72,0x65,0x6d,\n    0x6f,0x76,0x65,0x28,0x62,0x70,0x2e,0x69,0x64,0x29,0x0a,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x64,\n    0x6f,0x5f,0x62,0x72,0x65,0x61,0x6b,0x20,0x3d,0x20,0x74,0x72,0x75,0x65,0x0a,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x2d,0x2d,0x20,0x74,0x68,0x65,0x72,0x65,0x20,\n    0x69,0x73,0x20,0x6e,0x6f,0x20,0x62,0x72,0x65,0x61,0x6b,0x20,0x74,0x6f,0x20,0x68,\n    0x61,0x6e,0x64,0x6c,0x65,0x20,0x6d,0x75,0x6c,0x74,0x69,0x70,0x6c,0x65,0x20,0x62,\n    0x72,0x65,0x61,0x6b,0x70,0x6f,0x69,0x6e,0x74,0x73,0x3a,0x20,0x61,0x6c,0x6c,0x20,\n    0x68,0x69,0x74,0x20,0x63,0x6f,0x75,0x6e,0x74,0x73,0x20,0x6d,0x75,0x73,0x74,0x20,\n    0x62,0x65,0x20,0x75,0x70,0x64,0x61,0x74,0x65,0x64,0x0a,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x65,\n    0x6e,0x64,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x65,\n    0x6e,0x64,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x72,0x65,0x74,0x75,0x72,\n    0x6e,0x20,0x64,0x6f,0x5f,0x62,0x72,0x65,0x61,0x6b,0x0a,0x20,0x20,0x20,0x20,0x65,\n    0x6e,0x64,0x0a,0x0a,0x20,0x20,0x20,0x20,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,\n    0x20,0x63,0x6f,0x72,0x65,0x2e,0x62,0x72,0x65,0x61,0x6b,0x70,0x6f,0x69,0x6e,0x74,\n    0x73,0x2e,0x67,0x65,0x74,0x28,0x69,0x64,0x29,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x69,0x66,0x20,0x69,0x64,0x20,0x74,0x68,0x65,0x6e,0x20,0x72,0x65,0x74,\n    0x75,0x72,0x6e,0x20,0x69,0x64,0x5f,0x6d,0x61,0x70,0x70,0x69,0x6e,0x67,0x5b,0x69,\n    0x64,0x5d,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x65,0x6c,0x73,0x65,0x20,\n    0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x69,0x64,0x5f,0x6d,0x61,0x70,0x70,0x69,0x6e,\n    0x67,0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,0x20,0x20,0x65,0x6e,0x64,0x0a,0x0a,0x20,\n    0x20,0x20,0x20,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x20,0x63,0x6f,0x72,0x65,\n    0x2e,0x62,0x72,0x65,0x61,0x6b,0x70,0x6f,0x69,0x6e,0x74,0x73,0x2e,0x72,0x65,0x6d,\n    0x6f,0x76,0x65,0x28,0x69,0x64,0x29,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x6c,0x6f,0x63,0x61,0x6c,0x20,0x62,0x70,0x20,0x3d,0x20,0x69,0x64,0x5f,0x6d,0x61,\n    0x70,0x70,0x69,0x6e,0x67,0x5b,0x69,0x64,0x5d,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x69,0x66,0x20,0x62,0x70,0x20,0x74,0x68,0x65,0x6e,0x0a,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x69,0x64,0x5f,0x6d,0x61,0x70,0x70,\n    0x69,0x6e,0x67,0x5b,0x69,0x64,0x5d,0x20,0x3d,0x20,0x6e,0x69,0x6c,0x0a,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,\n    0x6c,0x69,0x6e,0x65,0x72,0x65,0x67,0x20,0x3d,0x20,0x66,0x69,0x6c,0x65,0x5f,0x6d,\n    0x61,0x70,0x70,0x69,0x6e,0x67,0x5b,0x62,0x70,0x2e,0x66,0x69,0x6c,0x65,0x6e,0x61,\n    0x6d,0x65,0x5d,0x5b,0x62,0x70,0x2e,0x6c,0x69,0x6e,0x65,0x6e,0x6f,0x5d,0x0a,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x66,0x6f,0x72,0x20,0x69,\n    0x3d,0x31,0x2c,0x20,0x23,0x6c,0x69,0x6e,0x65,0x72,0x65,0x67,0x20,0x64,0x6f,0x0a,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x69,0x66,0x20,0x6c,0x69,0x6e,0x65,0x72,0x65,0x67,0x5b,0x69,0x5d,0x20,0x3d,0x3d,\n    0x20,0x62,0x70,0x20,0x74,0x68,0x65,0x6e,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x74,0x61,0x62,\n    0x6c,0x65,0x2e,0x72,0x65,0x6d,0x6f,0x76,0x65,0x28,0x6c,0x69,0x6e,0x65,0x72,0x65,\n    0x67,0x2c,0x20,0x69,0x29,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x62,0x72,0x65,0x61,0x6b,0x0a,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x65,0x6e,0x64,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x65,0x6e,0x64,0x0a,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x72,0x65,0x6d,0x6f,0x76,0x65,0x5f,0x6c,0x69,0x6e,0x65,0x5f,0x6d,0x61,0x70,\n    0x70,0x69,0x6e,0x67,0x28,0x62,0x70,0x2e,0x6c,0x69,0x6e,0x65,0x6e,0x6f,0x29,0x0a,\n    0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x2d,0x2d,0x20,\n    0x63,0x6c,0x65,0x61,0x6e,0x75,0x70,0x20,0x66,0x69,0x6c,0x65,0x5f,0x6d,0x61,0x70,\n    0x70,0x69,0x6e,0x67,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x69,0x66,0x20,0x6e,0x6f,0x74,0x20,0x6e,0x65,0x78,0x74,0x28,0x6c,0x69,0x6e,\n    0x65,0x72,0x65,0x67,0x29,0x20,0x74,0x68,0x65,0x6e,0x20,0x66,0x69,0x6c,0x65,0x5f,\n    0x6d,0x61,0x70,0x70,0x69,0x6e,0x67,0x5b,0x62,0x70,0x2e,0x66,0x69,0x6c,0x65,0x6e,\n    0x61,0x6d,0x65,0x5d,0x5b,0x62,0x70,0x2e,0x6c,0x69,0x6e,0x65,0x6e,0x6f,0x5d,0x20,\n    0x3d,0x20,0x6e,0x69,0x6c,0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x69,0x66,0x20,0x6e,0x6f,0x74,0x20,0x6e,0x65,0x78,\n    0x74,0x28,0x66,0x69,0x6c,0x65,0x5f,0x6d,0x61,0x70,0x70,0x69,0x6e,0x67,0x5b,0x62,\n    0x70,0x2e,0x66,0x69,0x6c,0x65,0x6e,0x61,0x6d,0x65,0x5d,0x29,0x20,0x74,0x68,0x65,\n    0x6e,0x20,0x66,0x69,0x6c,0x65,0x5f,0x6d,0x61,0x70,0x70,0x69,0x6e,0x67,0x5b,0x62,\n    0x70,0x2e,0x66,0x69,0x6c,0x65,0x6e,0x61,0x6d,0x65,0x5d,0x20,0x3d,0x20,0x6e,0x69,\n    0x6c,0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x74,0x72,0x75,0x65,0x0a,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x66,0x61,0x6c,0x73,0x65,0x0a,0x20,\n    0x20,0x20,0x20,0x65,0x6e,0x64,0x0a,0x0a,0x20,0x20,0x20,0x20,0x2d,0x2d,0x2d,0x20,\n    0x52,0x65,0x74,0x75,0x72,0x6e,0x73,0x20,0x61,0x6e,0x20,0x58,0x4d,0x4c,0x20,0x64,\n    0x61,0x74,0x61,0x20,0x73,0x74,0x72,0x75,0x63,0x74,0x75,0x72,0x65,0x20,0x74,0x68,\n    0x61,0x74,0x20,0x64,0x65,0x73,0x63,0x72,0x69,0x62,0x65,0x73,0x20,0x67,0x69,0x76,\n    0x65,0x6e,0x20,0x62,0x72,0x65,0x61,0x6b,0x70,0x6f,0x69,0x6e,0x74,0x0a,0x20,0x20,\n    0x20,0x20,0x2d,0x2d,0x20,0x40,0x70,0x61,0x72,0x61,0x6d,0x20,0x69,0x64,0x20,0x28,\n    0x6e,0x75,0x6d,0x62,0x65,0x72,0x29,0x20,0x62,0x72,0x65,0x61,0x6b,0x70,0x6f,0x69,\n    0x6e,0x74,0x20,0x49,0x44,0x0a,0x20,0x20,0x20,0x20,0x2d,0x2d,0x20,0x40,0x72,0x65,\n    0x74,0x75,0x72,0x6e,0x20,0x54,0x61,0x62,0x6c,0x65,0x20,0x64,0x65,0x73,0x63,0x72,\n    0x69,0x62,0x69,0x6e,0x67,0x20,0x61,0x20,0x3c,0x62,0x72,0x65,0x61,0x6b,0x70,0x6f,\n    0x6f,0x69,0x6e,0x74,0x3e,0x20,0x74,0x61,0x67,0x20,0x6f,0x72,0x20,0x6e,0x69,0x6c,\n    0x20,0x66,0x6f,0x6c,0x6c,0x6f,0x77,0x65,0x64,0x20,0x62,0x79,0x20,0x61,0x6e,0x20,\n    0x65,0x72,0x72,0x6f,0x72,0x20,0x6d,0x65,0x73,0x73,0x61,0x67,0x65,0x0a,0x20,0x20,\n    0x20,0x20,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x20,0x63,0x6f,0x72,0x65,0x2e,\n    0x62,0x72,0x65,0x61,0x6b,0x70,0x6f,0x69,0x6e,0x74,0x73,0x2e,0x67,0x65,0x74,0x5f,\n    0x78,0x6d,0x6c,0x28,0x69,0x64,0x29,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x6c,0x6f,0x63,0x61,0x6c,0x20,0x62,0x70,0x20,0x3d,0x20,0x69,0x64,0x5f,0x6d,0x61,\n    0x70,0x70,0x69,0x6e,0x67,0x5b,0x69,0x64,0x5d,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x69,0x66,0x20,0x6e,0x6f,0x74,0x20,0x62,0x70,0x20,0x74,0x68,0x65,0x6e,\n    0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x6e,0x69,0x6c,0x2c,0x20,0x22,0x4e,0x6f,\n    0x20,0x73,0x75,0x63,0x68,0x20,0x62,0x72,0x65,0x61,0x6b,0x70,0x6f,0x69,0x6e,0x74,\n    0x3a,0x20,0x22,0x2e,0x2e,0x74,0x6f,0x73,0x74,0x72,0x69,0x6e,0x67,0x28,0x69,0x64,\n    0x29,0x20,0x65,0x6e,0x64,0x0a,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x6c,\n    0x6f,0x63,0x61,0x6c,0x20,0x72,0x65,0x73,0x70,0x6f,0x6e,0x73,0x65,0x20,0x3d,0x20,\n    0x7b,0x20,0x74,0x61,0x67,0x20,0x3d,0x20,0x22,0x62,0x72,0x65,0x61,0x6b,0x70,0x6f,\n    0x69,0x6e,0x74,0x22,0x2c,0x20,0x61,0x74,0x74,0x72,0x20,0x3d,0x20,0x7b,0x20,0x7d,\n    0x20,0x7d,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x66,0x6f,0x72,0x20,0x6b,\n    0x2c,0x76,0x20,0x69,0x6e,0x20,0x70,0x61,0x69,0x72,0x73,0x28,0x62,0x70,0x29,0x20,\n    0x64,0x6f,0x20,0x72,0x65,0x73,0x70,0x6f,0x6e,0x73,0x65,0x2e,0x61,0x74,0x74,0x72,\n    0x5b,0x6b,0x5d,0x20,0x3d,0x20,0x76,0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x69,0x66,0x20,0x62,0x70,0x2e,0x65,0x78,0x70,0x72,0x65,0x73,\n    0x73,0x69,0x6f,0x6e,0x20,0x74,0x68,0x65,0x6e,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x72,0x65,0x73,0x70,0x6f,0x6e,0x73,0x65,0x5b,0x31,\n    0x5d,0x20,0x3d,0x20,0x7b,0x20,0x74,0x61,0x67,0x20,0x3d,0x20,0x22,0x65,0x78,0x70,\n    0x72,0x65,0x73,0x73,0x69,0x6f,0x6e,0x22,0x2c,0x20,0x20,0x62,0x70,0x2e,0x65,0x78,\n    0x70,0x72,0x65,0x73,0x73,0x69,0x6f,0x6e,0x20,0x7d,0x0a,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x65,0x6e,0x64,0x0a,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x2d,0x2d,0x20,0x69,0x6e,0x74,0x65,0x72,0x6e,0x61,0x6c,0x20,0x75,0x73,0x65,0x20,\n    0x6f,0x6e,0x6c,0x79,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x72,0x65,0x73,\n    0x70,0x6f,0x6e,0x73,0x65,0x2e,0x61,0x74,0x74,0x72,0x2e,0x65,0x78,0x70,0x72,0x65,\n    0x73,0x73,0x69,0x6f,0x6e,0x20,0x3d,0x20,0x6e,0x69,0x6c,0x0a,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x72,0x65,0x73,0x70,0x6f,0x6e,0x73,0x65,0x2e,0x61,0x74,0x74,\n    0x72,0x2e,0x63,0x6f,0x6e,0x64,0x69,0x74,0x69,0x6f,0x6e,0x20,0x3d,0x20,0x6e,0x69,\n    0x6c,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x72,0x65,0x73,0x70,0x6f,0x6e,\n    0x73,0x65,0x2e,0x61,0x74,0x74,0x72,0x2e,0x74,0x65,0x6d,0x70,0x6f,0x72,0x61,0x72,\n    0x79,0x20,0x3d,0x20,0x6e,0x69,0x6c,0x20,0x2d,0x2d,0x20,0x54,0x4f,0x44,0x4f,0x3a,\n    0x20,0x74,0x68,0x65,0x20,0x73,0x70,0x65,0x63,0x69,0x66,0x69,0x63,0x61,0x74,0x69,\n    0x6f,0x6e,0x20,0x69,0x73,0x20,0x6e,0x6f,0x74,0x20,0x63,0x6c,0x65,0x61,0x72,0x20,\n    0x77,0x68,0x65,0x74,0x68,0x65,0x72,0x20,0x74,0x68,0x69,0x73,0x20,0x73,0x68,0x6f,\n    0x75,0x6c,0x64,0x20,0x62,0x65,0x20,0x70,0x72,0x6f,0x76,0x69,0x64,0x65,0x64,0x2c,\n    0x20,0x73,0x65,0x65,0x20,0x6f,0x74,0x68,0x65,0x72,0x20,0x69,0x6d,0x70,0x6c,0x65,\n    0x6d,0x65,0x6e,0x74,0x61,0x74,0x69,0x6f,0x6e,0x73,0x0a,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x72,0x65,0x73,0x70,0x6f,0x6e,\n    0x73,0x65,0x0a,0x20,0x20,0x20,0x20,0x65,0x6e,0x64,0x0a,0x0a,0x20,0x20,0x20,0x20,\n    0x2d,0x2d,0x2d,0x20,0x52,0x65,0x67,0x69,0x73,0x74,0x65,0x72,0x20,0x61,0x6e,0x20,\n    0x65,0x76,0x65,0x6e,0x74,0x20,0x74,0x6f,0x20,0x62,0x65,0x20,0x74,0x72,0x69,0x67,\n    0x67,0x65,0x72,0x65,0x64,0x2e,0x0a,0x20,0x20,0x20,0x20,0x2d,0x2d,0x20,0x40,0x70,\n    0x61,0x72,0x61,0x6d,0x20,0x65,0x76,0x65,0x6e,0x74,0x20,0x65,0x76,0x65,0x6e,0x74,\n    0x20,0x6e,0x61,0x6d,0x65,0x20,0x74,0x6f,0x20,0x72,0x65,0x67,0x69,0x73,0x74,0x65,\n    0x72,0x20,0x28,0x6d,0x75,0x73,0x74,0x20,0x62,0x65,0x20,0x22,0x6f,0x76,0x65,0x72,\n    0x22,0x2c,0x20,0x22,0x6f,0x75,0x74,0x22,0x20,0x6f,0x72,0x20,0x22,0x69,0x6e,0x74,\n    0x6f,0x22,0x29,0x0a,0x20,0x20,0x20,0x20,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,\n    0x20,0x63,0x6f,0x72,0x65,0x2e,0x65,0x76,0x65,0x6e,0x74,0x73,0x2e,0x72,0x65,0x67,\n    0x69,0x73,0x74,0x65,0x72,0x28,0x65,0x76,0x65,0x6e,0x74,0x29,0x0a,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x74,0x68,0x72,0x65,0x61,\n    0x64,0x20,0x3d,0x20,0x61,0x63,0x74,0x69,0x76,0x65,0x5f,0x73,0x65,0x73,0x73,0x69,\n    0x6f,0x6e,0x2e,0x63,0x6f,0x72,0x6f,0x5b,0x31,0x5d,0x0a,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x6c,0x6f,0x67,0x28,0x22,0x44,0x45,0x42,0x55,0x47,0x22,0x2c,0x20,\n    0x22,0x52,0x65,0x67,0x69,0x73,0x74,0x65,0x72,0x65,0x64,0x20,0x25,0x73,0x20,0x65,\n    0x76,0x65,0x6e,0x74,0x20,0x66,0x6f,0x72,0x20,0x25,0x73,0x20,0x28,0x25,0x64,0x29,\n    0x22,0x2c,0x20,0x65,0x76,0x65,0x6e,0x74,0x2c,0x20,0x74,0x6f,0x73,0x74,0x72,0x69,\n    0x6e,0x67,0x28,0x74,0x68,0x72,0x65,0x61,0x64,0x29,0x2c,0x20,0x73,0x74,0x61,0x63,\n    0x6b,0x5f,0x6c,0x65,0x76,0x65,0x6c,0x73,0x5b,0x74,0x68,0x72,0x65,0x61,0x64,0x5d,\n    0x29,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x69,0x66,0x20,0x65,0x76,0x65,\n    0x6e,0x74,0x20,0x3d,0x3d,0x20,0x22,0x69,0x6e,0x74,0x6f,0x22,0x20,0x74,0x68,0x65,\n    0x6e,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x73,0x74,\n    0x65,0x70,0x5f,0x69,0x6e,0x74,0x6f,0x20,0x3d,0x20,0x74,0x72,0x75,0x65,0x0a,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x65,0x6c,0x73,0x65,0x0a,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x77,0x61,0x69,0x74,0x69,0x6e,0x67,0x5f,\n    0x73,0x65,0x73,0x73,0x69,0x6f,0x6e,0x73,0x5b,0x74,0x68,0x72,0x65,0x61,0x64,0x5d,\n    0x20,0x3d,0x20,0x7b,0x20,0x65,0x76,0x65,0x6e,0x74,0x2c,0x20,0x73,0x74,0x61,0x63,\n    0x6b,0x5f,0x6c,0x65,0x76,0x65,0x6c,0x73,0x5b,0x74,0x68,0x72,0x65,0x61,0x64,0x5d,\n    0x20,0x7d,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x65,0x6e,0x64,0x0a,0x20,\n    0x20,0x20,0x20,0x65,0x6e,0x64,0x0a,0x0a,0x20,0x20,0x20,0x20,0x2d,0x2d,0x2d,0x20,\n    0x52,0x65,0x74,0x75,0x72,0x6e,0x73,0x20,0x69,0x66,0x20,0x61,0x6e,0x20,0x65,0x76,\n    0x65,0x6e,0x74,0x20,0x28,0x73,0x74,0x65,0x70,0x20,0x69,0x6e,0x74,0x6f,0x2c,0x20,\n    0x6f,0x76,0x65,0x72,0x2c,0x20,0x6f,0x75,0x74,0x29,0x20,0x69,0x73,0x20,0x74,0x72,\n    0x69,0x67,0x67,0x65,0x72,0x65,0x64,0x2e,0x0a,0x20,0x20,0x20,0x20,0x2d,0x2d,0x20,\n    0x44,0x6f,0x65,0x73,0x20,0x2a,0x6e,0x6f,0x74,0x2a,0x20,0x64,0x69,0x73,0x63,0x61,\n    0x72,0x64,0x20,0x65,0x76,0x65,0x6e,0x74,0x73,0x20,0x28,0x65,0x76,0x65,0x6e,0x20,\n    0x69,0x66,0x20,0x74,0x68,0x65,0x79,0x20,0x6d,0x61,0x74,0x63,0x68,0x29,0x20,0x61,\n    0x73,0x20,0x65,0x76,0x65,0x6e,0x74,0x20,0x6d,0x75,0x73,0x74,0x20,0x62,0x65,0x20,\n    0x64,0x69,0x73,0x63,0x61,0x72,0x64,0x65,0x64,0x20,0x6d,0x61,0x6e,0x75,0x61,0x6c,\n    0x6c,0x79,0x20,0x69,0x66,0x20,0x61,0x20,0x62,0x72,0x65,0x61,0x6b,0x70,0x6f,0x69,\n    0x6e,0x74,0x20,0x6d,0x61,0x74,0x63,0x68,0x20,0x62,0x65,0x66,0x6f,0x72,0x65,0x20,\n    0x61,0x6e,0x79,0x77,0x61,0x79,0x2e,0x0a,0x20,0x20,0x20,0x20,0x2d,0x2d,0x20,0x40,\n    0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x74,0x72,0x75,0x65,0x20,0x69,0x66,0x20,0x61,\n    0x6e,0x20,0x65,0x76,0x65,0x6e,0x74,0x20,0x68,0x61,0x73,0x20,0x6d,0x61,0x74,0x63,\n    0x68,0x65,0x64,0x2c,0x20,0x66,0x61,0x6c,0x73,0x65,0x20,0x6f,0x74,0x68,0x65,0x72,\n    0x77,0x69,0x73,0x65,0x0a,0x20,0x20,0x20,0x20,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,\n    0x6e,0x20,0x63,0x6f,0x72,0x65,0x2e,0x65,0x76,0x65,0x6e,0x74,0x73,0x2e,0x64,0x6f,\n    0x65,0x73,0x5f,0x6d,0x61,0x74,0x63,0x68,0x28,0x6c,0x69,0x6e,0x65,0x29,0x0a,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x69,0x66,0x20,0x73,0x74,0x65,0x70,0x5f,0x69,\n    0x6e,0x74,0x6f,0x20,0x61,0x6e,0x64,0x20,0x63,0x6f,0x72,0x65,0x2e,0x70,0x72,0x65,\n    0x76,0x5f,0x62,0x72,0x65,0x61,0x6b,0x5f,0x6c,0x69,0x6e,0x65,0x20,0x7e,0x3d,0x20,\n    0x6c,0x69,0x6e,0x65,0x20,0x74,0x68,0x65,0x6e,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,\n    0x20,0x74,0x72,0x75,0x65,0x20,0x65,0x6e,0x64,0x0a,0x0a,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x74,0x68,0x72,0x65,0x61,0x64,0x20,\n    0x3d,0x20,0x61,0x63,0x74,0x69,0x76,0x65,0x5f,0x73,0x65,0x73,0x73,0x69,0x6f,0x6e,\n    0x2e,0x63,0x6f,0x72,0x6f,0x5b,0x31,0x5d,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x65,0x76,0x65,0x6e,0x74,0x20,0x3d,0x20,0x77,\n    0x61,0x69,0x74,0x69,0x6e,0x67,0x5f,0x73,0x65,0x73,0x73,0x69,0x6f,0x6e,0x73,0x5b,\n    0x74,0x68,0x72,0x65,0x61,0x64,0x5d,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x69,0x66,0x20,0x65,0x76,0x65,0x6e,0x74,0x20,0x74,0x68,0x65,0x6e,0x0a,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,\n    0x65,0x76,0x65,0x6e,0x74,0x5f,0x74,0x79,0x70,0x65,0x2c,0x20,0x74,0x61,0x72,0x67,\n    0x65,0x74,0x5f,0x6c,0x65,0x76,0x65,0x6c,0x20,0x3d,0x20,0x75,0x6e,0x70,0x61,0x63,\n    0x6b,0x28,0x65,0x76,0x65,0x6e,0x74,0x29,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x63,0x75,0x72,0x72,0x65,\n    0x6e,0x74,0x5f,0x6c,0x65,0x76,0x65,0x6c,0x20,0x3d,0x20,0x73,0x74,0x61,0x63,0x6b,\n    0x5f,0x6c,0x65,0x76,0x65,0x6c,0x73,0x5b,0x74,0x68,0x72,0x65,0x61,0x64,0x5d,0x0a,\n    0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x69,0x66,0x20,\n    0x28,0x65,0x76,0x65,0x6e,0x74,0x5f,0x74,0x79,0x70,0x65,0x20,0x3d,0x3d,0x20,0x22,\n    0x6f,0x76,0x65,0x72,0x22,0x20,0x61,0x6e,0x64,0x20,0x63,0x75,0x72,0x72,0x65,0x6e,\n    0x74,0x5f,0x6c,0x65,0x76,0x65,0x6c,0x20,0x3c,0x3d,0x20,0x74,0x61,0x72,0x67,0x65,\n    0x74,0x5f,0x6c,0x65,0x76,0x65,0x6c,0x20,0x61,0x6e,0x64,0x20,0x63,0x6f,0x72,0x65,\n    0x2e,0x70,0x72,0x65,0x76,0x5f,0x62,0x72,0x65,0x61,0x6b,0x5f,0x6c,0x69,0x6e,0x65,\n    0x20,0x7e,0x3d,0x20,0x6c,0x69,0x6e,0x65,0x29,0x20,0x6f,0x72,0x20,0x20,0x20,0x2d,\n    0x2d,0x20,0x73,0x74,0x65,0x70,0x20,0x6f,0x76,0x65,0x72,0x0a,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x28,0x65,0x76,0x65,0x6e,\n    0x74,0x5f,0x74,0x79,0x70,0x65,0x20,0x3d,0x3d,0x20,0x22,0x6f,0x75,0x74,0x22,0x20,\n    0x20,0x61,0x6e,0x64,0x20,0x63,0x75,0x72,0x72,0x65,0x6e,0x74,0x5f,0x6c,0x65,0x76,\n    0x65,0x6c,0x20,0x3c,0x20,0x20,0x74,0x61,0x72,0x67,0x65,0x74,0x5f,0x6c,0x65,0x76,\n    0x65,0x6c,0x29,0x20,0x74,0x68,0x65,0x6e,0x20,0x2d,0x2d,0x20,0x73,0x74,0x65,0x70,\n    0x20,0x6f,0x75,0x74,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x6c,0x6f,0x67,0x28,0x22,0x44,0x45,0x42,0x55,0x47,0x22,\n    0x2c,0x20,0x22,0x45,0x76,0x65,0x6e,0x74,0x20,0x25,0x73,0x20,0x6d,0x61,0x74,0x63,\n    0x68,0x65,0x64,0x21,0x22,0x2c,0x20,0x65,0x76,0x65,0x6e,0x74,0x5f,0x74,0x79,0x70,\n    0x65,0x29,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x74,0x72,0x75,0x65,0x0a,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x65,0x6e,0x64,0x0a,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x66,0x61,0x6c,0x73,0x65,0x0a,\n    0x20,0x20,0x20,0x20,0x65,0x6e,0x64,0x0a,0x0a,0x20,0x20,0x20,0x20,0x2d,0x2d,0x2d,\n    0x20,0x44,0x69,0x73,0x63,0x61,0x72,0x64,0x73,0x20,0x65,0x76,0x65,0x6e,0x74,0x20,\n    0x66,0x6f,0x72,0x20,0x63,0x75,0x72,0x72,0x65,0x6e,0x74,0x20,0x74,0x68,0x72,0x65,\n    0x61,0x64,0x20,0x28,0x69,0x66,0x20,0x61,0x6e,0x79,0x29,0x0a,0x20,0x20,0x20,0x20,\n    0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x20,0x63,0x6f,0x72,0x65,0x2e,0x65,0x76,\n    0x65,0x6e,0x74,0x73,0x2e,0x64,0x69,0x73,0x63,0x61,0x72,0x64,0x28,0x29,0x0a,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x77,0x61,0x69,0x74,0x69,0x6e,0x67,0x5f,0x73,\n    0x65,0x73,0x73,0x69,0x6f,0x6e,0x73,0x5b,0x61,0x63,0x74,0x69,0x76,0x65,0x5f,0x73,\n    0x65,0x73,0x73,0x69,0x6f,0x6e,0x2e,0x63,0x6f,0x72,0x6f,0x5b,0x31,0x5d,0x5d,0x20,\n    0x3d,0x20,0x6e,0x69,0x6c,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x73,0x74,\n    0x65,0x70,0x5f,0x69,0x6e,0x74,0x6f,0x20,0x3d,0x20,0x6e,0x69,0x6c,0x0a,0x20,0x20,\n    0x20,0x20,0x65,0x6e,0x64,0x0a,0x65,0x6e,0x64,0x0a,0x0a,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x0a,0x2d,0x2d,0x20,0x20,0x44,\n    0x65,0x62,0x75,0x67,0x67,0x65,0x72,0x20,0x6d,0x61,0x69,0x6e,0x20,0x6c,0x6f,0x6f,\n    0x70,0x0a,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,0x2d,\n    0x2d,0x0a,0x0a,0x2d,0x2d,0x2d,0x20,0x53,0x65,0x6e,0x64,0x20,0x74,0x68,0x65,0x20,\n    0x58,0x4d,0x4c,0x20,0x72,0x65,0x73,0x70,0x6f,0x6e,0x73,0x65,0x20,0x74,0x6f,0x20,\n    0x74,0x68,0x65,0x20,0x70,0x72,0x65,0x76,0x69,0x6f,0x75,0x73,0x20,0x63,0x6f,0x6e,\n    0x74,0x69,0x6e,0x75,0x61,0x74,0x69,0x6f,0x6e,0x20,0x63,0x6f,0x6d,0x6d,0x61,0x6e,\n    0x64,0x20,0x61,0x6e,0x64,0x20,0x63,0x6c,0x65,0x61,0x72,0x20,0x74,0x68,0x65,0x20,\n    0x70,0x72,0x65,0x76,0x69,0x6f,0x75,0x73,0x20,0x63,0x6f,0x6e,0x74,0x65,0x78,0x74,\n    0x0a,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x20,0x63,0x6f,0x72,0x65,0x2e,0x70,\n    0x72,0x65,0x76,0x69,0x6f,0x75,0x73,0x5f,0x63,0x6f,0x6e,0x74,0x65,0x78,0x74,0x5f,\n    0x72,0x65,0x73,0x70,0x6f,0x6e,0x73,0x65,0x28,0x73,0x65,0x6c,0x66,0x2c,0x20,0x72,\n    0x65,0x61,0x73,0x6f,0x6e,0x29,0x0a,0x20,0x20,0x20,0x20,0x73,0x65,0x6c,0x66,0x2e,\n    0x70,0x72,0x65,0x76,0x69,0x6f,0x75,0x73,0x5f,0x63,0x6f,0x6e,0x74,0x65,0x78,0x74,\n    0x2e,0x73,0x74,0x61,0x74,0x75,0x73,0x20,0x3d,0x20,0x73,0x65,0x6c,0x66,0x2e,0x73,\n    0x74,0x61,0x74,0x65,0x0a,0x20,0x20,0x20,0x20,0x73,0x65,0x6c,0x66,0x2e,0x70,0x72,\n    0x65,0x76,0x69,0x6f,0x75,0x73,0x5f,0x63,0x6f,0x6e,0x74,0x65,0x78,0x74,0x2e,0x72,\n    0x65,0x61,0x73,0x6f,0x6e,0x20,0x3d,0x20,0x72,0x65,0x61,0x73,0x6f,0x6e,0x20,0x6f,\n    0x72,0x20,0x22,0x6f,0x6b,0x22,0x0a,0x20,0x20,0x20,0x20,0x64,0x62,0x67,0x70,0x2e,\n    0x73,0x65,0x6e,0x64,0x5f,0x78,0x6d,0x6c,0x28,0x73,0x65,0x6c,0x66,0x2e,0x73,0x6b,\n    0x74,0x2c,0x20,0x7b,0x20,0x74,0x61,0x67,0x20,0x3d,0x20,0x22,0x72,0x65,0x73,0x70,\n    0x6f,0x6e,0x73,0x65,0x22,0x2c,0x20,0x61,0x74,0x74,0x72,0x20,0x3d,0x20,0x73,0x65,\n    0x6c,0x66,0x2e,0x70,0x72,0x65,0x76,0x69,0x6f,0x75,0x73,0x5f,0x63,0x6f,0x6e,0x74,\n    0x65,0x78,0x74,0x20,0x7d,0x20,0x29,0x0a,0x20,0x20,0x20,0x20,0x73,0x65,0x6c,0x66,\n    0x2e,0x70,0x72,0x65,0x76,0x69,0x6f,0x75,0x73,0x5f,0x63,0x6f,0x6e,0x74,0x65,0x78,\n    0x74,0x20,0x3d,0x20,0x6e,0x69,0x6c,0x0a,0x65,0x6e,0x64,0x0a,0x0a,0x6c,0x6f,0x63,\n    0x61,0x6c,0x20,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x20,0x63,0x6c,0x65,0x61,\n    0x6e,0x75,0x70,0x28,0x29,0x0a,0x20,0x20,0x20,0x20,0x63,0x6f,0x72,0x6f,0x75,0x74,\n    0x69,0x6e,0x65,0x2e,0x72,0x65,0x73,0x75,0x6d,0x65,0x2c,0x20,0x63,0x6f,0x72,0x6f,\n    0x75,0x74,0x69,0x6e,0x65,0x2e,0x77,0x72,0x61,0x70,0x20,0x3d,0x20,0x63,0x6f,0x72,\n    0x65,0x73,0x75,0x6d,0x65,0x2c,0x20,0x63,0x6f,0x77,0x72,0x61,0x70,0x0a,0x20,0x20,\n    0x20,0x20,0x66,0x6f,0x72,0x20,0x5f,0x2c,0x20,0x63,0x6f,0x72,0x6f,0x20,0x69,0x6e,\n    0x20,0x70,0x61,0x69,0x72,0x73,0x28,0x63,0x6f,0x72,0x65,0x2e,0x61,0x63,0x74,0x69,\n    0x76,0x65,0x5f,0x63,0x6f,0x72,0x6f,0x75,0x74,0x69,0x6e,0x65,0x73,0x2e,0x66,0x72,\n    0x6f,0x6d,0x5f,0x69,0x64,0x29,0x20,0x64,0x6f,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x64,0x65,0x62,0x75,0x67,0x2e,0x73,0x65,0x74,0x68,0x6f,0x6f,0x6b,0x28,\n    0x63,0x6f,0x72,0x6f,0x29,0x0a,0x20,0x20,0x20,0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,\n    0x20,0x20,0x2d,0x2d,0x20,0x74,0x6f,0x20,0x72,0x65,0x6d,0x6f,0x76,0x65,0x20,0x68,\n    0x6f,0x6f,0x6b,0x20,0x6f,0x6e,0x20,0x74,0x68,0x65,0x20,0x6d,0x61,0x69,0x6e,0x20,\n    0x63,0x6f,0x72,0x6f,0x75,0x74,0x69,0x6e,0x65,0x2c,0x20,0x69,0x74,0x20,0x6d,0x75,\n    0x73,0x74,0x20,0x62,0x65,0x20,0x74,0x68,0x65,0x20,0x63,0x75,0x72,0x72,0x65,0x6e,\n    0x74,0x20,0x6f,0x6e,0x65,0x20,0x28,0x6f,0x74,0x68,0x65,0x72,0x77,0x69,0x73,0x65,\n    0x2c,0x20,0x74,0x68,0x69,0x73,0x20,0x69,0x73,0x20,0x61,0x20,0x6e,0x6f,0x2d,0x6f,\n    0x70,0x29,0x20,0x61,0x6e,0x64,0x20,0x74,0x68,0x69,0x73,0x20,0x66,0x75,0x6e,0x63,\n    0x74,0x69,0x6f,0x6e,0x0a,0x20,0x20,0x20,0x20,0x2d,0x2d,0x20,0x68,0x61,0x76,0x65,\n    0x20,0x74,0x6f,0x20,0x62,0x65,0x20,0x63,0x61,0x6c,0x6c,0x65,0x64,0x20,0x61,0x64,\n    0x61,0x69,0x6e,0x20,0x6c,0x61,0x74,0x65,0x72,0x20,0x6f,0x6e,0x20,0x74,0x68,0x65,\n    0x20,0x6d,0x61,0x69,0x6e,0x20,0x74,0x68,0x72,0x65,0x61,0x64,0x20,0x74,0x6f,0x20,\n    0x66,0x69,0x6e,0x69,0x73,0x68,0x20,0x63,0x6c,0x65,0x61,0x75,0x70,0x0a,0x20,0x20,\n    0x20,0x20,0x64,0x65,0x62,0x75,0x67,0x2e,0x73,0x65,0x74,0x68,0x6f,0x6f,0x6b,0x28,\n    0x29,0x0a,0x20,0x20,0x20,0x20,0x63,0x6f,0x72,0x65,0x2e,0x61,0x63,0x74,0x69,0x76,\n    0x65,0x5f,0x63,0x6f,0x72,0x6f,0x75,0x74,0x69,0x6e,0x65,0x73,0x2e,0x66,0x72,0x6f,\n    0x6d,0x5f,0x69,0x64,0x2c,0x20,0x63,0x6f,0x72,0x65,0x2e,0x61,0x63,0x74,0x69,0x76,\n    0x65,0x5f,0x63,0x6f,0x72,0x6f,0x75,0x74,0x69,0x6e,0x65,0x73,0x2e,0x66,0x72,0x6f,\n    0x6d,0x5f,0x63,0x6f,0x72,0x6f,0x20,0x3d,0x20,0x7b,0x20,0x7d,0x2c,0x20,0x7b,0x20,\n    0x7d,0x0a,0x65,0x6e,0x64,0x0a,0x0a,0x2d,0x2d,0x2d,0x20,0x54,0x68,0x69,0x73,0x20,\n    0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x20,0x68,0x61,0x6e,0x64,0x6c,0x65,0x73,\n    0x20,0x74,0x68,0x65,0x20,0x64,0x65,0x62,0x75,0x67,0x67,0x65,0x72,0x20,0x63,0x6f,\n    0x6d,0x6d,0x61,0x6e,0x64,0x73,0x20,0x77,0x68,0x69,0x6c,0x65,0x20,0x74,0x68,0x65,\n    0x20,0x65,0x78,0x65,0x63,0x75,0x74,0x69,0x6f,0x6e,0x20,0x69,0x73,0x20,0x70,0x61,\n    0x75,0x73,0x65,0x64,0x2e,0x20,0x54,0x68,0x69,0x73,0x20,0x64,0x6f,0x65,0x73,0x20,\n    0x6e,0x6f,0x74,0x20,0x75,0x73,0x65,0x20,0x63,0x6f,0x72,0x6f,0x75,0x74,0x69,0x6e,\n    0x65,0x73,0x20,0x62,0x65,0x63,0x61,0x75,0x73,0x65,0x20,0x74,0x68,0x65,0x72,0x65,\n    0x20,0x69,0x73,0x20,0x6e,0x6f,0x0a,0x2d,0x2d,0x20,0x77,0x61,0x79,0x20,0x74,0x6f,\n    0x20,0x67,0x65,0x74,0x20,0x6d,0x61,0x69,0x6e,0x20,0x63,0x6f,0x72,0x6f,0x20,0x69,\n    0x6e,0x20,0x4c,0x75,0x61,0x20,0x35,0x2e,0x31,0x20,0x28,0x6f,0x6e,0x6c,0x79,0x20,\n    0x69,0x6e,0x20,0x35,0x2e,0x32,0x29,0x0a,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x66,0x75,\n    0x6e,0x63,0x74,0x69,0x6f,0x6e,0x20,0x64,0x65,0x62,0x75,0x67,0x67,0x65,0x72,0x5f,\n    0x6c,0x6f,0x6f,0x70,0x28,0x73,0x65,0x6c,0x66,0x2c,0x20,0x61,0x73,0x79,0x6e,0x63,\n    0x5f,0x70,0x61,0x63,0x6b,0x65,0x74,0x29,0x0a,0x20,0x20,0x20,0x20,0x73,0x65,0x6c,\n    0x66,0x2e,0x73,0x6b,0x74,0x3a,0x73,0x65,0x74,0x74,0x69,0x6d,0x65,0x6f,0x75,0x74,\n    0x28,0x6e,0x69,0x6c,0x29,0x20,0x2d,0x2d,0x20,0x73,0x65,0x74,0x20,0x73,0x6f,0x63,\n    0x6b,0x65,0x74,0x20,0x62,0x6c,0x6f,0x63,0x6b,0x69,0x6e,0x67,0x0a,0x0a,0x20,0x20,\n    0x20,0x20,0x2d,0x2d,0x20,0x69,0x6e,0x20,0x61,0x73,0x79,0x6e,0x63,0x20,0x6d,0x6f,\n    0x64,0x65,0x2c,0x20,0x74,0x68,0x65,0x20,0x64,0x65,0x62,0x75,0x67,0x67,0x65,0x72,\n    0x20,0x64,0x6f,0x65,0x73,0x20,0x6e,0x6f,0x74,0x20,0x77,0x61,0x69,0x74,0x20,0x66,\n    0x6f,0x72,0x20,0x61,0x6e,0x6f,0x74,0x68,0x65,0x72,0x20,0x63,0x6f,0x6d,0x6d,0x61,\n    0x6e,0x64,0x20,0x62,0x65,0x66,0x6f,0x72,0x65,0x20,0x63,0x6f,0x6e,0x74,0x69,0x6e,\n    0x75,0x69,0x6e,0x67,0x20,0x61,0x6e,0x64,0x20,0x64,0x6f,0x65,0x73,0x20,0x6e,0x6f,\n    0x74,0x20,0x6d,0x6f,0x64,0x69,0x66,0x79,0x20,0x70,0x72,0x65,0x76,0x69,0x6f,0x75,\n    0x73,0x5f,0x63,0x6f,0x6e,0x74,0x65,0x78,0x74,0x0a,0x20,0x20,0x20,0x20,0x6c,0x6f,\n    0x63,0x61,0x6c,0x20,0x61,0x73,0x79,0x6e,0x63,0x5f,0x6d,0x6f,0x64,0x65,0x20,0x3d,\n    0x20,0x61,0x73,0x79,0x6e,0x63,0x5f,0x70,0x61,0x63,0x6b,0x65,0x74,0x20,0x7e,0x3d,\n    0x20,0x6e,0x69,0x6c,0x0a,0x0a,0x20,0x20,0x20,0x20,0x69,0x66,0x20,0x73,0x65,0x6c,\n    0x66,0x2e,0x70,0x72,0x65,0x76,0x69,0x6f,0x75,0x73,0x5f,0x63,0x6f,0x6e,0x74,0x65,\n    0x78,0x74,0x20,0x61,0x6e,0x64,0x20,0x6e,0x6f,0x74,0x20,0x61,0x73,0x79,0x6e,0x63,\n    0x5f,0x6d,0x6f,0x64,0x65,0x20,0x74,0x68,0x65,0x6e,0x0a,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x73,0x65,0x6c,0x66,0x2e,0x73,0x74,0x61,0x74,0x65,0x20,0x3d,0x20,\n    0x22,0x62,0x72,0x65,0x61,0x6b,0x22,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x63,0x6f,0x72,0x65,0x2e,0x70,0x72,0x65,0x76,0x69,0x6f,0x75,0x73,0x5f,0x63,0x6f,\n    0x6e,0x74,0x65,0x78,0x74,0x5f,0x72,0x65,0x73,0x70,0x6f,0x6e,0x73,0x65,0x28,0x73,\n    0x65,0x6c,0x66,0x29,0x0a,0x20,0x20,0x20,0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,0x20,\n    0x20,0x73,0x65,0x6c,0x66,0x2e,0x73,0x74,0x61,0x63,0x6b,0x20,0x3d,0x20,0x63,0x6f,\n    0x6e,0x74,0x65,0x78,0x74,0x2e,0x43,0x6f,0x6e,0x74,0x65,0x78,0x74,0x4d,0x61,0x6e,\n    0x61,0x67,0x65,0x72,0x28,0x73,0x65,0x6c,0x66,0x2e,0x63,0x6f,0x72,0x6f,0x29,0x20,\n    0x2d,0x2d,0x20,0x77,0x69,0x6c,0x6c,0x20,0x62,0x65,0x20,0x75,0x73,0x65,0x64,0x20,\n    0x74,0x6f,0x20,0x6d,0x75,0x74,0x75,0x61,0x6c,0x69,0x7a,0x65,0x20,0x63,0x6f,0x6e,\n    0x74,0x65,0x78,0x74,0x20,0x61,0x6c,0x6c,0x6f,0x63,0x61,0x74,0x69,0x6f,0x6e,0x20,\n    0x66,0x6f,0x72,0x20,0x65,0x61,0x63,0x68,0x20,0x6c,0x6f,0x6f,0x70,0x0a,0x0a,0x20,\n    0x20,0x20,0x20,0x77,0x68,0x69,0x6c,0x65,0x20,0x74,0x72,0x75,0x65,0x20,0x64,0x6f,\n    0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x2d,0x2d,0x20,0x72,0x65,0x61,0x64,\n    0x73,0x20,0x70,0x61,0x63,0x6b,0x65,0x74,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x70,0x61,0x63,0x6b,0x65,0x74,0x20,0x3d,0x20,\n    0x61,0x73,0x79,0x6e,0x63,0x5f,0x70,0x61,0x63,0x6b,0x65,0x74,0x20,0x6f,0x72,0x20,\n    0x64,0x62,0x67,0x70,0x2e,0x72,0x65,0x61,0x64,0x5f,0x70,0x61,0x63,0x6b,0x65,0x74,\n    0x28,0x73,0x65,0x6c,0x66,0x2e,0x73,0x6b,0x74,0x29,0x0a,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x69,0x66,0x20,0x6e,0x6f,0x74,0x20,0x70,0x61,0x63,0x6b,0x65,0x74,\n    0x20,0x74,0x68,0x65,0x6e,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x6c,0x6f,0x67,0x28,0x22,0x57,0x41,0x52,0x4e,0x49,0x4e,0x47,0x22,0x2c,0x20,0x22,\n    0x6c,0x6f,0x73,0x74,0x20,0x64,0x65,0x62,0x75,0x67,0x67,0x65,0x72,0x20,0x63,0x6f,\n    0x6e,0x6e,0x65,0x63,0x74,0x69,0x6f,0x6e,0x22,0x29,0x0a,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x63,0x6c,0x65,0x61,0x6e,0x75,0x70,0x28,0x29,0x0a,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x62,0x72,0x65,0x61,0x6b,0x0a,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x65,0x6e,0x64,0x0a,0x0a,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x61,0x73,0x79,0x6e,0x63,0x5f,0x70,0x61,0x63,0x6b,0x65,0x74,\n    0x20,0x3d,0x20,0x6e,0x69,0x6c,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x6c,\n    0x6f,0x67,0x28,0x22,0x44,0x45,0x42,0x55,0x47,0x22,0x2c,0x20,0x70,0x61,0x63,0x6b,\n    0x65,0x74,0x29,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,0x61,\n    0x6c,0x20,0x63,0x6d,0x64,0x2c,0x20,0x61,0x72,0x67,0x73,0x2c,0x20,0x64,0x61,0x74,\n    0x61,0x20,0x3d,0x20,0x64,0x62,0x67,0x70,0x2e,0x63,0x6d,0x64,0x5f,0x70,0x61,0x72,\n    0x73,0x65,0x28,0x70,0x61,0x63,0x6b,0x65,0x74,0x29,0x0a,0x0a,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x2d,0x2d,0x20,0x46,0x49,0x58,0x4d,0x45,0x3a,0x20,0x63,0x6f,\n    0x6d,0x6d,0x61,0x6e,0x64,0x20,0x73,0x75,0x63,0x68,0x20,0x61,0x73,0x20,0x63,0x6f,\n    0x6e,0x74,0x69,0x6e,0x75,0x61,0x74,0x69,0x6f,0x6e,0x73,0x20,0x73,0x65,0x6e,0x74,\n    0x20,0x69,0x6e,0x20,0x61,0x73,0x79,0x6e,0x63,0x20,0x6d,0x6f,0x64,0x65,0x20,0x63,\n    0x6f,0x75,0x6c,0x64,0x20,0x6c,0x65,0x61,0x64,0x20,0x62,0x6f,0x74,0x68,0x20,0x65,\n    0x6e,0x67,0x69,0x6e,0x65,0x20,0x61,0x6e,0x64,0x20,0x49,0x44,0x45,0x20,0x69,0x6e,\n    0x20,0x69,0x6e,0x63,0x6f,0x6e,0x73,0x69,0x73,0x74,0x65,0x6e,0x74,0x20,0x73,0x74,\n    0x61,0x74,0x65,0x20,0x3a,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x2d,0x2d,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x6d,0x61,0x6b,0x65,0x20,0x61,0x20,0x62,\n    0x6c,0x61,0x63,0x6b,0x6c,0x69,0x73,0x74,0x2f,0x77,0x68,0x69,0x74,0x65,0x6c,0x69,\n    0x73,0x74,0x20,0x6f,0x66,0x20,0x66,0x6f,0x72,0x62,0x69,0x64,0x64,0x65,0x6e,0x20,\n    0x6f,0x72,0x20,0x61,0x6c,0x6c,0x6f,0x77,0x65,0x64,0x20,0x63,0x6f,0x6d,0x6d,0x61,\n    0x6e,0x64,0x73,0x20,0x69,0x6e,0x20,0x61,0x73,0x79,0x6e,0x63,0x20,0x3f,0x0a,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x2d,0x2d,0x20,0x69,0x6e,0x76,0x6f,0x6b,0x65,\n    0x20,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x66,0x75,0x6e,0x63,0x20,0x3d,0x20,0x63,\n    0x6f,0x6d,0x6d,0x61,0x6e,0x64,0x73,0x5b,0x63,0x6d,0x64,0x5d,0x0a,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x69,0x66,0x20,0x66,0x75,0x6e,0x63,0x20,0x74,0x68,0x65,\n    0x6e,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x6c,0x6f,\n    0x63,0x61,0x6c,0x20,0x6f,0x6b,0x2c,0x20,0x63,0x6f,0x6e,0x74,0x20,0x3d,0x20,0x78,\n    0x70,0x63,0x61,0x6c,0x6c,0x28,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x28,0x29,\n    0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x66,0x75,0x6e,0x63,0x28,0x73,0x65,0x6c,\n    0x66,0x2c,0x20,0x61,0x72,0x67,0x73,0x2c,0x20,0x64,0x61,0x74,0x61,0x29,0x20,0x65,\n    0x6e,0x64,0x2c,0x20,0x64,0x65,0x62,0x75,0x67,0x2e,0x74,0x72,0x61,0x63,0x65,0x62,\n    0x61,0x63,0x6b,0x29,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x69,0x66,0x20,0x6e,0x6f,0x74,0x20,0x6f,0x6b,0x20,0x74,0x68,0x65,0x6e,0x20,\n    0x2d,0x2d,0x20,0x69,0x6e,0x74,0x65,0x72,0x6e,0x61,0x6c,0x20,0x65,0x78,0x63,0x65,\n    0x70,0x74,0x69,0x6f,0x6e,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x63,0x6f,0x64,0x65,\n    0x2c,0x20,0x6d,0x73,0x67,0x2c,0x20,0x61,0x74,0x74,0x72,0x0a,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x69,0x66,0x20,0x74,\n    0x79,0x70,0x65,0x28,0x63,0x6f,0x6e,0x74,0x29,0x20,0x3d,0x3d,0x20,0x22,0x74,0x61,\n    0x62,0x6c,0x65,0x22,0x20,0x61,0x6e,0x64,0x20,0x67,0x65,0x74,0x6d,0x65,0x74,0x61,\n    0x74,0x61,0x62,0x6c,0x65,0x28,0x63,0x6f,0x6e,0x74,0x29,0x20,0x3d,0x3d,0x20,0x64,\n    0x62,0x67,0x70,0x2e,0x44,0x42,0x47,0x50,0x5f,0x45,0x52,0x52,0x5f,0x4d,0x45,0x54,\n    0x41,0x54,0x41,0x42,0x4c,0x45,0x20,0x74,0x68,0x65,0x6e,0x0a,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x63,0x6f,0x64,0x65,0x2c,0x20,0x6d,0x73,0x67,0x2c,0x20,0x61,0x74,0x74,0x72,0x20,\n    0x3d,0x20,0x63,0x6f,0x6e,0x74,0x2e,0x63,0x6f,0x64,0x65,0x2c,0x20,0x63,0x6f,0x6e,\n    0x74,0x2e,0x6d,0x65,0x73,0x73,0x61,0x67,0x65,0x2c,0x20,0x63,0x6f,0x6e,0x74,0x2e,\n    0x61,0x74,0x74,0x72,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x65,0x6c,0x73,0x65,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x63,0x6f,\n    0x64,0x65,0x2c,0x20,0x6d,0x73,0x67,0x2c,0x20,0x61,0x74,0x74,0x72,0x20,0x3d,0x20,\n    0x39,0x39,0x38,0x2c,0x20,0x74,0x6f,0x73,0x74,0x72,0x69,0x6e,0x67,0x28,0x63,0x6f,\n    0x6e,0x74,0x29,0x2c,0x20,0x7b,0x20,0x7d,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x6c,0x6f,0x67,\n    0x28,0x22,0x45,0x52,0x52,0x4f,0x52,0x22,0x2c,0x20,0x22,0x43,0x6f,0x6d,0x6d,0x61,\n    0x6e,0x64,0x20,0x25,0x73,0x20,0x63,0x61,0x75,0x73,0x65,0x64,0x3a,0x20,0x28,0x25,\n    0x64,0x29,0x20,0x25,0x73,0x22,0x2c,0x20,0x63,0x6d,0x64,0x2c,0x20,0x63,0x6f,0x64,\n    0x65,0x2c,0x20,0x74,0x6f,0x73,0x74,0x72,0x69,0x6e,0x67,0x28,0x6d,0x73,0x67,0x29,\n    0x29,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x61,0x74,0x74,0x72,0x2e,0x63,0x6f,0x6d,0x6d,0x61,0x6e,0x64,0x2c,0x20,\n    0x61,0x74,0x74,0x72,0x2e,0x74,0x72,0x61,0x6e,0x73,0x61,0x63,0x74,0x69,0x6f,0x6e,\n    0x5f,0x69,0x64,0x20,0x3d,0x20,0x63,0x6d,0x64,0x2c,0x20,0x61,0x72,0x67,0x73,0x2e,\n    0x69,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x64,0x62,0x67,0x70,0x2e,0x73,0x65,0x6e,0x64,0x5f,0x78,0x6d,0x6c,0x28,\n    0x73,0x65,0x6c,0x66,0x2e,0x73,0x6b,0x74,0x2c,0x20,0x7b,0x20,0x74,0x61,0x67,0x20,\n    0x3d,0x20,0x22,0x72,0x65,0x73,0x70,0x6f,0x6e,0x73,0x65,0x22,0x2c,0x20,0x61,0x74,\n    0x74,0x72,0x20,0x3d,0x20,0x61,0x74,0x74,0x72,0x2c,0x20,0x64,0x62,0x67,0x70,0x2e,\n    0x6d,0x61,0x6b,0x65,0x5f,0x65,0x72,0x72,0x6f,0x72,0x28,0x63,0x6f,0x64,0x65,0x2c,\n    0x20,0x6d,0x73,0x67,0x29,0x20,0x7d,0x20,0x29,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x65,0x6c,0x73,0x65,0x69,0x66,0x20,0x63,0x6f,0x6e,\n    0x74,0x20,0x74,0x68,0x65,0x6e,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x73,0x65,0x6c,0x66,0x2e,0x70,0x72,0x65,0x76,\n    0x69,0x6f,0x75,0x73,0x5f,0x63,0x6f,0x6e,0x74,0x65,0x78,0x74,0x20,0x3d,0x20,0x7b,\n    0x20,0x63,0x6f,0x6d,0x6d,0x61,0x6e,0x64,0x20,0x3d,0x20,0x63,0x6d,0x64,0x2c,0x20,\n    0x74,0x72,0x61,0x6e,0x73,0x61,0x63,0x74,0x69,0x6f,0x6e,0x5f,0x69,0x64,0x20,0x3d,\n    0x20,0x61,0x72,0x67,0x73,0x2e,0x69,0x20,0x7d,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x62,0x72,0x65,0x61,0x6b,0x0a,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x65,0x6c,0x73,0x65,\n    0x69,0x66,0x20,0x63,0x6f,0x6e,0x74,0x20,0x3d,0x3d,0x20,0x6e,0x69,0x6c,0x20,0x61,\n    0x6e,0x64,0x20,0x61,0x73,0x79,0x6e,0x63,0x5f,0x6d,0x6f,0x64,0x65,0x20,0x74,0x68,\n    0x65,0x6e,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x62,0x72,0x65,0x61,0x6b,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x65,0x6c,0x73,0x65,0x69,0x66,0x20,0x63,0x6f,0x6e,0x74,\n    0x20,0x3d,0x3d,0x20,0x66,0x61,0x6c,0x73,0x65,0x20,0x74,0x68,0x65,0x6e,0x20,0x2d,\n    0x2d,0x20,0x49,0x6e,0x20,0x63,0x61,0x73,0x65,0x20,0x6f,0x66,0x20,0x63,0x6f,0x6d,\n    0x6d,0x61,0x6e,0x64,0x73,0x20,0x74,0x68,0x61,0x74,0x20,0x66,0x75,0x6c,0x6c,0x79,\n    0x20,0x72,0x65,0x73,0x75,0x6d,0x65,0x73,0x20,0x64,0x65,0x62,0x75,0x67,0x67,0x65,\n    0x72,0x20,0x6c,0x6f,0x6f,0x70,0x2c,0x20,0x74,0x68,0x65,0x20,0x6d,0x6f,0x64,0x65,\n    0x20,0x69,0x73,0x20,0x73,0x79,0x6e,0x63,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x61,0x73,0x79,0x6e,0x63,0x5f,0x6d,\n    0x6f,0x64,0x65,0x20,0x3d,0x20,0x66,0x61,0x6c,0x73,0x65,0x0a,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x65,0x6c,0x73,0x65,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x6c,0x6f,0x67,0x28,0x22,0x47,0x6f,0x74,0x20,0x75,0x6e,\n    0x6b,0x6e,0x6f,0x77,0x6e,0x20,0x63,0x6f,0x6d,0x6d,0x61,0x6e,0x64,0x3a,0x20,0x22,\n    0x2e,0x2e,0x63,0x6d,0x64,0x29,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x64,0x62,0x67,0x70,0x2e,0x73,0x65,0x6e,0x64,0x5f,0x78,0x6d,0x6c,\n    0x28,0x73,0x65,0x6c,0x66,0x2e,0x73,0x6b,0x74,0x2c,0x20,0x7b,0x20,0x74,0x61,0x67,\n    0x20,0x3d,0x20,0x22,0x72,0x65,0x73,0x70,0x6f,0x6e,0x73,0x65,0x22,0x2c,0x20,0x61,\n    0x74,0x74,0x72,0x20,0x3d,0x20,0x7b,0x20,0x63,0x6f,0x6d,0x6d,0x61,0x6e,0x64,0x20,\n    0x3d,0x20,0x63,0x6d,0x64,0x2c,0x20,0x74,0x72,0x61,0x6e,0x73,0x61,0x63,0x74,0x69,\n    0x6f,0x6e,0x5f,0x69,0x64,0x20,0x3d,0x20,0x61,0x72,0x67,0x73,0x2e,0x69,0x2c,0x20,\n    0x7d,0x2c,0x20,0x64,0x62,0x67,0x70,0x2e,0x6d,0x61,0x6b,0x65,0x5f,0x65,0x72,0x72,\n    0x6f,0x72,0x28,0x34,0x29,0x20,0x7d,0x20,0x29,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,0x20,0x20,0x65,0x6e,0x64,0x0a,0x0a,0x20,\n    0x20,0x20,0x20,0x73,0x65,0x6c,0x66,0x2e,0x73,0x74,0x61,0x63,0x6b,0x20,0x3d,0x20,\n    0x6e,0x69,0x6c,0x20,0x2d,0x2d,0x20,0x66,0x72,0x65,0x65,0x20,0x61,0x6c,0x6c,0x6f,\n    0x63,0x61,0x74,0x65,0x64,0x20,0x63,0x6f,0x6e,0x74,0x65,0x78,0x74,0x73,0x0a,0x20,\n    0x20,0x20,0x20,0x73,0x65,0x6c,0x66,0x2e,0x73,0x74,0x61,0x74,0x65,0x20,0x3d,0x20,\n    0x22,0x72,0x75,0x6e,0x6e,0x69,0x6e,0x67,0x22,0x0a,0x20,0x20,0x20,0x20,0x73,0x65,\n    0x6c,0x66,0x2e,0x73,0x6b,0x74,0x3a,0x73,0x65,0x74,0x74,0x69,0x6d,0x65,0x6f,0x75,\n    0x74,0x28,0x30,0x29,0x20,0x2d,0x2d,0x20,0x72,0x65,0x73,0x65,0x74,0x20,0x73,0x6f,\n    0x63,0x6b,0x65,0x74,0x20,0x74,0x6f,0x20,0x61,0x73,0x79,0x6e,0x63,0x0a,0x65,0x6e,\n    0x64,0x0a,0x0a,0x2d,0x2d,0x20,0x53,0x74,0x61,0x63,0x6b,0x20,0x68,0x61,0x6e,0x64,\n    0x6c,0x69,0x6e,0x67,0x20,0x63,0x61,0x6e,0x20,0x62,0x65,0x20,0x70,0x72,0x65,0x74,\n    0x74,0x79,0x20,0x63,0x6f,0x6d,0x70,0x6c,0x65,0x78,0x20,0x73,0x6f,0x6d,0x65,0x74,\n    0x69,0x6d,0x65,0x73,0x2c,0x20,0x65,0x73,0x70,0x65,0x63,0x69,0x61,0x6c,0x6c,0x79,\n    0x20,0x77,0x69,0x74,0x68,0x20,0x4c,0x75,0x61,0x4a,0x49,0x54,0x20,0x28,0x61,0x73,\n    0x20,0x74,0x61,0x69,0x6c,0x2d,0x63,0x61,0x6c,0x6c,0x20,0x6f,0x70,0x74,0x69,0x6d,\n    0x69,0x7a,0x61,0x74,0x69,0x6f,0x6e,0x20,0x61,0x72,0x65,0x0a,0x2d,0x2d,0x20,0x6d,\n    0x6f,0x72,0x65,0x20,0x61,0x67,0x67,0x72,0x65,0x73,0x73,0x69,0x76,0x65,0x20,0x61,\n    0x73,0x20,0x73,0x74,0x6f,0x63,0x6b,0x20,0x4c,0x75,0x61,0x29,0x2e,0x20,0x53,0x6f,\n    0x20,0x61,0x6c,0x6c,0x20,0x64,0x65,0x62,0x75,0x67,0x67,0x65,0x72,0x20,0x73,0x74,\n    0x75,0x66,0x66,0x20,0x69,0x73,0x20,0x64,0x6f,0x6e,0x65,0x20,0x69,0x6e,0x20,0x61,\n    0x6e,0x6f,0x74,0x68,0x65,0x72,0x20,0x63,0x6f,0x72,0x6f,0x75,0x74,0x69,0x6e,0x65,\n    0x2c,0x20,0x77,0x68,0x69,0x63,0x68,0x20,0x6c,0x65,0x61,0x76,0x65,0x20,0x74,0x68,\n    0x65,0x20,0x70,0x72,0x6f,0x67,0x72,0x61,0x6d,0x0a,0x2d,0x2d,0x20,0x73,0x74,0x61,\n    0x63,0x6b,0x20,0x69,0x6e,0x20,0x61,0x20,0x63,0x6c,0x65,0x61,0x6e,0x20,0x73,0x74,\n    0x61,0x74,0x65,0x20,0x61,0x6e,0x64,0x20,0x61,0x6c,0x6c,0x6f,0x77,0x20,0x66,0x61,\n    0x73,0x74,0x65,0x72,0x20,0x61,0x6e,0x64,0x20,0x63,0x6c,0x65,0x61,0x72,0x65,0x72,\n    0x20,0x73,0x74,0x61,0x63,0x6b,0x20,0x6f,0x70,0x65,0x72,0x61,0x74,0x69,0x6f,0x6e,\n    0x73,0x20,0x28,0x6e,0x6f,0x20,0x6e,0x65,0x65,0x64,0x20,0x74,0x6f,0x20,0x72,0x65,\n    0x6d,0x6f,0x76,0x65,0x20,0x61,0x6c,0x6c,0x20,0x64,0x65,0x62,0x75,0x67,0x67,0x65,\n    0x72,0x20,0x63,0x61,0x6c,0x6c,0x73,0x0a,0x2d,0x2d,0x20,0x66,0x72,0x6f,0x6d,0x20,\n    0x73,0x74,0x61,0x63,0x6b,0x20,0x66,0x6f,0x72,0x20,0x65,0x61,0x63,0x68,0x20,0x6f,\n    0x70,0x65,0x72,0x61,0x74,0x69,0x6f,0x6e,0x29,0x2e,0x0a,0x2d,0x2d,0x20,0x48,0x6f,\n    0x77,0x65,0x76,0x65,0x72,0x2c,0x20,0x74,0x68,0x69,0x73,0x20,0x64,0x6f,0x65,0x73,\n    0x20,0x6e,0x6f,0x74,0x20,0x61,0x6c,0x77,0x61,0x79,0x73,0x20,0x77,0x6f,0x72,0x6b,\n    0x20,0x77,0x69,0x74,0x68,0x20,0x73,0x74,0x6f,0x63,0x6b,0x20,0x4c,0x75,0x61,0x20,\n    0x35,0x2e,0x31,0x20,0x61,0x73,0x20,0x74,0x68,0x65,0x20,0x6d,0x61,0x69,0x6e,0x20,\n    0x63,0x6f,0x72,0x6f,0x75,0x74,0x69,0x6e,0x65,0x20,0x63,0x61,0x6e,0x6e,0x6f,0x74,\n    0x20,0x62,0x65,0x20,0x72,0x65,0x66,0x65,0x72,0x65,0x6e,0x63,0x65,0x64,0x0a,0x2d,\n    0x2d,0x20,0x28,0x63,0x6f,0x72,0x6f,0x75,0x74,0x69,0x6e,0x65,0x2e,0x72,0x75,0x6e,\n    0x6e,0x69,0x6e,0x67,0x28,0x29,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x6e,0x69,\n    0x6c,0x29,0x2e,0x20,0x46,0x6f,0x72,0x20,0x74,0x68,0x69,0x73,0x20,0x70,0x61,0x72,\n    0x74,0x69,0x63,0x75,0x6c,0x61,0x72,0x20,0x63,0x61,0x73,0x65,0x2c,0x20,0x74,0x68,\n    0x65,0x20,0x64,0x65,0x62,0x75,0x67,0x67,0x65,0x72,0x20,0x6c,0x6f,0x6f,0x70,0x20,\n    0x69,0x73,0x20,0x73,0x74,0x61,0x72,0x74,0x65,0x64,0x20,0x6f,0x6e,0x20,0x74,0x68,\n    0x65,0x20,0x74,0x6f,0x70,0x20,0x6f,0x66,0x0a,0x2d,0x2d,0x20,0x70,0x72,0x6f,0x67,\n    0x72,0x61,0x6d,0x20,0x73,0x74,0x61,0x63,0x6b,0x20,0x61,0x6e,0x64,0x20,0x65,0x76,\n    0x65,0x72,0x79,0x20,0x73,0x74,0x61,0x63,0x6b,0x20,0x6f,0x70,0x65,0x72,0x61,0x74,\n    0x69,0x6f,0x6e,0x20,0x69,0x73,0x20,0x72,0x65,0x6c,0x61,0x74,0x69,0x76,0x65,0x20,\n    0x74,0x68,0x65,0x20,0x74,0x68,0x65,0x20,0x68,0x6f,0x6f,0x6b,0x20,0x6c,0x65,0x76,\n    0x65,0x6c,0x20,0x28,0x73,0x65,0x65,0x20,0x4d,0x61,0x69,0x6e,0x54,0x68,0x72,0x65,\n    0x61,0x64,0x20,0x69,0x6e,0x20,0x75,0x74,0x69,0x6c,0x2e,0x6c,0x75,0x61,0x29,0x2e,\n    0x0a,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x20,\n    0x6c,0x69,0x6e,0x65,0x5f,0x68,0x6f,0x6f,0x6b,0x28,0x6c,0x69,0x6e,0x65,0x29,0x0a,\n    0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x64,0x6f,0x5f,0x62,0x72,0x65,\n    0x61,0x6b,0x2c,0x20,0x70,0x61,0x63,0x6b,0x65,0x74,0x20,0x3d,0x20,0x6e,0x69,0x6c,\n    0x2c,0x20,0x6e,0x69,0x6c,0x0a,0x0a,0x20,0x20,0x20,0x20,0x69,0x66,0x20,0x28,0x63,\n    0x6f,0x72,0x65,0x2e,0x70,0x72,0x65,0x76,0x5f,0x62,0x72,0x65,0x61,0x6b,0x5f,0x6c,\n    0x69,0x6e,0x65,0x20,0x7e,0x3d,0x20,0x6c,0x69,0x6e,0x65,0x29,0x20,0x74,0x68,0x65,\n    0x6e,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x69,0x66,0x20,0x63,0x6f,0x72,\n    0x65,0x2e,0x62,0x72,0x65,0x61,0x6b,0x70,0x6f,0x69,0x6e,0x74,0x73,0x2e,0x67,0x75,\n    0x65,0x73,0x73,0x28,0x6c,0x69,0x6e,0x65,0x29,0x20,0x7e,0x3d,0x20,0x6e,0x69,0x6c,\n    0x20,0x74,0x68,0x65,0x6e,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x69,0x6e,0x66,0x6f,0x20,0x3d,0x20,0x61,\n    0x63,0x74,0x69,0x76,0x65,0x5f,0x73,0x65,0x73,0x73,0x69,0x6f,0x6e,0x2e,0x63,0x6f,\n    0x72,0x6f,0x3a,0x67,0x65,0x74,0x69,0x6e,0x66,0x6f,0x28,0x30,0x2c,0x20,0x22,0x53,\n    0x22,0x29,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x6c,\n    0x6f,0x63,0x61,0x6c,0x20,0x75,0x72,0x69,0x20,0x3d,0x20,0x70,0x6c,0x61,0x74,0x66,\n    0x6f,0x72,0x6d,0x2e,0x67,0x65,0x74,0x5f,0x75,0x72,0x69,0x28,0x69,0x6e,0x66,0x6f,\n    0x2e,0x73,0x6f,0x75,0x72,0x63,0x65,0x29,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x69,0x66,0x20,0x75,0x72,0x69,0x20,0x61,0x6e,0x64,0x20,\n    0x75,0x72,0x69,0x20,0x7e,0x3d,0x20,0x64,0x65,0x62,0x75,0x67,0x67,0x65,0x72,0x5f,\n    0x75,0x72,0x69,0x20,0x61,0x6e,0x64,0x20,0x75,0x72,0x69,0x20,0x7e,0x3d,0x20,0x74,\n    0x72,0x61,0x6e,0x73,0x70,0x6f,0x72,0x74,0x6d,0x6f,0x64,0x75,0x6c,0x65,0x5f,0x75,\n    0x72,0x69,0x20,0x74,0x68,0x65,0x6e,0x20,0x2d,0x2d,0x20,0x74,0x68,0x65,0x20,0x64,\n    0x65,0x62,0x75,0x67,0x67,0x65,0x72,0x20,0x64,0x6f,0x65,0x73,0x20,0x6e,0x6f,0x74,\n    0x20,0x62,0x72,0x65,0x61,0x6b,0x20,0x69,0x66,0x20,0x74,0x68,0x65,0x20,0x73,0x6f,\n    0x75,0x72,0x63,0x65,0x20,0x69,0x73,0x20,0x6e,0x6f,0x74,0x20,0x6b,0x6e,0x6f,0x77,\n    0x6e,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x64,0x6f,0x5f,0x62,0x72,0x65,0x61,0x6b,0x20,0x3d,0x20,0x63,0x6f,0x72,\n    0x65,0x2e,0x62,0x72,0x65,0x61,0x6b,0x70,0x6f,0x69,0x6e,0x74,0x73,0x2e,0x61,0x74,\n    0x28,0x75,0x72,0x69,0x2c,0x20,0x6c,0x69,0x6e,0x65,0x29,0x20,0x2d,0x2d,0x6f,0x72,\n    0x20,0x63,0x6f,0x72,0x65,0x2e,0x65,0x76,0x65,0x6e,0x74,0x73,0x2e,0x64,0x6f,0x65,\n    0x73,0x5f,0x6d,0x61,0x74,0x63,0x68,0x28,0x29,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,0x20,0x20,0x65,0x6e,0x64,0x0a,0x0a,0x20,\n    0x20,0x20,0x20,0x69,0x66,0x20,0x6e,0x6f,0x74,0x20,0x64,0x6f,0x5f,0x62,0x72,0x65,\n    0x61,0x6b,0x20,0x74,0x68,0x65,0x6e,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x64,0x6f,0x5f,0x62,0x72,0x65,0x61,0x6b,0x20,0x3d,0x20,0x63,0x6f,0x72,0x65,0x2e,\n    0x65,0x76,0x65,0x6e,0x74,0x73,0x2e,0x64,0x6f,0x65,0x73,0x5f,0x6d,0x61,0x74,0x63,\n    0x68,0x28,0x6c,0x69,0x6e,0x65,0x29,0x0a,0x20,0x20,0x20,0x20,0x65,0x6e,0x64,0x0a,\n    0x20,0x20,0x20,0x20,0x69,0x66,0x20,0x64,0x6f,0x5f,0x62,0x72,0x65,0x61,0x6b,0x20,\n    0x74,0x68,0x65,0x6e,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x63,0x6f,0x72,\n    0x65,0x2e,0x70,0x72,0x65,0x76,0x5f,0x62,0x72,0x65,0x61,0x6b,0x5f,0x6c,0x69,0x6e,\n    0x65,0x20,0x3d,0x20,0x6c,0x69,0x6e,0x65,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x63,0x6f,0x72,0x65,0x2e,0x65,0x76,0x65,0x6e,0x74,0x73,0x2e,0x64,0x69,0x73,\n    0x63,0x61,0x72,0x64,0x28,0x29,0x0a,0x20,0x20,0x20,0x20,0x65,0x6e,0x64,0x0a,0x20,\n    0x20,0x20,0x20,0x2d,0x2d,0x20,0x63,0x68,0x65,0x63,0x6b,0x20,0x66,0x6f,0x72,0x20,\n    0x61,0x73,0x79,0x6e,0x63,0x20,0x63,0x6f,0x6d,0x6d,0x61,0x6e,0x64,0x73,0x0a,0x20,\n    0x20,0x20,0x20,0x69,0x66,0x20,0x6e,0x6f,0x74,0x20,0x64,0x6f,0x5f,0x62,0x72,0x65,\n    0x61,0x6b,0x20,0x74,0x68,0x65,0x6e,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x70,0x61,0x63,0x6b,0x65,0x74,0x20,0x3d,0x20,0x64,0x62,0x67,0x70,0x2e,0x72,0x65,\n    0x61,0x64,0x5f,0x70,0x61,0x63,0x6b,0x65,0x74,0x28,0x61,0x63,0x74,0x69,0x76,0x65,\n    0x5f,0x73,0x65,0x73,0x73,0x69,0x6f,0x6e,0x2e,0x73,0x6b,0x74,0x29,0x0a,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x69,0x66,0x20,0x70,0x61,0x63,0x6b,0x65,0x74,0x20,\n    0x74,0x68,0x65,0x6e,0x20,0x64,0x6f,0x5f,0x62,0x72,0x65,0x61,0x6b,0x20,0x3d,0x20,\n    0x74,0x72,0x75,0x65,0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,0x20,0x20,0x65,0x6e,0x64,\n    0x0a,0x20,0x20,0x20,0x20,0x69,0x66,0x20,0x64,0x6f,0x5f,0x62,0x72,0x65,0x61,0x6b,\n    0x20,0x74,0x68,0x65,0x6e,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x63,0x6f,\n    0x72,0x65,0x2e,0x70,0x72,0x65,0x76,0x5f,0x62,0x72,0x65,0x61,0x6b,0x5f,0x6c,0x69,\n    0x6e,0x65,0x20,0x3d,0x20,0x6c,0x69,0x6e,0x65,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x73,0x75,0x63,0x63,0x65,0x73,0x73,0x2c,\n    0x20,0x65,0x72,0x72,0x20,0x3d,0x20,0x70,0x63,0x61,0x6c,0x6c,0x28,0x64,0x65,0x62,\n    0x75,0x67,0x67,0x65,0x72,0x5f,0x6c,0x6f,0x6f,0x70,0x2c,0x20,0x61,0x63,0x74,0x69,\n    0x76,0x65,0x5f,0x73,0x65,0x73,0x73,0x69,0x6f,0x6e,0x2c,0x20,0x70,0x61,0x63,0x6b,\n    0x65,0x74,0x29,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x69,0x66,0x20,0x6e,\n    0x6f,0x74,0x20,0x73,0x75,0x63,0x63,0x65,0x73,0x73,0x20,0x74,0x68,0x65,0x6e,0x20,\n    0x6c,0x6f,0x67,0x28,0x22,0x45,0x52,0x52,0x4f,0x52,0x22,0x2c,0x20,0x22,0x45,0x72,\n    0x72,0x6f,0x72,0x20,0x77,0x68,0x69,0x6c,0x65,0x20,0x64,0x65,0x62,0x75,0x67,0x20,\n    0x6c,0x6f,0x6f,0x70,0x3a,0x20,0x22,0x2e,0x2e,0x65,0x72,0x72,0x29,0x20,0x65,0x6e,\n    0x64,0x0a,0x20,0x20,0x20,0x20,0x65,0x6e,0x64,0x0a,0x65,0x6e,0x64,0x0a,0x0a,0x6c,\n    0x6f,0x63,0x61,0x6c,0x20,0x6c,0x69,0x6e,0x65,0x5f,0x68,0x6f,0x6f,0x6b,0x5f,0x63,\n    0x6f,0x72,0x6f,0x20,0x3d,0x20,0x63,0x6f,0x63,0x72,0x65,0x61,0x74,0x65,0x28,0x66,\n    0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x28,0x6c,0x69,0x6e,0x65,0x29,0x0a,0x20,0x20,\n    0x20,0x20,0x77,0x68,0x69,0x6c,0x65,0x20,0x74,0x72,0x75,0x65,0x20,0x64,0x6f,0x0a,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x6c,0x69,0x6e,0x65,0x5f,0x68,0x6f,0x6f,\n    0x6b,0x28,0x6c,0x69,0x6e,0x65,0x29,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x6c,0x69,0x6e,0x65,0x20,0x3d,0x20,0x63,0x6f,0x79,0x69,0x65,0x6c,0x64,0x28,0x29,\n    0x0a,0x20,0x20,0x20,0x20,0x65,0x6e,0x64,0x0a,0x65,0x6e,0x64,0x29,0x0a,0x0a,0x6c,\n    0x6f,0x63,0x61,0x6c,0x20,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x20,0x64,0x65,\n    0x62,0x75,0x67,0x67,0x65,0x72,0x5f,0x68,0x6f,0x6f,0x6b,0x28,0x65,0x76,0x65,0x6e,\n    0x74,0x2c,0x20,0x6c,0x69,0x6e,0x65,0x29,0x0a,0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,\n    0x61,0x6c,0x20,0x74,0x68,0x72,0x65,0x61,0x64,0x20,0x3d,0x20,0x63,0x6f,0x72,0x75,\n    0x6e,0x6e,0x69,0x6e,0x67,0x28,0x29,0x20,0x6f,0x72,0x20,0x22,0x6d,0x61,0x69,0x6e,\n    0x22,0x0a,0x20,0x20,0x20,0x20,0x69,0x66,0x20,0x65,0x76,0x65,0x6e,0x74,0x20,0x3d,\n    0x3d,0x20,0x22,0x63,0x61,0x6c,0x6c,0x22,0x20,0x74,0x68,0x65,0x6e,0x0a,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x73,0x74,0x61,0x63,0x6b,0x5f,0x6c,0x65,0x76,0x65,\n    0x6c,0x73,0x5b,0x74,0x68,0x72,0x65,0x61,0x64,0x5d,0x20,0x3d,0x20,0x73,0x74,0x61,\n    0x63,0x6b,0x5f,0x6c,0x65,0x76,0x65,0x6c,0x73,0x5b,0x74,0x68,0x72,0x65,0x61,0x64,\n    0x5d,0x20,0x2b,0x20,0x31,0x0a,0x20,0x20,0x20,0x20,0x65,0x6c,0x73,0x65,0x69,0x66,\n    0x20,0x65,0x76,0x65,0x6e,0x74,0x20,0x3d,0x3d,0x20,0x22,0x74,0x61,0x69,0x6c,0x20,\n    0x63,0x61,0x6c,0x6c,0x22,0x20,0x74,0x68,0x65,0x6e,0x0a,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x2d,0x2d,0x20,0x74,0x61,0x69,0x6c,0x20,0x63,0x61,0x6c,0x6c,0x73,\n    0x20,0x68,0x61,0x73,0x20,0x6e,0x6f,0x20,0x65,0x66,0x66,0x65,0x63,0x74,0x73,0x20,\n    0x6f,0x6e,0x20,0x73,0x74,0x61,0x63,0x6b,0x20,0x68,0x61,0x6e,0x64,0x6c,0x69,0x6e,\n    0x67,0x3a,0x20,0x69,0x74,0x20,0x69,0x73,0x20,0x6f,0x6e,0x6c,0x79,0x20,0x75,0x73,\n    0x65,0x64,0x20,0x6f,0x6e,0x6c,0x79,0x20,0x66,0x6f,0x72,0x20,0x73,0x74,0x65,0x70,\n    0x20,0x63,0x6f,0x6d,0x6d,0x61,0x6e,0x64,0x73,0x20,0x62,0x75,0x74,0x20,0x61,0x20,\n    0x73,0x75,0x63,0x68,0x20,0x65,0x76,0x65,0x6e,0x20,0x64,0x6f,0x65,0x73,0x20,0x6e,\n    0x6f,0x74,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x2d,0x2d,0x20,0x69,0x6e,\n    0x74,0x65,0x72,0x66,0x65,0x72,0x65,0x20,0x77,0x69,0x74,0x68,0x20,0x61,0x6e,0x79,\n    0x20,0x6f,0x66,0x20,0x74,0x68,0x65,0x6d,0x0a,0x20,0x20,0x20,0x20,0x65,0x6c,0x73,\n    0x65,0x69,0x66,0x20,0x65,0x76,0x65,0x6e,0x74,0x20,0x3d,0x3d,0x20,0x22,0x72,0x65,\n    0x74,0x75,0x72,0x6e,0x22,0x20,0x6f,0x72,0x20,0x65,0x76,0x65,0x6e,0x74,0x20,0x3d,\n    0x3d,0x20,0x22,0x74,0x61,0x69,0x6c,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x22,0x20,\n    0x74,0x68,0x65,0x6e,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x73,0x74,0x61,\n    0x63,0x6b,0x5f,0x6c,0x65,0x76,0x65,0x6c,0x73,0x5b,0x74,0x68,0x72,0x65,0x61,0x64,\n    0x5d,0x20,0x3d,0x20,0x73,0x74,0x61,0x63,0x6b,0x5f,0x6c,0x65,0x76,0x65,0x6c,0x73,\n    0x5b,0x74,0x68,0x72,0x65,0x61,0x64,0x5d,0x20,0x2d,0x20,0x31,0x0a,0x20,0x20,0x20,\n    0x20,0x65,0x6c,0x73,0x65,0x20,0x2d,0x2d,0x20,0x6c,0x69,0x6e,0x65,0x20,0x65,0x76,\n    0x65,0x6e,0x74,0x3a,0x20,0x63,0x68,0x65,0x63,0x6b,0x20,0x66,0x6f,0x72,0x20,0x62,\n    0x72,0x65,0x61,0x6b,0x70,0x6f,0x69,0x6e,0x74,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x61,0x63,0x74,0x69,0x76,0x65,0x5f,0x73,0x65,0x73,0x73,0x69,0x6f,0x6e,\n    0x2e,0x63,0x6f,0x72,0x6f,0x20,0x3d,0x20,0x75,0x74,0x69,0x6c,0x2e,0x43,0x75,0x72,\n    0x72,0x65,0x6e,0x74,0x54,0x68,0x72,0x65,0x61,0x64,0x28,0x63,0x6f,0x72,0x75,0x6e,\n    0x6e,0x69,0x6e,0x67,0x28,0x29,0x29,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x69,0x66,0x20,0x61,0x63,0x74,0x69,0x76,0x65,0x5f,0x73,0x65,0x73,0x73,0x69,0x6f,\n    0x6e,0x2e,0x63,0x6f,0x72,0x6f,0x5b,0x31,0x5d,0x20,0x3d,0x3d,0x20,0x22,0x6d,0x61,\n    0x69,0x6e,0x22,0x20,0x74,0x68,0x65,0x6e,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x6c,0x69,0x6e,0x65,0x5f,0x68,0x6f,0x6f,0x6b,0x28,0x6c,\n    0x69,0x6e,0x65,0x29,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x65,0x6c,0x73,\n    0x65,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x2d,0x2d,\n    0x20,0x72,0x75,0x6e,0x20,0x74,0x68,0x65,0x20,0x64,0x65,0x62,0x75,0x67,0x67,0x65,\n    0x72,0x20,0x6c,0x6f,0x6f,0x70,0x20,0x69,0x6e,0x20,0x61,0x6e,0x6f,0x74,0x68,0x65,\n    0x72,0x20,0x74,0x68,0x72,0x65,0x61,0x64,0x20,0x6f,0x6e,0x20,0x74,0x68,0x65,0x20,\n    0x6f,0x74,0x68,0x65,0x72,0x20,0x63,0x61,0x73,0x65,0x73,0x20,0x28,0x73,0x69,0x6d,\n    0x70,0x6c,0x69,0x66,0x69,0x65,0x73,0x20,0x73,0x74,0x61,0x63,0x6b,0x20,0x68,0x61,\n    0x6e,0x64,0x6c,0x69,0x6e,0x67,0x29,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x61,0x73,0x73,0x65,0x72,0x74,0x28,0x63,0x6f,0x72,0x65,0x73,\n    0x75,0x6d,0x65,0x28,0x6c,0x69,0x6e,0x65,0x5f,0x68,0x6f,0x6f,0x6b,0x5f,0x63,0x6f,\n    0x72,0x6f,0x2c,0x20,0x6c,0x69,0x6e,0x65,0x29,0x29,0x0a,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x61,\n    0x63,0x74,0x69,0x76,0x65,0x5f,0x73,0x65,0x73,0x73,0x69,0x6f,0x6e,0x2e,0x63,0x6f,\n    0x72,0x6f,0x20,0x3d,0x20,0x6e,0x69,0x6c,0x0a,0x20,0x20,0x20,0x20,0x65,0x6e,0x64,\n    0x0a,0x65,0x6e,0x64,0x0a,0x0a,0x69,0x66,0x20,0x72,0x61,0x77,0x67,0x65,0x74,0x28,\n    0x5f,0x47,0x2c,0x20,0x22,0x6a,0x69,0x74,0x22,0x29,0x20,0x74,0x68,0x65,0x6e,0x0a,\n    0x20,0x20,0x20,0x20,0x64,0x65,0x62,0x75,0x67,0x67,0x65,0x72,0x5f,0x68,0x6f,0x6f,\n    0x6b,0x20,0x3d,0x20,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x28,0x65,0x76,0x65,\n    0x6e,0x74,0x2c,0x20,0x6c,0x69,0x6e,0x65,0x29,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x74,0x68,0x72,0x65,0x61,0x64,0x20,0x3d,\n    0x20,0x63,0x6f,0x72,0x75,0x6e,0x6e,0x69,0x6e,0x67,0x28,0x29,0x20,0x6f,0x72,0x20,\n    0x22,0x6d,0x61,0x69,0x6e,0x22,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x69,\n    0x66,0x20,0x65,0x76,0x65,0x6e,0x74,0x20,0x3d,0x3d,0x20,0x22,0x63,0x61,0x6c,0x6c,\n    0x22,0x20,0x74,0x68,0x65,0x6e,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x69,0x66,0x20,0x64,0x65,0x62,0x75,0x67,0x2e,0x67,0x65,0x74,0x69,\n    0x6e,0x66,0x6f,0x28,0x32,0x2c,0x20,0x22,0x53,0x22,0x29,0x2e,0x77,0x68,0x61,0x74,\n    0x20,0x3d,0x3d,0x20,0x22,0x43,0x22,0x20,0x74,0x68,0x65,0x6e,0x20,0x72,0x65,0x74,\n    0x75,0x72,0x6e,0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x73,0x74,0x61,0x63,0x6b,0x5f,0x6c,0x65,0x76,0x65,0x6c,0x73,\n    0x5b,0x74,0x68,0x72,0x65,0x61,0x64,0x5d,0x20,0x3d,0x20,0x73,0x74,0x61,0x63,0x6b,\n    0x5f,0x6c,0x65,0x76,0x65,0x6c,0x73,0x5b,0x74,0x68,0x72,0x65,0x61,0x64,0x5d,0x20,\n    0x2b,0x20,0x31,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x65,0x6c,0x73,0x65,\n    0x69,0x66,0x20,0x65,0x76,0x65,0x6e,0x74,0x20,0x3d,0x3d,0x20,0x22,0x72,0x65,0x74,\n    0x75,0x72,0x6e,0x22,0x20,0x6f,0x72,0x20,0x65,0x76,0x65,0x6e,0x74,0x20,0x3d,0x3d,\n    0x20,0x22,0x74,0x61,0x69,0x6c,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x22,0x20,0x74,\n    0x68,0x65,0x6e,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x2d,0x2d,0x20,0x52,0x65,0x74,0x75,0x72,0x6e,0x20,0x68,0x6f,0x6f,0x6b,0x73,0x20,\n    0x61,0x72,0x65,0x20,0x6e,0x6f,0x74,0x20,0x63,0x61,0x6c,0x6c,0x65,0x64,0x20,0x66,\n    0x6f,0x72,0x20,0x74,0x61,0x69,0x6c,0x20,0x63,0x61,0x6c,0x6c,0x73,0x20,0x69,0x6e,\n    0x20,0x4a,0x49,0x54,0x20,0x28,0x62,0x75,0x74,0x20,0x75,0x6e,0x6c,0x69,0x6b,0x65,\n    0x20,0x35,0x2e,0x32,0x20,0x74,0x68,0x65,0x72,0x65,0x20,0x69,0x73,0x20,0x6e,0x6f,\n    0x20,0x77,0x61,0x79,0x20,0x74,0x6f,0x20,0x6b,0x6e,0x6f,0x77,0x20,0x77,0x68,0x65,\n    0x74,0x68,0x65,0x72,0x20,0x61,0x20,0x63,0x61,0x6c,0x6c,0x20,0x69,0x73,0x20,0x74,\n    0x61,0x69,0x6c,0x20,0x6f,0x72,0x20,0x6e,0x6f,0x74,0x29,0x2e,0x0a,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x2d,0x2d,0x20,0x53,0x6f,0x20,0x74,\n    0x68,0x65,0x20,0x6f,0x6e,0x6c,0x79,0x20,0x72,0x65,0x6c,0x69,0x61,0x62,0x6c,0x65,\n    0x20,0x77,0x61,0x79,0x20,0x74,0x6f,0x20,0x6b,0x6e,0x6f,0x77,0x20,0x73,0x74,0x61,\n    0x63,0x6b,0x20,0x64,0x65,0x70,0x74,0x68,0x20,0x69,0x73,0x20,0x74,0x6f,0x20,0x77,\n    0x61,0x6c,0x6b,0x20,0x69,0x74,0x2e,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x64,0x65,0x70,0x74,0x68,0x20,\n    0x3d,0x20,0x32,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x2d,0x2d,0x20,0x54,0x4f,0x44,0x4f,0x3a,0x20,0x66,0x69,0x6e,0x64,0x20,0x74,0x68,\n    0x65,0x20,0x66,0x61,0x73,0x74,0x65,0x73,0x74,0x20,0x77,0x61,0x79,0x20,0x74,0x6f,\n    0x20,0x63,0x61,0x6c,0x6c,0x20,0x67,0x65,0x74,0x69,0x6e,0x66,0x6f,0x20,0x28,0x27,\n    0x77,0x68,0x61,0x74,0x27,0x20,0x70,0x61,0x72,0x61,0x6d,0x65,0x74,0x65,0x72,0x29,\n    0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x77,0x68,0x69,\n    0x6c,0x65,0x20,0x64,0x65,0x62,0x75,0x67,0x2e,0x67,0x65,0x74,0x69,0x6e,0x66,0x6f,\n    0x28,0x64,0x65,0x70,0x74,0x68,0x2c,0x20,0x22,0x66,0x22,0x29,0x20,0x64,0x6f,0x20,\n    0x64,0x65,0x70,0x74,0x68,0x20,0x3d,0x20,0x64,0x65,0x70,0x74,0x68,0x20,0x2b,0x20,\n    0x31,0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x73,0x74,0x61,0x63,0x6b,0x5f,0x6c,0x65,0x76,0x65,0x6c,0x73,0x5b,0x74,\n    0x68,0x72,0x65,0x61,0x64,0x5d,0x20,0x3d,0x20,0x64,0x65,0x70,0x74,0x68,0x20,0x2d,\n    0x20,0x32,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x65,0x6c,0x73,0x65,0x69,\n    0x66,0x20,0x65,0x76,0x65,0x6e,0x74,0x20,0x3d,0x3d,0x20,0x22,0x6c,0x69,0x6e,0x65,\n    0x22,0x20,0x74,0x68,0x65,0x6e,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x61,0x63,0x74,0x69,0x76,0x65,0x5f,0x73,0x65,0x73,0x73,0x69,0x6f,\n    0x6e,0x2e,0x63,0x6f,0x72,0x6f,0x20,0x3d,0x20,0x75,0x74,0x69,0x6c,0x2e,0x43,0x75,\n    0x72,0x72,0x65,0x6e,0x74,0x54,0x68,0x72,0x65,0x61,0x64,0x28,0x63,0x6f,0x72,0x75,\n    0x6e,0x6e,0x69,0x6e,0x67,0x28,0x29,0x29,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x69,0x66,0x20,0x61,0x63,0x74,0x69,0x76,0x65,0x5f,0x73,\n    0x65,0x73,0x73,0x69,0x6f,0x6e,0x2e,0x63,0x6f,0x72,0x6f,0x5b,0x31,0x5d,0x20,0x3d,\n    0x3d,0x20,0x22,0x6d,0x61,0x69,0x6e,0x22,0x20,0x74,0x68,0x65,0x6e,0x0a,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x6c,0x69,\n    0x6e,0x65,0x5f,0x68,0x6f,0x6f,0x6b,0x28,0x6c,0x69,0x6e,0x65,0x29,0x0a,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x65,0x6c,0x73,0x65,0x0a,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x2d,\n    0x2d,0x20,0x72,0x75,0x6e,0x20,0x74,0x68,0x65,0x20,0x64,0x65,0x62,0x75,0x67,0x67,\n    0x65,0x72,0x20,0x6c,0x6f,0x6f,0x70,0x20,0x69,0x6e,0x20,0x61,0x6e,0x6f,0x74,0x68,\n    0x65,0x72,0x20,0x74,0x68,0x72,0x65,0x61,0x64,0x20,0x6f,0x6e,0x20,0x74,0x68,0x65,\n    0x20,0x6f,0x74,0x68,0x65,0x72,0x20,0x63,0x61,0x73,0x65,0x73,0x20,0x28,0x73,0x69,\n    0x6d,0x70,0x6c,0x69,0x66,0x69,0x65,0x73,0x20,0x73,0x74,0x61,0x63,0x6b,0x20,0x68,\n    0x61,0x6e,0x64,0x6c,0x69,0x6e,0x67,0x29,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x61,0x73,0x73,0x65,0x72,0x74,0x28,\n    0x63,0x6f,0x72,0x65,0x73,0x75,0x6d,0x65,0x28,0x6c,0x69,0x6e,0x65,0x5f,0x68,0x6f,\n    0x6f,0x6b,0x5f,0x63,0x6f,0x72,0x6f,0x2c,0x20,0x6c,0x69,0x6e,0x65,0x29,0x29,0x0a,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x65,0x6e,0x64,0x0a,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x61,0x63,0x74,0x69,\n    0x76,0x65,0x5f,0x73,0x65,0x73,0x73,0x69,0x6f,0x6e,0x2e,0x63,0x6f,0x72,0x6f,0x20,\n    0x3d,0x20,0x6e,0x69,0x6c,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x65,0x6e,\n    0x64,0x0a,0x20,0x20,0x20,0x20,0x65,0x6e,0x64,0x0a,0x65,0x6e,0x64,0x0a,0x0a,0x6c,\n    0x6f,0x63,0x61,0x6c,0x20,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x20,0x69,0x6e,\n    0x69,0x74,0x28,0x68,0x6f,0x73,0x74,0x2c,0x20,0x70,0x6f,0x72,0x74,0x2c,0x20,0x69,\n    0x64,0x65,0x6b,0x65,0x79,0x2c,0x20,0x74,0x72,0x61,0x6e,0x73,0x70,0x6f,0x72,0x74,\n    0x2c,0x20,0x65,0x78,0x65,0x63,0x75,0x74,0x69,0x6f,0x6e,0x70,0x6c,0x61,0x74,0x66,\n    0x6f,0x72,0x6d,0x2c,0x20,0x77,0x6f,0x72,0x6b,0x69,0x6e,0x67,0x64,0x69,0x72,0x65,\n    0x63,0x74,0x6f,0x72,0x79,0x2c,0x20,0x73,0x65,0x61,0x72,0x63,0x68,0x70,0x61,0x74,\n    0x68,0x73,0x29,0x0a,0x20,0x20,0x20,0x20,0x2d,0x2d,0x20,0x67,0x65,0x74,0x20,0x63,\n    0x6f,0x6e,0x6e,0x65,0x63,0x74,0x69,0x6f,0x6e,0x20,0x64,0x61,0x74,0x61,0x0a,0x20,\n    0x20,0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x68,0x6f,0x73,0x74,0x20,0x3d,0x20,\n    0x68,0x6f,0x73,0x74,0x20,0x6f,0x72,0x20,0x6f,0x73,0x2e,0x67,0x65,0x74,0x65,0x6e,\n    0x76,0x20,0x22,0x44,0x42,0x47,0x50,0x5f,0x49,0x44,0x45,0x48,0x4f,0x53,0x54,0x22,\n    0x20,0x6f,0x72,0x20,0x22,0x31,0x32,0x37,0x2e,0x30,0x2e,0x30,0x2e,0x31,0x22,0x0a,\n    0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x70,0x6f,0x72,0x74,0x20,0x3d,\n    0x20,0x70,0x6f,0x72,0x74,0x20,0x6f,0x72,0x20,0x6f,0x73,0x2e,0x67,0x65,0x74,0x65,\n    0x6e,0x76,0x20,0x22,0x44,0x42,0x47,0x50,0x5f,0x49,0x44,0x45,0x50,0x4f,0x52,0x54,\n    0x22,0x20,0x6f,0x72,0x20,0x22,0x31,0x30,0x30,0x30,0x30,0x22,0x0a,0x20,0x20,0x20,\n    0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x69,0x64,0x65,0x6b,0x65,0x79,0x20,0x3d,0x20,\n    0x69,0x64,0x65,0x6b,0x65,0x79,0x20,0x6f,0x72,0x20,0x6f,0x73,0x2e,0x67,0x65,0x74,\n    0x65,0x6e,0x76,0x28,0x22,0x44,0x42,0x47,0x50,0x5f,0x49,0x44,0x45,0x4b,0x45,0x59,\n    0x22,0x29,0x20,0x6f,0x72,0x20,0x22,0x6c,0x75,0x61,0x69,0x64,0x65,0x6b,0x65,0x79,\n    0x22,0x0a,0x0a,0x20,0x20,0x20,0x20,0x2d,0x2d,0x20,0x69,0x6e,0x69,0x74,0x20,0x70,\n    0x6c,0x61,0x66,0x6f,0x72,0x6d,0x20,0x6d,0x6f,0x64,0x75,0x6c,0x65,0x0a,0x20,0x20,\n    0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x65,0x78,0x65,0x63,0x75,0x74,0x69,0x6f,\n    0x6e,0x70,0x6c,0x61,0x74,0x66,0x6f,0x72,0x6d,0x20,0x3d,0x20,0x65,0x78,0x65,0x63,\n    0x75,0x74,0x69,0x6f,0x6e,0x70,0x6c,0x61,0x74,0x66,0x6f,0x72,0x6d,0x20,0x6f,0x72,\n    0x20,0x6f,0x73,0x2e,0x67,0x65,0x74,0x65,0x6e,0x76,0x28,0x22,0x44,0x42,0x47,0x50,\n    0x5f,0x50,0x4c,0x41,0x54,0x46,0x4f,0x52,0x4d,0x22,0x29,0x20,0x6f,0x72,0x20,0x6e,\n    0x69,0x6c,0x0a,0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x77,0x6f,0x72,\n    0x6b,0x69,0x6e,0x67,0x64,0x69,0x72,0x65,0x63,0x74,0x6f,0x72,0x79,0x20,0x3d,0x20,\n    0x77,0x6f,0x72,0x6b,0x69,0x6e,0x67,0x64,0x69,0x72,0x65,0x63,0x74,0x6f,0x72,0x79,\n    0x20,0x6f,0x72,0x20,0x6f,0x73,0x2e,0x67,0x65,0x74,0x65,0x6e,0x76,0x28,0x22,0x44,\n    0x42,0x47,0x50,0x5f,0x57,0x4f,0x52,0x4b,0x49,0x4e,0x47,0x44,0x49,0x52,0x22,0x29,\n    0x20,0x6f,0x72,0x20,0x6e,0x69,0x6c,0x0a,0x20,0x20,0x20,0x20,0x70,0x6c,0x61,0x74,\n    0x66,0x6f,0x72,0x6d,0x2e,0x69,0x6e,0x69,0x74,0x28,0x65,0x78,0x65,0x63,0x75,0x74,\n    0x69,0x6f,0x6e,0x70,0x6c,0x61,0x74,0x66,0x6f,0x72,0x6d,0x2c,0x77,0x6f,0x72,0x6b,\n    0x69,0x6e,0x67,0x64,0x69,0x72,0x65,0x63,0x74,0x6f,0x72,0x79,0x2c,0x73,0x65,0x61,\n    0x72,0x63,0x68,0x70,0x61,0x74,0x68,0x73,0x29,0x0a,0x0a,0x20,0x20,0x20,0x20,0x2d,\n    0x2d,0x20,0x67,0x65,0x74,0x20,0x74,0x72,0x61,0x6e,0x73,0x70,0x6f,0x72,0x74,0x20,\n    0x6c,0x61,0x79,0x65,0x72,0x0a,0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,\n    0x74,0x72,0x61,0x6e,0x73,0x70,0x6f,0x72,0x74,0x70,0x61,0x74,0x68,0x20,0x3d,0x20,\n    0x74,0x72,0x61,0x6e,0x73,0x70,0x6f,0x72,0x74,0x20,0x6f,0x72,0x20,0x6f,0x73,0x2e,\n    0x67,0x65,0x74,0x65,0x6e,0x76,0x28,0x22,0x44,0x42,0x47,0x50,0x5f,0x54,0x52,0x41,\n    0x4e,0x53,0x50,0x4f,0x52,0x54,0x22,0x29,0x20,0x6f,0x72,0x20,0x22,0x64,0x65,0x62,\n    0x75,0x67,0x67,0x65,0x72,0x2e,0x74,0x72,0x61,0x6e,0x73,0x70,0x6f,0x72,0x74,0x2e,\n    0x6c,0x75,0x61,0x73,0x6f,0x63,0x6b,0x65,0x74,0x22,0x0a,0x20,0x20,0x20,0x20,0x6c,\n    0x6f,0x63,0x61,0x6c,0x20,0x74,0x72,0x61,0x6e,0x73,0x70,0x6f,0x72,0x74,0x20,0x3d,\n    0x20,0x72,0x65,0x71,0x75,0x69,0x72,0x65,0x28,0x74,0x72,0x61,0x6e,0x73,0x70,0x6f,\n    0x72,0x74,0x70,0x61,0x74,0x68,0x29,0x0a,0x0a,0x20,0x20,0x20,0x20,0x2d,0x2d,0x20,\n    0x69,0x6e,0x73,0x74,0x61,0x6c,0x6c,0x20,0x62,0x61,0x73,0x65,0x36,0x34,0x20,0x66,\n    0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x73,0x20,0x69,0x6e,0x74,0x6f,0x20,0x75,0x74,\n    0x69,0x6c,0x0a,0x20,0x20,0x20,0x20,0x75,0x74,0x69,0x6c,0x2e,0x62,0x36,0x34,0x2c,\n    0x20,0x75,0x74,0x69,0x6c,0x2e,0x72,0x61,0x77,0x62,0x36,0x34,0x2c,0x20,0x75,0x74,\n    0x69,0x6c,0x2e,0x75,0x6e,0x62,0x36,0x34,0x20,0x3d,0x20,0x74,0x72,0x61,0x6e,0x73,\n    0x70,0x6f,0x72,0x74,0x2e,0x62,0x36,0x34,0x2c,0x20,0x74,0x72,0x61,0x6e,0x73,0x70,\n    0x6f,0x72,0x74,0x2e,0x72,0x61,0x77,0x62,0x36,0x34,0x2c,0x20,0x74,0x72,0x61,0x6e,\n    0x73,0x70,0x6f,0x72,0x74,0x2e,0x75,0x6e,0x62,0x36,0x34,0x0a,0x0a,0x20,0x20,0x20,\n    0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x73,0x6b,0x74,0x20,0x3d,0x20,0x61,0x73,0x73,\n    0x65,0x72,0x74,0x28,0x74,0x72,0x61,0x6e,0x73,0x70,0x6f,0x72,0x74,0x2e,0x63,0x72,\n    0x65,0x61,0x74,0x65,0x28,0x29,0x29,0x0a,0x20,0x20,0x20,0x20,0x73,0x6b,0x74,0x3a,\n    0x73,0x65,0x74,0x74,0x69,0x6d,0x65,0x6f,0x75,0x74,0x28,0x6e,0x69,0x6c,0x29,0x0a,\n    0x0a,0x20,0x20,0x20,0x20,0x2d,0x2d,0x20,0x74,0x72,0x79,0x20,0x74,0x6f,0x20,0x63,\n    0x6f,0x6e,0x6e,0x65,0x63,0x74,0x20,0x73,0x65,0x76,0x65,0x72,0x61,0x6c,0x20,0x74,\n    0x69,0x6d,0x65,0x73,0x3a,0x20,0x69,0x66,0x20,0x49,0x44,0x45,0x20,0x6c,0x61,0x75,\n    0x6e,0x63,0x68,0x65,0x73,0x20,0x62,0x6f,0x74,0x68,0x20,0x70,0x72,0x6f,0x63,0x65,\n    0x73,0x73,0x20,0x61,0x6e,0x64,0x20,0x73,0x65,0x72,0x76,0x65,0x72,0x20,0x61,0x74,\n    0x20,0x73,0x61,0x6d,0x65,0x20,0x74,0x69,0x6d,0x65,0x2c,0x20,0x66,0x69,0x72,0x73,\n    0x74,0x20,0x63,0x6f,0x6e,0x6e,0x65,0x63,0x74,0x20,0x61,0x74,0x74,0x65,0x6d,0x70,\n    0x74,0x73,0x20,0x6d,0x61,0x79,0x20,0x66,0x61,0x69,0x6c,0x0a,0x20,0x20,0x20,0x20,\n    0x6c,0x6f,0x63,0x61,0x6c,0x20,0x6f,0x6b,0x2c,0x20,0x65,0x72,0x72,0x0a,0x20,0x20,\n    0x20,0x20,0x70,0x72,0x69,0x6e,0x74,0x28,0x73,0x74,0x72,0x69,0x6e,0x67,0x2e,0x66,\n    0x6f,0x72,0x6d,0x61,0x74,0x28,0x22,0x44,0x65,0x62,0x75,0x67,0x67,0x65,0x72,0x20,\n    0x76,0x25,0x73,0x22,0x2c,0x20,0x44,0x42,0x47,0x50,0x5f,0x43,0x4c,0x49,0x45,0x4e,\n    0x54,0x5f,0x56,0x45,0x52,0x53,0x49,0x4f,0x4e,0x29,0x29,0x0a,0x20,0x20,0x20,0x20,\n    0x70,0x72,0x69,0x6e,0x74,0x28,0x73,0x74,0x72,0x69,0x6e,0x67,0x2e,0x66,0x6f,0x72,\n    0x6d,0x61,0x74,0x28,0x22,0x44,0x65,0x62,0x75,0x67,0x67,0x65,0x72,0x3a,0x20,0x54,\n    0x72,0x79,0x69,0x6e,0x67,0x20,0x74,0x6f,0x20,0x63,0x6f,0x6e,0x6e,0x65,0x63,0x74,\n    0x20,0x74,0x6f,0x20,0x25,0x73,0x3a,0x25,0x73,0x20,0x2e,0x2e,0x2e,0x20,0x22,0x2c,\n    0x20,0x68,0x6f,0x73,0x74,0x2c,0x20,0x70,0x6f,0x72,0x74,0x29,0x29,0x0a,0x20,0x20,\n    0x20,0x20,0x6f,0x6b,0x2c,0x20,0x65,0x72,0x72,0x20,0x3d,0x20,0x73,0x6b,0x74,0x3a,\n    0x63,0x6f,0x6e,0x6e,0x65,0x63,0x74,0x28,0x68,0x6f,0x73,0x74,0x2c,0x20,0x70,0x6f,\n    0x72,0x74,0x29,0x0a,0x20,0x20,0x20,0x20,0x66,0x6f,0x72,0x20,0x69,0x3d,0x31,0x2c,\n    0x20,0x34,0x20,0x64,0x6f,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x69,0x66,\n    0x20,0x6f,0x6b,0x20,0x74,0x68,0x65,0x6e,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x70,0x72,0x69,0x6e,0x74,0x28,0x22,0x44,0x65,0x62,0x75,0x67,0x67,\n    0x65,0x72,0x3a,0x20,0x43,0x6f,0x6e,0x6e,0x65,0x63,0x74,0x69,0x6f,0x6e,0x20,0x73,\n    0x75,0x63,0x63,0x65,0x65,0x64,0x2e,0x22,0x29,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x62,0x72,0x65,0x61,0x6b,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x65,0x6c,0x73,0x65,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x2d,0x2d,0x20,0x77,0x61,0x69,0x74,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x74,0x72,0x61,0x6e,0x73,0x70,0x6f,0x72,0x74,0x2e,0x73,0x6c,0x65,\n    0x65,0x70,0x28,0x30,0x2e,0x35,0x29,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x2d,0x2d,0x20,0x74,0x68,0x65,0x6e,0x20,0x72,0x65,0x74,0x72,0x79,0x2e,\n    0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x70,0x72,0x69,0x6e,0x74,\n    0x28,0x73,0x74,0x72,0x69,0x6e,0x67,0x2e,0x66,0x6f,0x72,0x6d,0x61,0x74,0x28,0x22,\n    0x44,0x65,0x62,0x75,0x67,0x67,0x65,0x72,0x3a,0x20,0x52,0x65,0x74,0x72,0x79,0x69,\n    0x6e,0x67,0x20,0x74,0x6f,0x20,0x63,0x6f,0x6e,0x6e,0x65,0x63,0x74,0x20,0x74,0x6f,\n    0x20,0x25,0x73,0x3a,0x25,0x73,0x20,0x2e,0x2e,0x2e,0x20,0x22,0x2c,0x20,0x68,0x6f,\n    0x73,0x74,0x2c,0x20,0x70,0x6f,0x72,0x74,0x29,0x29,0x0a,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x6f,0x6b,0x2c,0x20,0x65,0x72,0x72,0x20,0x3d,0x20,0x73,\n    0x6b,0x74,0x3a,0x63,0x6f,0x6e,0x6e,0x65,0x63,0x74,0x28,0x68,0x6f,0x73,0x74,0x2c,\n    0x20,0x70,0x6f,0x72,0x74,0x29,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x65,\n    0x6e,0x64,0x0a,0x20,0x20,0x20,0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,0x20,0x20,0x69,\n    0x66,0x20,0x65,0x72,0x72,0x20,0x74,0x68,0x65,0x6e,0x20,0x65,0x72,0x72,0x6f,0x72,\n    0x28,0x73,0x74,0x72,0x69,0x6e,0x67,0x2e,0x66,0x6f,0x72,0x6d,0x61,0x74,0x28,0x22,\n    0x43,0x61,0x6e,0x6e,0x6f,0x74,0x20,0x63,0x6f,0x6e,0x6e,0x65,0x63,0x74,0x20,0x74,\n    0x6f,0x20,0x25,0x73,0x3a,0x25,0x64,0x20,0x3a,0x20,0x25,0x73,0x22,0x2c,0x20,0x68,\n    0x6f,0x73,0x74,0x2c,0x20,0x70,0x6f,0x72,0x74,0x2c,0x20,0x65,0x72,0x72,0x29,0x29,\n    0x20,0x65,0x6e,0x64,0x0a,0x0a,0x20,0x20,0x20,0x20,0x2d,0x2d,0x20,0x67,0x65,0x74,\n    0x20,0x74,0x68,0x65,0x20,0x64,0x65,0x62,0x75,0x67,0x67,0x65,0x72,0x20,0x61,0x6e,\n    0x64,0x20,0x74,0x72,0x61,0x6e,0x73,0x70,0x6f,0x72,0x74,0x20,0x6c,0x61,0x79,0x65,\n    0x72,0x20,0x55,0x52,0x49,0x0a,0x20,0x20,0x20,0x20,0x64,0x65,0x62,0x75,0x67,0x67,\n    0x65,0x72,0x5f,0x75,0x72,0x69,0x20,0x3d,0x20,0x70,0x6c,0x61,0x74,0x66,0x6f,0x72,\n    0x6d,0x2e,0x67,0x65,0x74,0x5f,0x75,0x72,0x69,0x28,0x64,0x65,0x62,0x75,0x67,0x2e,\n    0x67,0x65,0x74,0x69,0x6e,0x66,0x6f,0x28,0x31,0x29,0x2e,0x73,0x6f,0x75,0x72,0x63,\n    0x65,0x29,0x0a,0x20,0x20,0x20,0x20,0x74,0x72,0x61,0x6e,0x73,0x70,0x6f,0x72,0x74,\n    0x6d,0x6f,0x64,0x75,0x6c,0x65,0x5f,0x75,0x72,0x69,0x20,0x3d,0x20,0x70,0x6c,0x61,\n    0x74,0x66,0x6f,0x72,0x6d,0x2e,0x67,0x65,0x74,0x5f,0x75,0x72,0x69,0x28,0x64,0x65,\n    0x62,0x75,0x67,0x2e,0x67,0x65,0x74,0x69,0x6e,0x66,0x6f,0x28,0x74,0x72,0x61,0x6e,\n    0x73,0x70,0x6f,0x72,0x74,0x2e,0x63,0x72,0x65,0x61,0x74,0x65,0x29,0x2e,0x73,0x6f,\n    0x75,0x72,0x63,0x65,0x29,0x0a,0x0a,0x20,0x20,0x20,0x20,0x2d,0x2d,0x20,0x67,0x65,\n    0x74,0x20,0x74,0x68,0x65,0x20,0x72,0x6f,0x6f,0x74,0x20,0x73,0x63,0x72,0x69,0x70,\n    0x74,0x20,0x70,0x61,0x74,0x68,0x20,0x28,0x74,0x68,0x65,0x20,0x68,0x69,0x67,0x68,\n    0x65,0x73,0x74,0x20,0x70,0x6f,0x73,0x73,0x69,0x62,0x6c,0x65,0x20,0x73,0x74,0x61,\n    0x63,0x6b,0x20,0x69,0x6e,0x64,0x65,0x78,0x29,0x0a,0x20,0x20,0x20,0x20,0x6c,0x6f,\n    0x63,0x61,0x6c,0x20,0x73,0x6f,0x75,0x72,0x63,0x65,0x0a,0x20,0x20,0x20,0x20,0x66,\n    0x6f,0x72,0x20,0x69,0x3d,0x32,0x2c,0x20,0x6d,0x61,0x74,0x68,0x2e,0x68,0x75,0x67,\n    0x65,0x20,0x64,0x6f,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,\n    0x61,0x6c,0x20,0x69,0x6e,0x66,0x6f,0x20,0x3d,0x20,0x64,0x65,0x62,0x75,0x67,0x2e,\n    0x67,0x65,0x74,0x69,0x6e,0x66,0x6f,0x28,0x69,0x29,0x0a,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x69,0x66,0x20,0x6e,0x6f,0x74,0x20,0x69,0x6e,0x66,0x6f,0x20,0x74,\n    0x68,0x65,0x6e,0x20,0x62,0x72,0x65,0x61,0x6b,0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x73,0x6f,0x75,0x72,0x63,0x65,0x20,0x3d,0x20,0x70,\n    0x6c,0x61,0x74,0x66,0x6f,0x72,0x6d,0x2e,0x67,0x65,0x74,0x5f,0x75,0x72,0x69,0x28,\n    0x69,0x6e,0x66,0x6f,0x2e,0x73,0x6f,0x75,0x72,0x63,0x65,0x29,0x20,0x6f,0x72,0x20,\n    0x73,0x6f,0x75,0x72,0x63,0x65,0x0a,0x20,0x20,0x20,0x20,0x65,0x6e,0x64,0x0a,0x20,\n    0x20,0x20,0x20,0x69,0x66,0x20,0x6e,0x6f,0x74,0x20,0x73,0x6f,0x75,0x72,0x63,0x65,\n    0x20,0x74,0x68,0x65,0x6e,0x20,0x73,0x6f,0x75,0x72,0x63,0x65,0x20,0x3d,0x20,0x22,\n    0x75,0x6e,0x6b,0x6e,0x6f,0x77,0x6e,0x3a,0x2f,0x22,0x20,0x65,0x6e,0x64,0x20,0x2d,\n    0x2d,0x20,0x77,0x68,0x65,0x6e,0x20,0x6c,0x6f,0x61,0x64,0x65,0x64,0x20,0x62,0x65,\n    0x66,0x6f,0x72,0x65,0x20,0x61,0x63,0x74,0x75,0x61,0x6c,0x20,0x73,0x63,0x72,0x69,\n    0x70,0x74,0x20,0x28,0x77,0x69,0x74,0x68,0x20,0x61,0x20,0x63,0x6f,0x6d,0x6d,0x61,\n    0x6e,0x64,0x20,0x6c,0x69,0x6e,0x65,0x20,0x73,0x77,0x69,0x74,0x63,0x68,0x29,0x0a,\n    0x0a,0x20,0x20,0x20,0x20,0x2d,0x2d,0x20,0x67,0x65,0x6e,0x65,0x72,0x61,0x74,0x65,\n    0x20,0x73,0x6f,0x6d,0x65,0x20,0x6b,0x69,0x6e,0x64,0x20,0x6f,0x66,0x20,0x74,0x68,\n    0x72,0x65,0x61,0x64,0x20,0x69,0x64,0x65,0x6e,0x74,0x69,0x66,0x69,0x65,0x72,0x0a,\n    0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x74,0x68,0x72,0x65,0x61,0x64,\n    0x20,0x3d,0x20,0x63,0x6f,0x72,0x75,0x6e,0x6e,0x69,0x6e,0x67,0x28,0x29,0x20,0x6f,\n    0x72,0x20,0x22,0x6d,0x61,0x69,0x6e,0x22,0x0a,0x20,0x20,0x20,0x20,0x73,0x74,0x61,\n    0x63,0x6b,0x5f,0x6c,0x65,0x76,0x65,0x6c,0x73,0x5b,0x74,0x68,0x72,0x65,0x61,0x64,\n    0x5d,0x20,0x3d,0x20,0x31,0x20,0x2d,0x2d,0x20,0x74,0x68,0x65,0x20,0x72,0x65,0x74,\n    0x75,0x72,0x6e,0x20,0x65,0x76,0x65,0x6e,0x74,0x20,0x77,0x69,0x6c,0x6c,0x20,0x73,\n    0x65,0x74,0x20,0x74,0x68,0x65,0x20,0x63,0x6f,0x75,0x6e,0x74,0x65,0x72,0x20,0x74,\n    0x6f,0x20,0x30,0x0a,0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x73,0x65,\n    0x73,0x73,0x69,0x6f,0x6e,0x69,0x64,0x20,0x3d,0x20,0x74,0x6f,0x73,0x74,0x72,0x69,\n    0x6e,0x67,0x28,0x6f,0x73,0x2e,0x74,0x69,0x6d,0x65,0x28,0x29,0x29,0x20,0x2e,0x2e,\n    0x20,0x22,0x5f,0x22,0x20,0x2e,0x2e,0x20,0x74,0x6f,0x73,0x74,0x72,0x69,0x6e,0x67,\n    0x28,0x74,0x68,0x72,0x65,0x61,0x64,0x29,0x0a,0x0a,0x20,0x20,0x20,0x20,0x64,0x62,\n    0x67,0x70,0x2e,0x73,0x65,0x6e,0x64,0x5f,0x78,0x6d,0x6c,0x28,0x73,0x6b,0x74,0x2c,\n    0x20,0x7b,0x20,0x74,0x61,0x67,0x20,0x3d,0x20,0x22,0x69,0x6e,0x69,0x74,0x22,0x2c,\n    0x20,0x61,0x74,0x74,0x72,0x20,0x3d,0x20,0x7b,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x61,0x70,0x70,0x69,0x64,0x20,0x3d,0x20,0x22,0x4c,0x75,0x61,0x20,0x44,\n    0x42,0x47,0x70,0x22,0x2c,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x69,0x64,\n    0x65,0x6b,0x65,0x79,0x20,0x3d,0x20,0x69,0x64,0x65,0x6b,0x65,0x79,0x2c,0x0a,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x73,0x65,0x73,0x73,0x69,0x6f,0x6e,0x20,0x3d,\n    0x20,0x73,0x65,0x73,0x73,0x69,0x6f,0x6e,0x69,0x64,0x2c,0x0a,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x74,0x68,0x72,0x65,0x61,0x64,0x20,0x3d,0x20,0x74,0x6f,0x73,\n    0x74,0x72,0x69,0x6e,0x67,0x28,0x74,0x68,0x72,0x65,0x61,0x64,0x29,0x2c,0x0a,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x70,0x61,0x72,0x65,0x6e,0x74,0x20,0x3d,0x20,\n    0x22,0x22,0x2c,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x6c,0x61,0x6e,0x67,\n    0x75,0x61,0x67,0x65,0x20,0x3d,0x20,0x22,0x4c,0x75,0x61,0x22,0x2c,0x0a,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x70,0x72,0x6f,0x74,0x6f,0x63,0x6f,0x6c,0x5f,0x76,\n    0x65,0x72,0x73,0x69,0x6f,0x6e,0x20,0x3d,0x20,0x22,0x31,0x2e,0x30,0x22,0x2c,0x0a,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x66,0x69,0x6c,0x65,0x75,0x72,0x69,0x20,\n    0x3d,0x20,0x73,0x6f,0x75,0x72,0x63,0x65,0x0a,0x20,0x20,0x20,0x20,0x7d,0x20,0x7d,\n    0x29,0x0a,0x0a,0x20,0x20,0x20,0x20,0x2d,0x2d,0x46,0x49,0x58,0x4d,0x45,0x20,0x75,\n    0x74,0x69,0x6c,0x2e,0x43,0x75,0x72,0x72,0x65,0x6e,0x74,0x54,0x68,0x72,0x65,0x61,\n    0x64,0x28,0x63,0x6f,0x72,0x75,0x6e,0x6e,0x69,0x6e,0x67,0x29,0x20,0x3d,0x3e,0x20,\n    0x75,0x74,0x69,0x6c,0x2e,0x43,0x75,0x72,0x72,0x65,0x6e,0x74,0x54,0x68,0x72,0x65,\n    0x61,0x64,0x28,0x63,0x6f,0x72,0x75,0x6e,0x6e,0x69,0x6e,0x67,0x28,0x29,0x29,0x20,\n    0x57,0x48,0x41,0x54,0x20,0x44,0x4f,0x45,0x53,0x20,0x49,0x54,0x20,0x46,0x49,0x58,\n    0x45,0x53,0x20,0x3f,0x3f,0x0a,0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,\n    0x73,0x65,0x73,0x73,0x20,0x3d,0x20,0x7b,0x20,0x73,0x6b,0x74,0x20,0x3d,0x20,0x73,\n    0x6b,0x74,0x2c,0x20,0x73,0x74,0x61,0x74,0x65,0x20,0x3d,0x20,0x22,0x73,0x74,0x61,\n    0x72,0x74,0x69,0x6e,0x67,0x22,0x2c,0x20,0x69,0x64,0x20,0x3d,0x20,0x73,0x65,0x73,\n    0x73,0x69,0x6f,0x6e,0x69,0x64,0x2c,0x20,0x63,0x6f,0x72,0x6f,0x20,0x3d,0x20,0x75,\n    0x74,0x69,0x6c,0x2e,0x43,0x75,0x72,0x72,0x65,0x6e,0x74,0x54,0x68,0x72,0x65,0x61,\n    0x64,0x28,0x63,0x6f,0x72,0x75,0x6e,0x6e,0x69,0x6e,0x67,0x29,0x20,0x7d,0x0a,0x20,\n    0x20,0x20,0x20,0x61,0x63,0x74,0x69,0x76,0x65,0x5f,0x73,0x65,0x73,0x73,0x69,0x6f,\n    0x6e,0x20,0x3d,0x20,0x73,0x65,0x73,0x73,0x0a,0x20,0x20,0x20,0x20,0x64,0x65,0x62,\n    0x75,0x67,0x67,0x65,0x72,0x5f,0x6c,0x6f,0x6f,0x70,0x28,0x73,0x65,0x73,0x73,0x29,\n    0x0a,0x0a,0x20,0x20,0x20,0x20,0x2d,0x2d,0x20,0x73,0x65,0x74,0x20,0x64,0x65,0x62,\n    0x75,0x67,0x20,0x68,0x6f,0x6f,0x6b,0x73,0x0a,0x20,0x20,0x20,0x20,0x64,0x65,0x62,\n    0x75,0x67,0x2e,0x73,0x65,0x74,0x68,0x6f,0x6f,0x6b,0x28,0x64,0x65,0x62,0x75,0x67,\n    0x67,0x65,0x72,0x5f,0x68,0x6f,0x6f,0x6b,0x2c,0x20,0x22,0x72,0x6c,0x63,0x22,0x29,\n    0x0a,0x0a,0x20,0x20,0x20,0x20,0x2d,0x2d,0x20,0x69,0x6e,0x73,0x74,0x61,0x6c,0x6c,\n    0x20,0x63,0x6f,0x72,0x6f,0x75,0x74,0x69,0x6e,0x65,0x20,0x63,0x6f,0x6c,0x6c,0x65,\n    0x63,0x74,0x69,0x6e,0x67,0x20,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x73,0x2e,\n    0x0a,0x20,0x20,0x20,0x20,0x2d,0x2d,0x20,0x54,0x4f,0x44,0x4f,0x3a,0x20,0x6d,0x61,\n    0x69,0x6e,0x74,0x61,0x69,0x6e,0x20,0x61,0x20,0x6c,0x69,0x73,0x74,0x20,0x6f,0x66,\n    0x20,0x2a,0x61,0x6c,0x6c,0x2a,0x20,0x63,0x6f,0x72,0x6f,0x75,0x74,0x69,0x6e,0x65,\n    0x73,0x20,0x63,0x61,0x6e,0x20,0x62,0x65,0x20,0x6f,0x76,0x65,0x72,0x6b,0x69,0x6c,\n    0x6c,0x20,0x28,0x66,0x6f,0x72,0x20,0x65,0x78,0x61,0x6d,0x70,0x6c,0x65,0x2c,0x20,\n    0x74,0x68,0x65,0x20,0x6f,0x6e,0x65,0x73,0x20,0x63,0x72,0x65,0x61,0x74,0x65,0x64,\n    0x20,0x62,0x79,0x20,0x63,0x6f,0x70,0x63,0x61,0x6c,0x6c,0x29,0x2c,0x20,0x6d,0x61,\n    0x6b,0x65,0x20,0x61,0x20,0x65,0x78,0x74,0x65,0x6e,0x73,0x69,0x6f,0x6e,0x20,0x70,\n    0x6f,0x69,0x6e,0x74,0x20,0x74,0x6f,0x0a,0x20,0x20,0x20,0x20,0x2d,0x2d,0x20,0x63,\n    0x75,0x73,0x74,0x6f,0x6d,0x69,0x7a,0x65,0x20,0x64,0x65,0x62,0x75,0x67,0x67,0x65,\n    0x64,0x20,0x63,0x6f,0x72,0x6f,0x75,0x74,0x69,0x6e,0x65,0x73,0x0a,0x20,0x20,0x20,\n    0x20,0x2d,0x2d,0x20,0x63,0x6f,0x72,0x6f,0x75,0x74,0x69,0x6e,0x65,0x73,0x20,0x61,\n    0x72,0x65,0x20,0x72,0x65,0x66,0x65,0x72,0x65,0x6e,0x63,0x65,0x64,0x20,0x64,0x75,\n    0x72,0x69,0x6e,0x67,0x20,0x74,0x68,0x65,0x69,0x72,0x20,0x66,0x69,0x72,0x73,0x74,\n    0x20,0x72,0x65,0x73,0x75,0x6d,0x65,0x20,0x28,0x73,0x6f,0x20,0x77,0x65,0x20,0x61,\n    0x72,0x65,0x20,0x73,0x75,0x72,0x65,0x20,0x74,0x68,0x61,0x74,0x20,0x74,0x68,0x65,\n    0x79,0x20,0x61,0x6c,0x77,0x61,0x79,0x73,0x20,0x68,0x61,0x76,0x65,0x20,0x61,0x20,\n    0x73,0x74,0x61,0x63,0x6b,0x20,0x66,0x72,0x61,0x6d,0x65,0x29,0x0a,0x20,0x20,0x20,\n    0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x20,\n    0x72,0x65,0x73,0x75,0x6d,0x65,0x5f,0x68,0x61,0x6e,0x64,0x6c,0x65,0x72,0x28,0x63,\n    0x6f,0x72,0x6f,0x2c,0x20,0x2e,0x2e,0x2e,0x29,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x69,0x66,0x20,0x63,0x6f,0x73,0x74,0x61,0x74,0x75,0x73,0x28,0x63,0x6f,\n    0x72,0x6f,0x29,0x20,0x3d,0x3d,0x20,0x22,0x64,0x65,0x61,0x64,0x22,0x20,0x74,0x68,\n    0x65,0x6e,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x6c,\n    0x6f,0x63,0x61,0x6c,0x20,0x63,0x6f,0x72,0x6f,0x5f,0x69,0x64,0x20,0x3d,0x20,0x63,\n    0x6f,0x72,0x65,0x2e,0x61,0x63,0x74,0x69,0x76,0x65,0x5f,0x63,0x6f,0x72,0x6f,0x75,\n    0x74,0x69,0x6e,0x65,0x73,0x2e,0x66,0x72,0x6f,0x6d,0x5f,0x63,0x6f,0x72,0x6f,0x5b,\n    0x63,0x6f,0x72,0x6f,0x5d,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x63,0x6f,0x72,0x65,0x2e,0x61,0x63,0x74,0x69,0x76,0x65,0x5f,0x63,0x6f,\n    0x72,0x6f,0x75,0x74,0x69,0x6e,0x65,0x73,0x2e,0x66,0x72,0x6f,0x6d,0x5f,0x69,0x64,\n    0x5b,0x63,0x6f,0x72,0x6f,0x5f,0x69,0x64,0x5d,0x20,0x3d,0x20,0x6e,0x69,0x6c,0x0a,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x63,0x6f,0x72,0x65,\n    0x2e,0x61,0x63,0x74,0x69,0x76,0x65,0x5f,0x63,0x6f,0x72,0x6f,0x75,0x74,0x69,0x6e,\n    0x65,0x73,0x2e,0x66,0x72,0x6f,0x6d,0x5f,0x63,0x6f,0x72,0x6f,0x5b,0x63,0x6f,0x72,\n    0x6f,0x5d,0x20,0x3d,0x20,0x6e,0x69,0x6c,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x73,0x74,0x61,0x63,0x6b,0x5f,0x6c,0x65,0x76,0x65,0x6c,\n    0x73,0x5b,0x63,0x6f,0x72,0x6f,0x5d,0x20,0x3d,0x20,0x6e,0x69,0x6c,0x0a,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x2e,0x2e,0x2e,0x0a,0x20,0x20,0x20,\n    0x20,0x65,0x6e,0x64,0x0a,0x0a,0x20,0x20,0x20,0x20,0x66,0x75,0x6e,0x63,0x74,0x69,\n    0x6f,0x6e,0x20,0x63,0x6f,0x72,0x6f,0x75,0x74,0x69,0x6e,0x65,0x2e,0x72,0x65,0x73,\n    0x75,0x6d,0x65,0x28,0x63,0x6f,0x72,0x6f,0x2c,0x20,0x2e,0x2e,0x2e,0x29,0x0a,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x69,0x66,0x20,0x6e,0x6f,0x74,0x20,0x73,0x74,\n    0x61,0x63,0x6b,0x5f,0x6c,0x65,0x76,0x65,0x6c,0x73,0x5b,0x63,0x6f,0x72,0x6f,0x5d,\n    0x20,0x74,0x68,0x65,0x6e,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x2d,0x2d,0x20,0x66,0x69,0x72,0x73,0x74,0x20,0x74,0x69,0x6d,0x65,0x20,\n    0x72,0x65,0x66,0x65,0x72,0x65,0x6e,0x63,0x65,0x64,0x0a,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x73,0x74,0x61,0x63,0x6b,0x5f,0x6c,0x65,0x76,\n    0x65,0x6c,0x73,0x5b,0x63,0x6f,0x72,0x6f,0x5d,0x20,0x3d,0x20,0x30,0x0a,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x63,0x6f,0x72,0x65,0x2e,0x61,\n    0x63,0x74,0x69,0x76,0x65,0x5f,0x63,0x6f,0x72,0x6f,0x75,0x74,0x69,0x6e,0x65,0x73,\n    0x2e,0x6e,0x20,0x3d,0x20,0x63,0x6f,0x72,0x65,0x2e,0x61,0x63,0x74,0x69,0x76,0x65,\n    0x5f,0x63,0x6f,0x72,0x6f,0x75,0x74,0x69,0x6e,0x65,0x73,0x2e,0x6e,0x20,0x2b,0x20,\n    0x31,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x63,0x6f,\n    0x72,0x65,0x2e,0x61,0x63,0x74,0x69,0x76,0x65,0x5f,0x63,0x6f,0x72,0x6f,0x75,0x74,\n    0x69,0x6e,0x65,0x73,0x2e,0x66,0x72,0x6f,0x6d,0x5f,0x69,0x64,0x5b,0x63,0x6f,0x72,\n    0x65,0x2e,0x61,0x63,0x74,0x69,0x76,0x65,0x5f,0x63,0x6f,0x72,0x6f,0x75,0x74,0x69,\n    0x6e,0x65,0x73,0x2e,0x6e,0x5d,0x20,0x3d,0x20,0x63,0x6f,0x72,0x6f,0x0a,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x63,0x6f,0x72,0x65,0x2e,0x61,\n    0x63,0x74,0x69,0x76,0x65,0x5f,0x63,0x6f,0x72,0x6f,0x75,0x74,0x69,0x6e,0x65,0x73,\n    0x2e,0x66,0x72,0x6f,0x6d,0x5f,0x63,0x6f,0x72,0x6f,0x5b,0x63,0x6f,0x72,0x6f,0x5d,\n    0x20,0x3d,0x20,0x63,0x6f,0x72,0x65,0x2e,0x61,0x63,0x74,0x69,0x76,0x65,0x5f,0x63,\n    0x6f,0x72,0x6f,0x75,0x74,0x69,0x6e,0x65,0x73,0x2e,0x6e,0x0a,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x64,0x65,0x62,0x75,0x67,0x2e,0x73,0x65,\n    0x74,0x68,0x6f,0x6f,0x6b,0x28,0x63,0x6f,0x72,0x6f,0x2c,0x20,0x64,0x65,0x62,0x75,\n    0x67,0x67,0x65,0x72,0x5f,0x68,0x6f,0x6f,0x6b,0x2c,0x20,0x22,0x72,0x6c,0x63,0x22,\n    0x29,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x72,0x65,0x73,\n    0x75,0x6d,0x65,0x5f,0x68,0x61,0x6e,0x64,0x6c,0x65,0x72,0x28,0x63,0x6f,0x72,0x6f,\n    0x2c,0x20,0x63,0x6f,0x72,0x65,0x73,0x75,0x6d,0x65,0x28,0x63,0x6f,0x72,0x6f,0x2c,\n    0x20,0x2e,0x2e,0x2e,0x29,0x29,0x0a,0x20,0x20,0x20,0x20,0x65,0x6e,0x64,0x0a,0x0a,\n    0x20,0x20,0x20,0x20,0x2d,0x2d,0x20,0x63,0x6f,0x72,0x6f,0x75,0x74,0x69,0x6e,0x65,\n    0x2e,0x77,0x72,0x61,0x70,0x20,0x75,0x73,0x65,0x73,0x20,0x64,0x69,0x72,0x65,0x63,\n    0x74,0x6c,0x79,0x20,0x43,0x20,0x41,0x50,0x49,0x20,0x66,0x6f,0x72,0x20,0x63,0x6f,\n    0x72,0x6f,0x75,0x74,0x69,0x6e,0x65,0x73,0x20,0x61,0x6e,0x64,0x20,0x64,0x6f,0x65,\n    0x73,0x20,0x6e,0x6f,0x74,0x20,0x74,0x72,0x69,0x67,0x67,0x65,0x72,0x20,0x6f,0x75,\n    0x72,0x20,0x6f,0x76,0x65,0x72,0x72,0x69,0x64,0x64,0x65,0x6e,0x20,0x63,0x6f,0x72,\n    0x6f,0x75,0x74,0x69,0x6e,0x65,0x2e,0x72,0x65,0x73,0x75,0x6d,0x65,0x0a,0x20,0x20,\n    0x20,0x20,0x2d,0x2d,0x20,0x73,0x6f,0x20,0x74,0x68,0x69,0x73,0x20,0x69,0x73,0x20,\n    0x61,0x6e,0x20,0x69,0x6d,0x70,0x6c,0x65,0x6d,0x65,0x6e,0x74,0x61,0x74,0x69,0x6f,\n    0x6e,0x20,0x6f,0x66,0x20,0x77,0x72,0x61,0x70,0x20,0x69,0x6e,0x20,0x70,0x75,0x72,\n    0x65,0x20,0x4c,0x75,0x61,0x0a,0x20,0x20,0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,\n    0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x20,0x77,0x72,0x61,0x70,0x5f,0x68,0x61,\n    0x6e,0x64,0x6c,0x65,0x72,0x28,0x73,0x74,0x61,0x74,0x75,0x73,0x2c,0x20,0x2e,0x2e,\n    0x2e,0x29,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x69,0x66,0x20,0x6e,0x6f,\n    0x74,0x20,0x73,0x74,0x61,0x74,0x75,0x73,0x20,0x74,0x68,0x65,0x6e,0x20,0x65,0x72,\n    0x72,0x6f,0x72,0x28,0x28,0x2e,0x2e,0x2e,0x29,0x29,0x20,0x65,0x6e,0x64,0x0a,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x2e,0x2e,\n    0x2e,0x0a,0x20,0x20,0x20,0x20,0x65,0x6e,0x64,0x0a,0x0a,0x20,0x20,0x20,0x20,0x66,\n    0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x20,0x63,0x6f,0x72,0x6f,0x75,0x74,0x69,0x6e,\n    0x65,0x2e,0x77,0x72,0x61,0x70,0x28,0x66,0x29,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,\n    0x20,0x20,0x6c,0x6f,0x63,0x61,0x6c,0x20,0x63,0x6f,0x72,0x6f,0x20,0x3d,0x20,0x63,\n    0x6f,0x72,0x6f,0x75,0x74,0x69,0x6e,0x65,0x2e,0x63,0x72,0x65,0x61,0x74,0x65,0x28,\n    0x66,0x29,0x0a,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x72,0x65,0x74,0x75,0x72,\n    0x6e,0x20,0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e,0x28,0x2e,0x2e,0x2e,0x29,0x0a,\n    0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x72,0x65,0x74,0x75,\n    0x72,0x6e,0x20,0x77,0x72,0x61,0x70,0x5f,0x68,0x61,0x6e,0x64,0x6c,0x65,0x72,0x28,\n    0x63,0x6f,0x72,0x6f,0x75,0x74,0x69,0x6e,0x65,0x2e,0x72,0x65,0x73,0x75,0x6d,0x65,\n    0x28,0x63,0x6f,0x72,0x6f,0x2c,0x20,0x2e,0x2e,0x2e,0x29,0x29,0x0a,0x20,0x20,0x20,\n    0x20,0x20,0x20,0x20,0x20,0x65,0x6e,0x64,0x0a,0x20,0x20,0x20,0x20,0x65,0x6e,0x64,\n    0x0a,0x0a,0x20,0x20,0x20,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x73,0x65,0x73,\n    0x73,0x0a,0x65,0x6e,0x64,0x0a,0x0a,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x69,0x6e,\n    0x69,0x74,0x0a,0x00,\n};\n\n\n\nint luaopen_lua_m_debugger(lua_State *L) {\n    luaL_loadstring(L, lua_m_debugger);\n    return 1;\n}\n\n\nstatic luaL_Reg lua_debugger_modules[] = {\n    {\"debugger\", luaopen_lua_m_debugger},\n    {NULL, NULL}\n};\n\nvoid luaopen_lua_debugger(lua_State* L)\n{\n    luaL_Reg* lib = lua_debugger_modules;\n    lua_getglobal(L, \"package\");\n    lua_getfield(L, -1, \"preload\");\n    for (; lib->func; lib++)\n    {\n        lib->func(L);\n        lua_setfield(L, -2, lib->name);\n    }\n    lua_pop(L, 2);\n}\n\n#if __cplusplus\n}\n#endif\n"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/Classes/runtime/lua_debugger.h",
    "content": "\n/* lua_debugger.h.h */\n\n#ifndef __LUA_MODULES_049C000C96FE547176CCBB7690BA01B6_H_\n#define __LUA_MODULES_049C000C96FE547176CCBB7690BA01B6_H_\n\n#if __cplusplus\nextern \"C\" {\n#endif\n\n#include \"lua.h\"\n\nvoid luaopen_lua_debugger(lua_State* L);\n\n/*\nint luaopen_lua_m_debugger(lua_State* L);\n*/\n\n#if __cplusplus\n}\n#endif\n\n#endif /* __LUA_MODULES_049C000C96FE547176CCBB7690BA01B6_H_ */\n"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/proj.android/AndroidManifest.xml",
    "content": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<manifest xmlns:android=\"http://schemas.android.com/apk/res/android\"\n      package=\"com.zym.mir9\"\n      android:versionCode=\"1\"\n      android:versionName=\"1.0\"\n      android:installLocation=\"auto\">\n\n    <uses-sdk android:minSdkVersion=\"9\"/>\n    <uses-feature android:glEsVersion=\"0x00020000\" />\n\n    <application android:label=\"@string/app_name\"\n                 android:icon=\"@drawable/icon\">\n\t\t\t\t\t \n        <!-- Tell Cocos2dxActivity the name of our .so -->\n        <meta-data android:name=\"android.app.lib_name\"\n                  android:value=\"cocos2dlua\" />\n\t\t\t\t\t  \n        <activity android:name=\"org.cocos2dx.lua.AppActivity\"\n                  android:label=\"@string/app_name\"\n                  android:screenOrientation=\"landscape\"\n                  android:theme=\"@android:style/Theme.NoTitleBar.Fullscreen\"\n                  android:configChanges=\"orientation\">\n            <intent-filter>\n                <action android:name=\"android.intent.action.MAIN\" />\n                <category android:name=\"android.intent.category.LAUNCHER\" />\n            </intent-filter>\n        </activity>\n    </application>\n\n    <supports-screens android:anyDensity=\"true\"\n                      android:smallScreens=\"true\"\n                      android:normalScreens=\"true\"\n                      android:largeScreens=\"true\"\n                      android:xlargeScreens=\"true\"/>\n    <uses-permission android:name=\"android.permission.INTERNET\"/>\n    <uses-permission android:name=\"android.permission.CHANGE_NETWORK_STATE\"/>  \n    <uses-permission android:name=\"android.permission.CHANGE_WIFI_STATE\"/>  \n    <uses-permission android:name=\"android.permission.ACCESS_NETWORK_STATE\"/>  \n    <uses-permission android:name=\"android.permission.ACCESS_WIFI_STATE\"/>  \n\n    <!-- for anysdk -->\n    <uses-permission android:name=\"android.permission.RESTART_PACKAGES\" />\n    <uses-permission android:name=\"android.permission.KILL_BACKGROUND_PROCESSES\" />\n    \n  \t<uses-permission android:name=\"android.permission.MOUNT_UNMOUNT_FILESYSTEMS\"/>\n \t<uses-permission android:name=\"android.permission.WRITE_EXTERNAL_STORAGE\"/>\n  <uses-permission android:name=\"android.permission.READ_PHONE_STATE\"/>\n</manifest> \n"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/proj.android/ant.properties",
    "content": "# This file is used to override default values used by the Ant build system.\n#\n# This file must be checked into Version Control Systems, as it is\n# integral to the build system of your project.\n\n# This file is only used by the Ant script.\n\n# You can use this to override default values such as\n#  'source.dir' for the location of your java source folder and\n#  'out.dir' for the location of your output folder.\n\n# You can also use it define how the release builds are signed by declaring\n# the following properties:\n#  'key.store' for the location of your keystore and\n#  'key.alias' for the name of the key to use.\n# The password will be asked during the build when you use the 'release' target.\n\n"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/proj.android/build-cfg.json",
    "content": "{\n    \"ndk_module_path\" :[\n        \"../../cocos2d-x\",\n        \"../../cocos2d-x/cocos/\",\n        \"../../cocos2d-x/external\",\n        \"../../cocos2d-x/cocos/scripting\",\n        \"\"\n    ],\n    \"copy_resources\": [\n        {\n            \"from\": \"../../../src\",\n            \"to\": \"src\"\n        },\n        {\n            \"from\": \"../../../res\",\n            \"to\": \"res\"\n        }\n    ],\n    \"must_copy_resources\": [\n        {\n            \"from\": \"../../../config.json\",\n            \"to\": \"\"\n        }\n    ]\n}\n"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/proj.android/build.xml",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<project name=\"mir9\" default=\"debug\">\n\n    <!-- The local.properties file is created and updated by the 'android' tool.\n         It contains the path to the SDK. It should *NOT* be checked into\n         Version Control Systems. -->\n    <property file=\"local.properties\" />\n\n    <!-- The ant.properties file can be created by you. It is only edited by the\n         'android' tool to add properties to it.\n         This is the place to change some Ant specific build properties.\n         Here are some properties you may want to change/update:\n\n         source.dir\n             The name of the source directory. Default is 'src'.\n         out.dir\n             The name of the output directory. Default is 'bin'.\n\n         For other overridable properties, look at the beginning of the rules\n         files in the SDK, at tools/ant/build.xml\n\n         Properties related to the SDK location or the project target should\n         be updated using the 'android' tool with the 'update' action.\n\n         This file is an integral part of the build system for your\n         application and should be checked into Version Control Systems.\n\n         -->\n    <property file=\"ant.properties\" />\n\n    <!-- The project.properties file is created and updated by the 'android'\n         tool, as well as ADT.\n\n         This contains project specific properties such as project target, and library\n         dependencies. Lower level build properties are stored in ant.properties\n         (or in .classpath for Eclipse projects).\n\n         This file is an integral part of the build system for your\n         application and should be checked into Version Control Systems. -->\n    <loadproperties srcFile=\"project.properties\" />\n\n    <!-- quick check on sdk.dir -->\n    <fail\n            message=\"sdk.dir is missing. Make sure to generate local.properties using 'android update project' or to inject it through an env var\"\n            unless=\"sdk.dir\"\n    />\n\n    <!--\n        Import per project custom build rules if present at the root of the project.\n        This is the place to put custom intermediary targets such as:\n            -pre-build\n            -pre-compile\n            -post-compile (This is typically used for code obfuscation.\n                           Compiled code location: ${out.classes.absolute.dir}\n                           If this is not done in place, override ${out.dex.input.absolute.dir})\n            -post-package\n            -post-build\n            -pre-clean\n    -->\n    <import file=\"custom_rules.xml\" optional=\"true\" />\n\n    <!-- Import the actual build file.\n\n         To customize existing targets, there are two options:\n         - Customize only one target:\n             - copy/paste the target into this file, *before* the\n               <import> task.\n             - customize it to your needs.\n         - Customize the whole content of build.xml\n             - copy/paste the content of the rules files (minus the top node)\n               into this file, replacing the <import> task.\n             - customize to your needs.\n\n         ***********************\n         ****** IMPORTANT ******\n         ***********************\n         In all cases you must update the value of version-tag below to read 'custom' instead of an integer,\n         in order to avoid having your file be overridden by tools such as \"android update project\"\n    -->\n    <!-- version-tag: 1 -->\n    <import file=\"${sdk.dir}/tools/ant/build.xml\" />\n\n</project>\n"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/proj.android/build_apk.bat",
    "content": "@echo off\nset DIR=%~dp0\n%QUICK_V3_ROOT%\\quick\\bin\\win32\\php.exe \"%QUICK_V3_ROOT%/quick/bin/lib/build_apk.php\" -pdir %DIR% -classpath %DIR%libs/libPluginProtocol.jar %*\n"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/proj.android/build_apk.sh",
    "content": "#!/bin/bash\nDIR=\"$( cd \"$( dirname \"${BASH_SOURCE[0]}\" )\" && pwd )\"\nexport QUICK_V3_ROOT=`cat ~/.QUICK_V3_ROOT`\nphp \"$QUICK_V3_ROOT/quick/bin/lib/build_apk.php\" -pdir $DIR -classpath $DIR/libs/libPluginProtocol.jar $*\n"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/proj.android/build_native.bat",
    "content": "@echo off\n\nset DIR=%~dp0\nset NDK_DEBUG=1\ncall %DIR%build_native_release.bat"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/proj.android/build_native.sh",
    "content": "#!/usr/bin/env bash\n\nDIR=\"$( cd \"$( dirname \"${BASH_SOURCE[0]}\" )\" && pwd )\"\nexport NDK_DEBUG=1\n$DIR/build_native_release.sh"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/proj.android/build_native_release.bat",
    "content": "@echo off\n\nset DIR=%~dp0\nset APP_ROOT=%DIR%..\\..\\..\\\nset APP_ANDROID_ROOT=%DIR%\nset COCOS2DX_ROOT=%QUICK_V3_ROOT%\n\necho - config:\necho   ANDROID_NDK_ROOT    = %ANDROID_NDK_ROOT%\necho   COCOS2DX_ROOT       = %COCOS2DX_ROOT%\necho   APP_ROOT            = %APP_ROOT%\necho   APP_ANDROID_ROOT    = %APP_ANDROID_ROOT%\n\necho - cleanup\nif exist \"%APP_ANDROID_ROOT%bin\" rmdir /s /q \"%APP_ANDROID_ROOT%bin\"\nmkdir \"%APP_ANDROID_ROOT%bin\"\nif exist \"%APP_ANDROID_ROOT%assets\" rmdir /s /q \"%APP_ANDROID_ROOT%assets\"\nmkdir \"%APP_ANDROID_ROOT%assets\"\n\necho - copy scripts\nmkdir \"%APP_ANDROID_ROOT%assets\\src\"\nxcopy /s /q \"%APP_ROOT%src\\*.*\" \"%APP_ANDROID_ROOT%assets\\src\\\"\necho - copy resources\nmkdir \"%APP_ANDROID_ROOT%assets\\res\"\nxcopy /s /q \"%APP_ROOT%res\\*.*\" \"%APP_ANDROID_ROOT%assets\\res\\\"\necho - copy config\ncopy \"%APP_ROOT%config.json\" \"%APP_ANDROID_ROOT%assets\\config.json\"\n\nrem echo COPY framework_precompiled.zip\nrem echo FROM: %QUICK_V3_ROOT%quick\\lib\\framework_precompiled\nrem echo TO: \"%APP_ANDROID_ROOT%assets\\res\\\"\nrem copy %QUICK_V3_ROOT%quick\\lib\\framework_precompiled\\framework_precompiled.zip \"%APP_ANDROID_ROOT%assets\\res\\\"\n\necho Using prebuilt externals\n\"%ANDROID_NDK_ROOT%\\ndk-build\" %ANDROID_NDK_BUILD_FLAGS% NDK_DEBUG=%NDK_DEBUG% %NDK_BUILD_FLAGS% -C %APP_ANDROID_ROOT% NDK_MODULE_PATH=%APP_ANDROID_ROOT%;%COCOS2DX_ROOT%;%COCOS2DX_ROOT%/cocos;%COCOS2DX_ROOT%/quick/lib;%COCOS2DX_ROOT%/external;%COCOS2DX_ROOT%/cocos/scripting;%APP_ANDROID_ROOT%/../Classes\n"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/proj.android/build_native_release.sh",
    "content": "#!/usr/bin/env bash\n\n# set .bash_profile or .profile\nif [ -f ~/.bash_profile ]; then\nPROFILE_NAME=~/.bash_profile\nelse\nPROFILE_NAME=~/.profile\nfi\nsource $PROFILE_NAME\n\nDIR=\"$( cd \"$( dirname \"${BASH_SOURCE[0]}\" )\" && pwd )\"\nAPP_ROOT=\"$DIR/../../..\"\nAPP_ANDROID_ROOT=\"$DIR\"\nexport COCOS2DX_ROOT=`cat ~/.QUICK_V3_ROOT`\n\necho \"- config:\"\necho \"  ANDROID_NDK_ROOT    = $ANDROID_NDK_ROOT\"\necho \"  COCOS2DX_ROOT       = $COCOS2DX_ROOT\"\necho \"  APP_ROOT            = $APP_ROOT\"\necho \"  APP_ANDROID_ROOT    = $APP_ANDROID_ROOT\"\n\necho \"- cleanup\"\nfind \"$APP_ANDROID_ROOT\" -type d | xargs chmod 755 $1\nif [ -d \"$APP_ANDROID_ROOT\"/bin ]; then\n    rm -rf \"$APP_ANDROID_ROOT\"/bin/*.apk\nfi\nmkdir -p \"$APP_ANDROID_ROOT\"/bin\nchmod 755 \"$APP_ANDROID_ROOT\"/bin\n\nif [ -d \"$APP_ANDROID_ROOT\"/assets ]; then\n    rm -rf \"$APP_ANDROID_ROOT\"/assets/*\nfi\nmkdir -p \"$APP_ANDROID_ROOT\"/assets\nchmod 755 \"$APP_ANDROID_ROOT\"/assets\n\necho \"- copy scripts\"\ncp -rf \"$APP_ROOT\"/src \"$APP_ANDROID_ROOT\"/assets/\necho \"- copy resources\"\ncp -rf \"$APP_ROOT\"/res \"$APP_ANDROID_ROOT\"/assets/\necho \"- copy config\"\ncp -rf \"$APP_ROOT\"/config.json \"$APP_ANDROID_ROOT\"/assets/\n\n# echo COPY framework_precompiled.zip\n# echo FROM: $QUICK_V3_ROOT/quick/lib/framework_precompiled\n# echo TO: \"$APP_ANDROID_ROOT\"/assets/res/\n# cp $QUICK_V3_ROOT/quick/lib/framework_precompiled/framework_precompiled.zip \"$APP_ANDROID_ROOT\"/assets/res/\necho \"\"\n\n# build\necho \"Using prebuilt externals\"\n\"$ANDROID_NDK_ROOT\"/ndk-build $ANDROID_NDK_BUILD_FLAGS NDK_DEBUG=$NDK_DEBUG $NDK_BUILD_FLAGS -C \"$APP_ANDROID_ROOT\" $* \\\n\"NDK_MODULE_PATH=${APP_ANDROID_ROOT}:${COCOS2DX_ROOT}:${COCOS2DX_ROOT}/cocos:${COCOS2DX_ROOT}/quick/lib:${COCOS2DX_ROOT}/external:${COCOS2DX_ROOT}/cocos/scripting:${APP_ANDROID_ROOT}/../Classes\"\n"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/proj.android/clean.bat",
    "content": "@echo off\n\nset DIR=%~dp0\nrmdir /s/q %DIR%obj\nrmdir /s/q %DIR%libs\\armeabi\nrmdir /s/q %DIR%assets\n\n"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/proj.android/clean.sh",
    "content": "#!/usr/bin/env bash\nDIR=\"$( cd \"$( dirname \"${BASH_SOURCE[0]}\" )\" && pwd )\"\nrm -fr $DIR/obj/*\nrm -fr $DIR/libs/armeabi/*.so\nrm -fr $DIR/assets/*\n\n"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/proj.android/gen/com/zym/mir9/R.java",
    "content": "/* AUTO-GENERATED FILE.  DO NOT MODIFY.\n *\n * This class was automatically generated by the\n * aapt tool from the resource data it found.  It\n * should not be modified by hand.\n */\n\npackage com.zym.mir9;\n\npublic final class R {\n    public static final class attr {\n    }\n    public static final class drawable {\n        public static final int btn_close=0x7f020000;\n        public static final int icon=0x7f020001;\n        public static final int ui_ad=0x7f020002;\n    }\n    public static final class id {\n        public static final int image_ad=0x7f050000;\n        public static final int image_close=0x7f050001;\n        public static final int password=0x7f050004;\n        public static final int tips=0x7f050006;\n        public static final int txt_password=0x7f050005;\n        public static final int txt_username=0x7f050003;\n        public static final int username=0x7f050002;\n    }\n    public static final class layout {\n        public static final int plugin_ads=0x7f030000;\n        public static final int plugin_login=0x7f030001;\n    }\n    public static final class string {\n        public static final int app_name=0x7f040015;\n        public static final int plugin_accountSwitch=0x7f040011;\n        public static final int plugin_achievement=0x7f040008;\n        public static final int plugin_antiAddictionQuery=0x7f04000d;\n        public static final int plugin_cancel=0x7f040004;\n        public static final int plugin_center=0x7f040009;\n        public static final int plugin_exit=0x7f04000e;\n        public static final int plugin_hideTool=0x7f04000b;\n        public static final int plugin_login=0x7f040003;\n        public static final int plugin_login_account=0x7f040001;\n        public static final int plugin_login_password=0x7f040002;\n        public static final int plugin_login_title=0x7f040000;\n        public static final int plugin_logout=0x7f040012;\n        public static final int plugin_pause=0x7f04000f;\n        public static final int plugin_pay=0x7f040006;\n        public static final int plugin_pay_content=0x7f040005;\n        public static final int plugin_rank=0x7f040007;\n        public static final int plugin_realNameRegister=0x7f04000c;\n        public static final int plugin_showTool=0x7f04000a;\n        public static final int plugin_submitLoginGameRole=0x7f040013;\n        public static final int plugin_sure=0x7f040010;\n        public static final int plugin_tips=0x7f040014;\n    }\n}\n"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/proj.android/jni/Android.mk",
    "content": "LOCAL_PATH := $(call my-dir)\n\ninclude $(CLEAR_VARS)\n\nLOCAL_MODULE := cocos2dlua_shared\n\nLOCAL_MODULE_FILENAME := libcocos2dlua\n\nLOCAL_SRC_FILES := hellolua/main.cpp \\\n../../Classes/VisibleRect.cpp \\\n../../Classes/AppDelegate.cpp \\\n../../Classes/ConfigParser.cpp\n\nifeq ($(NDK_DEBUG),1)\nLOCAL_SRC_FILES += \\\nhellolua/Runtime_android.cpp \\\n../../Classes/runtime/ConnectWaitLayer.cpp \\\n../../Classes/runtime/ConsoleCommand.cpp \\\n../../Classes/runtime/FileServer.cpp \\\n../../Classes/runtime/Landscape_png.cpp \\\n../../Classes/runtime/lua_debugger.c \\\n../../Classes/runtime/PlayDisable_png.cpp \\\n../../Classes/runtime/PlayEnable_png.cpp \\\n../../Classes/runtime/Portrait_png.cpp \\\n../../Classes/runtime/Protos.pb.cc \\\n../../Classes/runtime/Runtime.cpp \\\n../../Classes/runtime/Shine_png.cpp\nendif\n\n#anysdk\nLOCAL_SRC_FILES += \\\n../../Classes/anysdkbindings.cpp \\\n../../Classes/anysdk_manual_bindings.cpp\n\nLOCAL_C_INCLUDES := \\\n$(LOCAL_PATH)/../../Classes/runtime \\\n$(LOCAL_PATH)/../../Classes \\\n$(COCOS2DX_ROOT)/external \\\n$(COCOS2DX_ROOT)/external/protobuf-lite/src \\\n$(COCOS2DX_ROOT)/quick/lib/quick-src \\\n$(COCOS2DX_ROOT)/quick/lib/quick-src/extra\n\n#anysdk\nLOCAL_C_INCLUDES +=\t\\\n$(LOCAL_PATH)/../protocols/android \\\n$(LOCAL_PATH)/../protocols/include\n\n#anysdk\nLOCAL_WHOLE_STATIC_LIBRARIES += PluginProtocolStatic\n\nLOCAL_STATIC_LIBRARIES := cocos2d_lua_static\nLOCAL_STATIC_LIBRARIES += lua_extensions_static\nLOCAL_STATIC_LIBRARIES += extra_static\nifeq ($(NDK_DEBUG),1)\nLOCAL_STATIC_LIBRARIES += cocos_protobuf-lite_static\nendif\n\ninclude $(BUILD_SHARED_LIBRARY)\n\n$(call import-module,scripting/lua-bindings/proj.android)\n\n$(call import-module, quick-src/lua_extensions)\n$(call import-module, quick-src/extra)\n$(call import-module, protobuf-lite)\n\n#anysdk\n$(call import-module,protocols/android)\n\n"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/proj.android/jni/Application.mk",
    "content": "APP_STL := gnustl_static\nNDK_TOOLCHAIN_VERSION=clang\n\nAPP_CPPFLAGS := -frtti -DCC_ENABLE_CHIPMUNK_INTEGRATION=1 -std=c++11 -fsigned-char\nAPP_LDFLAGS := -latomic\n\nAPP_CPPFLAGS += -DCC_LUA_ENGINE_ENABLED=1\nAPP_CPPFLAGS += -DANYSDK_DEFINE=1\n\nifeq ($(NDK_DEBUG),1)\n  APP_CPPFLAGS += -DCOCOS2D_DEBUG=1\n  APP_OPTIM := debug\nelse\n  APP_CPPFLAGS += -DNDEBUG\n  APP_OPTIM := release\nendif\n\nCC_USE_CURL := 1\nCC_USE_CCSTUDIO := 1\nCC_USE_CCBUILDER := 1\nCC_USE_SPINE := 1\nCC_USE_PHYSICS := 1\nCC_USE_TIFF := 1\nCC_USE_WEBP := 1\nCC_USE_JPEG := 1\nCC_USE_3D := 1\nCC_USE_SQLITE := 1\nCC_CODE_IDE_DEBUG_SUPPORT := 0\n\nifeq ($(CC_USE_CURL),0)\nAPP_CPPFLAGS += -DCC_USE_CURL=0\nendif\nifeq ($(CC_USE_CCSTUDIO),0)\nAPP_CPPFLAGS += -DCC_USE_CCSTUDIO=0\nendif\nifeq ($(CC_USE_CCBUILDER),0)\nAPP_CPPFLAGS += -DCC_USE_CCBUILDER=0\nendif\nifeq ($(CC_USE_SPINE),0)\nAPP_CPPFLAGS += -DCC_USE_SPINE=0\nendif\nifeq ($(CC_USE_PHYSICS),0)\nAPP_CPPFLAGS += -DCC_USE_PHYSICS=0\nendif\nifeq ($(CC_USE_TIFF),0)\nAPP_CPPFLAGS += -DCC_USE_TIFF=0\nendif\nifeq ($(CC_USE_WEBP),0)\nAPP_CPPFLAGS += -DCC_USE_WEBP=0\nendif\nifeq ($(CC_USE_JPEG),0)\nAPP_CPPFLAGS += -DCC_USE_JPEG=0\nendif\nifeq ($(CC_USE_3D),0)\nAPP_CPPFLAGS += -DCC_USE_3D=0\nendif\nifeq ($(CC_CODE_IDE_DEBUG_SUPPORT),0)\nAPP_CPPFLAGS += -DCC_CODE_IDE_DEBUG_SUPPORT=0\nendif\nifeq ($(CC_USE_SQLITE),1)\nAPP_CPPFLAGS += -DCC_USE_SQLITE=1\nAPP_CFLAGS += -DCC_USE_SQLITE=1\nelse\nAPP_CPPFLAGS += -DCC_USE_SQLITE=0\nAPP_CFLAGS += -DCC_USE_SQLITE=0\nendif\n"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/proj.android/jni/hellolua/Runtime_android.cpp",
    "content": "#include <jni.h>\n#include <android/log.h>\n#include \"jni/JniHelper.h\"\n#include <string>\n#include <vector>\nusing namespace std;\nusing namespace cocos2d;\n\nstring getIPAddress()\n{\n\tJniMethodInfo t;\n    string IPAddress(\"\");\n\n    if (JniHelper::getStaticMethodInfo(t, \"org/cocos2dx/lua/AppActivity\", \"getLocalIpAddress\", \"()Ljava/lang/String;\")) {\n        jstring str = (jstring)t.env->CallStaticObjectMethod(t.classID, t.methodID);\n        t.env->DeleteLocalRef(t.classID);\n        IPAddress = JniHelper::jstring2string(str);\n        t.env->DeleteLocalRef(str);\n    }\n    return IPAddress;\n}\n"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/proj.android/jni/hellolua/main.cpp",
    "content": "#include \"AppDelegate.h\"\n#include \"cocos2d.h\"\n#include \"platform/android/jni/JniHelper.h\"\n#include <jni.h>\n#include <android/log.h>\n#include \"ConfigParser.h\"\n#include \"PluginJniHelper.h\"\n\n#define  LOG_TAG    \"main\"\n#define  LOGD(...)  __android_log_print(ANDROID_LOG_DEBUG,LOG_TAG,__VA_ARGS__)\n\nusing namespace cocos2d;\nusing namespace anysdk::framework;\n\nvoid cocos_android_app_init (JNIEnv* env, jobject thiz) {\n    LOGD(\"cocos_android_app_init\");\n    AppDelegate *pAppDelegate = new AppDelegate();\n\n    //set JavaVM for anysdk.\n\tJavaVM* vm;\n\tenv->GetJavaVM(&vm);\n\tPluginJniHelper::setJavaVM(vm);\n}\n\nextern \"C\"\n{\n\tbool Java_org_cocos2dx_lua_AppActivity_nativeIsLandScape(JNIEnv *env, jobject thisz)\n\t{\n\t\treturn ConfigParser::getInstance()->isLanscape();\n\t}\n\n\tbool Java_org_cocos2dx_lua_AppActivity_nativeIsDebug(JNIEnv *env, jobject thisz)\n\t{\n#if (COCOS2D_DEBUG > 0)\n        return true;\n#else\n        return false;    \n#endif\n\t}\n}\n\n"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/proj.android/proguard-project.txt",
    "content": "# To enable ProGuard in your project, edit project.properties\n# to define the proguard.config property as described in that file.\n#\n# Add project specific ProGuard rules here.\n# By default, the flags in this file are appended to flags specified\n# in ${sdk.dir}/tools/proguard/proguard-android.txt\n# You can edit the include path and order by changing the ProGuard\n# include property in project.properties.\n#\n# For more details, see\n#   http://developer.android.com/guide/developing/tools/proguard.html\n\n# Add any project specific keep options here:\n\n# If your project uses WebView with JS, uncomment the following\n# and specify the fully qualified class name to the JavaScript interface\n# class:\n#-keepclassmembers class fqcn.of.javascript.interface.for.webview {\n#   public *;\n#}\n"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/proj.android/project.properties",
    "content": "# This file is automatically generated by Android Tools.\n# Do not modify this file -- YOUR CHANGES WILL BE ERASED!\n#\n# This file must be checked in Version Control Systems.\n#\n# To customize properties used by the Ant build system use,\n# \"ant.properties\", and override values to adapt the script to your\n# project structure.\n\n# Project target.\ntarget=android-10\n\nandroid.library.reference.1=../../cocos2d-x/cocos/platform/android/java\n"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/proj.android/protocols/android/Android.mk",
    "content": "LOCAL_PATH := $(call my-dir)\n\ninclude $(CLEAR_VARS)\nLOCAL_MODULE := PluginProtocolStatic\nLOCAL_MODULE_FILENAME := libPluginProtocolStatic\n\nLOCAL_SRC_FILES := ./lib/$(TARGET_ARCH_ABI)/libPluginProtocolStatic.a\nLOCAL_EXPORT_C_INCLUDES := $(LOCAL_PATH)/../include $(LOCAL_PATH)\nLOCAL_EXPORT_LDLIBS := -llog\nLOCAL_EXPORT_LDLIBS += -lz\n\ninclude $(PREBUILT_STATIC_LIBRARY)\n"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/proj.android/protocols/android/PluginJavaData.h",
    "content": "#ifndef __PLUGIN_JAVA_DATA_H__\n#define __PLUGIN_JAVA_DATA_H__\n\n#include <string>\n#include <jni.h>\n\nnamespace anysdk { namespace framework {\n\ntypedef struct _PluginJavaData_\n{\n\tjobject jobj;\n\tstd::string  jclassName;\n} PluginJavaData;\n\n}} //namespace anysdk { namespace framework {\n\n#endif // __PLUGIN_JAVA_DATA_H__\n"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/proj.android/protocols/android/PluginJniHelper.h",
    "content": "#ifndef __PLUGIN_JNI_HELPER_H__\n#define __PLUGIN_JNI_HELPER_H__\n\n#include <jni.h>\n#include <string>\n\nnamespace anysdk {namespace framework{\n\ntypedef struct PluginJniMethodInfo_\n{\n    JNIEnv *    env;\n    jclass      classID;\n    jmethodID   methodID;\n} PluginJniMethodInfo;\n\nclass PluginJniHelper\n{\npublic:\n    static JavaVM* getJavaVM();\n    static void setJavaVM(JavaVM *javaVM);\n    static JNIEnv* getEnv();\n\n    static bool getStaticMethodInfo(PluginJniMethodInfo &methodinfo, const char *className, const char *methodName, const char *paramCode);\n    static bool getMethodInfo(PluginJniMethodInfo &methodinfo, const char *className, const char *methodName, const char *paramCode);\n    static std::string jstring2string(jstring jstr);\n\n    static bool setClassLoaderFrom(jobject nativeActivityInstance);\n\n    static jmethodID loadclassMethod_methodID;\n    static jobject classloader;\n\nprivate:\n    static JavaVM *_psJavaVM;\n    static bool getMethodInfo_DefaultClassLoader(PluginJniMethodInfo &methodinfo,\n                                                 const char *className,\n                                                 const char *methodName,\n                                                 const char *paramCode);\n};\n\n}}\n\n#endif // __PLUGIN_JNI_HELPER_H__\n"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/proj.android/protocols/android/PluginJniMacros.h",
    "content": "#ifndef __PLUGIN_JNI_MACROS_H__\n#define __PLUGIN_JNI_MACROS_H__\n\n#define return_if_fails(cond) if (!(cond)) return;\n#define return_val_if_fails(cond, ret) if(!(cond)) return (ret);\n\n#define CALL_BASERET_JAVA_FUNC_WITH_PARAM(retType, paramCode, param, retCode, defaultRet)     \\\nretType ret = defaultRet;                                        \\\nreturn_val_if_fails(funcName != NULL && strlen(funcName) > 0, ret);       \\\nreturn_val_if_fails(paramCode != NULL && strlen(paramCode) > 0, ret);     \\\nPluginJavaData* pData = PluginUtils::getPluginJavaData(thiz);    \\\nreturn_val_if_fails(pData != NULL, ret);                         \\\n                                                                 \\\nPluginJniMethodInfo t;                                           \\\nif (PluginJniHelper::getMethodInfo(t                             \\\n    , pData->jclassName.c_str()                                  \\\n    , funcName                                                   \\\n    , paramCode))                                                \\\n{                                                                \\\n    ret = t.env->Call##retCode##Method(pData->jobj, t.methodID, param);  \\\n    t.env->DeleteLocalRef(t.classID);                            \\\n}                                                                \\\nreturn ret;                                                      \\\n\n\n#define CALL_BASERET_JAVA_FUNC(retType, paramCode, retCode, defaultRet)   \\\nretType ret = defaultRet;                                        \\\nreturn_val_if_fails(funcName != NULL && strlen(funcName) > 0, ret);       \\\nPluginJavaData* pData = PluginUtils::getPluginJavaData(thiz);    \\\nreturn_val_if_fails(pData != NULL, ret);                         \\\n                                                                 \\\nPluginJniMethodInfo t;                                           \\\nif (PluginJniHelper::getMethodInfo(t                             \\\n    , pData->jclassName.c_str()                                  \\\n    , funcName                                                   \\\n    , paramCode))                                                \\\n{                                                                \\\n    ret = t.env->Call##retCode##Method(pData->jobj, t.methodID); \\\n    t.env->DeleteLocalRef(t.classID);                            \\\n}                                                                \\\nreturn ret;                                                      \\\n\n\n#define CALL_JAVA_FUNC_WITH_VALIST(retCode)                  \\\nstd::vector<PluginParam*> allParams;                         \\\nif (NULL != param)                                           \\\n{                                                            \\\n    allParams.push_back(param);                              \\\n                                                             \\\n    va_list argp;                                            \\\n    PluginParam* pArg = NULL;                                \\\n    va_start( argp, param );                                 \\\n    while (1)                                                \\\n    {                                                        \\\n        pArg = va_arg(argp, PluginParam*);                   \\\n        if (pArg == NULL)                                    \\\n            break;                                           \\\n                                                             \\\n        allParams.push_back(pArg);                           \\\n    }                                                        \\\n    va_end(argp);                                            \\\n}                                                            \\\n                                                             \\\nreturn call##retCode##FuncWithParam(funcName, allParams);    \\\n\n\n#define CALL_JAVA_FUNC(retType, retCode, defaultRet, jRetCode)    \\\nretType ret = defaultRet;                                                                                     \\\nPluginJavaData* pData = PluginUtils::getPluginJavaData(this);                                                 \\\nif (NULL == pData) {                                                                                          \\\n    PluginUtils::outputLog(\"PluginProtocol\", \"Can't find java data for plugin : %s\", this->getPluginName());  \\\n    return ret;                                                                                               \\\n}                                                                                                             \\\n                                                                                                              \\\nstd::string paramCode;                                                                                        \\\nint nParamNum = params.size();                                                                                \\\nif (0 == nParamNum)                                                                                           \\\n{                                                                                                             \\\n    paramCode = \"()\";                                                                                         \\\n    paramCode.append(jRetCode);                                                                               \\\n    ret = PluginUtils::callJava##retCode##FuncWithName(this, funcName);                                       \\\n} else                                                                                                        \\\n{                                                                                                             \\\n    PluginParam* pRetParam = NULL;                                                                            \\\n    bool needDel = false;                                                                                     \\\n    if (nParamNum == 1) {                                                                                     \\\n        pRetParam = params[0];                                                                                \\\n    } else {                                                                                                  \\\n        std::map<std::string, PluginParam*> allParams;                                                        \\\n        for (int i = 0; i < nParamNum; i++)                                                                   \\\n        {                                                                                                     \\\n            PluginParam* pArg = params[i];                                                                    \\\n            if (pArg == NULL)                                                                                 \\\n            {                                                                                                 \\\n                break;                                                                                        \\\n            }                                                                                                 \\\n                                                                                                              \\\n            char strKey[8] = { 0 };                                                                           \\\n            sprintf(strKey, \"Param%d\", i + 1);                                                                \\\n            allParams[strKey] = pArg;                                                                         \\\n        }                                                                                                     \\\n                                                                                                              \\\n        pRetParam = new PluginParam(allParams);                                                               \\\n        needDel = true;                                                                                       \\\n    }                                                                                                         \\\n                                                                                                              \\\n    switch(pRetParam->getCurrentType())                                                                       \\\n    {                                                                                                         \\\n    case PluginParam::kParamTypeInt:                                                                          \\\n        paramCode = \"(I)\";                                                                                    \\\n        paramCode.append(jRetCode);                                                                           \\\n        ret = PluginUtils::callJava##retCode##FuncWithName_oneParam(this, funcName, paramCode.c_str(), pRetParam->getIntValue());         \\\n        break;                                                                                                \\\n    case PluginParam::kParamTypeFloat:                                                                        \\\n        paramCode = \"(F)\";                                                                                    \\\n        paramCode.append(jRetCode);                                                                           \\\n        ret = PluginUtils::callJava##retCode##FuncWithName_oneParam(this, funcName, paramCode.c_str(), pRetParam->getFloatValue());       \\\n        break;                                                                                                \\\n    case PluginParam::kParamTypeBool:                                                                         \\\n        paramCode = \"(Z)\";                                                                                    \\\n        paramCode.append(jRetCode);                                                                           \\\n        ret = PluginUtils::callJava##retCode##FuncWithName_oneParam(this, funcName, paramCode.c_str(), pRetParam->getBoolValue());        \\\n        break;                                                                                                \\\n    case PluginParam::kParamTypeString:                                                                       \\\n        {                                                                                                     \\\n            jstring jstr = PluginUtils::getEnv()->NewStringUTF(pRetParam->getStringValue());                  \\\n            paramCode = \"(Ljava/lang/String;)\";                                                               \\\n            paramCode.append(jRetCode);                                                                      \\\n            ret = PluginUtils::callJava##retCode##FuncWithName_oneParam(this, funcName, paramCode.c_str(), jstr);    \\\n            PluginUtils::getEnv()->DeleteLocalRef(jstr);                                                      \\\n        }                                                                                                     \\\n        break;                                                                                                \\\n    case PluginParam::kParamTypeStringMap:                                                                    \\\n    case PluginParam::kParamTypeMap:                                                                          \\\n        {                                                                                                     \\\n            jobject jMap = PluginUtils::getJObjFromParam(pRetParam);                                          \\\n            paramCode = \"(Lorg/json/JSONObject;)\";                                                            \\\n            paramCode.append(jRetCode);                                                                       \\\n            ret = PluginUtils::callJava##retCode##FuncWithName_oneParam(this, funcName, paramCode.c_str(), jMap); \\\n            PluginUtils::getEnv()->DeleteLocalRef(jMap);                                                      \\\n        }                                                                                                     \\\n        break;                                                                                                \\\n    default:                                                                                                  \\\n        break;                                                                                                \\\n    }                                                                                                         \\\n                                                                                                              \\\n    if (needDel && pRetParam != NULL)                                                                         \\\n    {                                                                                                         \\\n        delete pRetParam;                                                                                     \\\n        pRetParam = NULL;                                                                                     \\\n    }                                                                                                         \\\n}                                                                                                             \\\nreturn ret;                                                                                                   \\\n\n\n#endif // __PLUGIN_JNI_MACROS_H__\n"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/proj.android/protocols/android/PluginUtils.h",
    "content": "#ifndef __PLUGIN_UTILS_H__\n#define __PLUGIN_UTILS_H__\n\n#include \"PluginJniHelper.h\"\n#include \"PluginJavaData.h\"\n#include <map>\n#include <list>\n#include \"PluginParam.h\"\n#include \"PluginJniMacros.h\"\n#include <android_native_app_glue.h>\n\nnamespace anysdk { namespace framework {\n\nclass PluginProtocol;\nclass PluginUtils\n{\npublic:\n    static void initPluginWrapper(android_app* app);\n    static jobject createJavaMapObject(std::map<std::string, std::string>* paramMap);\n    static jobject createJavaListObject(std::list<std::string>* paramList);\n    static void initJavaPlugin(PluginProtocol* pPlugin, jobject jObj, const char* className, int type);\n    static JNIEnv* getEnv();\n\n    static PluginJavaData* getPluginJavaData(PluginProtocol* pKeyObj);\n    static void setPluginJavaData(PluginProtocol* pKeyObj, PluginJavaData* pData, int type);\n    static void erasePluginJavaData(PluginProtocol* pKeyObj);\n    static void erasePluginJavaData(std::string key);\n\n    static PluginProtocol* getPluginPtr(std::string className);\n\n    static jobject getJObjFromParam(PluginParam* param);\n\n    // methods have no return value\n    template <typename T>\n    static void callJavaFunctionWithName_oneParam(PluginProtocol* thiz, const char* funcName, const char* paramCode, T param)\n    {\n        return_if_fails(funcName != NULL && strlen(funcName) > 0);\n        return_if_fails(paramCode != NULL && strlen(paramCode) > 0);\n        PluginJavaData* pData = PluginUtils::getPluginJavaData(thiz);\n        return_if_fails(pData != NULL);\n\n        PluginJniMethodInfo t;\n        if (PluginJniHelper::getMethodInfo(t\n            , pData->jclassName.c_str()\n            , funcName\n            , paramCode))\n        {\n            t.env->CallVoidMethod(pData->jobj, t.methodID, param);\n            t.env->DeleteLocalRef(t.classID);\n        }\n    }\n    static void callJavaFunctionWithName(PluginProtocol* thiz, const char* funcName)\n    {\n        return_if_fails(funcName != NULL && strlen(funcName) > 0);\n        PluginJavaData* pData = PluginUtils::getPluginJavaData(thiz);\n        return_if_fails(pData != NULL);\n\n        PluginJniMethodInfo t;\n        if (PluginJniHelper::getMethodInfo(t\n            , pData->jclassName.c_str()\n            , funcName\n            , \"()V\"))\n        {\n            t.env->CallVoidMethod(pData->jobj, t.methodID);\n            t.env->DeleteLocalRef(t.classID);\n        }\n    }\n\n    // methods return value is string\n    template <typename T>\n    static std::string callJavaStringFuncWithName_oneParam(PluginProtocol* thiz, const char* funcName, const char* paramCode, T param)\n    {\n        std::string ret = \"\";\n        return_val_if_fails(funcName != NULL && strlen(funcName) > 0, ret);\n        return_val_if_fails(paramCode != NULL && strlen(paramCode) > 0, ret);\n        PluginJavaData* pData = PluginUtils::getPluginJavaData(thiz);\n        return_val_if_fails(pData != NULL, ret);\n\n        PluginJniMethodInfo t;\n        if (PluginJniHelper::getMethodInfo(t\n            , pData->jclassName.c_str()\n            , funcName\n            , paramCode))\n        {\n            jstring strRet = (jstring)t.env->CallObjectMethod(pData->jobj, t.methodID, param);\n            ret = PluginJniHelper::jstring2string(strRet);\n            t.env->DeleteLocalRef(t.classID);\n        }\n        return ret;\n    }\n    static std::string callJavaStringFuncWithName(PluginProtocol* thiz, const char* funcName)\n    {\n        std::string ret = \"\";\n        return_val_if_fails(funcName != NULL && strlen(funcName) > 0, ret);\n        PluginJavaData* pData = PluginUtils::getPluginJavaData(thiz);\n        return_val_if_fails(pData != NULL, ret);\n\n        PluginJniMethodInfo t;\n        if (PluginJniHelper::getMethodInfo(t\n            , pData->jclassName.c_str()\n            , funcName\n            , \"()Ljava/lang/String;\"))\n        {\n            jstring strRet = (jstring) t.env->CallObjectMethod(pData->jobj, t.methodID);\n            ret = PluginJniHelper::jstring2string(strRet);\n            t.env->DeleteLocalRef(t.classID);\n        }\n        return ret;\n    }\n\n    // methods return value is int\n    template <typename T>\n    static int callJavaIntFuncWithName_oneParam(PluginProtocol* thiz, const char* funcName, const char* paramCode, T param)\n    {\n        CALL_BASERET_JAVA_FUNC_WITH_PARAM(int, paramCode, param, Int, 0)\n    }\n    static int callJavaIntFuncWithName(PluginProtocol* thiz, const char* funcName)\n    {\n        CALL_BASERET_JAVA_FUNC(int, \"()I\", Int, 0)\n    }\n\n    // methods return value is float\n    template <typename T>\n    static float callJavaFloatFuncWithName_oneParam(PluginProtocol* thiz, const char* funcName, const char* paramCode, T param)\n    {\n        CALL_BASERET_JAVA_FUNC_WITH_PARAM(float, paramCode, param, Float, 0.0f)\n    }\n    static float callJavaFloatFuncWithName(PluginProtocol* thiz, const char* funcName)\n    {\n        CALL_BASERET_JAVA_FUNC(float, \"()F\", Float, 0.0f);\n    }\n\n    // methods return value is bool\n    template <typename T>\n    static bool callJavaBoolFuncWithName_oneParam(PluginProtocol* thiz, const char* funcName, const char* paramCode, T param)\n    {\n        CALL_BASERET_JAVA_FUNC_WITH_PARAM(bool, paramCode, param, Boolean, false)\n    }\n    static bool callJavaBoolFuncWithName(PluginProtocol* thiz, const char* funcName)\n    {\n        CALL_BASERET_JAVA_FUNC(bool, \"()Z\", Boolean, false)\n    }\n\n    static void outputLog(const char* logTag, const char* pFormat, ...);\n};\n\n}} // namespace anysdk { namespace framework {\n\n#endif //__PLUGIN_UTILS_H__\n"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/proj.android/protocols/include/AgentManager.h",
    "content": "/** @file AgentManager.h\n */\n\n\n#ifndef __CCX_AGENTMANAGER_H__\n#define __CCX_AGENTMANAGER_H__\n\n#include \"PluginManager.h\"\n#include \"ProtocolIAP.h\"\n#include \"ProtocolAnalytics.h\"\n#include \"ProtocolShare.h\"\n#include \"ProtocolAds.h\"\n#include \"ProtocolSocial.h\"\n#include \"ProtocolUser.h\"\n#include \"ProtocolPush.h\"\n#include <map>\n#include <string>\nnamespace anysdk { namespace framework {\n\n/**   \n *  @class  AgentManager  \n */\nclass AgentManager\n{\npublic:\n\tvirtual ~AgentManager();\n    /**\n     @brief Get singleton of AgentManager\n     */\n\n    static AgentManager* getInstance();\n    /**\n     @brief Destory the instance of AgentManager\n     */\n    static void end();\n    \n    /**\n    @breif the init of AgentManager\n    @param the appKey of plugin-x\n    @param the appSecret of plugin-x\n    @param the privateKey of plugin-x\n    @param the url of oauthLoginServer\n    @warning Must invoke this interface before loadALLPlugin\n    */\n    void init(std::string appKey,std::string appSecret,std::string privateKey,std::string oauthLoginServer);\n\n    /**\n     @brief load the plugins\n     */\n    void loadALLPlugin();\n    /**\n     @brief unload the plugins\n     */\n    void unloadALLPlugin();\n    \n    /**\n     @brief Get Analytics plugin\n     @return  if Analytics plugin exist ,return value is Analytics plugin.\n     \t \t  else return value is null pointer.\n     */\n    ProtocolAnalytics* getAnalyticsPlugin(){return _pAnalytics;};\n\n    /**\n     @brief Get User plugin\n     @return  if User plugin exist ,return value is User plugin.\n     \t \t  else return value is null pointer.\n     */\n    ProtocolUser* getUserPlugin(){return _pUser;};\n\n    /**\n     @brief Get IAP plugin\n     @return  if IAP plugin exist ,return value is IAP plugin.\n     \t \t  else return value is null pointer.\n     */\n    std::map<std::string , ProtocolIAP*>* getIAPPlugin(){return &_pluginsIAPMap;};\n\n    /**\n     @brief Get Share plugin\n     @return  if Share plugin exist ,return value is Share plugin.\n     \t \t  else return value is null pointer.\n     */\n    ProtocolShare* getSharePlugin(){return _pShare;};\n\n    /**\n     @brief Get Social plugin\n     @return  if Social plugin exist ,return value is Social plugin.\n     \t \t  else return value is null pointer.\n     */\n    ProtocolSocial* getSocialPlugin(){return _pSocial;};\n\n    /**\n     @brief Get Ads plugin\n     @return  if Ads plugin exist ,return value is Ads plugin.\n     \t \t  else return value is null pointer.\n     */\n    ProtocolAds* getAdsPlugin(){return _pAds;};\n    \n    /**\n     @brief Get Push plugin\n     @return  if Push plugin exist ,return value is Push plugin.\n     \t \t  else return value is null pointer.\n     */\n    ProtocolPush* getPushPlugin(){return _pPush;};\n\n    /**\n     @brief Get channel ID\n     @return  return value is channel ID.\n     */\n    std::string getChannelId();\n\n    /**\n     @brief Get custom param\n     @return  return value is custom param for channel.\n     */\n    std::string getCustomParam();\n\n\n\n\n\nprotected:\n    void setDebugMode(bool flag);\n    std::string getFileData(const char* pFileName);\n    void loadPlugin(const char* nodeName,int type);\n    \n\nprivate:\n    AgentManager(void);\n    \n    // Analytics plugins\n    ProtocolAnalytics* _pAnalytics;\n\n    // user plugins\n    ProtocolUser* _pUser;\n\n    // IAP plugins\n    //    ProtocolIAP* _pIAP;\n    std::map<std::string , ProtocolIAP*> _pluginsIAPMap;\n\n    // Share plugins\n    ProtocolShare* _pShare;\n\n    // Social plugins\n    ProtocolSocial* _pSocial;\n\n    // Ads plugins\n    ProtocolAds* _pAds;\n    \n    // Push plugins\n    ProtocolPush* _pPush;\n\n};\n\n}} //namespace anysdk { namespace framework {\n\n#endif /* __CCX_AGENTMANAGER_H__ */\n"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/proj.android/protocols/include/PluginFactory.h",
    "content": "/** @file PluginFactory.h\n */\n#ifndef __CCX_PLUGIN_FACTORY_H__\n#define __CCX_PLUGIN_FACTORY_H__\n\nnamespace anysdk { namespace framework {\n/** @brief Plugin_type enum, with inline docs */\ntypedef enum {\n\tkPluginAds = 1,/**< enum value kPluginAds. */\n\tkPluginAnalytics,/**< enum value kPluginAnalytics. */\n\tkPluginIAP,/**< enum value kPluginIAP. */\n\tkPluginShare,/**< enum value kPluginShare. */\n\tkPluginUser,/**< enum value kPluginUser. */\n\tkPluginSocial,/**< enum value kPluginSocial. */\n\tkPluginPush,/**< enum value kPluginPush. */\n}Plugin_type;\n\nclass PluginProtocol;\nclass PluginManager;\n/**   \n *  @class  PluginFactory  \n */\nclass PluginFactory\n{\npublic:\n\tvirtual ~PluginFactory();\n    /**\n     @brief Get singleton of PluginFactory\n     */\n    static PluginFactory* getInstance();\n\n    /**\n     @brief Destory the instance of PluginFactory\n     */\n    static void purgeFactory();\n\nprivate:\n    friend class PluginManager;\n    PluginFactory(void);\n\n    /**\n     @brief create the plugin by name and type\n     @param the name of plugin\n     @param the type of plugin\n     */\n    PluginProtocol* createPlugin(const char* name, int pluginType);\n};\n\n}} //namespace anysdk { namespace framework {\n\n#endif /* __CCX_PLUGIN_FACTORY_H__ */\n"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/proj.android/protocols/include/PluginManager.h",
    "content": "/** @file PluginFactory.h\n */\n#ifndef __CCX_PLUGINMANAGER_H__\n#define __CCX_PLUGINMANAGER_H__\n\n#include \"PluginProtocol.h\"\n#include \"PluginFactory.h\"\n#include <map>\n#include <string>\n\nnamespace anysdk { namespace framework {\n\n/**   \n *  @class  PluginManager  \n */\nclass PluginManager\n{\npublic:\n\tvirtual ~PluginManager();\n    /**\n     @brief Get singleton of PluginManager\n     */\n    static PluginManager* getInstance();\n    /**\n     @brief Destory the instance of PluginManager\n     */\n    static void end();\n    \n    /**\n     @brief load the plugin by name and type\n     @param the name of plugin\n     @param the type of plugin\n     */\n    PluginProtocol* loadPlugin(const char* name, int pluginType);\n    /**\n     @brief unload the plugin by name and type\n     @param the name of plugin\n     @param the type of plugin\n     */\n    void unloadPlugin(const char* name, int pluginType = 0);\n\n\nprivate:\n    PluginManager(void);\n    std::map<std::string, PluginProtocol*> _pluginsMap;\n//    bool _isDebug;\n};\n\n}} //namespace anysdk { namespace framework {\n\n#endif /* __CCX_PLUGINMANAGER_H__ */\n"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/proj.android/protocols/include/PluginParam.h",
    "content": "/** @file PluginParam.h\n */\n#ifndef __CCX_PLUGIN_PARAM_H__\n#define __CCX_PLUGIN_PARAM_H__\n\n#include <map>\n#include <string>\n/// \\typedef std::map<std::string, std::string> StringMap\n/// typedef YString.\ntypedef std::map<std::string, std::string>   StringMap;\n\nnamespace anysdk { namespace framework {\n\nclass PluginProtocol;\n/**   \n *  @class  PluginParam  \n */\nclass PluginParam\n{\npublic:\n    /**\n     @brief the default constructor of PluginParam\n     */\n    PluginParam();\n\n    virtual ~PluginParam();\n    /**\n     @brief the constructor of PluginParam\n     @param the value is Integer\n     */\n\tPluginParam(int nValue);\n    /**\n     @brief the  constructor of PluginParam\n     @param the value is float\n     */\n\tPluginParam(float fValue);\n    /**\n     @brief the constructor of PluginParam\n     @param the value is boolean\n     */\n\tPluginParam(bool bValue);\n    /**\n     @brief the default constructor of PluginParam\n     @param the value is char\n     */\n\tPluginParam(const char* strValue);\n    /**\n     @brief the default constructor of PluginParam\n     @param the value is StringMap\n     */\n\tPluginParam(StringMap strMapValue);\n\n\ttypedef enum{\n\t\tkParamTypeNull = 0,\n\t\tkParamTypeInt,\n\t\tkParamTypeFloat,\n\t\tkParamTypeBool,\n\t\tkParamTypeString,\n        kParamTypeStringMap,\n\t\tkParamTypeMap,\n\t} ParamType;\n    /**\n     @brief get the ParamType of value\n     */\n\tinline ParamType getCurrentType() {\n\t\treturn _type;\n\t}\n    /**\n     @brief get the int value\n     */\n\tinline int getIntValue() {\n\t\treturn _intValue;\n\t}\n    /**\n     @brief get the float value\n     */\n\tinline float getFloatValue() {\n\t\treturn _floatValue;\n\t}\n    /**\n     @brief get the boolean value\n     */\n\tinline bool getBoolValue() {\n\t\treturn _boolValue;\n\t}\n    /**\n     @brief get the char value\n     */\n\tinline const char* getStringValue() {\n\t\treturn _strValue.c_str();\n\t}\n    /**\n     @brief get the map of  value\n     */\n\tinline std::map<std::string, PluginParam*> getMapValue() {\n\t\treturn _mapValue;\n\t}\n    /**\n     @brief get the StringMap value\n     */\n\tinline StringMap getStrMapValue() {\n        return _strMapValue;\n    }\n\nprivate:\n\tfriend class PluginProtocol;\n    /**\n     @brief the  constructor of PluginParam\n     @param the  map of value\n     */\n    PluginParam(std::map<std::string, PluginParam*> mapValue);\n\nprivate:\n\tParamType _type;\n\n\tint _intValue;\n\tfloat _floatValue;\n\tbool _boolValue;\n\tstd::string _strValue;\n\tstd::map<std::string, PluginParam*> _mapValue;\n\tStringMap _strMapValue;\n};\n\n}} //namespace anysdk { namespace framework {\n\n#endif /* __CCX_PLUGIN_PARAM_H__ */\n"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/proj.android/protocols/include/PluginProtocol.h",
    "content": "/** @file PluginProtocol.h\n */\n#ifndef __CCX_IPLUGIN_H__\n#define __CCX_IPLUGIN_H__\n\n#include \"PluginParam.h\"\n#include <vector>\n\nnamespace anysdk { namespace framework {\n\n/**\n * \t@class PluginProtocol\n *\t@brief\tThe super class for all plugins.\n */\nclass PluginProtocol\n{\npublic:\n\n    /**\n     *@brief set plugin name\n     *@param the name of plugin\n    */\n\tvirtual void setPluginName(const char* name) = 0 ;\n    /**\n     *@brief get plugin name\n     *@return the name of plugin\n    */\n\tvirtual const char* getPluginName() = 0 ;\n\n    /**\n     *@brief get the version of plugin\n     *@return the version of plugin\n    */\n\tvirtual std::string getPluginVersion() = 0 ;\n    /**\n     *@brief get the version of sdk\n     *@return the version of sdk\n    */\n\tvirtual std::string getSDKVersion() = 0 ;\n\n    /**\n     *@brief switch debug plug-in on/off\n     *@param the value of on/off\n    */\n\tvirtual void setDebugMode(bool bDebug) = 0 ;\n\n    /**\n     *@brief methods for reflections\n     *@param function name\n     *@param PluginParam* param\n     *@return void\n     */\n\tvirtual void callFuncWithParam(const char* funcName, PluginParam* param, ...) = 0 ;\n    /**\n     *@brief methods for reflections\n     *@param function name\n     *@param std::vector<PluginParam*> params\n     *@return void\n     */\n\tvirtual void callFuncWithParam(const char* funcName, std::vector<PluginParam*> params) = 0 ;\n\n    /**\n     *@brief methods for reflections\n     *@param function name\n     *@param PluginParam* param\n     *@return string\n     */\n\tvirtual std::string callStringFuncWithParam(const char* funcName, PluginParam* param, ...) = 0 ;\n    /**\n     *@brief methods for reflections\n     *@param function name\n     *@param std::vector<PluginParam*> params\n     *@return string\n     */\n\tvirtual std::string callStringFuncWithParam(const char* funcName, std::vector<PluginParam*> params) = 0 ;\n\n    /**\n     *@brief methods for reflections\n     *@param function name\n     *@param PluginParam* param\n     *@return int\n     */\n\tvirtual int callIntFuncWithParam(const char* funcName, PluginParam* param, ...) = 0 ;\n    /**\n     *@brief methods for reflections\n     *@param function name\n     *@param std::vector<PluginParam*> params\n     *@return int\n     */\n\tvirtual int callIntFuncWithParam(const char* funcName, std::vector<PluginParam*> params) = 0 ;\n\n    /**\n     *@brief methods for reflections\n     *@param function name\n     *@param PluginParam* param\n     *@return bool\n     */\n\tvirtual bool callBoolFuncWithParam(const char* funcName, PluginParam* param, ...) = 0 ;\n    /**\n     *@brief methods for reflections\n     *@param function name\n     *@param std::vector<PluginParam*> params\n     *@return bool\n     */\n\tvirtual bool callBoolFuncWithParam(const char* funcName, std::vector<PluginParam*> params) = 0 ;\n\n    /**\n     *@brief methods for reflections\n     *@param function name\n     *@param PluginParam* param\n     *@return float\n     */\n\tvirtual float callFloatFuncWithParam(const char* funcName, PluginParam* param, ...) = 0 ;\n    /**\n     *@brief methods for reflections\n     *@param function name\n     *@param std::vector<PluginParam*> params\n     *@return float\n     */\n\tvirtual float callFloatFuncWithParam(const char* funcName, std::vector<PluginParam*> params) = 0 ;\n\n\n};\n\n}} //namespace anysdk { namespace framework {\n\n#endif /* __CCX_IPLUGIN_H__ */\n"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/proj.android/protocols/include/ProtocolAds.h",
    "content": "/** @file ProtocolAds.h\n */\n#ifndef __CCX_PROTOCOL_ADS_H__\n#define __CCX_PROTOCOL_ADS_H__\n\n#include \"PluginProtocol.h\"\n#include <map>\n#include <string>\n\nnamespace anysdk { namespace framework {\n/// \\typedef std::map<std::string, std::string> TAdsDeveloperInfo\n/// typedef TAdsDeveloperInfo.\ntypedef std::map<std::string, std::string> TAdsDeveloperInfo;\n/// \\typedef std::map<std::string, std::string> TAdsInfo\n/// typedef TAdsInfo.\ntypedef std::map<std::string, std::string> TAdsInfo;\n/** @brief AdsResultCode enum, with inline docs */\ntypedef enum\n{\n    kAdsReceived = 0,           /**< enum the callback: the ad is received is at center. */\n\n    kAdsShown,                  /**< enum the callback: the advertisement dismissed. */\n    kAdsDismissed,             /**< enum the callback: the advertisement dismissed. */\n\n    kPointsSpendSucceed,       /**< enum the callback: the points spend succeed. */\n    kPointsSpendFailed,        /**< enum the callback: the points spend failed. */\n\n\n\n    kNetworkError,              /**< enum the callback of Network error at center. */\n    kUnknownError,              /**< enum the callback of Unknown error. */\n    kOfferWallOnPointsChanged,   /**< enum the callback of Changing the point of offerwall. */\n} AdsResultCode;\n/** @brief AdsPos enum, with inline docs */\ntypedef enum {\n    kPosCenter = 0,/**< enum the toolbar is at center. */\n    kPosTop,/**< enum the toolbar is at top. */\n    kPosTopLeft,/**< enum the toolbar is at topleft. */\n    kPosTopRight,/**< enum the toolbar is at topright. */\n    kPosBottom,/**< enum the toolbar is at bottom. */\n    kPosBottomLeft,/**< enum the toolbar is at bottomleft. */\n    kPosBottomRight,/**< enum the toolbar is at bottomright. */\n} AdsPos;\n/** @brief AdsType enum, with inline docs */\ntypedef enum {\n\tAD_TYPE_BANNER = 0,/**< enum value is banner ads . */\n\tAD_TYPE_FULLSCREEN,/**< enum value is fullscreen ads . */\n\tAD_TYPE_MOREAPP,/**< enum value is moreapp ads . */\n\tAD_TYPE_OFFERWALL,/**< enum value is offerwall ads . */\n} AdsType;\n\nclass ProtocolAds;\nclass AdsListener\n{\npublic:\n    /**\n     *@brief The advertisement request result\n     *@param the id of callback\n\t *@param the information of callback\n     */\n    virtual void onAdsResult(AdsResultCode code, const char* msg) = 0;\n    \n    /**\n    @brief Player get points from advertisement(For example: Tapjoy)\n    @param points The point number player has got.\n    @param pAdsPlugin  The plugin which the player get points. Used to spend the points.\n    */\n    virtual void onPlayerGetPoints(ProtocolAds* pAdsPlugin, int points) {}\n};\n\nclass ProtocolAds : public PluginProtocol\n{\npublic:\n\n\n\n    /**\n    @brief show adview\n    @param the type of ads\n    @param the idx of ads\n    */\n    virtual void showAds(AdsType adsType, int idx = 1) = 0;\n\n    /**\n    @brief Hide the adview\n    @param the type of ads\n    @param the idx of ads\n    */\n    virtual void hideAds(AdsType adsType, int idx = 1) = 0;\n\n    /**\n    @brief preload the adview\n    @param the type of ads\n    @param the idx of ads\n    */\n    virtual void preloadAds(AdsType adsType, int idx = 1)= 0;\n\n    /**\n     *@brief Query the points of player\n     *@return the point\n    */\n    virtual float queryPoints() = 0;\n\n    /**\n     *@brief Spend the points.\n           Use this method to notify server spend points.\n     *@param points Need spend number of points\n     */\n    virtual void spendPoints(int points) = 0;\n\n    /**\n     @brief set the Ads listener\n     @param pListener The callback object for Ads result\n     */\n    virtual void setAdsListener(AdsListener* listener) = 0;\n\n    /**\n     @brief get pListener The callback object for Ads result\n     @return the listener\n     */\n    virtual AdsListener* getAdsListener() = 0;\n\n    /**\n     @brief Is it supportive of this type of ads\n     @param the type of ads\n     @return if it is supportive ,return true\n     \t \t else retur false\n     */\n    virtual bool isAdTypeSupported(AdsType adType) = 0;\n\n};\n\n}} // namespace anysdk { namespace framework {\n\n#endif /* __CCX_PROTOCOL_ADS_H__ */\n"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/proj.android/protocols/include/ProtocolAnalytics.h",
    "content": "/** @file ProtocolAnalytics.h\n */\n#ifndef __CCX_PROTOCOL_ANALYTICS_H__\n#define __CCX_PROTOCOL_ANALYTICS_H__\n\n#include \"PluginProtocol.h\"\n#include <map>\n#include <string>\n\nnamespace anysdk { namespace framework {\n/// \\typedef std::map<std::string, std::string> LogEventParamPair\n/// typedef LogEventParamPair.\ntypedef std::pair< std::string, std::string >   LogEventParamPair;\n/// \\typedef std::map<std::string, std::string> LogEventParamMap\n/// typedef LogEventParamMap.\ntypedef std::map< std::string, std::string >    LogEventParamMap;\ntypedef enum {\n\tANONYMOUS,\n\tREGISTED,\n\tSINA_WEIBO,\n\tTENCENT_WEIBO,\n\tQQ,\n\tQQ_WEIBO,\n\tND91,\n} AccountType;\ntypedef enum {\n\tLOGIN,\n\tLOGOUT,\n\tREGISTER,\n} AccountOperate;\ntypedef enum {\n\tMALE,\n\tFEMALE,\n\tUNKNOWN,\n\n} AccountGender;\ntypedef enum {\n\tGUIDE_LINE,\n\tMAIN_LINE,\n\tBRANCH_LINE,\n\tDAILY,\n\tACTIVITY,\n\tOTHER,\n} TaskType;\n/**   \n *@class  ProtocolAnalytics\n *@brief the interface of Analytics\n */\nclass ProtocolAnalytics : public PluginProtocol\n{\npublic:\n\n\t/**\n     @brief Start a new session.\n     @param appKey The identity of the application.\n     */\n\tvirtual void startSession() = 0;\n    \n\t/**\n     @brief Stop a session.\n     @warning This interface only worked on android\n     */\n\tvirtual void stopSession() = 0;\n\n    /**\n     @brief Set the timeout for expiring a session.\n     @param millis In milliseconds as the unit of time.\n     @note It must be invoked before calling startSession.\n     */\n\tvirtual void setSessionContinueMillis(long millis) = 0;\n\n    /**\n     @brief log an error\n     @param errorId The identity of error\n     @param message Extern message for the error\n     */\n\tvirtual void logError(const char* errorId, const char* message) = 0;\n    \n\t/**\n     @brief log an event.\n     @param eventId The identity of event\n     @param paramMap Extern parameters of the event, use NULL if not needed.\n     */\n\tvirtual void logEvent(const char* eventId, LogEventParamMap* paramMap = NULL) = 0;\n\n    /**\n     @brief Track an event begin.\n     @param eventId The identity of event\n     */\n\tvirtual void logTimedEventBegin(const char* eventId) = 0;\n\n    /**\n     @brief Track an event end.\n     @param eventId The identity of event\n     */\n\tvirtual void logTimedEventEnd(const char* eventId) = 0;\n\n\t/**\n     @brief Whether to catch uncaught exceptions to server.\n     @warning This interface only worked on android.\n     */\n\tvirtual void setCaptureUncaughtException(bool enabled) = 0;\n\n    /**\n     @brief Check function the plugin support or not\n     */\n    virtual bool isFunctionSupported(std::string functionName) = 0;\n};\n\n}} // namespace anysdk { namespace framework {\n\n\n#endif /* __CCX_PROTOCOL_ANALYTICS_H__ */\n"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/proj.android/protocols/include/ProtocolIAP.h",
    "content": "/** @file ProtocolIAP.h\n */\n#ifndef __CCX_PROTOCOL_IAP_H__\n#define __CCX_PROTOCOL_IAP_H__\n\n#include \"PluginProtocol.h\"\n#include <map>\n#include <string>\n\nnamespace anysdk { namespace framework {\n/// \\typedef std::map<std::string, std::string> TIAPDeveloperInfo\n/// typedef TIAPDeveloperInfo.\ntypedef std::map<std::string, std::string> TIAPDeveloperInfo;\n/// \\typedef std::map<std::string, std::string> TProductInfo\n/// typedef TProductInfo.\ntypedef std::map<std::string, std::string> TProductInfo;\n/// typedef TProductsInfo.\ntypedef std::map<std::string, TProductInfo> AllProductsInfo;\n/** @brief PayResultCode enum, with inline docs */\ntypedef enum \n{\n    kPaySuccess = 0,/**< enum value is callback of succeeding in paying . */\n    kPayFail,/**< enum value is callback of failing to pay . */\n    kPayCancel,/**< enum value is callback of canceling to pay . */\n    kPayNetworkError,/**< enum value is callback of network error . */\n    kPayProductionInforIncomplete,/**< enum value is callback of incompleting info . */\n\tkPayInitSuccess,/**< enum value is callback of succeeding in initing sdk . */\n\tkPayInitFail,/**< enum value is callback of failing to init sdk . */\n\tkPayNowPaying,/**< enum value is callback of paying now . */\n\tkPayRechareSuccess,/**< enum value is callback of  succeeding in recharging. */\n} PayResultCode;\n/** @brief RequestResultCode enum, with inline docs */\ntypedef enum\n{\n    kRequestSuccess = 31000,/**< enum value is callback of succeeding in paying . */\n    kRequestFail/**< enum value is callback of failing to pay . */\n} RequestResultCode;\n/**   \n *@class  PayResultListener\n *@brief the interface of pay callback  \n */\nclass PayResultListener\n{\npublic:\n\t/**   \n\t *@brief the interface of pay callback \n\t *@param the id of callback\n\t *@param the information of callback\n\t *@param the info of pay\n     */\n    virtual void onPayResult(PayResultCode ret, const char* msg, TProductInfo info) = 0;\n    /**\n     *@brief the interface of request callback\n     *@param the id of callback\n     *@param the information of callback\n     *@param the info of request product\n     */\n    virtual void onRequestResult(RequestResultCode ret, const char* msg, AllProductsInfo info)  {}\n};\n/**   \n *@class  ProtocolIAP\n *@brief the interface of pay   \n */\n\nclass ProtocolIAP : public PluginProtocol\n{\npublic:\n\n    /**\n    @brief pay for product\n    @param info The info of product, must contains key:\n            productName         The name of product\n            productPrice        The price of product(must can be parse to float)\n            productDesc         The description of product\n    @warning For different plugin, the parameter should have other keys to pay.\n             Look at the manual of plugins.\n    */\n    virtual void payForProduct(TProductInfo info) = 0;\n    /**\n     @brief get order id\n     @return the order id\n     */\n    virtual std::string getOrderId() = 0;\n\n    /**\n    @breif set the result listener\n    @param pListener The callback object for pay result\n    @wraning Must invoke this interface before payForProduct.\n    */\n    virtual void setResultListener(PayResultListener* pListener) = 0;\n\n    /**\n     @brief get plugin id\n     @return the plugin id\n     */\n\tvirtual std::string getPluginId() = 0 ;\n\n\t/**\n     @brief change the state of paying\n     @param the state\n\t*/\n\n\tstatic void resetPayState()\n\t{\n\t\t_paying = false;\n\t}\n    static bool _paying;\n\n\n};\n\n\n}} // namespace anysdk { namespace framework {\n\n#endif /* __CCX_PROTOCOL_IAP_H__ */\n"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/proj.android/protocols/include/ProtocolPush.h",
    "content": "/** @file PluginFactory.h\n */\n#ifndef __CCX_PROTOCOL_PUSH_H__\n#define __CCX_PROTOCOL_PUSH_H__\n\n#include \"PluginProtocol.h\"\n#include <map>\n#include <list>\n#include <string>\nusing namespace std;\n\nnamespace anysdk { namespace framework {\n/** @brief Plugin_type enum, with inline docs */\ntypedef enum\n{\n\tkPushReceiveMessage = 0,/**value is callback of Receiving Message . */\n\n\n} PushActionResultCode;\nclass ProtocolPush;\n/**   \n *@class  PushActionListener\n *@brief the interface of Push callback  \n */\nclass PushActionListener\n{\npublic:\n\t/**   \n\t *@brief the interface of Push callback \n\t *@param the adatper of plugin\n\t *@param the id of callback\n\t *@param the information of callback\n\t */\n    virtual void onActionResult(ProtocolPush* pPlugin, PushActionResultCode code, const char* msg) = 0;\n};\n/**   \n *  @class  ProtocolPush  \n */\nclass ProtocolPush : public PluginProtocol\n{\npublic:\n\n\n    /**\n     *@brief start/register  Push services\n     *@return void\n     */\n    virtual  void startPush() = 0 ;\n\n\n    /**\n     *@brief close Push services\n     *@return void\n     */\n    virtual void closePush() = 0 ;\n\n\n    /**\n     *@brief set alias\n     *@param tags\n     *@return void\n     */\n    virtual void setAlias(string alias) = 0;\n\n    /**\n     *@brief del alias\n     *@param tags\n     *@return void\n     */\n    virtual void delAlias(string alias) = 0;\n\n    /**\n     *@brief set tag\n     *@param tags\n     *@return void\n     */\n    virtual void setTags(list<string> tags) = 0;\n\n    /**\n     *@brief delete tag\n     *@param tags\n     *@return void\n     */\n    virtual void delTags(list<string> tags) = 0;\n\n    /**\n     @brief set the result listener\n     @param pListener The callback object for push result\n     */\n    virtual void setActionListener(PushActionListener* listener) = 0 ;\n\n    /**\n     @brief get pListener The callback object for Push result\n     @return the listener\n     */\n    virtual  PushActionListener* getActionListener() = 0 ;\n\n\n\n};\n\n}} // namespace anysdk { namespace framework {\n\n#endif /* __CCX_PROTOCOL_PUSH_H__ */\n"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/proj.android/protocols/include/ProtocolShare.h",
    "content": "/** @file ProtocolShare.h\n */\n#ifndef  __CCX_PROTOCOL_SHARE_H__\n#define  __CCX_PROTOCOL_SHARE_H__\n\n#include \"PluginProtocol.h\"\n#include <map>\n#include <string>\n\nnamespace anysdk { namespace framework {\n/// \\typedef std::map<std::string, std::string> TShareDeveloperInfo\n/// typedef TShareDeveloperInfo.\ntypedef std::map<std::string, std::string> TShareDeveloperInfo;\n/// \\typedef std::map<std::string, std::string> TShareInfo\n/// typedef TShareInfo.\ntypedef std::map<std::string, std::string> TShareInfo;\n/** @brief ShareResultCode enum, with inline docs */\ntypedef enum \n{\n    kShareSuccess = 0,/**< enum value is callback of failing to sharing . */\n    kShareFail,/**< enum value is callback of failing to share . */\n    kShareCancel,/**< enum value is callback of canceling to share . */\n    kShareNetworkError,/**< enum value is callback of network error . */\n} ShareResultCode;\n/**   \n *@class  ShareResultListener\n *@brief the interface of share callback  \n */\nclass ShareResultListener\n{\npublic:\n\t/**   \n\t *@brief the interface of share callback \n\t *@param the id of callback\n\t *@param the information of callback\n\t */\n    virtual void onShareResult(ShareResultCode ret, const char* msg) = 0;\n};\n/**   \n *@class  ProtocolShare\n *@brief the interface of share  \n */\nclass ProtocolShare : public PluginProtocol\n{\npublic:\n\n\n\n    /**\n    @brief share information\n    @param info The info of share, contains key:\n            SharedText                \tThe text need to share\n            SharedImagePath\t\t\t\tThe full path of image file need to share (optinal)\n    @warning For different plugin, the parameter should have other keys to share.\n             Look at the manual of plugins.\n    */\n    virtual void share(TShareInfo info) = 0;\n\n    /**\n    @breif set the result listener\n    @param pListener The callback object for share result\n    @wraning Must invoke this interface before share\n    */\n    virtual void setResultListener(ShareResultListener* pListener) = 0;\n\n};\n\n}} // namespace anysdk { namespace framework {\n\n#endif   /* ----- #ifndef __CCX_PROTOCOL_SHARE_H__ ----- */\n"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/proj.android/protocols/include/ProtocolSocial.h",
    "content": "/** @file ProtocolSocial.h\n */\n#ifndef  __CCX_PROTOCOL_SOCIAL_H__\n#define  __CCX_PROTOCOL_SOCIAL_H__\n\n#include \"PluginProtocol.h\"\n#include <map>\n#include <string>\n\nnamespace anysdk { namespace framework {\n/// \\typedef std::map<std::string, std::string> TSocialDeveloperInfo\n/// typedef TSocialDeveloperInfo.\ntypedef std::map<std::string, std::string> TSocialDeveloperInfo;\n/// \\typedef std::map<std::string, std::string> TAchievementInfo\n/// typedef TAchievementInfo.\ntypedef std::map<std::string, std::string> TAchievementInfo;\n/** @brief SocialRetCode enum, with inline docs */\ntypedef enum\n{\n    // code for leaderboard feature\n\tkScoreSubmitSucceed =1,/**< enum value is callback of succeeding in submiting. */\n    kScoreSubmitfail,/**< enum value is callback of failing to submit . */\n\n    // code for achievement feature\n    kAchUnlockSucceed,/**< enum value is callback of succeeding in unlocking. */\n    kAchUnlockFail,/**< enum value is callback of failing to  unlock. */\n\n    kSocialSignInSucceed,/**< enum value is callback of succeeding to login. */\n    kSocialSignInFail,/**< enum value is callback of failing to  login. */\n\n    kSocialSignOutSucceed,/**< enum value is callback of succeeding to login. */\n    kSocialSignOutFail,/**< enum value is callback of failing to  login. */\n\n\n} SocialRetCode;\n/**   \n *@class  SocialListener\n *@brief the interface of social callback  \n */\nclass SocialListener\n{\npublic:\n\t/**   \n\t *@brief the interface of social callback \n\t *@param the id of callback\n\t *@param the information of callback\n\t */\n    virtual void onSocialResult(SocialRetCode code, const char* msg) = 0;\n};\n\n/**   \n *@class  ProtocolSocial\n *@brief the interface of social  \n */\nclass ProtocolSocial : public PluginProtocol\n{\npublic:\n\n    /**\n     @brief user signIn\n     */\n\tvirtual void signIn() = 0;\n\n    /**\n     @brief user signOut\n     */\n\tvirtual void signOut() = 0;\n\n    /**\n     @brief submit the score\n     @param leaderboardID\n     @param the score\n     */\n\tvirtual void submitScore(const char* leadboardID, long score) = 0;\n     /**\n      @brief show the id of Leaderboard page\n      @param leaderboardID\n      */\n\tvirtual void showLeaderboard(const char* leaderboardID) = 0;\n\n    /**\n     @brief methods of achievement feature\n     @param the info of achievement\n     */\n    virtual void unlockAchievement(TAchievementInfo achInfo) = 0;\n    /**\n     @brief show the page of achievements\n     */\n    virtual void showAchievements() = 0;\n    /**\n     @brief set pListener The callback object for user result\n     @param the listener\n     */\n    virtual void setListener(SocialListener* listener)  = 0;\n    /**\n     @brief get pListener The callback object for social result\n     @return the listener\n     */\n    virtual SocialListener* getListener() = 0;\n\n};\n\n}} // namespace anysdk { namespace framework {\n\n#endif   /* ----- #ifndef __CCX_PROTOCOL_SOCIAL_H__ ----- */\n"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/proj.android/protocols/include/ProtocolUser.h",
    "content": "/** @file ProtocolUser.h\n */\n#ifndef __CCX_PROTOCOL_USER_H__\n#define __CCX_PROTOCOL_USER_H__\n\n#include \"PluginProtocol.h\"\n#include <map>\n#include <string>\n\nnamespace anysdk { namespace framework {\n/// \\typedef std::map<std::string, std::string> TUserDeveloperInfo\n/// typedef TUserDeveloperInfo.\ntypedef std::map<std::string, std::string> TUserDeveloperInfo;\n/** @brief Plugin_type enum, with inline docs */\ntypedef enum\n{\n\tkInitSuccess = 0,/**< enum value is callback of succeeding in initing sdk. */\n\tkInitFail,/**< enum  value is callback of failing to init sdk. */\n    kLoginSuccess,/**< enum value is callback of succeeding in login.*/\n    kLoginNetworkError,/**< enum value is callback of network error*/\n    kLoginNoNeed,/**< enum value is callback of no need login.*/\n    kLoginFail,/**< enum value is callback of failing to login. */\n    kLoginCancel,/**< enum value is callback of canceling to login. */\n    kLogoutSuccess,/**< enum value is callback of succeeding in logout. */\n    kLogoutFail,/**< enum value is callback of failing to logout. */\n    kPlatformEnter,/**< enum value is callback after enter platform. */\n    kPlatformBack,/**< enum value is callback after exit antiAddiction. */\n    kPausePage,/**< enum value is callback after exit pause page. */\n    kExitPage,/**< enum value is callback after exit exit page. */\n    kAntiAddictionQuery,/**< enum value is callback after querying antiAddiction. */\n    kRealNameRegister,/**< enum value is callback after registering realname. */\n    kAccountSwitchSuccess,/**< enum alue is callback of succeeding in switching account. */\n    kAccountSwitchFail,/**< enum value is callback of failing to switch account. */\n    kOpenShop,/**< enum value is callback of open the shop. */\n\n\n} UserActionResultCode;\n/** @brief ToolBarPlace enum, with inline docs */\ntypedef enum\n{\n    kToolBarTopLeft = 1,/**< enum the toolbar is at topleft. */\n    kToolBarTopRight,/**< enum the toolbar is at topright. */\n    kToolBarMidLeft,/**< enum the toolbar is at midleft. */\n    kToolBarMidRight,/**< enum the toolbar is at midright. */\n    kToolBarBottomLeft,/**< enum the toolbar is at bottomleft. */\n    kToolBarBottomRight,/**< enum the toolbar is at bottomright. */\n} ToolBarPlace;\n\nclass ProtocolUser;\n/**   \n *@class  UserActionListener\n *@brief the interface of user callback  \n */\nclass UserActionListener\n{\npublic:\n\t/**   \n\t *@brief the interface of user callback \n\t *@param the adatper of plugin\n\t *@param the id of callback\n\t *@param the information of callback\n\t */\n    virtual void onActionResult(ProtocolUser* pPlugin, UserActionResultCode code, const char* msg) = 0;\n};\n/**   \n *  @class  ProtocolUser  \n */\nclass ProtocolUser : public PluginProtocol\n{\npublic:\n\n\n    /**\n     @brief User login\n     */\n    virtual  void login() = 0 ;\n\n    /**\n     @brief User login\n     \t \tif the process of logining need to know  the param of server_id ,\n     \t \tyou can use the function\n     \t \tand if you must change oauthloginserver, you can add the param of oauthLoginServer\n     @param server_id\n     @param oauthLoginServer\n    */\n     virtual  void login(std::string server_id, std::string oauthLoginServer = \"\") = 0 ;\n\n\n    /**\n     @brief Check whether the user logined or not\n     @return If user logined, return value is true;\n             else return value is false.\n     */\n    virtual bool isLogined() = 0 ;\n\n    /**\n     @brief Get session ID\n     @return If user logined, return value is userID;\n             else return value is empty string.\n     */\n    virtual std::string getUserID() = 0 ;\n    /**\n     @brief set the result listener\n     @param pListener The callback object for user result\n     */\n    virtual void setActionListener(UserActionListener* listener) = 0 ;\n    /**\n     @brief get pListener The callback object for user result\n     @return the listener\n     */\n    virtual  UserActionListener* getActionListener() = 0 ;\n\n    /**\n     @brief Check function the plugin support or not\n     @param the name of plugin\n     @return if the function support ,return true\n     \t \t else retur false\n     */\n    virtual bool isFunctionSupported(std::string functionName) = 0 ;\n    /**\n     @brief get plugin id\n     @return the plugin id\n     */\n\tvirtual std::string getPluginId() = 0 ;\n\n\n\n};\n\n}} // namespace anysdk { namespace framework {\n\n#endif /* __CCX_PROTOCOL_USER_H__ */\n"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/proj.android/protocols/res/layout/plugin_ads.xml",
    "content": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<RelativeLayout xmlns:android=\"http://schemas.android.com/apk/res/android\"\n    android:layout_width=\"fill_parent\"\n    android:layout_height=\"fill_parent\"\n    android:orientation=\"vertical\" >\n    <ImageView\n        android:id=\"@+id/image_ad\"\n        android:layout_width=\"fill_parent\"\n        android:layout_height=\"fill_parent\"\n        android:layout_alignParentLeft=\"true\"\n        android:layout_alignParentTop=\"true\"\n        android:src=\"@drawable/ui_ad\" />\n\n    <ImageButton\n        android:id=\"@+id/image_close\"\n        android:layout_width=\"20dip\"\n        android:layout_height=\"20dip\"\n        android:layout_alignParentRight=\"true\"\n        android:layout_alignParentTop=\"true\"\n        android:src=\"@drawable/btn_close\" />\n\n \n\n</RelativeLayout>"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/proj.android/protocols/res/layout/plugin_login.xml",
    "content": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<RelativeLayout\n  xmlns:android=\"http://schemas.android.com/apk/res/android\"\n   android:layout_width=\"fill_parent\"\n   android:layout_height=\"fill_parent\">\n    \n\n   \n   \n   <TextView\n      android:id=\"@+id/username\"\n      android:layout_height=\"50dp\"\n      android:layout_width=\"50dp\"\n      android:text=\"@string/plugin_login_account\"\n      android:layout_alignParentLeft=\"true\"\n      android:layout_alignParentTop=\"true\"\n      android:textSize=\"20sp\" \n      android:textColor=\"#ffffff\"/>\n\n   <EditText\n       android:id=\"@+id/txt_username\"\n       android:layout_width=\"wrap_content\"\n       android:layout_height=\"wrap_content\" \n       android:inputType=\"text\"\n       android:layout_toRightOf=\"@id/username\"\n       android:layout_alignParentRight=\"true\"/>\n   \n    <TextView\n        android:id=\"@+id/password\"\n        android:layout_width=\"50dp\"\n        android:layout_height=\"50dp\"\n        android:layout_alignParentLeft=\"true\"\n        android:text=\"@string/plugin_login_password\" \n        android:layout_below=\"@id/username\"\n        android:textSize=\"20sp\"\n        android:textColor=\"#ffffff\"/>\n\n    <EditText\n        android:id=\"@+id/txt_password\"\n        android:layout_width=\"wrap_content\"\n        android:layout_height=\"wrap_content\"\n        android:inputType=\"textPassword\"\n        android:layout_alignParentRight=\"true\"\n        android:layout_toRightOf=\"@id/password\"\n        android:layout_below=\"@id/txt_username\"/>\n    \n    <TextView\n        android:id=\"@+id/tips\"\n        android:layout_width=\"wrap_content\"\n        android:layout_height= \"25dp\"\n        android:layout_alignParentRight=\"true\"\n        android:text=\"@string/plugin_tips\" \n        android:layout_below=\"@id/password\"\n        android:textSize=\"18sp\"\n        android:textColor=\"#ffffff\"/>\n        \n\n   \n     \n</RelativeLayout>"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/proj.android/protocols/res/values/plugin_string.xml",
    "content": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<resources>\n    <string name=\"plugin_login_title\">账号登陆</string>\n    <string name=\"plugin_login_account\">账号</string>\n    <string name=\"plugin_login_password\">密码</string>\n    <string name=\"plugin_login\">登陆</string>\n    <string name=\"plugin_cancel\">取消</string>\n    <string name=\"plugin_pay_content\">是否确认支付？</string>\n    <string name=\"plugin_pay\">支付</string>\n    <string name=\"plugin_rank\">排行榜</string>\n    <string name=\"plugin_achievement\">成就榜</string>\n    <string name=\"plugin_center\">平台中心</string>\n    <string name=\"plugin_showTool\">工具栏</string>\n    <string name=\"plugin_hideTool\">隐藏工具栏</string>\n    <string name=\"plugin_realNameRegister\">实名注册</string>\n    <string name=\"plugin_antiAddictionQuery\">防沉迷查询</string>\n    <string name=\"plugin_exit\">退出</string>\n    <string name=\"plugin_pause\">暂停游戏</string>\n    <string name=\"plugin_sure\">确认</string>\n    <string name=\"plugin_accountSwitch\">切换账号</string>\n    <string name=\"plugin_logout\">登出</string>\n    <string name=\"plugin_submitLoginGameRole\">提交角色信息</string>\n    <string name=\"plugin_tips\">测试模式,不能用于渠道发布</string>\n    \n    \n</resources>"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/proj.android/res/layout/plugin_ads.xml",
    "content": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<RelativeLayout xmlns:android=\"http://schemas.android.com/apk/res/android\"\n    android:layout_width=\"fill_parent\"\n    android:layout_height=\"fill_parent\"\n    android:orientation=\"vertical\" >\n    <ImageView\n        android:id=\"@+id/image_ad\"\n        android:layout_width=\"fill_parent\"\n        android:layout_height=\"fill_parent\"\n        android:layout_alignParentLeft=\"true\"\n        android:layout_alignParentTop=\"true\"\n        android:src=\"@drawable/ui_ad\" />\n\n    <ImageButton\n        android:id=\"@+id/image_close\"\n        android:layout_width=\"20dip\"\n        android:layout_height=\"20dip\"\n        android:layout_alignParentRight=\"true\"\n        android:layout_alignParentTop=\"true\"\n        android:src=\"@drawable/btn_close\" />\n\n \n\n</RelativeLayout>"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/proj.android/res/layout/plugin_login.xml",
    "content": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<RelativeLayout\n  xmlns:android=\"http://schemas.android.com/apk/res/android\"\n   android:layout_width=\"fill_parent\"\n   android:layout_height=\"fill_parent\">\n    \n\n   \n   \n   <TextView\n      android:id=\"@+id/username\"\n      android:layout_height=\"50dp\"\n      android:layout_width=\"50dp\"\n      android:text=\"@string/plugin_login_account\"\n      android:layout_alignParentLeft=\"true\"\n      android:layout_alignParentTop=\"true\"\n      android:textSize=\"20sp\" \n      android:textColor=\"#ffffff\"/>\n\n   <EditText\n       android:id=\"@+id/txt_username\"\n       android:layout_width=\"wrap_content\"\n       android:layout_height=\"wrap_content\" \n       android:inputType=\"text\"\n       android:layout_toRightOf=\"@id/username\"\n       android:layout_alignParentRight=\"true\"/>\n   \n    <TextView\n        android:id=\"@+id/password\"\n        android:layout_width=\"50dp\"\n        android:layout_height=\"50dp\"\n        android:layout_alignParentLeft=\"true\"\n        android:text=\"@string/plugin_login_password\" \n        android:layout_below=\"@id/username\"\n        android:textSize=\"20sp\"\n        android:textColor=\"#ffffff\"/>\n\n    <EditText\n        android:id=\"@+id/txt_password\"\n        android:layout_width=\"wrap_content\"\n        android:layout_height=\"wrap_content\"\n        android:inputType=\"textPassword\"\n        android:layout_alignParentRight=\"true\"\n        android:layout_toRightOf=\"@id/password\"\n        android:layout_below=\"@id/txt_username\"/>\n    \n    <TextView\n        android:id=\"@+id/tips\"\n        android:layout_width=\"wrap_content\"\n        android:layout_height= \"25dp\"\n        android:layout_alignParentRight=\"true\"\n        android:text=\"@string/plugin_tips\" \n        android:layout_below=\"@id/password\"\n        android:textSize=\"18sp\"\n        android:textColor=\"#ffffff\"/>\n        \n\n   \n     \n</RelativeLayout>"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/proj.android/res/values/plugin_string.xml",
    "content": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<resources>\n    <string name=\"plugin_login_title\">账号登陆</string>\n    <string name=\"plugin_login_account\">账号</string>\n    <string name=\"plugin_login_password\">密码</string>\n    <string name=\"plugin_login\">登陆</string>\n    <string name=\"plugin_cancel\">取消</string>\n    <string name=\"plugin_pay_content\">是否确认支付？</string>\n    <string name=\"plugin_pay\">支付</string>\n    <string name=\"plugin_rank\">排行榜</string>\n    <string name=\"plugin_achievement\">成就榜</string>\n    <string name=\"plugin_center\">平台中心</string>\n    <string name=\"plugin_showTool\">工具栏</string>\n    <string name=\"plugin_hideTool\">隐藏工具栏</string>\n    <string name=\"plugin_realNameRegister\">实名注册</string>\n    <string name=\"plugin_antiAddictionQuery\">防沉迷查询</string>\n    <string name=\"plugin_exit\">退出</string>\n    <string name=\"plugin_pause\">暂停游戏</string>\n    <string name=\"plugin_sure\">确认</string>\n    <string name=\"plugin_accountSwitch\">切换账号</string>\n    <string name=\"plugin_logout\">登出</string>\n    <string name=\"plugin_submitLoginGameRole\">提交角色信息</string>\n    <string name=\"plugin_tips\">测试模式,不能用于渠道发布</string>\n    \n    \n</resources>"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/proj.android/res/values/strings.xml",
    "content": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<resources>\n    <string name=\"app_name\">mir9</string>\n</resources>\n"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/proj.android/src/org/cocos2dx/lib/QuickHTTPInterface.java",
    "content": "package org.cocos2dx.lib;\n\nimport java.io.DataInputStream;\nimport java.io.DataOutputStream;\nimport java.io.File;\nimport java.io.FileInputStream;\nimport java.io.IOException;\nimport java.io.OutputStream;\nimport java.net.HttpURLConnection;\nimport java.net.ProtocolException;\nimport java.net.URL;\nimport java.text.ParseException;\nimport java.text.SimpleDateFormat;\nimport java.util.Calendar;\nimport java.util.List;\nimport java.util.Locale;\nimport java.util.Map;\nimport java.util.Map.Entry;\n\nimport org.json.JSONArray;\nimport org.json.JSONException;\nimport org.json.JSONObject;\n\nimport android.util.Log;\n\npublic class QuickHTTPInterface {\n    static String BOUNDARY = \"----------------------------78631b43218d\";\n    static String NEWLINE = \"\\r\\n\";\n\n    static HttpURLConnection createURLConnect(String strURL) {\n        URL url;\n        HttpURLConnection urlConnection;\n        try {\n            url = new URL(strURL);\n            urlConnection = (HttpURLConnection)url.openConnection();\n            urlConnection.setRequestProperty(\"Accept-Encoding\", \"identity\");\n            urlConnection.setDoInput(true);\n        } catch (Exception e) {\n            Log.e(\"QuickHTTPInterface\", e.toString());\n            return null;\n        }\n\n        return urlConnection;\n    }\n\n    static void setRequestMethod(HttpURLConnection http, String strMedthod) {\n        try {\n            if (\"POST\".equalsIgnoreCase(strMedthod)) {\n                http.setDoOutput(true);\n            }\n            http.setRequestMethod(strMedthod);\n        } catch (ProtocolException e) {\n            Log.e(\"QuickHTTPInterface\", e.toString());\n        }\n    }\n\n    static void addRequestHeader(HttpURLConnection http, String strkey, String strValue, boolean bNeedBoundary) {\n        if (\"Content-Type\".equalsIgnoreCase(strkey.trim()) && bNeedBoundary) {\n            strValue += (\"; boundary=\" + BOUNDARY);\n        }\n        http.setRequestProperty(strkey, strValue);\n    }\n\n    static void setTimeout(HttpURLConnection http, int msTime) {\n        http.setConnectTimeout(msTime);\n        http.setReadTimeout(msTime);\n    }\n\n    static int connect(HttpURLConnection http) {\n        int nSuc = 0;\n\n        try {\n            http.connect();\n        } catch (IOException e) {\n            Log.e(\"QuickHTTPInterface\", e.toString());\n            nSuc = 1;\n        }\n\n        return nSuc;\n    }\n\n    static void postContent(HttpURLConnection http, String name, String value, boolean bNeedConnectSym) {\n        try {\n            DataOutputStream out = new DataOutputStream(http.getOutputStream());\n            String content = null;\n            if (null == name || 0 == name.length()) {\n                content = value;\n            } else {\n                content = name + \"=\" + value;\n            }\n            if (bNeedConnectSym) {\n                content = \"&\" + content;\n            }\n            out.write(content.getBytes());\n            out.flush();\n        } catch (IOException e) {\n            Log.e(\"QuickHTTPInterface\", e.toString());\n        }\n    }\n\n    static void postContentByteArray(HttpURLConnection http, byte[] byteArray) {\n        try {\n            OutputStream out = http.getOutputStream();\n\n            out.write(byteArray);\n\n            out.flush();\n        } catch (IOException e) {\n            Log.e(\"QuickHTTPInterface\", e.toString());\n        }\n    }\n\n    static void postFormContent(HttpURLConnection http, String key, String val) {\n        try {\n            OutputStream out = http.getOutputStream();\n\n            out.write(getBoundaryContentHeader(key, val).getBytes());\n\n            out.flush();\n        } catch (IOException e) {\n            Log.e(\"QuickHTTPInterface\", e.toString());\n        }\n    }\n\n    static void postFormFile(HttpURLConnection http, String name, String filePath) {\n        try {\n            FileInputStream fin = new FileInputStream(filePath);\n            OutputStream out = http.getOutputStream();\n\n\n            out.write(getBoundaryFileHeader(name, filePath).getBytes());\n            byte[] buffer = new byte[1024];\n            int len = 0;\n            while((len = fin.read(buffer)) != -1) {\n                out.write(buffer, 0, len);\n            }\n            out.write(NEWLINE.getBytes());\n\n            out.flush();\n            fin.close();\n        } catch (IOException e) {\n            Log.e(\"QuickHTTPInterface\", e.toString());\n        }\n    }\n\n    static void postFormEnd(HttpURLConnection http, boolean bBoundary) {\n        if (\"GET\".equalsIgnoreCase(http.getRequestMethod())) {\n            return;\n        }\n\n        try {\n            OutputStream out = http.getOutputStream();\n\n            if (bBoundary) {\n                out.write(getBoundaryEnd().getBytes());\n                out.flush();\n            }\n            out.close();\n        } catch (IOException e) {\n            Log.e(\"QuickHTTPInterface\", e.toString());\n        }\n    }\n\n    static String getBoundaryFileHeader(String key, String filePath) {\n        File file = new File(filePath);\n        StringBuilder sb = new StringBuilder();\n        sb.append(\"--\");\n        sb.append(BOUNDARY);\n        sb.append(NEWLINE);\n        sb.append(\"Content-Disposition: form-data; \");\n        sb.append(\"name=\\\"\");\n        sb.append(key);\n        sb.append(\"\\\"; \");\n        sb.append(\"filename=\\\"\");\n        sb.append(file.getName());\n        sb.append(\"\\\"\");\n        sb.append(NEWLINE);\n        sb.append(\"Content-Type: application/octet-stream\");\n        sb.append(NEWLINE);\n        sb.append(NEWLINE);\n\n        return sb.toString();\n    }\n\n    static String getBoundaryContentHeader(String key, String val) {\n        StringBuilder sb = new StringBuilder();\n        sb.append(\"--\");\n        sb.append(BOUNDARY);\n        sb.append(NEWLINE);\n        sb.append(\"Content-Disposition: form-data; name=\\\"\");\n        sb.append(key);\n        sb.append(\"\\\"\");\n        sb.append(NEWLINE);\n        sb.append(NEWLINE);\n        sb.append(val);\n        sb.append(NEWLINE);\n\n        return sb.toString();\n    }\n\n    static String getBoundaryEnd() {\n        StringBuilder sb = new StringBuilder();\n        sb.append(\"--\");\n        sb.append(BOUNDARY);\n        sb.append(\"--\");\n        sb.append(NEWLINE);\n\n        return sb.toString();\n    }\n\n    static int getResponedCode(HttpURLConnection http) {\n        int code = 0;\n        try {\n            code = http.getResponseCode();\n            //            Log.i(\"QuickHTTPInterface\", \"reponed code:\" + code);\n        } catch (IOException e) {\n            Log.e(\"QuickHTTPInterface\", e.toString());\n        }\n        return code;\n    }\n\n    static String getResponedErr(HttpURLConnection http) {\n        String msg;\n        try {\n            msg = http.getResponseMessage();\n        } catch (IOException e) {\n            msg = e.toString();\n            Log.e(\"QuickHTTPInterface\", msg);\n        }\n\n        return msg;\n    }\n\n    static String getResponedHeader(HttpURLConnection http) {\n        Map<String, List<String>> headers = http.getHeaderFields();\n\n        JSONObject json = new JSONObject();\n        try {\n            for (Entry<String, List<String>> entry: headers.entrySet()) {\n                String key = entry.getKey();\n                if (null == key) {\n                    key = \"\";\n                }\n                List<String> value = entry.getValue();\n                JSONArray jsonArray = new JSONArray();\n                for(String strVal : value) {\n                    jsonArray.put(strVal);\n                }\n                json.put(key, jsonArray);\n            }\n        } catch(JSONException e) {\n            Log.e(\"QuickHTTPInterface\", e.toString());\n        }\n\n        return json.toString();\n    }\n\n    static String getResponedHeaderByIdx(HttpURLConnection http, int idx) {\n        Map<String, List<String>> headers = http.getHeaderFields();\n        if (null == headers) {\n            return null;\n        }\n\n        String header = null;\n\n        int counter = 0;\n        for (Entry<String, List<String>> entry: headers.entrySet()) {\n            if (counter == idx) {\n                String key = entry.getKey();\n                if (null == key) {\n                    header = listToString(entry.getValue(), \",\") + \"\\n\";\n                } else {\n                    header = key + \":\" + listToString(entry.getValue(), \",\") + \"\\n\";\n                }\n                break;\n            }\n            counter++;\n        }\n\n        return header;\n    }\n\n    static String getResponedHeaderByKey(HttpURLConnection http, String key) {\n        if (null == key) {\n            return null;\n        }\n\n        Map<String, List<String>> headers = http.getHeaderFields();\n        if (null == headers) {\n            return null;\n        }\n\n        String header = null;\n\n        for (Entry<String, List<String>> entry: headers.entrySet()) {\n            if (key.equalsIgnoreCase(entry.getKey())) {\n\n                if (\"set-cookie\".equalsIgnoreCase(key)) {\n                    header = combinCookies(entry.getValue(), http.getURL().getHost());\n                } else {\n                    header = listToString(entry.getValue(), \",\");\n                }\n                break;\n            }\n        }\n\n        return header;\n    }\n\n    static int getResponedHeaderByKeyInt(HttpURLConnection http, String key) {\n        String value = http.getHeaderField(key);\n\n        if (null == value) {\n            return 0;\n        } else {\n            return Integer.parseInt(value);\n        }\n    }\n\n    static int getContentLeng(HttpURLConnection http) {\n        return http.getContentLength();\n    }\n\n    static byte[] getResponedString(HttpURLConnection http) {\n        try {\n            DataInputStream in = new DataInputStream(http.getInputStream());\n\n            byte[] buffer = new byte[1024];\n            byte[] retBuf = null;\n            int len = in.read(buffer);\n            //            Log.i(\"QuickHTTPInterface\", \"have recv data:\" + len);\n\n            if (-1 == len) {\n                retBuf = new byte[1];\n                retBuf[0] = 0;\n            } else {\n                retBuf = new byte[len+1];\n                retBuf[0] = 1;\n                System.arraycopy(buffer, 0, retBuf, 1, len);\n            }\n            return retBuf;\n        } catch (IOException e) {\n            Log.e(\"QuickHTTPInterface\", e.toString());\n        }\n\n        return null;\n    }\n\n    static void close(HttpURLConnection http) {\n        try {\n            http.getInputStream().close();\n        } catch (IOException e) {\n            Log.e(\"QuickHTTPInterface\", e.toString());\n        }\n    }\n\n    public static String listToString(List<String> list, String strInterVal) {\n        if (list == null) {\n            return null;\n        }\n        StringBuilder result = new StringBuilder();\n        boolean flag = false;\n        for (String str : list) {\n            if (flag) {\n                result.append(strInterVal);\n            }\n            if (null == str) {\n                str = \"\";\n            }\n            result.append(str);\n            flag = true;\n        }\n        return result.toString();\n    }\n\n    public static String combinCookies(List<String> list, String strDomain) {\n        StringBuilder sbCookies = new StringBuilder();\n\n        String strKey = null;\n        String strValue = null;\n        String strExpire = null;\n        boolean bSecure = false;\n        boolean bFirst = false;\n\n        for (String str : list) {\n        \tbSecure = false;\n        \tbFirst = true;\n            String[] parts = str.split(\";\");\n            for (String part : parts) {\n                String[] item = part.split(\"=\");\n                if (bFirst) {\n                \tif (2 == item.length) {\n                \t\tstrKey = item[0];\n                \t\tstrValue = item[1];\n                \t} else {\n                \t\tstrKey = \"\";\n                \t\tstrValue = \"\";\n                \t}\n                \tbFirst = false;\n                }\n                if (\"expires\".equalsIgnoreCase(item[0].trim())) {\n                    strExpire = str2Seconds(item[1].trim());\n                } else if(\"secure\".equalsIgnoreCase(item[0].trim())) {\n                \tbSecure = true;\n                } else if (\"domain\".equalsIgnoreCase(item[0].trim())) {\n                \tstrDomain = item[1];\n                }\n            }\n\n            if (null == strDomain) {\n                strDomain = \"none\";\n            }\n\n            sbCookies.append(strDomain);\n            sbCookies.append('\\t');\n            sbCookies.append(\"FALSE\\t\");       //access\n            sbCookies.append(\"/\\t\");          //path\n            if (bSecure) {\n            \tsbCookies.append(\"TRUE\\t\");     //secure\n            } else {\n            \tsbCookies.append(\"FALSE\\t\");     //secure\n            }\n            sbCookies.append(strExpire);    //expire tag\n            sbCookies.append(\"\\t\");\n            sbCookies.append(strKey);       //key\n            sbCookies.append(\"\\t\");\n            sbCookies.append(strValue);     //value\n            sbCookies.append('\\n');\n        }\n\n        return sbCookies.toString();\n    }\n\n    private static String str2Seconds(String strTime) {\n        Calendar c = Calendar.getInstance();\n        long millisSecond = 0;\n\n        try {\n            c.setTime(new SimpleDateFormat(\"EEE, dd-MMM-yyyy hh:mm:ss zzz\", Locale.US).parse(strTime));\n            millisSecond = c.getTimeInMillis()/1000;\n        } catch (ParseException e) {\n        \tmillisSecond = -1;\n            //Log.e(\"QuickHTTPInterface\", e.toString());\n        }\n        \n        if (-1 == millisSecond) {\n        \treturn strTime;\n        }\n\n        return Long.toString(millisSecond);\n    }\n\n}\n"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/proj.android/src/org/cocos2dx/lua/AppActivity.java",
    "content": "/****************************************************************************\nCopyright (c) 2008-2010 Ricardo Quesada\nCopyright (c) 2010-2012 cocos2d-x.org\nCopyright (c) 2011      Zynga Inc.\nCopyright (c) 2013-2014 Chukong Technologies Inc.\n \nhttp://www.cocos2d-x.org\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in\nall copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\nTHE SOFTWARE.\n****************************************************************************/\npackage org.cocos2dx.lua;\n\nimport java.net.InetAddress;\nimport java.net.NetworkInterface;\nimport java.net.SocketException;\nimport java.util.Enumeration;\nimport java.util.ArrayList;\n\nimport org.cocos2dx.lib.Cocos2dxActivity;\n\nimport android.app.AlertDialog;\nimport android.content.Context;\nimport android.content.DialogInterface;\nimport android.content.Intent;\nimport android.content.pm.ApplicationInfo;\nimport android.content.pm.ActivityInfo;\nimport android.net.ConnectivityManager;\nimport android.net.NetworkInfo;\nimport android.net.wifi.WifiInfo;\nimport android.net.wifi.WifiManager;\nimport android.os.Bundle;\nimport android.provider.Settings;\nimport android.text.format.Formatter;\nimport android.util.Log;\nimport android.view.WindowManager;\nimport android.widget.Toast;\nimport com.anysdk.framework.PluginWrapper;\n\n\npublic class AppActivity extends Cocos2dxActivity{\n\n\tstatic String hostIPAdress = \"0.0.0.0\";\n\t@Override\n\tprotected void onCreate(Bundle savedInstanceState) {\n\t\tsuper.onCreate(savedInstanceState);\n\t\t\n\t\tif(nativeIsLandScape()) {\n\t\t\tsetRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_SENSOR_LANDSCAPE);\n\t\t} else {\n\t\t\tsetRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_SENSOR_PORTRAIT);\n\t\t}\n\t\t\n\t\t//2.Set the format of window\n\t\t\n\t\t// Check the wifi is opened when the native is debug.\n\t\tif(nativeIsDebug())\n\t\t{\n\t\t\tgetWindow().setFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON, WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);\n\t\t\tif(!isNetworkConnected())\n\t\t\t{\n\t\t\t\tAlertDialog.Builder builder=new AlertDialog.Builder(this);\n\t\t\t\tbuilder.setTitle(\"Warning\");\n\t\t\t\tbuilder.setMessage(\"Please open WIFI for debuging...\");\n\t\t\t\tbuilder.setPositiveButton(\"OK\",new DialogInterface.OnClickListener() {\n\t\t\t\t\t\n\t\t\t\t\t@Override\n\t\t\t\t\tpublic void onClick(DialogInterface dialog, int which) {\n\t\t\t\t\t\tstartActivity(new Intent(Settings.ACTION_WIFI_SETTINGS));\n\t\t\t\t\t\tfinish();\n\t\t\t\t\t\tSystem.exit(0);\n\t\t\t\t\t}\n\t\t\t\t});\n\n\t\t\t\tbuilder.setNegativeButton(\"Cancel\", null);\n\t\t\t\tbuilder.setCancelable(true);\n\t\t\t\tbuilder.show();\n\t\t\t}\n\t\t}\n\t\thostIPAdress = getHostIpAddress();\n\n        //for anysdk\n        PluginWrapper.init(this); // for plugins\n\t}\n\tprivate boolean isNetworkConnected() {\n\t        ConnectivityManager cm = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);  \n\t        if (cm != null) {  \n\t            NetworkInfo networkInfo = cm.getActiveNetworkInfo();  \n\t\t\tArrayList networkTypes = new ArrayList();\n\t\t\tnetworkTypes.add(ConnectivityManager.TYPE_WIFI);\n\t\t\ttry {\n\t\t\t\tnetworkTypes.add(ConnectivityManager.class.getDeclaredField(\"TYPE_ETHERNET\").getInt(null));\n\t\t\t} catch (NoSuchFieldException nsfe) {\n\t\t\t}\n\t\t\tcatch (IllegalAccessException iae) {\n\t\t\t\tthrow new RuntimeException(iae);\n\t\t\t}\n\t\t\tif (networkInfo != null && networkTypes.contains(networkInfo.getType())) {\n\t                return true;  \n\t            }  \n\t        }  \n\t        return false;  \n\t    } \n\t \n\tpublic String getHostIpAddress() {\n\t\tWifiManager wifiMgr = (WifiManager) getSystemService(WIFI_SERVICE);\n\t\tWifiInfo wifiInfo = wifiMgr.getConnectionInfo();\n\t\tint ip = wifiInfo.getIpAddress();\n\t\treturn ((ip & 0xFF) + \".\" + ((ip >>>= 8) & 0xFF) + \".\" + ((ip >>>= 8) & 0xFF) + \".\" + ((ip >>>= 8) & 0xFF));\n\t}\n\t\n\tpublic static String getLocalIpAddress() {\n\t\treturn hostIPAdress;\n\t}\n\n    @Override\n    protected void onActivityResult(int requestCode, int resultCode, Intent data){\n        super.onActivityResult(requestCode, resultCode, data);\n        PluginWrapper.onActivityResult(requestCode, resultCode, data);\n    }\n    @Override\n    protected void onResume() {\n        super.onResume();\n        PluginWrapper.onResume();\n    }\n    @Override\n    public void onPause(){\n        PluginWrapper.onPause();\n        super.onPause();\n    }\n    @Override\n    protected void onNewIntent(Intent intent) {\n        PluginWrapper.onNewIntent(intent);\n        super.onNewIntent(intent);\n    }\n\n\tprivate static native boolean nativeIsLandScape();\n\tprivate static native boolean nativeIsDebug();\n\t\n}\n"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/proj.android_no_anysdk/.classpath",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<classpath>\n\t<classpathentry kind=\"con\" path=\"com.android.ide.eclipse.adt.ANDROID_FRAMEWORK\"/>\n\t<classpathentry exported=\"true\" kind=\"con\" path=\"com.android.ide.eclipse.adt.LIBRARIES\"/>\n\t<classpathentry exported=\"true\" kind=\"con\" path=\"com.android.ide.eclipse.adt.DEPENDENCIES\"/>\n\t<classpathentry kind=\"src\" path=\"src\"/>\n\t<classpathentry kind=\"src\" path=\"gen\"/>\n\t<classpathentry kind=\"output\" path=\"bin/classes\"/>\n</classpath>\n"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/proj.android_no_anysdk/.project",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<projectDescription>\n\t<name>AppActivity</name>\n\t<comment></comment>\n\t<projects>\n\t</projects>\n\t<buildSpec>\n\t\t<buildCommand>\n\t\t\t<name>com.android.ide.eclipse.adt.ResourceManagerBuilder</name>\n\t\t\t<arguments>\n\t\t\t</arguments>\n\t\t</buildCommand>\n\t\t<buildCommand>\n\t\t\t<name>com.android.ide.eclipse.adt.PreCompilerBuilder</name>\n\t\t\t<arguments>\n\t\t\t</arguments>\n\t\t</buildCommand>\n\t\t<buildCommand>\n\t\t\t<name>org.eclipse.jdt.core.javabuilder</name>\n\t\t\t<arguments>\n\t\t\t</arguments>\n\t\t</buildCommand>\n\t\t<buildCommand>\n\t\t\t<name>com.android.ide.eclipse.adt.ApkBuilder</name>\n\t\t\t<arguments>\n\t\t\t</arguments>\n\t\t</buildCommand>\n\t</buildSpec>\n\t<natures>\n\t\t<nature>com.android.ide.eclipse.adt.AndroidNature</nature>\n\t\t<nature>org.eclipse.jdt.core.javanature</nature>\n\t</natures>\n</projectDescription>\n"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/proj.android_no_anysdk/.settings/org.eclipse.jdt.core.prefs",
    "content": "eclipse.preferences.version=1\norg.eclipse.jdt.core.compiler.codegen.targetPlatform=1.6\norg.eclipse.jdt.core.compiler.compliance=1.6\norg.eclipse.jdt.core.compiler.source=1.6\n"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/proj.android_no_anysdk/AndroidManifest.xml",
    "content": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<manifest xmlns:android=\"http://schemas.android.com/apk/res/android\"\n      package=\"com.zym.mir9\"\n      android:versionCode=\"1\"\n      android:versionName=\"1.0\"\n      android:installLocation=\"auto\">\n\n    <uses-sdk android:minSdkVersion=\"9\"/>\n    <uses-feature android:glEsVersion=\"0x00020000\" />\n\n    <application android:label=\"@string/app_name\"\n                 android:icon=\"@drawable/icon\">\n\t\t\t\t\t \n        <!-- Tell Cocos2dxActivity the name of our .so -->\n        <meta-data android:name=\"android.app.lib_name\"\n                  android:value=\"cocos2dlua\" />\n\t\t\t\t\t  \n        <activity android:name=\"org.cocos2dx.lua.AppActivity\"\n                  android:label=\"@string/app_name\"\n                  android:screenOrientation=\"landscape\"\n                  android:theme=\"@android:style/Theme.NoTitleBar.Fullscreen\"\n                  android:configChanges=\"orientation\">\n            <intent-filter>\n                <action android:name=\"android.intent.action.MAIN\" />\n                <category android:name=\"android.intent.category.LAUNCHER\" />\n            </intent-filter>\n        </activity>\n    </application>\n\n    <supports-screens android:anyDensity=\"true\"\n                      android:smallScreens=\"true\"\n                      android:normalScreens=\"true\"\n                      android:largeScreens=\"true\"\n                      android:xlargeScreens=\"true\"/>\n    <uses-permission android:name=\"android.permission.INTERNET\"/>\n    <uses-permission android:name=\"android.permission.CHANGE_NETWORK_STATE\"/>  \n    <uses-permission android:name=\"android.permission.CHANGE_WIFI_STATE\"/>  \n    <uses-permission android:name=\"android.permission.ACCESS_NETWORK_STATE\"/>  \n    <uses-permission android:name=\"android.permission.ACCESS_WIFI_STATE\"/>  \n    \n  \t<uses-permission android:name=\"android.permission.MOUNT_UNMOUNT_FILESYSTEMS\"/>\n \t<uses-permission android:name=\"android.permission.WRITE_EXTERNAL_STORAGE\"/>\n  <uses-permission android:name=\"android.permission.READ_PHONE_STATE\"/>\n</manifest> \n"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/proj.android_no_anysdk/ant.properties",
    "content": "# This file is used to override default values used by the Ant build system.\n#\n# This file must be checked into Version Control Systems, as it is\n# integral to the build system of your project.\n\n# This file is only used by the Ant script.\n\n# You can use this to override default values such as\n#  'source.dir' for the location of your java source folder and\n#  'out.dir' for the location of your output folder.\n\n# You can also use it define how the release builds are signed by declaring\n# the following properties:\n#  'key.store' for the location of your keystore and\n#  'key.alias' for the name of the key to use.\n# The password will be asked during the build when you use the 'release' target.\n\n"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/proj.android_no_anysdk/build-cfg.json",
    "content": "{\n    \"ndk_module_path\" :[\n        \"../../cocos2d-x\",\n        \"../../cocos2d-x/cocos/\",\n        \"../../cocos2d-x/external\",\n        \"../../cocos2d-x/cocos/scripting\"\n    ],\n    \"copy_resources\": [\n        {\n            \"from\": \"../../../src\",\n            \"to\": \"src\"\n        },\n        {\n            \"from\": \"../../../res\",\n            \"to\": \"res\"\n        }\n    ],\n    \"must_copy_resources\": [\n        {\n            \"from\": \"../../../config.json\",\n            \"to\": \"\"\n        }\n    ]\n}\n"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/proj.android_no_anysdk/build.xml",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<project name=\"mir9\" default=\"debug\">\n\n    <!-- The local.properties file is created and updated by the 'android' tool.\n         It contains the path to the SDK. It should *NOT* be checked into\n         Version Control Systems. -->\n    <property file=\"local.properties\" />\n\n    <!-- The ant.properties file can be created by you. It is only edited by the\n         'android' tool to add properties to it.\n         This is the place to change some Ant specific build properties.\n         Here are some properties you may want to change/update:\n\n         source.dir\n             The name of the source directory. Default is 'src'.\n         out.dir\n             The name of the output directory. Default is 'bin'.\n\n         For other overridable properties, look at the beginning of the rules\n         files in the SDK, at tools/ant/build.xml\n\n         Properties related to the SDK location or the project target should\n         be updated using the 'android' tool with the 'update' action.\n\n         This file is an integral part of the build system for your\n         application and should be checked into Version Control Systems.\n\n         -->\n    <property file=\"ant.properties\" />\n\n    <!-- The project.properties file is created and updated by the 'android'\n         tool, as well as ADT.\n\n         This contains project specific properties such as project target, and library\n         dependencies. Lower level build properties are stored in ant.properties\n         (or in .classpath for Eclipse projects).\n\n         This file is an integral part of the build system for your\n         application and should be checked into Version Control Systems. -->\n    <loadproperties srcFile=\"project.properties\" />\n\n    <!-- quick check on sdk.dir -->\n    <fail\n            message=\"sdk.dir is missing. Make sure to generate local.properties using 'android update project' or to inject it through an env var\"\n            unless=\"sdk.dir\"\n    />\n\n    <!--\n        Import per project custom build rules if present at the root of the project.\n        This is the place to put custom intermediary targets such as:\n            -pre-build\n            -pre-compile\n            -post-compile (This is typically used for code obfuscation.\n                           Compiled code location: ${out.classes.absolute.dir}\n                           If this is not done in place, override ${out.dex.input.absolute.dir})\n            -post-package\n            -post-build\n            -pre-clean\n    -->\n    <import file=\"custom_rules.xml\" optional=\"true\" />\n\n    <!-- Import the actual build file.\n\n         To customize existing targets, there are two options:\n         - Customize only one target:\n             - copy/paste the target into this file, *before* the\n               <import> task.\n             - customize it to your needs.\n         - Customize the whole content of build.xml\n             - copy/paste the content of the rules files (minus the top node)\n               into this file, replacing the <import> task.\n             - customize to your needs.\n\n         ***********************\n         ****** IMPORTANT ******\n         ***********************\n         In all cases you must update the value of version-tag below to read 'custom' instead of an integer,\n         in order to avoid having your file be overridden by tools such as \"android update project\"\n    -->\n    <!-- version-tag: 1 -->\n    <import file=\"${sdk.dir}/tools/ant/build.xml\" />\n\n</project>\n"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/proj.android_no_anysdk/build_apk.bat",
    "content": "@echo off\nset DIR=%~dp0\n%QUICK_V3_ROOT%\\quick\\bin\\win32\\php.exe \"%QUICK_V3_ROOT%/quick/bin/lib/build_apk.php\" -pdir %DIR% %*\n"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/proj.android_no_anysdk/build_apk.sh",
    "content": "#!/bin/bash\nDIR=\"$( cd \"$( dirname \"${BASH_SOURCE[0]}\" )\" && pwd )\"\nexport QUICK_V3_ROOT=`cat ~/.QUICK_V3_ROOT`\nphp \"$QUICK_V3_ROOT/quick/bin/lib/build_apk.php\" -pdir $DIR $*\n"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/proj.android_no_anysdk/build_native.bat",
    "content": "@echo off\n\nset DIR=%~dp0\nset NDK_DEBUG=1\ncall %DIR%build_native_release.bat"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/proj.android_no_anysdk/build_native.sh",
    "content": "#!/usr/bin/env bash\n\nDIR=\"$( cd \"$( dirname \"${BASH_SOURCE[0]}\" )\" && pwd )\"\nexport NDK_DEBUG=1\n$DIR/build_native_release.sh"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/proj.android_no_anysdk/build_native_release.bat",
    "content": "@echo off\n\nset DIR=%~dp0\nset APP_ROOT=%DIR%..\\..\\..\\\nset APP_ANDROID_ROOT=%DIR%\nset COCOS2DX_ROOT=%QUICK_V3_ROOT%\n\necho - config:\necho   ANDROID_NDK_ROOT    = %ANDROID_NDK_ROOT%\necho   COCOS2DX_ROOT       = %COCOS2DX_ROOT%\necho   APP_ROOT            = %APP_ROOT%\necho   APP_ANDROID_ROOT    = %APP_ANDROID_ROOT%\n\necho - cleanup\nif exist \"%APP_ANDROID_ROOT%bin\" rmdir /s /q \"%APP_ANDROID_ROOT%bin\"\nmkdir \"%APP_ANDROID_ROOT%bin\"\nif exist \"%APP_ANDROID_ROOT%assets\" rmdir /s /q \"%APP_ANDROID_ROOT%assets\"\nmkdir \"%APP_ANDROID_ROOT%assets\"\n\necho - copy scripts\nmkdir \"%APP_ANDROID_ROOT%assets\\src\"\nxcopy /s /q \"%APP_ROOT%src\\*.*\" \"%APP_ANDROID_ROOT%assets\\src\\\"\necho - copy resources\nmkdir \"%APP_ANDROID_ROOT%assets\\res\"\nxcopy /s /q \"%APP_ROOT%res\\*.*\" \"%APP_ANDROID_ROOT%assets\\res\\\"\necho - copy config\ncopy \"%APP_ROOT%config.json\" \"%APP_ANDROID_ROOT%assets\\config.json\"\n\nrem echo COPY framework_precompiled.zip\nrem echo FROM: %QUICK_V3_ROOT%quick\\lib\\framework_precompiled\nrem echo TO: \"%APP_ANDROID_ROOT%assets\\res\\\"\nrem copy %QUICK_V3_ROOT%quick\\lib\\framework_precompiled\\framework_precompiled.zip \"%APP_ANDROID_ROOT%assets\\res\\\"\n\necho Using prebuilt externals\n\"%ANDROID_NDK_ROOT%\\ndk-build\" %ANDROID_NDK_BUILD_FLAGS% NDK_DEBUG=%NDK_DEBUG% %NDK_BUILD_FLAGS% -C %APP_ANDROID_ROOT% NDK_MODULE_PATH=%APP_ANDROID_ROOT%;%COCOS2DX_ROOT%;%COCOS2DX_ROOT%/cocos;%COCOS2DX_ROOT%/quick/lib;%COCOS2DX_ROOT%/external;%COCOS2DX_ROOT%/cocos/scripting;%APP_ANDROID_ROOT%/../Classes\n"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/proj.android_no_anysdk/build_native_release.sh",
    "content": "#!/usr/bin/env bash\n\n# set .bash_profile or .profile\nif [ -f ~/.bash_profile ]; then\nPROFILE_NAME=~/.bash_profile\nelse\nPROFILE_NAME=~/.profile\nfi\nsource $PROFILE_NAME\n\nDIR=\"$( cd \"$( dirname \"${BASH_SOURCE[0]}\" )\" && pwd )\"\nAPP_ROOT=\"$DIR/../../..\"\nAPP_ANDROID_ROOT=\"$DIR\"\nexport COCOS2DX_ROOT=`cat ~/.QUICK_V3_ROOT`\n\necho \"- config:\"\necho \"  ANDROID_NDK_ROOT    = $ANDROID_NDK_ROOT\"\necho \"  COCOS2DX_ROOT       = $COCOS2DX_ROOT\"\necho \"  APP_ROOT            = $APP_ROOT\"\necho \"  APP_ANDROID_ROOT    = $APP_ANDROID_ROOT\"\n\necho \"- cleanup\"\nfind \"$APP_ANDROID_ROOT\" -type d | xargs chmod 755 $1\nif [ -d \"$APP_ANDROID_ROOT\"/bin ]; then\n    rm -rf \"$APP_ANDROID_ROOT\"/bin/*.apk\nfi\nmkdir -p \"$APP_ANDROID_ROOT\"/bin\nchmod 755 \"$APP_ANDROID_ROOT\"/bin\n\nif [ -d \"$APP_ANDROID_ROOT\"/assets ]; then\n    rm -rf \"$APP_ANDROID_ROOT\"/assets/*\nfi\nmkdir -p \"$APP_ANDROID_ROOT\"/assets\nchmod 755 \"$APP_ANDROID_ROOT\"/assets\n\necho \"- copy scripts\"\ncp -rf \"$APP_ROOT\"/src \"$APP_ANDROID_ROOT\"/assets/\necho \"- copy resources\"\ncp -rf \"$APP_ROOT\"/res \"$APP_ANDROID_ROOT\"/assets/\necho \"- copy config\"\ncp -rf \"$APP_ROOT\"/config.json \"$APP_ANDROID_ROOT\"/assets/\n\n# echo COPY framework_precompiled.zip\n# echo FROM: $QUICK_V3_ROOT/quick/lib/framework_precompiled\n# echo TO: \"$APP_ANDROID_ROOT\"/assets/res/\n# cp $QUICK_V3_ROOT/quick/lib/framework_precompiled/framework_precompiled.zip \"$APP_ANDROID_ROOT\"/assets/res/\necho \"\"\n\n# build\necho \"Using prebuilt externals\"\n\"$ANDROID_NDK_ROOT\"/ndk-build $ANDROID_NDK_BUILD_FLAGS NDK_DEBUG=$NDK_DEBUG $NDK_BUILD_FLAGS -C \"$APP_ANDROID_ROOT\" $* \\\n\"NDK_MODULE_PATH=${APP_ANDROID_ROOT}:${COCOS2DX_ROOT}:${COCOS2DX_ROOT}/cocos:${COCOS2DX_ROOT}/quick/lib:${COCOS2DX_ROOT}/external:${COCOS2DX_ROOT}/cocos/scripting:${APP_ANDROID_ROOT}/../Classes\"\n"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/proj.android_no_anysdk/clean.bat",
    "content": "@echo off\n\nset DIR=%~dp0\nrmdir /s/q %DIR%obj\nrmdir /s/q %DIR%libs\\armeabi\nrmdir /s/q %DIR%assets\n\n"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/proj.android_no_anysdk/clean.sh",
    "content": "#!/usr/bin/env bash\nDIR=\"$( cd \"$( dirname \"${BASH_SOURCE[0]}\" )\" && pwd )\"\nrm -fr $DIR/obj/*\nrm -fr $DIR/libs/armeabi/*.so\nrm -fr $DIR/assets/*\n\n"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/proj.android_no_anysdk/gen/com/zym/mir9/BuildConfig.java",
    "content": "/** Automatically generated file. DO NOT MODIFY */\npackage com.zym.mir9;\n\npublic final class BuildConfig {\n    public final static boolean DEBUG = true;\n}"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/proj.android_no_anysdk/gen/com/zym/mir9/R.java",
    "content": "/* AUTO-GENERATED FILE.  DO NOT MODIFY.\n *\n * This class was automatically generated by the\n * aapt tool from the resource data it found.  It\n * should not be modified by hand.\n */\n\npackage com.zym.mir9;\n\npublic final class R {\n    public static final class attr {\n    }\n    public static final class drawable {\n        public static final int icon=0x7f020000;\n    }\n    public static final class string {\n        public static final int app_name=0x7f030000;\n    }\n}\n"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/proj.android_no_anysdk/jni/Android.mk",
    "content": "LOCAL_PATH := $(call my-dir)\n\ninclude $(CLEAR_VARS)\n\nLOCAL_MODULE := cocos2dlua_shared\n\nLOCAL_MODULE_FILENAME := libcocos2dlua\n\nLOCAL_SRC_FILES := hellolua/main.cpp \\\n../../Classes/VisibleRect.cpp \\\n../../Classes/AppDelegate.cpp \\\n../../Classes/ConfigParser.cpp\n\nifeq ($(NDK_DEBUG),1)\nLOCAL_SRC_FILES += \\\nhellolua/Runtime_android.cpp \\\n../../Classes/runtime/ConnectWaitLayer.cpp \\\n../../Classes/runtime/ConsoleCommand.cpp \\\n../../Classes/runtime/FileServer.cpp \\\n../../Classes/runtime/Landscape_png.cpp \\\n../../Classes/runtime/lua_debugger.c \\\n../../Classes/runtime/PlayDisable_png.cpp \\\n../../Classes/runtime/PlayEnable_png.cpp \\\n../../Classes/runtime/Portrait_png.cpp \\\n../../Classes/runtime/Protos.pb.cc \\\n../../Classes/runtime/Runtime.cpp \\\n../../Classes/runtime/Shine_png.cpp\nendif\n\nLOCAL_C_INCLUDES := \\\n$(LOCAL_PATH)/../../Classes/runtime \\\n$(LOCAL_PATH)/../../Classes \\\n$(COCOS2DX_ROOT)/external \\\n$(COCOS2DX_ROOT)/external/protobuf-lite/src \\\n$(COCOS2DX_ROOT)/quick/lib/quick-src \\\n$(COCOS2DX_ROOT)/quick/lib/quick-src/extra\n\nLOCAL_STATIC_LIBRARIES := cocos2d_lua_static\nLOCAL_STATIC_LIBRARIES += lua_extensions_static\nLOCAL_STATIC_LIBRARIES += extra_static\nifeq ($(NDK_DEBUG),1)\nLOCAL_STATIC_LIBRARIES += cocos_protobuf-lite_static\nendif\n\ninclude $(BUILD_SHARED_LIBRARY)\n\n$(call import-module,scripting/lua-bindings/proj.android)\n\n$(call import-module, quick-src/lua_extensions)\n$(call import-module, quick-src/extra)\n$(call import-module, protobuf-lite)\n\n\n"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/proj.android_no_anysdk/jni/Application.mk",
    "content": "APP_STL := gnustl_static\nNDK_TOOLCHAIN_VERSION=clang\n\nAPP_CPPFLAGS := -frtti -DCC_ENABLE_CHIPMUNK_INTEGRATION=1 -std=c++11 -fsigned-char\nAPP_LDFLAGS := -latomic\n\nAPP_CPPFLAGS += -DCC_LUA_ENGINE_ENABLED=1\n\nifeq ($(NDK_DEBUG),1)\n  APP_CPPFLAGS += -DCOCOS2D_DEBUG=1\n  APP_OPTIM := debug\nelse\n  APP_CPPFLAGS += -DNDEBUG\n  APP_OPTIM := release\nendif\n\nCC_USE_CURL := 0\nCC_USE_CCSTUDIO := 0\nCC_USE_CCBUILDER := 0\nCC_USE_SPINE := 0\nCC_USE_PHYSICS := 0\nCC_USE_TIFF := 0\nCC_USE_WEBP := 0\nCC_USE_JPEG := 1\nCC_USE_3D := 0\nCC_USE_SQLITE := 0\nCC_CODE_IDE_DEBUG_SUPPORT := 0\n\nifeq ($(CC_USE_CURL),0)\nAPP_CPPFLAGS += -DCC_USE_CURL=0\nendif\nifeq ($(CC_USE_CCSTUDIO),0)\nAPP_CPPFLAGS += -DCC_USE_CCSTUDIO=0\nendif\nifeq ($(CC_USE_CCBUILDER),0)\nAPP_CPPFLAGS += -DCC_USE_CCBUILDER=0\nendif\nifeq ($(CC_USE_SPINE),0)\nAPP_CPPFLAGS += -DCC_USE_SPINE=0\nendif\nifeq ($(CC_USE_PHYSICS),0)\nAPP_CPPFLAGS += -DCC_USE_PHYSICS=0\nendif\nifeq ($(CC_USE_TIFF),0)\nAPP_CPPFLAGS += -DCC_USE_TIFF=0\nendif\nifeq ($(CC_USE_WEBP),0)\nAPP_CPPFLAGS += -DCC_USE_WEBP=0\nendif\nifeq ($(CC_USE_JPEG),0)\nAPP_CPPFLAGS += -DCC_USE_JPEG=0\nendif\nifeq ($(CC_USE_3D),0)\nAPP_CPPFLAGS += -DCC_USE_3D=0\nendif\nifeq ($(CC_CODE_IDE_DEBUG_SUPPORT),0)\nAPP_CPPFLAGS += -DCC_CODE_IDE_DEBUG_SUPPORT=0\nendif\nifeq ($(CC_USE_SQLITE),1)\nAPP_CPPFLAGS += -DCC_USE_SQLITE=1\nAPP_CFLAGS += -DCC_USE_SQLITE=1\nelse\nAPP_CPPFLAGS += -DCC_USE_SQLITE=0\nAPP_CFLAGS += -DCC_USE_SQLITE=0\nendif\n"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/proj.android_no_anysdk/jni/hellolua/Runtime_android.cpp",
    "content": "#include <jni.h>\n#include <android/log.h>\n#include \"jni/JniHelper.h\"\n#include <string>\n#include <vector>\nusing namespace std;\nusing namespace cocos2d;\n\nstring getIPAddress()\n{\n\tJniMethodInfo t;\n    string IPAddress(\"\");\n\n    if (JniHelper::getStaticMethodInfo(t, \"org/cocos2dx/lua/AppActivity\", \"getLocalIpAddress\", \"()Ljava/lang/String;\")) {\n        jstring str = (jstring)t.env->CallStaticObjectMethod(t.classID, t.methodID);\n        t.env->DeleteLocalRef(t.classID);\n        IPAddress = JniHelper::jstring2string(str);\n        t.env->DeleteLocalRef(str);\n    }\n    return IPAddress;\n}\n"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/proj.android_no_anysdk/jni/hellolua/main.cpp",
    "content": "#include \"AppDelegate.h\"\n#include \"cocos2d.h\"\n#include \"platform/android/jni/JniHelper.h\"\n#include <jni.h>\n#include <android/log.h>\n#include \"ConfigParser.h\"\n\n#define  LOG_TAG    \"main\"\n#define  LOGD(...)  __android_log_print(ANDROID_LOG_DEBUG,LOG_TAG,__VA_ARGS__)\n\nusing namespace cocos2d;\n\nvoid cocos_android_app_init (JNIEnv* env, jobject thiz) {\n    LOGD(\"cocos_android_app_init\");\n    AppDelegate *pAppDelegate = new AppDelegate();\n}\n\nextern \"C\"\n{\n\tbool Java_org_cocos2dx_lua_AppActivity_nativeIsLandScape(JNIEnv *env, jobject thisz)\n\t{\n\t\treturn ConfigParser::getInstance()->isLanscape();\n\t}\n\n\tbool Java_org_cocos2dx_lua_AppActivity_nativeIsDebug(JNIEnv *env, jobject thisz)\n\t{\n#if (COCOS2D_DEBUG > 0)\n        return true;\n#else\n        return false;    \n#endif\n\t}\n}\n\n"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/proj.android_no_anysdk/proguard-project.txt",
    "content": "# To enable ProGuard in your project, edit project.properties\n# to define the proguard.config property as described in that file.\n#\n# Add project specific ProGuard rules here.\n# By default, the flags in this file are appended to flags specified\n# in ${sdk.dir}/tools/proguard/proguard-android.txt\n# You can edit the include path and order by changing the ProGuard\n# include property in project.properties.\n#\n# For more details, see\n#   http://developer.android.com/guide/developing/tools/proguard.html\n\n# Add any project specific keep options here:\n\n# If your project uses WebView with JS, uncomment the following\n# and specify the fully qualified class name to the JavaScript interface\n# class:\n#-keepclassmembers class fqcn.of.javascript.interface.for.webview {\n#   public *;\n#}\n"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/proj.android_no_anysdk/project.properties",
    "content": "# This file is automatically generated by Android Tools.\n# Do not modify this file -- YOUR CHANGES WILL BE ERASED!\n#\n# This file must be checked in Version Control Systems.\n#\n# To customize properties used by the Ant build system use,\n# \"ant.properties\", and override values to adapt the script to your\n# project structure.\n\n# Project target.\ntarget=Google Inc.:Google APIs (x86 System Image):19\n\nandroid.library.reference.1=../../../../../cocos/platform/android/java\n"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/proj.android_no_anysdk/res/values/strings.xml",
    "content": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<resources>\n    <string name=\"app_name\">热血沙城</string>\n</resources>\n"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/proj.android_no_anysdk/src/org/cocos2dx/lib/QuickHTTPInterface.java",
    "content": "package org.cocos2dx.lib;\n\nimport java.io.DataInputStream;\nimport java.io.DataOutputStream;\nimport java.io.File;\nimport java.io.FileInputStream;\nimport java.io.IOException;\nimport java.io.OutputStream;\nimport java.net.HttpURLConnection;\nimport java.net.ProtocolException;\nimport java.net.URL;\nimport java.text.ParseException;\nimport java.text.SimpleDateFormat;\nimport java.util.Calendar;\nimport java.util.List;\nimport java.util.Locale;\nimport java.util.Map;\nimport java.util.Map.Entry;\n\nimport org.json.JSONArray;\nimport org.json.JSONException;\nimport org.json.JSONObject;\n\nimport android.util.Log;\n\npublic class QuickHTTPInterface {\n    static String BOUNDARY = \"----------------------------78631b43218d\";\n    static String NEWLINE = \"\\r\\n\";\n\n    static HttpURLConnection createURLConnect(String strURL) {\n        URL url;\n        HttpURLConnection urlConnection;\n        try {\n            url = new URL(strURL);\n            urlConnection = (HttpURLConnection)url.openConnection();\n            urlConnection.setRequestProperty(\"Accept-Encoding\", \"identity\");\n            urlConnection.setDoInput(true);\n        } catch (Exception e) {\n            Log.e(\"QuickHTTPInterface\", e.toString());\n            return null;\n        }\n\n        return urlConnection;\n    }\n\n    static void setRequestMethod(HttpURLConnection http, String strMedthod) {\n        try {\n            if (\"POST\".equalsIgnoreCase(strMedthod)) {\n                http.setDoOutput(true);\n            }\n            http.setRequestMethod(strMedthod);\n        } catch (ProtocolException e) {\n            Log.e(\"QuickHTTPInterface\", e.toString());\n        }\n    }\n\n    static void addRequestHeader(HttpURLConnection http, String strkey, String strValue, boolean bNeedBoundary) {\n        if (\"Content-Type\".equalsIgnoreCase(strkey.trim()) && bNeedBoundary) {\n            strValue += (\"; boundary=\" + BOUNDARY);\n        }\n        http.setRequestProperty(strkey, strValue);\n    }\n\n    static void setTimeout(HttpURLConnection http, int msTime) {\n        http.setConnectTimeout(msTime);\n        http.setReadTimeout(msTime);\n    }\n\n    static int connect(HttpURLConnection http) {\n        int nSuc = 0;\n\n        try {\n            http.connect();\n        } catch (IOException e) {\n            Log.e(\"QuickHTTPInterface\", e.toString());\n            nSuc = 1;\n        }\n\n        return nSuc;\n    }\n\n    static void postContent(HttpURLConnection http, String name, String value, boolean bNeedConnectSym) {\n        try {\n            DataOutputStream out = new DataOutputStream(http.getOutputStream());\n            String content = null;\n            if (null == name || 0 == name.length()) {\n                content = value;\n            } else {\n                content = name + \"=\" + value;\n            }\n            if (bNeedConnectSym) {\n                content = \"&\" + content;\n            }\n            out.write(content.getBytes());\n            out.flush();\n        } catch (IOException e) {\n            Log.e(\"QuickHTTPInterface\", e.toString());\n        }\n    }\n\n    static void postContentByteArray(HttpURLConnection http, byte[] byteArray) {\n        try {\n            OutputStream out = http.getOutputStream();\n\n            out.write(byteArray);\n\n            out.flush();\n        } catch (IOException e) {\n            Log.e(\"QuickHTTPInterface\", e.toString());\n        }\n    }\n\n    static void postFormContent(HttpURLConnection http, String key, String val) {\n        try {\n            OutputStream out = http.getOutputStream();\n\n            out.write(getBoundaryContentHeader(key, val).getBytes());\n\n            out.flush();\n        } catch (IOException e) {\n            Log.e(\"QuickHTTPInterface\", e.toString());\n        }\n    }\n\n    static void postFormFile(HttpURLConnection http, String name, String filePath) {\n        try {\n            FileInputStream fin = new FileInputStream(filePath);\n            OutputStream out = http.getOutputStream();\n\n\n            out.write(getBoundaryFileHeader(name, filePath).getBytes());\n            byte[] buffer = new byte[1024];\n            int len = 0;\n            while((len = fin.read(buffer)) != -1) {\n                out.write(buffer, 0, len);\n            }\n            out.write(NEWLINE.getBytes());\n\n            out.flush();\n            fin.close();\n        } catch (IOException e) {\n            Log.e(\"QuickHTTPInterface\", e.toString());\n        }\n    }\n\n    static void postFormEnd(HttpURLConnection http, boolean bBoundary) {\n        if (\"GET\".equalsIgnoreCase(http.getRequestMethod())) {\n            return;\n        }\n\n        try {\n            OutputStream out = http.getOutputStream();\n\n            if (bBoundary) {\n                out.write(getBoundaryEnd().getBytes());\n                out.flush();\n            }\n            out.close();\n        } catch (IOException e) {\n            Log.e(\"QuickHTTPInterface\", e.toString());\n        }\n    }\n\n    static String getBoundaryFileHeader(String key, String filePath) {\n        File file = new File(filePath);\n        StringBuilder sb = new StringBuilder();\n        sb.append(\"--\");\n        sb.append(BOUNDARY);\n        sb.append(NEWLINE);\n        sb.append(\"Content-Disposition: form-data; \");\n        sb.append(\"name=\\\"\");\n        sb.append(key);\n        sb.append(\"\\\"; \");\n        sb.append(\"filename=\\\"\");\n        sb.append(file.getName());\n        sb.append(\"\\\"\");\n        sb.append(NEWLINE);\n        sb.append(\"Content-Type: application/octet-stream\");\n        sb.append(NEWLINE);\n        sb.append(NEWLINE);\n\n        return sb.toString();\n    }\n\n    static String getBoundaryContentHeader(String key, String val) {\n        StringBuilder sb = new StringBuilder();\n        sb.append(\"--\");\n        sb.append(BOUNDARY);\n        sb.append(NEWLINE);\n        sb.append(\"Content-Disposition: form-data; name=\\\"\");\n        sb.append(key);\n        sb.append(\"\\\"\");\n        sb.append(NEWLINE);\n        sb.append(NEWLINE);\n        sb.append(val);\n        sb.append(NEWLINE);\n\n        return sb.toString();\n    }\n\n    static String getBoundaryEnd() {\n        StringBuilder sb = new StringBuilder();\n        sb.append(\"--\");\n        sb.append(BOUNDARY);\n        sb.append(\"--\");\n        sb.append(NEWLINE);\n\n        return sb.toString();\n    }\n\n    static int getResponedCode(HttpURLConnection http) {\n        int code = 0;\n        try {\n            code = http.getResponseCode();\n            //            Log.i(\"QuickHTTPInterface\", \"reponed code:\" + code);\n        } catch (IOException e) {\n            Log.e(\"QuickHTTPInterface\", e.toString());\n        }\n        return code;\n    }\n\n    static String getResponedErr(HttpURLConnection http) {\n        String msg;\n        try {\n            msg = http.getResponseMessage();\n        } catch (IOException e) {\n            msg = e.toString();\n            Log.e(\"QuickHTTPInterface\", msg);\n        }\n\n        return msg;\n    }\n\n    static String getResponedHeader(HttpURLConnection http) {\n        Map<String, List<String>> headers = http.getHeaderFields();\n\n        JSONObject json = new JSONObject();\n        try {\n            for (Entry<String, List<String>> entry: headers.entrySet()) {\n                String key = entry.getKey();\n                if (null == key) {\n                    key = \"\";\n                }\n                List<String> value = entry.getValue();\n                JSONArray jsonArray = new JSONArray();\n                for(String strVal : value) {\n                    jsonArray.put(strVal);\n                }\n                json.put(key, jsonArray);\n            }\n        } catch(JSONException e) {\n            Log.e(\"QuickHTTPInterface\", e.toString());\n        }\n\n        return json.toString();\n    }\n\n    static String getResponedHeaderByIdx(HttpURLConnection http, int idx) {\n        Map<String, List<String>> headers = http.getHeaderFields();\n        if (null == headers) {\n            return null;\n        }\n\n        String header = null;\n\n        int counter = 0;\n        for (Entry<String, List<String>> entry: headers.entrySet()) {\n            if (counter == idx) {\n                String key = entry.getKey();\n                if (null == key) {\n                    header = listToString(entry.getValue(), \",\") + \"\\n\";\n                } else {\n                    header = key + \":\" + listToString(entry.getValue(), \",\") + \"\\n\";\n                }\n                break;\n            }\n            counter++;\n        }\n\n        return header;\n    }\n\n    static String getResponedHeaderByKey(HttpURLConnection http, String key) {\n        if (null == key) {\n            return null;\n        }\n\n        Map<String, List<String>> headers = http.getHeaderFields();\n        if (null == headers) {\n            return null;\n        }\n\n        String header = null;\n\n        for (Entry<String, List<String>> entry: headers.entrySet()) {\n            if (key.equalsIgnoreCase(entry.getKey())) {\n\n                if (\"set-cookie\".equalsIgnoreCase(key)) {\n                    header = combinCookies(entry.getValue(), http.getURL().getHost());\n                } else {\n                    header = listToString(entry.getValue(), \",\");\n                }\n                break;\n            }\n        }\n\n        return header;\n    }\n\n    static int getResponedHeaderByKeyInt(HttpURLConnection http, String key) {\n        String value = http.getHeaderField(key);\n\n        if (null == value) {\n            return 0;\n        } else {\n            return Integer.parseInt(value);\n        }\n    }\n\n    static int getContentLeng(HttpURLConnection http) {\n        return http.getContentLength();\n    }\n\n    static byte[] getResponedString(HttpURLConnection http) {\n        try {\n            DataInputStream in = new DataInputStream(http.getInputStream());\n\n            byte[] buffer = new byte[1024];\n            byte[] retBuf = null;\n            int len = in.read(buffer);\n            //            Log.i(\"QuickHTTPInterface\", \"have recv data:\" + len);\n\n            if (-1 == len) {\n                retBuf = new byte[1];\n                retBuf[0] = 0;\n            } else {\n                retBuf = new byte[len+1];\n                retBuf[0] = 1;\n                System.arraycopy(buffer, 0, retBuf, 1, len);\n            }\n            return retBuf;\n        } catch (IOException e) {\n            Log.e(\"QuickHTTPInterface\", e.toString());\n        }\n\n        return null;\n    }\n\n    static void close(HttpURLConnection http) {\n        try {\n            http.getInputStream().close();\n        } catch (IOException e) {\n            Log.e(\"QuickHTTPInterface\", e.toString());\n        }\n    }\n\n    public static String listToString(List<String> list, String strInterVal) {\n        if (list == null) {\n            return null;\n        }\n        StringBuilder result = new StringBuilder();\n        boolean flag = false;\n        for (String str : list) {\n            if (flag) {\n                result.append(strInterVal);\n            }\n            if (null == str) {\n                str = \"\";\n            }\n            result.append(str);\n            flag = true;\n        }\n        return result.toString();\n    }\n\n    public static String combinCookies(List<String> list, String strDomain) {\n        StringBuilder sbCookies = new StringBuilder();\n\n        String strKey = null;\n        String strValue = null;\n        String strExpire = null;\n        boolean bSecure = false;\n        boolean bFirst = false;\n\n        for (String str : list) {\n        \tbSecure = false;\n        \tbFirst = true;\n            String[] parts = str.split(\";\");\n            for (String part : parts) {\n                String[] item = part.split(\"=\");\n                if (bFirst) {\n                \tif (2 == item.length) {\n                \t\tstrKey = item[0];\n                \t\tstrValue = item[1];\n                \t} else {\n                \t\tstrKey = \"\";\n                \t\tstrValue = \"\";\n                \t}\n                \tbFirst = false;\n                }\n                if (\"expires\".equalsIgnoreCase(item[0].trim())) {\n                    strExpire = str2Seconds(item[1].trim());\n                } else if(\"secure\".equalsIgnoreCase(item[0].trim())) {\n                \tbSecure = true;\n                } else if (\"domain\".equalsIgnoreCase(item[0].trim())) {\n                \tstrDomain = item[1];\n                }\n            }\n\n            if (null == strDomain) {\n                strDomain = \"none\";\n            }\n\n            sbCookies.append(strDomain);\n            sbCookies.append('\\t');\n            sbCookies.append(\"FALSE\\t\");       //access\n            sbCookies.append(\"/\\t\");          //path\n            if (bSecure) {\n            \tsbCookies.append(\"TRUE\\t\");     //secure\n            } else {\n            \tsbCookies.append(\"FALSE\\t\");     //secure\n            }\n            sbCookies.append(strExpire);    //expire tag\n            sbCookies.append(\"\\t\");\n            sbCookies.append(strKey);       //key\n            sbCookies.append(\"\\t\");\n            sbCookies.append(strValue);     //value\n            sbCookies.append('\\n');\n        }\n\n        return sbCookies.toString();\n    }\n\n    private static String str2Seconds(String strTime) {\n        Calendar c = Calendar.getInstance();\n        long millisSecond = 0;\n\n        try {\n            c.setTime(new SimpleDateFormat(\"EEE, dd-MMM-yyyy hh:mm:ss zzz\", Locale.US).parse(strTime));\n            millisSecond = c.getTimeInMillis()/1000;\n        } catch (ParseException e) {\n        \tmillisSecond = -1;\n            //Log.e(\"QuickHTTPInterface\", e.toString());\n        }\n        \n        if (-1 == millisSecond) {\n        \treturn strTime;\n        }\n\n        return Long.toString(millisSecond);\n    }\n\n}\n"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/proj.android_no_anysdk/src/org/cocos2dx/lua/AppActivity.java",
    "content": "/****************************************************************************\nCopyright (c) 2008-2010 Ricardo Quesada\nCopyright (c) 2010-2012 cocos2d-x.org\nCopyright (c) 2011      Zynga Inc.\nCopyright (c) 2013-2014 Chukong Technologies Inc.\n \nhttp://www.cocos2d-x.org\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in\nall copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\nTHE SOFTWARE.\n****************************************************************************/\npackage org.cocos2dx.lua;\n\nimport java.net.InetAddress;\nimport java.net.NetworkInterface;\nimport java.net.SocketException;\nimport java.util.Enumeration;\nimport java.util.ArrayList;\n\nimport org.cocos2dx.lib.Cocos2dxActivity;\n\nimport android.app.AlertDialog;\nimport android.content.Context;\nimport android.content.DialogInterface;\nimport android.content.Intent;\nimport android.content.pm.ApplicationInfo;\nimport android.content.pm.ActivityInfo;\nimport android.net.ConnectivityManager;\nimport android.net.NetworkInfo;\nimport android.net.wifi.WifiInfo;\nimport android.net.wifi.WifiManager;\nimport android.os.Bundle;\nimport android.provider.Settings;\nimport android.text.format.Formatter;\nimport android.util.Log;\nimport android.view.WindowManager;\nimport android.widget.Toast;\n\n\npublic class AppActivity extends Cocos2dxActivity{\n\n\tstatic String hostIPAdress = \"0.0.0.0\";\n\t@Override\n\tprotected void onCreate(Bundle savedInstanceState) {\n\t\tsuper.onCreate(savedInstanceState);\n\t\t\n\t\tif(nativeIsLandScape()) {\n\t\t\tsetRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_SENSOR_LANDSCAPE);\n\t\t} else {\n\t\t\tsetRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_SENSOR_PORTRAIT);\n\t\t}\n\t\t\n\t\t//2.Set the format of window\n\t\t\n\t\t// Check the wifi is opened when the native is debug.\n\t\tif(nativeIsDebug())\n\t\t{\n\t\t\tgetWindow().setFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON, WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);\n\t\t\tif(!isNetworkConnected())\n\t\t\t{\n\t\t\t\tAlertDialog.Builder builder=new AlertDialog.Builder(this);\n\t\t\t\tbuilder.setTitle(\"Warning\");\n\t\t\t\tbuilder.setMessage(\"Please open WIFI for debuging...\");\n\t\t\t\tbuilder.setPositiveButton(\"OK\",new DialogInterface.OnClickListener() {\n\t\t\t\t\t\n\t\t\t\t\t@Override\n\t\t\t\t\tpublic void onClick(DialogInterface dialog, int which) {\n\t\t\t\t\t\tstartActivity(new Intent(Settings.ACTION_WIFI_SETTINGS));\n\t\t\t\t\t\tfinish();\n\t\t\t\t\t\tSystem.exit(0);\n\t\t\t\t\t}\n\t\t\t\t});\n\n\t\t\t\tbuilder.setNegativeButton(\"Cancel\", null);\n\t\t\t\tbuilder.setCancelable(true);\n\t\t\t\tbuilder.show();\n\t\t\t}\n\t\t}\n\t\thostIPAdress = getHostIpAddress();\n\t}\n\tprivate boolean isNetworkConnected() {\n\t        ConnectivityManager cm = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);  \n\t        if (cm != null) {  \n\t            NetworkInfo networkInfo = cm.getActiveNetworkInfo();  \n\t\t\tArrayList networkTypes = new ArrayList();\n\t\t\tnetworkTypes.add(ConnectivityManager.TYPE_WIFI);\n\t\t\ttry {\n\t\t\t\tnetworkTypes.add(ConnectivityManager.class.getDeclaredField(\"TYPE_ETHERNET\").getInt(null));\n\t\t\t} catch (NoSuchFieldException nsfe) {\n\t\t\t}\n\t\t\tcatch (IllegalAccessException iae) {\n\t\t\t\tthrow new RuntimeException(iae);\n\t\t\t}\n\t\t\tif (networkInfo != null && networkTypes.contains(networkInfo.getType())) {\n\t                return true;  \n\t            }  \n\t        }  \n\t        return false;  \n\t    } \n\t \n\tpublic String getHostIpAddress() {\n\t\tWifiManager wifiMgr = (WifiManager) getSystemService(WIFI_SERVICE);\n\t\tWifiInfo wifiInfo = wifiMgr.getConnectionInfo();\n\t\tint ip = wifiInfo.getIpAddress();\n\t\treturn ((ip & 0xFF) + \".\" + ((ip >>>= 8) & 0xFF) + \".\" + ((ip >>>= 8) & 0xFF) + \".\" + ((ip >>>= 8) & 0xFF));\n\t}\n\t\n\tpublic static String getLocalIpAddress() {\n\t\treturn hostIPAdress;\n\t}\n\t\n\tprivate static native boolean nativeIsLandScape();\n\tprivate static native boolean nativeIsDebug();\n\t\n}\n"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/proj.ios_mac/Runtime_ios-mac.mm",
    "content": "\n#include <ifaddrs.h>\n#include <arpa/inet.h>\n#include <net/if.h>\n\n#include <string>\n#include <vector>\nusing namespace std;\n\nstring getIPAddress()\n{\n    BOOL success;\n    struct ifaddrs * addrs;\n    const struct ifaddrs * cursor;\n    \n    success = getifaddrs(&addrs) == 0;\n    if (success) {\n        cursor = addrs;\n        while (cursor != NULL) {\n            // the second test keeps from picking up the loopback address\n            if (cursor->ifa_addr->sa_family == AF_INET && (cursor->ifa_flags & IFF_LOOPBACK) == 0)\n            {\n                NSString *name = [NSString stringWithUTF8String:cursor->ifa_name];\n                if ([name rangeOfString:@\"en\" options:NSCaseInsensitiveSearch].length > 0) {\n                    string ipaddr = [[NSString stringWithUTF8String:inet_ntoa(((struct sockaddr_in *)cursor->ifa_addr)->sin_addr)]UTF8String];\n                    if (!ipaddr.empty()) {\n                        return ipaddr;\n                    }\n                }\n            }\n            cursor = cursor->ifa_next;\n        }\n        freeifaddrs(addrs);\n    }\n    return \"\";\n}\n"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/proj.ios_mac/ios/AppController.h",
    "content": "/****************************************************************************\n Copyright (c) 2010-2013 cocos2d-x.org\n Copyright (c) 2013-2014 Chukong Technologies Inc.\n\n http://www.cocos2d-x.org\n\n Permission is hereby granted, free of charge, to any person obtaining a copy\n of this software and associated documentation files (the \"Software\"), to deal\n in the Software without restriction, including without limitation the rights\n to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n copies of the Software, and to permit persons to whom the Software is\n furnished to do so, subject to the following conditions:\n\n The above copyright notice and this permission notice shall be included in\n all copies or substantial portions of the Software.\n\n THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n THE SOFTWARE.\n ****************************************************************************/\n\n@class RootViewController;\n\n@interface AppController : NSObject <UIAccelerometerDelegate, UIAlertViewDelegate, UITextFieldDelegate,UIApplicationDelegate>\n{\n    UIWindow *window;\n    RootViewController    *viewController;\n}\n\n@end\n\n"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/proj.ios_mac/ios/AppController.mm",
    "content": "/****************************************************************************\n Copyright (c) 2010-2013 cocos2d-x.org\n Copyright (c) 2013-2014 Chukong Technologies Inc.\n\n http://www.cocos2d-x.org\n\n Permission is hereby granted, free of charge, to any person obtaining a copy\n of this software and associated documentation files (the \"Software\"), to deal\n in the Software without restriction, including without limitation the rights\n to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n copies of the Software, and to permit persons to whom the Software is\n furnished to do so, subject to the following conditions:\n\n The above copyright notice and this permission notice shall be included in\n all copies or substantial portions of the Software.\n\n THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n THE SOFTWARE.\n ****************************************************************************/\n\n#import <UIKit/UIKit.h>\n#import \"cocos2d.h\"\n\n#import \"AppController.h\"\n#import \"AppDelegate.h\"\n#import \"RootViewController.h\"\n#import \"platform/ios/CCEAGLView-ios.h\"\n\n@implementation AppController\n\n#pragma mark -\n#pragma mark Application lifecycle\n\n// cocos2d application instance\nstatic AppDelegate s_sharedApplication;\n\n- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions\n{\n\n    cocos2d::Application *app = cocos2d::Application::getInstance();\n    app->initGLContextAttrs();\n    cocos2d::GLViewImpl::convertAttrs();\n\n    // Override point for customization after application launch.\n\n    // Add the view controller's view to the window and display.\n    window = [[UIWindow alloc] initWithFrame: [[UIScreen mainScreen] bounds]];\n    CCEAGLView *eaglView = [CCEAGLView viewWithFrame: [window bounds]\n                                     pixelFormat: (NSString*)cocos2d::GLViewImpl::_pixelFormat\n                                     depthFormat: cocos2d::GLViewImpl::_depthFormat\n                              preserveBackbuffer: NO\n                                      sharegroup: nil\n                                   multiSampling: NO\n                                 numberOfSamples: 0 ];\n\n    [eaglView setMultipleTouchEnabled:YES];\n    \n    // Use RootViewController manage CCEAGLView\n    viewController = [[RootViewController alloc] initWithNibName:nil bundle:nil];\n    viewController.wantsFullScreenLayout = YES;\n    viewController.view = eaglView;\n\n    // Set RootViewController to window\n    if ( [[UIDevice currentDevice].systemVersion floatValue] < 6.0)\n    {\n        // warning: addSubView doesn't work on iOS6\n        [window addSubview: viewController.view];\n    }\n    else\n    {\n        // use this method on ios6\n        [window setRootViewController:viewController];\n    }\n    \n    [window makeKeyAndVisible];\n\n    [[UIApplication sharedApplication] setStatusBarHidden: YES];\n\n    // IMPORTANT: Setting the GLView should be done after creating the RootViewController\n    cocos2d::GLView *glview = cocos2d::GLViewImpl::createWithEAGLView(eaglView);\n    cocos2d::Director::getInstance()->setOpenGLView(glview);\n\n    app->run();\n    return YES;\n}\n\n\n- (void)applicationWillResignActive:(UIApplication *)application {\n    /*\n     Sent when the application is about to move from active to inactive state. This can occur for certain types of temporary interruptions (such as an incoming phone call or SMS message) or when the user quits the application and it begins the transition to the background state.\n     Use this method to pause ongoing tasks, disable timers, and throttle down OpenGL ES frame rates. Games should use this method to pause the game.\n     */\n    cocos2d::Director::getInstance()->pause();\n}\n\n- (void)applicationDidBecomeActive:(UIApplication *)application {\n    /*\n     Restart any tasks that were paused (or not yet started) while the application was inactive. If the application was previously in the background, optionally refresh the user interface.\n     */\n    cocos2d::Director::getInstance()->resume();\n}\n\n- (void)applicationDidEnterBackground:(UIApplication *)application {\n    /*\n     Use this method to release shared resources, save user data, invalidate timers, and store enough application state information to restore your application to its current state in case it is terminated later.\n     If your application supports background execution, called instead of applicationWillTerminate: when the user quits.\n     */\n    cocos2d::Application::getInstance()->applicationDidEnterBackground();\n}\n\n- (void)applicationWillEnterForeground:(UIApplication *)application {\n    /*\n     Called as part of  transition from the background to the inactive state: here you can undo many of the changes made on entering the background.\n     */\n    cocos2d::Application::getInstance()->applicationWillEnterForeground();\n}\n\n- (void)applicationWillTerminate:(UIApplication *)application {\n    /*\n     Called when the application is about to terminate.\n     See also applicationDidEnterBackground:.\n     */\n}\n\n\n#pragma mark -\n#pragma mark Memory management\n\n- (void)applicationDidReceiveMemoryWarning:(UIApplication *)application {\n    /*\n     Free up as much memory as possible by purging cached data objects that can be recreated (or reloaded from disk) later.\n     */\n     cocos2d::Director::getInstance()->purgeCachedData();\n}\n\n\n- (void)dealloc {\n    [super dealloc];\n}\n\n\n@end\n\n"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/proj.ios_mac/ios/Info.plist",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE plist PUBLIC \"-//Apple//DTD PLIST 1.0//EN\" \"http://www.apple.com/DTDs/PropertyList-1.0.dtd\">\n<plist version=\"1.0\">\n<dict>\n\t<key>CFBundleDevelopmentRegion</key>\n\t<string>English</string>\n\t<key>CFBundleDisplayName</key>\n\t<string>${PRODUCT_NAME}</string>\n\t<key>CFBundleExecutable</key>\n\t<string>${EXECUTABLE_NAME}</string>\n\t<key>CFBundleIconFile</key>\n\t<string></string>\n\t<key>CFBundleIconFiles</key>\n\t<array>\n\t\t<string>Icon-80</string>\n\t\t<string>Icon-58</string>\n\t\t<string>Icon-29</string>\n\t\t<string>Icon-120</string>\n\t\t<string>Icon-57.png</string>\n\t\t<string>Icon-114.png</string>\n\t\t<string>Icon-72.png</string>\n\t\t<string>Icon-144.png</string>\n\t</array>\n\t<key>CFBundleIconFiles~ipad</key>\n\t<array>\n\t\t<string>Icon-58</string>\n\t\t<string>Icon-29</string>\n\t\t<string>Icon-80</string>\n\t\t<string>Icon-40</string>\n\t\t<string>Icon-100</string>\n\t\t<string>Icon-50</string>\n\t\t<string>Icon-152</string>\n\t\t<string>Icon-76</string>\n\t\t<string>Icon-120</string>\n\t\t<string>Icon-57.png</string>\n\t\t<string>Icon-114.png</string>\n\t\t<string>Icon-72.png</string>\n\t\t<string>Icon-144.png</string>\n\t</array>\n\t<key>CFBundleIdentifier</key>\n\t<string>com.zym.mir9</string>\n\t<key>CFBundleInfoDictionaryVersion</key>\n\t<string>6.0</string>\n\t<key>CFBundleName</key>\n\t<string>${PRODUCT_NAME}</string>\n\t<key>CFBundlePackageType</key>\n\t<string>APPL</string>\n\t<key>CFBundleSignature</key>\n\t<string>????</string>\n\t<key>CFBundleVersion</key>\n\t<string>1.0</string>\n\t<key>UILaunchImages</key>\n\t<array>\n\t    <dict>\n\t        <key>UILaunchImageMinimumOSVersion</key>\n\t        <string>8.0</string>\n\t        <key>UILaunchImageName</key>\n\t        <string>Default</string>\n\t        <key>UILaunchImageOrientation</key>\n\t        <string>Portrait</string>\n\t        <key>UILaunchImageSize</key>\n\t        <string>{320, 480}</string>\n\t    </dict>\n\t    <dict>\n\t        <key>UILaunchImageMinimumOSVersion</key>\n\t        <string>8.0</string>\n\t        <key>UILaunchImageName</key>\n\t        <string>Default</string>\n\t        <key>UILaunchImageOrientation</key>\n\t        <string>Landscape</string>\n\t        <key>UILaunchImageSize</key>\n\t        <string>{320, 480}</string>\n\t    </dict>\n\t    <dict>\n\t        <key>UILaunchImageMinimumOSVersion</key>\n\t        <string>8.0</string>\n\t        <key>UILaunchImageName</key>\n\t        <string>Default-568h</string>\n\t        <key>UILaunchImageOrientation</key>\n\t        <string>Portrait</string>\n\t        <key>UILaunchImageSize</key>\n\t        <string>{320, 568}</string>\n\t    </dict>\n\t    <dict>\n\t        <key>UILaunchImageMinimumOSVersion</key>\n\t        <string>8.0</string>\n\t        <key>UILaunchImageName</key>\n\t        <string>Default-568h</string>\n\t        <key>UILaunchImageOrientation</key>\n\t        <string>Landscape</string>\n\t        <key>UILaunchImageSize</key>\n\t        <string>{320, 568}</string>\n\t    </dict>\n\t    <dict>\n\t        <key>UILaunchImageMinimumOSVersion</key>\n\t        <string>8.0</string>\n\t        <key>UILaunchImageName</key>\n\t        <string>Default-667h</string>\n\t        <key>UILaunchImageOrientation</key>\n\t        <string>Portrait</string>\n\t        <key>UILaunchImageSize</key>\n\t        <string>{375, 667}</string>\n\t    </dict>\n\t    <dict>\n\t        <key>UILaunchImageMinimumOSVersion</key>\n\t        <string>8.0</string>\n\t        <key>UILaunchImageName</key>\n\t        <string>Default-667h</string>\n\t        <key>UILaunchImageOrientation</key>\n\t        <string>Landscape</string>\n\t        <key>UILaunchImageSize</key>\n\t        <string>{375, 667}</string>\n\t    </dict>\n\t    <dict>\n\t        <key>UILaunchImageMinimumOSVersion</key>\n\t        <string>8.0</string>\n\t        <key>UILaunchImageName</key>\n\t        <string>Default-736h</string>\n\t        <key>UILaunchImageOrientation</key>\n\t        <string>Portrait</string>\n\t        <key>UILaunchImageSize</key>\n\t        <string>{414, 736}</string>\n\t    </dict>\n\t    <dict>\n\t        <key>UILaunchImageMinimumOSVersion</key>\n\t        <string>8.0</string>\n\t        <key>UILaunchImageName</key>\n\t        <string>Default-736h</string>\n\t        <key>UILaunchImageOrientation</key>\n\t        <string>Landscape</string>\n\t        <key>UILaunchImageSize</key>\n\t        <string>{414, 736}</string>\n\t    </dict>\n\t</array>\n\t<key>LSRequiresIPhoneOS</key>\n\t<true/>\n\t<key>UIPrerenderedIcon</key>\n\t<true/>\n\t<key>UIRequiredDeviceCapabilities</key>\n\t<dict>\n\t\t<key>accelerometer</key>\n\t\t<true/>\n\t\t<key>opengles-1</key>\n\t\t<true/>\n\t</dict>\n\t<key>UIStatusBarHidden</key>\n\t<true/>\n\t<key>UISupportedInterfaceOrientations</key>\n\t<array>\n\t\t<string>UIInterfaceOrientationLandscapeRight</string>\n<string>UIInterfaceOrientationLandscapeLeft</string>\n\t</array>\n</dict>\n</plist>\n"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/proj.ios_mac/ios/Prefix.pch",
    "content": "//\n// Prefix header for all source files of the 'mir9' target in the 'mir9' project\n//\n\n#ifdef __OBJC__\n\t#import <Foundation/Foundation.h>\n\t#import <UIKit/UIKit.h>\n#endif\n"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/proj.ios_mac/ios/RootViewController.h",
    "content": "/****************************************************************************\n Copyright (c) 2010-2011 cocos2d-x.org\n Copyright (c) 2010      Ricardo Quesada\n \n http://www.cocos2d-x.org\n \n Permission is hereby granted, free of charge, to any person obtaining a copy\n of this software and associated documentation files (the \"Software\"), to deal\n in the Software without restriction, including without limitation the rights\n to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n copies of the Software, and to permit persons to whom the Software is\n furnished to do so, subject to the following conditions:\n \n The above copyright notice and this permission notice shall be included in\n all copies or substantial portions of the Software.\n \n THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n THE SOFTWARE.\n ****************************************************************************/\n\n#import <UIKit/UIKit.h>\n\n\n@interface RootViewController : UIViewController {\n\n}\n- (BOOL)prefersStatusBarHidden;\n@end\n"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/proj.ios_mac/ios/RootViewController.mm",
    "content": "/****************************************************************************\n Copyright (c) 2010-2011 cocos2d-x.org\n Copyright (c) 2010      Ricardo Quesada\n \n http://www.cocos2d-x.org\n \n Permission is hereby granted, free of charge, to any person obtaining a copy\n of this software and associated documentation files (the \"Software\"), to deal\n in the Software without restriction, including without limitation the rights\n to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n copies of the Software, and to permit persons to whom the Software is\n furnished to do so, subject to the following conditions:\n \n The above copyright notice and this permission notice shall be included in\n all copies or substantial portions of the Software.\n \n THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n THE SOFTWARE.\n ****************************************************************************/\n\n#import \"RootViewController.h\"\n#import \"cocos2d.h\"\n#import \"platform/ios/CCEAGLView-ios.h\"\n#include \"ConfigParser.h\"\n\n@implementation RootViewController\n\n/*\n // The designated initializer.  Override if you create the controller programmatically and want to perform customization that is not appropriate for viewDidLoad.\n- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil {\n    if ((self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil])) {\n        // Custom initialization\n    }\n    return self;\n}\n*/\n\n/*\n// Implement loadView to create a view hierarchy programmatically, without using a nib.\n- (void)loadView {\n}\n*/\n\n/*\n// Implement viewDidLoad to do additional setup after loading the view, typically from a nib.\n- (void)viewDidLoad {\n    [super viewDidLoad];\n}\n \n*/\n// Override to allow orientations other than the default portrait orientation.\n// This method is deprecated on ios6\n- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation {\n    \n    if (ConfigParser::getInstance()->isLanscape()) {\n        return UIInterfaceOrientationIsLandscape( interfaceOrientation );\n    }else{\n        return UIInterfaceOrientationIsPortrait( interfaceOrientation );\n    }\n    \n}\n\n// For ios6, use supportedInterfaceOrientations & shouldAutorotate instead\n- (NSUInteger) supportedInterfaceOrientations{\n#ifdef __IPHONE_6_0\n    if (ConfigParser::getInstance()->isLanscape()) {\n        return UIInterfaceOrientationMaskLandscape;\n    }else{\n        return UIInterfaceOrientationMaskPortraitUpsideDown;\n    }\n#endif\n}\n\n- (BOOL) shouldAutorotate {\n    if (ConfigParser::getInstance()->isLanscape()) {\n        return YES;\n    }else{\n        return NO;\n    }\n}\n\n- (void)didRotateFromInterfaceOrientation:(UIInterfaceOrientation)fromInterfaceOrientation {\n    [super didRotateFromInterfaceOrientation:fromInterfaceOrientation];\n\n    cocos2d::GLView *glview = cocos2d::Director::getInstance()->getOpenGLView();\n\n    if (glview)\n    {\n        CCEAGLView *eaglview = (CCEAGLView*) glview->getEAGLView();\n\n        if (eaglview)\n        {\n            CGSize s = CGSizeMake([eaglview getWidth], [eaglview getHeight]);\n            cocos2d::Application::getInstance()->applicationScreenSizeChanged((int) s.width, (int) s.height);\n        }\n    }\n}\n\n//fix not hide status on ios7\n- (BOOL)prefersStatusBarHidden\n{\n    return YES;\n}\n\n- (void)didReceiveMemoryWarning {\n    // Releases the view if it doesn't have a superview.\n    [super didReceiveMemoryWarning];\n    \n    // Release any cached data, images, etc that aren't in use.\n}\n\n- (void)viewDidUnload {\n    [super viewDidUnload];\n    // Release any retained subviews of the main view.\n    // e.g. self.myOutlet = nil;\n}\n\n\n- (void)dealloc {\n    [super dealloc];\n}\n\n\n@end\n"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/proj.ios_mac/ios/build-cfg.json",
    "content": "{\n    \"remove_res\" : [\n        \"src\",\n        \"res\"\n    ]\n}\n"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/proj.ios_mac/ios/main.m",
    "content": "//\n//  main.m\n//  HelloLua\n//\n//  Copyright __MyCompanyName__ 2011. All rights reserved.\n//\n\n#import <UIKit/UIKit.h>\n\nint main(int argc, char *argv[]) {\n    \n    NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init];\n    int retVal = UIApplicationMain(argc, argv, nil, @\"AppController\");\n    [pool release];\n    return retVal;\n}\n"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/proj.ios_mac/mac/ConsoleWindow.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"no\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"4510\" systemVersion=\"12F37\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" useAutolayout=\"YES\">\n    <dependencies>\n        <deployment defaultVersion=\"1070\" identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"4510\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"ConsoleWindowController\">\n            <connections>\n                <outlet property=\"checkScroll\" destination=\"50\" id=\"70\"/>\n                <outlet property=\"textView\" destination=\"6\" id=\"20\"/>\n                <outlet property=\"topCheckBox\" destination=\"60\" id=\"69\"/>\n                <outlet property=\"window\" destination=\"1\" id=\"3\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\"/>\n        <window title=\"Console\" allowsToolTipsWhenApplicationIsInactive=\"NO\" autorecalculatesKeyViewLoop=\"NO\" oneShot=\"NO\" wantsToBeColor=\"NO\" animationBehavior=\"default\" id=\"1\">\n            <windowStyleMask key=\"styleMask\" titled=\"YES\" closable=\"YES\" miniaturizable=\"YES\" resizable=\"YES\"/>\n            <windowPositionMask key=\"initialPositionMask\" leftStrut=\"YES\" rightStrut=\"YES\" topStrut=\"YES\" bottomStrut=\"YES\"/>\n            <rect key=\"contentRect\" x=\"40\" y=\"40\" width=\"854\" height=\"400\"/>\n            <rect key=\"screenRect\" x=\"0.0\" y=\"0.0\" width=\"1680\" height=\"1028\"/>\n            <view key=\"contentView\" id=\"2\">\n                <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"854\" height=\"400\"/>\n                <autoresizingMask key=\"autoresizingMask\"/>\n                <subviews>\n                    <scrollView horizontalLineScroll=\"10\" horizontalPageScroll=\"10\" verticalLineScroll=\"10\" verticalPageScroll=\"10\" hasHorizontalScroller=\"NO\" usesPredominantAxisScrolling=\"NO\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"5\">\n                        <rect key=\"frame\" x=\"-1\" y=\"-1\" width=\"854\" height=\"371\"/>\n                        <autoresizingMask key=\"autoresizingMask\"/>\n                        <clipView key=\"contentView\" id=\"ddW-qo-Qe9\">\n                            <rect key=\"frame\" x=\"1\" y=\"1\" width=\"837\" height=\"369\"/>\n                            <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                            <subviews>\n                                <textView editable=\"NO\" importsGraphics=\"NO\" richText=\"NO\" findStyle=\"panel\" verticallyResizable=\"YES\" allowsNonContiguousLayout=\"YES\" id=\"6\">\n                                    <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"837\" height=\"369\"/>\n                                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                                    <color key=\"backgroundColor\" white=\"1\" alpha=\"1\" colorSpace=\"calibratedWhite\"/>\n                                    <size key=\"minSize\" width=\"837\" height=\"369\"/>\n                                    <size key=\"maxSize\" width=\"888\" height=\"10000000\"/>\n                                    <color key=\"insertionPointColor\" white=\"0.0\" alpha=\"1\" colorSpace=\"calibratedWhite\"/>\n                                    <size key=\"minSize\" width=\"837\" height=\"369\"/>\n                                    <size key=\"maxSize\" width=\"888\" height=\"10000000\"/>\n                                </textView>\n                            </subviews>\n                            <color key=\"backgroundColor\" white=\"1\" alpha=\"1\" colorSpace=\"calibratedWhite\"/>\n                        </clipView>\n                        <scroller key=\"horizontalScroller\" hidden=\"YES\" verticalHuggingPriority=\"750\" doubleValue=\"1\" id=\"7\">\n                            <rect key=\"frame\" x=\"-100\" y=\"-100\" width=\"87\" height=\"18\"/>\n                            <autoresizingMask key=\"autoresizingMask\"/>\n                        </scroller>\n                        <scroller key=\"verticalScroller\" verticalHuggingPriority=\"750\" doubleValue=\"1\" id=\"8\">\n                            <rect key=\"frame\" x=\"838\" y=\"1\" width=\"15\" height=\"369\"/>\n                            <autoresizingMask key=\"autoresizingMask\"/>\n                        </scroller>\n                    </scrollView>\n                    <button verticalHuggingPriority=\"750\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"46\">\n                        <rect key=\"frame\" x=\"-1\" y=\"367\" width=\"73\" height=\"32\"/>\n                        <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                        <buttonCell key=\"cell\" type=\"push\" title=\"Clear\" bezelStyle=\"rounded\" alignment=\"center\" borderStyle=\"border\" imageScaling=\"proportionallyDown\" inset=\"2\" id=\"47\">\n                            <behavior key=\"behavior\" pushIn=\"YES\" lightByBackground=\"YES\" lightByGray=\"YES\"/>\n                            <font key=\"font\" metaFont=\"system\"/>\n                        </buttonCell>\n                        <connections>\n                            <action selector=\"onClear:\" target=\"-2\" id=\"57\"/>\n                        </connections>\n                    </button>\n                    <button translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"50\">\n                        <rect key=\"frame\" x=\"731\" y=\"376\" width=\"113\" height=\"18\"/>\n                        <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                        <constraints>\n                            <constraint firstAttribute=\"width\" constant=\"109\" id=\"56\"/>\n                        </constraints>\n                        <buttonCell key=\"cell\" type=\"check\" title=\"scroll bottom\" bezelStyle=\"regularSquare\" imagePosition=\"left\" state=\"on\" inset=\"2\" id=\"51\">\n                            <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                            <font key=\"font\" metaFont=\"system\"/>\n                        </buttonCell>\n                        <connections>\n                            <action selector=\"onScrollChange:\" target=\"-2\" id=\"59\"/>\n                        </connections>\n                    </button>\n                    <button translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"60\">\n                        <rect key=\"frame\" x=\"632\" y=\"375\" width=\"95\" height=\"18\"/>\n                        <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                        <constraints>\n                            <constraint firstAttribute=\"width\" constant=\"91\" id=\"64\"/>\n                        </constraints>\n                        <buttonCell key=\"cell\" type=\"check\" title=\"always top\" bezelStyle=\"regularSquare\" imagePosition=\"left\" inset=\"2\" id=\"61\">\n                            <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                            <font key=\"font\" metaFont=\"system\"/>\n                        </buttonCell>\n                        <connections>\n                            <action selector=\"onTopChange:\" target=\"-2\" id=\"67\"/>\n                        </connections>\n                    </button>\n                </subviews>\n                <constraints>\n                    <constraint firstAttribute=\"trailing\" secondItem=\"5\" secondAttribute=\"trailing\" constant=\"1\" id=\"41\"/>\n                    <constraint firstAttribute=\"bottom\" secondItem=\"5\" secondAttribute=\"bottom\" constant=\"-1\" id=\"42\"/>\n                    <constraint firstItem=\"5\" firstAttribute=\"top\" secondItem=\"2\" secondAttribute=\"top\" constant=\"30\" id=\"43\"/>\n                    <constraint firstItem=\"5\" firstAttribute=\"leading\" secondItem=\"2\" secondAttribute=\"leading\" constant=\"-1\" id=\"44\"/>\n                    <constraint firstItem=\"46\" firstAttribute=\"leading\" secondItem=\"2\" secondAttribute=\"leading\" constant=\"5\" id=\"49\"/>\n                    <constraint firstItem=\"50\" firstAttribute=\"baseline\" secondItem=\"46\" secondAttribute=\"baseline\" id=\"52\"/>\n                    <constraint firstAttribute=\"trailing\" secondItem=\"50\" secondAttribute=\"trailing\" constant=\"12\" id=\"53\"/>\n                    <constraint firstItem=\"5\" firstAttribute=\"top\" secondItem=\"50\" secondAttribute=\"bottom\" constant=\"8\" symbolic=\"YES\" id=\"54\"/>\n                    <constraint firstItem=\"60\" firstAttribute=\"centerY\" secondItem=\"46\" secondAttribute=\"centerY\" id=\"63\"/>\n                    <constraint firstItem=\"50\" firstAttribute=\"leading\" secondItem=\"60\" secondAttribute=\"trailing\" constant=\"8\" symbolic=\"YES\" id=\"66\"/>\n                </constraints>\n            </view>\n            <connections>\n                <outlet property=\"delegate\" destination=\"-2\" id=\"4\"/>\n            </connections>\n        </window>\n    </objects>\n</document>"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/proj.ios_mac/mac/ConsoleWindowController.h",
    "content": "\n#import <Cocoa/Cocoa.h>\n\n@interface ConsoleWindowController : NSWindowController\n{\n    NSTextView *textView;\n    IBOutlet NSButton *checkScroll;\n    IBOutlet NSButton *topCheckBox;\n    NSMutableArray *linesCount;\n    NSUInteger traceCount;\n}\n\n@property (assign) IBOutlet NSTextView *textView;\n\n- (void) trace:(NSString*)msg;\n- (IBAction)onClear:(id)sender;\n- (IBAction)onScrollChange:(id)sender;\n- (IBAction)onTopChange:(id)sender;\n\n@end\n\n\n\n"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/proj.ios_mac/mac/ConsoleWindowController.m",
    "content": "\n#import \"ConsoleWindowController.h\"\n\n@interface ConsoleWindowController ()\n\n@end\n\n#define SKIP_LINES_COUNT    3\n#define MAX_LINE_LEN        4096\n#define MAX_LINES_COUNT     200\n\n@implementation ConsoleWindowController\n@synthesize textView;\n\n- (id)initWithWindow:(NSWindow *)window\n{\n    self = [super initWithWindow:window];\n    if (self)\n    {\n        // Initialization code here.\n        linesCount = [[NSMutableArray arrayWithCapacity:MAX_LINES_COUNT + 1] retain];\n    }\n\n    return self;\n}\n\n- (void)dealloc\n{\n    [linesCount release];\n    [super dealloc];\n}\n\n- (void)windowDidLoad\n{\n    [super windowDidLoad];\n    // Implement this method to handle any initialization after your window controller's window has been loaded from its nib file.\n}\n\n- (void) trace:(NSString*)msg\n{\n    if (traceCount >= SKIP_LINES_COUNT && [msg length] > MAX_LINE_LEN)\n    {\n        msg = [NSString stringWithFormat:@\"%@ ...\", [msg substringToIndex:MAX_LINE_LEN - 4]];\n    }\n    traceCount++;\n    NSFont *font = [NSFont fontWithName:@\"Monaco\" size:12.0];\n    NSDictionary *attrsDictionary = [NSDictionary dictionaryWithObject:font forKey:NSFontAttributeName];\n    NSAttributedString *string = [[NSAttributedString alloc] initWithString:msg attributes:attrsDictionary];\n    NSNumber *len = [NSNumber numberWithUnsignedInteger:[string length]];\n    [linesCount addObject:len];\n\n\tNSTextStorage *storage = [textView textStorage];\n\t[storage beginEditing];\n\t[storage appendAttributedString:string];\n\n    if ([linesCount count] >= MAX_LINES_COUNT)\n    {\n        len = [linesCount objectAtIndex:0];\n        [storage deleteCharactersInRange:NSMakeRange(0, [len unsignedIntegerValue])];\n        [linesCount removeObjectAtIndex:0];\n    }\n\n\t[storage endEditing];\n    [self changeScroll];\n}\n\n- (void) changeScroll\n{\n    BOOL scroll = [checkScroll state] == NSOnState;\n    if(scroll)\n    {\n        [self.textView scrollRangeToVisible: NSMakeRange(self.textView.string.length, 0)];\n    }\n}\n\n- (IBAction)onClear:(id)sender\n{\n    NSTextStorage *storage = [textView textStorage];\n    [storage setAttributedString:[[[NSAttributedString alloc] initWithString:@\"\"] autorelease]];\n}\n\n- (IBAction)onScrollChange:(id)sender\n{\n    [self changeScroll];\n}\n\n- (IBAction)onTopChange:(id)sender\n{\n    BOOL isTop = [topCheckBox state] == NSOnState;\n    if(isTop)\n    {\n        [self.window setLevel:NSFloatingWindowLevel];\n    }\n    else\n    {\n        [self.window setLevel:NSNormalWindowLevel];\n    }\n}\n\n@end\n"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/proj.ios_mac/mac/Info.plist",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE plist PUBLIC \"-//Apple//DTD PLIST 1.0//EN\" \"http://www.apple.com/DTDs/PropertyList-1.0.dtd\">\n<plist version=\"1.0\">\n<dict>\n\t<key>CFBundleDevelopmentRegion</key>\n\t<string>en</string>\n\t<key>CFBundleExecutable</key>\n\t<string>${EXECUTABLE_NAME}</string>\n\t<key>CFBundleIconFile</key>\n\t<string>Icon</string>\n\t<key>CFBundleIdentifier</key>\n\t<string>com.zym.mir9</string>\n\t<key>CFBundleInfoDictionaryVersion</key>\n\t<string>6.0</string>\n\t<key>CFBundleName</key>\n\t<string>${PRODUCT_NAME}</string>\n\t<key>CFBundlePackageType</key>\n\t<string>APPL</string>\n\t<key>CFBundleShortVersionString</key>\n\t<string>1.0</string>\n\t<key>CFBundleSignature</key>\n\t<string>????</string>\n\t<key>CFBundleVersion</key>\n\t<string>1</string>\n\t<key>LSApplicationCategoryType</key>\n\t<string>public.app-category.games</string>\n\t<key>LSMinimumSystemVersion</key>\n\t<string>${MACOSX_DEPLOYMENT_TARGET}</string>\n\t<key>NSHumanReadableCopyright</key>\n\t<string>Copyright © 2013. All rights reserved.</string>\n\t<key>NSMainNibFile</key>\n\t<string>MainMenu</string>\n\t<key>NSPrincipalClass</key>\n\t<string>NSApplication</string>\n</dict>\n</plist>\n"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/proj.ios_mac/mac/Prefix.pch",
    "content": "//\n// Prefix header for all source files of the 'Paralaxer' target in the 'Paralaxer' project\n//\n\n#ifdef __OBJC__\n\t#import <Cocoa/Cocoa.h>\n#endif\n"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/proj.ios_mac/mac/SimulatorApp.h",
    "content": "/****************************************************************************\n Copyright (c) 2010 cocos2d-x.org\n \n http://www.cocos2d-x.org\n \n Permission is hereby granted, free of charge, to any person obtaining a copy\n of this software and associated documentation files (the \"Software\"), to deal\n in the Software without restriction, including without limitation the rights\n to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n copies of the Software, and to permit persons to whom the Software is\n furnished to do so, subject to the following conditions:\n \n The above copyright notice and this permission notice shall be included in\n all copies or substantial portions of the Software.\n \n THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n THE SOFTWARE.\n ****************************************************************************/\n\n\n#include <string>\n#import \"ConsoleWindowController.h\"\n#include \"ProjectConfig/ProjectConfig.h\"\n#include \"AppDelegate.h\"\n\nvoid createSimulator(const char* viewName, float width, float height,bool isLandscape = true,float frameZoomFactor = 1.0f);\n\n@interface AppController : NSObject <NSApplicationDelegate, NSWindowDelegate>\n{\n    NSWindow *_window;\n    NSMenu *_menu;\n    ProjectConfig _project;\n    \n    //log file\n    ConsoleWindowController *_consoleController;\n    NSFileHandle *_fileHandle;\n    \n    //console pipe\n    NSPipe *_pipe;\n    NSFileHandle *_pipeReadHandle;\n}\n\n@property (nonatomic, assign) IBOutlet NSMenu* menu;\n\n\n- (IBAction) onSetTop:(id)sender;\n- (IBAction) onFileClose:(id)sender;\n- (IBAction) onScreenPortait:(id)sender;\n- (IBAction) onScreenLandscape:(id)sender;\n- (IBAction) onScreenZoomOut:(id)sender;\n- (IBAction) onRelaunch:(id)sender;\n\n\n@end\n"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/proj.ios_mac/mac/SimulatorApp.mm",
    "content": "/****************************************************************************\n Copyright (c) 2010 cocos2d-x.org\n\n http://www.cocos2d-x.org\n\n Permission is hereby granted, free of charge, to any person obtaining a copy\n of this software and associated documentation files (the \"Software\"), to deal\n in the Software without restriction, including without limitation the rights\n to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n copies of the Software, and to permit persons to whom the Software is\n furnished to do so, subject to the following conditions:\n\n The above copyright notice and this permission notice shall be included in\n all copies or substantial portions of the Software.\n\n THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n THE SOFTWARE.\n ****************************************************************************/\n\n#include <sys/stat.h>\n#include <stdio.h>\n#include <fcntl.h>\n#include <string>\n#include <vector>\n\n#import \"SimulatorApp.h\"\n#include \"AppDelegate.h\"\n#include \"glfw3.h\"\n#include \"glfw3native.h\"\n#include \"Runtime.h\"\n#include \"ConfigParser.h\"\n\n#include \"cocos2d.h\"\n\nusing namespace cocos2d;\n\nbool g_landscape = false;\nbool g_windTop = false;\ncocos2d::Size g_screenSize;\nGLViewImpl* g_eglView = nullptr;\n\nstatic AppController* g_nsAppDelegate=nullptr;\n\nusing namespace std;\nusing namespace cocos2d;\n\n@implementation AppController\n\n@synthesize menu;\n\nstd::string getCurAppPath(void)\n{\n    return [[[NSBundle mainBundle] bundlePath] UTF8String];\n}\n\nstd::string getCurAppName(void)\n{\n    string appName = [[[NSProcessInfo processInfo] processName] UTF8String];\n    int found = appName.find(\" \");\n    if (found!=std::string::npos)\n        appName = appName.substr(0,found);\n    \n    return appName;\n}\n\n-(void) dealloc\n{\n    Director::getInstance()->end();\n    [super dealloc];\n}\n\n#pragma mark -\n#pragma delegates\n\n- (void) applicationDidFinishLaunching:(NSNotification *)aNotification\n{\n    [self updateProjectFromCommandLineArgs:&_project];\n    [self startup];\n}\n\n\n#pragma mark -\n#pragma mark functions\n\n- (void) createSimulator:(NSString*)viewName viewWidth:(float)width viewHeight:(float)height factor:(float)frameZoomFactor\n{\n    if (g_eglView)\n    {\n        return;\n    }\n    \n    if(!g_landscape)\n    {\n        float tmpvalue =width;\n        width = height;\n        height = tmpvalue;\n    }\n    g_windTop = ConfigParser::getInstance()->isWindowTop();\n    g_eglView = GLViewImpl::createWithRect([viewName cStringUsingEncoding:NSUTF8StringEncoding],cocos2d::Rect(0.0f,0.0f,width,height),frameZoomFactor);\n    auto director = Director::getInstance();\n    director->setOpenGLView(g_eglView);\n\n    _window = glfwGetCocoaWindow(g_eglView->getWindow());\n    [[NSApplication sharedApplication] setDelegate: self];\n    \n    [self createViewMenu];\n    [self updateMenu];\n    [_window center];\n    \n    [_window becomeFirstResponder];\n    [_window makeKeyAndOrderFront:self];\n}\n\nvoid createSimulator(const char* viewName, float width, float height,bool isLandscape,float frameZoomFactor)\n{\n    if(g_nsAppDelegate)\n    {\n        g_landscape = isLandscape;\n        if(height > width)\n        {\n            float tmpvalue =width;\n            width = height;\n            height = tmpvalue;\n        }\n        g_screenSize.width = width;\n        g_screenSize.height = height;\n        \n        [g_nsAppDelegate createSimulator:[NSString stringWithUTF8String:viewName] viewWidth:width viewHeight:height factor:frameZoomFactor];\n    }\n    \n}\n\n- (void) updateProjectFromCommandLineArgs:(ProjectConfig*)config\n{\n    config->setShowConsole(true);\n    config->setDebuggerType(kCCLuaDebuggerCodeIDE);\n    NSArray *nsargs = [[NSProcessInfo processInfo] arguments];\n    long n = [nsargs count];\n    if (n >= 2)\n    {\n        vector<string> args;\n        for (int i = 0; i < [nsargs count]; ++i)\n        {\n            string arg = [[nsargs objectAtIndex:i] cStringUsingEncoding:NSUTF8StringEncoding];\n            if (arg.length()) args.push_back(arg);\n        }\n        config->parseCommandLine(args);\n    }\n    \n//    if (config->getProjectDir().length() == 0)\n//    {\n//        config->resetToWelcome();\n//    }\n}\n\n- (void) startup\n{\n    if (_project.isShowConsole())\n    {\n        [self openConsoleWindow];\n    }\n    \n//    NSArray *args = [[NSProcessInfo processInfo] arguments];\n//    \n//    if (args!=nullptr && [args count]>=2) {\n//        extern std::string g_resourcePath;\n//        g_resourcePath = [[args objectAtIndex:1]UTF8String];\n//        if (g_resourcePath.at(0) != '/') {\n//            g_resourcePath=\"\";\n//        }\n//    }\n    g_nsAppDelegate =self;\n    AppDelegate app;\n    if (_project.getDebuggerType()==kCCLuaDebuggerNone)\n    {\n        app.setLaunchMode(0);\n    }\n    Application::getInstance()->run();\n    // After run, application needs to be terminated immediately.\n    [[NSApplication sharedApplication] terminate: self];\n}\n\n- (void) openConsoleWindow\n{\n    if (!_consoleController)\n    {\n        _consoleController = [[ConsoleWindowController alloc] initWithWindowNibName:@\"ConsoleWindow\"];\n    }\n    [_consoleController.window orderFrontRegardless];\n    \n    //set console pipe\n    _pipe = [NSPipe pipe] ;\n    _pipeReadHandle = [_pipe fileHandleForReading] ;\n\n    int outfd = [[_pipe fileHandleForWriting] fileDescriptor];\n    if (dup2(outfd, fileno(stderr)) != fileno(stderr) || dup2(outfd, fileno(stdout)) != fileno(stdout))\n    {\n        perror(\"Unable to redirect output\");\n//                [self showAlert:@\"Unable to redirect output to console!\" withTitle:@\"player error\"];\n    }\n    else\n    {\n        [[NSNotificationCenter defaultCenter] addObserver: self\n                                                 selector: @selector(handleNotification:)\n                                                     name: NSFileHandleReadCompletionNotification\n                                                   object: _pipeReadHandle] ;\n        [_pipeReadHandle readInBackgroundAndNotify] ;\n    }\n}\n\n- (void)handleNotification:(NSNotification *)note\n{\n    //NSLog(@\"Received notification: %@\", note);\n    [_pipeReadHandle readInBackgroundAndNotify] ;\n    NSData *data = [[note userInfo] objectForKey:NSFileHandleNotificationDataItem];\n    NSString *str = [[[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding] autorelease];\n    \n    //show log to console\n    [_consoleController trace:str];\n    if(_fileHandle != nil)\n    {\n        [_fileHandle writeData:[str dataUsingEncoding:NSUTF8StringEncoding]];\n    }\n    \n}\n\n- (void) createViewMenu\n{\n    \n    NSMenu *submenu = [[[_window menu] itemWithTitle:@\"View\"] submenu];\n\n    for (int i = ConfigParser::getInstance()->getScreenSizeCount() - 1; i >= 0; --i)\n    {\n        SimulatorScreenSize size = ConfigParser::getInstance()->getScreenSize(i);\n        NSMenuItem *item = [[[NSMenuItem alloc] initWithTitle:[NSString stringWithCString:size.title.c_str() encoding:NSUTF8StringEncoding]\n                                                       action:@selector(onViewChangeFrameSize:)\n                                                keyEquivalent:@\"\"] autorelease];\n        [item setTag:i];\n        [submenu insertItem:item atIndex:0];\n    }\n}\n\n\n- (void) updateMenu\n{\n\n    NSMenu *menuScreen = [[[_window menu] itemWithTitle:@\"View\"] submenu];\n    NSMenuItem *itemPortait = [menuScreen itemWithTitle:@\"Portait\"];\n    NSMenuItem *itemLandscape = [menuScreen itemWithTitle:@\"Landscape\"];\n    if (g_landscape)\n    {\n        [itemPortait setState:NSOffState];\n        [itemLandscape setState:NSOnState];\n    }\n    else\n    {\n        [itemPortait setState:NSOnState];\n        [itemLandscape setState:NSOffState];\n    }\n    \n    NSMenu *menuControl = [[[_window menu] itemWithTitle:@\"Control\"] submenu];\n    NSMenuItem *itemTop = [menuControl itemWithTitle:@\"Keep Window Top\"];\n    if (g_windTop) {\n        [_window setLevel:NSFloatingWindowLevel];\n        [itemTop setState:NSOnState];\n    }\n    else\n    {\n        [_window setLevel:NSNormalWindowLevel];\n        [itemTop setState:NSOffState];\n    }\n\n    int scale = g_eglView->getFrameZoomFactor()*100;\n\n    NSMenuItem *itemZoom100 = [menuScreen itemWithTitle:@\"Actual (100%)\"];\n    NSMenuItem *itemZoom75 = [menuScreen itemWithTitle:@\"Zoom Out (75%)\"];\n    NSMenuItem *itemZoom50 = [menuScreen itemWithTitle:@\"Zoom Out (50%)\"];\n    NSMenuItem *itemZoom25 = [menuScreen itemWithTitle:@\"Zoom Out (25%)\"];\n    [itemZoom100 setState:NSOffState];\n    [itemZoom75 setState:NSOffState];\n    [itemZoom50 setState:NSOffState];\n    [itemZoom25 setState:NSOffState];\n    if (scale == 100)\n    {\n        [itemZoom100 setState:NSOnState];\n    }\n    else if (scale == 75)\n    {\n        [itemZoom75 setState:NSOnState];\n    }\n    else if (scale == 50)\n    {\n        [itemZoom50 setState:NSOnState];\n    }\n    else if (scale == 25)\n    {\n        [itemZoom25 setState:NSOnState];\n    }\n\n    int width = g_screenSize.width;\n    int height = g_screenSize.height;\n    if (height > width)\n    {\n        int w = width;\n        width = height;\n        height = w;\n    }\n    \n    int count = ConfigParser::getInstance()->getScreenSizeCount();\n    for (int i = 0; i < count; ++i)\n    {\n        bool bSel = false;\n        SimulatorScreenSize size = ConfigParser::getInstance()->getScreenSize(i);\n        if (size.width == width && size.height == height)\n        {\n            bSel = true;\n        }\n        NSMenuItem *itemView = [menuScreen itemWithTitle:[NSString stringWithUTF8String:size.title.c_str()]];\n        [itemView setState:(bSel? NSOnState : NSOffState)];\n    }\n    \n\n}\n\n\n- (void) updateView\n{\n    auto policy = g_eglView->getResolutionPolicy();\n    auto designSize = g_eglView->getDesignResolutionSize();\n    \n    if (g_landscape)\n    {\n        g_eglView->setFrameSize(g_screenSize.width, g_screenSize.height);\n    }\n    else\n    {\n        g_eglView->setFrameSize(g_screenSize.height, g_screenSize.width);\n    }\n    \n    g_eglView->setDesignResolutionSize(designSize.width, designSize.height, policy);\n    \n    [self updateMenu];\n}\n\n- (BOOL) applicationShouldTerminateAfterLastWindowClosed:(NSApplication*)theApplication\n{\n    return YES;\n}\n\n- (BOOL) applicationShouldHandleReopen:(NSApplication *)sender hasVisibleWindows:(BOOL)flag\n{\n    return NO;\n}\n\n- (void) windowWillClose:(NSNotification *)notification\n{\n    [[NSRunningApplication currentApplication] terminate];\n}\n\n- (IBAction) onSetTop:(id)sender\n{\n    g_windTop = !g_windTop;\n    [self updateMenu];\n}\n\n\n- (IBAction) onFileClose:(id)sender\n{\n    [[NSApplication sharedApplication] terminate:self];\n}\n\n\n- (IBAction) onScreenPortait:(id)sender\n{\n    if ([sender state] == NSOnState) return;\n    g_landscape = false;\n    [self updateView];\n}\n\n- (IBAction) onScreenLandscape:(id)sender\n{\n    if ([sender state] == NSOnState) return;\n    g_landscape = true;\n    [self updateView];\n}\n\n- (void) launch:(NSArray*)args\n{\n    NSURL *url = [NSURL fileURLWithPath:[[NSBundle mainBundle] bundlePath]];\n    NSMutableDictionary *configuration = [NSMutableDictionary dictionaryWithObject:args forKey:NSWorkspaceLaunchConfigurationArguments];\n    NSError *error = [[[NSError alloc] init] autorelease];\n    [[NSWorkspace sharedWorkspace] launchApplicationAtURL:url\n                                                  options:NSWorkspaceLaunchNewInstance\n                                            configuration:configuration error:&error];\n}\n\n- (void) relaunch:(NSArray*)args\n{\n    [self launch:args];\n    [[NSApplication sharedApplication] terminate:self];\n}\n\n- (IBAction) onRelaunch:(id)sender\n{\n    NSArray* args=[[NSArray alloc] initWithObjects:@\" \", nil];\n    [self relaunch:args];\n}\n\n\n- (IBAction) onViewChangeFrameSize:(id)sender\n{\n    NSInteger index = [sender tag];\n    if (index >= 0 && index < ConfigParser::getInstance()->getScreenSizeCount())\n    {\n        SimulatorScreenSize size = ConfigParser::getInstance()->getScreenSize(index);\n        g_screenSize.width = size.width;\n        g_screenSize.height = size.height;\n        [self updateView];\n    }\n}\n\n\n- (IBAction) onScreenZoomOut:(id)sender\n{\n    if ([sender state] == NSOnState) return;\n    float scale = (float)[sender tag] / 100.0f;\n    g_eglView->setFrameZoomFactor(scale);\n    [self updateView];\n}\n\n\n@end\n"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/proj.ios_mac/mac/build-cfg.json",
    "content": "{\n    \"remove_res\" : [\n        \"src\",\n        \"res\",\n        \"config.json\"\n    ]\n}\n"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/proj.ios_mac/mac/en.lproj/MainMenu.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<archive type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"8.00\">\n\t<data>\n\t\t<int key=\"IBDocument.SystemTarget\">1060</int>\n\t\t<string key=\"IBDocument.SystemVersion\">13D65</string>\n\t\t<string key=\"IBDocument.InterfaceBuilderVersion\">5056</string>\n\t\t<string key=\"IBDocument.AppKitVersion\">1265.20</string>\n\t\t<string key=\"IBDocument.HIToolboxVersion\">698.00</string>\n\t\t<object class=\"NSMutableDictionary\" key=\"IBDocument.PluginVersions\">\n\t\t\t<string key=\"NS.key.0\">com.apple.InterfaceBuilder.CocoaPlugin</string>\n\t\t\t<string key=\"NS.object.0\">5056</string>\n\t\t</object>\n\t\t<array key=\"IBDocument.IntegratedClassDependencies\">\n\t\t\t<string>NSCustomObject</string>\n\t\t\t<string>NSMenu</string>\n\t\t\t<string>NSMenuItem</string>\n\t\t</array>\n\t\t<array key=\"IBDocument.PluginDependencies\">\n\t\t\t<string>com.apple.InterfaceBuilder.CocoaPlugin</string>\n\t\t</array>\n\t\t<object class=\"NSMutableDictionary\" key=\"IBDocument.Metadata\">\n\t\t\t<string key=\"NS.key.0\">PluginDependencyRecalculationVersion</string>\n\t\t\t<integer value=\"1\" key=\"NS.object.0\"/>\n\t\t</object>\n\t\t<array class=\"NSMutableArray\" key=\"IBDocument.RootObjects\" id=\"504381850\">\n\t\t\t<object class=\"NSCustomObject\" id=\"421466433\">\n\t\t\t\t<string key=\"NSClassName\">AppController</string>\n\t\t\t</object>\n\t\t\t<object class=\"NSCustomObject\" id=\"37508903\">\n\t\t\t\t<string key=\"NSClassName\">FirstResponder</string>\n\t\t\t</object>\n\t\t\t<object class=\"NSCustomObject\" id=\"622080690\">\n\t\t\t\t<string key=\"NSClassName\">NSApplication</string>\n\t\t\t</object>\n\t\t\t<object class=\"NSMenu\" id=\"126992598\">\n\t\t\t\t<string key=\"NSTitle\">AMainMenu</string>\n\t\t\t\t<array class=\"NSMutableArray\" key=\"NSMenuItems\">\n\t\t\t\t\t<object class=\"NSMenuItem\" id=\"511312888\">\n\t\t\t\t\t\t<reference key=\"NSMenu\" ref=\"126992598\"/>\n\t\t\t\t\t\t<string key=\"NSTitle\">Cocos-player</string>\n\t\t\t\t\t\t<string key=\"NSKeyEquiv\"/>\n\t\t\t\t\t\t<int key=\"NSKeyEquivModMask\">1048576</int>\n\t\t\t\t\t\t<int key=\"NSMnemonicLoc\">2147483647</int>\n\t\t\t\t\t\t<object class=\"NSCustomResource\" key=\"NSOnImage\" id=\"415077826\">\n\t\t\t\t\t\t\t<string key=\"NSClassName\">NSImage</string>\n\t\t\t\t\t\t\t<string key=\"NSResourceName\">NSMenuCheckmark</string>\n\t\t\t\t\t\t</object>\n\t\t\t\t\t\t<object class=\"NSCustomResource\" key=\"NSMixedImage\" id=\"266121528\">\n\t\t\t\t\t\t\t<string key=\"NSClassName\">NSImage</string>\n\t\t\t\t\t\t\t<string key=\"NSResourceName\">NSMenuMixedState</string>\n\t\t\t\t\t\t</object>\n\t\t\t\t\t\t<string key=\"NSAction\">submenuAction:</string>\n\t\t\t\t\t\t<reference key=\"NSTarget\" ref=\"120407948\"/>\n\t\t\t\t\t\t<object class=\"NSMenu\" key=\"NSSubmenu\" id=\"120407948\">\n\t\t\t\t\t\t\t<string key=\"NSTitle\">Cocos-player</string>\n\t\t\t\t\t\t\t<array class=\"NSMutableArray\" key=\"NSMenuItems\">\n\t\t\t\t\t\t\t\t<object class=\"NSMenuItem\" id=\"556105195\">\n\t\t\t\t\t\t\t\t\t<reference key=\"NSMenu\" ref=\"120407948\"/>\n\t\t\t\t\t\t\t\t\t<string key=\"NSTitle\">About Cocos-player</string>\n\t\t\t\t\t\t\t\t\t<string key=\"NSKeyEquiv\"/>\n\t\t\t\t\t\t\t\t\t<int key=\"NSMnemonicLoc\">2147483647</int>\n\t\t\t\t\t\t\t\t\t<reference key=\"NSOnImage\" ref=\"415077826\"/>\n\t\t\t\t\t\t\t\t\t<reference key=\"NSMixedImage\" ref=\"266121528\"/>\n\t\t\t\t\t\t\t\t</object>\n\t\t\t\t\t\t\t\t<object class=\"NSMenuItem\" id=\"985155827\">\n\t\t\t\t\t\t\t\t\t<reference key=\"NSMenu\" ref=\"120407948\"/>\n\t\t\t\t\t\t\t\t\t<bool key=\"NSIsDisabled\">YES</bool>\n\t\t\t\t\t\t\t\t\t<bool key=\"NSIsSeparator\">YES</bool>\n\t\t\t\t\t\t\t\t\t<string key=\"NSTitle\"/>\n\t\t\t\t\t\t\t\t\t<string key=\"NSKeyEquiv\"/>\n\t\t\t\t\t\t\t\t\t<int key=\"NSKeyEquivModMask\">1048576</int>\n\t\t\t\t\t\t\t\t\t<int key=\"NSMnemonicLoc\">2147483647</int>\n\t\t\t\t\t\t\t\t\t<reference key=\"NSOnImage\" ref=\"415077826\"/>\n\t\t\t\t\t\t\t\t\t<reference key=\"NSMixedImage\" ref=\"266121528\"/>\n\t\t\t\t\t\t\t\t</object>\n\t\t\t\t\t\t\t\t<object class=\"NSMenuItem\" id=\"904425014\">\n\t\t\t\t\t\t\t\t\t<reference key=\"NSMenu\" ref=\"120407948\"/>\n\t\t\t\t\t\t\t\t\t<string key=\"NSTitle\">Services</string>\n\t\t\t\t\t\t\t\t\t<string key=\"NSKeyEquiv\"/>\n\t\t\t\t\t\t\t\t\t<int key=\"NSKeyEquivModMask\">1048576</int>\n\t\t\t\t\t\t\t\t\t<int key=\"NSMnemonicLoc\">2147483647</int>\n\t\t\t\t\t\t\t\t\t<reference key=\"NSOnImage\" ref=\"415077826\"/>\n\t\t\t\t\t\t\t\t\t<reference key=\"NSMixedImage\" ref=\"266121528\"/>\n\t\t\t\t\t\t\t\t\t<string key=\"NSAction\">submenuAction:</string>\n\t\t\t\t\t\t\t\t\t<reference key=\"NSTarget\" ref=\"730822112\"/>\n\t\t\t\t\t\t\t\t\t<object class=\"NSMenu\" key=\"NSSubmenu\" id=\"730822112\">\n\t\t\t\t\t\t\t\t\t\t<string key=\"NSTitle\">Services</string>\n\t\t\t\t\t\t\t\t\t\t<array class=\"NSMutableArray\" key=\"NSMenuItems\"/>\n\t\t\t\t\t\t\t\t\t\t<string key=\"NSName\">_NSServicesMenu</string>\n\t\t\t\t\t\t\t\t\t</object>\n\t\t\t\t\t\t\t\t</object>\n\t\t\t\t\t\t\t\t<object class=\"NSMenuItem\" id=\"982249582\">\n\t\t\t\t\t\t\t\t\t<reference key=\"NSMenu\" ref=\"120407948\"/>\n\t\t\t\t\t\t\t\t\t<bool key=\"NSIsDisabled\">YES</bool>\n\t\t\t\t\t\t\t\t\t<bool key=\"NSIsSeparator\">YES</bool>\n\t\t\t\t\t\t\t\t\t<string key=\"NSTitle\"/>\n\t\t\t\t\t\t\t\t\t<string key=\"NSKeyEquiv\"/>\n\t\t\t\t\t\t\t\t\t<int key=\"NSKeyEquivModMask\">1048576</int>\n\t\t\t\t\t\t\t\t\t<int key=\"NSMnemonicLoc\">2147483647</int>\n\t\t\t\t\t\t\t\t\t<reference key=\"NSOnImage\" ref=\"415077826\"/>\n\t\t\t\t\t\t\t\t\t<reference key=\"NSMixedImage\" ref=\"266121528\"/>\n\t\t\t\t\t\t\t\t</object>\n\t\t\t\t\t\t\t\t<object class=\"NSMenuItem\" id=\"880160621\">\n\t\t\t\t\t\t\t\t\t<reference key=\"NSMenu\" ref=\"120407948\"/>\n\t\t\t\t\t\t\t\t\t<string key=\"NSTitle\">Hide Cocos-player</string>\n\t\t\t\t\t\t\t\t\t<string key=\"NSKeyEquiv\">h</string>\n\t\t\t\t\t\t\t\t\t<int key=\"NSKeyEquivModMask\">1048576</int>\n\t\t\t\t\t\t\t\t\t<int key=\"NSMnemonicLoc\">2147483647</int>\n\t\t\t\t\t\t\t\t\t<reference key=\"NSOnImage\" ref=\"415077826\"/>\n\t\t\t\t\t\t\t\t\t<reference key=\"NSMixedImage\" ref=\"266121528\"/>\n\t\t\t\t\t\t\t\t</object>\n\t\t\t\t\t\t\t\t<object class=\"NSMenuItem\" id=\"925141027\">\n\t\t\t\t\t\t\t\t\t<reference key=\"NSMenu\" ref=\"120407948\"/>\n\t\t\t\t\t\t\t\t\t<string key=\"NSTitle\">Hide Others</string>\n\t\t\t\t\t\t\t\t\t<string key=\"NSKeyEquiv\">h</string>\n\t\t\t\t\t\t\t\t\t<int key=\"NSKeyEquivModMask\">1572864</int>\n\t\t\t\t\t\t\t\t\t<int key=\"NSMnemonicLoc\">2147483647</int>\n\t\t\t\t\t\t\t\t\t<reference key=\"NSOnImage\" ref=\"415077826\"/>\n\t\t\t\t\t\t\t\t\t<reference key=\"NSMixedImage\" ref=\"266121528\"/>\n\t\t\t\t\t\t\t\t</object>\n\t\t\t\t\t\t\t\t<object class=\"NSMenuItem\" id=\"1041874958\">\n\t\t\t\t\t\t\t\t\t<reference key=\"NSMenu\" ref=\"120407948\"/>\n\t\t\t\t\t\t\t\t\t<string key=\"NSTitle\">Show All</string>\n\t\t\t\t\t\t\t\t\t<string key=\"NSKeyEquiv\"/>\n\t\t\t\t\t\t\t\t\t<int key=\"NSKeyEquivModMask\">1048576</int>\n\t\t\t\t\t\t\t\t\t<int key=\"NSMnemonicLoc\">2147483647</int>\n\t\t\t\t\t\t\t\t\t<reference key=\"NSOnImage\" ref=\"415077826\"/>\n\t\t\t\t\t\t\t\t\t<reference key=\"NSMixedImage\" ref=\"266121528\"/>\n\t\t\t\t\t\t\t\t</object>\n\t\t\t\t\t\t\t\t<object class=\"NSMenuItem\" id=\"686832216\">\n\t\t\t\t\t\t\t\t\t<reference key=\"NSMenu\" ref=\"120407948\"/>\n\t\t\t\t\t\t\t\t\t<bool key=\"NSIsDisabled\">YES</bool>\n\t\t\t\t\t\t\t\t\t<bool key=\"NSIsSeparator\">YES</bool>\n\t\t\t\t\t\t\t\t\t<string key=\"NSTitle\"/>\n\t\t\t\t\t\t\t\t\t<string key=\"NSKeyEquiv\"/>\n\t\t\t\t\t\t\t\t\t<int key=\"NSKeyEquivModMask\">1048576</int>\n\t\t\t\t\t\t\t\t\t<int key=\"NSMnemonicLoc\">2147483647</int>\n\t\t\t\t\t\t\t\t\t<reference key=\"NSOnImage\" ref=\"415077826\"/>\n\t\t\t\t\t\t\t\t\t<reference key=\"NSMixedImage\" ref=\"266121528\"/>\n\t\t\t\t\t\t\t\t</object>\n\t\t\t\t\t\t\t\t<object class=\"NSMenuItem\" id=\"389366042\">\n\t\t\t\t\t\t\t\t\t<reference key=\"NSMenu\" ref=\"120407948\"/>\n\t\t\t\t\t\t\t\t\t<string key=\"NSTitle\">Quit Cocos-player</string>\n\t\t\t\t\t\t\t\t\t<string key=\"NSKeyEquiv\">q</string>\n\t\t\t\t\t\t\t\t\t<int key=\"NSKeyEquivModMask\">1048576</int>\n\t\t\t\t\t\t\t\t\t<int key=\"NSMnemonicLoc\">2147483647</int>\n\t\t\t\t\t\t\t\t\t<reference key=\"NSOnImage\" ref=\"415077826\"/>\n\t\t\t\t\t\t\t\t\t<reference key=\"NSMixedImage\" ref=\"266121528\"/>\n\t\t\t\t\t\t\t\t</object>\n\t\t\t\t\t\t\t</array>\n\t\t\t\t\t\t\t<string key=\"NSName\">_NSAppleMenu</string>\n\t\t\t\t\t\t</object>\n\t\t\t\t\t</object>\n\t\t\t\t\t<object class=\"NSMenuItem\" id=\"131023520\">\n\t\t\t\t\t\t<reference key=\"NSMenu\" ref=\"126992598\"/>\n\t\t\t\t\t\t<string key=\"NSTitle\">File</string>\n\t\t\t\t\t\t<string key=\"NSKeyEquiv\"/>\n\t\t\t\t\t\t<int key=\"NSKeyEquivModMask\">1048576</int>\n\t\t\t\t\t\t<int key=\"NSMnemonicLoc\">2147483647</int>\n\t\t\t\t\t\t<reference key=\"NSOnImage\" ref=\"415077826\"/>\n\t\t\t\t\t\t<reference key=\"NSMixedImage\" ref=\"266121528\"/>\n\t\t\t\t\t\t<string key=\"NSAction\">submenuAction:</string>\n\t\t\t\t\t\t<reference key=\"NSTarget\" ref=\"775420212\"/>\n\t\t\t\t\t\t<object class=\"NSMenu\" key=\"NSSubmenu\" id=\"775420212\">\n\t\t\t\t\t\t\t<string key=\"NSTitle\">File</string>\n\t\t\t\t\t\t\t<array class=\"NSMutableArray\" key=\"NSMenuItems\">\n\t\t\t\t\t\t\t\t<object class=\"NSMenuItem\" id=\"908501198\">\n\t\t\t\t\t\t\t\t\t<reference key=\"NSMenu\" ref=\"775420212\"/>\n\t\t\t\t\t\t\t\t\t<string key=\"NSTitle\">Close</string>\n\t\t\t\t\t\t\t\t\t<string key=\"NSKeyEquiv\">w</string>\n\t\t\t\t\t\t\t\t\t<int key=\"NSKeyEquivModMask\">1048576</int>\n\t\t\t\t\t\t\t\t\t<int key=\"NSMnemonicLoc\">2147483647</int>\n\t\t\t\t\t\t\t\t\t<reference key=\"NSOnImage\" ref=\"415077826\"/>\n\t\t\t\t\t\t\t\t\t<reference key=\"NSMixedImage\" ref=\"266121528\"/>\n\t\t\t\t\t\t\t\t</object>\n\t\t\t\t\t\t\t</array>\n\t\t\t\t\t\t</object>\n\t\t\t\t\t</object>\n\t\t\t\t\t<object class=\"NSMenuItem\" id=\"570079000\">\n\t\t\t\t\t\t<reference key=\"NSMenu\" ref=\"126992598\"/>\n\t\t\t\t\t\t<string key=\"NSTitle\">View</string>\n\t\t\t\t\t\t<string key=\"NSKeyEquiv\"/>\n\t\t\t\t\t\t<int key=\"NSKeyEquivModMask\">1048576</int>\n\t\t\t\t\t\t<int key=\"NSMnemonicLoc\">2147483647</int>\n\t\t\t\t\t\t<reference key=\"NSOnImage\" ref=\"415077826\"/>\n\t\t\t\t\t\t<reference key=\"NSMixedImage\" ref=\"266121528\"/>\n\t\t\t\t\t\t<string key=\"NSAction\">submenuAction:</string>\n\t\t\t\t\t\t<reference key=\"NSTarget\" ref=\"449964678\"/>\n\t\t\t\t\t\t<object class=\"NSMenu\" key=\"NSSubmenu\" id=\"449964678\">\n\t\t\t\t\t\t\t<string key=\"NSTitle\">View</string>\n\t\t\t\t\t\t\t<array class=\"NSMutableArray\" key=\"NSMenuItems\">\n\t\t\t\t\t\t\t\t<object class=\"NSMenuItem\" id=\"280645869\">\n\t\t\t\t\t\t\t\t\t<reference key=\"NSMenu\" ref=\"449964678\"/>\n\t\t\t\t\t\t\t\t\t<bool key=\"NSIsDisabled\">YES</bool>\n\t\t\t\t\t\t\t\t\t<bool key=\"NSIsSeparator\">YES</bool>\n\t\t\t\t\t\t\t\t\t<string key=\"NSTitle\"/>\n\t\t\t\t\t\t\t\t\t<string key=\"NSKeyEquiv\"/>\n\t\t\t\t\t\t\t\t\t<int key=\"NSMnemonicLoc\">2147483647</int>\n\t\t\t\t\t\t\t\t\t<reference key=\"NSOnImage\" ref=\"415077826\"/>\n\t\t\t\t\t\t\t\t\t<reference key=\"NSMixedImage\" ref=\"266121528\"/>\n\t\t\t\t\t\t\t\t</object>\n\t\t\t\t\t\t\t\t<object class=\"NSMenuItem\" id=\"381124347\">\n\t\t\t\t\t\t\t\t\t<reference key=\"NSMenu\" ref=\"449964678\"/>\n\t\t\t\t\t\t\t\t\t<string key=\"NSTitle\">Portait</string>\n\t\t\t\t\t\t\t\t\t<string key=\"NSKeyEquiv\"/>\n\t\t\t\t\t\t\t\t\t<int key=\"NSMnemonicLoc\">2147483647</int>\n\t\t\t\t\t\t\t\t\t<int key=\"NSState\">1</int>\n\t\t\t\t\t\t\t\t\t<reference key=\"NSOnImage\" ref=\"415077826\"/>\n\t\t\t\t\t\t\t\t\t<reference key=\"NSMixedImage\" ref=\"266121528\"/>\n\t\t\t\t\t\t\t\t</object>\n\t\t\t\t\t\t\t\t<object class=\"NSMenuItem\" id=\"243422072\">\n\t\t\t\t\t\t\t\t\t<reference key=\"NSMenu\" ref=\"449964678\"/>\n\t\t\t\t\t\t\t\t\t<string key=\"NSTitle\">Landscape</string>\n\t\t\t\t\t\t\t\t\t<string key=\"NSKeyEquiv\"/>\n\t\t\t\t\t\t\t\t\t<int key=\"NSMnemonicLoc\">2147483647</int>\n\t\t\t\t\t\t\t\t\t<reference key=\"NSOnImage\" ref=\"415077826\"/>\n\t\t\t\t\t\t\t\t\t<reference key=\"NSMixedImage\" ref=\"266121528\"/>\n\t\t\t\t\t\t\t\t</object>\n\t\t\t\t\t\t\t\t<object class=\"NSMenuItem\" id=\"109890915\">\n\t\t\t\t\t\t\t\t\t<reference key=\"NSMenu\" ref=\"449964678\"/>\n\t\t\t\t\t\t\t\t\t<bool key=\"NSIsDisabled\">YES</bool>\n\t\t\t\t\t\t\t\t\t<bool key=\"NSIsSeparator\">YES</bool>\n\t\t\t\t\t\t\t\t\t<string key=\"NSTitle\"/>\n\t\t\t\t\t\t\t\t\t<string key=\"NSKeyEquiv\"/>\n\t\t\t\t\t\t\t\t\t<int key=\"NSMnemonicLoc\">2147483647</int>\n\t\t\t\t\t\t\t\t\t<reference key=\"NSOnImage\" ref=\"415077826\"/>\n\t\t\t\t\t\t\t\t\t<reference key=\"NSMixedImage\" ref=\"266121528\"/>\n\t\t\t\t\t\t\t\t</object>\n\t\t\t\t\t\t\t\t<object class=\"NSMenuItem\" id=\"797118978\">\n\t\t\t\t\t\t\t\t\t<reference key=\"NSMenu\" ref=\"449964678\"/>\n\t\t\t\t\t\t\t\t\t<string key=\"NSTitle\">Actual (100%)</string>\n\t\t\t\t\t\t\t\t\t<string key=\"NSKeyEquiv\">0</string>\n\t\t\t\t\t\t\t\t\t<int key=\"NSKeyEquivModMask\">1048576</int>\n\t\t\t\t\t\t\t\t\t<int key=\"NSMnemonicLoc\">2147483647</int>\n\t\t\t\t\t\t\t\t\t<int key=\"NSState\">1</int>\n\t\t\t\t\t\t\t\t\t<reference key=\"NSOnImage\" ref=\"415077826\"/>\n\t\t\t\t\t\t\t\t\t<reference key=\"NSMixedImage\" ref=\"266121528\"/>\n\t\t\t\t\t\t\t\t\t<int key=\"NSTag\">100</int>\n\t\t\t\t\t\t\t\t</object>\n\t\t\t\t\t\t\t\t<object class=\"NSMenuItem\" id=\"794026245\">\n\t\t\t\t\t\t\t\t\t<reference key=\"NSMenu\" ref=\"449964678\"/>\n\t\t\t\t\t\t\t\t\t<string key=\"NSTitle\">Zoom Out (75%)</string>\n\t\t\t\t\t\t\t\t\t<string key=\"NSKeyEquiv\">6</string>\n\t\t\t\t\t\t\t\t\t<int key=\"NSKeyEquivModMask\">1048576</int>\n\t\t\t\t\t\t\t\t\t<int key=\"NSMnemonicLoc\">2147483647</int>\n\t\t\t\t\t\t\t\t\t<reference key=\"NSOnImage\" ref=\"415077826\"/>\n\t\t\t\t\t\t\t\t\t<reference key=\"NSMixedImage\" ref=\"266121528\"/>\n\t\t\t\t\t\t\t\t\t<int key=\"NSTag\">75</int>\n\t\t\t\t\t\t\t\t</object>\n\t\t\t\t\t\t\t\t<object class=\"NSMenuItem\" id=\"1065433476\">\n\t\t\t\t\t\t\t\t\t<reference key=\"NSMenu\" ref=\"449964678\"/>\n\t\t\t\t\t\t\t\t\t<string key=\"NSTitle\">Zoom Out (50%)</string>\n\t\t\t\t\t\t\t\t\t<string key=\"NSKeyEquiv\">5</string>\n\t\t\t\t\t\t\t\t\t<int key=\"NSKeyEquivModMask\">1048576</int>\n\t\t\t\t\t\t\t\t\t<int key=\"NSMnemonicLoc\">2147483647</int>\n\t\t\t\t\t\t\t\t\t<reference key=\"NSOnImage\" ref=\"415077826\"/>\n\t\t\t\t\t\t\t\t\t<reference key=\"NSMixedImage\" ref=\"266121528\"/>\n\t\t\t\t\t\t\t\t\t<int key=\"NSTag\">50</int>\n\t\t\t\t\t\t\t\t</object>\n\t\t\t\t\t\t\t\t<object class=\"NSMenuItem\" id=\"267605560\">\n\t\t\t\t\t\t\t\t\t<reference key=\"NSMenu\" ref=\"449964678\"/>\n\t\t\t\t\t\t\t\t\t<string key=\"NSTitle\">Zoom Out (25%)</string>\n\t\t\t\t\t\t\t\t\t<string key=\"NSKeyEquiv\">4</string>\n\t\t\t\t\t\t\t\t\t<int key=\"NSKeyEquivModMask\">1048576</int>\n\t\t\t\t\t\t\t\t\t<int key=\"NSMnemonicLoc\">2147483647</int>\n\t\t\t\t\t\t\t\t\t<reference key=\"NSOnImage\" ref=\"415077826\"/>\n\t\t\t\t\t\t\t\t\t<reference key=\"NSMixedImage\" ref=\"266121528\"/>\n\t\t\t\t\t\t\t\t\t<int key=\"NSTag\">25</int>\n\t\t\t\t\t\t\t\t</object>\n\t\t\t\t\t\t\t</array>\n\t\t\t\t\t\t</object>\n\t\t\t\t\t</object>\n\t\t\t\t\t<object class=\"NSMenuItem\" id=\"638304486\">\n\t\t\t\t\t\t<reference key=\"NSMenu\" ref=\"126992598\"/>\n\t\t\t\t\t\t<string key=\"NSTitle\">Control</string>\n\t\t\t\t\t\t<string key=\"NSKeyEquiv\"/>\n\t\t\t\t\t\t<int key=\"NSMnemonicLoc\">2147483647</int>\n\t\t\t\t\t\t<reference key=\"NSOnImage\" ref=\"415077826\"/>\n\t\t\t\t\t\t<reference key=\"NSMixedImage\" ref=\"266121528\"/>\n\t\t\t\t\t\t<string key=\"NSAction\">submenuAction:</string>\n\t\t\t\t\t\t<reference key=\"NSTarget\" ref=\"201383158\"/>\n\t\t\t\t\t\t<object class=\"NSMenu\" key=\"NSSubmenu\" id=\"201383158\">\n\t\t\t\t\t\t\t<string key=\"NSTitle\">Control</string>\n\t\t\t\t\t\t\t<array class=\"NSMutableArray\" key=\"NSMenuItems\">\n\t\t\t\t\t\t\t\t<object class=\"NSMenuItem\" id=\"675525235\">\n\t\t\t\t\t\t\t\t\t<reference key=\"NSMenu\" ref=\"201383158\"/>\n\t\t\t\t\t\t\t\t\t<string key=\"NSTitle\">Relaunch</string>\n\t\t\t\t\t\t\t\t\t<string key=\"NSKeyEquiv\">r</string>\n\t\t\t\t\t\t\t\t\t<int key=\"NSKeyEquivModMask\">1048576</int>\n\t\t\t\t\t\t\t\t\t<int key=\"NSMnemonicLoc\">2147483647</int>\n\t\t\t\t\t\t\t\t\t<reference key=\"NSOnImage\" ref=\"415077826\"/>\n\t\t\t\t\t\t\t\t\t<reference key=\"NSMixedImage\" ref=\"266121528\"/>\n\t\t\t\t\t\t\t\t</object>\n\t\t\t\t\t\t\t\t<object class=\"NSMenuItem\" id=\"834755239\">\n\t\t\t\t\t\t\t\t\t<reference key=\"NSMenu\" ref=\"201383158\"/>\n\t\t\t\t\t\t\t\t\t<string key=\"NSTitle\">Keep Window Top</string>\n\t\t\t\t\t\t\t\t\t<string key=\"NSKeyEquiv\"/>\n\t\t\t\t\t\t\t\t\t<int key=\"NSMnemonicLoc\">2147483647</int>\n\t\t\t\t\t\t\t\t\t<reference key=\"NSOnImage\" ref=\"415077826\"/>\n\t\t\t\t\t\t\t\t\t<reference key=\"NSMixedImage\" ref=\"266121528\"/>\n\t\t\t\t\t\t\t\t</object>\n\t\t\t\t\t\t\t</array>\n\t\t\t\t\t\t</object>\n\t\t\t\t\t</object>\n\t\t\t\t\t<object class=\"NSMenuItem\" id=\"251430468\">\n\t\t\t\t\t\t<reference key=\"NSMenu\" ref=\"126992598\"/>\n\t\t\t\t\t\t<string key=\"NSTitle\">Help</string>\n\t\t\t\t\t\t<string key=\"NSKeyEquiv\"/>\n\t\t\t\t\t\t<int key=\"NSMnemonicLoc\">2147483647</int>\n\t\t\t\t\t\t<reference key=\"NSOnImage\" ref=\"415077826\"/>\n\t\t\t\t\t\t<reference key=\"NSMixedImage\" ref=\"266121528\"/>\n\t\t\t\t\t\t<string key=\"NSAction\">submenuAction:</string>\n\t\t\t\t\t\t<reference key=\"NSTarget\" ref=\"119598072\"/>\n\t\t\t\t\t\t<object class=\"NSMenu\" key=\"NSSubmenu\" id=\"119598072\">\n\t\t\t\t\t\t\t<string key=\"NSTitle\">Help</string>\n\t\t\t\t\t\t\t<array class=\"NSMutableArray\" key=\"NSMenuItems\"/>\n\t\t\t\t\t\t\t<string key=\"NSName\">_NSHelpMenu</string>\n\t\t\t\t\t\t</object>\n\t\t\t\t\t</object>\n\t\t\t\t</array>\n\t\t\t\t<string key=\"NSName\">_NSMainMenu</string>\n\t\t\t</object>\n\t\t\t<object class=\"NSCustomObject\" id=\"806429288\">\n\t\t\t\t<string key=\"NSClassName\">NSFontManager</string>\n\t\t\t</object>\n\t\t\t<object class=\"NSCustomObject\" id=\"234942004\">\n\t\t\t\t<string key=\"NSClassName\">AppController</string>\n\t\t\t</object>\n\t\t</array>\n\t\t<object class=\"IBObjectContainer\" key=\"IBDocument.Objects\">\n\t\t\t<bool key=\"usesAutoincrementingIDs\">NO</bool>\n\t\t\t<array class=\"NSMutableArray\" key=\"connectionRecords\">\n\t\t\t\t<object class=\"IBConnectionRecord\">\n\t\t\t\t\t<object class=\"IBActionConnection\" key=\"connection\">\n\t\t\t\t\t\t<string key=\"label\">hide:</string>\n\t\t\t\t\t\t<reference key=\"source\" ref=\"622080690\"/>\n\t\t\t\t\t\t<reference key=\"destination\" ref=\"880160621\"/>\n\t\t\t\t\t</object>\n\t\t\t\t\t<string key=\"id\">SGN-0p-7lH</string>\n\t\t\t\t</object>\n\t\t\t\t<object class=\"IBConnectionRecord\">\n\t\t\t\t\t<object class=\"IBActionConnection\" key=\"connection\">\n\t\t\t\t\t\t<string key=\"label\">hideOtherApplications:</string>\n\t\t\t\t\t\t<reference key=\"source\" ref=\"622080690\"/>\n\t\t\t\t\t\t<reference key=\"destination\" ref=\"925141027\"/>\n\t\t\t\t\t</object>\n\t\t\t\t\t<string key=\"id\">iJd-Ba-eXG</string>\n\t\t\t\t</object>\n\t\t\t\t<object class=\"IBConnectionRecord\">\n\t\t\t\t\t<object class=\"IBActionConnection\" key=\"connection\">\n\t\t\t\t\t\t<string key=\"label\">unhideAllApplications:</string>\n\t\t\t\t\t\t<reference key=\"source\" ref=\"622080690\"/>\n\t\t\t\t\t\t<reference key=\"destination\" ref=\"1041874958\"/>\n\t\t\t\t\t</object>\n\t\t\t\t\t<string key=\"id\">DR8-By-ymv</string>\n\t\t\t\t</object>\n\t\t\t\t<object class=\"IBConnectionRecord\">\n\t\t\t\t\t<object class=\"IBActionConnection\" key=\"connection\">\n\t\t\t\t\t\t<string key=\"label\">terminate:</string>\n\t\t\t\t\t\t<reference key=\"source\" ref=\"622080690\"/>\n\t\t\t\t\t\t<reference key=\"destination\" ref=\"389366042\"/>\n\t\t\t\t\t</object>\n\t\t\t\t\t<string key=\"id\">DyL-yF-GYq</string>\n\t\t\t\t</object>\n\t\t\t\t<object class=\"IBConnectionRecord\">\n\t\t\t\t\t<object class=\"IBOutletConnection\" key=\"connection\">\n\t\t\t\t\t\t<string key=\"label\">delegate</string>\n\t\t\t\t\t\t<reference key=\"source\" ref=\"421466433\"/>\n\t\t\t\t\t\t<reference key=\"destination\" ref=\"234942004\"/>\n\t\t\t\t\t</object>\n\t\t\t\t\t<string key=\"id\">537</string>\n\t\t\t\t</object>\n\t\t\t\t<object class=\"IBConnectionRecord\">\n\t\t\t\t\t<object class=\"IBOutletConnection\" key=\"connection\">\n\t\t\t\t\t\t<string key=\"label\">menu</string>\n\t\t\t\t\t\t<reference key=\"source\" ref=\"421466433\"/>\n\t\t\t\t\t\t<reference key=\"destination\" ref=\"126992598\"/>\n\t\t\t\t\t</object>\n\t\t\t\t\t<string key=\"id\">650</string>\n\t\t\t\t</object>\n\t\t\t\t<object class=\"IBConnectionRecord\">\n\t\t\t\t\t<object class=\"IBActionConnection\" key=\"connection\">\n\t\t\t\t\t\t<string key=\"label\">orderFrontStandardAboutPanel:</string>\n\t\t\t\t\t\t<reference key=\"source\" ref=\"37508903\"/>\n\t\t\t\t\t\t<reference key=\"destination\" ref=\"556105195\"/>\n\t\t\t\t\t</object>\n\t\t\t\t\t<string key=\"id\">tSA-7z-LPk</string>\n\t\t\t\t</object>\n\t\t\t\t<object class=\"IBConnectionRecord\">\n\t\t\t\t\t<object class=\"IBActionConnection\" key=\"connection\">\n\t\t\t\t\t\t<string key=\"label\">onFileClose:</string>\n\t\t\t\t\t\t<reference key=\"source\" ref=\"37508903\"/>\n\t\t\t\t\t\t<reference key=\"destination\" ref=\"908501198\"/>\n\t\t\t\t\t</object>\n\t\t\t\t\t<string key=\"id\">661</string>\n\t\t\t\t</object>\n\t\t\t\t<object class=\"IBConnectionRecord\">\n\t\t\t\t\t<object class=\"IBActionConnection\" key=\"connection\">\n\t\t\t\t\t\t<string key=\"label\">onScreenPortait:</string>\n\t\t\t\t\t\t<reference key=\"source\" ref=\"37508903\"/>\n\t\t\t\t\t\t<reference key=\"destination\" ref=\"381124347\"/>\n\t\t\t\t\t</object>\n\t\t\t\t\t<string key=\"id\">667</string>\n\t\t\t\t</object>\n\t\t\t\t<object class=\"IBConnectionRecord\">\n\t\t\t\t\t<object class=\"IBActionConnection\" key=\"connection\">\n\t\t\t\t\t\t<string key=\"label\">onScreenLandscape:</string>\n\t\t\t\t\t\t<reference key=\"source\" ref=\"37508903\"/>\n\t\t\t\t\t\t<reference key=\"destination\" ref=\"243422072\"/>\n\t\t\t\t\t</object>\n\t\t\t\t\t<string key=\"id\">647</string>\n\t\t\t\t</object>\n\t\t\t\t<object class=\"IBConnectionRecord\">\n\t\t\t\t\t<object class=\"IBActionConnection\" key=\"connection\">\n\t\t\t\t\t\t<string key=\"label\">onScreenZoomOut:</string>\n\t\t\t\t\t\t<reference key=\"source\" ref=\"37508903\"/>\n\t\t\t\t\t\t<reference key=\"destination\" ref=\"797118978\"/>\n\t\t\t\t\t</object>\n\t\t\t\t\t<string key=\"id\">yUj-fN-Rh7</string>\n\t\t\t\t</object>\n\t\t\t\t<object class=\"IBConnectionRecord\">\n\t\t\t\t\t<object class=\"IBActionConnection\" key=\"connection\">\n\t\t\t\t\t\t<string key=\"label\">onScreenZoomOut:</string>\n\t\t\t\t\t\t<reference key=\"source\" ref=\"37508903\"/>\n\t\t\t\t\t\t<reference key=\"destination\" ref=\"794026245\"/>\n\t\t\t\t\t</object>\n\t\t\t\t\t<string key=\"id\">yps-LZ-egB</string>\n\t\t\t\t</object>\n\t\t\t\t<object class=\"IBConnectionRecord\">\n\t\t\t\t\t<object class=\"IBActionConnection\" key=\"connection\">\n\t\t\t\t\t\t<string key=\"label\">onScreenZoomOut:</string>\n\t\t\t\t\t\t<reference key=\"source\" ref=\"37508903\"/>\n\t\t\t\t\t\t<reference key=\"destination\" ref=\"1065433476\"/>\n\t\t\t\t\t</object>\n\t\t\t\t\t<string key=\"id\">654</string>\n\t\t\t\t</object>\n\t\t\t\t<object class=\"IBConnectionRecord\">\n\t\t\t\t\t<object class=\"IBActionConnection\" key=\"connection\">\n\t\t\t\t\t\t<string key=\"label\">onScreenZoomOut:</string>\n\t\t\t\t\t\t<reference key=\"source\" ref=\"37508903\"/>\n\t\t\t\t\t\t<reference key=\"destination\" ref=\"267605560\"/>\n\t\t\t\t\t</object>\n\t\t\t\t\t<string key=\"id\">DSu-if-D2T</string>\n\t\t\t\t</object>\n\t\t\t\t<object class=\"IBConnectionRecord\">\n\t\t\t\t\t<object class=\"IBActionConnection\" key=\"connection\">\n\t\t\t\t\t\t<string key=\"label\">onRelaunch:</string>\n\t\t\t\t\t\t<reference key=\"source\" ref=\"37508903\"/>\n\t\t\t\t\t\t<reference key=\"destination\" ref=\"675525235\"/>\n\t\t\t\t\t</object>\n\t\t\t\t\t<string key=\"id\">XXg-eJ-YSn</string>\n\t\t\t\t</object>\n\t\t\t\t<object class=\"IBConnectionRecord\">\n\t\t\t\t\t<object class=\"IBActionConnection\" key=\"connection\">\n\t\t\t\t\t\t<string key=\"label\">onSetTop:</string>\n\t\t\t\t\t\t<reference key=\"source\" ref=\"37508903\"/>\n\t\t\t\t\t\t<reference key=\"destination\" ref=\"834755239\"/>\n\t\t\t\t\t</object>\n\t\t\t\t\t<string key=\"id\">jvv-x1-KeN</string>\n\t\t\t\t</object>\n\t\t\t\t<object class=\"IBConnectionRecord\">\n\t\t\t\t\t<object class=\"IBOutletConnection\" key=\"connection\">\n\t\t\t\t\t\t<string key=\"label\">menu</string>\n\t\t\t\t\t\t<reference key=\"source\" ref=\"234942004\"/>\n\t\t\t\t\t\t<reference key=\"destination\" ref=\"126992598\"/>\n\t\t\t\t\t</object>\n\t\t\t\t\t<string key=\"id\">550</string>\n\t\t\t\t</object>\n\t\t\t</array>\n\t\t\t<object class=\"IBMutableOrderedSet\" key=\"objectRecords\">\n\t\t\t\t<array key=\"orderedObjects\">\n\t\t\t\t\t<object class=\"IBObjectRecord\">\n\t\t\t\t\t\t<string key=\"id\">0</string>\n\t\t\t\t\t\t<array key=\"object\" id=\"0\"/>\n\t\t\t\t\t\t<reference key=\"children\" ref=\"504381850\"/>\n\t\t\t\t\t\t<nil key=\"parent\"/>\n\t\t\t\t\t</object>\n\t\t\t\t\t<object class=\"IBObjectRecord\">\n\t\t\t\t\t\t<string key=\"id\">-2</string>\n\t\t\t\t\t\t<reference key=\"object\" ref=\"421466433\"/>\n\t\t\t\t\t\t<reference key=\"parent\" ref=\"0\"/>\n\t\t\t\t\t\t<string key=\"objectName\">File's Owner</string>\n\t\t\t\t\t</object>\n\t\t\t\t\t<object class=\"IBObjectRecord\">\n\t\t\t\t\t\t<string key=\"id\">-1</string>\n\t\t\t\t\t\t<reference key=\"object\" ref=\"37508903\"/>\n\t\t\t\t\t\t<reference key=\"parent\" ref=\"0\"/>\n\t\t\t\t\t\t<string key=\"objectName\">First Responder</string>\n\t\t\t\t\t</object>\n\t\t\t\t\t<object class=\"IBObjectRecord\">\n\t\t\t\t\t\t<string key=\"id\">-3</string>\n\t\t\t\t\t\t<reference key=\"object\" ref=\"622080690\"/>\n\t\t\t\t\t\t<reference key=\"parent\" ref=\"0\"/>\n\t\t\t\t\t\t<string key=\"objectName\">Application</string>\n\t\t\t\t\t</object>\n\t\t\t\t\t<object class=\"IBObjectRecord\">\n\t\t\t\t\t\t<string key=\"id\">29</string>\n\t\t\t\t\t\t<reference key=\"object\" ref=\"126992598\"/>\n\t\t\t\t\t\t<array class=\"NSMutableArray\" key=\"children\">\n\t\t\t\t\t\t\t<reference ref=\"511312888\"/>\n\t\t\t\t\t\t\t<reference ref=\"131023520\"/>\n\t\t\t\t\t\t\t<reference ref=\"570079000\"/>\n\t\t\t\t\t\t\t<reference ref=\"638304486\"/>\n\t\t\t\t\t\t\t<reference ref=\"251430468\"/>\n\t\t\t\t\t\t</array>\n\t\t\t\t\t\t<reference key=\"parent\" ref=\"0\"/>\n\t\t\t\t\t</object>\n\t\t\t\t\t<object class=\"IBObjectRecord\">\n\t\t\t\t\t\t<string key=\"id\">GS6-Lb-ftA</string>\n\t\t\t\t\t\t<reference key=\"object\" ref=\"511312888\"/>\n\t\t\t\t\t\t<array class=\"NSMutableArray\" key=\"children\">\n\t\t\t\t\t\t\t<reference ref=\"120407948\"/>\n\t\t\t\t\t\t</array>\n\t\t\t\t\t\t<reference key=\"parent\" ref=\"126992598\"/>\n\t\t\t\t\t</object>\n\t\t\t\t\t<object class=\"IBObjectRecord\">\n\t\t\t\t\t\t<string key=\"id\">YN2-V8-ty0</string>\n\t\t\t\t\t\t<reference key=\"object\" ref=\"120407948\"/>\n\t\t\t\t\t\t<array class=\"NSMutableArray\" key=\"children\">\n\t\t\t\t\t\t\t<reference ref=\"556105195\"/>\n\t\t\t\t\t\t\t<reference ref=\"985155827\"/>\n\t\t\t\t\t\t\t<reference ref=\"904425014\"/>\n\t\t\t\t\t\t\t<reference ref=\"982249582\"/>\n\t\t\t\t\t\t\t<reference ref=\"880160621\"/>\n\t\t\t\t\t\t\t<reference ref=\"925141027\"/>\n\t\t\t\t\t\t\t<reference ref=\"1041874958\"/>\n\t\t\t\t\t\t\t<reference ref=\"686832216\"/>\n\t\t\t\t\t\t\t<reference ref=\"389366042\"/>\n\t\t\t\t\t\t</array>\n\t\t\t\t\t\t<reference key=\"parent\" ref=\"511312888\"/>\n\t\t\t\t\t</object>\n\t\t\t\t\t<object class=\"IBObjectRecord\">\n\t\t\t\t\t\t<string key=\"id\">HhF-Es-coQ</string>\n\t\t\t\t\t\t<reference key=\"object\" ref=\"556105195\"/>\n\t\t\t\t\t\t<reference key=\"parent\" ref=\"120407948\"/>\n\t\t\t\t\t</object>\n\t\t\t\t\t<object class=\"IBObjectRecord\">\n\t\t\t\t\t\t<string key=\"id\">OzD-Nm-tPt</string>\n\t\t\t\t\t\t<reference key=\"object\" ref=\"985155827\"/>\n\t\t\t\t\t\t<reference key=\"parent\" ref=\"120407948\"/>\n\t\t\t\t\t</object>\n\t\t\t\t\t<object class=\"IBObjectRecord\">\n\t\t\t\t\t\t<string key=\"id\">TOj-vg-cDm</string>\n\t\t\t\t\t\t<reference key=\"object\" ref=\"904425014\"/>\n\t\t\t\t\t\t<array class=\"NSMutableArray\" key=\"children\">\n\t\t\t\t\t\t\t<reference ref=\"730822112\"/>\n\t\t\t\t\t\t</array>\n\t\t\t\t\t\t<reference key=\"parent\" ref=\"120407948\"/>\n\t\t\t\t\t</object>\n\t\t\t\t\t<object class=\"IBObjectRecord\">\n\t\t\t\t\t\t<string key=\"id\">e98-We-UX5</string>\n\t\t\t\t\t\t<reference key=\"object\" ref=\"730822112\"/>\n\t\t\t\t\t\t<reference key=\"parent\" ref=\"904425014\"/>\n\t\t\t\t\t</object>\n\t\t\t\t\t<object class=\"IBObjectRecord\">\n\t\t\t\t\t\t<string key=\"id\">muN-Hw-eeZ</string>\n\t\t\t\t\t\t<reference key=\"object\" ref=\"982249582\"/>\n\t\t\t\t\t\t<reference key=\"parent\" ref=\"120407948\"/>\n\t\t\t\t\t</object>\n\t\t\t\t\t<object class=\"IBObjectRecord\">\n\t\t\t\t\t\t<string key=\"id\">sH6-na-PTL</string>\n\t\t\t\t\t\t<reference key=\"object\" ref=\"880160621\"/>\n\t\t\t\t\t\t<reference key=\"parent\" ref=\"120407948\"/>\n\t\t\t\t\t</object>\n\t\t\t\t\t<object class=\"IBObjectRecord\">\n\t\t\t\t\t\t<string key=\"id\">XG8-CE-veT</string>\n\t\t\t\t\t\t<reference key=\"object\" ref=\"925141027\"/>\n\t\t\t\t\t\t<reference key=\"parent\" ref=\"120407948\"/>\n\t\t\t\t\t</object>\n\t\t\t\t\t<object class=\"IBObjectRecord\">\n\t\t\t\t\t\t<string key=\"id\">IqD-3v-zQT</string>\n\t\t\t\t\t\t<reference key=\"object\" ref=\"1041874958\"/>\n\t\t\t\t\t\t<reference key=\"parent\" ref=\"120407948\"/>\n\t\t\t\t\t</object>\n\t\t\t\t\t<object class=\"IBObjectRecord\">\n\t\t\t\t\t\t<string key=\"id\">GU5-eI-OTq</string>\n\t\t\t\t\t\t<reference key=\"object\" ref=\"686832216\"/>\n\t\t\t\t\t\t<reference key=\"parent\" ref=\"120407948\"/>\n\t\t\t\t\t</object>\n\t\t\t\t\t<object class=\"IBObjectRecord\">\n\t\t\t\t\t\t<string key=\"id\">7Z7-ot-jqY</string>\n\t\t\t\t\t\t<reference key=\"object\" ref=\"389366042\"/>\n\t\t\t\t\t\t<reference key=\"parent\" ref=\"120407948\"/>\n\t\t\t\t\t</object>\n\t\t\t\t\t<object class=\"IBObjectRecord\">\n\t\t\t\t\t\t<string key=\"id\">83</string>\n\t\t\t\t\t\t<reference key=\"object\" ref=\"131023520\"/>\n\t\t\t\t\t\t<array class=\"NSMutableArray\" key=\"children\">\n\t\t\t\t\t\t\t<reference ref=\"775420212\"/>\n\t\t\t\t\t\t</array>\n\t\t\t\t\t\t<reference key=\"parent\" ref=\"126992598\"/>\n\t\t\t\t\t</object>\n\t\t\t\t\t<object class=\"IBObjectRecord\">\n\t\t\t\t\t\t<string key=\"id\">81</string>\n\t\t\t\t\t\t<reference key=\"object\" ref=\"775420212\"/>\n\t\t\t\t\t\t<array class=\"NSMutableArray\" key=\"children\">\n\t\t\t\t\t\t\t<reference ref=\"908501198\"/>\n\t\t\t\t\t\t</array>\n\t\t\t\t\t\t<reference key=\"parent\" ref=\"131023520\"/>\n\t\t\t\t\t</object>\n\t\t\t\t\t<object class=\"IBObjectRecord\">\n\t\t\t\t\t\t<string key=\"id\">611</string>\n\t\t\t\t\t\t<reference key=\"object\" ref=\"908501198\"/>\n\t\t\t\t\t\t<reference key=\"parent\" ref=\"775420212\"/>\n\t\t\t\t\t</object>\n\t\t\t\t\t<object class=\"IBObjectRecord\">\n\t\t\t\t\t\t<string key=\"id\">295</string>\n\t\t\t\t\t\t<reference key=\"object\" ref=\"570079000\"/>\n\t\t\t\t\t\t<array class=\"NSMutableArray\" key=\"children\">\n\t\t\t\t\t\t\t<reference ref=\"449964678\"/>\n\t\t\t\t\t\t</array>\n\t\t\t\t\t\t<reference key=\"parent\" ref=\"126992598\"/>\n\t\t\t\t\t\t<string key=\"objectName\">Menu Item - View</string>\n\t\t\t\t\t</object>\n\t\t\t\t\t<object class=\"IBObjectRecord\">\n\t\t\t\t\t\t<string key=\"id\">296</string>\n\t\t\t\t\t\t<reference key=\"object\" ref=\"449964678\"/>\n\t\t\t\t\t\t<array class=\"NSMutableArray\" key=\"children\">\n\t\t\t\t\t\t\t<reference ref=\"280645869\"/>\n\t\t\t\t\t\t\t<reference ref=\"381124347\"/>\n\t\t\t\t\t\t\t<reference ref=\"243422072\"/>\n\t\t\t\t\t\t\t<reference ref=\"109890915\"/>\n\t\t\t\t\t\t\t<reference ref=\"797118978\"/>\n\t\t\t\t\t\t\t<reference ref=\"794026245\"/>\n\t\t\t\t\t\t\t<reference ref=\"1065433476\"/>\n\t\t\t\t\t\t\t<reference ref=\"267605560\"/>\n\t\t\t\t\t\t</array>\n\t\t\t\t\t\t<reference key=\"parent\" ref=\"570079000\"/>\n\t\t\t\t\t\t<string key=\"objectName\">Menu - View</string>\n\t\t\t\t\t</object>\n\t\t\t\t\t<object class=\"IBObjectRecord\">\n\t\t\t\t\t\t<string key=\"id\">579</string>\n\t\t\t\t\t\t<reference key=\"object\" ref=\"280645869\"/>\n\t\t\t\t\t\t<reference key=\"parent\" ref=\"449964678\"/>\n\t\t\t\t\t</object>\n\t\t\t\t\t<object class=\"IBObjectRecord\">\n\t\t\t\t\t\t<string key=\"id\">592</string>\n\t\t\t\t\t\t<reference key=\"object\" ref=\"381124347\"/>\n\t\t\t\t\t\t<reference key=\"parent\" ref=\"449964678\"/>\n\t\t\t\t\t</object>\n\t\t\t\t\t<object class=\"IBObjectRecord\">\n\t\t\t\t\t\t<string key=\"id\">593</string>\n\t\t\t\t\t\t<reference key=\"object\" ref=\"243422072\"/>\n\t\t\t\t\t\t<reference key=\"parent\" ref=\"449964678\"/>\n\t\t\t\t\t</object>\n\t\t\t\t\t<object class=\"IBObjectRecord\">\n\t\t\t\t\t\t<string key=\"id\">594</string>\n\t\t\t\t\t\t<reference key=\"object\" ref=\"109890915\"/>\n\t\t\t\t\t\t<reference key=\"parent\" ref=\"449964678\"/>\n\t\t\t\t\t</object>\n\t\t\t\t\t<object class=\"IBObjectRecord\">\n\t\t\t\t\t\t<string key=\"id\">595</string>\n\t\t\t\t\t\t<reference key=\"object\" ref=\"797118978\"/>\n\t\t\t\t\t\t<reference key=\"parent\" ref=\"449964678\"/>\n\t\t\t\t\t</object>\n\t\t\t\t\t<object class=\"IBObjectRecord\">\n\t\t\t\t\t\t<string key=\"id\">pqR-xy-5ip</string>\n\t\t\t\t\t\t<reference key=\"object\" ref=\"794026245\"/>\n\t\t\t\t\t\t<reference key=\"parent\" ref=\"449964678\"/>\n\t\t\t\t\t</object>\n\t\t\t\t\t<object class=\"IBObjectRecord\">\n\t\t\t\t\t\t<string key=\"id\">596</string>\n\t\t\t\t\t\t<reference key=\"object\" ref=\"1065433476\"/>\n\t\t\t\t\t\t<reference key=\"parent\" ref=\"449964678\"/>\n\t\t\t\t\t</object>\n\t\t\t\t\t<object class=\"IBObjectRecord\">\n\t\t\t\t\t\t<string key=\"id\">QB8-6D-hAr</string>\n\t\t\t\t\t\t<reference key=\"object\" ref=\"267605560\"/>\n\t\t\t\t\t\t<reference key=\"parent\" ref=\"449964678\"/>\n\t\t\t\t\t</object>\n\t\t\t\t\t<object class=\"IBObjectRecord\">\n\t\t\t\t\t\t<string key=\"id\">Heh-SD-KHE</string>\n\t\t\t\t\t\t<reference key=\"object\" ref=\"638304486\"/>\n\t\t\t\t\t\t<array class=\"NSMutableArray\" key=\"children\">\n\t\t\t\t\t\t\t<reference ref=\"201383158\"/>\n\t\t\t\t\t\t</array>\n\t\t\t\t\t\t<reference key=\"parent\" ref=\"126992598\"/>\n\t\t\t\t\t</object>\n\t\t\t\t\t<object class=\"IBObjectRecord\">\n\t\t\t\t\t\t<string key=\"id\">ysx-9J-ekz</string>\n\t\t\t\t\t\t<reference key=\"object\" ref=\"201383158\"/>\n\t\t\t\t\t\t<array class=\"NSMutableArray\" key=\"children\">\n\t\t\t\t\t\t\t<reference ref=\"675525235\"/>\n\t\t\t\t\t\t\t<reference ref=\"834755239\"/>\n\t\t\t\t\t\t</array>\n\t\t\t\t\t\t<reference key=\"parent\" ref=\"638304486\"/>\n\t\t\t\t\t</object>\n\t\t\t\t\t<object class=\"IBObjectRecord\">\n\t\t\t\t\t\t<string key=\"id\">hfu-OP-8X3</string>\n\t\t\t\t\t\t<reference key=\"object\" ref=\"675525235\"/>\n\t\t\t\t\t\t<reference key=\"parent\" ref=\"201383158\"/>\n\t\t\t\t\t</object>\n\t\t\t\t\t<object class=\"IBObjectRecord\">\n\t\t\t\t\t\t<string key=\"id\">490</string>\n\t\t\t\t\t\t<reference key=\"object\" ref=\"251430468\"/>\n\t\t\t\t\t\t<array class=\"NSMutableArray\" key=\"children\">\n\t\t\t\t\t\t\t<reference ref=\"119598072\"/>\n\t\t\t\t\t\t</array>\n\t\t\t\t\t\t<reference key=\"parent\" ref=\"126992598\"/>\n\t\t\t\t\t</object>\n\t\t\t\t\t<object class=\"IBObjectRecord\">\n\t\t\t\t\t\t<string key=\"id\">491</string>\n\t\t\t\t\t\t<reference key=\"object\" ref=\"119598072\"/>\n\t\t\t\t\t\t<reference key=\"parent\" ref=\"251430468\"/>\n\t\t\t\t\t</object>\n\t\t\t\t\t<object class=\"IBObjectRecord\">\n\t\t\t\t\t\t<string key=\"id\">420</string>\n\t\t\t\t\t\t<reference key=\"object\" ref=\"806429288\"/>\n\t\t\t\t\t\t<reference key=\"parent\" ref=\"0\"/>\n\t\t\t\t\t</object>\n\t\t\t\t\t<object class=\"IBObjectRecord\">\n\t\t\t\t\t\t<string key=\"id\">536</string>\n\t\t\t\t\t\t<reference key=\"object\" ref=\"234942004\"/>\n\t\t\t\t\t\t<reference key=\"parent\" ref=\"0\"/>\n\t\t\t\t\t</object>\n\t\t\t\t\t<object class=\"IBObjectRecord\">\n\t\t\t\t\t\t<string key=\"id\">CXy-V7-NaY</string>\n\t\t\t\t\t\t<reference key=\"object\" ref=\"834755239\"/>\n\t\t\t\t\t\t<reference key=\"parent\" ref=\"201383158\"/>\n\t\t\t\t\t</object>\n\t\t\t\t</array>\n\t\t\t</object>\n\t\t\t<dictionary class=\"NSMutableDictionary\" key=\"flattenedProperties\">\n\t\t\t\t<string key=\"-1.IBPluginDependency\">com.apple.InterfaceBuilder.CocoaPlugin</string>\n\t\t\t\t<boolean value=\"NO\" key=\"-1.showNotes\"/>\n\t\t\t\t<string key=\"-2.IBPluginDependency\">com.apple.InterfaceBuilder.CocoaPlugin</string>\n\t\t\t\t<boolean value=\"NO\" key=\"-2.showNotes\"/>\n\t\t\t\t<string key=\"-3.IBPluginDependency\">com.apple.InterfaceBuilder.CocoaPlugin</string>\n\t\t\t\t<boolean value=\"NO\" key=\"-3.showNotes\"/>\n\t\t\t\t<string key=\"29.IBPluginDependency\">com.apple.InterfaceBuilder.CocoaPlugin</string>\n\t\t\t\t<boolean value=\"NO\" key=\"29.showNotes\"/>\n\t\t\t\t<string key=\"295.IBPluginDependency\">com.apple.InterfaceBuilder.CocoaPlugin</string>\n\t\t\t\t<boolean value=\"NO\" key=\"295.showNotes\"/>\n\t\t\t\t<string key=\"296.IBPluginDependency\">com.apple.InterfaceBuilder.CocoaPlugin</string>\n\t\t\t\t<boolean value=\"NO\" key=\"296.showNotes\"/>\n\t\t\t\t<string key=\"420.IBPluginDependency\">com.apple.InterfaceBuilder.CocoaPlugin</string>\n\t\t\t\t<boolean value=\"NO\" key=\"420.showNotes\"/>\n\t\t\t\t<string key=\"490.IBPluginDependency\">com.apple.InterfaceBuilder.CocoaPlugin</string>\n\t\t\t\t<boolean value=\"NO\" key=\"490.showNotes\"/>\n\t\t\t\t<string key=\"491.IBPluginDependency\">com.apple.InterfaceBuilder.CocoaPlugin</string>\n\t\t\t\t<boolean value=\"NO\" key=\"491.showNotes\"/>\n\t\t\t\t<string key=\"536.IBPluginDependency\">com.apple.InterfaceBuilder.CocoaPlugin</string>\n\t\t\t\t<boolean value=\"NO\" key=\"536.showNotes\"/>\n\t\t\t\t<string key=\"579.IBPluginDependency\">com.apple.InterfaceBuilder.CocoaPlugin</string>\n\t\t\t\t<boolean value=\"NO\" key=\"579.showNotes\"/>\n\t\t\t\t<string key=\"592.IBPluginDependency\">com.apple.InterfaceBuilder.CocoaPlugin</string>\n\t\t\t\t<boolean value=\"NO\" key=\"592.showNotes\"/>\n\t\t\t\t<string key=\"593.IBPluginDependency\">com.apple.InterfaceBuilder.CocoaPlugin</string>\n\t\t\t\t<boolean value=\"NO\" key=\"593.showNotes\"/>\n\t\t\t\t<string key=\"594.IBPluginDependency\">com.apple.InterfaceBuilder.CocoaPlugin</string>\n\t\t\t\t<boolean value=\"NO\" key=\"594.showNotes\"/>\n\t\t\t\t<string key=\"595.IBPluginDependency\">com.apple.InterfaceBuilder.CocoaPlugin</string>\n\t\t\t\t<boolean value=\"NO\" key=\"595.showNotes\"/>\n\t\t\t\t<string key=\"596.IBPluginDependency\">com.apple.InterfaceBuilder.CocoaPlugin</string>\n\t\t\t\t<boolean value=\"NO\" key=\"596.showNotes\"/>\n\t\t\t\t<string key=\"611.IBPluginDependency\">com.apple.InterfaceBuilder.CocoaPlugin</string>\n\t\t\t\t<boolean value=\"NO\" key=\"611.showNotes\"/>\n\t\t\t\t<string key=\"7Z7-ot-jqY.IBPluginDependency\">com.apple.InterfaceBuilder.CocoaPlugin</string>\n\t\t\t\t<boolean value=\"NO\" key=\"7Z7-ot-jqY.showNotes\"/>\n\t\t\t\t<string key=\"81.IBPluginDependency\">com.apple.InterfaceBuilder.CocoaPlugin</string>\n\t\t\t\t<boolean value=\"NO\" key=\"81.showNotes\"/>\n\t\t\t\t<string key=\"83.IBPluginDependency\">com.apple.InterfaceBuilder.CocoaPlugin</string>\n\t\t\t\t<boolean value=\"NO\" key=\"83.showNotes\"/>\n\t\t\t\t<string key=\"CXy-V7-NaY.IBPluginDependency\">com.apple.InterfaceBuilder.CocoaPlugin</string>\n\t\t\t\t<string key=\"GS6-Lb-ftA.IBPluginDependency\">com.apple.InterfaceBuilder.CocoaPlugin</string>\n\t\t\t\t<boolean value=\"NO\" key=\"GS6-Lb-ftA.showNotes\"/>\n\t\t\t\t<string key=\"GU5-eI-OTq.IBPluginDependency\">com.apple.InterfaceBuilder.CocoaPlugin</string>\n\t\t\t\t<boolean value=\"NO\" key=\"GU5-eI-OTq.showNotes\"/>\n\t\t\t\t<string key=\"Heh-SD-KHE.IBPluginDependency\">com.apple.InterfaceBuilder.CocoaPlugin</string>\n\t\t\t\t<boolean value=\"NO\" key=\"Heh-SD-KHE.showNotes\"/>\n\t\t\t\t<string key=\"HhF-Es-coQ.IBPluginDependency\">com.apple.InterfaceBuilder.CocoaPlugin</string>\n\t\t\t\t<boolean value=\"NO\" key=\"HhF-Es-coQ.showNotes\"/>\n\t\t\t\t<string key=\"IqD-3v-zQT.IBPluginDependency\">com.apple.InterfaceBuilder.CocoaPlugin</string>\n\t\t\t\t<boolean value=\"NO\" key=\"IqD-3v-zQT.showNotes\"/>\n\t\t\t\t<string key=\"OzD-Nm-tPt.IBPluginDependency\">com.apple.InterfaceBuilder.CocoaPlugin</string>\n\t\t\t\t<boolean value=\"NO\" key=\"OzD-Nm-tPt.showNotes\"/>\n\t\t\t\t<string key=\"QB8-6D-hAr.IBPluginDependency\">com.apple.InterfaceBuilder.CocoaPlugin</string>\n\t\t\t\t<boolean value=\"NO\" key=\"QB8-6D-hAr.showNotes\"/>\n\t\t\t\t<string key=\"TOj-vg-cDm.IBPluginDependency\">com.apple.InterfaceBuilder.CocoaPlugin</string>\n\t\t\t\t<boolean value=\"NO\" key=\"TOj-vg-cDm.showNotes\"/>\n\t\t\t\t<string key=\"XG8-CE-veT.IBPluginDependency\">com.apple.InterfaceBuilder.CocoaPlugin</string>\n\t\t\t\t<boolean value=\"NO\" key=\"XG8-CE-veT.showNotes\"/>\n\t\t\t\t<string key=\"YN2-V8-ty0.IBPluginDependency\">com.apple.InterfaceBuilder.CocoaPlugin</string>\n\t\t\t\t<boolean value=\"NO\" key=\"YN2-V8-ty0.showNotes\"/>\n\t\t\t\t<string key=\"e98-We-UX5.IBPluginDependency\">com.apple.InterfaceBuilder.CocoaPlugin</string>\n\t\t\t\t<boolean value=\"NO\" key=\"e98-We-UX5.showNotes\"/>\n\t\t\t\t<string key=\"hfu-OP-8X3.IBPluginDependency\">com.apple.InterfaceBuilder.CocoaPlugin</string>\n\t\t\t\t<boolean value=\"NO\" key=\"hfu-OP-8X3.showNotes\"/>\n\t\t\t\t<string key=\"muN-Hw-eeZ.IBPluginDependency\">com.apple.InterfaceBuilder.CocoaPlugin</string>\n\t\t\t\t<boolean value=\"NO\" key=\"muN-Hw-eeZ.showNotes\"/>\n\t\t\t\t<string key=\"pqR-xy-5ip.IBPluginDependency\">com.apple.InterfaceBuilder.CocoaPlugin</string>\n\t\t\t\t<boolean value=\"NO\" key=\"pqR-xy-5ip.showNotes\"/>\n\t\t\t\t<string key=\"sH6-na-PTL.IBPluginDependency\">com.apple.InterfaceBuilder.CocoaPlugin</string>\n\t\t\t\t<boolean value=\"NO\" key=\"sH6-na-PTL.showNotes\"/>\n\t\t\t\t<string key=\"ysx-9J-ekz.IBPluginDependency\">com.apple.InterfaceBuilder.CocoaPlugin</string>\n\t\t\t\t<boolean value=\"NO\" key=\"ysx-9J-ekz.showNotes\"/>\n\t\t\t</dictionary>\n\t\t\t<dictionary class=\"NSMutableDictionary\" key=\"unlocalizedProperties\"/>\n\t\t\t<nil key=\"activeLocalization\"/>\n\t\t\t<dictionary class=\"NSMutableDictionary\" key=\"localizations\"/>\n\t\t\t<nil key=\"sourceID\"/>\n\t\t</object>\n\t\t<object class=\"IBClassDescriber\" key=\"IBDocument.Classes\">\n\t\t\t<array class=\"NSMutableArray\" key=\"referencedPartialClassDescriptions\">\n\t\t\t\t<object class=\"IBPartialClassDescription\">\n\t\t\t\t\t<string key=\"className\">AppController</string>\n\t\t\t\t\t<string key=\"superclassName\">NSObject</string>\n\t\t\t\t\t<dictionary class=\"NSMutableDictionary\" key=\"actions\">\n\t\t\t\t\t\t<string key=\"onFileClose:\">id</string>\n\t\t\t\t\t\t<string key=\"onRelaunch:\">id</string>\n\t\t\t\t\t\t<string key=\"onScreenLandscape:\">id</string>\n\t\t\t\t\t\t<string key=\"onScreenPortait:\">id</string>\n\t\t\t\t\t\t<string key=\"onScreenZoomOut:\">id</string>\n\t\t\t\t\t\t<string key=\"onSetTop:\">id</string>\n\t\t\t\t\t\t<string key=\"onViewChangeFrameSize:\">id</string>\n\t\t\t\t\t</dictionary>\n\t\t\t\t\t<dictionary class=\"NSMutableDictionary\" key=\"actionInfosByName\">\n\t\t\t\t\t\t<object class=\"IBActionInfo\" key=\"onFileClose:\">\n\t\t\t\t\t\t\t<string key=\"name\">onFileClose:</string>\n\t\t\t\t\t\t\t<string key=\"candidateClassName\">id</string>\n\t\t\t\t\t\t</object>\n\t\t\t\t\t\t<object class=\"IBActionInfo\" key=\"onRelaunch:\">\n\t\t\t\t\t\t\t<string key=\"name\">onRelaunch:</string>\n\t\t\t\t\t\t\t<string key=\"candidateClassName\">id</string>\n\t\t\t\t\t\t</object>\n\t\t\t\t\t\t<object class=\"IBActionInfo\" key=\"onScreenLandscape:\">\n\t\t\t\t\t\t\t<string key=\"name\">onScreenLandscape:</string>\n\t\t\t\t\t\t\t<string key=\"candidateClassName\">id</string>\n\t\t\t\t\t\t</object>\n\t\t\t\t\t\t<object class=\"IBActionInfo\" key=\"onScreenPortait:\">\n\t\t\t\t\t\t\t<string key=\"name\">onScreenPortait:</string>\n\t\t\t\t\t\t\t<string key=\"candidateClassName\">id</string>\n\t\t\t\t\t\t</object>\n\t\t\t\t\t\t<object class=\"IBActionInfo\" key=\"onScreenZoomOut:\">\n\t\t\t\t\t\t\t<string key=\"name\">onScreenZoomOut:</string>\n\t\t\t\t\t\t\t<string key=\"candidateClassName\">id</string>\n\t\t\t\t\t\t</object>\n\t\t\t\t\t\t<object class=\"IBActionInfo\" key=\"onSetTop:\">\n\t\t\t\t\t\t\t<string key=\"name\">onSetTop:</string>\n\t\t\t\t\t\t\t<string key=\"candidateClassName\">id</string>\n\t\t\t\t\t\t</object>\n\t\t\t\t\t\t<object class=\"IBActionInfo\" key=\"onViewChangeFrameSize:\">\n\t\t\t\t\t\t\t<string key=\"name\">onViewChangeFrameSize:</string>\n\t\t\t\t\t\t\t<string key=\"candidateClassName\">id</string>\n\t\t\t\t\t\t</object>\n\t\t\t\t\t</dictionary>\n\t\t\t\t\t<object class=\"NSMutableDictionary\" key=\"outlets\">\n\t\t\t\t\t\t<string key=\"NS.key.0\">menu</string>\n\t\t\t\t\t\t<string key=\"NS.object.0\">NSMenu</string>\n\t\t\t\t\t</object>\n\t\t\t\t\t<object class=\"NSMutableDictionary\" key=\"toOneOutletInfosByName\">\n\t\t\t\t\t\t<string key=\"NS.key.0\">menu</string>\n\t\t\t\t\t\t<object class=\"IBToOneOutletInfo\" key=\"NS.object.0\">\n\t\t\t\t\t\t\t<string key=\"name\">menu</string>\n\t\t\t\t\t\t\t<string key=\"candidateClassName\">NSMenu</string>\n\t\t\t\t\t\t</object>\n\t\t\t\t\t</object>\n\t\t\t\t\t<object class=\"IBClassDescriptionSource\" key=\"sourceIdentifier\">\n\t\t\t\t\t\t<string key=\"majorKey\">IBProjectSource</string>\n\t\t\t\t\t\t<string key=\"minorKey\">./Classes/AppController.h</string>\n\t\t\t\t\t</object>\n\t\t\t\t</object>\n\t\t\t</array>\n\t\t</object>\n\t\t<int key=\"IBDocument.localizationMode\">0</int>\n\t\t<string key=\"IBDocument.TargetRuntimeIdentifier\">IBCocoaFramework</string>\n\t\t<bool key=\"IBDocument.previouslyAttemptedUpgradeToXcode5\">YES</bool>\n\t\t<object class=\"NSMutableDictionary\" key=\"IBDocument.PluginDeclaredDependencies\">\n\t\t\t<string key=\"NS.key.0\">com.apple.InterfaceBuilder.CocoaPlugin.macosx</string>\n\t\t\t<real value=\"1060\" key=\"NS.object.0\"/>\n\t\t</object>\n\t\t<object class=\"NSMutableDictionary\" key=\"IBDocument.PluginDeclaredDependencyDefaults\">\n\t\t\t<string key=\"NS.key.0\">com.apple.InterfaceBuilder.CocoaPlugin.macosx</string>\n\t\t\t<real value=\"1080\" key=\"NS.object.0\"/>\n\t\t</object>\n\t\t<object class=\"NSMutableDictionary\" key=\"IBDocument.PluginDeclaredDevelopmentDependencies\">\n\t\t\t<string key=\"NS.key.0\">com.apple.InterfaceBuilder.CocoaPlugin.InterfaceBuilder3</string>\n\t\t\t<integer value=\"4600\" key=\"NS.object.0\"/>\n\t\t</object>\n\t\t<bool key=\"IBDocument.PluginDeclaredDependenciesTrackSystemTargetVersion\">YES</bool>\n\t\t<int key=\"IBDocument.defaultPropertyAccessControl\">3</int>\n\t\t<dictionary class=\"NSMutableDictionary\" key=\"IBDocument.LastKnownImageSizes\">\n\t\t\t<string key=\"NSMenuCheckmark\">{11, 11}</string>\n\t\t\t<string key=\"NSMenuMixedState\">{10, 3}</string>\n\t\t</dictionary>\n\t</data>\n</archive>\n"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/proj.ios_mac/mac/main.m",
    "content": "\n#import <Cocoa/Cocoa.h>\n\nint main(int argc, char *argv[])\n{\n    return NSApplicationMain(argc, (const char **)argv);\n}\n"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/proj.ios_mac/mir9.xcodeproj/project.pbxproj",
    "content": "// !$*UTF8*$!\n{\n\tarchiveVersion = 1;\n\tclasses = {\n\t};\n\tobjectVersion = 46;\n\tobjects = {\n\n/* Begin PBXBuildFile section */\n\t\t15427CD3198F221400DC375D /* libcocos2d iOS.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 15A8A4251834BDA200142BE0 /* libcocos2d iOS.a */; };\n\t\t15427CD5198F222200DC375D /* libluacocos2d iOS.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 15427CD2198F220600DC375D /* libluacocos2d iOS.a */; };\n\t\t15427CEC198F24A600DC375D /* libluacocos2d Mac.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 15427CC2198F220600DC375D /* libluacocos2d Mac.a */; };\n\t\t15427CEE198F24AF00DC375D /* libcocos2d Mac.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 15A8A4171834BDA200142BE0 /* libcocos2d Mac.a */; };\n\t\t15A8A4491834C64F00142BE0 /* Icon-114.png in Resources */ = {isa = PBXBuildFile; fileRef = 5023810C17EBBCAC00990C9B /* Icon-114.png */; };\n\t\t15A8A4881834C90F00142BE0 /* libcurl.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = 15A8A4871834C90E00142BE0 /* libcurl.dylib */; };\n\t\t15AA9648199B6D4600725633 /* lua_debugger.c in Sources */ = {isa = PBXBuildFile; fileRef = 15AA9646199B6D4600725633 /* lua_debugger.c */; };\n\t\t15AA9649199B6D4600725633 /* lua_debugger.c in Sources */ = {isa = PBXBuildFile; fileRef = 15AA9646199B6D4600725633 /* lua_debugger.c */; };\n\t\t1AF4C403178663F200122817 /* libz.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = 1AF4C402178663F200122817 /* libz.dylib */; };\n\t\t3EB5152C19528284006966AA /* Protos.pb.cc in Sources */ = {isa = PBXBuildFile; fileRef = 3EB5152A19528284006966AA /* Protos.pb.cc */; };\n\t\t3EB5152D19528284006966AA /* Protos.pb.cc in Sources */ = {isa = PBXBuildFile; fileRef = 3EB5152A19528284006966AA /* Protos.pb.cc */; };\n\t\t3EEEDB61197107C0006A9FF8 /* MediaPlayer.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 3EEEDB60197107C0006A9FF8 /* MediaPlayer.framework */; };\n\t\t49C656541A39A1A200603AF5 /* NVGDrawNode.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 49C656481A39A1A200603AF5 /* NVGDrawNode.cpp */; };\n\t\t49C656551A39A1A200603AF5 /* NVGDrawNode.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 49C656481A39A1A200603AF5 /* NVGDrawNode.cpp */; };\n\t\t49C656561A39A1A200603AF5 /* NVGNode.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 49C6564A1A39A1A200603AF5 /* NVGNode.cpp */; };\n\t\t49C656571A39A1A200603AF5 /* NVGNode.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 49C6564A1A39A1A200603AF5 /* NVGNode.cpp */; };\n\t\t49C656581A39A1A200603AF5 /* nanovg.c in Sources */ = {isa = PBXBuildFile; fileRef = 49C6564E1A39A1A200603AF5 /* nanovg.c */; };\n\t\t49C656591A39A1A200603AF5 /* nanovg.c in Sources */ = {isa = PBXBuildFile; fileRef = 49C6564E1A39A1A200603AF5 /* nanovg.c */; };\n\t\t49C6565E1A39A22400603AF5 /* lua_cocos2dx_extension_nanovg_auto.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 49C6565A1A39A22400603AF5 /* lua_cocos2dx_extension_nanovg_auto.cpp */; };\n\t\t49C6565F1A39A22400603AF5 /* lua_cocos2dx_extension_nanovg_auto.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 49C6565A1A39A22400603AF5 /* lua_cocos2dx_extension_nanovg_auto.cpp */; };\n\t\t49C656601A39A22400603AF5 /* lua_cocos2dx_extension_nanovg_manual.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 49C6565C1A39A22400603AF5 /* lua_cocos2dx_extension_nanovg_manual.cpp */; };\n\t\t49C656611A39A22400603AF5 /* lua_cocos2dx_extension_nanovg_manual.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 49C6565C1A39A22400603AF5 /* lua_cocos2dx_extension_nanovg_manual.cpp */; };\n\t\t5023811817EBBCAC00990C9B /* AppController.mm in Sources */ = {isa = PBXBuildFile; fileRef = 5023810817EBBCAC00990C9B /* AppController.mm */; };\n\t\t5023811917EBBCAC00990C9B /* Default-568h@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = 5023810917EBBCAC00990C9B /* Default-568h@2x.png */; };\n\t\t5023811A17EBBCAC00990C9B /* Default.png in Resources */ = {isa = PBXBuildFile; fileRef = 5023810A17EBBCAC00990C9B /* Default.png */; };\n\t\t5023811B17EBBCAC00990C9B /* Default@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = 5023810B17EBBCAC00990C9B /* Default@2x.png */; };\n\t\t5023811D17EBBCAC00990C9B /* Icon-120.png in Resources */ = {isa = PBXBuildFile; fileRef = 5023810D17EBBCAC00990C9B /* Icon-120.png */; };\n\t\t5023811E17EBBCAC00990C9B /* Icon-144.png in Resources */ = {isa = PBXBuildFile; fileRef = 5023810E17EBBCAC00990C9B /* Icon-144.png */; };\n\t\t5023811F17EBBCAC00990C9B /* Icon-152.png in Resources */ = {isa = PBXBuildFile; fileRef = 5023810F17EBBCAC00990C9B /* Icon-152.png */; };\n\t\t5023812017EBBCAC00990C9B /* Icon-57.png in Resources */ = {isa = PBXBuildFile; fileRef = 5023811017EBBCAC00990C9B /* Icon-57.png */; };\n\t\t5023812117EBBCAC00990C9B /* Icon-72.png in Resources */ = {isa = PBXBuildFile; fileRef = 5023811117EBBCAC00990C9B /* Icon-72.png */; };\n\t\t5023812217EBBCAC00990C9B /* Icon-76.png in Resources */ = {isa = PBXBuildFile; fileRef = 5023811217EBBCAC00990C9B /* Icon-76.png */; };\n\t\t5023812417EBBCAC00990C9B /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 5023811417EBBCAC00990C9B /* main.m */; };\n\t\t5023812517EBBCAC00990C9B /* RootViewController.mm in Sources */ = {isa = PBXBuildFile; fileRef = 5023811717EBBCAC00990C9B /* RootViewController.mm */; };\n\t\t5023813317EBBCE400990C9B /* AppDelegate.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F293BB7E15EB831F00256477 /* AppDelegate.cpp */; };\n\t\t5023813717EBBCE400990C9B /* libz.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = 1AF4C402178663F200122817 /* libz.dylib */; };\n\t\t5023813E17EBBCE400990C9B /* QuartzCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F293B3CC15EB7BE500256477 /* QuartzCore.framework */; };\n\t\t5023814017EBBCE400990C9B /* OpenAL.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F293B3D015EB7BE500256477 /* OpenAL.framework */; };\n\t\t5023814117EBBCE400990C9B /* AudioToolbox.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F293B3D215EB7BE500256477 /* AudioToolbox.framework */; };\n\t\t5023814417EBBCE400990C9B /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F293B3D815EB7BE500256477 /* Foundation.framework */; };\n\t\t5023814517EBBCE400990C9B /* CoreGraphics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F293B3DA15EB7BE500256477 /* CoreGraphics.framework */; };\n\t\t5023817617EBBE3400990C9B /* Icon.icns in Resources */ = {isa = PBXBuildFile; fileRef = 5023817217EBBE3400990C9B /* Icon.icns */; };\n\t\t5023817A17EBBE8300990C9B /* OpenGLES.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 5023817917EBBE8300990C9B /* OpenGLES.framework */; };\n\t\t50805AAF17EBBEAA004CFAD3 /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 50805AAE17EBBEAA004CFAD3 /* UIKit.framework */; };\n\t\t5091733617ECE17A00D62437 /* Icon-29.png in Resources */ = {isa = PBXBuildFile; fileRef = 5091733017ECE17A00D62437 /* Icon-29.png */; };\n\t\t5091733717ECE17A00D62437 /* Icon-40.png in Resources */ = {isa = PBXBuildFile; fileRef = 5091733117ECE17A00D62437 /* Icon-40.png */; };\n\t\t5091733817ECE17A00D62437 /* Icon-50.png in Resources */ = {isa = PBXBuildFile; fileRef = 5091733217ECE17A00D62437 /* Icon-50.png */; };\n\t\t5091733917ECE17A00D62437 /* Icon-58.png in Resources */ = {isa = PBXBuildFile; fileRef = 5091733317ECE17A00D62437 /* Icon-58.png */; };\n\t\t5091733A17ECE17A00D62437 /* Icon-80.png in Resources */ = {isa = PBXBuildFile; fileRef = 5091733417ECE17A00D62437 /* Icon-80.png */; };\n\t\t5091733B17ECE17A00D62437 /* Icon-100.png in Resources */ = {isa = PBXBuildFile; fileRef = 5091733517ECE17A00D62437 /* Icon-100.png */; };\n\t\t50D7C96C17EBBEDF005D0B91 /* OpenGL.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 50D7C96B17EBBEDF005D0B91 /* OpenGL.framework */; };\n\t\t50D7C96E17EBBEE6005D0B91 /* AppKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 50D7C96D17EBBEE6005D0B91 /* AppKit.framework */; };\n\t\t50D7C97017EBBEEC005D0B91 /* IOKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 50D7C96F17EBBEEC005D0B91 /* IOKit.framework */; };\n\t\t521A8E7019F0C3D200D177D7 /* Default-667h@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = 521A8E6E19F0C3D200D177D7 /* Default-667h@2x.png */; };\n\t\t521A8E7119F0C3D200D177D7 /* Default-736h@3x.png in Resources */ = {isa = PBXBuildFile; fileRef = 521A8E6F19F0C3D200D177D7 /* Default-736h@3x.png */; };\n\t\t87BA718B1A44A57100929C43 /* FileServer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = AB6CB6F01A1F275E009C2562 /* FileServer.cpp */; };\n\t\t87BA718C1A44A57100929C43 /* FileServer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = AB6CB6F01A1F275E009C2562 /* FileServer.cpp */; };\n\t\t87BA718F1A44A5BF00929C43 /* ConnectWaitLayer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = AB6CB6EC1A1F275E009C2562 /* ConnectWaitLayer.cpp */; };\n\t\t87BA71901A44A5CA00929C43 /* ConsoleCommand.cpp in Sources */ = {isa = PBXBuildFile; fileRef = AB6CB6EE1A1F275E009C2562 /* ConsoleCommand.cpp */; };\n\t\t87BA71911A44A5CB00929C43 /* ConsoleCommand.cpp in Sources */ = {isa = PBXBuildFile; fileRef = AB6CB6EE1A1F275E009C2562 /* ConsoleCommand.cpp */; };\n\t\t9F598A0819F5F3A6006015D6 /* SystemConfiguration.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 9F598A0719F5F3A6006015D6 /* SystemConfiguration.framework */; };\n\t\t9F598A0B19F5F4F4006015D6 /* StoreKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 9F598A0A19F5F4F4006015D6 /* StoreKit.framework */; };\n\t\t9F9106B419F5614900AD5CAB /* libbase64.c in Sources */ = {isa = PBXBuildFile; fileRef = 9F9105AC19F5614800AD5CAB /* libbase64.c */; };\n\t\t9F9106B519F5614900AD5CAB /* libbase64.c in Sources */ = {isa = PBXBuildFile; fileRef = 9F9105AC19F5614800AD5CAB /* libbase64.c */; };\n\t\t9F9106B619F5614900AD5CAB /* CCCrypto.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9F9105AE19F5614800AD5CAB /* CCCrypto.cpp */; };\n\t\t9F9106B719F5614900AD5CAB /* CCCrypto.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9F9105AE19F5614800AD5CAB /* CCCrypto.cpp */; };\n\t\t9F9106B919F5614900AD5CAB /* md5.c in Sources */ = {isa = PBXBuildFile; fileRef = 9F9105B119F5614800AD5CAB /* md5.c */; };\n\t\t9F9106BC19F5614900AD5CAB /* CCBlurFilter.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9F9105B719F5614800AD5CAB /* CCBlurFilter.cpp */; };\n\t\t9F9106BD19F5614900AD5CAB /* CCBlurFilter.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9F9105B719F5614800AD5CAB /* CCBlurFilter.cpp */; };\n\t\t9F9106BE19F5614900AD5CAB /* CCBrightnessFilter.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9F9105B919F5614800AD5CAB /* CCBrightnessFilter.cpp */; };\n\t\t9F9106BF19F5614900AD5CAB /* CCBrightnessFilter.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9F9105B919F5614800AD5CAB /* CCBrightnessFilter.cpp */; };\n\t\t9F9106C019F5614900AD5CAB /* CCContrastFilter.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9F9105BB19F5614800AD5CAB /* CCContrastFilter.cpp */; };\n\t\t9F9106C119F5614900AD5CAB /* CCContrastFilter.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9F9105BB19F5614800AD5CAB /* CCContrastFilter.cpp */; };\n\t\t9F9106C219F5614900AD5CAB /* CCCustomFilter.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9F9105BD19F5614800AD5CAB /* CCCustomFilter.cpp */; };\n\t\t9F9106C319F5614900AD5CAB /* CCCustomFilter.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9F9105BD19F5614800AD5CAB /* CCCustomFilter.cpp */; };\n\t\t9F9106C419F5614900AD5CAB /* CCDropShadowFilter.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9F9105BF19F5614800AD5CAB /* CCDropShadowFilter.cpp */; };\n\t\t9F9106C519F5614900AD5CAB /* CCDropShadowFilter.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9F9105BF19F5614800AD5CAB /* CCDropShadowFilter.cpp */; };\n\t\t9F9106C619F5614900AD5CAB /* CCExposureFilter.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9F9105C119F5614800AD5CAB /* CCExposureFilter.cpp */; };\n\t\t9F9106C719F5614900AD5CAB /* CCExposureFilter.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9F9105C119F5614800AD5CAB /* CCExposureFilter.cpp */; };\n\t\t9F9106C819F5614900AD5CAB /* CCFilter.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9F9105C319F5614800AD5CAB /* CCFilter.cpp */; };\n\t\t9F9106C919F5614900AD5CAB /* CCFilter.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9F9105C319F5614800AD5CAB /* CCFilter.cpp */; };\n\t\t9F9106CA19F5614900AD5CAB /* CCGammaFilter.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9F9105C519F5614800AD5CAB /* CCGammaFilter.cpp */; };\n\t\t9F9106CB19F5614900AD5CAB /* CCGammaFilter.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9F9105C519F5614800AD5CAB /* CCGammaFilter.cpp */; };\n\t\t9F9106CC19F5614900AD5CAB /* CCGrayFilter.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9F9105C719F5614800AD5CAB /* CCGrayFilter.cpp */; };\n\t\t9F9106CD19F5614900AD5CAB /* CCGrayFilter.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9F9105C719F5614800AD5CAB /* CCGrayFilter.cpp */; };\n\t\t9F9106CE19F5614900AD5CAB /* CCHazeFilter.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9F9105C919F5614800AD5CAB /* CCHazeFilter.cpp */; };\n\t\t9F9106CF19F5614900AD5CAB /* CCHazeFilter.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9F9105C919F5614800AD5CAB /* CCHazeFilter.cpp */; };\n\t\t9F9106D019F5614900AD5CAB /* CCHueFilter.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9F9105CB19F5614800AD5CAB /* CCHueFilter.cpp */; };\n\t\t9F9106D119F5614900AD5CAB /* CCHueFilter.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9F9105CB19F5614800AD5CAB /* CCHueFilter.cpp */; };\n\t\t9F9106D219F5614900AD5CAB /* CCMaskFilter.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9F9105CD19F5614800AD5CAB /* CCMaskFilter.cpp */; };\n\t\t9F9106D319F5614900AD5CAB /* CCMaskFilter.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9F9105CD19F5614800AD5CAB /* CCMaskFilter.cpp */; };\n\t\t9F9106D419F5614900AD5CAB /* CCRGBFilter.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9F9105CF19F5614800AD5CAB /* CCRGBFilter.cpp */; };\n\t\t9F9106D519F5614900AD5CAB /* CCRGBFilter.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9F9105CF19F5614800AD5CAB /* CCRGBFilter.cpp */; };\n\t\t9F9106D619F5614900AD5CAB /* CCSaturationFilter.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9F9105D119F5614800AD5CAB /* CCSaturationFilter.cpp */; };\n\t\t9F9106D719F5614900AD5CAB /* CCSaturationFilter.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9F9105D119F5614800AD5CAB /* CCSaturationFilter.cpp */; };\n\t\t9F9106D819F5614900AD5CAB /* CCSepiaFilter.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9F9105D319F5614800AD5CAB /* CCSepiaFilter.cpp */; };\n\t\t9F9106D919F5614900AD5CAB /* CCSepiaFilter.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9F9105D319F5614800AD5CAB /* CCSepiaFilter.cpp */; };\n\t\t9F9106DA19F5614900AD5CAB /* CCSharpenFilter.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9F9105D519F5614800AD5CAB /* CCSharpenFilter.cpp */; };\n\t\t9F9106DB19F5614900AD5CAB /* CCSharpenFilter.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9F9105D519F5614800AD5CAB /* CCSharpenFilter.cpp */; };\n\t\t9F9106DC19F5614900AD5CAB /* CCTestFilter.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9F9105D719F5614800AD5CAB /* CCTestFilter.cpp */; };\n\t\t9F9106DD19F5614900AD5CAB /* CCTestFilter.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9F9105D719F5614800AD5CAB /* CCTestFilter.cpp */; };\n\t\t9F9106DE19F5614900AD5CAB /* CCFilteredSprite.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9F9105DA19F5614800AD5CAB /* CCFilteredSprite.cpp */; };\n\t\t9F9106DF19F5614900AD5CAB /* CCFilteredSprite.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9F9105DA19F5614800AD5CAB /* CCFilteredSprite.cpp */; };\n\t\t9F9106E019F5614900AD5CAB /* ccFilterShaders.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9F9105FA19F5614800AD5CAB /* ccFilterShaders.cpp */; };\n\t\t9F9106E119F5614900AD5CAB /* ccFilterShaders.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9F9105FA19F5614800AD5CAB /* ccFilterShaders.cpp */; };\n\t\t9F91070E19F5614900AD5CAB /* FilterShaders.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9F91061219F5614800AD5CAB /* FilterShaders.cpp */; };\n\t\t9F91070F19F5614900AD5CAB /* FilterShaders.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9F91061219F5614800AD5CAB /* FilterShaders.cpp */; };\n\t\t9F91071A19F5614900AD5CAB /* cocos2dx_extra_ios_iap_luabinding.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9F91061A19F5614800AD5CAB /* cocos2dx_extra_ios_iap_luabinding.cpp */; };\n\t\t9F91071E19F5614900AD5CAB /* cocos2dx_extra_luabinding.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9F91061D19F5614800AD5CAB /* cocos2dx_extra_luabinding.cpp */; };\n\t\t9F91071F19F5614900AD5CAB /* cocos2dx_extra_luabinding.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9F91061D19F5614800AD5CAB /* cocos2dx_extra_luabinding.cpp */; };\n\t\t9F91072219F5614900AD5CAB /* HelperFunc_luabinding.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9F91062019F5614800AD5CAB /* HelperFunc_luabinding.cpp */; };\n\t\t9F91072319F5614900AD5CAB /* HelperFunc_luabinding.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9F91062019F5614800AD5CAB /* HelperFunc_luabinding.cpp */; };\n\t\t9F91072619F5614900AD5CAB /* CCHTTPRequest.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9F91062719F5614800AD5CAB /* CCHTTPRequest.cpp */; };\n\t\t9F91072719F5614900AD5CAB /* CCHTTPRequest.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9F91062719F5614800AD5CAB /* CCHTTPRequest.cpp */; };\n\t\t9F91072819F5614900AD5CAB /* CCNetwork.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9F91062A19F5614800AD5CAB /* CCNetwork.cpp */; };\n\t\t9F91072919F5614900AD5CAB /* CCNetwork.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9F91062A19F5614800AD5CAB /* CCNetwork.cpp */; };\n\t\t9F91073219F5614900AD5CAB /* CCCryptoIOS.mm in Sources */ = {isa = PBXBuildFile; fileRef = 9F91063319F5614800AD5CAB /* CCCryptoIOS.mm */; };\n\t\t9F91073419F5614900AD5CAB /* CCNative.mm in Sources */ = {isa = PBXBuildFile; fileRef = 9F91063419F5614800AD5CAB /* CCNative.mm */; };\n\t\t9F91073619F5614900AD5CAB /* CCNativeIOS.mm in Sources */ = {isa = PBXBuildFile; fileRef = 9F91063619F5614800AD5CAB /* CCNativeIOS.mm */; };\n\t\t9F91073819F5614900AD5CAB /* CCStore.mm in Sources */ = {isa = PBXBuildFile; fileRef = 9F91063719F5614800AD5CAB /* CCStore.mm */; };\n\t\t9F91073A19F5614900AD5CAB /* CCStoreIOS.mm in Sources */ = {isa = PBXBuildFile; fileRef = 9F91063919F5614800AD5CAB /* CCStoreIOS.mm */; };\n\t\t9F91073C19F5614900AD5CAB /* CCStorePaymentTransactionWrapper.mm in Sources */ = {isa = PBXBuildFile; fileRef = 9F91063A19F5614800AD5CAB /* CCStorePaymentTransactionWrapper.mm */; };\n\t\t9F91073E19F5614900AD5CAB /* CCStoreReceiptVerifyRequestIOS.mm in Sources */ = {isa = PBXBuildFile; fileRef = 9F91063C19F5614800AD5CAB /* CCStoreReceiptVerifyRequestIOS.mm */; };\n\t\t9F91074019F5614900AD5CAB /* SBJSON.m in Sources */ = {isa = PBXBuildFile; fileRef = 9F91063F19F5614800AD5CAB /* SBJSON.m */; };\n\t\t9F91074119F5614900AD5CAB /* SBJSON.m in Sources */ = {isa = PBXBuildFile; fileRef = 9F91063F19F5614800AD5CAB /* SBJSON.m */; };\n\t\t9F91074219F5614900AD5CAB /* SBJsonBase.m in Sources */ = {isa = PBXBuildFile; fileRef = 9F91064119F5614800AD5CAB /* SBJsonBase.m */; };\n\t\t9F91074319F5614900AD5CAB /* SBJsonBase.m in Sources */ = {isa = PBXBuildFile; fileRef = 9F91064119F5614800AD5CAB /* SBJsonBase.m */; };\n\t\t9F91074419F5614900AD5CAB /* SBJsonParser.m in Sources */ = {isa = PBXBuildFile; fileRef = 9F91064319F5614800AD5CAB /* SBJsonParser.m */; };\n\t\t9F91074519F5614900AD5CAB /* SBJsonParser.m in Sources */ = {isa = PBXBuildFile; fileRef = 9F91064319F5614800AD5CAB /* SBJsonParser.m */; };\n\t\t9F91074619F5614900AD5CAB /* SBJsonWriter.m in Sources */ = {isa = PBXBuildFile; fileRef = 9F91064519F5614800AD5CAB /* SBJsonWriter.m */; };\n\t\t9F91074719F5614900AD5CAB /* SBJsonWriter.m in Sources */ = {isa = PBXBuildFile; fileRef = 9F91064519F5614800AD5CAB /* SBJsonWriter.m */; };\n\t\t9F91074819F5614900AD5CAB /* OpenUDIDIOS.m in Sources */ = {isa = PBXBuildFile; fileRef = 9F91064819F5614800AD5CAB /* OpenUDIDIOS.m */; };\n\t\t9F91074919F5614900AD5CAB /* OpenUDIDIOS.m in Sources */ = {isa = PBXBuildFile; fileRef = 9F91064819F5614800AD5CAB /* OpenUDIDIOS.m */; };\n\t\t9F91074A19F5614900AD5CAB /* CCNetworkIOSMac.mm in Sources */ = {isa = PBXBuildFile; fileRef = 9F91064A19F5614800AD5CAB /* CCNetworkIOSMac.mm */; };\n\t\t9F91074B19F5614900AD5CAB /* CCNetworkIOSMac.mm in Sources */ = {isa = PBXBuildFile; fileRef = 9F91064A19F5614800AD5CAB /* CCNetworkIOSMac.mm */; };\n\t\t9F91074C19F5614900AD5CAB /* ReachabilityIOSMac.m in Sources */ = {isa = PBXBuildFile; fileRef = 9F91064C19F5614800AD5CAB /* ReachabilityIOSMac.m */; };\n\t\t9F91074D19F5614900AD5CAB /* ReachabilityIOSMac.m in Sources */ = {isa = PBXBuildFile; fileRef = 9F91064C19F5614800AD5CAB /* ReachabilityIOSMac.m */; };\n\t\t9F91074F19F5614900AD5CAB /* CCCryptoMac.mm in Sources */ = {isa = PBXBuildFile; fileRef = 9F91064E19F5614800AD5CAB /* CCCryptoMac.mm */; };\n\t\t9F91075119F5614900AD5CAB /* CCNative.mm in Sources */ = {isa = PBXBuildFile; fileRef = 9F91064F19F5614800AD5CAB /* CCNative.mm */; };\n\t\t9F91075319F5614900AD5CAB /* CCNativeMac.mm in Sources */ = {isa = PBXBuildFile; fileRef = 9F91065119F5614800AD5CAB /* CCNativeMac.mm */; };\n\t\t9F91075519F5614900AD5CAB /* OpenUDIDMac.m in Sources */ = {isa = PBXBuildFile; fileRef = 9F91065419F5614800AD5CAB /* OpenUDIDMac.m */; };\n\t\t9F91076619F5614900AD5CAB /* CCStorePaymentTransaction.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9F91066319F5614800AD5CAB /* CCStorePaymentTransaction.cpp */; };\n\t\t9F91076819F5614900AD5CAB /* CCStoreProduct.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9F91066619F5614800AD5CAB /* CCStoreProduct.cpp */; };\n\t\t9F91076C19F5614900AD5CAB /* fpconv.c in Sources */ = {isa = PBXBuildFile; fileRef = 9F91066D19F5614800AD5CAB /* fpconv.c */; };\n\t\t9F91076D19F5614900AD5CAB /* fpconv.c in Sources */ = {isa = PBXBuildFile; fileRef = 9F91066D19F5614800AD5CAB /* fpconv.c */; };\n\t\t9F91076E19F5614900AD5CAB /* lua_cjson.c in Sources */ = {isa = PBXBuildFile; fileRef = 9F91066F19F5614800AD5CAB /* lua_cjson.c */; };\n\t\t9F91076F19F5614900AD5CAB /* lua_cjson.c in Sources */ = {isa = PBXBuildFile; fileRef = 9F91066F19F5614800AD5CAB /* lua_cjson.c */; };\n\t\t9F91077019F5614900AD5CAB /* strbuf.c in Sources */ = {isa = PBXBuildFile; fileRef = 9F91067119F5614800AD5CAB /* strbuf.c */; };\n\t\t9F91077119F5614900AD5CAB /* strbuf.c in Sources */ = {isa = PBXBuildFile; fileRef = 9F91067119F5614800AD5CAB /* strbuf.c */; };\n\t\t9F91077619F5614900AD5CAB /* lfs.c in Sources */ = {isa = PBXBuildFile; fileRef = 9F91067819F5614800AD5CAB /* lfs.c */; };\n\t\t9F91077719F5614900AD5CAB /* lfs.c in Sources */ = {isa = PBXBuildFile; fileRef = 9F91067819F5614800AD5CAB /* lfs.c */; };\n\t\t9F91077819F5614900AD5CAB /* lpack.c in Sources */ = {isa = PBXBuildFile; fileRef = 9F91067B19F5614800AD5CAB /* lpack.c */; };\n\t\t9F91077919F5614900AD5CAB /* lpack.c in Sources */ = {isa = PBXBuildFile; fileRef = 9F91067B19F5614800AD5CAB /* lpack.c */; };\n\t\t9F91077A19F5614900AD5CAB /* lsqlite3.c in Sources */ = {isa = PBXBuildFile; fileRef = 9F91067E19F5614800AD5CAB /* lsqlite3.c */; };\n\t\t9F91077B19F5614900AD5CAB /* lsqlite3.c in Sources */ = {isa = PBXBuildFile; fileRef = 9F91067E19F5614800AD5CAB /* lsqlite3.c */; };\n\t\t9F91077C19F5614900AD5CAB /* sqlite3.c in Sources */ = {isa = PBXBuildFile; fileRef = 9F91068019F5614800AD5CAB /* sqlite3.c */; };\n\t\t9F91077D19F5614900AD5CAB /* sqlite3.c in Sources */ = {isa = PBXBuildFile; fileRef = 9F91068019F5614800AD5CAB /* sqlite3.c */; };\n\t\t9F91077E19F5614900AD5CAB /* lua_extensions_more.c in Sources */ = {isa = PBXBuildFile; fileRef = 9F91068219F5614800AD5CAB /* lua_extensions_more.c */; };\n\t\t9F91077F19F5614900AD5CAB /* lua_extensions_more.c in Sources */ = {isa = PBXBuildFile; fileRef = 9F91068219F5614800AD5CAB /* lua_extensions_more.c */; };\n\t\t9F91078019F5614900AD5CAB /* lua_zlib.c in Sources */ = {isa = PBXBuildFile; fileRef = 9F91068519F5614800AD5CAB /* lua_zlib.c */; };\n\t\t9F91078119F5614900AD5CAB /* lua_zlib.c in Sources */ = {isa = PBXBuildFile; fileRef = 9F91068519F5614800AD5CAB /* lua_zlib.c */; };\n\t\t9F91078619F561CD00AD5CAB /* HelperFunc.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9F9105A719F5614800AD5CAB /* HelperFunc.cpp */; };\n\t\t9F91078719F561CD00AD5CAB /* HelperFunc.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9F9105A719F5614800AD5CAB /* HelperFunc.cpp */; };\n\t\t9F91078919F5628A00AD5CAB /* SystemConfiguration.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 9F91078819F5628A00AD5CAB /* SystemConfiguration.framework */; };\n\t\t9F91078D19F5658D00AD5CAB /* lua_cocos2dx_extension_filter_auto.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9F91078B19F5658D00AD5CAB /* lua_cocos2dx_extension_filter_auto.cpp */; };\n\t\t9F91078E19F5658D00AD5CAB /* lua_cocos2dx_extension_filter_auto.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9F91078B19F5658D00AD5CAB /* lua_cocos2dx_extension_filter_auto.cpp */; };\n\t\t9F91079419F56A6600AD5CAB /* ProjectConfig.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9F91079019F56A6600AD5CAB /* ProjectConfig.cpp */; };\n\t\t9F91079519F56A6600AD5CAB /* ProjectConfig.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9F91079019F56A6600AD5CAB /* ProjectConfig.cpp */; };\n\t\t9F91079619F56A6600AD5CAB /* SimulatorConfig.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9F91079219F56A6600AD5CAB /* SimulatorConfig.cpp */; };\n\t\t9F91079719F56A6600AD5CAB /* SimulatorConfig.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9F91079219F56A6600AD5CAB /* SimulatorConfig.cpp */; };\n\t\t9F91079E19F5704400AD5CAB /* ConsoleWindow.xib in Resources */ = {isa = PBXBuildFile; fileRef = 9F91079B19F5704400AD5CAB /* ConsoleWindow.xib */; };\n\t\t9F91079F19F5704400AD5CAB /* ConsoleWindowController.m in Sources */ = {isa = PBXBuildFile; fileRef = 9F91079D19F5704400AD5CAB /* ConsoleWindowController.m */; };\n\t\tAB6CB6F31A1F275E009C2562 /* ConnectWaitLayer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = AB6CB6EC1A1F275E009C2562 /* ConnectWaitLayer.cpp */; };\n\t\tC00FD4921938512100C6382D /* Landscape_png.cpp in Sources */ = {isa = PBXBuildFile; fileRef = C00FD48A1938512100C6382D /* Landscape_png.cpp */; };\n\t\tC00FD4931938512100C6382D /* Landscape_png.cpp in Sources */ = {isa = PBXBuildFile; fileRef = C00FD48A1938512100C6382D /* Landscape_png.cpp */; };\n\t\tC00FD4941938512100C6382D /* PlayDisable_png.cpp in Sources */ = {isa = PBXBuildFile; fileRef = C00FD48B1938512100C6382D /* PlayDisable_png.cpp */; };\n\t\tC00FD4951938512100C6382D /* PlayDisable_png.cpp in Sources */ = {isa = PBXBuildFile; fileRef = C00FD48B1938512100C6382D /* PlayDisable_png.cpp */; };\n\t\tC00FD4961938512100C6382D /* PlayEnable_png.cpp in Sources */ = {isa = PBXBuildFile; fileRef = C00FD48C1938512100C6382D /* PlayEnable_png.cpp */; };\n\t\tC00FD4971938512100C6382D /* PlayEnable_png.cpp in Sources */ = {isa = PBXBuildFile; fileRef = C00FD48C1938512100C6382D /* PlayEnable_png.cpp */; };\n\t\tC00FD4981938512100C6382D /* Portrait_png.cpp in Sources */ = {isa = PBXBuildFile; fileRef = C00FD48D1938512100C6382D /* Portrait_png.cpp */; };\n\t\tC00FD4991938512100C6382D /* Portrait_png.cpp in Sources */ = {isa = PBXBuildFile; fileRef = C00FD48D1938512100C6382D /* Portrait_png.cpp */; };\n\t\tC00FD49A1938512100C6382D /* Runtime.cpp in Sources */ = {isa = PBXBuildFile; fileRef = C00FD48F1938512100C6382D /* Runtime.cpp */; };\n\t\tC00FD49B1938512100C6382D /* Runtime.cpp in Sources */ = {isa = PBXBuildFile; fileRef = C00FD48F1938512100C6382D /* Runtime.cpp */; };\n\t\tC00FD49C1938512100C6382D /* Shine_png.cpp in Sources */ = {isa = PBXBuildFile; fileRef = C00FD4911938512100C6382D /* Shine_png.cpp */; };\n\t\tC00FD49D1938512100C6382D /* Shine_png.cpp in Sources */ = {isa = PBXBuildFile; fileRef = C00FD4911938512100C6382D /* Shine_png.cpp */; };\n\t\tC033B51C191B337200D06937 /* VisibleRect.cpp in Sources */ = {isa = PBXBuildFile; fileRef = C033B51A191B337200D06937 /* VisibleRect.cpp */; };\n\t\tC033B51D191B337200D06937 /* VisibleRect.cpp in Sources */ = {isa = PBXBuildFile; fileRef = C033B51A191B337200D06937 /* VisibleRect.cpp */; };\n\t\tC03781B918BF655400FE4F13 /* res in Resources */ = {isa = PBXBuildFile; fileRef = C03781B718BF655400FE4F13 /* res */; };\n\t\tC03781BA18BF655400FE4F13 /* res in Resources */ = {isa = PBXBuildFile; fileRef = C03781B718BF655400FE4F13 /* res */; };\n\t\tC03781BB18BF655400FE4F13 /* src in Resources */ = {isa = PBXBuildFile; fileRef = C03781B818BF655400FE4F13 /* src */; };\n\t\tC03781BC18BF655400FE4F13 /* src in Resources */ = {isa = PBXBuildFile; fileRef = C03781B818BF655400FE4F13 /* src */; };\n\t\tC05D1C121923449100B808A4 /* config.json in Resources */ = {isa = PBXBuildFile; fileRef = C05D1C111923449100B808A4 /* config.json */; };\n\t\tC05D1C131923449100B808A4 /* config.json in Resources */ = {isa = PBXBuildFile; fileRef = C05D1C111923449100B808A4 /* config.json */; };\n\t\tC0619CD71896894800872C26 /* Runtime_ios-mac.mm in Sources */ = {isa = PBXBuildFile; fileRef = C0619CD61896894800872C26 /* Runtime_ios-mac.mm */; };\n\t\tC0619CD81896894800872C26 /* Runtime_ios-mac.mm in Sources */ = {isa = PBXBuildFile; fileRef = C0619CD61896894800872C26 /* Runtime_ios-mac.mm */; };\n\t\tC06C3796191A1D1E00617BED /* ConfigParser.cpp in Sources */ = {isa = PBXBuildFile; fileRef = C06C3794191A1D1E00617BED /* ConfigParser.cpp */; };\n\t\tC06C3797191A1D1E00617BED /* ConfigParser.cpp in Sources */ = {isa = PBXBuildFile; fileRef = C06C3794191A1D1E00617BED /* ConfigParser.cpp */; };\n\t\tC07828F818B4D72E00BD2287 /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = C07828F418B4D72E00BD2287 /* main.m */; };\n\t\tC07828FA18B4D72E00BD2287 /* SimulatorApp.mm in Sources */ = {isa = PBXBuildFile; fileRef = C07828F718B4D72E00BD2287 /* SimulatorApp.mm */; };\n\t\tD6B061351803AC000077942B /* CoreMotion.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = D6B061341803AC000077942B /* CoreMotion.framework */; };\n\t\tF293B3CD15EB7BE500256477 /* QuartzCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F293B3CC15EB7BE500256477 /* QuartzCore.framework */; };\n\t\tF293B3D115EB7BE500256477 /* OpenAL.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F293B3D015EB7BE500256477 /* OpenAL.framework */; };\n\t\tF293B3D315EB7BE500256477 /* AudioToolbox.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F293B3D215EB7BE500256477 /* AudioToolbox.framework */; };\n\t\tF293B3D515EB7BE500256477 /* AVFoundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F293B3D415EB7BE500256477 /* AVFoundation.framework */; };\n\t\tF293B3D915EB7BE500256477 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F293B3D815EB7BE500256477 /* Foundation.framework */; };\n\t\tF293B3DB15EB7BE500256477 /* CoreGraphics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F293B3DA15EB7BE500256477 /* CoreGraphics.framework */; };\n\t\tF293BB9C15EB831F00256477 /* AppDelegate.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F293BB7E15EB831F00256477 /* AppDelegate.cpp */; };\n\t\tF405C6C919ED14AA005AD31C /* MainMenu.xib in Resources */ = {isa = PBXBuildFile; fileRef = F405C6CB19ED14AA005AD31C /* MainMenu.xib */; };\n/* End PBXBuildFile section */\n\n/* Begin PBXContainerItemProxy section */\n\t\t152A349E199CE72E004B68DC /* PBXContainerItemProxy */ = {\n\t\t\tisa = PBXContainerItemProxy;\n\t\t\tcontainerPortal = C03781AE18BF654500FE4F13 /* cocos2d_lua_bindings.xcodeproj */;\n\t\t\tproxyType = 1;\n\t\t\tremoteGlobalIDString = 15EFA59E198B2DAA000C57D3;\n\t\t\tremoteInfo = \"libluacocos2d iOS\";\n\t\t};\n\t\t152A34B8199CE758004B68DC /* PBXContainerItemProxy */ = {\n\t\t\tisa = PBXContainerItemProxy;\n\t\t\tcontainerPortal = C03781AE18BF654500FE4F13 /* cocos2d_lua_bindings.xcodeproj */;\n\t\t\tproxyType = 1;\n\t\t\tremoteGlobalIDString = 15C1C255198748D200A46ACC;\n\t\t\tremoteInfo = \"libluacocos2d Mac\";\n\t\t};\n\t\t15427CC1198F220600DC375D /* PBXContainerItemProxy */ = {\n\t\t\tisa = PBXContainerItemProxy;\n\t\t\tcontainerPortal = C03781AE18BF654500FE4F13 /* cocos2d_lua_bindings.xcodeproj */;\n\t\t\tproxyType = 2;\n\t\t\tremoteGlobalIDString = 15C1C2CC198748D200A46ACC;\n\t\t\tremoteInfo = \"libluacocos2d Mac\";\n\t\t};\n\t\t15427CD1198F220600DC375D /* PBXContainerItemProxy */ = {\n\t\t\tisa = PBXContainerItemProxy;\n\t\t\tcontainerPortal = C03781AE18BF654500FE4F13 /* cocos2d_lua_bindings.xcodeproj */;\n\t\t\tproxyType = 2;\n\t\t\tremoteGlobalIDString = 15EFA616198B2DAA000C57D3;\n\t\t\tremoteInfo = \"libluacocos2d iOS\";\n\t\t};\n\t\t15A8A4161834BDA200142BE0 /* PBXContainerItemProxy */ = {\n\t\t\tisa = PBXContainerItemProxy;\n\t\t\tcontainerPortal = 15A8A4031834BDA200142BE0 /* cocos2d_libs.xcodeproj */;\n\t\t\tproxyType = 2;\n\t\t\tremoteGlobalIDString = 1551A33F158F2AB200E66CFE;\n\t\t\tremoteInfo = \"cocos2dx Mac\";\n\t\t};\n\t\t15A8A4241834BDA200142BE0 /* PBXContainerItemProxy */ = {\n\t\t\tisa = PBXContainerItemProxy;\n\t\t\tcontainerPortal = 15A8A4031834BDA200142BE0 /* cocos2d_libs.xcodeproj */;\n\t\t\tproxyType = 2;\n\t\t\tremoteGlobalIDString = A07A4D641783777C0073F6A7;\n\t\t\tremoteInfo = \"cocos2dx iOS\";\n\t\t};\n\t\t15D1F3081994BBCA00302043 /* PBXContainerItemProxy */ = {\n\t\t\tisa = PBXContainerItemProxy;\n\t\t\tcontainerPortal = 15A8A4031834BDA200142BE0 /* cocos2d_libs.xcodeproj */;\n\t\t\tproxyType = 1;\n\t\t\tremoteGlobalIDString = A07A4C241783777C0073F6A7;\n\t\t\tremoteInfo = \"libcocos2d iOS\";\n\t\t};\n\t\tC0A2F04018975FF80072A7AB /* PBXContainerItemProxy */ = {\n\t\t\tisa = PBXContainerItemProxy;\n\t\t\tcontainerPortal = 15A8A4031834BDA200142BE0 /* cocos2d_libs.xcodeproj */;\n\t\t\tproxyType = 1;\n\t\t\tremoteGlobalIDString = 1551A33E158F2AB200E66CFE;\n\t\t\tremoteInfo = \"cocos2dx Mac\";\n\t\t};\n/* End PBXContainerItemProxy section */\n\n/* Begin PBXFileReference section */\n\t\t15427CE2198F237300DC375D /* lua_module_register.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = lua_module_register.h; path = ../Classes/lua_module_register.h; sourceTree = \"<group>\"; };\n\t\t15A8A4031834BDA200142BE0 /* cocos2d_libs.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = \"wrapper.pb-project\"; name = cocos2d_libs.xcodeproj; path = build/cocos2d_libs.xcodeproj; sourceTree = QUICK_V3_ROOT; };\n\t\t15A8A4871834C90E00142BE0 /* libcurl.dylib */ = {isa = PBXFileReference; lastKnownFileType = \"compiled.mach-o.dylib\"; name = libcurl.dylib; path = usr/lib/libcurl.dylib; sourceTree = SDKROOT; };\n\t\t15AA9646199B6D4600725633 /* lua_debugger.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = lua_debugger.c; sourceTree = \"<group>\"; };\n\t\t15AA9647199B6D4600725633 /* lua_debugger.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = lua_debugger.h; sourceTree = \"<group>\"; };\n\t\t15C1568D1683131500D239F2 /* libcurl.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libcurl.a; path = \"../../cocos2d-x/cocos2dx/platform/third_party/ios/libraries/libcurl.a\"; sourceTree = \"<group>\"; };\n\t\t1AF4C402178663F200122817 /* libz.dylib */ = {isa = PBXFileReference; lastKnownFileType = \"compiled.mach-o.dylib\"; name = libz.dylib; path = usr/lib/libz.dylib; sourceTree = SDKROOT; };\n\t\t3EB51526195187AF006966AA /* CFNetwork.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CFNetwork.framework; path = System/Library/Frameworks/CFNetwork.framework; sourceTree = SDKROOT; };\n\t\t3EB5152A19528284006966AA /* Protos.pb.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = Protos.pb.cc; sourceTree = \"<group>\"; };\n\t\t3EB5152B19528284006966AA /* Protos.pb.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Protos.pb.h; sourceTree = \"<group>\"; };\n\t\t3EEEDB60197107C0006A9FF8 /* MediaPlayer.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = MediaPlayer.framework; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS7.1.sdk/System/Library/Frameworks/MediaPlayer.framework; sourceTree = DEVELOPER_DIR; };\n\t\t49C656481A39A1A200603AF5 /* NVGDrawNode.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = NVGDrawNode.cpp; sourceTree = \"<group>\"; };\n\t\t49C656491A39A1A200603AF5 /* NVGDrawNode.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = NVGDrawNode.h; sourceTree = \"<group>\"; };\n\t\t49C6564A1A39A1A200603AF5 /* NVGNode.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = NVGNode.cpp; sourceTree = \"<group>\"; };\n\t\t49C6564B1A39A1A200603AF5 /* NVGNode.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = NVGNode.h; sourceTree = \"<group>\"; };\n\t\t49C6564D1A39A1A200603AF5 /* fontstash.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = fontstash.h; sourceTree = \"<group>\"; };\n\t\t49C6564E1A39A1A200603AF5 /* nanovg.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = nanovg.c; sourceTree = \"<group>\"; };\n\t\t49C6564F1A39A1A200603AF5 /* nanovg.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = nanovg.h; sourceTree = \"<group>\"; };\n\t\t49C656501A39A1A200603AF5 /* nanovg_gl.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = nanovg_gl.h; sourceTree = \"<group>\"; };\n\t\t49C656511A39A1A200603AF5 /* nanovg_gl_utils.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = nanovg_gl_utils.h; sourceTree = \"<group>\"; };\n\t\t49C656521A39A1A200603AF5 /* stb_image.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = stb_image.h; sourceTree = \"<group>\"; };\n\t\t49C656531A39A1A200603AF5 /* stb_truetype.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = stb_truetype.h; sourceTree = \"<group>\"; };\n\t\t49C6565A1A39A22400603AF5 /* lua_cocos2dx_extension_nanovg_auto.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = lua_cocos2dx_extension_nanovg_auto.cpp; path = \"quick/lib/quick-src/extra/luabinding/lua_cocos2dx_extension_nanovg_auto.cpp\"; sourceTree = QUICK_V3_ROOT; };\n\t\t49C6565B1A39A22400603AF5 /* lua_cocos2dx_extension_nanovg_auto.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = lua_cocos2dx_extension_nanovg_auto.hpp; path = \"quick/lib/quick-src/extra/luabinding/lua_cocos2dx_extension_nanovg_auto.hpp\"; sourceTree = QUICK_V3_ROOT; };\n\t\t49C6565C1A39A22400603AF5 /* lua_cocos2dx_extension_nanovg_manual.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = lua_cocos2dx_extension_nanovg_manual.cpp; path = \"quick/lib/quick-src/extra/luabinding/lua_cocos2dx_extension_nanovg_manual.cpp\"; sourceTree = QUICK_V3_ROOT; };\n\t\t49C6565D1A39A22400603AF5 /* lua_cocos2dx_extension_nanovg_manual.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = lua_cocos2dx_extension_nanovg_manual.hpp; path = \"quick/lib/quick-src/extra/luabinding/lua_cocos2dx_extension_nanovg_manual.hpp\"; sourceTree = QUICK_V3_ROOT; };\n\t\t5023810717EBBCAC00990C9B /* AppController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AppController.h; sourceTree = \"<group>\"; };\n\t\t5023810817EBBCAC00990C9B /* AppController.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = AppController.mm; sourceTree = \"<group>\"; };\n\t\t5023810917EBBCAC00990C9B /* Default-568h@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = \"Default-568h@2x.png\"; sourceTree = \"<group>\"; };\n\t\t5023810A17EBBCAC00990C9B /* Default.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Default.png; sourceTree = \"<group>\"; };\n\t\t5023810B17EBBCAC00990C9B /* Default@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = \"Default@2x.png\"; sourceTree = \"<group>\"; };\n\t\t5023810C17EBBCAC00990C9B /* Icon-114.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = \"Icon-114.png\"; sourceTree = \"<group>\"; };\n\t\t5023810D17EBBCAC00990C9B /* Icon-120.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = \"Icon-120.png\"; sourceTree = \"<group>\"; };\n\t\t5023810E17EBBCAC00990C9B /* Icon-144.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = \"Icon-144.png\"; sourceTree = \"<group>\"; };\n\t\t5023810F17EBBCAC00990C9B /* Icon-152.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = \"Icon-152.png\"; sourceTree = \"<group>\"; };\n\t\t5023811017EBBCAC00990C9B /* Icon-57.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = \"Icon-57.png\"; sourceTree = \"<group>\"; };\n\t\t5023811117EBBCAC00990C9B /* Icon-72.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = \"Icon-72.png\"; sourceTree = \"<group>\"; };\n\t\t5023811217EBBCAC00990C9B /* Icon-76.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = \"Icon-76.png\"; sourceTree = \"<group>\"; };\n\t\t5023811317EBBCAC00990C9B /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = \"<group>\"; };\n\t\t5023811417EBBCAC00990C9B /* main.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = main.m; sourceTree = \"<group>\"; };\n\t\t5023811517EBBCAC00990C9B /* Prefix.pch */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Prefix.pch; sourceTree = \"<group>\"; };\n\t\t5023811617EBBCAC00990C9B /* RootViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RootViewController.h; sourceTree = \"<group>\"; };\n\t\t5023811717EBBCAC00990C9B /* RootViewController.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = RootViewController.mm; sourceTree = \"<group>\"; };\n\t\t5023816B17EBBCE400990C9B /* mir9 Mac.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = \"mir9 Mac.app\"; sourceTree = BUILT_PRODUCTS_DIR; };\n\t\t5023817217EBBE3400990C9B /* Icon.icns */ = {isa = PBXFileReference; lastKnownFileType = image.icns; path = Icon.icns; sourceTree = \"<group>\"; };\n\t\t5023817317EBBE3400990C9B /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = \"<group>\"; };\n\t\t5023817517EBBE3400990C9B /* Prefix.pch */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Prefix.pch; sourceTree = \"<group>\"; };\n\t\t5023817917EBBE8300990C9B /* OpenGLES.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = OpenGLES.framework; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS7.0.sdk/System/Library/Frameworks/OpenGLES.framework; sourceTree = DEVELOPER_DIR; };\n\t\t50805AAE17EBBEAA004CFAD3 /* UIKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = UIKit.framework; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS7.0.sdk/System/Library/Frameworks/UIKit.framework; sourceTree = DEVELOPER_DIR; };\n\t\t5091733017ECE17A00D62437 /* Icon-29.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = \"Icon-29.png\"; sourceTree = \"<group>\"; };\n\t\t5091733117ECE17A00D62437 /* Icon-40.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = \"Icon-40.png\"; sourceTree = \"<group>\"; };\n\t\t5091733217ECE17A00D62437 /* Icon-50.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = \"Icon-50.png\"; sourceTree = \"<group>\"; };\n\t\t5091733317ECE17A00D62437 /* Icon-58.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = \"Icon-58.png\"; sourceTree = \"<group>\"; };\n\t\t5091733417ECE17A00D62437 /* Icon-80.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = \"Icon-80.png\"; sourceTree = \"<group>\"; };\n\t\t5091733517ECE17A00D62437 /* Icon-100.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = \"Icon-100.png\"; sourceTree = \"<group>\"; };\n\t\t50D7C96B17EBBEDF005D0B91 /* OpenGL.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = OpenGL.framework; path = System/Library/Frameworks/OpenGL.framework; sourceTree = SDKROOT; };\n\t\t50D7C96D17EBBEE6005D0B91 /* AppKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AppKit.framework; path = System/Library/Frameworks/AppKit.framework; sourceTree = SDKROOT; };\n\t\t50D7C96F17EBBEEC005D0B91 /* IOKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = IOKit.framework; path = System/Library/Frameworks/IOKit.framework; sourceTree = SDKROOT; };\n\t\t521A8E6E19F0C3D200D177D7 /* Default-667h@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = \"Default-667h@2x.png\"; sourceTree = \"<group>\"; };\n\t\t521A8E6F19F0C3D200D177D7 /* Default-736h@3x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = \"Default-736h@3x.png\"; sourceTree = \"<group>\"; };\n\t\t9F598A0719F5F3A6006015D6 /* SystemConfiguration.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = SystemConfiguration.framework; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS7.1.sdk/System/Library/Frameworks/SystemConfiguration.framework; sourceTree = DEVELOPER_DIR; };\n\t\t9F598A0A19F5F4F4006015D6 /* StoreKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = StoreKit.framework; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS7.1.sdk/System/Library/Frameworks/StoreKit.framework; sourceTree = DEVELOPER_DIR; };\n\t\t9F9105A719F5614800AD5CAB /* HelperFunc.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = HelperFunc.cpp; path = \"quick/lib/quick-src/extra/apptools/HelperFunc.cpp\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F9105A819F5614800AD5CAB /* HelperFunc.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = HelperFunc.h; path = \"quick/lib/quick-src/extra/apptools/HelperFunc.h\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F9105A919F5614800AD5CAB /* cocos2dx_extra.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = cocos2dx_extra.h; path = \"quick/lib/quick-src/extra/cocos2dx_extra.h\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F9105AC19F5614800AD5CAB /* libbase64.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = libbase64.c; path = \"quick/lib/quick-src/extra/crypto/base64/libbase64.c\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F9105AD19F5614800AD5CAB /* libbase64.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = libbase64.h; path = \"quick/lib/quick-src/extra/crypto/base64/libbase64.h\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F9105AE19F5614800AD5CAB /* CCCrypto.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = CCCrypto.cpp; path = \"quick/lib/quick-src/extra/crypto/CCCrypto.cpp\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F9105AF19F5614800AD5CAB /* CCCrypto.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = CCCrypto.h; path = \"quick/lib/quick-src/extra/crypto/CCCrypto.h\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F9105B119F5614800AD5CAB /* md5.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = md5.c; path = \"quick/lib/quick-src/extra/crypto/md5/md5.c\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F9105B219F5614800AD5CAB /* md5.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = md5.h; path = \"quick/lib/quick-src/extra/crypto/md5/md5.h\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F9105B519F5614800AD5CAB /* cocos2dFilters.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = cocos2dFilters.h; path = \"quick/lib/quick-src/extra/filters/cocos2dFilters.h\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F9105B719F5614800AD5CAB /* CCBlurFilter.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = CCBlurFilter.cpp; path = \"quick/lib/quick-src/extra/filters/filters/CCBlurFilter.cpp\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F9105B819F5614800AD5CAB /* CCBlurFilter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = CCBlurFilter.h; path = \"quick/lib/quick-src/extra/filters/filters/CCBlurFilter.h\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F9105B919F5614800AD5CAB /* CCBrightnessFilter.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = CCBrightnessFilter.cpp; path = \"quick/lib/quick-src/extra/filters/filters/CCBrightnessFilter.cpp\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F9105BA19F5614800AD5CAB /* CCBrightnessFilter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = CCBrightnessFilter.h; path = \"quick/lib/quick-src/extra/filters/filters/CCBrightnessFilter.h\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F9105BB19F5614800AD5CAB /* CCContrastFilter.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = CCContrastFilter.cpp; path = \"quick/lib/quick-src/extra/filters/filters/CCContrastFilter.cpp\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F9105BC19F5614800AD5CAB /* CCContrastFilter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = CCContrastFilter.h; path = \"quick/lib/quick-src/extra/filters/filters/CCContrastFilter.h\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F9105BD19F5614800AD5CAB /* CCCustomFilter.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = CCCustomFilter.cpp; path = \"quick/lib/quick-src/extra/filters/filters/CCCustomFilter.cpp\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F9105BE19F5614800AD5CAB /* CCCustomFilter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = CCCustomFilter.h; path = \"quick/lib/quick-src/extra/filters/filters/CCCustomFilter.h\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F9105BF19F5614800AD5CAB /* CCDropShadowFilter.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = CCDropShadowFilter.cpp; path = \"quick/lib/quick-src/extra/filters/filters/CCDropShadowFilter.cpp\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F9105C019F5614800AD5CAB /* CCDropShadowFilter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = CCDropShadowFilter.h; path = \"quick/lib/quick-src/extra/filters/filters/CCDropShadowFilter.h\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F9105C119F5614800AD5CAB /* CCExposureFilter.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = CCExposureFilter.cpp; path = \"quick/lib/quick-src/extra/filters/filters/CCExposureFilter.cpp\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F9105C219F5614800AD5CAB /* CCExposureFilter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = CCExposureFilter.h; path = \"quick/lib/quick-src/extra/filters/filters/CCExposureFilter.h\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F9105C319F5614800AD5CAB /* CCFilter.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = CCFilter.cpp; path = \"quick/lib/quick-src/extra/filters/filters/CCFilter.cpp\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F9105C419F5614800AD5CAB /* CCFilter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = CCFilter.h; path = \"quick/lib/quick-src/extra/filters/filters/CCFilter.h\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F9105C519F5614800AD5CAB /* CCGammaFilter.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = CCGammaFilter.cpp; path = \"quick/lib/quick-src/extra/filters/filters/CCGammaFilter.cpp\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F9105C619F5614800AD5CAB /* CCGammaFilter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = CCGammaFilter.h; path = \"quick/lib/quick-src/extra/filters/filters/CCGammaFilter.h\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F9105C719F5614800AD5CAB /* CCGrayFilter.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = CCGrayFilter.cpp; path = \"quick/lib/quick-src/extra/filters/filters/CCGrayFilter.cpp\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F9105C819F5614800AD5CAB /* CCGrayFilter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = CCGrayFilter.h; path = \"quick/lib/quick-src/extra/filters/filters/CCGrayFilter.h\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F9105C919F5614800AD5CAB /* CCHazeFilter.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = CCHazeFilter.cpp; path = \"quick/lib/quick-src/extra/filters/filters/CCHazeFilter.cpp\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F9105CA19F5614800AD5CAB /* CCHazeFilter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = CCHazeFilter.h; path = \"quick/lib/quick-src/extra/filters/filters/CCHazeFilter.h\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F9105CB19F5614800AD5CAB /* CCHueFilter.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = CCHueFilter.cpp; path = \"quick/lib/quick-src/extra/filters/filters/CCHueFilter.cpp\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F9105CC19F5614800AD5CAB /* CCHueFilter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = CCHueFilter.h; path = \"quick/lib/quick-src/extra/filters/filters/CCHueFilter.h\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F9105CD19F5614800AD5CAB /* CCMaskFilter.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = CCMaskFilter.cpp; path = \"quick/lib/quick-src/extra/filters/filters/CCMaskFilter.cpp\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F9105CE19F5614800AD5CAB /* CCMaskFilter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = CCMaskFilter.h; path = \"quick/lib/quick-src/extra/filters/filters/CCMaskFilter.h\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F9105CF19F5614800AD5CAB /* CCRGBFilter.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = CCRGBFilter.cpp; path = \"quick/lib/quick-src/extra/filters/filters/CCRGBFilter.cpp\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F9105D019F5614800AD5CAB /* CCRGBFilter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = CCRGBFilter.h; path = \"quick/lib/quick-src/extra/filters/filters/CCRGBFilter.h\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F9105D119F5614800AD5CAB /* CCSaturationFilter.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = CCSaturationFilter.cpp; path = \"quick/lib/quick-src/extra/filters/filters/CCSaturationFilter.cpp\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F9105D219F5614800AD5CAB /* CCSaturationFilter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = CCSaturationFilter.h; path = \"quick/lib/quick-src/extra/filters/filters/CCSaturationFilter.h\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F9105D319F5614800AD5CAB /* CCSepiaFilter.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = CCSepiaFilter.cpp; path = \"quick/lib/quick-src/extra/filters/filters/CCSepiaFilter.cpp\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F9105D419F5614800AD5CAB /* CCSepiaFilter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = CCSepiaFilter.h; path = \"quick/lib/quick-src/extra/filters/filters/CCSepiaFilter.h\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F9105D519F5614800AD5CAB /* CCSharpenFilter.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = CCSharpenFilter.cpp; path = \"quick/lib/quick-src/extra/filters/filters/CCSharpenFilter.cpp\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F9105D619F5614800AD5CAB /* CCSharpenFilter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = CCSharpenFilter.h; path = \"quick/lib/quick-src/extra/filters/filters/CCSharpenFilter.h\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F9105D719F5614800AD5CAB /* CCTestFilter.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = CCTestFilter.cpp; path = \"quick/lib/quick-src/extra/filters/filters/CCTestFilter.cpp\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F9105D819F5614800AD5CAB /* CCTestFilter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = CCTestFilter.h; path = \"quick/lib/quick-src/extra/filters/filters/CCTestFilter.h\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F9105DA19F5614800AD5CAB /* CCFilteredSprite.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = CCFilteredSprite.cpp; path = \"quick/lib/quick-src/extra/filters/nodes/CCFilteredSprite.cpp\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F9105DB19F5614800AD5CAB /* CCFilteredSprite.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = CCFilteredSprite.h; path = \"quick/lib/quick-src/extra/filters/nodes/CCFilteredSprite.h\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F9105DD19F5614800AD5CAB /* ccFilterShader_blur_frag.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = ccFilterShader_blur_frag.h; path = \"quick/lib/quick-src/extra/filters/shaders/ccFilterShader_blur_frag.h\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F9105DE19F5614800AD5CAB /* ccFilterShader_brightness_frag.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = ccFilterShader_brightness_frag.h; path = \"quick/lib/quick-src/extra/filters/shaders/ccFilterShader_brightness_frag.h\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F9105DF19F5614800AD5CAB /* ccFilterShader_colorramp_frag.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = ccFilterShader_colorramp_frag.h; path = \"quick/lib/quick-src/extra/filters/shaders/ccFilterShader_colorramp_frag.h\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F9105E019F5614800AD5CAB /* ccFilterShader_contrast_frag.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = ccFilterShader_contrast_frag.h; path = \"quick/lib/quick-src/extra/filters/shaders/ccFilterShader_contrast_frag.h\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F9105E119F5614800AD5CAB /* ccFilterShader_drop_shadow_frag.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = ccFilterShader_drop_shadow_frag.h; path = \"quick/lib/quick-src/extra/filters/shaders/ccFilterShader_drop_shadow_frag.h\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F9105E219F5614800AD5CAB /* ccFilterShader_drop_shadow_vert.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = ccFilterShader_drop_shadow_vert.h; path = \"quick/lib/quick-src/extra/filters/shaders/ccFilterShader_drop_shadow_vert.h\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F9105E319F5614800AD5CAB /* ccFilterShader_emboss_frag.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = ccFilterShader_emboss_frag.h; path = \"quick/lib/quick-src/extra/filters/shaders/ccFilterShader_emboss_frag.h\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F9105E419F5614800AD5CAB /* ccFilterShader_embossmov_frag.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = ccFilterShader_embossmov_frag.h; path = \"quick/lib/quick-src/extra/filters/shaders/ccFilterShader_embossmov_frag.h\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F9105E519F5614800AD5CAB /* ccFilterShader_exposure_frag.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = ccFilterShader_exposure_frag.h; path = \"quick/lib/quick-src/extra/filters/shaders/ccFilterShader_exposure_frag.h\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F9105E619F5614800AD5CAB /* ccFilterShader_gamma_frag.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = ccFilterShader_gamma_frag.h; path = \"quick/lib/quick-src/extra/filters/shaders/ccFilterShader_gamma_frag.h\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F9105E719F5614800AD5CAB /* ccFilterShader_gaussian_blur_frag.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = ccFilterShader_gaussian_blur_frag.h; path = \"quick/lib/quick-src/extra/filters/shaders/ccFilterShader_gaussian_blur_frag.h\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F9105E819F5614800AD5CAB /* ccFilterShader_gaussian_hblur_frag.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = ccFilterShader_gaussian_hblur_frag.h; path = \"quick/lib/quick-src/extra/filters/shaders/ccFilterShader_gaussian_hblur_frag.h\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F9105E919F5614800AD5CAB /* ccFilterShader_gaussian_vblur_frag.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = ccFilterShader_gaussian_vblur_frag.h; path = \"quick/lib/quick-src/extra/filters/shaders/ccFilterShader_gaussian_vblur_frag.h\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F9105EA19F5614800AD5CAB /* ccFilterShader_grass_frag.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = ccFilterShader_grass_frag.h; path = \"quick/lib/quick-src/extra/filters/shaders/ccFilterShader_grass_frag.h\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F9105EB19F5614800AD5CAB /* ccFilterShader_gray_frag.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = ccFilterShader_gray_frag.h; path = \"quick/lib/quick-src/extra/filters/shaders/ccFilterShader_gray_frag.h\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F9105EC19F5614800AD5CAB /* ccFilterShader_haze_frag.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = ccFilterShader_haze_frag.h; path = \"quick/lib/quick-src/extra/filters/shaders/ccFilterShader_haze_frag.h\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F9105ED19F5614800AD5CAB /* ccFilterShader_hblur_vert.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = ccFilterShader_hblur_vert.h; path = \"quick/lib/quick-src/extra/filters/shaders/ccFilterShader_hblur_vert.h\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F9105EE19F5614800AD5CAB /* ccFilterShader_hue_frag.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = ccFilterShader_hue_frag.h; path = \"quick/lib/quick-src/extra/filters/shaders/ccFilterShader_hue_frag.h\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F9105EF19F5614800AD5CAB /* ccFilterShader_motion_blur_frag.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = ccFilterShader_motion_blur_frag.h; path = \"quick/lib/quick-src/extra/filters/shaders/ccFilterShader_motion_blur_frag.h\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F9105F019F5614800AD5CAB /* ccFilterShader_motion_blur_vert.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = ccFilterShader_motion_blur_vert.h; path = \"quick/lib/quick-src/extra/filters/shaders/ccFilterShader_motion_blur_vert.h\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F9105F119F5614800AD5CAB /* ccFilterShader_rgb_frag.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = ccFilterShader_rgb_frag.h; path = \"quick/lib/quick-src/extra/filters/shaders/ccFilterShader_rgb_frag.h\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F9105F219F5614800AD5CAB /* ccFilterShader_saturation_frag.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = ccFilterShader_saturation_frag.h; path = \"quick/lib/quick-src/extra/filters/shaders/ccFilterShader_saturation_frag.h\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F9105F319F5614800AD5CAB /* ccFilterShader_sepia_frag.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = ccFilterShader_sepia_frag.h; path = \"quick/lib/quick-src/extra/filters/shaders/ccFilterShader_sepia_frag.h\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F9105F419F5614800AD5CAB /* ccFilterShader_sharpen_frag.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = ccFilterShader_sharpen_frag.h; path = \"quick/lib/quick-src/extra/filters/shaders/ccFilterShader_sharpen_frag.h\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F9105F519F5614800AD5CAB /* ccFilterShader_sharpen_vert.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = ccFilterShader_sharpen_vert.h; path = \"quick/lib/quick-src/extra/filters/shaders/ccFilterShader_sharpen_vert.h\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F9105F619F5614800AD5CAB /* ccFilterShader_test_frag.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = ccFilterShader_test_frag.h; path = \"quick/lib/quick-src/extra/filters/shaders/ccFilterShader_test_frag.h\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F9105F719F5614800AD5CAB /* ccFilterShader_test_vert.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = ccFilterShader_test_vert.h; path = \"quick/lib/quick-src/extra/filters/shaders/ccFilterShader_test_vert.h\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F9105F819F5614800AD5CAB /* ccFilterShader_vblur_vert.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = ccFilterShader_vblur_vert.h; path = \"quick/lib/quick-src/extra/filters/shaders/ccFilterShader_vblur_vert.h\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F9105F919F5614800AD5CAB /* ccFilterShader_zoom_blur_frag.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = ccFilterShader_zoom_blur_frag.h; path = \"quick/lib/quick-src/extra/filters/shaders/ccFilterShader_zoom_blur_frag.h\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F9105FA19F5614800AD5CAB /* ccFilterShaders.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = ccFilterShaders.cpp; path = \"quick/lib/quick-src/extra/filters/shaders/ccFilterShaders.cpp\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F9105FB19F5614800AD5CAB /* ccFilterShaders.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = ccFilterShaders.h; path = \"quick/lib/quick-src/extra/filters/shaders/ccFilterShaders.h\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F9105FC19F5614800AD5CAB /* example_bloom.fsh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.glsl; name = example_bloom.fsh; path = \"quick/lib/quick-src/extra/filters/shaders/example_bloom.fsh\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F9105FD19F5614800AD5CAB /* example_Blur.fsh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.glsl; name = example_Blur.fsh; path = \"quick/lib/quick-src/extra/filters/shaders/example_Blur.fsh\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F9105FE19F5614800AD5CAB /* example_celShading.fsh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.glsl; name = example_celShading.fsh; path = \"quick/lib/quick-src/extra/filters/shaders/example_celShading.fsh\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F9105FF19F5614800AD5CAB /* example_ColorBars.fsh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.glsl; name = example_ColorBars.fsh; path = \"quick/lib/quick-src/extra/filters/shaders/example_ColorBars.fsh\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F91060019F5614800AD5CAB /* example_ColorBars.vsh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.glsl; name = example_ColorBars.vsh; path = \"quick/lib/quick-src/extra/filters/shaders/example_ColorBars.vsh\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F91060119F5614800AD5CAB /* example_edgeDetection.fsh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.glsl; name = example_edgeDetection.fsh; path = \"quick/lib/quick-src/extra/filters/shaders/example_edgeDetection.fsh\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F91060219F5614800AD5CAB /* example_Flower.fsh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.glsl; name = example_Flower.fsh; path = \"quick/lib/quick-src/extra/filters/shaders/example_Flower.fsh\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F91060319F5614800AD5CAB /* example_greyScale.fsh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.glsl; name = example_greyScale.fsh; path = \"quick/lib/quick-src/extra/filters/shaders/example_greyScale.fsh\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F91060419F5614800AD5CAB /* example_Heart.fsh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.glsl; name = example_Heart.fsh; path = \"quick/lib/quick-src/extra/filters/shaders/example_Heart.fsh\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F91060519F5614800AD5CAB /* example_HorizontalColor.fsh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.glsl; name = example_HorizontalColor.fsh; path = \"quick/lib/quick-src/extra/filters/shaders/example_HorizontalColor.fsh\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F91060619F5614800AD5CAB /* example_Julia.fsh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.glsl; name = example_Julia.fsh; path = \"quick/lib/quick-src/extra/filters/shaders/example_Julia.fsh\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F91060719F5614800AD5CAB /* example_lensFlare.fsh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.glsl; name = example_lensFlare.fsh; path = \"quick/lib/quick-src/extra/filters/shaders/example_lensFlare.fsh\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F91060819F5614800AD5CAB /* example_Mandelbrot.fsh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.glsl; name = example_Mandelbrot.fsh; path = \"quick/lib/quick-src/extra/filters/shaders/example_Mandelbrot.fsh\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F91060919F5614800AD5CAB /* example_Monjori.fsh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.glsl; name = example_Monjori.fsh; path = \"quick/lib/quick-src/extra/filters/shaders/example_Monjori.fsh\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F91060A19F5614800AD5CAB /* example_MultiTexture.fsh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.glsl; name = example_MultiTexture.fsh; path = \"quick/lib/quick-src/extra/filters/shaders/example_MultiTexture.fsh\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F91060B19F5614800AD5CAB /* example_MultiTexture.vsh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.glsl; name = example_MultiTexture.vsh; path = \"quick/lib/quick-src/extra/filters/shaders/example_MultiTexture.vsh\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F91060C19F5614800AD5CAB /* example_Noisy.fsh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.glsl; name = example_Noisy.fsh; path = \"quick/lib/quick-src/extra/filters/shaders/example_Noisy.fsh\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F91060D19F5614800AD5CAB /* example_normal.fsh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.glsl; name = example_normal.fsh; path = \"quick/lib/quick-src/extra/filters/shaders/example_normal.fsh\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F91060E19F5614800AD5CAB /* example_outline.fsh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.glsl; name = example_outline.fsh; path = \"quick/lib/quick-src/extra/filters/shaders/example_outline.fsh\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F91060F19F5614800AD5CAB /* example_Plasma.fsh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.glsl; name = example_Plasma.fsh; path = \"quick/lib/quick-src/extra/filters/shaders/example_Plasma.fsh\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F91061019F5614800AD5CAB /* example_sepia.fsh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.glsl; name = example_sepia.fsh; path = \"quick/lib/quick-src/extra/filters/shaders/example_sepia.fsh\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F91061119F5614800AD5CAB /* example_Twist.fsh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.glsl; name = example_Twist.fsh; path = \"quick/lib/quick-src/extra/filters/shaders/example_Twist.fsh\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F91061219F5614800AD5CAB /* FilterShaders.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = FilterShaders.cpp; path = \"quick/lib/quick-src/extra/filters/shaders/FilterShaders.cpp\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F91061319F5614800AD5CAB /* FilterShaders.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = FilterShaders.h; path = \"quick/lib/quick-src/extra/filters/shaders/FilterShaders.h\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F91061419F5614800AD5CAB /* shadertoy_FireBall.fsh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.glsl; name = shadertoy_FireBall.fsh; path = \"quick/lib/quick-src/extra/filters/shaders/shadertoy_FireBall.fsh\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F91061519F5614800AD5CAB /* shadertoy_Glow.fsh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.glsl; name = shadertoy_Glow.fsh; path = \"quick/lib/quick-src/extra/filters/shaders/shadertoy_Glow.fsh\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F91061619F5614800AD5CAB /* shadertoy_LensFlare.fsh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.glsl; name = shadertoy_LensFlare.fsh; path = \"quick/lib/quick-src/extra/filters/shaders/shadertoy_LensFlare.fsh\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F91061A19F5614800AD5CAB /* cocos2dx_extra_ios_iap_luabinding.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = cocos2dx_extra_ios_iap_luabinding.cpp; path = \"quick/lib/quick-src/extra/luabinding/cocos2dx_extra_ios_iap_luabinding.cpp\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F91061B19F5614800AD5CAB /* cocos2dx_extra_ios_iap_luabinding.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = cocos2dx_extra_ios_iap_luabinding.h; path = \"quick/lib/quick-src/extra/luabinding/cocos2dx_extra_ios_iap_luabinding.h\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F91061D19F5614800AD5CAB /* cocos2dx_extra_luabinding.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = cocos2dx_extra_luabinding.cpp; path = \"quick/lib/quick-src/extra/luabinding/cocos2dx_extra_luabinding.cpp\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F91061E19F5614800AD5CAB /* cocos2dx_extra_luabinding.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = cocos2dx_extra_luabinding.h; path = \"quick/lib/quick-src/extra/luabinding/cocos2dx_extra_luabinding.h\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F91062019F5614800AD5CAB /* HelperFunc_luabinding.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = HelperFunc_luabinding.cpp; path = \"quick/lib/quick-src/extra/luabinding/HelperFunc_luabinding.cpp\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F91062119F5614800AD5CAB /* HelperFunc_luabinding.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = HelperFunc_luabinding.h; path = \"quick/lib/quick-src/extra/luabinding/HelperFunc_luabinding.h\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F91062419F5614800AD5CAB /* CCAlertViewDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = CCAlertViewDelegate.h; path = \"quick/lib/quick-src/extra/native/CCAlertViewDelegate.h\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F91062519F5614800AD5CAB /* CCNative.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = CCNative.h; path = \"quick/lib/quick-src/extra/native/CCNative.h\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F91062719F5614800AD5CAB /* CCHTTPRequest.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = CCHTTPRequest.cpp; path = \"quick/lib/quick-src/extra/network/CCHTTPRequest.cpp\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F91062819F5614800AD5CAB /* CCHTTPRequest.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = CCHTTPRequest.h; path = \"quick/lib/quick-src/extra/network/CCHTTPRequest.h\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F91062919F5614800AD5CAB /* CCHTTPRequestDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = CCHTTPRequestDelegate.h; path = \"quick/lib/quick-src/extra/network/CCHTTPRequestDelegate.h\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F91062A19F5614800AD5CAB /* CCNetwork.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = CCNetwork.cpp; path = \"quick/lib/quick-src/extra/network/CCNetwork.cpp\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F91062B19F5614800AD5CAB /* CCNetwork.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = CCNetwork.h; path = \"quick/lib/quick-src/extra/network/CCNetwork.h\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F91063319F5614800AD5CAB /* CCCryptoIOS.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = CCCryptoIOS.mm; path = \"quick/lib/quick-src/extra/platform/ios/CCCryptoIOS.mm\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F91063419F5614800AD5CAB /* CCNative.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = CCNative.mm; path = \"quick/lib/quick-src/extra/platform/ios/CCNative.mm\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F91063519F5614800AD5CAB /* CCNativeIOS.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = CCNativeIOS.h; path = \"quick/lib/quick-src/extra/platform/ios/CCNativeIOS.h\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F91063619F5614800AD5CAB /* CCNativeIOS.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = CCNativeIOS.mm; path = \"quick/lib/quick-src/extra/platform/ios/CCNativeIOS.mm\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F91063719F5614800AD5CAB /* CCStore.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = CCStore.mm; path = \"quick/lib/quick-src/extra/platform/ios/CCStore.mm\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F91063819F5614800AD5CAB /* CCStoreIOS.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = CCStoreIOS.h; path = \"quick/lib/quick-src/extra/platform/ios/CCStoreIOS.h\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F91063919F5614800AD5CAB /* CCStoreIOS.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = CCStoreIOS.mm; path = \"quick/lib/quick-src/extra/platform/ios/CCStoreIOS.mm\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F91063A19F5614800AD5CAB /* CCStorePaymentTransactionWrapper.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = CCStorePaymentTransactionWrapper.mm; path = \"quick/lib/quick-src/extra/platform/ios/CCStorePaymentTransactionWrapper.mm\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F91063B19F5614800AD5CAB /* CCStoreReceiptVerifyRequestIOS.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = CCStoreReceiptVerifyRequestIOS.h; path = \"quick/lib/quick-src/extra/platform/ios/CCStoreReceiptVerifyRequestIOS.h\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F91063C19F5614800AD5CAB /* CCStoreReceiptVerifyRequestIOS.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = CCStoreReceiptVerifyRequestIOS.mm; path = \"quick/lib/quick-src/extra/platform/ios/CCStoreReceiptVerifyRequestIOS.mm\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F91063E19F5614800AD5CAB /* SBJSON.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SBJSON.h; path = \"quick/lib/quick-src/extra/platform/ios/json/SBJSON.h\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F91063F19F5614800AD5CAB /* SBJSON.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = SBJSON.m; path = \"quick/lib/quick-src/extra/platform/ios/json/SBJSON.m\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F91064019F5614800AD5CAB /* SBJsonBase.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SBJsonBase.h; path = \"quick/lib/quick-src/extra/platform/ios/json/SBJsonBase.h\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F91064119F5614800AD5CAB /* SBJsonBase.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = SBJsonBase.m; path = \"quick/lib/quick-src/extra/platform/ios/json/SBJsonBase.m\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F91064219F5614800AD5CAB /* SBJsonParser.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SBJsonParser.h; path = \"quick/lib/quick-src/extra/platform/ios/json/SBJsonParser.h\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F91064319F5614800AD5CAB /* SBJsonParser.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = SBJsonParser.m; path = \"quick/lib/quick-src/extra/platform/ios/json/SBJsonParser.m\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F91064419F5614800AD5CAB /* SBJsonWriter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SBJsonWriter.h; path = \"quick/lib/quick-src/extra/platform/ios/json/SBJsonWriter.h\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F91064519F5614800AD5CAB /* SBJsonWriter.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = SBJsonWriter.m; path = \"quick/lib/quick-src/extra/platform/ios/json/SBJsonWriter.m\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F91064719F5614800AD5CAB /* OpenUDIDIOS.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = OpenUDIDIOS.h; path = \"quick/lib/quick-src/extra/platform/ios/openudid/OpenUDIDIOS.h\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F91064819F5614800AD5CAB /* OpenUDIDIOS.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = OpenUDIDIOS.m; path = \"quick/lib/quick-src/extra/platform/ios/openudid/OpenUDIDIOS.m\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F91064A19F5614800AD5CAB /* CCNetworkIOSMac.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = CCNetworkIOSMac.mm; path = \"quick/lib/quick-src/extra/platform/ios_mac/CCNetworkIOSMac.mm\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F91064B19F5614800AD5CAB /* ReachabilityIOSMac.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = ReachabilityIOSMac.h; path = \"quick/lib/quick-src/extra/platform/ios_mac/ReachabilityIOSMac.h\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F91064C19F5614800AD5CAB /* ReachabilityIOSMac.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = ReachabilityIOSMac.m; path = \"quick/lib/quick-src/extra/platform/ios_mac/ReachabilityIOSMac.m\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F91064E19F5614800AD5CAB /* CCCryptoMac.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = CCCryptoMac.mm; path = \"quick/lib/quick-src/extra/platform/mac/CCCryptoMac.mm\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F91064F19F5614800AD5CAB /* CCNative.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = CCNative.mm; path = \"quick/lib/quick-src/extra/platform/mac/CCNative.mm\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F91065019F5614800AD5CAB /* CCNativeMac.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = CCNativeMac.h; path = \"quick/lib/quick-src/extra/platform/mac/CCNativeMac.h\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F91065119F5614800AD5CAB /* CCNativeMac.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = CCNativeMac.mm; path = \"quick/lib/quick-src/extra/platform/mac/CCNativeMac.mm\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F91065319F5614800AD5CAB /* OpenUDIDMac.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = OpenUDIDMac.h; path = \"quick/lib/quick-src/extra/platform/mac/openudid/OpenUDIDMac.h\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F91065419F5614800AD5CAB /* OpenUDIDMac.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = OpenUDIDMac.m; path = \"quick/lib/quick-src/extra/platform/mac/openudid/OpenUDIDMac.m\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F91066219F5614800AD5CAB /* CCStore.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = CCStore.h; path = \"quick/lib/quick-src/extra/store/CCStore.h\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F91066319F5614800AD5CAB /* CCStorePaymentTransaction.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = CCStorePaymentTransaction.cpp; path = \"quick/lib/quick-src/extra/store/CCStorePaymentTransaction.cpp\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F91066419F5614800AD5CAB /* CCStorePaymentTransaction.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = CCStorePaymentTransaction.h; path = \"quick/lib/quick-src/extra/store/CCStorePaymentTransaction.h\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F91066519F5614800AD5CAB /* CCStorePaymentTransactionWrapper.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = CCStorePaymentTransactionWrapper.h; path = \"quick/lib/quick-src/extra/store/CCStorePaymentTransactionWrapper.h\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F91066619F5614800AD5CAB /* CCStoreProduct.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = CCStoreProduct.cpp; path = \"quick/lib/quick-src/extra/store/CCStoreProduct.cpp\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F91066719F5614800AD5CAB /* CCStoreProduct.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = CCStoreProduct.h; path = \"quick/lib/quick-src/extra/store/CCStoreProduct.h\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F91066819F5614800AD5CAB /* CCStoreProductsRequestDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = CCStoreProductsRequestDelegate.h; path = \"quick/lib/quick-src/extra/store/CCStoreProductsRequestDelegate.h\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F91066919F5614800AD5CAB /* CCStoreTransactionObserver.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = CCStoreTransactionObserver.h; path = \"quick/lib/quick-src/extra/store/CCStoreTransactionObserver.h\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F91066D19F5614800AD5CAB /* fpconv.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = fpconv.c; path = \"quick/lib/quick-src/lua_extensions/cjson/fpconv.c\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F91066E19F5614800AD5CAB /* fpconv.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = fpconv.h; path = \"quick/lib/quick-src/lua_extensions/cjson/fpconv.h\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F91066F19F5614800AD5CAB /* lua_cjson.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = lua_cjson.c; path = \"quick/lib/quick-src/lua_extensions/cjson/lua_cjson.c\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F91067019F5614800AD5CAB /* lua_cjson.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = lua_cjson.h; path = \"quick/lib/quick-src/lua_extensions/cjson/lua_cjson.h\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F91067119F5614800AD5CAB /* strbuf.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = strbuf.c; path = \"quick/lib/quick-src/lua_extensions/cjson/strbuf.c\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F91067219F5614800AD5CAB /* strbuf.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = strbuf.h; path = \"quick/lib/quick-src/lua_extensions/cjson/strbuf.h\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F91067819F5614800AD5CAB /* lfs.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = lfs.c; path = \"quick/lib/quick-src/lua_extensions/filesystem/lfs.c\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F91067919F5614800AD5CAB /* lfs.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = lfs.h; path = \"quick/lib/quick-src/lua_extensions/filesystem/lfs.h\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F91067B19F5614800AD5CAB /* lpack.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = lpack.c; path = \"quick/lib/quick-src/lua_extensions/lpack/lpack.c\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F91067C19F5614800AD5CAB /* lpack.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = lpack.h; path = \"quick/lib/quick-src/lua_extensions/lpack/lpack.h\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F91067E19F5614800AD5CAB /* lsqlite3.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = lsqlite3.c; path = \"quick/lib/quick-src/lua_extensions/lsqlite3/lsqlite3.c\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F91067F19F5614800AD5CAB /* lsqlite3.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = lsqlite3.h; path = \"quick/lib/quick-src/lua_extensions/lsqlite3/lsqlite3.h\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F91068019F5614800AD5CAB /* sqlite3.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = sqlite3.c; path = \"quick/lib/quick-src/lua_extensions/lsqlite3/sqlite3.c\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F91068119F5614800AD5CAB /* sqlite3.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = sqlite3.h; path = \"quick/lib/quick-src/lua_extensions/lsqlite3/sqlite3.h\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F91068219F5614800AD5CAB /* lua_extensions_more.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = lua_extensions_more.c; path = \"quick/lib/quick-src/lua_extensions/lua_extensions_more.c\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F91068319F5614800AD5CAB /* lua_extensions_more.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = lua_extensions_more.h; path = \"quick/lib/quick-src/lua_extensions/lua_extensions_more.h\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F91068519F5614800AD5CAB /* lua_zlib.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = lua_zlib.c; path = \"quick/lib/quick-src/lua_extensions/zlib/lua_zlib.c\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F91068619F5614800AD5CAB /* lua_zlib.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = lua_zlib.h; path = \"quick/lib/quick-src/lua_extensions/zlib/lua_zlib.h\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F91078819F5628A00AD5CAB /* SystemConfiguration.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = SystemConfiguration.framework; path = System/Library/Frameworks/SystemConfiguration.framework; sourceTree = SDKROOT; };\n\t\t9F91078B19F5658D00AD5CAB /* lua_cocos2dx_extension_filter_auto.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = lua_cocos2dx_extension_filter_auto.cpp; path = \"quick/lib/quick-src/extra/luabinding/lua_cocos2dx_extension_filter_auto.cpp\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F91078C19F5658D00AD5CAB /* lua_cocos2dx_extension_filter_auto.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = lua_cocos2dx_extension_filter_auto.hpp; path = \"quick/lib/quick-src/extra/luabinding/lua_cocos2dx_extension_filter_auto.hpp\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F91079019F56A6600AD5CAB /* ProjectConfig.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = ProjectConfig.cpp; path = \"quick/lib/quick-src/ProjectConfig/ProjectConfig.cpp\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F91079119F56A6600AD5CAB /* ProjectConfig.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = ProjectConfig.h; path = \"quick/lib/quick-src/ProjectConfig/ProjectConfig.h\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F91079219F56A6600AD5CAB /* SimulatorConfig.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SimulatorConfig.cpp; path = \"quick/lib/quick-src/ProjectConfig/SimulatorConfig.cpp\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F91079319F56A6600AD5CAB /* SimulatorConfig.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SimulatorConfig.h; path = \"quick/lib/quick-src/ProjectConfig/SimulatorConfig.h\"; sourceTree = QUICK_V3_ROOT; };\n\t\t9F91079B19F5704400AD5CAB /* ConsoleWindow.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; path = ConsoleWindow.xib; sourceTree = \"<group>\"; };\n\t\t9F91079C19F5704400AD5CAB /* ConsoleWindowController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ConsoleWindowController.h; sourceTree = \"<group>\"; };\n\t\t9F91079D19F5704400AD5CAB /* ConsoleWindowController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ConsoleWindowController.m; sourceTree = \"<group>\"; };\n\t\tAB6CB6EC1A1F275E009C2562 /* ConnectWaitLayer.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ConnectWaitLayer.cpp; sourceTree = \"<group>\"; };\n\t\tAB6CB6ED1A1F275E009C2562 /* ConnectWaitLayer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ConnectWaitLayer.h; sourceTree = \"<group>\"; };\n\t\tAB6CB6EE1A1F275E009C2562 /* ConsoleCommand.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ConsoleCommand.cpp; sourceTree = \"<group>\"; };\n\t\tAB6CB6EF1A1F275E009C2562 /* ConsoleCommand.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ConsoleCommand.h; sourceTree = \"<group>\"; };\n\t\tAB6CB6F01A1F275E009C2562 /* FileServer.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = FileServer.cpp; sourceTree = \"<group>\"; };\n\t\tAB6CB6F11A1F275E009C2562 /* FileServer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FileServer.h; sourceTree = \"<group>\"; };\n\t\tC00FD48A1938512100C6382D /* Landscape_png.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = Landscape_png.cpp; sourceTree = \"<group>\"; };\n\t\tC00FD48B1938512100C6382D /* PlayDisable_png.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = PlayDisable_png.cpp; sourceTree = \"<group>\"; };\n\t\tC00FD48C1938512100C6382D /* PlayEnable_png.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = PlayEnable_png.cpp; sourceTree = \"<group>\"; };\n\t\tC00FD48D1938512100C6382D /* Portrait_png.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = Portrait_png.cpp; sourceTree = \"<group>\"; };\n\t\tC00FD48E1938512100C6382D /* ResData.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ResData.h; sourceTree = \"<group>\"; };\n\t\tC00FD48F1938512100C6382D /* Runtime.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = Runtime.cpp; sourceTree = \"<group>\"; };\n\t\tC00FD4901938512100C6382D /* Runtime.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Runtime.h; sourceTree = \"<group>\"; };\n\t\tC00FD4911938512100C6382D /* Shine_png.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = Shine_png.cpp; sourceTree = \"<group>\"; };\n\t\tC033B51A191B337200D06937 /* VisibleRect.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = VisibleRect.cpp; path = ../Classes/VisibleRect.cpp; sourceTree = \"<group>\"; };\n\t\tC033B51B191B337200D06937 /* VisibleRect.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = VisibleRect.h; path = ../Classes/VisibleRect.h; sourceTree = \"<group>\"; };\n\t\tC03781AE18BF654500FE4F13 /* cocos2d_lua_bindings.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = \"wrapper.pb-project\"; name = cocos2d_lua_bindings.xcodeproj; path = \"cocos/scripting/lua-bindings/proj.ios_mac/cocos2d_lua_bindings.xcodeproj\"; sourceTree = QUICK_V3_ROOT; };\n\t\tC03781B718BF655400FE4F13 /* res */ = {isa = PBXFileReference; lastKnownFileType = folder; name = res; path = ../../../res; sourceTree = \"<group>\"; };\n\t\tC03781B818BF655400FE4F13 /* src */ = {isa = PBXFileReference; lastKnownFileType = folder; name = src; path = ../../../src; sourceTree = \"<group>\"; };\n\t\tC05D1C111923449100B808A4 /* config.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; name = config.json; path = ../../../config.json; sourceTree = \"<group>\"; };\n\t\tC0619CD61896894800872C26 /* Runtime_ios-mac.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = \"Runtime_ios-mac.mm\"; sourceTree = \"<group>\"; };\n\t\tC06C3794191A1D1E00617BED /* ConfigParser.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = ConfigParser.cpp; path = ../Classes/ConfigParser.cpp; sourceTree = \"<group>\"; };\n\t\tC06C3795191A1D1E00617BED /* ConfigParser.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = ConfigParser.h; path = ../Classes/ConfigParser.h; sourceTree = \"<group>\"; };\n\t\tC07828F418B4D72E00BD2287 /* main.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = main.m; sourceTree = \"<group>\"; };\n\t\tC07828F618B4D72E00BD2287 /* SimulatorApp.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SimulatorApp.h; sourceTree = \"<group>\"; };\n\t\tC07828F718B4D72E00BD2287 /* SimulatorApp.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = SimulatorApp.mm; sourceTree = \"<group>\"; };\n\t\tD6B061341803AC000077942B /* CoreMotion.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreMotion.framework; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS7.0.sdk/System/Library/Frameworks/CoreMotion.framework; sourceTree = DEVELOPER_DIR; };\n\t\tF293B3C815EB7BE500256477 /* mir9 iOS.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = \"mir9 iOS.app\"; sourceTree = BUILT_PRODUCTS_DIR; };\n\t\tF293B3CC15EB7BE500256477 /* QuartzCore.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = QuartzCore.framework; path = System/Library/Frameworks/QuartzCore.framework; sourceTree = SDKROOT; };\n\t\tF293B3CE15EB7BE500256477 /* OpenGLES.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = OpenGLES.framework; path = System/Library/Frameworks/OpenGLES.framework; sourceTree = SDKROOT; };\n\t\tF293B3D015EB7BE500256477 /* OpenAL.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = OpenAL.framework; path = System/Library/Frameworks/OpenAL.framework; sourceTree = SDKROOT; };\n\t\tF293B3D215EB7BE500256477 /* AudioToolbox.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AudioToolbox.framework; path = System/Library/Frameworks/AudioToolbox.framework; sourceTree = SDKROOT; };\n\t\tF293B3D415EB7BE500256477 /* AVFoundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AVFoundation.framework; path = System/Library/Frameworks/AVFoundation.framework; sourceTree = SDKROOT; };\n\t\tF293B3D615EB7BE500256477 /* UIKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = UIKit.framework; path = System/Library/Frameworks/UIKit.framework; sourceTree = SDKROOT; };\n\t\tF293B3D815EB7BE500256477 /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = System/Library/Frameworks/Foundation.framework; sourceTree = SDKROOT; };\n\t\tF293B3DA15EB7BE500256477 /* CoreGraphics.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreGraphics.framework; path = System/Library/Frameworks/CoreGraphics.framework; sourceTree = SDKROOT; };\n\t\tF293BB7E15EB831F00256477 /* AppDelegate.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = AppDelegate.cpp; path = ../Classes/AppDelegate.cpp; sourceTree = \"<group>\"; };\n\t\tF293BB7F15EB831F00256477 /* AppDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = AppDelegate.h; path = ../Classes/AppDelegate.h; sourceTree = \"<group>\"; };\n\t\tF405C6CA19ED14AA005AD31C /* en */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = en; path = en.lproj/MainMenu.xib; sourceTree = \"<group>\"; };\n/* End PBXFileReference section */\n\n/* Begin PBXFrameworksBuildPhase section */\n\t\t5023813617EBBCE400990C9B /* Frameworks */ = {\n\t\t\tisa = PBXFrameworksBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\t9F91078919F5628A00AD5CAB /* SystemConfiguration.framework in Frameworks */,\n\t\t\t\t15427CEE198F24AF00DC375D /* libcocos2d Mac.a in Frameworks */,\n\t\t\t\t15427CEC198F24A600DC375D /* libluacocos2d Mac.a in Frameworks */,\n\t\t\t\t15A8A4881834C90F00142BE0 /* libcurl.dylib in Frameworks */,\n\t\t\t\t50D7C97017EBBEEC005D0B91 /* IOKit.framework in Frameworks */,\n\t\t\t\t50D7C96E17EBBEE6005D0B91 /* AppKit.framework in Frameworks */,\n\t\t\t\t50D7C96C17EBBEDF005D0B91 /* OpenGL.framework in Frameworks */,\n\t\t\t\t5023813717EBBCE400990C9B /* libz.dylib in Frameworks */,\n\t\t\t\t5023813E17EBBCE400990C9B /* QuartzCore.framework in Frameworks */,\n\t\t\t\t5023814017EBBCE400990C9B /* OpenAL.framework in Frameworks */,\n\t\t\t\t5023814117EBBCE400990C9B /* AudioToolbox.framework in Frameworks */,\n\t\t\t\t5023814417EBBCE400990C9B /* Foundation.framework in Frameworks */,\n\t\t\t\t5023814517EBBCE400990C9B /* CoreGraphics.framework in Frameworks */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tF293B3C515EB7BE500256477 /* Frameworks */ = {\n\t\t\tisa = PBXFrameworksBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\t9F598A0B19F5F4F4006015D6 /* StoreKit.framework in Frameworks */,\n\t\t\t\t9F598A0819F5F3A6006015D6 /* SystemConfiguration.framework in Frameworks */,\n\t\t\t\t15427CD5198F222200DC375D /* libluacocos2d iOS.a in Frameworks */,\n\t\t\t\t15427CD3198F221400DC375D /* libcocos2d iOS.a in Frameworks */,\n\t\t\t\t3EEEDB61197107C0006A9FF8 /* MediaPlayer.framework in Frameworks */,\n\t\t\t\tD6B061351803AC000077942B /* CoreMotion.framework in Frameworks */,\n\t\t\t\t1AF4C403178663F200122817 /* libz.dylib in Frameworks */,\n\t\t\t\t50805AAF17EBBEAA004CFAD3 /* UIKit.framework in Frameworks */,\n\t\t\t\t5023817A17EBBE8300990C9B /* OpenGLES.framework in Frameworks */,\n\t\t\t\tF293B3CD15EB7BE500256477 /* QuartzCore.framework in Frameworks */,\n\t\t\t\tF293B3D115EB7BE500256477 /* OpenAL.framework in Frameworks */,\n\t\t\t\tF293B3D315EB7BE500256477 /* AudioToolbox.framework in Frameworks */,\n\t\t\t\tF293B3D515EB7BE500256477 /* AVFoundation.framework in Frameworks */,\n\t\t\t\tF293B3D915EB7BE500256477 /* Foundation.framework in Frameworks */,\n\t\t\t\tF293B3DB15EB7BE500256477 /* CoreGraphics.framework in Frameworks */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n/* End PBXFrameworksBuildPhase section */\n\n/* Begin PBXGroup section */\n\t\t15A8A4041834BDA200142BE0 /* Products */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\t15A8A4171834BDA200142BE0 /* libcocos2d Mac.a */,\n\t\t\t\t15A8A4251834BDA200142BE0 /* libcocos2d iOS.a */,\n\t\t\t);\n\t\t\tname = Products;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\t49C656441A39A1A200603AF5 /* nanovg */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\t49C656471A39A1A200603AF5 /* nanonode */,\n\t\t\t\t49C6564C1A39A1A200603AF5 /* nanovg */,\n\t\t\t);\n\t\t\tname = nanovg;\n\t\t\tpath = \"quick/lib/quick-src/extra/nanovg\";\n\t\t\tsourceTree = QUICK_V3_ROOT;\n\t\t};\n\t\t49C656471A39A1A200603AF5 /* nanonode */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\t49C656481A39A1A200603AF5 /* NVGDrawNode.cpp */,\n\t\t\t\t49C656491A39A1A200603AF5 /* NVGDrawNode.h */,\n\t\t\t\t49C6564A1A39A1A200603AF5 /* NVGNode.cpp */,\n\t\t\t\t49C6564B1A39A1A200603AF5 /* NVGNode.h */,\n\t\t\t);\n\t\t\tpath = nanonode;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\t49C6564C1A39A1A200603AF5 /* nanovg */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\t49C6564D1A39A1A200603AF5 /* fontstash.h */,\n\t\t\t\t49C6564E1A39A1A200603AF5 /* nanovg.c */,\n\t\t\t\t49C6564F1A39A1A200603AF5 /* nanovg.h */,\n\t\t\t\t49C656501A39A1A200603AF5 /* nanovg_gl.h */,\n\t\t\t\t49C656511A39A1A200603AF5 /* nanovg_gl_utils.h */,\n\t\t\t\t49C656521A39A1A200603AF5 /* stb_image.h */,\n\t\t\t\t49C656531A39A1A200603AF5 /* stb_truetype.h */,\n\t\t\t);\n\t\t\tpath = nanovg;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\t5023810617EBBCAC00990C9B /* ios */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\t521A8E6E19F0C3D200D177D7 /* Default-667h@2x.png */,\n\t\t\t\t521A8E6F19F0C3D200D177D7 /* Default-736h@3x.png */,\n\t\t\t\t5023810717EBBCAC00990C9B /* AppController.h */,\n\t\t\t\t5023810817EBBCAC00990C9B /* AppController.mm */,\n\t\t\t\t5023810917EBBCAC00990C9B /* Default-568h@2x.png */,\n\t\t\t\t5023810A17EBBCAC00990C9B /* Default.png */,\n\t\t\t\t5023810B17EBBCAC00990C9B /* Default@2x.png */,\n\t\t\t\t5091734A17ECE18300D62437 /* Icons */,\n\t\t\t\t5023811317EBBCAC00990C9B /* Info.plist */,\n\t\t\t\t5023811417EBBCAC00990C9B /* main.m */,\n\t\t\t\t5023811517EBBCAC00990C9B /* Prefix.pch */,\n\t\t\t\t5023811617EBBCAC00990C9B /* RootViewController.h */,\n\t\t\t\t5023811717EBBCAC00990C9B /* RootViewController.mm */,\n\t\t\t);\n\t\t\tpath = ios;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\t5023817117EBBE3400990C9B /* mac */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\t9F91079B19F5704400AD5CAB /* ConsoleWindow.xib */,\n\t\t\t\t9F91079C19F5704400AD5CAB /* ConsoleWindowController.h */,\n\t\t\t\t9F91079D19F5704400AD5CAB /* ConsoleWindowController.m */,\n\t\t\t\t5023817217EBBE3400990C9B /* Icon.icns */,\n\t\t\t\tC07828F418B4D72E00BD2287 /* main.m */,\n\t\t\t\tF405C6CB19ED14AA005AD31C /* MainMenu.xib */,\n\t\t\t\tC07828F618B4D72E00BD2287 /* SimulatorApp.h */,\n\t\t\t\tC07828F718B4D72E00BD2287 /* SimulatorApp.mm */,\n\t\t\t\t5023817317EBBE3400990C9B /* Info.plist */,\n\t\t\t\t5023817517EBBE3400990C9B /* Prefix.pch */,\n\t\t\t);\n\t\t\tpath = mac;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\t5091734A17ECE18300D62437 /* Icons */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\t5091733017ECE17A00D62437 /* Icon-29.png */,\n\t\t\t\t5091733117ECE17A00D62437 /* Icon-40.png */,\n\t\t\t\t5091733217ECE17A00D62437 /* Icon-50.png */,\n\t\t\t\t5091733317ECE17A00D62437 /* Icon-58.png */,\n\t\t\t\t5091733417ECE17A00D62437 /* Icon-80.png */,\n\t\t\t\t5091733517ECE17A00D62437 /* Icon-100.png */,\n\t\t\t\t5023810C17EBBCAC00990C9B /* Icon-114.png */,\n\t\t\t\t5023810D17EBBCAC00990C9B /* Icon-120.png */,\n\t\t\t\t5023810E17EBBCAC00990C9B /* Icon-144.png */,\n\t\t\t\t5023810F17EBBCAC00990C9B /* Icon-152.png */,\n\t\t\t\t5023811017EBBCAC00990C9B /* Icon-57.png */,\n\t\t\t\t5023811117EBBCAC00990C9B /* Icon-72.png */,\n\t\t\t\t5023811217EBBCAC00990C9B /* Icon-76.png */,\n\t\t\t);\n\t\t\tname = Icons;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\t9F91057419F5614700AD5CAB /* quick-src */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\t9F91078F19F56A6600AD5CAB /* ProjectConfig */,\n\t\t\t\t9F91057519F5614700AD5CAB /* extra */,\n\t\t\t\t9F91066A19F5614800AD5CAB /* lua_extensions */,\n\t\t\t);\n\t\t\tname = \"quick-src\";\n\t\t\tpath = \"../Classes/quick-src\";\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\t9F91057519F5614700AD5CAB /* extra */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\t49C656441A39A1A200603AF5 /* nanovg */,\n\t\t\t\t9F9105A619F5614800AD5CAB /* apptools */,\n\t\t\t\t9F9105A919F5614800AD5CAB /* cocos2dx_extra.h */,\n\t\t\t\t9F9105AA19F5614800AD5CAB /* crypto */,\n\t\t\t\t9F9105B319F5614800AD5CAB /* filters */,\n\t\t\t\t9F91061719F5614800AD5CAB /* luabinding */,\n\t\t\t\t9F91062319F5614800AD5CAB /* native */,\n\t\t\t\t9F91062619F5614800AD5CAB /* network */,\n\t\t\t\t9F91062C19F5614800AD5CAB /* platform */,\n\t\t\t\t9F91066119F5614800AD5CAB /* store */,\n\t\t\t);\n\t\t\tpath = extra;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\t9F9105A619F5614800AD5CAB /* apptools */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\t9F9105A719F5614800AD5CAB /* HelperFunc.cpp */,\n\t\t\t\t9F9105A819F5614800AD5CAB /* HelperFunc.h */,\n\t\t\t);\n\t\t\tpath = apptools;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\t9F9105AA19F5614800AD5CAB /* crypto */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\t9F9105AB19F5614800AD5CAB /* base64 */,\n\t\t\t\t9F9105AE19F5614800AD5CAB /* CCCrypto.cpp */,\n\t\t\t\t9F9105AF19F5614800AD5CAB /* CCCrypto.h */,\n\t\t\t\t9F9105B019F5614800AD5CAB /* md5 */,\n\t\t\t);\n\t\t\tpath = crypto;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\t9F9105AB19F5614800AD5CAB /* base64 */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\t9F9105AC19F5614800AD5CAB /* libbase64.c */,\n\t\t\t\t9F9105AD19F5614800AD5CAB /* libbase64.h */,\n\t\t\t);\n\t\t\tpath = base64;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\t9F9105B019F5614800AD5CAB /* md5 */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\t9F9105B119F5614800AD5CAB /* md5.c */,\n\t\t\t\t9F9105B219F5614800AD5CAB /* md5.h */,\n\t\t\t);\n\t\t\tpath = md5;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\t9F9105B319F5614800AD5CAB /* filters */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\t9F9105B519F5614800AD5CAB /* cocos2dFilters.h */,\n\t\t\t\t9F9105B619F5614800AD5CAB /* filters */,\n\t\t\t\t9F9105D919F5614800AD5CAB /* nodes */,\n\t\t\t\t9F9105DC19F5614800AD5CAB /* shaders */,\n\t\t\t);\n\t\t\tpath = filters;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\t9F9105B619F5614800AD5CAB /* filters */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\t9F9105B719F5614800AD5CAB /* CCBlurFilter.cpp */,\n\t\t\t\t9F9105B819F5614800AD5CAB /* CCBlurFilter.h */,\n\t\t\t\t9F9105B919F5614800AD5CAB /* CCBrightnessFilter.cpp */,\n\t\t\t\t9F9105BA19F5614800AD5CAB /* CCBrightnessFilter.h */,\n\t\t\t\t9F9105BB19F5614800AD5CAB /* CCContrastFilter.cpp */,\n\t\t\t\t9F9105BC19F5614800AD5CAB /* CCContrastFilter.h */,\n\t\t\t\t9F9105BD19F5614800AD5CAB /* CCCustomFilter.cpp */,\n\t\t\t\t9F9105BE19F5614800AD5CAB /* CCCustomFilter.h */,\n\t\t\t\t9F9105BF19F5614800AD5CAB /* CCDropShadowFilter.cpp */,\n\t\t\t\t9F9105C019F5614800AD5CAB /* CCDropShadowFilter.h */,\n\t\t\t\t9F9105C119F5614800AD5CAB /* CCExposureFilter.cpp */,\n\t\t\t\t9F9105C219F5614800AD5CAB /* CCExposureFilter.h */,\n\t\t\t\t9F9105C319F5614800AD5CAB /* CCFilter.cpp */,\n\t\t\t\t9F9105C419F5614800AD5CAB /* CCFilter.h */,\n\t\t\t\t9F9105C519F5614800AD5CAB /* CCGammaFilter.cpp */,\n\t\t\t\t9F9105C619F5614800AD5CAB /* CCGammaFilter.h */,\n\t\t\t\t9F9105C719F5614800AD5CAB /* CCGrayFilter.cpp */,\n\t\t\t\t9F9105C819F5614800AD5CAB /* CCGrayFilter.h */,\n\t\t\t\t9F9105C919F5614800AD5CAB /* CCHazeFilter.cpp */,\n\t\t\t\t9F9105CA19F5614800AD5CAB /* CCHazeFilter.h */,\n\t\t\t\t9F9105CB19F5614800AD5CAB /* CCHueFilter.cpp */,\n\t\t\t\t9F9105CC19F5614800AD5CAB /* CCHueFilter.h */,\n\t\t\t\t9F9105CD19F5614800AD5CAB /* CCMaskFilter.cpp */,\n\t\t\t\t9F9105CE19F5614800AD5CAB /* CCMaskFilter.h */,\n\t\t\t\t9F9105CF19F5614800AD5CAB /* CCRGBFilter.cpp */,\n\t\t\t\t9F9105D019F5614800AD5CAB /* CCRGBFilter.h */,\n\t\t\t\t9F9105D119F5614800AD5CAB /* CCSaturationFilter.cpp */,\n\t\t\t\t9F9105D219F5614800AD5CAB /* CCSaturationFilter.h */,\n\t\t\t\t9F9105D319F5614800AD5CAB /* CCSepiaFilter.cpp */,\n\t\t\t\t9F9105D419F5614800AD5CAB /* CCSepiaFilter.h */,\n\t\t\t\t9F9105D519F5614800AD5CAB /* CCSharpenFilter.cpp */,\n\t\t\t\t9F9105D619F5614800AD5CAB /* CCSharpenFilter.h */,\n\t\t\t\t9F9105D719F5614800AD5CAB /* CCTestFilter.cpp */,\n\t\t\t\t9F9105D819F5614800AD5CAB /* CCTestFilter.h */,\n\t\t\t);\n\t\t\tpath = filters;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\t9F9105D919F5614800AD5CAB /* nodes */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\t9F9105DA19F5614800AD5CAB /* CCFilteredSprite.cpp */,\n\t\t\t\t9F9105DB19F5614800AD5CAB /* CCFilteredSprite.h */,\n\t\t\t);\n\t\t\tpath = nodes;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\t9F9105DC19F5614800AD5CAB /* shaders */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\t9F9105DD19F5614800AD5CAB /* ccFilterShader_blur_frag.h */,\n\t\t\t\t9F9105DE19F5614800AD5CAB /* ccFilterShader_brightness_frag.h */,\n\t\t\t\t9F9105DF19F5614800AD5CAB /* ccFilterShader_colorramp_frag.h */,\n\t\t\t\t9F9105E019F5614800AD5CAB /* ccFilterShader_contrast_frag.h */,\n\t\t\t\t9F9105E119F5614800AD5CAB /* ccFilterShader_drop_shadow_frag.h */,\n\t\t\t\t9F9105E219F5614800AD5CAB /* ccFilterShader_drop_shadow_vert.h */,\n\t\t\t\t9F9105E319F5614800AD5CAB /* ccFilterShader_emboss_frag.h */,\n\t\t\t\t9F9105E419F5614800AD5CAB /* ccFilterShader_embossmov_frag.h */,\n\t\t\t\t9F9105E519F5614800AD5CAB /* ccFilterShader_exposure_frag.h */,\n\t\t\t\t9F9105E619F5614800AD5CAB /* ccFilterShader_gamma_frag.h */,\n\t\t\t\t9F9105E719F5614800AD5CAB /* ccFilterShader_gaussian_blur_frag.h */,\n\t\t\t\t9F9105E819F5614800AD5CAB /* ccFilterShader_gaussian_hblur_frag.h */,\n\t\t\t\t9F9105E919F5614800AD5CAB /* ccFilterShader_gaussian_vblur_frag.h */,\n\t\t\t\t9F9105EA19F5614800AD5CAB /* ccFilterShader_grass_frag.h */,\n\t\t\t\t9F9105EB19F5614800AD5CAB /* ccFilterShader_gray_frag.h */,\n\t\t\t\t9F9105EC19F5614800AD5CAB /* ccFilterShader_haze_frag.h */,\n\t\t\t\t9F9105ED19F5614800AD5CAB /* ccFilterShader_hblur_vert.h */,\n\t\t\t\t9F9105EE19F5614800AD5CAB /* ccFilterShader_hue_frag.h */,\n\t\t\t\t9F9105EF19F5614800AD5CAB /* ccFilterShader_motion_blur_frag.h */,\n\t\t\t\t9F9105F019F5614800AD5CAB /* ccFilterShader_motion_blur_vert.h */,\n\t\t\t\t9F9105F119F5614800AD5CAB /* ccFilterShader_rgb_frag.h */,\n\t\t\t\t9F9105F219F5614800AD5CAB /* ccFilterShader_saturation_frag.h */,\n\t\t\t\t9F9105F319F5614800AD5CAB /* ccFilterShader_sepia_frag.h */,\n\t\t\t\t9F9105F419F5614800AD5CAB /* ccFilterShader_sharpen_frag.h */,\n\t\t\t\t9F9105F519F5614800AD5CAB /* ccFilterShader_sharpen_vert.h */,\n\t\t\t\t9F9105F619F5614800AD5CAB /* ccFilterShader_test_frag.h */,\n\t\t\t\t9F9105F719F5614800AD5CAB /* ccFilterShader_test_vert.h */,\n\t\t\t\t9F9105F819F5614800AD5CAB /* ccFilterShader_vblur_vert.h */,\n\t\t\t\t9F9105F919F5614800AD5CAB /* ccFilterShader_zoom_blur_frag.h */,\n\t\t\t\t9F9105FA19F5614800AD5CAB /* ccFilterShaders.cpp */,\n\t\t\t\t9F9105FB19F5614800AD5CAB /* ccFilterShaders.h */,\n\t\t\t\t9F9105FC19F5614800AD5CAB /* example_bloom.fsh */,\n\t\t\t\t9F9105FD19F5614800AD5CAB /* example_Blur.fsh */,\n\t\t\t\t9F9105FE19F5614800AD5CAB /* example_celShading.fsh */,\n\t\t\t\t9F9105FF19F5614800AD5CAB /* example_ColorBars.fsh */,\n\t\t\t\t9F91060019F5614800AD5CAB /* example_ColorBars.vsh */,\n\t\t\t\t9F91060119F5614800AD5CAB /* example_edgeDetection.fsh */,\n\t\t\t\t9F91060219F5614800AD5CAB /* example_Flower.fsh */,\n\t\t\t\t9F91060319F5614800AD5CAB /* example_greyScale.fsh */,\n\t\t\t\t9F91060419F5614800AD5CAB /* example_Heart.fsh */,\n\t\t\t\t9F91060519F5614800AD5CAB /* example_HorizontalColor.fsh */,\n\t\t\t\t9F91060619F5614800AD5CAB /* example_Julia.fsh */,\n\t\t\t\t9F91060719F5614800AD5CAB /* example_lensFlare.fsh */,\n\t\t\t\t9F91060819F5614800AD5CAB /* example_Mandelbrot.fsh */,\n\t\t\t\t9F91060919F5614800AD5CAB /* example_Monjori.fsh */,\n\t\t\t\t9F91060A19F5614800AD5CAB /* example_MultiTexture.fsh */,\n\t\t\t\t9F91060B19F5614800AD5CAB /* example_MultiTexture.vsh */,\n\t\t\t\t9F91060C19F5614800AD5CAB /* example_Noisy.fsh */,\n\t\t\t\t9F91060D19F5614800AD5CAB /* example_normal.fsh */,\n\t\t\t\t9F91060E19F5614800AD5CAB /* example_outline.fsh */,\n\t\t\t\t9F91060F19F5614800AD5CAB /* example_Plasma.fsh */,\n\t\t\t\t9F91061019F5614800AD5CAB /* example_sepia.fsh */,\n\t\t\t\t9F91061119F5614800AD5CAB /* example_Twist.fsh */,\n\t\t\t\t9F91061219F5614800AD5CAB /* FilterShaders.cpp */,\n\t\t\t\t9F91061319F5614800AD5CAB /* FilterShaders.h */,\n\t\t\t\t9F91061419F5614800AD5CAB /* shadertoy_FireBall.fsh */,\n\t\t\t\t9F91061519F5614800AD5CAB /* shadertoy_Glow.fsh */,\n\t\t\t\t9F91061619F5614800AD5CAB /* shadertoy_LensFlare.fsh */,\n\t\t\t);\n\t\t\tpath = shaders;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\t9F91061719F5614800AD5CAB /* luabinding */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\t49C6565A1A39A22400603AF5 /* lua_cocos2dx_extension_nanovg_auto.cpp */,\n\t\t\t\t49C6565B1A39A22400603AF5 /* lua_cocos2dx_extension_nanovg_auto.hpp */,\n\t\t\t\t49C6565C1A39A22400603AF5 /* lua_cocos2dx_extension_nanovg_manual.cpp */,\n\t\t\t\t49C6565D1A39A22400603AF5 /* lua_cocos2dx_extension_nanovg_manual.hpp */,\n\t\t\t\t9F91061A19F5614800AD5CAB /* cocos2dx_extra_ios_iap_luabinding.cpp */,\n\t\t\t\t9F91061B19F5614800AD5CAB /* cocos2dx_extra_ios_iap_luabinding.h */,\n\t\t\t\t9F91061D19F5614800AD5CAB /* cocos2dx_extra_luabinding.cpp */,\n\t\t\t\t9F91061E19F5614800AD5CAB /* cocos2dx_extra_luabinding.h */,\n\t\t\t\t9F91062019F5614800AD5CAB /* HelperFunc_luabinding.cpp */,\n\t\t\t\t9F91062119F5614800AD5CAB /* HelperFunc_luabinding.h */,\n\t\t\t\t9F91078B19F5658D00AD5CAB /* lua_cocos2dx_extension_filter_auto.cpp */,\n\t\t\t\t9F91078C19F5658D00AD5CAB /* lua_cocos2dx_extension_filter_auto.hpp */,\n\t\t\t);\n\t\t\tpath = luabinding;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\t9F91062319F5614800AD5CAB /* native */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\t9F91062419F5614800AD5CAB /* CCAlertViewDelegate.h */,\n\t\t\t\t9F91062519F5614800AD5CAB /* CCNative.h */,\n\t\t\t);\n\t\t\tpath = native;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\t9F91062619F5614800AD5CAB /* network */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\t9F91062719F5614800AD5CAB /* CCHTTPRequest.cpp */,\n\t\t\t\t9F91062819F5614800AD5CAB /* CCHTTPRequest.h */,\n\t\t\t\t9F91062919F5614800AD5CAB /* CCHTTPRequestDelegate.h */,\n\t\t\t\t9F91062A19F5614800AD5CAB /* CCNetwork.cpp */,\n\t\t\t\t9F91062B19F5614800AD5CAB /* CCNetwork.h */,\n\t\t\t);\n\t\t\tpath = network;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\t9F91062C19F5614800AD5CAB /* platform */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\t9F91063219F5614800AD5CAB /* ios */,\n\t\t\t\t9F91064919F5614800AD5CAB /* ios_mac */,\n\t\t\t\t9F91064D19F5614800AD5CAB /* mac */,\n\t\t\t);\n\t\t\tpath = platform;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\t9F91063219F5614800AD5CAB /* ios */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\t9F91063319F5614800AD5CAB /* CCCryptoIOS.mm */,\n\t\t\t\t9F91063419F5614800AD5CAB /* CCNative.mm */,\n\t\t\t\t9F91063519F5614800AD5CAB /* CCNativeIOS.h */,\n\t\t\t\t9F91063619F5614800AD5CAB /* CCNativeIOS.mm */,\n\t\t\t\t9F91063719F5614800AD5CAB /* CCStore.mm */,\n\t\t\t\t9F91063819F5614800AD5CAB /* CCStoreIOS.h */,\n\t\t\t\t9F91063919F5614800AD5CAB /* CCStoreIOS.mm */,\n\t\t\t\t9F91063A19F5614800AD5CAB /* CCStorePaymentTransactionWrapper.mm */,\n\t\t\t\t9F91063B19F5614800AD5CAB /* CCStoreReceiptVerifyRequestIOS.h */,\n\t\t\t\t9F91063C19F5614800AD5CAB /* CCStoreReceiptVerifyRequestIOS.mm */,\n\t\t\t\t9F91063D19F5614800AD5CAB /* json */,\n\t\t\t\t9F91064619F5614800AD5CAB /* openudid */,\n\t\t\t);\n\t\t\tpath = ios;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\t9F91063D19F5614800AD5CAB /* json */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\t9F91063E19F5614800AD5CAB /* SBJSON.h */,\n\t\t\t\t9F91063F19F5614800AD5CAB /* SBJSON.m */,\n\t\t\t\t9F91064019F5614800AD5CAB /* SBJsonBase.h */,\n\t\t\t\t9F91064119F5614800AD5CAB /* SBJsonBase.m */,\n\t\t\t\t9F91064219F5614800AD5CAB /* SBJsonParser.h */,\n\t\t\t\t9F91064319F5614800AD5CAB /* SBJsonParser.m */,\n\t\t\t\t9F91064419F5614800AD5CAB /* SBJsonWriter.h */,\n\t\t\t\t9F91064519F5614800AD5CAB /* SBJsonWriter.m */,\n\t\t\t);\n\t\t\tpath = json;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\t9F91064619F5614800AD5CAB /* openudid */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\t9F91064719F5614800AD5CAB /* OpenUDIDIOS.h */,\n\t\t\t\t9F91064819F5614800AD5CAB /* OpenUDIDIOS.m */,\n\t\t\t);\n\t\t\tpath = openudid;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\t9F91064919F5614800AD5CAB /* ios_mac */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\t9F91064A19F5614800AD5CAB /* CCNetworkIOSMac.mm */,\n\t\t\t\t9F91064B19F5614800AD5CAB /* ReachabilityIOSMac.h */,\n\t\t\t\t9F91064C19F5614800AD5CAB /* ReachabilityIOSMac.m */,\n\t\t\t);\n\t\t\tpath = ios_mac;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\t9F91064D19F5614800AD5CAB /* mac */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\t9F91064E19F5614800AD5CAB /* CCCryptoMac.mm */,\n\t\t\t\t9F91064F19F5614800AD5CAB /* CCNative.mm */,\n\t\t\t\t9F91065019F5614800AD5CAB /* CCNativeMac.h */,\n\t\t\t\t9F91065119F5614800AD5CAB /* CCNativeMac.mm */,\n\t\t\t\t9F91065219F5614800AD5CAB /* openudid */,\n\t\t\t);\n\t\t\tpath = mac;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\t9F91065219F5614800AD5CAB /* openudid */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\t9F91065319F5614800AD5CAB /* OpenUDIDMac.h */,\n\t\t\t\t9F91065419F5614800AD5CAB /* OpenUDIDMac.m */,\n\t\t\t);\n\t\t\tpath = openudid;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\t9F91066119F5614800AD5CAB /* store */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\t9F91066219F5614800AD5CAB /* CCStore.h */,\n\t\t\t\t9F91066319F5614800AD5CAB /* CCStorePaymentTransaction.cpp */,\n\t\t\t\t9F91066419F5614800AD5CAB /* CCStorePaymentTransaction.h */,\n\t\t\t\t9F91066519F5614800AD5CAB /* CCStorePaymentTransactionWrapper.h */,\n\t\t\t\t9F91066619F5614800AD5CAB /* CCStoreProduct.cpp */,\n\t\t\t\t9F91066719F5614800AD5CAB /* CCStoreProduct.h */,\n\t\t\t\t9F91066819F5614800AD5CAB /* CCStoreProductsRequestDelegate.h */,\n\t\t\t\t9F91066919F5614800AD5CAB /* CCStoreTransactionObserver.h */,\n\t\t\t);\n\t\t\tpath = store;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\t9F91066A19F5614800AD5CAB /* lua_extensions */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\t9F91066C19F5614800AD5CAB /* cjson */,\n\t\t\t\t9F91067719F5614800AD5CAB /* filesystem */,\n\t\t\t\t9F91067A19F5614800AD5CAB /* lpack */,\n\t\t\t\t9F91067D19F5614800AD5CAB /* lsqlite3 */,\n\t\t\t\t9F91068219F5614800AD5CAB /* lua_extensions_more.c */,\n\t\t\t\t9F91068319F5614800AD5CAB /* lua_extensions_more.h */,\n\t\t\t\t9F91068419F5614800AD5CAB /* zlib */,\n\t\t\t);\n\t\t\tpath = lua_extensions;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\t9F91066C19F5614800AD5CAB /* cjson */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\t9F91066D19F5614800AD5CAB /* fpconv.c */,\n\t\t\t\t9F91066E19F5614800AD5CAB /* fpconv.h */,\n\t\t\t\t9F91066F19F5614800AD5CAB /* lua_cjson.c */,\n\t\t\t\t9F91067019F5614800AD5CAB /* lua_cjson.h */,\n\t\t\t\t9F91067119F5614800AD5CAB /* strbuf.c */,\n\t\t\t\t9F91067219F5614800AD5CAB /* strbuf.h */,\n\t\t\t);\n\t\t\tpath = cjson;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\t9F91067719F5614800AD5CAB /* filesystem */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\t9F91067819F5614800AD5CAB /* lfs.c */,\n\t\t\t\t9F91067919F5614800AD5CAB /* lfs.h */,\n\t\t\t);\n\t\t\tpath = filesystem;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\t9F91067A19F5614800AD5CAB /* lpack */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\t9F91067B19F5614800AD5CAB /* lpack.c */,\n\t\t\t\t9F91067C19F5614800AD5CAB /* lpack.h */,\n\t\t\t);\n\t\t\tpath = lpack;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\t9F91067D19F5614800AD5CAB /* lsqlite3 */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\t9F91067E19F5614800AD5CAB /* lsqlite3.c */,\n\t\t\t\t9F91067F19F5614800AD5CAB /* lsqlite3.h */,\n\t\t\t\t9F91068019F5614800AD5CAB /* sqlite3.c */,\n\t\t\t\t9F91068119F5614800AD5CAB /* sqlite3.h */,\n\t\t\t);\n\t\t\tpath = lsqlite3;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\t9F91068419F5614800AD5CAB /* zlib */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\t9F91068519F5614800AD5CAB /* lua_zlib.c */,\n\t\t\t\t9F91068619F5614800AD5CAB /* lua_zlib.h */,\n\t\t\t);\n\t\t\tpath = zlib;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\t9F91078F19F56A6600AD5CAB /* ProjectConfig */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\t9F91079019F56A6600AD5CAB /* ProjectConfig.cpp */,\n\t\t\t\t9F91079119F56A6600AD5CAB /* ProjectConfig.h */,\n\t\t\t\t9F91079219F56A6600AD5CAB /* SimulatorConfig.cpp */,\n\t\t\t\t9F91079319F56A6600AD5CAB /* SimulatorConfig.h */,\n\t\t\t);\n\t\t\tpath = ProjectConfig;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tC00FD4891938512100C6382D /* runtime */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tAB6CB6EC1A1F275E009C2562 /* ConnectWaitLayer.cpp */,\n\t\t\t\tAB6CB6ED1A1F275E009C2562 /* ConnectWaitLayer.h */,\n\t\t\t\tAB6CB6EE1A1F275E009C2562 /* ConsoleCommand.cpp */,\n\t\t\t\tAB6CB6EF1A1F275E009C2562 /* ConsoleCommand.h */,\n\t\t\t\tAB6CB6F01A1F275E009C2562 /* FileServer.cpp */,\n\t\t\t\tAB6CB6F11A1F275E009C2562 /* FileServer.h */,\n\t\t\t\t15AA9646199B6D4600725633 /* lua_debugger.c */,\n\t\t\t\t15AA9647199B6D4600725633 /* lua_debugger.h */,\n\t\t\t\t3EB5152A19528284006966AA /* Protos.pb.cc */,\n\t\t\t\t3EB5152B19528284006966AA /* Protos.pb.h */,\n\t\t\t\tC00FD48A1938512100C6382D /* Landscape_png.cpp */,\n\t\t\t\tC00FD48B1938512100C6382D /* PlayDisable_png.cpp */,\n\t\t\t\tC00FD48C1938512100C6382D /* PlayEnable_png.cpp */,\n\t\t\t\tC00FD48D1938512100C6382D /* Portrait_png.cpp */,\n\t\t\t\tC00FD48E1938512100C6382D /* ResData.h */,\n\t\t\t\tC00FD48F1938512100C6382D /* Runtime.cpp */,\n\t\t\t\tC00FD4901938512100C6382D /* Runtime.h */,\n\t\t\t\tC00FD4911938512100C6382D /* Shine_png.cpp */,\n\t\t\t);\n\t\t\tname = runtime;\n\t\t\tpath = ../Classes/runtime;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tC03781AF18BF654500FE4F13 /* Products */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\t15427CC2198F220600DC375D /* libluacocos2d Mac.a */,\n\t\t\t\t15427CD2198F220600DC375D /* libluacocos2d iOS.a */,\n\t\t\t);\n\t\t\tname = Products;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tF293B3BD15EB7BE500256477 = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tC03781AE18BF654500FE4F13 /* cocos2d_lua_bindings.xcodeproj */,\n\t\t\t\t15A8A4031834BDA200142BE0 /* cocos2d_libs.xcodeproj */,\n\t\t\t\t5023810617EBBCAC00990C9B /* ios */,\n\t\t\t\t5023817117EBBE3400990C9B /* mac */,\n\t\t\t\tF293BB7C15EB830F00256477 /* Classes */,\n\t\t\t\tF293B3CB15EB7BE500256477 /* Frameworks */,\n\t\t\t\tF293B3C915EB7BE500256477 /* Products */,\n\t\t\t\tF293BC4615EB859D00256477 /* Resources */,\n\t\t\t);\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tF293B3C915EB7BE500256477 /* Products */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tF293B3C815EB7BE500256477 /* mir9 iOS.app */,\n\t\t\t\t5023816B17EBBCE400990C9B /* mir9 Mac.app */,\n\t\t\t);\n\t\t\tname = Products;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tF293B3CB15EB7BE500256477 /* Frameworks */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\t9F598A0A19F5F4F4006015D6 /* StoreKit.framework */,\n\t\t\t\t9F598A0719F5F3A6006015D6 /* SystemConfiguration.framework */,\n\t\t\t\t9F91078819F5628A00AD5CAB /* SystemConfiguration.framework */,\n\t\t\t\t3EEEDB60197107C0006A9FF8 /* MediaPlayer.framework */,\n\t\t\t\t3EB51526195187AF006966AA /* CFNetwork.framework */,\n\t\t\t\t15A8A4871834C90E00142BE0 /* libcurl.dylib */,\n\t\t\t\tD6B061341803AC000077942B /* CoreMotion.framework */,\n\t\t\t\t50D7C96F17EBBEEC005D0B91 /* IOKit.framework */,\n\t\t\t\t50D7C96D17EBBEE6005D0B91 /* AppKit.framework */,\n\t\t\t\t50D7C96B17EBBEDF005D0B91 /* OpenGL.framework */,\n\t\t\t\t50805AAE17EBBEAA004CFAD3 /* UIKit.framework */,\n\t\t\t\t5023817917EBBE8300990C9B /* OpenGLES.framework */,\n\t\t\t\t1AF4C402178663F200122817 /* libz.dylib */,\n\t\t\t\t15C1568D1683131500D239F2 /* libcurl.a */,\n\t\t\t\tF293B3CC15EB7BE500256477 /* QuartzCore.framework */,\n\t\t\t\tF293B3CE15EB7BE500256477 /* OpenGLES.framework */,\n\t\t\t\tF293B3D015EB7BE500256477 /* OpenAL.framework */,\n\t\t\t\tF293B3D215EB7BE500256477 /* AudioToolbox.framework */,\n\t\t\t\tF293B3D415EB7BE500256477 /* AVFoundation.framework */,\n\t\t\t\tF293B3D615EB7BE500256477 /* UIKit.framework */,\n\t\t\t\tF293B3D815EB7BE500256477 /* Foundation.framework */,\n\t\t\t\tF293B3DA15EB7BE500256477 /* CoreGraphics.framework */,\n\t\t\t);\n\t\t\tname = Frameworks;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tF293BB7C15EB830F00256477 /* Classes */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\t9F91057419F5614700AD5CAB /* quick-src */,\n\t\t\t\t15427CE2198F237300DC375D /* lua_module_register.h */,\n\t\t\t\tC00FD4891938512100C6382D /* runtime */,\n\t\t\t\tC033B51A191B337200D06937 /* VisibleRect.cpp */,\n\t\t\t\tC033B51B191B337200D06937 /* VisibleRect.h */,\n\t\t\t\tC06C3794191A1D1E00617BED /* ConfigParser.cpp */,\n\t\t\t\tC06C3795191A1D1E00617BED /* ConfigParser.h */,\n\t\t\t\tC0619CD61896894800872C26 /* Runtime_ios-mac.mm */,\n\t\t\t\tF293BB7E15EB831F00256477 /* AppDelegate.cpp */,\n\t\t\t\tF293BB7F15EB831F00256477 /* AppDelegate.h */,\n\t\t\t);\n\t\t\tname = Classes;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tF293BC4615EB859D00256477 /* Resources */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tC05D1C111923449100B808A4 /* config.json */,\n\t\t\t\tC03781B718BF655400FE4F13 /* res */,\n\t\t\t\tC03781B818BF655400FE4F13 /* src */,\n\t\t\t);\n\t\t\tname = Resources;\n\t\t\tpath = ../Resources;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n/* End PBXGroup section */\n\n/* Begin PBXNativeTarget section */\n\t\t5023812617EBBCE400990C9B /* mir9 Mac */ = {\n\t\t\tisa = PBXNativeTarget;\n\t\t\tbuildConfigurationList = 5023816817EBBCE400990C9B /* Build configuration list for PBXNativeTarget \"mir9 Mac\" */;\n\t\t\tbuildPhases = (\n\t\t\t\t5023813117EBBCE400990C9B /* Sources */,\n\t\t\t\t5023813617EBBCE400990C9B /* Frameworks */,\n\t\t\t\t5023814617EBBCE400990C9B /* Resources */,\n\t\t\t);\n\t\t\tbuildRules = (\n\t\t\t);\n\t\t\tdependencies = (\n\t\t\t\t152A34B9199CE758004B68DC /* PBXTargetDependency */,\n\t\t\t\tC0A2F04118975FF80072A7AB /* PBXTargetDependency */,\n\t\t\t);\n\t\t\tname = \"mir9 Mac\";\n\t\t\tproductName = mir9;\n\t\t\tproductReference = 5023816B17EBBCE400990C9B /* mir9 Mac.app */;\n\t\t\tproductType = \"com.apple.product-type.application\";\n\t\t};\n\t\tF293B3C715EB7BE500256477 /* mir9 iOS */ = {\n\t\t\tisa = PBXNativeTarget;\n\t\t\tbuildConfigurationList = F293B6C415EB7BEA00256477 /* Build configuration list for PBXNativeTarget \"mir9 iOS\" */;\n\t\t\tbuildPhases = (\n\t\t\t\tF293B3C415EB7BE500256477 /* Sources */,\n\t\t\t\tF293B3C515EB7BE500256477 /* Frameworks */,\n\t\t\t\tF293B3C615EB7BE500256477 /* Resources */,\n\t\t\t\t3EC988201966433500A45E0E /* ShellScript */,\n\t\t\t);\n\t\t\tbuildRules = (\n\t\t\t);\n\t\t\tdependencies = (\n\t\t\t\t152A349F199CE72E004B68DC /* PBXTargetDependency */,\n\t\t\t\t15D1F3091994BBCA00302043 /* PBXTargetDependency */,\n\t\t\t);\n\t\t\tname = \"mir9 iOS\";\n\t\t\tproductName = mir9;\n\t\t\tproductReference = F293B3C815EB7BE500256477 /* mir9 iOS.app */;\n\t\t\tproductType = \"com.apple.product-type.application\";\n\t\t};\n/* End PBXNativeTarget section */\n\n/* Begin PBXProject section */\n\t\tF293B3BF15EB7BE500256477 /* Project object */ = {\n\t\t\tisa = PBXProject;\n\t\t\tattributes = {\n\t\t\t\tLastUpgradeCheck = 0500;\n\t\t\t\tTargetAttributes = {\n\t\t\t\t\tF293B3C715EB7BE500256477 = {\n\t\t\t\t\t\tDevelopmentTeam = MDDB52YB8L;\n\t\t\t\t\t};\n\t\t\t\t};\n\t\t\t};\n\t\t\tbuildConfigurationList = F293B3C215EB7BE500256477 /* Build configuration list for PBXProject \"mir9\" */;\n\t\t\tcompatibilityVersion = \"Xcode 3.2\";\n\t\t\tdevelopmentRegion = English;\n\t\t\thasScannedForEncodings = 0;\n\t\t\tknownRegions = (\n\t\t\t\ten,\n\t\t\t);\n\t\t\tmainGroup = F293B3BD15EB7BE500256477;\n\t\t\tproductRefGroup = F293B3C915EB7BE500256477 /* Products */;\n\t\t\tprojectDirPath = \"\";\n\t\t\tprojectReferences = (\n\t\t\t\t{\n\t\t\t\t\tProductGroup = 15A8A4041834BDA200142BE0 /* Products */;\n\t\t\t\t\tProjectRef = 15A8A4031834BDA200142BE0 /* cocos2d_libs.xcodeproj */;\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tProductGroup = C03781AF18BF654500FE4F13 /* Products */;\n\t\t\t\t\tProjectRef = C03781AE18BF654500FE4F13 /* cocos2d_lua_bindings.xcodeproj */;\n\t\t\t\t},\n\t\t\t);\n\t\t\tprojectRoot = \"\";\n\t\t\ttargets = (\n\t\t\t\tF293B3C715EB7BE500256477 /* mir9 iOS */,\n\t\t\t\t5023812617EBBCE400990C9B /* mir9 Mac */,\n\t\t\t);\n\t\t};\n/* End PBXProject section */\n\n/* Begin PBXReferenceProxy section */\n\t\t15427CC2198F220600DC375D /* libluacocos2d Mac.a */ = {\n\t\t\tisa = PBXReferenceProxy;\n\t\t\tfileType = archive.ar;\n\t\t\tpath = \"libluacocos2d Mac.a\";\n\t\t\tremoteRef = 15427CC1198F220600DC375D /* PBXContainerItemProxy */;\n\t\t\tsourceTree = BUILT_PRODUCTS_DIR;\n\t\t};\n\t\t15427CD2198F220600DC375D /* libluacocos2d iOS.a */ = {\n\t\t\tisa = PBXReferenceProxy;\n\t\t\tfileType = archive.ar;\n\t\t\tpath = \"libluacocos2d iOS.a\";\n\t\t\tremoteRef = 15427CD1198F220600DC375D /* PBXContainerItemProxy */;\n\t\t\tsourceTree = BUILT_PRODUCTS_DIR;\n\t\t};\n\t\t15A8A4171834BDA200142BE0 /* libcocos2d Mac.a */ = {\n\t\t\tisa = PBXReferenceProxy;\n\t\t\tfileType = archive.ar;\n\t\t\tpath = \"libcocos2d Mac.a\";\n\t\t\tremoteRef = 15A8A4161834BDA200142BE0 /* PBXContainerItemProxy */;\n\t\t\tsourceTree = BUILT_PRODUCTS_DIR;\n\t\t};\n\t\t15A8A4251834BDA200142BE0 /* libcocos2d iOS.a */ = {\n\t\t\tisa = PBXReferenceProxy;\n\t\t\tfileType = archive.ar;\n\t\t\tpath = \"libcocos2d iOS.a\";\n\t\t\tremoteRef = 15A8A4241834BDA200142BE0 /* PBXContainerItemProxy */;\n\t\t\tsourceTree = BUILT_PRODUCTS_DIR;\n\t\t};\n/* End PBXReferenceProxy section */\n\n/* Begin PBXResourcesBuildPhase section */\n\t\t5023814617EBBCE400990C9B /* Resources */ = {\n\t\t\tisa = PBXResourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\tC03781BA18BF655400FE4F13 /* res in Resources */,\n\t\t\t\tC03781BC18BF655400FE4F13 /* src in Resources */,\n\t\t\t\tF405C6C919ED14AA005AD31C /* MainMenu.xib in Resources */,\n\t\t\t\t5023817617EBBE3400990C9B /* Icon.icns in Resources */,\n\t\t\t\tC05D1C131923449100B808A4 /* config.json in Resources */,\n\t\t\t\t9F91079E19F5704400AD5CAB /* ConsoleWindow.xib in Resources */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tF293B3C615EB7BE500256477 /* Resources */ = {\n\t\t\tisa = PBXResourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\t15A8A4491834C64F00142BE0 /* Icon-114.png in Resources */,\n\t\t\t\t5023811D17EBBCAC00990C9B /* Icon-120.png in Resources */,\n\t\t\t\t5091733B17ECE17A00D62437 /* Icon-100.png in Resources */,\n\t\t\t\t5023811B17EBBCAC00990C9B /* Default@2x.png in Resources */,\n\t\t\t\t5091733617ECE17A00D62437 /* Icon-29.png in Resources */,\n\t\t\t\t5023811917EBBCAC00990C9B /* Default-568h@2x.png in Resources */,\n\t\t\t\t5091733917ECE17A00D62437 /* Icon-58.png in Resources */,\n\t\t\t\t5023811F17EBBCAC00990C9B /* Icon-152.png in Resources */,\n\t\t\t\t5023812017EBBCAC00990C9B /* Icon-57.png in Resources */,\n\t\t\t\t521A8E7019F0C3D200D177D7 /* Default-667h@2x.png in Resources */,\n\t\t\t\tC03781B918BF655400FE4F13 /* res in Resources */,\n\t\t\t\t5023812217EBBCAC00990C9B /* Icon-76.png in Resources */,\n\t\t\t\t5091733A17ECE17A00D62437 /* Icon-80.png in Resources */,\n\t\t\t\t5091733717ECE17A00D62437 /* Icon-40.png in Resources */,\n\t\t\t\t5023811E17EBBCAC00990C9B /* Icon-144.png in Resources */,\n\t\t\t\t5023811A17EBBCAC00990C9B /* Default.png in Resources */,\n\t\t\t\tC03781BB18BF655400FE4F13 /* src in Resources */,\n\t\t\t\t5091733817ECE17A00D62437 /* Icon-50.png in Resources */,\n\t\t\t\t5023812117EBBCAC00990C9B /* Icon-72.png in Resources */,\n\t\t\t\tC05D1C121923449100B808A4 /* config.json in Resources */,\n\t\t\t\t521A8E7119F0C3D200D177D7 /* Default-736h@3x.png in Resources */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n/* End PBXResourcesBuildPhase section */\n\n/* Begin PBXShellScriptBuildPhase section */\n\t\t3EC988201966433500A45E0E /* ShellScript */ = {\n\t\t\tisa = PBXShellScriptBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\tinputPaths = (\n\t\t\t);\n\t\t\toutputPaths = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t\tshellPath = /bin/sh;\n\t\t\tshellScript = \"find ${SRCROOT}/../../../src/ -name \\\"*\\\" -exec touch -cm {} \\\\;\\nfind ${SRCROOT}/../../../res/ -name \\\"*\\\" -exec touch -cm {} \\\\;\";\n\t\t};\n/* End PBXShellScriptBuildPhase section */\n\n/* Begin PBXSourcesBuildPhase section */\n\t\t5023813117EBBCE400990C9B /* Sources */ = {\n\t\t\tisa = PBXSourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\t87BA718C1A44A57100929C43 /* FileServer.cpp in Sources */,\n\t\t\t\tAB6CB6F31A1F275E009C2562 /* ConnectWaitLayer.cpp in Sources */,\n\t\t\t\tC07828FA18B4D72E00BD2287 /* SimulatorApp.mm in Sources */,\n\t\t\t\t5023813317EBBCE400990C9B /* AppDelegate.cpp in Sources */,\n\t\t\t\t49C656611A39A22400603AF5 /* lua_cocos2dx_extension_nanovg_manual.cpp in Sources */,\n\t\t\t\tC00FD4971938512100C6382D /* PlayEnable_png.cpp in Sources */,\n\t\t\t\t9F91079F19F5704400AD5CAB /* ConsoleWindowController.m in Sources */,\n\t\t\t\t9F91076F19F5614900AD5CAB /* lua_cjson.c in Sources */,\n\t\t\t\t9F91070F19F5614900AD5CAB /* FilterShaders.cpp in Sources */,\n\t\t\t\tC00FD4951938512100C6382D /* PlayDisable_png.cpp in Sources */,\n\t\t\t\t9F91079719F56A6600AD5CAB /* SimulatorConfig.cpp in Sources */,\n\t\t\t\tC033B51D191B337200D06937 /* VisibleRect.cpp in Sources */,\n\t\t\t\tC00FD49D1938512100C6382D /* Shine_png.cpp in Sources */,\n\t\t\t\t9F91074519F5614900AD5CAB /* SBJsonParser.m in Sources */,\n\t\t\t\t9F91074D19F5614900AD5CAB /* ReachabilityIOSMac.m in Sources */,\n\t\t\t\t15AA9649199B6D4600725633 /* lua_debugger.c in Sources */,\n\t\t\t\t9F9106D119F5614900AD5CAB /* CCHueFilter.cpp in Sources */,\n\t\t\t\t49C656591A39A1A200603AF5 /* nanovg.c in Sources */,\n\t\t\t\t9F91076D19F5614900AD5CAB /* fpconv.c in Sources */,\n\t\t\t\t9F9106B719F5614900AD5CAB /* CCCrypto.cpp in Sources */,\n\t\t\t\t9F91078619F561CD00AD5CAB /* HelperFunc.cpp in Sources */,\n\t\t\t\t9F9106D719F5614900AD5CAB /* CCSaturationFilter.cpp in Sources */,\n\t\t\t\t9F91079519F56A6600AD5CAB /* ProjectConfig.cpp in Sources */,\n\t\t\t\t9F91077719F5614900AD5CAB /* lfs.c in Sources */,\n\t\t\t\t9F91077B19F5614900AD5CAB /* lsqlite3.c in Sources */,\n\t\t\t\t9F91072919F5614900AD5CAB /* CCNetwork.cpp in Sources */,\n\t\t\t\t9F9106D919F5614900AD5CAB /* CCSepiaFilter.cpp in Sources */,\n\t\t\t\t9F91074119F5614900AD5CAB /* SBJSON.m in Sources */,\n\t\t\t\t9F91071F19F5614900AD5CAB /* cocos2dx_extra_luabinding.cpp in Sources */,\n\t\t\t\t9F9106B919F5614900AD5CAB /* md5.c in Sources */,\n\t\t\t\t9F91074319F5614900AD5CAB /* SBJsonBase.m in Sources */,\n\t\t\t\t9F91074919F5614900AD5CAB /* OpenUDIDIOS.m in Sources */,\n\t\t\t\t9F9106BD19F5614900AD5CAB /* CCBlurFilter.cpp in Sources */,\n\t\t\t\t9F9106DD19F5614900AD5CAB /* CCTestFilter.cpp in Sources */,\n\t\t\t\t9F9106DF19F5614900AD5CAB /* CCFilteredSprite.cpp in Sources */,\n\t\t\t\tC00FD4991938512100C6382D /* Portrait_png.cpp in Sources */,\n\t\t\t\t9F9106C119F5614900AD5CAB /* CCContrastFilter.cpp in Sources */,\n\t\t\t\t9F9106C719F5614900AD5CAB /* CCExposureFilter.cpp in Sources */,\n\t\t\t\tC06C3797191A1D1E00617BED /* ConfigParser.cpp in Sources */,\n\t\t\t\t9F91077919F5614900AD5CAB /* lpack.c in Sources */,\n\t\t\t\tC07828F818B4D72E00BD2287 /* main.m in Sources */,\n\t\t\t\t9F91074B19F5614900AD5CAB /* CCNetworkIOSMac.mm in Sources */,\n\t\t\t\tC00FD49B1938512100C6382D /* Runtime.cpp in Sources */,\n\t\t\t\t9F91072319F5614900AD5CAB /* HelperFunc_luabinding.cpp in Sources */,\n\t\t\t\t9F91077D19F5614900AD5CAB /* sqlite3.c in Sources */,\n\t\t\t\t49C656571A39A1A200603AF5 /* NVGNode.cpp in Sources */,\n\t\t\t\t9F91075119F5614900AD5CAB /* CCNative.mm in Sources */,\n\t\t\t\t9F9106B519F5614900AD5CAB /* libbase64.c in Sources */,\n\t\t\t\t49C6565F1A39A22400603AF5 /* lua_cocos2dx_extension_nanovg_auto.cpp in Sources */,\n\t\t\t\t49C656551A39A1A200603AF5 /* NVGDrawNode.cpp in Sources */,\n\t\t\t\t9F91075319F5614900AD5CAB /* CCNativeMac.mm in Sources */,\n\t\t\t\t9F91075519F5614900AD5CAB /* OpenUDIDMac.m in Sources */,\n\t\t\t\t9F91072719F5614900AD5CAB /* CCHTTPRequest.cpp in Sources */,\n\t\t\t\t9F9106D519F5614900AD5CAB /* CCRGBFilter.cpp in Sources */,\n\t\t\t\t9F9106C519F5614900AD5CAB /* CCDropShadowFilter.cpp in Sources */,\n\t\t\t\t9F9106C319F5614900AD5CAB /* CCCustomFilter.cpp in Sources */,\n\t\t\t\t9F91078119F5614900AD5CAB /* lua_zlib.c in Sources */,\n\t\t\t\t9F9106CD19F5614900AD5CAB /* CCGrayFilter.cpp in Sources */,\n\t\t\t\tC0619CD81896894800872C26 /* Runtime_ios-mac.mm in Sources */,\n\t\t\t\t9F9106D319F5614900AD5CAB /* CCMaskFilter.cpp in Sources */,\n\t\t\t\t9F91077119F5614900AD5CAB /* strbuf.c in Sources */,\n\t\t\t\t3EB5152D19528284006966AA /* Protos.pb.cc in Sources */,\n\t\t\t\t9F9106BF19F5614900AD5CAB /* CCBrightnessFilter.cpp in Sources */,\n\t\t\t\t9F91077F19F5614900AD5CAB /* lua_extensions_more.c in Sources */,\n\t\t\t\t9F91074F19F5614900AD5CAB /* CCCryptoMac.mm in Sources */,\n\t\t\t\t9F9106C919F5614900AD5CAB /* CCFilter.cpp in Sources */,\n\t\t\t\tC00FD4931938512100C6382D /* Landscape_png.cpp in Sources */,\n\t\t\t\t9F91074719F5614900AD5CAB /* SBJsonWriter.m in Sources */,\n\t\t\t\t9F91078E19F5658D00AD5CAB /* lua_cocos2dx_extension_filter_auto.cpp in Sources */,\n\t\t\t\t9F9106E119F5614900AD5CAB /* ccFilterShaders.cpp in Sources */,\n\t\t\t\t9F9106CF19F5614900AD5CAB /* CCHazeFilter.cpp in Sources */,\n\t\t\t\t9F9106CB19F5614900AD5CAB /* CCGammaFilter.cpp in Sources */,\n\t\t\t\t9F9106DB19F5614900AD5CAB /* CCSharpenFilter.cpp in Sources */,\n\t\t\t\t87BA71911A44A5CB00929C43 /* ConsoleCommand.cpp in Sources */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n\t\tF293B3C415EB7BE500256477 /* Sources */ = {\n\t\t\tisa = PBXSourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\t15AA9648199B6D4600725633 /* lua_debugger.c in Sources */,\n\t\t\t\t9F91074819F5614900AD5CAB /* OpenUDIDIOS.m in Sources */,\n\t\t\t\t9F9106D619F5614900AD5CAB /* CCSaturationFilter.cpp in Sources */,\n\t\t\t\t9F91073819F5614900AD5CAB /* CCStore.mm in Sources */,\n\t\t\t\t9F91073619F5614900AD5CAB /* CCNativeIOS.mm in Sources */,\n\t\t\t\t9F91074219F5614900AD5CAB /* SBJsonBase.m in Sources */,\n\t\t\t\t9F9106E019F5614900AD5CAB /* ccFilterShaders.cpp in Sources */,\n\t\t\t\t87BA718B1A44A57100929C43 /* FileServer.cpp in Sources */,\n\t\t\t\t49C656541A39A1A200603AF5 /* NVGDrawNode.cpp in Sources */,\n\t\t\t\t9F91078D19F5658D00AD5CAB /* lua_cocos2dx_extension_filter_auto.cpp in Sources */,\n\t\t\t\t9F9106D819F5614900AD5CAB /* CCSepiaFilter.cpp in Sources */,\n\t\t\t\t49C6565E1A39A22400603AF5 /* lua_cocos2dx_extension_nanovg_auto.cpp in Sources */,\n\t\t\t\t9F9106DC19F5614900AD5CAB /* CCTestFilter.cpp in Sources */,\n\t\t\t\t49C656601A39A22400603AF5 /* lua_cocos2dx_extension_nanovg_manual.cpp in Sources */,\n\t\t\t\tC00FD4981938512100C6382D /* Portrait_png.cpp in Sources */,\n\t\t\t\t9F91074A19F5614900AD5CAB /* CCNetworkIOSMac.mm in Sources */,\n\t\t\t\t9F91071E19F5614900AD5CAB /* cocos2dx_extra_luabinding.cpp in Sources */,\n\t\t\t\t9F9106D219F5614900AD5CAB /* CCMaskFilter.cpp in Sources */,\n\t\t\t\t9F9106DE19F5614900AD5CAB /* CCFilteredSprite.cpp in Sources */,\n\t\t\t\t9F9106CC19F5614900AD5CAB /* CCGrayFilter.cpp in Sources */,\n\t\t\t\t9F91079619F56A6600AD5CAB /* SimulatorConfig.cpp in Sources */,\n\t\t\t\t5023812517EBBCAC00990C9B /* RootViewController.mm in Sources */,\n\t\t\t\tC00FD4921938512100C6382D /* Landscape_png.cpp in Sources */,\n\t\t\t\t9F91074019F5614900AD5CAB /* SBJSON.m in Sources */,\n\t\t\t\t9F91073E19F5614900AD5CAB /* CCStoreReceiptVerifyRequestIOS.mm in Sources */,\n\t\t\t\t9F91072219F5614900AD5CAB /* HelperFunc_luabinding.cpp in Sources */,\n\t\t\t\tF293BB9C15EB831F00256477 /* AppDelegate.cpp in Sources */,\n\t\t\t\t9F91076819F5614900AD5CAB /* CCStoreProduct.cpp in Sources */,\n\t\t\t\tC00FD49A1938512100C6382D /* Runtime.cpp in Sources */,\n\t\t\t\t9F91072619F5614900AD5CAB /* CCHTTPRequest.cpp in Sources */,\n\t\t\t\t87BA71901A44A5CA00929C43 /* ConsoleCommand.cpp in Sources */,\n\t\t\t\t9F9106C219F5614900AD5CAB /* CCCustomFilter.cpp in Sources */,\n\t\t\t\t9F9106BE19F5614900AD5CAB /* CCBrightnessFilter.cpp in Sources */,\n\t\t\t\t9F9106CE19F5614900AD5CAB /* CCHazeFilter.cpp in Sources */,\n\t\t\t\t9F91074419F5614900AD5CAB /* SBJsonParser.m in Sources */,\n\t\t\t\t9F91074C19F5614900AD5CAB /* ReachabilityIOSMac.m in Sources */,\n\t\t\t\t9F91077A19F5614900AD5CAB /* lsqlite3.c in Sources */,\n\t\t\t\t9F91077E19F5614900AD5CAB /* lua_extensions_more.c in Sources */,\n\t\t\t\t9F91073419F5614900AD5CAB /* CCNative.mm in Sources */,\n\t\t\t\t9F91077819F5614900AD5CAB /* lpack.c in Sources */,\n\t\t\t\t9F91079419F56A6600AD5CAB /* ProjectConfig.cpp in Sources */,\n\t\t\t\tC06C3796191A1D1E00617BED /* ConfigParser.cpp in Sources */,\n\t\t\t\t9F9106C019F5614900AD5CAB /* CCContrastFilter.cpp in Sources */,\n\t\t\t\tC00FD4961938512100C6382D /* PlayEnable_png.cpp in Sources */,\n\t\t\t\t49C656581A39A1A200603AF5 /* nanovg.c in Sources */,\n\t\t\t\t49C656561A39A1A200603AF5 /* NVGNode.cpp in Sources */,\n\t\t\t\t3EB5152C19528284006966AA /* Protos.pb.cc in Sources */,\n\t\t\t\t9F9106D419F5614900AD5CAB /* CCRGBFilter.cpp in Sources */,\n\t\t\t\t9F91077019F5614900AD5CAB /* strbuf.c in Sources */,\n\t\t\t\tC00FD4941938512100C6382D /* PlayDisable_png.cpp in Sources */,\n\t\t\t\t9F91077619F5614900AD5CAB /* lfs.c in Sources */,\n\t\t\t\t9F91077C19F5614900AD5CAB /* sqlite3.c in Sources */,\n\t\t\t\t9F91076E19F5614900AD5CAB /* lua_cjson.c in Sources */,\n\t\t\t\t9F9106D019F5614900AD5CAB /* CCHueFilter.cpp in Sources */,\n\t\t\t\tC00FD49C1938512100C6382D /* Shine_png.cpp in Sources */,\n\t\t\t\t9F9106B619F5614900AD5CAB /* CCCrypto.cpp in Sources */,\n\t\t\t\t9F91074619F5614900AD5CAB /* SBJsonWriter.m in Sources */,\n\t\t\t\t9F9106BC19F5614900AD5CAB /* CCBlurFilter.cpp in Sources */,\n\t\t\t\t9F91078019F5614900AD5CAB /* lua_zlib.c in Sources */,\n\t\t\t\t9F91073219F5614900AD5CAB /* CCCryptoIOS.mm in Sources */,\n\t\t\t\t9F91076619F5614900AD5CAB /* CCStorePaymentTransaction.cpp in Sources */,\n\t\t\t\t5023812417EBBCAC00990C9B /* main.m in Sources */,\n\t\t\t\t9F91072819F5614900AD5CAB /* CCNetwork.cpp in Sources */,\n\t\t\t\t9F91078719F561CD00AD5CAB /* HelperFunc.cpp in Sources */,\n\t\t\t\t87BA718F1A44A5BF00929C43 /* ConnectWaitLayer.cpp in Sources */,\n\t\t\t\t9F91073C19F5614900AD5CAB /* CCStorePaymentTransactionWrapper.mm in Sources */,\n\t\t\t\t9F91070E19F5614900AD5CAB /* FilterShaders.cpp in Sources */,\n\t\t\t\t9F9106C419F5614900AD5CAB /* CCDropShadowFilter.cpp in Sources */,\n\t\t\t\t9F9106B419F5614900AD5CAB /* libbase64.c in Sources */,\n\t\t\t\tC033B51C191B337200D06937 /* VisibleRect.cpp in Sources */,\n\t\t\t\t9F91076C19F5614900AD5CAB /* fpconv.c in Sources */,\n\t\t\t\t9F9106C619F5614900AD5CAB /* CCExposureFilter.cpp in Sources */,\n\t\t\t\tC0619CD71896894800872C26 /* Runtime_ios-mac.mm in Sources */,\n\t\t\t\t9F9106DA19F5614900AD5CAB /* CCSharpenFilter.cpp in Sources */,\n\t\t\t\t9F9106CA19F5614900AD5CAB /* CCGammaFilter.cpp in Sources */,\n\t\t\t\t9F91071A19F5614900AD5CAB /* cocos2dx_extra_ios_iap_luabinding.cpp in Sources */,\n\t\t\t\t5023811817EBBCAC00990C9B /* AppController.mm in Sources */,\n\t\t\t\t9F91073A19F5614900AD5CAB /* CCStoreIOS.mm in Sources */,\n\t\t\t\t9F9106C819F5614900AD5CAB /* CCFilter.cpp in Sources */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n/* End PBXSourcesBuildPhase section */\n\n/* Begin PBXTargetDependency section */\n\t\t152A349F199CE72E004B68DC /* PBXTargetDependency */ = {\n\t\t\tisa = PBXTargetDependency;\n\t\t\tname = \"libluacocos2d iOS\";\n\t\t\ttargetProxy = 152A349E199CE72E004B68DC /* PBXContainerItemProxy */;\n\t\t};\n\t\t152A34B9199CE758004B68DC /* PBXTargetDependency */ = {\n\t\t\tisa = PBXTargetDependency;\n\t\t\tname = \"libluacocos2d Mac\";\n\t\t\ttargetProxy = 152A34B8199CE758004B68DC /* PBXContainerItemProxy */;\n\t\t};\n\t\t15D1F3091994BBCA00302043 /* PBXTargetDependency */ = {\n\t\t\tisa = PBXTargetDependency;\n\t\t\tname = \"libcocos2d iOS\";\n\t\t\ttargetProxy = 15D1F3081994BBCA00302043 /* PBXContainerItemProxy */;\n\t\t};\n\t\tC0A2F04118975FF80072A7AB /* PBXTargetDependency */ = {\n\t\t\tisa = PBXTargetDependency;\n\t\t\tname = \"cocos2dx Mac\";\n\t\t\ttargetProxy = C0A2F04018975FF80072A7AB /* PBXContainerItemProxy */;\n\t\t};\n/* End PBXTargetDependency section */\n\n/* Begin PBXVariantGroup section */\n\t\tF405C6CB19ED14AA005AD31C /* MainMenu.xib */ = {\n\t\t\tisa = PBXVariantGroup;\n\t\t\tchildren = (\n\t\t\t\tF405C6CA19ED14AA005AD31C /* en */,\n\t\t\t);\n\t\t\tname = MainMenu.xib;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n/* End PBXVariantGroup section */\n\n/* Begin XCBuildConfiguration section */\n\t\t5023816917EBBCE400990C9B /* Debug */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tALWAYS_SEARCH_USER_PATHS = YES;\n\t\t\t\tARCHS = \"$(ARCHS_STANDARD_64_BIT)\";\n\t\t\t\tCOMBINE_HIDPI_IMAGES = YES;\n\t\t\t\tCONFIGURATION_BUILD_DIR = ../../../runtime/mac;\n\t\t\t\tGCC_DYNAMIC_NO_PIC = NO;\n\t\t\t\tGCC_PRECOMPILE_PREFIX_HEADER = YES;\n\t\t\t\tGCC_PREFIX_HEADER = mac/Prefix.pch;\n\t\t\t\tGCC_PREPROCESSOR_DEFINITIONS = (\n\t\t\t\t\tGLFW_EXPOSE_NATIVE_COCOA,\n\t\t\t\t\tGLFW_EXPOSE_NATIVE_NSGL,\n\t\t\t\t\tCC_TARGET_OS_MAC,\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tHEADER_SEARCH_PATHS = \"\";\n\t\t\t\tINFOPLIST_FILE = mac/Info.plist;\n\t\t\t\tLIBRARY_SEARCH_PATHS = \"\";\n\t\t\t\tMACOSX_DEPLOYMENT_TARGET = 10.8;\n\t\t\t\tOTHER_LDFLAGS = (\n\t\t\t\t\t\"-image_base\",\n\t\t\t\t\t100000000,\n\t\t\t\t\t\"-pagezero_size\",\n\t\t\t\t\t10000,\n\t\t\t\t);\n\t\t\t\tSDKROOT = macosx;\n\t\t\t\tUSER_HEADER_SEARCH_PATHS = \"$(inherited) \\\"$(QUICK_V3_ROOT)/cocos\\\" \\\"$(QUICK_V3_ROOT)/cocos\\\" \\\"$(QUICK_V3_ROOT)/cocos/base\\\" \\\"$(QUICK_V3_ROOT)/cocos/physics\\\" \\\"$(QUICK_V3_ROOT)/cocos/math/kazmath\\\" \\\"$(QUICK_V3_ROOT)/cocos/2d\\\" \\\"$(QUICK_V3_ROOT)/cocos/ui\\\" \\\"$(QUICK_V3_ROOT)/cocos/network\\\" \\\"$(QUICK_V3_ROOT)/cocos/audio/include\\\" \\\"$(QUICK_V3_ROOT)/cocos/editor-support\\\" \\\"$(QUICK_V3_ROOT)/extensions\\\" \\\"$(QUICK_V3_ROOT)/external\\\" \\\"$(QUICK_V3_ROOT)/external/chipmunk/include/chipmunk\\\" \\\"$(QUICK_V3_ROOT)/external/lua/luajit/include\\\" \\\"$(QUICK_V3_ROOT)/external/lua/tolua\\\" \\\"$(QUICK_V3_ROOT)/external/glfw3/include/mac\\\" \\\"$(QUICK_V3_ROOT)/external/lua/luajit/include\\\" \\\"$(QUICK_V3_ROOT)/cocos/scripting/lua-bindings/manual\\\" \\\"$(QUICK_V3_ROOT)/cocos/scripting/lua-bindings/auto\\\" \\\"$(QUICK_V3_ROOT)/cocos/scripting/lua-bindings/manual\\\" \\\"$(QUICK_V3_ROOT)/quick/lib/quick-src\\\" \\\"$(QUICK_V3_ROOT)/quick/lib/quick-src/extra\\\" \\\"$(QUICK_V3_ROOT)/external/protobuf-lite/src\\\"\";\n\t\t\t};\n\t\t\tname = Debug;\n\t\t};\n\t\t5023816A17EBBCE400990C9B /* Release */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tALWAYS_SEARCH_USER_PATHS = YES;\n\t\t\t\tARCHS = \"$(ARCHS_STANDARD_64_BIT)\";\n\t\t\t\tCOMBINE_HIDPI_IMAGES = YES;\n\t\t\t\tGCC_PRECOMPILE_PREFIX_HEADER = YES;\n\t\t\t\tGCC_PREFIX_HEADER = mac/Prefix.pch;\n\t\t\t\tGCC_PREPROCESSOR_DEFINITIONS = (\n\t\t\t\t\tGLFW_EXPOSE_NATIVE_COCOA,\n\t\t\t\t\tGLFW_EXPOSE_NATIVE_NSGL,\n\t\t\t\t\tCC_TARGET_OS_MAC,\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tHEADER_SEARCH_PATHS = \"\";\n\t\t\t\tINFOPLIST_FILE = mac/Info.plist;\n\t\t\t\tLIBRARY_SEARCH_PATHS = \"\";\n\t\t\t\tMACOSX_DEPLOYMENT_TARGET = 10.8;\n\t\t\t\tOTHER_LDFLAGS = (\n\t\t\t\t\t\"-image_base\",\n\t\t\t\t\t100000000,\n\t\t\t\t\t\"-pagezero_size\",\n\t\t\t\t\t10000,\n\t\t\t\t);\n\t\t\t\tSDKROOT = macosx;\n\t\t\t\tUSER_HEADER_SEARCH_PATHS = \"$(inherited) \\\"$(QUICK_V3_ROOT)/cocos\\\" \\\"$(QUICK_V3_ROOT)/cocos\\\" \\\"$(QUICK_V3_ROOT)/cocos/base\\\" \\\"$(QUICK_V3_ROOT)/cocos/physics\\\" \\\"$(QUICK_V3_ROOT)/cocos/math/kazmath\\\" \\\"$(QUICK_V3_ROOT)/cocos/2d\\\" \\\"$(QUICK_V3_ROOT)/cocos/ui\\\" \\\"$(QUICK_V3_ROOT)/cocos/network\\\" \\\"$(QUICK_V3_ROOT)/cocos/audio/include\\\" \\\"$(QUICK_V3_ROOT)/cocos/editor-support\\\" \\\"$(QUICK_V3_ROOT)/extensions\\\" \\\"$(QUICK_V3_ROOT)/external\\\" \\\"$(QUICK_V3_ROOT)/external/chipmunk/include/chipmunk\\\" \\\"$(QUICK_V3_ROOT)/external/lua/luajit/include\\\" \\\"$(QUICK_V3_ROOT)/external/lua/tolua\\\" \\\"$(QUICK_V3_ROOT)/external/glfw3/include/mac\\\" \\\"$(QUICK_V3_ROOT)/external/lua/luajit/include\\\" \\\"$(QUICK_V3_ROOT)/cocos/scripting/lua-bindings/manual\\\" \\\"$(QUICK_V3_ROOT)/cocos/scripting/lua-bindings/auto\\\" \\\"$(QUICK_V3_ROOT)/cocos/scripting/lua-bindings/manual\\\" \\\"$(QUICK_V3_ROOT)/quick/lib/quick-src\\\" \\\"$(QUICK_V3_ROOT)/quick/lib/quick-src/extra\\\" \\\"$(QUICK_V3_ROOT)/external/protobuf-lite/src\\\"\";\n\t\t\t};\n\t\t\tname = Release;\n\t\t};\n\t\tF293B6C215EB7BEA00256477 /* Debug */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tCLANG_CXX_LANGUAGE_STANDARD = \"c++0x\";\n\t\t\t\tCLANG_CXX_LIBRARY = \"libc++\";\n\t\t\t\tCOPY_PHASE_STRIP = NO;\n\t\t\t\tGCC_C_LANGUAGE_STANDARD = c99;\n\t\t\t\tGCC_OPTIMIZATION_LEVEL = 0;\n\t\t\t\tGCC_PREPROCESSOR_DEFINITIONS = (\n\t\t\t\t\tDEBUG,\n\t\t\t\t\t\"COCOS2D_DEBUG=1\",\n\t\t\t\t\tUSE_FILE32API,\n\t\t\t\t\t\"CC_LUA_ENGINE_ENABLED=1\",\n\t\t\t\t\t\"CC_ENABLE_CHIPMUNK_INTEGRATION=1\",\n\t\t\t\t\tGLFW_EXPOSE_NATIVE_COCOA,\n\t\t\t\t\t\"CC_USE_SQLITE=1\",\n\t\t\t\t\t\"CC_USE_CURL=1\",\n\t\t\t\t);\n\t\t\t\tGCC_SYMBOLS_PRIVATE_EXTERN = NO;\n\t\t\t\tGCC_WARN_ABOUT_RETURN_TYPE = YES;\n\t\t\t\tGCC_WARN_UNUSED_VARIABLE = YES;\n\t\t\t\tHEADER_SEARCH_PATHS = (\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t\t\"\\\"$(QUICK_V3_ROOT)/cocos\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_V3_ROOT)/cocos\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_V3_ROOT)/cocos/base\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_V3_ROOT)/cocos/physics\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_V3_ROOT)/cocos/math/kazmath\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_V3_ROOT)/cocos/2d\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_V3_ROOT)/cocos/ui\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_V3_ROOT)/cocos/network\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_V3_ROOT)/cocos/audio/include\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_V3_ROOT)/cocos/editor-support\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_V3_ROOT)/extensions\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_V3_ROOT)/external\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_V3_ROOT)/external/chipmunk/include/chipmunk\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_V3_ROOT)/external/lua/luajit/include\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_V3_ROOT)/external/lua/tolua\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_V3_ROOT)/external/glfw3/include/mac\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_V3_ROOT)/external/lua/luajit/include\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_V3_ROOT)/cocos/scripting/lua-bindings/manual\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_V3_ROOT)/cocos/scripting/lua-bindings/auto\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_V3_ROOT)/cocos/scripting/lua-bindings/manual\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_V3_ROOT)/quick/lib/quick-src\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_V3_ROOT)/quick/lib/quick-src/extra\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_V3_ROOT)/external/protobuf-lite/src\\\"\",\n\t\t\t\t);\n\t\t\t\tONLY_ACTIVE_ARCH = YES;\n\t\t\t\tPRODUCT_NAME = \"$(TARGET_NAME)\";\n\t\t\t\tUSER_HEADER_SEARCH_PATHS = \"\";\n\t\t\t};\n\t\t\tname = Debug;\n\t\t};\n\t\tF293B6C315EB7BEA00256477 /* Release */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tCLANG_CXX_LANGUAGE_STANDARD = \"c++0x\";\n\t\t\t\tCLANG_CXX_LIBRARY = \"libc++\";\n\t\t\t\tGCC_C_LANGUAGE_STANDARD = c99;\n\t\t\t\tGCC_PREPROCESSOR_DEFINITIONS = (\n\t\t\t\t\tNDEBUG,\n\t\t\t\t\tUSE_FILE32API,\n\t\t\t\t\t\"CC_LUA_ENGINE_ENABLED=1\",\n\t\t\t\t\t\"CC_ENABLE_CHIPMUNK_INTEGRATION=1\",\n\t\t\t\t\t\"CC_USE_SQLITE=1\",\n\t\t\t\t\t\"CC_USE_CURL=1\",\n\t\t\t\t);\n\t\t\t\tGCC_WARN_ABOUT_RETURN_TYPE = YES;\n\t\t\t\tGCC_WARN_UNUSED_VARIABLE = YES;\n\t\t\t\tHEADER_SEARCH_PATHS = (\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t\t\"\\\"$(QUICK_V3_ROOT)/cocos\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_V3_ROOT)/cocos\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_V3_ROOT)/cocos/base\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_V3_ROOT)/cocos/physics\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_V3_ROOT)/cocos/math/kazmath\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_V3_ROOT)/cocos/2d\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_V3_ROOT)/cocos/ui\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_V3_ROOT)/cocos/network\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_V3_ROOT)/cocos/audio/include\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_V3_ROOT)/cocos/editor-support\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_V3_ROOT)/extensions\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_V3_ROOT)/external\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_V3_ROOT)/external/chipmunk/include/chipmunk\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_V3_ROOT)/external/lua/luajit/include\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_V3_ROOT)/external/lua/tolua\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_V3_ROOT)/external/glfw3/include/mac\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_V3_ROOT)/external/lua/luajit/include\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_V3_ROOT)/cocos/scripting/lua-bindings/manual\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_V3_ROOT)/cocos/scripting/lua-bindings/auto\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_V3_ROOT)/cocos/scripting/lua-bindings/manual\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_V3_ROOT)/quick/lib/quick-src\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_V3_ROOT)/quick/lib/quick-src/extra\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_V3_ROOT)/external/protobuf-lite/src\\\"\",\n\t\t\t\t);\n\t\t\t\tOTHER_CFLAGS = \"-DNS_BLOCK_ASSERTIONS=1\";\n\t\t\t\tPRODUCT_NAME = \"$(TARGET_NAME)\";\n\t\t\t\tUSER_HEADER_SEARCH_PATHS = \"\";\n\t\t\t\tVALIDATE_PRODUCT = YES;\n\t\t\t};\n\t\t\tname = Release;\n\t\t};\n\t\tF293B6C515EB7BEA00256477 /* Debug */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tALWAYS_SEARCH_USER_PATHS = YES;\n\t\t\t\tCODE_SIGN_IDENTITY = \"iPhone Developer\";\n\t\t\t\tCOMPRESS_PNG_FILES = NO;\n\t\t\t\tGCC_DYNAMIC_NO_PIC = NO;\n\t\t\t\tGCC_PRECOMPILE_PREFIX_HEADER = YES;\n\t\t\t\tGCC_PREFIX_HEADER = ios/Prefix.pch;\n\t\t\t\tGCC_PREPROCESSOR_DEFINITIONS = (\n\t\t\t\t\tCC_TARGET_OS_IPHONE,\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tHEADER_SEARCH_PATHS = (\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t\t\"\\\"$(QUICK_V3_ROOT)/cocos\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_V3_ROOT)/cocos\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_V3_ROOT)/cocos/base\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_V3_ROOT)/cocos/physics\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_V3_ROOT)/cocos/math/kazmath\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_V3_ROOT)/cocos/2d\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_V3_ROOT)/cocos/ui\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_V3_ROOT)/cocos/network\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_V3_ROOT)/cocos/audio/include\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_V3_ROOT)/cocos/editor-support\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_V3_ROOT)/extensions\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_V3_ROOT)/external\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_V3_ROOT)/external/chipmunk/include/chipmunk\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_V3_ROOT)/external/lua/luajit/include\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_V3_ROOT)/external/lua/tolua\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_V3_ROOT)/external/glfw3/include/mac\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_V3_ROOT)/external/lua/luajit/include\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_V3_ROOT)/cocos/scripting/lua-bindings/manual\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_V3_ROOT)/cocos/scripting/lua-bindings/auto\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_V3_ROOT)/cocos/scripting/lua-bindings/manual\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_V3_ROOT)/quick/lib/quick-src\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_V3_ROOT)/quick/lib/quick-src/extra\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_V3_ROOT)/external/protobuf-lite/src\\\"\",\n\t\t\t\t);\n\t\t\t\tINFOPLIST_FILE = ios/Info.plist;\n\t\t\t\tIPHONEOS_DEPLOYMENT_TARGET = 5.0;\n\t\t\t\tLIBRARY_SEARCH_PATHS = \"\";\n\t\t\t\tSDKROOT = iphoneos;\n\t\t\t\tTARGETED_DEVICE_FAMILY = \"1,2\";\n\t\t\t\tUSER_HEADER_SEARCH_PATHS = \"$(inherited) \\\"$(QUICK_V3_ROOT)/cocos/platform/ios\\\" \\\"$(QUICK_V3_ROOT)/external/curl/include/ios\\\"\";\n\t\t\t\tVALID_ARCHS = \"arm64 armv7\";\n\t\t\t};\n\t\t\tname = Debug;\n\t\t};\n\t\tF293B6C615EB7BEA00256477 /* Release */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tALWAYS_SEARCH_USER_PATHS = YES;\n\t\t\t\tCODE_SIGN_IDENTITY = \"iPhone Developer\";\n\t\t\t\tCOMPRESS_PNG_FILES = NO;\n\t\t\t\tGCC_PRECOMPILE_PREFIX_HEADER = YES;\n\t\t\t\tGCC_PREFIX_HEADER = ios/Prefix.pch;\n\t\t\t\tGCC_PREPROCESSOR_DEFINITIONS = (\n\t\t\t\t\tCC_TARGET_OS_IPHONE,\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tHEADER_SEARCH_PATHS = (\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t\t\"\\\"$(QUICK_V3_ROOT)/cocos\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_V3_ROOT)/cocos\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_V3_ROOT)/cocos/base\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_V3_ROOT)/cocos/physics\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_V3_ROOT)/cocos/math/kazmath\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_V3_ROOT)/cocos/2d\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_V3_ROOT)/cocos/ui\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_V3_ROOT)/cocos/network\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_V3_ROOT)/cocos/audio/include\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_V3_ROOT)/cocos/editor-support\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_V3_ROOT)/extensions\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_V3_ROOT)/external\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_V3_ROOT)/external/chipmunk/include/chipmunk\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_V3_ROOT)/external/lua/luajit/include\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_V3_ROOT)/external/lua/tolua\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_V3_ROOT)/external/glfw3/include/mac\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_V3_ROOT)/external/lua/luajit/include\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_V3_ROOT)/cocos/scripting/lua-bindings/manual\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_V3_ROOT)/cocos/scripting/lua-bindings/auto\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_V3_ROOT)/cocos/scripting/lua-bindings/manual\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_V3_ROOT)/quick/lib/quick-src\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_V3_ROOT)/quick/lib/quick-src/extra\\\"\",\n\t\t\t\t\t\"\\\"$(QUICK_V3_ROOT)/external/protobuf-lite/src\\\"\",\n\t\t\t\t);\n\t\t\t\tINFOPLIST_FILE = ios/Info.plist;\n\t\t\t\tIPHONEOS_DEPLOYMENT_TARGET = 5.0;\n\t\t\t\tLIBRARY_SEARCH_PATHS = \"\";\n\t\t\t\tSDKROOT = iphoneos;\n\t\t\t\tTARGETED_DEVICE_FAMILY = \"1,2\";\n\t\t\t\tUSER_HEADER_SEARCH_PATHS = \"$(inherited) \\\"$(QUICK_V3_ROOT)/cocos/platform/ios\\\" \\\"$(QUICK_V3_ROOT)/external/curl/include/ios\\\"\";\n\t\t\t\tVALID_ARCHS = \"arm64 armv7\";\n\t\t\t};\n\t\t\tname = Release;\n\t\t};\n/* End XCBuildConfiguration section */\n\n/* Begin XCConfigurationList section */\n\t\t5023816817EBBCE400990C9B /* Build configuration list for PBXNativeTarget \"mir9 Mac\" */ = {\n\t\t\tisa = XCConfigurationList;\n\t\t\tbuildConfigurations = (\n\t\t\t\t5023816917EBBCE400990C9B /* Debug */,\n\t\t\t\t5023816A17EBBCE400990C9B /* Release */,\n\t\t\t);\n\t\t\tdefaultConfigurationIsVisible = 0;\n\t\t\tdefaultConfigurationName = Release;\n\t\t};\n\t\tF293B3C215EB7BE500256477 /* Build configuration list for PBXProject \"mir9\" */ = {\n\t\t\tisa = XCConfigurationList;\n\t\t\tbuildConfigurations = (\n\t\t\t\tF293B6C215EB7BEA00256477 /* Debug */,\n\t\t\t\tF293B6C315EB7BEA00256477 /* Release */,\n\t\t\t);\n\t\t\tdefaultConfigurationIsVisible = 0;\n\t\t\tdefaultConfigurationName = Release;\n\t\t};\n\t\tF293B6C415EB7BEA00256477 /* Build configuration list for PBXNativeTarget \"mir9 iOS\" */ = {\n\t\t\tisa = XCConfigurationList;\n\t\t\tbuildConfigurations = (\n\t\t\t\tF293B6C515EB7BEA00256477 /* Debug */,\n\t\t\t\tF293B6C615EB7BEA00256477 /* Release */,\n\t\t\t);\n\t\t\tdefaultConfigurationIsVisible = 0;\n\t\t\tdefaultConfigurationName = Release;\n\t\t};\n/* End XCConfigurationList section */\n\t};\n\trootObject = F293B3BF15EB7BE500256477 /* Project object */;\n}\n"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/proj.win32/Runtime_win32.cpp",
    "content": "\n#include <io.h>\n#include <direct.h>\n#include <stdio.h>\n#include <vector>\n#include <string>\n\n#include \"cocos2d.h\"\nusing namespace std;\n\nstring getIPAddress()\n{\n    WSADATA wsaData;  \n    char name[155]={0};\n    char *ip=nullptr;\n    PHOSTENT hostinfo;\n\n    if ( WSAStartup( MAKEWORD(2,0), &wsaData ) == 0 )   \n    {  \n        if( gethostname ( name, sizeof(name)) == 0)   \n        { \n            if((hostinfo = gethostbyname(name)) != NULL)   \n            { \n                ip = inet_ntoa (*(struct in_addr *)*hostinfo->h_addr_list);\n            }   \n        }   \n        WSACleanup( );\n    }   \n    return ip;\n}\n"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/proj.win32/SimulatorWindow.cpp",
    "content": "/****************************************************************************\nCopyright (c) 2013 cocos2d-x.org\n\nhttp://www.cocos2d-x.org\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in\nall copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\nTHE SOFTWARE.\n****************************************************************************/\n\n#include \"SimulatorWindow.h\"\n\n#include \"cocos2d.h\"\n#include \"resource.h\"\n#include \"runtime/Runtime.h\"\n#include \"ConfigParser.h\"\n\n#include <string>\n#include <vector>\nusing namespace std;\nusing namespace cocos2d;\n\n\nWNDPROC g_oldProc=NULL;\nbool g_landscape=false;\nbool g_windTop = false;\nCCSize g_screenSize;\nGLView* g_eglView=NULL;\nINT_PTR CALLBACK AboutDialogCallback(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam);\n\n\nvoid createViewMenu()\n{\n    HMENU hSysMenu = GetSystemMenu(g_eglView->getWin32Window(), FALSE);\n    HMENU viewMenu = GetSubMenu(hSysMenu, 8);\n    for (int i = ConfigParser::getInstance()->getScreenSizeCount() - 1; i >= 0; --i)\n    {\n        SimulatorScreenSize size = ConfigParser::getInstance()->getScreenSize(i);\n        wstring menuName;\n        menuName.assign(size.title.begin(), size.title.end());\n\n        MENUITEMINFO item;\n        ZeroMemory(&item, sizeof(item));\n        item.cbSize = sizeof(item);\n        item.fMask = MIIM_FTYPE | MIIM_ID | MIIM_STRING;\n        item.fType = MFT_STRING;\n        item.wID = ID_VIEW_SIZE + i;\n        item.dwTypeData = (LPTSTR)menuName.c_str();\n        item.cch = menuName.length();\n\n        InsertMenuItem(viewMenu, 0, TRUE, &item);\n    }\n}\n\nvoid updateMenu()\n{\n    HMENU hSysMenu = GetSystemMenu(g_eglView->getWin32Window(), FALSE);\n    HMENU viewMenu = GetSubMenu(hSysMenu, 8);\n    HMENU viewControl = GetSubMenu(hSysMenu, 9);\n\n    if (g_landscape)\n    {\n        CheckMenuItem(viewMenu, ID_VIEW_PORTRAIT, MF_BYCOMMAND | MF_UNCHECKED);\n        CheckMenuItem(viewMenu, ID_VIEW_LANDSCAPE, MF_BYCOMMAND | MF_CHECKED);\n    }\n    else\n    {\n        CheckMenuItem(viewMenu, ID_VIEW_PORTRAIT, MF_BYCOMMAND | MF_CHECKED);\n        CheckMenuItem(viewMenu, ID_VIEW_LANDSCAPE, MF_BYCOMMAND | MF_UNCHECKED);\n    }\n\n    if (g_windTop)\n    {\n        ::SetWindowPos(g_eglView->getWin32Window(),HWND_TOPMOST,0,0,0,0,SWP_NOMOVE|SWP_NOSIZE);\n        CheckMenuItem(viewControl, ID_CONTROL_TOP, MF_BYCOMMAND | MF_CHECKED);\n\n    }else\n    {\n        ::SetWindowPos(g_eglView->getWin32Window(),HWND_NOTOPMOST,0,0,0,0,SWP_NOMOVE|SWP_NOSIZE);\n        CheckMenuItem(viewControl, ID_CONTROL_TOP, MF_BYCOMMAND | MF_UNCHECKED);\n    }\n    int width = g_screenSize.width;\n    int height = g_screenSize.height;\n    if (height > width)\n    {\n        int w = width;\n        width = height;\n        height = w;\n    }\n\n    int count = ConfigParser::getInstance()->getScreenSizeCount();\n    for (int i = 0; i < count; ++i)\n    {\n        bool bSel = false;\n\n        SimulatorScreenSize size = ConfigParser::getInstance()->getScreenSize(i);\n        if (size.width == width && size.height == height)\n        {\n            bSel = true;\n        }\n        CheckMenuItem(viewMenu, i, MF_BYPOSITION | (bSel? MF_CHECKED : MF_UNCHECKED));\n    }\n\n    int scale=g_eglView->getFrameZoomFactor()*100;\n    CheckMenuItem(viewMenu, ID_VIEW_ZOOMOUT100, MF_BYCOMMAND | MF_UNCHECKED);\n    CheckMenuItem(viewMenu, ID_VIEW_ZOOMOUT75, MF_BYCOMMAND | MF_UNCHECKED);\n    CheckMenuItem(viewMenu, ID_VIEW_ZOOMOUT50, MF_BYCOMMAND | MF_UNCHECKED);\n    CheckMenuItem(viewMenu, ID_VIEW_ZOOMOUT25, MF_BYCOMMAND | MF_UNCHECKED);\n    switch (scale)\n    {\n    case 100:\n        CheckMenuItem(viewMenu, ID_VIEW_ZOOMOUT100, MF_BYCOMMAND | MF_CHECKED);\n        break;\n    case 75:\n        CheckMenuItem(viewMenu, ID_VIEW_ZOOMOUT75, MF_BYCOMMAND | MF_CHECKED);\n        break;\n    case 50:\n        CheckMenuItem(viewMenu, ID_VIEW_ZOOMOUT50, MF_BYCOMMAND | MF_CHECKED);\n        break;\n    case 25:\n        CheckMenuItem(viewMenu, ID_VIEW_ZOOMOUT25, MF_BYCOMMAND | MF_CHECKED);\n        break;\n    default:\n        break;\n    }\n}\n\n/*@brief updateView*/\nvoid updateView()\n{\n\n    auto policy = g_eglView->getResolutionPolicy();\n    auto designSize = g_eglView->getDesignResolutionSize();\n\n    if (g_landscape)\n    {\n        g_eglView->setFrameSize(g_screenSize.width, g_screenSize.height);\n    }\n    else\n    {\n        g_eglView->setFrameSize(g_screenSize.height, g_screenSize.width);\n    }\n\n    g_eglView->setDesignResolutionSize(designSize.width, designSize.height, policy);\n\n    updateMenu();\n}\n\nvoid onViewChangeOrientation(int viewMenuID)\n{\n    if (viewMenuID == ID_VIEW_PORTRAIT && g_landscape)\n    {\n        g_landscape = false;\n        updateView();\n    }\n    else if (viewMenuID == ID_VIEW_LANDSCAPE && !g_landscape)\n    {\n        g_landscape = true;\n        updateView();\n    }\n}\n\nvoid onViewZoomOut(int viewMenuID)\n{\n    float scale = 1.0;\n    switch (viewMenuID)\n    {\n    case ID_VIEW_ZOOMOUT100:\n        scale=1.0;\n        break;\n    case ID_VIEW_ZOOMOUT75:\n        scale=0.75;\n        break;\n    case ID_VIEW_ZOOMOUT50:\n        scale=0.50;\n        break;\n    case ID_VIEW_ZOOMOUT25:\n        scale=0.25;\n        break;\n    default:\n        break;\n    }\n\tdynamic_cast<GLViewImpl*>(g_eglView)->setFrameZoomFactor(scale);\n    updateView();\n}\n\nvoid onViewChangeFrameSize(int viewMenuID)\n{\n    int index = viewMenuID - ID_VIEW_SIZE;\n    if (index >= 0 && index < ConfigParser::getInstance()->getScreenSizeCount())\n    {\n        SimulatorScreenSize size = ConfigParser::getInstance()->getScreenSize(index);\n        g_screenSize.width = size.width;\n        g_screenSize.height = size.height;\n        updateView();\t\n    }\n}\n\nvoid onHelpAbout()\n{\n    DialogBox(GetModuleHandle(NULL), MAKEINTRESOURCE(IDD_DIALOG_ABOUT), g_eglView->getWin32Window(), AboutDialogCallback);\n}\n\nvoid shutDownApp()\n{\n    HWND hWnd=g_eglView->getWin32Window();\n    ::SendMessage(hWnd,WM_CLOSE,NULL,NULL);\n}\n\nvoid reStart()\n{\n    PROCESS_INFORMATION info;\n    STARTUPINFO startup;\n    TCHAR szPath[128]={0};\n    TCHAR *szCmdLine=NULL;\n    GetModuleFileName(NULL, szPath, sizeof(szPath));\n    szCmdLine = GetCommandLine();\n    GetStartupInfo(&startup);\n    BOOL bSucc = CreateProcess(szPath, szCmdLine, NULL, NULL, FALSE, NORMAL_PRIORITY_CLASS, NULL, NULL, &startup, &info);\n    if(bSucc)\n    {\n        ExitProcess(-1);\n    }\n}\n/*@brief new windows process*/\nLRESULT CALLBACK SNewWndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam)\n{\n    int wmId, wmEvent;\n    switch (message)\n    {\n    case WM_KEYDOWN:\n        if (wParam == VK_F5)\n        {\n            reStart();\n             break;\n        }\n    case WM_SYSCOMMAND:\n        {\n            wmId    = LOWORD(wParam);\n            wmEvent = HIWORD(wParam);\n\n            switch (wmId)\n            {\n            case ID_CONTROL_TOP:\n                g_windTop = !g_windTop;\n                updateView();\n                break;\n            case ID_FILE_EXIT:\n                shutDownApp();\n                break;\n\n            case ID_VIEW_PORTRAIT:\n            case ID_VIEW_LANDSCAPE:\n                onViewChangeOrientation(wmId);\n                break;\n\n            case ID_VIEW_ZOOMOUT100:\n            case ID_VIEW_ZOOMOUT75:\n            case ID_VIEW_ZOOMOUT50:\n            case ID_VIEW_ZOOMOUT25:\n                onViewZoomOut(wmId);\n                break;\n\n            case ID_CONTROL_RELOAD:\n                reStart();\n                break;\n\n            case ID_HELP_ABOUT:\n                onHelpAbout();\n                break;\n            default:\n                if (wmId >= ID_VIEW_SIZE && wmId <= ID_VIEW_SIZE + ConfigParser::getInstance()->getScreenSizeCount() - 1)\n                {\n                    onViewChangeFrameSize(wmId);\n                    break;\n                }\n                //return 0;\n            }\n        }\n        break;\n    }\n    return g_oldProc(hWnd, message, wParam, lParam);\n}\n\n/*@brief AboutDialog Callback*/\nINT_PTR CALLBACK AboutDialogCallback(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam)\n{\n    UNREFERENCED_PARAMETER(lParam);\n    switch (message)\n    {\n    case WM_INITDIALOG:\n        return (INT_PTR)TRUE;\n\n    case WM_COMMAND:\n        if (LOWORD(wParam) == IDOK || LOWORD(wParam) == IDCANCEL)\n        {\n            EndDialog(hDlg, LOWORD(wParam));\n            return (INT_PTR)TRUE;\n        }\n        break;\n    }\n    return (INT_PTR)FALSE;\n}\n\nvoid createSimulator(const char* viewName, float width, float height, bool isLandscape, float frameZoomFactor)\n{\n    if (g_eglView)\n    {\n        return;\n    }\n\n    g_landscape = isLandscape;\n    if(height > width)\n    {\n        float tmpvalue =width;\n        width = height;\n        height = tmpvalue;\n    }\n    g_screenSize.width = width;\n    g_screenSize.height = height;\n\n    if(!g_landscape)\n    {\n        float tmpvalue =width;\n        width = height;\n        height = tmpvalue;\n    }\n    g_windTop = ConfigParser::getInstance()->isWindowTop();\n\n    g_eglView = GLViewImpl::createWithRect(viewName,Rect(0,0,width,height),frameZoomFactor);\n    auto director = Director::getInstance();\n    director->setOpenGLView(g_eglView);\n\n    HWND hWnd=g_eglView->getWin32Window();\n    HMENU hMenu = LoadMenu(GetModuleHandle(NULL), MAKEINTRESOURCE(IDR_MENU_COCOS));\n    HMENU hSysMenu = GetSystemMenu(hWnd, FALSE);\n    HMENU hviewMenu = GetSubMenu(hMenu,1);\n    HMENU hcontrolMenu = GetSubMenu(hMenu,2);\n    AppendMenu(hSysMenu,MF_SEPARATOR,0,NULL);\n    if (hSysMenu != INVALID_HANDLE_VALUE && hMenu != INVALID_HANDLE_VALUE)\n    {\n        AppendMenu(hSysMenu, MF_POPUP, (UINT)hviewMenu, TEXT(\"view\"));\n        AppendMenu(hSysMenu, MF_POPUP, (UINT)hcontrolMenu, TEXT(\"control\"));\n    }\n    //SetMenu(hWnd, hMenu);\n    createViewMenu();\n    updateMenu();\n\n    g_oldProc = (WNDPROC)SetWindowLong(hWnd, GWL_WNDPROC, (LONG)SNewWndProc); \n    if (g_oldProc==0) \n    {\n        printf(\"SetWindowLong NewWndProc Error:%d\\n\",GetLastError()); \n    }\n\n}\n"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/proj.win32/SimulatorWindow.h",
    "content": "/****************************************************************************\nCopyright (c) 2013 cocos2d-x.org\n\nhttp://www.cocos2d-x.org\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in\nall copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\nTHE SOFTWARE.\n****************************************************************************/\n\n#ifndef __SIMULATOR_WINDOW_H_\n#define __SIMULATOR_WINDOW_H_\n\n/************************\n@brief create Simulator\n*********************************/\nvoid createSimulator(const char* viewName, float width, float height,bool isLandscape = true,float frameZoomFactor = 1.0f);\n\n#endif /* __PROJECT_CONFIG_H_ */\n"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/proj.win32/build-cfg.json",
    "content": "{\n    \"copy_resources\": [\n        {\n            \"from\": \"../../../src\",\n            \"to\": \"src\"\n        },\n        {\n            \"from\": \"../../../res\",\n            \"to\": \"res\"\n        },\n        {\n            \"from\": \"../../../config.json\",\n            \"to\": \"\"\n        }\n    ],\n    \"must_copy_resources\": [\n    ]\n}\n"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/proj.win32/game.rc",
    "content": "// Microsoft Visual C++ generated resource script.\n//\n#include \"resource.h\"\n\n#define APSTUDIO_READONLY_SYMBOLS\n/////////////////////////////////////////////////////////////////////////////\n//\n// Generated from the TEXTINCLUDE 2 resource.\n//\n#include \"afxres.h\"\n\n/////////////////////////////////////////////////////////////////////////////\n#undef APSTUDIO_READONLY_SYMBOLS\n\n/////////////////////////////////////////////////////////////////////////////\n// Chinese (Simplified, PRC) resources\n\n#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_CHS)\nLANGUAGE LANG_CHINESE, SUBLANG_CHINESE_SIMPLIFIED\n#pragma code_page(936)\n\n#ifdef APSTUDIO_INVOKED\n/////////////////////////////////////////////////////////////////////////////\n//\n// TEXTINCLUDE\n//\n\n2 TEXTINCLUDE \nBEGIN\n    \"#include \"\"afxres.h\"\"\\r\\n\"\n    \"\\0\"\nEND\n\n3 TEXTINCLUDE \nBEGIN\n    \"\\r\\n\"\n    \"\\0\"\nEND\n\n#endif    // APSTUDIO_INVOKED\n\n\n/////////////////////////////////////////////////////////////////////////////\n//\n// Menu\n//\n\nIDR_MENU_COCOS MENU\nBEGIN\n    POPUP \"&File\"\n    BEGIN\n        MENUITEM SEPARATOR\n        MENUITEM \"E&xit\",                       ID_FILE_EXIT\n    END\n    POPUP \"&View\"\n    BEGIN\n        MENUITEM SEPARATOR\n        MENUITEM \"&Portrait\",                   ID_VIEW_PORTRAIT\n        MENUITEM \"&Landscape\",                  ID_VIEW_LANDSCAPE\n        MENUITEM SEPARATOR\n        MENUITEM \"&Actual(100%)\",               ID_VIEW_ZOOMOUT100\n        MENUITEM \"Zoom Out(75%)\",               ID_VIEW_ZOOMOUT75\n        MENUITEM \"Zoom Out(50%)\",               ID_VIEW_ZOOMOUT50\n        MENUITEM \"Zoom Out(25%)\",               ID_VIEW_ZOOMOUT25\n    END\n    POPUP \"&Control\"\n    BEGIN\n        MENUITEM \"Restart(F5)\",                 ID_CONTROL_RELOAD\n        MENUITEM \"Keep Window Top\",             ID_CONTROL_TOP\n    END\n    POPUP \"&Help\"\n    BEGIN\n        MENUITEM \"&About ...\",                  ID_HELP_ABOUT\n    END\nEND\n\n\n/////////////////////////////////////////////////////////////////////////////\n//\n// Dialog\n//\n\nIDD_DIALOG_ABOUT DIALOGEX 0, 0, 243, 94\nSTYLE DS_SETFONT | DS_MODALFRAME | DS_FIXEDSYS | WS_POPUP | WS_CAPTION | WS_SYSMENU\nCAPTION \"About Simulator\"\nFONT 8, \"MS Shell Dlg\", 400, 0, 0x1\nBEGIN\n    DEFPUSHBUTTON   \"OK\",IDOK,173,69,63,18\n    LTEXT           \"Cocos2d-x-Simulator\",IDC_STATIC,29,17,169,25\nEND\n\n\n/////////////////////////////////////////////////////////////////////////////\n//\n// DESIGNINFO\n//\n\n#ifdef APSTUDIO_INVOKED\nGUIDELINES DESIGNINFO\nBEGIN\n    IDD_DIALOG_ABOUT, DIALOG\n    BEGIN\n        LEFTMARGIN, 7\n        RIGHTMARGIN, 236\n        TOPMARGIN, 7\n        BOTTOMMARGIN, 87\n    END\nEND\n#endif    // APSTUDIO_INVOKED\n\n#endif    // Chinese (Simplified, PRC) resources\n/////////////////////////////////////////////////////////////////////////////\n\n\n/////////////////////////////////////////////////////////////////////////////\n// English (United States) resources\n\n#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_ENU)\nLANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_US\n#pragma code_page(1252)\n\n#ifdef APSTUDIO_INVOKED\n/////////////////////////////////////////////////////////////////////////////\n//\n// TEXTINCLUDE\n//\n\n1 TEXTINCLUDE \nBEGIN\n    \"resource.h\\0\"\nEND\n\n#endif    // APSTUDIO_INVOKED\n\n\n/////////////////////////////////////////////////////////////////////////////\n//\n// Icon\n//\n\n// Icon with lowest ID value placed first to ensure application icon\n// remains consistent on all systems.\nGLFW_ICON               ICON                    \"res\\\\game.ico\"\n\n/////////////////////////////////////////////////////////////////////////////\n//\n// Version\n//\n\nVS_VERSION_INFO VERSIONINFO\n FILEVERSION 1,0,0,1\n PRODUCTVERSION 1,0,0,1\n FILEFLAGSMASK 0x3fL\n#ifdef _DEBUG\n FILEFLAGS 0x1L\n#else\n FILEFLAGS 0x0L\n#endif\n FILEOS 0x4L\n FILETYPE 0x2L\n FILESUBTYPE 0x0L\nBEGIN\n    BLOCK \"StringFileInfo\"\n    BEGIN\n        BLOCK \"040904B0\"\n        BEGIN\n            VALUE \"FileDescription\", \"game Module\"\n            VALUE \"FileVersion\", \"1, 0, 0, 1\"\n            VALUE \"InternalName\", \"game\"\n            VALUE \"LegalCopyright\", \"Copyright \"\n            VALUE \"OriginalFilename\", \"game.exe\"\n            VALUE \"ProductName\", \"game Module\"\n            VALUE \"ProductVersion\", \"1, 0, 0, 1\"\n        END\n    END\n    BLOCK \"VarFileInfo\"\n    BEGIN\n        VALUE \"Translation\", 0x409, 1200\n    END\nEND\n\n#endif    // English (United States) resources\n/////////////////////////////////////////////////////////////////////////////\n\n\n\n#ifndef APSTUDIO_INVOKED\n/////////////////////////////////////////////////////////////////////////////\n//\n// Generated from the TEXTINCLUDE 3 resource.\n//\n\n\n/////////////////////////////////////////////////////////////////////////////\n#endif    // not APSTUDIO_INVOKED\n\n"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/proj.win32/main.cpp",
    "content": "#include \"main.h\"\n#include \"AppDelegate.h\"\n#include \"CCLuaEngine.h\"\n#include \"cocos2d.h\"\n#include <io.h>\n#include <stdlib.h>\n#include <stdio.h>\n#include <fcntl.h>\n#include <Commdlg.h>\n#include <Shlobj.h>\n#include <winnls.h>\n#include <shobjidl.h>\n#include <objbase.h>\n#include <objidl.h>\n#include <shlguid.h>\n#include <shellapi.h>\n\n#include \"ProjectConfig/ProjectConfig.h\"\nUSING_NS_CC;\n\nextern void register_runtime_override_function(lua_State* tolua_S);\nextern string& replaceAll(string& str, const string& old_value, const string& new_value);\n\n// uncomment below line, open debug console\n//#define USE_WIN32_CONSOLE\n\nint APIENTRY _tWinMain(HINSTANCE hInstance,\n                       HINSTANCE hPrevInstance,\n                       LPTSTR    lpCmdLine,\n                       int       nCmdShow)\n{\n    UNREFERENCED_PARAMETER(hPrevInstance);\n    UNREFERENCED_PARAMETER(lpCmdLine);\n\n    LPWSTR *szArgList=nullptr;\n    int argCount=0;\n\n    bool isCodeIDEDebugger = true;\n    szArgList = CommandLineToArgvW(GetCommandLine(),&argCount);\n    if (argCount >=2 )\n    {\n        int iLen = 2*wcslen(szArgList[1]);    \n        char* chRtn = new char[iLen+1];    \n        wcstombs(chRtn,szArgList[1],iLen+1);\n        delete [] chRtn;\n    }\n    LocalFree(szArgList);\n\n    ProjectConfig project;\n    HWND hwndConsole;\n\n\tif(isCodeIDEDebugger) project.setDebuggerType(kCCLuaDebuggerCodeIDE);\n    // load project config from command line args\n    vector<string> args;\n    for (int i = 0; i < __argc; ++i)\n    {\n        wstring ws(__wargv[i]);\n        string s;\n        s.assign(ws.begin(), ws.end());\n        args.push_back(s);\n    }\n    project.parseCommandLine(args);\n\n#ifndef USE_WIN32_CONSOLE\n    project.setShowConsole(false);\n#endif\n\n    // create console window\n    if (project.isShowConsole())\n    {\n        AllocConsole();\n        hwndConsole = GetConsoleWindow();\n        if (hwndConsole != NULL)\n        {\n            ShowWindow(hwndConsole, SW_SHOW);\n            BringWindowToTop(hwndConsole);\n            freopen(\"CONOUT$\", \"wt\", stdout);\n            freopen(\"CONOUT$\", \"wt\", stderr);\n\n            HMENU hmenu = GetSystemMenu(hwndConsole, FALSE);\n            if (hmenu != NULL) DeleteMenu(hmenu, SC_CLOSE, MF_BYCOMMAND);\n        }\n    }\n    project.dump();\n\n    // set environments\n    CCLOG(\"the project directory is: %s\", project.getProjectDir().c_str());\n    if (!project.getProjectDir().empty())\n    {\n        isCodeIDEDebugger = false;\n        extern std::string g_projectPath;\n        g_projectPath = replaceAll(project.getProjectDir(), \"\\\\\", \"/\");\n        auto engine = cocos2d::LuaEngine::getInstance();\n        register_runtime_override_function(engine->getLuaStack()->getLuaState());\n\n        FileUtils::getInstance()->addSearchPath(g_projectPath);\n    }\n    if (project.getDebuggerType() == kCCLuaDebuggerCodeIDE)\n    {\n        isCodeIDEDebugger = true;\n    }\n\telse\n\t{\n        isCodeIDEDebugger = false;\n\t}\n\n    // create the application instance\n    AppDelegate app;\n\n    if (isCodeIDEDebugger)\n    {\n        app.setLaunchMode(1);\n    }\n\telse\n\t{\n        app.setLaunchMode(0);\n\t}\n    int ret = Application::getInstance()->run();\n\n#ifdef USE_WIN32_CONSOLE\n    if (!ret)\n    {\n        system(\"pause\");\n    }\n    FreeConsole();\n#endif\n\n    return ret;\n}\nstd::string getCurAppPath(void)\n{\n    TCHAR szAppDir[MAX_PATH]={0};\n    if (!GetModuleFileName(NULL,szAppDir,MAX_PATH))\n        return \"\";\n    int nEnd=0;\n    for (int i=0;szAppDir[i];i++)\n    {\n        if(szAppDir[i]=='\\\\')\n            nEnd = i;\n    }\n    szAppDir[nEnd] = 0;\n    int iLen = 2*wcslen(szAppDir);\n    char* chRtn = new char[iLen+1];\n    wcstombs(chRtn,szAppDir,iLen+1);\n    std::string strPath = chRtn;\n    delete [] chRtn;\n    chRtn=NULL;\n    char fuldir[MAX_PATH]={0};\n    _fullpath(fuldir,strPath.c_str(),MAX_PATH);\n    return fuldir;\n}\n"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/proj.win32/main.h",
    "content": "#ifndef __MAIN_H__\n#define __MAIN_H__\n\n#define WIN32_LEAN_AND_MEAN             // Exclude rarely-used stuff from Windows headers\n\n// Windows Header Files:\n#include <windows.h>\n#include <tchar.h>\n\n#endif    // __WINMAIN_H__\n"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/proj.win32/mir9.sln",
    "content": "﻿\nMicrosoft Visual Studio Solution File, Format Version 12.00\n# Visual Studio 2012\nProject(\"{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}\") = \"mir9\", \"mir9.vcxproj\", \"{4E6A7A0E-DDD8-4BAA-8B22-C964069364ED}\"\n\tProjectSection(ProjectDependencies) = postProject\n\t\t{98A51BA8-FC3A-415B-AC8F-8C7BD464E93E} = {98A51BA8-FC3A-415B-AC8F-8C7BD464E93E}\n\tEndProjectSection\nEndProject\nProject(\"{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}\") = \"libcocos2d\", \"%QUICK_V3_ROOT%\\cocos\\2d\\libcocos2d.vcxproj\", \"{98A51BA8-FC3A-415B-AC8F-8C7BD464E93E}\"\nEndProject\nProject(\"{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}\") = \"libluacocos2d\", \"%QUICK_V3_ROOT%\\cocos\\scripting\\lua-bindings\\proj.win32\\libluacocos2d.vcxproj\", \"{9F2D6CE6-C893-4400-B50C-6DB70CC2562F}\"\nEndProject\nProject(\"{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}\") = \"libbox2d\", \"%QUICK_V3_ROOT%\\external\\Box2D\\proj.win32\\libbox2d.vcxproj\", \"{929480E7-23C0-4DF6-8456-096D71547116}\"\nEndProject\nProject(\"{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}\") = \"libSpine\", \"%QUICK_V3_ROOT%\\cocos\\editor-support\\spine\\proj.win32\\libSpine.vcxproj\", \"{B7C2A162-DEC9-4418-972E-240AB3CBFCAE}\"\nEndProject\nGlobal\n\tGlobalSection(SolutionConfigurationPlatforms) = preSolution\n\t\tDebug|Win32 = Debug|Win32\n\t\tRelease|Win32 = Release|Win32\n\tEndGlobalSection\n\tGlobalSection(ProjectConfigurationPlatforms) = postSolution\n\t\t{4E6A7A0E-DDD8-4BAA-8B22-C964069364ED}.Debug|Win32.ActiveCfg = Debug|Win32\n\t\t{4E6A7A0E-DDD8-4BAA-8B22-C964069364ED}.Debug|Win32.Build.0 = Debug|Win32\n\t\t{4E6A7A0E-DDD8-4BAA-8B22-C964069364ED}.Release|Win32.ActiveCfg = Release|Win32\n\t\t{4E6A7A0E-DDD8-4BAA-8B22-C964069364ED}.Release|Win32.Build.0 = Release|Win32\n\t\t{98A51BA8-FC3A-415B-AC8F-8C7BD464E93E}.Debug|Win32.ActiveCfg = Debug|Win32\n\t\t{98A51BA8-FC3A-415B-AC8F-8C7BD464E93E}.Debug|Win32.Build.0 = Debug|Win32\n\t\t{98A51BA8-FC3A-415B-AC8F-8C7BD464E93E}.Release|Win32.ActiveCfg = Release|Win32\n\t\t{98A51BA8-FC3A-415B-AC8F-8C7BD464E93E}.Release|Win32.Build.0 = Release|Win32\n\t\t{9F2D6CE6-C893-4400-B50C-6DB70CC2562F}.Debug|Win32.ActiveCfg = Debug|Win32\n\t\t{9F2D6CE6-C893-4400-B50C-6DB70CC2562F}.Debug|Win32.Build.0 = Debug|Win32\n\t\t{9F2D6CE6-C893-4400-B50C-6DB70CC2562F}.Release|Win32.ActiveCfg = Release|Win32\n\t\t{9F2D6CE6-C893-4400-B50C-6DB70CC2562F}.Release|Win32.Build.0 = Release|Win32\n\t\t{929480E7-23C0-4DF6-8456-096D71547116}.Debug|Win32.ActiveCfg = Debug|Win32\n\t\t{929480E7-23C0-4DF6-8456-096D71547116}.Debug|Win32.Build.0 = Debug|Win32\n\t\t{929480E7-23C0-4DF6-8456-096D71547116}.Release|Win32.ActiveCfg = Release|Win32\n\t\t{929480E7-23C0-4DF6-8456-096D71547116}.Release|Win32.Build.0 = Release|Win32\n\t\t{B7C2A162-DEC9-4418-972E-240AB3CBFCAE}.Debug|Win32.ActiveCfg = Debug|Win32\n\t\t{B7C2A162-DEC9-4418-972E-240AB3CBFCAE}.Debug|Win32.Build.0 = Debug|Win32\n\t\t{B7C2A162-DEC9-4418-972E-240AB3CBFCAE}.Release|Win32.ActiveCfg = Release|Win32\n\t\t{B7C2A162-DEC9-4418-972E-240AB3CBFCAE}.Release|Win32.Build.0 = Release|Win32\n\tEndGlobalSection\n\tGlobalSection(SolutionProperties) = preSolution\n\t\tHideSolutionNode = FALSE\n\tEndGlobalSection\nEndGlobal\n"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/proj.win32/mir9.vcxproj",
    "content": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<Project DefaultTargets=\"Build\" ToolsVersion=\"4.0\" xmlns=\"http://schemas.microsoft.com/developer/msbuild/2003\">\n  <ItemGroup Label=\"ProjectConfigurations\">\n    <ProjectConfiguration Include=\"Debug|Win32\">\n      <Configuration>Debug</Configuration>\n      <Platform>Win32</Platform>\n    </ProjectConfiguration>\n    <ProjectConfiguration Include=\"Release|Win32\">\n      <Configuration>Release</Configuration>\n      <Platform>Win32</Platform>\n    </ProjectConfiguration>\n  </ItemGroup>\n  <PropertyGroup Label=\"Globals\">\n    <ProjectGuid>{4E6A7A0E-DDD8-4BAA-8B22-C964069364ED}</ProjectGuid>\n    <ProjectName>mir9</ProjectName>\n  </PropertyGroup>\n  <Import Project=\"$(VCTargetsPath)\\Microsoft.Cpp.Default.props\" />\n  <PropertyGroup Condition=\"'$(Configuration)|$(Platform)'=='Debug|Win32'\" Label=\"Configuration\">\n    <ConfigurationType>Application</ConfigurationType>\n    <UseDebugLibraries>true</UseDebugLibraries>\n    <CharacterSet>Unicode</CharacterSet>\n    <PlatformToolset Condition=\"'$(VisualStudioVersion)' == '10.0'\">v100</PlatformToolset>\n    <PlatformToolset Condition=\"'$(VisualStudioVersion)' == '11.0'\">v110</PlatformToolset>\n    <PlatformToolset Condition=\"'$(VisualStudioVersion)' == '11.0' and exists('$(MSBuildProgramFiles32)\\Microsoft SDKs\\Windows\\v7.1A')\">v110_xp</PlatformToolset>\n    <PlatformToolset Condition=\"'$(VisualStudioVersion)' == '12.0' and exists('$(MSBuildProgramFiles32)\\Microsoft SDKs\\Windows\\v7.1A')\">v120_xp</PlatformToolset>\n  </PropertyGroup>\n  <PropertyGroup Condition=\"'$(Configuration)|$(Platform)'=='Release|Win32'\" Label=\"Configuration\">\n    <ConfigurationType>Application</ConfigurationType>\n    <UseDebugLibraries>false</UseDebugLibraries>\n    <CharacterSet>Unicode</CharacterSet>\n    <PlatformToolset Condition=\"'$(VisualStudioVersion)' == '10.0'\">v100</PlatformToolset>\n    <PlatformToolset Condition=\"'$(VisualStudioVersion)' == '11.0'\">v110</PlatformToolset>\n    <PlatformToolset Condition=\"'$(VisualStudioVersion)' == '11.0' and exists('$(MSBuildProgramFiles32)\\Microsoft SDKs\\Windows\\v7.1A')\">v110_xp</PlatformToolset>\n    <PlatformToolset Condition=\"'$(VisualStudioVersion)' == '12.0' and exists('$(MSBuildProgramFiles32)\\Microsoft SDKs\\Windows\\v7.1A')\">v120_xp</PlatformToolset>\n  </PropertyGroup>\n  <Import Project=\"$(VCTargetsPath)\\Microsoft.Cpp.props\" />\n  <ImportGroup Label=\"ExtensionSettings\">\n  </ImportGroup>\n  <ImportGroup Label=\"PropertySheets\" Condition=\"'$(Configuration)|$(Platform)'=='Debug|Win32'\">\n    <Import Project=\"$(UserRootDir)\\Microsoft.Cpp.$(Platform).user.props\" Condition=\"exists('$(UserRootDir)\\Microsoft.Cpp.$(Platform).user.props')\" Label=\"LocalAppDataPlatform\" />\n    <Import Project=\"$(QUICK_V3_ROOT)\\cocos\\2d\\cocos2dx.props\" />\n    <Import Project=\"$(QUICK_V3_ROOT)\\cocos\\2d\\cocos2d_headers.props\" />\n  </ImportGroup>\n  <ImportGroup Label=\"PropertySheets\" Condition=\"'$(Configuration)|$(Platform)'=='Release|Win32'\">\n    <Import Project=\"$(UserRootDir)\\Microsoft.Cpp.$(Platform).user.props\" Condition=\"exists('$(UserRootDir)\\Microsoft.Cpp.$(Platform).user.props')\" Label=\"LocalAppDataPlatform\" />\n    <Import Project=\"$(QUICK_V3_ROOT)\\cocos\\2d\\cocos2dx.props\" />\n    <Import Project=\"$(QUICK_V3_ROOT)\\cocos\\2d\\cocos2d_headers.props\" />\n  </ImportGroup>\n  <PropertyGroup Label=\"UserMacros\" />\n  <PropertyGroup Condition=\"'$(Configuration)|$(Platform)'=='Debug|Win32'\">\n    <OutDir>$(SolutionDir)$(Configuration).win32\\</OutDir>\n    <IntDir>$(Configuration).win32\\</IntDir>\n    <LinkIncremental>true</LinkIncremental>\n    <IncludePath>$(IncludePath)</IncludePath>\n    <SourcePath>$(SourcePath);</SourcePath>\n    <CodeAnalysisRuleSet>AllRules.ruleset</CodeAnalysisRuleSet>\n  </PropertyGroup>\n  <PropertyGroup Condition=\"'$(Configuration)|$(Platform)'=='Release|Win32'\">\n    <OutDir>$(SolutionDir)$(Configuration).win32\\</OutDir>\n    <IntDir>$(Configuration).win32\\</IntDir>\n    <LinkIncremental>false</LinkIncremental>\n  </PropertyGroup>\n  <PropertyGroup Condition=\"'$(Configuration)|$(Platform)'=='Debug|Win32'\">\n    <LibraryPath>$(MSBuildProgramFiles32)\\Microsoft SDKs\\Windows\\v7.1A\\lib;$(LibraryPath)</LibraryPath>\n  </PropertyGroup>\n  <PropertyGroup Condition=\"'$(Configuration)|$(Platform)'=='Release|Win32'\">\n    <LibraryPath>$(MSBuildProgramFiles32)\\Microsoft SDKs\\Windows\\v7.1A\\lib;$(LibraryPath)</LibraryPath>\n  </PropertyGroup>\n  <ItemDefinitionGroup Condition=\"'$(Configuration)|$(Platform)'=='Debug|Win32'\">\n    <ClCompile>\n      <AdditionalIncludeDirectories>$(ProjectDir)..\\Classes;$(ProjectDir)..\\Classes\\runtime;$(EngineRoot)external\\protobuf-lite\\src;$(EngineRoot)external\\protobuf-lite\\win32;%QUICK_V3_ROOT%\\quick\\lib\\quick-src;%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra;$(EngineRoot)external\\win32-specific\\zlib\\include;$(EngineRoot)cocos\\scripting\\lua-bindings\\auto;$(EngineRoot)cocos\\scripting\\lua-bindings\\manual;$(EngineRoot)cocos\\audio\\include;$(EngineRoot)external;$(EngineRoot)external\\lua\\lua;$(EngineRoot)external\\lua\\tolua;$(EngineRoot)external\\chipmunk\\include\\chipmunk;$(EngineRoot)extensions;$(EngineRoot)external\\curl\\include\\win32;$(EngineRoot);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\n      <PrecompiledHeader>\n      </PrecompiledHeader>\n      <WarningLevel>Level3</WarningLevel>\n      <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>\n      <MinimalRebuild>false</MinimalRebuild>\n      <DebugInformationFormat>EditAndContinue</DebugInformationFormat>\n      <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>\n      <Optimization>Disabled</Optimization>\n      <PreprocessorDefinitions>WIN32;_WINDOWS;STRICT;_CRT_SECURE_NO_WARNINGS;CC_USE_SQLITE=1;CC_USE_CURL=1;CC_LUA_ENGINE_ENABLED=1;CC_ENABLE_CHIPMUNK_INTEGRATION=1;USE_WIN32_CONSOLE=1;_SCL_SECURE_NO_WARNINGS_DEBUG;COCOS2D_DEBUG=1;GLFW_EXPOSE_NATIVE_WIN32;GLFW_EXPOSE_NATIVE_WGL;%(PreprocessorDefinitions)</PreprocessorDefinitions>\n      <DisableSpecificWarnings>4267;4251;4244;%(DisableSpecificWarnings)</DisableSpecificWarnings>\n      <MultiProcessorCompilation>true</MultiProcessorCompilation>\n      <ProgramDataBaseFileName>$(IntDir)vc$(PlatformToolsetVersion).pdb</ProgramDataBaseFileName>\n      <ForcedIncludeFiles>algorithm</ForcedIncludeFiles>\n      <CompileAs>CompileAsCpp</CompileAs>\n    </ClCompile>\n    <Link>\n      <SubSystem>Windows</SubSystem>\n      <TargetMachine>MachineX86</TargetMachine>\n      <GenerateDebugInformation>true</GenerateDebugInformation>\n      <AdditionalLibraryDirectories>$(OutDir);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\n      <AdditionalDependencies>libcurl_imp.lib;websockets.lib;%(AdditionalDependencies)</AdditionalDependencies>\n      <ProgramDatabaseFile>$(ProjectDir)../../../runtime/win32/$(TargetName).pdb</ProgramDatabaseFile>\n      <OutputFile>$(ProjectDir)../../../runtime/win32/$(TargetName)$(TargetExt)</OutputFile>\n    </Link>\n    <ResourceCompile>\n      <Culture>0x0409</Culture>\n      <AdditionalIncludeDirectories>$(MSBuildProgramFiles32)\\Microsoft SDKs\\Windows\\v7.1A\\include;$(IntDir);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\n      <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>\n    </ResourceCompile>\n    <Midl>\n      <MkTypLibCompatible>false</MkTypLibCompatible>\n      <TargetEnvironment>Win32</TargetEnvironment>\n      <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>\n      <HeaderFileName>mir9.h</HeaderFileName>\n      <InterfaceIdentifierFileName>mir9_i.c</InterfaceIdentifierFileName>\n      <ProxyFileName>mir9_p.c</ProxyFileName>\n      <GenerateStublessProxies>true</GenerateStublessProxies>\n      <TypeLibraryName>$(IntDir)/mir9.tlb</TypeLibraryName>\n      <DllDataFileName>\n      </DllDataFileName>\n    </Midl>\n    <PreBuildEvent>\n      <Command>if not exist \"$(LocalDebuggerWorkingDirectory)\" mkdir \"$(LocalDebuggerWorkingDirectory)\"</Command>\n      <Message>copy files</Message>\n    </PreBuildEvent>\n    <PreLinkEvent>\n      <Command>\n      </Command>\n    </PreLinkEvent>\n    <PostBuildEvent>\n      <Command>xcopy /Y /Q \"$(OutDir)*.dll\" \"$(ProjectDir)..\\..\\..\\runtime\\win32\\\"</Command>\n    </PostBuildEvent>\n  </ItemDefinitionGroup>\n  <ItemDefinitionGroup Condition=\"'$(Configuration)|$(Platform)'=='Release|Win32'\">\n    <ClCompile>\n      <AdditionalIncludeDirectories>$(ProjectDir)..\\Classes;$(ProjectDir)..\\Classes\\runtime;$(EngineRoot)external\\protobuf-lite\\win32;$(EngineRoot)external\\protobuf-lite\\src;%QUICK_V3_ROOT%\\quick\\lib\\quick-src;$(EngineRoot)external\\win32-specific\\zlib\\include;$(EngineRoot)cocos\\scripting\\lua-bindings\\auto;$(EngineRoot)cocos\\scripting\\lua-bindings\\manual;$(EngineRoot)cocos\\audio\\include;$(EngineRoot)external;$(EngineRoot)external\\lua\\lua;$(EngineRoot)external\\lua\\tolua;$(EngineRoot)external\\chipmunk\\include\\chipmunk;$(EngineRoot)extensions;$(EngineRoot);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\n      <PrecompiledHeader>\n      </PrecompiledHeader>\n      <WarningLevel>Level3</WarningLevel>\n      <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>\n      <ExceptionHandling>\n      </ExceptionHandling>\n      <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>\n      <PreprocessorDefinitions>WIN32;_WINDOWS;STRICT;_CRT_SECURE_NO_WARNINGS;CC_USE_SQLITE=1;CC_USE_CURL=1;CC_LUA_ENGINE_ENABLED=1;CC_ENABLE_CHIPMUNK_INTEGRATION=1;USE_WIN32_CONSOLE=1;_SCL_SECURE_NO_WARNINGSNDEBUG;GLFW_EXPOSE_NATIVE_WIN32;GLFW_EXPOSE_NATIVE_WGL;%(PreprocessorDefinitions)</PreprocessorDefinitions>\n      <DisableSpecificWarnings>4267;4251;4244;%(DisableSpecificWarnings)</DisableSpecificWarnings>\n      <MultiProcessorCompilation>true</MultiProcessorCompilation>\n      <ProgramDataBaseFileName>$(IntDir)vc$(PlatformToolsetVersion).pdb</ProgramDataBaseFileName>\n      <ForcedIncludeFiles>algorithm</ForcedIncludeFiles>\n      <CompileAs>CompileAsCpp</CompileAs>\n    </ClCompile>\n    <Link>\n      <SubSystem>Windows</SubSystem>\n      <TargetMachine>MachineX86</TargetMachine>\n      <AdditionalLibraryDirectories>$(OutDir);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\n      <AdditionalDependencies>libcurl_imp.lib;lua51.lib;websockets.lib;%(AdditionalDependencies)</AdditionalDependencies>\n      <GenerateDebugInformation>true</GenerateDebugInformation>\n    </Link>\n    <ResourceCompile>\n      <Culture>0x0409</Culture>\n      <AdditionalIncludeDirectories>$(MSBuildProgramFiles32)\\Microsoft SDKs\\Windows\\v7.1A\\include;$(IntDir);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\n      <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>\n    </ResourceCompile>\n    <Midl>\n      <MkTypLibCompatible>false</MkTypLibCompatible>\n      <TargetEnvironment>Win32</TargetEnvironment>\n      <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>\n      <HeaderFileName>mir9.h</HeaderFileName>\n      <InterfaceIdentifierFileName>mir9_i.c</InterfaceIdentifierFileName>\n      <ProxyFileName>mir9_p.c</ProxyFileName>\n      <GenerateStublessProxies>true</GenerateStublessProxies>\n      <TypeLibraryName>$(IntDir)/mir9.tlb</TypeLibraryName>\n      <DllDataFileName>\n      </DllDataFileName>\n    </Midl>\n    <PreBuildEvent>\n      <Command>if exist \"$(LocalDebuggerWorkingDirectory)\" rd /s /q \"$(LocalDebuggerWorkingDirectory)\"\nmkdir \"$(LocalDebuggerWorkingDirectory)\"\nmkdir \"$(LocalDebuggerWorkingDirectory)\\src\"\nmkdir \"$(LocalDebuggerWorkingDirectory)\\res\"\nxcopy \"$(ProjectDir)..\\..\\..\\src\" \"$(LocalDebuggerWorkingDirectory)\\src\" /e /Y\nxcopy \"$(ProjectDir)..\\..\\..\\res\" \"$(LocalDebuggerWorkingDirectory)\\res\" /e /Y\ncopy \"$(ProjectDir)..\\..\\..\\config.json\" \"$(LocalDebuggerWorkingDirectory)\\config.json\" /Y\n</Command>\n      <Message>copy files</Message>\n    </PreBuildEvent>\n    <PreLinkEvent>\n      <Command>\n      </Command>\n    </PreLinkEvent>\n  </ItemDefinitionGroup>\n  <ItemGroup>\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\external\\protobuf-lite\\src\\google\\protobuf\\config.h\" />\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\external\\protobuf-lite\\src\\google\\protobuf\\extension_set.h\" />\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\external\\protobuf-lite\\src\\google\\protobuf\\generated_message_util.h\" />\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\external\\protobuf-lite\\src\\google\\protobuf\\io\\coded_stream.h\" />\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\external\\protobuf-lite\\src\\google\\protobuf\\io\\coded_stream_inl.h\" />\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\external\\protobuf-lite\\src\\google\\protobuf\\io\\zero_copy_stream.h\" />\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\external\\protobuf-lite\\src\\google\\protobuf\\io\\zero_copy_stream_impl.h\" />\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\external\\protobuf-lite\\src\\google\\protobuf\\io\\zero_copy_stream_impl_lite.h\" />\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\external\\protobuf-lite\\src\\google\\protobuf\\message_lite.h\" />\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\external\\protobuf-lite\\src\\google\\protobuf\\repeated_field.h\" />\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\external\\protobuf-lite\\src\\google\\protobuf\\stubs\\atomicops.h\" />\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\external\\protobuf-lite\\src\\google\\protobuf\\stubs\\atomicops_internals_arm_gcc.h\" />\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\external\\protobuf-lite\\src\\google\\protobuf\\stubs\\atomicops_internals_arm_qnx.h\" />\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\external\\protobuf-lite\\src\\google\\protobuf\\stubs\\atomicops_internals_atomicword_compat.h\" />\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\external\\protobuf-lite\\src\\google\\protobuf\\stubs\\atomicops_internals_macosx.h\" />\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\external\\protobuf-lite\\src\\google\\protobuf\\stubs\\atomicops_internals_mips_gcc.h\" />\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\external\\protobuf-lite\\src\\google\\protobuf\\stubs\\atomicops_internals_pnacl.h\" />\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\external\\protobuf-lite\\src\\google\\protobuf\\stubs\\atomicops_internals_x86_gcc.h\" />\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\external\\protobuf-lite\\src\\google\\protobuf\\stubs\\atomicops_internals_x86_msvc.h\" />\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\external\\protobuf-lite\\src\\google\\protobuf\\stubs\\common.h\" />\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\external\\protobuf-lite\\src\\google\\protobuf\\stubs\\hash.h\" />\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\external\\protobuf-lite\\src\\google\\protobuf\\stubs\\map-util.h\" />\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\external\\protobuf-lite\\src\\google\\protobuf\\stubs\\once.h\" />\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\external\\protobuf-lite\\src\\google\\protobuf\\stubs\\platform_macros.h\" />\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\external\\protobuf-lite\\src\\google\\protobuf\\stubs\\stl_util.h\" />\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\external\\protobuf-lite\\src\\google\\protobuf\\stubs\\stringprintf.h\" />\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\external\\protobuf-lite\\src\\google\\protobuf\\stubs\\template_util.h\" />\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\external\\protobuf-lite\\src\\google\\protobuf\\stubs\\type_traits.h\" />\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\external\\protobuf-lite\\src\\google\\protobuf\\wire_format_lite.h\" />\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\external\\protobuf-lite\\src\\google\\protobuf\\wire_format_lite_inl.h\" />\n    <ClInclude Include=\"..\\Classes\\AppDelegate.h\" />\n    <ClInclude Include=\"..\\Classes\\ConfigParser.h\" />\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\apptools\\HelperFunc.h\" />\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\crypto\\base64\\libbase64.h\" />\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\crypto\\CCCrypto.h\" />\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\crypto\\md5\\md5.h\" />\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\filters\\cocos2dFilters.h\" />\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\filters\\filters\\CCBlurFilter.h\" />\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\filters\\filters\\CCBrightnessFilter.h\" />\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\filters\\filters\\CCContrastFilter.h\" />\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\filters\\filters\\CCCustomFilter.h\" />\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\filters\\filters\\CCDropShadowFilter.h\" />\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\filters\\filters\\CCExposureFilter.h\" />\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\filters\\filters\\CCFilter.h\" />\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\filters\\filters\\CCGammaFilter.h\" />\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\filters\\filters\\CCGrayFilter.h\" />\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\filters\\filters\\CCHazeFilter.h\" />\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\filters\\filters\\CCHueFilter.h\" />\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\filters\\filters\\CCMaskFilter.h\" />\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\filters\\filters\\CCRGBFilter.h\" />\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\filters\\filters\\CCSaturationFilter.h\" />\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\filters\\filters\\CCSepiaFilter.h\" />\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\filters\\filters\\CCSharpenFilter.h\" />\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\filters\\filters\\CCTestFilter.h\" />\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\filters\\nodes\\CCFilteredSprite.h\" />\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\filters\\shaders\\ccFilterShaders.h\" />\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\filters\\shaders\\ccFilterShader_blur_frag.h\" />\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\filters\\shaders\\ccFilterShader_brightness_frag.h\" />\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\filters\\shaders\\ccFilterShader_colorramp_frag.h\" />\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\filters\\shaders\\ccFilterShader_contrast_frag.h\" />\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\filters\\shaders\\ccFilterShader_drop_shadow_frag.h\" />\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\filters\\shaders\\ccFilterShader_drop_shadow_vert.h\" />\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\filters\\shaders\\ccFilterShader_embossmov_frag.h\" />\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\filters\\shaders\\ccFilterShader_emboss_frag.h\" />\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\filters\\shaders\\ccFilterShader_exposure_frag.h\" />\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\filters\\shaders\\ccFilterShader_gamma_frag.h\" />\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\filters\\shaders\\ccFilterShader_gaussian_blur_frag.h\" />\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\filters\\shaders\\ccFilterShader_gaussian_hblur_frag.h\" />\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\filters\\shaders\\ccFilterShader_gaussian_vblur_frag.h\" />\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\filters\\shaders\\ccFilterShader_grass_frag.h\" />\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\filters\\shaders\\ccFilterShader_gray_frag.h\" />\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\filters\\shaders\\ccFilterShader_haze_frag.h\" />\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\filters\\shaders\\ccFilterShader_hblur_vert.h\" />\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\filters\\shaders\\ccFilterShader_hue_frag.h\" />\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\filters\\shaders\\ccFilterShader_motion_blur_frag.h\" />\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\filters\\shaders\\ccFilterShader_motion_blur_vert.h\" />\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\filters\\shaders\\ccFilterShader_rgb_frag.h\" />\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\filters\\shaders\\ccFilterShader_saturation_frag.h\" />\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\filters\\shaders\\ccFilterShader_sepia_frag.h\" />\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\filters\\shaders\\ccFilterShader_sharpen_frag.h\" />\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\filters\\shaders\\ccFilterShader_sharpen_vert.h\" />\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\filters\\shaders\\ccFilterShader_test_frag.h\" />\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\filters\\shaders\\ccFilterShader_test_vert.h\" />\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\filters\\shaders\\ccFilterShader_vblur_vert.h\" />\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\filters\\shaders\\ccFilterShader_zoom_blur_frag.h\" />\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\filters\\shaders\\FilterShaders.h\" />\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\luabinding\\cocos2dx_extra_luabinding.h\" />\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\luabinding\\HelperFunc_luabinding.h\" />\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\luabinding\\lua_cocos2dx_extension_filter_auto.hpp\" />\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\luabinding\\lua_cocos2dx_extension_nanovg_auto.hpp\" />\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\luabinding\\lua_cocos2dx_extension_nanovg_manual.hpp\" />\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\nanovg\\nanonode\\NVGDrawNode.h\" />\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\nanovg\\nanonode\\NVGNode.h\" />\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\nanovg\\nanovg\\fontstash.h\" />\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\nanovg\\nanovg\\nanovg.h\" />\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\nanovg\\nanovg\\nanovg_gl.h\" />\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\nanovg\\nanovg\\nanovg_gl_utils.h\" />\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\nanovg\\nanovg\\stb_image.h\" />\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\nanovg\\nanovg\\stb_truetype.h\" />\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\native\\CCAlertViewDelegate.h\" />\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\native\\CCNative.h\" />\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\network\\CCHTTPRequest.h\" />\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\network\\CCHTTPRequestDelegate.h\" />\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\network\\CCNetwork.h\" />\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\platform\\win32\\CCNativeWin32.h\" />\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\platform\\win32\\CCNativeWin32def.h\" />\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\lua_extensions\\cjson\\fpconv.h\" />\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\lua_extensions\\cjson\\lua_cjson.h\" />\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\lua_extensions\\cjson\\strbuf.h\" />\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\lua_extensions\\debugger\\debugger.h\" />\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\lua_extensions\\filesystem\\lfs.h\" />\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\lua_extensions\\lpack\\lpack.h\" />\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\lua_extensions\\lsqlite3\\lsqlite3.h\" />\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\lua_extensions\\lsqlite3\\sqlite3.h\" />\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\lua_extensions\\lua_extensions_more.h\" />\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\lua_extensions\\zlib\\lua_zlib.h\" />\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\ProjectConfig\\ProjectConfig.h\" />\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\ProjectConfig\\SimulatorConfig.h\" />\n    <ClInclude Include=\"..\\Classes\\runtime\\ConnectWaitLayer.h\" />\n    <ClInclude Include=\"..\\Classes\\runtime\\ConsoleCommand.h\" />\n    <ClInclude Include=\"..\\Classes\\runtime\\FileServer.h\" />\n    <ClInclude Include=\"..\\Classes\\runtime\\lua_debugger.h\" />\n    <ClInclude Include=\"..\\Classes\\runtime\\Protos.pb.h\" />\n    <ClInclude Include=\"..\\Classes\\runtime\\ResData.h\" />\n    <ClInclude Include=\"..\\Classes\\runtime\\Runtime.h\" />\n    <ClInclude Include=\"..\\Classes\\VisibleRect.h\" />\n    <ClInclude Include=\"main.h\" />\n    <ClInclude Include=\"resource.h\" />\n    <ClInclude Include=\"SimulatorWindow.h\" />\n  </ItemGroup>\n  <ItemGroup>\n    <ClCompile Include=\"%QUICK_V3_ROOT%\\external\\protobuf-lite\\src\\google\\protobuf\\extension_set.cc\" />\n    <ClCompile Include=\"%QUICK_V3_ROOT%\\external\\protobuf-lite\\src\\google\\protobuf\\generated_message_util.cc\" />\n    <ClCompile Include=\"%QUICK_V3_ROOT%\\external\\protobuf-lite\\src\\google\\protobuf\\io\\coded_stream.cc\" />\n    <ClCompile Include=\"%QUICK_V3_ROOT%\\external\\protobuf-lite\\src\\google\\protobuf\\io\\zero_copy_stream.cc\" />\n    <ClCompile Include=\"%QUICK_V3_ROOT%\\external\\protobuf-lite\\src\\google\\protobuf\\io\\zero_copy_stream_impl.cc\" />\n    <ClCompile Include=\"%QUICK_V3_ROOT%\\external\\protobuf-lite\\src\\google\\protobuf\\io\\zero_copy_stream_impl_lite.cc\" />\n    <ClCompile Include=\"%QUICK_V3_ROOT%\\external\\protobuf-lite\\src\\google\\protobuf\\message_lite.cc\" />\n    <ClCompile Include=\"%QUICK_V3_ROOT%\\external\\protobuf-lite\\src\\google\\protobuf\\repeated_field.cc\" />\n    <ClCompile Include=\"%QUICK_V3_ROOT%\\external\\protobuf-lite\\src\\google\\protobuf\\stubs\\atomicops_internals_x86_gcc.cc\" />\n    <ClCompile Include=\"%QUICK_V3_ROOT%\\external\\protobuf-lite\\src\\google\\protobuf\\stubs\\atomicops_internals_x86_msvc.cc\" />\n    <ClCompile Include=\"%QUICK_V3_ROOT%\\external\\protobuf-lite\\src\\google\\protobuf\\stubs\\common.cc\" />\n    <ClCompile Include=\"%QUICK_V3_ROOT%\\external\\protobuf-lite\\src\\google\\protobuf\\stubs\\once.cc\" />\n    <ClCompile Include=\"%QUICK_V3_ROOT%\\external\\protobuf-lite\\src\\google\\protobuf\\stubs\\stringprintf.cc\" />\n    <ClCompile Include=\"%QUICK_V3_ROOT%\\external\\protobuf-lite\\src\\google\\protobuf\\wire_format_lite.cc\" />\n    <ClCompile Include=\"..\\Classes\\AppDelegate.cpp\" />\n    <ClCompile Include=\"..\\Classes\\ConfigParser.cpp\" />\n    <ClCompile Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\apptools\\HelperFunc.cpp\" />\n    <ClCompile Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\crypto\\base64\\libbase64.c\" />\n    <ClCompile Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\crypto\\CCCrypto.cpp\" />\n    <ClCompile Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\crypto\\md5\\md5.c\">\n      <CompileAs Condition=\"'$(Configuration)|$(Platform)'=='Debug|Win32'\">Default</CompileAs>\n      <ForcedIncludeFiles Condition=\"'$(Configuration)|$(Platform)'=='Debug|Win32'\">\n      </ForcedIncludeFiles>\n    </ClCompile>\n    <ClCompile Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\filters\\filters\\CCBlurFilter.cpp\" />\n    <ClCompile Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\filters\\filters\\CCBrightnessFilter.cpp\" />\n    <ClCompile Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\filters\\filters\\CCContrastFilter.cpp\" />\n    <ClCompile Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\filters\\filters\\CCCustomFilter.cpp\" />\n    <ClCompile Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\filters\\filters\\CCDropShadowFilter.cpp\" />\n    <ClCompile Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\filters\\filters\\CCExposureFilter.cpp\" />\n    <ClCompile Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\filters\\filters\\CCFilter.cpp\" />\n    <ClCompile Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\filters\\filters\\CCGammaFilter.cpp\" />\n    <ClCompile Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\filters\\filters\\CCGrayFilter.cpp\" />\n    <ClCompile Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\filters\\filters\\CCHazeFilter.cpp\" />\n    <ClCompile Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\filters\\filters\\CCHueFilter.cpp\" />\n    <ClCompile Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\filters\\filters\\CCMaskFilter.cpp\" />\n    <ClCompile Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\filters\\filters\\CCRGBFilter.cpp\" />\n    <ClCompile Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\filters\\filters\\CCSaturationFilter.cpp\" />\n    <ClCompile Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\filters\\filters\\CCSepiaFilter.cpp\" />\n    <ClCompile Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\filters\\filters\\CCSharpenFilter.cpp\" />\n    <ClCompile Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\filters\\filters\\CCTestFilter.cpp\" />\n    <ClCompile Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\filters\\nodes\\CCFilteredSprite.cpp\" />\n    <ClCompile Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\filters\\shaders\\ccFilterShaders.cpp\" />\n    <ClCompile Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\filters\\shaders\\FilterShaders.cpp\" />\n    <ClCompile Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\luabinding\\cocos2dx_extra_luabinding.cpp\" />\n    <ClCompile Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\luabinding\\HelperFunc_luabinding.cpp\" />\n    <ClCompile Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\luabinding\\lua_cocos2dx_extension_filter_auto.cpp\" />\n    <ClCompile Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\luabinding\\lua_cocos2dx_extension_nanovg_auto.cpp\" />\n    <ClCompile Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\luabinding\\lua_cocos2dx_extension_nanovg_manual.cpp\" />\n    <ClCompile Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\nanovg\\nanonode\\NVGDrawNode.cpp\" />\n    <ClCompile Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\nanovg\\nanonode\\NVGNode.cpp\" />\n    <ClCompile Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\nanovg\\nanovg\\nanovg.c\" />\n    <ClCompile Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\network\\CCHTTPRequest.cpp\" />\n    <ClCompile Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\network\\CCNetwork.cpp\" />\n    <ClCompile Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\platform\\win32\\CCCryptoWin32.cpp\" />\n    <ClCompile Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\platform\\win32\\CCNative.cpp\" />\n    <ClCompile Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\platform\\win32\\CCNativeWin32.cpp\" />\n    <ClCompile Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\platform\\win32\\CCNetworkWin32.cpp\" />\n    <ClCompile Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\lua_extensions\\cjson\\fpconv.c\">\n      <CompileAs Condition=\"'$(Configuration)|$(Platform)'=='Debug|Win32'\">Default</CompileAs>\n      <ForcedIncludeFiles Condition=\"'$(Configuration)|$(Platform)'=='Debug|Win32'\">\n      </ForcedIncludeFiles>\n    </ClCompile>\n    <ClCompile Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\lua_extensions\\cjson\\lua_cjson.c\">\n      <CompileAs Condition=\"'$(Configuration)|$(Platform)'=='Debug|Win32'\">Default</CompileAs>\n      <ForcedIncludeFiles Condition=\"'$(Configuration)|$(Platform)'=='Debug|Win32'\">\n      </ForcedIncludeFiles>\n    </ClCompile>\n    <ClCompile Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\lua_extensions\\cjson\\strbuf.c\">\n      <CompileAs Condition=\"'$(Configuration)|$(Platform)'=='Debug|Win32'\">Default</CompileAs>\n      <ForcedIncludeFiles Condition=\"'$(Configuration)|$(Platform)'=='Debug|Win32'\">\n      </ForcedIncludeFiles>\n    </ClCompile>\n    <ClCompile Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\lua_extensions\\debugger\\debugger.c\">\n      <CompileAs Condition=\"'$(Configuration)|$(Platform)'=='Debug|Win32'\">Default</CompileAs>\n      <ForcedIncludeFiles Condition=\"'$(Configuration)|$(Platform)'=='Debug|Win32'\">\n      </ForcedIncludeFiles>\n    </ClCompile>\n    <ClCompile Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\lua_extensions\\filesystem\\lfs.c\">\n      <CompileAs Condition=\"'$(Configuration)|$(Platform)'=='Debug|Win32'\">Default</CompileAs>\n      <ForcedIncludeFiles Condition=\"'$(Configuration)|$(Platform)'=='Debug|Win32'\">\n      </ForcedIncludeFiles>\n    </ClCompile>\n    <ClCompile Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\lua_extensions\\lpack\\lpack.c\">\n      <CompileAs Condition=\"'$(Configuration)|$(Platform)'=='Debug|Win32'\">Default</CompileAs>\n      <ForcedIncludeFiles Condition=\"'$(Configuration)|$(Platform)'=='Debug|Win32'\">\n      </ForcedIncludeFiles>\n    </ClCompile>\n    <ClCompile Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\lua_extensions\\lsqlite3\\lsqlite3.c\">\n      <CompileAs Condition=\"'$(Configuration)|$(Platform)'=='Debug|Win32'\">Default</CompileAs>\n      <ForcedIncludeFiles Condition=\"'$(Configuration)|$(Platform)'=='Debug|Win32'\">\n      </ForcedIncludeFiles>\n    </ClCompile>\n    <ClCompile Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\lua_extensions\\lsqlite3\\sqlite3.c\">\n      <CompileAs Condition=\"'$(Configuration)|$(Platform)'=='Debug|Win32'\">Default</CompileAs>\n      <ForcedIncludeFiles Condition=\"'$(Configuration)|$(Platform)'=='Debug|Win32'\">\n      </ForcedIncludeFiles>\n    </ClCompile>\n    <ClCompile Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\lua_extensions\\lua_extensions_more.c\">\n      <CompileAs Condition=\"'$(Configuration)|$(Platform)'=='Debug|Win32'\">Default</CompileAs>\n      <ForcedIncludeFiles Condition=\"'$(Configuration)|$(Platform)'=='Debug|Win32'\">\n      </ForcedIncludeFiles>\n    </ClCompile>\n    <ClCompile Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\lua_extensions\\zlib\\lua_zlib.c\">\n      <CompileAs Condition=\"'$(Configuration)|$(Platform)'=='Debug|Win32'\">Default</CompileAs>\n      <ForcedIncludeFiles Condition=\"'$(Configuration)|$(Platform)'=='Debug|Win32'\">\n      </ForcedIncludeFiles>\n    </ClCompile>\n    <ClCompile Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\ProjectConfig\\ProjectConfig.cpp\" />\n    <ClCompile Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\ProjectConfig\\SimulatorConfig.cpp\" />\n    <ClCompile Include=\"..\\Classes\\runtime\\ConnectWaitLayer.cpp\" />\n    <ClCompile Include=\"..\\Classes\\runtime\\ConsoleCommand.cpp\" />\n    <ClCompile Include=\"..\\Classes\\runtime\\FileServer.cpp\" />\n    <ClCompile Include=\"..\\Classes\\runtime\\Landscape_png.cpp\" />\n    <ClCompile Include=\"..\\Classes\\runtime\\lua_debugger.c\" />\n    <ClCompile Include=\"..\\Classes\\runtime\\PlayDisable_png.cpp\" />\n    <ClCompile Include=\"..\\Classes\\runtime\\PlayEnable_png.cpp\" />\n    <ClCompile Include=\"..\\Classes\\runtime\\Portrait_png.cpp\" />\n    <ClCompile Include=\"..\\Classes\\runtime\\Protos.pb.cc\" />\n    <ClCompile Include=\"..\\Classes\\runtime\\Runtime.cpp\" />\n    <ClCompile Include=\"..\\Classes\\runtime\\Shine_png.cpp\" />\n    <ClCompile Include=\"..\\Classes\\VisibleRect.cpp\" />\n    <ClCompile Include=\"main.cpp\" />\n    <ClCompile Include=\"Runtime_win32.cpp\" />\n    <ClCompile Include=\"SimulatorWindow.cpp\" />\n  </ItemGroup>\n  <ItemGroup>\n    <ResourceCompile Include=\"game.rc\" />\n  </ItemGroup>\n  <ItemGroup>\n    <Image Include=\"res\\game.ico\" />\n  </ItemGroup>\n  <ItemGroup>\n    <ProjectReference Include=\"$(QUICK_V3_ROOT)\\cocos\\scripting\\lua-bindings\\proj.win32\\libluacocos2d.vcxproj\">\n      <Project>{9f2d6ce6-c893-4400-b50c-6db70cc2562f}</Project>\n    </ProjectReference>\n  </ItemGroup>\n  <Import Project=\"$(VCTargetsPath)\\Microsoft.Cpp.targets\" />\n  <ImportGroup Label=\"ExtensionTargets\">\n  </ImportGroup>\n</Project>\n"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/proj.win32/mir9.vcxproj.filters",
    "content": "﻿<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<Project ToolsVersion=\"4.0\" xmlns=\"http://schemas.microsoft.com/developer/msbuild/2003\">\n  <ItemGroup>\n    <Filter Include=\"Classes\">\n      <UniqueIdentifier>{fc5cb953-2953-4968-83b3-39e3ff951754}</UniqueIdentifier>\n    </Filter>\n    <Filter Include=\"win32\">\n      <UniqueIdentifier>{037a9a02-b906-4cc5-ad98-304acd4e25ee}</UniqueIdentifier>\n    </Filter>\n    <Filter Include=\"resource\">\n      <UniqueIdentifier>{2d1d0979-58cd-4ab6-b91c-13650158f1fa}</UniqueIdentifier>\n    </Filter>\n    <Filter Include=\"Classes\\runtime\">\n      <UniqueIdentifier>{44c0d166-6d84-43b5-8be7-a440c1c0f1ae}</UniqueIdentifier>\n    </Filter>\n    <Filter Include=\"Classes\\quick-src\">\n      <UniqueIdentifier>{292bf290-3753-423a-b60d-5868b604ebb9}</UniqueIdentifier>\n    </Filter>\n    <Filter Include=\"Classes\\quick-src\\ProjectConfig\">\n      <UniqueIdentifier>{362e77a9-1193-4902-90c9-0d4c9cfaaf2e}</UniqueIdentifier>\n    </Filter>\n    <Filter Include=\"Classes\\quick-src\\extra\">\n      <UniqueIdentifier>{fd1bc11a-1c0f-420d-ae7e-786c1b84956a}</UniqueIdentifier>\n    </Filter>\n    <Filter Include=\"Classes\\quick-src\\lua_extensions\">\n      <UniqueIdentifier>{fb09aeef-29e4-4ab7-a8ad-0d981c1dafa4}</UniqueIdentifier>\n    </Filter>\n    <Filter Include=\"Classes\\quick-src\\lua_extensions\\cjson\">\n      <UniqueIdentifier>{350eab93-c57c-4ee7-98f9-4b3f15f4cd78}</UniqueIdentifier>\n    </Filter>\n    <Filter Include=\"Classes\\quick-src\\lua_extensions\\debugger\">\n      <UniqueIdentifier>{f5e5d894-3f5b-4459-990f-4c046368178e}</UniqueIdentifier>\n    </Filter>\n    <Filter Include=\"Classes\\quick-src\\lua_extensions\\filesystem\">\n      <UniqueIdentifier>{d98a3348-ec68-4cb5-9f25-101344de9297}</UniqueIdentifier>\n    </Filter>\n    <Filter Include=\"Classes\\quick-src\\lua_extensions\\lpack\">\n      <UniqueIdentifier>{8174b36c-61cf-490f-9161-dff60871aae1}</UniqueIdentifier>\n    </Filter>\n    <Filter Include=\"Classes\\quick-src\\lua_extensions\\lsqlite3\">\n      <UniqueIdentifier>{4625e617-259d-4ccd-ac3a-e28bfbe93b91}</UniqueIdentifier>\n    </Filter>\n    <Filter Include=\"Classes\\quick-src\\lua_extensions\\zlib\">\n      <UniqueIdentifier>{86a62d16-c431-4d73-8ea6-16a36bc0d780}</UniqueIdentifier>\n    </Filter>\n    <Filter Include=\"Classes\\quick-src\\extra\\apptools\">\n      <UniqueIdentifier>{0f4429db-4f7a-4b14-b930-0a05a705a7c3}</UniqueIdentifier>\n    </Filter>\n    <Filter Include=\"Classes\\quick-src\\extra\\crypto\">\n      <UniqueIdentifier>{7e3dbde2-df3c-4bbf-ab9e-34dd5bf5ef9b}</UniqueIdentifier>\n    </Filter>\n    <Filter Include=\"Classes\\quick-src\\extra\\filters\">\n      <UniqueIdentifier>{6faab872-065b-4db7-a25d-2b80369f92f8}</UniqueIdentifier>\n    </Filter>\n    <Filter Include=\"Classes\\quick-src\\extra\\luabinding\">\n      <UniqueIdentifier>{0103a6d5-696d-4bfa-a65f-d6e7e450961d}</UniqueIdentifier>\n    </Filter>\n    <Filter Include=\"Classes\\quick-src\\extra\\native\">\n      <UniqueIdentifier>{86e2876d-2299-40cf-a030-28c8f457d535}</UniqueIdentifier>\n    </Filter>\n    <Filter Include=\"Classes\\quick-src\\extra\\platform\">\n      <UniqueIdentifier>{82fd460c-ddc6-46a1-a4ac-59a670441e3e}</UniqueIdentifier>\n    </Filter>\n    <Filter Include=\"Classes\\quick-src\\extra\\crypto\\base64\">\n      <UniqueIdentifier>{d8ffcfb0-2e07-4269-924d-b28eed616140}</UniqueIdentifier>\n    </Filter>\n    <Filter Include=\"Classes\\quick-src\\extra\\crypto\\md5\">\n      <UniqueIdentifier>{28265feb-9322-4a92-8284-4abc0eff2b4b}</UniqueIdentifier>\n    </Filter>\n    <Filter Include=\"Classes\\quick-src\\extra\\filters\\filters\">\n      <UniqueIdentifier>{26c18c3d-b960-4e0f-8800-481cfe493dc3}</UniqueIdentifier>\n    </Filter>\n    <Filter Include=\"Classes\\quick-src\\extra\\filters\\nodes\">\n      <UniqueIdentifier>{a48a1cea-c5ef-495b-86d9-2ebdf429c397}</UniqueIdentifier>\n    </Filter>\n    <Filter Include=\"Classes\\quick-src\\extra\\filters\\shaders\">\n      <UniqueIdentifier>{60bdd51e-c896-4df5-900e-ca406ff1eeb3}</UniqueIdentifier>\n    </Filter>\n    <Filter Include=\"Classes\\quick-src\\extra\\platform\\win32\">\n      <UniqueIdentifier>{b3d6a935-2621-49c5-8826-58b4ead63030}</UniqueIdentifier>\n    </Filter>\n    <Filter Include=\"Classes\\quick-src\\extra\\network\">\n      <UniqueIdentifier>{d59a0a12-68d3-4a43-8838-b3766f549d16}</UniqueIdentifier>\n    </Filter>\n    <Filter Include=\"Classes\\runtime\\protobuf-lite\">\n      <UniqueIdentifier>{35eff1ba-895b-4400-8f10-e4047b8f9f63}</UniqueIdentifier>\n    </Filter>\n    <Filter Include=\"Classes\\runtime\\protobuf-lite\\io\">\n      <UniqueIdentifier>{cf9aaa18-b941-46cf-993f-dd3891e4d800}</UniqueIdentifier>\n    </Filter>\n    <Filter Include=\"Classes\\runtime\\protobuf-lite\\stub\">\n      <UniqueIdentifier>{d3a19d38-3183-4852-8e0a-4ace37ce2e49}</UniqueIdentifier>\n    </Filter>\n    <Filter Include=\"Classes\\quick-src\\extra\\nanovg\">\n      <UniqueIdentifier>{742c72c8-4692-4432-9fd6-8c294632f1cc}</UniqueIdentifier>\n    </Filter>\n    <Filter Include=\"Classes\\quick-src\\extra\\nanovg\\nanovg\">\n      <UniqueIdentifier>{4fc7959d-3eb7-4afe-9bf6-fea3ba431707}</UniqueIdentifier>\n    </Filter>\n    <Filter Include=\"Classes\\quick-src\\extra\\nanovg\\nanonode\">\n      <UniqueIdentifier>{fa2bffea-5bf4-480a-a40f-2b3499c85bbb}</UniqueIdentifier>\n    </Filter>\n  </ItemGroup>\n  <ItemGroup>\n    <ClInclude Include=\"..\\Classes\\AppDelegate.h\">\n      <Filter>Classes</Filter>\n    </ClInclude>\n    <ClInclude Include=\"main.h\">\n      <Filter>win32</Filter>\n    </ClInclude>\n    <ClInclude Include=\"SimulatorWindow.h\">\n      <Filter>win32</Filter>\n    </ClInclude>\n    <ClInclude Include=\"resource.h\" />\n    <ClInclude Include=\"..\\Classes\\ConfigParser.h\">\n      <Filter>Classes</Filter>\n    </ClInclude>\n    <ClInclude Include=\"..\\Classes\\VisibleRect.h\">\n      <Filter>Classes</Filter>\n    </ClInclude>\n    <ClInclude Include=\"..\\Classes\\runtime\\ResData.h\">\n      <Filter>Classes\\runtime</Filter>\n    </ClInclude>\n    <ClInclude Include=\"..\\Classes\\runtime\\Runtime.h\">\n      <Filter>Classes\\runtime</Filter>\n    </ClInclude>\n    <ClInclude Include=\"..\\Classes\\runtime\\Protos.pb.h\">\n      <Filter>Classes\\runtime</Filter>\n    </ClInclude>\n    <ClInclude Include=\"..\\Classes\\runtime\\lua_debugger.h\">\n      <Filter>Classes\\runtime</Filter>\n    </ClInclude>\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\ProjectConfig\\ProjectConfig.h\">\n      <Filter>Classes\\quick-src\\ProjectConfig</Filter>\n    </ClInclude>\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\ProjectConfig\\SimulatorConfig.h\">\n      <Filter>Classes\\quick-src\\ProjectConfig</Filter>\n    </ClInclude>\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\lua_extensions\\lua_extensions_more.h\">\n      <Filter>Classes\\quick-src\\lua_extensions</Filter>\n    </ClInclude>\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\lua_extensions\\zlib\\lua_zlib.h\">\n      <Filter>Classes\\quick-src\\lua_extensions\\zlib</Filter>\n    </ClInclude>\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\lua_extensions\\lsqlite3\\lsqlite3.h\">\n      <Filter>Classes\\quick-src\\lua_extensions\\lsqlite3</Filter>\n    </ClInclude>\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\lua_extensions\\lsqlite3\\sqlite3.h\">\n      <Filter>Classes\\quick-src\\lua_extensions\\lsqlite3</Filter>\n    </ClInclude>\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\lua_extensions\\lpack\\lpack.h\">\n      <Filter>Classes\\quick-src\\lua_extensions\\lpack</Filter>\n    </ClInclude>\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\lua_extensions\\filesystem\\lfs.h\">\n      <Filter>Classes\\quick-src\\lua_extensions\\filesystem</Filter>\n    </ClInclude>\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\lua_extensions\\debugger\\debugger.h\">\n      <Filter>Classes\\quick-src\\lua_extensions\\debugger</Filter>\n    </ClInclude>\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\lua_extensions\\cjson\\fpconv.h\">\n      <Filter>Classes\\quick-src\\lua_extensions\\cjson</Filter>\n    </ClInclude>\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\lua_extensions\\cjson\\lua_cjson.h\">\n      <Filter>Classes\\quick-src\\lua_extensions\\cjson</Filter>\n    </ClInclude>\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\lua_extensions\\cjson\\strbuf.h\">\n      <Filter>Classes\\quick-src\\lua_extensions\\cjson</Filter>\n    </ClInclude>\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\apptools\\HelperFunc.h\">\n      <Filter>Classes\\quick-src\\extra\\apptools</Filter>\n    </ClInclude>\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\crypto\\CCCrypto.h\">\n      <Filter>Classes\\quick-src\\extra\\crypto</Filter>\n    </ClInclude>\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\crypto\\base64\\libbase64.h\">\n      <Filter>Classes\\quick-src\\extra\\crypto\\base64</Filter>\n    </ClInclude>\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\crypto\\md5\\md5.h\">\n      <Filter>Classes\\quick-src\\extra\\crypto\\md5</Filter>\n    </ClInclude>\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\filters\\filters\\CCBlurFilter.h\">\n      <Filter>Classes\\quick-src\\extra\\filters\\filters</Filter>\n    </ClInclude>\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\filters\\filters\\CCBrightnessFilter.h\">\n      <Filter>Classes\\quick-src\\extra\\filters\\filters</Filter>\n    </ClInclude>\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\filters\\filters\\CCContrastFilter.h\">\n      <Filter>Classes\\quick-src\\extra\\filters\\filters</Filter>\n    </ClInclude>\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\filters\\filters\\CCCustomFilter.h\">\n      <Filter>Classes\\quick-src\\extra\\filters\\filters</Filter>\n    </ClInclude>\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\filters\\filters\\CCDropShadowFilter.h\">\n      <Filter>Classes\\quick-src\\extra\\filters\\filters</Filter>\n    </ClInclude>\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\filters\\filters\\CCExposureFilter.h\">\n      <Filter>Classes\\quick-src\\extra\\filters\\filters</Filter>\n    </ClInclude>\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\filters\\filters\\CCFilter.h\">\n      <Filter>Classes\\quick-src\\extra\\filters\\filters</Filter>\n    </ClInclude>\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\filters\\filters\\CCGammaFilter.h\">\n      <Filter>Classes\\quick-src\\extra\\filters\\filters</Filter>\n    </ClInclude>\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\filters\\filters\\CCGrayFilter.h\">\n      <Filter>Classes\\quick-src\\extra\\filters\\filters</Filter>\n    </ClInclude>\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\filters\\filters\\CCHazeFilter.h\">\n      <Filter>Classes\\quick-src\\extra\\filters\\filters</Filter>\n    </ClInclude>\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\filters\\filters\\CCHueFilter.h\">\n      <Filter>Classes\\quick-src\\extra\\filters\\filters</Filter>\n    </ClInclude>\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\filters\\filters\\CCMaskFilter.h\">\n      <Filter>Classes\\quick-src\\extra\\filters\\filters</Filter>\n    </ClInclude>\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\filters\\filters\\CCRGBFilter.h\">\n      <Filter>Classes\\quick-src\\extra\\filters\\filters</Filter>\n    </ClInclude>\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\filters\\filters\\CCSaturationFilter.h\">\n      <Filter>Classes\\quick-src\\extra\\filters\\filters</Filter>\n    </ClInclude>\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\filters\\filters\\CCSepiaFilter.h\">\n      <Filter>Classes\\quick-src\\extra\\filters\\filters</Filter>\n    </ClInclude>\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\filters\\filters\\CCSharpenFilter.h\">\n      <Filter>Classes\\quick-src\\extra\\filters\\filters</Filter>\n    </ClInclude>\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\filters\\filters\\CCTestFilter.h\">\n      <Filter>Classes\\quick-src\\extra\\filters\\filters</Filter>\n    </ClInclude>\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\filters\\shaders\\ccFilterShader_blur_frag.h\">\n      <Filter>Classes\\quick-src\\extra\\filters\\shaders</Filter>\n    </ClInclude>\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\filters\\shaders\\ccFilterShader_brightness_frag.h\">\n      <Filter>Classes\\quick-src\\extra\\filters\\shaders</Filter>\n    </ClInclude>\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\filters\\shaders\\ccFilterShader_colorramp_frag.h\">\n      <Filter>Classes\\quick-src\\extra\\filters\\shaders</Filter>\n    </ClInclude>\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\filters\\shaders\\ccFilterShader_contrast_frag.h\">\n      <Filter>Classes\\quick-src\\extra\\filters\\shaders</Filter>\n    </ClInclude>\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\filters\\shaders\\ccFilterShader_drop_shadow_frag.h\">\n      <Filter>Classes\\quick-src\\extra\\filters\\shaders</Filter>\n    </ClInclude>\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\filters\\shaders\\ccFilterShader_drop_shadow_vert.h\">\n      <Filter>Classes\\quick-src\\extra\\filters\\shaders</Filter>\n    </ClInclude>\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\filters\\shaders\\ccFilterShader_emboss_frag.h\">\n      <Filter>Classes\\quick-src\\extra\\filters\\shaders</Filter>\n    </ClInclude>\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\filters\\shaders\\ccFilterShader_embossmov_frag.h\">\n      <Filter>Classes\\quick-src\\extra\\filters\\shaders</Filter>\n    </ClInclude>\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\filters\\shaders\\ccFilterShader_exposure_frag.h\">\n      <Filter>Classes\\quick-src\\extra\\filters\\shaders</Filter>\n    </ClInclude>\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\filters\\shaders\\ccFilterShader_gamma_frag.h\">\n      <Filter>Classes\\quick-src\\extra\\filters\\shaders</Filter>\n    </ClInclude>\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\filters\\shaders\\ccFilterShader_gaussian_blur_frag.h\">\n      <Filter>Classes\\quick-src\\extra\\filters\\shaders</Filter>\n    </ClInclude>\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\filters\\shaders\\ccFilterShader_gaussian_hblur_frag.h\">\n      <Filter>Classes\\quick-src\\extra\\filters\\shaders</Filter>\n    </ClInclude>\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\filters\\shaders\\ccFilterShader_gaussian_vblur_frag.h\">\n      <Filter>Classes\\quick-src\\extra\\filters\\shaders</Filter>\n    </ClInclude>\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\filters\\shaders\\ccFilterShader_grass_frag.h\">\n      <Filter>Classes\\quick-src\\extra\\filters\\shaders</Filter>\n    </ClInclude>\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\filters\\shaders\\ccFilterShader_gray_frag.h\">\n      <Filter>Classes\\quick-src\\extra\\filters\\shaders</Filter>\n    </ClInclude>\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\filters\\shaders\\ccFilterShader_haze_frag.h\">\n      <Filter>Classes\\quick-src\\extra\\filters\\shaders</Filter>\n    </ClInclude>\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\filters\\shaders\\ccFilterShader_hblur_vert.h\">\n      <Filter>Classes\\quick-src\\extra\\filters\\shaders</Filter>\n    </ClInclude>\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\filters\\shaders\\ccFilterShader_hue_frag.h\">\n      <Filter>Classes\\quick-src\\extra\\filters\\shaders</Filter>\n    </ClInclude>\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\filters\\shaders\\ccFilterShader_motion_blur_frag.h\">\n      <Filter>Classes\\quick-src\\extra\\filters\\shaders</Filter>\n    </ClInclude>\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\filters\\shaders\\ccFilterShader_motion_blur_vert.h\">\n      <Filter>Classes\\quick-src\\extra\\filters\\shaders</Filter>\n    </ClInclude>\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\filters\\shaders\\ccFilterShader_rgb_frag.h\">\n      <Filter>Classes\\quick-src\\extra\\filters\\shaders</Filter>\n    </ClInclude>\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\filters\\shaders\\ccFilterShader_saturation_frag.h\">\n      <Filter>Classes\\quick-src\\extra\\filters\\shaders</Filter>\n    </ClInclude>\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\filters\\shaders\\ccFilterShader_sepia_frag.h\">\n      <Filter>Classes\\quick-src\\extra\\filters\\shaders</Filter>\n    </ClInclude>\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\filters\\shaders\\ccFilterShader_sharpen_frag.h\">\n      <Filter>Classes\\quick-src\\extra\\filters\\shaders</Filter>\n    </ClInclude>\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\filters\\shaders\\ccFilterShader_sharpen_vert.h\">\n      <Filter>Classes\\quick-src\\extra\\filters\\shaders</Filter>\n    </ClInclude>\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\filters\\shaders\\ccFilterShader_test_frag.h\">\n      <Filter>Classes\\quick-src\\extra\\filters\\shaders</Filter>\n    </ClInclude>\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\filters\\shaders\\ccFilterShader_test_vert.h\">\n      <Filter>Classes\\quick-src\\extra\\filters\\shaders</Filter>\n    </ClInclude>\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\filters\\shaders\\ccFilterShader_vblur_vert.h\">\n      <Filter>Classes\\quick-src\\extra\\filters\\shaders</Filter>\n    </ClInclude>\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\filters\\shaders\\ccFilterShader_zoom_blur_frag.h\">\n      <Filter>Classes\\quick-src\\extra\\filters\\shaders</Filter>\n    </ClInclude>\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\filters\\shaders\\ccFilterShaders.h\">\n      <Filter>Classes\\quick-src\\extra\\filters\\shaders</Filter>\n    </ClInclude>\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\filters\\shaders\\FilterShaders.h\">\n      <Filter>Classes\\quick-src\\extra\\filters\\shaders</Filter>\n    </ClInclude>\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\filters\\nodes\\CCFilteredSprite.h\">\n      <Filter>Classes\\quick-src\\extra\\filters\\nodes</Filter>\n    </ClInclude>\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\filters\\cocos2dFilters.h\">\n      <Filter>Classes\\quick-src\\extra\\filters</Filter>\n    </ClInclude>\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\luabinding\\cocos2dx_extra_luabinding.h\">\n      <Filter>Classes\\quick-src\\extra\\luabinding</Filter>\n    </ClInclude>\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\luabinding\\HelperFunc_luabinding.h\">\n      <Filter>Classes\\quick-src\\extra\\luabinding</Filter>\n    </ClInclude>\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\luabinding\\lua_cocos2dx_extension_filter_auto.hpp\">\n      <Filter>Classes\\quick-src\\extra\\luabinding</Filter>\n    </ClInclude>\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\native\\CCAlertViewDelegate.h\">\n      <Filter>Classes\\quick-src\\extra\\native</Filter>\n    </ClInclude>\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\native\\CCNative.h\">\n      <Filter>Classes\\quick-src\\extra\\native</Filter>\n    </ClInclude>\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\platform\\win32\\CCNativeWin32.h\">\n      <Filter>Classes\\quick-src\\extra\\platform\\win32</Filter>\n    </ClInclude>\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\platform\\win32\\CCNativeWin32def.h\">\n      <Filter>Classes\\quick-src\\extra\\platform\\win32</Filter>\n    </ClInclude>\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\network\\CCHTTPRequest.h\">\n      <Filter>Classes\\quick-src\\extra\\network</Filter>\n    </ClInclude>\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\network\\CCHTTPRequestDelegate.h\">\n      <Filter>Classes\\quick-src\\extra\\network</Filter>\n    </ClInclude>\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\network\\CCNetwork.h\">\n      <Filter>Classes\\quick-src\\extra\\network</Filter>\n    </ClInclude>\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\external\\protobuf-lite\\src\\google\\protobuf\\config.h\">\n      <Filter>Classes\\runtime\\protobuf-lite</Filter>\n    </ClInclude>\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\external\\protobuf-lite\\src\\google\\protobuf\\extension_set.h\">\n      <Filter>Classes\\runtime\\protobuf-lite</Filter>\n    </ClInclude>\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\external\\protobuf-lite\\src\\google\\protobuf\\generated_message_util.h\">\n      <Filter>Classes\\runtime\\protobuf-lite</Filter>\n    </ClInclude>\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\external\\protobuf-lite\\src\\google\\protobuf\\message_lite.h\">\n      <Filter>Classes\\runtime\\protobuf-lite</Filter>\n    </ClInclude>\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\external\\protobuf-lite\\src\\google\\protobuf\\repeated_field.h\">\n      <Filter>Classes\\runtime\\protobuf-lite</Filter>\n    </ClInclude>\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\external\\protobuf-lite\\src\\google\\protobuf\\wire_format_lite.h\">\n      <Filter>Classes\\runtime\\protobuf-lite</Filter>\n    </ClInclude>\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\external\\protobuf-lite\\src\\google\\protobuf\\wire_format_lite_inl.h\">\n      <Filter>Classes\\runtime\\protobuf-lite</Filter>\n    </ClInclude>\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\external\\protobuf-lite\\src\\google\\protobuf\\io\\coded_stream.h\">\n      <Filter>Classes\\runtime\\protobuf-lite\\io</Filter>\n    </ClInclude>\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\external\\protobuf-lite\\src\\google\\protobuf\\io\\coded_stream_inl.h\">\n      <Filter>Classes\\runtime\\protobuf-lite\\io</Filter>\n    </ClInclude>\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\external\\protobuf-lite\\src\\google\\protobuf\\io\\zero_copy_stream.h\">\n      <Filter>Classes\\runtime\\protobuf-lite\\io</Filter>\n    </ClInclude>\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\external\\protobuf-lite\\src\\google\\protobuf\\io\\zero_copy_stream_impl.h\">\n      <Filter>Classes\\runtime\\protobuf-lite\\io</Filter>\n    </ClInclude>\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\external\\protobuf-lite\\src\\google\\protobuf\\io\\zero_copy_stream_impl_lite.h\">\n      <Filter>Classes\\runtime\\protobuf-lite\\io</Filter>\n    </ClInclude>\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\external\\protobuf-lite\\src\\google\\protobuf\\stubs\\atomicops.h\">\n      <Filter>Classes\\runtime\\protobuf-lite\\stub</Filter>\n    </ClInclude>\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\external\\protobuf-lite\\src\\google\\protobuf\\stubs\\atomicops_internals_arm_gcc.h\">\n      <Filter>Classes\\runtime\\protobuf-lite\\stub</Filter>\n    </ClInclude>\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\external\\protobuf-lite\\src\\google\\protobuf\\stubs\\atomicops_internals_arm_qnx.h\">\n      <Filter>Classes\\runtime\\protobuf-lite\\stub</Filter>\n    </ClInclude>\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\external\\protobuf-lite\\src\\google\\protobuf\\stubs\\atomicops_internals_atomicword_compat.h\">\n      <Filter>Classes\\runtime\\protobuf-lite\\stub</Filter>\n    </ClInclude>\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\external\\protobuf-lite\\src\\google\\protobuf\\stubs\\atomicops_internals_macosx.h\">\n      <Filter>Classes\\runtime\\protobuf-lite\\stub</Filter>\n    </ClInclude>\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\external\\protobuf-lite\\src\\google\\protobuf\\stubs\\atomicops_internals_mips_gcc.h\">\n      <Filter>Classes\\runtime\\protobuf-lite\\stub</Filter>\n    </ClInclude>\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\external\\protobuf-lite\\src\\google\\protobuf\\stubs\\atomicops_internals_pnacl.h\">\n      <Filter>Classes\\runtime\\protobuf-lite\\stub</Filter>\n    </ClInclude>\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\external\\protobuf-lite\\src\\google\\protobuf\\stubs\\atomicops_internals_x86_gcc.h\">\n      <Filter>Classes\\runtime\\protobuf-lite\\stub</Filter>\n    </ClInclude>\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\external\\protobuf-lite\\src\\google\\protobuf\\stubs\\atomicops_internals_x86_msvc.h\">\n      <Filter>Classes\\runtime\\protobuf-lite\\stub</Filter>\n    </ClInclude>\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\external\\protobuf-lite\\src\\google\\protobuf\\stubs\\common.h\">\n      <Filter>Classes\\runtime\\protobuf-lite\\stub</Filter>\n    </ClInclude>\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\external\\protobuf-lite\\src\\google\\protobuf\\stubs\\hash.h\">\n      <Filter>Classes\\runtime\\protobuf-lite\\stub</Filter>\n    </ClInclude>\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\external\\protobuf-lite\\src\\google\\protobuf\\stubs\\map-util.h\">\n      <Filter>Classes\\runtime\\protobuf-lite\\stub</Filter>\n    </ClInclude>\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\external\\protobuf-lite\\src\\google\\protobuf\\stubs\\once.h\">\n      <Filter>Classes\\runtime\\protobuf-lite\\stub</Filter>\n    </ClInclude>\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\external\\protobuf-lite\\src\\google\\protobuf\\stubs\\platform_macros.h\">\n      <Filter>Classes\\runtime\\protobuf-lite\\stub</Filter>\n    </ClInclude>\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\external\\protobuf-lite\\src\\google\\protobuf\\stubs\\stl_util.h\">\n      <Filter>Classes\\runtime\\protobuf-lite\\stub</Filter>\n    </ClInclude>\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\external\\protobuf-lite\\src\\google\\protobuf\\stubs\\stringprintf.h\">\n      <Filter>Classes\\runtime\\protobuf-lite\\stub</Filter>\n    </ClInclude>\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\external\\protobuf-lite\\src\\google\\protobuf\\stubs\\template_util.h\">\n      <Filter>Classes\\runtime\\protobuf-lite\\stub</Filter>\n    </ClInclude>\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\external\\protobuf-lite\\src\\google\\protobuf\\stubs\\type_traits.h\">\n      <Filter>Classes\\runtime\\protobuf-lite\\stub</Filter>\n    </ClInclude>\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\nanovg\\nanovg\\fontstash.h\">\n      <Filter>Classes\\quick-src\\extra\\nanovg\\nanovg</Filter>\n    </ClInclude>\n    <ClInclude Include=\".%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\nanovg\\nanovg\\nanovg.h\">\n      <Filter>Classes\\quick-src\\extra\\nanovg\\nanovg</Filter>\n    </ClInclude>\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\nanovg\\nanovg\\nanovg_gl.h\">\n      <Filter>Classes\\quick-src\\extra\\nanovg\\nanovg</Filter>\n    </ClInclude>\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\nanovg\\nanovg\\nanovg_gl_utils.h\">\n      <Filter>Classes\\quick-src\\extra\\nanovg\\nanovg</Filter>\n    </ClInclude>\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\nanovg\\nanovg\\stb_image.h\">\n      <Filter>Classes\\quick-src\\extra\\nanovg\\nanovg</Filter>\n    </ClInclude>\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\nanovg\\nanovg\\stb_truetype.h\">\n      <Filter>Classes\\quick-src\\extra\\nanovg\\nanovg</Filter>\n    </ClInclude>\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\nanovg\\nanonode\\NVGDrawNode.h\">\n      <Filter>Classes\\quick-src\\extra\\nanovg\\nanonode</Filter>\n    </ClInclude>\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\nanovg\\nanonode\\NVGNode.h\">\n      <Filter>Classes\\quick-src\\extra\\nanovg\\nanonode</Filter>\n    </ClInclude>\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\luabinding\\lua_cocos2dx_extension_nanovg_auto.hpp\">\n      <Filter>Classes\\quick-src\\extra\\luabinding</Filter>\n    </ClInclude>\n    <ClInclude Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\luabinding\\lua_cocos2dx_extension_nanovg_manual.hpp\">\n      <Filter>Classes\\quick-src\\extra\\luabinding</Filter>\n    </ClInclude>\n  </ItemGroup>\n  <ItemGroup>\n    <ClCompile Include=\"..\\Classes\\AppDelegate.cpp\">\n      <Filter>Classes</Filter>\n    </ClCompile>\n    <ClCompile Include=\"main.cpp\">\n      <Filter>win32</Filter>\n    </ClCompile>\n    <ClCompile Include=\"SimulatorWindow.cpp\">\n      <Filter>win32</Filter>\n    </ClCompile>\n    <ClCompile Include=\"Runtime_win32.cpp\">\n      <Filter>win32</Filter>\n    </ClCompile>\n    <ClCompile Include=\"..\\Classes\\ConfigParser.cpp\">\n      <Filter>Classes</Filter>\n    </ClCompile>\n    <ClCompile Include=\"..\\Classes\\VisibleRect.cpp\">\n      <Filter>Classes</Filter>\n    </ClCompile>\n    <ClCompile Include=\"..\\Classes\\runtime\\Landscape_png.cpp\">\n      <Filter>Classes\\runtime</Filter>\n    </ClCompile>\n    <ClCompile Include=\"..\\Classes\\runtime\\PlayDisable_png.cpp\">\n      <Filter>Classes\\runtime</Filter>\n    </ClCompile>\n    <ClCompile Include=\"..\\Classes\\runtime\\PlayEnable_png.cpp\">\n      <Filter>Classes\\runtime</Filter>\n    </ClCompile>\n    <ClCompile Include=\"..\\Classes\\runtime\\Portrait_png.cpp\">\n      <Filter>Classes\\runtime</Filter>\n    </ClCompile>\n    <ClCompile Include=\"..\\Classes\\runtime\\Runtime.cpp\">\n      <Filter>Classes\\runtime</Filter>\n    </ClCompile>\n    <ClCompile Include=\"..\\Classes\\runtime\\Shine_png.cpp\">\n      <Filter>Classes\\runtime</Filter>\n    </ClCompile>\n    <ClCompile Include=\"..\\Classes\\runtime\\Protos.pb.cc\">\n      <Filter>Classes\\runtime</Filter>\n    </ClCompile>\n    <ClCompile Include=\"..\\Classes\\runtime\\lua_debugger.c\">\n      <Filter>Classes\\runtime</Filter>\n    </ClCompile>\n    <ClCompile Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\ProjectConfig\\ProjectConfig.cpp\">\n      <Filter>Classes\\quick-src\\ProjectConfig</Filter>\n    </ClCompile>\n    <ClCompile Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\ProjectConfig\\SimulatorConfig.cpp\">\n      <Filter>Classes\\quick-src\\ProjectConfig</Filter>\n    </ClCompile>\n    <ClCompile Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\lua_extensions\\lua_extensions_more.c\">\n      <Filter>Classes\\quick-src\\lua_extensions</Filter>\n    </ClCompile>\n    <ClCompile Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\lua_extensions\\zlib\\lua_zlib.c\">\n      <Filter>Classes\\quick-src\\lua_extensions\\zlib</Filter>\n    </ClCompile>\n    <ClCompile Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\lua_extensions\\lsqlite3\\lsqlite3.c\">\n      <Filter>Classes\\quick-src\\lua_extensions\\lsqlite3</Filter>\n    </ClCompile>\n    <ClCompile Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\lua_extensions\\lsqlite3\\sqlite3.c\">\n      <Filter>Classes\\quick-src\\lua_extensions\\lsqlite3</Filter>\n    </ClCompile>\n    <ClCompile Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\lua_extensions\\lpack\\lpack.c\">\n      <Filter>Classes\\quick-src\\lua_extensions\\lpack</Filter>\n    </ClCompile>\n    <ClCompile Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\lua_extensions\\filesystem\\lfs.c\">\n      <Filter>Classes\\quick-src\\lua_extensions\\filesystem</Filter>\n    </ClCompile>\n    <ClCompile Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\lua_extensions\\debugger\\debugger.c\">\n      <Filter>Classes\\quick-src\\lua_extensions\\debugger</Filter>\n    </ClCompile>\n    <ClCompile Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\lua_extensions\\cjson\\fpconv.c\">\n      <Filter>Classes\\quick-src\\lua_extensions\\cjson</Filter>\n    </ClCompile>\n    <ClCompile Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\lua_extensions\\cjson\\lua_cjson.c\">\n      <Filter>Classes\\quick-src\\lua_extensions\\cjson</Filter>\n    </ClCompile>\n    <ClCompile Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\lua_extensions\\cjson\\strbuf.c\">\n      <Filter>Classes\\quick-src\\lua_extensions\\cjson</Filter>\n    </ClCompile>\n    <ClCompile Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\apptools\\HelperFunc.cpp\">\n      <Filter>Classes\\quick-src\\extra\\apptools</Filter>\n    </ClCompile>\n    <ClCompile Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\crypto\\CCCrypto.cpp\">\n      <Filter>Classes\\quick-src\\extra\\crypto</Filter>\n    </ClCompile>\n    <ClCompile Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\crypto\\base64\\libbase64.c\">\n      <Filter>Classes\\quick-src\\extra\\crypto\\base64</Filter>\n    </ClCompile>\n    <ClCompile Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\crypto\\md5\\md5.c\">\n      <Filter>Classes\\quick-src\\extra\\crypto\\md5</Filter>\n    </ClCompile>\n    <ClCompile Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\filters\\filters\\CCBlurFilter.cpp\">\n      <Filter>Classes\\quick-src\\extra\\filters\\filters</Filter>\n    </ClCompile>\n    <ClCompile Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\filters\\filters\\CCBrightnessFilter.cpp\">\n      <Filter>Classes\\quick-src\\extra\\filters\\filters</Filter>\n    </ClCompile>\n    <ClCompile Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\filters\\filters\\CCContrastFilter.cpp\">\n      <Filter>Classes\\quick-src\\extra\\filters\\filters</Filter>\n    </ClCompile>\n    <ClCompile Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\filters\\filters\\CCCustomFilter.cpp\">\n      <Filter>Classes\\quick-src\\extra\\filters\\filters</Filter>\n    </ClCompile>\n    <ClCompile Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\filters\\filters\\CCDropShadowFilter.cpp\">\n      <Filter>Classes\\quick-src\\extra\\filters\\filters</Filter>\n    </ClCompile>\n    <ClCompile Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\filters\\filters\\CCExposureFilter.cpp\">\n      <Filter>Classes\\quick-src\\extra\\filters\\filters</Filter>\n    </ClCompile>\n    <ClCompile Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\filters\\filters\\CCFilter.cpp\">\n      <Filter>Classes\\quick-src\\extra\\filters\\filters</Filter>\n    </ClCompile>\n    <ClCompile Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\filters\\filters\\CCGammaFilter.cpp\">\n      <Filter>Classes\\quick-src\\extra\\filters\\filters</Filter>\n    </ClCompile>\n    <ClCompile Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\filters\\filters\\CCGrayFilter.cpp\">\n      <Filter>Classes\\quick-src\\extra\\filters\\filters</Filter>\n    </ClCompile>\n    <ClCompile Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\filters\\filters\\CCHazeFilter.cpp\">\n      <Filter>Classes\\quick-src\\extra\\filters\\filters</Filter>\n    </ClCompile>\n    <ClCompile Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\filters\\filters\\CCHueFilter.cpp\">\n      <Filter>Classes\\quick-src\\extra\\filters\\filters</Filter>\n    </ClCompile>\n    <ClCompile Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\filters\\filters\\CCMaskFilter.cpp\">\n      <Filter>Classes\\quick-src\\extra\\filters\\filters</Filter>\n    </ClCompile>\n    <ClCompile Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\filters\\filters\\CCRGBFilter.cpp\">\n      <Filter>Classes\\quick-src\\extra\\filters\\filters</Filter>\n    </ClCompile>\n    <ClCompile Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\filters\\filters\\CCSaturationFilter.cpp\">\n      <Filter>Classes\\quick-src\\extra\\filters\\filters</Filter>\n    </ClCompile>\n    <ClCompile Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\filters\\filters\\CCSepiaFilter.cpp\">\n      <Filter>Classes\\quick-src\\extra\\filters\\filters</Filter>\n    </ClCompile>\n    <ClCompile Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\filters\\filters\\CCSharpenFilter.cpp\">\n      <Filter>Classes\\quick-src\\extra\\filters\\filters</Filter>\n    </ClCompile>\n    <ClCompile Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\filters\\filters\\CCTestFilter.cpp\">\n      <Filter>Classes\\quick-src\\extra\\filters\\filters</Filter>\n    </ClCompile>\n    <ClCompile Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\filters\\shaders\\ccFilterShaders.cpp\">\n      <Filter>Classes\\quick-src\\extra\\filters\\shaders</Filter>\n    </ClCompile>\n    <ClCompile Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\filters\\shaders\\FilterShaders.cpp\">\n      <Filter>Classes\\quick-src\\extra\\filters\\shaders</Filter>\n    </ClCompile>\n    <ClCompile Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\filters\\nodes\\CCFilteredSprite.cpp\">\n      <Filter>Classes\\quick-src\\extra\\filters\\nodes</Filter>\n    </ClCompile>\n    <ClCompile Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\luabinding\\cocos2dx_extra_luabinding.cpp\">\n      <Filter>Classes\\quick-src\\extra\\luabinding</Filter>\n    </ClCompile>\n    <ClCompile Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\luabinding\\HelperFunc_luabinding.cpp\">\n      <Filter>Classes\\quick-src\\extra\\luabinding</Filter>\n    </ClCompile>\n    <ClCompile Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\luabinding\\lua_cocos2dx_extension_filter_auto.cpp\">\n      <Filter>Classes\\quick-src\\extra\\luabinding</Filter>\n    </ClCompile>\n    <ClCompile Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\platform\\win32\\CCCryptoWin32.cpp\">\n      <Filter>Classes\\quick-src\\extra\\platform\\win32</Filter>\n    </ClCompile>\n    <ClCompile Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\platform\\win32\\CCNative.cpp\">\n      <Filter>Classes\\quick-src\\extra\\platform\\win32</Filter>\n    </ClCompile>\n    <ClCompile Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\platform\\win32\\CCNativeWin32.cpp\">\n      <Filter>Classes\\quick-src\\extra\\platform\\win32</Filter>\n    </ClCompile>\n    <ClCompile Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\platform\\win32\\CCNetworkWin32.cpp\">\n      <Filter>Classes\\quick-src\\extra\\platform\\win32</Filter>\n    </ClCompile>\n    <ClCompile Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\network\\CCHTTPRequest.cpp\">\n      <Filter>Classes\\quick-src\\extra\\network</Filter>\n    </ClCompile>\n    <ClCompile Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\network\\CCNetwork.cpp\">\n      <Filter>Classes\\quick-src\\extra\\network</Filter>\n    </ClCompile>\n    <ClCompile Include=\"%QUICK_V3_ROOT%\\external\\protobuf-lite\\src\\google\\protobuf\\extension_set.cc\">\n      <Filter>Classes\\runtime\\protobuf-lite</Filter>\n    </ClCompile>\n    <ClCompile Include=\"%QUICK_V3_ROOT%\\external\\protobuf-lite\\src\\google\\protobuf\\generated_message_util.cc\">\n      <Filter>Classes\\runtime\\protobuf-lite</Filter>\n    </ClCompile>\n    <ClCompile Include=\"%QUICK_V3_ROOT%\\external\\protobuf-lite\\src\\google\\protobuf\\message_lite.cc\">\n      <Filter>Classes\\runtime\\protobuf-lite</Filter>\n    </ClCompile>\n    <ClCompile Include=\"%QUICK_V3_ROOT%\\external\\protobuf-lite\\src\\google\\protobuf\\repeated_field.cc\">\n      <Filter>Classes\\runtime\\protobuf-lite</Filter>\n    </ClCompile>\n    <ClCompile Include=\"%QUICK_V3_ROOT%\\external\\protobuf-lite\\src\\google\\protobuf\\wire_format_lite.cc\">\n      <Filter>Classes\\runtime\\protobuf-lite</Filter>\n    </ClCompile>\n    <ClCompile Include=\"%QUICK_V3_ROOT%\\external\\protobuf-lite\\src\\google\\protobuf\\io\\coded_stream.cc\">\n      <Filter>Classes\\runtime\\protobuf-lite\\io</Filter>\n    </ClCompile>\n    <ClCompile Include=\"%QUICK_V3_ROOT%\\external\\protobuf-lite\\src\\google\\protobuf\\io\\zero_copy_stream.cc\">\n      <Filter>Classes\\runtime\\protobuf-lite\\io</Filter>\n    </ClCompile>\n    <ClCompile Include=\"%QUICK_V3_ROOT%\\external\\protobuf-lite\\src\\google\\protobuf\\io\\zero_copy_stream_impl.cc\">\n      <Filter>Classes\\runtime\\protobuf-lite\\io</Filter>\n    </ClCompile>\n    <ClCompile Include=\"%QUICK_V3_ROOT%\\external\\protobuf-lite\\src\\google\\protobuf\\io\\zero_copy_stream_impl_lite.cc\">\n      <Filter>Classes\\runtime\\protobuf-lite\\io</Filter>\n    </ClCompile>\n    <ClCompile Include=\"%QUICK_V3_ROOT%\\external\\protobuf-lite\\src\\google\\protobuf\\stubs\\atomicops_internals_x86_gcc.cc\">\n      <Filter>Classes\\runtime\\protobuf-lite\\stub</Filter>\n    </ClCompile>\n    <ClCompile Include=\"%QUICK_V3_ROOT%\\external\\protobuf-lite\\src\\google\\protobuf\\stubs\\atomicops_internals_x86_msvc.cc\">\n      <Filter>Classes\\runtime\\protobuf-lite\\stub</Filter>\n    </ClCompile>\n    <ClCompile Include=\"%QUICK_V3_ROOT%\\external\\protobuf-lite\\src\\google\\protobuf\\stubs\\common.cc\">\n      <Filter>Classes\\runtime\\protobuf-lite\\stub</Filter>\n    </ClCompile>\n    <ClCompile Include=\"%QUICK_V3_ROOT%\\external\\protobuf-lite\\src\\google\\protobuf\\stubs\\once.cc\">\n      <Filter>Classes\\runtime\\protobuf-lite\\stub</Filter>\n    </ClCompile>\n    <ClCompile Include=\"%QUICK_V3_ROOT%\\external\\protobuf-lite\\src\\google\\protobuf\\stubs\\stringprintf.cc\">\n      <Filter>Classes\\runtime\\protobuf-lite\\stub</Filter>\n    </ClCompile>\n    <ClCompile Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\nanovg\\nanovg\\nanovg.c\">\n      <Filter>Classes\\quick-src\\extra\\nanovg\\nanovg</Filter>\n    </ClCompile>\n    <ClCompile Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\nanovg\\nanonode\\NVGDrawNode.cpp\">\n      <Filter>Classes\\quick-src\\extra\\nanovg\\nanonode</Filter>\n    </ClCompile>\n    <ClCompile Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\nanovg\\nanonode\\NVGNode.cpp\">\n      <Filter>Classes\\quick-src\\extra\\nanovg\\nanonode</Filter>\n    </ClCompile>\n    <ClCompile Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\luabinding\\lua_cocos2dx_extension_nanovg_auto.cpp\">\n      <Filter>Classes\\quick-src\\extra\\luabinding</Filter>\n    </ClCompile>\n    <ClCompile Include=\"%QUICK_V3_ROOT%\\quick\\lib\\quick-src\\extra\\luabinding\\lua_cocos2dx_extension_nanovg_manual.cpp\">\n      <Filter>Classes\\quick-src\\extra\\luabinding</Filter>\n    </ClCompile>\n    <ClCompile Include=\"..\\Classes\\runtime\\ConnectWaitLayer.cpp\">\n      <Filter>Classes\\runtime</Filter>\n    </ClCompile>\n    <ClCompile Include=\"..\\Classes\\runtime\\ConsoleCommand.cpp\">\n      <Filter>Classes\\runtime</Filter>\n    </ClCompile>\n    <ClCompile Include=\"..\\Classes\\runtime\\FileServer.cpp\">\n      <Filter>Classes\\runtime</Filter>\n    </ClCompile>\n  </ItemGroup>\n  <ItemGroup>\n    <ResourceCompile Include=\"game.rc\">\n      <Filter>resource</Filter>\n    </ResourceCompile>\n  </ItemGroup>\n  <ItemGroup>\n    <Image Include=\"res\\game.ico\" />\n  </ItemGroup>\n</Project>"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/proj.win32/mir9.vcxproj.user",
    "content": "﻿<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<Project ToolsVersion=\"4.0\" xmlns=\"http://schemas.microsoft.com/developer/msbuild/2003\">\n  <PropertyGroup>\n    <ShowAllFiles>false</ShowAllFiles>\n    <LocalDebuggerWorkingDirectory Condition=\"'$(Configuration)|$(Platform)'=='Release|Win32'\">$(OutDir)/Resource</LocalDebuggerWorkingDirectory>\n    <DebuggerFlavor Condition=\"'$(Configuration)|$(Platform)'=='Debug|Win32'\">WindowsLocalDebugger</DebuggerFlavor>\n    <DebuggerFlavor Condition=\"'$(Configuration)|$(Platform)'=='Release|Win32'\">WindowsLocalDebugger</DebuggerFlavor>\n  </PropertyGroup>\n  <PropertyGroup Condition=\"'$(Configuration)|$(Platform)'=='Debug|Win32'\">\n    <LocalDebuggerWorkingDirectory>$(OutDir)../../../../runtime/win32</LocalDebuggerWorkingDirectory>\n    <LocalDebuggerCommand>$(OutDir)../../../../runtime/win32/$(TargetFileName)</LocalDebuggerCommand>\n  </PropertyGroup>\n</Project>"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/proj.win32/resource.h",
    "content": "//{{NO_DEPENDENCIES}}\n// Microsoft Visual C++ generated include file.\n// Used by game.rc\n//\n#define IDS_PROJNAME                    100\n#define IDR_TESTLUA                     100\n#define IDR_MENU_COCOS                  201\n#define IDD_DIALOG1                     202\n#define IDD_DIALOG_ABOUT                202\n#define IDC_EDIT2                       1001\n#define ID_VIEW_SIZE                    30001\n#define ID_FILE_NEW_WINDOW              32771\n#define ID_VIEW_PORTRAIT                32775\n#define ID_VIEW_LANDSCAPE               32776\n#define ID_VIEW_CUSTOM                  32777\n#define ID_HELP_ABOUT                   32778\n#define ID_FILE_EXIT                    32779\n#define ID_Menu                         32780\n#define ID_Menu32781                    32781\n#define ID_TEST_RESET                   32782\n#define ID_CONTROL                      32783\n#define ID_CONTROL_RELOAD               32784\n#define ID_VIEW_ZOOMOUT100              32785\n#define ID_VIEW_ZOOMOUT75               32786\n#define ID_VIEW_ZOOMOUT50               32787\n#define ID_VIEW_ZOOMOUT25               32788\n#define ID_CONTROL_TOP                  32793\n\n// Next default values for new objects\n// \n#ifdef APSTUDIO_INVOKED\n#ifndef APSTUDIO_READONLY_SYMBOLS\n#define _APS_NEXT_RESOURCE_VALUE        201\n#define _APS_NEXT_COMMAND_VALUE         32794\n#define _APS_NEXT_CONTROL_VALUE         1000\n#define _APS_NEXT_SYMED_VALUE           101\n#endif\n#endif\n"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/proj.wp8-xaml/App/App.xaml",
    "content": "﻿<Application\n    x:Class=\"cocos2d.App\"\n    xmlns=\"http://schemas.microsoft.com/winfx/2006/xaml/presentation\"\n    xmlns:x=\"http://schemas.microsoft.com/winfx/2006/xaml\"\n    xmlns:phone=\"clr-namespace:Microsoft.Phone.Controls;assembly=Microsoft.Phone\"\n    xmlns:shell=\"clr-namespace:Microsoft.Phone.Shell;assembly=Microsoft.Phone\">\n\n    <!--Application Resources-->\n    <Application.Resources>\n        <local:LocalizedStrings xmlns:local=\"clr-namespace:cocos2d\" x:Key=\"LocalizedStrings\"/>\n    </Application.Resources>\n\n    <Application.ApplicationLifetimeObjects>\n        <!--Required object that handles lifetime events for the application-->\n        <shell:PhoneApplicationService\n            Launching=\"Application_Launching\" Closing=\"Application_Closing\"\n            Activated=\"Application_Activated\" Deactivated=\"Application_Deactivated\"/>\n    </Application.ApplicationLifetimeObjects>\n\n</Application>"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/proj.wp8-xaml/App/App.xaml.cs",
    "content": "﻿using System;\nusing System.Diagnostics;\nusing System.Resources;\nusing System.Windows;\nusing System.Windows.Markup;\nusing System.Windows.Navigation;\nusing Microsoft.Phone.Controls;\nusing Microsoft.Phone.Shell;\nusing System.IO.IsolatedStorage;\n\nnamespace cocos2d\n{\n    public partial class App : Application\n    {\n        /// <summary>\n        /// Provides easy access to the root frame of the Phone Application.\n        /// </summary>\n        /// <returns>The root frame of the Phone Application.</returns>\n        public static PhoneApplicationFrame RootFrame { get; private set; }\n\n\n        enum SessionType\n        {\n            None,\n            Home,\n            DeepLink\n        }\n\n        // Set to Home when the app is launched from Primary tile.\n        // Set to DeepLink when the app is launched from Deep Link.\n        private SessionType sessionType = SessionType.None;\n\n        // Set to true when the page navigation is being reset \n        bool wasRelaunched = false;\n\n        // set to true when 5 min passed since the app was relaunched\n        bool mustClearPagestack = false;\n\n        IsolatedStorageSettings settings = IsolatedStorageSettings.ApplicationSettings;\n\n\n        /// <summary>\n        /// Constructor for the Application object.\n        /// </summary>\n        public App()\n        {\n            // Global handler for uncaught exceptions.\n            UnhandledException += Application_UnhandledException;\n\n            // Standard XAML initialization\n            InitializeComponent();\n\n            // Phone-specific initialization\n            InitializePhoneApplication();\n\n             // Show graphics profiling information while debugging.\n            if (Debugger.IsAttached)\n            {\n                // Display the current frame rate counters.\n                Application.Current.Host.Settings.EnableFrameRateCounter = false;\n\n                // Show the areas of the app that are being redrawn in each frame.\n                //Application.Current.Host.Settings.EnableRedrawRegions = true;\n\n                // Enable non-production analysis visualization mode,\n                // which shows areas of a page that are handed off to GPU with a colored overlay.\n                //Application.Current.Host.Settings.EnableCacheVisualization = true;\n\n                // Prevent the screen from turning off while under the debugger by disabling\n                // the application's idle detection.\n                // Caution:- Use this under debug mode only. Application that disables user idle detection will continue to run\n                // and consume battery power when the user is not using the phone.\n                PhoneApplicationService.Current.UserIdleDetectionMode = IdleDetectionMode.Disabled;\n            }\n\n        }\n\n        // Code to execute when the application is launching (eg, from Start)\n        // This code will not execute when the application is reactivated\n        private void Application_Launching(object sender, LaunchingEventArgs e)\n        {\n\n            // When a new instance of the app is launched, clear all deactivation settings\n            RemoveCurrentDeactivationSettings();\n        }\n\n        // Code to execute when the application is activated (brought to foreground)\n        // This code will not execute when the application is first launched\n        private void Application_Activated(object sender, ActivatedEventArgs e)\n        {\n            // If some interval has passed since the app was deactivated (30 seconds in this example),\n            // then remember to clear the back stack of pages\n            mustClearPagestack = CheckDeactivationTimeStamp();\n\n\n            // If IsApplicationInstancePreserved is not true, then set the session type to the value\n            // saved in isolated storage. This will make sure the session type is correct for an\n            // app that is being resumed after being tombstoned.\n            if (!e.IsApplicationInstancePreserved)\n            {\n                RestoreSessionType();\n            }\n\n        }\n\n        // Code to execute when the application is deactivated (sent to background)\n        // This code will not execute when the application is closing\n        private void Application_Deactivated(object sender, DeactivatedEventArgs e)\n        {\n            // When the applicaiton is deactivated, save the current deactivation settings to isolated storage\n            SaveCurrentDeactivationSettings();\n        }\n\n        // Code to execute when the application is closing (eg, user hit Back)\n        // This code will not execute when the application is deactivated\n        private void Application_Closing(object sender, ClosingEventArgs e)\n        {\n            // When the application closes, delete any deactivation settings from isolated storage\n            RemoveCurrentDeactivationSettings();\n        }\n\n        // Code to execute if a navigation fails\n        private void RootFrame_NavigationFailed(object sender, NavigationFailedEventArgs e)\n        {\n            if (Debugger.IsAttached)\n            {\n                // A navigation has failed; break into the debugger\n                Debugger.Break();\n            }\n        }\n\n        // Code to execute on Unhandled Exceptions\n        private void Application_UnhandledException(object sender, ApplicationUnhandledExceptionEventArgs e)\n        {\n            if (Debugger.IsAttached)\n            {\n                // An unhandled exception has occurred; break into the debugger\n                Debugger.Break();\n            }\n        }\n\n        #region Phone application initialization\n\n        // Avoid double-initialization\n        private bool phoneApplicationInitialized = false;\n\n        // Do not add any additional code to this method\n        private void InitializePhoneApplication()\n        {\n            if (phoneApplicationInitialized)\n                return;\n\n            // Create the frame but don't set it as RootVisual yet; this allows the splash\n            // screen to remain active until the application is ready to render.\n            RootFrame = new PhoneApplicationFrame();\n            RootFrame.Navigated += CompleteInitializePhoneApplication;\n\n            // Handle navigation failures\n            RootFrame.NavigationFailed += RootFrame_NavigationFailed;\n\n            // Handle reset requests for clearing the backstack\n            RootFrame.Navigated += CheckForResetNavigation;\n\n            // Monitor deep link launching \n            RootFrame.Navigating += RootFrame_Navigating;\n\n            // Ensure we don't initialize again\n            phoneApplicationInitialized = true;\n        }\n\n        // Event handler for the Navigating event of the root frame. Use this handler to modify\n        // the default navigation behavior.\n        void RootFrame_Navigating(object sender, NavigatingCancelEventArgs e)\n        {\n\n            // If the session type is None or New, check the navigation Uri to determine if the\n            // navigation is a deep link or if it points to the app's main page.\n            if (sessionType == SessionType.None && e.NavigationMode == NavigationMode.New)\n            {\n                // This block will run if the current navigation is part of the app's intial launch\n\n\n                // Keep track of Session Type \n                if (e.Uri.ToString().Contains(\"DeepLink=true\"))\n                {\n                    sessionType = SessionType.DeepLink;\n                }\n                else if (e.Uri.ToString().Contains(\"/MainPage.xaml\"))\n                {\n                    sessionType = SessionType.Home;\n                }\n            }\n\n\n            if (e.NavigationMode == NavigationMode.Reset)\n            {\n                // This block will execute if the current navigation is a relaunch.\n                // If so, another navigation will be coming, so this records that a relaunch just happened\n                // so that the next navigation can use this info.\n                wasRelaunched = true;\n            }\n            else if (e.NavigationMode == NavigationMode.New && wasRelaunched)\n            {\n                // This block will run if the previous navigation was a relaunch\n                wasRelaunched = false;\n\n                if (e.Uri.ToString().Contains(\"DeepLink=true\"))\n                {\n                    // This block will run if the launch Uri contains \"DeepLink=true\" which\n                    // was specified when the secondary tile was created in MainPage.xaml.cs\n\n                    sessionType = SessionType.DeepLink;\n                    // The app was relaunched via a Deep Link.\n                    // The page stack will be cleared.\n                }\n                else if (e.Uri.ToString().Contains(\"/MainPage.xaml\"))\n                {\n                    // This block will run if the navigation Uri is the main page\n                    if (sessionType == SessionType.DeepLink)\n                    {\n                        // When the app was previously launched via Deep Link and relaunched via Main Tile, we need to clear the page stack. \n                        sessionType = SessionType.Home;\n                    }\n                    else\n                    {\n                        if (!mustClearPagestack)\n                        {\n                            //The app was previously launched via Main Tile and relaunched via Main Tile. Cancel the navigation to resume.\n                            e.Cancel = true;\n                            RootFrame.Navigated -= ClearBackStackAfterReset;\n                        }\n                    }\n                }\n\n                mustClearPagestack = false;\n            }\n        }\n        // Do not add any additional code to this method\n        private void CompleteInitializePhoneApplication(object sender, NavigationEventArgs e)\n        {\n            // Set the root visual to allow the application to render\n            if (RootVisual != RootFrame)\n                RootVisual = RootFrame;\n\n            // Remove this handler since it is no longer needed\n            RootFrame.Navigated -= CompleteInitializePhoneApplication;\n        }\n\n        private void CheckForResetNavigation(object sender, NavigationEventArgs e)\n        {\n            // If the app has received a 'reset' navigation, then we need to check\n            // on the next navigation to see if the page stack should be reset\n            if (e.NavigationMode == NavigationMode.Reset)\n                RootFrame.Navigated += ClearBackStackAfterReset;\n        }\n\n        private void ClearBackStackAfterReset(object sender, NavigationEventArgs e)\n        {\n            // Unregister the event so it doesn't get called again\n            RootFrame.Navigated -= ClearBackStackAfterReset;\n\n            // Only clear the stack for 'new' (forward) and 'refresh' navigations\n            if (e.NavigationMode != NavigationMode.New)\n                return;\n\n            // For UI consistency, clear the entire page stack\n            while (RootFrame.RemoveBackEntry() != null)\n            {\n                ; // do nothing\n            }\n        }\n\n        #endregion\n\n        // Helper method for adding or updating a key/value pair in isolated storage\n        public bool AddOrUpdateValue(string Key, Object value)\n        {\n            bool valueChanged = false;\n\n            // If the key exists\n            if (settings.Contains(Key))\n            {\n                // If the value has changed\n                if (settings[Key] != value)\n                {\n                    // Store the new value\n                    settings[Key] = value;\n                    valueChanged = true;\n                }\n            }\n            // Otherwise create the key.\n            else\n            {\n                settings.Add(Key, value);\n                valueChanged = true;\n            }\n            return valueChanged;\n        }\n\n        // Helper method for removing a key/value pair from isolated storage\n        public void RemoveValue(string Key)\n        {\n            // If the key exists\n            if (settings.Contains(Key))\n            {\n                settings.Remove(Key);\n            }\n        }\n\n        // Called when the app is deactivating. Saves the time of the deactivation and the \n        // session type of the app instance to isolated storage.\n        public void SaveCurrentDeactivationSettings()\n        {\n            if (AddOrUpdateValue(\"DeactivateTime\", DateTimeOffset.Now))\n            {\n                settings.Save();\n            }\n\n            if (AddOrUpdateValue(\"SessionType\", sessionType))\n            {\n                settings.Save();\n            }\n\n        }\n\n        // Called when the app is launched or closed. Removes all deactivation settings from\n        // isolated storage\n        public void RemoveCurrentDeactivationSettings()\n        {\n            RemoveValue(\"DeactivateTime\");\n            RemoveValue(\"SessionType\");\n            settings.Save();\n        }\n\n        // Helper method to determine if the interval since the app was deactivated is\n        // greater than 30 seconds\n        bool CheckDeactivationTimeStamp()\n        {\n            DateTimeOffset lastDeactivated;\n\n            if (settings.Contains(\"DeactivateTime\"))\n            {\n                lastDeactivated = (DateTimeOffset)settings[\"DeactivateTime\"];\n            }\n\n            var currentDuration = DateTimeOffset.Now.Subtract(lastDeactivated);\n\n            return TimeSpan.FromSeconds(currentDuration.TotalSeconds) > TimeSpan.FromSeconds(30);\n        }\n\n        // Helper method to restore the session type from isolated storage.\n        void RestoreSessionType()\n        {\n            if (settings.Contains(\"SessionType\"))\n            {\n                sessionType = (SessionType)settings[\"SessionType\"];\n            }\n        }\n\n\n    }\n}\n"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/proj.wp8-xaml/App/EditBox.xaml",
    "content": "﻿<UserControl x:Class=\"cocos2d.EditBox\"\n    xmlns=\"http://schemas.microsoft.com/winfx/2006/xaml/presentation\"\n    xmlns:x=\"http://schemas.microsoft.com/winfx/2006/xaml\"\n    xmlns:d=\"http://schemas.microsoft.com/expression/blend/2008\"\n    xmlns:mc=\"http://schemas.openxmlformats.org/markup-compatibility/2006\"\n    mc:Ignorable=\"d\"\n    FontFamily=\"{StaticResource PhoneFontFamilyNormal}\"\n    FontSize=\"{StaticResource PhoneFontSizeNormal}\"\n    Foreground=\"{StaticResource PhoneForegroundBrush}\"\n    d:DesignHeight=\"480\" d:DesignWidth=\"480\">\n\n    <Grid x:Name=\"LayoutRoot\" Background=\"{StaticResource PhoneSemitransparentBrush}\">\n        <!--<TextBox KeyDown=\"OnKeyDownHandler\" Height=\"72\" x:Name=\"textinput\"  TextWrapping=\"Wrap\" VerticalAlignment=\"Top\" Margin=\"0,0,220,0\" TextChanged=\"textinput_TextChanged\"/>-->\n        <!-- comment TextBox and uncomment PasswordBox to use PasswordBox -->\n        <!--<PasswordBox KeyDown=\"OnKeyDownHandler\" Height=\"72\" x:Name=\"textinput\"  TextWrapping=\"Wrap\" VerticalAlignment=\"Top\" Margin=\"0,0,220,0\" TextChanged=\"textinput_TextChanged\"/>-->\n        <Button Content=\"Done\"  VerticalAlignment=\"Top\" Width=\"108\" Background=\"{StaticResource PhoneChromeBrush}\" HorizontalAlignment=\"Right\" Margin=\"0,0,120,0\" Click=\"Done_Click\"/>\n        <Button Content=\"Cancel\"  VerticalAlignment=\"Top\" Width=\"131\" Background=\"{StaticResource PhoneChromeBrush}\" HorizontalAlignment=\"Right\" Click=\"Cancel_Click\"/>\n        \n    </Grid>\n</UserControl>"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/proj.wp8-xaml/App/EditBox.xaml.cs",
    "content": "﻿/****************************************************************************\nCopyright (c) 2014 cocos2d-x.org\n\nhttp://www.cocos2d-x.org\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in\nall copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\nTHE SOFTWARE.\n****************************************************************************/\n\nusing System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Net;\nusing System.Windows;\nusing System.Windows.Controls;\nusing System.Windows.Navigation;\nusing Microsoft.Phone.Controls;\nusing Microsoft.Phone.Shell;\nusing System.Windows.Media;\nusing System.Windows.Input;\n\nnamespace cocos2d\n{\n    public partial class EditBox : UserControl\n    {\n        private MainPage m_mainPage = null;\n        private String m_strText = \"\";\n        private String m_strPlaceholder = \"\";\n        private bool bIsFocus = false;\n        private int m_inputFlag = 0;\n        private Control m_textinput = null;\n\n        public void initTextinput(int maxLen, int inputMode)\n        {\n            if (m_inputFlag == 0)\n            {\n                // kEditBoxInputFlagPassword      \n                PasswordBox pwdBox = new PasswordBox();\n                pwdBox.MaxLength = maxLen < 0 ? 0 : maxLen;\n                pwdBox.Password = m_strText;\n                pwdBox.GotFocus += pwdBox_GotFocus;\n                m_textinput = pwdBox;\n            } \n            else\n            {                \n                TextBox textbox = new TextBox();\n                textbox.MaxLength = maxLen < 0 ? 0 : maxLen;\n                SetInputScope(textbox, inputMode);\n                textbox.TextChanged += textinput_TextChanged;\n                textbox.GotFocus += textinput_GotFocus;\n                textbox.LostFocus += textinput_LostFocus;\n                m_textinput = textbox;\n            }\n            m_textinput.Margin = new System.Windows.Thickness(0, 0, 220, 0);\n            m_textinput.Height = 72.0;\n            m_textinput.TabIndex = 0;\n            m_textinput.VerticalAlignment = VerticalAlignment.Top;\n            m_textinput.KeyDown += OnKeyDownHandler;                        \n            this.LayoutRoot.Children.Add(m_textinput);\n        }\n\n        void pwdBox_GotFocus(object sender, RoutedEventArgs e)\n        {\n            ((PasswordBox)m_textinput).SelectAll();\n        }\n\n        public EditBox(MainPage  page, String strPlaceholder, String strText, int maxLen, int inputMode, int inputFlag)\n        {\n            m_mainPage = page;\n            InitializeComponent();\n            m_strText = strText;\n            m_strPlaceholder = strPlaceholder;\n            m_inputFlag = inputFlag;\n            initTextinput(maxLen, inputMode);\n            this.Loaded += EditBox_Loaded;\n        }\n\n        void EditBox_Loaded(object sender, RoutedEventArgs e)\n        {\n            m_textinput.Focus();\n        }\n\n        void textinput_LostFocus(object sender, RoutedEventArgs e)\n        {\n            // TextBox.LostFocus\n            TextBox curBox = (TextBox)m_textinput;\n            bIsFocus = false;\n            m_strText = curBox.Text;\n            string strText = \"\";\n            strText = curBox.Text;\n            if (strText == \"\" && m_inputFlag != 0)\n            {\n                curBox.Text = m_strPlaceholder;\n            }                \n        }\n\n        void textinput_GotFocus(object sender, RoutedEventArgs e)\n        {\n            // TextBox.GotFocus\n            TextBox curBox = (TextBox)m_textinput;\n            bIsFocus = true;\n            curBox.Text = m_strText;\n            curBox.Select(curBox.Text.Length, 0);\n        }\n\n        private void OnKeyDownHandler(object sender, System.Windows.Input.KeyEventArgs e)\n        {\n            switch (e.Key)\n            {\n                case Key.Enter:\n                    Done_Click(sender, null);\n                    e.Handled = true;\n                    break;\n                default:\n                    break;\n            }\n        }\n\n        private void Done_Click(object sender, RoutedEventArgs e)\n        {\n            m_mainPage.OnSelectText(sender, m_inputFlag == 0 ? ((PasswordBox)m_textinput).Password : m_strText);\n            ((Grid)this.Parent).Children.Remove(this);\n        }\n\n        private void Cancel_Click(object sender, RoutedEventArgs e)\n        {\n            ((Grid)this.Parent).Children.Remove(this);\n        }\n\n        private void textinput_TextChanged(object sender, TextChangedEventArgs e)\n        {\n            // TextBox.textinput_TextChanged\n            if (bIsFocus)\n                m_strText = ((TextBox)m_textinput).Text;\n        }\n\n        private void SetInputScope(TextBox curBox, int inputMode)\n        {\n            // TextBox.SetInputScope\n            InputScope inputScope = new InputScope();\n            InputScopeName name = new InputScopeName();\n\n            switch (inputMode)\n            {\n                case 0:// kEditBoxInputModeAny\n                    name.NameValue = InputScopeNameValue.Default;\n                    break;\n                case 1:// kEditBoxInputModeEmailAddr\n                    name.NameValue = InputScopeNameValue.EmailNameOrAddress;\n                    break;\n                case 2:// kEditBoxInputModeNumeric\n                    name.NameValue = InputScopeNameValue.Number;\n                    break;\n                case 3:// kEditBoxInputModePhoneNumber\n                    name.NameValue = InputScopeNameValue.TelephoneNumber;\n                    break;\n                case 4:// kEditBoxInputModeUrl\n                    name.NameValue = InputScopeNameValue.Url;\n                    break;\n                case 5:// kEditBoxInputModeDecimal\n                    name.NameValue = InputScopeNameValue.Digits;\n                    break;\n                case 6:// kEditBoxInputModeSingleLine\n                    name.NameValue = InputScopeNameValue.Default;\n                    break;\n                default:\n                    name.NameValue = InputScopeNameValue.Default;\n                    break;\n            }\n\n            inputScope.Names.Add(name);\n            curBox.InputScope = inputScope;\n        }\n    }\n}\n"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/proj.wp8-xaml/App/LocalizedStrings.cs",
    "content": "﻿using PhoneDirect3DXamlAppInterop.Resources;\n\nnamespace cocos2d\n{\n    /// <summary>\n    /// Provides access to string resources.\n    /// </summary>\n    public class LocalizedStrings\n    {\n        private static AppResources _localizedResources = new AppResources();\n\n        public AppResources LocalizedResources { get { return _localizedResources; } }\n    }\n}\n"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/proj.wp8-xaml/App/MainPage.xaml",
    "content": "﻿<phone:PhoneApplicationPage \n    x:Class=\"cocos2d.MainPage\"\n    xmlns=\"http://schemas.microsoft.com/winfx/2006/xaml/presentation\"\n    xmlns:x=\"http://schemas.microsoft.com/winfx/2006/xaml\"\n    xmlns:phone=\"clr-namespace:Microsoft.Phone.Controls;assembly=Microsoft.Phone\"\n    xmlns:shell=\"clr-namespace:Microsoft.Phone.Shell;assembly=Microsoft.Phone\"\n    xmlns:d=\"http://schemas.microsoft.com/expression/blend/2008\"\n    xmlns:mc=\"http://schemas.openxmlformats.org/markup-compatibility/2006\"\n    mc:Ignorable=\"d\"\n    FontFamily=\"{StaticResource PhoneFontFamilyNormal}\"\n    FontSize=\"{StaticResource PhoneFontSizeNormal}\"\n    Foreground=\"{StaticResource PhoneForegroundBrush}\"\n    SupportedOrientations=\"landscape\" Orientation=\"landscape\"\n    shell:SystemTray.IsVisible=\"False\">\n\n    <!--LayoutRoot is the root grid where all page content is placed-->\n    <DrawingSurfaceBackgroundGrid x:Name=\"DrawingSurfaceBackground\" Loaded=\"DrawingSurfaceBackground_Loaded\">\n        <StackPanel Orientation=\"Horizontal\" Margin=\"10,0,0,0\" Height=\"30\" VerticalAlignment=\"Top\" x:Name=\"MemoryDisplay\">\n            <TextBlock Text=\"Memory: \"/>\n            <TextBlock x:Name=\"MemoryTextBlock\"/>\n            <TextBlock Text=\" MB\"/>\n            <TextBlock Text=\"  Peak: \"/>\n            <TextBlock x:Name=\"PeakMemoryTextBlock\"/>\n            <TextBlock Text=\" MB\"/>\n        </StackPanel>\n    </DrawingSurfaceBackgroundGrid>\n\n</phone:PhoneApplicationPage>"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/proj.wp8-xaml/App/MainPage.xaml.cs",
    "content": "﻿#if DEBUG\n#define DISPLAY_MEMORY\n#endif\n\nusing System;\nusing System.ComponentModel;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Net;\nusing System.Windows;\nusing System.Windows.Controls;\nusing System.Windows.Navigation;\nusing System.Windows.Documents;\nusing System.Windows.Input;\nusing System.Windows.Media;\nusing System.Windows.Media.Animation;\nusing System.Windows.Shapes;\nusing Microsoft.Phone.Controls;\nusing System.Threading;\nusing System.Diagnostics;\nusing System.Threading.Tasks;\nusing Microsoft.Phone.Shell;\nusing Windows.UI.Input;\nusing System.Windows.Threading;\nusing Microsoft.Phone.Info;\nusing Windows.Graphics.Display;\nusing Microsoft.Phone.Tasks;\n\nnamespace cocos2d\n{\n    public partial class MainPage : PhoneApplicationPage\n    {\n        private Direct3DInterop m_d3dInterop = null;\n        private DispatcherTimer m_timer;\n\n        // event handler for CCEditBox\n        private event EventHandler<String> m_receiveHandler;\n\n        // invisible XAML TextBox for Cocos2d-x keyboard input\n        TextBox m_textBox = null;\n\n        // Constructor\n        public MainPage()\n        {\n            InitializeComponent();\n#if DISPLAY_MEMORY\n            StartTimer();\n#else\n            MemoryDisplay.Visibility = Visibility.Collapsed;\n#endif\n        }\n\n        override protected void OnOrientationChanged(OrientationChangedEventArgs args)\n        {\n            base.OnOrientationChanged(args);\n            if (m_d3dInterop != null)\n            {\n                DisplayOrientations orientation = ConvertToNativeOrientation(args.Orientation);\n                m_d3dInterop.OnOrientationChanged(orientation);\n            }\n        }\n\n        private static DisplayOrientations ConvertToNativeOrientation(PageOrientation xamlOrientation)\n        {\n            switch (xamlOrientation)\n            {\n                case PageOrientation.Portrait:\n                case PageOrientation.PortraitUp:\n                    return DisplayOrientations.Portrait;\n                case PageOrientation.PortraitDown:\n                    return DisplayOrientations.PortraitFlipped;\n                case PageOrientation.Landscape:\n                case PageOrientation.LandscapeLeft:\n                    return DisplayOrientations.Landscape;\n                case PageOrientation.LandscapeRight:\n                    return DisplayOrientations.LandscapeFlipped;\n                default:\n                    return DisplayOrientations.Landscape;\n            }\n        }\n\n        private void DrawingSurfaceBackground_Loaded(object sender, RoutedEventArgs e)\n        {\n            if (m_d3dInterop == null)\n            {\n                PageOrientation pageOrientation = (PageOrientation)GetValue(OrientationProperty);\n                DisplayOrientations displayOrientation = ConvertToNativeOrientation(pageOrientation);\n\n                m_d3dInterop = new Direct3DInterop(displayOrientation);\n\n                // Set WindowBounds to size of DrawingSurface\n                m_d3dInterop.WindowBounds = new Windows.Foundation.Size(\n                    (float)Application.Current.Host.Content.ActualWidth,\n                    (float)Application.Current.Host.Content.ActualHeight\n                    );\n\n                // Hook-up native component to DrawingSurfaceBackgroundGrid\n                DrawingSurfaceBackground.SetBackgroundContentProvider(m_d3dInterop.CreateContentProvider());\n                DrawingSurfaceBackground.SetBackgroundManipulationHandler(m_d3dInterop);\n\n                // Hook-up Cocos2d-x delegates\n                m_d3dInterop.SetCocos2dEventDelegate(OnCocos2dEvent);\n                m_d3dInterop.SetCocos2dMessageBoxDelegate(OnCocos2dMessageBoxEvent);\n                m_d3dInterop.SetCocos2dEditBoxDelegate(OpenEditBox);\n                m_d3dInterop.SetCocos2dOpenURLDelegate(OpenURL);\n            }\n        }\n\n        // called when the user presses the back button on the device\n        protected override void OnBackKeyPress(CancelEventArgs e)\n        {\n            m_d3dInterop.OnBackKeyPress();\n            // cocos2d-x will async send Cocos2dEvent.TerminateApp event if it is time to exit app.\n            // We do not want to exit now, so we set e.Cancel to true.\n            e.Cancel = true;\n        }\n\n        public void OnKeyDown(object sender, KeyEventArgs e)\n        {\n            ModifierKeys modifiers = Keyboard.Modifiers;\n\n            switch (e.Key)\n            {\n                case Key.Escape:\n                    m_d3dInterop.OnCocos2dKeyEvent(Cocos2dKeyEvent.Escape);\n                    e.Handled = true;\n                    break;\n                case Key.Back:\n                    m_d3dInterop.OnCocos2dKeyEvent(Cocos2dKeyEvent.Back);\n                    e.Handled = true;\n                    break;\n                case Key.Enter:\n                    m_d3dInterop.OnCocos2dKeyEvent(Cocos2dKeyEvent.Enter);\n                    e.Handled = true;\n                    break;\n                default:\n                    break;\n            }\n        }\n\n        public void OnKeyUp(object sender, KeyEventArgs e)\n        {\n        }\n\n        public void OnTextChanged(object sender, TextChangedEventArgs e)\n        {\n            if (m_textBox.Text.Length > 0)\n            {\n                m_d3dInterop.OnCocos2dKeyEvent(Cocos2dKeyEvent.Text, m_textBox.Text);\n                m_textBox.Text = \"\";\n            }\n        }\n\n        // Called by the Cocos2d-x C++ engine to display a MessageBox\n        public void OnCocos2dMessageBoxEvent(String title, String text)\n        {\n            Dispatcher.BeginInvoke(() =>\n            {\n                MessageBox.Show(text, title, MessageBoxButton.OK);\n            });\n        }\n\n        // events called by the Cocos2d-x C++ engine to be handled by C#\n        public void OnCocos2dEvent(Cocos2dEvent theEvent, String text)\n        {\n            Dispatcher.BeginInvoke(() =>\n            {\n                switch (theEvent)\n                {\n                    case Cocos2dEvent.TerminateApp:\n                        Application.Current.Terminate();\n                        break;\n\n                    case Cocos2dEvent.ShowKeyboard:\n                        if (m_textBox == null)\n                        {\n                            m_textBox = new TextBox();\n                            m_textBox.Opacity = 0.0;\n                            m_textBox.Width = 1;\n                            m_textBox.Height = 1;\n                            m_textBox.KeyDown += OnKeyDown;\n                            m_textBox.TextChanged += OnTextChanged;\n                            DrawingSurfaceBackground.Children.Add(m_textBox);\n                        }\n                        m_textBox.SelectionLength = 0;\n                        m_textBox.SelectionStart = int.MaxValue;\n                        m_textBox.Focus();\n                        break;\n\n                    case Cocos2dEvent.HideKeyboard:\n                        if (m_textBox != null)\n                        {\n                            DrawingSurfaceBackground.Children.Remove(m_textBox);\n                        }\n                        m_textBox = null;\n                        break;\n                }\n            });\n        }\n\n        // Called by the Cocos2d-x C++ engine to display a CCEditBox\n        public void OpenEditBox(String strPlaceHolder, string strText, int maxLength, int inputMode, int inputFlag, EventHandler<String> receiveHandler)\n        {\n            m_receiveHandler = receiveHandler;\n            Deployment.Current.Dispatcher.BeginInvoke(() =>\n            {\n                EditBox editbox = new EditBox(this, strPlaceHolder, strText, maxLength, inputMode, inputFlag);\n                DrawingSurfaceBackground.Children.Add(editbox);\n            });\n        }\n\n        public void OnSelectText(object sender, String str)\n        {\n            if (m_d3dInterop != null && m_receiveHandler != null)\n            {\n                m_d3dInterop.OnCocos2dEditboxEvent(sender, str, m_receiveHandler);\n            }\n        }\n\n        public void OpenURL(String url)\n        {\n            WebBrowserTask webBrowserTask = new WebBrowserTask();\n            webBrowserTask.Uri = new Uri(url, UriKind.Absolute);\n            webBrowserTask.Show();\n        }\n\n        private void StartTimer()\n        {\n            m_timer = new DispatcherTimer();\n            m_timer.Interval = new TimeSpan(0, 0, 1);\n            m_timer.Tick += new EventHandler(TimerTick);\n            m_timer.Start();\n        }\n\n        private void TimerTick(object sender, EventArgs e)\n        {\n            try\n            {\n                // These are TextBlock controls that are created in the page’s XAML file.  \n                float value = DeviceStatus.ApplicationCurrentMemoryUsage / (1024.0f * 1024.0f);\n                MemoryTextBlock.Text = value.ToString();\n                value = DeviceStatus.ApplicationPeakMemoryUsage / (1024.0f * 1024.0f);\n                PeakMemoryTextBlock.Text = value.ToString();\n            }\n            catch (Exception ex)\n            {\n                MemoryTextBlock.Text = ex.Message;\n            }\n        }\n    }\n}"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/proj.wp8-xaml/App/Properties/AppManifest.xml",
    "content": "﻿<Deployment xmlns=\"http://schemas.microsoft.com/client/2007/deployment\"\n        xmlns:x=\"http://schemas.microsoft.com/winfx/2006/xaml\"\n>\n    <Deployment.Parts>\n    </Deployment.Parts>\n</Deployment>\n"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/proj.wp8-xaml/App/Properties/AssemblyInfo.cs",
    "content": "﻿using System.Reflection;\nusing System.Runtime.CompilerServices;\nusing System.Runtime.InteropServices;\nusing System.Resources;\n\n// General Information about an assembly is controlled through the following \n// set of attributes. Change these attribute values to modify the information\n// associated with an assembly.\n[assembly: AssemblyTitle(\"PhoneDirect3DXamlAppInterop\")]\n[assembly: AssemblyDescription(\"\")]\n[assembly: AssemblyConfiguration(\"\")]\n[assembly: AssemblyCompany(\"\")]\n[assembly: AssemblyProduct(\"PhoneDirect3DXamlAppInterop\")]\n[assembly: AssemblyCopyright(\"Copyright ©  2012\")]\n[assembly: AssemblyTrademark(\"\")]\n[assembly: AssemblyCulture(\"\")]\n\n// Setting ComVisible to false makes the types in this assembly not visible \n// to COM components.  If you need to access a type in this assembly from \n// COM, set the ComVisible attribute to true on that type.\n[assembly: ComVisible(false)]\n\n// The following GUID is for the ID of the typelib if this project is exposed to COM\n[assembly: Guid(\"e9152507-1b95-4fca-9d7f-444a024ccb98\")]\n\n// Version information for an assembly consists of the following four values:\n//\n//      Major Version\n//      Minor Version \n//      Build Number\n//      Revision\n//\n// You can specify all the values or you can default the Revision and Build Numbers \n// by using the '*' as shown below:\n[assembly: AssemblyVersion(\"1.0.0.0\")]\n[assembly: AssemblyFileVersion(\"1.0.0.0\")]\n[assembly: NeutralResourcesLanguageAttribute(\"en-US\")]\n"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/proj.wp8-xaml/App/Properties/WMAppManifest.xml",
    "content": "﻿<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<Deployment xmlns=\"http://schemas.microsoft.com/windowsphone/2012/deployment\" AppPlatformVersion=\"8.0\">\n  <DefaultLanguage xmlns=\"\" code=\"en-US\" />\n  <App xmlns=\"\" ProductID=\"{83cc88fe-7e79-4e1e-a129-742987130b5c}\" Title=\"mir9\" RuntimeType=\"Silverlight\" Version=\"1.0.0.0\" Genre=\"apps.normal\"  Author=\"PhoneDirect3DXamlAppInterop author\" Description=\"Sample description\" Publisher=\"PhoneDirect3DXamlAppInterop\" PublisherID=\"{ebf6c0e1-80a3-41f1-8553-4aaab70da912}\">\n    <IconPath IsRelative=\"true\" IsResource=\"false\">Assets\\ApplicationIcon.png</IconPath>\n    <Capabilities>\n      <Capability Name=\"ID_CAP_NETWORKING\"/>\n      <Capability Name=\"ID_CAP_MEDIALIB_AUDIO\"/>\n      <Capability Name=\"ID_CAP_MEDIALIB_PLAYBACK\"/>\n      <Capability Name=\"ID_CAP_SENSORS\"/>\n      <Capability Name=\"ID_CAP_WEBBROWSERCOMPONENT\"/>\n    </Capabilities>\n    <Tasks>\n      <DefaultTask Name=\"_default\" NavigationPage=\"MainPage.xaml\" ActivationPolicy=\"Resume\"/>\n    </Tasks>\n    <Tokens>\n      <PrimaryToken TokenID=\"PhoneDirect3DXamlAppInteropToken\" TaskName=\"_default\">\n        <TemplateFlip>\n          <SmallImageURI IsRelative=\"true\" IsResource=\"false\">Assets\\Tiles\\FlipCycleTileSmall.png</SmallImageURI>\n          <Count>0</Count>\n          <BackgroundImageURI IsRelative=\"true\" IsResource=\"false\">Assets\\Tiles\\FlipCycleTileMedium.png</BackgroundImageURI>\n          <Title>PhoneDirect3DXamlAppInterop</Title>\n          <BackContent></BackContent>\n          <BackBackgroundImageURI></BackBackgroundImageURI>\n          <BackTitle></BackTitle>\n          <DeviceLockImageURI></DeviceLockImageURI>\n          <HasLarge></HasLarge>\n        </TemplateFlip>\n      </PrimaryToken>\n    </Tokens>\n    <ScreenResolutions>\n      <ScreenResolution Name=\"ID_RESOLUTION_WVGA\" />\n      <ScreenResolution Name=\"ID_RESOLUTION_WXGA\" />\n      <ScreenResolution Name=\"ID_RESOLUTION_HD720P\" />\n    </ScreenResolutions>\n  </App>\n</Deployment>\n"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/proj.wp8-xaml/App/Resources/AppResources.Designer.cs",
    "content": "﻿//------------------------------------------------------------------------------\n// <auto-generated>\n//     This code was generated by a tool.\n//     Runtime Version:4.0.30319.34014\n//\n//     Changes to this file may cause incorrect behavior and will be lost if\n//     the code is regenerated.\n// </auto-generated>\n//------------------------------------------------------------------------------\n\nnamespace PhoneDirect3DXamlAppInterop.Resources {\n    using System;\n    \n    \n    /// <summary>\n    ///   A strongly-typed resource class, for looking up localized strings, etc.\n    /// </summary>\n    // This class was auto-generated by the StronglyTypedResourceBuilder\n    // class via a tool like ResGen or Visual Studio.\n    // To add or remove a member, edit your .ResX file then rerun ResGen\n    // with the /str option, or rebuild your VS project.\n    [global::System.CodeDom.Compiler.GeneratedCodeAttribute(\"System.Resources.Tools.StronglyTypedResourceBuilder\", \"4.0.0.0\")]\n    [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]\n    [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]\n    public class AppResources {\n        \n        private static global::System.Resources.ResourceManager resourceMan;\n        \n        private static global::System.Globalization.CultureInfo resourceCulture;\n        \n        [global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute(\"Microsoft.Performance\", \"CA1811:AvoidUncalledPrivateCode\")]\n        internal AppResources() {\n        }\n        \n        /// <summary>\n        ///   Returns the cached ResourceManager instance used by this class.\n        /// </summary>\n        [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]\n        public static global::System.Resources.ResourceManager ResourceManager {\n            get {\n                if (object.ReferenceEquals(resourceMan, null)) {\n                    global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager(\"PhoneDirect3DXamlAppInterop.Resources.AppResources\", typeof(AppResources).Assembly);\n                    resourceMan = temp;\n                }\n                return resourceMan;\n            }\n        }\n        \n        /// <summary>\n        ///   Overrides the current thread's CurrentUICulture property for all\n        ///   resource lookups using this strongly typed resource class.\n        /// </summary>\n        [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]\n        public static global::System.Globalization.CultureInfo Culture {\n            get {\n                return resourceCulture;\n            }\n            set {\n                resourceCulture = value;\n            }\n        }\n        \n        /// <summary>\n        ///   Looks up a localized string similar to MY APPLICATION.\n        /// </summary>\n        public static string ApplicationTitle {\n            get {\n                return ResourceManager.GetString(\"ApplicationTitle\", resourceCulture);\n            }\n        }\n        \n        /// <summary>\n        ///   Looks up a localized string similar to LeftToRight.\n        /// </summary>\n        public static string ResourceFlowDirection {\n            get {\n                return ResourceManager.GetString(\"ResourceFlowDirection\", resourceCulture);\n            }\n        }\n        \n        /// <summary>\n        ///   Looks up a localized string similar to en-US.\n        /// </summary>\n        public static string ResourceLanguage {\n            get {\n                return ResourceManager.GetString(\"ResourceLanguage\", resourceCulture);\n            }\n        }\n    }\n}\n"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/proj.wp8-xaml/App/Resources/AppResources.resx",
    "content": "﻿<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<root>\n  <!-- \n    Microsoft ResX Schema \n    \n    Version 2.0\n    \n    The primary goals of this format is to allow a simple XML format \n    that is mostly human readable. The generation and parsing of the \n    various data types are done through the TypeConverter classes \n    associated with the data types.\n    \n    Example:\n    \n    ... ado.net/XML headers & schema ...\n    <resheader name=\"resmimetype\">text/microsoft-resx</resheader>\n    <resheader name=\"version\">2.0</resheader>\n    <resheader name=\"reader\">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>\n    <resheader name=\"writer\">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>\n    <data name=\"Name1\"><value>this is my long string</value><comment>this is a comment</comment></data>\n    <data name=\"Color1\" type=\"System.Drawing.Color, System.Drawing\">Blue</data>\n    <data name=\"Bitmap1\" mimetype=\"application/x-microsoft.net.object.binary.base64\">\n        <value>[base64 mime encoded serialized .NET Framework object]</value>\n    </data>\n    <data name=\"Icon1\" type=\"System.Drawing.Icon, System.Drawing\" mimetype=\"application/x-microsoft.net.object.bytearray.base64\">\n        <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>\n        <comment>This is a comment</comment>\n    </data>\n                \n    There are any number of \"resheader\" rows that contain simple \n    name/value pairs.\n    \n    Each data row contains a name, and value. The row also contains a \n    type or mimetype. Type corresponds to a .NET class that support \n    text/value conversion through the TypeConverter architecture. \n    Classes that don't support this are serialized and stored with the \n    mimetype set.\n    \n    The mimetype is used for serialized objects, and tells the \n    ResXResourceReader how to depersist the object. This is currently not \n    extensible. For a given mimetype the value must be set accordingly:\n    \n    Note - application/x-microsoft.net.object.binary.base64 is the format \n    that the ResXResourceWriter will generate, however the reader can \n    read any of the formats listed below.\n    \n    mimetype: application/x-microsoft.net.object.binary.base64\n    value   : The object must be serialized with \n            : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter\n            : and then encoded with base64 encoding.\n    \n    mimetype: application/x-microsoft.net.object.soap.base64\n    value   : The object must be serialized with \n            : System.Runtime.Serialization.Formatters.Soap.SoapFormatter\n            : and then encoded with base64 encoding.\n\n    mimetype: application/x-microsoft.net.object.bytearray.base64\n    value   : The object must be serialized into a byte array \n            : using a System.ComponentModel.TypeConverter\n            : and then encoded with base64 encoding.\n    -->\n  <xsd:schema id=\"root\" xmlns=\"\" xmlns:xsd=\"http://www.w3.org/2001/XMLSchema\" xmlns:msdata=\"urn:schemas-microsoft-com:xml-msdata\">\n    <xsd:import namespace=\"http://www.w3.org/XML/1998/namespace\" />\n    <xsd:element name=\"root\" msdata:IsDataSet=\"true\">\n      <xsd:complexType>\n        <xsd:choice maxOccurs=\"unbounded\">\n          <xsd:element name=\"metadata\">\n            <xsd:complexType>\n              <xsd:sequence>\n                <xsd:element name=\"value\" type=\"xsd:string\" minOccurs=\"0\" />\n              </xsd:sequence>\n              <xsd:attribute name=\"name\" use=\"required\" type=\"xsd:string\" />\n              <xsd:attribute name=\"type\" type=\"xsd:string\" />\n              <xsd:attribute name=\"mimetype\" type=\"xsd:string\" />\n              <xsd:attribute ref=\"xml:space\" />\n            </xsd:complexType>\n          </xsd:element>\n          <xsd:element name=\"assembly\">\n            <xsd:complexType>\n              <xsd:attribute name=\"alias\" type=\"xsd:string\" />\n              <xsd:attribute name=\"name\" type=\"xsd:string\" />\n            </xsd:complexType>\n          </xsd:element>\n          <xsd:element name=\"data\">\n            <xsd:complexType>\n              <xsd:sequence>\n                <xsd:element name=\"value\" type=\"xsd:string\" minOccurs=\"0\" msdata:Ordinal=\"1\" />\n                <xsd:element name=\"comment\" type=\"xsd:string\" minOccurs=\"0\" msdata:Ordinal=\"2\" />\n              </xsd:sequence>\n              <xsd:attribute name=\"name\" type=\"xsd:string\" use=\"required\" msdata:Ordinal=\"1\" />\n              <xsd:attribute name=\"type\" type=\"xsd:string\" msdata:Ordinal=\"3\" />\n              <xsd:attribute name=\"mimetype\" type=\"xsd:string\" msdata:Ordinal=\"4\" />\n              <xsd:attribute ref=\"xml:space\" />\n            </xsd:complexType>\n          </xsd:element>\n          <xsd:element name=\"resheader\">\n            <xsd:complexType>\n              <xsd:sequence>\n                <xsd:element name=\"value\" type=\"xsd:string\" minOccurs=\"0\" msdata:Ordinal=\"1\" />\n              </xsd:sequence>\n              <xsd:attribute name=\"name\" type=\"xsd:string\" use=\"required\" />\n            </xsd:complexType>\n          </xsd:element>\n        </xsd:choice>\n      </xsd:complexType>\n    </xsd:element>\n  </xsd:schema>\n  <resheader name=\"resmimetype\">\n    <value>text/microsoft-resx</value>\n  </resheader>\n  <resheader name=\"version\">\n    <value>2.0</value>\n  </resheader>\n  <resheader name=\"reader\">\n    <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>\n  </resheader>\n  <resheader name=\"writer\">\n    <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>\n  </resheader>\n  <data name=\"ApplicationTitle\" xml:space=\"preserve\">\n    <value>MY APPLICATION</value>\n  </data>\n  <data name=\"ResourceFlowDirection\" xml:space=\"preserve\">\n    <value>LeftToRight</value>\n    <comment>Controls the FlowDirection for all elements in the RootFrame. Set to the traditional direction of this resource file's language</comment>\n  </data>\n  <data name=\"ResourceLanguage\" xml:space=\"preserve\">\n    <value>en-US</value>\n    <comment>Controls the Language and ensures that the font for all elements in the RootFrame aligns with the app's language. Set to the language code of this resource file's language.</comment>\n  </data>\n</root>"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/proj.wp8-xaml/App/mir9.csproj",
    "content": "﻿<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<Project ToolsVersion=\"4.0\" DefaultTargets=\"Build\" xmlns=\"http://schemas.microsoft.com/developer/msbuild/2003\">\n  <PropertyGroup>\n    <Configuration Condition=\" '$(Configuration)' == '' \">Debug</Configuration>\n    <Platform Condition=\" '$(Platform)' == '' \">AnyCPU</Platform>\n    <ProductVersion>10.0.20506</ProductVersion>\n    <SchemaVersion>2.0</SchemaVersion>\n    <ProjectGuid>{83CC88FE-7E79-4E1E-A129-742987130B5C}</ProjectGuid>\n    <ProjectTypeGuids>{C089C8C0-30E0-4E22-80C0-CE093F111A43};{fae04ec0-301f-11d3-bf4b-00c04f79efbc}</ProjectTypeGuids>\n    <OutputType>Library</OutputType>\n    <AppDesignerFolder>Properties</AppDesignerFolder>\n    <RootNamespace>PhoneDirect3DXamlAppInterop</RootNamespace>\n    <AssemblyName>PhoneDirect3DXamlAppInterop</AssemblyName>\n    <TargetFrameworkIdentifier>WindowsPhone</TargetFrameworkIdentifier>\n    <TargetFrameworkVersion>v8.0</TargetFrameworkVersion>\n    <SilverlightVersion>$(TargetFrameworkVersion)</SilverlightVersion>\n    <SilverlightApplication>true</SilverlightApplication>\n    <SupportedCultures>\n    </SupportedCultures>\n    <XapOutputs>true</XapOutputs>\n    <GenerateSilverlightManifest>true</GenerateSilverlightManifest>\n    <XapFilename>PhoneDirect3DXamlAppInterop_$(Configuration)_$(Platform).xap</XapFilename>\n    <SilverlightManifestTemplate>Properties\\AppManifest.xml</SilverlightManifestTemplate>\n    <SilverlightAppEntry>cocos2d.App</SilverlightAppEntry>\n    <ValidateXaml>true</ValidateXaml>\n    <MinimumVisualStudioVersion>11.0</MinimumVisualStudioVersion>\n    <ThrowErrorsInValidation>true</ThrowErrorsInValidation>\n  </PropertyGroup>\n  <PropertyGroup Condition=\" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' \">\n    <DebugSymbols>true</DebugSymbols>\n    <DebugType>full</DebugType>\n    <Optimize>false</Optimize>\n    <OutputPath>Bin\\Debug</OutputPath>\n    <DefineConstants>DEBUG;TRACE;SILVERLIGHT;WINDOWS_PHONE</DefineConstants>\n    <NoStdLib>true</NoStdLib>\n    <NoConfig>true</NoConfig>\n    <ErrorReport>prompt</ErrorReport>\n    <WarningLevel>4</WarningLevel>\n  </PropertyGroup>\n  <PropertyGroup Condition=\" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' \">\n    <DebugType>pdbonly</DebugType>\n    <Optimize>true</Optimize>\n    <OutputPath>Bin\\Release</OutputPath>\n    <DefineConstants>TRACE;SILVERLIGHT;WINDOWS_PHONE</DefineConstants>\n    <NoStdLib>true</NoStdLib>\n    <NoConfig>true</NoConfig>\n    <ErrorReport>prompt</ErrorReport>\n    <WarningLevel>4</WarningLevel>\n  </PropertyGroup>\n  <PropertyGroup Condition=\" '$(Configuration)|$(Platform)' == 'Debug|x86' \">\n    <DebugSymbols>true</DebugSymbols>\n    <DebugType>full</DebugType>\n    <Optimize>false</Optimize>\n    <OutputPath>Bin\\x86\\Debug</OutputPath>\n    <DefineConstants>DEBUG;TRACE;SILVERLIGHT;WINDOWS_PHONE</DefineConstants>\n    <NoStdLib>true</NoStdLib>\n    <NoConfig>true</NoConfig>\n    <ErrorReport>prompt</ErrorReport>\n    <WarningLevel>4</WarningLevel>\n  </PropertyGroup>\n  <PropertyGroup Condition=\" '$(Configuration)|$(Platform)' == 'Release|x86' \">\n    <DebugType>pdbonly</DebugType>\n    <Optimize>true</Optimize>\n    <OutputPath>Bin\\x86\\Release</OutputPath>\n    <DefineConstants>TRACE;SILVERLIGHT;WINDOWS_PHONE</DefineConstants>\n    <NoStdLib>true</NoStdLib>\n    <NoConfig>true</NoConfig>\n    <ErrorReport>prompt</ErrorReport>\n    <WarningLevel>4</WarningLevel>\n  </PropertyGroup>\n  <PropertyGroup Condition=\" '$(Configuration)|$(Platform)' == 'Debug|ARM' \">\n    <DebugSymbols>true</DebugSymbols>\n    <DebugType>full</DebugType>\n    <Optimize>false</Optimize>\n    <OutputPath>Bin\\ARM\\Debug</OutputPath>\n    <DefineConstants>DEBUG;TRACE;SILVERLIGHT;WINDOWS_PHONE</DefineConstants>\n    <NoStdLib>true</NoStdLib>\n    <NoConfig>true</NoConfig>\n    <ErrorReport>prompt</ErrorReport>\n    <WarningLevel>4</WarningLevel>\n  </PropertyGroup>\n  <PropertyGroup Condition=\" '$(Configuration)|$(Platform)' == 'Release|ARM' \">\n    <DebugType>pdbonly</DebugType>\n    <Optimize>true</Optimize>\n    <OutputPath>Bin\\ARM\\Release</OutputPath>\n    <DefineConstants>TRACE;SILVERLIGHT;WINDOWS_PHONE</DefineConstants>\n    <NoStdLib>true</NoStdLib>\n    <NoConfig>true</NoConfig>\n    <ErrorReport>prompt</ErrorReport>\n    <WarningLevel>4</WarningLevel>\n  </PropertyGroup>\n  <ItemGroup>\n    <Compile Include=\"App.xaml.cs\" />\n    <Compile Include=\"EditBox.xaml.cs\" />\n    <Compile Include=\"LocalizedStrings.cs\" />\n    <Compile Include=\"MainPage.xaml.cs\" />\n    <Compile Include=\"Properties\\AssemblyInfo.cs\" />\n    <Compile Include=\"Resources\\AppResources.Designer.cs\">\n      <AutoGen>True</AutoGen>\n      <DesignTime>True</DesignTime>\n      <DependentUpon>AppResources.resx</DependentUpon>\n    </Compile>\n  </ItemGroup>\n  <ItemGroup>\n    <None Include=\"Properties\\AppManifest.xml\" />\n    <None Include=\"Properties\\WMAppManifest.xml\">\n      <SubType>Designer</SubType>\n    </None>\n  </ItemGroup>\n  <ItemGroup>\n    <Content Include=\"..\\..\\Resources\\**\\*\">\n      <Link>Assets\\Resources\\%(RecursiveDir)%(FileName)%(Extension)</Link>\n      <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>\n    </Content>\n  </ItemGroup>\n  <ItemGroup>\n    <Content Include=\"..\\..\\..\\..\\res\\**\\*\">\n      <Link>Assets\\Resources\\res\\%(RecursiveDir)%(FileName)%(Extension)</Link>\n      <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>\n    </Content>\n  </ItemGroup>\n  <ItemGroup>\n    <Content Include=\"..\\..\\..\\..\\src\\**\\*\">\n      <Link>Assets\\Resources\\src\\%(RecursiveDir)%(FileName)%(Extension)</Link>\n      <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>\n    </Content>\n  </ItemGroup>\n  <ItemGroup>\n    <Content Include=\"Assets\\AlignmentGrid.png\" />\n    <Content Include=\"Assets\\ApplicationIcon.png\">\n      <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>\n    </Content>\n    <Content Include=\"Assets\\Tiles\\FlipCycleTileLarge.png\">\n      <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>\n    </Content>\n    <Content Include=\"Assets\\Tiles\\FlipCycleTileMedium.png\">\n      <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>\n    </Content>\n    <Content Include=\"Assets\\Tiles\\FlipCycleTileSmall.png\">\n      <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>\n    </Content>\n    <Content Include=\"Assets\\Tiles\\IconicTileMediumLarge.png\">\n      <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>\n    </Content>\n    <Content Include=\"Assets\\Tiles\\IconicTileSmall.png\">\n      <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>\n    </Content>\n    <Content Include=\"SplashScreenImage.jpg\" />\n  </ItemGroup>\n  <ItemGroup>\n    <ProjectReference Include=\"..\\AppComponent\\mir9Component.vcxproj\">\n      <Name>mir9Component</Name>\n    </ProjectReference>\n  </ItemGroup>\n  <ItemGroup>\n    <EmbeddedResource Include=\"Resources\\AppResources.resx\">\n      <Generator>PublicResXFileCodeGenerator</Generator>\n      <LastGenOutput>AppResources.Designer.cs</LastGenOutput>\n    </EmbeddedResource>\n  </ItemGroup>\n  <ItemGroup>\n    <Page Include=\"App.xaml\">\n      <Generator>MSBuild:Compile</Generator>\n      <SubType>Designer</SubType>\n    </Page>\n    <Page Include=\"EditBox.xaml\">\n      <Generator>MSBuild:Compile</Generator>\n      <SubType>Designer</SubType>\n    </Page>\n    <Page Include=\"MainPage.xaml\">\n      <Generator>MSBuild:Compile</Generator>\n      <SubType>Designer</SubType>\n    </Page>\n  </ItemGroup>\n  <ItemGroup />\n  <Import Project=\"$(MSBuildExtensionsPath)\\Microsoft\\$(TargetFrameworkIdentifier)\\$(TargetFrameworkVersion)\\Microsoft.$(TargetFrameworkIdentifier).$(TargetFrameworkVersion).Overrides.targets\" />\n  <Import Project=\"$(MSBuildExtensionsPath)\\Microsoft\\$(TargetFrameworkIdentifier)\\$(TargetFrameworkVersion)\\Microsoft.$(TargetFrameworkIdentifier).CSharp.targets\" />\n  <!-- To modify your build process, add your task inside one of the targets below and uncomment it.\n       Other similar extension points exist, see Microsoft.Common.targets.\n  <Target Name=\"BeforeBuild\">\n  </Target>\n\n  <Target Name=\"AfterBuild\">\n  </Target>\n    -->\n  <ProjectExtensions />\n</Project>\n"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/proj.wp8-xaml/AppComponent/mir9Component.vcxproj",
    "content": "﻿<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<Project DefaultTargets=\"Build\" ToolsVersion=\"4.0\" xmlns=\"http://schemas.microsoft.com/developer/msbuild/2003\">\n  <ItemGroup Label=\"ProjectConfigurations\">\n    <ProjectConfiguration Include=\"Debug|Win32\">\n      <Configuration>Debug</Configuration>\n      <Platform>Win32</Platform>\n    </ProjectConfiguration>\n    <ProjectConfiguration Include=\"Debug|ARM\">\n      <Configuration>Debug</Configuration>\n      <Platform>ARM</Platform>\n    </ProjectConfiguration>\n    <ProjectConfiguration Include=\"Release|Win32\">\n      <Configuration>Release</Configuration>\n      <Platform>Win32</Platform>\n    </ProjectConfiguration>\n    <ProjectConfiguration Include=\"Release|ARM\">\n      <Configuration>Release</Configuration>\n      <Platform>ARM</Platform>\n    </ProjectConfiguration>\n  </ItemGroup>\n  <PropertyGroup Label=\"Globals\">\n    <ProjectGuid>{60ec6889-c3c4-45ad-a006-47d9ee689212}</ProjectGuid>\n    <RootNamespace>cocos2d</RootNamespace>\n    <DefaultLanguage>en-US</DefaultLanguage>\n    <MinimumVisualStudioVersion>11.0</MinimumVisualStudioVersion>\n    <WinMDAssembly>true</WinMDAssembly>\n  </PropertyGroup>\n  <Import Project=\"$(VCTargetsPath)\\Microsoft.Cpp.Default.props\" />\n  <PropertyGroup>\n    <!-- If OutDir was set outside of the project file, then we will append ProjectName -->\n    <OutDir Condition=\"'$(OutDirWasSpecified)' == 'true'\">$(OutDir)\\$(MSBuildProjectName)\\</OutDir>\n    <!-- else, OutDir needs to have project specific directory in order to handle files with unique names -->\n    <OutDir Condition=\"'$(OutDirWasSpecified)' != 'true' and '$(Platform)' == 'Win32'\">$(SolutionDir)$(Configuration)\\$(MSBuildProjectName)\\</OutDir>\n    <OutDir Condition=\"'$(OutDirWasSpecified)' != 'true' and '$(Platform)' != 'Win32'\">$(SolutionDir)$(Platform)\\$(Configuration)\\$(MSBuildProjectName)\\</OutDir>\n    <!-- After OutDir has been fixed, disable Microsoft.common.targets from fixing it again -->\n    <OutDirWasSpecified>false</OutDirWasSpecified>\n  </PropertyGroup>\n  <PropertyGroup Condition=\"'$(Configuration)|$(Platform)'=='Debug|Win32'\" Label=\"Configuration\">\n    <ConfigurationType>DynamicLibrary</ConfigurationType>\n    <UseDebugLibraries>true</UseDebugLibraries>\n    <PlatformToolset>v110_wp80</PlatformToolset>\n  </PropertyGroup>\n  <PropertyGroup Condition=\"'$(Configuration)|$(Platform)'=='Debug|ARM'\" Label=\"Configuration\">\n    <ConfigurationType>DynamicLibrary</ConfigurationType>\n    <UseDebugLibraries>true</UseDebugLibraries>\n    <PlatformToolset>v110_wp80</PlatformToolset>\n  </PropertyGroup>\n  <PropertyGroup Condition=\"'$(Configuration)|$(Platform)'=='Release|Win32'\" Label=\"Configuration\">\n    <ConfigurationType>DynamicLibrary</ConfigurationType>\n    <UseDebugLibraries>false</UseDebugLibraries>\n    <WholeProgramOptimization>true</WholeProgramOptimization>\n    <PlatformToolset>v110_wp80</PlatformToolset>\n  </PropertyGroup>\n  <PropertyGroup Condition=\"'$(Configuration)|$(Platform)'=='Release|ARM'\" Label=\"Configuration\">\n    <ConfigurationType>DynamicLibrary</ConfigurationType>\n    <UseDebugLibraries>false</UseDebugLibraries>\n    <WholeProgramOptimization>true</WholeProgramOptimization>\n    <PlatformToolset>v110_wp80</PlatformToolset>\n  </PropertyGroup>\n  <Import Project=\"$(VCTargetsPath)\\Microsoft.Cpp.props\" />\n  <ImportGroup Label=\"PropertySheets\">\n    <Import Project=\"$(UserRootDir)\\Microsoft.Cpp.$(Platform).user.props\" Condition=\"exists('$(UserRootDir)\\Microsoft.Cpp.$(Platform).user.props')\" Label=\"LocalAppDataPlatform\" />\n  </ImportGroup>\n  <ImportGroup Label=\"PropertySheets\" Condition=\"'$(Configuration)|$(Platform)'=='Debug|Win32'\">\n    <Import Project=\"$(QUICK_V3_ROOT)\\cocos\\2d\\wp8_props\\cocos2d_wp8.props\" />\n    <Import Project=\"$(QUICK_V3_ROOT)\\cocos\\2d\\wp8_props\\cocos2d_wp8_app.props\" />\n    <Import Project=\"$(QUICK_V3_ROOT)\\cocos\\2d\\wp8_props\\cocos2d_wp8_component.props\" />\n  </ImportGroup>\n  <ImportGroup Label=\"PropertySheets)\" Condition=\"'$(Configuration)|$(Platform)'=='Debug|ARM'\">\n    <Import Project=\"$(QUICK_V3_ROOT)\\cocos\\2d\\wp8_props\\cocos2d_wp8.props\" />\n    <Import Project=\"$(QUICK_V3_ROOT)\\cocos\\2d\\wp8_props\\cocos2d_wp8_app.props\" />\n    <Import Project=\"$(QUICK_V3_ROOT)\\cocos\\2d\\wp8_props\\cocos2d_wp8_component.props\" />\n  </ImportGroup>\n  <ImportGroup Label=\"PropertySheets\" Condition=\"'$(Configuration)|$(Platform)'=='Release|Win32'\">\n    <Import Project=\"$(QUICK_V3_ROOT)\\cocos\\2d\\wp8_props\\cocos2d_wp8.props\" />\n    <Import Project=\"$(QUICK_V3_ROOT)\\cocos\\2d\\wp8_props\\cocos2d_wp8_app.props\" />\n    <Import Project=\"$(QUICK_V3_ROOT)\\cocos\\2d\\wp8_props\\cocos2d_wp8_component.props\" />\n  </ImportGroup>\n  <ImportGroup Label=\"PropertySheets\" Condition=\"'$(Configuration)|$(Platform)'=='Release|ARM'\">\n    <Import Project=\"$(QUICK_V3_ROOT)\\cocos\\2d\\wp8_props\\cocos2d_wp8.props\" />\n    <Import Project=\"$(QUICK_V3_ROOT)\\cocos\\2d\\wp8_props\\cocos2d_wp8_app.props\" />\n    <Import Project=\"$(QUICK_V3_ROOT)\\cocos\\2d\\wp8_props\\cocos2d_wp8_component.props\" />\n  </ImportGroup>\n  <PropertyGroup Label=\"UserMacros\" />\n  <PropertyGroup>\n    <GenerateManifest>false</GenerateManifest>\n  </PropertyGroup>\n  <ItemDefinitionGroup Condition=\"'$(Configuration)|$(Platform)'=='Debug|Win32'\">\n    <ClCompile>\n      <PreprocessorDefinitions>CC_ENABLE_CHIPMUNK_INTEGRATION=1;CC_LUA_ENGINE_ENABLED=1;COCOS2D_DEBUG=1;__STRICT_ANSI__;SQLITE_OS_WINRT;SQLITE_OMIT_WAL;%(PreprocessorDefinitions)</PreprocessorDefinitions>\n      <PrecompiledHeader>Use</PrecompiledHeader>\n      <PrecompiledHeaderFile>pch.h</PrecompiledHeaderFile>\n      <AdditionalUsingDirectories>$(WindowsSDK_MetadataPath);$(AdditionalUsingDirectories)</AdditionalUsingDirectories>\n      <CompileAsWinRT>true</CompileAsWinRT>\n      <ForcedIncludeFiles>pch.h</ForcedIncludeFiles>\n      <AdditionalOptions>/Zm200 %(AdditionalOptions)</AdditionalOptions>\n      <AdditionalIncludeDirectories>$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra;$(QUICK_V3_ROOT)\\quick\\lib\\quick-src;$(ProjectDir)..\\..\\Classes;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\n      <DisableSpecificWarnings>4049;4273;4056;4996;4244;4251;4068;4267;%(DisableSpecificWarnings)</DisableSpecificWarnings>\n      <WarningLevel>Level1</WarningLevel>\n      <SDLCheck />\n    </ClCompile>\n    <Link>\n      <SubSystem>Console</SubSystem>\n      <IgnoreAllDefaultLibraries>false</IgnoreAllDefaultLibraries>\n      <AdditionalDependencies>d3d11.lib;libGLESv2_phone.lib;libEGL_phone.lib;xaudio2.lib;libwebsockets.lib;libcurl.lib;%(AdditionalDependencies)</AdditionalDependencies>\n      <IgnoreSpecificDefaultLibraries>ole32.lib;%(IgnoreSpecificDefaultLibraries)</IgnoreSpecificDefaultLibraries>\n      <GenerateWindowsMetadata>true</GenerateWindowsMetadata>\n      <AdditionalLibraryDirectories>$(EngineRoot)external\\wp8-specific\\angle\\prebuilt\\$(Platform);$(EngineRoot)\\external\\curl\\prebuilt\\wp8\\$(Platform);$(EngineRoot)external\\websockets\\prebuilt\\wp8\\$(Platform);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\n    </Link>\n  </ItemDefinitionGroup>\n  <ItemDefinitionGroup Condition=\"'$(Configuration)|$(Platform)'=='Release|Win32'\">\n    <ClCompile>\n      <PreprocessorDefinitions>CC_ENABLE_CHIPMUNK_INTEGRATION=1;NDEBUG;CC_LUA_ENGINE_ENABLED=1;SQLITE_OS_WINRT;SQLITE_OMIT_WAL;%(PreprocessorDefinitions)</PreprocessorDefinitions>\n      <PrecompiledHeader>Use</PrecompiledHeader>\n      <PrecompiledHeaderFile>pch.h</PrecompiledHeaderFile>\n      <AdditionalUsingDirectories>$(WindowsSDK_MetadataPath);$(AdditionalUsingDirectories)</AdditionalUsingDirectories>\n      <CompileAsWinRT>true</CompileAsWinRT>\n      <ForcedIncludeFiles>pch.h</ForcedIncludeFiles>\n      <AdditionalOptions>/Zm200 %(AdditionalOptions)</AdditionalOptions>\n      <AdditionalIncludeDirectories>$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra;$(QUICK_V3_ROOT)\\quick\\lib\\quick-src;$(ProjectDir)..\\..\\Classes;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\n      <SDLCheck />\n      <DisableSpecificWarnings>4049;4273;4056;4996;4244;4251;4068;4267;%(DisableSpecificWarnings)</DisableSpecificWarnings>\n    </ClCompile>\n    <Link>\n      <SubSystem>Console</SubSystem>\n      <IgnoreAllDefaultLibraries>false</IgnoreAllDefaultLibraries>\n      <AdditionalDependencies>d3d11.lib;libGLESv2_phone.lib;libEGL_phone.lib;xaudio2.lib;libwebsockets.lib;libcurl.lib;%(AdditionalDependencies)</AdditionalDependencies>\n      <IgnoreSpecificDefaultLibraries>ole32.lib;%(IgnoreSpecificDefaultLibraries)</IgnoreSpecificDefaultLibraries>\n      <GenerateWindowsMetadata>true</GenerateWindowsMetadata>\n      <AdditionalLibraryDirectories>$(EngineRoot)external\\wp8-specific\\angle\\prebuilt\\$(Platform);$(EngineRoot)\\external\\curl\\prebuilt\\wp8\\$(Platform);$(EngineRoot)external\\websockets\\prebuilt\\wp8\\$(Platform);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\n    </Link>\n  </ItemDefinitionGroup>\n  <ItemDefinitionGroup Condition=\"'$(Configuration)|$(Platform)'=='Debug|ARM'\">\n    <ClCompile>\n      <PreprocessorDefinitions>CC_ENABLE_CHIPMUNK_INTEGRATION=1;COCOS2D_DEBUG=1;CC_LUA_ENGINE_ENABLED=1;SQLITE_OS_WINRT;SQLITE_OMIT_WAL;__STRICT_ANSI__;%(PreprocessorDefinitions)</PreprocessorDefinitions>\n      <PrecompiledHeader>Use</PrecompiledHeader>\n      <PrecompiledHeaderFile>pch.h</PrecompiledHeaderFile>\n      <AdditionalUsingDirectories>$(WindowsSDK_MetadataPath);$(AdditionalUsingDirectories)</AdditionalUsingDirectories>\n      <CompileAsWinRT>true</CompileAsWinRT>\n      <ForcedIncludeFiles>pch.h</ForcedIncludeFiles>\n      <AdditionalOptions>/Zm200 %(AdditionalOptions)</AdditionalOptions>\n      <AdditionalIncludeDirectories>$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra;$(QUICK_V3_ROOT)\\quick\\lib\\quick-src;$(ProjectDir)..\\..\\Classes;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\n      <SDLCheck />\n      <DisableSpecificWarnings>4049;4273;4056;4996;4244;4251;4068;4267;%(DisableSpecificWarnings)</DisableSpecificWarnings>\n    </ClCompile>\n    <Link>\n      <SubSystem>Console</SubSystem>\n      <IgnoreAllDefaultLibraries>false</IgnoreAllDefaultLibraries>\n      <AdditionalDependencies>d3d11.lib;libGLESv2_phone.lib;libEGL_phone.lib;xaudio2.lib;libwebsockets.lib;libcurl.lib;%(AdditionalDependencies)</AdditionalDependencies>\n      <IgnoreSpecificDefaultLibraries>ole32.lib;%(IgnoreSpecificDefaultLibraries)</IgnoreSpecificDefaultLibraries>\n      <GenerateWindowsMetadata>true</GenerateWindowsMetadata>\n      <AdditionalLibraryDirectories>$(EngineRoot)external\\wp8-specific\\angle\\prebuilt\\$(Platform);$(EngineRoot)\\external\\curl\\prebuilt\\wp8\\$(Platform);$(EngineRoot)external\\websockets\\prebuilt\\wp8\\$(Platform);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\n    </Link>\n  </ItemDefinitionGroup>\n  <ItemDefinitionGroup Condition=\"'$(Configuration)|$(Platform)'=='Release|ARM'\">\n    <ClCompile>\n      <PreprocessorDefinitions>CC_ENABLE_CHIPMUNK_INTEGRATION=1;NDEBUG;CC_LUA_ENGINE_ENABLED=1;SQLITE_OS_WINRT;SQLITE_OMIT_WAL;__STRICT_ANSI__;%(PreprocessorDefinitions)</PreprocessorDefinitions>\n      <PrecompiledHeader>Use</PrecompiledHeader>\n      <PrecompiledHeaderFile>pch.h</PrecompiledHeaderFile>\n      <AdditionalUsingDirectories>$(WindowsSDK_MetadataPath);$(AdditionalUsingDirectories)</AdditionalUsingDirectories>\n      <CompileAsWinRT>true</CompileAsWinRT>\n      <ForcedIncludeFiles>pch.h</ForcedIncludeFiles>\n      <AdditionalOptions>/Zm200 %(AdditionalOptions)</AdditionalOptions>\n      <AdditionalIncludeDirectories>$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra;$(QUICK_V3_ROOT)\\quick\\lib\\quick-src;$(ProjectDir)..\\..\\Classes;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\n      <SDLCheck />\n      <DisableSpecificWarnings>4049;4273;4056;4996;4244;4251;4068;4267;%(DisableSpecificWarnings)</DisableSpecificWarnings>\n    </ClCompile>\n    <Link>\n      <SubSystem>Console</SubSystem>\n      <IgnoreAllDefaultLibraries>false</IgnoreAllDefaultLibraries>\n      <AdditionalDependencies>d3d11.lib;libGLESv2_phone.lib;libEGL_phone.lib;xaudio2.lib;libwebsockets.lib;libcurl.lib;%(AdditionalDependencies)</AdditionalDependencies>\n      <IgnoreSpecificDefaultLibraries>ole32.lib;%(IgnoreSpecificDefaultLibraries)</IgnoreSpecificDefaultLibraries>\n      <GenerateWindowsMetadata>true</GenerateWindowsMetadata>\n      <AdditionalLibraryDirectories>$(EngineRoot)external\\wp8-specific\\angle\\prebuilt\\$(Platform);$(EngineRoot)\\external\\curl\\prebuilt\\wp8\\$(Platform);$(EngineRoot)external\\websockets\\prebuilt\\wp8\\$(Platform);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\n    </Link>\n  </ItemDefinitionGroup>\n  <ItemGroup>\n    <Reference Include=\"platform.winmd\">\n      <IsWinMDFile>true</IsWinMDFile>\n      <Private>false</Private>\n    </Reference>\n  </ItemGroup>\n  <ItemGroup>\n    <ClCompile Include=\"..\\..\\Classes\\AppDelegate.cpp\" />\n    <ClCompile Include=\"..\\..\\Classes\\ConfigParser.cpp\" />\n    <ClCompile Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\apptools\\HelperFunc.cpp\" />\n    <ClCompile Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\crypto\\base64\\libbase64.c\">\n      <CompileAsWinRT Condition=\"'$(Configuration)|$(Platform)'=='Debug|Win32'\">false</CompileAsWinRT>\n      <PrecompiledHeader Condition=\"'$(Configuration)|$(Platform)'=='Debug|Win32'\">NotUsing</PrecompiledHeader>\n      <PrecompiledHeaderFile Condition=\"'$(Configuration)|$(Platform)'=='Debug|Win32'\">\n      </PrecompiledHeaderFile>\n      <ForcedIncludeFiles Condition=\"'$(Configuration)|$(Platform)'=='Debug|Win32'\">\n      </ForcedIncludeFiles>\n      <CompileAsWinRT Condition=\"'$(Configuration)|$(Platform)'=='Debug|ARM'\">false</CompileAsWinRT>\n      <PrecompiledHeader Condition=\"'$(Configuration)|$(Platform)'=='Debug|ARM'\">NotUsing</PrecompiledHeader>\n      <ForcedIncludeFiles Condition=\"'$(Configuration)|$(Platform)'=='Debug|ARM'\">\n      </ForcedIncludeFiles>\n      <CompileAsWinRT Condition=\"'$(Configuration)|$(Platform)'=='Release|Win32'\">false</CompileAsWinRT>\n      <PrecompiledHeader Condition=\"'$(Configuration)|$(Platform)'=='Release|Win32'\">NotUsing</PrecompiledHeader>\n      <ForcedIncludeFiles Condition=\"'$(Configuration)|$(Platform)'=='Release|Win32'\">\n      </ForcedIncludeFiles>\n      <CompileAsWinRT Condition=\"'$(Configuration)|$(Platform)'=='Release|ARM'\">false</CompileAsWinRT>\n      <PrecompiledHeader Condition=\"'$(Configuration)|$(Platform)'=='Release|ARM'\">NotUsing</PrecompiledHeader>\n      <ForcedIncludeFiles Condition=\"'$(Configuration)|$(Platform)'=='Release|ARM'\">\n      </ForcedIncludeFiles>\n    </ClCompile>\n    <ClCompile Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\crypto\\CCCrypto.cpp\" />\n    <ClCompile Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\crypto\\md5\\md5.c\">\n      <CompileAsWinRT Condition=\"'$(Configuration)|$(Platform)'=='Debug|Win32'\">false</CompileAsWinRT>\n      <PrecompiledHeader Condition=\"'$(Configuration)|$(Platform)'=='Debug|Win32'\">NotUsing</PrecompiledHeader>\n      <PrecompiledHeaderFile Condition=\"'$(Configuration)|$(Platform)'=='Debug|Win32'\">\n      </PrecompiledHeaderFile>\n      <ForcedIncludeFiles Condition=\"'$(Configuration)|$(Platform)'=='Debug|Win32'\">\n      </ForcedIncludeFiles>\n      <CompileAsWinRT Condition=\"'$(Configuration)|$(Platform)'=='Debug|ARM'\">false</CompileAsWinRT>\n      <PrecompiledHeader Condition=\"'$(Configuration)|$(Platform)'=='Debug|ARM'\">NotUsing</PrecompiledHeader>\n      <ForcedIncludeFiles Condition=\"'$(Configuration)|$(Platform)'=='Debug|ARM'\">\n      </ForcedIncludeFiles>\n      <CompileAsWinRT Condition=\"'$(Configuration)|$(Platform)'=='Release|Win32'\">false</CompileAsWinRT>\n      <PrecompiledHeader Condition=\"'$(Configuration)|$(Platform)'=='Release|Win32'\">NotUsing</PrecompiledHeader>\n      <ForcedIncludeFiles Condition=\"'$(Configuration)|$(Platform)'=='Release|Win32'\">\n      </ForcedIncludeFiles>\n      <CompileAsWinRT Condition=\"'$(Configuration)|$(Platform)'=='Release|ARM'\">false</CompileAsWinRT>\n      <PrecompiledHeader Condition=\"'$(Configuration)|$(Platform)'=='Release|ARM'\">NotUsing</PrecompiledHeader>\n      <ForcedIncludeFiles Condition=\"'$(Configuration)|$(Platform)'=='Release|ARM'\">\n      </ForcedIncludeFiles>\n    </ClCompile>\n    <ClCompile Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\filters\\CCBlurFilter.cpp\" />\n    <ClCompile Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\filters\\CCBrightnessFilter.cpp\" />\n    <ClCompile Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\filters\\CCContrastFilter.cpp\" />\n    <ClCompile Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\filters\\CCCustomFilter.cpp\" />\n    <ClCompile Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\filters\\CCDropShadowFilter.cpp\" />\n    <ClCompile Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\filters\\CCExposureFilter.cpp\" />\n    <ClCompile Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\filters\\CCFilter.cpp\" />\n    <ClCompile Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\filters\\CCGammaFilter.cpp\" />\n    <ClCompile Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\filters\\CCGrayFilter.cpp\" />\n    <ClCompile Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\filters\\CCHazeFilter.cpp\" />\n    <ClCompile Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\filters\\CCHueFilter.cpp\" />\n    <ClCompile Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\filters\\CCMaskFilter.cpp\" />\n    <ClCompile Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\filters\\CCRGBFilter.cpp\" />\n    <ClCompile Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\filters\\CCSaturationFilter.cpp\" />\n    <ClCompile Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\filters\\CCSepiaFilter.cpp\" />\n    <ClCompile Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\filters\\CCSharpenFilter.cpp\" />\n    <ClCompile Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\filters\\CCTestFilter.cpp\" />\n    <ClCompile Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\nodes\\CCFilteredSprite.cpp\" />\n    <ClCompile Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\shaders\\ccFilterShaders.cpp\" />\n    <ClCompile Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\shaders\\FilterShaders.cpp\" />\n    <ClCompile Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\luabinding\\cocos2dx_extra_luabinding.cpp\" />\n    <ClCompile Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\luabinding\\HelperFunc_luabinding.cpp\" />\n    <ClCompile Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\luabinding\\lua_cocos2dx_extension_filter_auto.cpp\" />\n    <ClCompile Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\luabinding\\lua_cocos2dx_extension_nanovg_auto.cpp\" />\n    <ClCompile Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\luabinding\\lua_cocos2dx_extension_nanovg_manual.cpp\" />\n    <ClCompile Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\nanovg\\nanonode\\NVGDrawNode.cpp\" />\n    <ClCompile Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\nanovg\\nanonode\\NVGNode.cpp\" />\n    <ClCompile Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\nanovg\\nanovg\\nanovg.c\">\n      <CompileAsWinRT Condition=\"'$(Configuration)|$(Platform)'=='Debug|Win32'\">false</CompileAsWinRT>\n      <PrecompiledHeader Condition=\"'$(Configuration)|$(Platform)'=='Debug|Win32'\">NotUsing</PrecompiledHeader>\n      <CompileAs Condition=\"'$(Configuration)|$(Platform)'=='Debug|Win32'\">Default</CompileAs>\n      <ForcedIncludeFiles Condition=\"'$(Configuration)|$(Platform)'=='Debug|Win32'\">\n      </ForcedIncludeFiles>\n    </ClCompile>\n    <ClCompile Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\network\\CCHTTPRequest.cpp\" />\n    <ClCompile Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\network\\CCNetwork.cpp\" />\n    <ClCompile Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\platform\\wp8\\CCCryptoWP8.cpp\" />\n    <ClCompile Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\platform\\wp8\\CCNativeWP8.cpp\" />\n    <ClCompile Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\platform\\wp8\\CCNetworkWP8.cpp\" />\n    <ClCompile Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\lua_extensions\\cjson\\fpconv.c\">\n      <ForcedIncludeFiles Condition=\"'$(Configuration)|$(Platform)'=='Debug|Win32'\">\n      </ForcedIncludeFiles>\n      <CompileAsWinRT Condition=\"'$(Configuration)|$(Platform)'=='Debug|Win32'\">false</CompileAsWinRT>\n      <PrecompiledHeader Condition=\"'$(Configuration)|$(Platform)'=='Debug|Win32'\">NotUsing</PrecompiledHeader>\n      <CompileAsWinRT Condition=\"'$(Configuration)|$(Platform)'=='Debug|ARM'\">false</CompileAsWinRT>\n      <PrecompiledHeader Condition=\"'$(Configuration)|$(Platform)'=='Debug|ARM'\">NotUsing</PrecompiledHeader>\n      <PrecompiledHeaderFile Condition=\"'$(Configuration)|$(Platform)'=='Debug|ARM'\">\n      </PrecompiledHeaderFile>\n      <ForcedIncludeFiles Condition=\"'$(Configuration)|$(Platform)'=='Debug|ARM'\">\n      </ForcedIncludeFiles>\n      <CompileAsWinRT Condition=\"'$(Configuration)|$(Platform)'=='Release|Win32'\">false</CompileAsWinRT>\n      <PrecompiledHeader Condition=\"'$(Configuration)|$(Platform)'=='Release|Win32'\">NotUsing</PrecompiledHeader>\n      <ForcedIncludeFiles Condition=\"'$(Configuration)|$(Platform)'=='Release|Win32'\">\n      </ForcedIncludeFiles>\n      <CompileAsWinRT Condition=\"'$(Configuration)|$(Platform)'=='Release|ARM'\">false</CompileAsWinRT>\n      <PrecompiledHeader Condition=\"'$(Configuration)|$(Platform)'=='Release|ARM'\">NotUsing</PrecompiledHeader>\n      <ForcedIncludeFiles Condition=\"'$(Configuration)|$(Platform)'=='Release|ARM'\">\n      </ForcedIncludeFiles>\n    </ClCompile>\n    <ClCompile Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\lua_extensions\\cjson\\lua_cjson.c\">\n      <ForcedIncludeFiles Condition=\"'$(Configuration)|$(Platform)'=='Debug|Win32'\">\n      </ForcedIncludeFiles>\n      <CompileAsWinRT Condition=\"'$(Configuration)|$(Platform)'=='Debug|Win32'\">false</CompileAsWinRT>\n      <PrecompiledHeader Condition=\"'$(Configuration)|$(Platform)'=='Debug|Win32'\">NotUsing</PrecompiledHeader>\n      <CompileAsWinRT Condition=\"'$(Configuration)|$(Platform)'=='Debug|ARM'\">false</CompileAsWinRT>\n      <PrecompiledHeader Condition=\"'$(Configuration)|$(Platform)'=='Debug|ARM'\">NotUsing</PrecompiledHeader>\n      <PrecompiledHeaderFile Condition=\"'$(Configuration)|$(Platform)'=='Debug|ARM'\">\n      </PrecompiledHeaderFile>\n      <ForcedIncludeFiles Condition=\"'$(Configuration)|$(Platform)'=='Debug|ARM'\">\n      </ForcedIncludeFiles>\n      <CompileAsWinRT Condition=\"'$(Configuration)|$(Platform)'=='Release|Win32'\">false</CompileAsWinRT>\n      <PrecompiledHeader Condition=\"'$(Configuration)|$(Platform)'=='Release|Win32'\">NotUsing</PrecompiledHeader>\n      <ForcedIncludeFiles Condition=\"'$(Configuration)|$(Platform)'=='Release|Win32'\">\n      </ForcedIncludeFiles>\n      <CompileAsWinRT Condition=\"'$(Configuration)|$(Platform)'=='Release|ARM'\">false</CompileAsWinRT>\n      <PrecompiledHeader Condition=\"'$(Configuration)|$(Platform)'=='Release|ARM'\">NotUsing</PrecompiledHeader>\n      <ForcedIncludeFiles Condition=\"'$(Configuration)|$(Platform)'=='Release|ARM'\">\n      </ForcedIncludeFiles>\n    </ClCompile>\n    <ClCompile Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\lua_extensions\\cjson\\strbuf.c\">\n      <ForcedIncludeFiles Condition=\"'$(Configuration)|$(Platform)'=='Debug|Win32'\">\n      </ForcedIncludeFiles>\n      <CompileAsWinRT Condition=\"'$(Configuration)|$(Platform)'=='Debug|Win32'\">false</CompileAsWinRT>\n      <PrecompiledHeader Condition=\"'$(Configuration)|$(Platform)'=='Debug|Win32'\">NotUsing</PrecompiledHeader>\n      <CompileAsWinRT Condition=\"'$(Configuration)|$(Platform)'=='Debug|ARM'\">false</CompileAsWinRT>\n      <PrecompiledHeader Condition=\"'$(Configuration)|$(Platform)'=='Debug|ARM'\">NotUsing</PrecompiledHeader>\n      <PrecompiledHeaderFile Condition=\"'$(Configuration)|$(Platform)'=='Debug|ARM'\">\n      </PrecompiledHeaderFile>\n      <ForcedIncludeFiles Condition=\"'$(Configuration)|$(Platform)'=='Debug|ARM'\">\n      </ForcedIncludeFiles>\n      <CompileAsWinRT Condition=\"'$(Configuration)|$(Platform)'=='Release|Win32'\">false</CompileAsWinRT>\n      <PrecompiledHeader Condition=\"'$(Configuration)|$(Platform)'=='Release|Win32'\">NotUsing</PrecompiledHeader>\n      <ForcedIncludeFiles Condition=\"'$(Configuration)|$(Platform)'=='Release|Win32'\">\n      </ForcedIncludeFiles>\n      <CompileAsWinRT Condition=\"'$(Configuration)|$(Platform)'=='Release|ARM'\">false</CompileAsWinRT>\n      <PrecompiledHeader Condition=\"'$(Configuration)|$(Platform)'=='Release|ARM'\">NotUsing</PrecompiledHeader>\n      <ForcedIncludeFiles Condition=\"'$(Configuration)|$(Platform)'=='Release|ARM'\">\n      </ForcedIncludeFiles>\n    </ClCompile>\n    <ClCompile Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\lua_extensions\\lpack\\lpack.c\">\n      <ForcedIncludeFiles Condition=\"'$(Configuration)|$(Platform)'=='Debug|Win32'\">\n      </ForcedIncludeFiles>\n      <CompileAsWinRT Condition=\"'$(Configuration)|$(Platform)'=='Debug|Win32'\">false</CompileAsWinRT>\n      <PrecompiledHeader Condition=\"'$(Configuration)|$(Platform)'=='Debug|Win32'\">NotUsing</PrecompiledHeader>\n      <CompileAsWinRT Condition=\"'$(Configuration)|$(Platform)'=='Debug|ARM'\">false</CompileAsWinRT>\n      <PrecompiledHeader Condition=\"'$(Configuration)|$(Platform)'=='Debug|ARM'\">NotUsing</PrecompiledHeader>\n      <PrecompiledHeaderFile Condition=\"'$(Configuration)|$(Platform)'=='Debug|ARM'\">\n      </PrecompiledHeaderFile>\n      <ForcedIncludeFiles Condition=\"'$(Configuration)|$(Platform)'=='Debug|ARM'\">\n      </ForcedIncludeFiles>\n      <CompileAsWinRT Condition=\"'$(Configuration)|$(Platform)'=='Release|Win32'\">false</CompileAsWinRT>\n      <PrecompiledHeader Condition=\"'$(Configuration)|$(Platform)'=='Release|Win32'\">NotUsing</PrecompiledHeader>\n      <ForcedIncludeFiles Condition=\"'$(Configuration)|$(Platform)'=='Release|Win32'\">\n      </ForcedIncludeFiles>\n      <CompileAsWinRT Condition=\"'$(Configuration)|$(Platform)'=='Release|ARM'\">false</CompileAsWinRT>\n      <PrecompiledHeader Condition=\"'$(Configuration)|$(Platform)'=='Release|ARM'\">NotUsing</PrecompiledHeader>\n      <ForcedIncludeFiles Condition=\"'$(Configuration)|$(Platform)'=='Release|ARM'\">\n      </ForcedIncludeFiles>\n    </ClCompile>\n    <ClCompile Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\lua_extensions\\lsqlite3\\lsqlite3.c\">\n      <ForcedIncludeFiles Condition=\"'$(Configuration)|$(Platform)'=='Debug|Win32'\">\n      </ForcedIncludeFiles>\n      <CompileAsWinRT Condition=\"'$(Configuration)|$(Platform)'=='Debug|Win32'\">false</CompileAsWinRT>\n      <PrecompiledHeader Condition=\"'$(Configuration)|$(Platform)'=='Debug|Win32'\">NotUsing</PrecompiledHeader>\n      <CompileAsWinRT Condition=\"'$(Configuration)|$(Platform)'=='Debug|ARM'\">false</CompileAsWinRT>\n      <PrecompiledHeader Condition=\"'$(Configuration)|$(Platform)'=='Debug|ARM'\">NotUsing</PrecompiledHeader>\n      <PrecompiledHeaderFile Condition=\"'$(Configuration)|$(Platform)'=='Debug|ARM'\">\n      </PrecompiledHeaderFile>\n      <ForcedIncludeFiles Condition=\"'$(Configuration)|$(Platform)'=='Debug|ARM'\">\n      </ForcedIncludeFiles>\n      <CompileAsWinRT Condition=\"'$(Configuration)|$(Platform)'=='Release|Win32'\">false</CompileAsWinRT>\n      <PrecompiledHeader Condition=\"'$(Configuration)|$(Platform)'=='Release|Win32'\">NotUsing</PrecompiledHeader>\n      <ForcedIncludeFiles Condition=\"'$(Configuration)|$(Platform)'=='Release|Win32'\">\n      </ForcedIncludeFiles>\n      <CompileAsWinRT Condition=\"'$(Configuration)|$(Platform)'=='Release|ARM'\">false</CompileAsWinRT>\n      <PrecompiledHeader Condition=\"'$(Configuration)|$(Platform)'=='Release|ARM'\">NotUsing</PrecompiledHeader>\n      <ForcedIncludeFiles Condition=\"'$(Configuration)|$(Platform)'=='Release|ARM'\">\n      </ForcedIncludeFiles>\n    </ClCompile>\n    <ClCompile Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\lua_extensions\\lsqlite3\\sqlite3.c\">\n      <ForcedIncludeFiles Condition=\"'$(Configuration)|$(Platform)'=='Debug|Win32'\">\n      </ForcedIncludeFiles>\n      <CompileAsWinRT Condition=\"'$(Configuration)|$(Platform)'=='Debug|Win32'\">false</CompileAsWinRT>\n      <PrecompiledHeader Condition=\"'$(Configuration)|$(Platform)'=='Debug|Win32'\">NotUsing</PrecompiledHeader>\n      <CompileAsWinRT Condition=\"'$(Configuration)|$(Platform)'=='Debug|ARM'\">false</CompileAsWinRT>\n      <PrecompiledHeader Condition=\"'$(Configuration)|$(Platform)'=='Debug|ARM'\">NotUsing</PrecompiledHeader>\n      <PrecompiledHeaderFile Condition=\"'$(Configuration)|$(Platform)'=='Debug|ARM'\">\n      </PrecompiledHeaderFile>\n      <ForcedIncludeFiles Condition=\"'$(Configuration)|$(Platform)'=='Debug|ARM'\">\n      </ForcedIncludeFiles>\n      <CompileAsWinRT Condition=\"'$(Configuration)|$(Platform)'=='Release|Win32'\">false</CompileAsWinRT>\n      <PrecompiledHeader Condition=\"'$(Configuration)|$(Platform)'=='Release|Win32'\">NotUsing</PrecompiledHeader>\n      <ForcedIncludeFiles Condition=\"'$(Configuration)|$(Platform)'=='Release|Win32'\">\n      </ForcedIncludeFiles>\n      <CompileAsWinRT Condition=\"'$(Configuration)|$(Platform)'=='Release|ARM'\">false</CompileAsWinRT>\n      <PrecompiledHeader Condition=\"'$(Configuration)|$(Platform)'=='Release|ARM'\">NotUsing</PrecompiledHeader>\n      <ForcedIncludeFiles Condition=\"'$(Configuration)|$(Platform)'=='Release|ARM'\">\n      </ForcedIncludeFiles>\n    </ClCompile>\n    <ClCompile Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\lua_extensions\\lua_extensions_more.c\">\n      <ForcedIncludeFiles Condition=\"'$(Configuration)|$(Platform)'=='Debug|Win32'\">\n      </ForcedIncludeFiles>\n      <CompileAsWinRT Condition=\"'$(Configuration)|$(Platform)'=='Debug|Win32'\">false</CompileAsWinRT>\n      <PrecompiledHeader Condition=\"'$(Configuration)|$(Platform)'=='Debug|Win32'\">NotUsing</PrecompiledHeader>\n      <CompileAsWinRT Condition=\"'$(Configuration)|$(Platform)'=='Debug|ARM'\">false</CompileAsWinRT>\n      <PrecompiledHeader Condition=\"'$(Configuration)|$(Platform)'=='Debug|ARM'\">NotUsing</PrecompiledHeader>\n      <PrecompiledHeaderFile Condition=\"'$(Configuration)|$(Platform)'=='Debug|ARM'\">\n      </PrecompiledHeaderFile>\n      <ForcedIncludeFiles Condition=\"'$(Configuration)|$(Platform)'=='Debug|ARM'\">\n      </ForcedIncludeFiles>\n      <CompileAsWinRT Condition=\"'$(Configuration)|$(Platform)'=='Release|Win32'\">false</CompileAsWinRT>\n      <PrecompiledHeader Condition=\"'$(Configuration)|$(Platform)'=='Release|Win32'\">NotUsing</PrecompiledHeader>\n      <ForcedIncludeFiles Condition=\"'$(Configuration)|$(Platform)'=='Release|Win32'\">\n      </ForcedIncludeFiles>\n      <CompileAsWinRT Condition=\"'$(Configuration)|$(Platform)'=='Release|ARM'\">false</CompileAsWinRT>\n      <PrecompiledHeader Condition=\"'$(Configuration)|$(Platform)'=='Release|ARM'\">NotUsing</PrecompiledHeader>\n      <ForcedIncludeFiles Condition=\"'$(Configuration)|$(Platform)'=='Release|ARM'\">\n      </ForcedIncludeFiles>\n    </ClCompile>\n    <ClCompile Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\lua_extensions\\zlib\\lua_zlib.c\">\n      <ForcedIncludeFiles Condition=\"'$(Configuration)|$(Platform)'=='Debug|Win32'\">\n      </ForcedIncludeFiles>\n      <CompileAsWinRT Condition=\"'$(Configuration)|$(Platform)'=='Debug|Win32'\">false</CompileAsWinRT>\n      <PrecompiledHeader Condition=\"'$(Configuration)|$(Platform)'=='Debug|Win32'\">NotUsing</PrecompiledHeader>\n      <CompileAsWinRT Condition=\"'$(Configuration)|$(Platform)'=='Debug|ARM'\">false</CompileAsWinRT>\n      <PrecompiledHeader Condition=\"'$(Configuration)|$(Platform)'=='Debug|ARM'\">NotUsing</PrecompiledHeader>\n      <PrecompiledHeaderFile Condition=\"'$(Configuration)|$(Platform)'=='Debug|ARM'\">\n      </PrecompiledHeaderFile>\n      <ForcedIncludeFiles Condition=\"'$(Configuration)|$(Platform)'=='Debug|ARM'\">\n      </ForcedIncludeFiles>\n      <CompileAsWinRT Condition=\"'$(Configuration)|$(Platform)'=='Release|Win32'\">false</CompileAsWinRT>\n      <PrecompiledHeader Condition=\"'$(Configuration)|$(Platform)'=='Release|Win32'\">NotUsing</PrecompiledHeader>\n      <ForcedIncludeFiles Condition=\"'$(Configuration)|$(Platform)'=='Release|Win32'\">\n      </ForcedIncludeFiles>\n      <CompileAsWinRT Condition=\"'$(Configuration)|$(Platform)'=='Release|ARM'\">false</CompileAsWinRT>\n      <PrecompiledHeader Condition=\"'$(Configuration)|$(Platform)'=='Release|ARM'\">NotUsing</PrecompiledHeader>\n      <ForcedIncludeFiles Condition=\"'$(Configuration)|$(Platform)'=='Release|ARM'\">\n      </ForcedIncludeFiles>\n    </ClCompile>\n    <ClCompile Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\ProjectConfig\\ProjectConfig.cpp\" />\n    <ClCompile Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\ProjectConfig\\SimulatorConfig.cpp\" />\n    <ClCompile Include=\"src\\Cocos2dRenderer.cpp\" />\n    <ClCompile Include=\"src\\Direct3DContentProvider.cpp\" />\n    <ClCompile Include=\"src\\Direct3DInterop.cpp\" />\n    <ClCompile Include=\"src\\DirectXBase.cpp\" />\n    <ClCompile Include=\"src\\EditBoxEvent.cpp\" />\n    <ClCompile Include=\"src\\pch.cpp\">\n      <PrecompiledHeader Condition=\"'$(Configuration)|$(Platform)'=='Debug|Win32'\">Create</PrecompiledHeader>\n      <PrecompiledHeader Condition=\"'$(Configuration)|$(Platform)'=='Release|Win32'\">Create</PrecompiledHeader>\n      <PrecompiledHeader Condition=\"'$(Configuration)|$(Platform)'=='Debug|ARM'\">Create</PrecompiledHeader>\n      <PrecompiledHeader Condition=\"'$(Configuration)|$(Platform)'=='Release|ARM'\">Create</PrecompiledHeader>\n    </ClCompile>\n  </ItemGroup>\n  <ItemGroup>\n    <ClInclude Include=\"..\\..\\Classes\\AppDelegate.h\" />\n    <ClInclude Include=\"..\\..\\Classes\\ConfigParser.h\" />\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\apptools\\HelperFunc.h\" />\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\crypto\\base64\\libbase64.h\" />\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\crypto\\CCCrypto.h\" />\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\crypto\\md5\\md5.h\" />\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\cocos2dFilters.h\" />\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\filters\\CCBlurFilter.h\" />\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\filters\\CCBrightnessFilter.h\" />\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\filters\\CCContrastFilter.h\" />\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\filters\\CCCustomFilter.h\" />\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\filters\\CCDropShadowFilter.h\" />\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\filters\\CCExposureFilter.h\" />\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\filters\\CCFilter.h\" />\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\filters\\CCGammaFilter.h\" />\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\filters\\CCGrayFilter.h\" />\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\filters\\CCHazeFilter.h\" />\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\filters\\CCHueFilter.h\" />\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\filters\\CCMaskFilter.h\" />\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\filters\\CCRGBFilter.h\" />\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\filters\\CCSaturationFilter.h\" />\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\filters\\CCSepiaFilter.h\" />\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\filters\\CCSharpenFilter.h\" />\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\filters\\CCTestFilter.h\" />\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\nodes\\CCFilteredSprite.h\" />\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\shaders\\ccFilterShaders.h\" />\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\shaders\\ccFilterShader_blur_frag.h\" />\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\shaders\\ccFilterShader_brightness_frag.h\" />\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\shaders\\ccFilterShader_colorramp_frag.h\" />\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\shaders\\ccFilterShader_contrast_frag.h\" />\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\shaders\\ccFilterShader_drop_shadow_frag.h\" />\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\shaders\\ccFilterShader_drop_shadow_vert.h\" />\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\shaders\\ccFilterShader_embossmov_frag.h\" />\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\shaders\\ccFilterShader_emboss_frag.h\" />\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\shaders\\ccFilterShader_exposure_frag.h\" />\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\shaders\\ccFilterShader_gamma_frag.h\" />\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\shaders\\ccFilterShader_gaussian_blur_frag.h\" />\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\shaders\\ccFilterShader_gaussian_hblur_frag.h\" />\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\shaders\\ccFilterShader_gaussian_vblur_frag.h\" />\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\shaders\\ccFilterShader_grass_frag.h\" />\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\shaders\\ccFilterShader_gray_frag.h\" />\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\shaders\\ccFilterShader_haze_frag.h\" />\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\shaders\\ccFilterShader_hblur_vert.h\" />\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\shaders\\ccFilterShader_hue_frag.h\" />\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\shaders\\ccFilterShader_motion_blur_frag.h\" />\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\shaders\\ccFilterShader_motion_blur_vert.h\" />\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\shaders\\ccFilterShader_rgb_frag.h\" />\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\shaders\\ccFilterShader_saturation_frag.h\" />\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\shaders\\ccFilterShader_sepia_frag.h\" />\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\shaders\\ccFilterShader_sharpen_frag.h\" />\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\shaders\\ccFilterShader_sharpen_vert.h\" />\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\shaders\\ccFilterShader_test_frag.h\" />\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\shaders\\ccFilterShader_test_vert.h\" />\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\shaders\\ccFilterShader_vblur_vert.h\" />\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\shaders\\ccFilterShader_zoom_blur_frag.h\" />\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\shaders\\FilterShaders.h\" />\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\luabinding\\cocos2dx_extra_luabinding.h\" />\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\luabinding\\HelperFunc_luabinding.h\" />\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\luabinding\\lua_cocos2dx_extension_filter_auto.hpp\" />\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\luabinding\\lua_cocos2dx_extension_nanovg_auto.hpp\" />\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\luabinding\\lua_cocos2dx_extension_nanovg_manual.hpp\" />\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\nanovg\\nanonode\\NVGDrawNode.h\" />\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\nanovg\\nanonode\\NVGNode.h\" />\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\nanovg\\nanovg\\fontstash.h\" />\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\nanovg\\nanovg\\nanovg.h\" />\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\nanovg\\nanovg\\nanovg_gl.h\" />\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\nanovg\\nanovg\\nanovg_gl_utils.h\" />\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\nanovg\\nanovg\\stb_image.h\" />\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\nanovg\\nanovg\\stb_truetype.h\" />\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\native\\CCAlertViewDelegate.h\" />\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\native\\CCNative.h\" />\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\network\\CCHTTPRequest.h\" />\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\network\\CCHTTPRequestDelegate.h\" />\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\network\\CCNetwork.h\" />\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\lua_extensions\\cjson\\fpconv.h\" />\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\lua_extensions\\cjson\\lua_cjson.h\" />\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\lua_extensions\\cjson\\strbuf.h\" />\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\lua_extensions\\lpack\\lpack.h\" />\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\lua_extensions\\lsqlite3\\lsqlite3.h\" />\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\lua_extensions\\lsqlite3\\sqlite3.h\" />\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\lua_extensions\\lua_extensions_more.h\" />\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\lua_extensions\\zlib\\lua_zlib.h\" />\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\ProjectConfig\\ProjectConfig.h\" />\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\ProjectConfig\\SimulatorConfig.h\" />\n    <ClInclude Include=\"src\\Cocos2dRenderer.h\" />\n    <ClInclude Include=\"src\\Direct3DContentProvider.h\" />\n    <ClInclude Include=\"src\\Direct3DInterop.h\" />\n    <ClInclude Include=\"src\\DirectXBase.h\" />\n    <ClInclude Include=\"src\\DirectXHelper.h\" />\n    <ClInclude Include=\"src\\EditBoxEvent.h\" />\n    <ClInclude Include=\"src\\pch.h\" />\n  </ItemGroup>\n  <ItemGroup>\n    <ProjectReference Include=\"$(QUICK_V3_ROOT)\\cocos\\2d\\libcocos2d_wp8.vcxproj\">\n      <Project>{7c5dbc42-27f6-4978-aabc-02ba77e2a7f0}</Project>\n    </ProjectReference>\n    <ProjectReference Include=\"$(QUICK_V3_ROOT)\\cocos\\editor-support\\spine\\proj.wp8\\libSpine.vcxproj\">\n      <Project>{7d4fc6eb-9497-4804-98f3-3eaedc896154}</Project>\n    </ProjectReference>\n    <ProjectReference Include=\"$(QUICK_V3_ROOT)\\cocos\\scripting\\lua-bindings\\proj.wp8-xaml\\libluabinding.vcxproj\">\n      <Project>{b2b779bf-13c2-4137-98b3-0644abc7d173}</Project>\n    </ProjectReference>\n    <ProjectReference Include=\"$(QUICK_V3_ROOT)\\external\\Box2D\\proj.wp8\\Box2D.vcxproj\">\n      <Project>{c55734a3-702c-4fa1-b950-32c8e169302f}</Project>\n    </ProjectReference>\n  </ItemGroup>\n  <ItemGroup>\n    <None Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\shaders\\example_bloom.fsh\" />\n    <None Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\shaders\\example_Blur.fsh\" />\n    <None Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\shaders\\example_celShading.fsh\" />\n    <None Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\shaders\\example_ColorBars.fsh\" />\n    <None Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\shaders\\example_ColorBars.vsh\" />\n    <None Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\shaders\\example_edgeDetection.fsh\" />\n    <None Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\shaders\\example_Flower.fsh\" />\n    <None Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\shaders\\example_greyScale.fsh\" />\n    <None Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\shaders\\example_Heart.fsh\" />\n    <None Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\shaders\\example_HorizontalColor.fsh\" />\n    <None Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\shaders\\example_Julia.fsh\" />\n    <None Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\shaders\\example_lensFlare.fsh\" />\n    <None Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\shaders\\example_Mandelbrot.fsh\" />\n    <None Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\shaders\\example_Monjori.fsh\" />\n    <None Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\shaders\\example_MultiTexture.fsh\" />\n    <None Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\shaders\\example_MultiTexture.vsh\" />\n    <None Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\shaders\\example_Noisy.fsh\" />\n    <None Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\shaders\\example_normal.fsh\" />\n    <None Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\shaders\\example_outline.fsh\" />\n    <None Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\shaders\\example_Plasma.fsh\" />\n    <None Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\shaders\\example_sepia.fsh\" />\n    <None Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\shaders\\example_Twist.fsh\" />\n    <None Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\shaders\\shadertoy_FireBall.fsh\" />\n    <None Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\shaders\\shadertoy_Glow.fsh\" />\n    <None Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\shaders\\shadertoy_LensFlare.fsh\" />\n  </ItemGroup>\n  <Import Project=\"$(VCTargetsPath)\\Microsoft.Cpp.targets\" />\n  <Import Project=\"$(MSBuildExtensionsPath)\\Microsoft\\WindowsPhone\\v$(TargetPlatformVersion)\\Microsoft.Cpp.WindowsPhone.$(TargetPlatformVersion).targets\" />\n  <ImportGroup Label=\"ExtensionTargets\">\n  </ImportGroup>\n</Project>\n"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/proj.wp8-xaml/AppComponent/mir9Component.vcxproj.filters",
    "content": "﻿<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<Project ToolsVersion=\"4.0\" xmlns=\"http://schemas.microsoft.com/developer/msbuild/2003\">\n  <ItemGroup>\n    <ClCompile Include=\"src\\Cocos2dRenderer.cpp\">\n      <Filter>src</Filter>\n    </ClCompile>\n    <ClCompile Include=\"src\\Direct3DContentProvider.cpp\">\n      <Filter>src</Filter>\n    </ClCompile>\n    <ClCompile Include=\"src\\Direct3DInterop.cpp\">\n      <Filter>src</Filter>\n    </ClCompile>\n    <ClCompile Include=\"src\\DirectXBase.cpp\">\n      <Filter>src</Filter>\n    </ClCompile>\n    <ClCompile Include=\"src\\EditBoxEvent.cpp\">\n      <Filter>src</Filter>\n    </ClCompile>\n    <ClCompile Include=\"..\\..\\Classes\\AppDelegate.cpp\">\n      <Filter>Classes</Filter>\n    </ClCompile>\n    <ClCompile Include=\"src\\pch.cpp\">\n      <Filter>src</Filter>\n    </ClCompile>\n    <ClCompile Include=\"..\\..\\Classes\\ConfigParser.cpp\">\n      <Filter>Classes</Filter>\n    </ClCompile>\n    <ClCompile Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\ProjectConfig\\ProjectConfig.cpp\">\n      <Filter>Classes\\quick-src\\ProjectConfig</Filter>\n    </ClCompile>\n    <ClCompile Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\ProjectConfig\\SimulatorConfig.cpp\">\n      <Filter>Classes\\quick-src\\ProjectConfig</Filter>\n    </ClCompile>\n    <ClCompile Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\lua_extensions\\cjson\\fpconv.c\">\n      <Filter>Classes\\quick-src\\lua_extensions\\cjson</Filter>\n    </ClCompile>\n    <ClCompile Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\lua_extensions\\cjson\\lua_cjson.c\">\n      <Filter>Classes\\quick-src\\lua_extensions\\cjson</Filter>\n    </ClCompile>\n    <ClCompile Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\lua_extensions\\cjson\\strbuf.c\">\n      <Filter>Classes\\quick-src\\lua_extensions\\cjson</Filter>\n    </ClCompile>\n    <ClCompile Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\lua_extensions\\lpack\\lpack.c\">\n      <Filter>Classes\\quick-src\\lua_extensions\\lpack</Filter>\n    </ClCompile>\n    <ClCompile Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\lua_extensions\\lsqlite3\\lsqlite3.c\">\n      <Filter>Classes\\quick-src\\lua_extensions\\lsqlite3</Filter>\n    </ClCompile>\n    <ClCompile Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\lua_extensions\\lsqlite3\\sqlite3.c\">\n      <Filter>Classes\\quick-src\\lua_extensions\\lsqlite3</Filter>\n    </ClCompile>\n    <ClCompile Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\lua_extensions\\zlib\\lua_zlib.c\">\n      <Filter>Classes\\quick-src\\lua_extensions\\zlib</Filter>\n    </ClCompile>\n    <ClCompile Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\lua_extensions\\lua_extensions_more.c\">\n      <Filter>Classes\\quick-src\\lua_extensions</Filter>\n    </ClCompile>\n    <ClCompile Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\apptools\\HelperFunc.cpp\">\n      <Filter>Classes\\quick-src\\extra\\apptools</Filter>\n    </ClCompile>\n    <ClCompile Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\crypto\\CCCrypto.cpp\">\n      <Filter>Classes\\quick-src\\extra\\crypto</Filter>\n    </ClCompile>\n    <ClCompile Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\crypto\\base64\\libbase64.c\">\n      <Filter>Classes\\quick-src\\extra\\crypto</Filter>\n    </ClCompile>\n    <ClCompile Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\crypto\\md5\\md5.c\">\n      <Filter>Classes\\quick-src\\extra\\crypto</Filter>\n    </ClCompile>\n    <ClCompile Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\filters\\CCBlurFilter.cpp\">\n      <Filter>Classes\\quick-src\\extra\\filters\\filters</Filter>\n    </ClCompile>\n    <ClCompile Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\filters\\CCBrightnessFilter.cpp\">\n      <Filter>Classes\\quick-src\\extra\\filters\\filters</Filter>\n    </ClCompile>\n    <ClCompile Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\filters\\CCContrastFilter.cpp\">\n      <Filter>Classes\\quick-src\\extra\\filters\\filters</Filter>\n    </ClCompile>\n    <ClCompile Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\filters\\CCCustomFilter.cpp\">\n      <Filter>Classes\\quick-src\\extra\\filters\\filters</Filter>\n    </ClCompile>\n    <ClCompile Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\filters\\CCDropShadowFilter.cpp\">\n      <Filter>Classes\\quick-src\\extra\\filters\\filters</Filter>\n    </ClCompile>\n    <ClCompile Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\filters\\CCExposureFilter.cpp\">\n      <Filter>Classes\\quick-src\\extra\\filters\\filters</Filter>\n    </ClCompile>\n    <ClCompile Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\filters\\CCFilter.cpp\">\n      <Filter>Classes\\quick-src\\extra\\filters\\filters</Filter>\n    </ClCompile>\n    <ClCompile Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\filters\\CCGammaFilter.cpp\">\n      <Filter>Classes\\quick-src\\extra\\filters\\filters</Filter>\n    </ClCompile>\n    <ClCompile Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\filters\\CCGrayFilter.cpp\">\n      <Filter>Classes\\quick-src\\extra\\filters\\filters</Filter>\n    </ClCompile>\n    <ClCompile Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\filters\\CCHazeFilter.cpp\">\n      <Filter>Classes\\quick-src\\extra\\filters\\filters</Filter>\n    </ClCompile>\n    <ClCompile Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\filters\\CCHueFilter.cpp\">\n      <Filter>Classes\\quick-src\\extra\\filters\\filters</Filter>\n    </ClCompile>\n    <ClCompile Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\filters\\CCMaskFilter.cpp\">\n      <Filter>Classes\\quick-src\\extra\\filters\\filters</Filter>\n    </ClCompile>\n    <ClCompile Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\filters\\CCRGBFilter.cpp\">\n      <Filter>Classes\\quick-src\\extra\\filters\\filters</Filter>\n    </ClCompile>\n    <ClCompile Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\filters\\CCSaturationFilter.cpp\">\n      <Filter>Classes\\quick-src\\extra\\filters\\filters</Filter>\n    </ClCompile>\n    <ClCompile Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\filters\\CCSepiaFilter.cpp\">\n      <Filter>Classes\\quick-src\\extra\\filters\\filters</Filter>\n    </ClCompile>\n    <ClCompile Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\filters\\CCSharpenFilter.cpp\">\n      <Filter>Classes\\quick-src\\extra\\filters\\filters</Filter>\n    </ClCompile>\n    <ClCompile Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\filters\\CCTestFilter.cpp\">\n      <Filter>Classes\\quick-src\\extra\\filters\\filters</Filter>\n    </ClCompile>\n    <ClCompile Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\shaders\\ccFilterShaders.cpp\">\n      <Filter>Classes\\quick-src\\extra\\filters\\shaders</Filter>\n    </ClCompile>\n    <ClCompile Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\shaders\\FilterShaders.cpp\">\n      <Filter>Classes\\quick-src\\extra\\filters\\shaders</Filter>\n    </ClCompile>\n    <ClCompile Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\nodes\\CCFilteredSprite.cpp\">\n      <Filter>Classes\\quick-src\\extra\\filters\\nodes</Filter>\n    </ClCompile>\n    <ClCompile Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\luabinding\\cocos2dx_extra_luabinding.cpp\">\n      <Filter>Classes\\quick-src\\extra\\luabinding</Filter>\n    </ClCompile>\n    <ClCompile Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\luabinding\\HelperFunc_luabinding.cpp\">\n      <Filter>Classes\\quick-src\\extra\\luabinding</Filter>\n    </ClCompile>\n    <ClCompile Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\luabinding\\lua_cocos2dx_extension_filter_auto.cpp\">\n      <Filter>Classes\\quick-src\\extra\\luabinding</Filter>\n    </ClCompile>\n    <ClCompile Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\network\\CCHTTPRequest.cpp\">\n      <Filter>Classes\\quick-src\\extra\\network</Filter>\n    </ClCompile>\n    <ClCompile Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\network\\CCNetwork.cpp\">\n      <Filter>Classes\\quick-src\\extra\\network</Filter>\n    </ClCompile>\n    <ClCompile Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\platform\\wp8\\CCNetworkWP8.cpp\">\n      <Filter>Classes\\quick-src\\extra\\platform\\wp8</Filter>\n    </ClCompile>\n    <ClCompile Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\platform\\wp8\\CCCryptoWP8.cpp\">\n      <Filter>Classes\\quick-src\\extra\\platform\\wp8</Filter>\n    </ClCompile>\n    <ClCompile Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\platform\\wp8\\CCNativeWP8.cpp\">\n      <Filter>Classes\\quick-src\\extra\\platform\\wp8</Filter>\n    </ClCompile>\n    <ClCompile Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\nanovg\\nanovg\\nanovg.c\">\n      <Filter>Classes\\quick-src\\extra\\nanovg\\nanovg</Filter>\n    </ClCompile>\n    <ClCompile Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\nanovg\\nanonode\\NVGDrawNode.cpp\">\n      <Filter>Classes\\quick-src\\extra\\nanovg\\nanonode</Filter>\n    </ClCompile>\n    <ClCompile Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\nanovg\\nanonode\\NVGNode.cpp\">\n      <Filter>Classes\\quick-src\\extra\\nanovg\\nanonode</Filter>\n    </ClCompile>\n    <ClCompile Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\luabinding\\lua_cocos2dx_extension_nanovg_auto.cpp\">\n      <Filter>Classes\\quick-src\\extra\\luabinding</Filter>\n    </ClCompile>\n    <ClCompile Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\luabinding\\lua_cocos2dx_extension_nanovg_manual.cpp\">\n      <Filter>Classes\\quick-src\\extra\\luabinding</Filter>\n    </ClCompile>\n  </ItemGroup>\n  <ItemGroup>\n    <ClInclude Include=\"src\\Cocos2dRenderer.h\">\n      <Filter>src</Filter>\n    </ClInclude>\n    <ClInclude Include=\"src\\Direct3DContentProvider.h\">\n      <Filter>src</Filter>\n    </ClInclude>\n    <ClInclude Include=\"src\\Direct3DInterop.h\">\n      <Filter>src</Filter>\n    </ClInclude>\n    <ClInclude Include=\"src\\DirectXBase.h\">\n      <Filter>src</Filter>\n    </ClInclude>\n    <ClInclude Include=\"src\\DirectXHelper.h\">\n      <Filter>src</Filter>\n    </ClInclude>\n    <ClInclude Include=\"src\\EditBoxEvent.h\">\n      <Filter>src</Filter>\n    </ClInclude>\n    <ClInclude Include=\"..\\..\\Classes\\AppDelegate.h\">\n      <Filter>Classes</Filter>\n    </ClInclude>\n    <ClInclude Include=\"src\\pch.h\">\n      <Filter>src</Filter>\n    </ClInclude>\n    <ClInclude Include=\"..\\..\\Classes\\ConfigParser.h\">\n      <Filter>Classes</Filter>\n    </ClInclude>\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\ProjectConfig\\ProjectConfig.h\">\n      <Filter>Classes\\quick-src\\ProjectConfig</Filter>\n    </ClInclude>\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\ProjectConfig\\SimulatorConfig.h\">\n      <Filter>Classes\\quick-src\\ProjectConfig</Filter>\n    </ClInclude>\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\lua_extensions\\cjson\\fpconv.h\">\n      <Filter>Classes\\quick-src\\lua_extensions\\cjson</Filter>\n    </ClInclude>\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\lua_extensions\\cjson\\lua_cjson.h\">\n      <Filter>Classes\\quick-src\\lua_extensions\\cjson</Filter>\n    </ClInclude>\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\lua_extensions\\cjson\\strbuf.h\">\n      <Filter>Classes\\quick-src\\lua_extensions\\cjson</Filter>\n    </ClInclude>\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\lua_extensions\\lpack\\lpack.h\">\n      <Filter>Classes\\quick-src\\lua_extensions\\lpack</Filter>\n    </ClInclude>\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\lua_extensions\\lsqlite3\\lsqlite3.h\">\n      <Filter>Classes\\quick-src\\lua_extensions\\lsqlite3</Filter>\n    </ClInclude>\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\lua_extensions\\lsqlite3\\sqlite3.h\">\n      <Filter>Classes\\quick-src\\lua_extensions\\lsqlite3</Filter>\n    </ClInclude>\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\lua_extensions\\zlib\\lua_zlib.h\">\n      <Filter>Classes\\quick-src\\lua_extensions\\zlib</Filter>\n    </ClInclude>\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\lua_extensions\\lua_extensions_more.h\">\n      <Filter>Classes\\quick-src\\lua_extensions</Filter>\n    </ClInclude>\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\apptools\\HelperFunc.h\">\n      <Filter>Classes\\quick-src\\extra\\apptools</Filter>\n    </ClInclude>\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\crypto\\CCCrypto.h\">\n      <Filter>Classes\\quick-src\\extra\\crypto</Filter>\n    </ClInclude>\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\crypto\\base64\\libbase64.h\">\n      <Filter>Classes\\quick-src\\extra\\crypto</Filter>\n    </ClInclude>\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\crypto\\md5\\md5.h\">\n      <Filter>Classes\\quick-src\\extra\\crypto</Filter>\n    </ClInclude>\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\cocos2dFilters.h\">\n      <Filter>Classes\\quick-src\\extra\\filters</Filter>\n    </ClInclude>\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\filters\\CCBlurFilter.h\">\n      <Filter>Classes\\quick-src\\extra\\filters\\filters</Filter>\n    </ClInclude>\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\filters\\CCBrightnessFilter.h\">\n      <Filter>Classes\\quick-src\\extra\\filters\\filters</Filter>\n    </ClInclude>\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\filters\\CCContrastFilter.h\">\n      <Filter>Classes\\quick-src\\extra\\filters\\filters</Filter>\n    </ClInclude>\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\filters\\CCCustomFilter.h\">\n      <Filter>Classes\\quick-src\\extra\\filters\\filters</Filter>\n    </ClInclude>\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\filters\\CCDropShadowFilter.h\">\n      <Filter>Classes\\quick-src\\extra\\filters\\filters</Filter>\n    </ClInclude>\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\filters\\CCExposureFilter.h\">\n      <Filter>Classes\\quick-src\\extra\\filters\\filters</Filter>\n    </ClInclude>\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\filters\\CCFilter.h\">\n      <Filter>Classes\\quick-src\\extra\\filters\\filters</Filter>\n    </ClInclude>\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\filters\\CCGammaFilter.h\">\n      <Filter>Classes\\quick-src\\extra\\filters\\filters</Filter>\n    </ClInclude>\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\filters\\CCGrayFilter.h\">\n      <Filter>Classes\\quick-src\\extra\\filters\\filters</Filter>\n    </ClInclude>\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\filters\\CCHazeFilter.h\">\n      <Filter>Classes\\quick-src\\extra\\filters\\filters</Filter>\n    </ClInclude>\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\filters\\CCHueFilter.h\">\n      <Filter>Classes\\quick-src\\extra\\filters\\filters</Filter>\n    </ClInclude>\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\filters\\CCMaskFilter.h\">\n      <Filter>Classes\\quick-src\\extra\\filters\\filters</Filter>\n    </ClInclude>\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\filters\\CCRGBFilter.h\">\n      <Filter>Classes\\quick-src\\extra\\filters\\filters</Filter>\n    </ClInclude>\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\filters\\CCSaturationFilter.h\">\n      <Filter>Classes\\quick-src\\extra\\filters\\filters</Filter>\n    </ClInclude>\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\filters\\CCSepiaFilter.h\">\n      <Filter>Classes\\quick-src\\extra\\filters\\filters</Filter>\n    </ClInclude>\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\filters\\CCSharpenFilter.h\">\n      <Filter>Classes\\quick-src\\extra\\filters\\filters</Filter>\n    </ClInclude>\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\filters\\CCTestFilter.h\">\n      <Filter>Classes\\quick-src\\extra\\filters\\filters</Filter>\n    </ClInclude>\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\shaders\\ccFilterShader_blur_frag.h\">\n      <Filter>Classes\\quick-src\\extra\\filters\\shaders</Filter>\n    </ClInclude>\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\shaders\\ccFilterShader_brightness_frag.h\">\n      <Filter>Classes\\quick-src\\extra\\filters\\shaders</Filter>\n    </ClInclude>\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\shaders\\ccFilterShader_colorramp_frag.h\">\n      <Filter>Classes\\quick-src\\extra\\filters\\shaders</Filter>\n    </ClInclude>\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\shaders\\ccFilterShader_contrast_frag.h\">\n      <Filter>Classes\\quick-src\\extra\\filters\\shaders</Filter>\n    </ClInclude>\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\shaders\\ccFilterShader_drop_shadow_frag.h\">\n      <Filter>Classes\\quick-src\\extra\\filters\\shaders</Filter>\n    </ClInclude>\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\shaders\\ccFilterShader_drop_shadow_vert.h\">\n      <Filter>Classes\\quick-src\\extra\\filters\\shaders</Filter>\n    </ClInclude>\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\shaders\\ccFilterShader_emboss_frag.h\">\n      <Filter>Classes\\quick-src\\extra\\filters\\shaders</Filter>\n    </ClInclude>\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\shaders\\ccFilterShader_embossmov_frag.h\">\n      <Filter>Classes\\quick-src\\extra\\filters\\shaders</Filter>\n    </ClInclude>\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\shaders\\ccFilterShader_exposure_frag.h\">\n      <Filter>Classes\\quick-src\\extra\\filters\\shaders</Filter>\n    </ClInclude>\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\shaders\\ccFilterShader_gamma_frag.h\">\n      <Filter>Classes\\quick-src\\extra\\filters\\shaders</Filter>\n    </ClInclude>\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\shaders\\ccFilterShader_gaussian_blur_frag.h\">\n      <Filter>Classes\\quick-src\\extra\\filters\\shaders</Filter>\n    </ClInclude>\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\shaders\\ccFilterShader_gaussian_hblur_frag.h\">\n      <Filter>Classes\\quick-src\\extra\\filters\\shaders</Filter>\n    </ClInclude>\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\shaders\\ccFilterShader_gaussian_vblur_frag.h\">\n      <Filter>Classes\\quick-src\\extra\\filters\\shaders</Filter>\n    </ClInclude>\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\shaders\\ccFilterShader_grass_frag.h\">\n      <Filter>Classes\\quick-src\\extra\\filters\\shaders</Filter>\n    </ClInclude>\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\shaders\\ccFilterShader_gray_frag.h\">\n      <Filter>Classes\\quick-src\\extra\\filters\\shaders</Filter>\n    </ClInclude>\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\shaders\\ccFilterShader_haze_frag.h\">\n      <Filter>Classes\\quick-src\\extra\\filters\\shaders</Filter>\n    </ClInclude>\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\shaders\\ccFilterShader_hblur_vert.h\">\n      <Filter>Classes\\quick-src\\extra\\filters\\shaders</Filter>\n    </ClInclude>\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\shaders\\ccFilterShader_hue_frag.h\">\n      <Filter>Classes\\quick-src\\extra\\filters\\shaders</Filter>\n    </ClInclude>\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\shaders\\ccFilterShader_motion_blur_frag.h\">\n      <Filter>Classes\\quick-src\\extra\\filters\\shaders</Filter>\n    </ClInclude>\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\shaders\\ccFilterShader_motion_blur_vert.h\">\n      <Filter>Classes\\quick-src\\extra\\filters\\shaders</Filter>\n    </ClInclude>\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\shaders\\ccFilterShader_rgb_frag.h\">\n      <Filter>Classes\\quick-src\\extra\\filters\\shaders</Filter>\n    </ClInclude>\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\shaders\\ccFilterShader_saturation_frag.h\">\n      <Filter>Classes\\quick-src\\extra\\filters\\shaders</Filter>\n    </ClInclude>\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\shaders\\ccFilterShader_sepia_frag.h\">\n      <Filter>Classes\\quick-src\\extra\\filters\\shaders</Filter>\n    </ClInclude>\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\shaders\\ccFilterShader_sharpen_frag.h\">\n      <Filter>Classes\\quick-src\\extra\\filters\\shaders</Filter>\n    </ClInclude>\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\shaders\\ccFilterShader_sharpen_vert.h\">\n      <Filter>Classes\\quick-src\\extra\\filters\\shaders</Filter>\n    </ClInclude>\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\shaders\\ccFilterShader_test_frag.h\">\n      <Filter>Classes\\quick-src\\extra\\filters\\shaders</Filter>\n    </ClInclude>\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\shaders\\ccFilterShader_test_vert.h\">\n      <Filter>Classes\\quick-src\\extra\\filters\\shaders</Filter>\n    </ClInclude>\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\shaders\\ccFilterShader_vblur_vert.h\">\n      <Filter>Classes\\quick-src\\extra\\filters\\shaders</Filter>\n    </ClInclude>\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\shaders\\ccFilterShader_zoom_blur_frag.h\">\n      <Filter>Classes\\quick-src\\extra\\filters\\shaders</Filter>\n    </ClInclude>\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\shaders\\ccFilterShaders.h\">\n      <Filter>Classes\\quick-src\\extra\\filters\\shaders</Filter>\n    </ClInclude>\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\shaders\\FilterShaders.h\">\n      <Filter>Classes\\quick-src\\extra\\filters\\shaders</Filter>\n    </ClInclude>\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\nodes\\CCFilteredSprite.h\">\n      <Filter>Classes\\quick-src\\extra\\filters\\nodes</Filter>\n    </ClInclude>\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\luabinding\\cocos2dx_extra_luabinding.h\">\n      <Filter>Classes\\quick-src\\extra\\luabinding</Filter>\n    </ClInclude>\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\luabinding\\HelperFunc_luabinding.h\">\n      <Filter>Classes\\quick-src\\extra\\luabinding</Filter>\n    </ClInclude>\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\luabinding\\lua_cocos2dx_extension_filter_auto.hpp\">\n      <Filter>Classes\\quick-src\\extra\\luabinding</Filter>\n    </ClInclude>\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\native\\CCAlertViewDelegate.h\">\n      <Filter>Classes\\quick-src\\extra\\native</Filter>\n    </ClInclude>\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\native\\CCNative.h\">\n      <Filter>Classes\\quick-src\\extra\\native</Filter>\n    </ClInclude>\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\network\\CCHTTPRequest.h\">\n      <Filter>Classes\\quick-src\\extra\\network</Filter>\n    </ClInclude>\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\network\\CCHTTPRequestDelegate.h\">\n      <Filter>Classes\\quick-src\\extra\\network</Filter>\n    </ClInclude>\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\network\\CCNetwork.h\">\n      <Filter>Classes\\quick-src\\extra\\network</Filter>\n    </ClInclude>\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\nanovg\\nanovg\\fontstash.h\">\n      <Filter>Classes\\quick-src\\extra\\nanovg\\nanovg</Filter>\n    </ClInclude>\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\nanovg\\nanovg\\nanovg.h\">\n      <Filter>Classes\\quick-src\\extra\\nanovg\\nanovg</Filter>\n    </ClInclude>\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\nanovg\\nanovg\\nanovg_gl.h\">\n      <Filter>Classes\\quick-src\\extra\\nanovg\\nanovg</Filter>\n    </ClInclude>\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\nanovg\\nanovg\\nanovg_gl_utils.h\">\n      <Filter>Classes\\quick-src\\extra\\nanovg\\nanovg</Filter>\n    </ClInclude>\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\nanovg\\nanovg\\stb_image.h\">\n      <Filter>Classes\\quick-src\\extra\\nanovg\\nanovg</Filter>\n    </ClInclude>\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\nanovg\\nanovg\\stb_truetype.h\">\n      <Filter>Classes\\quick-src\\extra\\nanovg\\nanovg</Filter>\n    </ClInclude>\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\nanovg\\nanonode\\NVGDrawNode.h\">\n      <Filter>Classes\\quick-src\\extra\\nanovg\\nanonode</Filter>\n    </ClInclude>\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\nanovg\\nanonode\\NVGNode.h\">\n      <Filter>Classes\\quick-src\\extra\\nanovg\\nanonode</Filter>\n    </ClInclude>\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\luabinding\\lua_cocos2dx_extension_nanovg_auto.hpp\">\n      <Filter>Classes\\quick-src\\extra\\luabinding</Filter>\n    </ClInclude>\n    <ClInclude Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\luabinding\\lua_cocos2dx_extension_nanovg_manual.hpp\">\n      <Filter>Classes\\quick-src\\extra\\luabinding</Filter>\n    </ClInclude>\n  </ItemGroup>\n  <ItemGroup>\n    <Filter Include=\"Classes\">\n      <UniqueIdentifier>{ddb0f381-1dc4-44a0-ab28-0f672a551265}</UniqueIdentifier>\n    </Filter>\n    <Filter Include=\"src\">\n      <UniqueIdentifier>{6fcff44b-bb9f-4ed9-8553-558855bc91e3}</UniqueIdentifier>\n    </Filter>\n    <Filter Include=\"Classes\\quick-src\">\n      <UniqueIdentifier>{92d0f3a5-4535-417c-ab53-b414ff9d9e91}</UniqueIdentifier>\n    </Filter>\n    <Filter Include=\"Classes\\quick-src\\extra\">\n      <UniqueIdentifier>{c15b65d5-5187-42d9-91b9-84057e9f07d1}</UniqueIdentifier>\n    </Filter>\n    <Filter Include=\"Classes\\quick-src\\lua_extensions\">\n      <UniqueIdentifier>{d3269a20-8373-4e13-b6bd-d5463fd802e6}</UniqueIdentifier>\n    </Filter>\n    <Filter Include=\"Classes\\quick-src\\ProjectConfig\">\n      <UniqueIdentifier>{3c75d340-9a03-46dc-be08-b2962a09ca50}</UniqueIdentifier>\n    </Filter>\n    <Filter Include=\"Classes\\quick-src\\lua_extensions\\cjson\">\n      <UniqueIdentifier>{e48830d7-79f2-4a7f-98d8-ddd16f5f902f}</UniqueIdentifier>\n    </Filter>\n    <Filter Include=\"Classes\\quick-src\\lua_extensions\\lpack\">\n      <UniqueIdentifier>{aeb46f4b-8b94-455b-af64-3242cae6ecf0}</UniqueIdentifier>\n    </Filter>\n    <Filter Include=\"Classes\\quick-src\\lua_extensions\\lsqlite3\">\n      <UniqueIdentifier>{946b3c8b-514d-404a-ad66-33807d6dda5e}</UniqueIdentifier>\n    </Filter>\n    <Filter Include=\"Classes\\quick-src\\lua_extensions\\zlib\">\n      <UniqueIdentifier>{f5e4bec9-e1f5-492e-bbcb-d37b4d3d024a}</UniqueIdentifier>\n    </Filter>\n    <Filter Include=\"Classes\\quick-src\\extra\\apptools\">\n      <UniqueIdentifier>{96e0d8b3-0f13-49c6-8553-d15e8755271c}</UniqueIdentifier>\n    </Filter>\n    <Filter Include=\"Classes\\quick-src\\extra\\crypto\">\n      <UniqueIdentifier>{6b7e0495-27d2-49a5-be93-6f57b5b3da6b}</UniqueIdentifier>\n    </Filter>\n    <Filter Include=\"Classes\\quick-src\\extra\\filters\">\n      <UniqueIdentifier>{8315a2b1-f18a-461c-a958-b9dc9787295f}</UniqueIdentifier>\n    </Filter>\n    <Filter Include=\"Classes\\quick-src\\extra\\luabinding\">\n      <UniqueIdentifier>{e7d3eef1-b7e7-4ac5-ae21-5fe4185b50d1}</UniqueIdentifier>\n    </Filter>\n    <Filter Include=\"Classes\\quick-src\\extra\\native\">\n      <UniqueIdentifier>{c4056d0a-13f9-438d-914f-e6b090830e30}</UniqueIdentifier>\n    </Filter>\n    <Filter Include=\"Classes\\quick-src\\extra\\network\">\n      <UniqueIdentifier>{4554d93d-ffb4-4d09-9105-c0f90bc8e74a}</UniqueIdentifier>\n    </Filter>\n    <Filter Include=\"Classes\\quick-src\\extra\\platform\">\n      <UniqueIdentifier>{ea5811d6-41d4-46b2-b309-ba1b7a631d49}</UniqueIdentifier>\n    </Filter>\n    <Filter Include=\"Classes\\quick-src\\extra\\filters\\filters\">\n      <UniqueIdentifier>{819418cc-c0ea-43ec-abb0-00337064aa71}</UniqueIdentifier>\n    </Filter>\n    <Filter Include=\"Classes\\quick-src\\extra\\filters\\nodes\">\n      <UniqueIdentifier>{e6224057-935d-45fa-bc24-3ba5b000bb80}</UniqueIdentifier>\n    </Filter>\n    <Filter Include=\"Classes\\quick-src\\extra\\filters\\shaders\">\n      <UniqueIdentifier>{3f58759b-de43-4b2a-be24-0478b22ff35d}</UniqueIdentifier>\n    </Filter>\n    <Filter Include=\"Classes\\quick-src\\extra\\platform\\wp8\">\n      <UniqueIdentifier>{981a71f2-f77b-42c9-9a54-79a837465a66}</UniqueIdentifier>\n    </Filter>\n    <Filter Include=\"Classes\\quick-src\\extra\\nanovg\">\n      <UniqueIdentifier>{e11e0e99-d202-4d19-ab9b-4494be8bf622}</UniqueIdentifier>\n    </Filter>\n    <Filter Include=\"Classes\\quick-src\\extra\\nanovg\\nanovg\">\n      <UniqueIdentifier>{44088d78-37aa-49d1-80d0-6734ebd7a6fe}</UniqueIdentifier>\n    </Filter>\n    <Filter Include=\"Classes\\quick-src\\extra\\nanovg\\nanonode\">\n      <UniqueIdentifier>{0bc34e79-dffd-404b-8e1b-f61da834e11f}</UniqueIdentifier>\n    </Filter>\n  </ItemGroup>\n  <ItemGroup>\n    <None Include=\"$(AngleBinPath)libEGL_phone.dll\" />\n    <None Include=\"$(AngleBinPath)libGLESv2_phone.dll\" />\n    <None Include=\"$(WebsocketsBinPath)libwebsockets.dll\" />\n    <None Include=\"$(SQLiteBinPath)sqlite3.dll\" />\n    <None Include=\"$(CurlBinPath)libcurl.dll\" />\n    <None Include=\"$(CurlBinPath)libeay32.dll\" />\n    <None Include=\"$(CurlBinPath)ssleay32.dll\" />\n    <None Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\shaders\\example_bloom.fsh\">\n      <Filter>Classes\\quick-src\\extra\\filters\\shaders</Filter>\n    </None>\n    <None Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\shaders\\example_Blur.fsh\">\n      <Filter>Classes\\quick-src\\extra\\filters\\shaders</Filter>\n    </None>\n    <None Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\shaders\\example_celShading.fsh\">\n      <Filter>Classes\\quick-src\\extra\\filters\\shaders</Filter>\n    </None>\n    <None Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\shaders\\example_ColorBars.fsh\">\n      <Filter>Classes\\quick-src\\extra\\filters\\shaders</Filter>\n    </None>\n    <None Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\shaders\\example_ColorBars.vsh\">\n      <Filter>Classes\\quick-src\\extra\\filters\\shaders</Filter>\n    </None>\n    <None Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\shaders\\example_edgeDetection.fsh\">\n      <Filter>Classes\\quick-src\\extra\\filters\\shaders</Filter>\n    </None>\n    <None Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\shaders\\example_Flower.fsh\">\n      <Filter>Classes\\quick-src\\extra\\filters\\shaders</Filter>\n    </None>\n    <None Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\shaders\\example_greyScale.fsh\">\n      <Filter>Classes\\quick-src\\extra\\filters\\shaders</Filter>\n    </None>\n    <None Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\shaders\\example_Heart.fsh\">\n      <Filter>Classes\\quick-src\\extra\\filters\\shaders</Filter>\n    </None>\n    <None Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\shaders\\example_HorizontalColor.fsh\">\n      <Filter>Classes\\quick-src\\extra\\filters\\shaders</Filter>\n    </None>\n    <None Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\shaders\\example_Julia.fsh\">\n      <Filter>Classes\\quick-src\\extra\\filters\\shaders</Filter>\n    </None>\n    <None Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\shaders\\example_lensFlare.fsh\">\n      <Filter>Classes\\quick-src\\extra\\filters\\shaders</Filter>\n    </None>\n    <None Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\shaders\\example_Mandelbrot.fsh\">\n      <Filter>Classes\\quick-src\\extra\\filters\\shaders</Filter>\n    </None>\n    <None Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\shaders\\example_Monjori.fsh\">\n      <Filter>Classes\\quick-src\\extra\\filters\\shaders</Filter>\n    </None>\n    <None Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\shaders\\example_MultiTexture.fsh\">\n      <Filter>Classes\\quick-src\\extra\\filters\\shaders</Filter>\n    </None>\n    <None Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\shaders\\example_MultiTexture.vsh\">\n      <Filter>Classes\\quick-src\\extra\\filters\\shaders</Filter>\n    </None>\n    <None Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\shaders\\example_Noisy.fsh\">\n      <Filter>Classes\\quick-src\\extra\\filters\\shaders</Filter>\n    </None>\n    <None Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\shaders\\example_normal.fsh\">\n      <Filter>Classes\\quick-src\\extra\\filters\\shaders</Filter>\n    </None>\n    <None Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\shaders\\example_outline.fsh\">\n      <Filter>Classes\\quick-src\\extra\\filters\\shaders</Filter>\n    </None>\n    <None Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\shaders\\example_Plasma.fsh\">\n      <Filter>Classes\\quick-src\\extra\\filters\\shaders</Filter>\n    </None>\n    <None Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\shaders\\example_sepia.fsh\">\n      <Filter>Classes\\quick-src\\extra\\filters\\shaders</Filter>\n    </None>\n    <None Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\shaders\\example_Twist.fsh\">\n      <Filter>Classes\\quick-src\\extra\\filters\\shaders</Filter>\n    </None>\n    <None Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\shaders\\shadertoy_FireBall.fsh\">\n      <Filter>Classes\\quick-src\\extra\\filters\\shaders</Filter>\n    </None>\n    <None Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\shaders\\shadertoy_Glow.fsh\">\n      <Filter>Classes\\quick-src\\extra\\filters\\shaders</Filter>\n    </None>\n    <None Include=\"$(QUICK_V3_ROOT)\\quick\\lib\\quick-src\\extra\\filters\\shaders\\shadertoy_LensFlare.fsh\">\n      <Filter>Classes\\quick-src\\extra\\filters\\shaders</Filter>\n    </None>\n  </ItemGroup>\n</Project>"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/proj.wp8-xaml/AppComponent/src/Cocos2dRenderer.cpp",
    "content": "﻿/****************************************************************************\nCopyright (c) 2013 cocos2d-x.org\nCopyright (c) Microsoft Open Technologies, Inc.\n\nhttp://www.cocos2d-x.org\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in\nall copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\nTHE SOFTWARE.\n****************************************************************************/\n\n#include \"Cocos2dRenderer.h\"\n#include \"cocos2d.h\"\n#include \"CCApplication.h\"\n#include \"CCGLViewImpl-wp8.h\"\n#include \"AppDelegate.h\"\n#include <ppltasks.h>\n\nusing namespace Concurrency;\nusing namespace DirectX;\nusing namespace Microsoft::WRL;\nusing namespace Windows::Foundation;\nusing namespace Windows::UI::Core;\n\nUSING_NS_CC;\n\nCocos2dRenderer::Cocos2dRenderer(Windows::Graphics::Display::DisplayOrientations orientation): mInitialized(false), m_loadingComplete(false), m_delegate(nullptr), m_messageBoxDelegate(nullptr)\n{\n    mApp = new AppDelegate();\n    m_orientation = orientation;\n}\n\n// Creates and restores Cocos2d-x after DirectX and Angle contexts are created or updated\nvoid Cocos2dRenderer::CreateGLResources()\n{\n    auto director = cocos2d::Director::getInstance();\n\n    if(!mInitialized)\n    {\n        mInitialized = true;\n        GLViewImpl* glview = GLViewImpl::create(\"Test Cpp\");\n\t    glview->Create(m_eglDisplay, m_eglContext, m_eglSurface, m_renderTargetSize.Width, m_renderTargetSize.Height,m_orientation);\n        director->setOpenGLView(glview);\n        glview->SetXamlEventDelegate(m_delegate);\n        glview->SetXamlMessageBoxDelegate(m_messageBoxDelegate);\n        glview->SetXamlEditBoxDelegate(m_editBoxDelegate);\n        CCApplication::getInstance()->run();\n    }\n    else\n    {\n        cocos2d::GL::invalidateStateCache();\n        cocos2d::ShaderCache::getInstance()->reloadDefaultGLPrograms();\n        cocos2d::DrawPrimitives::init();\n        cocos2d::VolatileTextureMgr::reloadAllTextures();\n        cocos2d::EventCustom recreatedEvent(EVENT_RENDERER_RECREATED);\n        director->getEventDispatcher()->dispatchEvent(&recreatedEvent);\n        cocos2d::Application::getInstance()->applicationWillEnterForeground();\n        director->setGLDefaultValues();\n    }\n\n    m_loadingComplete = true;\n}\n\nvoid Cocos2dRenderer::Connect()\n{\n\n}\n\n// purge Cocos2d-x gl GL resourses since the DirectX/Angle Context has been lost \nvoid Cocos2dRenderer::Disconnect()\n{\n    Application::getInstance()->applicationDidEnterBackground();\n    cocos2d::EventCustom backgroundEvent(EVENT_COME_TO_BACKGROUND);\n    cocos2d::Director::getInstance()->getEventDispatcher()->dispatchEvent(&backgroundEvent); \n    CloseAngle();\n    m_loadingComplete = false;\n}\n\n// save your game state here\nIAsyncAction^ Cocos2dRenderer::OnSuspending()\n{\n    return create_async([]() { \n        // save your game state here\n    });\n}\n\n\nvoid Cocos2dRenderer::OnUpdateDevice()\n{\n    //GLView* glview = GLView::sharedOpenGLView();\n\tGLViewImpl::sharedOpenGLView()->UpdateDevice(m_eglDisplay, m_eglContext, m_eglSurface);\n}\n\nvoid Cocos2dRenderer::OnOrientationChanged(Windows::Graphics::Display::DisplayOrientations orientation)\n{\n\tDirectXBase::OnOrientationChanged(orientation);\n    GLViewImpl::sharedOpenGLView()->UpdateOrientation(orientation);\n}\n\n// return true if eglSwapBuffers was called by OnRender()\nbool Cocos2dRenderer::OnRender()\n{\n    if(m_loadingComplete)\n    {\n        //GLView* glview = GLView::sharedOpenGLView();\n\t\tGLViewImpl::sharedOpenGLView()->Render();\n        return true; // eglSwapBuffers was called by glview->Render();\n    }\n    return false;\n}\n\nvoid Cocos2dRenderer::OnKeyPressed(Platform::String^ text)\n{\n    char szUtf8[8] = {0};\n    int nLen = WideCharToMultiByte(CP_UTF8, 0, (LPCWSTR)text->Data(), 1, szUtf8, sizeof(szUtf8), NULL, NULL);\n    IMEDispatcher::sharedDispatcher()->dispatchInsertText(szUtf8, nLen);\n}\n\nvoid Cocos2dRenderer::OnCocos2dKeyEvent(Cocos2dKeyEvent event)\n{\n    switch(event)\n    {\n    case Cocos2dKeyEvent::Escape:\n        //Director::getInstance()()->getKeypadDispatcher()->dispatchKeypadMSG(kTypeBackClicked);\n        break;\n\tcase Cocos2dKeyEvent::Back:\n        IMEDispatcher::sharedDispatcher()->dispatchDeleteBackward();\n        break;\n    case Cocos2dKeyEvent::Enter:\n\t\t//SetFocus(false);\n        IMEDispatcher::sharedDispatcher()->dispatchInsertText(\"\\n\", 1);\n        break;\n    default:\n        break;\n    }\n\n}\n\nvoid Cocos2dRenderer::SetXamlEventDelegate(Cocos2dEventDelegate^ delegate)\n{\n    m_delegate = delegate;\n    GLViewImpl* eglView = GLViewImpl::sharedOpenGLView();\n    if(eglView)\n    {\n        eglView->SetXamlEventDelegate(delegate);\n    }\n}\n\nvoid Cocos2dRenderer::SetXamlMessageBoxDelegate(Cocos2dMessageBoxDelegate^ delegate)\n{\n    m_messageBoxDelegate = delegate;\n    GLViewImpl* eglView = GLViewImpl::sharedOpenGLView();\n    if(eglView)\n    {\n        eglView->SetXamlMessageBoxDelegate(delegate);\n    }\n}\n\nvoid Cocos2dRenderer::SetXamlEditBoxDelegate(Cocos2dEditBoxDelegate^ delegate)\n{\n    m_editBoxDelegate = delegate;\n    GLViewImpl* eglView = GLViewImpl::sharedOpenGLView();\n    if(eglView)\n    {\n        eglView->SetXamlEditBoxDelegate(delegate);\n    }\n}\n\nvoid Cocos2dRenderer::SetXamlOpenURLDelegate(Cocos2dOpenURLDelegate^ delegate)\n{\n    m_openURLDelegate = delegate;\n    Application* app = Application::getInstance();\n    if (app)\n    {\n        app->SetXamlOpenURLDelegate(delegate);\n    }\n}\n"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/proj.wp8-xaml/AppComponent/src/Cocos2dRenderer.h",
    "content": "﻿/****************************************************************************\nCopyright (c) 2013 cocos2d-x.org\nCopyright (c) Microsoft Open Technologies, Inc.\n\nhttp://www.cocos2d-x.org\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in\nall copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\nTHE SOFTWARE.\n****************************************************************************/\n#pragma once\n\n#include \"InputEvent.h\"\n#include \"DirectXBase.h\"\n\nclass AppDelegate;\n \nref class Cocos2dRenderer sealed : public DirectXBase\n{\npublic:\n\tCocos2dRenderer(Windows::Graphics::Display::DisplayOrientations orientation);\n\n\t// Direct3DBase methods.\n\tvirtual void OnOrientationChanged(Windows::Graphics::Display::DisplayOrientations orientation) override;\n\tvirtual bool OnRender() override;\n    virtual void CreateGLResources() override;\n\n    void OnBackButton();\n    void OnKeyPressed(Platform::String^ text);\n    void OnCocos2dKeyEvent(cocos2d::Cocos2dKeyEvent event);\n    void SetXamlEventDelegate(cocos2d::Cocos2dEventDelegate^ delegate);\n    void SetXamlMessageBoxDelegate(cocos2d::Cocos2dMessageBoxDelegate^ delegate);\n    void SetXamlEditBoxDelegate(cocos2d::Cocos2dEditBoxDelegate^ delegate);\n    void SetXamlOpenURLDelegate(cocos2d::Cocos2dOpenURLDelegate^ delegate);\n\n    Windows::Foundation::IAsyncAction^ OnSuspending();\n    void Connect();\n    void Disconnect();\n\nprotected:\n    virtual void OnUpdateDevice() override;\n\nprivate:\n\n    bool m_loadingComplete;\n    bool mInitialized;\n\n    cocos2d::Cocos2dEventDelegate^ m_delegate;\n    cocos2d::Cocos2dMessageBoxDelegate^ m_messageBoxDelegate;\n    cocos2d::Cocos2dEditBoxDelegate^ m_editBoxDelegate;\n    cocos2d::Cocos2dOpenURLDelegate^ m_openURLDelegate;\n\n\t// The AppDelegate for the Cocos2D app\n\tAppDelegate* mApp;\n    Windows::Graphics::Display::DisplayOrientations m_orientation;\n};\n"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/proj.wp8-xaml/AppComponent/src/Direct3DContentProvider.cpp",
    "content": "/****************************************************************************\nCopyright (c) 2013 cocos2d-x.org\nCopyright (c) Microsoft Open Technologies, Inc.\n\nhttp://www.cocos2d-x.org\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in\nall copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\nTHE SOFTWARE.\n****************************************************************************/\n\n#include \"Direct3DContentProvider.h\"\n#include \"Direct3DInterop.h\"\n\nusing namespace cocos2d;\n\nDirect3DContentProvider::Direct3DContentProvider(Direct3DInterop^ controller) :\n\tm_controller(controller)\n{\n\tm_controller->RequestAdditionalFrame += ref new RequestAdditionalFrameHandler([=] ()\n\t\t{\n\t\t\tif (m_host)\n\t\t\t{\n\t\t\t\tm_host->RequestAdditionalFrame();\n\t\t\t}\n\t\t});\n}\n\n// IDrawingSurfaceContentProviderNative interface\nHRESULT Direct3DContentProvider::Connect(_In_ IDrawingSurfaceRuntimeHostNative* host, _In_ ID3D11Device1* device)\n{\n\tm_host = host;\n\n\treturn m_controller->Connect(host, device);\n}\n\nvoid Direct3DContentProvider::Disconnect()\n{\n\tm_controller->Disconnect();\n\tm_host = nullptr;\n}\n\nHRESULT Direct3DContentProvider::PrepareResources(_In_ const LARGE_INTEGER* presentTargetTime, _Inout_ DrawingSurfaceSizeF* desiredRenderTargetSize)\n{\n\treturn m_controller->PrepareResources(presentTargetTime, desiredRenderTargetSize);\n}\n\nHRESULT Direct3DContentProvider::Draw(_In_ ID3D11Device1* device, _In_ ID3D11DeviceContext1* context, _In_ ID3D11RenderTargetView* renderTargetView)\n{\n    return m_controller->Draw(device, context, renderTargetView);\n}\n"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/proj.wp8-xaml/AppComponent/src/Direct3DContentProvider.h",
    "content": "/****************************************************************************\nCopyright (c) 2013 cocos2d-x.org\nCopyright (c) Microsoft Open Technologies, Inc.\n\nhttp://www.cocos2d-x.org\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in\nall copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\nTHE SOFTWARE.\n****************************************************************************/\n\n#pragma once\n\n#include <wrl/module.h>\n#include <Windows.Phone.Graphics.Interop.h>\n#include <DrawingSurfaceNative.h>\n\n#include \"Direct3DInterop.h\"\n\nclass Direct3DContentProvider : public Microsoft::WRL::RuntimeClass<\n\t\tMicrosoft::WRL::RuntimeClassFlags<Microsoft::WRL::WinRtClassicComMix>,\n\t\tABI::Windows::Phone::Graphics::Interop::IDrawingSurfaceBackgroundContentProvider,\n\t\tIDrawingSurfaceBackgroundContentProviderNative>\n{\npublic:\n\tDirect3DContentProvider(cocos2d::Direct3DInterop^ controller);\n\n\t// IDrawingSurfaceContentProviderNative\n\tHRESULT STDMETHODCALLTYPE Connect(_In_ IDrawingSurfaceRuntimeHostNative* host, _In_ ID3D11Device1* device);\n\tvoid STDMETHODCALLTYPE Disconnect();\n\n\tHRESULT STDMETHODCALLTYPE PrepareResources(_In_ const LARGE_INTEGER* presentTargetTime, _Inout_ DrawingSurfaceSizeF* desiredRenderTargetSize);\n\tHRESULT STDMETHODCALLTYPE Draw(_In_ ID3D11Device1* device, _In_ ID3D11DeviceContext1* context, _In_ ID3D11RenderTargetView* renderTargetView);\n\nprivate:\n\tcocos2d::Direct3DInterop^ m_controller;\n\tMicrosoft::WRL::ComPtr<IDrawingSurfaceRuntimeHostNative> m_host;\n};\n"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/proj.wp8-xaml/AppComponent/src/Direct3DInterop.cpp",
    "content": "/****************************************************************************\nCopyright (c) 2013 cocos2d-x.org\nCopyright (c) Microsoft Open Technologies, Inc.\n\nhttp://www.cocos2d-x.org\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in\nall copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\nTHE SOFTWARE.\n****************************************************************************/\n#include \"Direct3DInterop.h\"\n#include \"Direct3DContentProvider.h\"\n#include \"EditBoxEvent.h\"\n#include \"cocos2d.h\"\n\nusing namespace Windows::Foundation;\nusing namespace Windows::UI::Core;\nusing namespace Windows::UI::Input;\nusing namespace Microsoft::WRL;\nusing namespace Windows::Phone::Graphics::Interop;\nusing namespace Windows::Phone::Input::Interop;\nusing namespace Windows::Graphics::Display;\nusing namespace DirectX;\n\nnamespace cocos2d\n{\n\nDirect3DInterop::Direct3DInterop(Windows::Graphics::Display::DisplayOrientations orientation) \n    : mCurrentOrientation(orientation), m_delegate(nullptr)\n{\n    m_renderer = ref new Cocos2dRenderer(mCurrentOrientation);\n}\n\nIDrawingSurfaceBackgroundContentProvider^ Direct3DInterop::CreateContentProvider()\n{\n\tComPtr<Direct3DContentProvider> provider = Make<Direct3DContentProvider>(this);\n\treturn reinterpret_cast<IDrawingSurfaceBackgroundContentProvider^>(provider.Get());\n}\n\n\n// Interface With Direct3DContentProvider\nHRESULT Direct3DInterop::Connect(_In_ IDrawingSurfaceRuntimeHostNative* host, _In_ ID3D11Device1* device)\n{\n    return S_OK;\n}\n\nvoid Direct3DInterop::Disconnect()\n{\n    m_renderer->Disconnect();  \n}\n\n// IDrawingSurfaceManipulationHandler\nvoid Direct3DInterop::SetManipulationHost(DrawingSurfaceManipulationHost^ manipulationHost)\n{\n    manipulationHost->PointerPressed +=\n        ref new TypedEventHandler<DrawingSurfaceManipulationHost^, PointerEventArgs^>(this, &Direct3DInterop::OnPointerPressed);\n\n    manipulationHost->PointerMoved +=\n        ref new TypedEventHandler<DrawingSurfaceManipulationHost^, PointerEventArgs^>(this, &Direct3DInterop::OnPointerMoved);\n\n    manipulationHost->PointerReleased +=\n        ref new TypedEventHandler<DrawingSurfaceManipulationHost^, PointerEventArgs^>(this, &Direct3DInterop::OnPointerReleased);\n}\n\nvoid Direct3DInterop::UpdateForWindowSizeChange(float width, float height)\n{\n    m_renderer->UpdateForWindowSizeChange(width, height);\n}\n\n\nIAsyncAction^ Direct3DInterop::OnSuspending()\n{\n    return m_renderer->OnSuspending();\n}\n\nvoid Direct3DInterop::OnBackKeyPress()\n{\n    cocos2d::GLViewImpl::sharedOpenGLView()->QueueBackKeyPress();\n}\n\n// Pointer Event Handlers. We need to queue up pointer events to pass them to the drawing thread\nvoid Direct3DInterop::OnPointerPressed(DrawingSurfaceManipulationHost^ sender, PointerEventArgs^ args)\n{\n    cocos2d::GLViewImpl::sharedOpenGLView()->QueuePointerEvent(cocos2d::PointerEventType::PointerPressed, args);\n}\n\nvoid Direct3DInterop::OnPointerMoved(DrawingSurfaceManipulationHost^ sender, PointerEventArgs^ args)\n{\n    cocos2d::GLViewImpl::sharedOpenGLView()->QueuePointerEvent(cocos2d::PointerEventType::PointerMoved, args);\n}\n\nvoid Direct3DInterop::OnPointerReleased(DrawingSurfaceManipulationHost^ sender, PointerEventArgs^ args)\n{\n    cocos2d::GLViewImpl::sharedOpenGLView()->QueuePointerEvent(cocos2d::PointerEventType::PointerReleased, args);\n}\n\nvoid Direct3DInterop::OnOrientationChanged(Windows::Graphics::Display::DisplayOrientations orientation)\n{\n    std::shared_ptr<cocos2d::InputEvent> e(new cocos2d::CustomInputEvent([this, orientation]()\n    {\n        m_renderer->OnOrientationChanged(orientation);\n    }));\n    cocos2d::GLViewImpl::sharedOpenGLView()->QueueEvent(e);\n}\n\nvoid Direct3DInterop::OnCocos2dKeyEvent(Cocos2dKeyEvent key)\n{\n    std::shared_ptr<cocos2d::InputEvent> e(new cocos2d::KeyboardEvent(key));\n    cocos2d::GLViewImpl::sharedOpenGLView()->QueueEvent(e);\n}\n\n\nvoid Direct3DInterop::OnCocos2dKeyEvent(Cocos2dKeyEvent key, Platform::String^ text)\n{\n    std::shared_ptr<cocos2d::InputEvent> e(new cocos2d::KeyboardEvent(key,text));\n    cocos2d::GLViewImpl::sharedOpenGLView()->QueueEvent(e);\n}\n\n\nvoid Direct3DInterop::OnCocos2dEditboxEvent(Object^ sender, Platform::String^ args, Windows::Foundation::EventHandler<Platform::String^>^ handler)\n{\n\tstd::shared_ptr<cocos2d::InputEvent> e(new EditBoxEvent(sender, args, handler));\n    cocos2d::GLViewImpl::sharedOpenGLView()->QueueEvent(e);\n}\n\nvoid Direct3DInterop::OnCocos2dOpenURL(Platform::String^ url)\n{\n    m_openURLDelegate->Invoke(url);\n}\n\n\n\n\nHRESULT Direct3DInterop::PrepareResources(_In_ const LARGE_INTEGER* presentTargetTime, _Inout_ DrawingSurfaceSizeF* desiredRenderTargetSize)\n{\n\tdesiredRenderTargetSize->width = WindowBounds.Width;\n\tdesiredRenderTargetSize->height = WindowBounds.Height;\n\treturn S_OK;\n}\n\nHRESULT Direct3DInterop::Draw(_In_ ID3D11Device1* device, _In_ ID3D11DeviceContext1* context, _In_ ID3D11RenderTargetView* renderTargetView)\n{\n    m_renderer->UpdateDevice(device, context, renderTargetView);\n\n    cocos2d::GLViewImpl::sharedOpenGLView()->ProcessEvents();\n    m_renderer->Render();\n\tRequestAdditionalFrame();\n\treturn S_OK;\n}\n\nvoid Direct3DInterop::SetCocos2dEventDelegate(Cocos2dEventDelegate^ delegate) \n{ \n    m_delegate = delegate; \n    m_renderer->SetXamlEventDelegate(delegate);\n}\n\nvoid Direct3DInterop::SetCocos2dMessageBoxDelegate(Cocos2dMessageBoxDelegate ^ delegate)\n{\n    m_messageBoxDelegate = delegate;\n    m_renderer->SetXamlMessageBoxDelegate(delegate);\n}\n\nvoid Direct3DInterop::SetCocos2dEditBoxDelegate(Cocos2dEditBoxDelegate ^ delegate)\n{\n    m_editBoxDelegate = delegate;\n    m_renderer->SetXamlEditBoxDelegate(delegate);\n}\n\nvoid Direct3DInterop::SetCocos2dOpenURLDelegate(Cocos2dOpenURLDelegate ^ delegate)\n{\n    m_openURLDelegate = delegate;\n    m_renderer->SetXamlOpenURLDelegate(delegate);\n}\n\n\nbool Direct3DInterop::SendCocos2dEvent(Cocos2dEvent event)\n{\n    Platform::String^ str;\n    if(m_delegate)\n    {\n        m_delegate->Invoke(event, str);\n        return true;\n    }\n    return false;\n}\n\n}\n"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/proj.wp8-xaml/AppComponent/src/Direct3DInterop.h",
    "content": "/****************************************************************************\nCopyright (c) 2013 cocos2d-x.org\nCopyright (c) Microsoft Open Technologies, Inc.\n\nhttp://www.cocos2d-x.org\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in\nall copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\nTHE SOFTWARE.\n****************************************************************************/\n\n#pragma once\n\n#include <wrl/client.h>\n#include <mutex>\n#include <queue>\n#include <memory>\n#include \"Cocos2dRenderer.h\"\n#include \"InputEvent.h\"\n#include <DrawingSurfaceNative.h>\n\n\nnamespace cocos2d\n{\n\npublic delegate void RequestAdditionalFrameHandler();\n\n[Windows::Foundation::Metadata::WebHostHidden]\npublic ref class Direct3DInterop sealed : public Windows::Phone::Input::Interop::IDrawingSurfaceManipulationHandler\n{\npublic:\n    Direct3DInterop(Windows::Graphics::Display::DisplayOrientations orientation);\n\n\tWindows::Phone::Graphics::Interop::IDrawingSurfaceBackgroundContentProvider^ CreateContentProvider();\n\n    // IDrawingSurfaceManipulationHandler\n    virtual void SetManipulationHost(Windows::Phone::Input::Interop::DrawingSurfaceManipulationHost^ manipulationHost);\n\n\tevent RequestAdditionalFrameHandler^ RequestAdditionalFrame;\n\n\n    void UpdateForWindowSizeChange(float width, float height);\n    Windows::Foundation::IAsyncAction^ OnSuspending();\n\n    void OnBackKeyPress();\n    void OnCocos2dKeyEvent(Cocos2dKeyEvent key);\n    void OnCocos2dKeyEvent(Cocos2dKeyEvent key, Platform::String^ text);\n    void OnCocos2dEditboxEvent(Platform::Object^ sender, Platform::String^ args, Windows::Foundation::EventHandler<Platform::String^>^ handler);\n    void OnOrientationChanged(Windows::Graphics::Display::DisplayOrientations orientation);\n    void OnCocos2dOpenURL(Platform::String^ url);\n\n    property Windows::Graphics::Display::DisplayOrientations WindowOrientation;\n    property Windows::Foundation::Size WindowBounds;\n\n    void SetCocos2dEventDelegate(Cocos2dEventDelegate^ delegate);\n    void SetCocos2dMessageBoxDelegate(Cocos2dMessageBoxDelegate ^ delegate);\n    void SetCocos2dEditBoxDelegate(Cocos2dEditBoxDelegate ^ delegate);\n    void SetCocos2dOpenURLDelegate(Cocos2dOpenURLDelegate ^ delegate);\n\n\nprotected:\n    // Event Handlers\n    void OnPointerPressed(Windows::Phone::Input::Interop::DrawingSurfaceManipulationHost^ sender, Windows::UI::Core::PointerEventArgs^ args);\n    void OnPointerMoved(Windows::Phone::Input::Interop::DrawingSurfaceManipulationHost^ sender, Windows::UI::Core::PointerEventArgs^ args);\n    void OnPointerReleased(Windows::Phone::Input::Interop::DrawingSurfaceManipulationHost^ sender, Windows::UI::Core::PointerEventArgs^ args);\n\ninternal:\n\tHRESULT Connect(_In_ IDrawingSurfaceRuntimeHostNative* host, _In_ ID3D11Device1* device);\n    void Disconnect();\n\tHRESULT PrepareResources(_In_ const LARGE_INTEGER* presentTargetTime, _Inout_ DrawingSurfaceSizeF* desiredRenderTargetSize);\n    HRESULT Draw(_In_ ID3D11Device1* device, _In_ ID3D11DeviceContext1* context, _In_ ID3D11RenderTargetView* renderTargetView);\n    bool SendCocos2dEvent(Cocos2dEvent event);\n\nprivate:\n    Cocos2dRenderer^ m_renderer;\n    Windows::Graphics::Display::DisplayOrientations mCurrentOrientation;\n\n\n    Cocos2dEventDelegate^ m_delegate;\n    Cocos2dMessageBoxDelegate^ m_messageBoxDelegate;\n    Cocos2dEditBoxDelegate^ m_editBoxDelegate;\n    Cocos2dOpenURLDelegate^ m_openURLDelegate;\n\n};\n\n}\n"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/proj.wp8-xaml/AppComponent/src/DirectXBase.cpp",
    "content": "/****************************************************************************\nCopyright (c) 2013 cocos2d-x.org\nCopyright (c) Microsoft Open Technologies, Inc.\n\nhttp://www.cocos2d-x.org\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in\nall copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\nTHE SOFTWARE.\n****************************************************************************/\n\n#include \"DirectXBase.h\"\n#include \"DirectXHelper.h\"\n\nusing namespace DirectX;\nusing namespace Microsoft::WRL;\nusing namespace Windows::Foundation;\nusing namespace Windows::Graphics::Display;\n\n// Constructor.\nDirectXBase::DirectXBase()\n    : m_bAngleInitialized(false)\n    , m_eglDisplay(nullptr)\n    , m_eglSurface(nullptr)\n    , m_eglContext(nullptr)\n    , m_eglWindow(nullptr)\n    , m_eglPhoneWindow(nullptr)\n    , m_device(nullptr)\n{\n}\n\n// Initialize the Direct3D resources required to run.\nvoid DirectXBase::Initialize()\n{\n}\n\n// These are the resources that depend on the device.\nvoid DirectXBase::CreateDeviceResources()\n{\n}\n\nvoid DirectXBase::SetDevice(ID3D11Device1* device)\n{\n    if(m_device)\n    {\n        m_device->Release();\n        m_device = nullptr;\n    }\n\n    m_device = nullptr;\n}\n\nvoid DirectXBase::UpdateDevice(ID3D11Device1* device, ID3D11DeviceContext1* context, ID3D11RenderTargetView* renderTargetView)\n{\n    if (m_device != device)\n    {\n        CloseAngle();\n        device->AddRef();\n        m_device = device;\n\n        CreateDeviceResources();\n\n        // Force call to CreateWindowSizeDependentResources\n        m_renderTargetSize.Width  = -1;\n        m_renderTargetSize.Height = -1;\n    }\n\n    m_featureLevel = device->GetFeatureLevel();\n\n\n    ComPtr<ID3D11Resource> renderTargetViewResource;\n    renderTargetView->GetResource(&renderTargetViewResource);\n\n    ComPtr<ID3D11Texture2D> backBuffer;\n    DX::ThrowIfFailed(\n        renderTargetViewResource.As(&backBuffer)\n        );\n\n    // Cache the rendertarget dimensions in our helper class for convenient use.\n    D3D11_TEXTURE2D_DESC backBufferDesc;\n    backBuffer->GetDesc(&backBufferDesc);\n\n    if (m_renderTargetSize.Width  != static_cast<float>(backBufferDesc.Width) ||\n        m_renderTargetSize.Height != static_cast<float>(backBufferDesc.Height))\n    {\n        m_renderTargetSize.Width  = static_cast<float>(backBufferDesc.Width);\n        m_renderTargetSize.Height = static_cast<float>(backBufferDesc.Height);\n        CreateWindowSizeDependentResources();\n    }\n\n    if(!m_bAngleInitialized)\n    {\n        InitializeAngle(device, context, renderTargetView);\n        CreateGLResources();\n    }\n    else\n    {\n        m_eglPhoneWindow->Update(device, context, renderTargetView);\n    }\n\n    OnUpdateDevice();\n}\n\n\nvoid DirectXBase::UpdateForWindowSizeChange(float width, float height)\n{\n    if (width != m_windowBounds.Width || height != m_windowBounds.Height)\n    {\n        m_windowBounds.Width  = width;\n        m_windowBounds.Height = height;\n    }\n}\n\n// Allocate all memory resources that depend on the window size.\nvoid DirectXBase::CreateWindowSizeDependentResources()\n{\n\n\n}\n\nvoid DirectXBase::OnOrientationChanged(DisplayOrientations orientation)\n{\n\tswitch(orientation)\n\t{\n\t\tcase DisplayOrientations::Portrait:\n\t\t\tm_orientationMatrix = XMMatrixIdentity();\n            m_aspectRatio = m_renderTargetSize.Width / m_renderTargetSize.Height;\n\t\t\tbreak;\n\n\t\tcase DisplayOrientations::PortraitFlipped:\n\t\t\tm_orientationMatrix = XMMatrixRotationZ(XM_PI);\n            m_aspectRatio = m_renderTargetSize.Width / m_renderTargetSize.Height;\n\t\t\tbreak;\n\n\t\tcase DisplayOrientations::Landscape:\n\t\t\tm_orientationMatrix = XMMatrixRotationZ(-XM_PIDIV2);\n            m_aspectRatio = m_renderTargetSize.Height / m_renderTargetSize.Width;\n\t\t\tbreak;\n\t\t\t\n\t\tcase DisplayOrientations::LandscapeFlipped:\n\t\t\tm_orientationMatrix = XMMatrixRotationZ(XM_PIDIV2);\n            m_aspectRatio = m_renderTargetSize.Height / m_renderTargetSize.Width;\n\t\t\tbreak;\n\t}\n}\n\nvoid DirectXBase::Render()\n{\n    if(!OnRender())\n    {\n        eglSwapBuffers(m_eglDisplay, m_eglSurface);\n    }\n}\n\nvoid DirectXBase::CloseAngle()\n{\n    eglMakeCurrent(NULL, NULL, NULL, NULL);\n\n    if(m_eglPhoneWindow != nullptr)\n    {\n        m_eglPhoneWindow->Update(nullptr, nullptr, nullptr);\n    }  \n\n\tif(m_eglDisplay && m_eglContext)\n    {\n        eglDestroyContext(m_eglDisplay, m_eglContext);\n        m_eglContext = nullptr;\n    }    \n\n\tif(m_eglDisplay && m_eglSurface)\n    {\n        eglDestroySurface(m_eglDisplay, m_eglSurface);\n        m_eglSurface = nullptr;\n    }\n\n    if(m_eglDisplay)\n    {\n        eglTerminate(m_eglDisplay);\n        m_eglDisplay = nullptr;\n    }  \n\n    if(m_device)\n    {\n        m_device->Release();\n        m_device = nullptr;\n    }\n\n    m_eglPhoneWindow = nullptr;\n    m_eglWindow = nullptr;  \n\n    m_bAngleInitialized = false;\n}\n\nbool DirectXBase::InitializeAngle(ID3D11Device1* d3dDevice, ID3D11DeviceContext1* d3dContext, ID3D11RenderTargetView* d3dRenderTargetView)\n{\n\t// setup EGL\n\tEGLint configAttribList[] = {\n\t\tEGL_RED_SIZE,       8,\n\t\tEGL_GREEN_SIZE,     8,\n\t\tEGL_BLUE_SIZE,      8,\n\t\tEGL_ALPHA_SIZE,     8,\n\t\tEGL_DEPTH_SIZE,     8,\n\t\tEGL_STENCIL_SIZE,   8,\n\t\tEGL_SAMPLE_BUFFERS, 0,\n\t\tEGL_NONE\n\t};\n\tEGLint surfaceAttribList[] = {\n\t\tEGL_NONE, EGL_NONE\n\t};\n\n\tEGLint numConfigs;\n\tEGLint majorVersion;\n\tEGLint minorVersion;\n\tEGLDisplay display;\n\tEGLContext context;\n\tEGLSurface surface;\n\tEGLConfig config;\n\tEGLint contextAttribs[] = { EGL_CONTEXT_CLIENT_VERSION, 2, EGL_NONE, EGL_NONE };\n\n    // we need to select the correct DirectX feature level depending on the platform\n    // default is D3D_FEATURE_LEVEL_9_3 Windows Phone 8.0\n    ANGLE_D3D_FEATURE_LEVEL featureLevel = ANGLE_D3D_FEATURE_LEVEL::ANGLE_D3D_FEATURE_LEVEL_9_3;\n\n\tswitch(m_featureLevel)\n\t{\n\tcase ANGLE_D3D_FEATURE_LEVEL_9_3:\n\t\tfeatureLevel = ANGLE_D3D_FEATURE_LEVEL::ANGLE_D3D_FEATURE_LEVEL_9_3;\n\t\tbreak;\n\t\t\t\t\n\tcase ANGLE_D3D_FEATURE_LEVEL_9_2:\n\t\tfeatureLevel = ANGLE_D3D_FEATURE_LEVEL::ANGLE_D3D_FEATURE_LEVEL_9_2;\n\t\tbreak;\n\t\t\t\t\t\n\tcase ANGLE_D3D_FEATURE_LEVEL_9_1:\n\t\tfeatureLevel = ANGLE_D3D_FEATURE_LEVEL::ANGLE_D3D_FEATURE_LEVEL_9_1;\n\t\tbreak;\n\t}\t\t\n\n    if(m_eglPhoneWindow == nullptr)\n    {\n\t    DX::ThrowIfFailed(\n            CreateWinPhone8XamlWindow(&m_eglPhoneWindow)\n            );\n    }\n\n    m_eglPhoneWindow->Update(d3dDevice, d3dContext, d3dRenderTargetView);\n\n    ComPtr<IUnknown> u;\n    HRESULT r = m_eglPhoneWindow.As(&u);\n\n    if(m_eglWindow == nullptr)\n    { \tDX::ThrowIfFailed(\n        CreateWinrtEglWindow(u.Get(), featureLevel, m_eglWindow.GetAddressOf())\n        );\n    }\n\n\n\tdisplay = eglGetDisplay(m_eglWindow);\n\tif(display == EGL_NO_DISPLAY){\n\t\t//ofLogError(\"ofAppWinRTWindow\") << \"couldn't get EGL display\";\n\t\treturn false;\n\t}\n\n\tif(!eglInitialize(display, &majorVersion, &minorVersion)){\n\t\t//ofLogError(\"ofAppWinRTWindow\") << \"failed to initialize EGL\";\n\t\treturn false;\n\t}\n\n\t// Get configs\n\tif ( !eglGetConfigs(display, NULL, 0, &numConfigs) ){\n\t\t//ofLogError(\"ofAppWinRTWindow\") << \"failed to get configurations\";\n\t\treturn false;\n\t}\n\n\t// Choose config\n\tif(!eglChooseConfig(display, configAttribList, &config, 1, &numConfigs)){\n\t\t//ofLogError(\"ofAppWinRTWindow\") << \"failed to choose configuration\";\n\t\treturn false;\n\t}\n\n    // Create a surface\n    surface = eglCreateWindowSurface(display, config, m_eglWindow, surfaceAttribList);\n    if(surface == EGL_NO_SURFACE){\n        //ofLogError(\"ofAppWinRTWindow\") << \"failed to create EGL window surface\";\n        return false;\n    }  \n\n\t// Create a GL context\n\tcontext = eglCreateContext(display, config, EGL_NO_CONTEXT, contextAttribs);\n\tif(context == EGL_NO_CONTEXT){\n\t\t//ofLogError(\"ofAppWinRTWindow\") << \"failed to create EGL context\";\n\t\treturn false;\n\t}   \n\n\t// Make the context current\n\tif (!eglMakeCurrent(display, surface, surface, context)){\n\t\t//ofLogError(\"ofAppWinRTWindow\") << \"failed to make EGL context current\";\n\t\treturn false;\n\t}\n\n\tm_eglDisplay = display;\n\tm_eglSurface = surface;\n\tm_eglContext = context;\n\n    m_bAngleInitialized = true;\n    return true;\n}\n"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/proj.wp8-xaml/AppComponent/src/DirectXBase.h",
    "content": "/****************************************************************************\nCopyright (c) 2013 cocos2d-x.org\nCopyright (c) Microsoft Open Technologies, Inc.\n\nhttp://www.cocos2d-x.org\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in\nall copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\nTHE SOFTWARE.\n****************************************************************************/\n\n#pragma once\n\n#include <d3d11_1.h>\n#include <DirectXMath.h>\n#include \"EGL/egl.h\"\n#include \"EGL/eglext.h\"\n#include \"EGL/eglplatform.h\"\n#include \"GLES2/gl2.h\"\n#include \"GLES2/gl2ext.h\"\n#include \"winrtangle.h\"\n\n// Helper class that initializes DirectX APIs for 3D rendering.\nref class DirectXBase abstract\n{\ninternal:\n    DirectXBase();\n\n    virtual void Initialize();\n    virtual void CreateDeviceResources();\n    virtual void SetDevice(ID3D11Device1* device);\n    virtual void UpdateDevice(ID3D11Device1* device, ID3D11DeviceContext1* context, ID3D11RenderTargetView* renderTargetView);\n    virtual void UpdateForWindowSizeChange(float width, float height);\n    virtual void CreateWindowSizeDependentResources();\n\tvirtual void OnOrientationChanged(Windows::Graphics::Display::DisplayOrientations orientation);\n\n    virtual void CreateGLResources() = 0;\n\n    void Render();\n\nprotected:\n\n    // return true if eglSwapBuffers was called by OnRender\n\tvirtual bool OnRender() = 0;\n    virtual void OnUpdateDevice() = 0;\n    void CloseAngle();\n\nprotected private:\n    // Direct3D Objects.\n    ID3D11Device1* m_device;\n\n    D3D_FEATURE_LEVEL m_featureLevel;\n\n    bool InitializeAngle(ID3D11Device1* device, ID3D11DeviceContext1* context, ID3D11RenderTargetView* renderTargetView);\n\n     // Cached renderer properties.\n    Windows::Foundation::Size m_renderTargetSize;\n    Windows::Foundation::Rect m_windowBounds;\n\tWindows::Graphics::Display::DisplayOrientations m_orientation;\n\n    // Angle EGL \n    bool m_bAngleInitialized;\n\tEGLDisplay m_eglDisplay;\n\tEGLContext m_eglContext;\n\tEGLSurface m_eglSurface;\n\tMicrosoft::WRL::ComPtr<IWinrtEglWindow> m_eglWindow;\n\tMicrosoft::WRL::ComPtr<IWinPhone8XamlD3DWindow> m_eglPhoneWindow;\n    DirectX::XMMATRIX m_orientationMatrix;\n    float m_aspectRatio;\n};\n"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/proj.wp8-xaml/AppComponent/src/DirectXHelper.h",
    "content": "/****************************************************************************\nCopyright (c) 2013 cocos2d-x.org\nCopyright (c) Microsoft Open Technologies, Inc.\n\nhttp://www.cocos2d-x.org\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in\nall copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\nTHE SOFTWARE.\n****************************************************************************/\n\n//// THIS CODE AND INFORMATION IS PROVIDED \"AS IS\" WITHOUT WARRANTY OF\n//// ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO\n//// THE IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A\n//// PARTICULAR PURPOSE.\n////\n//// Copyright (c) Microsoft Corporation. All rights reserved\n\n#pragma once\n\n\n// This header defines helper utilities to make DirectX APIs work with exceptions.\nnamespace DX\n{\n    inline void ThrowIfFailed(HRESULT hr)\n    {\n        if (FAILED(hr))\n        {\n            // Set a breakpoint on this line to catch DX API errors.\n            throw Platform::Exception::CreateException(hr);\n        }\n    }\n}\n"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/proj.wp8-xaml/AppComponent/src/EditBoxEvent.cpp",
    "content": "/****************************************************************************\nCopyright (c) 2014 cocos2d-x.org\n\nhttp://www.cocos2d-x.org\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in\nall copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\nTHE SOFTWARE.\n****************************************************************************/\n\n#include \"EditBoxEvent.h\"\n\nusing namespace Platform;\n\nnamespace cocos2d\n{\n\tEditBoxEvent::EditBoxEvent( Platform::Object^ sender, Platform::String^ arg, Windows::Foundation::EventHandler<Platform::String^>^ handle ):\n\t\tm_sender(sender),\n\t\tm_args(arg),\n\t\tm_handler(handle)\n\t{\n\n\t}\n\n\tvoid EditBoxEvent::execute()\n\t{\n        if(m_handler.Get())\n        {\n\t\t    m_handler.Get()->Invoke(m_sender.Get(), m_args.Get());\n        }\n\t}\n\n\n}\n"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/proj.wp8-xaml/AppComponent/src/EditBoxEvent.h",
    "content": "/****************************************************************************\nCopyright (c) 2014 cocos2d-x.org\n\nhttp://www.cocos2d-x.org\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in\nall copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\nTHE SOFTWARE.\n****************************************************************************/\n\n#ifndef __EditBoxEVENT_H__\n#define __EditBoxEVENT_H__\n\n#include \"InputEvent.h\"\n#include <agile.h>\n\n\nnamespace cocos2d\n{\n\tclass EditBoxEvent : public cocos2d::InputEvent\n\t{\n\tpublic:\n\t\tEditBoxEvent(Platform::Object^ sender, Platform::String^ arg, Windows::Foundation::EventHandler<Platform::String^>^ handle);\n\n\t\tvirtual void execute();\n\n\tprivate:\n\t\tPlatform::Agile<Platform::Object^> m_sender;\n\t\tPlatform::Agile<Platform::String^> m_args;\n\t\tPlatform::Agile<Windows::Foundation::EventHandler<Platform::String^>^> m_handler;\n\t};\n}\n\n#endif\n"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/proj.wp8-xaml/AppComponent/src/pch.cpp",
    "content": "﻿#include \"pch.h\"\n"
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/proj.wp8-xaml/AppComponent/src/pch.h",
    "content": "﻿#pragma once\n\n#include \"targetver.h\"\n\n#ifndef WIN32_LEAN_AND_MEAN\n#define WIN32_LEAN_AND_MEAN\n#endif\n\n#include <windows.h>\n#include \"cocos2d.h\"\n#include \"cocos-ext.h\""
  },
  {
    "path": "源代码/mir9/frameworks/runtime-src/proj.wp8-xaml/mir9.sln",
    "content": "Microsoft Visual Studio Solution File, Format Version 12.00\n# Visual Studio 2013\nVisualStudioVersion = 12.0.30501.0\nMinimumVisualStudioVersion = 10.0.40219.1\nProject(\"{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}\") = \"mir9\", \"App\\mir9.csproj\", \"{83CC88FE-7E79-4E1E-A129-742987130B5C}\"\nEndProject\nProject(\"{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}\") = \"mir9Component\", \"AppComponent\\mir9Component.vcxproj\", \"{60EC6889-C3C4-45AD-A006-47D9EE689212}\"\nEndProject\nProject(\"{2150E333-8FDC-42A3-9474-1A3956D46DE8}\") = \"External\", \"External\", \"{1CD6A64E-A2B6-49BC-A5DC-25122C07166A}\"\nEndProject\nProject(\"{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}\") = \"Box2D\", \"%QUICK_V3_ROOT%\\external\\Box2D\\proj.wp8\\Box2D.vcxproj\", \"{C55734A3-702C-4FA1-B950-32C8E169302F}\"\nEndProject\nProject(\"{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}\") = \"libSpine\", \"%QUICK_V3_ROOT%\\cocos\\editor-support\\spine\\proj.wp8\\libSpine.vcxproj\", \"{7D4FC6EB-9497-4804-98F3-3EAEDC896154}\"\nEndProject\nProject(\"{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}\") = \"libcocos2d_wp8\", \"%QUICK_V3_ROOT%\\cocos\\2d\\libcocos2d_wp8.vcxproj\", \"{7C5DBC42-27F6-4978-AABC-02BA77E2A7F0}\"\nEndProject\nProject(\"{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}\") = \"libluabinding\", \"%QUICK_V3_ROOT%\\cocos\\scripting\\lua-bindings\\proj.wp8-xaml\\libluabinding.vcxproj\", \"{B2B779BF-13C2-4137-98B3-0644ABC7D173}\"\nEndProject\nGlobal\n\tGlobalSection(SolutionConfigurationPlatforms) = preSolution\n\t\tDebug|Any CPU = Debug|Any CPU\n\t\tDebug|ARM = Debug|ARM\n\t\tDebug|Mixed Platforms = Debug|Mixed Platforms\n\t\tDebug|Win32 = Debug|Win32\n\t\tDebug|x86 = Debug|x86\n\t\tRelease|Any CPU = Release|Any CPU\n\t\tRelease|ARM = Release|ARM\n\t\tRelease|Mixed Platforms = Release|Mixed Platforms\n\t\tRelease|Win32 = Release|Win32\n\t\tRelease|x86 = Release|x86\n\tEndGlobalSection\n\tGlobalSection(ProjectConfigurationPlatforms) = postSolution\n\t\t{83CC88FE-7E79-4E1E-A129-742987130B5C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU\n\t\t{83CC88FE-7E79-4E1E-A129-742987130B5C}.Debug|Any CPU.Build.0 = Debug|Any CPU\n\t\t{83CC88FE-7E79-4E1E-A129-742987130B5C}.Debug|Any CPU.Deploy.0 = Debug|Any CPU\n\t\t{83CC88FE-7E79-4E1E-A129-742987130B5C}.Debug|ARM.ActiveCfg = Debug|ARM\n\t\t{83CC88FE-7E79-4E1E-A129-742987130B5C}.Debug|ARM.Build.0 = Debug|ARM\n\t\t{83CC88FE-7E79-4E1E-A129-742987130B5C}.Debug|ARM.Deploy.0 = Debug|ARM\n\t\t{83CC88FE-7E79-4E1E-A129-742987130B5C}.Debug|Mixed Platforms.ActiveCfg = Debug|x86\n\t\t{83CC88FE-7E79-4E1E-A129-742987130B5C}.Debug|Mixed Platforms.Build.0 = Debug|x86\n\t\t{83CC88FE-7E79-4E1E-A129-742987130B5C}.Debug|Mixed Platforms.Deploy.0 = Debug|x86\n\t\t{83CC88FE-7E79-4E1E-A129-742987130B5C}.Debug|Win32.ActiveCfg = Debug|x86\n\t\t{83CC88FE-7E79-4E1E-A129-742987130B5C}.Debug|Win32.Build.0 = Debug|x86\n\t\t{83CC88FE-7E79-4E1E-A129-742987130B5C}.Debug|Win32.Deploy.0 = Debug|x86\n\t\t{83CC88FE-7E79-4E1E-A129-742987130B5C}.Debug|x86.ActiveCfg = Debug|x86\n\t\t{83CC88FE-7E79-4E1E-A129-742987130B5C}.Debug|x86.Build.0 = Debug|x86\n\t\t{83CC88FE-7E79-4E1E-A129-742987130B5C}.Debug|x86.Deploy.0 = Debug|x86\n\t\t{83CC88FE-7E79-4E1E-A129-742987130B5C}.Release|Any CPU.ActiveCfg = Release|Any CPU\n\t\t{83CC88FE-7E79-4E1E-A129-742987130B5C}.Release|Any CPU.Build.0 = Release|Any CPU\n\t\t{83CC88FE-7E79-4E1E-A129-742987130B5C}.Release|Any CPU.Deploy.0 = Release|Any CPU\n\t\t{83CC88FE-7E79-4E1E-A129-742987130B5C}.Release|ARM.ActiveCfg = Release|ARM\n\t\t{83CC88FE-7E79-4E1E-A129-742987130B5C}.Release|ARM.Build.0 = Release|ARM\n\t\t{83CC88FE-7E79-4E1E-A129-742987130B5C}.Release|ARM.Deploy.0 = Release|ARM\n\t\t{83CC88FE-7E79-4E1E-A129-742987130B5C}.Release|Mixed Platforms.ActiveCfg = Release|x86\n\t\t{83CC88FE-7E79-4E1E-A129-742987130B5C}.Release|Mixed Platforms.Build.0 = Release|x86\n\t\t{83CC88FE-7E79-4E1E-A129-742987130B5C}.Release|Mixed Platforms.Deploy.0 = Release|x86\n\t\t{83CC88FE-7E79-4E1E-A129-742987130B5C}.Release|Win32.ActiveCfg = Release|x86\n\t\t{83CC88FE-7E79-4E1E-A129-742987130B5C}.Release|Win32.Build.0 = Release|x86\n\t\t{83CC88FE-7E79-4E1E-A129-742987130B5C}.Release|Win32.Deploy.0 = Release|x86\n\t\t{83CC88FE-7E79-4E1E-A129-742987130B5C}.Release|x86.ActiveCfg = Release|x86\n\t\t{83CC88FE-7E79-4E1E-A129-742987130B5C}.Release|x86.Build.0 = Release|x86\n\t\t{83CC88FE-7E79-4E1E-A129-742987130B5C}.Release|x86.Deploy.0 = Release|x86\n\t\t{60EC6889-C3C4-45AD-A006-47D9EE689212}.Debug|Any CPU.ActiveCfg = Debug|Win32\n\t\t{60EC6889-C3C4-45AD-A006-47D9EE689212}.Debug|ARM.ActiveCfg = Debug|ARM\n\t\t{60EC6889-C3C4-45AD-A006-47D9EE689212}.Debug|ARM.Build.0 = Debug|ARM\n\t\t{60EC6889-C3C4-45AD-A006-47D9EE689212}.Debug|Mixed Platforms.ActiveCfg = Debug|Win32\n\t\t{60EC6889-C3C4-45AD-A006-47D9EE689212}.Debug|Mixed Platforms.Build.0 = Debug|Win32\n\t\t{60EC6889-C3C4-45AD-A006-47D9EE689212}.Debug|Win32.ActiveCfg = Debug|Win32\n\t\t{60EC6889-C3C4-45AD-A006-47D9EE689212}.Debug|Win32.Build.0 = Debug|Win32\n\t\t{60EC6889-C3C4-45AD-A006-47D9EE689212}.Debug|x86.ActiveCfg = Debug|Win32\n\t\t{60EC6889-C3C4-45AD-A006-47D9EE689212}.Debug|x86.Build.0 = Debug|Win32\n\t\t{60EC6889-C3C4-45AD-A006-47D9EE689212}.Release|Any CPU.ActiveCfg = Release|Win32\n\t\t{60EC6889-C3C4-45AD-A006-47D9EE689212}.Release|ARM.ActiveCfg = Release|ARM\n\t\t{60EC6889-C3C4-45AD-A006-47D9EE689212}.Release|ARM.Build.0 = Release|ARM\n\t\t{60EC6889-C3C4-45AD-A006-47D9EE689212}.Release|Mixed Platforms.ActiveCfg = Release|Win32\n\t\t{60EC6889-C3C4-45AD-A006-47D9EE689212}.Release|Mixed Platforms.Build.0 = Release|Win32\n\t\t{60EC6889-C3C4-45AD-A006-47D9EE689212}.Release|Win32.ActiveCfg = Release|Win32\n\t\t{60EC6889-C3C4-45AD-A006-47D9EE689212}.Release|Win32.Build.0 = Release|Win32\n\t\t{60EC6889-C3C4-45AD-A006-47D9EE689212}.Release|x86.ActiveCfg = Release|Win32\n\t\t{60EC6889-C3C4-45AD-A006-47D9EE689212}.Release|x86.Build.0 = Release|Win32\n\t\t{C55734A3-702C-4FA1-B950-32C8E169302F}.Debug|Any CPU.ActiveCfg = Debug|Win32\n\t\t{C55734A3-702C-4FA1-B950-32C8E169302F}.Debug|ARM.ActiveCfg = Debug|ARM\n\t\t{C55734A3-702C-4FA1-B950-32C8E169302F}.Debug|ARM.Build.0 = Debug|ARM\n\t\t{C55734A3-702C-4FA1-B950-32C8E169302F}.Debug|Mixed Platforms.ActiveCfg = Debug|Win32\n\t\t{C55734A3-702C-4FA1-B950-32C8E169302F}.Debug|Mixed Platforms.Build.0 = Debug|Win32\n\t\t{C55734A3-702C-4FA1-B950-32C8E169302F}.Debug|Win32.ActiveCfg = Debug|Win32\n\t\t{C55734A3-702C-4FA1-B950-32C8E169302F}.Debug|Win32.Build.0 = Debug|Win32\n\t\t{C55734A3-702C-4FA1-B950-32C8E169302F}.Debug|x86.ActiveCfg = Debug|Win32\n\t\t{C55734A3-702C-4FA1-B950-32C8E169302F}.Debug|x86.Build.0 = Debug|Win32\n\t\t{C55734A3-702C-4FA1-B950-32C8E169302F}.Release|Any CPU.ActiveCfg = Release|Win32\n\t\t{C55734A3-702C-4FA1-B950-32C8E169302F}.Release|ARM.ActiveCfg = Release|ARM\n\t\t{C55734A3-702C-4FA1-B950-32C8E169302F}.Release|ARM.Build.0 = Release|ARM\n\t\t{C55734A3-702C-4FA1-B950-32C8E169302F}.Release|Mixed Platforms.ActiveCfg = Release|Win32\n\t\t{C55734A3-702C-4FA1-B950-32C8E169302F}.Release|Mixed Platforms.Build.0 = Release|Win32\n\t\t{C55734A3-702C-4FA1-B950-32C8E169302F}.Release|Win32.ActiveCfg = Release|Win32\n\t\t{C55734A3-702C-4FA1-B950-32C8E169302F}.Release|Win32.Build.0 = Release|Win32\n\t\t{C55734A3-702C-4FA1-B950-32C8E169302F}.Release|x86.ActiveCfg = Release|Win32\n\t\t{C55734A3-702C-4FA1-B950-32C8E169302F}.Release|x86.Build.0 = Release|Win32\n\t\t{7D4FC6EB-9497-4804-98F3-3EAEDC896154}.Debug|Any CPU.ActiveCfg = Debug|Win32\n\t\t{7D4FC6EB-9497-4804-98F3-3EAEDC896154}.Debug|ARM.ActiveCfg = Debug|ARM\n\t\t{7D4FC6EB-9497-4804-98F3-3EAEDC896154}.Debug|ARM.Build.0 = Debug|ARM\n\t\t{7D4FC6EB-9497-4804-98F3-3EAEDC896154}.Debug|Mixed Platforms.ActiveCfg = Debug|Win32\n\t\t{7D4FC6EB-9497-4804-98F3-3EAEDC896154}.Debug|Mixed Platforms.Build.0 = Debug|Win32\n\t\t{7D4FC6EB-9497-4804-98F3-3EAEDC896154}.Debug|Win32.ActiveCfg = Debug|Win32\n\t\t{7D4FC6EB-9497-4804-98F3-3EAEDC896154}.Debug|Win32.Build.0 = Debug|Win32\n\t\t{7D4FC6EB-9497-4804-98F3-3EAEDC896154}.Debug|x86.ActiveCfg = Debug|Win32\n\t\t{7D4FC6EB-9497-4804-98F3-3EAEDC896154}.Debug|x86.Build.0 = Debug|Win32\n\t\t{7D4FC6EB-9497-4804-98F3-3EAEDC896154}.Release|Any CPU.ActiveCfg = Release|Win32\n\t\t{7D4FC6EB-9497-4804-98F3-3EAEDC896154}.Release|ARM.ActiveCfg = Release|ARM\n\t\t{7D4FC6EB-9497-4804-98F3-3EAEDC896154}.Release|ARM.Build.0 = Release|ARM\n\t\t{7D4FC6EB-9497-4804-98F3-3EAEDC896154}.Release|Mixed Platforms.ActiveCfg = Release|Win32\n\t\t{7D4FC6EB-9497-4804-98F3-3EAEDC896154}.Release|Mixed Platforms.Build.0 = Release|Win32\n\t\t{7D4FC6EB-9497-4804-98F3-3EAEDC896154}.Release|Win32.ActiveCfg = Release|Win32\n\t\t{7D4FC6EB-9497-4804-98F3-3EAEDC896154}.Release|Win32.Build.0 = Release|Win32\n\t\t{7D4FC6EB-9497-4804-98F3-3EAEDC896154}.Release|x86.ActiveCfg = Release|Win32\n\t\t{7D4FC6EB-9497-4804-98F3-3EAEDC896154}.Release|x86.Build.0 = Release|Win32\n\t\t{7C5DBC42-27F6-4978-AABC-02BA77E2A7F0}.Debug|Any CPU.ActiveCfg = Debug|Win32\n\t\t{7C5DBC42-27F6-4978-AABC-02BA77E2A7F0}.Debug|ARM.ActiveCfg = Debug|ARM\n\t\t{7C5DBC42-27F6-4978-AABC-02BA77E2A7F0}.Debug|ARM.Build.0 = Debug|ARM\n\t\t{7C5DBC42-27F6-4978-AABC-02BA77E2A7F0}.Debug|Mixed Platforms.ActiveCfg = Debug|Win32\n\t\t{7C5DBC42-27F6-4978-AABC-02BA77E2A7F0}.Debug|Mixed Platforms.Build.0 = Debug|Win32\n\t\t{7C5DBC42-27F6-4978-AABC-02BA77E2A7F0}.Debug|Win32.ActiveCfg = Debug|Win32\n\t\t{7C5DBC42-27F6-4978-AABC-02BA77E2A7F0}.Debug|Win32.Build.0 = Debug|Win32\n\t\t{7C5DBC42-27F6-4978-AABC-02BA77E2A7F0}.Debug|x86.ActiveCfg = Debug|Win32\n\t\t{7C5DBC42-27F6-4978-AABC-02BA77E2A7F0}.Debug|x86.Build.0 = Debug|Win32\n\t\t{7C5DBC42-27F6-4978-AABC-02BA77E2A7F0}.Release|Any CPU.ActiveCfg = Release|Win32\n\t\t{7C5DBC42-27F6-4978-AABC-02BA77E2A7F0}.Release|ARM.ActiveCfg = Release|ARM\n\t\t{7C5DBC42-27F6-4978-AABC-02BA77E2A7F0}.Release|ARM.Build.0 = Release|ARM\n\t\t{7C5DBC42-27F6-4978-AABC-02BA77E2A7F0}.Release|Mixed Platforms.ActiveCfg = Release|Win32\n\t\t{7C5DBC42-27F6-4978-AABC-02BA77E2A7F0}.Release|Mixed Platforms.Build.0 = Release|Win32\n\t\t{7C5DBC42-27F6-4978-AABC-02BA77E2A7F0}.Release|Win32.ActiveCfg = Release|Win32\n\t\t{7C5DBC42-27F6-4978-AABC-02BA77E2A7F0}.Release|Win32.Build.0 = Release|Win32\n\t\t{7C5DBC42-27F6-4978-AABC-02BA77E2A7F0}.Release|x86.ActiveCfg = Release|Win32\n\t\t{7C5DBC42-27F6-4978-AABC-02BA77E2A7F0}.Release|x86.Build.0 = Release|Win32\n\t\t{B2B779BF-13C2-4137-98B3-0644ABC7D173}.Debug|Any CPU.ActiveCfg = Debug|Win32\n\t\t{B2B779BF-13C2-4137-98B3-0644ABC7D173}.Debug|ARM.ActiveCfg = Debug|ARM\n\t\t{B2B779BF-13C2-4137-98B3-0644ABC7D173}.Debug|ARM.Build.0 = Debug|ARM\n\t\t{B2B779BF-13C2-4137-98B3-0644ABC7D173}.Debug|Mixed Platforms.ActiveCfg = Debug|Win32\n\t\t{B2B779BF-13C2-4137-98B3-0644ABC7D173}.Debug|Mixed Platforms.Build.0 = Debug|Win32\n\t\t{B2B779BF-13C2-4137-98B3-0644ABC7D173}.Debug|Win32.ActiveCfg = Debug|Win32\n\t\t{B2B779BF-13C2-4137-98B3-0644ABC7D173}.Debug|Win32.Build.0 = Debug|Win32\n\t\t{B2B779BF-13C2-4137-98B3-0644ABC7D173}.Debug|x86.ActiveCfg = Debug|Win32\n\t\t{B2B779BF-13C2-4137-98B3-0644ABC7D173}.Debug|x86.Build.0 = Debug|Win32\n\t\t{B2B779BF-13C2-4137-98B3-0644ABC7D173}.Release|Any CPU.ActiveCfg = Release|Win32\n\t\t{B2B779BF-13C2-4137-98B3-0644ABC7D173}.Release|ARM.ActiveCfg = Release|ARM\n\t\t{B2B779BF-13C2-4137-98B3-0644ABC7D173}.Release|ARM.Build.0 = Release|ARM\n\t\t{B2B779BF-13C2-4137-98B3-0644ABC7D173}.Release|Mixed Platforms.ActiveCfg = Release|Win32\n\t\t{B2B779BF-13C2-4137-98B3-0644ABC7D173}.Release|Mixed Platforms.Build.0 = Release|Win32\n\t\t{B2B779BF-13C2-4137-98B3-0644ABC7D173}.Release|Win32.ActiveCfg = Release|Win32\n\t\t{B2B779BF-13C2-4137-98B3-0644ABC7D173}.Release|Win32.Build.0 = Release|Win32\n\t\t{B2B779BF-13C2-4137-98B3-0644ABC7D173}.Release|x86.ActiveCfg = Release|Win32\n\t\t{B2B779BF-13C2-4137-98B3-0644ABC7D173}.Release|x86.Build.0 = Release|Win32\n\tEndGlobalSection\n\tGlobalSection(SolutionProperties) = preSolution\n\t\tHideSolutionNode = FALSE\n\tEndGlobalSection\n\tGlobalSection(NestedProjects) = preSolution\n\t\t{C55734A3-702C-4FA1-B950-32C8E169302F} = {1CD6A64E-A2B6-49BC-A5DC-25122C07166A}\n\t\t{7D4FC6EB-9497-4804-98F3-3EAEDC896154} = {1CD6A64E-A2B6-49BC-A5DC-25122C07166A}\n\tEndGlobalSection\nEndGlobal\n"
  },
  {
    "path": "源代码/mir9/res/README.txt",
    "content": "LuaֲԴصַ\nhttp://pan.baidu.com/s/1kTqqhin\n\nԴغѹresļС"
  },
  {
    "path": "源代码/mir9/src/app/GameSocket.lua",
    "content": "local PlayerController = require(\"app.figure.PlayerController\")\n\nlocal GameSocket = class(\"GameSocket\")\n\nfunction GameSocket.sendRoleCreate(node, roleID, nickName)\n    local _playerController = PlayerController.sharePlayerController()\n    _playerController.m_playerNumber = roleID\n    _playerController.m_weaponsNumber = 1000\n    _playerController.m_playerName = nickName\n    node:joinGame()\nend\n\nfunction GameSocket.attackGroup(one, two, skillNumber)\n    if ((not one) or (type(two) ~= \"table\") or (#two <= 0)) then\n        return\n    end\n    \n    local hurt = one:getTheAttack()\n    if (skillNumber == 2005) then\n        hurt = hurt * 15\n    end\n    local r = math.random()\n    \n    hurt = hurt + math.floor((hurt/10) * r) - hurt/20\n    \n    for i = 1, #two do\n        if (two[i]:getBlood() <= 0) then\n        \n        else\n            local blood = two[i]:getBlood() - hurt\n            blood = math.max(blood, 0)\n            two[i]:addAgainstMe(one, blood)\n        end\n    end\nend\n\nfunction GameSocket.attack(one, two, skillNumber)\n    if (not one or not two) then\n        return\n    end\n    \n    if (two:getBlood() <= 0) then\n        return\n    end\n    \n    local hurt = one:getTheAttack()\n    if (skillNumber == 1020) then\n        hurt = hurt * 1.5\n    end\n    \n    hurt = hurt + (math.floor((hurt/10) * math.random()) - hurt/20)\n    \n    local blood = two:getBlood() - hurt\n    \n    blood = math.max(blood, 0)\n    \n    two:addAgainstMe(one, blood)\nend\n\nreturn GameSocket"
  },
  {
    "path": "源代码/mir9/src/app/MyApp.lua",
    "content": "\nrequire(\"config\")\nrequire(\"cocos.init\")\nrequire(\"framework.init\")\n\nlocal MyApp = class(\"MyApp\", cc.mvc.AppBase)\n\nfunction MyApp:ctor()\n    MyApp.super.ctor(self)\nend\n\nfunction MyApp:run()\n    math.randomseed(os.clock()*1000)\n    cc.FileUtils:getInstance():addSearchPath(\"res/\")\n    self:enterScene(\"LoginScene\")\nend\n\nreturn MyApp\n"
  },
  {
    "path": "源代码/mir9/src/app/figure/Enemy.lua",
    "content": "local scheduler = require(\"framework.scheduler\")\nlocal MapPoint = require(\"app.map.MapPoint\")\nlocal Monomer = require(\"app.figure.Monomer\")\nlocal FlutteringFairy = require(\"app.game_ui.FlutteringFairy\")\n\n-- 敌人类\nlocal Enemy = class(\"Enemy\", Monomer)\n\nfunction Enemy:ctor(enemyID, roleNumber, weaponNumber)\n    Enemy.super.ctor(self)\n    \n    self.m_enemyID = enemyID\n    self.m_denPos = MapPoint.new(0, 0)\n    self.m_isActive = true\n    \n    self:initWithEnemy(roleNumber, weaponNumber)\nend\n\nfunction Enemy:initWithEnemy(roleNumber, weaponNumber)\n    self.m_fReactionInterval = 1.0\n    \n    self:setVisualRange(10)\n    self:setFigure(TexturePathType.Monster, roleNumber)\n    self:setWeapon(weaponNumber)\n    \n    return true\nend\n\nfunction Enemy:onEnter()\n    Enemy.super.onEnter(self)\n    local mpoint = MapPoint.new(cc.p(self:getPosition()))\n    g_mainScene:insterMapPoint(self, mpoint)\nend\n\nfunction Enemy:onExit()\n    Enemy.super.onExit(self)\n    self:stopAllActions()\n    self:killTimer_Patrol()\nend\n\n-- 启动计时器\nfunction Enemy:setTimer_Patrol(fTime)\n    self:killTimer_Patrol()\n    self.hPatrol = scheduler.scheduleGlobal(handler(self, self.patrol), fTime)\nend\n\n-- 关闭计时器\nfunction Enemy:killTimer_Patrol()\n    if (self.hPatrol) then\n        scheduler.unscheduleGlobal(self.hPatrol)\n        self.hPatrol = nil\n    end\nend\n\n-- 显示人物\nfunction Enemy:showFigure()\n    local point = cc.p(self:getPosition())\n    if (not cc.rectContainsPoint(g_mainScene:getCurrBgMap():getShowRect(), point)) then\n        return\n    end\n\n    Enemy.super.showFigure(self)\nend\n\n-- 隐藏人物\nfunction Enemy:hideFigure()\n    local point = cc.p(self:getPosition())\n    if (cc.rectContainsPoint(g_mainScene:getCurrBgMap():getHideRect(), point)) then\n        return\n    end\n    \n    Enemy.super.hideFigure(self)\nend\n\n-- 跑\nfunction Enemy:runBy(mpoint)\n    local relust = Enemy.super.runBy(self, mpoint)\n    \n    if (relust.fTime ~= 0) then\n        g_mainScene:insterMapPoint(self, relust.mpoint)\n    end\n    \n    return relust\nend\n\n-- 走\nfunction Enemy:walkBy(mpoint)\n    local relust = Enemy.super.walkBy(self, mpoint)\n    \n    if (relust.fTime ~= 0) then\n        g_mainScene:insterMapPoint(self, relust.mpoint)\n    end\n    \n    return relust\nend\n\n-- 去到指定点\nfunction Enemy:goTo(mpoint)\n    g_mainScene:insterMapPoint(self, mpoint)\n    \n    return Enemy.super.goTo(self, mpoint)\nend\n\nfunction Enemy:detectionOfEachOther()\n    Enemy.super.detectionOfEachOther(self)\n    self:detectionWhetherCounter()\nend\n\n-- 检测是否反击\nfunction Enemy:detectionWhetherCounter()\n    if (not self.m_attackMonomerMajor) then\n        self:setAttackMonomerMajor(self:getAgainstMeOfFirst())\n    end\n    \n    if (not self.m_attackMonomerMajor) then\n        self:patrol()\n    else\n        self:followAttackAndSetAttackMethods(self.m_attackMonomerMajor, self.m_attackSkillInfo.m_nNum)\n    end\nend\n\nfunction Enemy:followAttack()\n    self:killTimer_Patrol()\n    \n    Enemy.super.followAttack(self)\nend\n\nfunction Enemy:followTheTracks()\n    local mpoint = self.m_attackMonomerMajor:ownAttackPoint(self, self.m_attackSkillInfo.m_attackDistance)\n    if (mpoint:equalsObj(MapPoint.new(cc.p(0, 0)))) then\n        return\n    end\n    mpoint = MapPoint.sub(mpoint, MapPoint.new(cc.p(self:getPosition())))\n    local relust = self:walkBy(mpoint)\n    local fTime = self.m_fReactionInterval + relust.fTime\n    self:delayCallBack(fTime, handler(self, self.followAttack)):setTag(TAG_FOLLOWATTACK)\nend\n\n-- 超出可视范围\nfunction Enemy:beyondVisualRange()\n    self.m_attackMonomerMajor:removeAgainstMe(self)\n    self:patrol()\n    \n    Enemy.super.beyondVisualRange(self)\nend\n\n-- 隔一段时间走动一下\nfunction Enemy:patrol(fDelay)\n    self:killTimer_Patrol()\n    \n    if (self.m_isCanMoved == false) then\n        return\n    end\n    \n    local symbol = math.floor(2 * math.random())\n    local arcX = math.floor(10 * math.random())\n    local arcY = math.floor(10 * math.random())\n    local mpoint = MapPoint.new(self.m_denPos.x+arcX*symbol, self.m_denPos.z+arcY*symbol)\n    local dirt = MapPoint.sub(mpoint, MapPoint.new(cc.p(self:getPosition())))\n    self:walkBy(dirt)\n    \n    local fTime = math.floor(180 * math.random()) + 1\n    self:setTimer_Patrol(fTime)\nend\n\nfunction Enemy:moveByEnd()\n    Enemy.super.moveByEnd(self)\nend\n\n-- 死亡\nfunction Enemy:death()\n    if (self:getState() == FigureState.Death) then\n        return\n    end\n    \n    Enemy.super.death(self)\n    \n    local delayTime1 = cc.DelayTime:create(0.3)\n    local delayTime2 = cc.DelayTime:create(0.3)\n    local delayTime3 = cc.DelayTime:create(6)\n    local fadeOut = cc.FadeOut:create(0.1)\n    local callFunc1 = cc.CallFunc:create(handler(self, self.addExp))\n    local callFunc2 = cc.CallFunc:create(handler(self, self.removeThis))\n    local callFunc3 = cc.CallFunc:create(function()\n        self:removeFromParent()\n    end)\n    local sequence = cc.Sequence:create(delayTime1, \n        callFunc1, delayTime2, callFunc2, delayTime3, fadeOut, callFunc3)\n    self.m_nMonomer:runAction(sequence)\nend\n\nfunction Enemy:addAgainstMe(monomer, blood)\n    Enemy.super.addAgainstMe(self, monomer, blood)\n    self:hurt()\nend\n\nfunction Enemy:addExp()\n    local fairy = FlutteringFairy.addFairy(self, cc.p(0, self:getContentSize().height*0.6), FairyType.AddExp, math.random()*20+990, handler(self, self.flutteringFairyFinish))\n    self:pushFlutteringFairy(fairy)\nend\n\nfunction Enemy:removeThis()\n    g_mainScene:removeEnemy(self)\n    if (self.bloodBg) then\n        self.bloodBg:removeFromParent()\n        self.bloodBg = nil\n    end\nend\n\nfunction Enemy:getRoleNumber()\n    return self.m_nCurRoleNum\nend\n\n-- 攻击\nfunction Enemy:attacking()\n    Enemy.super.attacking(self)\nend\n\n-- 受到攻击\nfunction Enemy:underAttack()\n    Enemy.super.underAttack(self)\n    \n    if (self.m_nState == FigureState.Death) then\n        return\n    end\n    \n    if (self.m_attackMonomerMajor) then\n        return\n    end\n    \n    self:detectionWhetherCounter()\nend\n\n-- 设置人物状态\nfunction Enemy:setFigureState(nState, nDirection)\n    Enemy.super.setFigureState(self, nState, nDirection)\nend\n\nfunction Enemy:getDenPos()\n    return self.m_denPos\nend\n \nfunction Enemy:setDenPos(mpoint)\n    self.m_denPos = mpoint\nend\n\nfunction Enemy:getEnemyID()\n    return self.m_enemyID\nend\n\nfunction Enemy:getActive()\n    return self.m_isActive\nend\n\nfunction Enemy:setActive(bActive)\n    self.m_isActive = bActive\nend\n\nreturn Enemy"
  },
  {
    "path": "源代码/mir9/src/app/figure/Figure.lua",
    "content": "local TextureController = require(\"app.figure.TextureController\") \n\nlocal TAG_ANIMATE = 0xfffff0\n\n-- 人物方向\nFigureDirection = {\n    Up              = 8,    -- 上\n    LeftAndUp       = 7,    -- 左上\n    Left            = 6,    -- 左\n    LeftAndDown     = 5,    -- 左下\n    Down            = 4,    -- 下\n    RightAndDown    = 3,    -- 右下\n    Right           = 2,    -- 右\n    RightAndUp      = 1,    -- 右上\n    None            = 0\n}\n\n-- 人物状态\nFigureState = {\n    Death     = 7,  -- 死亡\n    Hurt      = 6,  -- 伤害 \n    Caster    = 5,  -- 投掷 \n    Attack    = 4,  -- 攻击 \n    Run       = 3,  -- 跑\n    Walk      = 2,  -- 走\n    Stand     = 1,\n    None      = 0\n}\n\n-- 人物类\nlocal Figure = class(\"Figure\", function()\n    return display.newSprite()\nend)\n\nfunction Figure:ctor(nType, nFigureNum)\n    self.m_nState = FigureState.Stand\n    self.m_nDirection = FigureDirection.Down\n    self.m_nFrameRate = 0.5\n    self.m_nTexturePathType = nType\n    self.m_nFigureNum = math.floor(nFigureNum)\n    self.m_nHairNum = 0\n    self.m_nWeaponNum = 0\n    self.m_spHair = nil\n    self.m_spWeapon = nil\n    self.m_pDelegate = nil\n    \n    TextureController.addSpriteFrames(self.m_nTexturePathType, self.m_nFigureNum, handler(self, self.updateFigure))\n\n    self:setContentSize(256 * 0.8, 256 * 0.8)\nend\n\n-- 设置头发\nfunction Figure:setHair(nHairNum)\n    nHairNum = math.floor(nHairNum)\n    \n    if (self.m_spHair ~= nil) then\n        self.m_spHair:removeFromParent()\n        TextureController.subSpriteFrames(TexturePathType.Hair, self.m_nHairNum)\n        self.m_spHair = nil\n        self.m_nHairNum = 0\n    end\n    \n    if (self.m_nTexturePathType == TexturePathType.Monster) then\n        return\n    end\n    \n    self.m_nHairNum = nHairNum * 10 + self.m_nFigureNum % 10\n    if (0 == self.m_nHairNum) then\n        return\n    end\n\n    TextureController.addSpriteFrames(TexturePathType.Hair, self.m_nHairNum, handler(self, self.updateFigure))\n        \n    self.m_spHair = cc.Sprite:create()\n    self.m_spHair:setPosition(128*0.8, 128*0.8)\n    self:addChild(self.m_spHair, 1, 999)\nend\n\n-- 设置武器\nfunction Figure:setWeapon(nWeaponNum)\n    if (self.m_spWeapon ~= nil) then\n        self.m_spWeapon:removeFromParent()\n        TextureController.subSpriteFrames(TexturePathType.Weapon, self.m_nWeaponNum)\n        self.m_spWeapon = nil\n        self.m_nWeaponNum = 0\n    end\n    \n    if (self.m_nTexturePathType == TexturePathType.Monster) then\n        return\n    end\n    \n    self.m_nWeaponNum = nWeaponNum\n    if (0 == self.m_nWeaponNum) then\n        return\n    end\n        \n    TextureController.addSpriteFrames(TexturePathType.Weapon, self.m_nWeaponNum, handler(self, self.updateFigure))\n \n    self.m_spWeapon = cc.Sprite:create()\n    self.m_spWeapon:setPosition(128*0.8, 128*0.8)\n    self:addChild(self.m_spWeapon, 0, 888)\nend\n\n-- 设置状态和方向\nfunction Figure:setFigureState(nState, nDirection)\n    local bIsChange = false\n    \n    if (nState and nState ~= FigureState.None and nState ~= self.m_nState) then\n        self.m_nState = nState\n        bIsChange = true\n    end\n    \n    if (nDirection and nDirection ~= FigureDirection.None and nDirection ~= self.m_nDirection) then\n        self.m_nDirection = nDirection\n        bIsChange = true\n    end\n\n    if (bIsChange) then\n        self:updateFigure()\n    end\nend\n\nlocal function getFrameRate(nState, nType)\n    local nFrameRate = 0\n    \n    if (nType == TexturePathType.Figure) then\n        if (nState == FigureState.Stand) then\n            nFrameRate = 1/3.0\n        elseif (nState == FigureState.Walk) then\n            nFrameRate = 0.6/16.0\n        elseif (nState == FigureState.Run) then\n            nFrameRate = 0.6/16.0\n        elseif (nState == FigureState.Attack) then\n            nFrameRate = 1/8.0     \n        elseif (nState == FigureState.Caster) then\n            nFrameRate = 1/8.0\n        elseif (nState == FigureState.Hurt) then\n            nFrameRate = 1/8.0\n        elseif (nState == FigureState.Death) then\n            nFrameRate = 1/4.0\n        end\n    end\n    \n    if (nType == TexturePathType.Monster) then\n        if (nState == FigureState.Stand) then\n            nFrameRate = 1/5.0\n        elseif (nState == FigureState.Walk) then\n            nFrameRate = 0.6/8.0\n        elseif (nState == FigureState.Run) then\n            nFrameRate = 0.6/8.0\n        elseif (nState == FigureState.Attack) then\n            nFrameRate = 1/8.0\n        elseif (nState == FigureState.Caster) then\n            nFrameRate = 1/8.0\n        elseif (nState == FigureState.Hurt) then\n            nFrameRate = 1/8.0\n        elseif (nState == FigureState.Death) then\n            nFrameRate = 1/8.0\n        end\n    end\n    \n    return nFrameRate\nend\n\n-- 更新人物状态\nfunction Figure:updateFigure()\n    self.m_nFrameRate = getFrameRate(self.m_nState, self.m_nTexturePathType)\n    \n    if (self.m_nDirection == FigureDirection.Left or \n        self.m_nDirection == FigureDirection.LeftAndUp or \n        self.m_nDirection == FigureDirection.LeftAndDown) then\n        self:setRotationSkewY(180)\n    else\n        self:setRotationSkewY(0)\n    end\n    \n    if (self.m_spWeapon) then\n        if (self.m_nDirection == FigureDirection.Up) then\n            self.m_spWeapon:setLocalZOrder(-1)\n        else        \n            self.m_spWeapon:setLocalZOrder(0)\n        end\n    end\n    \n    self:runActions()\nend\n\nfunction Figure:runActions()\n    self:stopActionByTag(TAG_ANIMATE)\n    \n    local figurePath = TextureController.getTexturePath(self.m_nTexturePathType, self.m_nFigureNum)\n    local animate = self:getRunActionsFromSprite(figurePath)\n    \n    if (self.m_nState == FigureState.Attack) then\n        local delayTime = cc.DelayTime:create(animate:getDuration()/2)\n        local callFunc1 = cc.CallFunc:create(handler(self, self.attacking))\n        local callFunc2 = cc.CallFunc:create(handler(self, self.attackCompleted))\n        self:runAction(cc.Sequence:create(delayTime, callFunc1, delayTime, callFunc2))\n        \n        animate:setTag(TAG_ANIMATE)\n        self:runAction(animate)\n    elseif (self.m_nState == FigureState.Caster) then\n        local delayTime = cc.DelayTime:create(animate:getDuration()/2)\n        local callFunc1 = cc.CallFunc:create(handler(self, self.attacking))\n        local callFunc2 = cc.CallFunc:create(handler(self, self.attackCompleted))\n        self:runAction(cc.Sequence:create(delayTime, callFunc1, delayTime, callFunc2))\n        \n        animate:setTag(TAG_ANIMATE)\n        self:runAction(animate)\n    elseif (self.m_nState == FigureState.Hurt) then\n        local sequence = cc.Sequence:create(animate, cc.CallFunc:create(handler(self, self.hurtCompleted)))\n        sequence:setTag(TAG_ANIMATE)\n        self:runAction(sequence)\n    elseif (self.m_nState == FigureState.Death) then\n        self:runAction(cc.Sequence:create(animate, cc.CallFunc:create(handler(self, self.deathCompleted))))\n    else\n        local repeatForever = cc.RepeatForever:create(animate)\n        repeatForever:setTag(TAG_ANIMATE)\n        self:runAction(repeatForever)\n    end\n    \n    if (self.m_spHair) then\n        self.m_spHair:stopAllActions()\n        \n        local path = TextureController.getTexturePath(TexturePathType.Hair, self.m_nHairNum)\n        local animate = self:getRunActionsFromSprite(path)\n        if (self.m_nState > 3) then\n            self.m_spHair:runAction(animate)\n        else\n            self.m_spHair:runAction(cc.RepeatForever:create(animate))\n        end\n    end\n    \n    if (self.m_spWeapon) then\n        self.m_spWeapon:stopAllActions()\n        \n        local path = TextureController.getTexturePath(TexturePathType.Weapon, self.m_nWeaponNum)\n        if (self.m_nState == FigureState.Death) then\n            path = path .. string.sub(figurePath, -1)\n        else\n            path = path .. \"0\"\n        end\n        \n        local animate = self:getRunActionsFromSprite(path)\n        if (self.m_nState > 3) then\n            self.m_spWeapon:runAction(animate)\n        else\n            self.m_spWeapon:runAction(cc.RepeatForever:create(animate))\n        end\n    end\nend\n\nfunction Figure:getRunActionsFromSprite(path)\n    local nDirection = self.m_nDirection\n    if (8 > nDirection and nDirection > 4) then\n        nDirection = 8 - nDirection\n    end\n\n    local flag = 0\n    local array = {}\n    \n    while (true) do\n        local frameName = string.format(\"%s_%d_%d_%02d.png\", path, self.m_nState, nDirection, flag)\n        local frame = cc.SpriteFrameCache:getInstance():getSpriteFrame(frameName)\n        if (not frame) then\n            break\n        end\n        table.insert(array, frame)\n        flag = flag + 1\n    end\n    \n    local animation = cc.Animation:createWithSpriteFrames(array, self.m_nFrameRate)\n    local animate = cc.Animate:create(animation)\n    return animate\nend\n\nfunction Figure:attacking()\n    if (self.m_pDelegate) then\n        self.m_pDelegate:attacking()\n    end\nend\n\nfunction Figure:attackCompleted()\n    if (self.m_pDelegate) then\n        self.m_pDelegate:attackCompleted()\n    end\nend\n\nfunction Figure:hurtCompleted()\n    if (self.m_pDelegate) then\n        self.m_pDelegate:underAttack()\n    end\nend\n\nfunction Figure:deathCompleted()\n    if (self.m_pDelegate) then\n        self.m_pDelegate:deathActionFinish()\n    end\nend\n\nfunction Figure:setDelegate(delegate)\n    self.m_pDelegate = delegate\nend\n\n-- 脚\nfunction Figure:getAnchorPointWithFoot()\n    local x = self:getContentSize().width / 2 / self:getContentSize().width\n    local y = (self:getContentSize().height - 120) / self:getContentSize().height\n    return cc.p(x, y)\nend\n\n-- 手\nfunction Figure:getAnchorPointWithHand()\n    local x = self:getContentSize().width / 2 / self:getContentSize().width\n    local y = (self:getContentSize().height - 64) / self:getContentSize().height\n    return cc.p(x, y)\nend\n\nfunction Figure:getAnchorPointCenter()\n    return cc.p(0.5, 0.5)\nend\n\n-- 设置透明度\nfunction Figure:setOpacityEx(opacity)\n    self:setOpacity(opacity)\n    \n    if (self.m_spHair) then\n        self.m_spHair:setOpacity(opacity)\n    end\n    \n    if (self.m_spWeapon) then\n        self.m_spWeapon:setOpacity(opacity)\n    end\nend\n\nfunction Figure:getWeaponSprite()\n    return self.m_spWeapon\nend\n\nreturn Figure"
  },
  {
    "path": "源代码/mir9/src/app/figure/Monomer.lua",
    "content": "local scheduler = require(\"framework.scheduler\")\nlocal Figure = require(\"app.figure.Figure\")\nlocal MapPoint = require(\"app.map.MapPoint\")\nlocal BgMap = require(\"app.map.BgMap\")\nlocal TextureController = require(\"app.figure.TextureController\")\nlocal AttackSkillSystem = require(\"app.skill_system.AttackSkillSystem\")\nlocal SkillEffectShow = require(\"app.skill_system.SkillEffectShow\")\nlocal FlutteringFairy = require(\"app.game_ui.FlutteringFairy\")\n\nTAG_MOVET = 0xfffff1\nTAG_FOLLOWATTACK = 0xfffff2\nTAG_COOLINGTIMEATTACK = 0xfffff3\nTAG_MOVETWAIT = 0xfffff4\n\nMoveInfo = class(\"MoveInfo\")\n\nfunction MoveInfo:ctor(fTime, mpoint, bIsCanNotFineTheWay)    \n    self.fTime = fTime\n    self.mpoint = mpoint\n    self.bIsCanNotFineTheWay = bIsCanNotFineTheWay\nend\n\nlocal Monomer = class(\"Monomer\", function()\n    return display.newSprite()\nend)\n\nfunction Monomer:ctor()\n    self.m_nMonomer = nil\n    self.m_nDirection = FigureDirection.Down\n    self.m_nState = FigureState.Stand\n    self.m_attackMonomerMajor = nil\n    self.m_againstMeSet = {}\n    self.m_attackTime = 0.5\n    self.m_fReactionInterval = 0\n    self.m_bIsCanMoved = true\n    self.m_runSpeed = 1\n    self.m_visualRange = 5\n    self.m_bIsCooling = false\n    self.m_attackSkillInfo = nil\n    self.m_blood = 0\n    self.m_magic = 0\n    self.m_pTheAttack = 0\n    self.m_nTexturePathType = TexturePathType.Figure\n    self.m_nCurRoleNum = 0\n    self.m_nCurHairNum = 0\n    self.m_nCurWeaponNum = 0\n    self.m_nCurEffectID = 0\n    self.hUpdateVertexZ = 0\n    self.m_mapAttackSkill = {}\n    self.m_flutteringFairyDeque = {}\n    \n    self:addAttackSkill(1001)\n    self.m_attackSkillInfo = g_attackSkillSystem:getAttackSkillInfo(1001)\n    \n    self:setNodeEventEnabled(true)\n    self:setScale(1.0)\nend\n\nfunction Monomer:onEnter()\n    self:showFigure()\nend\n\nfunction Monomer:onExit()\n    self:stopAllActions()\n    self:killTimer_UpdateVertexZ()\nend\n\n-- 设置人物\nfunction Monomer:setFigure(nType, nRoleNum)\n    self.m_nTexturePathType = nType\n    \n    self.m_nCurRoleNum = nRoleNum\n    \n    if (self.m_nTexturePathType ~= TexturePathType.Figure) then\n        self.m_nCurWeaponNum = 0\n    end\n    \n    if (self.m_nMonomer) then\n        self:hideFigure()\n        self:showFigure()\n    end\nend\n\n-- 设置头发\nfunction Monomer:setHair(nHairNum)\n    if (self.m_nTexturePathType ~= TexturePathType.Figure) then\n        return\n    end\n    \n    self.m_nCurHairNum = nHairNum\n    \n    if (self.m_nMonomer) then\n        self.m_nMonomer:setHair(self.m_nCurHairNum)\n    end\nend\n\n-- 设置武器\nfunction Monomer:setWeapon(nWeaponNum)\n    if (self.m_nTexturePathType ~= TexturePathType.Figure) then\n        return\n    end\n    \n    self.m_nCurWeaponNum = nWeaponNum\n        \n    if (self.m_nMonomer) then\n        self.m_nMonomer:setWeapon(self.m_nCurWeaponNum)\n    end\nend\n\n-- 显示人物\nfunction Monomer:showFigure()\n    if (0 == self.m_nCurRoleNum) then\n        return\n    end\n    \n    if (self.m_nMonomer) then\n        return\n    end\n    \n    self.m_nMonomer = Figure.new(self.m_nTexturePathType, self.m_nCurRoleNum)\n    self:setContentSize(self.m_nMonomer:getContentSize())\n    self:setAnchorPoint(self.m_nMonomer:getAnchorPointWithFoot())\n    local size = self:getContentSize()\n    self.m_nMonomer:setPosition(size.width/2, size.height/2)\n    self:addChild(self.m_nMonomer)\n    self.m_nMonomer:setDelegate(self)\n    self.m_nMonomer:setHair(self.m_nCurHairNum)\n    self.m_nMonomer:setWeapon(self.m_nCurWeaponNum)\n    self.m_nMonomer:setFigureState(self.m_nState, self.m_nDirection)\n        \n    local ptBlood = cc.p(size.width * self:getAnchorPoint().x, size.height * 0.8)\n        \n    self.bloodBg = display.newSprite(\"blood_box.png\")\n    self.bloodBg:setAnchorPoint(cc.p(0.5, 0.5))\n    self.bloodBg:setPosition(ptBlood)\n    self.bloodBg:setScale(0.3)\n    self:addChild(self.bloodBg)\n        \n    self.bloodIn = display.newSprite(\"blood_in.png\")\n    self.bloodIn:setAnchorPoint(cc.p(0, 0))\n    self.bloodBg:addChild(self.bloodIn)\nend\n\n-- 隐藏人物\nfunction Monomer:hideFigure()\n    if (not self.m_nMonomer) then\n        return\n    end\n    self.m_nMonomer:removeFromParent()\n    self.m_nMonomer = nil\n    self.bloodBg:removeFromParent()\nend\n\n-- 设置人物状态\nfunction Monomer:setFigureState(nState, nDirection)\n    if (self.m_nState == FigureState.Death) then\n        return\n    end\n    \n    if (nState ~= FigureState.None) then\n        self.m_nState = nState\n    end\n        \n    if (nDirection ~= FigureDirection.None) then\n        self.m_nDirection = nDirection\n    end\n        \n    if (self.m_nMonomer) then\n        self.m_nMonomer:setFigureState(nState, nDirection)\n    end\nend\n\n-- 脚\nfunction Monomer:getHandPointRelativeFootOffset()\n    local anchorPoint\n    if (self.m_nMonomer) then\n        anchorPoint = cc.pSub(self.m_nMonomer:getAnchorPointWithHand(), cc.p(self:getAnchorPoint()))\n    else\n        anchorPoint = cc.p(0.5, 0.5)\n    end\n    local szContent = self:getContentSize()\n    return cc.p(szContent.width * anchorPoint.x, szContent.height * anchorPoint.y)\nend\n\n-- 手\nfunction Monomer:getHandPoint()\n    local handRelativeFoot = self:getHandPointRelativeFootOffset()\n    local point = cc.p(self:getPosition())\n    return cc.pAdd(point, handRelativeFoot)\nend\n\nfunction Monomer:getHurtPointRelativeFootOffset()\n    local anchorPoint\n    if (self.m_nMonomer) then\n        anchorPoint = cc.pSub(self.m_nMonomer:getAnchorPointCenter(), cc.p(self:getAnchorPoint()))\n    else\n        anchorPoint = cc.p(0.5, 0.5)\n    end\n    local szContent = self:getContentSize()\n    return cc.p(szContent.width * anchorPoint.x, szContent.height * anchorPoint.y)\nend\n\nfunction Monomer:getHurtPoint()\n    local hurtRelativeFoot = self:getHurtPointRelativeFootOffset()\n    local point = cc.p(self:getPosition())\n    return cc.pAdd(point, hurtRelativeFoot)\nend\n\nfunction Monomer:getAgainstMeOfFirst()\n    if (#self.m_againstMeSet <= 0) then\n        return nil\n    end\n\n    return self.m_againstMeSet[1]\nend\n\nfunction Monomer:getRect()\n    local ptPos = cc.p(self:getPosition())\n    local szContent = self:getContentSize()\n    local ptAnchor = self:getAnchorPoint()\n    \n    local off_x = szContent.width * 0.4\n    local off_y = szContent.height * ptAnchor.y * 0.5\n\n    local width = szContent.width * 0.3\n    local height = szContent.height * 0.6\n    \n    local rect = cc.rect(0,0,0,0)\n    rect.x, rect.y = off_x, off_y\n    rect.width, rect.height = width, height\n    \n    local x = szContent.width * ptAnchor.x\n    local y = szContent.height * ptAnchor.y\n    \n    local point = cc.p(x, y)\n    point = cc.pSub(ptPos, point)\n\n    local relustRect = rect\n    relustRect.x = point.x + rect.x\n    relustRect.y = point.y + rect.y\n    \n    return relustRect\nend\n\nfunction Monomer:getAlphaWithPoint(point)\n    return 0\nend\n\n-- 走到左面\nfunction Monomer:walkLeft()\n    self:setFigureState(FigureState.Walk, FigureDirection.Left)\nend\n\n-- 走到右面\nfunction Monomer:walkRight()\n    self:setFigureState(FigureState.Walk, FigureDirection.Right)\nend\n\n-- 走到上面\nfunction Monomer:walkUp()\n    self:setFigureState(FigureState.Walk, FigureDirection.Up)\nend\n\n-- 走到下面\nfunction Monomer:walkDown()\n    self:setFigureState(FigureState.Walk, FigureDirection.Down)\nend\n\n-- 走到左上\nfunction Monomer:walkLeftAndUp()\n    self:setFigureState(FigureState.Walk, FigureDirection.LeftAndUp)\nend\n\n-- 走到右上\nfunction Monomer:walkRightAndUp()\n    self:setFigureState(FigureState.Walk, FigureDirection.RightAndUp)\nend\n\n-- 走到右下\nfunction Monomer:walkRightAndDown()\n    self:setFigureState(FigureState.Walk, FigureDirection.RightAndDown)\nend\n\n-- 走到左下\nfunction Monomer:walkLeftAndDown()\n    self:setFigureState(FigureState.Walk, FigureDirection.LeftAndDown)\nend\n\n-- 跑到左面\nfunction Monomer:runLeft()\n    self:setFigureState(FigureState.Run, FigureDirection.Left)\nend\n\n-- 跑到右面\nfunction Monomer:runRight()\n    self:setFigureState(FigureState.Run, FigureDirection.Right)\nend\n\n-- 跑到上面\nfunction Monomer:runUp()\n    self:setFigureState(FigureState.Run, FigureDirection.Up)\nend\n\n-- 跑到下面\nfunction Monomer:runDown()\n    self:setFigureState(FigureState.Run, FigureDirection.Down)\nend\n\n-- 跑到左上\nfunction Monomer:runLeftAndUp()\n    self:setFigureState(FigureState.Run, FigureDirection.LeftAndUp)\nend\n\n-- 跑到右上\nfunction Monomer:runRightAndUp()\n    self:setFigureState(FigureState.Run, FigureDirection.RightAndUp)\nend\n\n-- 跑到右下\nfunction Monomer:runRightAndDown()\n    self:setFigureState(FigureState.Run, FigureDirection.RightAndDown)\nend\n\n-- 跑到左下\nfunction Monomer:runLeftAndDown()\n    self:setFigureState(FigureState.Run, FigureDirection.LeftAndDown)\nend\n\nfunction Monomer:stand()\n    self:setFigureState(FigureState.Stand, FigureDirection.None)\nend\n\n-- 伤害\nfunction Monomer:hurt()\n    if (self:getState() ~= FigureState.Death) then\n        self:setFigureState(FigureState.Hurt, FigureDirection.None)\n    end\nend\n\n-- 死亡\nfunction Monomer:death()\n    if (self:getState() ~= FigureState.Death) then\n        self.m_nMonomer:stopAllActions()\n        --self.m_nMonomer:unscheduleAllSelectors()\n        self:stopAllActions()\n        --self:unscheduleAllSelectors()\n        self:setFigureState(FigureState.Death, FigureDirection.None)\n        self:clearData()\n    end\nend\n\nfunction Monomer:playEffect(node, path)\n    if ((not node) or (not path) or (path == \"\")) then\n        return\n    end\n        \n    local array = {}\n        \n    local flag = 4\n        \n    while (true) do\n        local fileName = string.format(\"%s%04d.png\", path, flag)\n        local spriteFrame = cc.SpriteFrameCache:getInstance():getSpriteFrame(fileName)\n        if (not spriteFrame) then\n            break\n        end\n        table.insert(array, spriteFrame)\n        flag = flag + 1\n    end\n\n    if (#array == 0) then\n        return\n    end\n        \n    local sprite = cc.Sprite:createWithSpriteFrame(array[1])\n    local x = self:getContentSize().width * self:getAnchorPoint().x\n    local y = self:getContentSize().height * 0.65\n    sprite:setPosition(x, y)\n    node:addChild(sprite, 1000)\n        \n    local animation = cc.Animation:createWithSpriteFrames(array, 1 / 32)\n    local animate = cc.Animate:create(animation)\n    local callFunc = cc.CallFunc:create(function()\n        sprite:removeFromParent()\n    end)\n    local sequence = cc.Sequence:create(animate, callFunc)\n    sprite:runAction(sequence)\nend\n\n-- 恢复血量\nfunction Monomer:bloodReturn(fBlood)\n    local blood = math.min(self:getBlood() + fBlood, self:getBloodCap())\n    self:setBlood(blood)\n    self:updateBloodProgress()\n    \n    local point = cc.p(0, self:getContentSize().height * 0.5)\n    local fairy = FlutteringFairy.addFairy(self, point, TypeAddBlood, fBlood, handler(self, self.flutteringFairyFinish))\n    self:pushFlutteringFairy(fairy)\n    self:playEffect(self, \"addh-\")\nend\n\nfunction Monomer:followAttack()\n    self:stopActionByTag(TAG_FOLLOWATTACK)\n    \n    if (not self.m_attackMonomerMajor) then\n        self:beyondVisualRange()\n        return\n    end\n        \n    if (self.m_attackMonomerMajor:getState() == FigureState.Death) then\n        self:beyondVisualRange()\n        return\n    end\n        \n    if (self:isInTheAttackRange(self.m_attackMonomerMajor)) then        -- 敌人在攻击范围内\n        self:attackEnemy()\n    elseif (self:isInTheFieldOfView(self.m_attackMonomerMajor)) then    -- 敌人在可视范围内\n        self:followTheTracks()\n    else\n        self:beyondVisualRange()\n    end\nend\n\nfunction Monomer:followTheTracks()\n    local mpoint = self.m_attackMonomerMajor:ownAttackPoint(self, self.m_attackSkillInfo.m_attackDistance)\n    if (mpoint:equalsObj(MapPoint.new(0, 0))) then\n        return\n    end\n    local point = cc.p(self:getPosition())\n    local mpos = MapPoint.new(point)\n    mpoint = MapPoint.sub(mpoint, mpos)\n    local relust = self:runBy(mpoint)\n    if (relust.fTime == 0) then\n        return\n    end\n    local fTime = self.m_fReactionInterval + relust.fTime + 0.01\n    self:delayCallBack(fTime, handler(self, self.followAttack)):setTag(TAG_FOLLOWATTACK)\nend\n\nfunction Monomer:isInTheAttackRange(monomer)\n    local pos1 = cc.p(self:getPosition())\n    local pos2 = cc.p(monomer:getPosition())\n    \n    local mpos1 = MapPoint.new(pos1)\n    local mpos2 = MapPoint.new(pos2)\n    \n    local attackRange = self.m_attackSkillInfo.m_attackDistance\n    \n    if (mpos1:getDistance(mpos2) > attackRange) then\n        return false\n    end\n    \n    if (mpos1:equalsObj(mpos2)) then\n        return false\n    end\n    \n    if (self:isMoveRunning()) then\n        return false\n    end\n        \n    return true\nend\n\nfunction Monomer:isInTheFieldOfView(monomer)\n    local pos1 = cc.p(self:getPosition())\n    local pos2 = cc.p(monomer:getPosition())\n    \n    local mpos1 = MapPoint.new(pos1)\n    local mpos2 = MapPoint.new(pos2)\n    \n    if (mpos1:getDistance(mpos2) <= self.m_visualRange) then\n        return true\n    end\n    \n    return false\nend\n\nfunction Monomer:beyondVisualRange()\n    self:setAttackMonomerMajor(nil)\nend\n\nfunction Monomer:clearData()\n    self.m_flutteringFairyDeque = {}\n    \n    for i = 1, #self.m_againstMeSet do\n        local monomer = self.m_againstMeSet[i]\n        monomer:removeAttackMonomerMajor(self)\n    end\n    self.m_againstMeSet = {}\n    \n    if (self.m_attackMonomerMajor) then\n        self.m_attackMonomerMajor:removeAgainstMe(self)\n        self:setAttackMonomerMajor(nil)\n    end\nend\n\nfunction Monomer:followAttackAndSetAttackMethods(otherEnemy, nAttackSkillNum)\n    if (nAttackSkillNum ~= 0) then\n        if (not self.m_mapAttackSkill[nAttackSkillNum]) then\n            return\n        end\n        self.m_attackSkillInfo = self.m_mapAttackSkill[nAttackSkillNum]\n    end\n    \n    if (not otherEnemy) then\n        return\n    end\n    \n    if (self:getState() == FigureState.Death) then\n        return\n    end\n\n    self:setAttackMonomerMajor(otherEnemy)\n    self:followAttack()\nend\n\nfunction Monomer:ownAttackPoint(monomer, attackRange)\n    local relust = MapPoint.new(0, 0)\n    \n    local mpos1 = MapPoint.new(cc.p(self:getPosition()))\n    local mpos2 = MapPoint.new(cc.p(monomer:getPosition()))\n    local lenght = math.min(mpos1:getDistance(mpos2), attackRange)\n    \n    if (attackRange == 1) then\n        relust = mpos1\n    else\n        local x = -lenght\n        local z = -lenght\n        local arrMPoint = {}\n        while (true) do\n            if (#arrMPoint == 8*lenght) then\n                break\n            end\n            \n            table.insert(arrMPoint, MapPoint.new(x, z))\n            \n            if (#arrMPoint <= 2*lenght) then\n                x = x + 1\n            elseif (2*lenght < #arrMPoint and #arrMPoint <= 4*lenght) then\n                z = z + 1\n            elseif (4*lenght < #arrMPoint and #arrMPoint <= 6*lenght) then\n                x = x - 1\n            elseif (6*lenght < #arrMPoint and #arrMPoint < 8*lenght) then\n                z = z - 1\n            end\n        end\n        \n        local l = 0xffff\n        for i = 1, #arrMPoint do\n            local mpoint = MapPoint.add(mpos2, arrMPoint[i])\n            if ((not g_mainScene:isPointValid(mpoint)) or (mpoint:getDistance(mpos1) >= l)) then\n            else\n                relust = mpoint\n                l = mpoint:getDistance(mpos1)\n            end\n        end\n    end\n\n    return relust\nend\n\n--function Monomer:standAndWatch(MapPoint point)\n--{\n--    M_INT lenghtX = mapSub(point, MapPoint(m_obPosition)).x;\n--    M_INT lenghtY = mapSub(point, MapPoint(m_obPosition)).z;\n--    float lenght = sqrtf(pow(lenghtX, 2) + pow(lenghtY, 2));\n--    float pointX = lenghtX / lenght;\n--    float pointY = lenghtY / lenght;\n--    float angle_X = acosf(pointX) * 180 / M_PI;\n--    float angle_Y = acosf(pointY) * 180 / M_PI;\n--\n--    float angle = angle_X;\n--    if (angle_Y > 90)\n--    {\n--        angle = 360 - angle_X;\n--    }\n--    \n--    FigureDirectionType dirType = this->getDirectionType(angle);\n--\n--    this->setFigureState(FStateStand, dirType);\n--}\n\nfunction Monomer:isMoveRunning()\n    local x, y = self:getPosition()\n    local pos = cc.p(x, y)\n    local mpos = MapPoint.new(pos)\n    return (cc.pGetDistance(mpos:getCCPointValue(), pos) >= 5.0)\nend\n\nfunction Monomer:actionsWithPoint(startMPoint, endMPoint)\n    local callFunc = nil\n    \n    local array = {}\n    \n    if (startMPoint:equalsObj(endMPoint)) then\n        return array\n    end\n    \n    local lenghtX = endMPoint.x - startMPoint.x\n    local lenghtY = endMPoint.z - startMPoint.z\n    local lenght = math.sqrt(lenghtX * lenghtX + lenghtY * lenghtY)\n    \n    local gridNumber = startMPoint:getDistance(endMPoint)\n    \n    local fTime = 0.6 * startMPoint:getDistance(endMPoint) / self.m_runSpeed / gridNumber\n\n    local pointX = lenghtX / lenght\n    local pointY = lenghtY / lenght\n\n    local angle_X = math.acos(pointX) * 180 / math.pi\n    local angle_Y = math.acos(pointY) * 180 / math.pi\n    \n    local angle = angle_X\n    if (angle_Y > 90) then\n        angle = 360 - angle_X\n    end\n    \n    local nType = math.floor(((angle + 22.5) % 360 ) / 45.0)\n    \n    if (lenght < 2) then\n        if (nType == 0) then\n            callFunc = cc.CallFunc:create(handler(self, self.walkRight))\n        elseif (nType == 1) then\n            callFunc = cc.CallFunc:create(handler(self, self.walkRightAndUp))\n        elseif (nType == 2) then\n            callFunc = cc.CallFunc:create(handler(self, self.walkUp))\n        elseif (nType == 3) then\n            callFunc = cc.CallFunc:create(handler(self, self.walkLeftAndUp))\n        elseif (nType == 4) then\n            callFunc = cc.CallFunc:create(handler(self, self.walkLeft))\n        elseif (nType == 5) then\n            callFunc = cc.CallFunc:create(handler(self, self.walkLeftAndDown))\n        elseif (nType == 6) then\n            callFunc = cc.CallFunc:create(handler(self, self.walkDown))\n        elseif (nType == 7) then\n            callFunc = cc.CallFunc:create(handler(self, self.walkRightAndDown))\n        end\n    else\n        if (nType == 0) then\n            callFunc = cc.CallFunc:create(handler(self, self.runRight))\n        elseif (nType == 1) then\n            callFunc = cc.CallFunc:create(handler(self, self.runRightAndUp))\n        elseif (nType == 2) then\n            callFunc = cc.CallFunc:create(handler(self, self.runUp))\n        elseif (nType == 3) then\n            callFunc = cc.CallFunc:create(handler(self, self.runLeftAndUp))\n        elseif (nType == 4) then\n            callFunc = cc.CallFunc:create(handler(self, self.runLeft))\n        elseif (nType == 5) then\n            callFunc = cc.CallFunc:create(handler(self, self.runLeftAndDown))\n        elseif (nType == 6) then\n            callFunc = cc.CallFunc:create(handler(self, self.runDown))\n        elseif (nType == 7) then\n            callFunc = cc.CallFunc:create(handler(self, self.runRightAndDown))\n        end\n    end\n    \n    table.insert(array, callFunc)\n    \n    local moveTo = cc.MoveTo:create(fTime, endMPoint:getCCPointValue())\n    table.insert(array, moveTo)\n\n    return array\nend\n\nfunction Monomer:actionsWithMoveTo(dequeMapPoint)\n    local array = {}\n    \n    if (#dequeMapPoint <= 1) then\n        return array\n    end\n    \n    local callFunc1 = cc.CallFunc:create(handler(self, self.setTimer_UpdateVertexZ))\n    local callFunc2 = cc.CallFunc:create(handler(self, self.killTimer_UpdateVertexZ))\n\n    table.insert(array, callFunc1)\n        \n    for i = 2, #dequeMapPoint do\n        local startMPoint = dequeMapPoint[i-1]\n        local endMPoint = dequeMapPoint[i]\n        local array2 = self:actionsWithPoint(startMPoint, endMPoint)\n        for j = 1, #array2 do\n            table.insert(array, array2[j])\n        end\n    end\n    \n    table.insert(array, callFunc2)\n            \n    return array\nend\n\n-- 跑\nfunction Monomer:runBy(mpoint)\n    local pos = cc.p(self:getPosition())\n    local relust = MoveInfo.new(0.0, MapPoint.new(pos), false)\n    \n    if (self.m_bIsCanMoved == false) then\n        return relust\n    end\n    \n    local nState = self:getState()\n    if (nState == FigureState.Death or \n        nState == FigureState.Attack or\n        nState == FigureState.Caster or\n        nState == FigureState.Hurt) then\n        return relust\n    end\n    \n    if (self:isMoveRunning()) then\n        return relust\n    end\n        \n    self:stopActionByTag(TAG_MOVET)\n    self:stopActionByTag(TAG_FOLLOWATTACK)\n    self:stopActionByTag(TAG_COOLINGTIMEATTACK)\n        \n    local mpos = MapPoint.new(pos)\n\n    local dequeMPoint = g_mainScene:getPathNextRunGrid(mpos, MapPoint.add(mpos, mpoint))\n        \n    if (#dequeMPoint <= 1) then\n        self:stand()\n        relust.bIsCanNotFineTheWay = true\n        return relust\n    end\n        \n    local array = self:actionsWithMoveTo(dequeMPoint)\n        \n    local callFunc = cc.CallFunc:create(handler(self, self.moveByBegin))\n    local callFunc2 = cc.CallFunc:create(handler(self, self.moveByEnd))\n    table.insert(array, 1, callFunc)\n    table.insert(array, callFunc2)\n        \n    local sequence = cc.Sequence:create(array)\n    sequence:setTag(TAG_MOVET)\n    self:runAction(sequence)\n        \n    relust.fTime = sequence:getDuration()\n    relust.mpoint = dequeMPoint[#dequeMPoint]\n    \n    return relust\nend\n\n-- 走\nfunction Monomer:walkBy(mpoint)\n    local pos = cc.p(self:getPosition())\n    local relust = MoveInfo.new(0.0, MapPoint.new(pos), false)\n    \n    if (self.m_bIsCanMoved == false) then\n        return relust\n    end\n    \n    local nState = self:getState()\n    if (nState == FigureState.Death or \n        nState == FigureState.Attack or\n        nState == FigureState.Caster or\n        nState == FigureState.Hurt) then\n        return relust\n    end\n    \n    if (self:isMoveRunning()) then\n        return relust\n    end\n        \n    self:stopActionByTag(TAG_MOVET)\n    self:stopActionByTag(TAG_FOLLOWATTACK)\n    self:stopActionByTag(TAG_COOLINGTIMEATTACK)\n        \n    local mpos = MapPoint.new(pos)\n\n    local dequeMPoint = g_mainScene:getPathNextWalkGrid(mpos, MapPoint.add(mpos, mpoint))\n\n    if (#dequeMPoint <= 1) then\n        self:stand()\n        relust.bIsCanNotFineTheWay = true\n        return relust\n    end\n        \n    local array = self:actionsWithMoveTo(dequeMPoint)\n        \n    local callFunc = cc.CallFunc:create(handler(self, self.moveByBegin))\n    local callFunc2 = cc.CallFunc:create(handler(self, self.moveByEnd))\n    table.insert(array, 1, callFunc)\n    table.insert(array, callFunc2)\n        \n    local sequence = cc.Sequence:create(array)\n    sequence:setTag(TAG_MOVET)\n    self:runAction(sequence)\n        \n    relust.fTime = sequence:getDuration()\n    relust.mpoint = dequeMPoint[#dequeMPoint]\n    \n    return relust\nend\n\n-- 去到指定点\nfunction Monomer:goTo(mpoint)\n    local pos = cc.p(self:getPosition())\n    local relust = MoveInfo.new(0.0, MapPoint.new(pos), false)\n    \n    if (self.m_bIsCanMoved == false) then\n        return relust\n    end\n    \n    local nState = self:getState()\n    if (nState == FigureState.Death or \n        nState == FigureState.Attack or\n        nState == FigureState.Caster or\n        nState == FigureState.Hurt) then\n        return relust\n    end\n    \n    if (self:isMoveRunning()) then\n        return relust\n    end\n    \n    self:stopActionByTag(TAG_MOVET)\n    self:stopActionByTag(TAG_FOLLOWATTACK)\n    self:stopActionByTag(TAG_COOLINGTIMEATTACK)\n        \n    local begin = MapPoint.new(pos)\n    local dequeMPoint = g_mainScene:getPath(begin, mpoint)\n        \n    if (#dequeMPoint <= 1) then\n        self:stand()\n        relust.bIsCanNotFineTheWay = true\n        return relust\n    end\n        \n    local array = self:actionsWithMoveTo(dequeMPoint)\n        \n    local callFunc = cc.CallFunc:create(handler(self, self.goBegin))\n    local callFunc2 = cc.CallFunc:create(handler(self, self.goEnd))\n    table.insert(array, 1, callFunc)\n    table.insert(array, callFunc2)\n    local sequence = cc.Sequence:create(array)\n    sequence:setTag(TAG_MOVET)\n    self:runAction(sequence)\n        \n    relust.fTime = sequence:getDuration()\n    relust.mpoint = dequeMPoint[#dequeMPoint]\n\n    return relust\nend\n\n-- 启动更新Z轴计时器\nfunction Monomer:setTimer_UpdateVertexZ()\n    self:killTimer_UpdateVertexZ()\n    self.hUpdateVertexZ = scheduler.scheduleGlobal(handler(self, self.updateVertexZ), 0.1)\nend\n\n-- 关闭更新Z轴计时器\nfunction Monomer:killTimer_UpdateVertexZ()\n    if (self.hUpdateVertexZ) then\n        scheduler.unscheduleGlobal(self.hUpdateVertexZ)\n        self.hUpdateVertexZ = nil\n    end\nend\n\n-- 更新Z轴计时器回调函数\nfunction Monomer:updateVertexZ(fDelay)\n    local point = cc.p(self:getPosition())\n    local value = BgMap.getZOrder(point) -- z轴\n    self:setLocalZOrder(value)\n    \n    if (not self.m_nMonomer) then\n        return\n    end\n        \n    if (g_mainScene:getCurrBgMap():getCurrentGridValue(MapPoint.new(point)) == 2) then\n        if (self.m_nMonomer:getOpacity() == 128) then\n            return\n        end\n            \n        self.m_nMonomer:setOpacityEx(128)\n        self.m_nMonomer:setColor(cc.c3b(166,166,166))\n    else\n        if (self.m_nMonomer:getOpacity() == 255) then\n            return\n        end\n            \n        self.m_nMonomer:setOpacityEx(255)\n        self.m_nMonomer:setColor(cc.c3b(255,255,255))\n    end\nend\n\n-- 添加攻击技能\nfunction Monomer:addAttackSkill(skillNumber)\n    local skillInfo = g_attackSkillSystem:getAttackSkillInfo(skillNumber)\n    if (skillInfo) then\n        self.m_mapAttackSkill[skillInfo.m_nNum] = skillInfo\n        TextureController.addSpriteFrames(TexturePathType.SkillCaster, skillInfo.m_casterSpecificID)\n        TextureController.addSpriteFrames(TexturePathType.SkillLocus, skillInfo.m_locusSpecificID)\n        TextureController.addSpriteFrames(TexturePathType.SkillExplosion, skillInfo.m_explosionSpecificID)\n    end\nend\n\n-- 删除攻击技能\nfunction Monomer:subAttackSkill(skillNumber)\n    local skillInfo = self.m_mapAttackSkill[skillNumber]\n    if (skillInfo) then\n        TextureController.subSpriteFrames(TexturePathType.SkillCaster, skillInfo.m_casterSpecificID)\n        TextureController.subSpriteFrames(TexturePathType.SkillLocus, skillInfo.m_locusSpecificID)\n        TextureController.subSpriteFrames(TexturePathType.SkillExplosion, skillInfo.m_explosionSpecificID)\n    end\nend\n\nfunction Monomer:moveByBegin()\n\nend\n\nfunction Monomer:moveByEnd()\n    self:stand()\nend\n\nfunction Monomer:goBegin()\n\nend\n\nfunction Monomer:goEnd()\n    self:stand()\nend\n\n-- 攻击敌人\nfunction Monomer:attackEnemy()\n    if (not self.m_attackMonomerMajor) then\n        return false\n    end\n        \n    if (self.m_isCooling) then\n        return false\n    end\n        \n    self.m_isCooling = true\n        \n    self:stopActionByTag(TAG_MOVET)\n        \n    local nState = FigureState.Attack\n    \n    if (not self.m_attackSkillInfo) then\n        self.m_attackSkillInfo = self.m_mapAttackSkill[1]\n    end\n        \n    if (self.m_attackSkillInfo.m_nAttackType == 2) then\n        nState = FigureState.Caster\n    end\n        \n    local lenghtX = self.m_attackMonomerMajor:getPositionX() - self:getPositionX()\n    local lenghtY = (self.m_attackMonomerMajor:getPositionY() - self:getPositionY()) * math.sqrt(2)\n    local lenght = math.sqrt(lenghtX * lenghtX + lenghtY * lenghtY)\n    local pointX = lenghtX / lenght\n    local pointY = lenghtY / lenght\n        \n    local angle_X = math.acos(pointX) * 180 / math.pi\n    local angle_Y = math.acos(pointY) * 180 / math.pi\n        \n    local angle = angle_X\n    if (angle_Y > 90) then\n        angle = 360 - angle_X\n    end\n        \n    local nDirection = self:getDirectionType(angle)\n    self:setFigureState(nState, nDirection)\n    \n    return true\nend\n\n-- 根据指定角度获取方向\nfunction Monomer:getDirectionType(fAngle)\n    local nDirection = FigureDirection.None\n    \n    local nType = math.floor(((math.floor(fAngle + 22.5)) % 360 ) / 45.0)\n    \n    if (nType == 0) then\n        nDirection = FigureDirection.Right\n    elseif (nType == 1) then\n        nDirection = FigureDirection.RightAndUp\n    elseif (nType == 2) then\n        nDirection = FigureDirection.Up\n    elseif (nType == 3) then\n        nDirection = FigureDirection.LeftAndUp\n    elseif (nType == 4) then\n        nDirection = FigureDirection.Left\n    elseif (nType == 5) then\n        nDirection = FigureDirection.LeftAndDown\n    elseif (nType == 6) then\n        nDirection = FigureDirection.Down\n    elseif (nType == 7) then\n        nDirection = FigureDirection.RightAndDown\n    end\n\n    return nDirection\nend\n\nfunction Monomer:setCoolingFalse()\n    self.m_isCooling = false\nend\n\nfunction Monomer:addAgainstMe(monomer, fBlood)\n    if (self:getState() == FigureState.Death) then\n        return\n    end\n    \n    if (monomer:getState() == FigureState.Death) then\n        return\n    end\n        \n    local fairy = FlutteringFairy.addFairy(self, cc.p(0, self:getContentSize().height * 0.5), FairyType.SubBlood, self.m_blood-fBlood, handler(self, self.flutteringFairyFinish))\n    self:pushFlutteringFairy(fairy)\n    self:setBlood(fBlood)\n    self:updateBloodProgress()\n\n    local bFind = false\n    for i = 1, #self.m_againstMeSet do\n        local m = self.m_againstMeSet[i]\n        if (m == monomer) then\n            bFind = true\n            break\n        end\n    end\n    if (not bFind) then\n        table.insert(self.m_againstMeSet, monomer)\n    end\n        \n    if (self.m_blood > 0) then\n        return\n    end\n        \n    self:death()\nend\n\nfunction Monomer:detectionOfEachOther()\n    \nend\n\nfunction Monomer:pushFlutteringFairy(fairy)\n    if (#self.m_flutteringFairyDeque > 0) then\n        for i = 1, #self.m_flutteringFairyDeque do\n            local lastFairy = self.m_flutteringFairyDeque[i]\n            local y = 30\n            if (y > 0) then\n                local moveBy = cc.MoveBy:create(0.15, cc.p(0, y))\n                lastFairy:runAction(moveBy)\n            end\n        end\n    end\n    table.insert(self.m_flutteringFairyDeque, fairy)\nend\n\nfunction Monomer:flutteringFairyFinish()\n    if (#self.m_flutteringFairyDeque > 0) then\n        table.remove(self.m_flutteringFairyDeque, 1)\n    end\nend\n\nfunction Monomer:detectionWhetherCounter()\n\nend\n\n-- 更新血条\nfunction Monomer:updateBloodProgress()\n    if (not self.bloodBg) then\n        return\n    end\n        \n    local rect = cc.rect(0,0,0,0)\n    rect.width = self.bloodBg:getContentSize().width*self.m_blood/self.m_bloodCap\n    rect.height = self.bloodIn:getContentSize().height\n    rect.width = math.max(rect.width, 0)\n    self.bloodIn:setTextureRect(rect)\nend\n\nfunction Monomer:removeAttackMonomerMajor(monomer)\n    if (monomer == self.m_attackMonomerMajor) then\n        self:setAttackMonomerMajor(nil)\n    end\nend\n\nfunction Monomer:removeAgainstMe(monomer)\n    for i = 1, #self.m_againstMeSet do\n        local m = self.m_againstMeSet[i]\n        if (m == monomer) then\n            table.remove(self.m_againstMeSet, i)\n            return\n        end\n    end\nend\n\nfunction Monomer:delayCallBack(fTime, callFunc)\n    fTime = math.max(fTime, 0.0)\n    local sequence = cc.Sequence:create(cc.DelayTime:create(fTime), cc.CallFunc:create(callFunc))\n    self:runAction(sequence)\n    return sequence\nend\n\nfunction Monomer:attacking()\n    SkillEffectShow.playSkillEffect(self.m_attackSkillInfo, self, self.m_attackMonomerMajor, 0)\nend\n\nfunction Monomer:underAttack()\n    self:setFigureState(FigureState.Stand, FigureDirection.None)\nend\n\nfunction Monomer:attackCompleted()\n    self:setFigureState(FigureState.Stand, FigureDirection.None)\n    self:delayCallBack(self.m_attackTime, handler(self, self.setCoolingFalse))\n    self:delayCallBack(self.m_attackTime, handler(self, self.detectionOfEachOther)):setTag(TAG_FOLLOWATTACK)\nend\n\nfunction Monomer:deathActionFinish()\n    self:setLocalZOrder(BgMap.getZOrderZero(g_mainScene:getCurrBgMap()))    -- z轴\nend\n\nfunction Monomer:getFigure()\n    return self.m_nMonomer\nend\n\nfunction Monomer:getState()\n    return self.m_nState\nend\n\nfunction Monomer:getDirection()\n    return self.m_nDirection\nend\n\nfunction Monomer:getCanMoved()\n    return self.m_isCanMoved\nend\n\nfunction Monomer:setCanMoved(bCanMoved)\n    self.m_isCanMoved = bCanMoved\nend\n\nfunction Monomer:getRunSpeed()\n    return self.m_runSpeed\nend\n\nfunction Monomer:setRunSpeed(runSpeed)\n    self.m_runSpeed = runSpeed\nend\n\nfunction Monomer:getVisualRange()\n    return self.m_visualRange\nend\n\nfunction Monomer:setVisualRange(visualRange)\n    self.m_visualRange = visualRange\nend\n\nfunction Monomer:getBloodCap()\n    return self.m_bloodCap\nend\n\nfunction Monomer:setBloodCap(bloodCap)\n    self.m_bloodCap = bloodCap\nend\n\nfunction Monomer:getMagicCap()\n    return self.m_magicCap\nend\n\nfunction Monomer:setMagicCap(magicCap)\n    self.m_magicCap = magicCap\nend\n\nfunction Monomer:getBlood()\n    return self.m_blood\nend\n\nfunction Monomer:setBlood(blood)\n    self.m_blood = blood\nend\n\nfunction Monomer:getMagic()\n    return self.m_magic\nend\n\nfunction Monomer:setMagic(magic)\n    self.m_magic = m_magic\nend\n\nfunction Monomer:getTheAttack()\n    return self.m_pTheAttack\nend\n\nfunction Monomer:setTheAttack(pTheAttack)\n    self.m_pTheAttack = pTheAttack\nend\n\nfunction Monomer:getAttackTime()\n    return self.m_attackTime\nend\n\nfunction Monomer:setAttackTime(attackTime)\n    self.m_attackTime = attackTime\nend\n\nfunction Monomer:getAttackMonomerMajor()\n    return self.m_attackMonomerMajor\nend\n\nfunction Monomer:setAttackMonomerMajor(attackMonomerMajor)\n    self.m_attackMonomerMajor = attackMonomerMajor\nend\n\nreturn Monomer"
  },
  {
    "path": "源代码/mir9/src/app/figure/Player.lua",
    "content": "local scheduler = require(\"framework.scheduler\")\nlocal MapPoint = require(\"app.map.MapPoint\")\nlocal PlayerController = require(\"app.figure.PlayerController\")\nlocal Monomer = require(\"app.figure.Monomer\")\nlocal GameLoading = require(\"app.scenes.GameLoading\")\n\nlocal TAG_MOVET = 0xfffff1\nlocal TAG_FOLLOWATTACK = 0xfffff2\nlocal TAG_COOLINGTIMEATTACK = 0xfffff3\nlocal TAG_MOVETWAIT = 0xfffff4\n\n-- 玩家类\nlocal Player = class(\"Player\", Monomer)\n\nfunction Player:ctor()\n    Player.super.ctor(self)\n    \n    self.m_isMoveActions = false\n    self.m_willGoPoint = MapPoint.new(0, 0)\n    \n    local _playerController = PlayerController.sharePlayerController()\n    self:setFigure(TexturePathType.Figure, _playerController.m_playerNumber)\n    self:setHair(_playerController.m_hairNumber)\n    self:setWeapon(_playerController.m_weaponsNumber)\n    self:setTray()\n    self:setBlood(100000)\n    self:setBloodCap(100000)\n    self:setTheAttack(2500)\n    self:setVisualRange(100)\n    self:addAttackSkill(1002)\n    \n    self:addNodeEventListener(cc.NODE_ENTER_FRAME_EVENT, function(...)\n        self:update_(...)\n    end)\n    self:scheduleUpdate()\nend\n\nfunction Player:onEnter()\n    Player.super.onEnter(self)\nend\n\nfunction Player:onExit()\n    Player.super.onExit(self)\n    self:stopAllActions()\n    g_mainScene:getCurrBgMap():killTimer_UpdateMap()\n    self:killTimer_DetectionReplaceBgMap()\nend\n\nfunction Player:update_(dt)\n    if (not self.m_isMoveActions) then\n        return\n    end\n    \n    g_mainScene:getCurrBgMap():updateMap(dt)\n    self:detectionReplaceBgMap(dt)\nend\n\nfunction Player:setTray()\n\nend\n\nfunction Player:detectionOfEachOther()\n    Player.super.detectionOfEachOther(self)\n    \n    if (self.m_attackMonomerMajor) then\n        self:detectionWhetherCounter()\n    end\nend\n\nfunction Player:detectionWhetherCounter()\n    self:followAttack()\nend\n\nfunction Player:runBy(mpoint)    \n    local relust = Player.super.runBy(self, mpoint)\n    \n    if (relust.fTime ~= 0) then\n        g_mainScene:insterMapPoint(self, relust.mpoint)\n    end\n    \n    if (relust.fTime == 0 and relust.bIsCanNotFineTheWay == false) then\n        self.m_willGoPoint = mpoint\n        self:stopActionByTag(TAG_MOVETWAIT)\n        self:delayCallBack(1 / 60.0, handler(self, self.waitRunBy)):setTag(TAG_MOVETWAIT)\n        return relust\n    end\n        \n    if (self.m_isMoveActions == false) then\n--        g_mainScene:getCurrBgMap():setTimer_UpdateMap()\n--        self:setTimer_DetectionReplaceBgMap()\n        self.m_isMoveActions = true\n    end\n    \n    return relust\nend\n\nfunction Player:waitRunBy()\n    self:runBy(self.m_willGoPoint)\nend\n\nfunction Player:walkBy(mpoint)\n    local relust = Player.super.walkBy(self, mpoint)\n    \n    if (relust.fTime ~= 0) then\n        g_mainScene:insterMapPoint(self, relust.mpoint)\n    end\n    \n    if (relust.fTime == 0 and relust.bIsCanNotFineTheWay == false) then\n        self.m_willGoPoint = mpoint\n        self:stopActionByTag(TAG_MOVETWAIT)\n        self:delayCallBack(1 / 60.0, handler(self, self.waitWalkBy)):setTag(TAG_MOVETWAIT)\n        return relust\n    end\n        \n    if (self.m_isMoveActions == false) then\n--        g_mainScene:getCurrBgMap():setTimer_UpdateMap()\n--        self:setTimer_DetectionReplaceBgMap()\n        self.m_isMoveActions = true\n    end\n    \n    return relust\nend\n\nfunction Player:waitWalkBy()\n    self:walkBy(self.m_willGoPoint)\nend\n\nfunction Player:goTo(mpoint)\n    local relust = Player.super.goTo(self, mpoint)\n    if (relust.fTime ~= 0 and relust.bIsCanNotFineTheWay == false) then\n        g_mainScene:insterMapPoint(self, relust.mpoint)\n    else\n        self.m_willGoPoint = mpoint\n        self:stopActionByTag(TAG_MOVETWAIT)\n        self:delayCallBack(1 / 60.0, handler(self, self.waitGoTo)):setTag(TAG_MOVETWAIT)\n    end\n\n    return relust\nend\n\nfunction Player:waitGoTo()\n    self:goTo(self.m_willGoPoint)\nend\n\nfunction Player:moveByEnd()\n    if (g_mainScene:getPlayerMoveActions() == false) then\n        Player.super.moveByEnd(self)\n--        g_mainScene:getCurrBgMap():setTimer_UpdateMap()\n--        self:setTimer_DetectionReplaceBgMap()\n--        self.m_isMoveActions = false\n    else\n        g_mainScene:playerRunning()\n    end\nend\n\nfunction Player:goBegin()\n    Player.super.goBegin(self)\n    \n    if (self.m_isMoveActions) then\n        return\n    end\n\n--    g_mainScene:getCurrBgMap():setTimer_UpdateMap()\n--    self:setTimer_DetectionReplaceBgMap()\n    self.m_isMoveActions = true\nend\n\nfunction Player:goEnd()\n    Player.super.goEnd(self)\n    g_mainScene:getCurrBgMap():killTimer_UpdateMap()\n    self:killTimer_DetectionReplaceBgMap()\n    self.m_isMoveActions = false\nend\n\nfunction Player:stand()\n    Player.super.stand(self)\n    self.m_isMoveActions = false\n    self:detectionPropItems()\nend\n\nfunction Player:addAgainstMe(monomer, blood)\n    Player.super.addAgainstMe(self, monomer, blood)\n--    if (monomer) then\n--        self:hurt()\n--    end\n    if (not self.m_attackMonomerMajor) then\n        g_mainScene:showSelected(monomer)\n    end\nend\n\nfunction Player:attackEnemy()\n    self:stopActionByTag(TAG_COOLINGTIMEATTACK)\n    local progress = g_mainScene:getGameInfoUIController():getOperationMenu():getCurrProgress()\n    \n    if (self.m_isCooling) then\n        self:delayCallBack(0.1, handler(self, self.attackEnemy)):setTag(TAG_COOLINGTIMEATTACK)\n        return false\n    end\n        \n    if (not Player.super.attackEnemy(self)) then\n        self:delayCallBack(0.1, handler(self, self.attackEnemy)):setTag(TAG_COOLINGTIMEATTACK)\n        return false\n    end\n        \n    if (progress) then\n        progress:RunCoolingAction(self.m_attackSkillInfo.m_coolingTime)\n    end\n        \n    return true\nend\n\nfunction Player:followAttack()\n    Player.super.followAttack(self)\nend\n\nfunction Player:death()\n    Player.super.death(self)\nend\n\nfunction Player:detectionReplaceBgMap(delay)\n    local curBgMap = g_mainScene:getCurrBgMap()\n    local mapPassageway = curBgMap:isMapPassageway(self)\n    if (not mapPassageway:equals(PortalInformationZero)) then\n        self:goTo(MapPoint.new(mapPassageway.point))\n        --self:stopAllActions()\n        --g_mainScene:getCurrBgMap():startUpdateMap()\n        --self:startDetectionReplaceBgMap()\n        --self:unscheduleUpdateVertexZ()\n        GameLoading.runGameLoading(mapPassageway.mapID, mapPassageway.born)\n        -- g_mainScene:replaceBgMap(mapPassageway.mapID, mapPassageway.born)\n    end\nend\n\nfunction Player:detectionPropItems(delay)\n    local x, y = self:getPosition()\n    local position = MapPoint.new(x, y)\n    \n    local show = g_mainScene:getMapPointForProp(position)\n    if (show) then\n        g_mainScene:eraseMapPointForProp(position)\n        show:removeFromParent()\n    end\nend\n\nfunction Player:setBlood(var)\n    Player.super.setBlood(self, var)\n    if (g_mainScene:getGameInfoUIController()) then\n        g_mainScene:getGameInfoUIController():updateBloodPro()\n    end\nend\n\nfunction Player:setMagic(var)\n    Player.super.setMagic(self, var)\n    if (g_mainScene:getGameInfoUIController()) then\n        g_mainScene:getGameInfoUIController():updateMagicPro()\n    end\nend\n\nfunction Player:clearData()\n    Player.super.clearData(self)\n    self.m_isMoveActions = false\nend\n\nfunction Player:attacking()\n    Player.super.attacking(self)\nend\n\nfunction Player:underAttack()\n    \nend\n\nfunction Player:setFigureState(state, direction)\n    Player.super.setFigureState(self, state, direction)\nend\n\nfunction Player:setTimer_DetectionReplaceBgMap()\n    self:killTimer_DetectionReplaceBgMap()\n    self.hDetectionReplaceBgMap = scheduler.scheduleGlobal(handler(self, self.detectionReplaceBgMap), 0.1)\nend\n\nfunction Player:killTimer_DetectionReplaceBgMap()\n    if (self.hDetectionReplaceBgMap) then\n        scheduler.unscheduleGlobal(self.hDetectionReplaceBgMap)\n        self.hDetectionReplaceBgMap = nil\n    end\nend\n\nreturn Player"
  },
  {
    "path": "源代码/mir9/src/app/figure/PlayerController.lua",
    "content": "\n-- 纹理控制器类\nlocal PlayerController = class(\"PlayerController\")\n\nfunction PlayerController:ctor()\n    self.m_playerNumber = 11001\n    self.m_hairNumber = 1100\n    self.m_weaponsNumber = 0\n    self.m_playerName = \"\"\n    self.m_playerLevel = 1\n    self.m_playerShowID = 0\n    self.m_playerUID = \"\"\n    self.m_carryingWeaponsID = 0\n    \n    self:init()\nend\n\nfunction PlayerController.sharePlayerController()\n    if (not g_playerController) then\n        g_playerController = PlayerController.new()\n    end\n    return g_playerController\nend\n\nfunction PlayerController:init()\n    return true\nend\n\nreturn PlayerController"
  },
  {
    "path": "源代码/mir9/src/app/figure/TextureController.lua",
    "content": "local scheduler = require(\"framework.scheduler\")\n\nTexturePathType = {\n    Figure = 1,\n    Monster = 2,\n    Hair = 3,\n    Weapon = 4,\n    SkillCaster = 5,\n    SkillLocus = 6,\n    SkillExplosion = 7\n}\n\nlocal FIGURE_PATH = \"char_\"\nlocal MONSTER_PATH = \"monster_\"\nlocal HAIR_PATH = \"hair_\"\nlocal WEAPON_PATH = \"weapon_\"\nlocal SKILL_CASTER_PATH = \"caster_\"\nlocal SKILL_LOCUS_PATH = \"locus_\"\nlocal SKILL_EXPLOSION_PATH = \"explosion_\"\n\nlocal FIGURE_ROUTE = \"texture_figure/\"\nlocal MONSTER_ROUTE = \"texture_monster/\"\nlocal HAIR_ROUTE = \"texture_figure/\"\nlocal WEAPON_ROUTE = \"texture_weapon/\"\nlocal SKILL_ROUTE = \"texture_skill/\"\nlocal OTHER_ROUTE = \"texture_set/\"\n\nlocal textureSuffix = \".plist\"\nlocal texturePngSuffix = \".png\"\n\nlocal textureMap = {}\n\nlocal TextureAsync = class(\"TextureAsync\")\n\nfunction TextureAsync:ctor(path, callback)\n    self.m_texturePath = path\n    self.m_callback = callback\nend\n\nfunction TextureAsync:addSpriteFrames(texture)\n    local completePath = self.m_texturePath .. textureSuffix\n    CCSpriteFrameCache:sharedSpriteFrameCache():addSpriteFramesWithFile(completePath, texture)\n    self:isFinish()\nend\n    \nfunction TextureAsync:addImageAsync()\n    local completePath = self.m_texturePath .. texturePngSuffix\n    display.addImageAsync(completePath, function()\n        local texture = CCTextureCache:sharedTextureCache():textureForKey(completePath)\n        self:addSpriteFrames(texture)\n    end)\nend\n    \nfunction TextureAsync:waitForFinish()\n    if (self.handle) then\n        scheduler.unscheduleGlobal(self.handle)\n        self.handle = nil\n    end\n    \n    if (textureMap[self.m_texturePath] > 0) then\n        self:isFinish()\n    else\n        self.handle = scheduler.scheduleGlobal(handler(self, self.waitForFinish), 0.1)\n    end\nend\n    \nfunction TextureAsync:isFinish()\n    local n = textureMap[self.m_texturePath]\n    n = n + 1\n    textureMap[self.m_texturePath] = n\n    \n    if (self.m_callback) then\n        self.m_callback()\n    end\nend\n    \nfunction TextureAsync.addSpriteFramesAsync(path, callback)\n    if (not path or path == \"\") then\n        return\n    end\n    \n    local itr = textureMap[path]        \n    if (not itr) then\n        local async = TextureAsync.new(path, callback)\n        async:addImageAsync()\n        textureMap[path] = 0\n    else\n        local async = TextureAsync.new(path, callback)\n        async:waitForFinish()\n    end\nend\n    \nfunction TextureAsync.subSpriteFramesAsync(path)\n    if (not path or path == \"\") then\n        return\n    end\n\n    local itr = textureMap[path]\n    if (itr) then\n        itr = itr - 1\n        textureMap[path] = itr\n        if (itr <= 0) then\n            local completePath = path .. textureSuffix\n            CCSpriteFrameCache:sharedSpriteFrameCache():removeSpriteFramesFromFile(completePath)\n                \n            local pngPath = path .. texturePngSuffix\n            CCTextureCache:sharedTextureCache():removeTextureForKey(pngPath)\n                \n            textureMap[path] = nil\n        end\n    end\nend\n    \nfunction TextureAsync.removeAllSpriteFrames()\n    for k, v in pairs(textureMap) do\n        local completePath = k .. textureSuffix\n        CCSpriteFrameCache:sharedSpriteFrameCache():removeSpriteFramesFromFile(completePath)\n    end\n    textureMap = {}\n        \n    CCTextureCache:sharedTextureCache():removeAllTextures()\nend\n\n\n-- 纹理控制器类\nlocal TextureController = class(\"TextureController\")\n\nfunction TextureController:ctor()\n    \nend\n\nfunction TextureController.getTextureRoute(nType, nNum)\n    local path\n    \n    if (nType == TexturePathType.Figure) then\n        path = FIGURE_ROUTE .. FIGURE_PATH\n    elseif (nType == TexturePathType.Monster) then\n        path = MONSTER_ROUTE .. MONSTER_PATH\n    elseif (nType == TexturePathType.Hair) then\n        path = HAIR_ROUTE .. HAIR_PATH;\n    elseif (nType == TexturePathType.Weapon) then\n        path = WEAPON_ROUTE .. WEAPON_PATH\n    elseif (nType == TexturePathType.SkillCaster) then\n        path = SKILL_ROUTE .. SKILL_CASTER_PATH\n    elseif (nType == TexturePathType.SkillLocus) then\n        path = SKILL_ROUTE .. SKILL_LOCUS_PATH\n    elseif (nType == TexturePathType.SkillExplosion) then    \n        path = SKILL_ROUTE .. SKILL_EXPLOSION_PATH\n    else\n        path = \"\"\n    end\n    \n    if (path ~= \"\") then\n        path = path .. nNum\n    end\n    \n    return path\nend\n\nfunction TextureController.getTexturePath(nType, nNum)\n    local path\n    \n    if (nType == TexturePathType.Figure) then\n        path = FIGURE_PATH\n    elseif (nType == TexturePathType.Monster) then\n        path = MONSTER_PATH\n    elseif (nType == TexturePathType.Hair) then\n        path = HAIR_PATH;\n    elseif (nType == TexturePathType.Weapon) then\n        path = WEAPON_PATH\n    elseif (nType == TexturePathType.SkillCaster) then\n        path = SKILL_CASTER_PATH\n    elseif (nType == TexturePathType.SkillLocus) then\n        path = SKILL_LOCUS_PATH\n    elseif (nType == TexturePathType.SkillExplosion) then    \n        path = SKILL_EXPLOSION_PATH\n    else\n        path = \"\"\n    end\n    \n    if (path ~= \"\") then\n        path = path .. nNum\n    end\n    \n    return path\nend\n\nfunction TextureController.addSpriteFrames(nType, nNum, callFunc)\n    if (nNum == 0) then\n        return\n    end\n    \n    local path = TextureController.getTextureRoute(nType, nNum)\n    if (path == \"\") then\n        return\n    end\n    \n    local pngFileName = path .. texturePngSuffix\n    local plistFileName = path .. textureSuffix\n    display.addSpriteFrames(plistFileName, pngFileName)\n    if (callFunc) then\n        callFunc()\n    end\n    \n    --TextureAsync.addSpriteFramesAsync(path, callFunc)\nend\n\nfunction TextureController.subSpriteFrames(nType, nNum)\n    if (nNum == 0) then\n        return\n    end\n    \n    local path = TextureController.getTextureRoute(nType, nNum)\n    if (path == \"\") then\n        return\n    end\n    \n    --TextureAsync.subSpriteFramesAsync(path)\n    cc.Director:getInstance():getTextureCache():removeUnusedTextures()\nend\n\nfunction TextureController.removeAllSpriteFrames()\n    TextureAsync.removeAllSpriteFrames()\n    CCTextureCache:sharedTextureCache():removeUnusedTextures()\nend\n\nreturn TextureController"
  },
  {
    "path": "源代码/mir9/src/app/game_ui/AttackEnemyInfo.lua",
    "content": "local scheduler = require(\"framework.scheduler\")\n\nlocal AttackEnemyInfo = class(\"AttackEnemyInfo\", function()\n    return display.newNode()\nend)\n\nfunction AttackEnemyInfo:ctor()\n    self.m_bloodPro = nil\n    self.m_level = nil\n    self.m_nickName = nil\n    self.m_widget = nil\n    self:init()\nend\n\nfunction AttackEnemyInfo:init()\n    local bg = cc.ui.UIImage.new(\"ui/enemyInfo/icon/enemy_info.png\")\n    bg:setPosition(0, 0)\n    self:addChild(bg)\n    \n    bg:setTouchEnabled(true)  \n    bg:addNodeEventListener(cc.NODE_TOUCH_EVENT, function(event)\n        if event.name == \"began\" then\n            if cc.rectContainsPoint(bg:getBoundingBox(), cc.p(event.x, event.y)) then  \n                bg:setTouchSwallowEnabled(true)\n                return true\n            end\n            return false\n        end\n    end)\n    \n    self.m_bloodPro = cc.ui.UILoadingBar.new({scale9 = false, image = \"ui/enemyInfo/icon/blood_in.png\", capInsets = cc.rect(0, 0, 0, 0), viewRect = cc.rect(0, 0, 142, 17)})\n    self.m_bloodPro:setPosition(38, 10)\n    self.m_bloodPro:setPercent(100)\n    bg:addChild(self.m_bloodPro)\n    \n    self.m_level = cc.LabelAtlas:_create(\"100\", \"ui/enemyInfo/GUI/labelatlasimg.png\", 24, 32, string.byte('0'))\n    self.m_level:setAnchorPoint(0, 0)\n    self.m_level:setPosition(40, 40)\n    self.m_level:setScaleX(0.45)\n    self.m_level:setScaleY(0.6)\n    self.m_level:setColor(cc.c3b(94,252,11))\n    bg:addChild(self.m_level)\n    \n    self.m_nickName = cc.ui.UILabel.new({\n        text = \"EnemyName\",\n        size = 17,\n        color = cc.c3b(255,255,255),\n    })\n    self.m_nickName:setPosition(86, 50)\n    self:addChild(self.m_nickName)\n    \n    return true\nend\n\nfunction AttackEnemyInfo:updateAttackInfo(fDelay)\n    if (not g_mainScene:getSelected()) then\n        return\n    end\n    \n    if (self.m_bloodPro) then\n        local progress = 100*g_mainScene:getSelected():getBlood()/g_mainScene:getSelected():getBloodCap()\n        if (progress < 0) then\n            progress = 0\n        end\n        self.m_bloodPro:setPercent(progress)\n    end\nend\n\nfunction AttackEnemyInfo:showAttackInfo(monomer)\n    if (not g_mainScene:getSelected()) then\n        return\n    end\n        \n    if (not self:isVisible()) then\n        self:setVisible(true)\n        --self.m_widget:setTouchEnabled(true)\n    end\n    \n    self.hUpdateAttackInfo = scheduler.scheduleGlobal(handler(self, self.updateAttackInfo), 0)\nend\n\nfunction AttackEnemyInfo:hide()\n    if (self.hUpdateAttackInfo) then\n        scheduler.unscheduleGlobal(self.hUpdateAttackInfo)\n        self.hUpdateAttackInfo = nil\n    end\n    self:setVisible(false)\n    --self.m_widget:setTouchEnabled(false)\nend\n\nreturn AttackEnemyInfo"
  },
  {
    "path": "源代码/mir9/src/app/game_ui/CCTouchMouse.lua",
    "content": "-- 点击鼠标精灵类\nlocal CCTouchMouse = class(\"CCTouchMouse\", function()\n    return display.newSprite()\nend)\n\nfunction CCTouchMouse:ctor()\n    display.addSpriteFrames(\"ui/touch_mouse.plist\", \"ui/touch_mouse.png\")\n    self.m_arrEffect = {}\n    local flag = 1\n    while (true) do\n        local frameName = string.format(\"touch_mouse_%02d.png\", flag)\n        local frame = cc.SpriteFrameCache:getInstance():getSpriteFrame(frameName)\n        if (not frame) then\n            break\n        end\n        table.insert(self.m_arrEffect, frame)\n        flag = flag + 1\n    end\nend\n\nfunction CCTouchMouse:playEffect(point)\n    self:setVisible(true)\n    self:setPosition(point)\n    local animation = cc.Animation:createWithSpriteFrames(self.m_arrEffect, 1 / 15)\n\tlocal animate = cc.Animate:create(animation)\n    local callFunc = cc.CallFunc:create(handler(self, self.setHide))\n    local sequence = cc.Sequence:create(animate, callFunc)\n    self:stopAllActions()\n    self:runAction(sequence)\nend\n\nfunction CCTouchMouse:setHide()\n    self:setVisible(false)\nend\n\nreturn CCTouchMouse"
  },
  {
    "path": "源代码/mir9/src/app/game_ui/FlutteringFairy.lua",
    "content": "FairyType = {\n    AddExp = 0,\n    AddBlood = 1,\n    SubBlood = 2,\n    SubMagic = 3    \n}\n\n-- 飞舞的精灵类\nlocal FlutteringFairy = class(\"FlutteringFairy\", function()\n    return display.newNode()\nend)\n\nfunction FlutteringFairy:ctor()\n\nend\n\nfunction FlutteringFairy.addFairy(parent, point, fairyType, value, callfunc)\n    local fairy = FlutteringFairy.new()\n    fairy:initWithFairy(fairyType, value, callfunc)\n    fairy:setPosition(cc.pAdd(cc.p(parent:getPosition()), point))\n    parent:getParent():addChild(fairy, 10)\n    --fairy:release()\n    return fairy\nend\n\nfunction FlutteringFairy:initWithFairy(fairyType, value, callfunc)\n    value = math.abs(value)\n    \n    local str = \"\"\n    local color = cc.c3b(255,255,255)\n    \n    if (fairyType == FairyType.AddExp) then\n        str = string.format(\"获得经验:%d\", value)\n        color = cc.c3b(255,255,0)\n    elseif (fairyType == FairyType.AddBlood) then\n        str = string.format(\"+%d\", value)\n        color = cc.c3b(0,255,0)\n    elseif (fairyType == FairyType.SubBlood) then\n        str = string.format(\"-%d\", value)\n        color = cc.c3b(255,0,0)\n    elseif (fairyType == FairyType.SubMagic) then\n        str = string.format(\"-%d\", value)\n        color = cc.c3b(25, 18, 112)\n    end\n    \n    self.m_fairy = cc.LabelTTF:create(str, \"Helvetica-Bold\", 30)\n    self.m_fairy:setPosition(cc.p(0, 0))\n    self:addChild(self.m_fairy)\n    self.m_fairy:setColor(color)\n    \n    self.m_fairy:setScale(2.0)\n    self.m_fairy:setOpacity(0)\n    \n    local fadeIn = cc.FadeIn:create(0.1)\n    local scaleTo = cc.ScaleTo:create(0.2, 1.0)\n    local spawn = cc.Spawn:create(fadeIn, scaleTo)\n    local easeBack = cc.EaseSineOut:create(spawn)\n    local delayTime = cc.DelayTime:create(0.3)\n    local fadeOut = cc.FadeOut:create(0.2)\n    local callFunc = cc.CallFunc:create(callfunc)\n    local finish = cc.CallFunc:create(function()\n        self:removeFromParent()\n    end)\n    local sequence = cc.Sequence:create(easeBack, delayTime, fadeOut, callFunc, finish)\n    self.m_fairy:runAction(sequence)\nend\n\nfunction FlutteringFairy:getContentSize()\n    return self.m_fairy:getContentSize()\nend\n\nreturn FlutteringFairy"
  },
  {
    "path": "源代码/mir9/src/app/game_ui/GameInfoUIController.lua",
    "content": "local PlayerController = require(\"app.figure.PlayerController\")\nlocal MapThumbnailMenu = require(\"app.game_ui.MapThumbnailLayer\")\nlocal LOperationMenu = require(\"app.game_ui.LOperationMenu\")\nlocal AttackEnemyInfo = require(\"app.game_ui.AttackEnemyInfo\")\nlocal GameTabBarMenu = require(\"app.game_ui.GameTabBarMenu\")\n\nlocal GameInfoUIController = class(\"GameInfoUIController\", function()\n    return display.newLayer()\nend)\n\nfunction GameInfoUIController:ctor()\n    self.m_operationMenu = nil\n    self.m_isShowTabBar = true\n    self.m_headIcon = nil\n    self.m_headBtn = nil\n    self.m_levelTTF = nil\n    self.m_nickNameTTF = nil\n    self.m_bloodPro = nil\n    self.m_magicPro = nil\n    self.m_gameTabBarMenu = nil\n    self.m_attackEnemyInfo = nil\n    self.m_chatInterface = nil\n    self.m_pMenuBig = nil\n    self.m_pMenuSmall = {}\n          \n    self:init()\nend\n\nfunction GameInfoUIController:init()\n    self:setTouchSwallowEnabled(false)\n    \n    self:initWithHeadUI()\n    \n    self.m_mapThumbnailMenu = MapThumbnailMenu.new()\n    self.m_mapThumbnailMenu:setPosition(cc.pSub(cc.p(display.width, display.height), cc.p(100, 100)))\n    self:addChild(self.m_mapThumbnailMenu)\n    \n    self.m_operationMenu = LOperationMenu.new()\n    self:addChild(self.m_operationMenu)\n\n    self.m_attackEnemyInfo = AttackEnemyInfo.new()\n    self.m_attackEnemyInfo:setPosition(display.width/2-125, display.height-120)\n    self.m_attackEnemyInfo:hide()\n    self:addChild(self.m_attackEnemyInfo)\n    \n--    self.m_chatInterface = ChatInterface::create()\n--    self.m_chatInterface->setPosition(CCPoint(220, 0))\n--    self:addChild(self.m_chatInterface)\n  \n    self.m_gameTabBarMenu = GameTabBarMenu.new()\n    self.m_gameTabBarMenu:setPosition(display.width-960, -100)\n    self:addChild(self.m_gameTabBarMenu)\n    \n    return true\nend\n\nfunction GameInfoUIController:initWithHeadUI()\n    local bg = cc.ui.UIImage.new(\"ui/head_UI/icon/player_head.png\")\n    bg:setPosition(20, display.height-113-20)\n    self:addChild(bg)\n    \n    bg:setTouchEnabled(true)  \n    bg:addNodeEventListener(cc.NODE_TOUCH_EVENT, function(event)\n        if event.name == \"began\" then\n            if cc.rectContainsPoint(bg:getBoundingBox(), cc.p(event.x, event.y)) then  \n                bg:setTouchSwallowEnabled(true)\n                return true\n            end\n            return false\n        end\n    end)\n    \n--    local nickName = PlayerController:sharePlayerController().m_playerName\n--    local label = cc.ui.UILabel.new({text = nickName, size = 22,  color = ccc3(247, 230, 56)})\n--    label:setPosition(180, 100)\n--    label:setAnchorPoint(0.5, 0.5)\n--    bg:addChild(label)\n    \n    local PUSH_BUTTON_IMAGES = {\n        normal = \"ui/head_UI/icon/icon_null.png\",\n        pressed = \"ui/head_UI/icon/icon_null.png\",\n        disabled = \"ui/head_UI/icon/icon_null.png\"\n    }\n\n    self.m_headBtn = cc.ui.UIPushButton.new(PUSH_BUTTON_IMAGES, {scale9 = true})\n    self.m_headBtn:setButtonSize(72, 72)\n    self.m_headBtn:setPosition(52, 131-72)\n    self.m_headBtn:onButtonClicked(handler(self, self.modeSwitch))\n    bg:addChild(self.m_headBtn)\n    \n    self.m_bloodPro = cc.ui.UILoadingBar.new({scale9 = true, image = \"ui/head_UI/icon/blood_in.png\", capInsets = cc.rect(0, 0, 0, 0), viewRect = cc.rect(0, 0, 131, 17)})\n    self.m_bloodPro:setPosition(116, 54)\n    self.m_bloodPro:setPercent(100)\n    bg:addChild(self.m_bloodPro)\n    \n    cc.ui.UILabel.new({\n        text = \"0/0\",\n        size = 12,\n        color = cc.c3b(250,247,247),\n    }):pos(110, 8):addTo(self.m_bloodPro)\n        \n    self.m_magicPro = cc.ui.UILoadingBar.new({scale9 = true, image = \"ui/head_UI/icon/magic_in.png\", capInsets = cc.rect(0, 0, 0, 0), viewRect = cc.rect(0, 0, 131, 17)})\n    self.m_magicPro:setPosition(108, 30)\n    self.m_magicPro:setPercent(100)\n    bg:addChild(self.m_magicPro)\n    \n    cc.ui.UILabel.new({\n        text = \"0/0\",\n        size = 12,\n        color = cc.c3b(250,247,247),\n    }):pos(110, 8):addTo(self.m_magicPro)\n\n    local label = cc.LabelAtlas:_create(\"3\", \"ui/head_UI/GUI/labelatlasimg.png\", 24, 32, string.byte('0'))\n    label:setAnchorPoint(0, 0)\n    label:setPosition(94, 68)\n    label:setScaleX(0.45)\n    label:setScaleY(0.6)\n    label:setColor(cc.c3b(94,252,11))\n    bg:addChild(label)\nend\n\n-- 头像按钮\nfunction GameInfoUIController:modeSwitch(event)\n    if (self:getActionByTag(0xacff)) then\n        return\n    end\n    \n    if (self.m_isShowTabBar) then\n        self.m_isShowTabBar = false\n        self.m_operationMenu:hideOperationMenu()\n        -- self.m_chatInterface:hideChatInterface()\n        \n        local delay = cc.DelayTime:create(0.3)\n        local finish = cc.CallFunc:create(handler(self.m_gameTabBarMenu, self.m_gameTabBarMenu.showGameTabBarMenu))\n        local sequence = cc.Sequence:create(delay, finish)\n        sequence:setTag(0xacff)\n        self:runAction(sequence)\n    else\n        self.m_isShowTabBar = true\n        self.m_gameTabBarMenu:hideGameTabBarMenu()\n    \n        local delay = cc.DelayTime:create(0.3)\n        local finish = cc.CallFunc:create(handler(self.m_operationMenu, self.m_operationMenu.showOperationMenu))\n        -- local finish2 = cc.CallFunc:create(handler(self.m_chatInterface, self.m_chatInterface.showChatInterface))\n        -- array:addObject(finish2)\n        local sequence = cc.Sequence:create(delay, finish)\n        sequence:setTag(0xacff)\n        self:runAction(sequence)\n    end\nend\n\nfunction GameInfoUIController:updateBloodPro()\n    if (g_player) then\n        self.m_bloodPro:setPercent(100*g_player:getBlood()/g_player:getBloodCap())\n    end\nend\n\nfunction GameInfoUIController:updateMagicPro()\n    if (g_player) then\n        self.m_bloodPro:setPercent(100*g_player:getMagic()/g_player:getMagicCap())\n    end\nend\n\nfunction GameInfoUIController:updateLevelTTF()\n\nend\n\nfunction GameInfoUIController:addSmallMenu(node)\n    if (self.m_pMenuBig) then\n        self.m_pMenuBig:removeFromParent()\n        self.m_pMenuBig = nil\n    end\n    \n    for i = 1, #self.m_pMenuSmall do\n        if node.m_className == self.m_pMenuSmall[i].m_className then\n            return\n        end\n    end\n    \n    self:setTouchEnabled(false)\n    \n    if (#self.m_pMenuSmall >= 2) then\n        self.m_pMenuSmall[1]:removeFromParent()\n        table.remove(self.m_pMenuSmall, 1)\n        self.m_pMenuSmall[1]:setPosition(display.width/4, (display.height+80)/2)\n    end\n    \n    node:setPosition(display.width/4 * (#self.m_pMenuSmall*2+1), (display.height+80)/2)\n    self:addChild(node)\n    table.insert(self.m_pMenuSmall, node)\n    \n    self:setTouchEnabled(true)\nend\n\nfunction GameInfoUIController:removeSmallMenu(node)\n    if (not node) then\n        return\n    end\n    \n    for i = 1, #self.m_pMenuSmall do\n        if node == self.m_pMenuSmall[i] then\n            table.remove(self.m_pMenuSmall, i)\n            node:removeFromParent()\n            break\n        end\n    end\n    \n    if (#self.m_pMenuSmall > 0) then\n        self.m_pMenuSmall[1]:setPosition(display.width/4, (display.height+80)/2)\n    else\n        self:setTouchEnabled(false)\n    end\nend\n\nfunction GameInfoUIController:removeSmallMenuAndButton(event)\n\tlocal node = event.target\n    self:removeSmallMenu(node:getParent())\nend\n\nfunction GameInfoUIController:addBigMenu(node)\n\tif (self.m_pMenuBig) then\n\t\tself.m_pMenuBig:removeFromParent()\n\t\tself.m_pMenuBig = nil\n\tend\n\tself:setTouchEnabled(false)\n    \n    if (#self.m_pMenuSmall > 0) then\n        for i = 1, #self.m_pMenuSmall do\n            self.m_pMenuSmall[i]:removeFromParent()\n        end\n        self.m_pMenuSmall = {}\n    end\n    \n    node:setPosition(display.width/2, (display.height+80)/2)\n    self:addChild(node)\n    self.m_pMenuBig = node\n    \n    self:setTouchEnabled(true)\nend\n\nfunction GameInfoUIController:removeBigMenuAndButton(node, event)\n    if (self.m_pMenuBig) then\n        self.m_pMenuBig:removeFromParent()\n        self.m_pMenuBig = nil\n    end\n    self:setTouchEnabled(false)\nend\n\nfunction GameInfoUIController:getAttackEnemyInfo()\n    return self.m_attackEnemyInfo\nend\n\nfunction GameInfoUIController:getOperationMenu()\n    return self.m_operationMenu\nend\n\nreturn GameInfoUIController"
  },
  {
    "path": "源代码/mir9/src/app/game_ui/GameOptions.lua",
    "content": "local GameOptions = class(\"GameOptions\", function()\n    return display.newNode()\nend)\n\nfunction GameOptions:ctor()\n    local bg = display.newSprite(\"ui/options.png\")\n    bg:setPosition(0, 0)\n    self:addChild(bg)\n    \n    local ptBg = cc.p(bg:getPosition())\n    local szBg = bg:getContentSize()\n    local szBtn = cc.size(57, 58)\n\n    local PUSH_BUTTON_IMAGES = {\n        normal = \"ui/closed_normal.png\",\n        pressed = \"ui/closed_selected.png\",\n        disabled = \"ui/closed_normal.png\",\n    }\n\n    local btn = cc.ui.UIPushButton.new(PUSH_BUTTON_IMAGES, {scale9 = true})\n    btn:setButtonSize(szBtn.width, szBtn.height)\n    local ptBtn = cc.pAdd(ptBg, cc.p(szBg.width, szBg.height))\n    ptBtn = cc.pSub(ptBtn, cc.p(szBtn.width/2, szBtn.height/2))\n    btn:setPosition(ptBtn)\n    btn:setAnchorPoint(0.5, 0.5)\n    btn:onButtonClicked(handler(g_mainScene:getGameInfoUIController(), g_mainScene:getGameInfoUIController().removeBigMenuAndButton))\n    bg:addChild(btn)\nend\n\nreturn GameOptions"
  },
  {
    "path": "源代码/mir9/src/app/game_ui/GameTabBarMenu.lua",
    "content": "local PropColumnMenu = require(\"app.game_ui.PropColumn\")\nlocal SkillTableView = require(\"app.game_ui.SkillTableView\")\nlocal GameOptions = require(\"app.game_ui.GameOptions\")\n\nlocal GameTabBarMenu = class(\"GameTabBarMenu\", function()\n    return display.newLayer()\nend)\n\nfunction GameTabBarMenu:ctor()\n    self:setTouchSwallowEnabled(false)\n    \n    local PUSH_BUTTON_IMAGES = {\n        normal = \"ui/tabbarMenu/GUI/button.png\",\n        pressed = nil,\n        disabled = nil,\n    }\n    \n    local posX = 75 -- {75,165,255,345,437,615,705,795,885}\n    local szBtn = cc.size(80, 80)\n    local text = {\"角色\",\"背包\",\"技能\",\"强化\",\"交友\",\"行会\",\"天命\",\"商城\",\"宝典\",\"设置\"}\n    local callFunc = {\n        handler(self, self.showRoleInfo),\n        handler(self, self.showBackPack),\n        handler(self, self.showSkillInfo),\n        handler(self, self.showStrengthen),\n        handler(self, self.showMakeFriends),\n        handler(self, self.showGuild),\n        handler(self, self.showDestiny),\n        handler(self, self.showMall),\n        handler(self, self.showCanon),\n        handler(self, self.showSetUp)\n    }\n    \n    for i = 1, #text do\n        local btn = cc.ui.UIPushButton.new(PUSH_BUTTON_IMAGES, {scale9 = true})\n        btn:setAnchorPoint(0.5, 0.5)\n        btn:setButtonSize(szBtn.width, szBtn.height)\n        btn:setPosition(posX, 50)\n        btn:setButtonLabel(\"normal\", cc.ui.UILabel.new({\n            text = text[i],\n            fontName = \"微软雅黑\",\n            size = 30\n        }))\n        btn:onButtonClicked(callFunc[i])\n        self:addChild(btn)\n        \n        posX = posX + 90\n    end\nend\n\n-- 角色\nfunction GameTabBarMenu:showRoleInfo(event)\n\t\nend\n\n-- 背包\nfunction GameTabBarMenu:showBackPack(event)\n    local layer = PropColumnMenu.new()\n    g_mainScene:getGameInfoUIController():addSmallMenu(layer)\n    g_mainScene:getGameInfoUIController():getOperationMenu():joinEditState()\nend\n\n-- 技能\nfunction GameTabBarMenu:showSkillInfo(event)\n    local layer = SkillTableView.new()\n    g_mainScene:getGameInfoUIController():addSmallMenu(layer)\n    g_mainScene:getGameInfoUIController():getOperationMenu():joinEditState()\nend\n\n-- 强化\nfunction GameTabBarMenu:showStrengthen(event)\n\t\nend\n\n-- 交友\nfunction GameTabBarMenu:showMakeFriends(event)\n\t\nend\n\n-- 行会\nfunction GameTabBarMenu:showGuild(event)\n    \nend\n\n-- 天命\nfunction GameTabBarMenu:showDestiny(event)\n\t\nend\n\n-- 商城\nfunction GameTabBarMenu:showMall(event)\n\t\nend\n\n-- 宝典\nfunction GameTabBarMenu:showCanon(event)\n\t\nend\n\n-- 设置\nfunction GameTabBarMenu:showSetUp(event)\n    local layer = GameOptions.new()\n    g_mainScene:getGameInfoUIController():addBigMenu(layer)\nend\n\nfunction GameTabBarMenu:hideGameTabBarMenu()\n    self:stopAllActions()\n    local moveTo = cc.MoveTo:create(0.3, cc.p(display.width-960, -100))\n    local easeBack = cc.EaseSineOut:create(moveTo)\n    self:runAction(easeBack)\nend\n\nfunction GameTabBarMenu:showGameTabBarMenu()\n    self:stopAllActions()\n    local moveTo = cc.MoveTo:create(0.3, cc.p(display.width-960, 0))\n    local easeBack = cc.EaseSineOut:create(moveTo)\n    self:runAction(easeBack)\nend\n\nreturn GameTabBarMenu"
  },
  {
    "path": "源代码/mir9/src/app/game_ui/LAlertView.lua",
    "content": "local LAlertView = class(\"LAlertView\", function()\n    return ccui.Scale9Sprite:create(\"ui/alert_backGround.png\")\nend)\n\nfunction LAlertView:ctor(title, messageText)\n    self.m_title = title\n    self.m_messageText = messageText\n    self.m_callBack = nil\n    \n    self.m_arrBtn = {}\n    \n    self:init()\nend\n\nfunction LAlertView:init()\n    local szContent = self:getContentSize()\n    \n    local title = cc.LabelTTF:create(self.m_title, \"Helvetica-Bold\", 22)\n    title:setAnchorPoint(0.5, 1)\n    title:setPosition(szContent.width/2, szContent.height-52)\n    self:addChild(title)\n    \n    local message = cc.LabelTTF:create(self.m_messageText, \"Helvetica-Bold\", 20)\n    message:setPosition(cc.pAdd(cc.p(szContent.width/2, szContent.height/2), cc.p(0, 30)))\n    self:addChild(message)\n    \n    return true\nend\n\nfunction LAlertView:addButtonWithTitle(btnTitle)\n    local PUSH_BUTTON_IMAGES = {\n        normal = \"ui/btn_normal.png\",\n        pressed = \"ui/btn_selected.png\",\n        disabled = \"ui/btn_normal.png\",\n    }\n\n    local btn = cc.ui.UIPushButton.new(PUSH_BUTTON_IMAGES, {scale9 = true})\n    btn:setAnchorPoint(0.5, 0.5)\n    btn:setButtonSize(140, 50)\n    btn:setButtonLabel(\"normal\", cc.ui.UILabel.new({\n        text = btnTitle,\n        fontName = \"Helvetica-Bold\",\n        size = 25\n    }))\n    btn:onButtonClicked(handler(self, self.onBtn_Clicked))\n    btn:setTag(0xff+#self.m_arrBtn)\n    table.insert(self.m_arrBtn, btn)\nend\n\nfunction LAlertView:show(callFunc)\n    self.m_callBack = callFunc\n\n    if (#self.m_arrBtn > 2) then\n        self:setPreferredSize(cc.size((#self.m_arrBtn + 1) * 150, self:getContentSize().height))\n    end\n    \n    if (#self.m_arrBtn == 0) then\n        local PUSH_BUTTON_IMAGES = {\n            normal = \"ui/btn_normal.png\",\n            pressed = \"ui/btn_selected.png\",\n            disabled = \"ui/btn_normal.png\",\n        }\n\n        local btn = cc.ui.UIPushButton.new(PUSH_BUTTON_IMAGES, {scale9 = true})\n        btn:setAnchorPoint(0.5, 0.5)\n        btn:setButtonSize(130, 43)\n        btn:setButtonLabel(\"normal\", cc.ui.UILabel.new({\n            text = \"确定\",\n            fontName = \"Helvetica-Bold\",\n            size = 25\n        }))\n        btn:onButtonClicked(handler(self, self.onBtn_Clicked))\n        btn:setTag(0xff)\n        btn:setPosition(self:getContentSize().width/2, 100)\n        self:addChild(btn)\n    else\n        for i = 1, #self.m_arrBtn do\n            local btn = self.m_arrBtn[i]\n            local x = self:getContentSize().width / (#self.m_arrBtn+1) * (i + 1)\n            btn:setPosition(x, 100)\n            self:addChild(btn)\n        end\n    end\n    self:setPosition(display.cx, display.cy)\n    cc.Director:getInstance():getRunningScene():addChild(self, 0xffff)\nend\n\nfunction LAlertView:onBtn_Clicked(event)\n    local btn = event.target\n    \n    if (self.m_callBack) then\n        self.m_callBack(btn:getTag()-0xff)\n    end\n    self:removeFromParent()\nend\n\nreturn LAlertView"
  },
  {
    "path": "源代码/mir9/src/app/game_ui/LOperationMenu.lua",
    "content": "local MapPoint = require(\"app.map.MapPoint\")\nlocal ProgressAutomatic = require(\"app.game_ui.ProgressAutomatic\")\nlocal GameLoading = require(\"app.scenes.GameLoading\")\n\nlocal TAG_PROGRESS_SKILL = 0xfffff\n\nlocal LOperationMenu = class(\"LOperationMenu\", function()\n    return display.newLayer()\nend)\n\nfunction LOperationMenu:ctor()\n    self.m_isHangUpAttack = false\n    self.m_attackMethods = 1001\n    self.m_moveMethods = 0\n    self.m_direction = nil\n    self.m_currProgress = nil\n    self.m_operation = nil\n    self:init()\nend\n\nfunction LOperationMenu:init()\n    self:setTouchSwallowEnabled(false)\n    \n    self.m_operation = cc.Node:create()\n    self.m_operation:setPosition(display.width, 0)\n    self:addChild(self.m_operation)\n    \n    local PUSH_BUTTON_IMAGES = {\n        normal = \"ui/attack_normal.png\",\n        pressed = \"ui/attack_selected.png\",\n        disabled = \"ui/attack_normal.png\",\n    }\n\n    local szBtn = cc.size(90, 90)\n    local ptBtn = cc.pAdd(cc.p(10, 10), cc.p(szBtn.width/2, szBtn.height/2))\n    \n    self.m_btnCommonAttack = cc.ui.UIPushButton.new(PUSH_BUTTON_IMAGES, {scale9 = true})\n    self.m_btnCommonAttack:setAnchorPoint(0.5, 0.5)\n    self.m_btnCommonAttack:setButtonSize(szBtn.width, szBtn.height)\n    self.m_btnCommonAttack:setPosition(-ptBtn.x, ptBtn.y)\n    self.m_btnCommonAttack:onButtonClicked(handler(self, self.commonAttack))\n    self.m_operation:addChild(self.m_btnCommonAttack)\n    \n    PUSH_BUTTON_IMAGES = {\n        normal = \"ui/groove_normal.png\",\n        pressed = \"ui/groove_selected.png\",\n        disabled = \"ui/groove_normal.png\",\n    }\n    \n    szBtn = cc.size(75, 75)\n    ptBtn = {\n        cc.pAdd(cc.p(120, 10), cc.p(szBtn.width/2, szBtn.height/2)),\n        cc.pAdd(cc.p(110, 110), cc.p(szBtn.width/2, szBtn.height/2)),\n        cc.pAdd(cc.p(10, 120), cc.p(szBtn.width/2, szBtn.height/2))\n    }\n    \n    self.m_btnSkillAttack = {}\n    for i = 1, 3 do\n        self.m_btnSkillAttack[i] = cc.ui.UIPushButton.new(PUSH_BUTTON_IMAGES, {scale9 = true})\n        self.m_btnSkillAttack[i]:setAnchorPoint(0.5, 0.5)\n        self.m_btnSkillAttack[i]:setButtonSize(szBtn.width, szBtn.height)\n--        self.m_btnSkillAttack[i].getButtonSize = function() -- UIPushButton:getContentSize()获取不了按钮大小\n--            return cc.size(self.m_btnSkillAttack[i].scale9Size_[1], self.m_btnSkillAttack[i].scale9Size_[2])\n--        end\n        self.m_btnSkillAttack[i]:setPosition(-ptBtn[i].x, ptBtn[i].y)\n        self.m_btnSkillAttack[i]:onButtonClicked(handler(self, self.skillAttack))\n        self.m_operation:addChild(self.m_btnSkillAttack[i], 0, 0)\n    end\n    \n    szBtn = cc.size(60, 60)\n    ptBtn = cc.pAdd(cc.p(210, 90), cc.p(szBtn.width/2, szBtn.height/2))\n    \n    self.m_btnDrugs = cc.ui.UIPushButton.new(PUSH_BUTTON_IMAGES, {scale9 = true})\n    self.m_btnDrugs:setAnchorPoint(0.5, 0.5)\n    self.m_btnDrugs:setButtonSize(szBtn.width, szBtn.height)\n    self.m_btnDrugs:setPosition(-ptBtn.x, ptBtn.y)\n    self.m_btnDrugs:onButtonClicked(handler(self, self.useDrugs))\n    self.m_operation:addChild(self.m_btnDrugs)\n    \n    szBtn = cc.size(60, 60)\n    ptBtn = cc.pAdd(cc.p(10, 215), cc.p(szBtn.width/2, szBtn.height/2))\n    \n    self.m_btnDelivery = cc.ui.UIPushButton.new(PUSH_BUTTON_IMAGES, {scale9 = true})\n    self.m_btnDelivery:setAnchorPoint(0.5, 0.5)\n    self.m_btnDelivery:setButtonSize(szBtn.width, szBtn.height)\n    self.m_btnDelivery:setPosition(-ptBtn.x, ptBtn.y)\n    self.m_btnDelivery:onButtonClicked(handler(self, self.useDeliveryProp))\n    self.m_operation:addChild(self.m_btnDelivery, 0, 0)\n    \n    PUSH_BUTTON_IMAGES = {\n        normal = \"ui/direction_head.png\",\n        pressed = \"ui/direction_head.png\",\n        disabled = \"ui/direction_head.png\",\n    }\n    \n    self.m_btnHangUp = cc.ui.UIPushButton.new(PUSH_BUTTON_IMAGES, {scale9 = true})\n    self.m_btnHangUp:setAnchorPoint(0.5, 0.5)\n    self.m_btnHangUp:setButtonSize(95, 95)\n    self.m_btnHangUp:setPosition(display.width-250, display.height-100)\n    self.m_btnHangUp:setButtonLabel(\"normal\", cc.ui.UILabel.new({\n        text = \"自动攻击\",\n        fontName = \"fonts/Marker Felt.ttf\",\n        size = 15\n    }))\n    self.m_btnHangUp:onButtonClicked(handler(self, self.hangUpAttack))\n    self:addChild(self.m_btnHangUp, 0, 0xfffffff0)\n    \n    local btnMoveMethods = cc.ui.UIPushButton.new(PUSH_BUTTON_IMAGES, {scale9 = true})\n    btnMoveMethods:setAnchorPoint(0.5, 0.5)\n    btnMoveMethods:setButtonSize(95, 95)\n    btnMoveMethods:setPosition(100, display.height-200)\n    btnMoveMethods:setButtonLabel(\"normal\", cc.ui.UILabel.new({\n        text = \"取消跑步\",\n        fontName = \"fonts/Marker Felt.ttf\",\n        size = 15\n    }))\n    btnMoveMethods:onButtonClicked(handler(self, self.moveMethods))\n    self:addChild(btnMoveMethods)\n    \n    --self:addSkillIcon(1, 1002)\n\tself:addSkillIcon(2, 2007)\n\tself:addSkillIcon(3, 2005)\n    return true\nend\n\nfunction LOperationMenu:getSkillAttackBtn(number)\n    if (number > 3 or number <= 0) then\n        return nil\n    end\n    \n    return self.m_btnSkillAttack[number]\nend\n\nfunction LOperationMenu:addSkillIcon_(btn, skillNumber)\n    g_player:subAttackSkill(btn:getTag())\n    \n    if (btn:getChildByTag(TAG_PROGRESS_SKILL) == self.m_currProgress) then\n        self.m_currProgress = nil\n    end\n    btn:removeChildByTag(TAG_PROGRESS_SKILL)\n\n    for i = 1, 3 do\n        if (skillNumber == self.m_btnSkillAttack[i]:getTag()) then\n            if (self.m_btnSkillAttack[i]:getChildByTag(TAG_PROGRESS_SKILL) == self.m_currProgress) then\n                self.m_currProgress = nil\n            end\n            self.m_btnSkillAttack[i]:removeChildByTag(TAG_PROGRESS_SKILL)\n            self.m_btnSkillAttack[i]:setTag(0)\n        end\n    end\n    \n    local str = string.format(\"ui/skill/skill_%d.png\", skillNumber)\n    local texture = cc.Director:getInstance():getTextureCache():addImage(str)\n    if (texture) then\n        local progressTimer = ProgressAutomatic.new(cc.Sprite:createWithTexture(texture))\n        progressTimer:setType(cc.PROGRESS_TIMER_TYPE_RADIAL)\n        --local szBtn = btn:getContentSize()\n        local szBtn = cc.size(0, 0)\n        progressTimer:setPosition(szBtn.width/2, szBtn.height/2)\n        btn:addChild(progressTimer, 1, TAG_PROGRESS_SKILL)\n        progressTimer:setPercentage(100)\n\n        progressTimer:setScale(1.8)\n    end\n    \n    btn:setTag(skillNumber)\n    \n    g_player:addAttackSkill(skillNumber)\nend\n\nfunction LOperationMenu:addSkillIcon(btnNumber, skillNumber)\n    local btn = self.m_btnSkillAttack[btnNumber]\n    self:addSkillIcon_(btn, skillNumber)\nend\n\nfunction LOperationMenu:addDrugs(drugsNumber)\n    self.m_drugsBtn:removeChildByTag(TAG_PROGRESS_SKILL)\n    \n    local str = string.format(\"ui/skill/skill_%d.png\", drugsNumber)\n    local sprite = display(str)\n    local szBtn = self.m_btnDrugs:getContentSize()\n    sprite:setPosition(szBtn.width / 2, szBtn.height / 2)\n    self.m_btnDrugs:addChild(sprite, 1, TAG_PROGRESS_SKILL)\n    sprite:setScale(1.2)\n    \n    self.m_btnDrugs:setTag(drugsNumber)\nend\n\n-- 普通攻击按钮\nfunction LOperationMenu:commonAttack(event)\n    self.m_currProgress = nil\n    self.m_attackMethods = 1001\n    self:attack()\nend\n\n-- 技能攻击按钮\nfunction LOperationMenu:skillAttack(event)\n    local btn = event.target\n    if (btn:getTag() == 0) then\n        return\n    end\n    \n    self.m_currProgress = btn:getChildByTag(TAG_PROGRESS_SKILL)\n    self.m_attackMethods = btn:getTag()\n    self:attack()\nend\n\n-- 使用药物疗伤按钮\nfunction LOperationMenu:useDrugs(event)\n    g_player:bloodReturn(5000)\n    self.m_btnDrugs:removeChildByTag(TAG_PROGRESS_SKILL)\n    self.m_btnDrugs:setTag(0)\nend\n\n-- 使用传送卷按钮\nfunction LOperationMenu:useDeliveryProp(event)\n    local r = math.random()\n\n    if (r == 1) then\n        r = 0\n    end\n    \n    GameLoading.runGameLoading(100, r * 4 + 1)\n    --g_mainScene:replaceBgMap(100, r * 4 + 1)\nend\n\nfunction LOperationMenu:skillAttackCooling(progress)\n    \nend\n\n-- 攻击\nfunction LOperationMenu:attack()\n    if (not g_mainScene:getSelected()) then\n        g_mainScene:showSelected(g_player:getAgainstMeOfFirst())\n    end\n    \n    local attackMonomerMajor = g_mainScene:getSelected()\n    \n    if (not attackMonomerMajor) then\n        local ptPlayer = MapPoint.new(cc.p(g_player:getPosition()))\n        local array = {}\n        local mapEnemy = g_mainScene:getEnemyDictionary()\n        if (mapEnemy) then\n            for key, enemy in pairs(mapEnemy) do\n                local ptEnemy = MapPoint.new(cc.p(enemy:getPosition()))\n                if (ptPlayer:getDistance(ptEnemy) <= g_player:getVisualRange()) then\n                    table.insert(array, enemy)\n                end\n            end\n        end\n        \n        for i = 1, #array do\n            local enemy = array[i]\n            \n            if (not attackMonomerMajor) then\n                attackMonomerMajor = enemy\n            else\n                local ptEnemy = MapPoint.new(cc.p(enemy:getPosition()))\n                local ptAttackMonomer = MapPoint.new(cc.p(attackMonomerMajor:getPosition()))\n                if (ptPlayer:getDistance(ptEnemy) < ptPlayer:getDistance(ptAttackMonomer)) then\n                    attackMonomerMajor = enemy\n                end\n            end\n        end\n        \n        g_mainScene:showSelected(attackMonomerMajor)\n    end\n    \n    if (attackMonomerMajor) then\n        g_player:followAttackAndSetAttackMethods(attackMonomerMajor, self.m_attackMethods)\n    end\nend\n\nfunction LOperationMenu:hangUpAttack(event)\n    local flag = false\n    local mapEnemy = g_mainScene:getEnemyDictionary()\n    if (mapEnemy) then\n        for key, enemy in pairs(mapEnemy) do\n            local ptPlayer = MapPoint.new(cc.p(g_player:getPosition()))\n            local ptEnemy = MapPoint.new(cc.p(enemy:getPosition()))\n            if (ptPlayer:getDistance(ptEnemy) <= g_player:getVisualRange()) then\n                flag = true\n                break\n            end\n        end\n    end\n    \n    if (not flag) then\n        return \n    end\n    \n    if (self.m_isHangUpAttack) then\n        self.m_isHangUpAttack = false\n        self.m_btnHangUp:setButtonLabelString(\"normal\", \"自动攻击\")\n    else\n        self.m_isHangUpAttack = true\n        self:attack()\n        self.m_btnHangUp:setButtonLabelString(\"normal\", \"停止自动\")\n    end\nend\n\nfunction LOperationMenu:intelligentSearch()\n    if (self.m_isHangUpAttack) then\n        local sequence = cc.Sequence:create(cc.DelayTime:create(0.1), cc.CallFunc:create(handler(self, self.attack)))\n        self:runAction(sequence)\n        \n        if (g_player:getBloodCap()/4 >= g_player:getBlood()) then\n            g_player:bloodReturn(g_player:getBloodCap())\n        end\n    end\nend\n\nfunction LOperationMenu:cancelHangUP()\n    if (self.m_isHangUpAttack) then\n        self:hangUpAttack(nil)\n    end\nend\n\nfunction LOperationMenu:moveMethods(event)\n    local btn = event.target\n    \n    if (self.m_moveMethods == 0) then\n        self.m_moveMethods = 1\n        btn:setButtonLabelString(\"normal\", \"取消步行\")\n    elseif (self.m_moveMethods == 1) then\n        self.m_moveMethods = 2\n        btn:setButtonLabelString(\"normal\", \"取消寻路\")\n    elseif (self.m_moveMethods == 2) then\n        self.m_moveMethods = 0\n        btn:setButtonLabelString(\"normal\", \"取消跑步\")\n    end\nend\n\nfunction LOperationMenu:hideOperationMenu()\n--    if (self.m_direction) then\n--        self.m_direction:setTouchEnabled(false)\n--        self.m_direction:stopAllActions()\n--        \n--        local moveTo = cc.MoveTo:create(0.3, cc.p(-120, 120))\n--        local scaleTo = cc.ScaleTo:create(0.3, 0.8)\n--        local easeBack = cc.EaseSineOut:create(cc.Spawn:create(moveTo, scaleTo, nil))\n--        self.m_direction:runAction(easeBack)\n--    end\n    \n    if (self.m_operation) then\n        self.m_operation:stopAllActions()\n        \n        local moveTo2 = cc.MoveTo:create(0.3, cc.p(display.width+300, 0))\n        local scaleTo2 = cc.ScaleTo:create(0.3, 1.0)\n        local easeBack2 = cc.EaseSineOut:create(cc.Spawn:create(moveTo2, scaleTo2))\n        self.m_operation:runAction(easeBack2)\n    end\nend\n\nfunction LOperationMenu:showOperationMenu()\n--    if (self.m_direction) then\n--        self.m_direction:setTouchEnabled(true)\n--        self.m_direction:stopAllActions()\n--        \n--        local moveTo = cc.MoveTo:create(0.3, cc.p(120, 120))\n--        local scaleTo = cc.ScaleTo:create(0.3, 0.8)\n--        local easeBack = cc.EaseSineOut:create(cc.Spawn:create(moveTo, scaleTo, nil))\n--        self.m_direction:runAction(easeBack)\n--    end\n    \n    if (self.m_operation) then\n        self.m_operation:stopAllActions()\n        \n        local moveTo2 = cc.MoveTo:create(0.3, cc.p(display.width, 0))\n        local scaleTo2 = cc.ScaleTo:create(0.3, 1.0)\n        local easeBack2 = cc.EaseSineOut:create(cc.Spawn:create(moveTo2, scaleTo2))\n        self.m_operation:runAction(easeBack2)\n    end\nend\n\nfunction LOperationMenu:joinEditState()\n    if (self.m_operation) then\n        self.m_operation:setPositionY(100)\n        local moveTo2 = cc.MoveTo:create(0.3, cc.p(display.width, 100))\n        local scaleTo2 = cc.ScaleTo:create(0.3, 1.0)\n        local easeBack2 = cc.EaseSineOut:create(cc.Spawn:create(moveTo2, scaleTo2))\n        self.m_operation:runAction(easeBack2)\n    end\nend\n\nfunction LOperationMenu:getDrugsBtn()\n    return self.m_btnDrugs\nend\n\nfunction LOperationMenu:getDeliveryBtn()\n    return self.m_btnDelivery\nend\n\nfunction LOperationMenu:getCurrProgress()\n    return self.m_currProgress\nend\n\nfunction LOperationMenu:getMoveMethods()\n    return self.m_moveMethods\nend\n\nreturn LOperationMenu"
  },
  {
    "path": "源代码/mir9/src/app/game_ui/MapThumbnailLayer.lua",
    "content": "local MapPoint = require(\"app.map.MapPoint\")\n\nlocal centerPoint = cc.p(72, 93)\nlocal lenght = 60\nlocal scale = 1000\n\nlocal function createIndicator(size, color)\n    return display.newRect(cc.rect(0,0,size,size), {fillColor = color, borderColor = color})\nend\n\nlocal MapThumbnailScrollView = class(\"MapThumbnailScrollView\", cc.ui.UIScrollView)\n\nfunction MapThumbnailScrollView:ctor(params)\n    MapThumbnailScrollView.super.ctor(self, params)\n    self.m_rcView = params.viewRect\n    self.m_bIsMoved = false\n    self.m_beginPoint = cc.p(0, 0)\n    self:initWithMap()\nend\n\nfunction MapThumbnailScrollView:initWithMap()\n    self:setAnchorPoint(0, 0)\n    self:setBounceable(false)\n    \n    local texture = g_mainScene:getCurrBgMap():getSmallMap():getTexture()\n    self.m_scrollNode = cc.Sprite:createWithTexture(texture)\n    self.m_scrollNode:setAnchorPoint(0, 0)\n    self.m_scrollNode:setPosition(0, 0)\n    self:addScrollNode(self.m_scrollNode)\n    \n    self.m_pEndPoint = createIndicator(8, cc.c4f(1,1,0,1))\n    self.m_scrollNode:addChild(self.m_pEndPoint)\n    self.m_pEndPoint:setPosition(-100, -100)\n    \n    local blink = cc.Blink:create(0.5, 1)\n    local repeatForever = cc.RepeatForever:create(blink)\n    self.m_pEndPoint:runAction(repeatForever)\n    \n    self.m_playerIndicator = display.newSprite(\"ui/self_indicator.png\")\n    self.m_scrollNode:addChild(self.m_playerIndicator)\n\n    local x = g_player:getPositionX() * self.m_scrollNode:getContentSize().width / g_mainScene:getCurrBgMap():getBgSize().width\n    local y = g_player:getPositionY() * self.m_scrollNode:getContentSize().height / g_mainScene:getCurrBgMap():getBgSize().height\n    x = x - self.m_rcView.width / 2\n    y = y - self.m_rcView.height / 2\n    x = math.min(x, self.m_scrollNode:getContentSize().width - self.m_rcView.width)\n    x = math.max(x, 0)\n    y = math.min(y, self.m_scrollNode:getContentSize().height - self.m_rcView.height)\n    y = math.max(y, 0)\n    self.m_scrollNode:setPosition(-x, -y)\n    \n    self:scheduleUpdate()\nend\n\nfunction MapThumbnailScrollView:update_(dt)\n    MapThumbnailScrollView.super.update_(self, dt)\n    \n    local x = g_player:getPositionX() * self.m_scrollNode:getContentSize().width / g_mainScene:getCurrBgMap():getBgSize().width\n    local y = g_player:getPositionY() * self.m_scrollNode:getContentSize().height / g_mainScene:getCurrBgMap():getBgSize().height\n    self.m_playerIndicator:setPosition(x, y)\nend\n\nfunction MapThumbnailScrollView:onTouch_(event)\n    MapThumbnailScrollView.super.onTouch_(self, event)\n    \n    if \"began\" == event.name and not self:isTouchInViewRect(event) then\n        return false\n    end\n\n    if event.name == \"began\" then\n        local bRet = self:onTouchBegan(event)\n        self:setTouchSwallowEnabled(bRet)\n        return bRet\n    elseif event.name == \"moved\" then\n        self:onTouchMoved(event)\n    elseif event.name == \"ended\" then\n        self:onTouchEnded(event)\n    elseif event.name == \"cancel\" then\n        self:onTouchCancelled(event)\n    end\nend\n\nfunction MapThumbnailScrollView:onTouchBegan(event)\n    self.m_beginPoint = cc.p(event.x, event.y)\n    return true\nend\n\nfunction MapThumbnailScrollView:onTouchMoved(event)\n    local point = cc.p(event.x, event.y)\n    if (cc.pGetDistance(self.m_beginPoint, point) < 5) then\n        self.m_bIsMoved = true\n    end\nend\n\nfunction MapThumbnailScrollView:onTouchEnded(event)\n    if (self.m_bIsMoved) then\n        self.m_bIsMoved = false\n        return\n    end\n\n    local point = cc.p(event.x, event.y)\n    local point = self.m_scrollNode:convertToNodeSpace(point)\n    self.m_pEndPoint:setPosition(point)\n    local x = point.x * g_mainScene:getCurrBgMap():getBgSize().width / self.m_scrollNode:getContentSize().width\n    local y = point.y * g_mainScene:getCurrBgMap():getBgSize().height / self.m_scrollNode:getContentSize().height\n        \n    g_player:goTo(MapPoint.new(cc.p(x, y)))\nend\n\nlocal MapThumbnailLayer = class(\"MapThumbnailLayer\", function()\n    return display.newLayer()\nend)\n\nfunction MapThumbnailLayer:ctor()\n    local bg = display.newSprite(\"ui/bg_map_layer.png\")\n    bg:setPosition(display.cx, display.cy)\n    self:addChild(bg)\n    \n    local bound = cc.rect(0, 0, 600, 480)\n    self.m_nMap = MapThumbnailScrollView.new({viewRect = bound})\n    self.m_nMap:setPosition(43, 43)\n    bg:addChild(self.m_nMap)\n    \n    local szBg = bg:getContentSize()\n    local szBtn = cc.size(57, 58)\n    \n    local PUSH_BUTTON_IMAGES = {\n        normal = \"ui/closed_normal.png\",\n        pressed = \"ui/closed_selected.png\",\n        disabled = \"ui/closed_normal.png\",\n    }\n    \n    local btn = cc.ui.UIPushButton.new(PUSH_BUTTON_IMAGES, {scale9 = true})\n    btn:setButtonSize(szBtn.width, szBtn.height)\n    local point = cc.pAdd(cc.p(bg:getPosition()), cc.p(szBg.width/2, szBg.height/2))\n    point = cc.pSub(point, cc.p(szBtn.width/2, szBtn.height/2))\n    btn:setAnchorPoint(0.5, 0.5)\n    btn:setPosition(point)\n    btn:onButtonClicked(handler(self, self.onBtn_Close))\n    self:addChild(btn)\nend\n\nfunction MapThumbnailLayer:onBtn_Close(event)\n    self:removeFromParent()\nend\n\n\n\nlocal MapThumbnailMenu = class(\"MapThumbnailMenu\", function()\n    return display.newSprite(\"ui/mapThumbnail.png\")\nend)\n\nfunction MapThumbnailMenu:ctor()\n    self.m_mapEnemySp = {}\n    self.m_arrEnemyKey = {}\n\n    local bg = display.newSprite(\"ui/bg_mapThumbnail.png\")\n    bg:setAnchorPoint(0, 0)\n    self:addChild(bg, -2)\n\n    self.m_playerIndicator = createIndicator(4, cc.c4f(1,1,1,1))\n    self.m_playerIndicator:setPosition(centerPoint)\n    self:addChild(self.m_playerIndicator, -1)\n\n    self.m_pCoordinateTTF = cc.LabelTTF:create(\"\", \"Helvetica-Bold\", 12)\n    self.m_pCoordinateTTF:setPosition(centerPoint.x, 16)\n    self:addChild(self.m_pCoordinateTTF)\n\n    self:addNodeEventListener(cc.NODE_TOUCH_EVENT, function(event)\n        if event.name == \"began\" then\n            local bRet = self:onTouchBegan(event)\n            self:setTouchSwallowEnabled(bRet)\n            return bRet\n        elseif event.name == \"moved\" then\n            self:onTouchMoved(event)\n        elseif event.name == \"ended\" then\n            self:onTouchEnded(event)\n        elseif event.name == \"cancel\" then\n            self:onTouchCancelled(event)\n        end\n    end)\n    self:setTouchEnabled(true)\n    \n    self:addNodeEventListener(cc.NODE_ENTER_FRAME_EVENT, function(...)\n        self:update_(...)\n    end)\n    self:scheduleUpdate()\nend\n\nfunction MapThumbnailMenu:update_(dt)\n    local mapEnemy = g_mainScene:getEnemyDictionary()\n\n    if (not mapEnemy) then\n        return\n    end\n\n    for i = 1, #self.m_arrEnemyKey do\n        local key = self.m_arrEnemyKey[i]\n        local enemy = mapEnemy[key]\n        if (not enemy) then\n            local enemyIndicator = self.m_mapEnemySp[key]\n            self.m_mapEnemySp[key] = nil\n            enemyIndicator:removeFromParent()\n        else\n            local distance = cc.pGetDistance(cc.p(g_player:getPosition()), cc.p(enemy:getPosition()))\n            if (distance > scale) then\n                local enemyIndicator = self.m_mapEnemySp[key]\n                self.m_mapEnemySp[key] = nil\n                enemyIndicator:removeFromParent()\n            end             \n        end\n    end\n    self.m_arrEnemyKey = {}\n    for key, enemy in pairs(mapEnemy) do\n        local distance = cc.pGetDistance(cc.p(g_player:getPosition()), cc.p(enemy:getPosition()))\n        if (distance <= scale) then\n            table.insert(self.m_arrEnemyKey, key)\n            local distanceX = enemy:getPositionX() - g_player:getPositionX()\n            local distanceY = enemy:getPositionY() - g_player:getPositionY()\n            local x = lenght * distanceX/scale + centerPoint.x\n            local y = lenght * distanceY/scale + centerPoint.y\n            local enemyIndicator = self.m_mapEnemySp[key]\n            if (not enemyIndicator) then\n                enemyIndicator = createIndicator(2, cc.c4f(1,0,0,1))\n                self:addChild(enemyIndicator, -1)\n                self.m_mapEnemySp[key] = enemyIndicator\n            end\n            enemyIndicator:setPosition(x, y)\n        end\n    end\n    local point = cc.p(g_player:getPositionX()/10, g_player:getPositionY()/10)\n    local str = string.format(\"X:%03d     Y:%03d\", point.x, point.y)\n    self.m_pCoordinateTTF:setString(str)\nend\n\nfunction MapThumbnailMenu:onTouchBegan(event)\n    local point = cc.p(event.x, event.y)\n    point = self:convertToNodeSpace(point)\n\n    if (cc.pGetDistance(point, centerPoint) <= lenght) then\n        return true\n    end\n\n    return false\nend\n\nfunction MapThumbnailMenu:onTouchMoved(event)\n\nend\n\nfunction MapThumbnailMenu:onTouchEnded(event)\n    if (g_mainScene:getGameInfoUIController():getChildByTag(0xff00f)) then\n        return\n    end\n    local map = MapThumbnailLayer.new()\n    g_mainScene:getGameInfoUIController():addChild(map, 0, 0xff00f)\nend\n\nfunction MapThumbnailMenu:onTouchCancelled(event)\n\nend\n\nreturn MapThumbnailMenu"
  },
  {
    "path": "源代码/mir9/src/app/game_ui/ProgressAutomatic.lua",
    "content": "local scheduler = require(\"framework.scheduler\")\n\nlocal ProgressAutomatic = class(\"ProgressAutomatic\", function(sprite)\n    return cc.ProgressTimer:create(sprite)\nend)\n\nfunction ProgressAutomatic:ctor(sprite)\n    local sprite2 = cc.Sprite:createWithTexture(sprite:getTexture())\n    sprite2:setColor(cc.c3b(100, 100, 100))\n    local szContent = self:getContentSize()\n    sprite2:setPosition(szContent.width/2, szContent.height/2)\n    self:addChild(sprite2, -1)\n    \n    self:setNodeEventEnabled(true)\nend\n\nfunction ProgressAutomatic:onExit()\n    if (self.handle) then\n        scheduler.unscheduleGlobal(self.handle)\n        self.handle = nil\n    end\nend\n\nfunction ProgressAutomatic:RunCoolingAction(fDelay)\n    if (self:getPercentage() < 100.0) then\n        return\n    end\n\n    self:setPercentage(0)\n    self.m_fInterval = 100 / (fDelay * 60)\n    if (self.handle) then\n        scheduler.unscheduleGlobal(self.handle)\n        self.handle = nil\n    end\n    self.handle = scheduler.scheduleGlobal(handler(self, self.updateCoolingAction), 0)\nend\n\nfunction ProgressAutomatic:updateCoolingAction(dt)\n    local fPercentage = self:getPercentage()\n    local percentage = fPercentage + self.m_fInterval\n    self:setPercentage(percentage)\n    if (percentage >= 100.0) then\n        if (self.handle) then\n            scheduler.unscheduleGlobal(self.handle)\n            self.handle = nil\n        end\n    end\nend\n\nfunction ProgressAutomatic:RunCoolingNotAction(fDelay)\n    if (self:getPercentage() < 100.0) then\n        return\n    end\n    \n    self:setPercentage(0)\n\n    local delayTime = cc.DelayTime:create(fDelay)\n    local callFunc = cc.CallFunc:create(handler(self, self.setCoolingFalse))\n    local sequence = cc.Sequence:create(delayTime, callFunc, nil)\n    self:runAction(sequence)\nend\n\nfunction ProgressAutomatic:setCoolingFalse()\n    self:setPercentage(100)\nend\n\nreturn ProgressAutomatic"
  },
  {
    "path": "源代码/mir9/src/app/game_ui/PropColumn.lua",
    "content": "local MapPoint = require(\"app.map.MapPoint\")\nlocal BgMap = require(\"app.map.BgMap\")\nlocal PropIconShow = require(\"app.prop_system.PropIconShow\")\n\nlocal GRID_WIDTH = 39\nlocal GRID_HEIGHT = 35\nlocal PROP_X = 88\nlocal PROP_Y = 80\nlocal COL = 10\nlocal ROW = 6\n\nlocal PropColumnMenu = class(\"PropColumnMenu\", function()\n    return display.newLayer()\nend)\n\nfunction PropColumnMenu:ctor()\n    self.m_className = \"PropColumnMenu\"\n    self.m_editProp = nil\n    self.m_propVec = {}\n    self:init()\nend\n\nfunction PropColumnMenu:onEnter()\n    self:updatePropVecPoint()\nend\n\nfunction PropColumnMenu:init()\n    local bg = display.newSprite(\"ui/prop_column.png\")\n    self:addChild(bg)\n    \n    self.m_propColumn = cc.LayerColor:create(cc.c4b(255, 255, 255, 0), GRID_WIDTH*COL, GRID_HEIGHT*ROW)\n    self.m_propColumn:setContentSize(GRID_WIDTH*COL, GRID_HEIGHT*ROW)\n    self.m_propColumn:setPosition(PROP_X, PROP_Y)\n    bg:addChild(self.m_propColumn)\n    \n    local ptBg = cc.p(bg:getPosition())\n    local szBg = bg:getContentSize()\n    local szBtn = cc.size(57, 58)\n    \n    local PUSH_BUTTON_IMAGES = {\n        normal = \"ui/closed_normal.png\",\n        pressed = \"ui/closed_selected.png\",\n        disabled = \"ui/closed_normal.png\",\n    }\n\n    local btn = cc.ui.UIPushButton.new(PUSH_BUTTON_IMAGES, {scale9 = true})\n    btn:setButtonSize(szBtn.width, szBtn.height)\n    local ptBtn = cc.pAdd(ptBg, cc.p(szBg.width/2, szBg.height/2))\n    ptBtn = cc.pSub(ptBtn, cc.p(szBtn.width/2, szBtn.height/2))\n    btn:setPosition(ptBtn)\n    btn:setAnchorPoint(0.5, 0.5)\n    btn:onButtonClicked(handler(g_mainScene:getGameInfoUIController(), g_mainScene:getGameInfoUIController().removeSmallMenuAndButton))\n    self:addChild(btn)\n    \n    for i = 1, 12 do\n        self.m_propVec[i-1] = PropIconShow.new(g_propSystem:getPropInfo(i))\n        self.m_propColumn:addChild(self.m_propVec[i-1])\n    end\n\n    self:updatePropVecPoint()\n    \n    self:addNodeEventListener(cc.NODE_TOUCH_EVENT, function(event)\n        if event.name == \"began\" then\n            local point = cc.p(event.x, event.y)\n\n            local rect = cc.rect(0,0,0,0)\n            local pt = bg:convertToWorldSpace(cc.p(0,0))\n            local size = bg:getContentSize()\n            rect.x, rect.y = pt.x, pt.y\n            rect.width, rect.height = size.width, size.height\n            \n            if (not cc.rectContainsPoint(rect, point)) then\n                self:setTouchSwallowEnabled(false)\n                return false\n            end\n            \n            self:setTouchSwallowEnabled(true)\n            return self:onTouchBegan(event)\n        elseif event.name == \"moved\" then\n            self:onTouchMoved(event)\n        elseif event.name == \"ended\" then\n            self:onTouchEnded(event)\n        elseif event.name == \"cancel\" then\n            self:onTouchCancelled(event)\n        end\n    end)\n    self:setTouchEnabled(true)\n    \n    return true\nend\n\nfunction PropColumnMenu:updatePropVecPoint()\n    for j = 0, ROW-1 do\n        for i = 0, COL-1 do\n            if (self.m_propVec[j*COL+i]) then\n                self.m_propVec[j*COL+i]:setPosition(GRID_WIDTH * (i+0.5), GRID_HEIGHT * (ROW-j-0.5))\n            end\n        end\n    end\nend\n\nfunction PropColumnMenu:getPropRect(i)\n    local rect = cc.rect(0,0,0,0)\n    local x = math.floor(i % COL)\n    local y = math.floor(i / COL)\n    rect.x, rect.y = GRID_WIDTH * x, GRID_HEIGHT * (ROW-y-1)\n    local pt = self.m_propColumn:convertToWorldSpace(cc.p(rect.x, rect.y))\n    rect.x, rect.y = pt.x, pt.y\n    rect.width, rect.height = GRID_WIDTH, GRID_HEIGHT\n    return rect\nend\n\nfunction PropColumnMenu:getPropPoint(i)\n    local x = math.floor(i % COL)\n    local y = math.floor(i / COL)\n    return cc.p(GRID_WIDTH * (x+0.5), GRID_HEIGHT * (ROW-y-0.5))\nend\n\nfunction PropColumnMenu:propHoming(i)\n    if (i < COL*ROW and self.m_propVec[i]) then\n        local point = self:getPropPoint(i)\n        self.m_propVec[i]:setPosition(point)\n    end\nend\n\nfunction PropColumnMenu:swapProp(a, b)\n    if (a < COL*ROW and b < COL*ROW) then\n        local tmp = self.m_propVec[a]\n        self.m_propVec[a] = self.m_propVec[b]\n        self.m_propVec[b] = tmp\n    end\n    \n    self:propHoming(a)\n    self:propHoming(b)\nend\n\nfunction PropColumnMenu:onTouchBegan(event)\n    local point = cc.p(event.x, event.y)\n    \n    local rect = cc.rect(0,0,0,0)\n    local pt = self.m_propColumn:convertToWorldSpace(cc.p(0,0))\n    rect.x, rect.y = pt.x, pt.y\n    local size = self.m_propColumn:getContentSize()\n    rect.width, rect.height = size.width, size.height\n    \n    if (not cc.rectContainsPoint(rect, point)) then\n        return false\n    end\n\n    for i = 0, COL*ROW-1 do\n        if (self.m_propVec[i] and cc.rectContainsPoint(self:getPropRect(i), point)) then\n            self.m_propVec[i]:setVisible(false)\n            self.m_editProp = PropIconShow.new(self.m_propVec[i].m_propInfo)\n            self.m_editProp:setPosition(point)\n            g_mainScene:getGameInfoUIController():addChild(self.m_editProp)\n            self.m_editProp:setTag(i)\n            self.m_editProp:setOpacity(127)\n            break\n        end\n    end\n\n    if (not self.m_editProp) then\n        return false\n    end\n    \n    return true\nend\n\nfunction PropColumnMenu:onTouchMoved(event)\n    local point = cc.p(event.x, event.y)\n    \n    self.m_editProp:setPosition(point)\n    \n    local btn = g_mainScene:getGameInfoUIController():getOperationMenu():getDrugsBtn()\n    \n    local rect = cc.rect(0,0,0,0)\n    local pt = btn:convertToWorldSpace(cc.p(0,0))\n    rect.x, rect.y = pt.x, pt.y\n    local size = btn:getContentSize()\n    rect.width, rect.height = size.width, size.height\n    if (cc.rectContainsPoint(rect, point)) then\n        if (self.m_editProp:getOpacity() == 255) then\n            return\n        end\n        self.m_editProp:setOpacity(255)\n        btn:stopAllActions()\n        local scaleTo = cc.ScaleTo:create(0.1, 1.1)\n        btn:runAction(scaleTo)\n    else\n        if (self.m_editProp:getOpacity() == 127) then\n            return\n        end\n        self.m_editProp:setOpacity(127)\n        btn:stopAllActions()\n        local scaleTo = cc.ScaleTo:create(0.1, 1.0)\n        btn:runAction(scaleTo)\n    end\nend\n\nfunction PropColumnMenu:onTouchEnded(event)\n    local point = cc.p(event.x, event.y)\n    \n    local rect = cc.rect(0,0,0,0)\n    local pt = self.m_propColumn:convertToWorldSpace(cc.p(0,0))\n    rect.x, rect.y = pt.x, pt.y\n    local size = self.m_propColumn:getContentSize()\n    rect.width, rect.height = size.width, size.height\n    \n    if (cc.rectContainsPoint(rect, point)) then\n        point = self.m_propColumn:convertToNodeSpace(point)\n        local x = math.floor(point.x / GRID_WIDTH)\n        local y = math.floor(point.y / GRID_HEIGHT)\n        y = ROW - y - 1\n        self.m_propVec[self.m_editProp:getTag()]:setVisible(true)\n        self:swapProp(self.m_editProp:getTag(), y*COL+x)\n    else\n        if (self.m_editProp:getOpacity() == 255) then\n            g_mainScene:getGameInfoUIController():getOperationMenu():addDrugs(2001)\n            local btn = g_mainScene:getGameInfoUIController():getOperationMenu():getDrugsBtn()\n            btn:stopAllActions()\n            local scaleTo = cc.ScaleTo:create(0.1, 1.0)\n            btn:runAction(scaleTo)\n            self.m_propVec[self.m_editProp:getTag()]:removeFromParent()\n            self.m_propVec[self.m_editProp:getTag()] = nil\n        else\n            local r = math.random()\n            if (r == 1) then\n                r = 0\n            end\n            \n            local bgMap = g_mainScene:getCurrBgMap()\n            local playerPosition = MapPoint.new(cc.p(g_player:getPosition()))\n            \n            local ptZero = MapPoint.new(0, 0)\n            local point = ptZero\n            local mapVec = {}\n            local lenght = 1\n            while (true) do\n                mapVec = playerPosition:getMapPointVectorForDistance(lenght)\n                local index = 0\n                for index = 1, #mapVec do\n                    if (not g_mainScene:getMapPointForProp(mapVec[index])) then\n                        point = mapVec[index]\n                    end\n                end\n                \n                if (not point:equalsObj(ptZero)) then\n                    break\n                end\n                \n                lenght = lenght + 1 \n            end\n            \n            local show = self.m_propVec[self.m_editProp:getTag()]\n            self.m_propVec[self.m_editProp:getTag()] = nil\n            show:setVisible(true)\n            show:retain()\n            show:removeFromParent()\n            show:setPosition(point:getCCPointValue())\n            bgMap:addChild(show, BgMap.getZOrderZero(bgMap))\n            show:release()\n            show:setScale(0.8)\n\n            g_mainScene:insterMapPointForProp(show, point)\n            \n            show:setOpacity(0)\n            local fadeIn = cc.FadeIn:create(0.1)\n            local jumpBy = cc.JumpBy:create(0.3, cc.p(0, 0), 30, 1)\n            local spawn = cc.Spawn:create(fadeIn, jumpBy)\n            show:runAction(spawn)\n        end\n    end\n    self.m_editProp:removeFromParent()\n    self.m_editProp = nil\nend\n\nfunction PropColumnMenu:onTouchCancelled(event)\n\nend\n\nreturn PropColumnMenu"
  },
  {
    "path": "源代码/mir9/src/app/game_ui/SkillTableView.lua",
    "content": "local SkillTableView = class(\"SkillTableView\", function()\n    return display.newNode()\nend)\n\nfunction SkillTableView:ctor()\n    self.m_className = \"SkillTableView\"\n    self.m_pEditingSkill = nil\n    self.m_pEditingBtn = nil\n    self.m_arrSkill = {}\n    self:init()\nend\n\nfunction SkillTableView:init()\n    self:setAnchorPoint(0.5, 0.5)\n    \n    local szBg = cc.size(450, 500)\n    local ptBg = cc.p(szBg.width/-2, szBg.height/-2)\n    local bg = cc.LayerColor:create(cc.c4b(255, 255, 255, 127), szBg.width, szBg.height)\n    bg:setPosition(ptBg)\n    self:addChild(bg, -1)\n    \n    local title = cc.LabelTTF:create(\"技能列表\", \"fonts/Marker Felt.ttf\", 40)\n    title:setPosition(szBg.width/2, szBg.height-30)\n    bg:addChild(title)\n    \n    local szBtn = cc.size(57, 58)\n    \n    local PUSH_BUTTON_IMAGES = {\n        normal = \"ui/closed_normal.png\",\n        pressed = \"ui/closed_selected.png\",\n        disabled = \"ui/closed_normal.png\",\n    }\n\n    local btn = cc.ui.UIPushButton.new(PUSH_BUTTON_IMAGES, {scale9 = true})\n    btn:setButtonSize(szBtn.width, szBtn.height)\n    local ptBtn = cc.pAdd(ptBg, cc.p(szBg.width, szBg.height))\n    ptBtn = cc.pSub(ptBtn, cc.p(szBtn.width/2, szBtn.height/2))\n    btn:setPosition(ptBtn)\n    btn:setAnchorPoint(0.5, 0.5)\n    btn:onButtonClicked(handler(g_mainScene:getGameInfoUIController(), g_mainScene:getGameInfoUIController().removeSmallMenuAndButton))\n    self:addChild(btn)\n    \n    self.m_lvSkill = cc.ui.UIListView.new({\n        -- bgColor = cc.c4b(200, 200, 200, 120),\n        -- bg = \"sunset.png\",\n        viewRect = cc.rect(0, 0, 420, 420),\n        direction = cc.ui.UIScrollView.DIRECTION_VERTICAL,\n        -- scrollbarImgV = \"bar.png\"\n    })\n    self.m_lvSkill:setPosition(15, 15)\n    self.m_lvSkill:setAlignment(cc.ui.UIListView.ALIGNMENT_LEFT)\n    bg:addChild(self.m_lvSkill)\n\n    -- add items\n    for i = 1, 9 do\n        local item = self.m_lvSkill:newItem()\n        \n        local fileName = string.format(\"ui/skill/skill_%d.png\", 2000 + i)\n        item:setBg(\"ui/cell.png\")\n        local content = cc.ui.UIImage.new(fileName)\n        content:setAnchorPoint(0.5, 0.5)\n        content:addNodeEventListener(cc.NODE_TOUCH_EVENT, function(event)\n            local point = cc.p(event.x, event.y)\n            if event.name == \"began\" then\n                self.m_pEditingSkill = cc.Sprite:createWithTexture(content:getTexture())\n                self.m_pEditingSkill:setPosition(point)\n                g_mainScene:getGameInfoUIController():addChild(self.m_pEditingSkill)\n                self.m_pEditingSkill:setTag(content:getParent():getTag())\n                self.m_pEditingSkill:setScale(1.5)\n                self.m_pEditingSkill:setOpacity(127)\n                content:setTouchSwallowEnabled(true)\n                return true\n            elseif event.name == \"moved\" then\n                if (not self.m_pEditingSkill) then\n                    return\n                end\n\n                self.m_pEditingSkill:setPosition(point)\n\n                if (self.m_pEditingBtn) then\n                    local rect = cc.rect(0,0,0,0)\n                    local pt = self.m_pEditingBtn:convertToWorldSpace(cc.p(0,0))\n                    local size = self.m_pEditingBtn:getContentSize()\n                    rect.x, rect.y = pt.x, pt.y\n                    rect.width, rect.height = size.width, size.height\n                    if (not cc.rectContainsPoint(rect, point)) then\n                        self.m_pEditingSkill:setOpacity(127)\n                        self.m_pEditingBtn:stopAllActions()\n                        local scaleTo = cc.ScaleTo:create(0.1, 1.0)\n                        self.m_pEditingBtn:runAction(scaleTo)\n                        self.m_pEditingBtn = nil\n                    end\n                end\n\n                if (not self.m_pEditingBtn) then\n                    for i = 1, 3 do\n                        local btn = g_mainScene:getGameInfoUIController():getOperationMenu():getSkillAttackBtn(i)\n                        local rect = cc.rect(0,0,0,0)\n                        local pt = btn:convertToWorldSpace(cc.p(0,0))\n                        local size = cc.size(75,75)   -- btn:getButtonSize()\n                        rect.x, rect.y = pt.x, pt.y\n                        rect.width, rect.height = size.width, size.height\n                        \n                        rect.x = rect.x - rect.width/2    -- 因为按钮锚点是(0.5,0.5)，所以这里修正一下\n                        rect.y = rect.y - rect.height/2\n\n                        if (cc.rectContainsPoint(rect, point)) then\n                            self.m_pEditingSkill:setOpacity(255)\n                            self.m_pEditingBtn = btn\n                            self.m_pEditingBtn:stopAllActions()\n                            local scaleTo = cc.ScaleTo:create(0.1, 1.1)\n                            self.m_pEditingBtn:runAction(scaleTo)\n                            break\n                        end\n                    end\n                end\n            elseif event.name == \"ended\" then\n                if (self.m_pEditingSkill) then\n                    if (self.m_pEditingBtn) then\n                        g_mainScene:getGameInfoUIController():getOperationMenu():addSkillIcon_(self.m_pEditingBtn, self.m_pEditingSkill:getTag())\n                        local scaleTo = cc.ScaleTo:create(0.1, 1.0)\n                        self.m_pEditingBtn:runAction(scaleTo)\n                        self.m_pEditingBtn = nil\n                    end\n                    self.m_pEditingSkill:removeFromParent()\n                    self.m_pEditingSkill = nil\n                end\n            end\n        end)\n        content:setTouchEnabled(true)\n        item:addContent(content)\n        item:setItemSize(420, 80)\n        item:setMargin({left = 30, bottom = 26, right = 0, top = 0})\n        item:setTag(2000 + i)\n\n        self.m_lvSkill:addItem(item)\n        table.insert(self.m_arrSkill, content)\n    end\n    self.m_lvSkill:reload()\n    \n    return true\nend\n\nfunction SkillTableView:onTouchBegan(event)\n--    local point = cc.p(event.x, event.y)\n--    \n--    local rcListView = cc.rect(0,0,0,0)\n--    rcListView.origin = self.m_lvSkill:getParent():convertToWorldSpace(cc.p(self.m_lvSkill:getPosition()))\n--    rcListView.size = cc.size(420, 420)\n--    \n--    if (not rcListView:containsPoint(point)) then\n--        return false\n--    end\n--    \n--    if (#self.m_arrSkill == 0) then\n--        return false\n--    end\n--    \n--    for i = 1, #self.m_arrSkill do\n--        local imgSkillIcon = self.m_arrSkill[i]\n--        local szSkillIcon = imgSkillIcon:getContentSize()\n--        local ptSkillIcon = cc.p(imgSkillIcon:getPosition())\n--        ptSkillIcon = imgSkillIcon:getParent():convertToWorldSpace(ptSkillIcon)\n--        ptSkillIcon = cc.PointSub(ptSkillIcon, cc.p(szSkillIcon.width/2, szSkillIcon.height/2))\n--        local rect = cc.rect(ptSkillIcon.x, ptSkillIcon.y, szSkillIcon.width, szSkillIcon.height)\n--        if (rect:containsPoint(point)) then\n--            self.m_pEditingSkill = CCSprite:createWithTexture(imgSkillIcon:getTexture())\n--            self.m_pEditingSkill:setPosition(point)\n--            g_mainScene:getGameInfoUIController():addChild(self.m_pEditingSkill)\n--            self.m_pEditingSkill:setTag(imgSkillIcon:getParent():getTag())\n--            self.m_pEditingSkill:setScale(1.5)\n--            self.m_pEditingSkill:setOpacity(127)\n--            return true\n--        end\n--    end\n--    \n--    return false\nend\n\nfunction SkillTableView:onTouchMoved(event)\n--    local point = cc.p(event.x, event.y)\n--    \n--    if (not self.m_pEditingSkill) then\n--        return\n--    end\n--        \n--    self.m_pEditingSkill:setPosition(point)\n--    \n--    if (self.m_pEditingBtn) then\n--        local rect = cc.rect(0,0,0,0)\n--        rect.origin = self.m_pEditingBtn:convertToWorldSpace(cc.p(0,0))\n--        rect.size = self.m_pEditingBtn:getContentSize()\n--        if (not rect:containsPoint(point)) then\n--            self.m_pEditingSkill:setOpacity(127)\n--            self.m_pEditingBtn:stopAllActions()\n--            local scaleTo = cc.ScaleTo:create(0.1, 1.0)\n--            self.m_pEditingBtn:runAction(scaleTo)\n--            self.m_pEditingBtn = nil\n--        end\n--    end\n--    \n--    if (not self.m_pEditingBtn) then\n--        for i = 1, 3 do\n--            local btn = g_mainScene:getGameInfoUIController():getOperationMenu():getSkillAttackBtn(i)\n--            local rect = cc.rect(0,0,0,0)\n--            rect.origin = btn:convertToWorldSpace(cc.p(0,0))\n--            rect.size = btn:getContentSize()\n--            \n--            if (rect:containsPoint(point)) then\n--                self.m_pEditingSkill:setOpacity(255)\n--                self.m_pEditingBtn = btn\n--                self.m_pEditingBtn:stopAllActions()\n--                local scaleTo = cc.ScaleTo:create(0.1, 1.1)\n--                self.m_pEditingBtn:runAction(scaleTo)\n--                break\n--            end\n--        end\n--    end\nend\n\nfunction SkillTableView:onTouchEnded(event)\n--    if (self.m_pEditingSkill) then\n--        if (self.m_pEditingBtn) then\n--            g_mainScene:getGameInfoUIController():getOperationMenu():addSkillIcon(self.m_pEditingBtn, self.m_pEditingSkill:getTag())\n--            local scaleTo = cc.ScaleTo:create(0.1, 1.0)\n--            self.m_pEditingBtn:runAction(scaleTo)\n--            self.m_pEditingBtn = nil\n--        end\n--        self.m_pEditingSkill:removeFromParent()\n--        self.m_pEditingSkill = nil\n--    end\nend\n\nfunction SkillTableView:onTouchCancelled(event)\n    \nend\n\nreturn SkillTableView"
  },
  {
    "path": "源代码/mir9/src/app/map/AStarSearch.lua",
    "content": "\nSEARCH_STATE_NOT_INITIALISED = 0\nSEARCH_STATE_SEARCHING = 1\nSEARCH_STATE_SUCCEEDED = 2\nSEARCH_STATE_FAILED = 3\nSEARCH_STATE_OUT_OF_MEMORY = 4\nSEARCH_STATE_INVALID = 5\n\n-- 对array[first..last]进行堆筛选\nfunction sift_heap(array, first, last)\n    local i = first             -- 被筛选结点索引\n    local j = 2 * i             -- 被筛选结点的左孩子索引\n    local temp = array[i]       -- 保存被筛选结点\n    \n    while (j <= last) do\n        if (j < last and array[j].f > array[j + 1].f) then\n            j = j + 1           -- 若右孩子较小，把j指向右孩子\n        end\n        \n        if (temp.f > array[j].f) then\n            array[i] = array[j] -- 将array[j]调整到双亲结点位置上\n            i = j               -- 修改i和j值，指向下一个被筛选结点和被筛选结点的左孩子\n            j = 2 * i\n        else\n            break               -- 已是小根堆，筛选结束\n        end\n    end\n    \n    array[i] = temp             -- 被筛选结点的值放入最终位置\nend\n\n-- 建立初始小根堆\nfunction make_heap(array, first, last)\n    local n = last - first + 1\n    for i = math.floor(n/2), 1, -1 do\n        sift_heap(array, i, n)\n    end\nend\n\n-- 往小根堆中插入一个结点\nfunction push_heap(array, first, last)\n    make_heap(array, first, last)\nend\n\n-- 从小根堆中弹出一个结点\nfunction pop_heap(array, first, last)\n    array[first], array[last] = array[last], array[first]  \n    make_heap(array, first, last-1)\nend\n\n-- 打印数组\nfunction print_heap(array)\n    str = \"\"\n    for i = 1, #array do\n        str = str .. array[i] .. \",\" \n    end\n    print(\"#######################\", str)\nend\n\n-- The AStar search class.\nlocal AStarSearch = class(\"AStarSearch\")\nlocal Node = class(\"Node\")\n\nfunction Node:ctor()\n    self.parent = nil   -- used during the search to record the parent of successor nodes\n    self.child = nil    -- used after the search for the application to view the search in reverse\n    self.g = 0.0        -- cost of this node + it's predecessors\n    self.h = 0.0        -- heuristic estimate of distance to goal\n    self.f = 0.0        -- sum of cumulative cost of predecessors and self and heuristic\n    self.m_UserState = nil\nend\n\n-- constructor just initialises private data\nfunction AStarSearch:ctor(nMaxNodes)\n    self.m_AllocateNodeCount = 0\n    self.m_State = SEARCH_STATE_NOT_INITIALISED\n    self.m_CurrentSolutionNode = nil\n    self.m_CancelRequest = false\n        \n    -- Heap (simple vector but used as a heap, cf. Steve Rabin's game gems article)\n    self.m_OpenList = {}\n\n    -- Closed list is a vector.\n    self.m_ClosedList = {} \n\n    -- Successors is a vector filled out by the user each type successors to a node\n    -- are generated\n    self.m_Successors = {}\n\n    -- State\n    self.m_State = 0\n\n    -- Counts steps\n    self.m_Steps = 0\n\n    -- Start and goal state pointers\n    self.m_Start = nil\n    self.m_Goal = nil\n\n    self.m_CurrentSolutionNode = nil\n    \n    -- Debug : need to keep these two iterators around\n    -- for the user Dbg functions\n    self.iterDbgOpen = 1\n    self.iterDbgClosed = 1\n    \n    self.m_CancelRequest = false\nend\n\n-- call at any time to cancel the search and free up all the memory\nfunction AStarSearch:cancelSearch()\n    self.m_CancelRequest = true\nend\n\n-- Set Start and goal states\nfunction AStarSearch:setStartAndGoalStates(Start, Goal)\n    self.m_CancelRequest = false\n\n    self.m_Start = Node.new()\n    self.m_Goal = Node.new()\n        \n    self.m_Start.m_UserState = Start\n    self.m_Goal.m_UserState = Goal\n\n    self.m_State = SEARCH_STATE_SEARCHING\n        \n    -- Initialise the AStar specific parts of the Start Node\n    -- The user only needs fill out the state information\n\n    self.m_Start.g = 0 \n    self.m_Start.h = self.m_Start.m_UserState:goalDistanceEstimate(self.m_Goal.m_UserState)\n    self.m_Start.f = self.m_Start.g + self.m_Start.h\n    self.m_Start.parent = nil\n\n    -- Push the start node on the Open list\n    \n    table.insert(self.m_OpenList, self.m_Start) -- heap now unsorted\n\n    -- Sort back element into heap\n    push_heap(self.m_OpenList, 1, #self.m_OpenList)\n\n    -- Initialise counter for search steps\n    self.m_Steps = 0\nend\n\n-- Advances search one step \nfunction AStarSearch:searchStep()\n    -- Firstly break if the user has not initialised the search\n    if (not ((self.m_State > SEARCH_STATE_NOT_INITIALISED) and \n        (self.m_State < SEARCH_STATE_INVALID))) then\n        return self.m_State\n    end\n\n    -- Next I want it to be safe to do a searchstep once the search has succeeded...\n    if ((self.m_State == SEARCH_STATE_SUCCEEDED) or\n        (self.m_State == SEARCH_STATE_FAILED)) then\n        return self.m_State\n    end\n\n    -- Failure is defined as emptying the open list as there is nothing left to \n    -- search...\n    -- New: Allow user abort\n    if (#self.m_OpenList <= 0 or self.m_CancelRequest) then\n        self:freeAllNodes()\n        self.m_State = SEARCH_STATE_FAILED\n        return self.m_State\n    end\n        \n    -- Incremement step count\n    self.m_Steps = self.m_Steps + 1\n\n    -- Pop the best node (the one with the lowest f) \n    local n = self.m_OpenList[1]    -- get pointer to the node\n    pop_heap(self.m_OpenList, 1, #self.m_OpenList)\n    table.remove(self.m_OpenList)\n\n    -- Check for the goal, once we pop that we're done\n    if (n.m_UserState:isGoal(self.m_Goal.m_UserState)) then\n        -- The user is going to use the Goal Node he passed in \n        -- so copy the parent pointer of n \n        self.m_Goal.parent = n.parent\n\n        -- A special case is that the goal was passed in as the start state\n        -- so handle that here\n        if (false == n.m_UserState:isSameState(self.m_Start.m_UserState)) then\n            n = nil\n\n            -- set the child pointers in each node (except Goal which has no child)\n            local nodeChild = self.m_Goal\n            local nodeParent = self.m_Goal.parent\n\n            repeat\n                nodeParent.child = nodeChild\n                nodeChild = nodeParent\n                nodeParent = nodeParent.parent\n            until (not (nodeChild ~= self.m_Start))  -- Start is always the first node by definition\n        end\n\n        -- delete nodes that aren't needed for the solution\n        self:freeUnusedNodes()\n        self.m_State = SEARCH_STATE_SUCCEEDED\n        return self.m_State\n    else    -- not goal\n\n        -- We now need to generate the successors of this node\n        -- The user helps us to do this, and we keep the new nodes in\n        -- m_Successors ...\n\n        self.m_Successors = {}  -- empty vector of successor nodes to n\n\n        -- User provides this functions and uses AddSuccessor to add each successor of\n        -- node 'n' to m_Successors\n        local ret = n.m_UserState:getSuccessors(self, (n.parent and n.parent.m_UserState) or nil) \n\n        if (not ret) then\n            -- free the nodes that may previously have been added \n--            for i = 1, #self.m_Successors do\n--                self.m_Successors[i] = nil\n--            end\n\n            self.m_Successors = {}  -- empty vector of successor nodes to n\n\n            -- free up everything else we allocated\n            self:freeAllNodes()\n\n            self.m_State = SEARCH_STATE_OUT_OF_MEMORY\n            return self.m_State\n        end\n\n        local successor = nil\n        \n        -- Now handle each successor to the current node ...\n        for i = 1, #self.m_Successors do\n            successor = self.m_Successors[i]\n            \n            -- The g value for this successor ...\n            local newg = n.g + n.m_UserState:getCost(successor.m_UserState)\n\n            -- Now we need to find whether the node is on the open or closed lists\n            -- If it is but the node that is already on them is better (lower g)\n            -- then we can forget about this successor\n\n            -- First linear search of open list to find node\n\n            local openlist_result = nil\n            local openlist_index = 1\n            for j = 1, #self.m_OpenList do\n                if (self.m_OpenList[j].m_UserState:isSameState(successor.m_UserState)) then\n                    openlist_result = self.m_OpenList[j]\n                    openlist_index = j\n                    break\n                end\n            end\n\n            if (openlist_result and openlist_result.g <= newg) then\n                -- we found this state on open\n\n                successor = nil\n\n                -- the one on Open is cheaper than this one\n                -- continue\n            else\n                local closedlist_result = nil\n                local closedlist_index = 1\n                for j = 1, #self.m_ClosedList do\n                    if (self.m_ClosedList[j].m_UserState:isSameState(successor.m_UserState)) then\n                        closedlist_result = self.m_ClosedList[j]\n                        closedlist_index = j\n                        break\n                    end\n                end\n\n                if (closedlist_result and closedlist_result.g <= newg) then\n                    -- we found this state on closed\n\n                    -- the one on Closed is cheaper than this one\n                    successor = nil\n                    -- continue\n                else\n                    -- This node is the best node so far with this particular state\n                    -- so lets keep it and set up its AStar specific data ...\n\n                    successor.parent = n\n                    successor.g = newg\n                    successor.h = successor.m_UserState:goalDistanceEstimate(self.m_Goal.m_UserState)\n                    successor.f = successor.g + successor.h\n\n                    -- Remove successor from closed if it was on it\n\n                    if (closedlist_result) then\n                        -- remove it from Closed\n                        table.remove(self.m_ClosedList, closedlist_index)\n                        closedlist_result = nil \n\n                        -- Fix thanks to ...\n                        -- Greg Douglas <gregdouglasmail@gmail.com>\n                        -- who noticed that this code path was incorrect\n                        -- Here we have found a new state which is already CLOSED\n                        -- anus\n                    end\n\n                    -- Update old version of this node\n                    if (openlist_result) then\n                        table.remove(self.m_OpenList, openlist_index)\n                        openlist_result = nil \n\n                        -- re-make the heap \n                        -- make_heap rather than sort_heap is an essential bug fix\n                        -- thanks to Mike Ryynanen for pointing this out and then explaining\n                        -- it in detail. sort_heap called on an invalid heap does not work\n                        make_heap(self.m_OpenList, 1, #self.m_OpenList)\n                    end\n\n                    -- heap now unsorted\n                    table.insert(self.m_OpenList, successor)\n\n                    -- sort back element into heap\n                    push_heap(self.m_OpenList, 1, #self.m_OpenList) \n                end\n            end\n        end\n\n        -- push n onto Closed, as we have expanded it now\n\n        table.insert(self.m_ClosedList, n)\n    end -- end else (not goal so expand)\n    \n    return self.m_State -- Succeeded bool is false at this point. \nend\n\n-- User calls this to add a successor to a list of successors\n-- when expanding the search frontier\nfunction AStarSearch:addSuccessor(state)\n    local node = Node.new()\n\n    if (node) then\n        node.m_UserState = state\n        table.insert(self.m_Successors, node)\n        return true\n    end\n\n    return false\nend\n\n-- Free the solution nodes\n-- This is done to clean up all used Node memory when you are done with the\n-- search\nfunction AStarSearch:freeSolutionNodes()\n    local n = self.m_Start\n\n    if (self.m_Start.child) then\n        repeat\n            local del = n\n            n = n.child\n            del = nil\n        until (not (n ~= self.m_Goal))\n\n        n = nil -- Delete the goal\n    else\n        -- if the start node is the solution we need to just delete the start and goal\n        -- nodes\n        self.m_Start = nil\n        self.m_Goal = nil\n    end\nend\n\n-- Functions for traversing the solution\n\n-- Get start node\nfunction AStarSearch:getSolutionStart()\n    self.m_CurrentSolutionNode = self.m_Start\n    if (self.m_Start) then\n        return self.m_Start.m_UserState\n    else\n        return nil\n    end\nend\n    \n-- Get next node\nfunction AStarSearch:getSolutionNext()\n    if (self.m_CurrentSolutionNode) then\n        if (self.m_CurrentSolutionNode.child) then\n            local child = self.m_CurrentSolutionNode.child\n\n            self.m_CurrentSolutionNode = self.m_CurrentSolutionNode.child\n\n            return child.m_UserState\n        end\n    end\n\n    return nil\nend\n    \n-- Get end node\nfunction AStarSearch:getSolutionEnd()\n    self.m_CurrentSolutionNode = self.m_Goal\n    if (self.m_Goal) then\n        return self.m_Goal.m_UserState\n    else\n        return nil\n    end\nend\n    \n-- Step solution iterator backwards\nfunction AStarSearch:getSolutionPrev()\n    if (self.m_CurrentSolutionNode) then\n        if (self.m_CurrentSolutionNode.parent) then\n            local parent = self.m_CurrentSolutionNode.parent\n            self.m_CurrentSolutionNode = self.m_CurrentSolutionNode.parent\n            return parent.m_UserState\n        end\n    end\n\n    return nil\nend\n\n-- For educational use and debugging it is useful to be able to view\n-- the open and closed list at each step, here are two functions to allow that.\nfunction AStarSearch:getOpenListStart()\n    self.iterDbgOpen = 1\n    local iter = self.m_OpenList[self.iterDbgOpen]\n    if (not iter) then\n        return iter.f, iter.g, iter.h, iter.m_UserState\n    end\n\n    return nil\nend\n\nfunction AStarSearch:getOpenListNext()\n    self.iterDbgOpen = self.iterDbgOpen + 1\n    local iter = self.m_OpenList[self.iterDbgOpen]\n    if (not iter) then\n        return iter.f, iter.g, iter.h, iter.m_UserState\n    end\n\n    return nil\nend\n\nfunction AStarSearch:getClosedListStart()\n    self.iterDbgClosed = 1\n    local iter = self.m_ClosedList[self.iterDbgClosed]\n    if (not iter) then\n        return iter.f, iter.g, iter.h, iter.m_UserState\n    end\n\n    return nil\nend\n\nfunction AStarSearch:getClosedListNext()\n    self.iterDbgClosed = self.iterDbgClosed + 1\n    local iter = self.m_ClosedList[self.iterDbgClosed]\n    if (not iter) then\n        return iter.f, iter.g, iter.h, iter.m_UserState\n    end\n\n    return nil\nend\n\n-- Get the number of steps\nfunction AStarSearch:getStepCount()\n    return self.m_Steps\nend\n\nfunction AStarSearch:ensureMemoryFreed()\n    -- assert(m_AllocateNodeCount == 0);\nend\n\n-- This is called when a search fails or is cancelled to free all used\n-- memory \nfunction AStarSearch:freeAllNodes()\n    self.m_OpenList = {}\n    self.m_ClosedList = {}\nend\n\n\n-- This call is made by the search class when the search ends. A lot of nodes may be\n-- created that are still present when the search ends. They will be deleted by this \n-- routine once the search ends\nfunction AStarSearch:freeUnusedNodes()\n    self.m_OpenList = {}\n    self.m_ClosedList = {}\nend\n\nreturn AStarSearch"
  },
  {
    "path": "源代码/mir9/src/app/map/BgMap.lua",
    "content": "local cjson = require(\"cjson\")\nlocal scheduler = require(\"framework.scheduler\")\nlocal BgMapFloorTile = require(\"app.map.BgMapFloorTile\")\nlocal PortalSprite = require(\"app.map.PortalSprite\")\nlocal MapPoint = require(\"app.map.MapPoint\")\nlocal NpcFigure = require(\"app.map.NpcFigure\")\n\nPortalInformation = class(\"PortalInformation\")\n\nfunction PortalInformation:ctor(key, mapID, born, point)\n    self.key = key\n    self.mapID = mapID\n    self.born = born\n    self.point = point\nend\n\nfunction PortalInformation:equals(other)\n    return (self.key == other.key and \n        self.mapID == other.mapID and \n        self.born == other.born and \n        self.point.x == other.point.x and \n        self.point.y == other.point.y)\nend\n\nPortalInformationZero = PortalInformation.new(0, 0, 0, cc.p(0, 0))\n\nlocal NpcInformation = class(\"NpcInformation\")\n\nfunction NpcInformation:ctor(key, direction, point)\n    self.key = key\n    self.direction = direction \n    self.point = point\nend\n\nfunction NpcInformation:equals(other)\n    return  (self.key == other.key and \n        self.direction == other.direction and\n        self.point.equals(other.point))\nend\n    \nNPCDirection = {\n    DownAndLeft     = 5,\n    Down            = 4,\n    RightAndDown    = 3\n}\n\nlocal OFF_SIZE = cc.p(128, 128)\n\n-- 背景地图类\nlocal BgMap = class(\"BgMap\", function()\n    return display.newNode()\nend)\n\nlocal RADIUS_PASSAGEWAY = 64\n\nlocal TYPE_PROTAL = 100\nlocal TYPE_BORN_POINT = 101\nlocal TYPE_NPC = 200\nlocal TYPE_ENEMY = 300\nlocal TYPE_BACKGROUND_MUSIC = 400\n\nfunction BgMap:ctor()\n    self.m_gridRow = 0\n    self.m_gridCol = 0\n    self.m_gridSize = cc.size(0, 0)\n    self.m_imageRow = 0\n    self.m_imageCol = 0\n    self.m_imageSize = cc.size(0, 0)\n    self.m_bgSize = cc.size(0, 0)\n    self.m_nMapID = 0\n    self.m_playerLead = nil\n    self.m_delegate = nil\n\n    self.m_grid = {}\n        \n    self.m_arrPassageway = {}\n    self.m_mapBornPoint = {}\n    self.m_arrNpcInfo = {}\n    self.m_arrEnemy = {}\n\n    self.m_arrFloorTile = {}\n    self.m_arrNpcFigure = {}\nend\n\n-- 加载地图\nfunction BgMap:loadMap(nMapID)\n    self.m_nMapID = nMapID\n    \n    self:readGirdData()\n    self:readGoodsData()\n\n    local path = string.format(\"map/s%d/min_s%d.jpg\", self.m_nMapID, self.m_nMapID)\n    self.m_spMap = display.newSprite(path)\n    self.m_spMap:setAnchorPoint(cc.p(0, 0))\n    self:addChild(self.m_spMap, BgMap.getZOrderZero(self))\n    self.m_spMap:setScale(10/3.0)\n\n    self:initBgMapFloorTile()\n    self:initBgMapPassagewayImage()\n    self:initNpcFigure()\n\n    self:updateImageDisplay()\n\n    --    if (self.m_backGroundMusic ~= \"\") then\n    --        audio.playMusic(self.m_backGroundMusic, true)\n    --        --audio.setBackgroundMusicVolume(0.2)\n    --    end    \nend\n\n-- 卸载地图\nfunction BgMap:unloadMap()\n    self:killTimer_UpdateMap()\n    self:setDelegate(nil)\n    CCTextureCache:sharedTextureCache():removeUnusedTextures()\nend\n\nfunction BgMap:readGirdData()\n    local path = string.format(\"map/s%d/data_gird_%d.json\", self.m_nMapID, self.m_nMapID)\n    local json_str = cc.FileUtils:getInstance():getStringFromFile(path)\n    local json_value = cjson.decode(json_str)\n    \n    -- 地图宽高\n    local width = json_value[\"mapW\"]\n    local height = json_value[\"mapH\"]\n    self.m_bgSize = cc.size(width, height)\n    \n    -- \n    local gWidth = json_value[\"mapGridW\"]\n    local gHeight = json_value[\"mapGridH\"]\n    self.m_gridSize = cc.size(gWidth, gHeight)\n    MapPoint.setGridSize(self.m_gridSize)\n    self.m_gridRow = math.ceil(width/self.m_gridSize.width)\n    self.m_gridCol = math.ceil(height/self.m_gridSize.height)\n    \n    self:initGridData(json_value[\"mapFlagArr\"])\n    \n    -- 切图宽高\n    local iWidth = json_value[\"divideBlockW\"]\n    local iHeight = json_value[\"divideBlockH\"]\n    self.m_imageSize = cc.size(iWidth, iHeight)\n    self.m_imageRow = math.ceil(width/self.m_imageSize.width)\n    self.m_imageCol = math.ceil(height/self.m_imageSize.height)\nend\n\nfunction BgMap:readGoodsData()\n    local path = string.format(\"map/s%d/data_goods_%d.json\", self.m_nMapID, self.m_nMapID)\n    local json_str = cc.FileUtils:getInstance():getStringFromFile(path)\n    local json_value = cjson.decode(json_str)\n        \n    for i = 1, #json_value[\"items\"] do\n        local goods = json_value[\"items\"][i]\n        \n        local itemType = goods[\"itemType\"]\n        if (itemType == TYPE_PROTAL) then   -- 传送点\n            local key = goods[\"itemSN\"]\n            local mapID = goods[\"portalToMap\"]\n            local born = goods[\"portalToPos\"]\n            local point = cc.p(goods[\"itemPosX\"], goods[\"itemPosY\"])\n            local info = PortalInformation.new(key, mapID, born, point)\n            table.insert(self.m_arrPassageway, info)\n        elseif (itemType == TYPE_BORN_POINT) then   -- \n            local born = goods[\"itemSN\"]\n            local point = cc.p(goods[\"itemPosX\"], goods[\"itemPosY\"])\n            self.m_mapBornPoint[born] = point\n        elseif (itemType == TYPE_NPC) then  -- NPC\n            local key = goods[\"itemSN\"]\n            local direction = goods[\"npcDirection\"]\n            if (not direction) then\n                direction = NPCDirection.Down\n            end\n            local point = cc.p(goods[\"itemPosX\"], goods[\"itemPosY\"])\n            local info = NpcInformation.new(key, direction, point)\n            table.insert(self.m_arrNpcInfo, info)\n        elseif (itemType == TYPE_ENEMY) then    -- 敌人\n            local key = goods[\"itemSN\"]\n            local mpoint = MapPoint.new(cc.p(goods[\"itemPosX\"], goods[\"itemPosY\"]))\n            table.insert(self.m_arrEnemy, {[\"key\"] = key, [\"mpoint\"] = mpoint})\n        elseif (itemType == TYPE_BACKGROUND_MUSIC) then -- 背景音乐        \n            local key = goods[\"itemSN\"]\n            self.m_backGroundMusic = string.format(\"music/400/%d.mp3\", key)\n        end\n    end\nend\n\nfunction BgMap:initGridData(json_value)\n    -- self.m_grid = json_value\n    \n    for i = 0, self.m_gridCol-1 do\n        self.m_grid[i] = {}\n    end\n    \n    for i = 0, #json_value-1 do\n        self.m_grid[math.floor(i/self.m_gridRow)][i%self.m_gridRow] = json_value[i+1]\n    end\nend\n\nfunction BgMap:initBgMapFloorTile()\n    for i = 0, self.m_imageCol-1 do\n        for j = 0, self.m_imageRow-1 do\n            local floorTile = BgMapFloorTile.new()\n            local path = string.format(\"map/s%d/s%d_%d_%d.jpg\", self.m_nMapID, self.m_nMapID, i, j)\n            floorTile.m_fileName = path\n\n            floorTile:setPosition(self.m_imageSize.width*j, self.m_imageSize.height*i)\n            self:addChild(floorTile, BgMap.getZOrderZero(self)) -- z轴\n            table.insert(self.m_arrFloorTile, floorTile)\n        end\n    end\nend\n\nfunction BgMap:initBgMapPassagewayImage()\n    for i = 1, #self.m_arrPassageway do\n        local point = self.m_arrPassageway[i].point\n        point = MapPoint.new(point):getCCPointValue()\n        \n        -- 生成传送门\n        local value = BgMap.getZOrder(point) -- z轴\n        \n        local sprite = PortalSprite.new(\"trans-\")\n        sprite:setPosition(point)\n        self:addChild(sprite, value)\n    end\nend\n\nfunction BgMap:initNpcFigure()\n    for i = 1, #self.m_arrNpcInfo do\n        local npc = NpcFigure.new(self.m_arrNpcInfo[i].key, self.m_arrNpcInfo[i].direction)\n        npc:setPosition(self.m_arrNpcInfo[i].point)\n        self:addChild(npc, BgMap.getZOrder(cc.p(npc:getPosition())))\n        \n        table.insert(self.m_arrNpcFigure, npc)\n    end\nend\n\nfunction BgMap:updateImageDisplay()\n    local rect = self:getShowRect()\n    local rect2 = self:getHideRect()\n    \n    local nStartX = math.floor(rect.x / self.m_imageSize.width)\n    local nStartY = math.floor(rect.y / self.m_imageSize.height)\n    nStartX = math.max(nStartX, 0)\n    nStartY = math.max(nStartY, 0)\n    \n    local nEndX = math.ceil((rect.x+rect.width) / self.m_imageSize.width)\n    local nEndY = math.ceil((rect.y+rect.height) / self.m_imageSize.height)\n    nEndX = math.min(nEndX, self.m_imageRow-1)\n    nEndY = math.min(nEndY, self.m_imageCol-1)\n    \n    for i = nStartY, nEndY do\n        for j = nStartX, nEndX do\n            self.m_arrFloorTile[i*self.m_imageRow+j+1]:IntelligentDisplay(rect, rect2)\n        end\n    end\n        \n    -- 显示地砖\n--    for i = 1, #self.m_arrFloorTile do\n--        self.m_arrFloorTile[i]:IntelligentDisplay(rect, rect2)\n--    end\n    \n    -- 显示NPC\n    for i = 1, #self.m_arrNpcFigure do\n        self.m_arrNpcFigure[i]:IntelligentDisplay(rect, rect2)\n    end\n    \n    if (self.m_delegate) then\n        self.m_delegate:updateImageDisplay(rect, rect2)\n    end\n    \n--    CCTextureCache:sharedTextureCache():removeUnusedTextures()\nend\n\n-- 更新地图计时器回调函数\nfunction BgMap:updateMap(fDelay)\n    if (not self.m_playerLead) then\n        return\n    end\n\n    local x, y = self.m_playerLead:getPosition()\n    local pMap = cc.pSub(cc.p(display.cx, display.cy), cc.p(x, y))\n    \n    pMap.x = math.max(pMap.x, display.width-self.m_bgSize.width)\n    pMap.y = math.max(pMap.y, display.height-self.m_bgSize.height)\n    pMap.x = math.min(pMap.x, 0)\n    pMap.y = math.min(pMap.y, 0)\n    \n    self:setPosition(pMap)\n    \n    self:updateImageDisplay()\nend\n\nfunction BgMap:getCurrentGridValue(mpoint)\n    local row = mpoint.x\n    local col = mpoint.z\n    local relust = 1\n    \n    if (1 < col and col < self.m_gridCol-1 and 1 < row and row < self.m_gridRow-1) then\n        relust = self.m_grid[col][row]\n    end\n    \n    return relust\nend\n\nfunction BgMap:isMapPassageway(node)\n    for i = 1, #self.m_arrPassageway do\n        local mapPassageway = self.m_arrPassageway[i]\n        if (cc.pGetDistance(mapPassageway.point, cc.p(node:getPosition())) <= RADIUS_PASSAGEWAY) then\n            return mapPassageway\n        end\n    end\n    return PortalInformationZero\nend\n\nfunction BgMap:getEnemeyMap()\n    return self.m_arrEnemy\nend\n\nfunction BgMap:addChildPlayerLead(node, bornPoint)\n    local point = self.m_mapBornPoint[math.floor(bornPoint)]\n    point = MapPoint.new(point):getCCPointValue()\n    self:addChildPlayerLead_(node, point)\nend\n\nfunction BgMap:addChildPlayerLead_(node, point)\n    local x, y = self:getPosition()\n    local value = BgMap.getZOrder(cc.p(x, y))  -- z轴\n    self.m_playerLead = node\n    point = MapPoint.new(point)\n    point = point:getCCPointValue()\n    self.m_playerLead:setPosition(point)\n    self:addChild(self.m_playerLead, value)\n    self:updateMap()\nend\n\nfunction BgMap:getShowRect()\n--    local rect = cc.rect(0, 0, 0, 0)\n--    rect.origin = cc.PointSub(cc.p(0, 0), OFF_SIZE)\n--    rect.origin = cc.PointSub(rect.origin, cc.p(self:getPosition()))\n--    local point = cc.PointAdd(cc.p(display.width, display.height), cc.p(OFF_SIZE.x*2, OFF_SIZE.y*2))\n--    rect.size = cc.size(point.x, point.y) \n--    return rect\n    \n    if (not self.m_tmpRect) then\n        self.m_tmpRect = cc.rect(0, 0, 0, 0)\n    end\n        \n    self.m_tmpRect.x = 0 - OFF_SIZE.x\n    self.m_tmpRect.y = 0 - OFF_SIZE.y\n    self.m_tmpRect.x = self.m_tmpRect.x - self:getPositionX()\n    self.m_tmpRect.y = self.m_tmpRect.y - self:getPositionY()\n    self.m_tmpRect.width = display.width + OFF_SIZE.x*2\n    self.m_tmpRect.height = display.height + OFF_SIZE.y*2\n    \n    return self.m_tmpRect\nend\n\nfunction BgMap:getHideRect()\n--    local rect = cc.rect(0, 0, 0, 0)\n--    rect.origin = cc.PointSub(cc.p(0, 0), cc.p(OFF_SIZE.x * 2, OFF_SIZE.y * 2))\n--    rect.origin = cc.PointSub(rect.origin, cc.p(self:getPosition()))\n--    local point = cc.PointAdd(cc.p(display.width, display.height), cc.p(OFF_SIZE.x*4, OFF_SIZE.y*4))\n--    rect.size = cc.size(point.x, point.y) \n--    return rect\n\n    if (not self.m_tmpRect) then\n        self.m_tmpRect = cc.rect(0, 0, 0, 0)\n    end\n\n    self.m_tmpRect.x = 0 - OFF_SIZE.x * 2\n    self.m_tmpRect.y = 0 - OFF_SIZE.y * 2\n    self.m_tmpRect.x = self.m_tmpRect.x - self:getPositionX()\n    self.m_tmpRect.y = self.m_tmpRect.y - self:getPositionY()\n    self.m_tmpRect.width = display.width + OFF_SIZE.x*4\n    self.m_tmpRect.height = display.height + OFF_SIZE.y*4\n    return self.m_tmpRect    \nend\n\nfunction BgMap.getZOrder(point)\n    return (-point.y / 10.0)\nend\n    \nfunction BgMap.getZOrderZero(bgMap)\n    return (-bgMap.m_bgSize.height / 10.0)\nend\n\nfunction BgMap:setDelegate(delegate)\n    self.m_delegate = delegate\nend\n\nfunction BgMap:getMapGrid()\n    return self.m_grid\nend\n\nfunction BgMap:getGridRow()\n    return self.m_gridRow\nend\n\nfunction BgMap:getGridCol()\n    return self.m_gridCol\nend\n\n-- 开启更新地图计时器\nfunction BgMap:setTimer_UpdateMap()\n    self:killTimer_UpdateMap()\n    self.hUpdateMap = scheduler.scheduleGlobal(handler(self, self.updateMap), 0.01)\nend\n\n-- 关闭更新地图计时器\nfunction BgMap:killTimer_UpdateMap()\n    if (self.hUpdateMap) then\n        scheduler.unscheduleGlobal(self.hUpdateMap)\n        self.hUpdateMap = nil\n    end\nend\n\nfunction BgMap:getSmallMap()\n    return self.m_spMap\nend\n\nfunction BgMap:getBgSize()\n    return self.m_bgSize\nend\n\nreturn BgMap"
  },
  {
    "path": "源代码/mir9/src/app/map/BgMapFloorTile.lua",
    "content": "\n-- 背景地图地砖类\nlocal BgMapFloorTile = class(\"BgMapFloorTile\", function()\n    return display.newNode()\nend)\n\nlocal OFF_SIZE = cc.p(128, 128)\n\nfunction BgMapFloorTile:ctor()\n    self.m_fileName = nil\n    self.m_sprite = nil\n    self.m_bIsDisplay = false\nend\n\nfunction BgMapFloorTile:initWithImageView(texture)\n    if (not self.m_sprite) then\n        self.m_sprite = cc.Sprite:createWithTexture(texture)\n        self.m_sprite:setAnchorPoint(cc.p(0, 0))\n        self:addChild(self.m_sprite)\n    end\nend\n\nfunction BgMapFloorTile:displayImageView()\n    if (self.m_bIsDisplay == false) then\n        self.m_bIsDisplay = true\n        display.addImageAsync(self.m_fileName, function(texture)\n            --local texture = cc.Director:getInstance():getTextureCache():getTextureForKey(self.m_fileName)\n            self:initWithImageView(texture)\n        end)\n    end\nend\n\nfunction BgMapFloorTile:hideImageView()\n    if (self.m_bIsDisplay) then\n        self.m_bIsDisplay = false\n        if (self.m_sprite) then\n            self.m_sprite:removeFromParent()\n            self.m_sprite = nil\n        end\n        cc.Director:getInstance():getTextureCache():removeTextureForKey(self.m_fileName)\n    end\nend\n\nfunction BgMapFloorTile:IntelligentDisplay(rcShow, rcHide)\n--    local x, y = self:getPosition()\n--    local point = cc.PointAdd(cc.p(x, y), OFF_SIZE)\n    if (not self.m_tmpPos) then\n        self.m_tmpPos = cc.p(0, 0)\n    end\n    \n    self.m_tmpPos.x, self.m_tmpPos.y = self:getPosition()\n    self.m_tmpPos.x = self.m_tmpPos.x +  OFF_SIZE.x\n    self.m_tmpPos.y = self.m_tmpPos.y +  OFF_SIZE.y\n    \n    if (cc.rectContainsPoint(rcShow, self.m_tmpPos)) then\n        self:displayImageView()\n    end\n    \n    if (not cc.rectContainsPoint(rcHide, self.m_tmpPos)) then\n        self:hideImageView()\n    end\nend\n\nreturn BgMapFloorTile"
  },
  {
    "path": "源代码/mir9/src/app/map/MapPoint.lua",
    "content": "\n-- \nlocal MapPoint = class(\"MapPoint\")\n\nlocal GRID_SIZE = cc.size(60, 32)\n\nfunction MapPoint:ctor(x, z)\n    if (x and z) then\n        self.x = math.floor(x)\n        self.z = math.floor(z)\n    elseif (x) then\n        if type(x) == \"number\" then\n            self.x = math.floor(x / 65536)\n            self.z = math.floor(x % 65536)\n        else\n            self.x = math.floor(x.x/GRID_SIZE.width)\n            self.z = math.floor(x.y/GRID_SIZE.height)\n        end\n    else\n        self.x = 0\n        self.z = 0\n    end\nend\n\nfunction MapPoint:getValue()\n    return self.x * 65536 + self.z\nend\n\nfunction MapPoint:getCCPointValue()\n    local point = cc.p(self.x * GRID_SIZE.width, self.z * GRID_SIZE.height)\n    return cc.pAdd(point, cc.p(GRID_SIZE.width/2, GRID_SIZE.height/2))\nend\n\nfunction MapPoint:getCCSizeValue()\n    return cc.size(self.x * GRID_SIZE.width, self.z * GRID_SIZE.height)\nend\n\n-- 赋值\nfunction MapPoint.set(left, right)\n    left.x = right.x\n    left.z = right.z\n    return left\nend\n\n-- 相加\nfunction MapPoint.add(left, right)\n    return MapPoint.new(left.x + right.x, left.z + right.z)\nend\n\n-- 相减\nfunction MapPoint.sub(left, right)\n    return MapPoint.new(left.x - right.x, left.z - right.z)\nend\n\n-- 负号\nfunction MapPoint.minus(self)\n    return MapPoint.new(-self.x, -self.z)\nend\n\n-- 乘以一个数\nfunction MapPoint.mul(self, a)\n    return MapPoint.new(self.x * a, self.z * a)\nend\n\n-- 除以一个数\nfunction MapPoint.div(self, a)\n    error(a, \"CCPoint division by 0.\");\n    return MapPoint.new(self.x / a, self.z / a)\nend\n\n-- 小于\nfunction MapPoint.less(left, right)\n    local a = left.x * 65536 + left.z\n    local b = right.x * 65536 + right.z\n    return (a < b)\nend\n\n-- 相等\nfunction MapPoint.equals(left, right)\n    local a = left.x * 65536 + left.z\n    local b = right.x * 65536 + right.z\n    return (a == b)\nend\n\n-- 对象值相等\nfunction MapPoint.equalsObj(left, right)\n    return (left.x == right.x and left.z == right.z)\nend\n\nfunction MapPoint:getMapPointVectorForDistance(lenght)\n    local arrMPoint = {}\n    local x = -lenght\n    local z = -lenght\n    while (true) do\n        if (#arrMPoint == 8*lenght) then\n            break\n        end\n        \n        table.insert(arrMPoint, MapPoint.add(self, MapPoint.new(x, z)))\n        \n        if (#arrMPoint <= 2*lenght) then\n            x = x + 1\n        elseif (2*lenght < #arrMPoint and #arrMPoint <= 4*lenght) then\n            z = z + 1\n        elseif (4*lenght < #arrMPoint and #arrMPoint <= 6*lenght) then\n            x = x - 1\n        elseif (6*lenght < #arrMPoint and #arrMPoint < 8*lenght) then\n            z = z - 1\n        end\n    end\n    \n    return arrMPoint\nend\n\nfunction MapPoint.setGridSize(size)\n    GRID_SIZE = size\nend\n\nfunction MapPoint:getLength()\n    return math.floor(math.max(math.abs(self.x), math.abs(self.z)))\nend\n    \nfunction MapPoint:getDistance(mpoint)\n    return math.floor(math.max(math.abs(mpoint.x - self.x), math.abs(mpoint.z - self.z)))\nend\n\n\nreturn MapPoint"
  },
  {
    "path": "源代码/mir9/src/app/map/NpcFigure.lua",
    "content": "local LAlertView = require(\"app.game_ui.LAlertView\")\n\nlocal NpcFigure = class(\"NpcFigure\", function()\n    return display.newSprite()\nend)\n\nfunction NpcFigure:ctor(roleNumber, direction)\n    self.m_npcInfo = nil\n    self.m_direction = direction\n    \n    self.m_sprite = nil\n    self.m_bIsDisplay = false\n    self.m_fAnchorPoint = cc.p(0.5, 3/8.0)\n    self.m_fSpriteRect = cc.rect(80, 64, 50, 96)\n\n    self.m_npcInfo = g_npcInfoSystem:getNpcInfo(roleNumber)\n    self.m_fileName = string.format(\"texture_npc/npc_%u_1_%d.png\", self.m_npcInfo.m_nRID, self.m_direction)\n    self.m_plistName = string.format(\"texture_npc/npc_%u_1_%d.plist\", self.m_npcInfo.m_nRID, self.m_direction)\n    \n    self.m_arrAction = {}\n    \n    self:addNodeEventListener(cc.NODE_TOUCH_EVENT, function(event)\n        if event.name == \"began\" then\n            local bRet = self:onTouchBegan(event)\n            self:setTouchSwallowEnabled(bRet)\n            return bRet\n        elseif event.name == \"moved\" then\n            self:onTouchMoved(event)\n        elseif event.name == \"ended\" then\n            self:onTouchEnded(event)\n        elseif event.name == \"cancel\" then\n            self:onTouchCancelled(event)\n        end\n    end)\n    self:setTouchEnabled(true)\nend\n\nfunction NpcFigure:displayImageView()\n    if (not self.m_bIsDisplay) then\n        self.m_bIsDisplay = true\n        \n        display.addSpriteFrames(self.m_plistName, self.m_fileName, function(texture)\n            self:initWithImageView(texture)\n        end)\n--        display.addImageAsync(self.m_fileName, function(texture)\n--            -- local texture = cc.Director:getInstance():getTextureCache():getTextureForKey(self.m_fileName)\n--            self:initWithImageView(texture)\n--        end)\n    end\nend\n\nfunction NpcFigure:hideImageView()\n    if (self.m_bIsDisplay) then\n        self.m_bIsDisplay = false\n\n        if (self.m_sprite) then\n            self.m_sprite:removeFromParent()\n            self.m_sprite = nil\n        end\n        \n        display.removeSpriteFrameByImageName(self.m_fileName)\n        self.m_arrAction = {}\n    end\nend\n\nfunction NpcFigure:initWithImageView(texture)\n    if (not self.m_sprite) then\n        --cc.SpriteFrameCache:getInstance():addSpriteFrames(self.m_plistName, texture)\n        \n        self.m_sprite = cc.Sprite:create()\n        self.m_sprite:setAnchorPoint(self.m_fAnchorPoint)\n        self:addChild(self.m_sprite)\n        \n        self.m_spriteHigh = cc.Sprite:create()\n        self.m_spriteHigh:setAnchorPoint(self.m_fAnchorPoint)\n        self:addChild(self.m_spriteHigh)\n        \n        self.m_sprite:runAction(self:getActions())\n        self.m_spriteHigh:runAction(self:getActions())\n        \n        self.m_spriteHigh:setVisible(false)\n    end\nend\n\nfunction NpcFigure:IntelligentDisplay(rcShow, rcHide)\n    local ptPos = cc.p(self:getPosition())\n    \n    if (cc.rectContainsPoint(rcShow, ptPos)) then\n        self:displayImageView()\n    end\n    \n    if (not cc.rectContainsPoint(rcHide, ptPos)) then\n        self:hideImageView()\n    end\nend\n\nfunction NpcFigure:getActions()\n    if (#self.m_arrAction == 0) then\n        local flag = 0\n        while (true) do\n            local frameName = string.format(\"npc_%u_1_%d_%02d.png\", self.m_npcInfo.m_nRID, self.m_direction, flag)\n            local frame = cc.SpriteFrameCache:getInstance():getSpriteFrame(frameName)\n            if (not frame) then\n                break\n            end\n            table.insert(self.m_arrAction, frame)\n            flag = flag + 1\n        end        \n    end\n    \n    if (#self.m_arrAction > 0) then\n        local animation = cc.Animation:createWithSpriteFrames(self.m_arrAction, 1 / 5)\n        local animate = cc.Animate:create(animation)\n        local repeatForever = cc.RepeatForever:create(animate)\n        return repeatForever\n    end\n    \n    return nil\nend\n\nfunction NpcFigure:setHighlight()\n    if (self.m_spriteHigh:isVisible() == false) then\n        self.m_spriteHigh:setBlendFunc(gl.DST_COLOR, gl.ONE)\n        \n        self.m_spriteHigh:setVisible(true)\n    end\nend\n\nfunction NpcFigure:setNormal()\n    if (self.m_spriteHigh:isVisible() == true) then        \n        self.m_spriteHigh:setVisible(false)\n    end\nend\n\nfunction NpcFigure:onTouchBegan(event)\n    if (not self.m_sprite) then\n        return false\n    end\n    \n    local point = cc.p(event.x, event.y)\n    point = self.m_sprite:convertToNodeSpace(point)\n    if (not cc.rectContainsPoint(self.m_fSpriteRect, point)) then\n        return false\n    end\n    \n    self:setHighlight()\n    return true\nend\n\nfunction NpcFigure:onTouchMoved(event)\n    if (not cc.rectContainsPoint(self.m_fSpriteRect, cc.p(event.x, event.y))) then\n        self:setNormal()\n    else\n        self:setHighlight()\n    end\nend\n\nfunction NpcFigure:onTouchEnded(event)\n    self:setNormal()\n    \n    local alertView = LAlertView.new(\"\", self.m_npcInfo.m_sSentence)\n    alertView:show(handler(self, self.alertCallBack))\nend\n\nfunction NpcFigure:onTouchCancelled(event)\n\nend\n\nfunction NpcFigure:alertCallBack(nBtnID)\n    if (nBtnID == 0) then\n        \n    end\nend\n\nreturn NpcFigure"
  },
  {
    "path": "源代码/mir9/src/app/map/NpcInfo.lua",
    "content": "-- NPC信息类\nlocal NpcInfo = class(\"NpcInfo\")\n\nfunction NpcInfo:ctor(json_value)\n    self.m_nID = json_value[\"ID\"]\n    self.m_nSID = json_value[\"SID\"]\n    self.m_nQID = json_value[\"QID\"]\n    self.m_nRID = json_value[\"RID\"]\n    self.m_sSentence = json_value[\"Sentence\"]\n    self.m_sName = json_value[\"Name\"]\nend\n\nreturn NpcInfo"
  },
  {
    "path": "源代码/mir9/src/app/map/NpcInfoSystem.lua",
    "content": "local cjson = require(\"cjson\")\nlocal NpcInfo = require(\"app.map.NpcInfo\")\n\n-- NPC信息系统类\nlocal NpcInfoSystem = class(\"NpcInfoSystem\")\n\nfunction NpcInfoSystem:ctor()\n    self.m_mapNpcInfo = {}\n    \n    local json_str = cc.FileUtils:getInstance():getStringFromFile(\"game_data/npc_info.json\")\n    local json_value = cjson.decode(json_str)\n\n    for i = 1, #json_value do\n        self:addNpcInfo(json_value[i])\n    end\nend\n\nfunction NpcInfoSystem:addNpcInfo(json_value)\n    local npcInfo = NpcInfo.new(json_value)\n    self.m_mapNpcInfo[npcInfo.m_nID] = npcInfo\nend\n\nfunction NpcInfoSystem:getNpcInfo(nNpcID)\n    return self.m_mapNpcInfo[nNpcID]\nend\n\nreturn NpcInfoSystem"
  },
  {
    "path": "源代码/mir9/src/app/map/PathAStar.lua",
    "content": "local MapPoint = require(\"app.map.MapPoint\")\nlocal AStarSearch = require(\"app.map.AStarSearch\") \n\nlocal MapSearchNode = class(\"MapSearchNode\")\nlocal AStarPoint = class(\"AStarPoint\")\nlocal PathAStar = class(\"PathAStar\")\n\nlocal _roninAStar = nil\nlocal DISORDER = 1\n\nfunction MapSearchNode:ctor(x, y)\n    if (x and y) then\n        self.x = x\n        self.y = y\n    else\n        self.x = 0\n        self.y = 0\n    end\nend\n\nfunction MapSearchNode:isSameState(node)\n    -- same state in a maze search is simply when (x,y) are the same\n    if((self.x == node.x) and\n        (self.y == node.y)) then\n        return true\n    else\n        return false\n    end\nend\n\nfunction MapSearchNode:printNodeInfo()\n    -- cout << \"Node position : (\" << x << \", \" << y << \")\" << endl;\nend\n\n-- Here's the heuristic function that estimates the distance from a Node\n-- to the Goal. \nfunction MapSearchNode:goalDistanceEstimate(node)\n    local xd = math.abs(self.x - node.x)\n    local yd = math.abs(self.y - node.y)\n    return xd + yd\nend\n\nfunction MapSearchNode:isGoal(node)\n    if((self.x == node.x) and\n        (self.y == node.y)) then\n        return true\n    end\n\n    return false\nend\n\n-- This generates the successors to the given Node. It uses a helper function called\n-- AddSuccessor to give the successors to the AStar class. The A* specific initialisation\n-- is done for each node internally, so here you just set the state information that\n-- is specific to the application\nfunction MapSearchNode:getSuccessors(astarsearch, parent_node)\n    local parent_x = -1 \n    local parent_y = -1\n\n    if (parent_node) then\n        parent_x = parent_node.x\n        parent_y = parent_node.y\n    end\n    \n    local NewNode\n\n    -- push each possible move except allowing the search to go backwards\n\n    -- 左\n    if ((PathAStar.getMap(self.x-1, self.y) ~= DISORDER) and\n        not ((parent_x == self.x-1) and (parent_y == self.y))) then \n        NewNode = MapSearchNode.new(self.x-1, self.y)\n        astarsearch:addSuccessor(NewNode)\n    end\n\n    -- 左上\n    if ((PathAStar.getMap(self.x-1, self.y-1) ~= DISORDER) and\n        not ((parent_x == self.x-1) and (parent_y == self.y-1))) then\n        NewNode = MapSearchNode.new(self.x-1, self.y-1)\n        astarsearch:addSuccessor(NewNode)\n    end\n\n    -- 上\n    if ((PathAStar.getMap(self.x, self.y-1) ~= DISORDER) and \n        not ((parent_x == self.x) and (parent_y == self.y-1))) then\n        NewNode = MapSearchNode.new(self.x, self.y-1)\n        astarsearch:addSuccessor(NewNode)\n    end\n\n    -- 右上\n    if ((PathAStar.getMap(self.x+1, self.y-1) ~= DISORDER) and\n        not ((parent_x == self.x+1) and (parent_y == self.y-1))) then\n        NewNode = MapSearchNode.new(self.x+1, self.y-1)\n        astarsearch:addSuccessor(NewNode)\n    end\n\n    -- 右\n    if ((PathAStar.getMap(self.x+1, self.y) ~= DISORDER) and \n        not ((parent_x == self.x+1) and (parent_y == self.y))) then\n        NewNode = MapSearchNode.new(self.x+1, self.y)\n        astarsearch:addSuccessor(NewNode)\n    end\n\n    -- 右下\n    if ((PathAStar.getMap(self.x+1, self.y+1) ~= DISORDER) and \n        not ((parent_x == self.x+1) and (parent_y == self.y+1))) then\n        NewNode = MapSearchNode.new(self.x+1, self.y+1)\n        astarsearch:addSuccessor(NewNode)\n    end\n    \n    -- 下\n    if ((PathAStar.getMap(self.x, self.y+1) ~= DISORDER) and\n        not ((parent_x == self.x) and (parent_y == self.y+1))) then\n        NewNode = MapSearchNode.new(self.x, self.y+1)\n        astarsearch:addSuccessor(NewNode)\n    end\n\n    -- 左下\n    if ((PathAStar.getMap(self.x-1, self.y+1) ~= DISORDER) and \n        not ((parent_x == self.x-1) and (parent_y == self.y+1))) then\n        NewNode = MapSearchNode.new(self.x-1, self.y+1)\n        astarsearch:addSuccessor(NewNode)\n    end\n    \n    return true\nend\n\n-- given this node, what does it cost to move to successor. In the case\n-- of our map the answer is the map terrain value at this node since that is \n-- conceptually where we're moving\nfunction MapSearchNode:getCost(node)\n    return PathAStar.getMap(self.x, self.y)\nend\n\nfunction AStarPoint:ctor(x, y)\n    self.x = x\n    self.y = y\nend\n\nfunction PathAStar:ctor()\nend\n\nfunction PathAStar.getMap(x, y)\n    if (0 > x or x >= _roninAStar.m_nRow or 0 > y or y >= _roninAStar.m_nCol) then\n        return 1\n    end\n    \n--    if (_roninAStar.m_nMap[y*_roninAStar.m_nRow+x+1] == 1) then\n--        return 1\n--    end\n    \n    if (_roninAStar.m_nMap[y][x] == 1) then\n        return 1\n    end\n    \n    if (g_mainScene:getMapPoint(MapPoint.new(x * 65536 + y))) then\n        return 1\n    end\n    \n    return 0\nend\n\nfunction PathAStar:setData(nRow, nCol, map, nMaxNodes)\n    self.m_nMap = map\n    self.m_nRow = nRow\n    self.m_nCol = nCol\n    self.m_nMaxNodes = nMaxNodes\nend\n\nfunction PathAStar.findPathByAStar(map, nRow, nCol, nMaxNodes, beginMPoint, endMPoint)\n    if (not _roninAStar) then\n        _roninAStar = PathAStar.new()\n    end\n    _roninAStar:setData(nRow, nCol, map, nMaxNodes)\n    \n    local dequeMPoint = {}\n    local dequeAStarPt = _roninAStar:findPathByAStarInternal(beginMPoint, endMPoint)\n\n    if (#dequeAStarPt <= 1) then\n        return dequeMPoint\n    end\n\n    for k, v in ipairs(dequeAStarPt) do\n        table.insert(dequeMPoint, MapPoint.new(v.x, v.y))\n    end\n\n    return dequeMPoint\nend\n\nfunction PathAStar:findPathByAStarInternal(beginMPoint, endMPoint)\n    local dequeAStarPt = {}\n\n    local filterEnd = self:getFilterEndPoint(beginMPoint, endMPoint)\n    \n    local astarsearch = AStarSearch.new(self.m_nMaxNodes)\n\n    local SearchCount = 0\n\n    local NumSearches = 1\n\n    while (SearchCount < NumSearches) do\n        \n        -- Create a start state\n        local nodeStart = MapSearchNode.new()\n        nodeStart.x = beginMPoint.x\n        nodeStart.y = beginMPoint.z\n\n        -- Define the goal state\n        local nodeEnd = MapSearchNode.new()\n        nodeEnd.x = filterEnd.x\n        nodeEnd.y = filterEnd.z\n        \n        -- Set Start and goal states\n        \n        astarsearch:setStartAndGoalStates(nodeStart, nodeEnd)\n\n        local SearchState\n        local SearchSteps = 0\n\n        repeat\n            SearchState = astarsearch:searchStep()\n            SearchSteps = SearchSteps + 1\n        until (not (SearchState == SEARCH_STATE_SEARCHING))\n        \n        if (SearchState == SEARCH_STATE_SUCCEEDED) then\n            local node = astarsearch:getSolutionStart()\n                \n            local steps = 0\n\n            node:printNodeInfo()\n\n            while (true) do\n                table.insert(dequeAStarPt, AStarPoint.new(node.x, node.y))\n                node = astarsearch:getSolutionNext()\n                    \n                if (not node) then\n                    break\n                end\n\n                node:printNodeInfo()\n                steps = steps + 1\n            end\n            \n            -- Once you're done with the solution you can free the nodes up\n            astarsearch:freeSolutionNodes()\n        elseif(SearchState == SEARCH_STATE_FAILED) then\n        \n        end\n\n        -- Display the number of loops the search went through\n\n        SearchCount = SearchCount + 1\n\n        astarsearch:ensureMemoryFreed()\n    end\n    \n    return dequeAStarPt\nend\n\nfunction PathAStar:getFilterEndPoint(beginMPoint, endMPoint)\n    local relust = endMPoint\n\n    if (PathAStar.getMap(endMPoint.x, endMPoint.z) ~= DISORDER) then\n        return relust\n    end\n        \n    local count = beginMPoint:getDistance(endMPoint) + 10\n    for i = 1, count do\n        local arrMPoint = endMPoint:getMapPointVectorForDistance(i)\n\n        local lenght = 0xffff\n        for k, v in ipairs(arrMPoint) do\n            local mpoint = v\n            if (not (PathAStar.getMap(mpoint.x, mpoint.z) == DISORDER or\n                mpoint:getDistance(beginMPoint) >= lenght or\n                mpoint:equalsObj(beginMPoint))) then\n                relust = mpoint\n                lenght = mpoint:getDistance(beginMPoint) \n            end\n        end\n        \n        if (not relust:equalsObj(endMPoint)) then\n            break\n        end\n    end\n\n    return relust\nend\n\nreturn PathAStar"
  },
  {
    "path": "源代码/mir9/src/app/map/PortalSprite.lua",
    "content": "-- 传送门精灵类\nlocal PortalSprite = class(\"PortalSprite\", function()\n    return display.newSprite()\nend)\n\nfunction PortalSprite:ctor(path)\n    self.m_path = path\n    self.m_sprite = nil\n    \n    display.addSpriteFrames(\"texture_set/portal.plist\", \"texture_set/portal.png\")\n    self:init()\nend\n\nfunction PortalSprite:init()\n    local size = cc.size(150, 60)\n    self:setContentSize(size)\n    \n    self.m_sprite = cc.Sprite:create()\n    self.m_sprite:setAnchorPoint(0.5, 0.3)\n    self.m_sprite:setPosition(size.width/2, size.height/2)\n    self:addChild(self.m_sprite)\n\n    self:playAnimate()\n    \n    return true\nend\n\n-- 播放传送点动画\nfunction PortalSprite:playAnimate()\n    local i = 1\n    local array = {}\n    while (true) do\n        local path = string.format(\"%s%04d.png\", self.m_path, i)\n        local spriteFrame = cc.SpriteFrameCache:getInstance():getSpriteFrame(path)\n        if (not spriteFrame) then\n            break\n        end\n        table.insert(array, spriteFrame)\n        i = i + 1\n    end\n    local animation = cc.Animation:createWithSpriteFrames(array, 1 / 9)\n    local animate = cc.Animate:create(animation)\n    self.m_sprite:runAction(cc.RepeatForever:create(animate))\nend\n\nreturn PortalSprite"
  },
  {
    "path": "源代码/mir9/src/app/prop_system/PropIconShow.lua",
    "content": "-- 属性图标显示类\nlocal PropIconShow = class(\"PropIconShow\", function(propInfo)\n    local path = string.format(\"prop_icon/propIcon_%u.png\", propInfo.m_nIconNum)\n    return display.newSprite(path)\nend)\n\nfunction PropIconShow:ctor(propInfo)\n    self.m_propInfo = propInfo\n    self.m_path = string.format(\"prop_icon/propIcon_%u.png\", self.m_propInfo.m_nIconNum)\n--    local texture = cc.Director:getInstance():getTextureCache():addImage(self.m_path)\n--    self:setTexture(texture)\nend\n\nreturn PropIconShow"
  },
  {
    "path": "源代码/mir9/src/app/prop_system/PropInfo.lua",
    "content": "-- 属性信息类\nlocal PropInfo = class(\"PropInfo\")\n\nfunction PropInfo:ctor(json_value)    \n    self.m_nNum = json_value[\"ID\"]\n    self.m_nIconNum = json_value[\"Icon\"]\n    self.m_nAvatarNum = json_value[\"AvatarID\"]\n    self.m_strName = json_value[\"Name\"]\n    self.m_nType = json_value[\"Type\"]\n    self.m_strDepict = json_value[\"Depict\"]\n    self.m_levelRequirements = json_value[\"Nlevel\"]\n    self.m_attackRequirements = json_value[\"Nattack\"]\n    self.m_magicRequirements = json_value[\"Nmaige\"]\n    self.m_taoismRequirements = json_value[\"Ntaoism\"]\n    self.m_gender = json_value[\"Gender\"]\n    self.m_lasting = json_value[\"Lasting\"]\n    self.m_weight = json_value[\"Weight\"]\n    self.m_specialRequirements = json_value[\"Nspecial\"]\n    self.m_coin = json_value[\"Coin\"]\n    self.m_accurate = json_value[\"Accurate\"]\n    self.m_dodge = json_value[\"Dodge\"]\n    self.m_magicDodge = json_value[\"Mdodge\"]\n    self.m_defenseMax = json_value[\"MaxDefense\"]\n    self.m_defenseMin = json_value[\"MinDefense\"]\n    self.m_magicDefenseMax = json_value[\"MaxMDefense\"]\n    self.m_magicDefenseMin = json_value[\"MinMDefense\"]\n    self.m_attackMax = json_value[\"MaxAttack\"]\n    self.m_attackMin = json_value[\"MinAttack\"]\n    self.m_magicMax = json_value[\"MaxMaige\"]\n    self.m_magicMin = json_value[\"MinMaige\"]\n    self.m_taoismMax = json_value[\"MaxTaoism\"]\n    self.m_taoismMin = json_value[\"MinTaoism\"]\n    self.m_lucky = json_value[\"Lucky\"]\n    self.m_SE = json_value[\"SE\"]\n    self.m_JS = json_value[\"JS\"]\nend\n\nreturn PropInfo"
  },
  {
    "path": "源代码/mir9/src/app/prop_system/PropSystem.lua",
    "content": "local cjson = require(\"cjson\")\nlocal PropInfo = require(\"app.prop_system.PropInfo\")\n\n-- 属性系统类\nlocal PropSystem = class(\"PropSystem\")\n\n-- 构造函数\nfunction PropSystem:ctor()\n    self.m_mapProp = {}\n    \n    local json_str = cc.FileUtils:getInstance():getStringFromFile(\"game_data/prop_info.json\")\n    local json_value = cjson.decode(json_str)\n\n    for i = 1, #json_value do\n        self:addPropInfo(json_value[i])\n    end\nend\n\nfunction PropSystem:addPropInfo(json_value)\n    local propInfo = PropInfo.new(json_value)\n    self.m_mapProp[propInfo.m_nNum] = propInfo\nend\n\nfunction PropSystem:getPropInfo(nPropID)\n    return self.m_mapProp[nPropID]\nend\n\nreturn PropSystem"
  },
  {
    "path": "源代码/mir9/src/app/scenes/GameLoading.lua",
    "content": "local scheduler = require(\"framework.scheduler\")\n\nlocal GameLoading = class(\"GameLoading\", function()\n    return display.newScene(\"GameLoading\")\nend)\n\nfunction GameLoading:ctor()\n--    self.m_mapID = mapID\n--    self.m_born = born\n    self:init()\nend\n\nfunction GameLoading:onEnter()\n--    if (not g_mainScene) then\n--        self.hInitGameScene = scheduler.performWithDelayGlobal(handler(self, self.initGameScene), 0.5)\n--    end\n    \n    --self.hUpdateBgMap = scheduler.performWithDelayGlobal(handler(self, self.updateBgMap), 1.0)\nend\n\nfunction GameLoading:onExit()\n    cc.Director:getInstance():getTextureCache():removeAllTextures()\n--    if (self.hInitGameScene) then\n--        scheduler.unscheduleGlobal(self.hInitGameScene)\n--        self.hInitGameScene = nil\n--    end\n--    \n--    if (self.hUpdateBgMap) then\n--        scheduler.unscheduleGlobal(self.hUpdateBgMap)\n--        self.hUpdateBgMap = nil\n--    end\nend\n\nfunction GameLoading.runGameLoading(mapID, born)\n    GameLoading.m_mapID = mapID\n    GameLoading.m_born = born\n    app:enterScene(\"GameLoading\")\n--    if (not g_gameLoading) then\n--        g_gameLoading = GameLoading.new(mapID, born)\n--        CCDirector:sharedDirector():getRunningScene():addChild(g_gameLoading, 100)\n--        g_gameLoading:release()\n--    end\n--    return g_gameLoading\nend\n\nfunction GameLoading:init()    \n    self:setAnchorPoint(cc.p(0, 0))\n    \n    self.m_sprite = display.newSprite(\"map/loading.jpg\")\n    self.m_sprite:setPosition(display.cx, display.cy)\n    self:addChild(self.m_sprite, -1)\n    \n    local ttf = cc.LabelTTF:create(\"加载中……\", \"Arial\", 30)\n    ttf:setPosition(display.width-70, 20)\n    self:addChild(ttf)\n    \n--    if (g_mainScene and g_mainScene:getCurrBgMap()) then\n--        self:setOpacity(0)\n--        local fadeIn = cc.FadeIn:create(0.5)\n--        self:runAction(fadeIn)\n--    end\n    \n    self.hInitGameScene = scheduler.performWithDelayGlobal(handler(self, self.initGameScene), 0.5)\n    \n    return true\nend\n\nfunction GameLoading:initGameScene(fDelay)\n    -- CCDirector:sharedDirector():getRunningScene():addChild(MainScene.new())\n    app:enterScene(\"MainScene\", nil, \"fade\", 0.5)\nend\n\n--function GameLoading:updateBgMap(fDelay)\n--    CCTextureCache:sharedTextureCache():removeUnusedTextures()\n--    g_mainScene:replaceBgMap(self.m_mapID, self.m_born)\n--    self:updateFinish()\n--end\n--\n--function GameLoading:updateFinish()\n--    local fadeOut = cc.FadeOut:create(0.3)\n--    local callFunc = cc.CallFunc:create(handler(self, self.removeFromParent))\n--    local array = CCArray:create()\n--    array:addObject(fadeOut)\n--    array:addObject(callFunc)\n--    local sequence = cc.Sequence:create(array)\n--    self:runAction(sequence)\n--end\n\nreturn GameLoading"
  },
  {
    "path": "源代码/mir9/src/app/scenes/LoginScene.lua",
    "content": "local LoginScene = class(\"LoginScene\", function()\n    return display.newScene(\"LoginScene\")\nend)\n\nfunction LoginScene:ctor()\n    self.m_edtAccount = nil\n    self.m_edtPwd = nil\n    self:init()\nend\n\nfunction LoginScene:init()\n--#if (CC_TARGET_PLATFORM==CC_PLATFORM_ANDROID)\n--\tthis->setKeypadEnabled(true);\n--#endif\n    \n\n    local layerColor = cc.LayerColor:create(cc.c4f(200, 200, 200, 200), display.width, display.height)\n    self:addChild(layerColor)\n\n    local account = \"请输入您的账号\"\n    local pwd = \"请输入您的密码\"\n    \n    local szEditBox = cc.size(360, 50)\n    local ptEditBox = cc.pAdd(cc.p(display.cx, display.cy), cc.p(0, 100))\n    \n    local editBox = cc.ui.UIInput.new({\n        image = \"EditBoxBg.png\",\n        size = szEditBox,\n        x = ptEditBox.x,\n        y = ptEditBox.y,\n        listener = function(event, editbox)\n            if event == \"began\" then\n                self:onEditBoxBegan(editbox)\n            elseif event == \"ended\" then\n                self:onEditBoxEnded(editbox)\n            elseif event == \"return\" then\n                self:onEditBoxReturn(editbox)\n            elseif event == \"changed\" then\n                self:onEditBoxChanged(editbox)\n            else\n                printf(\"EditBox event %s\", tostring(event))\n            end\n        end\n    })\n    editBox:setPlaceHolder(account)\n    editBox:setPlaceholderFontColor(cc.c3b(0, 0, 0))\n    editBox:setMaxLength(12)\n    editBox:setInputMode(cc.EDITBOX_INPUT_MODE_ANY)\n    editBox:setReturnType(cc.KEYBOARD_RETURNTYPE_DONE)\n    self:addChild(editBox)\n    self.m_edtAccount = editBox\n    \n    ptEditBox = cc.pAdd(cc.p(display.cx, display.cy), cc.p(0, 30))\n\n    editBox = cc.ui.UIInput.new({\n        image = \"EditBoxBg.png\",\n        size = szEditBox,\n        x = ptEditBox.x,\n        y = ptEditBox.y,\n        listener = function(event, editbox)\n            if event == \"began\" then\n                self:onEditBoxBegan(editbox)\n            elseif event == \"ended\" then\n                self:onEditBoxEnded(editbox)\n            elseif event == \"return\" then\n                self:onEditBoxReturn(editbox)\n            elseif event == \"changed\" then\n                self:onEditBoxChanged(editbox)\n            else\n                printf(\"EditBox event %s\", tostring(event))\n            end\n        end\n    })\n    editBox:setPlaceHolder(pwd)\n    editBox:setPlaceholderFontColor(cc.c3b(0, 0, 0))\n    editBox:setMaxLength(12)\n    editBox:setInputMode(cc.EDITBOX_INPUT_MODE_ANY)\n    editBox:setReturnType(cc.KEYBOARD_RETURNTYPE_DONE)\n    editBox:setInputFlag(cc.EDITBOX_INPUT_FLAG_PASSWORD)\n    self:addChild(editBox)\n    self.m_edtPwd = editBox\n    \n    local accountBg = cc.LayerColor:create(cc.c4f(100, 100, 200, 200), szEditBox.width, szEditBox.height)\n    accountBg:setPosition(cc.pSub(cc.p(self.m_edtAccount:getPosition()), cc.p(self.m_edtAccount:getContentSize().width/2, self.m_edtAccount:getContentSize().height/2)))\n    self:addChild(accountBg, -1)\n    \n    local cipherBg = cc.LayerColor:create(cc.c4f(100, 100, 200, 200), szEditBox.width, szEditBox.height)\n    cipherBg:setPosition(cc.pSub(cc.p(self.m_edtPwd:getPosition()), cc.p(self.m_edtPwd:getContentSize().width/2, self.m_edtPwd:getContentSize().height/2)))\n    self:addChild(cipherBg, -1)\n\n    local PUSH_BUTTON_IMAGES = {\n        normal = nil,\n        pressed = nil,\n        disabled = nil,\n    }\n    \n    local btnLogin = cc.ui.UIPushButton.new(PUSH_BUTTON_IMAGES, {scale9 = true})\n    btnLogin:setAnchorPoint(0.5, 0.5)\n    btnLogin:setPosition(cc.pSub(cc.p(display.cx, display.cy), cc.p(80, 60)))\n    btnLogin:setButtonLabel(\"normal\", cc.ui.UILabel.new({\n        UILabelType = 2,\n        fontName = \"Arial\",\n        text = \"登陆\",\n        size = 50\n    }))\n    btnLogin:onButtonClicked(handler(self, self.onBtn_Login))\n    self:addChild(btnLogin)\n    \n    local btnReg = cc.ui.UIPushButton.new(PUSH_BUTTON_IMAGES, {scale9 = true})\n    btnReg:setAnchorPoint(0.5, 0.5)\n    btnReg:setPosition(cc.pSub(cc.p(display.cx, display.cy), cc.p(-80, 60)))\n    btnReg:setButtonLabel(\"normal\", cc.ui.UILabel.new({\n        UILabelType = 2,\n        fontName = \"Arial\",\n        text = \"注册\",\n        size = 50\n    }))\n    btnReg:onButtonClicked(handler(self, self.onBtn_Register))\n    self:addChild(btnReg)\n        \n    return true\nend\n\n-- 登陆按钮\nfunction LoginScene:onBtn_Login(event)\n    self:joinGame()\nend\n\n-- 注册按钮\nfunction LoginScene:onBtn_Register(event)\n    for i = 0, 7 do\n        local angle = i * 45 * math.pi / 180\n    end\nend\n\nfunction LoginScene:joinGame()\n    app:enterScene(\"RoleSelScene\")\nend\n\nfunction LoginScene:onEditBoxBegan(editbox)\n    printf(\"editBox1 event began : text = %s\", editbox:getText())\nend\n\nfunction LoginScene:onEditBoxEnded(editbox)\n    printf(\"editBox1 event ended : %s\", editbox:getText())\nend\n\nfunction LoginScene:onEditBoxReturn(editbox)\n    printf(\"editBox1 event return : %s\", editbox:getText())\nend\n\nfunction LoginScene:onEditBoxChanged(editbox)\n    printf(\"editBox1 event changed : %s\", editbox:getText())\nend\n\n\nfunction LoginScene:keyBackClicked()\n    \nend\n\nfunction LoginScene:keyMenuClicked()\n\nend\n\nreturn LoginScene"
  },
  {
    "path": "源代码/mir9/src/app/scenes/MainScene.lua",
    "content": "local scheduler = require(\"framework.scheduler\")\nlocal AttackSkillSystem = require(\"app.skill_system.AttackSkillSystem\")\nlocal NpcInfoSystem = require(\"app.map.NpcInfoSystem\")\nlocal PropSystem = require(\"app.prop_system.PropSystem\")\nlocal MapPoint = require(\"app.map.MapPoint\")\nlocal BgMap = require(\"app.map.BgMap\")\nlocal Player = require(\"app.figure.Player\")\nlocal Enemy = require(\"app.figure.Enemy\")\nlocal TextureController = require(\"app.figure.TextureController\")\nlocal PathAStar = require(\"app.map.PathAStar\")\nlocal CCTouchMouse = require(\"app.game_ui.CCTouchMouse\")\nlocal GameInfoUIController = require(\"app.game_ui.GameInfoUIController\")\nlocal GameLoading = require(\"app.scenes.GameLoading\")\n\nlocal MainScene = class(\"MainScene\", function()\n    return display.newScene(\"MainScene\")\nend)\n\n    \nfunction MainScene:ctor()\n--    ui.newTTFLabel({text = \"Hello, World\", size = 64, align = ui.TEXT_ALIGN_CENTER})\n--        :pos(display.cx, display.cy)\n--        :addTo(self)\n\n    self.m_ptPlayerDirection = cc.p(0, 0) \n    self.m_touchMouse = nil\n    self.m_bTouchProtected = false\n    self.m_bIsPlayerMoveActions = false \n    self.m_bgMap = nil\n    self.m_gameInfoUIController = nil\n    self.m_mapEnemy = {}\n    self.m_mapOtherPlayer = {}\n    self.m_mapMPoint = {}\n    self.m_waitReincarnationEnemy = nil\n    self.m_mapProp = {}\n    self.m_enemyDictionary = {}\n    \n    self:init()\nend\n\nfunction MainScene:onEnter()\n    self.hPlayerMovement = scheduler.scheduleGlobal(handler(self, self.playerMovement), 0.5)\nend\n\nfunction MainScene:onExit()\n    if (self.hPlayerMovement) then\n        scheduler.unscheduleGlobal(self.hPlayerMovement)\n        self.hPlayerMovement = nil\n    end\nend\n\nfunction MainScene:init()\n    g_mainScene = self\n    \n    self.m_mapPoint = {}\n    self.m_bgMap = nil\n\n    display.addSpriteFrames(\"texture_set/blood_return.plist\", \"texture_set/blood_return.png\")\n\n    g_attackSkillSystem = AttackSkillSystem.new()\n    g_npcInfoSystem = NpcInfoSystem.new()\n    g_propSystem = PropSystem.new()\n    \n    g_player = Player.new()\n    g_player:retain()\n    \n    -- create touch layer\n    self.layer = display.newLayer()\n    self.layer:addNodeEventListener(cc.NODE_TOUCH_EVENT, function(event)\n        if event.name == \"began\" then\n            return self:onTouchBegan(event)\n        elseif event.name == \"moved\" then\n            self:onTouchMoved(event)\n        elseif event.name == \"ended\" then\n            self:onTouchEnded(event)\n        elseif event.name == \"cancel\" then\n            self:onTouchCancelled(event)\n        end\n    end)\n    self:addChild(self.layer, -10000)\n\n    self.layer:setTouchEnabled(true)\n        \n    self.m_spSel = display.newSprite(\"ui/tray_self.png\")\n    self.m_spSel:retain()\n    \n    self.m_touchMouse = CCTouchMouse.new()\n    self.m_touchMouse:retain()\n    \n    self:replaceBgMap(GameLoading.m_mapID, GameLoading.m_born)\n    \n    --self:replaceBgMap(200, 1)\n    --self:replaceBgMap(100, 4)\n    \n    self.m_gameInfoUIController = GameInfoUIController.new()\n    self:addChild(self.m_gameInfoUIController)\n\n    return true\nend\n\nfunction MainScene:replaceBgMap(nMapID, nBorn)\n    self.m_mapMPoint = {}\n    \n    if (self.m_bgMap) then\n        self.m_mapMPoint = {}\n        self.m_bgMap:unloadMap()\n        self.m_bgMap:removeFromParent()\n    end\n    \n    --g_player = nil\n    --g_player = Player.new()\n    \n    local player = g_player\n    player:stand()\n    \n    self.m_enemyDictionary = {}\n--    m_otherDictionary->removeAllObjects();\n    \n    local bgMap = BgMap.new()\n    self:setCurrBgMap(bgMap)\n    bgMap:loadMap(nMapID)\n    bgMap:setDelegate(self)\n    self:addChild(bgMap, -1)\n    bgMap:addChildPlayerLead(player, nBorn)\n    self.m_touchMouse:setPosition(-100, -100)\n    bgMap:addChild(self.m_touchMouse, BgMap.getZOrderZero(bgMap))\n    self.m_waitReincarnationEnemy = bgMap:getEnemeyMap()\n    \n    self.m_nEnemyID = 1000\n    for i = 1, #self.m_waitReincarnationEnemy do\n        local t = self.m_waitReincarnationEnemy[i]\n        self:addEnemy(t.key, t.mpoint, self.m_nEnemyID)\n        self.m_nEnemyID = self.m_nEnemyID + 1\n    end\n    \n    self.m_waitReincarnationEnemy = {}\nend\n\nfunction MainScene:setCurrBgMap(bgMap)\n    self.m_bgMap = bgMap\nend\n\nfunction MainScene:getCurrBgMap()\n    return self.m_bgMap\nend\n    \n-- 脱离战斗\nfunction MainScene:OutOfCombat()\n    self:showSelected(nil)\n    self.m_gameInfoUIController:getOperationMenu():cancelHangUP()\nend\n\nfunction MainScene:isPointValid(mpoint)\n    if (self.m_bgMap:getCurrentGridValue(mpoint) == 1) then\n        return false\n    end\n    \n    if (self:getMapPoint(mpoint)) then\n        return false\n    end\n    \n    return true\nend\n\nfunction MainScene:touchProtected()\n    if (self.m_bTouchProtected == false) then\n        return\n    end\n        \n    self:stopActionByTag(0xff99)\n    self.m_bTouchProtected = true\n    local delayTime = cc.DelayTime:create(0.5)\n    local callFunc = cc.CallFunc:create(handler(self, self.untouchProtected))\n    local sequence = cc.Sequence:create(delayTime, callFunc)\n    sequence:setTag(0xff99)\n    self:runAction(sequence)\nend\n\nfunction MainScene:untouchProtected()\n    self.m_bTouchProtected = false\nend\n\nfunction MainScene:updateImageDisplay(rcShow, rcHide)\n    for key, enemy in pairs(self.m_enemyDictionary) do\n        if (cc.rectContainsPoint(rcShow, cc.p(enemy:getPosition()))) then\n            enemy:showFigure()\n        end\n        if (not cc.rectContainsPoint(rcHide, cc.p(enemy:getPosition()))) then\n            enemy:hideFigure()\n        end\n    end\n    \n--    CCArray* otherPlayerKeys = m_otherDictionary->allKeys();\n--    if (otherPlayerKeys)\n--    {\n--        for (unsigned int i=0; i<otherPlayerKeys->count(); i++)\n--        {\n--            int key = ((CCInteger*)otherPlayerKeys->objectAtIndex(i))->getValue();\n--            OtherPlayer* otherPlayer = (OtherPlayer*)m_otherDictionary->objectForKey(key);\n--            if (showRect.containsPoint(otherPlayer->getPosition()))\n--            {\n--                otherPlayer->showFigure();\n--            }\n--            if (!hideRect.containsPoint(otherPlayer->getPosition()))\n--            {\n--                otherPlayer->hideFigure();\n--            }\n--        }\n--    }\nend\n\nfunction MainScene:insterMapPoint(monomer, mpoint)\n    self.m_mapMPoint[monomer] = mpoint:getValue()\nend\n\nfunction MainScene:eraseMapPoint(monomer)\n    self.m_mapMPoint[monomer] = nil\nend\n\nfunction MainScene:getMapPoint(mpoint)\n    local bRet = false\n    local value = mpoint:getValue()\n    \n    for k, v in pairs(self.m_mapMPoint) do\n        if (v == value) then\n            bRet = true\n            break\n        end\n    end\n    \n    return bRet\nend\n\nfunction MainScene:insterMapPointForProp(var, mpoint)\n    local value = mpoint:getValue()\n    if (not self.m_mapProp[value]) then\n        return false\n    end\n        \n    self.m_mapProp[value] = var\n    return true\nend\n\nfunction MainScene:eraseMapPointForProp(mpoint)\n    self.m_mapProp[mpoint:getValue()] = nil\nend\n\nfunction MainScene:getMapPointForProp(mpoint)\n    return self.m_mapProp[mpoint:getValue()]\nend\n\nfunction MainScene:getPath(beginMPoint, endMPoint)\n    local dequeMPoint = PathAStar.findPathByAStar(\n        self.m_bgMap:getMapGrid(),\n        self.m_bgMap:getGridRow(),\n        self.m_bgMap:getGridCol(),\n        4096, beginMPoint, endMPoint)\n\n    local relust = {}\n    \n    local i = 1\n    local endIndex = (#dequeMPoint) + 1\n    \n    while (i ~= endIndex) do\n        if (i + 1 == endIndex) then\n            table.insert(relust, dequeMPoint[i])\n            break\n        end\n        \n        local p1 = dequeMPoint[i]\n        local p2 = dequeMPoint[i+1]\n        \n        if (#relust > 0 and MapPoint.equals(MapPoint.mul(MapPoint.sub(p1, relust[#relust]), 2), MapPoint.sub(p2, relust[#relust]))) then\n            table.insert(relust, p2)\n            i = i + 2\n        else\n            table.insert(relust, p1)\n            i = i + 1\n        end\n    end\n    \n    return relust\nend\n\nfunction MainScene:getPathNextRunGrid(beginMPoint, endMPoint)\n    local dequeMPoint = PathAStar.findPathByAStar(\n        self.m_bgMap:getMapGrid(),\n        self.m_bgMap:getGridRow(),\n        self.m_bgMap:getGridCol(),\n        64, beginMPoint, endMPoint)\n    \n    local relust = {}\n    table.insert(relust, dequeMPoint[1])\n    \n    while (#dequeMPoint > 3) do\n        table.remove(dequeMPoint)\n    end\n    \n    if (#dequeMPoint == 2) then\n        local p = dequeMPoint[2]\n        table.insert(relust, p)\n    elseif (#dequeMPoint > 2) then\n        local p1 = dequeMPoint[2]\n        local p2 = dequeMPoint[3]\n        \n        if (MapPoint.sub(p2, dequeMPoint[1]):equalsObj(MapPoint.sub(p1, dequeMPoint[1]):mul(2))) then\n            table.insert(relust, p2)\n        else\n            table.insert(relust, p1)\n        end\n    end\n    \n    return relust\nend\n\nfunction MainScene:getPathNextWalkGrid(beginMPoint, endMPoint)\n    local dequeMPoint = PathAStar.findPathByAStar(\n        self.m_bgMap:getMapGrid(),\n        self.m_bgMap:getGridRow(),\n        self.m_bgMap:getGridCol(),\n        64, beginMPoint, endMPoint)\n\n    while (#dequeMPoint > 2) do\n        table.remove(dequeMPoint)\n    end\n    \n    return dequeMPoint\nend\n\nfunction MainScene:onTouchBegan(event)\n    print(\"------------------------onTouchBegan\")\n    local point = cc.p(event.x, event.y)\n    point = self.m_bgMap:convertToNodeSpace(point)\n    \n    if (not self:isVisible()) then\n        return false\n    end\n    \n    if (self.m_bTouchProtected) then\n        return false\n    end\n\n    if (self:getSelected()) then\n        if (cc.rectContainsPoint(self:getSelected():getRect(), point)) then\n            self.m_gameInfoUIController:getOperationMenu():commonAttack()\n            return true\n        else\n            self:showSelected(nil)\n        end\n    end\n        \n--    CCArray* otherKeys = m_otherDictionary->allKeys()\n--    if (otherKeys)\n--    {\n--        for (int i=0; i<otherKeys->count(); i++)\n--        {\n--            int key = ((CCInteger*)otherKeys->objectAtIndex(i))->getValue();\n--            Monomer* mon = (Monomer*)m_otherDictionary->objectForKey(key);\n--            if (mon->getRect().containsPoint(point))\n--            {\n--                this->showSelected(mon);\n--                break;\n--            }\n--        }\n--    }\n\n    if (self.m_enemyDictionary) then\n        for key, enemy in pairs(self.m_enemyDictionary) do\n            if (cc.rectContainsPoint(enemy:getRect(), point)) then\n                self:showSelected(enemy)\n                g_player:setAttackMonomerMajor(enemy)\n                return true\n            end\n        end\n    end\n\n    if (not self:getSelected()) then\n        self.m_ptPlayerDirection = self.m_bgMap:convertToWorldSpace(point)\n        self:beginMoveActions()\n        self:touchProtected()\n        self.m_gameInfoUIController:getOperationMenu():cancelHangUP()\n    end\n    \n--    this->unschedule(schedule_selector(MainScene:log));\n--    this->schedule(schedule_selector(MainScene:log));\n    return true\nend\n\nfunction MainScene:onTouchMoved(event)    \n    if (not self.m_bIsPlayerMoveActions) then\n        return\n    end\n    local point = cc.p(event.x, event.y)\n    point = self.m_bgMap:convertToNodeSpace(point)\n    self.m_ptPlayerDirection = self.m_bgMap:convertToWorldSpace(point)\n    if (g_player:getState() ~= FigureState.Stand) then\n        return\n    end\n    self:beginMoveActions()\nend\n\nfunction MainScene:onTouchEnded(event)\n    self:stopMoveActions()\nend\n\nfunction MainScene:onTouchCancelled(event)\n    \nend\n\nfunction MainScene:removeEnemy(enemy)\n    table.insert(self.m_waitReincarnationEnemy, {[\"key\"] = enemy:getRoleNumber(), [\"mpoint\"] = enemy:getDenPos()})\n    self.m_mapMPoint[enemy] = nil\n    self.m_enemyDictionary[enemy:getEnemyID()] = nil\n    if (enemy == self:getSelected()) then\n        self:showSelected(nil)\n    end\n    local fTime = math.random() * 5 + 3\n    local callFunc = cc.CallFunc:create(handler(self, self.addEnemy_))\n    local sequence = cc.Sequence:create(cc.DelayTime:create(fTime), callFunc)\n    self:runAction(sequence)\n    \n    self.m_gameInfoUIController:getOperationMenu():intelligentSearch()\nend\n\nfunction MainScene:addEnemy(num, mpoint, tag)\n    local enemy = Enemy.new(tag, num, 0)\n    enemy:setPosition(mpoint:getCCPointValue())\n    enemy:setDenPos(MapPoint.new(cc.p(enemy:getPosition())))\n    self.m_bgMap:addChild(enemy)\n    enemy:updateVertexZ()\n    enemy:setAttackTime(1.0)\n    \n    if (num == 11000) then\n        enemy:setBlood(32000)\n        enemy:setBloodCap(32000)\n        enemy:setTheAttack(500)\n    elseif (num == 12000) then\n        enemy:setBlood(128000)\n        enemy:setBloodCap(128000)\n        enemy:setTheAttack(1500)\n    elseif (num == 30000) then\n        enemy:setBlood(4000)\n        enemy:setBloodCap(4000)\n        enemy:setTheAttack(50)\n        enemy:setActive(false)\n    elseif (num == 26000) then\n        enemy:setBlood(16000)\n        enemy:setBloodCap(16000)\n        enemy:setTheAttack(100)\n        enemy:setCanMoved(false)\n    else\n        enemy:setBlood(8000)\n        enemy:setBloodCap(8000)\n        enemy:setTheAttack(30)\n        enemy:setActive(false)\n    end\n    \n    enemy:patrol()\n    \n    self.m_enemyDictionary[enemy:getEnemyID()] = enemy\n    enemy:setTag(tag)\nend\n\nfunction MainScene:addEnemy_()\n    local t = self.m_waitReincarnationEnemy[1]\n    self:addEnemy(t.key, t.mpoint, self.m_nEnemyID)\n    self.m_nEnemyID = self.m_nEnemyID + 1\n    table.remove(self.m_waitReincarnationEnemy, 1)\nend\n\nfunction MainScene:getMonmerVecIsLenght(point, lenght)\n    local arrEnemy = {}\n    local mapEnemy = self.m_enemyDictionary\n    if (mapEnemy) then\n        for key, enemy in pairs(mapEnemy) do\n            local x = point.x - enemy:getHurtPoint().x\n            local y = point.y - enemy:getHurtPoint().y\n            y = y / math.sqrt(2)\n            if (math.sqrt(x * x + y * y) <= lenght) then\n                table.insert(arrEnemy, enemy)\n            end\n        end\n    end\n    return arrEnemy\nend\n\nfunction MainScene:playerMovement(dt)\n    if (not self.m_bgMap) then\n        return\n    end\n    \n    local arrEnemy = self:getMonmerVecIsLenght(cc.p(g_player:getPosition()), MapPoint.new(6, 1):getCCSizeValue().width)\n    for i = 1, #arrEnemy do\n        local enemy = arrEnemy[i]\n        if ((enemy:getAttackMonomerMajor()) or (enemy:getActive() == false)) then\n        else\n            enemy:followAttackAndSetAttackMethods(g_player, 0)\n        end\n    end\nend\n\n-- 获取玩家的方向\nfunction MainScene:getPlayerDirection()\n    local relust\n    \n    local ptBegin = cc.p(g_player:getPosition())\n    local ptEnd = cc.p(self.m_bgMap:convertToNodeSpace(self.m_ptPlayerDirection))\n    \n    local lenghtX = ptEnd.x - ptBegin.x\n    local lenghtY = ptEnd.y - ptBegin.y\n    local lenght = cc.pGetDistance(ptBegin, ptEnd)\n    local angle_X = math.acos(lenghtX / lenght) * 180 / math.pi\n    local angle_Y = math.acos(lenghtY / lenght) * 180 / math.pi\n    \n    local angle = angle_X\n    if (angle_Y > 90) then\n        angle = 360 - angle_X\n    end\n    angle = angle * (math.pi / 180)\n    local x = math.cos(angle)\n    local y = math.sin(angle)\n    local tan = math.abs(math.tan(angle))\n    local tanMin = math.tan(22.5 * math.pi / 180)\n    local tanMax = math.tan(67.5 * math.pi / 180)\n    \n    if (tanMin <= tan and tan < tanMax) then\n        relust = MapPoint.new(x / math.abs(x), y / math.abs(y))\n    elseif (tan < tanMin) then\n        relust = MapPoint.new(x / math.abs(x), 0)\n    else\n        relust = MapPoint.new(0, y / math.abs(y))\n    end\n    \n    relust = relust:mul(2)\n    return relust\nend\n\nfunction MainScene:playerRunning(fDelay)\n    if (self.m_gameInfoUIController:getOperationMenu():getMoveMethods() == 0) then\n        g_player:runBy(self:getPlayerDirection())\n    elseif (self.m_gameInfoUIController:getOperationMenu():getMoveMethods() == 1) then\n        g_player:walkBy(self:getPlayerDirection())\n    end\nend\n\nfunction MainScene:beginMoveActions()\n    if (self.m_gameInfoUIController:getOperationMenu():getMoveMethods() == 2) then\n        local point = self.m_bgMap:convertToNodeSpace(self.m_ptPlayerDirection)\n        local mpoint = MapPoint.new(point)\n        g_player:goTo(mpoint)\n        self.m_touchMouse:playEffect(mpoint:getCCPointValue())\n        return\n    end\n        \n    if (g_player:isMoveRunning()) then\n        return\n    end\n    self.m_bIsPlayerMoveActions = true\n    g_player:setAttackMonomerMajor(nil)\n    self:OutOfCombat()\n    self:playerRunning()\nend\n\nfunction MainScene:stopMoveActions()\n    self.m_bIsPlayerMoveActions = false\n    self.m_ptPlayerDirection = cc.p(0, 0)\nend\n\n--function MainScene:AccurateMoveActions(point)\n--    if (not m_isPlayerMoveActions) then\n--        return\n--    end\n--    if (Player.sharePlayer():isMoveRunning()) then\n--        return\n--    end\n--    self.m_playerDirection = point:getCCPointValue()\n--    if (Player.sharePlayer():getState() ~= FigureState.Stand) then\n--        return\n--    end\n--    self:beginMoveActions()\n--end\n--\n--function MainScene:keyBackClicked()\n----    if (CCDirector::sharedDirector()->getRunningScene()->getChildByTag(0xffffff)) then\n----        return;\n----    end\n----    \n----    LAlertView* alert = LAlertView::create(\"提示\", \"是否退出游戏?\");\n----    alert->addButtonWithTitle(\"是\");\n----    alert->addButtonWithTitle(\"否\");\n----    alert->show(this, Alert_selector(MainScene:alertCallBack));\n----    alert->setTag(0xffffff);\n--end\n--\n--function MainScene:keyMenuClicked()\n--    \n--end\n--\n--function MainScene:alertCallBack(nNum)\n--    if (nNum == 0) then\n--        CCDirector::sharedDirector()->end()\n--    end\n--end\n--\n--function MainScene:log(dt)\n--    --MapPoint p = MapPoint(m_gMapPoint[Player::sharePlayer()])\n--    --MapPoint q = MapPoint(Player::sharePlayer()->getPosition())\n--    -- CCLog(\"playerRunning x=%d, z=%d, x=%d, z=%d \", p.x, p.z, q.x ,q.z)\n--end\n\nfunction MainScene:showSelected(monomer)\n    if (self.m_spSel:getParent()) then\n        self.m_spSel:removeFromParent()\n    end\n    \n    if (monomer) then\n        local x = monomer:getAnchorPoint().x * monomer:getContentSize().width\n        local y = monomer:getAnchorPoint().y * monomer:getContentSize().height\n        self.m_spSel:setPosition(x, y)\n        monomer:addChild(self.m_spSel, -1)\n        self.m_gameInfoUIController:getAttackEnemyInfo():showAttackInfo(monomer)\n    end\nend\n\nfunction MainScene:getSelected()\n    local monomer = self.m_spSel:getParent()\n    if (not monomer) then\n        if (self.m_gameInfoUIController:getAttackEnemyInfo()) then\n            self.m_gameInfoUIController:getAttackEnemyInfo():hide()\n        end\n    end\n    return monomer\nend\n\nfunction MainScene:getPlayerMoveActions()\n    return self.m_bIsPlayerMoveActions\nend\n\nfunction MainScene:getEnemyDictionary()\n    return self.m_enemyDictionary\nend\n\nfunction MainScene:getGameInfoUIController()\n    return self.m_gameInfoUIController\nend\n\nreturn MainScene\n"
  },
  {
    "path": "源代码/mir9/src/app/scenes/RoleSelScene.lua",
    "content": "local GameSocket = require(\"app.GameSocket\")\nlocal GameLoading = require(\"app.scenes.GameLoading\")\nlocal Figure = require(\"app.figure.Figure\")\n\nlocal RoleSelScene = class(\"RoleSelScene\", function()\n    return display.newScene(\"RoleSelScene\")\nend)\n\nfunction RoleSelScene:ctor()\n    self.m_btnBegin = nil\n    self.m_edtNickName = nil\n    self.m_nickName = \"\"\n    self.m_selected = nil\n    self.m_arrRole = {}\n    \n    self:init()\nend\n\nfunction RoleSelScene:init()\n    local layerColor = cc.LayerColor:create(cc.c4f(140, 150, 180, 255), display.width, display.height)\n    self:addChild(layerColor, -1)\n    \n    local label = cc.ui.UILabel.new({\n        text = \"傲来国\",\n        size = 35,\n        color = cc.c3b(255,255,255),\n        fontName = \"黑体\"\n    }):pos(display.cx, 576):addTo(self)\n    label:setAnchorPoint(0.5, 0.5)    \n    \n    local PUSH_BUTTON_IMAGES = {\n        normal = nil,\n        pressed = nil,\n        disabled = nil,\n    }\n    \n    local figureId = {11001, 11002, 12001, 12002, 13001, 13002, 14001, 14002, 15001, 15002, 16001, 16002}\n    local hairId = {1000, 1000, 1100, 1100, 1200, 1200}\n    \n    local szBtn = cc.size(120, 200)\n    local nStart = (display.width-(szBtn.width*6+30*3+10*2))/2\n    local pt = {\n        cc.p(nStart+szBtn.width/2, 320),\n        cc.p(nStart+szBtn.width+30+szBtn.width/2, 320),\n        cc.p(nStart+szBtn.width*2+30+10+szBtn.width/2, 320),\n        cc.p(nStart+szBtn.width*3+30*2+10+szBtn.width/2, 320),\n        cc.p(nStart+szBtn.width*4+30*2+10*2+szBtn.width/2, 320),\n        cc.p(nStart+szBtn.width*5+30*3+10*2+szBtn.width/2, 320)\n    }\n    \n    for i = 1, 6 do\n        local btn = cc.ui.UIPushButton.new(PUSH_BUTTON_IMAGES, {scale9 = true})\n        btn:setAnchorPoint(0.5, 0.5)\n        btn:setButtonSize(szBtn.width, szBtn.height)\n        btn:setPosition(cc.pAdd(cc.p(0, 0), pt[i]))\n        btn:setTag(figureId[i])\n        btn:onButtonClicked(handler(self, self.setSelector))\n        self:addChild(btn)\n        \n        local monomer = Figure.new(TexturePathType.Figure, figureId[i])\n        monomer:setHair(hairId[i])\n        monomer:setWeapon(1000)\n        --monomer:setPosition(btn:getContentSize().width/2, btn:getContentSize().height/2)\n        monomer:setColor(cc.c3b(127, 127, 127))\n        btn:addChild(monomer)\n        table.insert(self.m_arrRole, monomer)\n    end\n\n    label = cc.ui.UILabel.new({\n        text = \"血腥、暴力、耐打\",\n        size = 25,\n        color = cc.c3b(255,255,255),\n        fontName = \"宋体\"\n    }):pos(nStart+24, 179):addTo(self)\n\n    label = cc.ui.UILabel.new({\n        text = \"召唤、辅助、周旋\",\n        size = 25,\n        color = cc.c3b(255,255,255),\n        fontName = \"宋体\"\n    }):pos(nStart+szBtn.width*2+30+10+24, 179):addTo(self)\n\n    label = cc.ui.UILabel.new({\n        text = \"强力、强力、还是强力\",\n        size = 25,\n        color = cc.c3b(255,255,255),\n        fontName = \"宋体\"\n    }):pos(nStart+szBtn.width*4+30*2+10*2+24, 179):addTo(self)\n\n    local editBox = cc.ui.UIInput.new({\n        image = \"EditBoxBg.png\",\n        size = cc.size(140, 50),\n        x = nStart+szBtn.width*2+30+10+24,\n        y = 80,\n        listener = function(event, editbox)\n            if event == \"began\" then\n                self:onEditBoxBegan(editbox)\n            elseif event == \"ended\" then\n                self:onEditBoxEnded(editbox)\n            elseif event == \"return\" then\n                self:onEditBoxReturn(editbox)\n            elseif event == \"changed\" then\n                self:onEditBoxChanged(editbox)\n            else\n                printf(\"EditBox event %s\", tostring(event))\n            end\n        end\n    })\n    editBox:setAnchorPoint(0, 0)\n    editBox:setFontSize(25)\n    editBox:setFontName(\"宋体\")\n    editBox:setPlaceHolder(\"从这里输入昵称\")\n    editBox:setPlaceholderFontColor(cc.c3b(0, 0, 0))\n    editBox:setMaxLength(14)\n    editBox:setInputMode(cc.EDITBOX_INPUT_MODE_ANY)\n    editBox:setReturnType(cc.KEYBOARD_RETURNTYPE_DONE)\n    self:addChild(editBox)\n    self.m_edtNickName = editBox\n\n    PUSH_BUTTON_IMAGES = {\n        normal = \"ui/role_create/GUI/button.png\",\n        pressed = nil,\n        disabled = nil,\n    }\n\n    local btn = cc.ui.UIPushButton.new(PUSH_BUTTON_IMAGES, {scale9 = true})\n    btn:setAnchorPoint(0, 0)\n    btn:setButtonSize(40, 40)\n    btn:setPosition(editBox:getPositionX()+editBox:getContentSize().width+50, 80)\n    btn:onButtonClicked(handler(self, self.randomNickName))\n    self:addChild(btn)\n\n    btn = cc.ui.UIPushButton.new(PUSH_BUTTON_IMAGES, {scale9 = true})\n    btn:setAnchorPoint(1, 0.5)\n    btn:setButtonSize(150, 80)\n    btn:setPosition(nStart+szBtn.width*6+30*3+10*2, 80)\n    btn:setColor(cc.c3b(127, 127, 127))\n    btn:setTouchEnabled(false)\n    btn:setButtonLabel(\"normal\", cc.ui.UILabel.new({\n        text = \"进入游戏\",\n        fontName = \"宋体\",\n        size = 25\n    }))\n    btn:onButtonClicked(handler(self, self.sendMessage))\n    self:addChild(btn)\n    self.m_btnBegin = btn\n    \n    return true\nend\n\nfunction RoleSelScene:onExit()\n    cc.Director:getInstance():getTextureCache():removeAllTextures()\nend\n\nfunction RoleSelScene:runActionsForFigure(monomer)\n    monomer:setFigureState(FigureState.Attack, FigureDirection.Down)\n    \n    local delayTime = cc.DelayTime:create(2.0)\n    local finish = cc.CallFunc:create(function()\n        self:runActionsForFigure(monomer)\n    end)\n    local sequence = cc.Sequence:create(delayTime, finish)\n    monomer:runAction(sequence)\nend\n\nfunction RoleSelScene:setSelector(event)\n    local btn = event.target\n    if (btn) then\n        self.m_roleID = btn:getTag()\n        if (self.m_selected) then\n            local monomer = self.m_selected\n            local button = monomer:getParent()\n            monomer:setFigureState(FigureState.Stand, FigureDirection.Down)\n            monomer:setColor(cc.c3b(127, 127, 127))\n            local scaleTo = cc.ScaleTo:create(0.15, 1.0)\n            local finish = cc.CallFunc:create(function()\n                monomer:stopAllActions()\n            end)\n            local finish2 = cc.CallFunc:create(function()\n                monomer:getWeaponSprite():stopAllActions()\n            end)\n            local sequence = cc.Sequence:create(scaleTo, finish, finish2)\n            monomer:runAction(sequence)\n            button:setTouchEnabled(true)\n        end\n        \n        for i = 1, #self.m_arrRole do\n            local monomer = self.m_arrRole[i]\n            local button = monomer:getParent()\n            if (btn == button) then\n                button:setTouchEnabled(false)\n                local scaleTo = cc.ScaleTo:create(0.15, 1.2)\n                monomer:runAction(scaleTo)\n                monomer:setColor(cc.c3b(255,255,255))\n                self:runActionsForFigure(monomer)\n                self.m_selected = monomer\n            end\n        end\n    end\n    \n    if (self.m_btnBegin) then\n        self.m_btnBegin:setColor(cc.c3b(255,255,255))\n        self.m_btnBegin:setTouchEnabled(true)\n    end\nend\n\nfunction RoleSelScene:randomNickName(event)\n    if (self.m_edtNickName) then\n        local num = math.random(1, 1000)\n        local str = string.format(\"player_%03d\", num)\n        self.m_edtNickName:setText(\"\")\n        self.m_edtNickName:setText(str)\n    end\nend\n\nfunction RoleSelScene:sendMessage(event)\n    if (self.m_edtNickName:getText() == \"\") then\n        --CCMessageBox(\"Nickname is null!\", \"Tip\")\n        return\n    end\n    self.m_edtNickName:setTouchEnabled(false)\n    GameSocket.sendRoleCreate(self, self.m_roleID, self.m_edtNickName:getText()) -- SOCKET\nend\n\nfunction RoleSelScene:joinGame()\n    GameLoading.runGameLoading(200, 1)\nend\n\nfunction RoleSelScene:onEditBoxBegan(editbox)\n    printf(\"editBox1 event began : text = %s\", editbox:getText())\nend\n\nfunction RoleSelScene:onEditBoxEnded(editbox)\n    printf(\"editBox1 event ended : %s\", editbox:getText())\nend\n\nfunction RoleSelScene:onEditBoxReturn(editbox)\n    printf(\"editBox1 event return : %s\", editbox:getText())\nend\n\nfunction RoleSelScene:onEditBoxChanged(editbox)\n    printf(\"editBox1 event changed : %s\", editbox:getText())\nend\n\nreturn RoleSelScene"
  },
  {
    "path": "源代码/mir9/src/app/skill_system/AttackSkillInfo.lua",
    "content": "-- 攻击技能信息类\nlocal AttackSkillInfo = class(\"AttackSkillInfo\")\n\nfunction AttackSkillInfo:ctor(json_value)    \n    self.m_nNum = json_value[\"skillNumber\"]\n    self.m_strName = json_value[\"skillName\"]\n    self.m_nType = json_value[\"skillType\"]\n    self.m_nAttackType = json_value[\"attackType\"]\n    self.m_skillLevel = json_value[\"skillLevel\"]\n    self.m_upgradeTrainingPoint = json_value[\"upgradeTrainingPoint\"]\n    self.m_openLevel = json_value[\"openLevel\"]\n    self.m_magicConsumption = json_value[\"magicConsumption\"]\n    self.m_coolingTime = json_value[\"coolingTime\"]\n    self.m_attackDistance = json_value[\"attackDistance\"]\n    self.m_isAttackBody = json_value[\"isAttackBody\"]\n    self.m_flightSpeed = json_value[\"flightSpeed\"]\n    self.m_isTailing = json_value[\"isTailing\"]\n    self.m_explosionRadius = json_value[\"explosionRadius\"]\n    self.m_explosionFanAngle = json_value[\"explosionFanAngle\"]\n    self.m_bIsThirdParty = json_value[\"isThirdParty\"]\n    self.m_effectiveTime = json_value[\"effectiveTime\"]\n    self.m_effectOfCamp = json_value[\"effectOfCamp\"]\n    self.m_casterSpecificID = json_value[\"casterSpecificID\"]\n    self.m_locusSpecificID = json_value[\"locusSpecificID\"]\n    self.m_explosionSpecificID = json_value[\"explosionSpecificID\"]\nend\n\nreturn AttackSkillInfo"
  },
  {
    "path": "源代码/mir9/src/app/skill_system/AttackSkillSystem.lua",
    "content": "local cjson = require(\"cjson\")\nlocal AttackSkillInfo = require(\"app.skill_system.AttackSkillInfo\")\n\n-- 攻击技能系统类\nlocal AttackSkillSystem = class(\"AttackSkillSystem\")\n\n-- 构造函数\nfunction AttackSkillSystem:ctor()\n    self.m_mapAttackSkill = {}\n    \n    local json_str = cc.FileUtils:getInstance():getStringFromFile(\"game_data/skill_info.json\")\n    local json_value = cjson.decode(json_str)\n\n    for i = 1, #json_value do\n        self:addAttackSkillInfo(json_value[i])\n    end\nend\n\nfunction AttackSkillSystem:addAttackSkillInfo(json_value)\n    local attackSkillInfo = AttackSkillInfo.new(json_value)\n    attackSkillInfo.m_coolingTime = 1.5\n    self.m_mapAttackSkill[attackSkillInfo.m_nNum] = attackSkillInfo\nend\n\nfunction AttackSkillSystem:getAttackSkillInfo(nSkillID)\n    return self.m_mapAttackSkill[nSkillID]\nend\n\nreturn AttackSkillSystem"
  },
  {
    "path": "源代码/mir9/src/app/skill_system/SkillEffectShow.lua",
    "content": "local scheduler = require(\"framework.scheduler\")\nlocal BgMap = require(\"app.map.BgMap\")\nlocal GameSocket = require(\"app.GameSocket\")\nlocal TextureController = require(\"app.figure.TextureController\")\n\n-- 技能特效显示类\nlocal SkillEffectShow = class(\"SkillEffectShow\", function()\n    return display.newNode()\nend)\n\nfunction SkillEffectShow:ctor(skillInfo, fHitDelay)\n    self.m_skillInfo = skillInfo\n    self.m_attacker = nil\n    self.m_victim = nil\n    self.m_spShow = nil\n    self.m_spExplosion = nil\n    self.m_spTail = nil\n    self.m_fHitDelay = fHitDelay\n    \n    self.m_attacker = display.newNode()\n    self.m_victim = display.newNode()\n    \n    self:setNodeEventEnabled(true)\nend\n\nfunction SkillEffectShow:onEnter()\n    \nend\n\nfunction SkillEffectShow:onExit()\n    if (self.m_attacker:getParent()) then\n        self.m_attacker:removeFromParent()\n    end\n    if (self.m_victim:getParent()) then\n        self.m_victim:removeFromParent()\n    end\nend\n\nfunction SkillEffectShow.playSkillEffect(skillInfo, attacker, victim, fHitDelay)\n    local skillEffectShow = SkillEffectShow.new(skillInfo, fHitDelay)\n    if (skillEffectShow and skillEffectShow:init(attacker, victim)) then\n        g_mainScene:getCurrBgMap():addChild(skillEffectShow)\n        -- skillEffectShow:release()\n        return skillEffectShow\n    end\n    return nil\nend\n\nfunction SkillEffectShow:init(attacker, victim)    \n    if (not attacker or not victim) then\n        return false\n    end\n    \n    attacker:addChild(self.m_attacker)\n    victim:addChild(self.m_victim)\n    \n    self:initWithShowSprite()\n    \n    if (self.m_skillInfo.m_casterSpecificID ~= 0) then\n        local path = TextureController.getTexturePath(TexturePathType.SkillCaster, self.m_skillInfo.m_casterSpecificID)\n        self:playCasterSpecific(path)\n    end\n\n    scheduler.performWithDelayGlobal(handler(self, self.emission), self.m_fHitDelay)\n    \n    return true\nend\n\nfunction SkillEffectShow:initWithShowSprite()\n    self.m_spShow = cc.Sprite:create()\n    self.m_spShow:setPosition(self.m_attacker:getParent():getHandPoint())\n    g_mainScene:getCurrBgMap():addChild(self.m_spShow)\nend\n\nfunction SkillEffectShow:playCasterSpecific(path)\n    local figure = self.m_attacker:getParent():getFigure()\n    \n    local spWeapon = figure:getWeaponSprite()\n    if (not spWeapon) then\n        return\n    end\n    \n    local sprite = cc.Sprite:create()\n    local szWeapon = spWeapon:getContentSize()\n    sprite:setPosition(szWeapon.width/2, szWeapon.height/2)\n    szWeapon:addChild(sprite)\n    \n    local array = {}\n    local flag = 0\n    \n    while (true) do\n        local frameName = string.format(\"%s_%d0_%02d.png\", path, figure:getDirection(), flag)\n        local spriteFrame = cc.SpriteFrameCache:getInstance():getSpriteFrame(frameName)\n        if (not spriteFrame) then\n            break\n        end\n        table.insert(array, spriteFrame)\n        flag = flag + 1\n    end\n    \n    if (#array > 0) then\n        local animation = cc.Animation:createWithSpriteFrames(array, 1 / 10)\n        local animate = cc.Animate:create(animation)\n        local callFunc = cc.CallFunc:create(handler(self, self.removeFromParent))\n        local Sequence = cc.Sequence:create(animate, callFunc, nil)\n        sprite:runAction(Sequence)\n    else\n        sprite:removeFromParent()\n    end\nend\n\nfunction SkillEffectShow:emission(fDelay)\n    self.hTrack = scheduler.scheduleGlobal(handler(self, self.track), 0)\n    \n    if (self.m_skillInfo.m_locusSpecificID ~= 0) then\n        local path = TextureController.getTexturePath(TexturePathType.SkillLocus, self.m_skillInfo.m_locusSpecificID)\n        self:playLocusSpecific(path)\n        \n        if (self.m_skillInfo.m_isTailing) then\n            self:playTailing()\n        end\n    end\nend\n\nfunction SkillEffectShow:track(fDelay)\n    local speed = self.m_skillInfo.m_flightSpeed / 60.0\n    \n    if (self.m_skillInfo.m_flightSpeed == 0) then\n        speed = 0xffffffff\n    end\n    \n    local lenght = cc.pGetDistance(cc.p(self.m_spShow:getPosition()), self:getDestination())\n    local lenghtX = self:getDestination().x - self.m_spShow:getPositionX()\n    local lenghtY = self:getDestination().y - self.m_spShow:getPositionY()\n    local x = self.m_spShow:getPositionX() + speed * lenghtX / lenght\n    local y = self.m_spShow:getPositionY() + speed * lenghtY / lenght\n    local point = cc.p(x, y)\n    \n    if (lenght <= 64) then\n        self.m_spShow:setVisible(false)\n    end\n    \n    if (cc.pGetDistance(point, self:getDestination()) > speed) then\n        self.m_spShow:setPosition(point)\n        local high = self.m_attacker:getParent():getHandPointRelativeFootOffset()\n        self.m_spShow:setLocalZOrder(BgMap.getZOrder(cc.pSub(point, high)) + 1)\n    else\n        self.m_spShow:setPosition(self:getDestination())\n        if (self.hTrack) then\n            scheduler.unscheduleGlobal(self.hTrack)\n            self.hTrack = nil\n        end\n        self:hit()\n    end\nend\n\nfunction SkillEffectShow:hit()\n    if (self.m_skillInfo.m_explosionSpecificID ~= 0) then\n        local path = TextureController.getTexturePath(TexturePathType.SkillExplosion, self.m_skillInfo.m_explosionSpecificID)\n        self:playExplosionSpecific(path)\n    else\n        self:sendMessage()\n        self:releaseThis()\n    end\nend\n\nfunction SkillEffectShow:updateTailing(fDelay)\n    local lenght = cc.pGetDistance(self:getDeparture(), cc.p(self.m_spShow:getPosition()))\n    local lenghtX = self.m_spShow:getPositionX() - self:getDeparture().x\n    local lenghtY = self.m_spShow:getPositionY() - self:getDeparture().y\n    \n    local angle_X = math.asin(lenghtY / lenght) * 180 / math.pi\n    local angle_Y = math.asin(lenghtX / lenght) * 180 / math.pi\n\n    local rotation = 0\n    \n    if (angle_X >= 0) then\n        rotation = angle_Y - 90\n    else\n        rotation = 90 - angle_Y\n    end\n    \n    local preferredSize = cc.size(0, 0)\n    \n    if (lenght < 30) then\n        preferredSize.width = 0\n    else\n        preferredSize.width = lenght - 30\n    end\n    \n    preferredSize.height = 5\n    \n    self.m_spTail:setPreferredSize(preferredSize)\n\n    self.m_spTail:setRotation(rotation)\nend\n\n-- 播放拖尾特效\nfunction SkillEffectShow:playTailing()\n    self.m_spTail = CCScale9Sprite:create(\"ui/red.png\")\n    self.m_spTail:setPreferredSize(cc.size(0, 0))\n    self.m_spTail:setAnchorPoint(1, 0.5)\n    self.m_spTail:setPosition(0, 0)\n    self.m_spShow:addChild(self.m_spTail, -1)\n    \n    self.hUpdateTailing = scheduler.scheduleGlobal(handler(self, self.updateTailing), 0)\nend\n\nfunction SkillEffectShow:playLocusSpecific(path)\n    local rotation = self:getRotationWithLocusSpecific()\n    \n    local flag = 0\n    \n    local array = {}\n    while (true) do\n        local frameName = string.format(\"%s_%d_%02d.png\", path, rotation, flag)\n        local spriteFrame = cc.SpriteFrameCache:getInstance():getSpriteFrame(frameName)\n        if (not spriteFrame) then\n            break\n        end\n        table.insert(array, spriteFrame)\n        flag = flag + 1\n    end\n    \n    if (#array > 0) then\n        local animation = cc.Animation:createWithSpriteFrames(array, 1 / 24)\n        local animate = cc.Animate:create(animation)\n        local repeatForever = cc.RepeatForever:create(animate)\n        self.m_spShow:runAction(repeatForever)\n    end\nend\n\nfunction SkillEffectShow:playExplosionSpecific(path)\n    self.m_spExplosion = cc.Sprite:create()\n    \n    if (self.m_skillInfo.m_bIsThirdParty == true) then\n        local point = cc.p(self.m_spShow:getPosition())\n        self.m_spExplosion:setPosition(point)\n        g_mainScene:getCurrBgMap():addChild(self.m_spExplosion)\n        local high = self.m_attacker:getParent():getHurtPointRelativeFootOffset()\n        self.m_spExplosion:setLocalZOrder(BgMap.getZOrder(cc.pSub(point, high)) + 1)\n    else\n        local victim = self.m_victim:getParent()\n        if (not victim) then\n            self:releaseThis()\n            return\n        end\n        \n        local x = victim:getContentSize().width * victim:getFigure():getAnchorPointCenter().x\n        local y = victim:getContentSize().height * victim:getFigure():getAnchorPointCenter().y\n        self.m_spExplosion:setPosition(x, y)\n        self.m_victim:addChild(self.m_spExplosion)\n    end\n    \n    local flag = 0\n    \n    local array = {}\n    while (true) do\n        local frameName = string.format(\"%s_%02d.png\", path, flag)\n        local spriteFrame = cc.SpriteFrameCache:getInstance():getSpriteFrame(frameName)\n        if (not spriteFrame) then\n            break\n        end\n        table.insert(array, spriteFrame)\n        flag = flag + 1\n    end\n    \n    if (#array > 0) then\n        local animation = cc.Animation:createWithSpriteFrames(array, 1 / 24)\n        local animate = cc.Animate:create(animation)\n        local finish = cc.CallFunc:create(handler(self, self.releaseThis))\n        local sequence1 = cc.Sequence:create(animate, finish)\n        \n        local delay = cc.DelayTime:create(animate:getDuration()/2)\n        local callFunc = cc.CallFunc:create(handler(self, self.sendMessage))\n        local sequence2 = cc.Sequence:create(delay, callFunc)\n        \n        local spawn = cc.Spawn:create(sequence1, sequence2)\n        \n        self.m_spExplosion:runAction(spawn)\n    else\n        self:sendMessage()\n        self:releaseThis()\n    end\nend\n\nfunction SkillEffectShow:getRotationWithLocusSpecific()\n    local lenghtX = self:getDestination().x - self.m_spShow:getPositionX()\n    local lenghtY = self:getDestination().y - self.m_spShow:getPositionY()\n    lenghtY = lenghtY * math.sqrt(2)\n    local lenght = math.sqrt(lenghtX * lenghtX + lenghtY * lenghtY)\n    local angle_X = math.acos(lenghtX / lenght) * 180 / math.pi\n    local angle_Y = math.acos(lenghtY / lenght) * 180 / math.pi\n\n    local angle = angle_X\n    if (angle_Y > 90) then\n        angle = 360 - angle_X\n    end\n    \n    local relust = 0\n    \n    if (math.abs(67.5 - angle) <= 11.25) then\n        -- up2 right1\n        relust = 5\n    elseif (math.abs(45 - angle) <= 11.25) then\n        -- up2 right2\n        relust = 10\n    elseif (math.abs(22.5 - angle) <= 11.25) then\n        -- up1 right2\n        relust = 15\n    elseif (math.abs(0 - angle) <= 11.25) then\n        -- right2\n        relust = 20\n    elseif (math.abs(337.5 - angle) <= 11.25) then\n        -- right2 down1\n        relust = 25\n    elseif (math.abs(315 - angle) <= 11.25) then\n        -- right2 down2\n        relust = 30\n    elseif (math.abs(292.5 - angle) <= 11.25) then\n        -- right1 down2\n        relust = 35\n    elseif (math.abs(270 - angle) <= 11.25) then\n        -- down2\n        relust = 40\n    elseif (math.abs(247.5 - angle) <= 11.25) then\n        -- down2 left\n        relust = 45\n    elseif (math.abs(225 - angle) <= 11.25) then\n        -- down2 left2\n        relust = 50\n    elseif (math.abs(202.5 - angle) <= 11.25) then\n        -- down1 left2\n        relust = 55\n    elseif (math.abs(180 - angle) <= 11.25) then\n        -- left2\n        relust = 60\n    elseif (math.abs(157.5 - angle) <= 11.25) then\n        -- left2 up1\n        relust = 65\n    elseif (math.abs(135 - angle) <= 11.25) then\n        -- left2 up2\n        relust = 70\n    elseif (math.abs(112.5 - angle) <= 11.25) then\n        -- left up2\n        relust = 75\n    elseif (math.abs(90 - angle) <= 11.25) then\n        -- up2\n        relust = 80\n    end\n    \n    return relust\nend\n\nfunction SkillEffectShow:getDestination()\n    local point = cc.p(0, 0)\n    if (not self.m_victim:getParent()) then\n        self:releaseThis()\n        return point\n    end\n    return self.m_victim:getParent():getHurtPoint()\nend\n\nfunction SkillEffectShow:getDeparture()\n    if (not self.m_attacker:getParent()) then\n        self:releaseThis()\n        return cc.p(0, 0)\n    end\n    return self.m_attacker:getParent():getHandPoint()\nend\n\nfunction SkillEffectShow:sendMessage()\n    if (self.m_skillInfo.m_bIsThirdParty) then\n        if (self.m_skillInfo.m_explosionFanAngle == 360) then\n            local arrMonomer = g_mainScene:getMonmerVecIsLenght(cc.p(self.m_spShow:getPosition()), self.m_skillInfo.m_explosionRadius)\n            if (#arrMonomer == 0) then\n                table.insert(arrMonomer, self.m_victim:getParent())\n            end\n            GameSocket.attackGroup(self.m_attacker:getParent(), arrMonomer, self.m_skillInfo.m_nNum)\n        else\n            \n        end\n    else\n        GameSocket.attack(self.m_attacker:getParent(), self.m_victim:getParent(), self.m_skillInfo.m_nNum)\n    end\nend\n\nfunction SkillEffectShow:releaseThis()\n    if (self.m_spShow and self.m_spShow:getParent()) then\n        self.m_spShow:removeFromParent()\n        self.m_spShow = nil\n    end\n    if (self.m_spExplosion and self.m_spExplosion:getParent()) then\n        self.m_spExplosion:removeFromParent()\n        self.m_spExplosion = nil\n    end\n    if (self:getParent()) then\n        self:removeFromParent()\n    end\nend\n\nreturn SkillEffectShow"
  },
  {
    "path": "源代码/mir9/src/cocos/cocos2d/Cocos2d.lua",
    "content": "\ncc = cc or {}\n\nfunction cc.clampf(value, min_inclusive, max_inclusive)\n    -- body\n    local temp = 0\n    if min_inclusive > max_inclusive then\n        temp = min_inclusive\n        min_inclusive =  max_inclusive\n        max_inclusive = temp\n    end\n\n    if value < min_inclusive then\n        return min_inclusive\n    elseif value < max_inclusive then\n        return value\n    else\n        return max_inclusive\n    end\nend\n\n--Point\nfunction cc.p(_x,_y)\n    if nil == _y then\n         return { x = _x.x, y = _x.y }\n    else\n         return { x = _x, y = _y }\n    end\nend\n\nfunction cc.pAdd(pt1,pt2)\n    return {x = pt1.x + pt2.x , y = pt1.y + pt2.y }\nend\n\nfunction cc.pSub(pt1,pt2)\n    return {x = pt1.x - pt2.x , y = pt1.y - pt2.y }\nend\n\nfunction cc.pMul(pt1,factor)\n    return { x = pt1.x * factor , y = pt1.y * factor }\nend\n\nfunction cc.pMidpoint(pt1,pt2)\n    return { x = (pt1.x + pt2.x) / 2.0 , y = ( pt1.y + pt2.y) / 2.0 }\nend\n\nfunction cc.pForAngle(a)\n    return { x = math.cos(a), y = math.sin(a) }\nend\n\nfunction cc.pGetLength(pt)\n    return math.sqrt( pt.x * pt.x + pt.y * pt.y )\nend\n\nfunction cc.pNormalize(pt)\n    local length = cc.pGetLength(pt)\n    if 0 == length then\n        return { x = 1.0,y = 0.0 }\n    end\n\n    return { x = pt.x / length, y = pt.y / length }\nend\n\nfunction cc.pCross(self,other)\n    return self.x * other.y - self.y * other.x\nend\n\nfunction cc.pDot(self,other)\n    return self.x * other.x + self.y * other.y\nend\n\nfunction cc.pToAngleSelf(self)\n    return math.atan2(self.y, self.x)\nend\n\nfunction cc.pGetAngle(self,other)\n    local a2 = cc.pNormalize(self)\n    local b2 = cc.pNormalize(other)\n    local angle = math.atan2(cc.pCross(a2, b2), cc.pDot(a2, b2) )\n    if math.abs(angle) < 1.192092896e-7 then\n        return 0.0\n    end\n\n    return angle\nend\n\nfunction cc.pGetDistance(startP,endP)\n    return cc.pGetLength(cc.pSub(startP,endP))\nend\n\nfunction cc.pIsLineIntersect(A, B, C, D, s, t)\n    if ((A.x == B.x) and (A.y == B.y)) or ((C.x == D.x) and (C.y == D.y))then\n        return false, s, t\n    end\n\n    local BAx = B.x - A.x\n    local BAy = B.y - A.y\n    local DCx = D.x - C.x\n    local DCy = D.y - C.y\n    local ACx = A.x - C.x\n    local ACy = A.y - C.y\n\n    local denom = DCy * BAx - DCx * BAy\n    s = DCx * ACy - DCy * ACx\n    t = BAx * ACy - BAy * ACx\n\n    if (denom == 0) then\n        if (s == 0 or t == 0) then\n            return true, s , t\n        end\n\n        return false, s, t\n    end\n\n    s = s / denom\n    t = t / denom\n\n    return true,s,t\nend\n\nfunction cc.pPerp(pt)\n    return { x = -pt.y, y = pt.x }\nend\n\nfunction cc.RPerp(pt)\n    return { x = pt.y,  y = -pt.x }\nend\n\nfunction cc.pProject(pt1, pt2)\n    return { x = pt2.x * (cc.pDot(pt1,pt2) / cc.pDot(pt2,pt2)) , y = pt2.y * (cc.pDot(pt1,pt2) / cc.pDot(pt2,pt2)) }\nend\n\nfunction cc.pRotate(pt1, pt2)\n    return { x = pt1.x * pt2.x - pt1.y * pt2.y, y = pt1.x * pt2.y + pt1.y * pt2.x }\nend\n\nfunction cc.pUnrotate(pt1, pt2)\n    return { x = pt1.x * pt2.x + pt1.y * pt2.y, pt1.y * pt2.x - pt1.x * pt2.y }\nend\n--Calculates the square length of pt\nfunction cc.pLengthSQ(pt)\n    return cc.pDot(pt,pt)\nend\n--Calculates the square distance between pt1 and pt2\nfunction cc.pDistanceSQ(pt1,pt2)\n    return cc.pLengthSQ(cc.pSub(pt1,pt2))\nend\n\nfunction cc.pGetClampPoint(pt1,pt2,pt3)\n    return { x = cc.clampf(pt1.x, pt2.x, pt3.x), y = cc.clampf(pt1.y, pt2.y, pt3.y) }\nend\n\nfunction cc.pFromSize(sz)\n    return { x = sz.width, y = sz.height }\nend\n\nfunction cc.pLerp(pt1,pt2,alpha)\n    return cc.pAdd(cc.pMul(pt1, 1.0 - alpha), cc.pMul(pt2,alpha) )\nend\n\nfunction cc.pFuzzyEqual(pt1,pt2,variance)\n    if (pt1.x - variance <= pt2.x) and (pt2.x <= pt1.x + variance) and (pt1.y - variance <= pt2.y) and (pt2.y <= pt1.y + variance) then\n        return true\n    else\n        return false\n    end\nend\n\nfunction cc.pRotateByAngle(pt1, pt2, angle)\n    return cc.pAdd(pt2, cc.pRotate( cc.pSub(pt1, pt2),cc.pForAngle(angle)))\nend\n\nfunction cc.pIsSegmentIntersect(pt1,pt2,pt3,pt4)\n    local s,t,ret = 0,0,false\n    ret,s,t =cc.pIsLineIntersect(pt1, pt2, pt3, pt4,s,t)\n\n    if ret and  s >= 0.0 and s <= 1.0 and t >= 0.0 and t <= 0.0 then\n        return true;\n    end\n\n    return false\nend\n\nfunction cc.pGetIntersectPoint(pt1,pt2,pt3,pt4)\n    local s,t, ret = 0,0,false\n    ret,s,t = cc.pIsLineIntersect(pt1,pt2,pt3,pt4,s,t)\n    if ret then\n        return cc.p(pt1.x + s * (pt2.x - pt1.x), pt1.y + s * (pt2.y - pt1.y))\n    else\n        return cc.p(0,0)\n    end\nend\n--Size\nfunction cc.size( _width,_height )\n    return { width = _width, height = _height }\nend\n\n--Rect\nfunction cc.rect(_x,_y,_width,_height)\n    return { x = _x, y = _y, width = _width, height = _height }\nend\n\nfunction cc.rectEqualToRect(rect1,rect2)\n    if ((rect1.x >= rect2.x) or (rect1.y >= rect2.y) or\n        ( rect1.x + rect1.width <= rect2.x + rect2.width) or\n        ( rect1.y + rect1.height <= rect2.y + rect2.height)) then\n        return false\n    end\n\n    return true\nend\n\nfunction cc.rectGetMaxX(rect)\n    return rect.x + rect.width\nend\n\nfunction cc.rectGetMidX(rect)\n    return rect.x + rect.width / 2.0\nend\n\nfunction cc.rectGetMinX(rect)\n    return rect.x\nend\n\nfunction cc.rectGetMaxY(rect)\n    return rect.y + rect.height\nend\n\nfunction cc.rectGetMidY(rect)\n    return rect.y + rect.height / 2.0\nend\n\nfunction cc.rectGetMinY(rect)\n    return rect.y\nend\n\nfunction cc.rectContainsPoint( rect, point )\n    local ret = false\n\n    if (point.x >= rect.x) and (point.x <= rect.x + rect.width) and\n       (point.y >= rect.y) and (point.y <= rect.y + rect.height) then\n        ret = true\n    end\n\n    return ret\nend\n\nfunction cc.rectIntersectsRect( rect1, rect2 )\n    local intersect = not ( rect1.x > rect2.x + rect2.width or\n                    rect1.x + rect1.width < rect2.x         or\n                    rect1.y > rect2.y + rect2.height        or\n                    rect1.y + rect1.height < rect2.y )\n\n    return intersect\nend\n\nfunction cc.rectUnion( rect1, rect2 )\n    local rect = cc.rect(0, 0, 0, 0)\n    rect.x = math.min(rect1.x, rect2.x)\n    rect.y = math.min(rect1.y, rect2.y)\n    rect.width = math.max(rect1.x + rect1.width, rect2.x + rect2.width) - rect.x\n    rect.height = math.max(rect1.y + rect1.height, rect2.y + rect2.height) - rect.y\n    return rect\nend\n\nfunction cc.rectIntersection( rect1, rect2 )\n    local intersection = cc.rect(\n        math.max(rect1.x, rect2.x),\n        math.max(rect1.y, rect2.y),\n        0, 0)\n\n    intersection.width = math.min(rect1.x + rect1.width, rect2.x + rect2.width) - intersection.x\n    intersection.height = math.min(rect1.y + rect1.height, rect2.y + rect2.height) - intersection.y\n    return intersection\nend\n\n--Color3B\nfunction cc.c3b( _r,_g,_b )\n    return { r = _r, g = _g, b = _b }\nend\n\n--Color4B\nfunction cc.c4b( _r,_g,_b,_a )\n    return { r = _r, g = _g, b = _b, a = _a }\nend\n\n--Color4F\nfunction cc.c4f( _r,_g,_b,_a )\n    return { r = _r, g = _g, b = _b, a = _a }\nend\n\n--Vertex2F\nfunction cc.vertex2F(_x,_y)\n    return { x = _x, y = _y }\nend\n\n--Vertex3F\nfunction cc.Vertex3F(_x,_y,_z)\n    return { x = _x, y = _y, z = _z }\nend\n\n--Tex2F\nfunction cc.tex2F(_u,_v)\n    return { u = _u, v = _v }\nend\n\n--PointSprite\nfunction cc.PointSprite(_pos,_color,_size)\n    return { pos = _pos, color = _color, size = _size }\nend\n\n--Quad2\nfunction cc.Quad2(_tl,_tr,_bl,_br)\n    return { tl = _tl, tr = _tr, bl = _bl, br = _br }\nend\n\n--Quad3\nfunction cc.Quad3(_tl, _tr, _bl, _br)\n    return { tl = _tl, tr = _tr, bl = _bl, br = _br }\nend\n\n--V2F_C4B_T2F\nfunction cc.V2F_C4B_T2F(_vertices, _colors, _texCoords)\n    return { vertices = _vertices, colors = _colors, texCoords = _texCoords }\nend\n\n--V2F_C4F_T2F\nfunction cc.V2F_C4F_T2F(_vertices, _colors, _texCoords)\n    return { vertices = _vertices, colors = _colors, texCoords = _texCoords }\nend\n\n--V3F_C4B_T2F\nfunction cc.V3F_C4B_T2F(_vertices, _colors, _texCoords)\n    return { vertices = _vertices, colors = _colors, texCoords = _texCoords }\nend\n\n--V2F_C4B_T2F_Quad\nfunction cc.V2F_C4B_T2F_Quad(_bl, _br, _tl, _tr)\n    return { bl = _bl, br = _br, tl = _tl, tr = _tr }\nend\n\n--V3F_C4B_T2F_Quad\nfunction cc.V3F_C4B_T2F_Quad(_tl, _bl, _tr, _br)\n    return { tl = _tl, bl = _bl, tr = _tr, br = _br }\nend\n\n--V2F_C4F_T2F_Quad\nfunction cc.V2F_C4F_T2F_Quad(_bl, _br, _tl, _tr)\n    return { bl = _bl, br = _br, tl = _tl, tr = _tr }\nend\n\n--T2F_Quad\nfunction cc.T2F_Quad(_bl, _br, _tl, _tr)\n    return { bl = _bl, br = _br, tl = _tl, tr = _tr }\nend\n\n--AnimationFrameData\nfunction cc.AnimationFrameData( _texCoords, _delay, _size)\n    return { texCoords = _texCoords, delay = _delay, size = _size }\nend\n\n--PhysicsMaterial\nfunction cc.PhysicsMaterial(_density, _restitution, _friction)\n\treturn { density = _density, restitution = _restitution, friction = _friction }\nend\n\nfunction cc.vec3(_x, _y, _z)\n    return { x = _x, y = _y, z = _z }\nend\n\nfunction cc.vec4(_x, _y, _z, _w)\n    return { x = _x, y = _y, z = _z, w = _w }\nend\n\nfunction cc.vec3normalize(vec3)\n    local n = vec3.x * vec3.x + vec3.y * vec3.y + vec3.z * vec3.z\n    if n == 1.0 then\n        return vec3\n    end\n\n    n = math.sqrt(n)\n\n    if n < 2e-37 then\n        return vec3\n    end\n\n    n = 1.0 / n\n    return {x = vec3.x * n, y = vec3.y * n, z = vec3.z * n}\nend\n\nfunction cc.quaternion(_x, _y ,_z,_w)\n    return { x = _x, y = _y, z = _z, w = _w }\nend\n\ncc.mat4 = cc.mat4 or {}\n\nfunction cc.mat4.new(...)\n    local params = {...}\n    local size   = #params\n\n    local obj = {}\n\n    if 1 == size then\n        assert(type(params[1]) == \"table\" , \"type of input params are wrong to new a mat4 when num of params is 1\")\n        for i= 1, 16 do\n            if params[1][i] ~= nil then\n                obj[i] = params[1][i]\n            else\n                obj[i] = 0\n            end\n        end\n    elseif 16 == size then\n        if params[i] ~= nil then\n            mat4[i] = params[i]\n        else\n            mat4[i] = 0\n        end\n    end\n\n    setmetatable(obj, {__index = cc.mat4})\n\n    return obj\nend\n\nfunction cc.mat4.getInversed(self)\n    return mat4_getInversed(self)\nend\n\nfunction cc.mat4.transformVector(self, vector, dst)\n    return mat4_transformVector(self, vector, dst)\nend\n"
  },
  {
    "path": "源代码/mir9/src/cocos/cocos2d/Cocos2dConstants.lua",
    "content": "\ncc = cc or {}\n\ncc.SPRITE_INDEX_NOT_INITIALIZED = 0xffffffff\ncc.TMX_ORIENTATION_HEX  = 0x1\ncc.TMX_ORIENTATION_ISO  = 0x2\ncc.TMX_ORIENTATION_ORTHO    = 0x0\ncc.Z_COMPRESSION_BZIP2  = 0x1\ncc.Z_COMPRESSION_GZIP   = 0x2\ncc.Z_COMPRESSION_NONE   = 0x3\ncc.Z_COMPRESSION_ZLIB   = 0x0\ncc.BLEND_DST    = 0x303\ncc.BLEND_SRC    = 0x1\ncc.DIRECTOR_IOS_USE_BACKGROUND_THREAD   = 0x0\ncc.DIRECTOR_MAC_THREAD  = 0x0\ncc.DIRECTOR_STATS_INTERVAL  = 0.1\ncc.ENABLE_BOX2_D_INTEGRATION    = 0x0\ncc.ENABLE_DEPRECATED    = 0x1\ncc.ENABLE_GL_STATE_CACHE    = 0x1\ncc.ENABLE_PROFILERS = 0x0\ncc.ENABLE_STACKABLE_ACTIONS = 0x1\ncc.FIX_ARTIFACTS_BY_STRECHING_TEXEL = 0x0\ncc.GL_ALL   = 0x0\ncc.LABELATLAS_DEBUG_DRAW    = 0x0\ncc.LABELBMFONT_DEBUG_DRAW   = 0x0\ncc.MAC_USE_DISPLAY_LINK_THREAD  = 0x0\ncc.MAC_USE_MAIN_THREAD  = 0x2\ncc.MAC_USE_OWN_THREAD   = 0x1\ncc.NODE_RENDER_SUBPIXEL = 0x1\ncc.PVRMIPMAP_MAX    = 0x10\ncc.SPRITEBATCHNODE_RENDER_SUBPIXEL  = 0x1\ncc.SPRITE_DEBUG_DRAW    = 0x0\ncc.TEXTURE_ATLAS_USE_TRIANGLE_STRIP = 0x0\ncc.TEXTURE_ATLAS_USE_VAO    = 0x1\ncc.USE_L_A88_LABELS = 0x1\ncc.ACTION_TAG_INVALID   = -1\ncc.DEVICE_MAC   = 0x6\ncc.DEVICE_MAC_RETINA_DISPLAY    = 0x7\ncc.DEVICEI_PAD  = 0x4\ncc.DEVICEI_PAD_RETINA_DISPLAY   = 0x5\ncc.DEVICEI_PHONE    = 0x0\ncc.DEVICEI_PHONE5   = 0x2\ncc.DEVICEI_PHONE5_RETINA_DISPLAY    = 0x3\ncc.DEVICEI_PHONE_RETINA_DISPLAY = 0x1\ncc.DIRECTOR_PROJECTION2_D   = 0x0\ncc.DIRECTOR_PROJECTION3_D   = 0x1\ncc.DIRECTOR_PROJECTION_CUSTOM   = 0x2\ncc.DIRECTOR_PROJECTION_DEFAULT  = 0x1\ncc.FILE_UTILS_SEARCH_DIRECTORY_MODE = 0x1\ncc.FILE_UTILS_SEARCH_SUFFIX_MODE    = 0x0\ncc.FLIPED_ALL   = 0xe0000000\ncc.FLIPPED_MASK = 0x1fffffff\ncc.IMAGE_FORMAT_JPEG    = 0x0\ncc.IMAGE_FORMAT_PNG = 0x1\ncc.ITEM_SIZE    = 0x20\ncc.LABEL_AUTOMATIC_WIDTH    = -1\ncc.LINE_BREAK_MODE_CHARACTER_WRAP   = 0x1\ncc.LINE_BREAK_MODE_CLIP = 0x2\ncc.LINE_BREAK_MODE_HEAD_TRUNCATION  = 0x3\ncc.LINE_BREAK_MODE_MIDDLE_TRUNCATION    = 0x5\ncc.LINE_BREAK_MODE_TAIL_TRUNCATION  = 0x4\ncc.LINE_BREAK_MODE_WORD_WRAP    = 0x0\ncc.MAC_VERSION_10_6 = 0xa060000\ncc.MAC_VERSION_10_7 = 0xa070000\ncc.MAC_VERSION_10_8 = 0xa080000\ncc.MENU_HANDLER_PRIORITY    = -128\ncc.MENU_STATE_TRACKING_TOUCH    = 0x1\ncc.MENU_STATE_WAITING   = 0x0\ncc.NODE_TAG_INVALID = -1\ncc.PARTICLE_DURATION_INFINITY   = -1\ncc.PARTICLE_MODE_GRAVITY    = 0x0\ncc.PARTICLE_MODE_RADIUS = 0x1\ncc.PARTICLE_START_RADIUS_EQUAL_TO_END_RADIUS    = -1\ncc.PARTICLE_START_SIZE_EQUAL_TO_END_SIZE    = -1\ncc.POSITION_TYPE_FREE   = 0x0\ncc.POSITION_TYPE_GROUPED    = 0x2\ncc.POSITION_TYPE_RELATIVE   = 0x1\ncc.PRIORITY_NON_SYSTEM_MIN  = -2147483647\ncc.PRIORITY_SYSTEM  = -2147483648\ncc.PROGRESS_TIMER_TYPE_BAR  = 0x1\ncc.PROGRESS_TIMER_TYPE_RADIAL   = 0x0\ncc.REPEAT_FOREVER   = 0xfffffffe\ncc.RESOLUTION_MAC   = 0x1\ncc.RESOLUTION_MAC_RETINA_DISPLAY    = 0x2\ncc.RESOLUTION_UNKNOWN   = 0x0\ncc.TMX_TILE_DIAGONAL_FLAG   = 0x20000000\ncc.TMX_TILE_HORIZONTAL_FLAG = 0x80000000\ncc.TMX_TILE_VERTICAL_FLAG   = 0x40000000\ncc.TEXT_ALIGNMENT_CENTER    = 0x1\ncc.TEXT_ALIGNMENT_LEFT  = 0x0\ncc.TEXT_ALIGNMENT_RIGHT = 0x2\n\ncc.TEXTURE2_D_PIXEL_FORMAT_AUTO = 0x0\ncc.TEXTURE2_D_PIXEL_FORMAT_BGR_A8888 = 0x1\ncc.TEXTURE2_D_PIXEL_FORMAT_RGB_A8888 = 0x2\ncc.TEXTURE2_D_PIXEL_FORMAT_RG_B888    = 0x3\ncc.TEXTURE2_D_PIXEL_FORMAT_RG_B565   = 0x4\ncc.TEXTURE2_D_PIXEL_FORMAT_A8        = 0x5\ncc.TEXTURE2_D_PIXEL_FORMAT_I8        = 0x6\ncc.TEXTURE2_D_PIXEL_FORMAT_A_I88     = 0x7\ncc.TEXTURE2_D_PIXEL_FORMAT_RGB_A4444     = 0x8\ncc.TEXTURE2_D_PIXEL_FORMAT_RGB5_A1       = 0x9\ncc.TEXTURE2_D_PIXEL_FORMAT_PVRTC4        = 0xa\ncc.TEXTURE2_D_PIXEL_FORMAT_PVRTC4A       = 0xb\ncc.TEXTURE2_D_PIXEL_FORMAT_PVRTC2        = 0xc\ncc.TEXTURE2_D_PIXEL_FORMAT_PVRTC2A       = 0xd\ncc.TEXTURE2_D_PIXEL_FORMAT_ETC           = 0xe\ncc.TEXTURE2_D_PIXEL_FORMAT_S3TC_DXT1     = 0xf\ncc.TEXTURE2_D_PIXEL_FORMAT_S3TC_DXT3     = 0x10\ncc.TEXTURE2_D_PIXEL_FORMAT_S3TC_DXT5     = 0x11\ncc.TEXTURE2_D_PIXEL_FORMAT_DEFAULT       = 0x0\ncc.TOUCHES_ALL_AT_ONCE  = 0x0\ncc.TOUCHES_ONE_BY_ONE   = 0x1\ncc.TRANSITION_ORIENTATION_DOWN_OVER = 0x1\ncc.TRANSITION_ORIENTATION_LEFT_OVER = 0x0\ncc.TRANSITION_ORIENTATION_RIGHT_OVER    = 0x1\ncc.TRANSITION_ORIENTATION_UP_OVER   = 0x0\ncc.UNIFORM_COS_TIME = 0x5\ncc.UNIFORM_MV_MATRIX    = 0x1\ncc.UNIFORM_MVP_MATRIX   = 0x2\ncc.UNIFORM_P_MATRIX = 0x0\ncc.UNIFORM_RANDOM01 = 0x6\ncc.UNIFORM_SAMPLER  = 0x7\ncc.UNIFORM_SIN_TIME = 0x4\ncc.UNIFORM_TIME = 0x3\ncc.UNIFORM_MAX  = 0x8\ncc.VERTEX_ATTRIB_FLAG_COLOR = 0x2\ncc.VERTEX_ATTRIB_FLAG_NONE  = 0x0\ncc.VERTEX_ATTRIB_FLAG_POS_COLOR_TEX = 0x7\ncc.VERTEX_ATTRIB_FLAG_POSITION  = 0x1\ncc.VERTEX_ATTRIB_FLAG_TEX_COORDS    = 0x4\ncc.VERTEX_ATTRIB_COLOR  = 0x1\ncc.VERTEX_ATTRIB_MAX    = 0x3\ncc.VERTEX_ATTRIB_POSITION   = 0x0\ncc.VERTEX_ATTRIB_TEX_COORD = 0x2\n\ncc.VERTEX_ATTRIB_TEX_COORDS = 0x2\ncc.VERTICAL_TEXT_ALIGNMENT_BOTTOM   = 0x2\ncc.VERTICAL_TEXT_ALIGNMENT_CENTER   = 0x1\ncc.VERTICAL_TEXT_ALIGNMENT_TOP  = 0x0\ncc.OS_VERSION_4_0   = 0x4000000\ncc.OS_VERSION_4_0_1 = 0x4000100\ncc.OS_VERSION_4_1   = 0x4010000\ncc.OS_VERSION_4_2   = 0x4020000\ncc.OS_VERSION_4_2_1 = 0x4020100\ncc.OS_VERSION_4_3   = 0x4030000\ncc.OS_VERSION_4_3_1 = 0x4030100\ncc.OS_VERSION_4_3_2 = 0x4030200\ncc.OS_VERSION_4_3_3 = 0x4030300\ncc.OS_VERSION_4_3_4 = 0x4030400\ncc.OS_VERSION_4_3_5 = 0x4030500\ncc.OS_VERSION_5_0   = 0x5000000\ncc.OS_VERSION_5_0_1 = 0x5000100\ncc.OS_VERSION_5_1_0 = 0x5010000\ncc.OS_VERSION_6_0_0 = 0x6000000\ncc.ANIMATION_FRAME_DISPLAYED_NOTIFICATION   = 'CCAnimationFrameDisplayedNotification'\ncc.CHIPMUNK_IMPORT  = 'chipmunk.h'\ncc.ATTRIBUTE_NAME_COLOR = 'a_color'\ncc.ATTRIBUTE_NAME_POSITION  = 'a_position'\ncc.ATTRIBUTE_NAME_TEX_COORD = 'a_texCoord'\ncc.SHADER_POSITION_COLOR    = 'ShaderPositionColor'\ncc.SHADER_POSITION_LENGTH_TEXURE_COLOR  = 'ShaderPositionLengthTextureColor'\ncc.SHADER_POSITION_TEXTURE  = 'ShaderPositionTexture'\ncc.SHADER_POSITION_TEXTURE_A8_COLOR = 'ShaderPositionTextureA8Color'\ncc.SHADER_POSITION_TEXTURE_COLOR    = 'ShaderPositionTextureColor'\ncc.SHADER_POSITION_TEXTURE_COLOR_ALPHA_TEST = 'ShaderPositionTextureColorAlphaTest'\ncc.SHADER_POSITION_TEXTURE_U_COLOR  = 'ShaderPositionTexture_uColor'\ncc.SHADER_POSITION_U_COLOR  = 'ShaderPosition_uColor'\ncc.UNIFORM_ALPHA_TEST_VALUE_S   = 'CC_AlphaValue'\ncc.UNIFORM_COS_TIME_S   = 'CC_CosTime'\ncc.UNIFORM_MV_MATRIX_S  = 'CC_MVMatrix'\ncc.UNIFORM_MVP_MATRIX_S = 'CC_MVPMatrix'\ncc.UNIFORM_P_MATRIX_S   = 'CC_PMatrix'\ncc.UNIFORM_RANDOM01_S   = 'CC_Random01'\ncc.UNIFORM_SAMPLER_S    = 'CC_Texture0'\ncc.UNIFORM_SIN_TIME_S   = 'CC_SinTime'\ncc.UNIFORM_TIME_S   = 'CC_Time'\n\ncc.PLATFORM_OS_WINDOWS = 0\ncc.PLATFORM_OS_LINUX   = 1\ncc.PLATFORM_OS_MAC     = 2\ncc.PLATFORM_OS_ANDROID = 3\ncc.PLATFORM_OS_IPHONE  = 4\ncc.PLATFORM_OS_IPAD    = 5\ncc.PLATFORM_OS_BLACKBERRY = 6\ncc.PLATFORM_OS_NACL    = 7\ncc.PLATFORM_OS_EMSCRIPTEN = 8\ncc.PLATFORM_OS_TIZEN   = 9\ncc.PLATFORM_OS_WINRT   = 10\ncc.PLATFORM_OS_WP8     = 11\n\ncc.LANGUAGE_ENGLISH    = 0\ncc.LANGUAGE_CHINESE    = 1\ncc.LANGUAGE_FRENCH     = 2\ncc.LANGUAGE_ITALIAN    = 3\ncc.LANGUAGE_GERMAN     = 4\ncc.LANGUAGE_SPANISH    = 5\ncc.LANGUAGE_RUSSIAN    = 6\ncc.LANGUAGE_KOREAN     = 7\ncc.LANGUAGE_JAPANESE   = 8\ncc.LANGUAGE_HUNGARIAN  = 9\ncc.LANGUAGE_PORTUGUESE = 10\ncc.LANGUAGE_ARABIC     = 11\n\ncc.NODE_ON_ENTER       = 0\ncc.NODE_ON_EXIT        = 1\ncc.NODE_ON_ENTER_TRANSITION_DID_FINISH = 2\ncc.NODE_ON_EXIT_TRANSITION_DID_START   = 3\ncc.NODE_ON_CLEAN_UP    = 4\n\ncc.Handler = cc.Handler or {}\ncc.Handler.NODE            = 0\ncc.Handler.MENU_CLICKED    = 1\ncc.Handler.CALLFUNC        = 2\ncc.Handler.SCHEDULE        = 3\ncc.Handler.TOUCHES         = 4\ncc.Handler.KEYPAD          = 5\ncc.Handler.ACCELEROMETER   = 6\ncc.Handler.CONTROL_TOUCH_DOWN = 7\ncc.Handler.CONTROL_TOUCH_DRAG_INSIDE = 8\ncc.Handler.CONTROL_TOUCH_DRAG_OUTSIDE = 9\ncc.Handler.CONTROL_TOUCH_DRAG_ENTER = 10\ncc.Handler.CONTROL_TOUCH_DRAG_EXIT  = 11\ncc.Handler.CONTROL_TOUCH_UP_INSIDE  = 12\ncc.Handler.CONTROL_TOUCH_UP_OUTSIDE = 13\ncc.Handler.CONTROL_TOUCH_UP_CANCEL  = 14\ncc.Handler.CONTROL_VALUE_CHANGED    = 15\ncc.Handler.WEBSOCKET_OPEN           = 16\ncc.Handler.WEBSOCKET_MESSAGE        = 17\ncc.Handler.WEBSOCKET_CLOSE          = 18\ncc.Handler.WEBSOCKET_ERROR          = 19\ncc.Handler.GL_NODE_DRAW             = 20\ncc.Handler.SCROLLVIEW_SCROLL        = 21\ncc.Handler.SCROLLVIEW_ZOOM          = 22\ncc.Handler.TABLECELL_TOUCHED        = 23\ncc.Handler.TABLECELL_HIGHLIGHT      = 24\ncc.Handler.TABLECELL_UNHIGHLIGHT    = 25\ncc.Handler.TABLECELL_WILL_RECYCLE   = 26\ncc.Handler.TABLECELL_SIZE_FOR_INDEX = 27\ncc.Handler.TABLECELL_AT_INDEX       = 28\ncc.Handler.TABLEVIEW_NUMS_OF_CELLS  = 29\ncc.Handler.HTTPREQUEST_STATE_CHANGE = 30\ncc.Handler.ASSETSMANAGER_PROGRESS = 31\ncc.Handler.ASSETSMANAGER_SUCCESS  = 32\ncc.Handler.ASSETSMANAGER_ERROR    = 33\ncc.Handler.STUDIO_EVENT_LISTENER  = 34\ncc.Handler.ARMATURE_EVENT         = 35\ncc.Handler.EVENT_ACC              = 36\ncc.Handler.EVENT_CUSTIOM          = 37\ncc.Handler.EVENT_KEYBOARD_PRESSED = 38\ncc.Handler.EVENT_KEYBOARD_RELEASED = 39\ncc.Handler.EVENT_TOUCH_BEGAN      = 40\ncc.Handler.EVENT_TOUCH_MOVED      = 41\ncc.Handler.EVENT_TOUCH_ENDED      = 42\ncc.Handler.EVENT_TOUCH_CANCELLED  = 43\ncc.Handler.EVENT_TOUCHES_BEGAN    = 44\ncc.Handler.EVENT_TOUCHES_MOVED    = 45\ncc.Handler.EVENT_TOUCHES_ENDED    = 46\ncc.Handler.EVENT_TOUCHES_CANCELLED = 47\ncc.Handler.EVENT_MOUSE_DOWN       = 48\ncc.Handler.EVENT_MOUSE_UP         = 49\ncc.Handler.EVENT_MOUSE_MOVE       = 50\ncc.Handler.EVENT_MOUSE_SCROLL     = 51\ncc.Handler.EVENT_SPINE            = 52\ncc.Handler.EVENT_PHYSICS_CONTACT_BEGIN = 53\ncc.Handler.EVENT_PHYSICS_CONTACT_PRESOLVE = 54\ncc.Handler.EVENT_PHYSICS_CONTACT_POSTSOLVE = 55\ncc.Handler.EVENT_PHYSICS_CONTACT_SEPERATE = 56\ncc.Handler.EVENT_FOCUS = 57\ncc.Handler.EVENT_CONTROLLER_CONNECTED = 58\ncc.Handler.EVENT_CONTROLLER_DISCONNECTED = 59\ncc.Handler.EVENT_CONTROLLER_KEYDOWN = 60\ncc.Handler.EVENT_CONTROLLER_KEYUP = 61\ncc.Handler.EVENT_CONTROLLER_KEYREPEAT = 62\ncc.Handler.EVENT_CONTROLLER_AXIS = 63\ncc.Handler.EVENT_SPINE_ANIMATION_START = 64\ncc.Handler.EVENT_SPINE_ANIMATION_END = 65\ncc.Handler.EVENT_SPINE_ANIMATION_COMPLETE = 66\ncc.Handler.EVENT_SPINE_ANIMATION_EVENT = 67\n\n\ncc.EVENT_UNKNOWN = 0\ncc.EVENT_TOUCH_ONE_BY_ONE      = 1\ncc.EVENT_TOUCH_ALL_AT_ONCE     = 2\ncc.EVENT_KEYBOARD              = 3\ncc.EVENT_MOUSE                 = 4\ncc.EVENT_ACCELERATION          = 5\ncc.EVENT_CUSTOM                = 6\n\ncc.PHYSICSSHAPE_MATERIAL_DEFAULT = {density = 0.0, restitution = 0.5, friction = 0.5}\ncc.PHYSICSBODY_MATERIAL_DEFAULT = {density = 0.1, restitution = 0.5, friction = 0.5}\ncc.GLYPHCOLLECTION_DYNAMIC = 0\ncc.GLYPHCOLLECTION_NEHE    = 1\ncc.GLYPHCOLLECTION_ASCII   = 2\ncc.GLYPHCOLLECTION_CUSTOM  = 3\n\ncc.ResolutionPolicy =\n{\n    EXACT_FIT = 0,\n    NO_BORDER = 1,\n    SHOW_ALL  = 2,\n    FIXED_HEIGHT  = 3,\n    FIXED_WIDTH  = 4,\n    UNKNOWN  = 5,\n}\n\ncc.LabelEffect =\n{\n    NORMAL  = 0,\n    OUTLINE = 1,\n    SHADOW  = 2,\n    GLOW    = 3,\n}\n\ncc.KeyCodeKey =\n{\n    \"KEY_NONE\",\n    \"KEY_PAUSE\",\n    \"KEY_SCROLL_LOCK\",\n    \"KEY_PRINT\",\n    \"KEY_SYSREQ\",\n    \"KEY_BREAK\",\n    \"KEY_ESCAPE\",\n    \"KEY_BACKSPACE\",\n    \"KEY_TAB\",\n    \"KEY_BACK_TAB\",\n    \"KEY_RETURN\",\n    \"KEY_CAPS_LOCK\",\n    \"KEY_SHIFT\",\n    \"KEY_CTRL\",\n    \"KEY_ALT\",\n    \"KEY_MENU\",\n    \"KEY_HYPER\",\n    \"KEY_INSERT\",\n    \"KEY_HOME\",\n    \"KEY_PG_UP\",\n    \"KEY_DELETE\",\n    \"KEY_END\",\n    \"KEY_PG_DOWN\",\n    \"KEY_LEFT_ARROW\",\n    \"KEY_RIGHT_ARROW\",\n    \"KEY_UP_ARROW\",\n    \"KEY_DOWN_ARROW\",\n    \"KEY_NUM_LOCK\",\n    \"KEY_KP_PLUS\",\n    \"KEY_KP_MINUS\",\n    \"KEY_KP_MULTIPLY\",\n    \"KEY_KP_DIVIDE\",\n    \"KEY_KP_ENTER\",\n    \"KEY_KP_HOME\",\n    \"KEY_KP_UP\",\n    \"KEY_KP_PG_UP\",\n    \"KEY_KP_LEFT\",\n    \"KEY_KP_FIVE\",\n    \"KEY_KP_RIGHT\",\n    \"KEY_KP_END\",\n    \"KEY_KP_DOWN\",\n    \"KEY_KP_PG_DOWN\",\n    \"KEY_KP_INSERT\",\n    \"KEY_KP_DELETE\",\n    \"KEY_F1\",\n    \"KEY_F2\",\n    \"KEY_F3\",\n    \"KEY_F4\",\n    \"KEY_F5\",\n    \"KEY_F6\",\n    \"KEY_F7\",\n    \"KEY_F8\",\n    \"KEY_F9\",\n    \"KEY_F10\",\n    \"KEY_F11\",\n    \"KEY_F12\",\n    \"KEY_SPACE\",\n    \"KEY_EXCLAM\",\n    \"KEY_QUOTE\",\n    \"KEY_NUMBER\",\n    \"KEY_DOLLAR\",\n    \"KEY_PERCENT\",\n    \"KEY_CIRCUMFLEX\",\n    \"KEY_AMPERSAND\",\n    \"KEY_APOSTROPHE\",\n    \"KEY_LEFT_PARENTHESIS\",\n    \"KEY_RIGHT_PARENTHESIS\",\n    \"KEY_ASTERISK\",\n    \"KEY_PLUS\",\n    \"KEY_COMMA\",\n    \"KEY_MINUS\",\n    \"KEY_PERIOD\",\n    \"KEY_SLASH\",\n    \"KEY_0\",\n    \"KEY_1\",\n    \"KEY_2\",\n    \"KEY_3\",\n    \"KEY_4\",\n    \"KEY_5\",\n    \"KEY_6\",\n    \"KEY_7\",\n    \"KEY_8\",\n    \"KEY_9\",\n    \"KEY_COLON\",\n    \"KEY_SEMICOLON\",\n    \"KEY_LESS_THAN\",\n    \"KEY_EQUAL\",\n    \"KEY_GREATER_THAN\",\n    \"KEY_QUESTION\",\n    \"KEY_AT\",\n    \"KEY_CAPITAL_A\",\n    \"KEY_CAPITAL_B\",\n    \"KEY_CAPITAL_C\",\n    \"KEY_CAPITAL_D\",\n    \"KEY_CAPITAL_E\",\n    \"KEY_CAPITAL_F\",\n    \"KEY_CAPITAL_G\",\n    \"KEY_CAPITAL_H\",\n    \"KEY_CAPITAL_I\",\n    \"KEY_CAPITAL_J\",\n    \"KEY_CAPITAL_K\",\n    \"KEY_CAPITAL_L\",\n    \"KEY_CAPITAL_M\",\n    \"KEY_CAPITAL_N\",\n    \"KEY_CAPITAL_O\",\n    \"KEY_CAPITAL_P\",\n    \"KEY_CAPITAL_Q\",\n    \"KEY_CAPITAL_R\",\n    \"KEY_CAPITAL_S\",\n    \"KEY_CAPITAL_T\",\n    \"KEY_CAPITAL_U\",\n    \"KEY_CAPITAL_V\",\n    \"KEY_CAPITAL_W\",\n    \"KEY_CAPITAL_X\",\n    \"KEY_CAPITAL_Y\",\n    \"KEY_CAPITAL_Z\",\n    \"KEY_LEFT_BRACKET\",\n    \"KEY_BACK_SLASH\",\n    \"KEY_RIGHT_BRACKET\",\n    \"KEY_UNDERSCORE\",\n    \"KEY_GRAVE\",\n    \"KEY_A\",\n    \"KEY_B\",\n    \"KEY_C\",\n    \"KEY_D\",\n    \"KEY_E\",\n    \"KEY_F\",\n    \"KEY_G\",\n    \"KEY_H\",\n    \"KEY_I\",\n    \"KEY_J\",\n    \"KEY_K\",\n    \"KEY_L\",\n    \"KEY_M\",\n    \"KEY_N\",\n    \"KEY_O\",\n    \"KEY_P\",\n    \"KEY_Q\",\n    \"KEY_R\",\n    \"KEY_S\",\n    \"KEY_T\",\n    \"KEY_U\",\n    \"KEY_V\",\n    \"KEY_W\",\n    \"KEY_X\",\n    \"KEY_Y\",\n    \"KEY_Z\",\n    \"KEY_LEFT_BRACE\",\n    \"KEY_BAR\",\n    \"KEY_RIGHT_BRACE\",\n    \"KEY_TILDE\",\n    \"KEY_EURO\",\n    \"KEY_POUND\",\n    \"KEY_YEN\",\n    \"KEY_MIDDLE_DOT\",\n    \"KEY_SEARCH\",\n    \"KEY_DPAD_LEFT\",\n    \"KEY_DPAD_RIGHT\",\n    \"KEY_DPAD_UP\",\n    \"KEY_DPAD_DOWN\",\n    \"KEY_DPAD_CENTER\",\n    \"KEY_ENTER\",\n    \"KEY_PLAY\",\n}\n\ncc.KeyCode =\n{\n}\n\nfor k,v in ipairs(cc.KeyCodeKey) do\n    cc.KeyCode[v] = k - 1\nend\n\ncc.KeyCode.KEY_BACK = cc.KeyCode.KEY_ESCAPE\n\ncc.EventAssetsManagerEx =\n{\n    EventCode = \n    {\n        ERROR_NO_LOCAL_MANIFEST = 0,\n        ERROR_DOWNLOAD_MANIFEST = 1,\n        ERROR_PARSE_MANIFEST = 2,\n        NEW_VERSION_FOUND = 3,\n        ALREADY_UP_TO_DATE = 4,\n        UPDATE_PROGRESSION = 5,\n        ASSET_UPDATED = 6,\n        ERROR_UPDATING = 7,\n        UPDATE_FINISHED = 8,\n    },\n}\n\ncc.AssetsManagerExStatic =\n{\n    VERSION_ID  = \"@version\",\n    MANIFEST_ID = \"@manifest\",\n}\n\ncc.EventCode =\n{\n    BEGAN = 0,\n    MOVED = 1,\n    ENDED = 2,\n    CANCELLED = 3,\n}\n\ncc.DIRECTOR_PROJECTION_2D = 0\ncc.DIRECTOR_PROJECTION_3D = 1\n\ncc.ConfigType =\n{\n    NONE = 0,\n    COCOSTUDIO = 1,\n}\n\ncc.AUDIO_INVAILD_ID   = -1\ncc.AUDIO_TIME_UNKNOWN  = -1.0\n\ncc.CameraFlag =\n{\n    DEFAULT = 1,\n    USER1 = 2,\n    USER2 = 4,\n    USER3 = 8,\n    USER4 = 16,\n    USER5 = 32,\n    USER6 = 64,\n    USER7 = 128,\n    USER8 = 256,\n}\n\ncc.BillBoard_Mode =\n{\n    VIEW_POINT_ORIENTED = 0,\n    VIEW_PLANE_ORIENTED = 1,\n}\n\ncc.GLProgram_VERTEX_ATTRIB =\n{\n    POSITION = 0,\n    COLOR = 1,\n    TEX_COORD = 2,\n    TEX_COORD1 = 3,\n    TEX_COORD2 = 4,\n    TEX_COORD3 = 5,\n    TEX_COORD4 = 6,\n    TEX_COORD5 = 7,\n    TEX_COORD6 = 8,\n    TEX_COORD7 = 9,\n    NORMAL = 10,\n    BLEND_WEIGHT = 11,\n    BLEND_INDEX =12,\n    MAX = 13,\n    --backward compatibility\n    TEX_COORDS = 2,\n}\n\ncc.MATRIX_STACK_TYPE =\n{\n    MODELVIEW = 0,\n    PROJECTION = 1,\n    TEXTURE = 2,\n}\n\ncc.LightType = \n{\n    DIRECTIONAL = 0,\n    POINT = 1,\n    SPOT = 2,\n    AMBIENT = 3,\n}\n\ncc.LightFlag = \n{\n    LIGHT0  = math.pow(2,0),\n    LIGHT1  = math.pow(2,1),\n    LIGHT2  = math.pow(2,2),\n    LIGHT3  = math.pow(2,3),\n    LIGHT4  = math.pow(2,4),\n    LIGHT5  = math.pow(2,5),\n    LIGHT6  = math.pow(2,6),\n    LIGHT7  = math.pow(2,7),\n    LIGHT8  = math.pow(2,8),\n    LIGHT9  = math.pow(2,9),\n    LIGHT10 = math.pow(2,10),\n    LIGHT11 = math.pow(2,11),\n    LIGHT12 = math.pow(2,12),\n    LIGHT13 = math.pow(2,13),\n    LIGHT14 = math.pow(2,14),\n    LIGHT15 = math.pow(2,15),\n}\n"
  },
  {
    "path": "源代码/mir9/src/cocos/cocos2d/DeprecatedCocos2dClass.lua",
    "content": "-- This is the DeprecatedClass\n\nDeprecatedClass = {} or DeprecatedClass\n\n--tip\nlocal function deprecatedTip(old_name,new_name)\n    print(\"\\n********** \\n\"..old_name..\" was deprecated please use \".. new_name .. \" instead.\\n**********\")\nend\n\n--CCProgressTo class will be Deprecated,begin\nfunction DeprecatedClass.CCProgressTo()\n    deprecatedTip(\"CCProgressTo\",\"cc.ProgressTo\")\n    return cc.ProgressTo\nend\n_G[\"CCProgressTo\"] = DeprecatedClass.CCProgressTo()\n--CCProgressTo class will be Deprecated,end\n\n--CCHide class will be Deprecated,begin\nfunction DeprecatedClass.CCHide()\n    deprecatedTip(\"CCHide\",\"cc.Hide\")\n    return cc.Hide\nend\n_G[\"CCHide\"] = DeprecatedClass.CCHide()\n--CCHide class will be Deprecated,end\n\n--CCTransitionMoveInB class will be Deprecated,begin\nfunction DeprecatedClass.CCTransitionMoveInB()\n    deprecatedTip(\"CCTransitionMoveInB\",\"cc.TransitionMoveInB\")\n    return cc.TransitionMoveInB\nend\n_G[\"CCTransitionMoveInB\"] = DeprecatedClass.CCTransitionMoveInB()\n--CCTransitionMoveInB class will be Deprecated,end\n\n--CCEaseSineIn class will be Deprecated,begin\nfunction DeprecatedClass.CCEaseSineIn()\n    deprecatedTip(\"CCEaseSineIn\",\"cc.EaseSineIn\")\n    return cc.EaseSineIn\nend\n_G[\"CCEaseSineIn\"] = DeprecatedClass.CCEaseSineIn()\n--CCEaseSineIn class will be Deprecated,end\n\n--CCTransitionMoveInL class will be Deprecated,begin\nfunction DeprecatedClass.CCTransitionMoveInL()\n    deprecatedTip(\"CCTransitionMoveInL\",\"cc.TransitionMoveInL\")\n    return cc.TransitionMoveInL\nend\n_G[\"CCTransitionMoveInL\"] = DeprecatedClass.CCTransitionMoveInL()\n--CCTransitionMoveInL class will be Deprecated,end\n\n--CCEaseInOut class will be Deprecated,begin\nfunction DeprecatedClass.CCEaseInOut()\n    deprecatedTip(\"CCEaseInOut\",\"cc.EaseInOut\")\n    return cc.EaseInOut\nend\n_G[\"CCEaseInOut\"] = DeprecatedClass.CCEaseInOut()\n--CCEaseInOut class will be Deprecated,end\n\n--CCTransitionMoveInT class will be Deprecated,begin\nfunction DeprecatedClass.CCTransitionMoveInT()\n    deprecatedTip(\"CCTransitionMoveInT\",\"cc.TransitionMoveInT\")\n    return cc.TransitionMoveInT\nend\n_G[\"CCTransitionMoveInT\"] = DeprecatedClass.CCTransitionMoveInT()\n--CCTransitionMoveInT class will be Deprecated,end\n\n--CCTransitionMoveInR class will be Deprecated,begin\nfunction DeprecatedClass.CCTransitionMoveInR()\n    deprecatedTip(\"CCTransitionMoveInR\",\"cc.TransitionMoveInR\")\n    return cc.TransitionMoveInR\nend\n_G[\"CCTransitionMoveInR\"] = DeprecatedClass.CCTransitionMoveInR()\n--CCTransitionMoveInR class will be Deprecated,end\n\n--CCParticleSnow class will be Deprecated,begin\nfunction DeprecatedClass.CCParticleSnow()\n    deprecatedTip(\"CCParticleSnow\",\"cc.ParticleSnow\")\n    return cc.ParticleSnow\nend\n_G[\"CCParticleSnow\"] = DeprecatedClass.CCParticleSnow()\n--CCParticleSnow class will be Deprecated,end\n\n--CCActionCamera class will be Deprecated,begin\nfunction DeprecatedClass.CCActionCamera()\n    deprecatedTip(\"CCActionCamera\",\"cc.ActionCamera\")\n    return cc.ActionCamera\nend\n_G[\"CCActionCamera\"] = DeprecatedClass.CCActionCamera()\n--CCActionCamera class will be Deprecated,end\n\n--CCProgressFromTo class will be Deprecated,begin\nfunction DeprecatedClass.CCProgressFromTo()\n    deprecatedTip(\"CCProgressFromTo\",\"cc.ProgressFromTo\")\n    return cc.ProgressFromTo\nend\n_G[\"CCProgressFromTo\"] = DeprecatedClass.CCProgressFromTo()\n--CCProgressFromTo class will be Deprecated,end\n\n--CCMoveTo class will be Deprecated,begin\nfunction DeprecatedClass.CCMoveTo()\n    deprecatedTip(\"CCMoveTo\",\"cc.MoveTo\")\n    return cc.MoveTo\nend\n_G[\"CCMoveTo\"] = DeprecatedClass.CCMoveTo()\n--CCMoveTo class will be Deprecated,end\n\n--CCJumpBy class will be Deprecated,begin\nfunction DeprecatedClass.CCJumpBy()\n    deprecatedTip(\"CCJumpBy\",\"cc.JumpBy\")\n    return cc.JumpBy\nend\n_G[\"CCJumpBy\"] = DeprecatedClass.CCJumpBy()\n--CCJumpBy class will be Deprecated,end\n\n--CCObject class will be Deprecated,begin\nfunction DeprecatedClass.CCObject()\n    deprecatedTip(\"CCObject\",\"cc.Object\")\n    return cc.Object\nend\n_G[\"CCObject\"] = DeprecatedClass.CCObject()\n--CCObject class will be Deprecated,end\n\n--CCTransitionRotoZoom class will be Deprecated,begin\nfunction DeprecatedClass.CCTransitionRotoZoom()\n    deprecatedTip(\"CCTransitionRotoZoom\",\"cc.TransitionRotoZoom\")\n    return cc.TransitionRotoZoom\nend\n_G[\"CCTransitionRotoZoom\"] = DeprecatedClass.CCTransitionRotoZoom()\n--CCTransitionRotoZoom class will be Deprecated,end\n\n--CCDirector class will be Deprecated,begin\nfunction DeprecatedClass.CCDirector()\n    deprecatedTip(\"CCDirector\",\"cc.Director\")\n    return cc.Director\nend\n_G[\"CCDirector\"] = DeprecatedClass.CCDirector()\n--CCDirector class will be Deprecated,end\n\n--CCScheduler class will be Deprecated,begin\nfunction DeprecatedClass.CCScheduler()\n    deprecatedTip(\"CCScheduler\",\"cc.Scheduler\")\n    return cc.Scheduler\nend\n_G[\"CCScheduler\"] = DeprecatedClass.CCScheduler()\n--CCScheduler class will be Deprecated,end\n\n--CCEaseElasticOut class will be Deprecated,begin\nfunction DeprecatedClass.CCEaseElasticOut()\n    deprecatedTip(\"CCEaseElasticOut\",\"cc.EaseElasticOut\")\n    return cc.EaseElasticOut\nend\n_G[\"CCEaseElasticOut\"] = DeprecatedClass.CCEaseElasticOut()\n--CCEaseElasticOut class will be Deprecated,end\n\n--CCTableViewCell class will be Deprecated,begin\nfunction DeprecatedClass.CCTableViewCell()\n    deprecatedTip(\"CCTableViewCell\",\"cc.TableViewCell\")\n    return cc.TableViewCell\nend\n_G[\"CCTableViewCell\"] = DeprecatedClass.CCTableViewCell()\n--CCTableViewCell class will be Deprecated,end\n\n\n--CCEaseBackOut class will be Deprecated,begin\nfunction DeprecatedClass.CCEaseBackOut()\n    deprecatedTip(\"CCEaseBackOut\",\"cc.EaseBackOut\")\n    return cc.EaseBackOut\nend\n_G[\"CCEaseBackOut\"] = DeprecatedClass.CCEaseBackOut()\n--CCEaseBackOut class will be Deprecated,end\n\n--CCParticleSystemQuad class will be Deprecated,begin\nfunction DeprecatedClass.CCParticleSystemQuad()\n    deprecatedTip(\"CCParticleSystemQuad\",\"cc.ParticleSystemQuad\")\n    return cc.ParticleSystemQuad\nend\n_G[\"CCParticleSystemQuad\"] = DeprecatedClass.CCParticleSystemQuad()\n--CCParticleSystemQuad class will be Deprecated,end\n\n--CCMenuItemToggle class will be Deprecated,begin\nfunction DeprecatedClass.CCMenuItemToggle()\n    deprecatedTip(\"CCMenuItemToggle\",\"cc.MenuItemToggle\")\n    return cc.MenuItemToggle\nend\n_G[\"CCMenuItemToggle\"] = DeprecatedClass.CCMenuItemToggle()\n--CCMenuItemToggle class will be Deprecated,end\n\n--CCStopGrid class will be Deprecated,begin\nfunction DeprecatedClass.CCStopGrid()\n    deprecatedTip(\"CCStopGrid\",\"cc.StopGrid\")\n    return cc.StopGrid\nend\n_G[\"CCStopGrid\"] = DeprecatedClass.CCStopGrid()\n--CCStopGrid class will be Deprecated,end\n\n--CCTransitionScene class will be Deprecated,begin\nfunction DeprecatedClass.CCTransitionScene()\n    deprecatedTip(\"CCTransitionScene\",\"cc.TransitionScene\")\n    return cc.TransitionScene\nend\n_G[\"CCTransitionScene\"] = DeprecatedClass.CCTransitionScene()\n--CCTransitionScene class will be Deprecated,end\n\n--CCSkewBy class will be Deprecated,begin\nfunction DeprecatedClass.CCSkewBy()\n    deprecatedTip(\"CCSkewBy\",\"cc.SkewBy\")\n    return cc.SkewBy\nend\n_G[\"CCSkewBy\"] = DeprecatedClass.CCSkewBy()\n--CCSkewBy class will be Deprecated,end\n\n--CCLayer class will be Deprecated,begin\nfunction DeprecatedClass.CCLayer()\n    deprecatedTip(\"CCLayer\",\"cc.Layer\")\n    return cc.Layer\nend\n_G[\"CCLayer\"] = DeprecatedClass.CCLayer()\n--CCLayer class will be Deprecated,end\n\n--CCEaseElastic class will be Deprecated,begin\nfunction DeprecatedClass.CCEaseElastic()\n    deprecatedTip(\"CCEaseElastic\",\"cc.EaseElastic\")\n    return cc.EaseElastic\nend\n_G[\"CCEaseElastic\"] = DeprecatedClass.CCEaseElastic()\n--CCEaseElastic class will be Deprecated,end\n\n--CCTMXTiledMap class will be Deprecated,begin\nfunction DeprecatedClass.CCTMXTiledMap()\n    deprecatedTip(\"CCTMXTiledMap\",\"cc.TMXTiledMap\")\n    return cc.TMXTiledMap\nend\n_G[\"CCTMXTiledMap\"] = DeprecatedClass.CCTMXTiledMap()\n--CCTMXTiledMap class will be Deprecated,end\n\n--CCGrid3DAction class will be Deprecated,begin\nfunction DeprecatedClass.CCGrid3DAction()\n    deprecatedTip(\"CCGrid3DAction\",\"cc.Grid3DAction\")\n    return cc.Grid3DAction\nend\n_G[\"CCGrid3DAction\"] = DeprecatedClass.CCGrid3DAction()\n--CCGrid3DAction class will be Deprecated,end\n\n--CCFadeIn class will be Deprecated,begin\nfunction DeprecatedClass.CCFadeIn()\n    deprecatedTip(\"CCFadeIn\",\"cc.FadeIn\")\n    return cc.FadeIn\nend\n_G[\"CCFadeIn\"] = DeprecatedClass.CCFadeIn()\n--CCFadeIn class will be Deprecated,end\n\n--CCNodeRGBA class will be Deprecated,begin\nfunction DeprecatedClass.CCNodeRGBA()\n    deprecatedTip(\"CCNodeRGBA\",\"cc.Node\")\n    return cc.Node\nend\n_G[\"CCNodeRGBA\"] = DeprecatedClass.CCNodeRGBA()\n--CCNodeRGBA class will be Deprecated,end\n\n--NodeRGBA class will be Deprecated,begin\nfunction DeprecatedClass.NodeRGBA()\n    deprecatedTip(\"cc.NodeRGBA\",\"cc.Node\")\n    return cc.Node\nend\n_G[\"cc\"][\"NodeRGBA\"] = DeprecatedClass.NodeRGBA()\n--NodeRGBA class will be Deprecated,end\n\n--CCAnimationCache class will be Deprecated,begin\nfunction DeprecatedClass.CCAnimationCache()\n    deprecatedTip(\"CCAnimationCache\",\"cc.AnimationCache\")\n    return cc.AnimationCache\nend\n_G[\"CCAnimationCache\"] = DeprecatedClass.CCAnimationCache()\n--CCAnimationCache class will be Deprecated,end\n\n--CCFlipY3D class will be Deprecated,begin\nfunction DeprecatedClass.CCFlipY3D()\n    deprecatedTip(\"CCFlipY3D\",\"cc.FlipY3D\")\n    return cc.FlipY3D\nend\n_G[\"CCFlipY3D\"] = DeprecatedClass.CCFlipY3D()\n--CCFlipY3D class will be Deprecated,end\n\n--CCEaseSineInOut class will be Deprecated,begin\nfunction DeprecatedClass.CCEaseSineInOut()\n    deprecatedTip(\"CCEaseSineInOut\",\"cc.EaseSineInOut\")\n    return cc.EaseSineInOut\nend\n_G[\"CCEaseSineInOut\"] = DeprecatedClass.CCEaseSineInOut()\n--CCEaseSineInOut class will be Deprecated,end\n\n--CCTransitionFlipAngular class will be Deprecated,begin\nfunction DeprecatedClass.CCTransitionFlipAngular()\n    deprecatedTip(\"CCTransitionFlipAngular\",\"cc.TransitionFlipAngular\")\n    return cc.TransitionFlipAngular\nend\n_G[\"CCTransitionFlipAngular\"] = DeprecatedClass.CCTransitionFlipAngular()\n--CCTransitionFlipAngular class will be Deprecated,end\n\n--CCEaseElasticInOut class will be Deprecated,begin\nfunction DeprecatedClass.CCEaseElasticInOut()\n    deprecatedTip(\"CCEaseElasticInOut\",\"cc.EaseElasticInOut\")\n    return cc.EaseElasticInOut\nend\n_G[\"CCEaseElasticInOut\"] = DeprecatedClass.CCEaseElasticInOut()\n--CCEaseElasticInOut class will be Deprecated,end\n\n--CCEaseBounce class will be Deprecated,begin\nfunction DeprecatedClass.CCEaseBounce()\n    deprecatedTip(\"CCEaseBounce\",\"cc.EaseBounce\")\n    return cc.EaseBounce\nend\n_G[\"CCEaseBounce\"] = DeprecatedClass.CCEaseBounce()\n--CCEaseBounce class will be Deprecated,end\n\n--CCShow class will be Deprecated,begin\nfunction DeprecatedClass.CCShow()\n    deprecatedTip(\"CCShow\",\"cc.Show\")\n    return cc.Show\nend\n_G[\"CCShow\"] = DeprecatedClass.CCShow()\n--CCShow class will be Deprecated,end\n\n--CCFadeOut class will be Deprecated,begin\nfunction DeprecatedClass.CCFadeOut()\n    deprecatedTip(\"CCFadeOut\",\"cc.FadeOut\")\n    return cc.FadeOut\nend\n_G[\"CCFadeOut\"] = DeprecatedClass.CCFadeOut()\n--CCFadeOut class will be Deprecated,end\n\n--CCCallFunc class will be Deprecated,begin\nfunction DeprecatedClass.CCCallFunc()\n    deprecatedTip(\"CCCallFunc\",\"cc.CallFunc\")\n    return cc.CallFunc\nend\n_G[\"CCCallFunc\"] = DeprecatedClass.CCCallFunc()\n--CCCallFunc class will be Deprecated,end\n\n--CCWaves3D class will be Deprecated,begin\nfunction DeprecatedClass.CCWaves3D()\n    deprecatedTip(\"CCWaves3D\",\"cc.Waves3D\")\n    return cc.Waves3D\nend\n_G[\"CCWaves3D\"] = DeprecatedClass.CCWaves3D()\n--CCWaves3D class will be Deprecated,end\n\n--CCFlipX3D class will be Deprecated,begin\nfunction DeprecatedClass.CCFlipX3D()\n    deprecatedTip(\"CCFlipX3D\",\"cc.FlipX3D\")\n    return cc.FlipX3D\nend\n_G[\"CCFlipX3D\"] = DeprecatedClass.CCFlipX3D()\n--CCFlipX3D class will be Deprecated,end\n\n--CCParticleFireworks class will be Deprecated,begin\nfunction DeprecatedClass.CCParticleFireworks()\n    deprecatedTip(\"CCParticleFireworks\",\"cc.ParticleFireworks\")\n    return cc.ParticleFireworks\nend\n_G[\"CCParticleFireworks\"] = DeprecatedClass.CCParticleFireworks()\n--CCParticleFireworks class will be Deprecated,end\n\n--CCMenuItemImage class will be Deprecated,begin\nfunction DeprecatedClass.CCMenuItemImage()\n    deprecatedTip(\"CCMenuItemImage\",\"cc.MenuItemImage\")\n    return cc.MenuItemImage\nend\n_G[\"CCMenuItemImage\"] = DeprecatedClass.CCMenuItemImage()\n--CCMenuItemImage class will be Deprecated,end\n\n--CCParticleFire class will be Deprecated,begin\nfunction DeprecatedClass.CCParticleFire()\n    deprecatedTip(\"CCParticleFire\",\"cc.ParticleFire\")\n    return cc.ParticleFire\nend\n_G[\"CCParticleFire\"] = DeprecatedClass.CCParticleFire()\n--CCParticleFire class will be Deprecated,end\n\n--CCMenuItem class will be Deprecated,begin\nfunction DeprecatedClass.CCMenuItem()\n    deprecatedTip(\"CCMenuItem\",\"cc.MenuItem\")\n    return cc.MenuItem\nend\n_G[\"CCMenuItem\"] = DeprecatedClass.CCMenuItem()\n--CCMenuItem class will be Deprecated,end\n\n--CCActionEase class will be Deprecated,begin\nfunction DeprecatedClass.CCActionEase()\n    deprecatedTip(\"CCActionEase\",\"cc.ActionEase\")\n    return cc.ActionEase\nend\n_G[\"CCActionEase\"] = DeprecatedClass.CCActionEase()\n--CCActionEase class will be Deprecated,end\n\n--CCTransitionSceneOriented class will be Deprecated,begin\nfunction DeprecatedClass.CCTransitionSceneOriented()\n    deprecatedTip(\"CCTransitionSceneOriented\",\"cc.TransitionSceneOriented\")\n    return cc.TransitionSceneOriented\nend\n_G[\"CCTransitionSceneOriented\"] = DeprecatedClass.CCTransitionSceneOriented()\n--CCTransitionSceneOriented class will be Deprecated,end\n\n--CCTransitionZoomFlipAngular class will be Deprecated,begin\nfunction DeprecatedClass.CCTransitionZoomFlipAngular()\n    deprecatedTip(\"CCTransitionZoomFlipAngular\",\"cc.TransitionZoomFlipAngular\")\n    return cc.TransitionZoomFlipAngular\nend\n_G[\"CCTransitionZoomFlipAngular\"] = DeprecatedClass.CCTransitionZoomFlipAngular()\n--CCTransitionZoomFlipAngular class will be Deprecated,end\n\n--CCEaseIn class will be Deprecated,begin\nfunction DeprecatedClass.CCEaseIn()\n    deprecatedTip(\"CCEaseIn\",\"cc.EaseIn\")\n    return cc.EaseIn\nend\n_G[\"CCEaseIn\"] = DeprecatedClass.CCEaseIn()\n--CCEaseIn class will be Deprecated,end\n\n--CCEaseExponentialInOut class will be Deprecated,begin\nfunction DeprecatedClass.CCEaseExponentialInOut()\n    deprecatedTip(\"CCEaseExponentialInOut\",\"cc.EaseExponentialInOut\")\n    return cc.EaseExponentialInOut\nend\n_G[\"CCEaseExponentialInOut\"] = DeprecatedClass.CCEaseExponentialInOut()\n--CCEaseExponentialInOut class will be Deprecated,end\n\n--CCTransitionFlipX class will be Deprecated,begin\nfunction DeprecatedClass.CCTransitionFlipX()\n    deprecatedTip(\"CCTransitionFlipX\",\"cc.TransitionFlipX\")\n    return cc.TransitionFlipX\nend\n_G[\"CCTransitionFlipX\"] = DeprecatedClass.CCTransitionFlipX()\n--CCTransitionFlipX class will be Deprecated,end\n\n--CCEaseExponentialOut class will be Deprecated,begin\nfunction DeprecatedClass.CCEaseExponentialOut()\n    deprecatedTip(\"CCEaseExponentialOut\",\"cc.EaseExponentialOut\")\n    return cc.EaseExponentialOut\nend\n_G[\"CCEaseExponentialOut\"] = DeprecatedClass.CCEaseExponentialOut()\n--CCEaseExponentialOut class will be Deprecated,end\n\n--CCLabel class will be Deprecated,begin\nfunction DeprecatedClass.CCLabel()\n    deprecatedTip(\"CCLabel\",\"cc.Label\")\n    return cc.Label\nend\n_G[\"CCLabel\"] = DeprecatedClass.CCLabel()\n--CCLabel class will be Deprecated,end\n\n--CCApplication class will be Deprecated,begin\nfunction DeprecatedClass.CCApplication()\n    deprecatedTip(\"CCApplication\",\"cc.Application\")\n    return cc.Application\nend\n_G[\"CCApplication\"] = DeprecatedClass.CCApplication()\n--CCApplication class will be Deprecated,end\n\n--CCDelayTime class will be Deprecated,begin\nfunction DeprecatedClass.CCDelayTime()\n    deprecatedTip(\"CCDelayTime\",\"cc.DelayTime\")\n    return cc.DelayTime\nend\n_G[\"CCDelayTime\"] = DeprecatedClass.CCDelayTime()\n--CCDelayTime class will be Deprecated,end\n\n--CCLabelAtlas class will be Deprecated,begin\nfunction DeprecatedClass.CCLabelAtlas()\n    deprecatedTip(\"CCLabelAtlas\",\"cc.LabelAtlas\")\n    return cc.LabelAtlas\nend\n_G[\"CCLabelAtlas\"] = DeprecatedClass.CCLabelAtlas()\n--CCLabelAtlas class will be Deprecated,end\n\n--CCLabelBMFont class will be Deprecated,begin\nfunction DeprecatedClass.CCLabelBMFont()\n    deprecatedTip(\"CCLabelBMFont\",\"cc.LabelBMFont\")\n    return cc.LabelBMFont\nend\n_G[\"CCLabelBMFont\"] = DeprecatedClass.CCLabelBMFont()\n--CCLabelBMFont class will be Deprecated,end\n\n--CCFadeOutTRTiles class will be Deprecated,begin\nfunction DeprecatedClass.CCFadeOutTRTiles()\n    deprecatedTip(\"CCFadeOutTRTiles\",\"cc.FadeOutTRTiles\")\n    return cc.FadeOutTRTiles\nend\n_G[\"CCFadeOutTRTiles\"] = DeprecatedClass.CCFadeOutTRTiles()\n--CCFadeOutTRTiles class will be Deprecated,end\n\n--CCEaseElasticIn class will be Deprecated,begin\nfunction DeprecatedClass.CCEaseElasticIn()\n    deprecatedTip(\"CCEaseElasticIn\",\"cc.EaseElasticIn\")\n    return cc.EaseElasticIn\nend\n_G[\"CCEaseElasticIn\"] = DeprecatedClass.CCEaseElasticIn()\n--CCEaseElasticIn class will be Deprecated,end\n\n--CCParticleSpiral class will be Deprecated,begin\nfunction DeprecatedClass.CCParticleSpiral()\n    deprecatedTip(\"CCParticleSpiral\",\"cc.ParticleSpiral\")\n    return cc.ParticleSpiral\nend\n_G[\"CCParticleSpiral\"] = DeprecatedClass.CCParticleSpiral()\n--CCParticleSpiral class will be Deprecated,end\n\n--CCFiniteTimeAction class will be Deprecated,begin\nfunction DeprecatedClass.CCFiniteTimeAction()\n    deprecatedTip(\"CCFiniteTimeAction\",\"cc.FiniteTimeAction\")\n    return cc.FiniteTimeAction\nend\n_G[\"CCFiniteTimeAction\"] = DeprecatedClass.CCFiniteTimeAction()\n--CCFiniteTimeAction class will be Deprecated,end\n\n--CCFadeOutDownTiles class will be Deprecated,begin\nfunction DeprecatedClass.CCFadeOutDownTiles()\n    deprecatedTip(\"CCFadeOutDownTiles\",\"cc.FadeOutDownTiles\")\n    return cc.FadeOutDownTiles\nend\n_G[\"CCFadeOutDownTiles\"] = DeprecatedClass.CCFadeOutDownTiles()\n--CCFadeOutDownTiles class will be Deprecated,end\n\n--CCJumpTiles3D class will be Deprecated,begin\nfunction DeprecatedClass.CCJumpTiles3D()\n    deprecatedTip(\"CCJumpTiles3D\",\"cc.JumpTiles3D\")\n    return cc.JumpTiles3D\nend\n_G[\"CCJumpTiles3D\"] = DeprecatedClass.CCJumpTiles3D()\n--CCJumpTiles3D class will be Deprecated,end\n\n--CCEaseBackIn class will be Deprecated,begin\nfunction DeprecatedClass.CCEaseBackIn()\n    deprecatedTip(\"CCEaseBackIn\",\"cc.EaseBackIn\")\n    return cc.EaseBackIn\nend\n_G[\"CCEaseBackIn\"] = DeprecatedClass.CCEaseBackIn()\n--CCEaseBackIn class will be Deprecated,end\n\n--CCSpriteBatchNode class will be Deprecated,begin\nfunction DeprecatedClass.CCSpriteBatchNode()\n    deprecatedTip(\"CCSpriteBatchNode\",\"cc.SpriteBatchNode\")\n    return cc.SpriteBatchNode\nend\n_G[\"CCSpriteBatchNode\"] = DeprecatedClass.CCSpriteBatchNode()\n--CCSpriteBatchNode class will be Deprecated,end\n\n--CCParticleSystem class will be Deprecated,begin\nfunction DeprecatedClass.CCParticleSystem()\n    deprecatedTip(\"CCParticleSystem\",\"cc.ParticleSystem\")\n    return cc.ParticleSystem\nend\n_G[\"CCParticleSystem\"] = DeprecatedClass.CCParticleSystem()\n--CCParticleSystem class will be Deprecated,end\n\n--CCActionTween class will be Deprecated,begin\nfunction DeprecatedClass.CCActionTween()\n    deprecatedTip(\"CCActionTween\",\"cc.ActionTween\")\n    return cc.ActionTween\nend\n_G[\"CCActionTween\"] = DeprecatedClass.CCActionTween()\n--CCActionTween class will be Deprecated,end\n\n--CCTransitionFadeDown class will be Deprecated,begin\nfunction DeprecatedClass.CCTransitionFadeDown()\n    deprecatedTip(\"CCTransitionFadeDown\",\"cc.TransitionFadeDown\")\n    return cc.TransitionFadeDown\nend\n_G[\"CCTransitionFadeDown\"] = DeprecatedClass.CCTransitionFadeDown()\n--CCTransitionFadeDown class will be Deprecated,end\n\n--CCParticleSun class will be Deprecated,begin\nfunction DeprecatedClass.CCParticleSun()\n    deprecatedTip(\"CCParticleSun\",\"cc.ParticleSun\")\n    return cc.ParticleSun\nend\n_G[\"CCParticleSun\"] = DeprecatedClass.CCParticleSun()\n--CCParticleSun class will be Deprecated,end\n\n--CCTransitionProgressHorizontal class will be Deprecated,begin\nfunction DeprecatedClass.CCTransitionProgressHorizontal()\n    deprecatedTip(\"CCTransitionProgressHorizontal\",\"cc.TransitionProgressHorizontal\")\n    return cc.TransitionProgressHorizontal\nend\n_G[\"CCTransitionProgressHorizontal\"] = DeprecatedClass.CCTransitionProgressHorizontal()\n--CCTransitionProgressHorizontal class will be Deprecated,end\n\n--CCRipple3D class will be Deprecated,begin\nfunction DeprecatedClass.CCRipple3D()\n    deprecatedTip(\"CCRipple3D\",\"cc.Ripple3D\")\n    return cc.Ripple3D\nend\n_G[\"CCRipple3D\"] = DeprecatedClass.CCRipple3D()\n--CCRipple3D class will be Deprecated,end\n\n--CCTMXLayer class will be Deprecated,begin\nfunction DeprecatedClass.CCTMXLayer()\n    deprecatedTip(\"CCTMXLayer\",\"cc.TMXLayer\")\n    return cc.TMXLayer\nend\n_G[\"CCTMXLayer\"] = DeprecatedClass.CCTMXLayer()\n--CCTMXLayer class will be Deprecated,end\n\n--CCFlipX class will be Deprecated,begin\nfunction DeprecatedClass.CCFlipX()\n    deprecatedTip(\"CCFlipX\",\"cc.FlipX\")\n    return cc.FlipX\nend\n_G[\"CCFlipX\"] = DeprecatedClass.CCFlipX()\n--CCFlipX class will be Deprecated,end\n\n--CCFlipY class will be Deprecated,begin\nfunction DeprecatedClass.CCFlipY()\n    deprecatedTip(\"CCFlipY\",\"cc.FlipY\")\n    return cc.FlipY\nend\n_G[\"CCFlipY\"] = DeprecatedClass.CCFlipY()\n--CCFlipY class will be Deprecated,end\n\n--CCTransitionSplitCols class will be Deprecated,begin\nfunction DeprecatedClass.CCTransitionSplitCols()\n    deprecatedTip(\"CCTransitionSplitCols\",\"cc.TransitionSplitCols\")\n    return cc.TransitionSplitCols\nend\n_G[\"CCTransitionSplitCols\"] = DeprecatedClass.CCTransitionSplitCols()\n--CCTransitionSplitCols class will be Deprecated,end\n\n--CCTimer class will be Deprecated,begin\nfunction DeprecatedClass.CCTimer()\n    deprecatedTip(\"CCTimer\",\"cc.Timer\")\n    return cc.Timer\nend\n_G[\"CCTimer\"] = DeprecatedClass.CCTimer()\n--CCTimer class will be Deprecated,end\n\n--CCFadeTo class will be Deprecated,begin\nfunction DeprecatedClass.CCFadeTo()\n    deprecatedTip(\"CCFadeTo\",\"cc.FadeTo\")\n    return cc.FadeTo\nend\n_G[\"CCFadeTo\"] = DeprecatedClass.CCFadeTo()\n--CCFadeTo class will be Deprecated,end\n\n--CCRepeatForever class will be Deprecated,begin\nfunction DeprecatedClass.CCRepeatForever()\n    deprecatedTip(\"CCRepeatForever\",\"cc.RepeatForever\")\n    return cc.RepeatForever\nend\n_G[\"CCRepeatForever\"] = DeprecatedClass.CCRepeatForever()\n--CCRepeatForever class will be Deprecated,end\n\n--CCPlace class will be Deprecated,begin\nfunction DeprecatedClass.CCPlace()\n    deprecatedTip(\"CCPlace\",\"cc.Place\")\n    return cc.Place\nend\n_G[\"CCPlace\"] = DeprecatedClass.CCPlace()\n--CCPlace class will be Deprecated,end\n\n\n--CCGLProgram class will be Deprecated,begin\nfunction DeprecatedClass.CCGLProgram()\n    deprecatedTip(\"CCGLProgram\",\"cc.GLProgram\")\n    return cc.GLProgram\nend\n_G[\"CCGLProgram\"] = DeprecatedClass.CCGLProgram()\n--CCGLProgram class will be Deprecated,end\n\n--CCEaseBounceOut class will be Deprecated,begin\nfunction DeprecatedClass.CCEaseBounceOut()\n    deprecatedTip(\"CCEaseBounceOut\",\"cc.EaseBounceOut\")\n    return cc.EaseBounceOut\nend\n_G[\"CCEaseBounceOut\"] = DeprecatedClass.CCEaseBounceOut()\n--CCEaseBounceOut class will be Deprecated,end\n\n--CCCardinalSplineBy class will be Deprecated,begin\nfunction DeprecatedClass.CCCardinalSplineBy()\n    deprecatedTip(\"CCCardinalSplineBy\",\"cc.CardinalSplineBy\")\n    return cc.CardinalSplineBy\nend\n_G[\"CCCardinalSplineBy\"] = DeprecatedClass.CCCardinalSplineBy()\n--CCCardinalSplineBy class will be Deprecated,end\n\n--CCSpriteFrameCache class will be Deprecated,begin\nfunction DeprecatedClass.CCSpriteFrameCache()\n    deprecatedTip(\"CCSpriteFrameCache\",\"cc.SpriteFrameCache\")\n    return cc.SpriteFrameCache\nend\n_G[\"CCSpriteFrameCache\"] = DeprecatedClass.CCSpriteFrameCache()\n--CCSpriteFrameCache class will be Deprecated,end\n\n--CCTransitionShrinkGrow class will be Deprecated,begin\nfunction DeprecatedClass.CCTransitionShrinkGrow()\n    deprecatedTip(\"CCTransitionShrinkGrow\",\"cc.TransitionShrinkGrow\")\n    return cc.TransitionShrinkGrow\nend\n_G[\"CCTransitionShrinkGrow\"] = DeprecatedClass.CCTransitionShrinkGrow()\n--CCTransitionShrinkGrow class will be Deprecated,end\n\n--CCSplitCols class will be Deprecated,begin\nfunction DeprecatedClass.CCSplitCols()\n    deprecatedTip(\"CCSplitCols\",\"cc.SplitCols\")\n    return cc.SplitCols\nend\n_G[\"CCSplitCols\"] = DeprecatedClass.CCSplitCols()\n--CCSplitCols class will be Deprecated,end\n\n--CCClippingNode class will be Deprecated,begin\nfunction DeprecatedClass.CCClippingNode()\n    deprecatedTip(\"CCClippingNode\",\"cc.ClippingNode\")\n    return cc.ClippingNode\nend\n_G[\"CCClippingNode\"] = DeprecatedClass.CCClippingNode()\n--CCClippingNode class will be Deprecated,end\n\n--CCEaseBounceInOut class will be Deprecated,begin\nfunction DeprecatedClass.CCEaseBounceInOut()\n    deprecatedTip(\"CCEaseBounceInOut\",\"cc.EaseBounceInOut\")\n    return cc.EaseBounceInOut\nend\n_G[\"CCEaseBounceInOut\"] = DeprecatedClass.CCEaseBounceInOut()\n--CCEaseBounceInOut class will be Deprecated,end\n\n--CCLiquid class will be Deprecated,begin\nfunction DeprecatedClass.CCLiquid()\n    deprecatedTip(\"CCLiquid\",\"cc.Liquid\")\n    return cc.Liquid\nend\n_G[\"CCLiquid\"] = DeprecatedClass.CCLiquid()\n--CCLiquid class will be Deprecated,end\n\n--CCParticleFlower class will be Deprecated,begin\nfunction DeprecatedClass.CCParticleFlower()\n    deprecatedTip(\"CCParticleFlower\",\"cc.ParticleFlower\")\n    return cc.ParticleFlower\nend\n_G[\"CCParticleFlower\"] = DeprecatedClass.CCParticleFlower()\n--CCParticleFlower class will be Deprecated,end\n\n--CCParticleSmoke class will be Deprecated,begin\nfunction DeprecatedClass.CCParticleSmoke()\n    deprecatedTip(\"CCParticleSmoke\",\"cc.ParticleSmoke\")\n    return cc.ParticleSmoke\nend\n_G[\"CCParticleSmoke\"] = DeprecatedClass.CCParticleSmoke()\n--CCParticleSmoke class will be Deprecated,end\n\n--CCImage class will be Deprecated,begin\nfunction DeprecatedClass.CCImage()\n    deprecatedTip(\"CCImage\",\"cc.Image\")\n    return cc.Image\nend\n_G[\"CCImage\"] = DeprecatedClass.CCImage()\n--CCImage class will be Deprecated,end\n\n--CCTurnOffTiles class will be Deprecated,begin\nfunction DeprecatedClass.CCTurnOffTiles()\n    deprecatedTip(\"CCTurnOffTiles\",\"cc.TurnOffTiles\")\n    return cc.TurnOffTiles\nend\n_G[\"CCTurnOffTiles\"] = DeprecatedClass.CCTurnOffTiles()\n--CCTurnOffTiles class will be Deprecated,end\n\n--CCBlink class will be Deprecated,begin\nfunction DeprecatedClass.CCBlink()\n    deprecatedTip(\"CCBlink\",\"cc.Blink\")\n    return cc.Blink\nend\n_G[\"CCBlink\"] = DeprecatedClass.CCBlink()\n--CCBlink class will be Deprecated,end\n\n--CCShaderCache class will be Deprecated,begin\nfunction DeprecatedClass.CCShaderCache()\n    deprecatedTip(\"CCShaderCache\",\"cc.ShaderCache\")\n    return cc.ShaderCache\nend\n_G[\"CCShaderCache\"] = DeprecatedClass.CCShaderCache()\n--CCShaderCache class will be Deprecated,end\n\n--CCJumpTo class will be Deprecated,begin\nfunction DeprecatedClass.CCJumpTo()\n    deprecatedTip(\"CCJumpTo\",\"cc.JumpTo\")\n    return cc.JumpTo\nend\n_G[\"CCJumpTo\"] = DeprecatedClass.CCJumpTo()\n--CCJumpTo class will be Deprecated,end\n\n--CCAtlasNode class will be Deprecated,begin\nfunction DeprecatedClass.CCAtlasNode()\n    deprecatedTip(\"CCAtlasNode\",\"cc.AtlasNode\")\n    return cc.AtlasNode\nend\n_G[\"CCAtlasNode\"] = DeprecatedClass.CCAtlasNode()\n--CCAtlasNode class will be Deprecated,end\n\n--CCTransitionJumpZoom class will be Deprecated,begin\nfunction DeprecatedClass.CCTransitionJumpZoom()\n    deprecatedTip(\"CCTransitionJumpZoom\",\"cc.TransitionJumpZoom\")\n    return cc.TransitionJumpZoom\nend\n_G[\"CCTransitionJumpZoom\"] = DeprecatedClass.CCTransitionJumpZoom()\n--CCTransitionJumpZoom class will be Deprecated,end\n\n--CCTransitionProgressVertical class will be Deprecated,begin\nfunction DeprecatedClass.CCTransitionProgressVertical()\n    deprecatedTip(\"CCTransitionProgressVertical\",\"cc.TransitionProgressVertical\")\n    return cc.TransitionProgressVertical\nend\n_G[\"CCTransitionProgressVertical\"] = DeprecatedClass.CCTransitionProgressVertical()\n--CCTransitionProgressVertical class will be Deprecated,end\n\n--CCAnimationFrame class will be Deprecated,begin\nfunction DeprecatedClass.CCAnimationFrame()\n    deprecatedTip(\"CCAnimationFrame\",\"cc.AnimationFrame\")\n    return cc.AnimationFrame\nend\n_G[\"CCAnimationFrame\"] = DeprecatedClass.CCAnimationFrame()\n--CCAnimationFrame class will be Deprecated,end\n\n--CCTintTo class will be Deprecated,begin\nfunction DeprecatedClass.CCTintTo()\n    deprecatedTip(\"CCTintTo\",\"cc.TintTo\")\n    return cc.TintTo\nend\n_G[\"CCTintTo\"] = DeprecatedClass.CCTintTo()\n--CCTintTo class will be Deprecated,end\n\n--CCTiledGrid3DAction class will be Deprecated,begin\nfunction DeprecatedClass.CCTiledGrid3DAction()\n    deprecatedTip(\"CCTiledGrid3DAction\",\"cc.TiledGrid3DAction\")\n    return cc.TiledGrid3DAction\nend\n_G[\"CCTiledGrid3DAction\"] = DeprecatedClass.CCTiledGrid3DAction()\n--CCTiledGrid3DAction class will be Deprecated,end\n\n--CCTMXTilesetInfo class will be Deprecated,begin\nfunction DeprecatedClass.CCTMXTilesetInfo()\n    deprecatedTip(\"CCTMXTilesetInfo\",\"cc.TMXTilesetInfo\")\n    return cc.TMXTilesetInfo\nend\n_G[\"CCTMXTilesetInfo\"] = DeprecatedClass.CCTMXTilesetInfo()\n--CCTMXTilesetInfo class will be Deprecated,end\n\n--CCTMXObjectGroup class will be Deprecated,begin\nfunction DeprecatedClass.CCTMXObjectGroup()\n    deprecatedTip(\"CCTMXObjectGroup\",\"cc.TMXObjectGroup\")\n    return cc.TMXObjectGroup\nend\n_G[\"CCTMXObjectGroup\"] = DeprecatedClass.CCTMXObjectGroup()\n--CCTMXObjectGroup class will be Deprecated,end\n\n--CCParticleGalaxy class will be Deprecated,begin\nfunction DeprecatedClass.CCParticleGalaxy()\n    deprecatedTip(\"CCParticleGalaxy\",\"cc.ParticleGalaxy\")\n    return cc.ParticleGalaxy\nend\n_G[\"CCParticleGalaxy\"] = DeprecatedClass.CCParticleGalaxy()\n--CCParticleGalaxy class will be Deprecated,end\n\n--CCTwirl class will be Deprecated,begin\nfunction DeprecatedClass.CCTwirl()\n    deprecatedTip(\"CCTwirl\",\"cc.Twirl\")\n    return cc.Twirl\nend\n_G[\"CCTwirl\"] = DeprecatedClass.CCTwirl()\n--CCTwirl class will be Deprecated,end\n\n--CCMenuItemLabel class will be Deprecated,begin\nfunction DeprecatedClass.CCMenuItemLabel()\n    deprecatedTip(\"CCMenuItemLabel\",\"cc.MenuItemLabel\")\n    return cc.MenuItemLabel\nend\n_G[\"CCMenuItemLabel\"] = DeprecatedClass.CCMenuItemLabel()\n--CCMenuItemLabel class will be Deprecated,end\n\n--CCLayerColor class will be Deprecated,begin\nfunction DeprecatedClass.CCLayerColor()\n    deprecatedTip(\"CCLayerColor\",\"cc.LayerColor\")\n    return cc.LayerColor\nend\n_G[\"CCLayerColor\"] = DeprecatedClass.CCLayerColor()\n--CCLayerColor class will be Deprecated,end\n\n--CCFadeOutBLTiles class will be Deprecated,begin\nfunction DeprecatedClass.CCFadeOutBLTiles()\n    deprecatedTip(\"CCFadeOutBLTiles\",\"cc.FadeOutBLTiles\")\n    return cc.FadeOutBLTiles\nend\n_G[\"CCFadeOutBLTiles\"] = DeprecatedClass.CCFadeOutBLTiles()\n--CCFadeOutBLTiles class will be Deprecated,end\n\n--CCTransitionProgress class will be Deprecated,begin\nfunction DeprecatedClass.CCTransitionProgress()\n    deprecatedTip(\"CCTransitionProgress\",\"cc.TransitionProgress\")\n    return cc.TransitionProgress\nend\n_G[\"CCTransitionProgress\"] = DeprecatedClass.CCTransitionProgress()\n--CCTransitionProgress class will be Deprecated,end\n\n--CCEaseRateAction class will be Deprecated,begin\nfunction DeprecatedClass.CCEaseRateAction()\n    deprecatedTip(\"CCEaseRateAction\",\"cc.EaseRateAction\")\n    return cc.EaseRateAction\nend\n_G[\"CCEaseRateAction\"] = DeprecatedClass.CCEaseRateAction()\n--CCEaseRateAction class will be Deprecated,end\n\n--CCLayerGradient class will be Deprecated,begin\nfunction DeprecatedClass.CCLayerGradient()\n    deprecatedTip(\"CCLayerGradient\",\"cc.LayerGradient\")\n    return cc.LayerGradient\nend\n_G[\"CCLayerGradient\"] = DeprecatedClass.CCLayerGradient()\n--CCLayerGradient class will be Deprecated,end\n\n--CCMenuItemSprite class will be Deprecated,begin\nfunction DeprecatedClass.CCMenuItemSprite()\n    deprecatedTip(\"CCMenuItemSprite\",\"cc.MenuItemSprite\")\n    return cc.MenuItemSprite\nend\n_G[\"CCMenuItemSprite\"] = DeprecatedClass.CCMenuItemSprite()\n--CCMenuItemSprite class will be Deprecated,end\n\n--CCNode class will be Deprecated,begin\nfunction DeprecatedClass.CCNode()\n    deprecatedTip(\"CCNode\",\"cc.Node\")\n    return cc.Node\nend\n_G[\"CCNode\"] = DeprecatedClass.CCNode()\n--CCNode class will be Deprecated,end\n\n--CCToggleVisibility class will be Deprecated,begin\nfunction DeprecatedClass.CCToggleVisibility()\n    deprecatedTip(\"CCToggleVisibility\",\"cc.ToggleVisibility\")\n    return cc.ToggleVisibility\nend\n_G[\"CCToggleVisibility\"] = DeprecatedClass.CCToggleVisibility()\n--CCToggleVisibility class will be Deprecated,end\n\n--CCRepeat class will be Deprecated,begin\nfunction DeprecatedClass.CCRepeat()\n    deprecatedTip(\"CCRepeat\",\"cc.Repeat\")\n    return cc.Repeat\nend\n_G[\"CCRepeat\"] = DeprecatedClass.CCRepeat()\n--CCRepeat class will be Deprecated,end\n\n--CCRenderTexture class will be Deprecated,begin\nfunction DeprecatedClass.CCRenderTexture()\n    deprecatedTip(\"CCRenderTexture\",\"cc.RenderTexture\")\n    return cc.RenderTexture\nend\n_G[\"CCRenderTexture\"] = DeprecatedClass.CCRenderTexture()\n--CCRenderTexture class will be Deprecated,end\n\n--CCTransitionFlipY class will be Deprecated,begin\nfunction DeprecatedClass.CCTransitionFlipY()\n    deprecatedTip(\"CCTransitionFlipY\",\"cc.TransitionFlipY\")\n    return cc.TransitionFlipY\nend\n_G[\"CCTransitionFlipY\"] = DeprecatedClass.CCTransitionFlipY()\n--CCTransitionFlipY class will be Deprecated,end\n\n--CCLayerMultiplex class will be Deprecated,begin\nfunction DeprecatedClass.CCLayerMultiplex()\n    deprecatedTip(\"CCLayerMultiplex\",\"cc.LayerMultiplex\")\n    return cc.LayerMultiplex\nend\n_G[\"CCLayerMultiplex\"] = DeprecatedClass.CCLayerMultiplex()\n--CCLayerMultiplex class will be Deprecated,end\n\n--CCTMXLayerInfo class will be Deprecated,begin\nfunction DeprecatedClass.CCTMXLayerInfo()\n    deprecatedTip(\"CCTMXLayerInfo\",\"cc.TMXLayerInfo\")\n    return cc.TMXLayerInfo\nend\n_G[\"CCTMXLayerInfo\"] = DeprecatedClass.CCTMXLayerInfo()\n--CCTMXLayerInfo class will be Deprecated,end\n\n--CCEaseBackInOut class will be Deprecated,begin\nfunction DeprecatedClass.CCEaseBackInOut()\n    deprecatedTip(\"CCEaseBackInOut\",\"cc.EaseBackInOut\")\n    return cc.EaseBackInOut\nend\n_G[\"CCEaseBackInOut\"] = DeprecatedClass.CCEaseBackInOut()\n--CCEaseBackInOut class will be Deprecated,end\n\n--CCActionInstant class will be Deprecated,begin\nfunction DeprecatedClass.CCActionInstant()\n    deprecatedTip(\"CCActionInstant\",\"cc.ActionInstant\")\n    return cc.ActionInstant\nend\n_G[\"CCActionInstant\"] = DeprecatedClass.CCActionInstant()\n--CCActionInstant class will be Deprecated,end\n\n--CCTargetedAction class will be Deprecated,begin\nfunction DeprecatedClass.CCTargetedAction()\n    deprecatedTip(\"CCTargetedAction\",\"cc.TargetedAction\")\n    return cc.TargetedAction\nend\n_G[\"CCTargetedAction\"] = DeprecatedClass.CCTargetedAction()\n--CCTargetedAction class will be Deprecated,end\n\n--CCDrawNode class will be Deprecated,begin\nfunction DeprecatedClass.CCDrawNode()\n    deprecatedTip(\"CCDrawNode\",\"cc.DrawNode\")\n    return cc.DrawNode\nend\n_G[\"CCDrawNode\"] = DeprecatedClass.CCDrawNode()\n--CCDrawNode class will be Deprecated,end\n\n--CCTransitionTurnOffTiles class will be Deprecated,begin\nfunction DeprecatedClass.CCTransitionTurnOffTiles()\n    deprecatedTip(\"CCTransitionTurnOffTiles\",\"cc.TransitionTurnOffTiles\")\n    return cc.TransitionTurnOffTiles\nend\n_G[\"CCTransitionTurnOffTiles\"] = DeprecatedClass.CCTransitionTurnOffTiles()\n--CCTransitionTurnOffTiles class will be Deprecated,end\n\n--CCRotateTo class will be Deprecated,begin\nfunction DeprecatedClass.CCRotateTo()\n    deprecatedTip(\"CCRotateTo\",\"cc.RotateTo\")\n    return cc.RotateTo\nend\n_G[\"CCRotateTo\"] = DeprecatedClass.CCRotateTo()\n--CCRotateTo class will be Deprecated,end\n\n--CCTransitionSplitRows class will be Deprecated,begin\nfunction DeprecatedClass.CCTransitionSplitRows()\n    deprecatedTip(\"CCTransitionSplitRows\",\"cc.TransitionSplitRows\")\n    return cc.TransitionSplitRows\nend\n_G[\"CCTransitionSplitRows\"] = DeprecatedClass.CCTransitionSplitRows()\n--CCTransitionSplitRows class will be Deprecated,end\n\n--CCTransitionProgressRadialCCW class will be Deprecated,begin\nfunction DeprecatedClass.CCTransitionProgressRadialCCW()\n    deprecatedTip(\"CCTransitionProgressRadialCCW\",\"cc.TransitionProgressRadialCCW\")\n    return cc.TransitionProgressRadialCCW\nend\n_G[\"CCTransitionProgressRadialCCW\"] = DeprecatedClass.CCTransitionProgressRadialCCW()\n--CCTransitionProgressRadialCCW class will be Deprecated,end\n\n--CCScaleTo class will be Deprecated,begin\nfunction DeprecatedClass.CCScaleTo()\n    deprecatedTip(\"CCScaleTo\",\"cc.ScaleTo\")\n    return cc.ScaleTo\nend\n_G[\"CCScaleTo\"] = DeprecatedClass.CCScaleTo()\n--CCScaleTo class will be Deprecated,end\n\n--CCTransitionPageTurn class will be Deprecated,begin\nfunction DeprecatedClass.CCTransitionPageTurn()\n    deprecatedTip(\"CCTransitionPageTurn\",\"cc.TransitionPageTurn\")\n    return cc.TransitionPageTurn\nend\n_G[\"CCTransitionPageTurn\"] = DeprecatedClass.CCTransitionPageTurn()\n--CCTransitionPageTurn class will be Deprecated,end\n\n--CCParticleExplosion class will be Deprecated,begin\nfunction DeprecatedClass.CCParticleExplosion()\n    deprecatedTip(\"CCParticleExplosion\",\"cc.ParticleExplosion\")\n    return cc.ParticleExplosion\nend\n_G[\"CCParticleExplosion\"] = DeprecatedClass.CCParticleExplosion()\n--CCParticleExplosion class will be Deprecated,end\n\n--CCMenu class will be Deprecated,begin\nfunction DeprecatedClass.CCMenu()\n    deprecatedTip(\"CCMenu\",\"cc.Menu\")\n    return cc.Menu\nend\n_G[\"CCMenu\"] = DeprecatedClass.CCMenu()\n--CCMenu class will be Deprecated,end\n\n--CCTexture2D class will be Deprecated,begin\nfunction DeprecatedClass.CCTexture2D()\n    deprecatedTip(\"CCTexture2D\",\"cc.Texture2D\")\n    return cc.Texture2D\nend\n_G[\"CCTexture2D\"] = DeprecatedClass.CCTexture2D()\n--CCTexture2D class will be Deprecated,end\n\n--CCActionManager class will be Deprecated,begin\nfunction DeprecatedClass.CCActionManager()\n    deprecatedTip(\"CCActionManager\",\"cc.ActionManager\")\n    return cc.ActionManager\nend\n_G[\"CCActionManager\"] = DeprecatedClass.CCActionManager()\n--CCActionManager class will be Deprecated,end\n\n--CCParticleBatchNode class will be Deprecated,begin\nfunction DeprecatedClass.CCParticleBatchNode()\n    deprecatedTip(\"CCParticleBatchNode\",\"cc.ParticleBatchNode\")\n    return cc.ParticleBatchNode\nend\n_G[\"CCParticleBatchNode\"] = DeprecatedClass.CCParticleBatchNode()\n--CCParticleBatchNode class will be Deprecated,end\n\n--CCTransitionZoomFlipX class will be Deprecated,begin\nfunction DeprecatedClass.CCTransitionZoomFlipX()\n    deprecatedTip(\"CCTransitionZoomFlipX\",\"cc.TransitionZoomFlipX\")\n    return cc.TransitionZoomFlipX\nend\n_G[\"CCTransitionZoomFlipX\"] = DeprecatedClass.CCTransitionZoomFlipX()\n--CCTransitionZoomFlipX class will be Deprecated,end\n\n--CCScaleBy class will be Deprecated,begin\nfunction DeprecatedClass.CCScaleBy()\n    deprecatedTip(\"CCScaleBy\",\"cc.ScaleBy\")\n    return cc.ScaleBy\nend\n_G[\"CCScaleBy\"] = DeprecatedClass.CCScaleBy()\n--CCScaleBy class will be Deprecated,end\n\n--CCTileMapAtlas class will be Deprecated,begin\nfunction DeprecatedClass.CCTileMapAtlas()\n    deprecatedTip(\"CCTileMapAtlas\",\"cc.TileMapAtlas\")\n    return cc.TileMapAtlas\nend\n_G[\"CCTileMapAtlas\"] = DeprecatedClass.CCTileMapAtlas()\n--CCTileMapAtlas class will be Deprecated,end\n\n--CCAction class will be Deprecated,begin\nfunction DeprecatedClass.CCAction()\n    deprecatedTip(\"CCAction\",\"cc.Action\")\n    return cc.Action\nend\n_G[\"CCAction\"] = DeprecatedClass.CCAction()\n--CCAction class will be Deprecated,end\n\n--CCLens3D class will be Deprecated,begin\nfunction DeprecatedClass.CCLens3D()\n    deprecatedTip(\"CCLens3D\",\"cc.Lens3D\")\n    return cc.Lens3D\nend\n_G[\"CCLens3D\"] = DeprecatedClass.CCLens3D()\n--CCLens3D class will be Deprecated,end\n\n--CCAnimation class will be Deprecated,begin\nfunction DeprecatedClass.CCAnimation()\n    deprecatedTip(\"CCAnimation\",\"cc.Animation\")\n    return cc.Animation\nend\n_G[\"CCAnimation\"] = DeprecatedClass.CCAnimation()\n--CCAnimation class will be Deprecated,end\n\n--CCTransitionSlideInT class will be Deprecated,begin\nfunction DeprecatedClass.CCTransitionSlideInT()\n    deprecatedTip(\"CCTransitionSlideInT\",\"cc.TransitionSlideInT\")\n    return cc.TransitionSlideInT\nend\n_G[\"CCTransitionSlideInT\"] = DeprecatedClass.CCTransitionSlideInT()\n--CCTransitionSlideInT class will be Deprecated,end\n\n--CCSpawn class will be Deprecated,begin\nfunction DeprecatedClass.CCSpawn()\n    deprecatedTip(\"CCSpawn\",\"cc.Spawn\")\n    return cc.Spawn\nend\n_G[\"CCSpawn\"] = DeprecatedClass.CCSpawn()\n--CCSpawn class will be Deprecated,end\n\n--CCSet class will be Deprecated,begin\nfunction DeprecatedClass.CCSet()\n    deprecatedTip(\"CCSet\",\"cc.Set\")\n    return cc.Set\nend\n_G[\"CCSet\"] = DeprecatedClass.CCSet()\n--CCSet class will be Deprecated,end\n\n--CCShakyTiles3D class will be Deprecated,begin\nfunction DeprecatedClass.CCShakyTiles3D()\n    deprecatedTip(\"CCShakyTiles3D\",\"cc.ShakyTiles3D\")\n    return cc.ShakyTiles3D\nend\n_G[\"CCShakyTiles3D\"] = DeprecatedClass.CCShakyTiles3D()\n--CCShakyTiles3D class will be Deprecated,end\n\n--CCPageTurn3D class will be Deprecated,begin\nfunction DeprecatedClass.CCPageTurn3D()\n    deprecatedTip(\"CCPageTurn3D\",\"cc.PageTurn3D\")\n    return cc.PageTurn3D\nend\n_G[\"CCPageTurn3D\"] = DeprecatedClass.CCPageTurn3D()\n--CCPageTurn3D class will be Deprecated,end\n\n--CCGrid3D class will be Deprecated,begin\nfunction DeprecatedClass.CCGrid3D()\n    deprecatedTip(\"CCGrid3D\",\"cc.Grid3D\")\n    return cc.Grid3D\nend\n_G[\"CCGrid3D\"] = DeprecatedClass.CCGrid3D()\n--CCGrid3D class will be Deprecated,end\n\n--CCTransitionProgressInOut class will be Deprecated,begin\nfunction DeprecatedClass.CCTransitionProgressInOut()\n    deprecatedTip(\"CCTransitionProgressInOut\",\"cc.TransitionProgressInOut\")\n    return cc.TransitionProgressInOut\nend\n_G[\"CCTransitionProgressInOut\"] = DeprecatedClass.CCTransitionProgressInOut()\n--CCTransitionProgressInOut class will be Deprecated,end\n\n--CCTransitionFadeBL class will be Deprecated,begin\nfunction DeprecatedClass.CCTransitionFadeBL()\n    deprecatedTip(\"CCTransitionFadeBL\",\"cc.TransitionFadeBL\")\n    return cc.TransitionFadeBL\nend\n_G[\"CCTransitionFadeBL\"] = DeprecatedClass.CCTransitionFadeBL()\n--CCTransitionFadeBL class will be Deprecated,end\n\n--CCCamera class will be Deprecated,begin\nfunction DeprecatedClass.CCCamera()\n    deprecatedTip(\"CCCamera\",\"cc.Camera\")\n    return cc.Camera\nend\n_G[\"CCCamera\"] = DeprecatedClass.CCCamera()\n--CCCamera class will be Deprecated,end\n\n--CCLayerRGBA class will be Deprecated,begin\nfunction DeprecatedClass.CCLayerRGBA()\n    deprecatedTip(\"CCLayerRGBA\",\"cc.Layer\")\n    return cc.Layer\nend\n_G[\"CCLayerRGBA\"] = DeprecatedClass.CCLayerRGBA()\n--CCLayerRGBA class will be Deprecated,end\n\n--LayerRGBA class will be Deprecated,begin\nfunction DeprecatedClass.LayerRGBA()\n    deprecatedTip(\"cc.LayerRGBA\",\"cc.Layer\")\n    return cc.Layer\nend\n_G[\"cc\"][\"LayerRGBA\"] = DeprecatedClass.LayerRGBA()\n--LayerRGBA class will be Deprecated,end\n\n--CCBezierTo class will be Deprecated,begin\nfunction DeprecatedClass.CCBezierTo()\n    deprecatedTip(\"CCBezierTo\",\"cc.BezierTo\")\n    return cc.BezierTo\nend\n_G[\"CCBezierTo\"] = DeprecatedClass.CCBezierTo()\n--CCBezierTo class will be Deprecated,end\n\n--CCFollow class will be Deprecated,begin\nfunction DeprecatedClass.CCFollow()\n    deprecatedTip(\"CCFollow\",\"cc.Follow\")\n    return cc.Follow\nend\n_G[\"CCFollow\"] = DeprecatedClass.CCFollow()\n--CCFollow class will be Deprecated,end\n\n--CCTintBy class will be Deprecated,begin\nfunction DeprecatedClass.CCTintBy()\n    deprecatedTip(\"CCTintBy\",\"cc.TintBy\")\n    return cc.TintBy\nend\n_G[\"CCTintBy\"] = DeprecatedClass.CCTintBy()\n--CCTintBy class will be Deprecated,end\n\n--CCActionInterval class will be Deprecated,begin\nfunction DeprecatedClass.CCActionInterval()\n    deprecatedTip(\"CCActionInterval\",\"cc.ActionInterval\")\n    return cc.ActionInterval\nend\n_G[\"CCActionInterval\"] = DeprecatedClass.CCActionInterval()\n--CCActionInterval class will be Deprecated,end\n\n--CCAnimate class will be Deprecated,begin\nfunction DeprecatedClass.CCAnimate()\n    deprecatedTip(\"CCAnimate\",\"cc.Animate\")\n    return cc.Animate\nend\n_G[\"CCAnimate\"] = DeprecatedClass.CCAnimate()\n--CCAnimate class will be Deprecated,end\n\n--CCProgressTimer class will be Deprecated,begin\nfunction DeprecatedClass.CCProgressTimer()\n    deprecatedTip(\"CCProgressTimer\",\"cc.ProgressTimer\")\n    return cc.ProgressTimer\nend\n_G[\"CCProgressTimer\"] = DeprecatedClass.CCProgressTimer()\n--CCProgressTimer class will be Deprecated,end\n\n--CCParticleMeteor class will be Deprecated,begin\nfunction DeprecatedClass.CCParticleMeteor()\n    deprecatedTip(\"CCParticleMeteor\",\"cc.ParticleMeteor\")\n    return cc.ParticleMeteor\nend\n_G[\"CCParticleMeteor\"] = DeprecatedClass.CCParticleMeteor()\n--CCParticleMeteor class will be Deprecated,end\n\n--CCTransitionFadeTR class will be Deprecated,begin\nfunction DeprecatedClass.CCTransitionFadeTR()\n    deprecatedTip(\"CCTransitionFadeTR\",\"cc.TransitionFadeTR\")\n    return cc.TransitionFadeTR\nend\n_G[\"CCTransitionFadeTR\"] = DeprecatedClass.CCTransitionFadeTR()\n--CCTransitionFadeTR class will be Deprecated,end\n\n--CCCatmullRomTo class will be Deprecated,begin\nfunction DeprecatedClass.CCCatmullRomTo()\n    deprecatedTip(\"CCCatmullRomTo\",\"cc.CatmullRomTo\")\n    return cc.CatmullRomTo\nend\n_G[\"CCCatmullRomTo\"] = DeprecatedClass.CCCatmullRomTo()\n--CCCatmullRomTo class will be Deprecated,end\n\n--CCTransitionZoomFlipY class will be Deprecated,begin\nfunction DeprecatedClass.CCTransitionZoomFlipY()\n    deprecatedTip(\"CCTransitionZoomFlipY\",\"cc.TransitionZoomFlipY\")\n    return cc.TransitionZoomFlipY\nend\n_G[\"CCTransitionZoomFlipY\"] = DeprecatedClass.CCTransitionZoomFlipY()\n--CCTransitionZoomFlipY class will be Deprecated,end\n\n--CCTransitionCrossFade class will be Deprecated,begin\nfunction DeprecatedClass.CCTransitionCrossFade()\n    deprecatedTip(\"CCTransitionCrossFade\",\"cc.TransitionCrossFade\")\n    return cc.TransitionCrossFade\nend\n_G[\"CCTransitionCrossFade\"] = DeprecatedClass.CCTransitionCrossFade()\n--CCTransitionCrossFade class will be Deprecated,end\n\n--CCGridBase class will be Deprecated,begin\nfunction DeprecatedClass.CCGridBase()\n    deprecatedTip(\"CCGridBase\",\"cc.GridBase\")\n    return cc.GridBase\nend\n_G[\"CCGridBase\"] = DeprecatedClass.CCGridBase()\n--CCGridBase class will be Deprecated,end\n\n--CCSkewTo class will be Deprecated,begin\nfunction DeprecatedClass.CCSkewTo()\n    deprecatedTip(\"CCSkewTo\",\"cc.SkewTo\")\n    return cc.SkewTo\nend\n_G[\"CCSkewTo\"] = DeprecatedClass.CCSkewTo()\n--CCSkewTo class will be Deprecated,end\n\n--CCCardinalSplineTo class will be Deprecated,begin\nfunction DeprecatedClass.CCCardinalSplineTo()\n    deprecatedTip(\"CCCardinalSplineTo\",\"cc.CardinalSplineTo\")\n    return cc.CardinalSplineTo\nend\n_G[\"CCCardinalSplineTo\"] = DeprecatedClass.CCCardinalSplineTo()\n--CCCardinalSplineTo class will be Deprecated,end\n\n--CCTMXMapInfo class will be Deprecated,begin\nfunction DeprecatedClass.CCTMXMapInfo()\n    deprecatedTip(\"CCTMXMapInfo\",\"cc.TMXMapInfo\")\n    return cc.TMXMapInfo\nend\n_G[\"CCTMXMapInfo\"] = DeprecatedClass.CCTMXMapInfo()\n--CCTMXMapInfo class will be Deprecated,end\n\n--CCEaseExponentialIn class will be Deprecated,begin\nfunction DeprecatedClass.CCEaseExponentialIn()\n    deprecatedTip(\"CCEaseExponentialIn\",\"cc.EaseExponentialIn\")\n    return cc.EaseExponentialIn\nend\n_G[\"CCEaseExponentialIn\"] = DeprecatedClass.CCEaseExponentialIn()\n--CCEaseExponentialIn class will be Deprecated,end\n\n--CCReuseGrid class will be Deprecated,begin\nfunction DeprecatedClass.CCReuseGrid()\n    deprecatedTip(\"CCReuseGrid\",\"cc.ReuseGrid\")\n    return cc.ReuseGrid\nend\n_G[\"CCReuseGrid\"] = DeprecatedClass.CCReuseGrid()\n--CCReuseGrid class will be Deprecated,end\n\n--CCMenuItemAtlasFont class will be Deprecated,begin\nfunction DeprecatedClass.CCMenuItemAtlasFont()\n    deprecatedTip(\"CCMenuItemAtlasFont\",\"cc.MenuItemAtlasFont\")\n    return cc.MenuItemAtlasFont\nend\n_G[\"CCMenuItemAtlasFont\"] = DeprecatedClass.CCMenuItemAtlasFont()\n--CCMenuItemAtlasFont class will be Deprecated,end\n\n--CCSpriteFrame class will be Deprecated,begin\nfunction DeprecatedClass.CCSpriteFrame()\n    deprecatedTip(\"CCSpriteFrame\",\"cc.SpriteFrame\")\n    return cc.SpriteFrame\nend\n_G[\"CCSpriteFrame\"] = DeprecatedClass.CCSpriteFrame()\n--CCSpriteFrame class will be Deprecated,end\n\n--CCSplitRows class will be Deprecated,begin\nfunction DeprecatedClass.CCSplitRows()\n    deprecatedTip(\"CCSplitRows\",\"cc.SplitRows\")\n    return cc.SplitRows\nend\n_G[\"CCSplitRows\"] = DeprecatedClass.CCSplitRows()\n--CCSplitRows class will be Deprecated,end\n\n--CCSprite class will be Deprecated,begin\nfunction DeprecatedClass.CCSprite()\n    deprecatedTip(\"CCSprite\",\"cc.Sprite\")\n    return cc.Sprite\nend\n_G[\"CCSprite\"] = DeprecatedClass.CCSprite()\n--CCSprite class will be Deprecated,end\n\n--CCOrbitCamera class will be Deprecated,begin\nfunction DeprecatedClass.CCOrbitCamera()\n    deprecatedTip(\"CCOrbitCamera\",\"cc.OrbitCamera\")\n    return cc.OrbitCamera\nend\n_G[\"CCOrbitCamera\"] = DeprecatedClass.CCOrbitCamera()\n--CCOrbitCamera class will be Deprecated,end\n\n--CCUserDefault class will be Deprecated,begin\nfunction DeprecatedClass.CCUserDefault()\n    deprecatedTip(\"CCUserDefault\",\"cc.UserDefault\")\n    return cc.UserDefault\nend\n_G[\"CCUserDefault\"] = DeprecatedClass.CCUserDefault()\n--CCUserDefault class will be Deprecated,end\n\n--CCFadeOutUpTiles class will be Deprecated,begin\nfunction DeprecatedClass.CCFadeOutUpTiles()\n    deprecatedTip(\"CCFadeOutUpTiles\",\"cc.FadeOutUpTiles\")\n    return cc.FadeOutUpTiles\nend\n_G[\"CCFadeOutUpTiles\"] = DeprecatedClass.CCFadeOutUpTiles()\n--CCFadeOutUpTiles class will be Deprecated,end\n\n--CCParticleRain class will be Deprecated,begin\nfunction DeprecatedClass.CCParticleRain()\n    deprecatedTip(\"CCParticleRain\",\"cc.ParticleRain\")\n    return cc.ParticleRain\nend\n_G[\"CCParticleRain\"] = DeprecatedClass.CCParticleRain()\n--CCParticleRain class will be Deprecated,end\n\n--CCWaves class will be Deprecated,begin\nfunction DeprecatedClass.CCWaves()\n    deprecatedTip(\"CCWaves\",\"cc.Waves\")\n    return cc.Waves\nend\n_G[\"CCWaves\"] = DeprecatedClass.CCWaves()\n--CCWaves class will be Deprecated,end\n\n--CCEaseOut class will be Deprecated,begin\nfunction DeprecatedClass.CCEaseOut()\n    deprecatedTip(\"CCEaseOut\",\"cc.EaseOut\")\n    return cc.EaseOut\nend\n_G[\"CCEaseOut\"] = DeprecatedClass.CCEaseOut()\n--CCEaseOut class will be Deprecated,end\n\n--CCEaseBounceIn class will be Deprecated,begin\nfunction DeprecatedClass.CCEaseBounceIn()\n    deprecatedTip(\"CCEaseBounceIn\",\"cc.EaseBounceIn\")\n    return cc.EaseBounceIn\nend\n_G[\"CCEaseBounceIn\"] = DeprecatedClass.CCEaseBounceIn()\n--CCEaseBounceIn class will be Deprecated,end\n\n--CCMenuItemFont class will be Deprecated,begin\nfunction DeprecatedClass.CCMenuItemFont()\n    deprecatedTip(\"CCMenuItemFont\",\"cc.MenuItemFont\")\n    return cc.MenuItemFont\nend\n_G[\"CCMenuItemFont\"] = DeprecatedClass.CCMenuItemFont()\n--CCMenuItemFont class will be Deprecated,end\n\n--CCEaseSineOut class will be Deprecated,begin\nfunction DeprecatedClass.CCEaseSineOut()\n    deprecatedTip(\"CCEaseSineOut\",\"cc.EaseSineOut\")\n    return cc.EaseSineOut\nend\n_G[\"CCEaseSineOut\"] = DeprecatedClass.CCEaseSineOut()\n--CCEaseSineOut class will be Deprecated,end\n\n--CCTextureCache class will be Deprecated,begin\nfunction DeprecatedClass.CCTextureCache()\n    deprecatedTip(\"CCTextureCache\",\"cc.TextureCache\")\n    return cc.TextureCache\nend\n_G[\"CCTextureCache\"] = DeprecatedClass.CCTextureCache()\n--CCTextureCache class will be Deprecated,end\n\n--CCTiledGrid3D class will be Deprecated,begin\nfunction DeprecatedClass.CCTiledGrid3D()\n    deprecatedTip(\"CCTiledGrid3D\",\"cc.TiledGrid3D\")\n    return cc.TiledGrid3D\nend\n_G[\"CCTiledGrid3D\"] = DeprecatedClass.CCTiledGrid3D()\n--CCTiledGrid3D class will be Deprecated,end\n\n--CCRemoveSelf class will be Deprecated,begin\nfunction DeprecatedClass.CCRemoveSelf()\n    deprecatedTip(\"CCRemoveSelf\",\"cc.RemoveSelf\")\n    return cc.RemoveSelf\nend\n_G[\"CCRemoveSelf\"] = DeprecatedClass.CCRemoveSelf()\n--CCRemoveSelf class will be Deprecated,end\n\n--CCLabelTTF class will be Deprecated,begin\nfunction DeprecatedClass.CCLabelTTF()\n    deprecatedTip(\"CCLabelTTF\",\"cc.LabelTTF\")\n    return cc.LabelTTF\nend\n_G[\"CCLabelTTF\"] = DeprecatedClass.CCLabelTTF()\n--CCLabelTTF class will be Deprecated,end\n\n--CCTouch class will be Deprecated,begin\nfunction DeprecatedClass.CCTouch()\n    deprecatedTip(\"CCTouch\",\"cc.Touch\")\n    return cc.Touch\nend\n_G[\"CCTouch\"] = DeprecatedClass.CCTouch()\n--CCTouch class will be Deprecated,end\n\n--CCMoveBy class will be Deprecated,begin\nfunction DeprecatedClass.CCMoveBy()\n    deprecatedTip(\"CCMoveBy\",\"cc.MoveBy\")\n    return cc.MoveBy\nend\n_G[\"CCMoveBy\"] = DeprecatedClass.CCMoveBy()\n--CCMoveBy class will be Deprecated,end\n\n--CCMotionStreak class will be Deprecated,begin\nfunction DeprecatedClass.CCMotionStreak()\n    deprecatedTip(\"CCMotionStreak\",\"cc.MotionStreak\")\n    return cc.MotionStreak\nend\n_G[\"CCMotionStreak\"] = DeprecatedClass.CCMotionStreak()\n--CCMotionStreak class will be Deprecated,end\n\n--CCRotateBy class will be Deprecated,begin\nfunction DeprecatedClass.CCRotateBy()\n    deprecatedTip(\"CCRotateBy\",\"cc.RotateBy\")\n    return cc.RotateBy\nend\n_G[\"CCRotateBy\"] = DeprecatedClass.CCRotateBy()\n--CCRotateBy class will be Deprecated,end\n\n--CCFileUtils class will be Deprecated,begin\nfunction DeprecatedClass.CCFileUtils()\n    deprecatedTip(\"CCFileUtils\",\"cc.FileUtils\")\n    return cc.FileUtils\nend\n_G[\"CCFileUtils\"] = DeprecatedClass.CCFileUtils()\n--CCFileUtils class will be Deprecated,end\n\n--CCBezierBy class will be Deprecated,begin\nfunction DeprecatedClass.CCBezierBy()\n    deprecatedTip(\"CCBezierBy\",\"cc.BezierBy\")\n    return cc.BezierBy\nend\n_G[\"CCBezierBy\"] = DeprecatedClass.CCBezierBy()\n--CCBezierBy class will be Deprecated,end\n\n--CCTransitionFade class will be Deprecated,begin\nfunction DeprecatedClass.CCTransitionFade()\n    deprecatedTip(\"CCTransitionFade\",\"cc.TransitionFade\")\n    return cc.TransitionFade\nend\n_G[\"CCTransitionFade\"] = DeprecatedClass.CCTransitionFade()\n--CCTransitionFade class will be Deprecated,end\n\n--CCTransitionProgressOutIn class will be Deprecated,begin\nfunction DeprecatedClass.CCTransitionProgressOutIn()\n    deprecatedTip(\"CCTransitionProgressOutIn\",\"cc.TransitionProgressOutIn\")\n    return cc.TransitionProgressOutIn\nend\n_G[\"CCTransitionProgressOutIn\"] = DeprecatedClass.CCTransitionProgressOutIn()\n--CCTransitionProgressOutIn class will be Deprecated,end\n\n--CCCatmullRomBy class will be Deprecated,begin\nfunction DeprecatedClass.CCCatmullRomBy()\n    deprecatedTip(\"CCCatmullRomBy\",\"cc.CatmullRomBy\")\n    return cc.CatmullRomBy\nend\n_G[\"CCCatmullRomBy\"] = DeprecatedClass.CCCatmullRomBy()\n--CCCatmullRomBy class will be Deprecated,end\n\n--CCGridAction class will be Deprecated,begin\nfunction DeprecatedClass.CCGridAction()\n    deprecatedTip(\"CCGridAction\",\"cc.GridAction\")\n    return cc.GridAction\nend\n_G[\"CCGridAction\"] = DeprecatedClass.CCGridAction()\n--CCGridAction class will be Deprecated,end\n\n--CCShaky3D class will be Deprecated,begin\nfunction DeprecatedClass.CCShaky3D()\n    deprecatedTip(\"CCShaky3D\",\"cc.Shaky3D\")\n    return cc.Shaky3D\nend\n_G[\"CCShaky3D\"] = DeprecatedClass.CCShaky3D()\n--CCShaky3D class will be Deprecated,end\n\n--CCTransitionEaseScene class will be Deprecated,begin\nfunction DeprecatedClass.CCTransitionEaseScene()\n    deprecatedTip(\"CCTransitionEaseScene\",\"cc.TransitionEaseScene\")\n    return cc.TransitionEaseScene\nend\n_G[\"CCTransitionEaseScene\"] = DeprecatedClass.CCTransitionEaseScene()\n--CCTransitionEaseScene class will be Deprecated,end\n\n--CCSequence class will be Deprecated,begin\nfunction DeprecatedClass.CCSequence()\n    deprecatedTip(\"CCSequence\",\"cc.Sequence\")\n    return cc.Sequence\nend\n_G[\"CCSequence\"] = DeprecatedClass.CCSequence()\n--CCSequence class will be Deprecated,end\n\n--CCTransitionFadeUp class will be Deprecated,begin\nfunction DeprecatedClass.CCTransitionFadeUp()\n    deprecatedTip(\"CCTransitionFadeUp\",\"cc.TransitionFadeUp\")\n    return cc.TransitionFadeUp\nend\n_G[\"CCTransitionFadeUp\"] = DeprecatedClass.CCTransitionFadeUp()\n--CCTransitionFadeUp class will be Deprecated,end\n\n--CCTransitionProgressRadialCW class will be Deprecated,begin\nfunction DeprecatedClass.CCTransitionProgressRadialCW()\n    deprecatedTip(\"CCTransitionProgressRadialCW\",\"cc.TransitionProgressRadialCW\")\n    return cc.TransitionProgressRadialCW\nend\n_G[\"CCTransitionProgressRadialCW\"] = DeprecatedClass.CCTransitionProgressRadialCW()\n--CCTransitionProgressRadialCW class will be Deprecated,end\n\n--CCShuffleTiles class will be Deprecated,begin\nfunction DeprecatedClass.CCShuffleTiles()\n    deprecatedTip(\"CCShuffleTiles\",\"cc.ShuffleTiles\")\n    return cc.ShuffleTiles\nend\n_G[\"CCShuffleTiles\"] = DeprecatedClass.CCShuffleTiles()\n--CCShuffleTiles class will be Deprecated,end\n\n--CCTransitionSlideInR class will be Deprecated,begin\nfunction DeprecatedClass.CCTransitionSlideInR()\n    deprecatedTip(\"CCTransitionSlideInR\",\"cc.TransitionSlideInR\")\n    return cc.TransitionSlideInR\nend\n_G[\"CCTransitionSlideInR\"] = DeprecatedClass.CCTransitionSlideInR()\n--CCTransitionSlideInR class will be Deprecated,end\n\n--CCScene class will be Deprecated,begin\nfunction DeprecatedClass.CCScene()\n    deprecatedTip(\"CCScene\",\"cc.Scene\")\n    return cc.Scene\nend\n_G[\"CCScene\"] = DeprecatedClass.CCScene()\n--CCScene class will be Deprecated,end\n\n--CCParallaxNode class will be Deprecated,begin\nfunction DeprecatedClass.CCParallaxNode()\n    deprecatedTip(\"CCParallaxNode\",\"cc.ParallaxNode\")\n    return cc.ParallaxNode\nend\n_G[\"CCParallaxNode\"] = DeprecatedClass.CCParallaxNode()\n--CCParallaxNode class will be Deprecated,end\n\n--CCTransitionSlideInL class will be Deprecated,begin\nfunction DeprecatedClass.CCTransitionSlideInL()\n    deprecatedTip(\"CCTransitionSlideInL\",\"cc.TransitionSlideInL\")\n    return cc.TransitionSlideInL\nend\n_G[\"CCTransitionSlideInL\"] = DeprecatedClass.CCTransitionSlideInL()\n--CCTransitionSlideInL class will be Deprecated,end\n\n--CCWavesTiles3D class will be Deprecated,begin\nfunction DeprecatedClass.CCWavesTiles3D()\n    deprecatedTip(\"CCWavesTiles3D\",\"cc.WavesTiles3D\")\n    return cc.WavesTiles3D\nend\n_G[\"CCWavesTiles3D\"] = DeprecatedClass.CCWavesTiles3D()\n--CCWavesTiles3D class will be Deprecated,end\n\n--CCTransitionSlideInB class will be Deprecated,begin\nfunction DeprecatedClass.CCTransitionSlideInB()\n    deprecatedTip(\"CCTransitionSlideInB\",\"cc.TransitionSlideInB\")\n    return cc.TransitionSlideInB\nend\n_G[\"CCTransitionSlideInB\"] = DeprecatedClass.CCTransitionSlideInB()\n--CCTransitionSlideInB class will be Deprecated,end\n\n--CCSpeed class will be Deprecated,begin\nfunction DeprecatedClass.CCSpeed()\n    deprecatedTip(\"CCSpeed\",\"cc.Speed\")\n    return cc.Speed\nend\n_G[\"CCSpeed\"] = DeprecatedClass.CCSpeed()\n--CCSpeed class will be Deprecated,end\n\n--CCShatteredTiles3D class will be Deprecated,begin\nfunction DeprecatedClass.CCShatteredTiles3D()\n    deprecatedTip(\"CCShatteredTiles3D\",\"cc.ShatteredTiles3D\")\n    return cc.ShatteredTiles3D\nend\n_G[\"CCShatteredTiles3D\"] = DeprecatedClass.CCShatteredTiles3D()\n--CCShatteredTiles3D class will be Deprecated,end\n\n--CCCallFuncN class will be Deprecated,begin\nfunction DeprecatedClass.CCCallFuncN()\n    deprecatedTip(\"CCCallFuncN\",\"cc.CallFunc\")\n    return cc.CallFunc\nend\n_G[\"CCCallFuncN\"] = DeprecatedClass.CCCallFuncN()\n--CCCallFuncN class will be Deprecated,end\n\n--CCEGLViewProtocol class will be Deprecated,begin\nfunction DeprecatedClass.CCEGLViewProtocol()\n    deprecatedTip(\"CCEGLViewProtocol\",\"cc.GLViewProtocol\")\n    return cc.GLViewProtocol\nend\n_G[\"CCEGLViewProtocol\"] = DeprecatedClass.CCEGLViewProtocol()\n--CCEGLViewProtocol class will be Deprecated,end\n\n--CCEGLView class will be Deprecated,begin\nfunction DeprecatedClass.CCEGLView()\n    deprecatedTip(\"CCEGLView\",\"cc.GLView\")\n    return cc.GLView\nend\n\n_G[\"CCEGLView\"] = DeprecatedClass.CCEGLView()\n--CCEGLView class will be Deprecated,end\n\n--XMLHttpRequest class will be Deprecated,begin\nfunction DeprecatedClass.XMLHttpRequest()\n    deprecatedTip(\"XMLHttpRequest\",\"cc.XMLHttpRequest\")\n    return cc.XMLHttpRequest\nend\n_G[\"XMLHttpRequest\"] = DeprecatedClass.XMLHttpRequest()\n--XMLHttpRequest class will be Deprecated,end\n\n--EGLViewProtocol class will be Deprecated,begin\nfunction DeprecatedClass.EGLViewProtocol()\n    deprecatedTip(\"cc.EGLViewProtocol\",\"cc.GLViewProtocol\")\n    return cc.GLViewProtocol\nend\n_G[\"cc.EGLViewProtocol\"] = DeprecatedClass.EGLViewProtocol()\n--EGLViewProtocol class will be Deprecated,end\n\n--EGLView class will be Deprecated,begin\nfunction DeprecatedClass.EGLView()\n    deprecatedTip(\"cc.EGLView\",\"cc.GLView\")\n    return cc.GLView\nend\n_G[\"cc.EGLView\"] = DeprecatedClass.EGLView()\n--EGLView  class will be Deprecated,end\n\n--EGLView class will be Deprecated,begin\nfunction DeprecatedClass.EGLView()\n    deprecatedTip(\"cc.EGLView\",\"cc.GLView\")\n    print(cc.GLView)\n    return cc.GLView\nend\n_G[\"cc.EGLView\"] = DeprecatedClass.EGLView()\n--EGLView  class will be Deprecated,end\n\n--ShaderCache class will be Deprecated,begin\nfunction DeprecatedClass.ShaderCache()\n    deprecatedTip(\"cc.ShaderCache\",\"cc.GLProgramCache\")\n    return cc.GLProgramCache\nend\ncc.ShaderCache = DeprecatedClass.ShaderCache()\n--ShaderCache  class will be Deprecated,end\n\n\n\n"
  },
  {
    "path": "源代码/mir9/src/cocos/cocos2d/DeprecatedCocos2dEnum.lua",
    "content": "\n--Enums will be deprecated,begin\n_G.kCCTextAlignmentLeft              = cc.TEXT_ALIGNMENT_LEFT\n_G.kCCTextAlignmentRight             = cc.TEXT_ALIGNMENT_RIGHT\n_G.kCCTextAlignmentCenter            = cc.TEXT_ALIGNMENT_CENTER\n_G.kCCVerticalTextAlignmentTop       = cc.VERTICAL_TEXT_ALIGNMENT_TOP\n_G.kCCVerticalTextAlignmentCenter    = cc.VERTICAL_TEXT_ALIGNMENT_CENTER\n_G.kCCVerticalTextAlignmentBottom    = cc.VERTICAL_TEXT_ALIGNMENT_BOTTOM\n_G.kCCDirectorProjection3D           = cc.DIRECTOR_PROJECTION3_D\n_G.kCCDirectorProjection2D           = cc.DIRECTOR_PROJECTION2_D\n_G.kCCDirectorProjectionCustom       = cc.DIRECTOR_PROJECTION_CUSTOM\n_G.kCCDirectorProjectionDefault      = cc.DIRECTOR_PROJECTION_DEFAULT\n_G.kCCNodeTagInvalid                 = cc.NODE_TAG_INVALID\n_G.kCCNodeOnEnter                    = cc.NODE_ON_ENTER\n_G.kCCNodeOnExit                     = cc.NODE_ON_EXIT\n_G.kCCTexture2DPixelFormat_RGBA8888  = cc.TEXTURE2_D_PIXEL_FORMAT_RGB_A8888\n_G.kCCTexture2DPixelFormat_RGB888    = cc.TEXTURE2_D_PIXEL_FORMAT_RG_B888\n_G.kCCTexture2DPixelFormat_RGB565    = cc.TEXTURE2_D_PIXEL_FORMAT_RG_B565\n_G.kCCTexture2DPixelFormat_A8        = cc.TEXTURE2_D_PIXEL_FORMAT_A8\n_G.kCCTexture2DPixelFormat_I8        = cc.TEXTURE2_D_PIXEL_FORMAT_I8\n_G.kCCTexture2DPixelFormat_AI88      = cc.TEXTURE2_D_PIXEL_FORMAT_A_I88\n_G.kCCTexture2DPixelFormat_RGBA4444  = cc.TEXTURE2_D_PIXEL_FORMAT_RGB_A4444\n_G.kCCTexture2DPixelFormat_RGB5A1    = cc.TEXTURE2_D_PIXEL_FORMAT_RGB5_A1\n_G.kCCTexture2DPixelFormat_PVRTC4    = cc.TEXTURE2_D_PIXEL_FORMAT_PVRTC4\n_G.kCCTexture2DPixelFormat_PVRTC2    = cc.TEXTURE2_D_PIXEL_FORMAT_PVRTC2\n_G.kCCTexture2DPixelFormat_Default   = cc.TEXTURE2_D_PIXEL_FORMAT_DEFAULT\n_G.kCCImageFormatPNG                 = cc.IMAGE_FORMAT_PNG\n_G.kCCImageFormatJPEG                = cc.IMAGE_FORMAT_JPEG\n_G.kCCTouchesOneByOne                = cc.TOUCHES_ONE_BY_ONE\n_G.kCCTouchesAllAtOnce               = cc.TOUCHES_ALL_AT_ONCE\n_G.kCCTransitionOrientationLeftOver  = cc.TRANSITION_ORIENTATION_LEFT_OVER\n_G.kCCTransitionOrientationRightOver = cc.TRANSITION_ORIENTATION_RIGHT_OVER\n_G.kCCTransitionOrientationUpOver    = cc.TRANSITION_ORIENTATION_UP_OVER\n_G.kCCTransitionOrientationDownOver  = cc.TRANSITION_ORIENTATION_DOWN_OVER\n_G.kCCActionTagInvalid               = cc.ACTION_TAG_INVALID\n_G.kCCLabelAutomaticWidth            = cc.LABEL_AUTOMATIC_WIDTH\n_G.kCCMenuStateWaiting               = cc.MENU_STATE_WAITING\n_G.kCCMenuStateTrackingTouch         = cc.MENU_STATE_TRACKING_TOUCH\n_G.kCCMenuHandlerPriority            = cc.MENU_HANDLER_PRIORITY\n_G.kCCParticleDurationInfinity       = cc.PARTICLE_DURATION_INFINITY\n_G.kCCParticleStartSizeEqualToEndSize = cc.PARTICLE_START_SIZE_EQUAL_TO_END_SIZE\n_G.kCCParticleStartRadiusEqualToEndRadius = cc.PARTICLE_START_RADIUS_EQUAL_TO_END_RADIUS\n_G.kCCParticleModeGravity            = cc.PARTICLE_MODE_GRAVITY\n_G.kCCParticleModeRadius             = cc.PARTICLE_MODE_RADIUS\n_G.kCCPositionTypeFree               = cc.POSITION_TYPE_FREE\n_G.kCCPositionTypeRelative           = cc.POSITION_TYPE_RELATIVE\n_G.kCCPositionTypeGrouped            = cc.POSITION_TYPE_GROUPED\n_G.kCCProgressTimerTypeRadial        = cc.PROGRESS_TIMER_TYPE_RADIAL\n_G.kCCProgressTimerTypeBar           = cc.PROGRESS_TIMER_TYPE_BAR\n_G.kCCTMXTileHorizontalFlag          = cc.TMX_TILE_HORIZONTAL_FLAG\n_G.kCCTMXTileVerticalFlag            = cc.TMX_TILE_VERTICAL_FLAG\n_G.kCCTMXTileDiagonalFlag            = cc.TMX_TILE_DIAGONAL_FLAG\n_G.kCCFlipedAll                      = cc.FLIPED_ALL\n_G.kCCFlippedMask                    = cc.FLIPPED_MASK\n\n_G.kLanguageEnglish  = cc.LANGUAGE_ENGLISH\n_G.kLanguageChinese  = cc.LANGUAGE_CHINESE\n_G.kLanguageFrench   = cc.LANGUAGE_FRENCH\n_G.kLanguageItalian  = cc.LANGUAGE_ITALIAN\n_G.kLanguageGerman   = cc.LANGUAGE_GERMAN\n_G.kLanguageSpanish  = cc.LANGUAGE_SPANISH\n_G.kLanguageRussian  = cc.LANGUAGE_RUSSIAN\n_G.kLanguageKorean   = cc.LANGUAGE_KOREAN\n_G.kLanguageJapanese = cc.LANGUAGE_JAPANESE\n_G.kLanguageHungarian = cc.LANGUAGE_HUNGARIAN\n_G.kLanguagePortuguese = cc.LANGUAGE_PORTUGUESE\n_G.kLanguageArabic     = cc.LANGUAGE_ARABIC\n_G.kTargetWindows      = cc.PLATFORM_OS_WINDOWS\n_G.kTargetLinux        = cc.PLATFORM_OS_LINUX\n_G.kTargetMacOS        = cc.PLATFORM_OS_MAC\n_G.kTargetAndroid      = cc.PLATFORM_OS_ANDROID\n_G.kTargetIphone       = cc.PLATFORM_OS_IPHONE\n_G.kTargetIpad         = cc.PLATFORM_OS_IPAD\n_G.kTargetBlackBerry   = cc.PLATFORM_OS_BLACKBERRY\n\n_G.GL_ZERO                           = gl.ZERO\n_G.GL_ONE                            = gl.ONE\n_G.GL_SRC_COLOR                      = gl.SRC_COLOR\n_G.GL_ONE_MINUS_SRC_COLOR            = gl.ONE_MINUS_SRC_COLOR\n_G.GL_SRC_ALPHA                      = gl.SRC_ALPHA\n_G.GL_ONE_MINUS_SRC_ALPHA            = gl.ONE_MINUS_SRC_ALPHA\n_G.GL_DST_ALPHA                      = gl.DST_ALPHA\n_G.GL_ONE_MINUS_DST_ALPHA            = gl.ONE_MINUS_DST_ALPHA\n_G.GL_DST_COLOR                      = gl.DST_COLOR\n_G.GL_ONE_MINUS_DST_COLOR            = gl.ONE_MINUS_DST_COLOR\n_G.GL_RENDERBUFFER_INTERNAL_FORMAT = gl.RENDERBUFFER_INTERNAL_FORMAT\n_G.GL_LINE_WIDTH = gl.LINE_WIDTH\n_G.GL_CONSTANT_ALPHA = gl.CONSTANT_ALPHA\n_G.GL_BLEND_SRC_ALPHA = gl.BLEND_SRC_ALPHA\n_G.GL_GREEN_BITS = gl.GREEN_BITS\n_G.GL_STENCIL_REF = gl.STENCIL_REF\n_G.GL_ONE_MINUS_SRC_ALPHA = gl.ONE_MINUS_SRC_ALPHA\n_G.GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE = gl.FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE\n_G.GL_CCW = gl.CCW\n_G.GL_MAX_TEXTURE_IMAGE_UNITS = gl.MAX_TEXTURE_IMAGE_UNITS\n_G.GL_BACK = gl.BACK\n_G.GL_ACTIVE_ATTRIBUTES = gl.ACTIVE_ATTRIBUTES\n_G.GL_TEXTURE_CUBE_MAP_POSITIVE_X = gl.TEXTURE_CUBE_MAP_POSITIVE_X\n_G.GL_STENCIL_BACK_VALUE_MASK = gl.STENCIL_BACK_VALUE_MASK\n_G.GL_TEXTURE_CUBE_MAP_POSITIVE_Z = gl.TEXTURE_CUBE_MAP_POSITIVE_Z\n_G.GL_ONE = gl.ONE\n_G.GL_TRUE = gl.TRUE\n_G.GL_TEXTURE12 = gl.TEXTURE12\n_G.GL_LINK_STATUS = gl.LINK_STATUS\n_G.GL_BLEND = gl.BLEND\n_G.GL_LESS = gl.LESS\n_G.GL_TEXTURE16 = gl.TEXTURE16\n_G.GL_BOOL_VEC2 = gl.BOOL_VEC2\n_G.GL_KEEP = gl.KEEP\n_G.GL_DST_COLOR = gl.DST_COLOR\n_G.GL_VERTEX_ATTRIB_ARRAY_ENABLED = gl.VERTEX_ATTRIB_ARRAY_ENABLED\n_G.GL_EXTENSIONS = gl.EXTENSIONS\n_G.GL_FRONT = gl.FRONT\n_G.GL_DST_ALPHA = gl.DST_ALPHA\n_G.GL_ATTACHED_SHADERS = gl.ATTACHED_SHADERS\n_G.GL_STENCIL_BACK_FUNC = gl.STENCIL_BACK_FUNC\n_G.GL_ONE_MINUS_DST_COLOR = gl.ONE_MINUS_DST_COLOR\n_G.GL_BLEND_EQUATION = gl.BLEND_EQUATION\n_G.GL_RENDERBUFFER_DEPTH_SIZE = gl.RENDERBUFFER_DEPTH_SIZE\n_G.GL_PACK_ALIGNMENT = gl.PACK_ALIGNMENT\n_G.GL_VENDOR = gl.VENDOR\n_G.GL_NEAREST_MIPMAP_LINEAR = gl.NEAREST_MIPMAP_LINEAR\n_G.GL_TEXTURE_CUBE_MAP_POSITIVE_Y = gl.TEXTURE_CUBE_MAP_POSITIVE_Y\n_G.GL_NEAREST = gl.NEAREST\n_G.GL_RENDERBUFFER_WIDTH = gl.RENDERBUFFER_WIDTH\n_G.GL_ARRAY_BUFFER_BINDING = gl.ARRAY_BUFFER_BINDING\n_G.GL_ARRAY_BUFFER = gl.ARRAY_BUFFER\n_G.GL_LEQUAL = gl.LEQUAL\n_G.GL_VERSION = gl.VERSION\n_G.GL_COLOR_CLEAR_VALUE = gl.COLOR_CLEAR_VALUE\n_G.GL_RENDERER = gl.RENDERER\n_G.GL_STENCIL_BACK_PASS_DEPTH_PASS = gl.STENCIL_BACK_PASS_DEPTH_PASS\n_G.GL_STENCIL_BACK_PASS_DEPTH_FAIL = gl.STENCIL_BACK_PASS_DEPTH_FAIL\n_G.GL_STENCIL_BACK_WRITEMASK = gl.STENCIL_BACK_WRITEMASK\n_G.GL_BOOL = gl.BOOL\n_G.GL_VIEWPORT = gl.VIEWPORT\n_G.GL_FRAGMENT_SHADER = gl.FRAGMENT_SHADER\n_G.GL_LUMINANCE = gl.LUMINANCE\n_G.GL_DECR_WRAP = gl.DECR_WRAP\n_G.GL_FUNC_ADD = gl.FUNC_ADD\n_G.GL_ONE_MINUS_DST_ALPHA = gl.ONE_MINUS_DST_ALPHA\n_G.GL_OUT_OF_MEMORY = gl.OUT_OF_MEMORY\n_G.GL_BOOL_VEC4 = gl.BOOL_VEC4\n_G.GL_POLYGON_OFFSET_FACTOR = gl.POLYGON_OFFSET_FACTOR\n_G.GL_STATIC_DRAW = gl.STATIC_DRAW\n_G.GL_DITHER = gl.DITHER\n_G.GL_TEXTURE31 = gl.TEXTURE31\n_G.GL_TEXTURE30 = gl.TEXTURE30\n_G.GL_UNSIGNED_BYTE = gl.UNSIGNED_BYTE\n_G.GL_DEPTH_COMPONENT16 = gl.DEPTH_COMPONENT16\n_G.GL_TEXTURE23 = gl.TEXTURE23\n_G.GL_DEPTH_TEST = gl.DEPTH_TEST\n_G.GL_STENCIL_PASS_DEPTH_FAIL = gl.STENCIL_PASS_DEPTH_FAIL\n_G.GL_BOOL_VEC3 = gl.BOOL_VEC3\n_G.GL_POLYGON_OFFSET_UNITS = gl.POLYGON_OFFSET_UNITS\n_G.GL_TEXTURE_BINDING_2D = gl.TEXTURE_BINDING_2D\n_G.GL_TEXTURE21 = gl.TEXTURE21\n_G.GL_UNPACK_ALIGNMENT = gl.UNPACK_ALIGNMENT\n_G.GL_DONT_CARE = gl.DONT_CARE\n_G.GL_BUFFER_SIZE = gl.BUFFER_SIZE\n_G.GL_FLOAT_MAT3 = gl.FLOAT_MAT3\n_G.GL_UNSIGNED_SHORT_5_6_5 = gl.UNSIGNED_SHORT_5_6_5\n_G.GL_INT_VEC2 = gl.INT_VEC2\n_G.GL_UNSIGNED_SHORT_4_4_4_4 = gl.UNSIGNED_SHORT_4_4_4_4\n_G.GL_NONE = gl.NONE\n_G.GL_BLEND_DST_ALPHA = gl.BLEND_DST_ALPHA\n_G.GL_VERTEX_ATTRIB_ARRAY_SIZE = gl.VERTEX_ATTRIB_ARRAY_SIZE\n_G.GL_SRC_COLOR = gl.SRC_COLOR\n_G.GL_COMPRESSED_TEXTURE_FORMATS = gl.COMPRESSED_TEXTURE_FORMATS\n_G.GL_STENCIL_ATTACHMENT = gl.STENCIL_ATTACHMENT\n_G.GL_MAX_VERTEX_ATTRIBS = gl.MAX_VERTEX_ATTRIBS\n_G.GL_NUM_COMPRESSED_TEXTURE_FORMATS = gl.NUM_COMPRESSED_TEXTURE_FORMATS\n_G.GL_BLEND_EQUATION_RGB = gl.BLEND_EQUATION_RGB\n_G.GL_TEXTURE = gl.TEXTURE\n_G.GL_LINEAR_MIPMAP_LINEAR = gl.LINEAR_MIPMAP_LINEAR\n_G.GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING = gl.VERTEX_ATTRIB_ARRAY_BUFFER_BINDING\n_G.GL_CURRENT_PROGRAM = gl.CURRENT_PROGRAM\n_G.GL_COLOR_BUFFER_BIT = gl.COLOR_BUFFER_BIT\n_G.GL_TEXTURE20 = gl.TEXTURE20\n_G.GL_ACTIVE_ATTRIBUTE_MAX_LENGTH = gl.ACTIVE_ATTRIBUTE_MAX_LENGTH\n_G.GL_TEXTURE28 = gl.TEXTURE28\n_G.GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE = gl.FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE\n_G.GL_TEXTURE22 = gl.TEXTURE22\n_G.GL_ELEMENT_ARRAY_BUFFER_BINDING = gl.ELEMENT_ARRAY_BUFFER_BINDING\n_G.GL_STREAM_DRAW = gl.STREAM_DRAW\n_G.GL_SCISSOR_BOX = gl.SCISSOR_BOX\n_G.GL_TEXTURE26 = gl.TEXTURE26\n_G.GL_TEXTURE27 = gl.TEXTURE27\n_G.GL_TEXTURE24 = gl.TEXTURE24\n_G.GL_TEXTURE25 = gl.TEXTURE25\n_G.GL_NO_ERROR = gl.NO_ERROR\n_G.GL_TEXTURE29 = gl.TEXTURE29\n_G.GL_FLOAT_MAT4 = gl.FLOAT_MAT4\n_G.GL_VERTEX_ATTRIB_ARRAY_NORMALIZED = gl.VERTEX_ATTRIB_ARRAY_NORMALIZED\n_G.GL_SAMPLE_COVERAGE_INVERT = gl.SAMPLE_COVERAGE_INVERT\n_G.GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL = gl.FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL\n_G.GL_FLOAT_VEC3 = gl.FLOAT_VEC3\n_G.GL_STENCIL_CLEAR_VALUE = gl.STENCIL_CLEAR_VALUE\n_G.GL_UNSIGNED_SHORT_5_5_5_1 = gl.UNSIGNED_SHORT_5_5_5_1\n_G.GL_ACTIVE_UNIFORMS = gl.ACTIVE_UNIFORMS\n_G.GL_INVALID_OPERATION = gl.INVALID_OPERATION\n_G.GL_DEPTH_ATTACHMENT = gl.DEPTH_ATTACHMENT\n_G.GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS = gl.MAX_COMBINED_TEXTURE_IMAGE_UNITS\n_G.GL_FRAMEBUFFER_COMPLETE = gl.FRAMEBUFFER_COMPLETE\n_G.GL_ONE_MINUS_CONSTANT_COLOR = gl.ONE_MINUS_CONSTANT_COLOR\n_G.GL_TEXTURE2 = gl.TEXTURE2\n_G.GL_TEXTURE1 = gl.TEXTURE1\n_G.GL_GEQUAL = gl.GEQUAL\n_G.GL_TEXTURE7 = gl.TEXTURE7\n_G.GL_TEXTURE6 = gl.TEXTURE6\n_G.GL_TEXTURE5 = gl.TEXTURE5\n_G.GL_TEXTURE4 = gl.TEXTURE4\n_G.GL_GENERATE_MIPMAP_HINT = gl.GENERATE_MIPMAP_HINT\n_G.GL_ONE_MINUS_SRC_COLOR = gl.ONE_MINUS_SRC_COLOR\n_G.GL_TEXTURE9 = gl.TEXTURE9\n_G.GL_STENCIL_TEST = gl.STENCIL_TEST\n_G.GL_COLOR_WRITEMASK = gl.COLOR_WRITEMASK\n_G.GL_DEPTH_COMPONENT = gl.DEPTH_COMPONENT\n_G.GL_STENCIL_INDEX8 = gl.STENCIL_INDEX8\n_G.GL_VERTEX_ATTRIB_ARRAY_TYPE = gl.VERTEX_ATTRIB_ARRAY_TYPE\n_G.GL_FLOAT_VEC2 = gl.FLOAT_VEC2\n_G.GL_BLUE_BITS = gl.BLUE_BITS\n_G.GL_VERTEX_SHADER = gl.VERTEX_SHADER\n_G.GL_SUBPIXEL_BITS = gl.SUBPIXEL_BITS\n_G.GL_STENCIL_WRITEMASK = gl.STENCIL_WRITEMASK\n_G.GL_FLOAT_VEC4 = gl.FLOAT_VEC4\n_G.GL_TEXTURE17 = gl.TEXTURE17\n_G.GL_ONE_MINUS_CONSTANT_ALPHA = gl.ONE_MINUS_CONSTANT_ALPHA\n_G.GL_TEXTURE15 = gl.TEXTURE15\n_G.GL_TEXTURE14 = gl.TEXTURE14\n_G.GL_TEXTURE13 = gl.TEXTURE13\n_G.GL_SAMPLES = gl.SAMPLES\n_G.GL_TEXTURE11 = gl.TEXTURE11\n_G.GL_TEXTURE10 = gl.TEXTURE10\n_G.GL_FUNC_SUBTRACT = gl.FUNC_SUBTRACT\n_G.GL_STENCIL_BUFFER_BIT = gl.STENCIL_BUFFER_BIT\n_G.GL_TEXTURE19 = gl.TEXTURE19\n_G.GL_TEXTURE18 = gl.TEXTURE18\n_G.GL_NEAREST_MIPMAP_NEAREST = gl.NEAREST_MIPMAP_NEAREST\n_G.GL_SHORT = gl.SHORT\n_G.GL_RENDERBUFFER_BINDING = gl.RENDERBUFFER_BINDING\n_G.GL_REPEAT = gl.REPEAT\n_G.GL_TEXTURE_MIN_FILTER = gl.TEXTURE_MIN_FILTER\n_G.GL_RED_BITS = gl.RED_BITS\n_G.GL_FRONT_FACE = gl.FRONT_FACE\n_G.GL_BLEND_COLOR = gl.BLEND_COLOR\n_G.GL_MIRRORED_REPEAT = gl.MIRRORED_REPEAT\n_G.GL_INT_VEC4 = gl.INT_VEC4\n_G.GL_MAX_CUBE_MAP_TEXTURE_SIZE = gl.MAX_CUBE_MAP_TEXTURE_SIZE\n_G.GL_RENDERBUFFER_BLUE_SIZE = gl.RENDERBUFFER_BLUE_SIZE\n_G.GL_SAMPLE_COVERAGE = gl.SAMPLE_COVERAGE\n_G.GL_SRC_ALPHA = gl.SRC_ALPHA\n_G.GL_FUNC_REVERSE_SUBTRACT = gl.FUNC_REVERSE_SUBTRACT\n_G.GL_DEPTH_WRITEMASK = gl.DEPTH_WRITEMASK\n_G.GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT = gl.FRAMEBUFFER_INCOMPLETE_ATTACHMENT\n_G.GL_POLYGON_OFFSET_FILL = gl.POLYGON_OFFSET_FILL\n_G.GL_STENCIL_FUNC = gl.STENCIL_FUNC\n_G.GL_REPLACE = gl.REPLACE\n_G.GL_LUMINANCE_ALPHA = gl.LUMINANCE_ALPHA\n_G.GL_DEPTH_RANGE = gl.DEPTH_RANGE\n_G.GL_FASTEST = gl.FASTEST\n_G.GL_STENCIL_FAIL = gl.STENCIL_FAIL\n_G.GL_UNSIGNED_SHORT = gl.UNSIGNED_SHORT\n_G.GL_RENDERBUFFER_HEIGHT = gl.RENDERBUFFER_HEIGHT\n_G.GL_STENCIL_BACK_FAIL = gl.STENCIL_BACK_FAIL\n_G.GL_BLEND_SRC_RGB = gl.BLEND_SRC_RGB\n_G.GL_TEXTURE3 = gl.TEXTURE3\n_G.GL_RENDERBUFFER = gl.RENDERBUFFER\n_G.GL_RGB5_A1 = gl.RGB5_A1\n_G.GL_RENDERBUFFER_ALPHA_SIZE = gl.RENDERBUFFER_ALPHA_SIZE\n_G.GL_RENDERBUFFER_STENCIL_SIZE = gl.RENDERBUFFER_STENCIL_SIZE\n_G.GL_NOTEQUAL = gl.NOTEQUAL\n_G.GL_BLEND_DST_RGB = gl.BLEND_DST_RGB\n_G.GL_FRONT_AND_BACK = gl.FRONT_AND_BACK\n_G.GL_TEXTURE_BINDING_CUBE_MAP = gl.TEXTURE_BINDING_CUBE_MAP\n_G.GL_MAX_RENDERBUFFER_SIZE = gl.MAX_RENDERBUFFER_SIZE\n_G.GL_ZERO = gl.ZERO\n_G.GL_TEXTURE0 = gl.TEXTURE0\n_G.GL_SAMPLE_ALPHA_TO_COVERAGE = gl.SAMPLE_ALPHA_TO_COVERAGE\n_G.GL_BUFFER_USAGE = gl.BUFFER_USAGE\n_G.GL_ACTIVE_TEXTURE = gl.ACTIVE_TEXTURE\n_G.GL_BYTE = gl.BYTE\n_G.GL_CW = gl.CW\n_G.GL_DYNAMIC_DRAW = gl.DYNAMIC_DRAW\n_G.GL_RENDERBUFFER_RED_SIZE = gl.RENDERBUFFER_RED_SIZE\n_G.GL_FALSE = gl.FALSE\n_G.GL_GREATER = gl.GREATER\n_G.GL_RGBA4 = gl.RGBA4\n_G.GL_VALIDATE_STATUS = gl.VALIDATE_STATUS\n_G.GL_STENCIL_BITS = gl.STENCIL_BITS\n_G.GL_RGB = gl.RGB\n_G.GL_INT = gl.INT\n_G.GL_DEPTH_FUNC = gl.DEPTH_FUNC\n_G.GL_SAMPLER_2D = gl.SAMPLER_2D\n_G.GL_NICEST = gl.NICEST\n_G.GL_MAX_VIEWPORT_DIMS = gl.MAX_VIEWPORT_DIMS\n_G.GL_CULL_FACE = gl.CULL_FACE\n_G.GL_INT_VEC3 = gl.INT_VEC3\n_G.GL_ALIASED_POINT_SIZE_RANGE = gl.ALIASED_POINT_SIZE_RANGE\n_G.GL_INVALID_ENUM = gl.INVALID_ENUM\n_G.GL_INVERT = gl.INVERT\n_G.GL_CULL_FACE_MODE = gl.CULL_FACE_MODE\n_G.GL_TEXTURE8 = gl.TEXTURE8\n_G.GL_VERTEX_ATTRIB_ARRAY_POINTER = gl.VERTEX_ATTRIB_ARRAY_POINTER\n_G.GL_TEXTURE_WRAP_S = gl.TEXTURE_WRAP_S\n_G.GL_VERTEX_ATTRIB_ARRAY_STRIDE = gl.VERTEX_ATTRIB_ARRAY_STRIDE\n_G.GL_LINES = gl.LINES\n_G.GL_EQUAL = gl.EQUAL\n_G.GL_LINE_LOOP = gl.LINE_LOOP\n_G.GL_TEXTURE_WRAP_T = gl.TEXTURE_WRAP_T\n_G.GL_DEPTH_BUFFER_BIT = gl.DEPTH_BUFFER_BIT\n_G.GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS = gl.MAX_VERTEX_TEXTURE_IMAGE_UNITS\n_G.GL_SHADER_TYPE = gl.SHADER_TYPE\n_G.GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME = gl.FRAMEBUFFER_ATTACHMENT_OBJECT_NAME\n_G.GL_TEXTURE_CUBE_MAP_NEGATIVE_X = gl.TEXTURE_CUBE_MAP_NEGATIVE_X\n_G.GL_TEXTURE_CUBE_MAP_NEGATIVE_Y = gl.TEXTURE_CUBE_MAP_NEGATIVE_Y\n_G.GL_TEXTURE_CUBE_MAP_NEGATIVE_Z = gl.TEXTURE_CUBE_MAP_NEGATIVE_Z\n_G.GL_DECR = gl.DECR\n_G.GL_DELETE_STATUS = gl.DELETE_STATUS\n_G.GL_DEPTH_BITS = gl.DEPTH_BITS\n_G.GL_INCR = gl.INCR\n_G.GL_SAMPLE_COVERAGE_VALUE = gl.SAMPLE_COVERAGE_VALUE\n_G.GL_ALPHA_BITS = gl.ALPHA_BITS\n_G.GL_FLOAT_MAT2 = gl.FLOAT_MAT2\n_G.GL_LINE_STRIP = gl.LINE_STRIP\n_G.GL_SHADER_SOURCE_LENGTH = gl.SHADER_SOURCE_LENGTH\n_G.GL_INVALID_VALUE = gl.INVALID_VALUE\n_G.GL_NEVER = gl.NEVER\n_G.GL_INCR_WRAP = gl.INCR_WRAP\n_G.GL_BLEND_EQUATION_ALPHA = gl.BLEND_EQUATION_ALPHA\n_G.GL_TEXTURE_MAG_FILTER = gl.TEXTURE_MAG_FILTER\n_G.GL_POINTS = gl.POINTS\n_G.GL_COLOR_ATTACHMENT0 = gl.COLOR_ATTACHMENT0\n_G.GL_RGBA = gl.RGBA\n_G.GL_SRC_ALPHA_SATURATE = gl.SRC_ALPHA_SATURATE\n_G.GL_SAMPLER_CUBE = gl.SAMPLER_CUBE\n_G.GL_FRAMEBUFFER = gl.FRAMEBUFFER\n_G.GL_TEXTURE_CUBE_MAP = gl.TEXTURE_CUBE_MAP\n_G.GL_SAMPLE_BUFFERS = gl.SAMPLE_BUFFERS\n_G.GL_LINEAR = gl.LINEAR\n_G.GL_LINEAR_MIPMAP_NEAREST = gl.LINEAR_MIPMAP_NEAREST\n_G.GL_ACTIVE_UNIFORM_MAX_LENGTH = gl.ACTIVE_UNIFORM_MAX_LENGTH\n_G.GL_STENCIL_BACK_REF = gl.STENCIL_BACK_REF\n_G.GL_ELEMENT_ARRAY_BUFFER = gl.ELEMENT_ARRAY_BUFFER\n_G.GL_CLAMP_TO_EDGE = gl.CLAMP_TO_EDGE\n_G.GL_TRIANGLE_STRIP = gl.TRIANGLE_STRIP\n_G.GL_CONSTANT_COLOR = gl.CONSTANT_COLOR\n_G.GL_COMPILE_STATUS = gl.COMPILE_STATUS\n_G.GL_RENDERBUFFER_GREEN_SIZE = gl.RENDERBUFFER_GREEN_SIZE\n_G.GL_UNSIGNED_INT = gl.UNSIGNED_INT\n_G.GL_DEPTH_CLEAR_VALUE = gl.DEPTH_CLEAR_VALUE\n_G.GL_ALIASED_LINE_WIDTH_RANGE = gl.ALIASED_LINE_WIDTH_RANGE\n_G.GL_SHADING_LANGUAGE_VERSION = gl.SHADING_LANGUAGE_VERSION\n_G.GL_FRAMEBUFFER_UNSUPPORTED = gl.FRAMEBUFFER_UNSUPPORTED\n_G.GL_INFO_LOG_LENGTH = gl.INFO_LOG_LENGTH\n_G.GL_STENCIL_PASS_DEPTH_PASS = gl.STENCIL_PASS_DEPTH_PASS\n_G.GL_STENCIL_VALUE_MASK = gl.STENCIL_VALUE_MASK\n_G.GL_ALWAYS = gl.ALWAYS\n_G.GL_MAX_TEXTURE_SIZE = gl.MAX_TEXTURE_SIZE\n_G.GL_FLOAT = gl.FLOAT\n_G.GL_FRAMEBUFFER_BINDING = gl.FRAMEBUFFER_BINDING\n_G.GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT = gl.FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT\n_G.GL_TRIANGLE_FAN = gl.TRIANGLE_FAN\n_G.GL_INVALID_FRAMEBUFFER_OPERATION = gl.INVALID_FRAMEBUFFER_OPERATION\n_G.GL_TEXTURE_2D = gl.TEXTURE_2D\n_G.GL_ALPHA = gl.ALPHA\n_G.GL_CURRENT_VERTEX_ATTRIB = gl.CURRENT_VERTEX_ATTRIB\n_G.GL_SCISSOR_TEST = gl.SCISSOR_TEST\n_G.GL_TRIANGLES = gl.TRIANGLES\n"
  },
  {
    "path": "源代码/mir9/src/cocos/cocos2d/DeprecatedCocos2dFunc.lua",
    "content": "\n--tip\nlocal function deprecatedTip(old_name,new_name)\n    print(\"\\n********** \\n\"..old_name..\" was deprecated please use \".. new_name .. \" instead.\\n**********\")\nend\n\n--functions of CCDirector will be deprecated,begin\nlocal CCDirectorDeprecated = { }\nfunction CCDirectorDeprecated.sharedDirector()\n    deprecatedTip(\"CCDirector:sharedDirector\",\"cc.Director:getInstance\")\n    return cc.Director:getInstance()\nend\nCCDirector.sharedDirector = CCDirectorDeprecated.sharedDirector\n--functions of CCDirector will be deprecated,end\n\n\n--functions of CCTextureCache will be deprecated begin\nlocal TextureCacheDeprecated = {}\nfunction TextureCacheDeprecated.getInstance(self)\n    deprecatedTip(\"cc.TextureCache:getInstance\",\"cc.Director:getInstance():getTextureCache\")\n    return cc.Director:getInstance():getTextureCache()\nend\ncc.TextureCache.getInstance = TextureCacheDeprecated.getInstance\n\nfunction TextureCacheDeprecated.destroyInstance(self)\n    deprecatedTip(\"cc.TextureCache:destroyInstance\",\"cc.Director:getInstance():destroyTextureCache\")\n    return cc.Director:getInstance():destroyTextureCache()\nend\ncc.TextureCache.destroyInstance = TextureCacheDeprecated.destroyInstance\n\nfunction TextureCacheDeprecated.dumpCachedTextureInfo(self)\n    deprecatedTip(\"self:dumpCachedTextureInfo\",\"self:getCachedTextureInfo\")\n    return print(self:getCachedTextureInfo())\nend\ncc.TextureCache.dumpCachedTextureInfo = TextureCacheDeprecated.dumpCachedTextureInfo\n\nlocal CCTextureCacheDeprecated = { }\nfunction CCTextureCacheDeprecated.sharedTextureCache()\n    deprecatedTip(\"CCTextureCache:sharedTextureCache\",\"CCTextureCache:getInstance\")\n    return cc.TextureCache:getInstance()\nend\nrawset(CCTextureCache,\"sharedTextureCache\",CCTextureCacheDeprecated.sharedTextureCache)\n\nfunction CCTextureCacheDeprecated.purgeSharedTextureCache()\n    deprecatedTip(\"CCTextureCache:purgeSharedTextureCache\",\"CCTextureCache:destroyInstance\")\n    return cc.TextureCache:destroyInstance()\nend\nrawset(CCTextureCache,\"purgeSharedTextureCache\",CCTextureCacheDeprecated.purgeSharedTextureCache)\n\nfunction CCTextureCacheDeprecated.addUIImage(self, image, key)\n    deprecatedTip(\"CCTextureCache:addUIImage\",\"CCTextureCache:addImage\")\n    return self:addImage(image,key)\nend\nCCTextureCache.addUIImage = CCTextureCacheDeprecated.addUIImage\n--functions of CCTextureCache will be deprecated end\n\n--functions of CCAnimation will be deprecated begin\nlocal CCAnimationDeprecated = {}\nfunction CCAnimationDeprecated.addSpriteFrameWithFileName(self,...)\n    deprecatedTip(\"CCAnimationDeprecated:addSpriteFrameWithFileName\",\"cc.Animation:addSpriteFrameWithFile\")\n    return self:addSpriteFrameWithFile(...)\nend\nCCAnimation.addSpriteFrameWithFileName = CCAnimationDeprecated.addSpriteFrameWithFileName\n--functions of CCAnimation will be deprecated end\n\n\n--functions of CCAnimationCache will be deprecated begin\nlocal CCAnimationCacheDeprecated = { }\nfunction CCAnimationCacheDeprecated.sharedAnimationCache()\n    deprecatedTip(\"CCAnimationCache:sharedAnimationCache\",\"CCAnimationCache:getInstance\")\n    return CCAnimationCache:getInstance()\nend\nCCAnimationCache.sharedAnimationCache = CCAnimationCacheDeprecated.sharedAnimationCache\n\nfunction CCAnimationCacheDeprecated.purgeSharedAnimationCache()\n    deprecatedTip(\"CCAnimationCache:purgeSharedAnimationCache\",\"CCAnimationCache:destroyInstance\")\n    return CCAnimationCache:destroyInstance()\nend\nCCAnimationCache.purgeSharedAnimationCache = CCAnimationCacheDeprecated.purgeSharedAnimationCache\n\nfunction CCAnimationCacheDeprecated.addAnimationsWithFile(self,...)\n    deprecatedTip(\"CCAnimationCache:addAnimationsWithFile\",\"cc.AnimationCache:addAnimations\")\n    return self:addAnimations(...)\nend\nCCAnimationCache.addAnimationsWithFile = CCAnimationCacheDeprecated.addAnimationsWithFile\n\nfunction CCAnimationCacheDeprecated.animationByName(self,...)\n    deprecatedTip(\"CCAnimationCache:animationByName\",\"cc.AnimationCache:getAnimation\")\n    return self:getAnimation(...)\nend\nCCAnimationCache.animationByName = CCAnimationCacheDeprecated.animationByName\n\nfunction CCAnimationCacheDeprecated.removeAnimationByName(self)\n    deprecatedTip(\"CCAnimationCache:removeAnimationByName\",\"cc.AnimationCache:removeAnimation\")\n    return self:removeAnimation()\nend\nCCAnimationCache.removeAnimationByName = CCAnimationCacheDeprecated.removeAnimationByName\n--functions of CCAnimationCache will be deprecated end\n\n--functions of CCFileUtils will be deprecated end\nlocal CCFileUtilsDeprecated = { }\nfunction CCFileUtilsDeprecated.sharedFileUtils()\n    deprecatedTip(\"CCFileUtils:sharedFileUtils\",\"CCFileUtils:getInstance\")\n    return cc.FileUtils:getInstance()\nend\nCCFileUtils.sharedFileUtils = CCFileUtilsDeprecated.sharedFileUtils\n\nfunction CCFileUtilsDeprecated.purgeFileUtils()\n    deprecatedTip(\"CCFileUtils:purgeFileUtils\",\"CCFileUtils:destroyInstance\")\n    return cc.FileUtils:destroyInstance()\nend\nCCFileUtils.purgeFileUtils = CCFileUtilsDeprecated.purgeFileUtils\n--functions of CCFileUtils will be deprecated end\n\n--functions of CCMenu will be deprecated begin\nlocal CCMenuDeprecated = { }\nfunction CCMenuDeprecated.createWithItem(self,...)\n    deprecatedTip(\"CCMenuDeprecated:createWithItem\",\"cc.Menu:createWithItem\")\n    return self:create(...)\nend\nCCMenu.createWithItem = CCMenuDeprecated.createWithItem\n\nfunction CCMenuDeprecated.setHandlerPriority(self)\n    print(\"\\n********** \\n\"..\"setHandlerPriority was deprecated in 3.0. \\n**********\")\nend\nCCMenu.setHandlerPriority = CCMenuDeprecated.setHandlerPriority\n--functions of CCMenu will be deprecated end\n\n--functions of CCNode will be deprecated begin\nlocal CCNodeDeprecated = { }\n\nfunction CCNodeDeprecated.boundingBox(self)\n    deprecatedTip(\"CCNode:boundingBox\",\"cc.Node:getBoundingBox\")\n    return self:getBoundingBox()\nend\nCCNode.boundingBox = CCNodeDeprecated.boundingBox\n\n\nfunction CCNodeDeprecated.numberOfRunningActions(self)\n    deprecatedTip(\"CCNode:numberOfRunningActions\",\"cc.Node:getNumberOfRunningActions\")\n    return self:getNumberOfRunningActions()\nend\nCCNode.numberOfRunningActions = CCNodeDeprecated.numberOfRunningActions\n\n\nfunction CCNodeDeprecated.removeFromParentAndCleanup(self,...)\n    deprecatedTip(\"CCNode:removeFromParentAndCleanup\",\"cc.Node:removeFromParent\")\n    return self:removeFromParent(...)\nend\nCCNode.removeFromParentAndCleanup = CCNodeDeprecated.removeFromParentAndCleanup\n--functions of CCNode will be deprecated end\n\n--CCDrawPrimitives will be deprecated begin\nlocal function CCDrawPrimitivesClassDeprecated()\n    deprecatedTip(\"CCDrawPrimitives\",\"cc.DrawPrimitives\")\n    return cc.DrawPrimitives\nend\n_G.CCDrawPrimitives = CCDrawPrimitivesClassDeprecated()\n--functions of CCDrawPrimitives will be deprecated begin\nlocal CCDrawPrimitivesDeprecated = { }\nfunction CCDrawPrimitivesDeprecated.ccDrawPoint(pt)\n    deprecatedTip(\"ccDrawPoint\",\"cc.DrawPrimitives.drawPoint\")\n    return cc.DrawPrimitives.drawPoint(pt)\nend\n_G.ccDrawPoint = CCDrawPrimitivesDeprecated.ccDrawPoint\n\nfunction CCDrawPrimitivesDeprecated.ccDrawLine(origin,destination)\n    deprecatedTip(\"ccDrawLine\",\"cc.DrawPrimitives.drawLine\")\n    return cc.DrawPrimitives.drawLine(origin,destination)\nend\n_G.ccDrawLine = CCDrawPrimitivesDeprecated.ccDrawLine\n\nfunction CCDrawPrimitivesDeprecated.ccDrawRect(origin,destination)\n    deprecatedTip(\"ccDrawRect\",\"cc.DrawPrimitives.drawRect\")\n    return cc.DrawPrimitives.drawRect(origin,destination)\nend\n_G.ccDrawRect = CCDrawPrimitivesDeprecated.ccDrawRect\n\nfunction CCDrawPrimitivesDeprecated.ccDrawSolidRect(origin,destination,color)\n    deprecatedTip(\"ccDrawSolidRect\",\"cc.DrawPrimitives.drawSolidRect\")\n    return cc.DrawPrimitives.drawSolidRect(origin,destination,color)\nend\n_G.ccDrawSolidRect = CCDrawPrimitivesDeprecated.ccDrawSolidRect\n\n-- params:... may represent two param(xScale,yScale) or nil\nfunction CCDrawPrimitivesDeprecated.ccDrawCircle(center,radius,angle,segments,drawLineToCenter,...)\n    deprecatedTip(\"ccDrawCircle\",\"cc.DrawPrimitives.drawCircle\")\n    return cc.DrawPrimitives.drawCircle(center,radius,angle,segments,drawLineToCenter,...)\nend\n_G.ccDrawCircle = CCDrawPrimitivesDeprecated.ccDrawCircle\n\n-- params:... may represent two param(xScale,yScale) or nil\nfunction CCDrawPrimitivesDeprecated.ccDrawSolidCircle(center,radius,angle,segments,...)\n    deprecatedTip(\"ccDrawSolidCircle\",\"cc.DrawPrimitives.drawSolidCircle\")\n    return cc.DrawPrimitives.drawSolidCircle(center,radius,angle,segments,...)\nend\n_G.ccDrawSolidCircle = CCDrawPrimitivesDeprecated.ccDrawSolidCircle\n\nfunction CCDrawPrimitivesDeprecated.ccDrawQuadBezier(origin,control,destination,segments)\n    deprecatedTip(\"ccDrawQuadBezier\",\"cc.DrawPrimitives.drawQuadBezier\")\n    return cc.DrawPrimitives.drawQuadBezier(origin,control,destination,segments)\nend\n_G.ccDrawQuadBezier = CCDrawPrimitivesDeprecated.ccDrawQuadBezier\n\nfunction CCDrawPrimitivesDeprecated.ccDrawCubicBezier(origin,control1,control2,destination,segments)\n    deprecatedTip(\"ccDrawCubicBezier\",\"cc.DrawPrimitives.drawCubicBezier\")\n    return cc.DrawPrimitives.drawCubicBezier(origin,control1,control2,destination,segments)\nend\n_G.ccDrawCubicBezier = CCDrawPrimitivesDeprecated.ccDrawCubicBezier\n\nfunction CCDrawPrimitivesDeprecated.ccDrawCatmullRom(arrayOfControlPoints,segments)\n    deprecatedTip(\"ccDrawCatmullRom\",\"cc.DrawPrimitives.drawCatmullRom\")\n    return cc.DrawPrimitives.drawCatmullRom(arrayOfControlPoints,segments)\nend\n_G.ccDrawCatmullRom = CCDrawPrimitivesDeprecated.ccDrawCatmullRom\n\nfunction CCDrawPrimitivesDeprecated.ccDrawCardinalSpline(config,tension,segments)\n    deprecatedTip(\"ccDrawCardinalSpline\",\"cc.DrawPrimitives.drawCardinalSpline\")\n    return cc.DrawPrimitives.drawCardinalSpline(config,tension,segments)\nend\n_G.ccDrawCardinalSpline = CCDrawPrimitivesDeprecated.ccDrawCardinalSpline\n\nfunction CCDrawPrimitivesDeprecated.ccDrawColor4B(r,g,b,a)\n    deprecatedTip(\"ccDrawColor4B\",\"cc.DrawPrimitives.drawColor4B\")\n    return cc.DrawPrimitives.drawColor4B(r,g,b,a)\nend\n_G.ccDrawColor4B = CCDrawPrimitivesDeprecated.ccDrawColor4B\n\nfunction CCDrawPrimitivesDeprecated.ccDrawColor4F(r,g,b,a)\n    deprecatedTip(\"ccDrawColor4F\",\"cc.DrawPrimitives.drawColor4F\")\n    return cc.DrawPrimitives.drawColor4F(r,g,b,a)\nend\n_G.ccDrawColor4F = CCDrawPrimitivesDeprecated.ccDrawColor4F\n\nfunction CCDrawPrimitivesDeprecated.ccPointSize(pointSize)\n    deprecatedTip(\"ccPointSize\",\"cc.DrawPrimitives.setPointSize\")\n    return cc.DrawPrimitives.setPointSize(pointSize)\nend\n_G.ccPointSize = CCDrawPrimitivesDeprecated.ccPointSize\n--functions of CCDrawPrimitives will be deprecated end\n--CCDrawPrimitives will be deprecated end\n\nlocal CCProgressTimerDeprecated = {}\nfunction CCProgressTimerDeprecated.setReverseProgress(self,...)\n    deprecatedTip(\"CCProgressTimer\",\"CCProgressTimer:setReverseDirection\")\n    return self:setReverseDirection(...)\nend\nCCProgressTimer.setReverseProgress = CCProgressTimerDeprecated.setReverseProgress\n\n--functions of CCSpriteFrameCache will be deprecated begin\nlocal CCSpriteFrameCacheDeprecated = { }\nfunction CCSpriteFrameCacheDeprecated.spriteFrameByName(self,szName)\n    deprecatedTip(\"CCSpriteFrameCache:spriteFrameByName\",\"CCSpriteFrameCache:getSpriteFrameByName\")\n    return self:getSpriteFrameByName(szName)\nend\nCCSpriteFrameCache.spriteFrameByName = CCSpriteFrameCacheDeprecated.spriteFrameByName\n\nfunction CCSpriteFrameCacheDeprecated.sharedSpriteFrameCache()\n    deprecatedTip(\"CCSpriteFrameCache:sharedSpriteFrameCache\",\"CCSpriteFrameCache:getInstance\")\n    return CCSpriteFrameCache:getInstance()\nend\nCCSpriteFrameCache.sharedSpriteFrameCache = CCSpriteFrameCacheDeprecated.sharedSpriteFrameCache\n\nfunction CCSpriteFrameCacheDeprecated.purgeSharedSpriteFrameCache()\n    deprecatedTip(\"CCSpriteFrameCache:purgeSharedSpriteFrameCache\",\"CCSpriteFrameCache:destroyInstance\")\n    return CCSpriteFrameCache:destroyInstance()\nend\nCCSpriteFrameCache.purgeSharedSpriteFrameCache = CCSpriteFrameCacheDeprecated.purgeSharedSpriteFrameCache\n\nfunction CCSpriteFrameCacheDeprecated.addSpriteFramesWithFile(self,...)\n    deprecatedTip(\"CCSpriteFrameCache:addSpriteFramesWithFile\",\"CCSpriteFrameCache:addSpriteFrames\")\n    return self:addSpriteFrames(...)\nend\nrawset(CCSpriteFrameCache,\"addSpriteFramesWithFile\",CCSpriteFrameCacheDeprecated.addSpriteFramesWithFile)\n\nfunction CCSpriteFrameCacheDeprecated.getSpriteFrameByName(self,...)\n    deprecatedTip(\"CCSpriteFrameCache:getSpriteFrameByName\",\"CCSpriteFrameCache:getSpriteFrame\")\n    return self:getSpriteFrame(...)\nend\nCCSpriteFrameCache.getSpriteFrameByName = CCSpriteFrameCacheDeprecated.getSpriteFrameByName\n--functions of CCSpriteFrameCache will be deprecated end\n\n--functions of CCLabelAtlas will be deprecated begin\nlocal CCLabelAtlasDeprecated = {}\nfunction CCLabelAtlasDeprecated.create(self,...)\n    deprecatedTip(\"CCLabelAtlas:create\",\"CCLabelAtlas:_create\")\n    return self:_create(...)\nend\nCCLabelAtlas.create = CCLabelAtlasDeprecated.create\n--functions of CCLabelAtlas will be deprecated end\n\n\n---------------------------\n--global functions wil be deprecated, begin\nlocal function CCRectMake(x,y,width,height)\n    deprecatedTip(\"CCRectMake(x,y,width,height)\",\"cc.rect(x,y,width,height) in lua\")\n    return cc.rect(x,y,width,height)\nend\n_G.CCRectMake = CCRectMake\n\nlocal function ccc3(r,g,b)\n    deprecatedTip(\"ccc3(r,g,b)\",\"cc.c3b(r,g,b)\")\n    return cc.c3b(r,g,b)\nend\n_G.ccc3 = ccc3\n\nlocal function ccp(x,y)\n    deprecatedTip(\"ccp(x,y)\",\"cc.p(x,y)\")\n    return cc.p(x,y)\nend\n_G.ccp = ccp\n\nlocal function CCSizeMake(width,height)\n    deprecatedTip(\"CCSizeMake(width,height)\",\"cc.size(width,height)\")\n    return cc.size(width,height)\nend\n_G.CCSizeMake = CCSizeMake\n\nlocal function ccc4(r,g,b,a)\n    deprecatedTip(\"ccc4(r,g,b,a)\",\"cc.c4b(r,g,b,a)\")\n    return cc.c4b(r,g,b,a)\nend\n_G.ccc4 = ccc4\n\nlocal function ccc4FFromccc3B(color3B)\n    deprecatedTip(\"ccc4FFromccc3B(color3B)\",\"cc.c4f(color3B.r / 255.0,color3B.g / 255.0,color3B.b / 255.0,1.0)\")\n    return cc.c4f(color3B.r/255.0, color3B.g/255.0, color3B.b/255.0, 1.0)\nend\n_G.ccc4FFromccc3B = ccc4FFromccc3B\n\nlocal function ccc4f(r,g,b,a)\n    deprecatedTip(\"ccc4f(r,g,b,a)\",\"cc.c4f(r,g,b,a)\")\n    return cc.c4f(r,g,b,a)\nend\n_G.ccc4f = ccc4f\n\nlocal function ccc4FFromccc4B(color4B)\n    deprecatedTip(\"ccc4FFromccc4B(color4B)\",\"cc.c4f(color4B.r/255.0, color4B.g/255.0, color4B.b/255.0, color4B.a/255.0)\")\n    return cc.c4f(color4B.r/255.0, color4B.g/255.0, color4B.b/255.0, color4B.a/255.0)\nend\n_G.ccc4FFromccc4B = ccc4FFromccc4B\n\nlocal function ccc4FEqual(a,b)\n    deprecatedTip(\"ccc4FEqual(a,b)\",\"a:equals(b)\")\n    return a:equals(b)\nend\n_G.ccc4FEqual = ccc4FEqual\n--global functions wil be deprecated, end\n\n\n--functions of _G will be deprecated begin\nlocal function ccpLineIntersect(a,b,c,d,s,t)\n    deprecatedTip(\"ccpLineIntersect\",\"cc.pIsLineIntersect\")\n    return cc.pIsLineIntersect(a,b,c,d,s,t)\nend\n_G.ccpLineIntersect = ccpLineIntersect\n\n\nlocal function CCPointMake(x,y)\n    deprecatedTip(\"CCPointMake(x,y)\",\"cc.p(x,y)\")\n    return cc.p(x,y)\nend\n_G.CCPointMake = CCPointMake\n\n\n\nlocal function ccpNeg(pt)\n    deprecatedTip(\"ccpNeg\",\"cc.pSub\")\n    return cc.pSub({x = 0,y = 0}, pt)\nend\n_G.ccpNeg = ccpNeg\n\nlocal function ccpAdd(pt1,pt2)\n    deprecatedTip(\"ccpAdd\",\"cc.pAdd\")\n    return cc.pAdd(pt1,pt2)\nend\n_G.ccpAdd = ccpAdd\n\nlocal function ccpSub(pt1,pt2)\n    deprecatedTip(\"ccpSub\",\"cc.pSub\")\n    return cc.pSub(pt1,pt2)\nend\n_G.ccpSub = ccpSub\n\nlocal function ccpMult(pt,factor)\n    deprecatedTip(\"ccpMult\",\"cc.pMul\")\n    return cc.pMul(pt,factor)\nend\n_G.ccpMult = ccpMult\n\nlocal function ccpMidpoint(pt1,pt2)\n    deprecatedTip(\"ccpMidpoint\",\"cc.pMidpoint\")\n    return cc.pMidpoint(pt1,pt2)\nend\n_G.ccpMidpoint = ccpMidpoint\n\nlocal function ccpDot(pt1,pt2)\n    deprecatedTip(\"ccpDot\",\"cc.pDot\")\n    return cc.pDot(pt1,pt2)\nend\n_G.ccpDot = ccpDot\n\nlocal function ccpCross(pt1,pt2)\n    deprecatedTip(\"ccpCross\",\"cc.pCross\")\n    return cc.pCross(pt1, pt2)\nend\n_G.ccpCross = ccpCross\n\nlocal function ccpPerp(pt)\n    deprecatedTip(\"ccpPerp\",\"cc.pPerp\")\n    return cc.pPerp(pt)\nend\n_G.ccpPerp = ccpPerp\n\nlocal function ccpRPerp(pt)\n    deprecatedTip(\"ccpRPerp\",\"cc.RPerp\")\n    return cc.RPerp(pt)\nend\n_G.ccpRPerp = ccpRPerp\n\nlocal function ccpProject(pt1,pt2)\n    deprecatedTip(\"ccpProject\",\"cc.pProject\")\n    return cc.pProject(pt1,pt2)\nend\n_G.ccpProject = ccpProject\n\nlocal function ccpRotate(pt1,pt2)\n    deprecatedTip(\"ccpRotate\",\"cc.pRotate\")\n    return cc.pRotate(pt1,pt2)\nend\n_G.ccpRotate = ccpRotate\n\nlocal function ccpUnrotate(pt1,pt2)\n    deprecatedTip(\"ccpUnrotate\",\"cc.pUnrotate\")\n    return cc.pUnrotate(pt1,pt2)\nend\n_G.ccpUnrotate = ccpUnrotate\n\nlocal function ccpLengthSQ(pt)\n    deprecatedTip(\"ccpLengthSQ\",\"cc.pLengthSQ\")\n    return cc.pLengthSQ(pt)\nend\n_G.ccpLengthSQ = ccpLengthSQ\n\nlocal function ccpDistanceSQ(pt1,pt2)\n    deprecatedTip(\"ccpDistanceSQ\",\"cc.pDistanceSQ\")\n    return cc.pDistanceSQ(pt1,pt2)\nend\n_G.ccpDistanceSQ = ccpDistanceSQ\n\nlocal function ccpLength(pt)\n    deprecatedTip(\"ccpLength\",\"cc.pGetLength\")\n    return cc.pGetLength(pt)\nend\n_G.ccpLength = ccpLength\n\nlocal function ccpDistance(pt1,pt2)\n    deprecatedTip(\"ccpDistance\",\"cc.pGetDistance\")\n    return cc.pGetDistance(pt1, pt2)\nend\n_G.ccpDistance = ccpDistance\n\nlocal function ccpNormalize(pt)\n    deprecatedTip(\"ccpNormalize\",\"cc.pNormalize\")\n    return cc.pNormalize(pt)\nend\n_G.ccpNormalize = ccpNormalize\n\nlocal function ccpForAngle(angle)\n    deprecatedTip(\"ccpForAngle\",\"cc.pForAngle\")\n    return cc.pForAngle(angle)\nend\n_G.ccpForAngle = ccpForAngle\n\nlocal function ccpToAngle(pt)\n    deprecatedTip(\"ccpToAngle\",\"cc.pToAngleSelf\")\n    return cc.pToAngleSelf(pt)\nend\n_G.ccpToAngle = ccpToAngle\n\nlocal function ccpClamp(pt1,pt2,pt3)\n    deprecatedTip(\"ccpClamp\",\"cc.pGetClampPoint\")\n    return cc.pGetClampPoint(pt1,pt2,pt3)\nend\n_G.ccpClamp = ccpClamp\n\n\nlocal function ccpFromSize(sz)\n    deprecatedTip(\"ccpFromSize(sz)\",\"cc.pFromSize\")\n    return cc.pFromSize(sz)\nend\n_G.ccpFromSize = ccpFromSize\n\nlocal function ccpLerp(pt1,pt2,alpha)\n    deprecatedTip(\"ccpLerp\",\"cc.pLerp\")\n    return cc.pLerp(pt1,pt2,alpha)\nend\n_G.ccpLerp = ccpLerp\n\nlocal function ccpFuzzyEqual(pt1,pt2,variance)\n    deprecatedTip(\"ccpFuzzyEqual\",\"cc.pFuzzyEqual\")\n    return cc.pFuzzyEqual(pt1,pt2,variance)\nend\n_G.ccpFuzzyEqual = ccpFuzzyEqual\n\nlocal function ccpCompMult(pt1,pt2)\n    deprecatedTip(\"ccpCompMult\",\"cc.p\")\n    return cc.p(pt1.x * pt2.x , pt1.y * pt2.y)\nend\n_G.ccpCompMult = ccpCompMult\n\nlocal function ccpAngleSigned(pt1,pt2)\n    deprecatedTip(\"ccpAngleSigned\",\"cc.pGetAngle\")\n    return cc.pGetAngle(pt1, pt2)\nend\n_G.ccpAngleSigned = ccpAngleSigned\n\nlocal function ccpAngle(pt1,pt2)\n    deprecatedTip(\"ccpAngle\",\"cc.pGetAngle\")\n    return cc.pGetAngle(pt1,ptw)\nend\n_G.ccpAngle = ccpAngle\n\nlocal function ccpRotateByAngle(pt1,pt2,angle)\n    deprecatedTip(\"ccpRotateByAngle\",\"cc.pRotateByAngle\")\n    return cc.pRotateByAngle(pt1, pt2, angle)\nend\n_G.ccpRotateByAngle = ccpRotateByAngle\n\nlocal function ccpSegmentIntersect(pt1,pt2,pt3,pt4)\n    deprecatedTip(\"ccpSegmentIntersect\",\"cc.pIsSegmentIntersect\")\n    return cc.pIsSegmentIntersect(pt1,pt2,pt3,pt4)\nend\n_G.ccpSegmentIntersect = ccpSegmentIntersect\n\nlocal function ccpIntersectPoint(pt1,pt2,pt3,pt4)\n    deprecatedTip(\"ccpIntersectPoint\",\"cc.pGetIntersectPoint\")\n    return cc.pGetIntersectPoint(pt1,pt2,pt3,pt4)\nend\n_G.ccpIntersectPoint = ccpIntersectPoint\n\n\nlocal function vertex2(x,y)\n    deprecatedTip(\"vertex2(x,y)\",\"cc.vertex2F(x,y)\")\n    return cc.vertex2F(x,y)\nend\n_G.vertex2 = vertex2\n\nlocal function vertex3(x,y,z)\n    deprecatedTip(\"vertex3(x,y,z)\",\"cc.Vertex3F(x,y,z)\")\n    return cc.Vertex3F(x,y,z)\nend\n_G.vertex3 = vertex3\n\nlocal function tex2(u,v)\n    deprecatedTip(\"tex2(u,v)\",\"cc.tex2f(u,v)\")\n    return cc.tex2f(u,v)\nend\n_G.tex2 = tex2\n\nlocal function ccc4BFromccc4F(color4F)\n    deprecatedTip(\"ccc4BFromccc4F(color4F)\",\"Color4B(color4F.r * 255.0, color4F.g * 255.0, color4F.b * 255.0, color4B.a * 255.0)\")\n    return Color4B(color4F.r * 255.0, color4F.g * 255.0, color4F.b * 255.0, color4B.a * 255.0)\nend\n_G.ccc4BFromccc4F = ccc4BFromccc4F\n\nlocal function ccColor3BDeprecated()\n    deprecatedTip(\"ccColor3B\",\"cc.c3b(0,0,0)\")\n    return cc.c3b(0,0,0)\nend\n_G.ccColor3B = ccColor3BDeprecated\n\nlocal function ccColor4BDeprecated()\n    deprecatedTip(\"ccColor4B\",\"cc.c4b(0,0,0,0)\")\n    return cc.c4b(0,0,0,0)\nend\n_G.ccColor4B = ccColor4BDeprecated\n\nlocal function ccColor4FDeprecated()\n    deprecatedTip(\"ccColor4F\",\"cc.c4f(0.0,0.0,0.0,0.0)\")\n    return cc.c4f(0.0,0.0,0.0,0.0)\nend\n_G.ccColor4F = ccColor4FDeprecated\n\nlocal function ccVertex2FDeprecated()\n    deprecatedTip(\"ccVertex2F\",\"cc.vertex2F(0.0,0.0)\")\n    return cc.vertex2F(0.0,0.0)\nend\n_G.ccVertex2F = ccVertex2FDeprecated\n\nlocal function ccVertex3FDeprecated()\n    deprecatedTip(\"ccVertex3F\",\"cc.Vertex3F(0.0, 0.0, 0.0)\")\n    return cc.Vertex3F(0.0, 0.0, 0.0)\nend\n_G.ccVertex3F = ccVertex3FDeprecated\n\nlocal function ccTex2FDeprecated()\n    deprecatedTip(\"ccTex2F\",\"cc.tex2F(0.0, 0.0)\")\n    return cc.tex2F(0.0, 0.0)\nend\n_G.ccTex2F = ccTex2FDeprecated\n\nlocal function ccPointSpriteDeprecated()\n    deprecatedTip(\"ccPointSprite\",\"cc.PointSprite(cc.vertex2F(0.0, 0.0),cc.c4b(0.0, 0.0, 0.0),0)\")\n    return cc.PointSprite(cc.vertex2F(0.0, 0.0),cc.c4b(0.0, 0.0, 0.0),0)\nend\n_G.ccPointSprite = ccPointSpriteDeprecated\n\nlocal function ccQuad2Deprecated()\n    deprecatedTip(\"ccQuad2\",\"cc.Quad2(cc.vertex2F(0.0, 0.0), cc.vertex2F(0.0, 0.0), cc.vertex2F(0.0, 0.0), cc.vertex2F(0.0, 0.0))\")\n    return cc.Quad2(cc.vertex2F(0.0, 0.0), cc.vertex2F(0.0, 0.0), cc.vertex2F(0.0, 0.0), cc.vertex2F(0.0, 0.0))\nend\n_G.ccQuad2 = ccQuad2Deprecated\n\nlocal function ccQuad3Deprecated()\n    deprecatedTip(\"ccQuad3\",\"cc.Quad3(cc.Vertex3F(0.0, 0.0 ,0.0), cc.Vertex3F(0.0, 0.0 ,0.0), cc.Vertex3F(0.0, 0.0 ,0.0), cc.Vertex3F(0.0, 0.0 ,0.0))\")\n    return cc.Quad3(cc.Vertex3F(0.0, 0.0 ,0.0), cc.Vertex3F(0.0, 0.0 ,0.0), cc.Vertex3F(0.0, 0.0 ,0.0), cc.Vertex3F(0.0, 0.0 ,0.0))\nend\n_G.ccQuad3 = ccQuad3Deprecated\n\nlocal function ccV2FC4BT2FDeprecated()\n    deprecatedTip(\"ccV2F_C4B_T2F\",\"cc.V2F_C4B_T2F(cc.vertex2F(0.0, 0.0), cc.c4b(0 , 0, 0, 0 ), cc.tex2F(0.0, 0.0))\")\n    return cc.V2F_C4B_T2F(cc.vertex2F(0.0, 0.0), cc.c4b(0 , 0, 0, 0 ), cc.tex2F(0.0, 0.0))\nend\n_G.ccV2F_C4B_T2F = ccV2FC4BT2FDeprecated\n\n\nlocal function ccV2FC4FT2FDeprecated()\n    deprecatedTip(\"ccV2F_C4F_T2F\",\"cc.V2F_C4F_T2F(cc.vertex2F(0.0, 0.0), cc.c4f(0.0 , 0.0 , 0.0 , 0.0 ), cc.tex2F(0.0, 0.0))\")\n    return cc.V2F_C4F_T2F(cc.vertex2F(0.0, 0.0), cc.c4f(0.0 , 0.0 , 0.0 , 0.0), cc.tex2F(0.0, 0.0))\nend\n_G.ccV2F_C4F_T2F = ccV2FC4FT2FDeprecated\n\nlocal function ccV3FC4BT2FDeprecated()\n    deprecatedTip(\"ccV3F_C4B_T2F\",\"cc.V3F_C4B_T2F(cc.vertex3F(0.0, 0.0, 0.0), cc.c4b(0 , 0 , 0, 0 ), cc.tex2F(0.0, 0.0))\")\n    return cc.V3F_C4B_T2F(cc.vertex3F(0.0, 0.0, 0.0), cc.c4b(0 , 0 , 0, 0 ), cc.tex2F(0.0, 0.0))\nend\n_G.ccV3F_C4B_T2F = ccV3FC4BT2FDeprecated\n\nlocal function ccV2FC4BT2FQuadDeprecated()\n    deprecatedTip(\"ccV2F_C4B_T2F_Quad\",\"cc.V2F_C4B_T2F_Quad(cc.V2F_C4B_T2F(cc.vertex2F(0.0, 0.0), cc.c4b(0 , 0, 0, 0 ), cc.tex2F(0.0, 0.0)), cc.V2F_C4B_T2F(cc.vertex2F(0.0, 0.0), cc.c4b(0 , 0, 0, 0 ), cc.tex2F(0.0, 0.0)), cc.V2F_C4B_T2F(cc.vertex2F(0.0, 0.0), cc.c4b(0 , 0, 0, 0 ), cc.tex2F(0.0, 0.0)), cc.V2F_C4B_T2F(cc.vertex2F(0.0, 0.0), cc.c4b(0 , 0, 0, 0 ), cc.tex2F(0.0, 0.0)))\")\n    return cc.V2F_C4B_T2F_Quad(cc.V2F_C4B_T2F(cc.vertex2F(0.0, 0.0), cc.c4b(0 , 0, 0, 0 ), cc.tex2F(0.0, 0.0)), cc.V2F_C4B_T2F(cc.vertex2F(0.0, 0.0), cc.c4b(0 , 0, 0, 0 ), cc.tex2F(0.0, 0.0)), cc.V2F_C4B_T2F(cc.vertex2F(0.0, 0.0), cc.c4b(0 , 0, 0, 0 ), cc.tex2F(0.0, 0.0)), cc.V2F_C4B_T2F(cc.vertex2F(0.0, 0.0), cc.c4b(0 , 0, 0, 0 ), cc.tex2F(0.0, 0.0)))\nend\n_G.ccV2F_C4B_T2F_Quad = ccV2FC4BT2FQuadDeprecated\n\nlocal function ccV3FC4BT2FQuadDeprecated()\n    deprecatedTip(\"ccV3F_C4B_T2F_Quad\",\"cc.V3F_C4B_T2F_Quad(_tl, _bl, _tr, _br)\")\n    return cc.V3F_C4B_T2F_Quad(cc.V3F_C4B_T2F(cc.vertex3F(0.0, 0.0, 0.0), cc.c4b(0 , 0, 0, 0 ), cc.tex2F(0.0, 0.0)), cc.V3F_C4B_T2F(cc.vertex3F(0.0, 0.0, 0.0), cc.c4b(0 , 0, 0, 0 ), cc.tex2F(0.0, 0.0)), cc.V3F_C4B_T2F(cc.vertex3F(0.0, 0.0, 0.0), cc.c4b(0 , 0, 0, 0 ), cc.tex2F(0.0, 0.0)), cc.V3F_C4B_T2F(cc.vertex3F(0.0, 0.0, 0.0), cc.c4b(0 , 0, 0, 0 ), cc.tex2F(0.0, 0.0)))\nend\n_G.ccV3F_C4B_T2F_Quad = ccV3FC4BT2FQuadDeprecated\n\nlocal function ccV2FC4FT2FQuadDeprecated()\n    deprecatedTip(\"ccV2F_C4F_T2F_Quad\",\"cc.V2F_C4F_T2F_Quad(_bl, _br, _tl, _tr)\")\n    return cc.V2F_C4F_T2F_Quad(cc.V2F_C4F_T2F(cc.vertex2F(0.0, 0.0), cc.c4f(0.0 , 0.0, 0.0, 0.0 ), cc.tex2F(0.0, 0.0)), cc.V2F_C4F_T2F(cc.vertex2F(0.0, 0.0), cc.c4f(0.0 , 0.0, 0.0, 0.0 ), cc.tex2F(0.0, 0.0)), cc.V3F_C4B_T2F(cc.vertex2F(0.0, 0.0), cc.c4f(0.0 , 0.0, 0.0, 0.0 ), cc.tex2F(0.0, 0.0)), cc.V2F_C4F_T2F(cc.vertex2F(0.0, 0.0), cc.c4f(0.0 , 0.0, 0.0, 0.0 ), cc.tex2F(0.0, 0.0)))\nend\n_G.ccV2F_C4F_T2F_Quad = ccV2FC4FT2FQuadDeprecated\n\nlocal function ccT2FQuadDeprecated()\n    deprecatedTip(\"ccT2F_Quad\",\"cc.T2F_Quad(_bl, _br, _tl, _tr)\")\n    return cc.T2F_Quad(cc.tex2F(0.0,0.0), cc.tex2F(0.0,0.0), cc.tex2F(0.0,0.0), cc.tex2F(0.0,0.0))\nend\n_G.ccT2F_Quad = ccT2FQuadDeprecated\n\nlocal function ccAnimationFrameDataDeprecated()\n    deprecatedTip(\"ccAnimationFrameData\",\"cc.AnimationFrameData( _texCoords, _delay, _size)\")\n    return cc.AnimationFrameData(cc.T2F_Quad(cc.tex2F(0.0,0.0), cc.tex2F(0.0,0.0), cc.tex2F(0.0,0.0), cc.tex2F(0.0,0.0)), 0, cc.size(0,0))\nend\n_G.ccAnimationFrameData = ccAnimationFrameDataDeprecated\n\n\n\nlocal function tex2(u,v)\n    deprecatedTip(\"tex2(u,v)\",\"cc.tex2f(u,v)\")\n    return cc.tex2f(u,v)\nend\n_G.tex2 = tex2\n\n\n--functions of CCApplication will be deprecated end\nlocal CCApplicationDeprecated = { }\nfunction CCApplicationDeprecated.sharedApplication()\n    deprecatedTip(\"CCApplication:sharedApplication\",\"CCApplication:getInstance\")\n    return CCApplication:getInstance()\nend\nCCApplication.sharedApplication = CCApplicationDeprecated.sharedApplication\n--functions of CCApplication will be deprecated end\n\n\n--functions of CCDirector will be deprecated end\nlocal CCDirectorDeprecated = { }\nfunction CCDirectorDeprecated.sharedDirector()\n    deprecatedTip(\"CCDirector:sharedDirector\",\"CCDirector:getInstance\")\n    return CCDirector:getInstance()\nend\nCCDirector.sharedDirector = CCDirectorDeprecated.sharedDirector\n--functions of CCDirector will be deprecated end\n\n\n--functions of CCUserDefault will be deprecated end\nlocal CCUserDefaultDeprecated = { }\nfunction CCUserDefaultDeprecated.sharedUserDefault()\n    deprecatedTip(\"CCUserDefault:sharedUserDefault\",\"CCUserDefault:getInstance\")\n    return CCUserDefault:getInstance()\nend\nCCUserDefault.sharedUserDefault = CCUserDefaultDeprecated.sharedUserDefault\n\nfunction CCUserDefaultDeprecated.purgeSharedUserDefault()\n    deprecatedTip(\"CCUserDefault:purgeSharedUserDefault\",\"CCUserDefault:destroyInstance\")\n    return CCUserDefault:destroyInstance()\nend\nCCUserDefault.purgeSharedUserDefault = CCUserDefaultDeprecated.purgeSharedUserDefault\n--functions of CCUserDefault will be deprecated end\n\n--functions of CCGrid3DAction will be deprecated begin\nlocal CCGrid3DActionDeprecated = { }\nfunction CCGrid3DActionDeprecated.vertex(self,pt)\n    deprecatedTip(\"vertex\",\"CCGrid3DAction:getVertex\")\n    return self:getVertex(pt)\nend\nCCGrid3DAction.vertex = CCGrid3DActionDeprecated.vertex\n\nfunction CCGrid3DActionDeprecated.originalVertex(self,pt)\n    deprecatedTip(\"originalVertex\",\"CCGrid3DAction:getOriginalVertex\")\n    return self:getOriginalVertex(pt)\nend\nCCGrid3DAction.originalVertex = CCGrid3DActionDeprecated.originalVertex\n--functions of CCGrid3DAction will be deprecated end\n\n\n--functions of CCTiledGrid3DAction will be deprecated begin\nlocal CCTiledGrid3DActionDeprecated = { }\nfunction CCTiledGrid3DActionDeprecated.tile(self,pt)\n    deprecatedTip(\"tile\",\"CCTiledGrid3DAction:getTile\")\n    return self:getTile(pt)\nend\nCCTiledGrid3DAction.tile = CCTiledGrid3DActionDeprecated.tile\n\nfunction CCTiledGrid3DActionDeprecated.originalTile(self,pt)\n    deprecatedTip(\"originalTile\",\"CCTiledGrid3DAction:getOriginalTile\")\n    return self:getOriginalTile(pt)\nend\nCCTiledGrid3DAction.originalTile = CCTiledGrid3DActionDeprecated.originalTile\n--functions of CCTiledGrid3DAction will be deprecated end\n\n\n--functions of CCTexture2D will be deprecated begin\nlocal CCTexture2DDeprecated = { }\nfunction CCTexture2DDeprecated.stringForFormat(self)\n    deprecatedTip(\"Texture2D:stringForFormat\",\"Texture2D:getStringForFormat\")\n    return self:getStringForFormat()\nend\nCCTexture2D.stringForFormat = CCTexture2DDeprecated.stringForFormat\n\nfunction CCTexture2DDeprecated.bitsPerPixelForFormat(self)\n    deprecatedTip(\"Texture2D:bitsPerPixelForFormat\",\"Texture2D:getBitsPerPixelForFormat\")\n    return self:getBitsPerPixelForFormat()\nend\nCCTexture2D.bitsPerPixelForFormat = CCTexture2DDeprecated.bitsPerPixelForFormat\n\nfunction CCTexture2DDeprecated.bitsPerPixelForFormat(self,pixelFormat)\n    deprecatedTip(\"Texture2D:bitsPerPixelForFormat\",\"Texture2D:getBitsPerPixelForFormat\")\n    return self:getBitsPerPixelForFormat(pixelFormat)\nend\nCCTexture2D.bitsPerPixelForFormat = CCTexture2DDeprecated.bitsPerPixelForFormat\n\nfunction CCTexture2DDeprecated.defaultAlphaPixelFormat(self)\n    deprecatedTip(\"Texture2D:defaultAlphaPixelFormat\",\"Texture2D:getDefaultAlphaPixelFormat\")\n    return self:getDefaultAlphaPixelFormat()\nend\nCCTexture2D.defaultAlphaPixelFormat = CCTexture2DDeprecated.defaultAlphaPixelFormat\n--functions of CCTexture2D will be deprecated end\n\n\n--functions of CCTimer will be deprecated begin\nlocal CCTimerDeprecated = { }\nfunction CCTimerDeprecated.timerWithScriptHandler(handler,seconds)\n    deprecatedTip(\"CCTimer:timerWithScriptHandler\",\"CCTimer:createWithScriptHandler\")\n    return CCTimer:createWithScriptHandler(handler,seconds)\nend\nCCTimer.timerWithScriptHandler = CCTimerDeprecated.timerWithScriptHandler\n\nfunction CCTimerDeprecated.numberOfRunningActionsInTarget(self,target)\n    deprecatedTip(\"CCActionManager:numberOfRunningActionsInTarget\",\"CCActionManager:getNumberOfRunningActionsInTarget\")\n    return self:getNumberOfRunningActionsInTarget(target)\nend\nCCTimer.numberOfRunningActionsInTarget = CCTimerDeprecated.numberOfRunningActionsInTarget\n--functions of CCTimer will be deprecated end\n\n\n--functions of CCMenuItemFont will be deprecated begin\nlocal CCMenuItemFontDeprecated = { }\nfunction CCMenuItemFontDeprecated.fontSize()\n    deprecatedTip(\"CCMenuItemFont:fontSize\",\"CCMenuItemFont:getFontSize\")\n    return CCMenuItemFont:getFontSize()\nend\nCCMenuItemFont.fontSize = CCMenuItemFontDeprecated.fontSize\n\nfunction CCMenuItemFontDeprecated.fontName()\n    deprecatedTip(\"CCMenuItemFont:fontName\",\"CCMenuItemFont:getFontName\")\n    return CCMenuItemFont:getFontName()\nend\nCCMenuItemFont.fontName = CCMenuItemFontDeprecated.fontName\n\nfunction CCMenuItemFontDeprecated.fontSizeObj(self)\n    deprecatedTip(\"CCMenuItemFont:fontSizeObj\",\"CCMenuItemFont:getFontSizeObj\")\n    return self:getFontSizeObj()\nend\nCCMenuItemFont.fontSizeObj = CCMenuItemFontDeprecated.fontSizeObj\n\nfunction CCMenuItemFontDeprecated.fontNameObj(self)\n    deprecatedTip(\"CCMenuItemFont:fontNameObj\",\"CCMenuItemFont:getFontNameObj\")\n    return self:getFontNameObj()\nend\nCCMenuItemFont.fontNameObj = CCMenuItemFontDeprecated.fontNameObj\n--functions of CCMenuItemFont will be deprecated end\n\n\n--functions of CCMenuItemToggle will be deprecated begin\nlocal CCMenuItemToggleDeprecated = { }\nfunction CCMenuItemToggleDeprecated.selectedItem(self)\n    deprecatedTip(\"CCMenuItemToggle:selectedItem\",\"CCMenuItemToggle:getSelectedItem\")\n    return self:getSelectedItem()\nend\nCCMenuItemToggle.selectedItem = CCMenuItemToggleDeprecated.selectedItem\n--functions of CCMenuItemToggle will be deprecated end\n\n\n--functions of CCTileMapAtlas will be deprecated begin\nlocal CCTileMapAtlasDeprecated = { }\nfunction CCTileMapAtlasDeprecated.tileAt(self,pos)\n    deprecatedTip(\"CCTileMapAtlas:tileAt\",\"CCTileMapAtlas:getTileAt\")\n    return self:getTileAt(pos)\nend\nCCTileMapAtlas.tileAt = CCTileMapAtlasDeprecated.tileAt\n--functions of CCTileMapAtlas will be deprecated end\n\n\n--functions of CCTMXLayer will be deprecated begin\nlocal CCTMXLayerDeprecated = { }\nfunction CCTMXLayerDeprecated.tileAt(self,tileCoordinate)\n    deprecatedTip(\"CCTMXLayer:tileAt\",\"CCTMXLayer:getTileAt\")\n    return self:getTileAt(tileCoordinate)\nend\nCCTMXLayer.tileAt = CCTMXLayerDeprecated.tileAt\n\nfunction CCTMXLayerDeprecated.tileGIDAt(self,tileCoordinate)\n    deprecatedTip(\"CCTMXLayer:tileGIDAt\",\"CCTMXLayer:getTileGIDAt\")\n    return self:getTileGIDAt(tileCoordinate)\nend\nCCTMXLayer.tileGIDAt = CCTMXLayerDeprecated.tileGIDAt\n\nfunction CCTMXLayerDeprecated.positionAt(self,tileCoordinate)\n    deprecatedTip(\"CCTMXLayer:positionAt\",\"CCTMXLayer:getPositionAt\")\n    return self:getPositionAt(tileCoordinate)\nend\nCCTMXLayer.positionAt = CCTMXLayerDeprecated.positionAt\n\nfunction CCTMXLayerDeprecated.propertyNamed(self,propertyName)\n    deprecatedTip(\"CCTMXLayer:propertyNamed\",\"CCTMXLayer:getProperty\")\n    return self:getProperty(propertyName)\nend\nCCTMXLayer.propertyNamed = CCTMXLayerDeprecated.propertyNamed\n--functions of CCTMXLayer will be deprecated end\n\n--functions of CCTMXTiledMap will be deprecated begin\nlocal CCTMXTiledMapDeprecated = { }\nfunction CCTMXTiledMapDeprecated.layerNamed(self,layerName)\n    deprecatedTip(\"CCTMXTiledMap:layerNamed\",\"CCTMXTiledMap:getLayer\")\n    return self:getLayer(layerName)\nend\nCCTMXTiledMap.layerNamed = CCTMXTiledMapDeprecated.layerNamed\n\nfunction CCTMXTiledMapDeprecated.propertyNamed(self,propertyName)\n    deprecatedTip(\"CCTMXTiledMap:propertyNamed\",\"CCTMXTiledMap:getProperty\")\n    return self:getProperty(propertyName)\nend\nCCTMXTiledMap.propertyNamed = CCTMXTiledMapDeprecated.propertyNamed\n\nfunction CCTMXTiledMapDeprecated.propertiesForGID(self,GID)\n    deprecatedTip(\"CCTMXTiledMap:propertiesForGID\",\"CCTMXTiledMap:getPropertiesForGID\")\n    return self:getPropertiesForGID(GID)\nend\nCCTMXTiledMap.propertiesForGID = CCTMXTiledMapDeprecated.propertiesForGID\n\nfunction CCTMXTiledMapDeprecated.objectGroupNamed(self,groupName)\n    deprecatedTip(\"CCTMXTiledMap:objectGroupNamed\",\"CCTMXTiledMap:getObjectGroup\")\n    return self:getObjectGroup(groupName)\nend\nCCTMXTiledMap.objectGroupNamed = CCTMXTiledMapDeprecated.objectGroupNamed\n--functions of CCTMXTiledMap will be deprecated end\n\n\n--functions of CCTMXMapInfo will be deprecated begin\nlocal CCTMXMapInfoDeprecated = { }\nfunction CCTMXMapInfoDeprecated.getStoringCharacters(self)\n    deprecatedTip(\"CCTMXMapInfo:getStoringCharacters\",\"CCTMXMapInfo:isStoringCharacters\")\n    return self:isStoringCharacters()\nend\nCCTMXMapInfo.getStoringCharacters = CCTMXMapInfoDeprecated.getStoringCharacters\n\nfunction CCTMXMapInfoDeprecated.formatWithTMXFile(infoTable,tmxFile)\n    deprecatedTip(\"CCTMXMapInfo:formatWithTMXFile\",\"CCTMXMapInfo:create\")\n    return CCTMXMapInfo:create(tmxFile)\nend\nCCTMXMapInfo.formatWithTMXFile = CCTMXMapInfoDeprecated.formatWithTMXFile\n\nfunction CCTMXMapInfoDeprecated.formatWithXML(infoTable,tmxString,resourcePath)\n    deprecatedTip(\"CCTMXMapInfo:formatWithXML\",\"TMXMapInfo:createWithXML\")\n    return CCTMXMapInfo:createWithXML(tmxString,resourcePath)\nend\nCCTMXMapInfo.formatWithXML = CCTMXMapInfoDeprecated.formatWithXML\n--functions of CCTMXMapInfo will be deprecated end\n\n\n--functions of CCTMXObject will be deprecated begin\nlocal CCTMXObjectGroupDeprecated = { }\nfunction CCTMXObjectGroupDeprecated.propertyNamed(self,propertyName)\n    deprecatedTip(\"CCTMXObjectGroup:propertyNamed\",\"CCTMXObjectGroup:getProperty\")\n    return self:getProperty(propertyName)\nend\nCCTMXObjectGroup.propertyNamed = CCTMXObjectGroupDeprecated.propertyNamed\n\nfunction CCTMXObjectGroupDeprecated.objectNamed(self, objectName)\n    deprecatedTip(\"CCTMXObjectGroup:objectNamed\",\"CCTMXObjectGroup:getObject\")\n    return self:getObject(objectName)\nend\nCCTMXObjectGroup.objectNamed = CCTMXObjectGroupDeprecated.objectNamed\n--functions of CCTMXObject will be deprecated end\n\n--functions of CCRenderTexture will be deprecated begin\nlocal CCRenderTextureDeprecated = { }\nfunction CCRenderTextureDeprecated.newCCImage(self)\n    deprecatedTip(\"CCRenderTexture:newCCImage\",\"CCRenderTexture:newImage\")\n    return self:newImage()\nend\nCCRenderTexture.newCCImage = CCRenderTextureDeprecated.newCCImage\n--functions of CCRenderTexture will be deprecated end\n\n--functions of Sprite will be deprecated begin\nlocal CCSpriteDeprecated = { }\nfunction CCSpriteDeprecated.setFlipX(self,flag)\n    deprecatedTip(\"CCSpriteDeprecated:setFlipX\",\"CCSpriteDeprecated:setFlippedX\")\n    return self:setFlippedX(flag)\nend\ncc.Sprite.setFlipX = CCSpriteDeprecated.setFlipX\n\nfunction CCSpriteDeprecated.setFlipY(self,flag)\n    deprecatedTip(\"CCSpriteDeprecated:setFlipY\",\"CCSpriteDeprecated:setFlippedY\")\n    return self:setFlippedY(flag)\nend\ncc.Sprite.setFlipY = CCSpriteDeprecated.setFlipY\n--functions of Sprite will be deprecated end\n\n\n--functions of Layer will be deprecated begin\nlocal CCLayerDeprecated = {}\nfunction CCLayerDeprecated.setKeypadEnabled( self, enabled)\n    return self:setKeyboardEnabled(enabled)\nend\ncc.Layer.setKeypadEnabled = CCLayerDeprecated.setKeypadEnabled\n\nfunction CCLayerDeprecated.isKeypadEnabled(self)\n    return self:isKeyboardEnabled()\nend\ncc.Layer.isKeypadEnabled = CCLayerDeprecated.isKeypadEnabled\n--functions of Layer will be deprecated end\n\n--functions of cc.Node will be deprecated begin\nlocal NodeDeprecated = { }\nfunction NodeDeprecated.setZOrder(self,zOrder)\n    deprecatedTip(\"cc.Node:setZOrder\",\"cc.Node:setLocalZOrder\")\n    return self:setLocalZOrder(zOrder)\nend\ncc.Node.setZOrder = NodeDeprecated.setZOrder\n\nfunction NodeDeprecated.getZOrder(self)\n    deprecatedTip(\"cc.Node:getZOrder\",\"cc.Node:getLocalZOrder\")\n    return self:getLocalZOrder()\nend\ncc.Node.getZOrder = NodeDeprecated.getZOrder\n\nfunction NodeDeprecated.setVertexZ(self,vertexZ)\n    deprecatedTip(\"cc.Node:setVertexZ\", \"cc.Node:setPositionZ\")\n    return self:setPositionZ(vertexZ)\nend\ncc.Node.setVertexZ = NodeDeprecated.setVertexZ\n\nfunction NodeDeprecated.getVertexZ(self)\n    deprecatedTip(\"cc.Node:getVertexZ\", \"cc.Node:getPositionZ\")\n    return self:getPositionZ()\nend\ncc.Node.getVertexZ = NodeDeprecated.getVertexZ\n--functions of cc.Node will be deprecated end\n\n--functions of cc.GLProgram will be deprecated begin\nlocal GLProgram = { }\nfunction GLProgram.initWithVertexShaderByteArray(self,vShaderByteArray, fShaderByteArray)\n    deprecatedTip(\"cc.GLProgram:initWithVertexShaderByteArray\",\"cc.GLProgram:initWithByteArrays\")\n    return self:initWithByteArrays(vShaderByteArray, fShaderByteArray)\nend\ncc.GLProgram.initWithVertexShaderByteArray = GLProgram.initWithVertexShaderByteArray\n\nfunction GLProgram.initWithVertexShaderFilename(self,vShaderByteArray, fShaderByteArray)\n    deprecatedTip(\"cc.GLProgram:initWithVertexShaderFilename\",\"cc.GLProgram:initWithFilenames\")\n    return self:initWithFilenames(vShaderByteArray, fShaderByteArray)\nend\ncc.GLProgram.initWithVertexShaderFilename = GLProgram.initWithVertexShaderFilename\n\nfunction GLProgram.addAttribute(self, attributeName, index)\n    deprecatedTip(\"cc.GLProgram:addAttribute\",\"cc.GLProgram:bindAttribLocation\")\n    return self:bindAttribLocation(attributeName, index)\nend\ncc.GLProgram.addAttribute = GLProgram.addAttribute\n--functions of cc.GLProgram will be deprecated end\n"
  },
  {
    "path": "源代码/mir9/src/cocos/cocos2d/DeprecatedOpenglEnum.lua",
    "content": "-- This is the DeprecatedEnum\n\nDeprecatedClass = {} or DeprecatedClass\n\n_G.GL_RENDERBUFFER_INTERNAL_FORMAT = gl.RENDERBUFFER_INTERNAL_FORMAT\n_G.GL_LINE_WIDTH = gl.LINE_WIDTH\n_G.GL_CONSTANT_ALPHA = gl.CONSTANT_ALPHA\n_G.GL_BLEND_SRC_ALPHA = gl.BLEND_SRC_ALPHA\n_G.GL_GREEN_BITS = gl.GREEN_BITS\n_G.GL_STENCIL_REF = gl.STENCIL_REF\n_G.GL_ONE_MINUS_SRC_ALPHA = gl.ONE_MINUS_SRC_ALPHA\n_G.GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE = gl.FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE\n_G.GL_CCW = gl.CCW\n_G.GL_MAX_TEXTURE_IMAGE_UNITS = gl.MAX_TEXTURE_IMAGE_UNITS\n_G.GL_BACK = gl.BACK\n_G.GL_ACTIVE_ATTRIBUTES = gl.ACTIVE_ATTRIBUTES\n_G.GL_TEXTURE_CUBE_MAP_POSITIVE_X = gl.TEXTURE_CUBE_MAP_POSITIVE_X\n_G.GL_STENCIL_BACK_VALUE_MASK = gl.STENCIL_BACK_VALUE_MASK\n_G.GL_TEXTURE_CUBE_MAP_POSITIVE_Z = gl.TEXTURE_CUBE_MAP_POSITIVE_Z\n_G.GL_ONE = gl.ONE\n_G.GL_TRUE = gl.TRUE\n_G.GL_TEXTURE12 = gl.TEXTURE12\n_G.GL_LINK_STATUS = gl.LINK_STATUS\n_G.GL_BLEND = gl.BLEND\n_G.GL_LESS = gl.LESS\n_G.GL_TEXTURE16 = gl.TEXTURE16\n_G.GL_BOOL_VEC2 = gl.BOOL_VEC2\n_G.GL_KEEP = gl.KEEP\n_G.GL_DST_COLOR = gl.DST_COLOR\n_G.GL_VERTEX_ATTRIB_ARRAY_ENABLED = gl.VERTEX_ATTRIB_ARRAY_ENABLED\n_G.GL_EXTENSIONS = gl.EXTENSIONS\n_G.GL_FRONT = gl.FRONT\n_G.GL_DST_ALPHA = gl.DST_ALPHA\n_G.GL_ATTACHED_SHADERS = gl.ATTACHED_SHADERS\n_G.GL_STENCIL_BACK_FUNC = gl.STENCIL_BACK_FUNC\n_G.GL_ONE_MINUS_DST_COLOR = gl.ONE_MINUS_DST_COLOR\n_G.GL_BLEND_EQUATION = gl.BLEND_EQUATION\n_G.GL_RENDERBUFFER_DEPTH_SIZE = gl.RENDERBUFFER_DEPTH_SIZE\n_G.GL_PACK_ALIGNMENT = gl.PACK_ALIGNMENT\n_G.GL_VENDOR = gl.VENDOR\n_G.GL_NEAREST_MIPMAP_LINEAR = gl.NEAREST_MIPMAP_LINEAR\n_G.GL_TEXTURE_CUBE_MAP_POSITIVE_Y = gl.TEXTURE_CUBE_MAP_POSITIVE_Y\n_G.GL_NEAREST = gl.NEAREST\n_G.GL_RENDERBUFFER_WIDTH = gl.RENDERBUFFER_WIDTH\n_G.GL_ARRAY_BUFFER_BINDING = gl.ARRAY_BUFFER_BINDING\n_G.GL_ARRAY_BUFFER = gl.ARRAY_BUFFER\n_G.GL_LEQUAL = gl.LEQUAL\n_G.GL_VERSION = gl.VERSION\n_G.GL_COLOR_CLEAR_VALUE = gl.COLOR_CLEAR_VALUE\n_G.GL_RENDERER = gl.RENDERER\n_G.GL_STENCIL_BACK_PASS_DEPTH_PASS = gl.STENCIL_BACK_PASS_DEPTH_PASS\n_G.GL_STENCIL_BACK_PASS_DEPTH_FAIL = gl.STENCIL_BACK_PASS_DEPTH_FAIL\n_G.GL_STENCIL_BACK_WRITEMASK = gl.STENCIL_BACK_WRITEMASK\n_G.GL_BOOL = gl.BOOL\n_G.GL_VIEWPORT = gl.VIEWPORT\n_G.GL_FRAGMENT_SHADER = gl.FRAGMENT_SHADER\n_G.GL_LUMINANCE = gl.LUMINANCE\n_G.GL_DECR_WRAP = gl.DECR_WRAP\n_G.GL_FUNC_ADD = gl.FUNC_ADD\n_G.GL_ONE_MINUS_DST_ALPHA = gl.ONE_MINUS_DST_ALPHA\n_G.GL_OUT_OF_MEMORY = gl.OUT_OF_MEMORY\n_G.GL_BOOL_VEC4 = gl.BOOL_VEC4\n_G.GL_POLYGON_OFFSET_FACTOR = gl.POLYGON_OFFSET_FACTOR\n_G.GL_STATIC_DRAW = gl.STATIC_DRAW\n_G.GL_DITHER = gl.DITHER\n_G.GL_TEXTURE31 = gl.TEXTURE31\n_G.GL_TEXTURE30 = gl.TEXTURE30\n_G.GL_UNSIGNED_BYTE = gl.UNSIGNED_BYTE\n_G.GL_DEPTH_COMPONENT16 = gl.DEPTH_COMPONENT16\n_G.GL_TEXTURE23 = gl.TEXTURE23\n_G.GL_DEPTH_TEST = gl.DEPTH_TEST\n_G.GL_STENCIL_PASS_DEPTH_FAIL = gl.STENCIL_PASS_DEPTH_FAIL\n_G.GL_BOOL_VEC3 = gl.BOOL_VEC3\n_G.GL_POLYGON_OFFSET_UNITS = gl.POLYGON_OFFSET_UNITS\n_G.GL_TEXTURE_BINDING_2D = gl.TEXTURE_BINDING_2D\n_G.GL_TEXTURE21 = gl.TEXTURE21\n_G.GL_UNPACK_ALIGNMENT = gl.UNPACK_ALIGNMENT\n_G.GL_DONT_CARE = gl.DONT_CARE\n_G.GL_BUFFER_SIZE = gl.BUFFER_SIZE\n_G.GL_FLOAT_MAT3 = gl.FLOAT_MAT3\n_G.GL_UNSIGNED_SHORT_5_6_5 = gl.UNSIGNED_SHORT_5_6_5\n_G.GL_INT_VEC2 = gl.INT_VEC2\n_G.GL_UNSIGNED_SHORT_4_4_4_4 = gl.UNSIGNED_SHORT_4_4_4_4\n_G.GL_NONE = gl.NONE\n_G.GL_BLEND_DST_ALPHA = gl.BLEND_DST_ALPHA\n_G.GL_VERTEX_ATTRIB_ARRAY_SIZE = gl.VERTEX_ATTRIB_ARRAY_SIZE\n_G.GL_SRC_COLOR = gl.SRC_COLOR\n_G.GL_COMPRESSED_TEXTURE_FORMATS = gl.COMPRESSED_TEXTURE_FORMATS\n_G.GL_STENCIL_ATTACHMENT = gl.STENCIL_ATTACHMENT\n_G.GL_MAX_VERTEX_ATTRIBS = gl.MAX_VERTEX_ATTRIBS\n_G.GL_NUM_COMPRESSED_TEXTURE_FORMATS = gl.NUM_COMPRESSED_TEXTURE_FORMATS\n_G.GL_BLEND_EQUATION_RGB = gl.BLEND_EQUATION_RGB\n_G.GL_TEXTURE = gl.TEXTURE\n_G.GL_LINEAR_MIPMAP_LINEAR = gl.LINEAR_MIPMAP_LINEAR\n_G.GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING = gl.VERTEX_ATTRIB_ARRAY_BUFFER_BINDING\n_G.GL_CURRENT_PROGRAM = gl.CURRENT_PROGRAM\n_G.GL_COLOR_BUFFER_BIT = gl.COLOR_BUFFER_BIT\n_G.GL_TEXTURE20 = gl.TEXTURE20\n_G.GL_ACTIVE_ATTRIBUTE_MAX_LENGTH = gl.ACTIVE_ATTRIBUTE_MAX_LENGTH\n_G.GL_TEXTURE28 = gl.TEXTURE28\n_G.GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE = gl.FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE\n_G.GL_TEXTURE22 = gl.TEXTURE22\n_G.GL_ELEMENT_ARRAY_BUFFER_BINDING = gl.ELEMENT_ARRAY_BUFFER_BINDING\n_G.GL_STREAM_DRAW = gl.STREAM_DRAW\n_G.GL_SCISSOR_BOX = gl.SCISSOR_BOX\n_G.GL_TEXTURE26 = gl.TEXTURE26\n_G.GL_TEXTURE27 = gl.TEXTURE27\n_G.GL_TEXTURE24 = gl.TEXTURE24\n_G.GL_TEXTURE25 = gl.TEXTURE25\n_G.GL_NO_ERROR = gl.NO_ERROR\n_G.GL_TEXTURE29 = gl.TEXTURE29\n_G.GL_FLOAT_MAT4 = gl.FLOAT_MAT4\n_G.GL_VERTEX_ATTRIB_ARRAY_NORMALIZED = gl.VERTEX_ATTRIB_ARRAY_NORMALIZED\n_G.GL_SAMPLE_COVERAGE_INVERT = gl.SAMPLE_COVERAGE_INVERT\n_G.GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL = gl.FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL\n_G.GL_FLOAT_VEC3 = gl.FLOAT_VEC3\n_G.GL_STENCIL_CLEAR_VALUE = gl.STENCIL_CLEAR_VALUE\n_G.GL_UNSIGNED_SHORT_5_5_5_1 = gl.UNSIGNED_SHORT_5_5_5_1\n_G.GL_ACTIVE_UNIFORMS = gl.ACTIVE_UNIFORMS\n_G.GL_INVALID_OPERATION = gl.INVALID_OPERATION\n_G.GL_DEPTH_ATTACHMENT = gl.DEPTH_ATTACHMENT\n_G.GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS = gl.MAX_COMBINED_TEXTURE_IMAGE_UNITS\n_G.GL_FRAMEBUFFER_COMPLETE = gl.FRAMEBUFFER_COMPLETE\n_G.GL_ONE_MINUS_CONSTANT_COLOR = gl.ONE_MINUS_CONSTANT_COLOR\n_G.GL_TEXTURE2 = gl.TEXTURE2\n_G.GL_TEXTURE1 = gl.TEXTURE1\n_G.GL_GEQUAL = gl.GEQUAL\n_G.GL_TEXTURE7 = gl.TEXTURE7\n_G.GL_TEXTURE6 = gl.TEXTURE6\n_G.GL_TEXTURE5 = gl.TEXTURE5\n_G.GL_TEXTURE4 = gl.TEXTURE4\n_G.GL_GENERATE_MIPMAP_HINT = gl.GENERATE_MIPMAP_HINT\n_G.GL_ONE_MINUS_SRC_COLOR = gl.ONE_MINUS_SRC_COLOR\n_G.GL_TEXTURE9 = gl.TEXTURE9\n_G.GL_STENCIL_TEST = gl.STENCIL_TEST\n_G.GL_COLOR_WRITEMASK = gl.COLOR_WRITEMASK\n_G.GL_DEPTH_COMPONENT = gl.DEPTH_COMPONENT\n_G.GL_STENCIL_INDEX8 = gl.STENCIL_INDEX8\n_G.GL_VERTEX_ATTRIB_ARRAY_TYPE = gl.VERTEX_ATTRIB_ARRAY_TYPE\n_G.GL_FLOAT_VEC2 = gl.FLOAT_VEC2\n_G.GL_BLUE_BITS = gl.BLUE_BITS\n_G.GL_VERTEX_SHADER = gl.VERTEX_SHADER\n_G.GL_SUBPIXEL_BITS = gl.SUBPIXEL_BITS\n_G.GL_STENCIL_WRITEMASK = gl.STENCIL_WRITEMASK\n_G.GL_FLOAT_VEC4 = gl.FLOAT_VEC4\n_G.GL_TEXTURE17 = gl.TEXTURE17\n_G.GL_ONE_MINUS_CONSTANT_ALPHA = gl.ONE_MINUS_CONSTANT_ALPHA\n_G.GL_TEXTURE15 = gl.TEXTURE15\n_G.GL_TEXTURE14 = gl.TEXTURE14\n_G.GL_TEXTURE13 = gl.TEXTURE13\n_G.GL_SAMPLES = gl.SAMPLES\n_G.GL_TEXTURE11 = gl.TEXTURE11\n_G.GL_TEXTURE10 = gl.TEXTURE10\n_G.GL_FUNC_SUBTRACT = gl.FUNC_SUBTRACT\n_G.GL_STENCIL_BUFFER_BIT = gl.STENCIL_BUFFER_BIT\n_G.GL_TEXTURE19 = gl.TEXTURE19\n_G.GL_TEXTURE18 = gl.TEXTURE18\n_G.GL_NEAREST_MIPMAP_NEAREST = gl.NEAREST_MIPMAP_NEAREST\n_G.GL_SHORT = gl.SHORT\n_G.GL_RENDERBUFFER_BINDING = gl.RENDERBUFFER_BINDING\n_G.GL_REPEAT = gl.REPEAT\n_G.GL_TEXTURE_MIN_FILTER = gl.TEXTURE_MIN_FILTER\n_G.GL_RED_BITS = gl.RED_BITS\n_G.GL_FRONT_FACE = gl.FRONT_FACE\n_G.GL_BLEND_COLOR = gl.BLEND_COLOR\n_G.GL_MIRRORED_REPEAT = gl.MIRRORED_REPEAT\n_G.GL_INT_VEC4 = gl.INT_VEC4\n_G.GL_MAX_CUBE_MAP_TEXTURE_SIZE = gl.MAX_CUBE_MAP_TEXTURE_SIZE\n_G.GL_RENDERBUFFER_BLUE_SIZE = gl.RENDERBUFFER_BLUE_SIZE\n_G.GL_SAMPLE_COVERAGE = gl.SAMPLE_COVERAGE\n_G.GL_SRC_ALPHA = gl.SRC_ALPHA\n_G.GL_FUNC_REVERSE_SUBTRACT = gl.FUNC_REVERSE_SUBTRACT\n_G.GL_DEPTH_WRITEMASK = gl.DEPTH_WRITEMASK\n_G.GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT = gl.FRAMEBUFFER_INCOMPLETE_ATTACHMENT\n_G.GL_POLYGON_OFFSET_FILL = gl.POLYGON_OFFSET_FILL\n_G.GL_STENCIL_FUNC = gl.STENCIL_FUNC\n_G.GL_REPLACE = gl.REPLACE\n_G.GL_LUMINANCE_ALPHA = gl.LUMINANCE_ALPHA\n_G.GL_DEPTH_RANGE = gl.DEPTH_RANGE\n_G.GL_FASTEST = gl.FASTEST\n_G.GL_STENCIL_FAIL = gl.STENCIL_FAIL\n_G.GL_UNSIGNED_SHORT = gl.UNSIGNED_SHORT\n_G.GL_RENDERBUFFER_HEIGHT = gl.RENDERBUFFER_HEIGHT\n_G.GL_STENCIL_BACK_FAIL = gl.STENCIL_BACK_FAIL\n_G.GL_BLEND_SRC_RGB = gl.BLEND_SRC_RGB\n_G.GL_TEXTURE3 = gl.TEXTURE3\n_G.GL_RENDERBUFFER = gl.RENDERBUFFER\n_G.GL_RGB5_A1 = gl.RGB5_A1\n_G.GL_RENDERBUFFER_ALPHA_SIZE = gl.RENDERBUFFER_ALPHA_SIZE\n_G.GL_RENDERBUFFER_STENCIL_SIZE = gl.RENDERBUFFER_STENCIL_SIZE\n_G.GL_NOTEQUAL = gl.NOTEQUAL\n_G.GL_BLEND_DST_RGB = gl.BLEND_DST_RGB\n_G.GL_FRONT_AND_BACK = gl.FRONT_AND_BACK\n_G.GL_TEXTURE_BINDING_CUBE_MAP = gl.TEXTURE_BINDING_CUBE_MAP\n_G.GL_MAX_RENDERBUFFER_SIZE = gl.MAX_RENDERBUFFER_SIZE\n_G.GL_ZERO = gl.ZERO\n_G.GL_TEXTURE0 = gl.TEXTURE0\n_G.GL_SAMPLE_ALPHA_TO_COVERAGE = gl.SAMPLE_ALPHA_TO_COVERAGE\n_G.GL_BUFFER_USAGE = gl.BUFFER_USAGE\n_G.GL_ACTIVE_TEXTURE = gl.ACTIVE_TEXTURE\n_G.GL_BYTE = gl.BYTE\n_G.GL_CW = gl.CW\n_G.GL_DYNAMIC_DRAW = gl.DYNAMIC_DRAW\n_G.GL_RENDERBUFFER_RED_SIZE = gl.RENDERBUFFER_RED_SIZE\n_G.GL_FALSE = gl.FALSE\n_G.GL_GREATER = gl.GREATER\n_G.GL_RGBA4 = gl.RGBA4\n_G.GL_VALIDATE_STATUS = gl.VALIDATE_STATUS\n_G.GL_STENCIL_BITS = gl.STENCIL_BITS\n_G.GL_RGB = gl.RGB\n_G.GL_INT = gl.INT\n_G.GL_DEPTH_FUNC = gl.DEPTH_FUNC\n_G.GL_SAMPLER_2D = gl.SAMPLER_2D\n_G.GL_NICEST = gl.NICEST\n_G.GL_MAX_VIEWPORT_DIMS = gl.MAX_VIEWPORT_DIMS\n_G.GL_CULL_FACE = gl.CULL_FACE\n_G.GL_INT_VEC3 = gl.INT_VEC3\n_G.GL_ALIASED_POINT_SIZE_RANGE = gl.ALIASED_POINT_SIZE_RANGE\n_G.GL_INVALID_ENUM = gl.INVALID_ENUM\n_G.GL_INVERT = gl.INVERT\n_G.GL_CULL_FACE_MODE = gl.CULL_FACE_MODE\n_G.GL_TEXTURE8 = gl.TEXTURE8\n_G.GL_VERTEX_ATTRIB_ARRAY_POINTER = gl.VERTEX_ATTRIB_ARRAY_POINTER\n_G.GL_TEXTURE_WRAP_S = gl.TEXTURE_WRAP_S\n_G.GL_VERTEX_ATTRIB_ARRAY_STRIDE = gl.VERTEX_ATTRIB_ARRAY_STRIDE\n_G.GL_LINES = gl.LINES\n_G.GL_EQUAL = gl.EQUAL\n_G.GL_LINE_LOOP = gl.LINE_LOOP\n_G.GL_TEXTURE_WRAP_T = gl.TEXTURE_WRAP_T\n_G.GL_DEPTH_BUFFER_BIT = gl.DEPTH_BUFFER_BIT\n_G.GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS = gl.MAX_VERTEX_TEXTURE_IMAGE_UNITS\n_G.GL_SHADER_TYPE = gl.SHADER_TYPE\n_G.GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME = gl.FRAMEBUFFER_ATTACHMENT_OBJECT_NAME\n_G.GL_TEXTURE_CUBE_MAP_NEGATIVE_X = gl.TEXTURE_CUBE_MAP_NEGATIVE_X\n_G.GL_TEXTURE_CUBE_MAP_NEGATIVE_Y = gl.TEXTURE_CUBE_MAP_NEGATIVE_Y\n_G.GL_TEXTURE_CUBE_MAP_NEGATIVE_Z = gl.TEXTURE_CUBE_MAP_NEGATIVE_Z\n_G.GL_DECR = gl.DECR\n_G.GL_DELETE_STATUS = gl.DELETE_STATUS\n_G.GL_DEPTH_BITS = gl.DEPTH_BITS\n_G.GL_INCR = gl.INCR\n_G.GL_SAMPLE_COVERAGE_VALUE = gl.SAMPLE_COVERAGE_VALUE\n_G.GL_ALPHA_BITS = gl.ALPHA_BITS\n_G.GL_FLOAT_MAT2 = gl.FLOAT_MAT2\n_G.GL_LINE_STRIP = gl.LINE_STRIP\n_G.GL_SHADER_SOURCE_LENGTH = gl.SHADER_SOURCE_LENGTH\n_G.GL_INVALID_VALUE = gl.INVALID_VALUE\n_G.GL_NEVER = gl.NEVER\n_G.GL_INCR_WRAP = gl.INCR_WRAP\n_G.GL_BLEND_EQUATION_ALPHA = gl.BLEND_EQUATION_ALPHA\n_G.GL_TEXTURE_MAG_FILTER = gl.TEXTURE_MAG_FILTER\n_G.GL_POINTS = gl.POINTS\n_G.GL_COLOR_ATTACHMENT0 = gl.COLOR_ATTACHMENT0\n_G.GL_RGBA = gl.RGBA\n_G.GL_SRC_ALPHA_SATURATE = gl.SRC_ALPHA_SATURATE\n_G.GL_SAMPLER_CUBE = gl.SAMPLER_CUBE\n_G.GL_FRAMEBUFFER = gl.FRAMEBUFFER\n_G.GL_TEXTURE_CUBE_MAP = gl.TEXTURE_CUBE_MAP\n_G.GL_SAMPLE_BUFFERS = gl.SAMPLE_BUFFERS\n_G.GL_LINEAR = gl.LINEAR\n_G.GL_LINEAR_MIPMAP_NEAREST = gl.LINEAR_MIPMAP_NEAREST\n_G.GL_ACTIVE_UNIFORM_MAX_LENGTH = gl.ACTIVE_UNIFORM_MAX_LENGTH\n_G.GL_STENCIL_BACK_REF = gl.STENCIL_BACK_REF\n_G.GL_ELEMENT_ARRAY_BUFFER = gl.ELEMENT_ARRAY_BUFFER\n_G.GL_CLAMP_TO_EDGE = gl.CLAMP_TO_EDGE\n_G.GL_TRIANGLE_STRIP = gl.TRIANGLE_STRIP\n_G.GL_CONSTANT_COLOR = gl.CONSTANT_COLOR\n_G.GL_COMPILE_STATUS = gl.COMPILE_STATUS\n_G.GL_RENDERBUFFER_GREEN_SIZE = gl.RENDERBUFFER_GREEN_SIZE\n_G.GL_UNSIGNED_INT = gl.UNSIGNED_INT\n_G.GL_DEPTH_CLEAR_VALUE = gl.DEPTH_CLEAR_VALUE\n_G.GL_ALIASED_LINE_WIDTH_RANGE = gl.ALIASED_LINE_WIDTH_RANGE\n_G.GL_SHADING_LANGUAGE_VERSION = gl.SHADING_LANGUAGE_VERSION\n_G.GL_FRAMEBUFFER_UNSUPPORTED = gl.FRAMEBUFFER_UNSUPPORTED\n_G.GL_INFO_LOG_LENGTH = gl.INFO_LOG_LENGTH\n_G.GL_STENCIL_PASS_DEPTH_PASS = gl.STENCIL_PASS_DEPTH_PASS\n_G.GL_STENCIL_VALUE_MASK = gl.STENCIL_VALUE_MASK\n_G.GL_ALWAYS = gl.ALWAYS\n_G.GL_MAX_TEXTURE_SIZE = gl.MAX_TEXTURE_SIZE\n_G.GL_FLOAT = gl.FLOAT\n_G.GL_FRAMEBUFFER_BINDING = gl.FRAMEBUFFER_BINDING\n_G.GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT = gl.FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT\n_G.GL_TRIANGLE_FAN = gl.TRIANGLE_FAN\n_G.GL_INVALID_FRAMEBUFFER_OPERATION = gl.INVALID_FRAMEBUFFER_OPERATION\n_G.GL_TEXTURE_2D = gl.TEXTURE_2D\n_G.GL_ALPHA = gl.ALPHA\n_G.GL_CURRENT_VERTEX_ATTRIB = gl.CURRENT_VERTEX_ATTRIB\n_G.GL_SCISSOR_TEST = gl.SCISSOR_TEST\n_G.GL_TRIANGLES = gl.TRIANGLES\n"
  },
  {
    "path": "源代码/mir9/src/cocos/cocos2d/DrawPrimitives.lua",
    "content": "\nlocal dp_initialized = false\nlocal dp_shader      = nil\nlocal dp_colorLocation = -1\nlocal dp_color = { 1.0, 1.0, 1.0, 1.0 }\nlocal dp_pointSizeLocation = -1\nlocal dp_pointSize = 1.0\n\nlocal SHADER_NAME_POSITION_U_COLOR = \"ShaderPosition_uColor\"\n\nlocal targetPlatform = cc.Application:getInstance():getTargetPlatform()\n\nlocal function lazy_init()\n    if not dp_initialized then\n        dp_shader = cc.ShaderCache:getInstance():getProgram(SHADER_NAME_POSITION_U_COLOR)\n        --dp_shader:retain()\n        if nil ~= dp_shader then\n            dp_colorLocation = gl.getUniformLocation( dp_shader:getProgram(), \"u_color\")\n            dp_pointSizeLocation = gl.getUniformLocation( dp_shader:getProgram(), \"u_pointSize\")\n            dp_Initialized = true\n        end\n    end\n\n    if nil == dp_shader then\n        print(\"Error:dp_shader is nil!\")\n        return false\n    end\n\n    return true\nend\n\nlocal function setDrawProperty()\n    gl.glEnableVertexAttribs( CCConstants.VERTEX_ATTRIB_FLAG_POSITION )\n    dp_shader:use()\n    dp_shader:setUniformsForBuiltins()\n    dp_shader:setUniformLocationWith4fv(dp_colorLocation, dp_color, 1)\nend\n\nfunction ccDrawInit()\n    lazy_init()\nend\n\nfunction ccDrawFree()\n    dp_initialized = false\nend\n\nfunction ccDrawColor4f(r,g,b,a)\n    dp_color[1] = r\n    dp_color[2] = g\n    dp_color[3] = b\n    dp_color[4] = a\nend\n\nfunction ccPointSize(pointSize)\n    dp_pointSize = pointSize * cc.Director:getInstance():getContentScaleFactor()\nend\n\nfunction ccDrawColor4B(r,g,b,a)\n    dp_color[1] = r / 255.0\n    dp_color[2] = g / 255.0\n    dp_color[3] = b / 255.0\n    dp_color[4] = a / 255.0\nend\n\nfunction ccDrawPoint(point)\n    if not lazy_init() then\n        return\n    end\n\n    local vertexBuffer = { }\n\n    local function initBuffer()\n        vertexBuffer.buffer_id = gl.createBuffer()\n        gl.bindBuffer(gl.ARRAY_BUFFER,vertexBuffer.buffer_id)\n        local vertices = { point.x,point.y}\n        gl.bufferData(gl.ARRAY_BUFFER,2,vertices,gl.STATIC_DRAW)\n        gl.bindBuffer(gl.ARRAY_BUFFER, 0)\n    end\n\n    initBuffer()\n\n    setDrawProperty()\n\n    dp_shader:setUniformLocationWith1f(dp_pointSizeLocation, dp_pointSize)\n\n    gl.bindBuffer(gl.ARRAY_BUFFER,vertexBuffer.buffer_id)\n    gl.vertexAttribPointer(CCConstants.VERTEX_ATTRIB_POSITION, 2, gl.FLOAT, false, 0, 0)\n    gl.drawArrays(gl.POINTS,0,1)\n    gl.bindBuffer(gl.ARRAY_BUFFER,0)\nend\n\nfunction ccDrawPoints(points,numOfPoint)\n    if not lazy_init() then\n        return\n    end\n\n    local vertexBuffer = {}\n    local i = 1\n\n    local function initBuffer()\n        vertexBuffer.buffer_id = gl.createBuffer()\n        gl.bindBuffer(gl.ARRAY_BUFFER, vertexBuffer.buffer_id)\n        local vertices = {}\n        for i = 1, numOfPoint do\n            vertices[2 * i - 1] = points[i].x\n            vertices[2 * i]     = points[i].y\n        end\n        gl.bufferData(gl.ARRAY_BUFFER, numOfPoint * 2, vertices, gl.STATIC_DRAW)\n        gl.bindBuffer(gl.ARRAY_BUFFER, 0)\n    end\n\n    initBuffer()\n\n    setDrawProperty()\n\n    dp_shader:setUniformLocationWith1f(dp_pointSizeLocation, dp_pointSize)\n\n    gl.bindBuffer(gl.ARRAY_BUFFER,vertexBuffer.buffer_id)\n    gl.vertexAttribPointer(CCConstants.VERTEX_ATTRIB_POSITION, 2, gl.FLOAT, false, 0, 0)\n    gl.drawArrays(gl.POINTS,0,numOfPoint)\n    gl.bindBuffer(gl.ARRAY_BUFFER,0)\nend\n\nfunction ccDrawLine(origin,destination)\n    if not lazy_init() then\n        return\n    end\n\n    local vertexBuffer = {}\n\n    local function initBuffer()\n        vertexBuffer.buffer_id = gl.createBuffer()\n        gl.bindBuffer(gl.ARRAY_BUFFER, vertexBuffer.buffer_id)\n        local vertices = { origin.x, origin.y, destination.x, destination.y}\n        gl.bufferData(gl.ARRAY_BUFFER,4,vertices,gl.STATIC_DRAW)\n        gl.bindBuffer(gl.ARRAY_BUFFER, 0)\n    end\n\n    initBuffer()\n\n    setDrawProperty()\n\n    gl.bindBuffer(gl.ARRAY_BUFFER,vertexBuffer.buffer_id)\n    gl.vertexAttribPointer(CCConstants.VERTEX_ATTRIB_POSITION, 2, gl.FLOAT, false, 0, 0)\n    gl.drawArrays(gl.LINES ,0,2)\n    gl.bindBuffer(gl.ARRAY_BUFFER,0)\nend\n\nfunction ccDrawPoly(points,numOfPoints,closePolygon)\n    if not lazy_init() then\n        return\n    end\n\n    local vertexBuffer = {}\n    local i = 1\n\n    local function initBuffer()\n        vertexBuffer.buffer_id = gl.createBuffer()\n        gl.bindBuffer(gl.ARRAY_BUFFER, vertexBuffer.buffer_id)\n        local vertices = {}\n        for i = 1, numOfPoints do\n            vertices[2 * i - 1] = points[i].x\n            vertices[2 * i]     = points[i].y\n        end\n        gl.bufferData(gl.ARRAY_BUFFER, numOfPoints * 2, vertices, gl.STATIC_DRAW)\n        gl.bindBuffer(gl.ARRAY_BUFFER, 0)\n    end\n\n    initBuffer()\n\n    setDrawProperty()\n\n    gl.bindBuffer(gl.ARRAY_BUFFER,vertexBuffer.buffer_id)\n    gl.vertexAttribPointer(CCConstants.VERTEX_ATTRIB_POSITION, 2, gl.FLOAT, false, 0, 0)\n    if closePolygon then\n        gl.drawArrays(gl.LINE_LOOP , 0, numOfPoints)\n    else\n        gl.drawArrays(gl.LINE_STRIP, 0, numOfPoints)\n    end\n    gl.bindBuffer(gl.ARRAY_BUFFER,0)\nend\n\nfunction ccDrawSolidPoly(points,numOfPoints,color)\n    if not lazy_init() then\n        return\n    end\n\n    local vertexBuffer = {}\n    local i = 1\n\n    local function initBuffer()\n        vertexBuffer.buffer_id = gl.createBuffer()\n        gl.bindBuffer(gl.ARRAY_BUFFER, vertexBuffer.buffer_id)\n        local vertices = {}\n        for i = 1, numOfPoints do\n            vertices[2 * i - 1] = points[i].x\n            vertices[2 * i]     = points[i].y\n\n        end\n        gl.bufferData(gl.ARRAY_BUFFER, numOfPoints * 2, vertices, gl.STATIC_DRAW)\n        gl.bindBuffer(gl.ARRAY_BUFFER, 0)\n    end\n\n    initBuffer()\n\n    gl.glEnableVertexAttribs( CCConstants.VERTEX_ATTRIB_FLAG_POSITION )\n    dp_shader:use()\n    dp_shader:setUniformsForBuiltins()\n    dp_shader:setUniformLocationWith4fv(dp_colorLocation, color, 1)\n\n    gl.bindBuffer(gl.ARRAY_BUFFER,vertexBuffer.buffer_id)\n    gl.vertexAttribPointer(CCConstants.VERTEX_ATTRIB_POSITION, 2, gl.FLOAT, false, 0, 0)\n    gl.drawArrays(gl.TRIANGLE_FAN , 0, numOfPoints)\n    gl.bindBuffer(gl.ARRAY_BUFFER,0)\nend\n\nfunction ccDrawRect(origin,destination)\n    ccDrawLine(CCPoint:__call(origin.x, origin.y), CCPoint:__call(destination.x, origin.y))\n    ccDrawLine(CCPoint:__call(destination.x, origin.y), CCPoint:__call(destination.x, destination.y))\n    ccDrawLine(CCPoint:__call(destination.x, destination.y), CCPoint:__call(origin.x, destination.y))\n    ccDrawLine(CCPoint:__call(origin.x, destination.y), CCPoint:__call(origin.x, origin.y))\nend\n\nfunction ccDrawSolidRect( origin,destination,color )\n    local vertices = { origin, CCPoint:__call(destination.x, origin.y) , destination, CCPoint:__call(origin.x, destination.y) }\n    ccDrawSolidPoly(vertices,4,color)\nend\n\nfunction ccDrawCircleScale( center, radius, angle, segments,drawLineToCenter,scaleX,scaleY)\n    if not lazy_init() then\n        return\n    end\n\n    local additionalSegment = 1\n    if drawLineToCenter then\n        additionalSegment = additionalSegment + 1\n    end\n\n    local vertexBuffer = { }\n\n    local function initBuffer()\n        local coef = 2.0 * math.pi / segments\n        local i = 1\n        local vertices = {}\n        vertexBuffer.buffer_id = gl.createBuffer()\n        gl.bindBuffer(gl.ARRAY_BUFFER, vertexBuffer.buffer_id)\n        for i = 1, segments + 1 do\n            local rads = (i - 1) * coef\n            local j    = radius * math.cos(rads + angle) * scaleX + center.x\n            local k    = radius * math.sin(rads + angle) * scaleY + center.y\n            vertices[i * 2 - 1] = j\n            vertices[i * 2]     = k\n         end\n        vertices[(segments + 2) * 2 - 1] = center.x\n        vertices[(segments + 2) * 2]     = center.y\n\n        gl.bufferData(gl.ARRAY_BUFFER, (segments + 2) * 2, vertices, gl.STATIC_DRAW)\n        gl.bindBuffer(gl.ARRAY_BUFFER, 0)\n    end\n\n    initBuffer()\n\n    setDrawProperty()\n\n    gl.bindBuffer(gl.ARRAY_BUFFER,vertexBuffer.buffer_id)\n    gl.vertexAttribPointer(CCConstants.VERTEX_ATTRIB_POSITION, 2, gl.FLOAT, false, 0, 0)\n    gl.drawArrays(gl.LINE_STRIP , 0, segments + additionalSegment)\n    gl.bindBuffer(gl.ARRAY_BUFFER,0)\nend\n\nfunction ccDrawCircle(center, radius, angle, segments, drawLineToCenter)\n    ccDrawCircleScale(center, radius, angle, segments, drawLineToCenter, 1.0, 1.0)\nend\n\nfunction ccDrawSolidCircle(center, radius, angle, segments,scaleX,scaleY)\n    if not lazy_init() then\n        return\n    end\n\n    local vertexBuffer = { }\n\n    local function initBuffer()\n        local coef = 2.0 * math.pi / segments\n        local i = 1\n        local vertices = {}\n        vertexBuffer.buffer_id = gl.createBuffer()\n        gl.bindBuffer(gl.ARRAY_BUFFER, vertexBuffer.buffer_id)\n        for i = 1, segments + 1 do\n            local rads = (i - 1) * coef\n            local j    = radius * math.cos(rads + angle) * scaleX + center.x\n            local k    = radius * math.sin(rads + angle) * scaleY + center.y\n            vertices[i * 2 - 1] = j\n            vertices[i * 2]     = k\n         end\n        vertices[(segments + 2) * 2 - 1] = center.x\n        vertices[(segments + 2) * 2]     = center.y\n\n        gl.bufferData(gl.ARRAY_BUFFER, (segments + 2) * 2, vertices, gl.STATIC_DRAW)\n        gl.bindBuffer(gl.ARRAY_BUFFER, 0)\n    end\n\n    initBuffer()\n\n    setDrawProperty()\n\n    gl.bindBuffer(gl.ARRAY_BUFFER,vertexBuffer.buffer_id)\n    gl.vertexAttribPointer(CCConstants.VERTEX_ATTRIB_POSITION, 2, gl.FLOAT, false, 0, 0)\n    gl.drawArrays(gl.TRIANGLE_FAN , 0, segments + 1)\n    gl.bindBuffer(gl.ARRAY_BUFFER,0)\nend\n\nfunction ccDrawQuadBezier(origin, control, destination, segments)\n    if not lazy_init() then\n        return\n    end\n\n    local vertexBuffer = { }\n\n    local function initBuffer()\n        local vertices = { }\n        local i = 1\n        local t = 0.0\n\n        for i = 1, segments do\n            vertices[2 * i - 1] = math.pow(1 - t,2) * origin.x + 2.0 * (1 - t) * t * control.x + t * t * destination.x\n            vertices[2 * i]     = math.pow(1 - t,2) * origin.y + 2.0 * (1 - t) * t * control.y + t * t * destination.y\n            t = t + 1.0 / segments\n        end\n\n        vertices[2 * (segments + 1) - 1] = destination.x\n        vertices[2 * (segments + 1)]     = destination.y\n\n        vertexBuffer.buffer_id = gl.createBuffer()\n        gl.bindBuffer(gl.ARRAY_BUFFER, vertexBuffer.buffer_id)\n        gl.bufferData(gl.ARRAY_BUFFER, (segments + 1) * 2, vertices, gl.STATIC_DRAW)\n        gl.bindBuffer(gl.ARRAY_BUFFER, 0)\n    end\n\n    initBuffer()\n\n    setDrawProperty()\n\n    gl.bindBuffer(gl.ARRAY_BUFFER,vertexBuffer.buffer_id)\n    gl.vertexAttribPointer(CCConstants.VERTEX_ATTRIB_POSITION, 2, gl.FLOAT, false, 0, 0)\n    gl.drawArrays(gl.LINE_STRIP , 0, segments + 1)\n    gl.bindBuffer(gl.ARRAY_BUFFER,0)\nend\n\nfunction ccDrawCubicBezier(origin, control1, control2, destination, segments)\n    if not lazy_init then\n        return\n    end\n\n    local vertexBuffer = { }\n\n    local function initBuffer()\n        local vertices = { }\n        local t = 0\n        local i = 1\n\n        for i = 1, segments do\n            vertices[2 * i - 1] = math.pow(1 - t,3) * origin.x + 3.0 * math.pow(1 - t, 2) * t * control1.x + 3.0 * (1 - t) * t * t * control2.x + t * t * t * destination.x\n            vertices[2 * i]     = math.pow(1 - t,3) * origin.y + 3.0 * math.pow(1 - t, 2) * t * control1.y + 3.0 * (1 - t) * t * t * control2.y + t * t * t * destination.y\n            t = t + 1.0 / segments\n        end\n\n        vertices[2 * (segments + 1) - 1] = destination.x\n        vertices[2 * (segments + 1)]     = destination.y\n\n        vertexBuffer.buffer_id = gl.createBuffer()\n        gl.bindBuffer(gl.ARRAY_BUFFER, vertexBuffer.buffer_id)\n        gl.bufferData(gl.ARRAY_BUFFER, (segments + 1) * 2, vertices, gl.STATIC_DRAW)\n        gl.bindBuffer(gl.ARRAY_BUFFER, 0)\n    end\n\n    initBuffer()\n\n    setDrawProperty()\n\n    gl.bindBuffer(gl.ARRAY_BUFFER,vertexBuffer.buffer_id)\n    gl.vertexAttribPointer(CCConstants.VERTEX_ATTRIB_POSITION, 2, gl.FLOAT, false, 0, 0)\n    gl.drawArrays(gl.LINE_STRIP , 0, segments + 1)\n    gl.bindBuffer(gl.ARRAY_BUFFER,0)\nend\n"
  },
  {
    "path": "源代码/mir9/src/cocos/cocos2d/Opengl.lua",
    "content": "\nif not gl then return end\n\n--Create functions\nfunction  gl.createTexture()\n    local retTable = {}\n    retTable.texture_id = gl._createTexture()\n    return retTable\nend\n\nfunction gl.createBuffer()\n    local retTable = {}\n    retTable.buffer_id = gl._createBuffer()\n    return retTable\nend\n\nfunction gl.createRenderbuffer()\n    local retTable = {}\n    retTable.renderbuffer_id = gl._createRenderuffer()\n    return retTable\nend\n\nfunction gl.createFramebuffer( )\n    local retTable = {}\n    retTable.framebuffer_id = gl._createFramebuffer()\n    return retTable\nend\n\nfunction gl.createProgram()\n    local retTable = {}\n    retTable.program_id = gl._createProgram()\n    return retTable\nend\n\nfunction gl.createShader(shaderType)\n    local retTable = {}\n    retTable.shader_id = gl._createShader(shaderType)\n    return retTable\nend\n\n--Delete Fun\nfunction gl.deleteTexture(texture)\n    local texture_id = 0\n    if \"number\" == type(texture) then\n        texture_id = texture\n    elseif \"table\" == type(texture) then\n        texture_id = texture.texture_id\n    end\n    gl._deleteTexture(texture_id)\nend\n\nfunction gl.deleteBuffer(buffer)\n    local buffer_id = 0\n    if \"number\" == type(buffer) then\n        buffer_id = buffer\n    elseif \"table\" == type(buffer) then\n        buffer_id = buffer.buffer_id\n    end\n    gl._deleteBuffer(buffer_id)\nend\n\nfunction gl.deleteRenderbuffer(buffer)\n    local renderbuffer_id = 0\n    if \"number\" == type(buffer) then\n        renderbuffer_id = buffer\n    elseif \"table\" == type(buffer) then\n        renderbuffer_id = buffer.renderbuffer_id\n    end\n    gl._deleteRenderbuffer(renderbuffer_id)\nend\n\nfunction gl.deleteFramebuffer(buffer)\n    local framebuffer_id = 0\n    if \"number\" == type(buffer) then\n        framebuffer_id = buffer\n    elseif \"table\" == type(buffer) then\n        framebuffer_id = buffer.framebuffer_id\n    end\n    gl._deleteFramebuffer(framebuffer_id)\nend\n\nfunction gl.deleteProgram( program )\n    local program_id = 0\n    if \"number\" == type(buffer) then\n        program_id = program\n    elseif \"table\" == type(program) then\n        program_id = program.program_id\n    end\n\n    gl._deleteProgram(program_id)\nend\n\nfunction gl.deleteShader(shader)\n    local shader_id = 0\n    if \"number\" == type(shader) then\n        shader_id = shader\n    elseif \"table\" == type(shader) then\n        shader_id = shader.shader_id\n    end\n\n    gl._deleteShader(shader_id)\nend\n\n--Bind Related\nfunction gl.bindTexture(target, texture)\n    local texture_id = 0\n    if \"number\" == type(texture) then\n        texture_id = texture\n    elseif \"table\" == type(texture) then\n        texture_id = texture.texture_id\n    end\n\n    gl._bindTexture(target,texture_id)\nend\n\nfunction gl.bindBuffer( target,buffer )\n    local buffer_id = 0\n    if \"number\" == type(buffer) then\n        buffer_id = buffer\n    elseif \"table\" == type(buffer) then\n        buffer_id = buffer.buffer_id\n    end\n\n    gl._bindBuffer(target, buffer_id)\nend\n\nfunction gl.bindRenderBuffer(target, buffer)\n    local buffer_id = 0\n\n    if \"number\" == type(buffer) then\n        buffer_id = buffer;\n    elseif \"table\" == type(buffer) then\n        buffer_id = buffer.buffer_id\n    end\n\n    gl._bindRenderbuffer(target, buffer_id)\nend\n\nfunction gl.bindFramebuffer(target, buffer)\n    local buffer_id = 0\n\n    if \"number\" == type(buffer) then\n        buffer_id = buffer\n    elseif \"table\" == type(buffer) then\n        buffer_id = buffer.buffer_id\n    end\n\n    gl._bindFramebuffer(target, buffer_id)\nend\n\n--Uniform related\nfunction gl.getUniform(program, location)\n    local program_id = 0\n    local location_id = 0\n\n    if \"number\" == type(program) then\n        program_id = program\n    else\n        program_id = program.program_id\n    end\n\n    if \"number\" == type(location) then\n        location_id = location\n    else\n        location_id = location.location_id\n    end\n\n    return gl._getUniform(program_id, location_id)\nend\n\n--shader related\nfunction gl.compileShader(shader)\n    gl._compileShader( shader.shader_id)\nend\n\nfunction gl.shaderSource(shader, source)\n    gl._shaderSource(shader.shader_id, source)\nend\n\nfunction gl.getShaderParameter(shader, e)\n    return gl._getShaderParameter(shader.shader_id,e)\nend\n\nfunction gl.getShaderInfoLog( shader )\n    return gl._getShaderInfoLog(shader.shader_id)\nend\n\n--program related\nfunction gl.attachShader( program, shader )\n    local program_id = 0\n\n    if \"number\" == type(program) then\n        program_id = program\n    elseif \"table\" == type(program) then\n        program_id = program.program_id\n    end\n\n    gl._attachShader(program_id, shader.shader_id)\nend\n\nfunction gl.linkProgram( program )\n    local program_id = 0\n\n    if \"number\" == type(program) then\n        program_id = program\n    elseif \"table\" == type(program) then\n        program_id = program.program_id\n    end\n\n    gl._linkProgram(program_id)\nend\n\nfunction gl.getProgramParameter(program, e)\n    local program_id = 0\n\n    if \"number\" == type(program) then\n        program_id = program\n    elseif \"table\" == type(program) then\n        program_id = program.program_id\n    end\n\n    return gl._getProgramParameter(program_id, e)\nend\n\nfunction gl.useProgram(program)\n    local program_id = 0\n    if \"number\" == type(program) then\n        program_id = program\n    elseif \"table\" == type(program) then\n        program_id = program.program_id\n    end\n\n    gl._useProgram (program_id)\nend\n\nfunction gl.getAttribLocation(program, name )\n    local program_id = 0\n\n    if \"number\" == type(program) then\n        program_id = program\n    elseif \"table\" == type(program) then\n        program_id = program.program_id\n    end\n\n    return gl._getAttribLocation(program_id, name)\nend\n\nfunction gl.getUniformLocation( program, name )\n    local program_id = 0\n\n    if \"number\" == type(program) then\n        program_id = program\n    elseif \"table\" == type(program) then\n        program_id = program.program_id\n    end\n\n    return gl._getUniformLocation(program_id,name)\nend\n\nfunction gl.getActiveAttrib( program, index )\n    local program_id = 0\n    if \"number\" == type(program) then\n        program_id = program\n    elseif \"table\" == type(program) then\n        program_id = program.program_id\n    end\n\n    return gl._getActiveAttrib(program_id, index);\nend\n\nfunction gl.getActiveUniform( program, index )\n    local program_id = 0\n\n    if \"number\" == type(program) then\n        program_id = program\n    elseif \"table\" == type(program) then\n        program_id = program.program_id\n    end\n\n    return gl._getActiveUniform(program_id, index)\nend\n\nfunction gl.getAttachedShaders(program)\n    local program_id = 0\n\n    if \"number\" == type(program) then\n        program_id = program\n    elseif \"table\" == type(program) then\n        program_id = program.program_id\n    end\n\n    return gl._getAttachedShaders(program_id)\nend\n\nfunction gl.glNodeCreate()\n    return cc.GLNode:create()\nend\n"
  },
  {
    "path": "源代码/mir9/src/cocos/cocos2d/OpenglConstants.lua",
    "content": "\nif not gl then return end\n\ngl.GCCSO_SHADER_BINARY_FJ   = 0x9260\ngl._3DC_XY_AMD  = 0x87fa\ngl._3DC_X_AMD   = 0x87f9\ngl.ACTIVE_ATTRIBUTES    = 0x8b89\ngl.ACTIVE_ATTRIBUTE_MAX_LENGTH  = 0x8b8a\ngl.ACTIVE_PROGRAM_EXT   = 0x8259\ngl.ACTIVE_TEXTURE   = 0x84e0\ngl.ACTIVE_UNIFORMS  = 0x8b86\ngl.ACTIVE_UNIFORM_MAX_LENGTH    = 0x8b87\ngl.ALIASED_LINE_WIDTH_RANGE = 0x846e\ngl.ALIASED_POINT_SIZE_RANGE = 0x846d\ngl.ALL_COMPLETED_NV = 0x84f2\ngl.ALL_SHADER_BITS_EXT  = 0xffffffff\ngl.ALPHA    = 0x1906\ngl.ALPHA16F_EXT = 0x881c\ngl.ALPHA32F_EXT = 0x8816\ngl.ALPHA8_EXT   = 0x803c\ngl.ALPHA8_OES   = 0x803c\ngl.ALPHA_BITS   = 0xd55\ngl.ALPHA_TEST_FUNC_QCOM = 0xbc1\ngl.ALPHA_TEST_QCOM  = 0xbc0\ngl.ALPHA_TEST_REF_QCOM  = 0xbc2\ngl.ALREADY_SIGNALED_APPLE   = 0x911a\ngl.ALWAYS   = 0x207\ngl.AMD_compressed_3DC_texture   = 0x1\ngl.AMD_compressed_ATC_texture   = 0x1\ngl.AMD_performance_monitor  = 0x1\ngl.AMD_program_binary_Z400  = 0x1\ngl.ANGLE_depth_texture  = 0x1\ngl.ANGLE_framebuffer_blit   = 0x1\ngl.ANGLE_framebuffer_multisample    = 0x1\ngl.ANGLE_instanced_arrays   = 0x1\ngl.ANGLE_pack_reverse_row_order = 0x1\ngl.ANGLE_program_binary = 0x1\ngl.ANGLE_texture_compression_dxt3   = 0x1\ngl.ANGLE_texture_compression_dxt5   = 0x1\ngl.ANGLE_texture_usage  = 0x1\ngl.ANGLE_translated_shader_source   = 0x1\ngl.ANY_SAMPLES_PASSED_CONSERVATIVE_EXT  = 0x8d6a\ngl.ANY_SAMPLES_PASSED_EXT   = 0x8c2f\ngl.APPLE_copy_texture_levels    = 0x1\ngl.APPLE_framebuffer_multisample    = 0x1\ngl.APPLE_rgb_422    = 0x1\ngl.APPLE_sync   = 0x1\ngl.APPLE_texture_format_BGRA8888    = 0x1\ngl.APPLE_texture_max_level  = 0x1\ngl.ARM_mali_program_binary  = 0x1\ngl.ARM_mali_shader_binary   = 0x1\ngl.ARM_rgba8    = 0x1\ngl.ARRAY_BUFFER = 0x8892\ngl.ARRAY_BUFFER_BINDING = 0x8894\ngl.ATC_RGBA_EXPLICIT_ALPHA_AMD  = 0x8c93\ngl.ATC_RGBA_INTERPOLATED_ALPHA_AMD  = 0x87ee\ngl.ATC_RGB_AMD  = 0x8c92\ngl.ATTACHED_SHADERS = 0x8b85\ngl.BACK = 0x405\ngl.BGRA8_EXT    = 0x93a1\ngl.BGRA_EXT = 0x80e1\ngl.BGRA_IMG = 0x80e1\ngl.BINNING_CONTROL_HINT_QCOM    = 0x8fb0\ngl.BLEND    = 0xbe2\ngl.BLEND_COLOR  = 0x8005\ngl.BLEND_DST_ALPHA  = 0x80ca\ngl.BLEND_DST_RGB    = 0x80c8\ngl.BLEND_EQUATION   = 0x8009\ngl.BLEND_EQUATION_ALPHA = 0x883d\ngl.BLEND_EQUATION_RGB   = 0x8009\ngl.BLEND_SRC_ALPHA  = 0x80cb\ngl.BLEND_SRC_RGB    = 0x80c9\ngl.BLUE_BITS    = 0xd54\ngl.BOOL = 0x8b56\ngl.BOOL_VEC2    = 0x8b57\ngl.BOOL_VEC3    = 0x8b58\ngl.BOOL_VEC4    = 0x8b59\ngl.BUFFER   = 0x82e0\ngl.BUFFER_ACCESS_OES    = 0x88bb\ngl.BUFFER_MAPPED_OES    = 0x88bc\ngl.BUFFER_MAP_POINTER_OES   = 0x88bd\ngl.BUFFER_OBJECT_EXT    = 0x9151\ngl.BUFFER_SIZE  = 0x8764\ngl.BUFFER_USAGE = 0x8765\ngl.BYTE = 0x1400\ngl.CCW  = 0x901\ngl.CLAMP_TO_BORDER_NV   = 0x812d\ngl.CLAMP_TO_EDGE    = 0x812f\ngl.COLOR_ATTACHMENT0    = 0x8ce0\ngl.COLOR_ATTACHMENT0_NV = 0x8ce0\ngl.COLOR_ATTACHMENT10_NV    = 0x8cea\ngl.COLOR_ATTACHMENT11_NV    = 0x8ceb\ngl.COLOR_ATTACHMENT12_NV    = 0x8cec\ngl.COLOR_ATTACHMENT13_NV    = 0x8ced\ngl.COLOR_ATTACHMENT14_NV    = 0x8cee\ngl.COLOR_ATTACHMENT15_NV    = 0x8cef\ngl.COLOR_ATTACHMENT1_NV = 0x8ce1\ngl.COLOR_ATTACHMENT2_NV = 0x8ce2\ngl.COLOR_ATTACHMENT3_NV = 0x8ce3\ngl.COLOR_ATTACHMENT4_NV = 0x8ce4\ngl.COLOR_ATTACHMENT5_NV = 0x8ce5\ngl.COLOR_ATTACHMENT6_NV = 0x8ce6\ngl.COLOR_ATTACHMENT7_NV = 0x8ce7\ngl.COLOR_ATTACHMENT8_NV = 0x8ce8\ngl.COLOR_ATTACHMENT9_NV = 0x8ce9\ngl.COLOR_ATTACHMENT_EXT = 0x90f0\ngl.COLOR_BUFFER_BIT = 0x4000\ngl.COLOR_BUFFER_BIT0_QCOM   = 0x1\ngl.COLOR_BUFFER_BIT1_QCOM   = 0x2\ngl.COLOR_BUFFER_BIT2_QCOM   = 0x4\ngl.COLOR_BUFFER_BIT3_QCOM   = 0x8\ngl.COLOR_BUFFER_BIT4_QCOM   = 0x10\ngl.COLOR_BUFFER_BIT5_QCOM   = 0x20\ngl.COLOR_BUFFER_BIT6_QCOM   = 0x40\ngl.COLOR_BUFFER_BIT7_QCOM   = 0x80\ngl.COLOR_CLEAR_VALUE    = 0xc22\ngl.COLOR_EXT    = 0x1800\ngl.COLOR_WRITEMASK  = 0xc23\ngl.COMPARE_REF_TO_TEXTURE_EXT   = 0x884e\ngl.COMPILE_STATUS   = 0x8b81\ngl.COMPRESSED_RGBA_ASTC_10x10_KHR   = 0x93bb\ngl.COMPRESSED_RGBA_ASTC_10x5_KHR    = 0x93b8\ngl.COMPRESSED_RGBA_ASTC_10x6_KHR    = 0x93b9\ngl.COMPRESSED_RGBA_ASTC_10x8_KHR    = 0x93ba\ngl.COMPRESSED_RGBA_ASTC_12x10_KHR   = 0x93bc\ngl.COMPRESSED_RGBA_ASTC_12x12_KHR   = 0x93bd\ngl.COMPRESSED_RGBA_ASTC_4x4_KHR = 0x93b0\ngl.COMPRESSED_RGBA_ASTC_5x4_KHR = 0x93b1\ngl.COMPRESSED_RGBA_ASTC_5x5_KHR = 0x93b2\ngl.COMPRESSED_RGBA_ASTC_6x5_KHR = 0x93b3\ngl.COMPRESSED_RGBA_ASTC_6x6_KHR = 0x93b4\ngl.COMPRESSED_RGBA_ASTC_8x5_KHR = 0x93b5\ngl.COMPRESSED_RGBA_ASTC_8x6_KHR = 0x93b6\ngl.COMPRESSED_RGBA_ASTC_8x8_KHR = 0x93b7\ngl.COMPRESSED_RGBA_PVRTC_2BPPV1_IMG = 0x8c03\ngl.COMPRESSED_RGBA_PVRTC_2BPPV2_IMG = 0x9137\ngl.COMPRESSED_RGBA_PVRTC_4BPPV1_IMG = 0x8c02\ngl.COMPRESSED_RGBA_PVRTC_4BPPV2_IMG = 0x9138\ngl.COMPRESSED_RGBA_S3TC_DXT1_EXT    = 0x83f1\ngl.COMPRESSED_RGBA_S3TC_DXT3_ANGLE  = 0x83f2\ngl.COMPRESSED_RGBA_S3TC_DXT5_ANGLE  = 0x83f3\ngl.COMPRESSED_RGB_PVRTC_2BPPV1_IMG  = 0x8c01\ngl.COMPRESSED_RGB_PVRTC_4BPPV1_IMG  = 0x8c00\ngl.COMPRESSED_RGB_S3TC_DXT1_EXT = 0x83f0\ngl.COMPRESSED_SRGB8_ALPHA8_ASTC_10x10_KHR   = 0x93db\ngl.COMPRESSED_SRGB8_ALPHA8_ASTC_10x5_KHR    = 0x93d8\ngl.COMPRESSED_SRGB8_ALPHA8_ASTC_10x6_KHR    = 0x93d9\ngl.COMPRESSED_SRGB8_ALPHA8_ASTC_10x8_KHR    = 0x93da\ngl.COMPRESSED_SRGB8_ALPHA8_ASTC_12x10_KHR   = 0x93dc\ngl.COMPRESSED_SRGB8_ALPHA8_ASTC_12x12_KHR   = 0x93dd\ngl.COMPRESSED_SRGB8_ALPHA8_ASTC_4x4_KHR = 0x93d0\ngl.COMPRESSED_SRGB8_ALPHA8_ASTC_5x4_KHR = 0x93d1\ngl.COMPRESSED_SRGB8_ALPHA8_ASTC_5x5_KHR = 0x93d2\ngl.COMPRESSED_SRGB8_ALPHA8_ASTC_6x5_KHR = 0x93d3\ngl.COMPRESSED_SRGB8_ALPHA8_ASTC_6x6_KHR = 0x93d4\ngl.COMPRESSED_SRGB8_ALPHA8_ASTC_8x5_KHR = 0x93d5\ngl.COMPRESSED_SRGB8_ALPHA8_ASTC_8x6_KHR = 0x93d6\ngl.COMPRESSED_SRGB8_ALPHA8_ASTC_8x8_KHR = 0x93d7\ngl.COMPRESSED_SRGB_ALPHA_S3TC_DXT1_NV   = 0x8c4d\ngl.COMPRESSED_SRGB_ALPHA_S3TC_DXT3_NV   = 0x8c4e\ngl.COMPRESSED_SRGB_ALPHA_S3TC_DXT5_NV   = 0x8c4f\ngl.COMPRESSED_SRGB_S3TC_DXT1_NV = 0x8c4c\ngl.COMPRESSED_TEXTURE_FORMATS   = 0x86a3\ngl.CONDITION_SATISFIED_APPLE    = 0x911c\ngl.CONSTANT_ALPHA   = 0x8003\ngl.CONSTANT_COLOR   = 0x8001\ngl.CONTEXT_FLAG_DEBUG_BIT   = 0x2\ngl.CONTEXT_ROBUST_ACCESS_EXT    = 0x90f3\ngl.COUNTER_RANGE_AMD    = 0x8bc1\ngl.COUNTER_TYPE_AMD = 0x8bc0\ngl.COVERAGE_ALL_FRAGMENTS_NV    = 0x8ed5\ngl.COVERAGE_ATTACHMENT_NV   = 0x8ed2\ngl.COVERAGE_AUTOMATIC_NV    = 0x8ed7\ngl.COVERAGE_BUFFERS_NV  = 0x8ed3\ngl.COVERAGE_BUFFER_BIT_NV   = 0x8000\ngl.COVERAGE_COMPONENT4_NV   = 0x8ed1\ngl.COVERAGE_COMPONENT_NV    = 0x8ed0\ngl.COVERAGE_EDGE_FRAGMENTS_NV   = 0x8ed6\ngl.COVERAGE_SAMPLES_NV  = 0x8ed4\ngl.CPU_OPTIMIZED_QCOM   = 0x8fb1\ngl.CULL_FACE    = 0xb44\ngl.CULL_FACE_MODE   = 0xb45\ngl.CURRENT_PROGRAM  = 0x8b8d\ngl.CURRENT_QUERY_EXT    = 0x8865\ngl.CURRENT_VERTEX_ATTRIB    = 0x8626\ngl.CW   = 0x900\ngl.DEBUG_CALLBACK_FUNCTION  = 0x8244\ngl.DEBUG_CALLBACK_USER_PARAM    = 0x8245\ngl.DEBUG_GROUP_STACK_DEPTH  = 0x826d\ngl.DEBUG_LOGGED_MESSAGES    = 0x9145\ngl.DEBUG_NEXT_LOGGED_MESSAGE_LENGTH = 0x8243\ngl.DEBUG_OUTPUT = 0x92e0\ngl.DEBUG_OUTPUT_SYNCHRONOUS = 0x8242\ngl.DEBUG_SEVERITY_HIGH  = 0x9146\ngl.DEBUG_SEVERITY_LOW   = 0x9148\ngl.DEBUG_SEVERITY_MEDIUM    = 0x9147\ngl.DEBUG_SEVERITY_NOTIFICATION  = 0x826b\ngl.DEBUG_SOURCE_API = 0x8246\ngl.DEBUG_SOURCE_APPLICATION = 0x824a\ngl.DEBUG_SOURCE_OTHER   = 0x824b\ngl.DEBUG_SOURCE_SHADER_COMPILER = 0x8248\ngl.DEBUG_SOURCE_THIRD_PARTY = 0x8249\ngl.DEBUG_SOURCE_WINDOW_SYSTEM   = 0x8247\ngl.DEBUG_TYPE_DEPRECATED_BEHAVIOR   = 0x824d\ngl.DEBUG_TYPE_ERROR = 0x824c\ngl.DEBUG_TYPE_MARKER    = 0x8268\ngl.DEBUG_TYPE_OTHER = 0x8251\ngl.DEBUG_TYPE_PERFORMANCE   = 0x8250\ngl.DEBUG_TYPE_POP_GROUP = 0x826a\ngl.DEBUG_TYPE_PORTABILITY   = 0x824f\ngl.DEBUG_TYPE_PUSH_GROUP    = 0x8269\ngl.DEBUG_TYPE_UNDEFINED_BEHAVIOR    = 0x824e\ngl.DECR = 0x1e03\ngl.DECR_WRAP    = 0x8508\ngl.DELETE_STATUS    = 0x8b80\ngl.DEPTH24_STENCIL8_OES = 0x88f0\ngl.DEPTH_ATTACHMENT = 0x8d00\ngl.DEPTH_BITS   = 0xd56\ngl.DEPTH_BUFFER_BIT = 0x100\ngl.DEPTH_BUFFER_BIT0_QCOM   = 0x100\ngl.DEPTH_BUFFER_BIT1_QCOM   = 0x200\ngl.DEPTH_BUFFER_BIT2_QCOM   = 0x400\ngl.DEPTH_BUFFER_BIT3_QCOM   = 0x800\ngl.DEPTH_BUFFER_BIT4_QCOM   = 0x1000\ngl.DEPTH_BUFFER_BIT5_QCOM   = 0x2000\ngl.DEPTH_BUFFER_BIT6_QCOM   = 0x4000\ngl.DEPTH_BUFFER_BIT7_QCOM   = 0x8000\ngl.DEPTH_CLEAR_VALUE    = 0xb73\ngl.DEPTH_COMPONENT  = 0x1902\ngl.DEPTH_COMPONENT16    = 0x81a5\ngl.DEPTH_COMPONENT16_NONLINEAR_NV   = 0x8e2c\ngl.DEPTH_COMPONENT16_OES    = 0x81a5\ngl.DEPTH_COMPONENT24_OES    = 0x81a6\ngl.DEPTH_COMPONENT32_OES    = 0x81a7\ngl.DEPTH_EXT    = 0x1801\ngl.DEPTH_FUNC   = 0xb74\ngl.DEPTH_RANGE  = 0xb70\ngl.DEPTH_STENCIL_OES    = 0x84f9\ngl.DEPTH_TEST   = 0xb71\ngl.DEPTH_WRITEMASK  = 0xb72\ngl.DITHER   = 0xbd0\ngl.DMP_shader_binary    = 0x1\ngl.DONT_CARE    = 0x1100\ngl.DRAW_BUFFER0_NV  = 0x8825\ngl.DRAW_BUFFER10_NV = 0x882f\ngl.DRAW_BUFFER11_NV = 0x8830\ngl.DRAW_BUFFER12_NV = 0x8831\ngl.DRAW_BUFFER13_NV = 0x8832\ngl.DRAW_BUFFER14_NV = 0x8833\ngl.DRAW_BUFFER15_NV = 0x8834\ngl.DRAW_BUFFER1_NV  = 0x8826\ngl.DRAW_BUFFER2_NV  = 0x8827\ngl.DRAW_BUFFER3_NV  = 0x8828\ngl.DRAW_BUFFER4_NV  = 0x8829\ngl.DRAW_BUFFER5_NV  = 0x882a\ngl.DRAW_BUFFER6_NV  = 0x882b\ngl.DRAW_BUFFER7_NV  = 0x882c\ngl.DRAW_BUFFER8_NV  = 0x882d\ngl.DRAW_BUFFER9_NV  = 0x882e\ngl.DRAW_BUFFER_EXT  = 0xc01\ngl.DRAW_FRAMEBUFFER_ANGLE   = 0x8ca9\ngl.DRAW_FRAMEBUFFER_APPLE   = 0x8ca9\ngl.DRAW_FRAMEBUFFER_BINDING_ANGLE   = 0x8ca6\ngl.DRAW_FRAMEBUFFER_BINDING_APPLE   = 0x8ca6\ngl.DRAW_FRAMEBUFFER_BINDING_NV  = 0x8ca6\ngl.DRAW_FRAMEBUFFER_NV  = 0x8ca9\ngl.DST_ALPHA    = 0x304\ngl.DST_COLOR    = 0x306\ngl.DYNAMIC_DRAW = 0x88e8\ngl.ELEMENT_ARRAY_BUFFER = 0x8893\ngl.ELEMENT_ARRAY_BUFFER_BINDING = 0x8895\ngl.EQUAL    = 0x202\ngl.ES_VERSION_2_0   = 0x1\ngl.ETC1_RGB8_OES    = 0x8d64\ngl.ETC1_SRGB8_NV    = 0x88ee\ngl.EXTENSIONS   = 0x1f03\ngl.EXT_blend_minmax = 0x1\ngl.EXT_color_buffer_half_float  = 0x1\ngl.EXT_debug_label  = 0x1\ngl.EXT_debug_marker = 0x1\ngl.EXT_discard_framebuffer  = 0x1\ngl.EXT_map_buffer_range = 0x1\ngl.EXT_multi_draw_arrays    = 0x1\ngl.EXT_multisampled_render_to_texture   = 0x1\ngl.EXT_multiview_draw_buffers   = 0x1\ngl.EXT_occlusion_query_boolean  = 0x1\ngl.EXT_read_format_bgra = 0x1\ngl.EXT_robustness   = 0x1\ngl.EXT_sRGB = 0x1\ngl.EXT_separate_shader_objects  = 0x1\ngl.EXT_shader_framebuffer_fetch = 0x1\ngl.EXT_shader_texture_lod   = 0x1\ngl.EXT_shadow_samplers  = 0x1\ngl.EXT_texture_compression_dxt1 = 0x1\ngl.EXT_texture_filter_anisotropic   = 0x1\ngl.EXT_texture_format_BGRA8888  = 0x1\ngl.EXT_texture_rg   = 0x1\ngl.EXT_texture_storage  = 0x1\ngl.EXT_texture_type_2_10_10_10_REV  = 0x1\ngl.EXT_unpack_subimage  = 0x1\ngl.FALSE    = 0x0\ngl.FASTEST  = 0x1101\ngl.FENCE_CONDITION_NV   = 0x84f4\ngl.FENCE_STATUS_NV  = 0x84f3\ngl.FIXED    = 0x140c\ngl.FJ_shader_binary_GCCSO   = 0x1\ngl.FLOAT    = 0x1406\ngl.FLOAT_MAT2   = 0x8b5a\ngl.FLOAT_MAT3   = 0x8b5b\ngl.FLOAT_MAT4   = 0x8b5c\ngl.FLOAT_VEC2   = 0x8b50\ngl.FLOAT_VEC3   = 0x8b51\ngl.FLOAT_VEC4   = 0x8b52\ngl.FRAGMENT_SHADER  = 0x8b30\ngl.FRAGMENT_SHADER_BIT_EXT  = 0x2\ngl.FRAGMENT_SHADER_DERIVATIVE_HINT_OES  = 0x8b8b\ngl.FRAGMENT_SHADER_DISCARDS_SAMPLES_EXT = 0x8a52\ngl.FRAMEBUFFER  = 0x8d40\ngl.FRAMEBUFFER_ATTACHMENT_ANGLE = 0x93a3\ngl.FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING_EXT    = 0x8210\ngl.FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE_EXT    = 0x8211\ngl.FRAMEBUFFER_ATTACHMENT_OBJECT_NAME   = 0x8cd1\ngl.FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE   = 0x8cd0\ngl.FRAMEBUFFER_ATTACHMENT_TEXTURE_3D_ZOFFSET_OES    = 0x8cd4\ngl.FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE = 0x8cd3\ngl.FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL = 0x8cd2\ngl.FRAMEBUFFER_ATTACHMENT_TEXTURE_SAMPLES_EXT   = 0x8d6c\ngl.FRAMEBUFFER_BINDING  = 0x8ca6\ngl.FRAMEBUFFER_COMPLETE = 0x8cd5\ngl.FRAMEBUFFER_INCOMPLETE_ATTACHMENT    = 0x8cd6\ngl.FRAMEBUFFER_INCOMPLETE_DIMENSIONS    = 0x8cd9\ngl.FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT    = 0x8cd7\ngl.FRAMEBUFFER_INCOMPLETE_MULTISAMPLE_ANGLE = 0x8d56\ngl.FRAMEBUFFER_INCOMPLETE_MULTISAMPLE_APPLE = 0x8d56\ngl.FRAMEBUFFER_INCOMPLETE_MULTISAMPLE_EXT   = 0x8d56\ngl.FRAMEBUFFER_INCOMPLETE_MULTISAMPLE_IMG   = 0x9134\ngl.FRAMEBUFFER_INCOMPLETE_MULTISAMPLE_NV    = 0x8d56\ngl.FRAMEBUFFER_UNDEFINED_OES    = 0x8219\ngl.FRAMEBUFFER_UNSUPPORTED  = 0x8cdd\ngl.FRONT    = 0x404\ngl.FRONT_AND_BACK   = 0x408\ngl.FRONT_FACE   = 0xb46\ngl.FUNC_ADD = 0x8006\ngl.FUNC_REVERSE_SUBTRACT    = 0x800b\ngl.FUNC_SUBTRACT    = 0x800a\ngl.GENERATE_MIPMAP_HINT = 0x8192\ngl.GEQUAL   = 0x206\ngl.GPU_OPTIMIZED_QCOM   = 0x8fb2\ngl.GREATER  = 0x204\ngl.GREEN_BITS   = 0xd53\ngl.GUILTY_CONTEXT_RESET_EXT = 0x8253\ngl.HALF_FLOAT_OES   = 0x8d61\ngl.HIGH_FLOAT   = 0x8df2\ngl.HIGH_INT = 0x8df5\ngl.IMG_multisampled_render_to_texture   = 0x1\ngl.IMG_program_binary   = 0x1\ngl.IMG_read_format  = 0x1\ngl.IMG_shader_binary    = 0x1\ngl.IMG_texture_compression_pvrtc    = 0x1\ngl.IMG_texture_compression_pvrtc2   = 0x1\ngl.IMPLEMENTATION_COLOR_READ_FORMAT = 0x8b9b\ngl.IMPLEMENTATION_COLOR_READ_TYPE   = 0x8b9a\ngl.INCR = 0x1e02\ngl.INCR_WRAP    = 0x8507\ngl.INFO_LOG_LENGTH  = 0x8b84\ngl.INNOCENT_CONTEXT_RESET_EXT   = 0x8254\ngl.INT  = 0x1404\ngl.INT_10_10_10_2_OES   = 0x8df7\ngl.INT_VEC2 = 0x8b53\ngl.INT_VEC3 = 0x8b54\ngl.INT_VEC4 = 0x8b55\ngl.INVALID_ENUM = 0x500\ngl.INVALID_FRAMEBUFFER_OPERATION    = 0x506\ngl.INVALID_OPERATION    = 0x502\ngl.INVALID_VALUE    = 0x501\ngl.INVERT   = 0x150a\ngl.KEEP = 0x1e00\ngl.KHR_debug    = 0x1\ngl.KHR_texture_compression_astc_ldr = 0x1\ngl.LEQUAL   = 0x203\ngl.LESS = 0x201\ngl.LINEAR   = 0x2601\ngl.LINEAR_MIPMAP_LINEAR = 0x2703\ngl.LINEAR_MIPMAP_NEAREST    = 0x2701\ngl.LINES    = 0x1\ngl.LINE_LOOP    = 0x2\ngl.LINE_STRIP   = 0x3\ngl.LINE_WIDTH   = 0xb21\ngl.LINK_STATUS  = 0x8b82\ngl.LOSE_CONTEXT_ON_RESET_EXT    = 0x8252\ngl.LOW_FLOAT    = 0x8df0\ngl.LOW_INT  = 0x8df3\ngl.LUMINANCE    = 0x1909\ngl.LUMINANCE16F_EXT = 0x881e\ngl.LUMINANCE32F_EXT = 0x8818\ngl.LUMINANCE4_ALPHA4_OES    = 0x8043\ngl.LUMINANCE8_ALPHA8_EXT    = 0x8045\ngl.LUMINANCE8_ALPHA8_OES    = 0x8045\ngl.LUMINANCE8_EXT   = 0x8040\ngl.LUMINANCE8_OES   = 0x8040\ngl.LUMINANCE_ALPHA  = 0x190a\ngl.LUMINANCE_ALPHA16F_EXT   = 0x881f\ngl.LUMINANCE_ALPHA32F_EXT   = 0x8819\ngl.MALI_PROGRAM_BINARY_ARM  = 0x8f61\ngl.MALI_SHADER_BINARY_ARM   = 0x8f60\ngl.MAP_FLUSH_EXPLICIT_BIT_EXT   = 0x10\ngl.MAP_INVALIDATE_BUFFER_BIT_EXT    = 0x8\ngl.MAP_INVALIDATE_RANGE_BIT_EXT = 0x4\ngl.MAP_READ_BIT_EXT = 0x1\ngl.MAP_UNSYNCHRONIZED_BIT_EXT   = 0x20\ngl.MAP_WRITE_BIT_EXT    = 0x2\ngl.MAX_3D_TEXTURE_SIZE_OES  = 0x8073\ngl.MAX_COLOR_ATTACHMENTS_NV = 0x8cdf\ngl.MAX_COMBINED_TEXTURE_IMAGE_UNITS = 0x8b4d\ngl.MAX_CUBE_MAP_TEXTURE_SIZE    = 0x851c\ngl.MAX_DEBUG_GROUP_STACK_DEPTH  = 0x826c\ngl.MAX_DEBUG_LOGGED_MESSAGES    = 0x9144\ngl.MAX_DEBUG_MESSAGE_LENGTH = 0x9143\ngl.MAX_DRAW_BUFFERS_NV  = 0x8824\ngl.MAX_EXT  = 0x8008\ngl.MAX_FRAGMENT_UNIFORM_VECTORS = 0x8dfd\ngl.MAX_LABEL_LENGTH = 0x82e8\ngl.MAX_MULTIVIEW_BUFFERS_EXT    = 0x90f2\ngl.MAX_RENDERBUFFER_SIZE    = 0x84e8\ngl.MAX_SAMPLES_ANGLE    = 0x8d57\ngl.MAX_SAMPLES_APPLE    = 0x8d57\ngl.MAX_SAMPLES_EXT  = 0x8d57\ngl.MAX_SAMPLES_IMG  = 0x9135\ngl.MAX_SAMPLES_NV   = 0x8d57\ngl.MAX_SERVER_WAIT_TIMEOUT_APPLE    = 0x9111\ngl.MAX_TEXTURE_IMAGE_UNITS  = 0x8872\ngl.MAX_TEXTURE_MAX_ANISOTROPY_EXT   = 0x84ff\ngl.MAX_TEXTURE_SIZE = 0xd33\ngl.MAX_VARYING_VECTORS  = 0x8dfc\ngl.MAX_VERTEX_ATTRIBS   = 0x8869\ngl.MAX_VERTEX_TEXTURE_IMAGE_UNITS   = 0x8b4c\ngl.MAX_VERTEX_UNIFORM_VECTORS   = 0x8dfb\ngl.MAX_VIEWPORT_DIMS    = 0xd3a\ngl.MEDIUM_FLOAT = 0x8df1\ngl.MEDIUM_INT   = 0x8df4\ngl.MIN_EXT  = 0x8007\ngl.MIRRORED_REPEAT  = 0x8370\ngl.MULTISAMPLE_BUFFER_BIT0_QCOM = 0x1000000\ngl.MULTISAMPLE_BUFFER_BIT1_QCOM = 0x2000000\ngl.MULTISAMPLE_BUFFER_BIT2_QCOM = 0x4000000\ngl.MULTISAMPLE_BUFFER_BIT3_QCOM = 0x8000000\ngl.MULTISAMPLE_BUFFER_BIT4_QCOM = 0x10000000\ngl.MULTISAMPLE_BUFFER_BIT5_QCOM = 0x20000000\ngl.MULTISAMPLE_BUFFER_BIT6_QCOM = 0x40000000\ngl.MULTISAMPLE_BUFFER_BIT7_QCOM = 0x80000000\ngl.MULTIVIEW_EXT    = 0x90f1\ngl.NEAREST  = 0x2600\ngl.NEAREST_MIPMAP_LINEAR    = 0x2702\ngl.NEAREST_MIPMAP_NEAREST   = 0x2700\ngl.NEVER    = 0x200\ngl.NICEST   = 0x1102\ngl.NONE = 0x0\ngl.NOTEQUAL = 0x205\ngl.NO_ERROR = 0x0\ngl.NO_RESET_NOTIFICATION_EXT    = 0x8261\ngl.NUM_COMPRESSED_TEXTURE_FORMATS   = 0x86a2\ngl.NUM_PROGRAM_BINARY_FORMATS_OES   = 0x87fe\ngl.NUM_SHADER_BINARY_FORMATS    = 0x8df9\ngl.NV_coverage_sample   = 0x1\ngl.NV_depth_nonlinear   = 0x1\ngl.NV_draw_buffers  = 0x1\ngl.NV_draw_instanced    = 0x1\ngl.NV_fbo_color_attachments = 0x1\ngl.NV_fence = 0x1\ngl.NV_framebuffer_blit  = 0x1\ngl.NV_framebuffer_multisample   = 0x1\ngl.NV_generate_mipmap_sRGB  = 0x1\ngl.NV_instanced_arrays  = 0x1\ngl.NV_read_buffer   = 0x1\ngl.NV_read_buffer_front = 0x1\ngl.NV_read_depth    = 0x1\ngl.NV_read_depth_stencil    = 0x1\ngl.NV_read_stencil  = 0x1\ngl.NV_sRGB_formats  = 0x1\ngl.NV_shadow_samplers_array = 0x1\ngl.NV_shadow_samplers_cube  = 0x1\ngl.NV_texture_border_clamp  = 0x1\ngl.NV_texture_compression_s3tc_update   = 0x1\ngl.NV_texture_npot_2D_mipmap    = 0x1\ngl.OBJECT_TYPE_APPLE    = 0x9112\ngl.OES_EGL_image    = 0x1\ngl.OES_EGL_image_external   = 0x1\ngl.OES_compressed_ETC1_RGB8_texture = 0x1\ngl.OES_compressed_paletted_texture  = 0x1\ngl.OES_depth24  = 0x1\ngl.OES_depth32  = 0x1\ngl.OES_depth_texture    = 0x1\ngl.OES_element_index_uint   = 0x1\ngl.OES_fbo_render_mipmap    = 0x1\ngl.OES_fragment_precision_high  = 0x1\ngl.OES_get_program_binary   = 0x1\ngl.OES_mapbuffer    = 0x1\ngl.OES_packed_depth_stencil = 0x1\ngl.OES_required_internalformat  = 0x1\ngl.OES_rgb8_rgba8   = 0x1\ngl.OES_standard_derivatives = 0x1\ngl.OES_stencil1 = 0x1\ngl.OES_stencil4 = 0x1\ngl.OES_surfaceless_context  = 0x1\ngl.OES_texture_3D   = 0x1\ngl.OES_texture_float    = 0x1\ngl.OES_texture_float_linear = 0x1\ngl.OES_texture_half_float   = 0x1\ngl.OES_texture_half_float_linear    = 0x1\ngl.OES_texture_npot = 0x1\ngl.OES_vertex_array_object  = 0x1\ngl.OES_vertex_half_float    = 0x1\ngl.OES_vertex_type_10_10_10_2   = 0x1\ngl.ONE  = 0x1\ngl.ONE_MINUS_CONSTANT_ALPHA = 0x8004\ngl.ONE_MINUS_CONSTANT_COLOR = 0x8002\ngl.ONE_MINUS_DST_ALPHA  = 0x305\ngl.ONE_MINUS_DST_COLOR  = 0x307\ngl.ONE_MINUS_SRC_ALPHA  = 0x303\ngl.ONE_MINUS_SRC_COLOR  = 0x301\ngl.OUT_OF_MEMORY    = 0x505\ngl.PACK_ALIGNMENT   = 0xd05\ngl.PACK_REVERSE_ROW_ORDER_ANGLE = 0x93a4\ngl.PALETTE4_R5_G6_B5_OES    = 0x8b92\ngl.PALETTE4_RGB5_A1_OES = 0x8b94\ngl.PALETTE4_RGB8_OES    = 0x8b90\ngl.PALETTE4_RGBA4_OES   = 0x8b93\ngl.PALETTE4_RGBA8_OES   = 0x8b91\ngl.PALETTE8_R5_G6_B5_OES    = 0x8b97\ngl.PALETTE8_RGB5_A1_OES = 0x8b99\ngl.PALETTE8_RGB8_OES    = 0x8b95\ngl.PALETTE8_RGBA4_OES   = 0x8b98\ngl.PALETTE8_RGBA8_OES   = 0x8b96\ngl.PERCENTAGE_AMD   = 0x8bc3\ngl.PERFMON_GLOBAL_MODE_QCOM = 0x8fa0\ngl.PERFMON_RESULT_AMD   = 0x8bc6\ngl.PERFMON_RESULT_AVAILABLE_AMD = 0x8bc4\ngl.PERFMON_RESULT_SIZE_AMD  = 0x8bc5\ngl.POINTS   = 0x0\ngl.POLYGON_OFFSET_FACTOR    = 0x8038\ngl.POLYGON_OFFSET_FILL  = 0x8037\ngl.POLYGON_OFFSET_UNITS = 0x2a00\ngl.PROGRAM  = 0x82e2\ngl.PROGRAM_BINARY_ANGLE = 0x93a6\ngl.PROGRAM_BINARY_FORMATS_OES   = 0x87ff\ngl.PROGRAM_BINARY_LENGTH_OES    = 0x8741\ngl.PROGRAM_OBJECT_EXT   = 0x8b40\ngl.PROGRAM_PIPELINE_BINDING_EXT = 0x825a\ngl.PROGRAM_PIPELINE_OBJECT_EXT  = 0x8a4f\ngl.PROGRAM_SEPARABLE_EXT    = 0x8258\ngl.QCOM_alpha_test  = 0x1\ngl.QCOM_binning_control = 0x1\ngl.QCOM_driver_control  = 0x1\ngl.QCOM_extended_get    = 0x1\ngl.QCOM_extended_get2   = 0x1\ngl.QCOM_perfmon_global_mode = 0x1\ngl.QCOM_tiled_rendering = 0x1\ngl.QCOM_writeonly_rendering = 0x1\ngl.QUERY    = 0x82e3\ngl.QUERY_OBJECT_EXT = 0x9153\ngl.QUERY_RESULT_AVAILABLE_EXT   = 0x8867\ngl.QUERY_RESULT_EXT = 0x8866\ngl.R16F_EXT = 0x822d\ngl.R32F_EXT = 0x822e\ngl.R8_EXT   = 0x8229\ngl.READ_BUFFER_EXT  = 0xc02\ngl.READ_BUFFER_NV   = 0xc02\ngl.READ_FRAMEBUFFER_ANGLE   = 0x8ca8\ngl.READ_FRAMEBUFFER_APPLE   = 0x8ca8\ngl.READ_FRAMEBUFFER_BINDING_ANGLE   = 0x8caa\ngl.READ_FRAMEBUFFER_BINDING_APPLE   = 0x8caa\ngl.READ_FRAMEBUFFER_BINDING_NV  = 0x8caa\ngl.READ_FRAMEBUFFER_NV  = 0x8ca8\ngl.RED_BITS = 0xd52\ngl.RED_EXT  = 0x1903\ngl.RENDERBUFFER = 0x8d41\ngl.RENDERBUFFER_ALPHA_SIZE  = 0x8d53\ngl.RENDERBUFFER_BINDING = 0x8ca7\ngl.RENDERBUFFER_BLUE_SIZE   = 0x8d52\ngl.RENDERBUFFER_DEPTH_SIZE  = 0x8d54\ngl.RENDERBUFFER_GREEN_SIZE  = 0x8d51\ngl.RENDERBUFFER_HEIGHT  = 0x8d43\ngl.RENDERBUFFER_INTERNAL_FORMAT = 0x8d44\ngl.RENDERBUFFER_RED_SIZE    = 0x8d50\ngl.RENDERBUFFER_SAMPLES_ANGLE   = 0x8cab\ngl.RENDERBUFFER_SAMPLES_APPLE   = 0x8cab\ngl.RENDERBUFFER_SAMPLES_EXT = 0x8cab\ngl.RENDERBUFFER_SAMPLES_IMG = 0x9133\ngl.RENDERBUFFER_SAMPLES_NV  = 0x8cab\ngl.RENDERBUFFER_STENCIL_SIZE    = 0x8d55\ngl.RENDERBUFFER_WIDTH   = 0x8d42\ngl.RENDERER = 0x1f01\ngl.RENDER_DIRECT_TO_FRAMEBUFFER_QCOM    = 0x8fb3\ngl.REPEAT   = 0x2901\ngl.REPLACE  = 0x1e01\ngl.REQUIRED_TEXTURE_IMAGE_UNITS_OES = 0x8d68\ngl.RESET_NOTIFICATION_STRATEGY_EXT  = 0x8256\ngl.RG16F_EXT    = 0x822f\ngl.RG32F_EXT    = 0x8230\ngl.RG8_EXT  = 0x822b\ngl.RGB  = 0x1907\ngl.RGB10_A2_EXT = 0x8059\ngl.RGB10_EXT    = 0x8052\ngl.RGB16F_EXT   = 0x881b\ngl.RGB32F_EXT   = 0x8815\ngl.RGB565   = 0x8d62\ngl.RGB565_OES   = 0x8d62\ngl.RGB5_A1  = 0x8057\ngl.RGB5_A1_OES  = 0x8057\ngl.RGB8_OES = 0x8051\ngl.RGBA = 0x1908\ngl.RGBA16F_EXT  = 0x881a\ngl.RGBA32F_EXT  = 0x8814\ngl.RGBA4    = 0x8056\ngl.RGBA4_OES    = 0x8056\ngl.RGBA8_OES    = 0x8058\ngl.RGB_422_APPLE    = 0x8a1f\ngl.RG_EXT   = 0x8227\ngl.SAMPLER  = 0x82e6\ngl.SAMPLER_2D   = 0x8b5e\ngl.SAMPLER_2D_ARRAY_SHADOW_NV   = 0x8dc4\ngl.SAMPLER_2D_SHADOW_EXT    = 0x8b62\ngl.SAMPLER_3D_OES   = 0x8b5f\ngl.SAMPLER_CUBE = 0x8b60\ngl.SAMPLER_CUBE_SHADOW_NV   = 0x8dc5\ngl.SAMPLER_EXTERNAL_OES = 0x8d66\ngl.SAMPLES  = 0x80a9\ngl.SAMPLE_ALPHA_TO_COVERAGE = 0x809e\ngl.SAMPLE_BUFFERS   = 0x80a8\ngl.SAMPLE_COVERAGE  = 0x80a0\ngl.SAMPLE_COVERAGE_INVERT   = 0x80ab\ngl.SAMPLE_COVERAGE_VALUE    = 0x80aa\ngl.SCISSOR_BOX  = 0xc10\ngl.SCISSOR_TEST = 0xc11\ngl.SGX_BINARY_IMG   = 0x8c0a\ngl.SGX_PROGRAM_BINARY_IMG   = 0x9130\ngl.SHADER   = 0x82e1\ngl.SHADER_BINARY_DMP    = 0x9250\ngl.SHADER_BINARY_FORMATS    = 0x8df8\ngl.SHADER_BINARY_VIV    = 0x8fc4\ngl.SHADER_COMPILER  = 0x8dfa\ngl.SHADER_OBJECT_EXT    = 0x8b48\ngl.SHADER_SOURCE_LENGTH = 0x8b88\ngl.SHADER_TYPE  = 0x8b4f\ngl.SHADING_LANGUAGE_VERSION = 0x8b8c\ngl.SHORT    = 0x1402\ngl.SIGNALED_APPLE   = 0x9119\ngl.SLUMINANCE8_ALPHA8_NV    = 0x8c45\ngl.SLUMINANCE8_NV   = 0x8c47\ngl.SLUMINANCE_ALPHA_NV  = 0x8c44\ngl.SLUMINANCE_NV    = 0x8c46\ngl.SRC_ALPHA    = 0x302\ngl.SRC_ALPHA_SATURATE   = 0x308\ngl.SRC_COLOR    = 0x300\ngl.SRGB8_ALPHA8_EXT = 0x8c43\ngl.SRGB8_NV = 0x8c41\ngl.SRGB_ALPHA_EXT   = 0x8c42\ngl.SRGB_EXT = 0x8c40\ngl.STACK_OVERFLOW   = 0x503\ngl.STACK_UNDERFLOW  = 0x504\ngl.STATE_RESTORE    = 0x8bdc\ngl.STATIC_DRAW  = 0x88e4\ngl.STENCIL_ATTACHMENT   = 0x8d20\ngl.STENCIL_BACK_FAIL    = 0x8801\ngl.STENCIL_BACK_FUNC    = 0x8800\ngl.STENCIL_BACK_PASS_DEPTH_FAIL = 0x8802\ngl.STENCIL_BACK_PASS_DEPTH_PASS = 0x8803\ngl.STENCIL_BACK_REF = 0x8ca3\ngl.STENCIL_BACK_VALUE_MASK  = 0x8ca4\ngl.STENCIL_BACK_WRITEMASK   = 0x8ca5\ngl.STENCIL_BITS = 0xd57\ngl.STENCIL_BUFFER_BIT   = 0x400\ngl.STENCIL_BUFFER_BIT0_QCOM = 0x10000\ngl.STENCIL_BUFFER_BIT1_QCOM = 0x20000\ngl.STENCIL_BUFFER_BIT2_QCOM = 0x40000\ngl.STENCIL_BUFFER_BIT3_QCOM = 0x80000\ngl.STENCIL_BUFFER_BIT4_QCOM = 0x100000\ngl.STENCIL_BUFFER_BIT5_QCOM = 0x200000\ngl.STENCIL_BUFFER_BIT6_QCOM = 0x400000\ngl.STENCIL_BUFFER_BIT7_QCOM = 0x800000\ngl.STENCIL_CLEAR_VALUE  = 0xb91\ngl.STENCIL_EXT  = 0x1802\ngl.STENCIL_FAIL = 0xb94\ngl.STENCIL_FUNC = 0xb92\ngl.STENCIL_INDEX1_OES   = 0x8d46\ngl.STENCIL_INDEX4_OES   = 0x8d47\ngl.STENCIL_INDEX8   = 0x8d48\ngl.STENCIL_PASS_DEPTH_FAIL  = 0xb95\ngl.STENCIL_PASS_DEPTH_PASS  = 0xb96\ngl.STENCIL_REF  = 0xb97\ngl.STENCIL_TEST = 0xb90\ngl.STENCIL_VALUE_MASK   = 0xb93\ngl.STENCIL_WRITEMASK    = 0xb98\ngl.STREAM_DRAW  = 0x88e0\ngl.SUBPIXEL_BITS    = 0xd50\ngl.SYNC_CONDITION_APPLE = 0x9113\ngl.SYNC_FENCE_APPLE = 0x9116\ngl.SYNC_FLAGS_APPLE = 0x9115\ngl.SYNC_FLUSH_COMMANDS_BIT_APPLE    = 0x1\ngl.SYNC_GPU_COMMANDS_COMPLETE_APPLE = 0x9117\ngl.SYNC_OBJECT_APPLE    = 0x8a53\ngl.SYNC_STATUS_APPLE    = 0x9114\ngl.TEXTURE  = 0x1702\ngl.TEXTURE0 = 0x84c0\ngl.TEXTURE1 = 0x84c1\ngl.TEXTURE10    = 0x84ca\ngl.TEXTURE11    = 0x84cb\ngl.TEXTURE12    = 0x84cc\ngl.TEXTURE13    = 0x84cd\ngl.TEXTURE14    = 0x84ce\ngl.TEXTURE15    = 0x84cf\ngl.TEXTURE16    = 0x84d0\ngl.TEXTURE17    = 0x84d1\ngl.TEXTURE18    = 0x84d2\ngl.TEXTURE19    = 0x84d3\ngl.TEXTURE2 = 0x84c2\ngl.TEXTURE20    = 0x84d4\ngl.TEXTURE21    = 0x84d5\ngl.TEXTURE22    = 0x84d6\ngl.TEXTURE23    = 0x84d7\ngl.TEXTURE24    = 0x84d8\ngl.TEXTURE25    = 0x84d9\ngl.TEXTURE26    = 0x84da\ngl.TEXTURE27    = 0x84db\ngl.TEXTURE28    = 0x84dc\ngl.TEXTURE29    = 0x84dd\ngl.TEXTURE3 = 0x84c3\ngl.TEXTURE30    = 0x84de\ngl.TEXTURE31    = 0x84df\ngl.TEXTURE4 = 0x84c4\ngl.TEXTURE5 = 0x84c5\ngl.TEXTURE6 = 0x84c6\ngl.TEXTURE7 = 0x84c7\ngl.TEXTURE8 = 0x84c8\ngl.TEXTURE9 = 0x84c9\ngl.TEXTURE_2D   = 0xde1\ngl.TEXTURE_3D_OES   = 0x806f\ngl.TEXTURE_BINDING_2D   = 0x8069\ngl.TEXTURE_BINDING_3D_OES   = 0x806a\ngl.TEXTURE_BINDING_CUBE_MAP = 0x8514\ngl.TEXTURE_BINDING_EXTERNAL_OES = 0x8d67\ngl.TEXTURE_BORDER_COLOR_NV  = 0x1004\ngl.TEXTURE_COMPARE_FUNC_EXT = 0x884d\ngl.TEXTURE_COMPARE_MODE_EXT = 0x884c\ngl.TEXTURE_CUBE_MAP = 0x8513\ngl.TEXTURE_CUBE_MAP_NEGATIVE_X  = 0x8516\ngl.TEXTURE_CUBE_MAP_NEGATIVE_Y  = 0x8518\ngl.TEXTURE_CUBE_MAP_NEGATIVE_Z  = 0x851a\ngl.TEXTURE_CUBE_MAP_POSITIVE_X  = 0x8515\ngl.TEXTURE_CUBE_MAP_POSITIVE_Y  = 0x8517\ngl.TEXTURE_CUBE_MAP_POSITIVE_Z  = 0x8519\ngl.TEXTURE_DEPTH_QCOM   = 0x8bd4\ngl.TEXTURE_EXTERNAL_OES = 0x8d65\ngl.TEXTURE_FORMAT_QCOM  = 0x8bd6\ngl.TEXTURE_HEIGHT_QCOM  = 0x8bd3\ngl.TEXTURE_IMAGE_VALID_QCOM = 0x8bd8\ngl.TEXTURE_IMMUTABLE_FORMAT_EXT = 0x912f\ngl.TEXTURE_INTERNAL_FORMAT_QCOM = 0x8bd5\ngl.TEXTURE_MAG_FILTER   = 0x2800\ngl.TEXTURE_MAX_ANISOTROPY_EXT   = 0x84fe\ngl.TEXTURE_MAX_LEVEL_APPLE  = 0x813d\ngl.TEXTURE_MIN_FILTER   = 0x2801\ngl.TEXTURE_NUM_LEVELS_QCOM  = 0x8bd9\ngl.TEXTURE_OBJECT_VALID_QCOM    = 0x8bdb\ngl.TEXTURE_SAMPLES_IMG  = 0x9136\ngl.TEXTURE_TARGET_QCOM  = 0x8bda\ngl.TEXTURE_TYPE_QCOM    = 0x8bd7\ngl.TEXTURE_USAGE_ANGLE  = 0x93a2\ngl.TEXTURE_WIDTH_QCOM   = 0x8bd2\ngl.TEXTURE_WRAP_R_OES   = 0x8072\ngl.TEXTURE_WRAP_S   = 0x2802\ngl.TEXTURE_WRAP_T   = 0x2803\ngl.TIMEOUT_EXPIRED_APPLE    = 0x911b\ngl.TIMEOUT_IGNORED_APPLE    = 0xffffffffffffffff\ngl.TRANSLATED_SHADER_SOURCE_LENGTH_ANGLE    = 0x93a0\ngl.TRIANGLES    = 0x4\ngl.TRIANGLE_FAN = 0x6\ngl.TRIANGLE_STRIP   = 0x5\ngl.TRUE = 0x1\ngl.UNKNOWN_CONTEXT_RESET_EXT    = 0x8255\ngl.UNPACK_ALIGNMENT = 0xcf5\ngl.UNPACK_ROW_LENGTH    = 0xcf2\ngl.UNPACK_SKIP_PIXELS   = 0xcf4\ngl.UNPACK_SKIP_ROWS = 0xcf3\ngl.UNSIGNALED_APPLE = 0x9118\ngl.UNSIGNED_BYTE    = 0x1401\ngl.UNSIGNED_INT = 0x1405\ngl.UNSIGNED_INT64_AMD   = 0x8bc2\ngl.UNSIGNED_INT_10_10_10_2_OES  = 0x8df6\ngl.UNSIGNED_INT_24_8_OES    = 0x84fa\ngl.UNSIGNED_INT_2_10_10_10_REV_EXT  = 0x8368\ngl.UNSIGNED_NORMALIZED_EXT  = 0x8c17\ngl.UNSIGNED_SHORT   = 0x1403\ngl.UNSIGNED_SHORT_1_5_5_5_REV_EXT   = 0x8366\ngl.UNSIGNED_SHORT_4_4_4_4   = 0x8033\ngl.UNSIGNED_SHORT_4_4_4_4_REV_EXT   = 0x8365\ngl.UNSIGNED_SHORT_4_4_4_4_REV_IMG   = 0x8365\ngl.UNSIGNED_SHORT_5_5_5_1   = 0x8034\ngl.UNSIGNED_SHORT_5_6_5 = 0x8363\ngl.UNSIGNED_SHORT_8_8_APPLE = 0x85ba\ngl.UNSIGNED_SHORT_8_8_REV_APPLE = 0x85bb\ngl.VALIDATE_STATUS  = 0x8b83\ngl.VENDOR   = 0x1f00\ngl.VERSION  = 0x1f02\ngl.VERTEX_ARRAY_BINDING_OES = 0x85b5\ngl.VERTEX_ARRAY_OBJECT_EXT  = 0x9154\ngl.VERTEX_ATTRIB_ARRAY_BUFFER_BINDING   = 0x889f\ngl.VERTEX_ATTRIB_ARRAY_DIVISOR_ANGLE    = 0x88fe\ngl.VERTEX_ATTRIB_ARRAY_DIVISOR_NV   = 0x88fe\ngl.VERTEX_ATTRIB_ARRAY_ENABLED  = 0x8622\ngl.VERTEX_ATTRIB_ARRAY_NORMALIZED   = 0x886a\ngl.VERTEX_ATTRIB_ARRAY_POINTER  = 0x8645\ngl.VERTEX_ATTRIB_ARRAY_SIZE = 0x8623\ngl.VERTEX_ATTRIB_ARRAY_STRIDE   = 0x8624\ngl.VERTEX_ATTRIB_ARRAY_TYPE = 0x8625\ngl.VERTEX_SHADER    = 0x8b31\ngl.VERTEX_SHADER_BIT_EXT    = 0x1\ngl.VIEWPORT = 0xba2\ngl.VIV_shader_binary    = 0x1\ngl.WAIT_FAILED_APPLE    = 0x911d\ngl.WRITEONLY_RENDERING_QCOM = 0x8823\ngl.WRITE_ONLY_OES   = 0x88b9\ngl.Z400_BINARY_AMD  = 0x8740\ngl.ZERO = 0x0\ngl.VERTEX_ATTRIB_POINTER_VEC3    = 0\ngl.VERTEX_ATTRIB_POINTER_COLOR4B = 1\n"
  },
  {
    "path": "源代码/mir9/src/cocos/cocos2d/bitExtend.lua",
    "content": "-- bit operation\n\nbit = bit or {}\nbit.data32 = {}\n\nfor i=1,32 do\n    bit.data32[i]=2^(32-i)\nend\n\nfunction bit._b2d(arg)\n    local nr=0\n    for i=1,32 do\n        if arg[i] ==1 then\n            nr=nr+bit.data32[i]\n        end\n    end\n    return  nr\nend\n\nfunction bit._d2b(arg)\n    arg = arg >= 0 and arg or (0xFFFFFFFF + arg + 1)\n    local tr={}\n    for i=1,32 do\n        if arg >= bit.data32[i] then\n            tr[i]=1\n            arg=arg-bit.data32[i]\n        else\n            tr[i]=0\n        end\n    end\n    return   tr\nend\n\nfunction    bit._and(a,b)\n    local op1=bit._d2b(a)\n    local op2=bit._d2b(b)\n    local r={}\n\n    for i=1,32 do\n        if op1[i]==1 and op2[i]==1  then\n            r[i]=1\n        else\n            r[i]=0\n        end\n    end\n    return  bit._b2d(r)\n\nend\n\nfunction    bit._rshift(a,n)\n    local op1=bit._d2b(a)\n    n = n <= 32 and n or 32\n    n = n >= 0 and n or 0\n\n    for i=32, n+1, -1 do\n        op1[i] = op1[i-n]\n    end\n    for i=1, n do\n        op1[i] = 0\n    end\n\n    return  bit._b2d(op1)\nend\n\nfunction bit._not(a)\n    local op1=bit._d2b(a)\n    local r={}\n\n    for i=1,32 do\n        if  op1[i]==1   then\n            r[i]=0\n        else\n            r[i]=1\n        end\n    end\n    return bit._b2d(r)\nend\n\nfunction bit._or(a,b)\n    local op1=bit._d2b(a)\n    local op2=bit._d2b(b)\n    local r={}\n\n    for i=1,32 do\n        if op1[i]==1 or op2[i]==1  then\n            r[i]=1\n        else\n            r[i]=0\n        end\n    end\n    return bit._b2d(r)\nend\n\nbit.band   = bit.band or bit._and\nbit.rshift = bit.rshift or bit._rshift\nbit.bnot   = bit.bnot or bit._not\n"
  },
  {
    "path": "源代码/mir9/src/cocos/cocos2d/extern.lua",
    "content": "\nfunction clone(object)\n    local lookup_table = {}\n    local function _copy(object)\n        if type(object) ~= \"table\" then\n            return object\n        elseif lookup_table[object] then\n            return lookup_table[object]\n        end\n        local new_table = {}\n        lookup_table[object] = new_table\n        for key, value in pairs(object) do\n            new_table[_copy(key)] = _copy(value)\n        end\n        return setmetatable(new_table, getmetatable(object))\n    end\n    return _copy(object)\nend\n\n--Create an class.\nfunction class(classname, super)\n    local superType = type(super)\n    local cls\n\n    if superType ~= \"function\" and superType ~= \"table\" then\n        superType = nil\n        super = nil\n    end\n\n    if superType == \"function\" or (super and super.__ctype == 1) then\n        -- inherited from native C++ Object\n        cls = {}\n\n        if superType == \"table\" then\n            -- copy fields from super\n            for k,v in pairs(super) do cls[k] = v end\n            cls.__create = super.__create\n            cls.super    = super\n        else\n            cls.__create = super\n        end\n\n        cls.ctor    = function() end\n        cls.__cname = classname\n        cls.__ctype = 1\n\n        function cls.new(...)\n            local instance = cls.__create(...)\n            -- copy fields from class to native object\n            for k,v in pairs(cls) do instance[k] = v end\n            instance.class = cls\n            instance:ctor(...)\n            return instance\n        end\n\n    else\n        -- inherited from Lua Object\n        if super then\n            cls = clone(super)\n            cls.super = super\n        else\n            cls = {ctor = function() end}\n        end\n\n        cls.__cname = classname\n        cls.__ctype = 2 -- lua\n        cls.__index = cls\n\n        function cls.new(...)\n            local instance = setmetatable({}, cls)\n            instance.class = cls\n            instance:ctor(...)\n            return instance\n        end\n    end\n\n    return cls\nend\n\nfunction schedule(node, callback, delay)\n    local delay = cc.DelayTime:create(delay)\n    local sequence = cc.Sequence:create(delay, cc.CallFunc:create(callback))\n    local action = cc.RepeatForever:create(sequence)\n    node:runAction(action)\n    return action\nend\n\nfunction performWithDelay(node, callback, delay)\n    local delay = cc.DelayTime:create(delay)\n    local sequence = cc.Sequence:create(delay, cc.CallFunc:create(callback))\n    node:runAction(sequence)\n    return sequence\nend\n"
  },
  {
    "path": "源代码/mir9/src/cocos/cocos2d/json.lua",
    "content": "-----------------------------------------------------------------------------\n-- JSON4Lua: JSON encoding / decoding support for the Lua language.\n-- json Module.\n-- Author: Craig Mason-Jones\n-- Homepage: http://json.luaforge.net/\n-- Version: 0.9.40\n-- This module is released under the MIT License (MIT).\n-- Please see LICENCE.txt for details.\n--\n-- USAGE:\n-- This module exposes two functions:\n--   encode(o)\n--     Returns the table / string / boolean / number / nil / json.null value as a JSON-encoded string.\n--   decode(json_string)\n--     Returns a Lua object populated with the data encoded in the JSON string json_string.\n--\n-- REQUIREMENTS:\n--   compat-5.1 if using Lua 5.0\n--\n-- CHANGELOG\n--   0.9.20 Introduction of local Lua functions for private functions (removed _ function prefix).\n--          Fixed Lua 5.1 compatibility issues.\n--   \t\tIntroduced json.null to have null values in associative arrays.\n--          encode() performance improvement (more than 50%) through table.concat rather than ..\n--          Introduced decode ability to ignore /**/ comments in the JSON string.\n--   0.9.10 Fix to array encoding / decoding to correctly manage nil/null values in arrays.\n-----------------------------------------------------------------------------\n\n-----------------------------------------------------------------------------\n-- Imports and dependencies\n-----------------------------------------------------------------------------\nlocal math = require('math')\nlocal string = require(\"string\")\nlocal table = require(\"table\")\n\nlocal base = _G\n\n-----------------------------------------------------------------------------\n-- Module declaration\n-----------------------------------------------------------------------------\nmodule(\"json\")\n\n-- Public functions\n\n-- Private functions\nlocal decode_scanArray\nlocal decode_scanComment\nlocal decode_scanConstant\nlocal decode_scanNumber\nlocal decode_scanObject\nlocal decode_scanString\nlocal decode_scanWhitespace\nlocal encodeString\nlocal isArray\nlocal isEncodable\n\n-----------------------------------------------------------------------------\n-- PUBLIC FUNCTIONS\n-----------------------------------------------------------------------------\n--- Encodes an arbitrary Lua object / variable.\n-- @param v The Lua object / variable to be JSON encoded.\n-- @return String containing the JSON encoding in internal Lua string format (i.e. not unicode)\nfunction encode (v)\n  -- Handle nil values\n  if v==nil then\n    return \"null\"\n  end\n\n  local vtype = base.type(v)\n\n  -- Handle strings\n  if vtype=='string' then\n    return '\"' .. encodeString(v) .. '\"'\t    -- Need to handle encoding in string\n  end\n\n  -- Handle booleans\n  if vtype=='number' or vtype=='boolean' then\n    return base.tostring(v)\n  end\n\n  -- Handle tables\n  if vtype=='table' then\n    local rval = {}\n    -- Consider arrays separately\n    local bArray, maxCount = isArray(v)\n    if bArray then\n      for i = 1,maxCount do\n        table.insert(rval, encode(v[i]))\n      end\n    else\t-- An object, not an array\n      for i,j in base.pairs(v) do\n        if isEncodable(i) and isEncodable(j) then\n          table.insert(rval, '\"' .. encodeString(i) .. '\":' .. encode(j))\n        end\n      end\n    end\n    if bArray then\n      return '[' .. table.concat(rval,',') ..']'\n    else\n      return '{' .. table.concat(rval,',') .. '}'\n    end\n  end\n\n  -- Handle null values\n  if vtype=='function' and v==null then\n    return 'null'\n  end\n\n  base.assert(false,'encode attempt to encode unsupported type ' .. vtype .. ':' .. base.tostring(v))\nend\n\n\n--- Decodes a JSON string and returns the decoded value as a Lua data structure / value.\n-- @param s The string to scan.\n-- @param [startPos] Optional starting position where the JSON string is located. Defaults to 1.\n-- @param Lua object, number The object that was scanned, as a Lua table / string / number / boolean or nil,\n-- and the position of the first character after\n-- the scanned JSON object.\nfunction decode(s, startPos)\n  startPos = startPos and startPos or 1\n  startPos = decode_scanWhitespace(s,startPos)\n  base.assert(startPos<=string.len(s), 'Unterminated JSON encoded object found at position in [' .. s .. ']')\n  local curChar = string.sub(s,startPos,startPos)\n  -- Object\n  if curChar=='{' then\n    return decode_scanObject(s,startPos)\n  end\n  -- Array\n  if curChar=='[' then\n    return decode_scanArray(s,startPos)\n  end\n  -- Number\n  if string.find(\"+-0123456789.e\", curChar, 1, true) then\n    return decode_scanNumber(s,startPos)\n  end\n  -- String\n  if curChar==[[\"]] or curChar==[[']] then\n    return decode_scanString(s,startPos)\n  end\n  if string.sub(s,startPos,startPos+1)=='/*' then\n    return decode(s, decode_scanComment(s,startPos))\n  end\n  -- Otherwise, it must be a constant\n  return decode_scanConstant(s,startPos)\nend\n\n--- The null function allows one to specify a null value in an associative array (which is otherwise\n-- discarded if you set the value with 'nil' in Lua. Simply set t = { first=json.null }\nfunction null()\n  return null -- so json.null() will also return null ;-)\nend\n-----------------------------------------------------------------------------\n-- Internal, PRIVATE functions.\n-- Following a Python-like convention, I have prefixed all these 'PRIVATE'\n-- functions with an underscore.\n-----------------------------------------------------------------------------\n\n--- Scans an array from JSON into a Lua object\n-- startPos begins at the start of the array.\n-- Returns the array and the next starting position\n-- @param s The string being scanned.\n-- @param startPos The starting position for the scan.\n-- @return table, int The scanned array as a table, and the position of the next character to scan.\nfunction decode_scanArray(s,startPos)\n  local array = {}\t-- The return value\n  local stringLen = string.len(s)\n  base.assert(string.sub(s,startPos,startPos)=='[','decode_scanArray called but array does not start at position ' .. startPos .. ' in string:\\n'..s )\n  startPos = startPos + 1\n  -- Infinite loop for array elements\n  repeat\n    startPos = decode_scanWhitespace(s,startPos)\n    base.assert(startPos<=stringLen,'JSON String ended unexpectedly scanning array.')\n    local curChar = string.sub(s,startPos,startPos)\n    if (curChar==']') then\n      return array, startPos+1\n    end\n    if (curChar==',') then\n      startPos = decode_scanWhitespace(s,startPos+1)\n    end\n    base.assert(startPos<=stringLen, 'JSON String ended unexpectedly scanning array.')\n    object, startPos = decode(s,startPos)\n    table.insert(array,object)\n  until false\nend\n\n--- Scans a comment and discards the comment.\n-- Returns the position of the next character following the comment.\n-- @param string s The JSON string to scan.\n-- @param int startPos The starting position of the comment\nfunction decode_scanComment(s, startPos)\n  base.assert( string.sub(s,startPos,startPos+1)=='/*', \"decode_scanComment called but comment does not start at position \" .. startPos)\n  local endPos = string.find(s,'*/',startPos+2)\n  base.assert(endPos~=nil, \"Unterminated comment in string at \" .. startPos)\n  return endPos+2\nend\n\n--- Scans for given constants: true, false or null\n-- Returns the appropriate Lua type, and the position of the next character to read.\n-- @param s The string being scanned.\n-- @param startPos The position in the string at which to start scanning.\n-- @return object, int The object (true, false or nil) and the position at which the next character should be\n-- scanned.\nfunction decode_scanConstant(s, startPos)\n  local consts = { [\"true\"] = true, [\"false\"] = false, [\"null\"] = nil }\n  local constNames = {\"true\",\"false\",\"null\"}\n\n  for i,k in base.pairs(constNames) do\n    --print (\"[\" .. string.sub(s,startPos, startPos + string.len(k) -1) ..\"]\", k)\n    if string.sub(s,startPos, startPos + string.len(k) -1 )==k then\n      return consts[k], startPos + string.len(k)\n    end\n  end\n  base.assert(nil, 'Failed to scan constant from string ' .. s .. ' at starting position ' .. startPos)\nend\n\n--- Scans a number from the JSON encoded string.\n-- (in fact, also is able to scan numeric +- eqns, which is not\n-- in the JSON spec.)\n-- Returns the number, and the position of the next character\n-- after the number.\n-- @param s The string being scanned.\n-- @param startPos The position at which to start scanning.\n-- @return number, int The extracted number and the position of the next character to scan.\nfunction decode_scanNumber(s,startPos)\n  local endPos = startPos+1\n  local stringLen = string.len(s)\n  local acceptableChars = \"+-0123456789.e\"\n  while (string.find(acceptableChars, string.sub(s,endPos,endPos), 1, true)\n\tand endPos<=stringLen\n\t) do\n    endPos = endPos + 1\n  end\n  local stringValue = 'return ' .. string.sub(s,startPos, endPos-1)\n  local stringEval = base.loadstring(stringValue)\n  base.assert(stringEval, 'Failed to scan number [ ' .. stringValue .. '] in JSON string at position ' .. startPos .. ' : ' .. endPos)\n  return stringEval(), endPos\nend\n\n--- Scans a JSON object into a Lua object.\n-- startPos begins at the start of the object.\n-- Returns the object and the next starting position.\n-- @param s The string being scanned.\n-- @param startPos The starting position of the scan.\n-- @return table, int The scanned object as a table and the position of the next character to scan.\nfunction decode_scanObject(s,startPos)\n  local object = {}\n  local stringLen = string.len(s)\n  local key, value\n  base.assert(string.sub(s,startPos,startPos)=='{','decode_scanObject called but object does not start at position ' .. startPos .. ' in string:\\n' .. s)\n  startPos = startPos + 1\n  repeat\n    startPos = decode_scanWhitespace(s,startPos)\n    base.assert(startPos<=stringLen, 'JSON string ended unexpectedly while scanning object.')\n    local curChar = string.sub(s,startPos,startPos)\n    if (curChar=='}') then\n      return object,startPos+1\n    end\n    if (curChar==',') then\n      startPos = decode_scanWhitespace(s,startPos+1)\n    end\n    base.assert(startPos<=stringLen, 'JSON string ended unexpectedly scanning object.')\n    -- Scan the key\n    key, startPos = decode(s,startPos)\n    base.assert(startPos<=stringLen, 'JSON string ended unexpectedly searching for value of key ' .. key)\n    startPos = decode_scanWhitespace(s,startPos)\n    base.assert(startPos<=stringLen, 'JSON string ended unexpectedly searching for value of key ' .. key)\n    base.assert(string.sub(s,startPos,startPos)==':','JSON object key-value assignment mal-formed at ' .. startPos)\n    startPos = decode_scanWhitespace(s,startPos+1)\n    base.assert(startPos<=stringLen, 'JSON string ended unexpectedly searching for value of key ' .. key)\n    value, startPos = decode(s,startPos)\n    object[key]=value\n  until false\t-- infinite loop while key-value pairs are found\nend\n\n--- Scans a JSON string from the opening inverted comma or single quote to the\n-- end of the string.\n-- Returns the string extracted as a Lua string,\n-- and the position of the next non-string character\n-- (after the closing inverted comma or single quote).\n-- @param s The string being scanned.\n-- @param startPos The starting position of the scan.\n-- @return string, int The extracted string as a Lua string, and the next character to parse.\nfunction decode_scanString(s,startPos)\n  base.assert(startPos, 'decode_scanString(..) called without start position')\n  local startChar = string.sub(s,startPos,startPos)\n  base.assert(startChar==[[']] or startChar==[[\"]],'decode_scanString called for a non-string')\n  local escaped = false\n  local endPos = startPos + 1\n  local bEnded = false\n  local stringLen = string.len(s)\n  repeat\n    local curChar = string.sub(s,endPos,endPos)\n    if not escaped then\n      if curChar==[[\\]] then\n        escaped = true\n      else\n        bEnded = curChar==startChar\n      end\n    else\n      -- If we're escaped, we accept the current character come what may\n      escaped = false\n    end\n    endPos = endPos + 1\n    base.assert(endPos <= stringLen+1, \"String decoding failed: unterminated string at position \" .. endPos)\n  until bEnded\n  local stringValue = 'return ' .. string.sub(s, startPos, endPos-1)\n  local stringEval = base.loadstring(stringValue)\n  base.assert(stringEval, 'Failed to load string [ ' .. stringValue .. '] in JSON4Lua.decode_scanString at position ' .. startPos .. ' : ' .. endPos)\n  return stringEval(), endPos\nend\n\n--- Scans a JSON string skipping all whitespace from the current start position.\n-- Returns the position of the first non-whitespace character, or nil if the whole end of string is reached.\n-- @param s The string being scanned\n-- @param startPos The starting position where we should begin removing whitespace.\n-- @return int The first position where non-whitespace was encountered, or string.len(s)+1 if the end of string\n-- was reached.\nfunction decode_scanWhitespace(s,startPos)\n  local whitespace=\" \\n\\r\\t\"\n  local stringLen = string.len(s)\n  while ( string.find(whitespace, string.sub(s,startPos,startPos), 1, true)  and startPos <= stringLen) do\n    startPos = startPos + 1\n  end\n  return startPos\nend\n\n--- Encodes a string to be JSON-compatible.\n-- This just involves back-quoting inverted commas, back-quotes and newlines, I think ;-)\n-- @param s The string to return as a JSON encoded (i.e. backquoted string)\n-- @return The string appropriately escaped.\nfunction encodeString(s)\n  s = string.gsub(s,'\\\\','\\\\\\\\')\n  s = string.gsub(s,'\"','\\\\\"')\n  s = string.gsub(s,\"'\",\"\\\\'\")\n  s = string.gsub(s,'\\n','\\\\n')\n  s = string.gsub(s,'\\t','\\\\t')\n  return s\nend\n\n-- Determines whether the given Lua type is an array or a table / dictionary.\n-- We consider any table an array if it has indexes 1..n for its n items, and no\n-- other data in the table.\n-- I think this method is currently a little 'flaky', but can't think of a good way around it yet...\n-- @param t The table to evaluate as an array\n-- @return boolean, number True if the table can be represented as an array, false otherwise. If true,\n-- the second returned value is the maximum\n-- number of indexed elements in the array.\nfunction isArray(t)\n  -- Next we count all the elements, ensuring that any non-indexed elements are not-encodable\n  -- (with the possible exception of 'n')\n  local maxIndex = 0\n  for k,v in base.pairs(t) do\n    if (base.type(k)=='number' and math.floor(k)==k and 1<=k) then\t-- k,v is an indexed pair\n      if (not isEncodable(v)) then return false end\t-- All array elements must be encodable\n      maxIndex = math.max(maxIndex,k)\n    else\n      if (k=='n') then\n        if v ~= table.getn(t) then return false end  -- False if n does not hold the number of elements\n      else -- Else of (k=='n')\n        if isEncodable(v) then return false end\n      end  -- End of (k~='n')\n    end -- End of k,v not an indexed pair\n  end  -- End of loop across all pairs\n  return true, maxIndex\nend\n\n--- Determines whether the given Lua object / table / variable can be JSON encoded. The only\n-- types that are JSON encodable are: string, boolean, number, nil, table and json.null.\n-- In this implementation, all other types are ignored.\n-- @param o The object to examine.\n-- @return boolean True if the object should be JSON encoded, false if it should be ignored.\nfunction isEncodable(o)\n  local t = base.type(o)\n  return (t=='string' or t=='boolean' or t=='number' or t=='nil' or t=='table') or (t=='function' and o==null)\nend\n\n"
  },
  {
    "path": "源代码/mir9/src/cocos/cocos2d/luaj.lua",
    "content": "\nlocal luaj = {}\n\nlocal callJavaStaticMethod = LuaJavaBridge.callStaticMethod\n\nlocal function checkArguments(args, sig)\n    if type(args) ~= \"table\" then args = {} end\n    if sig then return args, sig end\n\n    sig = {\"(\"}\n    for i, v in ipairs(args) do\n        local t = type(v)\n        if t == \"number\" then\n            sig[#sig + 1] = \"F\"\n        elseif t == \"boolean\" then\n            sig[#sig + 1] = \"Z\"\n        elseif t == \"function\" then\n            sig[#sig + 1] = \"I\"\n        else\n            sig[#sig + 1] = \"Ljava/lang/String;\"\n        end\n    end\n    sig[#sig + 1] = \")V\"\n\n    return args, table.concat(sig)\nend\n\nfunction luaj.callStaticMethod(className, methodName, args, sig)\n    local args, sig = checkArguments(args, sig)\n    --echoInfo(\"luaj.callStaticMethod(\\\"%s\\\",\\n\\t\\\"%s\\\",\\n\\targs,\\n\\t\\\"%s\\\"\", className, methodName, sig)\n    return callJavaStaticMethod(className, methodName, args, sig)\nend\n\nreturn luaj\n"
  },
  {
    "path": "源代码/mir9/src/cocos/cocos2d/luaoc.lua",
    "content": "\nlocal luaoc = {}\n\nlocal callStaticMethod = LuaObjcBridge.callStaticMethod\n\nfunction luaoc.callStaticMethod(className, methodName, args)\n    local ok, ret = callStaticMethod(className, methodName, args)\n    if not ok then\n        local msg = string.format(\"luaoc.callStaticMethod(\\\"%s\\\", \\\"%s\\\", \\\"%s\\\") - error: [%s] \",\n                className, methodName, tostring(args), tostring(ret))\n        if ret == -1 then\n            print(msg .. \"INVALID PARAMETERS\")\n        elseif ret == -2 then\n            print(msg .. \"CLASS NOT FOUND\")\n        elseif ret == -3 then\n            print(msg .. \"METHOD NOT FOUND\")\n        elseif ret == -4 then\n            print(msg .. \"EXCEPTION OCCURRED\")\n        elseif ret == -5 then\n            print(msg .. \"INVALID METHOD SIGNATURE\")\n        else\n            print(msg .. \"UNKNOWN\")\n        end\n    end\n    return ok, ret\nend\n\nreturn luaoc\n"
  },
  {
    "path": "源代码/mir9/src/cocos/cocosbuilder/CCBReaderLoad.lua",
    "content": "ccb = ccb or {}\n\nfunction CCBReaderLoad(strFilePath,proxy,owner)\n    if nil == proxy then\n        return nil\n    end\n\n    local ccbReader = proxy:createCCBReader()\n    local node      = ccbReader:load(strFilePath)\n    local rootName  = \"\" \n    --owner set in readCCBFromFile is proxy\n    if nil ~= owner then\n        --Callbacks\n        local ownerCallbackNames = ccbReader:getOwnerCallbackNames() \n        local ownerCallbackNodes = ccbReader:getOwnerCallbackNodes()\n        local ownerCallbackControlEvents = ccbReader:getOwnerCallbackControlEvents()\n        local i = 1\n        for i = 1,table.getn(ownerCallbackNames) do\n            local callbackName =  ownerCallbackNames[i]\n            local callbackNode =  tolua.cast(ownerCallbackNodes[i],\"cc.Node\")\n\n            if \"function\" == type(owner[callbackName]) then\n                proxy:setCallback(callbackNode, owner[callbackName], ownerCallbackControlEvents[i])\n            else\n                print(\"Warning: Cannot find owner's lua function:\" .. \":\" .. callbackName .. \" for ownerVar selector\")\n            end\n\n        end\n\n        --Variables\n        local ownerOutletNames = ccbReader:getOwnerOutletNames() \n        local ownerOutletNodes = ccbReader:getOwnerOutletNodes()\n\n        for i = 1, table.getn(ownerOutletNames) do\n            local outletName = ownerOutletNames[i]\n            local outletNode = tolua.cast(ownerOutletNodes[i],\"cc.Node\")\n            owner[outletName] = outletNode\n        end\n    end\n\n    local nodesWithAnimationManagers = ccbReader:getNodesWithAnimationManagers()\n    local animationManagersForNodes  = ccbReader:getAnimationManagersForNodes()\n\n    for i = 1 , table.getn(nodesWithAnimationManagers) do\n        local innerNode = tolua.cast(nodesWithAnimationManagers[i], \"cc.Node\")\n        local animationManager = tolua.cast(animationManagersForNodes[i], \"cc.CCBAnimationManager\")\n        local documentControllerName = animationManager:getDocumentControllerName()\n        if \"\" == documentControllerName then\n            \n        end\n        if nil ~=  ccb[documentControllerName] then\n            ccb[documentControllerName][\"mAnimationManager\"] = animationManager\n        end\n        \n        --Callbacks\n        local documentCallbackNames = animationManager:getDocumentCallbackNames()\n        local documentCallbackNodes = animationManager:getDocumentCallbackNodes()\n        local documentCallbackControlEvents = animationManager:getDocumentCallbackControlEvents()\n\n        for i = 1,table.getn(documentCallbackNames) do\n            local callbackName = documentCallbackNames[i]\n            local callbackNode = tolua.cast(documentCallbackNodes[i],\"cc.Node\")\n            if \"\" ~= documentControllerName and nil ~= ccb[documentControllerName] then\n                if \"function\" == type(ccb[documentControllerName][callbackName]) then\n                    proxy:setCallback(callbackNode, ccb[documentControllerName][callbackName], documentCallbackControlEvents[i])\n                else\n                    print(\"Warning: Cannot found lua function [\" .. documentControllerName .. \":\" .. callbackName .. \"] for docRoot selector\")\n                end\n            end\n        end\n\n        --Variables\n        local documentOutletNames = animationManager:getDocumentOutletNames()\n        local documentOutletNodes = animationManager:getDocumentOutletNodes()\n\n        for i = 1, table.getn(documentOutletNames) do\n            local outletName = documentOutletNames[i]\n            local outletNode = tolua.cast(documentOutletNodes[i],\"cc.Node\")\n            \n            if nil ~= ccb[documentControllerName] then\n                ccb[documentControllerName][outletName] = tolua.cast(outletNode, proxy:getNodeTypeName(outletNode))\n            end \n        end\n        --[[\n        if (typeof(controller.onDidLoadFromCCB) == \"function\")\n            controller.onDidLoadFromCCB();\n        ]]--\n        --Setup timeline callbacks\n        local keyframeCallbacks = animationManager:getKeyframeCallbacks()\n\n        for i = 1 , table.getn(keyframeCallbacks) do\n            local callbackCombine = keyframeCallbacks[i]\n            local beignIndex,endIndex = string.find(callbackCombine,\":\")\n            local callbackType    = tonumber(string.sub(callbackCombine,1,beignIndex - 1))\n            local callbackName    = string.sub(callbackCombine,endIndex + 1, -1)\n            --Document callback\n\n            if 1 == callbackType and nil ~= ccb[documentControllerName] then\n                local callfunc = cc.CallFunc:create(ccb[documentControllerName][callbackName])\n                animationManager:setCallFuncForLuaCallbackNamed(callfunc, callbackCombine);\n            elseif 2 == callbackType and nil ~= owner then --Owner callback\n                local callfunc = cc.CallFunc:create(owner[callbackName])--need check\n                animationManager:setCallFuncForLuaCallbackNamed(callfunc, callbackCombine)\n            end\n        end\n        --start animation\n        local autoPlaySeqId = animationManager:getAutoPlaySequenceId()\n        if -1 ~= autoPlaySeqId then\n            animationManager:runAnimationsForSequenceIdTweenDuration(autoPlaySeqId, 0)\n        end\n    end\n\n    return node\nend\n\n\nlocal function CCBuilderReaderLoad(strFilePath,proxy,owner)\n    print(\"\\n********** \\n\"..\"CCBuilderReaderLoad(strFilePath,proxy,owner)\"..\" was deprecated please use \".. \"CCBReaderLoad(strFilePath,proxy,owner)\" .. \" instead.\\n**********\")\n    return CCBReaderLoad(strFilePath,proxy,owner)\nend\nrawset(_G,\"CCBuilderReaderLoad\",CCBuilderReaderLoad)"
  },
  {
    "path": "源代码/mir9/src/cocos/cocosbuilder/DeprecatedCocosBuilderClass.lua",
    "content": "-- This is the DeprecatedCocosBuilderClass\n\nDeprecatedCocosBuilderClass = {} or DeprecatedCocosBuilderClass\n\n--tip\nlocal function deprecatedTip(old_name,new_name)\n    print(\"\\n********** \\n\"..old_name..\" was deprecated please use \".. new_name .. \" instead.\\n**********\")\nend\n\n--CCBReader class will be Deprecated,begin\nfunction DeprecatedCocosBuilderClass.CCBReader()\n    deprecatedTip(\"CCBReader\",\"cc.BReader\")\n    return cc.BReader\nend\n_G[\"CCBReader\"] = DeprecatedCocosBuilderClass.CCBReader()\n--CCBReader class will be Deprecated,end\n\n--CCBAnimationManager class will be Deprecated,begin\nfunction DeprecatedCocosBuilderClass.CCBAnimationManager()\n    deprecatedTip(\"CCBAnimationManager\",\"cc.BAnimationManager\")\n    return cc.BAnimationManager\nend\n_G[\"CCBAnimationManager\"] = DeprecatedCocosBuilderClass.CCBAnimationManager()\n--CCBAnimationManager class will be Deprecated,end\n\n--CCBProxy class will be Deprecated,begin\nfunction DeprecatedCocosBuilderClass.CCBProxy()\n    deprecatedTip(\"CCBProxy\",\"cc.CCBProxy\")\n    return cc.CCBProxy\nend\n_G[\"CCBProxy\"] = DeprecatedCocosBuilderClass.CCBProxy()\n--CCBProxy class will be Deprecated,end\n"
  },
  {
    "path": "源代码/mir9/src/cocos/cocosdenshion/AudioEngine.lua",
    "content": "\n--Encapsulate SimpleAudioEngine to AudioEngine,Play music and sound effects.\nlocal M = {}\n\nfunction M.stopAllEffects()\n    cc.SimpleAudioEngine:getInstance():stopAllEffects()\nend\n\nfunction M.getMusicVolume()\n    return cc.SimpleAudioEngine:getInstance():getMusicVolume()\nend\n\nfunction M.isMusicPlaying()\n    return cc.SimpleAudioEngine:getInstance():isMusicPlaying()\nend\n\nfunction M.getEffectsVolume()\n    return cc.SimpleAudioEngine:getInstance():getEffectsVolume()\nend\n\nfunction M.setMusicVolume(volume)\n    cc.SimpleAudioEngine:getInstance():setMusicVolume(volume)\nend\n\nfunction M.stopEffect(handle)\n    cc.SimpleAudioEngine:getInstance():stopEffect(handle)\nend\n\nfunction M.stopMusic(isReleaseData)\n    local releaseDataValue = false\n    if nil ~= isReleaseData then\n        releaseDataValue = isReleaseData\n    end\n    cc.SimpleAudioEngine:getInstance():stopMusic(releaseDataValue)\nend\n\nfunction M.playMusic(filename, isLoop)\n    local loopValue = false\n    if nil ~= isLoop then\n        loopValue = isLoop\n    end\n    cc.SimpleAudioEngine:getInstance():playMusic(filename, loopValue)\nend\n\nfunction M.pauseAllEffects()\n    cc.SimpleAudioEngine:getInstance():pauseAllEffects()\nend\n\nfunction M.preloadMusic(filename)\n    cc.SimpleAudioEngine:getInstance():preloadMusic(filename)\nend\n\nfunction M.resumeMusic()\n    cc.SimpleAudioEngine:getInstance():resumeMusic()\nend\n\nfunction M.playEffect(filename, isLoop)\n    local loopValue = false\n    if nil ~= isLoop then\n        loopValue = isLoop\n    end\n    return cc.SimpleAudioEngine:getInstance():playEffect(filename, loopValue)\nend\n\nfunction M.rewindMusic()\n    cc.SimpleAudioEngine:getInstance():rewindMusic()\nend\n\nfunction M.willPlayMusic()\n    return cc.SimpleAudioEngine:getInstance():willPlayMusic()\nend\n\nfunction M.unloadEffect(filename)\n    cc.SimpleAudioEngine:getInstance():unloadEffect(filename)\nend\n\nfunction M.preloadEffect(filename)\n    cc.SimpleAudioEngine:getInstance():preloadEffect(filename)\nend\n\nfunction M.setEffectsVolume(volume)\n    cc.SimpleAudioEngine:getInstance():setEffectsVolume(volume)\nend\n\nfunction M.pauseEffect(handle)\n    cc.SimpleAudioEngine:getInstance():pauseEffect(handle)\nend\n\nfunction M.resumeAllEffects(handle)\n    cc.SimpleAudioEngine:getInstance():resumeAllEffects()\nend\n\nfunction M.pauseMusic()\n    cc.SimpleAudioEngine:getInstance():pauseMusic()\nend\n\nfunction M.resumeEffect(handle)\n    cc.SimpleAudioEngine:getInstance():resumeEffect(handle)\nend\n\nfunction M.getInstance()\n    return cc.SimpleAudioEngine:getInstance()\nend\n\nfunction M.destroyInstance()\n    return cc.SimpleAudioEngine:destroyInstance()\nend\n\nAudioEngine = M\n"
  },
  {
    "path": "源代码/mir9/src/cocos/cocosdenshion/DeprecatedCocosDenshionClass.lua",
    "content": "-- This is the DeprecatedCocosDenshionClass\n\nDeprecatedCocosDenshionClass = {} or DeprecatedCocosDenshionClass\n\n--tip\nlocal function deprecatedTip(old_name,new_name)\n    print(\"\\n********** \\n\"..old_name..\" was deprecated please use \".. new_name .. \" instead.\\n**********\")\nend\n\n--SimpleAudioEngine class will be Deprecated,begin\nfunction DeprecatedCocosDenshionClass.SimpleAudioEngine()\n    deprecatedTip(\"SimpleAudioEngine\",\"cc.SimpleAudioEngine\")\n    return cc.SimpleAudioEngine\nend\n_G[\"SimpleAudioEngine\"] = DeprecatedCocosDenshionClass.SimpleAudioEngine()\n--SimpleAudioEngine class will be Deprecated,end\n"
  },
  {
    "path": "源代码/mir9/src/cocos/cocosdenshion/DeprecatedCocosDenshionFunc.lua",
    "content": "--tip\nlocal function deprecatedTip(old_name,new_name)\n    print(\"\\n********** \\n\"..old_name..\" was deprecated please use \".. new_name .. \" instead.\\n**********\")\nend\n\n--functions of SimpleAudioEngine will be deprecated begin\nlocal SimpleAudioEngineDeprecated = { }\nfunction SimpleAudioEngineDeprecated.sharedEngine()\n    deprecatedTip(\"SimpleAudioEngine:sharedEngine\",\"SimpleAudioEngine:getInstance\")\n    return cc.SimpleAudioEngine:getInstance()\nend\nSimpleAudioEngine.sharedEngine = SimpleAudioEngineDeprecated.sharedEngine\n\nfunction SimpleAudioEngineDeprecated.playBackgroundMusic(self,...)\n    deprecatedTip(\"SimpleAudioEngine:playBackgroundMusic\",\"SimpleAudioEngine:playMusic\")\n    return self:playMusic(...)\nend\nSimpleAudioEngine.playBackgroundMusic = SimpleAudioEngineDeprecated.playBackgroundMusic\n--functions of SimpleAudioEngine will be deprecated end\n"
  },
  {
    "path": "源代码/mir9/src/cocos/cocostudio/CocoStudio.lua",
    "content": "\nif not json then\n    require \"cocos.cocos2d.json\"\nend\n\nccs = ccs or {}\n\nrequire \"cocos.cocostudio.StudioConstants\"\n\nfunction ccs.sendTriggerEvent(event)\n    local triggerObjArr = ccs.TriggerMng.getInstance():get(event)\n\n    if nil == triggerObjArr then\n        return\n    end\n\n    for i = 1, table.getn(triggerObjArr) do\n        local triObj = triggerObjArr[i]\n        if nil ~= triObj and triObj:detect() then\n            triObj:done()\n        end\n    end\nend\n\nfunction ccs.registerTriggerClass(className, createFunc)\n    ccs.TInfo.new(className,createFunc)\nend\n\nccs.TInfo = class(\"TInfo\")\nccs.TInfo._className = \"\"\nccs.TInfo._fun = nil\n\nfunction ccs.TInfo:ctor(c,f)\n     -- @param {String|ccs.TInfo}c\n     -- @param {Function}f\n    if nil ~= f then\n        self._className = c\n        self._fun       = f\n    else\n        self._className = c._className\n        self._fun       = c._fun\n    end\n\n    ccs.ObjectFactory.getInstance():registerType(self)\nend\n\nccs.ObjectFactory = class(\"ObjectFactory\")\nccs.ObjectFactory._typeMap = nil\nccs.ObjectFactory._instance = nil\n\nfunction ccs.ObjectFactory:ctor()\n    self._typeMap = {}\nend\n\nfunction ccs.ObjectFactory.getInstance()\n    if nil == ccs.ObjectFactory._instance then\n        ccs.ObjectFactory._instance = ccs.ObjectFactory.new()\n    end\n\n    return ccs.ObjectFactory._instance\nend\n\nfunction ccs.ObjectFactory.destroyInstance()\n    ccs.ObjectFactory._instance = nil\nend\n\nfunction ccs.ObjectFactory:createObject(classname)\n    local obj = nil\n    local t   = self._typeMap[classname]\n    if nil ~= t then\n        obj = t._fun()\n    end\n\n    return obj\nend\n\nfunction ccs.ObjectFactory:registerType(t)\n    self._typeMap[t._className] = t\nend\n\nccs.TriggerObj = class(\"TriggerObj\")\nccs.TriggerObj._cons = {}\nccs.TriggerObj._acts = {}\nccs.TriggerObj._enable = false\nccs.TriggerObj._id   = 0\nccs.TriggerObj._vInt = {}\n\nfunction ccs.TriggerObj.extend(target)\n    local t = tolua.getpeer(target)\n    if not t then\n        t = {}\n        tolua.setpeer(target, t)\n    end\n    setmetatable(t, TriggerObj)\n    return target\nend\n\nfunction ccs.TriggerObj:ctor()\n    self:init()\nend\n\nfunction ccs.TriggerObj:init()\n    self._id = 0\n    self._enable = true\n    self._cons = {}\n    self._acts = {}\n    self._vInt = {}\nend\n\nfunction ccs.TriggerObj:detect()\n    if (not self._enable) or (table.getn(self._cons) == 0) then\n        return true\n    end\n\n    local ret = true\n    local obj = nil\n    for i = 1 , table.getn(self._cons) do\n        obj = self._cons[i]\n        if nil ~= obj and nil ~= obj.detect then\n            ret = ret and obj:detect()\n        end\n    end\n    return ret\nend\n\nfunction ccs.TriggerObj:done()\n    if (not self._enable) or (table.getn(self._acts) == 0) then\n        return\n    end\n\n    local obj = nil\n    for i = 1, table.getn(self._acts) do\n        obj = self._acts[i]\n        if nil ~= obj and obj.done then\n            obj:done()\n        end\n    end\nend\n\nfunction ccs.TriggerObj:removeAll()\n    local obj = nil\n    for i=1, table.getn(self._cons) do\n        obj = self._cons[i]\n        if nil ~= obj then\n            obj:removeAll()\n        end\n    end\n    self._cons = {}\n\n    for i=1, table.getn(self._acts) do\n        obj = self._acts[i]\n        if nil ~= obj then\n            obj:removeAll()\n        end\n    end\n    self._acts = {}\nend\n\nfunction ccs.TriggerObj:serialize(jsonValue)\n    self._id = jsonValue[\"id\"]\n    local count = 0\n\n    --condition\n    local cons = jsonValue[\"conditions\"]\n    if nil ~= cons then\n        count = table.getn(cons)\n        for i = 1, count do\n            local subDict = cons[i]\n            local className = subDict[\"classname\"]\n            if nil ~= className then\n                local obj = ccs.ObjectFactory.getInstance():createObject(className)\n                assert(nil ~= obj, string.format(\"class named %s can not implement!\",className))\n                obj:serialize(subDict)\n                obj:init()\n                table.insert(self._cons, obj)\n            end\n        end\n    end\n\n    local actions =  jsonValue[\"actions\"]\n    if nil ~= actions then\n        count = table.getn(actions)\n        for i = 1,count do\n            local  subAction = actions[i]\n            local  className = subAction[\"classname\"]\n            if nil ~= className then\n                local act = ccs.ObjectFactory.getInstance():createObject(className)\n                assert(nil ~= act ,string.format(\"class named %s can not implement!\",className))\n                act:serialize(subAction)\n                act:init()\n                table.insert(self._acts,act)\n            end\n        end\n    end\n\n    local events = jsonValue[\"events\"]\n    if nil ~= events then\n        count = table.getn(events)\n        for i = 1, count do\n            local subEveent = events[i]\n            local eventID   = subEveent[\"id\"]\n            if eventID >= 0 then\n                table.insert(self._vInt,eventID)\n            end\n        end\n    end\nend\n\nfunction ccs.TriggerObj:getId()\n    return self._id\nend\n\nfunction ccs.TriggerObj:setEnable(enable)\n    self._enable = enable\nend\n\nfunction ccs.TriggerObj:getEvents()\n    return self._vInt\nend\n\nccs.TriggerMng = class(\"TriggerMng\")\nccs.TriggerMng._eventTriggers = nil\nccs.TriggerMng._triggerObjs = nil\nccs.TriggerMng._movementDispatches =  nil\nccs.TriggerMng._instance  = nil\n\nfunction ccs.TriggerMng:ctor()\n    self._triggerObjs = {}\n    self._movementDispatches = {}\n    self._eventTriggers = {}\nend\n\nfunction ccs.TriggerMng.getInstance()\n    if ccs.TriggerMng._instance == nil then\n        ccs.TriggerMng._instance = ccs.TriggerMng.new()\n    end\n\n    return ccs.TriggerMng._instance\nend\n\nfunction ccs.TriggerMng.destroyInstance()\n    if ccs.TriggerMng._instance ~= nil then\n        ccs.TriggerMng._instance:removeAll()\n        ccs.TriggerMng._instance = nil\n    end\nend\n\nfunction ccs.TriggerMng:triggerMngVersion()\n    return \"1.0.0.0\"\nend\n\nfunction ccs.TriggerMng:parse(jsonStr)\n    local parseTable = json.decode(jsonStr,1)\n    if nil == parseTable then\n        return\n    end\n\n    local count = table.getn(parseTable)\n    for i = 1, count do\n        local subDict = parseTable[i]\n        local triggerObj = ccs.TriggerObj.new()\n        triggerObj:serialize(subDict)\n        local events = triggerObj:getEvents()\n        for j = 1, table.getn(events) do\n            local event = events[j]\n            self:add(event, triggerObj)\n        end\n\n        self._triggerObjs[triggerObj:getId()] =  triggerObj\n    end\nend\n\nfunction ccs.TriggerMng:get(event)\n    return self._eventTriggers[event]\nend\n\nfunction ccs.TriggerMng:getTriggerObj(id)\n    return self._triggerObjs[id]\nend\n\nfunction ccs.TriggerMng:add(event,triggerObj)\n    local eventTriggers = self._eventTriggers[event]\n    if nil == eventTriggers then\n        eventTriggers = {}\n    end\n\n    local exist = false\n    for i = 1, table.getn(eventTriggers) do\n        if eventTriggers[i] == triggers then\n            exist = true\n            break\n        end\n    end\n\n    if not exist then\n        table.insert(eventTriggers,triggerObj)\n        self._eventTriggers[event] = eventTriggers\n    end\nend\n\nfunction ccs.TriggerMng:removeAll( )\n    for k in pairs(self._eventTriggers) do\n        local triObjArr = self._eventTriggers[k]\n        for j = 1, table.getn(triObjArr) do\n            local  obj = triObjArr[j]\n            obj:removeAll()\n        end\n    end\n    self._eventTriggers = {}\nend\n\nfunction ccs.TriggerMng:remove(event, obj)\n\n    if nil ~= obj then\n        return self:removeObjByEvent(event, obj)\n    end\n\n    assert(event >= 0,\"event must be larger than 0\")\n    if nil == self._eventTriggers then\n        return false\n    end\n\n    local triObjects =  self._eventTriggers[event]\n    if nil == triObjects then\n        return false\n    end\n\n    for i = 1, table.getn(triObjects) do\n        local triObject = triggers[i]\n        if nil ~= triObject then\n            triObject:remvoeAll()\n        end\n    end\n\n    self._eventTriggers[event] = nil\n    return true\nend\n\nfunction ccs.TriggerMng:removeObjByEvent(event, obj)\n    assert(event >= 0,\"event must be larger than 0\")\n    if nil == self._eventTriggers then\n        return false\n    end\n\n    local triObjects = self._eventTriggers[event]\n    if nil == triObjects then\n        return false\n    end\n\n    for i = 1,table.getn(triObjects) do\n        local triObject = triObjects[i]\n        if  nil ~= triObject and triObject == obj then\n            triObject:remvoeAll()\n            table.remove(triObjects, i)\n            return true\n        end\n    end\nend\n\nfunction ccs.TriggerMng:removeTriggerObj(id)\n    local obj = self.getTriggerObj(id)\n\n    if nil == obj then\n        return false\n    end\n\n    local events = obj:getEvents()\n    for i = 1, table.getn(events) do\n        self:remove(events[i],obj)\n    end\n\n    return true\nend\n\nfunction ccs.TriggerMng:isEmpty()\n    return (not (nil == self._eventTriggers)) or table.getn(self._eventTriggers) <= 0\nend\n\nfunction __onParseConfig(configType,jasonStr)\n    if configType == cc.ConfigType.COCOSTUDIO then\n        ccs.TriggerMng.getInstance():parse(jasonStr)\n    end\nend\n"
  },
  {
    "path": "源代码/mir9/src/cocos/cocostudio/DeprecatedCocoStudioClass.lua",
    "content": "-- This is the DeprecatedExtensionClass\n\nDeprecatedExtensionClass = {} or DeprecatedExtensionClass\n\n--tip\nlocal function deprecatedTip(old_name,new_name)\n    print(\"\\n********** \\n\"..old_name..\" was deprecated please use \".. new_name .. \" instead.\\n**********\")\nend\n\n--CCArmature class will be Deprecated,begin\nfunction DeprecatedExtensionClass.CCArmature()\n    deprecatedTip(\"CCArmature\",\"ccs.Armature\")\n    return ccs.Armature\nend\n_G[\"CCArmature\"] = DeprecatedExtensionClass.CCArmature()\n--CCArmature class will be Deprecated,end\n\n--CCArmatureAnimation class will be Deprecated,begin\nfunction DeprecatedExtensionClass.CCArmatureAnimation()\n    deprecatedTip(\"CCArmatureAnimation\",\"ccs.ArmatureAnimation\")\n    return ccs.ArmatureAnimation\nend\n_G[\"CCArmatureAnimation\"] = DeprecatedExtensionClass.CCArmatureAnimation()\n--CCArmatureAnimation class will be Deprecated,end\n\n--CCSkin class will be Deprecated,begin\nfunction DeprecatedExtensionClass.CCSkin()\n    deprecatedTip(\"CCSkin\",\"ccs.Skin\")\n    return ccs.Skin\nend\n_G[\"CCSkin\"] = DeprecatedExtensionClass.CCSkin()\n--CCSkin class will be Deprecated,end\n\n--CCBone class will be Deprecated,begin\nfunction DeprecatedExtensionClass.CCBone()\n    deprecatedTip(\"CCBone\",\"ccs.Bone\")\n    return ccs.Bone\nend\n_G[\"CCBone\"] = DeprecatedExtensionClass.CCBone()\n--CCBone class will be Deprecated,end\n\n--CCArmatureDataManager class will be Deprecated,begin\nfunction DeprecatedExtensionClass.CCArmatureDataManager()\n    deprecatedTip(\"CCArmatureDataManager\",\"ccs.ArmatureDataManager\")\n    return ccs.ArmatureDataManager\nend\n_G[\"CCArmatureDataManager\"] = DeprecatedExtensionClass.CCArmatureDataManager()\n--CCArmatureDataManager class will be Deprecated,end\n\n--CCBatchNode class will be Deprecated,begin\nfunction DeprecatedExtensionClass.CCBatchNode()\n    deprecatedTip(\"CCBatchNode\",\"ccs.BatchNode\")\n    return ccs.BatchNode\nend\n_G[\"CCBatchNode\"] = DeprecatedExtensionClass.CCBatchNode()\n--CCBatchNode class will be Deprecated,end\n\n--CCTween class will be Deprecated,begin\nfunction DeprecatedExtensionClass.CCTween()\n    deprecatedTip(\"CCTween\",\"ccs.Tween\")\n    return ccs.Tween\nend\n_G[\"CCTween\"] = DeprecatedExtensionClass.CCTween()\n--CCTween class will be Deprecated,end\n\n--CCBaseData class will be Deprecated,begin\nfunction DeprecatedExtensionClass.CCBaseData()\n    deprecatedTip(\"CCBaseData\",\"ccs.BaseData\")\n    return ccs.BaseData\nend\n_G[\"CCBaseData\"] = DeprecatedExtensionClass.CCBaseData()\n--CCBaseData class will be Deprecated,end\n\n--CCDisplayManager class will be Deprecated,begin\nfunction DeprecatedExtensionClass.CCDisplayManager()\n    deprecatedTip(\"CCDisplayManager\",\"ccs.DisplayManager\")\n    return ccs.DisplayManager\nend\n_G[\"CCDisplayManager\"] = DeprecatedExtensionClass.CCDisplayManager()\n--CCDisplayManager class will be Deprecated,end\n\n--UIHelper class will be Deprecated,begin\nfunction DeprecatedExtensionClass.UIHelper()\n    deprecatedTip(\"UIHelper\",\"ccs.UIHelper\")\n    return ccs.UIHelper\nend\n_G[\"UIHelper\"] = DeprecatedExtensionClass.UIHelper()\n--UIHelper class will be Deprecated,end\n\n--UILayout class will be Deprecated,begin\nfunction DeprecatedExtensionClass.UILayout()\n    deprecatedTip(\"UILayout\",\"ccs.UILayout\")\n    return ccs.UILayout\nend\n_G[\"UILayout\"] = DeprecatedExtensionClass.UILayout()\n--UILayout class will be Deprecated,end\n\n--UIWidget class will be Deprecated,begin\nfunction DeprecatedExtensionClass.UIWidget()\n    deprecatedTip(\"UIWidget\",\"ccs.UIWidget\")\n    return ccs.UIWidget\nend\n_G[\"UIWidget\"] = DeprecatedExtensionClass.UIWidget()\n--UIWidget class will be Deprecated,end\n\n--UILayer class will be Deprecated,begin\nfunction DeprecatedExtensionClass.UILayer()\n    deprecatedTip(\"UILayer\",\"ccs.UILayer\")\n    return ccs.UILayer\nend\n_G[\"UILayer\"] = DeprecatedExtensionClass.UILayer()\n--UILayer class will be Deprecated,end\n\n--UIButton class will be Deprecated,begin\nfunction DeprecatedExtensionClass.UIButton()\n    deprecatedTip(\"UIButton\",\"ccs.UIButton\")\n    return ccs.UIButton\nend\n_G[\"UIButton\"] = DeprecatedExtensionClass.UIButton()\n--UIButton class will be Deprecated,end\n\n--UICheckBox class will be Deprecated,begin\nfunction DeprecatedExtensionClass.UICheckBox()\n    deprecatedTip(\"UICheckBox\",\"ccs.UICheckBox\")\n    return ccs.UICheckBox\nend\n_G[\"UICheckBox\"] = DeprecatedExtensionClass.UICheckBox()\n--UICheckBox class will be Deprecated,end\n\n--UIImageView class will be Deprecated,begin\nfunction DeprecatedExtensionClass.UIImageView()\n    deprecatedTip(\"UIImageView\",\"ccs.UIImageView\")\n    return ccs.UIImageView\nend\n_G[\"UIImageView\"] = DeprecatedExtensionClass.UIImageView()\n--UIImageView class will be Deprecated,end\n\n--UILabel class will be Deprecated,begin\nfunction DeprecatedExtensionClass.UILabel()\n    deprecatedTip(\"UILabel\",\"ccs.UILabel\")\n    return ccs.UILabel\nend\n_G[\"UILabel\"] = DeprecatedExtensionClass.UILabel()\n--UILabel class will be Deprecated,end\n\n--UILabelAtlas class will be Deprecated,begin\nfunction DeprecatedExtensionClass.UILabelAtlas()\n    deprecatedTip(\"UILabelAtlas\",\"ccs.UILabelAtlas\")\n    return ccs.UILabelAtlas\nend\n_G[\"UILabelAtlas\"] = DeprecatedExtensionClass.UILabelAtlas()\n--UILabelAtlas class will be Deprecated,end\n\n--UILabelBMFont class will be Deprecated,begin\nfunction DeprecatedExtensionClass.UILabelBMFont()\n    deprecatedTip(\"UILabelBMFont\",\"ccs.UILabelBMFont\")\n    return ccs.UILabelBMFont\nend\n_G[\"UILabelBMFont\"] = DeprecatedExtensionClass.UILabelBMFont()\n--UILabelBMFont class will be Deprecated,end\n\n--UILoadingBar class will be Deprecated,begin\nfunction DeprecatedExtensionClass.UILoadingBar()\n    deprecatedTip(\"UILoadingBar\",\"ccs.UILoadingBar\")\n    return ccs.UILoadingBar\nend\n_G[\"UILoadingBar\"] = DeprecatedExtensionClass.UILoadingBar()\n--UILoadingBar class will be Deprecated,end\n\n--UISlider class will be Deprecated,begin\nfunction DeprecatedExtensionClass.UISlider()\n    deprecatedTip(\"UISlider\",\"ccs.UISlider\")\n    return ccs.UISlider\nend\n_G[\"UISlider\"] = DeprecatedExtensionClass.UISlider()\n--UISlider class will be Deprecated,end\n\n--UITextField class will be Deprecated,begin\nfunction DeprecatedExtensionClass.UITextField()\n    deprecatedTip(\"UITextField\",\"ccs.UITextField\")\n    return ccs.UITextField\nend\n_G[\"UITextField\"] = DeprecatedExtensionClass.UITextField()\n--UITextField class will be Deprecated,end\n\n--UIScrollView class will be Deprecated,begin\nfunction DeprecatedExtensionClass.UIScrollView()\n    deprecatedTip(\"UIScrollView\",\"ccs.UIScrollView\")\n    return ccs.UIScrollView\nend\n_G[\"UIScrollView\"] = DeprecatedExtensionClass.UIScrollView()\n--UIScrollView class will be Deprecated,end\n\n--UIPageView class will be Deprecated,begin\nfunction DeprecatedExtensionClass.UIPageView()\n    deprecatedTip(\"UIPageView\",\"ccs.UIPageView\")\n    return ccs.UIPageView\nend\n_G[\"UIPageView\"] = DeprecatedExtensionClass.UIPageView()\n--UIPageView class will be Deprecated,end\n\n--UIListView class will be Deprecated,begin\nfunction DeprecatedExtensionClass.UIListView()\n    deprecatedTip(\"UIListView\",\"ccs.UIListView\")\n    return ccs.UIListView\nend\n_G[\"UIListView\"] = DeprecatedExtensionClass.UIListView()\n--UIListView class will be Deprecated,end\n\n--UILayoutParameter class will be Deprecated,begin\nfunction DeprecatedExtensionClass.UILayoutParameter()\n    deprecatedTip(\"UILayoutParameter\",\"ccs.UILayoutParameter\")\n    return ccs.UILayoutParameter\nend\n_G[\"UILayoutParameter\"] = DeprecatedExtensionClass.UILayoutParameter()\n--UILayoutParameter class will be Deprecated,end\n\n--UILinearLayoutParameter class will be Deprecated,begin\nfunction DeprecatedExtensionClass.UILinearLayoutParameter()\n    deprecatedTip(\"UILinearLayoutParameter\",\"ccs.UILinearLayoutParameter\")\n    return ccs.UILinearLayoutParameter\nend\n_G[\"UILinearLayoutParameter\"] = DeprecatedExtensionClass.UILinearLayoutParameter()\n--UILinearLayoutParameter class will be Deprecated,end\n\n--UIRelativeLayoutParameter class will be Deprecated,begin\nfunction DeprecatedExtensionClass.UIRelativeLayoutParameter()\n    deprecatedTip(\"UIRelativeLayoutParameter\",\"ccs.UIRelativeLayoutParameter\")\n    return ccs.UIRelativeLayoutParameter\nend\n_G[\"UIRelativeLayoutParameter\"] = DeprecatedExtensionClass.UIRelativeLayoutParameter()\n--UIRelativeLayoutParameter class will be Deprecated,end\n\n--CCComController class will be Deprecated,begin\nfunction DeprecatedExtensionClass.CCComController()\n    deprecatedTip(\"CCComController\",\"ccs.ComController\")\n    return ccs.CCComController\nend\n_G[\"CCComController\"] = DeprecatedExtensionClass.CCComController()\n--CCComController class will be Deprecated,end\n\n--CCComAudio class will be Deprecated,begin\nfunction DeprecatedExtensionClass.CCComAudio()\n    deprecatedTip(\"CCComAudio\",\"ccs.ComAudio\")\n    return ccs.ComAudio\nend\n_G[\"CCComAudio\"] = DeprecatedExtensionClass.CCComAudio()\n--CCComAudio class will be Deprecated,end\n\n--CCComAttribute class will be Deprecated,begin\nfunction DeprecatedExtensionClass.CCComAttribute()\n    deprecatedTip(\"CCComAttribute\",\"ccs.ComAttribute\")\n    return ccs.ComAttribute\nend\n_G[\"CCComAttribute\"] = DeprecatedExtensionClass.CCComAttribute()\n--CCComAttribute class will be Deprecated,end\n\n--CCComRender class will be Deprecated,begin\nfunction DeprecatedExtensionClass.CCComRender()\n    deprecatedTip(\"CCComRender\",\"ccs.ComRender\")\n    return ccs.ComRender\nend\n_G[\"CCComRender\"] = DeprecatedExtensionClass.CCComRender()\n--CCComRender class will be Deprecated,end\n\n--ActionManager class will be Deprecated,begin\nfunction DeprecatedExtensionClass.ActionManager()\n    deprecatedTip(\"ActionManager\",\"ccs.ActionManagerEx\")\n    return ccs.ActionManagerEx\nend\n_G[\"ActionManager\"] = DeprecatedExtensionClass.ActionManager()\n--CCComRender class will be Deprecated,end\n\n--SceneReader class will be Deprecated,begin\nfunction DeprecatedExtensionClass.SceneReader()\n    deprecatedTip(\"SceneReader\",\"ccs.SceneReader\")\n    return ccs.SceneReader\nend\n_G[\"SceneReader\"] = DeprecatedExtensionClass.SceneReader()\n--SceneReader class will be Deprecated,end\n\n--GUIReader class will be Deprecated,begin\nfunction DeprecatedExtensionClass.GUIReader()\n    deprecatedTip(\"GUIReader\",\"ccs.GUIReader\")\n    return ccs.GUIReader\nend\n_G[\"GUIReader\"] = DeprecatedExtensionClass.GUIReader()\n--GUIReader class will be Deprecated,end\n\n--UIRootWidget class will be Deprecated,begin\nfunction DeprecatedExtensionClass.UIRootWidget()\n    deprecatedTip(\"UIRootWidget\",\"ccs.UIRootWidget\")\n    return ccs.UIRootWidget\nend\n_G[\"UIRootWidget\"] = DeprecatedExtensionClass.UIRootWidget()\n--UIRootWidget class will be Deprecated,end\n\n--ActionObject class will be Deprecated,begin\nfunction DeprecatedExtensionClass.ActionObject()\n    deprecatedTip(\"ActionObject\",\"ccs.ActionObject\")\n    return ccs.ActionObject\nend\n_G[\"ActionObject\"] = DeprecatedExtensionClass.ActionObject()\n--ActionObject class will be Deprecated,end"
  },
  {
    "path": "源代码/mir9/src/cocos/cocostudio/DeprecatedCocoStudioFunc.lua",
    "content": "--tip\nlocal function deprecatedTip(old_name,new_name)\n    print(\"\\n********** \\n\"..old_name..\" was deprecated please use \".. new_name .. \" instead.\\n**********\")\nend\n\n--functions of GUIReader will be deprecated begin\nlocal GUIReaderDeprecated = { }\nfunction GUIReaderDeprecated.shareReader()\n    deprecatedTip(\"GUIReader:shareReader\",\"ccs.GUIReader:getInstance\")\n    return ccs.GUIReader:getInstance()\nend\nGUIReader.shareReader = GUIReaderDeprecated.shareReader\n\nfunction GUIReaderDeprecated.purgeGUIReader()\n    deprecatedTip(\"GUIReader:purgeGUIReader\",\"ccs.GUIReader:destroyInstance\")\n    return ccs.GUIReader:destroyInstance()\nend\nGUIReader.purgeGUIReader = GUIReaderDeprecated.purgeGUIReader\n--functions of GUIReader will be deprecated end\n\n--functions of SceneReader will be deprecated begin\nlocal SceneReaderDeprecated = { }\nfunction SceneReaderDeprecated.sharedSceneReader()\n    deprecatedTip(\"SceneReader:sharedSceneReader\",\"ccs.SceneReader:getInstance\")\n    return ccs.SceneReader:getInstance()\nend\nSceneReader.sharedSceneReader = SceneReaderDeprecated.sharedSceneReader\n\nfunction SceneReaderDeprecated.purgeSceneReader(self)\n    deprecatedTip(\"SceneReader:purgeSceneReader\",\"ccs.SceneReader:destroyInstance\")\n    return self:destroyInstance()\nend\nSceneReader.purgeSceneReader = SceneReaderDeprecated.purgeSceneReader\n--functions of SceneReader will be deprecated end\n\n\n--functions of ccs.GUIReader will be deprecated begin\nlocal CCSGUIReaderDeprecated = { }\nfunction CCSGUIReaderDeprecated.purgeGUIReader()\n    deprecatedTip(\"ccs.GUIReader:purgeGUIReader\",\"ccs.GUIReader:destroyInstance\")\n    return ccs.GUIReader:destroyInstance()\nend\nccs.GUIReader.purgeGUIReader = CCSGUIReaderDeprecated.purgeGUIReader\n--functions of ccs.GUIReader will be deprecated end\n\n--functions of ccs.ActionManagerEx will be deprecated begin\nlocal CCSActionManagerExDeprecated = { }\nfunction CCSActionManagerExDeprecated.destroyActionManager()\n    deprecatedTip(\"ccs.ActionManagerEx:destroyActionManager\",\"ccs.ActionManagerEx:destroyInstance\")\n    return ccs.ActionManagerEx:destroyInstance()\nend\nccs.ActionManagerEx.destroyActionManager = CCSActionManagerExDeprecated.destroyActionManager\n--functions of ccs.ActionManagerEx will be deprecated end\n\n--functions of ccs.SceneReader will be deprecated begin\nlocal CCSSceneReaderDeprecated = { }\nfunction CCSSceneReaderDeprecated.destroySceneReader(self)\n    deprecatedTip(\"ccs.SceneReader:destroySceneReader\",\"ccs.SceneReader:destroyInstance\")\n    return self:destroyInstance()\nend\nccs.SceneReader.destroySceneReader = CCSSceneReaderDeprecated.destroySceneReader\n--functions of ccs.SceneReader will be deprecated end\n\n--functions of CCArmatureDataManager will be deprecated begin\nlocal CCArmatureDataManagerDeprecated = { }\nfunction CCArmatureDataManagerDeprecated.sharedArmatureDataManager()\n    deprecatedTip(\"CCArmatureDataManager:sharedArmatureDataManager\",\"ccs.ArmatureDataManager:getInstance\")\n    return ccs.ArmatureDataManager:getInstance()\nend\nCCArmatureDataManager.sharedArmatureDataManager = CCArmatureDataManagerDeprecated.sharedArmatureDataManager\n\nfunction CCArmatureDataManagerDeprecated.purge()\n    deprecatedTip(\"CCArmatureDataManager:purge\",\"ccs.ArmatureDataManager:destoryInstance\")\n    return ccs.ArmatureDataManager:destoryInstance() \nend\nCCArmatureDataManager.purge = CCArmatureDataManagerDeprecated.purge\n--functions of CCArmatureDataManager will be deprecated end\n"
  },
  {
    "path": "源代码/mir9/src/cocos/cocostudio/StudioConstants.lua",
    "content": "\nccs = ccs or {}\n\nccs.MovementEventType = {\n    start = 0,\n    complete = 1,\n    loopComplete = 2,\n}\n"
  },
  {
    "path": "源代码/mir9/src/cocos/controller/ControllerConstants.lua",
    "content": "\ncc = cc or {}\n\ncc.ControllerKey =\n{\n    JOYSTICK_LEFT_X = 1000,\n    JOYSTICK_LEFT_Y = 1001,\n    JOYSTICK_RIGHT_X = 1002,\n    JOYSTICK_RIGHT_Y = 1003,\n\n    BUTTON_A = 1004,\n    BUTTON_B = 1005,\n    BUTTON_C = 1006,\n    BUTTON_X = 1007,\n    BUTTON_Y = 1008,\n    BUTTON_Z = 1009,\n\n    BUTTON_DPAD_UP = 1010,\n    BUTTON_DPAD_DOWN = 1011,\n    BUTTON_DPAD_LEFT = 1012,\n    BUTTON_DPAD_RIGHT = 1013,\n    BUTTON_DPAD_CENTER = 1014,\n\n    BUTTON_LEFT_SHOULDER = 1015,\n    BUTTON_RIGHT_SHOULDER = 1016,\n\n    AXIS_LEFT_TRIGGER = 1017,\n    AXIS_RIGHT_TRIGGER = 1018,\n\n    BUTTON_LEFT_THUMBSTICK = 1019,\n    BUTTON_RIGHT_THUMBSTICK = 1020,\n\n    BUTTON_START = 1021,\n    BUTTON_SELECT = 1022,\n\n    BUTTON_PAUSE = 1023,\n    KEY_MAX = 1024,\n}\n"
  },
  {
    "path": "源代码/mir9/src/cocos/extension/DeprecatedExtensionClass.lua",
    "content": "-- This is the DeprecatedExtensionClass\n\nDeprecatedExtensionClass = {} or DeprecatedExtensionClass\n\n--tip\nlocal function deprecatedTip(old_name,new_name)\n    print(\"\\n********** \\n\"..old_name..\" was deprecated please use \".. new_name .. \" instead.\\n**********\")\nend\n\n--CCControl class will be Deprecated,begin\nfunction DeprecatedExtensionClass.CCControl()\n    deprecatedTip(\"CCControl\",\"cc.Control\")\n    return cc.Control\nend\n_G[\"CCControl\"] = DeprecatedExtensionClass.CCControl()\n--CCControl class will be Deprecated,end\n\n--CCEditBox class will be Deprecated,begin\nfunction DeprecatedExtensionClass.CCEditBox()\n    deprecatedTip(\"CCEditBox\",\"ccui.EditBox\")\n    return ccui.EditBox\nend\n_G[\"CCEditBox\"] = DeprecatedExtensionClass.CCEditBox()\n\nfunction DeprecatedExtensionClass.CCUIEditBox()\n    deprecatedTip(\"cc.EditBox\",\"ccui.EditBox\")\n    return ccui.EditBox\nend\n_G[\"cc\"][\"EditBox\"] = DeprecatedExtensionClass.CCUIEditBox()\n\n--CCEditBox class will be Deprecated,end\n\n--CCScrollView class will be Deprecated,begin\nfunction DeprecatedExtensionClass.CCScrollView()\n    deprecatedTip(\"CCScrollView\",\"cc.ScrollView\")\n    return cc.ScrollView\nend\n_G[\"CCScrollView\"] = DeprecatedExtensionClass.CCScrollView()\n--CCScrollView class will be Deprecated,end\n\n--CCTableView class will be Deprecated,begin\nfunction DeprecatedExtensionClass.CCTableView()\n    deprecatedTip(\"CCTableView\",\"cc.TableView\")\n    return cc.TableView\nend\n_G[\"CCTableView\"] = DeprecatedExtensionClass.CCTableView()\n--CCTableView class will be Deprecated,end\n\n--CCControlPotentiometer class will be Deprecated,begin\nfunction DeprecatedExtensionClass.CCControlPotentiometer()\n    deprecatedTip(\"CCControlPotentiometer\",\"cc.ControlPotentiometer\")\n    return cc.ControlPotentiometer\nend\n_G[\"CCControlPotentiometer\"] = DeprecatedExtensionClass.CCControlPotentiometer()\n--CCControlPotentiometer class will be Deprecated,end\n\n--CCControlStepper class will be Deprecated,begin\nfunction DeprecatedExtensionClass.CCControlStepper()\n    deprecatedTip(\"CCControlStepper\",\"cc.ControlStepper\")\n    return cc.ControlStepper\nend\n_G[\"CCControlStepper\"] = DeprecatedExtensionClass.CCControlStepper()\n--CCControlStepper class will be Deprecated,end\n\n--CCControlHuePicker class will be Deprecated,begin\nfunction DeprecatedExtensionClass.CCControlHuePicker()\n    deprecatedTip(\"CCControlHuePicker\",\"cc.ControlHuePicker\")\n    return cc.ControlHuePicker\nend\n_G[\"CCControlHuePicker\"] = DeprecatedExtensionClass.CCControlHuePicker()\n--CCControlHuePicker class will be Deprecated,end\n\n--CCControlSlider class will be Deprecated,begin\nfunction DeprecatedExtensionClass.CCControlSlider()\n    deprecatedTip(\"CCControlSlider\",\"cc.ControlSlider\")\n    return cc.ControlSlider\nend\n_G[\"CCControlSlider\"] = DeprecatedExtensionClass.CCControlSlider()\n--CCControlSlider class will be Deprecated,end\n\n--CCControlSaturationBrightnessPicker class will be Deprecated,begin\nfunction DeprecatedExtensionClass.CCControlSaturationBrightnessPicker()\n    deprecatedTip(\"CCControlSaturationBrightnessPicker\",\"cc.ControlSaturationBrightnessPicker\")\n    return cc.ControlSaturationBrightnessPicker\nend\n_G[\"CCControlSaturationBrightnessPicker\"] = DeprecatedExtensionClass.CCControlSaturationBrightnessPicker()\n--CCControlSaturationBrightnessPicker class will be Deprecated,end\n\n--CCControlSwitch class will be Deprecated,begin\nfunction DeprecatedExtensionClass.CCControlSwitch()\n    deprecatedTip(\"CCControlSwitch\",\"cc.ControlSwitch\")\n    return cc.ControlSwitch\nend\n_G[\"CCControlSwitch\"] = DeprecatedExtensionClass.CCControlSwitch()\n--CCControlSwitch class will be Deprecated,end\n\n--CCControlButton class will be Deprecated,begin\nfunction DeprecatedExtensionClass.CCControlButton()\n    deprecatedTip(\"CCControlButton\",\"cc.ControlButton\")\n    return cc.ControlButton\nend\n_G[\"CCControlButton\"] = DeprecatedExtensionClass.CCControlButton()\n--CCControlButton class will be Deprecated,end\n\n--CCScale9Sprite class will be Deprecated,begin\nfunction DeprecatedExtensionClass.CCScale9Sprite()\n    deprecatedTip(\"CCScale9Sprite\",\"ccui.Scale9Sprite\")\n    return ccui.Scale9Sprite\nend\n_G[\"CCScale9Sprite\"] = DeprecatedExtensionClass.CCScale9Sprite()\n\nfunction DeprecatedExtensionClass.UIScale9Sprite()\n    deprecatedTip(\"cc.Scale9Sprite\",\"ccui.Scale9Sprite\")\n    return ccui.Scale9Sprite\nend\n_G[\"cc\"][\"Scale9Sprite\"] = DeprecatedExtensionClass.UIScale9Sprite()\n--CCScale9Sprite class will be Deprecated,end\n\n--CCControlColourPicker class will be Deprecated,begin\nfunction DeprecatedExtensionClass.CCControlColourPicker()\n    deprecatedTip(\"CCControlColourPicker\",\"cc.ControlColourPicker\")\n    return cc.ControlColourPicker\nend\n_G[\"CCControlColourPicker\"] = DeprecatedExtensionClass.CCControlColourPicker()\n--CCControlColourPicker class will be Deprecated,end\n\n"
  },
  {
    "path": "源代码/mir9/src/cocos/extension/DeprecatedExtensionEnum.lua",
    "content": "\n_G.kCCControlStepperPartMinus        = cc.CONTROL_STEPPER_PART_MINUS\n_G.kCCControlStepperPartPlus         = cc.CONTROL_STEPPER_PART_PLUS\n_G.kCCControlStepperPartNone         = cc.CONTROL_STEPPER_PART_NONE\n\n_G.CCControlEventTouchDown       = cc.CONTROL_EVENTTYPE_TOUCH_DOWN\n_G.CCControlEventTouchDragInside = cc.CONTROL_EVENTTYPE_DRAG_INSIDE \n_G.CCControlEventTouchDragOutside = cc.CONTROL_EVENTTYPE_DRAG_OUTSIDE\n_G.CCControlEventTouchDragEnter = cc.CONTROL_EVENTTYPE_DRAG_ENTER\n_G.CCControlEventTouchDragExit  = cc.CONTROL_EVENTTYPE_DRAG_EXIT\n_G.CCControlEventTouchUpInside  = cc.CONTROL_EVENTTYPE_TOUCH_UP_INSIDE\n_G.CCControlEventTouchUpOutside = cc.CONTROL_EVENTTYPE_TOUCH_UP_OUTSIDE\n_G.CCControlEventTouchCancel    = cc.CONTROL_EVENTTYPE_TOUCH_CANCEL\n_G.CCControlEventValueChanged   = cc.CONTROL_EVENTTYPE_VALUE_CHANGED \n_G.CCControlStateNormal         = cc.CONTROL_STATE_NORMAL\n_G.CCControlStateHighlighted    = cc.CONTROL_STATE_HIGH_LIGHTED\n_G.CCControlStateDisabled       = cc.CONTROL_STATE_DISABLED\n_G.CCControlStateSelected       = cc.CONTROL_STATE_SELECTED\n\n_G.kCCScrollViewDirectionHorizontal        = cc.SCROLLVIEW_DIRECTION_HORIZONTAL\n_G.kCCScrollViewDirectionVertical          = cc.SCROLLVIEW_DIRECTION_VERTICAL\n_G.kCCTableViewFillTopDown                 = cc.TABLEVIEW_FILL_TOPDOWN\n_G.kCCTableViewFillBottomUp                = cc.TABLEVIEW_FILL_BOTTOMUP\n"
  },
  {
    "path": "源代码/mir9/src/cocos/extension/DeprecatedExtensionFunc.lua",
    "content": "--tip\nlocal function deprecatedTip(old_name,new_name)\n    print(\"\\n********** \\n\"..old_name..\" was deprecated please use \".. new_name .. \" instead.\\n**********\")\nend\n\n--functions of CCControl will be deprecated end\nlocal CCControlDeprecated = { }\nfunction CCControlDeprecated.addHandleOfControlEvent(self,func,controlEvent)\n    deprecatedTip(\"addHandleOfControlEvent\",\"registerControlEventHandler\")\n    print(\"come in addHandleOfControlEvent\")\n    self:registerControlEventHandler(func,controlEvent)\nend\nCCControl.addHandleOfControlEvent = CCControlDeprecated.addHandleOfControlEvent\n--functions of CCControl will be deprecated end\n\n--Enums of CCTableView will be deprecated begin\nCCTableView.kTableViewScroll = cc.SCROLLVIEW_SCRIPT_SCROLL\nCCTableView.kTableViewZoom = cc.SCROLLVIEW_SCRIPT_ZOOM\nCCTableView.kTableCellTouched = cc.TABLECELL_TOUCHED\nCCTableView.kTableCellSizeForIndex = cc.TABLECELL_SIZE_FOR_INDEX\nCCTableView.kTableCellSizeAtIndex = cc.TABLECELL_SIZE_AT_INDEX\nCCTableView.kNumberOfCellsInTableView = cc.NUMBER_OF_CELLS_IN_TABLEVIEW\n--Enums of CCTableView will be deprecated end\n\n--Enums of CCScrollView will be deprecated begin\nCCScrollView.kScrollViewScroll = cc.SCROLLVIEW_SCRIPT_SCROLL\nCCScrollView.kScrollViewZoom = cc.SCROLLVIEW_SCRIPT_ZOOM\n--Enums of CCScrollView will be deprecated end\n"
  },
  {
    "path": "源代码/mir9/src/cocos/extension/ExtensionConstants.lua",
    "content": "\ncc = cc or {}\n\ncc.CONTROL_STATE_NORMAL  = 1\ncc.CONTROL_STATE_HIGH_LIGHTED = 2\ncc.CONTROL_STATE_DISABLED = 4\ncc.CONTROL_STATE_SELECTED = 8\n\ncc.CONTROL_STEPPER_PART_MINUS = 0\ncc.CONTROL_STEPPER_PART_PLUS  = 1\ncc.CONTROL_STEPPER_PART_NONE  = 2\n\ncc.TABLEVIEW_FILL_TOPDOWN = 0\ncc.TABLEVIEW_FILL_BOTTOMUP = 1\n\ncc.SCROLLVIEW_SCRIPT_SCROLL = 0\ncc.SCROLLVIEW_SCRIPT_ZOOM   = 1\ncc.TABLECELL_TOUCHED        = 2\ncc.TABLECELL_HIGH_LIGHT     = 3\ncc.TABLECELL_UNHIGH_LIGHT   = 4\ncc.TABLECELL_WILL_RECYCLE   = 5\ncc.TABLECELL_SIZE_FOR_INDEX = 6\ncc.TABLECELL_SIZE_AT_INDEX  = 7\ncc.NUMBER_OF_CELLS_IN_TABLEVIEW = 8\n\ncc.SCROLLVIEW_DIRECTION_NONE = -1\ncc.SCROLLVIEW_DIRECTION_HORIZONTAL = 0\ncc.SCROLLVIEW_DIRECTION_VERTICAL = 1\ncc.SCROLLVIEW_DIRECTION_BOTH  = 2\n\ncc.CONTROL_EVENTTYPE_TOUCH_DOWN = 1\ncc.CONTROL_EVENTTYPE_DRAG_INSIDE = 2\ncc.CONTROL_EVENTTYPE_DRAG_OUTSIDE = 4\ncc.CONTROL_EVENTTYPE_DRAG_ENTER = 8\ncc.CONTROL_EVENTTYPE_DRAG_EXIT = 16\ncc.CONTROL_EVENTTYPE_TOUCH_UP_INSIDE = 32\ncc.CONTROL_EVENTTYPE_TOUCH_UP_OUTSIDE = 64\ncc.CONTROL_EVENTTYPE_TOUCH_CANCEL    = 128\ncc.CONTROL_EVENTTYPE_VALUE_CHANGED   = 256\n\ncc.EDITBOX_INPUT_MODE_ANY = 0\ncc.EDITBOX_INPUT_MODE_EMAILADDR = 1\ncc.EDITBOX_INPUT_MODE_NUMERIC = 2\ncc.EDITBOX_INPUT_MODE_PHONENUMBER = 3\ncc.EDITBOX_INPUT_MODE_URL = 4\ncc.EDITBOX_INPUT_MODE_DECIMAL = 5\ncc.EDITBOX_INPUT_MODE_SINGLELINE = 6\n\ncc.EDITBOX_INPUT_FLAG_PASSWORD = 0\ncc.EDITBOX_INPUT_FLAG_SENSITIVE = 1\ncc.EDITBOX_INPUT_FLAG_INITIAL_CAPS_WORD = 2\ncc.EDITBOX_INPUT_FLAG_INITIAL_CAPS_SENTENCE = 3\ncc.EDITBOX_INPUT_FLAG_INITIAL_CAPS_ALL_CHARACTERS = 4\n\ncc.KEYBOARD_RETURNTYPE_DEFAULT = 0\ncc.KEYBOARD_RETURNTYPE_DONE = 1\ncc.KEYBOARD_RETURNTYPE_SEND = 2\ncc.KEYBOARD_RETURNTYPE_SEARCH = 3\ncc.KEYBOARD_RETURNTYPE_GO = 4\n\ncc.ASSETSMANAGER_CREATE_FILE  = 0\ncc.ASSETSMANAGER_NETWORK = 1\ncc.ASSETSMANAGER_NO_NEW_VERSION = 2\ncc.ASSETSMANAGER_UNCOMPRESS     = 3\n\ncc.ASSETSMANAGER_PROTOCOL_PROGRESS =  0\ncc.ASSETSMANAGER_PROTOCOL_SUCCESS  =  1\ncc.ASSETSMANAGER_PROTOCOL_ERROR    =  2\n\n"
  },
  {
    "path": "源代码/mir9/src/cocos/init.lua",
    "content": "\nrequire \"cocos.cocos2d.Cocos2d\"\nrequire \"cocos.cocos2d.Cocos2dConstants\"\nrequire \"cocos.cocos2d.extern\"\nrequire \"cocos.cocos2d.bitExtend\"\nrequire \"cocos.cocos2d.DrawPrimitives\"\n\n-- opengl\nrequire \"cocos.cocos2d.Opengl\"\nrequire \"cocos.cocos2d.OpenglConstants\"\n\n-- cocosbuilder\nrequire \"cocos.cocosbuilder.CCBReaderLoad\"\n\n-- cocosdenshion\nrequire \"cocos.cocosdenshion.AudioEngine\"\n\n-- cocosstudio\nrequire \"cocos.cocostudio.CocoStudio\"\n\n-- ui\nrequire \"cocos.ui.GuiConstants\"\nrequire \"cocos.ui.experimentalUIConstants\"\n\n-- extensions\nrequire \"cocos.extension.ExtensionConstants\"\n\n-- network\nrequire \"cocos.network.NetworkConstants\"\n\n-- Spine\nrequire \"cocos.spine.SpineConstants\"\n\nif CC_USE_DEPRECATED_API then\n    -- CCLuaEngine\n    require \"cocos.cocos2d.DeprecatedCocos2dClass\"\n    require \"cocos.cocos2d.DeprecatedCocos2dEnum\"\n    require \"cocos.cocos2d.DeprecatedCocos2dFunc\"\n    require \"cocos.cocos2d.DeprecatedOpenglEnum\"\n\n    -- register_cocostudio_module\n    require \"cocos.cocostudio.DeprecatedCocoStudioClass\"\n    require \"cocos.cocostudio.DeprecatedCocoStudioFunc\"\n\n    -- register_cocosbuilder_module\n    require \"cocos.cocosbuilder.DeprecatedCocosBuilderClass\"\n\n    -- register_cocosdenshion_module\n    require \"cocos.cocosdenshion.DeprecatedCocosDenshionClass\"\n    require \"cocos.cocosdenshion.DeprecatedCocosDenshionFunc\"\n\n    -- register_extension_module\n    require \"cocos.extension.DeprecatedExtensionClass\"\n    require \"cocos.extension.DeprecatedExtensionEnum\"\n    require \"cocos.extension.DeprecatedExtensionFunc\"\n\n    -- register_network_module\n    require \"cocos.network.DeprecatedNetworkClass\"\n    require \"cocos.network.DeprecatedNetworkEnum\"\n    require \"cocos.network.DeprecatedNetworkFunc\"\n\n    -- register_ui_moudle\n    require \"cocos.ui.DeprecatedUIEnum\"\n    require \"cocos.ui.DeprecatedUIFunc\"\nend\n"
  },
  {
    "path": "源代码/mir9/src/cocos/network/DeprecatedNetworkClass.lua",
    "content": "-- This is the DeprecatedNetworkClass\n\nDeprecatedNetworkClass = {} or DeprecatedNetworkClass\n\n--tip\nlocal function deprecatedTip(old_name,new_name)\n    print(\"\\n********** \\n\"..old_name..\" was deprecated please use \".. new_name .. \" instead.\\n**********\")\nend\n\n--WebSocket class will be Deprecated,begin\nfunction DeprecatedNetworkClass.WebSocket()\n    deprecatedTip(\"WebSocket\",\"cc.WebSocket\")\n    return cc.WebSocket\nend\n_G[\"WebSocket\"] = DeprecatedNetworkClass.WebSocket()\n--WebSocket class will be Deprecated,end\n"
  },
  {
    "path": "源代码/mir9/src/cocos/network/DeprecatedNetworkEnum.lua",
    "content": "_G.kWebSocketScriptHandlerOpen  = cc.WEBSOCKET_OPEN\n_G.kWebSocketScriptHandlerMessage = cc.WEBSOCKET_MESSAGE\n_G.kWebSocketScriptHandlerClose   = cc.WEBSOCKET_CLOSE\n_G.kWebSocketScriptHandlerError   = cc.WEBSOCKET_ERROR\n\n_G.kStateConnecting               = cc.WEBSOCKET_STATE_CONNECTING \n_G.kStateOpen                     = cc.WEBSOCKET_STATE_OPEN \n_G.kStateClosing                  = cc.WEBSOCKET_STATE_CLOSING\n_G.kStateClosed                   = cc.WEBSOCKET_STATE_CLOSED\n"
  },
  {
    "path": "源代码/mir9/src/cocos/network/DeprecatedNetworkFunc.lua",
    "content": "--tip\nlocal function deprecatedTip(old_name,new_name)\n    print(\"\\n********** \\n\"..old_name..\" was deprecated please use \".. new_name .. \" instead.\\n**********\")\nend\n\n--functions of WebSocket will be deprecated begin\nlocal targetPlatform = CCApplication:getInstance():getTargetPlatform()\nif (kTargetIphone == targetPlatform) or (kTargetIpad == targetPlatform) or (kTargetAndroid == targetPlatform) or (kTargetWindows == targetPlatform) then\n    local WebSocketDeprecated = { }\n    function WebSocketDeprecated.sendTextMsg(self, string)\n        deprecatedTip(\"WebSocket:sendTextMsg\",\"WebSocket:sendString\")\n        return self:sendString(string)\n    end\n    WebSocket.sendTextMsg = WebSocketDeprecated.sendTextMsg\n\n    function WebSocketDeprecated.sendBinaryMsg(self, table,tablesize)\n        deprecatedTip(\"WebSocket:sendBinaryMsg\",\"WebSocket:sendString\")\n        string.char(unpack(table))\n        return self:sendString(string.char(unpack(table)))\n    end\n    WebSocket.sendBinaryMsg = WebSocketDeprecated.sendBinaryMsg\nend\n--functions of WebSocket will be deprecated end\n"
  },
  {
    "path": "源代码/mir9/src/cocos/network/NetworkConstants.lua",
    "content": "\ncc = cc or {}\n\ncc.WEBSOCKET_OPEN     = 0\ncc.WEBSOCKET_MESSAGE  = 1\ncc.WEBSOCKET_CLOSE    = 2\ncc.WEBSOCKET_ERROR    = 3\n\ncc.WEBSOCKET_STATE_CONNECTING = 0\ncc.WEBSOCKET_STATE_OPEN       = 1\ncc.WEBSOCKET_STATE_CLOSING    = 2\ncc.WEBSOCKET_STATE_CLOSED     = 3\n\ncc.XMLHTTPREQUEST_RESPONSE_STRING       = 0\ncc.XMLHTTPREQUEST_RESPONSE_ARRAY_BUFFER = 1\ncc.XMLHTTPREQUEST_RESPONSE_BLOB         = 2\ncc.XMLHTTPREQUEST_RESPONSE_DOCUMENT     = 3\ncc.XMLHTTPREQUEST_RESPONSE_JSON         = 4\n"
  },
  {
    "path": "源代码/mir9/src/cocos/spine/SpineConstants.lua",
    "content": "\nsp = sp or {}\n\nsp.EventType =\n{\n    ANIMATION_START = 0, \n    ANIMATION_END = 1, \n    ANIMATION_COMPLETE = 2, \n    ANIMATION_EVENT = 3,\n}\n"
  },
  {
    "path": "源代码/mir9/src/cocos/ui/DeprecatedUIEnum.lua",
    "content": "\nLAYOUT_COLOR_NONE                      = ccui.LayoutBackGroundColorType.none\nLAYOUT_COLOR_SOLID                     = ccui.LayoutBackGroundColorType.solid\nLAYOUT_COLOR_GRADIENT                  = ccui.LayoutBackGroundColorType.gradient\n\nLAYOUT_ABSOLUTE                        = ccui.LayoutType.ABSOLUTE\nLAYOUT_LINEAR_VERTICAL                 = ccui.LayoutType.VERTICAL\nLAYOUT_LINEAR_HORIZONTAL               = ccui.LayoutType.HORIZONTAL\nLAYOUT_RELATIVE                        = ccui.LayoutType.RELATIVE\n\nBRIGHT_NONE                            = ccui.BrightStyle.none\nBRIGHT_NORMAL                          = ccui.BrightStyle.normal\nBRIGHT_HIGHLIGHT                       = ccui.BrightStyle.highlight\n\nUI_TEX_TYPE_LOCAL                      = ccui.TextureResType.localType\nUI_TEX_TYPE_PLIST                      = ccui.TextureResType.plistType\n\nTOUCH_EVENT_BEGAN                      = ccui.TouchEventType.began\nTOUCH_EVENT_MOVED                      = ccui.TouchEventType.moved\nTOUCH_EVENT_ENDED                      = ccui.TouchEventType.ended\nTOUCH_EVENT_CANCELED                   = ccui.TouchEventType.canceled\n\nSIZE_ABSOLUTE                          = ccui.SizeType.absolute\nSIZE_PERCENT                           = ccui.SizeType.percent\n\nPOSITION_ABSOLUTE                      = ccui.PositionType.absolute\nPOSITION_PERCENT                       = ccui.PositionType.percent\n\nCHECKBOX_STATE_EVENT_SELECTED          = ccui.CheckBoxEventType.selected\nCHECKBOX_STATE_EVENT_UNSELECTED        = ccui.CheckBoxEventType.unselected\n\nCHECKBOX_STATE_EVENT_SELECTED          = ccui.CheckBoxEventType.selected\nCHECKBOX_STATE_EVENT_UNSELECTED        = ccui.CheckBoxEventType.unselected\n\nLoadingBarTypeLeft                     = ccui.LoadingBarDirection.LEFT\nLoadingBarTypeRight                    = ccui.LoadingBarDirection.RIGHT\n\nLoadingBarTypeRight                    = ccui.SliderEventType.percent_changed\n\nTEXTFIELD_EVENT_ATTACH_WITH_IME        = ccui.TextFiledEventType.attach_with_ime\nTEXTFIELD_EVENT_DETACH_WITH_IME        = ccui.TextFiledEventType.detach_with_ime\nTEXTFIELD_EVENT_INSERT_TEXT            = ccui.TextFiledEventType.insert_text\nTEXTFIELD_EVENT_DELETE_BACKWARD        = ccui.TextFiledEventType.delete_backward\n\nSCROLLVIEW_EVENT_SCROLL_TO_TOP         = ccui.ScrollViewDir.none\nSCROLLVIEW_DIR_VERTICAL                = ccui.ScrollViewDir.vertical\nSCROLLVIEW_DIR_HORIZONTAL              = ccui.ScrollViewDir.horizontal\nSCROLLVIEW_DIR_BOTH                    = ccui.ScrollViewDir.both\n\nSCROLLVIEW_EVENT_SCROLL_TO_TOP         = ccui.ScrollviewEventType.scrollToTop\nSCROLLVIEW_EVENT_SCROLL_TO_BOTTOM      = ccui.ScrollviewEventType.scrollToBottom\nSCROLLVIEW_EVENT_SCROLL_TO_LEFT        = ccui.ScrollviewEventType.scrollToLeft\nSCROLLVIEW_EVENT_SCROLL_TO_RIGHT       = ccui.ScrollviewEventType.scrollToRight\nSCROLLVIEW_EVENT_SCROLLING             = ccui.ScrollviewEventType.scrolling\nSCROLLVIEW_EVENT_BOUNCE_TOP            = ccui.ScrollviewEventType.bounceTop\nSCROLLVIEW_EVENT_BOUNCE_BOTTOM         = ccui.ScrollviewEventType.bounceBottom\nSCROLLVIEW_EVENT_BOUNCE_LEFT           = ccui.ScrollviewEventType.bounceLeft\nSCROLLVIEW_EVENT_BOUNCE_RIGHT          = ccui.ScrollviewEventType.bounceRight\n\nPAGEVIEW_EVENT_TURNING                 = ccui.PageViewEventType.turning\n\nPAGEVIEW_TOUCHLEFT                     = ccui.PVTouchDir.touch_left\nPAGEVIEW_TOUCHRIGHT                    = ccui.PVTouchDir.touch_right\n\nLISTVIEW_DIR_NONE                      = ccui.ListViewDirection.none\nLISTVIEW_DIR_VERTICAL                  = ccui.ListViewDirection.vertical\nLISTVIEW_DIR_HORIZONTAL                = ccui.ListViewDirection.horizontal\n\nLISTVIEW_MOVE_DIR_NONE                 = ccui.ListViewMoveDirection.none\nLISTVIEW_MOVE_DIR_UP                   = ccui.ListViewMoveDirection.up\nLISTVIEW_MOVE_DIR_DOWN                 = ccui.ListViewMoveDirection.down\nLISTVIEW_MOVE_DIR_LEFT                 = ccui.ListViewMoveDirection.left\nLISTVIEW_MOVE_DIR_RIGHT                = ccui.ListViewMoveDirection.right\n\nLISTVIEW_EVENT_INIT_CHILD              = ccui.ListViewEventType.init_child\nLISTVIEW_EVENT_UPDATE_CHILD            = ccui.ListViewEventType.update_child\n\nLAYOUT_PARAMETER_NONE                  = ccui.LayoutParameterType.none\nLAYOUT_PARAMETER_LINEAR                = ccui.LayoutParameterType.linear\nLAYOUT_PARAMETER_RELATIVE              = ccui.LayoutParameterType.relative\n\nccui.LoadingBarType                    = ccui.LoadingBarDirection\nccui.LoadingBarType.left               = ccui.LoadingBarDirection.LEFT\nccui.LoadingBarType.right              = ccui.LoadingBarDirection.RIGHT\n\nccui.LayoutType.absolute               = ccui.LayoutType.ABSOLUTE\nccui.LayoutType.linearVertical         = ccui.LayoutType.VERTICAL\nccui.LayoutType.linearHorizontal       = ccui.LayoutType.HORIZONTAL\nccui.LayoutType.relative               = ccui.LayoutType.RELATIVE\n\nccui.ListViewEventType.onsSelectedItem = ccui.ListViewEventType.ONSELECTEDITEM_START\n"
  },
  {
    "path": "源代码/mir9/src/cocos/ui/DeprecatedUIFunc.lua",
    "content": "--tip\nlocal function deprecatedTip(old_name,new_name)\n    print(\"\\n********** \\n\"..old_name..\" was deprecated please use \".. new_name .. \" instead.\\n**********\")\nend\n\n--functions of ccui.Text will be deprecated begin\nlocal TextDeprecated = { }\nfunction TextDeprecated.setText(self, str)\n    deprecatedTip(\"ccui.Text:setText\",\"ccui.Text:setString\")\n    return self:setString(str)\nend\nccui.Text.setText = TextDeprecated.setText\n\nfunction TextDeprecated.getStringValue(self)\n    deprecatedTip(\"ccui.Text:getStringValue\",\"ccui.Text:getString\")\n    return self:getString()\nend\nccui.Text.getStringValue = TextDeprecated.getStringValue\n\n--functions of ccui.Text will be deprecated begin\n\n--functions of ccui.TextAtlas will be deprecated begin\nlocal TextAtlasDeprecated = { }\nfunction TextAtlasDeprecated.setStringValue(self, str)\n    deprecatedTip(\"ccui.TextAtlas:setStringValue\",\"ccui.TextAtlas:setString\")\n    return self:setString(str)\nend\nccui.TextAtlas.setStringValue = TextAtlasDeprecated.setStringValue\n\nfunction TextAtlasDeprecated.getStringValue(self)\n    deprecatedTip(\"ccui.TextAtlas:getStringValue\",\"ccui.TextAtlas:getString\")\n    return self:getString()\nend\nccui.TextAtlas.getStringValue = TextAtlasDeprecated.getStringValue\n--functions of ccui.TextAtlas will be deprecated begin\n\n\n--functions of ccui.TextBMFont will be deprecated begin\nlocal TextBMFontDeprecated = { }\nfunction TextBMFontDeprecated.setText(self, str)\n    deprecatedTip(\"ccui.TextBMFont:setText\",\"ccui.TextBMFont:setString\")\n    return self:setString(str)\nend\nccui.TextBMFont.setText =  TextBMFontDeprecated.setText\n\nfunction TextBMFontDeprecated.getStringValue(self)\n    deprecatedTip(\"ccui.Text:getStringValue\",\"ccui.TextBMFont:getString\")\n    return self:getString()\nend\nccui.Text.getStringValue = TextBMFontDeprecated.getStringValue\n--functions of ccui.TextBMFont will be deprecated begin\n\n--functions of cc.ShaderCache will be deprecated begin\nlocal ShaderCacheDeprecated = { }\nfunction ShaderCacheDeprecated.getProgram(self,strShader)\n    deprecatedTip(\"cc.ShaderCache:getProgram\",\"cc.ShaderCache:getGLProgram\")\n    return self:getGLProgram(strShader)\nend\ncc.ShaderCache.getProgram = ShaderCacheDeprecated.getProgram\n--functions of ccui.TextBMFont will be deprecated begin\n\n--functions of ccui.Widget will be deprecated begin\nlocal UIWidgetDeprecated = { }\nfunction UIWidgetDeprecated.getLeftInParent(self)\n    deprecatedTip(\"ccui.Widget:getLeftInParent\",\"ccui.Widget:getLeftBoundary\")\n    return self:getLeftBoundary()\nend\nccui.Widget.getLeftInParent = UIWidgetDeprecated.getLeftInParent\n\nfunction UIWidgetDeprecated.getBottomInParent(self)\n    deprecatedTip(\"ccui.Widget:getBottomInParent\",\"ccui.Widget:getBottomBoundary\")\n    return self:getBottomBoundary()\nend\nccui.Widget.getBottomInParent = UIWidgetDeprecated.getBottomInParent\n\nfunction UIWidgetDeprecated.getRightInParent(self)\n    deprecatedTip(\"ccui.Widget:getRightInParent\",\"ccui.Widget:getRightBoundary\")\n    return self:getRightBoundary()\nend\nccui.Widget.getRightInParent = UIWidgetDeprecated.getRightInParent\n\nfunction UIWidgetDeprecated.getTopInParent(self)\n    deprecatedTip(\"ccui.Widget:getTopInParent\",\"ccui.Widget:getTopBoundary\")\n    return self:getTopBoundary()\nend\nccui.Widget.getTopInParent = UIWidgetDeprecated.getTopInParent\n\nfunction UIWidgetDeprecated.getSize(self)\n    deprecatedTip(\"ccui.Widget:getSize\",\"ccui.Widget:getContentSize\")\n    return self:getContentSize()\nend\nccui.Widget.getSize = UIWidgetDeprecated.getSize\n\nfunction UIWidgetDeprecated.setSize(self, ...)\n    deprecatedTip(\"ccui.Widget:setSize\",\"ccui.Widget:setContentSize\")\n    return self:setContentSize(...)\nend\nccui.Widget.setSize = UIWidgetDeprecated.setSize\n\n--functions of ccui.Widget will be deprecated end\n\n--functions of ccui.CheckBox will be deprecated begin\nlocal UICheckBoxDeprecated = { }\nfunction UICheckBoxDeprecated.addEventListenerCheckBox(self,handler)\n    deprecatedTip(\"ccui.CheckBox:addEventListenerCheckBox\",\"ccui.CheckBox:addEventListener\")\n    return self:addEventListener(handler)\nend\nccui.CheckBox.addEventListenerCheckBox = UICheckBoxDeprecated.addEventListenerCheckBox\n\nfunction UICheckBoxDeprecated.setSelectedState(self,flag)\n   deprecatedTip(\"ccui.CheckBox:setSelectedState\", \"ccui.CheckBox:setSelected\")\n   return self:setSelected(flag)\nend\nccui.CheckBox.setSelectedState = UICheckBoxDeprecated.setSelectedState\n\nfunction UICheckBoxDeprecated.getSelectedState(self)\n   deprecatedTip(\"ccui.CheckBox:getSelectedState\", \"ccui.CheckBox:getSelected\")\n   return self:getSelected()\nend\nccui.CheckBox.getSelectedState = UICheckBoxDeprecated.setSelectedState\n\n--functions of ccui.CheckBox will be deprecated end\n\n--functions of ccui.Slider will be deprecated begin\nlocal UISliderDeprecated = { }\nfunction UISliderDeprecated.addEventListenerSlider(self,handler)\n    deprecatedTip(\"ccui.Slider:addEventListenerSlider\",\"ccui.Slider:addEventListener\")\n    return self:addEventListener(handler)\nend\nccui.Slider.addEventListenerSlider = UISliderDeprecated.addEventListenerSlider\n--functions of ccui.Slider will be deprecated end\n\n--functions of ccui.TextField will be deprecated begin\nlocal UITextFieldDeprecated = { }\nfunction UITextFieldDeprecated.addEventListenerTextField(self,handler)\n    deprecatedTip(\"ccui.TextField:addEventListenerTextField\",\"ccui.TextField:addEventListener\")\n    return self:addEventListener(handler)\nend\nccui.TextField.addEventListenerTextField = UITextFieldDeprecated.addEventListenerTextField\n\nfunction UITextFieldDeprecated.setText(self, str)\n    deprecatedTip(\"ccui.TextField:setText\",\"ccui.TextField:setString\")\n    return self:setString(str)\nend\nccui.TextField.setText = UITextFieldDeprecated.setText\n\nfunction UITextFieldDeprecated.getStringValue(self)\n    deprecatedTip(\"ccui.TextField:getStringValue\",\"ccui.TextField:getString\")\n    return self:getString()\nend\nccui.TextField.getStringValue = UITextFieldDeprecated.getStringValue\n--functions of ccui.TextField will be deprecated end\n\n--functions of ccui.PageView will be deprecated begin\nlocal UIPageViewDeprecated = { }\nfunction UIPageViewDeprecated.addEventListenerPageView(self,handler)\n    deprecatedTip(\"ccui.PageView:addEventListenerPageView\",\"ccui.PageView:addEventListener\")\n    return self:addEventListener(handler)\nend\nccui.PageView.addEventListenerPageView = UIPageViewDeprecated.addEventListenerPageView\n--functions of ccui.PageView will be deprecated end\n\n--functions of ccui.ScrollView will be deprecated begin\nlocal UIScrollViewDeprecated = { }\nfunction UIScrollViewDeprecated.addEventListenerScrollView(self,handler)\n    deprecatedTip(\"ccui.ScrollView:addEventListenerScrollView\",\"ccui.ScrollView:addEventListener\")\n    return self:addEventListener(handler)\nend\nccui.ScrollView.addEventListenerScrollView = UIScrollViewDeprecated.addEventListenerScrollView\n--functions of ccui.ScrollView will be deprecated end\n\n--functions of ccui.ListView will be deprecated begin\nlocal UIListViewDeprecated = { }\nfunction UIListViewDeprecated.addEventListenerListView(self,handler)\n    deprecatedTip(\"ccui.ListView:addEventListenerListView\",\"ccui.ListView:addEventListener\")\n    return self:addEventListener(handler)\nend\nccui.ListView.addEventListenerListView = UIListViewDeprecated.addEventListenerListView\n--functions of ccui.ListView will be deprecated end\n"
  },
  {
    "path": "源代码/mir9/src/cocos/ui/GuiConstants.lua",
    "content": "\nccui = ccui or {}\n\nccui.BrightStyle =\n{\n    none = -1,\n    normal = 0,\n    highlight = 1,\n}\n\nccui.TextureResType =\n{\n    localType = 0,\n    plistType = 1,\n}\n\nccui.TouchEventType =\n{\n    began = 0,\n    moved = 1,\n    ended = 2,\n    canceled = 3,\n}\n\nccui.SizeType =\n{\n    absolute = 0,\n    percent = 1,\n}\n\nccui.PositionType = {\n    absolute = 0,\n    percent = 1,\n}\n\nccui.CheckBoxEventType =\n{\n    selected = 0,\n    unselected = 1,\n}\n\nccui.TextFiledEventType =\n{\n    attach_with_ime = 0,\n    detach_with_ime = 1,\n    insert_text = 2,\n    delete_backward = 3,\n}\n\nccui.LayoutBackGroundColorType =\n{\n    none = 0,\n    solid = 1,\n    gradient = 2,\n}\n\nccui.LayoutType =\n{\n    ABSOLUTE = 0,\n    VERTICAL = 1,\n    HORIZONTAL = 2,\n    RELATIVE = 3,\n}\n\nccui.LayoutParameterType =\n{\n    none = 0,\n    linear = 1,\n    relative = 2,\n}\n\nccui.LinearGravity =\n{\n    none = 0,\n    left = 1,\n    top = 2,\n    right = 3,\n    bottom = 4,\n    centerVertical = 5,\n    centerHorizontal = 6,\n}\n\nccui.RelativeAlign =\n{\n    alignNone = 0,\n    alignParentTopLeft = 1,\n    alignParentTopCenterHorizontal = 2,\n    alignParentTopRight = 3,\n    alignParentLeftCenterVertical = 4,\n    centerInParent = 5,\n    alignParentRightCenterVertical = 6,\n    alignParentLeftBottom = 7,\n    alignParentBottomCenterHorizontal = 8,\n    alignParentRightBottom = 9,\n    locationAboveLeftAlign = 10,\n    locationAboveCenter = 11,\n    locationAboveRightAlign = 12,\n    locationLeftOfTopAlign = 13,\n    locationLeftOfCenter = 14,\n    locationLeftOfBottomAlign = 15,\n    locationRightOfTopAlign = 16,\n    locationRightOfCenter = 17,\n    locationRightOfBottomAlign = 18,\n    locationBelowLeftAlign = 19,\n    locationBelowCenter = 20,\n    locationBelowRightAlign = 21,\n}\n\nccui.SliderEventType = {percentChanged = 0}\n\nccui.LoadingBarDirection = { LEFT = 0, RIGHT = 1}\n\nccui.ScrollViewDir = {\n    none = 0,\n    vertical = 1,\n    horizontal = 2,\n    both = 3,\n}\n\nccui.ScrollViewMoveDir = {\n    none = 0,\n    up = 1,\n    down = 2,\n    left = 3,\n    right = 4,\n}\n\nccui.ScrollviewEventType = {\n    scrollToTop =  0,\n    scrollToBottom =  1,\n    scrollToLeft = 2,\n    scrollToRight = 3,\n    scrolling = 4,\n    bounceTop = 5,\n    bounceBottom = 6,\n    bounceLeft = 7,\n    bounceRight = 8,\n}\n\nccui.ListViewDirection = {\n    none = 0,\n    vertical = 1,\n    horizontal = 2,\n}\n\nccui.ListViewMoveDirection = {\n    none = 0,\n    up = 1,\n    down = 2,\n    left = 3,\n    right = 4,\n}\n\nccui.ListViewEventType = {\n    ONSELECTEDITEM_START = 0,\n    ONSELECTEDITEM_END   = 1,\n}\n\nccui.PageViewEventType = {\n   turning = 0,\n}\n\nccui.PVTouchDir = {\n    touchLeft = 0,\n    touchRight = 1,\n}\n\nccui.ListViewGravity = {\n    left = 0,\n    right = 1,\n    centerHorizontal = 2,\n    top = 3,\n    bottom = 4 ,\n    centerVertical = 5,\n}\n\nccui.TextType = {\n    SYSTEM = 0,\n    TTF    = 1,\n}\n"
  },
  {
    "path": "源代码/mir9/src/cocos/ui/experimentalUIConstants.lua",
    "content": "ccexp = ccexp or {}\n\n\nccexp.VideoPlayerEvent = {\n    PLAYING = 0,\n    PAUSED = 1,\n    STOPPED= 2,\n    COMPLETED =3,\n}\n"
  },
  {
    "path": "源代码/mir9/src/config.lua",
    "content": "\n-- 0 - disable debug info, 1 - less debug info, 2 - verbose debug info\nDEBUG = 1\n\n-- display FPS stats on screen\nDEBUG_FPS = true\n\n-- dump memory info every 10 seconds\nDEBUG_MEM = false\n\n-- load deprecated API\nLOAD_DEPRECATED_API = false\n\n-- load shortcodes API\nLOAD_SHORTCODES_API = true\n\n-- screen orientation\nCONFIG_SCREEN_ORIENTATION = \"landscape\"\n\n-- design resolution\nCONFIG_SCREEN_WIDTH  = 960\nCONFIG_SCREEN_HEIGHT = 640\n\n-- auto scale mode\nCONFIG_SCREEN_AUTOSCALE = \"FIXED_HEIGHT\"\n"
  },
  {
    "path": "源代码/mir9/src/framework/anysdkConst.lua",
    "content": "\nfunction CreatEnumTable(tbl, index) \n    local enumtbl = {} \n    local enumindex = index or 0 \n    for i, v in ipairs(tbl) do \n        enumtbl[v] = enumindex + i - 1\n    end \n    return enumtbl \nend \n\nPlugin_type = {\n    \"kPluginAds\",\n    \"kPluginAnalytics\",\n    \"kPluginIAP\",\n    \"kPluginShare\",\n    \"kPluginUser\",\n    \"kPluginSocial\",\n    \"kPluginPush\"\n}\nPlugin_type = CreatEnumTable(Plugin_type, 1)\n\n-- for ads\nAdsResultCode = {\n    \"kAdsReceived\",           \t--/**< enum the callback: the ad is received is at center. */\n    \"kAdsShown\",                  --/**< enum the callback: the advertisement dismissed. */\n    \"kAdsDismissed\",             --/**< enum the callback: the advertisement dismissed. */\n    \"kPointsSpendSucceed\",       --/**< enum the callback: the points spend succeed. */\n    \"kPointsSpendFailed\",        --/**< enum the callback: the points spend failed. */\n    \"kNetworkError\",              --/**< enum the callback of Network error at center. */\n    \"kUnknownError\",              --/**< enum the callback of Unknown error. */\n    \"kOfferWallOnPointsChanged\",   --/**< enum the callback of Changing the point of offerwall. */\n};\t--ads result code\nAdsResultCode = CreatEnumTable(AdsResultCode, 0)\n\nAdsPos = {\n    \"kPosCenter\",\t\t\t--/**< enum the toolbar is at center. */\n    \"kPosTop\",\t\t\t\t--/**< enum the toolbar is at top. */\n    \"kPosTopLeft\",\t\t\t--/**< enum the toolbar is at topleft. */\n    \"kPosTopRight\",\t\t\t--/**< enum the toolbar is at topright. */\n    \"kPosBottom\",\t\t\t\t--/**< enum the toolbar is at bottom. */\n    \"kPosBottomLeft\",\t\t\t--/**< enum the toolbar is at bottomleft. */\n    \"kPosBottomRight\" \t\t--/**< enum the toolbar is at bottomright. */\n};\t--ads pos\nAdsPos = CreatEnumTable(AdsPos, 0)\n\nAdsType = {\n\t\"AD_TYPE_BANNER\",\t\t--/**< enum value is banner ads . */\n\t\"AD_TYPE_FULLSCREEN\",\t--/**< enum value is fullscreen ads . */\n\t\"AD_TYPE_MOREAPP\",\t\t--/**< enum value is moreapp ads . */\n\t\"AD_TYPE_OFFERWALL\"\t--/**< enum value is offerwall ads . */\n};\t--ads type\nAdsType = CreatEnumTable(AdsType, 0)\n\n--for pay result code\nPayResultCode = {\n    \"kPaySuccess\",\t\t--/**< enum value is callback of succeeding in paying . */\n    \"kPayFail\",\t\t\t--/**< enum value is callback of failing to pay . */\n    \"kPayCancel\",\t\t--/**< enum value is callback of canceling to pay . */\n    \"kPayNetworkError\",\t--/**< enum value is callback of network error . */\n    \"kPayProductionInforIncomplete\",\t--/**< enum value is callback of incompleting info . */\n\t\"kPayInitSuccess\",\t--/**< enum value is callback of succeeding in initing sdk . */\n\t\"kPayInitFail\",\t\t--/**< enum value is callback of failing to init sdk . */\n\t\"kPayNowPaying\" \t--/**< enum value is callback of paying now . */\n};\nPayResultCode = CreatEnumTable(PayResultCode, 0)\n\n-- for push action result code\nPushActionResultCode = {\n\t\"kPushReceiveMessage\"\t--/**value is callback of Receiving Message . */\n};\nPushActionResultCode = CreatEnumTable(PushActionResultCode, 0)\n\n-- for share result code\nShareResultCode = {\n    \"kShareSuccess\",\t--/**< enum value is callback of failing to sharing . */\n    \"kShareFail\",\t\t--/**< enum value is callback of failing to share . */\n    \"kShareCancel\",\t\t--/**< enum value is callback of canceling to share . */\n    \"kShareNetworkError\"\t--/**< enum value is callback of network error . */\n};\nShareResultCode = CreatEnumTable(ShareResultCode, 0)\n\n--for social ret code\nSocialRetCode = {\n\t-- code for leaderboard feature\n\t\"kScoreSubmitSucceed\",\t\t--/**< enum value is callback of succeeding in submiting. */\n    \"kScoreSubmitfail\",\t\t\t--/**< enum value is callback of failing to submit . */\n    -- code for achievement feature\n    \"kAchUnlockSucceed\",\t\t--/**< enum value is callback of succeeding in unlocking. */\n    \"kAchUnlockFail\",\t\t\t--/**< enum value is callback of failing to  unlock. */\n    \"kSocialSignInSucceed\",\t\t--/**< enum value is callback of succeeding to login. */\n    \"kSocialSignInFail\",\t\t--/**< enum value is callback of failing to  login. */\n    \"kSocialSignOutSucceed\",\t--/**< enum value is callback of succeeding to login. */\n    \"kSocialSignOutFail\"\t\t--/**< enum value is callback of failing to  login. */\n};\nSocialRetCode = CreatEnumTable(SocialRetCode, 1)\n\n-- for user action result code\nUserActionResultCode = {\n\t\"kInitSuccess\",\t\t--/**< enum value is callback of succeeding in initing sdk. */\n\t\"kInitFail\",     \t\t--/**< enum  value is callback of failing to init sdk. */\n    \"kLoginSuccess\",\t    --/**< enum value is callback of succeeding in login.*/\n    \"kLoginNetworkError\",\t--/**< enum value is callback of network error*/\n    \"kLoginNoNeed\",\t\t--/**< enum value is callback of no need login.*/\n    \"kLoginFail\",\t\t--/**< enum value is callback of failing to login. */\n    \"kLoginCancel\",\t\t--/**< enum value is callback of canceling to login. */\n    \"kLogoutSuccess\", \t--/**< enum value is callback of succeeding in logout. */\n    \"kLogoutFail\",\t\t--/**< enum value is callback of failing to logout. */\n    \"kPlatformEnter\", \t--/**< enum value is callback after enter platform. */\n    \"kPlatformBack\",  \t--/**< enum value is callback after exit antiAddiction. */\n    \"kPausePage\", \t\t--/**< enum value is callback after exit pause page. */\n    \"kExitPage\",  \t\t--/**< enum value is callback after exit exit page. */\n    \"kAntiAddictionQuery\",\t--/**< enum value is callback after querying antiAddiction. */\n    \"kRealNameRegister\",\t--/**< enum value is callback after registering realname. */\n    \"kAccountSwitchSuccess\",\t--/**< enum alue is callback of succeeding in switching account. */\n    \"kAccountSwitchFail\"\t--/**< enum value is callback of failing to switch account. */\n};\nUserActionResultCode = CreatEnumTable(UserActionResultCode, 0)\n\n-- for toolBar place\nToolBarPlace = {\n    \"kToolBarTopLeft\",\t\t--/**< enum the toolbar is at topleft. */\n    \"kToolBarTopRight\",\t\t--/**< enum the toolbar is at topright. */\n    \"kToolBarMidLeft\",\t\t--/**< enum the toolbar is at midleft. */\n    \"kToolBarMidRight\",\t\t--/**< enum the toolbar is at midright. */\n    \"kToolBarBottomLeft\", \t--/**< enum the toolbar is at bottomleft. */\n    \"kToolBarBottomRight\" \t--/**< enum the toolbar is at bottomright. */\n};\nToolBarPlace = CreatEnumTable(ToolBarPlace, 1)\n"
  },
  {
    "path": "源代码/mir9/src/framework/audio.lua",
    "content": "--[[\n\nCopyright (c) 2011-2014 chukong-inc.com\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in\nall copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\nTHE SOFTWARE.\n\n]]\n\n--------------------------------\n-- @module audio\n\n--[[--\n\n播放音乐、音效\n\n]]\n\nlocal audio = {}\n\nlocal sharedEngine = cc.SimpleAudioEngine:getInstance()\n\n\n-- start --\n\n--------------------------------\n-- 返回音乐的音量值\n-- @function [parent=#audio] getMusicVolume\n-- @return number#number ret (return value: number)  返回值在 0.0 到 1.0 之间，0.0 表示完全静音，1.0 表示 100% 音量\n\n-- end --\n\nfunction audio.getMusicVolume()\n    local volume = sharedEngine:getMusicVolume()\n    if DEBUG > 1 then\n        printInfo(\"audio.getMusicVolume() - volume: %0.1f\", volume)\n    end\n    return volume\nend\n\n-- start --\n\n--------------------------------\n-- 设置音乐的音量\n-- @function [parent=#audio] setMusicVolume\n-- @param number volume 音量在 0.0 到 1.0 之间, 0.0 表示完全静音，1.0 表示 100% 音量\n\n-- end --\n\nfunction audio.setMusicVolume(volume)\n    volume = checknumber(volume)\n    if DEBUG > 1 then\n        printInfo(\"audio.setMusicVolume() - volume: %0.1f\", volume)\n    end\n    sharedEngine:setMusicVolume(volume)\nend\n\n-- start --\n\n--------------------------------\n-- 返回音效的音量值\n-- @function [parent=#audio] getSoundsVolume\n-- @return number#number ret (return value: number)  返回值在 0.0 到 1.0 之间, 0.0 表示完全静音，1.0 表示 100% 音量\n\n-- end --\n\nfunction audio.getSoundsVolume()\n    local volume = sharedEngine:getEffectsVolume()\n    if DEBUG > 1 then\n        printInfo(\"audio.getSoundsVolume() - volume: %0.1f\", volume)\n    end\n    return volume\nend\n\n-- start --\n\n--------------------------------\n-- 设置音效的音量\n-- @function [parent=#audio] setSoundsVolume\n-- @param number volume 音量在 0.0 到 1.0 之间, 0.0 表示完全静音，1.0 表示 100% 音量\n\n-- end --\n\nfunction audio.setSoundsVolume(volume)\n    volume = checknumber(volume)\n    if DEBUG > 1 then\n        printInfo(\"audio.setSoundsVolume() - volume: %0.1f\", volume)\n    end\n    sharedEngine:setEffectsVolume(volume)\nend\n\n-- start --\n\n--------------------------------\n-- 预载入一个音乐文件\n-- @function [parent=#audio] preloadMusic\n-- @param string filename 音乐文件名\n\n-- end --\n\nfunction audio.preloadMusic(filename)\n    if not filename then\n        printError(\"audio.preloadMusic() - invalid filename\")\n        return\n    end\n    if DEBUG > 1 then\n        printInfo(\"audio.preloadMusic() - filename: %s\", tostring(filename))\n    end\n    sharedEngine:preloadMusic(filename)\nend\n\n-- start --\n\n--------------------------------\n-- 播放音乐\n-- @function [parent=#audio] playMusic\n-- @param string filename 音乐文件名\n-- @param boolean isLoop 是否循环播放，默认为 true\n\n-- end --\n\nfunction audio.playMusic(filename, isLoop)\n    if not filename then\n        printError(\"audio.playMusic() - invalid filename\")\n        return\n    end\n    if type(isLoop) ~= \"boolean\" then isLoop = true end\n\n    audio.stopMusic()\n    if DEBUG > 1 then\n        printInfo(\"audio.playMusic() - filename: %s, isLoop: %s\", tostring(filename), tostring(isLoop))\n    end\n    sharedEngine:playMusic(filename, isLoop)\nend\n\n-- start --\n\n--------------------------------\n-- 停止播放音乐\n-- @function [parent=#audio] stopMusic\n-- @param boolean isReleaseData 是否释放音乐数据，默认为 true\n\n-- end --\n\nfunction audio.stopMusic(isReleaseData)\n    isReleaseData = checkbool(isReleaseData)\n    if DEBUG > 1 then\n        printInfo(\"audio.stopMusic() - isReleaseData: %s\", tostring(isReleaseData))\n    end\n    sharedEngine:stopMusic(isReleaseData)\nend\n\n-- start --\n\n--------------------------------\n-- 暂停音乐的播放\n-- @function [parent=#audio] pauseMusic\n\n-- end --\n\nfunction audio.pauseMusic()\n    if DEBUG > 1 then\n        printInfo(\"audio.pauseMusic()\")\n    end\n    sharedEngine:pauseMusic()\nend\n\n-- start --\n\n--------------------------------\n-- 恢复暂停的音乐\n-- @function [parent=#audio] resumeMusic\n\n-- end --\n\nfunction audio.resumeMusic()\n    if DEBUG > 1 then\n        printInfo(\"audio.resumeMusic()\")\n    end\n    sharedEngine:resumeMusic()\nend\n\n-- start --\n\n--------------------------------\n-- 从头开始重新播放当前音乐\n-- @function [parent=#audio] rewindMusic\n\n-- end --\n\nfunction audio.rewindMusic()\n    if DEBUG > 1 then\n        printInfo(\"audio.rewindMusic()\")\n    end\n    sharedEngine:rewindMusic()\nend\n\n-- start --\n\n--------------------------------\n-- 检查是否可以开始播放音乐\n-- 如果可以则返回 true。\n-- 如果尚未载入音乐，或者载入的音乐格式不被设备所支持，该方法将返回 false。\n-- @function [parent=#audio] willPlayMusic\n-- @return boolean#boolean ret (return value: bool) \n\n-- end --\n\nfunction audio.willPlayMusic()\n    local ret = sharedEngine:willPlayMusic()\n    if DEBUG > 1 then\n        printInfo(\"audio.willPlayMusic() - ret: %s\", tostring(ret))\n    end\n    return ret\nend\n\n-- start --\n\n--------------------------------\n-- 检查当前是否正在播放音乐\n-- @function [parent=#audio] isMusicPlaying\n-- @return boolean#boolean ret (return value: bool) \n\n-- end --\n\nfunction audio.isMusicPlaying()\n    local ret = sharedEngine:isMusicPlaying()\n    if DEBUG > 1 then\n        printInfo(\"audio.isMusicPlaying() - ret: %s\", tostring(ret))\n    end\n    return ret\nend\n\n-- start --\n\n--------------------------------\n-- 播放音效，并返回音效句柄\n-- 如果音效尚未载入，则会载入后开始播放。\n-- 该方法返回的音效句柄用于 audio.stopSound()、audio.pauseSound() 等方法。\n-- @function [parent=#audio] playSound\n-- @param string filename 音效文件名\n-- @param boolean isLoop 是否重复播放，默认为 false\n-- @return integer#integer ret (return value: int)  音效句柄\n\n-- end --\n\nfunction audio.playSound(filename, isLoop)\n    if not filename then\n        printError(\"audio.playSound() - invalid filename\")\n        return\n    end\n    if type(isLoop) ~= \"boolean\" then isLoop = false end\n    if DEBUG > 1 then\n        printInfo(\"audio.playSound() - filename: %s, isLoop: %s\", tostring(filename), tostring(isLoop))\n    end\n    return sharedEngine:playEffect(filename, isLoop)\nend\n\n-- start --\n\n--------------------------------\n-- 暂停指定的音效\n-- @function [parent=#audio] pauseSound\n-- @param integer 音效句柄\n\n-- end --\n\nfunction audio.pauseSound(handle)\n    if not handle then\n        printError(\"audio.pauseSound() - invalid handle\")\n        return\n    end\n    if DEBUG > 1 then\n        printInfo(\"audio.pauseSound() - handle: %s\", tostring(handle))\n    end\n    sharedEngine:pauseEffect(handle)\nend\n\n-- start --\n\n--------------------------------\n-- 暂停所有音效\n-- @function [parent=#audio] pauseAllSounds\n\n-- end --\n\nfunction audio.pauseAllSounds()\n    if DEBUG > 1 then\n        printInfo(\"audio.pauseAllSounds()\")\n    end\n    sharedEngine:pauseAllEffects()\nend\n\n-- start --\n\n--------------------------------\n-- 恢复暂停的音效\n-- @function [parent=#audio] resumeSound\n-- @param integer 音效句柄\n\n-- end --\n\nfunction audio.resumeSound(handle)\n    if not handle then\n        printError(\"audio.resumeSound() - invalid handle\")\n        return\n    end\n    if DEBUG > 1 then\n        printInfo(\"audio.resumeSound() - handle: %s\", tostring(handle))\n    end\n    sharedEngine:resumeEffect(handle)\nend\n\n-- start --\n\n--------------------------------\n-- 恢复所有的音效\n-- @function [parent=#audio] resumeAllSounds\n\n-- end --\n\nfunction audio.resumeAllSounds()\n    if DEBUG > 1 then\n        printInfo(\"audio.resumeAllSounds()\")\n    end\n    sharedEngine:resumeAllEffects()\nend\n\n-- start --\n\n--------------------------------\n-- 停止指定的音效\n-- @function [parent=#audio] stopSound\n-- @param integer 音效句柄\n\n-- end --\n\nfunction audio.stopSound(handle)\n    if not handle then\n        printError(\"audio.stopSound() - invalid handle\")\n        return\n    end\n    if DEBUG > 1 then\n        printInfo(\"audio.stopSound() - handle: %s\", tostring(handle))\n    end\n    sharedEngine:stopEffect(handle)\nend\n\n-- start --\n\n--------------------------------\n-- 停止所有音效\n-- @function [parent=#audio] stopAllSounds\n\n-- end --\n\nfunction audio.stopAllSounds()\n    if DEBUG > 1 then\n        printInfo(\"audio.stopAllSounds()\")\n    end\n    sharedEngine:stopAllEffects()\nend\n\n-- start --\n\n--------------------------------\n-- 预载入一个音效文件\n-- @function [parent=#audio] preloadSound\n-- @param string 音效文件名\n\n-- end --\n\nfunction audio.preloadSound(filename)\n    if not filename then\n        printError(\"audio.preloadSound() - invalid filename\")\n        return\n    end\n    if DEBUG > 1 then\n        printInfo(\"audio.preloadSound() - filename: %s\", tostring(filename))\n    end\n    sharedEngine:preloadEffect(filename)\nend\n\n-- start --\n\n--------------------------------\n-- 从内存卸载一个音效\n-- @function [parent=#audio] unloadSound\n-- @param string 音效文件名\n\n-- end --\n\nfunction audio.unloadSound(filename)\n    if not filename then\n        printError(\"audio.unloadSound() - invalid filename\")\n        return\n    end\n    if DEBUG > 1 then\n        printInfo(\"audio.unloadSound() - filename: %s\", tostring(filename))\n    end\n    sharedEngine:unloadEffect(filename)\nend\n\nreturn audio\n"
  },
  {
    "path": "源代码/mir9/src/framework/cc/EventProxy.lua",
    "content": "\nlocal EventProxy = class(\"EventProxy\")\n\nfunction EventProxy:ctor(eventDispatcher, view)\n    self.eventDispatcher_ = eventDispatcher\n    self.handles_ = {}\n\n    if view then\n        cc(view):addNodeEventListener(cc.NODE_EVENT, function(event)\n            if event.name == \"exit\" then\n                self:removeAllEventListeners()\n            end\n        end)\n    end\nend\n\nfunction EventProxy:addEventListener(eventName, listener, data)\n    local handle = self.eventDispatcher_:addEventListener(eventName, listener, data)\n    self.handles_[#self.handles_ + 1] = {eventName, handle}\n    return self, handle\nend\n\nfunction EventProxy:removeEventListener(eventHandle)\n    self.eventDispatcher_:removeEventListener(eventHandle)\n    for index, handle in pairs(self.handles_) do\n        if handle[2] == eventHandle then\n            table.remove(self.handles_, index)\n            break\n        end\n    end\n    return self\nend\n\nfunction EventProxy:removeAllEventListenersForEvent(eventName)\n    for key, handle in pairs(self.handles_) do\n        if handle[1] == eventName then\n            self.eventDispatcher_:removeEventListenersByEvent(eventName)\n            self.handles_[key] = nil\n        end\n    end\n    return self\nend\n\nfunction EventProxy:getEventHandle(eventName)\n    for key, handle in pairs(self.handles_) do\n        if handle[1] == eventName then\n            return handle[2]\n        end\n    end\nend\n\nfunction EventProxy:removeAllEventListeners()\n    for _, handle in pairs(self.handles_) do\n        self.eventDispatcher_:removeEventListener(handle[2])\n    end\n    self.handles_ = {}\n    return self\nend\n\nreturn EventProxy\n"
  },
  {
    "path": "源代码/mir9/src/framework/cc/GameObject.lua",
    "content": "\nlocal Registry = import(\".Registry\")\n\nlocal GameObject = {}\n\nfunction GameObject.extend(target)\n    target.components_ = {}\n\n    function target:checkComponent(name)\n        return self.components_[name] ~= nil\n    end\n\n    function target:addComponent(name)\n        local component = Registry.newObject(name)\n        self.components_[name] = component\n        component:bind_(self)\n        return component\n    end\n\n    function target:removeComponent(name)\n        local component = self.components_[name]\n        if component then component:unbind_() end\n        self.components_[name] = nil\n    end\n\n    function target:getComponent(name)\n        return self.components_[name]\n    end\n\n    return target\nend\n\nreturn GameObject\n"
  },
  {
    "path": "源代码/mir9/src/framework/cc/Registry.lua",
    "content": "\nlocal Registry = class(\"Registry\")\n\nRegistry.classes_ = {}\nRegistry.objects_ = {}\n\nfunction Registry.add(cls, name)\n    assert(type(cls) == \"table\" and cls.__cname ~= nil, \"Registry.add() - invalid class\")\n    if not name then name = cls.__cname end\n    assert(Registry.classes_[name] == nil, string.format(\"Registry.add() - class \\\"%s\\\" already exists\", tostring(name)))\n    Registry.classes_[name] = cls\nend\n\nfunction Registry.remove(name)\n    assert(Registry.classes_[name] ~= nil, string.format(\"Registry.remove() - class \\\"%s\\\" not found\", name))\n    Registry.classes_[name] = nil\nend\n\nfunction Registry.exists(name)\n    return Registry.classes_[name] ~= nil\nend\n\nfunction Registry.newObject(name, ...)\n    local cls = Registry.classes_[name]\n    if not cls then\n        -- auto load\n        pcall(function()\n            cls = require(name)\n            Registry.add(cls, name)\n        end)\n    end\n    assert(cls ~= nil, string.format(\"Registry.newObject() - invalid class \\\"%s\\\"\", tostring(name)))\n    return cls.new(...)\nend\n\nfunction Registry.setObject(object, name)\n    assert(Registry.objects_[name] == nil, string.format(\"Registry.setObject() - object \\\"%s\\\" already exists\", tostring(name)))\n    assert(object ~= nil, \"Registry.setObject() - object \\\"%s\\\" is nil\", tostring(name))\n    Registry.objects_[name] = object\nend\n\nfunction Registry.getObject(name)\n    assert(Registry.objects_[name] ~= nil, string.format(\"Registry.getObject() - object \\\"%s\\\" not exists\", tostring(name)))\n    return Registry.objects_[name]\nend\n\nfunction Registry.removeObject(name)\n    assert(Registry.objects_[name] ~= nil, string.format(\"Registry.removeObject() - object \\\"%s\\\" not exists\", tostring(name)))\n    Registry.objects_[name] = nil\nend\n\nfunction Registry.isObjectExists(name)\n    return Registry.objects_[name] ~= nil\nend\n\nreturn Registry\n"
  },
  {
    "path": "源代码/mir9/src/framework/cc/components/Component.lua",
    "content": "\nlocal Component = class(\"Component\")\n\nfunction Component:ctor(name, depends)\n    self.name_ = name\n    self.depends_ = checktable(depends)\nend\n\nfunction Component:getName()\n    return self.name_\nend\n\nfunction Component:getDepends()\n    return self.depends_\nend\n\nfunction Component:getTarget()\n    return self.target_\nend\n\nfunction Component:exportMethods_(methods)\n    self.exportedMethods_ = methods\n    local target = self.target_\n    local com = self\n    for _, key in ipairs(methods) do\n        if not target[key] then\n            local m = com[key]\n            target[key] = function(__, ...)\n                return m(com, ...)\n            end\n        end\n    end\n    return self\nend\n\nfunction Component:bind_(target)\n    self.target_ = target\n    for _, name in ipairs(self.depends_) do\n        if not target:checkComponent(name) then\n            target:addComponent(name)\n        end\n    end\n    self:onBind_(target)\nend\n\nfunction Component:unbind_()\n    if self.exportedMethods_ then\n        local target = self.target_\n        for _, key in ipairs(self.exportedMethods_) do\n            target[key] = nil\n        end\n    end\n    self:onUnbind_()\nend\n\nfunction Component:onBind_()\nend\n\nfunction Component:onUnbind_()\nend\n\nreturn Component\n"
  },
  {
    "path": "源代码/mir9/src/framework/cc/components/behavior/EventProtocol.lua",
    "content": "\nlocal Component = import(\"..Component\")\nlocal EventProtocol = class(\"EventProtocol\", Component)\n\nfunction EventProtocol:ctor()\n    EventProtocol.super.ctor(self, \"EventProtocol\")\n    self.listeners_ = {}\n    self.nextListenerHandleIndex_ = 0\nend\n\nfunction EventProtocol:addEventListener(eventName, listener, tag)\n    assert(type(eventName) == \"string\" and eventName ~= \"\",\n        \"EventProtocol:addEventListener() - invalid eventName\")\n    eventName = string.upper(eventName)\n    if self.listeners_[eventName] == nil then\n        self.listeners_[eventName] = {}\n    end\n\n    local ttag = type(tag)\n    if ttag == \"table\" or ttag == \"userdata\" then\n        PRINT_DEPRECATED(\"EventProtocol:addEventListener(eventName, listener, target) is deprecated, please use EventProtocol:addEventListener(eventName, handler(target, listener), tag)\")\n        listener = handler(tag, listener)\n        tag = \"\"\n    end\n\n    self.nextListenerHandleIndex_ = self.nextListenerHandleIndex_ + 1\n    local handle = tostring(self.nextListenerHandleIndex_)\n    tag = tag or \"\"\n    self.listeners_[eventName][handle] = {listener, tag}\n\n    if DEBUG > 1 then\n        printInfo(\"%s [EventProtocol] addEventListener() - event: %s, handle: %s, tag: %s\", tostring(self.target_), eventName, handle, tostring(tag))\n    end\n\n    return handle\nend\n\nfunction EventProtocol:dispatchEvent(event)\n    event.name = string.upper(tostring(event.name))\n    local eventName = event.name\n    if DEBUG > 1 then\n        printInfo(\"%s [EventProtocol] dispatchEvent() - event %s\", tostring(self.target_), eventName)\n    end\n\n    if self.listeners_[eventName] == nil then return end\n    event.target = self.target_\n    event.stop_ = false\n    event.stop = function(self)\n        self.stop_ = true\n    end\n\n    for handle, listener in pairs(self.listeners_[eventName]) do\n        if DEBUG > 1 then\n            printInfo(\"%s [EventProtocol] dispatchEvent() - dispatching event %s to listener %s\", tostring(self.target_), eventName, handle)\n        end\n        -- listener[1] = listener\n        -- listener[2] = tag\n        event.tag = listener[2]\n        listener[1](event)\n        if event.stop_ then\n            if DEBUG > 1 then\n                printInfo(\"%s [EventProtocol] dispatchEvent() - break dispatching for event %s\", tostring(self.target_), eventName)\n            end\n            break\n        end\n    end\n\n    return self.target_\nend\n\nfunction EventProtocol:removeEventListener(handleToRemove)\n    for eventName, listenersForEvent in pairs(self.listeners_) do\n        for handle, _ in pairs(listenersForEvent) do\n            if handle == handleToRemove then\n                listenersForEvent[handle] = nil\n                if DEBUG > 1 then\n                    printInfo(\"%s [EventProtocol] removeEventListener() - remove listener [%s] for event %s\", tostring(self.target_), handle, eventName)\n                end\n                return self.target_\n            end\n        end\n    end\n\n    return self.target_\nend\n\nfunction EventProtocol:removeEventListenersByTag(tagToRemove)\n    for eventName, listenersForEvent in pairs(self.listeners_) do\n        for handle, listener in pairs(listenersForEvent) do\n            -- listener[1] = listener\n            -- listener[2] = tag\n            if listener[2] == tagToRemove then\n                listenersForEvent[handle] = nil\n                if DEBUG > 1 then\n                    printInfo(\"%s [EventProtocol] removeEventListener() - remove listener [%s] for event %s\", tostring(self.target_), handle, eventName)\n                end\n            end\n        end\n    end\n\n    return self.target_\nend\n\nfunction EventProtocol:removeEventListenersByEvent(eventName)\n    self.listeners_[string.upper(eventName)] = nil\n    if DEBUG > 1 then\n        printInfo(\"%s [EventProtocol] removeAllEventListenersForEvent() - remove all listeners for event %s\", tostring(self.target_), eventName)\n    end\n    return self.target_\nend\n\nfunction EventProtocol:removeAllEventListeners()\n    self.listeners_ = {}\n    if DEBUG > 1 then\n        printInfo(\"%s [EventProtocol] removeAllEventListeners() - remove all listeners\", tostring(self.target_))\n    end\n    return self.target_\nend\n\nfunction EventProtocol:hasEventListener(eventName)\n    eventName = string.upper(tostring(eventName))\n    local t = self.listeners_[eventName]\n    for _, __ in pairs(t) do\n        return true\n    end\n    return false\nend\n\nfunction EventProtocol:dumpAllEventListeners()\n    print(\"---- EventProtocol:dumpAllEventListeners() ----\")\n    for name, listeners in pairs(self.listeners_) do\n        printf(\"-- event: %s\", name)\n        for handle, listener in pairs(listeners) do\n            printf(\"--     listener: %s, handle: %s\", tostring(listener[1]), tostring(handle))\n        end\n    end\n    return self.target_\nend\n\nfunction EventProtocol:exportMethods()\n    self:exportMethods_({\n        \"addEventListener\",\n        \"dispatchEvent\",\n        \"removeEventListener\",\n        \"removeEventListenersByTag\",\n        \"removeEventListenersByEvent\",\n        \"removeAllEventListenersForEvent\",\n        \"removeAllEventListeners\",\n        \"hasEventListener\",\n        \"dumpAllEventListeners\",\n    })\n    return self.target_\nend\n\nfunction EventProtocol:onBind_()\nend\n\nfunction EventProtocol:onUnbind_()\nend\n\nreturn EventProtocol\n"
  },
  {
    "path": "源代码/mir9/src/framework/cc/components/behavior/StateMachine.lua",
    "content": "\nlocal Component = import(\"..Component\")\nlocal StateMachine = class(\"StateMachine\", Component)\n\n--[[--\n\nport from Javascript State Machine Library\n\nhttps://github.com/jakesgordon/javascript-state-machine\n\nJS Version: 2.2.0\n\n]]\n\nStateMachine.VERSION = \"2.2.0\"\n\n-- the event transitioned successfully from one state to another\nStateMachine.SUCCEEDED = 1\n-- the event was successfull but no state transition was necessary\nStateMachine.NOTRANSITION = 2\n-- the event was cancelled by the caller in a beforeEvent callback\nStateMachine.CANCELLED = 3\n-- the event is asynchronous and the caller is in control of when the transition occurs\nStateMachine.PENDING = 4\n-- the event was failure\nStateMachine.FAILURE = 5\n\n-- caller tried to fire an event that was innapropriate in the current state\nStateMachine.INVALID_TRANSITION_ERROR = \"INVALID_TRANSITION_ERROR\"\n-- caller tried to fire an event while an async transition was still pending\nStateMachine.PENDING_TRANSITION_ERROR = \"PENDING_TRANSITION_ERROR\"\n-- caller provided callback function threw an exception\nStateMachine.INVALID_CALLBACK_ERROR = \"INVALID_CALLBACK_ERROR\"\n\nStateMachine.WILDCARD = \"*\"\nStateMachine.ASYNC = \"ASYNC\"\n\nfunction StateMachine:ctor()\n    StateMachine.super.ctor(self, \"StateMachine\")\nend\n\nfunction StateMachine:setupState(cfg)\n    assert(type(cfg) == \"table\", \"StateMachine:ctor() - invalid config\")\n\n    -- cfg.initial allow for a simple string,\n    -- or an table with { state = \"foo\", event = \"setup\", defer = true|false }\n    if type(cfg.initial) == \"string\" then\n        self.initial_ = {state = cfg.initial}\n    else\n        self.initial_ = clone(cfg.initial)\n    end\n\n    self.terminal_   = cfg.terminal or cfg.final\n    self.events_     = cfg.events or {}\n    self.callbacks_  = cfg.callbacks or {}\n    self.map_        = {}\n    self.current_    = \"none\"\n    self.inTransition_ = false\n\n    if self.initial_ then\n        self.initial_.event = self.initial_.event or \"startup\"\n        self:addEvent_({name = self.initial_.event, from = \"none\", to = self.initial_.state})\n    end\n\n    for _, event in ipairs(self.events_) do\n        self:addEvent_(event)\n    end\n\n    if self.initial_ and not self.initial_.defer then\n        self:doEvent(self.initial_.event)\n    end\n\n    return self.target_\nend\n\nfunction StateMachine:isReady()\n    return self.current_ ~= \"none\"\nend\n\nfunction StateMachine:getState()\n    return self.current_\nend\n\nfunction StateMachine:isState(state)\n    if type(state) == \"table\" then\n        for _, s in ipairs(state) do\n            if s == self.current_ then return true end\n        end\n        return false\n    else\n        return self.current_ == state\n    end\nend\n\nfunction StateMachine:canDoEvent(eventName)\n    return not self.inTransition_\n        and (self.map_[eventName][self.current_] ~= nil or self.map_[eventName][StateMachine.WILDCARD] ~= nil)\nend\n\nfunction StateMachine:cannotDoEvent(eventName)\n    return not self:canDoEvent(eventName)\nend\n\nfunction StateMachine:isFinishedState()\n    return self:isState(self.terminal_)\nend\n\nfunction StateMachine:doEventForce(name, ...)\n    local from = self.current_\n    local map = self.map_[name]\n    local to = (map[from] or map[StateMachine.WILDCARD]) or from\n    local args = {...}\n\n    local event = {\n        name = name,\n        from = from,\n        to = to,\n        args = args,\n    }\n\n    if self.inTransition_ then self.inTransition_ = false end\n    self:beforeEvent_(event)\n    if from == to then\n        self:afterEvent_(event)\n        return StateMachine.NOTRANSITION\n    end\n\n    self.current_ = to\n    self:enterState_(event)\n    self:changeState_(event)\n    self:afterEvent_(event)\n    return StateMachine.SUCCEEDED\nend\n\nfunction StateMachine:doEvent(name, ...)\n    assert(self.map_[name] ~= nil, string.format(\"StateMachine:doEvent() - invalid event %s\", tostring(name)))\n\n    local from = self.current_\n    local map = self.map_[name]\n    local to = (map[from] or map[StateMachine.WILDCARD]) or from\n    local args = {...}\n\n    local event = {\n        name = name,\n        from = from,\n        to = to,\n        args = args,\n    }\n\n    if self.inTransition_ then\n        self:onError_(event,\n                      StateMachine.PENDING_TRANSITION_ERROR,\n                      \"event \" .. name .. \" inappropriate because previous transition did not complete\")\n        return StateMachine.FAILURE\n    end\n\n    if self:cannotDoEvent(name) then\n        self:onError_(event,\n                      StateMachine.INVALID_TRANSITION_ERROR,\n                      \"event \" .. name .. \" inappropriate in current state \" .. self.current_)\n        return StateMachine.FAILURE\n    end\n\n    if self:beforeEvent_(event) == false then\n        return StateMachine.CANCELLED\n    end\n\n    if from == to then\n        self:afterEvent_(event)\n        return StateMachine.NOTRANSITION\n    end\n\n    event.transition = function()\n        self.inTransition_  = false\n        self.current_ = to -- this method should only ever be called once\n        self:enterState_(event)\n        self:changeState_(event)\n        self:afterEvent_(event)\n        return StateMachine.SUCCEEDED\n    end\n\n    event.cancel = function()\n        -- provide a way for caller to cancel async transition if desired\n        event.transition = nil\n        self:afterEvent_(event)\n    end\n\n    self.inTransition_ = true\n    local leave = self:leaveState_(event)\n    if leave == false then\n        event.transition = nil\n        event.cancel = nil\n        self.inTransition_ = false\n        return StateMachine.CANCELLED\n    elseif string.upper(tostring(leave)) == StateMachine.ASYNC then\n        return StateMachine.PENDING\n    else\n        -- need to check in case user manually called transition()\n        -- but forgot to return StateMachine.ASYNC\n        if event.transition then\n            return event.transition()\n        else\n            self.inTransition_ = false\n        end\n    end\nend\n\nfunction StateMachine:exportMethods()\n    self:exportMethods_({\n        \"setupState\",\n        \"isReady\",\n        \"getState\",\n        \"isState\",\n        \"canDoEvent\",\n        \"cannotDoEvent\",\n        \"isFinishedState\",\n        \"doEventForce\",\n        \"doEvent\",\n    })\n    return self.target_\nend\n\nfunction StateMachine:onBind_()\nend\n\nfunction StateMachine:onUnbind_()\nend\n\nfunction StateMachine:addEvent_(event)\n    local from = {}\n    if type(event.from) == \"table\" then\n        for _, name in ipairs(event.from) do\n            from[name] = true\n        end\n    elseif event.from then\n        from[event.from] = true\n    else\n        -- allow \"wildcard\" transition if \"from\" is not specified\n        from[StateMachine.WILDCARD] = true\n    end\n\n    self.map_[event.name] = self.map_[event.name] or {}\n    local map = self.map_[event.name]\n    for fromName, _ in pairs(from) do\n        map[fromName] = event.to or fromName\n    end\nend\n\nlocal function doCallback_(callback, event)\n    if callback then return callback(event) end\nend\n\nfunction StateMachine:beforeAnyEvent_(event)\n    return doCallback_(self.callbacks_[\"onbeforeevent\"], event)\nend\n\nfunction StateMachine:afterAnyEvent_(event)\n    return doCallback_(self.callbacks_[\"onafterevent\"] or self.callbacks_[\"onevent\"], event)\nend\n\nfunction StateMachine:leaveAnyState_(event)\n    return doCallback_(self.callbacks_[\"onleavestate\"], event)\nend\n\nfunction StateMachine:enterAnyState_(event)\n    return doCallback_(self.callbacks_[\"onenterstate\"] or self.callbacks_[\"onstate\"], event)\nend\n\nfunction StateMachine:changeState_(event)\n    return doCallback_(self.callbacks_[\"onchangestate\"], event)\nend\n\nfunction StateMachine:beforeThisEvent_(event)\n    return doCallback_(self.callbacks_[\"onbefore\" .. event.name], event)\nend\n\nfunction StateMachine:afterThisEvent_(event)\n    return doCallback_(self.callbacks_[\"onafter\" .. event.name] or self.callbacks_[\"on\" .. event.name], event)\nend\n\nfunction StateMachine:leaveThisState_(event)\n    return doCallback_(self.callbacks_[\"onleave\" .. event.from], event)\nend\n\nfunction StateMachine:enterThisState_(event)\n    return doCallback_(self.callbacks_[\"onenter\" .. event.to] or self.callbacks_[\"on\" .. event.to], event)\nend\n\nfunction StateMachine:beforeEvent_(event)\n    if self:beforeThisEvent_(event) == false or self:beforeAnyEvent_(event) == false then\n        return false\n    end\nend\n\nfunction StateMachine:afterEvent_(event)\n    self:afterThisEvent_(event)\n    self:afterAnyEvent_(event)\nend\n\nfunction StateMachine:leaveState_(event, transition)\n    local specific = self:leaveThisState_(event, transition)\n    local general = self:leaveAnyState_(event, transition)\n    if specific == false or general == false then\n        return false\n    elseif string.upper(tostring(specific)) == StateMachine.ASYNC\n        or string.upper(tostring(general)) == StateMachine.ASYNC then\n        return StateMachine.ASYNC\n    end\nend\n\nfunction StateMachine:enterState_(event)\n    self:enterThisState_(event)\n    self:enterAnyState_(event)\nend\n\nfunction StateMachine:onError_(event, error, message)\n    printf(\"%s [StateMachine] ERROR: error %s, event %s, from %s to %s\", tostring(self.target_), tostring(error), event.name, event.from, event.to)\n    printError(message)\nend\n\nreturn StateMachine\n"
  },
  {
    "path": "源代码/mir9/src/framework/cc/components/ui/BasicLayoutProtocol.lua",
    "content": "\nlocal Component = cc.Component\nlocal BasicLayoutProtocol = class(\"BasicLayoutProtocol\", Component)\n\nlocal MAX = 999999\n\nfunction BasicLayoutProtocol:ctor()\n    BasicLayoutProtocol.super.ctor(self, \"BasicLayoutProtocol\")\nend\n\nfunction BasicLayoutProtocol:getLayoutSize()\n    if self.layoutSize_ then\n        return self.layoutSize_.width, self.layoutSize_.height\n    else\n        if self.target_.getCascadeBoundingBox then\n            local size = self.target_:getCascadeBoundingBox().size\n            return size.width, size.height\n        else\n            return 0, 0\n        end\n    end\nend\n\nfunction BasicLayoutProtocol:setLayoutSize(width, height)\n    if width == 0 and height == 0 then\n        self.layoutSize_ = nil\n    else\n        self.layoutSize_ = {width = checknumber(width), height = checknumber(height)}\n    end\n    return self.target_\nend\n\nfunction BasicLayoutProtocol:getLayoutMinSize()\n    return self.minSize_.width, self.minSize_.height\nend\n\nfunction BasicLayoutProtocol:setLayoutMinSize(width, height)\n    self.minSize_.width = checknumber(width)\n    self.minSize_.height = checknumber(height)\n    return self.target_\nend\n\nfunction BasicLayoutProtocol:getLayoutMaxSize()\n    return self.maxSize_.width, self.maxSize_.height\nend\n\nfunction BasicLayoutProtocol:setLayoutMaxSize(width, height)\n    self.maxSize_.width = checknumber(width)\n    self.maxSize_.height = checknumber(height)\n    return self.target_\nend\n\nfunction BasicLayoutProtocol:getLayoutSizePolicy()\n    return self.sizePolicy_.horizontal, self.sizePolicy_.vertical\nend\n\nlocal function checkSizePolicy(p)\n    if p ~= display.AUTO_SIZE and p ~= display.FIXED_SIZE then\n        printError(\"BasicLayoutProtocol - invalid size policy\")\n        return display.AUTO_SIZE\n    else\n        return p\n    end\nend\n\nfunction BasicLayoutProtocol:setLayoutSizePolicy(horizontal, vertical)\n    self.sizePolicy_.horizontal = checkSizePolicy(horizontal)\n    self.sizePolicy_.vertical = checkSizePolicy(vertical)\n    return self.target_\nend\n\nfunction BasicLayoutProtocol:getLayoutPadding()\n    return self.padding_.top, self.padding_.right, self.padding_.bottom, self.padding_.left\nend\n\nfunction BasicLayoutProtocol:setLayoutPadding(top, right, bottom, left)\n    self.padding_.top = checknumber(top)\n    self.padding_.right = checknumber(right)\n    self.padding_.bottom = checknumber(bottom)\n    self.padding_.left = checknumber(left)\n    return self.target_\nend\n\nfunction BasicLayoutProtocol:getLayoutMargin()\n    return self.margin_.top, self.margin_.right, self.margin_.bottom, self.margin_.left\nend\n\nfunction BasicLayoutProtocol:setLayoutMargin(top, right, bottom, left)\n    self.margin_.top = checknumber(top)\n    self.margin_.right = checknumber(right)\n    self.margin_.bottom = checknumber(bottom)\n    self.margin_.left = checknumber(left)\n    return self.target_\nend\n\nfunction BasicLayoutProtocol:exportMethods()\n    self:exportMethods_({\n        \"getLayoutSize\",\n        \"setLayoutSize\",\n        \"getLayoutMinSize\",\n        \"setLayoutMinSize\",\n        \"getLayoutMaxSize\",\n        \"setLayoutMaxSize\",\n        \"getLayoutSizePolicy\",\n        \"setLayoutSizePolicy\",\n        \"getLayoutPadding\",\n        \"setLayoutPadding\",\n        \"getLayoutMargin\",\n        \"setLayoutMargin\",\n    })\n    return self.target_\nend\n\nfunction BasicLayoutProtocol:onBind_()\n    self.layoutSize_ = nil\n    self.minSize_    = {width = 0, height = 0}\n    self.maxSize_    = {width = MAX, height = MAX}\n    self.sizePolicy_ = {h = display.PREFERRED_SIZE, v = display.PREFERRED_SIZE}\n    self.padding_    = {top = 0, right = 0, bottom = 0, left = 0}\n    self.margin_     = {top = 0, right = 0, bottom = 0, left = 0}\nend\n\nfunction BasicLayoutProtocol:onUnbind_()\nend\n\nreturn BasicLayoutProtocol\n"
  },
  {
    "path": "源代码/mir9/src/framework/cc/components/ui/DraggableProtocol.lua",
    "content": "\nlocal Component = cc.Component\nlocal DraggableProtocol = class(\"DraggableProtocol\", Component)\n\nfunction DraggableProtocol:ctor()\n\tDraggableProtocol.super.ctor(self, \"DraggableProtocol\")\nend\n\nfunction DraggableProtocol:setDraggableEnable(bEnable)\n\tif bEnable then\n\t\tself.target_:setTouchEnabled(true)\n\t\tself.target_:addNodeEventListener(cc.NODE_TOUCH_EVENT, function (event)\n\t        \treturn self:dragOnTouch_(event)\n\t    \tend)\n\telse\n\t\tself.target_:setTouchEnabled(false)\n\tend\n\n\treturn self.target_\nend\n\nfunction DraggableProtocol:exportMethods()\n\tself:exportMethods_({\n        \"setDraggableEnable\",\n    })\n\n    return self.target_\nend\n\nfunction DraggableProtocol:dragOnTouch_(event)\n\tlocal boundingBox = self.target_:getCascadeBoundingBox()\n\n\tif \"began\" == event.name and not cc.rectContainsPoint(boundingBox, cc.p(event.x, event.y)) then\n\t\tprintInfo(\"DraggableProtocol - touch didn't in viewRect\")\n\t\treturn false\n\tend\n\n\tif \"began\" == event.name then\n\t\treturn true\n\telseif \"moved\" == event.name then\n\t\tlocal posX, posY = self.target_:getPosition()\n\t\tself.target_:setPosition(\n\t\t\tposX + event.x - event.prevX,\n\t\t\tposY + event.y - event.prevY)\n\telseif \"ended\" == event.name then\n\tend\nend\n\nreturn DraggableProtocol\n"
  },
  {
    "path": "源代码/mir9/src/framework/cc/components/ui/LayoutProtocol.lua",
    "content": "\nlocal BasicLayoutProtocol = import(\".BasicLayoutProtocol\")\nlocal LayoutProtocol = class(\"LayoutProtocol\", BasicLayoutProtocol)\n\nfunction LayoutProtocol:ctor()\n    LayoutProtocol.super.ctor(self, \"LayoutProtocol\")\nend\n\nfunction LayoutProtocol:setLayoutSize(width, height)\n    LayoutProtocol.super.setLayoutSize(self, width, height)\n    self:setLayout(self.layout_)\n    return self.target_\nend\n\nfunction LayoutProtocol:setLayout(layout)\n    self.layout_ = layout\n    if layout then\n        layout:apply(self.target_)\n    end\n    return self.target_\nend\n\nfunction LayoutProtocol:getLayout()\n    return self.layout_\nend\n\nfunction LayoutProtocol:exportMethods()\n    LayoutProtocol.super.exportMethods(self)\n    self:exportMethods_({\n        \"setLayout\",\n        \"getLayout\",\n    })\n    return self.target_\nend\n\nreturn LayoutProtocol\n"
  },
  {
    "path": "源代码/mir9/src/framework/cc/init.lua",
    "content": "--[[\n\nCopyright (c) 2011-2014 chukong-inc.com\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in\nall copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\nTHE SOFTWARE.\n\n]]\n\n--[[--\n\n初始化 cc 扩展\n\ncc 扩展在 cocos2dx C++ API 和 quick 基本模块的基础上，提供了符合脚本风格的事件接口、组件架构等扩展。\n\n]]\n\nlocal CURRENT_MODULE_NAME = ...\n\n-- init base classes\ncc.Registry   = import(\".Registry\")\ncc.GameObject = import(\".GameObject\")\ncc.EventProxy = import(\".EventProxy\")\ncc.Component  = import(\".components.Component\")\n\n-- init components\nlocal components = {\n    \"components.behavior.StateMachine\",\n    \"components.behavior.EventProtocol\",\n    \"components.ui.BasicLayoutProtocol\",\n    \"components.ui.LayoutProtocol\",\n    \"components.ui.DraggableProtocol\",\n}\nfor _, packageName in ipairs(components) do\n    cc.Registry.add(import(\".\" .. packageName, CURRENT_MODULE_NAME), packageName)\nend\n\n-- cc = cc.GameObject.extend()\nlocal GameObject = cc.GameObject\nlocal ccmt = {}\nccmt.__call = function(self, target)\n    if target then\n        return GameObject.extend(target)\n    end\n    printError(\"cc() - invalid target\")\nend\nsetmetatable(cc, ccmt)\n\n-- load MVC\ncc.mvc = import(\".mvc.init\")\n\n-- load more library\ncc.ui = import(\".ui.init\")\n\n-- load extensions\ncc.uiloader = import(\".uiloader.init\")\n"
  },
  {
    "path": "源代码/mir9/src/framework/cc/mvc/AppBase.lua",
    "content": "\nlocal AppBase = class(\"AppBase\")\n\nAppBase.APP_ENTER_BACKGROUND_EVENT = \"APP_ENTER_BACKGROUND_EVENT\"\nAppBase.APP_ENTER_FOREGROUND_EVENT = \"APP_ENTER_FOREGROUND_EVENT\"\n\nfunction AppBase:ctor(appName, packageRoot)\n    cc(self):addComponent(\"components.behavior.EventProtocol\"):exportMethods()\n\n    self.name = appName\n    self.packageRoot = packageRoot or \"app\"\n\n    local eventDispatcher = cc.Director:getInstance():getEventDispatcher()\n    local customListenerBg = cc.EventListenerCustom:create(AppBase.APP_ENTER_BACKGROUND_EVENT,\n                                handler(self, self.onEnterBackground))\n    eventDispatcher:addEventListenerWithFixedPriority(customListenerBg, 1)\n    local customListenerFg = cc.EventListenerCustom:create(AppBase.APP_ENTER_FOREGROUND_EVENT,\n                                handler(self, self.onEnterForeground))\n    eventDispatcher:addEventListenerWithFixedPriority(customListenerFg, 1)\n\n    self.snapshots_ = {}\n\n    -- set global app\n    app = self\nend\n\nfunction AppBase:run()\nend\n\nfunction AppBase:exit()\n    cc.Director:getInstance():endToLua()\n    if device.platform == \"windows\" or device.platform == \"mac\" then\n        os.exit()\n    end\nend\n\nfunction AppBase:enterScene(sceneName, args, transitionType, time, more)\n    local scenePackageName = self.packageRoot .. \".scenes.\" .. sceneName\n    local sceneClass = require(scenePackageName)\n    local scene = sceneClass.new(unpack(checktable(args)))\n    display.replaceScene(scene, transitionType, time, more)\nend\n\nfunction AppBase:createView(viewName, ...)\n    local viewPackageName = self.packageRoot .. \".views.\" .. viewName\n    local viewClass = require(viewPackageName)\n    return viewClass.new(...)\nend\n\nfunction AppBase:onEnterBackground()\n    self:dispatchEvent({name = AppBase.APP_ENTER_BACKGROUND_EVENT})\nend\n\nfunction AppBase:onEnterForeground()\n    self:dispatchEvent({name = AppBase.APP_ENTER_FOREGROUND_EVENT})\nend\n\nreturn AppBase\n"
  },
  {
    "path": "源代码/mir9/src/framework/cc/mvc/ModelBase.lua",
    "content": "local ModelBase = class(\"ModelBase\")\nModelBase.idkey = \"id\"\nModelBase.schema = {\n    id = {\"string\"}\n}\nModelBase.fields = {\"id\"}\n\nlocal function filterProperties(properties, filter)\n    for i, field in ipairs(filter) do\n        properties[field] = nil\n    end\nend\n\nfunction ModelBase:ctor(properties)\n    cc(self):addComponent(\"components.behavior.EventProtocol\"):exportMethods()\n\n    self.isModelBase_ = true\n    if type(properties) ~= \"table\" then properties = {} end\n    self:setProperties(properties)\nend\n\nfunction ModelBase:getId()\n    local id = self[self.class.idkey .. \"_\"]\n    assert(id ~= nil, string.format(\"%s:getId() - invalid id\", self.class.__cname))\n    return id\nend\n\nfunction ModelBase:isValidId()\n    local propname = self.class.idkey .. \"_\"\n    local id = self[propname]\n    return type(id) == \"string\" and id ~= \"\"\nend\n\nfunction ModelBase:setProperties(properties)\n    assert(type(properties) == \"table\", string.format(\"%s:setProperties() - invalid properties\", self.class.__cname))\n\n    for field, schema in pairs(self.class.schema) do\n        local typ, def = schema[1], schema[2]\n        local propname = field .. \"_\"\n\n        local val = properties[field]\n        if val ~= nil then\n            if typ == \"number\" then val = tonumber(val) end\n            assert(type(val) == typ, string.format(\"%s:setProperties() - type mismatch, %s expected %s, actual is %s\", self.class.__cname, field, typ, type(val)))\n            self[propname] = val\n        elseif self[propname] == nil and def ~= nil then\n            if type(def) == \"table\" then\n                val = clone(def)\n            elseif type(def) == \"function\" then\n                val = def()\n            else\n                val = def\n            end\n            self[propname] = val\n        end\n    end\n\n    return self\nend\n\nfunction ModelBase:getProperties(fields, filter)\n    local schema = self.class.schema\n    if type(fields) ~= \"table\" then fields = self.class.fields end\n\n    local properties = {}\n    for i, field in ipairs(fields) do\n        local propname = field .. \"_\"\n        local typ = schema[field][1]\n        local val = self[propname]\n        assert(type(val) == typ, string.format(\"%s:getProperties() - type mismatch, %s expected %s, actual is %s\", self.class.__cname, field, typ, type(val)))\n        properties[field] = val\n    end\n\n    if type(filter) == \"table\" then\n        filterProperties(properties, filter)\n    end\n\n    return properties\nend\n\nreturn ModelBase\n"
  },
  {
    "path": "源代码/mir9/src/framework/cc/mvc/init.lua",
    "content": "\n-- init MVC\nlocal mvc = {}\n\nmvc.AppBase = import(\".AppBase\")\nmvc.ModelBase = import(\".ModelBase\")\n\nreturn mvc\n"
  },
  {
    "path": "源代码/mir9/src/framework/cc/net/SocketTCP.lua",
    "content": "--[[\nFor quick-cocos2d-x\nSocketTCP lua\n@author zrong (zengrong.net)\nCreation: 2013-11-12\nLast Modification: 2013-12-05\n@see http://cn.quick-x.com/?topic=quickkydsocketfzl\n]]\nlocal SOCKET_TICK_TIME = 0.1 \t\t\t-- check socket data interval\nlocal SOCKET_RECONNECT_TIME = 5\t\t\t-- socket reconnect try interval\nlocal SOCKET_CONNECT_FAIL_TIMEOUT = 3\t-- socket failure timeout\n\nlocal STATUS_CLOSED = \"closed\"\nlocal STATUS_NOT_CONNECTED = \"Socket is not connected\"\nlocal STATUS_ALREADY_CONNECTED = \"already connected\"\nlocal STATUS_ALREADY_IN_PROGRESS = \"Operation already in progress\"\nlocal STATUS_TIMEOUT = \"timeout\"\n\nlocal scheduler = require(\"framework.scheduler\")\nlocal socket = require \"socket\"\n\nlocal SocketTCP = class(\"SocketTCP\")\n\nSocketTCP.EVENT_DATA = \"SOCKET_TCP_DATA\"\nSocketTCP.EVENT_CLOSE = \"SOCKET_TCP_CLOSE\"\nSocketTCP.EVENT_CLOSED = \"SOCKET_TCP_CLOSED\"\nSocketTCP.EVENT_CONNECTED = \"SOCKET_TCP_CONNECTED\"\nSocketTCP.EVENT_CONNECT_FAILURE = \"SOCKET_TCP_CONNECT_FAILURE\"\n\nSocketTCP._VERSION = socket._VERSION\nSocketTCP._DEBUG = socket._DEBUG\n\nfunction SocketTCP.getTime()\n\treturn socket.gettime()\nend\n\nfunction SocketTCP:ctor(__host, __port, __retryConnectWhenFailure)\n\tcc(self):addComponent(\"components.behavior.EventProtocol\"):exportMethods()\n\n    self.host = __host\n    self.port = __port\n\tself.tickScheduler = nil\t\t\t-- timer for data\n\tself.reconnectScheduler = nil\t\t-- timer for reconnect\n\tself.connectTimeTickScheduler = nil\t-- timer for connect timeout\n\tself.name = 'SocketTCP'\n\tself.tcp = nil\n\tself.isRetryConnect = __retryConnectWhenFailure\n\tself.isConnected = false\nend\n\nfunction SocketTCP:setName( __name )\n\tself.name = __name\n\treturn self\nend\n\nfunction SocketTCP:setTickTime(__time)\n\tSOCKET_TICK_TIME = __time\n\treturn self\nend\n\nfunction SocketTCP:setReconnTime(__time)\n\tSOCKET_RECONNECT_TIME = __time\n\treturn self\nend\n\nfunction SocketTCP:setConnFailTime(__time)\n\tSOCKET_CONNECT_FAIL_TIMEOUT = __time\n\treturn self\nend\n\nfunction SocketTCP:connect(__host, __port, __retryConnectWhenFailure)\n\tif __host then self.host = __host end\n\tif __port then self.port = __port end\n\tif __retryConnectWhenFailure ~= nil then self.isRetryConnect = __retryConnectWhenFailure end\n\tassert(self.host or self.port, \"Host and port are necessary!\")\n\t--printInfo(\"%s.connect(%s, %d)\", self.name, self.host, self.port)\n\tself.tcp = socket.tcp()\n\tself.tcp:settimeout(0)\n\n\tlocal function __checkConnect()\n\t\tlocal __succ = self:_connect()\n\t\tif __succ then\n\t\t\tself:_onConnected()\n\t\tend\n\t\treturn __succ\n\tend\n\n\tif not __checkConnect() then\n\t\t-- check whether connection is success\n\t\t-- the connection is failure if socket isn't connected after SOCKET_CONNECT_FAIL_TIMEOUT seconds\n\t\tlocal __connectTimeTick = function ()\n\t\t\t--printInfo(\"%s.connectTimeTick\", self.name)\n\t\t\tif self.isConnected then return end\n\t\t\tself.waitConnect = self.waitConnect or 0\n\t\t\tself.waitConnect = self.waitConnect + SOCKET_TICK_TIME\n\t\t\tif self.waitConnect >= SOCKET_CONNECT_FAIL_TIMEOUT then\n\t\t\t\tself.waitConnect = nil\n\t\t\t\tself:close()\n\t\t\t\tself:_connectFailure()\n\t\t\tend\n\t\t\t__checkConnect()\n\t\tend\n\t\tself.connectTimeTickScheduler = scheduler.scheduleGlobal(__connectTimeTick, SOCKET_TICK_TIME)\n\tend\nend\n\nfunction SocketTCP:send(__data)\n\tassert(self.isConnected, self.name .. \" is not connected.\")\n\tself.tcp:send(__data)\nend\n\nfunction SocketTCP:close( ... )\n\t--printInfo(\"%s.close\", self.name)\n\tself.tcp:close();\n\tif self.connectTimeTickScheduler then scheduler.unscheduleGlobal(self.connectTimeTickScheduler) end\n\tif self.tickScheduler then scheduler.unscheduleGlobal(self.tickScheduler) end\n\tself:dispatchEvent({name=SocketTCP.EVENT_CLOSE})\nend\n\n-- disconnect on user's own initiative.\nfunction SocketTCP:disconnect()\n\tself:_disconnect()\n\tself.isRetryConnect = false -- initiative to disconnect, no reconnect.\nend\n\n--------------------\n-- private\n--------------------\n\n--- When connect a connected socket server, it will return \"already connected\"\n-- @see: http://lua-users.org/lists/lua-l/2009-10/msg00584.html\nfunction SocketTCP:_connect()\n\tlocal __succ, __status = self.tcp:connect(self.host, self.port)\n\t-- print(\"SocketTCP._connect:\", __succ, __status)\n\treturn __succ == 1 or __status == STATUS_ALREADY_CONNECTED\nend\n\nfunction SocketTCP:_disconnect()\n\tself.isConnected = false\n\tself.tcp:shutdown()\n\tself:dispatchEvent({name=SocketTCP.EVENT_CLOSED})\nend\n\nfunction SocketTCP:_onDisconnect()\n\t--printInfo(\"%s._onDisConnect\", self.name);\n\tself.isConnected = false\n\tself:dispatchEvent({name=SocketTCP.EVENT_CLOSED})\n\tself:_reconnect();\nend\n\n-- connecte success, cancel the connection timerout timer\nfunction SocketTCP:_onConnected()\n\t--printInfo(\"%s._onConnectd\", self.name)\n\tself.isConnected = true\n\tself:dispatchEvent({name=SocketTCP.EVENT_CONNECTED})\n\tif self.connectTimeTickScheduler then scheduler.unscheduleGlobal(self.connectTimeTickScheduler) end\n\n\tlocal __tick = function()\n\t\twhile true do\n\t\t\t-- if use \"*l\" pattern, some buffer will be discarded, why?\n\t\t\tlocal __body, __status, __partial = self.tcp:receive(\"*a\")\t-- read the package body\n\t\t\t--print(\"body:\", __body, \"__status:\", __status, \"__partial:\", __partial)\n    \t    if __status == STATUS_CLOSED or __status == STATUS_NOT_CONNECTED then\n\t\t    \tself:close()\n\t\t    \tif self.isConnected then\n\t\t    \t\tself:_onDisconnect()\n\t\t    \telse\n\t\t    \t\tself:_connectFailure()\n\t\t    \tend\n\t\t   \t\treturn\n\t    \tend\n\t\t    if \t(__body and string.len(__body) == 0) or\n\t\t\t\t(__partial and string.len(__partial) == 0)\n\t\t\tthen return end\n\t\t\tif __body and __partial then __body = __body .. __partial end\n\t\t\tself:dispatchEvent({name=SocketTCP.EVENT_DATA, data=(__partial or __body), partial=__partial, body=__body})\n\t\tend\n\tend\n\n\t-- start to read TCP data\n\tself.tickScheduler = scheduler.scheduleGlobal(__tick, SOCKET_TICK_TIME)\nend\n\nfunction SocketTCP:_connectFailure(status)\n\t--printInfo(\"%s._connectFailure\", self.name);\n\tself:dispatchEvent({name=SocketTCP.EVENT_CONNECT_FAILURE})\n\tself:_reconnect();\nend\n\n-- if connection is initiative, do not reconnect\nfunction SocketTCP:_reconnect(__immediately)\n\tif not self.isRetryConnect then return end\n\tprintInfo(\"%s._reconnect\", self.name)\n\tif __immediately then self:connect() return end\n\tif self.reconnectScheduler then scheduler.unscheduleGlobal(self.reconnectScheduler) end\n\tlocal __doReConnect = function ()\n\t\tself:connect()\n\tend\n\tself.reconnectScheduler = scheduler.performWithDelayGlobal(__doReConnect, SOCKET_RECONNECT_TIME)\nend\n\nreturn SocketTCP\n"
  },
  {
    "path": "源代码/mir9/src/framework/cc/net/init.lua",
    "content": "--- init net package\n-- @author zrong(zengrong.net)\n-- Creation 2014-01-02\nlocal net = {}\n\nnet.SocketTCP = import(\".SocketTCP\")\n\nreturn net\n"
  },
  {
    "path": "源代码/mir9/src/framework/cc/sdk/Store.lua",
    "content": "\nlocal Store = {}\n\nlocal function checkCCStore()\n    if not cc.Store then\n        printError(\"framework.cc.sdk.Store - cc.Store not exists.\")\n        return false\n    end\n    return true\nend\n\nfunction Store.init(listener)\n    if not checkCCStore() then return false end\n\n    if cc.storeProvider then\n        printError(\"Store.init() - store already init\")\n        return false\n    end\n\n    if type(listener) ~= \"function\" then\n        printError(\"Store.init() - invalid listener\")\n        return false\n    end\n\n    cc.storeProvider = cc.Store:sharedStore() -- avoid gc\n    return cc.storeProvider:postInitWithTransactionListener(listener)\nend\n\nfunction Store.getReceiptVerifyMode()\n    if not checkCCStore() then return false end\n    return cc.storeProvider:getReceiptVerifyMode()\nend\n\nfunction Store.setReceiptVerifyMode(mode, isSandbox)\n    if not checkCCStore() then return false end\n\n    if type(mode) ~= \"number\"\n        or (mode ~= cc.CCStoreReceiptVerifyModeNone\n            and mode ~= cc.CCStoreReceiptVerifyModeDevice\n            and mode ~= cc.CCStoreReceiptVerifyModeServer) then\n        printError(\"Store.setReceiptVerifyMode() - invalid mode\")\n        return false\n    end\n\n    if type(isSandbox) ~= \"boolean\" then isSandbox = true end\n    cc.storeProvider:setReceiptVerifyMode(mode, isSandbox)\nend\n\nfunction Store.getReceiptVerifyServerUrl()\n    if not checkCCStore() then return false end\n    return cc.storeProvider:getReceiptVerifyServerUrl()\nend\n\nfunction Store.setReceiptVerifyServerUrl(url)\n    if not checkCCStore() then return false end\n\n    if type(url) ~= \"string\" then\n        printError(\"Store.setReceiptVerifyServerUrl() - invalid url\")\n        return false\n    end\n    cc.storeProvider:setReceiptVerifyServerUrl(url)\nend\n\nfunction Store.canMakePurchases()\n    if not checkCCStore() then return false end\n    return cc.storeProvider:canMakePurchases()\nend\n\nfunction Store.loadProducts(productsId, listener)\n    if not checkCCStore() then return false end\n\n    if type(listener) ~= \"function\" then\n        printError(\"Store.loadProducts() - invalid listener\")\n        return false\n    end\n\n    if type(productsId) ~= \"table\" then\n        printError(\"Store.loadProducts() - invalid productsId\")\n        return false\n    end\n\n    for i = 1, #productsId do\n        if type(productsId[i]) ~= \"string\" then\n            printError(\"Store.loadProducts() - invalid id[#%d] in productsId\", i)\n            return false\n        end\n    end\n\n    cc.storeProvider:loadProducts(productsId, listener)\n    return true\nend\n\nfunction Store.cancelLoadProducts()\n    if not checkCCStore() then return false end\n    cc.storeProvider:cancelLoadProducts()\nend\n\nfunction Store.isProductLoaded(productId)\n    if not checkCCStore() then return false end\n    return cc.storeProvider:isProductLoaded(productId)\nend\n\nfunction Store.purchase(productId)\n    if not checkCCStore() then return false end\n\n    if not cc.storeProvider then\n        printError(\"Store.purchase() - store not init\")\n        return false\n    end\n\n    if type(productId) ~= \"string\" then\n        printError(\"Store.purchase() - invalid productId\")\n        return false\n    end\n\n    return cc.storeProvider:purchase(productId)\nend\n\nfunction Store.restore()\n    if not checkCCStore() then return false end\n    cc.storeProvider:restore()\nend\n\nfunction Store.finishTransaction(transaction)\n    if not checkCCStore() then return false end\n\n    if not cc.storeProvider then\n        printError(\"Store.finishTransaction() - store not init\")\n        return false\n    end\n\n    if type(transaction) ~= \"table\" or type(transaction.transactionIdentifier) ~= \"string\" then\n        printError(\"Store.finishTransaction() - invalid transaction\")\n        return false\n    end\n\n    return cc.storeProvider:finishTransaction(transaction.transactionIdentifier)\nend\n\ncc = cc or {}\ncc.sdk = cc.sdk or {}\ncc.sdk.pay = Store\n\nreturn Store\n"
  },
  {
    "path": "源代码/mir9/src/framework/cc/ui/UIBoxLayout.lua",
    "content": "\n--[[\n\nCopyright (c) 2011-2014 chukong-inc.com\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in\nall copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\nTHE SOFTWARE.\n\n]]\n\n--------------------------------\n-- @module UIBoxLayout\n-- @extend UILayout\n-- @parent_module ui\n\n--[[--\n\nquick BoxLayout控件\n\n]]\n\nlocal UILayout = import(\".UILayout\")\nlocal UIBoxLayout = class(\"UIBoxLayout\", UILayout)\n\n-- start --\n\n--------------------------------\n-- UIBoxLayout的构造函数\n-- @function [parent=#cc.UIBoxLayout] new\n-- @param integer direction 布局方向\n-- @param string name 布局名字\n-- @return UIBoxLayout#UIBoxLayout  结果\n\n-- end --\n\nfunction UIBoxLayout:ctor(direction, name)\n    UIBoxLayout.super.ctor(self, name)\n    self.direction_ = direction or display.LEFT_TO_RIGHT\nend\n\n-- start --\n\n--------------------------------\n-- 返回方向\n-- @function [parent=#cc.UIBoxLayout] new\n-- @return integer#integer 布局方向\n\n-- end --\n\nfunction UIBoxLayout:getDirection()\n    return self.direction_\nend\n\n-- start --\n\n--------------------------------\n-- 设置方向\n-- @function [parent=#cc.UIBoxLayout] new\n-- @param integer direction 方向\n-- @return UIBoxLayout#UIBoxLayout 布局方向\n\n-- end --\n\nfunction UIBoxLayout:setDirection(direction)\n    self.direction_ = direction\n    return self\nend\n\nlocal depth_ = 0\n\n-- start --\n\n--------------------------------\n-- 应用布局\n-- @function [parent=#UIBoxLayout] apply\n-- @param node container 要布局到的node,为空就布局到自身\n\n-- end --\n\nfunction UIBoxLayout:apply(container)\n    if table.nums(self.widgets_) == 0 then return end\n    if not container then container = self end\n\n    if DEBUG > 1 then\n        local prefix = string.rep(\"  \", depth_)\n        printInfo(\"%sAPPLY LAYOUT %s\", prefix, self:getName())\n    end\n\n    -- step 1\n    -- 1. calculate total weight for all widgets\n    -- 2. calculate total fixed size\n    -- 3. calculate max widget size\n    local isHBox = self.direction_ == display.LEFT_TO_RIGHT or self.direction_ == display.RIGHT_TO_LEFT\n    local totalWeightH, totalWeightV = 0, 0\n    local fixedWidth, fixedHeight = 0, 0\n    local maxWidth, maxHeight = 0, 0\n    local widgets = {}\n    for widget, v in pairs(self.widgets_) do\n        local item = {widget = widget, weight = v.weight, order = v.order}\n        local widgetSizeWidth, widgetSizeHeight = widget:getLayoutSize()\n        local widgetSizePolicyH, widgetSizePolicyV = widget:getLayoutSizePolicy()\n        local marginTop, marginRight, marginBottom, marginLeft = widget:getLayoutMargin()\n\n        if widgetSizePolicyH == display.FIXED_SIZE then\n            fixedWidth = fixedWidth + widgetSizeWidth + marginLeft + marginRight\n            item.width = widgetSizeWidth\n        else\n            totalWeightH = totalWeightH + v.weight\n        end\n\n        if widgetSizePolicyV == display.FIXED_SIZE then\n            fixedHeight = fixedHeight + widgetSizeHeight\n            item.height = widgetSizeHeight\n        else\n            totalWeightV = totalWeightV + v.weight\n        end\n\n        if widgetSizeWidth > maxWidth then\n            maxWidth = widgetSizeWidth\n        end\n        if widgetSizeHeight > maxHeight then\n            maxHeight = widgetSizeHeight\n        end\n\n        widgets[#widgets + 1] = item\n    end\n\n    -- sort all widgets by order\n    table.sort(widgets, function(a, b)\n        return a.order < b.order\n    end)\n\n    -- step 2\n    local containerLayoutSizeWidth, containerLayoutSizeHeight = container:getLayoutSize()\n    local containerPaddingTop, containerPaddingRight, containerPaddingBottom, containerPaddingLeft = container:getLayoutPadding()\n    containerLayoutSizeWidth = containerLayoutSizeWidth - containerPaddingLeft - containerPaddingRight\n    containerLayoutSizeHeight = containerLayoutSizeHeight - containerPaddingTop - containerPaddingBottom\n\n    if isHBox then\n        maxHeight = containerLayoutSizeHeight\n    else\n        maxWidth = containerLayoutSizeWidth\n    end\n\n    local x, y, negativeX, negativeY\n    local left = containerPaddingLeft\n    local top = containerLayoutSizeHeight + containerPaddingBottom\n    local right = containerLayoutSizeWidth + containerPaddingLeft\n    local bottom = containerPaddingBottom\n    if self.direction_ == display.LEFT_TO_RIGHT then\n        x = left\n        y = bottom\n        negativeX, negativeY = 1, 0\n    elseif self.direction_ == display.RIGHT_TO_LEFT then\n        x = right\n        y = bottom\n        negativeX, negativeY = -1, 0\n    elseif self.direction_ == display.TOP_TO_BOTTOM then\n        x = left\n        y = top\n        negativeX, negativeY = 0, -1\n    elseif self.direction_ == display.BOTTOM_TO_TOP then\n        x = left\n        y = bottom\n        negativeX, negativeY = 0, 1\n    else\n        printError(\"UIBoxLayout:apply() - invalid direction %s\", tostring(self.direction_))\n        return\n    end\n\n    if iskindof(container, \"UILayout\") then\n        local cx, cy = container:getPosition()\n        x = x + cx\n        y = y + cy\n    end\n\n    -- step 3\n    local containerWidth = containerLayoutSizeWidth - fixedWidth\n    local remainingWidth = containerWidth\n    local containerHeight = containerLayoutSizeHeight - fixedHeight\n    local remainingHeight = containerHeight\n    local count = #widgets\n    local lastWidth, lastHeight = 0, 0\n    local actualSize = {}\n    for index, item in ipairs(widgets) do\n        local width, height\n\n        if isHBox then\n            if item.width then\n                width = item.width\n            else\n                if index ~= count then\n                    width = item.weight / totalWeightH * containerWidth\n                else\n                    width = remainingWidth\n                end\n                remainingWidth = remainingWidth - width\n            end\n            if index == count then lastWidth = width end\n            height = item.height or maxHeight\n        else\n            if item.height then\n                height = item.height\n            else\n                if index ~= count then\n                    height = item.weight / totalWeightV * containerHeight\n                else\n                    height = remainingHeight\n                end\n                remainingHeight = remainingHeight - height\n            end\n            if index == count then lastHeight = height end\n            width = item.width or maxWidth\n        end\n\n        local actualWidth, actualHeight\n        local widget = item.widget\n        local marginTop, marginRight, marginBottom, marginLeft = widget:getLayoutMargin()\n        if item.width then\n            width = width + marginLeft + marginRight\n        end\n        actualWidth = width - marginLeft - marginRight\n        if item.height then\n            actualHeight = height + marginTop + marginBottom\n        else\n            actualHeight = height - marginTop - marginBottom\n        end\n\n        local wx = x + marginLeft\n        if self.direction_ == display.RIGHT_TO_LEFT then\n            wx = x - marginRight\n        end\n        local wy = y + marginBottom\n        if self.direction_ == display.TOP_TO_BOTTOM then\n            wy = y - marginTop\n        end\n\n        local widgetAnchorPoint = widget:getAnchorPoint()\n        if isHBox then\n            wx = wx + actualWidth * widgetAnchorPoint.x\n            wy = wy + maxHeight * widgetAnchorPoint.y\n        else\n            wx = wx + maxWidth * widgetAnchorPoint.x\n            wy = wy + actualHeight * widgetAnchorPoint.y\n        end\n\n        widget:setPosition(wx, wy)\n        depth_ = depth_ + 1\n        widget:setLayoutSize(actualWidth, actualHeight)\n        depth_ = depth_ - 1\n        actualSize[#actualSize + 1] = {width = actualWidth, height = actualHeight}\n\n        if isHBox then\n            x = x + width * negativeX\n        else\n            y = y + height * negativeY\n        end\n    end\n\n    if self.direction_ == display.TOP_TO_BOTTOM then\n        for index, item in ipairs(widgets) do\n            local widget = item.widget\n            widget:setPositionY(widget:getPositionY() - actualSize[index].height)\n        end\n    elseif self.direction_ == display.RIGHT_TO_LEFT then\n        for index, item in ipairs(widgets) do\n            local widget = item.widget\n            widget:setPositionX(widget:getPositionX() - actualSize[index].width)\n        end\n    end\n\n    depth_ = depth_ + 1\n    for index, item in ipairs(widgets) do\n        local widget = item.widget\n        if iskindof(widget, \"UILayout\") then\n            widget:apply()\n        end\n    end\n    depth_ = depth_ - 1\nend\n\nreturn UIBoxLayout\n"
  },
  {
    "path": "源代码/mir9/src/framework/cc/ui/UIButton.lua",
    "content": "\n--[[\n\nCopyright (c) 2011-2014 chukong-inc.com\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in\nall copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\nTHE SOFTWARE.\n\n]]\n\n--------------------------------\n-- @module UIButton\n\n--[[--\n\nquick Button控件\n\n]]\n\nlocal UIButton = class(\"UIButton\", function()\n    return display.newNode()\nend)\n\nUIButton.CLICKED_EVENT = \"CLICKED_EVENT\"\nUIButton.PRESSED_EVENT = \"PRESSED_EVENT\"\nUIButton.RELEASE_EVENT = \"RELEASE_EVENT\"\nUIButton.STATE_CHANGED_EVENT = \"STATE_CHANGED_EVENT\"\n\nUIButton.IMAGE_ZORDER = -100\nUIButton.LABEL_ZORDER = 0\n\n-- start --\n\n--------------------------------\n-- UIButton构建函数\n-- @function [parent=#UIButton] new\n-- @param table events 按钮状态表\n-- @param string initialState 初始状态\n-- @param table options 参数表\n\n-- end --\n\nfunction UIButton:ctor(events, initialState, options)\n    self.fsm_ = {}\n    cc(self.fsm_)\n        :addComponent(\"components.behavior.StateMachine\")\n        :exportMethods()\n    self.fsm_:setupState({\n        initial = {state = initialState, event = \"startup\", defer = false},\n        events = events,\n        callbacks = {\n            onchangestate = handler(self, self.onChangeState_),\n        }\n    })\n\n    makeUIControl_(self)\n    self:setLayoutSizePolicy(display.FIXED_SIZE, display.FIXED_SIZE)\n    self:setButtonEnabled(true)\n    self:addNodeEventListener(cc.NODE_TOUCH_EVENT, handler(self, self.onTouch_))\n\n    self.touchInSpriteOnly_ = options and options.touchInSprite\n    self.currentImage_ = nil\n    self.images_ = {}\n    self.sprite_ = {}\n    self.scale9_ = options and options.scale9\n    self.flipX_ = options and options.flipX\n    self.flipY_ = options and options.flipY\n    self.scale9Size_ = nil\n    self.labels_ = {}\n    self.labelOffset_ = {0, 0}\n    self.labelAlign_ = display.CENTER\n    self.initialState_ = initialState\n\n    display.align(self, display.CENTER)\n\n    if \"boolean\" ~= type(self.flipX_) then\n        self.flipX_ = false\n    end\n    if \"boolean\" ~= type(self.flipY_) then\n        self.flipY_ = false\n    end\n\n    self:addNodeEventListener(cc.NODE_EVENT, function(event)\n        if event.name == \"enter\" then\n            self:updateButtonImage_()\n        end\n    end)\nend\n\n-- start --\n\n--------------------------------\n-- 停靠位置\n-- @function [parent=#UIButton] align\n-- @param number align 锚点位置\n-- @param number x\n-- @param number y\n-- @return UIButton#UIButton \n\n-- end --\n\nfunction UIButton:align(align, x, y)\n    display.align(self, align, x, y)\n    self:updateButtonImage_()\n    self:updateButtonLable_()\n\n    local size = self:getCascadeBoundingBox().size\n    local ap = self:getAnchorPoint()\n\n    -- self:setPosition(x + size.width * (ap.x - 0.5), y + size.height * (0.5 - ap.y))\n    return self\nend\n\n-- start --\n\n--------------------------------\n-- 设置按钮特定状态的图片\n-- @function [parent=#UIButton] setButtonImage\n-- @param string state 状态\n-- @param string image 图片路径\n-- @param boolean ignoreEmpty 是否忽略空的图片路径\n-- @return UIButton#UIButton \n\n-- end --\n\nfunction UIButton:setButtonImage(state, image, ignoreEmpty)\n    if ignoreEmpty and image == nil then return end\n    self.images_[state] = image\n    if state == self.fsm_:getState() then\n        self:updateButtonImage_()\n    end\n    return self\nend\n\n-- start --\n\n--------------------------------\n-- 设置按钮特定状态的文字node\n-- @function [parent=#UIButton] setButtonLabel\n-- @param string state 状态\n-- @param node label 文字node\n-- @return UIButton#UIButton \n\n-- end --\n\nfunction UIButton:setButtonLabel(state, label)\n    if not label then\n        label = state\n        state = self:getDefaultState_()\n    end\n    assert(label ~= nil, \"UIButton:setButtonLabel() - invalid label\")\n\n    if type(state) == \"table\" then state = state[1] end\n    local currentLabel = self.labels_[state]\n    if currentLabel then currentLabel:removeSelf() end\n\n    self.labels_[state] = label\n    self:addChild(label, UIButton.LABEL_ZORDER)\n    self:updateButtonLable_()\n    return self\nend\n\n-- start --\n\n--------------------------------\n-- 返回按钮特定状态的文字\n-- @function [parent=#UIButton] getButtonLabel\n-- @param string state 状态\n-- @return node#node  文字label\n\n-- end --\n\nfunction UIButton:getButtonLabel(state)\n    if not state then\n        state = self:getDefaultState_()\n    end\n    if type(state) == \"table\" then state = state[1] end\n    return self.labels_[state]\nend\n\n-- start --\n\n--------------------------------\n-- 设置按钮特定状态的文字\n-- @function [parent=#UIButton] setButtonLabelString\n-- @param string state 状态\n-- @param string text 文字\n-- @return UIButton#UIButton \n\n-- end --\n\nfunction UIButton:setButtonLabelString(state, text)\n    assert(self.labels_ ~= nil, \"UIButton:setButtonLabelString() - not add label\")\n    if text == nil then\n        text = state\n        for _, label in pairs(self.labels_) do\n            label:setString(text)\n        end\n    else\n        local label = self.labels_[state]\n        if label then label:setString(text) end\n    end\n    return self\nend\n\n-- start --\n\n--------------------------------\n-- 返回文字标签的偏移\n-- @function [parent=#UIButton] getButtonLabelOffset\n-- @return number#number  x\n-- @return number#number  y\n\n-- end --\n\nfunction UIButton:getButtonLabelOffset()\n    return self.labelOffset_[1], self.labelOffset_[2]\nend\n\n-- start --\n\n--------------------------------\n-- 设置文字标签的偏移\n-- @function [parent=#UIButton] setButtonLabelOffset\n-- @param number x\n-- @param number y\n-- @return UIButton#UIButton \n\n-- end --\n\nfunction UIButton:setButtonLabelOffset(ox, oy)\n    self.labelOffset_ = {ox, oy}\n    self:updateButtonLable_()\n    return self\nend\n\n-- start --\n\n--------------------------------\n-- 得到文字标签的停靠方式\n-- @function [parent=#UIButton] getButtonLabelAlignment\n-- @return number#number \n\n-- end --\n\nfunction UIButton:getButtonLabelAlignment()\n    return self.labelAlign_\nend\n\n-- start --\n\n--------------------------------\n-- 设置文字标签的停靠方式\n-- @function [parent=#UIButton] setButtonLabelAlignment\n-- @param number align\n-- @return UIButton#UIButton \n\n-- end --\n\nfunction UIButton:setButtonLabelAlignment(align)\n    self.labelAlign_ = align\n    self:updateButtonLable_()\n    return self\nend\n\n-- start --\n\n--------------------------------\n-- 设置按钮的大小\n-- @function [parent=#UIButton] setButtonSize\n-- @param number width\n-- @param number height\n-- @return UIButton#UIButton \n\n-- end --\n\nfunction UIButton:setButtonSize(width, height)\n    -- assert(self.scale9_, \"UIButton:setButtonSize() - can't change size for non-scale9 button\")\n    self.scale9Size_ = {width, height}\n    for i,v in ipairs(self.sprite_) do\n        if self.scale9_ then\n            v:setContentSize(cc.size(self.scale9Size_[1], self.scale9Size_[2]))\n        else\n            local size = v:getContentSize()\n            local scaleX = v:getScaleX()\n            local scaleY = v:getScaleY()\n            scaleX = scaleX * self.scale9Size_[1]/size.width\n            scaleY = scaleY * self.scale9Size_[2]/size.height\n            v:setScaleX(scaleX)\n            v:setScaleY(scaleY)\n        end\n    end\n    return self\nend\n\n-- start --\n\n--------------------------------\n-- 设置按钮是否有效\n-- @function [parent=#UIButton] setButtonEnabled\n-- @param boolean enabled 是否有效\n-- @return UIButton#UIButton \n\n-- end --\n\nfunction UIButton:setButtonEnabled(enabled)\n    self:setTouchEnabled(enabled)\n    if enabled and self.fsm_:canDoEvent(\"enable\") then\n        self.fsm_:doEventForce(\"enable\")\n        self:dispatchEvent({name = UIButton.STATE_CHANGED_EVENT, state = self.fsm_:getState()})\n    elseif not enabled and self.fsm_:canDoEvent(\"disable\") then\n        self.fsm_:doEventForce(\"disable\")\n        self:dispatchEvent({name = UIButton.STATE_CHANGED_EVENT, state = self.fsm_:getState()})\n    end\n    return self\nend\n\n-- start --\n\n--------------------------------\n-- 返回按钮是否有效\n-- @function [parent=#UIButton] isButtonEnabled\n-- @return boolean#boolean \n\n-- end --\n\nfunction UIButton:isButtonEnabled()\n    return self.fsm_:canDoEvent(\"disable\")\nend\n\nfunction UIButton:addButtonClickedEventListener(callback)\n    return self:addEventListener(UIButton.CLICKED_EVENT, callback)\nend\n\n-- start --\n\n--------------------------------\n-- 注册用户点击监听\n-- @function [parent=#UIButton] onButtonClicked\n-- @param function callback 监听函数\n-- @return UIButton#UIButton \n\n-- end --\n\nfunction UIButton:onButtonClicked(callback)\n    self:addButtonClickedEventListener(callback)\n    return self\nend\n\nfunction UIButton:addButtonPressedEventListener(callback)\n    return self:addEventListener(UIButton.PRESSED_EVENT, callback)\nend\n\n-- start --\n\n--------------------------------\n-- 注册用户按下监听\n-- @function [parent=#UIButton] onButtonPressed\n-- @param function callback 监听函数\n-- @return UIButton#UIButton \n\n-- end --\n\nfunction UIButton:onButtonPressed(callback)\n    self:addButtonPressedEventListener(callback)\n    return self\nend\n\nfunction UIButton:addButtonReleaseEventListener(callback)\n    return self:addEventListener(UIButton.RELEASE_EVENT, callback)\nend\n\n-- start --\n\n--------------------------------\n-- 注册用户释放监听\n-- @function [parent=#UIButton] onButtonRelease\n-- @param function callback 监听函数\n-- @return UIButton#UIButton \n\n-- end --\n\nfunction UIButton:onButtonRelease(callback)\n    self:addButtonReleaseEventListener(callback)\n    return self\nend\n\nfunction UIButton:addButtonStateChangedEventListener(callback)\n    return self:addEventListener(UIButton.STATE_CHANGED_EVENT, callback)\nend\n\n-- start --\n\n--------------------------------\n-- 注册按钮状态变化监听\n-- @function [parent=#UIButton] onButtonStateChanged\n-- @param function callback 监听函数\n-- @return UIButton#UIButton \n\n-- end --\n\nfunction UIButton:onButtonStateChanged(callback)\n    self:addButtonStateChangedEventListener(callback)\n    return self\nend\n\nfunction UIButton:onChangeState_(event)\n    if self:isRunning() then\n        self:updateButtonImage_()\n        self:updateButtonLable_()\n    end\nend\n\nfunction UIButton:onTouch_(event)\n    printError(\"UIButton:onTouch_() - must override in inherited class\")\nend\n\nfunction UIButton:updateButtonImage_()\n    local state = self.fsm_:getState()\n    local image = self.images_[state]\n\n    if not image then\n        for _, s in pairs(self:getDefaultState_()) do\n            image = self.images_[s]\n            if image then break end\n        end\n    end\n    if image then\n        if self.currentImage_ ~= image then\n            for i,v in ipairs(self.sprite_) do\n                v:removeFromParent(true)\n            end\n            self.sprite_ = {}\n            self.currentImage_ = image\n\n            if \"table\" == type(image) then\n                for i,v in ipairs(image) do\n                    if self.scale9_ then\n                        self.sprite_[i] = display.newScale9Sprite(v)\n                        if not self.scale9Size_ then\n                            local size = self.sprite_[i]:getContentSize()\n                            self.scale9Size_ = {size.width, size.height}\n                        else\n                            self.sprite_[i]:setContentSize(cc.size(self.scale9Size_[1], self.scale9Size_[2]))\n                        end\n                    else\n                        self.sprite_[i] = display.newSprite(v)\n                    end\n                    self:addChild(self.sprite_[i], UIButton.IMAGE_ZORDER)\n                    if self.sprite_[i].setFlippedX then\n                        if self.flipX_ then\n                            self.sprite_[i]:setFlippedX(self.flipX_ or false)\n                        end\n                        if self.flipY_ then\n                            self.sprite_[i]:setFlippedY(self.flipY_ or false)\n                        end\n                    end\n                end\n            else\n                if self.scale9_ then\n                    self.sprite_[1] = display.newScale9Sprite(image)\n                    if not self.scale9Size_ then\n                        local size = self.sprite_[1]:getContentSize()\n                        self.scale9Size_ = {size.width, size.height}\n                    else\n                        self.sprite_[1]:setContentSize(cc.size(self.scale9Size_[1], self.scale9Size_[2]))\n                    end\n                else\n                    self.sprite_[1] = display.newSprite(image)\n                end\n                if self.sprite_[1].setFlippedX then\n                    if self.flipX_ then\n                        self.sprite_[1]:setFlippedX(self.flipX_ or false)\n                    end\n                    if self.flipY_ then\n                        self.sprite_[1]:setFlippedY(self.flipY_ or false)\n                    end\n                end\n                self:addChild(self.sprite_[1], UIButton.IMAGE_ZORDER)\n            end\n        end\n\n        for i,v in ipairs(self.sprite_) do\n            v:setAnchorPoint(self:getAnchorPoint())\n            v:setPosition(0, 0)\n        end\n    elseif not self.labels_ then\n        printError(\"UIButton:updateButtonImage_() - not set image for state %s\", state)\n    end\nend\n\nfunction UIButton:updateButtonLable_()\n    if not self.labels_ then return end\n    local state = self.fsm_:getState()\n    local label = self.labels_[state]\n\n    if not label then\n        for _, s in pairs(self:getDefaultState_()) do\n            label = self.labels_[s]\n            if label then break end\n        end\n    end\n\n    local ox, oy = self.labelOffset_[1], self.labelOffset_[2]\n    if self.sprite_[1] then\n        local ap = self:getAnchorPoint()\n        local spriteSize = self.sprite_[1]:getContentSize()\n        ox = ox + spriteSize.width * (0.5 - ap.x)\n        oy = oy + spriteSize.height * (0.5 - ap.y)\n    end\n\n    for _, l in pairs(self.labels_) do\n        l:setVisible(l == label)\n        l:align(self.labelAlign_, ox, oy)\n    end\nend\n\nfunction UIButton:getDefaultState_()\n    return {self.initialState_}\nend\n\nfunction UIButton:checkTouchInSprite_(x, y)\n    if self.touchInSpriteOnly_ then\n        return self.sprite_[1] and self.sprite_[1]:getCascadeBoundingBox():containsPoint(cc.p(x, y))\n    else\n        return self:getCascadeBoundingBox():containsPoint(cc.p(x, y))\n    end\nend\n\nreturn UIButton\n"
  },
  {
    "path": "源代码/mir9/src/framework/cc/ui/UICheckBoxButton.lua",
    "content": "\n--[[\n\nCopyright (c) 2011-2014 chukong-inc.com\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in\nall copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\nTHE SOFTWARE.\n\n]]\n\n--------------------------------\n-- @module UICheckBoxButton\n\n--[[--\n\nquick CheckButton控件\n\n]]\n\nlocal UIButton = import(\".UIButton\")\nlocal UICheckBoxButton = class(\"UICheckBoxButton\", UIButton)\n\nUICheckBoxButton.OFF          = \"off\"\nUICheckBoxButton.OFF_PRESSED  = \"off_pressed\"\nUICheckBoxButton.OFF_DISABLED = \"off_disabled\"\nUICheckBoxButton.ON           = \"on\"\nUICheckBoxButton.ON_PRESSED   = \"on_pressed\"\nUICheckBoxButton.ON_DISABLED  = \"on_disabled\"\n\n-- start --\n\n--------------------------------\n-- UICheckBoxButton构建函数\n-- @function [parent=#UICheckBoxButton] new\n-- @param table images checkButton各种状态的图片表\n-- @param table options 参数表\n\n-- end --\n\nfunction UICheckBoxButton:ctor(images, options)\n    UICheckBoxButton.super.ctor(self, {\n        {name = \"disable\",  from = {\"off\", \"off_pressed\"}, to = \"off_disabled\"},\n        {name = \"disable\",  from = {\"on\", \"on_pressed\"},   to = \"on_disabled\"},\n        {name = \"enable\",   from = {\"off_disabled\"}, to = \"off\"},\n        {name = \"enable\",   from = {\"on_disabled\"},  to = \"on\"},\n        {name = \"press\",    from = \"off\", to = \"off_pressed\"},\n        {name = \"press\",    from = \"on\",  to = \"on_pressed\"},\n        {name = \"release\",  from = \"off_pressed\", to = \"off\"},\n        {name = \"release\",  from = \"on_pressed\", to = \"on\"},\n        {name = \"select\",   from = \"off\", to = \"on\"},\n        {name = \"select\",   from = \"off_disabled\", to = \"on_disabled\"},\n        {name = \"unselect\", from = \"on\", to = \"off\"},\n        {name = \"unselect\", from = \"on_disabled\", to = \"off_disabled\"},\n    }, \"off\", options)\n    self:setButtonImage(UICheckBoxButton.OFF, images[\"off\"], true)\n    self:setButtonImage(UICheckBoxButton.OFF_PRESSED, images[\"off_pressed\"], true)\n    self:setButtonImage(UICheckBoxButton.OFF_DISABLED, images[\"off_disabled\"], true)\n    self:setButtonImage(UICheckBoxButton.ON, images[\"on\"], true)\n    self:setButtonImage(UICheckBoxButton.ON_PRESSED, images[\"on_pressed\"], true)\n    self:setButtonImage(UICheckBoxButton.ON_DISABLED, images[\"on_disabled\"], true)\n    self.labelAlign_ = display.LEFT_CENTER\nend\n\n-- start --\n\n--------------------------------\n-- 设置单个状态的图片\n-- @function [parent=#UICheckBoxButton] setButtonImage\n-- @param string state checkButton状态\n-- @param string image 图片路径\n-- @param boolean ignoreEmpty 忽略image为nil\n-- @return UICheckBoxButton#UICheckBoxButton  自身\n\n-- end --\n\nfunction UICheckBoxButton:setButtonImage(state, image, ignoreEmpty)\n    assert(state == UICheckBoxButton.OFF\n        or state == UICheckBoxButton.OFF_PRESSED\n        or state == UICheckBoxButton.OFF_DISABLED\n        or state == UICheckBoxButton.ON\n        or state == UICheckBoxButton.ON_PRESSED\n        or state == UICheckBoxButton.ON_DISABLED,\n        string.format(\"UICheckBoxButton:setButtonImage() - invalid state %s\", tostring(state)))\n    UICheckBoxButton.super.setButtonImage(self, state, image, ignoreEmpty)\n    if state == UICheckBoxButton.OFF then\n        if not self.images_[UICheckBoxButton.OFF_PRESSED] then\n            self.images_[UICheckBoxButton.OFF_PRESSED] = image\n        end\n        if not self.images_[UICheckBoxButton.OFF_DISABLED] then\n            self.images_[UICheckBoxButton.OFF_DISABLED] = image\n        end\n    elseif state == UICheckBoxButton.ON then\n        if not self.images_[UICheckBoxButton.ON_PRESSED] then\n            self.images_[UICheckBoxButton.ON_PRESSED] = image\n        end\n        if not self.images_[UICheckBoxButton.ON_DISABLED] then\n            self.images_[UICheckBoxButton.ON_DISABLED] = image\n        end\n    end\n\n    return self\nend\n\n-- start --\n\n--------------------------------\n-- 是否选中状态\n-- @function [parent=#UICheckBoxButton] isButtonSelected\n-- @return boolean#boolean  选中与否\n\n-- end --\n\nfunction UICheckBoxButton:isButtonSelected()\n    return self.fsm_:canDoEvent(\"unselect\")\nend\n\n-- start --\n\n--------------------------------\n-- 设置选中状态\n-- @function [parent=#UICheckBoxButton] setButtonSelected\n-- @param boolean selected 选中与否\n-- @return UICheckBoxButton#UICheckBoxButton  自身\n\n-- end --\n\nfunction UICheckBoxButton:setButtonSelected(selected)\n    if self:isButtonSelected() ~= selected then\n        if selected then\n            self.fsm_:doEventForce(\"select\")\n        else\n            self.fsm_:doEventForce(\"unselect\")\n        end\n        self:dispatchEvent({name = UIButton.STATE_CHANGED_EVENT, state = self.fsm_:getState()})\n    end\n    return self\nend\n\n\nfunction UICheckBoxButton:onTouch_(event)\n    local name, x, y = event.name, event.x, event.y\n    if name == \"began\" then\n        if not self:checkTouchInSprite_(x, y) then return false end\n        self.fsm_:doEvent(\"press\")\n        self:dispatchEvent({name = UIButton.PRESSED_EVENT, x = x, y = y, touchInTarget = true})\n        return true\n    end\n\n    local touchInTarget = self:checkTouchInSprite_(x, y)\n    if name == \"moved\" then\n        if touchInTarget and self.fsm_:canDoEvent(\"press\") then\n            self.fsm_:doEvent(\"press\")\n            self:dispatchEvent({name = UIButton.PRESSED_EVENT, x = x, y = y, touchInTarget = true})\n        elseif not touchInTarget and self.fsm_:canDoEvent(\"release\") then\n            self.fsm_:doEvent(\"release\")\n            self:dispatchEvent({name = UIButton.RELEASE_EVENT, x = x, y = y, touchInTarget = false})\n        end\n    else\n        if self.fsm_:canDoEvent(\"release\") then\n            self.fsm_:doEvent(\"release\")\n            self:dispatchEvent({name = UIButton.RELEASE_EVENT, x = x, y = y, touchInTarget = touchInTarget})\n        end\n        if name == \"ended\" and touchInTarget then\n            self:setButtonSelected(self.fsm_:canDoEvent(\"select\"))\n            self:dispatchEvent({name = UIButton.CLICKED_EVENT, x = x, y = y, touchInTarget = true})\n        end\n    end\nend\n\nfunction UICheckBoxButton:getDefaultState_()\n    local state = self.fsm_:getState()\n    if state == UICheckBoxButton.ON or state == UICheckBoxButton.ON_DISABLED or state == UICheckBoxButton.ON_PRESSED then\n        return {UICheckBoxButton.ON, UICheckBoxButton.OFF}\n    else\n        return {UICheckBoxButton.OFF, UICheckBoxButton.ON}\n    end\nend\n\nreturn UICheckBoxButton\n"
  },
  {
    "path": "源代码/mir9/src/framework/cc/ui/UICheckBoxButtonGroup.lua",
    "content": "\n--[[\n\nCopyright (c) 2011-2014 chukong-inc.com\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in\nall copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\nTHE SOFTWARE.\n\n]]\n\n--------------------------------\n-- @module UICheckBoxButtonGroup\n\n--[[--\n\nquick CheckButton组控件\n\n]]\n\nlocal UIBoxLayout = import(\".UIBoxLayout\")\nlocal UICheckBoxButton = import(\".UICheckBoxButton\")\n\nlocal UIGroup = import(\".UIGroup\")\nlocal UICheckBoxButtonGroup = class(\"UICheckBoxButtonGroup\", UIGroup)\n\nUICheckBoxButtonGroup.BUTTON_SELECT_CHANGED = \"BUTTON_SELECT_CHANGED\"\n\n-- start --\n\n--------------------------------\n-- UICheckBoxButtonGroup构建函数\n-- @function [parent=#UICheckBoxButtonGroup] new\n-- @param integer direction checkBox排列方向\n\n-- end --\n\nfunction UICheckBoxButtonGroup:ctor(direction)\n    UICheckBoxButtonGroup.super.ctor(self)\n    self:setLayout(UIBoxLayout.new(direction or display.LEFT_TO_RIGHT))\n    self.buttons_ = {}\n    self.currentSelectedIndex_ = 0\nend\n\n-- start --\n\n--------------------------------\n-- 加入一个checkBox\n-- @function [parent=#UICheckBoxButtonGroup] addButton\n-- @param UICheckBoxButton button checkBox\n-- @return UICheckBoxButtonGroup#UICheckBoxButtonGroup  自身\n-- @see UICheckBoxButton\n\n-- end --\n\nfunction UICheckBoxButtonGroup:addButton(button)\n    self:addChild(button)\n    self.buttons_[#self.buttons_ + 1] = button\n    self:getLayout():addWidget(button):apply(self)\n    button:onButtonClicked(handler(self, self.onButtonStateChanged_))\n    button:onButtonStateChanged(handler(self, self.onButtonStateChanged_))\n    return self\nend\n\n-- start --\n\n--------------------------------\n-- 按index移除掉一个checkBox\n-- @function [parent=#UICheckBoxButtonGroup] removeButtonAtIndex\n-- @param integer index 要移除checkBox的位置\n-- @return UICheckBoxButtonGroup#UICheckBoxButtonGroup  自身\n\n-- end --\n\nfunction UICheckBoxButtonGroup:removeButtonAtIndex(index)\n    assert(self.buttons_[index] ~= nil, \"UICheckBoxButtonGroup:removeButtonAtIndex() - invalid index\")\n\n    local button = self.buttons_[index]\n    local layout = self:getLayout()\n    layout:removeWidget(button)\n    layout:apply(self)\n\n    button:removeFromParent()\n    table.remove(self.buttons_, index)\n\n    if self.currentSelectedIndex_ == index then\n        self:updateButtonState_(nil)\n    elseif index < self.currentSelectedIndex_ then\n        self:updateButtonState_(self.buttons_[self.currentSelectedIndex_ - 1])\n    end\n\n    return self\nend\n\n-- start --\n\n--------------------------------\n-- 按index获取checkBox\n-- @function [parent=#UICheckBoxButtonGroup] getButtonAtIndex\n-- @param integer index 要获取checkBox的位置\n-- @return UICheckBoxButton#UICheckBoxButton \n\n-- end --\n\nfunction UICheckBoxButtonGroup:getButtonAtIndex(index)\n    return self.buttons_[index]\nend\n\n-- start --\n\n--------------------------------\n-- 得到UICheckBoxButton的总数\n-- @function [parent=#UICheckBoxButtonGroup] getButtonsCount\n-- @return integer#integer \n\n-- end --\n\nfunction UICheckBoxButtonGroup:getButtonsCount()\n    return #self.buttons_\nend\n\n-- start --\n\n--------------------------------\n-- 设置margin\n-- @function [parent=#UICheckBoxButtonGroup] setButtonsLayoutMargin\n-- @param number top 上边的空白\n-- @param number right 右边的空白\n-- @param number bottom 下边的空白\n-- @param number left 左边的空白\n-- @return UICheckBoxButtonGroup#UICheckBoxButtonGroup  自身\n\n-- end --\n\nfunction UICheckBoxButtonGroup:setButtonsLayoutMargin(top, right, bottom, left)\n    for _, button in ipairs(self.buttons_) do\n        button:setLayoutMargin(top, right, bottom, left)\n    end\n    self:getLayout():apply(self)\n    return self\nend\n\nfunction UICheckBoxButtonGroup:addButtonSelectChangedEventListener(callback)\n    return self:addEventListener(UICheckBoxButtonGroup.BUTTON_SELECT_CHANGED, callback)\nend\n\n-- start --\n\n--------------------------------\n-- 注册checkbox状态变化listener\n-- @function [parent=#UICheckBoxButtonGroup] onButtonSelectChanged\n-- @param function callback\n-- @return UICheckBoxButtonGroup#UICheckBoxButtonGroup  自身\n\n-- end --\n\nfunction UICheckBoxButtonGroup:onButtonSelectChanged(callback)\n    self:addButtonSelectChangedEventListener(callback)\n    return self\nend\n\nfunction UICheckBoxButtonGroup:onButtonStateChanged_(event)\n    if event.name == UICheckBoxButton.STATE_CHANGED_EVENT and event.target:isButtonSelected() == false then\n        return\n    end\n    self:updateButtonState_(event.target)\nend\n\nfunction UICheckBoxButtonGroup:updateButtonState_(clickedButton)\n    local currentSelectedIndex = 0\n    for index, button in ipairs(self.buttons_) do\n        if button == clickedButton then\n            currentSelectedIndex = index\n            if not button:isButtonSelected() then\n                button:setButtonSelected(true)\n            end\n        else\n            if button:isButtonSelected() then\n                button:setButtonSelected(false)\n            end\n        end\n    end\n    if self.currentSelectedIndex_ ~= currentSelectedIndex then\n        local last = self.currentSelectedIndex_\n        self.currentSelectedIndex_ = currentSelectedIndex\n        self:dispatchEvent({name = UICheckBoxButtonGroup.BUTTON_SELECT_CHANGED, selected = currentSelectedIndex, last = last})\n    end\nend\n\nreturn UICheckBoxButtonGroup\n"
  },
  {
    "path": "源代码/mir9/src/framework/cc/ui/UIGroup.lua",
    "content": "\n--[[\n\nCopyright (c) 2011-2014 chukong-inc.com\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in\nall copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\nTHE SOFTWARE.\n\n]]\n\n--------------------------------\n-- @module UIGroup\n\n--[[--\n\nquick UIGroup控件\n\n]]\n\nlocal UIBoxLayout = import(\".UIBoxLayout\")\nlocal UIImage = import(\".UIImage\")\n\nlocal UIGroup = class(\"UIGroup\", function()\n    return display.newNode()\nend)\n\n-- start --\n\n--------------------------------\n-- UIGroup构建函数\n-- @function [parent=#UIGroup] new\n\n-- end --\n\nfunction UIGroup:ctor()\n    makeUIControl_(self)\n    self:setLayout(UIBoxLayout.new(display.LEFT_TO_RIGHT))\n    self:setLayoutSizePolicy(display.AUTO_SIZE, display.AUTO_SIZE)\n    self:align(display.LEFT_BOTTOM)\nend\n\n-- start --\n\n--------------------------------\n-- 添加一个控件\n-- @function [parent=#UIGroup] addWidget\n-- @param node widget 控件\n-- @return UIGroup#UIGroup \n\n-- end --\n\nfunction UIGroup:addWidget(widget)\n    self:addChild(widget)\n    self:getLayout():addWidget(widget)\n    return self\nend\n\n-- start --\n\n--------------------------------\n-- 触摸监听函数\n-- @function [parent=#UIGroup] onTouch\n-- @param function listener 函数\n-- @return UIGroup#UIGroup \n\n-- end --\n\nfunction UIGroup:onTouch(listener)\n    if not listener then listener = function() return true end end\n    if USE_DEPRECATED_EVENT_ARGUMENTS then\n        self:addNodeEventListener(cc.NODE_TOUCH_EVENT, function(event)\n            return listener(event.name, event.x, event.y, event.prevX, event.prevY)\n        end)\n    else\n        self:addNodeEventListener(cc.NODE_TOUCH_EVENT, listener)\n    end\n    return self\nend\n\n-- start --\n\n--------------------------------\n-- 打开触摸功能\n-- @function [parent=#UIGroup] enableTouch\n-- @param boolean enabled\n-- @return UIGroup#UIGroup \n\n-- end --\n\nfunction UIGroup:enableTouch(enabled)\n    self:setTouchEnabled(enabled)\n    return self\nend\n\n-- start --\n\n--------------------------------\n-- 设置大小\n-- @function [parent=#UIGroup] setLayoutSize\n-- @param number width\n-- @param number height\n-- @return UIGroup#UIGroup \n\n-- end --\n\nfunction UIGroup:setLayoutSize(width, height)\n    self:getComponent(\"components.ui.LayoutProtocol\"):setLayoutSize(width, height)\n    if self.backgroundSprite_ then\n        self.backgroundSprite_:setLayoutSize(self:getLayoutSize())\n    end\n    return self\nend\n\n-- start --\n\n--------------------------------\n-- 设置背景图片\n-- @function [parent=#UIGroup] setBackgroundImage\n-- @param string filename 图片名\n-- @param table args 图片控件的参数表\n-- @return UIGroup#UIGroup \n-- @see UIImage\n\n-- end --\n\nfunction UIGroup:setBackgroundImage(filename, args)\n    self.backgroundSprite_ = UIImage.new(filename, args):setLayoutSize(self:getLayoutSize())\n    self:addChild(self.backgroundSprite_)\n    return self\nend\n\nreturn UIGroup\n"
  },
  {
    "path": "源代码/mir9/src/framework/cc/ui/UIImage.lua",
    "content": "\n--[[\n\nCopyright (c) 2011-2014 chukong-inc.com\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in\nall copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\nTHE SOFTWARE.\n\n]]\n\n--------------------------------\n-- @module UIImage\n\n--[[--\n\nquick UIImage控件\n\n]]\n\nlocal UIImage = class(\"UIImage\", function(filename, options)\n    if options and options.scale9 then\n        return display.newScale9Sprite(filename, nil, nil, nil, options.capInsets)\n    else\n        return display.newSprite(filename)\n    end\nend)\n\n-- start --\n\n--------------------------------\n-- UIImage构建函数\n-- @function [parent=#UIImage] new\n-- @param string filename 图片文件名\n-- @param table options 参数表\n\n-- end --\n\nfunction UIImage:ctor(filename, options)\n    makeUIControl_(self)\n    self:align(display.LEFT_BOTTOM)\n    local contentSize = self:getContentSize()\n    self:getComponent(\"components.ui.LayoutProtocol\"):setLayoutSize(contentSize.width, contentSize.height)\n    self.isScale9_ = options and options.scale9\n    if self.isScale9_ then\n        self:setLayoutSizePolicy(display.AUTO_SIZE, display.AUTO_SIZE)\n    end\nend\n\n-- start --\n\n--------------------------------\n-- UIImage设置控件大小\n-- @function [parent=#UIImage] setLayoutSize\n-- @param number width 宽度\n-- @param number height 高度\n-- @return UIImage#UIImage  自身\n\n-- end --\n\nfunction UIImage:setLayoutSize(width, height)\n    self:getComponent(\"components.ui.LayoutProtocol\"):setLayoutSize(width, height)\n    local width, height = self:getLayoutSize()\n    local top, right, bottom, left = self:getLayoutPadding()\n    width = width - left - right\n    height = height - top - bottom\n\n    if self.isScale9_ then\n        self:setContentSize(cc.size(width, height))\n    else\n        local boundingSize = self:getBoundingBox()\n        local sx = width / (boundingSize.width / self:getScaleX())\n        local sy = height / (boundingSize.height / self:getScaleY())\n        if sx > 0 and sy > 0 then\n            self:setScaleX(sx)\n            self:setScaleY(sy)\n        end\n    end\n\n    if self.layout_ then\n        self:setLayout(self.layout_)\n    end\n\n    return self\nend\n\nreturn UIImage\n"
  },
  {
    "path": "源代码/mir9/src/framework/cc/ui/UIInput.lua",
    "content": "\n--[[\n\nCopyright (c) 2011-2014 chukong-inc.com\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in\nall copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\nTHE SOFTWARE.\n\n]]\n\n--------------------------------\n-- @module UIInput\n\n--[[--\n\nquick 输入控件\n\n]]\n\nlocal UIInput\nUIInput = class(\"UIInput\", function(options)\n    local inputLabel\n\n\tif not options or not options.UIInputType or 1 == options.UIInputType then\n\t\tinputLabel = UIInput.newEditBox_(options)\n        inputLabel.UIInputType = 1\n\telseif 2 == options.UIInputType then\n\t\tinputLabel = UIInput.newTextField_(options)\n        inputLabel.UIInputType = 2\n\telse\n\tend\n\n    return inputLabel\nend)\n\n-- start --\n\n--------------------------------\n-- 输入构建函数\n-- @function [parent=#UIInput] new\n-- @param table params 参数表格对象\n-- @return mixed#mixed  editbox/textfield文字输入框\n\n--[[--\n\n输入构建函数\n\n创建一个文字输入框，并返回 EditBox/textfield 对象。\n\noptions参灵敏:\n-   UIInputType: 1或nil 表示创建editbox输入控件\n-   UIInputType: 2 表示创建textfield输入控件\n\n]]\n-- end --\n\nfunction UIInput:ctor(options)\n\n    -- make editbox and textfield have same getText function\n    if 2 == options.UIInputType then\n        self.getText = self.getStringValue\n    end\nend\n\n\n\n-- private\n\n--[[--\n\n创建一个文字输入框，并返回 EditBox 对象。\n\n可用参数：\n\n-   image: 输入框的图像，可以是图像名或者是 Sprite9Scale 显示对象。用 display.newScale9Sprite() 创建 Sprite9Scale 显示对象。\n-   imagePressed: 输入状态时输入框显示的图像（可选）\n-   imageDisabled: 禁止状态时输入框显示的图像（可选）\n-   listener: 回调函数\n-   size: 输入框的尺寸，用 cc.size(宽度, 高度) 创建\n-   x, y: 坐标（可选）\n\n~~~ lua\n\nlocal function onEdit(event, editbox)\n    if event == \"began\" then\n        -- 开始输入\n    elseif event == \"changed\" then\n        -- 输入框内容发生变化\n    elseif event == \"ended\" then\n        -- 输入结束\n    elseif event == \"return\" then\n        -- 从输入框返回\n    end\nend\n\nlocal editbox = ui.newEditBox({\n    image = \"EditBox.png\",\n    listener = onEdit,\n    size = cc.size(200, 40)\n})\n\n~~~\n\n注意: 使用setInputFlag(0) 可设为密码输入框。\n\n注意：构造输入框时，请使用setPlaceHolder来设定初始文本显示。setText为出现输入法后的默认文本。\n\n注意：事件触发机制，player模拟器上与真机不同，请使用真机实测(不同ios版本貌似也略有不同)。\n\n注意：changed事件中，需要条件性使用setText（如trim或转化大小写等），否则在某些ios版本中会造成死循环。\n\n~~~ lua\n\n--错误，会造成死循环\n\neditbox:setText(string.trim(editbox:getText()))\n\n~~~\n\n~~~ lua\n\n--正确，不会造成死循环\nlocal _text = editbox:getText()\nlocal _trimed = string.trim(_text)\nif _trimed ~= _text then\n    editbox:setText(_trimed)\nend\n\n~~~\n\n@param table params 参数表格对象\n\n@return EditBox 文字输入框\n\n]]\nfunction UIInput.newEditBox_(params)\n    local imageNormal = params.image\n    local imagePressed = params.imagePressed\n    local imageDisabled = params.imageDisabled\n\n    if type(imageNormal) == \"string\" then\n        imageNormal = display.newScale9Sprite(imageNormal)\n    end\n    if type(imagePressed) == \"string\" then\n        imagePressed = display.newScale9Sprite(imagePressed)\n    end\n    if type(imageDisabled) == \"string\" then\n        imageDisabled = display.newScale9Sprite(imageDisabled)\n    end\n\n    local editboxCls\n    if cc.bPlugin_ then\n        editboxCls = ccui.EditBox\n    else\n        editboxCls = cc.EditBox\n    end\n    local editbox = editboxCls:create(params.size, imageNormal, imagePressed, imageDisabled)\n\n    if editbox then\n        if params.listener then\n            editbox:registerScriptEditBoxHandler(params.listener)\n        end\n        if params.x and params.y then\n            editbox:setPosition(params.x, params.y)\n        end\n    end\n\n    return editbox\nend\n\n--[[--\n\n创建一个文字输入框，并返回 Textfield 对象。\n\n可用参数：\n\n-   listener: 回调函数\n-   size: 输入框的尺寸，用 cc.size(宽度, 高度) 创建\n-   x, y: 坐标（可选）\n-   placeHolder: 占位符(可选)\n-   text: 输入文字(可选)\n-   font: 字体\n-   fontSize: 字体大小\n-   maxLength:\n-   passwordEnable:开启密码模式\n-   passwordChar:密码代替字符\n\n~~~ lua\n\nlocal function onEdit(textfield, eventType)\n    if event == 0 then\n        -- ATTACH_WITH_IME\n    elseif event == 1 then\n        -- DETACH_WITH_IME\n    elseif event == 2 then\n        -- INSERT_TEXT\n    elseif event == 3 then\n        -- DELETE_BACKWARD\n    end\nend\n\nlocal textfield = UIInput.new({\n    UIInputType = 2,\n    listener = onEdit,\n    size = cc.size(200, 40)\n})\n\n~~~\n\n@param table params 参数表格对象\n\n@return Textfield 文字输入框\n\n]]\nfunction UIInput.newTextField_(params)\n    local textfieldCls\n    if cc.bPlugin_ then\n        textfieldCls = ccui.TextField\n    else\n        textfieldCls = cc.TextField\n    end\n    local editbox = textfieldCls:create()\n    editbox:setPlaceHolder(params.placeHolder)\n    editbox:setPosition(params.x, params.y)\n    if params.listener then\n        editbox:addEventListener(params.listener)\n    end\n    if params.size then\n        editbox:setTextAreaSize(params.size)\n    end\n    if params.text then\n        if editbox.setString then\n            editbox:setString(params.text)\n        else\n            editbox:setText(params.text)\n        end\n    end\n    if params.font then\n        editbox:setFontName(params.font)\n    end\n    if params.fontSize then\n        editbox:setFontSize(params.fontSize)\n    end\n    if params.maxLength and 0 ~= params.maxLength then\n        editbox:setMaxLengthEnabled(true)\n        editbox:setMaxLength(params.maxLength)\n    end\n    if params.passwordEnable then\n        editbox:setPasswordEnabled(true)\n    end\n    if params.passwordChar then\n        editbox:setPasswordStyleText(params.passwordChar)\n    end\n\n    return editbox\nend\n\nreturn UIInput\n"
  },
  {
    "path": "源代码/mir9/src/framework/cc/ui/UILabel.lua",
    "content": "\n--[[\n\nCopyright (c) 2011-2014 chukong-inc.com\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in\nall copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\nTHE SOFTWARE.\n\n]]\n\n--------------------------------\n-- @module UILabel\n\n--[[--\n\nquick UILabel控件\n\n]]\n\nlocal UILabel\nUILabel = class(\"UILabel\", function(options)\n\tif not options then\n\t\treturn\n\tend\n\n\tif 1 == options.UILabelType then\n\t\treturn UILabel.newBMFontLabel_(options)\n\telseif not options.UILabelType or 2 == options.UILabelType then\n\t\treturn UILabel.newTTFLabel_(options)\n\telse\n\t\tprintInfo(\"UILabel unkonw UILabelType\")\n\tend\nend)\n\nUILabel.LABEL_TYPE_BM\t\t\t\t\t= 1\nUILabel.LABEL_TYPE_TTF \t\t\t\t\t= 2\n\n\n-- start --\n\n--------------------------------\n-- UILabel构建函数\n-- @function [parent=#UILabel] new\n-- @param table options 参数表\n\n-- end --\n\nfunction UILabel:ctor(options)\n    makeUIControl_(self)\n    self:setLayoutSizePolicy(display.FIXED_SIZE, display.FIXED_SIZE)\n\n    self:align(display.LEFT_CENTER)\nend\n\n-- start --\n\n--------------------------------\n-- UILabel设置控件大小\n-- @function [parent=#UILabel] setLayoutSize\n-- @param number width 宽度\n-- @param number height 高度\n-- @return UILabel#UILabel  自身\n\n-- end --\n\nfunction UILabel:setLayoutSize(width, height)\n    self:getComponent(\"components.ui.LayoutProtocol\"):setLayoutSize(width, height)\n    return self\nend\n\n\n-- private\n\n--[[--\n\n用位图字体创建文本显示对象，并返回 LabelBMFont 对象。\n\nBMFont 通常用于显示英文内容，因为英文字母加数字和常用符号也不多，生成的 BMFont 文件较小。如果是中文，应该用 TTFLabel。\n\n可用参数：\n\n-    text: 要显示的文本\n-    font: 字体文件名\n-    align: 文字的水平对齐方式（可选）\n-    x, y: 坐标（可选）\n\n~~~ lua\n\nlocal label = UILabel:newBMFontLabel({\n    text = \"Hello\",\n    font = \"UIFont.fnt\",\n})\n\n~~~\n\n@param table params 参数表格对象\n\n@return LabelBMFont LabelBMFont对象\n\n]]\nfunction UILabel.newBMFontLabel_(params)\n    return display.newBMFontLabel(params)\nend\n\n--[[--\n\n使用 TTF 字体创建文字显示对象，并返回 Label 对象。\n\n可用参数：\n\n-    text: 要显示的文本\n-    font: 字体名，如果是非系统自带的 TTF 字体，那么指定为字体文件名\n-    size: 文字尺寸，因为是 TTF 字体，所以可以任意指定尺寸\n-    color: 文字颜色（可选），用 cc.c3b() 指定，默认为白色\n-    align: 文字的水平对齐方式（可选）\n-    valign: 文字的垂直对齐方式（可选），仅在指定了 dimensions 参数时有效\n-    dimensions: 文字显示对象的尺寸（可选），使用 cc.size() 指定\n-    x, y: 坐标（可选）\n\nalign 和 valign 参数可用的值：\n\n-    cc.ui.TEXT_ALIGN_LEFT 左对齐\n-    cc.ui.TEXT_ALIGN_CENTER 水平居中对齐\n-    cc.ui.TEXT_ALIGN_RIGHT 右对齐\n-    cc.ui.TEXT_VALIGN_TOP 垂直顶部对齐\n-    cc.ui.TEXT_VALIGN_CENTER 垂直居中对齐\n-    cc.ui.TEXT_VALIGN_BOTTOM 垂直底部对齐\n\n~~~ lua\n\n-- 创建一个居中对齐的文字显示对象\nlocal label = UILabel:newTTFLabel({\n    text = \"Hello, World\",\n    font = \"Marker Felt\",\n    size = 64,\n    align = cc.ui.TEXT_ALIGN_CENTER -- 文字内部居中对齐\n})\n\n-- 左对齐，并且多行文字顶部对齐\nlocal label = UILabel:newTTFLabel({\n    text = \"Hello, World\\n您好，世界\",\n    font = \"Arial\",\n    size = 64,\n    color = cc.c3b(255, 0, 0), -- 使用纯红色\n    align = cc.ui.TEXT_ALIGN_LEFT,\n    valign = cc.ui.TEXT_VALIGN_TOP,\n    dimensions = cc.size(400, 200)\n})\n\n~~~\n\n@param table params 参数表格对象\n\n@return LabelTTF LabelTTF对象\n\n]]\nfunction UILabel.newTTFLabel_(params)\n    return display.newTTFLabel(params)\nend\n\nreturn UILabel\n"
  },
  {
    "path": "源代码/mir9/src/framework/cc/ui/UILayout.lua",
    "content": "\n--[[\n\nCopyright (c) 2011-2014 chukong-inc.com\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in\nall copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\nTHE SOFTWARE.\n\n]]\n\n--------------------------------\n-- @module UILayout\n\n--[[--\n\nquick 布局控件\n\n]]\n\nlocal UIStretch = import(\".UIStretch\")\n\nlocal UILayout = class(\"UILayout\")\n\nlocal nameIndex_ = 1\n\n-- start --\n\n--------------------------------\n-- 布局控件构建函数\n-- @function [parent=#UILayout] new\n-- @param string name 布局控件名字\n\n-- end --\n\nfunction UILayout:ctor(name)\n    cc(self):addComponent(\"components.ui.LayoutProtocol\"):exportMethods()\n    self:setLayoutSizePolicy(display.AUTO_SIZE, display.AUTO_SIZE)\n    if not name then\n        name = string.format(\"layout-%d\", nameIndex_)\n        nameIndex_ = nameIndex_ + 1\n    end\n    self.name_ = name\n    self.position_ = {x = 0, y = 0}\n    self.anchorPoint_ = display.ANCHOR_POINTS[display.CENTER]\n    self.order_ = 0\n\n    self.widgets_ = {}\n    local m = {__mode = \"k\"}\n    setmetatable(self.widgets_, m)\n\n    self.persistent_ = {}\nend\n\n-- start --\n\n--------------------------------\n-- 返回布局控件名字\n-- @function [parent=#UILayout] getName\n-- @return string#string \n\n-- end --\n\nfunction UILayout:getName()\n    return self.name_\nend\n\n-- start --\n\n--------------------------------\n-- 添加一个布局\n-- @function [parent=#UILayout] addLayout\n-- @param node layout 布局node\n-- @param number weight 布局所占的weight,默认为1\n-- @return UILayout#UILayout \n\n-- end --\n\nfunction UILayout:addLayout(layout, weight)\n    self:addWidget(layout, weight)\n    self.persistent_[#self.persistent_ + 1] = layout\n    return self\nend\n\n-- start --\n\n--------------------------------\n-- 添加一个widget\n-- @function [parent=#UILayout] addWidget\n-- @param node widget 控件\n-- @param number weight 控件所占的weight,默认为1\n-- @return UILayout#UILayout \n\n-- end --\n\nfunction UILayout:addWidget(widget, weight)\n    self.order_ = self.order_ + 1\n    self.widgets_[widget] = {weight = weight or 1, order = self.order_}\n    return self\nend\n\n-- start --\n\n--------------------------------\n-- 移除一个widget\n-- @function [parent=#UILayout] removeWidget\n-- @param node widget 要移除的控件\n-- @return UILayout#UILayout \n\n-- end --\n\nfunction UILayout:removeWidget(widget)\n    for w, _ in pairs(self.widgets_) do\n        if w == widget then\n            self.widgets_[w] = nil\n            break\n        end\n    end\n    return self\nend\n\n-- start --\n\n--------------------------------\n-- 增加一个可伸展的布局\n-- @function [parent=#UILayout] addStretch\n-- @param number weight 可伸展布展所占的weight\n-- @return UILayout#UILayout \n\n-- end --\n\nfunction UILayout:addStretch(weight)\n    local stretch = UIStretch.new()\n    self:addWidget(stretch, weight)\n    self.persistent_[#self.persistent_ + 1] = stretch\n    return self\nend\n\n-- start --\n\n--------------------------------\n-- 返回位置信息\n-- @function [parent=#UILayout] getPosition\n-- @return number#number  x\n-- @return number#number  y\n\n-- end --\n\nfunction UILayout:getPosition()\n    return self.position_.x, self.position_.y\nend\n\n-- start --\n\n--------------------------------\n-- 返回x位置信息\n-- @function [parent=#UILayout] getPositionX\n-- @return number#number  x\n\n-- end --\n\nfunction UILayout:getPositionX()\n    return self.position_.x\nend\n\n-- start --\n\n--------------------------------\n-- 返回y位置信息\n-- @function [parent=#UILayout] getPositionY\n-- @return number#number  y\n\n-- end --\n\nfunction UILayout:getPositionY()\n    return self.position_.y\nend\n\n-- start --\n\n--------------------------------\n-- 设置位置信息\n-- @function [parent=#UILayout] setPosition\n-- @param number x\n-- @param number y\n\n-- end --\n\nfunction UILayout:setPosition(x, y)\n    self.position_.x, self.position_.y = x, y\nend\n\n-- start --\n\n--------------------------------\n-- 设置x位置信息\n-- @function [parent=#UILayout] setPositionX\n-- @param number x\n\n-- end --\n\nfunction UILayout:setPositionX(x)\n    self.position_.x = x\nend\n\n-- start --\n\n--------------------------------\n-- 设置y位置信息\n-- @function [parent=#UILayout] setPositionY\n-- @param number y\n\n-- end --\n\nfunction UILayout:setPositionY(y)\n    self.position_.y = y\nend\n\n-- start --\n\n--------------------------------\n-- 返回锚点信息\n-- @function [parent=#UILayout] getAnchorPoint\n-- @return table#table  锚点位置\n\n-- end --\n\nfunction UILayout:getAnchorPoint()\n    return self.anchorPoint_\nend\n\n-- start --\n\n--------------------------------\n-- 设置锚点信息\n-- @function [parent=#UILayout] setAnchorPoint\n-- @param table 锚点位置\n\n-- end --\n\nfunction UILayout:setAnchorPoint(ap)\n    self.anchorPoint_ = ap\nend\n\nfunction UILayout:apply(container)\nend\n\nreturn UILayout\n"
  },
  {
    "path": "源代码/mir9/src/framework/cc/ui/UIListView.lua",
    "content": "\n--[[\n\nCopyright (c) 2011-2014 chukong-inc.com\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in\nall copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\nTHE SOFTWARE.\n\n]]\n\n--------------------------------\n-- @module UIListView\n\n--[[--\n\nquick 列表控件\n\n]]\n\nlocal UIScrollView = import(\".UIScrollView\")\nlocal UIListView = class(\"UIListView\", UIScrollView)\n\nlocal UIListViewItem = import(\".UIListViewItem\")\n\n\nUIListView.DELEGATE\t\t\t\t\t= \"ListView_delegate\"\nUIListView.TOUCH_DELEGATE\t\t\t= \"ListView_Touch_delegate\"\n\nUIListView.CELL_TAG\t\t\t\t\t= \"Cell\"\nUIListView.CELL_SIZE_TAG\t\t\t= \"CellSize\"\nUIListView.COUNT_TAG\t\t\t\t= \"Count\"\nUIListView.CLICKED_TAG\t\t\t\t= \"Clicked\"\nUIListView.UNLOAD_CELL_TAG\t\t\t= \"UnloadCell\"\n\nUIListView.BG_ZORDER \t\t\t\t= -1\nUIListView.CONTENT_ZORDER\t\t\t= 10\n\nUIListView.ALIGNMENT_LEFT\t\t\t= 0\nUIListView.ALIGNMENT_RIGHT\t\t\t= 1\nUIListView.ALIGNMENT_VCENTER\t\t= 2\nUIListView.ALIGNMENT_TOP\t\t\t= 3\nUIListView.ALIGNMENT_BOTTOM\t\t\t= 4\nUIListView.ALIGNMENT_HCENTER\t\t= 5\n\n-- start --\n\n--------------------------------\n-- UIListView构建函数\n-- @function [parent=#UIListView] new\n-- @param table params 参数表\n\n--[[--\n\nUIListView构建函数\n\n可用参数有：\n\n-   direction 列表控件的滚动方向，默认为垂直方向\n-   alignment listViewItem中content的对齐方式，默认为垂直居中\n-   viewRect 列表控件的显示区域\n-   scrollbarImgH 水平方向的滚动条\n-   scrollbarImgV 垂直方向的滚动条\n-   bgColor 背景色,nil表示无背景色\n-   bgStartColor 渐变背景开始色,nil表示无背景色\n-   bgEndColor 渐变背景结束色,nil表示无背景色\n-   bg 背景图\n-   bgScale9 背景图是否可缩放\n-\tcapInsets 缩放区域\n\n]]\n-- end --\n\nfunction UIListView:ctor(params)\n\tUIListView.super.ctor(self, params)\n\n\tself.items_ = {}\n\tself.direction = params.direction or UIScrollView.DIRECTION_VERTICAL\n\tself.alignment = params.alignment or UIListView.ALIGNMENT_VCENTER\n\tself.bAsyncLoad = params.async or false\n\tself.container = cc.Node:create()\n\t-- self.padding_ = params.padding or {left = 0, right = 0, top = 0, bottom = 0}\n\n\t-- params.viewRect.x = params.viewRect.x + self.padding_.left\n\t-- params.viewRect.y = params.viewRect.y + self.padding_.bottom\n\t-- params.viewRect.width = params.viewRect.width - self.padding_.left - self.padding_.right\n\t-- params.viewRect.height = params.viewRect.height - self.padding_.bottom - self.padding_.top\n\n\tself:setDirection(params.direction)\n\tself:setViewRect(params.viewRect)\n\tself:addScrollNode(self.container)\n\tself:onScroll(handler(self, self.scrollListener))\n\n\tself.size = {}\n\tself.itemsFree_ = {}\n\tself.delegate_ = {}\n\tself.redundancyViewVal = 0 --异步的视图两个方向上的冗余大小,横向代表宽,竖向代表高\nend\n\nfunction UIListView:onCleanup()\n\tself:releaseAllFreeItems_()\nend\n\n-- start --\n\n--------------------------------\n-- 列表控件触摸注册函数\n-- @function [parent=#UIListView] onTouch\n-- @param function listener 触摸临听函数\n-- @return UIListView#UIListView  self 自身\n\n-- end --\n\nfunction UIListView:onTouch(listener)\n\tself.touchListener_ = listener\n\n\treturn self\nend\n\n-- start --\n\n--------------------------------\n-- 列表控件设置所有listItem中content的对齐方式\n-- @function [parent=#UIListView] setAlignment\n-- @param number align 对\n-- @return UIListView#UIListView  self 自身\n\n-- end --\n\nfunction UIListView:setAlignment(align)\n\tself.alignment = align\nend\n\n-- start --\n\n--------------------------------\n-- 创建一个新的listViewItem项\n-- @function [parent=#UIListView] newItem\n-- @param node item 要放到listViewItem中的内容content\n-- @return UIListViewItem#UIListViewItem \n\n-- end --\n\nfunction UIListView:newItem(item)\n\titem = UIListViewItem.new(item)\n\titem:setDirction(self.direction)\n\titem:onSizeChange(handler(self, self.itemSizeChangeListener))\n\n\treturn item\nend\n\n-- start --\n\n--------------------------------\n-- 设置显示区域\n-- @function [parent=#UIListView] setViewRect\n-- @return UIListView#UIListView  self\n\n-- end --\n\nfunction UIListView:setViewRect(viewRect)\n\tif UIScrollView.DIRECTION_VERTICAL == self.direction then\n\t\tself.redundancyViewVal = viewRect.height\n\telse\n\t\tself.redundancyViewVal = viewRect.width\n\tend\n\n\tUIListView.super.setViewRect(self, viewRect)\nend\n\nfunction UIListView:itemSizeChangeListener(listItem, newSize, oldSize)\n\tlocal pos = self:getItemPos(listItem)\n\tif not pos then\n\t\treturn\n\tend\n\n\tlocal itemW, itemH = newSize.width - oldSize.width, newSize.height - oldSize.height\n\tif UIScrollView.DIRECTION_VERTICAL == self.direction then\n\t\titemW = 0\n\telse\n\t\titemH = 0\n\tend\n\n\tlocal content = listItem:getContent()\n\ttransition.moveBy(content,\n\t\t\t\t{x = itemW/2, y = itemH/2, time = 0.2})\n\n\tself.size.width = self.size.width + itemW\n\tself.size.height = self.size.height + itemH\n\tif UIScrollView.DIRECTION_VERTICAL == self.direction then\n\t\ttransition.moveBy(self.container,\n\t\t\t{x = -itemW, y = -itemH, time = 0.2})\n\t\tself:moveItems(1, pos - 1, itemW, itemH, true)\n\telse\n\t\tself:moveItems(pos + 1, table.nums(self.items_), itemW, itemH, true)\n\tend\nend\n\nfunction UIListView:scrollListener(event)\n\tif \"clicked\" == event.name then\n\t\tlocal nodePoint = self.container:convertToNodeSpace(cc.p(event.x, event.y))\n\t\tlocal pos\n\t\tlocal idx\n\n\t\tif self.bAsyncLoad then\n\t\t\tlocal itemRect\n\t\t\tfor i,v in ipairs(self.items_) do\n\t\t\t\tlocal posX, posY = v:getPosition()\n\t\t\t\tlocal itemW, itemH = v:getItemSize()\n\t\t\t\titemRect = cc.rect(posX, posY, itemW, itemH)\n\t\t\t\tif cc.rectContainsPoint(itemRect, nodePoint) then\n\t\t\t\t\tidx = v.idx_\n\t\t\t\t\tpos = i\n\t\t\t\t\tbreak\n\t\t\t\tend\n\t\t\tend\n\t\telse\n\t\t\tnodePoint.x = nodePoint.x - self.viewRect_.x\n\t\t\tnodePoint.y = nodePoint.y - self.viewRect_.y\n\n\t\t\tlocal width, height = 0, self.size.height\n\t\t\tlocal itemW, itemH = 0, 0\n\n\t\t\tif UIScrollView.DIRECTION_VERTICAL == self.direction then\n\t\t\t\tfor i,v in ipairs(self.items_) do\n\t\t\t\t\titemW, itemH = v:getItemSize()\n\n\t\t\t\t\tif nodePoint.y < height and nodePoint.y > height - itemH then\n\t\t\t\t\t\tpos = i\n\t\t\t\t\t\tidx = pos\n\t\t\t\t\t\tnodePoint.y = nodePoint.y - (height - itemH)\n\t\t\t\t\t\tbreak\n\t\t\t\t\tend\n\t\t\t\t\theight = height - itemH\n\t\t\t\tend\n\t\t\telse\n\t\t\t\tfor i,v in ipairs(self.items_) do\n\t\t\t\t\titemW, itemH = v:getItemSize()\n\n\t\t\t\t\tif nodePoint.x > width and nodePoint.x < width + itemW then\n\t\t\t\t\t\tpos = i\n\t\t\t\t\t\tidx = pos\n\t\t\t\t\t\tbreak\n\t\t\t\t\tend\n\t\t\t\t\twidth = width + itemW\n\t\t\t\tend\n\t\t\tend\n\t\tend\n\n\t\tself:notifyListener_{name = \"clicked\",\n\t\t\tlistView = self, itemPos = idx, item = self.items_[pos],\n\t\t\tpoint = nodePoint}\n\telse\n\t\tevent.scrollView = nil\n\t\tevent.listView = self\n\t\tself:notifyListener_(event)\n\tend\n\nend\n\n-- start --\n\n--------------------------------\n-- 在列表项中添加一项\n-- @function [parent=#UIListView] addItem\n-- @param node listItem 要添加的项\n-- @param integer pos 要添加的位置,默认添加到最后\n-- @return UIListView#UIListView \n\n-- end --\n\nfunction UIListView:addItem(listItem, pos)\n\tself:modifyItemSizeIf_(listItem)\n\n\tif pos then\n\t\ttable.insert(self.items_, pos, listItem)\n\telse\n\t\ttable.insert(self.items_, listItem)\n\tend\n\tself.container:addChild(listItem)\n\n\treturn self\nend\n\n-- start --\n\n--------------------------------\n-- 在列表项中移除一项\n-- @function [parent=#UIListView] removeItem\n-- @param node listItem 要移除的项\n-- @param boolean bAni 是否要显示移除动画\n-- @return UIListView#UIListView \n\n-- end --\n\nfunction UIListView:removeItem(listItem, bAni)\n\tassert(not self.bAsyncLoad, \"UIListView:removeItem() - syncload not support remove\")\n\n\tlocal itemW, itemH = listItem:getItemSize()\n\tself.container:removeChild(listItem)\n\n\tlocal pos = self:getItemPos(listItem)\n\tif pos then\n\t\ttable.remove(self.items_, pos)\n\tend\n\n\tif UIScrollView.DIRECTION_VERTICAL == self.direction then\n\t\titemW = 0\n\telse\n\t\titemH = 0\n\tend\n\n\tself.size.width = self.size.width - itemW\n\tself.size.height = self.size.height - itemH\n\n\tif 0 == table.nums(self.items_) then\n\t\treturn\n\tend\n\tif UIScrollView.DIRECTION_VERTICAL == self.direction then\n\t\tself:moveItems(1, pos - 1, -itemW, -itemH, bAni)\n\telse\n\t\tself:moveItems(pos, table.nums(self.items_), -itemW, -itemH, bAni)\n\tend\n\n\treturn self\nend\n\n-- start --\n\n--------------------------------\n-- 移除所有的项\n-- @function [parent=#UIListView] removeAllItems\n-- @return integer#integer \n\n-- end --\n\nfunction UIListView:removeAllItems()\n    self.container:removeAllChildren()\n    self.items_ = {}\n\n    return self\nend\n\n-- start --\n\n--------------------------------\n-- 取某项在列表控件中的位置\n-- @function [parent=#UIListView] getItemPos\n-- @param node listItem 列表项\n-- @return integer#integer \n\n-- end --\n\nfunction UIListView:getItemPos(listItem)\n\tfor i,v in ipairs(self.items_) do\n\t\tif v == listItem then\n\t\t\treturn i\n\t\tend\n\tend\nend\n\n-- start --\n\n--------------------------------\n-- 判断某项是否在列表控件的显示区域中\n-- @function [parent=#UIListView] isItemInViewRect\n-- @param integer pos 列表项位置\n-- @return boolean#boolean \n\n-- end --\n\nfunction UIListView:isItemInViewRect(pos)\n\tlocal item\n\tif \"number\" == type(pos) then\n\t\titem = self.items_[pos]\n\telseif \"userdata\" == type(pos) then\n\t\titem = pos\n\tend\n\n\tif not item then\n\t\treturn\n\tend\n\t\n\tlocal bound = item:getBoundingBox()\n\tlocal nodePoint = self.container:convertToWorldSpace(\n\t\tcc.p(bound.x, bound.y))\n\tbound.x = nodePoint.x\n\tbound.y = nodePoint.y\n\n\treturn cc.rectIntersectsRect(self.viewRect_, bound)\nend\n\n-- start --\n\n--------------------------------\n-- 加载列表\n-- @function [parent=#UIListView] reload\n-- @return UIListView#UIListView \n\n-- end --\n\nfunction UIListView:reload()\n\tif self.bAsyncLoad then\n\t\tself:asyncLoad_()\n\telse\n\t\tself:layout_()\n\tend\n\n\treturn self\nend\n\n-- start --\n\n--------------------------------\n-- 取一个空闲项出来,如果没有返回空\n-- @function [parent=#UIListView] dequeueItem\n-- @return UIListViewItem#UIListViewItem  item\n-- @see UIListViewItem\n\n-- end --\n\nfunction UIListView:dequeueItem()\n\tif #self.itemsFree_ < 1 then\n\t\treturn\n\tend\n\n\tlocal item\n\titem = table.remove(self.itemsFree_, 1)\n\n\t--标识从free中取出,在loadOneItem_中调用release\n\t--这里直接调用release,item会被释放掉\n\titem.bFromFreeQueue_ = true\n\n\treturn item\nend\n\nfunction UIListView:layout_()\n\tlocal width, height = 0, 0\n\tlocal itemW, itemH = 0, 0\n\tlocal margin\n\n\t-- calcate whole width height\n\tif UIScrollView.DIRECTION_VERTICAL == self.direction then\n\t\twidth = self.viewRect_.width\n\n\t\tfor i,v in ipairs(self.items_) do\n\t\t\titemW, itemH = v:getItemSize()\n\t\t\titemW = itemW or 0\n\t\t\titemH = itemH or 0\n\n\t\t\theight = height + itemH\n\t\tend\n\telse\n\t\theight = self.viewRect_.height\n\n\t\tfor i,v in ipairs(self.items_) do\n\t\t\titemW, itemH = v:getItemSize()\n\t\t\titemW = itemW or 0\n\t\t\titemH = itemH or 0\n\n\t\t\twidth = width + itemW\n\t\tend\n\tend\n\tself:setActualRect({x = self.viewRect_.x,\n\t\ty = self.viewRect_.y,\n\t\twidth = width,\n\t\theight = height})\n\tself.size.width = width\n\tself.size.height = height\n\n\tlocal tempWidth, tempHeight = width, height\n\tif UIScrollView.DIRECTION_VERTICAL == self.direction then\n\t\titemW, itemH = 0, 0\n\n\t\tlocal content\n\t\tfor i,v in ipairs(self.items_) do\n\t\t\titemW, itemH = v:getItemSize()\n\t\t\titemW = itemW or 0\n\t\t\titemH = itemH or 0\n\n\t\t\ttempHeight = tempHeight - itemH\n\t\t\tcontent = v:getContent()\n\t\t\tcontent:setAnchorPoint(0.5, 0.5)\n\t\t\t-- content:setPosition(itemW/2, itemH/2)\n\t\t\tself:setPositionByAlignment_(content, itemW, itemH, v:getMargin())\n\t\t\tv:setPosition(self.viewRect_.x,\n\t\t\t\tself.viewRect_.y + tempHeight)\n\t\tend\n\telse\n\t\titemW, itemH = 0, 0\n\t\ttempWidth = 0\n\n\t\tfor i,v in ipairs(self.items_) do\n\t\t\titemW, itemH = v:getItemSize()\n\t\t\titemW = itemW or 0\n\t\t\titemH = itemH or 0\n\n\t\t\tcontent = v:getContent()\n\t\t\tcontent:setAnchorPoint(0.5, 0.5)\n\t\t\t-- content:setPosition(itemW/2, itemH/2)\n\t\t\tself:setPositionByAlignment_(content, itemW, itemH, v:getMargin())\n\t\t\tv:setPosition(self.viewRect_.x + tempWidth, self.viewRect_.y)\n\t\t\ttempWidth = tempWidth + itemW\n\t\tend\n\tend\n\n\tself.container:setPosition(0, self.viewRect_.height - self.size.height)\nend\n\nfunction UIListView:notifyItem(point)\n\tlocal count = self.listener[UIListView.DELEGATE](self, UIListView.COUNT_TAG)\n\tlocal temp = (self.direction == UIListView.DIRECTION_VERTICAL and self.container:getContentSize().height) or 0\n\tlocal w,h = 0, 0\n\tlocal tag = 0\n\n\tfor i = 1, count do\n\t\tw,h = self.listener[UIListView.DELEGATE](self, UIListView.CELL_SIZE_TAG, i)\n\t\tif self.direction == UIListView.DIRECTION_VERTICAL then\n\t\t\ttemp = temp - h\n\t\t\tif point.y > temp then\n\t\t\t\tpoint.y = point.y - temp\n\t\t\t\ttag = i\n\t\t\t\tbreak\n\t\t\tend\n\t\telse\n\t\t\ttemp = temp + w\n\t\t\tif point.x < temp then\n\t\t\t\tpoint.x = point.x + w - temp\n\t\t\t\ttag = i\n\t\t\t\tbreak\n\t\t\tend\n\t\tend\n\tend\n\n\tif 0 == tag then\n\t\tprintInfo(\"UIListView - didn't found item\")\n\t\treturn\n\tend\n\n\tlocal item = self.container:getChildByTag(tag)\n\tself.listener[UIListView.DELEGATE](self, UIListView.CLICKED_TAG, tag, point)\nend\n\nfunction UIListView:moveItems(beginIdx, endIdx, x, y, bAni)\n\tif 0 == endIdx then\n\t\tself:elasticScroll()\n\tend\n\n\tlocal posX, posY = 0, 0\n\n\tlocal moveByParams = {x = x, y = y, time = 0.2}\n\tfor i=beginIdx, endIdx do\n\t\tif bAni then\n\t\t\tif i == beginIdx then\n\t\t\t\tmoveByParams.onComplete = function()\n\t\t\t\t\tself:elasticScroll()\n\t\t\t\tend\n\t\t\telse\n\t\t\t\tmoveByParams.onComplete = nil\n\t\t\tend\n\t\t\ttransition.moveBy(self.items_[i], moveByParams)\n\t\telse\n\t\t\tposX, posY = self.items_[i]:getPosition()\n\t\t\tself.items_[i]:setPosition(posX + x, posY + y)\n\t\t\tif i == beginIdx then\n\t\t\t\tself:elasticScroll()\n\t\t\tend\n\t\tend\n\tend\nend\n\nfunction UIListView:notifyListener_(event)\n\tif not self.touchListener_ then\n\t\treturn\n\tend\n\n\tself.touchListener_(event)\nend\n\nfunction UIListView:modifyItemSizeIf_(item)\n\tlocal w, h = item:getItemSize()\n\n\tif UIScrollView.DIRECTION_VERTICAL == self.direction then\n\t\tif w ~= self.viewRect_.width then\n\t\t\titem:setItemSize(self.viewRect_.width, h, true)\n\t\tend\n\telse\n\t\tif h ~= self.viewRect_.height then\n\t\t\titem:setItemSize(w, self.viewRect_.height, true)\n\t\tend\n\tend\nend\n\nfunction UIListView:update_(dt)\n\tUIListView.super.update_(self, dt)\n\n\tself:checkItemsInStatus_()\n\tif self.bAsyncLoad then\n\t\tself:increaseOrReduceItem_()\n\tend\nend\n\nfunction UIListView:checkItemsInStatus_()\n\tif not self.itemInStatus_ then\n\t\tself.itemInStatus_ = {}\n\tend\n\n\tlocal rectIntersectsRect = function(rectParent, rect)\n\t\t-- dump(rectParent, \"parent:\")\n\t\t-- dump(rect, \"rect:\")\n\n\t\tlocal nIntersects -- 0:no intersects,1:have intersects,2,have intersects and include totally\n\t\tlocal bIn = rectParent.x <= rect.x and\n\t\t\t\trectParent.x + rectParent.width >= rect.x + rect.width and\n\t\t\t\trectParent.y <= rect.y and\n\t\t\t\trectParent.y + rectParent.height >= rect.y + rect.height\n\t\tif bIn then\n\t\t\tnIntersects = 2\n\t\telse\n\t\t\tlocal bNotIn = rectParent.x > rect.x + rect.width or\n\t\t\t\trectParent.x + rectParent.width < rect.x or\n\t\t\t\trectParent.y > rect.y + rect.height or\n\t\t\t\trectParent.y + rectParent.height < rect.y\n\t\t\tif bNotIn then\n\t\t\t\tnIntersects = 0\n\t\t\telse\n\t\t\t\tnIntersects = 1\n\t\t\tend\n\t\tend\n\n\t\treturn nIntersects\n\tend\n\n\tlocal newStatus = {}\n\tlocal bound\n\tlocal nodePoint\n\tfor i,v in ipairs(self.items_) do\n\t\tbound = v:getBoundingBox()\n\t\tnodePoint = self.container:convertToWorldSpace(cc.p(bound.x, bound.y))\n\t\tbound.x = nodePoint.x\n\t\tbound.y = nodePoint.y\n\t\tnewStatus[i] =\n\t\t\trectIntersectsRect(self.viewRect_, bound)\n\tend\n\n\t-- dump(self.itemInStatus_, \"status:\")\n\t-- dump(newStatus, \"newStatus:\")\n\tfor i,v in ipairs(newStatus) do\n\t\tif self.itemInStatus_[i] and self.itemInStatus_[i] ~= v then\n\t\t\t-- print(\"statsus:\" .. self.itemInStatus_[i] .. \" v:\" .. v)\n\t\t\tlocal params = {listView = self,\n\t\t\t\t\t\t\titemPos = i,\n\t\t\t\t\t\t\titem = self.items_[i]}\n\t\t\tif 0 == v then\n\t\t\t\tparams.name = \"itemDisappear\"\n\t\t\telseif 1 == v then\n\t\t\t\tparams.name = \"itemAppearChange\"\n\t\t\telseif 2 == v then\n\t\t\t\tparams.name = \"itemAppear\"\n\t\t\tend\n\t\t\tself:notifyListener_(params)\n\t\telse\n\t\t\t-- print(\"status same:\" .. self.itemInStatus_[i])\n\t\tend\n\tend\n\tself.itemInStatus_ = newStatus\n\t-- dump(self.itemInStatus_, \"status:\")\n\t-- print(\"itemStaus:\" .. #self.itemInStatus_)\nend\n\n--[[--\n\n动态调整item,是否需要加载新item,移除旧item\n私有函数\n\n]]\nfunction UIListView:increaseOrReduceItem_()\n\n\tif 0 == #self.items_ then\n\t\tprint(\"ERROR items count is 0\")\n\t\treturn\n\tend\n\n\tlocal getContainerCascadeBoundingBox = function ()\n\t\tlocal boundingBox\n\t\tfor i, item in ipairs(self.items_) do\n\t\t\tlocal w,h = item:getItemSize()\n\t\t\tlocal x,y = item:getPosition()\n\t\t\tlocal anchor = item:getAnchorPoint()\n\t\t\tx = x - anchor.x * w\n\t\t\ty = y - anchor.y * h\n\n\t\t\tif boundingBox then\n\t\t\t\tboundingBox = cc.rectUnion(boundingBox, cc.rect(x, y, w, h))\n\t\t\telse\n\t\t\t\tboundingBox = cc.rect(x, y, w, h)\n\t\t\tend\n\t\tend\n\n\t\tlocal point = self.container:convertToWorldSpace(cc.p(boundingBox.x, boundingBox.y))\n\t\tboundingBox.x = point.x\n\t\tboundingBox.y = point.y\n\t\treturn boundingBox\n\tend\n\n\tlocal count = self.delegate_[UIListView.DELEGATE](self, UIListView.COUNT_TAG)\n\tlocal nNeedAdjust = 2 --作为是否还需要再增加或减少item的标志,2表示上下两个方向或左右都需要调整\n\tlocal cascadeBound = getContainerCascadeBoundingBox()\n\tlocal item\n\tlocal itemW, itemH\n\n\t-- print(\"child count:\" .. self.container:getChildrenCount())\n\t-- dump(cascadeBound, \"increaseOrReduceItem_ cascadeBound:\")\n\t-- dump(self.viewRect_, \"increaseOrReduceItem_ viewRect:\")\n\n\tif UIScrollView.DIRECTION_VERTICAL == self.direction then\n\n\t\t--ahead part of view\n\t\tlocal disH = cascadeBound.y + cascadeBound.height - self.viewRect_.y - self.viewRect_.height\n\t\tlocal tempIdx\n\t\titem = self.items_[1]\n\t\tif not item then\n\t\t\tprint(\"increaseOrReduceItem_ item is nil, all item count:\" .. #self.items_)\n\t\t\treturn\n\t\tend\n\t\ttempIdx = item.idx_\n\t\t-- print(string.format(\"befor disH:%d, view val:%d\", disH, self.redundancyViewVal))\n\t\tif disH > self.redundancyViewVal then\n\t\t\titemW, itemH = item:getItemSize()\n\t\t\tif cascadeBound.height - itemH > self.viewRect_.height\n\t\t\t\tand disH - itemH > self.redundancyViewVal then\n\t\t\t\tself:unloadOneItem_(tempIdx)\n\t\t\telse\n\t\t\t\tnNeedAdjust = nNeedAdjust - 1\n\t\t\tend\n\t\telse\n\t\t\titem = nil\n\t\t\ttempIdx = tempIdx - 1\n\t\t\tif tempIdx > 0 then\n\t\t\t\tlocal localPoint = self.container:convertToNodeSpace(cc.p(cascadeBound.x, cascadeBound.y + cascadeBound.height))\n\t\t\t\titem = self:loadOneItem_(localPoint, tempIdx, true)\n\t\t\tend\n\t\t\tif nil == item then\n\t\t\t\tnNeedAdjust = nNeedAdjust - 1\n\t\t\tend\n\t\tend\n\n\t\t--part after view\n\t\tdisH = self.viewRect_.y - cascadeBound.y\n\t\titem = self.items_[#self.items_]\n\t\tif not item then\n\t\t\treturn\n\t\tend\n\t\ttempIdx = item.idx_\n\t\t-- print(string.format(\"after disH:%d, view val:%d\", disH, self.redundancyViewVal))\n\t\tif disH > self.redundancyViewVal then\n\t\t\titemW, itemH = item:getItemSize()\n\t\t\tif cascadeBound.height - itemH > self.viewRect_.height\n\t\t\t\tand disH - itemH > self.redundancyViewVal then\n\t\t\t\tself:unloadOneItem_(tempIdx)\n\t\t\telse\n\t\t\t\tnNeedAdjust = nNeedAdjust - 1\n\t\t\tend\n\t\telse\n\t\t\titem = nil\n\t\t\ttempIdx = tempIdx + 1\n\t\t\tif tempIdx <= count then\n\t\t\t\tlocal localPoint = self.container:convertToNodeSpace(cc.p(cascadeBound.x, cascadeBound.y))\n\t\t\t\titem = self:loadOneItem_(localPoint, tempIdx)\n\t\t\tend\n\t\t\tif nil == item then\n\t\t\t\tnNeedAdjust = nNeedAdjust - 1\n\t\t\tend\n\t\tend\n\telse\n\t\t--left part of view\n\t\tlocal disW = self.viewRect_.x - cascadeBound.x\n\t\titem = self.items_[1]\n\t\tlocal tempIdx = item.idx_\n\t\tif disW > self.redundancyViewVal then\n\t\t\titemW, itemH = item:getItemSize()\n\t\t\tif cascadeBound.width - itemW > self.viewRect_.width\n\t\t\t\tand disW - itemW > self.redundancyViewVal then\n\t\t\t\tself:unloadOneItem_(tempIdx)\n\t\t\telse\n\t\t\t\tnNeedAdjust = nNeedAdjust - 1\n\t\t\tend\n\t\telse\n\t\t\titem = nil\n\t\t\ttempIdx = tempIdx - 1\n\t\t\tif tempIdx > 0 then\n\t\t\t\tlocal localPoint = self.container:convertToNodeSpace(cc.p(cascadeBound.x, cascadeBound.y))\n\t\t\t\titem = self:loadOneItem_(localPoint, tempIdx, true)\n\t\t\tend\n\t\t\tif nil == item then\n\t\t\t\tnNeedAdjust = nNeedAdjust - 1\n\t\t\tend\n\t\tend\n\n\t\t--right part of view\n\t\tdisW = cascadeBound.x + cascadeBound.width - self.viewRect_.x - self.viewRect_.width\n\t\titem = self.items_[#self.items_]\n\t\ttempIdx = item.idx_\n\t\tif disW > self.redundancyViewVal then\n\t\t\titemW, itemH = item:getItemSize()\n\t\t\tif cascadeBound.width - itemW > self.viewRect_.width\n\t\t\t\tand disW - itemW > self.redundancyViewVal then\n\t\t\t\tself:unloadOneItem_(tempIdx)\n\t\t\telse\n\t\t\t\tnNeedAdjust = nNeedAdjust - 1\n\t\t\tend\n\t\telse\n\t\t\titem = nil\n\t\t\ttempIdx = tempIdx + 1\n\t\t\tif tempIdx <= count then\n\t\t\t\tlocal localPoint = self.container:convertToNodeSpace(cc.p(cascadeBound.x + cascadeBound.width, cascadeBound.y))\n\t\t\t\titem = self:loadOneItem_(localPoint, tempIdx)\n\t\t\tend\n\t\t\tif nil == item then\n\t\t\t\tnNeedAdjust = nNeedAdjust - 1\n\t\t\tend\n\t\tend\n\tend\n\n\t-- print(\"increaseOrReduceItem_() adjust:\" .. nNeedAdjust)\n\t-- print(\"increaseOrReduceItem_() item count:\" .. #self.items_)\n\tif nNeedAdjust > 0 then\n\t\treturn self:increaseOrReduceItem_()\n\tend\nend\n\n--[[--\n\n异步加载列表数据\n\n@return UIListView\n\n]]\nfunction UIListView:asyncLoad_()\n\tself:removeAllItems()\n\tself.container:setPosition(0, 0)\n\tself.container:setContentSize(cc.size(0, 0))\n\n\tlocal count = self.delegate_[UIListView.DELEGATE](self, UIListView.COUNT_TAG)\n\n\tself.items_ = {}\n\tlocal itemW, itemH = 0, 0\n\tlocal item\n\tlocal containerW, containerH = 0, 0\n\tlocal posX, posY = 0, 0\n\tfor i=1,count do\n\t\titem, itemW, itemH = self:loadOneItem_(cc.p(posX, posY), i)\n\n\t\tif UIScrollView.DIRECTION_VERTICAL == self.direction then\n\t\t\tposY = posY - itemH\n\n\t\t\tcontainerH = containerH + itemH\n\t\telse\n\t\t\tposX = posX + itemW\n\n\t\t\tcontainerW = containerW + itemW\n\t\tend\n\n\t\t-- 初始布局,最多保证可隐藏的区域大于显示区域就可以了\n\t\tif containerW > self.viewRect_.width + self.redundancyViewVal\n\t\t\tor containerH > self.viewRect_.height + self.redundancyViewVal then\n\t\t\tbreak\n\t\tend\n\tend\n\n\t-- self.container:setPosition(self.viewRect_.x, self.viewRect_.y)\n\tif UIScrollView.DIRECTION_VERTICAL == self.direction then\n\t\tself.container:setPosition(self.viewRect_.x,\n\t\t\tself.viewRect_.y + self.viewRect_.height)\n\telse\n\t\tself.container:setPosition(self.viewRect_.x, self.viewRect_.y)\n\tend\n\n\treturn self\nend\n\n-- start --\n\n--------------------------------\n-- 设置delegate函数\n-- @function [parent=#UIListView] setDelegate\n-- @return UIListView#UIListView \n\n-- end --\n\nfunction UIListView:setDelegate(delegate)\n\tself.delegate_[UIListView.DELEGATE] = delegate\nend\n\n--[[--\n\n调整item中content的布局,\n私有函数\n\n]]\nfunction UIListView:setPositionByAlignment_(content, w, h, margin)\n\tlocal size = content:getContentSize()\n\tif 0 == margin.left and 0 == margin.right and 0 == margin.top and 0 == margin.bottom then\n\t\tif UIScrollView.DIRECTION_VERTICAL == self.direction then\n\t\t\tif UIListView.ALIGNMENT_LEFT == self.alignment then\n\t\t\t\tcontent:setPosition(size.width/2, h/2)\n\t\t\telseif UIListView.ALIGNMENT_RIGHT == self.alignment then\n\t\t\t\tcontent:setPosition(w - size.width/2, h/2)\n\t\t\telse\n\t\t\t\tcontent:setPosition(w/2, h/2)\n\t\t\tend\n\t\telse\n\t\t\tif UIListView.ALIGNMENT_TOP == self.alignment then\n\t\t\t\tcontent:setPosition(w/2, h - size.height/2)\n\t\t\telseif UIListView.ALIGNMENT_RIGHT == self.alignment then\n\t\t\t\tcontent:setPosition(w/2, size.height/2)\n\t\t\telse\n\t\t\t\tcontent:setPosition(w/2, h/2)\n\t\t\tend\n\t\tend\n\telse\n\t\tlocal posX, posY\n\t\tif 0 ~= margin.right then\n\t\t\tposX = w - margin.right - size.width/2\n\t\telse\n\t\t\tposX = size.width/2 + margin.left\n\t\tend\n\t\tif 0 ~= margin.top then\n\t\t\tposY = h - margin.top - size.height/2\n\t\telse\n\t\t\tposY = size.height/2 + margin.bottom\n\t\tend\n\t\tcontent:setPosition(posX, posY)\n\tend\nend\n\n--[[--\n\n加载一个数据项\n私有函数\n\n@param table originPoint 数据项要加载的起始位置\n@param number idx 要加载数据的序号\n@param boolean bBefore 是否加在已有项的前面\n\n@return UIListViewItem item\n\n]]\nfunction UIListView:loadOneItem_(originPoint, idx, bBefore)\n\t-- print(\"UIListView loadOneItem idx:\" .. idx)\n\t-- dump(originPoint, \"originPoint:\")\n\n\tlocal itemW, itemH = 0, 0\n\tlocal item\n\tlocal containerW, containerH = 0, 0\n\tlocal posX, posY = originPoint.x, originPoint.y\n\tlocal content\n\n\titem = self.delegate_[UIListView.DELEGATE](self, UIListView.CELL_TAG, idx)\n\tif nil == item then\n\t\tprint(\"ERROR! UIListView load nil item\")\n\t\treturn\n\tend\n\titem.idx_ = idx\n\titemW, itemH = item:getItemSize()\n\n\tif UIScrollView.DIRECTION_VERTICAL == self.direction then\n\t\titemW = itemW or 0\n\t\titemH = itemH or 0\n\n\t\tif bBefore then\n\t\t\tposY = posY\n\t\telse\n\t\t\tposY = posY - itemH\n\t\tend\n\t\tcontent = item:getContent()\n\t\tcontent:setAnchorPoint(0.5, 0.5)\n\t\tself:setPositionByAlignment_(content, itemW, itemH, item:getMargin())\n\t\titem:setPosition(0, posY)\n\n\t\tcontainerH = containerH + itemH\n\telse\n\t\titemW = itemW or 0\n\t\titemH = itemH or 0\n\t\tif bBefore then\n\t\t\tposX = posX - itemW\n\t\tend\n\n\t\tcontent = item:getContent()\n\t\tcontent:setAnchorPoint(0.5, 0.5)\n\t\tself:setPositionByAlignment_(content, itemW, itemH, item:getMargin())\n\t\titem:setPosition(posX, 0)\n\n\t\tcontainerW = containerW + itemW\n\tend\n\n\tif bBefore then\n\t\ttable.insert(self.items_, 1, item)\n\telse\n\t\ttable.insert(self.items_, item)\n\tend\n\n\tself.container:addChild(item)\n\tif item.bFromFreeQueue_ then\n\t\titem.bFromFreeQueue_ = nil\n\t\titem:release()\n\tend\n\t-- local cascadeBound = self.container:getCascadeBoundingBox()\n\t-- dump(cascadeBound, \"cascadeBound:\")\n\n\treturn item, itemW, itemH\nend\n\n--[[--\n\n移除一个数据项\n私有函数\n\n\n]]\nfunction UIListView:unloadOneItem_(idx)\n\t-- print(\"UIListView unloadOneItem idx:\" .. idx)\n\n\tlocal item = self.items_[1]\n\n\tif nil == item then\n\t\treturn\n\tend\n\tif item.idx_ > idx then\n\t\treturn\n\tend\n\tlocal unloadIdx = idx - item.idx_ + 1\n\titem = self.items_[unloadIdx]\n\tif nil == item then\n\t\treturn\n\tend\n\ttable.remove(self.items_, unloadIdx)\n\tself:addFreeItem_(item)\n\t-- item:removeFromParentAndCleanup(false)\n\tself.container:removeChild(item, false)\n\n\tself.delegate_[UIListView.DELEGATE](self, UIListView.UNLOAD_CELL_TAG, idx)\nend\n\n--[[--\n\n加一个空项到空闲列表中\n私有函数\n\n]]\nfunction UIListView:addFreeItem_(item)\n\titem:retain()\n\ttable.insert(self.itemsFree_, item)\nend\n\n--[[--\n\n释放所有的空闲列表项\n私有函数\n\n]]\nfunction UIListView:releaseAllFreeItems_()\n\tfor i,v in ipairs(self.itemsFree_) do\n\t\tv:release()\n\tend\n\tself.itemsFree_ = {}\nend\n\n\n\nreturn UIListView\n"
  },
  {
    "path": "源代码/mir9/src/framework/cc/ui/UIListViewItem.lua",
    "content": "\n--[[\n\nCopyright (c) 2011-2014 chukong-inc.com\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in\nall copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\nTHE SOFTWARE.\n\n]]\n\n--------------------------------\n-- @module UIListViewItem\n\n--[[--\n\nquick UIListViewItem控件\n\n]]\n\nlocal UIScrollView = import(\".UIScrollView\")\n\nlocal UIListViewItem = class(\"UIListViewItem\", function()\n\treturn cc.Node:create()\nend)\n\nUIListViewItem.BG_TAG = 1\nUIListViewItem.BG_Z_ORDER = 1\nUIListViewItem.CONTENT_TAG = 11\nUIListViewItem.CONTENT_Z_ORDER = 11\nUIListViewItem.ID_COUNTER = 0\n\nfunction UIListViewItem:ctor(item)\n\tself.width = 0\n\tself.height = 0\n\tself.margin_ = {left = 0, right = 0, top = 0, bottom = 0}\n\tUIListViewItem.ID_COUNTER = UIListViewItem.ID_COUNTER + 1\n\tself.id = UIListViewItem.ID_COUNTER\n\tself:setTag(self.id)\n\tself:addContent(item)\nend\n\n-- start --\n\n--------------------------------\n-- 将要内容加到列表控件项中\n-- @function [parent=#UIListViewItem] addContent\n-- @param node content 显示内容\n\n-- end --\n\nfunction UIListViewItem:addContent(content)\n\tif not content then\n\t\treturn\n\tend\n\n\tself:addChild(content, UIListViewItem.CONTENT_Z_ORDER, UIListViewItem.CONTENT_TAG)\nend\n\n-- start --\n\n--------------------------------\n-- 获取列表控件项中的内容\n-- @function [parent=#UIListViewItem] getContent\n-- @return node#node \n\n-- end --\n\nfunction UIListViewItem:getContent()\n\treturn self:getChildByTag(UIListViewItem.CONTENT_TAG)\nend\n\n-- start --\n\n--------------------------------\n-- 设置列表项中的大小\n-- @function [parent=#UIListViewItem] setItemSize\n-- @param number w 列表项宽度\n-- @param number h 列表项高度\n-- @param boolean bNoMargin 是否不使用margin margin可调用setMargin赋值\n\n-- end --\n\nfunction UIListViewItem:setItemSize(w, h, bNoMargin)\n\tif not bNoMargin then\n\t\tif UIScrollView.DIRECTION_VERTICAL == self.lvDirection_ then\n\t\t\th = h + self.margin_.top + self.margin_.bottom\n\t\telse\n\t\t\tw = w + self.margin_.left + self.margin_.right\n\t\tend\n\tend\n\n\t-- print(\"UIListViewItem - setItemSize w:\" .. w .. \" h:\" .. h)\n\n\tlocal oldSize = {width = self.width, height = self.height}\n\tlocal newSize = {width = w, height = h}\n\n\tself.width = w or 0\n\tself.height = h or 0\n\tself:setContentSize(w, h)\n\n\tlocal bg = self:getChildByTag(UIListViewItem.BG_TAG)\n\tif bg then\n\t\tbg:setContentSize(w, h)\n\t\tbg:setPosition(cc.p(w/2, h/2))\n\tend\n\n\tself.listener(self, newSize, oldSize)\nend\n\n--[[--\n\n设置列表项中的大小\n\n@return number width\n@return number height\n\n]]\nfunction UIListViewItem:getItemSize()\n\treturn self.width, self.height\nend\n\nfunction UIListViewItem:setMargin(margin)\n\tself.margin_ = margin\n\n\t-- dump(self.margin_, \"set margin:\")\nend\n\nfunction UIListViewItem:getMargin()\n\treturn self.margin_\nend\n\nfunction UIListViewItem:setBg(bg)\n\tlocal sp = display.newScale9Sprite(bg)\n\tsp:setAnchorPoint(cc.p(0.5, 0.5))\n\tsp:setPosition(cc.p(self.width/2, self.height/2))\n\tself:addChild(sp, UIListViewItem.BG_Z_ORDER, UIListViewItem.BG_TAG)\nend\n\nfunction UIListViewItem:onSizeChange(listener)\n\tself.listener = listener\n\n\treturn self\nend\n\n-- just for listview invoke\nfunction UIListViewItem:setDirction(dir)\n\tself.lvDirection_ = dir\nend\n\nreturn UIListViewItem\n"
  },
  {
    "path": "源代码/mir9/src/framework/cc/ui/UILoadingBar.lua",
    "content": "\n--[[\n\nCopyright (c) 2011-2014 chukong-inc.com\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in\nall copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\nTHE SOFTWARE.\n\n]]\n\n--------------------------------\n-- @module UILoadingBar\n\n--[[--\n\nquick 进度控件\n\n]]\n\nlocal UILoadingBar = class(\"UILoadingBar\", function()\n\tlocal node = cc.ClippingRegionNode:create()\n\treturn node\nend)\n\nUILoadingBar.DIRECTION_LEFT_TO_RIGHT = 0\nUILoadingBar.DIRECTION_RIGHT_TO_LEFT = 1\n\n-- start --\n\n--------------------------------\n-- 进度控件构建函数\n-- @function [parent=#UILoadingBar] new\n-- @param table params 参数\n\n--[[--\n\n进度控件构建函数\n\n可用参数有：\n\n-   scale9 是否缩放\n-   capInsets 缩放的区域\n-   image 图片\n-   viewRect 显示区域\n-   percent 进度值 0到100\n-\tdirection 方向，默认值从左到右\n\n]]\n-- end --\n\nfunction UILoadingBar:ctor(params)\n\tif params.scale9 then\n\t\tself.scale9 = true\n\t\tlocal scale9sp = ccui.Scale9Sprite or cc.Scale9Sprite\n\t\tif string.byte(params.image) == 35 then\n\t\t\tself.bar = scale9sp:createWithSpriteFrameName(\n\t\t\t\tstring.sub(params.image, 2), params.capInsets);\n\t\telse\n\t\t\tself.bar = scale9sp:create(\n\t\t\t\tparams.capInsets, params.image)\n\t\tend\n\t\tself:setClippingRegion(cc.rect(0, 0, params.viewRect.width, params.viewRect.height))\n\telse\n\t\tself.bar = display.newSprite(params.image)\n\tend\n\n\tself.direction_ = params.direction or UILoadingBar.DIRECTION_LEFT_TO_RIGHT\n\n\tself:setViewRect(params.viewRect)\n\tself.bar:setAnchorPoint(cc.p(0, 0))\n\tself.bar:setPosition(0, 0)\n\tself:setPercent(params.percent or 0)\n\tself:addChild(self.bar)\nend\n\n-- start --\n\n--------------------------------\n-- 设置进度控件的进度\n-- @function [parent=#UILoadingBar] setPercent\n-- @param number percent 进度值 0到100\n-- @return UILoadingBar#UILoadingBar \n\n-- end --\n\nfunction UILoadingBar:setPercent(percent)\n\tlocal rect = cc.rect(self.viewRect_.x, self.viewRect_.y,\n\t\tself.viewRect_.width, self.viewRect_.height)\n\tlocal newWidth = rect.width*percent/100\n\n\trect.x = 0\n\trect.y = 0\n\tif self.scale9 then\n\t\tself.bar:setPreferredSize(cc.size(newWidth, rect.height))\n\t\tif UILoadingBar.DIRECTION_LEFT_TO_RIGHT ~= self.direction_ then\n\t\t\tself.bar:setPosition(rect.width - newWidth,\t0)\n\t\tend\n\telse\n\t\tif UILoadingBar.DIRECTION_LEFT_TO_RIGHT == self.direction_ then\n\t\t\trect.width = newWidth\n\t\t\tself:setClippingRegion(cc.rect(rect.x, rect.y, rect.width, rect.height))\n\t\telse\n\t\t\trect.x = rect.x + rect.width - newWidth\n\t\t\trect.width = newWidth\n\t\t\tself:setClippingRegion(cc.rect(rect.x, rect.y, rect.width, rect.height))\n\t\tend\n\tend\n\n\treturn self\nend\n\n-- start --\n\n--------------------------------\n-- 设置进度控件的方向\n-- @function [parent=#UILoadingBar] setDirction\n-- @param integer dir 进度的方向\n-- @return UILoadingBar#UILoadingBar \n\n-- end --\n\nfunction UILoadingBar:setDirction(dir)\n\tself.direction_ = dir\n\tif UILoadingBar.DIRECTION_LEFT_TO_RIGHT ~= self.direction_ then\n\t\tif self.bar.setFlippedX then\n\t\t\tself.bar:setFlippedX(true)\n\t\tend\n\tend\n\n\treturn self\nend\n\n-- start --\n\n--------------------------------\n-- 设置进度控件的显示区域\n-- @function [parent=#UILoadingBar] setViewRect\n-- @param table rect 显示区域\n-- @return UILoadingBar#UILoadingBar \n\n-- end --\n\nfunction UILoadingBar:setViewRect(rect)\n\tself.viewRect_ = rect\n\tself.bar:setContentSize(rect.width, rect.height)\n\n\treturn self\nend\n\nreturn UILoadingBar\n"
  },
  {
    "path": "源代码/mir9/src/framework/cc/ui/UIPageView.lua",
    "content": "\n--[[\n\nCopyright (c) 2011-2014 chukong-inc.com\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in\nall copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\nTHE SOFTWARE.\n\n]]\n\n--------------------------------\n-- @module UIPageView\n\n--[[--\n\nquick page控件\n\n]]\n\nlocal UIPageViewItem = import(\".UIPageViewItem\")\n\nlocal UIPageView = class(\"UIPageView\", function()\n\t-- local node = display.newNode()\n\tlocal node = display.newClippingRegionNode()\n\t-- node:setContentSize(display.width, display.height)\n\treturn node\nend)\n\n-- start --\n\n--------------------------------\n-- UIPageView构建函数\n-- @function [parent=#UIPageView] new\n-- @param table params 参数表\n\n--[[--\n\nUIPageView构建函数\n\n可用参数有：\n\n-   column 每一页的列数，默认为1\n-   row 每一页的行数，默认为1\n-   columnSpace 列之间的间隙，默认为0\n-   rowSpace 行之间的间隙，默认为0\n-   viewRect 页面控件的显示区域\n-   padding 值为一个表，页面控件四周的间隙\n    -   left 左边间隙\n    -   right 右边间隙\n    -   top 上边间隙\n    -   bottom 下边间隙\n-   bCirc 页面是否循环,默认为false\n\n]]\n-- end --\n\nfunction UIPageView:ctor(params)\n\tself.items_ = {}\n\tself.viewRect_ = params.viewRect or cc.rect(0, 0, display.width, display.height)\n\tself.column_ = params.column or 1\n\tself.row_ = params.row or 1\n\tself.columnSpace_ = params.columnSpace or 0\n\tself.rowSpace_ = params.rowSpace or 0\n\tself.padding_ = params.padding or {left = 0, right = 0, top = 0, bottom = 0}\n\tself.bCirc = params.bCirc or false\n\n\tself:setClippingRegion(self.viewRect_)\n\t-- self:addNodeEventListener(cc.NODE_ENTER_FRAME_EVENT, function(...)\n\t-- \t\tself:update_(...)\n\t-- \tend)\n\tself:setTouchEnabled(true)\n\tself:addNodeEventListener(cc.NODE_TOUCH_EVENT, function (event)\n        \treturn self:onTouch_(event)\n    \tend)\nend\n\n-- start --\n\n--------------------------------\n-- 创建一个新的页面控件项\n-- @function [parent=#UIPageView] newItem\n-- @return UIPageViewItem#UIPageViewItem \n\n-- end --\n\nfunction UIPageView:newItem()\n\tlocal item = UIPageViewItem.new()\n\tlocal itemW = (self.viewRect_.width - self.padding_.left - self.padding_.right\n\t\t\t\t- self.columnSpace_*(self.column_ - 1)) / self.column_\n\tlocal itemH = (self.viewRect_.height - self.padding_.top - self.padding_.bottom\n\t\t\t\t- self.rowSpace_*(self.row_ - 1)) / self.row_\n\t-- item:setContentSize(self.viewRect_.width/self.column_, self.viewRect_.height/self.row_)\n\titem:setContentSize(itemW, itemH)\n\n\treturn item\nend\n\n-- start --\n\n--------------------------------\n-- 添加一项到页面控件中\n-- @function [parent=#UIPageView] addItem\n-- @param node item 页面控件项\n-- @return UIPageView#UIPageView \n\n-- end --\n\nfunction UIPageView:addItem(item)\n\ttable.insert(self.items_, item)\n\n\treturn self\nend\n\n-- start --\n\n--------------------------------\n-- 移除一项\n-- @function [parent=#UIPageView] removeItem\n-- @param number idx 要移除项的序号\n-- @return UIPageView#UIPageView \n\n-- end --\n\nfunction UIPageView:removeItem(item)\n\tlocal itemIdx\n\tfor i,v in ipairs(self.items_) do\n\t\tif v == item then\n\t\t\titemIdx = i\n\t\tend\n\tend\n\n\tif not itemIdx then\n\t\tprint(\"ERROR! item isn't exist\")\n\t\treturn self\n\tend\n\n\tif itemIdx then\n\t\ttable.remove(self.items_, itemIdx)\n\tend\n\n\tself:reload(self.curPageIdx_)\n\n\treturn self\nend\n\n-- start --\n\n--------------------------------\n-- 移除所有页面\n-- @function [parent=#UIPageView] removeAllItems\n-- @return UIPageView#UIPageView \n\n-- end --\n\nfunction UIPageView:removeAllItems()\n\tself.items_ = {}\n\n\tself:reload(self.curPageIdx_)\n\n\treturn self\nend\n\n-- start --\n\n--------------------------------\n-- 注册一个监听函数\n-- @function [parent=#UIPageView] onTouch\n-- @param function listener 监听函数\n-- @return UIPageView#UIPageView \n\n-- end --\n\nfunction UIPageView:onTouch(listener)\n\tself.touchListener = listener\n\n\treturn self\nend\n\n-- start --\n\n--------------------------------\n-- 加载数据，各种参数\n-- @function [parent=#UIPageView] reload\n-- @param number page index加载完成后,首先要显示的页面序号,为空从第一页开始显示\n-- @return UIPageView#UIPageView \n\n-- end --\n\nfunction UIPageView:reload(idx)\n\tlocal page\n\tlocal pageCount\n\tself.pages_ = {}\n\n\t-- retain all items\n\tfor i,v in ipairs(self.items_) do\n\t\tv:retain()\n\tend\n\n\tself:removeAllChildren()\n\n\tpageCount = self:getPageCount()\n\tif pageCount < 1 then\n\t\treturn self\n\tend\n\n\tif pageCount > 0 then\n\t\tfor i = 1, pageCount do\n\t\t\tpage = self:createPage_(i)\n\t\t\tpage:setVisible(false)\n\t\t\ttable.insert(self.pages_, page)\n\t\t\tself:addChild(page)\n\t\tend\n\tend\n\n\tif not idx or idx < 1 then\n\t\tidx = 1\n\telseif idx > pageCount then\n\t\tidx = pageCount\n\tend\n\tself.curPageIdx_ = idx\n\tself.pages_[idx]:setVisible(true)\n\tself.pages_[idx]:setPosition(\n\t\tself.viewRect_.x, self.viewRect_.y)\n\n\t-- release all items\n\tfor i,v in ipairs(self.items_) do\n\t\tv:release()\n\tend\n\n\treturn self\nend\n\n-- start --\n\n--------------------------------\n-- 跳转到特定的页面\n-- @function [parent=#UIPageView] gotoPage\n-- @param integer pageIdx 要跳转的页面的位置\n-- @param boolean bSmooth 是否需要跳转动画\n-- @param bLeftToRight 移动的方向,在可循环下有效, nil:自动调整方向,false:从右向左,true:从左向右\n-- @return UIPageView#UIPageView \n\n-- end --\n\nfunction UIPageView:gotoPage(pageIdx, bSmooth, bLeftToRight)\n\tif pageIdx < 1 or pageIdx > self:getPageCount() then\n\t\treturn self\n\tend\n\tif pageIdx == self.curPageIdx_ and bSmooth then\n\t\treturn self\n\tend\n\n\tif bSmooth then\n\t\tself:resetPagePos(pageIdx, bLeftToRight)\n\t\tself:scrollPagePos(pageIdx, bLeftToRight)\n\telse\n\t\tself.pages_[self.curPageIdx_]:setVisible(false)\n\t\tself.pages_[pageIdx]:setVisible(true)\n\t\tself.pages_[pageIdx]:setPosition(\n\t\t\tself.viewRect_.x, self.viewRect_.y)\n\t\tself.curPageIdx_ = pageIdx\n\n\t\t-- self.notifyListener_{name = \"clicked\",\n\t\t-- \t\titem = self.items_[clickIdx],\n\t\t-- \t\titemIdx = clickIdx,\n\t\t-- \t\tpageIdx = self.curPageIdx_}\n\t\tself:notifyListener_{name = \"pageChange\"}\n\tend\n\n\treturn self\nend\n\n-- start --\n\n--------------------------------\n-- 得到页面的总数\n-- @function [parent=#UIPageView] getPageCount\n-- @return number#number \n\n-- end --\n\nfunction UIPageView:getPageCount()\n\treturn math.ceil(table.nums(self.items_)/(self.column_*self.row_))\nend\n\n-- start --\n\n--------------------------------\n-- 得到当前页面的位置\n-- @function [parent=#UIPageView] getCurPageIdx\n-- @return number#number \n\n-- end --\n\nfunction UIPageView:getCurPageIdx()\n\treturn self.curPageIdx_\nend\n\n-- start --\n\n--------------------------------\n-- 设置页面控件是否为循环\n-- @function [parent=#UIPageView] setCirculatory\n-- @param boolean bCirc 是否循环\n-- @return UIPageView#UIPageView \n\n-- end --\n\nfunction UIPageView:setCirculatory(bCirc)\n\tself.bCirc = bCirc\n\n\treturn self\nend\n\n-- private\n\nfunction UIPageView:createPage_(pageNo)\n\tlocal page = display.newNode()\n\tlocal item\n\tlocal beginIdx = self.row_*self.column_*(pageNo-1) + 1\n\tlocal itemW, itemH\n\n\titemW = (self.viewRect_.width - self.padding_.left - self.padding_.right\n\t\t\t\t- self.columnSpace_*(self.column_ - 1)) / self.column_\n\titemH = (self.viewRect_.height - self.padding_.top - self.padding_.bottom\n\t\t\t\t- self.rowSpace_*(self.row_ - 1)) / self.row_\n\tlocal bBreak = false\n\tfor row=1,self.row_ do\n\t\tfor column=1,self.column_ do\n\t\t\titem = self.items_[beginIdx]\n\t\t\tbeginIdx = beginIdx + 1\n\t\t\tif not item then\n\t\t\t\tbBreak = true\n\t\t\t\tbreak\n\t\t\tend\n\t\t\tpage:addChild(item)\n\n\t\t\titem:setAnchorPoint(cc.p(0.5, 0.5))\n\t\t\titem:setPosition(\n\t\t\t\tself.padding_.left + (column - 1)*self.columnSpace_ + column*itemW - itemW/2,\n\t\t\t\tself.viewRect_.height - self.padding_.top - (row - 1)*self.rowSpace_ - row*itemH + itemH/2)\n\t\t\t\t-- self.padding_.bottom + (row - 1)*self.rowSpace_ + row*itemH - itemH/2)\n\t\tend\n\t\tif bBreak then\n\t\t\tbreak\n\t\tend\n\tend\n\n\tpage:setTag(1500 + pageNo)\n\n\treturn page\nend\n\nfunction UIPageView:isTouchInViewRect_(event, rect)\n\trect = rect or self.viewRect_\n\tlocal viewRect = self:convertToWorldSpace(cc.p(rect.x, rect.y))\n\tviewRect.width = rect.width\n\tviewRect.height = rect.height\n\n\treturn cc.rectContainsPoint(viewRect, cc.p(event.x, event.y))\nend\n\nfunction UIPageView:onTouch_(event)\n\tif \"began\" == event.name\n\t\tand not self:isTouchInViewRect_(event) then\n\t\tprintInfo(\"UIPageView - touch didn't in viewRect\")\n\t\treturn false\n\tend\n\n\tif \"began\" == event.name then\n\t\tself:stopAllTransition()\n\t\tself.bDrag_ = false\n\telseif \"moved\" == event.name then\n\t\tself.bDrag_ = true\n\t\tself.speed = event.x - event.prevX\n\t\tself:scroll(self.speed)\n\telseif \"ended\" == event.name then\n\t\tif self.bDrag_ then\n\t\t\tself:scrollAuto()\n\t\telse\n\t\t\tself:resetPages_()\n\t\t\tself:onClick_(event)\n\t\tend\n\tend\n\n\treturn true\nend\n\n--[[--\n\n重置页面,检查当前页面在不在初始位置\n用于在动画被stopAllTransition的情况\n\n]]\nfunction UIPageView:resetPages_()\n\tlocal x,y = self.pages_[self.curPageIdx_]:getPosition()\n\n\tif x == self.viewRect_.x then\n\t\treturn\n\tend\n\tprint(\"UIPageView - resetPages_\")\n\t-- self.pages_[self.curPageIdx_]:getPosition(self.viewRect_.x, y)\n\tself:disablePage()\n\tself:gotoPage(self.curPageIdx_)\nend\n\n--[[--\n\n重置相关页面的位置\n\n@param integer pos 要移动到的位置\n@param bLeftToRight 移动的方向,在可循环下有效, nil:自动调整方向,false:从右向左,true:从左向右\n\n]]\nfunction UIPageView:resetPagePos(pos, bLeftToRight)\n\tlocal pageIdx = self.curPageIdx_\n\tlocal page\n\tlocal pageWidth = self.viewRect_.width\n\tlocal dis\n\tlocal count = #self.pages_\n\n\tdis = pos - pageIdx\n\tif self.bCirc then\n\t\tlocal disL,disR\n\t\tif dis > 0 then\n\t\t\tdisR = dis\n\t\t\tdisL = disR - count\n\t\telse\n\t\t\tdisL = dis\n\t\t\tdisR = disL + count\n\t\tend\n\n\t\tif nil == bLeftToRight then\n\t\t\tdis = ((math.abs(disL) > math.abs(disR)) and disR) or disL\n\t\telseif bLeftToRight then\n\t\t\tdis = disR\n\t\telse\n\t\t\tdis = disL\n\t\tend\n\tend\n\n\tlocal disABS = math.abs(dis)\n\tlocal x = self.pages_[pageIdx]:getPosition()\n\n\tfor i=1,disABS do\n\t\tif dis > 0 then\n\t\t\tpageIdx = pageIdx + 1\n\t\t\tx = x + pageWidth\n\t\telse\n\t\t\tpageIdx = pageIdx + count\n\t\t\tpageIdx = pageIdx - 1\n\t\t\tx = x - pageWidth\n\t\tend\n\t\tpageIdx = pageIdx % count\n\t\tif 0 == pageIdx then\n\t\t\tpageIdx = count\n\t\tend\n\t\tpage = self.pages_[pageIdx]\n\t\tif page then\n\t\t\tpage:setVisible(true)\n\t\t\tpage:setPosition(x, self.viewRect_.y)\n\t\tend\n\tend\nend\n\n--[[--\n\n移动到相对于当前页的某个位置\n\n@param integer pos 要移动到的位置\n@param bLeftToRight 移动的方向,在可循环下有效, nil:自动调整方向,false:从右向左,true:从左向右\n\n]]\nfunction UIPageView:scrollPagePos(pos, bLeftToRight)\n\tlocal pageIdx = self.curPageIdx_\n\tlocal page\n\tlocal pageWidth = self.viewRect_.width\n\tlocal dis\n\tlocal count = #self.pages_\n\n\tdis = pos - pageIdx\n\tif self.bCirc then\n\t\tlocal disL,disR\n\t\tif dis > 0 then\n\t\t\tdisR = dis\n\t\t\tdisL = disR - count\n\t\telse\n\t\t\tdisL = dis\n\t\t\tdisR = disL + count\n\t\tend\n\n\t\tif nil == bLeftToRight then\n\t\t\tdis = ((math.abs(disL) > math.abs(disR)) and disR) or disL\n\t\telseif bLeftToRight then\n\t\t\tdis = disR\n\t\telse\n\t\t\tdis = disL\n\t\tend\n\tend\n\n\tlocal disABS = math.abs(dis)\n\tlocal x = self.viewRect_.x\n\tlocal movedis = dis*pageWidth\n\n\tfor i=1, disABS do\n\t\tif dis > 0 then\n\t\t\tpageIdx = pageIdx + 1\n\t\telse\n\t\t\tpageIdx = pageIdx + count\n\t\t\tpageIdx = pageIdx - 1\n\t\tend\n\t\tpageIdx = pageIdx % count\n\t\tif 0 == pageIdx then\n\t\t\tpageIdx = count\n\t\tend\n\t\tpage = self.pages_[pageIdx]\n\t\tif page then\n\t\t\tpage:setVisible(true)\n\t\t\ttransition.moveBy(page,\n\t\t\t\t\t{x = -movedis, y = 0, time = 0.3})\n\t\tend\n\tend\n\ttransition.moveBy(self.pages_[self.curPageIdx_],\n\t\t\t\t\t{x = -movedis, y = 0, time = 0.3,\n\t\t\t\t\tonComplete = function()\n\t\t\t\t\t\tlocal pageIdx = (self.curPageIdx_ + dis + count)%count\n\t\t\t\t\t\tif 0 == pageIdx then\n\t\t\t\t\t\t\tpageIdx = count\n\t\t\t\t\t\tend\n\t\t\t\t\t\tself.curPageIdx_ = pageIdx\n\t\t\t\t\t\tself:disablePage()\n\t\t\t\t\t\tself:notifyListener_{name = \"pageChange\"}\n\t\t\t\t\tend})\nend\n\nfunction UIPageView:stopAllTransition()\n\tfor i,v in ipairs(self.pages_) do\n\t\ttransition.stopTarget(v)\n\tend\nend\n\nfunction UIPageView:disablePage()\n\tlocal pageIdx = self.curPageIdx_\n\tlocal page\n\n\tfor i,v in ipairs(self.pages_) do\n\t\tif i ~= self.curPageIdx_ then\n\t\t\tv:setVisible(false)\n\t\tend\n\tend\nend\n\nfunction UIPageView:scroll(dis)\n\tlocal threePages = {}\n\tlocal count\n\tif self.pages_ then\n\t\tcount = #self.pages_\n\telse\n\t\tcount = 0\n\tend\n\n\tlocal page\n\tif 0 == count then\n\t\treturn\n\telseif 1 == count then\n\t\ttable.insert(threePages, false)\n\t\ttable.insert(threePages, self.pages_[self.curPageIdx_])\n\telseif 2 == count then\n\t\tlocal posX, posY = self.pages_[self.curPageIdx_]:getPosition()\n\t\tif posX > self.viewRect_.x then\n\t\t\tpage = self:getNextPage(false)\n\t\t\tif not page then\n\t\t\t\tpage = false\n\t\t\tend\n\t\t\ttable.insert(threePages, page)\n\t\t\ttable.insert(threePages, self.pages_[self.curPageIdx_])\n\t\telse\n\t\t\ttable.insert(threePages, false)\n\t\t\ttable.insert(threePages, self.pages_[self.curPageIdx_])\n\t\t\ttable.insert(threePages, self:getNextPage(true))\n\t\tend\n\telse\n\t\tpage = self:getNextPage(false)\n\t\tif not page then\n\t\t\tpage = false\n\t\tend\n\t\ttable.insert(threePages, page)\n\t\ttable.insert(threePages, self.pages_[self.curPageIdx_])\n\t\ttable.insert(threePages, self:getNextPage(true))\n\tend\n\n\tself:scrollLCRPages(threePages, dis)\nend\n\nfunction UIPageView:scrollLCRPages(threePages, dis)\n\tlocal posX, posY\n\tlocal pageL = threePages[1]\n\tlocal page = threePages[2]\n\tlocal pageR = threePages[3]\n\n\t-- current\n\tposX, posY = page:getPosition()\n\tposX = posX + dis\n\tpage:setPosition(posX, posY)\n\n\t-- left\n\tposX = posX - self.viewRect_.width\n\tif pageL and \"boolean\" ~= type(pageL) then\n\t\tpageL:setPosition(posX, posY)\n\t\tif not pageL:isVisible() then\n\t\t\tpageL:setVisible(true)\n\t\tend\n\tend\n\n\tposX = posX + self.viewRect_.width * 2\n\tif pageR then\n\t\tpageR:setPosition(posX, posY)\n\t\tif not pageR:isVisible() then\n\t\t\tpageR:setVisible(true)\n\t\tend\n\tend\nend\n\nfunction UIPageView:scrollAuto()\n\tlocal page = self.pages_[self.curPageIdx_]\n\tlocal pageL = self:getNextPage(false) -- self.pages_[self.curPageIdx_ - 1]\n\tlocal pageR = self:getNextPage(true) -- self.pages_[self.curPageIdx_ + 1]\n\tlocal bChange = false\n\tlocal posX, posY = page:getPosition()\n\tlocal dis = posX - self.viewRect_.x\n\n\tlocal pageRX = self.viewRect_.x + self.viewRect_.width\n\tlocal pageLX = self.viewRect_.x - self.viewRect_.width\n\n\tlocal count = #self.pages_\n\tif 0 == count then\n\t\treturn\n\telseif 1 == count then\n\t\tpageL = nil\n\t\tpageR = nil\n\tend\n\tif (dis > self.viewRect_.width/2 or self.speed > 10)\n\t\tand (self.curPageIdx_ > 1 or self.bCirc)\n\t\tand count > 1 then\n\t\tbChange = true\n\telseif (-dis > self.viewRect_.width/2 or -self.speed > 10)\n\t\tand (self.curPageIdx_ < self:getPageCount() or self.bCirc)\n\t\tand count > 1 then\n\t\tbChange = true\n\tend\n\n\tif dis > 0 then\n\t\tif bChange then\n\t\t\ttransition.moveTo(page,\n\t\t\t\t{x = pageRX, y = posY, time = 0.3,\n\t\t\t\tonComplete = function()\n\t\t\t\t\tself.curPageIdx_ = self:getNextPageIndex(false)\n\t\t\t\t\tself:disablePage()\n\t\t\t\t\tself:notifyListener_{name = \"pageChange\"}\n\t\t\t\tend})\n\t\t\ttransition.moveTo(pageL,\n\t\t\t\t{x = self.viewRect_.x, y = posY, time = 0.3})\n\t\telse\n\t\t\ttransition.moveTo(page,\n\t\t\t\t{x = self.viewRect_.x, y = posY, time = 0.3,\n\t\t\t\tonComplete = function()\n\t\t\t\t\tself:disablePage()\n\t\t\t\t\tself:notifyListener_{name = \"pageChange\"}\n\t\t\t\tend})\n\t\t\tif pageL then\n\t\t\t\ttransition.moveTo(pageL,\n\t\t\t\t\t{x = pageLX, y = posY, time = 0.3})\n\t\t\tend\n\t\tend\n\telse\n\t\tif bChange then\n\t\t\ttransition.moveTo(page,\n\t\t\t\t{x = pageLX, y = posY, time = 0.3,\n\t\t\t\tonComplete = function()\n\t\t\t\t\tself.curPageIdx_ = self:getNextPageIndex(true)\n\t\t\t\t\tself:disablePage()\n\t\t\t\t\tself:notifyListener_{name = \"pageChange\"}\n\t\t\t\tend})\n\t\t\ttransition.moveTo(pageR,\n\t\t\t\t{x = self.viewRect_.x, y = posY, time = 0.3})\n\t\telse\n\t\t\ttransition.moveTo(page,\n\t\t\t\t{x = self.viewRect_.x, y = posY, time = 0.3,\n\t\t\t\tonComplete = function()\n\t\t\t\t\tself:disablePage()\n\t\t\t\t\tself:notifyListener_{name = \"pageChange\"}\n\t\t\t\tend})\n\t\t\tif pageR then\n\t\t\t\ttransition.moveTo(pageR,\n\t\t\t\t\t{x = pageRX, y = posY, time = 0.3})\n\t\t\tend\n\t\tend\n\tend\nend\n\nfunction UIPageView:onClick_(event)\n\tlocal itemW, itemH\n\n\titemW = (self.viewRect_.width - self.padding_.left - self.padding_.right\n\t\t\t\t- self.columnSpace_*(self.column_ - 1)) / self.column_\n\titemH = (self.viewRect_.height - self.padding_.top - self.padding_.bottom\n\t\t\t\t- self.rowSpace_*(self.row_ - 1)) / self.row_\n\n\tlocal itemRect = {width = itemW, height = itemH}\n\n\tlocal clickIdx\n\tfor row = 1, self.row_ do\n\t\titemRect.y = self.viewRect_.y + self.viewRect_.height - self.padding_.top - row*itemH - (row - 1)*self.rowSpace_\n\t\tfor column = 1, self.column_ do\n\t\t\titemRect.x = self.viewRect_.x + self.padding_.left + (column - 1)*(itemW + self.columnSpace_)\n\n\t\t\tif self:isTouchInViewRect_(event, itemRect) then\n\t\t\t\tclickIdx = (row - 1)*self.column_ + column\n\t\t\t\tbreak\n\t\t\tend\n\t\tend\n\t\tif clickIdx then\n\t\t\tbreak\n\t\tend\n\tend\n\n\tif not clickIdx then\n\t\t-- not found, maybe touch in space\n\t\treturn\n\tend\n\n\tclickIdx = clickIdx + (self.column_ * self.row_) * (self.curPageIdx_ - 1)\n\n\tself:notifyListener_{name = \"clicked\",\n\t\titem = self.items_[clickIdx],\n\t\titemIdx = clickIdx}\nend\n\nfunction UIPageView:notifyListener_(event)\n\tif not self.touchListener then\n\t\treturn\n\tend\n\n\tevent.pageView = self\n\tevent.pageIdx = self.curPageIdx_\n\tself.touchListener(event)\nend\n\nfunction UIPageView:getNextPage(bRight)\n\tif not self.pages_ then\n\t\treturn\n\tend\n\n\tif self.pages_ and #self.pages_ < 2 then\n\t\treturn\n\tend\n\n\tlocal pos = self:getNextPageIndex(bRight)\n\n\treturn self.pages_[pos]\nend\n\nfunction UIPageView:getNextPageIndex(bRight)\n\tlocal count = #self.pages_\n\tlocal pos\n\tif bRight then\n\t\tpos = self.curPageIdx_ + 1\n\telse\n\t\tpos = self.curPageIdx_ - 1\n\tend\n\n\tif self.bCirc then\n\t\tpos = pos + count\n\t\tpos = pos%count\n\t\tif 0 == pos then\n\t\t\tpos = count\n\t\tend\n\tend\n\n\treturn pos\nend\n\n\n\nreturn UIPageView\n"
  },
  {
    "path": "源代码/mir9/src/framework/cc/ui/UIPageViewItem.lua",
    "content": "\n--[[\n\nCopyright (c) 2011-2014 chukong-inc.com\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in\nall copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\nTHE SOFTWARE.\n\n]]\n\n--------------------------------\n-- @module UIPageViewItem\n\n--[[--\n\nquick 页面控件项\n\n]]\n\nlocal UIPageViewItem = class(\"UIPageViewItem\", function()\n\treturn display.newNode()\nend)\n\nfunction UIPageViewItem:ctor()\nend\n\nreturn UIPageViewItem\n"
  },
  {
    "path": "源代码/mir9/src/framework/cc/ui/UIPushButton.lua",
    "content": "\n--[[\n\nCopyright (c) 2011-2014 chukong-inc.com\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in\nall copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\nTHE SOFTWARE.\n\n]]\n\n--------------------------------\n-- @module UIPushButton\n\n--[[--\n\nquick 按钮控件\n\n]]\n\nlocal UIButton = import(\".UIButton\")\nlocal UIPushButton = class(\"UIPushButton\", UIButton)\n\nUIPushButton.NORMAL   = \"normal\"\nUIPushButton.PRESSED  = \"pressed\"\nUIPushButton.DISABLED = \"disabled\"\n\n-- start --\n\n--------------------------------\n-- 按钮控件构建函数\n-- @function [parent=#UIPushButton] ctor\n-- @param table images 各种状态的图片\n-- @param table options 参数表 其中scale9为是否缩放\n\n--[[--\n\n按钮控件构建函数\n\n状态值:\n-   normal 正常状态\n-   pressed 按下状态\n-   disabled 无效状态\n\n]]\n-- end --\n\nfunction UIPushButton:ctor(images, options)\n    UIPushButton.super.ctor(self, {\n        {name = \"disable\", from = {\"normal\", \"pressed\"}, to = \"disabled\"},\n        {name = \"enable\",  from = {\"disabled\"}, to = \"normal\"},\n        {name = \"press\",   from = \"normal\",  to = \"pressed\"},\n        {name = \"release\", from = \"pressed\", to = \"normal\"},\n    }, \"normal\", options)\n    if type(images) ~= \"table\" then images = {normal = images} end\n    self:setButtonImage(UIPushButton.NORMAL, images[\"normal\"], true)\n    self:setButtonImage(UIPushButton.PRESSED, images[\"pressed\"], true)\n    self:setButtonImage(UIPushButton.DISABLED, images[\"disabled\"], true)\nend\n\nfunction UIPushButton:setButtonImage(state, image, ignoreEmpty)\n    assert(state == UIPushButton.NORMAL\n        or state == UIPushButton.PRESSED\n        or state == UIPushButton.DISABLED,\n        string.format(\"UIPushButton:setButtonImage() - invalid state %s\", tostring(state)))\n    UIPushButton.super.setButtonImage(self, state, image, ignoreEmpty)\n\n    if state == UIPushButton.NORMAL then\n        if not self.images_[UIPushButton.PRESSED] then\n            self.images_[UIPushButton.PRESSED] = image\n        end\n        if not self.images_[UIPushButton.DISABLED] then\n            self.images_[UIPushButton.DISABLED] = image\n        end\n    end\n\n    return self\nend\n\nfunction UIPushButton:onTouch_(event)\n    local name, x, y = event.name, event.x, event.y\n    if name == \"began\" then\n        self.touchBeganX = x\n        self.touchBeganY = y\n        if not self:checkTouchInSprite_(x, y) then return false end\n        self.fsm_:doEvent(\"press\")\n        self:dispatchEvent({name = UIButton.PRESSED_EVENT, x = x, y = y, touchInTarget = true})\n        return true\n    end\n\n    -- must the begin point and current point in Button Sprite\n    local touchInTarget = self:checkTouchInSprite_(self.touchBeganX, self.touchBeganY)\n                        and self:checkTouchInSprite_(x, y)\n    if name == \"moved\" then\n        if touchInTarget and self.fsm_:canDoEvent(\"press\") then\n            self.fsm_:doEvent(\"press\")\n            self:dispatchEvent({name = UIButton.PRESSED_EVENT, x = x, y = y, touchInTarget = true})\n        elseif not touchInTarget and self.fsm_:canDoEvent(\"release\") then\n            self.fsm_:doEvent(\"release\")\n            self:dispatchEvent({name = UIButton.RELEASE_EVENT, x = x, y = y, touchInTarget = false})\n        end\n    else\n        if self.fsm_:canDoEvent(\"release\") then\n            self.fsm_:doEvent(\"release\")\n            self:dispatchEvent({name = UIButton.RELEASE_EVENT, x = x, y = y, touchInTarget = touchInTarget})\n        end\n        if name == \"ended\" and touchInTarget then\n            self:dispatchEvent({name = UIButton.CLICKED_EVENT, x = x, y = y, touchInTarget = true})\n        end\n    end\nend\n\nreturn UIPushButton\n"
  },
  {
    "path": "源代码/mir9/src/framework/cc/ui/UIScrollView.lua",
    "content": "\n--[[\n\nCopyright (c) 2011-2014 chukong-inc.com\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in\nall copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\nTHE SOFTWARE.\n\n]]\n\n--------------------------------\n-- @module UIScrollView\n\n--[[--\n\nquick 滚动控件\n\n]]\n\nlocal UIScrollView = class(\"UIScrollView\", function()\n\treturn cc.ClippingRegionNode:create()\nend)\n\nUIScrollView.BG_ZORDER \t\t\t\t= -100\nUIScrollView.TOUCH_ZORDER \t\t\t= -99\n\nUIScrollView.DIRECTION_BOTH\t\t\t= 0\nUIScrollView.DIRECTION_VERTICAL\t\t= 1\nUIScrollView.DIRECTION_HORIZONTAL\t= 2\n\n-- start --\n\n--------------------------------\n-- 滚动控件的构建函数\n-- @function [parent=#UIScrollView] new\n-- @param table params 参数表\n\n--[[--\n\n滚动控件的构建函数\n\n可用参数有：\n\n-   direction 滚动控件的滚动方向，默认为垂直与水平方向都可滚动\n-   viewRect 列表控件的显示区域\n-   scrollbarImgH 水平方向的滚动条\n-   scrollbarImgV 垂直方向的滚动条\n-   bgColor 背景色,nil表示无背景色\n-   bgStartColor 渐变背景开始色,nil表示无背景色\n-   bgEndColor 渐变背景结束色,nil表示无背景色\n-   bg 背景图\n-   bgScale9 背景图是否可缩放\n-\tcapInsets 缩放区域\n\n]]\n-- end --\n\nfunction UIScrollView:ctor(params)\n\tself.bBounce = true\n\tself.nShakeVal = 5\n\tself.direction = UIScrollView.DIRECTION_BOTH\n\tself.layoutPadding = {left = 0, right = 0, top = 0, bottom = 0}\n\tself.speed = {x = 0, y = 0}\n\n\tif not params then\n\t\treturn\n\tend\n\n\tif params.viewRect then\n\t\tself:setViewRect(params.viewRect)\n\tend\n\tif params.direction then\n\t\tself:setDirection(params.direction)\n\tend\n\tif params.scrollbarImgH then\n\t\tself.sbH = display.newScale9Sprite(params.scrollbarImgH, 100):addTo(self)\n\tend\n\tif params.scrollbarImgV then\n\t\tself.sbV = display.newScale9Sprite(params.scrollbarImgV, 100):addTo(self)\n\tend\n\n\t-- touchOnContent true:当触摸在滚动内容上才有效 false:当触摸在显示区域(viewRect_)就有效\n\t-- 当内容小于显示区域时，两者就有区别了\n\tself:setTouchType(params.touchOnContent or true)\n\n\tself:addBgColorIf(params)\n\tself:addBgGradientColorIf(params)\n\tself:addBgIf(params)\n\n\tself:addNodeEventListener(cc.NODE_ENTER_FRAME_EVENT, function(...)\n\t\t\tself:update_(...)\n\t\tend)\n\tself:scheduleUpdate()\nend\n\nfunction UIScrollView:addBgColorIf(params)\n\tif not params.bgColor then\n\t\treturn\n\tend\n\n\t-- display.newColorLayer(params.bgColor)\n\tcc.LayerColor:create(params.bgColor)\n\t\t:size(params.viewRect.width, params.viewRect.height)\n\t\t:pos(params.viewRect.x, params.viewRect.y)\n\t\t:addTo(self, UIScrollView.BG_ZORDER)\n\t\t:setTouchEnabled(false)\nend\n\nfunction UIScrollView:addBgGradientColorIf(params)\n\tif not params.bgStartColor or not params.bgEndColor then\n\t\treturn\n\tend\n\n\tlocal layer = cc.LayerGradient:create(params.bgStartColor, params.bgEndColor)\n\t\t:size(params.viewRect.width, params.viewRect.height)\n\t\t:pos(params.viewRect.x, params.viewRect.y)\n\t\t:addTo(self, UIScrollView.BG_ZORDER)\n\t\t:setTouchEnabled(false)\n\tlayer:setVector(params.bgVector)\nend\n\nfunction UIScrollView:addBgIf(params)\n\tif not params.bg then\n\t\treturn\n\tend\n\n\tlocal bg\n\tif params.bgScale9 then\n\t\tbg = display.newScale9Sprite(params.bg, nil, nil, nil, params.capInsets)\n\telse\n\t\tbg = display.newSprite(params.bg)\n\tend\n\n\tbg:size(params.viewRect.width, params.viewRect.height)\n\t\t:pos(params.viewRect.x + params.viewRect.width/2,\n\t\t\tparams.viewRect.y + params.viewRect.height/2)\n\t\t:addTo(self, UIScrollView.BG_ZORDER)\n\t\t:setTouchEnabled(false)\nend\n\nfunction UIScrollView:setViewRect(rect)\n\tself:setClippingRegion(rect)\n\tself.viewRect_ = rect\n\tself.viewRectIsNodeSpace = false\n\n\treturn self\nend\n\n-- start --\n\n--------------------------------\n-- 得到滚动控件的显示区域\n-- @function [parent=#UIScrollView] getViewRect\n-- @return Rect#Rect \n\n-- end --\n\nfunction UIScrollView:getViewRect()\n\treturn self.viewRect_\nend\n\n-- start --\n\n--------------------------------\n-- 设置布局四周的空白\n-- @function [parent=#UIScrollView] setLayoutPadding\n-- @param number top 上边的空白\n-- @param number right 右边的空白\n-- @param number bottom 下边的空白\n-- @param number left 左边的空白\n-- @return UIScrollView#UIScrollView \n\n-- end --\n\nfunction UIScrollView:setLayoutPadding(top, right, bottom, left)\n\tif not self.layoutPadding then\n\t\tself.layoutPadding = {}\n\tend\n\tself.layoutPadding.top = top\n\tself.layoutPadding.right = right\n\tself.layoutPadding.bottom = bottom\n\tself.layoutPadding.left = left\n\n\treturn self\nend\n\nfunction UIScrollView:setActualRect(rect)\n\tself.actualRect_ = rect\nend\n\n-- start --\n\n--------------------------------\n-- 设置滚动方向\n-- @function [parent=#UIScrollView] setDirection\n-- @param number dir 滚动方向\n-- @return UIScrollView#UIScrollView \n\n-- end --\n\nfunction UIScrollView:setDirection(dir)\n\tself.direction = dir\n\n\treturn self\nend\n\n-- start --\n\n--------------------------------\n-- 获取滚动方向\n-- @function [parent=#UIScrollView] getDirection\n-- @return number#number \n\n-- end --\n\nfunction UIScrollView:getDirection()\n\treturn self.direction\nend\n\n-- start --\n\n--------------------------------\n-- 设置滚动控件是否开启回弹功能\n-- @function [parent=#UIScrollView] setBounceable\n-- @param boolean bBounceable 是否开启回弹\n-- @return UIScrollView#UIScrollView \n\n-- end --\n\nfunction UIScrollView:setBounceable(bBounceable)\n\tself.bBounce = bBounceable\n\n\treturn self\nend\n\n-- start --\n\n--------------------------------\n-- 设置触摸响应方式\n-- true:当触摸在滚动内容上才有效 false:当触摸在显示区域(viewRect_)就有效\n-- 内容大于显示区域时，两者无差别\n-- 内容小于显示区域时，true:在空白区域触摸无效,false:在空白区域触摸也可滚动内容\n-- @function [parent=#UIScrollView] setTouchType\n-- @param boolean bTouchOnContent 是否触控到滚动内容上才有效\n-- @return UIScrollView#UIScrollView \n\n-- end --\n\nfunction UIScrollView:setTouchType(bTouchOnContent)\n\tself.touchOnContent = bTouchOnContent\n\n\treturn self\nend\n\n--[[--\n\n重置位置,主要用在纵向滚动时\n\n]]\nfunction UIScrollView:resetPosition()\n\tif UIScrollView.DIRECTION_VERTICAL ~= self.direction then\n\t\treturn\n\tend\n\n\tlocal x, y = self.scrollNode:getPosition()\n\tlocal bound = self.scrollNode:getCascadeBoundingBox()\n\tlocal disY = self.viewRect_.y + self.viewRect_.height - bound.y - bound.height\n\ty = y + disY\n\tself.scrollNode:setPosition(x, y)\nend\n\n-- start --\n\n--------------------------------\n-- 判断一个node是否在滚动控件的显示区域中\n-- @function [parent=#UIScrollView] isItemInViewRect\n-- @param node item scrollView中的项\n-- @return boolean#boolean \n\n-- end --\n\nfunction UIScrollView:isItemInViewRect(item)\n\tif \"userdata\" ~= type(item) then\n\t\titem = nil\n\tend\n\n\tif not item then\n\t\tprint(\"UIScrollView - isItemInViewRect item is not right\")\n\t\treturn\n\tend\n\n\tlocal bound = item:getCascadeBoundingBox()\n\t-- local point = cc.p(bound.x, bound.y)\n\t-- local parent = item\n\t-- while true do\n\t-- \tparent = parent:getParent()\n\t-- \tpoint = parent:convertToNodeSpace(point)\n\t-- \tif parent == self.scrollNode then\n\t-- \t\tbreak\n\t-- \tend\n\t-- end\n\t-- bound.x = point.x\n\t-- bound.y = point.y\n\treturn cc.rectIntersectsRect(self:getViewRectInWorldSpace(), bound)\nend\n\n-- start --\n\n--------------------------------\n-- 设置scrollview可触摸\n-- @function [parent=#UIScrollView] setTouchEnabled\n-- @param boolean bEnabled 是否开启触摸\n-- @return UIScrollView#UIScrollView \n\n-- end --\n\nfunction UIScrollView:setTouchEnabled(bEnabled)\n\tif not self.scrollNode then\n\t\treturn\n\tend\n\tself.scrollNode:setTouchEnabled(bEnabled)\n\n\treturn self\nend\n\n-- start --\n\n--------------------------------\n-- 将要显示的node加到scrollview中,scrollView只支持滚动一个node\n-- @function [parent=#UIScrollView] addScrollNode\n-- @param node node 要显示的项\n-- @return UIScrollView#UIScrollView \n\n-- end --\n\nfunction UIScrollView:addScrollNode(node)\n\tself:addChild(node)\n\tself.scrollNode = node\n\n\tif not self.viewRect_ then\n\t\tself.viewRect_ = self.scrollNode:getCascadeBoundingBox()\n\t\tself:setViewRect(self.viewRect_)\n\tend\n\tnode:setTouchSwallowEnabled(false)\n\tnode:setTouchEnabled(true)\n\t-- node:addNodeEventListener(cc.NODE_TOUCH_EVENT, function (event)\n --        return self:onTouch_(event)\n --    end)\n    node:addNodeEventListener(cc.NODE_TOUCH_CAPTURE_EVENT, function (event)\n        return self:onTouchCapture_(event)\n    end)\n\tself:addTouchNode()\n\n    return self\nend\n\n-- start --\n\n--------------------------------\n-- 返回scrollView中的滚动node\n-- @function [parent=#UIScrollView] getScrollNode\n-- @return node#node  滚动node\n\n-- end --\n\nfunction UIScrollView:getScrollNode()\n\treturn self.scrollNode\nend\n\n-- start --\n\n--------------------------------\n-- 注册滚动控件的监听函数\n-- @function [parent=#UIScrollView] onScroll\n-- @param function listener 监听函数\n-- @return UIScrollView#UIScrollView \n\n-- end --\n\nfunction UIScrollView:onScroll(listener)\n\tself.scrollListener_ = listener\n\n    return self\nend\n\n-- private\n\nfunction UIScrollView:calcLayoutPadding()\n\tlocal boundBox = self.scrollNode:getCascadeBoundingBox()\n\n\tself.layoutPadding.left = boundBox.x - self.actualRect_.x\n\tself.layoutPadding.right =\n\t\tself.actualRect_.x + self.actualRect_.width - boundBox.x - boundBox.width\n\tself.layoutPadding.top = boundBox.y - self.actualRect_.y\n\tself.layoutPadding.bottom =\n\t\tself.actualRect_.y + self.actualRect_.height - boundBox.y - boundBox.height\nend\n\nfunction UIScrollView:update_(dt)\n\tself:drawScrollBar()\nend\n\nfunction UIScrollView:onTouchCapture_(event)\n\tif (\"began\" == event.name or \"moved\" == event.name or \"ended\" == event.name)\n\t\tand self:isTouchInViewRect(event) then\n\t\treturn true\n\telse\n\t\treturn false\n\tend\nend\n\nfunction UIScrollView:onTouch_(event)\n\tif \"began\" == event.name and not self:isTouchInViewRect(event) then\n\t\tprintInfo(\"UIScrollView - touch didn't in viewRect\")\n\t\treturn false\n\tend\n\n\tif \"began\" == event.name and self.touchOnContent then\n\t\tlocal cascadeBound = self.scrollNode:getCascadeBoundingBox()\n\t\tif not cc.rectContainsPoint(cascadeBound, cc.p(event.x, event.y)) then\n\t\t\treturn false\n\t\tend\n\tend\n\n\tif \"began\" == event.name then\n\t\tself.prevX_ = event.x\n\t\tself.prevY_ = event.y\n\t\tself.bDrag_ = false\n\t\tlocal x,y = self.scrollNode:getPosition()\n\t\tself.position_ = {x = x, y = y}\n\n\t\ttransition.stopTarget(self.scrollNode)\n\t\tself:callListener_{name = \"began\", x = event.x, y = event.y}\n\n\t\tself:enableScrollBar()\n\t\t-- self:changeViewRectToNodeSpaceIf()\n\n\t\tself.scaleToWorldSpace_ = self:scaleToParent_()\n\n\t\treturn true\n\telseif \"moved\" == event.name then\n\t\tif self:isShake(event) then\n\t\t\treturn\n\t\tend\n\n\t\tself.bDrag_ = true\n\t\tself.speed.x = event.x - event.prevX\n\t\tself.speed.y = event.y - event.prevY\n\n\t\tif self.direction == UIScrollView.DIRECTION_VERTICAL then\n\t\t\tself.speed.x = 0\n\t\telseif self.direction == UIScrollView.DIRECTION_HORIZONTAL then\n\t\t\tself.speed.y = 0\n\t\telse\n\t\t\t-- do nothing\n\t\tend\n\n\t\tself:scrollBy(self.speed.x, self.speed.y)\n\t\tself:callListener_{name = \"moved\", x = event.x, y = event.y}\n\telseif \"ended\" == event.name then\n\t\tif self.bDrag_ then\n\t\t\tself.bDrag_ = false\n\t\t\tself:scrollAuto()\n\n\t\t\tself:callListener_{name = \"ended\", x = event.x, y = event.y}\n\n\t\t\tself:disableScrollBar()\n\t\telse\n\t\t\tself:callListener_{name = \"clicked\", x = event.x, y = event.y}\n\t\tend\n\tend\nend\n\nfunction UIScrollView:isTouchInViewRect(event)\n\t-- dump(self.viewRect_, \"viewRect:\")\n\tlocal viewRect = self:convertToWorldSpace(cc.p(self.viewRect_.x, self.viewRect_.y))\n\tviewRect.width = self.viewRect_.width\n\tviewRect.height = self.viewRect_.height\n\t-- dump(viewRect, \"new viewRect:\")\n\n\treturn cc.rectContainsPoint(viewRect, cc.p(event.x, event.y))\nend\n\nfunction UIScrollView:isTouchInScrollNode(event)\n\tlocal cascadeBound = self:getScrollNodeRect()\n\treturn cc.rectContainsPoint(cascadeBound, cc.p(event.x, event.y))\nend\n\nfunction UIScrollView:scrollTo(p, y)\n\tlocal x_, y_\n\tif \"table\" == type(p) then\n\t\tx_ = p.x or 0\n\t\ty_ = p.y or 0\n\telse\n\t\tx_ = p\n\t\ty_ = y\n\tend\n\n\tself.position_ = cc.p(x_, y_)\n\tself.scrollNode:setPosition(self.position_)\nend\n\nfunction UIScrollView:moveXY(orgX, orgY, speedX, speedY)\n\tif self.bBounce then\n\t\t-- bounce enable\n\t\treturn orgX + speedX, orgY + speedY\n\tend\n\n\tlocal cascadeBound = self:getScrollNodeRect()\n\tlocal viewRect = self:getViewRectInWorldSpace()\n\tlocal x, y = orgX, orgY\n\tlocal disX, disY\n\n\tif speedX > 0 then\n\t\tif cascadeBound.x < viewRect.x then\n\t\t\tdisX = viewRect.x - cascadeBound.x\n\t\t\tdisX = disX / self.scaleToWorldSpace_.x\n\t\t\tx = orgX + math.min(disX, speedX)\n\t\tend\n\telse\n\t\tif cascadeBound.x + cascadeBound.width > viewRect.x + viewRect.width then\n\t\t\tdisX = viewRect.x + viewRect.width - cascadeBound.x - cascadeBound.width\n\t\t\tdisX = disX / self.scaleToWorldSpace_.x\n\t\t\tx = orgX + math.max(disX, speedX)\n\t\tend\n\tend\n\n\tif speedY > 0 then\n\t\tif cascadeBound.y < viewRect.y then\n\t\t\tdisY = viewRect.y - cascadeBound.y\n\t\t\tdisY = disY / self.scaleToWorldSpace_.y\n\t\t\ty = orgY + math.min(disY, speedY)\n\t\tend\n\telse\n\t\tif cascadeBound.y + cascadeBound.height > viewRect.y + viewRect.height then\n\t\t\tdisY = viewRect.y + viewRect.height - cascadeBound.y - cascadeBound.height\n\t\t\tdisY = disY / self.scaleToWorldSpace_.y\n\t\t\ty = orgY + math.max(disY, speedY)\n\t\tend\n\tend\n\n\treturn x, y\nend\n\nfunction UIScrollView:scrollBy(x, y)\n\tself.position_.x, self.position_.y = self:moveXY(self.position_.x, self.position_.y, x, y)\n\t-- self.position_.x = self.position_.x + x\n\t-- self.position_.y = self.position_.y + y\n\tself.scrollNode:setPosition(self.position_)\n\n\tif self.actualRect_ then\n\t\tself.actualRect_.x = self.actualRect_.x + x\n\t\tself.actualRect_.y = self.actualRect_.y + y\n\tend\nend\n\nfunction UIScrollView:scrollAuto()\n\tif self:twiningScroll() then\n\t\treturn\n\tend\n\tself:elasticScroll()\nend\n\n-- fast drag\nfunction UIScrollView:twiningScroll()\n\tif self:isSideShow() then\n\t\t-- printInfo(\"UIScrollView - side is show, so elastic scroll\")\n\t\treturn false\n\tend\n\n\tif math.abs(self.speed.x) < 10 and math.abs(self.speed.y) < 10 then\n\t\t-- printInfo(\"#DEBUG, UIScrollView - isn't twinking scroll:\"\n\t\t-- \t.. self.speed.x .. \" \" .. self.speed.y)\n\t\treturn false\n\tend\n\n\tlocal disX, disY = self:moveXY(0, 0, self.speed.x*6, self.speed.y*6)\n\n\ttransition.moveBy(self.scrollNode,\n\t\t{x = disX, y = disY, time = 0.3,\n\t\teasing = \"sineOut\",\n\t\tonComplete = function()\n\t\t\tself:elasticScroll()\n\t\tend})\nend\n\nfunction UIScrollView:elasticScroll()\n\tlocal cascadeBound = self:getScrollNodeRect()\n\tlocal disX, disY = 0, 0\n\tlocal viewRect = self:getViewRectInWorldSpace()\n\n\t-- dump(cascadeBound, \"UIScrollView - cascBoundingBox:\")\n\t-- dump(viewRect, \"UIScrollView - viewRect:\")\n\n\tif cascadeBound.width < viewRect.width then\n\t\tdisX = viewRect.x - cascadeBound.x\n\telse\n\t\tif cascadeBound.x > viewRect.x then\n\t\t\tdisX = viewRect.x - cascadeBound.x\n\t\telseif cascadeBound.x + cascadeBound.width < viewRect.x + viewRect.width then\n\t\t\tdisX = viewRect.x + viewRect.width - cascadeBound.x - cascadeBound.width\n\t\tend\n\tend\n\n\tif cascadeBound.height < viewRect.height then\n\t\tdisY = viewRect.y + viewRect.height - cascadeBound.y - cascadeBound.height\n\telse\n\t\tif cascadeBound.y > viewRect.y then\n\t\t\tdisY = viewRect.y - cascadeBound.y\n\t\telseif cascadeBound.y + cascadeBound.height < viewRect.y + viewRect.height then\n\t\t\tdisY = viewRect.y + viewRect.height - cascadeBound.y - cascadeBound.height\n\t\tend\n\tend\n\n\tif 0 == disX and 0 == disY then\n\t\treturn\n\tend\n\n\ttransition.moveBy(self.scrollNode,\n\t\t{x = disX, y = disY, time = 0.3,\n\t\teasing = \"backout\",\n\t\tonComplete = function()\n\t\t\tself:callListener_{name = \"scrollEnd\"}\n\t\tend})\nend\n\nfunction UIScrollView:getScrollNodeRect()\n\tlocal bound = self.scrollNode:getCascadeBoundingBox()\n\t-- bound.x = bound.x - self.layoutPadding.left\n\t-- bound.y = bound.y - self.layoutPadding.bottom\n\t-- bound.width = bound.width + self.layoutPadding.left + self.layoutPadding.right\n\t-- bound.height = bound.height + self.layoutPadding.bottom + self.layoutPadding.top\n\n\treturn bound\nend\n\nfunction UIScrollView:getViewRectInWorldSpace()\n\tlocal rect = self:convertToWorldSpace(\n\t\tcc.p(self.viewRect_.x, self.viewRect_.y))\n\trect.width = self.viewRect_.width\n\trect.height = self.viewRect_.height\n\n\treturn rect\nend\n\n-- 是否显示到边缘\nfunction UIScrollView:isSideShow()\n\tlocal bound = self.scrollNode:getCascadeBoundingBox()\n\tif bound.x > self.viewRect_.x\n\t\tor bound.y > self.viewRect_.y\n\t\tor bound.x + bound.width < self.viewRect_.x + self.viewRect_.width\n\t\tor bound.y + bound.height < self.viewRect_.y + self.viewRect_.height then\n\t\treturn true\n\tend\n\n\treturn false\nend\n\nfunction UIScrollView:callListener_(event)\n\tif not self.scrollListener_ then\n\t\treturn\n\tend\n\tevent.scrollView = self\n\n\tself.scrollListener_(event)\nend\n\nfunction UIScrollView:enableScrollBar()\n\tlocal bound = self.scrollNode:getCascadeBoundingBox()\n\tif self.sbV then\n\t\tself.sbV:setVisible(false)\n\t\ttransition.stopTarget(self.sbV)\n\t\tself.sbV:setOpacity(128)\n\t\tlocal size = self.sbV:getContentSize()\n\t\tif self.viewRect_.height < bound.height then\n\t\t\tlocal barH = self.viewRect_.height*self.viewRect_.height/bound.height\n\t\t\tif barH < size.width then\n\t\t\t\t-- 保证bar不会太小\n\t\t\t\tbarH = size.width\n\t\t\tend\n\t\t\tself.sbV:setContentSize(size.width, barH)\n\t\t\tself.sbV:setPosition(\n\t\t\t\tself.viewRect_.x + self.viewRect_.width - size.width/2, self.viewRect_.y + barH/2)\n\t\tend\n\tend\n\tif self.sbH then\n\t\tself.sbH:setVisible(false)\n\t\ttransition.stopTarget(self.sbH)\n\t\tself.sbH:setOpacity(128)\n\t\tlocal size = self.sbH:getContentSize()\n\t\tif self.viewRect_.width < bound.width then\n\t\t\tlocal barW = self.viewRect_.width*self.viewRect_.width/bound.width\n\t\t\tif barW < size.height then\n\t\t\t\tbarW = size.height\n\t\t\tend\n\t\t\tself.sbH:setContentSize(barW, size.height)\n\t\t\tself.sbH:setPosition(self.viewRect_.x + barW/2,\n\t\t\t\tself.viewRect_.y + size.height/2)\n\t\tend\n\tend\nend\n\nfunction UIScrollView:disableScrollBar()\n\tif self.sbV then\n\t\ttransition.fadeOut(self.sbV,\n\t\t\t{time = 0.3,\n\t\t\tonComplete = function()\n\t\t\t\tself.sbV:setOpacity(128)\n\t\t\t\tself.sbV:setVisible(false)\n\t\t\tend})\n\tend\n\tif self.sbH then\n\t\ttransition.fadeOut(self.sbH,\n\t\t\t{time = 1.5,\n\t\t\tonComplete = function()\n\t\t\t\tself.sbH:setOpacity(128)\n\t\t\t\tself.sbH:setVisible(false)\n\t\t\tend})\n\tend\nend\n\nfunction UIScrollView:drawScrollBar()\n\tif not self.bDrag_ then\n\t\treturn\n\tend\n\tif not self.sbV and not self.sbH then\n\t\treturn\n\tend\n\n\tlocal bound = self.scrollNode:getCascadeBoundingBox()\n\tif self.sbV then\n\t\tself.sbV:setVisible(true)\n\t\tlocal size = self.sbV:getContentSize()\n\n\t\tlocal posY = (self.viewRect_.y - bound.y)*(self.viewRect_.height - size.height)/(bound.height - self.viewRect_.height)\n\t\t\t+ self.viewRect_.y + size.height/2\n\t\tlocal x, y = self.sbV:getPosition()\n\t\tself.sbV:setPosition(x, posY)\n\tend\n\tif self.sbH then\n\t\tself.sbH:setVisible(true)\n\t\tlocal size = self.sbH:getContentSize()\n\n\t\tlocal posX = (self.viewRect_.x - bound.x)*(self.viewRect_.width - size.width)/(bound.width - self.viewRect_.width)\n\t\t\t+ self.viewRect_.x + size.width/2\n\t\tlocal x, y = self.sbH:getPosition()\n\t\tself.sbH:setPosition(posX, y)\n\tend\nend\n\nfunction UIScrollView:addScrollBarIf()\n\n\tif not self.sb then\n\t\tself.sb = cc.DrawNode:create():addTo(self)\n\tend\n\n\tdrawNode = cc.DrawNode:create()\n    drawNode:drawSegment(points[1], points[2], radius, borderColor)\nend\n\nfunction UIScrollView:changeViewRectToNodeSpaceIf()\n\tif self.viewRectIsNodeSpace then\n\t\treturn\n\tend\n\n\t-- local nodePoint = self:convertToNodeSpace(cc.p(self.viewRect_.x, self.viewRect_.y))\n\tlocal posX, posY = self:getPosition()\n\tlocal ws = self:convertToWorldSpace(cc.p(posX, posY))\n\tself.viewRect_.x = self.viewRect_.x + ws.x\n\tself.viewRect_.y = self.viewRect_.y + ws.y\n\tself.viewRectIsNodeSpace = true\nend\n\nfunction UIScrollView:isShake(event)\n\tif math.abs(event.x - self.prevX_) < self.nShakeVal\n\t\tand math.abs(event.y - self.prevY_) < self.nShakeVal then\n\t\treturn true\n\tend\nend\n\nfunction UIScrollView:scaleToParent_()\n\tlocal parent\n\tlocal node = self\n\tlocal scale = {x = 1, y = 1}\n\n\twhile true do\n\t\tscale.x = scale.x * node:getScaleX()\n\t\tscale.y = scale.y * node:getScaleY()\n\t\tparent = node:getParent()\n\t\tif not parent then\n\t\t\tbreak\n\t\tend\n\t\tnode = parent\n\tend\n\n\treturn scale\nend\n\n--[[--\n\n加一个大小为viewRect的touch node\n\n]]\nfunction UIScrollView:addTouchNode()\n\tlocal node\n\n\tif self.touchNode_ then\n\t\tnode = self.touchNode_\n\telse\n\t\tnode = display.newNode()\n\t\tself.touchNode_ = node\n\n\t\tnode:setLocalZOrder(UIScrollView.TOUCH_ZORDER)\n\t\tnode:setTouchSwallowEnabled(true)\n\t\tnode:setTouchEnabled(true)\n\t\tnode:addNodeEventListener(cc.NODE_TOUCH_EVENT, function (event)\n\t        return self:onTouch_(event)\n\t    end)\n\n\t    self:addChild(node)\n\tend\n\n\tnode:setContentSize(self.viewRect_.width, self.viewRect_.height)\n\tnode:setPosition(self.viewRect_.x, self.viewRect_.y)\n\n    return self\nend\n\n--[[--\n\nscrollView的填充方法，可以自动把一个table里的node有序的填充到scrollview里。\n\n~~~ lua\n\n--填充100个相同大小的图片。\n    local view =  cc.ui.UIScrollView.new(\n        {viewRect = cc.rect(100,100, 400, 400), direction = 2})\n    self:addChild(view);\n\n    local t = {}\n    for i = 1, 100 do\n        local png  = cc.ui.UIImage.new(\"GreenButton.png\")\n        t[#t+1] = png\n        cc.ui.UILabel.new({text = i, size = 24, color = cc.c3b(100,100,100)})\n            :align(display.CENTER, png:getContentSize().width/2, png:getContentSize().height/2)\n            :addTo(png)\n    end\n    view:fill(t, {itemSize = (t[#t]):getContentSize()})\n~~~\n\n注意：参数nodes 是table结构，且一定要是{node1,node2,node3,...}不能是{a=node1,b=node2,c=node3,...}\n\n@param nodes node集\n@param params 参见fill函数头定义。  -- params = extend({ ...\n\n]]\n\nfunction UIScrollView:fill(nodes,params)\n  --参数的继承用法,把param2的参数增加覆盖到param1中。\n  local extend = function(param1,param2)\n    if not param2 then\n      return param1\n    end\n    for k , v in pairs(param2) do\n      param1[k] = param2[k]\n    end\n    return param1\n  end\n\n  local params = extend({\n    --自动间距\n    autoGap = true,\n    --宽间距\n    widthGap = 0,\n    --高间距\n    heightGap = 0,\n    --自动行列\n    autoTable = true,\n    --行数目\n    rowCount = 3,\n    --列数目\n    cellCount = 3,\n    --填充项大小\n    itemSize = cc.size(50 , 50)\n  },params)\n\n  if #nodes == 0 then\n    return nil\n  end\n\n  --基本坐标工具方法\n  local SIZE = function(node) return node:getContentSize() end\n  local W = function(node) return node:getContentSize().width end\n  local H = function(node) return node:getContentSize().height end\n  local S_SIZE = function(node , w , h) return node:setContentSize(cc.size(w , h)) end\n  local S_XY = function(node , x , y) node:setPosition(x,y) end\n  local AX = function(node) return node:getAnchorPoint().x end\n  local AY = function(node) return node:getAnchorPoint().y end\n\n  --创建一个容器node\n  local innerContainer = display.newNode()\n  --初始容器大小为视图大小\n  S_SIZE(innerContainer , self:getViewRect().width , self:getViewRect().height)\n  self:addScrollNode(innerContainer)\n  S_XY(innerContainer , self.viewRect_.x , self.viewRect_.y)\n\n  --如果是纵向布局\n  if self.direction == cc.ui.UIScrollView.DIRECTION_VERTICAL then\n\n    --自动布局\n    if params.autoTable then\n      params.cellCount = math.floor(self.viewRect_.width / params.itemSize.width)\n    end\n\n    --自动间隔\n    if params.autoGap then\n      params.widthGap = (self.viewRect_.width - (params.cellCount * params.itemSize.width)) / (params.cellCount + 1)\n      params.heightGap = params.widthGap\n    end\n\n    --填充量\n    params.rowCount = math.ceil(#nodes / params.cellCount)\n    --避免动态尺寸少于设计尺寸\n    local v_h = (params.itemSize.height + params.heightGap) * params.rowCount + params.heightGap\n    if v_h < self.viewRect_.height then v_h = self.viewRect_.height end\n    S_SIZE(innerContainer , self.viewRect_.width , v_h)\n\n    for i = 1 , #nodes do\n\n      local n = nodes[i]\n      local x = 0.0\n      local y = 0.0\n\n      --不管描点如何，总是有标准居中方式设置坐标。\n      x = params.widthGap + math.floor((i - 1) % params.cellCount) * (params.widthGap + params.itemSize.width)\n      y = H(innerContainer) - (math.floor((i - 1) / params.cellCount) + 1) * (params.heightGap + params.itemSize.height)\n      x = x + W(n) * AX(n)\n      y = y + H(n) * AY(n)\n\n      S_XY(n , x ,y)\n      n:addTo(innerContainer)\n\n    end\n    --如果是横向布局\n    --  elseif(self.direction==cc.ui.UIScrollView.DIRECTION_HORIZONTAL) then\n  else\n    if params.autoTable then\n      params.rowCount = math.floor(self.viewRect_.height / params.itemSize.height)\n    end\n\n    if params.autoGap then\n      params.heightGap = (self.viewRect_.height - (params.rowCount * params.itemSize.height)) / (params.rowCount + 1)\n      params.widthGap = params.heightGap\n    end\n\n    params.cellCount = math.ceil(#nodes / params.rowCount)\n    --避免动态尺寸少于设计尺寸。\n    local v_w = (params.itemSize.width + params.widthGap) * params.cellCount + params.widthGap\n    if v_w < self.viewRect_.width then v_h = self.viewRect_.width end\n    S_SIZE(innerContainer , v_w ,self.viewRect_.height)\n\n    for i = 1, #nodes do\n\n      local n = nodes[i]\n      local x = 0.0\n      local y = 0.0\n\n      --不管描点如何，总是有标准居中方式设置坐标。\n      x = params.widthGap +  math.floor((i - 1) / params.rowCount ) * (params.widthGap + params.itemSize.width)\n      y = H(innerContainer) - (math.floor((i - 1) % params.rowCount ) +1 ) * (params.heightGap + params.itemSize.height)\n      x = x + W(n) * AX(n)\n      y = y + H(n) * AY(n)\n\n      S_XY(n , x , y)\n      n:addTo(innerContainer)\n\n    end\n\n  end\n\nend\n\nreturn UIScrollView\n"
  },
  {
    "path": "源代码/mir9/src/framework/cc/ui/UISlider.lua",
    "content": "\n--[[\n\nCopyright (c) 2011-2014 chukong-inc.com\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in\nall copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\nTHE SOFTWARE.\n\n]]\n\n--------------------------------\n-- @module UISlider\n\n--[[--\n\nquick 滑动控件\n\n]]\n\nlocal UISlider = class(\"UISlider\", function()\n    return display.newNode()\nend)\n\nUISlider.BAR             = \"bar\"\nUISlider.BUTTON          = \"button\"\nUISlider.BAR_PRESSED     = \"bar_pressed\"\nUISlider.BUTTON_PRESSED  = \"button_pressed\"\nUISlider.BAR_DISABLED    = \"bar_disabled\"\nUISlider.BUTTON_DISABLED = \"button_disabled\"\n\nUISlider.PRESSED_EVENT = \"PRESSED_EVENT\"\nUISlider.RELEASE_EVENT = \"RELEASE_EVENT\"\nUISlider.STATE_CHANGED_EVENT = \"STATE_CHANGED_EVENT\"\nUISlider.VALUE_CHANGED_EVENT = \"VALUE_CHANGED_EVENT\"\n\nUISlider.BAR_ZORDER = 0     -- background bar\nUISlider.BARFG_ZORDER = 1   -- foreground bar\nUISlider.BUTTON_ZORDER = 2\n\n-- start --\n\n--------------------------------\n-- 滑动控件的构建函数\n-- @function [parent=#UISlider] new\n-- @param number direction 滑动的方向\n-- @param table images 各种状态对应的图片路径\n-- @param table options 参数表\n\n--[[--\n\n滑动控件的构建函数\n\n图片对应的状态:\n\n-   bar 滑动图片\n-   button 背景图片\n\n\n可用参数有：\n\n-   scale9 图片是否可缩放\n-   min 最小值\n-   max 最大值\n-   touchInButton 是否只在触摸在滑动块上时才有效，默认为真\n\n]]\n-- end --\n\nfunction UISlider:ctor(direction, images, options)\n    self.fsm_ = {}\n    cc(self.fsm_)\n        :addComponent(\"components.behavior.StateMachine\")\n        :exportMethods()\n    self.fsm_:setupState({\n        initial = {state = \"normal\", event = \"startup\", defer = false},\n        events = {\n            {name = \"disable\", from = {\"normal\", \"pressed\"}, to = \"disabled\"},\n            {name = \"enable\",  from = {\"disabled\"}, to = \"normal\"},\n            {name = \"press\",   from = \"normal\",  to = \"pressed\"},\n            {name = \"release\", from = \"pressed\", to = \"normal\"},\n        },\n        callbacks = {\n            onchangestate = handler(self, self.onChangeState_),\n        }\n    })\n\n    makeUIControl_(self)\n    self:setLayoutSizePolicy(display.FIXED_SIZE, display.FIXED_SIZE)\n\n    options = checktable(options)\n    self.direction_ = direction\n    self.isHorizontal_ = direction == display.LEFT_TO_RIGHT or direction == display.RIGHT_TO_LEFT\n    self.images_ = clone(images)\n    self.scale9_ = options.scale9\n    self.scale9Size_ = nil\n    self.min_ = checknumber(options.min or 0)\n    self.max_ = checknumber(options.max or 100)\n    self.value_ = self.min_\n    self.buttonPositionRange_ = {min = 0, max = 0}\n    self.buttonPositionOffset_ = {x = 0, y = 0}\n    self.touchInButtonOnly_ = true\n    if type(options.touchInButton) == \"boolean\" then\n        self.touchInButtonOnly_ = options.touchInButton\n    end\n\n    self.buttonRotation_ = 0\n    self.barSprite_ = nil\n    self.buttonSprite_ = nil\n    self.currentBarImage_ = nil\n    self.currentButtonImage_ = nil\n\n    self:updateImage_()\n    self:updateButtonPosition_()\n\n    self:setTouchEnabled(true)\n    self:addNodeEventListener(cc.NODE_TOUCH_EVENT, function(event)\n        return self:onTouch_(event.name, event.x, event.y)\n    end)\nend\n\n-- start --\n\n--------------------------------\n-- 设置滑动控件的大小\n-- @function [parent=#UISlider] setSliderSize\n-- @param number width 宽度\n-- @param number height 高度\n-- @return UISlider#UISlider \n\n-- end --\n\nfunction UISlider:setSliderSize(width, height)\n    -- assert(self.scale9_, \"UISlider:setSliderSize() - can't change size for non-scale9 slider\")\n    self.scale9Size_ = {width, height}\n    if self.barSprite_ then\n        if self.scale9_ then\n            self.barSprite_:setContentSize(cc.size(self.scale9Size_[1], self.scale9Size_[2]))\n            self:setFgBarSize_(cc.size(self.scale9Size_[1], self.scale9Size_[2]))\n        else\n            self:setContentSizeAndScale_(self.barSprite_, cc.size(self.scale9Size_[1], self.scale9Size_[2]))\n            self:setContentSizeAndScale_(self.barfgSprite_, cc.size(self.scale9Size_[1], self.scale9Size_[2]))\n        end\n    end\n    return self\nend\n\n-- start --\n\n--------------------------------\n-- 设置滑动控件的是否起效\n-- @function [parent=#UISlider] setSliderEnabled\n-- @param boolean enabled 有效与否\n-- @return UISlider#UISlider \n\n-- end --\n\nfunction UISlider:setSliderEnabled(enabled)\n    self:setTouchEnabled(enabled)\n    if enabled and self.fsm_:canDoEvent(\"enable\") then\n        self.fsm_:doEventForce(\"enable\")\n        self:dispatchEvent({name = UISlider.STATE_CHANGED_EVENT, state = self.fsm_:getState()})\n    elseif not enabled and self.fsm_:canDoEvent(\"disable\") then\n        self.fsm_:doEventForce(\"disable\")\n        self:dispatchEvent({name = UISlider.STATE_CHANGED_EVENT, state = self.fsm_:getState()})\n    end\n    return self\nend\n\n-- start --\n\n--------------------------------\n-- 设置滑动控件停靠位置\n-- @function [parent=#UISlider] align\n-- @param integer align 停靠方式\n-- @param integer x X方向位置\n-- @param integer y Y方向位置\n-- @return UISlider#UISlider \n\n-- end --\n\nfunction UISlider:align(align, x, y)\n    display.align(self, align, x, y)\n    self:updateImage_()\n    return self\nend\n\n-- start --\n\n--------------------------------\n-- 滑动控件是否有效\n-- @function [parent=#UISlider] isButtonEnabled\n-- @return boolean#boolean \n\n-- end --\n\nfunction UISlider:isButtonEnabled()\n    return self.fsm_:canDoEvent(\"disable\")\nend\n\n-- start --\n\n--------------------------------\n-- 得到滑动进度的值\n-- @function [parent=#UISlider] getSliderValue\n-- @return number#number \n\n-- end --\n\nfunction UISlider:getSliderValue()\n    return self.value_\nend\n\n-- start --\n\n--------------------------------\n-- 设置滑动进度的值\n-- @function [parent=#UISlider] setSliderValue\n-- @param number value 进度值\n-- @return UISlider#UISlider \n\n-- end --\n\nfunction UISlider:setSliderValue(value)\n    assert(value >= self.min_ and value <= self.max_, \"UISlider:setSliderValue() - invalid value\")\n    if self.value_ ~= value then\n        self.value_ = value\n        self:updateButtonPosition_()\n        self:dispatchEvent({name = UISlider.VALUE_CHANGED_EVENT, value = self.value_})\n    end\n    return self\nend\n\n-- start --\n\n--------------------------------\n-- 设置滑动控件的旋转度\n-- @function [parent=#UISlider] setSliderButtonRotation\n-- @param number rotation 旋转度\n-- @return UISlider#UISlider \n\n-- end --\n\nfunction UISlider:setSliderButtonRotation(rotation)\n    self.buttonRotation_ = rotation\n    self:updateImage_()\n    return self\nend\n\nfunction UISlider:addSliderValueChangedEventListener(callback)\n    return self:addEventListener(UISlider.VALUE_CHANGED_EVENT, callback)\nend\n\n-- start --\n\n--------------------------------\n-- 注册用户滑动监听\n-- @function [parent=#UISlider] onSliderValueChanged\n-- @param function callback 监听函数\n-- @return UISlider#UISlider \n\n-- end --\n\nfunction UISlider:onSliderValueChanged(callback)\n    self:addSliderValueChangedEventListener(callback)\n    return self\nend\n\nfunction UISlider:addSliderPressedEventListener(callback)\n    return self:addEventListener(UISlider.PRESSED_EVENT, callback)\nend\n\n-- start --\n\n--------------------------------\n-- 注册用户按下监听\n-- @function [parent=#UISlider] onSliderPressed\n-- @param function callback 监听函数\n-- @return UISlider#UISlider \n\n-- end --\n\nfunction UISlider:onSliderPressed(callback)\n    self:addSliderPressedEventListener(callback)\n    return self\nend\n\nfunction UISlider:addSliderReleaseEventListener(callback)\n    return self:addEventListener(UISlider.RELEASE_EVENT, callback)\nend\n\n-- start --\n\n--------------------------------\n-- 注册用户抬起或离开监听\n-- @function [parent=#UISlider] onSliderRelease\n-- @param function callback 监听函数\n-- @return UISlider#UISlider \n\n-- end --\n\nfunction UISlider:onSliderRelease(callback)\n    self:addSliderReleaseEventListener(callback)\n    return self\nend\n\nfunction UISlider:addSliderStateChangedEventListener(callback)\n    return self:addEventListener(UISlider.STATE_CHANGED_EVENT, callback)\nend\n\n-- start --\n\n--------------------------------\n-- 注册滑动控件状态改变监听\n-- @function [parent=#UISlider] onSliderStateChanged\n-- @param function callback 监听函数\n-- @return UISlider#UISlider \n\n-- end --\n\nfunction UISlider:onSliderStateChanged(callback)\n    self:addSliderStateChangedEventListener(callback)\n    return self\nend\n\nfunction UISlider:onTouch_(event, x, y)\n    if event == \"began\" then\n        if not self:checkTouchInButton_(x, y) then return false end\n        local posx, posy = self.buttonSprite_:getPosition()\n        local buttonPosition = self:convertToWorldSpace(cc.p(posx, posy))\n        self.buttonPositionOffset_.x = buttonPosition.x - x\n        self.buttonPositionOffset_.y = buttonPosition.y - y\n        self.fsm_:doEvent(\"press\")\n        self:dispatchEvent({name = UISlider.PRESSED_EVENT, x = x, y = y, touchInTarget = true})\n        return true\n    end\n\n    local touchInTarget = self:checkTouchInButton_(x, y)\n    x = x + self.buttonPositionOffset_.x\n    y = y + self.buttonPositionOffset_.y\n    local buttonPosition = self:convertToNodeSpace(cc.p(x, y))\n    x = buttonPosition.x\n    y = buttonPosition.y\n    local offset = 0\n\n    if self.isHorizontal_ then\n        if x < self.buttonPositionRange_.min then\n            x = self.buttonPositionRange_.min\n        elseif x > self.buttonPositionRange_.max then\n            x = self.buttonPositionRange_.max\n        end\n        if self.direction_ == display.LEFT_TO_RIGHT then\n            offset = (x - self.buttonPositionRange_.min) / self.buttonPositionRange_.length\n        else\n            offset = (self.buttonPositionRange_.max - x) / self.buttonPositionRange_.length\n        end\n    else\n        if y < self.buttonPositionRange_.min then\n            y = self.buttonPositionRange_.min\n        elseif y > self.buttonPositionRange_.max then\n            y = self.buttonPositionRange_.max\n        end\n        if self.direction_ == display.TOP_TO_BOTTOM then\n            offset = (self.buttonPositionRange_.max - y) / self.buttonPositionRange_.length\n        else\n            offset = (y - self.buttonPositionRange_.min) / self.buttonPositionRange_.length\n        end\n    end\n\n    self:setSliderValue(offset * (self.max_ - self.min_) + self.min_)\n\n    if event ~= \"moved\" and self.fsm_:canDoEvent(\"release\") then\n        self.fsm_:doEvent(\"release\")\n        self:dispatchEvent({name = UISlider.RELEASE_EVENT, x = x, y = y, touchInTarget = touchInTarget})\n    end\nend\n\nfunction UISlider:checkTouchInButton_(x, y)\n    if not self.buttonSprite_ then return false end\n    if self.touchInButtonOnly_ then\n        return self.buttonSprite_:getCascadeBoundingBox():containsPoint(cc.p(x, y))\n    else\n        return self:getCascadeBoundingBox():containsPoint(cc.p(x, y))\n    end\nend\n\nfunction UISlider:updateButtonPosition_()\n    if not self.barSprite_ or not self.buttonSprite_ then return end\n\n    local x, y = 0, 0\n    local barSize = self.barSprite_:getContentSize()\n    barSize.width = barSize.width * self.barSprite_:getScaleX()\n    barSize.height = barSize.height * self.barSprite_:getScaleY()\n    local buttonSize = self.buttonSprite_:getContentSize()\n    local offset = (self.value_ - self.min_) / (self.max_ - self.min_)\n    local ap = self:getAnchorPoint()\n\n    if self.isHorizontal_ then\n        x = x - barSize.width * ap.x\n        y = y + barSize.height * (0.5 - ap.y)\n        self.buttonPositionRange_.length = barSize.width - buttonSize.width\n        self.buttonPositionRange_.min = x + buttonSize.width / 2\n        self.buttonPositionRange_.max = self.buttonPositionRange_.min + self.buttonPositionRange_.length\n        \n        local lbPos = cc.p(0, 0)\n        if self.barfgSprite_ and self.scale9Size_ then\n            self:setContentSizeAndScale_(self.barfgSprite_, cc.size(offset * self.buttonPositionRange_.length, self.scale9Size_[2]))\n            lbPos = self:getbgSpriteLeftBottomPoint_()\n        end\n        if self.direction_ == display.LEFT_TO_RIGHT then\n            x = self.buttonPositionRange_.min + offset * self.buttonPositionRange_.length\n        else\n            if self.barfgSprite_ and self.scale9Size_ then\n                lbPos.x = lbPos.x + (1-offset)*self.buttonPositionRange_.length\n            end\n            x = self.buttonPositionRange_.min + (1 - offset) * self.buttonPositionRange_.length\n        end\n        if self.barfgSprite_ and self.scale9Size_ then\n            self.barfgSprite_:setPosition(lbPos)\n        end\n    else\n        x = x - barSize.width * (0.5 - ap.x)\n        y = y - barSize.height * ap.y\n        self.buttonPositionRange_.length = barSize.height - buttonSize.height\n        self.buttonPositionRange_.min = y + buttonSize.height / 2\n        self.buttonPositionRange_.max = self.buttonPositionRange_.min + self.buttonPositionRange_.length\n\n        local lbPos = cc.p(0, 0)\n        if self.barfgSprite_ and self.scale9Size_ then\n            self:setContentSizeAndScale_(self.barfgSprite_, cc.size(self.scale9Size_[1], offset * self.buttonPositionRange_.length))\n            lbPos = self:getbgSpriteLeftBottomPoint_()\n        end\n        if self.direction_ == display.TOP_TO_BOTTOM then\n            y = self.buttonPositionRange_.min + (1 - offset) * self.buttonPositionRange_.length\n            if self.barfgSprite_ and self.scale9Size_ then\n                lbPos.y = lbPos.y + (1-offset)*self.buttonPositionRange_.length\n            end\n        else\n            y = self.buttonPositionRange_.min + offset * self.buttonPositionRange_.length\n            if self.barfgSprite_ then\n            end\n        end\n        if self.barfgSprite_ and self.scale9Size_ then\n            self.barfgSprite_:setPosition(lbPos)\n        end\n    end\n\n    self.buttonSprite_:setPosition(x, y)\nend\n\nfunction UISlider:updateImage_()\n    local state = self.fsm_:getState()\n\n    local barImageName = \"bar\"\n    local barfgImageName = \"barfg\"\n    local buttonImageName = \"button\"\n    local barImage = self.images_[barImageName]\n    local barfgImage = self.images_[barfgImageName]\n    local buttonImage = self.images_[buttonImageName]\n    if state ~= \"normal\" then\n        barImageName = barImageName .. \"_\" .. state\n        buttonImageName = buttonImageName .. \"_\" .. state\n    end\n\n    if self.images_[barImageName] then\n        barImage = self.images_[barImageName]\n    end\n    if self.images_[buttonImageName] then\n        buttonImage = self.images_[buttonImageName]\n    end\n\n    if barImage then\n        if self.currentBarImage_ ~= barImage then\n            if self.barSprite_ then\n                self.barSprite_:removeFromParent(true)\n                self.barSprite_ = nil\n            end\n\n            if self.scale9_ then\n                self.barSprite_ = display.newScale9Sprite(barImage)\n                if not self.scale9Size_ then\n                    local size = self.barSprite_:getContentSize()\n                    self.scale9Size_ = {size.width, size.height}\n                else\n                    self.barSprite_:setContentSize(cc.size(self.scale9Size_[1], self.scale9Size_[2]))\n                end\n            else\n                self.barSprite_ = display.newSprite(barImage)\n                if self.scale9Size_ then\n                    self:setContentSizeAndScale_(self.barSprite_, cc.size(self.scale9Size_[1], self.scale9Size_[2]))\n                end\n            end\n            self:addChild(self.barSprite_, UISlider.BAR_ZORDER)\n        end\n\n        self.barSprite_:setAnchorPoint(self:getAnchorPoint())\n        self.barSprite_:setPosition(0, 0)\n    else\n        printError(\"UISlider:updateImage_() - not set bar image for state %s\", state)\n    end\n\n    if barfgImage then\n        if not self.barfgSprite_ then\n            if self.scale9_ then\n                self.barfgSprite_ = display.newScale9Sprite(barfgImage)\n                self.barfgSprite_:setContentSize(cc.size(self.scale9Size_[1], self.scale9Size_[2]))\n            else\n                self.barfgSprite_ = display.newSprite(barfgImage)\n            end\n\n            self:addChild(self.barfgSprite_, UISlider.BARFG_ZORDER)\n            self.barfgSprite_:setAnchorPoint(cc.p(0, 0))\n            self.barfgSprite_:setPosition(self.barSprite_:getPosition())\n        end\n    end\n\n    if buttonImage then\n        if self.currentButtonImage_ ~= buttonImage then\n            if self.buttonSprite_ then\n                self.buttonSprite_:removeFromParent(true)\n                self.buttonSprite_ = nil\n            end\n            self.buttonSprite_ = display.newSprite(buttonImage)\n            self:addChild(self.buttonSprite_, UISlider.BUTTON_ZORDER)\n        end\n\n        self.buttonSprite_:setPosition(0, 0)\n        self.buttonSprite_:setRotation(self.buttonRotation_)\n        self:updateButtonPosition_()\n    else\n        printError(\"UISlider:updateImage_() - not set button image for state %s\", state)\n    end\nend\n\nfunction UISlider:onChangeState_(event)\n    if self:isRunning() then\n        self:updateImage_()\n    end\nend\n\nfunction UISlider:setFgBarSize_(size)\n    if not self.barfgSprite_ then\n        return\n    end\n    self.barfgSprite_:setContentSize(size)\nend\n\nfunction UISlider:getbgSpriteLeftBottomPoint_()\n    if not self.barSprite_ then\n        return cc.p(0, 0)\n    end\n\n    local posX, posY = self.barSprite_:getPosition()\n    local size = self.barSprite_:getBoundingBox()\n    local ap = self.barSprite_:getAnchorPoint()\n    posX = posX - size.width*ap.x\n    posY = posY - size.height*ap.y\n\n    local point = cc.p(posX, posY)\n    return point\nend\n\nfunction UISlider:setContentSizeAndScale_(node, s)\n    if not node then\n        return\n    end\n\n    local size = node:getContentSize()\n    local scaleX\n    local scaleY\n    scaleX = s.width/size.width\n    scaleY = s.height/size.height\n    node:setScaleX(scaleX)\n    node:setScaleY(scaleY)\nend\n\n\nreturn UISlider\n"
  },
  {
    "path": "源代码/mir9/src/framework/cc/ui/UIStretch.lua",
    "content": "\n--[[\n\nCopyright (c) 2011-2014 chukong-inc.com\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in\nall copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\nTHE SOFTWARE.\n\n]]\n\n--------------------------------\n-- @module UIStretch\n\n--[[--\n\nquick 拉伸控件\n\n]]\n\nlocal UIStretch = class(\"UIStretch\")\n\n-- start --\n\n--------------------------------\n-- quick 拉伸控件\n-- @function [parent=#UIStretch] new\n\n-- end --\n\nfunction UIStretch:ctor()\n    cc(self):addComponent(\"components.ui.LayoutProtocol\"):exportMethods()\n    self:setLayoutSizePolicy(display.AUTO_SIZE, display.AUTO_SIZE)\n    self.position_ = {x = 0, y = 0}\n    self.anchorPoint_ = display.ANCHOR_POINTS[display.CENTER]\nend\n\n-- start --\n\n--------------------------------\n-- 得到位置信息\n-- @function [parent=#UIStretch] getPosition\n-- @return number#number  x\n-- @return number#number  y\n\n-- end --\n\nfunction UIStretch:getPosition()\n    return self.position_.x, self.position_.y\nend\n\n-- start --\n\n--------------------------------\n-- 得到x位置信息\n-- @function [parent=#UIStretch] getPositionX\n-- @return number#number  x\n\n-- end --\n\nfunction UIStretch:getPositionX()\n    return self.position_.x\nend\n\n-- start --\n\n--------------------------------\n-- 得到y位置信息\n-- @function [parent=#UIStretch] getPositionY\n-- @return number#number  y\n\n-- end --\n\nfunction UIStretch:getPositionY()\n    return self.position_.y\nend\n\n-- start --\n\n--------------------------------\n-- 设置位置信息\n-- @function [parent=#UIStretch] setPosition\n-- @param number x x的位置\n-- @param number y y的位置\n\n-- end --\n\nfunction UIStretch:setPosition(x, y)\n    self.position_.x, self.position_.y = x, y\nend\n\n-- start --\n\n--------------------------------\n-- 设置x位置信息\n-- @function [parent=#UIStretch] setPositionX\n-- @param number x x的位置\n\n-- end --\n\nfunction UIStretch:setPositionX(x)\n    self.position_.x = x\nend\n\n-- start --\n\n--------------------------------\n-- 设置y位置信息\n-- @function [parent=#UIStretch] setPositionY\n-- @param number y y的位置\n\n-- end --\n\nfunction UIStretch:setPositionY(y)\n    self.position_.y = y\nend\n\n-- start --\n\n--------------------------------\n-- 得到锚点位置信息\n-- @function [parent=#UIStretch] getAnchorPoint\n-- @return table#table  位置信息\n\n-- end --\n\nfunction UIStretch:getAnchorPoint()\n    return self.anchorPoint_\nend\n\n-- start --\n\n--------------------------------\n-- 设置锚点位置\n-- @function [parent=#UIStretch] setAnchorPoint\n-- @param ap 锚点\n\n-- end --\n\nfunction UIStretch:setAnchorPoint(ap)\n    self.anchorPoint_ = ap\nend\n\n\nreturn UIStretch\n"
  },
  {
    "path": "源代码/mir9/src/framework/cc/ui/init.lua",
    "content": "\n--[[\n\nCopyright (c) 2011-2014 chukong-inc.com\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in\nall copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\nTHE SOFTWARE.\n\n]]\n\n--------------------------------\n-- @module ui\n-- @parent_module cc\n\n--[[--\n\n初始化 cc.ui 扩展\n\ncc.ui 提供了一套 quick 专属的纯 lua UI控件模块\n\n]]\n\nlocal c = cc\nlocal ui = {}\n\nfunction makeUIControl_(control)\n    cc(control)\n    control:addComponent(\"components.ui.LayoutProtocol\"):exportMethods()\n    control:addComponent(\"components.behavior.EventProtocol\"):exportMethods()\n\n    control:setCascadeOpacityEnabled(true)\n    control:setCascadeColorEnabled(true)\n    control:addNodeEventListener(c.NODE_EVENT, function(event)\n        if event.name == \"cleanup\" then\n            control:removeAllEventListeners()\n        end\n    end)\nend\n\nui.TEXT_ALIGN_LEFT    = cc.TEXT_ALIGNMENT_LEFT\nui.TEXT_ALIGN_CENTER  = cc.TEXT_ALIGNMENT_CENTER\nui.TEXT_ALIGN_RIGHT   = cc.TEXT_ALIGNMENT_RIGHT\nui.TEXT_VALIGN_TOP    = cc.VERTICAL_TEXT_ALIGNMENT_TOP\nui.TEXT_VALIGN_CENTER = cc.VERTICAL_TEXT_ALIGNMENT_CENTER\nui.TEXT_VALIGN_BOTTOM = cc.VERTICAL_TEXT_ALIGNMENT_BOTTOM\n\nui.UIGroup               = import(\".UIGroup\")\nui.UIImage               = import(\".UIImage\")\nui.UIPushButton          = import(\".UIPushButton\")\nui.UICheckBoxButton      = import(\".UICheckBoxButton\")\nui.UICheckBoxButtonGroup = import(\".UICheckBoxButtonGroup\")\nui.UIInput               = import(\".UIInput\")\nui.UILabel               = import(\".UILabel\")\nui.UISlider              = import(\".UISlider\")\nui.UIBoxLayout           = import(\".UIBoxLayout\")\nui.UIScrollView          = import(\".UIScrollView\")\nui.UIListView            = import(\".UIListView\")\nui.UIPageView            = import(\".UIPageView\")\nui.UILoadingBar          = import(\".UILoadingBar\")\n\nreturn ui\n"
  },
  {
    "path": "源代码/mir9/src/framework/cc/uiloader/CCSSceneLoader.lua",
    "content": "\nlocal CCSUILoader = import(\".CCSUILoader\")\nlocal CCSSceneLoader = class(\"CCSSceneLoader\")\n\nfunction CCSSceneLoader:load(json, params)\n\tself.params_ = params\n\n\tlocal node = self:createGameObject(json), json.CanvasSize._width, json.CanvasSize._height\n\n\tself.params_ = nil\n\n\treturn node\nend\n\nfunction CCSSceneLoader:createGameObject(jsonNode)\n\tlocal node = display.newNode()\n\n\tnode.name = jsonNode.name or \"no name\"\n\tnode:setRotation(jsonNode.rotation or 0)\n\tnode:setScaleX(jsonNode.scalex or 1)\n\tnode:setScaleY(jsonNode.scaley or 1)\n\tif not jsonNode.visible or 0 == jsonNode.visible then\n\t\tnode:setVisible(false)\n\telse\n\t\tnode:setVisible(true)\n\tend\n\tnode:setLocalZOrder(jsonNode.zorder or 0)\n\tnode:setTag(jsonNode.objecttag or 0)\n\tnode:setPosition(jsonNode.x, jsonNode.y)\n\n\t-- component\n\tif jsonNode.components then\n\t\tfor i,v in ipairs(jsonNode.components) do\n\t\t\tself:addComponent(node, v, i)\n\t\tend\n\tend\n\n\tif jsonNode.gameobjects then\n\t\tlocal subNode\n\t\tfor i,v in ipairs(jsonNode.gameobjects) do\n\t\t\tsubNode = self:createGameObject(v)\n\t\t\tif subNode then\n\t\t\t\tnode:addChild(subNode)\n\t\t\tend\n\t\tend\n\tend\n\n\treturn node\nend\n\nfunction CCSSceneLoader:addComponent(gameObject, component, idx)\n\tlocal node\n\n\tif component.fileData then\n\t\tself:loadTexture(component.fileData.plistFile)\n\tend\n\n\t-- print(\"CCSSceneLoader name:\" .. component.classname)\n\tif \"CCScene\" == component.classname then\n\t\tnode = self:createScene(component)\n\t-- elseif \"CCBackgroundAudio\" == component.classname then\n\t-- \tnode = self:createBackgroundAudio(component)\n\telseif \"CCSprite\" == component.classname then\n\t\tnode = self:createSprite(component)\n\telseif \"CCArmature\" == component.classname then\n\t\tnode = self:createArmature(component)\n\telseif \"GUIComponent\" == component.classname then\n\t\tnode = self:createGUIComponent(component)\n\telseif \"CCParticleSystemQuad\" == component.classname then\n\t\tnode = self:createParticleSystem(component)\n\telse\n\t\tprint(\"CCSSceneLoader - not support classname:\" .. component.classname)\n\tend\n\n\tif node then\n\t\tnode.name = \"Component\" .. idx\n\t\tgameObject:addChild(node)\n\tend\n\n\treturn gameObject\nend\n\nfunction CCSSceneLoader:createScene(comp)\n\tlocal scene = cc.Scene:create()\n\treturn scene\nend\n\nfunction CCSSceneLoader:createBackgroundAudio(comp)\n\t-- TODO\nend\n\nfunction CCSSceneLoader:createSprite(comp)\n\tlocal name\n\tif self:isNil(comp.fileData.plistFile) then\n\t\tname = comp.fileData.path\n\telse\n\t\tname = \"#\" .. comp.fileData.path\n\tend\n\tlocal sp = display.newSprite(name)\n\treturn sp\nend\n\nfunction CCSSceneLoader:createArmature(comp)\n\tlocal manager = ccs.ArmatureDataManager:getInstance()\n    manager:addArmatureFileInfo(comp.fileData.path)\n    local armature = ccs.Armature:create(io.pathinfo(comp.fileData.path).basename)\n\n    return armature\nend\n\nfunction CCSSceneLoader:createGUIComponent(comp)\n\tlocal ui = CCSUILoader:loadFile(comp.fileData.path, self.params_)\n\n\treturn ui\nend\n\nfunction CCSSceneLoader:createParticleSystem(comp)\n\tlocal particleSys = cc.ParticleSystemQuad:create(comp.fileData.path)\n\tparticleSys:setPosition(0, 0)\n\n    return particleSys\nend\n\nfunction CCSSceneLoader:loadTexture(plist, png)\n\tif not plist or 0 == string.utf8len(plist) then\n\t\treturn\n\tend\n\n\tlocal spCache = cc.SpriteFrameCache:getInstance()\n\tif png then\n\t\tspCache:addSpriteFrames(plist, png)\n\telse\n\t\tspCache:addSpriteFrames(plist)\n\tend\nend\n\nfunction CCSSceneLoader:isNil(str)\n\tif not str or 0 == string.utf8len(str) then\n\t\treturn true\n\telse\n\t\treturn false\n\tend\nend\n\nreturn CCSSceneLoader\n"
  },
  {
    "path": "源代码/mir9/src/framework/cc/uiloader/CCSUILoader.lua",
    "content": "\nlocal UILoaderUtilitys = import(\".UILoaderUtilitys\")\nlocal CCSUILoader = class(\"CCSUILoader\")\n\nfunction CCSUILoader:load(json, params)\n\tif params then\n\t\tself.bUseEditBox = params.bUseEditBox or false\n\telse\n\t\tself.bUseEditBox = false\n\tend\n\n\tif cc.bPlugin_ and self.bUseEditBox then\n\t\t-- CCEditbox(C++ widget) not support no background\n\t\tself.bUseEditBox = false\n\n\t\tprint(\"Error! not support CCEditbox in cocostudio layout file\")\n\tend\n\n\tself.texturesPng = json.texturesPng\n\tself:loadTexture(json)\n\n\tlocal node, bAdaptScreen = self:parserJson(json)\n\tself.texturesPng = nil\n\tif bAdaptScreen then\n\t\treturn node, display.width, display.height\n\telse\n\t\treturn node, json.designWidth, json.designHeight\n\tend\nend\n\nfunction CCSUILoader:loadFile(jsonFile, params)\n\tlocal fileUtil = cc.FileUtils:getInstance()\n\tlocal fullPath = fileUtil:fullPathForFilename(jsonFile)\n\tlocal jsonStr = fileUtil:getStringFromFile(fullPath)\n\tlocal jsonVal = json.decode(jsonStr)\n\n\tUILoaderUtilitys.addSearchPathIf(io.pathinfo(fullPath).dirname)\n\n\tlocal node, w, h = self:load(jsonVal, params)\n\n\tUILoaderUtilitys.clearPath()\n\n\treturn node, w, h\nend\n\nfunction CCSUILoader:parserJson(jsonVal)\n\tlocal root = jsonVal.nodeTree\n\tif not root then\n\t\troot = jsonVal.widgetTree\n\tend\n\tif not root then\n\t\tprintInfo(\"CCSUILoader - parserJson havn't found root node\")\n\t\treturn\n\tend\n\tself:prettyJson(root)\n\tlocal uiRoot = self:generateUINode(root)\n\n\treturn uiRoot, root.options.adaptScreen\nend\n\n-- generate a ui node and invoke self to generate child ui node\nfunction CCSUILoader:generateUINode(jsonNode, transX, transY, parent)\n\ttransX = transX or 0\n\ttransY = transY or 0\n\n\tlocal clsName = jsonNode.classname\n\tlocal options = jsonNode.options\n\n\toptions.x = options.x or 0\n\toptions.y = options.y or 0\n\toptions.x = options.x + transX\n\toptions.y = options.y + transY\n\n\tlocal uiNode = self:createUINode(clsName, options, parent)\n\tif not uiNode then\n\t\treturn\n\tend\n\n\tself:modifyPanelChildPos_(clsName, options.adaptScreen, options.sizeType, uiNode:getContentSize(), jsonNode.children)\n\n\t-- ccs中父节点的原点在父节点的锚点位置，这里用posTrans作转换\n\tlocal posTrans = uiNode:getAnchorPoint()\n\tlocal parentSize = uiNode:getContentSize()\n\tposTrans.x = posTrans.x * parentSize.width\n\tposTrans.y = posTrans.y * parentSize.height\n\n\tuiNode.name = options.name or \"unknow node\"\n\n\t--for seek\n\tuiNode.subChildren = {}\n\tif parent then\n\t\tparent.subChildren[uiNode.name] = uiNode\n\tend\n\n\t-- print(\"CCSUILoader set node params:\" .. uiNode.name)\n\n\tif options.fileName then\n\t\tuiNode:setSpriteFrame(options.fileName)\n\tend\n\n\tif options.flipX then\n\t\tif uiNode.setFlippedX then\n\t\t\tuiNode:setFlippedX(options.flipX)\n\t\tend\n\tend\n\tif options.flipY then\n\t\tif uiNode.setFlippedY then\n\t\t\tuiNode:setFlippedY(options.flipY)\n\t\tend\n\tend\n\tuiNode:setRotation(options.rotation or 0)\n\n\tuiNode:setScaleX((options.scaleX or 1) * uiNode:getScaleX())\n\tuiNode:setScaleY((options.scaleY or 1) * uiNode:getScaleY())\n\tuiNode:setVisible(options.visible)\n\tuiNode:setLocalZOrder(options.ZOrder or 0)\n\t-- uiNode:setGlobalZOrder(options.ZOrder or 0)\n\tuiNode:setTag(options.tag or 0)\n\n\tlocal emptyNode\n\tif \"ScrollView\" == clsName then\n\t\temptyNode = cc.Node:create()\n\t\temptyNode:setPosition(options.x, options.y)\n\t\tuiNode:addScrollNode(emptyNode)\n\tend\n\n\tlocal children = jsonNode.children\n\tfor i,v in ipairs(children) do\n\t\tlocal childrenNode = self:generateUINode(v, posTrans.x, posTrans.y, uiNode)\n\t\tif childrenNode then\n\t\t\tif \"ScrollView\" == clsName then\n\t\t\t\temptyNode:addChild(childrenNode)\n\t\t\telseif \"ListView\" == clsName then\n\t\t\t\tlocal item = uiNode:newItem()\n\t\t\t\titem:addContent(childrenNode)\n\t\t\t\tlocal size = childrenNode:getContentSize()\n\t\t\t\t-- local layoutParameter = self:getChildOptionJson(v)\n\t\t\t\t-- if layoutParameter then\n\t\t\t\t-- \titem:setMargin({left = layoutParameter.marginLeft or 0,\n\t\t\t\t-- \t\tright = layoutParameter.marginRight or 0,\n\t\t\t\t-- \t\ttop = layoutParameter.marginTop or 0,\n\t\t\t\t-- \t\tbottom = layoutParameter.marginDown or 0})\n\t\t\t\t-- end\n\t\t\t\titem:setItemSize(size.width, size.height)\n\t\t\t\tuiNode:addItem(item)\n\n\t\t\t\tif \"Button\" == v.classname then\n\t\t\t\t\tchildren:setTouchSwallowEnabled(false)\n\t\t\t\tend\n\t\t\telseif \"PageView\" == clsName then\n\t\t\t\tlocal item = uiNode:newItem()\n\t\t\t\tchildrenNode:setPosition(0, 0)\n\t\t\t\titem:addChild(childrenNode)\n\t\t\t\titem:setTag(10001)\n\t\t\t\tuiNode:addItem(item)\n\t\t\telse\n\t\t\t\tuiNode:addChild(childrenNode)\n\t\t\tend\n\t\tend\n\tend\n\n\tif \"ListView\" == clsName or \"PageView\" == clsName then\n\t\tuiNode:reload()\n\telseif \"ScrollView\" == clsName then\n\t\tuiNode:resetPosition()\n\tend\n\n\treturn uiNode\nend\n\nfunction CCSUILoader:createUINode(clsName, options, parent)\n\tif not clsName then\n\t\treturn\n\tend\n\n\t-- printInfo(\"CCSUILoader - createUINode:\" .. clsName)\n\n\tlocal node\n\n\tif clsName == \"Node\" then\n\t\tnode = self:createNode(options)\n\telseif clsName == \"Sprite\" or clsName == \"Scale9Sprite\" then\n\t\tnode = self:createSprite(options)\n\telseif clsName == \"ImageView\" then\n\t\tnode = self:createImage(options)\n\telseif clsName == \"Button\" then\n\t\tnode = self:createButton(options)\n\telseif clsName == \"LoadingBar\" then\n\t\tnode = self:createLoadingBar(options)\n\telseif clsName == \"Slider\" then\n\t\tnode = self:createSlider(options)\n\telseif clsName == \"CheckBox\" then\n\t\tnode = self:createCheckBox(options)\n    elseif clsName == \"LabelBMFont\" then\n    \tnode = self:createBMFontLabel(options)\n    elseif clsName == \"Label\" then\n    \tnode = self:createLabel(options)\n    elseif clsName == \"LabelAtlas\" then\n    \tnode = self:createLabelAtlas(options)\n\telseif clsName == \"TextField\" then\n\t\tnode = self:createEditBox(options)\n\telseif clsName == \"Panel\" then\n\t\tnode = self:createPanel(options)\n\telseif clsName == \"ScrollView\" then\n\t\tnode = self:createScrollView(options)\n\telseif clsName == \"ListView\" then\n\t\tnode = self:createListView(options)\n\telseif clsName == \"PageView\" then\n\t\tnode = self:createPageView(options)\n\telse\n\t\t-- printError(\"CCSUILoader not support node:\" .. clsName)\n\t\tprintInfo(\"CCSUILoader not support node:\" .. clsName)\n\tend\n\n\treturn node\nend\n\nfunction CCSUILoader:getChildOptionJson(json)\n\treturn json.options.layoutParameter\nend\n\nfunction CCSUILoader:newWapperNode(oldNode, layoutParameter)\n\tlocal newNode = display.newNode()\n\tlocal size = oldNode:getContentSize()\n\tsize.width = size.width + layoutParameter.marginLeft + layoutParameter.marginRight\n\tsize.height = size.height + layoutParameter.marginTop + layoutParameter.marginDown\n\tnewNode:setContentSize(size)\n\tnewNode:addChild(oldNode)\n\toldNode:setPosition()\nend\n\nfunction CCSUILoader:getButtonStateImages(options)\n\tlocal images = {}\n\tif options.normalData and options.normalData.path then\n\t\timages.normal = self:transResName(options.normalData)\n\tend\n\tif options.pressedData and options.pressedData.path then\n\t\timages.pressed = self:transResName(options.pressedData)\n\tend\n\tif options.disabledData and options.disabledData.path then\n\t\timages.disabled = self:transResName(options.disabledData)\n\tend\n\n\treturn images\nend\n\nfunction CCSUILoader:getAnchorType(anchorX, anchorY)\n\tif 1 == anchorX then\n\t\tif 1 == anchorY then\n\t\t\treturn display.RIGHT_TOP\n\t\telseif 0.5 == anchorY then\n\t\t\treturn display.RIGHT_CENTER\n\t\telse\n\t\t\treturn display.RIGHT_BOTTOM\n\t\tend\n\telseif 0.5 == anchorX then\n\t\tif 1 == anchorY then\n\t\t\treturn display.CENTER_TOP\n\t\telseif 0.5 == anchorY then\n\t\t\treturn display.CENTER\n\t\telse\n\t\t\treturn display.CENTER_BOTTOM\n\t\tend\n\telse\n\t\tif 1 == anchorY then\n\t\t\treturn display.LEFT_TOP\n\t\telseif 0.5 == anchorY then\n\t\t\treturn display.LEFT_CENTER\n\t\telse\n\t\t\treturn display.LEFT_BOTTOM\n\t\tend\n\tend\nend\n\n\nfunction CCSUILoader:getCheckBoxImages(options)\n\tlocal images = {}\n\n\tlocal getBackgroundImage = function(state)\n\t\tlocal image = options.backGroundBoxData\n\t\tif \"pressed\" == state then\n\t\t\timage = options.backGroundBoxSelectedData\n\t\telseif \"disabled\" == state then\n\t\t\timage = options.backGroundBoxDisabledData\n\t\tend\n\n\t\treturn image\n\tend\n\n\t-- local getFrontgroundImage = function(state)\n\t-- \tlocal image = options.backGroundBoxData.path\n\t-- \tif \"pressed\" == state then\n\t-- \t\timage = options.backGroundBoxSelectedData.path\n\t-- \tend\n\t-- \tif \"disabled\" == state then\n\t-- \t\timage = options.backGroundBoxDisabledData.path\n\t-- \tend\n\n\t-- \treturn image\n\t-- end\n\n\timages.off = self:transResName(getBackgroundImage(\"normal\"))\n\timages.off_pressed = self:transResName(getBackgroundImage(\"pressed\"))\n\timages.off_disabled = self:transResName(getBackgroundImage(\"disabled\"))\n\timages.on = {images.off, self:transResName(options.frontCrossData)}\n\timages.on_pressed = images.on\n\timages.on_disabled = {images.off_disabled,\n\t\tself:transResName(options.frontCrossDisabledData)}\n\n\treturn images\nend\n\nfunction CCSUILoader:loadTexture(json)\n\t-- cc.FileUtils:getInstance():addSearchPath(\"res/\")\n\n\tfor i,v in ipairs(json.textures) do\n\t\tself.bUseTexture = true\n\t\t-- if json.texturesPng then\n\t\t-- \tpng = self:getTexturePng(json.texturesPng[i])\n\t\t-- end\n\t\tUILoaderUtilitys.loadTexture(v)\n\tend\n\nend\n\nfunction CCSUILoader:getTexturePng(plist)\n\tif not plist then\n\t\treturn\n\tend\n\n\tlocal info = io.pathinfo(plist)\n\n\tlocal png\n\tif info.dirname then\n\t\tpng = info.dirname .. info.basename .. \".png\"\n\telse\n\t\tpng = info.basename .. \".png\"\n\tend\n\n\treturn png\nend\n\nfunction CCSUILoader:transResName(fileData)\n\tif not fileData then\n\t\treturn\n\tend\n\n\tlocal name = fileData.path\n\tif not name then\n\t\treturn name\n\tend\n\n\tUILoaderUtilitys.loadTexture(fileData.plistFile)\n\tif 1 == fileData.resourceType then\n\t\treturn \"#\" .. name\n\telse\n\t\treturn UILoaderUtilitys.getFileFullName(name)\n\tend\n\n\t-- -- local pathInfo = io.pathinfo(path)\n\t-- -- local name = pathInfo.filename\n\t-- local isInTexturePng = function(name)\n\t-- \tif not self.texturesPng then\n\t-- \t\treturn false\n\t-- \tend\n\t-- \tfor i,v in ipairs(self.texturesPng) do\n\t-- \t\tif v == name then\n\t-- \t\t\treturn true\n\t-- \t\tend\n\t-- \tend\n\t-- \treturn false\n\t-- end\n\n\t-- if not self.bUseTexture then\n\t-- \treturn name\n\t-- end\n\n\t-- if not isInTexturePng(name) then\n\t-- \treturn \"#\" .. name\n\t-- else\n\t-- \treturn name\n\t-- end\nend\n\nfunction CCSUILoader:createNode(options)\n\tlocal node = cc.Node:create()\n\tif not options.ignoreSize then\n\t\tnode:setContentSize(cc.size(options.width or 0, options.height or 0))\n\tend\n\tnode:setPositionX(options.x or 0)\n\tnode:setPositionY(options.y or 0)\n\tnode:setAnchorPoint(\n\t\tcc.p(options.anchorPointX or 0.5, options.anchorPointY or 0.5))\n\n\treturn node\nend\n\nfunction CCSUILoader:createSprite(options)\n\tlocal node = cc.Sprite:create()\n\tif not options.ignoreSize then\n\t\tnode:setContentSize(cc.size(options.width, options.height))\n\tend\n\tif options.opacity then\n\t\tnode:setOpacity(options.opacity)\n\tend\n\tnode:setPositionX(options.x or 0)\n\tnode:setPositionY(options.y or 0)\n\tnode:setAnchorPoint(\n\t\tcc.p(options.anchorPointX or 0.5, options.anchorPointY or 0.5))\n\n\treturn node\nend\n\nfunction CCSUILoader:createImage(options)\n\tlocal params = {}\n\tparams.scale9 = options.scale9Enable\n\tif params.scale9 then\n\t\tparams.capInsets = cc.rect(options.capInsetsX, options.capInsetsY,options.capInsetsWidth, options.capInsetsHeight)\n\tend\n\tlocal node = cc.ui.UIImage.new(self:transResName(options.fileNameData), params)\n\n\t-- local capRect = cc.rect(options.capInsetsX, options.capInsetsY,\n\t-- \toptions.capInsetsWidth, options.capInsetsHeight)\n\t-- if 1 == options.fileNameData.resourceType then\n\t-- \tlocal frame = display.newSpriteFrame(options.fileNameData.path)\n\t-- \tif options.scale9Enable then\n\t-- \t\tnode:initWithSpriteFrame(frame, capRect);\n\t-- \telse\n\t--\t\tnode:setSpriteFrame(frame)\n\t-- \tend\n\t-- else\n\t-- \tif options.scale9Enable then\n\t-- \t\tnode:initWithFile(capRect, options.fileNameData.path);\n\t-- \telse\n\t-- \t\tnode:setTexture(options.fileNameData.path)\n\t-- \tend\n\t-- end\n\n\tif not options.scale9Enable then\n\t\tlocal originSize = node:getContentSize()\n\t\tif options.width then\n\t\t\toptions.scaleX = (options.scaleX or 1) * options.width/originSize.width\n\t\tend\n\t\tif options.height then\n\t\t\toptions.scaleY = (options.scaleY or 1) * options.height/originSize.height\n\t\tend\n\tend\n\tif not options.ignoreSize then\n\t\tnode:setLayoutSize(options.width, options.height)\n\n\t\t-- setLayoutSize have scaled\n\t\toptions.scaleX = 1\n\t\toptions.scaleY = 1\n\tend\n\tnode:setPositionX(options.x or 0)\n\tnode:setPositionY(options.y or 0)\n\tnode:setAnchorPoint(\n\t\tcc.p(options.anchorPointX or 0.5, options.anchorPointY or 0.5))\n\n\tif options.touchAble then\n\t\tnode:setTouchEnabled(true)\n\t\tnode:setTouchSwallowEnabled(true)\n\tend\n\tif options.opacity then\n\t\tnode:setOpacity(options.opacity)\n\tend\n\n\treturn node\nend\n\nfunction CCSUILoader:createButton(options)\n\tlocal node = cc.ui.UIPushButton.new(self:getButtonStateImages(options),\n\t\t{scale9 = options.scale9Enable,\n\t\tflipX = options.flipX,\n\t\tflipY = options.flipY})\n\n\tif options.opacity then\n\t\tnode:setCascadeOpacityEnabled(true)\n\t\tnode:setOpacity(options.opacity)\n\tend\n\tif options.text then\n\t\tnode:setButtonLabel(\n\t\t\tcc.ui.UILabel.new({text = options.text,\n\t\t\t\tsize = options.fontSize,\n\t\t\t\tcolor = cc.c3b(options.textColorR, options.textColorG, options.textColorB)}))\n\tend\n\tif not options.ignoreSize then\n\t\tnode:setButtonSize(options.width, options.height)\n\tend\n\tnode:align(self:getAnchorType(options.anchorPointX or 0.5, options.anchorPointY or 0.5),\n\t\toptions.x or 0, options.y or 0)\n\n\treturn node\nend\n\nfunction CCSUILoader:createLoadingBar(options)\n\tlocal params = {}\n\tparams.image = self:transResName(options.textureData)\n\tparams.scale9 = options.scale9Enable\n\tparams.capInsets = cc.rect(options.capInsetsX, options.capInsetsY,\n\t\toptions.capInsetsWidth, options.capInsetsHeight)\n\tparams.direction = options.direction\n\tparams.percent = options.percent or 100\n\tparams.viewRect = cc.rect(options.x, options.y, options.width, options.height)\n\n\tlocal node = cc.ui.UILoadingBar.new(params)\n\n\tnode:setDirction(options.direction)\n\tnode:setPositionX(options.x or 0)\n\tnode:setPositionY(options.y or 0)\n\tnode:setContentSize(options.width, options.height)\n\tnode:setAnchorPoint(\n\t\tcc.p(options.anchorPointX or 0.5, options.anchorPointY or 0.5))\n\n\treturn node\nend\n\nfunction CCSUILoader:createSlider(options)\n\tlocal node = cc.ui.UISlider.new(display.LEFT_TO_RIGHT,\n\t\t{bar = self:transResName(options.barFileNameData),\n\t\tbarfg = self:transResName(options.progressBarData),\n\t\tbutton = self:transResName(options.ballNormalData),\n\t\tbutton_pressed = self:transResName(options.ballPressedData),\n\t\tbutton_disabled = self:transResName(options.ballDisabledData),},\n\t\t{scale9 = options.scale9Enable})\n\n\tif not options.ignoreSize then\n\t\tnode:setSliderSize(options.width, options.height)\n\tend\n\tnode:align(self:getAnchorType(options.anchorPointX, options.anchorPointY),\n\t\toptions.x or 0, options.y or 0)\n    node:setSliderValue(options.percent)\n\n\treturn node\nend\n\nfunction CCSUILoader:createCheckBox(options)\n\tlocal node = cc.ui.UICheckBoxButton.new(\n\t\tself:getCheckBoxImages(options),\n\t\t{scale9 = not options.ignoreSize})\n\n\tif not options.ignoreSize then\n\t\tnode:setButtonSize(options.width, options.height)\n\tend\n\tnode:align(self:getAnchorType(options.anchorPointX or 0.5, options.anchorPointY or 0.5),\n\t\toptions.x or 0, options.y or 0)\n\n\treturn node\nend\n\nfunction CCSUILoader:createBMFontLabel(options)\n\tlocal node = cc.ui.UILabel.new({\n\t\tUILabelType = 1,\n\t\ttext = options.text,\n\t\tfont = options.fileNameData.path,\n\t\ttextAlign = cc.ui.TEXT_ALIGN_CENTER})\n\tnode:align(self:getAnchorType(options.anchorPointX or 0.5, options.anchorPointY or 0.5),\n\t\toptions.x or 0, options.y or 0)\n\n\treturn node\nend\n\nfunction CCSUILoader:createLabel(options)\n\tlocal node = cc.ui.UILabel.new({text = options.text,\n\t\tfont = options.fontName,\n\t\tsize = options.fontSize,\n\t\tcolor = cc.c3b(options.colorR or 255, options.colorG or 255, options.colorB or 255),\n\t\talign = options.hAlignment,\n\t\tvalign = options.vAlignment,\n\t\tdimensions = cc.size(options.areaWidth or 0, options.areaHeight or 0),\n\t\tx = options.x, y = options.y})\n\tif not options.ignoreSize then\n\t\tnode:setLayoutSize(options.areaWidth, options.areaHeight)\n\tend\n\n\tnode:align(self:getAnchorType(options.anchorPointX or 0.5, options.anchorPointY or 0.5),\n\t\toptions.x or 0, options.y or 0)\n\n\treturn node\nend\n\nfunction CCSUILoader:createLabelAtlas(options)\n\tlocal labelAtlas\n\tif \"function\" == type(cc.LabelAtlas._create) then\n\t\tlabelAtlas = cc.LabelAtlas:_create()\n\t\tlabelAtlas:initWithString(options.stringValue,\n\t\t\toptions.charMapFileData.path,\n\t\t\toptions.itemWidth,\n\t\t\toptions.itemHeight,\n\t\t\tstring.byte(options.startCharMap))\n\telse\n\t\tlabelAtlas = cc.LabelAtlas:create(\n\t\t\toptions.stringValue,\n\t\t\toptions.charMapFileData.path,\n\t\t\toptions.itemWidth,\n\t\t\toptions.itemHeight,\n\t\t\tstring.byte(options.startCharMap))\n\tend\n\n\tlabelAtlas:setAnchorPoint(\n\t\tcc.p(options.anchorPointX or 0.5, options.anchorPointY or 0.5))\n\tlabelAtlas:setPosition(options.x, options.y)\n\tif not options.ignoreSize then\n\t\tlabelAtlas:setContentSize(options.width, options.height)\n\tend\n\treturn labelAtlas\nend\n\nfunction CCSUILoader:createEditBox(options)\n\tlocal editBox\n\n\tif self.bUseEditBox then\n\t\teditBox = cc.ui.UIInput.new({\n\t\t\tUIInputType = 1,\n\t        size = cc.size(options.width, options.height)\n\t    \t})\n\t    editBox:setPlaceHolder(options.placeHolder)\n\t    editBox:setFontName(options.fontName)\n\t    editBox:setFontSize(options.fontSize or 20)\n\t    editBox:setText(options.text)\n\t    if options.passwordEnable then\n\t    \teditBox:setInputFlag(cc.EDITBOX_INPUT_FLAG_PASSWORD)\n\t\tend\n\t\tif options.maxLengthEnable then\n\t\t\teditBox:setMaxLength(options.maxLength)\n\t\tend\n\t\teditBox:setPosition(options.x, options.y)\n\telse\n\t\tif not options.maxLengthEnable then\n\t\t\t-- if maxlength not enable set the length is 0\n\t\t\toptions.maxLength = 0\n\t\tend\n\t\teditBox = cc.ui.UIInput.new({\n\t\tUIInputType = 2,\n        placeHolder = options.placeHolder,\n        x = options.x,\n        y = options.y,\n        text = options.text,\n        size = cc.size(options.width, options.height),\n        passwordEnable = options.passwordEnable,\n        font = options.fontName,\n        fontSize = options.fontSize,\n        maxLength = options.maxLength\n        })\n\tend\n\n\teditBox:setAnchorPoint(\n\t\tcc.p(options.anchorPointX or 0.5, options.anchorPointY or 0.5))\t\n\n\treturn editBox\nend\n\nfunction CCSUILoader:createPanel(options)\n\tlocal node\n\tif options.clipAble then\n\t\tnode = cc.ClippingRegionNode:create()\n\telse\n\t\tnode = display.newNode()\n\tend\n\tlocal clrLayer\n\tlocal bgLayer\n\n\tif 1 == options.colorType then\n\t\t-- single color\n\t\tclrLayer = cc.LayerColor:create()\n\t\tif not cc.bPlugin_ then\n\t\t\tclrLayer:resetCascadeBoundingBox()\n\t\tend\n\t\tclrLayer:setTouchEnabled(false)\n\t\tclrLayer:setColor(cc.c3b(options.bgColorR, options.bgColorG, options.bgColorB))\n\telseif 2 == options.colorType then\n\t\t-- gradient\n\t\tclrLayer = cc.LayerGradient:create()\n\t\tif not cc.bPlugin_ then\n\t\t\tclrLayer:resetCascadeBoundingBox()\n\t\tend\n\t\tclrLayer:setTouchEnabled(false)\n\t\tclrLayer:setStartColor(cc.c3b(options.bgStartColorR, options.bgStartColorG, options.bgStartColorB))\n\t\tclrLayer:setEndColor(cc.c3b(options.bgEndColorR, options.bgEndColorG, options.bgEndColorB))\n\t\tclrLayer:setVector(cc.p(options.vectorX or 0, options.vectorY or -0.5))\n\tend\n\n\tif clrLayer then\n\t\tclrLayer:setAnchorPoint(cc.p(0, 0))\n\t\tclrLayer:setOpacity(options.bgColorOpacity or 100)\n\tend\n\n\t-- background layer\n\tif options.backGroundScale9Enable then\n\t\tif options.backGroundImageData and options.backGroundImageData.path then\n\t\t\tlocal capInsets = cc.rect(options.capInsetsX, options.capInsetsY,\n\t\t\t\t\t\toptions.capInsetsWidth, options.capInsetsHeight)\n\t\t\tlocal scale9sp = ccui.Scale9Sprite or cc.Scale9Sprite\n\t\t\tif self.bUseTexture then\n\t\t\t\tbgLayer = scale9sp:createWithSpriteFrameName(\n\t\t\t\t\toptions.backGroundImageData.path, capInsets)\n\t\t\t\tbgLayer:setContentSize(cc.size(options.width, options.height))\n\t\t\telse\n\t\t\t\tbgLayer = scale9sp:create(\n\t\t\t\t\tcapInsets, options.backGroundImageData.path)\n\t\t\t\tbgLayer:setContentSize(cc.size(options.width, options.height))\n\t\t\tend\n\t\tend\n\telse\n\t\tif options.backGroundImageData and options.backGroundImageData.path then\n\t\t\tbgLayer = display.newSprite(\n\t\t\t\tself:transResName(options.backGroundImageData))\n\t\tend\n\tend\n\n\tlocal conSize\n\tif options.adaptScreen then\n\t\toptions.width = display.width\n\t\toptions.height = display.height\n\tend\n\tconSize = cc.size(options.width, options.height)\n\n\tif options.clipAble then\n\t\tnode:setClippingRegion(cc.rect(0, 0, options.width, options.height))\n\tend\n\tif not options.ignoreSize then\n\t\tif clrLayer then\n\t\t\tclrLayer:setContentSize(conSize)\n\t\tend\n\tend\n\tif bgLayer then\n\t\tbgLayer:setPosition(conSize.width/2, conSize.height/2)\n\tend\n\tnode:setContentSize(conSize)\n\tif clrLayer then\n\t\tnode:addChild(clrLayer)\n\tend\n\tif bgLayer then\n\t\tnode:addChild(bgLayer)\n\tend\n\tnode:setPositionX(options.x or 0)\n\tnode:setPositionY(options.y or 0)\n\tnode:setAnchorPoint(\n\t\tcc.p(options.anchorPointX or 0.5, options.anchorPointY or 0.5))\n\n\t-- local setVisibleOrg = node.setVisible\n\t-- local setVisibleAll\n\t-- setVisibleAll = function(self, bVisible)\n\t-- \tif not self then\n\t-- \t\treturn\n\t-- \tend\n\n\t-- \tprint(\"setvisible:\" .. tostring(bVisible))\n\n\t-- \tsetVisibleOrg(self, bVisible)\n\t-- \tlocal children = self:getChildren()\n\t-- \tif not children then\n\t-- \t\treturn\n\t-- \tend\n\t-- \tfor i,v in ipairs(children) do\n\t-- \t\tsetVisibleAll(v, bVisible)\n\t-- \tend\n\t-- end\n\t-- node.setVisible = setVisibleAll\n\n\treturn node\nend\n\nfunction CCSUILoader:createScrollView(options)\n\tlocal params =\n\t\t{viewRect = cc.rect(options.x, options.y, options.width, options.height)}\n\n\tif 1 == options.colorType then\n\t\t-- single color\n\t\tparams.bgColor = cc.c4b(options.bgColorR, options.bgColorG, options.bgColorB, options.bgColorOpacity)\n\telseif 2 == options.colorType then\n\t\t-- gradient\n\t\tparams.bgStartColor = cc.c4b(options.bgStartColorR, options.bgStartColorG, options.bgStartColorB, options.bgColorOpacity)\n\t\tparams.bgEndColor = cc.c4b(options.bgEndColorR, options.bgEndColorG, options.bgEndColorB, options.bgColorOpacity)\n\t\tparams.bgVector = cc.p(options.vectorX, options.vectorY)\n\tend\n\tparams.bg = self:transResName(options.backGroundImageData)\n\tif options.backGroundScale9Enable then\n\t\tparams.bgScale9 = options.backGroundScale9Enable\n\t\tparams.capInsets = cc.rect(options.capInsetsX, options.capInsetsY,\n\t\t\toptions.capInsetsWidth, options.capInsetsHeight)\n\tend\n\n\tlocal node = cc.ui.UIScrollView.new(params)\n\tlocal dir = options.direction\n\t-- ccs中 0:none 1:vertical 2:horizontal 3:vertical and horizontal\n\t-- quick 0:both 1:vertical 2:horizontal\n\tif 0 == dir then\n\t\t-- 让ccs中的none对应到vertical\n\t\tdir = 0\n\telseif 3 == dir then\n\t\tdir = 0\n\tend\n\tnode:setDirection(dir)\n\tnode:setBounceable(options.bounceEnable or false)\n\n\treturn node\nend\n\nfunction CCSUILoader:createListView(options)\n\tlocal params =\n\t\t{viewRect = cc.rect(options.x, options.y, options.width, options.height)}\n\n\tif 1 == options.colorType then\n\t\t-- single color\n\t\tparams.bgColor = cc.c4b(options.bgColorR, options.bgColorG, options.bgColorB, options.bgColorOpacity)\n\telseif 2 == options.colorType then\n\t\t-- gradient\n\t\tparams.bgStartColor = cc.c4b(options.bgStartColorR, options.bgStartColorG, options.bgStartColorB, options.bgColorOpacity)\n\t\tparams.bgEndColor = cc.c4b(options.bgEndColorR, options.bgEndColorG, options.bgEndColorB, options.bgColorOpacity)\n\t\tparams.bgVector = cc.p(options.vectorX, options.vectorY)\n\tend\n\n\tlocal node = cc.ui.UIListView.new(params)\n\tlocal dir = options.direction or 1\n\t-- ccs listView 0:none 1:vertical 2:horizontal 3:vertical and horizontal\n\t-- quick 0:both 1:vertical 2:horizontal\n\tif 0 == dir then\n\t\t-- 让ccs中的none对应到vertical\n\t\tdir = 1\n\telseif 3 == dir then\n\t\tdir = 0\n\tend\n\tnode:setDirection(dir)\n\tnode:setAlignment(options.gravity)\n\tnode:setBounceable(options.bounceEnable or false)\n\n\treturn node\nend\n\nfunction CCSUILoader:createPageView(options)\n\tlocal params = {}\n\tparams.column = 1\n\tparams.row = 1\n\tparams.viewRect = cc.rect(options.x, options.y, options.width, options.height)\n\n\tlocal node = cc.ui.UIPageView.new(params)\n\n\treturn node\nend\n\nfunction CCSUILoader:prettyJson(json)\n\tlocal prettyNode\n\tprettyNode = function(node, parent)\n\t\tif not node then\n\t\t\treturn\n\t\tend\n\n\t\tlocal options = node.options\n\t\tlocal parentOption = parent and parent.options\n\n\t\t-- 调整百分比的子节点宽高\n\t\tif options.adaptScreen then\n\t\t\toptions.width = display.width\n\t\t\toptions.height = display.height\n\t\telseif 1 == options.sizeType then\n\t\t\tif parentOption then\n\t\t\t\toptions.width = parentOption.width * options.sizePercentX\n \t\t\t\toptions.height = parentOption.height * options.sizePercentY\n\t\t\tend\n\t\tend\n\n\t\t-- 调整九宫格的子节点的zorder\n\t\tif parentOption and parentOption.scale9Enable then\n        \tnode.options.ZOrder = node.options.ZOrder or 0 + 3\n\t\tend\n\n\t\tif not node.children then\n\t\t\treturn\n\t\tend\n\t\tif 0 == #node.children then\n\t\t\treturn\n\t\tend\n\n\t\tfor i,v in ipairs(node.children) do\n\t\t\tprettyNode(v, node)\n\t\tend\n\tend\n\n\tprettyNode(json)\nend\n\nfunction CCSUILoader:modifyPanelChildPos_(clsType, bAdaptScreen, sizeType, parentSize, children)\n\tif \"Panel\" ~= clsType\n\t\tor (not bAdaptScreen and sizeType == 0)\n\t\tor not children then\n\t\treturn\n\tend\n\n\tself:modifyLayoutChildPos_(parentSize, children)\nend\n\nfunction CCSUILoader:modifyLayoutChildPos_(parentSize, children)\n\tfor _,v in ipairs(children) do\n\t\tself:calcChildPosByName_(children, v.options.name, parentSize)\n\tend\nend\n\nfunction CCSUILoader:calcChildPosByName_(children, name, parentSize)\n\tlocal child = self:getPanelChild_(children, name)\n\tif not child then\n\t\treturn\n\tend\n\tif child.posFixed_ then\n\t\treturn\n\tend\n\n\tlocal layoutParameter\n\tlocal options = child.options\n\tlocal x, y\n\tlocal bUseOrigin = false\n\tlocal width = options.width\n\tlocal height = options.height\n\n\tlayoutParameter = options.layoutParameter\n\n\tif not layoutParameter then\n\t\treturn\n\tend\n\n\tif 1 == layoutParameter.type then\n\t\tif 1 == layoutParameter.gravity then\n\t\t\t-- left\n\t\t\tx = width * 0.5\n\t\telseif 2 == layoutParameter.gravity then\n\t\t\t-- top\n\t\t\ty = parentSize.height - height * 0.5\n\t\telseif 3 == layoutParameter.gravity then\n\t\t\t-- right\n\t\t\tx = parentSize.width - width * 0.5\n\t\telseif 4 == layoutParameter.gravity then\n\t\t\t-- bottom\n\t\t\ty = height * 0.5\n\t\telseif 5 == layoutParameter.gravity then\n\t\t\t-- center vertical\n\t\t\ty = parentSize.height * 0.5\n\t\telseif 6 == layoutParameter.gravity then\n\t\t\t-- center horizontal\n\t\t\tx = parentSize.width * 0.5\n\t\telse\n\t\t\t-- use origin pos\n\t\t\tx = options.x\n\t\t\ty = options.y\n\t\t\tbUseOrigin = true\n\t\t\tprint(\"CCSUILoader - modifyLayoutChildPos_ not support gravity:\" .. layoutParameter.type)\n\t\tend\n\n\t\tif 1 == layoutParameter.gravity\n\t\t\tor 3 == layoutParameter.gravity\n\t\t\tor 6 == layoutParameter.gravity then\n\t\t\tx = ((options.anchorPointX or 0.5) - 0.5)*width + x\n\t\t\ty = options.y\n\t\telse\n\t\t\tx = options.x\n\t\t\ty = ((options.anchorPointY or 0.5) - 0.5)*height + y\n\t\tend\n\telseif 2 == layoutParameter.type then\n\t\tlocal relativeChild = self:getPanelChild_(children, layoutParameter.relativeToName)\n\t\tlocal relativeRect\n\t\tif relativeChild then\n\t\t\tself:calcChildPosByName_(children, layoutParameter.relativeToName, parentSize)\n\t\t\trelativeRect = cc.rect(\n\t\t\t\t(relativeChild.options.x - (relativeChild.options.anchorPointX or 0.5) * relativeChild.options.width) or 0,\n\t\t\t\t(relativeChild.options.y - (relativeChild.options.anchorPointY or 0.5) * relativeChild.options.height) or 0,\n\t\t\t\trelativeChild.options.width or 0,\n\t\t\t\trelativeChild.options.height or 0)\n\t\tend\n\n\t\t-- calc pos on center anchor point (0.5, 0.5)\n\t\tif 1 == layoutParameter.align then\n\t\t\t-- top left\n\t\t\tx = width * 0.5\n\t\t\ty = parentSize.height - height * 0.5\n\n\t\t\tx = x + (layoutParameter.marginLeft or 0)\n\t\t\ty = y - (layoutParameter.marginTop or 0)\n\t\telseif 2 == layoutParameter.align then\n\t\t\t-- top center\n\t\t\tx = parentSize.width * 0.5\n\t\t\ty = parentSize.height - height * 0.5\n\n\t\t\ty = y - (layoutParameter.marginTop or 0)\n\t\telseif 3 == layoutParameter.align then\n\t\t\t-- top right\n\t\t\tx = parentSize.width - width * 0.5\n\t\t\ty = parentSize.height - height * 0.5\n\n\t\t\tx = x - (layoutParameter.marginRight or 0)\n\t\t\ty = y - (layoutParameter.marginTop or 0)\n\t\telseif 4 == layoutParameter.align then\n\t\t\t-- left center\n\t\t\tx = width * 0.5\n\t\t\ty = parentSize.height*0.5\n\n\t\t\tx = x + (layoutParameter.marginLeft or 0)\n\t\telseif 5 == layoutParameter.align then\n\t\t\t-- center\n\t\t\tx = parentSize.width * 0.5\n\t\t\ty = parentSize.height*0.5\n\t\telseif 6 == layoutParameter.align then\n\t\t\t-- right center\n\t\t\tx = parentSize.width - width * 0.5\n\t\t\ty = parentSize.height*0.5\n\n\t\t\tx = x - (layoutParameter.marginRight or 0)\n\t\telseif 7 == layoutParameter.align then\n\t\t\t-- left bottom\n\t\t\tx = width * 0.5\n\t\t\ty = height * 0.5\n\n\t\t\tx = x + (layoutParameter.marginLeft or 0)\n\t\t\ty = y + (layoutParameter.marginDown or 0)\n\t\telseif 8 == layoutParameter.align then\n\t\t\t-- bottom center\n\t\t\tx = parentSize.width * 0.5\n\t\t\ty = height * 0.5\n\n\t\t\ty = y + (layoutParameter.marginDown or 0)\n\t\telseif 9 == layoutParameter.align then\n\t\t\t-- right bottom\n\t\t\tx = parentSize.width - width * 0.5\n\t\t\ty = height * 0.5\n\n\t\t\tx = x - (layoutParameter.marginRight or 0)\n\t\t\ty = y + (layoutParameter.marginDown or 0)\n\t\telseif 10 == layoutParameter.align then\n\t\t\t-- location above left\n\t\t\tx = relativeRect.x + width * 0.5\n\t\t\ty = relativeRect.y + relativeRect.height + height * 0.5\n\n\t\t\tx = x + (layoutParameter.marginLeft or 0)\n\t\t\ty = y + (layoutParameter.marginDown or 0)\n\t\telseif 11 == layoutParameter.align then\n\t\t\t-- location above center\n\t\t\tx = relativeRect.x + relativeRect.width * 0.5\n\t\t\ty = relativeRect.y + relativeRect.height + height * 0.5\n\n\t\t\ty = y + (layoutParameter.marginDown or 0)\n\t\telseif 12 == layoutParameter.align then\n\t\t\t-- location above right\n\t\t\tx = relativeRect.x + relativeRect.width - width * 0.5\n\t\t\ty = relativeRect.y + relativeRect.height + height * 0.5\n\n\t\t\tx = x - (layoutParameter.marginRight or 0)\n\t\t\ty = y + (layoutParameter.marginDown or 0)\n\t\telseif 13 == layoutParameter.align then\n\t\t\t-- location left top\n\t\t\tx = relativeRect.x - width * 0.5\n\t\t\ty = relativeRect.y + relativeRect.height - height * 0.5\n\n\t\t\tx = x - (layoutParameter.marginRight or 0)\n\t\t\ty = y - (layoutParameter.marginTop or 0)\n\t\telseif 14 == layoutParameter.align then\n\t\t\t-- location left center\n\t\t\tx = relativeRect.x - width * 0.5\n\t\t\ty = relativeRect.y + relativeRect.height * 0.5\n\n\t\t\tx = x - (layoutParameter.marginRight or 0)\n\t\telseif 15 == layoutParameter.align then\n\t\t\t-- location left bottom\n\t\t\tx = relativeRect.x - width * 0.5\n\t\t\ty = relativeRect.y + height * 0.5\n\n\t\t\tx = x - (layoutParameter.marginRight or 0)\n\t\t\ty = y + (layoutParameter.marginDown or 0)\n\t\telseif 16 == layoutParameter.align then\n\t\t\t-- location right top\n\t\t\tx = relativeRect.x + relativeRect.width + width * 0.5\n\t\t\ty = relativeRect.y + relativeRect.height - height * 0.5\n\n\t\t\tx = x + (layoutParameter.marginLeft or 0)\n\t\t\ty = y - (layoutParameter.marginTop or 0)\n\t\telseif 17 == layoutParameter.align then\n\t\t\t-- location right center\n\t\t\tx = relativeRect.x + relativeRect.width + width * 0.5\n\t\t\ty = relativeRect.y + relativeRect.height * 0.5\n\n\t\t\tx = x + (layoutParameter.marginLeft or 0)\n\t\telseif 18 == layoutParameter.align then\n\t\t\t-- location right bottom\n\t\t\tx = relativeRect.x + relativeRect.width + width * 0.5\n\t\t\ty = relativeRect.y + height * 0.5\n\n\t\t\tx = x + (layoutParameter.marginLeft or 0)\n\t\t\ty = y + (layoutParameter.marginDown or 0)\n\t\telseif 19 == layoutParameter.align then\n\t\t\t-- location below left\n\t\t\tx = relativeRect.x + width * 0.5\n\t\t\ty = relativeRect.y - height * 0.5\n\n\t\t\tx = x + (layoutParameter.marginLeft or 0)\n\t\t\ty = y - (layoutParameter.marginTop or 0)\n\t\telseif 20 == layoutParameter.align then\n\t\t\t-- location below center\n\t\t\tx = relativeRect.x + relativeRect.width * 0.5\n\t\t\ty = relativeRect.y - height * 0.5\n\n\t\t\ty = y - (layoutParameter.marginTop or 0)\n\t\telseif 21 == layoutParameter.align then\n\t\t\t-- location below right\n\t\t\tx = relativeRect.x + relativeRect.width - width * 0.5\n\t\t\ty = relativeRect.y - height * 0.5\n\n\t\t\tx = x - (layoutParameter.marginRight or 0)\n\t\t\ty = y - (layoutParameter.marginTop or 0)\n\t\telse\n\t\t\t-- use origin pos\n\t\t\tx = options.x\n\t\t\ty = options.y\n\t\t\tbUseOrigin = true\n\t\t\tprint(\"CCSUILoader - modifyLayoutChildPos_ not support align:\" .. layoutParameter.align)\n\t\tend\n\n\t\t-- change pos on real anchor point\n\t\tx = ((options.anchorPointX or 0.5) - 0.5)*width + x\n\t\ty = ((options.anchorPointY or 0.5) - 0.5)*height + y\n\telseif 0 == layoutParameter.type then\n\t\tx = options.x\n\t\ty = options.y\n\telse\n\t\tprint(\"CCSUILoader - modifyLayoutChildPos_ not support type:\" .. layoutParameter.type)\n\tend\n\toptions.x = x\n\toptions.y = y\n\n\tchild.posFixed_ = true\n\nend\n\nfunction CCSUILoader:getPanelChild_(children, name)\n\tfor _, v in ipairs(children) do\n\t\tif v.options.name == name then\n\t\t\treturn v\n\t\tend\n\tend\n\n\treturn\nend\n\n\nreturn CCSUILoader\n"
  },
  {
    "path": "源代码/mir9/src/framework/cc/uiloader/UILoaderUtilitys.lua",
    "content": "\nlocal UILoaderUtilitys = {}\n\nfunction UILoaderUtilitys.loadTexture(plist, png)\n\tif UILoaderUtilitys.isNil(plist) then\n\t\treturn\n\tend\n\n\tlocal fileUtil\n\tfileUtil = cc.FileUtils:getInstance()\n\tlocal fullPath = fileUtil:fullPathForFilename(plist)\n\tlocal fullPng = fileUtil:fullPathForFilename(png)\n\t-- UILoaderUtilitys.addSearchPathIf(io.pathinfo(fullPath).dirname, fileUtil)\n\tlocal spCache\n\tspCache = cc.SpriteFrameCache:getInstance()\n\t-- print(\"UILoaderUtilitys - loadTexture plist:\" .. plist)\n\tif png then\n\t\tspCache:addSpriteFrames(fullPath, fullPng)\n\telse\n\t\tspCache:addSpriteFrames(fullPath)\n\tend\nend\n\nfunction UILoaderUtilitys.isNil(str)\n\tif not str or 0 == string.utf8len(str) then\n\t\treturn true\n\telse\n\t\treturn false\n\tend\nend\n\nfunction UILoaderUtilitys.addSearchPathIf(dir, fileUtil)\n\tif not UILoaderUtilitys.searchDirs then\n\t\tUILoaderUtilitys.searchDirs = {}\n\tend\n\n\tif not UILoaderUtilitys.isSearchExist(dir) then\n\t\ttable.insert(UILoaderUtilitys.searchDirs, dir)\n\t\tif not fileUtil then\n\t\t\tfileUtil = cc.FileUtils:getInstance()\n\t\tend\n\t\tfileUtil:addSearchPath(dir)\n\tend\nend\n\nfunction UILoaderUtilitys.isSearchExist(dir)\n\tlocal bExist = false\n\tfor i,v in ipairs(UILoaderUtilitys.searchDirs) do\n\t\tif v == dir then\n\t\t\tbExist = true\n\t\t\tbreak\n\t\tend\n\tend\n\n\treturn bExist\nend\n\nfunction UILoaderUtilitys.clearPath(fileUtil)\n\tif not UILoaderUtilitys.searchDirs then\n\t\treturn\n\tend\n\n\tfileUtil = fileUtil or cc.FileUtils:getInstance()\n\tlocal paths = fileUtil:getSearchPaths()\n\tlocal removeIdxTabel\n\n\tlocal luaSearchCount = #UILoaderUtilitys.searchDirs\n\n\tfor i=luaSearchCount, 1, -1 do\n\t\tfor key, path in ipairs(paths) do\n\t\t\tif path == UILoaderUtilitys.searchDirs[i] then\n\t\t\t\ttable.remove(paths, key)\n\t\t\t\tbreak\n\t\t\tend\n\t\tend\n\t\ttable.remove(UILoaderUtilitys.searchDirs, i)\n\tend\n\n\tpaths = table.unique(paths, true)\n\n\tfileUtil:setSearchPaths(paths)\nend\n\nfunction UILoaderUtilitys.getFileFullName(filename)\n\tlocal fileUtil = fileUtil or cc.FileUtils:getInstance()\n\n\treturn fileUtil:fullPathForFilename(filename)\nend\n\nreturn UILoaderUtilitys\n\n"
  },
  {
    "path": "源代码/mir9/src/framework/cc/uiloader/init.lua",
    "content": "\nreturn import(\".uiloader\").new()\n\n"
  },
  {
    "path": "源代码/mir9/src/framework/cc/uiloader/uiloader.lua",
    "content": "\n--[[\n\nCopyright (c) 2011-2014 chukong-inc.com\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in\nall copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\nTHE SOFTWARE.\n\n]]\n\n--------------------------------\n-- @module uiloader\n\n--[[--\n\n初始化 cc.uiloader,并提供对外统一接口\n\ncc.uiloader 可以将CCS导出的json文件用quick的纯lua控件构建出UI布局\n\n]]\n\nlocal UILoaderUtilitys = import(\".UILoaderUtilitys\")\nlocal uiloader = class(\"uiloader\")\nlocal CCSUILoader = import(\".CCSUILoader\")\nlocal CCSSceneLoader = import(\".CCSSceneLoader\")\n\n-- start --\n\n--------------------------------\n-- 初始化 cc.uiloader,并提供对外统一接口\n-- @function [parent=#uiloader] new\n\n-- end --\n\nfunction uiloader:ctor()\nend\n\n-- start --\n\n--------------------------------\n-- 解析json文件\n-- @function [parent=#uiloader] load\n-- @param string jsonFile 要解析的json文件\n-- @param table params 解析参数\n-- @return node#node  解析后的布局\n\n-- end --\n\nfunction uiloader:load(jsonFile, params)\n\tlocal json\n\tif not params or not params.bJsonStruct then\n\t\tlocal pathInfo = io.pathinfo(jsonFile)\n\t\tif \".csb\" == pathInfo.extname then\n\t\t\treturn cc.CSLoader:getInstance():createNodeWithFlatBuffersFile(jsonFile)\n\t\telse\n\t\t\tjson = self:loadFile_(jsonFile)\n\t\tend\n\telse\n\t\tjson = jsonFile\n\tend\n\tif not json then\n\t\tprint(\"uiloader - load file fail:\" .. jsonFile)\n\t\treturn\n\tend\n\n\tlocal node\n\n\tif self:isScene_(json) then\n\t\tnode, w, h = CCSSceneLoader:load(json, params)\n\telse\n\t\tnode, w, h = CCSUILoader:load(json, params)\n\tend\n\n\tUILoaderUtilitys.clearPath()\n\n\treturn node, w, h\nend\n\n-- start --\n\n--------------------------------\n-- 按tag查找布局中的结点\n-- @function [parent=#uiloader] seekNodeByTag\n-- @param node parent 要查找布局的结点\n-- @param number tag 要查找的tag\n-- @return node#node \n\n-- end --\n\nfunction uiloader:seekNodeByTag(parent, tag)\n\tif not parent then\n\t\treturn\n\tend\n\n\tif tag == parent:getTag() then\n\t\treturn parent\n\tend\n\n\tlocal findNode\n\tlocal children = parent:getChildren()\n\tlocal childCount = parent:getChildrenCount()\n\tif childCount < 1 then\n\t\treturn\n\tend\n\tfor i=1, childCount do\n\t\tif \"table\" == type(children) then\n\t\t\tparent = children[i]\n\t\telseif \"userdata\" == type(children) then\n\t\t\tparent = children:objectAtIndex(i - 1)\n\t\tend\n\n\t\tif parent then\n\t\t\tfindNode = self:seekNodeByTag(parent, tag)\n\t\t\tif findNode then\n\t\t\t\treturn findNode\n\t\t\tend\n\t\tend\n\tend\n\n\treturn\nend\n\n-- start --\n\n--------------------------------\n-- 按name查找布局中的结点\n-- @function [parent=#uiloader] seekNodeByName\n-- @param node parent 要查找布局的结点\n-- @param string name 要查找的name\n-- @return node#node \n\n-- end --\n\nfunction uiloader:seekNodeByName(parent, name)\n\tif not parent then\n\t\treturn\n\tend\n\n\tif name == parent.name then\n\t\treturn parent\n\tend\n\n\tlocal findNode\n\tlocal children = parent:getChildren()\n\tlocal childCount = parent:getChildrenCount()\n\tif childCount < 1 then\n\t\treturn\n\tend\n\tfor i=1, childCount do\n\t\tif \"table\" == type(children) then\n\t\t\tparent = children[i]\n\t\telseif \"userdata\" == type(children) then\n\t\t\tparent = children:objectAtIndex(i - 1)\n\t\tend\n\n\t\tif parent then\n\t\t\tif name == parent.name then\n\t\t\t\treturn parent\n\t\t\tend\n\t\tend\n\tend\n\n\tfor i=1, childCount do\n\t\tif \"table\" == type(children) then\n\t\t\tparent = children[i]\n\t\telseif \"userdata\" == type(children) then\n\t\t\tparent = children:objectAtIndex(i - 1)\n\t\tend\n\n\t\tif parent then\n\t\t\tfindNode = self:seekNodeByName(parent, name)\n\t\t\tif findNode then\n\t\t\t\treturn findNode\n\t\t\tend\n\t\tend\n\tend\n\n\treturn\nend\n\n-- start --\n\n--------------------------------\n-- 按name查找布局中的结点\n-- 与seekNodeByName不同之处在于它是通过node的下子结点表来查询,效率更快\n-- @function [parent=#uiloader] seekNodeByNameFast\n-- @param node parent 要查找布局的结点\n-- @param string name 要查找的name\n-- @return node#node \n\n-- end --\n\nfunction uiloader:seekNodeByNameFast(parent, name)\n\tif not parent then\n\t\treturn\n\tend\n\n\tif not parent.subChildren then\n\t\treturn\n\tend\n\n\tif name == parent.name then\n\t\treturn parent\n\tend\n\n\tlocal findNode = parent.subChildren[name]\n\tif findNode then\n\t\t-- find\n\t\treturn findNode\n\tend\n\n\tfor i,v in ipairs(parent.subChildren) do\n\t\tfindNode = self:seekNodeByName(v, name)\n\t\tif findNode then\n\t\t\treturn findNode\n\t\tend\n\tend\n\n\treturn\nend\n\n-- start --\n\n--------------------------------\n-- 根据路径来查找布局中的结点\n-- @function [parent=#uiloader] seekNodeByPath\n-- @param node parent 要查找布局的结点\n-- @param string path 要查找的path\n-- @return node#node \n\n-- end --\n\nfunction uiloader:seekNodeByPath(parent, path)\n\tif not parent then\n\t\treturn\n\tend\n\n\tlocal names = string.split(path, '/')\n\n\tfor i,v in ipairs(names) do\n\t\tparent = self:seekNodeByNameFast(parent, v)\n\t\tif not parent then\n\t\t\treturn\n\t\tend\n\tend\n\n\treturn parent\nend\n\n-- start --\n\n--------------------------------\n-- 查找布局中的组件结点\n-- @function [parent=#uiloader] seekComponents\n-- @param node parent 要查找布局的结点\n-- @param string nodeName 要查找的name\n-- @param number componentIdx 在查找组件在它的直接父结点的位置\n-- @return node#node \n\n\n--[[--\n\n查找布局中的组件结点\n\n~~~ lua\n\n-- \"hero\" 是结点名称\n-- 1 是 \"hero\"这个结点下的第一个组件\nlocal hero = cc.uiloader:seekComponents(parentNode, \"hero\", 1)\n\n~~~\n\n]]\n-- end --\n\nfunction uiloader:seekComponents(parent, nodeName, componentIdx)\n\tlocal node = self:seekNodeByName(parent, nodeName)\n\tif not node then\n\t\treturn\n\tend\n\tnode = self:seekNodeByName(node, \"Component\" .. componentIdx)\n\treturn node\nend\n\n\n\n\n\n\n-- private\nfunction uiloader:loadFile_(jsonFile)\n\tlocal fileUtil = cc.FileUtils:getInstance()\n\tlocal fullPath = fileUtil:fullPathForFilename(jsonFile)\n\n\tlocal pathinfo  = io.pathinfo(fullPath)\n\tUILoaderUtilitys.addSearchPathIf(pathinfo.dirname)\n\n\tlocal jsonStr = fileUtil:getStringFromFile(fullPath)\n\tlocal jsonVal = json.decode(jsonStr)\n\n\treturn jsonVal\nend\n\nfunction uiloader:isScene_(json)\n\tif json.components then\n\t\treturn true\n\telse\n\t\treturn false\n\tend\nend\n\nreturn uiloader\n"
  },
  {
    "path": "源代码/mir9/src/framework/cc/utils/ByteArray.lua",
    "content": "--[[\nSerialzation bytes stream like ActionScript flash.utils.ByteArray.\nIt depends on lpack.\nA sample: https://github.com/zrong/lua#ByteArray\n\n@see http://underpop.free.fr/l/lua/lpack/\n@see http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/flash/utils/ByteArray.html\n@author zrong(zengrong.net)\n\nCreation 2013-11-14\nLast Modification 2014-07-09\n]]\nlocal ByteArray = class(\"ByteArray\")\n\nByteArray.ENDIAN_LITTLE = \"ENDIAN_LITTLE\"\nByteArray.ENDIAN_BIG = \"ENDIAN_BIG\"\nByteArray.radix = {[10]=\"%03u\",[8]=\"%03o\",[16]=\"%02X\"}\n\nrequire(\"pack\")\n\n--- Return a string to display.\n-- If self is ByteArray, read string from self.\n-- Else, treat self as byte string.\n-- @param __radix radix of display, value is 8, 10 or 16, default is 10.\n-- @param __separator default is \" \".\n-- @return string, number\nfunction ByteArray.toString(self, __radix, __separator)\n\t__radix = __radix or 16 \n\t__radix = ByteArray.radix[__radix] or \"%02X\"\n\t__separator = __separator or \" \"\n\tlocal __fmt = __radix..__separator\n\tlocal __format = function(__s)\n\t\treturn string.format(__fmt, string.byte(__s))\n\tend\n\tif type(self) == \"string\" then\n\t\treturn string.gsub(self, \"(.)\", __format)\n\tend\n\tlocal __bytes = {}\n\tfor i=1,#self._buf do\n\t\t__bytes[i] = __format(self._buf[i])\n\tend\n\treturn table.concat(__bytes) ,#__bytes\nend\n\nfunction ByteArray:ctor(__endian)\n\tself._endian = __endian\n\tself._buf = {}\n\tself._pos = 1\nend\n\nfunction ByteArray:getLen()\n\treturn #self._buf\nend\n\nfunction ByteArray:getAvailable()\n\treturn #self._buf - self._pos + 1\nend\n\nfunction ByteArray:getPos()\n\treturn self._pos\nend\n\nfunction ByteArray:setPos(__pos)\n\tself._pos = __pos\n\treturn self\nend\n\nfunction ByteArray:getEndian()\n\treturn self._endian\nend\n\nfunction ByteArray:setEndian(__endian)\n\tself._endian = __endian\nend\n\n--- Get all byte array as a lua string.\n-- Do not update position.\nfunction ByteArray:getBytes(__offset, __length)\n\t__offset = __offset or 1\n\t__length = __length or #self._buf\n\t--printf(\"getBytes,offset:%u, length:%u\", __offset, __length)\n\treturn table.concat(self._buf, \"\", __offset, __length)\nend\n\n--- Get pack style string by lpack.\n-- The result use ByteArray.getBytes to get is unavailable for lua socket.\n-- E.g. the #self:_buf is 18, but #ByteArray.getBytes is 63.\n-- I think the cause is the table.concat treat every item in ByteArray._buf as a general string, not a char.\n-- So, I use lpack repackage the ByteArray._buf, theretofore, I must convert them to a byte number.\nfunction ByteArray:getPack(__offset, __length)\n\t__offset = __offset or 1\n\t__length = __length or #self._buf\n\tlocal __t = {}\n\tfor i=__offset,__length do\n\t\t__t[#__t+1] = string.byte(self._buf[i])\n\tend\n\tlocal __fmt = self:_getLC(\"b\"..#__t)\n\t--print(\"fmt:\", __fmt)\n\tlocal __s = string.pack(__fmt, unpack(__t))\n\treturn __s\nend\n\n--- rawUnPack perform like lpack.pack, but return the ByteArray.\nfunction ByteArray:rawPack(__fmt, ...)\n\tlocal __s = string.pack(__fmt, ...)\n\tself:writeBuf(__s)\n\treturn self\nend\n\n--- rawUnPack perform like lpack.unpack, but it is only support FORMAT parameter.\n-- Because ByteArray include a position itself, so we haven't to save another.\nfunction ByteArray:rawUnPack(__fmt)\n\t-- read all of bytes.\n\tlocal __s = self:getBytes(self._pos)\n\tlocal __next, __val = string.unpack(__s, __fmt)\n\t-- update position of the ByteArray\n\tself._pos = self._pos + __next\n\t-- Alternate value and next\n\treturn __val, __next\nend\n\nfunction ByteArray:readBool()\n\t-- When char > 256, the readByte method will show an error.\n\t-- So, we have to use readChar\n\treturn self:readChar() ~= 0\nend\n\nfunction ByteArray:writeBool(__bool)\n\tif __bool then \n\t\tself:writeByte(1)\n\telse\n\t\tself:writeByte(0)\n\tend\n\treturn self\nend\n\nfunction ByteArray:readDouble()\n\tlocal __, __v = string.unpack(self:readBuf(8), self:_getLC(\"d\"))\n\treturn __v\nend\n\nfunction ByteArray:writeDouble(__double)\n\tlocal __s = string.pack( self:_getLC(\"d\"), __double)\n\tself:writeBuf(__s)\n\treturn self\nend\n\nfunction ByteArray:readFloat()\n\tlocal __, __v = string.unpack(self:readBuf(4), self:_getLC(\"f\"))\n\treturn __v\nend\n\nfunction ByteArray:writeFloat(__float)\n\tlocal __s = string.pack( self:_getLC(\"f\"),  __float)\n\tself:writeBuf(__s)\n\treturn self\nend\n\nfunction ByteArray:readInt()\n\tlocal __, __v = string.unpack(self:readBuf(4), self:_getLC(\"i\"))\n\treturn __v\nend\n\nfunction ByteArray:writeInt(__int)\n\tlocal __s = string.pack( self:_getLC(\"i\"),  __int)\n\tself:writeBuf(__s)\n\treturn self\nend\n\nfunction ByteArray:readUInt()\n\tlocal __, __v = string.unpack(self:readBuf(4), self:_getLC(\"I\"))\n\treturn __v\nend\n\nfunction ByteArray:writeUInt(__uint)\n\tlocal __s = string.pack(self:_getLC(\"I\"), __uint)\n\tself:writeBuf(__s)\n\treturn self\nend\n\nfunction ByteArray:readShort()\n\tlocal __, __v = string.unpack(self:readBuf(2), self:_getLC(\"h\"))\n\treturn __v\nend\n\nfunction ByteArray:writeShort(__short)\n\tlocal __s = string.pack( self:_getLC(\"h\"),  __short)\n\tself:writeBuf(__s)\n\treturn self\nend\n\nfunction ByteArray:readUShort()\n\tlocal __, __v = string.unpack(self:readBuf(2), self:_getLC(\"H\"))\n\treturn __v\nend\n\nfunction ByteArray:writeUShort(__ushort)\n\tlocal __s = string.pack(self:_getLC(\"H\"),  __ushort)\n\tself:writeBuf(__s)\n\treturn self\nend\n\n--[[\n-- 2014-07-09 Remove all of methods about Long in ByteArray.\n-- @see http://zengrong.net/post/2134.htm\nfunction ByteArray:readLong()\n\tlocal __, __v = string.unpack(self:readBuf(8), self:_getLC(\"l\"))\n\treturn __v\nend\n\nfunction ByteArray:writeLong(__long)\n\tlocal __s = string.pack( self:_getLC(\"l\"),  __long)\n\tself:writeBuf(__s)\n\treturn self\nend\n\nfunction ByteArray:readULong()\n\tlocal __, __v = string.unpack(self:readBuf(4), self:_getLC(\"L\"))\n\treturn __v\nend\n\n\nfunction ByteArray:writeULong(__ulong)\n\tlocal __s = string.pack( self:_getLC(\"L\"), __ulong)\n\tself:writeBuf(__s)\n\treturn self\nend\n]]\n\nfunction ByteArray:readUByte()\n\tlocal __, __val = string.unpack(self:readRawByte(), \"b\")\n\treturn __val\nend\n\nfunction ByteArray:writeUByte(__ubyte)\n\tlocal __s = string.pack(\"b\", __ubyte)\n\tself:writeBuf(__s)\n\treturn self\nend\n\nfunction ByteArray:readLuaNumber(__number)\n\tlocal __, __v = string.unpack(self:readBuf(8), self:_getLC(\"n\"))\n\treturn __v\nend\n\nfunction ByteArray:writeLuaNumber(__number)\n\tlocal __s = string.pack(self:_getLC(\"n\"), __number)\n\tself:writeBuf(__s)\n\treturn self\nend\n\n--- The differently about (read/write)StringBytes and (read/write)String\n-- are use pack libraty or not.\nfunction ByteArray:readStringBytes(__len)\n\tassert(__len, \"Need a length of the string!\")\n\tif __len == 0 then return \"\" end\n\tself:_checkAvailable()\n\tlocal __, __v = string.unpack(self:readBuf(__len), self:_getLC(\"A\"..__len))\n\treturn __v\nend\n\nfunction ByteArray:writeStringBytes(__string)\n\tlocal __s = string.pack(self:_getLC(\"A\"), __string)\n\tself:writeBuf(__s)\n\treturn self\nend\n\nfunction ByteArray:readString(__len)\n\tassert(__len, \"Need a length of the string!\")\n\tif __len == 0 then return \"\" end\n\tself:_checkAvailable()\n\treturn self:readBuf(__len)\nend\n\nfunction ByteArray:writeString(__string)\n\tself:writeBuf(__string)\n\treturn self\nend\n\nfunction ByteArray:readStringUInt()\n\tself:_checkAvailable()\n\tlocal __len = self:readUInt()\n\treturn self:readStringBytes(__len)\nend\n\nfunction ByteArray:writeStringUInt(__string)\n\tself:writeUInt(#__string)\n\tself:writeStringBytes(__string)\n\treturn self\nend\n\n--- The length of size_t in C/C++ is mutable.\n-- In 64bit os, it is 8 bytes.\n-- In 32bit os, it is 4 bytes.\nfunction ByteArray:readStringSizeT()\n\tself:_checkAvailable()\n\tlocal __s = self:rawUnPack(self:_getLC(\"a\"))\n\treturn  __s\nend\n\n--- Perform rawPack() simply.\nfunction ByteArray:writeStringSizeT(__string)\n\tself:rawPack(self:_getLC(\"a\"), __string)\n\treturn self\nend\n\nfunction ByteArray:readStringUShort()\n\tself:_checkAvailable()\n\tlocal __len = self:readUShort()\n\treturn self:readStringBytes(__len)\nend\n\nfunction ByteArray:writeStringUShort(__string)\n\tlocal __s = string.pack(self:_getLC(\"P\"), __string)\n\tself:writeBuf(__s)\n\treturn self\nend\n\n--- Read some bytes from buf\n-- @return a bit string\nfunction ByteArray:readBytes(__bytes, __offset, __length)\n\tassert(iskindof(__bytes, \"ByteArray\"), \"Need a ByteArray instance!\")\n\tlocal __selfLen = #self._buf\n\tlocal __availableLen = __selfLen - self._pos\n\t__offset = __offset or 1\n\tif __offset > __selfLen then __offset = 1 end\n\t__length = __length or 0\n\tif __length == 0 or __length > __availableLen then __length = __availableLen end\n\t__bytes:setPos(__offset)\n\tfor i=__offset,__offset+__length do\n\t\t__bytes:writeRawByte(self:readRawByte())\n\tend\nend\n\n--- Write some bytes into buf\nfunction ByteArray:writeBytes(__bytes, __offset, __length)\n\tassert(iskindof(__bytes, \"ByteArray\"), \"Need a ByteArray instance!\")\n\tlocal __bytesLen = __bytes:getLen()\n\tif __bytesLen == 0 then return end\n\t__offset = __offset or 1\n\tif __offset > __bytesLen then __offset = 1 end\n\tlocal __availableLen = __bytesLen - __offset\n\t__length = __length or __availableLen\n\tif __length == 0 or __length > __availableLen then __length = __availableLen end\n\tlocal __oldPos = __bytes:getPos()\n\t__bytes:setPos(__offset)\n\tfor i=__offset,__offset+__length do\n\t\tself:writeRawByte(__bytes:readRawByte())\n\tend\n\t__bytes:setPos(__oldPos)\n\treturn self\nend\n\n--- Actionscript3 readByte == lpack readChar\n-- A signed char\nfunction ByteArray:readChar()\n\tlocal __, __val = string.unpack( self:readRawByte(), \"c\")\n\treturn __val\nend\n\nfunction ByteArray:writeChar(__char)\n\tself:writeRawByte(string.pack(\"c\", __char))\n\treturn self\nend\n\n--- Use the lua string library to get a byte\n-- A unsigned char\nfunction ByteArray:readByte()\n\treturn string.byte(self:readRawByte())\nend\n\n--- Use the lua string library to write a byte.\n-- The byte is a number between 0 and 255, otherwise, the lua will get an error.\nfunction ByteArray:writeByte(__byte)\n\tself:writeRawByte(string.char(__byte))\n\treturn self\nend\n\nfunction ByteArray:readRawByte()\n\tself:_checkAvailable()\n\tlocal __byte = self._buf[self._pos]\n\tself._pos = self._pos + 1\n\treturn __byte\nend\n\nfunction ByteArray:writeRawByte(__rawByte)\n\tif self._pos > #self._buf+1 then\n\t\tfor i=#self._buf+1,self._pos-1 do\n\t\t\tself._buf[i] = string.char(0)\n\t\tend\n\tend\n\tself._buf[self._pos] = string.sub(__rawByte, 1,1)\n\tself._pos = self._pos + 1\n\treturn self\nend\n\n--- Read a byte array as string from current position, then update the position.\nfunction ByteArray:readBuf(__len)\n\t--printf(\"readBuf,len:%u, pos:%u\", __len, self._pos)\n\tlocal __ba = self:getBytes(self._pos, self._pos + __len - 1)\n\tself._pos = self._pos + __len\n\treturn __ba\nend\n\n--- Write a encoded char array into buf\nfunction ByteArray:writeBuf(__s)\n\tfor i=1,#__s do\n\t\tself:writeRawByte(string.sub(__s,i,i))\n\tend\n\treturn self\nend\n\n----------------------------------------\n-- private\n----------------------------------------\nfunction ByteArray:_checkAvailable()\n\tassert(#self._buf >= self._pos, string.format(\"End of file was encountered. pos: %d, len: %d.\", self._pos, #self._buf))\nend\n\n--- Get Letter Code\nfunction ByteArray:_getLC(__fmt)\n\t__fmt = __fmt or \"\"\n\tif self._endian == ByteArray.ENDIAN_LITTLE then\n\t\treturn \"<\"..__fmt\n\telseif self._endian == ByteArray.ENDIAN_BIG then\n\t\treturn \">\"..__fmt\n\tend\n\treturn \"=\"..__fmt\nend\n\nreturn ByteArray\n"
  },
  {
    "path": "源代码/mir9/src/framework/cc/utils/ByteArrayVarint.lua",
    "content": "--[[\nSerialzation bytes stream use varint encoding of google protocol buffer, I implemented it in ActionScript. \nIt depends on BitOp.\nA description: https://github.com/zrong/lua#ByteArrayVarint\n\n@see https://developers.google.com/protocol-buffers/docs/encoding\n@see https://github.com/zrong/as3/blob/master/src/org/zengrong/utils/ByteArrayVariant.as\n@see http://bitop.luajit.org/index.html\n@author zrong(zengrong.net)\nCreation: 2013-11-14\n]]\nlocal ByteArrayVarint = class(\"BitVaiant\", import(\".ByteArray\"))\n\nimport(\".bit\")\n\nfunction ByteArrayVarint:ctor(__endian)\n\tself._endian = __endian\n\tself._buf = {}\n\tself._pos = 1\nend\n\nfunction ByteArrayVarint:readVInt()\n\tlocal __v = self:_decodeVarint()\n\treturn self:_zigZagDecode(__v)\nend\n\nfunction  ByteArrayVarint:writeVInt(__vint)\n\tlocal __v = self:_zigZagEncode(__vint)\n\tself:_encodeVarint(__v)\n\treturn self\nend\n\nfunction ByteArrayVarint:readUVInt()\n\treturn self:_decodeVarint()\nend\n\nfunction ByteArrayVarint:writeUVInt(__uvint)\n\tself:_encodeVarint(__uvint)\n\treturn self\nend\n\nfunction ByteArrayVarint:readStringUVInt()\n\tlocal __len = self:readUVInt()\n\treturn self:readStringBytes(__len)\nend\n\nfunction ByteArrayVarint:writeStringUVInt(__str)\n\tself:writeUVInt(#__str)\n\tself:writeStringBytes(__str)\n\treturn self\nend\n\n--- Convert signed int to unsigned int\n-- After converting, 1=2, -1=1, -2=3, 2=4\nfunction ByteArrayVarint:_zigZagEncode(__value)\n\tif __value >= 0 then return bit.lshift(__value, 1) end\n\treturn bit.bxor(bit.lshift(__value, 1), bit.bnot(0))\nend\n\nfunction ByteArrayVarint:_zigZagDecode(__value)\n\tif bit.band(__value, 0x1) == 0 then return bit.rshift(__value, 1) end\n\treturn bit.bxor(bit.rshift(__value, 1), bit.bnot(0))\nend\n\nfunction ByteArrayVarint:_encodeVarint(__value)\n\tassert(type(__value) == \"number\", \"Value to encode must be a number!\")\n\t--[[ 2013-11-19 zrong\n\tOur server need a number greater than 32bit, but BitOp only support 32bit signed nubmers. \n\tClient will get a negative number if server send a number greater than 21 4748 3648.\n\tBut, when client send the number to server use writeUVInt, server will get a positive number.\n\tYes, it can get the number sent to client.\n\tThus, we discard the estimating for __value.\n\t]]\n\t-- if __value < 0 then __value = 0 end\n\tlocal __bytes = bit.band(__value ,0x7f)\n\t__value = bit.rshift(__value, 7)\n\twhile __value ~= 0 do\n\t\tself:writeByte(bit.bor(0x80, __bytes))\n\t\t__bytes = bit.band(__value , 0x7f)\n\t\t__value = bit.rshift(__value, 7)\n\t\t-- print(__bytes, __value)\n\tend\n\tself:writeByte(__bytes)\nend\n\nfunction ByteArrayVarint:_decodeVarint()\n\tlocal __result = 0\n\tlocal __shift = 0\n\tlocal __byte = nil\n\twhile self._pos <= #self._buf do\n\t\t__byte = self:readByte()\n\t\t__result = bit.bor(__result, bit.lshift(bit.band(__byte, 0x7f), __shift))\n\t\tif bit.band(__byte, 0x80) == 0 then\n\t\t\treturn __result\n\t\tend\n\t\t__shift = __shift + 7\n\t\t-- BitOp do not support bitwise greater than 32bit\n\t\tassert(__shift<32, \"Varint decode error! 32bit bitwise is unavailable in BitOp!\")\n\tend\n\terror(\"Read variant at EOF!\")\nend\n\nreturn ByteArrayVarint\n"
  },
  {
    "path": "源代码/mir9/src/framework/cc/utils/GameState.lua",
    "content": "\nlocal GameState = {}\n\nGameState.ERROR_INVALID_FILE_CONTENTS = -1\nGameState.ERROR_HASH_MISS_MATCH       = -2\nGameState.ERROR_STATE_FILE_NOT_FOUND  = -3\n\nlocal crypto = require(cc.PACKAGE_NAME .. \".crypto\")\nlocal json = require(cc.PACKAGE_NAME .. \".json\")\n\nlocal encodeSign    = \"=QP=\"\nlocal stateFilename = \"state.txt\"\nlocal eventListener = nil\nlocal secretKey     = nil\n\nlocal function isEncodedContents_(contents)\n    return string.sub(contents, 1, string.len(encodeSign)) == encodeSign\nend\n\nlocal function encode_(values)\n    local s = json.encode(values)\n    local hash = crypto.md5(s..secretKey)\n    local contents = json.encode({h = hash, s = s})\n    return encodeSign..contents\nend\n\nlocal function decode_(fileContents)\n    local contents = string.sub(fileContents, string.len(encodeSign) + 1)\n    local j = json.decode(contents)\n\n    if type(j) ~= \"table\" then\n        printError(\"GameState.decode_() - invalid contents\")\n        return {errorCode = GameState.ERROR_INVALID_FILE_CONTENTS}\n    end\n\n    local hash,s = j.h, j.s\n    local testHash = crypto.md5(s..secretKey)\n    if testHash ~= hash then\n        printError(\"GameState.decode_() - hash miss match\")\n        return {errorCode = GameState.ERROR_HASH_MISS_MATCH}\n    end\n\n    local values = json.decode(s)\n    if type(values) ~= \"table\" then\n        printError(\"GameState.decode_() - invalid state data\")\n        return {errorCode = GameState.ERROR_INVALID_FILE_CONTENTS}\n    end\n\n    return {values = values}\nend\n\n----------------------------------------\n\nfunction GameState.init(eventListener_, stateFilename_, secretKey_)\n    if type(eventListener_) ~= \"function\" then\n        printError(\"GameState.init() - invalid eventListener\")\n        return false\n    end\n\n    eventListener = eventListener_\n\n    if type(stateFilename_) == \"string\" then\n        stateFilename = stateFilename_\n    end\n\n    if type(secretKey_) == \"string\" then\n        secretKey = secretKey_\n    end\n\n    eventListener({\n        name     = \"init\",\n        filename = GameState.getGameStatePath(),\n        encode   = type(secretKey) == \"string\"\n    })\n\n    return true\nend\n\nfunction GameState.load()\n    local filename = GameState.getGameStatePath()\n\n    if not io.exists(filename) then\n        printInfo(\"GameState.load() - file \\\"%s\\\" not found\", filename)\n        return eventListener({name = \"load\", errorCode = GameState.ERROR_STATE_FILE_NOT_FOUND})\n    end\n\n    local contents = io.readfile(filename)\n    printInfo(\"GameState.load() - get values from \\\"%s\\\"\", filename)\n\n    local values\n    local encode = false\n\n    if secretKey and isEncodedContents_(contents) then\n        local d = decode_(contents)\n        if d.errorCode then\n            return eventListener({name = \"load\", errorCode = d.errorCode})\n        end\n\n        values = d.values\n        encode = true\n    else\n        values = json.decode(contents)\n        if type(values) ~= \"table\" then\n            printError(\"GameState.load() - invalid data\")\n            return eventListener({name = \"load\", errorCode = GameState.ERROR_INVALID_FILE_CONTENTS})\n        end\n    end\n\n    return eventListener({\n        name   = \"load\",\n        values = values,\n        encode = encode,\n        time   = os.time()\n    })\nend\n\nfunction GameState.save(newValues)\n    local values = eventListener({\n        name   = \"save\",\n        values = newValues,\n        encode = type(secretKey) == \"string\"\n    })\n    if type(values) ~= \"table\" then\n        printError(\"GameState.save() - listener return invalid data\")\n        return false\n    end\n\n    local filename = GameState.getGameStatePath()\n    local ret = false\n    if secretKey then\n        ret = io.writefile(filename, encode_(values))\n    else\n        local s = json.encode(values)\n        if type(s) == \"string\" then\n            ret = io.writefile(filename, s)\n        end\n    end\n\n    printInfo(\"GameState.save() - update file \\\"%s\\\"\", filename)\n    return ret\nend\n\nfunction GameState.getGameStatePath()\n    return string.gsub(device.writablePath, \"[\\\\\\\\/]+$\", \"\") .. device.directorySeparator .. stateFilename\nend\n\ncc = cc or {}\ncc.utils = cc.utils or {}\ncc.utils.State = GameState\n\nreturn GameState\n"
  },
  {
    "path": "源代码/mir9/src/framework/cc/utils/Gettext.lua",
    "content": "--[[\nLoad a mo file, retuan a lua function or table.\nA sample and description(in chinese): http://zengrong.net/post/1986.htm \n\n@see http://lua-users.org/lists/lua-l/2010-04/msg00005.html\nModifier zrong(zengrong.net)\nCreation 2013-11-29\n\nusage:\n\n    local mo_data=assert(require(\"utils.Gettext\").loadMOFromFile(\"main.mo\"))\n    print(mo_data[\"hello\"])\n   -- 你好\n    print(mo_data[\"world\"])\n   -- nil\n\nthen you'll get a kind of gettext function:\n\n    local gettext=assert(require(\"utils.Gettext\").gettextFromFile(\"main.mo\"))\n    print(gettext(\"hello\"))\n   -- 你好\n    print(gettext(\"world\"))\n    -- world\n\nwith a slight modification this will be ready-to-use for the xgettext tool:\n\n    _ = assert(require(\"utils.Gettext\").gettextFromFile(\"main.mo\"))\n    print(_(\"hello\"))\n    print(_(\"world\"))\n]]\n\n-- Original description\n-----------------------------------------------------------\n-- load an mo file and return a lua table\n-- @param mo_file name of the file to load\n-- @return table on success\n-- @return nil,string on failure\n-- @copyright J.J?rgen von Bargen\n-- @licence I provide this as public domain\n-- @see http://www.gnu.org/software/hello/manual/gettext/MO-Files.html\n-----------------------------------------------------------\n\nlocal Gettext = {}\n\nfunction Gettext._getFileData(mo_file)\n\t--- use lua io, cannot use in Android\n\t--[[\n    local fd,err=io.open(mo_file,\"rb\")\n    if not fd then return nil,err end\n    local mo_data=fd:read(\"*all\")\n    fd:close()\n\t--]]\n\n\t--- use quick-cocos2d-x cc.FileUtils, cross-platform\n\tlocal mo_data = cc.HelperFunc:getFileData(mo_file)\n\treturn mo_data\nend\n\nfunction Gettext.loadMOFromFile(mo_file)\n\treturn Gettext.parseData(Gettext._getFileData(mo_file))\nend\n\nfunction Gettext.gettextFromFile(mo_file)\n\treturn Gettext.gettext(Gettext._getFileData(mo_file))\nend\n\nfunction Gettext.gettext(mo_data)\n\tlocal __hash = Gettext.parseData(mo_data)\n    return function(text)\n        return __hash[text] or text\n    end\nend\n\nfunction Gettext.parseData(mo_data)\n    --------------------------------\n    -- precache some functions\n    --------------------------------\n    local byte=string.byte\n    local sub=string.sub\n\n    --------------------------------\n    -- check format\n    --------------------------------\n    local peek_long --localize\n    local magic=sub(mo_data,1,4)\n    -- intel magic 0xde120495\n    if magic==\"\\222\\018\\004\\149\" then\n        peek_long=function(offs)\n            local a,b,c,d=byte(mo_data,offs+1,offs+4)\n            return ((d*256+c)*256+b)*256+a\n        end\n    -- motorola magic = 0x950412de\n    elseif magic==\"\\149\\004\\018\\222\" then\n        peek_long=function(offs)\n            local a,b,c,d=byte(mo_data,offs+1,offs+4)\n            return ((a*256+b)*256+c)*256+d\n        end\n    else\n        return nil,\"no valid mo-file\"\n    end\n\n    --------------------------------\n    -- version\n    --------------------------------\n    local V=peek_long(4)\n    if V~=0 then\n        return nul,\"unsupported version\"\n    end\n\n    ------------------------------\n    -- get number of offsets of table\n    ------------------------------\n    local N,O,T=peek_long(8),peek_long(12),peek_long(16)\n    ------------------------------\n    -- traverse and get strings\n    ------------------------------\n    local hash={}\n    for nstr=1,N do\n        local ol,oo=peek_long(O),peek_long(O+4) O=O+8\n        local tl,to=peek_long(T),peek_long(T+4) T=T+8\n        hash[sub(mo_data,oo+1,oo+ol)]=sub(mo_data,to+1,to+tl)\n    end\n    return hash    -- return table\nend\n\nreturn Gettext\n"
  },
  {
    "path": "源代码/mir9/src/framework/cc/utils/Localize.lua",
    "content": "\nlocal Localize = {}\n\nLocalize.strings = {}\n\nfunction Localize.loadStrings(strings)\n    Localize.strings = strings\nend\n\nfunction Localize.query(key, default)\n    if not default then default = key end\n    local lang = device.language\n    if not Localize.strings[lang] or not Localize.strings[lang][key] then return default end\n    return Localize.strings[lang][key]\nend\n\nfunction Localize.filename(filenameOrigin)\n    local fi = io.pathinfo(filenameOrigin)\n    return fi.dirname .. fi.basename .. \"_\" .. device.language .. fi.extname\nend\n\ncc = cc or {}\ncc.utils = cc.utils or {}\ncc.utils.Localize = Localize\n\nreturn Localize\n"
  },
  {
    "path": "源代码/mir9/src/framework/cc/utils/Timer.lua",
    "content": "\nlocal scheduler = require(cc.PACKAGE_NAME .. \".scheduler\")\n\n--[[--\n\nTimer 实现了一个计时器容器，用于跟踪应用中所有需要计时的事件。\n\n]]\nlocal Timer = {}\n\n--[[--\n\n创建一个计时器。\n\n**Returns:**\n\n-   Timer 对象\n\n]]\nfunction Timer.new()\n    local timer = {}\n    cc(timer):addComponent(\"components.behavior.EventProtocol\"):exportMethods()\n\n    ----\n\n    local handle     = nil\n    local countdowns = {}\n    local timecount  = 0\n\n    ----\n\n    --[[--\n    @ignore\n    ]]\n    local function onTimer(dt)\n        timecount = timecount + dt\n        for eventName, cd in pairs(countdowns) do\n            cd.countdown = cd.countdown - dt\n            cd.nextstep  = cd.nextstep - dt\n\n            if cd.countdown <= 0 then\n                print(string.format(\"[finish] %s\", eventName))\n                timer:dispatchEvent({name = eventName, countdown = 0})\n                timer:removeCountdown(eventName)\n            elseif cd.nextstep <= 0 then\n                print(string.format(\"[step] %s\", eventName))\n                cd.nextstep = cd.nextstep + cd.interval\n                timer:dispatchEvent({name = eventName, countdown = cd.countdown})\n            end\n        end\n    end\n\n    ----\n\n    --[[--\n\n    添加一个计时器。\n\n    在计时器倒计时完成前，会按照 **interval** 参数指定的时间间隔触发 **eventName** 参数指定的事件。\n    事件参数则是倒计时还剩余的时间。\n\n    在计时器倒计时完成后，同样会触发 **eventName** 参数指定的事件。此时事件的参数是 0，表示倒计时完成。\n\n    因此在事件处理函数中，可以通过事件参数判断倒计时是否已经结束：\n\n        local Timer = require(\"framework.cc.utils.Timer\")\n        local appTimer = Timer.new()\n\n        -- 响应 CITYHALL_UPGRADE_TIMER 事件\n        local function onCityHallUpgradeTimer(event)\n            if event.countdown > 0 then\n                -- 倒计时还未结束，更新用户界面上显示的时间\n                ....\n            else\n                -- 倒计时已经结束，更新用户界面显示升级后的城防大厅\n            end\n        end\n\n        -- 注册事件\n        appTimer:addEventListener(\"CITYHALL_UPGRADE_TIMER\", onCityHallUpgradeTimer)\n        -- 城防大厅升级需要 3600 秒，每 30 秒更新一次界面显示\n        appTimer:addCountdown(\"CITYHALL_UPGRADE_TIMER\", 3600, 30)\n\n    考虑移动设备的特殊性，计时器可能存在一定误差，所以 **interval** 参数的最小值是 2 秒。\n    在界面上需要显示倒计时的地方，应该以“分”为单位。例如显示为“2 小时 23 分”，这样可以避免误差带来的问题。\n\n    ### 注意\n\n    计时器在倒计时结束并触发事件后，会自动删除。关联到这个计时器的所有事件处理函数也会被取消。\n\n\n    **Parameters:**\n\n    -   eventName: 计时器事件的名称\n    -   countdown: 倒计时（秒）\n    -   interval（可选）: 检查倒计时的时间间隔，最小为 2 秒，最长为 120 秒，如果未指定则默认为 30 秒\n\n    ]]\n    function timer:addCountdown(eventName, countdown, interval)\n        eventName = tostring(eventName)\n        assert(not countdowns[eventName], \"eventName '\" .. eventName .. \"' exists\")\n        assert(type(countdown) == \"number\" and countdown >= 30, \"invalid countdown\")\n\n        if type(interval) ~= \"number\" then\n            interval = 30\n        else\n            interval = math.floor(interval)\n            if interval < 2 then\n                interval = 2\n            elseif interval > 120 then\n                interval = 120\n            end\n        end\n\n        countdowns[eventName] = {\n            countdown = countdown,\n            interval  = interval,\n            nextstep  = interval,\n        }\n    end\n\n    --[[--\n\n    删除指定事件名称对应的计时器，并取消这个计时器的所有事件处理函数。\n\n    **Parameters:**\n\n    -   eventName: 计时器事件的名称\n\n    ]]\n    function timer:removeCountdown(eventName)\n        eventName = tostring(eventName)\n        countdowns[eventName] = nil\n        self:removeEventListenersByEvent(eventName)\n    end\n\n    --[[--\n\n    启动计时器容器。\n\n    在开始游戏时调用这个方法，确保所有的计时器事件都正确触发。\n\n    ]]\n    function timer:start()\n        if not handle then\n            handle = scheduler.scheduleGlobal(onTimer, 1.0, false)\n        end\n    end\n\n    --[[--\n\n    停止计时器容器。\n\n    ]]\n    function timer:stop()\n        if handle then\n            scheduler.unscheduleGlobal(handle)\n            handle = nil\n        end\n    end\n\n    return timer\nend\n\ncc = cc or {}\ncc.utils = cc.utils or {}\ncc.utils.Timer = Timer\n\nreturn Timer\n"
  },
  {
    "path": "源代码/mir9/src/framework/cc/utils/bit.lua",
    "content": "--[[---------------\nLuaBit v0.4\n-------------------\na bitwise operation lib for lua.\n\nhttp://luaforge.net/projects/bit/\n\nHow to use:\n-------------------\n bit.bnot(n) -- bitwise not (~n)\n bit.band(m, n) -- bitwise and (m & n)\n bit.bor(m, n) -- bitwise or (m | n)\n bit.bxor(m, n) -- bitwise xor (m ^ n)\n bit.brshift(n, bits) -- right shift (n >> bits)\n bit.blshift(n, bits) -- left shift (n << bits)\n bit.blogic_rshift(n, bits) -- logic right shift(zero fill >>>)\n \nPlease note that bit.brshift and bit.blshift only support number within\n32 bits.\n\n2 utility functions are provided too:\n bit.tobits(n) -- convert n into a bit table(which is a 1/0 sequence)\n               -- high bits first\n bit.tonumb(bit_tbl) -- convert a bit table into a number \n-------------------\n\nUnder the MIT license.\n\ncopyright(c) 2006~2007 hanzhao (abrash_han@hotmail.com)\n--]]---------------\n\ndo\n\n------------------------\n-- bit lib implementions\n\nlocal function check_int(n)\n -- checking not float\n if(n - math.floor(n) > 0) then\n  error(\"trying to use bitwise operation on non-integer!\")\n end\nend\n\nlocal function to_bits(n)\n check_int(n)\n if(n < 0) then\n  -- negative\n  return to_bits(bit.bnot(math.abs(n)) + 1)\n end\n -- to bits table\n local tbl = {}\n local cnt = 1\n while (n > 0) do\n  local last = math.mod(n,2)\n  if(last == 1) then\n   tbl[cnt] = 1\n  else\n   tbl[cnt] = 0\n  end\n  n = (n-last)/2\n  cnt = cnt + 1\n end\n\n return tbl\nend\n\nlocal function tbl_to_number(tbl)\n local n = table.getn(tbl)\n\n local rslt = 0\n local power = 1\n for i = 1, n do\n  rslt = rslt + tbl[i]*power\n  power = power*2\n end\n \n return rslt\nend\n\nlocal function expand(tbl_m, tbl_n)\n local big = {}\n local small = {}\n if(table.getn(tbl_m) > table.getn(tbl_n)) then\n  big = tbl_m\n  small = tbl_n\n else\n  big = tbl_n\n  small = tbl_m\n end\n -- expand small\n for i = table.getn(small) + 1, table.getn(big) do\n  small[i] = 0\n end\n\nend\n\nlocal function bit_or(m, n)\n local tbl_m = to_bits(m)\n local tbl_n = to_bits(n)\n expand(tbl_m, tbl_n)\n\n local tbl = {}\n local rslt = math.max(table.getn(tbl_m), table.getn(tbl_n))\n for i = 1, rslt do\n  if(tbl_m[i]== 0 and tbl_n[i] == 0) then\n   tbl[i] = 0\n  else\n   tbl[i] = 1\n  end\n end\n \n return tbl_to_number(tbl)\nend\n\nlocal function bit_and(m, n)\n local tbl_m = to_bits(m)\n local tbl_n = to_bits(n)\n expand(tbl_m, tbl_n) \n\n local tbl = {}\n local rslt = math.max(table.getn(tbl_m), table.getn(tbl_n))\n for i = 1, rslt do\n  if(tbl_m[i]== 0 or tbl_n[i] == 0) then\n   tbl[i] = 0\n  else\n   tbl[i] = 1\n  end\n end\n\n return tbl_to_number(tbl)\nend\n\nlocal function bit_not(n)\n \n local tbl = to_bits(n)\n local size = math.max(table.getn(tbl), 32)\n for i = 1, size do\n  if(tbl[i] == 1) then \n   tbl[i] = 0\n  else\n   tbl[i] = 1\n  end\n end\n return tbl_to_number(tbl)\nend\n\nlocal function bit_xor(m, n)\n local tbl_m = to_bits(m)\n local tbl_n = to_bits(n)\n expand(tbl_m, tbl_n) \n\n local tbl = {}\n local rslt = math.max(table.getn(tbl_m), table.getn(tbl_n))\n for i = 1, rslt do\n  if(tbl_m[i] ~= tbl_n[i]) then\n   tbl[i] = 1\n  else\n   tbl[i] = 0\n  end\n end\n \n --table.foreach(tbl, print)\n\n return tbl_to_number(tbl)\nend\n\nlocal function bit_rshift(n, bits)\n check_int(n)\n \n local high_bit = 0\n if(n < 0) then\n  -- negative\n  n = bit_not(math.abs(n)) + 1\n  high_bit = 2147483648 -- 0x80000000\n end\n\n for i=1, bits do\n  n = n/2\n  n = bit_or(math.floor(n), high_bit)\n end\n return math.floor(n)\nend\n\n-- logic rightshift assures zero filling shift\nlocal function bit_logic_rshift(n, bits)\n check_int(n)\n if(n < 0) then\n  -- negative\n  n = bit_not(math.abs(n)) + 1\n end\n for i=1, bits do\n  n = n/2\n end\n return math.floor(n)\nend\n\nlocal function bit_lshift(n, bits)\n check_int(n)\n \n if(n < 0) then\n  -- negative\n  n = bit_not(math.abs(n)) + 1\n end\n\n for i=1, bits do\n  n = n*2\n end\n return bit_and(n, 4294967295) -- 0xFFFFFFFF\nend\n\nlocal function bit_xor2(m, n)\n local rhs = bit_or(bit_not(m), bit_not(n))\n local lhs = bit_or(m, n)\n local rslt = bit_and(lhs, rhs)\n return rslt\nend\n\n--------------------\n-- bit lib interface\n\nbit = {\n -- bit operations\n bnot = bit_not,\n band = bit_and,\n bor  = bit_or,\n bxor = bit_xor,\n brshift = bit_rshift,\n blshift = bit_lshift,\n bxor2 = bit_xor2,\n blogic_rshift = bit_logic_rshift,\n\n -- utility func\n tobits = to_bits,\n tonumb = tbl_to_number,\n}\n\nend\n\n--[[\nfor i = 1, 100 do\n for j = 1, 100 do\n  if(bit.bxor(i, j) ~= bit.bxor2(i, j)) then\n   error(\"bit.xor failed.\")\n  end\n end\nend\n--]]\n\n\n\n\n\n\n\n\n\n\n\n\n\n"
  },
  {
    "path": "源代码/mir9/src/framework/cc/utils/init.lua",
    "content": "--- init utils package\n-- @author zrong(zengrong.net)\n-- Creation 2014-01-02\nlocal utils = {}\n\nutils.ByteArray = import(\".ByteArray\")\nutils.ByteArrayVarint = import(\".ByteArrayVarint\")\nutils.Gettext = import(\".Gettext\")\n\nreturn utils\n"
  },
  {
    "path": "源代码/mir9/src/framework/cocos2dx/ActionEx.lua",
    "content": "local cca = {}\n_G.cca = cca -- make it global\n\nfunction cc.Action:addTo(node)\n   node:runAction(self)\n   return self\nend\n\nfunction cc.Node:buildAction(...)\n   local builder = cca.builder(...)\n   builder.target = self\n   return builder\nend\n\n-- instant\n\nfunction cca.show()\n   return cc.Show:create()\nend\n\nfunction cca.hide()\n   return cc.Hide:create()\nend\n\nfunction cca.toggle()\n   return cc.ToggleVisibility:create()\nend\n\nfunction cca.removeSelf()\n   return cc.RemoveSelf:create()\nend\n\nfunction cca.flipX(x)\n   return cc.FlipX:create(x)\nend\n\nfunction cca.flipY(y)\n   return cc.FlipY:create(y)\nend\n\nfunction cca.place(x, y)\n   return cc.Place:create(cc.p(x, y))\nend\n\nfunction cca.callFunc(cb)\n   if cb then return cc.CallFunc:create(cb) end\n   return false\nend\n\nfunction cca.callFuncN(cb)\n   if cb then return cc.CallFuncN:create(cb) end\n   return false\nend\n\n\n-- interval\n\nfunction cca.rotateTo(dt, ...)\n   return cc.RotateTo:create(dt, ...)\nend\n\nfunction cca.rotateBy(dt, ...)\n   return cc.RotateBy:create(dt, ...)\nend\n\nfunction cca.moveTo(dt, x, y)\n   if y then x = cc.p(x, y) end\n   return cc.MoveTo:create(dt, x)\nend\n\nfunction cca.moveBy(dt, dx, dy)\n   if dy then dx = cc.p(dx, dy) end\n   return cc.MoveBy:create(dt, dx)\nend\n\nfunction cca.skewTo(dt, x, y)\n   if y then x = cc.p(x, y) end\n   return cc.SkewTo:create(dt, x)\nend\n\nfunction cca.skewBy(dt, dx, dy)\n   if dy then dx = cc.p(dx, dy) end\n   return cc.SkewBy:create(dt, dx)\nend\n\nfunction cca.jumpTo(dt, x, y, height, count)\n   if y then x = cc.p(x, y) end\n   return cc.JumpTo:create(dt, x, height, count)\nend\n\nfunction cca.jumpBy(dt, x, y, height, count)\n   if y then x = cc.p(x, y) end\n   return cc.JumpBy:create(dt, x, height, count)\nend\n\nfunction cca.bezierTo(dt, c1, c2, p2)\n   self[1] = c1\n   self[2] = c2\n   self[3] = p2\n   return cc.BezierTo:create(dt, self)\nend\n\nfunction cca.bezierBy(dt, c1, c2, p2)\n   self[1] = c1\n   self[2] = c2\n   self[3] = p2\n   return cc.BezierBy:create(dt, self)\nend\n\nfunction cca.splineTo(dt, points)\n   return cc.CardinalSplineTo:create(dt, points)\nend\n\nfunction cca.splineBy(dt, points)\n   return cc.CardinalSplineBy:create(dt, points)\nend\n\nfunction cca.romTo(dt, points)\n   return cc.CardinalRomBy:create(dt, points)\nend\n\nfunction cca.romBy(dt, points)\n   return cc.CardinalRomBy:create(dt, points)\nend\n\nfunction cca.scaleTo(dt, ...)\n   return cc.ScaleTo:create(dt, ...)\nend\n\nfunction cca.scaleBy(dt, ...)\n   return cc.ScaleBy:create(dt, ...)\nend\n\nfunction cca.blink(dt, count)\n   return cc.Blink:create(dt, count)\nend\n\nfunction cca.fadeTo(dt, opacity)\n   return cc.FadeTo:create(dt, opacity*255)\nend\n\nfunction cca.fadeIn(dt)\n   return cc.FadeIn:create(dt)\nend\n\nfunction cca.fadeOut(dt)\n   return cc.FadeOut:create(dt)\nend\n\nfunction cca.tintTo(dt, r, g, b)\n   return cc.TintTo:create(dt, r*255, g*255, b*255)\nend\n\nfunction cca.tintBy(dt, dr, dg, db)\n   return cc.TintBy:create(dt, dr*255, dg*255, db*255)\nend\n\nfunction cca.delay(dt)\n   return cc.DelayTime:create(dt)\nend\n\nfunction cca.animate(ani)\n   return cc.Animate:create(ani)\nend\n\nfunction cca.progressTo(dt, progress)\n   return cc.ProgressTo:create(dt, progress)\nend\n\nfunction cca.progressFromTo(dt, from, to)\n   return cc.ProgressFromTo:create(dt, from, to)\nend\n\n\n-- compose: compose can used together with cca.builder, as compose\n-- always use act(s) for it's first arguments, and only take one extra\n-- argument. compose can be the 'cmd' arg of builder, used like this:\n-- cca.builder 'spawn' -- cca.spawn\n--    :blink(10, 10)\n--    :begin 'seq' -- cca.seq\n--       :moveTo(5, display.cx, display.cy)\n--       :rotateBy(5, 360)\n--    :done()\n--    :begin('rep', 4) -- compose with a argument\n--       :scaleBy(2.5, 3.0)\n--    :done()\n-- :done 'bounce'\n--\n\nlocal function checkaction(act)\n   if not act then\n      error(\"action required!!!\")\n   end\n   if act.build then return act:build() end\n   return act\nend\n\nfunction cca.seq(acts)\n   return cc.Sequence:create(acts)\nend\n\nfunction cca.spawn(acts)\n   return cc.Spawn:create(acts)\nend\n\nfunction cca.repeatForever(act)\n   return cc.RepeatForever:create(checkaction(act))\nend\n\nfunction cca.reverse(act)\n   return cc.ReverseTime:create(checkaction(act))\nend\n\nfunction cca.speed(act, speed)\n   return cc.Speed:create(checkaction(act), speed)\nend\n\nfunction cca.rep(act, times)\n   return cc.Repeat:create(checkaction(act), times)\nend\n\nfunction cca.targeted(act, node)\n   return cc.TargetedAction:create(node, checkaction(act))\nend\n\n\n-- follow is neither a interval action nor instant aciton :(\n-- it can not use together with cca.builder\nfunction cca.follow(node, rect)\n   return cc.Follow:create(node, rect)\nend\n\n\n-- eases\n\nlocal function EaseAction(name, dft)\n   local cls = \"Ease\"..name:gsub(\"^%w\", string.upper)\n   local f\n   if dft then\n      f = function(act, rate)\n         return cc[cls]:create(checkaction(act), rate or dft)\n      end\n   else\n      f = function(act)\n         return cc[cls]:create(checkaction(act))\n      end\n   end\n   cca[name] = f\n   cca[name:upper()] = f\nend\n\nEaseAction(\"backIn\")\nEaseAction(\"backOut\")\nEaseAction(\"backinOut\")\nEaseAction(\"bounce\")\nEaseAction(\"bounceIn\")\nEaseAction(\"bounceInOut\")\nEaseAction(\"bounceOut\")\nEaseAction(\"elastic\", 0.3)\nEaseAction(\"elasticIn\", 0.3)\nEaseAction(\"elasticInOut\", 0.3)\nEaseAction(\"elasticOut\", 0.3)\nEaseAction(\"exponentialIn\")\nEaseAction(\"exponentialInOut\")\nEaseAction(\"exponentialOut\")\nEaseAction(\"in\", 1.0)\nEaseAction(\"inOut\", 1.0)\nEaseAction(\"out\", 1.0)\nEaseAction(\"rateAction\", 1.0)\nEaseAction(\"sineIn\")\nEaseAction(\"sineInOut\")\nEaseAction(\"sineOut\")\n\n\n-- shortcodes\n\ncca.cb = cca.callFunc\ncca.ani = cca.animate\ncca.loop = cca.repeatForever\ncca.to = cca.targeted\n\n\n-- ActionBuilder implement\n\nlocal ActionBuilder = {}\nActionBuilder.__class = \"ActionBuilder\"\nActionBuilder.__index = ActionBuilder\n\nfunction cca.builder(cmd, parent)\n   local self = setmetatable({}, ActionBuilder)\n   self.cur = self\n   self.cur.parent = parent or self\n   self.cur.cmd = cmd or \"seq\"\n   self.target = nil\n   if not cca[self.cur.cmd] then\n      error(\"cmd '\"..(cmd or \"nil\")..\"' not found\")\n   end\n   return self\nend\n\nfunction ActionBuilder:clear()\n   for i = 1, #self.cur do\n      self.cur[i] = nil\n   end\n   return self\nend\n\nfunction ActionBuilder:clone(other)\n   self:clear()\n   for i = 1, #other.cur do\n      self.cur[i] = other.cur[i]\n   end\n   return self\nend\n\nfunction ActionBuilder:begin(cmd, args)\n   self.cur = cca.builder(cmd, self.cur)\n   self.cur.args = args\n   self.cur.target = self.target\n   return self\nend\n\nfunction ActionBuilder:done(ease, ...)\n   local parent = self.cur.parent\n   local acts = self.cur\n   local cmd = self.cur.cmd\n   local args = self.cur.args\n   if cmd ~= 'seq' and cmd ~= 'spawn' then\n      acts = cca.seq(acts)\n   end\n   local act = cca[cmd](acts, args)\n   if ease and type(ease) == 'string' then\n      ease = cca[ease:upper()]\n      if ease then act = ease(act, ...) end\n   end\n   self.cur = parent\n   self.cur[#self.cur+1] = act\n   return self, act\nend\n\nfunction ActionBuilder:action()\n   local self, act = self:done()\n   return act\nend\n\nfunction ActionBuilder:add(act)\n   self.cur[#self.cur+1] = act\n   return self\nend\n\nfunction ActionBuilder:addTo(target)\n   target = target or self.target\n   assert(not tolua.isnull(target), \"ActionBuilder.addTo() - target is not cc.Node\")\n   local self, act = self:done()\n   return act:addTo(target)\nend\n\n-- shortcode\nActionBuilder.run = ActionBuilder.addTo\nActionBuilder.build = ActionBuilder.done\n\n\nfor k,v in pairs(cca) do\n   ActionBuilder[k] = function(self, ...)\n      local act = v(...)\n      if act then\n         self.cur[#self.cur+1] = act\n      end\n      return self\n   end\nend\n\n-- some patch to standard actions\n\nlocal builder_moveTo = ActionBuilder.moveTo\nfunction ActionBuilder:moveTo(dt, x, y)\n   if self.target then\n      x = x or self.target:getPositionX()\n      if not y and type(x) == \"number\" then\n         y = self.target:getPositionY()\n      end\n   end\n   return builder_moveTo(self, dt, x, y)\nend\n\nreturn cca\n"
  },
  {
    "path": "源代码/mir9/src/framework/cocos2dx/Cocos2d.lua",
    "content": "-- require \"CocoStudio\"\n\ncc = cc or {}\n\ncc.DIRECTOR_PROJECTION_2D = 0\ncc.DIRECTOR_PROJECTION_3D = 1\n\nfunction cc.clampf(value, min_inclusive, max_inclusive)\n    -- body\n    local temp = 0\n    if min_inclusive > max_inclusive then\n        temp = min_inclusive\n        min_inclusive =  max_inclusive\n        max_inclusive = temp\n    end\n\n    if value < min_inclusive then\n        return min_inclusive\n    elseif value < max_inclusive then\n        return value\n    else\n        return max_inclusive\n    end\nend\n\n--Point\nfunction cc.p(_x,_y)\n    if nil == _y then\n         return { x = _x.x, y = _x.y }\n    else\n         return { x = _x, y = _y }\n    end\nend\n\nfunction cc.pAdd(pt1,pt2)\n    return {x = pt1.x + pt2.x , y = pt1.y + pt2.y }\nend\n\nfunction cc.pSub(pt1,pt2)\n    return {x = pt1.x - pt2.x , y = pt1.y - pt2.y }\nend\n\nfunction cc.pMul(pt1,factor)\n    return { x = pt1.x * factor , y = pt1.y * factor }\nend\n\nfunction cc.pMidpoint(pt1,pt2)\n    return { x = (pt1.x + pt2.x) / 2.0 , y = ( pt1.y + pt2.y) / 2.0 }\nend\n\nfunction cc.pForAngle(a)\n    return { x = math.cos(a), y = math.sin(a) }\nend\n\nfunction cc.pGetLength(pt)\n    return math.sqrt( pt.x * pt.x + pt.y * pt.y )\nend\n\nfunction cc.pNormalize(pt)\n    local length = cc.pGetLength(pt)\n    if 0 == length then\n        return { x = 1.0,y = 0.0 }\n    end\n\n    return { x = pt.x / length, y = pt.y / length }\nend\n\nfunction cc.pCross(self,other)\n    return self.x * other.y - self.y * other.x\nend\n\nfunction cc.pDot(self,other)\n    return self.x * other.x + self.y * other.y\nend\n\nfunction cc.pToAngleSelf(self)\n    return math.atan2(self.y, self.x)\nend\n\nfunction cc.pGetAngle(self,other)\n    local a2 = cc.pNormalize(self)\n    local b2 = cc.pNormalize(other)\n    local angle = math.atan2(cc.pCross(a2, b2), cc.pDot(a2, b2) )\n    if math.abs(angle) < 1.192092896e-7 then\n        return 0.0\n    end\n\n    return angle\nend\n\nfunction cc.pGetDistance(startP,endP)\n    return cc.pGetLength(cc.pSub(startP,endP))\nend\n\nfunction cc.pIsLineIntersect(A, B, C, D, s, t)\n    if ((A.x == B.x) and (A.y == B.y)) or ((C.x == D.x) and (C.y == D.y))then\n        return false, s, t\n    end\n\n    local BAx = B.x - A.x\n    local BAy = B.y - A.y\n    local DCx = D.x - C.x\n    local DCy = D.y - C.y\n    local ACx = A.x - C.x\n    local ACy = A.y - C.y\n\n    local denom = DCy * BAx - DCx * BAy\n    s = DCx * ACy - DCy * ACx\n    t = BAx * ACy - BAy * ACx\n\n    if (denom == 0) then\n        if (s == 0 or t == 0) then\n            return true, s , t\n        end\n\n        return false, s, t\n    end\n\n    s = s / denom\n    t = t / denom\n\n    return true,s,t\nend\n\nfunction cc.pPerp(pt)\n    return { x = -pt.y, y = pt.x }\nend\n\nfunction cc.RPerp(pt)\n    return { x = pt.y,  y = -pt.x }\nend\n\nfunction cc.pProject(pt1, pt2)\n    return { x = pt2.x * (cc.pDot(pt1,pt2) / cc.pDot(pt2,pt2)) , y = pt2.y * (cc.pDot(pt1,pt2) / cc.pDot(pt2,pt2)) }\nend\n\nfunction cc.pRotate(pt1, pt2)\n    return { x = pt1.x * pt2.x - pt1.y * pt2.y, y = pt1.x * pt2.y + pt1.y * pt2.x }\nend\n\nfunction cc.pUnrotate(pt1, pt2)\n    return { x = pt1.x * pt2.x + pt1.y * pt2.y, pt1.y * pt2.x - pt1.x * pt2.y }\nend\n--Calculates the square length of pt\nfunction cc.pLengthSQ(pt)\n    return cc.pDot(pt,pt)\nend\n--Calculates the square distance between pt1 and pt2\nfunction cc.pDistanceSQ(pt1,pt2)\n    return cc.pLengthSQ(cc.pSub(pt1,pt2))\nend\n\nfunction cc.pGetClampPoint(pt1,pt2,pt3)\n    return { x = cc.clampf(pt1.x, pt2.x, pt3.x), y = cc.clampf(pt1.y, pt2.y, pt3.y) }\nend\n\nfunction cc.pFromSize(sz)\n    return { x = sz.width, y = sz.height }\nend\n\nfunction cc.pLerp(pt1,pt2,alpha)\n    return cc.pAdd(cc.pMul(pt1, 1.0 - alpha), cc.pMul(pt2,alpha) )\nend\n\nfunction cc.pFuzzyEqual(pt1,pt2,variance)\n    if (pt1.x - variance <= pt2.x) and (pt2.x <= pt1.x + variance) and (pt1.y - variance <= pt2.y) and (pt2.y <= pt1.y + variance) then\n        return true\n    else\n        return false\n    end\nend\n\nfunction cc.pRotateByAngle(pt1, pt2, angle)\n    return cc.pAdd(pt2, cc.pRotate( cc.pSub(pt1, pt2),cc.pForAngle(angle)))\nend\n\nfunction cc.pIsSegmentIntersect(pt1,pt2,pt3,pt4)\n    local s,t,ret = 0,0,false\n    ret,s,t =cc.pIsLineIntersect(pt1, pt2, pt3, pt4,s,t)\n\n    if ret and  s >= 0.0 and s <= 1.0 and t >= 0.0 and t <= 0.0 then\n        return true;\n    end\n\n    return false\nend\n\nfunction cc.pGetIntersectPoint(pt1,pt2,pt3,pt4)\n    local s,t, ret = 0,0,false\n    ret,s,t = cc.pIsLineIntersect(pt1,pt2,pt3,pt4,s,t)\n    if ret then\n        return cc.p(pt1.x + s * (pt2.x - pt1.x), pt1.y + s * (pt2.y - pt1.y))\n    else\n        return cc.p(0,0)\n    end\nend\n--Size\nfunction cc.size( _width,_height )\n    return { width = _width, height = _height }\nend\n\n--Rect\nfunction cc.rect(_x,_y,_width,_height)\n    return { x = _x, y = _y, width = _width, height = _height }\nend\n\nfunction cc.rectEqualToRect(rect1,rect2)\n    if ((rect1.x >= rect2.x) or (rect1.y >= rect2.y) or\n        ( rect1.x + rect1.width <= rect2.x + rect2.width) or\n        ( rect1.y + rect1.height <= rect2.y + rect2.height)) then\n        return false\n    end\n\n    return true\nend\n\nfunction cc.rectGetMaxX(rect)\n    return rect.x + rect.width\nend\n\nfunction cc.rectGetMidX(rect)\n    return rect.x + rect.width / 2.0\nend\n\nfunction cc.rectGetMinX(rect)\n    return rect.x\nend\n\nfunction cc.rectGetMaxY(rect)\n    return rect.y + rect.height\nend\n\nfunction cc.rectGetMidY(rect)\n    return rect.y + rect.height / 2.0\nend\n\nfunction cc.rectGetMinY(rect)\n    return rect.y\nend\n\nfunction cc.rectContainsPoint( rect, point )\n    local ret = false\n\n    if (point.x >= rect.x) and (point.x <= rect.x + rect.width) and\n       (point.y >= rect.y) and (point.y <= rect.y + rect.height) then\n        ret = true\n    end\n\n    return ret\nend\n\nfunction cc.rectIntersectsRect( rect1, rect2 )\n    local intersect = not ( rect1.x > rect2.x + rect2.width or\n                    rect1.x + rect1.width < rect2.x         or\n                    rect1.y > rect2.y + rect2.height        or\n                    rect1.y + rect1.height < rect2.y )\n\n    return intersect\nend\n\nfunction cc.rectUnion( rect1, rect2 )\n    local rect = cc.rect(0, 0, 0, 0)\n    rect.x = math.min(rect1.x, rect2.x)\n    rect.y = math.min(rect1.y, rect2.y)\n    rect.width = math.max(rect1.x + rect1.width, rect2.x + rect2.width) - rect.x\n    rect.height = math.max(rect1.y + rect1.height, rect2.y + rect2.height) - rect.y\n    return rect\nend\n\nfunction cc.rectIntersection( rect1, rect2 )\n    local intersection = cc.rect(\n        math.max(rect1.x, rect2.x),\n        math.max(rect1.y, rect2.y),\n        0, 0)\n\n    intersection.width = math.min(rect1.x + rect1.width, rect2.x + rect2.width) - intersection.x\n    intersection.height = math.min(rect1.y + rect1.height, rect2.y + rect2.height) - intersection.y\n    return intersection\nend\n\n--Color3B\nfunction cc.c3b( _r,_g,_b )\n    return { r = _r, g = _g, b = _b }\nend\n\n--Color4B\nfunction cc.c4b( _r,_g,_b,_a )\n    return { r = _r, g = _g, b = _b, a = _a }\nend\n\n--Color4F\nfunction cc.c4f( _r,_g,_b,_a )\n    return { r = _r, g = _g, b = _b, a = _a }\nend\n\nfunction cc.c4bFromc3b(c)\n    return { r = c.r, g = c.g, b = c.b, a = 255 }\nend\n\nfunction cc.c4bFromc4f(c)\n    return { r = c.r * 255, g = c.g * 255, b = c.b * 255, a = c.a * 255 }\nend\n\nfunction cc.c4fFromc3b(c)\n    return { r = c.r / 255, g = c.g / 255, b = c.b / 255, a = 1.0 }\nend\n\nfunction cc.c4fFromc4b(c)\n    return { r = c.r / 255, g = c.g / 255, b = c.b / 255, a = c.a / 255 }\nend\n\n--Vertex2F\nfunction cc.vertex2F(_x,_y)\n    return { x = _x, y = _y }\nend\n\n--Vertex3F\nfunction cc.Vertex3F(_x,_y,_z)\n    return { x = _x, y = _y, z = _z }\nend\n\n--Tex2F\nfunction cc.tex2F(_u,_v)\n    return { u = _u, v = _v }\nend\n\n--PointSprite\nfunction cc.PointSprite(_pos,_color,_size)\n    return { pos = _pos, color = _color, size = _size }\nend\n\n--Quad2\nfunction cc.Quad2(_tl,_tr,_bl,_br)\n    return { tl = _tl, tr = _tr, bl = _bl, br = _br }\nend\n\n--Quad3\nfunction cc.Quad3(_tl, _tr, _bl, _br)\n    return { tl = _tl, tr = _tr, bl = _bl, br = _br }\nend\n\n--V2F_C4B_T2F\nfunction cc.V2F_C4B_T2F(_vertices, _colors, _texCoords)\n    return { vertices = _vertices, colors = _colors, texCoords = _texCoords }\nend\n\n--V2F_C4F_T2F\nfunction cc.V2F_C4F_T2F(_vertices, _colors, _texCoords)\n    return { vertices = _vertices, colors = _colors, texCoords = _texCoords }\nend\n\n--V3F_C4B_T2F\nfunction cc.V3F_C4B_T2F(_vertices, _colors, _texCoords)\n    return { vertices = _vertices, colors = _colors, texCoords = _texCoords }\nend\n\n--V2F_C4B_T2F_Quad\nfunction cc.V2F_C4B_T2F_Quad(_bl, _br, _tl, _tr)\n    return { bl = _bl, br = _br, tl = _tl, tr = _tr }\nend\n\n--V3F_C4B_T2F_Quad\nfunction cc.V3F_C4B_T2F_Quad(_tl, _bl, _tr, _br)\n    return { tl = _tl, bl = _bl, tr = _tr, br = _br }\nend\n\n--V2F_C4F_T2F_Quad\nfunction cc.V2F_C4F_T2F_Quad(_bl, _br, _tl, _tr)\n    return { bl = _bl, br = _br, tl = _tl, tr = _tr }\nend\n\n--T2F_Quad\nfunction cc.T2F_Quad(_bl, _br, _tl, _tr)\n    return { bl = _bl, br = _br, tl = _tl, tr = _tr }\nend\n\n--AnimationFrameData\nfunction cc.AnimationFrameData( _texCoords, _delay, _size)\n    return { texCoords = _texCoords, delay = _delay, size = _size }\nend\n\n--PhysicsMaterial\nfunction cc.PhysicsMaterial(_density, _restitution, _friction)\n\treturn { density = _density, restitution = _restitution, friction = _friction }\nend\n\nlocal ConfigType =\n{\n    NONE = 0,\n    COCOSTUDIO = 1,\n}\n\nfunction __onParseConfig(configType,jasonStr)\n    if configType == ConfigType.COCOSTUDIO then\n        ccs.TriggerMng.getInstance():parse(jasonStr)\n    end\nend\n"
  },
  {
    "path": "源代码/mir9/src/framework/cocos2dx/Cocos2dConstants.lua",
    "content": "\ncc = cc or {}\n\ncc.SPRITE_INDEX_NOT_INITIALIZED = 0xffffffff\ncc.TMX_ORIENTATION_HEX  = 0x1\ncc.TMX_ORIENTATION_ISO  = 0x2\ncc.TMX_ORIENTATION_ORTHO    = 0x0\ncc.Z_COMPRESSION_BZIP2  = 0x1\ncc.Z_COMPRESSION_GZIP   = 0x2\ncc.Z_COMPRESSION_NONE   = 0x3\ncc.Z_COMPRESSION_ZLIB   = 0x0\ncc.BLEND_DST    = 0x303\ncc.BLEND_SRC    = 0x1\ncc.DIRECTOR_IOS_USE_BACKGROUND_THREAD   = 0x0\ncc.DIRECTOR_MAC_THREAD  = 0x0\ncc.DIRECTOR_STATS_INTERVAL  = 0.1\ncc.ENABLE_BOX2_D_INTEGRATION    = 0x0\ncc.ENABLE_DEPRECATED    = 0x1\ncc.ENABLE_GL_STATE_CACHE    = 0x1\ncc.ENABLE_PROFILERS = 0x0\ncc.ENABLE_STACKABLE_ACTIONS = 0x1\ncc.FIX_ARTIFACTS_BY_STRECHING_TEXEL = 0x0\ncc.GL_ALL   = 0x0\ncc.LABELATLAS_DEBUG_DRAW    = 0x0\ncc.LABELBMFONT_DEBUG_DRAW   = 0x0\ncc.MAC_USE_DISPLAY_LINK_THREAD  = 0x0\ncc.MAC_USE_MAIN_THREAD  = 0x2\ncc.MAC_USE_OWN_THREAD   = 0x1\ncc.NODE_RENDER_SUBPIXEL = 0x1\ncc.PVRMIPMAP_MAX    = 0x10\ncc.SPRITEBATCHNODE_RENDER_SUBPIXEL  = 0x1\ncc.SPRITE_DEBUG_DRAW    = 0x0\ncc.TEXTURE_ATLAS_USE_TRIANGLE_STRIP = 0x0\ncc.TEXTURE_ATLAS_USE_VAO    = 0x1\ncc.USE_L_A88_LABELS = 0x1\ncc.ACTION_TAG_INVALID   = -1\ncc.DEVICE_MAC   = 0x6\ncc.DEVICE_MAC_RETINA_DISPLAY    = 0x7\ncc.DEVICEI_PAD  = 0x4\ncc.DEVICEI_PAD_RETINA_DISPLAY   = 0x5\ncc.DEVICEI_PHONE    = 0x0\ncc.DEVICEI_PHONE5   = 0x2\ncc.DEVICEI_PHONE5_RETINA_DISPLAY    = 0x3\ncc.DEVICEI_PHONE_RETINA_DISPLAY = 0x1\ncc.DIRECTOR_PROJECTION2_D   = 0x0\ncc.DIRECTOR_PROJECTION3_D   = 0x1\ncc.DIRECTOR_PROJECTION_CUSTOM   = 0x2\ncc.DIRECTOR_PROJECTION_DEFAULT  = 0x1\ncc.FILE_UTILS_SEARCH_DIRECTORY_MODE = 0x1\ncc.FILE_UTILS_SEARCH_SUFFIX_MODE    = 0x0\ncc.FLIPED_ALL   = 0xe0000000\ncc.FLIPPED_MASK = 0x1fffffff\ncc.IMAGE_FORMAT_JPEG    = 0x0\ncc.IMAGE_FORMAT_PNG = 0x1\ncc.ITEM_SIZE    = 0x20\ncc.LABEL_AUTOMATIC_WIDTH    = -1\ncc.LINE_BREAK_MODE_CHARACTER_WRAP   = 0x1\ncc.LINE_BREAK_MODE_CLIP = 0x2\ncc.LINE_BREAK_MODE_HEAD_TRUNCATION  = 0x3\ncc.LINE_BREAK_MODE_MIDDLE_TRUNCATION    = 0x5\ncc.LINE_BREAK_MODE_TAIL_TRUNCATION  = 0x4\ncc.LINE_BREAK_MODE_WORD_WRAP    = 0x0\ncc.MAC_VERSION_10_6 = 0xa060000\ncc.MAC_VERSION_10_7 = 0xa070000\ncc.MAC_VERSION_10_8 = 0xa080000\ncc.MENU_HANDLER_PRIORITY    = -128\ncc.MENU_STATE_TRACKING_TOUCH    = 0x1\ncc.MENU_STATE_WAITING   = 0x0\ncc.NODE_TAG_INVALID = -1\ncc.PARTICLE_DURATION_INFINITY   = -1\ncc.PARTICLE_MODE_GRAVITY    = 0x0\ncc.PARTICLE_MODE_RADIUS = 0x1\ncc.PARTICLE_START_RADIUS_EQUAL_TO_END_RADIUS    = -1\ncc.PARTICLE_START_SIZE_EQUAL_TO_END_SIZE    = -1\ncc.POSITION_TYPE_FREE   = 0x0\ncc.POSITION_TYPE_GROUPED    = 0x2\ncc.POSITION_TYPE_RELATIVE   = 0x1\ncc.PRIORITY_NON_SYSTEM_MIN  = -2147483647\ncc.PRIORITY_SYSTEM  = -2147483648\ncc.PROGRESS_TIMER_TYPE_BAR  = 0x1\ncc.PROGRESS_TIMER_TYPE_RADIAL   = 0x0\ncc.REPEAT_FOREVER   = 0xfffffffe\ncc.RESOLUTION_MAC   = 0x1\ncc.RESOLUTION_MAC_RETINA_DISPLAY    = 0x2\ncc.RESOLUTION_UNKNOWN   = 0x0\ncc.TMX_TILE_DIAGONAL_FLAG   = 0x20000000\ncc.TMX_TILE_HORIZONTAL_FLAG = 0x80000000\ncc.TMX_TILE_VERTICAL_FLAG   = 0x40000000\ncc.TEXT_ALIGNMENT_CENTER    = 0x1\ncc.TEXT_ALIGNMENT_LEFT  = 0x0\ncc.TEXT_ALIGNMENT_RIGHT = 0x2\n\ncc.TEXTURE2D_PIXEL_FORMAT_AUTO      = 0x0\ncc.TEXTURE2D_PIXEL_FORMAT_BGRA8888  = 0x1\ncc.TEXTURE2D_PIXEL_FORMAT_RGBA8888  = 0x2\ncc.TEXTURE2D_PIXEL_FORMAT_RGB888    = 0x3\ncc.TEXTURE2D_PIXEL_FORMAT_RGB565    = 0x4\ncc.TEXTURE2D_PIXEL_FORMAT_A8        = 0x5\ncc.TEXTURE2D_PIXEL_FORMAT_I8        = 0x6\ncc.TEXTURE2D_PIXEL_FORMAT_AI88      = 0x7\ncc.TEXTURE2D_PIXEL_FORMAT_RGBA4444  = 0x8\ncc.TEXTURE2D_PIXEL_FORMAT_RGB5A1    = 0x9\ncc.TEXTURE2D_PIXEL_FORMAT_PVRTC4    = 0xa\ncc.TEXTURE2D_PIXEL_FORMAT_PVRTC4A   = 0xb\ncc.TEXTURE2D_PIXEL_FORMAT_PVRTC2    = 0xc\ncc.TEXTURE2D_PIXEL_FORMAT_PVRTC2A   = 0xd\ncc.TEXTURE2D_PIXEL_FORMAT_ETC       = 0xe\ncc.TEXTURE2D_PIXEL_FORMAT_S3TC_DXT1 = 0xf\ncc.TEXTURE2D_PIXEL_FORMAT_S3TC_DXT3 = 0x10\ncc.TEXTURE2D_PIXEL_FORMAT_S3TC_DXT5 = 0x11\ncc.TEXTURE2D_PIXEL_FORMAT_DEFAULT   = 0x0\n\ncc.TOUCHES_ALL_AT_ONCE  = 0x0\ncc.TOUCHES_ONE_BY_ONE   = 0x1\ncc.TRANSITION_ORIENTATION_DOWN_OVER = 0x1\ncc.TRANSITION_ORIENTATION_LEFT_OVER = 0x0\ncc.TRANSITION_ORIENTATION_RIGHT_OVER    = 0x1\ncc.TRANSITION_ORIENTATION_UP_OVER   = 0x0\ncc.UNIFORM_COS_TIME = 0x5\ncc.UNIFORM_MV_MATRIX    = 0x1\ncc.UNIFORM_MVP_MATRIX   = 0x2\ncc.UNIFORM_P_MATRIX = 0x0\ncc.UNIFORM_RANDOM01 = 0x6\ncc.UNIFORM_SAMPLER  = 0x7\ncc.UNIFORM_SIN_TIME = 0x4\ncc.UNIFORM_TIME = 0x3\ncc.UNIFORM_MAX  = 0x8\ncc.VERTEX_ATTRIB_FLAG_COLOR = 0x2\ncc.VERTEX_ATTRIB_FLAG_NONE  = 0x0\ncc.VERTEX_ATTRIB_FLAG_POS_COLOR_TEX = 0x7\ncc.VERTEX_ATTRIB_FLAG_POSITION  = 0x1\ncc.VERTEX_ATTRIB_FLAG_TEX_COORDS    = 0x4\ncc.VERTEX_ATTRIB_COLOR  = 0x1\ncc.VERTEX_ATTRIB_MAX    = 0x3\ncc.VERTEX_ATTRIB_POSITION   = 0x0\ncc.VERTEX_ATTRIB_TEX_COORD = 0x2\n\ncc.VERTEX_ATTRIB_TEX_COORDS = 0x2\ncc.VERTICAL_TEXT_ALIGNMENT_BOTTOM   = 0x2\ncc.VERTICAL_TEXT_ALIGNMENT_CENTER   = 0x1\ncc.VERTICAL_TEXT_ALIGNMENT_TOP  = 0x0\ncc.OS_VERSION_4_0   = 0x4000000\ncc.OS_VERSION_4_0_1 = 0x4000100\ncc.OS_VERSION_4_1   = 0x4010000\ncc.OS_VERSION_4_2   = 0x4020000\ncc.OS_VERSION_4_2_1 = 0x4020100\ncc.OS_VERSION_4_3   = 0x4030000\ncc.OS_VERSION_4_3_1 = 0x4030100\ncc.OS_VERSION_4_3_2 = 0x4030200\ncc.OS_VERSION_4_3_3 = 0x4030300\ncc.OS_VERSION_4_3_4 = 0x4030400\ncc.OS_VERSION_4_3_5 = 0x4030500\ncc.OS_VERSION_5_0   = 0x5000000\ncc.OS_VERSION_5_0_1 = 0x5000100\ncc.OS_VERSION_5_1_0 = 0x5010000\ncc.OS_VERSION_6_0_0 = 0x6000000\ncc.ANIMATION_FRAME_DISPLAYED_NOTIFICATION   = 'CCAnimationFrameDisplayedNotification'\ncc.CHIPMUNK_IMPORT  = 'chipmunk.h'\ncc.ATTRIBUTE_NAME_COLOR = 'a_color'\ncc.ATTRIBUTE_NAME_POSITION  = 'a_position'\ncc.ATTRIBUTE_NAME_TEX_COORD = 'a_texCoord'\ncc.SHADER_POSITION_COLOR    = 'ShaderPositionColor'\ncc.SHADER_POSITION_LENGTH_TEXURE_COLOR  = 'ShaderPositionLengthTextureColor'\ncc.SHADER_POSITION_TEXTURE  = 'ShaderPositionTexture'\ncc.SHADER_POSITION_TEXTURE_A8_COLOR = 'ShaderPositionTextureA8Color'\ncc.SHADER_POSITION_TEXTURE_COLOR    = 'ShaderPositionTextureColor'\ncc.SHADER_POSITION_TEXTURE_COLOR_ALPHA_TEST = 'ShaderPositionTextureColorAlphaTest'\ncc.SHADER_POSITION_TEXTURE_U_COLOR  = 'ShaderPositionTexture_uColor'\ncc.SHADER_POSITION_U_COLOR  = 'ShaderPosition_uColor'\ncc.UNIFORM_ALPHA_TEST_VALUE_S   = 'CC_AlphaValue'\ncc.UNIFORM_COS_TIME_S   = 'CC_CosTime'\ncc.UNIFORM_MV_MATRIX_S  = 'CC_MVMatrix'\ncc.UNIFORM_MVP_MATRIX_S = 'CC_MVPMatrix'\ncc.UNIFORM_P_MATRIX_S   = 'CC_PMatrix'\ncc.UNIFORM_RANDOM01_S   = 'CC_Random01'\ncc.UNIFORM_SAMPLER_S    = 'CC_Texture0'\ncc.UNIFORM_SIN_TIME_S   = 'CC_SinTime'\ncc.UNIFORM_TIME_S   = 'CC_Time'\n\ncc.PLATFORM_OS_WINDOWS = 0\ncc.PLATFORM_OS_LINUX   = 1\ncc.PLATFORM_OS_MAC     = 2\ncc.PLATFORM_OS_ANDROID = 3\ncc.PLATFORM_OS_IPHONE  = 4\ncc.PLATFORM_OS_IPAD    = 5\ncc.PLATFORM_OS_BLACKBERRY = 6\ncc.PLATFORM_OS_NACL    = 7\ncc.PLATFORM_OS_EMSCRIPTEN = 8\ncc.PLATFORM_OS_TIZEN   = 9\ncc.PLATFORM_OS_WINRT   = 10\ncc.PLATFORM_OS_WP8     = 11\n\ncc.SCROLLVIEW_SCRIPT_SCROLL = 0\ncc.SCROLLVIEW_SCRIPT_ZOOM   = 1\ncc.TABLECELL_TOUCHED        = 2\ncc.TABLECELL_HIGH_LIGHT     = 3\ncc.TABLECELL_UNHIGH_LIGHT   = 4\ncc.TABLECELL_WILL_RECYCLE   = 5\ncc.TABLECELL_SIZE_FOR_INDEX = 6\ncc.TABLECELL_SIZE_AT_INDEX  = 7\ncc.NUMBER_OF_CELLS_IN_TABLEVIEW = 8\n\ncc.SCROLLVIEW_DIRECTION_NONE = -1\ncc.SCROLLVIEW_DIRECTION_HORIZONTAL = 0\ncc.SCROLLVIEW_DIRECTION_VERTICAL = 1\ncc.SCROLLVIEW_DIRECTION_BOTH  = 2\n\ncc.CONTROL_EVENTTYPE_TOUCH_DOWN = 1\ncc.CONTROL_EVENTTYPE_DRAG_INSIDE = 2\ncc.CONTROL_EVENTTYPE_DRAG_OUTSIDE = 4\ncc.CONTROL_EVENTTYPE_DRAG_ENTER = 8\ncc.CONTROL_EVENTTYPE_DRAG_EXIT = 16\ncc.CONTROL_EVENTTYPE_TOUCH_UP_INSIDE = 32\ncc.CONTROL_EVENTTYPE_TOUCH_UP_OUTSIDE = 64\ncc.CONTROL_EVENTTYPE_TOUCH_CANCEL    = 128\ncc.CONTROL_EVENTTYPE_VALUE_CHANGED   = 256\n\ncc.CONTROL_STATE_NORMAL  = 1\ncc.CONTROL_STATE_HIGH_LIGHTED = 2\ncc.CONTROL_STATE_DISABLED = 4\ncc.CONTROL_STATE_SELECTED = 8\n\n\ncc.KEYBOARD_RETURNTYPE_DEFAULT = 0\ncc.KEYBOARD_RETURNTYPE_DONE = 1\ncc.KEYBOARD_RETURNTYPE_SEND = 2\ncc.KEYBOARD_RETURNTYPE_SEARCH = 3\ncc.KEYBOARD_RETURNTYPE_GO = 4\n\n\ncc.EDITBOX_INPUT_MODE_ANY = 0\ncc.EDITBOX_INPUT_MODE_EMAILADDR = 1\ncc.EDITBOX_INPUT_MODE_NUMERIC = 2\ncc.EDITBOX_INPUT_MODE_PHONENUMBER = 3\ncc.EDITBOX_INPUT_MODE_URL = 4\ncc.EDITBOX_INPUT_MODE_DECIMAL = 5\ncc.EDITBOX_INPUT_MODE_SINGLELINE = 6\n\n\ncc.EDITBOX_INPUT_FLAG_PASSWORD = 0\ncc.EDITBOX_INPUT_FLAG_SENSITIVE = 1\ncc.EDITBOX_INPUT_FLAG_INITIAL_CAPS_WORD = 2\ncc.EDITBOX_INPUT_FLAG_INITIAL_CAPS_SENTENCE = 3\ncc.EDITBOX_INPUT_FLAG_INITIAL_CAPS_ALL_CHARACTERS = 4\n\ncc.LANGUAGE_ENGLISH    = 0\ncc.LANGUAGE_CHINESE    = 1\ncc.LANGUAGE_FRENCH     = 2\ncc.LANGUAGE_ITALIAN    = 3\ncc.LANGUAGE_GERMAN     = 4\ncc.LANGUAGE_SPANISH    = 5\ncc.LANGUAGE_RUSSIAN    = 6\ncc.LANGUAGE_KOREAN     = 7\ncc.LANGUAGE_JAPANESE   = 8\ncc.LANGUAGE_HUNGARIAN  = 9\ncc.LANGUAGE_PORTUGUESE = 10\ncc.LANGUAGE_ARABIC     = 11\n\ncc.NODE_ON_ENTER       = 0\ncc.NODE_ON_EXIT        = 1\ncc.NODE_ON_ENTER_TRANSITION_DID_FINISH = 2\ncc.NODE_ON_EXIT_TRANSITION_DID_START   = 3\ncc.NODE_ON_CLEAN_UP    = 4\n\ncc.CONTROL_STEPPER_PART_MINUS = 0\ncc.CONTROL_STEPPER_PART_PLUS  = 1\ncc.CONTROL_STEPPER_PART_NONE  = 2\n\ncc.TABLEVIEW_FILL_TOPDOWN = 0\ncc.TABLEVIEW_FILL_BOTTOMUP = 1\n\ncc.WEBSOCKET_OPEN     = 0\ncc.WEBSOCKET_MESSAGE  = 1\ncc.WEBSOCKET_CLOSE    = 2\ncc.WEBSOCKET_ERROR    = 3\n\ncc.WEBSOCKET_STATE_CONNECTING = 0\ncc.WEBSOCKET_STATE_OPEN       = 1\ncc.WEBSOCKET_STATE_CLOSING    = 2\ncc.WEBSOCKET_STATE_CLOSED     = 3\n\n\ncc.XMLHTTPREQUEST_RESPONSE_STRING = 0\ncc.XMLHTTPREQUEST_RESPONSE_ARRAY_BUFFER = 1\ncc.XMLHTTPREQUEST_RESPONSE_BLOB   = 2\ncc.XMLHTTPREQUEST_RESPONSE_DOCUMENT = 3\ncc.XMLHTTPREQUEST_RESPONSE_JSON = 4\n\ncc.ASSETSMANAGER_CREATE_FILE  = 0\ncc.ASSETSMANAGER_NETWORK = 1\ncc.ASSETSMANAGER_NO_NEW_VERSION = 2\ncc.ASSETSMANAGER_UNCOMPRESS     = 3\n\ncc.ASSETSMANAGER_PROTOCOL_PROGRESS =  0\ncc.ASSETSMANAGER_PROTOCOL_SUCCESS  =  1\ncc.ASSETSMANAGER_PROTOCOL_ERROR    =  2\n\ncc.Handler = cc.Handler or {}\ncc.Handler.NODE            = 0\ncc.Handler.MENU_CLICKED    = 1\ncc.Handler.CALLFUNC        = 2\ncc.Handler.SCHEDULE        = 3\ncc.Handler.TOUCHES         = 4\ncc.Handler.KEYPAD          = 5\ncc.Handler.ACCELEROMETER   = 6\ncc.Handler.CONTROL_TOUCH_DOWN = 7\ncc.Handler.CONTROL_TOUCH_DRAG_INSIDE = 8\ncc.Handler.CONTROL_TOUCH_DRAG_OUTSIDE = 9\ncc.Handler.CONTROL_TOUCH_DRAG_ENTER = 10\ncc.Handler.CONTROL_TOUCH_DRAG_EXIT  = 11\ncc.Handler.CONTROL_TOUCH_UP_INSIDE  = 12\ncc.Handler.CONTROL_TOUCH_UP_OUTSIDE = 13\ncc.Handler.CONTROL_TOUCH_UP_CANCEL  = 14\ncc.Handler.CONTROL_VALUE_CHANGED    = 15\ncc.Handler.WEBSOCKET_OPEN           = 16\ncc.Handler.WEBSOCKET_MESSAGE        = 17\ncc.Handler.WEBSOCKET_CLOSE          = 18\ncc.Handler.WEBSOCKET_ERROR          = 19\ncc.Handler.GL_NODE_DRAW             = 20\ncc.Handler.SCROLLVIEW_SCROLL        = 21\ncc.Handler.SCROLLVIEW_ZOOM          = 22\ncc.Handler.TABLECELL_TOUCHED        = 23\ncc.Handler.TABLECELL_HIGHLIGHT      = 24\ncc.Handler.TABLECELL_UNHIGHLIGHT    = 25\ncc.Handler.TABLECELL_WILL_RECYCLE   = 26\ncc.Handler.TABLECELL_SIZE_FOR_INDEX = 27\ncc.Handler.TABLECELL_AT_INDEX       = 28\ncc.Handler.TABLEVIEW_NUMS_OF_CELLS  = 29\ncc.Handler.HTTPREQUEST_STATE_CHANGE = 30\ncc.Handler.ASSETSMANAGER_PROGRESS = 31\ncc.Handler.ASSETSMANAGER_SUCCESS  = 32\ncc.Handler.ASSETSMANAGER_ERROR    = 33\ncc.Handler.STUDIO_EVENT_LISTENER  = 34\ncc.Handler.ARMATURE_EVENT         = 35\ncc.Handler.EVENT_ACC              = 36\ncc.Handler.EVENT_CUSTIOM          = 37\ncc.Handler.EVENT_KEYBOARD_PRESSED = 38\ncc.Handler.EVENT_KEYBOARD_RELEASED = 39\ncc.Handler.EVENT_TOUCH_BEGAN      = 40\ncc.Handler.EVENT_TOUCH_MOVED      = 41\ncc.Handler.EVENT_TOUCH_ENDED      = 42\ncc.Handler.EVENT_TOUCH_CANCELLED  = 43\ncc.Handler.EVENT_TOUCHES_BEGAN    = 44\ncc.Handler.EVENT_TOUCHES_MOVED    = 45\ncc.Handler.EVENT_TOUCHES_ENDED    = 46\ncc.Handler.EVENT_TOUCHES_CANCELLED = 47\ncc.Handler.EVENT_MOUSE_DOWN       = 48\ncc.Handler.EVENT_MOUSE_UP         = 49\ncc.Handler.EVENT_MOUSE_MOVE       = 50\ncc.Handler.EVENT_MOUSE_SCROLL     = 51\ncc.Handler.EVENT_SPINE            = 52\ncc.Handler.EVENT_PHYSICS_CONTACT_BEGIN = 53\ncc.Handler.EVENT_PHYSICS_CONTACT_PRESOLVE = 54\ncc.Handler.EVENT_PHYSICS_CONTACT_POSTSOLVE = 55\ncc.Handler.EVENT_PHYSICS_CONTACT_SEPERATE = 56\n\ncc.EVENT_UNKNOWN = 0\ncc.EVENT_TOUCH_ONE_BY_ONE      = 1\ncc.EVENT_TOUCH_ALL_AT_ONCE     = 2\ncc.EVENT_KEYBOARD              = 3\ncc.EVENT_MOUSE                 = 4\ncc.EVENT_ACCELERATION          = 5\ncc.EVENT_CUSTOM                = 6\n\ncc.PHYSICSSHAPE_MATERIAL_DEFAULT = {density = 0.0, restitution = 0.5, friction = 0.5}\ncc.PHYSICSBODY_MATERIAL_DEFAULT = {density = 0.1, restitution = 0.5, friction = 0.5}\ncc.GLYPHCOLLECTION_DYNAMIC = 0\ncc.GLYPHCOLLECTION_NEHE    = 1\ncc.GLYPHCOLLECTION_ASCII   = 2\ncc.GLYPHCOLLECTION_CUSTOM  = 3\n\ncc.ResolutionPolicy = {\n    EXACT_FIT = 0,\n    NO_BORDER = 1,\n    SHOW_ALL  = 2,\n    FIXED_HEIGHT  = 3,\n    FIXED_WIDTH  = 4,\n    FILL_ALL = 5,\n    UNKNOWN  = 6,\n}\n\ncc.LabelEffect = {\n    NORMAL  = 0,\n    OUTLINE = 1,\n    SHADOW  = 2,\n    GLOW    = 3,\n}\n\ncc.KeyCode = {\n    KEY_NONE              = 0,\n    KEY_PAUSE             = 0x0013,\n    KEY_SCROLL_LOCK       = 0x1014,\n    KEY_PRINT             = 0x1061,\n    KEY_SYSREQ            = 0x106A,\n    KEY_BREAK             = 0x106B,\n    KEY_ESCAPE            = 0x001B,\n    KEY_BACKSPACE         = 0x0008,\n    KEY_TAB               = 0x0009,\n    KEY_BACK_TAB          = 0x0089,\n    KEY_RETURN            = 0x000D,\n    KEY_CAPS_LOCK         = 0x00E5,\n    KEY_SHIFT             = 0x00E1,\n    KEY_CTRL              = 0x00E3,\n    KEY_ALT               = 0x00E9,\n    KEY_MENU              = 0x1067,\n    KEY_HYPER             = 0x10ED,\n    KEY_INSERT            = 0x1063,\n    KEY_HOME              = 0x1050,\n    KEY_PG_UP             = 0x1055,\n    KEY_DELETE            = 0x10FF,\n    KEY_END               = 0x1057,\n    KEY_PG_DOWN           = 0x1056,\n    KEY_LEFT_ARROW        = 0x1051,\n    KEY_RIGHT_ARROW       = 0x1053,\n    KEY_UP_ARROW          = 0x1052,\n    KEY_DOWN_ARROW        = 0x1054,\n    KEY_NUM_LOCK          = 0x107F,\n    KEY_KP_PLUS           = 0x10AB,\n    KEY_KP_MINUS          = 0x10AD,\n    KEY_KP_MULTIPLY       = 0x10AA,\n    KEY_KP_DIVIDE         = 0x10AF,\n    KEY_KP_ENTER          = 0x108D,\n    KEY_KP_HOME           = 0x10B7,\n    KEY_KP_UP             = 0x10B8,\n    KEY_KP_PG_UP          = 0x10B9,\n    KEY_KP_LEFT           = 0x10B4,\n    KEY_KP_FIVE           = 0x10B5,\n    KEY_KP_RIGHT          = 0x10B6,\n    KEY_KP_END            = 0x10B1,\n    KEY_KP_DOWN           = 0x10B2,\n    KEY_KP_PG_DOWN        = 0x10B3,\n    KEY_KP_INSERT         = 0x10B0,\n    KEY_KP_DELETE         = 0x10AE,\n    KEY_F1                = 0x00BE,\n    KEY_F2                = 0x00BF,\n    KEY_F3                = 0x00C0,\n    KEY_F4                = 0x00C1,\n    KEY_F5                = 0x00C2,\n    KEY_F6                = 0x00C3,\n    KEY_F7                = 0x00C4,\n    KEY_F8                = 0x00C5,\n    KEY_F9                = 0x00C6,\n    KEY_F10               = 0x00C7,\n    KEY_F11               = 0x00C8,\n    KEY_F12               = 0x00C9,\n    KEY_SPACE             = ' ',\n    KEY_EXCLAM            = '!',\n    KEY_QUOTE             = '\"',\n    KEY_NUMBER            = '#',\n    KEY_DOLLAR            = '$',\n    KEY_PERCENT           = '%',\n    KEY_CIRCUMFLEX        = '^',\n    KEY_AMPERSAND         = '&',\n    KEY_APOSTROPHE        = '\\'',\n    KEY_LEFT_PARENTHESIS  = '(',\n    KEY_RIGHT_PARENTHESIS = ')',\n    KEY_ASTERISK          = '*',\n    KEY_PLUS              = '+',\n    KEY_COMMA             = ',',\n    KEY_MINUS             = '-',\n    KEY_PERIOD            = '.',\n    KEY_SLASH             = '/',\n    KEY_0                 = '0',\n    KEY_1                 = '1',\n    KEY_2                 = '2',\n    KEY_3                 = '3',\n    KEY_4                 = '4',\n    KEY_5                 = '5',\n    KEY_6                 = '6',\n    KEY_7                 = '7',\n    KEY_8                 = '8',\n    KEY_9                 = '9',\n    KEY_COLON             = ':',\n    KEY_SEMICOLON         = ';',\n    KEY_LESS_THAN         = '<',\n    KEY_EQUAL             = '=',\n    KEY_GREATER_THAN      = '>',\n    KEY_QUESTION          = '?',\n    KEY_AT                = '@',\n    KEY_CAPITAL_A         = 'A',\n    KEY_CAPITAL_B         = 'B',\n    KEY_CAPITAL_C         = 'C',\n    KEY_CAPITAL_D         = 'D',\n    KEY_CAPITAL_E         = 'E',\n    KEY_CAPITAL_F         = 'F',\n    KEY_CAPITAL_G         = 'G',\n    KEY_CAPITAL_H         = 'H',\n    KEY_CAPITAL_I         = 'I',\n    KEY_CAPITAL_J         = 'J',\n    KEY_CAPITAL_K         = 'K',\n    KEY_CAPITAL_L         = 'L',\n    KEY_CAPITAL_M         = 'M',\n    KEY_CAPITAL_N         = 'N',\n    KEY_CAPITAL_O         = 'O',\n    KEY_CAPITAL_P         = 'P',\n    KEY_CAPITAL_Q         = 'Q',\n    KEY_CAPITAL_R         = 'R',\n    KEY_CAPITAL_S         = 'S',\n    KEY_CAPITAL_T         = 'T',\n    KEY_CAPITAL_U         = 'U',\n    KEY_CAPITAL_V         = 'V',\n    KEY_CAPITAL_W         = 'W',\n    KEY_CAPITAL_X         = 'X',\n    KEY_CAPITAL_Y         = 'Y',\n    KEY_CAPITAL_Z         = 'Z',\n    KEY_LEFT_BRACKET      = '[',\n    KEY_BACK_SLASH        = '\\\\',\n    KEY_RIGHT_BRACKET     = ']',\n    KEY_UNDERSCORE        = '_',\n    KEY_GRAVE             = '`',\n    KEY_A                 = 'a',\n    KEY_B                 = 'b',\n    KEY_C                 = 'c',\n    KEY_D                 = 'd',\n    KEY_E                 = 'e',\n    KEY_F                 = 'f',\n    KEY_G                 = 'g',\n    KEY_H                 = 'h',\n    KEY_I                 = 'i',\n    KEY_J                 = 'j',\n    KEY_K                 = 'k',\n    KEY_L                 = 'l',\n    KEY_M                 = 'm',\n    KEY_N                 = 'n',\n    KEY_O                 = 'o',\n    KEY_P                 = 'p',\n    KEY_Q                 = 'q',\n    KEY_R                 = 'r',\n    KEY_S                 = 's',\n    KEY_T                 = 't',\n    KEY_U                 = 'u',\n    KEY_V                 = 'v',\n    KEY_W                 = 'w',\n    KEY_X                 = 'x',\n    KEY_Y                 = 'y',\n    KEY_Z                 = 'z',\n    KEY_LEFT_BRACE        = '{',\n    KEY_BAR               = '|',\n    KEY_RIGHT_BRACE       = '}',\n    KEY_TILDE             = '~',\n    KEY_EURO              = 0x20AC,\n    KEY_POUND             = 0x00A3,\n    KEY_YEN               = 0x00A5,\n    KEY_MIDDLE_DOT        = 0x0095,\n    KEY_SEARCH            = 0xFFAA,\n};\n"
  },
  {
    "path": "源代码/mir9/src/framework/cocos2dx/DrawNodeEx.lua",
    "content": "--[[\n\nCopyright (c) 2011-2014 chukong-inc.com\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in\nall copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\nTHE SOFTWARE.\n\n]]\n\n--[[--\n\n]]\n\nlocal c = cc\nlocal DrawNode = c.DrawNode\n\nlocal drawPolygon = DrawNode.drawPolygon\nfunction DrawNode:drawPolygon(points, params)\n    local segments = #points\n    fillColor = cc.c4f(1,1,1,1)\n    borderWidth  = 0\n    borderColor  = cc.c4f(0,0,0,1)\n    if params then\n        if params.fillColor then fillColor = params.fillColor end\n        if params.borderWidth then borderWidth = params.borderWidth end\n        if params.borderColor then borderColor = params.borderColor end\n    end\n    drawPolygon(self, points, #points, fillColor, borderWidth, borderColor)\n    return self\nend\n\nlocal drawDot = DrawNode.drawDot\nfunction DrawNode:drawDot(point, radius, color)\n    drawDot(self, point, radius, color)\n    return self\nend\n"
  },
  {
    "path": "源代码/mir9/src/framework/cocos2dx/Event.lua",
    "content": "--[[\n\nCopyright (c) 2011-2014 chukong-inc.com\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in\nall copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\nTHE SOFTWARE.\n\n]]\n\n--[[--\n\n定义 cocos2dx 中的事件\n\n]]\n\nlocal c = cc\n\n-- cocos2dx 引擎级事件\nc.NODE_EVENT                 = 0\nc.NODE_ENTER_FRAME_EVENT     = 1\nc.NODE_TOUCH_EVENT           = 2\nc.NODE_TOUCH_CAPTURE_EVENT   = 3\nc.MENU_ITEM_CLICKED_EVENT    = 4\nc.ACCELERATE_EVENT           = 5\nc.KEYPAD_EVENT               = 6\n\nc.NODE_TOUCH_CAPTURING_PHASE = 0\nc.NODE_TOUCH_TARGETING_PHASE = 1\n"
  },
  {
    "path": "源代码/mir9/src/framework/cocos2dx/NodeEx.lua",
    "content": "--[[\n\nCopyright (c) 2011-2014 chukong-inc.com\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in\nall copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\nTHE SOFTWARE.\n\n]]\n\n--[[--\n\n针对 cc.Node 的扩展\n\n]]\n\nlocal c = cc\nlocal Node = c.Node\n\n-- touch\nc.TouchesAllAtOnce              = cc.TOUCHES_ALL_AT_ONCE\nc.TouchesOneByOne               = cc.TOUCHES_ONE_BY_ONE\nc.TOUCH_MODE_ALL_AT_ONCE        = c.TouchesAllAtOnce\nc.TOUCH_MODE_ONE_BY_ONE         = c.TouchesOneByOne\n\nlocal flagNodeTouchInCocos = false\nif Node.removeTouchEvent then flagNodeTouchInCocos = true end\n\nlocal function isPointIn( rc, pt )\n    local rect = cc.rect(rc.x, rc.y, rc.width, rc.height)\n    return cc.rectContainsPoint(rect, pt)\nend\n\nfunction Node:align(anchorPoint, x, y)\n    self:setAnchorPoint(display.ANCHOR_POINTS[anchorPoint])\n    if x and y then self:setPosition(x, y) end\n    return self\nend\n\nfunction Node:schedule(callback, interval)\n    local seq = transition.sequence({\n        cc.DelayTime:create(interval),\n        cc.CallFunc:create(callback),\n    })\n    local action = cc.RepeatForever:create(seq)\n    self:runAction(action)\n    return action\nend\n\nfunction Node:performWithDelay(callback, delay)\n    local action = transition.sequence({\n        cc.DelayTime:create(delay),\n        cc.CallFunc:create(callback),\n    })\n    self:runAction(action)\n    return action\nend\n\nfunction Node:getCascadeBoundingBox()\n    local rc\n    local func = tolua.getcfunction(self, \"getCascadeBoundingBox\")\n    if func then\n        rc = func(self)\n    end\n\n    rc.origin = {x=rc.x, y=rc.y}\n    rc.size = {width=rc.width, height=rc.height}\n    rc.containsPoint = isPointIn\n    return rc\nend\n\n--[[--\n\n测试一个点是否在当前结点区域中\n\n@param tabel point cc.p的点位置,世界坐标\n@param boolean bCascade 是否用结点的所有子结点共同区域计算还是只用本身的区域\n\n@return boolean 是否在结点区域中\n\n]]\nfunction Node:hitTest(point, bCascade)\n    local nsp = self:convertToNodeSpace(point)\n    local rect\n    if bCascade then\n        rect = self:getCascadeBoundingBox()\n    else\n        rect = self:getBoundingBox()\n    end\n\n    if cc.rectContainsPoint(rect, nsp) then\n        return true\n    end\n    return false\nend\n\nfunction Node:removeSelf()\n    self:removeFromParent(true)\nend\n\nfunction Node:onEnter()\nend\n\nfunction Node:onExit()\nend\n\nfunction Node:onEnterTransitionFinish()\nend\n\nfunction Node:onExitTransitionStart()\nend\n\nfunction Node:onCleanup()\nend\n\nfunction Node:setNodeEventEnabled(enabled, listener)\n    if enabled then\n        if self.__node_event_handle__ then\n            self:removeNodeEventListener(self.__node_event_handle__)\n            self.__node_event_handle__ = nil\n        end\n\n        if not listener then\n            listener = function(event)\n                local name = event.name\n                if name == \"enter\" then\n                    self:onEnter()\n                elseif name == \"exit\" then\n                    self:onExit()\n                elseif name == \"enterTransitionFinish\" then\n                    self:onEnterTransitionFinish()\n                elseif name == \"exitTransitionStart\" then\n                    self:onExitTransitionStart()\n                elseif name == \"cleanup\" then\n                    self:onCleanup()\n                end\n            end\n        end\n        self.__node_event_handle__ = self:addNodeEventListener(c.NODE_EVENT, listener)\n    elseif self.__node_event_handle__ then\n        self:removeNodeEventListener(self.__node_event_handle__)\n        self.__node_event_handle__ = nil\n    end\n    return self\nend\n\nfunction Node:setTouchEnabled(enable)\n    local func = tolua.getcfunction(self, \"setTouchEnabled\")\n    func(self, enable)\n    if not flagNodeTouchInCocos then\n        return\n    end\n    \n    if enable then\n        self:setBaseNodeEventListener()\n    end\nend\n\nfunction Node:setKeypadEnabled(enable)\n    if not flagNodeTouchInCocos then\n        self:setKeyboardEnabled(enable)\n        return\n    end\n    \n    _enable = self._keyboardEnabled or false\n    if enable == _enable then\n        return self\n    end\n\n    self._keyboardEnabled = enable\n\n    if self.__key_event_handle__ then\n        local eventDispatcher = self:getEventDispatcher()\n        eventDispatcher:removeEventListener(self.__key_event_handle__)\n        self.__key_event_handle__ = nil\n    end\n\n    if enable then\n        local onKeyPressed = function ( keycode, event )\n            return self:EventDispatcher(c.KEYPAD_EVENT, {keycode, event, \"Pressed\"})\n        end\n\n        local onKeyReleased = function ( keycode, event )\n            return self:EventDispatcher(c.KEYPAD_EVENT, {keycode, event, \"Released\"})\n        end\n\n        local listener = cc.EventListenerKeyboard:create()\n        listener:registerScriptHandler(onKeyPressed, cc.Handler.EVENT_KEYBOARD_PRESSED )\n        listener:registerScriptHandler(onKeyReleased, cc.Handler.EVENT_KEYBOARD_RELEASED )\n        local eventDispatcher = self:getEventDispatcher()\n        eventDispatcher:addEventListenerWithSceneGraphPriority(listener, self)\n        self.__key_event_handle__ = listener\n    end\n\n    return self\nend\n\nfunction Node:isKeypadEnabled()\n    if not flagNodeTouchInCocos then\n        return self:isKeyboardEnabled()\n    end\n    enable = self._keyboardEnabled or false\n    return enable\nend\n\nfunction Node:scheduleUpdate()\n    if not flagNodeTouchInCocos then\n        tolua.getcfunction(self, \"scheduleUpdate\")(self)\n        return\n    end\n\n    local listener = function (dt)\n        self:EventDispatcher(c.NODE_ENTER_FRAME_EVENT, dt)\n    end\n\n    self:scheduleUpdateWithPriorityLua(listener, 0) \nend\n\nfunction Node:setBaseNodeEventListener()\n    if self._baseNodeEventListener_ then return end\n    self._baseNodeEventListener_ = function(evt)\n            self:EventDispatcher(c.NODE_EVENT, evt)\n    end\n    self:registerScriptHandler(self._baseNodeEventListener_)\nend\n\nfunction Node:addNodeEventListener( evt, hdl, tag, priority )\n    if not flagNodeTouchInCocos then\n        tolua.getcfunction(self, \"addNodeEventListener\")(self, evt, hdl, tag, priority)\n        return\n    end\n\n    priority = priority or 0\n\n    if not self._scriptEventListeners_ then\n        self._scriptEventListeners_ = {}\n        self:setBaseNodeEventListener()\n    end\n    local luaListeners_ = self._scriptEventListeners_\n\n    local idx = self._nextScriptEventHandleIndex_ or 0\n    idx = idx + 1\n    self._nextScriptEventHandleIndex_ = idx\n\n    if not luaListeners_[evt] then\n        luaListeners_[evt] = {}\n    end\n    local eventListeners_ = luaListeners_[evt]\n    local lis = {\n            index_ = idx,\n            listener_ = hdl,\n            tag_ = tag,\n            priority_ = priority,\n            enable_ = true,\n            removed_ = false,\n        }\n    if evt==c.NODE_ENTER_FRAME_EVENT then\n        eventListeners_[1] = lis\n    else\n        table.insert(eventListeners_, lis)\n    end\n\n    return self._nextScriptEventHandleIndex_\nend\n\nfunction Node:removeNodeEventListener(listener)\n    if not flagNodeTouchInCocos then\n        local func = tolua.getcfunction(self, \"removeNodeEventListener\")\n        if func then return func(self, listener) end\n        return\n    end\n\n    if not self._scriptEventListeners_ then return end\n\n    for evt,liss in pairs(self._scriptEventListeners_) do\n        for i,v in ipairs(liss) do\n            if v.index_==listener then\n                table.remove(liss, i)\n                if #liss==0 then\n                    self:removeNodeEventListenersByEvent(evt)\n                end\n                return\n            end\n        end\n    end\nend\n\nfunction Node:removeNodeEventListenersByEvent( evt )\n    if not flagNodeTouchInCocos then\n        tolua.getcfunction(self, \"removeNodeEventListenersByEvent\")(self, evt)\n        return\n    end\n\n    if self._scriptEventListeners_ and self._scriptEventListeners_[evt] then\n        if evt==c.KEYPAD_EVENT then\n            self:setKeypadEnabled(false)\n        elseif evt==c.NODE_ENTER_FRAME_EVENT then\n            self:unscheduleUpdate()\n        elseif evt==c.NODE_TOUCH_EVENT then\n            self:removeTouchEvent()\n        elseif evt==c.NODE_TOUCH_CAPTURE_EVENT then\n            self:removeTouchEvent()\n        end\n\n        self._scriptEventListeners_[evt] = nil\n    end\nend\n\nfunction Node:removeAllNodeEventListeners()\n    if not flagNodeTouchInCocos then\n        tolua.getcfunction(self, \"removeAllNodeEventListeners\")(self)\n        return\n    end\n\n    self:removeNodeEventListenersByEvent(c.NODE_EVENT)\n    self:removeNodeEventListenersByEvent(c.NODE_ENTER_FRAME_EVENT)\n    self:removeNodeEventListenersByEvent(c.NODE_TOUCH_EVENT)\n    self:removeNodeEventListenersByEvent(c.NODE_TOUCH_CAPTURE_EVENT)\n    self:removeNodeEventListenersByEvent(c.KEYPAD_EVENT)\nend\n\nlocal function KeypadEventCodeConvert( code )\n    local key\n    if code==6 then\n        key = \"back\"\n    elseif code==16 then\n        key = \"menu\"\n    else\n        key = tostring(code)\n    end\n    return key\nend\n\nfunction Node:EventDispatcher( idx, data )\n    -- if idx~=1 then\n    --     print(\"-----Entry Node:EventDispatcher: \"..idx)\n    -- end\n    local obj = self\n    local flagNodeCleanup = false\n    local event\n    local touch_event = nil\n    if idx==c.NODE_EVENT then\n        event = { name=data }\n        if data==\"cleanup\" then\n            flagNodeCleanup = true\n        end\n    elseif idx==c.NODE_ENTER_FRAME_EVENT then\n        event = data\n    elseif idx==c.KEYPAD_EVENT then\n        local code = data[1]\n        -- local evt = data[2]\n        local ename = data[3]\n        if ename~='Released' then return true end\n        event = { code=code, key=KeypadEventCodeConvert(code), }\n    else\n        event = data\n        -- dump(event)\n        touch_event = event\n    end\n\n    local rnval = false\n    if idx==cc.NODE_TOUCH_CAPTURE_EVENT then\n        rnval = true\n    end\n    local flagNeedClean = false\n    local listener\n    if obj._scriptEventListeners_ then\n        listener = obj._scriptEventListeners_[idx]\n    end\n    if listener then\n        for i,v in ipairs(listener) do\n            if v.removed_ then\n                flagNeedClean = true\n            else\n                if touch_event and touch_event.name==\"began\" then\n                    v.enable_ = true\n                end\n\n                if v.enable_ then\n                    listenerRet = v.listener_(event)\n                    if not listenerRet then\n                        if idx==cc.NODE_TOUCH_CAPTURE_EVENT then\n                            local evtname  = event.name\n                            if (evtname==\"began\") or (evtname==\"moved\") then\n                                rnval = false\n                            end\n                        elseif idx==cc.NODE_TOUCH_EVENT then\n                            if event.name==\"began\" then\n                                v.enable_ = false\n                            end\n                            rnval = rnval or listenerRet\n                        else\n                            rnval = rnval or listenerRet\n                        end\n                    end \n                end\n            end\n        end\n    end\n\n    if flagNodeCleanup then\n        obj:setTouchEnabled(false)\n        obj:removeAllNodeEventListeners()\n        obj:removeTouchEvent()\n        obj:unregisterScriptHandler()\n    end\n\n    return rnval\nend"
  },
  {
    "path": "源代码/mir9/src/framework/cocos2dx/OpenglConstants.lua",
    "content": "--Encapsulate opengl constants. \ngl = gl or {} \n\ngl.GCCSO_SHADER_BINARY_FJ   = 0x9260\ngl._3DC_XY_AMD  = 0x87fa\ngl._3DC_X_AMD   = 0x87f9\ngl.ACTIVE_ATTRIBUTES    = 0x8b89\ngl.ACTIVE_ATTRIBUTE_MAX_LENGTH  = 0x8b8a\ngl.ACTIVE_PROGRAM_EXT   = 0x8259\ngl.ACTIVE_TEXTURE   = 0x84e0\ngl.ACTIVE_UNIFORMS  = 0x8b86\ngl.ACTIVE_UNIFORM_MAX_LENGTH    = 0x8b87\ngl.ALIASED_LINE_WIDTH_RANGE = 0x846e\ngl.ALIASED_POINT_SIZE_RANGE = 0x846d\ngl.ALL_COMPLETED_NV = 0x84f2\ngl.ALL_SHADER_BITS_EXT  = 0xffffffff\ngl.ALPHA    = 0x1906\ngl.ALPHA16F_EXT = 0x881c\ngl.ALPHA32F_EXT = 0x8816\ngl.ALPHA8_EXT   = 0x803c\ngl.ALPHA8_OES   = 0x803c\ngl.ALPHA_BITS   = 0xd55\ngl.ALPHA_TEST_FUNC_QCOM = 0xbc1\ngl.ALPHA_TEST_QCOM  = 0xbc0\ngl.ALPHA_TEST_REF_QCOM  = 0xbc2\ngl.ALREADY_SIGNALED_APPLE   = 0x911a\ngl.ALWAYS   = 0x207\ngl.AMD_compressed_3DC_texture   = 0x1\ngl.AMD_compressed_ATC_texture   = 0x1\ngl.AMD_performance_monitor  = 0x1\ngl.AMD_program_binary_Z400  = 0x1\ngl.ANGLE_depth_texture  = 0x1\ngl.ANGLE_framebuffer_blit   = 0x1\ngl.ANGLE_framebuffer_multisample    = 0x1\ngl.ANGLE_instanced_arrays   = 0x1\ngl.ANGLE_pack_reverse_row_order = 0x1\ngl.ANGLE_program_binary = 0x1\ngl.ANGLE_texture_compression_dxt3   = 0x1\ngl.ANGLE_texture_compression_dxt5   = 0x1\ngl.ANGLE_texture_usage  = 0x1\ngl.ANGLE_translated_shader_source   = 0x1\ngl.ANY_SAMPLES_PASSED_CONSERVATIVE_EXT  = 0x8d6a\ngl.ANY_SAMPLES_PASSED_EXT   = 0x8c2f\ngl.APPLE_copy_texture_levels    = 0x1\ngl.APPLE_framebuffer_multisample    = 0x1\ngl.APPLE_rgb_422    = 0x1\ngl.APPLE_sync   = 0x1\ngl.APPLE_texture_format_BGRA8888    = 0x1\ngl.APPLE_texture_max_level  = 0x1\ngl.ARM_mali_program_binary  = 0x1\ngl.ARM_mali_shader_binary   = 0x1\ngl.ARM_rgba8    = 0x1\ngl.ARRAY_BUFFER = 0x8892\ngl.ARRAY_BUFFER_BINDING = 0x8894\ngl.ATC_RGBA_EXPLICIT_ALPHA_AMD  = 0x8c93\ngl.ATC_RGBA_INTERPOLATED_ALPHA_AMD  = 0x87ee\ngl.ATC_RGB_AMD  = 0x8c92\ngl.ATTACHED_SHADERS = 0x8b85\ngl.BACK = 0x405\ngl.BGRA8_EXT    = 0x93a1\ngl.BGRA_EXT = 0x80e1\ngl.BGRA_IMG = 0x80e1\ngl.BINNING_CONTROL_HINT_QCOM    = 0x8fb0\ngl.BLEND    = 0xbe2\ngl.BLEND_COLOR  = 0x8005\ngl.BLEND_DST_ALPHA  = 0x80ca\ngl.BLEND_DST_RGB    = 0x80c8\ngl.BLEND_EQUATION   = 0x8009\ngl.BLEND_EQUATION_ALPHA = 0x883d\ngl.BLEND_EQUATION_RGB   = 0x8009\ngl.BLEND_SRC_ALPHA  = 0x80cb\ngl.BLEND_SRC_RGB    = 0x80c9\ngl.BLUE_BITS    = 0xd54\ngl.BOOL = 0x8b56\ngl.BOOL_VEC2    = 0x8b57\ngl.BOOL_VEC3    = 0x8b58\ngl.BOOL_VEC4    = 0x8b59\ngl.BUFFER   = 0x82e0\ngl.BUFFER_ACCESS_OES    = 0x88bb\ngl.BUFFER_MAPPED_OES    = 0x88bc\ngl.BUFFER_MAP_POINTER_OES   = 0x88bd\ngl.BUFFER_OBJECT_EXT    = 0x9151\ngl.BUFFER_SIZE  = 0x8764\ngl.BUFFER_USAGE = 0x8765\ngl.BYTE = 0x1400\ngl.CCW  = 0x901\ngl.CLAMP_TO_BORDER_NV   = 0x812d\ngl.CLAMP_TO_EDGE    = 0x812f\ngl.COLOR_ATTACHMENT0    = 0x8ce0\ngl.COLOR_ATTACHMENT0_NV = 0x8ce0\ngl.COLOR_ATTACHMENT10_NV    = 0x8cea\ngl.COLOR_ATTACHMENT11_NV    = 0x8ceb\ngl.COLOR_ATTACHMENT12_NV    = 0x8cec\ngl.COLOR_ATTACHMENT13_NV    = 0x8ced\ngl.COLOR_ATTACHMENT14_NV    = 0x8cee\ngl.COLOR_ATTACHMENT15_NV    = 0x8cef\ngl.COLOR_ATTACHMENT1_NV = 0x8ce1\ngl.COLOR_ATTACHMENT2_NV = 0x8ce2\ngl.COLOR_ATTACHMENT3_NV = 0x8ce3\ngl.COLOR_ATTACHMENT4_NV = 0x8ce4\ngl.COLOR_ATTACHMENT5_NV = 0x8ce5\ngl.COLOR_ATTACHMENT6_NV = 0x8ce6\ngl.COLOR_ATTACHMENT7_NV = 0x8ce7\ngl.COLOR_ATTACHMENT8_NV = 0x8ce8\ngl.COLOR_ATTACHMENT9_NV = 0x8ce9\ngl.COLOR_ATTACHMENT_EXT = 0x90f0\ngl.COLOR_BUFFER_BIT = 0x4000\ngl.COLOR_BUFFER_BIT0_QCOM   = 0x1\ngl.COLOR_BUFFER_BIT1_QCOM   = 0x2\ngl.COLOR_BUFFER_BIT2_QCOM   = 0x4\ngl.COLOR_BUFFER_BIT3_QCOM   = 0x8\ngl.COLOR_BUFFER_BIT4_QCOM   = 0x10\ngl.COLOR_BUFFER_BIT5_QCOM   = 0x20\ngl.COLOR_BUFFER_BIT6_QCOM   = 0x40\ngl.COLOR_BUFFER_BIT7_QCOM   = 0x80\ngl.COLOR_CLEAR_VALUE    = 0xc22\ngl.COLOR_EXT    = 0x1800\ngl.COLOR_WRITEMASK  = 0xc23\ngl.COMPARE_REF_TO_TEXTURE_EXT   = 0x884e\ngl.COMPILE_STATUS   = 0x8b81\ngl.COMPRESSED_RGBA_ASTC_10x10_KHR   = 0x93bb\ngl.COMPRESSED_RGBA_ASTC_10x5_KHR    = 0x93b8\ngl.COMPRESSED_RGBA_ASTC_10x6_KHR    = 0x93b9\ngl.COMPRESSED_RGBA_ASTC_10x8_KHR    = 0x93ba\ngl.COMPRESSED_RGBA_ASTC_12x10_KHR   = 0x93bc\ngl.COMPRESSED_RGBA_ASTC_12x12_KHR   = 0x93bd\ngl.COMPRESSED_RGBA_ASTC_4x4_KHR = 0x93b0\ngl.COMPRESSED_RGBA_ASTC_5x4_KHR = 0x93b1\ngl.COMPRESSED_RGBA_ASTC_5x5_KHR = 0x93b2\ngl.COMPRESSED_RGBA_ASTC_6x5_KHR = 0x93b3\ngl.COMPRESSED_RGBA_ASTC_6x6_KHR = 0x93b4\ngl.COMPRESSED_RGBA_ASTC_8x5_KHR = 0x93b5\ngl.COMPRESSED_RGBA_ASTC_8x6_KHR = 0x93b6\ngl.COMPRESSED_RGBA_ASTC_8x8_KHR = 0x93b7\ngl.COMPRESSED_RGBA_PVRTC_2BPPV1_IMG = 0x8c03\ngl.COMPRESSED_RGBA_PVRTC_2BPPV2_IMG = 0x9137\ngl.COMPRESSED_RGBA_PVRTC_4BPPV1_IMG = 0x8c02\ngl.COMPRESSED_RGBA_PVRTC_4BPPV2_IMG = 0x9138\ngl.COMPRESSED_RGBA_S3TC_DXT1_EXT    = 0x83f1\ngl.COMPRESSED_RGBA_S3TC_DXT3_ANGLE  = 0x83f2\ngl.COMPRESSED_RGBA_S3TC_DXT5_ANGLE  = 0x83f3\ngl.COMPRESSED_RGB_PVRTC_2BPPV1_IMG  = 0x8c01\ngl.COMPRESSED_RGB_PVRTC_4BPPV1_IMG  = 0x8c00\ngl.COMPRESSED_RGB_S3TC_DXT1_EXT = 0x83f0\ngl.COMPRESSED_SRGB8_ALPHA8_ASTC_10x10_KHR   = 0x93db\ngl.COMPRESSED_SRGB8_ALPHA8_ASTC_10x5_KHR    = 0x93d8\ngl.COMPRESSED_SRGB8_ALPHA8_ASTC_10x6_KHR    = 0x93d9\ngl.COMPRESSED_SRGB8_ALPHA8_ASTC_10x8_KHR    = 0x93da\ngl.COMPRESSED_SRGB8_ALPHA8_ASTC_12x10_KHR   = 0x93dc\ngl.COMPRESSED_SRGB8_ALPHA8_ASTC_12x12_KHR   = 0x93dd\ngl.COMPRESSED_SRGB8_ALPHA8_ASTC_4x4_KHR = 0x93d0\ngl.COMPRESSED_SRGB8_ALPHA8_ASTC_5x4_KHR = 0x93d1\ngl.COMPRESSED_SRGB8_ALPHA8_ASTC_5x5_KHR = 0x93d2\ngl.COMPRESSED_SRGB8_ALPHA8_ASTC_6x5_KHR = 0x93d3\ngl.COMPRESSED_SRGB8_ALPHA8_ASTC_6x6_KHR = 0x93d4\ngl.COMPRESSED_SRGB8_ALPHA8_ASTC_8x5_KHR = 0x93d5\ngl.COMPRESSED_SRGB8_ALPHA8_ASTC_8x6_KHR = 0x93d6\ngl.COMPRESSED_SRGB8_ALPHA8_ASTC_8x8_KHR = 0x93d7\ngl.COMPRESSED_SRGB_ALPHA_S3TC_DXT1_NV   = 0x8c4d\ngl.COMPRESSED_SRGB_ALPHA_S3TC_DXT3_NV   = 0x8c4e\ngl.COMPRESSED_SRGB_ALPHA_S3TC_DXT5_NV   = 0x8c4f\ngl.COMPRESSED_SRGB_S3TC_DXT1_NV = 0x8c4c\ngl.COMPRESSED_TEXTURE_FORMATS   = 0x86a3\ngl.CONDITION_SATISFIED_APPLE    = 0x911c\ngl.CONSTANT_ALPHA   = 0x8003\ngl.CONSTANT_COLOR   = 0x8001\ngl.CONTEXT_FLAG_DEBUG_BIT   = 0x2\ngl.CONTEXT_ROBUST_ACCESS_EXT    = 0x90f3\ngl.COUNTER_RANGE_AMD    = 0x8bc1\ngl.COUNTER_TYPE_AMD = 0x8bc0\ngl.COVERAGE_ALL_FRAGMENTS_NV    = 0x8ed5\ngl.COVERAGE_ATTACHMENT_NV   = 0x8ed2\ngl.COVERAGE_AUTOMATIC_NV    = 0x8ed7\ngl.COVERAGE_BUFFERS_NV  = 0x8ed3\ngl.COVERAGE_BUFFER_BIT_NV   = 0x8000\ngl.COVERAGE_COMPONENT4_NV   = 0x8ed1\ngl.COVERAGE_COMPONENT_NV    = 0x8ed0\ngl.COVERAGE_EDGE_FRAGMENTS_NV   = 0x8ed6\ngl.COVERAGE_SAMPLES_NV  = 0x8ed4\ngl.CPU_OPTIMIZED_QCOM   = 0x8fb1\ngl.CULL_FACE    = 0xb44\ngl.CULL_FACE_MODE   = 0xb45\ngl.CURRENT_PROGRAM  = 0x8b8d\ngl.CURRENT_QUERY_EXT    = 0x8865\ngl.CURRENT_VERTEX_ATTRIB    = 0x8626\ngl.CW   = 0x900\ngl.DEBUG_CALLBACK_FUNCTION  = 0x8244\ngl.DEBUG_CALLBACK_USER_PARAM    = 0x8245\ngl.DEBUG_GROUP_STACK_DEPTH  = 0x826d\ngl.DEBUG_LOGGED_MESSAGES    = 0x9145\ngl.DEBUG_NEXT_LOGGED_MESSAGE_LENGTH = 0x8243\ngl.DEBUG_OUTPUT = 0x92e0\ngl.DEBUG_OUTPUT_SYNCHRONOUS = 0x8242\ngl.DEBUG_SEVERITY_HIGH  = 0x9146\ngl.DEBUG_SEVERITY_LOW   = 0x9148\ngl.DEBUG_SEVERITY_MEDIUM    = 0x9147\ngl.DEBUG_SEVERITY_NOTIFICATION  = 0x826b\ngl.DEBUG_SOURCE_API = 0x8246\ngl.DEBUG_SOURCE_APPLICATION = 0x824a\ngl.DEBUG_SOURCE_OTHER   = 0x824b\ngl.DEBUG_SOURCE_SHADER_COMPILER = 0x8248\ngl.DEBUG_SOURCE_THIRD_PARTY = 0x8249\ngl.DEBUG_SOURCE_WINDOW_SYSTEM   = 0x8247\ngl.DEBUG_TYPE_DEPRECATED_BEHAVIOR   = 0x824d\ngl.DEBUG_TYPE_ERROR = 0x824c\ngl.DEBUG_TYPE_MARKER    = 0x8268\ngl.DEBUG_TYPE_OTHER = 0x8251\ngl.DEBUG_TYPE_PERFORMANCE   = 0x8250\ngl.DEBUG_TYPE_POP_GROUP = 0x826a\ngl.DEBUG_TYPE_PORTABILITY   = 0x824f\ngl.DEBUG_TYPE_PUSH_GROUP    = 0x8269\ngl.DEBUG_TYPE_UNDEFINED_BEHAVIOR    = 0x824e\ngl.DECR = 0x1e03\ngl.DECR_WRAP    = 0x8508\ngl.DELETE_STATUS    = 0x8b80\ngl.DEPTH24_STENCIL8_OES = 0x88f0\ngl.DEPTH_ATTACHMENT = 0x8d00\ngl.DEPTH_BITS   = 0xd56\ngl.DEPTH_BUFFER_BIT = 0x100\ngl.DEPTH_BUFFER_BIT0_QCOM   = 0x100\ngl.DEPTH_BUFFER_BIT1_QCOM   = 0x200\ngl.DEPTH_BUFFER_BIT2_QCOM   = 0x400\ngl.DEPTH_BUFFER_BIT3_QCOM   = 0x800\ngl.DEPTH_BUFFER_BIT4_QCOM   = 0x1000\ngl.DEPTH_BUFFER_BIT5_QCOM   = 0x2000\ngl.DEPTH_BUFFER_BIT6_QCOM   = 0x4000\ngl.DEPTH_BUFFER_BIT7_QCOM   = 0x8000\ngl.DEPTH_CLEAR_VALUE    = 0xb73\ngl.DEPTH_COMPONENT  = 0x1902\ngl.DEPTH_COMPONENT16    = 0x81a5\ngl.DEPTH_COMPONENT16_NONLINEAR_NV   = 0x8e2c\ngl.DEPTH_COMPONENT16_OES    = 0x81a5\ngl.DEPTH_COMPONENT24_OES    = 0x81a6\ngl.DEPTH_COMPONENT32_OES    = 0x81a7\ngl.DEPTH_EXT    = 0x1801\ngl.DEPTH_FUNC   = 0xb74\ngl.DEPTH_RANGE  = 0xb70\ngl.DEPTH_STENCIL_OES    = 0x84f9\ngl.DEPTH_TEST   = 0xb71\ngl.DEPTH_WRITEMASK  = 0xb72\ngl.DITHER   = 0xbd0\ngl.DMP_shader_binary    = 0x1\ngl.DONT_CARE    = 0x1100\ngl.DRAW_BUFFER0_NV  = 0x8825\ngl.DRAW_BUFFER10_NV = 0x882f\ngl.DRAW_BUFFER11_NV = 0x8830\ngl.DRAW_BUFFER12_NV = 0x8831\ngl.DRAW_BUFFER13_NV = 0x8832\ngl.DRAW_BUFFER14_NV = 0x8833\ngl.DRAW_BUFFER15_NV = 0x8834\ngl.DRAW_BUFFER1_NV  = 0x8826\ngl.DRAW_BUFFER2_NV  = 0x8827\ngl.DRAW_BUFFER3_NV  = 0x8828\ngl.DRAW_BUFFER4_NV  = 0x8829\ngl.DRAW_BUFFER5_NV  = 0x882a\ngl.DRAW_BUFFER6_NV  = 0x882b\ngl.DRAW_BUFFER7_NV  = 0x882c\ngl.DRAW_BUFFER8_NV  = 0x882d\ngl.DRAW_BUFFER9_NV  = 0x882e\ngl.DRAW_BUFFER_EXT  = 0xc01\ngl.DRAW_FRAMEBUFFER_ANGLE   = 0x8ca9\ngl.DRAW_FRAMEBUFFER_APPLE   = 0x8ca9\ngl.DRAW_FRAMEBUFFER_BINDING_ANGLE   = 0x8ca6\ngl.DRAW_FRAMEBUFFER_BINDING_APPLE   = 0x8ca6\ngl.DRAW_FRAMEBUFFER_BINDING_NV  = 0x8ca6\ngl.DRAW_FRAMEBUFFER_NV  = 0x8ca9\ngl.DST_ALPHA    = 0x304\ngl.DST_COLOR    = 0x306\ngl.DYNAMIC_DRAW = 0x88e8\ngl.ELEMENT_ARRAY_BUFFER = 0x8893\ngl.ELEMENT_ARRAY_BUFFER_BINDING = 0x8895\ngl.EQUAL    = 0x202\ngl.ES_VERSION_2_0   = 0x1\ngl.ETC1_RGB8_OES    = 0x8d64\ngl.ETC1_SRGB8_NV    = 0x88ee\ngl.EXTENSIONS   = 0x1f03\ngl.EXT_blend_minmax = 0x1\ngl.EXT_color_buffer_half_float  = 0x1\ngl.EXT_debug_label  = 0x1\ngl.EXT_debug_marker = 0x1\ngl.EXT_discard_framebuffer  = 0x1\ngl.EXT_map_buffer_range = 0x1\ngl.EXT_multi_draw_arrays    = 0x1\ngl.EXT_multisampled_render_to_texture   = 0x1\ngl.EXT_multiview_draw_buffers   = 0x1\ngl.EXT_occlusion_query_boolean  = 0x1\ngl.EXT_read_format_bgra = 0x1\ngl.EXT_robustness   = 0x1\ngl.EXT_sRGB = 0x1\ngl.EXT_separate_shader_objects  = 0x1\ngl.EXT_shader_framebuffer_fetch = 0x1\ngl.EXT_shader_texture_lod   = 0x1\ngl.EXT_shadow_samplers  = 0x1\ngl.EXT_texture_compression_dxt1 = 0x1\ngl.EXT_texture_filter_anisotropic   = 0x1\ngl.EXT_texture_format_BGRA8888  = 0x1\ngl.EXT_texture_rg   = 0x1\ngl.EXT_texture_storage  = 0x1\ngl.EXT_texture_type_2_10_10_10_REV  = 0x1\ngl.EXT_unpack_subimage  = 0x1\ngl.FALSE    = 0x0\ngl.FASTEST  = 0x1101\ngl.FENCE_CONDITION_NV   = 0x84f4\ngl.FENCE_STATUS_NV  = 0x84f3\ngl.FIXED    = 0x140c\ngl.FJ_shader_binary_GCCSO   = 0x1\ngl.FLOAT    = 0x1406\ngl.FLOAT_MAT2   = 0x8b5a\ngl.FLOAT_MAT3   = 0x8b5b\ngl.FLOAT_MAT4   = 0x8b5c\ngl.FLOAT_VEC2   = 0x8b50\ngl.FLOAT_VEC3   = 0x8b51\ngl.FLOAT_VEC4   = 0x8b52\ngl.FRAGMENT_SHADER  = 0x8b30\ngl.FRAGMENT_SHADER_BIT_EXT  = 0x2\ngl.FRAGMENT_SHADER_DERIVATIVE_HINT_OES  = 0x8b8b\ngl.FRAGMENT_SHADER_DISCARDS_SAMPLES_EXT = 0x8a52\ngl.FRAMEBUFFER  = 0x8d40\ngl.FRAMEBUFFER_ATTACHMENT_ANGLE = 0x93a3\ngl.FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING_EXT    = 0x8210\ngl.FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE_EXT    = 0x8211\ngl.FRAMEBUFFER_ATTACHMENT_OBJECT_NAME   = 0x8cd1\ngl.FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE   = 0x8cd0\ngl.FRAMEBUFFER_ATTACHMENT_TEXTURE_3D_ZOFFSET_OES    = 0x8cd4\ngl.FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE = 0x8cd3\ngl.FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL = 0x8cd2\ngl.FRAMEBUFFER_ATTACHMENT_TEXTURE_SAMPLES_EXT   = 0x8d6c\ngl.FRAMEBUFFER_BINDING  = 0x8ca6\ngl.FRAMEBUFFER_COMPLETE = 0x8cd5\ngl.FRAMEBUFFER_INCOMPLETE_ATTACHMENT    = 0x8cd6\ngl.FRAMEBUFFER_INCOMPLETE_DIMENSIONS    = 0x8cd9\ngl.FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT    = 0x8cd7\ngl.FRAMEBUFFER_INCOMPLETE_MULTISAMPLE_ANGLE = 0x8d56\ngl.FRAMEBUFFER_INCOMPLETE_MULTISAMPLE_APPLE = 0x8d56\ngl.FRAMEBUFFER_INCOMPLETE_MULTISAMPLE_EXT   = 0x8d56\ngl.FRAMEBUFFER_INCOMPLETE_MULTISAMPLE_IMG   = 0x9134\ngl.FRAMEBUFFER_INCOMPLETE_MULTISAMPLE_NV    = 0x8d56\ngl.FRAMEBUFFER_UNDEFINED_OES    = 0x8219\ngl.FRAMEBUFFER_UNSUPPORTED  = 0x8cdd\ngl.FRONT    = 0x404\ngl.FRONT_AND_BACK   = 0x408\ngl.FRONT_FACE   = 0xb46\ngl.FUNC_ADD = 0x8006\ngl.FUNC_REVERSE_SUBTRACT    = 0x800b\ngl.FUNC_SUBTRACT    = 0x800a\ngl.GENERATE_MIPMAP_HINT = 0x8192\ngl.GEQUAL   = 0x206\ngl.GPU_OPTIMIZED_QCOM   = 0x8fb2\ngl.GREATER  = 0x204\ngl.GREEN_BITS   = 0xd53\ngl.GUILTY_CONTEXT_RESET_EXT = 0x8253\ngl.HALF_FLOAT_OES   = 0x8d61\ngl.HIGH_FLOAT   = 0x8df2\ngl.HIGH_INT = 0x8df5\ngl.IMG_multisampled_render_to_texture   = 0x1\ngl.IMG_program_binary   = 0x1\ngl.IMG_read_format  = 0x1\ngl.IMG_shader_binary    = 0x1\ngl.IMG_texture_compression_pvrtc    = 0x1\ngl.IMG_texture_compression_pvrtc2   = 0x1\ngl.IMPLEMENTATION_COLOR_READ_FORMAT = 0x8b9b\ngl.IMPLEMENTATION_COLOR_READ_TYPE   = 0x8b9a\ngl.INCR = 0x1e02\ngl.INCR_WRAP    = 0x8507\ngl.INFO_LOG_LENGTH  = 0x8b84\ngl.INNOCENT_CONTEXT_RESET_EXT   = 0x8254\ngl.INT  = 0x1404\ngl.INT_10_10_10_2_OES   = 0x8df7\ngl.INT_VEC2 = 0x8b53\ngl.INT_VEC3 = 0x8b54\ngl.INT_VEC4 = 0x8b55\ngl.INVALID_ENUM = 0x500\ngl.INVALID_FRAMEBUFFER_OPERATION    = 0x506\ngl.INVALID_OPERATION    = 0x502\ngl.INVALID_VALUE    = 0x501\ngl.INVERT   = 0x150a\ngl.KEEP = 0x1e00\ngl.KHR_debug    = 0x1\ngl.KHR_texture_compression_astc_ldr = 0x1\ngl.LEQUAL   = 0x203\ngl.LESS = 0x201\ngl.LINEAR   = 0x2601\ngl.LINEAR_MIPMAP_LINEAR = 0x2703\ngl.LINEAR_MIPMAP_NEAREST    = 0x2701\ngl.LINES    = 0x1\ngl.LINE_LOOP    = 0x2\ngl.LINE_STRIP   = 0x3\ngl.LINE_WIDTH   = 0xb21\ngl.LINK_STATUS  = 0x8b82\ngl.LOSE_CONTEXT_ON_RESET_EXT    = 0x8252\ngl.LOW_FLOAT    = 0x8df0\ngl.LOW_INT  = 0x8df3\ngl.LUMINANCE    = 0x1909\ngl.LUMINANCE16F_EXT = 0x881e\ngl.LUMINANCE32F_EXT = 0x8818\ngl.LUMINANCE4_ALPHA4_OES    = 0x8043\ngl.LUMINANCE8_ALPHA8_EXT    = 0x8045\ngl.LUMINANCE8_ALPHA8_OES    = 0x8045\ngl.LUMINANCE8_EXT   = 0x8040\ngl.LUMINANCE8_OES   = 0x8040\ngl.LUMINANCE_ALPHA  = 0x190a\ngl.LUMINANCE_ALPHA16F_EXT   = 0x881f\ngl.LUMINANCE_ALPHA32F_EXT   = 0x8819\ngl.MALI_PROGRAM_BINARY_ARM  = 0x8f61\ngl.MALI_SHADER_BINARY_ARM   = 0x8f60\ngl.MAP_FLUSH_EXPLICIT_BIT_EXT   = 0x10\ngl.MAP_INVALIDATE_BUFFER_BIT_EXT    = 0x8\ngl.MAP_INVALIDATE_RANGE_BIT_EXT = 0x4\ngl.MAP_READ_BIT_EXT = 0x1\ngl.MAP_UNSYNCHRONIZED_BIT_EXT   = 0x20\ngl.MAP_WRITE_BIT_EXT    = 0x2\ngl.MAX_3D_TEXTURE_SIZE_OES  = 0x8073\ngl.MAX_COLOR_ATTACHMENTS_NV = 0x8cdf\ngl.MAX_COMBINED_TEXTURE_IMAGE_UNITS = 0x8b4d\ngl.MAX_CUBE_MAP_TEXTURE_SIZE    = 0x851c\ngl.MAX_DEBUG_GROUP_STACK_DEPTH  = 0x826c\ngl.MAX_DEBUG_LOGGED_MESSAGES    = 0x9144\ngl.MAX_DEBUG_MESSAGE_LENGTH = 0x9143\ngl.MAX_DRAW_BUFFERS_NV  = 0x8824\ngl.MAX_EXT  = 0x8008\ngl.MAX_FRAGMENT_UNIFORM_VECTORS = 0x8dfd\ngl.MAX_LABEL_LENGTH = 0x82e8\ngl.MAX_MULTIVIEW_BUFFERS_EXT    = 0x90f2\ngl.MAX_RENDERBUFFER_SIZE    = 0x84e8\ngl.MAX_SAMPLES_ANGLE    = 0x8d57\ngl.MAX_SAMPLES_APPLE    = 0x8d57\ngl.MAX_SAMPLES_EXT  = 0x8d57\ngl.MAX_SAMPLES_IMG  = 0x9135\ngl.MAX_SAMPLES_NV   = 0x8d57\ngl.MAX_SERVER_WAIT_TIMEOUT_APPLE    = 0x9111\ngl.MAX_TEXTURE_IMAGE_UNITS  = 0x8872\ngl.MAX_TEXTURE_MAX_ANISOTROPY_EXT   = 0x84ff\ngl.MAX_TEXTURE_SIZE = 0xd33\ngl.MAX_VARYING_VECTORS  = 0x8dfc\ngl.MAX_VERTEX_ATTRIBS   = 0x8869\ngl.MAX_VERTEX_TEXTURE_IMAGE_UNITS   = 0x8b4c\ngl.MAX_VERTEX_UNIFORM_VECTORS   = 0x8dfb\ngl.MAX_VIEWPORT_DIMS    = 0xd3a\ngl.MEDIUM_FLOAT = 0x8df1\ngl.MEDIUM_INT   = 0x8df4\ngl.MIN_EXT  = 0x8007\ngl.MIRRORED_REPEAT  = 0x8370\ngl.MULTISAMPLE_BUFFER_BIT0_QCOM = 0x1000000\ngl.MULTISAMPLE_BUFFER_BIT1_QCOM = 0x2000000\ngl.MULTISAMPLE_BUFFER_BIT2_QCOM = 0x4000000\ngl.MULTISAMPLE_BUFFER_BIT3_QCOM = 0x8000000\ngl.MULTISAMPLE_BUFFER_BIT4_QCOM = 0x10000000\ngl.MULTISAMPLE_BUFFER_BIT5_QCOM = 0x20000000\ngl.MULTISAMPLE_BUFFER_BIT6_QCOM = 0x40000000\ngl.MULTISAMPLE_BUFFER_BIT7_QCOM = 0x80000000\ngl.MULTIVIEW_EXT    = 0x90f1\ngl.NEAREST  = 0x2600\ngl.NEAREST_MIPMAP_LINEAR    = 0x2702\ngl.NEAREST_MIPMAP_NEAREST   = 0x2700\ngl.NEVER    = 0x200\ngl.NICEST   = 0x1102\ngl.NONE = 0x0\ngl.NOTEQUAL = 0x205\ngl.NO_ERROR = 0x0\ngl.NO_RESET_NOTIFICATION_EXT    = 0x8261\ngl.NUM_COMPRESSED_TEXTURE_FORMATS   = 0x86a2\ngl.NUM_PROGRAM_BINARY_FORMATS_OES   = 0x87fe\ngl.NUM_SHADER_BINARY_FORMATS    = 0x8df9\ngl.NV_coverage_sample   = 0x1\ngl.NV_depth_nonlinear   = 0x1\ngl.NV_draw_buffers  = 0x1\ngl.NV_draw_instanced    = 0x1\ngl.NV_fbo_color_attachments = 0x1\ngl.NV_fence = 0x1\ngl.NV_framebuffer_blit  = 0x1\ngl.NV_framebuffer_multisample   = 0x1\ngl.NV_generate_mipmap_sRGB  = 0x1\ngl.NV_instanced_arrays  = 0x1\ngl.NV_read_buffer   = 0x1\ngl.NV_read_buffer_front = 0x1\ngl.NV_read_depth    = 0x1\ngl.NV_read_depth_stencil    = 0x1\ngl.NV_read_stencil  = 0x1\ngl.NV_sRGB_formats  = 0x1\ngl.NV_shadow_samplers_array = 0x1\ngl.NV_shadow_samplers_cube  = 0x1\ngl.NV_texture_border_clamp  = 0x1\ngl.NV_texture_compression_s3tc_update   = 0x1\ngl.NV_texture_npot_2D_mipmap    = 0x1\ngl.OBJECT_TYPE_APPLE    = 0x9112\ngl.OES_EGL_image    = 0x1\ngl.OES_EGL_image_external   = 0x1\ngl.OES_compressed_ETC1_RGB8_texture = 0x1\ngl.OES_compressed_paletted_texture  = 0x1\ngl.OES_depth24  = 0x1\ngl.OES_depth32  = 0x1\ngl.OES_depth_texture    = 0x1\ngl.OES_element_index_uint   = 0x1\ngl.OES_fbo_render_mipmap    = 0x1\ngl.OES_fragment_precision_high  = 0x1\ngl.OES_get_program_binary   = 0x1\ngl.OES_mapbuffer    = 0x1\ngl.OES_packed_depth_stencil = 0x1\ngl.OES_required_internalformat  = 0x1\ngl.OES_rgb8_rgba8   = 0x1\ngl.OES_standard_derivatives = 0x1\ngl.OES_stencil1 = 0x1\ngl.OES_stencil4 = 0x1\ngl.OES_surfaceless_context  = 0x1\ngl.OES_texture_3D   = 0x1\ngl.OES_texture_float    = 0x1\ngl.OES_texture_float_linear = 0x1\ngl.OES_texture_half_float   = 0x1\ngl.OES_texture_half_float_linear    = 0x1\ngl.OES_texture_npot = 0x1\ngl.OES_vertex_array_object  = 0x1\ngl.OES_vertex_half_float    = 0x1\ngl.OES_vertex_type_10_10_10_2   = 0x1\ngl.ONE  = 0x1\ngl.ONE_MINUS_CONSTANT_ALPHA = 0x8004\ngl.ONE_MINUS_CONSTANT_COLOR = 0x8002\ngl.ONE_MINUS_DST_ALPHA  = 0x305\ngl.ONE_MINUS_DST_COLOR  = 0x307\ngl.ONE_MINUS_SRC_ALPHA  = 0x303\ngl.ONE_MINUS_SRC_COLOR  = 0x301\ngl.OUT_OF_MEMORY    = 0x505\ngl.PACK_ALIGNMENT   = 0xd05\ngl.PACK_REVERSE_ROW_ORDER_ANGLE = 0x93a4\ngl.PALETTE4_R5_G6_B5_OES    = 0x8b92\ngl.PALETTE4_RGB5_A1_OES = 0x8b94\ngl.PALETTE4_RGB8_OES    = 0x8b90\ngl.PALETTE4_RGBA4_OES   = 0x8b93\ngl.PALETTE4_RGBA8_OES   = 0x8b91\ngl.PALETTE8_R5_G6_B5_OES    = 0x8b97\ngl.PALETTE8_RGB5_A1_OES = 0x8b99\ngl.PALETTE8_RGB8_OES    = 0x8b95\ngl.PALETTE8_RGBA4_OES   = 0x8b98\ngl.PALETTE8_RGBA8_OES   = 0x8b96\ngl.PERCENTAGE_AMD   = 0x8bc3\ngl.PERFMON_GLOBAL_MODE_QCOM = 0x8fa0\ngl.PERFMON_RESULT_AMD   = 0x8bc6\ngl.PERFMON_RESULT_AVAILABLE_AMD = 0x8bc4\ngl.PERFMON_RESULT_SIZE_AMD  = 0x8bc5\ngl.POINTS   = 0x0\ngl.POLYGON_OFFSET_FACTOR    = 0x8038\ngl.POLYGON_OFFSET_FILL  = 0x8037\ngl.POLYGON_OFFSET_UNITS = 0x2a00\ngl.PROGRAM  = 0x82e2\ngl.PROGRAM_BINARY_ANGLE = 0x93a6\ngl.PROGRAM_BINARY_FORMATS_OES   = 0x87ff\ngl.PROGRAM_BINARY_LENGTH_OES    = 0x8741\ngl.PROGRAM_OBJECT_EXT   = 0x8b40\ngl.PROGRAM_PIPELINE_BINDING_EXT = 0x825a\ngl.PROGRAM_PIPELINE_OBJECT_EXT  = 0x8a4f\ngl.PROGRAM_SEPARABLE_EXT    = 0x8258\ngl.QCOM_alpha_test  = 0x1\ngl.QCOM_binning_control = 0x1\ngl.QCOM_driver_control  = 0x1\ngl.QCOM_extended_get    = 0x1\ngl.QCOM_extended_get2   = 0x1\ngl.QCOM_perfmon_global_mode = 0x1\ngl.QCOM_tiled_rendering = 0x1\ngl.QCOM_writeonly_rendering = 0x1\ngl.QUERY    = 0x82e3\ngl.QUERY_OBJECT_EXT = 0x9153\ngl.QUERY_RESULT_AVAILABLE_EXT   = 0x8867\ngl.QUERY_RESULT_EXT = 0x8866\ngl.R16F_EXT = 0x822d\ngl.R32F_EXT = 0x822e\ngl.R8_EXT   = 0x8229\ngl.READ_BUFFER_EXT  = 0xc02\ngl.READ_BUFFER_NV   = 0xc02\ngl.READ_FRAMEBUFFER_ANGLE   = 0x8ca8\ngl.READ_FRAMEBUFFER_APPLE   = 0x8ca8\ngl.READ_FRAMEBUFFER_BINDING_ANGLE   = 0x8caa\ngl.READ_FRAMEBUFFER_BINDING_APPLE   = 0x8caa\ngl.READ_FRAMEBUFFER_BINDING_NV  = 0x8caa\ngl.READ_FRAMEBUFFER_NV  = 0x8ca8\ngl.RED_BITS = 0xd52\ngl.RED_EXT  = 0x1903\ngl.RENDERBUFFER = 0x8d41\ngl.RENDERBUFFER_ALPHA_SIZE  = 0x8d53\ngl.RENDERBUFFER_BINDING = 0x8ca7\ngl.RENDERBUFFER_BLUE_SIZE   = 0x8d52\ngl.RENDERBUFFER_DEPTH_SIZE  = 0x8d54\ngl.RENDERBUFFER_GREEN_SIZE  = 0x8d51\ngl.RENDERBUFFER_HEIGHT  = 0x8d43\ngl.RENDERBUFFER_INTERNAL_FORMAT = 0x8d44\ngl.RENDERBUFFER_RED_SIZE    = 0x8d50\ngl.RENDERBUFFER_SAMPLES_ANGLE   = 0x8cab\ngl.RENDERBUFFER_SAMPLES_APPLE   = 0x8cab\ngl.RENDERBUFFER_SAMPLES_EXT = 0x8cab\ngl.RENDERBUFFER_SAMPLES_IMG = 0x9133\ngl.RENDERBUFFER_SAMPLES_NV  = 0x8cab\ngl.RENDERBUFFER_STENCIL_SIZE    = 0x8d55\ngl.RENDERBUFFER_WIDTH   = 0x8d42\ngl.RENDERER = 0x1f01\ngl.RENDER_DIRECT_TO_FRAMEBUFFER_QCOM    = 0x8fb3\ngl.REPEAT   = 0x2901\ngl.REPLACE  = 0x1e01\ngl.REQUIRED_TEXTURE_IMAGE_UNITS_OES = 0x8d68\ngl.RESET_NOTIFICATION_STRATEGY_EXT  = 0x8256\ngl.RG16F_EXT    = 0x822f\ngl.RG32F_EXT    = 0x8230\ngl.RG8_EXT  = 0x822b\ngl.RGB  = 0x1907\ngl.RGB10_A2_EXT = 0x8059\ngl.RGB10_EXT    = 0x8052\ngl.RGB16F_EXT   = 0x881b\ngl.RGB32F_EXT   = 0x8815\ngl.RGB565   = 0x8d62\ngl.RGB565_OES   = 0x8d62\ngl.RGB5_A1  = 0x8057\ngl.RGB5_A1_OES  = 0x8057\ngl.RGB8_OES = 0x8051\ngl.RGBA = 0x1908\ngl.RGBA16F_EXT  = 0x881a\ngl.RGBA32F_EXT  = 0x8814\ngl.RGBA4    = 0x8056\ngl.RGBA4_OES    = 0x8056\ngl.RGBA8_OES    = 0x8058\ngl.RGB_422_APPLE    = 0x8a1f\ngl.RG_EXT   = 0x8227\ngl.SAMPLER  = 0x82e6\ngl.SAMPLER_2D   = 0x8b5e\ngl.SAMPLER_2D_ARRAY_SHADOW_NV   = 0x8dc4\ngl.SAMPLER_2D_SHADOW_EXT    = 0x8b62\ngl.SAMPLER_3D_OES   = 0x8b5f\ngl.SAMPLER_CUBE = 0x8b60\ngl.SAMPLER_CUBE_SHADOW_NV   = 0x8dc5\ngl.SAMPLER_EXTERNAL_OES = 0x8d66\ngl.SAMPLES  = 0x80a9\ngl.SAMPLE_ALPHA_TO_COVERAGE = 0x809e\ngl.SAMPLE_BUFFERS   = 0x80a8\ngl.SAMPLE_COVERAGE  = 0x80a0\ngl.SAMPLE_COVERAGE_INVERT   = 0x80ab\ngl.SAMPLE_COVERAGE_VALUE    = 0x80aa\ngl.SCISSOR_BOX  = 0xc10\ngl.SCISSOR_TEST = 0xc11\ngl.SGX_BINARY_IMG   = 0x8c0a\ngl.SGX_PROGRAM_BINARY_IMG   = 0x9130\ngl.SHADER   = 0x82e1\ngl.SHADER_BINARY_DMP    = 0x9250\ngl.SHADER_BINARY_FORMATS    = 0x8df8\ngl.SHADER_BINARY_VIV    = 0x8fc4\ngl.SHADER_COMPILER  = 0x8dfa\ngl.SHADER_OBJECT_EXT    = 0x8b48\ngl.SHADER_SOURCE_LENGTH = 0x8b88\ngl.SHADER_TYPE  = 0x8b4f\ngl.SHADING_LANGUAGE_VERSION = 0x8b8c\ngl.SHORT    = 0x1402\ngl.SIGNALED_APPLE   = 0x9119\ngl.SLUMINANCE8_ALPHA8_NV    = 0x8c45\ngl.SLUMINANCE8_NV   = 0x8c47\ngl.SLUMINANCE_ALPHA_NV  = 0x8c44\ngl.SLUMINANCE_NV    = 0x8c46\ngl.SRC_ALPHA    = 0x302\ngl.SRC_ALPHA_SATURATE   = 0x308\ngl.SRC_COLOR    = 0x300\ngl.SRGB8_ALPHA8_EXT = 0x8c43\ngl.SRGB8_NV = 0x8c41\ngl.SRGB_ALPHA_EXT   = 0x8c42\ngl.SRGB_EXT = 0x8c40\ngl.STACK_OVERFLOW   = 0x503\ngl.STACK_UNDERFLOW  = 0x504\ngl.STATE_RESTORE    = 0x8bdc\ngl.STATIC_DRAW  = 0x88e4\ngl.STENCIL_ATTACHMENT   = 0x8d20\ngl.STENCIL_BACK_FAIL    = 0x8801\ngl.STENCIL_BACK_FUNC    = 0x8800\ngl.STENCIL_BACK_PASS_DEPTH_FAIL = 0x8802\ngl.STENCIL_BACK_PASS_DEPTH_PASS = 0x8803\ngl.STENCIL_BACK_REF = 0x8ca3\ngl.STENCIL_BACK_VALUE_MASK  = 0x8ca4\ngl.STENCIL_BACK_WRITEMASK   = 0x8ca5\ngl.STENCIL_BITS = 0xd57\ngl.STENCIL_BUFFER_BIT   = 0x400\ngl.STENCIL_BUFFER_BIT0_QCOM = 0x10000\ngl.STENCIL_BUFFER_BIT1_QCOM = 0x20000\ngl.STENCIL_BUFFER_BIT2_QCOM = 0x40000\ngl.STENCIL_BUFFER_BIT3_QCOM = 0x80000\ngl.STENCIL_BUFFER_BIT4_QCOM = 0x100000\ngl.STENCIL_BUFFER_BIT5_QCOM = 0x200000\ngl.STENCIL_BUFFER_BIT6_QCOM = 0x400000\ngl.STENCIL_BUFFER_BIT7_QCOM = 0x800000\ngl.STENCIL_CLEAR_VALUE  = 0xb91\ngl.STENCIL_EXT  = 0x1802\ngl.STENCIL_FAIL = 0xb94\ngl.STENCIL_FUNC = 0xb92\ngl.STENCIL_INDEX1_OES   = 0x8d46\ngl.STENCIL_INDEX4_OES   = 0x8d47\ngl.STENCIL_INDEX8   = 0x8d48\ngl.STENCIL_PASS_DEPTH_FAIL  = 0xb95\ngl.STENCIL_PASS_DEPTH_PASS  = 0xb96\ngl.STENCIL_REF  = 0xb97\ngl.STENCIL_TEST = 0xb90\ngl.STENCIL_VALUE_MASK   = 0xb93\ngl.STENCIL_WRITEMASK    = 0xb98\ngl.STREAM_DRAW  = 0x88e0\ngl.SUBPIXEL_BITS    = 0xd50\ngl.SYNC_CONDITION_APPLE = 0x9113\ngl.SYNC_FENCE_APPLE = 0x9116\ngl.SYNC_FLAGS_APPLE = 0x9115\ngl.SYNC_FLUSH_COMMANDS_BIT_APPLE    = 0x1\ngl.SYNC_GPU_COMMANDS_COMPLETE_APPLE = 0x9117\ngl.SYNC_OBJECT_APPLE    = 0x8a53\ngl.SYNC_STATUS_APPLE    = 0x9114\ngl.TEXTURE  = 0x1702\ngl.TEXTURE0 = 0x84c0\ngl.TEXTURE1 = 0x84c1\ngl.TEXTURE10    = 0x84ca\ngl.TEXTURE11    = 0x84cb\ngl.TEXTURE12    = 0x84cc\ngl.TEXTURE13    = 0x84cd\ngl.TEXTURE14    = 0x84ce\ngl.TEXTURE15    = 0x84cf\ngl.TEXTURE16    = 0x84d0\ngl.TEXTURE17    = 0x84d1\ngl.TEXTURE18    = 0x84d2\ngl.TEXTURE19    = 0x84d3\ngl.TEXTURE2 = 0x84c2\ngl.TEXTURE20    = 0x84d4\ngl.TEXTURE21    = 0x84d5\ngl.TEXTURE22    = 0x84d6\ngl.TEXTURE23    = 0x84d7\ngl.TEXTURE24    = 0x84d8\ngl.TEXTURE25    = 0x84d9\ngl.TEXTURE26    = 0x84da\ngl.TEXTURE27    = 0x84db\ngl.TEXTURE28    = 0x84dc\ngl.TEXTURE29    = 0x84dd\ngl.TEXTURE3 = 0x84c3\ngl.TEXTURE30    = 0x84de\ngl.TEXTURE31    = 0x84df\ngl.TEXTURE4 = 0x84c4\ngl.TEXTURE5 = 0x84c5\ngl.TEXTURE6 = 0x84c6\ngl.TEXTURE7 = 0x84c7\ngl.TEXTURE8 = 0x84c8\ngl.TEXTURE9 = 0x84c9\ngl.TEXTURE_2D   = 0xde1\ngl.TEXTURE_3D_OES   = 0x806f\ngl.TEXTURE_BINDING_2D   = 0x8069\ngl.TEXTURE_BINDING_3D_OES   = 0x806a\ngl.TEXTURE_BINDING_CUBE_MAP = 0x8514\ngl.TEXTURE_BINDING_EXTERNAL_OES = 0x8d67\ngl.TEXTURE_BORDER_COLOR_NV  = 0x1004\ngl.TEXTURE_COMPARE_FUNC_EXT = 0x884d\ngl.TEXTURE_COMPARE_MODE_EXT = 0x884c\ngl.TEXTURE_CUBE_MAP = 0x8513\ngl.TEXTURE_CUBE_MAP_NEGATIVE_X  = 0x8516\ngl.TEXTURE_CUBE_MAP_NEGATIVE_Y  = 0x8518\ngl.TEXTURE_CUBE_MAP_NEGATIVE_Z  = 0x851a\ngl.TEXTURE_CUBE_MAP_POSITIVE_X  = 0x8515\ngl.TEXTURE_CUBE_MAP_POSITIVE_Y  = 0x8517\ngl.TEXTURE_CUBE_MAP_POSITIVE_Z  = 0x8519\ngl.TEXTURE_DEPTH_QCOM   = 0x8bd4\ngl.TEXTURE_EXTERNAL_OES = 0x8d65\ngl.TEXTURE_FORMAT_QCOM  = 0x8bd6\ngl.TEXTURE_HEIGHT_QCOM  = 0x8bd3\ngl.TEXTURE_IMAGE_VALID_QCOM = 0x8bd8\ngl.TEXTURE_IMMUTABLE_FORMAT_EXT = 0x912f\ngl.TEXTURE_INTERNAL_FORMAT_QCOM = 0x8bd5\ngl.TEXTURE_MAG_FILTER   = 0x2800\ngl.TEXTURE_MAX_ANISOTROPY_EXT   = 0x84fe\ngl.TEXTURE_MAX_LEVEL_APPLE  = 0x813d\ngl.TEXTURE_MIN_FILTER   = 0x2801\ngl.TEXTURE_NUM_LEVELS_QCOM  = 0x8bd9\ngl.TEXTURE_OBJECT_VALID_QCOM    = 0x8bdb\ngl.TEXTURE_SAMPLES_IMG  = 0x9136\ngl.TEXTURE_TARGET_QCOM  = 0x8bda\ngl.TEXTURE_TYPE_QCOM    = 0x8bd7\ngl.TEXTURE_USAGE_ANGLE  = 0x93a2\ngl.TEXTURE_WIDTH_QCOM   = 0x8bd2\ngl.TEXTURE_WRAP_R_OES   = 0x8072\ngl.TEXTURE_WRAP_S   = 0x2802\ngl.TEXTURE_WRAP_T   = 0x2803\ngl.TIMEOUT_EXPIRED_APPLE    = 0x911b\ngl.TIMEOUT_IGNORED_APPLE    = 0xffffffffffffffff\ngl.TRANSLATED_SHADER_SOURCE_LENGTH_ANGLE    = 0x93a0\ngl.TRIANGLES    = 0x4\ngl.TRIANGLE_FAN = 0x6\ngl.TRIANGLE_STRIP   = 0x5\ngl.TRUE = 0x1\ngl.UNKNOWN_CONTEXT_RESET_EXT    = 0x8255\ngl.UNPACK_ALIGNMENT = 0xcf5\ngl.UNPACK_ROW_LENGTH    = 0xcf2\ngl.UNPACK_SKIP_PIXELS   = 0xcf4\ngl.UNPACK_SKIP_ROWS = 0xcf3\ngl.UNSIGNALED_APPLE = 0x9118\ngl.UNSIGNED_BYTE    = 0x1401\ngl.UNSIGNED_INT = 0x1405\ngl.UNSIGNED_INT64_AMD   = 0x8bc2\ngl.UNSIGNED_INT_10_10_10_2_OES  = 0x8df6\ngl.UNSIGNED_INT_24_8_OES    = 0x84fa\ngl.UNSIGNED_INT_2_10_10_10_REV_EXT  = 0x8368\ngl.UNSIGNED_NORMALIZED_EXT  = 0x8c17\ngl.UNSIGNED_SHORT   = 0x1403\ngl.UNSIGNED_SHORT_1_5_5_5_REV_EXT   = 0x8366\ngl.UNSIGNED_SHORT_4_4_4_4   = 0x8033\ngl.UNSIGNED_SHORT_4_4_4_4_REV_EXT   = 0x8365\ngl.UNSIGNED_SHORT_4_4_4_4_REV_IMG   = 0x8365\ngl.UNSIGNED_SHORT_5_5_5_1   = 0x8034\ngl.UNSIGNED_SHORT_5_6_5 = 0x8363\ngl.UNSIGNED_SHORT_8_8_APPLE = 0x85ba\ngl.UNSIGNED_SHORT_8_8_REV_APPLE = 0x85bb\ngl.VALIDATE_STATUS  = 0x8b83\ngl.VENDOR   = 0x1f00\ngl.VERSION  = 0x1f02\ngl.VERTEX_ARRAY_BINDING_OES = 0x85b5\ngl.VERTEX_ARRAY_OBJECT_EXT  = 0x9154\ngl.VERTEX_ATTRIB_ARRAY_BUFFER_BINDING   = 0x889f\ngl.VERTEX_ATTRIB_ARRAY_DIVISOR_ANGLE    = 0x88fe\ngl.VERTEX_ATTRIB_ARRAY_DIVISOR_NV   = 0x88fe\ngl.VERTEX_ATTRIB_ARRAY_ENABLED  = 0x8622\ngl.VERTEX_ATTRIB_ARRAY_NORMALIZED   = 0x886a\ngl.VERTEX_ATTRIB_ARRAY_POINTER  = 0x8645\ngl.VERTEX_ATTRIB_ARRAY_SIZE = 0x8623\ngl.VERTEX_ATTRIB_ARRAY_STRIDE   = 0x8624\ngl.VERTEX_ATTRIB_ARRAY_TYPE = 0x8625\ngl.VERTEX_SHADER    = 0x8b31\ngl.VERTEX_SHADER_BIT_EXT    = 0x1\ngl.VIEWPORT = 0xba2\ngl.VIV_shader_binary    = 0x1\ngl.WAIT_FAILED_APPLE    = 0x911d\ngl.WRITEONLY_RENDERING_QCOM = 0x8823\ngl.WRITE_ONLY_OES   = 0x88b9\ngl.Z400_BINARY_AMD  = 0x8740\ngl.ZERO = 0x0\n"
  },
  {
    "path": "源代码/mir9/src/framework/cocos2dx/SceneEx.lua",
    "content": "--[[\n\nCopyright (c) 2011-2014 chukong-inc.com\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in\nall copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\nTHE SOFTWARE.\n\n]]\n\nlocal c = cc\nlocal Scene = c.Scene\n\nfunction Scene:setAutoCleanupEnabled()\n    self:addNodeEventListener(c.NODE_EVENT, function(event)\n        if event.name == \"exit\" then\n            if self.autoCleanupImages_ then\n                for imageName, v in pairs(self.autoCleanupImages_) do\n                    display.removeSpriteFrameByImageName(imageName)\n                end\n                self.autoCleanupImages_ = nil\n            end\n        end\n    end)\nend\n\nfunction Scene:markAutoCleanupImage(imageName)\n    if not self.autoCleanupImages_ then self.autoCleanupImages_ = {} end\n    self.autoCleanupImages_[imageName] = true\n    return self\nend\n"
  },
  {
    "path": "源代码/mir9/src/framework/cocos2dx/SpriteEx.lua",
    "content": "--[[\n\nCopyright (c) 2011-2014 chukong-inc.com\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in\nall copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\nTHE SOFTWARE.\n\n]]\n\nlocal c = cc\nlocal Sprite = c.Sprite\n\nfunction Sprite:playAnimationOnce(animation, removeWhenFinished, onComplete, delay)\n    return transition.playAnimationOnce(self, animation, removeWhenFinished, onComplete, delay)\nend\n\nfunction Sprite:playAnimationForever(animation, delay)\n    return transition.playAnimationForever(self, animation, delay)\nend\n\n"
  },
  {
    "path": "源代码/mir9/src/framework/cocos2dx/StudioConstants.lua",
    "content": "ccs = ccs or {}\n\n\nccs.MovementEventType = {\n    start = 0,\n    complete = 1,\n    loopComplete = 2, \n}\n"
  },
  {
    "path": "源代码/mir9/src/framework/cocos2dx.lua",
    "content": "--[[\n\nCopyright (c) 2011-2014 chukong-inc.com\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in\nall copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\nTHE SOFTWARE.\n\n]]\n\n--------------------------------\n-- @module cocos2dx\n\n--[[--\n\n针对 cocos2d-x 的一些封装和扩展\n\n预定义的节点事件：\n\n-   cc.NODE_EVENT - enter, exit 等事件\n-   cc.NODE_ENTER_FRAME_EVENT - 帧事件\n-   cc.NODE_TOUCH_EVENT - 触摸事件\n-   cc.NODE_TOUCH_CAPTURE_EVENT - 捕获触摸事件\n\n预定义的层事件：\n\n-   cc.ACCELERATE_EVENT - 重力感应事件\n-   cc.KEYPAD_EVENT - 硬件按键事件\n\n预定义的触摸模式：\n\n-   cc.TOUCH_MODE_ALL_AT_ONCE - 多点触摸\n-   cc.TOUCH_MODE_ONE_BY_ONE - 单点触摸\n\n]]\n\nlocal p = cc.PACKAGE_NAME .. \".cocos2dx.\"\n\nif not cc.p then\n-- cc.p exist, so the cocos.init have loaded\nrequire(p .. \"Cocos2dConstants\")\nrequire(p .. \"OpenglConstants\")\nrequire(p .. \"Cocos2d\")\nrequire(p .. \"StudioConstants\")\nend\n\nrequire(p .. \"Event\")\nrequire(p .. \"ActionEx\")\nrequire(p .. \"NodeEx\")\nrequire(p .. \"SceneEx\")\nrequire(p .. \"SpriteEx\")\nrequire(p .. \"DrawNodeEx\")\n"
  },
  {
    "path": "源代码/mir9/src/framework/crypto.lua",
    "content": "--[[\n\nCopyright (c) 2011-2014 chukong-inc.com\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in\nall copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\nTHE SOFTWARE.\n\n]]\n\n--------------------------------\n-- @module crypto\n\n--[[--\n\n加解密、数据编码\n\n]]\nlocal crypto = {}\n\n-- start --\n\n--------------------------------\n-- 使用 AES256 算法加密内容\n-- @function [parent=#crypto] encryptAES256\n-- @param string plaintext 明文字符串\n-- @param string key 密钥字符串\n-- @return string#string ret (return value: string)   加密后的字符串\n\n-- end --\n\nfunction crypto.encryptAES256(plaintext, key)\n    plaintext = tostring(plaintext)\n    key = tostring(key)\n    return cc.Crypto:encryptAES256(plaintext, string.len(plaintext), key, string.len(key))\nend\n\n-- start --\n\n--------------------------------\n-- 使用 AES256 算法解密内容\n-- @function [parent=#crypto] decryptAES256\n-- @param string ciphertext 加密后的字符串\n-- @param string key 密钥字符串\n-- @return string#string ret (return value: string)   明文字符串\n\n-- end --\n\nfunction crypto.decryptAES256(ciphertext, key)\n    ciphertext = tostring(ciphertext)\n    key = tostring(key)\n    return cc.Crypto:decryptAES256(ciphertext, string.len(ciphertext), key, string.len(key))\nend\n\n-- start --\n\n--------------------------------\n-- 使用 XXTEA 算法加密内容\n-- @function [parent=#crypto] encryptXXTEA\n-- @param string plaintext 明文字符串\n-- @param string key 密钥字符串\n-- @return string#string ret (return value: string)   加密后的字符串\n\n-- end --\n\nfunction crypto.encryptXXTEA(plaintext, key)\n    plaintext = tostring(plaintext)\n    key = tostring(key)\n    return cc.Crypto:encryptXXTEA(plaintext, string.len(plaintext), key, string.len(key))\nend\n\n-- start --\n\n--------------------------------\n-- 使用 XXTEA 算法解密内容\n-- @function [parent=#crypto] decryptXXTEA\n-- @param string ciphertext 加密后的字符串\n-- @param string key 密钥字符串\n-- @return string#string ret (return value: string)   明文字符串\n\n-- end --\n\nfunction crypto.decryptXXTEA(ciphertext, key)\n    ciphertext = tostring(ciphertext)\n    key = tostring(key)\n    return cc.Crypto:decryptXXTEA(ciphertext, string.len(ciphertext), key, string.len(key))\nend\n\n-- start --\n\n--------------------------------\n-- 使用 BASE64 算法编码内容\n-- @function [parent=#crypto] encodeBase64\n-- @param string plaintext 原文字符串\n-- @return string#string ret (return value: string)   编码后的字符串\n\n-- end --\n\nfunction crypto.encodeBase64(plaintext)\n    plaintext = tostring(plaintext)\n    return cc.Crypto:encodeBase64(plaintext, string.len(plaintext))\nend\n\n-- start --\n\n--------------------------------\n-- 使用 BASE64 算法解码内容\n-- @function [parent=#crypto] decodeBase64\n-- @param string ciphertext 编码后的字符串\n-- @return string#string ret (return value: string)   原文字符串\n\n-- end --\n\nfunction crypto.decodeBase64(ciphertext)\n    ciphertext = tostring(ciphertext)\n    return cc.Crypto:decodeBase64(ciphertext)\nend\n\n-- start --\n\n--------------------------------\n-- 计算内容的 MD5 码\n-- @function [parent=#crypto] md5\n-- @param string input 内容字符串\n-- @param boolean isRawOutput 是否返回二进制 MD5 码\n-- @return string#string ret (return value: string)  MD5 字符串\n\n-- end --\n\nfunction crypto.md5(input, isRawOutput)\n    input = tostring(input)\n    if type(isRawOutput) ~= \"boolean\" then isRawOutput = false end\n    return cc.Crypto:MD5(input, isRawOutput)\nend\n\n-- start --\n\n--------------------------------\n-- 计算文件的 MD5 码\n-- @function [parent=#crypto] md5file\n-- @param string path 文件路径\n-- @return string#string ret (return value: string)  MD5 字符串\n\n-- end --\n\nfunction crypto.md5file(path)\n    if not path then\n        printError(\"crypto.md5file() - invalid filename\")\n        return nil\n    end\n    path = tostring(path)\n    if DEBUG > 1 then\n        printInfo(\"crypto.md5file() - filename: %s\", path)\n    end\n    return cc.Crypto:MD5File(path)\nend\n\nreturn crypto\n"
  },
  {
    "path": "源代码/mir9/src/framework/debug.lua",
    "content": "--[[\n\nCopyright (c) 2011-2014 chukong-inc.com\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in\nall copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\nTHE SOFTWARE.\n\n]]\n\n--------------------------------\n-- @module debug\n\n--[[--\n\n提供调试接口\n\n]]\n\nif ngx and ngx.log then\n    -- 如果运行在\n    print = function(...)\n        local arg = {...}\n        for k,v in pairs(arg) do\n            arg[k] = tostring(v)\n        end\n        ngx.log(ngx.ERR, table.concat(arg, \"\\t\"))\n    end\nend\n\n--[[--\n\n定义一个作废的接口\n\n]]\nfunction DEPRECATED(newfunction, oldname, newname)\n    return function(...)\n        PRINT_DEPRECATED(string.format(\"%s() is deprecated, please use %s()\", oldname, newname))\n        return newfunction(...)\n    end\nend\n\n--[[--\n\n显示作废信息\n\n]]\nfunction PRINT_DEPRECATED(msg)\n    if not DISABLE_DEPRECATED_WARNING then\n        printf(\"[DEPRECATED] %s\", msg)\n    end\nend\n\n--[[--\n\n打印调试信息\n\n### 用法示例\n\n~~~ lua\n\nprintLog(\"WARN\", \"Network connection lost at %d\", os.time())\n\n~~~\n\n@param string tag 调试信息的 tag\n@param string fmt 调试信息格式\n@param [mixed ...] 更多参数\n\n]]\nfunction printLog(tag, fmt, ...)\n    local t = {\n        \"[\",\n        string.upper(tostring(tag)),\n        \"] \",\n        string.format(tostring(fmt), ...)\n    }\n    print(table.concat(t))\nend\n\n--[[--\n\n输出 tag 为 ERR 的调试信息\n\n@param string fmt 调试信息格式\n@param [mixed ...] 更多参数\n\n]]\nfunction printError(fmt, ...)\n    printLog(\"ERR\", fmt, ...)\n    print(debug.traceback(\"\", 2))\nend\n\n--[[--\n\n输出 tag 为 INFO 的调试信息\n\n@param string fmt 调试信息格式\n@param [mixed ...] 更多参数\n\n]]\nfunction printInfo(fmt, ...)\n    printLog(\"INFO\", fmt, ...)\nend\n\n--[[--\n\n输出值的内容\n\n### 用法示例\n\n~~~ lua\n\nlocal t = {comp = \"chukong\", engine = \"quick\"}\n\ndump(t)\n\n~~~\n\n@param mixed value 要输出的值\n\n@param [string desciption] 输出内容前的文字描述\n\n@parma [integer nesting] 输出时的嵌套层级，默认为 3\n\n]]\nfunction dump(value, desciption, nesting)\n    if type(nesting) ~= \"number\" then nesting = 3 end\n\n    local lookupTable = {}\n    local result = {}\n\n    local function _v(v)\n        if type(v) == \"string\" then\n            v = \"\\\"\" .. v .. \"\\\"\"\n        end\n        return tostring(v)\n    end\n\n    local traceback = string.split(debug.traceback(\"\", 2), \"\\n\")\n    print(\"dump from: \" .. string.trim(traceback[3]))\n\n    local function _dump(value, desciption, indent, nest, keylen)\n        desciption = desciption or \"<var>\"\n        spc = \"\"\n        if type(keylen) == \"number\" then\n            spc = string.rep(\" \", keylen - string.len(_v(desciption)))\n        end\n        if type(value) ~= \"table\" then\n            result[#result +1 ] = string.format(\"%s%s%s = %s\", indent, _v(desciption), spc, _v(value))\n        elseif lookupTable[value] then\n            result[#result +1 ] = string.format(\"%s%s%s = *REF*\", indent, desciption, spc)\n        else\n            lookupTable[value] = true\n            if nest > nesting then\n                result[#result +1 ] = string.format(\"%s%s = *MAX NESTING*\", indent, desciption)\n            else\n                result[#result +1 ] = string.format(\"%s%s = {\", indent, _v(desciption))\n                local indent2 = indent..\"    \"\n                local keys = {}\n                local keylen = 0\n                local values = {}\n                for k, v in pairs(value) do\n                    keys[#keys + 1] = k\n                    local vk = _v(k)\n                    local vkl = string.len(vk)\n                    if vkl > keylen then keylen = vkl end\n                    values[k] = v\n                end\n                table.sort(keys, function(a, b)\n                    if type(a) == \"number\" and type(b) == \"number\" then\n                        return a < b\n                    else\n                        return tostring(a) < tostring(b)\n                    end\n                end)\n                for i, k in ipairs(keys) do\n                    _dump(values[k], k, indent2, nest + 1, keylen)\n                end\n                result[#result +1] = string.format(\"%s}\", indent)\n            end\n        end\n    end\n    _dump(value, desciption, \"- \", 1)\n\n    for i, line in ipairs(result) do\n        print(line)\n    end\nend\n"
  },
  {
    "path": "源代码/mir9/src/framework/deprecated/deprecated_functions.lua",
    "content": "\ndisplay.addSpriteFramesWithFile = DEPRECATED(display.addSpriteFrames, \"display.addSpriteFramesWithFile\", \"display.addSpriteFrames\")\n"
  },
  {
    "path": "源代码/mir9/src/framework/device.lua",
    "content": "--[[\n\nCopyright (c) 2011-2014 chukong-inc.com\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in\nall copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\nTHE SOFTWARE.\n\n]]\n\n--------------------------------\n-- @module device\n\n--[[--\n\n提供设备相关属性的查询，以及设备功能的访问\n\n当框架初始完成后，device 模块提供下列属性：\n\n-   device.platform 返回当前运行平台的名字，可用值： ios, android, mac, windows.\n-   device.model 返回设备型号，可用值： unknown, iphone, ipad\n-   device.language 返回设备当前使用的语言，可用值：\n    -   cn：中文\n    -   fr：法语\n    -   it：意大利语\n    -   gr：德语\n    -   sp：西班牙语\n    -   ru：俄语\n    -   jp：日语\n    -   en：英语\n-   device.writablePath 返回设备上可以写入数据的首选路径：\n    -   iOS 上返回应用程序所在的 Documents 目录\n    -   Android 上返回存储卡的根目录\n    -   其他平台的返回值由 quick-x-player 决定\n-   device.cachePath 返回设备上可以写入数据的缓存目录：\n    -   iOS 上返回应用程序所在的 Library/Caches 目录\n    -   其他平台的返回值同 device.writablePath\n-   device.directorySeparator 目录分隔符，在 Windows 平台上是 “\\”，其他平台都是 “/”\n-   device.pathSeparator 路径分隔符，在 Windows 平台上是 “;”，其他平台都是 “:”\n\n]]\nlocal device = {}\n\ndevice.platform    = \"unknown\"\ndevice.model       = \"unknown\"\n\nlocal sharedApplication = cc.Application:getInstance()\nlocal target = sharedApplication:getTargetPlatform()\nif target == cc.PLATFORM_OS_WINDOWS then\n    device.platform = \"windows\"\nelseif target == cc.PLATFORM_OS_MAC then\n    device.platform = \"mac\"\nelseif target == cc.PLATFORM_OS_ANDROID then\n    device.platform = \"android\"\nelseif target == cc.PLATFORM_OS_IPHONE or target == cc.PLATFORM_OS_IPAD then\n    device.platform = \"ios\"\n    if target == cc.PLATFORM_OS_IPHONE then\n        device.model = \"iphone\"\n    else\n        device.model = \"ipad\"\n    end\nelseif target == cc.PLATFORM_OS_WINRT then\n    device.platform = \"winrt\"\nelseif target == cc.PLATFORM_OS_WP8 then\n    device.platform = \"wp8\"\nend\n\nlocal language_ = sharedApplication:getCurrentLanguage()\nif language_ == cc.LANGUAGE_CHINESE then\n    language_ = \"cn\"\nelseif language_ == cc.LANGUAGE_FRENCH then\n    language_ = \"fr\"\nelseif language_ == cc.LANGUAGE_ITALIAN then\n    language_ = \"it\"\nelseif language_ == cc.LANGUAGE_GERMAN then\n    language_ = \"gr\"\nelseif language_ == cc.LANGUAGE_SPANISH then\n    language_ = \"sp\"\nelseif language_ == cc.LANGUAGE_RUSSIAN then\n    language_ = \"ru\"\nelseif language_ == cc.LANGUAGE_KOREAN then\n    language_ = \"kr\"\nelseif language_ == cc.LANGUAGE_JAPANESE then\n    language_ = \"jp\"\nelseif language_ == cc.LANGUAGE_HUNGARIAN then\n    language_ = \"hu\"\nelseif language_ == cc.LANGUAGE_PORTUGUESE then\n    language_ = \"pt\"\nelseif language_ == cc.LANGUAGE_ARABIC then\n    language_ = \"ar\"\nelse\n    language_ = \"en\"\nend\n\ndevice.language = language_\ndevice.writablePath = cc.FileUtils:getInstance():getWritablePath()\n-- device.cachePath = cc.FileUtils:getInstance():getCachePath()\ndevice.directorySeparator = \"/\"\ndevice.pathSeparator = \":\"\nif device.platform == \"windows\" then\n    device.directorySeparator = \"\\\\\"\n    device.pathSeparator = \";\"\nend\n\nprintInfo(\"# device.platform              = \" .. device.platform)\nprintInfo(\"# device.model                 = \" .. device.model)\nprintInfo(\"# device.language              = \" .. device.language)\nprintInfo(\"# device.writablePath          = \" .. device.writablePath)\n-- printInfo(\"# device.cachePath             = \" .. device.cachePath)\nprintInfo(\"# device.directorySeparator    = \" .. device.directorySeparator)\nprintInfo(\"# device.pathSeparator         = \" .. device.pathSeparator)\nprintInfo(\"#\")\n\n-- start --\n\n--------------------------------\n-- 显示活动指示器\n-- @function [parent=#device] showActivityIndicator\n\n--[[--\n\n显示活动指示器\n\n在 iOS 和 Android 设备上显示系统的活动指示器，可以用于阻塞操作时通知用户需要等待。\n\n]]\n-- end --\n\nfunction device.showActivityIndicator()\n    if DEBUG > 1 then\n        printInfo(\"device.showActivityIndicator()\")\n    end\n    cc.Native:showActivityIndicator()\nend\n\n-- start --\n\n--------------------------------\n-- 隐藏正在显示的活动指示器\n-- @function [parent=#device] hideActivityIndicator\n\n-- end --\n\nfunction device.hideActivityIndicator()\n    if DEBUG > 1 then\n        printInfo(\"device.hideActivityIndicator()\")\n    end\n    cc.Native:hideActivityIndicator()\nend\n\n-- start --\n\n--------------------------------\n-- 显示一个包含按钮的弹出对话框\n-- @function [parent=#device] showAlert\n-- @param string title 对话框标题\n-- @param string message 内容\n-- @param table buttonLabels 包含多个按钮标题的表格对象\n-- @param function listener 回调函数\n\n--[[--\n\n显示一个包含按钮的弹出对话框\n\n~~~ lua\n\nlocal function onButtonClicked(event)\n    if event.buttonIndex == 1 then\n        .... 玩家选择了 YES 按钮\n    else\n        .... 玩家选择了 NO 按钮\n    end\nend\n\ndevice.showAlert(\"Confirm Exit\", \"Are you sure exit game ?\", {\"YES\", \"NO\"}, onButtonClicked)\n\n~~~\n\n当没有指定按钮标题时，对话框会默认显示一个“OK”按钮。\n回调函数获得的表格中，buttonIndex 指示玩家选择了哪一个按钮，其值是按钮的显示顺序。\n\n]]\n\n-- end --\n\nfunction device.showAlert(title, message, buttonLabels, listener)\n    if type(buttonLabels) ~= \"table\" then\n        buttonLabels = {tostring(buttonLabels)}\n    else\n        table.map(buttonLabels, function(v) return tostring(v) end)\n    end\n\n    if DEBUG > 1 then\n        printInfo(\"device.showAlert() - title: %s\", title)\n        printInfo(\"    message: %s\", message)\n        printInfo(\"    buttonLabels: %s\", table.concat(buttonLabels, \", \"))\n    end\n\n\tif device.platform == \"android\" then\n\t\tlocal tempListner = function(event)\n\t\t\tif type(event) == \"string\" then\n\t\t\t\tevent = require(\"framework.json\").decode(event)\n\t\t\t\tevent.buttonIndex = tonumber(event.buttonIndex)\n\t\t\tend\n\t\t\tif listener then listener(event) end\n\t\tend\n\t\tluaj.callStaticMethod(\"org/cocos2dx/utils/PSNative\", \"createAlert\", {title, message, buttonLabels, tempListner}, \"(Ljava/lang/String;Ljava/lang/String;Ljava/util/Vector;I)V\");\n\telse\n\t    local defaultLabel = \"\"\n\t    if #buttonLabels > 0 then\n\t        defaultLabel = buttonLabels[1]\n\t        table.remove(buttonLabels, 1)\n\t    end\n\n\t    cc.Native:createAlert(title, message, defaultLabel)\n\t    for i, label in ipairs(buttonLabels) do\n\t        cc.Native:addAlertButton(label)\n\t    end\n\n\t    if type(listener) ~= \"function\" then\n\t        listener = function() end\n\t    end\n\n\t    cc.Native:showAlert(listener)\n\tend\nend\n\n-- start --\n\n--------------------------------\n-- 取消正在显示的对话框。\n-- @function [parent=#device] cancelAlert\n\n-- end --\n\nfunction device.cancelAlert()\n    if DEBUG > 1 then\n        printInfo(\"device.cancelAlert()\")\n    end\n    cc.Native:cancelAlert()\nend\n\n-- start --\n\n--------------------------------\n-- 返回设备的 OpenUDID 值\n-- @function [parent=#device] getOpenUDID\n-- @return string#string ret (return value: string)  设备的 OpenUDID 值\n\n--[[--\n\n返回设备的 OpenUDID 值\n\nOpenUDID 是为设备仿造的 UDID（唯一设备识别码），可以用来识别用户的设备。\n\n但 OpenUDID 存在下列问题：\n\n-   如果删除了应用再重新安装，获得的 OpenUDID 会发生变化\n-   iOS 7 不支持 OpenUDID\n\n]]\n\n-- end --\n\nfunction device.getOpenUDID()\n    local ret = cc.Native:getOpenUDID()\n    if DEBUG > 1 then\n        printInfo(\"device.getOpenUDID() - Open UDID: %s\", tostring(ret))\n    end\n    return ret\nend\n\n-- start --\n\n--------------------------------\n-- 用浏览器打开指定的网址\n-- @function [parent=#device] openURL\n-- @mycompany \n-- @mycompany \n-- @param string 网址，邮件，拨号等的字符串\n\n--[[--\n\n用浏览器打开指定的网址\n\n~~~ lua\n\n-- 打开网页\ndevice.openURL(\"http://dualface.github.com/quick-cocos2d-x/\")\n\n-- 打开设备上的邮件程序，并创建新邮件，填入收件人地址\ndevice.openURL(\"mailto:nobody@mycompany.com\")\n-- 增加主题和内容\nlocal subject = string.urlencode(\"Hello\")\nlocal body = string.urlencode(\"How are you ?\")\ndevice.openURL(string.format(\"mailto:nobody@mycompany.com?subject=%s&body=%s\", subject, body))\n\n-- 打开设备上的拨号程序\ndevice.openURL(\"tel:123-456-7890\")\n\n~~~\n\n]]\n\n-- end --\n\nfunction device.openURL(url)\n    if DEBUG > 1 then\n        printInfo(\"device.openURL() - url: %s\", tostring(url))\n    end\n    cc.Native:openURL(url)\nend\n\n-- start --\n\n--------------------------------\n-- 显示一个输入框，并返回用户输入的内容。\n-- @function [parent=#device] showInputBox\n-- @param string title 对话框标题\n-- @param string message 提示信息\n-- @param string defaultValue 输入框默认值\n-- @return string#string ret (return value: string)  用户输入的字符串\n\n-- end --\n\nfunction device.showInputBox(title, message, defaultValue)\n    title = tostring(title or \"INPUT TEXT\")\n    message = tostring(message or \"INPUT TEXT, CLICK OK BUTTON\")\n    defaultValue = tostring(defaultValue or \"\")\n    if DEBUG > 1 then\n        printInfo(\"device.showInputBox() - title: %s\", tostring(title))\n        printInfo(\"    message: %s\", tostring(message))\n        printInfo(\"    defaultValue: %s\", tostring(defaultValue))\n    end\n    return cc.Native:getInputText(title, message, defaultValue)\nend\n\nreturn device\n"
  },
  {
    "path": "源代码/mir9/src/framework/display.lua",
    "content": "--[[\n\nCopyright (c) 2011-2014 chukong-inc.com\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in\nall copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\nTHE SOFTWARE.\n\n]]\n\n--------------------------------\n-- @module display\n\n--[[--\n\n与显示图像、场景有关的功能\n\n<br />\n\ndisplay 模块封装了绝大部分与显示有关的功能，并负责根据 config.lua 中定义的分辨率设定计算屏幕的设计分辨率。\n\n<br />\n\n框架初始化后，display 模块提供下列属性：\n\n-   display.sizeInPixels.width,\n-   display.sizeInPixels.height 屏幕的像素分辨率\n-   display.widthInPixels,\n-   display.heightInPixels 屏幕的像素分辨率\n-   display.contentScaleFactor 内容缩放因子\n-   display.size.width,\n-   display.size.height 屏幕的设计分辨率\n-   display.width,\n-   display.height 屏幕的设计分辨率\n-   display.cx,\n-   display.cy 屏幕中央的 x 坐标和 y 坐标\n-   display.left,\n-   display.top,\n-   display.right,\n-   display.bottom 屏幕四边的坐标\n-   display.c_left,\n-   display.c_top,\n-   display.c_right,\n-   display.c_bottom 当父对象在屏幕中央时，屏幕四边的坐标\n\n<br />\n\n颜色：\n\n-   display.COLOR_WHITE 白色, cc.c3b(255, 255, 255)\n-   display.COLOR_BLACK 黑色, cc.c3b(0, 0, 0)\n\n]]\nlocal display = {}\n\nlocal sharedDirector         = cc.Director:getInstance()\nlocal sharedTextureCache     = cc.Director:getInstance():getTextureCache()\nlocal sharedSpriteFrameCache = cc.SpriteFrameCache:getInstance()\nlocal sharedAnimationCache   = cc.AnimationCache:getInstance()\n\n-- check device screen size\nlocal glview = sharedDirector:getOpenGLView()\nif nil == glview then\n    glview = cc.GLViewImpl:createWithRect(\"QuickCocos\",\n        cc.rect(0, 0, CONFIG_SCREEN_WIDTH or 900, CONFIG_SCREEN_HEIGHT or 640))\n    sharedDirector:setOpenGLView(glview)\nend\n\nlocal size = glview:getFrameSize()\ndisplay.sizeInPixels = {width = size.width, height = size.height}\n\nlocal w = display.sizeInPixels.width\nlocal h = display.sizeInPixels.height\n\nif CONFIG_SCREEN_WIDTH == nil or CONFIG_SCREEN_HEIGHT == nil then\n    CONFIG_SCREEN_WIDTH = w\n    CONFIG_SCREEN_HEIGHT = h\nend\n\nif not CONFIG_SCREEN_AUTOSCALE then\n    if w > h then\n        CONFIG_SCREEN_AUTOSCALE = \"FIXED_HEIGHT\"\n    else\n        CONFIG_SCREEN_AUTOSCALE = \"FIXED_WIDTH\"\n    end\nelse\n    CONFIG_SCREEN_AUTOSCALE = string.upper(CONFIG_SCREEN_AUTOSCALE)\nend\n\nlocal scale, scaleX, scaleY\n\nif CONFIG_SCREEN_AUTOSCALE and CONFIG_SCREEN_AUTOSCALE ~=\"NONE\" then\n    if type(CONFIG_SCREEN_AUTOSCALE_CALLBACK) == \"function\" then\n        scaleX, scaleY = CONFIG_SCREEN_AUTOSCALE_CALLBACK(w, h, device.model)\n    end\n\n    if CONFIG_SCREEN_AUTOSCALE == \"FILL_ALL\" then\n        CONFIG_SCREEN_WIDTH = w\n        CONFIG_SCREEN_HEIGHT = h\n        scale = 1.0\n        if cc.bPlugin_ then\n            glview:setDesignResolutionSize(CONFIG_SCREEN_WIDTH, CONFIG_SCREEN_HEIGHT, cc.ResolutionPolicy.NO_BORDER)\n        else\n            glview:setDesignResolutionSize(CONFIG_SCREEN_WIDTH, CONFIG_SCREEN_HEIGHT, cc.ResolutionPolicy.FILL_ALL)\n        end\n    else\n        if not scaleX or not scaleY then\n            scaleX, scaleY = w / CONFIG_SCREEN_WIDTH, h / CONFIG_SCREEN_HEIGHT\n        end\n\n        if CONFIG_SCREEN_AUTOSCALE == \"FIXED_WIDTH\" then\n            scale = scaleX\n            CONFIG_SCREEN_HEIGHT = h / scale\n        elseif CONFIG_SCREEN_AUTOSCALE == \"FIXED_HEIGHT\" then\n            scale = scaleY\n            CONFIG_SCREEN_WIDTH = w / scale\n        else\n            scale = 1.0\n            printError(string.format(\"display - invalid CONFIG_SCREEN_AUTOSCALE \\\"%s\\\"\", CONFIG_SCREEN_AUTOSCALE))\n        end\n        glview:setDesignResolutionSize(CONFIG_SCREEN_WIDTH, CONFIG_SCREEN_HEIGHT, cc.ResolutionPolicy.NO_BORDER)\n    end\nelse\n    CONFIG_SCREEN_WIDTH = w\n    CONFIG_SCREEN_HEIGHT = h\n    scale = 1.0\nend\n\nlocal winSize = sharedDirector:getWinSize()\ndisplay.screenScale        = 2.0\ndisplay.contentScaleFactor = scale\ndisplay.size               = {width = winSize.width, height = winSize.height}\ndisplay.width              = display.size.width\ndisplay.height             = display.size.height\ndisplay.cx                 = display.width / 2\ndisplay.cy                 = display.height / 2\ndisplay.c_left             = -display.width / 2\ndisplay.c_right            = display.width / 2\ndisplay.c_top              = display.height / 2\ndisplay.c_bottom           = -display.height / 2\ndisplay.left               = 0\ndisplay.right              = display.width\ndisplay.top                = display.height\ndisplay.bottom             = 0\ndisplay.widthInPixels      = display.sizeInPixels.width\ndisplay.heightInPixels     = display.sizeInPixels.height\n\nprintInfo(string.format(\"# CONFIG_SCREEN_AUTOSCALE      = %s\", CONFIG_SCREEN_AUTOSCALE))\nprintInfo(string.format(\"# CONFIG_SCREEN_WIDTH          = %0.2f\", CONFIG_SCREEN_WIDTH))\nprintInfo(string.format(\"# CONFIG_SCREEN_HEIGHT         = %0.2f\", CONFIG_SCREEN_HEIGHT))\nprintInfo(string.format(\"# display.widthInPixels        = %0.2f\", display.widthInPixels))\nprintInfo(string.format(\"# display.heightInPixels       = %0.2f\", display.heightInPixels))\nprintInfo(string.format(\"# display.contentScaleFactor   = %0.2f\", display.contentScaleFactor))\nprintInfo(string.format(\"# display.width                = %0.2f\", display.width))\nprintInfo(string.format(\"# display.height               = %0.2f\", display.height))\nprintInfo(string.format(\"# display.cx                   = %0.2f\", display.cx))\nprintInfo(string.format(\"# display.cy                   = %0.2f\", display.cy))\nprintInfo(string.format(\"# display.left                 = %0.2f\", display.left))\nprintInfo(string.format(\"# display.right                = %0.2f\", display.right))\nprintInfo(string.format(\"# display.top                  = %0.2f\", display.top))\nprintInfo(string.format(\"# display.bottom               = %0.2f\", display.bottom))\nprintInfo(string.format(\"# display.c_left               = %0.2f\", display.c_left))\nprintInfo(string.format(\"# display.c_right              = %0.2f\", display.c_right))\nprintInfo(string.format(\"# display.c_top                = %0.2f\", display.c_top))\nprintInfo(string.format(\"# display.c_bottom             = %0.2f\", display.c_bottom))\nprintInfo(\"#\")\n\ndisplay.COLOR_WHITE = cc.c3b(255, 255, 255)\ndisplay.COLOR_BLACK = cc.c3b(0, 0, 0)\ndisplay.COLOR_RED   = cc.c3b(255, 0, 0)\ndisplay.COLOR_GREEN = cc.c3b(0, 255, 0)\ndisplay.COLOR_BLUE  = cc.c3b(0, 0, 255)\n\ndisplay.AUTO_SIZE      = 0\ndisplay.FIXED_SIZE     = 1\ndisplay.LEFT_TO_RIGHT  = 0\ndisplay.RIGHT_TO_LEFT  = 1\ndisplay.TOP_TO_BOTTOM  = 2\ndisplay.BOTTOM_TO_TOP  = 3\n\ndisplay.CENTER        = 1\ndisplay.LEFT_TOP      = 2; display.TOP_LEFT      = 2\ndisplay.CENTER_TOP    = 3; display.TOP_CENTER    = 3\ndisplay.RIGHT_TOP     = 4; display.TOP_RIGHT     = 4\ndisplay.CENTER_LEFT   = 5; display.LEFT_CENTER   = 5\ndisplay.CENTER_RIGHT  = 6; display.RIGHT_CENTER  = 6\ndisplay.BOTTOM_LEFT   = 7; display.LEFT_BOTTOM   = 7\ndisplay.BOTTOM_RIGHT  = 8; display.RIGHT_BOTTOM  = 8\ndisplay.BOTTOM_CENTER = 9; display.CENTER_BOTTOM = 9\n\ndisplay.ANCHOR_POINTS = {\n    cc.p(0.5, 0.5),  -- CENTER\n    cc.p(0, 1),      -- TOP_LEFT\n    cc.p(0.5, 1),    -- TOP_CENTER\n    cc.p(1, 1),      -- TOP_RIGHT\n    cc.p(0, 0.5),    -- CENTER_LEFT\n    cc.p(1, 0.5),    -- CENTER_RIGHT\n    cc.p(0, 0),      -- BOTTOM_LEFT\n    cc.p(1, 0),      -- BOTTOM_RIGHT\n    cc.p(0.5, 0),    -- BOTTOM_CENTER\n}\n\ndisplay.SCENE_TRANSITIONS = {\n    CROSSFADE       = {cc.TransitionCrossFade, 2},\n    FADE            = {cc.TransitionFade, 3, cc.c3b(0, 0, 0)},\n    FADEBL          = {cc.TransitionFadeBL, 2},\n    FADEDOWN        = {cc.TransitionFadeDown, 2},\n    FADETR          = {cc.TransitionFadeTR, 2},\n    FADEUP          = {cc.TransitionFadeUp, 2},\n    FLIPANGULAR     = {cc.TransitionFlipAngular, 3, cc.TRANSITION_ORIENTATION_LEFT_OVER},\n    FLIPX           = {cc.TransitionFlipX, 3, cc.TRANSITION_ORIENTATION_LEFT_OVER},\n    FLIPY           = {cc.TransitionFlipY, 3, cc.TRANSITION_ORIENTATION_UP_OVER},\n    JUMPZOOM        = {cc.TransitionJumpZoom, 2},\n    MOVEINB         = {cc.TransitionMoveInB, 2},\n    MOVEINL         = {cc.TransitionMoveInL, 2},\n    MOVEINR         = {cc.TransitionMoveInR, 2},\n    MOVEINT         = {cc.TransitionMoveInT, 2},\n    PAGETURN        = {cc.TransitionPageTurn, 3, false},\n    ROTOZOOM        = {cc.TransitionRotoZoom, 2},\n    SHRINKGROW      = {cc.TransitionShrinkGrow, 2},\n    SLIDEINB        = {cc.TransitionSlideInB, 2},\n    SLIDEINL        = {cc.TransitionSlideInL, 2},\n    SLIDEINR        = {cc.TransitionSlideInR, 2},\n    SLIDEINT        = {cc.TransitionSlideInT, 2},\n    SPLITCOLS       = {cc.TransitionSplitCols, 2},\n    SPLITROWS       = {cc.TransitionSplitRows, 2},\n    TURNOFFTILES    = {cc.TransitionTurnOffTiles, 2},\n    ZOOMFLIPANGULAR = {cc.TransitionZoomFlipAngular, 2},\n    ZOOMFLIPX       = {cc.TransitionZoomFlipX, 3, cc.TRANSITION_ORIENTATION_LEFT_OVER},\n    ZOOMFLIPY       = {cc.TransitionZoomFlipY, 3, cc.TRANSITION_ORIENTATION_UP_OVER},\n}\n\ndisplay.TEXTURES_PIXEL_FORMAT = {}\n\ndisplay.DEFAULT_TTF_FONT        = \"Arial\"\ndisplay.DEFAULT_TTF_FONT_SIZE   = 24\n\n\n-- start --\n\n--------------------------------\n-- 创建一个新场景，并返回 Scene 场景对象。\n-- @function [parent=#display] newScene\n-- @param string name 场景名称\n-- @return Scene#Scene ret (return value: cc.Scene)  场景对象\n-- @see Scene\n\n-- end --\n\nfunction display.newScene(name)\n    local scene = cc.Scene:create()\n    scene:setNodeEventEnabled(true)\n    scene:setAutoCleanupEnabled()\n    scene.name = name or \"<unknown-scene>\"\n    return scene\nend\n\n-- start --\n\n--------------------------------\n-- 创建一个新场景，并返回 Scene 场景对象。\n-- @function [parent=#display] newPhysicsScene\n-- @param string name 场景名称\n-- @return Scene#Scene ret (return value: cc.Scene)  场景对象\n-- @see Scene\n\n-- end --\n\nfunction display.newPhysicsScene(name)\n    local scene = cc.Scene:createWithPhysics()\n    scene:setNodeEventEnabled(true)\n    scene:setAutoCleanupEnabled()\n    scene.name = name or \"<unknown-scene>\"\n    return scene\nend\n\n\n-- start --\n\n--------------------------------\n-- 用场景切换过渡效果包装场景对象，并返回场景过渡对象。\n-- @function [parent=#display] wrapSceneWithTransition\n-- @param Scene scene 场景对象\n-- @param string transitionType 过渡效果名\n-- @param number time 过渡时间\n-- @param string more 过渡效果附加参数\n-- @return Scene#Scene ret (return value: cc.Scene)  场景对象\n\n--[[--\n\n~~~ lua\n\n-- 创建一个新场景\nlocal nextScene = display.newScene(\"NextScene\")\n-- 包装过渡效果\nlocal transition = display.wrapSceneWithTransition(nextScene, \"fade\", 0.5)\n-- 切换到新场景\ndisplay.replaceScene(transition)\n\n~~~\n\n可用的过渡效果有：\n\n-   crossFade 淡出当前场景的同时淡入下一个场景\n-   fade 淡出当前场景到指定颜色，默认颜色为 cc.c3b(0, 0, 0)，可用 wrapSceneWithTransition() 的最后一个参数指定颜色\n-   fadeBL 从左下角开始淡出场景\n-   fadeDown 从底部开始淡出场景\n-   fadeTR 从右上角开始淡出场景\n-   fadeUp 从顶部开始淡出场景\n-   flipAngular 当前场景倾斜后翻转成下一个场景，默认从左边开始翻转，可以指定为：\n    -   cc.TRANSITION_ORIENTATION_LEFT_OVER 从左边开始\n    -   cc.TRANSITION_ORIENTATION_RIGHT_OVER 从右边开始\n    -   cc.TRANSITION_ORIENTATION_UP_OVER 从顶部开始\n    -   cc.TRANSITION_ORIENTATION_DOWN_OVER 从底部开始\n-   flipX 水平翻转，默认从左往右翻转，可用的附加参数同上\n-   flipY 垂直翻转，默认从上往下翻转，可用的附加参数同上\n-   zoomFlipAngular 倾斜翻转的同时放大，可用的附加参数同上\n-   zoomFlipX 水平翻转的同时放大，可用的附加参数同上\n-   zoomFlipY 垂直翻转的同时放大，可用的附加参数同上\n-   jumpZoom 跳跃放大切换场景\n-   moveInB 新场景从底部进入，直接覆盖现有场景\n-   moveInL 新场景从左侧进入，直接覆盖现有场景\n-   moveInR 新场景从右侧进入，直接覆盖现有场景\n-   moveInT 新场景从顶部进入，直接覆盖现有场景\n-   pageTurn 翻页效果，如果指定附加参数为 true，则表示从左侧往右翻页\n-   rotoZoom 旋转放大切换场景\n-   shrinkGrow 收缩交叉切换场景\n-   slideInB 新场景从底部进入，现有场景同时从顶部退出\n-   slideInL 新场景从左侧进入，现有场景同时从右侧退出\n-   slideInR 新场景从右侧进入，现有场景同时从左侧退出\n-   slideInT 新场景从顶部进入，现有场景同时从底部退出\n-   splitCols 分成多列切换入新场景\n-   splitRows 分成多行切换入新场景，类似百叶窗\n-   turnOffTiles 当前场景分成多个块，逐渐替换为新场景\n\n]]\n\n-- end --\n\nfunction display.wrapSceneWithTransition(scene, transitionType, time, more)\n    local key = string.upper(tostring(transitionType))\n    if string.sub(key, 1, 12) == \"CCTRANSITION\" then\n        key = string.sub(key, 13)\n    end\n\n    if key == \"RANDOM\" then\n        local keys = table.keys(display.SCENE_TRANSITIONS)\n        key = keys[math.random(1, #keys)]\n    end\n\n    if display.SCENE_TRANSITIONS[key] then\n        local cls, count, default = unpack(display.SCENE_TRANSITIONS[key])\n        time = time or 0.2\n\n        if count == 3 then\n            scene = cls:create(time, scene, more or default)\n        else\n            scene = cls:create(time, scene)\n        end\n    else\n        printError(\"display.wrapSceneWithTransition() - invalid transitionType %s\", tostring(transitionType))\n    end\n    return scene\nend\n\n-- start --\n\n--------------------------------\n-- 切换到新场景\n-- @function [parent=#display] replaceScene\n-- @param Scene newScene 场景对象\n-- @param string transitionType 过渡效果名\n-- @param number time 过渡时间\n-- @param mixed more 过渡效果附加参数\n\n--[[--\n\n切换到新场景\n\n~~~ lua\n\n-- 使用红色做过渡色\ndisplay.replaceScene(nextScene, \"fade\", 0.5, cc.c3b(255, 0, 0))\n\n~~~\n\n]]\n-- end --\n\nfunction display.replaceScene(newScene, transitionType, time, more)\n    if sharedDirector:getRunningScene() then\n        if transitionType then\n            newScene = display.wrapSceneWithTransition(newScene, transitionType, time, more)\n        end\n        sharedDirector:replaceScene(newScene)\n    else\n        sharedDirector:runWithScene(newScene)\n    end\nend\n\n-- start --\n\n--------------------------------\n-- 返回当前正在运行的场景对象\n-- @function [parent=#display] getRunningScene\n-- @return Scene#Scene ret (return value: cc.Scene)  场景对象\n\n-- end --\n\nfunction display.getRunningScene()\n    return sharedDirector:getRunningScene()\nend\n\n-- start --\n\n--------------------------------\n-- 暂停当前场景\n-- @function [parent=#display] pause\n\n-- end --\n\nfunction display.pause()\n    sharedDirector:pause()\nend\n\n-- start --\n\n--------------------------------\n-- 恢复当前暂停的场景\n-- @function [parent=#display] resume\n\n-- end --\n\nfunction display.resume()\n    sharedDirector:resume()\nend\n\n-- start --\n\n--------------------------------\n-- 创建并返回一个 Layer 层对象\n-- @function [parent=#display] newLayer\n-- @see Layer\n\n-- end --\n\nfunction display.newLayer()\n    local layer\n\n    if cc.bPlugin_ then\n        layer = display.newNode()\n        layer:setContentSize(display.width, display.height)\n        layer:setTouchEnabled(true)\n    else\n        layer = cc.Layer:create()\n    end\n\n    return layer\nend\n\n-- start --\n\n--------------------------------\n-- 创建一个颜色填充层\n-- @function [parent=#display] newColorLayer\n-- @param ccColor4B color\n-- @return LayerColor#LayerColor ret (return value: cc.LayerColor) \n-- @see LayerColor\n\n-- end --\n\nfunction display.newColorLayer(color)\n    local node\n\n    if cc.bPlugin_ then\n        node = display.newNode()\n        local layer = cc.LayerColor:create(color)\n        node:addChild(layer)\n        node:setTouchEnabled(true)\n        node:setTouchSwallowEnabled(true)\n\n        node.setContentSize = layer.setContentSize\n        node.getContentSize = layer.getContentSize\n    else\n        node = cc.LayerColor:create(color)\n    end\n\n    return node\nend\n\n-- start --\n\n--------------------------------\n-- 创建并返回一个 Node 对象\n-- @function [parent=#display] newNode\n-- @return Node#Node ret (return value: cc.Node)  Node对象\n-- @see Node\n\n\n--[[--\n\n创建并返回一个 Node 对象\n\nNode 对象并不能显示对象，但可以作为其他显示对象的容器（起到群组的作用）。具体请参考 Node 。\n\n~~~ lua\n\nlocal group = display.newNode()     -- 创建一个容器\ngroup:addChild(sprite1)             -- 添加显示对象到容器中\ngroup:addChild(sprite2)             -- 添加显示对象到容器中\n\n-- 移动容器时，其中包含的子对象也会同时移动\ntransition.moveBy(group, {time = 2.0, x = 100})\n\n~~~\n\n]]\n-- end --\n\nfunction display.newNode()\n    return cc.Node:create()\nend\n\nif cc.ClippingRectangleNode then\n    cc.ClippingRegionNode = cc.ClippingRectangleNode\nelse\n    cc.ClippingRectangleNode = cc.ClippingRegionNode\nend\n\n-- start --\n\n--------------------------------\n-- 创建并返回一个 ClippingRectangleNode 对象。\n-- @function [parent=#display] newClippingRectangleNode\n-- @param table rect 指定的区域\n-- @return ClippingRectangleNode#ClippingRectangleNode ret (return value: cc.ClippingRectangleNode)  ClippingRectangleNode\n\n\n--[[--\n\n创建并返回一个 ClippingRectangleNode 对象。\n\n创建 ClippingRectangleNode 对象时需要指定一个屏幕区域，然后在显示时，所以加入 ClippingRectangleNode 对象的内容都会进行剪裁，超出指定区域的内容不会显示。\n\n~~~ lua\n\n-- 剪裁区域从屏幕左下角靠内 100 点，到屏幕右上角\nlocal rect = cc.rect(display.left + 100,\n                    display.bottom + 100,\n                    display.width - 200,\n                    display.height - 200)\nlocal clipnode = display.newClippingRegionNode(rect)\n\nclipnode:addChild(sprite1)\nclipnode:addChild(sprite2)\n\nscene:addChild(clipnode)\n\n~~~\n\n注意：ClippingRectangleNode 的父对象其坐标必须是 0, 0。\n\n]]\n-- end --\n\nfunction display.newClippingRectangleNode(rect)\n    if rect then\n        return cc.ClippingRegionNode:create(rect)\n    else\n        return cc.ClippingRegionNode:create()\n    end\nend\n\n-- start --\n\n--------------------------------\n-- 创建并返回一个 ClippingRectangleNode 对象。\n-- @function [parent=#display] newClippingRegionNode\n-- @param table rect 指定的区域\n-- @return ClippingRectangleNode#ClippingRectangleNode ret (return value: cc.ClippingRectangleNode)  ClippingRectangleNode\n\n--[[--\n旧接口,建议用display.newClippingRectangleNode代替\n]]\n-- end --\n\ndisplay.newClippingRegionNode = display.newClippingRectangleNode\n\n-- start --\n\n--------------------------------\n-- 创建并返回一个 Sprite 显示对象。\n-- @function [parent=#display] newSprite\n-- @param mixed 图像名或SpriteFrame对象\n-- @param number x\n-- @param number y\n-- @param table params\n-- @return Sprite#Sprite ret (return value: cc.Sprite) \n-- @see Sprite\n\n\n--[[--\n\n创建并返回一个 Sprite 显示对象。\n\ndisplay.newSprite() 有三种方式创建显示对象：\n\n-   从图片文件创建\n-   从缓存的图像帧创建\n-   从 SpriteFrame 对象创建\n\n~~~ lua\n\n-- 从图片文件创建显示对象\nlocal sprite1 = display.newSprite(\"hello1.png\")\n\n-- 从缓存的图像帧创建显示对象\n-- 图像帧的名字就是图片文件名，但为了和图片文件名区分，所以此处需要在文件名前添加 “#” 字符\n-- 添加 “#” 的规则适用于所有需要区分图像和图像帧的地方\nlocal sprite2 = display.newSprite(\"#frame0001.png\")\n\n-- 从 SpriteFrame 对象创建\nlocal frame = display.newFrame(\"frame0002.png\")\nlocal sprite3 = display.newSprite(frame)\n\n~~~\n\n如果指定了 x,y 参数，那么创建显示对象后会调用对象的 setPosition() 方法设置对象位置。\n\n]]\n-- end --\n\nfunction display.newSprite(filename, x, y, params)\n    local spriteClass = nil\n    local size = nil\n\n    if params then\n        spriteClass = params.class\n        size = params.size\n    end\n    if not spriteClass then spriteClass = cc.Sprite end\n\n    local t = type(filename)\n    if t == \"userdata\" then t = tolua.type(filename) end\n    local sprite\n\n    if not filename then\n        sprite = spriteClass:create()\n    elseif t == \"string\" then\n        if string.byte(filename) == 35 then -- first char is #\n            local frame = display.newSpriteFrame(string.sub(filename, 2))\n            if frame then\n                if params and params.capInsets then\n                    sprite = spriteClass:createWithSpriteFrame(frame, params.capInsets)\n                else\n                    sprite = spriteClass:createWithSpriteFrame(frame)\n                end\n            end\n        else\n            if display.TEXTURES_PIXEL_FORMAT[filename] then\n                cc.Texture2D:setDefaultAlphaPixelFormat(display.TEXTURES_PIXEL_FORMAT[filename])\n                sprite = spriteClass:create(filename)\n                cc.Texture2D:setDefaultAlphaPixelFormat(cc.TEXTURE2D_PIXEL_FORMAT_RGBA8888)\n            else\n                if params and params.capInsets then\n                    sprite = spriteClass:create(params.capInsets, filename)\n                else\n                    sprite = spriteClass:create(filename)\n                end\n            end\n        end\n    elseif t == \"cc.SpriteFrame\" then\n        sprite = spriteClass:createWithSpriteFrame(filename)\n    elseif t == \"cc.Texture2D\" then\n        sprite = spriteClass:createWithTexture(filename)\n    else\n        printError(\"display.newSprite() - invalid filename value type\")\n        sprite = spriteClass:create()\n    end\n\n    if sprite then\n        if x and y then sprite:setPosition(x, y) end\n        if size then sprite:setContentSize(size) end\n    else\n        printError(\"display.newSprite() - create sprite failure, filename %s\", tostring(filename))\n        sprite = spriteClass:create()\n    end\n\n    return sprite\nend\n\n-- start --\n\n--------------------------------\n-- 创建并返回一个 Sprite9Scale 显示对象。\n-- @function [parent=#display] newScale9Sprite\n-- @param string filename 图像名\n-- @param integer x\n-- @param integer y\n-- @param table size\n-- @return Scale9Sprite#Scale9Sprite ret (return value: ccui.Scale9Sprite) Sprite9Scale显示对象\n\n\n--[[--\n\n创建并返回一个 Sprite9Scale 显示对象。\n\n格式：\n\nsprite = display.newScale9Sprite(图像名, [x, y], [size 对象])\n\nSprite9Scale 就是通常所說的“九宫格”图像。一个矩形图像会被分为 9 部分，然后根据要求拉伸图像，同时保证拉伸后的图像四边不变形。\n\n~~~ lua\n\n-- 创建一个 Scale9 图像，并拉伸到 400, 300 点大小\nlocal sprite = display.newScale9Sprite(\"Box.png\", 0, 0, cc.size(400, 300))\n\n~~~\n\n]]\n-- end --\n\nfunction display.newScale9Sprite(filename, x, y, size, capInsets)\n    local scale9sp = ccui.Scale9Sprite or cc.Scale9Sprite\n    return display.newSprite(filename, x, y, {class = scale9sp, size = size, capInsets = capInsets})\nend\n\n-- start --\n\n--------------------------------\n-- 创建并返回一个平铺的 Sprite 显示对象\n-- @function [parent=#display] newTilesSprite\n-- @param string filename 图像名\n-- @param cc.rect rect    平铺范围\n-- @return Sprite#Sprite ret (return value: cc.Sprite)\n\n-- end --\n\nfunction display.newTilesSprite(filename, rect)\n    if not rect then\n        rect = cc.rect(0, 0, display.width, display.height)\n    end\n    local sprite = cc.Sprite:create(filename, rect)\n    if not sprite then\n        printError(\"display.newTilesSprite() - create sprite failure, filename %s\", tostring(filename))\n        return\n    end\n\n    sprite:getTexture():setTexParameters(gl.LINEAR, gl.LINEAR, gl.REPEAT, gl.REPEAT)\n\n    display.align(sprite, display.LEFT_BOTTOM, 0, 0)\n\n    return sprite\nend\n\n-- start --\n\n--------------------------------\n-- create a tiled SpriteBatchNode, the image can not a POT file.\n-- @function [parent=#display] newTiledBatchNode\n-- @param mixed filename As same a the first parameter for display.newSprite\n-- @param string plistFile Texture(plist) image filename, filename must be a part of the texture.\n-- @param size size The tiled node size, use cc.size create it please.\n-- @param integer hPadding Horizontal padding, it will display 1 px gap on moving the node, set padding for fix it.\n-- @param integer vPadding Vertical padding.\n-- @return SpriteBatchNode#SpriteBatchNode ret (return value: cc.SpriteBatchNode) \n\n-- end --\n\nfunction display.newTiledBatchNode(filename, plistFile, size, hPadding, vPadding)\n    size = size or cc.size(display.width, display.height)\n    hPadding = hPadding or 0\n    vPadding = vPadding or 0\n    local __sprite = display.newSprite(filename)\n    local __sliceSize = __sprite:getContentSize()\n    __sliceSize.width = __sliceSize.width - hPadding\n    __sliceSize.height = __sliceSize.height - vPadding\n    local __xRepeat = math.ceil(size.width/__sliceSize.width)\n    local __yRepeat = math.ceil(size.height/__sliceSize.height)\n    -- How maney sprites we need to fill in tiled node?\n    local __capacity = __xRepeat * __yRepeat\n    local __batch = display.newBatchNode(plistFile, __capacity)\n    local __newSize = cc.size(0,0)\n\n    for y=0,__yRepeat-1 do\n        for x=0,__xRepeat-1 do\n            __newSize.width = __newSize.width + __sliceSize.width\n            __sprite = display.newSprite(filename)\n                :align(display.LEFT_BOTTOM,x*__sliceSize.width, y*__sliceSize.height)\n                :addTo(__batch)\n        end\n        __newSize.height = __newSize.height + __sliceSize.height\n    end\n    __batch:setContentSize(__newSize)\n\n    return __batch, __newSize.width, __newSize.height\nend\n\n-- start --\n\n--------------------------------\n-- Create a Filtered Sprite\n-- @function [parent=#display] newFilteredSprite\n-- @param mixed filename As same a the first parameter for display.newSprite\n-- @param mixed filters One of the following:\n-- @param table params A or some parameters for Filter.\n-- @return FilteredSprite#FilteredSprite ret (return value: cc.FilteredSprite)\n\n-- end --\n\nfunction display.newFilteredSprite(filename, filters, params)\n    local __one = {class=cc.FilteredSpriteWithOne}\n    local __multi = {class=cc.FilteredSpriteWithMulti}\n    if not filters then return display.newSprite(filtename, nil,nil , __one) end\n    local __sp = nil\n    local __type = type(filters)\n    if __type == \"userdata\" then __type = tolua.type(filters) end\n    --print(\"display.newFSprite type:\", __type)\n    if __type == \"string\" then\n        __sp = display.newSprite(filename, nil, nil, __one)\n        filters = filter.newFilter(filters, params)\n        __sp:setFilter(filters)\n    elseif __type == \"table\" then\n        assert(#filters > 1, \"display.newFilteredSprite() - Please give me 2 or more filters!\")\n        __sp = display.newSprite(filename, nil, nil, __multi)\n        -- treat filters as {\"FILTER_NAME\", \"FILTER_NAME\"}\n        if type(filters[1]) == \"string\" then\n            __sp:setFilters(filter.newFilters(filters, params))\n        else\n            -- treat filters as {Filter, Filter , ...}\n            local __filters = cc.Array:create()\n            for i in ipairs(filters) do\n                __filters:addObject(filters[i])\n            end\n            __sp:setFilters(__filters)\n        end\n    elseif __type == \"Array\" then\n        -- treat filters as Array(Filter, Filter, ...)\n        __sp = display.newSprite(filename, nil, nil, __multi)\n        __sp:setFilters(filters)\n    else\n        -- treat filters as Filter\n        __sp = display.newSprite(filename, nil, nil, __one)\n        __sp:setFilter(filters)\n    end\n    return __sp\nend\n\n-- start --\n\n--------------------------------\n-- Create a Gray Sprite by FilteredSprite\n-- @function [parent=#display] newGraySprite\n-- @param mixed filename As same a the first parameter for display.newSprite\n-- @param table params As same as the third parameter for display.newFilteredSprite\n-- @return FilteredSprite#FilteredSprite ret (return value: cc.FilteredSprite)\n\n-- end --\n\nfunction display.newGraySprite(filename, params)\n    return display.newFilteredSprite(filename, \"GRAY\", params)\nend\n\n-- start --\n\n--------------------------------\n-- 创建并返回一个空的 DrawNode 对象\n-- @function [parent=#display] newDrawNode\n-- @return DrawNode#DrawNode ret (return value: cc.DrawNode) \n-- @see DrawNode\n\n-- end --\n\nfunction display.newDrawNode()\n    return cc.DrawNode:create()\nend\n\n-- start --\n\n--------------------------------\n-- 创建并返回一个 DrawNode（实心圆）对象。\n-- @function [parent=#display] newSolidCircle\n-- @param number radius 实心圆的半径\n-- @param table params 创建圆的参数 x,y为圆点位置 color中圆的颜色\n-- @return DrawNode#DrawNode ret (return value: cc.DrawNode) \n-- @see DrawNode\n\n\n--[[--\n\n创建并返回一个 DrawNode（实心圆）对象。\n\n~~~ lua\n\nlocal circle = display.newSolidCircle(10, {x = 150, y = 150, color = cc.c4f(1, 1, 1, 1)})\ncircle:addTo(scene)\n\n~~~\n\n]]\n-- end --\n\nfunction display.newSolidCircle(radius, params)\n    local circle = display.newDrawNode()\n    circle:drawDot(cc.p(params.x or 0, params.y or 0),\n        radius or 0, params.color or cc.c4f(0, 0, 0, 1))\n    return circle\nend\n\n-- start --\n\n--------------------------------\n-- 创建并返回一个 DrawNode （圆）对象。\n-- @function [parent=#display] newCircle\n-- @param number radius\n-- @param table params 有参数，x,y 圆的位置 填充色 fillColor, 边线色 borderColor 及边线宽度 borderWidth\n-- @return DrawNode#DrawNode ret (return value: cc.DrawNode) \n-- @see DrawNode\n\n\n--[[--\n\n创建并返回一个 DrawNode （圆）对象。\n\n~~~ lua\n\n--创建一个半径为50, 圆心在(100,100),中间填充为红色,边线为绿色,边线的宽度为2 的圆\nlocal circle = display.newCircle(50,\n        {x = 100, y = 100,\n        fillColor = cc.c4f(1, 0, 0, 1),\n        borderColor = cc.c4f(0, 1, 0, 1),\n        borderWidth = 2})\n\n~~~\n\n]]\n-- end --\n\nfunction display.newCircle(radius, params)\n    params = checktable(params)\n\n    local function makeVertexs(radius)\n        local segments = params.segments or 32\n        local startRadian = 0\n        local endRadian = math.pi * 2\n        local posX = params.x or 0\n        local posY = params.y or 0\n        if params.startAngle then\n            startRadian = math.angle2radian(params.startAngle)\n        end\n        if params.endAngle then\n            endRadian = startRadian + math.angle2radian(params.endAngle)\n        end\n        local radianPerSegm = 2 * math.pi / segments\n        local points = {}\n        for i = 1, segments do\n            local radii = startRadian + i * radianPerSegm\n            if radii > endRadian then break end\n            points[#points + 1] = {posX + radius * math.cos(radii), posY + radius * math.sin(radii)}\n        end\n        return points\n    end\n\n    local points = makeVertexs(radius)\n    local circle = display.newPolygon(points, params)\n    if circle then\n        circle.radius = radius\n        circle.params = params\n\n        function circle:setRadius(radius)\n            self:clear()\n            local points = makeVertexs(radius)\n            display.newPolygon(points, params, self)\n        end\n\n        function circle:setLineColor(color)\n            self:clear()\n            local points = makeVertexs(radius)\n            params.borderColor = color\n            display.newPolygon(points, params, self)\n        end\n    end\n    return circle\nend\n\n-- start --\n\n--------------------------------\n-- 创建并返回一个 DrawNode （矩形）对象。\n-- @function [parent=#display] newRect\n-- @param table rect table\n-- @param table params 有参数，填充色 fillColor, 边线色 borderColor 及边线宽度 borderWidth\n-- @return DrawNode#DrawNode ret (return value: cc.DrawNode) \n-- @see ShapeNode\n\n\n--[[--\n\n创建并返回一个 DrawNode （矩形）对象。\n\n格式：\n\nshape = display.newRect(rect表, [参数])\n\n~~~ lua\n\n-- 创建一个宽度 200，高度 100 的矩形，并且定位于 50, 80\nlocal shape3 = display.newRect(cc.rect(50, 80, 200, 100))\n\n-- 创建一个宽度 100, 高度 100 的矩形，并定位于 40,40\n-- 并设置它的中间填充色 fillColor, 边线色 borderColor 及边线宽度 borderWidth\nlocal shape4 = display.newRect(cc.rect(100, 100, 40, 40),\n        {fillColor = cc.c4f(1,0,0,1), borderColor = cc.c4f(0,1,0,1), borderWidth = 5})\n\n~~~\n\n]]\n-- end --\n\nfunction display.newRect(rect, params)\n    local x, y, width, height = 0, 0\n    x = rect.x or 0\n    y = rect.y or 0\n    height = rect.height\n    width = rect.width\n\n    local points = {\n        {x,y},\n        {x + width, y},\n        {x + width, y + height},\n        {x, y + height}\n    }\n    return display.newPolygon(points, params)\nend\n\n-- start --\n\n--------------------------------\n-- 创建并返回一个 DrawNode （线性）对象。\n-- @function [parent=#display] newLine\n-- @param table point table\n-- @param table params 有参数，边线色 borderColor 及边线宽度 borderWidth\n-- @return DrawNode#DrawNode ret (return value: cc.DrawNode) \n-- @see ShapeNode\n\n\n--[[--\n\n创建并返回一个 DrawNode （线性）对象。\n\n格式：\n\nshape = display.newLine(point表, [参数])\n\n~~~ lua\n\n-- 创建一个线宽为2，颜色为红色，从(10,10)到(100,100)的线段\nlocal shape3 = display.newLine({(10, 10), (100,100)},\n    {borderColor = cc.c4f(1.0, 0.0, 0.0, 1.0),\n    borderWidth = 1})\n\n~~~\n\n]]\n-- end --\n\nfunction display.newLine(points, params)\n    local radius\n    local borderColor\n    local scale\n\n    if not params then\n        borderColor = cc.c4f(0,0,0,1)\n        radius = 0.5\n        scale = 1.0\n    else\n        borderColor = params.borderColor or cc.c4f(0,0,0,1)\n        radius = (params.borderWidth and params.borderWidth/2) or 0.5\n        scale = checknumber(params.scale or 1.0)\n    end\n\n    for i, p in ipairs(points) do\n        p = cc.p(p[1] * scale, p[2] * scale)\n        points[i] = p\n    end\n\n    local drawNode = cc.DrawNode:create()\n    drawNode:drawSegment(points[1], points[2], radius, borderColor)\n\n    return drawNode\nend\n\n-- start --\n\n--------------------------------\n-- 创建并返回一个 PolygonShape （多边形）对象。\n-- @function [parent=#display] newPolygon\n-- @param table points 包含多边形每一个点坐标的表格对象\n-- @param number scale 缩放比例\n-- @return DrawNode#DrawNode ret (return value: cc.DrawNode)  DrawNode\n-- @see DrawNode\n\n\n--[[--\n\n创建并返回一个 PolygonShape （多边形）对象。\n\n~~~ lua\n\nlocal points = {\n    {10, 10},  -- point 1\n    {50, 50},  -- point 2\n    {100, 10}, -- point 3\n}\nlocal polygon = display.newPolygon(points)\n\n~~~\n\n]]\n-- end --\n\nfunction display.newPolygon(points, params, drawNode)\n    params = checktable(params)\n    local scale = checknumber(params.scale or 1.0)\n    local borderWidth = checknumber(params.borderWidth or 0.5)\n    local fillColor = params.fillColor or cc.c4f(1, 1, 1, 0)\n    local borderColor = params.borderColor or cc.c4f(0, 0, 0, 1)\n\n    local pts = {}\n    for i, p in ipairs(points) do\n        pts[i] = {x = p[1] * scale, y = p[2] * scale}\n    end\n\n    drawNode = drawNode or cc.DrawNode:create()\n    drawNode:drawPolygon(pts, {\n        fillColor = fillColor,\n        borderWidth = borderWidth,\n        borderColor = borderColor\n    })\n\n    if drawNode then\n        function drawNode:setLineStipple()\n        end\n\n        function drawNode:setLineStippleEnabled()\n        end\n\n        function drawNode:setLineColor(color)\n        end\n    end\n    return drawNode\nend\n\n-- start --\n\n--------------------------------\n-- 用位图字体创建文本显示对象，并返回 Label 对象。\n-- @function [parent=#display] newBMFontLabel\n-- @param table params 参数表格对象\n-- @return Label#Label ret (return value: cc.Label)  Label对象\n\n--[[--\n\n用位图字体创建文本显示对象，并返回 Label 对象。\n\nBMFont 通常用于显示英文内容，因为英文字母加数字和常用符号也不多，生成的 BMFont 文件较小。如果是中文，应该用 TTFLabel。\n\n可用参数：\n\n-    text: 要显示的文本\n-    font: 字体文件名\n-    align: 文字的水平对齐方式（可选）\n-    maxLineWidth: 最大行宽（可选）\n-    offsetX: 图像的X偏移量（可选）\n-    offsetY: 图像的Y偏移量（可选）\n-    x, y: 坐标（可选）\n\n~~~ lua\n\nlocal label = display.newBMFontLabel({\n    text = \"Hello\",\n    font = \"UIFont.fnt\",\n})\n\n~~~\n\n]]\n-- end --\n\nfunction display.newBMFontLabel(params)\n    assert(type(params) == \"table\",\n           \"[framework.display] newBMFontLabel() invalid params\")\n\n    local text      = tostring(params.text)\n    local font      = params.font\n    local textAlign = params.align or cc.TEXT_ALIGNMENT_LEFT\n    local maxLineW  = params.maxLineWidth or 0\n    local offsetX   = params.offsetX or 0\n    local offsetY   = params.offsetY or 0\n    local x, y      = params.x, params.y\n    assert(font ~= nil, \"framework.display.newBMFontLabel() - not set font\")\n\n    local label = cc.Label:createWithBMFont(font, text, textAlign, maxLineW, cc.p(offsetX, offsetY));\n    if not label then return end\n\n    if type(x) == \"number\" and type(y) == \"number\" then\n        label:setPosition(x, y)\n    end\n\n    return label\nend\n\n-- start --\n\n--------------------------------\n-- 使用 TTF 字体创建文字显示对象，并返回 Label 对象。\n-- @function [parent=#display] newTTFLabel\n-- @param table params 参数表格对象\n-- @return Label#Label ret (return value: cc.Label)  Label对象\n\n--[[--\n\n使用 TTF 字体创建文字显示对象，并返回 Label 对象。\n\n可用参数：\n\n-    text: 要显示的文本\n-    font: 字体名，如果是非系统自带的 TTF 字体，那么指定为字体文件名\n-    size: 文字尺寸，因为是 TTF 字体，所以可以任意指定尺寸\n-    color: 文字颜色（可选），用 cc.c3b() 指定，默认为白色\n-    align: 文字的水平对齐方式（可选）\n-    valign: 文字的垂直对齐方式（可选），仅在指定了 dimensions 参数时有效\n-    dimensions: 文字显示对象的尺寸（可选），使用 cc.size() 指定\n-    x, y: 坐标（可选）\n\nalign 和 valign 参数可用的值：\n\n-    cc.TEXT_ALIGNMENT_LEFT 左对齐\n-    cc.TEXT_ALIGNMENT_CENTER 水平居中对齐\n-    cc.TEXT_ALIGNMENT_RIGHT 右对齐\n-    cc.VERTICAL_TEXT_ALIGNMENT_TOP 垂直顶部对齐\n-    cc.VERTICAL_TEXT_ALIGNMENT_CENTER 垂直居中对齐\n-    cc.VERTICAL_TEXT_ALIGNMENT_BOTTOM 垂直底部对齐\n\n~~~ lua\n\n-- 创建一个居中对齐的文字显示对象\nlocal label = display.newTTFLabel({\n    text = \"Hello, World\",\n    font = \"Marker Felt\",\n    size = 64,\n    align = cc.TEXT_ALIGNMENT_CENTER -- 文字内部居中对齐\n})\n\n-- 左对齐，并且多行文字顶部对齐\nlocal label = display.newTTFLabel({\n    text = \"Hello, World\\n您好，世界\",\n    font = \"Arial\",\n    size = 64,\n    color = cc.c3b(255, 0, 0), -- 使用纯红色\n    align = cc.TEXT_ALIGNMENT_LEFT,\n    valign = cc.VERTICAL_TEXT_ALIGNMENT_TOP,\n    dimensions = cc.size(400, 200)\n})\n\n~~~\n\n]]\n-- end --\n\nfunction display.newTTFLabel(params)\n    assert(type(params) == \"table\",\n           \"[framework.display] newTTFLabel() invalid params\")\n\n    local text       = tostring(params.text)\n    local font       = params.font or display.DEFAULT_TTF_FONT\n    local size       = params.size or display.DEFAULT_TTF_FONT_SIZE\n    local color      = params.color or display.COLOR_WHITE\n    local textAlign  = params.align or cc.TEXT_ALIGNMENT_LEFT\n    local textValign = params.valign or cc.VERTICAL_TEXT_ALIGNMENT_TOP\n    local x, y       = params.x, params.y\n    local dimensions = params.dimensions or cc.size(0, 0)\n\n    assert(type(size) == \"number\",\n           \"[framework.display] newTTFLabel() invalid params.size\")\n\n    local label\n    if cc.FileUtils:getInstance():isFileExist(font) then\n        label = cc.Label:createWithTTF(text, font, size, dimensions, textAlign, textValign)\n    else\n        label = cc.Label:createWithSystemFont(text, font, size, dimensions, textAlign, textValign)\n    end\n\n    if label then\n        label:setColor(color)\n        if x and y then label:setPosition(x, y) end\n    end\n\n    return label\nend\n\n-- start --\n\n--------------------------------\n-- 将指定的显示对象按照特定锚点对齐。\n-- @function [parent=#display] align\n-- @param Sprite target 显示对象\n-- @param integer anchorPoint 锚点位置\n-- @param integer x\n-- @param integer y\n\n\n--[[--\n\n将指定的显示对象按照特定锚点对齐。\n\n格式：\n\ndisplay.align(显示对象, 锚点位置, [x, y])\n\n显示对象锚点位置：\n\n-   display.CENTER 图像中央\n-   display.LEFT_TOP,\n-   display.TOP_LEFT 图像左上角\n-   display.CENTER_TOP,\n-   display.TOP_CENTER 图像顶部的中间\n-   display.RIGHT_TOP,\n-   display.TOP_RIGHT 图像顶部的中间\n-   display.CENTER_LEFT,\n-   display.LEFT_CENTER 图像左边的中间\n-   display.CENTER_RIGHT,\n-   display.RIGHT_CENTER 图像右边的中间\n-   display.BOTTOM_LEFT,\n-   display.LEFT_BOTTOM 图像左边的底部\n-   display.BOTTOM_RIGHT,\n-   display.RIGHT_BOTTOM 图像右边的底部\n-   display.BOTTOM_CENTER,\n-   display.CENTER_BOTTOM 图像中间的底部\n\n~~~ lua\n\n-- 将图像按左上角对齐，并放置在屏幕左上角\ndisplay.align(sprite, display.LEFT_TOP, 0, 0)\n\n~~~\n\n]]\n-- end --\n\nfunction display.align(target, anchorPoint, x, y)\n    target:setAnchorPoint(display.ANCHOR_POINTS[anchorPoint])\n    if x and y then target:setPosition(x, y) end\nend\n\nfunction display.addImageAsync(imagePath, callback)\n    sharedTextureCache:addImageAsync(imagePath, callback)\nend\n\n-- start --\n\n--------------------------------\n-- 将指定的 Sprite Sheets 材质文件及其数据文件载入图像帧缓存。\n-- @function [parent=#display] addSpriteFrames\n-- @param string plistFilename 数据文件名\n-- @param string image 材质文件名\n-- @see Sprite Sheets\n\n\n--[[--\n\n将指定的 Sprite Sheets 材质文件及其数据文件载入图像帧缓存。\n\n格式：\n\ndisplay.addSpriteFrames(数据文件名, 材质文件名)\n\n~~~ lua\n\n-- 同步加载纹理\ndisplay.addSpriteFrames(\"Sprites.plist\", \"Sprites.png\")\n\n-- 异步加载纹理\nlocal cb = function(plist, image)\n    -- do something\nend\ndisplay.addSpriteFrames(\"Sprites.plist\", \"Sprites.png\", cb)\n\n~~~\n\nSprite Sheets 通俗一点解释就是包含多张图片的集合。Sprite Sheets 材质文件由多张图片组成，而数据文件则记录了图片在材质文件中的位置等信息。\n\n]]\n-- end --\n\nfunction display.addSpriteFrames(plistFilename, image, handler)\n    local async = type(handler) == \"function\"\n    local asyncHandler = nil\n    if async then\n        asyncHandler = function()\n            local texture = sharedTextureCache:getTextureForKey(image)\n            assert(texture, string.format(\"The texture %s, %s is unavailable.\", plistFilename, image))\n            sharedSpriteFrameCache:addSpriteFrames(plistFilename, texture)\n            handler(plistFilename, image)\n        end\n    end\n\n    if display.TEXTURES_PIXEL_FORMAT[image] then\n        cc.Texture2D:setDefaultAlphaPixelFormat(display.TEXTURES_PIXEL_FORMAT[image])\n        if async then\n            sharedTextureCache:addImageAsync(image, asyncHandler)\n        else\n            sharedSpriteFrameCache:addSpriteFrames(plistFilename, image)\n        end\n        cc.Texture2D:setDefaultAlphaPixelFormat(cc.TEXTURE2D_PIXEL_FORMAT_RGBA8888)\n    else\n        if async then\n            sharedTextureCache:addImageAsync(image, asyncHandler)\n        else\n            sharedSpriteFrameCache:addSpriteFrames(plistFilename, image)\n        end\n    end\nend\n\n-- start --\n\n--------------------------------\n-- 从内存中卸载 Sprite Sheets 材质和数据文件\n-- @function [parent=#display] removeSpriteFramesWithFile\n-- @param string plistFilename 数据文件名\n-- @param string image 材质文件名\n\n-- end --\n\nfunction display.removeSpriteFramesWithFile(plistFilename, imageName)\n    sharedSpriteFrameCache:removeSpriteFramesFromFile(plistFilename)\n    if imageName then\n        display.removeSpriteFrameByImageName(imageName)\n    end\nend\n\n-- start --\n\n--------------------------------\n-- 设置材质格式。\n-- @function [parent=#display] setTexturePixelFormat\n-- @param string filename 材质文件名\n-- @param integer format 材质格式\n-- @see Texture Pixel Format\n\n\n--[[--\n\n设置材质格式。\n\n为了节约内存，我们会使用一些颜色品质较低的材质格式，例如针对背景图使用 cc.TEXTURE2D_PIXEL_FORMAT_RGB565 格式。\n\ndisplay.setTexturePixelFormat() 可以指定材质文件的材质格式，这样在加载材质文件时就会使用指定的格式。\n\n]]\n-- end --\n\nfunction display.setTexturePixelFormat(filename, format)\n    display.TEXTURES_PIXEL_FORMAT[filename] = format\nend\n\n-- start --\n\n--------------------------------\n-- 从图像帧缓存中删除一个图像。\n-- @function [parent=#display] removeSpriteFrameByImageName\n-- @param string imageName 图像文件名\n\n--[[--\n\n从图像帧缓存中删除一个图像。\n\n有时候，某些图像仅在特定场景中使用，例如背景图。那么在场景退出时，就可以用 display.removeSpriteFrameByImageName() 从缓存里删除不再使用的图像数据。\n\n此外，Scene 提供了 markAutoCleanupImage() 接口，可以指定场景退出时需要自动清理的图像，推荐使用。\n\n]]\n-- end --\n\nfunction display.removeSpriteFrameByImageName(imageName)\n    sharedSpriteFrameCache:removeSpriteFrameByName(imageName)\n    cc.Director:getInstance():getTextureCache():removeTextureForKey(imageName)\nend\n\n-- start --\n\n--------------------------------\n-- 从指定的图像文件创建并返回一个批量渲染对象。\n-- @function [parent=#display] newBatchNode\n-- @param string image 图像文件名\n-- @param integer capacity\n-- @return SpriteBatchNode#SpriteBatchNode ret (return value: cc.SpriteBatchNode) \n-- @see Batch Node\n\n--[[--\n\n从指定的图像文件创建并返回一个批量渲染对象。\n\n~~~ lua\n\nlocal imageName = \"Sprites.png\"\ndisplay.addSpriteFrames(\"Sprites.plist\", imageName) -- 载入图像到帧缓存\n\n-- 下面的代码绘制 100 个图像只用了 1 次 OpenGL draw call\nlocal batch = display.newBatchNode(imageName)\nfor i = 1, 100 do\n    local sprite = display.newSprite(\"#Sprite0001.png\")\n    batch:addChild(sprite)\nend\n\n-- 下面的代码绘制 100 个图像则要使用 100 次 OpenGL draw call\nlocal group = display.newNode()\nfor i = 1, 100 do\n    local sprite = display.newSprite(\"#Sprite0001.png\")\n    group:addChild(sprite)\nend\n\n~~~\n\n]]\n-- end --\n\nfunction display.newBatchNode(image, capacity)\n    return cc.SpriteBatchNode:create(image, capacity or 100)\nend\n\n-- start --\n\n--------------------------------\n-- 创建并返回一个图像帧对象。\n-- @function [parent=#display] newSpriteFrame\n-- @param string 图像帧名称\n-- @return SpriteFrameCache#SpriteFrameCache ret (return value: cc.SpriteFrameCache) \n\n--[[--\n\n创建并返回一个图像帧对象。\n\n~~~ lua\n\ndisplay.addSpriteFrames(\"Sprites.plist\", \"Sprites.png\")\n\n-- 创建一个 Sprite\nlocal sprite = display.newSprite(\"#Yes.png\")\n\n-- 创建一个图像帧\nlocal frameNo = display.newSpriteFrame(\"No.png\")\n\n-- 在需要时，修改 Sprite 的显示内容\nsprite:setSpriteFrame(frameNo)\n\n~~~\n\n]]\n-- end --\n\nfunction display.newSpriteFrame(frameName)\n    local frame = sharedSpriteFrameCache:getSpriteFrame(frameName)\n    if not frame then\n        printError(\"display.newSpriteFrame() - invalid frameName %s\", tostring(frameName))\n    end\n    return frame\nend\n\n-- start --\n\n--------------------------------\n-- 以特定模式创建一个包含多个图像帧对象的数组。\n-- @function [parent=#display] newFrames\n-- @param string pattern 模式字符串\n-- @param integer begin 起始索引\n-- @param integer length 长度\n-- @param boolean isReversed 是否是递减索引\n-- @return table#table ret (return value: table)  图像帧数组\n\n\n--[[--\n\n以特定模式创建一个包含多个图像帧对象的数组。\n\n~~~ lua\n\n-- 创建一个数组，包含 Walk0001.png 到 Walk0008.png 的 8 个图像帧对象\nlocal frames = display.newFrames(\"Walk%04d.png\", 1, 8)\n\n-- 创建一个数组，包含 Walk0008.png 到 Walk0001.png 的 8 个图像帧对象\nlocal frames = display.newFrames(\"Walk%04d.png\", 1, 8, true)\n\n~~~\n\n]]\n-- end --\n\nfunction display.newFrames(pattern, begin, length, isReversed)\n    local frames = {}\n    local step = 1\n    local last = begin + length - 1\n    if isReversed then\n        last, begin = begin, last\n        step = -1\n    end\n\n    for index = begin, last, step do\n        local frameName = string.format(pattern, index)\n        local frame = sharedSpriteFrameCache:getSpriteFrame(frameName)\n        if not frame then\n            printError(\"display.newFrames() - invalid frame, name %s\", tostring(frameName))\n            return\n        end\n\n        frames[#frames + 1] = frame\n    end\n    return frames\nend\n\n-- start --\n\n--------------------------------\n-- 以包含图像帧的数组创建一个动画对象。\n-- @function [parent=#display] newAnimation\n-- @param table frames 图像帧的数组\n-- @param number time 每一桢动画之间的间隔时间\n-- @return Animation#Animation ret (return value: cc.Animation)  Animation对象\n\n--[[--\n\n以包含图像帧的数组创建一个动画对象。\n\n~~~ lua\n\nlocal frames = display.newFrames(\"Walk%04d.png\", 1, 8)\nlocal animation = display.newAnimation(frames, 0.5 / 8) -- 0.5 秒播放 8 桢\nsprite:playAnimationOnce(animation) -- 播放一次动画\n\n~~~\n\n]]\n-- end --\n\nfunction display.newAnimation(frames, time)\n    local count = #frames\n    -- local array = Array:create()\n    -- for i = 1, count do\n    --     array:addObject(frames[i])\n    -- end\n    time = time or 1.0 / count\n    return cc.Animation:createWithSpriteFrames(frames, time)\nend\n\n-- start --\n\n--------------------------------\n-- 以指定名字缓存创建好的动画对象，以便后续反复使用。\n-- @function [parent=#display] setAnimationCache\n-- @param string name 名字\n-- @param Animation animation 动画对象\n\n--[[--\n\n以指定名字缓存创建好的动画对象，以便后续反复使用。\n\n~~~ lua\n\nlocal frames = display.newFrames(\"Walk%04d.png\", 1, 8)\nlocal animation = display.newAnimation(frames, 0.5 / 8) -- 0.5 秒播放 8 桢\ndisplay.setAnimationCache(\"Walk\", animation)\n\n-- 在需要使用 Walk 动画的地方\nsprite:playAnimationOnce(display.getAnimationCache(\"Walk\")) -- 播放一次动画\n\n~~~\n\n]]\n-- end --\n\nfunction display.setAnimationCache(name, animation)\n    sharedAnimationCache:addAnimation(animation, name)\nend\n\n-- start --\n\n--------------------------------\n-- 取得以指定名字缓存的动画对象，如果不存在则返回 nil。\n-- @function [parent=#display] getAnimationCache\n-- @param string name\n-- @return Animation#Animation ret (return value: cc.Animation) \n\n-- end --\n\nfunction display.getAnimationCache(name)\n    return sharedAnimationCache:getAnimation(name)\nend\n\n-- start --\n\n--------------------------------\n-- 删除指定名字缓存的动画对象。\n-- @function [parent=#display] removeAnimationCache\n-- @param string name\n\n-- end --\n\nfunction display.removeAnimationCache(name)\n    sharedAnimationCache:removeAnimation(name)\nend\n\n-- start --\n\n--------------------------------\n-- 从内存中卸载没有使用 Sprite Sheets 材质\n-- @function [parent=#display] removeUnusedSpriteFrames\n\n-- end --\n\nfunction display.removeUnusedSpriteFrames()\n    sharedSpriteFrameCache:removeUnusedSpriteFrames()\n    sharedTextureCache:removeUnusedTextures()\nend\n\n-- start --\n\n--------------------------------\n-- 创建一个进度条的节点\n-- @function [parent=#display] newProgressTimer\n-- @param mixed image\n-- @param number progressType\n\n--[[--\n\n创建一个进度条的节点\n\n进度条类型有:\n\n- display.PROGRESS_TIMER_BAR\n- display.PROGRESS_TIMER_RADIAL 环形\n\n]]\n\n-- end --\n\ndisplay.PROGRESS_TIMER_BAR = 1\ndisplay.PROGRESS_TIMER_RADIAL = 0\n\nfunction display.newProgressTimer(image, progresssType)\n    if type(image) == \"string\" then\n        image = display.newSprite(image)\n    end\n\n    local progress = cc.ProgressTimer:create(image)\n    progress:setType(progresssType)\n    return progress\nend\n\n-- start --\n\n--------------------------------\n-- 截屏并保存为一个文件\n-- @function [parent=#display] captureScreen\n-- @param function callback 截屏的回调函数\n-- @param string fileName 保存的文件, 绝对路径就直接保存, 只有文件名会保存在writePath下\n\n--[[--\n\n~~~ lua\n\ndisplay.captureScreen(\n    function (bSuc, filePath)\n        --bSuc 截屏是否成功\n        --filePath 文件保存所在的绝对路径\n    end, \"screen.png\")\n\n~~~\n\n]]\n\n-- end --\n\nfunction display.captureScreen(callback, fileName)\n    cc.utils:captureScreen(callback, fileName)\nend\n\nreturn display\n"
  },
  {
    "path": "源代码/mir9/src/framework/filter.lua",
    "content": "--- create some filters to build a FilteredSprite\n-- @author zrong(zengrong.net)\n-- Creation 2014-03-31\n\n--------------------------------\n-- @module filter\n\n--[[--\n\n滤镜功能\n\n]]\n\nlocal filter = {}\n\nlocal FILTERS = {\n-- colors\nGRAY =\t\t\t{cc.GrayFilter},  \t\t\t\t-- {r 0.299, g 0.587, b 0.114, a 0.0} or no parameters\nRGB = \t\t\t{cc.RGBFilter, 3, {1, 1, 1}}, \t-- {0.0~1.0, 0.0~1.0, 0.0~1.0}\nHUE = \t\t\t{cc.HueFilter, 1, {0}}, \t\t\t-- {-180~ 180} see photoshop\nBRIGHTNESS = \t{cc.BrightnessFilter, 1, {0}}, \t-- {-1.0~1.0}\nSATURATION = \t{cc.SaturationFilter, 1, {1}}, \t-- {0.0~2.0}\nCONTRAST = \t\t{cc.ContrastFilter, 1, {1}},\t\t-- {0.0~4.0}\nEXPOSURE = \t\t{cc.ExposureFilter, 1, {0}},\t\t-- {-10.0, 10.0}\nGAMMA = \t\t{cc.GammaFilter, 1, {1}}, \t\t-- {0.0, 3.0}\nHAZE = \t\t\t{cc.HazeFilter, 2, {0, 0}}, \t\t-- {distance -0.5~0.5, slope -0.5~0.5}\nSEPIA = \t\t{cc.SepiaFilter}, \t\t\t\t-- {no parameters}\n-- blurs\nGAUSSIAN_VBLUR = \t{cc.GaussianVBlurFilter, 1, {0}}, \t\t-- {pixel}\nGAUSSIAN_HBLUR = \t{cc.GaussianHBlurFilter, 1, {0}}, \t\t-- {pixel}\nZOOM_BLUR = \t\t{cc.ZoomBlurFilter, 3, {1, 0.5, 0.5}}, \t-- {size, centerX, centerY}\nMOTION_BLUR = \t\t{cc.MotionBlurFilter, 2, {1, 0}}, \t\t-- {size, angle}\n-- others\nSHARPEN = \t\t{cc.SharpenFilter, 2, {0, 0}}, \t-- {sharpness, amount}\nMASK = \t\t\t{cc.MaskFilter, 1}, \t\t\t\t-- {DO NOT USE IT}\nDROP_SHADOW = \t{cc.DropShadowFilter, 1}, \t\t-- {DO NOT USE IT}\n-- custom\nCUSTOM = {cc.CustomFilter, 1}\n}\n\nlocal MULTI_FILTERS = {\nGAUSSIAN_BLUR = {},\n}\n\n-- start --\n\n--------------------------------\n-- 创建一个滤镜效果，并返回 Filter 场景对象。\n-- @function [parent=#filter] newFilter\n-- @param string __filterName 滤镜名称\n-- @param table __param\n-- @return FilteredSprite#FilteredSprite ret (return value: cc.FilteredSprite)    Filter的子类\n\n-- end --\n\nfunction filter.newFilter(__filterName, __param)\n\tlocal __filterData = FILTERS[__filterName]\n\tassert(__filterData, \"filter.newFilter() - filter \"..__filterName..\" is not found.\")\n\tlocal __cls, __count, __default = unpack(__filterData)\n\n\tif \"CUSTOM\" == __filterName then\n\t\treturn __cls:create(__param)\n\tend\n\n\tlocal __paramCount = (__param and #__param) or 0\n\tprint(\"filter.newFilter:\", __paramCount, __filterName, __count)\n\tprint(\"filter.newFilter __param:\", __param)\n\t-- If count is nil, it means the Filter does not need a parameter.\n\tif __count == nil then\n\t\tif __paramCount == 0 then\n\t\t\treturn __cls:create()\n\t\tend\n\telseif __count == 0 then\n\t\treturn __cls:create()\n\telse\n\t\tif __paramCount == 0 then\n\t\t\treturn __cls:create(unpack(__default))\n\t\tend\n\t\tassert(__paramCount == __count, \n\t\t\tstring.format(\"filter.newFilter() - the parameters have a wrong amount! Expect %d, get %d.\", \n\t\t\t__count, __paramCount))\n\tend\n\treturn __cls:create(unpack(__param))\nend\n\n-- start --\n\n--------------------------------\n-- 创建滤镜数组，并返回 Filter 的数组对象\n-- @function [parent=#filter] newFilters\n-- @param table __filterNames 滤镜名称数组\n-- @param table __params 对应参数数组\n-- @return table#table ret (return value: table)   Filter数组\n\n-- end --\n\nfunction filter.newFilters(__filterNames, __params)\n\tassert(#__filterNames == #__params, \n\t\t\"filter.newFilters() - Please ensure the filters and the parameters have the same amount.\")\n\tlocal __filters = {} -- cc.Array:create()\n\tfor i in ipairs(__filterNames) do\n\t\ttable.insert(__filters, filter.newFilter(__filterNames[i], __params[i]))\n\t\t--__filters:addObject(filter.newFilter(__filterNames[i], __params[i]))\n\tend\n\treturn __filters\nend\n\nreturn filter\n"
  },
  {
    "path": "源代码/mir9/src/framework/functions.lua",
    "content": "--[[\n\nCopyright (c) 2011-2014 chukong-inc.com\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in\nall copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\nTHE SOFTWARE.\n\n]]\n\n--------------------------------\n-- @module functions\n\n--[[--\n\n提供一组常用函数，以及对 Lua 标准库的扩展\n\n]]\n\n--[[--\n\n输出格式化字符串\n\n~~~ lua\n\nprintf(\"The value = %d\", 100)\n\n~~~\n\n@param string fmt 输出格式\n@param [mixed ...] 更多参数\n\n]]\nfunction printf(fmt, ...)\n    print(string.format(tostring(fmt), ...))\nend\n\n--[[--\n\n检查并尝试转换为数值，如果无法转换则返回 0\n\n@param mixed value 要检查的值\n@param [integer base] 进制，默认为十进制\n\n@return number\n\n]]\nfunction checknumber(value, base)\n    return tonumber(value, base) or 0\nend\n\n--[[--\n\n检查并尝试转换为整数，如果无法转换则返回 0\n\n@param mixed value 要检查的值\n\n@return integer\n\n]]\nfunction checkint(value)\n    return math.round(checknumber(value))\nend\n\n--[[--\n\n检查并尝试转换为布尔值，除了 nil 和 false，其他任何值都会返回 true\n\n@param mixed value 要检查的值\n\n@return boolean\n\n]]\nfunction checkbool(value)\n    return (value ~= nil and value ~= false)\nend\n\n--[[--\n\n检查值是否是一个表格，如果不是则返回一个空表格\n\n@param mixed value 要检查的值\n\n@return table\n\n]]\nfunction checktable(value)\n    if type(value) ~= \"table\" then value = {} end\n    return value\nend\n\n--[[--\n\n如果表格中指定 key 的值为 nil，或者输入值不是表格，返回 false，否则返回 true\n\n@param table hashtable 要检查的表格\n@param mixed key 要检查的键名\n\n@return boolean\n\n]]\nfunction isset(hashtable, key)\n    local t = type(hashtable)\n    return (t == \"table\" or t == \"userdata\") and hashtable[key] ~= nil\nend\n\n--[[--\n\n深度克隆一个值\n\n~~~ lua\n\n-- 下面的代码，t2 是 t1 的引用，修改 t2 的属性时，t1 的内容也会发生变化\nlocal t1 = {a = 1, b = 2}\nlocal t2 = t1\nt2.b = 3    -- t1 = {a = 1, b = 3} <-- t1.b 发生变化\n\n-- clone() 返回 t1 的副本，修改 t2 不会影响 t1\nlocal t1 = {a = 1, b = 2}\nlocal t2 = clone(t1)\nt2.b = 3    -- t1 = {a = 1, b = 2} <-- t1.b 不受影响\n\n~~~\n\n@param mixed object 要克隆的值\n\n@return mixed\n\n]]\nfunction clone(object)\n    local lookup_table = {}\n    local function _copy(object)\n        if type(object) ~= \"table\" then\n            return object\n        elseif lookup_table[object] then\n            return lookup_table[object]\n        end\n        local new_table = {}\n        lookup_table[object] = new_table\n        for key, value in pairs(object) do\n            new_table[_copy(key)] = _copy(value)\n        end\n        return setmetatable(new_table, getmetatable(object))\n    end\n    return _copy(object)\nend\n\n--[[--\n\n创建一个类\n\n~~~ lua\n\n-- 定义名为 Shape 的基础类\nlocal Shape = class(\"Shape\")\n\n-- ctor() 是类的构造函数，在调用 Shape.new() 创建 Shape 对象实例时会自动执行\nfunction Shape:ctor(shapeName)\n    self.shapeName = shapeName\n    printf(\"Shape:ctor(%s)\", self.shapeName)\nend\n\n-- 为 Shape 定义个名为 draw() 的方法\nfunction Shape:draw()\n    printf(\"draw %s\", self.shapeName)\nend\n\n--\n\n-- Circle 是 Shape 的继承类\nlocal Circle = class(\"Circle\", Shape)\n\nfunction Circle:ctor()\n    -- 如果继承类覆盖了 ctor() 构造函数，那么必须手动调用父类构造函数\n    -- 类名.super 可以访问指定类的父类\n    Circle.super.ctor(self, \"circle\")\n    self.radius = 100\nend\n\nfunction Circle:setRadius(radius)\n    self.radius = radius\nend\n\n-- 覆盖父类的同名方法\nfunction Circle:draw()\n    printf(\"draw %s, raidus = %0.2f\", self.shapeName, self.raidus)\nend\n\n--\n\nlocal Rectangle = class(\"Rectangle\", Shape)\n\nfunction Rectangle:ctor()\n    Rectangle.super.ctor(self, \"rectangle\")\nend\n\n--\n\nlocal circle = Circle.new()             -- 输出: Shape:ctor(circle)\ncircle:setRaidus(200)\ncircle:draw()                           -- 输出: draw circle, radius = 200.00\n\nlocal rectangle = Rectangle.new()       -- 输出: Shape:ctor(rectangle)\nrectangle:draw()                        -- 输出: draw rectangle\n\n~~~\n\n### 高级用法\n\nclass() 除了定义纯 Lua 类之外，还可以从 C++ 对象继承类。\n\n比如需要创建一个工具栏，并在添加按钮时自动排列已有的按钮，那么我们可以使用如下的代码：\n\n~~~ lua\n\n-- 从 cc.Node 对象派生 Toolbar 类，该类具有 cc.Node 的所有属性和行为\nlocal Toolbar = class(\"Toolbar\", function()\n    return display.newNode() -- 返回一个 cc.Node 对象\nend)\n\n-- 构造函数\nfunction Toolbar:ctor()\n    self.buttons = {} -- 用一个 table 来记录所有的按钮\nend\n\n-- 添加一个按钮，并且自动设置按钮位置\nfunction Toolbar:addButton(button)\n    -- 将按钮对象加入 table\n    self.buttons[#self.buttons + 1] = button\n\n    -- 添加按钮对象到 cc.Node 中，以便显示该按钮\n    -- 因为 Toolbar 是从 cc.Node 继承的，所以可以使用 addChild() 方法\n    self:addChild(button)\n\n    -- 按照按钮数量，调整所有按钮的位置\n    local x = 0\n    for _, button in ipairs(self.buttons) do\n        button:setPosition(x, 0)\n        -- 依次排列按钮，每个按钮之间间隔 10 点\n        x = x + button:getContentSize().width + 10\n    end\nend\n\n~~~\n\nclass() 的这种用法让我们可以在 C++ 对象基础上任意扩展行为。\n\n既然是继承，自然就可以覆盖 C++ 对象的方法：\n\n~~~ lua\n\nfunction Toolbar:setPosition(x, y)\n    -- 由于在 Toolbar 继承类中覆盖了 cc.Node 对象的 setPosition() 方法\n    -- 所以我们要用以下形式才能调用到 cc.Node 原本的 setPosition() 方法\n    getmetatable(self).setPosition(self, x, y)\n\n    printf(\"x = %0.2f, y = %0.2f\", x, y)\nend\n\n~~~\n\n**注意:** Lua 继承类覆盖的方法并不能从 C++ 调用到。也就是说通过 C++ 代码调用这个 cc.Node 对象的 setPosition() 方法时，并不会执行我们在 Lua 中定义的 Toolbar:setPosition() 方法。\n\n@param string classname 类名\n@param [mixed super] 父类或者创建对象实例的函数\n\n@return table\n\n]]\nfunction class(classname, super)\n    local superType = type(super)\n    local cls\n\n    if superType ~= \"function\" and superType ~= \"table\" then\n        superType = nil\n        super = nil\n    end\n\n    if superType == \"function\" or (super and super.__ctype == 1) then\n        -- inherited from native C++ Object\n        cls = {}\n\n        if superType == \"table\" then\n            -- copy fields from super\n            for k,v in pairs(super) do cls[k] = v end\n            cls.__create = super.__create\n            cls.super    = super\n        else\n            cls.__create = super\n            cls.ctor = function() end\n        end\n\n        cls.__cname = classname\n        cls.__ctype = 1\n\n        function cls.new(...)\n            local instance = cls.__create(...)\n            -- copy fields from class to native object\n            for k,v in pairs(cls) do instance[k] = v end\n            instance.class = cls\n            instance:ctor(...)\n            return instance\n        end\n\n    else\n        -- inherited from Lua Object\n        if super then\n            cls = {}\n            setmetatable(cls, {__index = super})\n            cls.super = super\n        else\n            cls = {ctor = function() end}\n        end\n\n        cls.__cname = classname\n        cls.__ctype = 2 -- lua\n        cls.__index = cls\n\n        function cls.new(...)\n            local instance = setmetatable({}, cls)\n            instance.class = cls\n            instance:ctor(...)\n            return instance\n        end\n    end\n\n    return cls\nend\n\n--[[--\n\n如果对象是指定类或其子类的实例，返回 true，否则返回 false\n\n~~~ lua\n\nlocal Animal = class(\"Animal\")\nlocal Duck = class(\"Duck\", Animal)\n\nprint(iskindof(Duck.new(), \"Animal\")) -- 输出 true\n\n~~~\n\n@param mixed obj 要检查的对象\n@param string classname 类名\n\n@return boolean\n\n]]\nfunction iskindof(obj, classname)\n    local t = type(obj)\n    local mt\n    if t == \"table\" then\n        mt = getmetatable(obj)\n    elseif t == \"userdata\" then\n        mt = tolua.getpeer(obj)\n    end\n\n    while mt do\n        if mt.__cname == classname then\n            return true\n        end\n        mt = mt.super\n    end\n\n    return false\nend\n\n--[[--\n\n载入一个模块\n\nimport() 与 require() 功能相同，但具有一定程度的自动化特性。\n\n假设我们有如下的目录结构：\n\n~~~\n\napp/\napp/classes/\napp/classes/MyClass.lua\napp/classes/MyClassBase.lua\napp/classes/data/Data1.lua\napp/classes/data/Data2.lua\n\n~~~\n\nMyClass 中需要载入 MyClassBase 和 MyClassData。如果用 require()，MyClass 内的代码如下：\n\n~~~ lua\n\nlocal MyClassBase = require(\"app.classes.MyClassBase\")\nlocal MyClass = class(\"MyClass\", MyClassBase)\n\nlocal Data1 = require(\"app.classes.data.Data1\")\nlocal Data2 = require(\"app.classes.data.Data2\")\n\n~~~\n\n假如我们将 MyClass 及其相关文件换一个目录存放，那么就必须修改 MyClass 中的 require() 命令，否则将找不到模块文件。\n\n而使用 import()，我们只需要如下写：\n\n~~~ lua\n\nlocal MyClassBase = import(\".MyClassBase\")\nlocal MyClass = class(\"MyClass\", MyClassBase)\n\nlocal Data1 = import(\".data.Data1\")\nlocal Data2 = import(\".data.Data2\")\n\n~~~\n\n当在模块名前面有一个\".\" 时，import() 会从当前模块所在目录中查找其他模块。因此 MyClass 及其相关文件不管存放到什么目录里，我们都不再需要修改 MyClass 中的 import() 命令。这在开发一些重复使用的功能组件时，会非常方便。\n\n我们可以在模块名前添加多个\".\" ，这样 import() 会从更上层的目录开始查找模块。\n\n~\n\n不过 import() 只有在模块级别调用（也就是没有将 import() 写在任何函数中）时，才能够自动得到当前模块名。如果需要在函数中调用 import()，那么就需要指定当前模块名：\n\n~~~ lua\n\n# MyClass.lua\n\n# 这里的 ... 是隐藏参数，包含了当前模块的名字，所以最好将这行代码写在模块的第一行\nlocal CURRENT_MODULE_NAME = ...\n\nlocal function testLoad()\n    local MyClassBase = import(\".MyClassBase\", CURRENT_MODULE_NAME)\n    # 更多代码\nend\n\n~~~\n\n@param string moduleName 要载入的模块的名字\n@param [string currentModuleName] 当前模块名\n\n@return module\n\n]]\nfunction import(moduleName, currentModuleName)\n    local currentModuleNameParts\n    local moduleFullName = moduleName\n    local offset = 1\n\n    while true do\n        if string.byte(moduleName, offset) ~= 46 then -- .\n            moduleFullName = string.sub(moduleName, offset)\n            if currentModuleNameParts and #currentModuleNameParts > 0 then\n                moduleFullName = table.concat(currentModuleNameParts, \".\") .. \".\" .. moduleFullName\n            end\n            break\n        end\n        offset = offset + 1\n\n        if not currentModuleNameParts then\n            if not currentModuleName then\n                local n,v = debug.getlocal(3, 1)\n                currentModuleName = v\n            end\n\n            currentModuleNameParts = string.split(currentModuleName, \".\")\n        end\n        table.remove(currentModuleNameParts, #currentModuleNameParts)\n    end\n\n    return require(moduleFullName)\nend\n\n--[[--\n\n将 Lua 对象及其方法包装为一个匿名函数\n\n在 quick-cocos2d-x 中，许多功能需要传入一个 Lua 函数做参数，然后在特定事件发生时就会调用传入的函数。例如触摸事件、帧事件等等。\n\n~~~ lua\n\nlocal MyScene = class(\"MyScene\", function()\n    return display.newScene(\"MyScene\")\nend)\n\nfunction MyScene:ctor()\n    self.frameTimeCount = 0\n    -- 注册帧事件\n    self:addNodeEventListener(cc.NODE_ENTER_FRAME_EVENT, self.onEnterFrame)\n    self:scheduleUpdate()\nend\n\nfunction MyScene:onEnterFrame(dt)\n    self.frameTimeCount = self.frameTimeCount + dt\nend\n\n~~~\n\n上述代码执行时将出错，报告\"Invalid self\" ，这就是因为 C++ 无法识别 Lua 对象方法。因此在调用我们传入的 self.onEnterFrame 方法时没有提供正确的参数。\n\n要让上述的代码正常工作，就需要使用 handler() 进行一下包装：\n\n~~~ lua\n\nfunction MyScene:ctor()\n    self.frameTimeCount = 0\n    -- 注册帧事件\n    self:addNodeEventListener(cc.ENTER_FRAME_EVENT, handler(self, self.onEnterFrame))\n    self:scheduleUpdate()\nend\n\n~~~\n\n实际上，除了 C++ 回调 Lua 函数之外，在其他所有需要回调的地方都可以使用 handler()。\n\n@param mixed obj Lua 对象\n@param function method 对象方法\n\n@return function\n\n]]\nfunction handler(obj, method)\n    return function(...)\n        return method(obj, ...)\n    end\nend\n\n\n--------------------------------\n-- @module math\n\n-- start --\n\n--------------------------------\n-- 根据系统时间初始化随机数种子，让后续的 math.random() 返回更随机的值\n-- @function [parent=#math] newrandomseed\n\n-- end --\n\nfunction math.newrandomseed()\n    local ok, socket = pcall(function()\n        return require(\"socket\")\n    end)\n\n    if ok then\n        -- 如果集成了 socket 模块，则使用 socket.gettime() 获取随机数种子\n        math.randomseed(socket.gettime() * 1000)\n    else\n        math.randomseed(os.time())\n    end\n    math.random()\n    math.random()\n    math.random()\n    math.random()\nend\n\n-- start --\n\n--------------------------------\n-- 对数值进行四舍五入，如果不是数值则返回 0\n-- @function [parent=#math] round\n-- @param number value 输入值\n-- @return number#number \n\n-- end --\n\nfunction math.round(value)\n    value = checknumber(value)\n    return math.floor(value + 0.5)\nend\n\n-- start --\n\n--------------------------------\n-- 角度转弧度\n-- @function [parent=#math] angle2radian\n\n-- end --\n\nfunction math.angle2radian(angle)\n\treturn angle*math.pi/180\nend\n\n-- start --\n\n--------------------------------\n-- 弧度转角度\n-- @function [parent=#math] radian2angle\n\n-- end --\n\nfunction math.radian2angle(radian)\n\treturn radian/math.pi*180\nend\n\n\n\n--------------------------------\n-- @module io\n\n-- start --\n\n--------------------------------\n-- 检查指定的文件或目录是否存在，如果存在返回 true，否则返回 false\n-- @function [parent=#io] exists\n-- @param string path 要检查的文件或目录的完全路径\n-- @return boolean#boolean \n\n--[[--\n\n检查指定的文件或目录是否存在，如果存在返回 true，否则返回 false\n\n可以使用 cc.FileUtils:fullPathForFilename() 函数查找特定文件的完整路径，例如：\n\n~~~ lua\n\nlocal path = cc.FileUtils:getInstance():fullPathForFilename(\"gamedata.txt\")\nif io.exists(path) then\n    ....\nend\n\n~~~\n\n]]\n\n-- end --\n\nfunction io.exists(path)\n    local file = io.open(path, \"r\")\n    if file then\n        io.close(file)\n        return true\n    end\n    return false\nend\n\n-- start --\n\n--------------------------------\n-- 读取文件内容，返回包含文件内容的字符串，如果失败返回 nil\n-- @function [parent=#io] readfile\n-- @param string path 文件完全路径\n-- @return string#string \n\n--[[--\n\n读取文件内容，返回包含文件内容的字符串，如果失败返回 nil\n\nio.readfile() 会一次性读取整个文件的内容，并返回一个字符串，因此该函数不适宜读取太大的文件。\n\n]]\n\n-- end --\n\nfunction io.readfile(path)\n    local file = io.open(path, \"r\")\n    if file then\n        local content = file:read(\"*a\")\n        io.close(file)\n        return content\n    end\n    return nil\nend\n\n-- start --\n\n--------------------------------\n-- 以字符串内容写入文件，成功返回 true，失败返回 false\n-- @function [parent=#io] writefile\n-- @param string path 文件完全路径\n-- @param string content 要写入的内容\n-- @param string mode 写入模式，默认值为 \"w+b\"\n-- @return boolean#boolean \n\n--[[--\n\n以字符串内容写入文件，成功返回 true，失败返回 false\n\n\"mode 写入模式\" 参数决定 io.writefile() 如何写入内容，可用的值如下：\n\n-   \"w+\" : 覆盖文件已有内容，如果文件不存在则创建新文件\n-   \"a+\" : 追加内容到文件尾部，如果文件不存在则创建文件\n\n此外，还可以在 \"写入模式\" 参数最后追加字符 \"b\" ，表示以二进制方式写入数据，这样可以避免内容写入不完整。\n\n**Android 特别提示:** 在 Android 平台上，文件只能写入存储卡所在路径，assets 和 data 等目录都是无法写入的。\n\n]]\n\n-- end --\n\nfunction io.writefile(path, content, mode)\n    mode = mode or \"w+b\"\n    local file = io.open(path, mode)\n    if file then\n        if file:write(content) == nil then return false end\n        io.close(file)\n        return true\n    else\n        return false\n    end\nend\n\n-- start --\n\n--------------------------------\n-- 拆分一个路径字符串，返回组成路径的各个部分\n-- @function [parent=#io] pathinfo\n-- @param string path 要分拆的路径字符串\n-- @return table#table \n\n--[[--\n\n拆分一个路径字符串，返回组成路径的各个部分\n\n~~~ lua\n\nlocal pathinfo  = io.pathinfo(\"/var/app/test/abc.png\")\n\n-- 结果:\n-- pathinfo.dirname  = \"/var/app/test/\"\n-- pathinfo.filename = \"abc.png\"\n-- pathinfo.basename = \"abc\"\n-- pathinfo.extname  = \".png\"\n\n~~~\n\n]]\n\n-- end --\n\nfunction io.pathinfo(path)\n    local pos = string.len(path)\n    local extpos = pos + 1\n    while pos > 0 do\n        local b = string.byte(path, pos)\n        if b == 46 then -- 46 = char \".\"\n            extpos = pos\n        elseif b == 47 then -- 47 = char \"/\"\n            break\n        end\n        pos = pos - 1\n    end\n\n    local dirname = string.sub(path, 1, pos)\n    local filename = string.sub(path, pos + 1)\n    extpos = extpos - pos\n    local basename = string.sub(filename, 1, extpos - 1)\n    local extname = string.sub(filename, extpos)\n    return {\n        dirname = dirname,\n        filename = filename,\n        basename = basename,\n        extname = extname\n    }\nend\n\n-- start --\n\n--------------------------------\n-- 返回指定文件的大小，如果失败返回 false\n-- @function [parent=#io] filesize\n-- @param string path 文件完全路径\n-- @return integer#integer \n\n-- end --\n\nfunction io.filesize(path)\n    local size = false\n    local file = io.open(path, \"r\")\n    if file then\n        local current = file:seek()\n        size = file:seek(\"end\")\n        file:seek(\"set\", current)\n        io.close(file)\n    end\n    return size\nend\n\n\n--------------------------------\n-- @module table\n\n-- start --\n\n--------------------------------\n-- 计算表格包含的字段数量\n-- @function [parent=#table] nums\n-- @param table t 要检查的表格\n-- @return integer#integer \n\n--[[--\n\n计算表格包含的字段数量\n\nLua table 的 \"#\" 操作只对依次排序的数值下标数组有效，table.nums() 则计算 table 中所有不为 nil 的值的个数。\n\n]]\n\n-- end --\n\nfunction table.nums(t)\n    local count = 0\n    for k, v in pairs(t) do\n        count = count + 1\n    end\n    return count\nend\n\n-- start --\n\n--------------------------------\n-- 返回指定表格中的所有键\n-- @function [parent=#table] keys\n-- @param table hashtable 要检查的表格\n-- @return table#table \n\n--[[--\n\n返回指定表格中的所有键\n\n~~~ lua\n\nlocal hashtable = {a = 1, b = 2, c = 3}\nlocal keys = table.keys(hashtable)\n-- keys = {\"a\", \"b\", \"c\"}\n\n~~~\n\n]]\n\n-- end --\n\nfunction table.keys(hashtable)\n    local keys = {}\n    for k, v in pairs(hashtable) do\n        keys[#keys + 1] = k\n    end\n    return keys\nend\n\n-- start --\n\n--------------------------------\n-- 返回指定表格中的所有值\n-- @function [parent=#table] values\n-- @param table hashtable 要检查的表格\n-- @return table#table \n\n--[[--\n\n返回指定表格中的所有值\n\n~~~ lua\n\nlocal hashtable = {a = 1, b = 2, c = 3}\nlocal values = table.values(hashtable)\n-- values = {1, 2, 3}\n\n~~~\n\n]]\n\n-- end --\n\nfunction table.values(hashtable)\n    local values = {}\n    for k, v in pairs(hashtable) do\n        values[#values + 1] = v\n    end\n    return values\nend\n\n-- start --\n\n--------------------------------\n-- 将来源表格中所有键及其值复制到目标表格对象中，如果存在同名键，则覆盖其值\n-- @function [parent=#table] merge\n-- @param table dest 目标表格\n-- @param table src 来源表格\n\n--[[--\n\n将来源表格中所有键及其值复制到目标表格对象中，如果存在同名键，则覆盖其值\n\n~~~ lua\n\nlocal dest = {a = 1, b = 2}\nlocal src  = {c = 3, d = 4}\ntable.merge(dest, src)\n-- dest = {a = 1, b = 2, c = 3, d = 4}\n\n~~~\n\n]]\n\n-- end --\n\nfunction table.merge(dest, src)\n    for k, v in pairs(src) do\n        dest[k] = v\n    end\nend\n\n-- start --\n\n--------------------------------\n-- 在目标表格的指定位置插入来源表格，如果没有指定位置则连接两个表格\n-- @function [parent=#table] insertto\n-- @param table dest 目标表格\n-- @param table src 来源表格\n-- @param integer begin 插入位置,默认最后\n\n--[[--\n\n在目标表格的指定位置插入来源表格，如果没有指定位置则连接两个表格\n\n~~~ lua\n\nlocal dest = {1, 2, 3}\nlocal src  = {4, 5, 6}\ntable.insertto(dest, src)\n-- dest = {1, 2, 3, 4, 5, 6}\n\ndest = {1, 2, 3}\ntable.insertto(dest, src, 5)\n-- dest = {1, 2, 3, nil, 4, 5, 6}\n\n~~~\n\n]]\n\n-- end --\n\nfunction table.insertto(dest, src, begin)\n\tbegin = checkint(begin)\n\tif begin <= 0 then\n\t\tbegin = #dest + 1\n\tend\n\n\tlocal len = #src\n\tfor i = 0, len - 1 do\n\t\tdest[i + begin] = src[i + 1]\n\tend\nend\n\n-- start --\n\n--------------------------------\n-- 从表格中查找指定值，返回其索引，如果没找到返回 false\n-- @function [parent=#table] indexof\n-- @param table array 表格\n-- @param mixed value 要查找的值\n-- @param integer begin 起始索引值\n-- @return integer#integer \n\n--[[--\n\n从表格中查找指定值，返回其索引，如果没找到返回 false\n\n~~~ lua\n\nlocal array = {\"a\", \"b\", \"c\"}\nprint(table.indexof(array, \"b\")) -- 输出 2\n\n~~~\n\n]]\n\n-- end --\n\nfunction table.indexof(array, value, begin)\n    for i = begin or 1, #array do\n        if array[i] == value then return i end\n    end\n\treturn false\nend\n\n-- start --\n\n--------------------------------\n-- 从表格中查找指定值，返回其 key，如果没找到返回 nil\n-- @function [parent=#table] keyof\n-- @param table hashtable 表格\n-- @param mixed value 要查找的值\n-- @return string#string  该值对应的 key\n\n--[[--\n\n从表格中查找指定值，返回其 key，如果没找到返回 nil\n\n~~~ lua\n\nlocal hashtable = {name = \"dualface\", comp = \"chukong\"}\nprint(table.keyof(hashtable, \"chukong\")) -- 输出 comp\n\n~~~\n\n]]\n\n-- end --\n\nfunction table.keyof(hashtable, value)\n    for k, v in pairs(hashtable) do\n        if v == value then return k end\n    end\n    return nil\nend\n\n-- start --\n\n--------------------------------\n-- 从表格中删除指定值，返回删除的值的个数\n-- @function [parent=#table] removebyvalue\n-- @param table array 表格\n-- @param mixed value 要删除的值\n-- @param boolean removeall 是否删除所有相同的值\n-- @return integer#integer \n\n--[[--\n\n从表格中删除指定值，返回删除的值的个数\n\n~~~ lua\n\nlocal array = {\"a\", \"b\", \"c\", \"c\"}\nprint(table.removebyvalue(array, \"c\", true)) -- 输出 2\n\n~~~\n\n]]\n\n-- end --\n\nfunction table.removebyvalue(array, value, removeall)\n    local c, i, max = 0, 1, #array\n    while i <= max do\n        if array[i] == value then\n            table.remove(array, i)\n            c = c + 1\n            i = i - 1\n            max = max - 1\n            if not removeall then break end\n        end\n        i = i + 1\n    end\n    return c\nend\n\n-- start --\n\n--------------------------------\n-- 对表格中每一个值执行一次指定的函数，并用函数返回值更新表格内容\n-- @function [parent=#table] map\n-- @param table t 表格\n-- @param function fn 函数\n\n--[[--\n\n对表格中每一个值执行一次指定的函数，并用函数返回值更新表格内容\n\n~~~ lua\n\nlocal t = {name = \"dualface\", comp = \"chukong\"}\ntable.map(t, function(v, k)\n    -- 在每一个值前后添加括号\n    return \"[\" .. v .. \"]\"\nend)\n\n-- 输出修改后的表格内容\nfor k, v in pairs(t) do\n    print(k, v)\nend\n\n-- 输出\n-- name [dualface]\n-- comp [chukong]\n\n~~~\n\nfn 参数指定的函数具有两个参数，并且返回一个值。原型如下：\n\n~~~ lua\n\nfunction map_function(value, key)\n    return value\nend\n\n~~~\n\n]]\n\n-- end --\n\nfunction table.map(t, fn)\n    for k, v in pairs(t) do\n        t[k] = fn(v, k)\n    end\nend\n\n-- start --\n\n--------------------------------\n-- 对表格中每一个值执行一次指定的函数，但不改变表格内容\n-- @function [parent=#table] walk\n-- @param table t 表格\n-- @param function fn 函数\n\n--[[--\n\n对表格中每一个值执行一次指定的函数，但不改变表格内容\n\n~~~ lua\n\nlocal t = {name = \"dualface\", comp = \"chukong\"}\ntable.walk(t, function(v, k)\n    -- 输出每一个值\n    print(v)\nend)\n\n~~~\n\nfn 参数指定的函数具有两个参数，没有返回值。原型如下：\n\n~~~ lua\n\nfunction map_function(value, key)\n\nend\n\n~~~\n\n]]\n\n-- end --\n\nfunction table.walk(t, fn)\n    for k,v in pairs(t) do\n        fn(v, k)\n    end\nend\n\n-- start --\n\n--------------------------------\n-- 对表格中每一个值执行一次指定的函数，如果该函数返回 false，则对应的值会从表格中删除\n-- @function [parent=#table] filter\n-- @param table t 表格\n-- @param function fn 函数\n\n--[[--\n\n对表格中每一个值执行一次指定的函数，如果该函数返回 false，则对应的值会从表格中删除\n\n~~~ lua\n\nlocal t = {name = \"dualface\", comp = \"chukong\"}\ntable.filter(t, function(v, k)\n    return v ~= \"dualface\" -- 当值等于 dualface 时过滤掉该值\nend)\n\n-- 输出修改后的表格内容\nfor k, v in pairs(t) do\n    print(k, v)\nend\n\n-- 输出\n-- comp chukong\n\n~~~\n\nfn 参数指定的函数具有两个参数，并且返回一个 boolean 值。原型如下：\n\n~~~ lua\n\nfunction map_function(value, key)\n    return true or false\nend\n\n~~~\n\n]]\n\n-- end --\n\nfunction table.filter(t, fn)\n    for k, v in pairs(t) do\n        if not fn(v, k) then t[k] = nil end\n    end\nend\n\n-- start --\n\n--------------------------------\n-- 遍历表格，确保其中的值唯一\n-- @function [parent=#table] unique\n-- @param table t 表格\n-- @param boolean bArray t是否是数组,是数组,t中重复的项被移除后,后续的项会前移\n-- @return table#table  包含所有唯一值的新表格\n\n--[[--\n\n遍历表格，确保其中的值唯一\n\n~~~ lua\n\nlocal t = {\"a\", \"a\", \"b\", \"c\"} -- 重复的 a 会被过滤掉\nlocal n = table.unique(t)\n\nfor k, v in pairs(n) do\n    print(v)\nend\n\n-- 输出\n-- a\n-- b\n-- c\n\n~~~\n\n]]\n\n-- end --\n\nfunction table.unique(t, bArray)\n    local check = {}\n    local n = {}\n    local idx = 1\n    for k, v in pairs(t) do\n        if not check[v] then\n            if bArray then\n                n[idx] = v\n                idx = idx + 1\n            else\n                n[k] = v\n            end\n            check[v] = true\n        end\n    end\n    return n\nend\n\n\n--------------------------------\n-- @module string\n\n\nstring._htmlspecialchars_set = {}\nstring._htmlspecialchars_set[\"&\"] = \"&amp;\"\nstring._htmlspecialchars_set[\"\\\"\"] = \"&quot;\"\nstring._htmlspecialchars_set[\"'\"] = \"&#039;\"\nstring._htmlspecialchars_set[\"<\"] = \"&lt;\"\nstring._htmlspecialchars_set[\">\"] = \"&gt;\"\n\n-- start --\n\n--------------------------------\n-- 将特殊字符转为 HTML 转义符\n-- @function [parent=#string] htmlspecialchars\n-- @param string input 输入字符串\n-- @return string#string  转换结果\n\n--[[--\n\n将特殊字符转为 HTML 转义符\n\n~~~ lua\n\nprint(string.htmlspecialchars(\"<ABC>\"))\n-- 输出 &lt;ABC&gt;\n\n~~~\n\n]]\n\n-- end --\n\nfunction string.htmlspecialchars(input)\n    for k, v in pairs(string._htmlspecialchars_set) do\n        input = string.gsub(input, k, v)\n    end\n    return input\nend\n\n-- start --\n\n--------------------------------\n-- 将 HTML 转义符还原为特殊字符，功能与 string.htmlspecialchars() 正好相反\n-- @function [parent=#string] restorehtmlspecialchars\n-- @param string input 输入字符串\n-- @return string#string  转换结果\n\n--[[--\n\n将 HTML 转义符还原为特殊字符，功能与 string.htmlspecialchars() 正好相反\n\n~~~ lua\n\nprint(string.restorehtmlspecialchars(\"&lt;ABC&gt;\"))\n-- 输出 <ABC>\n\n~~~\n\n]]\n\n-- end --\n\nfunction string.restorehtmlspecialchars(input)\n    for k, v in pairs(string._htmlspecialchars_set) do\n        input = string.gsub(input, v, k)\n    end\n    return input\nend\n\n-- start --\n\n--------------------------------\n-- 将字符串中的 \\n 换行符转换为 HTML 标记\n-- @function [parent=#string] nl2br\n-- @param string input 输入字符串\n-- @return string#string  转换结果\n\n--[[--\n\n将字符串中的 \\n 换行符转换为 HTML 标记\n\n~~~ lua\n\nprint(string.nl2br(\"Hello\\nWorld\"))\n-- 输出\n-- Hello<br />World\n\n~~~\n\n]]\n\n-- end --\n\nfunction string.nl2br(input)\n    return string.gsub(input, \"\\n\", \"<br />\")\nend\n\n-- start --\n\n--------------------------------\n-- 将字符串中的特殊字符和 \\n 换行符转换为 HTML 转移符和标记\n-- @function [parent=#string] text2html\n-- @param string input 输入字符串\n-- @return string#string  转换结果\n\n--[[--\n\n将字符串中的特殊字符和 \\n 换行符转换为 HTML 转移符和标记\n\n~~~ lua\n\nprint(string.text2html(\"<Hello>\\nWorld\"))\n-- 输出\n-- &lt;Hello&gt;<br />World\n\n~~~\n\n]]\n\n-- end --\n\nfunction string.text2html(input)\n    input = string.gsub(input, \"\\t\", \"    \")\n    input = string.htmlspecialchars(input)\n    input = string.gsub(input, \" \", \"&nbsp;\")\n    input = string.nl2br(input)\n    return input\nend\n\n-- start --\n\n--------------------------------\n-- 用指定字符或字符串分割输入字符串，返回包含分割结果的数组\n-- @function [parent=#string] split\n-- @param string input 输入字符串\n-- @param string delimiter 分割标记字符或字符串\n-- @return array#array  包含分割结果的数组\n\n--[[--\n\n用指定字符或字符串分割输入字符串，返回包含分割结果的数组\n\n~~~ lua\n\nlocal input = \"Hello,World\"\nlocal res = string.split(input, \",\")\n-- res = {\"Hello\", \"World\"}\n\nlocal input = \"Hello-+-World-+-Quick\"\nlocal res = string.split(input, \"-+-\")\n-- res = {\"Hello\", \"World\", \"Quick\"}\n\n~~~\n\n]]\n\n-- end --\n\nfunction string.split(input, delimiter)\n    input = tostring(input)\n    delimiter = tostring(delimiter)\n    if (delimiter=='') then return false end\n    local pos,arr = 0, {}\n    -- for each divider found\n    for st,sp in function() return string.find(input, delimiter, pos, true) end do\n        table.insert(arr, string.sub(input, pos, st - 1))\n        pos = sp + 1\n    end\n    table.insert(arr, string.sub(input, pos))\n    return arr\nend\n\n-- start --\n\n--------------------------------\n-- 去除输入字符串头部的空白字符，返回结果\n-- @function [parent=#string] ltrim\n-- @param string input 输入字符串\n-- @return string#string  结果\n-- @see string.rtrim, string.trim\n\n--[[--\n\n去除输入字符串头部的空白字符，返回结果\n\n~~~ lua\n\nlocal input = \"  ABC\"\nprint(string.ltrim(input))\n-- 输出 ABC，输入字符串前面的两个空格被去掉了\n\n~~~\n\n空白字符包括：\n\n-   空格\n-   制表符 \\t\n-   换行符 \\n\n-   回到行首符 \\r\n\n]]\n\n-- end --\n\nfunction string.ltrim(input)\n    return string.gsub(input, \"^[ \\t\\n\\r]+\", \"\")\nend\n\n-- start --\n\n--------------------------------\n-- 去除输入字符串尾部的空白字符，返回结果\n-- @function [parent=#string] rtrim\n-- @param string input 输入字符串\n-- @return string#string  结果\n-- @see string.ltrim, string.trim\n\n--[[--\n\n去除输入字符串尾部的空白字符，返回结果\n\n~~~ lua\n\nlocal input = \"ABC  \"\nprint(string.rtrim(input))\n-- 输出 ABC，输入字符串最后的两个空格被去掉了\n\n~~~\n\n]]\n\n-- end --\n\nfunction string.rtrim(input)\n    return string.gsub(input, \"[ \\t\\n\\r]+$\", \"\")\nend\n\n-- start --\n\n--------------------------------\n-- 去掉字符串首尾的空白字符，返回结果\n-- @function [parent=#string] trim\n-- @param string input 输入字符串\n-- @return string#string  结果\n-- @see string.ltrim, string.rtrim\n\n--[[--\n\n去掉字符串首尾的空白字符，返回结果\n\n]]\n\n-- end --\n\nfunction string.trim(input)\n    input = string.gsub(input, \"^[ \\t\\n\\r]+\", \"\")\n    return string.gsub(input, \"[ \\t\\n\\r]+$\", \"\")\nend\n\n-- start --\n\n--------------------------------\n-- 将字符串的第一个字符转为大写，返回结果\n-- @function [parent=#string] ucfirst\n-- @param string input 输入字符串\n-- @return string#string  结果\n\n--[[--\n\n将字符串的第一个字符转为大写，返回结果\n\n~~~ lua\n\nlocal input = \"hello\"\nprint(string.ucfirst(input))\n-- 输出 Hello\n\n~~~\n\n]]\n\n-- end --\n\nfunction string.ucfirst(input)\n    return string.upper(string.sub(input, 1, 1)) .. string.sub(input, 2)\nend\n\nlocal function urlencodechar(char)\n    return \"%\" .. string.format(\"%02X\", string.byte(char))\nend\n\n-- start --\n\n--------------------------------\n-- 将字符串转换为符合 URL 传递要求的格式，并返回转换结果\n-- @function [parent=#string] urlencode\n-- @param string input 输入字符串\n-- @return string#string  转换后的结果\n-- @see string.urldecode\n\n--[[--\n\n将字符串转换为符合 URL 传递要求的格式，并返回转换结果\n\n~~~ lua\n\nlocal input = \"hello world\"\nprint(string.urlencode(input))\n-- 输出\n-- hello%20world\n\n~~~\n\n]]\n\n-- end --\n\nfunction string.urlencode(input)\n    -- convert line endings\n    input = string.gsub(tostring(input), \"\\n\", \"\\r\\n\")\n    -- escape all characters but alphanumeric, '.' and '-'\n    input = string.gsub(input, \"([^%w%.%- ])\", urlencodechar)\n    -- convert spaces to \"+\" symbols\n    return string.gsub(input, \" \", \"+\")\nend\n\n-- start --\n\n--------------------------------\n-- 将 URL 中的特殊字符还原，并返回结果\n-- @function [parent=#string] urldecode\n-- @param string input 输入字符串\n-- @return string#string  转换后的结果\n-- @see string.urlencode\n\n--[[--\n\n将 URL 中的特殊字符还原，并返回结果\n\n~~~ lua\n\nlocal input = \"hello%20world\"\nprint(string.urldecode(input))\n-- 输出\n-- hello world\n\n~~~\n\n]]\n\n-- end --\n\nfunction string.urldecode(input)\n    input = string.gsub (input, \"+\", \" \")\n    input = string.gsub (input, \"%%(%x%x)\", function(h) return string.char(checknumber(h,16)) end)\n    input = string.gsub (input, \"\\r\\n\", \"\\n\")\n    return input\nend\n\n-- start --\n\n--------------------------------\n-- 计算 UTF8 字符串的长度，每一个中文算一个字符\n-- @function [parent=#string] utf8len\n-- @param string input 输入字符串\n-- @return integer#integer  长度\n\n--[[--\n\n计算 UTF8 字符串的长度，每一个中文算一个字符\n\n~~~ lua\n\nlocal input = \"你好World\"\nprint(string.utf8len(input))\n-- 输出 7\n\n~~~\n\n]]\n\n-- end --\n\nfunction string.utf8len(input)\n    local len  = string.len(input)\n    local left = len\n    local cnt  = 0\n    local arr  = {0, 0xc0, 0xe0, 0xf0, 0xf8, 0xfc}\n    while left ~= 0 do\n        local tmp = string.byte(input, -left)\n        local i   = #arr\n        while arr[i] do\n            if tmp >= arr[i] then\n                left = left - i\n                break\n            end\n            i = i - 1\n        end\n        cnt = cnt + 1\n    end\n    return cnt\nend\n\n-- start --\n\n--------------------------------\n-- 将数值格式化为包含千分位分隔符的字符串\n-- @function [parent=#string] formatnumberthousands\n-- @param number num 数值\n-- @return string#string  格式化结果\n\n--[[--\n\n将数值格式化为包含千分位分隔符的字符串\n\n~~~ lua\n\nprint(string.formatnumberthousands(1924235))\n-- 输出 1,924,235\n\n~~~\n\n]]\n\n-- end --\n\nfunction string.formatnumberthousands(num)\n    local formatted = tostring(checknumber(num))\n    local k\n    while true do\n        formatted, k = string.gsub(formatted, \"^(-?%d+)(%d%d%d)\", '%1,%2')\n        if k == 0 then break end\n    end\n    return formatted\nend\n"
  },
  {
    "path": "源代码/mir9/src/framework/global.lua",
    "content": "--------------------------------\n-- @module global\n\n--------------------------------\n-- 定义一个作废的接口\n-- @function [parent=#global] DEPRECATED\n\n--------------------------------\n-- 显示作废信息\n-- @function [parent=#global] PRINT_DEPRECATED\n\n--------------------------------\n-- 打印调试信息\n-- @function [parent=#global] printLog\n-- @param string tag 调试信息的 tag\n-- @param string fmt 调试信息格式\n-- @param mixed ... 更多参数\n\n--------------------------------\n-- 输出 tag 为 ERR 的调试信息\n-- @function [parent=#global] printError\n-- @param string fmt 调试信息格式\n-- @param mixed ... 更多参数\n\n--------------------------------\n-- 输出 tag 为 INFO 的调试信息\n-- @function [parent=#global] printInfo\n-- @param string fmt 调试信息格式\n-- @param mixed ... 更多参数\n\n--------------------------------\n-- 输出值的内容\n-- @function [parent=#global] dump\n-- @param mixed value 要输出的值\n-- @param string desciption 输出内容前的文字描述\n-- @parma [integer nesting] 输出时的嵌套层级，默认为 3\n\n--------------------------------\n-- 输出格式化字符串\n-- @function [parent=#global] printf\n-- @param string fmt 输出格式\n-- @param mixed ... 更多参数\n\n--------------------------------\n-- 检查并尝试转换为数值，如果无法转换则返回 0\n-- @function [parent=#global] checknumber\n-- @param mixed value 要检查的值\n-- @param integer base 进制，默认为十进制\n-- @return number#number ret (return value: number) \n\n--------------------------------\n-- 检查并尝试转换为整数，如果无法转换则返回 0\n-- @function [parent=#global] checkint\n-- @param mixed value 要检查的值\n-- @return integer#integer ret (return value: int) \n\n--------------------------------\n-- 检查并尝试转换为布尔值，除了 nil 和 false，其他任何值都会返回 true\n-- @function [parent=#global] checkbool\n-- @param mixed value 要检查的值\n-- @return boolean#boolean ret (return value: bool) \n\n--------------------------------\n-- 检查值是否是一个表格，如果不是则返回一个空表格\n-- @function [parent=#global] checktable\n-- @param mixed value 要检查的值\n-- @return table#table ret (return value: table) \n\n--------------------------------\n-- 如果表格中指定 key 的值为 nil，或者输入值不是表格，返回 false，否则返回 true\n-- @function [parent=#global] isset\n-- @param table hashtable 要检查的表格\n-- @param mixed key 要检查的键名\n-- @return boolean#boolean ret (return value: bool) \n\n--------------------------------\n-- 深度克隆一个值\n-- @function [parent=#global] clone\n-- @param mixed object 要克隆的值\n-- @return mixed#mixed ret (return value: mixed) \n\n--------------------------------\n-- 创建一个类\n-- @function [parent=#global] class\n-- @param string classname 类名\n-- @param [mixed super] 父类或者创建对象实例的函数\n-- @return table#table ret (return value: table) \n\n--------------------------------\n-- 如果对象是指定类或其子类的实例，返回 true，否则返回 false\n-- @function [parent=#global] iskindof\n-- @param mixed obj 要检查的对象\n-- @param string classname 类名\n-- @return boolean#boolean ret (return value: bool) \n\n--------------------------------\n-- 载入一个模块\n-- @function [parent=#global] import\n-- @param string moduleName 要载入的模块的名字\n-- @param string currentModuleName 当前模块名\n-- @return module#module \n\n--------------------------------\n-- 将 Lua 对象及其方法包装为一个匿名函数\n-- @function [parent=#global] handler\n-- @param mixed obj Lua 对象\n-- @param function method 对象方法\n-- @return function#function ret (return value: function) \n\n--------------------------------\n-- JSON 编码与解码\n-- @function [parent=#global] safeLoad\n\n--------------------------------\n-- 私有方法\n-- @function [parent=#global] checkArguments\n\nreturn nil\n"
  },
  {
    "path": "源代码/mir9/src/framework/init.lua",
    "content": "--[[\n\nCopyright (c) 2011-2014 chukong-inc.com\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in\nall copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\nTHE SOFTWARE.\n\n]]\n\n--------------------------------\n-- @module init\n\n--[[--\n\nquick framework 初始化\n\n载入 quick framework 预定义的常量、模块。\n\n### 常量\n\n在初始化框架之前，可以定义以下常量：\n\n-   DEBUG: 设置框架的调试输出级别\n\n    ```lua\n    DEBUG = 0           -- 不输出任何调试信息（默认值）\n    DEBUG = 1           -- 输出基本的调试信息\n    DEBUG = 2           -- 输出详细的调试信息\n    ```\n\n-   DEBUG_FPS: 设置是否在画面中显示渲染帧率等信息\n\n    ```lua\n    DEBUG_FPS = false   -- 不显示（默认值）\n    DEBUG_FPS = true    -- 显示\n    ```\n\n-   DEBUG_MEM: 设置是否输出内存占用信息\n\n    ```lua\n    DEBUG_MEM = false   -- 不输出（默认值）\n    DEBUG_MEM = true    -- 每 10 秒输出一次\n    ```\n\n-   LOAD_DEPRECATED_API: 是否载入过时的 API 定义，默认为 false\n\n-   DISABLE_DEPRECATED_WARNING: 使用过时的 API 时是否显示警告信息，默认为 true\n\n-   USE_DEPRECATED_EVENT_ARGUMENTS: 是否使用过时的 Node 事件参数格式，默认为 false\n\n<br />\n\n### 自动载入的模块\n\n框架初始化时，会自动载入以下基本模块：\n\n-   debug: 调试接口\n-   functions: 提供一组常用的函数，以及对 Lua 标准库的扩展\n-   cocos2dx: 对 cocos2d-x C++ 接口的封装和扩展\n-   device: 针对设备接口的扩展\n-   transition: 与动作相关的接口\n-   display: 创建场景、图像、动画的接口\n-   filter: 具备过滤器渲染的 Sprite 接口\n-   audio: 音乐和音效的接口\n-   network: 网络相关的接口\n-   crypto: 加密相关的接口\n-   json: JSON 的编码和解码接口\n-   luaj: 提供从 Lua 调用 Java 方法的接口（仅限 Android 平台）\n-   luaoc: 提供从 Lua 调用 Objective-C 方法的接口（仅限 iOS 平台）\n-   cc: quick 框架扩展的基础类和组件\n\n]]\n\nprint(\"===========================================================\")\nprint(\"              LOAD QUICK FRAMEWORK\")\nprint(\"===========================================================\")\n\n\nif type(DEBUG) ~= \"number\" then DEBUG = 0 end\nif type(DEBUG_FPS) ~= \"boolean\" then DEBUG_FPS = false end\nif type(DEBUG_MEM) ~= \"boolean\" then DEBUG_MEM = false end\nif type(LOAD_SHORTCODES_API) ~= \"boolean\" then LOAD_SHORTCODES_API = true end\nif type(LOAD_DEPRECATED_API) ~= \"boolean\" then LOAD_DEPRECATED_API = false end\nif type(DISABLE_DEPRECATED_WARNING) ~= \"boolean\" then DISABLE_DEPRECATED_WARNING = false end\nif type(USE_DEPRECATED_EVENT_ARGUMENTS) ~= \"boolean\" then USE_DEPRECATED_EVENT_ARGUMENTS = false end\n\n----\n\nlocal CURRENT_MODULE_NAME = ...\n\ncc = cc or {}\ncc.PACKAGE_NAME = string.sub(CURRENT_MODULE_NAME, 1, -6)\ncc.VERSION = \"3.3\"\ncc.FRAMEWORK_NAME = \"quick-cocos2d-x\"\n\nif cc.Node.removeTouchEvent then\n    cc.bPlugin_ = true\nend\n\nrequire(cc.PACKAGE_NAME .. \".debug\")\nrequire(cc.PACKAGE_NAME .. \".functions\")\nrequire(cc.PACKAGE_NAME .. \".cocos2dx\")\n\nprintInfo(\"\")\nprintInfo(\"# DEBUG                        = \"..DEBUG)\nprintInfo(\"#\")\n\ndevice     = require(cc.PACKAGE_NAME .. \".device\")\ntransition = require(cc.PACKAGE_NAME .. \".transition\")\ndisplay    = require(cc.PACKAGE_NAME .. \".display\")\nfilter     = require(cc.PACKAGE_NAME .. \".filter\")\naudio      = require(cc.PACKAGE_NAME .. \".audio\")\nnetwork    = require(cc.PACKAGE_NAME .. \".network\")\ncrypto     = require(cc.PACKAGE_NAME .. \".crypto\")\n\nlocal cjson = require(cc.PACKAGE_NAME .. \".json\")\nif cjson then\n    json = cjson\nelse\n    require(\"cocos.cocos2d.json\")\nend\n\nif device.platform == \"android\" then\n    require(cc.PACKAGE_NAME .. \".platform.android\")\nelseif device.platform == \"ios\" then\n    require(cc.PACKAGE_NAME .. \".platform.ios\")\nelseif device.platform == \"mac\" then\n    require(cc.PACKAGE_NAME .. \".platform.mac\")\nend\n\nrequire(cc.PACKAGE_NAME .. \".cc.init\")\n\nif LOAD_DEPRECATED_API then\n    ui         = require(cc.PACKAGE_NAME .. \".ui\")\n\n    local dp = cc.PACKAGE_NAME .. \".deprecated.\"\n    require(dp .. \"deprecated_functions\")\nend\n\nif LOAD_SHORTCODES_API then\n    require(cc.PACKAGE_NAME .. \".shortcodes\")\nend\n\n----\n\nlocal sharedTextureCache = cc.Director:getInstance():getTextureCache()\nlocal sharedDirector = cc.Director:getInstance()\n\nif DEBUG_FPS then\n    sharedDirector:setDisplayStats(true)\nelse\n    sharedDirector:setDisplayStats(false)\nend\n\nif DEBUG_MEM then\n    local sharedTextureCache = cc.Director:getInstance():getTextureCache()\n    --[[--\n    @ignore\n    ]]\n    local function showMemoryUsage()\n        printInfo(string.format(\"LUA VM MEMORY USED: %0.2f KB\", collectgarbage(\"count\")))\n        printInfo(sharedTextureCache:getCachedTextureInfo())\n        printInfo(\"---------------------------------------------------\")\n    end\n    sharedDirector:getScheduler():scheduleScriptFunc(showMemoryUsage, DEBUG_MEM_INTERVAL or 10.0, false)\nend\n"
  },
  {
    "path": "源代码/mir9/src/framework/json.lua",
    "content": "--[[\n\nCopyright (c) 2011-2014 chukong-inc.com\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in\nall copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\nTHE SOFTWARE.\n\n]]\n\n--------------------------------\n-- @module json\n\n--[[--\n\nJSON 编码与解码\n\n]]\nlocal json = {}\n\nlocal cjson\nlocal function safeLoad()\n    cjson = require(\"cjson\")\nend\n\nif not pcall(safeLoad) then \n    cjson = nil\nend\n\n-- start --\n\n--------------------------------\n-- 将表格数据编码为 JSON 字符串\n-- @function [parent=#json] encode\n-- @param table 表格对象\n-- @return string#string ret (return value: string)  json字符串\n\n--[[--\n\n将表格数据编码为 JSON 字符串\n\n~~~ lua\n\nlocal str = json.encode({a=1,b=\"ss\",c={c1=1,c2=2},d={10,11},100})\necho(str) -- {\"a\":1,\"b\":\"ss\",\"c\":{\"c1\":1,\"c2\":2},\"d\":[10,11],\"1\":100}\nlocal str = json.encode({1,2,\"3\",{10,11}})\necho(str) -- [ 1,2,\"3\",[10,11] ]\n\n~~~\n\n注意: table作为字典使用时，整型键值将被转换为字符串键值\n\n~~~ lua\n\nlocal str = json.encode({a=1,[5]=3})\necho(str) -- {\"a\":1,\"5\":3}\n\n~~~\n\n注意: table所有键值为整型时，会当作数组看待，空位将转化为null\n\n~~~ lua\n\nlocal str = json.encode({[3]=2,[5]=3})\necho(str) -- [null,null,2,null,3]\n\n~~~\n\n]]\n-- end --\n\nfunction json.encode(var)\n    local status, result = pcall(cjson.encode, var)\n    if status then return result end\n    if DEBUG > 1 then\n        printError(\"json.encode() - encoding failed: %s\", tostring(result))\n    end\nend\n\n-- start --\n\n--------------------------------\n-- 将 JSON 字符串解码为表格对象\n-- @function [parent=#json] decode\n-- @param string json字符串\n-- @return table#table ret (return value: table)  表格对象\n\n--[[--\n\n将 JSON 字符串解码为表格对象\n\n~~~ lua\n\nlocal json = require(\"framework.shared.json\")\nlocal tb = json.decode('{\"a\":1,\"b\":\"ss\",\"c\":{\"c1\":1,\"c2\":2},\"d\":[10,11],\"1\":100}')\ndump(tb) --[ [\n- \"<var>\" = {\n-     \"1\" = 100\n-     \"a\" = 1\n-     \"b\" = \"ss\"\n-     \"c\" = {\n-         \"c1\" = 1\n-         \"c2\" = 2\n-     }\n-     \"d\" = {\n-         1 = 10\n-         2 = 11\n-     }\n- }\n] ]\nlocal tb = json.decode('[1,2,\"3\",[10,11] ]')\ndump(tb) --[ [\n- \"<var>\" = {\n-     1 = 1\n-     2 = 2\n-     3 = \"3\"\n-     4 = {\n-         1 = 10\n-         2 = 11\n-     }\n- }\n] ]\n\n~~~\n\n]]\n-- end --\n\nfunction json.decode(text)\n    local status, result = pcall(cjson.decode, text)\n    if status then return result end\n    if DEBUG > 1 then\n        printError(\"json.decode() - decoding failed: %s\", tostring(result))\n    end\nend\n\nif cjson then\n    json.null = cjson.null\nelse\n    json = nil\nend\n\nreturn json\n"
  },
  {
    "path": "源代码/mir9/src/framework/luaj.lua",
    "content": "--[[\n\nCopyright (c) 2011-2014 chukong-inc.com\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in\nall copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\nTHE SOFTWARE.\n\n]]\n\n--------------------------------\n-- @module luaj\n\n--[[--\n\nLua 与 Java 的交互接口\n\n]]\nlocal luaj = {}\n\nlocal callJavaStaticMethod = LuaJavaBridge.callStaticMethod\n\n--[[--\n\n私有方法\n\n]]\nlocal function checkArguments(args, sig)\n    if type(args) ~= \"table\" then args = {} end\n    if sig then return args, sig end\n\n    sig = {\"(\"}\n    for i, v in ipairs(args) do\n        local t = type(v)\n        if t == \"number\" then\n            sig[#sig + 1] = \"F\"\n        elseif t == \"boolean\" then\n            sig[#sig + 1] = \"Z\"\n        elseif t == \"function\" then\n            sig[#sig + 1] = \"I\"\n        else\n            sig[#sig + 1] = \"Ljava/lang/String;\"\n        end\n    end\n    sig[#sig + 1] = \")V\"\n\n    return args, table.concat(sig)\nend\n\n-- start --\n\n--------------------------------\n-- 调用java类的接口。\n-- @function [parent=#luaj] callStaticMethod\n-- @param string className java类名\n-- @param string methodName java类静态方法名\n-- @param table args java类静态方法所需要的各种参数 数组\n-- @param string sig java类方法的签名\n-- @return boolean#boolean ret (return value: bool)  ok, mixed ret ok为是否调用成功, ok为true时,ret为java方法的返回值,ok为false时,ret为出错原因\n\n-- end --\n\nfunction luaj.callStaticMethod(className, methodName, args, sig)\n    local args, sig = checkArguments(args, sig)\n    printInfo(\"luaj.callStaticMethod(\\\"%s\\\",\\n\\t\\\"%s\\\",\\n\\targs,\\n\\t\\\"%s\\\"\", className, methodName, sig)\n    return callJavaStaticMethod(className, methodName, args, sig)\nend\n\nreturn luaj\n"
  },
  {
    "path": "源代码/mir9/src/framework/luaoc.lua",
    "content": "--[[\n\nCopyright (c) 2011-2014 chukong-inc.com\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in\nall copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\nTHE SOFTWARE.\n\n]]\n\n--------------------------------\n-- @module luaoc\n\n--[[--\n\nLua 与 Objective-C 的交互接口\n\n]]\nlocal luaoc = {}\n\nlocal callStaticMethod = LuaObjcBridge.callStaticMethod\n\n-- start --\n\n--------------------------------\n-- 调用Objective-C类的接口。\n-- @function [parent=#luaoc] callStaticMethod\n-- @param string className Objective-C类名\n-- @param string methodName Objective-C类方法名\n-- @param table args Objective-C类方法所需要的各种参数字典,key值为方法的参数名\n-- @return boolean#boolean ret (return value: bool)  ok, mixed ret ok为是否调用成功, ok为true时,ret为Objective-C方法的返回值,ok为false时,ret为出错原因\n\n-- end --\n\nfunction luaoc.callStaticMethod(className, methodName, args)\n    local ok, ret = callStaticMethod(className, methodName, args)\n    if not ok then\n        local msg = string.format(\"luaoc.callStaticMethod(\\\"%s\\\", \\\"%s\\\", \\\"%s\\\") - error: [%s] \",\n                className, methodName, tostring(args), tostring(ret))\n        if ret == -1 then\n            printError(msg .. \"INVALID PARAMETERS\")\n        elseif ret == -2 then\n            printError(msg .. \"CLASS NOT FOUND\")\n        elseif ret == -3 then\n            printError(msg .. \"METHOD NOT FOUND\")\n        elseif ret == -4 then\n            printError(msg .. \"EXCEPTION OCCURRED\")\n        elseif ret == -5 then\n            printError(msg .. \"INVALID METHOD SIGNATURE\")\n        else\n            printError(msg .. \"UNKNOWN\")\n        end\n    end\n    return ok, ret\nend\n\nreturn luaoc\n"
  },
  {
    "path": "源代码/mir9/src/framework/network.lua",
    "content": "--[[\n\nCopyright (c) 2011-2014 chukong-inc.com\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in\nall copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\nTHE SOFTWARE.\n\n]]\n\n--------------------------------\n-- @module network\n\n--[[--\n\n网络服务\n\n]]\n\nlocal network = {}\n\n-- start --\n\n--------------------------------\n-- 检查地 WIFI 网络是否可用\n-- @function [parent=#network] isLocalWiFiAvailable\n-- @return boolean#boolean ret (return value: bool)  网络是否可用\n\n--[[--\n\n检查地 WIFI 网络是否可用\n\n提示： WIFI 网络可用不代表可以访问互联网。\n\n]]\n-- end --\n\nfunction network.isLocalWiFiAvailable()\n    return cc.Network:isLocalWiFiAvailable()\nend\n\n-- start --\n\n--------------------------------\n-- 检查互联网连接是否可用\n-- @function [parent=#network] isInternetConnectionAvailable\n-- @return boolean#boolean ret (return value: bool)  网络是否可用\n\n--[[--\n\n检查互联网连接是否可用\n\n通常，这里接口返回 3G 网络的状态，具体情况与设备和操作系统有关。 \n\n]]\n-- end --\n\nfunction network.isInternetConnectionAvailable()\n    return cc.Network:isInternetConnectionAvailable()\nend\n\n-- start --\n\n--------------------------------\n-- 检查是否可以解析指定的主机名\n-- @function [parent=#network] isHostNameReachable\n-- @param string hostname 主机名\n-- @return boolean#boolean ret (return value: bool)  主机名是否可以解析\n\n--[[--\n\n检查是否可以解析指定的主机名\n\n~~~ lua\n\nif network.isHostNameReachable(\"www.google.com\") then\n    -- 域名可以解析\nend\n\n~~~\n\n注意： 该接口会阻塞程序，因此在调用该接口时应该提醒用户应用程序在一段时间内会失去响应。 \n\n]]\n-- end --\n\nfunction network.isHostNameReachable(hostname)\n    if type(hostname) ~= \"string\" then\n        printError(\"network.isHostNameReachable() - invalid hostname %s\", tostring(hostname))\n        return false\n    end\n    return cc.Network:isHostNameReachable(hostname)\nend\n\n-- start --\n\n--------------------------------\n-- 返回互联网连接状态值\n-- @function [parent=#network] getInternetConnectionStatus\n-- @return string#string ret (return value: string)  互联网连接状态值\n\n--[[--\n\n返回互联网连接状态值\n\n状态值有三种：\n\n-   kCCNetworkStatusNotReachable: 无法访问互联网\n-   kCCNetworkStatusReachableViaWiFi: 通过 WIFI\n-   kCCNetworkStatusReachableViaWWAN: 通过 3G 网络\n\n]]\n-- end --\n\nfunction network.getInternetConnectionStatus()\n    return cc.Network:getInternetConnectionStatus()\nend\n\n-- start --\n\n--------------------------------\n-- 创建异步 HTTP 请求，并返回 cc.HTTPRequest 对象。\n-- @function [parent=#network] createHTTPRequest\n-- @param function callbock 回调函数\n-- @url string http路径\n-- method string method 请求方式\n-- @return HTTPRequest#HTTPRequest ret (return value: cc.HTTPRequest) \n\n--[[--\n\n创建异步 HTTP 请求，并返回 cc.HTTPRequest 对象。 \n\n~~~ lua\n\nfunction onRequestFinished(event)\n    local ok = (event.name == \"completed\")\n    local request = event.request\n \n    if not ok then\n        -- 请求失败，显示错误代码和错误消息\n        print(request:getErrorCode(), request:getErrorMessage())\n        return\n    end\n \n    local code = request:getResponseStatusCode()\n    if code ~= 200 then\n        -- 请求结束，但没有返回 200 响应代码\n        print(code)\n        return\n    end\n \n    -- 请求成功，显示服务端返回的内容\n    local response = request:getResponseString()\n    print(response)\nend\n \n-- 创建一个请求，并以 POST 方式发送数据到服务端\nlocal url = \"http://www.mycompany.com/request.php\"\nlocal request = network.createHTTPRequest(onRequestFinished, url, \"POST\")\nrequest:addPOSTValue(\"KEY\", \"VALUE\")\n \n-- 开始请求。当请求完成时会调用 callback() 函数\nrequest:start()\n\n~~~\n\n]]\n-- end --\n\nfunction network.createHTTPRequest(callback, url, method)\n    if not method then method = \"GET\" end\n    if string.upper(tostring(method)) == \"GET\" then\n        method = cc.kCCHTTPRequestMethodGET\n    else\n        method = cc.kCCHTTPRequestMethodPOST\n    end\n    return cc.HTTPRequest:createWithUrl(callback, url, method)\nend\n\n-- start --\n\n--------------------------------\n-- 通过HTTPRequest上传一个文件\n-- @function [parent=#network] uploadFile\n-- @param function callback 回调函数\n-- @param string url 上传路径\n-- @param tabel datas 上传参数\n-- @return HTTPRequest#HTTPRequest  结果\n\n--[[--\n--- Upload a file through a HTTPRequest instance.\n-- @author zrong(zengrong.net)\n-- Creation: 2014-04-14\n-- @param callback As same as the first parameter of network.createHTTPRequest.\n-- @param url As same as the second parameter of network.createHTTPRequest.\n-- @param datas Includes following values:\n-- \t\tfileFiledName(The input label name that type is file);\n-- \t\tfilePath(A absolute path for a file)\n-- \t\tcontentType(Optional, the file's contentType, default is application/octet-stream)\n-- \t\textra(Optional, the key-value table that transmit to form)\n-- for example:\n\n~~~ lua\n\nnetwork.uploadFile(function(evt)\n\t\tif evt.name == \"completed\" then\n\t\t\tlocal request = evt.request\n\t\t\tprintf(\"REQUEST getResponseStatusCode() = %d\", request:getResponseStatusCode())\n\t\t\tprintf(\"REQUEST getResponseHeadersString() =\\n%s\", request:getResponseHeadersString())\n \t\t\tprintf(\"REQUEST getResponseDataLength() = %d\", request:getResponseDataLength())\n            printf(\"REQUEST getResponseString() =\\n%s\", request:getResponseString())\n\t\tend\n\tend,\n\t\"http://127.0.0.1/upload.php\",\n\t{\n\t\tfileFieldName=\"filepath\",\n\t\tfilePath=device.writablePath..\"screen.jpg\",\n\t\tcontentType=\"Image/jpeg\",\n\t\textra={\n\t\t\t{\"act\", \"upload\"},\n\t\t\t{\"submit\", \"upload\"},\n\t\t}\n\t}\n)\n    \n~~~\n\n]]\t\t\n-- end --\n\nfunction network.uploadFile(callback, url, datas)\n\tassert(datas or datas.fileFieldName or datas.filePath, \"Need file datas!\")\n\tlocal request = network.createHTTPRequest(callback, url, \"POST\")\n\tlocal fileFieldName = datas.fileFieldName\n\tlocal filePath = datas.filePath\n\tlocal contentType = datas.contentType\n\tif contentType then\n\t\trequest:addFormFile(fileFieldName, filePath, contentType)\n\telse\n\t\trequest:addFormFile(fileFieldName, filePath)\n\tend\n\tif datas.extra then\n\t\tfor i in ipairs(datas.extra) do\n\t\t\tlocal data = datas.extra[i]\n\t\t\trequest:addFormContents(data[1], data[2])\n\t\tend\n\tend\n\trequest:start()\n\treturn request\nend\n\nlocal function parseTrueFalse(t)\n    t = string.lower(tostring(t))\n    if t == \"yes\" or t == \"true\" then return true end\n    return false\nend\n\n-- start --\n\n--------------------------------\n-- 转换cookie为一个字串\n-- @function [parent=#network] makeCookieString\n-- @param tabel cookie\n-- @return string#string  结果\n\n-- end --\n\nfunction network.makeCookieString(cookie)\n    local arr = {}\n    for name, value in pairs(cookie) do\n        if type(value) == \"table\" then\n            value = tostring(value.value)\n        else\n            value = tostring(value)\n        end\n\n        arr[#arr + 1] = tostring(name) .. \"=\" .. string.urlencode(value)\n    end\n\n    return table.concat(arr, \"; \")\nend\n\n-- start --\n\n--------------------------------\n-- 转换字串为一个cookie表\n-- @function [parent=#network] parseCookie\n-- @param string cookieString\n-- @return table#table  结果\n\n-- end --\n\nfunction network.parseCookie(cookieString)\n    local cookie = {}\n    local arr = string.split(cookieString, \"\\n\")\n    for _, item in ipairs(arr) do\n        item = string.trim(item)\n        if item ~= \"\" then\n            local parts = string.split(item, \"\\t\")\n            -- \".amazon.com\" represents the domain name of the Web server that created the cookie and will be able to read the cookie in the future\n            -- TRUE indicates that all machines within the given domain can access the cookie\n            -- \"/\" denotes the path within the domain for which the variable is valid\n            -- \"FALSE\" indicates that the connection is not secure\n            -- \"2082787601\" represents the expiration date in UNIX time (number of seconds since January 1, 1970 00:00:00 GMT)\n            -- \"ubid-main\" is the name of the cookie\n            -- \"002-2904428-3375661\" is the value of the cookie\n\n            local c = {\n                domain = parts[1],\n                access = parseTrueFalse(parts[2]),\n                path = parts[3],\n                secure = parseTrueFalse(parts[4]),\n                expire = checkint(parts[5]),\n                name = parts[6],\n                value = string.urldecode(parts[7]),\n            }\n\n            cookie[c.name] = c\n        end\n    end\n\n    return cookie\nend\n\nreturn network\n"
  },
  {
    "path": "源代码/mir9/src/framework/platform/android.lua",
    "content": "\nif cc.bPlugin_ then\n\tluaj = require(\"cocos.cocos2d.luaj\")\nelse\n\tluaj = require(cc.PACKAGE_NAME .. \".luaj\")\nend\n\nfunction io.exists(path)\n    return cc.FileUtils:getInstance():isFileExist(path)\nend\n\nfunction io.readfile(path)\n    return cc.HelperFunc:getFileData(path)\nend\n\nfunction device.showAlertAndroid(title, message, buttonLabels, listener)\nend\n"
  },
  {
    "path": "源代码/mir9/src/framework/platform/ios.lua",
    "content": "\nif cc.bPlugin_ then\n\tluaoc = require(\"cocos.cocos2d.luaoc\")\nelse\n\tluaoc = require(cc.PACKAGE_NAME .. \".luaoc\")\nend\n\nfunction device.showAlertIOS(title, message, buttonLabels, listener)\nend\n"
  },
  {
    "path": "源代码/mir9/src/framework/platform/mac.lua",
    "content": "\nif cc.bPlugin_ then\n\tluaoc = require(\"cocos.cocos2d.luaoc\")\nelse\n\t-- luaoc = require(cc.PACKAGE_NAME .. \".luaoc\")\nend\n"
  },
  {
    "path": "源代码/mir9/src/framework/scheduler.lua",
    "content": "--[[\n\nCopyright (c) 2011-2014 chukong-inc.com\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in\nall copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\nTHE SOFTWARE.\n\n]]\n\n--------------------------------\n-- @module scheduler\n\n\n--[[--\n\n全局计时器、计划任务\n\n«该模块在框架初始化时不会自动载入» \n\n加载方式: local scheduler = require(cc.PACKAGE_NAME .. \".scheduler\")\n\n]]\nlocal scheduler = {}\n\nlocal sharedScheduler = cc.Director:getInstance():getScheduler()\n\n-- start --\n\n--------------------------------\n-- 计划一个全局帧事件回调，并返回该计划的句柄。\n-- @function [parent=#scheduler] scheduleUpdateGlobal\n-- @param function 回调函数\n-- @return mixed#mixed ret (return value: mixed)  schedule句柄\n\n--[[--\n\n计划一个全局帧事件回调，并返回该计划的句柄。\n\n全局帧事件在任何场景中都会执行，因此可以在整个应用程序范围内实现较为精确的全局计时器。\n\n该函数返回的句柄用作 scheduler.unscheduleGlobal() 的参数，可以取消指定的计划。 \n\n]]\n\n-- end --\n\nfunction scheduler.scheduleUpdateGlobal(listener)\n    return sharedScheduler:scheduleScriptFunc(listener, 0, false)\nend\n\n-- start --\n\n--------------------------------\n-- 计划一个以指定时间间隔执行的全局事件回调，并返回该计划的句柄。\n-- @function [parent=#scheduler] scheduleGlobal\n-- @param function listener 回调函数\n-- @param number interval 间隔时间\n-- @return mixed#mixed ret (return value: mixed)  schedule句柄\n\n--[[--\n\n计划一个以指定时间间隔执行的全局事件回调，并返回该计划的句柄。 \n\n~~~ lua\n\nlocal function onInterval(dt)\nend\n \n-- 每 0.5 秒执行一次 onInterval()\nlocal handle = scheduler.scheduleGlobal(onInterval, 0.5) \n\n~~~\n\n]]\n\n-- end --\n\nfunction scheduler.scheduleGlobal(listener, interval)\n    return sharedScheduler:scheduleScriptFunc(listener, interval, false)\nend\n\n-- start --\n\n--------------------------------\n-- 取消一个全局计划\n-- @function [parent=#scheduler] unscheduleGlobal\n-- @param mixed schedule句柄\n\n--[[--\n\n取消一个全局计划 \n\nscheduler.unscheduleGlobal() 的参数就是 scheduler.scheduleUpdateGlobal() 和 scheduler.scheduleGlobal() 的返回值。\n\n]]\n\n-- end --\n\nfunction scheduler.unscheduleGlobal(handle)\n    sharedScheduler:unscheduleScriptEntry(handle)\nend\n\n-- start --\n\n--------------------------------\n-- 计划一个全局延时回调，并返回该计划的句柄。\n-- @function [parent=#scheduler] performWithDelayGlobal\n-- @param function listener 回调函数\n-- @param number time 延迟时间\n-- @return mixed#mixed ret (return value: mixed)  schedule句柄\n\n--[[--\n\n计划一个全局延时回调，并返回该计划的句柄。\n\nscheduler.performWithDelayGlobal() 会在等待指定时间后执行一次回调函数，然后自动取消该计划。\n\n]]\n\n-- end --\n\nfunction scheduler.performWithDelayGlobal(listener, time)\n    local handle\n    handle = sharedScheduler:scheduleScriptFunc(function()\n        scheduler.unscheduleGlobal(handle)\n        listener()\n    end, time, false)\n    return handle\nend\n\nreturn scheduler\n"
  },
  {
    "path": "源代码/mir9/src/framework/shortcodes.lua",
    "content": "--[[\n\nCopyright (c) 2011-2014 chukong-inc.com\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in\nall copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\nTHE SOFTWARE.\n\n]]\n\n--------------------------------\n-- @module shortcodes\n\n--[[--\nshortcode\n]]\n\nlocal c = cc\nlocal Node = c.Node\n\n--------------------------------\n-- @module Node\n\n-- start --\n\n--------------------------------\n-- 在当前结点中加入一个子结点\n-- @function [parent=#Node] add\n-- @param node child 要加入的结点\n-- @param number zorder 要加入结点的Z值\n-- @param number tag 要加入结点的tag\n-- @return Node#Node  当前结点\n\n-- end --\n\nfunction Node:add(child, zorder, tag)\n    self:addChild(child, zorder or child:getLocalZOrder(), tag or child:getTag())\n\n    return self\nend\n\n-- start --\n\n--------------------------------\n-- 把当前结点作为一个子结点加到target中\n-- @function [parent=#Node] addTo\n-- @param node target 想作为其子结点的结点\n-- @param number zorder 当前结点的Z值\n-- @param number tag 当前结点的tag\n-- @return Node#Node  当前结点\n\n-- end --\n\nfunction Node:addTo(target, zorder, tag)\n    target:addChild(self, zorder or self:getLocalZOrder(), tag or self:getTag())\n\n    return self\nend\n\n-- start --\n\n--------------------------------\n-- 显示当前结点,让当前结点可显示\n-- @function [parent=#Node] show\n-- @return Node#Node  当前结点\n\n-- end --\n\nfunction Node:show()\n    self:setVisible(true)\n    return self\nend\n\n-- start --\n\n--------------------------------\n-- 隐藏当前结点,让当前结点不可显示\n-- @function [parent=#Node] hide\n-- @return Node#Node  当前结点\n\n-- end --\n\nfunction Node:hide()\n    self:setVisible(false)\n    return self\nend\n\n-- start --\n\n--------------------------------\n-- 设置当前结点的位置\n-- @function [parent=#Node] pos\n-- @param number x X值\n-- @param number y Y值\n-- @return Node#Node  当前结点\n\n-- end --\n\nfunction Node:pos(x, y)\n    self:setPosition(x, y)\n    return self\nend\n\n-- start --\n\n--------------------------------\n-- 设置当前结点在屏幕的中心\n-- @function [parent=#Node] center\n-- @return Node#Node  当前结点\n\n-- end --\n\nfunction Node:center()\n    self:setPosition(display.cx, display.cy)\n    return self\nend\n\n-- start --\n\n--------------------------------\n-- 设置当前结点的缩放值\n-- @function [parent=#Node] scale\n-- @param number scale 要缩放的值\n-- @return Node#Node  当前结点\n\n-- end --\n\nfunction Node:scale(scale)\n    self:setScale(scale)\n    return self\nend\n\n-- start --\n\n--------------------------------\n-- 设置当前结点的旋转角度值\n-- @function [parent=#Node] rotation\n-- @param number r 旋转角度\n-- @return Node#Node  当前结点\n\n-- end --\n\nfunction Node:rotation(r)\n    self:setRotation(r)\n    return self\nend\n\n-- start --\n\n--------------------------------\n-- 设置当前结点的大小\n-- @function [parent=#Node] size\n-- @param mixed width 宽度或cc.size表\n-- @param number height 高度\n-- @return Node#Node  当前结点\n\n-- end --\n\nfunction Node:size(width, height)\n    if type(width) == \"table\" then\n        self:setContentSize(width)\n    else\n        self:setContentSize(cc.size(width, height))\n    end\n    return self\nend\n\n-- start --\n\n--------------------------------\n-- 设置当前结点的透明度, 0到255,0为完全透明\n-- @function [parent=#Node] opacity\n-- @param number opacity 透明度\n-- @return Node#Node  当前结点\n\n-- end --\n\nfunction Node:opacity(opacity)\n    self:setOpacity(opacity)\n    return self\nend\n\n-- start --\n\n--------------------------------\n-- 设置当前结点z值\n-- @function [parent=#Node] zorder\n-- @param number z z值\n-- @return Node#Node  当前结点\n\n-- end --\n\nfunction Node:zorder(z)\n    self:setLocalZOrder(z)\n    return self\nend\n\n\n--------------------------------\n-- @module Sprite\n\nlocal Sprite = c.Sprite\n\nSprite.playOnce = Sprite.playAnimationOnce\nSprite.playForever = Sprite.playAnimationForever\n\n-- start --\n\n--------------------------------\n-- 设置当前精灵的显示帧\n-- @function [parent=#Sprite] displayFrame\n-- @param mixed frame 要显示的图片名或图片帧的frame\n-- @return Sprite#Sprite  当前精灵\n\n-- end --\n\nfunction Sprite:displayFrame(frame)\n    self:setSpriteFrame(frame)\n    return self\nend\n\n-- start --\n\n--------------------------------\n-- 在X方向上翻转当前精灵\n-- @function [parent=#Sprite] flipX\n-- @param boolean b 是否翻转\n-- @return Sprite#Sprite  当前精灵\n\n-- end --\n\nfunction Sprite:flipX(b)\n    self:setFlippedX(b)\n    return self\nend\n\n-- start --\n\n--------------------------------\n-- 在Y方向上翻转当前精灵\n-- @function [parent=#Sprite] flipY\n-- @param boolean b 是否翻转\n-- @return Sprite#Sprite  当前精灵\n\n-- end --\n\nfunction Sprite:flipY(b)\n    self:setFlippedY(b)\n    return self\nend\n\n\n--------------------------------\n-- @module Layer\n\n-- Layer\n\nlocal Layer = c.Layer\n\n-- start --\n\n--------------------------------\n-- 在层上注册触摸监听\n-- @function [parent=#Layer] onTouch\n-- @param function listener 监听函数\n-- @return Layer#Layer  当前层\n\n--[[--\n\n在层上注册触摸监听\n\n]]\n-- end --\n\nfunction Layer:onTouch(listener)\n    if USE_DEPRECATED_EVENT_ARGUMENTS then\n        self:addNodeEventListener(c.NODE_TOUCH_EVENT, function(event)\n            return listener(event.name, event.x, event.y, event.prevX, event.prevY)\n        end)\n    else\n        self:addNodeEventListener(c.NODE_TOUCH_EVENT, listener)\n    end\n    return self\nend\n\n-- start --\n\n--------------------------------\n-- 设置层的触摸是否打开\n-- @function [parent=#Layer] enableTouch\n-- @param boolean enabled 是否打开触摸\n-- @return Layer#Layer  当前层\n\n-- end --\n\nfunction Layer:enableTouch(enabled)\n    self:setTouchEnabled(enabled)\n    return self\nend\n\n-- start --\n\n--------------------------------\n-- 在层上注册键盘监听\n-- @function [parent=#Layer] onKeypad\n-- @param function listener 监听函数\n-- @return Layer#Layer  当前层\n\n-- end --\n\nfunction Layer:onKeypad(listener)\n    if USE_DEPRECATED_EVENT_ARGUMENTS then\n        self:addNodeEventListener(c.KEYPAD_EVENT, function(event)\n            return listener(event.name)\n        end)\n    else\n        self:addNodeEventListener(c.KEYPAD_EVENT, listener)\n    end\n    return self\nend\n\n-- start --\n\n--------------------------------\n-- 设置层的键盘事件是否打开\n-- @function [parent=#Layer] enableKeypad\n-- @param boolean enabled 是否打开键盘事件\n-- @return Layer#Layer  当前层\n\n-- end --\n\nfunction Layer:enableKeypad(enabled)\n    self:setKeypadEnabled(enabled)\n    return self\nend\n\n-- start --\n\n--------------------------------\n-- 在层上注册重力感应监听\n-- @function [parent=#Layer] onAccelerate\n-- @param function listener 监听函数\n-- @return Layer#Layer  当前层\n\n-- end --\n\nfunction Layer:onAccelerate(listener)\n    if USE_DEPRECATED_EVENT_ARGUMENTS then\n        self:addNodeEventListener(c.ACCELERATE_EVENT, function(event)\n            return listener(event.x, event.y, event.z, event.timestamp)\n        end)\n    else\n        self:addNodeEventListener(c.ACCELERATE_EVENT, listener)\n    end\n    return self\nend\n\n-- start --\n\n--------------------------------\n-- 设置层的重力感应事件是否打开\n-- @function [parent=#Layer] enableAccelerometer\n-- @param boolean enabled 是否打开加速度事件\n-- @return Layer#Layer  当前层\n\n-- end --\n\nfunction Layer:enableAccelerometer(enabled)\n    self:setAccelerometerEnabled(enabled)\n    return self\nend\n\n\n-- actions\n\n-- start --\n\n--------------------------------\n-- 停止结点的所有动作\n-- @function [parent=#Node] stop\n-- @return Node#Node  当前结点\n\n-- end --\n\nfunction Node:stop()\n    self:stopAllActions()\n    return self\nend\n\n-- start --\n\n--------------------------------\n-- 渐显动画\n-- @function [parent=#Node] fadeIn\n-- @param number time 渐显时间\n-- @return Node#Node  当前结点\n\n-- end --\n\nfunction Node:fadeIn(time)\n    self:runAction(cc.FadeIn:create(time))\n    return self\nend\n\n-- start --\n\n--------------------------------\n-- 渐隐动画\n-- @function [parent=#Node] fadeOut\n-- @param number time 渐隐时间\n-- @return Node#Node  当前结点\n\n-- end --\n\nfunction Node:fadeOut(time)\n    self:runAction(cc.FadeOut:create(time))\n    return self\nend\n\n-- start --\n\n--------------------------------\n-- 渐变到一个固定透明度\n-- @function [parent=#Node] fadeTo\n-- @param number time 渐变时间\n-- @param number opacity 最终的透明度\n-- @return Node#Node  当前结点\n\n-- end --\n\nfunction Node:fadeTo(time, opacity)\n    self:runAction(cc.FadeTo:create(time, opacity))\n    return self\nend\n\n-- start --\n\n--------------------------------\n-- 在一段时间内移动结点到特定位置\n-- @function [parent=#Node] moveTo\n-- @param number time 移动时间\n-- @param number x 要移动到的X点\n-- @param number y 要移动到的Y点\n-- @return Node#Node  当前结点\n\n-- end --\n\nfunction Node:moveTo(time, x, y)\n    self:runAction(cc.MoveTo:create(time, cc.p(x or self:getPositionX(), y or self:getPositionY())))\n    return self\nend\n\n-- start --\n\n--------------------------------\n-- 在一段时间内移动相对位置\n-- @function [parent=#Node] moveBy\n-- @param number time 移动时间\n-- @param number x 要移动的相对X值\n-- @param number y 要移动的相对Y值\n-- @return Node#Node  当前结点\n\n-- end --\n\nfunction Node:moveBy(time, x, y)\n    self:runAction(cc.MoveBy:create(time, cc.p(x or 0, y or 0)))\n    return self\nend\n\n-- start --\n\n--------------------------------\n-- 在一段时间内旋转的角度\n-- @function [parent=#Node] rotateTo\n-- @param number time 移动时间\n-- @param number rotation 旋转的角度\n-- @return Node#Node  当前结点\n\n-- end --\n\nfunction Node:rotateTo(time, rotation)\n    self:runAction(cc.RotateTo:create(time, rotation))\n    return self\nend\n\n-- start --\n\n--------------------------------\n-- 在一段时间内旋转的相对角度\n-- @function [parent=#Node] rotateBy\n-- @param number time 移动时间\n-- @param number rotation 旋转的相对角度\n-- @return Node#Node  当前结点\n\n-- end --\n\nfunction Node:rotateBy(time, rotation)\n    self:runAction(cc.RotateBy:create(time, rotation))\n    return self\nend\n\n-- start --\n\n--------------------------------\n-- 在一段时间内缩放\n-- @function [parent=#Node] scaleTo\n-- @param number time 移动时间\n-- @param number scale 缩放的值\n-- @return Node#Node  当前结点\n\n-- end --\n\nfunction Node:scaleTo(time, scale)\n    self:runAction(cc.ScaleTo:create(time, scale))\n    return self\nend\n\n-- start --\n\n--------------------------------\n-- 在一段时间内的相对缩放\n-- @function [parent=#Node] scaleBy\n-- @param number time 移动时间\n-- @param number scale 相对缩放的值\n-- @return Node#Node  当前结点\n\n-- end --\n\nfunction Node:scaleBy(time, scale)\n    self:runAction(cc.ScaleBy:create(time, scale))\n    return self\nend\n\n-- start --\n\n--------------------------------\n-- 在一段时间内倾斜的大小\n-- @function [parent=#Node] skewTo\n-- @param number time 移动时间\n-- @param number sx 倾斜的X值\n-- @param number sy 倾斜的Y值\n-- @return Node#Node  当前结点\n\n-- end --\n\nfunction Node:skewTo(time, sx, sy)\n    self:runAction(cc.SkewTo:create(time, sx or self:getSkewX(), sy or self:getSkewY()))\n    return self\nend\n\n-- start --\n\n--------------------------------\n-- 在一段时间内倾斜的相对大小\n-- @function [parent=#Node] skewBy\n-- @param number time 移动时间\n-- @param number sx 倾斜的相对X值\n-- @param number sy 倾斜的相对Y值\n-- @return Node#Node  当前结点\n\n-- end --\n\nfunction Node:skewBy(time, sx, sy)\n    self:runAction(cc.SkewBy:create(time, sx or 0, sy or 0))\n    return self\nend\n\n-- start --\n\n--------------------------------\n-- 在一段时间内染色\n-- @function [parent=#Node] tintTo\n-- @param number time 移动时间\n-- @param number r 染色的R值\n-- @param number g 染色的G值\n-- @param number b 染色的B值\n-- @return Node#Node  当前结点\n\n-- end --\n\nfunction Node:tintTo(time, r, g, b)\n    self:runAction(cc.TintTo:create(time, r or 0, g or 0, b or 0))\n    return self\nend\n\n\n-- start --\n\n--------------------------------\n-- 在一段时间内相对染色\n-- @function [parent=#Node] tintBy\n-- @param number time 移动时间\n-- @param number r 染色的相对R值\n-- @param number g 染色的相对G值\n-- @param number b 染色的相对B值\n-- @return Node#Node  当前结点\n\n-- end --\n\nfunction Node:tintBy(time, r, g, b)\n    self:runAction(cc.TintBy:create(time, r or 0, g or 0, b or 0))\n    return self\nend\n"
  },
  {
    "path": "源代码/mir9/src/framework/transition.lua",
    "content": "--[[\n\nCopyright (c) 2011-2014 chukong-inc.com\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in\nall copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\nTHE SOFTWARE.\n\n]]\n\n--------------------------------\n-- @module transition\n\n--[[--\n\n为图像创造效果\n\n]]\nlocal transition = {}\n\nlocal ACTION_EASING = {}\nACTION_EASING[\"BACKIN\"]           = {cc.EaseBackIn, 1}\nACTION_EASING[\"BACKINOUT\"]        = {cc.EaseBackInOut, 1}\nACTION_EASING[\"BACKOUT\"]          = {cc.EaseBackOut, 1}\nACTION_EASING[\"BOUNCE\"]           = {cc.EaseBounce, 1}\nACTION_EASING[\"BOUNCEIN\"]         = {cc.EaseBounceIn, 1}\nACTION_EASING[\"BOUNCEINOUT\"]      = {cc.EaseBounceInOut, 1}\nACTION_EASING[\"BOUNCEOUT\"]        = {cc.EaseBounceOut, 1}\nACTION_EASING[\"ELASTIC\"]          = {cc.EaseElastic, 2, 0.3}\nACTION_EASING[\"ELASTICIN\"]        = {cc.EaseElasticIn, 2, 0.3}\nACTION_EASING[\"ELASTICINOUT\"]     = {cc.EaseElasticInOut, 2, 0.3}\nACTION_EASING[\"ELASTICOUT\"]       = {cc.EaseElasticOut, 2, 0.3}\nACTION_EASING[\"EXPONENTIALIN\"]    = {cc.EaseExponentialIn, 1}\nACTION_EASING[\"EXPONENTIALINOUT\"] = {cc.EaseExponentialInOut, 1}\nACTION_EASING[\"EXPONENTIALOUT\"]   = {cc.EaseExponentialOut, 1}\nACTION_EASING[\"IN\"]               = {cc.EaseIn, 2, 1}\nACTION_EASING[\"INOUT\"]            = {cc.EaseInOut, 2, 1}\nACTION_EASING[\"OUT\"]              = {cc.EaseOut, 2, 1}\nACTION_EASING[\"RATEACTION\"]       = {cc.EaseRateAction, 2, 1}\nACTION_EASING[\"SINEIN\"]           = {cc.EaseSineIn, 1}\nACTION_EASING[\"SINEINOUT\"]        = {cc.EaseSineInOut, 1}\nACTION_EASING[\"SINEOUT\"]          = {cc.EaseSineOut, 1}\n\nlocal actionManager = cc.Director:getInstance():getActionManager()\n\n-- start --\n\n--------------------------------\n-- 创建一个缓动效果\n-- @function [parent=#transition] newEasing\n-- @param Action action     动作对象\n-- @param string easingName 缓冲效果的名字, 具体参考 transition.execute() 方法\n-- @param mixed  more       创建缓冲效果的参数\n-- @return mixed#mixed ret (return value: mixed)  结果\n\n-- end --\n\nfunction transition.newEasing(action, easingName, more)\n    local key = string.upper(tostring(easingName))\n    if string.sub(key, 1, 6) == \"CCEASE\" then\n        key = string.sub(key, 7)\n    end\n    local easing\n    if ACTION_EASING[key] then\n        local cls, count, default = unpack(ACTION_EASING[key])\n        if count == 2 then\n            easing = cls:create(action, more or default)\n        else\n            easing = cls:create(action)\n        end\n    end\n    return easing or action\nend\n\n-- start --\n\n--------------------------------\n-- 创建一个动作效果\n-- @function [parent=#transition] create\n-- @param Action action 动作对象\n-- @param table args 参数表格对象\n-- @return mixed#mixed ret (return value: mixed)  结果\n\n-- end --\n\nfunction transition.create(action, args)\n    args = checktable(args)\n    if args.easing then\n        if type(args.easing) == \"table\" then\n            action = transition.newEasing(action, unpack(args.easing))\n        else\n            action = transition.newEasing(action, args.easing)\n        end\n    end\n\n    local actions = {}\n    local delay = checknumber(args.delay)\n    if delay > 0 then\n        actions[#actions + 1] = cc.DelayTime:create(delay)\n    end\n    actions[#actions + 1] = action\n\n    local onComplete = args.onComplete\n    if type(onComplete) ~= \"function\" then onComplete = nil end\n    if onComplete then\n        actions[#actions + 1] = cc.CallFunc:create(onComplete)\n    end\n\n    if #actions > 1 then\n        return transition.sequence(actions)\n    else\n        return actions[1]\n    end\nend\n\n-- start --\n\n--------------------------------\n-- 执行一个动作效果\n-- @function [parent=#transition] execute\n-- @param cc.Node target 显示对象\n-- @param Action action 动作对象\n-- @param table args 参数表格对象\n-- @return mixed#mixed ret (return value: mixed)  结果\n\n--[[--\n\n执行一个动作效果\n\n~~~ lua\n\n-- 等待 1.0 后开始移动对象\n-- 耗时 1.5 秒，将对象移动到屏幕中央\n-- 移动使用 backout 缓动效果\n-- 移动结束后执行函数，显示 move completed\ntransition.execute(sprite, MoveTo:create(1.5, cc.p(display.cx, display.cy)), {\n    delay = 1.0,\n    easing = \"backout\",\n    onComplete = function()\n        print(\"move completed\")\n    end,\n})\n\n~~~\n\ntransition.execute() 是一个强大的工具，可以为原本单一的动作添加各种附加特性。\n\ntransition.execute() 的参数表格支持下列参数：\n\n-    delay: 等待多长时间后开始执行动作\n-    easing: 缓动效果的名字及可选的附加参数，效果名字不区分大小写\n-    onComplete: 动作执行完成后要调用的函数\n-    time: 执行动作需要的时间\n\ntransition.execute() 支持的缓动效果：\n\n-    backIn\n-    backInOut\n-    backOut\n-    bounce\n-    bounceIn\n-    bounceInOut\n-    bounceOut\n-    elastic, 附加参数默认为 0.3\n-    elasticIn, 附加参数默认为 0.3\n-    elasticInOut, 附加参数默认为 0.3\n-    elasticOut, 附加参数默认为 0.3\n-    exponentialIn, 附加参数默认为 1.0\n-    exponentialInOut, 附加参数默认为 1.0\n-    exponentialOut, 附加参数默认为 1.0\n-    In, 附加参数默认为 1.0\n-    InOut, 附加参数默认为 1.0\n-    Out, 附加参数默认为 1.0\n-    rateaction, 附加参数默认为 1.0\n-    sineIn\n-    sineInOut\n-    sineOut\n\n]]\n-- end --\n\nfunction transition.execute(target, action, args)\n    assert(not tolua.isnull(target), \"transition.execute() - target is not cc.Node\")\n    local action = transition.create(action, args)\n    target:runAction(action)\n    return action\nend\n\n-- start --\n\n--------------------------------\n-- 将显示对象旋转到指定角度，并返回 Action 动作对象。\n-- @function [parent=#transition] rotateTo\n-- @param cc.Node target 显示对象\n-- @param table args 参数表格对象\n-- @return mixed#mixed ret (return value: mixed)  结果\n\n--[[--\n\n将显示对象旋转到指定角度，并返回 Action 动作对象。\n\n~~~ lua\n\n-- 耗时 0.5 秒将 sprite 旋转到 180 度\ntransition.rotateTo(sprite, {rotate = 180, time = 0.5})\n\n~~~\n\n]]\n-- end --\n\nfunction transition.rotateTo(target, args)\n    assert(not tolua.isnull(target), \"transition.rotateTo() - target is not cc.Node\")\n    -- local rotation = args.rotate\n    local action = cc.RotateTo:create(args.time, args.rotate)\n    return transition.execute(target, action, args)\nend\n\n-- start --\n\n--------------------------------\n-- 将显示对象移动到指定位置，并返回 Action 动作对象。\n-- @function [parent=#transition] moveTo\n-- @param cc.Node target 显示对象\n-- @param table args 参数表格对象\n-- @return mixed#mixed ret (return value: mixed)  结果\n\n--[[--\n\n将显示对象移动到指定位置，并返回 Action 动作对象。\n\n~~~ lua\n\n-- 移动到屏幕中心\ntransition.moveTo(sprite, {x = display.cx, y = display.cy, time = 1.5})\n-- 移动到屏幕左边，不改变 y\ntransition.moveTo(sprite, {x = display.left, time = 1.5})\n-- 移动到屏幕底部，不改变 x\ntransition.moveTo(sprite, {y = display.bottom, time = 1.5})\n\n~~~\n\n]]\n-- end --\n\nfunction transition.moveTo(target, args)\n    assert(not tolua.isnull(target), \"transition.moveTo() - target is not cc.Node\")\n    local tx, ty = target:getPosition()\n    local x = args.x or tx\n    local y = args.y or ty\n    local action = cc.MoveTo:create(args.time, cc.p(x, y))\n    return transition.execute(target, action, args)\nend\n\n-- start --\n\n--------------------------------\n-- 将显示对象移动一定距离，并返回 Action 动作对象。\n-- @function [parent=#transition] moveBy\n-- @param cc.Node target 显示对象\n-- @param table args 参数表格对象\n-- @return mixed#mixed ret (return value: mixed)  结果\n\n--[[--\n\n将显示对象移动一定距离，并返回 Action 动作对象。\n\n~~~ lua\n\n-- 向右移动 100 点，向上移动 100 点\ntransition.moveBy(sprite, {x = 100, y = 100, time = 1.5})\n-- 向左移动 100 点，不改变 y\ntransition.moveBy(sprite, {x = -100, time = 1.5})\n-- 向下移动 100 点，不改变 x\ntransition.moveBy(sprite, {y = -100, time = 1.5})\n\n~~~\n\n]]\n-- end --\n\nfunction transition.moveBy(target, args)\n    assert(not tolua.isnull(target), \"transition.moveBy() - target is not cc.Node\")\n    local x = args.x or 0\n    local y = args.y or 0\n    local action = cc.MoveBy:create(args.time, cc.p(x, y))\n    return transition.execute(target, action, args)\nend\n\n-- start --\n\n--------------------------------\n-- 淡入显示对象，并返回 Action 动作对象。\n-- @function [parent=#transition] fadeIn\n-- @param cc.Node target 显示对象\n-- @param table args 参数表格对象\n-- @return mixed#mixed ret (return value: mixed)  结果\n\n\n--[[--\n\n淡入显示对象，并返回 Action 动作对象。\n\nfadeIn 操作会首先将对象的透明度设置为 0（0%，完全透明），然后再逐步增加为 255（100%，完全不透明）。\n\n如果不希望改变对象当前的透明度，应该用 fadeTo()。\n\n~~~ lua\n\naction = transition.fadeIn(sprite, {time = 1.5})\n\n~~~\n\n]]\n-- end --\n\nfunction transition.fadeIn(target, args)\n    assert(not tolua.isnull(target), \"transition.fadeIn() - target is not cc.Node\")\n    local action = cc.FadeIn:create(args.time)\n    return transition.execute(target, action, args)\nend\n\n-- start --\n\n--------------------------------\n-- 淡出显示对象，并返回 Action 动作对象。\n-- @function [parent=#transition] fadeOut\n-- @param cc.Node target 显示对象\n-- @param table args 参数表格对象\n-- @return mixed#mixed ret (return value: mixed)  结果\n\n--[[--\n\n淡出显示对象，并返回 Action 动作对象。\n\nfadeOut 操作会首先将对象的透明度设置为 255（100%，完全不透明），然后再逐步减少为 0（0%，完全透明）。\n\n如果不希望改变对象当前的透明度，应该用 fadeTo()。\n\n~~~ lua\n\naction = transition.fadeOut(sprite, {time = 1.5})\n\n~~~\n\n]]\n-- end --\n\nfunction transition.fadeOut(target, args)\n    assert(not tolua.isnull(target), \"transition.fadeOut() - target is not cc.Node\")\n    local action = cc.FadeOut:create(args.time)\n    return transition.execute(target, action, args)\nend\n\n-- start --\n\n--------------------------------\n-- 将显示对象的透明度改变为指定值，并返回 Action 动作对象。\n-- @function [parent=#transition] fadeTo\n-- @param cc.Node target 显示对象\n-- @param table args 参数表格对象\n-- @return mixed#mixed ret (return value: mixed)  结果\n\n--[[--\n\n将显示对象的透明度改变为指定值，并返回 Action 动作对象。\n\n~~~ lua\n\n-- 不管显示对象当前的透明度是多少，最终设置为 128\ntransition.fadeTo(sprite, {opacity = 128, time = 1.5})\n\n~~~\n\n]]\n-- end --\n\nfunction transition.fadeTo(target, args)\n    assert(not tolua.isnull(target), \"transition.fadeTo() - target is not cc.Node\")\n    local opacity = checkint(args.opacity)\n    if opacity < 0 then\n        opacity = 0\n    elseif opacity > 255 then\n        opacity = 255\n    end\n    local action = cc.FadeTo:create(args.time, opacity)\n    return transition.execute(target, action, args)\nend\n\n-- start --\n\n--------------------------------\n-- 将显示对象缩放到指定比例，并返回 Action 动作对象。\n-- @function [parent=#transition] scaleTo\n-- @param cc.Node target 显示对象\n-- @param table args 参数表格对象\n-- @return mixed#mixed ret (return value: mixed)  结果\n\n--[[--\n\n将显示对象缩放到指定比例，并返回 Action 动作对象。\n\n~~~ lua\n\n-- 整体缩放为 50%\ntransition.scaleTo(sprite, {scale = 0.5, time = 1.5})\n-- 单独水平缩放\ntransition.scaleTo(sprite, {scaleX = 0.5, time = 1.5})\n-- 单独垂直缩放\ntransition.scaleTo(sprite, {scaleY = 0.5, time = 1.5})\n\n~~~\n\n]]\n-- end --\n\nfunction transition.scaleTo(target, args)\n    assert(not tolua.isnull(target), \"transition.scaleTo() - target is not cc.Node\")\n    local action\n    if args.scale then\n        action = cc.ScaleTo:create(checknumber(args.time), checknumber(args.scale))\n    elseif args.scaleX or args.scaleY then\n        local scaleX, scaleY\n        if args.scaleX then\n            scaleX = checknumber(args.scaleX)\n        else\n            scaleX = target:getScaleX()\n        end\n        if args.scaleY then\n            scaleY = checknumber(args.scaleY)\n        else\n            scaleY = target:getScaleY()\n        end\n        action = cc.ScaleTo:create(checknumber(args.time), scaleX, scaleY)\n    end\n    return transition.execute(target, action, args)\nend\n\n-- start --\n\n--------------------------------\n-- 创建一个动作序列对象。\n-- @function [parent=#transition] sequence\n-- @param table args 动作的表格对象\n-- @return Sequence#Sequence ret (return value: cc.Sequence)  动作序列对象\n\n--[[--\n\n创建一个动作序列对象。\n\n~~~ lua\n\nlocal sequence = transition.sequence({\n    cc.MoveTo:create(0.5, cc.p(display.cx, display.cy)),\n    cc.FadeOut:create(0.2),\n    cc.DelayTime:create(0.5),\n    cc.FadeIn:create(0.3),\n})\nsprite:runAction(sequence)\n\n~~~\n\n]]\n-- end --\n\nfunction transition.sequence(actions)\n    if #actions < 1 then return end\n    if #actions < 2 then return actions[1] end\n\n    local prev = actions[1]\n    for i = 2, #actions do\n        prev = cc.Sequence:create(prev, actions[i])\n    end\n    return prev\nend\n\n-- start --\n\n--------------------------------\n-- 在显示对象上播放一次动画，并返回 Action 动作对象。\n-- @function [parent=#transition] playAnimationOnce\n-- @param cc.Node target 显示对象\n-- @param cc.Node animation 动作对象\n-- @param boolean removeWhenFinished 播放完成后删除显示对象\n-- @param function onComplete 播放完成后要执行的函数\n-- @param number delay 播放前等待的时间\n-- @return table#table ret (return value: table)  动作表格对象\n\n--[[--\n\n在显示对象上播放一次动画，并返回 Action 动作对象。\n\n~~~ lua\n\nlocal frames = display.newFrames(\"Walk%04d.png\", 1, 20)\nlocal animation = display.newAnimation(frames, 0.5 / 20) -- 0.5s play 20 frames\ntransition.playAnimationOnce(sprite, animation)\n\n~~~\n\n还可以用 Sprite 对象的 playAnimationOnce() 方法来直接播放动画：\n\n~~~ lua\n\nlocal frames = display.newFrames(\"Walk%04d.png\", 1, 20)\nlocal animation = display.newAnimation(frames, 0.5 / 20) -- 0.5s play 20 frames\nsprite:playAnimationOnce(animation)\n\n~~~\n\nplayAnimationOnce() 提供了丰富的功能，例如在动画播放完成后就删除用于播放动画的 Sprite 对象。例如一个爆炸效果：\n\n~~~ lua\n\nlocal frames = display.newFrames(\"Boom%04d.png\", 1, 8)\nlocal boom = display.newSprite(frames[1])\n\n-- playAnimationOnce() 第二个参数为 true 表示动画播放完后删除 boom 这个 Sprite 对象\n-- 这样爆炸动画播放完毕，就自动清理了不需要的显示对象\nboom:playAnimationOnce(display.newAnimation(frames, 0.3/ 8), true)\n\n~~~\n\n此外，playAnimationOnce() 还允许在动画播放完成后执行一个指定的函数，以及播放动画前等待一段时间。合理运用这些功能，可以大大简化我们的游戏代码。\n\n]]\n-- end --\n\nfunction transition.playAnimationOnce(target, animation, removeWhenFinished, onComplete, delay)\n    local actions = {}\n    if type(delay) == \"number\" and delay > 0 then\n        target:setVisible(false)\n        actions[#actions + 1] = cc.DelayTime:create(delay)\n        actions[#actions + 1] = cc.Show:create()\n    end\n\n    actions[#actions + 1] = cc.Animate:create(animation)\n\n    if removeWhenFinished then\n        actions[#actions + 1] = cc.RemoveSelf:create()\n    end\n    if onComplete then\n        actions[#actions + 1] = cc.CallFunc:create(onComplete)\n    end\n\n    local action\n    if #actions > 1 then\n        action = transition.sequence(actions)\n    else\n        action = actions[1]\n    end\n    target:runAction(action)\n    return action\nend\n\n-- start --\n\n--------------------------------\n-- 在显示对象上循环播放动画，并返回 Action 动作对象。\n-- @function [parent=#transition] playAnimationForever\n-- @param cc.Node target 显示对象\n-- @param cc.Node animation 动作对象\n-- @param number delay 播放前等待的时间\n-- @return table#table ret (return value: table)  动作表格对象\n\n--[[--\n\n在显示对象上循环播放动画，并返回 Action 动作对象。\n\n~~~ lua\n\nlocal frames = display.newFrames(\"Walk%04d.png\", 1, 20)\nlocal animation = display.newAnimation(frames, 0.5 / 20) -- 0.5s play 20 frames\nsprite:playAnimationForever(animation)\n\n~~~\n\n]]\n-- end --\n\nfunction transition.playAnimationForever(target, animation, delay)\n    local animate = cc.Animate:create(animation)\n    local action\n    if type(delay) == \"number\" and delay > 0 then\n        target:setVisible(false)\n        local sequence = transition.sequence({\n            cc.DelayTime:create(delay),\n            cc.Show:create(),\n            animate,\n        })\n        action = cc.RepeatForever:create(sequence)\n    else\n        action = cc.RepeatForever:create(animate)\n    end\n    target:runAction(action)\n    return action\nend\n\n-- start --\n\n--------------------------------\n-- 停止一个正在执行的动作\n-- @function [parent=#transition] removeAction\n-- @param mixed target\n\n--[[--\n\n停止一个正在执行的动作\n\n~~~ lua\n\n-- 开始移动\nlocal action = transition.moveTo(sprite, {time = 2.0, x = 100, y = 100})\n....\ntransition.removeAction(action) -- 停止移动\n\n~~~\n\n]]\n-- end --\n\nfunction transition.removeAction(action)\n    if not tolua.isnull(action) then\n        actionManager:removeAction(action)\n    end\nend\n\n-- start --\n\n--------------------------------\n-- 停止一个显示对象上所有正在执行的动作\n-- @function [parent=#transition] stopTarget\n-- @param mixed target\n\n--[[--\n\n停止一个显示对象上所有正在执行的动作\n\n~~~ lua\n\n-- 开始移动\ntransition.moveTo(sprite, {time = 2.0, x = 100, y = 100})\ntransition.fadeOut(sprite, {time = 2.0})\n....\ntransition.stopTarget(sprite)\n\n~~~\n\n注意:显示对象的 performWithDelay() 方法是用动作来实现延时回调操作的，所以如果停止显示对象上的所有动作，会清除该对象上的延时回调操作。\n\n]]\n-- end --\n\nfunction transition.stopTarget(target)\n    if not tolua.isnull(target) then\n        actionManager:removeAllActionsFromTarget(target)\n    end\nend\n\n-- start --\n\n--------------------------------\n-- 暂停显示对象上所有正在执行的动作\n-- @function [parent=#transition] pauseTarget\n-- @param mixed target\n\n-- end --\n\nfunction transition.pauseTarget(target)\n    if not tolua.isnull(target) then\n        actionManager:pauseTarget(target)\n    end\nend\n\n-- start --\n\n--------------------------------\n-- 恢复显示对象上所有暂停的动作\n-- @function [parent=#transition] resumeTarget\n-- @param mixed target\n\n-- end --\n\nfunction transition.resumeTarget(target)\n    if not tolua.isnull(target) then\n        actionManager:resumeTarget(target)\n    end\nend\n\nreturn transition\n"
  },
  {
    "path": "源代码/mir9/src/framework/ui.lua",
    "content": "--[[\n\nCopyright (c) 2011-2014 chukong-inc.com\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in\nall copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\nTHE SOFTWARE.\n\n]]\n\n--------------------------------\n-- @module ui\n\n--[[--\n\n创建和管理用户界面\n\n]]\n\nlocal ui = {}\n\nui.DEFAULT_TTF_FONT      = \"Arial\"\nui.DEFAULT_TTF_FONT_SIZE = 24\n\nui.TEXT_ALIGN_LEFT    = cc.TEXT_ALIGNMENT_LEFT\nui.TEXT_ALIGN_CENTER  = cc.TEXT_ALIGNMENT_CENTER\nui.TEXT_ALIGN_RIGHT   = cc.TEXT_ALIGNMENT_RIGHT\nui.TEXT_VALIGN_TOP    = cc.VERTICAL_TEXT_ALIGNMENT_TOP\nui.TEXT_VALIGN_CENTER = cc.VERTICAL_TEXT_ALIGNMENT_CENTER\nui.TEXT_VALIGN_BOTTOM = cc.VERTICAL_TEXT_ALIGNMENT_BOTTOM\n\n-- start --\n\n--------------------------------\n-- 创建一个文字输入框，并返回 EditBox 对象。\n-- @function [parent=#ui] newEditBox\n-- @param table params 参数表格对象\n-- @return EditBox#EditBox  文字输入框\n\n--[[--\n\n创建一个文字输入框，并返回 EditBox 对象。\n\n可用参数：\n\n-   image: 输入框的图像，可以是图像名或者是 Sprite9Scale 显示对象。用 display.newScale9Sprite() 创建 Sprite9Scale 显示对象。\n-   imagePressed: 输入状态时输入框显示的图像（可选）\n-   imageDisabled: 禁止状态时输入框显示的图像（可选）\n-   listener: 回调函数\n-   size: 输入框的尺寸，用 cc.size(宽度, 高度) 创建\n-   x, y: 坐标（可选）\n\n~~~ lua\n\nlocal function onEdit(event, editbox)\n    if event == \"began\" then\n        -- 开始输入\n    elseif event == \"changed\" then\n        -- 输入框内容发生变化\n    elseif event == \"ended\" then\n        -- 输入结束\n    elseif event == \"return\" then\n        -- 从输入框返回\n    end\nend\n\nlocal editbox = ui.newEditBox({\n    image = \"EditBox.png\",\n    listener = onEdit,\n    size = cc.size(200, 40)\n})\n\n~~~\n\n注意: 使用setInputFlag(0) 可设为密码输入框。\n\n注意：构造输入框时，请使用setPlaceHolder来设定初始文本显示。setText为出现输入法后的默认文本。\n\n注意：事件触发机制，player模拟器上与真机不同，请使用真机实测(不同ios版本貌似也略有不同)。\n\n注意：changed事件中，需要条件性使用setText（如trim或转化大小写等），否则在某些ios版本中会造成死循环。\n\n~~~ lua\n\n--错误，会造成死循环\n\neditbox:setText(string.trim(editbox:getText()))\n\n~~~\n\n~~~ lua\n\n--正确，不会造成死循环\nlocal _text = editbox:getText()\nlocal _trimed = string.trim(_text)\nif _trimed ~= _text then\n    editbox:setText(_trimed)\nend\n\n~~~\n\n]]\n-- end --\n\nfunction ui.newEditBox(params)\n    PRINT_DEPRECATED(string.format(\"%s() is deprecated, please use %s()\", \"ui.newEditBox\", \"cc.ui.UIInput\"))\n\n    if params then\n        params.UIInputType = 1\n    end\n    return cc.ui.UIInput.new(params)\nend\n\nfunction ui.newTextField(params)\n    PRINT_DEPRECATED(string.format(\"%s() is deprecated, please use %s()\", \"ui.newTextField\", \"cc.ui.UIInput\"))\n\n    if not params then\n        params = {}\n    end\n    if params then\n        params.UIInputType = 2\n    end\n    return cc.ui.UIInput.new(params)\nend\n\n-- start --\n\n--------------------------------\n-- 用位图字体创建文本显示对象，并返回 LabelBMFont 对象。\n-- @function [parent=#ui] newBMFontLabel\n-- @param table params 参数表格对象\n-- @return LabelBMFont#LabelBMFont  LabelBMFont对象\n\n--[[--\n\n用位图字体创建文本显示对象，并返回 LabelBMFont 对象。\n\nBMFont 通常用于显示英文内容，因为英文字母加数字和常用符号也不多，生成的 BMFont 文件较小。如果是中文，应该用 TTFLabel。\n\n可用参数：\n\n-    text: 要显示的文本\n-    font: 字体文件名\n-    align: 文字的水平对齐方式（可选）\n-    x, y: 坐标（可选）\n\n~~~ lua\n\nlocal label = ui.newBMFontLabel({\n    text = \"Hello\",\n    font = \"UIFont.fnt\",\n})\n\n~~~\n\n]]\n-- end --\n\nfunction ui.newBMFontLabel(params)\n    PRINT_DEPRECATED(string.format(\"%s() is deprecated, please use %s()\", \"ui.newBMFontLabel\", \"cc.ui.UILabel\"))\n\n    return cc.ui.UILabel.newBMFontLabel_(params)\nend\n\n-- start --\n\n--------------------------------\n-- 使用 TTF 字体创建文字显示对象，并返回 LabelTTF 对象。\n-- @function [parent=#ui] newTTFLabel\n-- @param table params 参数表格对象\n-- @return LabelTTF#LabelTTF  LabelTTF对象\n\n--[[--\n\n使用 TTF 字体创建文字显示对象，并返回 LabelTTF 对象。\n\n可用参数：\n\n-    text: 要显示的文本\n-    font: 字体名，如果是非系统自带的 TTF 字体，那么指定为字体文件名\n-    size: 文字尺寸，因为是 TTF 字体，所以可以任意指定尺寸\n-    color: 文字颜色（可选），用 cc.c3b() 指定，默认为白色\n-    align: 文字的水平对齐方式（可选）\n-    valign: 文字的垂直对齐方式（可选），仅在指定了 dimensions 参数时有效\n-    dimensions: 文字显示对象的尺寸（可选），使用 cc.size() 指定\n-    x, y: 坐标（可选）\n\nalign 和 valign 参数可用的值：\n\n-    ui.TEXT_ALIGN_LEFT 左对齐\n-    ui.TEXT_ALIGN_CENTER 水平居中对齐\n-    ui.TEXT_ALIGN_RIGHT 右对齐\n-    ui.TEXT_VALIGN_TOP 垂直顶部对齐\n-    ui.TEXT_VALIGN_CENTER 垂直居中对齐\n-    ui.TEXT_VALIGN_BOTTOM 垂直底部对齐\n\n~~~ lua\n\n-- 创建一个居中对齐的文字显示对象\nlocal label = ui.newTTFLabel({\n    text = \"Hello, World\",\n    font = \"Marker Felt\",\n    size = 64,\n    align = ui.TEXT_ALIGN_CENTER -- 文字内部居中对齐\n})\n\n-- 左对齐，并且多行文字顶部对齐\nlocal label = ui.newTTFLabel({\n    text = \"Hello, World\\n您好，世界\",\n    font = \"Arial\",\n    size = 64,\n    color = cc.c3b(255, 0, 0), -- 使用纯红色\n    align = ui.TEXT_ALIGN_LEFT,\n    valign = ui.TEXT_VALIGN_TOP,\n    dimensions = cc.size(400, 200)\n})\n\n~~~\n\n]]\n-- end --\n\nfunction ui.newTTFLabel(params)\n    PRINT_DEPRECATED(string.format(\"%s() is deprecated, please use %s()\", \"ui.newTTFLabel\", \"cc.ui.UILabel\"))\n\n    return cc.ui.UILabel.newTTFLabel_(params)\nend\n\n-- start --\n\n--------------------------------\n-- 创建带阴影的 TTF 文字显示对象，并返回 LabelTTF 对象。\n-- @function [parent=#ui] newTTFLabelWithShadow\n-- @param table params 参数表格对象\n-- @return LabelTTF#LabelTTF  LabelTTF对象\n\n--[[--\n\n创建带阴影的 TTF 文字显示对象，并返回 LabelTTF 对象。\n\n相比 ui.newTTFLabel() 增加一个参数：\n\n-   shadowColor: 阴影颜色（可选），用 cc.c4b() 指定，默认为黑色\n\n]]\n-- end --\n\nfunction ui.newTTFLabelWithShadow(params)\n    PRINT_DEPRECATED(string.format(\"%s() is deprecated, please use %s()\", \"ui.newTTFLabelWithShadow\", \"cc.ui.UILabel\"))\n\n    local label = cc.ui.UILabel.newTTFLabel_(params)\n    label:enableShadow(params.shadowColor, cc.size(2,-2))\n\n    return label\nend\n\n-- start --\n\n--------------------------------\n-- 创建带描边效果的 TTF 文字显示对象，并返回 LabelTTF 对象。\n-- @function [parent=#ui] newTTFLabelWithOutline\n-- @param table params 参数表格对象\n-- @return LabelTTF#LabelTTF  LabelTTF对象\n\n--[[--\n\n创建带描边效果的 TTF 文字显示对象，并返回 LabelTTF 对象。\n\n相比 ui.newTTFLabel() 增加一个参数：\n\n    outlineColor: 描边颜色（可选），用 cc.c4b() 指定，默认为黑色\n\n]]\n-- end --\n\nfunction ui.newTTFLabelWithOutline(params)\n    PRINT_DEPRECATED(string.format(\"%s() is deprecated, please use %s()\", \"ui.newTTFLabelWithOutline\", \"cc.ui.UILabel\"))\n    \n    local label = cc.ui.UILabel.newTTFLabel_(params)\n    label:enableOutline(params.outlineColor, 2);\n\n    return label\nend\n\nreturn ui\n"
  },
  {
    "path": "源代码/mir9/src/main.lua",
    "content": "\nfunction __G__TRACKBACK__(errorMessage)\n    print(\"----------------------------------------\")\n    print(\"LUA ERROR: \" .. tostring(errorMessage) .. \"\\n\")\n    print(debug.traceback(\"\", 2))\n    print(\"----------------------------------------\")\nend\n\npackage.path = package.path .. \";src/\"\ncc.FileUtils:getInstance():setPopupNotify(false)\nrequire(\"app.MyApp\").new():run()\n"
  }
]