diff options
Diffstat (limited to 'third_party/libphonenumber/cpp')
37 files changed, 9890 insertions, 0 deletions
diff --git a/third_party/libphonenumber/cpp/CMakeLists.txt b/third_party/libphonenumber/cpp/CMakeLists.txt new file mode 100644 index 0000000..720168e --- /dev/null +++ b/third_party/libphonenumber/cpp/CMakeLists.txt @@ -0,0 +1,242 @@ +# Copyright (C) 2011 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# Author: Philippe Liard + +cmake_minimum_required (VERSION 2.8) + +project (libphonenumber) + +# Helper functions dealing with finding libraries and programs this library +# depends on. + +function (print_error DESCRIPTION FILE) + message (FATAL_ERROR + "Can't find ${DESCRIPTION}: can't locate ${FILE}. Please read the README.") +endfunction () + +# Find a library. If it has not been found, stop CMake with a fatal error +# message. +function (find_required_library NAME HEADER LIBRARY DESCRIPTION) + # Check the header. + find_path (${NAME}_INCLUDE_DIR ${HEADER}) + set (INCLUDE_DIR ${${NAME}_INCLUDE_DIR}) + + if (${INCLUDE_DIR} STREQUAL "${INCLUDE_DIR}-NOTFOUND") + print_error (${DESCRIPTION} ${HEADER}) + endif () + include_directories (${INCLUDE_DIR}) + # Check the binary. + find_library (${NAME}_LIB ${LIBRARY}) + set (LIB ${NAME}_LIB) + + if (${LIB} STREQUAL "${LIB}-NOTFOUND") + print_error (${DESCRIPTION} ${LIBRARY}) + endif () +endfunction (find_required_library) + +# Check the library version (if pkg-config available). +find_package (PkgConfig) +function (check_library_version NAME LIBRARY VERSION) + if (PKG_CONFIG_EXECUTABLE) + pkg_check_modules (NAME REQUIRED ${LIBRARY}>=${VERSION}) + endif (PKG_CONFIG_EXECUTABLE) +endfunction () + +# Find a program. If it has not been found, stop CMake with a fatal error +# message. +function (find_required_program NAME FILENAME DESCRIPTION) + find_program (${NAME}_BIN NAMES ${FILENAME}) + + if (${NAME}_BIN STREQUAL "${${NAME}_BIN}-NOTFOUND") + print_error (${DESCRIPTION} ${FILENAME}) + endif () +endfunction (find_required_program) + +# Find all the required libraries and programs. +find_required_library (GTEST gtest/gtest.h gtest "Google Test framework") + +find_required_library (RE2 re2/re2.h re2 "Google RE2") + +find_required_library (PROTOBUF google/protobuf/message_lite.h protobuf + "Google Protocol Buffers") +check_library_version (PC_PROTOBUF protobuf 2.4) + +find_required_library (ICU unicode/unistr.h icui18n "ICU") +check_library_version (PC_ICU icui18n 4.4) + +find_required_program (PROTOC protoc + "Google Protocol Buffers compiler (protoc)") + +find_required_program (JAVA java + "Java Runtime Environment") + +# Add protoc (Protocol Buffers compiler) target. +set (RESOURCES_DIR "${CMAKE_SOURCE_DIR}/../resources") + +set ( + PROTOBUF_SOURCES "${RESOURCES_DIR}/phonemetadata.proto" + "${RESOURCES_DIR}/phonenumber.proto" +) + +set ( + PROTOBUF_OUTPUT "${CMAKE_SOURCE_DIR}/src/phonemetadata.pb.cc" + "${CMAKE_SOURCE_DIR}/src/phonemetadata.pb.h" + "${CMAKE_SOURCE_DIR}/src/phonenumber.pb.cc" + "${CMAKE_SOURCE_DIR}/src/phonenumber.pb.h" +) + +add_custom_command ( + COMMAND ${PROTOC_BIN} --cpp_out="${CMAKE_SOURCE_DIR}/src" + --proto_path=${RESOURCES_DIR} ${PROTOBUF_SOURCES} + + OUTPUT ${PROTOBUF_OUTPUT} + DEPENDS ${PROTOBUF_SOURCES} +) + +add_custom_target ( + generate-sources + + DEPENDS ${PROTOBUF_OUTPUT} + COMMENT "Generating Protocol Buffers code" +) + +# Add metadata code generation targets. + +# This function is invoked twice to create metadata & test metadata code +# generation targets. +function (add_metadata_gen_target TARGET_NAME + XML_FILE + FOR_TESTING) + if (${FOR_TESTING} STREQUAL "true") + set (GEN_OUTPUT_PREFIX "${CMAKE_SOURCE_DIR}/src/metadata") + elseif (${FOR_TESTING} STREQUAL "false") + set (GEN_OUTPUT_PREFIX "${CMAKE_SOURCE_DIR}/src/test_metadata") + else () + message (FATAL_ERROR + "Unexpected value '${FOR_TESTING}' for testing parameter") + endif () + + set (GEN_OUTPUT "${GEN_OUTPUT_PREFIX}.cc ${GEN_OUTPUT_PREFIX}.h") + set (JAR_PATH "${CMAKE_SOURCE_DIR}/../tools/java/cpp-build/target") + set (JAR_PATH "${JAR_PATH}/cpp-build-1.0-SNAPSHOT-jar-with-dependencies.jar") + + add_custom_command ( + COMMAND ${JAVA_BIN} -jar + ${JAR_PATH} BuildMetadataCppFromXml ${XML_FILE} ${CMAKE_SOURCE_DIR}/src + ${FOR_TESTING} + + OUTPUT ${GEN_OUTPUT} + DEPENDS ${XML_FILE} + ) + add_custom_target ( + ${TARGET_NAME} + DEPENDS ${GEN_OUTPUT} + COMMENT "Generating Metadata code" + ) +endfunction (add_metadata_gen_target) + +# Add metadata generation target. +add_metadata_gen_target ( + "generate-metadata" + "${RESOURCES_DIR}/PhoneNumberMetaData.xml" + "false" +) + +# Add test metadata generation target. +add_metadata_gen_target ( + "generate-test-metadata" + "${RESOURCES_DIR}/PhoneNumberMetaDataForTesting.xml" + "true" +) + +# Platform independent sources. +set ( + SOURCES + "src/base/at_exit.cc" + "src/base/lazy_instance.cc" + "src/base/string_piece.cc" + "src/base/synchronization/lock.cc" + "src/base/threading/thread_restrictions.cc" + "src/default_logger.cc" + "src/logger_adapter.cc" + "src/metadata.cc" # Generated by build tools. + "src/phonemetadata.pb.cc" # Generated by Protocol Buffers. + "src/phonenumber.cc" + "src/phonenumber.pb.cc" # Generated by Protocol Buffers. + "src/phonenumberutil.cc" + "src/re2_cache.cc" + "src/regexp_adapter_re2.cc", + "src/stringutil.cc" + "src/utf/rune.c" + "src/utf/unicodetext.cc" + "src/utf/unilib.cc" +) + +if (UNIX) + if (CMAKE_COMPILER_IS_GNUCXX) + add_definitions ("-Wall -Wextra -Werror") + + # The next flags are needed by base/ source files to compile low level code + # needed by Singleton. + add_definitions ("-DCOMPILER_GCC -DOS_POSIX -DOS_LINUX") + + if (${CMAKE_SYSTEM_PROCESSOR} MATCHES "x86.*") + add_definitions ("-DARCH_CPU_X86_FAMILY") + # Add GCC specific sources. + list (APPEND SOURCES "src/base/atomicops_internals_x86_gcc.cc") + + elseif (${CMAKE_SYSTEM_PROCESSOR} MATCHES ".*arm.*") + add_definitions ("-DARCH_CPU_ARM_FAMILY") + endif () + endif () + + # Add POSIX specific sources. + list ( + APPEND SOURCES + "src/base/synchronization/lock_impl_posix.cc" + "src/base/threading/platform_thread_posix.cc" + "src/base/threading/thread_local_posix.cc" + ) +else (WIN32) + # TODO: add Windows support (define COMPILER_MSVC, OS_WIN). + list ( + APPEND SOURCES + "src/base/synchronization/lock_impl_win.cc" + "src/base/threading/platform_thread_win.cc" + "src/base/threading/thread_local_win.cc" + ) + # TODO: Windows specific flags. +endif () + +include_directories ("src") +include_directories (".") + +add_library (phonenumber STATIC ${SOURCES}) +add_dependencies (phonenumber generate-sources) + +target_link_libraries (phonenumber ${RE2_LIB} ${PROTOBUF_LIB} ${ICU_LIB}) + +# Tests. +set (TEST_SOURCES + "src/phonenumberutil_test.cc" + "src/re2_cache_test.cc" + "src/regexp_adapter_unittest.cc", + "src/run_tests.cc" + "src/stringutil_test.cc" + "src/test_metadata.cc" # Generated by build tools. +) + +add_executable (libphonenumber_test ${TEST_SOURCES}) +target_link_libraries (libphonenumber_test phonenumber ${GTEST_LIB} pthread) diff --git a/third_party/libphonenumber/cpp/LICENSE b/third_party/libphonenumber/cpp/LICENSE new file mode 100644 index 0000000..145f008 --- /dev/null +++ b/third_party/libphonenumber/cpp/LICENSE @@ -0,0 +1,13 @@ +Copyright (C) 2011 Google Inc. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + +http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. diff --git a/third_party/libphonenumber/cpp/README b/third_party/libphonenumber/cpp/README new file mode 100644 index 0000000..775348a --- /dev/null +++ b/third_party/libphonenumber/cpp/README @@ -0,0 +1,69 @@ +C++ version of the libphonenumber project. +Work in progress. + +This is a port of the Java version. + +This project uses some third-party code: + - src/base/ sources come from Chromium browser. + - src/utf/ sources come from lib9 which is also used in Go. + +Requirements: + - CMake build system + http://www.cmake.org + + You can install it very easily on a Debian-based GNU/Linux distribution: + $ sudo apt-get install cmake + + - Protocol Buffers + http://code.google.com/p/protobuf/ + Version 2.4 or more recent is required. + + You can install it very easily on a Debian-based GNU/Linux distribution: + $ sudo apt-get install libprotobuf-dev + + Note: if your GNU/Linux distribution doesn't provide the needed package, + please download and install it manually: + $ tar xjf protobuf-2.4.tar.bz2 + $ cd protobuf-2.4 + $ ./configure && make && sudo make install + + - Google Test + http://code.google.com/p/googletest/ + + You can install it very easily on a Debian-based GNU/Linux distribution: + $ sudo apt-get install libgtest-dev + + - RE2 + http://code.google.com/p/re2/ + + You can install it very easily on Ubuntu Maverick and later: + $ sudo apt-get install libre2-dev + + Otherwise if you use a Debian-based distribution you can fetch the Ubuntu + package which should work: + http://packages.ubuntu.com/maverick/libre2-dev + + If you want to install it manually: + You need Mercurial to checkout its source code: + $ sudo apt-get install mercurial + + Then checkout, build and install it: + $ hg clone https://re2.googlecode.com/hg re2 + $ cd re2 + $ make test + $ make install + $ make testinstall + + - ICU + http://userguide.icu-project.org/ + + You can install it very easily on a Debian-based distribution: + $ sudo apt-get install libicu-dev + + +How to build libphonenumber C++: + $ cd libphonenumber + $ mkdir build + $ cd build + $ cmake ../cpp/ + $ make diff --git a/third_party/libphonenumber/cpp/src/base/singleton.h b/third_party/libphonenumber/cpp/src/base/singleton.h new file mode 100644 index 0000000..0fe5e27 --- /dev/null +++ b/third_party/libphonenumber/cpp/src/base/singleton.h @@ -0,0 +1,271 @@ +// Copyright (c) 2010 The Chromium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +#ifndef BASE_SINGLETON_H_ +#define BASE_SINGLETON_H_ +#pragma once + +#include "base/at_exit.h" +#include "base/atomicops.h" +#include "base/third_party/dynamic_annotations/dynamic_annotations.h" +#include "base/threading/platform_thread.h" +#include "base/threading/thread_restrictions.h" + +// Default traits for Singleton<Type>. Calls operator new and operator delete on +// the object. Registers automatic deletion at process exit. +// Overload if you need arguments or another memory allocation function. +template<typename Type> +struct DefaultSingletonTraits { + // Allocates the object. + static Type* New() { + // The parenthesis is very important here; it forces POD type + // initialization. + return new Type(); + } + + // Destroys the object. + static void Delete(Type* x) { + delete x; + } + + // Set to true to automatically register deletion of the object on process + // exit. See below for the required call that makes this happen. + static const bool kRegisterAtExit = true; + + // Set to false to disallow access on a non-joinable thread. This is + // different from kRegisterAtExit because StaticMemorySingletonTraits allows + // access on non-joinable threads, and gracefully handles this. + static const bool kAllowedToAccessOnNonjoinableThread = false; +}; + + +// Alternate traits for use with the Singleton<Type>. Identical to +// DefaultSingletonTraits except that the Singleton will not be cleaned up +// at exit. +template<typename Type> +struct LeakySingletonTraits : public DefaultSingletonTraits<Type> { + static const bool kRegisterAtExit = false; + static const bool kAllowedToAccessOnNonjoinableThread = true; +}; + + +// Alternate traits for use with the Singleton<Type>. Allocates memory +// for the singleton instance from a static buffer. The singleton will +// be cleaned up at exit, but can't be revived after destruction unless +// the Resurrect() method is called. +// +// This is useful for a certain category of things, notably logging and +// tracing, where the singleton instance is of a type carefully constructed to +// be safe to access post-destruction. +// In logging and tracing you'll typically get stray calls at odd times, like +// during static destruction, thread teardown and the like, and there's a +// termination race on the heap-based singleton - e.g. if one thread calls +// get(), but then another thread initiates AtExit processing, the first thread +// may call into an object residing in unallocated memory. If the instance is +// allocated from the data segment, then this is survivable. +// +// The destructor is to deallocate system resources, in this case to unregister +// a callback the system will invoke when logging levels change. Note that +// this is also used in e.g. Chrome Frame, where you have to allow for the +// possibility of loading briefly into someone else's process space, and +// so leaking is not an option, as that would sabotage the state of your host +// process once you've unloaded. +template <typename Type> +struct StaticMemorySingletonTraits { + // WARNING: User has to deal with get() in the singleton class + // this is traits for returning NULL. + static Type* New() { + if (base::subtle::NoBarrier_AtomicExchange(&dead_, 1)) + return NULL; + Type* ptr = reinterpret_cast<Type*>(buffer_); + + // We are protected by a memory barrier. + new(ptr) Type(); + return ptr; + } + + static void Delete(Type* p) { + base::subtle::NoBarrier_Store(&dead_, 1); + base::subtle::MemoryBarrier(); + if (p != NULL) + p->Type::~Type(); + } + + static const bool kRegisterAtExit = true; + static const bool kAllowedToAccessOnNonjoinableThread = true; + + // Exposed for unittesting. + static void Resurrect() { + base::subtle::NoBarrier_Store(&dead_, 0); + } + + private: + static const size_t kBufferSize = (sizeof(Type) + + sizeof(intptr_t) - 1) / sizeof(intptr_t); + static intptr_t buffer_[kBufferSize]; + + // Signal the object was already deleted, so it is not revived. + static base::subtle::Atomic32 dead_; +}; + +template <typename Type> intptr_t + StaticMemorySingletonTraits<Type>::buffer_[kBufferSize]; +template <typename Type> base::subtle::Atomic32 + StaticMemorySingletonTraits<Type>::dead_ = 0; + +// The Singleton<Type, Traits, DifferentiatingType> class manages a single +// instance of Type which will be created on first use and will be destroyed at +// normal process exit). The Trait::Delete function will not be called on +// abnormal process exit. +// +// DifferentiatingType is used as a key to differentiate two different +// singletons having the same memory allocation functions but serving a +// different purpose. This is mainly used for Locks serving different purposes. +// +// Example usage: +// +// In your header: +// #include "base/singleton.h" +// class FooClass { +// public: +// static FooClass* GetInstance(); <-- See comment below on this. +// void Bar() { ... } +// private: +// FooClass() { ... } +// friend struct DefaultSingletonTraits<FooClass>; +// +// DISALLOW_COPY_AND_ASSIGN(FooClass); +// }; +// +// In your source file: +// FooClass* FooClass::GetInstance() { +// return Singleton<FooClass>::get(); +// } +// +// And to call methods on FooClass: +// FooClass::GetInstance()->Bar(); +// +// NOTE: The method accessing Singleton<T>::get() has to be named as GetInstance +// and it is important that FooClass::GetInstance() is not inlined in the +// header. This makes sure that when source files from multiple targets include +// this header they don't end up with different copies of the inlined code +// creating multiple copies of the singleton. +// +// Singleton<> has no non-static members and doesn't need to actually be +// instantiated. +// +// This class is itself thread-safe. The underlying Type must of course be +// thread-safe if you want to use it concurrently. Two parameters may be tuned +// depending on the user's requirements. +// +// Glossary: +// RAE = kRegisterAtExit +// +// On every platform, if Traits::RAE is true, the singleton will be destroyed at +// process exit. More precisely it uses base::AtExitManager which requires an +// object of this type to be instantiated. AtExitManager mimics the semantics +// of atexit() such as LIFO order but under Windows is safer to call. For more +// information see at_exit.h. +// +// If Traits::RAE is false, the singleton will not be freed at process exit, +// thus the singleton will be leaked if it is ever accessed. Traits::RAE +// shouldn't be false unless absolutely necessary. Remember that the heap where +// the object is allocated may be destroyed by the CRT anyway. +// +// Caveats: +// (a) Every call to get(), operator->() and operator*() incurs some overhead +// (16ns on my P4/2.8GHz) to check whether the object has already been +// initialized. You may wish to cache the result of get(); it will not +// change. +// +// (b) Your factory function must never throw an exception. This class is not +// exception-safe. +// +template <typename Type, + typename Traits = DefaultSingletonTraits<Type>, + typename DifferentiatingType = Type> +class Singleton { + private: + // Classes using the Singleton<T> pattern should declare a GetInstance() + // method and call Singleton::get() from within that. + friend Type* Type::GetInstance(); + + // This class is safe to be constructed and copy-constructed since it has no + // member. + + // Return a pointer to the one true instance of the class. + static Type* get() { + if (!Traits::kAllowedToAccessOnNonjoinableThread) + base::ThreadRestrictions::AssertSingletonAllowed(); + + // Our AtomicWord doubles as a spinlock, where a value of + // kBeingCreatedMarker means the spinlock is being held for creation. + static const base::subtle::AtomicWord kBeingCreatedMarker = 1; + + base::subtle::AtomicWord value = base::subtle::NoBarrier_Load(&instance_); + if (value != 0 && value != kBeingCreatedMarker) { + // See the corresponding HAPPENS_BEFORE below. + ANNOTATE_HAPPENS_AFTER(&instance_); + return reinterpret_cast<Type*>(value); + } + + // Object isn't created yet, maybe we will get to create it, let's try... + if (base::subtle::Acquire_CompareAndSwap(&instance_, + 0, + kBeingCreatedMarker) == 0) { + // instance_ was NULL and is now kBeingCreatedMarker. Only one thread + // will ever get here. Threads might be spinning on us, and they will + // stop right after we do this store. + Type* newval = Traits::New(); + + // This annotation helps race detectors recognize correct lock-less + // synchronization between different threads calling get(). + // See the corresponding HAPPENS_AFTER below and above. + ANNOTATE_HAPPENS_BEFORE(&instance_); + base::subtle::Release_Store( + &instance_, reinterpret_cast<base::subtle::AtomicWord>(newval)); + + if (newval != NULL && Traits::kRegisterAtExit) + base::AtExitManager::RegisterCallback(OnExit, NULL); + + return newval; + } + + // We hit a race. Another thread beat us and either: + // - Has the object in BeingCreated state + // - Already has the object created... + // We know value != NULL. It could be kBeingCreatedMarker, or a valid ptr. + // Unless your constructor can be very time consuming, it is very unlikely + // to hit this race. When it does, we just spin and yield the thread until + // the object has been created. + while (true) { + value = base::subtle::NoBarrier_Load(&instance_); + if (value != kBeingCreatedMarker) + break; + base::PlatformThread::YieldCurrentThread(); + } + + // See the corresponding HAPPENS_BEFORE above. + ANNOTATE_HAPPENS_AFTER(&instance_); + return reinterpret_cast<Type*>(value); + } + + // Adapter function for use with AtExit(). This should be called single + // threaded, so don't use atomic operations. + // Calling OnExit while singleton is in use by other threads is a mistake. + static void OnExit(void* /*unused*/) { + // AtExit should only ever be register after the singleton instance was + // created. We should only ever get here with a valid instance_ pointer. + Traits::Delete( + reinterpret_cast<Type*>(base::subtle::NoBarrier_Load(&instance_))); + instance_ = 0; + } + static base::subtle::AtomicWord instance_; +}; + +template <typename Type, typename Traits, typename DifferentiatingType> +base::subtle::AtomicWord Singleton<Type, Traits, DifferentiatingType>:: + instance_ = 0; + +#endif // BASE_SINGLETON_H_ diff --git a/third_party/libphonenumber/cpp/src/default_logger.cc b/third_party/libphonenumber/cpp/src/default_logger.cc new file mode 100644 index 0000000..11eb59f --- /dev/null +++ b/third_party/libphonenumber/cpp/src/default_logger.cc @@ -0,0 +1,63 @@ +// Copyright (C) 2011 Google Inc. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +// Author: Philippe Liard + +#include <iostream> + +#include "default_logger.h" + +using std::cerr; +using std::cout; +using std::endl; + +namespace i18n { +namespace phonenumbers { + +DefaultLogger::DefaultLogger(LogLevel level) : level_(level) {} + +DefaultLogger::~DefaultLogger() {} + +void DefaultLogger::Fatal(const string& msg) const { + if (level_ >= LOG_FATAL) { + cerr << "FATAL libphonenumber " << msg << endl; + } +} + +void DefaultLogger::Error(const string& msg) const { + if (level_ >= LOG_ERROR) { + cerr << "ERROR libphonenumber " << msg << endl; + } +} + +void DefaultLogger::Warning(const string& msg) const { + if (level_ >= LOG_WARNING) { + cerr << "WARNING libphonenumber " << msg << endl; + } +} + +void DefaultLogger::Info(const string& msg) const { + if (level_ >= LOG_INFO) { + cout << "INFO libphonenumber " << msg << endl; + } +} + +void DefaultLogger::Debug(const string& msg) const { + if (level_ >= LOG_DEBUG) { + cout << "DEBUG libphonenumber " << msg << endl; + } +} + +} // namespace phonenumbers +} // namespace i18n diff --git a/third_party/libphonenumber/cpp/src/default_logger.h b/third_party/libphonenumber/cpp/src/default_logger.h new file mode 100644 index 0000000..d1ebc1f --- /dev/null +++ b/third_party/libphonenumber/cpp/src/default_logger.h @@ -0,0 +1,56 @@ +// Copyright (C) 2011 Google Inc. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +// Author: Philippe Liard + +#ifndef I18N_PHONENUMBERS_DEFAULT_LOGGER_H_ +#define I18N_PHONENUMBERS_DEFAULT_LOGGER_H_ + +#include "logger_adapter.h" + +namespace i18n { +namespace phonenumbers { + +enum LogLevel { + LOG_FATAL, + LOG_ERROR, + LOG_WARNING, + LOG_INFO, + LOG_DEBUG, +}; + +class DefaultLogger : public LoggerAdapter { + public: + virtual ~DefaultLogger(); + + DefaultLogger(LogLevel level = LOG_WARNING); + + virtual void Fatal(const string& msg) const; + + virtual void Error(const string& msg) const; + + virtual void Warning(const string& msg) const; + + virtual void Info(const string& msg) const; + + virtual void Debug(const string& msg) const; + + private: + LogLevel level_; +}; + +} // namespace phonenumbers +} // namespace i18n + +# endif // I18N_PHONENUMBERS_DEFAULT_LOGGER_H_ diff --git a/third_party/libphonenumber/cpp/src/logger_adapter.cc b/third_party/libphonenumber/cpp/src/logger_adapter.cc new file mode 100644 index 0000000..edfaa04 --- /dev/null +++ b/third_party/libphonenumber/cpp/src/logger_adapter.cc @@ -0,0 +1,25 @@ +// Copyright (C) 2011 Google Inc. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +// Author: Philippe Liard + +# include "logger_adapter.h" + +namespace i18n { +namespace phonenumbers { + +LoggerAdapter::~LoggerAdapter() {} + +} // namespace phonenumbers +} // namespace i18n diff --git a/third_party/libphonenumber/cpp/src/logger_adapter.h b/third_party/libphonenumber/cpp/src/logger_adapter.h new file mode 100644 index 0000000..37122bc --- /dev/null +++ b/third_party/libphonenumber/cpp/src/logger_adapter.h @@ -0,0 +1,48 @@ +// Copyright (C) 2011 Google Inc. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +// Author: Philippe Liard + +#ifndef I18N_PHONENUMBERS_LOGGER_ADAPTER_H_ +#define I18N_PHONENUMBERS_LOGGER_ADAPTER_H_ + +#include <string> + +using std::string; + +namespace i18n { +namespace phonenumbers { + +// Implement this 'interface' to override the way logging is handled +// in the library. +class LoggerAdapter { + public: + virtual ~LoggerAdapter(); + + // Logging methods + virtual void Fatal(const string& msg) const = 0; + + virtual void Error(const string& msg) const = 0; + + virtual void Warning(const string& msg) const = 0; + + virtual void Info(const string& msg) const = 0; + + virtual void Debug(const string& msg) const = 0; +}; + +} // namespace phonenumbers +} // namespace i18n + +#endif // I18N_PHONENUMBERS_LOGGER_ADAPTER_H_ diff --git a/third_party/libphonenumber/cpp/src/metadata.cc b/third_party/libphonenumber/cpp/src/metadata.cc new file mode 100644 index 0000000..85a38ed --- /dev/null +++ b/third_party/libphonenumber/cpp/src/metadata.cc @@ -0,0 +1,26 @@ +/* + * Copyright (C) 2011 Google Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +#include "metadata.h" + +static const unsigned char metadata_data[] = { 0x0A, 0xAC, 0x01, 0x0A, 0x14, 0x12, 0x0B, 0x5B, 0x32, 0x2D, 0x34, 0x36, 0x5D, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x12, 0x2C, 0x12, 0x1D, 0x28, 0x3F, 0x3A, 0x33, 0x5B, 0x30, 0x2D, 0x35, 0x5D, 0x7C, 0x34, 0x5B, 0x34, 0x2D, 0x36, 0x5D, 0x7C, 0x5B, 0x32, 0x36, 0x5D, 0x5C, 0x64, 0x29, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x32, 0x04, 0x36, 0x38, 0x38, 0x39, 0x1A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x22, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x2A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x41, 0x43, 0x50, 0xF7, 0x01, 0x5A, 0x02, 0x30, 0x30, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xA8, 0x02, 0x0A, 0x1F, 0x12, 0x14, 0x28, 0x3F, 0x3A, 0x5B, 0x33, 0x34, 0x36, 0x2D, 0x39, 0x5D, 0x7C, 0x31, 0x38, 0x30, 0x29, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x36, 0x2C, 0x38, 0x7D, 0x12, 0x1A, 0x12, 0x09, 0x5B, 0x37, 0x38, 0x5D, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x32, 0x06, 0x37, 0x31, 0x32, 0x33, 0x34, 0x35, 0x1A, 0x1B, 0x12, 0x0A, 0x5B, 0x33, 0x34, 0x36, 0x5D, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x32, 0x06, 0x33, 0x31, 0x32, 0x33, 0x34, 0x35, 0x22, 0x1F, 0x12, 0x0C, 0x31, 0x38, 0x30, 0x5B, 0x30, 0x32, 0x5D, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x31, 0x38, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x2A, 0x17, 0x12, 0x06, 0x39, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x32, 0x06, 0x39, 0x31, 0x32, 0x33, 0x34, 0x35, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x41, 0x44, 0x50, 0xF8, 0x02, 0x5A, 0x02, 0x30, 0x30, 0x9A, 0x01, 0x24, 0x0A, 0x0E, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x1A, 0x07, 0x5B, 0x33, 0x34, 0x36, 0x2D, 0x39, 0x5D, 0x22, 0x00, 0x2A, 0x00, 0x9A, 0x01, 0x20, 0x0A, 0x10, 0x28, 0x31, 0x38, 0x30, 0x5B, 0x30, 0x32, 0x5D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x1A, 0x01, 0x31, 0x22, 0x00, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xF6, 0x03, 0x0A, 0x24, 0x12, 0x18, 0x5B, 0x32, 0x2D, 0x37, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x38, 0x7D, 0x7C, 0x38, 0x30, 0x30, 0x5C, 0x64, 0x7B, 0x32, 0x2C, 0x39, 0x7D, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x35, 0x2C, 0x31, 0x32, 0x7D, 0x12, 0x35, 0x12, 0x20, 0x28, 0x3F, 0x3A, 0x5B, 0x32, 0x2D, 0x34, 0x36, 0x37, 0x39, 0x5D, 0x5B, 0x32, 0x2D, 0x38, 0x5D, 0x5C, 0x64, 0x7C, 0x36, 0x30, 0x30, 0x5B, 0x32, 0x35, 0x5D, 0x29, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x39, 0x7D, 0x32, 0x08, 0x32, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x1A, 0x1F, 0x12, 0x0B, 0x35, 0x5B, 0x30, 0x35, 0x36, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x35, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x22, 0x2A, 0x12, 0x13, 0x34, 0x30, 0x30, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x7C, 0x38, 0x30, 0x30, 0x5C, 0x64, 0x7B, 0x32, 0x2C, 0x39, 0x7D, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x35, 0x2C, 0x31, 0x32, 0x7D, 0x32, 0x09, 0x38, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x2A, 0x20, 0x12, 0x0C, 0x39, 0x30, 0x30, 0x5B, 0x30, 0x32, 0x5D, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x39, 0x30, 0x30, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x32, 0x20, 0x12, 0x0C, 0x37, 0x30, 0x30, 0x5B, 0x30, 0x35, 0x5D, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x37, 0x30, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x41, 0x45, 0x50, 0xCB, 0x07, 0x5A, 0x02, 0x30, 0x30, 0x62, 0x01, 0x30, 0x7A, 0x01, 0x30, 0x9A, 0x01, 0x3A, 0x0A, 0x18, 0x28, 0x5B, 0x32, 0x2D, 0x34, 0x36, 0x37, 0x39, 0x5D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x0D, 0x5B, 0x32, 0x2D, 0x34, 0x36, 0x37, 0x39, 0x5D, 0x5B, 0x32, 0x2D, 0x38, 0x5D, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x2C, 0x0A, 0x16, 0x28, 0x35, 0x5B, 0x30, 0x35, 0x36, 0x5D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x01, 0x35, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x30, 0x0A, 0x15, 0x28, 0x5B, 0x34, 0x36, 0x37, 0x39, 0x5D, 0x30, 0x30, 0x29, 0x28, 0x5C, 0x64, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x07, 0x5B, 0x34, 0x36, 0x37, 0x39, 0x5D, 0x30, 0x22, 0x02, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x20, 0x0A, 0x0E, 0x28, 0x38, 0x30, 0x30, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x2C, 0x39, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x1A, 0x01, 0x38, 0x22, 0x02, 0x24, 0x31, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0x8A, 0x02, 0x0A, 0x15, 0x12, 0x0A, 0x5B, 0x32, 0x2D, 0x37, 0x5D, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x39, 0x7D, 0x12, 0x3E, 0x12, 0x28, 0x28, 0x3F, 0x3A, 0x5B, 0x32, 0x35, 0x5D, 0x5B, 0x30, 0x2D, 0x38, 0x5D, 0x7C, 0x5B, 0x33, 0x34, 0x5D, 0x5B, 0x30, 0x2D, 0x34, 0x5D, 0x7C, 0x36, 0x5B, 0x30, 0x2D, 0x35, 0x5D, 0x29, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x39, 0x7D, 0x32, 0x09, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x30, 0x1A, 0x21, 0x12, 0x0D, 0x37, 0x5B, 0x30, 0x35, 0x37, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x37, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x22, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x2A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x41, 0x46, 0x50, 0x5D, 0x5A, 0x02, 0x30, 0x30, 0x62, 0x01, 0x30, 0x7A, 0x01, 0x30, 0x9A, 0x01, 0x2A, 0x0A, 0x17, 0x28, 0x5B, 0x32, 0x2D, 0x37, 0x5D, 0x5C, 0x64, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xB9, 0x03, 0x0A, 0x1E, 0x12, 0x0B, 0x5B, 0x32, 0x35, 0x38, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x1A, 0x0F, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x28, 0x3F, 0x3A, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x3F, 0x12, 0x42, 0x12, 0x23, 0x32, 0x36, 0x38, 0x28, 0x3F, 0x3A, 0x34, 0x28, 0x3F, 0x3A, 0x36, 0x5B, 0x30, 0x2D, 0x33, 0x38, 0x5D, 0x7C, 0x38, 0x34, 0x29, 0x7C, 0x35, 0x36, 0x5B, 0x30, 0x2D, 0x32, 0x5D, 0x29, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x0F, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x28, 0x3F, 0x3A, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x3F, 0x32, 0x0A, 0x32, 0x36, 0x38, 0x34, 0x36, 0x30, 0x31, 0x32, 0x33, 0x34, 0x1A, 0x46, 0x12, 0x30, 0x32, 0x36, 0x38, 0x28, 0x3F, 0x3A, 0x34, 0x36, 0x34, 0x7C, 0x37, 0x28, 0x3F, 0x3A, 0x32, 0x5B, 0x30, 0x2D, 0x39, 0x5D, 0x7C, 0x36, 0x34, 0x7C, 0x37, 0x5B, 0x30, 0x2D, 0x36, 0x38, 0x39, 0x5D, 0x7C, 0x38, 0x5B, 0x30, 0x32, 0x2D, 0x36, 0x38, 0x5D, 0x29, 0x29, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x32, 0x36, 0x38, 0x34, 0x36, 0x34, 0x31, 0x32, 0x33, 0x34, 0x22, 0x33, 0x12, 0x1D, 0x38, 0x28, 0x3F, 0x3A, 0x30, 0x30, 0x7C, 0x35, 0x35, 0x7C, 0x36, 0x36, 0x7C, 0x37, 0x37, 0x7C, 0x38, 0x38, 0x29, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x38, 0x30, 0x30, 0x32, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x2A, 0x23, 0x12, 0x0D, 0x39, 0x30, 0x30, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x39, 0x30, 0x30, 0x32, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x2D, 0x12, 0x17, 0x35, 0x28, 0x3F, 0x3A, 0x30, 0x30, 0x7C, 0x33, 0x33, 0x7C, 0x34, 0x34, 0x29, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x35, 0x30, 0x30, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x42, 0x24, 0x12, 0x0E, 0x32, 0x36, 0x38, 0x34, 0x38, 0x5B, 0x30, 0x31, 0x5D, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x32, 0x36, 0x38, 0x34, 0x38, 0x30, 0x31, 0x32, 0x33, 0x34, 0x4A, 0x02, 0x41, 0x47, 0x50, 0x01, 0x5A, 0x03, 0x30, 0x31, 0x31, 0x62, 0x01, 0x31, 0x7A, 0x01, 0x31, 0xAA, 0x01, 0x24, 0x12, 0x0E, 0x32, 0x36, 0x38, 0x34, 0x30, 0x5B, 0x36, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x32, 0x36, 0x38, 0x34, 0x30, 0x36, 0x31, 0x32, 0x33, 0x34, 0xBA, 0x01, 0x03, 0x32, 0x36, 0x38, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xF7, 0x02, 0x0A, 0x1E, 0x12, 0x0B, 0x5B, 0x32, 0x35, 0x38, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x1A, 0x0F, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x28, 0x3F, 0x3A, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x3F, 0x12, 0x37, 0x12, 0x18, 0x32, 0x36, 0x34, 0x34, 0x28, 0x3F, 0x3A, 0x36, 0x5B, 0x31, 0x32, 0x5D, 0x7C, 0x39, 0x5B, 0x37, 0x38, 0x5D, 0x29, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x0F, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x28, 0x3F, 0x3A, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x3F, 0x32, 0x0A, 0x32, 0x36, 0x34, 0x34, 0x36, 0x31, 0x32, 0x33, 0x34, 0x35, 0x1A, 0x47, 0x12, 0x31, 0x32, 0x36, 0x34, 0x28, 0x3F, 0x3A, 0x32, 0x33, 0x35, 0x7C, 0x34, 0x37, 0x36, 0x7C, 0x35, 0x28, 0x3F, 0x3A, 0x33, 0x5B, 0x36, 0x2D, 0x39, 0x5D, 0x7C, 0x38, 0x5B, 0x31, 0x2D, 0x34, 0x5D, 0x29, 0x7C, 0x37, 0x28, 0x3F, 0x3A, 0x32, 0x39, 0x7C, 0x37, 0x32, 0x29, 0x29, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x32, 0x36, 0x34, 0x32, 0x33, 0x35, 0x31, 0x32, 0x33, 0x34, 0x22, 0x33, 0x12, 0x1D, 0x38, 0x28, 0x3F, 0x3A, 0x30, 0x30, 0x7C, 0x35, 0x35, 0x7C, 0x36, 0x36, 0x7C, 0x37, 0x37, 0x7C, 0x38, 0x38, 0x29, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x38, 0x30, 0x30, 0x32, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x2A, 0x23, 0x12, 0x0D, 0x39, 0x30, 0x30, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x39, 0x30, 0x30, 0x32, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x2D, 0x12, 0x17, 0x35, 0x28, 0x3F, 0x3A, 0x30, 0x30, 0x7C, 0x33, 0x33, 0x7C, 0x34, 0x34, 0x29, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x35, 0x30, 0x30, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x41, 0x49, 0x50, 0x01, 0x5A, 0x03, 0x30, 0x31, 0x31, 0x62, 0x01, 0x31, 0x7A, 0x01, 0x31, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xBA, 0x01, 0x03, 0x32, 0x36, 0x34, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0x87, 0x05, 0x0A, 0x2D, 0x12, 0x22, 0x5B, 0x32, 0x2D, 0x35, 0x37, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x7C, 0x36, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x7C, 0x38, 0x5C, 0x64, 0x7B, 0x35, 0x2C, 0x37, 0x7D, 0x7C, 0x39, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x35, 0x2C, 0x39, 0x7D, 0x12, 0xAE, 0x01, 0x12, 0x98, 0x01, 0x28, 0x3F, 0x3A, 0x32, 0x28, 0x3F, 0x3A, 0x5B, 0x31, 0x36, 0x38, 0x5D, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x7C, 0x5B, 0x32, 0x34, 0x37, 0x5D, 0x5C, 0x64, 0x7C, 0x39, 0x5B, 0x31, 0x2D, 0x37, 0x5D, 0x29, 0x7C, 0x33, 0x28, 0x3F, 0x3A, 0x31, 0x5B, 0x31, 0x2D, 0x33, 0x5D, 0x7C, 0x5B, 0x32, 0x2D, 0x36, 0x5D, 0x5C, 0x64, 0x7C, 0x5B, 0x37, 0x39, 0x5D, 0x5B, 0x31, 0x2D, 0x38, 0x5D, 0x7C, 0x38, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x29, 0x7C, 0x34, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x7C, 0x35, 0x28, 0x3F, 0x3A, 0x31, 0x5B, 0x31, 0x2D, 0x34, 0x5D, 0x7C, 0x5B, 0x32, 0x2D, 0x35, 0x37, 0x38, 0x5D, 0x5C, 0x64, 0x7C, 0x36, 0x5B, 0x31, 0x2D, 0x35, 0x5D, 0x7C, 0x39, 0x5B, 0x31, 0x2D, 0x37, 0x5D, 0x29, 0x7C, 0x38, 0x28, 0x3F, 0x3A, 0x5B, 0x31, 0x39, 0x5D, 0x5B, 0x31, 0x2D, 0x35, 0x5D, 0x7C, 0x5B, 0x32, 0x2D, 0x36, 0x5D, 0x5C, 0x64, 0x7C, 0x5B, 0x37, 0x38, 0x5D, 0x5B, 0x31, 0x2D, 0x37, 0x5D, 0x29, 0x29, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x35, 0x2C, 0x38, 0x7D, 0x32, 0x08, 0x32, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x1A, 0x1F, 0x12, 0x0B, 0x36, 0x5B, 0x36, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x36, 0x36, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x22, 0x1A, 0x12, 0x08, 0x38, 0x30, 0x30, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x32, 0x07, 0x38, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x2A, 0x19, 0x12, 0x08, 0x39, 0x30, 0x30, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x32, 0x06, 0x39, 0x30, 0x30, 0x31, 0x32, 0x33, 0x32, 0x19, 0x12, 0x08, 0x38, 0x30, 0x38, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x32, 0x06, 0x38, 0x30, 0x38, 0x31, 0x32, 0x33, 0x3A, 0x1B, 0x12, 0x08, 0x37, 0x30, 0x30, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x37, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x41, 0x4C, 0x50, 0xE3, 0x02, 0x5A, 0x02, 0x30, 0x30, 0x62, 0x01, 0x30, 0x7A, 0x01, 0x30, 0x9A, 0x01, 0x2C, 0x0A, 0x11, 0x28, 0x34, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x06, 0x34, 0x5B, 0x30, 0x2D, 0x36, 0x5D, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x2C, 0x0A, 0x16, 0x28, 0x36, 0x5B, 0x36, 0x2D, 0x39, 0x5D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x01, 0x36, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x3C, 0x0A, 0x15, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x12, 0x5B, 0x32, 0x33, 0x35, 0x38, 0x5D, 0x5B, 0x32, 0x2D, 0x35, 0x5D, 0x7C, 0x34, 0x5B, 0x37, 0x2D, 0x39, 0x5D, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x3B, 0x0A, 0x10, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x2C, 0x35, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x1A, 0x19, 0x5B, 0x32, 0x33, 0x35, 0x5D, 0x5B, 0x31, 0x36, 0x2D, 0x39, 0x5D, 0x7C, 0x38, 0x5B, 0x30, 0x31, 0x36, 0x2D, 0x39, 0x5D, 0x7C, 0x5B, 0x37, 0x39, 0x5D, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0x88, 0x04, 0x0A, 0x18, 0x12, 0x0D, 0x5B, 0x31, 0x2D, 0x33, 0x36, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x35, 0x2C, 0x38, 0x7D, 0x12, 0x5A, 0x12, 0x45, 0x28, 0x3F, 0x3A, 0x31, 0x30, 0x5C, 0x64, 0x7C, 0x32, 0x28, 0x3F, 0x3A, 0x32, 0x5B, 0x32, 0x2D, 0x34, 0x36, 0x5D, 0x7C, 0x33, 0x5B, 0x31, 0x2D, 0x38, 0x5D, 0x7C, 0x34, 0x5B, 0x32, 0x2D, 0x36, 0x39, 0x5D, 0x7C, 0x35, 0x5B, 0x32, 0x2D, 0x37, 0x5D, 0x7C, 0x36, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x7C, 0x38, 0x5B, 0x31, 0x2D, 0x37, 0x5D, 0x29, 0x7C, 0x33, 0x5B, 0x31, 0x32, 0x5D, 0x32, 0x29, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x35, 0x2C, 0x38, 0x7D, 0x32, 0x08, 0x31, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x1A, 0x28, 0x12, 0x15, 0x28, 0x3F, 0x3A, 0x37, 0x37, 0x7C, 0x39, 0x5B, 0x31, 0x2D, 0x34, 0x36, 0x2D, 0x39, 0x5D, 0x29, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x37, 0x37, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x22, 0x1B, 0x12, 0x08, 0x38, 0x30, 0x30, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x38, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x2A, 0x1F, 0x12, 0x0C, 0x39, 0x30, 0x5B, 0x30, 0x31, 0x36, 0x5D, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x39, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x32, 0x1F, 0x12, 0x0C, 0x38, 0x30, 0x5B, 0x31, 0x2D, 0x34, 0x5D, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x38, 0x30, 0x31, 0x31, 0x32, 0x33, 0x34, 0x35, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x1C, 0x12, 0x09, 0x36, 0x30, 0x32, 0x37, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x36, 0x30, 0x32, 0x37, 0x31, 0x32, 0x33, 0x34, 0x4A, 0x02, 0x41, 0x4D, 0x50, 0xF6, 0x02, 0x5A, 0x02, 0x30, 0x30, 0x62, 0x01, 0x30, 0x7A, 0x01, 0x30, 0x9A, 0x01, 0x2D, 0x0A, 0x0E, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x1A, 0x0B, 0x5B, 0x31, 0x37, 0x5D, 0x7C, 0x39, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x22, 0x05, 0x28, 0x30, 0x24, 0x31, 0x29, 0x2A, 0x00, 0x9A, 0x01, 0x21, 0x0A, 0x0E, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x1A, 0x01, 0x36, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x26, 0x0A, 0x0E, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x1A, 0x04, 0x5B, 0x32, 0x33, 0x5D, 0x22, 0x05, 0x28, 0x30, 0x24, 0x31, 0x29, 0x2A, 0x00, 0x9A, 0x01, 0x2F, 0x0A, 0x15, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x04, 0x38, 0x7C, 0x39, 0x30, 0x22, 0x04, 0x30, 0x20, 0x24, 0x31, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xF6, 0x03, 0x0A, 0x19, 0x12, 0x0E, 0x5B, 0x31, 0x33, 0x2D, 0x37, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x2C, 0x37, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x38, 0x7D, 0x12, 0x83, 0x01, 0x12, 0x6F, 0x28, 0x3F, 0x3A, 0x33, 0x31, 0x38, 0x7C, 0x35, 0x28, 0x3F, 0x3A, 0x32, 0x35, 0x7C, 0x34, 0x5C, 0x64, 0x7C, 0x38, 0x5B, 0x32, 0x33, 0x39, 0x5D, 0x29, 0x7C, 0x37, 0x28, 0x3F, 0x3A, 0x31, 0x5B, 0x35, 0x37, 0x38, 0x5D, 0x7C, 0x35, 0x30, 0x29, 0x7C, 0x39, 0x28, 0x3F, 0x3A, 0x5B, 0x34, 0x38, 0x5D, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x7C, 0x35, 0x30, 0x5C, 0x64, 0x7C, 0x37, 0x28, 0x3F, 0x3A, 0x32, 0x5B, 0x30, 0x2D, 0x32, 0x5D, 0x7C, 0x5B, 0x33, 0x34, 0x5D, 0x5C, 0x64, 0x7C, 0x36, 0x5B, 0x33, 0x35, 0x2D, 0x37, 0x5D, 0x7C, 0x37, 0x37, 0x29, 0x29, 0x29, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x7C, 0x34, 0x31, 0x36, 0x5B, 0x30, 0x32, 0x33, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x38, 0x7D, 0x32, 0x07, 0x37, 0x31, 0x35, 0x31, 0x32, 0x33, 0x34, 0x1A, 0x8D, 0x01, 0x12, 0x79, 0x28, 0x3F, 0x3A, 0x33, 0x31, 0x38, 0x7C, 0x35, 0x28, 0x3F, 0x3A, 0x31, 0x5B, 0x30, 0x31, 0x5D, 0x7C, 0x32, 0x5B, 0x30, 0x2D, 0x37, 0x5D, 0x7C, 0x35, 0x5C, 0x64, 0x7C, 0x38, 0x5B, 0x30, 0x31, 0x36, 0x2D, 0x38, 0x5D, 0x29, 0x7C, 0x37, 0x28, 0x3F, 0x3A, 0x30, 0x5B, 0x30, 0x31, 0x5D, 0x7C, 0x5B, 0x38, 0x39, 0x5D, 0x5C, 0x64, 0x29, 0x7C, 0x39, 0x28, 0x3F, 0x3A, 0x35, 0x28, 0x3F, 0x3A, 0x5B, 0x31, 0x32, 0x34, 0x36, 0x5D, 0x5C, 0x64, 0x7C, 0x33, 0x5B, 0x30, 0x31, 0x5D, 0x29, 0x7C, 0x36, 0x28, 0x3F, 0x3A, 0x5B, 0x31, 0x36, 0x37, 0x39, 0x5D, 0x5C, 0x64, 0x7C, 0x33, 0x5B, 0x30, 0x31, 0x5D, 0x29, 0x29, 0x29, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x7C, 0x34, 0x31, 0x36, 0x5B, 0x31, 0x35, 0x2D, 0x38, 0x5D, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x38, 0x7D, 0x32, 0x07, 0x33, 0x31, 0x38, 0x31, 0x32, 0x33, 0x34, 0x22, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x2A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x32, 0x22, 0x12, 0x0E, 0x28, 0x3F, 0x3A, 0x31, 0x30, 0x7C, 0x36, 0x39, 0x29, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x38, 0x7D, 0x32, 0x07, 0x31, 0x30, 0x31, 0x31, 0x32, 0x33, 0x34, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x41, 0x4E, 0x50, 0xD7, 0x04, 0x5A, 0x02, 0x30, 0x30, 0x9A, 0x01, 0x23, 0x0A, 0x0E, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x1A, 0x06, 0x5B, 0x31, 0x33, 0x2D, 0x37, 0x5D, 0x22, 0x00, 0x2A, 0x00, 0x9A, 0x01, 0x24, 0x0A, 0x11, 0x28, 0x39, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x01, 0x39, 0x22, 0x00, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xEE, 0x01, 0x0A, 0x12, 0x12, 0x09, 0x5B, 0x32, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x12, 0x31, 0x12, 0x1D, 0x32, 0x5C, 0x64, 0x28, 0x3F, 0x3A, 0x5B, 0x32, 0x36, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7C, 0x5C, 0x64, 0x5B, 0x32, 0x36, 0x2D, 0x39, 0x5D, 0x29, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x32, 0x32, 0x32, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x1A, 0x1F, 0x12, 0x0B, 0x39, 0x5B, 0x31, 0x2D, 0x33, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x39, 0x32, 0x33, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x22, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x2A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x41, 0x4F, 0x50, 0xF4, 0x01, 0x5A, 0x02, 0x30, 0x30, 0x9A, 0x01, 0x25, 0x0A, 0x15, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x22, 0x00, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xE1, 0x0F, 0x0A, 0x19, 0x12, 0x0D, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x39, 0x2C, 0x31, 0x31, 0x7D, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x36, 0x2C, 0x31, 0x32, 0x7D, 0x12, 0x22, 0x12, 0x0A, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x36, 0x2C, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x31, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x1A, 0x80, 0x01, 0x12, 0x67, 0x39, 0x28, 0x3F, 0x3A, 0x31, 0x31, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x7C, 0x28, 0x3F, 0x3A, 0x32, 0x28, 0x3F, 0x3A, 0x32, 0x5B, 0x30, 0x31, 0x33, 0x5D, 0x7C, 0x33, 0x37, 0x7C, 0x36, 0x5B, 0x31, 0x34, 0x5D, 0x7C, 0x39, 0x5B, 0x31, 0x37, 0x39, 0x5D, 0x29, 0x7C, 0x33, 0x28, 0x3F, 0x3A, 0x34, 0x5B, 0x31, 0x32, 0x33, 0x35, 0x5D, 0x7C, 0x35, 0x5B, 0x31, 0x33, 0x38, 0x5D, 0x7C, 0x38, 0x5B, 0x31, 0x35, 0x37, 0x38, 0x5D, 0x29, 0x29, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x7C, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x29, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x36, 0x2C, 0x31, 0x32, 0x7D, 0x32, 0x0B, 0x39, 0x31, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x22, 0x1D, 0x12, 0x07, 0x38, 0x30, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x38, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x2A, 0x26, 0x12, 0x10, 0x36, 0x28, 0x3F, 0x3A, 0x30, 0x5C, 0x64, 0x7C, 0x31, 0x30, 0x29, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x36, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x41, 0x52, 0x50, 0x36, 0x5A, 0x02, 0x30, 0x30, 0x62, 0x01, 0x30, 0x7A, 0x95, 0x04, 0x30, 0x28, 0x3F, 0x3A, 0x28, 0x31, 0x31, 0x7C, 0x32, 0x28, 0x3F, 0x3A, 0x32, 0x28, 0x3F, 0x3A, 0x30, 0x32, 0x3F, 0x7C, 0x5B, 0x31, 0x33, 0x5D, 0x7C, 0x32, 0x5B, 0x31, 0x33, 0x2D, 0x37, 0x39, 0x5D, 0x7C, 0x34, 0x5B, 0x31, 0x2D, 0x36, 0x5D, 0x7C, 0x35, 0x5B, 0x32, 0x34, 0x35, 0x37, 0x5D, 0x7C, 0x36, 0x5B, 0x31, 0x32, 0x34, 0x2D, 0x38, 0x5D, 0x7C, 0x37, 0x5B, 0x31, 0x2D, 0x34, 0x5D, 0x7C, 0x38, 0x5B, 0x31, 0x33, 0x2D, 0x36, 0x5D, 0x7C, 0x39, 0x5B, 0x31, 0x2D, 0x33, 0x36, 0x37, 0x5D, 0x29, 0x7C, 0x33, 0x28, 0x3F, 0x3A, 0x5B, 0x30, 0x36, 0x5D, 0x32, 0x7C, 0x31, 0x5B, 0x34, 0x36, 0x37, 0x5D, 0x7C, 0x32, 0x5B, 0x30, 0x32, 0x2D, 0x36, 0x5D, 0x7C, 0x33, 0x5B, 0x31, 0x33, 0x2D, 0x38, 0x5D, 0x7C, 0x5B, 0x34, 0x39, 0x5D, 0x5B, 0x32, 0x2D, 0x36, 0x5D, 0x7C, 0x35, 0x5B, 0x32, 0x2D, 0x38, 0x5D, 0x7C, 0x37, 0x29, 0x7C, 0x34, 0x37, 0x5B, 0x33, 0x2D, 0x35, 0x37, 0x38, 0x5D, 0x7C, 0x36, 0x28, 0x3F, 0x3A, 0x31, 0x7C, 0x32, 0x5B, 0x32, 0x2D, 0x37, 0x5D, 0x7C, 0x34, 0x5B, 0x36, 0x2D, 0x38, 0x5D, 0x3F, 0x7C, 0x35, 0x5B, 0x31, 0x32, 0x35, 0x2D, 0x38, 0x5D, 0x29, 0x7C, 0x39, 0x28, 0x3F, 0x3A, 0x30, 0x5B, 0x31, 0x2D, 0x33, 0x5D, 0x7C, 0x5B, 0x31, 0x39, 0x5D, 0x7C, 0x32, 0x5C, 0x64, 0x7C, 0x33, 0x5B, 0x31, 0x2D, 0x36, 0x5D, 0x7C, 0x34, 0x5B, 0x30, 0x2D, 0x32, 0x34, 0x2D, 0x36, 0x38, 0x5D, 0x7C, 0x35, 0x5B, 0x32, 0x2D, 0x34, 0x5D, 0x7C, 0x36, 0x5B, 0x32, 0x2D, 0x36, 0x5D, 0x7C, 0x37, 0x32, 0x3F, 0x7C, 0x38, 0x5B, 0x32, 0x33, 0x5D, 0x3F, 0x29, 0x29, 0x7C, 0x33, 0x28, 0x3F, 0x3A, 0x33, 0x28, 0x3F, 0x3A, 0x32, 0x5B, 0x37, 0x39, 0x5D, 0x7C, 0x38, 0x5B, 0x32, 0x35, 0x37, 0x38, 0x5D, 0x29, 0x7C, 0x34, 0x28, 0x3F, 0x3A, 0x30, 0x5B, 0x31, 0x32, 0x34, 0x2D, 0x39, 0x5D, 0x7C, 0x5B, 0x31, 0x32, 0x5D, 0x7C, 0x33, 0x5B, 0x35, 0x2D, 0x38, 0x5D, 0x3F, 0x7C, 0x34, 0x5B, 0x32, 0x34, 0x2D, 0x37, 0x5D, 0x7C, 0x35, 0x5B, 0x34, 0x2D, 0x36, 0x38, 0x5D, 0x3F, 0x7C, 0x36, 0x5C, 0x64, 0x7C, 0x37, 0x5B, 0x31, 0x32, 0x36, 0x5D, 0x7C, 0x38, 0x5B, 0x32, 0x33, 0x37, 0x2D, 0x39, 0x5D, 0x7C, 0x39, 0x5B, 0x31, 0x2D, 0x33, 0x36, 0x2D, 0x38, 0x5D, 0x29, 0x7C, 0x35, 0x28, 0x3F, 0x3A, 0x31, 0x7C, 0x32, 0x5B, 0x31, 0x32, 0x34, 0x35, 0x5D, 0x7C, 0x33, 0x5B, 0x32, 0x2D, 0x34, 0x5D, 0x3F, 0x7C, 0x34, 0x5B, 0x31, 0x2D, 0x34, 0x36, 0x2D, 0x39, 0x5D, 0x7C, 0x36, 0x5B, 0x32, 0x2D, 0x34, 0x5D, 0x7C, 0x37, 0x5B, 0x31, 0x2D, 0x36, 0x5D, 0x7C, 0x38, 0x5B, 0x32, 0x2D, 0x35, 0x5D, 0x3F, 0x29, 0x7C, 0x37, 0x28, 0x3F, 0x3A, 0x31, 0x5B, 0x31, 0x35, 0x2D, 0x38, 0x5D, 0x7C, 0x32, 0x5B, 0x31, 0x32, 0x35, 0x5D, 0x7C, 0x33, 0x5B, 0x31, 0x32, 0x34, 0x35, 0x5D, 0x7C, 0x34, 0x5B, 0x31, 0x33, 0x5D, 0x7C, 0x35, 0x5B, 0x31, 0x32, 0x34, 0x2D, 0x38, 0x5D, 0x7C, 0x37, 0x5B, 0x32, 0x2D, 0x35, 0x37, 0x5D, 0x7C, 0x38, 0x5B, 0x31, 0x2D, 0x33, 0x36, 0x5D, 0x29, 0x7C, 0x38, 0x28, 0x3F, 0x3A, 0x31, 0x7C, 0x32, 0x5B, 0x31, 0x32, 0x35, 0x2D, 0x37, 0x5D, 0x7C, 0x33, 0x5B, 0x32, 0x33, 0x35, 0x37, 0x38, 0x5D, 0x7C, 0x34, 0x5B, 0x31, 0x33, 0x2D, 0x36, 0x5D, 0x7C, 0x35, 0x5B, 0x34, 0x2D, 0x38, 0x5D, 0x3F, 0x7C, 0x36, 0x5B, 0x31, 0x2D, 0x33, 0x35, 0x37, 0x2D, 0x39, 0x5D, 0x7C, 0x37, 0x5B, 0x35, 0x2D, 0x38, 0x5D, 0x3F, 0x7C, 0x38, 0x5B, 0x34, 0x2D, 0x37, 0x5D, 0x3F, 0x7C, 0x39, 0x5B, 0x31, 0x32, 0x34, 0x5D, 0x29, 0x29, 0x29, 0x31, 0x35, 0x29, 0x3F, 0x82, 0x01, 0x03, 0x39, 0x24, 0x31, 0x9A, 0x01, 0x32, 0x0A, 0x19, 0x28, 0x5B, 0x36, 0x38, 0x5D, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x2D, 0x24, 0x32, 0x2D, 0x24, 0x33, 0x1A, 0x04, 0x5B, 0x36, 0x38, 0x5D, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x2D, 0x0A, 0x13, 0x39, 0x28, 0x31, 0x31, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x0B, 0x24, 0x31, 0x20, 0x31, 0x35, 0x2D, 0x24, 0x32, 0x2D, 0x24, 0x33, 0x1A, 0x02, 0x39, 0x31, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x7F, 0x0A, 0x16, 0x39, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x0B, 0x24, 0x31, 0x20, 0x31, 0x35, 0x2D, 0x24, 0x32, 0x2D, 0x24, 0x33, 0x1A, 0x13, 0x39, 0x28, 0x3F, 0x3A, 0x32, 0x5B, 0x32, 0x33, 0x36, 0x39, 0x5D, 0x7C, 0x33, 0x5B, 0x34, 0x35, 0x38, 0x5D, 0x29, 0x1A, 0x3C, 0x39, 0x28, 0x3F, 0x3A, 0x32, 0x28, 0x3F, 0x3A, 0x32, 0x5B, 0x30, 0x31, 0x33, 0x5D, 0x7C, 0x33, 0x37, 0x7C, 0x36, 0x5B, 0x31, 0x34, 0x5D, 0x7C, 0x39, 0x5B, 0x31, 0x37, 0x39, 0x5D, 0x29, 0x7C, 0x33, 0x28, 0x3F, 0x3A, 0x34, 0x5B, 0x31, 0x32, 0x33, 0x35, 0x5D, 0x7C, 0x35, 0x5B, 0x31, 0x33, 0x38, 0x5D, 0x7C, 0x38, 0x5B, 0x31, 0x35, 0x37, 0x38, 0x5D, 0x29, 0x29, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x9F, 0x01, 0x0A, 0x16, 0x39, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x0B, 0x24, 0x31, 0x20, 0x31, 0x35, 0x2D, 0x24, 0x32, 0x2D, 0x24, 0x33, 0x1A, 0x16, 0x39, 0x28, 0x3F, 0x3A, 0x32, 0x5B, 0x32, 0x2D, 0x34, 0x36, 0x39, 0x5D, 0x7C, 0x33, 0x5B, 0x33, 0x2D, 0x35, 0x37, 0x38, 0x5D, 0x29, 0x1A, 0x59, 0x39, 0x28, 0x3F, 0x3A, 0x32, 0x28, 0x3F, 0x3A, 0x32, 0x5B, 0x32, 0x34, 0x2D, 0x39, 0x5D, 0x7C, 0x33, 0x5B, 0x30, 0x2D, 0x36, 0x39, 0x5D, 0x7C, 0x34, 0x37, 0x7C, 0x36, 0x5B, 0x32, 0x35, 0x5D, 0x7C, 0x39, 0x5B, 0x30, 0x32, 0x2D, 0x36, 0x38, 0x5D, 0x29, 0x7C, 0x33, 0x28, 0x3F, 0x3A, 0x33, 0x5B, 0x32, 0x38, 0x5D, 0x7C, 0x34, 0x5B, 0x30, 0x34, 0x36, 0x2D, 0x39, 0x5D, 0x7C, 0x35, 0x5B, 0x32, 0x34, 0x36, 0x37, 0x5D, 0x7C, 0x37, 0x5B, 0x31, 0x2D, 0x35, 0x37, 0x38, 0x5D, 0x7C, 0x38, 0x5B, 0x32, 0x33, 0x34, 0x36, 0x39, 0x5D, 0x29, 0x29, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x28, 0x0A, 0x12, 0x28, 0x31, 0x31, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x2D, 0x24, 0x33, 0x1A, 0x01, 0x31, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x61, 0x0A, 0x15, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x2D, 0x24, 0x33, 0x1A, 0x37, 0x32, 0x28, 0x3F, 0x3A, 0x32, 0x5B, 0x30, 0x31, 0x33, 0x5D, 0x7C, 0x33, 0x37, 0x7C, 0x36, 0x5B, 0x31, 0x34, 0x5D, 0x7C, 0x39, 0x5B, 0x31, 0x37, 0x39, 0x5D, 0x29, 0x7C, 0x33, 0x28, 0x3F, 0x3A, 0x34, 0x5B, 0x31, 0x32, 0x33, 0x35, 0x5D, 0x7C, 0x35, 0x5B, 0x31, 0x33, 0x38, 0x5D, 0x7C, 0x38, 0x5B, 0x31, 0x35, 0x37, 0x38, 0x5D, 0x29, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x2E, 0x0A, 0x15, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x2D, 0x24, 0x33, 0x1A, 0x04, 0x5B, 0x32, 0x33, 0x5D, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0xA2, 0x01, 0x2D, 0x0A, 0x19, 0x28, 0x5B, 0x36, 0x38, 0x5D, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x2D, 0x24, 0x32, 0x2D, 0x24, 0x33, 0x1A, 0x04, 0x5B, 0x36, 0x38, 0x5D, 0x2A, 0x00, 0xA2, 0x01, 0x27, 0x0A, 0x13, 0x39, 0x28, 0x31, 0x31, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x0A, 0x39, 0x20, 0x24, 0x31, 0x20, 0x24, 0x32, 0x2D, 0x24, 0x33, 0x1A, 0x02, 0x39, 0x31, 0x2A, 0x00, 0xA2, 0x01, 0x79, 0x0A, 0x16, 0x39, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x0A, 0x39, 0x20, 0x24, 0x31, 0x20, 0x24, 0x32, 0x2D, 0x24, 0x33, 0x1A, 0x13, 0x39, 0x28, 0x3F, 0x3A, 0x32, 0x5B, 0x32, 0x33, 0x36, 0x39, 0x5D, 0x7C, 0x33, 0x5B, 0x34, 0x35, 0x38, 0x5D, 0x29, 0x1A, 0x3C, 0x39, 0x28, 0x3F, 0x3A, 0x32, 0x28, 0x3F, 0x3A, 0x32, 0x5B, 0x30, 0x31, 0x33, 0x5D, 0x7C, 0x33, 0x37, 0x7C, 0x36, 0x5B, 0x31, 0x34, 0x5D, 0x7C, 0x39, 0x5B, 0x31, 0x37, 0x39, 0x5D, 0x29, 0x7C, 0x33, 0x28, 0x3F, 0x3A, 0x34, 0x5B, 0x31, 0x32, 0x33, 0x35, 0x5D, 0x7C, 0x35, 0x5B, 0x31, 0x33, 0x38, 0x5D, 0x7C, 0x38, 0x5B, 0x31, 0x35, 0x37, 0x38, 0x5D, 0x29, 0x29, 0x2A, 0x00, 0xA2, 0x01, 0x99, 0x01, 0x0A, 0x16, 0x39, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x0A, 0x39, 0x20, 0x24, 0x31, 0x20, 0x24, 0x32, 0x2D, 0x24, 0x33, 0x1A, 0x16, 0x39, 0x28, 0x3F, 0x3A, 0x32, 0x5B, 0x32, 0x2D, 0x34, 0x36, 0x39, 0x5D, 0x7C, 0x33, 0x5B, 0x33, 0x2D, 0x35, 0x37, 0x38, 0x5D, 0x29, 0x1A, 0x59, 0x39, 0x28, 0x3F, 0x3A, 0x32, 0x28, 0x3F, 0x3A, 0x32, 0x5B, 0x32, 0x34, 0x2D, 0x39, 0x5D, 0x7C, 0x33, 0x5B, 0x30, 0x2D, 0x36, 0x39, 0x5D, 0x7C, 0x34, 0x37, 0x7C, 0x36, 0x5B, 0x32, 0x35, 0x5D, 0x7C, 0x39, 0x5B, 0x30, 0x32, 0x2D, 0x36, 0x38, 0x5D, 0x29, 0x7C, 0x33, 0x28, 0x3F, 0x3A, 0x33, 0x5B, 0x32, 0x38, 0x5D, 0x7C, 0x34, 0x5B, 0x30, 0x34, 0x36, 0x2D, 0x39, 0x5D, 0x7C, 0x35, 0x5B, 0x32, 0x34, 0x36, 0x37, 0x5D, 0x7C, 0x37, 0x5B, 0x31, 0x2D, 0x35, 0x37, 0x38, 0x5D, 0x7C, 0x38, 0x5B, 0x32, 0x33, 0x34, 0x36, 0x39, 0x5D, 0x29, 0x29, 0x2A, 0x00, 0xA2, 0x01, 0x23, 0x0A, 0x12, 0x28, 0x31, 0x31, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x2D, 0x24, 0x33, 0x1A, 0x01, 0x31, 0x2A, 0x00, 0xA2, 0x01, 0x5C, 0x0A, 0x15, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x2D, 0x24, 0x33, 0x1A, 0x37, 0x32, 0x28, 0x3F, 0x3A, 0x32, 0x5B, 0x30, 0x31, 0x33, 0x5D, 0x7C, 0x33, 0x37, 0x7C, 0x36, 0x5B, 0x31, 0x34, 0x5D, 0x7C, 0x39, 0x5B, 0x31, 0x37, 0x39, 0x5D, 0x29, 0x7C, 0x33, 0x28, 0x3F, 0x3A, 0x34, 0x5B, 0x31, 0x32, 0x33, 0x35, 0x5D, 0x7C, 0x35, 0x5B, 0x31, 0x33, 0x38, 0x5D, 0x7C, 0x38, 0x5B, 0x31, 0x35, 0x37, 0x38, 0x5D, 0x29, 0x2A, 0x00, 0xA2, 0x01, 0x29, 0x0A, 0x15, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x2D, 0x24, 0x33, 0x1A, 0x04, 0x5B, 0x32, 0x33, 0x5D, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xE5, 0x02, 0x0A, 0x1E, 0x12, 0x0B, 0x5B, 0x35, 0x36, 0x38, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x1A, 0x0F, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x28, 0x3F, 0x3A, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x3F, 0x12, 0x43, 0x12, 0x24, 0x36, 0x38, 0x34, 0x36, 0x28, 0x3F, 0x3A, 0x32, 0x32, 0x7C, 0x33, 0x33, 0x7C, 0x34, 0x34, 0x7C, 0x35, 0x35, 0x7C, 0x37, 0x37, 0x7C, 0x38, 0x38, 0x7C, 0x39, 0x5B, 0x31, 0x39, 0x5D, 0x29, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x0F, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x28, 0x3F, 0x3A, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x3F, 0x32, 0x0A, 0x36, 0x38, 0x34, 0x36, 0x32, 0x32, 0x31, 0x32, 0x33, 0x34, 0x1A, 0x29, 0x12, 0x13, 0x36, 0x38, 0x34, 0x28, 0x3F, 0x3A, 0x37, 0x33, 0x33, 0x7C, 0x32, 0x35, 0x38, 0x29, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x36, 0x38, 0x34, 0x37, 0x33, 0x33, 0x31, 0x32, 0x33, 0x34, 0x22, 0x33, 0x12, 0x1D, 0x38, 0x28, 0x3F, 0x3A, 0x30, 0x30, 0x7C, 0x35, 0x35, 0x7C, 0x36, 0x36, 0x7C, 0x37, 0x37, 0x7C, 0x38, 0x38, 0x29, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x38, 0x30, 0x30, 0x32, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x2A, 0x23, 0x12, 0x0D, 0x39, 0x30, 0x30, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x39, 0x30, 0x30, 0x32, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x2D, 0x12, 0x17, 0x35, 0x28, 0x3F, 0x3A, 0x30, 0x30, 0x7C, 0x33, 0x33, 0x7C, 0x34, 0x34, 0x29, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x35, 0x30, 0x30, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x41, 0x53, 0x50, 0x01, 0x5A, 0x03, 0x30, 0x31, 0x31, 0x62, 0x01, 0x31, 0x7A, 0x01, 0x31, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xBA, 0x01, 0x03, 0x36, 0x38, 0x34, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xC9, 0x07, 0x0A, 0x14, 0x12, 0x08, 0x5C, 0x64, 0x7B, 0x34, 0x2C, 0x31, 0x33, 0x7D, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x33, 0x2C, 0x31, 0x33, 0x7D, 0x12, 0xF3, 0x02, 0x12, 0xDA, 0x02, 0x31, 0x5C, 0x64, 0x7B, 0x33, 0x2C, 0x31, 0x32, 0x7D, 0x7C, 0x28, 0x3F, 0x3A, 0x32, 0x28, 0x3F, 0x3A, 0x31, 0x5B, 0x34, 0x36, 0x37, 0x5D, 0x7C, 0x32, 0x5B, 0x31, 0x33, 0x34, 0x2D, 0x38, 0x5D, 0x7C, 0x35, 0x5B, 0x32, 0x33, 0x35, 0x37, 0x5D, 0x7C, 0x36, 0x5B, 0x31, 0x2D, 0x34, 0x36, 0x2D, 0x38, 0x5D, 0x7C, 0x37, 0x5B, 0x31, 0x2D, 0x38, 0x5D, 0x7C, 0x38, 0x5B, 0x31, 0x32, 0x34, 0x2D, 0x37, 0x5D, 0x7C, 0x38, 0x5B, 0x31, 0x34, 0x35, 0x38, 0x5D, 0x29, 0x7C, 0x33, 0x28, 0x3F, 0x3A, 0x31, 0x5B, 0x31, 0x2D, 0x38, 0x5D, 0x7C, 0x33, 0x5B, 0x32, 0x33, 0x35, 0x36, 0x38, 0x5D, 0x7C, 0x34, 0x5B, 0x35, 0x2D, 0x37, 0x5D, 0x7C, 0x35, 0x5B, 0x31, 0x33, 0x37, 0x38, 0x5D, 0x7C, 0x36, 0x5B, 0x31, 0x2D, 0x33, 0x38, 0x5D, 0x7C, 0x38, 0x5B, 0x33, 0x2D, 0x36, 0x38, 0x5D, 0x29, 0x7C, 0x34, 0x28, 0x3F, 0x3A, 0x32, 0x5B, 0x31, 0x2D, 0x38, 0x5D, 0x7C, 0x33, 0x35, 0x7C, 0x36, 0x33, 0x7C, 0x37, 0x5B, 0x31, 0x33, 0x36, 0x38, 0x5D, 0x7C, 0x38, 0x5B, 0x32, 0x34, 0x35, 0x37, 0x5D, 0x29, 0x7C, 0x35, 0x28, 0x3F, 0x3A, 0x31, 0x5B, 0x32, 0x37, 0x5D, 0x7C, 0x32, 0x5B, 0x31, 0x2D, 0x38, 0x5D, 0x7C, 0x33, 0x5B, 0x33, 0x35, 0x37, 0x5D, 0x7C, 0x34, 0x5B, 0x31, 0x34, 0x37, 0x5D, 0x7C, 0x35, 0x5B, 0x31, 0x32, 0x35, 0x37, 0x38, 0x5D, 0x7C, 0x36, 0x5B, 0x33, 0x37, 0x5D, 0x29, 0x7C, 0x36, 0x28, 0x3F, 0x3A, 0x31, 0x33, 0x7C, 0x32, 0x5B, 0x31, 0x2D, 0x34, 0x37, 0x5D, 0x7C, 0x34, 0x5B, 0x31, 0x2D, 0x33, 0x35, 0x2D, 0x38, 0x5D, 0x7C, 0x35, 0x5B, 0x34, 0x36, 0x38, 0x5D, 0x7C, 0x36, 0x32, 0x29, 0x7C, 0x37, 0x28, 0x3F, 0x3A, 0x32, 0x5B, 0x31, 0x2D, 0x38, 0x5D, 0x7C, 0x33, 0x5B, 0x32, 0x35, 0x5D, 0x7C, 0x34, 0x5B, 0x31, 0x33, 0x34, 0x37, 0x38, 0x5D, 0x7C, 0x35, 0x5B, 0x36, 0x38, 0x5D, 0x7C, 0x36, 0x5B, 0x31, 0x36, 0x2D, 0x38, 0x5D, 0x7C, 0x37, 0x5B, 0x31, 0x2D, 0x36, 0x5D, 0x7C, 0x39, 0x5B, 0x34, 0x35, 0x5D, 0x29, 0x29, 0x5C, 0x64, 0x7B, 0x33, 0x2C, 0x31, 0x30, 0x7D, 0x7C, 0x35, 0x28, 0x3F, 0x3A, 0x30, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x7C, 0x5B, 0x37, 0x39, 0x5D, 0x5C, 0x64, 0x29, 0x5C, 0x64, 0x7B, 0x32, 0x2C, 0x31, 0x30, 0x7D, 0x7C, 0x37, 0x32, 0x30, 0x5C, 0x64, 0x7B, 0x36, 0x2C, 0x31, 0x30, 0x7D, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x33, 0x2C, 0x31, 0x33, 0x7D, 0x32, 0x0A, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x30, 0x1A, 0x41, 0x12, 0x2A, 0x36, 0x28, 0x3F, 0x3A, 0x34, 0x34, 0x7C, 0x35, 0x5B, 0x30, 0x2D, 0x33, 0x35, 0x37, 0x39, 0x5D, 0x7C, 0x36, 0x5B, 0x30, 0x31, 0x33, 0x2D, 0x39, 0x5D, 0x7C, 0x5B, 0x37, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x29, 0x5C, 0x64, 0x7B, 0x34, 0x2C, 0x31, 0x30, 0x7D, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x31, 0x33, 0x7D, 0x32, 0x09, 0x36, 0x34, 0x34, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x22, 0x25, 0x12, 0x0E, 0x38, 0x30, 0x5B, 0x30, 0x32, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x2C, 0x31, 0x30, 0x7D, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x39, 0x2C, 0x31, 0x33, 0x7D, 0x32, 0x09, 0x38, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x2A, 0x38, 0x12, 0x21, 0x28, 0x3F, 0x3A, 0x37, 0x31, 0x31, 0x7C, 0x39, 0x28, 0x3F, 0x3A, 0x30, 0x5B, 0x30, 0x31, 0x5D, 0x7C, 0x33, 0x5B, 0x30, 0x31, 0x39, 0x5D, 0x29, 0x29, 0x5C, 0x64, 0x7B, 0x36, 0x2C, 0x31, 0x30, 0x7D, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x39, 0x2C, 0x31, 0x33, 0x7D, 0x32, 0x09, 0x39, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x32, 0x2D, 0x12, 0x16, 0x38, 0x28, 0x3F, 0x3A, 0x31, 0x30, 0x7C, 0x32, 0x5B, 0x30, 0x31, 0x38, 0x5D, 0x29, 0x5C, 0x64, 0x7B, 0x36, 0x2C, 0x31, 0x30, 0x7D, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x39, 0x2C, 0x31, 0x33, 0x7D, 0x32, 0x09, 0x38, 0x31, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x22, 0x12, 0x0B, 0x37, 0x38, 0x30, 0x5C, 0x64, 0x7B, 0x36, 0x2C, 0x31, 0x30, 0x7D, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x39, 0x2C, 0x31, 0x33, 0x7D, 0x32, 0x09, 0x37, 0x38, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x4A, 0x02, 0x41, 0x54, 0x50, 0x2B, 0x5A, 0x02, 0x30, 0x30, 0x62, 0x01, 0x30, 0x7A, 0x01, 0x30, 0x9A, 0x01, 0x2A, 0x0A, 0x10, 0x28, 0x5B, 0x31, 0x35, 0x5D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x2C, 0x31, 0x32, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x1A, 0x08, 0x31, 0x7C, 0x35, 0x5B, 0x30, 0x37, 0x39, 0x5D, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x5A, 0x0A, 0x11, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x2C, 0x31, 0x30, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x1A, 0x37, 0x33, 0x31, 0x36, 0x7C, 0x34, 0x36, 0x7C, 0x35, 0x31, 0x7C, 0x37, 0x33, 0x32, 0x7C, 0x36, 0x28, 0x3F, 0x3A, 0x34, 0x34, 0x7C, 0x35, 0x5B, 0x30, 0x2D, 0x33, 0x35, 0x37, 0x39, 0x5D, 0x7C, 0x5B, 0x36, 0x2D, 0x39, 0x5D, 0x29, 0x7C, 0x37, 0x28, 0x3F, 0x3A, 0x31, 0x7C, 0x5B, 0x32, 0x38, 0x5D, 0x30, 0x29, 0x7C, 0x5B, 0x38, 0x39, 0x5D, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x7E, 0x0A, 0x10, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x2C, 0x39, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x1A, 0x5C, 0x32, 0x7C, 0x33, 0x28, 0x3F, 0x3A, 0x31, 0x5B, 0x31, 0x2D, 0x35, 0x37, 0x38, 0x5D, 0x7C, 0x5B, 0x33, 0x2D, 0x38, 0x5D, 0x29, 0x7C, 0x34, 0x5B, 0x32, 0x33, 0x37, 0x38, 0x5D, 0x7C, 0x35, 0x5B, 0x32, 0x2D, 0x36, 0x5D, 0x7C, 0x36, 0x28, 0x3F, 0x3A, 0x5B, 0x31, 0x32, 0x5D, 0x7C, 0x34, 0x5B, 0x31, 0x2D, 0x33, 0x35, 0x2D, 0x39, 0x5D, 0x7C, 0x35, 0x5B, 0x34, 0x36, 0x38, 0x5D, 0x29, 0x7C, 0x37, 0x28, 0x3F, 0x3A, 0x32, 0x5B, 0x31, 0x2D, 0x38, 0x5D, 0x7C, 0x33, 0x35, 0x7C, 0x34, 0x5B, 0x31, 0x2D, 0x38, 0x5D, 0x7C, 0x5B, 0x35, 0x37, 0x2D, 0x39, 0x5D, 0x29, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xEA, 0x05, 0x0A, 0x1A, 0x12, 0x0E, 0x5B, 0x31, 0x2D, 0x35, 0x37, 0x38, 0x5D, 0x5C, 0x64, 0x7B, 0x35, 0x2C, 0x39, 0x7D, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x36, 0x2C, 0x31, 0x30, 0x7D, 0x12, 0x21, 0x12, 0x0B, 0x5B, 0x32, 0x33, 0x37, 0x38, 0x5D, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x38, 0x2C, 0x39, 0x7D, 0x32, 0x09, 0x32, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x1A, 0x57, 0x12, 0x43, 0x34, 0x28, 0x3F, 0x3A, 0x5B, 0x30, 0x2D, 0x32, 0x5D, 0x5C, 0x64, 0x7C, 0x33, 0x5B, 0x30, 0x2D, 0x35, 0x37, 0x2D, 0x39, 0x5D, 0x7C, 0x34, 0x5B, 0x34, 0x37, 0x2D, 0x39, 0x5D, 0x7C, 0x35, 0x5B, 0x30, 0x2D, 0x33, 0x37, 0x2D, 0x39, 0x5D, 0x7C, 0x36, 0x5B, 0x36, 0x2D, 0x39, 0x5D, 0x7C, 0x37, 0x5B, 0x30, 0x37, 0x2D, 0x39, 0x5D, 0x7C, 0x38, 0x5B, 0x37, 0x2D, 0x39, 0x5D, 0x29, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x34, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x22, 0x3D, 0x12, 0x25, 0x31, 0x28, 0x3F, 0x3A, 0x38, 0x30, 0x28, 0x3F, 0x3A, 0x30, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x3F, 0x7C, 0x33, 0x28, 0x3F, 0x3A, 0x30, 0x30, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x3F, 0x29, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x36, 0x2C, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x31, 0x38, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x2A, 0x24, 0x12, 0x0E, 0x31, 0x39, 0x30, 0x5B, 0x30, 0x31, 0x32, 0x36, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x31, 0x39, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x1C, 0x12, 0x08, 0x35, 0x30, 0x30, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x35, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x42, 0x1C, 0x12, 0x08, 0x35, 0x35, 0x30, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x35, 0x35, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x4A, 0x02, 0x41, 0x55, 0x50, 0x3D, 0x5A, 0x33, 0x28, 0x3F, 0x3A, 0x31, 0x34, 0x28, 0x3F, 0x3A, 0x31, 0x5B, 0x31, 0x34, 0x5D, 0x7C, 0x33, 0x34, 0x7C, 0x34, 0x5B, 0x31, 0x37, 0x5D, 0x7C, 0x5B, 0x35, 0x36, 0x5D, 0x36, 0x7C, 0x37, 0x5B, 0x34, 0x37, 0x5D, 0x7C, 0x38, 0x38, 0x29, 0x29, 0x3F, 0x30, 0x30, 0x31, 0x5B, 0x31, 0x34, 0x2D, 0x36, 0x38, 0x39, 0x5D, 0x62, 0x01, 0x30, 0x7A, 0x01, 0x30, 0x8A, 0x01, 0x04, 0x30, 0x30, 0x31, 0x31, 0x9A, 0x01, 0x33, 0x0A, 0x16, 0x28, 0x5B, 0x32, 0x33, 0x37, 0x38, 0x5D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x06, 0x5B, 0x32, 0x33, 0x37, 0x38, 0x5D, 0x22, 0x05, 0x28, 0x30, 0x24, 0x31, 0x29, 0x2A, 0x00, 0x9A, 0x01, 0x2C, 0x0A, 0x16, 0x28, 0x34, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x01, 0x34, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x2C, 0x0A, 0x16, 0x28, 0x35, 0x5B, 0x30, 0x35, 0x5D, 0x30, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x01, 0x35, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x4A, 0x0A, 0x1B, 0x28, 0x31, 0x5B, 0x33, 0x38, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x0C, 0x31, 0x28, 0x3F, 0x3A, 0x5B, 0x33, 0x38, 0x5D, 0x30, 0x7C, 0x39, 0x29, 0x1A, 0x0D, 0x31, 0x28, 0x3F, 0x3A, 0x5B, 0x33, 0x38, 0x5D, 0x30, 0x30, 0x7C, 0x39, 0x29, 0x22, 0x02, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x2A, 0x0A, 0x0C, 0x28, 0x31, 0x38, 0x30, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x1A, 0x03, 0x31, 0x38, 0x30, 0x1A, 0x08, 0x31, 0x38, 0x30, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x22, 0x02, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x2D, 0x0A, 0x12, 0x28, 0x31, 0x33, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x07, 0x31, 0x33, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x22, 0x02, 0x24, 0x31, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xBA, 0x02, 0x0A, 0x13, 0x12, 0x0A, 0x5B, 0x35, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x12, 0x3D, 0x12, 0x2B, 0x35, 0x28, 0x3F, 0x3A, 0x32, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x7C, 0x38, 0x28, 0x3F, 0x3A, 0x5B, 0x32, 0x2D, 0x37, 0x5D, 0x5C, 0x64, 0x7C, 0x38, 0x5B, 0x30, 0x2D, 0x37, 0x39, 0x5D, 0x7C, 0x39, 0x5B, 0x34, 0x38, 0x5D, 0x29, 0x29, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x32, 0x07, 0x35, 0x32, 0x31, 0x32, 0x33, 0x34, 0x35, 0x1A, 0x3F, 0x12, 0x2D, 0x28, 0x3F, 0x3A, 0x35, 0x5B, 0x36, 0x39, 0x5D, 0x5C, 0x64, 0x7C, 0x36, 0x36, 0x30, 0x7C, 0x39, 0x28, 0x3F, 0x3A, 0x36, 0x5C, 0x64, 0x7C, 0x39, 0x5B, 0x30, 0x32, 0x2D, 0x39, 0x5D, 0x29, 0x7C, 0x37, 0x5B, 0x33, 0x34, 0x5D, 0x5C, 0x64, 0x29, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x32, 0x07, 0x35, 0x36, 0x30, 0x31, 0x32, 0x33, 0x34, 0x22, 0x1A, 0x12, 0x08, 0x38, 0x30, 0x30, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x32, 0x07, 0x38, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x2A, 0x1A, 0x12, 0x08, 0x39, 0x30, 0x30, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x32, 0x07, 0x39, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x41, 0x57, 0x50, 0xA9, 0x02, 0x5A, 0x02, 0x30, 0x30, 0x9A, 0x01, 0x20, 0x0A, 0x13, 0x28, 0x5B, 0x35, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x22, 0x00, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xF1, 0x05, 0x0A, 0x17, 0x12, 0x0C, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x38, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x35, 0x2C, 0x39, 0x7D, 0x12, 0xA5, 0x01, 0x12, 0x8E, 0x01, 0x28, 0x3F, 0x3A, 0x31, 0x28, 0x3F, 0x3A, 0x28, 0x3F, 0x3A, 0x5B, 0x32, 0x38, 0x5D, 0x5C, 0x64, 0x7C, 0x39, 0x29, 0x5C, 0x64, 0x7C, 0x30, 0x32, 0x7C, 0x31, 0x5B, 0x30, 0x2D, 0x35, 0x38, 0x39, 0x5D, 0x7C, 0x33, 0x5B, 0x33, 0x35, 0x38, 0x5D, 0x7C, 0x34, 0x5B, 0x30, 0x31, 0x33, 0x2D, 0x37, 0x39, 0x5D, 0x7C, 0x35, 0x5B, 0x30, 0x2D, 0x34, 0x37, 0x39, 0x5D, 0x7C, 0x36, 0x5B, 0x30, 0x32, 0x33, 0x34, 0x36, 0x2D, 0x39, 0x5D, 0x7C, 0x37, 0x5B, 0x30, 0x2D, 0x32, 0x34, 0x2D, 0x38, 0x5D, 0x29, 0x7C, 0x32, 0x28, 0x3F, 0x3A, 0x31, 0x36, 0x7C, 0x32, 0x5C, 0x64, 0x7C, 0x33, 0x5B, 0x30, 0x2D, 0x32, 0x34, 0x5D, 0x7C, 0x34, 0x5B, 0x31, 0x34, 0x36, 0x38, 0x5D, 0x7C, 0x35, 0x35, 0x7C, 0x36, 0x5B, 0x35, 0x36, 0x5D, 0x7C, 0x37, 0x39, 0x29, 0x7C, 0x33, 0x36, 0x35, 0x3F, 0x5C, 0x64, 0x7C, 0x34, 0x34, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x35, 0x2C, 0x39, 0x7D, 0x32, 0x09, 0x31, 0x32, 0x33, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x1A, 0x2F, 0x12, 0x1B, 0x28, 0x3F, 0x3A, 0x5B, 0x34, 0x36, 0x5D, 0x30, 0x7C, 0x35, 0x5B, 0x30, 0x31, 0x35, 0x5D, 0x7C, 0x37, 0x5B, 0x30, 0x37, 0x5D, 0x29, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x34, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x22, 0x1B, 0x12, 0x07, 0x38, 0x38, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x38, 0x38, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x2A, 0x1F, 0x12, 0x0B, 0x39, 0x30, 0x30, 0x32, 0x30, 0x30, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x39, 0x30, 0x30, 0x32, 0x30, 0x30, 0x31, 0x32, 0x33, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x41, 0x5A, 0x50, 0xE2, 0x07, 0x5A, 0x02, 0x30, 0x30, 0x62, 0x01, 0x30, 0x7A, 0x01, 0x30, 0x9A, 0x01, 0x3B, 0x0A, 0x1C, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x12, 0x0B, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x20, 0x24, 0x34, 0x1A, 0x05, 0x31, 0x5B, 0x32, 0x38, 0x5D, 0x22, 0x05, 0x28, 0x30, 0x24, 0x31, 0x29, 0x2A, 0x00, 0x9A, 0x01, 0x38, 0x0A, 0x1C, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x12, 0x0B, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x20, 0x24, 0x34, 0x1A, 0x02, 0x32, 0x32, 0x22, 0x05, 0x28, 0x30, 0x24, 0x31, 0x29, 0x2A, 0x00, 0x9A, 0x01, 0x39, 0x0A, 0x1E, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x2C, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x12, 0x0B, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x20, 0x24, 0x34, 0x1A, 0x01, 0x33, 0x22, 0x05, 0x28, 0x30, 0x24, 0x31, 0x29, 0x2A, 0x00, 0x9A, 0x01, 0x45, 0x0A, 0x19, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x12, 0x0B, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x20, 0x24, 0x34, 0x1A, 0x12, 0x31, 0x5B, 0x30, 0x31, 0x33, 0x2D, 0x37, 0x39, 0x5D, 0x7C, 0x32, 0x5B, 0x30, 0x31, 0x33, 0x2D, 0x39, 0x5D, 0x22, 0x05, 0x28, 0x30, 0x24, 0x31, 0x29, 0x2A, 0x00, 0x9A, 0x01, 0x39, 0x0A, 0x1C, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x12, 0x0B, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x20, 0x24, 0x34, 0x1A, 0x05, 0x5B, 0x34, 0x2D, 0x38, 0x5D, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x35, 0x0A, 0x1C, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x12, 0x0B, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x20, 0x24, 0x34, 0x1A, 0x01, 0x39, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xC7, 0x02, 0x0A, 0x17, 0x12, 0x0C, 0x5B, 0x33, 0x2D, 0x36, 0x38, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x36, 0x2C, 0x38, 0x7D, 0x12, 0x27, 0x12, 0x12, 0x28, 0x3F, 0x3A, 0x5B, 0x33, 0x35, 0x5D, 0x5C, 0x64, 0x7C, 0x34, 0x39, 0x29, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x36, 0x2C, 0x38, 0x7D, 0x32, 0x08, 0x33, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x1A, 0x20, 0x12, 0x0D, 0x36, 0x5B, 0x31, 0x2D, 0x33, 0x35, 0x36, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x36, 0x31, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x22, 0x1D, 0x12, 0x0A, 0x38, 0x5B, 0x30, 0x38, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x38, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x2A, 0x1F, 0x12, 0x0C, 0x39, 0x5B, 0x30, 0x32, 0x34, 0x36, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x39, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x32, 0x1A, 0x12, 0x07, 0x38, 0x32, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x38, 0x32, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x42, 0x41, 0x50, 0x83, 0x03, 0x5A, 0x02, 0x30, 0x30, 0x62, 0x01, 0x30, 0x7A, 0x01, 0x30, 0x9A, 0x01, 0x2C, 0x0A, 0x19, 0x28, 0x5B, 0x33, 0x2D, 0x36, 0x38, 0x39, 0x5D, 0x5C, 0x64, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x2D, 0x24, 0x33, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x1A, 0x12, 0x07, 0x38, 0x31, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x38, 0x31, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x0A, 0xE1, 0x02, 0x0A, 0x1E, 0x12, 0x0B, 0x5B, 0x32, 0x35, 0x38, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x1A, 0x0F, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x28, 0x3F, 0x3A, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x3F, 0x12, 0x2C, 0x12, 0x0D, 0x32, 0x34, 0x36, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x0F, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x28, 0x3F, 0x3A, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x3F, 0x32, 0x0A, 0x32, 0x34, 0x36, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x1A, 0x3C, 0x12, 0x26, 0x32, 0x34, 0x36, 0x28, 0x3F, 0x3A, 0x28, 0x3F, 0x3A, 0x32, 0x5B, 0x33, 0x34, 0x36, 0x5D, 0x7C, 0x34, 0x35, 0x7C, 0x38, 0x32, 0x29, 0x5C, 0x64, 0x7C, 0x32, 0x35, 0x5B, 0x30, 0x2D, 0x34, 0x5D, 0x29, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x32, 0x34, 0x36, 0x32, 0x35, 0x30, 0x31, 0x32, 0x33, 0x34, 0x22, 0x33, 0x12, 0x1D, 0x38, 0x28, 0x3F, 0x3A, 0x30, 0x30, 0x7C, 0x35, 0x35, 0x7C, 0x36, 0x36, 0x7C, 0x37, 0x37, 0x7C, 0x38, 0x38, 0x29, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x38, 0x30, 0x30, 0x32, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x2A, 0x23, 0x12, 0x0D, 0x39, 0x30, 0x30, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x39, 0x30, 0x30, 0x32, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x2D, 0x12, 0x17, 0x35, 0x28, 0x3F, 0x3A, 0x30, 0x30, 0x7C, 0x33, 0x33, 0x7C, 0x34, 0x34, 0x29, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x35, 0x30, 0x30, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x42, 0x42, 0x50, 0x01, 0x5A, 0x03, 0x30, 0x31, 0x31, 0x62, 0x01, 0x31, 0x7A, 0x01, 0x31, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xBA, 0x01, 0x03, 0x32, 0x34, 0x36, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xCD, 0x07, 0x0A, 0x2E, 0x12, 0x22, 0x5B, 0x32, 0x2D, 0x37, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x35, 0x2C, 0x39, 0x7D, 0x7C, 0x31, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x7C, 0x38, 0x5B, 0x30, 0x2D, 0x37, 0x5D, 0x5C, 0x64, 0x7B, 0x34, 0x2C, 0x38, 0x7D, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x36, 0x2C, 0x31, 0x30, 0x7D, 0x12, 0xA4, 0x04, 0x12, 0x8E, 0x04, 0x32, 0x28, 0x3F, 0x3A, 0x37, 0x5C, 0x64, 0x31, 0x7C, 0x38, 0x28, 0x3F, 0x3A, 0x5B, 0x30, 0x32, 0x36, 0x5D, 0x31, 0x7C, 0x5B, 0x31, 0x33, 0x37, 0x39, 0x5D, 0x5B, 0x31, 0x2D, 0x35, 0x5D, 0x7C, 0x38, 0x5B, 0x31, 0x2D, 0x38, 0x5D, 0x29, 0x7C, 0x39, 0x28, 0x3F, 0x3A, 0x30, 0x5B, 0x30, 0x2D, 0x32, 0x5D, 0x7C, 0x31, 0x5B, 0x31, 0x2D, 0x34, 0x5D, 0x7C, 0x33, 0x5B, 0x33, 0x2D, 0x35, 0x5D, 0x7C, 0x35, 0x5B, 0x35, 0x36, 0x5D, 0x7C, 0x36, 0x5B, 0x36, 0x37, 0x5D, 0x7C, 0x37, 0x31, 0x7C, 0x38, 0x5B, 0x30, 0x37, 0x38, 0x5D, 0x29, 0x29, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x7C, 0x33, 0x28, 0x3F, 0x3A, 0x5B, 0x36, 0x2D, 0x38, 0x5D, 0x31, 0x7C, 0x28, 0x3F, 0x3A, 0x30, 0x5B, 0x32, 0x33, 0x5D, 0x7C, 0x5B, 0x32, 0x35, 0x5D, 0x5B, 0x31, 0x32, 0x5D, 0x7C, 0x38, 0x32, 0x7C, 0x34, 0x31, 0x36, 0x29, 0x5C, 0x64, 0x7C, 0x28, 0x3F, 0x3A, 0x33, 0x31, 0x7C, 0x31, 0x32, 0x3F, 0x5B, 0x35, 0x2D, 0x37, 0x5D, 0x29, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x7C, 0x34, 0x28, 0x3F, 0x3A, 0x28, 0x3F, 0x3A, 0x30, 0x32, 0x7C, 0x5B, 0x34, 0x39, 0x5D, 0x36, 0x7C, 0x5B, 0x36, 0x38, 0x5D, 0x31, 0x29, 0x7C, 0x28, 0x3F, 0x3A, 0x30, 0x5B, 0x31, 0x33, 0x5D, 0x7C, 0x32, 0x31, 0x5C, 0x64, 0x3F, 0x7C, 0x5B, 0x32, 0x33, 0x5D, 0x32, 0x7C, 0x5B, 0x34, 0x35, 0x37, 0x5D, 0x5B, 0x31, 0x32, 0x5D, 0x7C, 0x36, 0x5B, 0x32, 0x38, 0x5D, 0x29, 0x5C, 0x64, 0x7C, 0x28, 0x3F, 0x3A, 0x32, 0x33, 0x7C, 0x5B, 0x33, 0x39, 0x5D, 0x31, 0x29, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x7C, 0x31, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x7C, 0x35, 0x28, 0x3F, 0x3A, 0x28, 0x3F, 0x3A, 0x5B, 0x34, 0x35, 0x37, 0x2D, 0x39, 0x5D, 0x31, 0x7C, 0x36, 0x32, 0x29, 0x7C, 0x28, 0x3F, 0x3A, 0x31, 0x5C, 0x64, 0x3F, 0x7C, 0x32, 0x5B, 0x31, 0x32, 0x5D, 0x7C, 0x33, 0x5B, 0x31, 0x2D, 0x33, 0x5D, 0x7C, 0x35, 0x32, 0x29, 0x5C, 0x64, 0x7C, 0x36, 0x31, 0x7B, 0x32, 0x7D, 0x29, 0x7C, 0x36, 0x28, 0x3F, 0x3A, 0x5B, 0x34, 0x35, 0x5D, 0x31, 0x7C, 0x28, 0x3F, 0x3A, 0x31, 0x31, 0x7C, 0x32, 0x5B, 0x31, 0x35, 0x5D, 0x7C, 0x5B, 0x33, 0x39, 0x5D, 0x31, 0x29, 0x5C, 0x64, 0x7C, 0x28, 0x3F, 0x3A, 0x5B, 0x30, 0x36, 0x2D, 0x38, 0x5D, 0x31, 0x7C, 0x36, 0x32, 0x29, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x7C, 0x37, 0x28, 0x3F, 0x3A, 0x28, 0x3F, 0x3A, 0x33, 0x32, 0x7C, 0x39, 0x31, 0x29, 0x7C, 0x28, 0x3F, 0x3A, 0x30, 0x32, 0x7C, 0x33, 0x31, 0x7C, 0x5B, 0x36, 0x37, 0x5D, 0x5B, 0x31, 0x32, 0x5D, 0x29, 0x5C, 0x64, 0x7C, 0x5B, 0x34, 0x35, 0x38, 0x5D, 0x31, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x7C, 0x32, 0x31, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x7C, 0x38, 0x28, 0x3F, 0x3A, 0x28, 0x3F, 0x3A, 0x34, 0x5B, 0x31, 0x32, 0x5D, 0x7C, 0x5B, 0x35, 0x2D, 0x37, 0x5D, 0x32, 0x7C, 0x31, 0x5C, 0x64, 0x3F, 0x29, 0x7C, 0x28, 0x3F, 0x3A, 0x30, 0x7C, 0x33, 0x5B, 0x31, 0x32, 0x5D, 0x7C, 0x5B, 0x35, 0x2D, 0x37, 0x5D, 0x31, 0x7C, 0x32, 0x31, 0x37, 0x29, 0x5C, 0x64, 0x29, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x7C, 0x39, 0x28, 0x3F, 0x3A, 0x5B, 0x33, 0x35, 0x5D, 0x31, 0x7C, 0x28, 0x3F, 0x3A, 0x5B, 0x30, 0x32, 0x34, 0x5D, 0x32, 0x7C, 0x38, 0x31, 0x29, 0x5C, 0x64, 0x7C, 0x28, 0x3F, 0x3A, 0x31, 0x7C, 0x5B, 0x32, 0x34, 0x5D, 0x31, 0x29, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x36, 0x2C, 0x39, 0x7D, 0x32, 0x08, 0x32, 0x37, 0x31, 0x31, 0x31, 0x32, 0x33, 0x34, 0x1A, 0x4B, 0x12, 0x35, 0x28, 0x3F, 0x3A, 0x31, 0x5B, 0x31, 0x33, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7C, 0x28, 0x3F, 0x3A, 0x33, 0x5B, 0x37, 0x38, 0x5D, 0x7C, 0x34, 0x34, 0x29, 0x5B, 0x30, 0x32, 0x2D, 0x39, 0x5D, 0x7C, 0x36, 0x28, 0x3F, 0x3A, 0x34, 0x34, 0x7C, 0x36, 0x5B, 0x30, 0x32, 0x2D, 0x39, 0x5D, 0x29, 0x29, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x31, 0x38, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x22, 0x21, 0x12, 0x0B, 0x38, 0x30, 0x5B, 0x30, 0x33, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x38, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x2A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x42, 0x44, 0x50, 0xF0, 0x06, 0x5A, 0x07, 0x30, 0x30, 0x5B, 0x31, 0x32, 0x5D, 0x3F, 0x62, 0x01, 0x30, 0x7A, 0x01, 0x30, 0x8A, 0x01, 0x02, 0x30, 0x30, 0x9A, 0x01, 0x1D, 0x0A, 0x0A, 0x28, 0x32, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x1A, 0x01, 0x32, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x29, 0x0A, 0x10, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x2C, 0x36, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x1A, 0x07, 0x5B, 0x33, 0x2D, 0x37, 0x39, 0x5D, 0x31, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x2F, 0x0A, 0x10, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x2C, 0x37, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x1A, 0x0D, 0x5B, 0x33, 0x2D, 0x37, 0x39, 0x5D, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x7C, 0x38, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x21, 0x0A, 0x0E, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x1A, 0x01, 0x31, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xEF, 0x04, 0x0A, 0x17, 0x12, 0x0C, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x38, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x38, 0x2C, 0x39, 0x7D, 0x12, 0x66, 0x12, 0x53, 0x28, 0x3F, 0x3A, 0x31, 0x5B, 0x30, 0x2D, 0x36, 0x39, 0x5D, 0x7C, 0x5B, 0x32, 0x33, 0x5D, 0x5B, 0x32, 0x2D, 0x38, 0x5D, 0x7C, 0x5B, 0x34, 0x39, 0x5D, 0x5B, 0x32, 0x33, 0x5D, 0x7C, 0x35, 0x5C, 0x64, 0x7C, 0x36, 0x5B, 0x30, 0x31, 0x33, 0x2D, 0x35, 0x37, 0x2D, 0x39, 0x5D, 0x7C, 0x37, 0x5B, 0x31, 0x38, 0x5D, 0x29, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x7C, 0x38, 0x28, 0x3F, 0x3A, 0x30, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x7C, 0x5B, 0x31, 0x2D, 0x36, 0x39, 0x5D, 0x5C, 0x64, 0x29, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x1A, 0x2F, 0x12, 0x1B, 0x34, 0x28, 0x3F, 0x3A, 0x37, 0x5C, 0x64, 0x7C, 0x38, 0x5B, 0x34, 0x2D, 0x39, 0x5D, 0x7C, 0x39, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x29, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x34, 0x37, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x22, 0x1B, 0x12, 0x08, 0x38, 0x30, 0x30, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x38, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x2A, 0x24, 0x12, 0x11, 0x28, 0x3F, 0x3A, 0x39, 0x30, 0x7C, 0x37, 0x5B, 0x30, 0x37, 0x5D, 0x29, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x39, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x32, 0x1A, 0x12, 0x07, 0x38, 0x37, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x38, 0x37, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x42, 0x45, 0x50, 0x20, 0x5A, 0x02, 0x30, 0x30, 0x62, 0x01, 0x30, 0x7A, 0x01, 0x30, 0x9A, 0x01, 0x3D, 0x0A, 0x1F, 0x28, 0x34, 0x5B, 0x37, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x12, 0x0B, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x20, 0x24, 0x34, 0x1A, 0x06, 0x34, 0x5B, 0x37, 0x2D, 0x39, 0x5D, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x42, 0x0A, 0x1D, 0x28, 0x5B, 0x32, 0x2D, 0x34, 0x39, 0x5D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x12, 0x0B, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x20, 0x24, 0x34, 0x1A, 0x0D, 0x5B, 0x32, 0x33, 0x5D, 0x7C, 0x5B, 0x34, 0x39, 0x5D, 0x5B, 0x32, 0x33, 0x5D, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x57, 0x0A, 0x1F, 0x28, 0x5B, 0x31, 0x35, 0x2D, 0x38, 0x5D, 0x5C, 0x64, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x12, 0x0B, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x20, 0x24, 0x34, 0x1A, 0x20, 0x5B, 0x31, 0x35, 0x36, 0x5D, 0x7C, 0x37, 0x5B, 0x30, 0x31, 0x37, 0x38, 0x5D, 0x7C, 0x38, 0x28, 0x3F, 0x3A, 0x30, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x7C, 0x5B, 0x31, 0x2D, 0x37, 0x39, 0x5D, 0x29, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x37, 0x0A, 0x19, 0x28, 0x5B, 0x38, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x09, 0x28, 0x3F, 0x3A, 0x38, 0x30, 0x7C, 0x39, 0x29, 0x30, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xCB, 0x02, 0x0A, 0x14, 0x12, 0x0B, 0x5B, 0x32, 0x34, 0x35, 0x37, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x12, 0x54, 0x12, 0x41, 0x28, 0x3F, 0x3A, 0x32, 0x30, 0x28, 0x3F, 0x3A, 0x34, 0x39, 0x7C, 0x35, 0x5B, 0x32, 0x33, 0x5D, 0x7C, 0x39, 0x5B, 0x30, 0x31, 0x36, 0x2D, 0x39, 0x5D, 0x29, 0x7C, 0x34, 0x30, 0x28, 0x3F, 0x3A, 0x34, 0x5B, 0x35, 0x36, 0x39, 0x5D, 0x7C, 0x35, 0x35, 0x7C, 0x37, 0x5B, 0x30, 0x31, 0x37, 0x39, 0x5D, 0x29, 0x7C, 0x35, 0x30, 0x5B, 0x33, 0x34, 0x5D, 0x5C, 0x64, 0x29, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x32, 0x30, 0x34, 0x39, 0x31, 0x32, 0x33, 0x34, 0x1A, 0x4D, 0x12, 0x3A, 0x37, 0x28, 0x3F, 0x3A, 0x5B, 0x30, 0x32, 0x34, 0x2D, 0x36, 0x5D, 0x5C, 0x64, 0x7C, 0x31, 0x5B, 0x30, 0x2D, 0x34, 0x36, 0x38, 0x39, 0x5D, 0x7C, 0x33, 0x5B, 0x30, 0x2D, 0x36, 0x5D, 0x7C, 0x37, 0x5B, 0x30, 0x31, 0x5D, 0x7C, 0x38, 0x5B, 0x30, 0x31, 0x33, 0x2D, 0x39, 0x5D, 0x7C, 0x39, 0x5B, 0x30, 0x2D, 0x34, 0x5D, 0x29, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x37, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x22, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x2A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x42, 0x46, 0x50, 0xE2, 0x01, 0x5A, 0x02, 0x30, 0x30, 0x9A, 0x01, 0x2F, 0x0A, 0x1C, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x12, 0x0B, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x20, 0x24, 0x34, 0x22, 0x00, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xC3, 0x05, 0x0A, 0x17, 0x12, 0x0C, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x2C, 0x38, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x39, 0x7D, 0x12, 0x73, 0x12, 0x5F, 0x28, 0x3F, 0x3A, 0x32, 0x5C, 0x64, 0x7C, 0x5B, 0x33, 0x36, 0x5D, 0x5C, 0x64, 0x7C, 0x35, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x7C, 0x38, 0x5B, 0x31, 0x2D, 0x36, 0x5D, 0x7C, 0x39, 0x5B, 0x31, 0x2D, 0x37, 0x5D, 0x29, 0x5C, 0x64, 0x7B, 0x35, 0x2C, 0x36, 0x7D, 0x7C, 0x28, 0x3F, 0x3A, 0x34, 0x28, 0x3F, 0x3A, 0x5B, 0x31, 0x32, 0x34, 0x2D, 0x37, 0x5D, 0x5C, 0x64, 0x7C, 0x33, 0x5B, 0x31, 0x2D, 0x36, 0x5D, 0x29, 0x7C, 0x37, 0x28, 0x3F, 0x3A, 0x30, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x7C, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x29, 0x29, 0x5C, 0x64, 0x7B, 0x34, 0x2C, 0x35, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x38, 0x7D, 0x32, 0x07, 0x32, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x1A, 0x3D, 0x12, 0x28, 0x28, 0x3F, 0x3A, 0x38, 0x5B, 0x37, 0x2D, 0x39, 0x5D, 0x7C, 0x39, 0x38, 0x29, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x7C, 0x34, 0x28, 0x3F, 0x3A, 0x33, 0x5B, 0x30, 0x37, 0x38, 0x39, 0x5D, 0x7C, 0x38, 0x5C, 0x64, 0x29, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x38, 0x2C, 0x39, 0x7D, 0x32, 0x08, 0x34, 0x38, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x22, 0x1B, 0x12, 0x08, 0x38, 0x30, 0x30, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x38, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x2A, 0x1A, 0x12, 0x07, 0x39, 0x30, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x39, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x1D, 0x12, 0x08, 0x37, 0x30, 0x30, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x39, 0x7D, 0x32, 0x08, 0x37, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x42, 0x47, 0x50, 0xE7, 0x02, 0x5A, 0x02, 0x30, 0x30, 0x62, 0x01, 0x30, 0x7A, 0x01, 0x30, 0x9A, 0x01, 0x29, 0x0A, 0x13, 0x28, 0x32, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x2C, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x2F, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x01, 0x32, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x31, 0x0A, 0x0E, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x2F, 0x24, 0x32, 0x1A, 0x11, 0x34, 0x33, 0x5B, 0x31, 0x32, 0x34, 0x2D, 0x37, 0x5D, 0x7C, 0x37, 0x30, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x3B, 0x0A, 0x15, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x2F, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x11, 0x34, 0x33, 0x5B, 0x31, 0x32, 0x34, 0x2D, 0x37, 0x5D, 0x7C, 0x37, 0x30, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x30, 0x0A, 0x15, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x06, 0x5B, 0x37, 0x38, 0x5D, 0x30, 0x30, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x46, 0x0A, 0x17, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x2C, 0x33, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x2F, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x1A, 0x5B, 0x33, 0x35, 0x36, 0x5D, 0x7C, 0x37, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x7C, 0x38, 0x5B, 0x31, 0x2D, 0x36, 0x5D, 0x7C, 0x39, 0x5B, 0x31, 0x2D, 0x37, 0x5D, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x3B, 0x0A, 0x17, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x2C, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x0F, 0x34, 0x38, 0x7C, 0x38, 0x5B, 0x37, 0x2D, 0x39, 0x5D, 0x7C, 0x39, 0x5B, 0x30, 0x38, 0x5D, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xFD, 0x02, 0x0A, 0x15, 0x12, 0x0C, 0x5B, 0x31, 0x33, 0x36, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x12, 0x52, 0x12, 0x3F, 0x28, 0x3F, 0x3A, 0x31, 0x28, 0x3F, 0x3A, 0x33, 0x5B, 0x33, 0x2D, 0x36, 0x5D, 0x7C, 0x36, 0x5B, 0x30, 0x31, 0x35, 0x36, 0x5D, 0x7C, 0x37, 0x5C, 0x64, 0x29, 0x7C, 0x36, 0x28, 0x3F, 0x3A, 0x31, 0x5B, 0x31, 0x36, 0x5D, 0x7C, 0x36, 0x5B, 0x30, 0x33, 0x34, 0x36, 0x39, 0x5D, 0x7C, 0x39, 0x5B, 0x36, 0x39, 0x5D, 0x29, 0x7C, 0x37, 0x37, 0x5C, 0x64, 0x29, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x31, 0x37, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x1A, 0x50, 0x12, 0x3D, 0x28, 0x3F, 0x3A, 0x33, 0x28, 0x3F, 0x3A, 0x5B, 0x33, 0x36, 0x39, 0x5D, 0x5C, 0x64, 0x7C, 0x37, 0x37, 0x7C, 0x38, 0x5B, 0x33, 0x38, 0x5D, 0x29, 0x7C, 0x36, 0x28, 0x3F, 0x3A, 0x31, 0x5B, 0x31, 0x36, 0x5D, 0x7C, 0x36, 0x5B, 0x30, 0x33, 0x34, 0x36, 0x39, 0x5D, 0x7C, 0x39, 0x5B, 0x36, 0x39, 0x5D, 0x29, 0x7C, 0x37, 0x37, 0x5C, 0x64, 0x29, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x33, 0x36, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x22, 0x1A, 0x12, 0x07, 0x38, 0x30, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x38, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x2A, 0x28, 0x12, 0x15, 0x28, 0x3F, 0x3A, 0x38, 0x37, 0x7C, 0x39, 0x5B, 0x30, 0x31, 0x34, 0x35, 0x37, 0x38, 0x5D, 0x29, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x39, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x32, 0x1A, 0x12, 0x07, 0x38, 0x34, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x38, 0x34, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x42, 0x48, 0x50, 0xCD, 0x07, 0x5A, 0x02, 0x30, 0x30, 0x9A, 0x01, 0x1B, 0x0A, 0x0E, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x22, 0x00, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0x88, 0x02, 0x0A, 0x12, 0x12, 0x09, 0x5B, 0x32, 0x37, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x12, 0x2B, 0x12, 0x18, 0x32, 0x32, 0x28, 0x3F, 0x3A, 0x32, 0x5B, 0x30, 0x2D, 0x37, 0x5D, 0x7C, 0x5B, 0x33, 0x2D, 0x35, 0x5D, 0x30, 0x29, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x32, 0x32, 0x32, 0x30, 0x31, 0x32, 0x33, 0x34, 0x1A, 0x34, 0x12, 0x21, 0x28, 0x3F, 0x3A, 0x32, 0x39, 0x5C, 0x64, 0x7C, 0x37, 0x28, 0x3F, 0x3A, 0x31, 0x5B, 0x31, 0x2D, 0x33, 0x5D, 0x7C, 0x5B, 0x34, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x29, 0x29, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x37, 0x39, 0x35, 0x36, 0x31, 0x32, 0x33, 0x34, 0x22, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x2A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x42, 0x49, 0x50, 0x81, 0x02, 0x5A, 0x02, 0x30, 0x30, 0x9A, 0x01, 0x30, 0x0A, 0x1D, 0x28, 0x5B, 0x32, 0x37, 0x5D, 0x5C, 0x64, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x12, 0x0B, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x20, 0x24, 0x34, 0x22, 0x00, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xD0, 0x02, 0x0A, 0x1D, 0x12, 0x12, 0x5B, 0x32, 0x36, 0x38, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x7C, 0x37, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x34, 0x2C, 0x38, 0x7D, 0x12, 0x32, 0x12, 0x1F, 0x32, 0x28, 0x3F, 0x3A, 0x30, 0x32, 0x7C, 0x31, 0x5B, 0x30, 0x33, 0x37, 0x5D, 0x7C, 0x32, 0x5B, 0x34, 0x35, 0x5D, 0x7C, 0x33, 0x5B, 0x36, 0x38, 0x5D, 0x29, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x32, 0x30, 0x32, 0x31, 0x31, 0x32, 0x33, 0x34, 0x1A, 0x42, 0x12, 0x2F, 0x36, 0x36, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x7C, 0x39, 0x28, 0x3F, 0x3A, 0x30, 0x5B, 0x30, 0x36, 0x39, 0x5D, 0x7C, 0x5B, 0x33, 0x35, 0x5D, 0x5B, 0x30, 0x2D, 0x32, 0x34, 0x35, 0x37, 0x2D, 0x39, 0x5D, 0x7C, 0x5B, 0x36, 0x2D, 0x38, 0x5D, 0x5C, 0x64, 0x29, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x39, 0x30, 0x30, 0x31, 0x31, 0x32, 0x33, 0x34, 0x22, 0x1A, 0x12, 0x0B, 0x37, 0x5B, 0x33, 0x2D, 0x35, 0x5D, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x32, 0x04, 0x37, 0x33, 0x31, 0x32, 0x2A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x1F, 0x12, 0x0C, 0x38, 0x35, 0x37, 0x5B, 0x35, 0x38, 0x5D, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x38, 0x35, 0x37, 0x35, 0x31, 0x32, 0x33, 0x34, 0x4A, 0x02, 0x42, 0x4A, 0x50, 0xE5, 0x01, 0x5A, 0x02, 0x30, 0x30, 0x9A, 0x01, 0x2F, 0x0A, 0x1C, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x12, 0x0B, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x20, 0x24, 0x34, 0x22, 0x00, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xDF, 0x01, 0x0A, 0x12, 0x12, 0x09, 0x5B, 0x35, 0x36, 0x5D, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x12, 0x2F, 0x12, 0x1B, 0x35, 0x39, 0x30, 0x28, 0x3F, 0x3A, 0x32, 0x5B, 0x37, 0x2D, 0x39, 0x5D, 0x7C, 0x35, 0x5B, 0x31, 0x32, 0x5D, 0x7C, 0x38, 0x37, 0x29, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x35, 0x39, 0x30, 0x32, 0x37, 0x31, 0x32, 0x33, 0x34, 0x1A, 0x34, 0x12, 0x20, 0x36, 0x39, 0x30, 0x28, 0x3F, 0x3A, 0x31, 0x30, 0x7C, 0x32, 0x5B, 0x32, 0x37, 0x5D, 0x7C, 0x36, 0x36, 0x7C, 0x37, 0x37, 0x7C, 0x38, 0x5B, 0x37, 0x38, 0x5D, 0x29, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x36, 0x39, 0x30, 0x32, 0x32, 0x31, 0x32, 0x33, 0x34, 0x22, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x2A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x42, 0x4C, 0x50, 0xCE, 0x04, 0x5A, 0x02, 0x30, 0x30, 0x62, 0x01, 0x30, 0x7A, 0x01, 0x30, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0x87, 0x03, 0x0A, 0x1E, 0x12, 0x0B, 0x5B, 0x34, 0x35, 0x38, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x1A, 0x0F, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x28, 0x3F, 0x3A, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x3F, 0x12, 0x5E, 0x12, 0x3F, 0x34, 0x34, 0x31, 0x28, 0x3F, 0x3A, 0x32, 0x28, 0x3F, 0x3A, 0x30, 0x32, 0x7C, 0x32, 0x33, 0x7C, 0x36, 0x31, 0x7C, 0x5B, 0x33, 0x34, 0x37, 0x39, 0x5D, 0x5C, 0x64, 0x29, 0x7C, 0x5B, 0x34, 0x36, 0x5D, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x7C, 0x35, 0x28, 0x3F, 0x3A, 0x34, 0x5C, 0x64, 0x7C, 0x36, 0x30, 0x7C, 0x38, 0x39, 0x29, 0x7C, 0x38, 0x32, 0x34, 0x29, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x0F, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x28, 0x3F, 0x3A, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x3F, 0x32, 0x0A, 0x34, 0x34, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x1A, 0x30, 0x12, 0x1A, 0x34, 0x34, 0x31, 0x28, 0x3F, 0x3A, 0x5B, 0x33, 0x37, 0x5D, 0x5C, 0x64, 0x7C, 0x35, 0x5B, 0x30, 0x2D, 0x33, 0x39, 0x5D, 0x29, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x34, 0x34, 0x31, 0x33, 0x37, 0x30, 0x31, 0x32, 0x33, 0x34, 0x22, 0x33, 0x12, 0x1D, 0x38, 0x28, 0x3F, 0x3A, 0x30, 0x30, 0x7C, 0x35, 0x35, 0x7C, 0x36, 0x36, 0x7C, 0x37, 0x37, 0x7C, 0x38, 0x38, 0x29, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x38, 0x30, 0x30, 0x32, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x2A, 0x23, 0x12, 0x0D, 0x39, 0x30, 0x30, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x39, 0x30, 0x30, 0x32, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x2D, 0x12, 0x17, 0x35, 0x28, 0x3F, 0x3A, 0x30, 0x30, 0x7C, 0x33, 0x33, 0x7C, 0x34, 0x34, 0x29, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x35, 0x30, 0x30, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x42, 0x4D, 0x50, 0x01, 0x5A, 0x03, 0x30, 0x31, 0x31, 0x62, 0x01, 0x31, 0x7A, 0x01, 0x31, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xBA, 0x01, 0x03, 0x34, 0x34, 0x31, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xDE, 0x01, 0x0A, 0x15, 0x12, 0x0C, 0x5B, 0x32, 0x2D, 0x35, 0x37, 0x38, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x12, 0x1C, 0x12, 0x0A, 0x5B, 0x32, 0x2D, 0x35, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x32, 0x07, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x1A, 0x1B, 0x12, 0x09, 0x5B, 0x37, 0x38, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x32, 0x07, 0x37, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x22, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x2A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x42, 0x4E, 0x50, 0xA1, 0x05, 0x5A, 0x02, 0x30, 0x30, 0x62, 0x01, 0x30, 0x7A, 0x01, 0x30, 0x9A, 0x01, 0x25, 0x0A, 0x15, 0x28, 0x5B, 0x32, 0x2D, 0x35, 0x37, 0x38, 0x5D, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xDD, 0x03, 0x0A, 0x17, 0x12, 0x0C, 0x5B, 0x32, 0x33, 0x34, 0x36, 0x37, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x38, 0x7D, 0x12, 0xE2, 0x01, 0x12, 0xCC, 0x01, 0x28, 0x3F, 0x3A, 0x32, 0x28, 0x3F, 0x3A, 0x32, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x7C, 0x35, 0x28, 0x3F, 0x3A, 0x31, 0x31, 0x7C, 0x5B, 0x32, 0x35, 0x38, 0x5D, 0x5C, 0x64, 0x7C, 0x39, 0x5B, 0x36, 0x37, 0x5D, 0x29, 0x7C, 0x36, 0x28, 0x3F, 0x3A, 0x31, 0x32, 0x7C, 0x32, 0x5C, 0x64, 0x7C, 0x39, 0x5B, 0x33, 0x34, 0x5D, 0x29, 0x7C, 0x38, 0x28, 0x3F, 0x3A, 0x32, 0x5B, 0x33, 0x34, 0x5D, 0x7C, 0x33, 0x39, 0x7C, 0x36, 0x32, 0x29, 0x29, 0x7C, 0x33, 0x28, 0x3F, 0x3A, 0x33, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x7C, 0x34, 0x28, 0x3F, 0x3A, 0x36, 0x5C, 0x64, 0x7C, 0x38, 0x5B, 0x32, 0x34, 0x5D, 0x29, 0x7C, 0x38, 0x28, 0x3F, 0x3A, 0x32, 0x35, 0x7C, 0x34, 0x32, 0x7C, 0x35, 0x5B, 0x32, 0x35, 0x37, 0x5D, 0x7C, 0x38, 0x36, 0x7C, 0x39, 0x5B, 0x32, 0x35, 0x5D, 0x29, 0x7C, 0x39, 0x28, 0x3F, 0x3A, 0x32, 0x5C, 0x64, 0x7C, 0x33, 0x5B, 0x32, 0x33, 0x34, 0x5D, 0x7C, 0x34, 0x5B, 0x32, 0x34, 0x38, 0x5D, 0x7C, 0x35, 0x5B, 0x32, 0x34, 0x5D, 0x7C, 0x36, 0x5B, 0x32, 0x2D, 0x36, 0x5D, 0x7C, 0x37, 0x5C, 0x64, 0x29, 0x29, 0x7C, 0x34, 0x28, 0x3F, 0x3A, 0x34, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x7C, 0x36, 0x28, 0x3F, 0x3A, 0x31, 0x31, 0x7C, 0x5B, 0x32, 0x34, 0x36, 0x38, 0x39, 0x5D, 0x5C, 0x64, 0x7C, 0x37, 0x32, 0x29, 0x29, 0x29, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x38, 0x7D, 0x32, 0x08, 0x32, 0x32, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x1A, 0x1C, 0x12, 0x09, 0x5B, 0x36, 0x37, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x37, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x22, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x2A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x42, 0x4F, 0x50, 0xCF, 0x04, 0x5A, 0x08, 0x30, 0x30, 0x28, 0x31, 0x5C, 0x64, 0x29, 0x3F, 0x62, 0x01, 0x30, 0x7A, 0x07, 0x30, 0x28, 0x31, 0x5C, 0x64, 0x29, 0x3F, 0x9A, 0x01, 0x29, 0x0A, 0x0E, 0x28, 0x5B, 0x32, 0x33, 0x34, 0x5D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x1A, 0x05, 0x5B, 0x32, 0x33, 0x34, 0x5D, 0x22, 0x00, 0x2A, 0x07, 0x30, 0x24, 0x43, 0x43, 0x20, 0x24, 0x31, 0x9A, 0x01, 0x22, 0x0A, 0x0B, 0x28, 0x5B, 0x36, 0x37, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x29, 0x12, 0x02, 0x24, 0x31, 0x1A, 0x04, 0x5B, 0x36, 0x37, 0x5D, 0x22, 0x00, 0x2A, 0x07, 0x30, 0x24, 0x43, 0x43, 0x20, 0x24, 0x31, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xF1, 0x04, 0x0A, 0x18, 0x12, 0x0C, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x39, 0x7D, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x38, 0x2C, 0x31, 0x30, 0x7D, 0x12, 0x56, 0x12, 0x3E, 0x28, 0x3F, 0x3A, 0x5B, 0x31, 0x34, 0x36, 0x38, 0x39, 0x5D, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x7C, 0x32, 0x5B, 0x31, 0x32, 0x34, 0x37, 0x38, 0x5D, 0x7C, 0x33, 0x5B, 0x31, 0x2D, 0x35, 0x37, 0x38, 0x5D, 0x7C, 0x35, 0x5B, 0x31, 0x33, 0x2D, 0x35, 0x5D, 0x7C, 0x37, 0x5B, 0x31, 0x33, 0x2D, 0x35, 0x37, 0x39, 0x5D, 0x29, 0x5B, 0x32, 0x2D, 0x35, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x38, 0x2C, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x31, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x1A, 0x54, 0x12, 0x3E, 0x28, 0x3F, 0x3A, 0x5B, 0x31, 0x34, 0x36, 0x38, 0x39, 0x5D, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x7C, 0x32, 0x5B, 0x31, 0x32, 0x34, 0x37, 0x38, 0x5D, 0x7C, 0x33, 0x5B, 0x31, 0x2D, 0x35, 0x37, 0x38, 0x5D, 0x7C, 0x35, 0x5B, 0x31, 0x33, 0x2D, 0x35, 0x5D, 0x7C, 0x37, 0x5B, 0x31, 0x33, 0x2D, 0x35, 0x37, 0x39, 0x5D, 0x29, 0x5B, 0x36, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x31, 0x31, 0x36, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x22, 0x21, 0x12, 0x0A, 0x38, 0x30, 0x30, 0x5C, 0x64, 0x7B, 0x36, 0x2C, 0x37, 0x7D, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x38, 0x2C, 0x31, 0x30, 0x7D, 0x32, 0x09, 0x38, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x2A, 0x25, 0x12, 0x0E, 0x5B, 0x33, 0x35, 0x39, 0x5D, 0x30, 0x30, 0x5C, 0x64, 0x7B, 0x36, 0x2C, 0x37, 0x7D, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x38, 0x2C, 0x31, 0x30, 0x7D, 0x32, 0x09, 0x33, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x32, 0x29, 0x12, 0x13, 0x28, 0x3F, 0x3A, 0x34, 0x30, 0x30, 0x5C, 0x64, 0x7C, 0x33, 0x30, 0x30, 0x33, 0x29, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x38, 0x2C, 0x31, 0x30, 0x7D, 0x32, 0x08, 0x34, 0x30, 0x30, 0x34, 0x31, 0x32, 0x33, 0x34, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x42, 0x52, 0x50, 0x37, 0x5A, 0x1B, 0x30, 0x30, 0x28, 0x3F, 0x3A, 0x31, 0x5B, 0x34, 0x35, 0x5D, 0x7C, 0x32, 0x5B, 0x31, 0x33, 0x35, 0x5D, 0x7C, 0x5B, 0x33, 0x34, 0x5D, 0x31, 0x7C, 0x34, 0x33, 0x29, 0x62, 0x01, 0x30, 0x7A, 0x23, 0x30, 0x28, 0x3F, 0x3A, 0x28, 0x31, 0x5B, 0x32, 0x34, 0x35, 0x5D, 0x7C, 0x32, 0x5B, 0x31, 0x33, 0x35, 0x5D, 0x7C, 0x5B, 0x33, 0x34, 0x5D, 0x31, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x29, 0x29, 0x3F, 0x82, 0x01, 0x02, 0x24, 0x32, 0x9A, 0x01, 0x3F, 0x0A, 0x15, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x2D, 0x24, 0x33, 0x1A, 0x0A, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x22, 0x04, 0x28, 0x24, 0x31, 0x29, 0x2A, 0x0A, 0x30, 0x20, 0x24, 0x43, 0x43, 0x20, 0x28, 0x24, 0x31, 0x29, 0x9A, 0x01, 0x30, 0x0A, 0x11, 0x28, 0x5B, 0x33, 0x34, 0x5D, 0x30, 0x30, 0x5C, 0x64, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x2D, 0x24, 0x32, 0x1A, 0x06, 0x5B, 0x33, 0x34, 0x5D, 0x30, 0x30, 0x1A, 0x08, 0x34, 0x30, 0x30, 0x7C, 0x33, 0x30, 0x30, 0x33, 0x22, 0x00, 0x2A, 0x00, 0x9A, 0x01, 0x37, 0x0A, 0x1A, 0x28, 0x5B, 0x33, 0x35, 0x38, 0x39, 0x5D, 0x30, 0x30, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x2C, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x08, 0x5B, 0x33, 0x35, 0x38, 0x39, 0x5D, 0x30, 0x30, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0x97, 0x04, 0x0A, 0x1E, 0x12, 0x0B, 0x5B, 0x32, 0x35, 0x38, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x1A, 0x0F, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x28, 0x3F, 0x3A, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x3F, 0x12, 0x8D, 0x01, 0x12, 0x6E, 0x32, 0x34, 0x32, 0x28, 0x3F, 0x3A, 0x33, 0x28, 0x3F, 0x3A, 0x30, 0x32, 0x7C, 0x5B, 0x32, 0x33, 0x36, 0x5D, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x7C, 0x34, 0x5B, 0x30, 0x2D, 0x32, 0x34, 0x2D, 0x39, 0x5D, 0x7C, 0x35, 0x5B, 0x30, 0x2D, 0x36, 0x38, 0x5D, 0x7C, 0x37, 0x5B, 0x33, 0x34, 0x36, 0x37, 0x5D, 0x7C, 0x38, 0x5B, 0x30, 0x2D, 0x34, 0x5D, 0x7C, 0x39, 0x5B, 0x32, 0x2D, 0x34, 0x36, 0x37, 0x5D, 0x29, 0x7C, 0x34, 0x36, 0x31, 0x7C, 0x35, 0x30, 0x32, 0x7C, 0x36, 0x28, 0x3F, 0x3A, 0x31, 0x32, 0x7C, 0x37, 0x5B, 0x36, 0x37, 0x5D, 0x7C, 0x38, 0x5B, 0x37, 0x38, 0x5D, 0x7C, 0x39, 0x5B, 0x38, 0x39, 0x5D, 0x29, 0x7C, 0x37, 0x30, 0x32, 0x29, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x0F, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x28, 0x3F, 0x3A, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x3F, 0x32, 0x0A, 0x32, 0x34, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x1A, 0x83, 0x01, 0x12, 0x6D, 0x32, 0x34, 0x32, 0x28, 0x3F, 0x3A, 0x33, 0x28, 0x3F, 0x3A, 0x35, 0x5B, 0x37, 0x39, 0x5D, 0x7C, 0x5B, 0x37, 0x39, 0x5D, 0x35, 0x29, 0x7C, 0x34, 0x28, 0x3F, 0x3A, 0x5B, 0x32, 0x2D, 0x34, 0x5D, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x7C, 0x35, 0x5B, 0x31, 0x2D, 0x38, 0x5D, 0x7C, 0x36, 0x5B, 0x32, 0x2D, 0x38, 0x5D, 0x7C, 0x37, 0x5C, 0x64, 0x7C, 0x38, 0x31, 0x29, 0x7C, 0x35, 0x28, 0x3F, 0x3A, 0x32, 0x5B, 0x33, 0x34, 0x5D, 0x7C, 0x33, 0x5B, 0x33, 0x35, 0x5D, 0x7C, 0x34, 0x34, 0x7C, 0x35, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x7C, 0x36, 0x35, 0x7C, 0x37, 0x37, 0x29, 0x7C, 0x36, 0x5B, 0x33, 0x34, 0x5D, 0x36, 0x7C, 0x37, 0x32, 0x37, 0x29, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x32, 0x34, 0x32, 0x33, 0x35, 0x39, 0x31, 0x32, 0x33, 0x34, 0x22, 0x3F, 0x12, 0x29, 0x32, 0x34, 0x32, 0x33, 0x30, 0x30, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x7C, 0x38, 0x28, 0x3F, 0x3A, 0x30, 0x30, 0x7C, 0x35, 0x35, 0x7C, 0x36, 0x36, 0x7C, 0x37, 0x37, 0x7C, 0x38, 0x38, 0x29, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x38, 0x30, 0x30, 0x32, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x2A, 0x23, 0x12, 0x0D, 0x39, 0x30, 0x30, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x39, 0x30, 0x30, 0x32, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x2D, 0x12, 0x17, 0x35, 0x28, 0x3F, 0x3A, 0x30, 0x30, 0x7C, 0x33, 0x33, 0x7C, 0x34, 0x34, 0x29, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x35, 0x30, 0x30, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x42, 0x53, 0x50, 0x01, 0x5A, 0x03, 0x30, 0x31, 0x31, 0x62, 0x01, 0x31, 0x7A, 0x01, 0x31, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xBA, 0x01, 0x03, 0x32, 0x34, 0x32, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xC5, 0x02, 0x0A, 0x1C, 0x12, 0x11, 0x28, 0x3F, 0x3A, 0x31, 0x37, 0x7C, 0x5B, 0x32, 0x2D, 0x38, 0x5D, 0x29, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x36, 0x2C, 0x38, 0x7D, 0x12, 0x4A, 0x12, 0x36, 0x28, 0x3F, 0x3A, 0x32, 0x5B, 0x33, 0x2D, 0x36, 0x5D, 0x7C, 0x5B, 0x33, 0x34, 0x5D, 0x5B, 0x35, 0x2D, 0x37, 0x5D, 0x7C, 0x35, 0x5B, 0x32, 0x33, 0x36, 0x5D, 0x7C, 0x36, 0x5B, 0x32, 0x2D, 0x34, 0x36, 0x5D, 0x7C, 0x37, 0x5B, 0x32, 0x34, 0x36, 0x5D, 0x7C, 0x38, 0x5B, 0x32, 0x2D, 0x34, 0x5D, 0x29, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x36, 0x2C, 0x37, 0x7D, 0x32, 0x07, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x1A, 0x1A, 0x12, 0x07, 0x31, 0x37, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x31, 0x37, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x22, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x2A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x42, 0x54, 0x50, 0xCF, 0x07, 0x5A, 0x02, 0x30, 0x30, 0x9A, 0x01, 0x2F, 0x0A, 0x19, 0x28, 0x31, 0x37, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x12, 0x0B, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x20, 0x24, 0x34, 0x1A, 0x01, 0x31, 0x22, 0x00, 0x2A, 0x00, 0x9A, 0x01, 0x2C, 0x0A, 0x15, 0x28, 0x5B, 0x32, 0x2D, 0x38, 0x5D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x05, 0x5B, 0x32, 0x2D, 0x38, 0x5D, 0x22, 0x00, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xFF, 0x03, 0x0A, 0x18, 0x12, 0x0D, 0x5B, 0x32, 0x2D, 0x37, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x2C, 0x37, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x38, 0x7D, 0x12, 0xB9, 0x01, 0x12, 0xA6, 0x01, 0x28, 0x3F, 0x3A, 0x32, 0x28, 0x3F, 0x3A, 0x34, 0x5B, 0x30, 0x2D, 0x34, 0x38, 0x5D, 0x7C, 0x36, 0x5B, 0x30, 0x2D, 0x32, 0x34, 0x5D, 0x7C, 0x39, 0x5B, 0x30, 0x35, 0x37, 0x38, 0x5D, 0x29, 0x7C, 0x33, 0x28, 0x3F, 0x3A, 0x31, 0x5B, 0x30, 0x32, 0x33, 0x35, 0x2D, 0x39, 0x5D, 0x7C, 0x35, 0x35, 0x7C, 0x36, 0x5C, 0x64, 0x7C, 0x37, 0x5B, 0x30, 0x31, 0x5D, 0x7C, 0x39, 0x5B, 0x30, 0x2D, 0x35, 0x37, 0x5D, 0x29, 0x7C, 0x34, 0x28, 0x3F, 0x3A, 0x36, 0x5B, 0x30, 0x33, 0x5D, 0x7C, 0x37, 0x5B, 0x31, 0x32, 0x36, 0x37, 0x5D, 0x7C, 0x39, 0x5B, 0x30, 0x2D, 0x35, 0x5D, 0x29, 0x7C, 0x35, 0x28, 0x3F, 0x3A, 0x33, 0x5B, 0x30, 0x33, 0x38, 0x39, 0x5D, 0x7C, 0x34, 0x5B, 0x30, 0x34, 0x38, 0x39, 0x5D, 0x7C, 0x37, 0x5B, 0x31, 0x2D, 0x34, 0x37, 0x5D, 0x7C, 0x38, 0x38, 0x7C, 0x39, 0x5B, 0x30, 0x2D, 0x34, 0x39, 0x5D, 0x29, 0x7C, 0x36, 0x28, 0x3F, 0x3A, 0x32, 0x5B, 0x31, 0x2D, 0x33, 0x35, 0x5D, 0x7C, 0x35, 0x5B, 0x31, 0x34, 0x39, 0x5D, 0x7C, 0x38, 0x5B, 0x30, 0x36, 0x37, 0x5D, 0x29, 0x29, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x32, 0x07, 0x32, 0x34, 0x30, 0x31, 0x32, 0x33, 0x34, 0x1A, 0x32, 0x12, 0x1F, 0x37, 0x28, 0x3F, 0x3A, 0x5B, 0x31, 0x2D, 0x33, 0x35, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x7C, 0x5B, 0x34, 0x36, 0x5D, 0x5B, 0x30, 0x2D, 0x37, 0x5D, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x29, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x37, 0x31, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x22, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x2A, 0x19, 0x12, 0x07, 0x39, 0x30, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x32, 0x07, 0x39, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x22, 0x12, 0x0F, 0x37, 0x39, 0x5B, 0x31, 0x32, 0x5D, 0x5B, 0x30, 0x31, 0x5D, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x37, 0x39, 0x31, 0x30, 0x31, 0x32, 0x33, 0x34, 0x4A, 0x02, 0x42, 0x57, 0x50, 0x8B, 0x02, 0x5A, 0x02, 0x30, 0x30, 0x9A, 0x01, 0x22, 0x0A, 0x0E, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x1A, 0x05, 0x5B, 0x32, 0x2D, 0x36, 0x5D, 0x22, 0x00, 0x2A, 0x00, 0x9A, 0x01, 0x26, 0x0A, 0x13, 0x28, 0x37, 0x5C, 0x64, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x01, 0x37, 0x22, 0x00, 0x2A, 0x00, 0x9A, 0x01, 0x1B, 0x0A, 0x0B, 0x28, 0x39, 0x30, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x1A, 0x01, 0x39, 0x22, 0x00, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0x9A, 0x04, 0x0A, 0x21, 0x12, 0x15, 0x5B, 0x31, 0x32, 0x2D, 0x34, 0x5D, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x7C, 0x5B, 0x38, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x31, 0x30, 0x7D, 0x12, 0xB6, 0x01, 0x12, 0x9F, 0x01, 0x28, 0x3F, 0x3A, 0x31, 0x28, 0x3F, 0x3A, 0x35, 0x28, 0x3F, 0x3A, 0x31, 0x5B, 0x31, 0x2D, 0x35, 0x5D, 0x7C, 0x32, 0x5C, 0x64, 0x7C, 0x36, 0x5B, 0x31, 0x2D, 0x34, 0x5D, 0x7C, 0x39, 0x5B, 0x31, 0x2D, 0x37, 0x5D, 0x29, 0x7C, 0x36, 0x28, 0x3F, 0x3A, 0x5B, 0x32, 0x33, 0x35, 0x5D, 0x5C, 0x64, 0x7C, 0x34, 0x5B, 0x31, 0x2D, 0x37, 0x5D, 0x29, 0x7C, 0x37, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x7C, 0x32, 0x28, 0x3F, 0x3A, 0x31, 0x28, 0x3F, 0x3A, 0x5B, 0x32, 0x34, 0x36, 0x5D, 0x5C, 0x64, 0x7C, 0x33, 0x5B, 0x30, 0x2D, 0x33, 0x35, 0x2D, 0x39, 0x5D, 0x7C, 0x35, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x29, 0x7C, 0x32, 0x28, 0x3F, 0x3A, 0x5B, 0x32, 0x33, 0x35, 0x5D, 0x5C, 0x64, 0x7C, 0x34, 0x5B, 0x30, 0x2D, 0x38, 0x5D, 0x29, 0x7C, 0x33, 0x28, 0x3F, 0x3A, 0x32, 0x5C, 0x64, 0x7C, 0x33, 0x5B, 0x30, 0x32, 0x2D, 0x37, 0x39, 0x5D, 0x7C, 0x34, 0x5B, 0x30, 0x32, 0x34, 0x2D, 0x37, 0x5D, 0x7C, 0x35, 0x5B, 0x30, 0x2D, 0x37, 0x5D, 0x29, 0x29, 0x29, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x39, 0x7D, 0x32, 0x09, 0x31, 0x35, 0x32, 0x34, 0x35, 0x30, 0x39, 0x31, 0x31, 0x1A, 0x39, 0x12, 0x25, 0x28, 0x3F, 0x3A, 0x32, 0x28, 0x3F, 0x3A, 0x35, 0x5B, 0x36, 0x37, 0x39, 0x5D, 0x7C, 0x39, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x29, 0x7C, 0x33, 0x33, 0x5C, 0x64, 0x7C, 0x34, 0x34, 0x5C, 0x64, 0x29, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x32, 0x39, 0x34, 0x39, 0x31, 0x31, 0x39, 0x31, 0x31, 0x22, 0x21, 0x12, 0x0B, 0x38, 0x30, 0x5B, 0x31, 0x33, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x38, 0x30, 0x31, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x2A, 0x1E, 0x12, 0x08, 0x39, 0x30, 0x32, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x39, 0x30, 0x32, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x42, 0x59, 0x50, 0xF7, 0x02, 0x5A, 0x04, 0x38, 0x7E, 0x31, 0x30, 0x62, 0x01, 0x38, 0x7A, 0x03, 0x38, 0x30, 0x3F, 0x9A, 0x01, 0x33, 0x0A, 0x17, 0x28, 0x5B, 0x31, 0x2D, 0x34, 0x5D, 0x5C, 0x64, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x05, 0x5B, 0x31, 0x2D, 0x34, 0x5D, 0x22, 0x05, 0x38, 0x20, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x33, 0x0A, 0x19, 0x28, 0x5B, 0x38, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x04, 0x5B, 0x38, 0x39, 0x5D, 0x22, 0x04, 0x38, 0x20, 0x24, 0x31, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xC7, 0x02, 0x0A, 0x25, 0x12, 0x12, 0x5B, 0x32, 0x2D, 0x38, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x7C, 0x30, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x1A, 0x0F, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x28, 0x3F, 0x3A, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x3F, 0x12, 0x23, 0x12, 0x11, 0x5B, 0x32, 0x33, 0x34, 0x35, 0x37, 0x38, 0x5D, 0x5B, 0x30, 0x32, 0x5D, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x32, 0x07, 0x32, 0x32, 0x32, 0x31, 0x32, 0x33, 0x34, 0x1A, 0x2C, 0x12, 0x1A, 0x36, 0x28, 0x3F, 0x3A, 0x5B, 0x30, 0x2D, 0x32, 0x5D, 0x5C, 0x64, 0x7C, 0x5B, 0x36, 0x37, 0x5D, 0x5B, 0x30, 0x31, 0x5D, 0x29, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x32, 0x07, 0x36, 0x32, 0x32, 0x31, 0x32, 0x33, 0x34, 0x22, 0x20, 0x12, 0x09, 0x30, 0x38, 0x30, 0x30, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x31, 0x7D, 0x32, 0x0B, 0x30, 0x38, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x31, 0x32, 0x33, 0x2A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x42, 0x5A, 0x50, 0xF5, 0x03, 0x5A, 0x02, 0x30, 0x30, 0x9A, 0x01, 0x22, 0x0A, 0x0E, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x2D, 0x24, 0x32, 0x1A, 0x05, 0x5B, 0x32, 0x2D, 0x38, 0x5D, 0x22, 0x00, 0x2A, 0x00, 0x9A, 0x01, 0x2C, 0x0A, 0x16, 0x28, 0x30, 0x29, 0x28, 0x38, 0x30, 0x30, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x12, 0x0B, 0x24, 0x31, 0x2D, 0x24, 0x32, 0x2D, 0x24, 0x33, 0x2D, 0x24, 0x34, 0x1A, 0x01, 0x30, 0x22, 0x00, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xD0, 0x01, 0x01, 0x0A, 0x88, 0x05, 0x0A, 0x24, 0x12, 0x11, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x7C, 0x33, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x0F, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x28, 0x3F, 0x3A, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x3F, 0x12, 0xC2, 0x01, 0x12, 0xA2, 0x01, 0x28, 0x3F, 0x3A, 0x32, 0x28, 0x3F, 0x3A, 0x30, 0x34, 0x7C, 0x32, 0x36, 0x7C, 0x5B, 0x34, 0x38, 0x5D, 0x39, 0x7C, 0x35, 0x30, 0x29, 0x7C, 0x33, 0x28, 0x3F, 0x3A, 0x30, 0x36, 0x7C, 0x34, 0x33, 0x29, 0x7C, 0x34, 0x28, 0x3F, 0x3A, 0x30, 0x33, 0x7C, 0x31, 0x5B, 0x36, 0x38, 0x5D, 0x7C, 0x33, 0x38, 0x7C, 0x35, 0x5B, 0x30, 0x36, 0x5D, 0x29, 0x7C, 0x35, 0x28, 0x3F, 0x3A, 0x30, 0x5B, 0x30, 0x36, 0x5D, 0x7C, 0x31, 0x5B, 0x34, 0x39, 0x5D, 0x7C, 0x37, 0x39, 0x7C, 0x38, 0x5B, 0x31, 0x37, 0x5D, 0x29, 0x7C, 0x36, 0x28, 0x3F, 0x3A, 0x30, 0x5B, 0x30, 0x34, 0x5D, 0x7C, 0x31, 0x33, 0x7C, 0x34, 0x37, 0x29, 0x7C, 0x37, 0x28, 0x3F, 0x3A, 0x30, 0x5B, 0x30, 0x35, 0x39, 0x5D, 0x7C, 0x5B, 0x31, 0x38, 0x5D, 0x30, 0x7C, 0x37, 0x38, 0x29, 0x7C, 0x38, 0x28, 0x3F, 0x3A, 0x5B, 0x30, 0x36, 0x5D, 0x37, 0x7C, 0x31, 0x39, 0x7C, 0x29, 0x7C, 0x39, 0x30, 0x5B, 0x32, 0x35, 0x5D, 0x29, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x7C, 0x33, 0x31, 0x30, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x0F, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x28, 0x3F, 0x3A, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x3F, 0x32, 0x0A, 0x32, 0x30, 0x34, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x1A, 0xB9, 0x01, 0x12, 0x99, 0x01, 0x28, 0x3F, 0x3A, 0x32, 0x28, 0x3F, 0x3A, 0x30, 0x34, 0x7C, 0x32, 0x36, 0x7C, 0x5B, 0x34, 0x38, 0x5D, 0x39, 0x7C, 0x35, 0x30, 0x29, 0x7C, 0x33, 0x28, 0x3F, 0x3A, 0x30, 0x36, 0x7C, 0x34, 0x33, 0x29, 0x7C, 0x34, 0x28, 0x3F, 0x3A, 0x30, 0x33, 0x7C, 0x31, 0x5B, 0x36, 0x38, 0x5D, 0x7C, 0x33, 0x38, 0x7C, 0x35, 0x5B, 0x30, 0x36, 0x5D, 0x29, 0x7C, 0x35, 0x28, 0x3F, 0x3A, 0x30, 0x5B, 0x30, 0x36, 0x5D, 0x7C, 0x31, 0x5B, 0x34, 0x39, 0x5D, 0x7C, 0x37, 0x39, 0x7C, 0x38, 0x5B, 0x31, 0x37, 0x5D, 0x29, 0x7C, 0x36, 0x28, 0x3F, 0x3A, 0x30, 0x5B, 0x30, 0x34, 0x5D, 0x7C, 0x31, 0x33, 0x7C, 0x34, 0x37, 0x29, 0x7C, 0x37, 0x28, 0x3F, 0x3A, 0x30, 0x5B, 0x30, 0x35, 0x39, 0x5D, 0x7C, 0x5B, 0x31, 0x38, 0x5D, 0x30, 0x7C, 0x37, 0x38, 0x29, 0x7C, 0x38, 0x28, 0x3F, 0x3A, 0x5B, 0x30, 0x36, 0x5D, 0x37, 0x7C, 0x31, 0x39, 0x7C, 0x29, 0x7C, 0x39, 0x30, 0x5B, 0x32, 0x35, 0x5D, 0x29, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x0F, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x28, 0x3F, 0x3A, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x3F, 0x32, 0x0A, 0x32, 0x30, 0x34, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x22, 0x45, 0x12, 0x26, 0x38, 0x28, 0x3F, 0x3A, 0x30, 0x30, 0x7C, 0x35, 0x35, 0x7C, 0x36, 0x36, 0x7C, 0x37, 0x37, 0x7C, 0x38, 0x38, 0x29, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x7C, 0x33, 0x31, 0x30, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x0F, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x28, 0x3F, 0x3A, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x3F, 0x32, 0x0A, 0x38, 0x30, 0x30, 0x32, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x2A, 0x23, 0x12, 0x0D, 0x39, 0x30, 0x30, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x39, 0x30, 0x30, 0x32, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x2D, 0x12, 0x17, 0x35, 0x28, 0x3F, 0x3A, 0x30, 0x30, 0x7C, 0x33, 0x33, 0x7C, 0x34, 0x34, 0x29, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x35, 0x30, 0x30, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x43, 0x41, 0x50, 0x01, 0x5A, 0x03, 0x30, 0x31, 0x31, 0x62, 0x01, 0x31, 0x7A, 0x01, 0x31, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xB1, 0x02, 0x0A, 0x1F, 0x12, 0x14, 0x5B, 0x38, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x7C, 0x5B, 0x31, 0x2D, 0x36, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x39, 0x7D, 0x12, 0x1C, 0x12, 0x0A, 0x5B, 0x31, 0x2D, 0x36, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x32, 0x07, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x1A, 0x2D, 0x12, 0x19, 0x28, 0x3F, 0x3A, 0x38, 0x5B, 0x30, 0x2D, 0x32, 0x34, 0x38, 0x39, 0x5D, 0x7C, 0x39, 0x5B, 0x37, 0x2D, 0x39, 0x5D, 0x29, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x39, 0x39, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x22, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x2A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x43, 0x44, 0x50, 0xF3, 0x01, 0x5A, 0x02, 0x30, 0x30, 0x62, 0x01, 0x30, 0x7A, 0x01, 0x30, 0x9A, 0x01, 0x32, 0x0A, 0x19, 0x28, 0x5B, 0x38, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x04, 0x5B, 0x38, 0x39, 0x5D, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x27, 0x0A, 0x10, 0x28, 0x5B, 0x31, 0x2D, 0x36, 0x5D, 0x5C, 0x64, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x1A, 0x05, 0x5B, 0x31, 0x2D, 0x36, 0x5D, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xF9, 0x01, 0x0A, 0x13, 0x12, 0x0A, 0x5B, 0x32, 0x37, 0x38, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x12, 0x1D, 0x12, 0x0A, 0x32, 0x5B, 0x31, 0x32, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x32, 0x31, 0x36, 0x31, 0x32, 0x33, 0x34, 0x35, 0x1A, 0x1F, 0x12, 0x0C, 0x37, 0x5B, 0x30, 0x32, 0x35, 0x37, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x37, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x22, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x2A, 0x1C, 0x12, 0x09, 0x38, 0x37, 0x37, 0x36, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x38, 0x37, 0x37, 0x36, 0x31, 0x32, 0x33, 0x34, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x43, 0x46, 0x50, 0xEC, 0x01, 0x5A, 0x02, 0x30, 0x30, 0x9A, 0x01, 0x2F, 0x0A, 0x1C, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x12, 0x0B, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x20, 0x24, 0x34, 0x22, 0x00, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xA7, 0x02, 0x0A, 0x13, 0x12, 0x0A, 0x5B, 0x30, 0x32, 0x38, 0x5D, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x12, 0x23, 0x12, 0x0F, 0x32, 0x32, 0x32, 0x5B, 0x31, 0x2D, 0x35, 0x38, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x32, 0x32, 0x32, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x1A, 0x20, 0x12, 0x0C, 0x30, 0x5B, 0x31, 0x34, 0x2D, 0x36, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x30, 0x36, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x22, 0x1C, 0x12, 0x08, 0x38, 0x30, 0x30, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x38, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x2A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x43, 0x47, 0x50, 0xF2, 0x01, 0x5A, 0x02, 0x30, 0x30, 0x9A, 0x01, 0x2B, 0x0A, 0x15, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x04, 0x5B, 0x30, 0x32, 0x5D, 0x22, 0x00, 0x2A, 0x00, 0x9A, 0x01, 0x25, 0x0A, 0x12, 0x28, 0x5C, 0x64, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x01, 0x38, 0x22, 0x00, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xD0, 0x01, 0x01, 0x0A, 0xBC, 0x03, 0x0A, 0x13, 0x12, 0x0A, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x12, 0x49, 0x12, 0x35, 0x28, 0x3F, 0x3A, 0x32, 0x5B, 0x31, 0x32, 0x34, 0x36, 0x37, 0x5D, 0x7C, 0x33, 0x5B, 0x31, 0x2D, 0x34, 0x5D, 0x7C, 0x34, 0x5B, 0x31, 0x33, 0x34, 0x5D, 0x7C, 0x35, 0x5B, 0x31, 0x32, 0x35, 0x36, 0x38, 0x5D, 0x7C, 0x36, 0x5B, 0x31, 0x32, 0x5D, 0x7C, 0x5B, 0x37, 0x2D, 0x39, 0x5D, 0x31, 0x29, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x32, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x1A, 0x20, 0x12, 0x0C, 0x37, 0x5B, 0x34, 0x36, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x37, 0x34, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x22, 0x1C, 0x12, 0x08, 0x38, 0x30, 0x30, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x38, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x2A, 0x20, 0x12, 0x0C, 0x39, 0x30, 0x5B, 0x30, 0x31, 0x36, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x39, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x32, 0x21, 0x12, 0x0D, 0x38, 0x34, 0x5B, 0x30, 0x32, 0x34, 0x38, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x38, 0x34, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x3A, 0x1C, 0x12, 0x08, 0x38, 0x37, 0x38, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x38, 0x37, 0x38, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x43, 0x48, 0x50, 0x29, 0x5A, 0x02, 0x30, 0x30, 0x62, 0x01, 0x30, 0x7A, 0x01, 0x30, 0x9A, 0x01, 0x41, 0x0A, 0x1E, 0x28, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x12, 0x0B, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x20, 0x24, 0x34, 0x1A, 0x0B, 0x5B, 0x32, 0x2D, 0x37, 0x5D, 0x7C, 0x5B, 0x38, 0x39, 0x5D, 0x31, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x37, 0x0A, 0x19, 0x28, 0x5B, 0x38, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x09, 0x38, 0x5B, 0x30, 0x34, 0x37, 0x5D, 0x7C, 0x39, 0x30, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xCE, 0x02, 0x0A, 0x14, 0x12, 0x0B, 0x5B, 0x30, 0x32, 0x2D, 0x35, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x12, 0x6A, 0x12, 0x57, 0x28, 0x3F, 0x3A, 0x32, 0x28, 0x3F, 0x3A, 0x30, 0x5B, 0x30, 0x32, 0x33, 0x5D, 0x7C, 0x31, 0x5B, 0x30, 0x32, 0x33, 0x35, 0x37, 0x5D, 0x7C, 0x5B, 0x32, 0x33, 0x5D, 0x5B, 0x30, 0x34, 0x35, 0x5D, 0x7C, 0x34, 0x5B, 0x30, 0x33, 0x2D, 0x35, 0x5D, 0x29, 0x7C, 0x33, 0x28, 0x3F, 0x3A, 0x30, 0x5B, 0x30, 0x36, 0x5D, 0x7C, 0x31, 0x5B, 0x30, 0x36, 0x39, 0x5D, 0x7C, 0x5B, 0x32, 0x2D, 0x34, 0x5D, 0x5B, 0x30, 0x37, 0x5D, 0x7C, 0x35, 0x5B, 0x30, 0x39, 0x5D, 0x7C, 0x36, 0x5B, 0x30, 0x38, 0x5D, 0x29, 0x29, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x32, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x1A, 0x37, 0x12, 0x24, 0x28, 0x3F, 0x3A, 0x30, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x7C, 0x34, 0x5B, 0x30, 0x34, 0x2D, 0x39, 0x5D, 0x7C, 0x35, 0x5B, 0x30, 0x37, 0x5D, 0x7C, 0x36, 0x5B, 0x30, 0x36, 0x37, 0x5D, 0x29, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x22, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x2A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x43, 0x49, 0x50, 0xE1, 0x01, 0x5A, 0x02, 0x30, 0x30, 0x9A, 0x01, 0x2F, 0x0A, 0x1C, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x12, 0x0B, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x20, 0x24, 0x34, 0x22, 0x00, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xD0, 0x01, 0x01, 0x0A, 0xE5, 0x01, 0x0A, 0x14, 0x12, 0x0B, 0x5B, 0x32, 0x2D, 0x35, 0x37, 0x5D, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x12, 0x2B, 0x12, 0x1B, 0x28, 0x3F, 0x3A, 0x32, 0x5C, 0x64, 0x7C, 0x33, 0x5B, 0x31, 0x33, 0x2D, 0x37, 0x5D, 0x7C, 0x34, 0x5B, 0x31, 0x2D, 0x35, 0x5D, 0x29, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x32, 0x05, 0x32, 0x31, 0x32, 0x33, 0x34, 0x1A, 0x24, 0x12, 0x14, 0x28, 0x3F, 0x3A, 0x35, 0x5B, 0x30, 0x2D, 0x36, 0x38, 0x5D, 0x7C, 0x37, 0x5C, 0x64, 0x29, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x32, 0x05, 0x37, 0x31, 0x32, 0x33, 0x34, 0x22, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x2A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x43, 0x4B, 0x50, 0xAA, 0x05, 0x5A, 0x02, 0x30, 0x30, 0x9A, 0x01, 0x1B, 0x0A, 0x0E, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x22, 0x00, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xAD, 0x06, 0x0A, 0x24, 0x12, 0x18, 0x28, 0x3F, 0x3A, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x7C, 0x36, 0x30, 0x30, 0x7C, 0x31, 0x32, 0x33, 0x29, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x38, 0x7D, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x36, 0x2C, 0x31, 0x31, 0x7D, 0x12, 0x59, 0x12, 0x44, 0x28, 0x3F, 0x3A, 0x32, 0x7C, 0x33, 0x32, 0x7C, 0x34, 0x31, 0x29, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x7C, 0x28, 0x3F, 0x3A, 0x33, 0x5B, 0x33, 0x2D, 0x35, 0x5D, 0x7C, 0x34, 0x5B, 0x32, 0x33, 0x35, 0x5D, 0x7C, 0x35, 0x5B, 0x31, 0x2D, 0x33, 0x35, 0x37, 0x38, 0x5D, 0x7C, 0x36, 0x5B, 0x31, 0x33, 0x2D, 0x35, 0x37, 0x5D, 0x7C, 0x37, 0x5B, 0x31, 0x2D, 0x33, 0x35, 0x5D, 0x29, 0x5C, 0x64, 0x7B, 0x36, 0x2C, 0x37, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x36, 0x2C, 0x39, 0x7D, 0x32, 0x08, 0x32, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x1A, 0x21, 0x12, 0x0B, 0x39, 0x5B, 0x36, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x38, 0x2C, 0x39, 0x7D, 0x32, 0x09, 0x39, 0x36, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x22, 0x29, 0x12, 0x12, 0x38, 0x30, 0x30, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x7C, 0x31, 0x32, 0x33, 0x30, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x39, 0x2C, 0x31, 0x31, 0x7D, 0x32, 0x09, 0x38, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x2A, 0x23, 0x12, 0x0A, 0x36, 0x30, 0x30, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x38, 0x7D, 0x1A, 0x09, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x2C, 0x31, 0x31, 0x7D, 0x32, 0x0A, 0x36, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x1B, 0x12, 0x07, 0x34, 0x34, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x34, 0x34, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x4A, 0x02, 0x43, 0x4C, 0x50, 0x38, 0x5A, 0x36, 0x28, 0x3F, 0x3A, 0x30, 0x7C, 0x31, 0x28, 0x3F, 0x3A, 0x31, 0x5B, 0x30, 0x2D, 0x36, 0x39, 0x5D, 0x7C, 0x32, 0x5B, 0x30, 0x2D, 0x35, 0x37, 0x5D, 0x7C, 0x35, 0x5B, 0x31, 0x33, 0x2D, 0x35, 0x38, 0x5D, 0x7C, 0x36, 0x39, 0x7C, 0x37, 0x5B, 0x30, 0x31, 0x36, 0x37, 0x5D, 0x7C, 0x38, 0x5B, 0x30, 0x31, 0x38, 0x5D, 0x29, 0x29, 0x30, 0x62, 0x01, 0x30, 0x7A, 0x33, 0x30, 0x7C, 0x28, 0x31, 0x28, 0x3F, 0x3A, 0x31, 0x5B, 0x30, 0x2D, 0x36, 0x39, 0x5D, 0x7C, 0x32, 0x5B, 0x30, 0x2D, 0x35, 0x37, 0x5D, 0x7C, 0x35, 0x5B, 0x31, 0x33, 0x2D, 0x35, 0x38, 0x5D, 0x7C, 0x36, 0x39, 0x7C, 0x37, 0x5B, 0x30, 0x31, 0x36, 0x37, 0x5D, 0x7C, 0x38, 0x5B, 0x30, 0x31, 0x38, 0x5D, 0x29, 0x29, 0x9A, 0x01, 0x30, 0x0A, 0x11, 0x28, 0x32, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x01, 0x32, 0x22, 0x04, 0x28, 0x24, 0x31, 0x29, 0x2A, 0x08, 0x24, 0x43, 0x43, 0x20, 0x28, 0x24, 0x31, 0x29, 0x9A, 0x01, 0x4B, 0x0A, 0x17, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x2C, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x16, 0x5B, 0x33, 0x35, 0x37, 0x5D, 0x7C, 0x34, 0x5B, 0x31, 0x2D, 0x33, 0x35, 0x5D, 0x7C, 0x36, 0x5B, 0x31, 0x33, 0x2D, 0x35, 0x37, 0x5D, 0x22, 0x04, 0x28, 0x24, 0x31, 0x29, 0x2A, 0x08, 0x24, 0x43, 0x43, 0x20, 0x28, 0x24, 0x31, 0x29, 0x9A, 0x01, 0x2C, 0x0A, 0x16, 0x28, 0x39, 0x29, 0x28, 0x5B, 0x36, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x01, 0x39, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x29, 0x0A, 0x12, 0x28, 0x34, 0x34, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x02, 0x34, 0x34, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x30, 0x0A, 0x18, 0x28, 0x5B, 0x36, 0x38, 0x5D, 0x30, 0x30, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x2C, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x04, 0x36, 0x30, 0x7C, 0x38, 0x22, 0x02, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x33, 0x0A, 0x1A, 0x28, 0x36, 0x30, 0x30, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x12, 0x0B, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x20, 0x24, 0x34, 0x1A, 0x02, 0x36, 0x30, 0x22, 0x02, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x29, 0x0A, 0x14, 0x28, 0x31, 0x32, 0x33, 0x30, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x01, 0x31, 0x22, 0x02, 0x24, 0x31, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xC6, 0x02, 0x0A, 0x15, 0x12, 0x0C, 0x5B, 0x32, 0x33, 0x37, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x12, 0x21, 0x12, 0x0E, 0x28, 0x3F, 0x3A, 0x32, 0x32, 0x7C, 0x33, 0x33, 0x29, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x32, 0x32, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x1A, 0x1C, 0x12, 0x09, 0x5B, 0x37, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x37, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x22, 0x1B, 0x12, 0x08, 0x38, 0x30, 0x30, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x38, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x2A, 0x1A, 0x12, 0x07, 0x38, 0x38, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x38, 0x38, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x43, 0x4D, 0x50, 0xED, 0x01, 0x5A, 0x02, 0x30, 0x30, 0x9A, 0x01, 0x3E, 0x0A, 0x20, 0x28, 0x5B, 0x32, 0x33, 0x37, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x12, 0x0B, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x20, 0x24, 0x34, 0x1A, 0x09, 0x5B, 0x32, 0x33, 0x37, 0x39, 0x5D, 0x7C, 0x38, 0x38, 0x22, 0x00, 0x2A, 0x00, 0x9A, 0x01, 0x27, 0x0A, 0x13, 0x28, 0x38, 0x30, 0x30, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x02, 0x38, 0x30, 0x22, 0x00, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xAA, 0x13, 0x0A, 0x2C, 0x12, 0x20, 0x5B, 0x31, 0x2D, 0x37, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x31, 0x31, 0x7D, 0x7C, 0x38, 0x5B, 0x30, 0x2D, 0x33, 0x35, 0x37, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x2C, 0x39, 0x7D, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x34, 0x2C, 0x31, 0x32, 0x7D, 0x12, 0xEF, 0x03, 0x12, 0xD6, 0x03, 0x32, 0x31, 0x5C, 0x64, 0x7B, 0x38, 0x2C, 0x31, 0x30, 0x7D, 0x7C, 0x28, 0x3F, 0x3A, 0x31, 0x30, 0x7C, 0x32, 0x5B, 0x30, 0x32, 0x2D, 0x35, 0x37, 0x2D, 0x39, 0x5D, 0x7C, 0x33, 0x28, 0x3F, 0x3A, 0x31, 0x31, 0x7C, 0x37, 0x5B, 0x31, 0x35, 0x39, 0x5D, 0x29, 0x7C, 0x34, 0x5B, 0x31, 0x33, 0x35, 0x5D, 0x31, 0x7C, 0x35, 0x28, 0x3F, 0x3A, 0x31, 0x5C, 0x64, 0x7C, 0x32, 0x5B, 0x33, 0x37, 0x5D, 0x7C, 0x33, 0x5B, 0x31, 0x32, 0x5D, 0x7C, 0x37, 0x5B, 0x31, 0x33, 0x2D, 0x37, 0x39, 0x5D, 0x7C, 0x39, 0x5B, 0x31, 0x35, 0x5D, 0x29, 0x7C, 0x37, 0x28, 0x3F, 0x3A, 0x33, 0x31, 0x7C, 0x35, 0x5B, 0x34, 0x35, 0x37, 0x5D, 0x7C, 0x36, 0x5B, 0x30, 0x39, 0x5D, 0x29, 0x7C, 0x38, 0x39, 0x38, 0x29, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x7C, 0x28, 0x3F, 0x3A, 0x33, 0x28, 0x3F, 0x3A, 0x31, 0x5B, 0x30, 0x32, 0x2D, 0x39, 0x5D, 0x7C, 0x33, 0x35, 0x7C, 0x34, 0x39, 0x7C, 0x35, 0x5C, 0x64, 0x7C, 0x37, 0x5B, 0x30, 0x32, 0x2D, 0x36, 0x38, 0x5D, 0x7C, 0x39, 0x5B, 0x31, 0x2D, 0x36, 0x38, 0x5D, 0x29, 0x7C, 0x34, 0x28, 0x3F, 0x3A, 0x31, 0x5B, 0x30, 0x32, 0x2D, 0x39, 0x5D, 0x7C, 0x32, 0x5B, 0x31, 0x37, 0x39, 0x5D, 0x7C, 0x5B, 0x33, 0x35, 0x5D, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x7C, 0x36, 0x5B, 0x34, 0x37, 0x38, 0x39, 0x5D, 0x7C, 0x37, 0x5B, 0x30, 0x2D, 0x34, 0x36, 0x2D, 0x39, 0x5D, 0x7C, 0x38, 0x5B, 0x32, 0x33, 0x5D, 0x29, 0x7C, 0x35, 0x28, 0x3F, 0x3A, 0x33, 0x5B, 0x30, 0x33, 0x2D, 0x39, 0x5D, 0x7C, 0x34, 0x5B, 0x33, 0x36, 0x5D, 0x7C, 0x35, 0x5C, 0x64, 0x7C, 0x36, 0x5B, 0x31, 0x2D, 0x36, 0x5D, 0x7C, 0x37, 0x5B, 0x30, 0x32, 0x38, 0x5D, 0x7C, 0x38, 0x30, 0x7C, 0x39, 0x5B, 0x32, 0x2D, 0x34, 0x36, 0x2D, 0x39, 0x5D, 0x29, 0x7C, 0x36, 0x28, 0x3F, 0x3A, 0x33, 0x5B, 0x31, 0x2D, 0x35, 0x5D, 0x7C, 0x36, 0x5B, 0x30, 0x32, 0x33, 0x38, 0x5D, 0x7C, 0x39, 0x5B, 0x31, 0x32, 0x5D, 0x29, 0x7C, 0x37, 0x28, 0x3F, 0x3A, 0x30, 0x31, 0x7C, 0x5B, 0x31, 0x35, 0x37, 0x39, 0x5D, 0x5C, 0x64, 0x7C, 0x32, 0x5B, 0x32, 0x34, 0x38, 0x5D, 0x7C, 0x33, 0x5B, 0x30, 0x34, 0x2D, 0x39, 0x5D, 0x7C, 0x34, 0x5B, 0x33, 0x2D, 0x36, 0x5D, 0x7C, 0x36, 0x5B, 0x32, 0x33, 0x36, 0x38, 0x5D, 0x29, 0x7C, 0x38, 0x28, 0x3F, 0x3A, 0x31, 0x5B, 0x32, 0x33, 0x36, 0x2D, 0x38, 0x5D, 0x7C, 0x32, 0x5B, 0x35, 0x2D, 0x37, 0x5D, 0x7C, 0x5B, 0x33, 0x37, 0x5D, 0x5C, 0x64, 0x7C, 0x35, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x7C, 0x38, 0x5B, 0x33, 0x36, 0x37, 0x38, 0x5D, 0x7C, 0x39, 0x5B, 0x31, 0x2D, 0x37, 0x5D, 0x29, 0x7C, 0x39, 0x28, 0x3F, 0x3A, 0x30, 0x5B, 0x31, 0x2D, 0x33, 0x36, 0x38, 0x39, 0x5D, 0x7C, 0x31, 0x5B, 0x31, 0x2D, 0x37, 0x39, 0x5D, 0x7C, 0x5B, 0x33, 0x37, 0x39, 0x5D, 0x5C, 0x64, 0x7C, 0x34, 0x5B, 0x31, 0x33, 0x5D, 0x7C, 0x35, 0x5B, 0x31, 0x2D, 0x35, 0x5D, 0x29, 0x29, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x7C, 0x38, 0x30, 0x28, 0x3F, 0x3A, 0x32, 0x39, 0x7C, 0x36, 0x5B, 0x30, 0x33, 0x35, 0x37, 0x38, 0x5D, 0x7C, 0x37, 0x5B, 0x30, 0x31, 0x38, 0x5D, 0x7C, 0x38, 0x31, 0x29, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x34, 0x2C, 0x31, 0x32, 0x7D, 0x32, 0x0A, 0x31, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x1A, 0x3D, 0x12, 0x26, 0x31, 0x28, 0x3F, 0x3A, 0x33, 0x5B, 0x30, 0x2D, 0x39, 0x5D, 0x7C, 0x34, 0x37, 0x7C, 0x35, 0x5B, 0x30, 0x31, 0x33, 0x35, 0x36, 0x38, 0x39, 0x5D, 0x7C, 0x38, 0x5B, 0x30, 0x35, 0x2D, 0x39, 0x5D, 0x29, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x31, 0x7D, 0x32, 0x0B, 0x31, 0x33, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x22, 0x28, 0x12, 0x0F, 0x28, 0x3F, 0x3A, 0x31, 0x30, 0x29, 0x3F, 0x38, 0x30, 0x30, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x09, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x2C, 0x31, 0x32, 0x7D, 0x32, 0x0A, 0x38, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x2A, 0x1E, 0x12, 0x0B, 0x31, 0x36, 0x5B, 0x30, 0x38, 0x5D, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x31, 0x36, 0x38, 0x31, 0x32, 0x33, 0x34, 0x35, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x1E, 0x12, 0x08, 0x34, 0x30, 0x30, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x34, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x4A, 0x02, 0x43, 0x4E, 0x50, 0x56, 0x5A, 0x02, 0x30, 0x30, 0x62, 0x01, 0x30, 0x7A, 0x01, 0x30, 0x9A, 0x01, 0x2A, 0x0A, 0x10, 0x28, 0x38, 0x30, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x1A, 0x08, 0x38, 0x30, 0x5B, 0x32, 0x36, 0x37, 0x38, 0x5D, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x2E, 0x0A, 0x16, 0x28, 0x5B, 0x34, 0x38, 0x5D, 0x30, 0x30, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x06, 0x5B, 0x34, 0x38, 0x5D, 0x30, 0x30, 0x22, 0x00, 0x2A, 0x00, 0x9A, 0x01, 0x24, 0x0A, 0x10, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x2C, 0x34, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x1A, 0x05, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x22, 0x00, 0x2A, 0x00, 0x9A, 0x01, 0x2B, 0x0A, 0x14, 0x28, 0x32, 0x31, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x2C, 0x36, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x02, 0x32, 0x31, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x73, 0x0A, 0x16, 0x28, 0x5B, 0x31, 0x32, 0x5D, 0x5C, 0x64, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x0F, 0x31, 0x30, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x7C, 0x32, 0x5B, 0x30, 0x32, 0x2D, 0x39, 0x5D, 0x1A, 0x0F, 0x31, 0x30, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x7C, 0x32, 0x5B, 0x30, 0x32, 0x2D, 0x39, 0x5D, 0x1A, 0x26, 0x31, 0x30, 0x28, 0x3F, 0x3A, 0x5B, 0x31, 0x2D, 0x37, 0x39, 0x5D, 0x7C, 0x38, 0x28, 0x3F, 0x3A, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x7C, 0x30, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x29, 0x29, 0x7C, 0x32, 0x5B, 0x30, 0x32, 0x2D, 0x39, 0x5D, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x7B, 0x0A, 0x15, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x51, 0x33, 0x28, 0x3F, 0x3A, 0x31, 0x31, 0x7C, 0x37, 0x5B, 0x31, 0x35, 0x39, 0x5D, 0x29, 0x7C, 0x34, 0x5B, 0x31, 0x33, 0x35, 0x5D, 0x31, 0x7C, 0x35, 0x28, 0x3F, 0x3A, 0x31, 0x7C, 0x32, 0x5B, 0x33, 0x37, 0x5D, 0x7C, 0x33, 0x5B, 0x31, 0x32, 0x5D, 0x7C, 0x37, 0x5B, 0x31, 0x33, 0x2D, 0x37, 0x39, 0x5D, 0x7C, 0x39, 0x5B, 0x31, 0x35, 0x5D, 0x29, 0x7C, 0x37, 0x28, 0x3F, 0x3A, 0x33, 0x31, 0x7C, 0x35, 0x5B, 0x34, 0x35, 0x37, 0x5D, 0x7C, 0x36, 0x5B, 0x30, 0x39, 0x5D, 0x29, 0x7C, 0x38, 0x39, 0x38, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0xD7, 0x02, 0x0A, 0x15, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0xAC, 0x02, 0x33, 0x28, 0x3F, 0x3A, 0x31, 0x5B, 0x30, 0x32, 0x2D, 0x39, 0x5D, 0x7C, 0x33, 0x35, 0x7C, 0x34, 0x39, 0x7C, 0x35, 0x7C, 0x37, 0x5B, 0x30, 0x32, 0x2D, 0x36, 0x38, 0x5D, 0x7C, 0x39, 0x5B, 0x31, 0x2D, 0x36, 0x38, 0x5D, 0x29, 0x7C, 0x34, 0x28, 0x3F, 0x3A, 0x31, 0x5B, 0x30, 0x32, 0x2D, 0x39, 0x5D, 0x7C, 0x32, 0x5B, 0x31, 0x37, 0x39, 0x5D, 0x7C, 0x5B, 0x33, 0x35, 0x5D, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x7C, 0x36, 0x5B, 0x34, 0x37, 0x38, 0x39, 0x5D, 0x7C, 0x37, 0x5B, 0x30, 0x2D, 0x34, 0x36, 0x2D, 0x39, 0x5D, 0x7C, 0x38, 0x5B, 0x32, 0x33, 0x5D, 0x29, 0x7C, 0x35, 0x28, 0x3F, 0x3A, 0x33, 0x5B, 0x30, 0x33, 0x2D, 0x39, 0x5D, 0x7C, 0x34, 0x5B, 0x33, 0x36, 0x5D, 0x7C, 0x35, 0x7C, 0x36, 0x5B, 0x31, 0x2D, 0x36, 0x5D, 0x7C, 0x37, 0x5B, 0x30, 0x32, 0x38, 0x5D, 0x7C, 0x38, 0x30, 0x7C, 0x39, 0x5B, 0x32, 0x2D, 0x34, 0x36, 0x2D, 0x39, 0x5D, 0x29, 0x7C, 0x36, 0x28, 0x3F, 0x3A, 0x33, 0x5B, 0x31, 0x2D, 0x35, 0x5D, 0x7C, 0x36, 0x5B, 0x30, 0x32, 0x33, 0x38, 0x5D, 0x7C, 0x39, 0x5B, 0x31, 0x32, 0x5D, 0x29, 0x7C, 0x37, 0x28, 0x3F, 0x3A, 0x30, 0x31, 0x7C, 0x5B, 0x31, 0x35, 0x37, 0x39, 0x5D, 0x7C, 0x32, 0x5B, 0x32, 0x34, 0x38, 0x5D, 0x7C, 0x33, 0x5B, 0x30, 0x34, 0x2D, 0x39, 0x5D, 0x7C, 0x34, 0x5B, 0x33, 0x2D, 0x36, 0x5D, 0x7C, 0x36, 0x5B, 0x32, 0x33, 0x36, 0x38, 0x5D, 0x29, 0x7C, 0x38, 0x28, 0x3F, 0x3A, 0x31, 0x5B, 0x32, 0x33, 0x36, 0x2D, 0x38, 0x5D, 0x7C, 0x32, 0x5B, 0x35, 0x2D, 0x37, 0x5D, 0x7C, 0x5B, 0x33, 0x37, 0x5D, 0x7C, 0x35, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x7C, 0x38, 0x5B, 0x33, 0x36, 0x37, 0x38, 0x5D, 0x7C, 0x39, 0x5B, 0x31, 0x2D, 0x37, 0x5D, 0x29, 0x7C, 0x39, 0x28, 0x3F, 0x3A, 0x30, 0x5B, 0x31, 0x2D, 0x33, 0x36, 0x38, 0x39, 0x5D, 0x7C, 0x31, 0x5B, 0x31, 0x2D, 0x37, 0x39, 0x5D, 0x7C, 0x5B, 0x33, 0x37, 0x39, 0x5D, 0x7C, 0x34, 0x5B, 0x31, 0x33, 0x5D, 0x7C, 0x35, 0x5B, 0x31, 0x2D, 0x35, 0x5D, 0x29, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x32, 0x0A, 0x19, 0x28, 0x31, 0x5B, 0x33, 0x2D, 0x35, 0x38, 0x5D, 0x5C, 0x64, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x07, 0x31, 0x5B, 0x33, 0x2D, 0x35, 0x38, 0x5D, 0x22, 0x00, 0x2A, 0x00, 0x9A, 0x01, 0x37, 0x0A, 0x15, 0x28, 0x31, 0x30, 0x38, 0x30, 0x30, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x03, 0x31, 0x30, 0x38, 0x1A, 0x04, 0x31, 0x30, 0x38, 0x30, 0x1A, 0x05, 0x31, 0x30, 0x38, 0x30, 0x30, 0x22, 0x00, 0x2A, 0x00, 0xA2, 0x01, 0x26, 0x0A, 0x14, 0x28, 0x32, 0x31, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x2C, 0x36, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x02, 0x32, 0x31, 0x2A, 0x00, 0xA2, 0x01, 0x6E, 0x0A, 0x16, 0x28, 0x5B, 0x31, 0x32, 0x5D, 0x5C, 0x64, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x0F, 0x31, 0x30, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x7C, 0x32, 0x5B, 0x30, 0x32, 0x2D, 0x39, 0x5D, 0x1A, 0x0F, 0x31, 0x30, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x7C, 0x32, 0x5B, 0x30, 0x32, 0x2D, 0x39, 0x5D, 0x1A, 0x26, 0x31, 0x30, 0x28, 0x3F, 0x3A, 0x5B, 0x31, 0x2D, 0x37, 0x39, 0x5D, 0x7C, 0x38, 0x28, 0x3F, 0x3A, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x7C, 0x30, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x29, 0x29, 0x7C, 0x32, 0x5B, 0x30, 0x32, 0x2D, 0x39, 0x5D, 0x2A, 0x00, 0xA2, 0x01, 0x25, 0x0A, 0x10, 0x28, 0x38, 0x30, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x1A, 0x08, 0x38, 0x30, 0x5B, 0x32, 0x36, 0x37, 0x38, 0x5D, 0x2A, 0x00, 0xA2, 0x01, 0x76, 0x0A, 0x15, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x51, 0x33, 0x28, 0x3F, 0x3A, 0x31, 0x31, 0x7C, 0x37, 0x5B, 0x31, 0x35, 0x39, 0x5D, 0x29, 0x7C, 0x34, 0x5B, 0x31, 0x33, 0x35, 0x5D, 0x31, 0x7C, 0x35, 0x28, 0x3F, 0x3A, 0x31, 0x7C, 0x32, 0x5B, 0x33, 0x37, 0x5D, 0x7C, 0x33, 0x5B, 0x31, 0x32, 0x5D, 0x7C, 0x37, 0x5B, 0x31, 0x33, 0x2D, 0x37, 0x39, 0x5D, 0x7C, 0x39, 0x5B, 0x31, 0x35, 0x5D, 0x29, 0x7C, 0x37, 0x28, 0x3F, 0x3A, 0x33, 0x31, 0x7C, 0x35, 0x5B, 0x34, 0x35, 0x37, 0x5D, 0x7C, 0x36, 0x5B, 0x30, 0x39, 0x5D, 0x29, 0x7C, 0x38, 0x39, 0x38, 0x2A, 0x00, 0xA2, 0x01, 0xD2, 0x02, 0x0A, 0x15, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0xAC, 0x02, 0x33, 0x28, 0x3F, 0x3A, 0x31, 0x5B, 0x30, 0x32, 0x2D, 0x39, 0x5D, 0x7C, 0x33, 0x35, 0x7C, 0x34, 0x39, 0x7C, 0x35, 0x7C, 0x37, 0x5B, 0x30, 0x32, 0x2D, 0x36, 0x38, 0x5D, 0x7C, 0x39, 0x5B, 0x31, 0x2D, 0x36, 0x38, 0x5D, 0x29, 0x7C, 0x34, 0x28, 0x3F, 0x3A, 0x31, 0x5B, 0x30, 0x32, 0x2D, 0x39, 0x5D, 0x7C, 0x32, 0x5B, 0x31, 0x37, 0x39, 0x5D, 0x7C, 0x5B, 0x33, 0x35, 0x5D, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x7C, 0x36, 0x5B, 0x34, 0x37, 0x38, 0x39, 0x5D, 0x7C, 0x37, 0x5B, 0x30, 0x2D, 0x34, 0x36, 0x2D, 0x39, 0x5D, 0x7C, 0x38, 0x5B, 0x32, 0x33, 0x5D, 0x29, 0x7C, 0x35, 0x28, 0x3F, 0x3A, 0x33, 0x5B, 0x30, 0x33, 0x2D, 0x39, 0x5D, 0x7C, 0x34, 0x5B, 0x33, 0x36, 0x5D, 0x7C, 0x35, 0x7C, 0x36, 0x5B, 0x31, 0x2D, 0x36, 0x5D, 0x7C, 0x37, 0x5B, 0x30, 0x32, 0x38, 0x5D, 0x7C, 0x38, 0x30, 0x7C, 0x39, 0x5B, 0x32, 0x2D, 0x34, 0x36, 0x2D, 0x39, 0x5D, 0x29, 0x7C, 0x36, 0x28, 0x3F, 0x3A, 0x33, 0x5B, 0x31, 0x2D, 0x35, 0x5D, 0x7C, 0x36, 0x5B, 0x30, 0x32, 0x33, 0x38, 0x5D, 0x7C, 0x39, 0x5B, 0x31, 0x32, 0x5D, 0x29, 0x7C, 0x37, 0x28, 0x3F, 0x3A, 0x30, 0x31, 0x7C, 0x5B, 0x31, 0x35, 0x37, 0x39, 0x5D, 0x7C, 0x32, 0x5B, 0x32, 0x34, 0x38, 0x5D, 0x7C, 0x33, 0x5B, 0x30, 0x34, 0x2D, 0x39, 0x5D, 0x7C, 0x34, 0x5B, 0x33, 0x2D, 0x36, 0x5D, 0x7C, 0x36, 0x5B, 0x32, 0x33, 0x36, 0x38, 0x5D, 0x29, 0x7C, 0x38, 0x28, 0x3F, 0x3A, 0x31, 0x5B, 0x32, 0x33, 0x36, 0x2D, 0x38, 0x5D, 0x7C, 0x32, 0x5B, 0x35, 0x2D, 0x37, 0x5D, 0x7C, 0x5B, 0x33, 0x37, 0x5D, 0x7C, 0x35, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x7C, 0x38, 0x5B, 0x33, 0x36, 0x37, 0x38, 0x5D, 0x7C, 0x39, 0x5B, 0x31, 0x2D, 0x37, 0x5D, 0x29, 0x7C, 0x39, 0x28, 0x3F, 0x3A, 0x30, 0x5B, 0x31, 0x2D, 0x33, 0x36, 0x38, 0x39, 0x5D, 0x7C, 0x31, 0x5B, 0x31, 0x2D, 0x37, 0x39, 0x5D, 0x7C, 0x5B, 0x33, 0x37, 0x39, 0x5D, 0x7C, 0x34, 0x5B, 0x31, 0x33, 0x5D, 0x7C, 0x35, 0x5B, 0x31, 0x2D, 0x35, 0x5D, 0x29, 0x2A, 0x00, 0xA2, 0x01, 0x30, 0x0A, 0x19, 0x28, 0x31, 0x5B, 0x33, 0x2D, 0x35, 0x38, 0x5D, 0x5C, 0x64, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x07, 0x31, 0x5B, 0x33, 0x2D, 0x35, 0x38, 0x5D, 0x2A, 0x00, 0xA2, 0x01, 0x2C, 0x0A, 0x16, 0x28, 0x5B, 0x34, 0x38, 0x5D, 0x30, 0x30, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x06, 0x5B, 0x34, 0x38, 0x5D, 0x30, 0x30, 0x2A, 0x00, 0xA2, 0x01, 0x35, 0x0A, 0x15, 0x28, 0x31, 0x30, 0x38, 0x30, 0x30, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x03, 0x31, 0x30, 0x38, 0x1A, 0x04, 0x31, 0x30, 0x38, 0x30, 0x1A, 0x05, 0x31, 0x30, 0x38, 0x30, 0x30, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xFC, 0x05, 0x0A, 0x27, 0x12, 0x1B, 0x28, 0x3F, 0x3A, 0x5B, 0x31, 0x33, 0x5D, 0x5C, 0x64, 0x7B, 0x30, 0x2C, 0x33, 0x7D, 0x7C, 0x5B, 0x32, 0x34, 0x2D, 0x38, 0x5D, 0x29, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x31, 0x31, 0x7D, 0x12, 0x24, 0x12, 0x11, 0x5B, 0x31, 0x32, 0x34, 0x2D, 0x38, 0x5D, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x1A, 0x34, 0x12, 0x1E, 0x33, 0x28, 0x3F, 0x3A, 0x30, 0x5B, 0x30, 0x2D, 0x32, 0x34, 0x5D, 0x7C, 0x31, 0x5B, 0x30, 0x2D, 0x38, 0x5D, 0x7C, 0x32, 0x5B, 0x30, 0x31, 0x5D, 0x29, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x33, 0x32, 0x31, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x22, 0x20, 0x12, 0x09, 0x31, 0x38, 0x30, 0x30, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x31, 0x7D, 0x32, 0x0B, 0x31, 0x38, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x2A, 0x2D, 0x12, 0x16, 0x31, 0x39, 0x28, 0x3F, 0x3A, 0x30, 0x5B, 0x30, 0x31, 0x5D, 0x7C, 0x34, 0x5B, 0x37, 0x38, 0x5D, 0x29, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x31, 0x7D, 0x32, 0x0B, 0x31, 0x39, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x43, 0x4F, 0x50, 0x39, 0x5A, 0x11, 0x30, 0x30, 0x5B, 0x35, 0x37, 0x39, 0x5D, 0x7C, 0x23, 0x35, 0x35, 0x35, 0x7C, 0x23, 0x39, 0x39, 0x39, 0x62, 0x01, 0x30, 0x7A, 0x14, 0x30, 0x28, 0x5B, 0x33, 0x35, 0x37, 0x39, 0x5D, 0x7C, 0x34, 0x28, 0x3F, 0x3A, 0x34, 0x34, 0x7C, 0x35, 0x36, 0x29, 0x29, 0x9A, 0x01, 0x6C, 0x0A, 0x0B, 0x28, 0x5C, 0x64, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x1A, 0x1F, 0x31, 0x28, 0x3F, 0x3A, 0x38, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x7C, 0x39, 0x5B, 0x30, 0x2D, 0x33, 0x5D, 0x7C, 0x5B, 0x32, 0x2D, 0x37, 0x5D, 0x29, 0x7C, 0x5B, 0x32, 0x34, 0x2D, 0x38, 0x5D, 0x1A, 0x26, 0x31, 0x28, 0x3F, 0x3A, 0x38, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x7C, 0x39, 0x28, 0x3F, 0x3A, 0x30, 0x39, 0x7C, 0x5B, 0x31, 0x2D, 0x33, 0x5D, 0x29, 0x7C, 0x5B, 0x32, 0x2D, 0x37, 0x5D, 0x29, 0x7C, 0x5B, 0x32, 0x34, 0x2D, 0x38, 0x5D, 0x22, 0x04, 0x28, 0x24, 0x31, 0x29, 0x2A, 0x07, 0x30, 0x24, 0x43, 0x43, 0x20, 0x24, 0x31, 0x9A, 0x01, 0x25, 0x0A, 0x0E, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x1A, 0x01, 0x33, 0x22, 0x00, 0x2A, 0x07, 0x30, 0x24, 0x43, 0x43, 0x20, 0x24, 0x31, 0x9A, 0x01, 0x4E, 0x0A, 0x11, 0x28, 0x31, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x2D, 0x24, 0x32, 0x2D, 0x24, 0x33, 0x1A, 0x0D, 0x31, 0x28, 0x3F, 0x3A, 0x38, 0x30, 0x7C, 0x39, 0x5B, 0x30, 0x34, 0x5D, 0x29, 0x1A, 0x19, 0x31, 0x28, 0x3F, 0x3A, 0x38, 0x30, 0x30, 0x7C, 0x39, 0x28, 0x3F, 0x3A, 0x30, 0x5B, 0x30, 0x31, 0x5D, 0x7C, 0x34, 0x5B, 0x37, 0x38, 0x5D, 0x29, 0x29, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0xA2, 0x01, 0x5F, 0x0A, 0x0B, 0x28, 0x5C, 0x64, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x1A, 0x1F, 0x31, 0x28, 0x3F, 0x3A, 0x38, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x7C, 0x39, 0x5B, 0x30, 0x2D, 0x33, 0x5D, 0x7C, 0x5B, 0x32, 0x2D, 0x37, 0x5D, 0x29, 0x7C, 0x5B, 0x32, 0x34, 0x2D, 0x38, 0x5D, 0x1A, 0x26, 0x31, 0x28, 0x3F, 0x3A, 0x38, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x7C, 0x39, 0x28, 0x3F, 0x3A, 0x30, 0x39, 0x7C, 0x5B, 0x31, 0x2D, 0x33, 0x5D, 0x29, 0x7C, 0x5B, 0x32, 0x2D, 0x37, 0x5D, 0x29, 0x7C, 0x5B, 0x32, 0x34, 0x2D, 0x38, 0x5D, 0x2A, 0x00, 0xA2, 0x01, 0x1C, 0x0A, 0x0E, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x1A, 0x01, 0x33, 0x2A, 0x00, 0xA2, 0x01, 0x49, 0x0A, 0x11, 0x28, 0x31, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x0D, 0x31, 0x28, 0x3F, 0x3A, 0x38, 0x30, 0x7C, 0x39, 0x5B, 0x30, 0x34, 0x5D, 0x29, 0x1A, 0x19, 0x31, 0x28, 0x3F, 0x3A, 0x38, 0x30, 0x30, 0x7C, 0x39, 0x28, 0x3F, 0x3A, 0x30, 0x5B, 0x30, 0x31, 0x5D, 0x7C, 0x34, 0x5B, 0x37, 0x38, 0x5D, 0x29, 0x29, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xF9, 0x02, 0x0A, 0x19, 0x12, 0x0D, 0x5B, 0x32, 0x34, 0x38, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x39, 0x7D, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x38, 0x2C, 0x31, 0x30, 0x7D, 0x12, 0x1F, 0x12, 0x0C, 0x32, 0x5B, 0x32, 0x34, 0x2D, 0x37, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x32, 0x32, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x1A, 0x2B, 0x12, 0x18, 0x38, 0x28, 0x3F, 0x3A, 0x5B, 0x33, 0x38, 0x39, 0x5D, 0x5C, 0x64, 0x7C, 0x37, 0x5B, 0x30, 0x2D, 0x33, 0x5D, 0x29, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x38, 0x33, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x22, 0x1E, 0x12, 0x08, 0x38, 0x30, 0x30, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x38, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x2A, 0x22, 0x12, 0x0C, 0x39, 0x30, 0x5B, 0x30, 0x35, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x39, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x1C, 0x12, 0x09, 0x34, 0x30, 0x30, 0x30, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x34, 0x30, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x4A, 0x02, 0x43, 0x52, 0x50, 0xFA, 0x03, 0x5A, 0x02, 0x30, 0x30, 0x7A, 0x06, 0x28, 0x31, 0x39, 0x30, 0x30, 0x29, 0x9A, 0x01, 0x2E, 0x0A, 0x0E, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x1A, 0x0B, 0x5B, 0x32, 0x34, 0x5D, 0x7C, 0x38, 0x5B, 0x33, 0x2D, 0x39, 0x5D, 0x22, 0x00, 0x2A, 0x06, 0x24, 0x43, 0x43, 0x20, 0x24, 0x31, 0x9A, 0x01, 0x32, 0x0A, 0x15, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x2D, 0x24, 0x32, 0x2D, 0x24, 0x33, 0x1A, 0x05, 0x5B, 0x38, 0x39, 0x5D, 0x30, 0x22, 0x00, 0x2A, 0x06, 0x24, 0x43, 0x43, 0x20, 0x24, 0x31, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xF8, 0x02, 0x0A, 0x18, 0x12, 0x0D, 0x5B, 0x32, 0x2D, 0x35, 0x37, 0x5D, 0x5C, 0x64, 0x7B, 0x35, 0x2C, 0x37, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x34, 0x2C, 0x38, 0x7D, 0x12, 0x6B, 0x12, 0x56, 0x32, 0x5B, 0x31, 0x2D, 0x34, 0x5D, 0x5C, 0x64, 0x7B, 0x35, 0x2C, 0x36, 0x7D, 0x7C, 0x33, 0x28, 0x3F, 0x3A, 0x31, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x7C, 0x5B, 0x32, 0x33, 0x5D, 0x5C, 0x64, 0x7B, 0x34, 0x2C, 0x36, 0x7D, 0x29, 0x7C, 0x34, 0x28, 0x3F, 0x3A, 0x5B, 0x31, 0x32, 0x35, 0x5D, 0x5C, 0x64, 0x7B, 0x35, 0x2C, 0x36, 0x7D, 0x7C, 0x5B, 0x33, 0x36, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x7C, 0x5B, 0x37, 0x38, 0x5D, 0x5C, 0x64, 0x7B, 0x34, 0x2C, 0x36, 0x7D, 0x29, 0x7C, 0x37, 0x5C, 0x64, 0x7B, 0x36, 0x2C, 0x37, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x34, 0x2C, 0x38, 0x7D, 0x32, 0x08, 0x37, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x1A, 0x19, 0x12, 0x06, 0x35, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x35, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x22, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x2A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x43, 0x55, 0x50, 0x35, 0x5A, 0x03, 0x31, 0x31, 0x39, 0x62, 0x01, 0x30, 0x7A, 0x01, 0x30, 0x9A, 0x01, 0x22, 0x0A, 0x0D, 0x28, 0x5C, 0x64, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x36, 0x2C, 0x37, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x1A, 0x01, 0x37, 0x22, 0x05, 0x28, 0x30, 0x24, 0x31, 0x29, 0x2A, 0x00, 0x9A, 0x01, 0x29, 0x0A, 0x10, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x2C, 0x36, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x1A, 0x05, 0x5B, 0x32, 0x2D, 0x34, 0x5D, 0x22, 0x05, 0x28, 0x30, 0x24, 0x31, 0x29, 0x2A, 0x00, 0x9A, 0x01, 0x1E, 0x0A, 0x0B, 0x28, 0x5C, 0x64, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x1A, 0x01, 0x35, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0x88, 0x02, 0x0A, 0x13, 0x12, 0x0A, 0x5B, 0x32, 0x35, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x12, 0x49, 0x12, 0x37, 0x32, 0x28, 0x3F, 0x3A, 0x32, 0x5B, 0x31, 0x2D, 0x37, 0x5D, 0x7C, 0x33, 0x5B, 0x30, 0x2D, 0x38, 0x5D, 0x7C, 0x34, 0x5B, 0x31, 0x32, 0x5D, 0x7C, 0x35, 0x5B, 0x31, 0x32, 0x35, 0x36, 0x5D, 0x7C, 0x36, 0x5C, 0x64, 0x7C, 0x37, 0x5B, 0x31, 0x2D, 0x33, 0x5D, 0x7C, 0x38, 0x5B, 0x31, 0x2D, 0x35, 0x5D, 0x29, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x32, 0x07, 0x32, 0x32, 0x31, 0x31, 0x32, 0x33, 0x34, 0x1A, 0x21, 0x12, 0x0F, 0x28, 0x3F, 0x3A, 0x39, 0x5C, 0x64, 0x7C, 0x35, 0x39, 0x29, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x32, 0x07, 0x39, 0x39, 0x31, 0x31, 0x32, 0x33, 0x34, 0x22, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x2A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x43, 0x56, 0x50, 0xEE, 0x01, 0x5A, 0x01, 0x30, 0x9A, 0x01, 0x25, 0x0A, 0x15, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x22, 0x00, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xA5, 0x02, 0x0A, 0x14, 0x12, 0x0B, 0x5B, 0x32, 0x37, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x12, 0x1E, 0x12, 0x0B, 0x32, 0x5B, 0x32, 0x2D, 0x36, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x32, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x1A, 0x33, 0x12, 0x20, 0x37, 0x37, 0x37, 0x37, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x7C, 0x39, 0x28, 0x3F, 0x3A, 0x5B, 0x36, 0x39, 0x5D, 0x5C, 0x64, 0x7C, 0x37, 0x5B, 0x36, 0x37, 0x5D, 0x29, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x39, 0x36, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x22, 0x1C, 0x12, 0x09, 0x38, 0x30, 0x30, 0x30, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x38, 0x30, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x2A, 0x1C, 0x12, 0x09, 0x39, 0x30, 0x30, 0x39, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x39, 0x30, 0x30, 0x39, 0x31, 0x32, 0x33, 0x34, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x1B, 0x12, 0x08, 0x37, 0x30, 0x30, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x37, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x43, 0x59, 0x50, 0xE5, 0x02, 0x5A, 0x02, 0x30, 0x30, 0x9A, 0x01, 0x1E, 0x0A, 0x11, 0x28, 0x5B, 0x32, 0x37, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x22, 0x00, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xE9, 0x02, 0x0A, 0x13, 0x12, 0x0A, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x12, 0x3D, 0x12, 0x29, 0x32, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x7C, 0x28, 0x3F, 0x3A, 0x33, 0x5B, 0x31, 0x32, 0x35, 0x37, 0x2D, 0x39, 0x5D, 0x7C, 0x34, 0x5B, 0x31, 0x36, 0x2D, 0x39, 0x5D, 0x7C, 0x35, 0x5B, 0x31, 0x33, 0x2D, 0x39, 0x5D, 0x29, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x32, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x1A, 0x2D, 0x12, 0x19, 0x36, 0x30, 0x5B, 0x31, 0x2D, 0x38, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x7C, 0x37, 0x5B, 0x32, 0x33, 0x37, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x36, 0x30, 0x31, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x22, 0x1C, 0x12, 0x08, 0x38, 0x30, 0x30, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x38, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x2A, 0x21, 0x12, 0x0D, 0x39, 0x30, 0x5B, 0x30, 0x36, 0x38, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x39, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x32, 0x1F, 0x12, 0x0B, 0x38, 0x5B, 0x31, 0x33, 0x34, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x38, 0x31, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x3A, 0x1F, 0x12, 0x0B, 0x37, 0x30, 0x5B, 0x30, 0x31, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x37, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x43, 0x5A, 0x50, 0xA4, 0x03, 0x5A, 0x02, 0x30, 0x30, 0x9A, 0x01, 0x2A, 0x0A, 0x1A, 0x28, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x22, 0x00, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0x9F, 0x0C, 0x0A, 0x4D, 0x12, 0x41, 0x5B, 0x31, 0x2D, 0x33, 0x35, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x33, 0x2C, 0x31, 0x33, 0x7D, 0x7C, 0x34, 0x28, 0x3F, 0x3A, 0x5B, 0x30, 0x2D, 0x38, 0x5D, 0x5C, 0x64, 0x7B, 0x34, 0x2C, 0x31, 0x32, 0x7D, 0x7C, 0x39, 0x28, 0x3F, 0x3A, 0x34, 0x5B, 0x31, 0x2D, 0x38, 0x5D, 0x7C, 0x5B, 0x30, 0x2D, 0x33, 0x35, 0x2D, 0x37, 0x5D, 0x5C, 0x64, 0x29, 0x5C, 0x64, 0x7B, 0x32, 0x2C, 0x37, 0x7D, 0x29, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x32, 0x2C, 0x31, 0x34, 0x7D, 0x12, 0xC5, 0x01, 0x12, 0xAE, 0x01, 0x5B, 0x32, 0x34, 0x36, 0x5D, 0x5C, 0x64, 0x7B, 0x35, 0x2C, 0x31, 0x33, 0x7D, 0x7C, 0x33, 0x28, 0x3F, 0x3A, 0x5B, 0x30, 0x33, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x34, 0x2C, 0x31, 0x31, 0x7D, 0x7C, 0x32, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x29, 0x7C, 0x35, 0x28, 0x3F, 0x3A, 0x30, 0x5B, 0x32, 0x2D, 0x38, 0x5D, 0x7C, 0x5B, 0x33, 0x38, 0x5D, 0x5B, 0x30, 0x2D, 0x38, 0x5D, 0x7C, 0x5B, 0x31, 0x32, 0x34, 0x2D, 0x36, 0x5D, 0x5C, 0x64, 0x7C, 0x5B, 0x37, 0x39, 0x5D, 0x5B, 0x30, 0x2D, 0x37, 0x5D, 0x29, 0x5C, 0x64, 0x7B, 0x33, 0x2C, 0x31, 0x30, 0x7D, 0x7C, 0x37, 0x28, 0x3F, 0x3A, 0x30, 0x5B, 0x32, 0x2D, 0x38, 0x5D, 0x7C, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x29, 0x5C, 0x64, 0x7B, 0x33, 0x2C, 0x31, 0x30, 0x7D, 0x7C, 0x38, 0x28, 0x3F, 0x3A, 0x30, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x7C, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x29, 0x5C, 0x64, 0x7B, 0x33, 0x2C, 0x31, 0x30, 0x7D, 0x7C, 0x39, 0x28, 0x3F, 0x3A, 0x30, 0x5B, 0x36, 0x2D, 0x39, 0x5D, 0x7C, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x29, 0x5C, 0x64, 0x7B, 0x33, 0x2C, 0x31, 0x30, 0x7D, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x32, 0x2C, 0x31, 0x34, 0x7D, 0x32, 0x08, 0x33, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x1A, 0x54, 0x12, 0x3A, 0x31, 0x28, 0x3F, 0x3A, 0x35, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x7C, 0x37, 0x28, 0x3F, 0x3A, 0x5B, 0x30, 0x2D, 0x35, 0x37, 0x2D, 0x39, 0x5D, 0x7C, 0x36, 0x5C, 0x64, 0x29, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x7C, 0x36, 0x28, 0x3F, 0x3A, 0x5B, 0x30, 0x32, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x38, 0x7D, 0x7C, 0x33, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x29, 0x29, 0x1A, 0x09, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x2C, 0x31, 0x31, 0x7D, 0x32, 0x0B, 0x31, 0x35, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x22, 0x23, 0x12, 0x0A, 0x38, 0x30, 0x30, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x39, 0x7D, 0x1A, 0x09, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x2C, 0x31, 0x32, 0x7D, 0x32, 0x0A, 0x38, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x2A, 0x31, 0x12, 0x18, 0x39, 0x30, 0x30, 0x28, 0x3F, 0x3A, 0x5B, 0x31, 0x33, 0x35, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x7C, 0x39, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x29, 0x1A, 0x09, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x2C, 0x31, 0x31, 0x7D, 0x32, 0x0A, 0x39, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x32, 0x21, 0x12, 0x0B, 0x31, 0x38, 0x30, 0x5C, 0x64, 0x7B, 0x35, 0x2C, 0x31, 0x31, 0x7D, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x38, 0x2C, 0x31, 0x34, 0x7D, 0x32, 0x08, 0x31, 0x38, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x3A, 0x1F, 0x12, 0x08, 0x37, 0x30, 0x30, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x31, 0x7D, 0x32, 0x0B, 0x37, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x44, 0x45, 0x50, 0x31, 0x5A, 0x02, 0x30, 0x30, 0x62, 0x01, 0x30, 0x7A, 0x01, 0x30, 0x9A, 0x01, 0x31, 0x0A, 0x11, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x2C, 0x31, 0x31, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x2F, 0x24, 0x32, 0x1A, 0x0E, 0x33, 0x5B, 0x30, 0x32, 0x5D, 0x7C, 0x34, 0x30, 0x7C, 0x5B, 0x36, 0x38, 0x5D, 0x39, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x6C, 0x0A, 0x11, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x2C, 0x31, 0x30, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x2F, 0x24, 0x32, 0x1A, 0x49, 0x32, 0x28, 0x3F, 0x3A, 0x5C, 0x64, 0x31, 0x7C, 0x30, 0x5B, 0x32, 0x33, 0x38, 0x39, 0x5D, 0x7C, 0x31, 0x5B, 0x32, 0x34, 0x5D, 0x7C, 0x32, 0x38, 0x7C, 0x33, 0x34, 0x29, 0x7C, 0x33, 0x28, 0x3F, 0x3A, 0x5B, 0x33, 0x2D, 0x39, 0x5D, 0x5B, 0x31, 0x35, 0x5D, 0x7C, 0x34, 0x30, 0x29, 0x7C, 0x5B, 0x34, 0x2D, 0x38, 0x5D, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x31, 0x7C, 0x39, 0x28, 0x3F, 0x3A, 0x30, 0x36, 0x7C, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x31, 0x29, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0xBD, 0x04, 0x0A, 0x10, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x2C, 0x38, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x2F, 0x24, 0x32, 0x1A, 0x51, 0x5B, 0x32, 0x34, 0x2D, 0x36, 0x5D, 0x7C, 0x5B, 0x37, 0x2D, 0x39, 0x5D, 0x28, 0x3F, 0x3A, 0x5C, 0x64, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x7C, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x29, 0x7C, 0x33, 0x28, 0x3F, 0x3A, 0x5B, 0x33, 0x35, 0x36, 0x39, 0x5D, 0x5B, 0x30, 0x32, 0x2D, 0x34, 0x36, 0x2D, 0x39, 0x5D, 0x7C, 0x34, 0x5B, 0x32, 0x2D, 0x34, 0x36, 0x37, 0x39, 0x5D, 0x7C, 0x37, 0x5B, 0x32, 0x2D, 0x34, 0x36, 0x37, 0x5D, 0x7C, 0x38, 0x5B, 0x32, 0x2D, 0x34, 0x36, 0x2D, 0x38, 0x5D, 0x29, 0x1A, 0xC7, 0x03, 0x5B, 0x32, 0x34, 0x2D, 0x36, 0x5D, 0x7C, 0x5B, 0x37, 0x2D, 0x39, 0x5D, 0x28, 0x3F, 0x3A, 0x5C, 0x64, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x7C, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x29, 0x7C, 0x33, 0x28, 0x3F, 0x3A, 0x33, 0x28, 0x3F, 0x3A, 0x30, 0x5B, 0x31, 0x2D, 0x34, 0x36, 0x37, 0x5D, 0x7C, 0x32, 0x5B, 0x31, 0x32, 0x37, 0x2D, 0x39, 0x5D, 0x7C, 0x33, 0x5B, 0x31, 0x32, 0x34, 0x35, 0x37, 0x38, 0x5D, 0x7C, 0x5B, 0x34, 0x36, 0x5D, 0x5B, 0x31, 0x32, 0x34, 0x36, 0x5D, 0x7C, 0x37, 0x5B, 0x31, 0x32, 0x35, 0x37, 0x2D, 0x39, 0x5D, 0x7C, 0x38, 0x5B, 0x31, 0x32, 0x35, 0x36, 0x5D, 0x7C, 0x39, 0x5B, 0x31, 0x34, 0x35, 0x5D, 0x29, 0x7C, 0x34, 0x28, 0x3F, 0x3A, 0x32, 0x5B, 0x31, 0x33, 0x35, 0x5D, 0x7C, 0x33, 0x5B, 0x31, 0x33, 0x35, 0x37, 0x5D, 0x7C, 0x34, 0x5B, 0x31, 0x33, 0x35, 0x37, 0x38, 0x5D, 0x7C, 0x36, 0x5B, 0x31, 0x32, 0x34, 0x36, 0x5D, 0x7C, 0x37, 0x5B, 0x31, 0x33, 0x35, 0x36, 0x5D, 0x7C, 0x39, 0x5B, 0x31, 0x33, 0x34, 0x36, 0x5D, 0x29, 0x7C, 0x35, 0x28, 0x3F, 0x3A, 0x30, 0x5B, 0x31, 0x34, 0x5D, 0x7C, 0x32, 0x5B, 0x31, 0x2D, 0x33, 0x35, 0x38, 0x39, 0x5D, 0x7C, 0x33, 0x5B, 0x31, 0x33, 0x35, 0x37, 0x5D, 0x7C, 0x34, 0x5B, 0x31, 0x32, 0x34, 0x36, 0x5D, 0x7C, 0x36, 0x5B, 0x31, 0x2D, 0x34, 0x5D, 0x7C, 0x37, 0x5B, 0x31, 0x33, 0x34, 0x36, 0x5D, 0x7C, 0x38, 0x5B, 0x31, 0x33, 0x35, 0x36, 0x38, 0x5D, 0x7C, 0x39, 0x5B, 0x31, 0x32, 0x34, 0x36, 0x5D, 0x29, 0x7C, 0x36, 0x28, 0x3F, 0x3A, 0x30, 0x5B, 0x33, 0x35, 0x36, 0x5D, 0x7C, 0x32, 0x5B, 0x31, 0x2D, 0x34, 0x38, 0x39, 0x5D, 0x7C, 0x33, 0x5B, 0x31, 0x32, 0x34, 0x2D, 0x36, 0x5D, 0x7C, 0x34, 0x5B, 0x31, 0x33, 0x34, 0x37, 0x5D, 0x7C, 0x36, 0x5B, 0x31, 0x33, 0x5D, 0x7C, 0x37, 0x5B, 0x31, 0x32, 0x35, 0x37, 0x39, 0x5D, 0x7C, 0x38, 0x5B, 0x31, 0x2D, 0x33, 0x35, 0x36, 0x5D, 0x7C, 0x39, 0x5B, 0x31, 0x33, 0x35, 0x5D, 0x29, 0x7C, 0x37, 0x28, 0x3F, 0x3A, 0x32, 0x5B, 0x31, 0x2D, 0x37, 0x5D, 0x7C, 0x33, 0x5B, 0x31, 0x33, 0x35, 0x37, 0x5D, 0x7C, 0x34, 0x5B, 0x31, 0x34, 0x35, 0x5D, 0x7C, 0x36, 0x5B, 0x31, 0x2D, 0x35, 0x5D, 0x7C, 0x37, 0x5B, 0x31, 0x2D, 0x34, 0x5D, 0x29, 0x7C, 0x38, 0x28, 0x3F, 0x3A, 0x32, 0x31, 0x7C, 0x33, 0x5B, 0x31, 0x34, 0x36, 0x38, 0x5D, 0x7C, 0x34, 0x5B, 0x31, 0x33, 0x34, 0x37, 0x5D, 0x7C, 0x36, 0x5B, 0x30, 0x31, 0x33, 0x35, 0x2D, 0x39, 0x5D, 0x7C, 0x37, 0x5B, 0x31, 0x34, 0x36, 0x37, 0x5D, 0x7C, 0x38, 0x5B, 0x31, 0x33, 0x36, 0x5D, 0x29, 0x7C, 0x39, 0x28, 0x3F, 0x3A, 0x30, 0x5B, 0x31, 0x32, 0x34, 0x37, 0x39, 0x5D, 0x7C, 0x32, 0x5B, 0x31, 0x33, 0x35, 0x38, 0x5D, 0x7C, 0x33, 0x5B, 0x31, 0x33, 0x35, 0x37, 0x5D, 0x7C, 0x34, 0x5B, 0x31, 0x33, 0x34, 0x36, 0x37, 0x39, 0x5D, 0x7C, 0x36, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x7C, 0x37, 0x5B, 0x31, 0x33, 0x36, 0x5D, 0x7C, 0x38, 0x5B, 0x31, 0x34, 0x37, 0x5D, 0x7C, 0x39, 0x5B, 0x31, 0x34, 0x36, 0x38, 0x5D, 0x29, 0x29, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x23, 0x0A, 0x10, 0x28, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x31, 0x2C, 0x36, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x2F, 0x24, 0x32, 0x1A, 0x01, 0x33, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x30, 0x0A, 0x14, 0x28, 0x5B, 0x31, 0x38, 0x5D, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x39, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x1A, 0x0A, 0x31, 0x5B, 0x35, 0x2D, 0x37, 0x5D, 0x7C, 0x38, 0x30, 0x30, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x43, 0x0A, 0x15, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x2C, 0x31, 0x30, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x0A, 0x28, 0x3F, 0x3A, 0x31, 0x38, 0x7C, 0x39, 0x30, 0x29, 0x30, 0x1A, 0x0D, 0x31, 0x38, 0x30, 0x7C, 0x39, 0x30, 0x30, 0x5B, 0x31, 0x33, 0x35, 0x39, 0x5D, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x2B, 0x0A, 0x13, 0x28, 0x37, 0x30, 0x30, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x03, 0x37, 0x30, 0x30, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0xAA, 0x01, 0x32, 0x12, 0x1C, 0x31, 0x36, 0x28, 0x3F, 0x3A, 0x34, 0x5C, 0x64, 0x7B, 0x31, 0x2C, 0x31, 0x30, 0x7D, 0x7C, 0x5B, 0x38, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x31, 0x2C, 0x31, 0x31, 0x7D, 0x29, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x34, 0x2C, 0x31, 0x34, 0x7D, 0x32, 0x08, 0x31, 0x36, 0x34, 0x31, 0x32, 0x33, 0x34, 0x35, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xE1, 0x01, 0x0A, 0x13, 0x12, 0x0A, 0x5B, 0x31, 0x2D, 0x38, 0x5D, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x12, 0x27, 0x12, 0x16, 0x28, 0x3F, 0x3A, 0x31, 0x5B, 0x30, 0x35, 0x5D, 0x7C, 0x5B, 0x32, 0x2D, 0x35, 0x5D, 0x5C, 0x64, 0x29, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x32, 0x06, 0x32, 0x35, 0x31, 0x32, 0x33, 0x34, 0x1A, 0x1B, 0x12, 0x0A, 0x5B, 0x36, 0x2D, 0x38, 0x5D, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x32, 0x06, 0x36, 0x30, 0x31, 0x32, 0x33, 0x34, 0x22, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x2A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x44, 0x4A, 0x50, 0xFD, 0x01, 0x5A, 0x02, 0x30, 0x30, 0x9A, 0x01, 0x25, 0x0A, 0x15, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x22, 0x00, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xE5, 0x02, 0x0A, 0x13, 0x12, 0x0A, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x12, 0x4E, 0x12, 0x3B, 0x28, 0x3F, 0x3A, 0x33, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x7C, 0x34, 0x5B, 0x33, 0x2D, 0x39, 0x5D, 0x7C, 0x35, 0x5B, 0x34, 0x2D, 0x39, 0x5D, 0x7C, 0x36, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x7C, 0x37, 0x5B, 0x30, 0x32, 0x2D, 0x39, 0x5D, 0x7C, 0x38, 0x5B, 0x32, 0x36, 0x2D, 0x39, 0x5D, 0x7C, 0x39, 0x5B, 0x36, 0x2D, 0x39, 0x5D, 0x29, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x33, 0x32, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x1A, 0x49, 0x12, 0x36, 0x28, 0x3F, 0x3A, 0x32, 0x5B, 0x30, 0x2D, 0x39, 0x5D, 0x7C, 0x33, 0x5B, 0x30, 0x2D, 0x32, 0x5D, 0x7C, 0x34, 0x5B, 0x30, 0x2D, 0x32, 0x5D, 0x7C, 0x35, 0x5B, 0x30, 0x2D, 0x33, 0x5D, 0x7C, 0x36, 0x5B, 0x30, 0x31, 0x5D, 0x7C, 0x37, 0x5B, 0x31, 0x32, 0x5D, 0x7C, 0x38, 0x31, 0x7C, 0x39, 0x39, 0x29, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x32, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x22, 0x1A, 0x12, 0x07, 0x38, 0x30, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x38, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x2A, 0x1A, 0x12, 0x07, 0x39, 0x30, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x39, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x44, 0x4B, 0x50, 0x2D, 0x5A, 0x02, 0x30, 0x30, 0x9A, 0x01, 0x31, 0x0A, 0x1E, 0x28, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x12, 0x0B, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x20, 0x24, 0x34, 0x22, 0x00, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0x90, 0x03, 0x0A, 0x1E, 0x12, 0x0B, 0x5B, 0x35, 0x37, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x1A, 0x0F, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x28, 0x3F, 0x3A, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x3F, 0x12, 0x52, 0x12, 0x33, 0x37, 0x36, 0x37, 0x28, 0x3F, 0x3A, 0x32, 0x28, 0x3F, 0x3A, 0x35, 0x35, 0x7C, 0x36, 0x36, 0x29, 0x7C, 0x34, 0x28, 0x3F, 0x3A, 0x32, 0x5B, 0x30, 0x31, 0x5D, 0x7C, 0x34, 0x5B, 0x30, 0x2D, 0x32, 0x35, 0x2D, 0x39, 0x5D, 0x29, 0x7C, 0x35, 0x30, 0x5B, 0x30, 0x2D, 0x34, 0x5D, 0x29, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x0F, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x28, 0x3F, 0x3A, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x3F, 0x32, 0x0A, 0x37, 0x36, 0x37, 0x34, 0x32, 0x30, 0x31, 0x32, 0x33, 0x34, 0x1A, 0x45, 0x12, 0x2F, 0x37, 0x36, 0x37, 0x28, 0x3F, 0x3A, 0x32, 0x28, 0x3F, 0x3A, 0x5B, 0x32, 0x33, 0x34, 0x36, 0x5D, 0x35, 0x7C, 0x37, 0x5B, 0x35, 0x2D, 0x37, 0x5D, 0x29, 0x7C, 0x33, 0x31, 0x5B, 0x35, 0x2D, 0x37, 0x5D, 0x7C, 0x36, 0x31, 0x5B, 0x34, 0x2D, 0x36, 0x5D, 0x29, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x37, 0x36, 0x37, 0x32, 0x32, 0x35, 0x31, 0x32, 0x33, 0x34, 0x22, 0x33, 0x12, 0x1D, 0x38, 0x28, 0x3F, 0x3A, 0x30, 0x30, 0x7C, 0x35, 0x35, 0x7C, 0x36, 0x36, 0x7C, 0x37, 0x37, 0x7C, 0x38, 0x38, 0x29, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x38, 0x30, 0x30, 0x32, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x2A, 0x23, 0x12, 0x0D, 0x39, 0x30, 0x30, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x39, 0x30, 0x30, 0x32, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x2D, 0x12, 0x17, 0x35, 0x28, 0x3F, 0x3A, 0x30, 0x30, 0x7C, 0x33, 0x33, 0x7C, 0x34, 0x34, 0x29, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x35, 0x30, 0x30, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x44, 0x4D, 0x50, 0x01, 0x5A, 0x03, 0x30, 0x31, 0x31, 0x62, 0x01, 0x31, 0x7A, 0x01, 0x31, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xBA, 0x01, 0x03, 0x37, 0x36, 0x37, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xDF, 0x02, 0x0A, 0x1D, 0x12, 0x0A, 0x5B, 0x35, 0x38, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x1A, 0x0F, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x28, 0x3F, 0x3A, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x3F, 0x12, 0x30, 0x12, 0x11, 0x38, 0x5B, 0x30, 0x32, 0x34, 0x5D, 0x39, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x0F, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x28, 0x3F, 0x3A, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x3F, 0x32, 0x0A, 0x38, 0x30, 0x39, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x1A, 0x30, 0x12, 0x11, 0x38, 0x5B, 0x30, 0x32, 0x34, 0x5D, 0x39, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x0F, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x28, 0x3F, 0x3A, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x3F, 0x32, 0x0A, 0x38, 0x30, 0x39, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x22, 0x33, 0x12, 0x1D, 0x38, 0x28, 0x3F, 0x3A, 0x30, 0x30, 0x7C, 0x35, 0x35, 0x7C, 0x36, 0x36, 0x7C, 0x37, 0x37, 0x7C, 0x38, 0x38, 0x29, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x38, 0x30, 0x30, 0x32, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x2A, 0x23, 0x12, 0x0D, 0x39, 0x30, 0x30, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x39, 0x30, 0x30, 0x32, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x2D, 0x12, 0x17, 0x35, 0x28, 0x3F, 0x3A, 0x30, 0x30, 0x7C, 0x33, 0x33, 0x7C, 0x34, 0x34, 0x29, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x35, 0x30, 0x30, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x44, 0x4F, 0x50, 0x01, 0x5A, 0x03, 0x30, 0x31, 0x31, 0x62, 0x01, 0x31, 0x7A, 0x01, 0x31, 0x90, 0x01, 0x01, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xBA, 0x01, 0x07, 0x38, 0x5B, 0x30, 0x32, 0x34, 0x5D, 0x39, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0x93, 0x04, 0x0A, 0x21, 0x12, 0x16, 0x28, 0x3F, 0x3A, 0x5B, 0x31, 0x2D, 0x34, 0x5D, 0x7C, 0x5B, 0x35, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x29, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x38, 0x2C, 0x39, 0x7D, 0x12, 0x47, 0x12, 0x32, 0x28, 0x3F, 0x3A, 0x31, 0x5C, 0x64, 0x7C, 0x32, 0x5B, 0x30, 0x31, 0x34, 0x2D, 0x37, 0x39, 0x5D, 0x7C, 0x33, 0x5B, 0x30, 0x2D, 0x38, 0x5D, 0x7C, 0x34, 0x5B, 0x30, 0x31, 0x33, 0x35, 0x36, 0x38, 0x39, 0x5D, 0x29, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x7C, 0x39, 0x36, 0x31, 0x39, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x38, 0x2C, 0x39, 0x7D, 0x32, 0x08, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x1A, 0x2E, 0x12, 0x1A, 0x28, 0x3F, 0x3A, 0x35, 0x5B, 0x35, 0x36, 0x5D, 0x7C, 0x36, 0x5B, 0x36, 0x39, 0x5D, 0x7C, 0x37, 0x5B, 0x37, 0x39, 0x5D, 0x29, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x35, 0x35, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x22, 0x1C, 0x12, 0x08, 0x38, 0x30, 0x30, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x38, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x2A, 0x23, 0x12, 0x0F, 0x38, 0x30, 0x5B, 0x33, 0x2D, 0x36, 0x38, 0x39, 0x5D, 0x31, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x38, 0x30, 0x38, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x32, 0x20, 0x12, 0x0C, 0x38, 0x30, 0x5B, 0x31, 0x32, 0x5D, 0x31, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x38, 0x30, 0x31, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x1F, 0x12, 0x0B, 0x39, 0x38, 0x5B, 0x32, 0x33, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x39, 0x38, 0x33, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x4A, 0x02, 0x44, 0x5A, 0x50, 0xD5, 0x01, 0x5A, 0x02, 0x30, 0x30, 0x62, 0x01, 0x30, 0x7A, 0x01, 0x30, 0x9A, 0x01, 0x3B, 0x0A, 0x1E, 0x28, 0x5B, 0x31, 0x2D, 0x34, 0x5D, 0x5C, 0x64, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x12, 0x0B, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x20, 0x24, 0x34, 0x1A, 0x05, 0x5B, 0x31, 0x2D, 0x34, 0x5D, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x3E, 0x0A, 0x21, 0x28, 0x5B, 0x35, 0x2D, 0x38, 0x5D, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x12, 0x0B, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x20, 0x24, 0x34, 0x1A, 0x05, 0x5B, 0x35, 0x2D, 0x38, 0x5D, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x33, 0x0A, 0x1A, 0x28, 0x39, 0x5C, 0x64, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x12, 0x0B, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x20, 0x24, 0x34, 0x1A, 0x01, 0x39, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xF7, 0x03, 0x0A, 0x20, 0x12, 0x14, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x7C, 0x31, 0x5C, 0x64, 0x7B, 0x39, 0x2C, 0x31, 0x30, 0x7D, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x31, 0x31, 0x7D, 0x12, 0x24, 0x12, 0x0F, 0x5B, 0x32, 0x2D, 0x37, 0x5D, 0x5B, 0x32, 0x2D, 0x37, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x38, 0x7D, 0x32, 0x08, 0x32, 0x32, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x1A, 0x1C, 0x12, 0x09, 0x5B, 0x38, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x39, 0x39, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x22, 0x25, 0x12, 0x0B, 0x31, 0x38, 0x30, 0x30, 0x5C, 0x64, 0x7B, 0x36, 0x2C, 0x37, 0x7D, 0x1A, 0x09, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x2C, 0x31, 0x31, 0x7D, 0x32, 0x0B, 0x31, 0x38, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x2A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x45, 0x43, 0x50, 0xD1, 0x04, 0x5A, 0x02, 0x30, 0x30, 0x62, 0x01, 0x30, 0x7A, 0x01, 0x30, 0x9A, 0x01, 0x2E, 0x0A, 0x12, 0x28, 0x5C, 0x64, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x2D, 0x24, 0x33, 0x1A, 0x05, 0x5B, 0x32, 0x2D, 0x37, 0x5D, 0x22, 0x05, 0x28, 0x30, 0x24, 0x31, 0x29, 0x2A, 0x00, 0x9A, 0x01, 0x2E, 0x0A, 0x15, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x04, 0x5B, 0x38, 0x39, 0x5D, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x2B, 0x0A, 0x16, 0x28, 0x31, 0x38, 0x30, 0x30, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x2C, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x01, 0x31, 0x22, 0x02, 0x24, 0x31, 0x2A, 0x00, 0xA2, 0x01, 0x27, 0x0A, 0x12, 0x28, 0x5C, 0x64, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x2D, 0x24, 0x32, 0x2D, 0x24, 0x33, 0x1A, 0x05, 0x5B, 0x32, 0x2D, 0x37, 0x5D, 0x2A, 0x00, 0xA2, 0x01, 0x29, 0x0A, 0x15, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x04, 0x5B, 0x38, 0x39, 0x5D, 0x2A, 0x00, 0xA2, 0x01, 0x27, 0x0A, 0x16, 0x28, 0x31, 0x38, 0x30, 0x30, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x2C, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x01, 0x31, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xE9, 0x05, 0x0A, 0x23, 0x12, 0x17, 0x5B, 0x33, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x2C, 0x37, 0x7D, 0x7C, 0x38, 0x30, 0x30, 0x5C, 0x64, 0x7B, 0x36, 0x2C, 0x37, 0x7D, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x31, 0x30, 0x7D, 0x12, 0x42, 0x12, 0x2E, 0x28, 0x3F, 0x3A, 0x33, 0x5B, 0x32, 0x33, 0x35, 0x38, 0x39, 0x5D, 0x7C, 0x34, 0x28, 0x3F, 0x3A, 0x30, 0x5C, 0x64, 0x7C, 0x5B, 0x33, 0x2D, 0x38, 0x5D, 0x29, 0x7C, 0x36, 0x5C, 0x64, 0x7C, 0x37, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x7C, 0x38, 0x38, 0x29, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x38, 0x7D, 0x32, 0x07, 0x33, 0x32, 0x31, 0x32, 0x33, 0x34, 0x35, 0x1A, 0x69, 0x12, 0x54, 0x28, 0x3F, 0x3A, 0x35, 0x5C, 0x64, 0x7C, 0x38, 0x5B, 0x31, 0x2D, 0x35, 0x5D, 0x29, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x7C, 0x35, 0x28, 0x3F, 0x3A, 0x5B, 0x30, 0x32, 0x5D, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x7C, 0x31, 0x28, 0x3F, 0x3A, 0x5B, 0x30, 0x2D, 0x38, 0x5D, 0x5C, 0x64, 0x7C, 0x39, 0x35, 0x29, 0x7C, 0x35, 0x5B, 0x30, 0x2D, 0x34, 0x37, 0x38, 0x5D, 0x5C, 0x64, 0x7C, 0x36, 0x34, 0x5B, 0x30, 0x2D, 0x34, 0x5D, 0x7C, 0x36, 0x35, 0x5B, 0x31, 0x2D, 0x35, 0x38, 0x39, 0x5D, 0x29, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x38, 0x7D, 0x32, 0x08, 0x35, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x22, 0x32, 0x12, 0x1C, 0x38, 0x30, 0x30, 0x28, 0x3F, 0x3A, 0x30, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x7C, 0x31, 0x5C, 0x64, 0x7C, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x29, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x31, 0x30, 0x7D, 0x32, 0x08, 0x38, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x2A, 0x1A, 0x12, 0x08, 0x39, 0x30, 0x30, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x32, 0x07, 0x39, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x1F, 0x12, 0x0C, 0x37, 0x30, 0x5B, 0x30, 0x2D, 0x32, 0x5D, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x37, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x45, 0x45, 0x50, 0xF4, 0x02, 0x5A, 0x02, 0x30, 0x30, 0x9A, 0x01, 0x9C, 0x01, 0x0A, 0x15, 0x28, 0x5B, 0x33, 0x34, 0x2D, 0x37, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x1A, 0x2D, 0x5B, 0x33, 0x36, 0x39, 0x5D, 0x7C, 0x34, 0x5B, 0x33, 0x2D, 0x38, 0x5D, 0x7C, 0x35, 0x28, 0x3F, 0x3A, 0x5B, 0x30, 0x2D, 0x32, 0x5D, 0x7C, 0x35, 0x5B, 0x30, 0x2D, 0x34, 0x37, 0x38, 0x5D, 0x7C, 0x36, 0x5B, 0x34, 0x35, 0x5D, 0x29, 0x7C, 0x37, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x1A, 0x49, 0x5B, 0x33, 0x36, 0x39, 0x5D, 0x7C, 0x34, 0x5B, 0x33, 0x2D, 0x38, 0x5D, 0x7C, 0x35, 0x28, 0x3F, 0x3A, 0x5B, 0x30, 0x32, 0x5D, 0x7C, 0x31, 0x28, 0x3F, 0x3A, 0x5B, 0x30, 0x2D, 0x38, 0x5D, 0x7C, 0x39, 0x35, 0x29, 0x7C, 0x35, 0x5B, 0x30, 0x2D, 0x34, 0x37, 0x38, 0x5D, 0x7C, 0x36, 0x28, 0x3F, 0x3A, 0x34, 0x5B, 0x30, 0x2D, 0x34, 0x5D, 0x7C, 0x35, 0x5B, 0x31, 0x2D, 0x35, 0x38, 0x39, 0x5D, 0x29, 0x29, 0x7C, 0x37, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x22, 0x00, 0x2A, 0x00, 0x9A, 0x01, 0x26, 0x0A, 0x12, 0x28, 0x37, 0x30, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x02, 0x37, 0x30, 0x22, 0x00, 0x2A, 0x00, 0x9A, 0x01, 0x2F, 0x0A, 0x14, 0x28, 0x38, 0x30, 0x30, 0x30, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x03, 0x38, 0x30, 0x30, 0x1A, 0x04, 0x38, 0x30, 0x30, 0x30, 0x22, 0x00, 0x2A, 0x00, 0x9A, 0x01, 0x4F, 0x0A, 0x15, 0x28, 0x5B, 0x34, 0x35, 0x38, 0x5D, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x2C, 0x34, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x1A, 0x12, 0x34, 0x30, 0x7C, 0x35, 0x7C, 0x38, 0x28, 0x3F, 0x3A, 0x30, 0x30, 0x7C, 0x5B, 0x31, 0x2D, 0x35, 0x5D, 0x29, 0x1A, 0x17, 0x34, 0x30, 0x7C, 0x35, 0x7C, 0x38, 0x28, 0x3F, 0x3A, 0x30, 0x30, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x7C, 0x5B, 0x31, 0x2D, 0x35, 0x5D, 0x29, 0x22, 0x00, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x1F, 0x12, 0x0D, 0x38, 0x30, 0x30, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x32, 0x07, 0x38, 0x30, 0x30, 0x32, 0x31, 0x32, 0x33, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0x98, 0x04, 0x0A, 0x23, 0x12, 0x17, 0x31, 0x5C, 0x64, 0x7B, 0x34, 0x2C, 0x39, 0x7D, 0x7C, 0x5B, 0x32, 0x2D, 0x36, 0x38, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x39, 0x7D, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x35, 0x2C, 0x31, 0x30, 0x7D, 0x12, 0xAF, 0x01, 0x12, 0x98, 0x01, 0x28, 0x3F, 0x3A, 0x31, 0x5B, 0x33, 0x35, 0x5D, 0x5B, 0x32, 0x33, 0x5D, 0x7C, 0x32, 0x5B, 0x32, 0x33, 0x5D, 0x5C, 0x64, 0x7C, 0x33, 0x5C, 0x64, 0x7C, 0x34, 0x28, 0x3F, 0x3A, 0x30, 0x5B, 0x32, 0x2D, 0x34, 0x5D, 0x7C, 0x5B, 0x35, 0x37, 0x38, 0x5D, 0x5B, 0x32, 0x33, 0x5D, 0x7C, 0x36, 0x34, 0x29, 0x7C, 0x35, 0x28, 0x3F, 0x3A, 0x30, 0x5B, 0x32, 0x33, 0x34, 0x5D, 0x7C, 0x5B, 0x35, 0x37, 0x5D, 0x5B, 0x32, 0x33, 0x5D, 0x29, 0x7C, 0x36, 0x5B, 0x32, 0x34, 0x2D, 0x36, 0x38, 0x39, 0x5D, 0x33, 0x7C, 0x38, 0x28, 0x3F, 0x3A, 0x5B, 0x32, 0x38, 0x5D, 0x5B, 0x32, 0x2D, 0x34, 0x5D, 0x7C, 0x34, 0x32, 0x7C, 0x36, 0x5B, 0x32, 0x33, 0x5D, 0x29, 0x7C, 0x39, 0x28, 0x3F, 0x3A, 0x5B, 0x32, 0x35, 0x5D, 0x32, 0x7C, 0x33, 0x5B, 0x32, 0x34, 0x5D, 0x7C, 0x36, 0x5B, 0x32, 0x33, 0x5D, 0x7C, 0x37, 0x5B, 0x32, 0x2D, 0x34, 0x5D, 0x29, 0x29, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x7C, 0x31, 0x5B, 0x36, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x35, 0x2C, 0x39, 0x7D, 0x32, 0x09, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x30, 0x1A, 0x23, 0x12, 0x0F, 0x31, 0x5B, 0x30, 0x2D, 0x32, 0x34, 0x36, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x31, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x22, 0x1E, 0x12, 0x08, 0x38, 0x30, 0x30, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x38, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x2A, 0x1E, 0x12, 0x08, 0x39, 0x30, 0x30, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x39, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x45, 0x47, 0x50, 0x14, 0x5A, 0x02, 0x30, 0x30, 0x62, 0x01, 0x30, 0x7A, 0x01, 0x30, 0x9A, 0x01, 0x23, 0x0A, 0x0D, 0x28, 0x5C, 0x64, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x38, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x1A, 0x04, 0x5B, 0x32, 0x33, 0x5D, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x30, 0x0A, 0x0E, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x1A, 0x10, 0x5B, 0x31, 0x34, 0x2D, 0x36, 0x5D, 0x7C, 0x5B, 0x38, 0x39, 0x5D, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x31, 0x0A, 0x16, 0x28, 0x5B, 0x38, 0x39, 0x5D, 0x30, 0x30, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x06, 0x5B, 0x38, 0x39, 0x5D, 0x30, 0x30, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0x89, 0x02, 0x0A, 0x15, 0x12, 0x0A, 0x5B, 0x31, 0x37, 0x38, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x36, 0x2C, 0x37, 0x7D, 0x12, 0x3D, 0x12, 0x29, 0x31, 0x28, 0x3F, 0x3A, 0x31, 0x5B, 0x31, 0x32, 0x35, 0x36, 0x38, 0x5D, 0x7C, 0x32, 0x30, 0x7C, 0x34, 0x30, 0x7C, 0x35, 0x35, 0x7C, 0x36, 0x5B, 0x31, 0x34, 0x36, 0x5D, 0x29, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x7C, 0x38, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x36, 0x2C, 0x37, 0x7D, 0x32, 0x07, 0x38, 0x33, 0x37, 0x30, 0x33, 0x36, 0x32, 0x1A, 0x25, 0x12, 0x13, 0x31, 0x37, 0x5B, 0x31, 0x2D, 0x33, 0x5D, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x7C, 0x37, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x32, 0x07, 0x37, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x22, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x2A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x45, 0x52, 0x50, 0xA3, 0x02, 0x5A, 0x02, 0x30, 0x30, 0x62, 0x01, 0x30, 0x7A, 0x01, 0x30, 0x9A, 0x01, 0x25, 0x0A, 0x12, 0x28, 0x5C, 0x64, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xD5, 0x02, 0x0A, 0x13, 0x12, 0x0A, 0x5B, 0x35, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x12, 0x22, 0x12, 0x0E, 0x5B, 0x38, 0x39, 0x5D, 0x5B, 0x31, 0x2D, 0x38, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x38, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x1A, 0x1A, 0x12, 0x06, 0x36, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x36, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x22, 0x1F, 0x12, 0x0B, 0x5B, 0x38, 0x39, 0x5D, 0x30, 0x30, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x38, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x2A, 0x20, 0x12, 0x0C, 0x38, 0x30, 0x5B, 0x33, 0x36, 0x37, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x38, 0x30, 0x33, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x32, 0x1F, 0x12, 0x0B, 0x39, 0x30, 0x5B, 0x31, 0x32, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x39, 0x30, 0x31, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x3A, 0x1B, 0x12, 0x07, 0x37, 0x30, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x37, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x45, 0x53, 0x50, 0x22, 0x5A, 0x02, 0x30, 0x30, 0x9A, 0x01, 0x34, 0x0A, 0x21, 0x28, 0x5B, 0x35, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x12, 0x0B, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x20, 0x24, 0x34, 0x22, 0x00, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x1B, 0x12, 0x07, 0x35, 0x31, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x35, 0x31, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x0A, 0xF5, 0x06, 0x0A, 0x16, 0x12, 0x0B, 0x5B, 0x31, 0x2D, 0x35, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x39, 0x7D, 0x12, 0xA6, 0x05, 0x12, 0x8F, 0x05, 0x28, 0x3F, 0x3A, 0x31, 0x31, 0x28, 0x3F, 0x3A, 0x31, 0x28, 0x3F, 0x3A, 0x31, 0x5B, 0x31, 0x32, 0x34, 0x5D, 0x7C, 0x32, 0x5B, 0x32, 0x2D, 0x35, 0x37, 0x5D, 0x7C, 0x33, 0x5B, 0x31, 0x2D, 0x35, 0x5D, 0x7C, 0x35, 0x5B, 0x35, 0x2D, 0x38, 0x5D, 0x7C, 0x38, 0x5B, 0x36, 0x2D, 0x38, 0x5D, 0x29, 0x7C, 0x32, 0x28, 0x3F, 0x3A, 0x31, 0x33, 0x7C, 0x33, 0x5B, 0x36, 0x2D, 0x38, 0x5D, 0x7C, 0x35, 0x5B, 0x38, 0x39, 0x5D, 0x7C, 0x37, 0x5B, 0x30, 0x35, 0x2D, 0x39, 0x5D, 0x7C, 0x38, 0x5B, 0x32, 0x2D, 0x36, 0x5D, 0x29, 0x7C, 0x33, 0x28, 0x3F, 0x3A, 0x32, 0x5B, 0x30, 0x31, 0x5D, 0x7C, 0x33, 0x5B, 0x30, 0x2D, 0x32, 0x38, 0x39, 0x5D, 0x7C, 0x34, 0x5B, 0x31, 0x32, 0x38, 0x39, 0x5D, 0x7C, 0x37, 0x5B, 0x31, 0x2D, 0x34, 0x5D, 0x7C, 0x38, 0x37, 0x29, 0x7C, 0x34, 0x28, 0x3F, 0x3A, 0x31, 0x5B, 0x36, 0x39, 0x5D, 0x7C, 0x33, 0x5B, 0x32, 0x2D, 0x34, 0x39, 0x5D, 0x7C, 0x34, 0x5B, 0x30, 0x2D, 0x32, 0x33, 0x5D, 0x7C, 0x36, 0x5B, 0x35, 0x2D, 0x38, 0x5D, 0x29, 0x7C, 0x35, 0x28, 0x3F, 0x3A, 0x31, 0x5B, 0x35, 0x37, 0x5D, 0x7C, 0x34, 0x34, 0x7C, 0x35, 0x5B, 0x30, 0x2D, 0x34, 0x5D, 0x29, 0x7C, 0x36, 0x28, 0x3F, 0x3A, 0x31, 0x38, 0x7C, 0x32, 0x5B, 0x36, 0x39, 0x5D, 0x7C, 0x34, 0x5B, 0x35, 0x2D, 0x37, 0x5D, 0x7C, 0x35, 0x5B, 0x31, 0x2D, 0x35, 0x5D, 0x7C, 0x36, 0x5B, 0x30, 0x2D, 0x35, 0x39, 0x5D, 0x7C, 0x38, 0x5B, 0x30, 0x31, 0x35, 0x2D, 0x38, 0x5D, 0x29, 0x29, 0x7C, 0x32, 0x28, 0x3F, 0x3A, 0x32, 0x28, 0x3F, 0x3A, 0x31, 0x31, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x7C, 0x32, 0x32, 0x5B, 0x30, 0x2D, 0x37, 0x5D, 0x7C, 0x33, 0x33, 0x5C, 0x64, 0x7C, 0x34, 0x34, 0x5B, 0x31, 0x34, 0x36, 0x37, 0x5D, 0x7C, 0x36, 0x36, 0x5B, 0x31, 0x2D, 0x36, 0x38, 0x5D, 0x29, 0x7C, 0x35, 0x28, 0x3F, 0x3A, 0x31, 0x31, 0x5B, 0x31, 0x32, 0x34, 0x2D, 0x36, 0x5D, 0x7C, 0x33, 0x33, 0x5B, 0x32, 0x2D, 0x38, 0x5D, 0x7C, 0x34, 0x34, 0x5B, 0x31, 0x34, 0x36, 0x37, 0x5D, 0x7C, 0x35, 0x35, 0x5B, 0x31, 0x34, 0x5D, 0x7C, 0x36, 0x36, 0x5B, 0x31, 0x2D, 0x33, 0x36, 0x37, 0x39, 0x5D, 0x7C, 0x37, 0x37, 0x5B, 0x31, 0x32, 0x34, 0x2D, 0x37, 0x39, 0x5D, 0x7C, 0x38, 0x38, 0x30, 0x29, 0x29, 0x7C, 0x33, 0x28, 0x3F, 0x3A, 0x33, 0x28, 0x3F, 0x3A, 0x31, 0x31, 0x5B, 0x30, 0x2D, 0x34, 0x36, 0x2D, 0x38, 0x5D, 0x7C, 0x32, 0x32, 0x5B, 0x30, 0x2D, 0x36, 0x5D, 0x7C, 0x33, 0x33, 0x5B, 0x30, 0x31, 0x33, 0x34, 0x36, 0x38, 0x39, 0x5D, 0x7C, 0x34, 0x34, 0x5B, 0x30, 0x34, 0x5D, 0x7C, 0x35, 0x35, 0x5B, 0x30, 0x2D, 0x36, 0x5D, 0x7C, 0x36, 0x36, 0x5B, 0x30, 0x31, 0x34, 0x36, 0x37, 0x5D, 0x29, 0x7C, 0x34, 0x28, 0x3F, 0x3A, 0x34, 0x34, 0x5B, 0x30, 0x2D, 0x38, 0x5D, 0x7C, 0x35, 0x35, 0x5B, 0x30, 0x2D, 0x36, 0x39, 0x5D, 0x7C, 0x36, 0x36, 0x5B, 0x30, 0x2D, 0x33, 0x5D, 0x7C, 0x37, 0x37, 0x5B, 0x31, 0x2D, 0x35, 0x5D, 0x29, 0x29, 0x7C, 0x34, 0x28, 0x3F, 0x3A, 0x36, 0x28, 0x3F, 0x3A, 0x32, 0x32, 0x5B, 0x30, 0x2D, 0x32, 0x34, 0x2D, 0x37, 0x5D, 0x7C, 0x33, 0x33, 0x5B, 0x31, 0x2D, 0x35, 0x5D, 0x7C, 0x34, 0x34, 0x5B, 0x31, 0x33, 0x2D, 0x36, 0x39, 0x5D, 0x7C, 0x35, 0x35, 0x5B, 0x31, 0x34, 0x2D, 0x36, 0x38, 0x39, 0x5D, 0x7C, 0x36, 0x36, 0x30, 0x7C, 0x38, 0x38, 0x5B, 0x31, 0x2D, 0x34, 0x5D, 0x29, 0x7C, 0x37, 0x28, 0x3F, 0x3A, 0x31, 0x31, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x7C, 0x32, 0x32, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x7C, 0x33, 0x33, 0x5B, 0x31, 0x33, 0x2D, 0x37, 0x5D, 0x7C, 0x34, 0x34, 0x5B, 0x31, 0x33, 0x2D, 0x36, 0x5D, 0x7C, 0x35, 0x35, 0x5B, 0x31, 0x2D, 0x36, 0x38, 0x39, 0x5D, 0x29, 0x29, 0x7C, 0x35, 0x28, 0x3F, 0x3A, 0x37, 0x28, 0x3F, 0x3A, 0x32, 0x32, 0x37, 0x7C, 0x35, 0x35, 0x5B, 0x30, 0x35, 0x5D, 0x7C, 0x28, 0x3F, 0x3A, 0x36, 0x36, 0x7C, 0x37, 0x37, 0x29, 0x5B, 0x31, 0x34, 0x2D, 0x38, 0x5D, 0x29, 0x7C, 0x38, 0x28, 0x3F, 0x3A, 0x31, 0x31, 0x5B, 0x31, 0x34, 0x39, 0x5D, 0x7C, 0x32, 0x32, 0x5B, 0x30, 0x31, 0x33, 0x2D, 0x37, 0x39, 0x5D, 0x7C, 0x33, 0x33, 0x5B, 0x30, 0x2D, 0x36, 0x38, 0x5D, 0x7C, 0x34, 0x34, 0x5B, 0x30, 0x31, 0x33, 0x2D, 0x38, 0x5D, 0x7C, 0x35, 0x35, 0x30, 0x7C, 0x36, 0x36, 0x5B, 0x31, 0x2D, 0x35, 0x5D, 0x7C, 0x37, 0x37, 0x5C, 0x64, 0x29, 0x29, 0x29, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x39, 0x7D, 0x32, 0x09, 0x31, 0x31, 0x31, 0x31, 0x31, 0x32, 0x33, 0x34, 0x35, 0x1A, 0x20, 0x12, 0x0C, 0x39, 0x31, 0x5B, 0x30, 0x2D, 0x38, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x39, 0x31, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x22, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x2A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x45, 0x54, 0x50, 0xFB, 0x01, 0x5A, 0x02, 0x30, 0x30, 0x62, 0x01, 0x30, 0x7A, 0x01, 0x30, 0x9A, 0x01, 0x2B, 0x0A, 0x18, 0x28, 0x5B, 0x31, 0x2D, 0x35, 0x39, 0x5D, 0x5C, 0x64, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xA0, 0x05, 0x0A, 0x23, 0x12, 0x17, 0x31, 0x5C, 0x64, 0x7B, 0x34, 0x2C, 0x31, 0x31, 0x7D, 0x7C, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x34, 0x2C, 0x31, 0x30, 0x7D, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x35, 0x2C, 0x31, 0x32, 0x7D, 0x12, 0x7A, 0x12, 0x62, 0x31, 0x28, 0x3F, 0x3A, 0x5B, 0x33, 0x35, 0x36, 0x38, 0x39, 0x5D, 0x5B, 0x31, 0x2D, 0x38, 0x5D, 0x5C, 0x64, 0x7B, 0x33, 0x2C, 0x39, 0x7D, 0x7C, 0x5B, 0x34, 0x37, 0x5D, 0x5C, 0x64, 0x7B, 0x35, 0x2C, 0x31, 0x30, 0x7D, 0x29, 0x7C, 0x32, 0x5B, 0x31, 0x2D, 0x38, 0x5D, 0x5C, 0x64, 0x7B, 0x33, 0x2C, 0x39, 0x7D, 0x7C, 0x33, 0x28, 0x3F, 0x3A, 0x5B, 0x31, 0x2D, 0x38, 0x5D, 0x5C, 0x64, 0x7B, 0x33, 0x2C, 0x39, 0x7D, 0x7C, 0x39, 0x5C, 0x64, 0x7B, 0x34, 0x2C, 0x38, 0x7D, 0x29, 0x7C, 0x5B, 0x35, 0x36, 0x38, 0x39, 0x5D, 0x5B, 0x31, 0x2D, 0x38, 0x5D, 0x5C, 0x64, 0x7B, 0x33, 0x2C, 0x39, 0x7D, 0x7C, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x35, 0x2C, 0x31, 0x32, 0x7D, 0x32, 0x0A, 0x31, 0x33, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x1A, 0x2A, 0x12, 0x13, 0x34, 0x5C, 0x64, 0x7B, 0x35, 0x2C, 0x31, 0x30, 0x7D, 0x7C, 0x35, 0x30, 0x5C, 0x64, 0x7B, 0x34, 0x2C, 0x38, 0x7D, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x36, 0x2C, 0x31, 0x31, 0x7D, 0x32, 0x09, 0x34, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x22, 0x22, 0x12, 0x0A, 0x38, 0x30, 0x30, 0x5C, 0x64, 0x7B, 0x34, 0x2C, 0x37, 0x7D, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x38, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x2A, 0x23, 0x12, 0x0D, 0x5B, 0x36, 0x37, 0x5D, 0x30, 0x30, 0x5C, 0x64, 0x7B, 0x35, 0x2C, 0x36, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x38, 0x2C, 0x39, 0x7D, 0x32, 0x09, 0x36, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x46, 0x49, 0x50, 0xE6, 0x02, 0x5A, 0x0A, 0x30, 0x30, 0x7C, 0x39, 0x39, 0x5B, 0x30, 0x34, 0x39, 0x5D, 0x62, 0x01, 0x30, 0x7A, 0x01, 0x30, 0x9A, 0x01, 0x37, 0x0A, 0x11, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x2C, 0x31, 0x30, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x1A, 0x14, 0x32, 0x5B, 0x30, 0x39, 0x5D, 0x7C, 0x5B, 0x31, 0x34, 0x5D, 0x7C, 0x35, 0x30, 0x7C, 0x37, 0x5B, 0x31, 0x33, 0x35, 0x5D, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x2E, 0x0A, 0x0E, 0x28, 0x5C, 0x64, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x2C, 0x31, 0x31, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x1A, 0x0E, 0x5B, 0x32, 0x35, 0x36, 0x38, 0x39, 0x5D, 0x5B, 0x31, 0x2D, 0x38, 0x5D, 0x7C, 0x33, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x2A, 0x0A, 0x12, 0x28, 0x5B, 0x36, 0x2D, 0x38, 0x5D, 0x30, 0x30, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x2C, 0x37, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x1A, 0x06, 0x5B, 0x36, 0x2D, 0x38, 0x5D, 0x30, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0xA1, 0x01, 0x12, 0x8A, 0x01, 0x31, 0x30, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x33, 0x2C, 0x37, 0x7D, 0x7C, 0x32, 0x28, 0x3F, 0x3A, 0x30, 0x28, 0x3F, 0x3A, 0x5B, 0x31, 0x36, 0x2D, 0x38, 0x5D, 0x5C, 0x64, 0x7B, 0x33, 0x2C, 0x37, 0x7D, 0x7C, 0x32, 0x5B, 0x31, 0x34, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x31, 0x2C, 0x36, 0x7D, 0x7C, 0x5B, 0x33, 0x2D, 0x35, 0x5D, 0x5C, 0x64, 0x7B, 0x32, 0x2C, 0x37, 0x7D, 0x7C, 0x39, 0x5B, 0x30, 0x2D, 0x37, 0x5D, 0x5C, 0x64, 0x7B, 0x31, 0x2C, 0x36, 0x7D, 0x29, 0x7C, 0x39, 0x5C, 0x64, 0x7B, 0x34, 0x2C, 0x38, 0x7D, 0x29, 0x7C, 0x33, 0x30, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x33, 0x2C, 0x37, 0x7D, 0x7C, 0x37, 0x28, 0x3F, 0x3A, 0x31, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x7C, 0x33, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x7C, 0x35, 0x5B, 0x30, 0x33, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x32, 0x2C, 0x37, 0x7D, 0x29, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x36, 0x2C, 0x31, 0x30, 0x7D, 0x32, 0x08, 0x31, 0x30, 0x31, 0x31, 0x32, 0x33, 0x34, 0x35, 0x0A, 0xD8, 0x02, 0x0A, 0x26, 0x12, 0x13, 0x5B, 0x33, 0x36, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x7C, 0x30, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x1A, 0x0F, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x28, 0x3F, 0x3A, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x3F, 0x12, 0x2F, 0x12, 0x1D, 0x28, 0x3F, 0x3A, 0x33, 0x5B, 0x30, 0x2D, 0x35, 0x5D, 0x7C, 0x36, 0x5B, 0x32, 0x35, 0x2D, 0x37, 0x5D, 0x7C, 0x38, 0x5B, 0x35, 0x38, 0x5D, 0x29, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x32, 0x07, 0x33, 0x32, 0x31, 0x32, 0x33, 0x34, 0x35, 0x1A, 0x27, 0x12, 0x15, 0x28, 0x3F, 0x3A, 0x37, 0x5B, 0x30, 0x2D, 0x34, 0x5D, 0x7C, 0x39, 0x5B, 0x32, 0x39, 0x5D, 0x29, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x32, 0x07, 0x37, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x22, 0x20, 0x12, 0x09, 0x30, 0x38, 0x30, 0x30, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x31, 0x7D, 0x32, 0x0B, 0x30, 0x38, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x2A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x46, 0x4A, 0x50, 0xA7, 0x05, 0x5A, 0x09, 0x30, 0x28, 0x3F, 0x3A, 0x30, 0x7C, 0x35, 0x32, 0x29, 0x8A, 0x01, 0x02, 0x30, 0x30, 0x9A, 0x01, 0x23, 0x0A, 0x0E, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x1A, 0x06, 0x5B, 0x33, 0x36, 0x2D, 0x39, 0x5D, 0x22, 0x00, 0x2A, 0x00, 0x9A, 0x01, 0x28, 0x0A, 0x15, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x01, 0x30, 0x22, 0x00, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xD0, 0x01, 0x01, 0x0A, 0xAB, 0x01, 0x0A, 0x13, 0x12, 0x0A, 0x5B, 0x32, 0x2D, 0x37, 0x5D, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x12, 0x1B, 0x12, 0x0B, 0x5B, 0x32, 0x2D, 0x34, 0x37, 0x5D, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x32, 0x05, 0x33, 0x31, 0x32, 0x33, 0x34, 0x1A, 0x19, 0x12, 0x09, 0x5B, 0x35, 0x36, 0x5D, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x32, 0x05, 0x35, 0x31, 0x32, 0x33, 0x34, 0x22, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x2A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x46, 0x4B, 0x50, 0xF4, 0x03, 0x5A, 0x02, 0x30, 0x30, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xF4, 0x01, 0x0A, 0x12, 0x12, 0x09, 0x5B, 0x33, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x12, 0x30, 0x12, 0x1E, 0x33, 0x5B, 0x32, 0x33, 0x35, 0x37, 0x5D, 0x30, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x7C, 0x39, 0x5B, 0x32, 0x2D, 0x36, 0x5D, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x32, 0x07, 0x33, 0x32, 0x30, 0x31, 0x32, 0x33, 0x34, 0x1A, 0x30, 0x12, 0x1E, 0x33, 0x5B, 0x32, 0x33, 0x35, 0x37, 0x5D, 0x30, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x7C, 0x39, 0x5B, 0x32, 0x2D, 0x37, 0x5D, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x32, 0x07, 0x33, 0x35, 0x30, 0x31, 0x32, 0x33, 0x34, 0x22, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x2A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x46, 0x4D, 0x50, 0xB3, 0x05, 0x5A, 0x02, 0x30, 0x30, 0x9A, 0x01, 0x1B, 0x0A, 0x0E, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x22, 0x00, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xDB, 0x02, 0x0A, 0x13, 0x12, 0x0A, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x12, 0x2A, 0x12, 0x19, 0x28, 0x3F, 0x3A, 0x32, 0x30, 0x7C, 0x5B, 0x33, 0x2D, 0x34, 0x5D, 0x5C, 0x64, 0x7C, 0x38, 0x5B, 0x31, 0x39, 0x5D, 0x29, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x32, 0x06, 0x32, 0x30, 0x31, 0x32, 0x33, 0x34, 0x1A, 0x2C, 0x12, 0x1B, 0x28, 0x3F, 0x3A, 0x32, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x7C, 0x35, 0x5C, 0x64, 0x7C, 0x37, 0x5B, 0x31, 0x2D, 0x37, 0x39, 0x5D, 0x29, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x32, 0x06, 0x32, 0x31, 0x31, 0x32, 0x33, 0x34, 0x22, 0x1F, 0x12, 0x0E, 0x38, 0x30, 0x5B, 0x32, 0x35, 0x37, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x32, 0x06, 0x38, 0x30, 0x32, 0x31, 0x32, 0x33, 0x2A, 0x34, 0x12, 0x23, 0x39, 0x30, 0x28, 0x3F, 0x3A, 0x5B, 0x31, 0x33, 0x34, 0x35, 0x5D, 0x5B, 0x31, 0x35, 0x2D, 0x37, 0x5D, 0x7C, 0x32, 0x5B, 0x31, 0x32, 0x35, 0x2D, 0x37, 0x5D, 0x7C, 0x39, 0x39, 0x29, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x32, 0x06, 0x39, 0x30, 0x31, 0x31, 0x32, 0x33, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x24, 0x12, 0x13, 0x28, 0x3F, 0x3A, 0x36, 0x5B, 0x30, 0x2D, 0x33, 0x36, 0x5D, 0x7C, 0x38, 0x38, 0x29, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x32, 0x06, 0x36, 0x30, 0x31, 0x32, 0x33, 0x34, 0x4A, 0x02, 0x46, 0x4F, 0x50, 0xAA, 0x02, 0x5A, 0x02, 0x30, 0x30, 0x7A, 0x13, 0x28, 0x31, 0x30, 0x28, 0x3F, 0x3A, 0x30, 0x31, 0x7C, 0x5B, 0x31, 0x32, 0x5D, 0x30, 0x7C, 0x38, 0x38, 0x29, 0x29, 0x9A, 0x01, 0x17, 0x0A, 0x07, 0x28, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x29, 0x12, 0x02, 0x24, 0x31, 0x22, 0x00, 0x2A, 0x06, 0x24, 0x43, 0x43, 0x20, 0x24, 0x31, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xB7, 0x03, 0x0A, 0x13, 0x12, 0x0A, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x12, 0x1E, 0x12, 0x0A, 0x5B, 0x31, 0x2D, 0x35, 0x5D, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x1A, 0x26, 0x12, 0x12, 0x36, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x7C, 0x37, 0x5B, 0x35, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x36, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x22, 0x1B, 0x12, 0x07, 0x38, 0x30, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x38, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x2A, 0x23, 0x12, 0x0F, 0x38, 0x39, 0x5B, 0x31, 0x2D, 0x33, 0x37, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x38, 0x39, 0x31, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x32, 0x32, 0x12, 0x1E, 0x38, 0x28, 0x3F, 0x3A, 0x31, 0x5B, 0x30, 0x31, 0x39, 0x5D, 0x7C, 0x32, 0x5B, 0x30, 0x31, 0x35, 0x36, 0x5D, 0x7C, 0x38, 0x34, 0x7C, 0x39, 0x30, 0x29, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x38, 0x31, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x1A, 0x12, 0x06, 0x39, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x39, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x4A, 0x02, 0x46, 0x52, 0x50, 0x21, 0x5A, 0x08, 0x5B, 0x30, 0x34, 0x35, 0x37, 0x39, 0x5D, 0x30, 0x62, 0x01, 0x30, 0x7A, 0x01, 0x30, 0x8A, 0x01, 0x02, 0x30, 0x30, 0x9A, 0x01, 0x45, 0x0A, 0x24, 0x28, 0x5B, 0x31, 0x2D, 0x37, 0x39, 0x5D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x12, 0x0E, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x20, 0x24, 0x34, 0x20, 0x24, 0x35, 0x1A, 0x06, 0x5B, 0x31, 0x2D, 0x37, 0x39, 0x5D, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x37, 0x0A, 0x1D, 0x28, 0x38, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x12, 0x0B, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x20, 0x24, 0x34, 0x1A, 0x01, 0x38, 0x22, 0x04, 0x30, 0x20, 0x24, 0x31, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xEF, 0x03, 0x0A, 0x1C, 0x12, 0x11, 0x5B, 0x34, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x7C, 0x30, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x36, 0x2C, 0x38, 0x7D, 0x12, 0x5A, 0x12, 0x49, 0x28, 0x3F, 0x3A, 0x34, 0x28, 0x3F, 0x3A, 0x5B, 0x30, 0x34, 0x2D, 0x38, 0x5D, 0x5C, 0x64, 0x7C, 0x32, 0x5B, 0x30, 0x34, 0x5D, 0x29, 0x7C, 0x28, 0x3F, 0x3A, 0x35, 0x5B, 0x30, 0x34, 0x2D, 0x36, 0x38, 0x39, 0x5D, 0x7C, 0x36, 0x5B, 0x30, 0x32, 0x34, 0x2D, 0x39, 0x5D, 0x7C, 0x37, 0x5C, 0x64, 0x7C, 0x38, 0x5B, 0x32, 0x33, 0x36, 0x5D, 0x7C, 0x39, 0x5B, 0x30, 0x32, 0x33, 0x36, 0x38, 0x5D, 0x29, 0x5C, 0x64, 0x29, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x32, 0x06, 0x34, 0x34, 0x31, 0x32, 0x33, 0x34, 0x1A, 0xAF, 0x01, 0x12, 0x9B, 0x01, 0x30, 0x28, 0x3F, 0x3A, 0x35, 0x28, 0x3F, 0x3A, 0x30, 0x5B, 0x38, 0x39, 0x5D, 0x7C, 0x33, 0x5B, 0x30, 0x2D, 0x34, 0x5D, 0x7C, 0x38, 0x5B, 0x30, 0x2D, 0x32, 0x36, 0x5D, 0x7C, 0x39, 0x5B, 0x32, 0x33, 0x38, 0x5D, 0x29, 0x7C, 0x36, 0x28, 0x3F, 0x3A, 0x30, 0x5B, 0x33, 0x2D, 0x37, 0x5D, 0x7C, 0x31, 0x5B, 0x30, 0x31, 0x5D, 0x7C, 0x32, 0x5B, 0x30, 0x2D, 0x37, 0x5D, 0x7C, 0x36, 0x5B, 0x30, 0x2D, 0x35, 0x38, 0x39, 0x5D, 0x7C, 0x37, 0x31, 0x7C, 0x38, 0x33, 0x7C, 0x39, 0x5B, 0x35, 0x37, 0x5D, 0x29, 0x7C, 0x37, 0x28, 0x3F, 0x3A, 0x31, 0x5B, 0x32, 0x2D, 0x35, 0x5D, 0x7C, 0x32, 0x5B, 0x38, 0x39, 0x5D, 0x7C, 0x33, 0x5B, 0x33, 0x35, 0x2D, 0x39, 0x5D, 0x7C, 0x34, 0x5B, 0x30, 0x31, 0x5D, 0x7C, 0x35, 0x5B, 0x30, 0x2D, 0x33, 0x34, 0x37, 0x2D, 0x39, 0x5D, 0x7C, 0x5B, 0x36, 0x37, 0x5D, 0x5C, 0x64, 0x7C, 0x38, 0x5B, 0x34, 0x35, 0x37, 0x2D, 0x39, 0x5D, 0x7C, 0x39, 0x5B, 0x30, 0x31, 0x34, 0x36, 0x5D, 0x29, 0x29, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x30, 0x36, 0x30, 0x33, 0x31, 0x32, 0x33, 0x34, 0x22, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x2A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x47, 0x41, 0x50, 0xF1, 0x01, 0x5A, 0x02, 0x30, 0x30, 0x9A, 0x01, 0x2C, 0x0A, 0x15, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x05, 0x5B, 0x34, 0x2D, 0x39, 0x5D, 0x22, 0x00, 0x2A, 0x00, 0x9A, 0x01, 0x30, 0x0A, 0x1A, 0x28, 0x30, 0x5C, 0x64, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x12, 0x0B, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x20, 0x24, 0x34, 0x1A, 0x01, 0x30, 0x22, 0x00, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xD0, 0x01, 0x01, 0x0A, 0xE4, 0x14, 0x0A, 0x14, 0x12, 0x08, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x31, 0x30, 0x7D, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x34, 0x2C, 0x31, 0x30, 0x7D, 0x12, 0xF9, 0x0A, 0x12, 0xE0, 0x0A, 0x32, 0x28, 0x3F, 0x3A, 0x30, 0x5B, 0x30, 0x31, 0x33, 0x37, 0x38, 0x5D, 0x7C, 0x33, 0x5B, 0x30, 0x31, 0x38, 0x39, 0x5D, 0x7C, 0x34, 0x5B, 0x30, 0x31, 0x37, 0x5D, 0x7C, 0x38, 0x5B, 0x30, 0x2D, 0x34, 0x36, 0x2D, 0x39, 0x5D, 0x7C, 0x39, 0x5B, 0x30, 0x31, 0x32, 0x5D, 0x29, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x7C, 0x31, 0x28, 0x3F, 0x3A, 0x28, 0x3F, 0x3A, 0x31, 0x28, 0x3F, 0x3A, 0x33, 0x5B, 0x30, 0x2D, 0x34, 0x38, 0x5D, 0x7C, 0x5B, 0x34, 0x36, 0x5D, 0x5B, 0x30, 0x2D, 0x34, 0x5D, 0x7C, 0x35, 0x5B, 0x30, 0x31, 0x32, 0x37, 0x38, 0x39, 0x5D, 0x7C, 0x37, 0x5B, 0x30, 0x2D, 0x33, 0x39, 0x5D, 0x7C, 0x38, 0x5B, 0x30, 0x31, 0x33, 0x34, 0x39, 0x5D, 0x29, 0x7C, 0x32, 0x31, 0x5B, 0x30, 0x2D, 0x37, 0x5D, 0x7C, 0x33, 0x31, 0x5B, 0x30, 0x2D, 0x38, 0x5D, 0x7C, 0x5B, 0x34, 0x35, 0x39, 0x5D, 0x31, 0x5C, 0x64, 0x7C, 0x36, 0x31, 0x5B, 0x30, 0x2D, 0x34, 0x36, 0x2D, 0x39, 0x5D, 0x29, 0x29, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x7C, 0x31, 0x28, 0x3F, 0x3A, 0x32, 0x28, 0x3F, 0x3A, 0x30, 0x5B, 0x30, 0x32, 0x34, 0x2D, 0x39, 0x5D, 0x7C, 0x32, 0x5B, 0x33, 0x2D, 0x39, 0x5D, 0x7C, 0x33, 0x5B, 0x33, 0x2D, 0x37, 0x39, 0x5D, 0x7C, 0x34, 0x5B, 0x31, 0x2D, 0x36, 0x38, 0x39, 0x5D, 0x7C, 0x5B, 0x35, 0x38, 0x5D, 0x5B, 0x30, 0x32, 0x2D, 0x39, 0x5D, 0x7C, 0x36, 0x5B, 0x30, 0x2D, 0x34, 0x37, 0x38, 0x39, 0x5D, 0x7C, 0x37, 0x5B, 0x30, 0x31, 0x33, 0x2D, 0x39, 0x5D, 0x7C, 0x39, 0x5C, 0x64, 0x29, 0x7C, 0x33, 0x28, 0x3F, 0x3A, 0x30, 0x5C, 0x64, 0x7C, 0x5B, 0x32, 0x35, 0x5D, 0x5B, 0x30, 0x32, 0x2D, 0x39, 0x5D, 0x7C, 0x33, 0x5B, 0x30, 0x32, 0x2D, 0x35, 0x37, 0x39, 0x5D, 0x7C, 0x5B, 0x34, 0x36, 0x38, 0x5D, 0x5B, 0x30, 0x2D, 0x34, 0x36, 0x2D, 0x39, 0x5D, 0x7C, 0x37, 0x5B, 0x31, 0x32, 0x33, 0x35, 0x36, 0x37, 0x39, 0x5D, 0x7C, 0x39, 0x5B, 0x32, 0x34, 0x35, 0x37, 0x38, 0x5D, 0x29, 0x7C, 0x34, 0x28, 0x3F, 0x3A, 0x30, 0x5B, 0x30, 0x33, 0x2D, 0x39, 0x5D, 0x7C, 0x5B, 0x32, 0x38, 0x5D, 0x5B, 0x30, 0x32, 0x2D, 0x35, 0x37, 0x38, 0x39, 0x5D, 0x7C, 0x5B, 0x33, 0x37, 0x5D, 0x5C, 0x64, 0x7C, 0x34, 0x5B, 0x30, 0x32, 0x2D, 0x36, 0x39, 0x5D, 0x7C, 0x35, 0x5B, 0x30, 0x2D, 0x38, 0x5D, 0x7C, 0x5B, 0x36, 0x39, 0x5D, 0x5B, 0x30, 0x2D, 0x37, 0x39, 0x5D, 0x29, 0x7C, 0x35, 0x28, 0x3F, 0x3A, 0x30, 0x5B, 0x31, 0x32, 0x33, 0x35, 0x2D, 0x39, 0x5D, 0x7C, 0x32, 0x5B, 0x30, 0x32, 0x34, 0x2D, 0x39, 0x5D, 0x7C, 0x33, 0x5B, 0x30, 0x31, 0x35, 0x36, 0x38, 0x39, 0x5D, 0x7C, 0x34, 0x5B, 0x30, 0x32, 0x2D, 0x39, 0x5D, 0x7C, 0x35, 0x5B, 0x30, 0x33, 0x2D, 0x39, 0x5D, 0x7C, 0x36, 0x5C, 0x64, 0x7C, 0x37, 0x5B, 0x30, 0x2D, 0x33, 0x35, 0x2D, 0x39, 0x5D, 0x7C, 0x38, 0x5B, 0x30, 0x2D, 0x34, 0x36, 0x38, 0x5D, 0x7C, 0x39, 0x5B, 0x30, 0x2D, 0x35, 0x37, 0x38, 0x39, 0x5D, 0x29, 0x7C, 0x36, 0x28, 0x3F, 0x3A, 0x30, 0x5B, 0x30, 0x33, 0x34, 0x36, 0x38, 0x39, 0x5D, 0x7C, 0x32, 0x5B, 0x30, 0x2D, 0x33, 0x35, 0x36, 0x38, 0x39, 0x5D, 0x7C, 0x5B, 0x33, 0x38, 0x5D, 0x5B, 0x30, 0x31, 0x33, 0x2D, 0x39, 0x5D, 0x7C, 0x34, 0x5B, 0x31, 0x2D, 0x34, 0x36, 0x37, 0x5D, 0x7C, 0x35, 0x5B, 0x30, 0x2D, 0x36, 0x39, 0x5D, 0x7C, 0x36, 0x5B, 0x31, 0x33, 0x2D, 0x39, 0x5D, 0x7C, 0x37, 0x5B, 0x30, 0x2D, 0x38, 0x5D, 0x7C, 0x39, 0x5B, 0x30, 0x31, 0x32, 0x34, 0x35, 0x37, 0x38, 0x5D, 0x29, 0x7C, 0x37, 0x28, 0x3F, 0x3A, 0x30, 0x5B, 0x30, 0x32, 0x34, 0x36, 0x2D, 0x39, 0x5D, 0x7C, 0x32, 0x5C, 0x64, 0x7C, 0x33, 0x5B, 0x30, 0x32, 0x33, 0x36, 0x37, 0x38, 0x5D, 0x7C, 0x34, 0x5B, 0x30, 0x33, 0x2D, 0x39, 0x5D, 0x7C, 0x35, 0x5B, 0x30, 0x2D, 0x34, 0x36, 0x2D, 0x39, 0x5D, 0x7C, 0x36, 0x5B, 0x30, 0x31, 0x33, 0x2D, 0x39, 0x5D, 0x7C, 0x37, 0x5B, 0x30, 0x2D, 0x33, 0x35, 0x2D, 0x39, 0x5D, 0x7C, 0x38, 0x5B, 0x30, 0x32, 0x34, 0x2D, 0x39, 0x5D, 0x7C, 0x39, 0x5B, 0x30, 0x32, 0x2D, 0x39, 0x5D, 0x29, 0x7C, 0x38, 0x28, 0x3F, 0x3A, 0x30, 0x5B, 0x33, 0x35, 0x2D, 0x39, 0x5D, 0x7C, 0x32, 0x5B, 0x31, 0x2D, 0x35, 0x37, 0x38, 0x39, 0x5D, 0x7C, 0x33, 0x5B, 0x30, 0x32, 0x2D, 0x35, 0x37, 0x38, 0x5D, 0x7C, 0x34, 0x5B, 0x30, 0x2D, 0x35, 0x37, 0x38, 0x5D, 0x7C, 0x35, 0x5B, 0x31, 0x32, 0x34, 0x2D, 0x39, 0x5D, 0x7C, 0x36, 0x5B, 0x32, 0x2D, 0x36, 0x39, 0x5D, 0x7C, 0x37, 0x5C, 0x64, 0x7C, 0x38, 0x5B, 0x30, 0x32, 0x2D, 0x39, 0x5D, 0x7C, 0x39, 0x5B, 0x30, 0x32, 0x35, 0x36, 0x39, 0x5D, 0x29, 0x7C, 0x39, 0x28, 0x3F, 0x3A, 0x30, 0x5B, 0x30, 0x32, 0x2D, 0x35, 0x38, 0x39, 0x5D, 0x7C, 0x32, 0x5B, 0x30, 0x32, 0x2D, 0x36, 0x38, 0x39, 0x5D, 0x7C, 0x33, 0x5B, 0x31, 0x2D, 0x35, 0x37, 0x38, 0x39, 0x5D, 0x7C, 0x34, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x7C, 0x35, 0x5B, 0x30, 0x2D, 0x35, 0x37, 0x39, 0x5D, 0x7C, 0x36, 0x5B, 0x32, 0x33, 0x34, 0x37, 0x38, 0x39, 0x5D, 0x7C, 0x37, 0x5B, 0x30, 0x31, 0x32, 0x34, 0x35, 0x37, 0x38, 0x5D, 0x7C, 0x38, 0x5C, 0x64, 0x7C, 0x39, 0x5B, 0x32, 0x2D, 0x35, 0x37, 0x5D, 0x29, 0x29, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x7C, 0x31, 0x28, 0x3F, 0x3A, 0x32, 0x28, 0x3F, 0x3A, 0x30, 0x28, 0x3F, 0x3A, 0x34, 0x36, 0x5B, 0x31, 0x2D, 0x34, 0x5D, 0x7C, 0x38, 0x37, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x29, 0x7C, 0x35, 0x34, 0x35, 0x5B, 0x31, 0x2D, 0x37, 0x39, 0x5D, 0x7C, 0x37, 0x36, 0x28, 0x3F, 0x3A, 0x32, 0x5C, 0x64, 0x7C, 0x33, 0x5B, 0x31, 0x2D, 0x38, 0x5D, 0x7C, 0x36, 0x5B, 0x31, 0x2D, 0x36, 0x5D, 0x29, 0x7C, 0x39, 0x28, 0x3F, 0x3A, 0x37, 0x28, 0x3F, 0x3A, 0x32, 0x5B, 0x30, 0x2D, 0x34, 0x5D, 0x7C, 0x33, 0x5B, 0x32, 0x2D, 0x35, 0x5D, 0x29, 0x7C, 0x38, 0x28, 0x3F, 0x3A, 0x32, 0x5B, 0x32, 0x2D, 0x38, 0x5D, 0x7C, 0x37, 0x5B, 0x30, 0x2D, 0x34, 0x37, 0x38, 0x39, 0x5D, 0x7C, 0x38, 0x5B, 0x33, 0x34, 0x35, 0x5D, 0x29, 0x29, 0x29, 0x7C, 0x33, 0x28, 0x3F, 0x3A, 0x36, 0x33, 0x38, 0x5B, 0x32, 0x2D, 0x35, 0x5D, 0x7C, 0x36, 0x34, 0x37, 0x5B, 0x32, 0x33, 0x5D, 0x7C, 0x38, 0x28, 0x3F, 0x3A, 0x34, 0x37, 0x5B, 0x30, 0x34, 0x2D, 0x39, 0x5D, 0x7C, 0x36, 0x34, 0x5B, 0x30, 0x31, 0x35, 0x37, 0x38, 0x39, 0x5D, 0x29, 0x29, 0x7C, 0x34, 0x28, 0x3F, 0x3A, 0x30, 0x34, 0x34, 0x5B, 0x31, 0x2D, 0x37, 0x5D, 0x7C, 0x32, 0x30, 0x28, 0x3F, 0x3A, 0x32, 0x5B, 0x32, 0x33, 0x5D, 0x7C, 0x38, 0x5C, 0x64, 0x29, 0x7C, 0x36, 0x28, 0x3F, 0x3A, 0x30, 0x28, 0x3F, 0x3A, 0x33, 0x30, 0x7C, 0x35, 0x5B, 0x32, 0x2D, 0x35, 0x37, 0x5D, 0x7C, 0x36, 0x5B, 0x31, 0x2D, 0x38, 0x5D, 0x7C, 0x37, 0x5B, 0x32, 0x2D, 0x38, 0x5D, 0x29, 0x7C, 0x31, 0x34, 0x30, 0x29, 0x7C, 0x38, 0x28, 0x3F, 0x3A, 0x30, 0x35, 0x32, 0x7C, 0x38, 0x37, 0x5B, 0x31, 0x32, 0x33, 0x5D, 0x29, 0x29, 0x7C, 0x35, 0x28, 0x3F, 0x3A, 0x32, 0x34, 0x28, 0x3F, 0x3A, 0x33, 0x5B, 0x32, 0x2D, 0x37, 0x39, 0x5D, 0x7C, 0x36, 0x5C, 0x64, 0x29, 0x7C, 0x32, 0x37, 0x36, 0x5C, 0x64, 0x7C, 0x36, 0x28, 0x3F, 0x3A, 0x32, 0x36, 0x5B, 0x30, 0x36, 0x2D, 0x39, 0x5D, 0x7C, 0x36, 0x38, 0x36, 0x29, 0x29, 0x7C, 0x36, 0x28, 0x3F, 0x3A, 0x30, 0x36, 0x28, 0x3F, 0x3A, 0x34, 0x5C, 0x64, 0x7C, 0x37, 0x5B, 0x34, 0x2D, 0x37, 0x39, 0x5D, 0x29, 0x7C, 0x32, 0x39, 0x35, 0x5B, 0x35, 0x36, 0x37, 0x5D, 0x7C, 0x33, 0x35, 0x5B, 0x33, 0x34, 0x5D, 0x5C, 0x64, 0x7C, 0x34, 0x37, 0x28, 0x3F, 0x3A, 0x32, 0x34, 0x7C, 0x36, 0x31, 0x29, 0x7C, 0x35, 0x39, 0x28, 0x3F, 0x3A, 0x35, 0x5B, 0x30, 0x38, 0x5D, 0x7C, 0x36, 0x5B, 0x36, 0x37, 0x5D, 0x7C, 0x37, 0x34, 0x29, 0x7C, 0x39, 0x35, 0x35, 0x5B, 0x30, 0x2D, 0x34, 0x5D, 0x29, 0x7C, 0x37, 0x28, 0x3F, 0x3A, 0x32, 0x36, 0x28, 0x3F, 0x3A, 0x36, 0x5B, 0x31, 0x33, 0x2D, 0x39, 0x5D, 0x7C, 0x37, 0x5B, 0x30, 0x2D, 0x37, 0x5D, 0x29, 0x7C, 0x34, 0x34, 0x32, 0x5C, 0x64, 0x7C, 0x35, 0x30, 0x28, 0x3F, 0x3A, 0x32, 0x5B, 0x30, 0x2D, 0x33, 0x5D, 0x7C, 0x5B, 0x33, 0x2D, 0x36, 0x38, 0x5D, 0x32, 0x7C, 0x37, 0x36, 0x29, 0x29, 0x7C, 0x38, 0x28, 0x3F, 0x3A, 0x32, 0x37, 0x5B, 0x35, 0x36, 0x5D, 0x5C, 0x64, 0x7C, 0x33, 0x37, 0x28, 0x3F, 0x3A, 0x35, 0x5B, 0x32, 0x2D, 0x35, 0x5D, 0x7C, 0x38, 0x5B, 0x32, 0x33, 0x39, 0x5D, 0x29, 0x7C, 0x38, 0x34, 0x28, 0x3F, 0x3A, 0x33, 0x5B, 0x32, 0x2D, 0x35, 0x38, 0x5D, 0x29, 0x29, 0x7C, 0x39, 0x28, 0x3F, 0x3A, 0x30, 0x28, 0x3F, 0x3A, 0x30, 0x28, 0x3F, 0x3A, 0x36, 0x5B, 0x31, 0x2D, 0x38, 0x5D, 0x7C, 0x38, 0x35, 0x29, 0x7C, 0x35, 0x32, 0x5C, 0x64, 0x29, 0x7C, 0x33, 0x35, 0x38, 0x33, 0x7C, 0x34, 0x28, 0x3F, 0x3A, 0x36, 0x36, 0x5B, 0x31, 0x2D, 0x38, 0x5D, 0x7C, 0x39, 0x28, 0x3F, 0x3A, 0x32, 0x5B, 0x30, 0x31, 0x5D, 0x7C, 0x38, 0x31, 0x29, 0x29, 0x7C, 0x36, 0x33, 0x28, 0x3F, 0x3A, 0x32, 0x33, 0x7C, 0x33, 0x5B, 0x31, 0x2D, 0x34, 0x5D, 0x29, 0x7C, 0x39, 0x35, 0x36, 0x31, 0x29, 0x29, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x7C, 0x31, 0x37, 0x36, 0x38, 0x38, 0x38, 0x5B, 0x32, 0x33, 0x34, 0x36, 0x37, 0x38, 0x5D, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x7C, 0x31, 0x36, 0x39, 0x37, 0x37, 0x5B, 0x32, 0x33, 0x5D, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x34, 0x2C, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x31, 0x32, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x1A, 0xB0, 0x01, 0x12, 0x99, 0x01, 0x37, 0x28, 0x3F, 0x3A, 0x5B, 0x31, 0x2D, 0x34, 0x5D, 0x5C, 0x64, 0x5C, 0x64, 0x7C, 0x35, 0x28, 0x3F, 0x3A, 0x30, 0x5B, 0x30, 0x2D, 0x38, 0x5D, 0x7C, 0x5B, 0x31, 0x33, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7C, 0x32, 0x5B, 0x30, 0x2D, 0x33, 0x35, 0x2D, 0x39, 0x5D, 0x29, 0x7C, 0x37, 0x28, 0x3F, 0x3A, 0x30, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x7C, 0x5B, 0x31, 0x2D, 0x37, 0x5D, 0x5C, 0x64, 0x7C, 0x38, 0x5B, 0x30, 0x32, 0x2D, 0x39, 0x5D, 0x7C, 0x39, 0x5B, 0x30, 0x2D, 0x36, 0x38, 0x39, 0x5D, 0x29, 0x7C, 0x38, 0x28, 0x3F, 0x3A, 0x5B, 0x30, 0x31, 0x34, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7C, 0x5B, 0x32, 0x33, 0x5D, 0x5B, 0x30, 0x2D, 0x38, 0x5D, 0x29, 0x7C, 0x39, 0x28, 0x3F, 0x3A, 0x5B, 0x30, 0x34, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7C, 0x31, 0x5B, 0x30, 0x32, 0x2D, 0x39, 0x5D, 0x7C, 0x32, 0x5B, 0x30, 0x2D, 0x33, 0x35, 0x2D, 0x39, 0x5D, 0x7C, 0x33, 0x5B, 0x30, 0x2D, 0x36, 0x38, 0x39, 0x5D, 0x29, 0x29, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x37, 0x34, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x22, 0x48, 0x12, 0x27, 0x38, 0x30, 0x28, 0x3F, 0x3A, 0x30, 0x28, 0x3F, 0x3A, 0x31, 0x31, 0x31, 0x31, 0x7C, 0x5C, 0x64, 0x7B, 0x36, 0x2C, 0x37, 0x7D, 0x29, 0x7C, 0x38, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x29, 0x7C, 0x35, 0x30, 0x30, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x11, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x28, 0x3F, 0x3A, 0x5C, 0x64, 0x7B, 0x32, 0x2C, 0x33, 0x7D, 0x29, 0x3F, 0x32, 0x0A, 0x38, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x2A, 0x39, 0x12, 0x23, 0x28, 0x3F, 0x3A, 0x38, 0x37, 0x5B, 0x31, 0x32, 0x33, 0x5D, 0x7C, 0x39, 0x28, 0x3F, 0x3A, 0x5B, 0x30, 0x31, 0x5D, 0x5C, 0x64, 0x7C, 0x38, 0x5B, 0x30, 0x2D, 0x33, 0x5D, 0x29, 0x29, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x39, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x32, 0x42, 0x12, 0x23, 0x38, 0x28, 0x3F, 0x3A, 0x34, 0x28, 0x3F, 0x3A, 0x35, 0x34, 0x36, 0x34, 0x5C, 0x64, 0x7C, 0x5B, 0x32, 0x2D, 0x35, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x29, 0x7C, 0x37, 0x30, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x29, 0x1A, 0x0F, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x28, 0x3F, 0x3A, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x3F, 0x32, 0x0A, 0x38, 0x34, 0x33, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x3A, 0x1D, 0x12, 0x07, 0x37, 0x30, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x37, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x42, 0x1D, 0x12, 0x07, 0x35, 0x36, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x35, 0x36, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x4A, 0x02, 0x47, 0x42, 0x50, 0x2C, 0x5A, 0x02, 0x30, 0x30, 0x62, 0x01, 0x30, 0x6A, 0x02, 0x20, 0x78, 0x7A, 0x01, 0x30, 0x9A, 0x01, 0x37, 0x0A, 0x15, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x0D, 0x32, 0x7C, 0x35, 0x5B, 0x35, 0x36, 0x5D, 0x7C, 0x37, 0x5B, 0x30, 0x36, 0x5D, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x3D, 0x0A, 0x15, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x13, 0x31, 0x28, 0x3F, 0x3A, 0x31, 0x7C, 0x5C, 0x64, 0x31, 0x29, 0x7C, 0x33, 0x7C, 0x39, 0x5B, 0x30, 0x31, 0x38, 0x5D, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x8C, 0x01, 0x0A, 0x10, 0x28, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x2C, 0x35, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x1A, 0x16, 0x31, 0x28, 0x3F, 0x3A, 0x33, 0x38, 0x7C, 0x35, 0x5B, 0x32, 0x33, 0x5D, 0x7C, 0x36, 0x39, 0x7C, 0x37, 0x36, 0x7C, 0x39, 0x34, 0x29, 0x1A, 0x1F, 0x31, 0x28, 0x3F, 0x3A, 0x33, 0x38, 0x37, 0x7C, 0x35, 0x28, 0x3F, 0x3A, 0x32, 0x34, 0x7C, 0x33, 0x39, 0x29, 0x7C, 0x36, 0x39, 0x37, 0x7C, 0x37, 0x36, 0x38, 0x7C, 0x39, 0x34, 0x36, 0x29, 0x1A, 0x31, 0x31, 0x28, 0x3F, 0x3A, 0x33, 0x38, 0x37, 0x33, 0x7C, 0x35, 0x28, 0x3F, 0x3A, 0x32, 0x34, 0x32, 0x7C, 0x33, 0x39, 0x5B, 0x34, 0x35, 0x36, 0x5D, 0x29, 0x7C, 0x36, 0x39, 0x37, 0x5B, 0x33, 0x34, 0x37, 0x5D, 0x7C, 0x37, 0x36, 0x38, 0x5B, 0x33, 0x34, 0x37, 0x5D, 0x7C, 0x39, 0x34, 0x36, 0x37, 0x29, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x24, 0x0A, 0x11, 0x28, 0x31, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x35, 0x2C, 0x36, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x1A, 0x01, 0x31, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x2A, 0x0A, 0x0F, 0x28, 0x37, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x1A, 0x09, 0x37, 0x5B, 0x31, 0x2D, 0x35, 0x37, 0x38, 0x39, 0x5D, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x3F, 0x0A, 0x0C, 0x28, 0x38, 0x30, 0x30, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x1A, 0x03, 0x38, 0x30, 0x30, 0x1A, 0x04, 0x38, 0x30, 0x30, 0x31, 0x1A, 0x05, 0x38, 0x30, 0x30, 0x31, 0x31, 0x1A, 0x06, 0x38, 0x30, 0x30, 0x31, 0x31, 0x31, 0x1A, 0x07, 0x38, 0x30, 0x30, 0x31, 0x31, 0x31, 0x31, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x3B, 0x0A, 0x0E, 0x28, 0x38, 0x34, 0x35, 0x29, 0x28, 0x34, 0x36, 0x29, 0x28, 0x34, 0x5C, 0x64, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x03, 0x38, 0x34, 0x35, 0x1A, 0x04, 0x38, 0x34, 0x35, 0x34, 0x1A, 0x05, 0x38, 0x34, 0x35, 0x34, 0x36, 0x1A, 0x06, 0x38, 0x34, 0x35, 0x34, 0x36, 0x34, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x3D, 0x0A, 0x16, 0x28, 0x38, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x12, 0x38, 0x28, 0x3F, 0x3A, 0x34, 0x5B, 0x32, 0x2D, 0x35, 0x5D, 0x7C, 0x37, 0x5B, 0x30, 0x2D, 0x33, 0x5D, 0x29, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x2B, 0x0A, 0x14, 0x28, 0x38, 0x30, 0x5C, 0x64, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x02, 0x38, 0x30, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x27, 0x0A, 0x0F, 0x28, 0x5B, 0x35, 0x38, 0x5D, 0x30, 0x30, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x1A, 0x06, 0x5B, 0x35, 0x38, 0x5D, 0x30, 0x30, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0xAA, 0x01, 0x51, 0x12, 0x3B, 0x37, 0x36, 0x28, 0x3F, 0x3A, 0x30, 0x5B, 0x30, 0x31, 0x32, 0x5D, 0x7C, 0x32, 0x5B, 0x33, 0x35, 0x36, 0x5D, 0x7C, 0x34, 0x5B, 0x30, 0x31, 0x33, 0x34, 0x5D, 0x7C, 0x35, 0x5B, 0x34, 0x39, 0x5D, 0x7C, 0x36, 0x5B, 0x30, 0x2D, 0x33, 0x36, 0x39, 0x5D, 0x7C, 0x37, 0x37, 0x7C, 0x38, 0x31, 0x7C, 0x39, 0x5B, 0x33, 0x39, 0x5D, 0x29, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x37, 0x36, 0x34, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0xB0, 0x01, 0x01, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x29, 0x12, 0x13, 0x28, 0x3F, 0x3A, 0x33, 0x5B, 0x30, 0x33, 0x34, 0x37, 0x5D, 0x7C, 0x35, 0x35, 0x29, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x35, 0x35, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x0A, 0xC3, 0x03, 0x0A, 0x1E, 0x12, 0x0B, 0x5B, 0x34, 0x35, 0x38, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x1A, 0x0F, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x28, 0x3F, 0x3A, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x3F, 0x12, 0x85, 0x01, 0x12, 0x66, 0x34, 0x37, 0x33, 0x28, 0x3F, 0x3A, 0x32, 0x28, 0x3F, 0x3A, 0x33, 0x5B, 0x30, 0x2D, 0x32, 0x5D, 0x7C, 0x36, 0x39, 0x29, 0x7C, 0x33, 0x28, 0x3F, 0x3A, 0x32, 0x5B, 0x38, 0x39, 0x5D, 0x7C, 0x38, 0x36, 0x29, 0x7C, 0x34, 0x28, 0x3F, 0x3A, 0x5B, 0x30, 0x36, 0x5D, 0x38, 0x7C, 0x33, 0x5B, 0x35, 0x2D, 0x39, 0x5D, 0x7C, 0x34, 0x5B, 0x30, 0x2D, 0x34, 0x39, 0x5D, 0x7C, 0x35, 0x5B, 0x35, 0x2D, 0x37, 0x39, 0x5D, 0x7C, 0x37, 0x33, 0x7C, 0x39, 0x30, 0x29, 0x7C, 0x36, 0x33, 0x5B, 0x36, 0x38, 0x5D, 0x7C, 0x37, 0x28, 0x3F, 0x3A, 0x35, 0x38, 0x7C, 0x38, 0x34, 0x29, 0x7C, 0x39, 0x33, 0x38, 0x29, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x0F, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x28, 0x3F, 0x3A, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x3F, 0x32, 0x0A, 0x34, 0x37, 0x33, 0x32, 0x36, 0x39, 0x31, 0x32, 0x33, 0x34, 0x1A, 0x44, 0x12, 0x2E, 0x34, 0x37, 0x33, 0x28, 0x3F, 0x3A, 0x34, 0x28, 0x3F, 0x3A, 0x30, 0x5B, 0x33, 0x2D, 0x37, 0x39, 0x5D, 0x7C, 0x31, 0x5B, 0x30, 0x34, 0x2D, 0x39, 0x5D, 0x7C, 0x32, 0x30, 0x7C, 0x35, 0x38, 0x29, 0x7C, 0x35, 0x33, 0x5B, 0x33, 0x2D, 0x38, 0x5D, 0x29, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x34, 0x37, 0x33, 0x34, 0x30, 0x33, 0x31, 0x32, 0x33, 0x34, 0x22, 0x33, 0x12, 0x1D, 0x38, 0x28, 0x3F, 0x3A, 0x30, 0x30, 0x7C, 0x35, 0x35, 0x7C, 0x36, 0x36, 0x7C, 0x37, 0x37, 0x7C, 0x38, 0x38, 0x29, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x38, 0x30, 0x30, 0x32, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x2A, 0x23, 0x12, 0x0D, 0x39, 0x30, 0x30, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x39, 0x30, 0x30, 0x32, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x2D, 0x12, 0x17, 0x35, 0x28, 0x3F, 0x3A, 0x30, 0x30, 0x7C, 0x33, 0x33, 0x7C, 0x34, 0x34, 0x29, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x35, 0x30, 0x30, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x47, 0x44, 0x50, 0x01, 0x5A, 0x03, 0x30, 0x31, 0x31, 0x62, 0x01, 0x31, 0x7A, 0x01, 0x31, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xBA, 0x01, 0x03, 0x34, 0x37, 0x33, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xBC, 0x03, 0x0A, 0x1E, 0x12, 0x13, 0x5B, 0x31, 0x33, 0x2D, 0x37, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x7C, 0x38, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x35, 0x2C, 0x39, 0x7D, 0x12, 0x67, 0x12, 0x52, 0x28, 0x3F, 0x3A, 0x33, 0x28, 0x3F, 0x3A, 0x5B, 0x32, 0x35, 0x36, 0x5D, 0x5C, 0x64, 0x7C, 0x34, 0x5B, 0x31, 0x32, 0x34, 0x2D, 0x39, 0x5D, 0x7C, 0x37, 0x5B, 0x30, 0x2D, 0x34, 0x5D, 0x29, 0x7C, 0x34, 0x28, 0x3F, 0x3A, 0x31, 0x5C, 0x64, 0x7C, 0x32, 0x5B, 0x32, 0x2D, 0x37, 0x5D, 0x7C, 0x33, 0x5B, 0x31, 0x2D, 0x37, 0x39, 0x5D, 0x7C, 0x34, 0x5B, 0x32, 0x2D, 0x38, 0x5D, 0x7C, 0x37, 0x5B, 0x32, 0x33, 0x39, 0x5D, 0x7C, 0x39, 0x5B, 0x31, 0x2D, 0x37, 0x5D, 0x29, 0x29, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x35, 0x2C, 0x38, 0x7D, 0x32, 0x08, 0x33, 0x32, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x1A, 0x41, 0x12, 0x2E, 0x28, 0x3F, 0x3A, 0x31, 0x34, 0x7C, 0x35, 0x5B, 0x30, 0x31, 0x35, 0x37, 0x38, 0x5D, 0x7C, 0x36, 0x5B, 0x32, 0x38, 0x5D, 0x7C, 0x37, 0x5B, 0x30, 0x31, 0x34, 0x37, 0x2D, 0x39, 0x5D, 0x7C, 0x39, 0x5B, 0x30, 0x2D, 0x33, 0x35, 0x2D, 0x39, 0x5D, 0x29, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x35, 0x35, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x22, 0x1C, 0x12, 0x08, 0x38, 0x30, 0x30, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x38, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x2A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x47, 0x45, 0x50, 0xE3, 0x07, 0x5A, 0x04, 0x38, 0x7E, 0x31, 0x30, 0x62, 0x01, 0x38, 0x7A, 0x01, 0x38, 0x9A, 0x01, 0x3C, 0x0A, 0x1C, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x12, 0x0B, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x20, 0x24, 0x34, 0x1A, 0x07, 0x5B, 0x31, 0x33, 0x2D, 0x37, 0x39, 0x5D, 0x22, 0x04, 0x38, 0x20, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x34, 0x0A, 0x1A, 0x28, 0x38, 0x30, 0x30, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x12, 0x0B, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x20, 0x24, 0x34, 0x1A, 0x01, 0x38, 0x22, 0x04, 0x38, 0x20, 0x24, 0x31, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0x67, 0x0A, 0x00, 0x12, 0x00, 0x1A, 0x00, 0x22, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x2A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x47, 0x46, 0x50, 0xD2, 0x04, 0x5A, 0x02, 0x30, 0x30, 0x90, 0x01, 0x01, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0x93, 0x04, 0x0A, 0x1B, 0x12, 0x0F, 0x5B, 0x31, 0x33, 0x35, 0x37, 0x38, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x2C, 0x39, 0x7D, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x36, 0x2C, 0x31, 0x30, 0x7D, 0x12, 0x21, 0x12, 0x09, 0x31, 0x34, 0x38, 0x31, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x36, 0x2C, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x31, 0x34, 0x38, 0x31, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x1A, 0x2B, 0x12, 0x15, 0x37, 0x28, 0x3F, 0x3A, 0x37, 0x38, 0x31, 0x7C, 0x38, 0x33, 0x39, 0x7C, 0x39, 0x31, 0x31, 0x29, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x37, 0x37, 0x38, 0x31, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x22, 0x48, 0x12, 0x27, 0x38, 0x30, 0x28, 0x3F, 0x3A, 0x30, 0x28, 0x3F, 0x3A, 0x31, 0x31, 0x31, 0x31, 0x7C, 0x5C, 0x64, 0x7B, 0x36, 0x2C, 0x37, 0x7D, 0x29, 0x7C, 0x38, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x29, 0x7C, 0x35, 0x30, 0x30, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x11, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x28, 0x3F, 0x3A, 0x5C, 0x64, 0x7B, 0x32, 0x2C, 0x33, 0x7D, 0x29, 0x3F, 0x32, 0x0A, 0x38, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x2A, 0x39, 0x12, 0x23, 0x28, 0x3F, 0x3A, 0x38, 0x37, 0x5B, 0x31, 0x32, 0x33, 0x5D, 0x7C, 0x39, 0x28, 0x3F, 0x3A, 0x5B, 0x30, 0x31, 0x5D, 0x5C, 0x64, 0x7C, 0x38, 0x5B, 0x30, 0x2D, 0x33, 0x5D, 0x29, 0x29, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x39, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x32, 0x42, 0x12, 0x23, 0x38, 0x28, 0x3F, 0x3A, 0x34, 0x28, 0x3F, 0x3A, 0x35, 0x34, 0x36, 0x34, 0x5C, 0x64, 0x7C, 0x5B, 0x32, 0x2D, 0x35, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x29, 0x7C, 0x37, 0x30, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x29, 0x1A, 0x0F, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x28, 0x3F, 0x3A, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x3F, 0x32, 0x0A, 0x38, 0x34, 0x33, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x3A, 0x1D, 0x12, 0x07, 0x37, 0x30, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x37, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x42, 0x1D, 0x12, 0x07, 0x35, 0x36, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x35, 0x36, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x4A, 0x02, 0x47, 0x47, 0x50, 0x2C, 0x5A, 0x02, 0x30, 0x30, 0x62, 0x01, 0x30, 0x6A, 0x02, 0x20, 0x78, 0x7A, 0x01, 0x30, 0xAA, 0x01, 0x51, 0x12, 0x3B, 0x37, 0x36, 0x28, 0x3F, 0x3A, 0x30, 0x5B, 0x30, 0x31, 0x32, 0x5D, 0x7C, 0x32, 0x5B, 0x33, 0x35, 0x36, 0x5D, 0x7C, 0x34, 0x5B, 0x30, 0x31, 0x33, 0x34, 0x5D, 0x7C, 0x35, 0x5B, 0x34, 0x39, 0x5D, 0x7C, 0x36, 0x5B, 0x30, 0x2D, 0x33, 0x36, 0x39, 0x5D, 0x7C, 0x37, 0x37, 0x7C, 0x38, 0x31, 0x7C, 0x39, 0x5B, 0x33, 0x39, 0x5D, 0x29, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x37, 0x36, 0x34, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x29, 0x12, 0x13, 0x28, 0x3F, 0x3A, 0x33, 0x5B, 0x30, 0x33, 0x34, 0x37, 0x5D, 0x7C, 0x35, 0x35, 0x29, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x35, 0x35, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x0A, 0x84, 0x03, 0x0A, 0x17, 0x12, 0x0C, 0x5B, 0x32, 0x33, 0x35, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x2C, 0x38, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x39, 0x7D, 0x12, 0x99, 0x01, 0x12, 0x82, 0x01, 0x33, 0x28, 0x3F, 0x3A, 0x30, 0x5B, 0x32, 0x33, 0x37, 0x5D, 0x5C, 0x64, 0x7C, 0x5B, 0x31, 0x36, 0x37, 0x5D, 0x28, 0x3F, 0x3A, 0x32, 0x5B, 0x30, 0x2D, 0x36, 0x5D, 0x7C, 0x37, 0x5C, 0x64, 0x29, 0x7C, 0x32, 0x28, 0x3F, 0x3A, 0x32, 0x5B, 0x30, 0x2D, 0x35, 0x5D, 0x7C, 0x37, 0x5C, 0x64, 0x29, 0x7C, 0x33, 0x28, 0x3F, 0x3A, 0x32, 0x5B, 0x30, 0x2D, 0x33, 0x37, 0x5D, 0x7C, 0x37, 0x5C, 0x64, 0x29, 0x7C, 0x34, 0x28, 0x3F, 0x3A, 0x5B, 0x32, 0x37, 0x5D, 0x5C, 0x64, 0x7C, 0x33, 0x30, 0x29, 0x7C, 0x35, 0x28, 0x3F, 0x3A, 0x32, 0x5B, 0x30, 0x2D, 0x37, 0x5D, 0x7C, 0x37, 0x5C, 0x64, 0x29, 0x7C, 0x38, 0x28, 0x3F, 0x3A, 0x32, 0x5B, 0x30, 0x2D, 0x32, 0x5D, 0x7C, 0x37, 0x5C, 0x64, 0x29, 0x7C, 0x39, 0x28, 0x3F, 0x3A, 0x32, 0x30, 0x7C, 0x37, 0x5C, 0x64, 0x29, 0x29, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x39, 0x7D, 0x32, 0x09, 0x33, 0x30, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x1A, 0x3E, 0x12, 0x2A, 0x32, 0x28, 0x3F, 0x3A, 0x28, 0x3F, 0x3A, 0x5B, 0x34, 0x37, 0x5D, 0x5C, 0x64, 0x7C, 0x30, 0x38, 0x29, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x7C, 0x5B, 0x33, 0x36, 0x38, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x29, 0x7C, 0x35, 0x34, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x32, 0x33, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x22, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x2A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x47, 0x48, 0x50, 0xE9, 0x01, 0x5A, 0x02, 0x30, 0x30, 0x62, 0x01, 0x30, 0x7A, 0x01, 0x30, 0x9A, 0x01, 0x28, 0x0A, 0x15, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0x8B, 0x02, 0x0A, 0x14, 0x12, 0x0B, 0x5B, 0x32, 0x35, 0x36, 0x38, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x12, 0x32, 0x12, 0x1F, 0x32, 0x28, 0x3F, 0x3A, 0x30, 0x30, 0x5C, 0x64, 0x7C, 0x31, 0x36, 0x5B, 0x30, 0x2D, 0x37, 0x5D, 0x7C, 0x32, 0x32, 0x5B, 0x32, 0x34, 0x35, 0x37, 0x5D, 0x29, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x32, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x1A, 0x25, 0x12, 0x12, 0x28, 0x3F, 0x3A, 0x35, 0x5B, 0x34, 0x2D, 0x38, 0x5D, 0x7C, 0x36, 0x30, 0x29, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x35, 0x37, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x22, 0x1A, 0x12, 0x07, 0x38, 0x30, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x38, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x2A, 0x20, 0x12, 0x0D, 0x38, 0x5B, 0x31, 0x2D, 0x36, 0x38, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x38, 0x38, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x32, 0x1A, 0x12, 0x07, 0x38, 0x37, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x38, 0x37, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x47, 0x49, 0x50, 0xDE, 0x02, 0x5A, 0x02, 0x30, 0x30, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0x9D, 0x02, 0x0A, 0x15, 0x12, 0x0C, 0x5B, 0x31, 0x2D, 0x36, 0x38, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x12, 0x39, 0x12, 0x28, 0x28, 0x3F, 0x3A, 0x31, 0x39, 0x7C, 0x33, 0x5B, 0x31, 0x2D, 0x36, 0x5D, 0x7C, 0x36, 0x5B, 0x31, 0x34, 0x36, 0x38, 0x39, 0x5D, 0x7C, 0x38, 0x5B, 0x31, 0x34, 0x2D, 0x37, 0x39, 0x5D, 0x7C, 0x39, 0x5C, 0x64, 0x29, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x32, 0x06, 0x33, 0x32, 0x31, 0x30, 0x30, 0x30, 0x1A, 0x20, 0x12, 0x0F, 0x5B, 0x32, 0x34, 0x35, 0x5D, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x32, 0x06, 0x32, 0x32, 0x31, 0x32, 0x33, 0x34, 0x22, 0x18, 0x12, 0x07, 0x38, 0x30, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x32, 0x06, 0x38, 0x30, 0x31, 0x32, 0x33, 0x34, 0x2A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x1B, 0x12, 0x0A, 0x33, 0x5B, 0x38, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x32, 0x06, 0x33, 0x38, 0x31, 0x32, 0x33, 0x34, 0x4A, 0x02, 0x47, 0x4C, 0x50, 0xAB, 0x02, 0x5A, 0x02, 0x30, 0x30, 0x9A, 0x01, 0x25, 0x0A, 0x15, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x22, 0x00, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xAD, 0x02, 0x0A, 0x13, 0x12, 0x0A, 0x5B, 0x33, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x12, 0x7B, 0x12, 0x69, 0x28, 0x3F, 0x3A, 0x34, 0x28, 0x3F, 0x3A, 0x5B, 0x32, 0x33, 0x5D, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x7C, 0x34, 0x28, 0x3F, 0x3A, 0x31, 0x5B, 0x30, 0x32, 0x34, 0x36, 0x37, 0x39, 0x5D, 0x7C, 0x5B, 0x36, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x29, 0x29, 0x7C, 0x35, 0x28, 0x3F, 0x3A, 0x35, 0x34, 0x5B, 0x30, 0x2D, 0x37, 0x5D, 0x7C, 0x36, 0x28, 0x3F, 0x3A, 0x5B, 0x36, 0x37, 0x5D, 0x5C, 0x64, 0x29, 0x7C, 0x37, 0x28, 0x3F, 0x3A, 0x31, 0x5B, 0x30, 0x34, 0x5D, 0x7C, 0x32, 0x5B, 0x30, 0x33, 0x35, 0x5D, 0x7C, 0x33, 0x5B, 0x35, 0x38, 0x5D, 0x7C, 0x34, 0x38, 0x29, 0x29, 0x7C, 0x38, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x32, 0x07, 0x35, 0x36, 0x36, 0x31, 0x32, 0x33, 0x34, 0x1A, 0x1D, 0x12, 0x0B, 0x5B, 0x33, 0x36, 0x37, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x32, 0x07, 0x33, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x22, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x2A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x47, 0x4D, 0x50, 0xDC, 0x01, 0x5A, 0x02, 0x30, 0x30, 0x9A, 0x01, 0x1B, 0x0A, 0x0E, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x22, 0x00, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xCF, 0x02, 0x0A, 0x14, 0x12, 0x0B, 0x5B, 0x33, 0x35, 0x36, 0x37, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x12, 0x4B, 0x12, 0x38, 0x33, 0x30, 0x28, 0x3F, 0x3A, 0x32, 0x34, 0x7C, 0x33, 0x5B, 0x31, 0x32, 0x5D, 0x7C, 0x34, 0x5B, 0x31, 0x2D, 0x33, 0x35, 0x2D, 0x37, 0x5D, 0x7C, 0x35, 0x5B, 0x31, 0x33, 0x5D, 0x7C, 0x36, 0x5B, 0x31, 0x38, 0x39, 0x5D, 0x7C, 0x5B, 0x37, 0x38, 0x5D, 0x31, 0x7C, 0x39, 0x5B, 0x31, 0x34, 0x37, 0x38, 0x5D, 0x29, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x33, 0x30, 0x32, 0x34, 0x31, 0x32, 0x33, 0x34, 0x1A, 0x5A, 0x12, 0x47, 0x35, 0x35, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x7C, 0x36, 0x28, 0x3F, 0x3A, 0x30, 0x28, 0x3F, 0x3A, 0x32, 0x5C, 0x64, 0x7C, 0x33, 0x5B, 0x33, 0x34, 0x36, 0x37, 0x5D, 0x7C, 0x35, 0x5B, 0x32, 0x34, 0x35, 0x37, 0x2D, 0x39, 0x5D, 0x29, 0x7C, 0x5B, 0x32, 0x34, 0x35, 0x37, 0x38, 0x5D, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x7C, 0x33, 0x28, 0x3F, 0x3A, 0x5B, 0x31, 0x34, 0x5D, 0x30, 0x7C, 0x33, 0x35, 0x29, 0x29, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x36, 0x30, 0x32, 0x30, 0x31, 0x32, 0x33, 0x34, 0x22, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x2A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x47, 0x4E, 0x50, 0xE0, 0x01, 0x5A, 0x02, 0x30, 0x30, 0x9A, 0x01, 0x2F, 0x0A, 0x1C, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x12, 0x0B, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x20, 0x24, 0x34, 0x22, 0x00, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xD4, 0x02, 0x0A, 0x12, 0x12, 0x09, 0x5B, 0x35, 0x36, 0x5D, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x12, 0x51, 0x12, 0x3D, 0x35, 0x39, 0x30, 0x28, 0x3F, 0x3A, 0x31, 0x5B, 0x31, 0x32, 0x5D, 0x7C, 0x32, 0x5B, 0x30, 0x2D, 0x36, 0x38, 0x5D, 0x7C, 0x33, 0x5B, 0x32, 0x38, 0x5D, 0x7C, 0x34, 0x5B, 0x31, 0x32, 0x36, 0x2D, 0x38, 0x5D, 0x7C, 0x35, 0x5B, 0x30, 0x36, 0x37, 0x5D, 0x7C, 0x36, 0x5B, 0x30, 0x31, 0x38, 0x5D, 0x7C, 0x5B, 0x38, 0x39, 0x5D, 0x5C, 0x64, 0x29, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x35, 0x39, 0x30, 0x32, 0x30, 0x31, 0x32, 0x33, 0x34, 0x1A, 0x58, 0x12, 0x44, 0x36, 0x39, 0x30, 0x28, 0x3F, 0x3A, 0x30, 0x30, 0x7C, 0x31, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x7C, 0x32, 0x5B, 0x30, 0x31, 0x33, 0x2D, 0x35, 0x5D, 0x7C, 0x5B, 0x33, 0x2D, 0x35, 0x5D, 0x5C, 0x64, 0x7C, 0x36, 0x5B, 0x30, 0x2D, 0x35, 0x37, 0x2D, 0x39, 0x5D, 0x7C, 0x37, 0x5B, 0x31, 0x2D, 0x36, 0x5D, 0x7C, 0x38, 0x5B, 0x30, 0x2D, 0x36, 0x5D, 0x7C, 0x39, 0x5B, 0x30, 0x39, 0x5D, 0x29, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x36, 0x39, 0x30, 0x33, 0x30, 0x31, 0x32, 0x33, 0x34, 0x22, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x2A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x47, 0x50, 0x50, 0xCE, 0x04, 0x5A, 0x02, 0x30, 0x30, 0x62, 0x01, 0x30, 0x7A, 0x01, 0x30, 0x9A, 0x01, 0x29, 0x0A, 0x16, 0x28, 0x5B, 0x35, 0x36, 0x5D, 0x39, 0x30, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x2D, 0x24, 0x33, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xB0, 0x01, 0x01, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xF4, 0x02, 0x0A, 0x17, 0x12, 0x0C, 0x5B, 0x32, 0x33, 0x35, 0x38, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x36, 0x2C, 0x39, 0x7D, 0x12, 0x48, 0x12, 0x32, 0x33, 0x28, 0x3F, 0x3A, 0x33, 0x28, 0x3F, 0x3A, 0x33, 0x5C, 0x64, 0x5B, 0x37, 0x2D, 0x39, 0x5D, 0x7C, 0x5B, 0x30, 0x2D, 0x32, 0x34, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x5B, 0x34, 0x36, 0x5D, 0x29, 0x7C, 0x35, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x5B, 0x37, 0x2D, 0x39, 0x5D, 0x29, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x36, 0x2C, 0x39, 0x7D, 0x32, 0x09, 0x33, 0x33, 0x33, 0x30, 0x39, 0x31, 0x32, 0x33, 0x34, 0x1A, 0x26, 0x12, 0x10, 0x28, 0x3F, 0x3A, 0x32, 0x32, 0x32, 0x7C, 0x35, 0x35, 0x31, 0x29, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x36, 0x2C, 0x39, 0x7D, 0x32, 0x09, 0x32, 0x32, 0x32, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x22, 0x24, 0x12, 0x0E, 0x38, 0x30, 0x5C, 0x64, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x36, 0x2C, 0x39, 0x7D, 0x32, 0x09, 0x38, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x2A, 0x24, 0x12, 0x0E, 0x39, 0x30, 0x5C, 0x64, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x36, 0x2C, 0x39, 0x7D, 0x32, 0x09, 0x39, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x47, 0x51, 0x50, 0xF0, 0x01, 0x5A, 0x02, 0x30, 0x30, 0x9A, 0x01, 0x2C, 0x0A, 0x15, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x05, 0x5B, 0x32, 0x33, 0x35, 0x5D, 0x22, 0x00, 0x2A, 0x00, 0x9A, 0x01, 0x21, 0x0A, 0x0E, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x1A, 0x04, 0x5B, 0x38, 0x39, 0x5D, 0x22, 0x00, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0x81, 0x06, 0x0A, 0x15, 0x12, 0x0B, 0x5B, 0x32, 0x36, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x12, 0xF1, 0x02, 0x12, 0xDA, 0x02, 0x32, 0x28, 0x3F, 0x3A, 0x31, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x7C, 0x32, 0x28, 0x3F, 0x3A, 0x33, 0x5B, 0x31, 0x2D, 0x38, 0x5D, 0x7C, 0x34, 0x5B, 0x31, 0x2D, 0x37, 0x5D, 0x7C, 0x35, 0x5B, 0x31, 0x2D, 0x34, 0x5D, 0x7C, 0x36, 0x5B, 0x31, 0x2D, 0x38, 0x5D, 0x7C, 0x37, 0x5B, 0x31, 0x2D, 0x35, 0x5D, 0x7C, 0x5B, 0x32, 0x38, 0x39, 0x5D, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x29, 0x7C, 0x33, 0x28, 0x3F, 0x3A, 0x31, 0x5C, 0x64, 0x7C, 0x32, 0x5B, 0x31, 0x2D, 0x35, 0x5D, 0x7C, 0x33, 0x5B, 0x31, 0x2D, 0x34, 0x5D, 0x7C, 0x5B, 0x34, 0x35, 0x5D, 0x5B, 0x31, 0x2D, 0x33, 0x5D, 0x7C, 0x37, 0x5B, 0x31, 0x2D, 0x37, 0x5D, 0x7C, 0x38, 0x5B, 0x31, 0x2D, 0x36, 0x5D, 0x7C, 0x39, 0x5B, 0x31, 0x2D, 0x37, 0x39, 0x5D, 0x29, 0x7C, 0x34, 0x28, 0x3F, 0x3A, 0x31, 0x5C, 0x64, 0x7C, 0x32, 0x5B, 0x31, 0x2D, 0x38, 0x5D, 0x7C, 0x33, 0x5B, 0x31, 0x2D, 0x34, 0x5D, 0x7C, 0x34, 0x5B, 0x31, 0x33, 0x2D, 0x35, 0x5D, 0x7C, 0x36, 0x5B, 0x31, 0x2D, 0x35, 0x37, 0x38, 0x5D, 0x7C, 0x39, 0x5B, 0x31, 0x2D, 0x35, 0x5D, 0x29, 0x7C, 0x35, 0x28, 0x3F, 0x3A, 0x31, 0x5C, 0x64, 0x7C, 0x32, 0x5B, 0x31, 0x2D, 0x33, 0x5D, 0x7C, 0x34, 0x5B, 0x31, 0x32, 0x34, 0x5D, 0x7C, 0x35, 0x5B, 0x31, 0x2D, 0x36, 0x5D, 0x7C, 0x5B, 0x33, 0x39, 0x5D, 0x5B, 0x31, 0x2D, 0x34, 0x5D, 0x29, 0x7C, 0x36, 0x28, 0x3F, 0x3A, 0x31, 0x5C, 0x64, 0x7C, 0x33, 0x5B, 0x32, 0x34, 0x5D, 0x7C, 0x34, 0x5B, 0x31, 0x2D, 0x37, 0x5D, 0x7C, 0x35, 0x5B, 0x31, 0x33, 0x2D, 0x39, 0x5D, 0x7C, 0x5B, 0x32, 0x36, 0x39, 0x5D, 0x5B, 0x31, 0x2D, 0x36, 0x5D, 0x7C, 0x37, 0x5B, 0x31, 0x34, 0x5D, 0x7C, 0x38, 0x5B, 0x31, 0x2D, 0x33, 0x35, 0x5D, 0x29, 0x7C, 0x37, 0x28, 0x3F, 0x3A, 0x31, 0x5C, 0x64, 0x7C, 0x5B, 0x32, 0x33, 0x5D, 0x5B, 0x31, 0x2D, 0x35, 0x5D, 0x7C, 0x34, 0x5B, 0x31, 0x2D, 0x37, 0x5D, 0x7C, 0x35, 0x5B, 0x31, 0x2D, 0x35, 0x37, 0x5D, 0x7C, 0x36, 0x5B, 0x31, 0x33, 0x34, 0x5D, 0x7C, 0x39, 0x5B, 0x31, 0x35, 0x2D, 0x37, 0x5D, 0x29, 0x7C, 0x38, 0x28, 0x3F, 0x3A, 0x31, 0x5C, 0x64, 0x7C, 0x32, 0x5B, 0x31, 0x2D, 0x35, 0x5D, 0x7C, 0x5B, 0x33, 0x34, 0x5D, 0x5B, 0x31, 0x2D, 0x34, 0x5D, 0x7C, 0x39, 0x5B, 0x31, 0x2D, 0x37, 0x5D, 0x29, 0x29, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x32, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x1A, 0x1D, 0x12, 0x07, 0x36, 0x39, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x36, 0x39, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x22, 0x1E, 0x12, 0x08, 0x38, 0x30, 0x30, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x38, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x2A, 0x21, 0x12, 0x0B, 0x39, 0x30, 0x5B, 0x31, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x39, 0x30, 0x39, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x32, 0x2B, 0x12, 0x15, 0x38, 0x28, 0x3F, 0x3A, 0x30, 0x5B, 0x31, 0x36, 0x5D, 0x7C, 0x31, 0x32, 0x7C, 0x32, 0x35, 0x29, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x38, 0x30, 0x31, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x3A, 0x1D, 0x12, 0x07, 0x37, 0x30, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x37, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x47, 0x52, 0x50, 0x1E, 0x5A, 0x02, 0x30, 0x30, 0x9A, 0x01, 0x2C, 0x0A, 0x16, 0x28, 0x5B, 0x32, 0x37, 0x5D, 0x5C, 0x64, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x04, 0x32, 0x31, 0x7C, 0x37, 0x22, 0x00, 0x2A, 0x00, 0x9A, 0x01, 0x34, 0x0A, 0x15, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x0D, 0x32, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x31, 0x7C, 0x5B, 0x36, 0x38, 0x39, 0x5D, 0x22, 0x00, 0x2A, 0x00, 0x9A, 0x01, 0x2A, 0x0A, 0x0F, 0x28, 0x32, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x1A, 0x0C, 0x32, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x5B, 0x30, 0x32, 0x2D, 0x39, 0x5D, 0x22, 0x00, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xCB, 0x02, 0x0A, 0x28, 0x12, 0x15, 0x5B, 0x32, 0x2D, 0x37, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x7C, 0x31, 0x5B, 0x38, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x1A, 0x0F, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x28, 0x3F, 0x3A, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x3F, 0x12, 0x22, 0x12, 0x0F, 0x5B, 0x32, 0x36, 0x37, 0x5D, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x32, 0x32, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x1A, 0x1D, 0x12, 0x0A, 0x5B, 0x33, 0x34, 0x35, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x35, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x22, 0x22, 0x12, 0x0B, 0x31, 0x38, 0x5B, 0x30, 0x31, 0x5D, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x31, 0x7D, 0x32, 0x0B, 0x31, 0x38, 0x30, 0x30, 0x31, 0x31, 0x31, 0x32, 0x32, 0x32, 0x32, 0x2A, 0x1E, 0x12, 0x07, 0x31, 0x39, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x31, 0x7D, 0x32, 0x0B, 0x31, 0x39, 0x30, 0x30, 0x31, 0x31, 0x31, 0x32, 0x32, 0x32, 0x32, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x47, 0x54, 0x50, 0xF6, 0x03, 0x5A, 0x02, 0x30, 0x30, 0x9A, 0x01, 0x22, 0x0A, 0x0E, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x1A, 0x05, 0x5B, 0x32, 0x2D, 0x37, 0x5D, 0x22, 0x00, 0x2A, 0x00, 0x9A, 0x01, 0x28, 0x0A, 0x15, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x01, 0x31, 0x22, 0x00, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xE6, 0x05, 0x0A, 0x1E, 0x12, 0x0B, 0x5B, 0x35, 0x36, 0x38, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x1A, 0x0F, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x28, 0x3F, 0x3A, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x3F, 0x12, 0xF4, 0x01, 0x12, 0xD4, 0x01, 0x36, 0x37, 0x31, 0x28, 0x3F, 0x3A, 0x33, 0x28, 0x3F, 0x3A, 0x30, 0x30, 0x7C, 0x33, 0x5B, 0x33, 0x39, 0x5D, 0x7C, 0x34, 0x5B, 0x33, 0x34, 0x39, 0x5D, 0x7C, 0x35, 0x35, 0x7C, 0x36, 0x5B, 0x32, 0x36, 0x5D, 0x29, 0x7C, 0x34, 0x28, 0x3F, 0x3A, 0x35, 0x36, 0x7C, 0x37, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x7C, 0x38, 0x5B, 0x32, 0x33, 0x36, 0x37, 0x38, 0x5D, 0x29, 0x7C, 0x35, 0x28, 0x3F, 0x3A, 0x35, 0x35, 0x7C, 0x36, 0x5B, 0x32, 0x2D, 0x35, 0x5D, 0x7C, 0x38, 0x38, 0x29, 0x7C, 0x36, 0x28, 0x3F, 0x3A, 0x33, 0x5B, 0x32, 0x2D, 0x35, 0x37, 0x38, 0x5D, 0x7C, 0x34, 0x5B, 0x32, 0x34, 0x2D, 0x39, 0x5D, 0x7C, 0x35, 0x5B, 0x33, 0x34, 0x5D, 0x7C, 0x37, 0x38, 0x7C, 0x38, 0x5B, 0x35, 0x2D, 0x39, 0x5D, 0x29, 0x7C, 0x37, 0x28, 0x3F, 0x3A, 0x5B, 0x30, 0x37, 0x39, 0x5D, 0x37, 0x7C, 0x32, 0x5B, 0x30, 0x31, 0x36, 0x37, 0x5D, 0x7C, 0x33, 0x5B, 0x34, 0x35, 0x5D, 0x7C, 0x38, 0x5B, 0x37, 0x38, 0x39, 0x5D, 0x29, 0x7C, 0x38, 0x28, 0x3F, 0x3A, 0x5B, 0x32, 0x2D, 0x35, 0x37, 0x38, 0x39, 0x5D, 0x38, 0x7C, 0x36, 0x5B, 0x34, 0x38, 0x5D, 0x29, 0x7C, 0x39, 0x28, 0x3F, 0x3A, 0x32, 0x5B, 0x32, 0x39, 0x5D, 0x7C, 0x36, 0x5B, 0x37, 0x39, 0x5D, 0x7C, 0x37, 0x5B, 0x31, 0x37, 0x39, 0x5D, 0x7C, 0x38, 0x5B, 0x37, 0x38, 0x39, 0x5D, 0x7C, 0x39, 0x5B, 0x37, 0x38, 0x5D, 0x29, 0x29, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x0F, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x28, 0x3F, 0x3A, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x3F, 0x32, 0x0A, 0x36, 0x37, 0x31, 0x33, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x1A, 0xF4, 0x01, 0x12, 0xD4, 0x01, 0x36, 0x37, 0x31, 0x28, 0x3F, 0x3A, 0x33, 0x28, 0x3F, 0x3A, 0x30, 0x30, 0x7C, 0x33, 0x5B, 0x33, 0x39, 0x5D, 0x7C, 0x34, 0x5B, 0x33, 0x34, 0x39, 0x5D, 0x7C, 0x35, 0x35, 0x7C, 0x36, 0x5B, 0x32, 0x36, 0x5D, 0x29, 0x7C, 0x34, 0x28, 0x3F, 0x3A, 0x35, 0x36, 0x7C, 0x37, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x7C, 0x38, 0x5B, 0x32, 0x33, 0x36, 0x37, 0x38, 0x5D, 0x29, 0x7C, 0x35, 0x28, 0x3F, 0x3A, 0x35, 0x35, 0x7C, 0x36, 0x5B, 0x32, 0x2D, 0x35, 0x5D, 0x7C, 0x38, 0x38, 0x29, 0x7C, 0x36, 0x28, 0x3F, 0x3A, 0x33, 0x5B, 0x32, 0x2D, 0x35, 0x37, 0x38, 0x5D, 0x7C, 0x34, 0x5B, 0x32, 0x34, 0x2D, 0x39, 0x5D, 0x7C, 0x35, 0x5B, 0x33, 0x34, 0x5D, 0x7C, 0x37, 0x38, 0x7C, 0x38, 0x5B, 0x35, 0x2D, 0x39, 0x5D, 0x29, 0x7C, 0x37, 0x28, 0x3F, 0x3A, 0x5B, 0x30, 0x37, 0x39, 0x5D, 0x37, 0x7C, 0x32, 0x5B, 0x30, 0x31, 0x36, 0x37, 0x5D, 0x7C, 0x33, 0x5B, 0x34, 0x35, 0x5D, 0x7C, 0x38, 0x5B, 0x37, 0x38, 0x39, 0x5D, 0x29, 0x7C, 0x38, 0x28, 0x3F, 0x3A, 0x5B, 0x32, 0x2D, 0x35, 0x37, 0x38, 0x39, 0x5D, 0x38, 0x7C, 0x36, 0x5B, 0x34, 0x38, 0x5D, 0x29, 0x7C, 0x39, 0x28, 0x3F, 0x3A, 0x32, 0x5B, 0x32, 0x39, 0x5D, 0x7C, 0x36, 0x5B, 0x37, 0x39, 0x5D, 0x7C, 0x37, 0x5B, 0x31, 0x37, 0x39, 0x5D, 0x7C, 0x38, 0x5B, 0x37, 0x38, 0x39, 0x5D, 0x7C, 0x39, 0x5B, 0x37, 0x38, 0x5D, 0x29, 0x29, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x0F, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x28, 0x3F, 0x3A, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x3F, 0x32, 0x0A, 0x36, 0x37, 0x31, 0x33, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x22, 0x33, 0x12, 0x1D, 0x38, 0x28, 0x3F, 0x3A, 0x30, 0x30, 0x7C, 0x35, 0x35, 0x7C, 0x36, 0x36, 0x7C, 0x37, 0x37, 0x7C, 0x38, 0x38, 0x29, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x38, 0x30, 0x30, 0x32, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x2A, 0x23, 0x12, 0x0D, 0x39, 0x30, 0x30, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x39, 0x30, 0x30, 0x32, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x2D, 0x12, 0x17, 0x35, 0x28, 0x3F, 0x3A, 0x30, 0x30, 0x7C, 0x33, 0x33, 0x7C, 0x34, 0x34, 0x29, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x35, 0x30, 0x30, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x47, 0x55, 0x50, 0x01, 0x5A, 0x03, 0x30, 0x31, 0x31, 0x62, 0x01, 0x31, 0x7A, 0x01, 0x31, 0x90, 0x01, 0x01, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xBA, 0x01, 0x03, 0x36, 0x37, 0x31, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xF6, 0x01, 0x0A, 0x14, 0x12, 0x0B, 0x5B, 0x33, 0x35, 0x36, 0x37, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x12, 0x44, 0x12, 0x32, 0x33, 0x28, 0x3F, 0x3A, 0x32, 0x5B, 0x30, 0x31, 0x32, 0x35, 0x5D, 0x7C, 0x33, 0x5B, 0x31, 0x32, 0x34, 0x35, 0x5D, 0x7C, 0x34, 0x5B, 0x31, 0x32, 0x5D, 0x7C, 0x35, 0x5B, 0x31, 0x2D, 0x34, 0x5D, 0x7C, 0x37, 0x30, 0x7C, 0x39, 0x5B, 0x31, 0x2D, 0x34, 0x36, 0x37, 0x5D, 0x29, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x32, 0x07, 0x33, 0x32, 0x30, 0x31, 0x32, 0x33, 0x34, 0x1A, 0x1C, 0x12, 0x0A, 0x5B, 0x35, 0x2D, 0x37, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x32, 0x07, 0x35, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x22, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x2A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x47, 0x57, 0x50, 0xF5, 0x01, 0x5A, 0x02, 0x30, 0x30, 0x9A, 0x01, 0x1B, 0x0A, 0x0E, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x22, 0x00, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xD8, 0x02, 0x0A, 0x16, 0x12, 0x0D, 0x5B, 0x32, 0x2D, 0x34, 0x36, 0x37, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x12, 0x7A, 0x12, 0x68, 0x28, 0x3F, 0x3A, 0x32, 0x28, 0x3F, 0x3A, 0x31, 0x5B, 0x36, 0x2D, 0x39, 0x5D, 0x7C, 0x32, 0x5B, 0x30, 0x2D, 0x33, 0x35, 0x2D, 0x39, 0x5D, 0x7C, 0x33, 0x5B, 0x31, 0x2D, 0x34, 0x5D, 0x7C, 0x35, 0x5B, 0x33, 0x2D, 0x39, 0x5D, 0x7C, 0x36, 0x5C, 0x64, 0x7C, 0x37, 0x5B, 0x30, 0x2D, 0x32, 0x34, 0x2D, 0x37, 0x39, 0x5D, 0x29, 0x7C, 0x33, 0x28, 0x3F, 0x3A, 0x32, 0x5B, 0x32, 0x35, 0x2D, 0x39, 0x5D, 0x7C, 0x33, 0x5C, 0x64, 0x29, 0x7C, 0x34, 0x28, 0x3F, 0x3A, 0x34, 0x5B, 0x30, 0x2D, 0x32, 0x34, 0x5D, 0x7C, 0x35, 0x5B, 0x35, 0x36, 0x5D, 0x29, 0x7C, 0x37, 0x37, 0x5B, 0x31, 0x2D, 0x35, 0x37, 0x5D, 0x29, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x32, 0x07, 0x32, 0x32, 0x30, 0x31, 0x32, 0x33, 0x34, 0x1A, 0x18, 0x12, 0x06, 0x36, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x32, 0x07, 0x36, 0x30, 0x39, 0x31, 0x32, 0x33, 0x34, 0x22, 0x22, 0x12, 0x10, 0x28, 0x3F, 0x3A, 0x32, 0x38, 0x39, 0x7C, 0x38, 0x36, 0x32, 0x29, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x32, 0x07, 0x32, 0x38, 0x39, 0x31, 0x32, 0x33, 0x34, 0x2A, 0x1B, 0x12, 0x09, 0x39, 0x30, 0x30, 0x38, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x32, 0x07, 0x39, 0x30, 0x30, 0x38, 0x31, 0x32, 0x33, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x47, 0x59, 0x50, 0xD0, 0x04, 0x5A, 0x03, 0x30, 0x30, 0x31, 0x9A, 0x01, 0x1B, 0x0A, 0x0E, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x22, 0x00, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xA6, 0x03, 0x0A, 0x2B, 0x12, 0x1F, 0x5B, 0x32, 0x33, 0x35, 0x2D, 0x37, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x7C, 0x38, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x38, 0x7D, 0x7C, 0x39, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x31, 0x30, 0x7D, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x38, 0x2C, 0x31, 0x31, 0x7D, 0x12, 0x1C, 0x12, 0x09, 0x5B, 0x32, 0x33, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x32, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x1A, 0x1E, 0x12, 0x0B, 0x5B, 0x35, 0x2D, 0x37, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x35, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x22, 0x1C, 0x12, 0x08, 0x38, 0x30, 0x30, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x38, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x2A, 0x1F, 0x12, 0x08, 0x39, 0x30, 0x30, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x31, 0x7D, 0x32, 0x0B, 0x39, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x1E, 0x12, 0x0B, 0x38, 0x5B, 0x31, 0x2D, 0x33, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x38, 0x31, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x48, 0x4B, 0x50, 0xD4, 0x06, 0x5A, 0x02, 0x30, 0x30, 0x9A, 0x01, 0x39, 0x0A, 0x0E, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x1A, 0x1C, 0x5B, 0x32, 0x33, 0x35, 0x2D, 0x37, 0x5D, 0x7C, 0x5B, 0x38, 0x39, 0x5D, 0x28, 0x3F, 0x3A, 0x30, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x7C, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x29, 0x22, 0x00, 0x2A, 0x00, 0x9A, 0x01, 0x28, 0x0A, 0x13, 0x28, 0x38, 0x30, 0x30, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x03, 0x38, 0x30, 0x30, 0x22, 0x00, 0x2A, 0x00, 0x9A, 0x01, 0x32, 0x0A, 0x1A, 0x28, 0x39, 0x30, 0x30, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x12, 0x0B, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x20, 0x24, 0x34, 0x1A, 0x03, 0x39, 0x30, 0x30, 0x22, 0x00, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0x9E, 0x03, 0x0A, 0x15, 0x12, 0x0C, 0x5B, 0x32, 0x33, 0x37, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x12, 0xE8, 0x01, 0x12, 0xD4, 0x01, 0x32, 0x28, 0x3F, 0x3A, 0x32, 0x28, 0x3F, 0x3A, 0x30, 0x5B, 0x30, 0x31, 0x39, 0x5D, 0x7C, 0x31, 0x5B, 0x31, 0x2D, 0x33, 0x36, 0x5D, 0x7C, 0x5B, 0x32, 0x33, 0x5D, 0x5C, 0x64, 0x7C, 0x34, 0x5B, 0x30, 0x35, 0x36, 0x5D, 0x7C, 0x35, 0x5B, 0x35, 0x37, 0x5D, 0x7C, 0x39, 0x5B, 0x30, 0x31, 0x5D, 0x29, 0x7C, 0x34, 0x28, 0x3F, 0x3A, 0x32, 0x7C, 0x33, 0x2D, 0x35, 0x39, 0x5D, 0x7C, 0x33, 0x5B, 0x31, 0x33, 0x2D, 0x36, 0x38, 0x39, 0x5D, 0x7C, 0x34, 0x5B, 0x30, 0x2D, 0x36, 0x38, 0x5D, 0x7C, 0x35, 0x5B, 0x31, 0x2D, 0x33, 0x35, 0x5D, 0x29, 0x7C, 0x35, 0x28, 0x3F, 0x3A, 0x34, 0x5B, 0x33, 0x2D, 0x35, 0x5D, 0x7C, 0x35, 0x5C, 0x64, 0x7C, 0x36, 0x5B, 0x35, 0x36, 0x5D, 0x7C, 0x37, 0x34, 0x29, 0x7C, 0x36, 0x28, 0x3F, 0x3A, 0x34, 0x5B, 0x30, 0x2D, 0x33, 0x37, 0x38, 0x5D, 0x7C, 0x5B, 0x35, 0x36, 0x5D, 0x5C, 0x64, 0x7C, 0x5B, 0x37, 0x38, 0x5D, 0x5B, 0x30, 0x2D, 0x38, 0x5D, 0x7C, 0x39, 0x5B, 0x30, 0x31, 0x5D, 0x29, 0x7C, 0x37, 0x28, 0x3F, 0x3A, 0x36, 0x5B, 0x34, 0x36, 0x2D, 0x39, 0x5D, 0x7C, 0x37, 0x5B, 0x30, 0x32, 0x2D, 0x39, 0x5D, 0x7C, 0x38, 0x5B, 0x33, 0x34, 0x5D, 0x29, 0x7C, 0x38, 0x28, 0x3F, 0x3A, 0x37, 0x39, 0x7C, 0x38, 0x5B, 0x30, 0x2D, 0x33, 0x35, 0x37, 0x38, 0x39, 0x5D, 0x7C, 0x39, 0x5B, 0x31, 0x2D, 0x35, 0x37, 0x2D, 0x39, 0x5D, 0x29, 0x29, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x32, 0x32, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x1A, 0x1E, 0x12, 0x0B, 0x5B, 0x33, 0x37, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x39, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x22, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x2A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x48, 0x4E, 0x50, 0xF8, 0x03, 0x5A, 0x02, 0x30, 0x30, 0x9A, 0x01, 0x1B, 0x0A, 0x0E, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x2D, 0x24, 0x32, 0x22, 0x00, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xA8, 0x06, 0x0A, 0x25, 0x12, 0x19, 0x5B, 0x31, 0x2D, 0x37, 0x5D, 0x5C, 0x64, 0x7B, 0x35, 0x2C, 0x38, 0x7D, 0x7C, 0x5B, 0x38, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x2C, 0x31, 0x31, 0x7D, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x36, 0x2C, 0x31, 0x32, 0x7D, 0x12, 0x4F, 0x12, 0x3A, 0x28, 0x3F, 0x3A, 0x31, 0x7C, 0x36, 0x5B, 0x30, 0x32, 0x39, 0x5D, 0x29, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x7C, 0x28, 0x3F, 0x3A, 0x32, 0x5B, 0x30, 0x2D, 0x33, 0x5D, 0x7C, 0x33, 0x5B, 0x31, 0x2D, 0x35, 0x5D, 0x7C, 0x34, 0x5B, 0x30, 0x32, 0x2D, 0x34, 0x37, 0x2D, 0x39, 0x5D, 0x7C, 0x35, 0x5B, 0x31, 0x2D, 0x33, 0x5D, 0x29, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x36, 0x2C, 0x39, 0x7D, 0x32, 0x08, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x1A, 0x27, 0x12, 0x10, 0x39, 0x5B, 0x31, 0x32, 0x35, 0x38, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x2C, 0x31, 0x30, 0x7D, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x38, 0x2C, 0x31, 0x32, 0x7D, 0x32, 0x09, 0x39, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x22, 0x25, 0x12, 0x0D, 0x38, 0x30, 0x5B, 0x30, 0x31, 0x5D, 0x5C, 0x64, 0x7B, 0x34, 0x2C, 0x37, 0x7D, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x38, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x2A, 0x20, 0x12, 0x0D, 0x36, 0x5B, 0x31, 0x34, 0x35, 0x5D, 0x5C, 0x64, 0x7B, 0x34, 0x2C, 0x37, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x36, 0x2C, 0x39, 0x7D, 0x32, 0x06, 0x36, 0x31, 0x31, 0x32, 0x33, 0x34, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x22, 0x12, 0x0C, 0x37, 0x5B, 0x34, 0x35, 0x5D, 0x5C, 0x64, 0x7B, 0x34, 0x2C, 0x37, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x36, 0x2C, 0x39, 0x7D, 0x32, 0x09, 0x37, 0x34, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x48, 0x52, 0x50, 0x81, 0x03, 0x5A, 0x02, 0x30, 0x30, 0x62, 0x01, 0x30, 0x7A, 0x01, 0x30, 0x9A, 0x01, 0x27, 0x0A, 0x11, 0x28, 0x31, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x01, 0x31, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x31, 0x0A, 0x16, 0x28, 0x36, 0x5B, 0x30, 0x32, 0x39, 0x5D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x06, 0x36, 0x5B, 0x30, 0x32, 0x39, 0x5D, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x31, 0x0A, 0x17, 0x28, 0x5B, 0x32, 0x2D, 0x35, 0x5D, 0x5C, 0x64, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x05, 0x5B, 0x32, 0x2D, 0x35, 0x5D, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x32, 0x0A, 0x1C, 0x28, 0x39, 0x5B, 0x31, 0x32, 0x35, 0x38, 0x39, 0x5D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x2C, 0x34, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x2C, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x01, 0x39, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x3A, 0x0A, 0x21, 0x28, 0x39, 0x5B, 0x31, 0x32, 0x35, 0x38, 0x39, 0x5D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x2C, 0x34, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x12, 0x0B, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x20, 0x24, 0x34, 0x1A, 0x01, 0x39, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x34, 0x0A, 0x17, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x2C, 0x33, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x08, 0x36, 0x5B, 0x31, 0x34, 0x35, 0x5D, 0x7C, 0x37, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x34, 0x0A, 0x17, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x2C, 0x34, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x08, 0x36, 0x5B, 0x31, 0x34, 0x35, 0x5D, 0x7C, 0x37, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x2E, 0x0A, 0x18, 0x28, 0x38, 0x30, 0x5B, 0x30, 0x31, 0x5D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x2C, 0x33, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x01, 0x38, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x2E, 0x0A, 0x18, 0x28, 0x38, 0x30, 0x5B, 0x30, 0x31, 0x5D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x2C, 0x34, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x01, 0x38, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0x9B, 0x02, 0x0A, 0x15, 0x12, 0x0C, 0x5B, 0x32, 0x2D, 0x34, 0x38, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x12, 0x2D, 0x12, 0x1A, 0x32, 0x28, 0x3F, 0x3A, 0x5B, 0x32, 0x34, 0x5D, 0x5C, 0x64, 0x7C, 0x35, 0x5B, 0x31, 0x2D, 0x35, 0x5D, 0x7C, 0x39, 0x34, 0x29, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x32, 0x32, 0x34, 0x35, 0x33, 0x33, 0x30, 0x30, 0x1A, 0x26, 0x12, 0x13, 0x28, 0x3F, 0x3A, 0x33, 0x5B, 0x34, 0x2D, 0x39, 0x5D, 0x7C, 0x34, 0x5C, 0x64, 0x29, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x33, 0x34, 0x31, 0x30, 0x31, 0x32, 0x33, 0x34, 0x22, 0x19, 0x12, 0x06, 0x38, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x38, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x2A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x1E, 0x12, 0x0B, 0x39, 0x38, 0x5B, 0x38, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x39, 0x38, 0x39, 0x30, 0x31, 0x32, 0x33, 0x34, 0x4A, 0x02, 0x48, 0x54, 0x50, 0xFD, 0x03, 0x5A, 0x02, 0x30, 0x30, 0x9A, 0x01, 0x25, 0x0A, 0x15, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x22, 0x00, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xAF, 0x03, 0x0A, 0x12, 0x12, 0x07, 0x5C, 0x64, 0x7B, 0x38, 0x2C, 0x39, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x36, 0x2C, 0x39, 0x7D, 0x12, 0x71, 0x12, 0x5C, 0x28, 0x3F, 0x3A, 0x31, 0x5C, 0x64, 0x7C, 0x32, 0x28, 0x3F, 0x3A, 0x31, 0x5C, 0x64, 0x7C, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x29, 0x7C, 0x33, 0x5B, 0x32, 0x2D, 0x37, 0x5D, 0x7C, 0x34, 0x5B, 0x32, 0x34, 0x2D, 0x39, 0x5D, 0x7C, 0x35, 0x5B, 0x32, 0x2D, 0x37, 0x39, 0x5D, 0x7C, 0x36, 0x5B, 0x32, 0x33, 0x36, 0x38, 0x39, 0x5D, 0x7C, 0x37, 0x28, 0x3F, 0x3A, 0x31, 0x5C, 0x64, 0x7C, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x29, 0x7C, 0x38, 0x5B, 0x32, 0x2D, 0x35, 0x37, 0x2D, 0x39, 0x5D, 0x7C, 0x39, 0x5B, 0x32, 0x2D, 0x36, 0x39, 0x5D, 0x29, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x36, 0x2C, 0x39, 0x7D, 0x32, 0x08, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x1A, 0x28, 0x12, 0x14, 0x28, 0x3F, 0x3A, 0x5B, 0x32, 0x37, 0x5D, 0x30, 0x7C, 0x33, 0x5B, 0x30, 0x31, 0x5D, 0x29, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x32, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x22, 0x1A, 0x12, 0x07, 0x38, 0x30, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x38, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x2A, 0x1D, 0x12, 0x0A, 0x39, 0x5B, 0x30, 0x31, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x39, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x32, 0x1A, 0x12, 0x07, 0x34, 0x30, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x34, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x48, 0x55, 0x50, 0x24, 0x5A, 0x02, 0x30, 0x30, 0x62, 0x02, 0x30, 0x36, 0x7A, 0x02, 0x30, 0x36, 0x9A, 0x01, 0x28, 0x0A, 0x11, 0x28, 0x31, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x01, 0x31, 0x22, 0x04, 0x28, 0x24, 0x31, 0x29, 0x2A, 0x00, 0x9A, 0x01, 0x32, 0x0A, 0x17, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x2C, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x05, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x22, 0x04, 0x28, 0x24, 0x31, 0x29, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xDD, 0x07, 0x0A, 0x19, 0x12, 0x0D, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x2C, 0x31, 0x30, 0x7D, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x35, 0x2C, 0x31, 0x31, 0x7D, 0x12, 0xB1, 0x03, 0x12, 0x99, 0x03, 0x32, 0x5B, 0x31, 0x32, 0x34, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x38, 0x7D, 0x7C, 0x28, 0x3F, 0x3A, 0x32, 0x28, 0x3F, 0x3A, 0x5B, 0x33, 0x35, 0x5D, 0x5B, 0x31, 0x2D, 0x34, 0x5D, 0x7C, 0x36, 0x5B, 0x30, 0x2D, 0x38, 0x5D, 0x7C, 0x37, 0x5B, 0x31, 0x2D, 0x36, 0x5D, 0x7C, 0x38, 0x5C, 0x64, 0x7C, 0x39, 0x5B, 0x31, 0x2D, 0x38, 0x5D, 0x29, 0x7C, 0x33, 0x28, 0x3F, 0x3A, 0x31, 0x7C, 0x32, 0x5B, 0x31, 0x2D, 0x35, 0x37, 0x38, 0x5D, 0x7C, 0x33, 0x5B, 0x31, 0x2D, 0x36, 0x38, 0x5D, 0x7C, 0x34, 0x5B, 0x31, 0x2D, 0x33, 0x5D, 0x7C, 0x35, 0x5B, 0x31, 0x2D, 0x38, 0x5D, 0x7C, 0x36, 0x5B, 0x31, 0x2D, 0x33, 0x35, 0x36, 0x38, 0x5D, 0x7C, 0x37, 0x5B, 0x30, 0x2D, 0x34, 0x36, 0x5D, 0x7C, 0x38, 0x5C, 0x64, 0x29, 0x7C, 0x34, 0x28, 0x3F, 0x3A, 0x30, 0x5B, 0x31, 0x2D, 0x35, 0x38, 0x39, 0x5D, 0x7C, 0x31, 0x5B, 0x30, 0x31, 0x33, 0x34, 0x37, 0x2D, 0x39, 0x5D, 0x7C, 0x32, 0x5B, 0x30, 0x2D, 0x33, 0x36, 0x2D, 0x38, 0x5D, 0x7C, 0x33, 0x5B, 0x30, 0x2D, 0x32, 0x34, 0x2D, 0x36, 0x38, 0x5D, 0x7C, 0x35, 0x5B, 0x31, 0x2D, 0x33, 0x37, 0x38, 0x5D, 0x7C, 0x36, 0x5B, 0x31, 0x2D, 0x35, 0x5D, 0x7C, 0x37, 0x5B, 0x31, 0x33, 0x34, 0x5D, 0x7C, 0x38, 0x5B, 0x31, 0x32, 0x34, 0x35, 0x5D, 0x29, 0x7C, 0x35, 0x28, 0x3F, 0x3A, 0x31, 0x5B, 0x31, 0x2D, 0x33, 0x35, 0x2D, 0x39, 0x5D, 0x7C, 0x32, 0x5B, 0x32, 0x35, 0x2D, 0x38, 0x5D, 0x7C, 0x33, 0x5B, 0x31, 0x32, 0x34, 0x36, 0x2D, 0x39, 0x5D, 0x7C, 0x34, 0x5B, 0x31, 0x2D, 0x33, 0x35, 0x38, 0x39, 0x5D, 0x7C, 0x35, 0x5B, 0x31, 0x2D, 0x34, 0x36, 0x5D, 0x7C, 0x36, 0x5B, 0x31, 0x2D, 0x38, 0x5D, 0x29, 0x7C, 0x36, 0x28, 0x3F, 0x3A, 0x31, 0x39, 0x3F, 0x7C, 0x5B, 0x32, 0x35, 0x5D, 0x5C, 0x64, 0x7C, 0x33, 0x5B, 0x31, 0x2D, 0x34, 0x36, 0x39, 0x5D, 0x7C, 0x34, 0x5B, 0x31, 0x2D, 0x36, 0x5D, 0x29, 0x7C, 0x37, 0x28, 0x3F, 0x3A, 0x31, 0x5B, 0x31, 0x2D, 0x34, 0x36, 0x2D, 0x39, 0x5D, 0x7C, 0x32, 0x5B, 0x31, 0x34, 0x2D, 0x39, 0x5D, 0x7C, 0x5B, 0x33, 0x36, 0x5D, 0x5C, 0x64, 0x7C, 0x34, 0x5B, 0x31, 0x2D, 0x38, 0x5D, 0x7C, 0x35, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x7C, 0x37, 0x5B, 0x30, 0x2D, 0x33, 0x36, 0x2D, 0x39, 0x5D, 0x29, 0x7C, 0x39, 0x28, 0x3F, 0x3A, 0x30, 0x5B, 0x31, 0x32, 0x5D, 0x7C, 0x31, 0x5B, 0x30, 0x31, 0x33, 0x34, 0x2D, 0x38, 0x5D, 0x7C, 0x32, 0x5B, 0x30, 0x2D, 0x34, 0x37, 0x39, 0x5D, 0x7C, 0x35, 0x5B, 0x31, 0x32, 0x35, 0x2D, 0x38, 0x5D, 0x7C, 0x36, 0x5B, 0x32, 0x33, 0x36, 0x37, 0x39, 0x5D, 0x7C, 0x37, 0x5B, 0x31, 0x35, 0x39, 0x5D, 0x7C, 0x38, 0x5B, 0x30, 0x31, 0x33, 0x34, 0x36, 0x5D, 0x29, 0x29, 0x5C, 0x64, 0x7B, 0x35, 0x2C, 0x38, 0x7D, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x35, 0x2C, 0x31, 0x30, 0x7D, 0x32, 0x09, 0x36, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x1A, 0x27, 0x12, 0x10, 0x38, 0x5B, 0x31, 0x2D, 0x33, 0x35, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x39, 0x7D, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x39, 0x2C, 0x31, 0x31, 0x7D, 0x32, 0x09, 0x38, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x22, 0x2D, 0x12, 0x15, 0x31, 0x37, 0x37, 0x5C, 0x64, 0x7B, 0x36, 0x2C, 0x38, 0x7D, 0x7C, 0x38, 0x30, 0x30, 0x5C, 0x64, 0x7B, 0x35, 0x2C, 0x37, 0x7D, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x38, 0x2C, 0x31, 0x31, 0x7D, 0x32, 0x0A, 0x38, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x2A, 0x1E, 0x12, 0x08, 0x38, 0x30, 0x39, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x38, 0x30, 0x39, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x49, 0x44, 0x50, 0x3E, 0x5A, 0x1B, 0x30, 0x28, 0x3F, 0x3A, 0x30, 0x5B, 0x31, 0x37, 0x38, 0x39, 0x5D, 0x7C, 0x31, 0x30, 0x28, 0x3F, 0x3A, 0x30, 0x30, 0x7C, 0x31, 0x5B, 0x36, 0x37, 0x5D, 0x29, 0x29, 0x62, 0x01, 0x30, 0x7A, 0x01, 0x30, 0x9A, 0x01, 0x30, 0x0A, 0x10, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x38, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x1A, 0x0C, 0x32, 0x5B, 0x31, 0x32, 0x34, 0x5D, 0x7C, 0x5B, 0x33, 0x36, 0x5D, 0x31, 0x22, 0x05, 0x28, 0x30, 0x24, 0x31, 0x29, 0x2A, 0x00, 0x9A, 0x01, 0x3E, 0x0A, 0x10, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x35, 0x2C, 0x37, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x1A, 0x1A, 0x5B, 0x34, 0x35, 0x37, 0x39, 0x5D, 0x7C, 0x32, 0x5B, 0x30, 0x33, 0x35, 0x2D, 0x39, 0x5D, 0x7C, 0x5B, 0x33, 0x36, 0x5D, 0x5B, 0x30, 0x32, 0x2D, 0x39, 0x5D, 0x22, 0x05, 0x28, 0x30, 0x24, 0x31, 0x29, 0x2A, 0x00, 0x9A, 0x01, 0x38, 0x0A, 0x1A, 0x28, 0x38, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x2C, 0x34, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x2C, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x2D, 0x24, 0x32, 0x2D, 0x24, 0x33, 0x1A, 0x09, 0x38, 0x5B, 0x31, 0x2D, 0x33, 0x35, 0x2D, 0x39, 0x5D, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x21, 0x0A, 0x0E, 0x28, 0x31, 0x37, 0x37, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x36, 0x2C, 0x38, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x1A, 0x01, 0x31, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x23, 0x0A, 0x0E, 0x28, 0x38, 0x30, 0x30, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x35, 0x2C, 0x37, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x1A, 0x03, 0x38, 0x30, 0x30, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x32, 0x0A, 0x17, 0x28, 0x38, 0x30, 0x39, 0x29, 0x28, 0x5C, 0x64, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x12, 0x0B, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x20, 0x24, 0x34, 0x1A, 0x03, 0x38, 0x30, 0x39, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xD9, 0x08, 0x0A, 0x1A, 0x12, 0x0E, 0x5B, 0x31, 0x32, 0x34, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x2C, 0x39, 0x7D, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x35, 0x2C, 0x31, 0x30, 0x7D, 0x12, 0x91, 0x02, 0x12, 0xFB, 0x01, 0x31, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x38, 0x7D, 0x7C, 0x32, 0x28, 0x3F, 0x3A, 0x31, 0x5C, 0x64, 0x7B, 0x36, 0x2C, 0x37, 0x7D, 0x7C, 0x5B, 0x32, 0x34, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x7C, 0x33, 0x5C, 0x64, 0x7B, 0x35, 0x2C, 0x37, 0x7D, 0x29, 0x7C, 0x34, 0x28, 0x3F, 0x3A, 0x30, 0x5B, 0x32, 0x34, 0x5D, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x7C, 0x5B, 0x31, 0x32, 0x36, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x7C, 0x5B, 0x33, 0x34, 0x5D, 0x5C, 0x64, 0x7B, 0x35, 0x2C, 0x37, 0x7D, 0x7C, 0x35, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x7C, 0x37, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x7C, 0x38, 0x5B, 0x30, 0x2D, 0x34, 0x36, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x29, 0x7C, 0x35, 0x28, 0x3F, 0x3A, 0x30, 0x5B, 0x34, 0x35, 0x5D, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x7C, 0x31, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x7C, 0x32, 0x5C, 0x64, 0x7B, 0x35, 0x2C, 0x37, 0x7D, 0x7C, 0x5B, 0x33, 0x36, 0x37, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x7C, 0x38, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x29, 0x7C, 0x36, 0x28, 0x3F, 0x3A, 0x31, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x7C, 0x34, 0x5C, 0x64, 0x7B, 0x35, 0x2C, 0x37, 0x7D, 0x7C, 0x5B, 0x32, 0x33, 0x37, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x7C, 0x5B, 0x35, 0x36, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x29, 0x7C, 0x37, 0x5B, 0x31, 0x34, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x7C, 0x39, 0x28, 0x3F, 0x3A, 0x31, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x7C, 0x5B, 0x30, 0x34, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x7C, 0x5B, 0x33, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x29, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x35, 0x2C, 0x31, 0x30, 0x7D, 0x32, 0x07, 0x32, 0x32, 0x31, 0x32, 0x33, 0x34, 0x35, 0x1A, 0x31, 0x12, 0x1A, 0x38, 0x28, 0x3F, 0x3A, 0x32, 0x32, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x7C, 0x5B, 0x33, 0x35, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x38, 0x7D, 0x29, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x39, 0x2C, 0x31, 0x30, 0x7D, 0x32, 0x09, 0x38, 0x35, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x22, 0x1F, 0x12, 0x09, 0x31, 0x38, 0x30, 0x30, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x31, 0x38, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x2A, 0x38, 0x12, 0x22, 0x31, 0x35, 0x28, 0x3F, 0x3A, 0x31, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x7C, 0x5B, 0x32, 0x2D, 0x38, 0x5D, 0x30, 0x7C, 0x35, 0x39, 0x7C, 0x39, 0x5B, 0x30, 0x38, 0x39, 0x5D, 0x29, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x31, 0x35, 0x32, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x32, 0x22, 0x12, 0x0C, 0x31, 0x38, 0x5B, 0x35, 0x39, 0x5D, 0x30, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x31, 0x38, 0x35, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x3A, 0x1C, 0x12, 0x08, 0x37, 0x30, 0x30, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x37, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x42, 0x1B, 0x12, 0x07, 0x37, 0x36, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x37, 0x36, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x4A, 0x02, 0x49, 0x45, 0x50, 0xE1, 0x02, 0x5A, 0x02, 0x30, 0x30, 0x62, 0x01, 0x30, 0x7A, 0x01, 0x30, 0x9A, 0x01, 0x2B, 0x0A, 0x13, 0x28, 0x31, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x2C, 0x34, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x01, 0x31, 0x22, 0x05, 0x28, 0x30, 0x24, 0x31, 0x29, 0x2A, 0x00, 0x9A, 0x01, 0x48, 0x0A, 0x0E, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x1A, 0x26, 0x32, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x7C, 0x34, 0x5B, 0x33, 0x34, 0x37, 0x5D, 0x7C, 0x35, 0x5B, 0x32, 0x2D, 0x35, 0x38, 0x5D, 0x7C, 0x36, 0x5B, 0x32, 0x2D, 0x34, 0x37, 0x2D, 0x39, 0x5D, 0x7C, 0x39, 0x5B, 0x33, 0x2D, 0x39, 0x5D, 0x22, 0x05, 0x28, 0x30, 0x24, 0x31, 0x29, 0x2A, 0x00, 0x9A, 0x01, 0x2F, 0x0A, 0x0E, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x1A, 0x0D, 0x34, 0x30, 0x5B, 0x32, 0x34, 0x5D, 0x7C, 0x35, 0x30, 0x5B, 0x34, 0x35, 0x5D, 0x22, 0x05, 0x28, 0x30, 0x24, 0x31, 0x29, 0x2A, 0x00, 0x9A, 0x01, 0x2B, 0x0A, 0x12, 0x28, 0x34, 0x38, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x02, 0x34, 0x38, 0x22, 0x05, 0x28, 0x30, 0x24, 0x31, 0x29, 0x2A, 0x00, 0x9A, 0x01, 0x2C, 0x0A, 0x13, 0x28, 0x38, 0x31, 0x38, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x02, 0x38, 0x31, 0x22, 0x05, 0x28, 0x30, 0x24, 0x31, 0x29, 0x2A, 0x00, 0x9A, 0x01, 0x3B, 0x0A, 0x17, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x2C, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x0D, 0x5B, 0x32, 0x34, 0x2D, 0x36, 0x39, 0x5D, 0x7C, 0x37, 0x5B, 0x31, 0x34, 0x5D, 0x22, 0x05, 0x28, 0x30, 0x24, 0x31, 0x29, 0x2A, 0x00, 0x9A, 0x01, 0x37, 0x0A, 0x18, 0x28, 0x5B, 0x37, 0x38, 0x5D, 0x5C, 0x64, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x2C, 0x34, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x0A, 0x37, 0x36, 0x7C, 0x38, 0x5B, 0x33, 0x35, 0x2D, 0x39, 0x5D, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x2A, 0x0A, 0x13, 0x28, 0x37, 0x30, 0x30, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x02, 0x37, 0x30, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x46, 0x0A, 0x15, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x0D, 0x31, 0x28, 0x3F, 0x3A, 0x38, 0x5B, 0x30, 0x35, 0x39, 0x5D, 0x7C, 0x35, 0x29, 0x1A, 0x0E, 0x31, 0x28, 0x3F, 0x3A, 0x38, 0x5B, 0x30, 0x35, 0x39, 0x5D, 0x30, 0x7C, 0x35, 0x29, 0x22, 0x02, 0x24, 0x31, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x1C, 0x12, 0x08, 0x38, 0x31, 0x38, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x38, 0x31, 0x38, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x0A, 0x85, 0x06, 0x0A, 0x37, 0x12, 0x2B, 0x5B, 0x31, 0x37, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x2C, 0x39, 0x7D, 0x7C, 0x5B, 0x32, 0x2D, 0x35, 0x38, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x28, 0x3F, 0x3A, 0x5C, 0x64, 0x7B, 0x33, 0x2C, 0x36, 0x7D, 0x29, 0x3F, 0x7C, 0x36, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x34, 0x2C, 0x31, 0x30, 0x7D, 0x12, 0x2F, 0x12, 0x1A, 0x28, 0x3F, 0x3A, 0x5B, 0x32, 0x2D, 0x34, 0x38, 0x39, 0x5D, 0x7C, 0x37, 0x5B, 0x32, 0x2D, 0x34, 0x36, 0x2D, 0x38, 0x5D, 0x29, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x39, 0x7D, 0x32, 0x08, 0x32, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x1A, 0x22, 0x12, 0x0E, 0x35, 0x5B, 0x30, 0x32, 0x34, 0x36, 0x37, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x35, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x22, 0x31, 0x12, 0x19, 0x31, 0x28, 0x3F, 0x3A, 0x38, 0x30, 0x5B, 0x30, 0x31, 0x5D, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x7C, 0x32, 0x35, 0x35, 0x29, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x31, 0x38, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x2A, 0x36, 0x12, 0x1E, 0x31, 0x28, 0x3F, 0x3A, 0x32, 0x31, 0x32, 0x7C, 0x28, 0x3F, 0x3A, 0x39, 0x31, 0x39, 0x7C, 0x32, 0x30, 0x30, 0x29, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x38, 0x2C, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x31, 0x39, 0x31, 0x39, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x32, 0x27, 0x12, 0x11, 0x31, 0x28, 0x3F, 0x3A, 0x37, 0x30, 0x30, 0x7C, 0x38, 0x30, 0x39, 0x29, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x31, 0x37, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x1B, 0x12, 0x07, 0x37, 0x37, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x37, 0x37, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x4A, 0x02, 0x49, 0x4C, 0x50, 0xCC, 0x07, 0x5A, 0x0E, 0x30, 0x28, 0x3F, 0x3A, 0x30, 0x7C, 0x31, 0x5B, 0x32, 0x2D, 0x34, 0x38, 0x5D, 0x29, 0x62, 0x01, 0x30, 0x7A, 0x01, 0x30, 0x9A, 0x01, 0x33, 0x0A, 0x17, 0x28, 0x5B, 0x32, 0x2D, 0x34, 0x38, 0x39, 0x5D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x2D, 0x24, 0x32, 0x2D, 0x24, 0x33, 0x1A, 0x07, 0x5B, 0x32, 0x2D, 0x34, 0x38, 0x39, 0x5D, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x2F, 0x0A, 0x16, 0x28, 0x5B, 0x35, 0x37, 0x5D, 0x5C, 0x64, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x2D, 0x24, 0x32, 0x2D, 0x24, 0x33, 0x1A, 0x04, 0x5B, 0x35, 0x37, 0x5D, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x3A, 0x0A, 0x1D, 0x28, 0x31, 0x29, 0x28, 0x5B, 0x37, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x12, 0x0B, 0x24, 0x31, 0x2D, 0x24, 0x32, 0x2D, 0x24, 0x33, 0x2D, 0x24, 0x34, 0x1A, 0x06, 0x31, 0x5B, 0x37, 0x2D, 0x39, 0x5D, 0x22, 0x02, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x21, 0x0A, 0x0D, 0x28, 0x31, 0x32, 0x35, 0x35, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x2D, 0x24, 0x32, 0x1A, 0x03, 0x31, 0x32, 0x35, 0x22, 0x02, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x2B, 0x0A, 0x14, 0x28, 0x31, 0x32, 0x30, 0x30, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x2D, 0x24, 0x32, 0x2D, 0x24, 0x33, 0x1A, 0x03, 0x31, 0x32, 0x30, 0x22, 0x02, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x2B, 0x0A, 0x14, 0x28, 0x31, 0x32, 0x31, 0x32, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x2D, 0x24, 0x32, 0x2D, 0x24, 0x33, 0x1A, 0x03, 0x31, 0x32, 0x31, 0x22, 0x02, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x1D, 0x0A, 0x07, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x03, 0x2A, 0x24, 0x31, 0x1A, 0x07, 0x5B, 0x32, 0x2D, 0x36, 0x38, 0x39, 0x5D, 0x22, 0x02, 0x24, 0x31, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x2E, 0x12, 0x16, 0x31, 0x37, 0x30, 0x30, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x7C, 0x5B, 0x32, 0x2D, 0x36, 0x38, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x34, 0x2C, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x31, 0x37, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0xCA, 0x01, 0x1B, 0x12, 0x0C, 0x5B, 0x32, 0x2D, 0x36, 0x38, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x32, 0x04, 0x32, 0x32, 0x35, 0x30, 0x0A, 0xC2, 0x03, 0x0A, 0x1B, 0x12, 0x0F, 0x5B, 0x31, 0x33, 0x35, 0x37, 0x38, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x2C, 0x39, 0x7D, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x36, 0x2C, 0x31, 0x30, 0x7D, 0x12, 0x21, 0x12, 0x09, 0x31, 0x36, 0x32, 0x34, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x36, 0x2C, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x31, 0x36, 0x32, 0x34, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x1A, 0x23, 0x12, 0x0D, 0x37, 0x5B, 0x35, 0x36, 0x39, 0x5D, 0x32, 0x34, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x37, 0x39, 0x32, 0x34, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x22, 0x21, 0x12, 0x0B, 0x38, 0x30, 0x38, 0x31, 0x36, 0x32, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x38, 0x30, 0x38, 0x31, 0x36, 0x32, 0x34, 0x35, 0x36, 0x37, 0x2A, 0x31, 0x12, 0x1B, 0x28, 0x3F, 0x3A, 0x38, 0x37, 0x32, 0x32, 0x39, 0x39, 0x7C, 0x39, 0x30, 0x5B, 0x30, 0x31, 0x36, 0x37, 0x5D, 0x36, 0x32, 0x34, 0x29, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x39, 0x30, 0x31, 0x36, 0x32, 0x34, 0x37, 0x38, 0x39, 0x30, 0x32, 0x3C, 0x12, 0x26, 0x38, 0x28, 0x3F, 0x3A, 0x34, 0x28, 0x3F, 0x3A, 0x34, 0x30, 0x5B, 0x34, 0x39, 0x5D, 0x30, 0x36, 0x7C, 0x35, 0x36, 0x32, 0x34, 0x5C, 0x64, 0x29, 0x7C, 0x37, 0x30, 0x36, 0x32, 0x34, 0x5C, 0x64, 0x29, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x38, 0x34, 0x35, 0x36, 0x32, 0x34, 0x37, 0x38, 0x39, 0x30, 0x3A, 0x1D, 0x12, 0x07, 0x37, 0x30, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x37, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x42, 0x1D, 0x12, 0x07, 0x35, 0x36, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x35, 0x36, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x4A, 0x02, 0x49, 0x4D, 0x50, 0x2C, 0x5A, 0x02, 0x30, 0x30, 0x62, 0x01, 0x30, 0x6A, 0x02, 0x20, 0x78, 0x7A, 0x01, 0x30, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x5E, 0x12, 0x48, 0x33, 0x28, 0x3F, 0x3A, 0x30, 0x38, 0x31, 0x36, 0x32, 0x5C, 0x64, 0x7C, 0x33, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x7C, 0x34, 0x28, 0x3F, 0x3A, 0x34, 0x30, 0x5B, 0x34, 0x39, 0x5D, 0x30, 0x36, 0x7C, 0x35, 0x36, 0x32, 0x34, 0x5C, 0x64, 0x29, 0x7C, 0x37, 0x28, 0x3F, 0x3A, 0x30, 0x36, 0x32, 0x34, 0x5C, 0x64, 0x7C, 0x32, 0x32, 0x39, 0x39, 0x5C, 0x64, 0x29, 0x29, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x7C, 0x35, 0x35, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x35, 0x35, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x0A, 0xF6, 0x17, 0x0A, 0x23, 0x12, 0x17, 0x31, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x31, 0x31, 0x7D, 0x7C, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x39, 0x2C, 0x31, 0x30, 0x7D, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x36, 0x2C, 0x31, 0x32, 0x7D, 0x12, 0xC0, 0x08, 0x12, 0xA7, 0x08, 0x28, 0x3F, 0x3A, 0x31, 0x31, 0x7C, 0x32, 0x5B, 0x30, 0x32, 0x5D, 0x7C, 0x33, 0x33, 0x7C, 0x34, 0x5B, 0x30, 0x34, 0x5D, 0x7C, 0x37, 0x39, 0x7C, 0x38, 0x30, 0x29, 0x5B, 0x32, 0x2D, 0x36, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x7C, 0x28, 0x3F, 0x3A, 0x31, 0x28, 0x3F, 0x3A, 0x32, 0x5B, 0x30, 0x2D, 0x32, 0x34, 0x39, 0x5D, 0x7C, 0x33, 0x5B, 0x30, 0x2D, 0x32, 0x35, 0x5D, 0x7C, 0x34, 0x5B, 0x31, 0x34, 0x35, 0x5D, 0x7C, 0x5B, 0x35, 0x39, 0x5D, 0x5B, 0x31, 0x34, 0x5D, 0x7C, 0x36, 0x5B, 0x30, 0x31, 0x34, 0x5D, 0x7C, 0x37, 0x5B, 0x31, 0x32, 0x35, 0x37, 0x5D, 0x7C, 0x38, 0x5B, 0x30, 0x31, 0x33, 0x34, 0x36, 0x5D, 0x29, 0x7C, 0x32, 0x28, 0x3F, 0x3A, 0x31, 0x5B, 0x32, 0x35, 0x37, 0x5D, 0x7C, 0x33, 0x5B, 0x30, 0x31, 0x33, 0x5D, 0x7C, 0x34, 0x5B, 0x30, 0x31, 0x5D, 0x7C, 0x35, 0x5B, 0x30, 0x31, 0x33, 0x37, 0x5D, 0x7C, 0x36, 0x5B, 0x30, 0x31, 0x35, 0x38, 0x5D, 0x7C, 0x37, 0x38, 0x7C, 0x38, 0x5B, 0x31, 0x35, 0x36, 0x38, 0x5D, 0x7C, 0x39, 0x5B, 0x31, 0x34, 0x5D, 0x29, 0x7C, 0x33, 0x28, 0x3F, 0x3A, 0x32, 0x36, 0x7C, 0x34, 0x5B, 0x31, 0x2D, 0x33, 0x5D, 0x7C, 0x35, 0x5B, 0x33, 0x34, 0x5D, 0x7C, 0x36, 0x5B, 0x30, 0x31, 0x34, 0x38, 0x39, 0x5D, 0x7C, 0x37, 0x5B, 0x30, 0x32, 0x2D, 0x34, 0x36, 0x5D, 0x7C, 0x38, 0x5B, 0x31, 0x35, 0x39, 0x5D, 0x29, 0x7C, 0x34, 0x28, 0x3F, 0x3A, 0x31, 0x5B, 0x33, 0x36, 0x5D, 0x7C, 0x32, 0x5B, 0x31, 0x2D, 0x34, 0x37, 0x5D, 0x7C, 0x33, 0x5B, 0x31, 0x35, 0x5D, 0x7C, 0x35, 0x5B, 0x31, 0x32, 0x5D, 0x7C, 0x36, 0x5B, 0x31, 0x32, 0x36, 0x2D, 0x39, 0x5D, 0x7C, 0x37, 0x5B, 0x30, 0x2D, 0x32, 0x34, 0x2D, 0x39, 0x5D, 0x7C, 0x38, 0x5B, 0x30, 0x31, 0x33, 0x2D, 0x35, 0x37, 0x5D, 0x7C, 0x39, 0x5B, 0x30, 0x31, 0x34, 0x2D, 0x37, 0x5D, 0x29, 0x7C, 0x35, 0x28, 0x3F, 0x3A, 0x5B, 0x31, 0x33, 0x36, 0x5D, 0x5B, 0x32, 0x35, 0x5D, 0x7C, 0x32, 0x32, 0x7C, 0x34, 0x5B, 0x32, 0x38, 0x5D, 0x7C, 0x35, 0x5B, 0x31, 0x32, 0x5D, 0x7C, 0x5B, 0x37, 0x38, 0x5D, 0x31, 0x7C, 0x39, 0x5B, 0x31, 0x35, 0x5D, 0x29, 0x7C, 0x36, 0x28, 0x3F, 0x3A, 0x31, 0x32, 0x7C, 0x5B, 0x32, 0x33, 0x34, 0x35, 0x5D, 0x31, 0x7C, 0x35, 0x37, 0x7C, 0x36, 0x5B, 0x31, 0x33, 0x5D, 0x7C, 0x37, 0x5B, 0x31, 0x34, 0x5D, 0x7C, 0x38, 0x30, 0x29, 0x7C, 0x37, 0x28, 0x3F, 0x3A, 0x31, 0x32, 0x7C, 0x32, 0x5B, 0x31, 0x34, 0x5D, 0x7C, 0x33, 0x5B, 0x31, 0x33, 0x34, 0x5D, 0x7C, 0x34, 0x5B, 0x34, 0x37, 0x5D, 0x7C, 0x35, 0x5B, 0x31, 0x35, 0x5D, 0x7C, 0x5B, 0x36, 0x37, 0x5D, 0x31, 0x7C, 0x38, 0x38, 0x29, 0x7C, 0x38, 0x28, 0x3F, 0x3A, 0x31, 0x36, 0x7C, 0x32, 0x5B, 0x30, 0x31, 0x34, 0x5D, 0x7C, 0x33, 0x5B, 0x31, 0x32, 0x36, 0x5D, 0x7C, 0x36, 0x5B, 0x31, 0x33, 0x36, 0x5D, 0x7C, 0x37, 0x5B, 0x30, 0x37, 0x38, 0x5D, 0x7C, 0x38, 0x5B, 0x33, 0x34, 0x5D, 0x7C, 0x39, 0x31, 0x29, 0x29, 0x5B, 0x32, 0x2D, 0x36, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x7C, 0x28, 0x3F, 0x3A, 0x28, 0x3F, 0x3A, 0x31, 0x28, 0x3F, 0x3A, 0x32, 0x5B, 0x33, 0x35, 0x2D, 0x38, 0x5D, 0x7C, 0x33, 0x5B, 0x33, 0x34, 0x36, 0x2D, 0x39, 0x5D, 0x7C, 0x34, 0x5B, 0x32, 0x33, 0x36, 0x2D, 0x39, 0x5D, 0x7C, 0x5B, 0x35, 0x39, 0x5D, 0x5B, 0x30, 0x32, 0x33, 0x35, 0x2D, 0x39, 0x5D, 0x7C, 0x36, 0x5B, 0x32, 0x33, 0x35, 0x2D, 0x39, 0x5D, 0x7C, 0x37, 0x5B, 0x33, 0x34, 0x36, 0x38, 0x39, 0x5D, 0x7C, 0x38, 0x5B, 0x32, 0x35, 0x37, 0x2D, 0x39, 0x5D, 0x29, 0x7C, 0x32, 0x28, 0x3F, 0x3A, 0x31, 0x5B, 0x31, 0x33, 0x34, 0x36, 0x38, 0x39, 0x5D, 0x7C, 0x33, 0x5B, 0x32, 0x34, 0x2D, 0x38, 0x5D, 0x7C, 0x34, 0x5B, 0x32, 0x2D, 0x38, 0x5D, 0x7C, 0x35, 0x5B, 0x32, 0x35, 0x36, 0x38, 0x39, 0x5D, 0x7C, 0x36, 0x5B, 0x32, 0x2D, 0x34, 0x36, 0x37, 0x39, 0x5D, 0x7C, 0x37, 0x5B, 0x31, 0x33, 0x2D, 0x37, 0x39, 0x5D, 0x7C, 0x38, 0x5B, 0x32, 0x2D, 0x34, 0x37, 0x39, 0x5D, 0x7C, 0x39, 0x5B, 0x32, 0x33, 0x35, 0x2D, 0x39, 0x5D, 0x29, 0x7C, 0x33, 0x28, 0x3F, 0x3A, 0x30, 0x31, 0x7C, 0x31, 0x5B, 0x37, 0x39, 0x5D, 0x7C, 0x32, 0x5B, 0x31, 0x2D, 0x35, 0x5D, 0x7C, 0x34, 0x5B, 0x32, 0x35, 0x2D, 0x38, 0x5D, 0x7C, 0x35, 0x5B, 0x31, 0x32, 0x35, 0x36, 0x38, 0x39, 0x5D, 0x7C, 0x36, 0x5B, 0x32, 0x33, 0x35, 0x2D, 0x37, 0x5D, 0x7C, 0x37, 0x5B, 0x31, 0x35, 0x37, 0x2D, 0x39, 0x5D, 0x7C, 0x38, 0x5B, 0x32, 0x2D, 0x34, 0x36, 0x37, 0x5D, 0x29, 0x7C, 0x34, 0x28, 0x3F, 0x3A, 0x31, 0x5B, 0x31, 0x34, 0x35, 0x37, 0x38, 0x5D, 0x7C, 0x32, 0x5B, 0x35, 0x36, 0x38, 0x39, 0x5D, 0x7C, 0x33, 0x5B, 0x32, 0x2D, 0x34, 0x36, 0x37, 0x5D, 0x7C, 0x35, 0x5B, 0x34, 0x2D, 0x37, 0x5D, 0x7C, 0x36, 0x5B, 0x33, 0x35, 0x5D, 0x7C, 0x37, 0x33, 0x7C, 0x38, 0x5B, 0x32, 0x36, 0x38, 0x39, 0x5D, 0x7C, 0x39, 0x5B, 0x32, 0x33, 0x38, 0x39, 0x5D, 0x29, 0x7C, 0x35, 0x28, 0x3F, 0x3A, 0x5B, 0x31, 0x36, 0x5D, 0x5B, 0x31, 0x34, 0x36, 0x2D, 0x39, 0x5D, 0x7C, 0x32, 0x5B, 0x31, 0x34, 0x2D, 0x38, 0x5D, 0x7C, 0x33, 0x5B, 0x31, 0x33, 0x34, 0x36, 0x5D, 0x7C, 0x34, 0x5B, 0x31, 0x34, 0x2D, 0x36, 0x39, 0x5D, 0x7C, 0x35, 0x5B, 0x34, 0x36, 0x5D, 0x7C, 0x37, 0x5B, 0x32, 0x2D, 0x34, 0x5D, 0x7C, 0x38, 0x5B, 0x32, 0x2D, 0x38, 0x5D, 0x7C, 0x39, 0x5B, 0x32, 0x34, 0x36, 0x5D, 0x29, 0x7C, 0x36, 0x28, 0x3F, 0x3A, 0x31, 0x5B, 0x31, 0x33, 0x35, 0x38, 0x5D, 0x7C, 0x32, 0x5B, 0x32, 0x34, 0x35, 0x37, 0x5D, 0x7C, 0x33, 0x5B, 0x32, 0x2D, 0x34, 0x5D, 0x7C, 0x34, 0x5B, 0x32, 0x33, 0x35, 0x2D, 0x37, 0x5D, 0x7C, 0x35, 0x5B, 0x32, 0x2D, 0x36, 0x38, 0x39, 0x5D, 0x7C, 0x36, 0x5B, 0x32, 0x34, 0x2D, 0x35, 0x38, 0x5D, 0x7C, 0x37, 0x5B, 0x32, 0x33, 0x2D, 0x36, 0x38, 0x39, 0x5D, 0x7C, 0x38, 0x5B, 0x31, 0x2D, 0x36, 0x5D, 0x29, 0x7C, 0x38, 0x28, 0x3F, 0x3A, 0x31, 0x5B, 0x31, 0x33, 0x35, 0x37, 0x2D, 0x39, 0x5D, 0x7C, 0x32, 0x5B, 0x32, 0x33, 0x35, 0x2D, 0x38, 0x5D, 0x7C, 0x33, 0x5B, 0x30, 0x33, 0x2D, 0x35, 0x37, 0x2D, 0x39, 0x5D, 0x7C, 0x34, 0x5B, 0x30, 0x2D, 0x32, 0x34, 0x2D, 0x39, 0x5D, 0x7C, 0x35, 0x5C, 0x64, 0x7C, 0x36, 0x5B, 0x32, 0x34, 0x35, 0x37, 0x2D, 0x39, 0x5D, 0x7C, 0x37, 0x5B, 0x31, 0x2D, 0x36, 0x5D, 0x7C, 0x38, 0x5B, 0x31, 0x32, 0x35, 0x36, 0x5D, 0x7C, 0x39, 0x5B, 0x32, 0x2D, 0x34, 0x5D, 0x29, 0x29, 0x5C, 0x64, 0x7C, 0x37, 0x28, 0x3F, 0x3A, 0x28, 0x3F, 0x3A, 0x31, 0x5B, 0x30, 0x31, 0x33, 0x2D, 0x39, 0x5D, 0x7C, 0x32, 0x5B, 0x30, 0x32, 0x33, 0x35, 0x2D, 0x39, 0x5D, 0x7C, 0x33, 0x5B, 0x32, 0x36, 0x37, 0x39, 0x5D, 0x7C, 0x34, 0x5B, 0x31, 0x2D, 0x33, 0x35, 0x36, 0x38, 0x39, 0x5D, 0x7C, 0x35, 0x5B, 0x32, 0x2D, 0x34, 0x36, 0x2D, 0x39, 0x5D, 0x7C, 0x5B, 0x36, 0x37, 0x5D, 0x5B, 0x30, 0x32, 0x2D, 0x39, 0x5D, 0x7C, 0x39, 0x5C, 0x64, 0x29, 0x5C, 0x64, 0x7C, 0x38, 0x28, 0x3F, 0x3A, 0x32, 0x5B, 0x30, 0x2D, 0x36, 0x5D, 0x7C, 0x5B, 0x30, 0x31, 0x33, 0x2D, 0x38, 0x5D, 0x5C, 0x64, 0x29, 0x29, 0x29, 0x5B, 0x32, 0x2D, 0x36, 0x5D, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x36, 0x2C, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x31, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x1A, 0x95, 0x03, 0x12, 0xFE, 0x02, 0x28, 0x3F, 0x3A, 0x37, 0x28, 0x3F, 0x3A, 0x32, 0x28, 0x3F, 0x3A, 0x30, 0x5B, 0x30, 0x34, 0x2D, 0x39, 0x5D, 0x7C, 0x35, 0x5B, 0x30, 0x39, 0x5D, 0x7C, 0x37, 0x5B, 0x35, 0x36, 0x38, 0x5D, 0x7C, 0x39, 0x5B, 0x33, 0x39, 0x5D, 0x29, 0x7C, 0x33, 0x28, 0x3F, 0x3A, 0x30, 0x37, 0x7C, 0x37, 0x5B, 0x33, 0x36, 0x37, 0x39, 0x5D, 0x7C, 0x39, 0x5B, 0x36, 0x38, 0x39, 0x5D, 0x29, 0x7C, 0x34, 0x28, 0x3F, 0x3A, 0x30, 0x35, 0x7C, 0x31, 0x5B, 0x31, 0x35, 0x2D, 0x39, 0x5D, 0x7C, 0x5B, 0x32, 0x39, 0x5D, 0x5B, 0x38, 0x39, 0x5D, 0x7C, 0x33, 0x39, 0x7C, 0x38, 0x5B, 0x33, 0x38, 0x39, 0x5D, 0x29, 0x7C, 0x35, 0x28, 0x3F, 0x3A, 0x30, 0x5B, 0x30, 0x2D, 0x35, 0x5D, 0x7C, 0x5B, 0x34, 0x37, 0x5D, 0x39, 0x7C, 0x35, 0x30, 0x7C, 0x36, 0x5B, 0x36, 0x2D, 0x39, 0x5D, 0x7C, 0x5B, 0x38, 0x39, 0x5D, 0x5B, 0x37, 0x2D, 0x39, 0x5D, 0x29, 0x7C, 0x36, 0x28, 0x3F, 0x3A, 0x30, 0x5B, 0x30, 0x32, 0x37, 0x5D, 0x7C, 0x31, 0x32, 0x7C, 0x32, 0x30, 0x7C, 0x33, 0x5B, 0x31, 0x39, 0x5D, 0x7C, 0x35, 0x5B, 0x34, 0x35, 0x5D, 0x7C, 0x36, 0x5B, 0x35, 0x2D, 0x39, 0x5D, 0x7C, 0x37, 0x5B, 0x36, 0x37, 0x5D, 0x7C, 0x39, 0x5B, 0x36, 0x2D, 0x39, 0x5D, 0x29, 0x7C, 0x37, 0x28, 0x3F, 0x3A, 0x30, 0x5B, 0x32, 0x38, 0x39, 0x5D, 0x7C, 0x33, 0x5B, 0x35, 0x2D, 0x39, 0x5D, 0x7C, 0x34, 0x32, 0x7C, 0x36, 0x30, 0x7C, 0x39, 0x5B, 0x35, 0x2D, 0x39, 0x5D, 0x29, 0x7C, 0x38, 0x28, 0x3F, 0x3A, 0x5B, 0x30, 0x33, 0x5D, 0x5B, 0x30, 0x37, 0x2D, 0x39, 0x5D, 0x7C, 0x31, 0x34, 0x7C, 0x32, 0x5B, 0x37, 0x2D, 0x39, 0x5D, 0x7C, 0x34, 0x5B, 0x32, 0x35, 0x5D, 0x7C, 0x36, 0x5B, 0x30, 0x39, 0x5D, 0x7C, 0x37, 0x5B, 0x30, 0x31, 0x35, 0x36, 0x38, 0x39, 0x5D, 0x7C, 0x39, 0x5B, 0x30, 0x33, 0x35, 0x37, 0x2D, 0x39, 0x5D, 0x29, 0x29, 0x5C, 0x64, 0x7C, 0x39, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x7C, 0x38, 0x28, 0x3F, 0x3A, 0x28, 0x3F, 0x3A, 0x30, 0x5B, 0x30, 0x31, 0x35, 0x38, 0x39, 0x5D, 0x7C, 0x31, 0x5B, 0x32, 0x34, 0x5D, 0x7C, 0x32, 0x5B, 0x32, 0x33, 0x36, 0x39, 0x5D, 0x7C, 0x34, 0x5B, 0x30, 0x32, 0x33, 0x34, 0x35, 0x38, 0x5D, 0x7C, 0x35, 0x32, 0x7C, 0x36, 0x5B, 0x30, 0x35, 0x38, 0x39, 0x5D, 0x7C, 0x37, 0x5B, 0x32, 0x35, 0x36, 0x39, 0x5D, 0x29, 0x5C, 0x64, 0x7C, 0x38, 0x28, 0x3F, 0x3A, 0x5B, 0x30, 0x37, 0x39, 0x5D, 0x5C, 0x64, 0x7C, 0x34, 0x34, 0x29, 0x7C, 0x39, 0x5B, 0x30, 0x35, 0x37, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x29, 0x5C, 0x64, 0x29, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x39, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x22, 0x30, 0x12, 0x18, 0x31, 0x28, 0x3F, 0x3A, 0x36, 0x30, 0x30, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x7C, 0x38, 0x30, 0x30, 0x5C, 0x64, 0x7B, 0x34, 0x2C, 0x38, 0x7D, 0x29, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x38, 0x2C, 0x31, 0x32, 0x7D, 0x32, 0x0A, 0x31, 0x38, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x2A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x49, 0x4E, 0x50, 0x5B, 0x5A, 0x02, 0x30, 0x30, 0x62, 0x01, 0x30, 0x7A, 0x01, 0x30, 0x9A, 0x01, 0xF6, 0x01, 0x0A, 0x15, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x5A, 0x37, 0x28, 0x3F, 0x3A, 0x32, 0x5B, 0x30, 0x35, 0x37, 0x39, 0x5D, 0x7C, 0x33, 0x39, 0x7C, 0x34, 0x5B, 0x30, 0x2D, 0x33, 0x38, 0x39, 0x5D, 0x7C, 0x35, 0x5B, 0x30, 0x34, 0x2D, 0x39, 0x5D, 0x7C, 0x36, 0x7C, 0x37, 0x5B, 0x30, 0x32, 0x2D, 0x39, 0x5D, 0x7C, 0x38, 0x5B, 0x30, 0x2D, 0x37, 0x39, 0x5D, 0x29, 0x7C, 0x38, 0x28, 0x3F, 0x3A, 0x30, 0x5B, 0x30, 0x31, 0x35, 0x38, 0x39, 0x5D, 0x7C, 0x31, 0x5B, 0x30, 0x32, 0x34, 0x5D, 0x7C, 0x38, 0x5B, 0x30, 0x34, 0x37, 0x39, 0x5D, 0x7C, 0x39, 0x5B, 0x30, 0x35, 0x37, 0x2D, 0x39, 0x5D, 0x29, 0x7C, 0x39, 0x1A, 0x70, 0x37, 0x28, 0x3F, 0x3A, 0x32, 0x5B, 0x30, 0x35, 0x37, 0x39, 0x5D, 0x7C, 0x33, 0x39, 0x7C, 0x34, 0x5B, 0x30, 0x2D, 0x33, 0x38, 0x39, 0x5D, 0x7C, 0x35, 0x28, 0x3F, 0x3A, 0x30, 0x5B, 0x30, 0x2D, 0x35, 0x5D, 0x7C, 0x34, 0x39, 0x7C, 0x35, 0x30, 0x7C, 0x5B, 0x36, 0x2D, 0x39, 0x5D, 0x29, 0x7C, 0x36, 0x7C, 0x37, 0x5B, 0x30, 0x32, 0x2D, 0x39, 0x5D, 0x7C, 0x38, 0x5B, 0x30, 0x2D, 0x37, 0x39, 0x5D, 0x29, 0x7C, 0x38, 0x28, 0x3F, 0x3A, 0x30, 0x5B, 0x30, 0x31, 0x35, 0x38, 0x39, 0x5D, 0x7C, 0x31, 0x5B, 0x30, 0x32, 0x34, 0x5D, 0x7C, 0x38, 0x28, 0x3F, 0x3A, 0x5B, 0x30, 0x37, 0x39, 0x5D, 0x7C, 0x34, 0x34, 0x29, 0x7C, 0x39, 0x5B, 0x30, 0x35, 0x37, 0x2D, 0x39, 0x5D, 0x29, 0x7C, 0x39, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x46, 0x0A, 0x15, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x1C, 0x31, 0x31, 0x7C, 0x32, 0x5B, 0x30, 0x32, 0x5D, 0x7C, 0x33, 0x33, 0x7C, 0x34, 0x5B, 0x30, 0x34, 0x5D, 0x7C, 0x37, 0x39, 0x7C, 0x38, 0x30, 0x5B, 0x32, 0x2D, 0x36, 0x5D, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x6A, 0x0A, 0x15, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x40, 0x31, 0x28, 0x3F, 0x3A, 0x32, 0x5B, 0x30, 0x2D, 0x32, 0x34, 0x39, 0x5D, 0x7C, 0x33, 0x5B, 0x30, 0x2D, 0x32, 0x35, 0x5D, 0x7C, 0x34, 0x5B, 0x31, 0x34, 0x35, 0x5D, 0x7C, 0x5B, 0x35, 0x36, 0x39, 0x5D, 0x5B, 0x31, 0x34, 0x5D, 0x7C, 0x37, 0x5B, 0x31, 0x32, 0x35, 0x37, 0x5D, 0x7C, 0x38, 0x5B, 0x31, 0x33, 0x34, 0x36, 0x5D, 0x7C, 0x5B, 0x36, 0x38, 0x5D, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x29, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x63, 0x0A, 0x15, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x39, 0x32, 0x28, 0x3F, 0x3A, 0x31, 0x5B, 0x32, 0x35, 0x37, 0x5D, 0x7C, 0x33, 0x5B, 0x30, 0x31, 0x33, 0x5D, 0x7C, 0x34, 0x5B, 0x30, 0x31, 0x5D, 0x7C, 0x35, 0x5B, 0x30, 0x31, 0x33, 0x37, 0x5D, 0x7C, 0x36, 0x5B, 0x30, 0x31, 0x35, 0x38, 0x5D, 0x7C, 0x37, 0x38, 0x7C, 0x38, 0x5B, 0x31, 0x35, 0x36, 0x38, 0x5D, 0x7C, 0x39, 0x5B, 0x31, 0x34, 0x5D, 0x29, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x57, 0x0A, 0x15, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x2D, 0x33, 0x28, 0x3F, 0x3A, 0x32, 0x36, 0x7C, 0x34, 0x5B, 0x31, 0x2D, 0x33, 0x5D, 0x7C, 0x35, 0x5B, 0x33, 0x34, 0x5D, 0x7C, 0x36, 0x5B, 0x30, 0x31, 0x34, 0x38, 0x39, 0x5D, 0x7C, 0x37, 0x5B, 0x30, 0x32, 0x2D, 0x34, 0x36, 0x5D, 0x7C, 0x38, 0x5B, 0x31, 0x35, 0x39, 0x5D, 0x29, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x6E, 0x0A, 0x15, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x44, 0x34, 0x28, 0x3F, 0x3A, 0x31, 0x5B, 0x33, 0x36, 0x5D, 0x7C, 0x32, 0x5B, 0x31, 0x2D, 0x34, 0x37, 0x5D, 0x7C, 0x33, 0x5B, 0x31, 0x35, 0x5D, 0x7C, 0x35, 0x5B, 0x31, 0x32, 0x5D, 0x7C, 0x36, 0x5B, 0x31, 0x32, 0x36, 0x2D, 0x39, 0x5D, 0x7C, 0x37, 0x5B, 0x30, 0x2D, 0x32, 0x34, 0x2D, 0x39, 0x5D, 0x7C, 0x38, 0x5B, 0x30, 0x31, 0x33, 0x2D, 0x35, 0x37, 0x5D, 0x7C, 0x39, 0x5B, 0x30, 0x31, 0x34, 0x2D, 0x37, 0x5D, 0x29, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x53, 0x0A, 0x15, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x29, 0x35, 0x28, 0x3F, 0x3A, 0x5B, 0x31, 0x33, 0x36, 0x5D, 0x5B, 0x32, 0x35, 0x5D, 0x7C, 0x32, 0x32, 0x7C, 0x34, 0x5B, 0x32, 0x38, 0x5D, 0x7C, 0x35, 0x5B, 0x31, 0x32, 0x5D, 0x7C, 0x5B, 0x37, 0x38, 0x5D, 0x31, 0x7C, 0x39, 0x5B, 0x31, 0x35, 0x5D, 0x29, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x4B, 0x0A, 0x15, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x21, 0x36, 0x28, 0x3F, 0x3A, 0x31, 0x32, 0x7C, 0x5B, 0x32, 0x33, 0x34, 0x35, 0x5D, 0x31, 0x7C, 0x35, 0x37, 0x7C, 0x36, 0x5B, 0x31, 0x33, 0x5D, 0x7C, 0x37, 0x5B, 0x31, 0x34, 0x5D, 0x7C, 0x38, 0x30, 0x29, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x86, 0x01, 0x0A, 0x15, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x29, 0x37, 0x28, 0x3F, 0x3A, 0x31, 0x32, 0x7C, 0x32, 0x5B, 0x31, 0x34, 0x5D, 0x7C, 0x33, 0x5B, 0x31, 0x33, 0x34, 0x5D, 0x7C, 0x34, 0x5B, 0x34, 0x37, 0x5D, 0x7C, 0x35, 0x5B, 0x31, 0x35, 0x5D, 0x7C, 0x5B, 0x36, 0x37, 0x5D, 0x31, 0x7C, 0x38, 0x38, 0x29, 0x1A, 0x31, 0x37, 0x28, 0x3F, 0x3A, 0x31, 0x32, 0x7C, 0x32, 0x5B, 0x31, 0x34, 0x5D, 0x7C, 0x33, 0x5B, 0x31, 0x33, 0x34, 0x5D, 0x7C, 0x34, 0x5B, 0x34, 0x37, 0x5D, 0x7C, 0x35, 0x28, 0x3F, 0x3A, 0x31, 0x7C, 0x35, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x29, 0x7C, 0x5B, 0x36, 0x37, 0x5D, 0x31, 0x7C, 0x38, 0x38, 0x29, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x56, 0x0A, 0x15, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x2C, 0x38, 0x28, 0x3F, 0x3A, 0x31, 0x36, 0x7C, 0x32, 0x5B, 0x30, 0x31, 0x34, 0x5D, 0x7C, 0x33, 0x5B, 0x31, 0x32, 0x36, 0x5D, 0x7C, 0x36, 0x5B, 0x31, 0x33, 0x36, 0x5D, 0x7C, 0x37, 0x5B, 0x30, 0x37, 0x38, 0x5D, 0x7C, 0x38, 0x5B, 0x33, 0x34, 0x5D, 0x7C, 0x39, 0x31, 0x29, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x46, 0x0A, 0x15, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x1C, 0x31, 0x28, 0x3F, 0x3A, 0x5B, 0x32, 0x2D, 0x35, 0x37, 0x39, 0x5D, 0x7C, 0x5B, 0x36, 0x38, 0x5D, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x29, 0x7C, 0x5B, 0x32, 0x2D, 0x38, 0x5D, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x31, 0x0A, 0x14, 0x28, 0x31, 0x36, 0x30, 0x30, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x03, 0x31, 0x36, 0x30, 0x1A, 0x04, 0x31, 0x36, 0x30, 0x30, 0x22, 0x02, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x29, 0x0A, 0x0F, 0x28, 0x31, 0x38, 0x30, 0x30, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x2C, 0x35, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x1A, 0x03, 0x31, 0x38, 0x30, 0x1A, 0x04, 0x31, 0x38, 0x30, 0x30, 0x22, 0x02, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x3C, 0x0A, 0x19, 0x28, 0x31, 0x38, 0x5B, 0x30, 0x36, 0x5D, 0x30, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x2C, 0x34, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x06, 0x31, 0x38, 0x5B, 0x30, 0x36, 0x5D, 0x1A, 0x07, 0x31, 0x38, 0x5B, 0x30, 0x36, 0x5D, 0x30, 0x22, 0x02, 0x24, 0x31, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x23, 0x12, 0x0C, 0x31, 0x38, 0x36, 0x30, 0x33, 0x34, 0x35, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x31, 0x7D, 0x32, 0x0B, 0x31, 0x38, 0x36, 0x30, 0x33, 0x34, 0x35, 0x31, 0x32, 0x33, 0x34, 0x0A, 0xC3, 0x01, 0x0A, 0x0F, 0x12, 0x06, 0x33, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x12, 0x19, 0x12, 0x07, 0x33, 0x37, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x32, 0x07, 0x33, 0x37, 0x30, 0x39, 0x31, 0x30, 0x30, 0x1A, 0x19, 0x12, 0x07, 0x33, 0x38, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x32, 0x07, 0x33, 0x38, 0x30, 0x31, 0x32, 0x33, 0x34, 0x22, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x2A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x49, 0x4F, 0x50, 0xF6, 0x01, 0x5A, 0x02, 0x30, 0x30, 0x9A, 0x01, 0x1B, 0x0A, 0x0E, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x22, 0x00, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xFF, 0x02, 0x0A, 0x18, 0x12, 0x0C, 0x5B, 0x31, 0x2D, 0x37, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x39, 0x7D, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x36, 0x2C, 0x31, 0x30, 0x7D, 0x12, 0x4B, 0x12, 0x36, 0x31, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x7C, 0x28, 0x3F, 0x3A, 0x32, 0x5B, 0x31, 0x33, 0x2D, 0x35, 0x5D, 0x7C, 0x33, 0x5B, 0x30, 0x32, 0x33, 0x36, 0x37, 0x5D, 0x7C, 0x34, 0x5B, 0x30, 0x32, 0x33, 0x5D, 0x7C, 0x35, 0x5B, 0x30, 0x33, 0x5D, 0x7C, 0x36, 0x5B, 0x30, 0x32, 0x36, 0x5D, 0x29, 0x5C, 0x64, 0x7B, 0x36, 0x2C, 0x37, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x36, 0x2C, 0x39, 0x7D, 0x32, 0x08, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x1A, 0x21, 0x12, 0x0B, 0x37, 0x5B, 0x35, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x37, 0x39, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x22, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x2A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x49, 0x51, 0x50, 0xC4, 0x07, 0x5A, 0x02, 0x30, 0x30, 0x62, 0x01, 0x30, 0x7A, 0x01, 0x30, 0x9A, 0x01, 0x27, 0x0A, 0x11, 0x28, 0x31, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x01, 0x31, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x33, 0x0A, 0x19, 0x28, 0x5B, 0x32, 0x2D, 0x36, 0x5D, 0x5C, 0x64, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x2C, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x05, 0x5B, 0x32, 0x2D, 0x36, 0x5D, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x2E, 0x0A, 0x18, 0x28, 0x37, 0x5B, 0x35, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x01, 0x37, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xAA, 0x06, 0x0A, 0x24, 0x12, 0x18, 0x5B, 0x32, 0x2D, 0x36, 0x5D, 0x5C, 0x64, 0x7B, 0x34, 0x2C, 0x39, 0x7D, 0x7C, 0x5B, 0x31, 0x37, 0x38, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x35, 0x2C, 0x31, 0x30, 0x7D, 0x12, 0xBA, 0x03, 0x12, 0xA1, 0x03, 0x32, 0x28, 0x3F, 0x3A, 0x31, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x32, 0x2C, 0x37, 0x7D, 0x7C, 0x35, 0x31, 0x5C, 0x64, 0x7B, 0x33, 0x2C, 0x37, 0x7D, 0x29, 0x7C, 0x28, 0x3F, 0x3A, 0x32, 0x34, 0x31, 0x7C, 0x33, 0x28, 0x3F, 0x3A, 0x31, 0x31, 0x7C, 0x35, 0x5B, 0x32, 0x33, 0x5D, 0x29, 0x7C, 0x34, 0x34, 0x31, 0x7C, 0x35, 0x5B, 0x31, 0x34, 0x5D, 0x31, 0x29, 0x5C, 0x64, 0x7B, 0x34, 0x2C, 0x37, 0x7D, 0x7C, 0x28, 0x3F, 0x3A, 0x33, 0x28, 0x3F, 0x3A, 0x33, 0x34, 0x7C, 0x34, 0x31, 0x29, 0x7C, 0x36, 0x28, 0x3F, 0x3A, 0x31, 0x31, 0x7C, 0x35, 0x32, 0x29, 0x7C, 0x29, 0x5C, 0x64, 0x7B, 0x36, 0x2C, 0x37, 0x7D, 0x7C, 0x28, 0x3F, 0x3A, 0x31, 0x28, 0x3F, 0x3A, 0x5B, 0x31, 0x33, 0x34, 0x35, 0x38, 0x39, 0x5D, 0x5B, 0x31, 0x32, 0x5D, 0x7C, 0x5B, 0x32, 0x37, 0x5D, 0x5B, 0x31, 0x2D, 0x34, 0x5D, 0x29, 0x7C, 0x32, 0x28, 0x3F, 0x3A, 0x32, 0x5B, 0x31, 0x38, 0x39, 0x5D, 0x7C, 0x5B, 0x33, 0x36, 0x38, 0x39, 0x5D, 0x5B, 0x31, 0x32, 0x5D, 0x7C, 0x34, 0x32, 0x7C, 0x35, 0x5B, 0x32, 0x35, 0x36, 0x5D, 0x7C, 0x37, 0x5B, 0x33, 0x34, 0x5D, 0x29, 0x7C, 0x33, 0x28, 0x3F, 0x3A, 0x31, 0x32, 0x7C, 0x32, 0x5B, 0x31, 0x2D, 0x34, 0x5D, 0x7C, 0x33, 0x5B, 0x31, 0x32, 0x35, 0x5D, 0x7C, 0x34, 0x5B, 0x32, 0x34, 0x2D, 0x39, 0x5D, 0x7C, 0x35, 0x31, 0x7C, 0x5B, 0x36, 0x2D, 0x39, 0x5D, 0x5B, 0x31, 0x32, 0x5D, 0x29, 0x7C, 0x34, 0x28, 0x3F, 0x3A, 0x5B, 0x31, 0x33, 0x35, 0x2D, 0x39, 0x5D, 0x5B, 0x31, 0x32, 0x5D, 0x7C, 0x32, 0x5B, 0x31, 0x2D, 0x34, 0x36, 0x37, 0x5D, 0x7C, 0x34, 0x5B, 0x32, 0x2D, 0x34, 0x5D, 0x29, 0x7C, 0x35, 0x28, 0x3F, 0x3A, 0x31, 0x32, 0x7C, 0x32, 0x5B, 0x38, 0x39, 0x5D, 0x7C, 0x33, 0x5B, 0x31, 0x2D, 0x35, 0x5D, 0x7C, 0x34, 0x5B, 0x32, 0x2D, 0x38, 0x5D, 0x7C, 0x5B, 0x35, 0x2D, 0x37, 0x5D, 0x5B, 0x31, 0x32, 0x5D, 0x7C, 0x38, 0x5B, 0x31, 0x32, 0x34, 0x35, 0x5D, 0x29, 0x7C, 0x36, 0x28, 0x3F, 0x3A, 0x31, 0x32, 0x7C, 0x5B, 0x33, 0x34, 0x37, 0x2D, 0x39, 0x5D, 0x5B, 0x31, 0x32, 0x5D, 0x7C, 0x35, 0x31, 0x7C, 0x36, 0x5B, 0x31, 0x2D, 0x36, 0x5D, 0x29, 0x7C, 0x37, 0x28, 0x3F, 0x3A, 0x5B, 0x31, 0x33, 0x35, 0x38, 0x39, 0x5D, 0x5B, 0x31, 0x32, 0x5D, 0x7C, 0x32, 0x5B, 0x31, 0x32, 0x38, 0x39, 0x5D, 0x7C, 0x34, 0x5B, 0x31, 0x2D, 0x34, 0x5D, 0x7C, 0x36, 0x5B, 0x31, 0x2D, 0x36, 0x5D, 0x7C, 0x37, 0x5B, 0x31, 0x2D, 0x33, 0x5D, 0x29, 0x7C, 0x38, 0x28, 0x3F, 0x3A, 0x5B, 0x31, 0x34, 0x35, 0x5D, 0x5B, 0x31, 0x32, 0x5D, 0x7C, 0x33, 0x5B, 0x31, 0x32, 0x34, 0x35, 0x37, 0x38, 0x5D, 0x7C, 0x36, 0x5B, 0x31, 0x32, 0x35, 0x36, 0x5D, 0x7C, 0x37, 0x5B, 0x31, 0x32, 0x34, 0x35, 0x5D, 0x29, 0x29, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x35, 0x2C, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x32, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x1A, 0x2C, 0x12, 0x16, 0x39, 0x28, 0x3F, 0x3A, 0x31, 0x5C, 0x64, 0x7C, 0x33, 0x5B, 0x31, 0x32, 0x34, 0x2D, 0x38, 0x5D, 0x29, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x39, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x22, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x2A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x22, 0x12, 0x0C, 0x39, 0x39, 0x33, 0x5B, 0x31, 0x32, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x39, 0x39, 0x33, 0x32, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x4A, 0x02, 0x49, 0x52, 0x50, 0x62, 0x5A, 0x02, 0x30, 0x30, 0x62, 0x01, 0x30, 0x7A, 0x01, 0x30, 0x9A, 0x01, 0x29, 0x0A, 0x12, 0x28, 0x32, 0x31, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x02, 0x32, 0x31, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x39, 0x0A, 0x15, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x0F, 0x5B, 0x31, 0x33, 0x2D, 0x38, 0x39, 0x5D, 0x7C, 0x32, 0x5B, 0x30, 0x32, 0x2D, 0x39, 0x5D, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0xAA, 0x01, 0x25, 0x12, 0x0F, 0x39, 0x34, 0x33, 0x5B, 0x32, 0x34, 0x36, 0x37, 0x38, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x39, 0x34, 0x33, 0x32, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x1F, 0x12, 0x09, 0x39, 0x39, 0x39, 0x30, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x39, 0x39, 0x39, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x0A, 0xDA, 0x04, 0x0A, 0x1D, 0x12, 0x12, 0x5B, 0x34, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x7C, 0x33, 0x38, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x39, 0x7D, 0x12, 0xB3, 0x01, 0x12, 0xA0, 0x01, 0x28, 0x3F, 0x3A, 0x34, 0x28, 0x3F, 0x3A, 0x31, 0x5B, 0x30, 0x2D, 0x32, 0x34, 0x35, 0x5D, 0x7C, 0x32, 0x5B, 0x30, 0x2D, 0x37, 0x5D, 0x7C, 0x5B, 0x33, 0x37, 0x5D, 0x5B, 0x30, 0x2D, 0x38, 0x5D, 0x7C, 0x34, 0x5B, 0x30, 0x32, 0x34, 0x35, 0x5D, 0x7C, 0x35, 0x5B, 0x30, 0x2D, 0x33, 0x35, 0x36, 0x5D, 0x7C, 0x36, 0x5C, 0x64, 0x7C, 0x38, 0x5B, 0x30, 0x2D, 0x34, 0x36, 0x2D, 0x38, 0x5D, 0x7C, 0x39, 0x5B, 0x30, 0x31, 0x33, 0x2D, 0x37, 0x39, 0x5D, 0x29, 0x7C, 0x35, 0x28, 0x3F, 0x3A, 0x30, 0x35, 0x7C, 0x5B, 0x31, 0x35, 0x36, 0x5D, 0x5C, 0x64, 0x7C, 0x32, 0x5B, 0x30, 0x32, 0x35, 0x37, 0x38, 0x5D, 0x7C, 0x33, 0x5B, 0x30, 0x31, 0x33, 0x2D, 0x36, 0x5D, 0x7C, 0x34, 0x5B, 0x30, 0x33, 0x2D, 0x36, 0x5D, 0x7C, 0x37, 0x5B, 0x30, 0x2D, 0x32, 0x35, 0x37, 0x38, 0x5D, 0x7C, 0x38, 0x5B, 0x30, 0x2D, 0x32, 0x35, 0x2D, 0x39, 0x5D, 0x7C, 0x39, 0x5B, 0x30, 0x31, 0x33, 0x2D, 0x36, 0x38, 0x39, 0x5D, 0x29, 0x7C, 0x38, 0x37, 0x5B, 0x32, 0x33, 0x5D, 0x29, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x32, 0x07, 0x34, 0x31, 0x30, 0x31, 0x32, 0x33, 0x34, 0x1A, 0x97, 0x01, 0x12, 0x82, 0x01, 0x33, 0x38, 0x5B, 0x35, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x7C, 0x28, 0x3F, 0x3A, 0x36, 0x28, 0x3F, 0x3A, 0x31, 0x5B, 0x30, 0x31, 0x34, 0x2D, 0x38, 0x5D, 0x7C, 0x32, 0x5B, 0x30, 0x2D, 0x38, 0x5D, 0x7C, 0x33, 0x5B, 0x30, 0x2D, 0x32, 0x37, 0x2D, 0x39, 0x5D, 0x7C, 0x34, 0x5B, 0x30, 0x2D, 0x32, 0x39, 0x5D, 0x7C, 0x35, 0x5B, 0x30, 0x32, 0x39, 0x5D, 0x7C, 0x5B, 0x36, 0x37, 0x5D, 0x5B, 0x30, 0x2D, 0x36, 0x39, 0x5D, 0x7C, 0x5B, 0x38, 0x39, 0x5D, 0x5C, 0x64, 0x29, 0x7C, 0x37, 0x28, 0x3F, 0x3A, 0x35, 0x5B, 0x30, 0x35, 0x37, 0x5D, 0x7C, 0x37, 0x5B, 0x30, 0x2D, 0x37, 0x5D, 0x29, 0x7C, 0x38, 0x28, 0x3F, 0x3A, 0x32, 0x5B, 0x30, 0x2D, 0x35, 0x5D, 0x7C, 0x5B, 0x34, 0x36, 0x39, 0x5D, 0x5C, 0x64, 0x7C, 0x35, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x29, 0x29, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x39, 0x7D, 0x32, 0x07, 0x36, 0x31, 0x30, 0x31, 0x32, 0x33, 0x34, 0x22, 0x1A, 0x12, 0x08, 0x38, 0x30, 0x30, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x32, 0x07, 0x38, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x2A, 0x19, 0x12, 0x07, 0x39, 0x30, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x32, 0x07, 0x39, 0x30, 0x31, 0x31, 0x32, 0x33, 0x34, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x21, 0x12, 0x0F, 0x34, 0x39, 0x5B, 0x30, 0x31, 0x33, 0x2D, 0x37, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x32, 0x07, 0x34, 0x39, 0x33, 0x31, 0x32, 0x33, 0x34, 0x4A, 0x02, 0x49, 0x53, 0x50, 0xE2, 0x02, 0x5A, 0x02, 0x30, 0x30, 0x9A, 0x01, 0x22, 0x0A, 0x0E, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x1A, 0x05, 0x5B, 0x34, 0x2D, 0x39, 0x5D, 0x22, 0x00, 0x2A, 0x00, 0x9A, 0x01, 0x29, 0x0A, 0x16, 0x28, 0x33, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x01, 0x33, 0x22, 0x00, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xBE, 0x06, 0x0A, 0x1B, 0x12, 0x0F, 0x5B, 0x30, 0x31, 0x33, 0x38, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x35, 0x2C, 0x31, 0x30, 0x7D, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x36, 0x2C, 0x31, 0x31, 0x7D, 0x12, 0x53, 0x12, 0x3B, 0x30, 0x28, 0x3F, 0x3A, 0x5B, 0x32, 0x36, 0x5D, 0x5C, 0x64, 0x7B, 0x34, 0x2C, 0x39, 0x7D, 0x7C, 0x5B, 0x31, 0x33, 0x2D, 0x35, 0x37, 0x2D, 0x39, 0x5D, 0x28, 0x3F, 0x3A, 0x5B, 0x30, 0x31, 0x35, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x34, 0x2C, 0x38, 0x7D, 0x7C, 0x5B, 0x32, 0x2D, 0x34, 0x36, 0x2D, 0x38, 0x5D, 0x5C, 0x64, 0x7B, 0x35, 0x2C, 0x38, 0x7D, 0x29, 0x29, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x36, 0x2C, 0x31, 0x31, 0x7D, 0x32, 0x0A, 0x30, 0x32, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x1A, 0x1F, 0x12, 0x08, 0x33, 0x5C, 0x64, 0x7B, 0x38, 0x2C, 0x39, 0x7D, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x39, 0x2C, 0x31, 0x30, 0x7D, 0x32, 0x09, 0x33, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x22, 0x29, 0x12, 0x13, 0x38, 0x30, 0x28, 0x3F, 0x3A, 0x30, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x7C, 0x33, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x36, 0x2C, 0x39, 0x7D, 0x32, 0x09, 0x38, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x2A, 0x29, 0x12, 0x13, 0x38, 0x39, 0x28, 0x3F, 0x3A, 0x32, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x7C, 0x39, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x29, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x36, 0x2C, 0x39, 0x7D, 0x32, 0x09, 0x38, 0x39, 0x39, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x32, 0x25, 0x12, 0x0D, 0x38, 0x34, 0x5B, 0x37, 0x38, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x2C, 0x37, 0x7D, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x39, 0x2C, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x38, 0x34, 0x38, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x3A, 0x22, 0x12, 0x0A, 0x31, 0x37, 0x38, 0x5C, 0x64, 0x7B, 0x36, 0x2C, 0x37, 0x7D, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x39, 0x2C, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x31, 0x37, 0x38, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x49, 0x54, 0x50, 0x27, 0x5A, 0x02, 0x30, 0x30, 0x9A, 0x01, 0x2E, 0x0A, 0x17, 0x28, 0x30, 0x5B, 0x32, 0x36, 0x5D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x2C, 0x34, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x05, 0x30, 0x5B, 0x32, 0x36, 0x5D, 0x22, 0x00, 0x2A, 0x00, 0x9A, 0x01, 0x2C, 0x0A, 0x15, 0x28, 0x30, 0x5B, 0x32, 0x36, 0x5D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x05, 0x30, 0x5B, 0x32, 0x36, 0x5D, 0x22, 0x00, 0x2A, 0x00, 0x9A, 0x01, 0x24, 0x0A, 0x10, 0x28, 0x30, 0x5B, 0x32, 0x36, 0x5D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x2C, 0x36, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x1A, 0x05, 0x30, 0x5B, 0x32, 0x36, 0x5D, 0x22, 0x00, 0x2A, 0x00, 0x9A, 0x01, 0x3A, 0x0A, 0x18, 0x28, 0x30, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x2C, 0x34, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x10, 0x30, 0x5B, 0x31, 0x33, 0x2D, 0x35, 0x37, 0x2D, 0x39, 0x5D, 0x5B, 0x30, 0x31, 0x35, 0x39, 0x5D, 0x22, 0x00, 0x2A, 0x00, 0x9A, 0x01, 0x30, 0x0A, 0x11, 0x28, 0x30, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x2C, 0x36, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x1A, 0x10, 0x30, 0x5B, 0x31, 0x33, 0x2D, 0x35, 0x37, 0x2D, 0x39, 0x5D, 0x5B, 0x30, 0x31, 0x35, 0x39, 0x5D, 0x22, 0x00, 0x2A, 0x00, 0x9A, 0x01, 0x3A, 0x0A, 0x16, 0x28, 0x30, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x12, 0x30, 0x5B, 0x31, 0x33, 0x2D, 0x35, 0x37, 0x2D, 0x39, 0x5D, 0x5B, 0x32, 0x2D, 0x34, 0x36, 0x2D, 0x38, 0x5D, 0x22, 0x00, 0x2A, 0x00, 0x9A, 0x01, 0x32, 0x0A, 0x11, 0x28, 0x30, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x2C, 0x36, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x1A, 0x12, 0x30, 0x5B, 0x31, 0x33, 0x2D, 0x35, 0x37, 0x2D, 0x39, 0x5D, 0x5B, 0x32, 0x2D, 0x34, 0x36, 0x2D, 0x38, 0x5D, 0x22, 0x00, 0x2A, 0x00, 0x9A, 0x01, 0x3B, 0x0A, 0x17, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x2C, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x12, 0x5B, 0x31, 0x33, 0x5D, 0x7C, 0x38, 0x28, 0x3F, 0x3A, 0x30, 0x30, 0x7C, 0x34, 0x5B, 0x37, 0x38, 0x5D, 0x29, 0x22, 0x00, 0x2A, 0x00, 0x9A, 0x01, 0x28, 0x0A, 0x10, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x2C, 0x36, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x1A, 0x09, 0x38, 0x28, 0x3F, 0x3A, 0x30, 0x33, 0x7C, 0x39, 0x29, 0x22, 0x00, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xD0, 0x01, 0x01, 0x0A, 0xF5, 0x04, 0x0A, 0x1B, 0x12, 0x0F, 0x5B, 0x31, 0x33, 0x35, 0x37, 0x38, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x2C, 0x39, 0x7D, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x36, 0x2C, 0x31, 0x30, 0x7D, 0x12, 0x21, 0x12, 0x09, 0x31, 0x35, 0x33, 0x34, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x36, 0x2C, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x31, 0x35, 0x33, 0x34, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x1A, 0x36, 0x12, 0x20, 0x37, 0x28, 0x3F, 0x3A, 0x35, 0x30, 0x39, 0x7C, 0x37, 0x28, 0x3F, 0x3A, 0x30, 0x30, 0x7C, 0x39, 0x37, 0x29, 0x7C, 0x38, 0x32, 0x39, 0x7C, 0x39, 0x33, 0x37, 0x29, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x37, 0x37, 0x39, 0x37, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x22, 0x31, 0x12, 0x1B, 0x38, 0x30, 0x28, 0x3F, 0x3A, 0x30, 0x37, 0x28, 0x3F, 0x3A, 0x33, 0x35, 0x7C, 0x38, 0x31, 0x29, 0x7C, 0x38, 0x39, 0x30, 0x31, 0x29, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x38, 0x30, 0x30, 0x37, 0x33, 0x35, 0x34, 0x35, 0x36, 0x37, 0x2A, 0x44, 0x12, 0x2E, 0x28, 0x3F, 0x3A, 0x38, 0x37, 0x31, 0x32, 0x30, 0x36, 0x7C, 0x39, 0x30, 0x28, 0x3F, 0x3A, 0x30, 0x36, 0x36, 0x5B, 0x35, 0x39, 0x5D, 0x7C, 0x31, 0x38, 0x31, 0x30, 0x7C, 0x37, 0x31, 0x28, 0x3F, 0x3A, 0x30, 0x37, 0x7C, 0x35, 0x35, 0x29, 0x29, 0x29, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x39, 0x30, 0x31, 0x38, 0x31, 0x30, 0x35, 0x36, 0x37, 0x38, 0x32, 0x4E, 0x12, 0x38, 0x38, 0x28, 0x3F, 0x3A, 0x34, 0x28, 0x3F, 0x3A, 0x34, 0x28, 0x3F, 0x3A, 0x34, 0x28, 0x3F, 0x3A, 0x30, 0x35, 0x7C, 0x34, 0x32, 0x7C, 0x36, 0x39, 0x29, 0x7C, 0x37, 0x30, 0x33, 0x29, 0x7C, 0x35, 0x28, 0x3F, 0x3A, 0x30, 0x34, 0x31, 0x7C, 0x38, 0x30, 0x30, 0x29, 0x29, 0x7C, 0x37, 0x30, 0x30, 0x30, 0x32, 0x29, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x38, 0x34, 0x34, 0x37, 0x30, 0x33, 0x34, 0x35, 0x36, 0x37, 0x3A, 0x21, 0x12, 0x0B, 0x37, 0x30, 0x31, 0x35, 0x31, 0x31, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x37, 0x30, 0x31, 0x35, 0x31, 0x31, 0x35, 0x36, 0x37, 0x38, 0x42, 0x1D, 0x12, 0x07, 0x35, 0x36, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x35, 0x36, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x4A, 0x02, 0x4A, 0x45, 0x50, 0x2C, 0x5A, 0x02, 0x30, 0x30, 0x62, 0x01, 0x30, 0x6A, 0x02, 0x20, 0x78, 0x7A, 0x01, 0x30, 0xAA, 0x01, 0x51, 0x12, 0x3B, 0x37, 0x36, 0x28, 0x3F, 0x3A, 0x30, 0x5B, 0x30, 0x31, 0x32, 0x5D, 0x7C, 0x32, 0x5B, 0x33, 0x35, 0x36, 0x5D, 0x7C, 0x34, 0x5B, 0x30, 0x31, 0x33, 0x34, 0x5D, 0x7C, 0x35, 0x5B, 0x34, 0x39, 0x5D, 0x7C, 0x36, 0x5B, 0x30, 0x2D, 0x33, 0x36, 0x39, 0x5D, 0x7C, 0x37, 0x37, 0x7C, 0x38, 0x31, 0x7C, 0x39, 0x5B, 0x33, 0x39, 0x5D, 0x29, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x37, 0x36, 0x34, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x7C, 0x12, 0x66, 0x33, 0x28, 0x3F, 0x3A, 0x30, 0x28, 0x3F, 0x3A, 0x30, 0x37, 0x28, 0x3F, 0x3A, 0x33, 0x35, 0x7C, 0x38, 0x31, 0x29, 0x7C, 0x38, 0x39, 0x30, 0x31, 0x29, 0x7C, 0x33, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x7C, 0x34, 0x28, 0x3F, 0x3A, 0x34, 0x28, 0x3F, 0x3A, 0x34, 0x28, 0x3F, 0x3A, 0x30, 0x35, 0x7C, 0x34, 0x32, 0x7C, 0x36, 0x39, 0x29, 0x7C, 0x37, 0x30, 0x33, 0x29, 0x7C, 0x35, 0x28, 0x3F, 0x3A, 0x30, 0x34, 0x31, 0x7C, 0x38, 0x30, 0x30, 0x29, 0x29, 0x7C, 0x37, 0x28, 0x3F, 0x3A, 0x30, 0x30, 0x30, 0x32, 0x7C, 0x31, 0x32, 0x30, 0x36, 0x29, 0x29, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x7C, 0x35, 0x35, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x35, 0x35, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x0A, 0xF7, 0x03, 0x0A, 0x1D, 0x12, 0x0A, 0x5B, 0x35, 0x38, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x1A, 0x0F, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x28, 0x3F, 0x3A, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x3F, 0x12, 0x8C, 0x01, 0x12, 0x6D, 0x38, 0x37, 0x36, 0x28, 0x3F, 0x3A, 0x28, 0x3F, 0x3A, 0x35, 0x5B, 0x30, 0x2D, 0x32, 0x36, 0x5D, 0x7C, 0x36, 0x5C, 0x64, 0x29, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x7C, 0x28, 0x3F, 0x3A, 0x37, 0x28, 0x3F, 0x3A, 0x30, 0x5B, 0x32, 0x2D, 0x36, 0x38, 0x39, 0x5D, 0x7C, 0x5B, 0x31, 0x2D, 0x36, 0x5D, 0x5C, 0x64, 0x7C, 0x38, 0x5B, 0x30, 0x35, 0x36, 0x5D, 0x7C, 0x39, 0x5B, 0x34, 0x35, 0x5D, 0x29, 0x7C, 0x39, 0x28, 0x3F, 0x3A, 0x30, 0x5B, 0x31, 0x2D, 0x38, 0x5D, 0x7C, 0x31, 0x5B, 0x30, 0x32, 0x33, 0x37, 0x38, 0x5D, 0x7C, 0x5B, 0x32, 0x2D, 0x38, 0x5D, 0x5C, 0x64, 0x7C, 0x39, 0x5B, 0x32, 0x2D, 0x34, 0x36, 0x38, 0x5D, 0x29, 0x29, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x1A, 0x0F, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x28, 0x3F, 0x3A, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x3F, 0x32, 0x0A, 0x38, 0x37, 0x36, 0x35, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x1A, 0x72, 0x12, 0x5C, 0x38, 0x37, 0x36, 0x28, 0x3F, 0x3A, 0x28, 0x3F, 0x3A, 0x32, 0x5B, 0x31, 0x37, 0x38, 0x5D, 0x7C, 0x5B, 0x33, 0x34, 0x38, 0x5D, 0x5C, 0x64, 0x7C, 0x35, 0x5B, 0x37, 0x38, 0x5D, 0x29, 0x5C, 0x64, 0x7C, 0x37, 0x28, 0x3F, 0x3A, 0x30, 0x5B, 0x30, 0x37, 0x5D, 0x7C, 0x37, 0x5C, 0x64, 0x7C, 0x38, 0x5B, 0x31, 0x2D, 0x34, 0x37, 0x2D, 0x39, 0x5D, 0x7C, 0x39, 0x5B, 0x30, 0x2D, 0x33, 0x36, 0x2D, 0x39, 0x5D, 0x29, 0x7C, 0x39, 0x28, 0x3F, 0x3A, 0x5B, 0x30, 0x31, 0x5D, 0x39, 0x7C, 0x39, 0x5B, 0x30, 0x35, 0x37, 0x39, 0x5D, 0x29, 0x29, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x38, 0x37, 0x36, 0x32, 0x31, 0x30, 0x31, 0x32, 0x33, 0x34, 0x22, 0x33, 0x12, 0x1D, 0x38, 0x28, 0x3F, 0x3A, 0x30, 0x30, 0x7C, 0x35, 0x35, 0x7C, 0x36, 0x36, 0x7C, 0x37, 0x37, 0x7C, 0x38, 0x38, 0x29, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x38, 0x30, 0x30, 0x32, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x2A, 0x23, 0x12, 0x0D, 0x39, 0x30, 0x30, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x39, 0x30, 0x30, 0x32, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x2D, 0x12, 0x17, 0x35, 0x28, 0x3F, 0x3A, 0x30, 0x30, 0x7C, 0x33, 0x33, 0x7C, 0x34, 0x34, 0x29, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x35, 0x30, 0x30, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x4A, 0x4D, 0x50, 0x01, 0x5A, 0x03, 0x30, 0x31, 0x31, 0x62, 0x01, 0x31, 0x7A, 0x01, 0x31, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xBA, 0x01, 0x03, 0x38, 0x37, 0x36, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xE0, 0x03, 0x0A, 0x19, 0x12, 0x0E, 0x5B, 0x32, 0x33, 0x35, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x38, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x39, 0x7D, 0x12, 0x25, 0x12, 0x10, 0x5B, 0x32, 0x33, 0x35, 0x36, 0x5D, 0x5B, 0x32, 0x2D, 0x38, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x38, 0x7D, 0x32, 0x08, 0x36, 0x32, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x1A, 0x2D, 0x12, 0x19, 0x37, 0x28, 0x3F, 0x3A, 0x5B, 0x31, 0x2D, 0x38, 0x5D, 0x5C, 0x64, 0x7C, 0x39, 0x5B, 0x30, 0x32, 0x2D, 0x39, 0x5D, 0x29, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x37, 0x39, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x22, 0x1A, 0x12, 0x07, 0x38, 0x30, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x38, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x2A, 0x1B, 0x12, 0x08, 0x39, 0x30, 0x30, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x39, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x32, 0x1A, 0x12, 0x07, 0x38, 0x35, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x38, 0x35, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x3A, 0x1B, 0x12, 0x07, 0x37, 0x30, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x37, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x4A, 0x4F, 0x50, 0xC2, 0x07, 0x5A, 0x02, 0x30, 0x30, 0x62, 0x01, 0x30, 0x7A, 0x01, 0x30, 0x9A, 0x01, 0x2F, 0x0A, 0x12, 0x28, 0x5C, 0x64, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x06, 0x5B, 0x32, 0x33, 0x35, 0x36, 0x5D, 0x22, 0x05, 0x28, 0x30, 0x24, 0x31, 0x29, 0x2A, 0x00, 0x9A, 0x01, 0x42, 0x0A, 0x1F, 0x28, 0x37, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x12, 0x0E, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x20, 0x24, 0x34, 0x20, 0x24, 0x35, 0x1A, 0x08, 0x37, 0x5B, 0x34, 0x35, 0x37, 0x2D, 0x39, 0x5D, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x29, 0x0A, 0x10, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x35, 0x2C, 0x36, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x1A, 0x07, 0x37, 0x30, 0x7C, 0x5B, 0x38, 0x39, 0x5D, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x26, 0x12, 0x13, 0x38, 0x28, 0x3F, 0x3A, 0x31, 0x30, 0x7C, 0x5B, 0x37, 0x38, 0x5D, 0x5C, 0x64, 0x29, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x38, 0x37, 0x31, 0x30, 0x31, 0x32, 0x33, 0x34, 0x0A, 0x95, 0x23, 0x0A, 0x14, 0x12, 0x08, 0x5C, 0x64, 0x7B, 0x39, 0x2C, 0x31, 0x30, 0x7D, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x39, 0x2C, 0x31, 0x30, 0x7D, 0x12, 0x93, 0x02, 0x12, 0xFE, 0x01, 0x28, 0x3F, 0x3A, 0x31, 0x28, 0x3F, 0x3A, 0x31, 0x5B, 0x32, 0x33, 0x36, 0x2D, 0x38, 0x5D, 0x7C, 0x32, 0x5B, 0x33, 0x2D, 0x36, 0x5D, 0x7C, 0x33, 0x5B, 0x33, 0x2D, 0x39, 0x5D, 0x7C, 0x34, 0x5B, 0x32, 0x2D, 0x36, 0x5D, 0x7C, 0x5B, 0x35, 0x38, 0x5D, 0x5B, 0x32, 0x2D, 0x38, 0x5D, 0x7C, 0x36, 0x5B, 0x32, 0x2D, 0x37, 0x5D, 0x7C, 0x37, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x7C, 0x39, 0x5B, 0x31, 0x2D, 0x38, 0x5D, 0x29, 0x7C, 0x32, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7C, 0x5B, 0x33, 0x36, 0x5D, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7C, 0x34, 0x28, 0x3F, 0x3A, 0x36, 0x5B, 0x30, 0x32, 0x33, 0x35, 0x2D, 0x38, 0x5D, 0x7C, 0x5B, 0x32, 0x2D, 0x35, 0x37, 0x38, 0x5D, 0x5C, 0x64, 0x7C, 0x39, 0x5B, 0x32, 0x2D, 0x35, 0x39, 0x5D, 0x29, 0x7C, 0x35, 0x28, 0x3F, 0x3A, 0x36, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x7C, 0x37, 0x5B, 0x32, 0x2D, 0x38, 0x5D, 0x7C, 0x5B, 0x32, 0x2D, 0x35, 0x38, 0x39, 0x5D, 0x5C, 0x64, 0x29, 0x7C, 0x37, 0x28, 0x3F, 0x3A, 0x33, 0x5B, 0x34, 0x2D, 0x39, 0x5D, 0x7C, 0x34, 0x5B, 0x30, 0x32, 0x2D, 0x39, 0x5D, 0x7C, 0x5B, 0x32, 0x35, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x29, 0x7C, 0x38, 0x28, 0x3F, 0x3A, 0x33, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x7C, 0x34, 0x5B, 0x35, 0x2D, 0x39, 0x5D, 0x7C, 0x35, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x7C, 0x38, 0x5B, 0x30, 0x33, 0x2D, 0x39, 0x5D, 0x7C, 0x5B, 0x32, 0x36, 0x37, 0x39, 0x5D, 0x5C, 0x64, 0x29, 0x7C, 0x39, 0x28, 0x3F, 0x3A, 0x5B, 0x36, 0x37, 0x39, 0x5D, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x7C, 0x5B, 0x32, 0x2D, 0x35, 0x38, 0x5D, 0x5C, 0x64, 0x29, 0x29, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x33, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x1A, 0x21, 0x12, 0x0B, 0x5B, 0x37, 0x2D, 0x39, 0x5D, 0x30, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x37, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x22, 0x1C, 0x12, 0x08, 0x31, 0x32, 0x30, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x31, 0x32, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x2A, 0x1C, 0x12, 0x08, 0x39, 0x39, 0x30, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x39, 0x39, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x1B, 0x12, 0x07, 0x36, 0x30, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x36, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x42, 0x1D, 0x12, 0x07, 0x35, 0x30, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x35, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x4A, 0x02, 0x4A, 0x50, 0x50, 0x51, 0x5A, 0x03, 0x30, 0x31, 0x30, 0x62, 0x01, 0x30, 0x7A, 0x01, 0x30, 0x9A, 0x01, 0x34, 0x0A, 0x15, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x2D, 0x24, 0x32, 0x2D, 0x24, 0x33, 0x1A, 0x0A, 0x28, 0x3F, 0x3A, 0x31, 0x32, 0x7C, 0x39, 0x39, 0x29, 0x30, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x31, 0x0A, 0x15, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x2D, 0x24, 0x32, 0x2D, 0x24, 0x33, 0x1A, 0x07, 0x5B, 0x35, 0x37, 0x2D, 0x39, 0x5D, 0x30, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0xF6, 0x03, 0x0A, 0x12, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x2D, 0x24, 0x32, 0x2D, 0x24, 0x33, 0x1A, 0x5A, 0x31, 0x28, 0x3F, 0x3A, 0x32, 0x36, 0x7C, 0x33, 0x5B, 0x37, 0x39, 0x5D, 0x7C, 0x34, 0x5B, 0x35, 0x36, 0x5D, 0x7C, 0x35, 0x5B, 0x34, 0x2D, 0x36, 0x38, 0x5D, 0x7C, 0x36, 0x5B, 0x33, 0x2D, 0x35, 0x5D, 0x29, 0x7C, 0x35, 0x28, 0x3F, 0x3A, 0x37, 0x36, 0x7C, 0x39, 0x37, 0x29, 0x7C, 0x34, 0x39, 0x39, 0x7C, 0x37, 0x34, 0x36, 0x7C, 0x38, 0x28, 0x3F, 0x3A, 0x33, 0x5B, 0x38, 0x39, 0x5D, 0x7C, 0x36, 0x33, 0x7C, 0x34, 0x37, 0x7C, 0x35, 0x31, 0x29, 0x7C, 0x39, 0x28, 0x3F, 0x3A, 0x34, 0x39, 0x7C, 0x38, 0x30, 0x7C, 0x39, 0x5B, 0x31, 0x36, 0x5D, 0x29, 0x1A, 0xAC, 0x01, 0x31, 0x28, 0x3F, 0x3A, 0x32, 0x36, 0x37, 0x7C, 0x33, 0x28, 0x3F, 0x3A, 0x37, 0x5B, 0x32, 0x34, 0x37, 0x5D, 0x7C, 0x39, 0x5B, 0x32, 0x37, 0x38, 0x5D, 0x29, 0x7C, 0x34, 0x28, 0x3F, 0x3A, 0x35, 0x5B, 0x36, 0x37, 0x5D, 0x7C, 0x36, 0x36, 0x29, 0x7C, 0x35, 0x28, 0x3F, 0x3A, 0x34, 0x37, 0x7C, 0x35, 0x38, 0x7C, 0x36, 0x34, 0x7C, 0x38, 0x5B, 0x36, 0x37, 0x5D, 0x29, 0x7C, 0x36, 0x28, 0x3F, 0x3A, 0x33, 0x5B, 0x32, 0x34, 0x35, 0x5D, 0x7C, 0x34, 0x38, 0x7C, 0x35, 0x5B, 0x34, 0x2D, 0x36, 0x38, 0x5D, 0x29, 0x29, 0x7C, 0x35, 0x28, 0x3F, 0x3A, 0x37, 0x36, 0x7C, 0x39, 0x37, 0x29, 0x39, 0x7C, 0x34, 0x39, 0x39, 0x5B, 0x32, 0x34, 0x36, 0x38, 0x5D, 0x7C, 0x37, 0x34, 0x36, 0x38, 0x7C, 0x38, 0x28, 0x3F, 0x3A, 0x33, 0x28, 0x3F, 0x3A, 0x38, 0x5B, 0x37, 0x38, 0x5D, 0x7C, 0x39, 0x36, 0x29, 0x7C, 0x36, 0x33, 0x36, 0x7C, 0x34, 0x37, 0x37, 0x7C, 0x35, 0x31, 0x5B, 0x32, 0x34, 0x5D, 0x29, 0x7C, 0x39, 0x28, 0x3F, 0x3A, 0x34, 0x39, 0x36, 0x7C, 0x38, 0x30, 0x32, 0x7C, 0x39, 0x28, 0x3F, 0x3A, 0x31, 0x5B, 0x32, 0x33, 0x5D, 0x7C, 0x36, 0x39, 0x29, 0x29, 0x1A, 0xC3, 0x01, 0x31, 0x28, 0x3F, 0x3A, 0x32, 0x36, 0x37, 0x7C, 0x33, 0x28, 0x3F, 0x3A, 0x37, 0x5B, 0x32, 0x34, 0x37, 0x5D, 0x7C, 0x39, 0x5B, 0x32, 0x37, 0x38, 0x5D, 0x29, 0x7C, 0x34, 0x28, 0x3F, 0x3A, 0x35, 0x5B, 0x36, 0x37, 0x5D, 0x7C, 0x36, 0x36, 0x29, 0x7C, 0x35, 0x28, 0x3F, 0x3A, 0x34, 0x37, 0x7C, 0x35, 0x38, 0x7C, 0x36, 0x34, 0x7C, 0x38, 0x5B, 0x36, 0x37, 0x5D, 0x29, 0x7C, 0x36, 0x28, 0x3F, 0x3A, 0x33, 0x5B, 0x32, 0x34, 0x35, 0x5D, 0x7C, 0x34, 0x38, 0x7C, 0x35, 0x5B, 0x34, 0x2D, 0x36, 0x38, 0x5D, 0x29, 0x29, 0x7C, 0x35, 0x28, 0x3F, 0x3A, 0x37, 0x36, 0x39, 0x7C, 0x39, 0x37, 0x39, 0x5B, 0x32, 0x2D, 0x36, 0x39, 0x5D, 0x29, 0x7C, 0x34, 0x39, 0x39, 0x5B, 0x32, 0x34, 0x36, 0x38, 0x5D, 0x7C, 0x37, 0x34, 0x36, 0x38, 0x7C, 0x38, 0x28, 0x3F, 0x3A, 0x33, 0x28, 0x3F, 0x3A, 0x38, 0x5B, 0x37, 0x38, 0x5D, 0x7C, 0x39, 0x36, 0x5B, 0x32, 0x34, 0x35, 0x37, 0x2D, 0x39, 0x5D, 0x29, 0x7C, 0x36, 0x33, 0x36, 0x5B, 0x32, 0x2D, 0x35, 0x37, 0x2D, 0x39, 0x5D, 0x7C, 0x34, 0x37, 0x37, 0x7C, 0x35, 0x31, 0x5B, 0x32, 0x34, 0x5D, 0x29, 0x7C, 0x39, 0x28, 0x3F, 0x3A, 0x34, 0x39, 0x36, 0x7C, 0x38, 0x30, 0x32, 0x7C, 0x39, 0x28, 0x3F, 0x3A, 0x31, 0x5B, 0x32, 0x33, 0x5D, 0x7C, 0x36, 0x39, 0x29, 0x29, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0xFB, 0x14, 0x0A, 0x15, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x2D, 0x24, 0x32, 0x2D, 0x24, 0x33, 0x1A, 0xA7, 0x03, 0x31, 0x28, 0x3F, 0x3A, 0x32, 0x5B, 0x33, 0x2D, 0x36, 0x5D, 0x7C, 0x33, 0x5B, 0x33, 0x2D, 0x39, 0x5D, 0x7C, 0x34, 0x5B, 0x32, 0x2D, 0x36, 0x5D, 0x7C, 0x35, 0x5B, 0x32, 0x2D, 0x38, 0x5D, 0x7C, 0x5B, 0x36, 0x38, 0x5D, 0x5B, 0x32, 0x2D, 0x37, 0x5D, 0x7C, 0x37, 0x5B, 0x32, 0x2D, 0x36, 0x38, 0x39, 0x5D, 0x7C, 0x39, 0x5B, 0x31, 0x2D, 0x35, 0x37, 0x38, 0x5D, 0x29, 0x7C, 0x32, 0x28, 0x3F, 0x3A, 0x32, 0x5B, 0x30, 0x33, 0x34, 0x2D, 0x39, 0x5D, 0x7C, 0x33, 0x5B, 0x33, 0x2D, 0x35, 0x38, 0x5D, 0x7C, 0x34, 0x5B, 0x30, 0x2D, 0x34, 0x36, 0x38, 0x5D, 0x7C, 0x35, 0x5B, 0x30, 0x34, 0x2D, 0x38, 0x5D, 0x7C, 0x36, 0x5B, 0x30, 0x31, 0x33, 0x2D, 0x38, 0x5D, 0x7C, 0x37, 0x5B, 0x30, 0x36, 0x2D, 0x39, 0x5D, 0x7C, 0x38, 0x5B, 0x30, 0x32, 0x2D, 0x35, 0x37, 0x2D, 0x39, 0x5D, 0x7C, 0x39, 0x5B, 0x31, 0x33, 0x5D, 0x29, 0x7C, 0x34, 0x28, 0x3F, 0x3A, 0x32, 0x5B, 0x32, 0x38, 0x5D, 0x7C, 0x33, 0x5B, 0x36, 0x38, 0x39, 0x5D, 0x7C, 0x36, 0x5B, 0x30, 0x33, 0x35, 0x2D, 0x37, 0x5D, 0x7C, 0x37, 0x5B, 0x30, 0x35, 0x36, 0x38, 0x39, 0x5D, 0x7C, 0x38, 0x30, 0x7C, 0x39, 0x5B, 0x33, 0x2D, 0x35, 0x5D, 0x29, 0x7C, 0x35, 0x28, 0x3F, 0x3A, 0x33, 0x5B, 0x31, 0x2D, 0x33, 0x36, 0x2D, 0x39, 0x5D, 0x7C, 0x34, 0x5B, 0x34, 0x35, 0x37, 0x38, 0x5D, 0x7C, 0x35, 0x5B, 0x30, 0x31, 0x33, 0x2D, 0x38, 0x5D, 0x7C, 0x36, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x7C, 0x37, 0x5B, 0x32, 0x2D, 0x38, 0x5D, 0x7C, 0x38, 0x5B, 0x31, 0x34, 0x2D, 0x37, 0x5D, 0x7C, 0x39, 0x5B, 0x34, 0x2D, 0x39, 0x5D, 0x29, 0x7C, 0x37, 0x28, 0x3F, 0x3A, 0x32, 0x5B, 0x31, 0x35, 0x5D, 0x7C, 0x33, 0x5B, 0x35, 0x2D, 0x39, 0x5D, 0x7C, 0x34, 0x5B, 0x30, 0x32, 0x2D, 0x39, 0x5D, 0x7C, 0x36, 0x5B, 0x31, 0x33, 0x35, 0x2D, 0x38, 0x5D, 0x7C, 0x37, 0x5B, 0x30, 0x2D, 0x34, 0x36, 0x38, 0x39, 0x5D, 0x7C, 0x39, 0x5B, 0x30, 0x31, 0x34, 0x2D, 0x39, 0x5D, 0x29, 0x7C, 0x38, 0x28, 0x3F, 0x3A, 0x32, 0x5B, 0x34, 0x39, 0x5D, 0x7C, 0x33, 0x5B, 0x33, 0x2D, 0x38, 0x5D, 0x7C, 0x34, 0x5B, 0x35, 0x2D, 0x38, 0x5D, 0x7C, 0x35, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x7C, 0x36, 0x5B, 0x33, 0x35, 0x2D, 0x39, 0x5D, 0x7C, 0x37, 0x5B, 0x35, 0x37, 0x39, 0x5D, 0x7C, 0x38, 0x5B, 0x30, 0x33, 0x2D, 0x35, 0x37, 0x39, 0x5D, 0x7C, 0x39, 0x5B, 0x32, 0x2D, 0x38, 0x5D, 0x29, 0x7C, 0x39, 0x28, 0x3F, 0x3A, 0x5B, 0x32, 0x33, 0x5D, 0x30, 0x7C, 0x34, 0x5B, 0x30, 0x32, 0x2D, 0x34, 0x36, 0x2D, 0x39, 0x5D, 0x7C, 0x35, 0x5B, 0x30, 0x32, 0x34, 0x35, 0x2D, 0x37, 0x39, 0x5D, 0x7C, 0x36, 0x5B, 0x34, 0x2D, 0x39, 0x5D, 0x7C, 0x37, 0x5B, 0x32, 0x2D, 0x34, 0x37, 0x2D, 0x39, 0x5D, 0x7C, 0x38, 0x5B, 0x30, 0x32, 0x2D, 0x37, 0x5D, 0x7C, 0x39, 0x5B, 0x33, 0x2D, 0x37, 0x5D, 0x29, 0x1A, 0x9E, 0x05, 0x31, 0x28, 0x3F, 0x3A, 0x32, 0x5B, 0x33, 0x2D, 0x36, 0x5D, 0x7C, 0x33, 0x5B, 0x33, 0x2D, 0x39, 0x5D, 0x7C, 0x34, 0x5B, 0x32, 0x2D, 0x36, 0x5D, 0x7C, 0x35, 0x28, 0x3F, 0x3A, 0x5B, 0x32, 0x33, 0x36, 0x2D, 0x38, 0x5D, 0x7C, 0x5B, 0x34, 0x35, 0x5D, 0x5B, 0x32, 0x2D, 0x36, 0x39, 0x5D, 0x29, 0x7C, 0x5B, 0x36, 0x38, 0x5D, 0x5B, 0x32, 0x2D, 0x37, 0x5D, 0x7C, 0x37, 0x5B, 0x32, 0x2D, 0x36, 0x38, 0x39, 0x5D, 0x7C, 0x39, 0x5B, 0x31, 0x2D, 0x35, 0x37, 0x38, 0x5D, 0x29, 0x7C, 0x32, 0x28, 0x3F, 0x3A, 0x32, 0x28, 0x3F, 0x3A, 0x5B, 0x30, 0x34, 0x2D, 0x39, 0x5D, 0x7C, 0x33, 0x5B, 0x32, 0x33, 0x5D, 0x29, 0x7C, 0x33, 0x5B, 0x33, 0x2D, 0x35, 0x38, 0x5D, 0x7C, 0x34, 0x5B, 0x30, 0x2D, 0x34, 0x36, 0x38, 0x5D, 0x7C, 0x35, 0x28, 0x3F, 0x3A, 0x35, 0x5B, 0x37, 0x38, 0x5D, 0x7C, 0x37, 0x5B, 0x32, 0x2D, 0x34, 0x5D, 0x7C, 0x5B, 0x30, 0x34, 0x36, 0x38, 0x5D, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x29, 0x7C, 0x36, 0x28, 0x3F, 0x3A, 0x5B, 0x30, 0x31, 0x33, 0x35, 0x2D, 0x38, 0x5D, 0x7C, 0x34, 0x5B, 0x32, 0x2D, 0x35, 0x5D, 0x29, 0x7C, 0x37, 0x28, 0x3F, 0x3A, 0x5B, 0x30, 0x36, 0x37, 0x39, 0x5D, 0x7C, 0x38, 0x5B, 0x32, 0x2D, 0x37, 0x5D, 0x29, 0x7C, 0x38, 0x28, 0x3F, 0x3A, 0x5B, 0x30, 0x32, 0x34, 0x35, 0x37, 0x38, 0x5D, 0x7C, 0x33, 0x5B, 0x32, 0x35, 0x2D, 0x39, 0x5D, 0x7C, 0x39, 0x5B, 0x36, 0x2D, 0x39, 0x5D, 0x29, 0x7C, 0x39, 0x28, 0x3F, 0x3A, 0x31, 0x31, 0x7C, 0x33, 0x5B, 0x32, 0x2D, 0x34, 0x5D, 0x29, 0x29, 0x7C, 0x34, 0x28, 0x3F, 0x3A, 0x32, 0x28, 0x3F, 0x3A, 0x32, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x7C, 0x38, 0x5B, 0x32, 0x33, 0x37, 0x2D, 0x39, 0x5D, 0x29, 0x7C, 0x33, 0x5B, 0x36, 0x38, 0x39, 0x5D, 0x7C, 0x36, 0x5B, 0x30, 0x33, 0x35, 0x2D, 0x37, 0x5D, 0x7C, 0x37, 0x28, 0x3F, 0x3A, 0x5B, 0x30, 0x35, 0x39, 0x5D, 0x5B, 0x32, 0x2D, 0x38, 0x5D, 0x7C, 0x5B, 0x36, 0x38, 0x5D, 0x29, 0x7C, 0x38, 0x30, 0x7C, 0x39, 0x5B, 0x33, 0x2D, 0x35, 0x5D, 0x29, 0x7C, 0x35, 0x28, 0x3F, 0x3A, 0x33, 0x5B, 0x31, 0x2D, 0x33, 0x36, 0x2D, 0x39, 0x5D, 0x7C, 0x34, 0x5B, 0x34, 0x35, 0x37, 0x38, 0x5D, 0x7C, 0x35, 0x5B, 0x30, 0x31, 0x33, 0x2D, 0x38, 0x5D, 0x7C, 0x36, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x7C, 0x37, 0x5B, 0x32, 0x2D, 0x38, 0x5D, 0x7C, 0x38, 0x5B, 0x31, 0x34, 0x2D, 0x37, 0x5D, 0x7C, 0x39, 0x28, 0x3F, 0x3A, 0x5B, 0x38, 0x39, 0x5D, 0x5B, 0x32, 0x2D, 0x38, 0x5D, 0x7C, 0x5B, 0x34, 0x2D, 0x37, 0x5D, 0x29, 0x29, 0x7C, 0x37, 0x28, 0x3F, 0x3A, 0x32, 0x5B, 0x31, 0x35, 0x5D, 0x7C, 0x33, 0x5B, 0x35, 0x2D, 0x39, 0x5D, 0x7C, 0x34, 0x5B, 0x30, 0x32, 0x2D, 0x39, 0x5D, 0x7C, 0x36, 0x5B, 0x31, 0x33, 0x35, 0x2D, 0x38, 0x5D, 0x7C, 0x37, 0x5B, 0x30, 0x2D, 0x34, 0x36, 0x38, 0x39, 0x5D, 0x7C, 0x39, 0x28, 0x3F, 0x3A, 0x5B, 0x30, 0x31, 0x37, 0x2D, 0x39, 0x5D, 0x7C, 0x34, 0x5B, 0x36, 0x2D, 0x38, 0x5D, 0x7C, 0x35, 0x5B, 0x32, 0x2D, 0x34, 0x37, 0x38, 0x5D, 0x7C, 0x36, 0x5B, 0x32, 0x2D, 0x35, 0x38, 0x39, 0x5D, 0x29, 0x29, 0x7C, 0x38, 0x28, 0x3F, 0x3A, 0x32, 0x28, 0x3F, 0x3A, 0x34, 0x5B, 0x34, 0x2D, 0x38, 0x5D, 0x7C, 0x39, 0x5B, 0x32, 0x2D, 0x38, 0x5D, 0x29, 0x7C, 0x33, 0x28, 0x3F, 0x3A, 0x37, 0x5B, 0x32, 0x2D, 0x35, 0x36, 0x5D, 0x7C, 0x5B, 0x33, 0x2D, 0x36, 0x5D, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x7C, 0x38, 0x5B, 0x32, 0x2D, 0x35, 0x5D, 0x29, 0x7C, 0x34, 0x5B, 0x35, 0x2D, 0x38, 0x5D, 0x7C, 0x35, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x7C, 0x36, 0x28, 0x3F, 0x3A, 0x5B, 0x33, 0x37, 0x5D, 0x7C, 0x35, 0x5B, 0x34, 0x2D, 0x37, 0x5D, 0x7C, 0x36, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x7C, 0x38, 0x5B, 0x32, 0x2D, 0x38, 0x5D, 0x7C, 0x39, 0x5B, 0x32, 0x33, 0x36, 0x2D, 0x39, 0x5D, 0x29, 0x7C, 0x37, 0x5B, 0x35, 0x37, 0x39, 0x5D, 0x7C, 0x38, 0x5B, 0x30, 0x33, 0x2D, 0x35, 0x37, 0x39, 0x5D, 0x7C, 0x39, 0x5B, 0x32, 0x2D, 0x38, 0x5D, 0x29, 0x7C, 0x39, 0x28, 0x3F, 0x3A, 0x5B, 0x32, 0x33, 0x5D, 0x30, 0x7C, 0x34, 0x5B, 0x30, 0x32, 0x2D, 0x34, 0x36, 0x2D, 0x39, 0x5D, 0x7C, 0x35, 0x5B, 0x30, 0x32, 0x34, 0x35, 0x2D, 0x37, 0x39, 0x5D, 0x7C, 0x36, 0x5B, 0x34, 0x2D, 0x39, 0x5D, 0x7C, 0x37, 0x5B, 0x32, 0x2D, 0x34, 0x37, 0x2D, 0x39, 0x5D, 0x7C, 0x38, 0x5B, 0x30, 0x32, 0x2D, 0x37, 0x5D, 0x7C, 0x39, 0x28, 0x3F, 0x3A, 0x33, 0x5B, 0x33, 0x34, 0x5D, 0x7C, 0x5B, 0x34, 0x2D, 0x37, 0x5D, 0x29, 0x29, 0x1A, 0xFD, 0x05, 0x31, 0x28, 0x3F, 0x3A, 0x32, 0x5B, 0x33, 0x2D, 0x36, 0x5D, 0x7C, 0x33, 0x5B, 0x33, 0x2D, 0x39, 0x5D, 0x7C, 0x34, 0x5B, 0x32, 0x2D, 0x36, 0x5D, 0x7C, 0x35, 0x28, 0x3F, 0x3A, 0x5B, 0x32, 0x33, 0x36, 0x2D, 0x38, 0x5D, 0x7C, 0x5B, 0x34, 0x35, 0x5D, 0x5B, 0x32, 0x2D, 0x36, 0x39, 0x5D, 0x29, 0x7C, 0x5B, 0x36, 0x38, 0x5D, 0x5B, 0x32, 0x2D, 0x37, 0x5D, 0x7C, 0x37, 0x5B, 0x32, 0x2D, 0x36, 0x38, 0x39, 0x5D, 0x7C, 0x39, 0x5B, 0x31, 0x2D, 0x35, 0x37, 0x38, 0x5D, 0x29, 0x7C, 0x32, 0x28, 0x3F, 0x3A, 0x32, 0x28, 0x3F, 0x3A, 0x5B, 0x30, 0x34, 0x2D, 0x39, 0x5D, 0x7C, 0x33, 0x5B, 0x32, 0x33, 0x5D, 0x29, 0x7C, 0x33, 0x5B, 0x33, 0x2D, 0x35, 0x38, 0x5D, 0x7C, 0x34, 0x5B, 0x30, 0x2D, 0x34, 0x36, 0x38, 0x5D, 0x7C, 0x35, 0x28, 0x3F, 0x3A, 0x35, 0x5B, 0x37, 0x38, 0x5D, 0x7C, 0x37, 0x5B, 0x32, 0x2D, 0x34, 0x5D, 0x7C, 0x5B, 0x30, 0x34, 0x36, 0x38, 0x5D, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x29, 0x7C, 0x36, 0x28, 0x3F, 0x3A, 0x5B, 0x30, 0x31, 0x33, 0x35, 0x2D, 0x38, 0x5D, 0x7C, 0x34, 0x5B, 0x32, 0x2D, 0x35, 0x5D, 0x29, 0x7C, 0x37, 0x28, 0x3F, 0x3A, 0x5B, 0x30, 0x36, 0x37, 0x39, 0x5D, 0x7C, 0x38, 0x5B, 0x32, 0x2D, 0x37, 0x5D, 0x29, 0x7C, 0x38, 0x28, 0x3F, 0x3A, 0x5B, 0x30, 0x32, 0x34, 0x35, 0x37, 0x38, 0x5D, 0x7C, 0x33, 0x5B, 0x32, 0x35, 0x2D, 0x39, 0x5D, 0x7C, 0x39, 0x5B, 0x36, 0x2D, 0x39, 0x5D, 0x29, 0x7C, 0x39, 0x28, 0x3F, 0x3A, 0x31, 0x31, 0x7C, 0x33, 0x5B, 0x32, 0x2D, 0x34, 0x5D, 0x29, 0x29, 0x7C, 0x34, 0x28, 0x3F, 0x3A, 0x32, 0x28, 0x3F, 0x3A, 0x32, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x7C, 0x38, 0x5B, 0x32, 0x33, 0x37, 0x2D, 0x39, 0x5D, 0x29, 0x7C, 0x33, 0x5B, 0x36, 0x38, 0x39, 0x5D, 0x7C, 0x36, 0x5B, 0x30, 0x33, 0x35, 0x2D, 0x37, 0x5D, 0x7C, 0x37, 0x28, 0x3F, 0x3A, 0x5B, 0x30, 0x35, 0x39, 0x5D, 0x5B, 0x32, 0x2D, 0x38, 0x5D, 0x7C, 0x5B, 0x36, 0x38, 0x5D, 0x29, 0x7C, 0x38, 0x30, 0x7C, 0x39, 0x5B, 0x33, 0x2D, 0x35, 0x5D, 0x29, 0x7C, 0x35, 0x28, 0x3F, 0x3A, 0x33, 0x5B, 0x31, 0x2D, 0x33, 0x36, 0x2D, 0x39, 0x5D, 0x7C, 0x34, 0x5B, 0x34, 0x35, 0x37, 0x38, 0x5D, 0x7C, 0x35, 0x5B, 0x30, 0x31, 0x33, 0x2D, 0x38, 0x5D, 0x7C, 0x36, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x7C, 0x37, 0x5B, 0x32, 0x2D, 0x38, 0x5D, 0x7C, 0x38, 0x5B, 0x31, 0x34, 0x2D, 0x37, 0x5D, 0x7C, 0x39, 0x28, 0x3F, 0x3A, 0x5B, 0x38, 0x39, 0x5D, 0x5B, 0x32, 0x2D, 0x38, 0x5D, 0x7C, 0x5B, 0x34, 0x2D, 0x37, 0x5D, 0x29, 0x29, 0x7C, 0x37, 0x28, 0x3F, 0x3A, 0x32, 0x5B, 0x31, 0x35, 0x5D, 0x7C, 0x33, 0x5B, 0x35, 0x2D, 0x39, 0x5D, 0x7C, 0x34, 0x5B, 0x30, 0x32, 0x2D, 0x39, 0x5D, 0x7C, 0x36, 0x5B, 0x31, 0x33, 0x35, 0x2D, 0x38, 0x5D, 0x7C, 0x37, 0x5B, 0x30, 0x2D, 0x34, 0x36, 0x38, 0x39, 0x5D, 0x7C, 0x39, 0x28, 0x3F, 0x3A, 0x5B, 0x30, 0x31, 0x37, 0x2D, 0x39, 0x5D, 0x7C, 0x34, 0x5B, 0x36, 0x2D, 0x38, 0x5D, 0x7C, 0x35, 0x5B, 0x32, 0x2D, 0x34, 0x37, 0x38, 0x5D, 0x7C, 0x36, 0x5B, 0x32, 0x2D, 0x35, 0x38, 0x39, 0x5D, 0x29, 0x29, 0x7C, 0x38, 0x28, 0x3F, 0x3A, 0x32, 0x28, 0x3F, 0x3A, 0x34, 0x5B, 0x34, 0x2D, 0x38, 0x5D, 0x7C, 0x39, 0x28, 0x3F, 0x3A, 0x5B, 0x33, 0x35, 0x37, 0x38, 0x5D, 0x7C, 0x32, 0x30, 0x7C, 0x34, 0x5B, 0x30, 0x34, 0x2D, 0x39, 0x5D, 0x7C, 0x36, 0x5B, 0x35, 0x36, 0x5D, 0x29, 0x29, 0x7C, 0x33, 0x28, 0x3F, 0x3A, 0x37, 0x28, 0x3F, 0x3A, 0x5B, 0x32, 0x2D, 0x35, 0x5D, 0x7C, 0x36, 0x5B, 0x30, 0x2D, 0x35, 0x39, 0x5D, 0x29, 0x7C, 0x5B, 0x33, 0x2D, 0x36, 0x5D, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x7C, 0x38, 0x5B, 0x32, 0x2D, 0x35, 0x5D, 0x29, 0x7C, 0x34, 0x5B, 0x35, 0x2D, 0x38, 0x5D, 0x7C, 0x35, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x7C, 0x36, 0x28, 0x3F, 0x3A, 0x5B, 0x33, 0x37, 0x5D, 0x7C, 0x35, 0x28, 0x3F, 0x3A, 0x5B, 0x34, 0x36, 0x37, 0x5D, 0x7C, 0x35, 0x5B, 0x30, 0x31, 0x34, 0x2D, 0x39, 0x5D, 0x29, 0x7C, 0x36, 0x28, 0x3F, 0x3A, 0x5B, 0x32, 0x2D, 0x38, 0x5D, 0x7C, 0x39, 0x5B, 0x30, 0x32, 0x2D, 0x36, 0x39, 0x5D, 0x29, 0x7C, 0x38, 0x5B, 0x32, 0x2D, 0x38, 0x5D, 0x7C, 0x39, 0x28, 0x3F, 0x3A, 0x5B, 0x32, 0x33, 0x36, 0x2D, 0x38, 0x5D, 0x7C, 0x39, 0x5B, 0x32, 0x33, 0x5D, 0x29, 0x29, 0x7C, 0x37, 0x5B, 0x35, 0x37, 0x39, 0x5D, 0x7C, 0x38, 0x5B, 0x30, 0x33, 0x2D, 0x35, 0x37, 0x39, 0x5D, 0x7C, 0x39, 0x5B, 0x32, 0x2D, 0x38, 0x5D, 0x29, 0x7C, 0x39, 0x28, 0x3F, 0x3A, 0x5B, 0x32, 0x33, 0x5D, 0x30, 0x7C, 0x34, 0x5B, 0x30, 0x32, 0x2D, 0x34, 0x36, 0x2D, 0x39, 0x5D, 0x7C, 0x35, 0x5B, 0x30, 0x32, 0x34, 0x35, 0x2D, 0x37, 0x39, 0x5D, 0x7C, 0x36, 0x5B, 0x34, 0x2D, 0x39, 0x5D, 0x7C, 0x37, 0x5B, 0x32, 0x2D, 0x34, 0x37, 0x2D, 0x39, 0x5D, 0x7C, 0x38, 0x5B, 0x30, 0x32, 0x2D, 0x37, 0x5D, 0x7C, 0x39, 0x28, 0x3F, 0x3A, 0x33, 0x28, 0x3F, 0x3A, 0x33, 0x5B, 0x30, 0x32, 0x2D, 0x39, 0x5D, 0x7C, 0x34, 0x5B, 0x30, 0x2D, 0x32, 0x34, 0x36, 0x38, 0x39, 0x5D, 0x29, 0x7C, 0x34, 0x5B, 0x32, 0x2D, 0x36, 0x39, 0x5D, 0x7C, 0x5B, 0x35, 0x2D, 0x37, 0x5D, 0x29, 0x29, 0x1A, 0x85, 0x06, 0x31, 0x28, 0x3F, 0x3A, 0x32, 0x5B, 0x33, 0x2D, 0x36, 0x5D, 0x7C, 0x33, 0x5B, 0x33, 0x2D, 0x39, 0x5D, 0x7C, 0x34, 0x5B, 0x32, 0x2D, 0x36, 0x5D, 0x7C, 0x35, 0x28, 0x3F, 0x3A, 0x5B, 0x32, 0x33, 0x36, 0x2D, 0x38, 0x5D, 0x7C, 0x5B, 0x34, 0x35, 0x5D, 0x5B, 0x32, 0x2D, 0x36, 0x39, 0x5D, 0x29, 0x7C, 0x5B, 0x36, 0x38, 0x5D, 0x5B, 0x32, 0x2D, 0x37, 0x5D, 0x7C, 0x37, 0x5B, 0x32, 0x2D, 0x36, 0x38, 0x39, 0x5D, 0x7C, 0x39, 0x5B, 0x31, 0x2D, 0x35, 0x37, 0x38, 0x5D, 0x29, 0x7C, 0x32, 0x28, 0x3F, 0x3A, 0x32, 0x28, 0x3F, 0x3A, 0x5B, 0x30, 0x34, 0x2D, 0x39, 0x5D, 0x7C, 0x33, 0x5B, 0x32, 0x33, 0x5D, 0x29, 0x7C, 0x33, 0x5B, 0x33, 0x2D, 0x35, 0x38, 0x5D, 0x7C, 0x34, 0x5B, 0x30, 0x2D, 0x34, 0x36, 0x38, 0x5D, 0x7C, 0x35, 0x28, 0x3F, 0x3A, 0x35, 0x5B, 0x37, 0x38, 0x5D, 0x7C, 0x37, 0x5B, 0x32, 0x2D, 0x34, 0x5D, 0x7C, 0x5B, 0x30, 0x34, 0x36, 0x38, 0x5D, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x29, 0x7C, 0x36, 0x28, 0x3F, 0x3A, 0x5B, 0x30, 0x31, 0x33, 0x35, 0x2D, 0x38, 0x5D, 0x7C, 0x34, 0x5B, 0x32, 0x2D, 0x35, 0x5D, 0x29, 0x7C, 0x37, 0x28, 0x3F, 0x3A, 0x5B, 0x30, 0x36, 0x37, 0x39, 0x5D, 0x7C, 0x38, 0x5B, 0x32, 0x2D, 0x37, 0x5D, 0x29, 0x7C, 0x38, 0x28, 0x3F, 0x3A, 0x5B, 0x30, 0x32, 0x34, 0x35, 0x37, 0x38, 0x5D, 0x7C, 0x33, 0x5B, 0x32, 0x35, 0x2D, 0x39, 0x5D, 0x7C, 0x39, 0x5B, 0x36, 0x2D, 0x39, 0x5D, 0x29, 0x7C, 0x39, 0x28, 0x3F, 0x3A, 0x31, 0x31, 0x7C, 0x33, 0x5B, 0x32, 0x2D, 0x34, 0x5D, 0x29, 0x29, 0x7C, 0x34, 0x28, 0x3F, 0x3A, 0x32, 0x28, 0x3F, 0x3A, 0x32, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x7C, 0x38, 0x5B, 0x32, 0x33, 0x37, 0x2D, 0x39, 0x5D, 0x29, 0x7C, 0x33, 0x5B, 0x36, 0x38, 0x39, 0x5D, 0x7C, 0x36, 0x5B, 0x30, 0x33, 0x35, 0x2D, 0x37, 0x5D, 0x7C, 0x37, 0x28, 0x3F, 0x3A, 0x5B, 0x30, 0x35, 0x39, 0x5D, 0x5B, 0x32, 0x2D, 0x38, 0x5D, 0x7C, 0x5B, 0x36, 0x38, 0x5D, 0x29, 0x7C, 0x38, 0x30, 0x7C, 0x39, 0x5B, 0x33, 0x2D, 0x35, 0x5D, 0x29, 0x7C, 0x35, 0x28, 0x3F, 0x3A, 0x33, 0x5B, 0x31, 0x2D, 0x33, 0x36, 0x2D, 0x39, 0x5D, 0x7C, 0x34, 0x5B, 0x34, 0x35, 0x37, 0x38, 0x5D, 0x7C, 0x35, 0x5B, 0x30, 0x31, 0x33, 0x2D, 0x38, 0x5D, 0x7C, 0x36, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x7C, 0x37, 0x5B, 0x32, 0x2D, 0x38, 0x5D, 0x7C, 0x38, 0x5B, 0x31, 0x34, 0x2D, 0x37, 0x5D, 0x7C, 0x39, 0x28, 0x3F, 0x3A, 0x5B, 0x38, 0x39, 0x5D, 0x5B, 0x32, 0x2D, 0x38, 0x5D, 0x7C, 0x5B, 0x34, 0x2D, 0x37, 0x5D, 0x29, 0x29, 0x7C, 0x37, 0x28, 0x3F, 0x3A, 0x32, 0x5B, 0x31, 0x35, 0x5D, 0x7C, 0x33, 0x5B, 0x35, 0x2D, 0x39, 0x5D, 0x7C, 0x34, 0x5B, 0x30, 0x32, 0x2D, 0x39, 0x5D, 0x7C, 0x36, 0x5B, 0x31, 0x33, 0x35, 0x2D, 0x38, 0x5D, 0x7C, 0x37, 0x5B, 0x30, 0x2D, 0x34, 0x36, 0x38, 0x39, 0x5D, 0x7C, 0x39, 0x28, 0x3F, 0x3A, 0x5B, 0x30, 0x31, 0x37, 0x2D, 0x39, 0x5D, 0x7C, 0x34, 0x5B, 0x36, 0x2D, 0x38, 0x5D, 0x7C, 0x35, 0x5B, 0x32, 0x2D, 0x34, 0x37, 0x38, 0x5D, 0x7C, 0x36, 0x5B, 0x32, 0x2D, 0x35, 0x38, 0x39, 0x5D, 0x29, 0x29, 0x7C, 0x38, 0x28, 0x3F, 0x3A, 0x32, 0x28, 0x3F, 0x3A, 0x34, 0x5B, 0x34, 0x2D, 0x38, 0x5D, 0x7C, 0x39, 0x28, 0x3F, 0x3A, 0x5B, 0x33, 0x35, 0x37, 0x38, 0x5D, 0x7C, 0x32, 0x30, 0x7C, 0x34, 0x5B, 0x30, 0x34, 0x2D, 0x39, 0x5D, 0x7C, 0x36, 0x28, 0x3F, 0x3A, 0x35, 0x5B, 0x32, 0x35, 0x5D, 0x7C, 0x36, 0x30, 0x29, 0x29, 0x29, 0x7C, 0x33, 0x28, 0x3F, 0x3A, 0x37, 0x28, 0x3F, 0x3A, 0x5B, 0x32, 0x2D, 0x35, 0x5D, 0x7C, 0x36, 0x5B, 0x30, 0x2D, 0x35, 0x39, 0x5D, 0x29, 0x7C, 0x5B, 0x33, 0x2D, 0x36, 0x5D, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x7C, 0x38, 0x5B, 0x32, 0x2D, 0x35, 0x5D, 0x29, 0x7C, 0x34, 0x5B, 0x35, 0x2D, 0x38, 0x5D, 0x7C, 0x35, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x7C, 0x36, 0x28, 0x3F, 0x3A, 0x5B, 0x33, 0x37, 0x5D, 0x7C, 0x35, 0x28, 0x3F, 0x3A, 0x5B, 0x34, 0x36, 0x37, 0x5D, 0x7C, 0x35, 0x5B, 0x30, 0x31, 0x34, 0x2D, 0x39, 0x5D, 0x29, 0x7C, 0x36, 0x28, 0x3F, 0x3A, 0x5B, 0x32, 0x2D, 0x38, 0x5D, 0x7C, 0x39, 0x5B, 0x30, 0x32, 0x2D, 0x36, 0x39, 0x5D, 0x29, 0x7C, 0x38, 0x5B, 0x32, 0x2D, 0x38, 0x5D, 0x7C, 0x39, 0x28, 0x3F, 0x3A, 0x5B, 0x32, 0x33, 0x36, 0x2D, 0x38, 0x5D, 0x7C, 0x39, 0x5B, 0x32, 0x33, 0x5D, 0x29, 0x29, 0x7C, 0x37, 0x5B, 0x35, 0x37, 0x39, 0x5D, 0x7C, 0x38, 0x5B, 0x30, 0x33, 0x2D, 0x35, 0x37, 0x39, 0x5D, 0x7C, 0x39, 0x5B, 0x32, 0x2D, 0x38, 0x5D, 0x29, 0x7C, 0x39, 0x28, 0x3F, 0x3A, 0x5B, 0x32, 0x33, 0x5D, 0x30, 0x7C, 0x34, 0x5B, 0x30, 0x32, 0x2D, 0x34, 0x36, 0x2D, 0x39, 0x5D, 0x7C, 0x35, 0x5B, 0x30, 0x32, 0x34, 0x35, 0x2D, 0x37, 0x39, 0x5D, 0x7C, 0x36, 0x5B, 0x34, 0x2D, 0x39, 0x5D, 0x7C, 0x37, 0x5B, 0x32, 0x2D, 0x34, 0x37, 0x2D, 0x39, 0x5D, 0x7C, 0x38, 0x5B, 0x30, 0x32, 0x2D, 0x37, 0x5D, 0x7C, 0x39, 0x28, 0x3F, 0x3A, 0x33, 0x28, 0x3F, 0x3A, 0x33, 0x5B, 0x30, 0x32, 0x2D, 0x39, 0x5D, 0x7C, 0x34, 0x5B, 0x30, 0x2D, 0x32, 0x34, 0x36, 0x38, 0x39, 0x5D, 0x29, 0x7C, 0x34, 0x5B, 0x32, 0x2D, 0x36, 0x39, 0x5D, 0x7C, 0x5B, 0x35, 0x2D, 0x37, 0x5D, 0x29, 0x29, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0xE4, 0x03, 0x0A, 0x15, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x2D, 0x24, 0x32, 0x2D, 0x24, 0x33, 0x1A, 0x77, 0x31, 0x7C, 0x32, 0x28, 0x3F, 0x3A, 0x32, 0x33, 0x7C, 0x35, 0x5B, 0x35, 0x2D, 0x38, 0x39, 0x5D, 0x7C, 0x36, 0x34, 0x7C, 0x37, 0x38, 0x7C, 0x38, 0x5B, 0x33, 0x39, 0x5D, 0x7C, 0x39, 0x31, 0x29, 0x7C, 0x34, 0x28, 0x3F, 0x3A, 0x32, 0x5B, 0x32, 0x36, 0x38, 0x39, 0x5D, 0x7C, 0x36, 0x34, 0x7C, 0x37, 0x5B, 0x33, 0x34, 0x37, 0x5D, 0x29, 0x7C, 0x35, 0x28, 0x3F, 0x3A, 0x5B, 0x32, 0x2D, 0x35, 0x38, 0x39, 0x5D, 0x7C, 0x33, 0x39, 0x29, 0x7C, 0x36, 0x30, 0x7C, 0x38, 0x28, 0x3F, 0x3A, 0x5B, 0x34, 0x36, 0x2D, 0x39, 0x5D, 0x7C, 0x33, 0x5B, 0x32, 0x37, 0x39, 0x5D, 0x7C, 0x32, 0x5B, 0x31, 0x32, 0x34, 0x35, 0x38, 0x39, 0x5D, 0x29, 0x7C, 0x39, 0x28, 0x3F, 0x3A, 0x5B, 0x32, 0x33, 0x35, 0x2D, 0x38, 0x5D, 0x7C, 0x39, 0x33, 0x29, 0x1A, 0x9A, 0x01, 0x31, 0x7C, 0x32, 0x28, 0x3F, 0x3A, 0x32, 0x33, 0x7C, 0x35, 0x28, 0x3F, 0x3A, 0x5B, 0x35, 0x37, 0x5D, 0x7C, 0x5B, 0x36, 0x38, 0x5D, 0x30, 0x7C, 0x39, 0x5B, 0x31, 0x39, 0x5D, 0x29, 0x7C, 0x36, 0x34, 0x7C, 0x37, 0x38, 0x7C, 0x38, 0x5B, 0x33, 0x39, 0x5D, 0x7C, 0x39, 0x31, 0x37, 0x29, 0x7C, 0x34, 0x28, 0x3F, 0x3A, 0x32, 0x28, 0x3F, 0x3A, 0x5B, 0x36, 0x38, 0x5D, 0x7C, 0x32, 0x30, 0x7C, 0x39, 0x5B, 0x31, 0x37, 0x38, 0x5D, 0x29, 0x7C, 0x36, 0x34, 0x7C, 0x37, 0x5B, 0x33, 0x34, 0x37, 0x5D, 0x29, 0x7C, 0x35, 0x28, 0x3F, 0x3A, 0x5B, 0x32, 0x2D, 0x35, 0x38, 0x39, 0x5D, 0x7C, 0x33, 0x39, 0x5B, 0x36, 0x37, 0x5D, 0x29, 0x7C, 0x36, 0x30, 0x7C, 0x38, 0x28, 0x3F, 0x3A, 0x5B, 0x34, 0x36, 0x2D, 0x39, 0x5D, 0x7C, 0x33, 0x5B, 0x32, 0x37, 0x39, 0x5D, 0x7C, 0x32, 0x5B, 0x31, 0x32, 0x34, 0x35, 0x38, 0x39, 0x5D, 0x29, 0x7C, 0x39, 0x28, 0x3F, 0x3A, 0x5B, 0x32, 0x33, 0x35, 0x2D, 0x38, 0x5D, 0x7C, 0x39, 0x33, 0x5B, 0x33, 0x34, 0x5D, 0x29, 0x1A, 0xA3, 0x01, 0x31, 0x7C, 0x32, 0x28, 0x3F, 0x3A, 0x32, 0x33, 0x7C, 0x35, 0x28, 0x3F, 0x3A, 0x5B, 0x35, 0x37, 0x5D, 0x7C, 0x5B, 0x36, 0x38, 0x5D, 0x30, 0x7C, 0x39, 0x28, 0x3F, 0x3A, 0x31, 0x37, 0x7C, 0x39, 0x39, 0x29, 0x29, 0x7C, 0x36, 0x34, 0x7C, 0x37, 0x38, 0x7C, 0x38, 0x5B, 0x33, 0x39, 0x5D, 0x7C, 0x39, 0x31, 0x37, 0x29, 0x7C, 0x34, 0x28, 0x3F, 0x3A, 0x32, 0x28, 0x3F, 0x3A, 0x5B, 0x36, 0x38, 0x5D, 0x7C, 0x32, 0x30, 0x7C, 0x39, 0x5B, 0x31, 0x37, 0x38, 0x5D, 0x29, 0x7C, 0x36, 0x34, 0x7C, 0x37, 0x5B, 0x33, 0x34, 0x37, 0x5D, 0x29, 0x7C, 0x35, 0x28, 0x3F, 0x3A, 0x5B, 0x32, 0x2D, 0x35, 0x38, 0x39, 0x5D, 0x7C, 0x33, 0x39, 0x5B, 0x36, 0x37, 0x5D, 0x29, 0x7C, 0x36, 0x30, 0x7C, 0x38, 0x28, 0x3F, 0x3A, 0x5B, 0x34, 0x36, 0x2D, 0x39, 0x5D, 0x7C, 0x33, 0x5B, 0x32, 0x37, 0x39, 0x5D, 0x7C, 0x32, 0x5B, 0x31, 0x32, 0x34, 0x35, 0x38, 0x39, 0x5D, 0x29, 0x7C, 0x39, 0x28, 0x3F, 0x3A, 0x5B, 0x32, 0x33, 0x35, 0x2D, 0x38, 0x5D, 0x7C, 0x39, 0x33, 0x28, 0x3F, 0x3A, 0x33, 0x31, 0x7C, 0x34, 0x29, 0x29, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x4D, 0x0A, 0x15, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x2D, 0x24, 0x32, 0x2D, 0x24, 0x33, 0x1A, 0x23, 0x32, 0x28, 0x3F, 0x3A, 0x39, 0x5B, 0x31, 0x34, 0x2D, 0x37, 0x39, 0x5D, 0x7C, 0x37, 0x34, 0x7C, 0x5B, 0x33, 0x34, 0x5D, 0x37, 0x7C, 0x5B, 0x35, 0x36, 0x5D, 0x39, 0x29, 0x7C, 0x38, 0x32, 0x7C, 0x39, 0x39, 0x33, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x40, 0x0A, 0x12, 0x28, 0x5C, 0x64, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x2D, 0x24, 0x32, 0x2D, 0x24, 0x33, 0x1A, 0x19, 0x33, 0x7C, 0x34, 0x28, 0x3F, 0x3A, 0x32, 0x5B, 0x30, 0x39, 0x5D, 0x7C, 0x37, 0x5B, 0x30, 0x31, 0x5D, 0x29, 0x7C, 0x36, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x30, 0x0A, 0x15, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x2D, 0x24, 0x32, 0x2D, 0x24, 0x33, 0x1A, 0x06, 0x5B, 0x32, 0x34, 0x37, 0x39, 0x5D, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0x8C, 0x03, 0x0A, 0x14, 0x12, 0x08, 0x5C, 0x64, 0x7B, 0x36, 0x2C, 0x31, 0x30, 0x7D, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x34, 0x2C, 0x31, 0x30, 0x7D, 0x12, 0x38, 0x12, 0x22, 0x28, 0x3F, 0x3A, 0x32, 0x30, 0x7C, 0x34, 0x5B, 0x30, 0x2D, 0x36, 0x5D, 0x7C, 0x35, 0x5C, 0x64, 0x7C, 0x36, 0x5B, 0x30, 0x2D, 0x32, 0x34, 0x2D, 0x39, 0x5D, 0x29, 0x5C, 0x64, 0x7B, 0x34, 0x2C, 0x37, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x34, 0x2C, 0x39, 0x7D, 0x32, 0x09, 0x32, 0x30, 0x32, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x1A, 0x3D, 0x12, 0x29, 0x37, 0x28, 0x3F, 0x3A, 0x31, 0x5B, 0x30, 0x2D, 0x36, 0x5D, 0x7C, 0x32, 0x5C, 0x64, 0x7C, 0x33, 0x5B, 0x32, 0x2D, 0x38, 0x5D, 0x7C, 0x35, 0x5B, 0x30, 0x2D, 0x32, 0x5D, 0x7C, 0x37, 0x5B, 0x30, 0x32, 0x33, 0x5D, 0x29, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x37, 0x31, 0x32, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x22, 0x28, 0x12, 0x11, 0x38, 0x28, 0x3F, 0x3A, 0x30, 0x30, 0x7C, 0x38, 0x38, 0x29, 0x5C, 0x64, 0x7B, 0x36, 0x2C, 0x37, 0x7D, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x39, 0x2C, 0x31, 0x30, 0x7D, 0x32, 0x09, 0x38, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x2A, 0x27, 0x12, 0x10, 0x39, 0x28, 0x3F, 0x3A, 0x30, 0x30, 0x7C, 0x31, 0x29, 0x5C, 0x64, 0x7B, 0x36, 0x2C, 0x37, 0x7D, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x38, 0x2C, 0x31, 0x30, 0x7D, 0x32, 0x09, 0x39, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x4B, 0x45, 0x50, 0xFE, 0x01, 0x5A, 0x03, 0x30, 0x30, 0x30, 0x62, 0x01, 0x30, 0x7A, 0x01, 0x30, 0x9A, 0x01, 0x2A, 0x0A, 0x10, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x2C, 0x37, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x1A, 0x08, 0x5B, 0x32, 0x2D, 0x36, 0x5D, 0x7C, 0x39, 0x31, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x29, 0x0A, 0x10, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x36, 0x2C, 0x37, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x1A, 0x07, 0x5B, 0x37, 0x38, 0x5D, 0x7C, 0x39, 0x30, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xA1, 0x04, 0x0A, 0x17, 0x12, 0x0C, 0x5B, 0x33, 0x35, 0x36, 0x2D, 0x38, 0x5D, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x35, 0x2C, 0x39, 0x7D, 0x12, 0xEA, 0x01, 0x12, 0xD3, 0x01, 0x28, 0x3F, 0x3A, 0x33, 0x28, 0x3F, 0x3A, 0x31, 0x28, 0x3F, 0x3A, 0x32, 0x5C, 0x64, 0x7C, 0x33, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x7C, 0x35, 0x32, 0x7C, 0x36, 0x5B, 0x31, 0x2D, 0x38, 0x5D, 0x29, 0x7C, 0x32, 0x28, 0x3F, 0x3A, 0x32, 0x32, 0x7C, 0x33, 0x5B, 0x30, 0x2D, 0x34, 0x37, 0x39, 0x5D, 0x7C, 0x36, 0x5B, 0x30, 0x2D, 0x37, 0x5D, 0x29, 0x7C, 0x34, 0x28, 0x3F, 0x3A, 0x32, 0x32, 0x7C, 0x35, 0x5B, 0x36, 0x2D, 0x39, 0x5D, 0x7C, 0x36, 0x5B, 0x30, 0x2D, 0x34, 0x5D, 0x29, 0x7C, 0x35, 0x28, 0x3F, 0x3A, 0x32, 0x32, 0x7C, 0x33, 0x5B, 0x34, 0x2D, 0x37, 0x5D, 0x7C, 0x35, 0x39, 0x7C, 0x36, 0x5B, 0x30, 0x2D, 0x35, 0x5D, 0x29, 0x7C, 0x36, 0x28, 0x3F, 0x3A, 0x32, 0x32, 0x7C, 0x35, 0x5B, 0x33, 0x35, 0x2D, 0x37, 0x5D, 0x7C, 0x36, 0x5B, 0x30, 0x2D, 0x33, 0x5D, 0x29, 0x7C, 0x37, 0x28, 0x3F, 0x3A, 0x32, 0x32, 0x7C, 0x33, 0x5B, 0x34, 0x36, 0x38, 0x5D, 0x7C, 0x34, 0x5B, 0x31, 0x2D, 0x38, 0x5D, 0x7C, 0x35, 0x39, 0x7C, 0x36, 0x5C, 0x64, 0x7C, 0x37, 0x5B, 0x35, 0x2D, 0x37, 0x5D, 0x29, 0x7C, 0x39, 0x28, 0x3F, 0x3A, 0x32, 0x32, 0x7C, 0x34, 0x5B, 0x31, 0x2D, 0x37, 0x5D, 0x7C, 0x36, 0x5B, 0x30, 0x2D, 0x38, 0x5D, 0x29, 0x29, 0x7C, 0x36, 0x28, 0x3F, 0x3A, 0x30, 0x39, 0x7C, 0x31, 0x32, 0x7C, 0x32, 0x5B, 0x32, 0x2D, 0x34, 0x5D, 0x29, 0x5C, 0x64, 0x29, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x35, 0x2C, 0x39, 0x7D, 0x32, 0x09, 0x33, 0x31, 0x32, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x1A, 0x35, 0x12, 0x21, 0x35, 0x5B, 0x31, 0x32, 0x34, 0x2D, 0x37, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x7C, 0x37, 0x28, 0x3F, 0x3A, 0x30, 0x5B, 0x30, 0x35, 0x5D, 0x7C, 0x37, 0x5C, 0x64, 0x29, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x37, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x22, 0x1C, 0x12, 0x08, 0x38, 0x30, 0x30, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x38, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x2A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x4B, 0x47, 0x50, 0xE4, 0x07, 0x5A, 0x02, 0x30, 0x30, 0x62, 0x01, 0x30, 0x7A, 0x01, 0x30, 0x9A, 0x01, 0x36, 0x0A, 0x15, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x0C, 0x33, 0x31, 0x5B, 0x32, 0x35, 0x5D, 0x7C, 0x5B, 0x35, 0x2D, 0x38, 0x5D, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x30, 0x0A, 0x0E, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x1A, 0x10, 0x33, 0x28, 0x3F, 0x3A, 0x31, 0x5B, 0x33, 0x36, 0x5D, 0x7C, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x29, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xCB, 0x03, 0x0A, 0x18, 0x12, 0x0C, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x39, 0x7D, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x36, 0x2C, 0x31, 0x30, 0x7D, 0x12, 0x45, 0x12, 0x30, 0x28, 0x3F, 0x3A, 0x32, 0x5B, 0x33, 0x2D, 0x36, 0x5D, 0x7C, 0x33, 0x5B, 0x32, 0x2D, 0x36, 0x5D, 0x7C, 0x34, 0x5B, 0x32, 0x2D, 0x34, 0x5D, 0x7C, 0x5B, 0x35, 0x2D, 0x37, 0x5D, 0x5B, 0x32, 0x2D, 0x35, 0x5D, 0x29, 0x5B, 0x32, 0x2D, 0x34, 0x37, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x36, 0x2C, 0x38, 0x7D, 0x32, 0x08, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x1A, 0x4A, 0x12, 0x37, 0x28, 0x3F, 0x3A, 0x28, 0x3F, 0x3A, 0x31, 0x5B, 0x30, 0x2D, 0x33, 0x35, 0x2D, 0x39, 0x5D, 0x7C, 0x39, 0x5B, 0x31, 0x2D, 0x34, 0x39, 0x5D, 0x29, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x7C, 0x38, 0x28, 0x3F, 0x3A, 0x30, 0x5B, 0x38, 0x39, 0x5D, 0x7C, 0x35, 0x5B, 0x32, 0x2D, 0x36, 0x38, 0x39, 0x5D, 0x29, 0x29, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x39, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x22, 0x2C, 0x12, 0x16, 0x31, 0x38, 0x30, 0x30, 0x28, 0x3F, 0x3A, 0x31, 0x5C, 0x64, 0x7C, 0x32, 0x5B, 0x30, 0x39, 0x5D, 0x29, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x31, 0x38, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x2A, 0x2C, 0x12, 0x16, 0x31, 0x39, 0x30, 0x30, 0x28, 0x3F, 0x3A, 0x31, 0x5C, 0x64, 0x7C, 0x32, 0x5B, 0x30, 0x39, 0x5D, 0x29, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x31, 0x39, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x4B, 0x48, 0x50, 0xD7, 0x06, 0x5A, 0x07, 0x30, 0x30, 0x5B, 0x31, 0x37, 0x38, 0x5D, 0x62, 0x01, 0x30, 0x7A, 0x01, 0x30, 0x9A, 0x01, 0x38, 0x0A, 0x15, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x0E, 0x31, 0x5C, 0x64, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x7C, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x2F, 0x0A, 0x17, 0x28, 0x31, 0x5B, 0x38, 0x39, 0x5D, 0x30, 0x30, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x06, 0x31, 0x5B, 0x38, 0x39, 0x5D, 0x30, 0x22, 0x00, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xD9, 0x01, 0x0A, 0x15, 0x12, 0x0C, 0x5B, 0x32, 0x2D, 0x36, 0x38, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x12, 0x2A, 0x12, 0x1A, 0x28, 0x3F, 0x3A, 0x5B, 0x32, 0x33, 0x34, 0x5D, 0x5C, 0x64, 0x7C, 0x35, 0x30, 0x7C, 0x38, 0x5B, 0x31, 0x2D, 0x35, 0x5D, 0x29, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x32, 0x05, 0x33, 0x31, 0x32, 0x33, 0x34, 0x1A, 0x19, 0x12, 0x09, 0x5B, 0x36, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x32, 0x05, 0x36, 0x31, 0x32, 0x33, 0x34, 0x22, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x2A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x4B, 0x49, 0x50, 0xAE, 0x05, 0x5A, 0x02, 0x30, 0x30, 0x62, 0x01, 0x30, 0x7A, 0x01, 0x30, 0x9A, 0x01, 0x14, 0x0A, 0x07, 0x28, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x29, 0x12, 0x02, 0x24, 0x31, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xE6, 0x01, 0x0A, 0x12, 0x12, 0x09, 0x5B, 0x33, 0x37, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x12, 0x2F, 0x12, 0x1D, 0x37, 0x28, 0x3F, 0x3A, 0x36, 0x5B, 0x30, 0x2D, 0x33, 0x37, 0x2D, 0x39, 0x5D, 0x7C, 0x37, 0x5B, 0x30, 0x2D, 0x35, 0x37, 0x2D, 0x39, 0x5D, 0x29, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x32, 0x07, 0x37, 0x37, 0x31, 0x32, 0x33, 0x34, 0x35, 0x1A, 0x1C, 0x12, 0x0A, 0x33, 0x5B, 0x32, 0x33, 0x5D, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x32, 0x07, 0x33, 0x32, 0x31, 0x32, 0x33, 0x34, 0x35, 0x22, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x2A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x4B, 0x4D, 0x50, 0x8D, 0x02, 0x5A, 0x02, 0x30, 0x30, 0x9A, 0x01, 0x22, 0x0A, 0x12, 0x28, 0x5C, 0x64, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x22, 0x00, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0x80, 0x03, 0x0A, 0x1D, 0x12, 0x0A, 0x5B, 0x35, 0x38, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x1A, 0x0F, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x28, 0x3F, 0x3A, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x3F, 0x12, 0x44, 0x12, 0x25, 0x38, 0x36, 0x39, 0x28, 0x3F, 0x3A, 0x32, 0x28, 0x3F, 0x3A, 0x32, 0x39, 0x7C, 0x33, 0x36, 0x29, 0x7C, 0x34, 0x28, 0x3F, 0x3A, 0x36, 0x5B, 0x35, 0x2D, 0x39, 0x5D, 0x7C, 0x37, 0x30, 0x29, 0x29, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x0F, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x28, 0x3F, 0x3A, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x3F, 0x32, 0x0A, 0x38, 0x36, 0x39, 0x32, 0x33, 0x36, 0x31, 0x32, 0x33, 0x34, 0x1A, 0x44, 0x12, 0x2E, 0x38, 0x36, 0x39, 0x28, 0x3F, 0x3A, 0x35, 0x28, 0x3F, 0x3A, 0x35, 0x5B, 0x36, 0x2D, 0x38, 0x5D, 0x7C, 0x36, 0x5B, 0x35, 0x2D, 0x37, 0x5D, 0x29, 0x7C, 0x36, 0x36, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x7C, 0x37, 0x36, 0x5B, 0x32, 0x2D, 0x35, 0x5D, 0x29, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x38, 0x36, 0x39, 0x35, 0x35, 0x36, 0x31, 0x32, 0x33, 0x34, 0x22, 0x33, 0x12, 0x1D, 0x38, 0x28, 0x3F, 0x3A, 0x30, 0x30, 0x7C, 0x35, 0x35, 0x7C, 0x36, 0x36, 0x7C, 0x37, 0x37, 0x7C, 0x38, 0x38, 0x29, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x38, 0x30, 0x30, 0x32, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x2A, 0x23, 0x12, 0x0D, 0x39, 0x30, 0x30, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x39, 0x30, 0x30, 0x32, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x2D, 0x12, 0x17, 0x35, 0x28, 0x3F, 0x3A, 0x30, 0x30, 0x7C, 0x33, 0x33, 0x7C, 0x34, 0x34, 0x29, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x35, 0x30, 0x30, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x4B, 0x4E, 0x50, 0x01, 0x5A, 0x03, 0x30, 0x31, 0x31, 0x62, 0x01, 0x31, 0x7A, 0x01, 0x31, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xBA, 0x01, 0x03, 0x38, 0x36, 0x39, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0x6D, 0x0A, 0x00, 0x12, 0x00, 0x1A, 0x00, 0x22, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x2A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x4B, 0x50, 0x50, 0xD2, 0x06, 0x5A, 0x02, 0x30, 0x30, 0x62, 0x01, 0x30, 0x7A, 0x01, 0x30, 0x90, 0x01, 0x01, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xCA, 0x0B, 0x0A, 0x20, 0x12, 0x14, 0x5B, 0x31, 0x2D, 0x37, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x33, 0x2C, 0x39, 0x7D, 0x7C, 0x38, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x34, 0x2C, 0x31, 0x30, 0x7D, 0x12, 0x4C, 0x12, 0x36, 0x28, 0x3F, 0x3A, 0x32, 0x7C, 0x5B, 0x33, 0x34, 0x5D, 0x5B, 0x31, 0x2D, 0x33, 0x5D, 0x7C, 0x35, 0x5B, 0x31, 0x2D, 0x35, 0x5D, 0x7C, 0x36, 0x5B, 0x31, 0x2D, 0x34, 0x5D, 0x29, 0x28, 0x3F, 0x3A, 0x31, 0x5C, 0x64, 0x7B, 0x32, 0x2C, 0x33, 0x7D, 0x7C, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x2C, 0x37, 0x7D, 0x29, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x34, 0x2C, 0x31, 0x30, 0x7D, 0x32, 0x08, 0x32, 0x32, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x1A, 0x28, 0x12, 0x10, 0x31, 0x5B, 0x30, 0x2D, 0x32, 0x35, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x38, 0x7D, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x39, 0x2C, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x31, 0x30, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x22, 0x1B, 0x12, 0x07, 0x38, 0x30, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x38, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x2A, 0x20, 0x12, 0x0C, 0x36, 0x30, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x36, 0x30, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x1D, 0x12, 0x07, 0x35, 0x30, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x35, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x42, 0x1D, 0x12, 0x07, 0x37, 0x30, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x37, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x4A, 0x02, 0x4B, 0x52, 0x50, 0x52, 0x5A, 0x18, 0x30, 0x30, 0x28, 0x3F, 0x3A, 0x5B, 0x31, 0x32, 0x34, 0x2D, 0x36, 0x38, 0x5D, 0x7C, 0x5B, 0x33, 0x37, 0x5D, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x62, 0x01, 0x30, 0x7A, 0x15, 0x30, 0x28, 0x38, 0x5B, 0x31, 0x2D, 0x34, 0x36, 0x2D, 0x38, 0x5D, 0x7C, 0x38, 0x35, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x3F, 0x9A, 0x01, 0x77, 0x0A, 0x15, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x2D, 0x24, 0x32, 0x2D, 0x24, 0x33, 0x1A, 0x1F, 0x31, 0x28, 0x3F, 0x3A, 0x30, 0x7C, 0x31, 0x5B, 0x31, 0x39, 0x5D, 0x7C, 0x5B, 0x36, 0x39, 0x5D, 0x39, 0x7C, 0x35, 0x5B, 0x34, 0x35, 0x38, 0x5D, 0x29, 0x7C, 0x5B, 0x35, 0x37, 0x5D, 0x30, 0x1A, 0x25, 0x31, 0x28, 0x3F, 0x3A, 0x30, 0x7C, 0x31, 0x5B, 0x31, 0x39, 0x5D, 0x7C, 0x5B, 0x36, 0x39, 0x5D, 0x39, 0x7C, 0x35, 0x28, 0x3F, 0x3A, 0x34, 0x34, 0x7C, 0x35, 0x39, 0x7C, 0x38, 0x29, 0x29, 0x7C, 0x5B, 0x35, 0x37, 0x5D, 0x30, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x07, 0x30, 0x24, 0x43, 0x43, 0x2D, 0x24, 0x31, 0x9A, 0x01, 0x9F, 0x01, 0x0A, 0x15, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x2D, 0x24, 0x32, 0x2D, 0x24, 0x33, 0x1A, 0x31, 0x31, 0x28, 0x3F, 0x3A, 0x5B, 0x31, 0x36, 0x39, 0x5D, 0x5B, 0x32, 0x2D, 0x38, 0x5D, 0x7C, 0x5B, 0x37, 0x38, 0x5D, 0x7C, 0x35, 0x5B, 0x31, 0x2D, 0x34, 0x5D, 0x29, 0x7C, 0x5B, 0x36, 0x38, 0x5D, 0x30, 0x7C, 0x5B, 0x33, 0x2D, 0x39, 0x5D, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x1A, 0x3B, 0x31, 0x28, 0x3F, 0x3A, 0x5B, 0x31, 0x36, 0x39, 0x5D, 0x5B, 0x32, 0x2D, 0x38, 0x5D, 0x7C, 0x5B, 0x37, 0x38, 0x5D, 0x7C, 0x35, 0x28, 0x3F, 0x3A, 0x5B, 0x31, 0x2D, 0x33, 0x5D, 0x7C, 0x34, 0x5B, 0x35, 0x36, 0x5D, 0x29, 0x29, 0x7C, 0x5B, 0x36, 0x38, 0x5D, 0x30, 0x7C, 0x5B, 0x33, 0x2D, 0x39, 0x5D, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x07, 0x30, 0x24, 0x43, 0x43, 0x2D, 0x24, 0x31, 0x9A, 0x01, 0x37, 0x0A, 0x12, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x2D, 0x24, 0x32, 0x2D, 0x24, 0x33, 0x1A, 0x03, 0x31, 0x33, 0x31, 0x1A, 0x04, 0x31, 0x33, 0x31, 0x32, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x07, 0x30, 0x24, 0x43, 0x43, 0x2D, 0x24, 0x31, 0x9A, 0x01, 0x3F, 0x0A, 0x15, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x2D, 0x24, 0x32, 0x2D, 0x24, 0x33, 0x1A, 0x03, 0x31, 0x33, 0x31, 0x1A, 0x09, 0x31, 0x33, 0x31, 0x5B, 0x31, 0x33, 0x2D, 0x39, 0x5D, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x07, 0x30, 0x24, 0x43, 0x43, 0x2D, 0x24, 0x31, 0x9A, 0x01, 0x38, 0x0A, 0x15, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x2D, 0x24, 0x32, 0x2D, 0x24, 0x33, 0x1A, 0x07, 0x31, 0x33, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x07, 0x30, 0x24, 0x43, 0x43, 0x2D, 0x24, 0x31, 0x9A, 0x01, 0x3D, 0x0A, 0x1C, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x0B, 0x24, 0x31, 0x2D, 0x24, 0x32, 0x2D, 0x24, 0x33, 0x2D, 0x24, 0x34, 0x1A, 0x02, 0x33, 0x30, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x07, 0x30, 0x24, 0x43, 0x43, 0x2D, 0x24, 0x31, 0x9A, 0x01, 0x73, 0x0A, 0x12, 0x28, 0x5C, 0x64, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x2D, 0x24, 0x32, 0x2D, 0x24, 0x33, 0x1A, 0x12, 0x32, 0x28, 0x3F, 0x3A, 0x5B, 0x32, 0x36, 0x5D, 0x7C, 0x33, 0x5B, 0x30, 0x2D, 0x34, 0x36, 0x37, 0x5D, 0x29, 0x1A, 0x31, 0x32, 0x28, 0x3F, 0x3A, 0x5B, 0x32, 0x36, 0x5D, 0x7C, 0x33, 0x28, 0x3F, 0x3A, 0x30, 0x31, 0x7C, 0x31, 0x5B, 0x34, 0x35, 0x5D, 0x7C, 0x32, 0x5B, 0x31, 0x37, 0x2D, 0x39, 0x5D, 0x7C, 0x33, 0x39, 0x7C, 0x34, 0x7C, 0x36, 0x5B, 0x36, 0x37, 0x5D, 0x7C, 0x37, 0x5B, 0x30, 0x37, 0x38, 0x5D, 0x29, 0x29, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x07, 0x30, 0x24, 0x43, 0x43, 0x2D, 0x24, 0x31, 0x9A, 0x01, 0x8F, 0x01, 0x0A, 0x12, 0x28, 0x5C, 0x64, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x2D, 0x24, 0x32, 0x2D, 0x24, 0x33, 0x1A, 0x16, 0x32, 0x28, 0x3F, 0x3A, 0x33, 0x5B, 0x30, 0x2D, 0x33, 0x35, 0x2D, 0x39, 0x5D, 0x7C, 0x5B, 0x34, 0x35, 0x37, 0x2D, 0x39, 0x5D, 0x29, 0x1A, 0x49, 0x32, 0x28, 0x3F, 0x3A, 0x33, 0x28, 0x3F, 0x3A, 0x30, 0x5B, 0x30, 0x32, 0x2D, 0x39, 0x5D, 0x7C, 0x31, 0x5B, 0x30, 0x2D, 0x33, 0x36, 0x2D, 0x39, 0x5D, 0x7C, 0x32, 0x5B, 0x30, 0x32, 0x2D, 0x36, 0x5D, 0x7C, 0x33, 0x5B, 0x30, 0x2D, 0x38, 0x5D, 0x7C, 0x36, 0x5B, 0x30, 0x2D, 0x35, 0x38, 0x39, 0x5D, 0x7C, 0x37, 0x5B, 0x31, 0x2D, 0x36, 0x39, 0x5D, 0x7C, 0x5B, 0x35, 0x38, 0x39, 0x5D, 0x29, 0x7C, 0x5B, 0x34, 0x35, 0x37, 0x2D, 0x39, 0x5D, 0x29, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x07, 0x30, 0x24, 0x43, 0x43, 0x2D, 0x24, 0x31, 0x9A, 0x01, 0x30, 0x0A, 0x0D, 0x28, 0x5C, 0x64, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x2C, 0x34, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x2D, 0x24, 0x32, 0x1A, 0x0A, 0x32, 0x31, 0x5B, 0x30, 0x2D, 0x34, 0x36, 0x2D, 0x39, 0x5D, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x07, 0x30, 0x24, 0x43, 0x43, 0x2D, 0x24, 0x31, 0x9A, 0x01, 0x4D, 0x0A, 0x10, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x2C, 0x34, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x2D, 0x24, 0x32, 0x1A, 0x0B, 0x5B, 0x33, 0x2D, 0x39, 0x5D, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x31, 0x1A, 0x17, 0x5B, 0x33, 0x2D, 0x39, 0x5D, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x31, 0x28, 0x3F, 0x3A, 0x5B, 0x30, 0x2D, 0x34, 0x36, 0x2D, 0x39, 0x5D, 0x29, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x07, 0x30, 0x24, 0x43, 0x43, 0x2D, 0x24, 0x31, 0x9A, 0x01, 0x6C, 0x0A, 0x0E, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x2D, 0x24, 0x32, 0x1A, 0x15, 0x31, 0x28, 0x3F, 0x3A, 0x35, 0x5B, 0x34, 0x36, 0x2D, 0x39, 0x5D, 0x7C, 0x36, 0x5B, 0x30, 0x34, 0x36, 0x37, 0x38, 0x5D, 0x29, 0x1A, 0x2F, 0x31, 0x28, 0x3F, 0x3A, 0x35, 0x28, 0x3F, 0x3A, 0x34, 0x34, 0x7C, 0x36, 0x36, 0x7C, 0x37, 0x37, 0x7C, 0x38, 0x38, 0x7C, 0x39, 0x39, 0x29, 0x7C, 0x36, 0x28, 0x3F, 0x3A, 0x30, 0x30, 0x7C, 0x34, 0x34, 0x7C, 0x36, 0x5B, 0x31, 0x36, 0x5D, 0x7C, 0x37, 0x30, 0x7C, 0x38, 0x38, 0x29, 0x29, 0x22, 0x02, 0x24, 0x31, 0x2A, 0x07, 0x30, 0x24, 0x43, 0x43, 0x2D, 0x24, 0x31, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x47, 0x12, 0x34, 0x31, 0x28, 0x3F, 0x3A, 0x35, 0x28, 0x3F, 0x3A, 0x34, 0x34, 0x7C, 0x36, 0x36, 0x7C, 0x37, 0x37, 0x7C, 0x38, 0x38, 0x7C, 0x39, 0x39, 0x29, 0x7C, 0x36, 0x28, 0x3F, 0x3A, 0x30, 0x30, 0x7C, 0x34, 0x34, 0x7C, 0x36, 0x5B, 0x31, 0x36, 0x5D, 0x7C, 0x37, 0x30, 0x7C, 0x38, 0x38, 0x29, 0x29, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x31, 0x35, 0x34, 0x34, 0x31, 0x32, 0x33, 0x34, 0x0A, 0x95, 0x03, 0x0A, 0x19, 0x12, 0x0E, 0x5B, 0x31, 0x32, 0x35, 0x36, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x2C, 0x37, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x38, 0x7D, 0x12, 0x60, 0x12, 0x4B, 0x28, 0x3F, 0x3A, 0x31, 0x38, 0x5C, 0x64, 0x7C, 0x32, 0x28, 0x3F, 0x3A, 0x5B, 0x32, 0x33, 0x5D, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x7C, 0x34, 0x5B, 0x31, 0x2D, 0x33, 0x35, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7C, 0x35, 0x28, 0x3F, 0x3A, 0x30, 0x5B, 0x30, 0x33, 0x34, 0x5D, 0x7C, 0x5B, 0x32, 0x2D, 0x34, 0x36, 0x5D, 0x5C, 0x64, 0x7C, 0x35, 0x5B, 0x31, 0x2D, 0x33, 0x5D, 0x7C, 0x37, 0x5B, 0x31, 0x2D, 0x37, 0x5D, 0x29, 0x29, 0x29, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x38, 0x7D, 0x32, 0x08, 0x32, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x1A, 0x6D, 0x12, 0x5A, 0x28, 0x3F, 0x3A, 0x35, 0x28, 0x3F, 0x3A, 0x30, 0x5B, 0x30, 0x2D, 0x32, 0x5D, 0x7C, 0x35, 0x5C, 0x64, 0x29, 0x7C, 0x36, 0x28, 0x3F, 0x3A, 0x30, 0x5B, 0x30, 0x33, 0x34, 0x36, 0x37, 0x39, 0x5D, 0x7C, 0x35, 0x5B, 0x30, 0x31, 0x35, 0x2D, 0x39, 0x5D, 0x7C, 0x36, 0x5C, 0x64, 0x7C, 0x37, 0x5B, 0x30, 0x36, 0x37, 0x5D, 0x7C, 0x39, 0x39, 0x29, 0x7C, 0x39, 0x28, 0x3F, 0x3A, 0x30, 0x5B, 0x30, 0x39, 0x5D, 0x7C, 0x34, 0x5B, 0x30, 0x34, 0x39, 0x5D, 0x7C, 0x36, 0x36, 0x7C, 0x5B, 0x37, 0x39, 0x5D, 0x5C, 0x64, 0x29, 0x29, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x35, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x22, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x2A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x4B, 0x57, 0x50, 0xC5, 0x07, 0x5A, 0x02, 0x30, 0x30, 0x9A, 0x01, 0x25, 0x0A, 0x10, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x2C, 0x34, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x1A, 0x06, 0x5B, 0x31, 0x32, 0x36, 0x39, 0x5D, 0x22, 0x00, 0x2A, 0x00, 0x9A, 0x01, 0x20, 0x0A, 0x10, 0x28, 0x35, 0x5B, 0x30, 0x35, 0x5D, 0x5C, 0x64, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x1A, 0x01, 0x35, 0x22, 0x00, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xE4, 0x03, 0x0A, 0x1E, 0x12, 0x0B, 0x5B, 0x33, 0x35, 0x38, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x1A, 0x0F, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x28, 0x3F, 0x3A, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x3F, 0x12, 0x81, 0x01, 0x12, 0x62, 0x33, 0x34, 0x35, 0x28, 0x3F, 0x3A, 0x32, 0x28, 0x3F, 0x3A, 0x32, 0x32, 0x7C, 0x34, 0x34, 0x29, 0x7C, 0x34, 0x34, 0x34, 0x7C, 0x36, 0x28, 0x3F, 0x3A, 0x32, 0x33, 0x7C, 0x33, 0x38, 0x7C, 0x34, 0x30, 0x29, 0x7C, 0x37, 0x28, 0x3F, 0x3A, 0x36, 0x5B, 0x36, 0x2D, 0x39, 0x5D, 0x7C, 0x37, 0x37, 0x29, 0x7C, 0x38, 0x28, 0x3F, 0x3A, 0x30, 0x30, 0x7C, 0x31, 0x5B, 0x34, 0x35, 0x5D, 0x7C, 0x32, 0x35, 0x7C, 0x34, 0x5B, 0x38, 0x39, 0x5D, 0x7C, 0x38, 0x38, 0x29, 0x7C, 0x39, 0x28, 0x3F, 0x3A, 0x31, 0x34, 0x7C, 0x34, 0x5B, 0x30, 0x33, 0x35, 0x2D, 0x39, 0x5D, 0x29, 0x29, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x0F, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x28, 0x3F, 0x3A, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x3F, 0x32, 0x0A, 0x33, 0x34, 0x35, 0x32, 0x32, 0x32, 0x31, 0x32, 0x33, 0x34, 0x1A, 0x5D, 0x12, 0x47, 0x33, 0x34, 0x35, 0x28, 0x3F, 0x3A, 0x33, 0x32, 0x5B, 0x33, 0x2D, 0x37, 0x39, 0x5D, 0x7C, 0x35, 0x28, 0x3F, 0x3A, 0x31, 0x5B, 0x34, 0x36, 0x37, 0x5D, 0x7C, 0x32, 0x5B, 0x35, 0x2D, 0x37, 0x5D, 0x7C, 0x34, 0x5B, 0x35, 0x2D, 0x39, 0x5D, 0x29, 0x7C, 0x39, 0x28, 0x3F, 0x3A, 0x31, 0x5B, 0x36, 0x37, 0x39, 0x5D, 0x7C, 0x32, 0x5B, 0x34, 0x2D, 0x39, 0x5D, 0x7C, 0x33, 0x5B, 0x38, 0x39, 0x5D, 0x29, 0x29, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x33, 0x34, 0x35, 0x33, 0x32, 0x33, 0x31, 0x32, 0x33, 0x34, 0x22, 0x33, 0x12, 0x1D, 0x38, 0x28, 0x3F, 0x3A, 0x30, 0x30, 0x7C, 0x35, 0x35, 0x7C, 0x36, 0x36, 0x7C, 0x37, 0x37, 0x7C, 0x38, 0x38, 0x29, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x38, 0x30, 0x30, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x2A, 0x2F, 0x12, 0x19, 0x39, 0x30, 0x30, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x7C, 0x33, 0x34, 0x35, 0x39, 0x37, 0x36, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x39, 0x30, 0x30, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x2D, 0x12, 0x17, 0x35, 0x28, 0x3F, 0x3A, 0x30, 0x30, 0x7C, 0x33, 0x33, 0x7C, 0x34, 0x34, 0x29, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x35, 0x30, 0x30, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x4B, 0x59, 0x50, 0x01, 0x5A, 0x03, 0x30, 0x31, 0x31, 0x62, 0x01, 0x31, 0x7A, 0x01, 0x31, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xBA, 0x01, 0x03, 0x33, 0x34, 0x35, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0x90, 0x06, 0x0A, 0x20, 0x12, 0x16, 0x28, 0x3F, 0x3A, 0x37, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x7C, 0x38, 0x30, 0x5B, 0x30, 0x39, 0x5D, 0x29, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x12, 0xE6, 0x03, 0x12, 0xCF, 0x03, 0x37, 0x28, 0x3F, 0x3A, 0x31, 0x28, 0x3F, 0x3A, 0x30, 0x28, 0x3F, 0x3A, 0x5B, 0x32, 0x33, 0x5D, 0x5C, 0x64, 0x7C, 0x34, 0x5B, 0x30, 0x32, 0x33, 0x5D, 0x7C, 0x35, 0x39, 0x7C, 0x36, 0x33, 0x29, 0x7C, 0x31, 0x28, 0x3F, 0x3A, 0x5B, 0x32, 0x33, 0x5D, 0x5C, 0x64, 0x7C, 0x34, 0x5B, 0x30, 0x2D, 0x37, 0x39, 0x5D, 0x7C, 0x35, 0x39, 0x29, 0x7C, 0x32, 0x28, 0x3F, 0x3A, 0x5B, 0x32, 0x33, 0x5D, 0x5C, 0x64, 0x7C, 0x35, 0x39, 0x29, 0x7C, 0x33, 0x28, 0x3F, 0x3A, 0x32, 0x5C, 0x64, 0x7C, 0x33, 0x5B, 0x31, 0x2D, 0x37, 0x39, 0x5D, 0x7C, 0x34, 0x5B, 0x30, 0x2D, 0x33, 0x35, 0x2D, 0x39, 0x5D, 0x7C, 0x35, 0x39, 0x29, 0x7C, 0x34, 0x28, 0x3F, 0x3A, 0x32, 0x5C, 0x64, 0x7C, 0x33, 0x5B, 0x30, 0x31, 0x33, 0x2D, 0x37, 0x39, 0x5D, 0x7C, 0x34, 0x5B, 0x30, 0x2D, 0x38, 0x5D, 0x7C, 0x35, 0x5B, 0x31, 0x2D, 0x37, 0x39, 0x5D, 0x29, 0x7C, 0x35, 0x28, 0x3F, 0x3A, 0x32, 0x5C, 0x64, 0x7C, 0x33, 0x5B, 0x31, 0x2D, 0x38, 0x5D, 0x7C, 0x34, 0x5B, 0x31, 0x2D, 0x37, 0x5D, 0x7C, 0x35, 0x39, 0x29, 0x7C, 0x36, 0x28, 0x3F, 0x3A, 0x32, 0x5C, 0x64, 0x7C, 0x5B, 0x33, 0x34, 0x5D, 0x5C, 0x64, 0x7C, 0x35, 0x5B, 0x31, 0x39, 0x5D, 0x7C, 0x36, 0x31, 0x29, 0x7C, 0x37, 0x32, 0x5C, 0x64, 0x7C, 0x38, 0x28, 0x3F, 0x3A, 0x5B, 0x32, 0x37, 0x5D, 0x5C, 0x64, 0x7C, 0x33, 0x5B, 0x31, 0x2D, 0x34, 0x36, 0x2D, 0x39, 0x5D, 0x7C, 0x34, 0x5B, 0x30, 0x2D, 0x35, 0x5D, 0x7C, 0x29, 0x29, 0x7C, 0x32, 0x28, 0x3F, 0x3A, 0x31, 0x28, 0x3F, 0x3A, 0x5B, 0x32, 0x33, 0x5D, 0x5C, 0x64, 0x7C, 0x34, 0x5B, 0x34, 0x36, 0x2D, 0x39, 0x5D, 0x7C, 0x35, 0x5B, 0x33, 0x34, 0x36, 0x39, 0x5D, 0x29, 0x7C, 0x32, 0x28, 0x3F, 0x3A, 0x32, 0x5C, 0x64, 0x7C, 0x33, 0x5B, 0x30, 0x36, 0x37, 0x39, 0x5D, 0x7C, 0x34, 0x36, 0x7C, 0x35, 0x5B, 0x31, 0x32, 0x36, 0x37, 0x39, 0x5D, 0x7C, 0x29, 0x7C, 0x33, 0x28, 0x3F, 0x3A, 0x5B, 0x32, 0x33, 0x34, 0x5D, 0x5C, 0x64, 0x7C, 0x35, 0x5B, 0x31, 0x33, 0x39, 0x5D, 0x7C, 0x29, 0x7C, 0x34, 0x28, 0x3F, 0x3A, 0x32, 0x5C, 0x64, 0x7C, 0x33, 0x5B, 0x31, 0x32, 0x33, 0x35, 0x2D, 0x39, 0x5D, 0x7C, 0x35, 0x39, 0x29, 0x7C, 0x35, 0x28, 0x3F, 0x3A, 0x5B, 0x32, 0x33, 0x5D, 0x5C, 0x64, 0x7C, 0x34, 0x5B, 0x30, 0x31, 0x32, 0x34, 0x36, 0x2D, 0x38, 0x5D, 0x7C, 0x35, 0x39, 0x7C, 0x36, 0x31, 0x29, 0x7C, 0x36, 0x28, 0x3F, 0x3A, 0x32, 0x5C, 0x64, 0x7C, 0x33, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x7C, 0x34, 0x5B, 0x30, 0x2D, 0x34, 0x5D, 0x7C, 0x35, 0x39, 0x29, 0x7C, 0x37, 0x28, 0x3F, 0x3A, 0x5B, 0x32, 0x33, 0x5D, 0x5C, 0x64, 0x7C, 0x34, 0x30, 0x7C, 0x35, 0x5B, 0x32, 0x37, 0x39, 0x5D, 0x7C, 0x37, 0x5C, 0x64, 0x29, 0x7C, 0x38, 0x28, 0x3F, 0x3A, 0x5B, 0x32, 0x33, 0x5D, 0x5C, 0x64, 0x7C, 0x34, 0x5B, 0x30, 0x2D, 0x33, 0x5D, 0x7C, 0x35, 0x39, 0x29, 0x7C, 0x39, 0x28, 0x3F, 0x3A, 0x32, 0x5C, 0x64, 0x7C, 0x33, 0x5B, 0x31, 0x32, 0x34, 0x35, 0x37, 0x38, 0x5D, 0x7C, 0x35, 0x39, 0x29, 0x29, 0x7C, 0x33, 0x36, 0x32, 0x32, 0x29, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x37, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x1A, 0x46, 0x12, 0x30, 0x37, 0x28, 0x3F, 0x3A, 0x30, 0x5B, 0x30, 0x31, 0x32, 0x35, 0x37, 0x5D, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x7C, 0x36, 0x5B, 0x30, 0x32, 0x2D, 0x34, 0x5D, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x7C, 0x37, 0x5B, 0x31, 0x35, 0x37, 0x5D, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x37, 0x37, 0x31, 0x30, 0x30, 0x30, 0x39, 0x39, 0x39, 0x38, 0x22, 0x1E, 0x12, 0x08, 0x38, 0x30, 0x30, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x38, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x2A, 0x1E, 0x12, 0x08, 0x38, 0x30, 0x39, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x38, 0x30, 0x39, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x1E, 0x12, 0x08, 0x37, 0x35, 0x31, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x37, 0x35, 0x31, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x4A, 0x02, 0x4B, 0x5A, 0x50, 0x07, 0x5A, 0x04, 0x38, 0x7E, 0x31, 0x30, 0x62, 0x01, 0x38, 0x7A, 0x01, 0x38, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x1E, 0x12, 0x08, 0x37, 0x35, 0x31, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x37, 0x35, 0x31, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xD0, 0x02, 0x0A, 0x19, 0x12, 0x0D, 0x5B, 0x32, 0x2D, 0x35, 0x37, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x39, 0x7D, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x36, 0x2C, 0x31, 0x30, 0x7D, 0x12, 0x28, 0x12, 0x13, 0x28, 0x3F, 0x3A, 0x5B, 0x32, 0x2D, 0x35, 0x37, 0x5D, 0x31, 0x7C, 0x35, 0x34, 0x29, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x36, 0x2C, 0x38, 0x7D, 0x32, 0x08, 0x32, 0x31, 0x32, 0x31, 0x32, 0x38, 0x36, 0x32, 0x1A, 0x36, 0x12, 0x20, 0x32, 0x30, 0x28, 0x3F, 0x3A, 0x32, 0x5B, 0x32, 0x33, 0x5D, 0x7C, 0x35, 0x5B, 0x34, 0x2D, 0x36, 0x5D, 0x7C, 0x37, 0x37, 0x7C, 0x39, 0x5B, 0x38, 0x39, 0x5D, 0x29, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x32, 0x30, 0x32, 0x33, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x22, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x2A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x4C, 0x41, 0x50, 0xD8, 0x06, 0x5A, 0x02, 0x30, 0x30, 0x62, 0x01, 0x30, 0x7A, 0x01, 0x30, 0x9A, 0x01, 0x33, 0x0A, 0x19, 0x28, 0x32, 0x30, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x12, 0x0B, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x20, 0x24, 0x34, 0x1A, 0x02, 0x32, 0x30, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x36, 0x0A, 0x18, 0x28, 0x5B, 0x32, 0x2D, 0x35, 0x37, 0x5D, 0x5C, 0x64, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x09, 0x32, 0x31, 0x7C, 0x5B, 0x33, 0x2D, 0x35, 0x37, 0x5D, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xB6, 0x03, 0x0A, 0x18, 0x12, 0x0D, 0x5B, 0x31, 0x33, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x2C, 0x37, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x38, 0x7D, 0x12, 0x45, 0x12, 0x33, 0x28, 0x3F, 0x3A, 0x5B, 0x31, 0x34, 0x2D, 0x36, 0x5D, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x7C, 0x37, 0x28, 0x3F, 0x3A, 0x5B, 0x32, 0x2D, 0x35, 0x37, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7C, 0x36, 0x32, 0x29, 0x7C, 0x5B, 0x38, 0x39, 0x5D, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x29, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x32, 0x07, 0x31, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x1A, 0x33, 0x12, 0x1E, 0x28, 0x3F, 0x3A, 0x33, 0x5C, 0x64, 0x7C, 0x37, 0x28, 0x3F, 0x3A, 0x5B, 0x30, 0x31, 0x5D, 0x5C, 0x64, 0x7C, 0x36, 0x5B, 0x36, 0x37, 0x5D, 0x29, 0x29, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x38, 0x7D, 0x32, 0x08, 0x37, 0x31, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x22, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x2A, 0x1D, 0x12, 0x0A, 0x39, 0x5B, 0x30, 0x31, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x39, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x32, 0x1D, 0x12, 0x0A, 0x38, 0x5B, 0x30, 0x31, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x38, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x4C, 0x42, 0x50, 0xC1, 0x07, 0x5A, 0x02, 0x30, 0x30, 0x62, 0x01, 0x30, 0x7A, 0x01, 0x30, 0x9A, 0x01, 0x48, 0x0A, 0x12, 0x28, 0x5C, 0x64, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x21, 0x5B, 0x31, 0x33, 0x2D, 0x36, 0x5D, 0x7C, 0x37, 0x28, 0x3F, 0x3A, 0x5B, 0x32, 0x2D, 0x35, 0x37, 0x2D, 0x39, 0x5D, 0x7C, 0x36, 0x32, 0x29, 0x7C, 0x5B, 0x38, 0x39, 0x5D, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x44, 0x0A, 0x17, 0x28, 0x5B, 0x37, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x18, 0x5B, 0x38, 0x39, 0x5D, 0x5B, 0x30, 0x31, 0x5D, 0x7C, 0x37, 0x28, 0x3F, 0x3A, 0x5B, 0x30, 0x31, 0x5D, 0x7C, 0x36, 0x5B, 0x36, 0x37, 0x5D, 0x29, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xAC, 0x03, 0x0A, 0x1E, 0x12, 0x0B, 0x5B, 0x35, 0x37, 0x38, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x1A, 0x0F, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x28, 0x3F, 0x3A, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x3F, 0x12, 0x50, 0x12, 0x31, 0x37, 0x35, 0x38, 0x28, 0x3F, 0x3A, 0x32, 0x33, 0x34, 0x7C, 0x34, 0x28, 0x3F, 0x3A, 0x35, 0x5B, 0x30, 0x2D, 0x39, 0x5D, 0x7C, 0x36, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x7C, 0x38, 0x5B, 0x30, 0x2D, 0x32, 0x5D, 0x29, 0x7C, 0x36, 0x33, 0x38, 0x7C, 0x37, 0x35, 0x38, 0x29, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x0F, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x28, 0x3F, 0x3A, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x3F, 0x32, 0x0A, 0x37, 0x35, 0x38, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x1A, 0x63, 0x12, 0x4D, 0x37, 0x35, 0x38, 0x28, 0x3F, 0x3A, 0x32, 0x38, 0x5B, 0x34, 0x2D, 0x37, 0x5D, 0x7C, 0x33, 0x38, 0x34, 0x7C, 0x34, 0x28, 0x3F, 0x3A, 0x36, 0x5B, 0x30, 0x31, 0x5D, 0x7C, 0x38, 0x5B, 0x34, 0x2D, 0x39, 0x5D, 0x29, 0x7C, 0x35, 0x28, 0x3F, 0x3A, 0x31, 0x5B, 0x38, 0x39, 0x5D, 0x7C, 0x32, 0x30, 0x7C, 0x38, 0x34, 0x29, 0x7C, 0x37, 0x28, 0x3F, 0x3A, 0x31, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x7C, 0x32, 0x5B, 0x30, 0x2D, 0x34, 0x5D, 0x29, 0x29, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x37, 0x35, 0x38, 0x32, 0x38, 0x34, 0x35, 0x36, 0x37, 0x38, 0x22, 0x33, 0x12, 0x1D, 0x38, 0x28, 0x3F, 0x3A, 0x30, 0x30, 0x7C, 0x35, 0x35, 0x7C, 0x36, 0x36, 0x7C, 0x37, 0x37, 0x7C, 0x38, 0x38, 0x29, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x38, 0x30, 0x30, 0x32, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x2A, 0x23, 0x12, 0x0D, 0x39, 0x30, 0x30, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x39, 0x30, 0x30, 0x32, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x2D, 0x12, 0x17, 0x35, 0x28, 0x3F, 0x3A, 0x30, 0x30, 0x7C, 0x33, 0x33, 0x7C, 0x34, 0x34, 0x29, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x35, 0x30, 0x30, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x4C, 0x43, 0x50, 0x01, 0x5A, 0x03, 0x30, 0x31, 0x31, 0x62, 0x01, 0x31, 0x7A, 0x01, 0x31, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xBA, 0x01, 0x03, 0x37, 0x35, 0x38, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xAE, 0x05, 0x0A, 0x29, 0x12, 0x1E, 0x28, 0x3F, 0x3A, 0x36, 0x36, 0x7C, 0x38, 0x30, 0x7C, 0x39, 0x30, 0x29, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x7C, 0x5B, 0x32, 0x33, 0x37, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x39, 0x7D, 0x12, 0x56, 0x12, 0x44, 0x28, 0x3F, 0x3A, 0x32, 0x28, 0x3F, 0x3A, 0x31, 0x37, 0x7C, 0x33, 0x5C, 0x64, 0x7C, 0x36, 0x5B, 0x30, 0x32, 0x2D, 0x35, 0x38, 0x5D, 0x7C, 0x39, 0x36, 0x29, 0x7C, 0x33, 0x28, 0x3F, 0x3A, 0x30, 0x32, 0x7C, 0x37, 0x5B, 0x30, 0x31, 0x33, 0x35, 0x37, 0x5D, 0x7C, 0x38, 0x5B, 0x30, 0x34, 0x38, 0x5D, 0x7C, 0x39, 0x5B, 0x30, 0x32, 0x36, 0x39, 0x5D, 0x29, 0x7C, 0x38, 0x37, 0x30, 0x29, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x32, 0x07, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x1A, 0x6D, 0x12, 0x57, 0x36, 0x36, 0x28, 0x3F, 0x3A, 0x5B, 0x30, 0x31, 0x37, 0x38, 0x5D, 0x5B, 0x30, 0x2D, 0x34, 0x5D, 0x7C, 0x32, 0x5B, 0x30, 0x32, 0x35, 0x2D, 0x39, 0x5D, 0x7C, 0x5B, 0x33, 0x36, 0x5D, 0x5C, 0x64, 0x7C, 0x34, 0x5B, 0x31, 0x32, 0x39, 0x5D, 0x7C, 0x35, 0x5B, 0x34, 0x35, 0x5D, 0x7C, 0x39, 0x5B, 0x30, 0x31, 0x39, 0x5D, 0x29, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x7C, 0x37, 0x28, 0x3F, 0x3A, 0x34, 0x5B, 0x32, 0x2D, 0x35, 0x39, 0x5D, 0x7C, 0x35, 0x36, 0x7C, 0x5B, 0x36, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x29, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x39, 0x7D, 0x32, 0x09, 0x36, 0x36, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x22, 0x3D, 0x12, 0x29, 0x38, 0x30, 0x28, 0x3F, 0x3A, 0x30, 0x28, 0x3F, 0x3A, 0x30, 0x37, 0x7C, 0x32, 0x5B, 0x32, 0x33, 0x38, 0x5D, 0x7C, 0x37, 0x39, 0x7C, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x7C, 0x39, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x39, 0x7D, 0x32, 0x07, 0x38, 0x30, 0x30, 0x32, 0x32, 0x32, 0x32, 0x2A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x32, 0x4F, 0x12, 0x3B, 0x39, 0x30, 0x28, 0x3F, 0x3A, 0x30, 0x28, 0x3F, 0x3A, 0x32, 0x5B, 0x32, 0x37, 0x38, 0x5D, 0x7C, 0x37, 0x39, 0x7C, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x7C, 0x31, 0x28, 0x3F, 0x3A, 0x32, 0x33, 0x7C, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x7C, 0x36, 0x28, 0x3F, 0x3A, 0x36, 0x36, 0x7C, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x29, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x39, 0x7D, 0x32, 0x07, 0x39, 0x30, 0x30, 0x32, 0x32, 0x32, 0x32, 0x3A, 0x1A, 0x12, 0x08, 0x37, 0x30, 0x31, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x32, 0x07, 0x37, 0x30, 0x31, 0x31, 0x32, 0x33, 0x34, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x4C, 0x49, 0x50, 0xA7, 0x03, 0x5A, 0x02, 0x30, 0x30, 0x9A, 0x01, 0x35, 0x0A, 0x15, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x0E, 0x5B, 0x32, 0x33, 0x5D, 0x7C, 0x37, 0x5B, 0x34, 0x2D, 0x39, 0x5D, 0x7C, 0x38, 0x37, 0x22, 0x00, 0x2A, 0x00, 0x9A, 0x01, 0x26, 0x0A, 0x13, 0x28, 0x36, 0x5C, 0x64, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x01, 0x36, 0x22, 0x00, 0x2A, 0x00, 0x9A, 0x01, 0x30, 0x0A, 0x18, 0x28, 0x5B, 0x37, 0x2D, 0x39, 0x5D, 0x30, 0x5C, 0x64, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x06, 0x5B, 0x37, 0x2D, 0x39, 0x5D, 0x30, 0x22, 0x00, 0x2A, 0x00, 0x9A, 0x01, 0x39, 0x0A, 0x1E, 0x28, 0x5B, 0x38, 0x39, 0x5D, 0x30, 0x5C, 0x64, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x12, 0x0C, 0x30, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x20, 0x24, 0x34, 0x1A, 0x05, 0x5B, 0x38, 0x39, 0x5D, 0x30, 0x22, 0x00, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xD3, 0x02, 0x0A, 0x15, 0x12, 0x0A, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x39, 0x7D, 0x12, 0x52, 0x12, 0x3C, 0x28, 0x3F, 0x3A, 0x5B, 0x31, 0x38, 0x39, 0x5D, 0x31, 0x7C, 0x32, 0x5B, 0x31, 0x33, 0x2D, 0x37, 0x5D, 0x7C, 0x33, 0x5B, 0x31, 0x2D, 0x38, 0x5D, 0x7C, 0x34, 0x5B, 0x31, 0x35, 0x37, 0x5D, 0x7C, 0x35, 0x5B, 0x31, 0x32, 0x34, 0x35, 0x37, 0x5D, 0x7C, 0x36, 0x5B, 0x33, 0x35, 0x2D, 0x37, 0x5D, 0x29, 0x5B, 0x32, 0x2D, 0x35, 0x37, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x39, 0x7D, 0x32, 0x09, 0x31, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x1A, 0x21, 0x12, 0x0D, 0x37, 0x5B, 0x31, 0x32, 0x35, 0x37, 0x38, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x37, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x22, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x2A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x4C, 0x4B, 0x50, 0x5E, 0x5A, 0x02, 0x30, 0x30, 0x62, 0x01, 0x30, 0x7A, 0x01, 0x30, 0x9A, 0x01, 0x31, 0x0A, 0x15, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x31, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x07, 0x5B, 0x31, 0x2D, 0x36, 0x38, 0x39, 0x5D, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x2B, 0x0A, 0x15, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x01, 0x37, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xD0, 0x02, 0x0A, 0x21, 0x12, 0x16, 0x28, 0x3F, 0x3A, 0x5B, 0x32, 0x37, 0x39, 0x5D, 0x5C, 0x64, 0x7C, 0x5B, 0x34, 0x2D, 0x36, 0x5D, 0x29, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x38, 0x7D, 0x12, 0x19, 0x12, 0x06, 0x32, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x32, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x1A, 0x34, 0x12, 0x20, 0x28, 0x3F, 0x3A, 0x34, 0x5B, 0x36, 0x37, 0x5D, 0x7C, 0x35, 0x5C, 0x64, 0x7C, 0x36, 0x5B, 0x34, 0x2D, 0x38, 0x5D, 0x7C, 0x37, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x38, 0x7D, 0x32, 0x07, 0x34, 0x36, 0x31, 0x32, 0x33, 0x34, 0x35, 0x22, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x2A, 0x1A, 0x12, 0x07, 0x39, 0x30, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x39, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x4C, 0x52, 0x50, 0xE7, 0x01, 0x5A, 0x02, 0x30, 0x30, 0x62, 0x01, 0x30, 0x7A, 0x01, 0x30, 0x9A, 0x01, 0x31, 0x0A, 0x17, 0x28, 0x5B, 0x32, 0x37, 0x39, 0x5D, 0x5C, 0x64, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x05, 0x5B, 0x32, 0x37, 0x39, 0x5D, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x2F, 0x0A, 0x15, 0x28, 0x5B, 0x34, 0x2D, 0x36, 0x5D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x05, 0x5B, 0x34, 0x2D, 0x36, 0x5D, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xE3, 0x01, 0x0A, 0x14, 0x12, 0x0B, 0x5B, 0x32, 0x35, 0x36, 0x38, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x12, 0x19, 0x12, 0x06, 0x32, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x32, 0x32, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x1A, 0x1C, 0x12, 0x09, 0x5B, 0x35, 0x36, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x35, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x22, 0x20, 0x12, 0x0D, 0x38, 0x30, 0x30, 0x5B, 0x32, 0x35, 0x36, 0x5D, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x38, 0x30, 0x30, 0x32, 0x31, 0x32, 0x33, 0x34, 0x2A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x4C, 0x53, 0x50, 0x8A, 0x02, 0x5A, 0x02, 0x30, 0x30, 0x9A, 0x01, 0x1B, 0x0A, 0x0E, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x22, 0x00, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xD5, 0x03, 0x0A, 0x13, 0x12, 0x0A, 0x5B, 0x33, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x12, 0x2F, 0x12, 0x1C, 0x28, 0x3F, 0x3A, 0x33, 0x5B, 0x31, 0x34, 0x37, 0x38, 0x5D, 0x7C, 0x34, 0x5B, 0x31, 0x32, 0x34, 0x2D, 0x36, 0x5D, 0x7C, 0x35, 0x32, 0x29, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x33, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x1A, 0x19, 0x12, 0x06, 0x36, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x36, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x22, 0x1B, 0x12, 0x08, 0x38, 0x30, 0x30, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x38, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x2A, 0x20, 0x12, 0x0D, 0x39, 0x30, 0x5B, 0x30, 0x32, 0x33, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x39, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x4C, 0x54, 0x50, 0xF2, 0x02, 0x5A, 0x02, 0x30, 0x30, 0x62, 0x01, 0x38, 0x7A, 0x01, 0x38, 0x9A, 0x01, 0x4C, 0x0A, 0x1D, 0x28, 0x5B, 0x33, 0x34, 0x5D, 0x5C, 0x64, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x12, 0x0B, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x20, 0x24, 0x34, 0x1A, 0x16, 0x33, 0x37, 0x7C, 0x34, 0x28, 0x3F, 0x3A, 0x31, 0x7C, 0x35, 0x5B, 0x34, 0x35, 0x5D, 0x7C, 0x36, 0x5B, 0x32, 0x2D, 0x34, 0x5D, 0x29, 0x22, 0x04, 0x38, 0x20, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x5D, 0x0A, 0x1C, 0x28, 0x5B, 0x33, 0x2D, 0x36, 0x38, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x2B, 0x33, 0x5B, 0x31, 0x34, 0x38, 0x5D, 0x7C, 0x34, 0x28, 0x3F, 0x3A, 0x5B, 0x32, 0x34, 0x5D, 0x7C, 0x36, 0x5B, 0x30, 0x39, 0x5D, 0x29, 0x7C, 0x35, 0x28, 0x3F, 0x3A, 0x5B, 0x30, 0x31, 0x38, 0x39, 0x5D, 0x7C, 0x32, 0x38, 0x29, 0x7C, 0x5B, 0x36, 0x38, 0x39, 0x5D, 0x22, 0x04, 0x38, 0x20, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x33, 0x0A, 0x15, 0x28, 0x35, 0x29, 0x28, 0x32, 0x5B, 0x30, 0x2D, 0x37, 0x39, 0x5D, 0x5C, 0x64, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x08, 0x35, 0x32, 0x5B, 0x30, 0x2D, 0x37, 0x39, 0x5D, 0x22, 0x04, 0x38, 0x20, 0x24, 0x31, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xE5, 0x0A, 0x0A, 0x3F, 0x12, 0x33, 0x5B, 0x32, 0x34, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x33, 0x2C, 0x31, 0x30, 0x7D, 0x7C, 0x33, 0x28, 0x3F, 0x3A, 0x5B, 0x30, 0x2D, 0x34, 0x36, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x32, 0x2C, 0x39, 0x7D, 0x7C, 0x35, 0x5B, 0x30, 0x31, 0x33, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x31, 0x2C, 0x38, 0x7D, 0x29, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x34, 0x2C, 0x31, 0x31, 0x7D, 0x12, 0xFD, 0x02, 0x12, 0xE6, 0x02, 0x28, 0x3F, 0x3A, 0x32, 0x28, 0x3F, 0x3A, 0x32, 0x5C, 0x64, 0x7B, 0x31, 0x2C, 0x32, 0x7D, 0x7C, 0x33, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x7C, 0x5B, 0x36, 0x37, 0x5D, 0x5C, 0x64, 0x7C, 0x34, 0x5B, 0x31, 0x2D, 0x38, 0x5D, 0x5C, 0x64, 0x3F, 0x7C, 0x35, 0x5B, 0x31, 0x2D, 0x35, 0x5D, 0x5C, 0x64, 0x3F, 0x7C, 0x39, 0x5B, 0x30, 0x2D, 0x32, 0x34, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x3F, 0x29, 0x7C, 0x33, 0x28, 0x3F, 0x3A, 0x5B, 0x30, 0x35, 0x39, 0x5D, 0x5B, 0x30, 0x35, 0x2D, 0x39, 0x5D, 0x7C, 0x5B, 0x31, 0x33, 0x5D, 0x5C, 0x64, 0x7C, 0x5B, 0x32, 0x36, 0x5D, 0x5B, 0x30, 0x31, 0x35, 0x2D, 0x39, 0x5D, 0x7C, 0x34, 0x5B, 0x30, 0x2D, 0x32, 0x36, 0x2D, 0x39, 0x5D, 0x7C, 0x37, 0x5B, 0x30, 0x2D, 0x33, 0x38, 0x39, 0x5D, 0x7C, 0x38, 0x5B, 0x30, 0x38, 0x5D, 0x29, 0x5C, 0x64, 0x3F, 0x7C, 0x34, 0x5C, 0x64, 0x7B, 0x32, 0x2C, 0x33, 0x7D, 0x7C, 0x35, 0x28, 0x3F, 0x3A, 0x5B, 0x30, 0x31, 0x34, 0x35, 0x38, 0x5D, 0x5C, 0x64, 0x7C, 0x5B, 0x32, 0x37, 0x5D, 0x5B, 0x30, 0x2D, 0x36, 0x39, 0x5D, 0x7C, 0x33, 0x5B, 0x30, 0x2D, 0x33, 0x5D, 0x7C, 0x5B, 0x36, 0x39, 0x5D, 0x5B, 0x30, 0x2D, 0x37, 0x5D, 0x29, 0x5C, 0x64, 0x3F, 0x7C, 0x37, 0x28, 0x3F, 0x3A, 0x31, 0x5B, 0x30, 0x31, 0x39, 0x5D, 0x7C, 0x32, 0x5B, 0x30, 0x35, 0x2D, 0x39, 0x5D, 0x7C, 0x33, 0x5B, 0x30, 0x35, 0x5D, 0x7C, 0x5B, 0x34, 0x35, 0x5D, 0x5B, 0x30, 0x37, 0x2D, 0x39, 0x5D, 0x7C, 0x5B, 0x36, 0x37, 0x39, 0x5D, 0x5B, 0x30, 0x38, 0x39, 0x5D, 0x7C, 0x38, 0x5B, 0x30, 0x36, 0x2D, 0x39, 0x5D, 0x29, 0x5C, 0x64, 0x3F, 0x7C, 0x38, 0x28, 0x3F, 0x3A, 0x30, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x7C, 0x31, 0x5B, 0x30, 0x2D, 0x33, 0x36, 0x2D, 0x39, 0x5D, 0x7C, 0x33, 0x5B, 0x33, 0x2D, 0x39, 0x5D, 0x7C, 0x5B, 0x34, 0x36, 0x39, 0x5D, 0x39, 0x7C, 0x5B, 0x35, 0x38, 0x5D, 0x5B, 0x37, 0x2D, 0x39, 0x5D, 0x7C, 0x37, 0x5B, 0x38, 0x39, 0x5D, 0x29, 0x5C, 0x64, 0x3F, 0x7C, 0x39, 0x28, 0x3F, 0x3A, 0x30, 0x5B, 0x38, 0x39, 0x5D, 0x7C, 0x32, 0x5B, 0x30, 0x2D, 0x34, 0x39, 0x5D, 0x7C, 0x33, 0x37, 0x7C, 0x34, 0x39, 0x7C, 0x35, 0x5B, 0x30, 0x2D, 0x32, 0x37, 0x2D, 0x39, 0x5D, 0x7C, 0x37, 0x5B, 0x37, 0x2D, 0x39, 0x5D, 0x7C, 0x39, 0x5B, 0x30, 0x2D, 0x34, 0x37, 0x38, 0x5D, 0x29, 0x5C, 0x64, 0x3F, 0x29, 0x5C, 0x64, 0x7B, 0x31, 0x2C, 0x37, 0x7D, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x34, 0x2C, 0x31, 0x31, 0x7D, 0x32, 0x08, 0x32, 0x37, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x1A, 0x23, 0x12, 0x0F, 0x36, 0x5B, 0x32, 0x36, 0x39, 0x5D, 0x5B, 0x31, 0x38, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x36, 0x32, 0x38, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x22, 0x1B, 0x12, 0x08, 0x38, 0x30, 0x30, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x38, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x2A, 0x1E, 0x12, 0x0B, 0x39, 0x30, 0x5B, 0x30, 0x31, 0x5D, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x39, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x32, 0x1B, 0x12, 0x08, 0x38, 0x30, 0x31, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x38, 0x30, 0x31, 0x31, 0x32, 0x33, 0x34, 0x35, 0x3A, 0x1A, 0x12, 0x07, 0x37, 0x30, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x37, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x42, 0x1E, 0x12, 0x09, 0x32, 0x30, 0x5C, 0x64, 0x7B, 0x32, 0x2C, 0x38, 0x7D, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x34, 0x2C, 0x31, 0x30, 0x7D, 0x32, 0x07, 0x32, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x4A, 0x02, 0x4C, 0x55, 0x50, 0xE0, 0x02, 0x5A, 0x02, 0x30, 0x30, 0x7A, 0x30, 0x28, 0x31, 0x35, 0x28, 0x3F, 0x3A, 0x30, 0x5B, 0x30, 0x36, 0x5D, 0x7C, 0x31, 0x5B, 0x31, 0x32, 0x5D, 0x7C, 0x33, 0x35, 0x7C, 0x34, 0x5B, 0x30, 0x34, 0x5D, 0x7C, 0x35, 0x35, 0x7C, 0x36, 0x5B, 0x32, 0x36, 0x5D, 0x7C, 0x37, 0x37, 0x7C, 0x38, 0x38, 0x7C, 0x39, 0x39, 0x29, 0x5C, 0x64, 0x29, 0x9A, 0x01, 0x45, 0x0A, 0x0E, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x1A, 0x22, 0x5B, 0x32, 0x33, 0x2D, 0x35, 0x5D, 0x7C, 0x37, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x7C, 0x5B, 0x38, 0x39, 0x5D, 0x28, 0x3F, 0x3A, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x7C, 0x30, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x29, 0x22, 0x00, 0x2A, 0x06, 0x24, 0x43, 0x43, 0x20, 0x24, 0x31, 0x9A, 0x01, 0x4F, 0x0A, 0x15, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x22, 0x5B, 0x32, 0x33, 0x2D, 0x35, 0x5D, 0x7C, 0x37, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x7C, 0x5B, 0x38, 0x39, 0x5D, 0x28, 0x3F, 0x3A, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x7C, 0x30, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x29, 0x22, 0x00, 0x2A, 0x06, 0x24, 0x43, 0x43, 0x20, 0x24, 0x31, 0x9A, 0x01, 0x2F, 0x0A, 0x15, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x02, 0x32, 0x30, 0x22, 0x00, 0x2A, 0x06, 0x24, 0x43, 0x43, 0x20, 0x24, 0x31, 0x9A, 0x01, 0x4B, 0x0A, 0x1E, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x31, 0x2C, 0x32, 0x7D, 0x29, 0x12, 0x0B, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x20, 0x24, 0x34, 0x1A, 0x12, 0x32, 0x28, 0x3F, 0x3A, 0x5B, 0x30, 0x33, 0x36, 0x37, 0x5D, 0x7C, 0x34, 0x5B, 0x33, 0x2D, 0x38, 0x5D, 0x29, 0x22, 0x00, 0x2A, 0x06, 0x24, 0x43, 0x43, 0x20, 0x24, 0x31, 0x9A, 0x01, 0x39, 0x0A, 0x1C, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x12, 0x0B, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x20, 0x24, 0x34, 0x1A, 0x02, 0x32, 0x30, 0x22, 0x00, 0x2A, 0x06, 0x24, 0x43, 0x43, 0x20, 0x24, 0x31, 0x9A, 0x01, 0x55, 0x0A, 0x25, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x31, 0x2C, 0x32, 0x7D, 0x29, 0x12, 0x0E, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x20, 0x24, 0x34, 0x20, 0x24, 0x35, 0x1A, 0x12, 0x32, 0x28, 0x3F, 0x3A, 0x5B, 0x30, 0x33, 0x36, 0x37, 0x5D, 0x7C, 0x34, 0x5B, 0x33, 0x2D, 0x38, 0x5D, 0x29, 0x22, 0x00, 0x2A, 0x06, 0x24, 0x43, 0x43, 0x20, 0x24, 0x31, 0x9A, 0x01, 0x6D, 0x0A, 0x1E, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x31, 0x2C, 0x34, 0x7D, 0x29, 0x12, 0x0B, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x20, 0x24, 0x34, 0x1A, 0x34, 0x32, 0x28, 0x3F, 0x3A, 0x5B, 0x31, 0x32, 0x35, 0x38, 0x39, 0x5D, 0x7C, 0x34, 0x5B, 0x31, 0x32, 0x5D, 0x29, 0x7C, 0x5B, 0x33, 0x2D, 0x35, 0x5D, 0x7C, 0x37, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x7C, 0x5B, 0x38, 0x39, 0x5D, 0x28, 0x3F, 0x3A, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x7C, 0x30, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x29, 0x22, 0x00, 0x2A, 0x06, 0x24, 0x43, 0x43, 0x20, 0x24, 0x31, 0x9A, 0x01, 0x39, 0x0A, 0x15, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x0C, 0x5B, 0x38, 0x39, 0x5D, 0x30, 0x5B, 0x30, 0x31, 0x5D, 0x7C, 0x37, 0x30, 0x22, 0x00, 0x2A, 0x06, 0x24, 0x43, 0x43, 0x20, 0x24, 0x31, 0x9A, 0x01, 0x2E, 0x0A, 0x15, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x01, 0x36, 0x22, 0x00, 0x2A, 0x06, 0x24, 0x43, 0x43, 0x20, 0x24, 0x31, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xF9, 0x01, 0x0A, 0x14, 0x12, 0x0B, 0x5B, 0x32, 0x36, 0x38, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x12, 0x19, 0x12, 0x06, 0x36, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x36, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x1A, 0x19, 0x12, 0x06, 0x32, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x32, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x22, 0x1A, 0x12, 0x07, 0x38, 0x30, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x38, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x2A, 0x1A, 0x12, 0x07, 0x39, 0x30, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x39, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x4C, 0x56, 0x50, 0xF3, 0x02, 0x5A, 0x02, 0x30, 0x30, 0x9A, 0x01, 0x28, 0x0A, 0x18, 0x28, 0x5B, 0x32, 0x36, 0x38, 0x39, 0x5D, 0x5C, 0x64, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x22, 0x00, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0x80, 0x02, 0x0A, 0x17, 0x12, 0x0C, 0x5B, 0x32, 0x35, 0x36, 0x37, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x39, 0x7D, 0x12, 0x3B, 0x12, 0x25, 0x28, 0x3F, 0x3A, 0x32, 0x5B, 0x31, 0x33, 0x34, 0x35, 0x5D, 0x7C, 0x35, 0x5B, 0x31, 0x33, 0x34, 0x37, 0x5D, 0x7C, 0x36, 0x5B, 0x31, 0x32, 0x33, 0x34, 0x37, 0x39, 0x5D, 0x7C, 0x37, 0x31, 0x29, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x39, 0x7D, 0x32, 0x09, 0x32, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x1A, 0x1F, 0x12, 0x0B, 0x39, 0x5B, 0x31, 0x2D, 0x36, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x39, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x22, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x2A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x4C, 0x59, 0x50, 0xDA, 0x01, 0x5A, 0x02, 0x30, 0x30, 0x62, 0x01, 0x30, 0x7A, 0x01, 0x30, 0x9A, 0x01, 0x22, 0x0A, 0x12, 0x28, 0x5B, 0x32, 0x35, 0x36, 0x37, 0x39, 0x5D, 0x5C, 0x64, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x2D, 0x24, 0x32, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0x90, 0x05, 0x0A, 0x14, 0x12, 0x0B, 0x5B, 0x35, 0x36, 0x38, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x12, 0x9E, 0x01, 0x12, 0x89, 0x01, 0x35, 0x28, 0x3F, 0x3A, 0x32, 0x28, 0x3F, 0x3A, 0x28, 0x3F, 0x3A, 0x5B, 0x30, 0x31, 0x35, 0x2D, 0x37, 0x5D, 0x5C, 0x64, 0x7C, 0x32, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x7C, 0x33, 0x5B, 0x32, 0x2D, 0x35, 0x37, 0x5D, 0x7C, 0x34, 0x5B, 0x32, 0x2D, 0x38, 0x5D, 0x7C, 0x38, 0x5B, 0x32, 0x33, 0x35, 0x2D, 0x39, 0x5D, 0x7C, 0x29, 0x5C, 0x64, 0x7C, 0x39, 0x28, 0x3F, 0x3A, 0x30, 0x5C, 0x64, 0x7C, 0x5B, 0x38, 0x39, 0x5D, 0x30, 0x29, 0x29, 0x7C, 0x33, 0x28, 0x3F, 0x3A, 0x28, 0x3F, 0x3A, 0x5B, 0x30, 0x2D, 0x34, 0x5D, 0x5C, 0x64, 0x7C, 0x5B, 0x35, 0x37, 0x5D, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x7C, 0x36, 0x5B, 0x32, 0x33, 0x35, 0x2D, 0x38, 0x5D, 0x7C, 0x39, 0x5B, 0x33, 0x2D, 0x39, 0x5D, 0x29, 0x5C, 0x64, 0x7C, 0x38, 0x28, 0x3F, 0x3A, 0x30, 0x5C, 0x64, 0x7C, 0x5B, 0x38, 0x39, 0x5D, 0x30, 0x29, 0x29, 0x29, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x35, 0x32, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x1A, 0x39, 0x12, 0x25, 0x36, 0x28, 0x3F, 0x3A, 0x30, 0x5B, 0x30, 0x36, 0x5D, 0x7C, 0x5B, 0x31, 0x34, 0x2D, 0x37, 0x5D, 0x5C, 0x64, 0x7C, 0x32, 0x5B, 0x32, 0x33, 0x36, 0x5D, 0x7C, 0x33, 0x33, 0x7C, 0x39, 0x39, 0x29, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x36, 0x35, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x22, 0x1B, 0x12, 0x07, 0x38, 0x30, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x38, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x2A, 0x1B, 0x12, 0x07, 0x38, 0x39, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x38, 0x39, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x4D, 0x41, 0x50, 0xD4, 0x01, 0x5A, 0x02, 0x30, 0x30, 0x62, 0x01, 0x30, 0x7A, 0x01, 0x30, 0x9A, 0x01, 0x3A, 0x0A, 0x12, 0x28, 0x5B, 0x35, 0x36, 0x5D, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x2D, 0x24, 0x32, 0x1A, 0x16, 0x35, 0x28, 0x3F, 0x3A, 0x32, 0x5B, 0x30, 0x31, 0x35, 0x2D, 0x37, 0x5D, 0x7C, 0x33, 0x5B, 0x30, 0x2D, 0x34, 0x5D, 0x29, 0x7C, 0x36, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x64, 0x0A, 0x12, 0x28, 0x5B, 0x35, 0x38, 0x5D, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x2D, 0x24, 0x32, 0x1A, 0x18, 0x35, 0x28, 0x3F, 0x3A, 0x32, 0x5B, 0x32, 0x2D, 0x34, 0x38, 0x39, 0x5D, 0x7C, 0x33, 0x5B, 0x35, 0x2D, 0x39, 0x5D, 0x29, 0x7C, 0x38, 0x39, 0x32, 0x1A, 0x26, 0x35, 0x28, 0x3F, 0x3A, 0x32, 0x28, 0x3F, 0x3A, 0x5B, 0x32, 0x2D, 0x34, 0x38, 0x5D, 0x7C, 0x39, 0x30, 0x29, 0x7C, 0x33, 0x28, 0x3F, 0x3A, 0x5B, 0x35, 0x2D, 0x37, 0x39, 0x5D, 0x7C, 0x38, 0x30, 0x29, 0x29, 0x7C, 0x38, 0x39, 0x32, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x3B, 0x0A, 0x0F, 0x28, 0x35, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x2D, 0x24, 0x32, 0x1A, 0x0A, 0x35, 0x28, 0x3F, 0x3A, 0x32, 0x39, 0x7C, 0x33, 0x38, 0x29, 0x1A, 0x0E, 0x35, 0x28, 0x3F, 0x3A, 0x32, 0x39, 0x7C, 0x33, 0x38, 0x29, 0x5B, 0x38, 0x39, 0x5D, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x2F, 0x0A, 0x0E, 0x28, 0x38, 0x5B, 0x30, 0x39, 0x5D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x2D, 0x24, 0x32, 0x1A, 0x0F, 0x38, 0x28, 0x3F, 0x3A, 0x30, 0x7C, 0x39, 0x5B, 0x30, 0x31, 0x33, 0x2D, 0x39, 0x5D, 0x29, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0x8E, 0x03, 0x0A, 0x18, 0x12, 0x0D, 0x5B, 0x34, 0x36, 0x38, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x38, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x38, 0x2C, 0x39, 0x7D, 0x12, 0x21, 0x12, 0x0E, 0x39, 0x5B, 0x32, 0x2D, 0x34, 0x37, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x39, 0x39, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x1A, 0x23, 0x12, 0x0D, 0x36, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x7C, 0x34, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x38, 0x2C, 0x39, 0x7D, 0x32, 0x09, 0x36, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x22, 0x22, 0x12, 0x0F, 0x28, 0x3F, 0x3A, 0x38, 0x5C, 0x64, 0x7C, 0x39, 0x30, 0x29, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x39, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x2A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x4D, 0x43, 0x50, 0xF9, 0x02, 0x5A, 0x02, 0x30, 0x30, 0x62, 0x01, 0x30, 0x7A, 0x01, 0x30, 0x9A, 0x01, 0x38, 0x0A, 0x1C, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x12, 0x0B, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x20, 0x24, 0x34, 0x1A, 0x04, 0x5B, 0x38, 0x39, 0x5D, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x2B, 0x0A, 0x15, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x01, 0x34, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x3B, 0x0A, 0x1F, 0x28, 0x36, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x12, 0x0E, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x20, 0x24, 0x34, 0x20, 0x24, 0x35, 0x1A, 0x01, 0x36, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x0F, 0x12, 0x06, 0x38, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xEC, 0x03, 0x0A, 0x15, 0x12, 0x0C, 0x5B, 0x32, 0x35, 0x36, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x12, 0x76, 0x12, 0x61, 0x28, 0x3F, 0x3A, 0x32, 0x28, 0x3F, 0x3A, 0x31, 0x5B, 0x30, 0x35, 0x36, 0x39, 0x5D, 0x7C, 0x32, 0x5C, 0x64, 0x7C, 0x33, 0x5B, 0x30, 0x31, 0x35, 0x2D, 0x37, 0x5D, 0x7C, 0x34, 0x5B, 0x31, 0x2D, 0x34, 0x36, 0x2D, 0x39, 0x5D, 0x7C, 0x35, 0x5B, 0x30, 0x2D, 0x32, 0x34, 0x36, 0x38, 0x39, 0x5D, 0x7C, 0x36, 0x5B, 0x32, 0x2D, 0x35, 0x38, 0x39, 0x5D, 0x7C, 0x37, 0x5B, 0x31, 0x2D, 0x33, 0x37, 0x5D, 0x7C, 0x39, 0x5B, 0x31, 0x33, 0x34, 0x37, 0x2D, 0x39, 0x5D, 0x29, 0x7C, 0x35, 0x28, 0x3F, 0x3A, 0x33, 0x33, 0x7C, 0x35, 0x5B, 0x32, 0x35, 0x37, 0x5D, 0x29, 0x29, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x35, 0x2C, 0x38, 0x7D, 0x32, 0x08, 0x32, 0x32, 0x32, 0x31, 0x32, 0x33, 0x34, 0x35, 0x1A, 0x3C, 0x12, 0x29, 0x28, 0x3F, 0x3A, 0x36, 0x28, 0x3F, 0x3A, 0x35, 0x30, 0x7C, 0x37, 0x5B, 0x31, 0x32, 0x5D, 0x7C, 0x5B, 0x38, 0x39, 0x5D, 0x5C, 0x64, 0x29, 0x7C, 0x37, 0x28, 0x3F, 0x3A, 0x38, 0x30, 0x7C, 0x39, 0x5C, 0x64, 0x29, 0x29, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x36, 0x35, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x22, 0x1B, 0x12, 0x08, 0x38, 0x30, 0x30, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x38, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x2A, 0x1B, 0x12, 0x08, 0x39, 0x30, 0x30, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x39, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x4D, 0x44, 0x50, 0xF5, 0x02, 0x5A, 0x02, 0x30, 0x30, 0x62, 0x01, 0x30, 0x7A, 0x01, 0x30, 0x9A, 0x01, 0x29, 0x0A, 0x12, 0x28, 0x32, 0x32, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x02, 0x32, 0x32, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x3E, 0x0A, 0x1B, 0x28, 0x5B, 0x32, 0x35, 0x2D, 0x37, 0x5D, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x0E, 0x32, 0x5B, 0x31, 0x33, 0x2D, 0x37, 0x39, 0x5D, 0x7C, 0x5B, 0x35, 0x2D, 0x37, 0x5D, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x25, 0x0A, 0x0F, 0x28, 0x5B, 0x38, 0x39, 0x5D, 0x30, 0x30, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x1A, 0x04, 0x5B, 0x38, 0x39, 0x5D, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xD2, 0x04, 0x0A, 0x17, 0x12, 0x0C, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x38, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x36, 0x2C, 0x39, 0x7D, 0x12, 0x73, 0x12, 0x5E, 0x28, 0x3F, 0x3A, 0x32, 0x30, 0x5B, 0x32, 0x2D, 0x38, 0x5D, 0x7C, 0x33, 0x28, 0x3F, 0x3A, 0x30, 0x5B, 0x32, 0x2D, 0x37, 0x5D, 0x7C, 0x31, 0x5B, 0x33, 0x35, 0x2D, 0x37, 0x5D, 0x7C, 0x32, 0x5B, 0x33, 0x36, 0x37, 0x5D, 0x7C, 0x33, 0x5B, 0x34, 0x2D, 0x37, 0x5D, 0x29, 0x7C, 0x34, 0x28, 0x3F, 0x3A, 0x30, 0x5B, 0x32, 0x33, 0x37, 0x5D, 0x7C, 0x31, 0x5B, 0x32, 0x34, 0x36, 0x37, 0x5D, 0x29, 0x7C, 0x35, 0x28, 0x3F, 0x3A, 0x30, 0x5B, 0x34, 0x37, 0x5D, 0x7C, 0x31, 0x5B, 0x32, 0x37, 0x5D, 0x7C, 0x32, 0x5B, 0x33, 0x37, 0x38, 0x5D, 0x29, 0x29, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x36, 0x2C, 0x38, 0x7D, 0x32, 0x08, 0x33, 0x30, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x1A, 0x4D, 0x12, 0x38, 0x36, 0x28, 0x3F, 0x3A, 0x33, 0x32, 0x5C, 0x64, 0x7C, 0x5B, 0x38, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x7C, 0x37, 0x28, 0x3F, 0x3A, 0x5B, 0x30, 0x2D, 0x38, 0x5D, 0x5C, 0x64, 0x7C, 0x39, 0x28, 0x3F, 0x3A, 0x5B, 0x33, 0x2D, 0x39, 0x5D, 0x7C, 0x5B, 0x30, 0x2D, 0x32, 0x5D, 0x5C, 0x64, 0x29, 0x29, 0x29, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x38, 0x2C, 0x39, 0x7D, 0x32, 0x08, 0x36, 0x37, 0x36, 0x32, 0x32, 0x39, 0x30, 0x31, 0x22, 0x1F, 0x12, 0x0C, 0x38, 0x30, 0x30, 0x5B, 0x32, 0x38, 0x5D, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x38, 0x30, 0x30, 0x38, 0x30, 0x30, 0x30, 0x32, 0x2A, 0x35, 0x12, 0x22, 0x28, 0x3F, 0x3A, 0x38, 0x38, 0x5C, 0x64, 0x7C, 0x39, 0x28, 0x3F, 0x3A, 0x34, 0x5B, 0x31, 0x33, 0x2D, 0x38, 0x5D, 0x7C, 0x35, 0x5B, 0x31, 0x36, 0x2D, 0x38, 0x5D, 0x29, 0x29, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x39, 0x34, 0x35, 0x31, 0x35, 0x31, 0x35, 0x31, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x22, 0x12, 0x0F, 0x37, 0x38, 0x5B, 0x31, 0x33, 0x34, 0x35, 0x37, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x37, 0x38, 0x31, 0x30, 0x38, 0x37, 0x38, 0x30, 0x4A, 0x02, 0x4D, 0x45, 0x50, 0xFE, 0x02, 0x5A, 0x02, 0x30, 0x30, 0x62, 0x01, 0x30, 0x7A, 0x01, 0x30, 0x9A, 0x01, 0x61, 0x0A, 0x15, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x10, 0x5B, 0x32, 0x2D, 0x35, 0x37, 0x2D, 0x39, 0x5D, 0x7C, 0x36, 0x5B, 0x33, 0x37, 0x38, 0x39, 0x5D, 0x1A, 0x25, 0x5B, 0x32, 0x2D, 0x35, 0x37, 0x2D, 0x39, 0x5D, 0x7C, 0x36, 0x28, 0x3F, 0x3A, 0x5B, 0x33, 0x38, 0x39, 0x5D, 0x7C, 0x37, 0x28, 0x3F, 0x3A, 0x5B, 0x30, 0x2D, 0x38, 0x5D, 0x7C, 0x39, 0x5B, 0x33, 0x2D, 0x39, 0x5D, 0x29, 0x29, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x3A, 0x0A, 0x15, 0x28, 0x36, 0x37, 0x29, 0x28, 0x39, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x12, 0x0B, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x20, 0x24, 0x34, 0x1A, 0x03, 0x36, 0x37, 0x39, 0x1A, 0x08, 0x36, 0x37, 0x39, 0x5B, 0x30, 0x2D, 0x32, 0x5D, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x1A, 0x12, 0x07, 0x37, 0x37, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x37, 0x37, 0x32, 0x37, 0x33, 0x30, 0x31, 0x32, 0x0A, 0xBD, 0x02, 0x0A, 0x14, 0x12, 0x09, 0x5B, 0x32, 0x33, 0x5D, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x39, 0x7D, 0x12, 0x69, 0x12, 0x53, 0x32, 0x28, 0x3F, 0x3A, 0x30, 0x28, 0x3F, 0x3A, 0x28, 0x3F, 0x3A, 0x32, 0x5C, 0x64, 0x7C, 0x34, 0x5B, 0x34, 0x37, 0x5D, 0x7C, 0x35, 0x5B, 0x33, 0x34, 0x36, 0x37, 0x5D, 0x7C, 0x36, 0x5B, 0x32, 0x37, 0x39, 0x5D, 0x7C, 0x38, 0x5B, 0x32, 0x36, 0x38, 0x5D, 0x7C, 0x39, 0x5B, 0x32, 0x34, 0x35, 0x5D, 0x29, 0x5C, 0x64, 0x7C, 0x37, 0x28, 0x3F, 0x3A, 0x32, 0x5B, 0x32, 0x39, 0x5D, 0x7C, 0x5B, 0x33, 0x35, 0x5D, 0x5C, 0x64, 0x29, 0x29, 0x7C, 0x32, 0x31, 0x30, 0x5C, 0x64, 0x29, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x39, 0x7D, 0x32, 0x09, 0x32, 0x30, 0x32, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x1A, 0x20, 0x12, 0x0C, 0x33, 0x5B, 0x30, 0x32, 0x2D, 0x34, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x33, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x22, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x2A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x4D, 0x47, 0x50, 0x85, 0x02, 0x5A, 0x02, 0x30, 0x30, 0x62, 0x01, 0x30, 0x7A, 0x01, 0x30, 0x9A, 0x01, 0x33, 0x0A, 0x1D, 0x28, 0x5B, 0x32, 0x33, 0x5D, 0x5C, 0x64, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x12, 0x0B, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x20, 0x24, 0x34, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xE5, 0x01, 0x0A, 0x12, 0x12, 0x09, 0x5B, 0x35, 0x36, 0x5D, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x12, 0x35, 0x12, 0x21, 0x35, 0x39, 0x30, 0x28, 0x3F, 0x3A, 0x31, 0x30, 0x7C, 0x32, 0x5B, 0x37, 0x39, 0x5D, 0x7C, 0x35, 0x5B, 0x31, 0x32, 0x38, 0x5D, 0x7C, 0x5B, 0x37, 0x38, 0x5D, 0x37, 0x29, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x35, 0x39, 0x30, 0x32, 0x37, 0x31, 0x32, 0x33, 0x34, 0x1A, 0x34, 0x12, 0x20, 0x36, 0x39, 0x30, 0x28, 0x3F, 0x3A, 0x31, 0x30, 0x7C, 0x32, 0x5B, 0x32, 0x37, 0x5D, 0x7C, 0x36, 0x36, 0x7C, 0x37, 0x37, 0x7C, 0x38, 0x5B, 0x37, 0x38, 0x5D, 0x29, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x36, 0x39, 0x30, 0x32, 0x32, 0x31, 0x32, 0x33, 0x34, 0x22, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x2A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x4D, 0x46, 0x50, 0xCE, 0x04, 0x5A, 0x02, 0x30, 0x30, 0x62, 0x01, 0x30, 0x7A, 0x01, 0x30, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0x6E, 0x0A, 0x00, 0x12, 0x00, 0x1A, 0x00, 0x22, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x2A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x4D, 0x48, 0x50, 0xB4, 0x05, 0x5A, 0x03, 0x30, 0x31, 0x31, 0x62, 0x01, 0x31, 0x7A, 0x01, 0x31, 0x90, 0x01, 0x01, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0x8F, 0x04, 0x0A, 0x15, 0x12, 0x0C, 0x5B, 0x32, 0x2D, 0x35, 0x37, 0x38, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x12, 0x87, 0x01, 0x12, 0x72, 0x28, 0x3F, 0x3A, 0x32, 0x28, 0x3F, 0x3A, 0x5B, 0x32, 0x33, 0x5D, 0x5C, 0x64, 0x7C, 0x35, 0x5B, 0x31, 0x32, 0x35, 0x5D, 0x7C, 0x36, 0x31, 0x29, 0x7C, 0x33, 0x28, 0x3F, 0x3A, 0x31, 0x5B, 0x33, 0x2D, 0x36, 0x5D, 0x7C, 0x32, 0x5B, 0x32, 0x2D, 0x36, 0x5D, 0x7C, 0x33, 0x5B, 0x32, 0x2D, 0x35, 0x5D, 0x7C, 0x34, 0x5B, 0x32, 0x33, 0x35, 0x5D, 0x29, 0x7C, 0x34, 0x28, 0x3F, 0x3A, 0x5B, 0x32, 0x33, 0x5D, 0x5B, 0x32, 0x2D, 0x36, 0x5D, 0x7C, 0x34, 0x5B, 0x33, 0x2D, 0x36, 0x5D, 0x7C, 0x35, 0x5B, 0x32, 0x35, 0x5D, 0x7C, 0x36, 0x5B, 0x32, 0x35, 0x2D, 0x38, 0x5D, 0x7C, 0x37, 0x5B, 0x32, 0x34, 0x2D, 0x36, 0x5D, 0x7C, 0x38, 0x5B, 0x34, 0x2D, 0x36, 0x5D, 0x29, 0x29, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x36, 0x2C, 0x38, 0x7D, 0x32, 0x08, 0x32, 0x32, 0x32, 0x31, 0x32, 0x33, 0x34, 0x35, 0x1A, 0x21, 0x12, 0x0E, 0x37, 0x5B, 0x30, 0x2D, 0x32, 0x35, 0x2D, 0x38, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x37, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x22, 0x1B, 0x12, 0x08, 0x38, 0x30, 0x30, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x38, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x2A, 0x1F, 0x12, 0x0C, 0x35, 0x5B, 0x30, 0x32, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x35, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x32, 0x2B, 0x12, 0x18, 0x38, 0x28, 0x3F, 0x3A, 0x30, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x7C, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x29, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x38, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x4D, 0x4B, 0x50, 0x85, 0x03, 0x5A, 0x02, 0x30, 0x30, 0x62, 0x01, 0x30, 0x7A, 0x01, 0x30, 0x9A, 0x01, 0x27, 0x0A, 0x11, 0x28, 0x32, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x01, 0x32, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x31, 0x0A, 0x17, 0x28, 0x5B, 0x33, 0x34, 0x37, 0x5D, 0x5C, 0x64, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x05, 0x5B, 0x33, 0x34, 0x37, 0x5D, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x39, 0x0A, 0x1D, 0x28, 0x5B, 0x35, 0x38, 0x5D, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x12, 0x0B, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x20, 0x24, 0x34, 0x1A, 0x04, 0x5B, 0x35, 0x38, 0x5D, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xEB, 0x02, 0x0A, 0x15, 0x12, 0x0C, 0x5B, 0x32, 0x34, 0x36, 0x2D, 0x38, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x12, 0x53, 0x12, 0x40, 0x28, 0x3F, 0x3A, 0x32, 0x28, 0x3F, 0x3A, 0x30, 0x28, 0x3F, 0x3A, 0x32, 0x5B, 0x30, 0x2D, 0x35, 0x38, 0x39, 0x5D, 0x7C, 0x37, 0x5B, 0x30, 0x32, 0x37, 0x2D, 0x39, 0x5D, 0x29, 0x7C, 0x31, 0x28, 0x3F, 0x3A, 0x32, 0x5B, 0x35, 0x2D, 0x37, 0x5D, 0x7C, 0x5B, 0x33, 0x2D, 0x36, 0x38, 0x39, 0x5D, 0x5C, 0x64, 0x29, 0x29, 0x7C, 0x34, 0x34, 0x32, 0x5C, 0x64, 0x29, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x32, 0x30, 0x32, 0x31, 0x32, 0x33, 0x34, 0x35, 0x1A, 0x50, 0x12, 0x3D, 0x28, 0x3F, 0x3A, 0x36, 0x28, 0x3F, 0x3A, 0x5B, 0x35, 0x36, 0x39, 0x5D, 0x5C, 0x64, 0x29, 0x7C, 0x37, 0x28, 0x3F, 0x3A, 0x5B, 0x30, 0x38, 0x5D, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x7C, 0x5B, 0x33, 0x35, 0x37, 0x39, 0x5D, 0x5B, 0x30, 0x2D, 0x34, 0x5D, 0x7C, 0x34, 0x5B, 0x30, 0x31, 0x34, 0x2D, 0x37, 0x5D, 0x7C, 0x36, 0x5C, 0x64, 0x29, 0x29, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x36, 0x35, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x22, 0x1B, 0x12, 0x08, 0x38, 0x30, 0x30, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x38, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x2A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x4D, 0x4C, 0x50, 0xDF, 0x01, 0x5A, 0x02, 0x30, 0x30, 0x62, 0x01, 0x30, 0x7A, 0x01, 0x30, 0x9A, 0x01, 0x33, 0x0A, 0x20, 0x28, 0x5B, 0x32, 0x34, 0x36, 0x2D, 0x38, 0x5D, 0x5C, 0x64, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x12, 0x0B, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x20, 0x24, 0x34, 0x22, 0x00, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0x84, 0x04, 0x0A, 0x22, 0x12, 0x17, 0x5B, 0x31, 0x32, 0x34, 0x2D, 0x38, 0x5D, 0x5C, 0x64, 0x7B, 0x35, 0x2C, 0x37, 0x7D, 0x7C, 0x39, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x38, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x35, 0x2C, 0x39, 0x7D, 0x12, 0x4C, 0x12, 0x38, 0x28, 0x3F, 0x3A, 0x31, 0x5C, 0x64, 0x7C, 0x32, 0x7C, 0x34, 0x5B, 0x32, 0x2D, 0x36, 0x5D, 0x7C, 0x35, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x7C, 0x36, 0x5C, 0x64, 0x7C, 0x37, 0x5B, 0x30, 0x2D, 0x35, 0x5D, 0x7C, 0x38, 0x5B, 0x31, 0x2D, 0x36, 0x5D, 0x29, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x7C, 0x31, 0x33, 0x33, 0x33, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x35, 0x2C, 0x38, 0x7D, 0x32, 0x07, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x1A, 0x2C, 0x12, 0x17, 0x39, 0x28, 0x3F, 0x3A, 0x5B, 0x32, 0x35, 0x36, 0x38, 0x39, 0x5D, 0x5C, 0x64, 0x7C, 0x34, 0x34, 0x34, 0x29, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x38, 0x2C, 0x39, 0x7D, 0x32, 0x08, 0x39, 0x32, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x22, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x2A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x4D, 0x4D, 0x50, 0x5F, 0x5A, 0x02, 0x30, 0x30, 0x9A, 0x01, 0x24, 0x0A, 0x11, 0x28, 0x31, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x01, 0x31, 0x22, 0x00, 0x2A, 0x00, 0x9A, 0x01, 0x31, 0x0A, 0x13, 0x28, 0x31, 0x29, 0x28, 0x33, 0x29, 0x28, 0x33, 0x33, 0x5C, 0x64, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x12, 0x0B, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x20, 0x24, 0x34, 0x1A, 0x03, 0x31, 0x33, 0x33, 0x1A, 0x04, 0x31, 0x33, 0x33, 0x33, 0x22, 0x00, 0x2A, 0x00, 0x9A, 0x01, 0x24, 0x0A, 0x11, 0x28, 0x32, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x01, 0x32, 0x22, 0x00, 0x2A, 0x00, 0x9A, 0x01, 0x2C, 0x0A, 0x15, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x05, 0x5B, 0x34, 0x2D, 0x38, 0x5D, 0x22, 0x00, 0x2A, 0x00, 0x9A, 0x01, 0x1E, 0x0A, 0x0D, 0x28, 0x39, 0x34, 0x34, 0x34, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x1A, 0x02, 0x39, 0x34, 0x22, 0x00, 0x2A, 0x00, 0x9A, 0x01, 0x32, 0x0A, 0x18, 0x28, 0x39, 0x29, 0x28, 0x5B, 0x32, 0x35, 0x36, 0x38, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x08, 0x39, 0x5B, 0x32, 0x35, 0x36, 0x38, 0x39, 0x5D, 0x22, 0x00, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xF2, 0x04, 0x0A, 0x23, 0x12, 0x17, 0x5B, 0x31, 0x32, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x39, 0x7D, 0x7C, 0x5B, 0x35, 0x37, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x36, 0x2C, 0x31, 0x30, 0x7D, 0x12, 0x7A, 0x12, 0x64, 0x5B, 0x31, 0x32, 0x5D, 0x28, 0x3F, 0x3A, 0x31, 0x5C, 0x64, 0x7C, 0x32, 0x28, 0x3F, 0x3A, 0x5B, 0x31, 0x2D, 0x33, 0x5D, 0x5C, 0x64, 0x3F, 0x7C, 0x37, 0x5C, 0x64, 0x29, 0x7C, 0x33, 0x5B, 0x32, 0x2D, 0x38, 0x5D, 0x5C, 0x64, 0x7B, 0x31, 0x2C, 0x32, 0x7D, 0x7C, 0x34, 0x5B, 0x32, 0x2D, 0x36, 0x38, 0x5D, 0x5C, 0x64, 0x7B, 0x31, 0x2C, 0x32, 0x7D, 0x7C, 0x35, 0x5B, 0x31, 0x2D, 0x34, 0x36, 0x38, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x31, 0x2C, 0x32, 0x7D, 0x29, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x7C, 0x28, 0x3F, 0x3A, 0x35, 0x5B, 0x30, 0x35, 0x36, 0x38, 0x5D, 0x7C, 0x37, 0x30, 0x29, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x36, 0x2C, 0x31, 0x30, 0x7D, 0x32, 0x08, 0x37, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x1A, 0x2A, 0x12, 0x17, 0x28, 0x3F, 0x3A, 0x38, 0x5B, 0x38, 0x39, 0x5D, 0x7C, 0x39, 0x5B, 0x31, 0x35, 0x36, 0x38, 0x39, 0x5D, 0x29, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x38, 0x38, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x22, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x2A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x1E, 0x12, 0x0B, 0x37, 0x5B, 0x35, 0x36, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x37, 0x35, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x4A, 0x02, 0x4D, 0x4E, 0x50, 0xD0, 0x07, 0x5A, 0x03, 0x30, 0x30, 0x31, 0x62, 0x01, 0x30, 0x7A, 0x01, 0x30, 0x9A, 0x01, 0x30, 0x0A, 0x16, 0x28, 0x5B, 0x31, 0x32, 0x5D, 0x5C, 0x64, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x05, 0x5B, 0x31, 0x32, 0x5D, 0x31, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x2E, 0x0A, 0x12, 0x28, 0x5B, 0x31, 0x32, 0x5D, 0x32, 0x5C, 0x64, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x35, 0x2C, 0x36, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x1A, 0x0A, 0x5B, 0x31, 0x32, 0x5D, 0x32, 0x5B, 0x31, 0x2D, 0x33, 0x5D, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x49, 0x0A, 0x12, 0x28, 0x5B, 0x31, 0x32, 0x5D, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x1A, 0x10, 0x5B, 0x31, 0x32, 0x5D, 0x28, 0x3F, 0x3A, 0x32, 0x37, 0x7C, 0x5B, 0x33, 0x2D, 0x35, 0x5D, 0x29, 0x1A, 0x13, 0x5B, 0x31, 0x32, 0x5D, 0x28, 0x3F, 0x3A, 0x32, 0x37, 0x7C, 0x5B, 0x33, 0x2D, 0x35, 0x5D, 0x5C, 0x64, 0x29, 0x32, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x25, 0x0A, 0x0E, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x1A, 0x06, 0x5B, 0x35, 0x37, 0x2D, 0x39, 0x5D, 0x22, 0x02, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x4F, 0x0A, 0x14, 0x28, 0x5B, 0x31, 0x32, 0x5D, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x2C, 0x35, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x1A, 0x10, 0x5B, 0x31, 0x32, 0x5D, 0x28, 0x3F, 0x3A, 0x32, 0x37, 0x7C, 0x5B, 0x33, 0x2D, 0x35, 0x5D, 0x29, 0x1A, 0x17, 0x5B, 0x31, 0x32, 0x5D, 0x28, 0x3F, 0x3A, 0x32, 0x37, 0x7C, 0x5B, 0x33, 0x2D, 0x35, 0x5D, 0x5C, 0x64, 0x29, 0x5B, 0x34, 0x2D, 0x39, 0x5D, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xE9, 0x01, 0x0A, 0x13, 0x12, 0x0A, 0x5B, 0x32, 0x36, 0x38, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x12, 0x32, 0x12, 0x1F, 0x28, 0x3F, 0x3A, 0x32, 0x38, 0x5B, 0x32, 0x2D, 0x35, 0x37, 0x2D, 0x39, 0x5D, 0x7C, 0x38, 0x5B, 0x32, 0x2D, 0x35, 0x37, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x29, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x32, 0x38, 0x32, 0x31, 0x32, 0x33, 0x34, 0x35, 0x1A, 0x1D, 0x12, 0x0A, 0x36, 0x5B, 0x32, 0x36, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x36, 0x36, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x22, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x2A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x4D, 0x4F, 0x50, 0xD5, 0x06, 0x5A, 0x02, 0x30, 0x30, 0x9A, 0x01, 0x20, 0x0A, 0x13, 0x28, 0x5B, 0x32, 0x36, 0x38, 0x5D, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x22, 0x00, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xB6, 0x03, 0x0A, 0x1E, 0x12, 0x0B, 0x5B, 0x35, 0x36, 0x38, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x1A, 0x0F, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x28, 0x3F, 0x3A, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x3F, 0x12, 0x5D, 0x12, 0x3E, 0x36, 0x37, 0x30, 0x28, 0x3F, 0x3A, 0x32, 0x28, 0x3F, 0x3A, 0x33, 0x5B, 0x33, 0x2D, 0x35, 0x5D, 0x7C, 0x38, 0x38, 0x7C, 0x35, 0x36, 0x29, 0x7C, 0x33, 0x32, 0x5B, 0x32, 0x33, 0x5D, 0x7C, 0x34, 0x5B, 0x33, 0x38, 0x5D, 0x33, 0x7C, 0x35, 0x33, 0x32, 0x7C, 0x36, 0x28, 0x3F, 0x3A, 0x36, 0x34, 0x7C, 0x37, 0x30, 0x7C, 0x38, 0x5C, 0x64, 0x29, 0x29, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x0F, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x28, 0x3F, 0x3A, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x3F, 0x32, 0x0A, 0x36, 0x37, 0x30, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x1A, 0x5D, 0x12, 0x3E, 0x36, 0x37, 0x30, 0x28, 0x3F, 0x3A, 0x32, 0x28, 0x3F, 0x3A, 0x33, 0x5B, 0x33, 0x2D, 0x35, 0x5D, 0x7C, 0x38, 0x38, 0x7C, 0x35, 0x36, 0x29, 0x7C, 0x33, 0x32, 0x5B, 0x32, 0x33, 0x5D, 0x7C, 0x34, 0x5B, 0x33, 0x38, 0x5D, 0x33, 0x7C, 0x35, 0x33, 0x32, 0x7C, 0x36, 0x28, 0x3F, 0x3A, 0x36, 0x34, 0x7C, 0x37, 0x30, 0x7C, 0x38, 0x5C, 0x64, 0x29, 0x29, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x0F, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x28, 0x3F, 0x3A, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x3F, 0x32, 0x0A, 0x36, 0x37, 0x30, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x22, 0x33, 0x12, 0x1D, 0x38, 0x28, 0x3F, 0x3A, 0x30, 0x30, 0x7C, 0x35, 0x35, 0x7C, 0x36, 0x36, 0x7C, 0x37, 0x37, 0x7C, 0x38, 0x38, 0x29, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x38, 0x30, 0x30, 0x32, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x2A, 0x23, 0x12, 0x0D, 0x39, 0x30, 0x30, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x39, 0x30, 0x30, 0x32, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x2D, 0x12, 0x17, 0x35, 0x28, 0x3F, 0x3A, 0x30, 0x30, 0x7C, 0x33, 0x33, 0x7C, 0x34, 0x34, 0x29, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x35, 0x30, 0x30, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x4D, 0x50, 0x50, 0x01, 0x5A, 0x03, 0x30, 0x31, 0x31, 0x62, 0x01, 0x31, 0x7A, 0x01, 0x31, 0x90, 0x01, 0x01, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xBA, 0x01, 0x03, 0x36, 0x37, 0x30, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0x6D, 0x0A, 0x00, 0x12, 0x00, 0x1A, 0x00, 0x22, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x2A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x4D, 0x51, 0x50, 0xD4, 0x04, 0x5A, 0x02, 0x30, 0x30, 0x62, 0x01, 0x30, 0x7A, 0x01, 0x30, 0x90, 0x01, 0x01, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xCC, 0x02, 0x0A, 0x14, 0x12, 0x0B, 0x5B, 0x32, 0x2D, 0x34, 0x38, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x12, 0x33, 0x12, 0x20, 0x32, 0x35, 0x5B, 0x30, 0x38, 0x5D, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x7C, 0x33, 0x35, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x7C, 0x34, 0x35, 0x5B, 0x31, 0x2D, 0x37, 0x5D, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x33, 0x35, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x1A, 0x59, 0x12, 0x46, 0x28, 0x3F, 0x3A, 0x32, 0x28, 0x3F, 0x3A, 0x32, 0x5C, 0x64, 0x7C, 0x37, 0x30, 0x29, 0x7C, 0x33, 0x28, 0x3F, 0x3A, 0x33, 0x5C, 0x64, 0x7C, 0x36, 0x5B, 0x31, 0x2D, 0x33, 0x36, 0x5D, 0x7C, 0x37, 0x5B, 0x31, 0x2D, 0x33, 0x5D, 0x29, 0x7C, 0x34, 0x28, 0x3F, 0x3A, 0x34, 0x5C, 0x64, 0x7C, 0x36, 0x5B, 0x30, 0x34, 0x35, 0x37, 0x2D, 0x39, 0x5D, 0x7C, 0x37, 0x5B, 0x34, 0x2D, 0x39, 0x5D, 0x29, 0x29, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x32, 0x32, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x22, 0x1B, 0x12, 0x08, 0x38, 0x30, 0x30, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x38, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x2A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x4D, 0x52, 0x50, 0xDE, 0x01, 0x5A, 0x02, 0x30, 0x30, 0x9A, 0x01, 0x32, 0x0A, 0x1F, 0x28, 0x5B, 0x32, 0x2D, 0x34, 0x38, 0x5D, 0x5C, 0x64, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x12, 0x0B, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x20, 0x24, 0x34, 0x22, 0x00, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xC4, 0x02, 0x0A, 0x1E, 0x12, 0x0B, 0x5B, 0x35, 0x36, 0x38, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x1A, 0x0F, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x28, 0x3F, 0x3A, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x3F, 0x12, 0x2A, 0x12, 0x0B, 0x36, 0x36, 0x34, 0x34, 0x39, 0x31, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x0F, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x28, 0x3F, 0x3A, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x3F, 0x32, 0x0A, 0x36, 0x36, 0x34, 0x34, 0x39, 0x31, 0x32, 0x33, 0x34, 0x35, 0x1A, 0x21, 0x12, 0x0B, 0x36, 0x36, 0x34, 0x34, 0x39, 0x32, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x36, 0x36, 0x34, 0x34, 0x39, 0x32, 0x33, 0x34, 0x35, 0x36, 0x22, 0x33, 0x12, 0x1D, 0x38, 0x28, 0x3F, 0x3A, 0x30, 0x30, 0x7C, 0x35, 0x35, 0x7C, 0x36, 0x36, 0x7C, 0x37, 0x37, 0x7C, 0x38, 0x38, 0x29, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x38, 0x30, 0x30, 0x32, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x2A, 0x23, 0x12, 0x0D, 0x39, 0x30, 0x30, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x39, 0x30, 0x30, 0x32, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x2D, 0x12, 0x17, 0x35, 0x28, 0x3F, 0x3A, 0x30, 0x30, 0x7C, 0x33, 0x33, 0x7C, 0x34, 0x34, 0x29, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x35, 0x30, 0x30, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x4D, 0x53, 0x50, 0x01, 0x5A, 0x03, 0x30, 0x31, 0x31, 0x62, 0x01, 0x31, 0x7A, 0x01, 0x31, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xBA, 0x01, 0x03, 0x36, 0x36, 0x34, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xF8, 0x02, 0x0A, 0x14, 0x12, 0x0B, 0x5B, 0x32, 0x35, 0x37, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x12, 0x3C, 0x12, 0x29, 0x32, 0x28, 0x3F, 0x3A, 0x30, 0x28, 0x3F, 0x3A, 0x31, 0x5B, 0x30, 0x2D, 0x36, 0x5D, 0x7C, 0x5B, 0x36, 0x39, 0x5D, 0x5C, 0x64, 0x29, 0x7C, 0x5B, 0x31, 0x2D, 0x33, 0x35, 0x37, 0x5D, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x32, 0x31, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x1A, 0x59, 0x12, 0x46, 0x28, 0x3F, 0x3A, 0x37, 0x28, 0x3F, 0x3A, 0x32, 0x31, 0x30, 0x7C, 0x5B, 0x37, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x7C, 0x29, 0x7C, 0x39, 0x28, 0x3F, 0x3A, 0x32, 0x5B, 0x31, 0x33, 0x5D, 0x5C, 0x64, 0x7C, 0x36, 0x39, 0x36, 0x7C, 0x38, 0x28, 0x3F, 0x3A, 0x31, 0x5B, 0x31, 0x2D, 0x33, 0x5D, 0x7C, 0x38, 0x39, 0x7C, 0x39, 0x37, 0x29, 0x7C, 0x39, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x29, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x39, 0x36, 0x39, 0x36, 0x31, 0x32, 0x33, 0x34, 0x22, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x2A, 0x41, 0x12, 0x2E, 0x35, 0x30, 0x28, 0x3F, 0x3A, 0x30, 0x28, 0x3F, 0x3A, 0x33, 0x5B, 0x31, 0x36, 0x37, 0x39, 0x5D, 0x7C, 0x34, 0x5C, 0x64, 0x29, 0x7C, 0x5B, 0x31, 0x36, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x7C, 0x37, 0x5B, 0x30, 0x36, 0x5D, 0x5C, 0x64, 0x29, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x35, 0x30, 0x30, 0x33, 0x31, 0x32, 0x33, 0x34, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x4D, 0x54, 0x50, 0xE4, 0x02, 0x5A, 0x02, 0x30, 0x30, 0x9A, 0x01, 0x1B, 0x0A, 0x0E, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x22, 0x00, 0x2A, 0x00, 0xAA, 0x01, 0x1C, 0x12, 0x09, 0x37, 0x31, 0x31, 0x37, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x37, 0x31, 0x31, 0x37, 0x31, 0x32, 0x33, 0x34, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0x85, 0x03, 0x0A, 0x13, 0x12, 0x0A, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x12, 0x68, 0x12, 0x56, 0x28, 0x3F, 0x3A, 0x32, 0x28, 0x3F, 0x3A, 0x5B, 0x30, 0x33, 0x34, 0x37, 0x38, 0x39, 0x5D, 0x5C, 0x64, 0x7C, 0x31, 0x5B, 0x30, 0x2D, 0x38, 0x5D, 0x7C, 0x32, 0x5B, 0x30, 0x2D, 0x37, 0x39, 0x5D, 0x29, 0x7C, 0x34, 0x28, 0x3F, 0x3A, 0x5B, 0x30, 0x31, 0x33, 0x2D, 0x38, 0x5D, 0x5C, 0x64, 0x7C, 0x32, 0x5B, 0x34, 0x2D, 0x37, 0x5D, 0x29, 0x7C, 0x5B, 0x35, 0x36, 0x5D, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x7C, 0x38, 0x28, 0x3F, 0x3A, 0x31, 0x34, 0x7C, 0x33, 0x5B, 0x31, 0x32, 0x39, 0x5D, 0x29, 0x29, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x32, 0x07, 0x32, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x1A, 0x4A, 0x12, 0x38, 0x28, 0x3F, 0x3A, 0x32, 0x35, 0x5C, 0x64, 0x7C, 0x34, 0x28, 0x3F, 0x3A, 0x32, 0x5B, 0x31, 0x32, 0x33, 0x38, 0x39, 0x5D, 0x7C, 0x39, 0x5C, 0x64, 0x29, 0x7C, 0x37, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x7C, 0x38, 0x37, 0x5B, 0x31, 0x35, 0x2D, 0x37, 0x5D, 0x7C, 0x39, 0x5B, 0x31, 0x2D, 0x38, 0x5D, 0x5C, 0x64, 0x29, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x32, 0x07, 0x32, 0x35, 0x31, 0x32, 0x33, 0x34, 0x35, 0x22, 0x1E, 0x12, 0x0C, 0x38, 0x30, 0x5B, 0x30, 0x31, 0x32, 0x5D, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x32, 0x07, 0x38, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x2A, 0x19, 0x12, 0x07, 0x33, 0x30, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x32, 0x07, 0x33, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x4D, 0x55, 0x50, 0xE6, 0x01, 0x5A, 0x0E, 0x30, 0x28, 0x3F, 0x3A, 0x5B, 0x32, 0x2D, 0x37, 0x5D, 0x30, 0x7C, 0x33, 0x33, 0x29, 0x8A, 0x01, 0x03, 0x30, 0x32, 0x30, 0x9A, 0x01, 0x20, 0x0A, 0x13, 0x28, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x22, 0x00, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0x9A, 0x03, 0x0A, 0x29, 0x12, 0x1D, 0x5B, 0x33, 0x36, 0x37, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x7C, 0x39, 0x28, 0x3F, 0x3A, 0x30, 0x30, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x7C, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x29, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x31, 0x30, 0x7D, 0x12, 0x4D, 0x12, 0x3B, 0x28, 0x3F, 0x3A, 0x33, 0x28, 0x3F, 0x3A, 0x30, 0x5B, 0x30, 0x31, 0x5D, 0x7C, 0x33, 0x5B, 0x30, 0x2D, 0x35, 0x39, 0x5D, 0x7C, 0x29, 0x7C, 0x36, 0x28, 0x3F, 0x3A, 0x5B, 0x35, 0x36, 0x37, 0x5D, 0x5B, 0x30, 0x32, 0x34, 0x36, 0x38, 0x5D, 0x7C, 0x38, 0x5B, 0x30, 0x32, 0x34, 0x36, 0x38, 0x39, 0x5D, 0x7C, 0x39, 0x30, 0x29, 0x29, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x32, 0x07, 0x36, 0x37, 0x30, 0x31, 0x32, 0x33, 0x34, 0x1A, 0x28, 0x12, 0x16, 0x28, 0x3F, 0x3A, 0x37, 0x5B, 0x33, 0x2D, 0x39, 0x5D, 0x7C, 0x39, 0x5B, 0x36, 0x2D, 0x39, 0x5D, 0x29, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x32, 0x07, 0x37, 0x37, 0x31, 0x32, 0x33, 0x34, 0x35, 0x22, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x2A, 0x1E, 0x12, 0x08, 0x39, 0x30, 0x30, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x39, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x4D, 0x56, 0x50, 0xC0, 0x07, 0x5A, 0x09, 0x30, 0x28, 0x3F, 0x3A, 0x30, 0x7C, 0x31, 0x39, 0x29, 0x8A, 0x01, 0x02, 0x30, 0x30, 0x9A, 0x01, 0x34, 0x0A, 0x0E, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x2D, 0x24, 0x32, 0x1A, 0x17, 0x5B, 0x33, 0x36, 0x37, 0x5D, 0x7C, 0x39, 0x28, 0x3F, 0x3A, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x7C, 0x30, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x29, 0x22, 0x00, 0x2A, 0x00, 0x9A, 0x01, 0x2A, 0x0A, 0x15, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x03, 0x39, 0x30, 0x30, 0x22, 0x00, 0x2A, 0x00, 0xAA, 0x01, 0x1A, 0x12, 0x08, 0x37, 0x38, 0x31, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x32, 0x07, 0x37, 0x38, 0x31, 0x32, 0x33, 0x34, 0x35, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xBF, 0x03, 0x0A, 0x33, 0x12, 0x28, 0x28, 0x3F, 0x3A, 0x5B, 0x31, 0x33, 0x2D, 0x35, 0x5D, 0x7C, 0x5B, 0x32, 0x37, 0x5D, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x7C, 0x5B, 0x38, 0x39, 0x5D, 0x28, 0x3F, 0x3A, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x3F, 0x29, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x39, 0x7D, 0x12, 0x2B, 0x12, 0x17, 0x28, 0x3F, 0x3A, 0x31, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x7C, 0x32, 0x31, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x39, 0x7D, 0x32, 0x07, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x1A, 0x3B, 0x12, 0x25, 0x28, 0x3F, 0x3A, 0x5B, 0x33, 0x2D, 0x35, 0x5D, 0x7C, 0x37, 0x37, 0x7C, 0x38, 0x28, 0x3F, 0x3A, 0x38, 0x5C, 0x64, 0x29, 0x3F, 0x7C, 0x39, 0x28, 0x3F, 0x3A, 0x39, 0x5C, 0x64, 0x29, 0x3F, 0x29, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x39, 0x7D, 0x32, 0x09, 0x39, 0x39, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x22, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x2A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x4D, 0x57, 0x50, 0x89, 0x02, 0x5A, 0x02, 0x30, 0x30, 0x62, 0x01, 0x30, 0x7A, 0x01, 0x30, 0x9A, 0x01, 0x2D, 0x0A, 0x12, 0x28, 0x5C, 0x64, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x06, 0x5B, 0x31, 0x33, 0x2D, 0x35, 0x5D, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x2C, 0x0A, 0x16, 0x28, 0x32, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x01, 0x32, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x28, 0x0A, 0x12, 0x28, 0x5C, 0x64, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x01, 0x37, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x2F, 0x0A, 0x16, 0x28, 0x5C, 0x64, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x2C, 0x34, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x2C, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x04, 0x5B, 0x38, 0x39, 0x5D, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0x9D, 0x0D, 0x0A, 0x19, 0x12, 0x0D, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x39, 0x2C, 0x31, 0x30, 0x7D, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x31, 0x31, 0x7D, 0x12, 0xC1, 0x03, 0x12, 0xA8, 0x03, 0x28, 0x3F, 0x3A, 0x33, 0x33, 0x7C, 0x35, 0x35, 0x7C, 0x38, 0x31, 0x29, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x7C, 0x28, 0x3F, 0x3A, 0x32, 0x28, 0x3F, 0x3A, 0x32, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x7C, 0x33, 0x5B, 0x31, 0x2D, 0x33, 0x35, 0x2D, 0x38, 0x5D, 0x7C, 0x34, 0x5B, 0x31, 0x33, 0x2D, 0x39, 0x5D, 0x7C, 0x37, 0x5B, 0x31, 0x2D, 0x36, 0x38, 0x39, 0x5D, 0x7C, 0x38, 0x5B, 0x31, 0x2D, 0x35, 0x38, 0x5D, 0x7C, 0x39, 0x5B, 0x34, 0x36, 0x37, 0x5D, 0x29, 0x7C, 0x33, 0x28, 0x3F, 0x3A, 0x31, 0x5B, 0x31, 0x2D, 0x37, 0x39, 0x5D, 0x7C, 0x5B, 0x32, 0x34, 0x35, 0x38, 0x5D, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x7C, 0x37, 0x5B, 0x31, 0x2D, 0x38, 0x5D, 0x7C, 0x39, 0x5B, 0x31, 0x2D, 0x35, 0x5D, 0x29, 0x7C, 0x34, 0x28, 0x3F, 0x3A, 0x31, 0x5B, 0x31, 0x2D, 0x35, 0x37, 0x2D, 0x39, 0x5D, 0x7C, 0x5B, 0x32, 0x34, 0x2D, 0x36, 0x5D, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x7C, 0x5B, 0x33, 0x37, 0x5D, 0x5B, 0x31, 0x2D, 0x38, 0x5D, 0x7C, 0x38, 0x5B, 0x31, 0x2D, 0x33, 0x35, 0x2D, 0x39, 0x5D, 0x7C, 0x39, 0x5B, 0x32, 0x2D, 0x36, 0x38, 0x39, 0x5D, 0x29, 0x7C, 0x35, 0x28, 0x3F, 0x3A, 0x38, 0x38, 0x7C, 0x39, 0x5B, 0x31, 0x2D, 0x37, 0x39, 0x5D, 0x29, 0x7C, 0x36, 0x28, 0x3F, 0x3A, 0x31, 0x5B, 0x32, 0x2D, 0x36, 0x38, 0x5D, 0x7C, 0x5B, 0x32, 0x33, 0x34, 0x5D, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x7C, 0x35, 0x5B, 0x31, 0x2D, 0x33, 0x36, 0x38, 0x39, 0x5D, 0x7C, 0x36, 0x5B, 0x31, 0x32, 0x34, 0x35, 0x37, 0x2D, 0x39, 0x5D, 0x7C, 0x37, 0x5B, 0x31, 0x2D, 0x37, 0x5D, 0x7C, 0x38, 0x5B, 0x36, 0x37, 0x5D, 0x7C, 0x39, 0x5B, 0x34, 0x2D, 0x38, 0x5D, 0x29, 0x7C, 0x37, 0x28, 0x3F, 0x3A, 0x5B, 0x31, 0x33, 0x34, 0x36, 0x37, 0x5D, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x7C, 0x32, 0x5B, 0x31, 0x2D, 0x38, 0x5D, 0x7C, 0x35, 0x5B, 0x31, 0x33, 0x2D, 0x39, 0x5D, 0x7C, 0x38, 0x5B, 0x31, 0x2D, 0x36, 0x39, 0x5D, 0x7C, 0x39, 0x5B, 0x31, 0x37, 0x5D, 0x29, 0x7C, 0x38, 0x28, 0x3F, 0x3A, 0x32, 0x5B, 0x31, 0x33, 0x2D, 0x36, 0x38, 0x39, 0x5D, 0x7C, 0x33, 0x5B, 0x31, 0x2D, 0x36, 0x5D, 0x7C, 0x34, 0x5B, 0x31, 0x32, 0x34, 0x2D, 0x36, 0x5D, 0x7C, 0x36, 0x5B, 0x31, 0x32, 0x34, 0x36, 0x2D, 0x39, 0x5D, 0x7C, 0x37, 0x5B, 0x31, 0x2D, 0x33, 0x37, 0x38, 0x5D, 0x7C, 0x39, 0x5B, 0x31, 0x32, 0x34, 0x37, 0x39, 0x5D, 0x29, 0x7C, 0x39, 0x28, 0x3F, 0x3A, 0x31, 0x5B, 0x33, 0x34, 0x36, 0x2D, 0x39, 0x5D, 0x7C, 0x32, 0x5B, 0x31, 0x2D, 0x34, 0x5D, 0x7C, 0x33, 0x5B, 0x32, 0x2D, 0x34, 0x36, 0x2D, 0x38, 0x5D, 0x7C, 0x35, 0x5B, 0x31, 0x33, 0x34, 0x38, 0x5D, 0x7C, 0x5B, 0x36, 0x39, 0x5D, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x7C, 0x37, 0x5B, 0x31, 0x32, 0x5D, 0x7C, 0x38, 0x5B, 0x31, 0x2D, 0x38, 0x5D, 0x29, 0x29, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x32, 0x32, 0x32, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x1A, 0xC5, 0x03, 0x12, 0xAD, 0x03, 0x31, 0x28, 0x3F, 0x3A, 0x28, 0x3F, 0x3A, 0x33, 0x33, 0x7C, 0x35, 0x35, 0x7C, 0x38, 0x31, 0x29, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x7C, 0x28, 0x3F, 0x3A, 0x32, 0x28, 0x3F, 0x3A, 0x32, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x7C, 0x33, 0x5B, 0x31, 0x2D, 0x33, 0x35, 0x2D, 0x38, 0x5D, 0x7C, 0x34, 0x5B, 0x31, 0x33, 0x2D, 0x39, 0x5D, 0x7C, 0x37, 0x5B, 0x31, 0x2D, 0x36, 0x38, 0x39, 0x5D, 0x7C, 0x38, 0x5B, 0x31, 0x2D, 0x35, 0x38, 0x5D, 0x7C, 0x39, 0x5B, 0x34, 0x36, 0x37, 0x5D, 0x29, 0x7C, 0x33, 0x28, 0x3F, 0x3A, 0x31, 0x5B, 0x31, 0x2D, 0x37, 0x39, 0x5D, 0x7C, 0x5B, 0x32, 0x34, 0x35, 0x38, 0x5D, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x7C, 0x37, 0x5B, 0x31, 0x2D, 0x38, 0x5D, 0x7C, 0x39, 0x5B, 0x31, 0x2D, 0x35, 0x5D, 0x29, 0x7C, 0x34, 0x28, 0x3F, 0x3A, 0x31, 0x5B, 0x31, 0x2D, 0x35, 0x37, 0x2D, 0x39, 0x5D, 0x7C, 0x5B, 0x32, 0x34, 0x2D, 0x36, 0x5D, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x7C, 0x5B, 0x33, 0x37, 0x5D, 0x5B, 0x31, 0x2D, 0x38, 0x5D, 0x7C, 0x38, 0x5B, 0x31, 0x2D, 0x33, 0x35, 0x2D, 0x39, 0x5D, 0x7C, 0x39, 0x5B, 0x32, 0x2D, 0x36, 0x38, 0x39, 0x5D, 0x29, 0x7C, 0x35, 0x28, 0x3F, 0x3A, 0x38, 0x38, 0x7C, 0x39, 0x5B, 0x31, 0x2D, 0x37, 0x39, 0x5D, 0x29, 0x7C, 0x36, 0x28, 0x3F, 0x3A, 0x31, 0x5B, 0x32, 0x2D, 0x36, 0x38, 0x5D, 0x7C, 0x5B, 0x32, 0x2D, 0x34, 0x5D, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x7C, 0x35, 0x5B, 0x31, 0x2D, 0x33, 0x36, 0x38, 0x39, 0x5D, 0x7C, 0x36, 0x5B, 0x31, 0x32, 0x34, 0x35, 0x37, 0x2D, 0x39, 0x5D, 0x7C, 0x37, 0x5B, 0x31, 0x2D, 0x37, 0x5D, 0x7C, 0x38, 0x5B, 0x36, 0x37, 0x5D, 0x7C, 0x39, 0x5B, 0x34, 0x2D, 0x38, 0x5D, 0x29, 0x7C, 0x37, 0x28, 0x3F, 0x3A, 0x5B, 0x31, 0x33, 0x34, 0x36, 0x37, 0x5D, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x7C, 0x32, 0x5B, 0x31, 0x2D, 0x38, 0x5D, 0x7C, 0x35, 0x5B, 0x31, 0x33, 0x2D, 0x39, 0x5D, 0x7C, 0x38, 0x5B, 0x31, 0x2D, 0x36, 0x39, 0x5D, 0x7C, 0x39, 0x5B, 0x31, 0x37, 0x5D, 0x29, 0x7C, 0x38, 0x28, 0x3F, 0x3A, 0x32, 0x5B, 0x31, 0x33, 0x2D, 0x36, 0x38, 0x39, 0x5D, 0x7C, 0x33, 0x5B, 0x31, 0x2D, 0x36, 0x5D, 0x7C, 0x34, 0x5B, 0x31, 0x32, 0x34, 0x2D, 0x36, 0x5D, 0x7C, 0x36, 0x5B, 0x31, 0x32, 0x34, 0x36, 0x2D, 0x39, 0x5D, 0x7C, 0x37, 0x5B, 0x31, 0x2D, 0x33, 0x37, 0x38, 0x5D, 0x7C, 0x39, 0x5B, 0x31, 0x32, 0x34, 0x37, 0x39, 0x5D, 0x29, 0x7C, 0x39, 0x28, 0x3F, 0x3A, 0x31, 0x5B, 0x33, 0x34, 0x36, 0x2D, 0x39, 0x5D, 0x7C, 0x32, 0x5B, 0x31, 0x2D, 0x34, 0x5D, 0x7C, 0x33, 0x5B, 0x32, 0x2D, 0x34, 0x36, 0x2D, 0x38, 0x5D, 0x7C, 0x35, 0x5B, 0x31, 0x33, 0x34, 0x38, 0x5D, 0x7C, 0x5B, 0x36, 0x39, 0x5D, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x7C, 0x37, 0x5B, 0x31, 0x32, 0x5D, 0x7C, 0x38, 0x5B, 0x31, 0x2D, 0x38, 0x5D, 0x29, 0x29, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x29, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x31, 0x7D, 0x32, 0x0B, 0x31, 0x32, 0x32, 0x32, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x22, 0x1E, 0x12, 0x08, 0x38, 0x30, 0x30, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x38, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x2A, 0x1E, 0x12, 0x08, 0x39, 0x30, 0x30, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x39, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x4D, 0x58, 0x50, 0x34, 0x5A, 0x05, 0x30, 0x5B, 0x30, 0x39, 0x5D, 0x62, 0x02, 0x30, 0x31, 0x7A, 0x14, 0x30, 0x5B, 0x31, 0x32, 0x5D, 0x7C, 0x30, 0x34, 0x5B, 0x34, 0x35, 0x5D, 0x28, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x29, 0x82, 0x01, 0x03, 0x31, 0x24, 0x31, 0x9A, 0x01, 0x36, 0x0A, 0x17, 0x28, 0x5B, 0x33, 0x35, 0x38, 0x5D, 0x5C, 0x64, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x08, 0x33, 0x33, 0x7C, 0x35, 0x35, 0x7C, 0x38, 0x31, 0x22, 0x05, 0x30, 0x31, 0x20, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x55, 0x0A, 0x15, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x29, 0x5B, 0x32, 0x34, 0x36, 0x37, 0x5D, 0x7C, 0x33, 0x5B, 0x31, 0x32, 0x34, 0x35, 0x37, 0x2D, 0x39, 0x5D, 0x7C, 0x35, 0x5B, 0x38, 0x39, 0x5D, 0x7C, 0x38, 0x5B, 0x30, 0x32, 0x2D, 0x39, 0x5D, 0x7C, 0x39, 0x5B, 0x30, 0x2D, 0x33, 0x35, 0x2D, 0x39, 0x5D, 0x22, 0x05, 0x30, 0x31, 0x20, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x3D, 0x0A, 0x18, 0x31, 0x28, 0x5B, 0x33, 0x35, 0x38, 0x5D, 0x5C, 0x64, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x0C, 0x30, 0x34, 0x35, 0x20, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x0D, 0x31, 0x28, 0x3F, 0x3A, 0x33, 0x33, 0x7C, 0x35, 0x35, 0x7C, 0x38, 0x31, 0x29, 0x22, 0x02, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x5B, 0x0A, 0x16, 0x31, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x0C, 0x30, 0x34, 0x35, 0x20, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x2D, 0x31, 0x28, 0x3F, 0x3A, 0x5B, 0x32, 0x34, 0x36, 0x37, 0x5D, 0x7C, 0x33, 0x5B, 0x31, 0x32, 0x34, 0x35, 0x37, 0x2D, 0x39, 0x5D, 0x7C, 0x35, 0x5B, 0x38, 0x39, 0x5D, 0x7C, 0x38, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x7C, 0x39, 0x5B, 0x31, 0x2D, 0x33, 0x35, 0x2D, 0x39, 0x5D, 0x29, 0x22, 0x02, 0x24, 0x31, 0x2A, 0x00, 0xA2, 0x01, 0x2F, 0x0A, 0x17, 0x28, 0x5B, 0x33, 0x35, 0x38, 0x5D, 0x5C, 0x64, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x08, 0x33, 0x33, 0x7C, 0x35, 0x35, 0x7C, 0x38, 0x31, 0x2A, 0x00, 0xA2, 0x01, 0x4E, 0x0A, 0x15, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x29, 0x5B, 0x32, 0x34, 0x36, 0x37, 0x5D, 0x7C, 0x33, 0x5B, 0x31, 0x32, 0x34, 0x35, 0x37, 0x2D, 0x39, 0x5D, 0x7C, 0x35, 0x5B, 0x38, 0x39, 0x5D, 0x7C, 0x38, 0x5B, 0x30, 0x32, 0x2D, 0x39, 0x5D, 0x7C, 0x39, 0x5B, 0x30, 0x2D, 0x33, 0x35, 0x2D, 0x39, 0x5D, 0x2A, 0x00, 0xA2, 0x01, 0x3A, 0x0A, 0x1A, 0x28, 0x31, 0x29, 0x28, 0x5B, 0x33, 0x35, 0x38, 0x5D, 0x5C, 0x64, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x0B, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x20, 0x24, 0x34, 0x1A, 0x0D, 0x31, 0x28, 0x3F, 0x3A, 0x33, 0x33, 0x7C, 0x35, 0x35, 0x7C, 0x38, 0x31, 0x29, 0x2A, 0x00, 0xA2, 0x01, 0x58, 0x0A, 0x18, 0x28, 0x31, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x0B, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x20, 0x24, 0x34, 0x1A, 0x2D, 0x31, 0x28, 0x3F, 0x3A, 0x5B, 0x32, 0x34, 0x36, 0x37, 0x5D, 0x7C, 0x33, 0x5B, 0x31, 0x32, 0x34, 0x35, 0x37, 0x2D, 0x39, 0x5D, 0x7C, 0x35, 0x5B, 0x38, 0x39, 0x5D, 0x7C, 0x38, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x7C, 0x39, 0x5B, 0x31, 0x2D, 0x33, 0x35, 0x2D, 0x39, 0x5D, 0x29, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xBD, 0x04, 0x0A, 0x19, 0x12, 0x0D, 0x5B, 0x31, 0x33, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x39, 0x7D, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x36, 0x2C, 0x31, 0x30, 0x7D, 0x12, 0x35, 0x12, 0x1F, 0x28, 0x3F, 0x3A, 0x33, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x7C, 0x5B, 0x34, 0x2D, 0x37, 0x39, 0x5D, 0x5C, 0x64, 0x7C, 0x38, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x29, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x36, 0x2C, 0x39, 0x7D, 0x32, 0x09, 0x33, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x1A, 0x22, 0x12, 0x0E, 0x31, 0x5B, 0x30, 0x2D, 0x34, 0x36, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x22, 0x22, 0x12, 0x0C, 0x31, 0x5B, 0x33, 0x38, 0x5D, 0x30, 0x30, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x31, 0x33, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x2A, 0x1F, 0x12, 0x09, 0x31, 0x36, 0x30, 0x30, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x31, 0x36, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x1F, 0x12, 0x09, 0x31, 0x37, 0x30, 0x30, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x31, 0x37, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x42, 0x1E, 0x12, 0x08, 0x31, 0x35, 0x34, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x31, 0x35, 0x34, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x4A, 0x02, 0x4D, 0x59, 0x50, 0x3C, 0x5A, 0x02, 0x30, 0x30, 0x62, 0x01, 0x30, 0x7A, 0x01, 0x30, 0x9A, 0x01, 0x31, 0x0A, 0x16, 0x28, 0x5B, 0x34, 0x2D, 0x37, 0x39, 0x5D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x2D, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x06, 0x5B, 0x34, 0x2D, 0x37, 0x39, 0x5D, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x27, 0x0A, 0x11, 0x28, 0x33, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x2D, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x01, 0x33, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x3D, 0x0A, 0x18, 0x28, 0x5B, 0x31, 0x38, 0x5D, 0x5C, 0x64, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x2C, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x2D, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x10, 0x31, 0x5B, 0x30, 0x2D, 0x34, 0x36, 0x2D, 0x39, 0x5D, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x7C, 0x38, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x38, 0x0A, 0x1B, 0x28, 0x31, 0x29, 0x28, 0x5B, 0x33, 0x36, 0x2D, 0x38, 0x5D, 0x30, 0x30, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x0B, 0x24, 0x31, 0x2D, 0x24, 0x32, 0x2D, 0x24, 0x33, 0x2D, 0x24, 0x34, 0x1A, 0x08, 0x31, 0x5B, 0x33, 0x36, 0x2D, 0x38, 0x5D, 0x30, 0x22, 0x00, 0x2A, 0x00, 0x9A, 0x01, 0x2A, 0x0A, 0x13, 0x28, 0x31, 0x35, 0x34, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x2D, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x02, 0x31, 0x35, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xC3, 0x02, 0x0A, 0x16, 0x12, 0x0B, 0x5B, 0x32, 0x38, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x38, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x38, 0x2C, 0x39, 0x7D, 0x12, 0x38, 0x12, 0x25, 0x32, 0x28, 0x3F, 0x3A, 0x5B, 0x31, 0x33, 0x34, 0x36, 0x5D, 0x5C, 0x64, 0x7C, 0x35, 0x5B, 0x30, 0x2D, 0x32, 0x5D, 0x7C, 0x5B, 0x37, 0x38, 0x5D, 0x5B, 0x31, 0x32, 0x5D, 0x7C, 0x39, 0x33, 0x29, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x32, 0x31, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x1A, 0x1E, 0x12, 0x0A, 0x38, 0x5B, 0x32, 0x34, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x38, 0x32, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x22, 0x1C, 0x12, 0x08, 0x38, 0x30, 0x30, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x38, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x2A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x4D, 0x5A, 0x50, 0x82, 0x02, 0x5A, 0x02, 0x30, 0x30, 0x9A, 0x01, 0x31, 0x0A, 0x18, 0x28, 0x5B, 0x32, 0x38, 0x5D, 0x5C, 0x64, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x2C, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x07, 0x32, 0x7C, 0x38, 0x5B, 0x32, 0x34, 0x5D, 0x22, 0x00, 0x2A, 0x00, 0x9A, 0x01, 0x28, 0x0A, 0x14, 0x28, 0x38, 0x30, 0x5C, 0x64, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x02, 0x38, 0x30, 0x22, 0x00, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0x81, 0x06, 0x0A, 0x16, 0x12, 0x0B, 0x5B, 0x36, 0x38, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x38, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x38, 0x2C, 0x39, 0x7D, 0x12, 0xF9, 0x02, 0x12, 0xE2, 0x02, 0x36, 0x28, 0x3F, 0x3A, 0x31, 0x28, 0x3F, 0x3A, 0x31, 0x37, 0x7C, 0x32, 0x28, 0x3F, 0x3A, 0x5B, 0x30, 0x31, 0x38, 0x39, 0x5D, 0x5C, 0x64, 0x7C, 0x5B, 0x32, 0x33, 0x2D, 0x36, 0x5D, 0x7C, 0x37, 0x5C, 0x64, 0x3F, 0x29, 0x7C, 0x33, 0x28, 0x3F, 0x3A, 0x32, 0x5C, 0x64, 0x7C, 0x33, 0x5B, 0x33, 0x37, 0x38, 0x5D, 0x29, 0x7C, 0x34, 0x5B, 0x30, 0x31, 0x5D, 0x7C, 0x36, 0x39, 0x7C, 0x37, 0x5B, 0x30, 0x31, 0x34, 0x5D, 0x29, 0x7C, 0x32, 0x28, 0x3F, 0x3A, 0x31, 0x37, 0x7C, 0x32, 0x35, 0x7C, 0x35, 0x28, 0x3F, 0x3A, 0x5B, 0x30, 0x2D, 0x33, 0x36, 0x2D, 0x38, 0x5D, 0x7C, 0x34, 0x5C, 0x64, 0x3F, 0x29, 0x7C, 0x36, 0x39, 0x7C, 0x37, 0x30, 0x29, 0x7C, 0x33, 0x28, 0x3F, 0x3A, 0x31, 0x37, 0x7C, 0x32, 0x28, 0x3F, 0x3A, 0x5B, 0x30, 0x32, 0x33, 0x37, 0x5D, 0x5C, 0x64, 0x3F, 0x7C, 0x5B, 0x31, 0x34, 0x2D, 0x36, 0x38, 0x39, 0x5D, 0x29, 0x7C, 0x33, 0x34, 0x7C, 0x36, 0x5B, 0x32, 0x39, 0x5D, 0x7C, 0x37, 0x5B, 0x30, 0x31, 0x5D, 0x7C, 0x38, 0x31, 0x29, 0x7C, 0x34, 0x28, 0x3F, 0x3A, 0x31, 0x37, 0x7C, 0x32, 0x28, 0x3F, 0x3A, 0x5B, 0x30, 0x31, 0x32, 0x5D, 0x7C, 0x37, 0x3F, 0x29, 0x7C, 0x34, 0x28, 0x3F, 0x3A, 0x5B, 0x30, 0x36, 0x5D, 0x7C, 0x31, 0x5C, 0x64, 0x29, 0x7C, 0x35, 0x28, 0x3F, 0x3A, 0x5B, 0x30, 0x31, 0x33, 0x35, 0x37, 0x5D, 0x7C, 0x5B, 0x32, 0x35, 0x5D, 0x5C, 0x64, 0x3F, 0x29, 0x7C, 0x36, 0x39, 0x7C, 0x37, 0x5B, 0x30, 0x31, 0x5D, 0x29, 0x7C, 0x35, 0x28, 0x3F, 0x3A, 0x31, 0x37, 0x7C, 0x32, 0x28, 0x3F, 0x3A, 0x5B, 0x30, 0x34, 0x35, 0x39, 0x5D, 0x7C, 0x5B, 0x32, 0x33, 0x36, 0x37, 0x38, 0x5D, 0x5C, 0x64, 0x3F, 0x29, 0x7C, 0x36, 0x39, 0x7C, 0x37, 0x5B, 0x30, 0x31, 0x5D, 0x29, 0x7C, 0x36, 0x28, 0x3F, 0x3A, 0x31, 0x37, 0x7C, 0x32, 0x28, 0x3F, 0x3A, 0x35, 0x7C, 0x36, 0x5C, 0x64, 0x3F, 0x29, 0x7C, 0x33, 0x38, 0x7C, 0x34, 0x32, 0x7C, 0x36, 0x39, 0x7C, 0x37, 0x5B, 0x30, 0x31, 0x5D, 0x29, 0x7C, 0x37, 0x28, 0x3F, 0x3A, 0x31, 0x37, 0x7C, 0x32, 0x28, 0x3F, 0x3A, 0x5B, 0x35, 0x36, 0x39, 0x5D, 0x7C, 0x5B, 0x32, 0x33, 0x34, 0x5D, 0x5C, 0x64, 0x3F, 0x29, 0x7C, 0x33, 0x28, 0x3F, 0x3A, 0x30, 0x5C, 0x64, 0x3F, 0x7C, 0x5B, 0x31, 0x33, 0x5D, 0x29, 0x7C, 0x36, 0x39, 0x7C, 0x37, 0x5B, 0x30, 0x31, 0x5D, 0x29, 0x29, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x38, 0x2C, 0x39, 0x7D, 0x32, 0x09, 0x36, 0x31, 0x32, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x1A, 0x26, 0x12, 0x12, 0x28, 0x3F, 0x3A, 0x36, 0x30, 0x7C, 0x38, 0x5B, 0x31, 0x32, 0x35, 0x5D, 0x29, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x38, 0x31, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x22, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x2A, 0x1D, 0x12, 0x09, 0x38, 0x37, 0x30, 0x31, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x38, 0x37, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x1B, 0x12, 0x08, 0x38, 0x38, 0x36, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x38, 0x38, 0x36, 0x31, 0x32, 0x33, 0x34, 0x35, 0x4A, 0x02, 0x4E, 0x41, 0x50, 0x88, 0x02, 0x5A, 0x02, 0x30, 0x30, 0x62, 0x01, 0x30, 0x7A, 0x01, 0x30, 0x9A, 0x01, 0x2E, 0x0A, 0x13, 0x28, 0x38, 0x5C, 0x64, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x06, 0x38, 0x5B, 0x31, 0x32, 0x35, 0x5D, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x2B, 0x0A, 0x15, 0x28, 0x36, 0x5C, 0x64, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x2C, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x01, 0x36, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x29, 0x0A, 0x12, 0x28, 0x38, 0x38, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x02, 0x38, 0x38, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x2B, 0x0A, 0x13, 0x28, 0x38, 0x37, 0x30, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x03, 0x38, 0x37, 0x30, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0x6D, 0x0A, 0x00, 0x12, 0x00, 0x1A, 0x00, 0x22, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x2A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x4E, 0x43, 0x50, 0xAF, 0x05, 0x5A, 0x02, 0x30, 0x30, 0x62, 0x01, 0x30, 0x7A, 0x01, 0x30, 0x90, 0x01, 0x01, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0x93, 0x03, 0x0A, 0x13, 0x12, 0x0A, 0x5B, 0x30, 0x32, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x12, 0x6F, 0x12, 0x5C, 0x32, 0x28, 0x3F, 0x3A, 0x30, 0x28, 0x3F, 0x3A, 0x32, 0x30, 0x7C, 0x33, 0x5B, 0x31, 0x2D, 0x37, 0x5D, 0x7C, 0x34, 0x5B, 0x31, 0x33, 0x34, 0x5D, 0x7C, 0x35, 0x5B, 0x31, 0x34, 0x5D, 0x7C, 0x36, 0x5B, 0x31, 0x34, 0x35, 0x37, 0x38, 0x5D, 0x7C, 0x37, 0x5B, 0x31, 0x2D, 0x35, 0x37, 0x38, 0x5D, 0x29, 0x7C, 0x31, 0x28, 0x3F, 0x3A, 0x34, 0x5B, 0x31, 0x34, 0x35, 0x5D, 0x7C, 0x35, 0x5B, 0x31, 0x34, 0x5D, 0x7C, 0x36, 0x5B, 0x31, 0x34, 0x2D, 0x36, 0x38, 0x5D, 0x7C, 0x37, 0x5B, 0x31, 0x36, 0x39, 0x5D, 0x7C, 0x38, 0x38, 0x29, 0x29, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x32, 0x30, 0x32, 0x30, 0x31, 0x32, 0x33, 0x34, 0x1A, 0x20, 0x12, 0x0D, 0x39, 0x5B, 0x30, 0x33, 0x34, 0x36, 0x37, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x39, 0x33, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x22, 0x1A, 0x12, 0x07, 0x30, 0x38, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x30, 0x38, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x2A, 0x1A, 0x12, 0x07, 0x30, 0x39, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x30, 0x39, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x4E, 0x45, 0x50, 0xE3, 0x01, 0x5A, 0x02, 0x30, 0x30, 0x9A, 0x01, 0x3A, 0x0A, 0x1E, 0x28, 0x5B, 0x30, 0x32, 0x39, 0x5D, 0x5C, 0x64, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x12, 0x0B, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x20, 0x24, 0x34, 0x1A, 0x07, 0x5B, 0x32, 0x39, 0x5D, 0x7C, 0x30, 0x39, 0x22, 0x00, 0x2A, 0x00, 0x9A, 0x01, 0x26, 0x0A, 0x12, 0x28, 0x30, 0x38, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x02, 0x30, 0x38, 0x22, 0x00, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xD0, 0x01, 0x01, 0x0A, 0x86, 0x02, 0x0A, 0x14, 0x12, 0x09, 0x5B, 0x31, 0x33, 0x5D, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x35, 0x2C, 0x36, 0x7D, 0x12, 0x35, 0x12, 0x22, 0x28, 0x3F, 0x3A, 0x31, 0x28, 0x3F, 0x3A, 0x30, 0x36, 0x7C, 0x31, 0x37, 0x7C, 0x32, 0x38, 0x7C, 0x33, 0x39, 0x29, 0x7C, 0x33, 0x5B, 0x30, 0x31, 0x32, 0x5D, 0x5C, 0x64, 0x29, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x35, 0x2C, 0x36, 0x7D, 0x32, 0x06, 0x31, 0x30, 0x36, 0x36, 0x30, 0x39, 0x1A, 0x1A, 0x12, 0x07, 0x33, 0x38, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x35, 0x2C, 0x36, 0x7D, 0x32, 0x06, 0x33, 0x38, 0x31, 0x32, 0x33, 0x34, 0x22, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x2A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x4E, 0x46, 0x50, 0xA0, 0x05, 0x5A, 0x02, 0x30, 0x30, 0x9A, 0x01, 0x1E, 0x0A, 0x0E, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x1A, 0x01, 0x31, 0x22, 0x00, 0x2A, 0x00, 0x9A, 0x01, 0x1B, 0x0A, 0x0B, 0x28, 0x5C, 0x64, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x1A, 0x01, 0x33, 0x22, 0x00, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0x82, 0x06, 0x0A, 0x26, 0x12, 0x1A, 0x5B, 0x31, 0x2D, 0x36, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x35, 0x2C, 0x38, 0x7D, 0x7C, 0x5B, 0x37, 0x38, 0x5D, 0x5C, 0x64, 0x7B, 0x35, 0x2C, 0x31, 0x33, 0x7D, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x35, 0x2C, 0x31, 0x34, 0x7D, 0x12, 0x96, 0x01, 0x12, 0x80, 0x01, 0x5B, 0x31, 0x32, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x2C, 0x37, 0x7D, 0x7C, 0x39, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x7C, 0x28, 0x3F, 0x3A, 0x34, 0x5B, 0x30, 0x32, 0x33, 0x35, 0x36, 0x38, 0x5D, 0x7C, 0x35, 0x5B, 0x30, 0x32, 0x33, 0x36, 0x38, 0x5D, 0x7C, 0x36, 0x5B, 0x30, 0x32, 0x2D, 0x34, 0x36, 0x39, 0x5D, 0x7C, 0x37, 0x5B, 0x35, 0x36, 0x39, 0x5D, 0x7C, 0x38, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x29, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x7C, 0x28, 0x3F, 0x3A, 0x34, 0x5B, 0x34, 0x37, 0x5D, 0x7C, 0x35, 0x5B, 0x31, 0x34, 0x35, 0x37, 0x39, 0x5D, 0x7C, 0x36, 0x5B, 0x31, 0x35, 0x37, 0x38, 0x5D, 0x7C, 0x37, 0x5B, 0x30, 0x2D, 0x33, 0x35, 0x37, 0x5D, 0x29, 0x5C, 0x64, 0x7B, 0x35, 0x2C, 0x36, 0x7D, 0x7C, 0x28, 0x3F, 0x3A, 0x37, 0x38, 0x7C, 0x34, 0x31, 0x29, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x35, 0x2C, 0x39, 0x7D, 0x32, 0x08, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x1A, 0x4A, 0x12, 0x34, 0x28, 0x3F, 0x3A, 0x37, 0x30, 0x28, 0x3F, 0x3A, 0x5B, 0x33, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7C, 0x32, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x29, 0x7C, 0x38, 0x28, 0x3F, 0x3A, 0x30, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x7C, 0x31, 0x5B, 0x32, 0x33, 0x36, 0x38, 0x39, 0x5D, 0x29, 0x5C, 0x64, 0x29, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x38, 0x30, 0x32, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x22, 0x25, 0x12, 0x0B, 0x38, 0x30, 0x30, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x31, 0x31, 0x7D, 0x1A, 0x09, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x2C, 0x31, 0x34, 0x7D, 0x32, 0x0B, 0x38, 0x30, 0x30, 0x31, 0x37, 0x35, 0x39, 0x31, 0x37, 0x35, 0x39, 0x2A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x24, 0x12, 0x0B, 0x37, 0x30, 0x30, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x31, 0x31, 0x7D, 0x1A, 0x09, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x2C, 0x31, 0x34, 0x7D, 0x32, 0x0A, 0x37, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x4E, 0x47, 0x50, 0xEA, 0x01, 0x5A, 0x03, 0x30, 0x30, 0x39, 0x62, 0x01, 0x30, 0x7A, 0x01, 0x30, 0x9A, 0x01, 0x31, 0x0A, 0x17, 0x28, 0x5B, 0x31, 0x32, 0x39, 0x5D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x2C, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x05, 0x5B, 0x31, 0x32, 0x39, 0x5D, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x4D, 0x0A, 0x19, 0x28, 0x5B, 0x33, 0x2D, 0x38, 0x5D, 0x5C, 0x64, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x2C, 0x33, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x1F, 0x5B, 0x33, 0x2D, 0x36, 0x5D, 0x7C, 0x37, 0x28, 0x3F, 0x3A, 0x5B, 0x31, 0x2D, 0x37, 0x39, 0x5D, 0x7C, 0x30, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x29, 0x7C, 0x38, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x38, 0x0A, 0x1B, 0x28, 0x5B, 0x37, 0x38, 0x5D, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x2C, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x08, 0x37, 0x30, 0x7C, 0x38, 0x5B, 0x30, 0x31, 0x5D, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x33, 0x0A, 0x18, 0x28, 0x5B, 0x37, 0x38, 0x5D, 0x30, 0x30, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x2C, 0x35, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x06, 0x5B, 0x37, 0x38, 0x5D, 0x30, 0x30, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x33, 0x0A, 0x18, 0x28, 0x5B, 0x37, 0x38, 0x5D, 0x30, 0x30, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x35, 0x2C, 0x36, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x06, 0x5B, 0x37, 0x38, 0x5D, 0x30, 0x30, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x29, 0x0A, 0x12, 0x28, 0x37, 0x38, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x02, 0x37, 0x38, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xDB, 0x01, 0x0A, 0x13, 0x12, 0x0A, 0x5B, 0x31, 0x32, 0x38, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x12, 0x19, 0x12, 0x06, 0x32, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x32, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x1A, 0x19, 0x12, 0x06, 0x38, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x38, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x22, 0x1C, 0x12, 0x09, 0x31, 0x38, 0x30, 0x30, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x31, 0x38, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x2A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x4E, 0x49, 0x50, 0xF9, 0x03, 0x5A, 0x02, 0x30, 0x30, 0x9A, 0x01, 0x1B, 0x0A, 0x0E, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x22, 0x00, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xAF, 0x04, 0x0A, 0x18, 0x12, 0x0C, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x2C, 0x39, 0x7D, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x31, 0x30, 0x7D, 0x12, 0x4F, 0x12, 0x3B, 0x28, 0x3F, 0x3A, 0x31, 0x5B, 0x30, 0x31, 0x33, 0x35, 0x2D, 0x38, 0x5D, 0x7C, 0x32, 0x5B, 0x30, 0x32, 0x2D, 0x36, 0x39, 0x5D, 0x7C, 0x33, 0x5B, 0x30, 0x2D, 0x36, 0x38, 0x5D, 0x7C, 0x34, 0x5B, 0x30, 0x31, 0x33, 0x35, 0x2D, 0x39, 0x5D, 0x7C, 0x5B, 0x35, 0x37, 0x5D, 0x5C, 0x64, 0x7C, 0x38, 0x5B, 0x34, 0x37, 0x38, 0x5D, 0x29, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x31, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x1A, 0x20, 0x12, 0x0C, 0x36, 0x5B, 0x31, 0x2D, 0x35, 0x38, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x36, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x22, 0x1F, 0x12, 0x0A, 0x38, 0x30, 0x30, 0x5C, 0x64, 0x7B, 0x34, 0x2C, 0x37, 0x7D, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x31, 0x30, 0x7D, 0x32, 0x07, 0x38, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x2A, 0x23, 0x12, 0x0E, 0x39, 0x30, 0x5B, 0x30, 0x36, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x34, 0x2C, 0x37, 0x7D, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x31, 0x30, 0x7D, 0x32, 0x07, 0x39, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x10, 0x12, 0x07, 0x38, 0x35, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x4A, 0x02, 0x4E, 0x4C, 0x50, 0x1F, 0x5A, 0x02, 0x30, 0x30, 0x62, 0x01, 0x30, 0x7A, 0x01, 0x30, 0x9A, 0x01, 0x5E, 0x0A, 0x19, 0x28, 0x5B, 0x31, 0x2D, 0x35, 0x37, 0x38, 0x5D, 0x5C, 0x64, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x30, 0x31, 0x5B, 0x30, 0x33, 0x35, 0x5D, 0x7C, 0x32, 0x5B, 0x30, 0x33, 0x34, 0x36, 0x5D, 0x7C, 0x33, 0x5B, 0x30, 0x33, 0x35, 0x36, 0x38, 0x5D, 0x7C, 0x34, 0x5B, 0x30, 0x33, 0x35, 0x36, 0x5D, 0x7C, 0x35, 0x5B, 0x30, 0x33, 0x35, 0x38, 0x5D, 0x7C, 0x37, 0x7C, 0x38, 0x5B, 0x34, 0x35, 0x38, 0x5D, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x56, 0x0A, 0x1A, 0x28, 0x5B, 0x31, 0x2D, 0x35, 0x5D, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x27, 0x31, 0x5B, 0x31, 0x36, 0x2D, 0x38, 0x5D, 0x7C, 0x32, 0x5B, 0x32, 0x35, 0x39, 0x5D, 0x7C, 0x33, 0x5B, 0x31, 0x32, 0x34, 0x5D, 0x7C, 0x34, 0x5B, 0x31, 0x37, 0x2D, 0x39, 0x5D, 0x7C, 0x35, 0x5B, 0x31, 0x32, 0x34, 0x36, 0x37, 0x39, 0x5D, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x1D, 0x0A, 0x0A, 0x28, 0x36, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x1A, 0x01, 0x36, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x28, 0x0A, 0x12, 0x28, 0x5B, 0x38, 0x39, 0x5D, 0x30, 0x5C, 0x64, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x2C, 0x37, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x1A, 0x04, 0x38, 0x30, 0x7C, 0x39, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0x8D, 0x04, 0x0A, 0x24, 0x12, 0x11, 0x30, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x7C, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x0F, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x28, 0x3F, 0x3A, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x3F, 0x12, 0x47, 0x12, 0x34, 0x28, 0x3F, 0x3A, 0x32, 0x5B, 0x31, 0x2D, 0x34, 0x5D, 0x7C, 0x33, 0x5B, 0x31, 0x2D, 0x33, 0x35, 0x37, 0x38, 0x5D, 0x7C, 0x35, 0x5B, 0x31, 0x2D, 0x33, 0x35, 0x2D, 0x37, 0x5D, 0x7C, 0x36, 0x5B, 0x31, 0x2D, 0x34, 0x36, 0x37, 0x39, 0x5D, 0x7C, 0x37, 0x5B, 0x30, 0x2D, 0x38, 0x5D, 0x29, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x32, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x1A, 0x28, 0x12, 0x15, 0x28, 0x3F, 0x3A, 0x34, 0x5B, 0x30, 0x31, 0x35, 0x2D, 0x38, 0x5D, 0x7C, 0x39, 0x5C, 0x64, 0x29, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x34, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x22, 0x1E, 0x12, 0x0B, 0x38, 0x30, 0x5B, 0x30, 0x31, 0x5D, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x38, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x2A, 0x1E, 0x12, 0x0B, 0x38, 0x32, 0x5B, 0x30, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x38, 0x32, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x32, 0x2D, 0x12, 0x1A, 0x38, 0x31, 0x30, 0x28, 0x3F, 0x3A, 0x30, 0x5B, 0x30, 0x2D, 0x36, 0x5D, 0x7C, 0x5B, 0x32, 0x2D, 0x38, 0x5D, 0x5C, 0x64, 0x29, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x38, 0x31, 0x30, 0x32, 0x31, 0x32, 0x33, 0x34, 0x3A, 0x1B, 0x12, 0x08, 0x38, 0x38, 0x30, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x38, 0x38, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x4E, 0x4F, 0x50, 0x2F, 0x5A, 0x02, 0x30, 0x30, 0x9A, 0x01, 0x31, 0x0A, 0x1A, 0x28, 0x5B, 0x34, 0x38, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x05, 0x5B, 0x34, 0x38, 0x39, 0x5D, 0x22, 0x00, 0x2A, 0x00, 0x9A, 0x01, 0x3C, 0x0A, 0x20, 0x28, 0x5B, 0x32, 0x33, 0x35, 0x2D, 0x37, 0x5D, 0x5C, 0x64, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x12, 0x0B, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x20, 0x24, 0x34, 0x1A, 0x07, 0x5B, 0x32, 0x33, 0x35, 0x2D, 0x37, 0x5D, 0x22, 0x00, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xB0, 0x01, 0x01, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x42, 0x12, 0x28, 0x30, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x7C, 0x38, 0x31, 0x28, 0x3F, 0x3A, 0x30, 0x28, 0x3F, 0x3A, 0x30, 0x5B, 0x37, 0x2D, 0x39, 0x5D, 0x7C, 0x31, 0x5C, 0x64, 0x29, 0x7C, 0x35, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x1A, 0x0F, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x28, 0x3F, 0x3A, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x3F, 0x32, 0x05, 0x30, 0x31, 0x32, 0x33, 0x34, 0xD0, 0x01, 0x01, 0x0A, 0xBF, 0x03, 0x0A, 0x24, 0x12, 0x18, 0x5B, 0x31, 0x2D, 0x38, 0x5D, 0x5C, 0x64, 0x7B, 0x35, 0x2C, 0x37, 0x7D, 0x7C, 0x39, 0x38, 0x5B, 0x34, 0x35, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x36, 0x2C, 0x31, 0x30, 0x7D, 0x12, 0x6C, 0x12, 0x57, 0x28, 0x3F, 0x3A, 0x31, 0x5B, 0x30, 0x31, 0x34, 0x2D, 0x36, 0x5D, 0x7C, 0x32, 0x5B, 0x31, 0x33, 0x2D, 0x37, 0x39, 0x5D, 0x7C, 0x33, 0x5B, 0x31, 0x33, 0x35, 0x2D, 0x38, 0x5D, 0x7C, 0x34, 0x5B, 0x31, 0x34, 0x36, 0x2D, 0x39, 0x5D, 0x7C, 0x35, 0x5B, 0x31, 0x33, 0x35, 0x2D, 0x37, 0x5D, 0x7C, 0x36, 0x5B, 0x31, 0x33, 0x2D, 0x39, 0x5D, 0x7C, 0x37, 0x5B, 0x31, 0x35, 0x2D, 0x39, 0x5D, 0x7C, 0x38, 0x5B, 0x31, 0x2D, 0x34, 0x36, 0x37, 0x39, 0x5D, 0x7C, 0x39, 0x5B, 0x31, 0x2D, 0x37, 0x39, 0x5D, 0x29, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x36, 0x2C, 0x38, 0x7D, 0x32, 0x08, 0x31, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x30, 0x1A, 0x21, 0x12, 0x0B, 0x39, 0x38, 0x5B, 0x34, 0x35, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x39, 0x38, 0x34, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x22, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x2A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x4E, 0x50, 0x50, 0xD1, 0x07, 0x5A, 0x02, 0x30, 0x30, 0x62, 0x01, 0x30, 0x7A, 0x01, 0x30, 0x9A, 0x01, 0x31, 0x0A, 0x16, 0x28, 0x31, 0x29, 0x28, 0x5B, 0x34, 0x2D, 0x36, 0x5D, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x06, 0x31, 0x5B, 0x34, 0x2D, 0x36, 0x5D, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x3D, 0x0A, 0x15, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x13, 0x31, 0x5B, 0x30, 0x31, 0x5D, 0x7C, 0x5B, 0x32, 0x2D, 0x38, 0x5D, 0x7C, 0x39, 0x5B, 0x31, 0x2D, 0x37, 0x39, 0x5D, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x2D, 0x0A, 0x16, 0x28, 0x39, 0x38, 0x5B, 0x34, 0x35, 0x5D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x02, 0x39, 0x38, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xD5, 0x01, 0x0A, 0x13, 0x12, 0x0A, 0x5B, 0x34, 0x35, 0x38, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x12, 0x22, 0x12, 0x10, 0x28, 0x3F, 0x3A, 0x34, 0x34, 0x34, 0x7C, 0x38, 0x38, 0x38, 0x29, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x32, 0x07, 0x34, 0x34, 0x34, 0x31, 0x32, 0x33, 0x34, 0x1A, 0x1E, 0x12, 0x0C, 0x35, 0x35, 0x5B, 0x35, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x32, 0x07, 0x35, 0x35, 0x35, 0x31, 0x32, 0x33, 0x34, 0x22, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x2A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x4E, 0x52, 0x50, 0xA2, 0x05, 0x5A, 0x02, 0x30, 0x30, 0x9A, 0x01, 0x1B, 0x0A, 0x0E, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x22, 0x00, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xA8, 0x01, 0x0A, 0x13, 0x12, 0x0A, 0x5B, 0x31, 0x2D, 0x35, 0x5D, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x12, 0x18, 0x12, 0x09, 0x5B, 0x33, 0x34, 0x5D, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x32, 0x04, 0x34, 0x30, 0x30, 0x32, 0x1A, 0x19, 0x12, 0x0A, 0x5B, 0x31, 0x32, 0x35, 0x5D, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x32, 0x04, 0x31, 0x32, 0x33, 0x34, 0x22, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x2A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x4E, 0x55, 0x50, 0xAB, 0x05, 0x5A, 0x02, 0x30, 0x30, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xC2, 0x05, 0x0A, 0x2A, 0x12, 0x1E, 0x36, 0x5B, 0x32, 0x33, 0x35, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x7C, 0x5B, 0x32, 0x2D, 0x35, 0x37, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x31, 0x30, 0x7D, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x31, 0x31, 0x7D, 0x12, 0x4E, 0x12, 0x39, 0x28, 0x3F, 0x3A, 0x33, 0x5B, 0x32, 0x2D, 0x37, 0x39, 0x5D, 0x7C, 0x5B, 0x34, 0x39, 0x5D, 0x5B, 0x32, 0x2D, 0x36, 0x38, 0x39, 0x5D, 0x7C, 0x36, 0x5B, 0x32, 0x33, 0x35, 0x2D, 0x39, 0x5D, 0x7C, 0x37, 0x5B, 0x32, 0x2D, 0x35, 0x38, 0x39, 0x5D, 0x29, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x7C, 0x32, 0x34, 0x30, 0x39, 0x39, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x38, 0x7D, 0x32, 0x08, 0x33, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x1A, 0x63, 0x12, 0x4C, 0x32, 0x28, 0x3F, 0x3A, 0x5B, 0x30, 0x37, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x7C, 0x31, 0x28, 0x3F, 0x3A, 0x30, 0x5C, 0x64, 0x7B, 0x35, 0x2C, 0x37, 0x7D, 0x7C, 0x5B, 0x31, 0x32, 0x5D, 0x5C, 0x64, 0x7B, 0x35, 0x2C, 0x36, 0x7D, 0x7C, 0x5B, 0x33, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x29, 0x7C, 0x5B, 0x32, 0x38, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x38, 0x7D, 0x7C, 0x34, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x29, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x38, 0x2C, 0x31, 0x30, 0x7D, 0x32, 0x09, 0x32, 0x31, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x22, 0x2B, 0x12, 0x14, 0x35, 0x30, 0x38, 0x5C, 0x64, 0x7B, 0x36, 0x2C, 0x37, 0x7D, 0x7C, 0x38, 0x30, 0x5C, 0x64, 0x7B, 0x36, 0x2C, 0x38, 0x7D, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x38, 0x2C, 0x31, 0x30, 0x7D, 0x32, 0x09, 0x38, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x2A, 0x20, 0x12, 0x09, 0x39, 0x30, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x39, 0x7D, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x39, 0x2C, 0x31, 0x31, 0x7D, 0x32, 0x09, 0x39, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x4E, 0x5A, 0x50, 0x40, 0x5A, 0x0A, 0x30, 0x28, 0x3F, 0x3A, 0x30, 0x7C, 0x31, 0x36, 0x31, 0x29, 0x62, 0x01, 0x30, 0x7A, 0x01, 0x30, 0x8A, 0x01, 0x02, 0x30, 0x30, 0x9A, 0x01, 0x39, 0x0A, 0x17, 0x28, 0x5B, 0x33, 0x34, 0x36, 0x37, 0x39, 0x5D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x2D, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x0D, 0x5B, 0x33, 0x34, 0x36, 0x37, 0x5D, 0x7C, 0x39, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x2B, 0x0A, 0x14, 0x28, 0x32, 0x31, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x2C, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x02, 0x32, 0x31, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x44, 0x0A, 0x1D, 0x28, 0x5B, 0x32, 0x35, 0x38, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x2C, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x12, 0x32, 0x5B, 0x30, 0x32, 0x34, 0x37, 0x2D, 0x39, 0x5D, 0x7C, 0x35, 0x7C, 0x5B, 0x38, 0x39, 0x5D, 0x30, 0x30, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x36, 0x0A, 0x17, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x2C, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x0A, 0x32, 0x5B, 0x30, 0x31, 0x36, 0x39, 0x5D, 0x7C, 0x38, 0x36, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x30, 0x0A, 0x0E, 0x28, 0x32, 0x34, 0x30, 0x39, 0x39, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x1A, 0x03, 0x32, 0x34, 0x30, 0x1A, 0x04, 0x32, 0x34, 0x30, 0x39, 0x1A, 0x05, 0x32, 0x34, 0x30, 0x39, 0x39, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0xAA, 0x01, 0x21, 0x12, 0x0C, 0x5B, 0x32, 0x38, 0x5D, 0x36, 0x5C, 0x64, 0x7B, 0x36, 0x2C, 0x37, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x38, 0x2C, 0x39, 0x7D, 0x32, 0x08, 0x32, 0x36, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xD7, 0x02, 0x0A, 0x2E, 0x12, 0x23, 0x28, 0x3F, 0x3A, 0x32, 0x5B, 0x33, 0x2D, 0x36, 0x5D, 0x7C, 0x35, 0x7C, 0x39, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x29, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x7C, 0x38, 0x30, 0x30, 0x5C, 0x64, 0x7B, 0x35, 0x2C, 0x36, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x39, 0x7D, 0x12, 0x1E, 0x12, 0x0B, 0x32, 0x5B, 0x33, 0x2D, 0x36, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x32, 0x33, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x1A, 0x1E, 0x12, 0x0B, 0x39, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x39, 0x32, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x22, 0x29, 0x12, 0x14, 0x38, 0x30, 0x30, 0x37, 0x5C, 0x64, 0x7B, 0x34, 0x2C, 0x35, 0x7D, 0x7C, 0x35, 0x30, 0x30, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x39, 0x7D, 0x32, 0x08, 0x38, 0x30, 0x30, 0x37, 0x31, 0x32, 0x33, 0x34, 0x2A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x4F, 0x4D, 0x50, 0xC8, 0x07, 0x5A, 0x02, 0x30, 0x30, 0x9A, 0x01, 0x1C, 0x0A, 0x0C, 0x28, 0x32, 0x5C, 0x64, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x1A, 0x01, 0x32, 0x22, 0x00, 0x2A, 0x00, 0x9A, 0x01, 0x1F, 0x0A, 0x0F, 0x28, 0x39, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x1A, 0x01, 0x39, 0x22, 0x00, 0x2A, 0x00, 0x9A, 0x01, 0x24, 0x0A, 0x11, 0x28, 0x5B, 0x35, 0x38, 0x5D, 0x30, 0x30, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x2C, 0x36, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x1A, 0x04, 0x5B, 0x35, 0x38, 0x5D, 0x22, 0x00, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0x6D, 0x0A, 0x00, 0x12, 0x00, 0x1A, 0x00, 0x22, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x2A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x50, 0x41, 0x50, 0xFB, 0x03, 0x5A, 0x02, 0x30, 0x30, 0x62, 0x01, 0x30, 0x7A, 0x01, 0x30, 0x90, 0x01, 0x01, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xF6, 0x02, 0x0A, 0x18, 0x12, 0x0D, 0x5B, 0x31, 0x34, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x38, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x36, 0x2C, 0x39, 0x7D, 0x12, 0x46, 0x12, 0x31, 0x28, 0x3F, 0x3A, 0x31, 0x5C, 0x64, 0x7C, 0x34, 0x5B, 0x31, 0x2D, 0x34, 0x5D, 0x7C, 0x35, 0x5B, 0x31, 0x2D, 0x34, 0x36, 0x5D, 0x7C, 0x36, 0x5B, 0x31, 0x2D, 0x37, 0x5D, 0x7C, 0x37, 0x5B, 0x32, 0x2D, 0x34, 0x36, 0x5D, 0x7C, 0x38, 0x5B, 0x32, 0x2D, 0x34, 0x5D, 0x29, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x36, 0x2C, 0x38, 0x7D, 0x32, 0x08, 0x31, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x1A, 0x1A, 0x12, 0x06, 0x39, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x39, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x22, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x2A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x50, 0x45, 0x50, 0x33, 0x5A, 0x14, 0x31, 0x39, 0x28, 0x3F, 0x3A, 0x31, 0x5B, 0x31, 0x32, 0x34, 0x5D, 0x7C, 0x37, 0x37, 0x7C, 0x39, 0x30, 0x29, 0x30, 0x30, 0x62, 0x01, 0x30, 0x6A, 0x07, 0x20, 0x41, 0x6E, 0x65, 0x78, 0x6F, 0x20, 0x7A, 0x01, 0x30, 0x9A, 0x01, 0x1E, 0x0A, 0x0A, 0x28, 0x31, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x1A, 0x01, 0x31, 0x22, 0x04, 0x28, 0x24, 0x31, 0x29, 0x2A, 0x00, 0x9A, 0x01, 0x28, 0x0A, 0x10, 0x28, 0x5B, 0x34, 0x2D, 0x38, 0x5D, 0x5C, 0x64, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x1A, 0x05, 0x5B, 0x34, 0x2D, 0x38, 0x5D, 0x22, 0x04, 0x28, 0x24, 0x31, 0x29, 0x2A, 0x00, 0x9A, 0x01, 0x2B, 0x0A, 0x16, 0x28, 0x39, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x01, 0x39, 0x22, 0x02, 0x24, 0x31, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0x67, 0x0A, 0x00, 0x12, 0x00, 0x1A, 0x00, 0x22, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x2A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x50, 0x46, 0x50, 0xB1, 0x05, 0x5A, 0x02, 0x30, 0x30, 0x90, 0x01, 0x01, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0x83, 0x03, 0x0A, 0x17, 0x12, 0x0C, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x2C, 0x37, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x38, 0x7D, 0x12, 0x55, 0x12, 0x43, 0x28, 0x3F, 0x3A, 0x33, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x7C, 0x34, 0x5B, 0x32, 0x35, 0x37, 0x5D, 0x5C, 0x64, 0x7C, 0x35, 0x5B, 0x33, 0x34, 0x5D, 0x5C, 0x64, 0x7C, 0x36, 0x28, 0x3F, 0x3A, 0x32, 0x39, 0x7C, 0x34, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x29, 0x7C, 0x38, 0x35, 0x5B, 0x30, 0x32, 0x2D, 0x34, 0x36, 0x2D, 0x39, 0x5D, 0x7C, 0x39, 0x5B, 0x37, 0x38, 0x5D, 0x5C, 0x64, 0x29, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x32, 0x07, 0x33, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x1A, 0x33, 0x12, 0x1F, 0x28, 0x3F, 0x3A, 0x36, 0x38, 0x7C, 0x37, 0x28, 0x3F, 0x3A, 0x5B, 0x31, 0x32, 0x36, 0x5D, 0x5C, 0x64, 0x7C, 0x33, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x29, 0x29, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x38, 0x7D, 0x32, 0x07, 0x36, 0x38, 0x31, 0x32, 0x33, 0x34, 0x35, 0x22, 0x1A, 0x12, 0x08, 0x31, 0x38, 0x30, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x32, 0x07, 0x31, 0x38, 0x30, 0x31, 0x32, 0x33, 0x34, 0x2A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x1A, 0x12, 0x08, 0x32, 0x37, 0x35, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x32, 0x07, 0x32, 0x37, 0x35, 0x31, 0x32, 0x33, 0x34, 0x4A, 0x02, 0x50, 0x47, 0x50, 0xA3, 0x05, 0x5A, 0x02, 0x30, 0x30, 0x9A, 0x01, 0x24, 0x0A, 0x0E, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x1A, 0x07, 0x5B, 0x31, 0x2D, 0x36, 0x38, 0x39, 0x5D, 0x22, 0x00, 0x2A, 0x00, 0x9A, 0x01, 0x32, 0x0A, 0x19, 0x28, 0x37, 0x5B, 0x31, 0x2D, 0x33, 0x36, 0x5D, 0x5C, 0x64, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x07, 0x37, 0x5B, 0x31, 0x2D, 0x33, 0x36, 0x5D, 0x22, 0x00, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xF3, 0x06, 0x0A, 0x24, 0x12, 0x18, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x39, 0x7D, 0x7C, 0x31, 0x38, 0x30, 0x30, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x39, 0x7D, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x31, 0x33, 0x7D, 0x12, 0x4D, 0x12, 0x38, 0x28, 0x3F, 0x3A, 0x32, 0x7C, 0x33, 0x5B, 0x32, 0x2D, 0x36, 0x38, 0x5D, 0x7C, 0x34, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x7C, 0x35, 0x5B, 0x32, 0x2D, 0x36, 0x5D, 0x7C, 0x36, 0x5B, 0x32, 0x2D, 0x35, 0x38, 0x5D, 0x7C, 0x37, 0x5B, 0x32, 0x34, 0x35, 0x37, 0x38, 0x5D, 0x7C, 0x38, 0x5B, 0x32, 0x2D, 0x38, 0x5D, 0x29, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x39, 0x7D, 0x32, 0x08, 0x32, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x1A, 0x50, 0x12, 0x3A, 0x39, 0x28, 0x3F, 0x3A, 0x30, 0x5B, 0x35, 0x2D, 0x39, 0x5D, 0x7C, 0x31, 0x5B, 0x30, 0x32, 0x35, 0x2D, 0x39, 0x5D, 0x7C, 0x32, 0x5B, 0x30, 0x2D, 0x33, 0x36, 0x2D, 0x39, 0x5D, 0x7C, 0x33, 0x5B, 0x30, 0x32, 0x33, 0x35, 0x2D, 0x39, 0x5D, 0x7C, 0x37, 0x5B, 0x33, 0x34, 0x39, 0x5D, 0x7C, 0x5B, 0x38, 0x39, 0x5D, 0x39, 0x29, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x39, 0x30, 0x35, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x22, 0x26, 0x12, 0x0B, 0x31, 0x38, 0x30, 0x30, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x39, 0x7D, 0x1A, 0x09, 0x5C, 0x64, 0x7B, 0x31, 0x31, 0x2C, 0x31, 0x33, 0x7D, 0x32, 0x0C, 0x31, 0x38, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x2A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x50, 0x48, 0x50, 0x3F, 0x5A, 0x02, 0x30, 0x30, 0x62, 0x01, 0x30, 0x7A, 0x01, 0x30, 0x9A, 0x01, 0x29, 0x0A, 0x11, 0x28, 0x32, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x01, 0x32, 0x22, 0x05, 0x28, 0x30, 0x24, 0x31, 0x29, 0x2A, 0x00, 0x9A, 0x01, 0xDD, 0x01, 0x0A, 0x0E, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x1A, 0x46, 0x33, 0x28, 0x3F, 0x3A, 0x32, 0x33, 0x7C, 0x33, 0x39, 0x7C, 0x34, 0x36, 0x29, 0x7C, 0x34, 0x28, 0x3F, 0x3A, 0x32, 0x5B, 0x33, 0x2D, 0x36, 0x5D, 0x7C, 0x5B, 0x33, 0x35, 0x5D, 0x39, 0x7C, 0x34, 0x5B, 0x32, 0x36, 0x5D, 0x7C, 0x37, 0x36, 0x29, 0x7C, 0x35, 0x28, 0x3F, 0x3A, 0x32, 0x32, 0x7C, 0x34, 0x34, 0x29, 0x7C, 0x36, 0x34, 0x32, 0x7C, 0x38, 0x28, 0x3F, 0x3A, 0x36, 0x32, 0x7C, 0x38, 0x5B, 0x32, 0x34, 0x35, 0x5D, 0x29, 0x1A, 0x73, 0x33, 0x28, 0x3F, 0x3A, 0x32, 0x33, 0x30, 0x7C, 0x33, 0x39, 0x37, 0x7C, 0x34, 0x36, 0x31, 0x29, 0x7C, 0x34, 0x28, 0x3F, 0x3A, 0x32, 0x28, 0x3F, 0x3A, 0x33, 0x35, 0x7C, 0x5B, 0x34, 0x36, 0x5D, 0x34, 0x7C, 0x35, 0x31, 0x29, 0x7C, 0x33, 0x39, 0x36, 0x7C, 0x34, 0x28, 0x3F, 0x3A, 0x32, 0x32, 0x7C, 0x36, 0x33, 0x29, 0x7C, 0x35, 0x39, 0x5B, 0x33, 0x34, 0x37, 0x5D, 0x7C, 0x37, 0x36, 0x5B, 0x31, 0x35, 0x5D, 0x29, 0x7C, 0x35, 0x28, 0x3F, 0x3A, 0x32, 0x32, 0x31, 0x7C, 0x34, 0x34, 0x36, 0x29, 0x7C, 0x36, 0x34, 0x32, 0x5B, 0x32, 0x33, 0x5D, 0x7C, 0x38, 0x28, 0x3F, 0x3A, 0x36, 0x32, 0x32, 0x7C, 0x38, 0x28, 0x3F, 0x3A, 0x5B, 0x32, 0x34, 0x5D, 0x32, 0x7C, 0x35, 0x5B, 0x31, 0x33, 0x5D, 0x29, 0x29, 0x22, 0x05, 0x28, 0x30, 0x24, 0x31, 0x29, 0x2A, 0x00, 0x9A, 0x01, 0x56, 0x0A, 0x0E, 0x28, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x1A, 0x15, 0x33, 0x34, 0x36, 0x7C, 0x34, 0x28, 0x3F, 0x3A, 0x32, 0x37, 0x7C, 0x39, 0x5B, 0x33, 0x35, 0x5D, 0x29, 0x7C, 0x38, 0x38, 0x33, 0x1A, 0x1D, 0x33, 0x34, 0x36, 0x39, 0x7C, 0x34, 0x28, 0x3F, 0x3A, 0x32, 0x37, 0x39, 0x7C, 0x39, 0x28, 0x3F, 0x3A, 0x33, 0x30, 0x7C, 0x35, 0x36, 0x29, 0x29, 0x7C, 0x38, 0x38, 0x33, 0x34, 0x22, 0x05, 0x28, 0x30, 0x24, 0x31, 0x29, 0x2A, 0x00, 0x9A, 0x01, 0x33, 0x0A, 0x17, 0x28, 0x5B, 0x33, 0x2D, 0x38, 0x5D, 0x5C, 0x64, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x05, 0x5B, 0x33, 0x2D, 0x38, 0x5D, 0x22, 0x05, 0x28, 0x30, 0x24, 0x31, 0x29, 0x2A, 0x00, 0x9A, 0x01, 0x2C, 0x0A, 0x16, 0x28, 0x39, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x01, 0x39, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x27, 0x0A, 0x14, 0x28, 0x31, 0x38, 0x30, 0x30, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x01, 0x31, 0x22, 0x00, 0x2A, 0x00, 0x9A, 0x01, 0x33, 0x0A, 0x1D, 0x28, 0x31, 0x38, 0x30, 0x30, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x31, 0x2C, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x0B, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x20, 0x24, 0x34, 0x1A, 0x01, 0x31, 0x22, 0x00, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xF3, 0x0C, 0x0A, 0x4C, 0x12, 0x40, 0x31, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x7C, 0x5B, 0x32, 0x2D, 0x38, 0x5D, 0x5C, 0x64, 0x7B, 0x35, 0x2C, 0x31, 0x31, 0x7D, 0x7C, 0x39, 0x28, 0x3F, 0x3A, 0x5B, 0x30, 0x31, 0x33, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x34, 0x2C, 0x39, 0x7D, 0x7C, 0x32, 0x5C, 0x64, 0x28, 0x3F, 0x3A, 0x31, 0x31, 0x31, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x7C, 0x5C, 0x64, 0x7B, 0x33, 0x2C, 0x37, 0x7D, 0x29, 0x29, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x36, 0x2C, 0x31, 0x32, 0x7D, 0x12, 0x99, 0x02, 0x12, 0x80, 0x02, 0x28, 0x3F, 0x3A, 0x32, 0x31, 0x7C, 0x34, 0x32, 0x29, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x7C, 0x28, 0x3F, 0x3A, 0x32, 0x5B, 0x32, 0x35, 0x5D, 0x7C, 0x34, 0x5B, 0x30, 0x31, 0x34, 0x36, 0x2D, 0x39, 0x5D, 0x7C, 0x35, 0x5B, 0x31, 0x2D, 0x33, 0x35, 0x2D, 0x37, 0x5D, 0x7C, 0x36, 0x5B, 0x31, 0x2D, 0x38, 0x5D, 0x7C, 0x37, 0x5B, 0x31, 0x34, 0x5D, 0x7C, 0x38, 0x5B, 0x31, 0x36, 0x5D, 0x7C, 0x39, 0x31, 0x29, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x7C, 0x28, 0x3F, 0x3A, 0x32, 0x28, 0x3F, 0x3A, 0x33, 0x5B, 0x32, 0x33, 0x35, 0x38, 0x5D, 0x7C, 0x34, 0x5B, 0x32, 0x2D, 0x34, 0x5D, 0x7C, 0x39, 0x5B, 0x32, 0x2D, 0x38, 0x5D, 0x29, 0x7C, 0x34, 0x35, 0x5B, 0x33, 0x34, 0x37, 0x39, 0x5D, 0x7C, 0x35, 0x34, 0x5B, 0x32, 0x2D, 0x34, 0x36, 0x37, 0x5D, 0x7C, 0x36, 0x30, 0x5B, 0x34, 0x36, 0x38, 0x5D, 0x7C, 0x37, 0x32, 0x5B, 0x32, 0x33, 0x36, 0x5D, 0x7C, 0x38, 0x28, 0x3F, 0x3A, 0x32, 0x5B, 0x32, 0x2D, 0x36, 0x38, 0x39, 0x5D, 0x7C, 0x33, 0x5B, 0x32, 0x33, 0x35, 0x37, 0x38, 0x5D, 0x7C, 0x34, 0x5B, 0x33, 0x34, 0x37, 0x38, 0x5D, 0x7C, 0x35, 0x5B, 0x32, 0x33, 0x35, 0x36, 0x5D, 0x29, 0x7C, 0x39, 0x28, 0x3F, 0x3A, 0x31, 0x7C, 0x32, 0x5B, 0x32, 0x2D, 0x38, 0x5D, 0x7C, 0x33, 0x5B, 0x32, 0x37, 0x2D, 0x39, 0x5D, 0x7C, 0x34, 0x5B, 0x32, 0x2D, 0x36, 0x5D, 0x7C, 0x36, 0x5B, 0x33, 0x35, 0x36, 0x39, 0x5D, 0x7C, 0x39, 0x5B, 0x32, 0x35, 0x2D, 0x38, 0x5D, 0x29, 0x29, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x35, 0x2C, 0x36, 0x7D, 0x7C, 0x35, 0x38, 0x5B, 0x31, 0x32, 0x36, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x36, 0x2C, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x32, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x1A, 0x42, 0x12, 0x2C, 0x33, 0x28, 0x3F, 0x3A, 0x30, 0x5C, 0x64, 0x7C, 0x31, 0x5B, 0x32, 0x2D, 0x35, 0x5D, 0x7C, 0x32, 0x5B, 0x31, 0x2D, 0x33, 0x5D, 0x7C, 0x33, 0x5B, 0x31, 0x2D, 0x36, 0x5D, 0x7C, 0x34, 0x5B, 0x32, 0x2D, 0x37, 0x5D, 0x7C, 0x36, 0x34, 0x29, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x33, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x22, 0x1B, 0x12, 0x08, 0x38, 0x30, 0x30, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x38, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x2A, 0x1B, 0x12, 0x08, 0x39, 0x30, 0x30, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x39, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x1C, 0x12, 0x08, 0x31, 0x32, 0x32, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x31, 0x32, 0x32, 0x30, 0x34, 0x34, 0x34, 0x34, 0x34, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x50, 0x4B, 0x50, 0x5C, 0x5A, 0x02, 0x30, 0x30, 0x62, 0x01, 0x30, 0x7A, 0x01, 0x30, 0x9A, 0x01, 0xDD, 0x01, 0x0A, 0x1A, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x31, 0x31, 0x31, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x12, 0x0B, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x20, 0x24, 0x34, 0x1A, 0x36, 0x28, 0x3F, 0x3A, 0x32, 0x5B, 0x31, 0x32, 0x35, 0x5D, 0x7C, 0x34, 0x5B, 0x30, 0x2D, 0x32, 0x34, 0x36, 0x2D, 0x39, 0x5D, 0x7C, 0x35, 0x5B, 0x31, 0x2D, 0x33, 0x35, 0x2D, 0x37, 0x5D, 0x7C, 0x36, 0x5B, 0x31, 0x2D, 0x38, 0x5D, 0x7C, 0x37, 0x5B, 0x31, 0x34, 0x5D, 0x7C, 0x38, 0x5B, 0x31, 0x36, 0x5D, 0x7C, 0x39, 0x31, 0x29, 0x31, 0x1A, 0x37, 0x28, 0x3F, 0x3A, 0x32, 0x5B, 0x31, 0x32, 0x35, 0x5D, 0x7C, 0x34, 0x5B, 0x30, 0x2D, 0x32, 0x34, 0x36, 0x2D, 0x39, 0x5D, 0x7C, 0x35, 0x5B, 0x31, 0x2D, 0x33, 0x35, 0x2D, 0x37, 0x5D, 0x7C, 0x36, 0x5B, 0x31, 0x2D, 0x38, 0x5D, 0x7C, 0x37, 0x5B, 0x31, 0x34, 0x5D, 0x7C, 0x38, 0x5B, 0x31, 0x36, 0x5D, 0x7C, 0x39, 0x31, 0x29, 0x31, 0x31, 0x1A, 0x38, 0x28, 0x3F, 0x3A, 0x32, 0x5B, 0x31, 0x32, 0x35, 0x5D, 0x7C, 0x34, 0x5B, 0x30, 0x2D, 0x32, 0x34, 0x36, 0x2D, 0x39, 0x5D, 0x7C, 0x35, 0x5B, 0x31, 0x2D, 0x33, 0x35, 0x2D, 0x37, 0x5D, 0x7C, 0x36, 0x5B, 0x31, 0x2D, 0x38, 0x5D, 0x7C, 0x37, 0x5B, 0x31, 0x34, 0x5D, 0x7C, 0x38, 0x5B, 0x31, 0x36, 0x5D, 0x7C, 0x39, 0x31, 0x29, 0x31, 0x31, 0x31, 0x22, 0x05, 0x28, 0x30, 0x24, 0x31, 0x29, 0x2A, 0x00, 0x9A, 0x01, 0xD2, 0x01, 0x0A, 0x1A, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x31, 0x31, 0x31, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x12, 0x0B, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x20, 0x24, 0x34, 0x1A, 0x20, 0x32, 0x5B, 0x33, 0x34, 0x39, 0x5D, 0x7C, 0x34, 0x35, 0x7C, 0x35, 0x34, 0x7C, 0x36, 0x30, 0x7C, 0x37, 0x32, 0x7C, 0x38, 0x5B, 0x32, 0x2D, 0x35, 0x5D, 0x7C, 0x39, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x1A, 0x27, 0x28, 0x3F, 0x3A, 0x32, 0x5B, 0x33, 0x34, 0x39, 0x5D, 0x7C, 0x34, 0x35, 0x7C, 0x35, 0x34, 0x7C, 0x36, 0x30, 0x7C, 0x37, 0x32, 0x7C, 0x38, 0x5B, 0x32, 0x2D, 0x35, 0x5D, 0x7C, 0x39, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x29, 0x5C, 0x64, 0x31, 0x1A, 0x28, 0x28, 0x3F, 0x3A, 0x32, 0x5B, 0x33, 0x34, 0x39, 0x5D, 0x7C, 0x34, 0x35, 0x7C, 0x35, 0x34, 0x7C, 0x36, 0x30, 0x7C, 0x37, 0x32, 0x7C, 0x38, 0x5B, 0x32, 0x2D, 0x35, 0x5D, 0x7C, 0x39, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x29, 0x5C, 0x64, 0x31, 0x31, 0x1A, 0x29, 0x28, 0x3F, 0x3A, 0x32, 0x5B, 0x33, 0x34, 0x39, 0x5D, 0x7C, 0x34, 0x35, 0x7C, 0x35, 0x34, 0x7C, 0x36, 0x30, 0x7C, 0x37, 0x32, 0x7C, 0x38, 0x5B, 0x32, 0x2D, 0x35, 0x5D, 0x7C, 0x39, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x29, 0x5C, 0x64, 0x31, 0x31, 0x31, 0x22, 0x05, 0x28, 0x30, 0x24, 0x31, 0x29, 0x2A, 0x00, 0x9A, 0x01, 0x5E, 0x0A, 0x10, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x38, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x1A, 0x3A, 0x28, 0x3F, 0x3A, 0x32, 0x5B, 0x31, 0x32, 0x35, 0x5D, 0x7C, 0x34, 0x5B, 0x30, 0x2D, 0x32, 0x34, 0x36, 0x2D, 0x39, 0x5D, 0x7C, 0x35, 0x5B, 0x31, 0x2D, 0x33, 0x35, 0x2D, 0x37, 0x5D, 0x7C, 0x36, 0x5B, 0x31, 0x2D, 0x38, 0x5D, 0x7C, 0x37, 0x5B, 0x31, 0x34, 0x5D, 0x7C, 0x38, 0x5B, 0x31, 0x36, 0x5D, 0x7C, 0x39, 0x31, 0x29, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x22, 0x05, 0x28, 0x30, 0x24, 0x31, 0x29, 0x2A, 0x00, 0x9A, 0x01, 0x71, 0x0A, 0x10, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x36, 0x2C, 0x37, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x1A, 0x20, 0x32, 0x5B, 0x33, 0x34, 0x39, 0x5D, 0x7C, 0x34, 0x35, 0x7C, 0x35, 0x34, 0x7C, 0x36, 0x30, 0x7C, 0x37, 0x32, 0x7C, 0x38, 0x5B, 0x32, 0x2D, 0x35, 0x5D, 0x7C, 0x39, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x1A, 0x2B, 0x28, 0x3F, 0x3A, 0x32, 0x5B, 0x33, 0x34, 0x39, 0x5D, 0x7C, 0x34, 0x35, 0x7C, 0x35, 0x34, 0x7C, 0x36, 0x30, 0x7C, 0x37, 0x32, 0x7C, 0x38, 0x5B, 0x32, 0x2D, 0x35, 0x5D, 0x7C, 0x39, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x29, 0x5C, 0x64, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x22, 0x05, 0x28, 0x30, 0x24, 0x31, 0x29, 0x2A, 0x00, 0x9A, 0x01, 0x22, 0x0A, 0x0F, 0x28, 0x33, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x1A, 0x01, 0x33, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x30, 0x0A, 0x14, 0x28, 0x5B, 0x31, 0x35, 0x5D, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x35, 0x2C, 0x36, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x1A, 0x08, 0x35, 0x38, 0x5B, 0x31, 0x32, 0x5D, 0x7C, 0x31, 0x22, 0x05, 0x28, 0x30, 0x24, 0x31, 0x29, 0x2A, 0x00, 0x9A, 0x01, 0x28, 0x0A, 0x11, 0x28, 0x35, 0x38, 0x36, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x1A, 0x03, 0x35, 0x38, 0x36, 0x22, 0x05, 0x28, 0x30, 0x24, 0x31, 0x29, 0x2A, 0x00, 0x9A, 0x01, 0x31, 0x0A, 0x16, 0x28, 0x5B, 0x38, 0x39, 0x5D, 0x30, 0x30, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x06, 0x5B, 0x38, 0x39, 0x5D, 0x30, 0x30, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0xEC, 0x01, 0x12, 0xD1, 0x01, 0x28, 0x3F, 0x3A, 0x32, 0x28, 0x3F, 0x3A, 0x5B, 0x31, 0x32, 0x35, 0x5D, 0x7C, 0x33, 0x5B, 0x32, 0x33, 0x35, 0x38, 0x5D, 0x7C, 0x34, 0x5B, 0x32, 0x2D, 0x34, 0x5D, 0x7C, 0x39, 0x5B, 0x32, 0x2D, 0x38, 0x5D, 0x29, 0x7C, 0x34, 0x28, 0x3F, 0x3A, 0x5B, 0x30, 0x2D, 0x32, 0x34, 0x36, 0x2D, 0x39, 0x5D, 0x7C, 0x35, 0x5B, 0x33, 0x34, 0x37, 0x39, 0x5D, 0x29, 0x7C, 0x35, 0x28, 0x3F, 0x3A, 0x5B, 0x31, 0x2D, 0x33, 0x35, 0x2D, 0x37, 0x5D, 0x7C, 0x34, 0x5B, 0x32, 0x2D, 0x34, 0x36, 0x37, 0x5D, 0x29, 0x7C, 0x36, 0x28, 0x3F, 0x3A, 0x5B, 0x31, 0x2D, 0x38, 0x5D, 0x7C, 0x30, 0x5B, 0x34, 0x36, 0x38, 0x5D, 0x29, 0x7C, 0x37, 0x28, 0x3F, 0x3A, 0x5B, 0x31, 0x34, 0x5D, 0x7C, 0x32, 0x5B, 0x32, 0x33, 0x36, 0x5D, 0x29, 0x7C, 0x38, 0x28, 0x3F, 0x3A, 0x5B, 0x31, 0x36, 0x5D, 0x7C, 0x32, 0x5B, 0x32, 0x2D, 0x36, 0x38, 0x39, 0x5D, 0x7C, 0x33, 0x5B, 0x32, 0x33, 0x35, 0x37, 0x38, 0x5D, 0x7C, 0x34, 0x5B, 0x33, 0x34, 0x37, 0x38, 0x5D, 0x7C, 0x35, 0x5B, 0x32, 0x33, 0x35, 0x36, 0x5D, 0x29, 0x7C, 0x39, 0x28, 0x3F, 0x3A, 0x31, 0x7C, 0x32, 0x32, 0x7C, 0x33, 0x5B, 0x32, 0x37, 0x2D, 0x39, 0x5D, 0x7C, 0x34, 0x5B, 0x32, 0x2D, 0x36, 0x5D, 0x7C, 0x36, 0x5B, 0x33, 0x35, 0x36, 0x39, 0x5D, 0x7C, 0x39, 0x5B, 0x32, 0x2D, 0x37, 0x5D, 0x29, 0x29, 0x31, 0x31, 0x31, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x09, 0x5C, 0x64, 0x7B, 0x31, 0x31, 0x2C, 0x31, 0x32, 0x7D, 0x32, 0x0B, 0x32, 0x31, 0x31, 0x31, 0x31, 0x38, 0x32, 0x35, 0x38, 0x38, 0x38, 0x0A, 0x91, 0x04, 0x0A, 0x13, 0x12, 0x0A, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x12, 0x66, 0x12, 0x52, 0x28, 0x3F, 0x3A, 0x31, 0x5B, 0x32, 0x2D, 0x38, 0x5D, 0x7C, 0x32, 0x5B, 0x32, 0x2D, 0x35, 0x39, 0x5D, 0x7C, 0x33, 0x5B, 0x32, 0x2D, 0x34, 0x5D, 0x7C, 0x34, 0x5B, 0x31, 0x2D, 0x34, 0x36, 0x38, 0x5D, 0x7C, 0x35, 0x5B, 0x32, 0x34, 0x2D, 0x36, 0x38, 0x39, 0x5D, 0x7C, 0x36, 0x5B, 0x31, 0x2D, 0x33, 0x35, 0x37, 0x38, 0x5D, 0x7C, 0x37, 0x5B, 0x31, 0x34, 0x2D, 0x37, 0x5D, 0x7C, 0x38, 0x5B, 0x31, 0x2D, 0x37, 0x39, 0x5D, 0x7C, 0x39, 0x5B, 0x31, 0x34, 0x35, 0x5D, 0x29, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x1A, 0x34, 0x12, 0x20, 0x28, 0x3F, 0x3A, 0x35, 0x5B, 0x30, 0x31, 0x33, 0x5D, 0x7C, 0x36, 0x5B, 0x30, 0x36, 0x39, 0x5D, 0x7C, 0x37, 0x5B, 0x32, 0x38, 0x39, 0x5D, 0x7C, 0x38, 0x38, 0x29, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x35, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x22, 0x1C, 0x12, 0x08, 0x38, 0x30, 0x30, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x38, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x2A, 0x1B, 0x12, 0x07, 0x37, 0x30, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x37, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x32, 0x1C, 0x12, 0x08, 0x38, 0x30, 0x31, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x38, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x1B, 0x12, 0x07, 0x33, 0x39, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x33, 0x39, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x4A, 0x02, 0x50, 0x4C, 0x50, 0x30, 0x5A, 0x02, 0x30, 0x30, 0x9A, 0x01, 0x68, 0x0A, 0x1C, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x12, 0x0B, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x20, 0x24, 0x34, 0x1A, 0x37, 0x5B, 0x31, 0x32, 0x34, 0x5D, 0x7C, 0x33, 0x5B, 0x32, 0x2D, 0x34, 0x5D, 0x7C, 0x35, 0x5B, 0x32, 0x34, 0x2D, 0x36, 0x38, 0x39, 0x5D, 0x7C, 0x36, 0x5B, 0x31, 0x2D, 0x33, 0x35, 0x37, 0x38, 0x5D, 0x7C, 0x37, 0x5B, 0x31, 0x34, 0x2D, 0x37, 0x5D, 0x7C, 0x38, 0x5B, 0x31, 0x2D, 0x37, 0x39, 0x5D, 0x7C, 0x39, 0x5B, 0x31, 0x34, 0x35, 0x5D, 0x22, 0x00, 0x2A, 0x00, 0x9A, 0x01, 0x45, 0x0A, 0x15, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x1E, 0x33, 0x39, 0x7C, 0x35, 0x5B, 0x30, 0x31, 0x33, 0x5D, 0x7C, 0x36, 0x5B, 0x30, 0x36, 0x39, 0x5D, 0x7C, 0x37, 0x5B, 0x30, 0x32, 0x38, 0x39, 0x5D, 0x7C, 0x38, 0x5B, 0x30, 0x38, 0x5D, 0x22, 0x00, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0x6D, 0x0A, 0x00, 0x12, 0x00, 0x1A, 0x00, 0x22, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x2A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x50, 0x4D, 0x50, 0xFC, 0x03, 0x5A, 0x02, 0x30, 0x30, 0x62, 0x01, 0x30, 0x7A, 0x01, 0x30, 0x90, 0x01, 0x01, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xE8, 0x02, 0x0A, 0x1E, 0x12, 0x0B, 0x5B, 0x35, 0x37, 0x38, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x1A, 0x0F, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x28, 0x3F, 0x3A, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x3F, 0x12, 0x34, 0x12, 0x15, 0x28, 0x3F, 0x3A, 0x37, 0x38, 0x37, 0x7C, 0x39, 0x33, 0x39, 0x29, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x0F, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x28, 0x3F, 0x3A, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x3F, 0x32, 0x0A, 0x37, 0x38, 0x37, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x1A, 0x34, 0x12, 0x15, 0x28, 0x3F, 0x3A, 0x37, 0x38, 0x37, 0x7C, 0x39, 0x33, 0x39, 0x29, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x0F, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x28, 0x3F, 0x3A, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x3F, 0x32, 0x0A, 0x37, 0x38, 0x37, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x22, 0x33, 0x12, 0x1D, 0x38, 0x28, 0x3F, 0x3A, 0x30, 0x30, 0x7C, 0x35, 0x35, 0x7C, 0x36, 0x36, 0x7C, 0x37, 0x37, 0x7C, 0x38, 0x38, 0x29, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x38, 0x30, 0x30, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x2A, 0x23, 0x12, 0x0D, 0x39, 0x30, 0x30, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x39, 0x30, 0x30, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x2D, 0x12, 0x17, 0x35, 0x28, 0x3F, 0x3A, 0x30, 0x30, 0x7C, 0x33, 0x33, 0x7C, 0x34, 0x34, 0x29, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x35, 0x30, 0x30, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x50, 0x52, 0x50, 0x01, 0x5A, 0x03, 0x30, 0x31, 0x31, 0x62, 0x01, 0x31, 0x7A, 0x01, 0x31, 0x90, 0x01, 0x01, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xBA, 0x01, 0x07, 0x37, 0x38, 0x37, 0x7C, 0x39, 0x33, 0x39, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xDD, 0x03, 0x0A, 0x35, 0x12, 0x29, 0x5B, 0x32, 0x34, 0x35, 0x38, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x38, 0x7D, 0x7C, 0x31, 0x28, 0x3F, 0x3A, 0x5B, 0x37, 0x38, 0x5D, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x7C, 0x5B, 0x34, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x32, 0x2C, 0x33, 0x7D, 0x29, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x34, 0x2C, 0x31, 0x30, 0x7D, 0x12, 0x41, 0x12, 0x2C, 0x28, 0x3F, 0x3A, 0x32, 0x32, 0x5B, 0x32, 0x33, 0x34, 0x37, 0x38, 0x39, 0x5D, 0x7C, 0x34, 0x32, 0x5B, 0x34, 0x35, 0x5D, 0x7C, 0x38, 0x32, 0x5B, 0x30, 0x31, 0x34, 0x35, 0x38, 0x5D, 0x7C, 0x39, 0x32, 0x5B, 0x33, 0x36, 0x39, 0x5D, 0x29, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x38, 0x7D, 0x32, 0x08, 0x32, 0x32, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x1A, 0x1E, 0x12, 0x0A, 0x35, 0x5B, 0x36, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x35, 0x39, 0x39, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x22, 0x1F, 0x12, 0x09, 0x31, 0x38, 0x30, 0x30, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x31, 0x38, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x2A, 0x21, 0x12, 0x0F, 0x31, 0x28, 0x3F, 0x3A, 0x34, 0x7C, 0x39, 0x5C, 0x64, 0x29, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x34, 0x2C, 0x35, 0x7D, 0x32, 0x05, 0x31, 0x39, 0x31, 0x32, 0x33, 0x32, 0x1F, 0x12, 0x09, 0x31, 0x37, 0x30, 0x30, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x31, 0x37, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x50, 0x53, 0x50, 0xCA, 0x07, 0x5A, 0x02, 0x30, 0x30, 0x62, 0x01, 0x30, 0x7A, 0x01, 0x30, 0x9A, 0x01, 0x32, 0x0A, 0x17, 0x28, 0x5B, 0x32, 0x34, 0x38, 0x39, 0x5D, 0x29, 0x28, 0x32, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x06, 0x5B, 0x32, 0x34, 0x38, 0x39, 0x5D, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x2D, 0x0A, 0x17, 0x28, 0x35, 0x5B, 0x36, 0x39, 0x5D, 0x5C, 0x64, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x01, 0x35, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x30, 0x0A, 0x17, 0x28, 0x31, 0x5B, 0x37, 0x38, 0x5D, 0x30, 0x30, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x05, 0x31, 0x5B, 0x37, 0x38, 0x5D, 0x22, 0x02, 0x24, 0x31, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0x9C, 0x03, 0x0A, 0x16, 0x12, 0x0D, 0x5B, 0x32, 0x2D, 0x34, 0x36, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x12, 0x5A, 0x12, 0x46, 0x32, 0x28, 0x3F, 0x3A, 0x5B, 0x31, 0x32, 0x5D, 0x5C, 0x64, 0x7C, 0x5B, 0x33, 0x35, 0x5D, 0x5B, 0x31, 0x2D, 0x36, 0x38, 0x39, 0x5D, 0x7C, 0x34, 0x5B, 0x31, 0x2D, 0x35, 0x39, 0x5D, 0x7C, 0x36, 0x5B, 0x31, 0x2D, 0x33, 0x35, 0x36, 0x38, 0x39, 0x5D, 0x7C, 0x37, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x7C, 0x38, 0x5B, 0x31, 0x2D, 0x36, 0x39, 0x5D, 0x7C, 0x39, 0x5B, 0x31, 0x32, 0x35, 0x36, 0x5D, 0x29, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x32, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x1A, 0x40, 0x12, 0x2C, 0x39, 0x28, 0x3F, 0x3A, 0x5B, 0x31, 0x33, 0x36, 0x5D, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x7C, 0x32, 0x5B, 0x31, 0x32, 0x34, 0x2D, 0x37, 0x39, 0x5D, 0x5C, 0x64, 0x7C, 0x34, 0x28, 0x3F, 0x3A, 0x38, 0x30, 0x7C, 0x39, 0x5C, 0x64, 0x29, 0x29, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x39, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x22, 0x26, 0x12, 0x12, 0x34, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x7C, 0x38, 0x30, 0x5B, 0x30, 0x32, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x38, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x2A, 0x1B, 0x12, 0x07, 0x37, 0x31, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x37, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x32, 0x1C, 0x12, 0x08, 0x38, 0x30, 0x38, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x38, 0x30, 0x38, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x1B, 0x12, 0x07, 0x33, 0x30, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x33, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x4A, 0x02, 0x50, 0x54, 0x50, 0xDF, 0x02, 0x5A, 0x02, 0x30, 0x30, 0x9A, 0x01, 0x2D, 0x0A, 0x1D, 0x28, 0x5B, 0x32, 0x2D, 0x34, 0x36, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x22, 0x00, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0x68, 0x0A, 0x00, 0x12, 0x00, 0x1A, 0x00, 0x22, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x2A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x50, 0x57, 0x50, 0xA8, 0x05, 0x5A, 0x03, 0x30, 0x31, 0x31, 0x90, 0x01, 0x01, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0x6E, 0x0A, 0x00, 0x12, 0x00, 0x1A, 0x00, 0x22, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x2A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x50, 0x59, 0x50, 0xD3, 0x04, 0x5A, 0x03, 0x30, 0x30, 0x32, 0x62, 0x01, 0x30, 0x7A, 0x01, 0x30, 0x90, 0x01, 0x01, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xA0, 0x02, 0x0A, 0x17, 0x12, 0x0C, 0x5B, 0x33, 0x2D, 0x38, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x2C, 0x37, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x38, 0x7D, 0x12, 0x1C, 0x12, 0x07, 0x34, 0x34, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x38, 0x7D, 0x32, 0x08, 0x34, 0x34, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x1A, 0x29, 0x12, 0x14, 0x28, 0x3F, 0x3A, 0x33, 0x33, 0x7C, 0x35, 0x35, 0x7C, 0x36, 0x36, 0x7C, 0x37, 0x37, 0x29, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x38, 0x7D, 0x32, 0x08, 0x33, 0x33, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x22, 0x1C, 0x12, 0x08, 0x38, 0x30, 0x30, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x38, 0x7D, 0x32, 0x07, 0x38, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x2A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x51, 0x41, 0x50, 0xCE, 0x07, 0x5A, 0x02, 0x30, 0x30, 0x9A, 0x01, 0x1F, 0x0A, 0x0F, 0x28, 0x38, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x1A, 0x01, 0x38, 0x22, 0x00, 0x2A, 0x00, 0x9A, 0x01, 0x27, 0x0A, 0x13, 0x28, 0x5B, 0x33, 0x2D, 0x37, 0x5D, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x1A, 0x05, 0x5B, 0x33, 0x2D, 0x37, 0x5D, 0x22, 0x00, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xE2, 0x02, 0x0A, 0x13, 0x12, 0x0A, 0x5B, 0x32, 0x36, 0x38, 0x5D, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x12, 0x1C, 0x12, 0x08, 0x32, 0x36, 0x32, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x32, 0x36, 0x32, 0x31, 0x36, 0x31, 0x32, 0x33, 0x34, 0x1A, 0x26, 0x12, 0x12, 0x36, 0x28, 0x3F, 0x3A, 0x39, 0x5B, 0x32, 0x33, 0x5D, 0x7C, 0x34, 0x37, 0x29, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x36, 0x39, 0x32, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x22, 0x1B, 0x12, 0x07, 0x38, 0x30, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x38, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x2A, 0x23, 0x12, 0x0F, 0x38, 0x39, 0x5B, 0x31, 0x2D, 0x33, 0x37, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x38, 0x39, 0x31, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x32, 0x32, 0x12, 0x1E, 0x38, 0x28, 0x3F, 0x3A, 0x31, 0x5B, 0x30, 0x31, 0x39, 0x5D, 0x7C, 0x32, 0x5B, 0x30, 0x31, 0x35, 0x36, 0x5D, 0x7C, 0x38, 0x34, 0x7C, 0x39, 0x30, 0x29, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x38, 0x31, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x52, 0x45, 0x50, 0x86, 0x02, 0x5A, 0x02, 0x30, 0x30, 0x62, 0x01, 0x30, 0x7A, 0x01, 0x30, 0x9A, 0x01, 0x37, 0x0A, 0x21, 0x28, 0x5B, 0x32, 0x36, 0x38, 0x5D, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x12, 0x0B, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x20, 0x24, 0x34, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xB0, 0x01, 0x01, 0xBA, 0x01, 0x0B, 0x32, 0x36, 0x32, 0x7C, 0x36, 0x5B, 0x34, 0x39, 0x5D, 0x7C, 0x38, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0x8D, 0x03, 0x0A, 0x15, 0x12, 0x0C, 0x5B, 0x32, 0x33, 0x37, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x12, 0x23, 0x12, 0x0F, 0x5B, 0x32, 0x33, 0x5D, 0x5B, 0x31, 0x33, 0x2D, 0x36, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x32, 0x31, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x1A, 0x1F, 0x12, 0x0B, 0x37, 0x5B, 0x31, 0x2D, 0x38, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x37, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x22, 0x1C, 0x12, 0x08, 0x38, 0x30, 0x30, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x38, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x2A, 0x20, 0x12, 0x0C, 0x39, 0x30, 0x5B, 0x30, 0x33, 0x36, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x39, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x32, 0x1C, 0x12, 0x08, 0x38, 0x30, 0x31, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x38, 0x30, 0x31, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x3A, 0x1C, 0x12, 0x08, 0x38, 0x30, 0x32, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x38, 0x30, 0x32, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x52, 0x4F, 0x50, 0x28, 0x5A, 0x02, 0x30, 0x30, 0x62, 0x01, 0x30, 0x6A, 0x05, 0x20, 0x69, 0x6E, 0x74, 0x20, 0x7A, 0x01, 0x30, 0x9A, 0x01, 0x33, 0x0A, 0x17, 0x28, 0x5B, 0x32, 0x33, 0x37, 0x5D, 0x5C, 0x64, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x07, 0x5B, 0x32, 0x33, 0x5D, 0x31, 0x7C, 0x37, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x39, 0x0A, 0x15, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x0F, 0x5B, 0x32, 0x33, 0x5D, 0x5B, 0x30, 0x32, 0x2D, 0x39, 0x5D, 0x7C, 0x5B, 0x38, 0x39, 0x5D, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xE8, 0x03, 0x0A, 0x1C, 0x12, 0x10, 0x5B, 0x31, 0x2D, 0x34, 0x36, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x34, 0x2C, 0x31, 0x31, 0x7D, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x35, 0x2C, 0x31, 0x32, 0x7D, 0x12, 0x21, 0x12, 0x0C, 0x5B, 0x31, 0x2D, 0x33, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x2C, 0x39, 0x7D, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x35, 0x2C, 0x31, 0x30, 0x7D, 0x32, 0x07, 0x31, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x1A, 0x25, 0x12, 0x10, 0x36, 0x5B, 0x30, 0x2D, 0x36, 0x38, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x33, 0x2C, 0x31, 0x30, 0x7D, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x35, 0x2C, 0x31, 0x32, 0x7D, 0x32, 0x07, 0x36, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x22, 0x1F, 0x12, 0x0A, 0x38, 0x30, 0x30, 0x5C, 0x64, 0x7B, 0x33, 0x2C, 0x36, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x36, 0x2C, 0x39, 0x7D, 0x32, 0x08, 0x38, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x2A, 0x29, 0x12, 0x14, 0x28, 0x3F, 0x3A, 0x39, 0x5B, 0x30, 0x2D, 0x32, 0x5D, 0x7C, 0x34, 0x32, 0x29, 0x5C, 0x64, 0x7B, 0x34, 0x2C, 0x37, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x36, 0x2C, 0x39, 0x7D, 0x32, 0x08, 0x39, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x52, 0x53, 0x50, 0xFD, 0x02, 0x5A, 0x02, 0x30, 0x30, 0x62, 0x01, 0x30, 0x7A, 0x01, 0x30, 0x9A, 0x01, 0x34, 0x0A, 0x14, 0x28, 0x5B, 0x32, 0x33, 0x5D, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x2C, 0x37, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x1A, 0x0E, 0x28, 0x3F, 0x3A, 0x32, 0x5B, 0x33, 0x38, 0x39, 0x5D, 0x7C, 0x33, 0x39, 0x29, 0x30, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x53, 0x0A, 0x12, 0x28, 0x5B, 0x31, 0x2D, 0x34, 0x5D, 0x5C, 0x64, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x2C, 0x38, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x1A, 0x2F, 0x31, 0x7C, 0x32, 0x28, 0x3F, 0x3A, 0x5B, 0x30, 0x2D, 0x32, 0x34, 0x2D, 0x37, 0x5D, 0x7C, 0x5B, 0x33, 0x38, 0x39, 0x5D, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x29, 0x7C, 0x33, 0x28, 0x3F, 0x3A, 0x5B, 0x30, 0x2D, 0x38, 0x5D, 0x7C, 0x39, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x29, 0x7C, 0x34, 0x32, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x27, 0x0A, 0x14, 0x28, 0x36, 0x5B, 0x30, 0x2D, 0x36, 0x38, 0x39, 0x5D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x2C, 0x31, 0x30, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x1A, 0x01, 0x36, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x2A, 0x0A, 0x14, 0x28, 0x5B, 0x38, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x2C, 0x36, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x1A, 0x04, 0x5B, 0x38, 0x39, 0x5D, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0x82, 0x04, 0x0A, 0x15, 0x12, 0x0B, 0x5B, 0x33, 0x34, 0x38, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x12, 0xB7, 0x01, 0x12, 0xA0, 0x01, 0x28, 0x3F, 0x3A, 0x33, 0x28, 0x3F, 0x3A, 0x30, 0x5B, 0x31, 0x32, 0x5D, 0x7C, 0x34, 0x5B, 0x31, 0x2D, 0x33, 0x35, 0x2D, 0x37, 0x39, 0x5D, 0x7C, 0x35, 0x5B, 0x31, 0x2D, 0x33, 0x5D, 0x7C, 0x38, 0x5B, 0x31, 0x2D, 0x35, 0x38, 0x5D, 0x7C, 0x39, 0x5B, 0x30, 0x31, 0x34, 0x35, 0x5D, 0x29, 0x7C, 0x34, 0x28, 0x3F, 0x3A, 0x30, 0x31, 0x7C, 0x31, 0x5B, 0x31, 0x33, 0x35, 0x36, 0x5D, 0x7C, 0x32, 0x5B, 0x31, 0x33, 0x34, 0x36, 0x37, 0x5D, 0x7C, 0x37, 0x5B, 0x31, 0x2D, 0x35, 0x5D, 0x7C, 0x38, 0x5B, 0x31, 0x2D, 0x37, 0x5D, 0x7C, 0x39, 0x5B, 0x31, 0x2D, 0x36, 0x38, 0x39, 0x5D, 0x29, 0x7C, 0x38, 0x28, 0x3F, 0x3A, 0x31, 0x5B, 0x31, 0x2D, 0x38, 0x5D, 0x7C, 0x32, 0x5B, 0x30, 0x31, 0x5D, 0x7C, 0x33, 0x5B, 0x31, 0x33, 0x2D, 0x36, 0x5D, 0x7C, 0x34, 0x5B, 0x30, 0x2D, 0x38, 0x5D, 0x7C, 0x35, 0x5B, 0x31, 0x35, 0x5D, 0x7C, 0x36, 0x5B, 0x31, 0x2D, 0x33, 0x35, 0x2D, 0x37, 0x5D, 0x7C, 0x37, 0x5B, 0x31, 0x2D, 0x33, 0x37, 0x2D, 0x39, 0x5D, 0x29, 0x29, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x33, 0x30, 0x31, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x1A, 0x1C, 0x12, 0x06, 0x39, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x39, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x22, 0x21, 0x12, 0x0B, 0x38, 0x30, 0x5B, 0x30, 0x34, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x38, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x2A, 0x21, 0x12, 0x0B, 0x38, 0x30, 0x5B, 0x33, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x38, 0x30, 0x39, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x52, 0x55, 0x50, 0x07, 0x5A, 0x04, 0x38, 0x7E, 0x31, 0x30, 0x62, 0x01, 0x38, 0x7A, 0x01, 0x38, 0x9A, 0x01, 0x44, 0x0A, 0x22, 0x28, 0x5B, 0x33, 0x34, 0x38, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x12, 0x0B, 0x24, 0x31, 0x20, 0x24, 0x32, 0x2D, 0x24, 0x33, 0x2D, 0x24, 0x34, 0x1A, 0x07, 0x5B, 0x33, 0x34, 0x36, 0x38, 0x39, 0x5D, 0x22, 0x06, 0x38, 0x20, 0x28, 0x24, 0x31, 0x29, 0x2A, 0x00, 0x9A, 0x01, 0x2F, 0x0A, 0x16, 0x28, 0x37, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x01, 0x37, 0x22, 0x06, 0x38, 0x20, 0x28, 0x24, 0x31, 0x29, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xB0, 0x01, 0x01, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xC4, 0x02, 0x0A, 0x14, 0x12, 0x0B, 0x5B, 0x32, 0x37, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x12, 0x1B, 0x12, 0x07, 0x32, 0x35, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x32, 0x35, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x1A, 0x1F, 0x12, 0x0B, 0x37, 0x5B, 0x32, 0x35, 0x38, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x37, 0x32, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x22, 0x1C, 0x12, 0x08, 0x38, 0x30, 0x30, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x38, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x2A, 0x1C, 0x12, 0x08, 0x39, 0x30, 0x30, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x39, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x52, 0x57, 0x50, 0xFA, 0x01, 0x5A, 0x03, 0x30, 0x30, 0x30, 0x62, 0x01, 0x30, 0x7A, 0x01, 0x30, 0x9A, 0x01, 0x29, 0x0A, 0x14, 0x28, 0x32, 0x35, 0x5C, 0x64, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x01, 0x32, 0x22, 0x02, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x34, 0x0A, 0x1A, 0x28, 0x5B, 0x37, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x05, 0x5B, 0x37, 0x2D, 0x39, 0x5D, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0x99, 0x04, 0x0A, 0x19, 0x12, 0x0D, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x31, 0x30, 0x7D, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x31, 0x31, 0x7D, 0x12, 0x4E, 0x12, 0x39, 0x28, 0x3F, 0x3A, 0x31, 0x5B, 0x32, 0x34, 0x2D, 0x37, 0x5D, 0x7C, 0x32, 0x5B, 0x32, 0x34, 0x2D, 0x38, 0x5D, 0x7C, 0x33, 0x5B, 0x33, 0x35, 0x2D, 0x38, 0x5D, 0x7C, 0x34, 0x5B, 0x33, 0x34, 0x2D, 0x36, 0x38, 0x5D, 0x7C, 0x36, 0x5B, 0x32, 0x2D, 0x35, 0x5D, 0x7C, 0x37, 0x5B, 0x32, 0x33, 0x35, 0x2D, 0x37, 0x5D, 0x29, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x38, 0x7D, 0x32, 0x08, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x1A, 0x30, 0x12, 0x19, 0x28, 0x3F, 0x3A, 0x35, 0x5B, 0x30, 0x31, 0x33, 0x2D, 0x36, 0x39, 0x5D, 0x5C, 0x64, 0x7C, 0x38, 0x31, 0x31, 0x31, 0x29, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x39, 0x2C, 0x31, 0x30, 0x7D, 0x32, 0x09, 0x35, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x22, 0x1E, 0x12, 0x08, 0x38, 0x30, 0x30, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x38, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x2A, 0x20, 0x12, 0x09, 0x39, 0x32, 0x30, 0x30, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x31, 0x7D, 0x32, 0x0B, 0x39, 0x32, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x53, 0x41, 0x50, 0xC6, 0x07, 0x5A, 0x02, 0x30, 0x30, 0x62, 0x01, 0x30, 0x7A, 0x01, 0x30, 0x9A, 0x01, 0x33, 0x0A, 0x17, 0x28, 0x5B, 0x31, 0x2D, 0x34, 0x36, 0x37, 0x5D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x07, 0x5B, 0x31, 0x2D, 0x34, 0x36, 0x37, 0x5D, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x2A, 0x0A, 0x14, 0x28, 0x39, 0x32, 0x30, 0x30, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x01, 0x39, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x29, 0x0A, 0x13, 0x28, 0x35, 0x5C, 0x64, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x01, 0x35, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x2A, 0x0A, 0x13, 0x28, 0x38, 0x30, 0x30, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x02, 0x38, 0x30, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x2B, 0x0A, 0x14, 0x28, 0x38, 0x31, 0x31, 0x31, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x02, 0x38, 0x31, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0x67, 0x0A, 0x00, 0x12, 0x00, 0x1A, 0x00, 0x22, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x2A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x53, 0x42, 0x50, 0xA5, 0x05, 0x5A, 0x02, 0x30, 0x30, 0x90, 0x01, 0x01, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xBB, 0x04, 0x0A, 0x17, 0x12, 0x0C, 0x5B, 0x32, 0x2D, 0x38, 0x5D, 0x5C, 0x64, 0x7B, 0x35, 0x2C, 0x36, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x36, 0x2C, 0x37, 0x7D, 0x12, 0xD7, 0x01, 0x12, 0xC5, 0x01, 0x28, 0x3F, 0x3A, 0x32, 0x28, 0x3F, 0x3A, 0x31, 0x5B, 0x37, 0x38, 0x5D, 0x7C, 0x32, 0x5B, 0x31, 0x34, 0x2D, 0x36, 0x39, 0x5D, 0x7C, 0x33, 0x5B, 0x32, 0x2D, 0x34, 0x5D, 0x7C, 0x34, 0x5B, 0x31, 0x2D, 0x33, 0x36, 0x2D, 0x38, 0x5D, 0x7C, 0x36, 0x5B, 0x31, 0x36, 0x37, 0x5D, 0x7C, 0x5B, 0x38, 0x39, 0x5D, 0x5C, 0x64, 0x29, 0x7C, 0x33, 0x28, 0x3F, 0x3A, 0x32, 0x5B, 0x31, 0x2D, 0x36, 0x5D, 0x7C, 0x34, 0x5B, 0x34, 0x2D, 0x36, 0x5D, 0x7C, 0x35, 0x35, 0x7C, 0x36, 0x5B, 0x30, 0x31, 0x36, 0x5D, 0x7C, 0x37, 0x5C, 0x64, 0x7C, 0x38, 0x5B, 0x30, 0x2D, 0x35, 0x38, 0x39, 0x5D, 0x7C, 0x39, 0x5B, 0x30, 0x2D, 0x35, 0x5D, 0x29, 0x7C, 0x35, 0x28, 0x3F, 0x3A, 0x35, 0x5C, 0x64, 0x7C, 0x36, 0x5B, 0x30, 0x2D, 0x32, 0x5D, 0x29, 0x7C, 0x36, 0x28, 0x3F, 0x3A, 0x30, 0x5B, 0x30, 0x2D, 0x32, 0x37, 0x2D, 0x39, 0x5D, 0x7C, 0x31, 0x5B, 0x30, 0x2D, 0x34, 0x37, 0x38, 0x5D, 0x7C, 0x32, 0x5B, 0x31, 0x34, 0x35, 0x5D, 0x7C, 0x33, 0x5B, 0x30, 0x32, 0x2D, 0x34, 0x5D, 0x7C, 0x34, 0x5B, 0x31, 0x32, 0x34, 0x5D, 0x7C, 0x36, 0x5B, 0x30, 0x31, 0x35, 0x5D, 0x7C, 0x37, 0x5C, 0x64, 0x7C, 0x38, 0x5B, 0x31, 0x2D, 0x33, 0x5D, 0x29, 0x7C, 0x37, 0x38, 0x5B, 0x30, 0x31, 0x33, 0x38, 0x5D, 0x29, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x32, 0x06, 0x32, 0x31, 0x37, 0x31, 0x32, 0x33, 0x1A, 0x4F, 0x12, 0x3E, 0x28, 0x3F, 0x3A, 0x35, 0x28, 0x3F, 0x3A, 0x5B, 0x31, 0x32, 0x34, 0x37, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7C, 0x36, 0x5B, 0x33, 0x2D, 0x39, 0x5D, 0x29, 0x7C, 0x37, 0x28, 0x3F, 0x3A, 0x5B, 0x31, 0x34, 0x36, 0x37, 0x39, 0x5D, 0x5C, 0x64, 0x7C, 0x32, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x7C, 0x38, 0x5B, 0x32, 0x34, 0x2D, 0x37, 0x39, 0x5D, 0x29, 0x29, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x32, 0x06, 0x35, 0x31, 0x30, 0x31, 0x32, 0x33, 0x22, 0x1A, 0x12, 0x09, 0x38, 0x30, 0x30, 0x30, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x32, 0x06, 0x38, 0x30, 0x30, 0x30, 0x30, 0x30, 0x2A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x26, 0x12, 0x14, 0x28, 0x3F, 0x3A, 0x34, 0x34, 0x5B, 0x31, 0x2D, 0x33, 0x5D, 0x7C, 0x36, 0x34, 0x37, 0x29, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x32, 0x07, 0x34, 0x34, 0x31, 0x30, 0x31, 0x32, 0x33, 0x4A, 0x02, 0x53, 0x43, 0x50, 0xF8, 0x01, 0x5A, 0x06, 0x30, 0x5B, 0x30, 0x2D, 0x32, 0x5D, 0x8A, 0x01, 0x02, 0x30, 0x30, 0x9A, 0x01, 0x31, 0x0A, 0x0E, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x1A, 0x14, 0x5B, 0x32, 0x33, 0x35, 0x37, 0x38, 0x5D, 0x7C, 0x5B, 0x34, 0x36, 0x5D, 0x5B, 0x30, 0x2D, 0x33, 0x35, 0x2D, 0x39, 0x5D, 0x22, 0x00, 0x2A, 0x00, 0x9A, 0x01, 0x29, 0x0A, 0x12, 0x28, 0x5C, 0x64, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x05, 0x5B, 0x34, 0x36, 0x5D, 0x34, 0x22, 0x00, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xF3, 0x01, 0x0A, 0x12, 0x12, 0x09, 0x5B, 0x31, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x12, 0x2C, 0x12, 0x18, 0x31, 0x28, 0x3F, 0x3A, 0x5B, 0x32, 0x35, 0x5D, 0x5C, 0x64, 0x7C, 0x38, 0x5B, 0x33, 0x35, 0x36, 0x37, 0x5D, 0x29, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x31, 0x32, 0x31, 0x32, 0x33, 0x31, 0x32, 0x33, 0x34, 0x1A, 0x20, 0x12, 0x0C, 0x39, 0x5B, 0x31, 0x32, 0x35, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x39, 0x31, 0x31, 0x32, 0x33, 0x31, 0x32, 0x33, 0x34, 0x22, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x2A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x53, 0x44, 0x50, 0xF9, 0x01, 0x5A, 0x02, 0x30, 0x30, 0x62, 0x01, 0x30, 0x7A, 0x01, 0x30, 0x9A, 0x01, 0x28, 0x0A, 0x15, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0x8C, 0x11, 0x0A, 0x14, 0x12, 0x08, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x31, 0x30, 0x7D, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x35, 0x2C, 0x31, 0x30, 0x7D, 0x12, 0xD5, 0x04, 0x12, 0xC0, 0x04, 0x31, 0x28, 0x3F, 0x3A, 0x30, 0x5B, 0x31, 0x2D, 0x38, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x7C, 0x5B, 0x31, 0x33, 0x36, 0x5D, 0x5C, 0x64, 0x7B, 0x35, 0x2C, 0x37, 0x7D, 0x7C, 0x28, 0x3F, 0x3A, 0x32, 0x5B, 0x30, 0x2D, 0x33, 0x35, 0x5D, 0x7C, 0x34, 0x5B, 0x30, 0x2D, 0x34, 0x5D, 0x7C, 0x35, 0x5B, 0x30, 0x2D, 0x32, 0x35, 0x2D, 0x39, 0x5D, 0x7C, 0x37, 0x5B, 0x31, 0x33, 0x2D, 0x36, 0x5D, 0x7C, 0x5B, 0x38, 0x39, 0x5D, 0x5C, 0x64, 0x29, 0x5C, 0x64, 0x7B, 0x35, 0x2C, 0x36, 0x7D, 0x29, 0x7C, 0x32, 0x28, 0x3F, 0x3A, 0x5B, 0x31, 0x33, 0x36, 0x5D, 0x5C, 0x64, 0x7B, 0x35, 0x2C, 0x37, 0x7D, 0x7C, 0x28, 0x3F, 0x3A, 0x32, 0x5B, 0x30, 0x2D, 0x37, 0x5D, 0x7C, 0x34, 0x5B, 0x30, 0x31, 0x33, 0x36, 0x2D, 0x38, 0x5D, 0x7C, 0x35, 0x5B, 0x30, 0x2D, 0x33, 0x38, 0x5D, 0x7C, 0x37, 0x5B, 0x30, 0x31, 0x38, 0x5D, 0x7C, 0x38, 0x5B, 0x30, 0x31, 0x5D, 0x7C, 0x39, 0x5B, 0x30, 0x2D, 0x35, 0x37, 0x5D, 0x29, 0x5C, 0x64, 0x7B, 0x35, 0x2C, 0x36, 0x7D, 0x29, 0x7C, 0x33, 0x28, 0x3F, 0x3A, 0x5B, 0x33, 0x35, 0x36, 0x5D, 0x5C, 0x64, 0x7B, 0x35, 0x2C, 0x37, 0x7D, 0x7C, 0x28, 0x3F, 0x3A, 0x30, 0x5B, 0x30, 0x2D, 0x34, 0x5D, 0x7C, 0x31, 0x5C, 0x64, 0x7C, 0x32, 0x5B, 0x30, 0x2D, 0x32, 0x35, 0x5D, 0x7C, 0x34, 0x5B, 0x30, 0x35, 0x36, 0x5D, 0x7C, 0x37, 0x5B, 0x30, 0x2D, 0x32, 0x5D, 0x7C, 0x38, 0x5B, 0x30, 0x2D, 0x33, 0x5D, 0x7C, 0x39, 0x5B, 0x30, 0x32, 0x33, 0x5D, 0x29, 0x5C, 0x64, 0x7B, 0x35, 0x2C, 0x36, 0x7D, 0x29, 0x7C, 0x34, 0x28, 0x3F, 0x3A, 0x5B, 0x30, 0x32, 0x34, 0x36, 0x5D, 0x5C, 0x64, 0x7B, 0x35, 0x2C, 0x37, 0x7D, 0x7C, 0x28, 0x3F, 0x3A, 0x31, 0x5B, 0x30, 0x31, 0x2D, 0x38, 0x5D, 0x7C, 0x33, 0x5B, 0x30, 0x31, 0x33, 0x35, 0x5D, 0x7C, 0x35, 0x5B, 0x31, 0x34, 0x2D, 0x37, 0x39, 0x5D, 0x7C, 0x37, 0x5B, 0x30, 0x2D, 0x32, 0x34, 0x36, 0x2D, 0x39, 0x5D, 0x7C, 0x38, 0x5B, 0x30, 0x31, 0x35, 0x36, 0x5D, 0x7C, 0x39, 0x5B, 0x30, 0x2D, 0x36, 0x38, 0x39, 0x5D, 0x29, 0x5C, 0x64, 0x7B, 0x35, 0x2C, 0x36, 0x7D, 0x29, 0x7C, 0x35, 0x28, 0x3F, 0x3A, 0x30, 0x5B, 0x30, 0x2D, 0x36, 0x5D, 0x7C, 0x31, 0x5B, 0x31, 0x2D, 0x35, 0x5D, 0x7C, 0x32, 0x5B, 0x30, 0x2D, 0x36, 0x38, 0x5D, 0x7C, 0x33, 0x5B, 0x30, 0x2D, 0x34, 0x5D, 0x7C, 0x34, 0x5C, 0x64, 0x7C, 0x35, 0x5B, 0x30, 0x2D, 0x35, 0x5D, 0x7C, 0x36, 0x5B, 0x30, 0x33, 0x2D, 0x35, 0x5D, 0x7C, 0x37, 0x5B, 0x30, 0x31, 0x33, 0x5D, 0x7C, 0x38, 0x5B, 0x30, 0x2D, 0x37, 0x39, 0x5D, 0x7C, 0x39, 0x5B, 0x30, 0x31, 0x5D, 0x29, 0x5C, 0x64, 0x7B, 0x35, 0x2C, 0x36, 0x7D, 0x7C, 0x36, 0x28, 0x3F, 0x3A, 0x5B, 0x30, 0x33, 0x5D, 0x5C, 0x64, 0x7B, 0x35, 0x2C, 0x37, 0x7D, 0x7C, 0x28, 0x3F, 0x3A, 0x31, 0x5B, 0x31, 0x2D, 0x33, 0x5D, 0x7C, 0x32, 0x5B, 0x30, 0x2D, 0x34, 0x5D, 0x7C, 0x34, 0x5B, 0x30, 0x32, 0x2D, 0x35, 0x37, 0x5D, 0x7C, 0x35, 0x5B, 0x30, 0x2D, 0x33, 0x37, 0x5D, 0x7C, 0x36, 0x5B, 0x30, 0x2D, 0x33, 0x5D, 0x7C, 0x37, 0x5B, 0x30, 0x2D, 0x32, 0x5D, 0x7C, 0x38, 0x5B, 0x30, 0x32, 0x34, 0x37, 0x5D, 0x7C, 0x39, 0x5B, 0x30, 0x2D, 0x33, 0x35, 0x36, 0x5D, 0x29, 0x5C, 0x64, 0x7B, 0x35, 0x2C, 0x36, 0x7D, 0x29, 0x7C, 0x38, 0x5C, 0x64, 0x7B, 0x36, 0x2C, 0x38, 0x7D, 0x7C, 0x39, 0x28, 0x3F, 0x3A, 0x30, 0x5C, 0x64, 0x7B, 0x35, 0x2C, 0x37, 0x7D, 0x7C, 0x28, 0x3F, 0x3A, 0x31, 0x5B, 0x30, 0x2D, 0x36, 0x38, 0x5D, 0x7C, 0x32, 0x5C, 0x64, 0x7C, 0x33, 0x5B, 0x30, 0x32, 0x2D, 0x35, 0x39, 0x5D, 0x7C, 0x34, 0x5B, 0x30, 0x2D, 0x34, 0x5D, 0x7C, 0x35, 0x5B, 0x30, 0x2D, 0x34, 0x5D, 0x7C, 0x36, 0x5B, 0x30, 0x31, 0x5D, 0x7C, 0x37, 0x5B, 0x30, 0x31, 0x33, 0x35, 0x2D, 0x38, 0x5D, 0x7C, 0x38, 0x5B, 0x30, 0x31, 0x5D, 0x29, 0x5C, 0x64, 0x7B, 0x35, 0x2C, 0x36, 0x7D, 0x29, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x35, 0x2C, 0x39, 0x7D, 0x32, 0x07, 0x38, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x1A, 0x21, 0x12, 0x0D, 0x37, 0x5B, 0x30, 0x32, 0x2D, 0x34, 0x36, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x37, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x22, 0x1F, 0x12, 0x09, 0x32, 0x30, 0x5C, 0x64, 0x7B, 0x34, 0x2C, 0x37, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x36, 0x2C, 0x39, 0x7D, 0x32, 0x09, 0x32, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x2A, 0x28, 0x12, 0x12, 0x39, 0x28, 0x3F, 0x3A, 0x30, 0x30, 0x7C, 0x33, 0x39, 0x7C, 0x34, 0x34, 0x29, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x39, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x32, 0x1B, 0x12, 0x07, 0x37, 0x37, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x37, 0x37, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x53, 0x45, 0x50, 0x2E, 0x5A, 0x02, 0x30, 0x30, 0x62, 0x01, 0x30, 0x7A, 0x01, 0x30, 0x9A, 0x01, 0x35, 0x0A, 0x1C, 0x28, 0x38, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x2C, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x2C, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x12, 0x0B, 0x24, 0x31, 0x2D, 0x24, 0x32, 0x20, 0x24, 0x33, 0x20, 0x24, 0x34, 0x1A, 0x01, 0x38, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x66, 0x0A, 0x21, 0x28, 0x5B, 0x31, 0x2D, 0x36, 0x39, 0x5D, 0x5C, 0x64, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x2C, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x12, 0x0B, 0x24, 0x31, 0x2D, 0x24, 0x32, 0x20, 0x24, 0x33, 0x20, 0x24, 0x34, 0x1A, 0x2D, 0x31, 0x5B, 0x30, 0x31, 0x33, 0x36, 0x38, 0x39, 0x5D, 0x7C, 0x32, 0x5B, 0x30, 0x31, 0x33, 0x36, 0x5D, 0x7C, 0x33, 0x5B, 0x31, 0x33, 0x35, 0x36, 0x5D, 0x7C, 0x34, 0x5B, 0x30, 0x32, 0x34, 0x36, 0x5D, 0x7C, 0x35, 0x34, 0x7C, 0x36, 0x5B, 0x30, 0x33, 0x5D, 0x7C, 0x39, 0x30, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x58, 0x0A, 0x18, 0x28, 0x5B, 0x31, 0x2D, 0x36, 0x39, 0x5D, 0x5C, 0x64, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x2D, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x2B, 0x31, 0x5B, 0x31, 0x33, 0x36, 0x38, 0x39, 0x5D, 0x7C, 0x32, 0x5B, 0x31, 0x33, 0x36, 0x5D, 0x7C, 0x33, 0x5B, 0x31, 0x33, 0x35, 0x36, 0x5D, 0x7C, 0x34, 0x5B, 0x30, 0x32, 0x34, 0x36, 0x5D, 0x7C, 0x35, 0x34, 0x7C, 0x36, 0x5B, 0x30, 0x33, 0x5D, 0x7C, 0x39, 0x30, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x87, 0x01, 0x0A, 0x1C, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x12, 0x0B, 0x24, 0x31, 0x2D, 0x24, 0x32, 0x20, 0x24, 0x33, 0x20, 0x24, 0x34, 0x1A, 0x53, 0x31, 0x5B, 0x32, 0x34, 0x35, 0x37, 0x5D, 0x7C, 0x32, 0x5B, 0x32, 0x34, 0x35, 0x37, 0x2D, 0x39, 0x5D, 0x7C, 0x33, 0x5B, 0x30, 0x32, 0x34, 0x37, 0x2D, 0x39, 0x5D, 0x7C, 0x34, 0x5B, 0x31, 0x33, 0x35, 0x37, 0x2D, 0x39, 0x5D, 0x7C, 0x35, 0x5B, 0x30, 0x2D, 0x33, 0x35, 0x2D, 0x39, 0x5D, 0x7C, 0x36, 0x5B, 0x31, 0x32, 0x34, 0x2D, 0x39, 0x5D, 0x7C, 0x39, 0x28, 0x3F, 0x3A, 0x5B, 0x31, 0x32, 0x35, 0x2D, 0x38, 0x5D, 0x7C, 0x33, 0x5B, 0x30, 0x2D, 0x35, 0x5D, 0x7C, 0x34, 0x5B, 0x30, 0x2D, 0x33, 0x5D, 0x29, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x7F, 0x0A, 0x17, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x2C, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x2D, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x53, 0x31, 0x5B, 0x32, 0x34, 0x35, 0x37, 0x5D, 0x7C, 0x32, 0x5B, 0x32, 0x34, 0x35, 0x37, 0x2D, 0x39, 0x5D, 0x7C, 0x33, 0x5B, 0x30, 0x32, 0x34, 0x37, 0x2D, 0x39, 0x5D, 0x7C, 0x34, 0x5B, 0x31, 0x33, 0x35, 0x37, 0x2D, 0x39, 0x5D, 0x7C, 0x35, 0x5B, 0x30, 0x2D, 0x33, 0x35, 0x2D, 0x39, 0x5D, 0x7C, 0x36, 0x5B, 0x31, 0x32, 0x34, 0x2D, 0x39, 0x5D, 0x7C, 0x39, 0x28, 0x3F, 0x3A, 0x5B, 0x31, 0x32, 0x35, 0x2D, 0x38, 0x5D, 0x7C, 0x33, 0x5B, 0x30, 0x2D, 0x35, 0x5D, 0x7C, 0x34, 0x5B, 0x30, 0x2D, 0x33, 0x5D, 0x29, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x41, 0x0A, 0x20, 0x28, 0x37, 0x5B, 0x30, 0x32, 0x2D, 0x34, 0x36, 0x37, 0x5D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x12, 0x0B, 0x24, 0x31, 0x2D, 0x24, 0x32, 0x20, 0x24, 0x33, 0x20, 0x24, 0x34, 0x1A, 0x09, 0x37, 0x5B, 0x30, 0x32, 0x2D, 0x34, 0x36, 0x37, 0x5D, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x2B, 0x0A, 0x14, 0x28, 0x32, 0x30, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x2C, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x2D, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x02, 0x32, 0x30, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x3D, 0x0A, 0x1F, 0x28, 0x39, 0x5B, 0x30, 0x33, 0x34, 0x5D, 0x5C, 0x64, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x12, 0x0B, 0x24, 0x31, 0x2D, 0x24, 0x32, 0x20, 0x24, 0x33, 0x20, 0x24, 0x34, 0x1A, 0x06, 0x39, 0x5B, 0x30, 0x33, 0x34, 0x5D, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0xA2, 0x01, 0x30, 0x0A, 0x1C, 0x28, 0x38, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x2C, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x2C, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x12, 0x0B, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x20, 0x24, 0x34, 0x1A, 0x01, 0x38, 0x2A, 0x00, 0xA2, 0x01, 0x61, 0x0A, 0x21, 0x28, 0x5B, 0x31, 0x2D, 0x36, 0x39, 0x5D, 0x5C, 0x64, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x2C, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x12, 0x0B, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x20, 0x24, 0x34, 0x1A, 0x2D, 0x31, 0x5B, 0x30, 0x31, 0x33, 0x36, 0x38, 0x39, 0x5D, 0x7C, 0x32, 0x5B, 0x30, 0x31, 0x33, 0x36, 0x5D, 0x7C, 0x33, 0x5B, 0x31, 0x33, 0x35, 0x36, 0x5D, 0x7C, 0x34, 0x5B, 0x30, 0x32, 0x34, 0x36, 0x5D, 0x7C, 0x35, 0x34, 0x7C, 0x36, 0x5B, 0x30, 0x33, 0x5D, 0x7C, 0x39, 0x30, 0x2A, 0x00, 0xA2, 0x01, 0x53, 0x0A, 0x18, 0x28, 0x5B, 0x31, 0x2D, 0x36, 0x39, 0x5D, 0x5C, 0x64, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x2B, 0x31, 0x5B, 0x31, 0x33, 0x36, 0x38, 0x39, 0x5D, 0x7C, 0x32, 0x5B, 0x31, 0x33, 0x36, 0x5D, 0x7C, 0x33, 0x5B, 0x31, 0x33, 0x35, 0x36, 0x5D, 0x7C, 0x34, 0x5B, 0x30, 0x32, 0x34, 0x36, 0x5D, 0x7C, 0x35, 0x34, 0x7C, 0x36, 0x5B, 0x30, 0x33, 0x5D, 0x7C, 0x39, 0x30, 0x2A, 0x00, 0xA2, 0x01, 0x82, 0x01, 0x0A, 0x1C, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x12, 0x0B, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x20, 0x24, 0x34, 0x1A, 0x53, 0x31, 0x5B, 0x32, 0x34, 0x35, 0x37, 0x5D, 0x7C, 0x32, 0x5B, 0x32, 0x34, 0x35, 0x37, 0x2D, 0x39, 0x5D, 0x7C, 0x33, 0x5B, 0x30, 0x32, 0x34, 0x37, 0x2D, 0x39, 0x5D, 0x7C, 0x34, 0x5B, 0x31, 0x33, 0x35, 0x37, 0x2D, 0x39, 0x5D, 0x7C, 0x35, 0x5B, 0x30, 0x2D, 0x33, 0x35, 0x2D, 0x39, 0x5D, 0x7C, 0x36, 0x5B, 0x31, 0x32, 0x34, 0x2D, 0x39, 0x5D, 0x7C, 0x39, 0x28, 0x3F, 0x3A, 0x5B, 0x31, 0x32, 0x35, 0x2D, 0x38, 0x5D, 0x7C, 0x33, 0x5B, 0x30, 0x2D, 0x35, 0x5D, 0x7C, 0x34, 0x5B, 0x30, 0x2D, 0x33, 0x5D, 0x29, 0x2A, 0x00, 0xA2, 0x01, 0x7A, 0x0A, 0x17, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x2C, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x53, 0x31, 0x5B, 0x32, 0x34, 0x35, 0x37, 0x5D, 0x7C, 0x32, 0x5B, 0x32, 0x34, 0x35, 0x37, 0x2D, 0x39, 0x5D, 0x7C, 0x33, 0x5B, 0x30, 0x32, 0x34, 0x37, 0x2D, 0x39, 0x5D, 0x7C, 0x34, 0x5B, 0x31, 0x33, 0x35, 0x37, 0x2D, 0x39, 0x5D, 0x7C, 0x35, 0x5B, 0x30, 0x2D, 0x33, 0x35, 0x2D, 0x39, 0x5D, 0x7C, 0x36, 0x5B, 0x31, 0x32, 0x34, 0x2D, 0x39, 0x5D, 0x7C, 0x39, 0x28, 0x3F, 0x3A, 0x5B, 0x31, 0x32, 0x35, 0x2D, 0x38, 0x5D, 0x7C, 0x33, 0x5B, 0x30, 0x2D, 0x35, 0x5D, 0x7C, 0x34, 0x5B, 0x30, 0x2D, 0x33, 0x5D, 0x29, 0x2A, 0x00, 0xA2, 0x01, 0x3C, 0x0A, 0x20, 0x28, 0x37, 0x5B, 0x30, 0x32, 0x2D, 0x34, 0x36, 0x37, 0x5D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x12, 0x0B, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x20, 0x24, 0x34, 0x1A, 0x09, 0x37, 0x5B, 0x30, 0x32, 0x2D, 0x34, 0x36, 0x37, 0x5D, 0x2A, 0x00, 0xA2, 0x01, 0x26, 0x0A, 0x14, 0x28, 0x32, 0x30, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x2C, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x02, 0x32, 0x30, 0x2A, 0x00, 0xA2, 0x01, 0x38, 0x0A, 0x1F, 0x28, 0x39, 0x5B, 0x30, 0x33, 0x34, 0x5D, 0x5C, 0x64, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x12, 0x0B, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x20, 0x24, 0x34, 0x1A, 0x06, 0x39, 0x5B, 0x30, 0x33, 0x34, 0x5D, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xF1, 0x03, 0x0A, 0x24, 0x12, 0x18, 0x5B, 0x33, 0x36, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x7C, 0x5B, 0x31, 0x37, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x31, 0x30, 0x7D, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x38, 0x2C, 0x31, 0x31, 0x7D, 0x12, 0x1E, 0x12, 0x0B, 0x36, 0x5B, 0x31, 0x2D, 0x38, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x36, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x1A, 0x29, 0x12, 0x16, 0x28, 0x3F, 0x3A, 0x38, 0x5B, 0x31, 0x2D, 0x35, 0x5D, 0x7C, 0x39, 0x5B, 0x30, 0x2D, 0x38, 0x5D, 0x29, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x38, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x22, 0x24, 0x12, 0x0A, 0x31, 0x3F, 0x38, 0x30, 0x30, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x09, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x2C, 0x31, 0x31, 0x7D, 0x32, 0x0B, 0x31, 0x38, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x2A, 0x20, 0x12, 0x09, 0x31, 0x39, 0x30, 0x30, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x31, 0x7D, 0x32, 0x0B, 0x31, 0x39, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x1E, 0x12, 0x0B, 0x33, 0x5B, 0x30, 0x2D, 0x32, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x33, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x4A, 0x02, 0x53, 0x47, 0x50, 0x41, 0x5A, 0x0B, 0x30, 0x5B, 0x30, 0x2D, 0x33, 0x5D, 0x5B, 0x30, 0x2D, 0x39, 0x5D, 0x9A, 0x01, 0x2F, 0x0A, 0x14, 0x28, 0x5B, 0x33, 0x36, 0x38, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x1A, 0x0C, 0x5B, 0x33, 0x36, 0x39, 0x5D, 0x7C, 0x38, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x22, 0x00, 0x2A, 0x00, 0x9A, 0x01, 0x2E, 0x0A, 0x17, 0x28, 0x31, 0x5B, 0x38, 0x39, 0x5D, 0x30, 0x30, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x05, 0x31, 0x5B, 0x38, 0x39, 0x5D, 0x22, 0x00, 0x2A, 0x00, 0x9A, 0x01, 0x28, 0x0A, 0x14, 0x28, 0x37, 0x30, 0x30, 0x30, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x02, 0x37, 0x30, 0x22, 0x00, 0x2A, 0x00, 0x9A, 0x01, 0x27, 0x0A, 0x13, 0x28, 0x38, 0x30, 0x30, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x02, 0x38, 0x30, 0x22, 0x00, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x20, 0x12, 0x09, 0x37, 0x30, 0x30, 0x30, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x31, 0x7D, 0x32, 0x0B, 0x37, 0x30, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x0A, 0xC3, 0x01, 0x0A, 0x13, 0x12, 0x0A, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x12, 0x27, 0x12, 0x18, 0x28, 0x3F, 0x3A, 0x5B, 0x32, 0x2D, 0x34, 0x36, 0x38, 0x5D, 0x5C, 0x64, 0x7C, 0x37, 0x5B, 0x30, 0x31, 0x5D, 0x29, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x32, 0x04, 0x32, 0x31, 0x35, 0x38, 0x1A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x22, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x2A, 0x25, 0x12, 0x16, 0x28, 0x3F, 0x3A, 0x5B, 0x35, 0x39, 0x5D, 0x5C, 0x64, 0x7C, 0x37, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x29, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x32, 0x04, 0x35, 0x30, 0x31, 0x32, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x53, 0x48, 0x50, 0xA2, 0x02, 0x5A, 0x02, 0x30, 0x30, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xD2, 0x04, 0x0A, 0x23, 0x12, 0x18, 0x5B, 0x31, 0x2D, 0x37, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x2C, 0x37, 0x7D, 0x7C, 0x5B, 0x38, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x34, 0x2C, 0x37, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x35, 0x2C, 0x38, 0x7D, 0x12, 0x41, 0x12, 0x2C, 0x28, 0x3F, 0x3A, 0x31, 0x5C, 0x64, 0x7C, 0x32, 0x5B, 0x32, 0x2D, 0x38, 0x5D, 0x7C, 0x33, 0x5B, 0x34, 0x2D, 0x38, 0x5D, 0x7C, 0x34, 0x5B, 0x32, 0x34, 0x2D, 0x38, 0x5D, 0x7C, 0x5B, 0x35, 0x37, 0x5D, 0x5B, 0x33, 0x2D, 0x38, 0x5D, 0x29, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x38, 0x7D, 0x32, 0x08, 0x31, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x1A, 0x31, 0x12, 0x1E, 0x28, 0x3F, 0x3A, 0x5B, 0x33, 0x37, 0x5D, 0x5B, 0x30, 0x31, 0x5D, 0x7C, 0x34, 0x5B, 0x30, 0x31, 0x39, 0x5D, 0x7C, 0x35, 0x31, 0x7C, 0x36, 0x34, 0x29, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x33, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x22, 0x1E, 0x12, 0x09, 0x38, 0x30, 0x5C, 0x64, 0x7B, 0x34, 0x2C, 0x36, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x36, 0x2C, 0x38, 0x7D, 0x32, 0x08, 0x38, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x2A, 0x2D, 0x12, 0x18, 0x39, 0x30, 0x5C, 0x64, 0x7B, 0x34, 0x2C, 0x36, 0x7D, 0x7C, 0x38, 0x39, 0x5B, 0x31, 0x2D, 0x33, 0x5D, 0x5C, 0x64, 0x7B, 0x32, 0x2C, 0x35, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x35, 0x2C, 0x38, 0x7D, 0x32, 0x08, 0x39, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x25, 0x12, 0x12, 0x28, 0x3F, 0x3A, 0x35, 0x39, 0x7C, 0x38, 0x5B, 0x31, 0x2D, 0x33, 0x5D, 0x29, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x35, 0x39, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x4A, 0x02, 0x53, 0x49, 0x50, 0x82, 0x03, 0x5A, 0x02, 0x30, 0x30, 0x62, 0x01, 0x30, 0x7A, 0x01, 0x30, 0x9A, 0x01, 0x54, 0x0A, 0x19, 0x28, 0x5C, 0x64, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x12, 0x0B, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x20, 0x24, 0x34, 0x1A, 0x21, 0x5B, 0x31, 0x32, 0x5D, 0x7C, 0x33, 0x5B, 0x34, 0x2D, 0x38, 0x5D, 0x7C, 0x34, 0x5B, 0x32, 0x34, 0x2D, 0x38, 0x5D, 0x7C, 0x35, 0x5B, 0x33, 0x2D, 0x38, 0x5D, 0x7C, 0x37, 0x5B, 0x33, 0x2D, 0x38, 0x5D, 0x22, 0x05, 0x28, 0x30, 0x24, 0x31, 0x29, 0x2A, 0x00, 0x9A, 0x01, 0x41, 0x0A, 0x17, 0x28, 0x5B, 0x33, 0x2D, 0x37, 0x5D, 0x5C, 0x64, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x15, 0x5B, 0x33, 0x37, 0x5D, 0x5B, 0x30, 0x31, 0x5D, 0x7C, 0x34, 0x5B, 0x30, 0x31, 0x39, 0x5D, 0x7C, 0x35, 0x31, 0x7C, 0x36, 0x34, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x2D, 0x0A, 0x13, 0x28, 0x5B, 0x38, 0x39, 0x5D, 0x5B, 0x30, 0x39, 0x5D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x2C, 0x36, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x1A, 0x08, 0x5B, 0x38, 0x39, 0x5D, 0x5B, 0x30, 0x39, 0x5D, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x2D, 0x0A, 0x12, 0x28, 0x5B, 0x35, 0x38, 0x5D, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x1A, 0x09, 0x35, 0x39, 0x7C, 0x38, 0x5B, 0x31, 0x2D, 0x33, 0x5D, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xEB, 0x02, 0x0A, 0x25, 0x12, 0x12, 0x30, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x7C, 0x5B, 0x34, 0x37, 0x38, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x0F, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x28, 0x3F, 0x3A, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x3F, 0x12, 0x1A, 0x12, 0x07, 0x37, 0x39, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x37, 0x39, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x1A, 0x28, 0x12, 0x15, 0x28, 0x3F, 0x3A, 0x34, 0x5B, 0x30, 0x31, 0x35, 0x2D, 0x38, 0x5D, 0x7C, 0x39, 0x5C, 0x64, 0x29, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x34, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x22, 0x1E, 0x12, 0x0B, 0x38, 0x30, 0x5B, 0x30, 0x31, 0x5D, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x38, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x2A, 0x1E, 0x12, 0x0B, 0x38, 0x32, 0x5B, 0x30, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x38, 0x32, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x32, 0x2D, 0x12, 0x1A, 0x38, 0x31, 0x30, 0x28, 0x3F, 0x3A, 0x30, 0x5B, 0x30, 0x2D, 0x36, 0x5D, 0x7C, 0x5B, 0x32, 0x2D, 0x38, 0x5D, 0x5C, 0x64, 0x29, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x38, 0x31, 0x30, 0x32, 0x31, 0x32, 0x33, 0x34, 0x3A, 0x1B, 0x12, 0x08, 0x38, 0x38, 0x30, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x38, 0x38, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x53, 0x4A, 0x50, 0x2F, 0x5A, 0x02, 0x30, 0x30, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x42, 0x12, 0x28, 0x30, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x7C, 0x38, 0x31, 0x28, 0x3F, 0x3A, 0x30, 0x28, 0x3F, 0x3A, 0x30, 0x5B, 0x37, 0x2D, 0x39, 0x5D, 0x7C, 0x31, 0x5C, 0x64, 0x29, 0x7C, 0x35, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x1A, 0x0F, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x28, 0x3F, 0x3A, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x3F, 0x32, 0x05, 0x30, 0x31, 0x32, 0x33, 0x34, 0xD0, 0x01, 0x01, 0x0A, 0xEC, 0x03, 0x0A, 0x15, 0x12, 0x0C, 0x5B, 0x32, 0x2D, 0x36, 0x38, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x12, 0x1E, 0x12, 0x0A, 0x5B, 0x32, 0x2D, 0x35, 0x5D, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x32, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x1A, 0x36, 0x12, 0x22, 0x39, 0x28, 0x3F, 0x3A, 0x30, 0x5B, 0x31, 0x2D, 0x38, 0x5D, 0x7C, 0x31, 0x5B, 0x30, 0x2D, 0x32, 0x34, 0x2D, 0x39, 0x5D, 0x7C, 0x34, 0x5B, 0x30, 0x34, 0x38, 0x39, 0x5D, 0x29, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x39, 0x31, 0x32, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x22, 0x1C, 0x12, 0x08, 0x38, 0x30, 0x30, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x38, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x2A, 0x2A, 0x12, 0x16, 0x39, 0x28, 0x3F, 0x3A, 0x5B, 0x37, 0x38, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x7C, 0x30, 0x30, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x29, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x39, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x32, 0x1F, 0x12, 0x0B, 0x38, 0x5B, 0x35, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x38, 0x35, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x2B, 0x12, 0x17, 0x36, 0x28, 0x3F, 0x3A, 0x35, 0x5B, 0x30, 0x2D, 0x34, 0x5D, 0x7C, 0x39, 0x5B, 0x30, 0x2D, 0x36, 0x5D, 0x29, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x36, 0x39, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x4A, 0x02, 0x53, 0x4B, 0x50, 0xA5, 0x03, 0x5A, 0x02, 0x30, 0x30, 0x62, 0x01, 0x30, 0x7A, 0x01, 0x30, 0x9A, 0x01, 0x31, 0x0A, 0x18, 0x28, 0x32, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x12, 0x0B, 0x24, 0x31, 0x2F, 0x24, 0x32, 0x20, 0x24, 0x33, 0x20, 0x24, 0x34, 0x1A, 0x01, 0x32, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x3B, 0x0A, 0x1E, 0x28, 0x5B, 0x33, 0x2D, 0x35, 0x5D, 0x5C, 0x64, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x12, 0x0B, 0x24, 0x31, 0x2F, 0x24, 0x32, 0x20, 0x24, 0x33, 0x20, 0x24, 0x34, 0x1A, 0x05, 0x5B, 0x33, 0x2D, 0x35, 0x5D, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x34, 0x0A, 0x1A, 0x28, 0x5B, 0x36, 0x38, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x05, 0x5B, 0x36, 0x38, 0x39, 0x5D, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0x8D, 0x02, 0x0A, 0x17, 0x12, 0x0C, 0x5B, 0x32, 0x2D, 0x35, 0x37, 0x38, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x36, 0x2C, 0x38, 0x7D, 0x12, 0x2A, 0x12, 0x15, 0x5B, 0x32, 0x33, 0x35, 0x5D, 0x32, 0x5B, 0x32, 0x2D, 0x34, 0x5D, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x36, 0x2C, 0x38, 0x7D, 0x32, 0x08, 0x32, 0x32, 0x32, 0x32, 0x31, 0x32, 0x33, 0x34, 0x1A, 0x3F, 0x12, 0x2A, 0x28, 0x3F, 0x3A, 0x32, 0x35, 0x7C, 0x33, 0x5B, 0x30, 0x33, 0x5D, 0x7C, 0x34, 0x34, 0x7C, 0x35, 0x5B, 0x30, 0x35, 0x36, 0x5D, 0x7C, 0x37, 0x5B, 0x36, 0x2D, 0x38, 0x5D, 0x7C, 0x38, 0x38, 0x29, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x36, 0x2C, 0x38, 0x7D, 0x32, 0x08, 0x32, 0x35, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x22, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x2A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x53, 0x4C, 0x50, 0xE8, 0x01, 0x5A, 0x02, 0x30, 0x30, 0x62, 0x01, 0x30, 0x7A, 0x01, 0x30, 0x9A, 0x01, 0x20, 0x0A, 0x0E, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x22, 0x05, 0x28, 0x30, 0x24, 0x31, 0x29, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0x88, 0x04, 0x0A, 0x19, 0x12, 0x0D, 0x5B, 0x30, 0x35, 0x2D, 0x37, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x39, 0x7D, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x36, 0x2C, 0x31, 0x30, 0x7D, 0x12, 0x32, 0x12, 0x1A, 0x30, 0x35, 0x34, 0x39, 0x28, 0x3F, 0x3A, 0x38, 0x5B, 0x30, 0x31, 0x35, 0x37, 0x2D, 0x39, 0x5D, 0x7C, 0x39, 0x5C, 0x64, 0x29, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x36, 0x2C, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x30, 0x35, 0x34, 0x39, 0x38, 0x38, 0x36, 0x33, 0x37, 0x37, 0x1A, 0x1D, 0x12, 0x0A, 0x36, 0x5B, 0x31, 0x36, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x36, 0x36, 0x36, 0x36, 0x31, 0x32, 0x31, 0x32, 0x22, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x2A, 0x1E, 0x12, 0x0B, 0x37, 0x5B, 0x31, 0x37, 0x38, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x37, 0x31, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x1E, 0x12, 0x0B, 0x35, 0x5B, 0x31, 0x35, 0x38, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x35, 0x38, 0x30, 0x30, 0x31, 0x31, 0x31, 0x30, 0x4A, 0x02, 0x53, 0x4D, 0x50, 0xFA, 0x02, 0x5A, 0x02, 0x30, 0x30, 0x7A, 0x14, 0x28, 0x3F, 0x3A, 0x30, 0x35, 0x34, 0x39, 0x29, 0x3F, 0x28, 0x5B, 0x38, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x29, 0x82, 0x01, 0x06, 0x30, 0x35, 0x34, 0x39, 0x24, 0x31, 0x9A, 0x01, 0x36, 0x0A, 0x1C, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x12, 0x0B, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x20, 0x24, 0x34, 0x1A, 0x05, 0x5B, 0x35, 0x2D, 0x37, 0x5D, 0x22, 0x00, 0x2A, 0x00, 0x9A, 0x01, 0x1D, 0x0A, 0x0D, 0x28, 0x30, 0x35, 0x34, 0x39, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x1A, 0x01, 0x30, 0x22, 0x00, 0x2A, 0x00, 0x9A, 0x01, 0x1C, 0x0A, 0x07, 0x28, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x29, 0x12, 0x07, 0x30, 0x35, 0x34, 0x39, 0x20, 0x24, 0x31, 0x1A, 0x04, 0x5B, 0x38, 0x39, 0x5D, 0x22, 0x00, 0x2A, 0x00, 0xA2, 0x01, 0x34, 0x0A, 0x1C, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x12, 0x0B, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x20, 0x24, 0x34, 0x1A, 0x05, 0x5B, 0x35, 0x2D, 0x37, 0x5D, 0x2A, 0x00, 0xA2, 0x01, 0x1D, 0x0A, 0x0D, 0x28, 0x30, 0x35, 0x34, 0x39, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x29, 0x12, 0x07, 0x28, 0x24, 0x31, 0x29, 0x20, 0x24, 0x32, 0x1A, 0x01, 0x30, 0x2A, 0x00, 0xA2, 0x01, 0x1C, 0x0A, 0x07, 0x28, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x29, 0x12, 0x09, 0x28, 0x30, 0x35, 0x34, 0x39, 0x29, 0x20, 0x24, 0x31, 0x1A, 0x04, 0x5B, 0x38, 0x39, 0x5D, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xD0, 0x01, 0x01, 0x0A, 0x9A, 0x03, 0x0A, 0x12, 0x12, 0x09, 0x5B, 0x33, 0x37, 0x5D, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x12, 0x34, 0x12, 0x20, 0x33, 0x28, 0x3F, 0x3A, 0x30, 0x31, 0x30, 0x7C, 0x33, 0x28, 0x3F, 0x3A, 0x38, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x7C, 0x39, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x29, 0x29, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x33, 0x30, 0x31, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x1A, 0xA7, 0x01, 0x12, 0x92, 0x01, 0x37, 0x28, 0x3F, 0x3A, 0x30, 0x5B, 0x31, 0x32, 0x35, 0x36, 0x5D, 0x30, 0x7C, 0x36, 0x28, 0x3F, 0x3A, 0x31, 0x5B, 0x32, 0x33, 0x5D, 0x7C, 0x32, 0x5B, 0x38, 0x39, 0x5D, 0x7C, 0x33, 0x5B, 0x33, 0x34, 0x38, 0x39, 0x5D, 0x7C, 0x34, 0x5B, 0x36, 0x2D, 0x39, 0x5D, 0x7C, 0x35, 0x5B, 0x31, 0x2D, 0x33, 0x38, 0x39, 0x5D, 0x7C, 0x36, 0x5B, 0x36, 0x2D, 0x39, 0x5D, 0x7C, 0x37, 0x5B, 0x34, 0x35, 0x5D, 0x7C, 0x38, 0x5B, 0x33, 0x2D, 0x38, 0x5D, 0x29, 0x7C, 0x37, 0x28, 0x3F, 0x3A, 0x31, 0x5B, 0x30, 0x31, 0x34, 0x2D, 0x38, 0x5D, 0x7C, 0x32, 0x5B, 0x30, 0x2D, 0x37, 0x5D, 0x7C, 0x33, 0x5B, 0x30, 0x2D, 0x33, 0x35, 0x2D, 0x38, 0x5D, 0x7C, 0x34, 0x5B, 0x30, 0x2D, 0x36, 0x5D, 0x7C, 0x5B, 0x35, 0x36, 0x5D, 0x5C, 0x64, 0x7C, 0x37, 0x5B, 0x30, 0x2D, 0x35, 0x38, 0x39, 0x5D, 0x7C, 0x38, 0x5B, 0x30, 0x31, 0x5D, 0x7C, 0x39, 0x5B, 0x30, 0x2D, 0x36, 0x5D, 0x29, 0x29, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x37, 0x30, 0x31, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x22, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x2A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x1E, 0x12, 0x0A, 0x33, 0x33, 0x33, 0x30, 0x31, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x33, 0x33, 0x33, 0x30, 0x31, 0x31, 0x32, 0x33, 0x34, 0x4A, 0x02, 0x53, 0x4E, 0x50, 0xDD, 0x01, 0x5A, 0x02, 0x30, 0x30, 0x9A, 0x01, 0x2F, 0x0A, 0x1C, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x12, 0x0B, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x20, 0x24, 0x34, 0x22, 0x00, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0x97, 0x02, 0x0A, 0x19, 0x12, 0x0E, 0x5B, 0x31, 0x33, 0x2D, 0x35, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x2C, 0x37, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x38, 0x7D, 0x12, 0x2A, 0x12, 0x18, 0x28, 0x3F, 0x3A, 0x35, 0x5B, 0x35, 0x37, 0x2D, 0x39, 0x5D, 0x7C, 0x5B, 0x31, 0x33, 0x34, 0x5D, 0x5C, 0x64, 0x29, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x32, 0x07, 0x35, 0x35, 0x32, 0x32, 0x30, 0x31, 0x30, 0x1A, 0x24, 0x12, 0x11, 0x28, 0x3F, 0x3A, 0x39, 0x5B, 0x30, 0x31, 0x5D, 0x7C, 0x31, 0x35, 0x29, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x39, 0x30, 0x37, 0x39, 0x32, 0x30, 0x32, 0x34, 0x22, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x2A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x53, 0x4F, 0x50, 0xFC, 0x01, 0x5A, 0x02, 0x30, 0x30, 0x9A, 0x01, 0x24, 0x0A, 0x0F, 0x28, 0x5B, 0x31, 0x33, 0x2D, 0x35, 0x5D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x1A, 0x06, 0x5B, 0x31, 0x33, 0x2D, 0x35, 0x5D, 0x22, 0x00, 0x2A, 0x00, 0x9A, 0x01, 0x22, 0x0A, 0x0F, 0x28, 0x5B, 0x31, 0x39, 0x5D, 0x5C, 0x64, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x1A, 0x04, 0x31, 0x35, 0x7C, 0x39, 0x22, 0x00, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0x67, 0x0A, 0x00, 0x12, 0x00, 0x1A, 0x00, 0x22, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x2A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x53, 0x52, 0x50, 0xD5, 0x04, 0x5A, 0x02, 0x30, 0x30, 0x90, 0x01, 0x01, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xC9, 0x01, 0x0A, 0x12, 0x12, 0x09, 0x5B, 0x32, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x12, 0x19, 0x12, 0x07, 0x32, 0x32, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x32, 0x07, 0x32, 0x32, 0x32, 0x31, 0x32, 0x33, 0x34, 0x1A, 0x1C, 0x12, 0x0A, 0x39, 0x5B, 0x38, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x32, 0x07, 0x39, 0x38, 0x31, 0x32, 0x33, 0x34, 0x35, 0x22, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x2A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x53, 0x54, 0x50, 0xEF, 0x01, 0x5A, 0x02, 0x30, 0x30, 0x9A, 0x01, 0x1B, 0x0A, 0x0E, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x22, 0x00, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0x8C, 0x03, 0x0A, 0x2F, 0x12, 0x1D, 0x5B, 0x32, 0x37, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x7C, 0x5B, 0x38, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x28, 0x3F, 0x3A, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x3F, 0x1A, 0x0E, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x38, 0x7D, 0x7C, 0x5C, 0x64, 0x7B, 0x31, 0x31, 0x7D, 0x12, 0x1E, 0x12, 0x0B, 0x32, 0x5B, 0x31, 0x2D, 0x36, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x32, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x1A, 0x19, 0x12, 0x06, 0x37, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x37, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x22, 0x2E, 0x12, 0x12, 0x38, 0x30, 0x30, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x28, 0x3F, 0x3A, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x3F, 0x1A, 0x0F, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x28, 0x3F, 0x3A, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x3F, 0x32, 0x07, 0x38, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x2A, 0x2E, 0x12, 0x12, 0x39, 0x30, 0x30, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x28, 0x3F, 0x3A, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x3F, 0x1A, 0x0F, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x28, 0x3F, 0x3A, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x3F, 0x32, 0x07, 0x39, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x53, 0x56, 0x50, 0xF7, 0x03, 0x5A, 0x02, 0x30, 0x30, 0x9A, 0x01, 0x21, 0x0A, 0x0E, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x1A, 0x04, 0x5B, 0x32, 0x37, 0x5D, 0x22, 0x00, 0x2A, 0x00, 0x9A, 0x01, 0x21, 0x0A, 0x0E, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x1A, 0x04, 0x5B, 0x38, 0x39, 0x5D, 0x22, 0x00, 0x2A, 0x00, 0x9A, 0x01, 0x2B, 0x0A, 0x15, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x04, 0x5B, 0x38, 0x39, 0x5D, 0x22, 0x00, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xF9, 0x02, 0x0A, 0x18, 0x12, 0x0D, 0x5B, 0x31, 0x2D, 0x35, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x38, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x36, 0x2C, 0x39, 0x7D, 0x12, 0x56, 0x12, 0x40, 0x28, 0x3F, 0x3A, 0x31, 0x28, 0x3F, 0x3A, 0x31, 0x5C, 0x64, 0x3F, 0x7C, 0x34, 0x5C, 0x64, 0x7C, 0x5B, 0x32, 0x33, 0x35, 0x36, 0x5D, 0x29, 0x7C, 0x32, 0x5B, 0x31, 0x2D, 0x33, 0x35, 0x5D, 0x7C, 0x33, 0x28, 0x3F, 0x3A, 0x31, 0x5C, 0x64, 0x7C, 0x5B, 0x33, 0x34, 0x5D, 0x29, 0x7C, 0x34, 0x5B, 0x31, 0x33, 0x5D, 0x7C, 0x35, 0x5B, 0x31, 0x2D, 0x33, 0x5D, 0x29, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x36, 0x2C, 0x39, 0x7D, 0x32, 0x09, 0x31, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x1A, 0x3C, 0x12, 0x28, 0x39, 0x28, 0x3F, 0x3A, 0x33, 0x5B, 0x32, 0x33, 0x5D, 0x7C, 0x34, 0x5B, 0x34, 0x35, 0x37, 0x5D, 0x7C, 0x35, 0x35, 0x7C, 0x36, 0x5B, 0x36, 0x37, 0x5D, 0x7C, 0x38, 0x38, 0x7C, 0x39, 0x5B, 0x31, 0x39, 0x5D, 0x29, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x39, 0x34, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x30, 0x22, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x2A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x53, 0x59, 0x50, 0xC3, 0x07, 0x5A, 0x02, 0x30, 0x30, 0x62, 0x01, 0x30, 0x7A, 0x01, 0x30, 0x9A, 0x01, 0x31, 0x0A, 0x17, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x2C, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x05, 0x5B, 0x31, 0x2D, 0x35, 0x5D, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x2E, 0x0A, 0x18, 0x28, 0x39, 0x5B, 0x33, 0x2D, 0x36, 0x38, 0x39, 0x5D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x01, 0x39, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xF0, 0x02, 0x0A, 0x13, 0x12, 0x0A, 0x5B, 0x30, 0x32, 0x37, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x12, 0x8A, 0x01, 0x12, 0x77, 0x32, 0x28, 0x3F, 0x3A, 0x32, 0x28, 0x3F, 0x3A, 0x30, 0x5B, 0x30, 0x37, 0x5D, 0x7C, 0x5B, 0x31, 0x33, 0x5D, 0x37, 0x7C, 0x32, 0x5B, 0x35, 0x37, 0x5D, 0x29, 0x7C, 0x33, 0x28, 0x3F, 0x3A, 0x30, 0x5B, 0x33, 0x34, 0x5D, 0x7C, 0x5B, 0x31, 0x32, 0x37, 0x38, 0x5D, 0x33, 0x7C, 0x33, 0x5B, 0x32, 0x33, 0x5D, 0x7C, 0x5B, 0x34, 0x36, 0x5D, 0x5B, 0x33, 0x34, 0x5D, 0x29, 0x7C, 0x28, 0x3F, 0x3A, 0x34, 0x30, 0x5B, 0x34, 0x2D, 0x36, 0x39, 0x5D, 0x7C, 0x36, 0x37, 0x29, 0x7C, 0x35, 0x28, 0x3F, 0x3A, 0x30, 0x5B, 0x35, 0x2D, 0x37, 0x5D, 0x7C, 0x31, 0x5B, 0x36, 0x2D, 0x39, 0x5D, 0x7C, 0x5B, 0x32, 0x33, 0x5D, 0x5B, 0x37, 0x38, 0x5D, 0x7C, 0x34, 0x38, 0x7C, 0x35, 0x5B, 0x30, 0x31, 0x5D, 0x29, 0x29, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x32, 0x32, 0x31, 0x37, 0x31, 0x32, 0x33, 0x34, 0x1A, 0x1E, 0x12, 0x0B, 0x37, 0x5B, 0x36, 0x2D, 0x38, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x37, 0x36, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x22, 0x1C, 0x12, 0x09, 0x30, 0x38, 0x30, 0x30, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x30, 0x38, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x2A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x53, 0x5A, 0x50, 0x8C, 0x02, 0x5A, 0x02, 0x30, 0x30, 0x9A, 0x01, 0x22, 0x0A, 0x0E, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x1A, 0x05, 0x5B, 0x30, 0x32, 0x37, 0x5D, 0x22, 0x00, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x1C, 0x12, 0x09, 0x30, 0x38, 0x30, 0x30, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x30, 0x38, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xD0, 0x01, 0x01, 0x0A, 0xA1, 0x03, 0x0A, 0x1E, 0x12, 0x0B, 0x5B, 0x35, 0x36, 0x38, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x1A, 0x0F, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x28, 0x3F, 0x3A, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x3F, 0x12, 0x3A, 0x12, 0x1B, 0x36, 0x34, 0x39, 0x28, 0x3F, 0x3A, 0x37, 0x31, 0x32, 0x7C, 0x39, 0x28, 0x3F, 0x3A, 0x34, 0x5C, 0x64, 0x7C, 0x35, 0x30, 0x29, 0x29, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x0F, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x28, 0x3F, 0x3A, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x3F, 0x32, 0x0A, 0x36, 0x34, 0x39, 0x37, 0x31, 0x32, 0x31, 0x32, 0x33, 0x34, 0x1A, 0x52, 0x12, 0x3C, 0x36, 0x34, 0x39, 0x28, 0x3F, 0x3A, 0x32, 0x28, 0x3F, 0x3A, 0x33, 0x5B, 0x31, 0x32, 0x5D, 0x7C, 0x34, 0x5B, 0x31, 0x2D, 0x35, 0x5D, 0x29, 0x7C, 0x33, 0x28, 0x3F, 0x3A, 0x33, 0x5B, 0x31, 0x2D, 0x33, 0x39, 0x5D, 0x7C, 0x34, 0x5B, 0x31, 0x2D, 0x35, 0x37, 0x5D, 0x29, 0x7C, 0x34, 0x5B, 0x33, 0x34, 0x5D, 0x5B, 0x31, 0x32, 0x5D, 0x29, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x36, 0x34, 0x39, 0x32, 0x33, 0x31, 0x31, 0x32, 0x33, 0x34, 0x22, 0x33, 0x12, 0x1D, 0x38, 0x28, 0x3F, 0x3A, 0x30, 0x30, 0x7C, 0x35, 0x35, 0x7C, 0x36, 0x36, 0x7C, 0x37, 0x37, 0x7C, 0x38, 0x38, 0x29, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x38, 0x30, 0x30, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x2A, 0x23, 0x12, 0x0D, 0x39, 0x30, 0x30, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x39, 0x30, 0x30, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x2D, 0x12, 0x17, 0x35, 0x28, 0x3F, 0x3A, 0x30, 0x30, 0x7C, 0x33, 0x33, 0x7C, 0x34, 0x34, 0x29, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x35, 0x30, 0x30, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x42, 0x24, 0x12, 0x0E, 0x36, 0x34, 0x39, 0x37, 0x31, 0x5B, 0x30, 0x31, 0x5D, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x36, 0x34, 0x39, 0x37, 0x31, 0x30, 0x31, 0x32, 0x33, 0x34, 0x4A, 0x02, 0x54, 0x43, 0x50, 0x01, 0x5A, 0x03, 0x30, 0x31, 0x31, 0x62, 0x01, 0x31, 0x7A, 0x01, 0x31, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xBA, 0x01, 0x03, 0x36, 0x34, 0x39, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xA4, 0x02, 0x0A, 0x14, 0x12, 0x0B, 0x5B, 0x32, 0x36, 0x37, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x12, 0x32, 0x12, 0x1F, 0x32, 0x32, 0x28, 0x3F, 0x3A, 0x5B, 0x33, 0x37, 0x38, 0x39, 0x5D, 0x30, 0x7C, 0x35, 0x5B, 0x30, 0x2D, 0x35, 0x5D, 0x7C, 0x36, 0x5B, 0x38, 0x39, 0x5D, 0x29, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x32, 0x32, 0x35, 0x30, 0x31, 0x32, 0x33, 0x34, 0x1A, 0x40, 0x12, 0x2D, 0x28, 0x3F, 0x3A, 0x36, 0x28, 0x3F, 0x3A, 0x33, 0x5B, 0x30, 0x2D, 0x37, 0x5D, 0x7C, 0x36, 0x5C, 0x64, 0x29, 0x7C, 0x37, 0x37, 0x5C, 0x64, 0x7C, 0x39, 0x28, 0x3F, 0x3A, 0x35, 0x5B, 0x30, 0x2D, 0x34, 0x5D, 0x7C, 0x39, 0x5C, 0x64, 0x29, 0x29, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x36, 0x33, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x22, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x2A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x54, 0x44, 0x50, 0xEB, 0x01, 0x5A, 0x05, 0x30, 0x30, 0x7C, 0x31, 0x36, 0x8A, 0x01, 0x02, 0x30, 0x30, 0x9A, 0x01, 0x2F, 0x0A, 0x1C, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x12, 0x0B, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x20, 0x24, 0x34, 0x22, 0x00, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0x6D, 0x0A, 0x00, 0x12, 0x00, 0x1A, 0x00, 0x22, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x2A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x54, 0x46, 0x50, 0x86, 0x02, 0x5A, 0x02, 0x30, 0x30, 0x62, 0x01, 0x30, 0x7A, 0x01, 0x30, 0x90, 0x01, 0x01, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0x88, 0x02, 0x0A, 0x14, 0x12, 0x0B, 0x5B, 0x30, 0x32, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x12, 0x33, 0x12, 0x21, 0x28, 0x3F, 0x3A, 0x32, 0x5B, 0x32, 0x2D, 0x37, 0x5D, 0x7C, 0x33, 0x5B, 0x32, 0x33, 0x5D, 0x7C, 0x34, 0x34, 0x7C, 0x35, 0x35, 0x7C, 0x36, 0x36, 0x7C, 0x37, 0x37, 0x29, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x32, 0x07, 0x32, 0x32, 0x31, 0x32, 0x33, 0x34, 0x35, 0x1A, 0x32, 0x12, 0x20, 0x28, 0x3F, 0x3A, 0x30, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x7C, 0x37, 0x5B, 0x35, 0x36, 0x5D, 0x7C, 0x38, 0x5B, 0x31, 0x2D, 0x37, 0x5D, 0x7C, 0x39, 0x5C, 0x64, 0x29, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x32, 0x07, 0x30, 0x31, 0x31, 0x32, 0x33, 0x34, 0x35, 0x22, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x2A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x54, 0x47, 0x50, 0xE4, 0x01, 0x5A, 0x02, 0x30, 0x30, 0x9A, 0x01, 0x25, 0x0A, 0x15, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x22, 0x00, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xD0, 0x01, 0x01, 0x0A, 0xDB, 0x03, 0x0A, 0x1F, 0x12, 0x13, 0x5B, 0x32, 0x2D, 0x38, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x38, 0x7D, 0x7C, 0x31, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x38, 0x2C, 0x31, 0x30, 0x7D, 0x12, 0x3F, 0x12, 0x2C, 0x28, 0x3F, 0x3A, 0x32, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x7C, 0x33, 0x5B, 0x32, 0x34, 0x2D, 0x39, 0x5D, 0x7C, 0x34, 0x5B, 0x32, 0x2D, 0x35, 0x5D, 0x7C, 0x35, 0x5B, 0x33, 0x2D, 0x36, 0x5D, 0x7C, 0x37, 0x5B, 0x33, 0x2D, 0x37, 0x5D, 0x29, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x32, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x1A, 0x1A, 0x12, 0x06, 0x38, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x38, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x22, 0x1F, 0x12, 0x09, 0x31, 0x38, 0x30, 0x30, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x31, 0x38, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x2A, 0x1F, 0x12, 0x09, 0x31, 0x39, 0x30, 0x30, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x31, 0x39, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x1B, 0x12, 0x07, 0x36, 0x30, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x36, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x4A, 0x02, 0x54, 0x48, 0x50, 0x42, 0x5A, 0x02, 0x30, 0x30, 0x62, 0x01, 0x30, 0x7A, 0x01, 0x30, 0x9A, 0x01, 0x27, 0x0A, 0x11, 0x28, 0x32, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x01, 0x32, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x33, 0x0A, 0x19, 0x28, 0x5B, 0x33, 0x2D, 0x37, 0x5D, 0x5C, 0x64, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x2C, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x05, 0x5B, 0x33, 0x2D, 0x37, 0x5D, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x27, 0x0A, 0x11, 0x28, 0x38, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x01, 0x38, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x2C, 0x0A, 0x17, 0x28, 0x31, 0x5B, 0x38, 0x39, 0x5D, 0x30, 0x30, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x01, 0x31, 0x22, 0x02, 0x24, 0x31, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xAA, 0x04, 0x0A, 0x16, 0x12, 0x0B, 0x5B, 0x33, 0x2D, 0x35, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x33, 0x2C, 0x39, 0x7D, 0x12, 0x56, 0x12, 0x40, 0x28, 0x3F, 0x3A, 0x33, 0x28, 0x3F, 0x3A, 0x31, 0x5B, 0x33, 0x2D, 0x35, 0x5D, 0x7C, 0x32, 0x5B, 0x32, 0x34, 0x35, 0x5D, 0x7C, 0x33, 0x5B, 0x31, 0x32, 0x5D, 0x7C, 0x34, 0x5B, 0x32, 0x34, 0x2D, 0x37, 0x5D, 0x7C, 0x35, 0x5B, 0x32, 0x35, 0x5D, 0x7C, 0x37, 0x32, 0x29, 0x7C, 0x34, 0x28, 0x3F, 0x3A, 0x34, 0x36, 0x7C, 0x37, 0x34, 0x7C, 0x38, 0x37, 0x29, 0x29, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x33, 0x2C, 0x39, 0x7D, 0x32, 0x09, 0x33, 0x37, 0x32, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x1A, 0x2C, 0x12, 0x18, 0x28, 0x3F, 0x3A, 0x35, 0x30, 0x35, 0x7C, 0x39, 0x5B, 0x30, 0x2D, 0x33, 0x35, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x29, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x39, 0x31, 0x37, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x22, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x2A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x54, 0x4A, 0x50, 0xE0, 0x07, 0x5A, 0x04, 0x38, 0x7E, 0x31, 0x30, 0x62, 0x01, 0x38, 0x7A, 0x01, 0x38, 0x9A, 0x01, 0x3E, 0x0A, 0x1A, 0x28, 0x5B, 0x33, 0x34, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x0C, 0x5B, 0x33, 0x34, 0x5D, 0x37, 0x7C, 0x39, 0x31, 0x5B, 0x37, 0x38, 0x5D, 0x22, 0x06, 0x28, 0x38, 0x29, 0x20, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x47, 0x0A, 0x17, 0x28, 0x5B, 0x34, 0x35, 0x39, 0x5D, 0x5C, 0x64, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x18, 0x34, 0x5B, 0x34, 0x38, 0x5D, 0x7C, 0x35, 0x7C, 0x39, 0x28, 0x3F, 0x3A, 0x31, 0x39, 0x7C, 0x5B, 0x30, 0x32, 0x33, 0x35, 0x2D, 0x39, 0x5D, 0x29, 0x22, 0x06, 0x28, 0x38, 0x29, 0x20, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x43, 0x0A, 0x13, 0x28, 0x33, 0x33, 0x31, 0x37, 0x30, 0x30, 0x29, 0x28, 0x5C, 0x64, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x03, 0x33, 0x33, 0x31, 0x1A, 0x04, 0x33, 0x33, 0x31, 0x37, 0x1A, 0x05, 0x33, 0x33, 0x31, 0x37, 0x30, 0x1A, 0x06, 0x33, 0x33, 0x31, 0x37, 0x30, 0x30, 0x22, 0x06, 0x28, 0x38, 0x29, 0x20, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x52, 0x0A, 0x12, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x06, 0x33, 0x5B, 0x31, 0x2D, 0x35, 0x5D, 0x1A, 0x20, 0x33, 0x28, 0x3F, 0x3A, 0x5B, 0x31, 0x32, 0x34, 0x35, 0x5D, 0x7C, 0x33, 0x28, 0x3F, 0x3A, 0x5B, 0x30, 0x32, 0x2D, 0x39, 0x5D, 0x7C, 0x31, 0x5B, 0x30, 0x2D, 0x35, 0x38, 0x39, 0x5D, 0x29, 0x29, 0x22, 0x06, 0x28, 0x38, 0x29, 0x20, 0x24, 0x31, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0x67, 0x0A, 0x00, 0x12, 0x00, 0x1A, 0x00, 0x22, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x2A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x54, 0x4B, 0x50, 0xB2, 0x05, 0x5A, 0x02, 0x30, 0x30, 0x90, 0x01, 0x01, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0x97, 0x02, 0x0A, 0x16, 0x12, 0x0D, 0x5B, 0x32, 0x2D, 0x34, 0x37, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x12, 0x2F, 0x12, 0x1D, 0x28, 0x3F, 0x3A, 0x32, 0x5B, 0x31, 0x2D, 0x35, 0x5D, 0x7C, 0x33, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x7C, 0x34, 0x5B, 0x31, 0x2D, 0x34, 0x5D, 0x29, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x32, 0x07, 0x32, 0x31, 0x31, 0x32, 0x33, 0x34, 0x35, 0x1A, 0x1D, 0x12, 0x0B, 0x37, 0x5B, 0x32, 0x2D, 0x34, 0x5D, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x32, 0x07, 0x37, 0x32, 0x31, 0x32, 0x33, 0x34, 0x35, 0x22, 0x19, 0x12, 0x07, 0x38, 0x30, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x32, 0x07, 0x38, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x2A, 0x19, 0x12, 0x07, 0x39, 0x30, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x32, 0x07, 0x39, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x19, 0x12, 0x07, 0x37, 0x30, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x32, 0x07, 0x37, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x54, 0x4C, 0x50, 0x9E, 0x05, 0x5A, 0x02, 0x30, 0x30, 0x9A, 0x01, 0x1B, 0x0A, 0x0E, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x22, 0x00, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0x81, 0x02, 0x0A, 0x13, 0x12, 0x0A, 0x5B, 0x31, 0x2D, 0x36, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x12, 0x2C, 0x12, 0x19, 0x28, 0x3F, 0x3A, 0x31, 0x32, 0x5C, 0x64, 0x7C, 0x32, 0x34, 0x33, 0x7C, 0x5B, 0x33, 0x2D, 0x35, 0x5D, 0x32, 0x32, 0x29, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x1A, 0x1E, 0x12, 0x0B, 0x36, 0x5B, 0x36, 0x2D, 0x38, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x36, 0x36, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x22, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x2A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x54, 0x4D, 0x50, 0xE1, 0x07, 0x5A, 0x04, 0x38, 0x7E, 0x31, 0x30, 0x62, 0x01, 0x38, 0x7A, 0x01, 0x38, 0x9A, 0x01, 0x35, 0x0A, 0x1E, 0x28, 0x5B, 0x31, 0x2D, 0x36, 0x5D, 0x5C, 0x64, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x12, 0x0B, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x20, 0x24, 0x34, 0x22, 0x04, 0x38, 0x20, 0x24, 0x31, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xFD, 0x01, 0x0A, 0x15, 0x12, 0x0C, 0x5B, 0x32, 0x34, 0x37, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x12, 0x19, 0x12, 0x06, 0x37, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x37, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x1A, 0x29, 0x12, 0x16, 0x28, 0x3F, 0x3A, 0x32, 0x5B, 0x30, 0x2D, 0x37, 0x5D, 0x7C, 0x34, 0x30, 0x7C, 0x39, 0x5C, 0x64, 0x29, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x32, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x22, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x2A, 0x1E, 0x12, 0x0B, 0x38, 0x5B, 0x30, 0x32, 0x38, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x32, 0x08, 0x38, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x54, 0x4E, 0x50, 0xD8, 0x01, 0x5A, 0x02, 0x30, 0x30, 0x9A, 0x01, 0x29, 0x0A, 0x19, 0x28, 0x5B, 0x32, 0x34, 0x37, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x22, 0x00, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0x67, 0x0A, 0x00, 0x12, 0x00, 0x1A, 0x00, 0x22, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x2A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x54, 0x4F, 0x50, 0xA4, 0x05, 0x5A, 0x02, 0x30, 0x30, 0x90, 0x01, 0x01, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xF2, 0x04, 0x0A, 0x21, 0x12, 0x15, 0x5B, 0x32, 0x2D, 0x35, 0x38, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x7C, 0x34, 0x34, 0x34, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x31, 0x30, 0x7D, 0x12, 0x99, 0x01, 0x12, 0x82, 0x01, 0x28, 0x3F, 0x3A, 0x32, 0x28, 0x3F, 0x3A, 0x5B, 0x31, 0x33, 0x5D, 0x5B, 0x32, 0x36, 0x5D, 0x7C, 0x5B, 0x32, 0x38, 0x5D, 0x5B, 0x32, 0x34, 0x36, 0x38, 0x5D, 0x7C, 0x5B, 0x34, 0x35, 0x5D, 0x5B, 0x32, 0x36, 0x38, 0x5D, 0x7C, 0x5B, 0x36, 0x37, 0x5D, 0x5B, 0x32, 0x34, 0x36, 0x5D, 0x29, 0x7C, 0x33, 0x28, 0x3F, 0x3A, 0x5B, 0x31, 0x33, 0x5D, 0x5B, 0x32, 0x38, 0x5D, 0x7C, 0x5B, 0x32, 0x34, 0x2D, 0x36, 0x5D, 0x5B, 0x32, 0x34, 0x36, 0x38, 0x5D, 0x7C, 0x5B, 0x37, 0x38, 0x5D, 0x5B, 0x30, 0x32, 0x34, 0x36, 0x38, 0x5D, 0x7C, 0x39, 0x32, 0x29, 0x7C, 0x34, 0x28, 0x3F, 0x3A, 0x5B, 0x31, 0x36, 0x5D, 0x5B, 0x32, 0x34, 0x36, 0x5D, 0x7C, 0x5B, 0x32, 0x33, 0x35, 0x37, 0x38, 0x5D, 0x5B, 0x32, 0x34, 0x36, 0x38, 0x5D, 0x7C, 0x34, 0x5B, 0x32, 0x36, 0x5D, 0x29, 0x29, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x32, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x1A, 0x46, 0x12, 0x30, 0x35, 0x28, 0x3F, 0x3A, 0x30, 0x5B, 0x31, 0x2D, 0x33, 0x35, 0x2D, 0x37, 0x5D, 0x7C, 0x32, 0x32, 0x7C, 0x33, 0x5C, 0x64, 0x7C, 0x34, 0x5B, 0x31, 0x2D, 0x37, 0x39, 0x5D, 0x7C, 0x35, 0x5B, 0x31, 0x2D, 0x35, 0x5D, 0x7C, 0x39, 0x5B, 0x32, 0x34, 0x36, 0x5D, 0x29, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x35, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x22, 0x1E, 0x12, 0x08, 0x38, 0x30, 0x30, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x38, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x2A, 0x1E, 0x12, 0x08, 0x39, 0x30, 0x30, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x39, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x54, 0x52, 0x50, 0x5A, 0x5A, 0x02, 0x30, 0x30, 0x62, 0x01, 0x30, 0x7A, 0x01, 0x30, 0x9A, 0x01, 0x48, 0x0A, 0x15, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x1C, 0x5B, 0x32, 0x33, 0x5D, 0x7C, 0x34, 0x28, 0x3F, 0x3A, 0x5B, 0x30, 0x2D, 0x33, 0x35, 0x2D, 0x39, 0x5D, 0x7C, 0x34, 0x5B, 0x30, 0x2D, 0x33, 0x35, 0x2D, 0x39, 0x5D, 0x29, 0x22, 0x05, 0x28, 0x30, 0x24, 0x31, 0x29, 0x2A, 0x00, 0x9A, 0x01, 0x2F, 0x0A, 0x15, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x05, 0x5B, 0x35, 0x38, 0x39, 0x5D, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x28, 0x0A, 0x13, 0x28, 0x34, 0x34, 0x34, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x31, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x03, 0x34, 0x34, 0x34, 0x22, 0x00, 0x2A, 0x00, 0xAA, 0x01, 0x1E, 0x12, 0x08, 0x35, 0x31, 0x32, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x35, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x26, 0x12, 0x11, 0x34, 0x34, 0x34, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x7C, 0x38, 0x35, 0x30, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x31, 0x30, 0x7D, 0x32, 0x07, 0x34, 0x34, 0x34, 0x31, 0x34, 0x34, 0x34, 0x0A, 0xDF, 0x03, 0x0A, 0x1D, 0x12, 0x0A, 0x5B, 0x35, 0x38, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x1A, 0x0F, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x28, 0x3F, 0x3A, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x3F, 0x12, 0x6D, 0x12, 0x4E, 0x38, 0x36, 0x38, 0x28, 0x3F, 0x3A, 0x32, 0x28, 0x3F, 0x3A, 0x30, 0x31, 0x7C, 0x32, 0x5B, 0x31, 0x2D, 0x34, 0x5D, 0x29, 0x7C, 0x36, 0x28, 0x3F, 0x3A, 0x30, 0x37, 0x7C, 0x31, 0x5B, 0x34, 0x2D, 0x36, 0x5D, 0x7C, 0x32, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x7C, 0x5B, 0x33, 0x2D, 0x36, 0x5D, 0x5C, 0x64, 0x7C, 0x37, 0x5B, 0x30, 0x2D, 0x37, 0x39, 0x5D, 0x7C, 0x39, 0x5B, 0x30, 0x2D, 0x38, 0x5D, 0x29, 0x7C, 0x38, 0x32, 0x5B, 0x31, 0x32, 0x5D, 0x29, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x0F, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x28, 0x3F, 0x3A, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x3F, 0x32, 0x0A, 0x38, 0x36, 0x38, 0x32, 0x32, 0x31, 0x31, 0x32, 0x33, 0x34, 0x1A, 0x7A, 0x12, 0x64, 0x38, 0x36, 0x38, 0x28, 0x3F, 0x3A, 0x32, 0x39, 0x5C, 0x64, 0x7C, 0x33, 0x28, 0x3F, 0x3A, 0x30, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x7C, 0x31, 0x5B, 0x30, 0x32, 0x2D, 0x39, 0x5D, 0x7C, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x29, 0x7C, 0x34, 0x28, 0x3F, 0x3A, 0x5B, 0x36, 0x37, 0x39, 0x5D, 0x5C, 0x64, 0x7C, 0x38, 0x5B, 0x30, 0x2D, 0x34, 0x5D, 0x29, 0x7C, 0x36, 0x28, 0x3F, 0x3A, 0x32, 0x30, 0x7C, 0x37, 0x38, 0x7C, 0x38, 0x5C, 0x64, 0x29, 0x7C, 0x37, 0x28, 0x3F, 0x3A, 0x31, 0x5B, 0x30, 0x32, 0x2D, 0x39, 0x5D, 0x7C, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x29, 0x29, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x38, 0x36, 0x38, 0x32, 0x39, 0x31, 0x31, 0x32, 0x33, 0x34, 0x22, 0x33, 0x12, 0x1D, 0x38, 0x28, 0x3F, 0x3A, 0x30, 0x30, 0x7C, 0x35, 0x35, 0x7C, 0x36, 0x36, 0x7C, 0x37, 0x37, 0x7C, 0x38, 0x38, 0x29, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x38, 0x30, 0x30, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x2A, 0x23, 0x12, 0x0D, 0x39, 0x30, 0x30, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x39, 0x30, 0x30, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x2D, 0x12, 0x17, 0x35, 0x28, 0x3F, 0x3A, 0x30, 0x30, 0x7C, 0x33, 0x33, 0x7C, 0x34, 0x34, 0x29, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x35, 0x30, 0x30, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x54, 0x54, 0x50, 0x01, 0x5A, 0x03, 0x30, 0x31, 0x31, 0x62, 0x01, 0x31, 0x7A, 0x01, 0x31, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xBA, 0x01, 0x03, 0x38, 0x36, 0x38, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xAE, 0x01, 0x0A, 0x16, 0x12, 0x0B, 0x5B, 0x32, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x34, 0x2C, 0x35, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x35, 0x2C, 0x36, 0x7D, 0x12, 0x1C, 0x12, 0x0C, 0x32, 0x5B, 0x30, 0x32, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x32, 0x05, 0x32, 0x30, 0x31, 0x32, 0x33, 0x1A, 0x18, 0x12, 0x07, 0x39, 0x30, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x32, 0x06, 0x39, 0x30, 0x31, 0x32, 0x33, 0x34, 0x22, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x2A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x54, 0x56, 0x50, 0xB0, 0x05, 0x5A, 0x02, 0x30, 0x30, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xE5, 0x02, 0x0A, 0x17, 0x12, 0x0C, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x38, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x38, 0x2C, 0x39, 0x7D, 0x12, 0x21, 0x12, 0x0C, 0x5B, 0x32, 0x2D, 0x38, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x38, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x38, 0x2C, 0x39, 0x7D, 0x32, 0x08, 0x32, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x1A, 0x1A, 0x12, 0x06, 0x39, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x39, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x22, 0x1C, 0x12, 0x08, 0x38, 0x30, 0x30, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x38, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x2A, 0x1C, 0x12, 0x08, 0x39, 0x30, 0x30, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x39, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x54, 0x57, 0x50, 0xF6, 0x06, 0x5A, 0x10, 0x30, 0x28, 0x3F, 0x3A, 0x30, 0x5B, 0x32, 0x35, 0x36, 0x37, 0x39, 0x5D, 0x7C, 0x31, 0x39, 0x29, 0x62, 0x01, 0x30, 0x6A, 0x01, 0x23, 0x7A, 0x01, 0x30, 0x9A, 0x01, 0x38, 0x0A, 0x17, 0x28, 0x5B, 0x32, 0x2D, 0x38, 0x5D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x2C, 0x34, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x0C, 0x5B, 0x32, 0x2D, 0x37, 0x5D, 0x7C, 0x38, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x32, 0x0A, 0x19, 0x28, 0x5B, 0x38, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x04, 0x38, 0x30, 0x7C, 0x39, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xC1, 0x03, 0x0A, 0x10, 0x12, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x39, 0x7D, 0x12, 0x21, 0x12, 0x0B, 0x32, 0x5B, 0x32, 0x2D, 0x38, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x39, 0x7D, 0x32, 0x09, 0x32, 0x32, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x1A, 0x2A, 0x12, 0x16, 0x28, 0x3F, 0x3A, 0x36, 0x5B, 0x31, 0x35, 0x38, 0x5D, 0x7C, 0x37, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x29, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x36, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x22, 0x1F, 0x12, 0x0B, 0x38, 0x30, 0x5B, 0x30, 0x38, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x38, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x2A, 0x1B, 0x12, 0x07, 0x39, 0x30, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x39, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x32, 0x26, 0x12, 0x12, 0x38, 0x28, 0x3F, 0x3A, 0x34, 0x30, 0x7C, 0x36, 0x5B, 0x30, 0x31, 0x5D, 0x29, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x38, 0x34, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x1B, 0x12, 0x07, 0x34, 0x31, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x34, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x4A, 0x02, 0x54, 0x5A, 0x50, 0xFF, 0x01, 0x5A, 0x07, 0x30, 0x30, 0x5B, 0x30, 0x35, 0x36, 0x5D, 0x62, 0x01, 0x30, 0x7A, 0x01, 0x30, 0x9A, 0x01, 0x2F, 0x0A, 0x16, 0x28, 0x5B, 0x32, 0x34, 0x5D, 0x5C, 0x64, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x04, 0x5B, 0x32, 0x34, 0x5D, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x32, 0x0A, 0x19, 0x28, 0x5B, 0x36, 0x37, 0x5D, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x04, 0x5B, 0x36, 0x37, 0x5D, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x32, 0x0A, 0x19, 0x28, 0x5B, 0x38, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x04, 0x5B, 0x38, 0x39, 0x5D, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xE4, 0x07, 0x0A, 0x17, 0x12, 0x0C, 0x5B, 0x33, 0x2D, 0x36, 0x38, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x35, 0x2C, 0x39, 0x7D, 0x12, 0x3D, 0x12, 0x27, 0x28, 0x3F, 0x3A, 0x33, 0x5B, 0x31, 0x2D, 0x38, 0x5D, 0x7C, 0x34, 0x5B, 0x31, 0x33, 0x2D, 0x38, 0x5D, 0x7C, 0x35, 0x5B, 0x31, 0x2D, 0x37, 0x5D, 0x7C, 0x36, 0x5B, 0x31, 0x32, 0x34, 0x35, 0x39, 0x5D, 0x29, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x35, 0x2C, 0x39, 0x7D, 0x32, 0x09, 0x33, 0x31, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x1A, 0x31, 0x12, 0x1D, 0x28, 0x3F, 0x3A, 0x33, 0x39, 0x7C, 0x35, 0x30, 0x7C, 0x36, 0x5B, 0x33, 0x36, 0x2D, 0x38, 0x5D, 0x7C, 0x39, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x29, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x33, 0x39, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x22, 0x1C, 0x12, 0x08, 0x38, 0x30, 0x30, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x38, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x2A, 0x1C, 0x12, 0x08, 0x39, 0x30, 0x30, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x39, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x55, 0x41, 0x50, 0xFC, 0x02, 0x5A, 0x03, 0x30, 0x7E, 0x30, 0x62, 0x01, 0x30, 0x7A, 0x01, 0x30, 0x9A, 0x01, 0xA4, 0x01, 0x0A, 0x18, 0x28, 0x5B, 0x33, 0x2D, 0x36, 0x39, 0x5D, 0x5C, 0x64, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x36, 0x33, 0x39, 0x7C, 0x34, 0x28, 0x3F, 0x3A, 0x5B, 0x34, 0x35, 0x5D, 0x5B, 0x30, 0x2D, 0x35, 0x5D, 0x7C, 0x38, 0x37, 0x29, 0x7C, 0x35, 0x28, 0x3F, 0x3A, 0x30, 0x7C, 0x36, 0x5B, 0x33, 0x37, 0x5D, 0x7C, 0x37, 0x5B, 0x33, 0x37, 0x5D, 0x29, 0x7C, 0x36, 0x5B, 0x33, 0x36, 0x2D, 0x38, 0x5D, 0x7C, 0x39, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x1A, 0x3F, 0x33, 0x39, 0x7C, 0x34, 0x28, 0x3F, 0x3A, 0x5B, 0x34, 0x35, 0x5D, 0x5B, 0x30, 0x2D, 0x35, 0x5D, 0x7C, 0x38, 0x37, 0x29, 0x7C, 0x35, 0x28, 0x3F, 0x3A, 0x30, 0x7C, 0x36, 0x28, 0x3F, 0x3A, 0x33, 0x5B, 0x31, 0x34, 0x2D, 0x37, 0x5D, 0x7C, 0x37, 0x29, 0x7C, 0x37, 0x5B, 0x33, 0x37, 0x5D, 0x29, 0x7C, 0x36, 0x5B, 0x33, 0x36, 0x2D, 0x38, 0x5D, 0x7C, 0x39, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0xCA, 0x01, 0x0A, 0x1C, 0x28, 0x5B, 0x33, 0x2D, 0x36, 0x38, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x43, 0x33, 0x5B, 0x31, 0x2D, 0x38, 0x5D, 0x32, 0x7C, 0x34, 0x5B, 0x31, 0x33, 0x37, 0x38, 0x5D, 0x32, 0x7C, 0x35, 0x28, 0x3F, 0x3A, 0x5B, 0x31, 0x32, 0x34, 0x35, 0x37, 0x5D, 0x32, 0x7C, 0x36, 0x5B, 0x32, 0x34, 0x5D, 0x29, 0x7C, 0x36, 0x28, 0x3F, 0x3A, 0x5B, 0x34, 0x39, 0x5D, 0x32, 0x7C, 0x5B, 0x31, 0x32, 0x5D, 0x5B, 0x32, 0x39, 0x5D, 0x7C, 0x35, 0x5B, 0x32, 0x34, 0x5D, 0x29, 0x7C, 0x38, 0x7C, 0x39, 0x30, 0x1A, 0x54, 0x33, 0x28, 0x3F, 0x3A, 0x5B, 0x31, 0x2D, 0x34, 0x36, 0x2D, 0x38, 0x5D, 0x32, 0x5B, 0x30, 0x31, 0x33, 0x2D, 0x39, 0x5D, 0x7C, 0x35, 0x32, 0x29, 0x7C, 0x34, 0x5B, 0x31, 0x33, 0x37, 0x38, 0x5D, 0x32, 0x7C, 0x35, 0x28, 0x3F, 0x3A, 0x5B, 0x31, 0x32, 0x34, 0x35, 0x37, 0x5D, 0x32, 0x7C, 0x36, 0x5B, 0x32, 0x34, 0x5D, 0x29, 0x7C, 0x36, 0x28, 0x3F, 0x3A, 0x5B, 0x34, 0x39, 0x5D, 0x32, 0x7C, 0x5B, 0x31, 0x32, 0x5D, 0x5B, 0x32, 0x39, 0x5D, 0x7C, 0x35, 0x5B, 0x32, 0x34, 0x5D, 0x29, 0x7C, 0x38, 0x7C, 0x39, 0x30, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0xD2, 0x02, 0x0A, 0x13, 0x28, 0x5B, 0x33, 0x2D, 0x36, 0x5D, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x1A, 0x87, 0x01, 0x33, 0x28, 0x3F, 0x3A, 0x35, 0x5B, 0x30, 0x31, 0x33, 0x2D, 0x39, 0x5D, 0x7C, 0x5B, 0x31, 0x2D, 0x34, 0x36, 0x2D, 0x38, 0x5D, 0x29, 0x7C, 0x34, 0x28, 0x3F, 0x3A, 0x5B, 0x31, 0x33, 0x37, 0x5D, 0x5B, 0x30, 0x31, 0x33, 0x2D, 0x39, 0x5D, 0x7C, 0x36, 0x7C, 0x5B, 0x34, 0x35, 0x5D, 0x5B, 0x36, 0x2D, 0x39, 0x5D, 0x7C, 0x38, 0x5B, 0x34, 0x2D, 0x36, 0x5D, 0x29, 0x7C, 0x35, 0x28, 0x3F, 0x3A, 0x5B, 0x31, 0x32, 0x34, 0x35, 0x5D, 0x5B, 0x30, 0x31, 0x33, 0x2D, 0x39, 0x5D, 0x7C, 0x36, 0x5B, 0x30, 0x31, 0x33, 0x35, 0x2D, 0x39, 0x5D, 0x7C, 0x33, 0x7C, 0x37, 0x5B, 0x34, 0x2D, 0x36, 0x5D, 0x29, 0x7C, 0x36, 0x28, 0x3F, 0x3A, 0x5B, 0x34, 0x39, 0x5D, 0x5B, 0x30, 0x31, 0x33, 0x2D, 0x39, 0x5D, 0x7C, 0x35, 0x5B, 0x30, 0x31, 0x33, 0x35, 0x2D, 0x39, 0x5D, 0x7C, 0x5B, 0x31, 0x32, 0x5D, 0x5B, 0x31, 0x33, 0x2D, 0x38, 0x5D, 0x29, 0x1A, 0xA2, 0x01, 0x33, 0x28, 0x3F, 0x3A, 0x35, 0x5B, 0x30, 0x31, 0x33, 0x2D, 0x39, 0x5D, 0x7C, 0x5B, 0x31, 0x2D, 0x34, 0x36, 0x2D, 0x38, 0x5D, 0x28, 0x3F, 0x3A, 0x32, 0x32, 0x7C, 0x5B, 0x30, 0x31, 0x33, 0x2D, 0x39, 0x5D, 0x29, 0x29, 0x7C, 0x34, 0x28, 0x3F, 0x3A, 0x5B, 0x31, 0x33, 0x37, 0x5D, 0x5B, 0x30, 0x31, 0x33, 0x2D, 0x39, 0x5D, 0x7C, 0x36, 0x7C, 0x5B, 0x34, 0x35, 0x5D, 0x5B, 0x36, 0x2D, 0x39, 0x5D, 0x7C, 0x38, 0x5B, 0x34, 0x2D, 0x36, 0x5D, 0x29, 0x7C, 0x35, 0x28, 0x3F, 0x3A, 0x5B, 0x31, 0x32, 0x34, 0x35, 0x5D, 0x5B, 0x30, 0x31, 0x33, 0x2D, 0x39, 0x5D, 0x7C, 0x36, 0x28, 0x3F, 0x3A, 0x33, 0x5B, 0x30, 0x32, 0x33, 0x38, 0x39, 0x5D, 0x7C, 0x5B, 0x30, 0x31, 0x35, 0x36, 0x38, 0x39, 0x5D, 0x29, 0x7C, 0x33, 0x7C, 0x37, 0x5B, 0x34, 0x2D, 0x36, 0x5D, 0x29, 0x7C, 0x36, 0x28, 0x3F, 0x3A, 0x5B, 0x34, 0x39, 0x5D, 0x5B, 0x30, 0x31, 0x33, 0x2D, 0x39, 0x5D, 0x7C, 0x35, 0x5B, 0x30, 0x31, 0x33, 0x35, 0x2D, 0x39, 0x5D, 0x7C, 0x5B, 0x31, 0x32, 0x5D, 0x5B, 0x31, 0x33, 0x2D, 0x38, 0x5D, 0x29, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xD2, 0x03, 0x0A, 0x10, 0x12, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x35, 0x2C, 0x39, 0x7D, 0x12, 0x52, 0x12, 0x3C, 0x33, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x7C, 0x34, 0x28, 0x3F, 0x3A, 0x5B, 0x31, 0x2D, 0x36, 0x5D, 0x5C, 0x64, 0x7C, 0x37, 0x5B, 0x31, 0x33, 0x36, 0x5D, 0x7C, 0x38, 0x5B, 0x31, 0x33, 0x35, 0x36, 0x5D, 0x7C, 0x39, 0x36, 0x29, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x7C, 0x32, 0x30, 0x28, 0x3F, 0x3A, 0x30, 0x5C, 0x64, 0x7C, 0x32, 0x34, 0x29, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x35, 0x2C, 0x39, 0x7D, 0x32, 0x09, 0x33, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x1A, 0x2D, 0x12, 0x19, 0x37, 0x28, 0x3F, 0x3A, 0x5B, 0x31, 0x35, 0x37, 0x38, 0x5D, 0x5C, 0x64, 0x7C, 0x30, 0x5B, 0x30, 0x2D, 0x34, 0x5D, 0x29, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x37, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x22, 0x21, 0x12, 0x0D, 0x38, 0x30, 0x30, 0x5B, 0x31, 0x32, 0x33, 0x5D, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x38, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x2A, 0x20, 0x12, 0x0C, 0x39, 0x30, 0x5B, 0x31, 0x32, 0x33, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x39, 0x30, 0x31, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x55, 0x47, 0x50, 0x80, 0x02, 0x5A, 0x07, 0x30, 0x30, 0x5B, 0x30, 0x35, 0x37, 0x5D, 0x62, 0x01, 0x30, 0x7A, 0x01, 0x30, 0x9A, 0x01, 0x41, 0x0A, 0x15, 0x28, 0x5B, 0x32, 0x34, 0x37, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x1A, 0x1A, 0x5B, 0x37, 0x2D, 0x39, 0x5D, 0x7C, 0x32, 0x30, 0x30, 0x7C, 0x34, 0x28, 0x3F, 0x3A, 0x36, 0x5B, 0x34, 0x35, 0x5D, 0x7C, 0x5B, 0x37, 0x2D, 0x39, 0x5D, 0x29, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x37, 0x0A, 0x0F, 0x28, 0x5B, 0x33, 0x34, 0x5D, 0x5C, 0x64, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x1A, 0x16, 0x33, 0x7C, 0x34, 0x28, 0x3F, 0x3A, 0x5B, 0x31, 0x2D, 0x35, 0x5D, 0x7C, 0x36, 0x5B, 0x30, 0x2D, 0x33, 0x36, 0x2D, 0x39, 0x5D, 0x29, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x22, 0x0A, 0x0D, 0x28, 0x32, 0x30, 0x32, 0x34, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x1A, 0x03, 0x32, 0x30, 0x32, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0x8E, 0x0C, 0x0A, 0x1D, 0x12, 0x0A, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x1A, 0x0F, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x28, 0x3F, 0x3A, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x3F, 0x12, 0xD3, 0x04, 0x12, 0xB3, 0x04, 0x28, 0x3F, 0x3A, 0x32, 0x28, 0x3F, 0x3A, 0x30, 0x5B, 0x31, 0x2D, 0x33, 0x35, 0x2D, 0x39, 0x5D, 0x7C, 0x31, 0x5B, 0x30, 0x32, 0x2D, 0x39, 0x5D, 0x7C, 0x32, 0x5B, 0x34, 0x35, 0x38, 0x39, 0x5D, 0x7C, 0x33, 0x5B, 0x31, 0x34, 0x39, 0x5D, 0x7C, 0x34, 0x5B, 0x30, 0x38, 0x5D, 0x7C, 0x35, 0x5B, 0x31, 0x2D, 0x34, 0x36, 0x5D, 0x7C, 0x36, 0x5B, 0x30, 0x32, 0x37, 0x39, 0x5D, 0x7C, 0x37, 0x5B, 0x30, 0x36, 0x5D, 0x7C, 0x38, 0x5B, 0x31, 0x33, 0x5D, 0x29, 0x7C, 0x33, 0x28, 0x3F, 0x3A, 0x30, 0x5B, 0x31, 0x2D, 0x35, 0x37, 0x2D, 0x39, 0x5D, 0x7C, 0x31, 0x5B, 0x30, 0x32, 0x2D, 0x39, 0x5D, 0x7C, 0x32, 0x5B, 0x30, 0x31, 0x33, 0x35, 0x5D, 0x7C, 0x33, 0x5B, 0x30, 0x31, 0x34, 0x36, 0x37, 0x39, 0x5D, 0x7C, 0x34, 0x37, 0x7C, 0x35, 0x5B, 0x31, 0x32, 0x5D, 0x7C, 0x36, 0x5B, 0x30, 0x31, 0x5D, 0x7C, 0x38, 0x5B, 0x30, 0x35, 0x36, 0x5D, 0x29, 0x7C, 0x34, 0x28, 0x3F, 0x3A, 0x30, 0x5B, 0x31, 0x32, 0x34, 0x2D, 0x39, 0x5D, 0x7C, 0x31, 0x5B, 0x30, 0x32, 0x2D, 0x35, 0x37, 0x39, 0x5D, 0x7C, 0x32, 0x5B, 0x33, 0x2D, 0x35, 0x5D, 0x7C, 0x33, 0x5B, 0x30, 0x32, 0x34, 0x35, 0x5D, 0x7C, 0x34, 0x5B, 0x30, 0x32, 0x33, 0x35, 0x5D, 0x7C, 0x35, 0x38, 0x7C, 0x36, 0x39, 0x7C, 0x37, 0x5B, 0x30, 0x35, 0x38, 0x39, 0x5D, 0x7C, 0x38, 0x5B, 0x30, 0x34, 0x5D, 0x29, 0x7C, 0x35, 0x28, 0x3F, 0x3A, 0x30, 0x5B, 0x31, 0x2D, 0x35, 0x37, 0x2D, 0x39, 0x5D, 0x7C, 0x31, 0x5B, 0x30, 0x32, 0x33, 0x35, 0x2D, 0x38, 0x5D, 0x7C, 0x32, 0x30, 0x7C, 0x33, 0x5B, 0x30, 0x31, 0x34, 0x39, 0x5D, 0x7C, 0x34, 0x5B, 0x30, 0x31, 0x5D, 0x7C, 0x35, 0x5B, 0x31, 0x39, 0x5D, 0x7C, 0x36, 0x5B, 0x31, 0x2D, 0x33, 0x37, 0x5D, 0x7C, 0x37, 0x5B, 0x30, 0x31, 0x33, 0x2D, 0x35, 0x5D, 0x7C, 0x38, 0x5B, 0x30, 0x35, 0x36, 0x5D, 0x29, 0x7C, 0x36, 0x28, 0x3F, 0x3A, 0x30, 0x5B, 0x31, 0x2D, 0x33, 0x35, 0x2D, 0x39, 0x5D, 0x7C, 0x31, 0x5B, 0x30, 0x32, 0x34, 0x2D, 0x39, 0x5D, 0x7C, 0x32, 0x5B, 0x30, 0x33, 0x36, 0x5D, 0x7C, 0x33, 0x5B, 0x30, 0x31, 0x36, 0x5D, 0x7C, 0x34, 0x5B, 0x31, 0x36, 0x5D, 0x7C, 0x35, 0x5B, 0x30, 0x31, 0x37, 0x5D, 0x7C, 0x36, 0x5B, 0x30, 0x2D, 0x32, 0x39, 0x5D, 0x7C, 0x37, 0x38, 0x7C, 0x38, 0x5B, 0x31, 0x32, 0x5D, 0x29, 0x7C, 0x37, 0x28, 0x3F, 0x3A, 0x30, 0x5B, 0x31, 0x2D, 0x34, 0x36, 0x2D, 0x38, 0x5D, 0x7C, 0x31, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x7C, 0x32, 0x5B, 0x30, 0x34, 0x37, 0x5D, 0x7C, 0x33, 0x5B, 0x31, 0x32, 0x34, 0x5D, 0x7C, 0x34, 0x5B, 0x30, 0x37, 0x5D, 0x7C, 0x35, 0x5B, 0x34, 0x37, 0x5D, 0x7C, 0x36, 0x5B, 0x30, 0x32, 0x33, 0x35, 0x39, 0x5D, 0x7C, 0x37, 0x5B, 0x30, 0x32, 0x2D, 0x35, 0x39, 0x5D, 0x7C, 0x38, 0x5B, 0x31, 0x35, 0x36, 0x5D, 0x29, 0x7C, 0x38, 0x28, 0x3F, 0x3A, 0x30, 0x5B, 0x31, 0x2D, 0x36, 0x38, 0x5D, 0x7C, 0x31, 0x5B, 0x30, 0x32, 0x2D, 0x38, 0x5D, 0x7C, 0x32, 0x38, 0x7C, 0x33, 0x5B, 0x30, 0x2D, 0x32, 0x35, 0x5D, 0x7C, 0x34, 0x5B, 0x33, 0x35, 0x37, 0x38, 0x5D, 0x7C, 0x35, 0x5B, 0x30, 0x36, 0x2D, 0x39, 0x5D, 0x7C, 0x36, 0x5B, 0x30, 0x32, 0x2D, 0x35, 0x5D, 0x7C, 0x37, 0x5B, 0x30, 0x32, 0x38, 0x5D, 0x29, 0x7C, 0x39, 0x28, 0x3F, 0x3A, 0x30, 0x5B, 0x31, 0x33, 0x34, 0x36, 0x2D, 0x39, 0x5D, 0x7C, 0x31, 0x5B, 0x30, 0x32, 0x2D, 0x39, 0x5D, 0x7C, 0x32, 0x5B, 0x30, 0x35, 0x38, 0x39, 0x5D, 0x7C, 0x33, 0x5B, 0x31, 0x36, 0x37, 0x38, 0x5D, 0x7C, 0x34, 0x5B, 0x30, 0x31, 0x37, 0x39, 0x5D, 0x7C, 0x35, 0x5B, 0x31, 0x32, 0x34, 0x36, 0x5D, 0x7C, 0x37, 0x5B, 0x30, 0x2D, 0x33, 0x35, 0x38, 0x39, 0x5D, 0x7C, 0x38, 0x5B, 0x30, 0x35, 0x39, 0x5D, 0x29, 0x29, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x0F, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x28, 0x3F, 0x3A, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x3F, 0x32, 0x0A, 0x32, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x1A, 0xD3, 0x04, 0x12, 0xB3, 0x04, 0x28, 0x3F, 0x3A, 0x32, 0x28, 0x3F, 0x3A, 0x30, 0x5B, 0x31, 0x2D, 0x33, 0x35, 0x2D, 0x39, 0x5D, 0x7C, 0x31, 0x5B, 0x30, 0x32, 0x2D, 0x39, 0x5D, 0x7C, 0x32, 0x5B, 0x34, 0x35, 0x38, 0x39, 0x5D, 0x7C, 0x33, 0x5B, 0x31, 0x34, 0x39, 0x5D, 0x7C, 0x34, 0x5B, 0x30, 0x38, 0x5D, 0x7C, 0x35, 0x5B, 0x31, 0x2D, 0x34, 0x36, 0x5D, 0x7C, 0x36, 0x5B, 0x30, 0x32, 0x37, 0x39, 0x5D, 0x7C, 0x37, 0x5B, 0x30, 0x36, 0x5D, 0x7C, 0x38, 0x5B, 0x31, 0x33, 0x5D, 0x29, 0x7C, 0x33, 0x28, 0x3F, 0x3A, 0x30, 0x5B, 0x31, 0x2D, 0x35, 0x37, 0x2D, 0x39, 0x5D, 0x7C, 0x31, 0x5B, 0x30, 0x32, 0x2D, 0x39, 0x5D, 0x7C, 0x32, 0x5B, 0x30, 0x31, 0x33, 0x35, 0x5D, 0x7C, 0x33, 0x5B, 0x30, 0x31, 0x34, 0x36, 0x37, 0x39, 0x5D, 0x7C, 0x34, 0x37, 0x7C, 0x35, 0x5B, 0x31, 0x32, 0x5D, 0x7C, 0x36, 0x5B, 0x30, 0x31, 0x5D, 0x7C, 0x38, 0x5B, 0x30, 0x35, 0x36, 0x5D, 0x29, 0x7C, 0x34, 0x28, 0x3F, 0x3A, 0x30, 0x5B, 0x31, 0x32, 0x34, 0x2D, 0x39, 0x5D, 0x7C, 0x31, 0x5B, 0x30, 0x32, 0x2D, 0x35, 0x37, 0x39, 0x5D, 0x7C, 0x32, 0x5B, 0x33, 0x2D, 0x35, 0x5D, 0x7C, 0x33, 0x5B, 0x30, 0x32, 0x34, 0x35, 0x5D, 0x7C, 0x34, 0x5B, 0x30, 0x32, 0x33, 0x35, 0x5D, 0x7C, 0x35, 0x38, 0x7C, 0x36, 0x39, 0x7C, 0x37, 0x5B, 0x30, 0x35, 0x38, 0x39, 0x5D, 0x7C, 0x38, 0x5B, 0x30, 0x34, 0x5D, 0x29, 0x7C, 0x35, 0x28, 0x3F, 0x3A, 0x30, 0x5B, 0x31, 0x2D, 0x35, 0x37, 0x2D, 0x39, 0x5D, 0x7C, 0x31, 0x5B, 0x30, 0x32, 0x33, 0x35, 0x2D, 0x38, 0x5D, 0x7C, 0x32, 0x30, 0x7C, 0x33, 0x5B, 0x30, 0x31, 0x34, 0x39, 0x5D, 0x7C, 0x34, 0x5B, 0x30, 0x31, 0x5D, 0x7C, 0x35, 0x5B, 0x31, 0x39, 0x5D, 0x7C, 0x36, 0x5B, 0x31, 0x2D, 0x33, 0x37, 0x5D, 0x7C, 0x37, 0x5B, 0x30, 0x31, 0x33, 0x2D, 0x35, 0x5D, 0x7C, 0x38, 0x5B, 0x30, 0x35, 0x36, 0x5D, 0x29, 0x7C, 0x36, 0x28, 0x3F, 0x3A, 0x30, 0x5B, 0x31, 0x2D, 0x33, 0x35, 0x2D, 0x39, 0x5D, 0x7C, 0x31, 0x5B, 0x30, 0x32, 0x34, 0x2D, 0x39, 0x5D, 0x7C, 0x32, 0x5B, 0x30, 0x33, 0x36, 0x5D, 0x7C, 0x33, 0x5B, 0x30, 0x31, 0x36, 0x5D, 0x7C, 0x34, 0x5B, 0x31, 0x36, 0x5D, 0x7C, 0x35, 0x5B, 0x30, 0x31, 0x37, 0x5D, 0x7C, 0x36, 0x5B, 0x30, 0x2D, 0x32, 0x39, 0x5D, 0x7C, 0x37, 0x38, 0x7C, 0x38, 0x5B, 0x31, 0x32, 0x5D, 0x29, 0x7C, 0x37, 0x28, 0x3F, 0x3A, 0x30, 0x5B, 0x31, 0x2D, 0x34, 0x36, 0x2D, 0x38, 0x5D, 0x7C, 0x31, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x7C, 0x32, 0x5B, 0x30, 0x34, 0x37, 0x5D, 0x7C, 0x33, 0x5B, 0x31, 0x32, 0x34, 0x5D, 0x7C, 0x34, 0x5B, 0x30, 0x37, 0x5D, 0x7C, 0x35, 0x5B, 0x34, 0x37, 0x5D, 0x7C, 0x36, 0x5B, 0x30, 0x32, 0x33, 0x35, 0x39, 0x5D, 0x7C, 0x37, 0x5B, 0x30, 0x32, 0x2D, 0x35, 0x39, 0x5D, 0x7C, 0x38, 0x5B, 0x31, 0x35, 0x36, 0x5D, 0x29, 0x7C, 0x38, 0x28, 0x3F, 0x3A, 0x30, 0x5B, 0x31, 0x2D, 0x36, 0x38, 0x5D, 0x7C, 0x31, 0x5B, 0x30, 0x32, 0x2D, 0x38, 0x5D, 0x7C, 0x32, 0x38, 0x7C, 0x33, 0x5B, 0x30, 0x2D, 0x32, 0x35, 0x5D, 0x7C, 0x34, 0x5B, 0x33, 0x35, 0x37, 0x38, 0x5D, 0x7C, 0x35, 0x5B, 0x30, 0x36, 0x2D, 0x39, 0x5D, 0x7C, 0x36, 0x5B, 0x30, 0x32, 0x2D, 0x35, 0x5D, 0x7C, 0x37, 0x5B, 0x30, 0x32, 0x38, 0x5D, 0x29, 0x7C, 0x39, 0x28, 0x3F, 0x3A, 0x30, 0x5B, 0x31, 0x33, 0x34, 0x36, 0x2D, 0x39, 0x5D, 0x7C, 0x31, 0x5B, 0x30, 0x32, 0x2D, 0x39, 0x5D, 0x7C, 0x32, 0x5B, 0x30, 0x35, 0x38, 0x39, 0x5D, 0x7C, 0x33, 0x5B, 0x31, 0x36, 0x37, 0x38, 0x5D, 0x7C, 0x34, 0x5B, 0x30, 0x31, 0x37, 0x39, 0x5D, 0x7C, 0x35, 0x5B, 0x31, 0x32, 0x34, 0x36, 0x5D, 0x7C, 0x37, 0x5B, 0x30, 0x2D, 0x33, 0x35, 0x38, 0x39, 0x5D, 0x7C, 0x38, 0x5B, 0x30, 0x35, 0x39, 0x5D, 0x29, 0x29, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x0F, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x28, 0x3F, 0x3A, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x3F, 0x32, 0x0A, 0x32, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x22, 0x33, 0x12, 0x1D, 0x38, 0x28, 0x3F, 0x3A, 0x30, 0x30, 0x7C, 0x35, 0x35, 0x7C, 0x36, 0x36, 0x7C, 0x37, 0x37, 0x7C, 0x38, 0x38, 0x29, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x38, 0x30, 0x30, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x2A, 0x23, 0x12, 0x0D, 0x39, 0x30, 0x30, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x39, 0x30, 0x30, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x2D, 0x12, 0x17, 0x35, 0x28, 0x3F, 0x3A, 0x30, 0x30, 0x7C, 0x33, 0x33, 0x7C, 0x34, 0x34, 0x29, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x35, 0x30, 0x30, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x55, 0x53, 0x50, 0x01, 0x5A, 0x03, 0x30, 0x31, 0x31, 0x62, 0x01, 0x31, 0x7A, 0x01, 0x31, 0x90, 0x01, 0x01, 0x9A, 0x01, 0x27, 0x0A, 0x15, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x0A, 0x28, 0x24, 0x31, 0x29, 0x20, 0x24, 0x32, 0x2D, 0x24, 0x33, 0x22, 0x00, 0x2A, 0x00, 0x9A, 0x01, 0x1B, 0x0A, 0x0E, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x2D, 0x24, 0x32, 0x22, 0x00, 0x2A, 0x00, 0xA2, 0x01, 0x23, 0x0A, 0x15, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x2D, 0x24, 0x32, 0x2D, 0x24, 0x33, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xB0, 0x01, 0x01, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0x6D, 0x0A, 0x00, 0x12, 0x00, 0x1A, 0x00, 0x22, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x2A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x55, 0x59, 0x50, 0xD6, 0x04, 0x5A, 0x02, 0x30, 0x30, 0x62, 0x01, 0x30, 0x7A, 0x01, 0x30, 0x90, 0x01, 0x01, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0x8C, 0x02, 0x0A, 0x15, 0x12, 0x0A, 0x5B, 0x36, 0x37, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x39, 0x7D, 0x12, 0x30, 0x12, 0x1A, 0x28, 0x3F, 0x3A, 0x36, 0x5B, 0x31, 0x32, 0x35, 0x36, 0x37, 0x39, 0x5D, 0x7C, 0x37, 0x5B, 0x30, 0x2D, 0x36, 0x39, 0x5D, 0x29, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x39, 0x7D, 0x32, 0x09, 0x36, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x1A, 0x24, 0x12, 0x0E, 0x39, 0x5B, 0x30, 0x2D, 0x35, 0x37, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x39, 0x7D, 0x32, 0x09, 0x39, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x22, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x2A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x55, 0x5A, 0x50, 0xE6, 0x07, 0x5A, 0x04, 0x38, 0x7E, 0x31, 0x30, 0x62, 0x01, 0x38, 0x7A, 0x01, 0x38, 0x9A, 0x01, 0x34, 0x0A, 0x1E, 0x28, 0x5B, 0x36, 0x37, 0x39, 0x5D, 0x5C, 0x64, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x12, 0x0B, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x20, 0x24, 0x34, 0x22, 0x03, 0x38, 0x24, 0x31, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xC7, 0x01, 0x0A, 0x11, 0x12, 0x07, 0x30, 0x36, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x12, 0x20, 0x12, 0x0A, 0x30, 0x36, 0x36, 0x39, 0x38, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x30, 0x36, 0x36, 0x39, 0x38, 0x31, 0x32, 0x33, 0x34, 0x35, 0x1A, 0x0A, 0x12, 0x03, 0x4E, 0x2F, 0x41, 0x1A, 0x03, 0x4E, 0x2F, 0x41, 0x22, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x2A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x56, 0x41, 0x50, 0xFB, 0x02, 0x5A, 0x02, 0x30, 0x30, 0x9A, 0x01, 0x22, 0x0A, 0x12, 0x28, 0x30, 0x36, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x22, 0x00, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xD0, 0x01, 0x01, 0x0A, 0xBA, 0x03, 0x0A, 0x1E, 0x12, 0x0B, 0x5B, 0x35, 0x37, 0x38, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x1A, 0x0F, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x28, 0x3F, 0x3A, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x3F, 0x12, 0x70, 0x12, 0x51, 0x37, 0x38, 0x34, 0x28, 0x3F, 0x3A, 0x32, 0x36, 0x36, 0x7C, 0x33, 0x28, 0x3F, 0x3A, 0x36, 0x5B, 0x36, 0x2D, 0x39, 0x5D, 0x7C, 0x37, 0x5C, 0x64, 0x7C, 0x38, 0x5B, 0x30, 0x2D, 0x32, 0x34, 0x2D, 0x36, 0x5D, 0x29, 0x7C, 0x34, 0x28, 0x3F, 0x3A, 0x33, 0x38, 0x7C, 0x35, 0x5B, 0x30, 0x2D, 0x33, 0x36, 0x2D, 0x38, 0x5D, 0x7C, 0x38, 0x5C, 0x64, 0x7C, 0x39, 0x5B, 0x30, 0x31, 0x5D, 0x29, 0x7C, 0x35, 0x35, 0x35, 0x7C, 0x36, 0x33, 0x38, 0x7C, 0x37, 0x38, 0x34, 0x29, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x0F, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x28, 0x3F, 0x3A, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x3F, 0x32, 0x0A, 0x37, 0x38, 0x34, 0x32, 0x36, 0x36, 0x31, 0x32, 0x33, 0x34, 0x1A, 0x51, 0x12, 0x3B, 0x37, 0x38, 0x34, 0x28, 0x3F, 0x3A, 0x34, 0x28, 0x3F, 0x3A, 0x33, 0x5B, 0x30, 0x2D, 0x32, 0x34, 0x5D, 0x7C, 0x35, 0x5B, 0x34, 0x35, 0x5D, 0x7C, 0x39, 0x5B, 0x32, 0x2D, 0x35, 0x5D, 0x29, 0x7C, 0x35, 0x28, 0x3F, 0x3A, 0x32, 0x5B, 0x36, 0x2D, 0x39, 0x5D, 0x7C, 0x33, 0x5B, 0x30, 0x2D, 0x33, 0x5D, 0x7C, 0x39, 0x33, 0x29, 0x29, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x37, 0x38, 0x34, 0x34, 0x33, 0x30, 0x31, 0x32, 0x33, 0x34, 0x22, 0x33, 0x12, 0x1D, 0x38, 0x28, 0x3F, 0x3A, 0x30, 0x30, 0x7C, 0x35, 0x35, 0x7C, 0x36, 0x36, 0x7C, 0x37, 0x37, 0x7C, 0x38, 0x38, 0x29, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x38, 0x30, 0x30, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x2A, 0x23, 0x12, 0x0D, 0x39, 0x30, 0x30, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x39, 0x30, 0x30, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x2D, 0x12, 0x17, 0x35, 0x28, 0x3F, 0x3A, 0x30, 0x30, 0x7C, 0x33, 0x33, 0x7C, 0x34, 0x34, 0x29, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x35, 0x30, 0x30, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x56, 0x43, 0x50, 0x01, 0x5A, 0x03, 0x30, 0x31, 0x31, 0x62, 0x01, 0x31, 0x7A, 0x01, 0x31, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xBA, 0x01, 0x03, 0x37, 0x38, 0x34, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xDB, 0x02, 0x0A, 0x18, 0x12, 0x0C, 0x5B, 0x32, 0x34, 0x35, 0x38, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x31, 0x30, 0x7D, 0x12, 0x51, 0x12, 0x39, 0x28, 0x3F, 0x3A, 0x32, 0x28, 0x3F, 0x3A, 0x31, 0x32, 0x7C, 0x33, 0x5B, 0x34, 0x35, 0x37, 0x2D, 0x39, 0x5D, 0x7C, 0x5B, 0x35, 0x38, 0x5D, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x7C, 0x5B, 0x34, 0x36, 0x37, 0x5D, 0x5C, 0x64, 0x7C, 0x39, 0x5B, 0x31, 0x2D, 0x36, 0x5D, 0x29, 0x7C, 0x35, 0x30, 0x5B, 0x30, 0x31, 0x5D, 0x29, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x32, 0x31, 0x32, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x1A, 0x2D, 0x12, 0x17, 0x34, 0x28, 0x3F, 0x3A, 0x31, 0x5B, 0x32, 0x34, 0x2D, 0x38, 0x5D, 0x7C, 0x32, 0x5B, 0x34, 0x36, 0x5D, 0x29, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x34, 0x31, 0x32, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x22, 0x1E, 0x12, 0x08, 0x38, 0x30, 0x30, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x38, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x2A, 0x1E, 0x12, 0x08, 0x39, 0x30, 0x30, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x39, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x56, 0x45, 0x50, 0x3A, 0x5A, 0x02, 0x30, 0x30, 0x62, 0x01, 0x30, 0x7A, 0x0A, 0x28, 0x31, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x7C, 0x30, 0x9A, 0x01, 0x24, 0x0A, 0x0E, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x2D, 0x24, 0x32, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x06, 0x24, 0x43, 0x43, 0x20, 0x24, 0x31, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xAB, 0x03, 0x0A, 0x1E, 0x12, 0x0B, 0x5B, 0x32, 0x35, 0x38, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x1A, 0x0F, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x28, 0x3F, 0x3A, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x3F, 0x12, 0x5D, 0x12, 0x3E, 0x32, 0x38, 0x34, 0x28, 0x3F, 0x3A, 0x28, 0x3F, 0x3A, 0x32, 0x32, 0x39, 0x7C, 0x34, 0x28, 0x3F, 0x3A, 0x34, 0x36, 0x7C, 0x39, 0x5B, 0x34, 0x35, 0x5D, 0x29, 0x7C, 0x38, 0x28, 0x3F, 0x3A, 0x35, 0x32, 0x7C, 0x36, 0x5B, 0x34, 0x35, 0x39, 0x5D, 0x29, 0x29, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x7C, 0x34, 0x39, 0x36, 0x5B, 0x30, 0x2D, 0x35, 0x5D, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x1A, 0x0F, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x28, 0x3F, 0x3A, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x3F, 0x32, 0x0A, 0x32, 0x38, 0x34, 0x32, 0x32, 0x39, 0x31, 0x32, 0x33, 0x34, 0x1A, 0x55, 0x12, 0x3F, 0x32, 0x38, 0x34, 0x28, 0x3F, 0x3A, 0x28, 0x3F, 0x3A, 0x33, 0x30, 0x5B, 0x30, 0x2D, 0x33, 0x5D, 0x7C, 0x34, 0x28, 0x3F, 0x3A, 0x34, 0x5B, 0x30, 0x2D, 0x35, 0x5D, 0x7C, 0x36, 0x38, 0x7C, 0x39, 0x39, 0x29, 0x7C, 0x35, 0x34, 0x5B, 0x30, 0x2D, 0x34, 0x5D, 0x29, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x7C, 0x34, 0x39, 0x36, 0x5B, 0x36, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x32, 0x38, 0x34, 0x33, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x22, 0x33, 0x12, 0x1D, 0x38, 0x28, 0x3F, 0x3A, 0x30, 0x30, 0x7C, 0x35, 0x35, 0x7C, 0x36, 0x36, 0x7C, 0x37, 0x37, 0x7C, 0x38, 0x38, 0x29, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x38, 0x30, 0x30, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x2A, 0x23, 0x12, 0x0D, 0x39, 0x30, 0x30, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x39, 0x30, 0x30, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x2D, 0x12, 0x17, 0x35, 0x28, 0x3F, 0x3A, 0x30, 0x30, 0x7C, 0x33, 0x33, 0x7C, 0x34, 0x34, 0x29, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x35, 0x30, 0x30, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x56, 0x47, 0x50, 0x01, 0x5A, 0x03, 0x30, 0x31, 0x31, 0x62, 0x01, 0x31, 0x7A, 0x01, 0x31, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xBA, 0x01, 0x03, 0x32, 0x38, 0x34, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xEE, 0x02, 0x0A, 0x1E, 0x12, 0x0B, 0x5B, 0x33, 0x35, 0x38, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x1A, 0x0F, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x28, 0x3F, 0x3A, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x3F, 0x12, 0x39, 0x12, 0x1A, 0x33, 0x34, 0x30, 0x28, 0x3F, 0x3A, 0x36, 0x5B, 0x34, 0x39, 0x5D, 0x32, 0x7C, 0x37, 0x5B, 0x31, 0x37, 0x5D, 0x5C, 0x64, 0x29, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x0F, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x28, 0x3F, 0x3A, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x3F, 0x32, 0x0A, 0x33, 0x34, 0x30, 0x36, 0x34, 0x32, 0x31, 0x32, 0x33, 0x34, 0x1A, 0x39, 0x12, 0x1A, 0x33, 0x34, 0x30, 0x28, 0x3F, 0x3A, 0x36, 0x5B, 0x34, 0x39, 0x5D, 0x32, 0x7C, 0x37, 0x5B, 0x31, 0x37, 0x5D, 0x5C, 0x64, 0x29, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x0F, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x28, 0x3F, 0x3A, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x3F, 0x32, 0x0A, 0x33, 0x34, 0x30, 0x36, 0x34, 0x32, 0x31, 0x32, 0x33, 0x34, 0x22, 0x33, 0x12, 0x1D, 0x38, 0x28, 0x3F, 0x3A, 0x30, 0x30, 0x7C, 0x35, 0x35, 0x7C, 0x36, 0x36, 0x7C, 0x37, 0x37, 0x7C, 0x38, 0x38, 0x29, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x38, 0x30, 0x30, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x2A, 0x23, 0x12, 0x0D, 0x39, 0x30, 0x30, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x39, 0x30, 0x30, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x2D, 0x12, 0x17, 0x35, 0x28, 0x3F, 0x3A, 0x30, 0x30, 0x7C, 0x33, 0x33, 0x7C, 0x34, 0x34, 0x29, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x35, 0x30, 0x30, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x56, 0x49, 0x50, 0x01, 0x5A, 0x03, 0x30, 0x31, 0x31, 0x62, 0x01, 0x31, 0x7A, 0x01, 0x31, 0x90, 0x01, 0x01, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xBA, 0x01, 0x03, 0x33, 0x34, 0x30, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xF2, 0x06, 0x0A, 0x22, 0x12, 0x16, 0x38, 0x5C, 0x64, 0x7B, 0x35, 0x2C, 0x38, 0x7D, 0x7C, 0x5B, 0x31, 0x2D, 0x37, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x39, 0x7D, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x31, 0x30, 0x7D, 0x12, 0xAF, 0x01, 0x12, 0x96, 0x01, 0x28, 0x3F, 0x3A, 0x32, 0x28, 0x3F, 0x3A, 0x5B, 0x30, 0x32, 0x35, 0x2D, 0x37, 0x39, 0x5D, 0x7C, 0x31, 0x5B, 0x30, 0x31, 0x38, 0x39, 0x5D, 0x7C, 0x5B, 0x33, 0x34, 0x38, 0x5D, 0x5B, 0x30, 0x31, 0x5D, 0x29, 0x7C, 0x33, 0x28, 0x3F, 0x3A, 0x5B, 0x30, 0x31, 0x33, 0x36, 0x2D, 0x39, 0x5D, 0x7C, 0x5B, 0x32, 0x35, 0x5D, 0x5B, 0x30, 0x31, 0x5D, 0x29, 0x7C, 0x5B, 0x34, 0x38, 0x5D, 0x5C, 0x64, 0x7C, 0x35, 0x28, 0x3F, 0x3A, 0x5B, 0x30, 0x31, 0x5D, 0x5B, 0x30, 0x31, 0x5D, 0x7C, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x29, 0x7C, 0x36, 0x28, 0x3F, 0x3A, 0x5B, 0x30, 0x2D, 0x34, 0x36, 0x2D, 0x38, 0x5D, 0x7C, 0x35, 0x5B, 0x30, 0x31, 0x5D, 0x29, 0x7C, 0x37, 0x28, 0x3F, 0x3A, 0x5B, 0x30, 0x32, 0x2D, 0x37, 0x39, 0x5D, 0x7C, 0x5B, 0x31, 0x38, 0x5D, 0x5B, 0x30, 0x31, 0x5D, 0x29, 0x29, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x7C, 0x36, 0x39, 0x5C, 0x64, 0x7B, 0x35, 0x2C, 0x36, 0x7D, 0x7C, 0x38, 0x30, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x32, 0x31, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x1A, 0x39, 0x12, 0x22, 0x28, 0x3F, 0x3A, 0x39, 0x5C, 0x64, 0x7C, 0x31, 0x28, 0x3F, 0x3A, 0x32, 0x5C, 0x64, 0x7C, 0x36, 0x5B, 0x33, 0x2D, 0x39, 0x5D, 0x7C, 0x38, 0x38, 0x7C, 0x39, 0x39, 0x29, 0x29, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x39, 0x2C, 0x31, 0x30, 0x7D, 0x32, 0x09, 0x39, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x22, 0x23, 0x12, 0x0B, 0x31, 0x38, 0x30, 0x30, 0x5C, 0x64, 0x7B, 0x34, 0x2C, 0x36, 0x7D, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x38, 0x2C, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x31, 0x38, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x2A, 0x23, 0x12, 0x0B, 0x31, 0x39, 0x30, 0x30, 0x5C, 0x64, 0x7B, 0x34, 0x2C, 0x36, 0x7D, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x38, 0x2C, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x31, 0x39, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x56, 0x4E, 0x50, 0x54, 0x5A, 0x02, 0x30, 0x30, 0x62, 0x01, 0x30, 0x7A, 0x01, 0x30, 0x9A, 0x01, 0x2D, 0x0A, 0x14, 0x28, 0x5B, 0x34, 0x38, 0x5D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x04, 0x5B, 0x34, 0x38, 0x5D, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x5B, 0x0A, 0x19, 0x28, 0x5B, 0x32, 0x33, 0x35, 0x2D, 0x37, 0x5D, 0x5C, 0x64, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x2D, 0x32, 0x5B, 0x30, 0x32, 0x35, 0x2D, 0x37, 0x39, 0x5D, 0x7C, 0x33, 0x5B, 0x30, 0x31, 0x33, 0x36, 0x2D, 0x39, 0x5D, 0x7C, 0x35, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x7C, 0x36, 0x5B, 0x30, 0x2D, 0x34, 0x36, 0x2D, 0x39, 0x5D, 0x7C, 0x37, 0x5B, 0x30, 0x32, 0x2D, 0x37, 0x39, 0x5D, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x1F, 0x0A, 0x0B, 0x28, 0x38, 0x30, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x1A, 0x02, 0x38, 0x30, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x23, 0x0A, 0x0F, 0x28, 0x36, 0x39, 0x5C, 0x64, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x2C, 0x35, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x1A, 0x02, 0x36, 0x39, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x4D, 0x0A, 0x1C, 0x28, 0x5B, 0x32, 0x33, 0x35, 0x2D, 0x37, 0x5D, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x1C, 0x32, 0x5B, 0x31, 0x33, 0x34, 0x38, 0x5D, 0x7C, 0x33, 0x5B, 0x32, 0x35, 0x5D, 0x7C, 0x35, 0x5B, 0x30, 0x31, 0x5D, 0x7C, 0x36, 0x35, 0x7C, 0x37, 0x5B, 0x31, 0x38, 0x5D, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x33, 0x0A, 0x1A, 0x28, 0x39, 0x5C, 0x64, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x12, 0x0B, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x20, 0x24, 0x34, 0x1A, 0x01, 0x39, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x3D, 0x0A, 0x19, 0x28, 0x31, 0x5B, 0x32, 0x36, 0x38, 0x39, 0x5D, 0x5C, 0x64, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x0F, 0x31, 0x28, 0x3F, 0x3A, 0x5B, 0x32, 0x36, 0x5D, 0x7C, 0x38, 0x38, 0x7C, 0x39, 0x39, 0x29, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x29, 0x0A, 0x12, 0x28, 0x31, 0x5B, 0x38, 0x39, 0x5D, 0x30, 0x30, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x2C, 0x36, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x1A, 0x06, 0x31, 0x5B, 0x38, 0x39, 0x5D, 0x30, 0x22, 0x02, 0x24, 0x31, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0x67, 0x0A, 0x00, 0x12, 0x00, 0x1A, 0x00, 0x22, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x2A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x56, 0x55, 0x50, 0xA6, 0x05, 0x5A, 0x02, 0x30, 0x30, 0x90, 0x01, 0x01, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0x67, 0x0A, 0x00, 0x12, 0x00, 0x1A, 0x00, 0x22, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x2A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x57, 0x46, 0x50, 0xA9, 0x05, 0x5A, 0x02, 0x31, 0x39, 0x90, 0x01, 0x01, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xC0, 0x02, 0x0A, 0x17, 0x12, 0x0C, 0x5B, 0x32, 0x2D, 0x38, 0x5D, 0x5C, 0x64, 0x7B, 0x34, 0x2C, 0x36, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x35, 0x2C, 0x37, 0x7D, 0x12, 0x2F, 0x12, 0x1D, 0x28, 0x3F, 0x3A, 0x5B, 0x32, 0x2D, 0x35, 0x5D, 0x5C, 0x64, 0x7C, 0x36, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x7C, 0x38, 0x34, 0x30, 0x5C, 0x64, 0x29, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x35, 0x2C, 0x37, 0x7D, 0x32, 0x05, 0x32, 0x32, 0x31, 0x32, 0x33, 0x1A, 0x28, 0x12, 0x15, 0x28, 0x3F, 0x3A, 0x36, 0x30, 0x7C, 0x37, 0x5B, 0x32, 0x35, 0x2D, 0x37, 0x5D, 0x5C, 0x64, 0x29, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x36, 0x2C, 0x37, 0x7D, 0x32, 0x06, 0x36, 0x30, 0x31, 0x32, 0x33, 0x34, 0x22, 0x19, 0x12, 0x08, 0x38, 0x30, 0x30, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x32, 0x06, 0x38, 0x30, 0x30, 0x31, 0x32, 0x33, 0x2A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x57, 0x53, 0x50, 0xAD, 0x05, 0x5A, 0x01, 0x30, 0x62, 0x01, 0x30, 0x7A, 0x01, 0x30, 0x9A, 0x01, 0x29, 0x0A, 0x11, 0x28, 0x38, 0x5B, 0x30, 0x34, 0x5D, 0x30, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x2C, 0x34, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x1A, 0x06, 0x38, 0x5B, 0x30, 0x34, 0x5D, 0x30, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x29, 0x0A, 0x10, 0x28, 0x37, 0x5B, 0x32, 0x35, 0x2D, 0x37, 0x5D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x1A, 0x07, 0x37, 0x5B, 0x32, 0x35, 0x2D, 0x37, 0x5D, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xEF, 0x02, 0x0A, 0x17, 0x12, 0x0C, 0x5B, 0x31, 0x2D, 0x37, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x2C, 0x38, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x36, 0x2C, 0x39, 0x7D, 0x12, 0x5C, 0x12, 0x48, 0x28, 0x3F, 0x3A, 0x31, 0x28, 0x3F, 0x3A, 0x37, 0x5C, 0x64, 0x7C, 0x5B, 0x32, 0x2D, 0x36, 0x38, 0x5D, 0x29, 0x7C, 0x32, 0x5B, 0x32, 0x2D, 0x36, 0x38, 0x5D, 0x7C, 0x33, 0x5B, 0x32, 0x33, 0x35, 0x38, 0x5D, 0x7C, 0x34, 0x5B, 0x32, 0x2D, 0x35, 0x38, 0x5D, 0x7C, 0x35, 0x5B, 0x32, 0x2D, 0x36, 0x5D, 0x7C, 0x36, 0x5B, 0x33, 0x2D, 0x35, 0x38, 0x5D, 0x7C, 0x37, 0x5B, 0x32, 0x34, 0x2D, 0x36, 0x38, 0x5D, 0x29, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x36, 0x2C, 0x38, 0x7D, 0x32, 0x07, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x1A, 0x1F, 0x12, 0x0B, 0x37, 0x5B, 0x31, 0x33, 0x37, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x37, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x22, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x2A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x59, 0x45, 0x50, 0xC7, 0x07, 0x5A, 0x02, 0x30, 0x30, 0x62, 0x01, 0x30, 0x7A, 0x01, 0x30, 0x9A, 0x01, 0x3A, 0x0A, 0x17, 0x28, 0x5B, 0x31, 0x2D, 0x37, 0x5D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x2C, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x0E, 0x5B, 0x31, 0x2D, 0x36, 0x5D, 0x7C, 0x37, 0x5B, 0x32, 0x34, 0x2D, 0x36, 0x38, 0x5D, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x33, 0x0A, 0x18, 0x28, 0x37, 0x5B, 0x31, 0x33, 0x37, 0x5D, 0x5C, 0x64, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x06, 0x37, 0x5B, 0x31, 0x33, 0x37, 0x5D, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xD7, 0x01, 0x0A, 0x13, 0x12, 0x0A, 0x5B, 0x32, 0x36, 0x38, 0x5D, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x12, 0x22, 0x12, 0x0E, 0x32, 0x36, 0x39, 0x36, 0x5B, 0x30, 0x2D, 0x34, 0x5D, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x32, 0x36, 0x39, 0x36, 0x30, 0x31, 0x32, 0x33, 0x34, 0x1A, 0x1C, 0x12, 0x08, 0x36, 0x33, 0x39, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x36, 0x33, 0x39, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x22, 0x1B, 0x12, 0x07, 0x38, 0x30, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x38, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x2A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x59, 0x54, 0x50, 0x86, 0x02, 0x5A, 0x02, 0x30, 0x30, 0x62, 0x01, 0x30, 0x7A, 0x01, 0x30, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xBA, 0x01, 0x06, 0x32, 0x36, 0x39, 0x7C, 0x36, 0x33, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xB9, 0x03, 0x0A, 0x10, 0x12, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x38, 0x2C, 0x39, 0x7D, 0x12, 0x44, 0x12, 0x2E, 0x28, 0x3F, 0x3A, 0x31, 0x5B, 0x30, 0x2D, 0x38, 0x5D, 0x7C, 0x32, 0x5B, 0x31, 0x2D, 0x34, 0x37, 0x38, 0x5D, 0x7C, 0x33, 0x5B, 0x31, 0x2D, 0x36, 0x39, 0x5D, 0x7C, 0x34, 0x5C, 0x64, 0x7C, 0x35, 0x5B, 0x31, 0x33, 0x34, 0x36, 0x2D, 0x38, 0x5D, 0x29, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x38, 0x2C, 0x39, 0x7D, 0x32, 0x09, 0x31, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x1A, 0x30, 0x12, 0x1C, 0x28, 0x3F, 0x3A, 0x37, 0x5B, 0x31, 0x2D, 0x34, 0x36, 0x38, 0x39, 0x5D, 0x7C, 0x38, 0x5B, 0x31, 0x2D, 0x35, 0x37, 0x38, 0x39, 0x5D, 0x29, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x37, 0x31, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x22, 0x1B, 0x12, 0x07, 0x38, 0x30, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x38, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x2A, 0x20, 0x12, 0x0C, 0x38, 0x36, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x38, 0x36, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x32, 0x1C, 0x12, 0x08, 0x38, 0x36, 0x30, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x38, 0x36, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x1B, 0x12, 0x07, 0x38, 0x37, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x38, 0x37, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x4A, 0x02, 0x5A, 0x41, 0x50, 0x1B, 0x5A, 0x02, 0x30, 0x30, 0x62, 0x01, 0x30, 0x7A, 0x01, 0x30, 0x9A, 0x01, 0x2B, 0x0A, 0x13, 0x28, 0x38, 0x36, 0x30, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x03, 0x38, 0x36, 0x30, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x49, 0x0A, 0x19, 0x28, 0x5B, 0x31, 0x2D, 0x35, 0x37, 0x38, 0x5D, 0x5C, 0x64, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x1B, 0x5B, 0x31, 0x2D, 0x35, 0x37, 0x5D, 0x7C, 0x38, 0x28, 0x3F, 0x3A, 0x5B, 0x30, 0x2D, 0x35, 0x37, 0x2D, 0x39, 0x5D, 0x7C, 0x36, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x29, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xB3, 0x02, 0x0A, 0x13, 0x12, 0x0A, 0x5B, 0x32, 0x38, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x12, 0x20, 0x12, 0x0C, 0x32, 0x31, 0x5B, 0x31, 0x2D, 0x38, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x32, 0x31, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x1A, 0x2E, 0x12, 0x1A, 0x39, 0x28, 0x3F, 0x3A, 0x35, 0x35, 0x7C, 0x36, 0x5B, 0x34, 0x2D, 0x39, 0x5D, 0x7C, 0x37, 0x5B, 0x34, 0x2D, 0x39, 0x5D, 0x29, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x39, 0x35, 0x35, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x22, 0x1C, 0x12, 0x08, 0x38, 0x30, 0x30, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x38, 0x30, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x2A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x5A, 0x4D, 0x50, 0x84, 0x02, 0x5A, 0x02, 0x30, 0x30, 0x62, 0x01, 0x30, 0x7A, 0x01, 0x30, 0x9A, 0x01, 0x25, 0x0A, 0x0F, 0x28, 0x5B, 0x32, 0x39, 0x5D, 0x5C, 0x64, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x1A, 0x04, 0x5B, 0x32, 0x39, 0x5D, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x29, 0x0A, 0x13, 0x28, 0x38, 0x30, 0x30, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x01, 0x38, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xBB, 0x0B, 0x0A, 0x42, 0x12, 0x36, 0x32, 0x28, 0x3F, 0x3A, 0x5B, 0x30, 0x31, 0x32, 0x34, 0x35, 0x37, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x33, 0x2C, 0x38, 0x7D, 0x7C, 0x36, 0x5C, 0x64, 0x7B, 0x33, 0x2C, 0x36, 0x7D, 0x29, 0x7C, 0x5B, 0x31, 0x33, 0x2D, 0x37, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x34, 0x2C, 0x38, 0x7D, 0x7C, 0x38, 0x36, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x33, 0x2C, 0x31, 0x30, 0x7D, 0x12, 0xAB, 0x02, 0x12, 0x95, 0x02, 0x28, 0x3F, 0x3A, 0x31, 0x5B, 0x33, 0x2D, 0x39, 0x5D, 0x7C, 0x32, 0x28, 0x3F, 0x3A, 0x30, 0x5B, 0x34, 0x35, 0x5D, 0x7C, 0x5B, 0x31, 0x36, 0x5D, 0x7C, 0x32, 0x5B, 0x32, 0x38, 0x5D, 0x7C, 0x5B, 0x34, 0x39, 0x5D, 0x38, 0x3F, 0x7C, 0x35, 0x38, 0x5B, 0x32, 0x33, 0x5D, 0x7C, 0x37, 0x5B, 0x32, 0x34, 0x36, 0x5D, 0x7C, 0x38, 0x5B, 0x31, 0x33, 0x34, 0x36, 0x2D, 0x39, 0x5D, 0x29, 0x7C, 0x33, 0x28, 0x3F, 0x3A, 0x30, 0x38, 0x3F, 0x7C, 0x31, 0x37, 0x3F, 0x7C, 0x33, 0x5B, 0x37, 0x38, 0x5D, 0x7C, 0x5B, 0x32, 0x34, 0x35, 0x36, 0x5D, 0x7C, 0x37, 0x5B, 0x31, 0x35, 0x36, 0x39, 0x5D, 0x7C, 0x38, 0x5B, 0x33, 0x37, 0x39, 0x5D, 0x29, 0x7C, 0x35, 0x28, 0x3F, 0x3A, 0x5B, 0x30, 0x37, 0x2D, 0x39, 0x5D, 0x7C, 0x31, 0x5B, 0x37, 0x38, 0x5D, 0x7C, 0x34, 0x38, 0x33, 0x7C, 0x35, 0x28, 0x3F, 0x3A, 0x37, 0x3F, 0x7C, 0x38, 0x29, 0x29, 0x7C, 0x36, 0x28, 0x3F, 0x3A, 0x30, 0x7C, 0x32, 0x38, 0x7C, 0x33, 0x37, 0x3F, 0x7C, 0x5B, 0x34, 0x35, 0x5D, 0x5B, 0x36, 0x38, 0x5D, 0x5B, 0x37, 0x38, 0x5D, 0x7C, 0x39, 0x38, 0x3F, 0x29, 0x7C, 0x38, 0x34, 0x38, 0x29, 0x5C, 0x64, 0x7B, 0x33, 0x2C, 0x36, 0x7D, 0x7C, 0x28, 0x3F, 0x3A, 0x32, 0x28, 0x3F, 0x3A, 0x32, 0x37, 0x7C, 0x35, 0x7C, 0x37, 0x5B, 0x31, 0x33, 0x35, 0x37, 0x38, 0x39, 0x5D, 0x7C, 0x38, 0x5B, 0x32, 0x35, 0x5D, 0x29, 0x7C, 0x33, 0x5B, 0x33, 0x39, 0x5D, 0x7C, 0x35, 0x5B, 0x31, 0x2D, 0x34, 0x36, 0x5D, 0x7C, 0x36, 0x5B, 0x31, 0x32, 0x36, 0x2D, 0x38, 0x5D, 0x29, 0x5C, 0x64, 0x7B, 0x34, 0x2C, 0x36, 0x7D, 0x7C, 0x32, 0x28, 0x3F, 0x3A, 0x30, 0x7C, 0x37, 0x30, 0x29, 0x5C, 0x64, 0x7B, 0x35, 0x2C, 0x36, 0x7D, 0x7C, 0x28, 0x3F, 0x3A, 0x34, 0x5C, 0x64, 0x7C, 0x39, 0x5B, 0x32, 0x2D, 0x38, 0x5D, 0x29, 0x5C, 0x64, 0x7B, 0x34, 0x2C, 0x37, 0x7D, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x33, 0x2C, 0x31, 0x30, 0x7D, 0x32, 0x07, 0x31, 0x33, 0x31, 0x32, 0x33, 0x34, 0x35, 0x1A, 0x1F, 0x12, 0x0B, 0x37, 0x5B, 0x31, 0x33, 0x37, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x37, 0x31, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x22, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x2A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x39, 0x12, 0x23, 0x38, 0x36, 0x28, 0x3F, 0x3A, 0x31, 0x5B, 0x31, 0x32, 0x5D, 0x7C, 0x32, 0x32, 0x7C, 0x33, 0x30, 0x7C, 0x34, 0x34, 0x7C, 0x38, 0x5B, 0x33, 0x36, 0x37, 0x5D, 0x7C, 0x39, 0x39, 0x29, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x38, 0x36, 0x38, 0x36, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x4A, 0x02, 0x5A, 0x57, 0x50, 0x87, 0x02, 0x5A, 0x02, 0x30, 0x30, 0x62, 0x01, 0x30, 0x7A, 0x01, 0x30, 0x9A, 0x01, 0x33, 0x0A, 0x16, 0x28, 0x5B, 0x34, 0x39, 0x5D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x2C, 0x35, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x08, 0x34, 0x7C, 0x39, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x35, 0x0A, 0x19, 0x28, 0x5B, 0x31, 0x37, 0x39, 0x5D, 0x5C, 0x64, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x2C, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x07, 0x5B, 0x31, 0x39, 0x5D, 0x31, 0x7C, 0x37, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0xBA, 0x01, 0x0A, 0x14, 0x28, 0x5B, 0x31, 0x2D, 0x33, 0x35, 0x36, 0x5D, 0x5C, 0x64, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x2C, 0x35, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x1A, 0x93, 0x01, 0x31, 0x5B, 0x33, 0x2D, 0x39, 0x5D, 0x7C, 0x32, 0x28, 0x3F, 0x3A, 0x5B, 0x31, 0x2D, 0x34, 0x36, 0x39, 0x5D, 0x7C, 0x30, 0x5B, 0x30, 0x2D, 0x33, 0x35, 0x2D, 0x39, 0x5D, 0x7C, 0x5B, 0x34, 0x35, 0x5D, 0x5B, 0x30, 0x2D, 0x37, 0x39, 0x5D, 0x29, 0x7C, 0x33, 0x28, 0x3F, 0x3A, 0x30, 0x5B, 0x30, 0x2D, 0x37, 0x39, 0x5D, 0x7C, 0x31, 0x5B, 0x30, 0x2D, 0x36, 0x38, 0x39, 0x5D, 0x7C, 0x5B, 0x32, 0x34, 0x2D, 0x36, 0x39, 0x5D, 0x7C, 0x33, 0x5B, 0x30, 0x2D, 0x36, 0x39, 0x5D, 0x29, 0x7C, 0x35, 0x28, 0x3F, 0x3A, 0x5B, 0x30, 0x32, 0x2D, 0x34, 0x36, 0x2D, 0x39, 0x5D, 0x7C, 0x5B, 0x31, 0x35, 0x5D, 0x5B, 0x30, 0x2D, 0x36, 0x39, 0x5D, 0x29, 0x7C, 0x36, 0x28, 0x3F, 0x3A, 0x5B, 0x30, 0x31, 0x34, 0x35, 0x5D, 0x7C, 0x5B, 0x32, 0x39, 0x5D, 0x5B, 0x30, 0x2D, 0x37, 0x39, 0x5D, 0x7C, 0x33, 0x5B, 0x30, 0x2D, 0x36, 0x38, 0x39, 0x5D, 0x7C, 0x5B, 0x36, 0x38, 0x5D, 0x5B, 0x30, 0x2D, 0x36, 0x39, 0x5D, 0x29, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0xC2, 0x01, 0x0A, 0x19, 0x28, 0x5B, 0x31, 0x2D, 0x33, 0x35, 0x36, 0x5D, 0x5C, 0x64, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x93, 0x01, 0x31, 0x5B, 0x33, 0x2D, 0x39, 0x5D, 0x7C, 0x32, 0x28, 0x3F, 0x3A, 0x5B, 0x31, 0x2D, 0x34, 0x36, 0x39, 0x5D, 0x7C, 0x30, 0x5B, 0x30, 0x2D, 0x33, 0x35, 0x2D, 0x39, 0x5D, 0x7C, 0x5B, 0x34, 0x35, 0x5D, 0x5B, 0x30, 0x2D, 0x37, 0x39, 0x5D, 0x29, 0x7C, 0x33, 0x28, 0x3F, 0x3A, 0x30, 0x5B, 0x30, 0x2D, 0x37, 0x39, 0x5D, 0x7C, 0x31, 0x5B, 0x30, 0x2D, 0x36, 0x38, 0x39, 0x5D, 0x7C, 0x5B, 0x32, 0x34, 0x2D, 0x36, 0x39, 0x5D, 0x7C, 0x33, 0x5B, 0x30, 0x2D, 0x36, 0x39, 0x5D, 0x29, 0x7C, 0x35, 0x28, 0x3F, 0x3A, 0x5B, 0x30, 0x32, 0x2D, 0x34, 0x36, 0x2D, 0x39, 0x5D, 0x7C, 0x5B, 0x31, 0x35, 0x5D, 0x5B, 0x30, 0x2D, 0x36, 0x39, 0x5D, 0x29, 0x7C, 0x36, 0x28, 0x3F, 0x3A, 0x5B, 0x30, 0x31, 0x34, 0x35, 0x5D, 0x7C, 0x5B, 0x32, 0x39, 0x5D, 0x5B, 0x30, 0x2D, 0x37, 0x39, 0x5D, 0x7C, 0x33, 0x5B, 0x30, 0x2D, 0x36, 0x38, 0x39, 0x5D, 0x7C, 0x5B, 0x36, 0x38, 0x5D, 0x5B, 0x30, 0x2D, 0x36, 0x39, 0x5D, 0x29, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x72, 0x0A, 0x16, 0x28, 0x5B, 0x32, 0x33, 0x35, 0x36, 0x5D, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x2C, 0x35, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x1A, 0x4A, 0x32, 0x28, 0x3F, 0x3A, 0x5B, 0x32, 0x37, 0x38, 0x5D, 0x7C, 0x30, 0x5B, 0x34, 0x35, 0x5D, 0x7C, 0x34, 0x38, 0x29, 0x7C, 0x33, 0x28, 0x3F, 0x3A, 0x30, 0x38, 0x7C, 0x31, 0x37, 0x7C, 0x33, 0x5B, 0x37, 0x38, 0x5D, 0x7C, 0x5B, 0x37, 0x38, 0x5D, 0x29, 0x7C, 0x35, 0x5B, 0x31, 0x35, 0x5D, 0x5B, 0x37, 0x38, 0x5D, 0x7C, 0x36, 0x28, 0x3F, 0x3A, 0x5B, 0x32, 0x39, 0x5D, 0x38, 0x7C, 0x33, 0x37, 0x7C, 0x5B, 0x36, 0x38, 0x5D, 0x5B, 0x37, 0x38, 0x5D, 0x29, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x7A, 0x0A, 0x1B, 0x28, 0x5B, 0x32, 0x33, 0x35, 0x36, 0x5D, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x4A, 0x32, 0x28, 0x3F, 0x3A, 0x5B, 0x32, 0x37, 0x38, 0x5D, 0x7C, 0x30, 0x5B, 0x34, 0x35, 0x5D, 0x7C, 0x34, 0x38, 0x29, 0x7C, 0x33, 0x28, 0x3F, 0x3A, 0x30, 0x38, 0x7C, 0x31, 0x37, 0x7C, 0x33, 0x5B, 0x37, 0x38, 0x5D, 0x7C, 0x5B, 0x37, 0x38, 0x5D, 0x29, 0x7C, 0x35, 0x5B, 0x31, 0x35, 0x5D, 0x5B, 0x37, 0x38, 0x5D, 0x7C, 0x36, 0x28, 0x3F, 0x3A, 0x5B, 0x32, 0x39, 0x5D, 0x38, 0x7C, 0x33, 0x37, 0x7C, 0x5B, 0x36, 0x38, 0x5D, 0x5B, 0x37, 0x38, 0x5D, 0x29, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x3E, 0x0A, 0x14, 0x28, 0x5B, 0x32, 0x35, 0x5D, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x2C, 0x35, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x1A, 0x0A, 0x28, 0x3F, 0x3A, 0x32, 0x35, 0x7C, 0x35, 0x34, 0x29, 0x38, 0x1A, 0x0C, 0x32, 0x35, 0x38, 0x5B, 0x32, 0x33, 0x5D, 0x7C, 0x35, 0x34, 0x38, 0x33, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x46, 0x0A, 0x19, 0x28, 0x5B, 0x32, 0x35, 0x5D, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x0A, 0x28, 0x3F, 0x3A, 0x32, 0x35, 0x7C, 0x35, 0x34, 0x29, 0x38, 0x1A, 0x0C, 0x32, 0x35, 0x38, 0x5B, 0x32, 0x33, 0x5D, 0x7C, 0x35, 0x34, 0x38, 0x33, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x22, 0x0A, 0x0F, 0x28, 0x38, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x1A, 0x01, 0x38, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, }; + +int metadata_size() { + return sizeof(metadata_data) / sizeof(metadata_data[0]); +} + +const void* metadata_get() { + return metadata_data; +} diff --git a/third_party/libphonenumber/cpp/src/metadata.h b/third_party/libphonenumber/cpp/src/metadata.h new file mode 100644 index 0000000..59794e6 --- /dev/null +++ b/third_party/libphonenumber/cpp/src/metadata.h @@ -0,0 +1,22 @@ +/* + * Copyright (C) 2011 Google Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +#ifndef EMBEDDED_DATA_METADATA_H_ +#define EMBEDDED_DATA_METADATA_H_ + +int metadata_size(); +const void* metadata_get(); + +#endif // EMBEDDED_DATA_METADATA_H_ diff --git a/third_party/libphonenumber/cpp/src/phonenumber.cc b/third_party/libphonenumber/cpp/src/phonenumber.cc new file mode 100644 index 0000000..f622e93 --- /dev/null +++ b/third_party/libphonenumber/cpp/src/phonenumber.cc @@ -0,0 +1,87 @@ +// Copyright (C) 2009 Google Inc. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +// Author: Philippe Liard + +#include "phonemetadata.pb.h" +#include "phonenumber.pb.h" + +namespace i18n { +namespace phonenumbers { + +bool ExactlySameAs(const PhoneNumber& first_number, + const PhoneNumber& second_number) { + if (first_number.has_country_code() != second_number.has_country_code() || + first_number.country_code() != second_number.country_code()) { + return false; + } + if (first_number.has_national_number() != + second_number.has_national_number() || + first_number.national_number() != second_number.national_number()) { + return false; + } + if (first_number.has_extension() != second_number.has_extension() || + first_number.extension() != second_number.extension()) { + return false; + } + if (first_number.has_italian_leading_zero() != + second_number.has_italian_leading_zero() || + first_number.italian_leading_zero() != + second_number.italian_leading_zero()) { + return false; + } + if (first_number.has_raw_input() != second_number.has_raw_input() || + first_number.raw_input() != second_number.raw_input()) { + return false; + } + if (first_number.has_country_code_source() != + second_number.has_country_code_source() || + first_number.country_code_source() != + second_number.country_code_source()) { + return false; + } + if (first_number.has_preferred_domestic_carrier_code() != + second_number.has_preferred_domestic_carrier_code() || + first_number.preferred_domestic_carrier_code() != + second_number.preferred_domestic_carrier_code()) { + return false; + } + return true; +} + +bool ExactlySameAs(const PhoneNumberDesc& first_number_desc, + const PhoneNumberDesc& second_number_desc) { + if (first_number_desc.has_national_number_pattern() != + second_number_desc.has_national_number_pattern() || + first_number_desc.national_number_pattern() != + second_number_desc.national_number_pattern()) { + return false; + } + if (first_number_desc.has_possible_number_pattern() != + second_number_desc.has_possible_number_pattern() || + first_number_desc.possible_number_pattern() != + second_number_desc.possible_number_pattern()) { + return false; + } + if (first_number_desc.has_example_number() != + second_number_desc.has_example_number() || + first_number_desc.example_number() != + second_number_desc.example_number()) { + return false; + } + return true; +} + +} // namespace phonenumbers +} // namespace i18n diff --git a/third_party/libphonenumber/cpp/src/phonenumber.h b/third_party/libphonenumber/cpp/src/phonenumber.h new file mode 100644 index 0000000..952ca7c --- /dev/null +++ b/third_party/libphonenumber/cpp/src/phonenumber.h @@ -0,0 +1,40 @@ +// Copyright (C) 2009 Google Inc. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +// Author: Philippe Liard + +#ifndef I18N_PHONENUMBERS_PHONENUMBER_H_ +#define I18N_PHONENUMBERS_PHONENUMBER_H_ + +// Helper functions dealing with PhoneNumber and PhoneNumberDesc comparisons. + +namespace i18n { +namespace phonenumbers { + +class PhoneNumber; +class PhoneNumberDesc; + +// Compares two phone numbers. +bool ExactlySameAs(const PhoneNumber& first_number, + const PhoneNumber& second_number); + + +// Compares two phone number descriptions. +bool ExactlySameAs(const PhoneNumberDesc& first_number_desc, + const PhoneNumberDesc& second_number_desc); + +} // namespace phonenumbers +} // namespace i18n + +#endif // I18N_PHONENUMBERS_PHONENUMBER_H_ diff --git a/third_party/libphonenumber/cpp/src/phonenumberutil.cc b/third_party/libphonenumber/cpp/src/phonenumberutil.cc new file mode 100644 index 0000000..75ef374 --- /dev/null +++ b/third_party/libphonenumber/cpp/src/phonenumberutil.cc @@ -0,0 +1,2266 @@ +// Copyright (C) 2009 Google Inc. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +// Author: Shaopeng Jia +// Open-sourced by: Philippe Liard + +#include "phonenumberutil.h" + +#include <algorithm> +#include <fstream> +#include <iostream> +#include <map> +#include <sstream> +#include <vector> + +#include <google/protobuf/message_lite.h> +#include <unicode/errorcode.h> +#include <unicode/translit.h> + +#include "base/logging.h" +#include "base/singleton.h" +#include "default_logger.h" +#include "logger_adapter.h" +#include "metadata.h" +#include "phonemetadata.pb.h" +#include "phonenumber.h" +#include "phonenumber.pb.h" +#include "regexp_adapter.h" +#include "stringutil.h" +#include "utf/unicodetext.h" +#include "utf/utf.h" + +namespace i18n { +namespace phonenumbers { + +using std::cerr; +using std::endl; +using std::ifstream; +using std::make_pair; +using std::sort; +using std::stringstream; + +using google::protobuf::RepeatedPtrField; + +namespace { + +scoped_ptr<LoggerAdapter> logger; + +// These objects are created in the function InitializeStaticMapsAndSets. + +// These mappings map a character (key) to a specific digit that should replace +// it for normalization purposes. +scoped_ptr<map<char32, char> > alpha_mappings; +// For performance reasons, amalgamate both into one map. +scoped_ptr<map<char32, char> > all_normalization_mappings; +// Separate map of all symbols that we wish to retain when formatting alpha +// numbers. This includes digits, ascii letters and number grouping symbols such +// as "-" and " ". +scoped_ptr<map<char32, char> > all_plus_number_grouping_symbols; + +// The kPlusSign signifies the international prefix. +const char kPlusSign[] = "+"; + +const char kPlusChars[] = "++"; +scoped_ptr<const reg_exp::RegularExpression> plus_chars_pattern; + +const char kRfc3966ExtnPrefix[] = ";ext="; + +// Pattern that makes it easy to distinguish whether a region has a unique +// international dialing prefix or not. If a region has a unique international +// prefix (e.g. 011 in USA), it will be represented as a string that contains a +// sequence of ASCII digits. If there are multiple available international +// prefixes in a region, they will be represented as a regex string that always +// contains character(s) other than ASCII digits. +// Note this regex also includes tilde, which signals waiting for the tone. +scoped_ptr<const reg_exp::RegularExpression> unique_international_prefix; + +// Digits accepted in phone numbers. +// Both Arabic-Indic and Eastern Arabic-Indic are supported. +const char kValidDigits[] = "0-90-9٠-٩۰-۹"; +// We accept alpha characters in phone numbers, ASCII only. We store lower-case +// here only since our regular expressions are case-insensitive. +const char kValidAlpha[] = "a-z"; +scoped_ptr<const reg_exp::RegularExpression> capturing_digit_pattern; +scoped_ptr<const reg_exp::RegularExpression> capturing_ascii_digits_pattern; + +// Regular expression of acceptable characters that may start a phone number +// for the purposes of parsing. This allows us to strip away meaningless +// prefixes to phone numbers that may be mistakenly given to us. This +// consists of digits, the plus symbol and arabic-indic digits. This does +// not contain alpha characters, although they may be used later in the +// number. It also does not include other punctuation, as this will be +// stripped later during parsing and is of no information value when parsing +// a number. The string starting with this valid character is captured. +// This corresponds to VALID_START_CHAR in the java version. +scoped_ptr<const string> valid_start_char; +scoped_ptr<const reg_exp::RegularExpression> valid_start_char_pattern; + +// Regular expression of characters typically used to start a second phone +// number for the purposes of parsing. This allows us to strip off parts of +// the number that are actually the start of another number, such as for: +// (530) 583-6985 x302/x2303 -> the second extension here makes this actually +// two phone numbers, (530) 583-6985 x302 and (530) 583-6985 x2303. We remove +// the second extension so that the first number is parsed correctly. The string +// preceding this is captured. +// This corresponds to SECOND_NUMBER_START in the java version. +const char kCaptureUpToSecondNumberStart[] = "(.*)[\\\\/] *x"; +scoped_ptr<const reg_exp::RegularExpression> + capture_up_to_second_number_start_pattern; + +// Regular expression of trailing characters that we want to remove. We remove +// all characters that are not alpha or numerical characters. The hash +// character is retained here, as it may signify the previous block was an +// extension. Note the capturing block at the start to capture the rest of the +// number if this was a match. +// This corresponds to UNWANTED_END_CHARS in the java version. +const char kUnwantedEndChar[] = "[^\\p{N}\\p{L}#]"; +scoped_ptr<const reg_exp::RegularExpression> unwanted_end_char_pattern; + +// Regular expression of acceptable punctuation found in phone numbers. This +// excludes punctuation found as a leading character only. This consists of +// dash characters, white space characters, full stops, slashes, square +// brackets, parentheses and tildes. It also includes the letter 'x' as that is +// found as a placeholder for carrier information in some phone numbers. +// Full-width variants are also present. +// To find out the unicode code-point of the characters below in vim, highlight +// the character and type 'ga'. Note that the - is used to express ranges of +// full-width punctuation below, as well as being present in the expression +// itself. In emacs, you can use M-x unicode-what to query information about the +// unicode character. +const char kValidPunctuation[] = + "-x‐-―−ー--/ ()()[].\\[\\]/~⁓∼~"; + +// Regular expression of viable phone numbers. This is location independent. +// Checks we have at least three leading digits, and only valid punctuation, +// alpha characters and digits in the phone number. Does not include extension +// data. The symbol 'x' is allowed here as valid punctuation since it is often +// used as a placeholder for carrier codes, for example in Brazilian phone +// numbers. We also allow multiple plus-signs at the start. +// Corresponds to the following: +// plus_sign*([punctuation]*[digits]){3,}([punctuation]|[digits]|[alpha])* +scoped_ptr<const string> valid_phone_number; + +// Default extension prefix to use when formatting. This will be put in front of +// any extension component of the number, after the main national number is +// formatted. For example, if you wish the default extension formatting to be " +// extn: 3456", then you should specify " extn: " here as the default extension +// prefix. This can be overridden by region-specific preferences. +const char kDefaultExtnPrefix[] = " ext. "; + +// Regexp of all possible ways to write extensions, for use when parsing. This +// will be run as a case-insensitive regexp match. Wide character versions are +// also provided after each ascii version. There are three regular expressions +// here. The first covers RFC 3966 format, where the extension is added using +// ";ext=". The second more generic one starts with optional white space and +// ends with an optional full stop (.), followed by zero or more spaces/tabs and +// then the numbers themselves. The third one covers the special case of +// American numbers where the extension is written with a hash at the end, such +// as "- 503#". +// Note that the only capturing groups should be around the digits that you want +// to capture as part of the extension, or else parsing will fail! +scoped_ptr<const string> known_extn_patterns; +// Regexp of all known extension prefixes used by different regions followed +// by 1 or more valid digits, for use when parsing. +scoped_ptr<const reg_exp::RegularExpression> extn_pattern; + +// We append optionally the extension pattern to the end here, as a valid phone +// number may have an extension prefix appended, followed by 1 or more digits. +scoped_ptr<const reg_exp::RegularExpression> valid_phone_number_pattern; + +// We use this pattern to check if the phone number has at least three letters +// in it - if so, then we treat it as a number where some phone-number digits +// are represented by letters. +scoped_ptr<const reg_exp::RegularExpression> valid_alpha_phone_pattern; + +scoped_ptr<const reg_exp::RegularExpression> first_group_capturing_pattern; + +scoped_ptr<const reg_exp::RegularExpression> carrier_code_pattern; + +void TransformRegularExpressionToRE2Syntax(string* regex) { + DCHECK(regex); + StripString(regex, "$", '\\'); +} + +// Returns a pointer to the description inside the metadata of the appropriate +// type. +const PhoneNumberDesc* GetNumberDescByType( + const PhoneMetadata& metadata, + PhoneNumberUtil::PhoneNumberType type) { + switch (type) { + case PhoneNumberUtil::PREMIUM_RATE: + return &metadata.premium_rate(); + case PhoneNumberUtil::TOLL_FREE: + return &metadata.toll_free(); + case PhoneNumberUtil::MOBILE: + return &metadata.mobile(); + case PhoneNumberUtil::FIXED_LINE: + case PhoneNumberUtil::FIXED_LINE_OR_MOBILE: + return &metadata.fixed_line(); + case PhoneNumberUtil::SHARED_COST: + return &metadata.shared_cost(); + case PhoneNumberUtil::VOIP: + return &metadata.voip(); + case PhoneNumberUtil::PERSONAL_NUMBER: + return &metadata.personal_number(); + case PhoneNumberUtil::PAGER: + return &metadata.pager(); + case PhoneNumberUtil::UAN: + return &metadata.uan(); + default: + return &metadata.general_desc(); + } +} + +// A helper function that is used by Format and FormatByPattern. +void FormatNumberByFormat(int country_calling_code, + PhoneNumberUtil::PhoneNumberFormat number_format, + const string& formatted_national_number, + const string& formatted_extension, + string* formatted_number) { + switch (number_format) { + case PhoneNumberUtil::E164: + formatted_number->assign(StrCat(kPlusSign, + SimpleItoa(country_calling_code), + formatted_national_number, + formatted_extension)); + return; + case PhoneNumberUtil::INTERNATIONAL: + formatted_number->assign(StrCat(kPlusSign, + SimpleItoa(country_calling_code), + " ", + formatted_national_number, + formatted_extension)); + return; + case PhoneNumberUtil::RFC3966: + formatted_number->assign(StrCat(kPlusSign, + SimpleItoa(country_calling_code), + "-", + formatted_national_number, + formatted_extension)); + return; + case PhoneNumberUtil::NATIONAL: + default: + formatted_number->assign(StrCat(formatted_national_number, + formatted_extension)); + } +} + +// The number_for_leading_digits_match is a separate parameter, because for +// alpha numbers we want to pass in the numeric version to select the right +// formatting rule, but then we actually apply the formatting pattern to the +// national_number (which in this case has alpha characters in it). +// +// Note that carrier_code is optional - if an empty string, no carrier code +// replacement will take place. +void FormatAccordingToFormatsWithCarrier( + const string& number_for_leading_digits_match, + const RepeatedPtrField<NumberFormat>& available_formats, + PhoneNumberUtil::PhoneNumberFormat number_format, + const string& national_number, + const string& carrier_code, + string* formatted_number) { + DCHECK(formatted_number); + for (RepeatedPtrField<NumberFormat>::const_iterator + it = available_formats.begin(); it != available_formats.end(); ++it) { + int size = it->leading_digits_pattern_size(); + if (size > 0) { + scoped_ptr<reg_exp::RegularExpressionInput> + number_copy(reg_exp::CreateRegularExpressionInput( + number_for_leading_digits_match.c_str())); + // We always use the last leading_digits_pattern, as it is the most + // detailed. + if (!number_copy->ConsumeRegExp(it->leading_digits_pattern(size - 1), + true, NULL, NULL)) { + continue; + } + } + scoped_ptr<reg_exp::RegularExpression> pattern_to_match( + reg_exp::CreateRegularExpression(it->pattern().c_str())); + if (pattern_to_match->Match(national_number.c_str(), true, NULL)) { + string formatting_pattern(it->format()); + if (number_format == PhoneNumberUtil::NATIONAL && + carrier_code.length() > 0 && + it->domestic_carrier_code_formatting_rule().length() > 0) { + // Replace the $CC in the formatting rule with the desired carrier code. + string carrier_code_formatting_rule = + it->domestic_carrier_code_formatting_rule(); + carrier_code_pattern->Replace(&carrier_code_formatting_rule, + false, carrier_code.c_str()); + TransformRegularExpressionToRE2Syntax(&carrier_code_formatting_rule); + first_group_capturing_pattern->Replace(&formatting_pattern, + false, + carrier_code_formatting_rule.c_str()); + } else { + // Use the national prefix formatting rule instead. + string national_prefix_formatting_rule = + it->national_prefix_formatting_rule(); + if (number_format == PhoneNumberUtil::NATIONAL && + national_prefix_formatting_rule.length() > 0) { + // Apply the national_prefix_formatting_rule as the formatting_pattern + // contains only information on how the national significant number + // should be formatted at this point. + TransformRegularExpressionToRE2Syntax( + &national_prefix_formatting_rule); + first_group_capturing_pattern->Replace(&formatting_pattern, + false, + national_prefix_formatting_rule.c_str()); + } + } + TransformRegularExpressionToRE2Syntax(&formatting_pattern); + formatted_number->assign(national_number); + pattern_to_match->Replace(formatted_number, true, + formatting_pattern.c_str()); + return; + } + } + // If no pattern above is matched, we format the number as a whole. + formatted_number->assign(national_number); +} + +// Simple wrapper of FormatAccordingToFormatsWithCarrier for the common case of +// no carrier code. +void FormatAccordingToFormats( + const string& number_for_leading_digits_match, + const RepeatedPtrField<NumberFormat>& available_formats, + PhoneNumberUtil::PhoneNumberFormat number_format, + const string& national_number, + string* formatted_number) { + DCHECK(formatted_number); + FormatAccordingToFormatsWithCarrier(number_for_leading_digits_match, + available_formats, number_format, + national_number, "", formatted_number); +} + +// Returns true when one national number is the suffix of the other or both are +// the same. +bool IsNationalNumberSuffixOfTheOther(const PhoneNumber& first_number, + const PhoneNumber& second_number) { + const string& first_number_national_number = + SimpleItoa(first_number.national_number()); + const string& second_number_national_number = + SimpleItoa(second_number.national_number()); + // Note that HasSuffixString returns true if the numbers are equal. + return HasSuffixString(first_number_national_number, + second_number_national_number) || + HasSuffixString(second_number_national_number, + first_number_national_number); +} + +bool IsNumberMatchingDesc(const string& national_number, + const PhoneNumberDesc& number_desc) { + scoped_ptr<const reg_exp::RegularExpression> + possible_pattern(reg_exp::CreateRegularExpression( + number_desc.possible_number_pattern().c_str())); + scoped_ptr<const reg_exp::RegularExpression> + national_pattern(reg_exp::CreateRegularExpression( + number_desc.national_number_pattern().c_str())); + return (possible_pattern->Match(national_number.c_str(), true, NULL) && + national_pattern->Match(national_number.c_str(), true, NULL)); +} + +PhoneNumberUtil::PhoneNumberType GetNumberTypeHelper( + const string& national_number, const PhoneMetadata& metadata) { + const PhoneNumberDesc& general_desc = metadata.general_desc(); + if (!general_desc.has_national_number_pattern() || + !IsNumberMatchingDesc(national_number, general_desc)) { + logger->Debug("Number type unknown - " + "doesn't match general national number pattern."); + return PhoneNumberUtil::UNKNOWN; + } + if (IsNumberMatchingDesc(national_number, metadata.premium_rate())) { + logger->Debug("Number is a premium number."); + return PhoneNumberUtil::PREMIUM_RATE; + } + if (IsNumberMatchingDesc(national_number, metadata.toll_free())) { + logger->Debug("Number is a toll-free number."); + return PhoneNumberUtil::TOLL_FREE; + } + if (IsNumberMatchingDesc(national_number, metadata.shared_cost())) { + logger->Debug("Number is a shared cost number."); + return PhoneNumberUtil::SHARED_COST; + } + if (IsNumberMatchingDesc(national_number, metadata.voip())) { + logger->Debug("Number is a VOIP (Voice over IP) number."); + return PhoneNumberUtil::VOIP; + } + if (IsNumberMatchingDesc(national_number, metadata.personal_number())) { + logger->Debug("Number is a personal number."); + return PhoneNumberUtil::PERSONAL_NUMBER; + } + if (IsNumberMatchingDesc(national_number, metadata.pager())) { + logger->Debug("Number is a pager number."); + return PhoneNumberUtil::PAGER; + } + if (IsNumberMatchingDesc(national_number, metadata.uan())) { + logger->Debug("Number is a UAN."); + return PhoneNumberUtil::UAN; + } + + bool is_fixed_line = + IsNumberMatchingDesc(national_number, metadata.fixed_line()); + if (is_fixed_line) { + if (metadata.same_mobile_and_fixed_line_pattern()) { + logger->Debug("Fixed-line and mobile patterns equal, " + "number is fixed-line or mobile"); + return PhoneNumberUtil::FIXED_LINE_OR_MOBILE; + } else if (IsNumberMatchingDesc(national_number, metadata.mobile())) { + logger->Debug("Fixed-line and mobile patterns differ, but number is " + "still fixed-line or mobile"); + return PhoneNumberUtil::FIXED_LINE_OR_MOBILE; + } + logger->Debug("Number is a fixed line number."); + return PhoneNumberUtil::FIXED_LINE; + } + // Otherwise, test to see if the number is mobile. Only do this if certain + // that the patterns for mobile and fixed line aren't the same. + if (!metadata.same_mobile_and_fixed_line_pattern() && + IsNumberMatchingDesc(national_number, metadata.mobile())) { + logger->Debug("Number is a mobile number."); + return PhoneNumberUtil::MOBILE; + } + logger->Debug("Number type unknown - doesn't match any specific number type" + " pattern."); + return PhoneNumberUtil::UNKNOWN; +} + +int DecodeUTF8Char(const char* in, char32* out) { + Rune r; + int len = chartorune(&r, in); + *out = r; + + return len; +} + +char32 ToUnicodeCodepoint(const char* unicode_char) { + char32 codepoint; + DecodeUTF8Char(unicode_char, &codepoint); + + return codepoint; +} + +// Initialisation helper function used to populate the regular expressions in a +// defined order. +void CreateRegularExpressions() { + unique_international_prefix.reset( + reg_exp::CreateRegularExpression("[\\d]+(?:[~⁓∼~][\\d]+)?")); + first_group_capturing_pattern.reset( + reg_exp::CreateRegularExpression("(\\$1)")); + carrier_code_pattern.reset( + reg_exp::CreateRegularExpression("\\$CC")); + capturing_digit_pattern.reset( + reg_exp::CreateRegularExpression( + StrCat("([", kValidDigits, "])").c_str())); + capturing_ascii_digits_pattern.reset( + reg_exp::CreateRegularExpression("(\\d+)")); + valid_start_char.reset(new string(StrCat( + "[", kPlusChars, kValidDigits, "]"))); + valid_start_char_pattern.reset( + reg_exp::CreateRegularExpression(valid_start_char->c_str())); + capture_up_to_second_number_start_pattern.reset( + reg_exp::CreateRegularExpression(kCaptureUpToSecondNumberStart)); + unwanted_end_char_pattern.reset( + reg_exp::CreateRegularExpression(kUnwantedEndChar)); + valid_phone_number.reset(new string( + StrCat("[", kPlusChars, "]*(?:[", kValidPunctuation, "]*[", kValidDigits, + "]){3,}[", kValidAlpha, kValidPunctuation, kValidDigits, "]*"))); + // Canonical-equivalence doesn't seem to be an option with RE2, so we allow + // two options for representing the ó - the character itself, and one in the + // unicode decomposed form with the combining acute accent. Note that there + // are currently three capturing groups for the extension itself - if this + // number is changed, MaybeStripExtension needs to be updated. + const string capturing_extn_digits = StrCat("([", kValidDigits, "]{1,7})"); + known_extn_patterns.reset(new string( + StrCat(kRfc3966ExtnPrefix, capturing_extn_digits, "|" + "[ \\t,]*(?:ext(?:ensi(?:ó?|ó))?n?|extn?|[,xx##~~]|" + "int|int|anexo)" + "[:\\..]?[ \\t,-]*", capturing_extn_digits, "#?|" + "[- ]+([", kValidDigits, "]{1,5})#"))); + extn_pattern.reset(reg_exp::CreateRegularExpression( + StrCat("(?i)(?:", *known_extn_patterns, ")$").c_str())); + valid_phone_number_pattern.reset(reg_exp::CreateRegularExpression( + StrCat("(?i)", *valid_phone_number, "(?:", *known_extn_patterns, + ")?").c_str())); + valid_alpha_phone_pattern.reset(reg_exp::CreateRegularExpression( + StrCat("(?i)(?:.*?[", kValidAlpha, "]){3}").c_str())); + plus_chars_pattern.reset(reg_exp::CreateRegularExpression( + StrCat("[", kPlusChars, "]+").c_str())); +} + +void InitializeStaticMapsAndSets() { + // Create global objects. + all_plus_number_grouping_symbols.reset(new map<char32, char>); + alpha_mappings.reset(new map<char32, char>); + all_normalization_mappings.reset(new map<char32, char>); + + // Punctuation that we wish to respect in alpha numbers, as they show number + // groupings are mapped here. + all_plus_number_grouping_symbols->insert( + make_pair(ToUnicodeCodepoint("-"), '-')); + all_plus_number_grouping_symbols->insert( + make_pair(ToUnicodeCodepoint("-"), '-')); + all_plus_number_grouping_symbols->insert( + make_pair(ToUnicodeCodepoint("‐"), '-')); + all_plus_number_grouping_symbols->insert( + make_pair(ToUnicodeCodepoint("‑"), '-')); + all_plus_number_grouping_symbols->insert( + make_pair(ToUnicodeCodepoint("‒"), '-')); + all_plus_number_grouping_symbols->insert( + make_pair(ToUnicodeCodepoint("–"), '-')); + all_plus_number_grouping_symbols->insert( + make_pair(ToUnicodeCodepoint("—"), '-')); + all_plus_number_grouping_symbols->insert( + make_pair(ToUnicodeCodepoint("―"), '-')); + all_plus_number_grouping_symbols->insert( + make_pair(ToUnicodeCodepoint("−"), '-')); + all_plus_number_grouping_symbols->insert( + make_pair(ToUnicodeCodepoint("/"), '/')); + all_plus_number_grouping_symbols->insert( + make_pair(ToUnicodeCodepoint("/"), '/')); + all_plus_number_grouping_symbols->insert( + make_pair(ToUnicodeCodepoint(" "), ' ')); + all_plus_number_grouping_symbols->insert( + make_pair(ToUnicodeCodepoint(" "), ' ')); + all_plus_number_grouping_symbols->insert( + make_pair(ToUnicodeCodepoint(""), ' ')); + all_plus_number_grouping_symbols->insert( + make_pair(ToUnicodeCodepoint("."), '.')); + all_plus_number_grouping_symbols->insert( + make_pair(ToUnicodeCodepoint("."), '.')); + // Only the upper-case letters are added here - the lower-case versions are + // added programmatically. + alpha_mappings->insert(make_pair(ToUnicodeCodepoint("A"), '2')); + alpha_mappings->insert(make_pair(ToUnicodeCodepoint("B"), '2')); + alpha_mappings->insert(make_pair(ToUnicodeCodepoint("C"), '2')); + alpha_mappings->insert(make_pair(ToUnicodeCodepoint("D"), '3')); + alpha_mappings->insert(make_pair(ToUnicodeCodepoint("E"), '3')); + alpha_mappings->insert(make_pair(ToUnicodeCodepoint("F"), '3')); + alpha_mappings->insert(make_pair(ToUnicodeCodepoint("G"), '4')); + alpha_mappings->insert(make_pair(ToUnicodeCodepoint("H"), '4')); + alpha_mappings->insert(make_pair(ToUnicodeCodepoint("I"), '4')); + alpha_mappings->insert(make_pair(ToUnicodeCodepoint("J"), '5')); + alpha_mappings->insert(make_pair(ToUnicodeCodepoint("K"), '5')); + alpha_mappings->insert(make_pair(ToUnicodeCodepoint("L"), '5')); + alpha_mappings->insert(make_pair(ToUnicodeCodepoint("M"), '6')); + alpha_mappings->insert(make_pair(ToUnicodeCodepoint("N"), '6')); + alpha_mappings->insert(make_pair(ToUnicodeCodepoint("O"), '6')); + alpha_mappings->insert(make_pair(ToUnicodeCodepoint("P"), '7')); + alpha_mappings->insert(make_pair(ToUnicodeCodepoint("Q"), '7')); + alpha_mappings->insert(make_pair(ToUnicodeCodepoint("R"), '7')); + alpha_mappings->insert(make_pair(ToUnicodeCodepoint("S"), '7')); + alpha_mappings->insert(make_pair(ToUnicodeCodepoint("T"), '8')); + alpha_mappings->insert(make_pair(ToUnicodeCodepoint("U"), '8')); + alpha_mappings->insert(make_pair(ToUnicodeCodepoint("V"), '8')); + alpha_mappings->insert(make_pair(ToUnicodeCodepoint("W"), '9')); + alpha_mappings->insert(make_pair(ToUnicodeCodepoint("X"), '9')); + alpha_mappings->insert(make_pair(ToUnicodeCodepoint("Y"), '9')); + alpha_mappings->insert(make_pair(ToUnicodeCodepoint("Z"), '9')); + map<char32, char> lower_case_mappings; + map<char32, char> alpha_letters; + for (map<char32, char>::const_iterator it = alpha_mappings->begin(); + it != alpha_mappings->end(); + ++it) { + // Convert all the upper-case ASCII letters to lower-case. + if (it->first < 128) { + char letter_as_upper = static_cast<char>(it->first); + char32 letter_as_lower = static_cast<char32>(tolower(letter_as_upper)); + lower_case_mappings.insert(make_pair(letter_as_lower, it->second)); + // Add the letters in both variants to the alpha_letters map. This just + // pairs each letter with its upper-case representation so that it can be + // retained when normalising alpha numbers. + alpha_letters.insert(make_pair(letter_as_lower, letter_as_upper)); + alpha_letters.insert(make_pair(it->first, letter_as_upper)); + } + } + // In the Java version we don't insert the lower-case mappings in the map, + // because we convert to upper case on the fly. Doing this here would involve + // pulling in all of ICU, which we don't want to do if we don't have to. + alpha_mappings->insert(lower_case_mappings.begin(), + lower_case_mappings.end()); + all_normalization_mappings->insert(alpha_mappings->begin(), + alpha_mappings->end()); + all_plus_number_grouping_symbols->insert(alpha_letters.begin(), + alpha_letters.end()); + // Add the ASCII digits so that they don't get deleted by NormalizeHelper(). + for (char c = '0'; c <= '9'; ++c) { + all_normalization_mappings->insert(make_pair(c, c)); + all_plus_number_grouping_symbols->insert(make_pair(c, c)); + } + CreateRegularExpressions(); +} + +// Normalizes a string of characters representing a phone number by replacing +// all characters found in the accompanying map with the values therein, and +// stripping all other characters if remove_non_matches is true. +// Parameters: +// number - a pointer to a string of characters representing a phone number to +// be normalized. +// normalization_replacements - a mapping of characters to what they should be +// replaced by in the normalized version of the phone number +// remove_non_matches - indicates whether characters that are not able to be +// replaced should be stripped from the number. If this is false, they will be +// left unchanged in the number. +void NormalizeHelper(const map<char32, char>& normalization_replacements, + bool remove_non_matches, + string* number) { + DCHECK(number); + UnicodeText number_as_unicode; + number_as_unicode.PointToUTF8(number->data(), number->size()); + string normalized_number; + for (UnicodeText::const_iterator it = number_as_unicode.begin(); + it != number_as_unicode.end(); + ++it) { + map<char32, char>::const_iterator found_glyph_pair = + normalization_replacements.find(*it); + if (found_glyph_pair != normalization_replacements.end()) { + normalized_number.push_back(found_glyph_pair->second); + } else if (!remove_non_matches) { + normalized_number.append(it.utf8_data()); + } + // If neither of the above are true, we remove this character. + } + number->assign(normalized_number); +} + +// Strips the IDD from the start of the number if present. Helper function used +// by MaybeStripInternationalPrefixAndNormalize. +bool ParsePrefixAsIdd(const reg_exp::RegularExpression* idd_pattern, + string* number) { + DCHECK(number); + scoped_ptr<reg_exp::RegularExpressionInput> number_copy( + reg_exp::CreateRegularExpressionInput(number->c_str())); + // First attempt to strip the idd_pattern at the start, if present. We make a + // copy so that we can revert to the original string if necessary. + if (idd_pattern->Consume(number_copy.get(), true, NULL, NULL)) { + // Only strip this if the first digit after the match is not a 0, since + // country calling codes cannot begin with 0. + string extracted_digit; + if (capturing_digit_pattern->Match(number_copy->ToString().c_str(), false, + &extracted_digit)) { + PhoneNumberUtil::NormalizeDigitsOnly(&extracted_digit); + if (extracted_digit == "0") { + return false; + } + } + number->assign(number_copy->ToString()); + return true; + } + return false; +} + +PhoneNumberUtil::ValidationResult TestNumberLengthAgainstPattern( + const reg_exp::RegularExpression* number_pattern, const string& number) { + string extracted_number; + if (number_pattern->Match(number.c_str(), true, &extracted_number)) { + return PhoneNumberUtil::IS_POSSIBLE; + } + if (number_pattern->Match(number.c_str(), false, &extracted_number)) { + return PhoneNumberUtil::TOO_LONG; + } else { + return PhoneNumberUtil::TOO_SHORT; + } +} + +} // namespace + +// Fetch the metadata which are actually already available in the address space +// (embedded). +class DefaultMetadataProvider : public PhoneNumberUtil::MetadataProvider { + public: + virtual ~DefaultMetadataProvider() {} + + virtual pair<const void*, unsigned> operator()() { + return make_pair(metadata_get(), metadata_size()); + } +}; + +bool PhoneNumberUtil::LoadMetadata(PhoneMetadataCollection* metadata, + MetadataProvider& provider) { + + pair<const void*, unsigned> p = provider(); + const void* metadata_start = p.first; + unsigned size = p.second; + + if (!metadata->ParseFromArray(metadata_start, size)) { + cerr << "Could not parse binary data." << endl; + return false; + } + return true; +} + +void PhoneNumberUtil::SetLoggerAdapter(LoggerAdapter* logger_adapter) { + logger.reset(logger_adapter); +} + +// Private constructor. Also takes care of initialisation. +PhoneNumberUtil::PhoneNumberUtil(MetadataProvider* provider) + : country_calling_code_to_region_code_map_(new vector<IntRegionsPair>()), + nanpa_regions_(new set<string>()), + region_to_metadata_map_(new map<string, PhoneMetadata>()) { + + if (logger == NULL) { + SetLoggerAdapter(new DefaultLogger()); + } + PhoneMetadataCollection metadata_collection; + DefaultMetadataProvider default_provider; + + if (!LoadMetadata(&metadata_collection, provider ? *provider + : default_provider)) { + logger->Fatal("Could not load metadata"); + return; + } + // Storing data in a temporary map to make it easier to find other regions + // that share a country calling code when inserting data. + map<int, list<string>* > country_calling_code_to_region_map; + for (RepeatedPtrField<PhoneMetadata>::const_iterator it = + metadata_collection.metadata().begin(); + it != metadata_collection.metadata().end(); + ++it) { + const PhoneMetadata& phone_metadata = *it; + const string& region_code = phone_metadata.id(); + region_to_metadata_map_->insert(make_pair(region_code, *it)); + int country_calling_code = it->country_code(); + map<int, list<string>*>::iterator calling_code_in_map = + country_calling_code_to_region_map.find(country_calling_code); + if (calling_code_in_map != country_calling_code_to_region_map.end()) { + if (it->main_country_for_code()) { + calling_code_in_map->second->push_front(region_code); + } else { + calling_code_in_map->second->push_back(region_code); + } + } else { + // For most country calling codes, there will be only one region code. + list<string>* list_with_region_code = new list<string>(); + list_with_region_code->push_back(region_code); + country_calling_code_to_region_map.insert( + make_pair(country_calling_code, list_with_region_code)); + } + if (country_calling_code == kNanpaCountryCode) { + nanpa_regions_->insert(region_code); + } + } + + country_calling_code_to_region_code_map_->insert( + country_calling_code_to_region_code_map_->begin(), + country_calling_code_to_region_map.begin(), + country_calling_code_to_region_map.end()); + // Sort all the pairs in ascending order according to country calling code. + sort(country_calling_code_to_region_code_map_->begin(), + country_calling_code_to_region_code_map_->end(), + CompareFirst()); + + InitializeStaticMapsAndSets(); +} + +PhoneNumberUtil::~PhoneNumberUtil() { + for (vector<IntRegionsPair>::const_iterator it = + country_calling_code_to_region_code_map_->begin(); + it != country_calling_code_to_region_code_map_->end(); + ++it) { + delete it->second; + } +} + +// Public wrapper function to get a PhoneNumberUtil instance with the default +// metadata file. +// static +PhoneNumberUtil* PhoneNumberUtil::GetInstance() { + return Singleton<PhoneNumberUtil>::get(); +} + +void PhoneNumberUtil::GetSupportedRegions(set<string>* regions) const { + DCHECK(regions); + for (map<string, PhoneMetadata>::const_iterator it = + region_to_metadata_map_->begin(); it != region_to_metadata_map_->end(); + ++it) { + regions->insert(it->first); + } +} + +void PhoneNumberUtil::GetNddPrefixForRegion(const string& region_code, + bool strip_non_digits, + string* national_prefix) const { + DCHECK(national_prefix); + if (!IsValidRegionCode(region_code)) { + logger->Error("Invalid region code provided."); + return; + } + const PhoneMetadata* metadata = GetMetadataForRegion(region_code); + national_prefix->assign(metadata->national_prefix()); + if (strip_non_digits) { + // Note: if any other non-numeric symbols are ever used in national + // prefixes, these would have to be removed here as well. + strrmm(national_prefix, "~"); + } +} + +bool PhoneNumberUtil::IsValidRegionCode(const string& region_code) const { + return (region_to_metadata_map_->find(region_code) != + region_to_metadata_map_->end()); +} + +bool PhoneNumberUtil::HasValidRegionCode(const string& region_code, + int country_code, + const string& number) const { + if (!IsValidRegionCode(region_code)) { + logger->Info(string("Number ") + number + + " has invalid or missing country code (" + country_code + ")"); + return false; + } + return true; +} + +// Returns a pointer to the phone metadata for the appropriate region. +const PhoneMetadata* PhoneNumberUtil::GetMetadataForRegion( + const string& region_code) const { + map<string, PhoneMetadata>::const_iterator it = + region_to_metadata_map_->find(region_code); + if (it != region_to_metadata_map_->end()) { + return &it->second; + } + return NULL; +} + +void PhoneNumberUtil::Format(const PhoneNumber& number, + PhoneNumberFormat number_format, + string* formatted_number) const { + DCHECK(formatted_number); + int country_calling_code = number.country_code(); + string national_significant_number; + GetNationalSignificantNumber(number, &national_significant_number); + if (number_format == E164) { + // Early exit for E164 case since no formatting of the national number needs + // to be applied. Extensions are not formatted. + FormatNumberByFormat(country_calling_code, E164, + national_significant_number, "", formatted_number); + return; + } + // Note here that all NANPA formatting rules are contained by US, so we use + // that to format NANPA numbers. The same applies to Russian Fed regions - + // rules are contained by Russia. French Indian Ocean country rules are + // contained by Réunion. + string region_code; + GetRegionCodeForCountryCode(country_calling_code, ®ion_code); + if (!HasValidRegionCode(region_code, country_calling_code, + national_significant_number)) { + formatted_number->assign(national_significant_number); + return; + } + string formatted_extension; + MaybeGetFormattedExtension(number, region_code, number_format, + &formatted_extension); + string formatted_national_number; + FormatNationalNumber(national_significant_number, region_code, number_format, + &formatted_national_number); + FormatNumberByFormat(country_calling_code, number_format, + formatted_national_number, + formatted_extension, formatted_number); +} + +void PhoneNumberUtil::FormatByPattern( + const PhoneNumber& number, + PhoneNumberFormat number_format, + const RepeatedPtrField<NumberFormat>& user_defined_formats, + string* formatted_number) const { + static scoped_ptr<const reg_exp::RegularExpression> + national_prefix_pattern(reg_exp::CreateRegularExpression("\\$NP")); + static scoped_ptr<const reg_exp::RegularExpression> + first_group_pattern(reg_exp::CreateRegularExpression("\\$FG")); + DCHECK(formatted_number); + int country_calling_code = number.country_code(); + // Note GetRegionCodeForCountryCode() is used because formatting information + // for regions which share a country calling code is contained by only one + // region for performance reasons. For example, for NANPA regions it will be + // contained in the metadata for US. + string region_code; + GetRegionCodeForCountryCode(country_calling_code, ®ion_code); + string national_significant_number; + GetNationalSignificantNumber(number, &national_significant_number); + if (!HasValidRegionCode(region_code, country_calling_code, + national_significant_number)) { + formatted_number->assign(national_significant_number); + return; + } + RepeatedPtrField<NumberFormat> user_defined_formats_copy; + for (RepeatedPtrField<NumberFormat>::const_iterator it = + user_defined_formats.begin(); + it != user_defined_formats.end(); + ++it) { + string national_prefix_formatting_rule( + it->national_prefix_formatting_rule()); + if (!national_prefix_formatting_rule.empty()) { + const string& national_prefix = + GetMetadataForRegion(region_code)->national_prefix(); + NumberFormat* num_format_copy = user_defined_formats_copy.Add(); + num_format_copy->MergeFrom(*it); + if (!national_prefix.empty()) { + // Replace $NP with national prefix and $FG with the first group ($1). + national_prefix_pattern->Replace(&national_prefix_formatting_rule, + false, + national_prefix.c_str()); + first_group_pattern->Replace(&national_prefix_formatting_rule, + false, + "$1"); + num_format_copy->set_national_prefix_formatting_rule( + national_prefix_formatting_rule); + } else { + // We don't want to have a rule for how to format the national prefix if + // there isn't one. + num_format_copy->clear_national_prefix_formatting_rule(); + } + } else { + user_defined_formats_copy.Add()->MergeFrom(*it); + } + } + + string formatted_number_without_extension; + FormatAccordingToFormats(national_significant_number, + user_defined_formats_copy, + number_format, national_significant_number, + &formatted_number_without_extension); + string formatted_extension; + MaybeGetFormattedExtension(number, region_code, NATIONAL, + &formatted_extension); + FormatNumberByFormat(country_calling_code, number_format, + formatted_number_without_extension, formatted_extension, + formatted_number); +} + +void PhoneNumberUtil::FormatNationalNumberWithCarrierCode( + const PhoneNumber& number, + const string& carrier_code, + string* formatted_number) const { + int country_calling_code = number.country_code(); + string national_significant_number; + GetNationalSignificantNumber(number, &national_significant_number); + // Note GetRegionCodeForCountryCode() is used because formatting information + // for regions which share a country calling code is contained by only one + // region for performance reasons. For example, for NANPA regions it will be + // contained in the metadata for US. + string region_code; + GetRegionCodeForCountryCode(country_calling_code, ®ion_code); + if (!HasValidRegionCode(region_code, country_calling_code, + national_significant_number)) { + formatted_number->assign(national_significant_number); + } + string formatted_extension; + MaybeGetFormattedExtension(number, region_code, NATIONAL, + &formatted_extension); + string formatted_national_number; + FormatNationalNumberWithCarrier(national_significant_number, region_code, + NATIONAL, carrier_code, + &formatted_national_number); + FormatNumberByFormat(country_calling_code, NATIONAL, + formatted_national_number, formatted_extension, + formatted_number); +} + +void PhoneNumberUtil::FormatNationalNumberWithPreferredCarrierCode( + const PhoneNumber& number, + const string& fallback_carrier_code, + string* formatted_number) const { + FormatNationalNumberWithCarrierCode( + number, + number.has_preferred_domestic_carrier_code() + ? number.preferred_domestic_carrier_code() + : fallback_carrier_code, + formatted_number); +} + +void PhoneNumberUtil::FormatOutOfCountryCallingNumber( + const PhoneNumber& number, + const string& calling_from, + string* formatted_number) const { + DCHECK(formatted_number); + if (!IsValidRegionCode(calling_from)) { + logger->Info("Trying to format number from invalid region. International" + " formatting applied."); + Format(number, INTERNATIONAL, formatted_number); + return; + } + int country_code = number.country_code(); + string region_code; + GetRegionCodeForCountryCode(country_code, ®ion_code); + string national_significant_number; + GetNationalSignificantNumber(number, &national_significant_number); + if (!HasValidRegionCode(region_code, country_code, + national_significant_number)) { + formatted_number->assign(national_significant_number); + return; + } + if (country_code == kNanpaCountryCode) { + if (IsNANPACountry(calling_from)) { + // For NANPA regions, return the national format for these regions but + // prefix it with the country calling code. + string national_number; + Format(number, NATIONAL, &national_number); + formatted_number->assign(StrCat(country_code, " ", national_number)); + return; + } + } else if (country_code == GetCountryCodeForRegion(calling_from)) { + // If neither region is a NANPA region, then we check to see if the + // country calling code of the number and the country calling code of the + // region we are calling from are the same. + // For regions that share a country calling code, the country calling code + // need not be dialled. This also applies when dialling within a region, so + // this if clause covers both these cases. + // Technically this is the case for dialling from la Réunion to other + // overseas departments of France (French Guiana, Martinique, Guadeloupe), + // but not vice versa - so we don't cover this edge case for now and for + // those cases return the version including country calling code. + // Details here: + // http://www.petitfute.com/voyage/225-info-pratiques-reunion + Format(number, NATIONAL, formatted_number); + return; + } + string formatted_national_number; + FormatNationalNumber(national_significant_number, region_code, INTERNATIONAL, + &formatted_national_number); + const PhoneMetadata* metadata = GetMetadataForRegion(calling_from); + const string& international_prefix = metadata->international_prefix(); + string formatted_extension; + MaybeGetFormattedExtension(number, region_code, INTERNATIONAL, + &formatted_extension); + // For regions that have multiple international prefixes, the international + // format of the number is returned, unless there is a preferred international + // prefix. + string international_prefix_for_formatting( + unique_international_prefix->Match(international_prefix.c_str(), + true, NULL) + ? international_prefix + : metadata->preferred_international_prefix()); + if (!international_prefix_for_formatting.empty()) { + formatted_number->assign( + StrCat(international_prefix_for_formatting, " ", country_code, " ", + formatted_national_number, formatted_extension)); + } else { + FormatNumberByFormat(country_code, INTERNATIONAL, formatted_national_number, + formatted_extension, formatted_number); + } +} + +void PhoneNumberUtil::FormatInOriginalFormat(const PhoneNumber& number, + const string& region_calling_from, + string* formatted_number) const { + DCHECK(formatted_number); + + if (!number.has_country_code_source()) { + Format(number, NATIONAL, formatted_number); + return; + } + switch (number.country_code_source()) { + case PhoneNumber::FROM_NUMBER_WITH_PLUS_SIGN: + Format(number, INTERNATIONAL, formatted_number); + return; + case PhoneNumber::FROM_NUMBER_WITH_IDD: + FormatOutOfCountryCallingNumber(number, region_calling_from, + formatted_number); + return; + case PhoneNumber::FROM_NUMBER_WITHOUT_PLUS_SIGN: + Format(number, INTERNATIONAL, formatted_number); + formatted_number->erase(formatted_number->begin()); + return; + case PhoneNumber::FROM_DEFAULT_COUNTRY: + default: + Format(number, NATIONAL, formatted_number); + } +} + +void PhoneNumberUtil::FormatOutOfCountryKeepingAlphaChars( + const PhoneNumber& number, + const string& calling_from, + string* formatted_number) const { + // If there is no raw input, then we can't keep alpha characters because there + // aren't any. In this case, we return FormatOutOfCountryCallingNumber. + if (number.raw_input().empty()) { + FormatOutOfCountryCallingNumber(number, calling_from, formatted_number); + return; + } + string region_code; + GetRegionCodeForCountryCode(number.country_code(), ®ion_code); + if (!HasValidRegionCode(region_code, number.country_code(), + number.raw_input())) { + formatted_number->assign(number.raw_input()); + return; + } + // Strip any prefix such as country calling code, IDD, that was present. We do + // this by comparing the number in raw_input with the parsed number. + string raw_input_copy(number.raw_input()); + // Normalize punctuation. We retain number grouping symbols such as " " only. + NormalizeHelper(*all_plus_number_grouping_symbols, true, &raw_input_copy); + // Now we trim everything before the first three digits in the parsed number. + // We choose three because all valid alpha numbers have 3 digits at the start + // - if it does not, then we don't trim anything at all. Similarly, if the + // national number was less than three digits, we don't trim anything at all. + string national_number; + GetNationalSignificantNumber(number, &national_number); + if (national_number.length() > 3) { + size_t first_national_number_digit = + raw_input_copy.find(national_number.substr(0, 3)); + if (first_national_number_digit != string::npos) { + raw_input_copy = raw_input_copy.substr(first_national_number_digit); + } + } + const PhoneMetadata* metadata = GetMetadataForRegion(calling_from); + if (number.country_code() == kNanpaCountryCode) { + if (IsNANPACountry(calling_from)) { + formatted_number->assign(StrCat(number.country_code(), " ", + raw_input_copy)); + return; + } + } else if (number.country_code() == GetCountryCodeForRegion(calling_from)) { + // Here we copy the formatting rules so we can modify the pattern we expect + // to match against. + RepeatedPtrField<NumberFormat> available_formats = metadata->number_format(); + for (RepeatedPtrField<NumberFormat>::iterator + it = available_formats.begin(); it != available_formats.end(); ++it) { + // The first group is the first group of digits that the user determined. + it->set_pattern("(\\d+)(.*)"); + // Here we just concatenate them back together after the national prefix + // has been fixed. + it->set_format("$1$2"); + } + // Now we format using these patterns instead of the default pattern, but + // with the national prefix prefixed if necessary, by choosing the format + // rule based on the leading digits present in the unformatted national + // number. + // This will not work in the cases where the pattern (and not the + // leading digits) decide whether a national prefix needs to be used, since + // we have overridden the pattern to match anything, but that is not the + // case in the metadata to date. + FormatAccordingToFormats(national_number, available_formats, + NATIONAL, raw_input_copy, formatted_number); + return; + } + + const string& international_prefix = metadata->international_prefix(); + // For regions that have multiple international prefixes, the international + // format of the number is returned, unless there is a preferred international + // prefix. + string international_prefix_for_formatting( + unique_international_prefix->Match(international_prefix.c_str(), + true, NULL) + ? international_prefix + : metadata->preferred_international_prefix()); + if (!international_prefix_for_formatting.empty()) { + formatted_number->assign( + StrCat(international_prefix_for_formatting, " ", number.country_code(), + " ", raw_input_copy)); + } else { + FormatNumberByFormat(number.country_code(), INTERNATIONAL, raw_input_copy, + "", formatted_number); + } +} + +void PhoneNumberUtil::FormatNationalNumber( + const string& number, + const string& region_code, + PhoneNumberFormat number_format, + string* formatted_number) const { + DCHECK(formatted_number); + FormatNationalNumberWithCarrier(number, region_code, number_format, "", + formatted_number); +} + +// Note in some regions, the national number can be written in two completely +// different ways depending on whether it forms part of the NATIONAL format or +// INTERNATIONAL format. The number_format parameter here is used to specify +// which format to use for those cases. If a carrier_code is specified, this +// will be inserted into the formatted string to replace $CC. +void PhoneNumberUtil::FormatNationalNumberWithCarrier( + const string& number, + const string& region_code, + PhoneNumberFormat number_format, + const string& carrier_code, + string* formatted_number) const { + DCHECK(formatted_number); + const PhoneMetadata* metadata = GetMetadataForRegion(region_code); + // When the intl_number_formats exists, we use that to format national number + // for the INTERNATIONAL format instead of using the number_formats. + const RepeatedPtrField<NumberFormat> available_formats = + (metadata->intl_number_format_size() == 0 || number_format == NATIONAL) + ? metadata->number_format() + : metadata->intl_number_format(); + FormatAccordingToFormatsWithCarrier(number, available_formats, number_format, + number, carrier_code, formatted_number); + if (number_format == RFC3966) { + // Replace all separators with a "-". + scoped_ptr<const reg_exp::RegularExpression> separator_pattern( + reg_exp::CreateRegularExpression( + StrCat("[", kValidPunctuation, "]+").c_str())); + separator_pattern->Replace(formatted_number, true, "-"); + } +} + +// Gets the formatted extension of a phone number, if the phone number had an +// extension specified. If not, it returns an empty string. +void PhoneNumberUtil::MaybeGetFormattedExtension( + const PhoneNumber& number, + const string& region_code, + PhoneNumberFormat number_format, + string* extension) const { + DCHECK(extension); + if (!number.has_extension() || number.extension().length() == 0) { + extension->assign(""); + } else { + if (number_format == RFC3966) { + StrAppend(extension, kRfc3966ExtnPrefix, number.extension()); + return; + } + FormatExtension(number.extension(), region_code, extension); + } +} + +// Formats the extension part of the phone number by prefixing it with the +// appropriate extension prefix. This will be the default extension prefix, +// unless overridden by a preferred extension prefix for this region. +void PhoneNumberUtil::FormatExtension(const string& extension_digits, + const string& region_code, + string* extension) const { + DCHECK(extension); + const PhoneMetadata* metadata = GetMetadataForRegion(region_code); + if (metadata->has_preferred_extn_prefix()) { + extension->assign(StrCat(metadata->preferred_extn_prefix(), + extension_digits)); + } else { + extension->assign(StrCat(kDefaultExtnPrefix, extension_digits)); + } +} + +bool PhoneNumberUtil::IsNANPACountry(const string& region_code) const { + return nanpa_regions_->find(region_code) != nanpa_regions_->end(); +} + +// Returns the region codes that matches the specific country calling code. In +// the case of no region code being found, region_codes will be left empty. +void PhoneNumberUtil::GetRegionCodesForCountryCallingCode( + int country_calling_code, + list<string>* region_codes) const { + DCHECK(region_codes); + // Create a IntRegionsPair with the country_code passed in, and use it to + // locate the pair with the same country_code in the sorted vector. + IntRegionsPair target_pair; + target_pair.first = country_calling_code; + typedef vector<IntRegionsPair>::const_iterator ConstIterator; + pair<ConstIterator, ConstIterator> range = equal_range( + country_calling_code_to_region_code_map_->begin(), + country_calling_code_to_region_code_map_->end(), + target_pair, CompareFirst()); + if (range.first != range.second) { + region_codes->insert(region_codes->begin(), + range.first->second->begin(), + range.first->second->end()); + } +} + +// Returns the region code that matches the specific country calling code. In +// the case of no region code being found, ZZ will be returned. +void PhoneNumberUtil::GetRegionCodeForCountryCode( + int country_calling_code, + string* region_code) const { + DCHECK(region_code); + list<string> region_codes; + + GetRegionCodesForCountryCallingCode(country_calling_code, ®ion_codes); + *region_code = region_codes.size() != 0 ? region_codes.front() : "ZZ"; +} + +void PhoneNumberUtil::GetRegionCodeForNumber(const PhoneNumber& number, + string* region_code) const { + DCHECK(region_code); + int country_calling_code = number.country_code(); + list<string> region_codes; + GetRegionCodesForCountryCallingCode(country_calling_code, ®ion_codes); + if (region_codes.size() == 0) { + string number_string; + GetNationalSignificantNumber(number, &number_string); + logger->Warning(string("Missing/invalid country code (") + + SimpleItoa(country_calling_code) + ") for number " + number_string); + *region_code = "ZZ"; + return; + } + if (region_codes.size() == 1) { + *region_code = region_codes.front(); + } else { + GetRegionCodeForNumberFromRegionList(number, region_codes, region_code); + } +} + +void PhoneNumberUtil::GetRegionCodeForNumberFromRegionList( + const PhoneNumber& number, const list<string>& region_codes, + string* region_code) const { + DCHECK(region_code); + string national_number; + GetNationalSignificantNumber(number, &national_number); + for (list<string>::const_iterator it = region_codes.begin(); + it != region_codes.end(); ++it) { + const PhoneMetadata* metadata = GetMetadataForRegion(*it); + if (metadata->has_leading_digits()) { + scoped_ptr<reg_exp::RegularExpressionInput> number( + reg_exp::CreateRegularExpressionInput(national_number.c_str())); + if (number->ConsumeRegExp(metadata->leading_digits(), true, NULL, NULL)) { + *region_code = *it; + return; + } + } else if (GetNumberTypeHelper(national_number, *metadata) != UNKNOWN) { + *region_code = *it; + return; + } + } + *region_code = "ZZ"; +} + +int PhoneNumberUtil::GetCountryCodeForRegion(const string& region_code) const { + if (!IsValidRegionCode(region_code)) { + logger->Info("Invalid or unknown country code provided."); + return 0; + } + const PhoneMetadata* metadata = GetMetadataForRegion(region_code); + if (!metadata) { + logger->Error("Unsupported country code provided."); + return 0; + } + return metadata->country_code(); +} + +// Gets a valid fixed-line number for the specified region_code. Returns false +// if the country was unknown or if no number exists. +bool PhoneNumberUtil::GetExampleNumber(const string& region_code, + PhoneNumber* number) const { + DCHECK(number); + return GetExampleNumberForType(region_code, + FIXED_LINE, + number); +} + +// Gets a valid number for the specified region_code and type. Returns false if +// the country was unknown or if no number exists. +bool PhoneNumberUtil::GetExampleNumberForType( + const string& region_code, + PhoneNumberUtil::PhoneNumberType type, + PhoneNumber* number) const { + DCHECK(number); + const PhoneMetadata* region_metadata = GetMetadataForRegion(region_code); + const PhoneNumberDesc* description = + GetNumberDescByType(*region_metadata, type); + if (description && description->has_example_number()) { + return (Parse(description->example_number(), + region_code, + number) == NO_PARSING_ERROR); + } + return false; +} + +PhoneNumberUtil::ErrorType PhoneNumberUtil::Parse(const string& number_to_parse, + const string& default_region, + PhoneNumber* number) const { + DCHECK(number); + return ParseHelper(number_to_parse, default_region, false, true, number); +} + +PhoneNumberUtil::ErrorType PhoneNumberUtil::ParseAndKeepRawInput( + const string& number_to_parse, + const string& default_region, + PhoneNumber* number) const { + DCHECK(number); + return ParseHelper(number_to_parse, default_region, true, true, number); +} + +// Checks to see that the region code used is valid, or if it is not valid, that +// the number to parse starts with a + symbol so that we can attempt to infer +// the country from the number. Returns false if it cannot use the region +// provided and the region cannot be inferred. +bool PhoneNumberUtil::CheckRegionForParsing( + const string& number_to_parse, + const string& default_region) const { + if (!IsValidRegionCode(default_region) && !number_to_parse.empty()) { + scoped_ptr<reg_exp::RegularExpressionInput> number_as_string_piece( + reg_exp::CreateRegularExpressionInput(number_to_parse.c_str())); + if (!plus_chars_pattern->Consume(number_as_string_piece.get(), + true, NULL, NULL)) { + return false; + } + } + return true; +} + +PhoneNumberUtil::ErrorType PhoneNumberUtil::ParseHelper( + const string& number_to_parse, + const string& default_region, + bool keep_raw_input, + bool check_region, + PhoneNumber* phone_number) const { + DCHECK(phone_number); + // Extract a possible number from the string passed in (this strips leading + // characters that could not be the start of a phone number.) + string national_number; + ExtractPossibleNumber(number_to_parse, &national_number); + if (!IsViablePhoneNumber(national_number)) { + logger->Debug("The string supplied did not seem to be a phone number."); + return NOT_A_NUMBER; + } + + if (check_region && + !CheckRegionForParsing(national_number, default_region)) { + logger->Info("Missing or invalid default country."); + return INVALID_COUNTRY_CODE_ERROR; + } + PhoneNumber temp_number; + if (keep_raw_input) { + temp_number.set_raw_input(number_to_parse); + } + // Attempt to parse extension first, since it doesn't require country-specific + // data and we want to have the non-normalised number here. + string extension; + MaybeStripExtension(&national_number, &extension); + if (!extension.empty()) { + temp_number.set_extension(extension); + } + const PhoneMetadata* country_metadata = GetMetadataForRegion(default_region); + // Check to see if the number is given in international format so we know + // whether this number is from the default country or not. + string normalized_national_number(national_number); + ErrorType country_code_error = + MaybeExtractCountryCode(country_metadata, keep_raw_input, + &normalized_national_number, &temp_number); + int country_code = temp_number.country_code(); + if (country_code_error != NO_PARSING_ERROR) { + return country_code_error; + } + if (country_code != 0) { + string phone_number_region; + GetRegionCodeForCountryCode(country_code, &phone_number_region); + if (phone_number_region != default_region) { + country_metadata = GetMetadataForRegion(phone_number_region); + } + } else if (country_metadata) { + // If no extracted country calling code, use the region supplied instead. + // Note that the national number was already normalized by + // MaybeExtractCountryCode. + country_code = country_metadata->country_code(); + } + if (normalized_national_number.length() < kMinLengthForNsn) { + logger->Debug("The string supplied is too short to be a phone number."); + return TOO_SHORT_NSN; + } + if (country_metadata) { + string* carrier_code = keep_raw_input ? + temp_number.mutable_preferred_domestic_carrier_code() : NULL; + MaybeStripNationalPrefixAndCarrierCode(*country_metadata, + &normalized_national_number, + carrier_code); + } + size_t normalized_national_number_length = + normalized_national_number.length(); + if (normalized_national_number_length < kMinLengthForNsn) { + logger->Debug("The string supplied is too short to be a phone number."); + return TOO_SHORT_NSN; + } + if (normalized_national_number_length > kMaxLengthForNsn) { + logger->Debug("The string supplied is too long to be a phone number."); + return TOO_LONG_NSN; + } + temp_number.set_country_code(country_code); + if (country_metadata && + country_metadata->leading_zero_possible() && + normalized_national_number[0] == '0') { + temp_number.set_italian_leading_zero(true); + } + uint64 number_as_int; + safe_strtou64(normalized_national_number, &number_as_int); + temp_number.set_national_number(number_as_int); + phone_number->MergeFrom(temp_number); + return NO_PARSING_ERROR; +} + +// Attempts to extract a possible number from the string passed in. This +// currently strips all leading characters that could not be used to start a +// phone number. Characters that can be used to start a phone number are +// defined in the valid_start_char_pattern. If none of these characters are +// found in the number passed in, an empty string is returned. This function +// also attempts to strip off any alternative extensions or endings if two or +// more are present, such as in the case of: (530) 583-6985 x302/x2303. The +// second extension here makes this actually two phone numbers, (530) 583-6985 +// x302 and (530) 583-6985 x2303. We remove the second extension so that the +// first number is parsed correctly. +// static +void PhoneNumberUtil::ExtractPossibleNumber(const string& number, + string* extracted_number) { + DCHECK(extracted_number); + + UnicodeText number_as_unicode; + number_as_unicode.PointToUTF8(number.data(), number.size()); + char current_char[5]; + int len; + UnicodeText::const_iterator it; + for (it = number_as_unicode.begin(); it != number_as_unicode.end(); ++it) { + len = it.get_utf8(current_char); + current_char[len] = '\0'; + if (valid_start_char_pattern->Match(current_char, true, NULL)) { + break; + } + } + + if (it == number_as_unicode.end()) { + // No valid start character was found. extracted_number should be set to + // empty string. + extracted_number->assign(""); + return; + } + + UnicodeText::const_reverse_iterator reverse_it(number_as_unicode.end()); + for (; reverse_it.base() != it; ++reverse_it) { + len = reverse_it.get_utf8(current_char); + current_char[len] = '\0'; + if (!unwanted_end_char_pattern->Match(current_char, true, NULL)) { + break; + } + } + + if (reverse_it.base() == it) { + extracted_number->assign(""); + return; + } + + extracted_number->assign(UnicodeText::UTF8Substring(it, reverse_it.base())); + + logger->Debug("After stripping starting and trailing characters," + " left with: " + *extracted_number); + + // Now remove any extra numbers at the end. + capture_up_to_second_number_start_pattern->Match(extracted_number->c_str(), + false, + extracted_number); +} + +bool PhoneNumberUtil::IsPossibleNumber(const PhoneNumber& number) const { + return IsPossibleNumberWithReason(number) == IS_POSSIBLE; +} + +bool PhoneNumberUtil::IsPossibleNumberForString( + const string& number, + const string& region_dialing_from) const { + PhoneNumber number_proto; + if (Parse(number, region_dialing_from, &number_proto) == NO_PARSING_ERROR) { + return IsPossibleNumber(number_proto); + } else { + return false; + } +} + +PhoneNumberUtil::ValidationResult PhoneNumberUtil::IsPossibleNumberWithReason( + const PhoneNumber& number) const { + string national_number; + GetNationalSignificantNumber(number, &national_number); + int country_code = number.country_code(); + // Note: For Russian Fed and NANPA numbers, we just use the rules from the + // default region (US or Russia) since the GetRegionCodeForNumber will not + // work if the number is possible but not valid. This would need to be + // revisited if the possible number pattern ever differed between various + // regions within those plans. + string region_code; + GetRegionCodeForCountryCode(country_code, ®ion_code); + if (!HasValidRegionCode(region_code, country_code, national_number)) { + return INVALID_COUNTRY_CODE; + } + const PhoneNumberDesc& general_num_desc = + GetMetadataForRegion(region_code)->general_desc(); + // Handling case of numbers with no metadata. + if (!general_num_desc.has_national_number_pattern()) { + size_t number_length = national_number.length(); + if (number_length < kMinLengthForNsn) { + return TOO_SHORT; + } else if (number_length > kMaxLengthForNsn) { + return TOO_LONG; + } else { + return IS_POSSIBLE; + } + } + scoped_ptr<reg_exp::RegularExpression> possible_number_pattern( + reg_exp::CreateRegularExpression( + StrCat("(", general_num_desc.possible_number_pattern(), ")").c_str())); + return TestNumberLengthAgainstPattern(possible_number_pattern.get(), + national_number); +} + +bool PhoneNumberUtil::TruncateTooLongNumber(PhoneNumber* number) const { + if (IsValidNumber(*number)) { + return true; + } + PhoneNumber number_copy(*number); + uint64 national_number = number->national_number(); + do { + national_number /= 10; + number_copy.set_national_number(national_number); + if (IsPossibleNumberWithReason(number_copy) == TOO_SHORT || + national_number == 0) { + return false; + } + } while (!IsValidNumber(number_copy)); + number->set_national_number(national_number); + return true; +} + +PhoneNumberUtil::PhoneNumberType PhoneNumberUtil::GetNumberType( + const PhoneNumber& number) const { + string region_code; + GetRegionCodeForNumber(number, ®ion_code); + if (!IsValidRegionCode(region_code)) { + return UNKNOWN; + } + string national_significant_number; + GetNationalSignificantNumber(number, &national_significant_number); + return GetNumberTypeHelper(national_significant_number, + *GetMetadataForRegion(region_code)); +} + +bool PhoneNumberUtil::IsValidNumber(const PhoneNumber& number) const { + string region_code; + GetRegionCodeForNumber(number, ®ion_code); + return IsValidRegionCode(region_code) && + IsValidNumberForRegion(number, region_code); +} + +bool PhoneNumberUtil::IsValidNumberForRegion(const PhoneNumber& number, + const string& region_code) const { + if (number.country_code() != GetCountryCodeForRegion(region_code)) { + return false; + } + const PhoneMetadata* metadata = GetMetadataForRegion(region_code); + const PhoneNumberDesc& general_desc = metadata->general_desc(); + string national_number; + GetNationalSignificantNumber(number, &national_number); + + // For regions where we don't have metadata for PhoneNumberDesc, we treat + // any number passed in as a valid number if its national significant number + // is between the minimum and maximum lengths defined by ITU for a national + // significant number. + if (!general_desc.has_national_number_pattern()) { + logger->Info("Validating number with incomplete metadata."); + size_t number_length = national_number.length(); + return number_length > kMinLengthForNsn && + number_length <= kMaxLengthForNsn; + } + return GetNumberTypeHelper(national_number, *metadata) != UNKNOWN; +} + +bool PhoneNumberUtil::IsLeadingZeroPossible(int country_calling_code) const { + string region_code; + GetRegionCodeForCountryCode(country_calling_code, ®ion_code); + const PhoneMetadata* main_metadata_for_calling_code = + GetMetadataForRegion(region_code); + if (!main_metadata_for_calling_code) return false; + return main_metadata_for_calling_code->leading_zero_possible(); +} + +void PhoneNumberUtil::GetNationalSignificantNumber( + const PhoneNumber& number, + string* national_number) const { + // The leading zero in the national (significant) number of an Italian phone + // number has a special meaning. Unlike the rest of the world, it indicates + // the number is a landline number. There have been plans to migrate landline + // numbers to start with the digit two since December 2000, but it has not yet + // happened. + // See http://en.wikipedia.org/wiki/%2B39 for more details. + // Other regions such as Cote d'Ivoire and Gabon use this for their mobile + // numbers. + DCHECK(national_number); + StrAppend(national_number, + (IsLeadingZeroPossible(number.country_code()) && + number.has_italian_leading_zero() && + number.italian_leading_zero()) + ? "0" + : ""); + StrAppend(national_number, number.national_number()); +} + +int PhoneNumberUtil::GetLengthOfGeographicalAreaCode( + const PhoneNumber& number) const { + string region_code; + GetRegionCodeForNumber(number, ®ion_code); + if (!IsValidRegionCode(region_code)) { + return 0; + } + const PhoneMetadata* metadata = GetMetadataForRegion(region_code); + DCHECK(metadata); + if (!metadata->has_national_prefix()) { + return 0; + } + + string national_significant_number; + GetNationalSignificantNumber(number, &national_significant_number); + PhoneNumberType type = GetNumberTypeHelper(national_significant_number, + *metadata); + // Most numbers other than the two types below have to be dialled in full. + if (type != FIXED_LINE && type != FIXED_LINE_OR_MOBILE) { + return 0; + } + + return GetLengthOfNationalDestinationCode(number); +} + +int PhoneNumberUtil::GetLengthOfNationalDestinationCode( + const PhoneNumber& number) const { + PhoneNumber copied_proto(number); + if (number.has_extension()) { + // Clear the extension so it's not included when formatting. + copied_proto.clear_extension(); + } + + string formatted_number; + Format(copied_proto, INTERNATIONAL, &formatted_number); + scoped_ptr<reg_exp::RegularExpressionInput> i18n_number( + reg_exp::CreateRegularExpressionInput(formatted_number.c_str())); + string digit_group; + string ndc; + string third_group; + for (int i = 0; i < 3; ++i) { + if (!capturing_ascii_digits_pattern->Consume(i18n_number.get(), + false, + &digit_group, + NULL)) { + // We should find at least three groups. + return 0; + } + if (i == 1) { + ndc = digit_group; + } else if (i == 2) { + third_group = digit_group; + } + } + string region_code; + GetRegionCodeForNumber(number, ®ion_code); + if (region_code == "AR" && + GetNumberType(number) == MOBILE) { + // Argentinian mobile numbers, when formatted in the international format, + // are in the form of +54 9 NDC XXXX.... As a result, we take the length of + // the third group (NDC) and add 1 for the digit 9, which also forms part of + // the national significant number. + return third_group.size() + 1; + } + return ndc.size(); +} + +// static +void PhoneNumberUtil::NormalizeDigitsOnly(string* number) { + DCHECK(number); + // Delete everything that isn't valid digits. + static scoped_ptr<reg_exp::RegularExpression> invalid_digits_pattern( + reg_exp::CreateRegularExpression(StrCat("[^", kValidDigits, + "]").c_str())); + static const char *empty = ""; + invalid_digits_pattern->Replace(number, true, empty); + // Normalize all decimal digits to ASCII digits. + UParseError error; + icu::ErrorCode status; + + scoped_ptr<icu::Transliterator> transliterator( + icu::Transliterator::createFromRules( + "NormalizeDecimalDigits", + "[[:nv=0:]-[0]-[:^nt=de:]]>0;" + "[[:nv=1:]-[1]-[:^nt=de:]]>1;" + "[[:nv=2:]-[2]-[:^nt=de:]]>2;" + "[[:nv=3:]-[3]-[:^nt=de:]]>3;" + "[[:nv=4:]-[4]-[:^nt=de:]]>4;" + "[[:nv=5:]-[5]-[:^nt=de:]]>5;" + "[[:nv=6:]-[6]-[:^nt=de:]]>6;" + "[[:nv=7:]-[7]-[:^nt=de:]]>7;" + "[[:nv=8:]-[8]-[:^nt=de:]]>8;" + "[[:nv=9:]-[9]-[:^nt=de:]]>9;", + UTRANS_FORWARD, + error, + status + ) + ); + if (!status.isSuccess()) { + logger->Error("Error creating ICU Transliterator"); + return; + } + icu::UnicodeString utf16(icu::UnicodeString::fromUTF8(number->c_str())); + transliterator->transliterate(utf16); + number->clear(); + utf16.toUTF8String(*number); +} + +bool PhoneNumberUtil::IsAlphaNumber(const string& number) const { + if (!IsViablePhoneNumber(number)) { + // Number is too short, or doesn't match the basic phone number pattern. + return false; + } + // Copy the number, since we are going to try and strip the extension from it. + string number_copy(number); + string extension; + MaybeStripExtension(&number_copy, &extension); + return valid_alpha_phone_pattern->Match(number_copy.c_str(), true, NULL); +} + +void PhoneNumberUtil::ConvertAlphaCharactersInNumber(string* number) const { + DCHECK(number); + NormalizeHelper(*all_normalization_mappings, false, number); +} + +// Normalizes a string of characters representing a phone number. This performs +// the following conversions: +// - Wide-ascii digits are converted to normal ASCII (European) digits. +// - Letters are converted to their numeric representation on a telephone +// keypad. The keypad used here is the one defined in ITU Recommendation +// E.161. This is only done if there are 3 or more letters in the number, to +// lessen the risk that such letters are typos - otherwise alpha characters +// are stripped. +// - Punctuation is stripped. +// - Arabic-Indic numerals are converted to European numerals. +void PhoneNumberUtil::Normalize(string* number) const { + DCHECK(number); + if (valid_alpha_phone_pattern->Match(number->c_str(), false, NULL)) { + NormalizeHelper(*all_normalization_mappings, true, number); + } + NormalizeDigitsOnly(number); +} + +// Checks to see if the string of characters could possibly be a phone number at +// all. At the moment, checks to see that the string begins with at least 3 +// digits, ignoring any punctuation commonly found in phone numbers. This +// method does not require the number to be normalized in advance - but does +// assume that leading non-number symbols have been removed, such as by the +// method ExtractPossibleNumber. +// static +bool PhoneNumberUtil::IsViablePhoneNumber(const string& number) { + if (number.length() < kMinLengthForNsn) { + logger->Debug("Number too short to be viable:" + number); + return false; + } + return valid_phone_number_pattern->Match(number.c_str(), true, NULL); +} + +// Strips any international prefix (such as +, 00, 011) present in the number +// provided, normalizes the resulting number, and indicates if an international +// prefix was present. +// +// possible_idd_prefix represents the international direct dialing prefix from +// the region we think this number may be dialed in. +// Returns true if an international dialing prefix could be removed from the +// number, otherwise false if the number did not seem to be in international +// format. +PhoneNumber::CountryCodeSource +PhoneNumberUtil::MaybeStripInternationalPrefixAndNormalize( + const string& possible_idd_prefix, + string* number) const { + DCHECK(number); + if (number->empty()) { + return PhoneNumber::FROM_DEFAULT_COUNTRY; + } + scoped_ptr<reg_exp::RegularExpressionInput> number_string_piece( + reg_exp::CreateRegularExpressionInput(number->c_str())); + if (plus_chars_pattern->Consume(number_string_piece.get(), true, + NULL, NULL)) { + number->assign(number_string_piece->ToString()); + // Can now normalize the rest of the number since we've consumed the "+" + // sign at the start. + Normalize(number); + return PhoneNumber::FROM_NUMBER_WITH_PLUS_SIGN; + } + // Attempt to parse the first digits as an international prefix. + scoped_ptr<reg_exp::RegularExpression> idd_pattern( + reg_exp::CreateRegularExpression(possible_idd_prefix.c_str())); + if (ParsePrefixAsIdd(idd_pattern.get(), number)) { + Normalize(number); + return PhoneNumber::FROM_NUMBER_WITH_IDD; + } + // If still not found, then try and normalize the number and then try again. + // This shouldn't be done before, since non-numeric characters (+ and ~) may + // legally be in the international prefix. + Normalize(number); + return ParsePrefixAsIdd(idd_pattern.get(), number) + ? PhoneNumber::FROM_NUMBER_WITH_IDD + : PhoneNumber::FROM_DEFAULT_COUNTRY; +} + +// Strips any national prefix (such as 0, 1) present in the number provided. +// The number passed in should be the normalized telephone number that we wish +// to strip any national dialing prefix from. The metadata should be for the +// region that we think this number is from. +// static +void PhoneNumberUtil::MaybeStripNationalPrefixAndCarrierCode( + const PhoneMetadata& metadata, + string* number, + string* carrier_code) { + DCHECK(number); + string carrier_code_temp; + const string& possible_national_prefix = + metadata.national_prefix_for_parsing(); + if (number->empty() || possible_national_prefix.empty()) { + // Early return for numbers of zero length or with no national prefix + // possible. + return; + } + // We use two copies here since Consume modifies the phone number, and if the + // first if-clause fails the number will already be changed. + scoped_ptr<reg_exp::RegularExpressionInput> number_copy( + reg_exp::CreateRegularExpressionInput(number->c_str())); + scoped_ptr<reg_exp::RegularExpressionInput> number_copy_without_transform( + reg_exp::CreateRegularExpressionInput(number->c_str())); + + string number_string_copy(*number); + string captured_part_of_prefix; + scoped_ptr<reg_exp::RegularExpression> national_number_rule( + reg_exp::CreateRegularExpression( + metadata.general_desc().national_number_pattern().c_str())); + // Attempt to parse the first digits as a national prefix. We make a + // copy so that we can revert to the original string if necessary. + const string& transform_rule = metadata.national_prefix_transform_rule(); + if (!transform_rule.empty() && + (number_copy->ConsumeRegExp(possible_national_prefix, true, + &carrier_code_temp, + &captured_part_of_prefix) || + number_copy->ConsumeRegExp(possible_national_prefix, true, + &captured_part_of_prefix, NULL)) && + !captured_part_of_prefix.empty()) { + string re2_transform_rule(transform_rule); + TransformRegularExpressionToRE2Syntax(&re2_transform_rule); + // If this succeeded, then we must have had a transform rule and there must + // have been some part of the prefix that we captured. + // We make the transformation and check that the resultant number is viable. + // If so, replace the number and return. + scoped_ptr<reg_exp::RegularExpression> possible_national_prefix_rule( + reg_exp::CreateRegularExpression(possible_national_prefix.c_str())); + possible_national_prefix_rule->Replace(&number_string_copy, false, + re2_transform_rule.c_str()); + if (national_number_rule->Match(number_string_copy.c_str(), true, NULL)) { + number->assign(number_string_copy); + if (carrier_code) { + carrier_code->assign(carrier_code_temp); + } + } + } else if (number_copy_without_transform->ConsumeRegExp( + possible_national_prefix, true, &carrier_code_temp, NULL) || + number_copy_without_transform->ConsumeRegExp( + possible_national_prefix, true, NULL, NULL)) { + logger->Debug("Parsed the first digits as a national prefix."); + string unconsumed_part(number_copy_without_transform->ToString()); + // If captured_part_of_prefix is empty, this implies nothing was captured by + // the capturing groups in possible_national_prefix; therefore, no + // transformation is necessary, and we just remove the national prefix. + if (national_number_rule->Match(unconsumed_part.c_str(), true, NULL)) { + number->assign(unconsumed_part); + if (carrier_code) { + carrier_code->assign(carrier_code_temp); + } + } + } else { + logger->Debug("The first digits did not match the national prefix."); + } +} + +// Strips any extension (as in, the part of the number dialled after the call is +// connected, usually indicated with extn, ext, x or similar) from the end of +// the number, and returns it. The number passed in should be non-normalized. +// static +bool PhoneNumberUtil::MaybeStripExtension(string* number, string* extension) { + DCHECK(number); + DCHECK(extension); + // There are three extension capturing groups in the regular expression. + string possible_extension_one; + string possible_extension_two; + string possible_extension_three; + string number_copy(*number); + scoped_ptr<reg_exp::RegularExpressionInput> number_copy_regex_input( + reg_exp::CreateRegularExpressionInput(number_copy.c_str())); + if (extn_pattern->Consume(number_copy_regex_input.get(), false, + &possible_extension_one, &possible_extension_two, + &possible_extension_three)) { + // Replace the extensions in the original string here. + extn_pattern->Replace(&number_copy, false, ""); + logger->Debug("Found an extension. Possible extension one: " + + possible_extension_one + + ". Possible extension two: " + possible_extension_two + + ". Remaining number: " + number_copy); + // If we find a potential extension, and the number preceding this is a + // viable number, we assume it is an extension. + if ((!possible_extension_one.empty() || !possible_extension_two.empty() || + !possible_extension_three.empty()) && + IsViablePhoneNumber(number_copy)) { + number->assign(number_copy); + if (!possible_extension_one.empty()) { + extension->assign(possible_extension_one); + } else if (!possible_extension_two.empty()) { + extension->assign(possible_extension_two); + } else if (!possible_extension_three.empty()) { + extension->assign(possible_extension_three); + } + return true; + } + } + return false; +} + +// Extracts country calling code from national_number, and returns it. It +// assumes that the leading plus sign or IDD has already been removed. Returns 0 +// if national_number doesn't start with a valid country calling code, and +// leaves national_number unmodified. Assumes the national_number is at least 3 +// characters long. +int PhoneNumberUtil::ExtractCountryCode(string* national_number) const { + int potential_country_code; + for (int i = 1; i <= 3; ++i) { + safe_strto32(national_number->substr(0, i), &potential_country_code); + string region_code; + GetRegionCodeForCountryCode(potential_country_code, ®ion_code); + if (region_code != "ZZ") { + national_number->erase(0, i); + return potential_country_code; + } + } + return 0; +} + +// Tries to extract a country calling code from a number. Country calling codes +// are extracted in the following ways: +// - by stripping the international dialing prefix of the region the person +// is dialing from, if this is present in the number, and looking at the next +// digits +// - by stripping the '+' sign if present and then looking at the next digits +// - by comparing the start of the number and the country calling code of the +// default region. If the number is not considered possible for the numbering +// plan of the default region initially, but starts with the country calling +// code of this region, validation will be reattempted after stripping this +// country calling code. If this number is considered a possible number, then +// the first digits will be considered the country calling code and removed as +// such. +// +// Returns NO_PARSING_ERROR if a country calling code was successfully +// extracted or none was present, or the appropriate error otherwise, such as +// if a + was present but it was not followed by a valid country calling code. +// If NO_PARSING_ERROR is returned, the national_number without the country +// calling code is populated, and the country_code passed in is set to the +// country calling code if found, otherwise to 0. +PhoneNumberUtil::ErrorType PhoneNumberUtil::MaybeExtractCountryCode( + const PhoneMetadata* default_region_metadata, + bool keep_raw_input, + string* national_number, + PhoneNumber* phone_number) const { + DCHECK(national_number); + DCHECK(phone_number); + // Set the default prefix to be something that will never match if there is no + // default region. + string possible_country_idd_prefix = default_region_metadata + ? default_region_metadata->international_prefix() + : "NonMatch"; + PhoneNumber::CountryCodeSource country_code_source = + MaybeStripInternationalPrefixAndNormalize(possible_country_idd_prefix, + national_number); + if (keep_raw_input) { + phone_number->set_country_code_source(country_code_source); + } + if (country_code_source != PhoneNumber::FROM_DEFAULT_COUNTRY) { + if (national_number->length() < kMinLengthForNsn) { + logger->Debug("Phone number had an IDD, but after this was not " + "long enough to be a viable phone number."); + return TOO_SHORT_AFTER_IDD; + } + int potential_country_code = ExtractCountryCode(national_number); + if (potential_country_code != 0) { + phone_number->set_country_code(potential_country_code); + return NO_PARSING_ERROR; + } + // If this fails, they must be using a strange country calling code that we + // don't recognize, or that doesn't exist. + return INVALID_COUNTRY_CODE_ERROR; + } else if (default_region_metadata) { + // Check to see if the number starts with the country calling code for the + // default region. If so, we remove the country calling code, and do some + // checks on the validity of the number before and after. + int default_country_code = default_region_metadata->country_code(); + string default_country_code_string(SimpleItoa(default_country_code)); + logger->Debug("Possible country code: " + default_country_code_string); + string potential_national_number; + if (TryStripPrefixString(*national_number, + default_country_code_string, + &potential_national_number)) { + const PhoneNumberDesc& general_num_desc = + default_region_metadata->general_desc(); + scoped_ptr<reg_exp::RegularExpression> valid_number_pattern( + reg_exp::CreateRegularExpression( + general_num_desc.national_number_pattern().c_str())); + + MaybeStripNationalPrefixAndCarrierCode(*default_region_metadata, + &potential_national_number, + NULL); + logger->Debug("Number without country code prefix: " + + potential_national_number); + string extracted_number; + scoped_ptr<reg_exp::RegularExpression> possible_number_pattern( + reg_exp::CreateRegularExpression( + StrCat("(", general_num_desc.possible_number_pattern(), + ")").c_str())); + // If the number was not valid before but is valid now, or if it was too + // long before, we consider the number with the country code stripped to + // be a better result and keep that instead. + if ((!valid_number_pattern->Match(national_number->c_str(), + true, NULL) && + valid_number_pattern->Match(potential_national_number.c_str(), + true, NULL)) || + TestNumberLengthAgainstPattern(possible_number_pattern.get(), + *national_number) + == TOO_LONG) { + national_number->assign(potential_national_number); + if (keep_raw_input) { + phone_number->set_country_code_source( + PhoneNumber::FROM_NUMBER_WITHOUT_PLUS_SIGN); + } + phone_number->set_country_code(default_country_code); + return NO_PARSING_ERROR; + } + } + } + // No country calling code present. Set the country_code to 0. + phone_number->set_country_code(0); + return NO_PARSING_ERROR; +} + +PhoneNumberUtil::MatchType PhoneNumberUtil::IsNumberMatch( + const PhoneNumber& first_number_in, + const PhoneNumber& second_number_in) const { + // Make copies of the phone number so that the numbers passed in are not + // edited. + PhoneNumber first_number(first_number_in); + PhoneNumber second_number(second_number_in); + // First clear raw_input and country_code_source and + // preferred_domestic_carrier_code fields and any empty-string extensions so + // that we can use the proto-buffer equality method. + first_number.clear_raw_input(); + first_number.clear_country_code_source(); + first_number.clear_preferred_domestic_carrier_code(); + second_number.clear_raw_input(); + second_number.clear_country_code_source(); + second_number.clear_preferred_domestic_carrier_code(); + if (first_number.extension().empty()) { + first_number.clear_extension(); + } + if (second_number.extension().empty()) { + second_number.clear_extension(); + } + // Early exit if both had extensions and these are different. + if (first_number.has_extension() && second_number.has_extension() && + first_number.extension() != second_number.extension()) { + return NO_MATCH; + } + int first_number_country_code = first_number.country_code(); + int second_number_country_code = second_number.country_code(); + // Both had country calling code specified. + if (first_number_country_code != 0 && second_number_country_code != 0) { + if (ExactlySameAs(first_number, second_number)) { + return EXACT_MATCH; + } else if (first_number_country_code == second_number_country_code && + IsNationalNumberSuffixOfTheOther(first_number, second_number)) { + // A SHORT_NSN_MATCH occurs if there is a difference because of the + // presence or absence of an 'Italian leading zero', the presence or + // absence of an extension, or one NSN being a shorter variant of the + // other. + return SHORT_NSN_MATCH; + } + // This is not a match. + return NO_MATCH; + } + // Checks cases where one or both country calling codes were not specified. To + // make equality checks easier, we first set the country_code fields to be + // equal. + first_number.set_country_code(second_number_country_code); + // If all else was the same, then this is an NSN_MATCH. + if (ExactlySameAs(first_number, second_number)) { + return NSN_MATCH; + } + if (IsNationalNumberSuffixOfTheOther(first_number, second_number)) { + return SHORT_NSN_MATCH; + } + return NO_MATCH; +} + +PhoneNumberUtil::MatchType PhoneNumberUtil::IsNumberMatchWithTwoStrings( + const string& first_number, + const string& second_number) const { + PhoneNumber first_number_as_proto; + ErrorType error_type = + Parse(first_number, "ZZ", &first_number_as_proto); + if (error_type == NO_PARSING_ERROR) { + return IsNumberMatchWithOneString(first_number_as_proto, second_number); + } + if (error_type == INVALID_COUNTRY_CODE_ERROR) { + PhoneNumber second_number_as_proto; + ErrorType error_type = Parse(second_number, "ZZ", + &second_number_as_proto); + if (error_type == NO_PARSING_ERROR) { + return IsNumberMatchWithOneString(second_number_as_proto, first_number); + } + if (error_type == INVALID_COUNTRY_CODE_ERROR) { + error_type = ParseHelper(first_number, "ZZ", false, false, + &first_number_as_proto); + if (error_type == NO_PARSING_ERROR) { + error_type = ParseHelper(second_number, "ZZ", false, false, + &second_number_as_proto); + if (error_type == NO_PARSING_ERROR) { + return IsNumberMatch(first_number_as_proto, second_number_as_proto); + } + } + } + } + // One or more of the phone numbers we are trying to match is not a viable + // phone number. + return INVALID_NUMBER; +} + +PhoneNumberUtil::MatchType PhoneNumberUtil::IsNumberMatchWithOneString( + const PhoneNumber& first_number, + const string& second_number) const { + // First see if the second number has an implicit country calling code, by + // attempting to parse it. + PhoneNumber second_number_as_proto; + ErrorType error_type = + Parse(second_number, "ZZ", &second_number_as_proto); + if (error_type == NO_PARSING_ERROR) { + return IsNumberMatch(first_number, second_number_as_proto); + } + if (error_type == INVALID_COUNTRY_CODE_ERROR) { + // The second number has no country calling code. EXACT_MATCH is no longer + // possible. We parse it as if the region was the same as that for the + // first number, and if EXACT_MATCH is returned, we replace this with + // NSN_MATCH. + string first_number_region; + GetRegionCodeForCountryCode(first_number.country_code(), + &first_number_region); + if (first_number_region != "ZZ") { + PhoneNumber second_number_with_first_number_region; + Parse(second_number, first_number_region, + &second_number_with_first_number_region); + MatchType match = IsNumberMatch(first_number, + second_number_with_first_number_region); + if (match == EXACT_MATCH) { + return NSN_MATCH; + } + return match; + } else { + // If the first number didn't have a valid country calling code, then we + // parse the second number without one as well. + error_type = ParseHelper(second_number, "ZZ", false, false, + &second_number_as_proto); + if (error_type == NO_PARSING_ERROR) { + return IsNumberMatch(first_number, second_number_as_proto); + } + } + } + // One or more of the phone numbers we are trying to match is not a viable + // phone number. + return INVALID_NUMBER; +} + +} // namespace phonenumbers +} // namespace i18n diff --git a/third_party/libphonenumber/cpp/src/phonenumberutil.h b/third_party/libphonenumber/cpp/src/phonenumberutil.h new file mode 100644 index 0000000..6a766df --- /dev/null +++ b/third_party/libphonenumber/cpp/src/phonenumberutil.h @@ -0,0 +1,678 @@ +// Copyright (C) 2009 Google Inc. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +// Utility for international phone numbers. +// +// Author: Shaopeng Jia +// Open-sourced by: Philippe Liard + +#ifndef I18N_PHONENUMBERS_PHONENUMBERUTIL_H_ +#define I18N_PHONENUMBERS_PHONENUMBERUTIL_H_ + +#include <list> +#include <map> +#include <set> +#include <string> +#include <utility> +#include <vector> + +#include "base/scoped_ptr.h" +#include "base/singleton.h" +#include "phonenumber.pb.h" + +class TelephoneNumber; + +namespace i18n { +namespace phonenumbers { + +using std::list; +using std::map; +using std::pair; +using std::set; +using std::string; +using std::vector; + +using google::protobuf::RepeatedPtrField; + +class LoggerAdapter; +class NumberFormat; +class PhoneMetadata; +class PhoneMetadataCollection; +class PhoneNumber; + +class PhoneNumberUtil { + friend struct DefaultSingletonTraits<PhoneNumberUtil>; + friend class PhoneNumberUtilTest; + public: + // INTERNATIONAL and NATIONAL formats are consistent with the definition + // in ITU-T Recommendation E. 123. For example, the number of the Google + // Zürich office will be written as "+41 44 668 1800" in INTERNATIONAL + // format, and as "044 668 1800" in NATIONAL format. E164 format is as per + // INTERNATIONAL format but with no formatting applied e.g. +41446681800. + // RFC3966 is as per INTERNATIONAL format, but with all spaces and other + // separating symbols replaced with a hyphen, and with any phone number + // extension appended with ";ext=". + enum PhoneNumberFormat { + E164, + INTERNATIONAL, + NATIONAL, + RFC3966 + }; + + // Type of phone numbers. + enum PhoneNumberType { + FIXED_LINE, + MOBILE, + // In some regions (e.g. the USA), it is impossible to distinguish between + // fixed-line and mobile numbers by looking at the phone number itself. + FIXED_LINE_OR_MOBILE, + // Freephone lines + TOLL_FREE, + PREMIUM_RATE, + // The cost of this call is shared between the caller and the recipient, and + // is hence typically less than PREMIUM_RATE calls. See + // http://en.wikipedia.org/wiki/Shared_Cost_Service for more information. + SHARED_COST, + // Voice over IP numbers. This includes TSoIP (Telephony Service over IP). + VOIP, + // A personal number is associated with a particular person, and may be + // routed to either a MOBILE or FIXED_LINE number. Some more information can + // be found here: http://en.wikipedia.org/wiki/Personal_Numbers + PERSONAL_NUMBER, + PAGER, + // Used for "Universal Access Numbers" or "Company Numbers". They may be + // further routed to specific offices, but allow one number to be used for a + // company. + UAN, + // A phone number is of type UNKNOWN when it does not fit any of the known + // patterns for a specific region. + UNKNOWN + }; + + // Types of phone number matches. See detailed description beside the + // IsNumberMatch() method. + enum MatchType { + INVALID_NUMBER, // NOT_A_NUMBER in the java version. + NO_MATCH, + SHORT_NSN_MATCH, + NSN_MATCH, + EXACT_MATCH, + }; + + enum ErrorType { + NO_PARSING_ERROR, + INVALID_COUNTRY_CODE_ERROR, // INVALID_COUNTRY_CODE in the java version. + NOT_A_NUMBER, + TOO_SHORT_AFTER_IDD, + TOO_SHORT_NSN, + TOO_LONG_NSN, // TOO_LONG in the java version. + }; + + // Possible outcomes when testing if a PhoneNumber is possible. + enum ValidationResult { + IS_POSSIBLE, + INVALID_COUNTRY_CODE, + TOO_SHORT, + TOO_LONG, + }; + + // Gets a PhoneNumberUtil instance to carry out international phone number + // formatting, parsing, or validation. The instance is loaded with phone + // number metadata for a number of most commonly used regions, as specified by + // DEFAULT_REGIONS_. + // + // The PhoneNumberUtil is implemented as a singleton. Therefore, calling + // getInstance multiple times will only result in one instance being created. + static PhoneNumberUtil* GetInstance(); + + // Returns true if the number is a valid vanity (alpha) number such as 800 + // MICROSOFT. A valid vanity number will start with at least 3 digits and will + // have three or more alpha characters. This does not do region-specific + // checks - to work out if this number is actually valid for a region, it + // should be parsed and methods such as IsPossibleNumberWithReason or + // IsValidNumber should be used. + bool IsAlphaNumber(const string& number) const; + + // Converts all alpha characters in a number to their respective digits on + // a keypad, but retains existing formatting. + void ConvertAlphaCharactersInNumber(string* number) const; + + // Normalizes a string of characters representing a phone number. This + // converts wide-ascii and arabic-indic numerals to European numerals, and + // strips punctuation and alpha characters. + static void NormalizeDigitsOnly(string* number); + + // Gets the national significant number of a phone number. Note a national + // significant number doesn't contain a national prefix or any formatting. + void GetNationalSignificantNumber(const PhoneNumber& number, + string* national_significant_num) const; + + // Gets the length of the geographical area code from the PhoneNumber object + // passed in, so that clients could use it to split a national significant + // number into geographical area code and subscriber number. It works in such + // a way that the resultant subscriber number should be diallable, at least on + // some devices. An example of how this could be used: + // + // const PhoneNumberUtil& phone_util(PhoneNumberUtil::GetInstance()); + // PhoneNumber number; + // phone_util.Parse("16502530000", "US", &number); + // string national_significant_number; + // phone_util.GetNationalSignificantNumber(number, + // &national_significant_number); + // string area_code; + // string subscriber_number; + // + // int area_code_length = phone_util.GetLengthOfGeographicalAreaCode(number); + // if (area_code_length > 0) { + // area_code = national_significant_number.substring(0, area_code_length); + // subscriber_number = national_significant_number.substring( + // area_code_length, string::npos); + // else { + // area_code = ""; + // subscriber_number = national_significant_number; + // } + // + // N.B.: area code is a very ambiguous concept, so the I18N team generally + // recommends against using it for most purposes, but recommends using the + // more general national_number instead. Read the following carefully before + // deciding to use this method: + // + // - geographical area codes change over time, and this method honors those + // changes; therefore, it doesn't guarantee the stability of the result it + // produces. + // - subscriber numbers may not be diallable from all devices (notably mobile + // devices, which typically requires the full national_number to be dialled + // in most regions). + // - most non-geographical numbers have no area codes. + // - some geographical numbers have no area codes. + int GetLengthOfGeographicalAreaCode(const PhoneNumber& number) const; + + // Gets the length of the national destination code (NDC) from the PhoneNumber + // object passed in, so that clients could use it to split a national + // significant number into NDC and subscriber number. The NDC of a phone + // number is normally the first group of digit(s) right after the country + // calling code when the number is formatted in the international format, if + // there is a subscriber number part that follows. An example of how this + // could be used: + // + // const PhoneNumberUtil& phone_util(PhoneNumberUtil::GetInstance()); + // PhoneNumber number; + // phone_util.Parse("16502530000", "US", &number); + // string national_significant_number; + // phone_util.GetNationalSignificantNumber(number, + // &national_significant_number); + // string national_destination_code; + // string subscriber_number; + // + // int national_destination_code_length = + // phone_util.GetLengthOfGeographicalAreaCode(number); + // if (national_destination_code_length > 0) { + // national_destination_code = national_significant_number.substring( + // 0, national_destination_code_length); + // subscriber_number = national_significant_number.substring( + // national_destination_code_length, string::npos); + // else { + // national_destination_code = ""; + // subscriber_number = national_significant_number; + // } + // + // Refer to the unittests to see the difference between this function and + // GetLengthOfGeographicalAreaCode(). + int GetLengthOfNationalDestinationCode(const PhoneNumber& number) const; + + // Formats a phone number in the specified format using default rules. Note + // that this does not promise to produce a phone number that the user can + // dial from where they are - although we do format in either NATIONAL or + // INTERNATIONAL format depending on what the client asks for, we do not + // currently support a more abbreviated format, such as for users in the + // same area who could potentially dial the number without area code. + void Format(const PhoneNumber& number, + PhoneNumberFormat number_format, + string* formatted_number) const; + + // Formats a phone number in the specified format using client-defined + // formatting rules. + void FormatByPattern( + const PhoneNumber& number, + PhoneNumberFormat number_format, + const RepeatedPtrField<NumberFormat>& user_defined_formats, + string* formatted_number) const; + + // Formats a phone number in national format for dialing using the carrier as + // specified in the carrier_code. The carrier_code will always be used + // regardless of whether the phone number already has a preferred domestic + // carrier code stored. If carrier_code contains an empty string, return the + // number in national format without any carrier code. + void FormatNationalNumberWithCarrierCode(const PhoneNumber& number, + const string& carrier_code, + string* formatted_number) const; + + // Formats a phone number in national format for dialing using the carrier as + // specified in the preferred_domestic_carrier_code field of the PhoneNumber + // object passed in. If that is missing, use the fallback_carrier_code passed + // in instead. If there is no preferred_domestic_carrier_code, and the + // fallback_carrier_code contains an empty string, return the number in + // national format without any carrier code. + // + // Use FormatNationalNumberWithCarrierCode instead if the carrier code passed + // in should take precedence over the number's preferred_domestic_carrier_code + // when formatting. + void FormatNationalNumberWithPreferredCarrierCode( + const PhoneNumber& number, + const string& fallback_carrier_code, + string* formatted_number) const; + + // Formats a phone number for out-of-country dialing purposes. + // + // Note this function takes care of the case for calling inside of NANPA + // and between Russia and Kazakhstan (who share the same country calling + // code). In those cases, no international prefix is used. For regions which + // have multiple international prefixes, the number in its INTERNATIONAL + // format will be returned instead. + void FormatOutOfCountryCallingNumber( + const PhoneNumber& number, + const string& calling_from, + string* formatted_number) const; + + // Formats a phone number using the original phone number format that the + // number is parsed from. The original format is embedded in the + // country_code_source field of the PhoneNumber object passed in. If such + // information is missing, the number will be formatted into the NATIONAL + // format by default. + void FormatInOriginalFormat(const PhoneNumber& number, + const string& region_calling_from, + string* formatted_number) const; + + // Formats a phone number for out-of-country dialing purposes. + // + // Note that in this version, if the number was entered originally using alpha + // characters and this version of the number is stored in raw_input, this + // representation of the number will be used rather than the digit + // representation. Grouping information, as specified by characters such as + // "-" and " ", will be retained. + // + // Caveats: + // 1) This will not produce good results if the country calling code is both + // present in the raw input _and_ is the start of the national number. This + // is not a problem in the regions which typically use alpha numbers. + // 2) This will also not produce good results if the raw input has any + // grouping information within the first three digits of the national number, + // and if the function needs to strip preceding digits/words in the raw input + // before these digits. Normally people group the first three digits together + // so this is not a huge problem - and will be fixed if it proves to be so. + void FormatOutOfCountryKeepingAlphaChars( + const PhoneNumber& number, + const string& calling_from, + string* formatted_number) const; + + // Attempts to extract a valid number from a phone number that is too long to + // be valid, and resets the PhoneNumber object passed in to that valid + // version. If no valid number could be extracted, the PhoneNumber object + // passed in will not be modified. It returns true if a valid phone number can + // be successfully extracted. + bool TruncateTooLongNumber(PhoneNumber* number) const; + + // Gets the type of a phone number. + PhoneNumberType GetNumberType(const PhoneNumber& number) const; + + // Tests whether a phone number matches a valid pattern. Note this doesn't + // verify the number is actually in use, which is impossible to tell by just + // looking at a number itself. + bool IsValidNumber(const PhoneNumber& number) const; + + // Tests whether a phone number is valid for a certain region. Note this + // doesn't verify the number is actually in use, which is impossible to tell + // by just looking at a number itself. If the country calling code is not the + // same as the country calling code for the region, this immediately exits + // with false. After this, the specific number pattern rules for the region + // are examined. + // This is useful for determining for example whether a particular number is + // valid for Canada, rather than just a valid NANPA number. + // + // The region_code parameter is an ISO 3166-1 two-letter country code string. + bool IsValidNumberForRegion( + const PhoneNumber& number, + const string& region_code) const; + + // Returns the region where a phone number is from. This could be used for + // geo-coding at the region level. + // The country/region is returned as an ISO 3166-1 two-letter country code + // string. + void GetRegionCodeForNumber(const PhoneNumber& number, + string* region_code) const; + + // Returns the country calling code for a specific region. For example, + // this would be 1 for the United States, and 64 for New Zealand. + // + // The region_code parameter is an ISO 3166-1 two-letter country code string. + int GetCountryCodeForRegion(const string& region_code) const; + + // Returns the region code that matches the specific country code. Note that + // it is possible that several regions share the same country code (e.g. US + // and Canada), and in that case, only one of the regions (normally the one + // with the largest population) is returned. + // + // The region code is returned as an ISO 3166-1 two-letter country code + // string. + void GetRegionCodeForCountryCode(int country_code, string* region_code) const; + + // Checks if this is a region under the North American Numbering Plan + // Administration (NANPA). + // + // The region_code parameter is an ISO 3166-1 two-letter country code string. + bool IsNANPACountry(const string& region_code) const; + + // Checks whether a phone number is a possible number. It provides a more + // lenient check than IsValidNumber() in the following sense: + // 1. It only checks the length of phone numbers. In particular, it doesn't + // check starting digits of the number. + // 2. It doesn't attempt to figure out the type of the number, but uses + // general rules which applies to all types of phone numbers in a + // region. Therefore, it is much faster than IsValidNumber(). + // 3. For fixed line numbers, many regions have the concept of area code, + // which together with subscriber number constitute the national + // significant number. It is sometimes okay to dial the subscriber + // number only when dialing in the same area. This function will return + // true if the subscriber-number-only version is passed in. On the other + // hand, because IsValidNumber() validates using information on both + // starting digits (for fixed line numbers, that would most likely be + // area codes) and length (obviously includes the length of area codes + // for fixed line numbers), it will return false for the + // subscriber-number-only version. + ValidationResult IsPossibleNumberWithReason(const PhoneNumber& number) const; + + // Convenience wrapper around IsPossibleNumberWithReason. Instead of returning + // the reason for failure, this method returns a boolean value. + bool IsPossibleNumber(const PhoneNumber& number) const; + + // Checks whether a phone number is a possible number given a number in the + // form of a string, and the country where the number could be dialed from. + // It provides a more lenient check than IsValidNumber(). See + // IsPossibleNumber(const PhoneNumber& number) for details. + // + // This method first parses the number, then invokes + // IsPossibleNumber(const PhoneNumber& number) with the resultant PhoneNumber + // object. + // + // region_dialing_from represents the region that we are expecting the number + // to be dialed from. Note this is different from the region where the number + // belongs. For example, the number +1 650 253 0000 is a number that belongs + // to US. When written in this form, it could be dialed from any region. When + // it is written as 00 1 650 253 0000, it could be dialed from any region + // which uses an international dialling prefix of 00. When it is written as + // 650 253 0000, it could only be dialed from within the US, and when written + // as 253 0000, it could only be dialed from within a smaller area in the US + // (Mountain View, CA, to be more specific). + // + // The country_dialing_from parameter is an ISO 3166-1 two-letter country code + // string. + bool IsPossibleNumberForString( + const string& number, + const string& country_dialing_from) const; + + // Gets a valid fixed-line number for the specified region. Returns false if + // the region was unknown. + bool GetExampleNumber(const string& region_code, + PhoneNumber* number) const; + + // Gets a valid number of the specified type for the specified region. + // Returns false if the region was unknown or if no example number of that + // type could be found. + // + // The region_code parameter is an ISO 3166-1 two-letter country code string. + bool GetExampleNumberForType(const string& region_code, + PhoneNumberType type, + PhoneNumber* number) const; + + // Parses a string and returns it in proto buffer format. This method will + // return an error like INVALID_COUNTRY_CODE if the number is not considered + // to be a possible number, and NO_PARSING_ERROR if it parsed correctly. Note + // that validation of whether the number is actually a valid number for a + // particular region is not performed. This can be done separately with + // IsValidNumber(). + // + // default_region represents the country that we are expecting the number to + // be from. This is only used if the number being parsed is not written in + // international format. The country_code for the number in this case would be + // stored as that of the default country supplied. If the number is guaranteed + // to start with a '+' followed by the country calling code, then + // "ZZ" can be supplied. + // + // The default_country parameter is an ISO 3166-1 two-letter country code + // string. + ErrorType Parse(const string& number_to_parse, + const string& default_country, + PhoneNumber* number) const; + // Parses a string and returns it in proto buffer format. This method differs + // from Parse() in that it always populates the raw_input field of the + // protocol buffer with number_to_parse as well as the country_code_source + // field. + // + // The default_country parameter is an ISO 3166-1 two-letter country code + // string. + ErrorType ParseAndKeepRawInput(const string& number_to_parse, + const string& default_country, + PhoneNumber* number) const; + + // Takes two phone numbers and compares them for equality. + // + // Returns EXACT_MATCH if the country calling code, NSN, presence of a leading + // zero for Italian numbers and any extension present are the same. + // Returns NSN_MATCH if either or both has no country calling code specified, + // and the NSNs and extensions are the same. + // Returns SHORT_NSN_MATCH if either or both has no country calling code + // specified, or the country calling code specified is the same, and one NSN + // could be a shorter version of the other number. This includes the case + // where one has an extension specified, and the other does not. + // Returns NO_MATCH otherwise. + // For example, the numbers +1 345 657 1234 and 657 1234 are a + // SHORT_NSN_MATCH. The numbers +1 345 657 1234 and 345 657 are a NO_MATCH. + MatchType IsNumberMatch(const PhoneNumber& first_number, + const PhoneNumber& second_number) const; + + // Takes two phone numbers as strings and compares them for equality. This + // is a convenience wrapper for IsNumberMatch(PhoneNumber firstNumber, + // PhoneNumber secondNumber). No default region is known. + // Returns INVALID_NUMBER if either number cannot be parsed into a phone + // number. + MatchType IsNumberMatchWithTwoStrings(const string& first_number, + const string& second_number) const; + + // Takes two phone numbers and compares them for equality. This is a + // convenience wrapper for IsNumberMatch(PhoneNumber firstNumber, + // PhoneNumber secondNumber). No default region is known. + // Returns INVALID_NUMBER if second_number cannot be parsed into a phone + // number. + MatchType IsNumberMatchWithOneString(const PhoneNumber& first_number, + const string& second_number) const; + + // Implement this 'interface' to override the way metadatas are fetched. + // Useful for testing injecting stable metadatas. + class MetadataProvider { + public: + virtual ~MetadataProvider() {} + + // Returns a pair containing a pointer to the data and its size + virtual pair<const void*, unsigned> operator()() = 0; + }; + + // Override the default logging system. The provided adapter destruction is + // handled by this class (don't delete it). + static void SetLoggerAdapter(LoggerAdapter* logger_adapter); + + friend bool ConvertFromTelephoneNumberProto( + const TelephoneNumber& proto_to_convert, + PhoneNumber* new_proto); + friend bool ConvertToTelephoneNumberProto(const PhoneNumber& proto_to_convert, + TelephoneNumber* resulting_proto); + + protected: + // Check whether the country_calling_code is from a country whose national + // significant number could contain a leading zero. An example of such a + // country is Italy. + bool IsLeadingZeroPossible(int country_calling_code) const; + + private: + typedef pair<int, list<string>*> IntRegionsPair; + + // The minimum and maximum length of the national significant number. + static const size_t kMinLengthForNsn = 3; + static const size_t kMaxLengthForNsn = 15; + + // A mapping from a country calling code to a region code which denotes the + // region represented by that country calling code. Note countries under + // NANPA share the country calling code 1 and Russia and Kazakhstan share the + // country calling code 7. Under this map, 1 is mapped to region code "US" and + // 7 is mapped to region code "RU". This is implemented as a sorted vector to + // achieve better performance. + // + // Region codes are ISO 3166-1 two-letter country code strings. + scoped_ptr<vector<IntRegionsPair> > country_calling_code_to_region_code_map_; + + struct CompareFirst { + bool operator()(const IntRegionsPair& p1, + const IntRegionsPair& p2) const { + return p1.first < p2.first; + } + }; + + // The set of regions that share country calling code 1. + scoped_ptr<set<string> > nanpa_regions_; + static const int kNanpaCountryCode = 1; + + // A mapping from a region code to a PhoneMetadata for that region. + // Region codes are ISO 3166-1 two-letter country code strings. + scoped_ptr<map<string, PhoneMetadata> > region_to_metadata_map_; + + bool LoadMetadata(PhoneMetadataCollection* metadata, + MetadataProvider& provider); + + explicit PhoneNumberUtil(MetadataProvider* provider = 0); + ~PhoneNumberUtil(); + + // Gets all the supported regions. + void GetSupportedRegions(set<string>* regions) const; + + // Returns the national dialling prefix for a specific region. For example, + // this would be 1 for the United States, and 0 for New Zealand. Set + // stripNonDigits to true to strip symbols like "~" (which indicates a wait + // for a dialling tone) from the prefix returned. If no national prefix is + // present, we return an empty string. + // + // Set strip_non_digits to true to strip non-digits from the national + // dialling prefix. + void GetNddPrefixForRegion(const string& region_code, + bool strip_non_digits, + string* national_prefix) const; + + // Helper function to check region code is not unknown or null. + // + // The region_code parameter is an ISO 3166-1 two-letter country code string. + bool IsValidRegionCode(const string& region_code) const; + + // Helper function to check region code is not unknown. The + // country_calling_code and number supplied is used only for the resultant log + // message. + // + // The region_code parameter is an ISO 3166-1 two-letter country code string. + bool HasValidRegionCode(const string& region_code, + int country_code, + const string& number) const; + + // The region_code parameter is an ISO 3166-1 two-letter country code string. + const i18n::phonenumbers::PhoneMetadata* GetMetadataForRegion( + const string& region_code) const; + + void GetRegionCodesForCountryCallingCode( + int country_calling_code, + list<string>* region_codes) const; + + // Simple wrapper of FormatNationalNumberWithCarrier for the common case of + // no carrier code. + // + // The region_code parameter is an ISO 3166-1 two-letter country code string. + void FormatNationalNumber(const string& number, + const string& region_code, + PhoneNumberFormat number_format, + string* formatted_number) const; + + // The region_code parameter is an ISO 3166-1 two-letter country code string. + void FormatNationalNumberWithCarrier(const string& number, + const string& region_code, + PhoneNumberFormat number_format, + const string& carrier_code, + string* formatted_number) const; + + // The region_code parameter is an ISO 3166-1 two-letter country code string. + void MaybeGetFormattedExtension( + const PhoneNumber& number, + const string& region_code, + PhoneNumberFormat number_format, + string* extension) const; + + // The region_code parameter is an ISO 3166-1 two-letter country code string. + void FormatExtension(const string& extension_digits, + const string& region_code, + string* extension) const; + + void GetRegionCodeForNumberFromRegionList( + const PhoneNumber& number, + const list<string>& region_codes, + string* region_code) const; + + void Normalize(string* number) const; + PhoneNumber::CountryCodeSource MaybeStripInternationalPrefixAndNormalize( + const string& possible_idd_prefix, + string* number) const; + + static void MaybeStripNationalPrefixAndCarrierCode( + const PhoneMetadata& metadata, + string* number, + string* carrier_code); + + static void ExtractPossibleNumber(const string& number, + string* extracted_number); + + static bool IsViablePhoneNumber(const string& number); + + static bool MaybeStripExtension(string* number, string* extension); + + int ExtractCountryCode(string* national_number) const; + ErrorType MaybeExtractCountryCode( + const PhoneMetadata* default_region_metadata, + bool keepRawInput, + string* national_number, + PhoneNumber* phone_number) const; + + // The default_region parameter is an ISO 3166-1 two-letter country code + // string. + bool CheckRegionForParsing( + const string& number_to_parse, + const string& default_region) const; + + // The default_region parameter is an ISO 3166-1 two-letter country code + // string. + ErrorType ParseHelper(const string& number_to_parse, + const string& default_region, + bool keep_raw_input, + bool check_region, + PhoneNumber* phone_number) const; + + DISALLOW_COPY_AND_ASSIGN(PhoneNumberUtil); +}; + +} // namespace phonenumbers +} // namespace i18n + +#endif // I18N_PHONENUMBERS_PHONENUMBERUTIL_H_ diff --git a/third_party/libphonenumber/cpp/src/phonenumberutil_test.cc b/third_party/libphonenumber/cpp/src/phonenumberutil_test.cc new file mode 100644 index 0000000..3ef3fa7 --- /dev/null +++ b/third_party/libphonenumber/cpp/src/phonenumberutil_test.cc @@ -0,0 +1,2866 @@ +// Copyright (C) 2009 Google Inc. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +// Author: Shaopeng Jia +// Author: Lara Rennie +// Open-sourced by: Philippe Liard + +#include <iostream> +#include <set> +#include <string> + +#include <gtest/gtest.h> + +#include "phonemetadata.pb.h" +#include "phonenumber.h" +#include "phonenumber.pb.h" +#include "phonenumberutil.h" +#include "regexp_adapter.h" +#include "test_metadata.h" + +namespace i18n { +namespace phonenumbers { + +using std::endl; +using std::make_pair; +using std::ostream; + +using google::protobuf::RepeatedPtrField; + +namespace { + +// Class containing string constants of region codes for easier testing. +class RegionCode { + public: + static const string& AD() { + static const string s = "AD"; + return s; + } + + static const string& AO() { + static const string s = "AO"; + return s; + } + + static const string& AR() { + static const string s = "AR"; + return s; + } + + static const string& AU() { + static const string s = "AU"; + return s; + } + + static const string& BS() { + static const string s = "BS"; + return s; + } + + static const string& CN() { + static const string s = "CN"; + return s; + } + + static const string& CS() { + static const string s = "CS"; + return s; + } + + static const string& DE() { + static const string s = "DE"; + return s; + } + + static const string& GB() { + static const string s = "GB"; + return s; + } + + static const string& IT() { + static const string s = "IT"; + return s; + } + + static const string& KR() { + static const string s = "KR"; + return s; + } + + static const string& MX() { + static const string s = "MX"; + return s; + } + + static const string& NZ() { + static const string s = "NZ"; + return s; + } + + static const string& PL() { + static const string s = "PL"; + return s; + } + + static const string& RE() { + static const string s = "RE"; + return s; + } + + static const string& SG() { + static const string s = "SG"; + return s; + } + + static const string& US() { + static const string s = "US"; + return s; + } + + static const string& YT() { + static const string s = "YT"; + return s; + } + + // Official code for the unknown region. + static const string& ZZ() { + static const string s = "ZZ"; + return s; + } +}; + +} // namespace + +class TestMetadataProvider : public PhoneNumberUtil::MetadataProvider { + public: + virtual ~TestMetadataProvider() {} + + pair<const void*, unsigned> operator()() { + return make_pair(test_metadata_get(), test_metadata_size()); + } +}; + +class PhoneNumberUtilTest : public testing::Test { + protected: + PhoneNumberUtilTest() : phone_util_(&provider_) {} + + // Wrapper functions for private functions that we want to test. + const PhoneMetadata* GetPhoneMetadata(const string& region_code) const { + return phone_util_.GetMetadataForRegion(region_code); + } + + void GetSupportedRegions(set<string>* regions) { + phone_util_.GetSupportedRegions(regions); + } + + void ExtractPossibleNumber(const string& number, + string* extracted_number) const { + PhoneNumberUtil::ExtractPossibleNumber(number, extracted_number); + } + + bool IsViablePhoneNumber(const string& number) const { + return PhoneNumberUtil::IsViablePhoneNumber(number); + } + + void Normalize(string* number) const { + phone_util_.Normalize(number); + } + + bool IsLeadingZeroPossible(int country_calling_code) const { + return phone_util_.IsLeadingZeroPossible(country_calling_code); + } + + PhoneNumber::CountryCodeSource MaybeStripInternationalPrefixAndNormalize( + const string& possible_idd_prefix, + string* number) const { + return phone_util_.MaybeStripInternationalPrefixAndNormalize( + possible_idd_prefix, + number); + } + + void MaybeStripNationalPrefixAndCarrierCode(const PhoneMetadata& metadata, + string* number, + string* carrier_code) const { + PhoneNumberUtil::MaybeStripNationalPrefixAndCarrierCode(metadata, number, + carrier_code); + } + + bool MaybeStripExtension(string* number, string* extension) const { + return PhoneNumberUtil::MaybeStripExtension(number, extension); + } + + PhoneNumberUtil::ErrorType MaybeExtractCountryCode( + const PhoneMetadata* default_region_metadata, + bool keep_raw_input, + string* national_number, + PhoneNumber* phone_number) const { + return phone_util_.MaybeExtractCountryCode(default_region_metadata, + keep_raw_input, + national_number, + phone_number); + } + + void GetNddPrefixForRegion(const string& region, + bool strip_non_digits, + string* ndd_prefix) const { + // For testing purposes, we check this is empty first. + ndd_prefix->clear(); + phone_util_.GetNddPrefixForRegion(region, strip_non_digits, ndd_prefix); + } + + static bool Equals(const PhoneNumberDesc& expected_number, + const PhoneNumberDesc& actual_number) { + return ExactlySameAs(expected_number, actual_number); + } + + TestMetadataProvider provider_; + PhoneNumberUtil phone_util_; +}; + +// Provides PhoneNumber comparison operators to support the use of EXPECT_EQ and +// EXPECT_NE in the unittests. +bool operator==(const PhoneNumber& number1, const PhoneNumber& number2) { + return ExactlySameAs(number1, number2); +} + +bool operator!=(const PhoneNumber& number1, const PhoneNumber& number2) { + return !(number1 == number2); +} + +// Needed by Google Test to display errors. +ostream& operator<<(ostream& os, const PhoneNumber& number) { + os << endl + << "country_code: " << number.country_code() << endl + << "national_number: " << number.national_number() << endl; + if (number.has_extension()) { + os << "extension: " << number.extension() << endl; + } + if (number.has_italian_leading_zero()) { + os << "italian_leading_zero: " << number.italian_leading_zero() << endl; + } + if (number.has_raw_input()) { + os << "raw_input: " << number.raw_input() << endl; + } + if (number.has_country_code_source()) { + os << "country_code_source: " << number.country_code_source() << endl; + } + if (number.has_preferred_domestic_carrier_code()) { + os << "preferred_domestic_carrier_code: " + << number.preferred_domestic_carrier_code() << endl; + } + return os; +} + +TEST_F(PhoneNumberUtilTest, GetSupportedRegions) { + set<string> regions; + + GetSupportedRegions(®ions); + EXPECT_GT(regions.size(), 0U); +} + +TEST_F(PhoneNumberUtilTest, GetInstanceLoadUSMetadata) { + const PhoneMetadata* metadata = GetPhoneMetadata(RegionCode::US()); + EXPECT_EQ("US", metadata->id()); + EXPECT_EQ(1, metadata->country_code()); + EXPECT_EQ("011", metadata->international_prefix()); + EXPECT_TRUE(metadata->has_national_prefix()); + ASSERT_EQ(2, metadata->number_format_size()); + EXPECT_EQ("(\\d{3})(\\d{3})(\\d{4})", + metadata->number_format(0).pattern()); + EXPECT_EQ("$1 $2 $3", metadata->number_format(0).format()); + EXPECT_EQ("[13-9]\\d{9}|2[0-35-9]\\d{8}", + metadata->general_desc().national_number_pattern()); + EXPECT_EQ("\\d{7}(?:\\d{3})?", + metadata->general_desc().possible_number_pattern()); + EXPECT_TRUE(Equals(metadata->general_desc(), metadata->fixed_line())); + EXPECT_EQ("\\d{10}", metadata->toll_free().possible_number_pattern()); + EXPECT_EQ("900\\d{7}", metadata->premium_rate().national_number_pattern()); + // No shared-cost data is available, so it should be initialised to "NA". + EXPECT_EQ("NA", metadata->shared_cost().national_number_pattern()); + EXPECT_EQ("NA", metadata->shared_cost().possible_number_pattern()); +} + +TEST_F(PhoneNumberUtilTest, GetInstanceLoadDEMetadata) { + const PhoneMetadata* metadata = GetPhoneMetadata(RegionCode::DE()); + EXPECT_EQ("DE", metadata->id()); + EXPECT_EQ(49, metadata->country_code()); + EXPECT_EQ("00", metadata->international_prefix()); + EXPECT_EQ("0", metadata->national_prefix()); + ASSERT_EQ(6, metadata->number_format_size()); + EXPECT_EQ(1, metadata->number_format(5).leading_digits_pattern_size()); + EXPECT_EQ("900", metadata->number_format(5).leading_digits_pattern(0)); + EXPECT_EQ("(\\d{3})(\\d{3,4})(\\d{4})", + metadata->number_format(5).pattern()); + EXPECT_EQ("$1 $2 $3", metadata->number_format(5).format()); + EXPECT_EQ("(?:[24-6]\\d{2}|3[03-9]\\d|[789](?:[1-9]\\d|0[2-9]))\\d{3,8}", + metadata->fixed_line().national_number_pattern()); + EXPECT_EQ("\\d{2,14}", metadata->fixed_line().possible_number_pattern()); + EXPECT_EQ("30123456", metadata->fixed_line().example_number()); + EXPECT_EQ("\\d{10}", metadata->toll_free().possible_number_pattern()); + EXPECT_EQ("900([135]\\d{6}|9\\d{7})", + metadata->premium_rate().national_number_pattern()); +} + +TEST_F(PhoneNumberUtilTest, GetInstanceLoadARMetadata) { + const PhoneMetadata* metadata = GetPhoneMetadata(RegionCode::AR()); + EXPECT_EQ("AR", metadata->id()); + EXPECT_EQ(54, metadata->country_code()); + EXPECT_EQ("00", metadata->international_prefix()); + EXPECT_EQ("0", metadata->national_prefix()); + EXPECT_EQ("0(?:(11|343|3715)15)?", metadata->national_prefix_for_parsing()); + EXPECT_EQ("9$1", metadata->national_prefix_transform_rule()); + ASSERT_EQ(5, metadata->number_format_size()); + EXPECT_EQ("$1 15 $2-$3", metadata->number_format(2).format()); + EXPECT_EQ("9(\\d{4})(\\d{2})(\\d{4})", metadata->number_format(3).pattern()); + EXPECT_EQ("(9)(\\d{4})(\\d{2})(\\d{4})", + metadata->intl_number_format(3).pattern()); + EXPECT_EQ("$1 $2 $3 $4", metadata->intl_number_format(3).format()); +} + +TEST_F(PhoneNumberUtilTest, GetNationalSignificantNumber) { + PhoneNumber number; + number.set_country_code(1); + number.set_national_number(6502530000ULL); + string national_significant_number; + phone_util_.GetNationalSignificantNumber(number, + &national_significant_number); + EXPECT_EQ("6502530000", national_significant_number); + + // An Italian mobile number. + national_significant_number.clear(); + number.set_country_code(39); + number.set_national_number(312345678ULL); + phone_util_.GetNationalSignificantNumber(number, + &national_significant_number); + EXPECT_EQ("312345678", national_significant_number); + + // An Italian fixed line number. + national_significant_number.clear(); + number.set_country_code(39); + number.set_national_number(236618300ULL); + number.set_italian_leading_zero(true); + phone_util_.GetNationalSignificantNumber(number, + &national_significant_number); + EXPECT_EQ("0236618300", national_significant_number); +} + +TEST_F(PhoneNumberUtilTest, GetExampleNumber) { + PhoneNumber de_number; + de_number.set_country_code(49); + de_number.set_national_number(30123456ULL); + PhoneNumber test_number; + bool success = phone_util_.GetExampleNumber(RegionCode::DE(), &test_number); + EXPECT_TRUE(success); + EXPECT_EQ(de_number, test_number); + success = phone_util_.GetExampleNumberForType(RegionCode::DE(), + PhoneNumberUtil::FIXED_LINE, + &test_number); + EXPECT_TRUE(success); + EXPECT_EQ(de_number, test_number); + test_number.Clear(); + success = phone_util_.GetExampleNumberForType(RegionCode::DE(), + PhoneNumberUtil::MOBILE, + &test_number); + // Here we test that an example number was not returned, and that the number + // passed in was not modified. + EXPECT_FALSE(success); + EXPECT_EQ(PhoneNumber::default_instance(), test_number); + // For the US, the example number is placed under general description, and + // hence should be used for both fixed line and mobile, so neither of these + // should return null. + test_number.Clear(); + success = phone_util_.GetExampleNumberForType(RegionCode::US(), + PhoneNumberUtil::FIXED_LINE, + &test_number); + // Here we test that the call to get an example number succeeded, and that the + // number passed in was modified. + EXPECT_TRUE(success); + EXPECT_NE(PhoneNumber::default_instance(), test_number); + test_number.Clear(); + success = phone_util_.GetExampleNumberForType(RegionCode::US(), + PhoneNumberUtil::MOBILE, + &test_number); + EXPECT_TRUE(success); + EXPECT_NE(PhoneNumber::default_instance(), test_number); +} + +TEST_F(PhoneNumberUtilTest, FormatUSNumber) { + PhoneNumber test_number; + string formatted_number; + test_number.set_country_code(1); + test_number.set_national_number(6502530000ULL); + phone_util_.Format(test_number, PhoneNumberUtil::NATIONAL, &formatted_number); + EXPECT_EQ("650 253 0000", formatted_number); + phone_util_.Format(test_number, PhoneNumberUtil::INTERNATIONAL, + &formatted_number); + EXPECT_EQ("+1 650 253 0000", formatted_number); + + test_number.set_national_number(8002530000ULL); + phone_util_.Format(test_number, PhoneNumberUtil::NATIONAL, &formatted_number); + EXPECT_EQ("800 253 0000", formatted_number); + phone_util_.Format(test_number, PhoneNumberUtil::INTERNATIONAL, + &formatted_number); + EXPECT_EQ("+1 800 253 0000", formatted_number); + + test_number.set_national_number(9002530000ULL); + phone_util_.Format(test_number, PhoneNumberUtil::NATIONAL, &formatted_number); + EXPECT_EQ("900 253 0000", formatted_number); + phone_util_.Format(test_number, PhoneNumberUtil::INTERNATIONAL, + &formatted_number); + EXPECT_EQ("+1 900 253 0000", formatted_number); + phone_util_.Format(test_number, PhoneNumberUtil::RFC3966, &formatted_number); + EXPECT_EQ("+1-900-253-0000", formatted_number); +} + +TEST_F(PhoneNumberUtilTest, FormatBSNumber) { + PhoneNumber test_number; + string formatted_number; + test_number.set_country_code(1); + test_number.set_national_number(2421234567ULL); + phone_util_.Format(test_number, PhoneNumberUtil::NATIONAL, &formatted_number); + EXPECT_EQ("242 123 4567", formatted_number); + phone_util_.Format(test_number, PhoneNumberUtil::INTERNATIONAL, + &formatted_number); + EXPECT_EQ("+1 242 123 4567", formatted_number); + + test_number.set_national_number(8002530000ULL); + phone_util_.Format(test_number, PhoneNumberUtil::NATIONAL, &formatted_number); + EXPECT_EQ("800 253 0000", formatted_number); + phone_util_.Format(test_number, PhoneNumberUtil::INTERNATIONAL, + &formatted_number); + EXPECT_EQ("+1 800 253 0000", formatted_number); + + test_number.set_national_number(9002530000ULL); + phone_util_.Format(test_number, PhoneNumberUtil::NATIONAL, &formatted_number); + EXPECT_EQ("900 253 0000", formatted_number); + phone_util_.Format(test_number, PhoneNumberUtil::INTERNATIONAL, + &formatted_number); + EXPECT_EQ("+1 900 253 0000", formatted_number); +} + +TEST_F(PhoneNumberUtilTest, FormatGBNumber) { + PhoneNumber test_number; + string formatted_number; + test_number.set_country_code(44); + test_number.set_national_number(2087389353ULL); + phone_util_.Format(test_number, PhoneNumberUtil::NATIONAL, &formatted_number); + EXPECT_EQ("(020) 8738 9353", formatted_number); + phone_util_.Format(test_number, PhoneNumberUtil::INTERNATIONAL, + &formatted_number); + EXPECT_EQ("+44 20 8738 9353", formatted_number); + + test_number.set_national_number(7912345678ULL); + phone_util_.Format(test_number, PhoneNumberUtil::NATIONAL, &formatted_number); + EXPECT_EQ("(07912) 345 678", formatted_number); + phone_util_.Format(test_number, PhoneNumberUtil::INTERNATIONAL, + &formatted_number); + EXPECT_EQ("+44 7912 345 678", formatted_number); +} + +TEST_F(PhoneNumberUtilTest, FormatDENumber) { + PhoneNumber test_number; + string formatted_number; + test_number.set_country_code(49); + test_number.set_national_number(301234ULL); + phone_util_.Format(test_number, PhoneNumberUtil::NATIONAL, &formatted_number); + EXPECT_EQ("030/1234", formatted_number); + phone_util_.Format(test_number, PhoneNumberUtil::INTERNATIONAL, + &formatted_number); + EXPECT_EQ("+49 30/1234", formatted_number); + phone_util_.Format(test_number, PhoneNumberUtil::RFC3966, &formatted_number); + EXPECT_EQ("+49-30-1234", formatted_number); + + test_number.set_national_number(291123ULL); + phone_util_.Format(test_number, PhoneNumberUtil::NATIONAL, &formatted_number); + EXPECT_EQ("0291 123", formatted_number); + phone_util_.Format(test_number, PhoneNumberUtil::INTERNATIONAL, + &formatted_number); + EXPECT_EQ("+49 291 123", formatted_number); + + test_number.set_national_number(29112345678ULL); + phone_util_.Format(test_number, PhoneNumberUtil::NATIONAL, &formatted_number); + EXPECT_EQ("0291 12345678", formatted_number); + phone_util_.Format(test_number, PhoneNumberUtil::INTERNATIONAL, + &formatted_number); + EXPECT_EQ("+49 291 12345678", formatted_number); + + test_number.set_national_number(9123123ULL); + phone_util_.Format(test_number, PhoneNumberUtil::NATIONAL, &formatted_number); + EXPECT_EQ("09123 123", formatted_number); + phone_util_.Format(test_number, PhoneNumberUtil::INTERNATIONAL, + &formatted_number); + EXPECT_EQ("+49 9123 123", formatted_number); + + test_number.set_national_number(80212345ULL); + phone_util_.Format(test_number, PhoneNumberUtil::NATIONAL, &formatted_number); + EXPECT_EQ("08021 2345", formatted_number); + phone_util_.Format(test_number, PhoneNumberUtil::INTERNATIONAL, + &formatted_number); + EXPECT_EQ("+49 8021 2345", formatted_number); + + test_number.set_national_number(1234ULL); + // Note this number is correctly formatted without national prefix. Most of + // the numbers that are treated as invalid numbers by the library are short + // numbers, and they are usually not dialed with national prefix. + phone_util_.Format(test_number, PhoneNumberUtil::NATIONAL, &formatted_number); + EXPECT_EQ("1234", formatted_number); + phone_util_.Format(test_number, PhoneNumberUtil::INTERNATIONAL, + &formatted_number); + EXPECT_EQ("+49 1234", formatted_number); +} + +TEST_F(PhoneNumberUtilTest, FormatITNumber) { + PhoneNumber test_number; + string formatted_number; + test_number.set_country_code(39); + test_number.set_national_number(236618300ULL); + test_number.set_italian_leading_zero(true); + phone_util_.Format(test_number, PhoneNumberUtil::NATIONAL, &formatted_number); + EXPECT_EQ("02 3661 8300", formatted_number); + phone_util_.Format(test_number, PhoneNumberUtil::INTERNATIONAL, + &formatted_number); + EXPECT_EQ("+39 02 3661 8300", formatted_number); + phone_util_.Format(test_number, PhoneNumberUtil::E164, + &formatted_number); + EXPECT_EQ("+390236618300", formatted_number); + + test_number.set_national_number(345678901ULL); + test_number.set_italian_leading_zero(false); + phone_util_.Format(test_number, PhoneNumberUtil::NATIONAL, &formatted_number); + EXPECT_EQ("345 678 901", formatted_number); + phone_util_.Format(test_number, PhoneNumberUtil::INTERNATIONAL, + &formatted_number); + EXPECT_EQ("+39 345 678 901", formatted_number); + phone_util_.Format(test_number, PhoneNumberUtil::E164, + &formatted_number); + EXPECT_EQ("+39345678901", formatted_number); +} + +TEST_F(PhoneNumberUtilTest, FormatAUNumber) { + PhoneNumber test_number; + string formatted_number; + test_number.set_country_code(61); + test_number.set_national_number(236618300ULL); + phone_util_.Format(test_number, PhoneNumberUtil::NATIONAL, &formatted_number); + EXPECT_EQ("02 3661 8300", formatted_number); + phone_util_.Format(test_number, PhoneNumberUtil::INTERNATIONAL, + &formatted_number); + EXPECT_EQ("+61 2 3661 8300", formatted_number); + phone_util_.Format(test_number, PhoneNumberUtil::E164, + &formatted_number); + EXPECT_EQ("+61236618300", formatted_number); + + test_number.set_national_number(1800123456ULL); + phone_util_.Format(test_number, PhoneNumberUtil::NATIONAL, &formatted_number); + EXPECT_EQ("1800 123 456", formatted_number); + phone_util_.Format(test_number, PhoneNumberUtil::INTERNATIONAL, + &formatted_number); + EXPECT_EQ("+61 1800 123 456", formatted_number); + phone_util_.Format(test_number, PhoneNumberUtil::E164, + &formatted_number); + EXPECT_EQ("+611800123456", formatted_number); +} + +TEST_F(PhoneNumberUtilTest, FormatARNumber) { + PhoneNumber test_number; + string formatted_number; + test_number.set_country_code(54); + test_number.set_national_number(1187654321ULL); + phone_util_.Format(test_number, PhoneNumberUtil::NATIONAL, &formatted_number); + EXPECT_EQ("011 8765-4321", formatted_number); + phone_util_.Format(test_number, PhoneNumberUtil::INTERNATIONAL, + &formatted_number); + EXPECT_EQ("+54 11 8765-4321", formatted_number); + phone_util_.Format(test_number, PhoneNumberUtil::E164, + &formatted_number); + EXPECT_EQ("+541187654321", formatted_number); + + test_number.set_national_number(91187654321ULL); + phone_util_.Format(test_number, PhoneNumberUtil::NATIONAL, &formatted_number); + EXPECT_EQ("011 15 8765-4321", formatted_number); + phone_util_.Format(test_number, PhoneNumberUtil::INTERNATIONAL, + &formatted_number); + EXPECT_EQ("+54 9 11 8765 4321", formatted_number); + phone_util_.Format(test_number, PhoneNumberUtil::E164, + &formatted_number); + EXPECT_EQ("+5491187654321", formatted_number); +} + +TEST_F(PhoneNumberUtilTest, FormatOutOfCountryCallingNumber) { + PhoneNumber test_number; + string formatted_number; + test_number.set_country_code(1); + test_number.set_national_number(9002530000ULL); + phone_util_.FormatOutOfCountryCallingNumber(test_number, RegionCode::DE(), + &formatted_number); + EXPECT_EQ("00 1 900 253 0000", formatted_number); + + test_number.set_national_number(6502530000ULL); + phone_util_.FormatOutOfCountryCallingNumber(test_number, RegionCode::BS(), + &formatted_number); + EXPECT_EQ("1 650 253 0000", formatted_number); + phone_util_.FormatOutOfCountryCallingNumber(test_number, RegionCode::PL(), + &formatted_number); + EXPECT_EQ("0~0 1 650 253 0000", formatted_number); + + test_number.set_country_code(44); + test_number.set_national_number(7912345678ULL); + phone_util_.FormatOutOfCountryCallingNumber(test_number, RegionCode::US(), + &formatted_number); + EXPECT_EQ("011 44 7912 345 678", formatted_number); + + test_number.set_country_code(49); + test_number.set_national_number(1234ULL); + phone_util_.FormatOutOfCountryCallingNumber(test_number, RegionCode::GB(), + &formatted_number); + EXPECT_EQ("00 49 1234", formatted_number); + // Note this number is correctly formatted without national prefix. Most of + // the numbers that are treated as invalid numbers by the library are short + // numbers, and they are usually not dialed with national prefix. + phone_util_.FormatOutOfCountryCallingNumber(test_number, RegionCode::DE(), + &formatted_number); + EXPECT_EQ("1234", formatted_number); + + test_number.set_country_code(39); + test_number.set_national_number(236618300ULL); + test_number.set_italian_leading_zero(true); + phone_util_.FormatOutOfCountryCallingNumber(test_number, RegionCode::US(), + &formatted_number); + EXPECT_EQ("011 39 02 3661 8300", formatted_number); + phone_util_.FormatOutOfCountryCallingNumber(test_number, RegionCode::IT(), + &formatted_number); + EXPECT_EQ("02 3661 8300", formatted_number); + phone_util_.FormatOutOfCountryCallingNumber(test_number, RegionCode::SG(), + &formatted_number); + EXPECT_EQ("+39 02 3661 8300", formatted_number); + + test_number.set_country_code(65); + test_number.set_national_number(94777892ULL); + test_number.set_italian_leading_zero(false); + phone_util_.FormatOutOfCountryCallingNumber(test_number, RegionCode::SG(), + &formatted_number); + EXPECT_EQ("9477 7892", formatted_number); + + test_number.set_country_code(54); + test_number.set_national_number(91187654321ULL); + phone_util_.FormatOutOfCountryCallingNumber(test_number, RegionCode::US(), + &formatted_number); + EXPECT_EQ("011 54 9 11 8765 4321", formatted_number); + + test_number.set_extension("1234"); + phone_util_.FormatOutOfCountryCallingNumber(test_number, RegionCode::US(), + &formatted_number); + EXPECT_EQ("011 54 9 11 8765 4321 ext. 1234", formatted_number); + phone_util_.FormatOutOfCountryCallingNumber(test_number, RegionCode::AU(), + &formatted_number); + EXPECT_EQ("0011 54 9 11 8765 4321 ext. 1234", formatted_number); + phone_util_.FormatOutOfCountryCallingNumber(test_number, RegionCode::AR(), + &formatted_number); + EXPECT_EQ("011 15 8765-4321 ext. 1234", formatted_number); +} + +TEST_F(PhoneNumberUtilTest, FormatOutOfCountryWithPreferredIntlPrefix) { + PhoneNumber test_number; + string formatted_number; + test_number.set_country_code(39); + test_number.set_national_number(236618300ULL); + test_number.set_italian_leading_zero(true); + // This should use 0011, since that is the preferred international prefix + // (both 0011 and 0012 are accepted as possible international prefixes in our + // test metadta.) + phone_util_.FormatOutOfCountryCallingNumber(test_number, RegionCode::AU(), + &formatted_number); + EXPECT_EQ("0011 39 02 3661 8300", formatted_number); +} + +TEST_F(PhoneNumberUtilTest, FormatOutOfCountryKeepingAlphaChars) { + PhoneNumber alpha_numeric_number; + string formatted_number; + alpha_numeric_number.set_country_code(1); + alpha_numeric_number.set_national_number(8007493524ULL); + alpha_numeric_number.set_raw_input("1800 six-flag"); + phone_util_.FormatOutOfCountryKeepingAlphaChars(alpha_numeric_number, + RegionCode::AU(), + &formatted_number); + EXPECT_EQ("0011 1 800 SIX-FLAG", formatted_number); + + formatted_number.clear(); + alpha_numeric_number.set_raw_input("1-800-SIX-flag"); + phone_util_.FormatOutOfCountryKeepingAlphaChars(alpha_numeric_number, + RegionCode::AU(), + &formatted_number); + EXPECT_EQ("0011 1 800-SIX-FLAG", formatted_number); + + formatted_number.clear(); + alpha_numeric_number.set_raw_input("Call us from UK: 00 1 800 SIX-flag"); + phone_util_.FormatOutOfCountryKeepingAlphaChars(alpha_numeric_number, + RegionCode::AU(), + &formatted_number); + EXPECT_EQ("0011 1 800 SIX-FLAG", formatted_number); + + formatted_number.clear(); + alpha_numeric_number.set_raw_input("800 SIX-flag"); + phone_util_.FormatOutOfCountryKeepingAlphaChars(alpha_numeric_number, + RegionCode::AU(), + &formatted_number); + EXPECT_EQ("0011 1 800 SIX-FLAG", formatted_number); + + // Formatting from within the NANPA region. + formatted_number.clear(); + phone_util_.FormatOutOfCountryKeepingAlphaChars(alpha_numeric_number, + RegionCode::US(), + &formatted_number); + EXPECT_EQ("1 800 SIX-FLAG", formatted_number); + formatted_number.clear(); + phone_util_.FormatOutOfCountryKeepingAlphaChars(alpha_numeric_number, + RegionCode::BS(), + &formatted_number); + EXPECT_EQ("1 800 SIX-FLAG", formatted_number); + + // Testing that if the raw input doesn't exist, it is formatted using + // FormatOutOfCountryCallingNumber. + alpha_numeric_number.clear_raw_input(); + formatted_number.clear(); + phone_util_.FormatOutOfCountryKeepingAlphaChars(alpha_numeric_number, + RegionCode::DE(), + &formatted_number); + EXPECT_EQ("00 1 800 749 3524", formatted_number); + + // Testing AU alpha number formatted from Australia. + alpha_numeric_number.set_country_code(61); + alpha_numeric_number.set_national_number(827493524ULL); + alpha_numeric_number.set_raw_input("+61 82749-FLAG"); + formatted_number.clear(); + phone_util_.FormatOutOfCountryKeepingAlphaChars(alpha_numeric_number, + RegionCode::AU(), + &formatted_number); + // This number should have the national prefix prefixed. + EXPECT_EQ("082749-FLAG", formatted_number); + + alpha_numeric_number.set_raw_input("082749-FLAG"); + formatted_number.clear(); + phone_util_.FormatOutOfCountryKeepingAlphaChars(alpha_numeric_number, + RegionCode::AU(), + &formatted_number); + EXPECT_EQ("082749-FLAG", formatted_number); + + alpha_numeric_number.set_national_number(18007493524ULL); + alpha_numeric_number.set_raw_input("1-800-SIX-flag"); + formatted_number.clear(); + phone_util_.FormatOutOfCountryKeepingAlphaChars(alpha_numeric_number, + RegionCode::AU(), + &formatted_number); + // This number should not have the national prefix prefixed, in accordance + // with the override for this specific formatting rule. + EXPECT_EQ("1-800-SIX-FLAG", formatted_number); + // The metadata should not be permanently changed, since we copied it before + // modifying patterns. Here we check this. + formatted_number.clear(); + alpha_numeric_number.set_national_number(1800749352ULL); + phone_util_.FormatOutOfCountryCallingNumber(alpha_numeric_number, + RegionCode::AU(), + &formatted_number); + EXPECT_EQ("1800 749 352", formatted_number); + + // Testing a country with multiple international prefixes. + formatted_number.clear(); + phone_util_.FormatOutOfCountryKeepingAlphaChars(alpha_numeric_number, + RegionCode::SG(), + &formatted_number); + EXPECT_EQ("+61 1-800-SIX-FLAG", formatted_number); + + // Testing the case with an invalid country code. + formatted_number.clear(); + alpha_numeric_number.set_country_code(0); + alpha_numeric_number.set_national_number(18007493524ULL); + alpha_numeric_number.set_raw_input("1-800-SIX-flag"); + phone_util_.FormatOutOfCountryKeepingAlphaChars(alpha_numeric_number, + RegionCode::DE(), + &formatted_number); + // Uses the raw input only. + EXPECT_EQ("1-800-SIX-flag", formatted_number); + + // Testing the case of an invalid alpha number. + formatted_number.clear(); + alpha_numeric_number.set_country_code(1); + alpha_numeric_number.set_national_number(80749ULL); + alpha_numeric_number.set_raw_input("180-SIX"); + phone_util_.FormatOutOfCountryKeepingAlphaChars(alpha_numeric_number, + RegionCode::DE(), + &formatted_number); + // No country-code stripping can be done. + EXPECT_EQ("00 1 180-SIX", formatted_number); +} + +TEST_F(PhoneNumberUtilTest, FormatWithCarrierCode) { + // We only support this for AR in our test metadata. + PhoneNumber ar_number; + string formatted_number; + ar_number.set_country_code(54); + ar_number.set_national_number(91234125678ULL); + phone_util_.Format(ar_number, PhoneNumberUtil::NATIONAL, &formatted_number); + EXPECT_EQ("01234 12-5678", formatted_number); + // Test formatting with a carrier code. + phone_util_.FormatNationalNumberWithCarrierCode(ar_number, "15", + &formatted_number); + EXPECT_EQ("01234 15 12-5678", formatted_number); + phone_util_.FormatNationalNumberWithCarrierCode(ar_number, "", + &formatted_number); + EXPECT_EQ("01234 12-5678", formatted_number); + // Here the international rule is used, so no carrier code should be present. + phone_util_.Format(ar_number, PhoneNumberUtil::E164, &formatted_number); + EXPECT_EQ("+5491234125678", formatted_number); + // We don't support this for the US so there should be no change. + PhoneNumber us_number; + us_number.set_country_code(1); + us_number.set_national_number(4241231234ULL); + phone_util_.Format(us_number, PhoneNumberUtil::NATIONAL, &formatted_number); + EXPECT_EQ("424 123 1234", formatted_number); + phone_util_.FormatNationalNumberWithCarrierCode(us_number, "15", + &formatted_number); + EXPECT_EQ("424 123 1234", formatted_number); +} + +TEST_F(PhoneNumberUtilTest, FormatWithPreferredCarrierCode) { + // We only support this for AR in our test metadata. + PhoneNumber ar_number; + string formatted_number; + ar_number.set_country_code(54); + ar_number.set_national_number(91234125678ULL); + // Test formatting with no preferred carrier code stored in the number itself. + phone_util_.FormatNationalNumberWithPreferredCarrierCode(ar_number, "15", + &formatted_number); + EXPECT_EQ("01234 15 12-5678", formatted_number); + phone_util_.FormatNationalNumberWithPreferredCarrierCode(ar_number, "", + &formatted_number); + EXPECT_EQ("01234 12-5678", formatted_number); + // Test formatting with preferred carrier code present. + ar_number.set_preferred_domestic_carrier_code("19"); + phone_util_.Format(ar_number, PhoneNumberUtil::NATIONAL, &formatted_number); + EXPECT_EQ("01234 12-5678", formatted_number); + phone_util_.FormatNationalNumberWithPreferredCarrierCode(ar_number, "15", + &formatted_number); + EXPECT_EQ("01234 19 12-5678", formatted_number); + phone_util_.FormatNationalNumberWithPreferredCarrierCode(ar_number, "", + &formatted_number); + EXPECT_EQ("01234 19 12-5678", formatted_number); + // When the preferred_domestic_carrier_code is present (even when it contains + // an empty string), use it instead of the default carrier code passed in. + ar_number.set_preferred_domestic_carrier_code(""); + phone_util_.FormatNationalNumberWithPreferredCarrierCode(ar_number, "15", + &formatted_number); + EXPECT_EQ("01234 12-5678", formatted_number); + // We don't support this for the US so there should be no change. + PhoneNumber us_number; + us_number.set_country_code(1); + us_number.set_national_number(4241231234ULL); + us_number.set_preferred_domestic_carrier_code("99"); + phone_util_.Format(us_number, PhoneNumberUtil::NATIONAL, &formatted_number); + EXPECT_EQ("424 123 1234", formatted_number); + phone_util_.FormatNationalNumberWithPreferredCarrierCode(us_number, "15", + &formatted_number); + EXPECT_EQ("424 123 1234", formatted_number); +} + +TEST_F(PhoneNumberUtilTest, FormatByPattern) { + PhoneNumber test_number; + string formatted_number; + test_number.set_country_code(1); + test_number.set_national_number(6502530000ULL); + + RepeatedPtrField<NumberFormat> number_formats; + NumberFormat* number_format = number_formats.Add(); + number_format->set_pattern("(\\d{3})(\\d{3})(\\d{4})"); + number_format->set_format("($1) $2-$3"); + phone_util_.FormatByPattern(test_number, PhoneNumberUtil::NATIONAL, + number_formats, + &formatted_number); + EXPECT_EQ("(650) 253-0000", formatted_number); + phone_util_.FormatByPattern(test_number, PhoneNumberUtil::INTERNATIONAL, + number_formats, + &formatted_number); + EXPECT_EQ("+1 (650) 253-0000", formatted_number); + + // $NP is set to '1' for the US. Here we check that for other NANPA countries + // the US rules are followed. + number_format->set_national_prefix_formatting_rule("$NP ($FG)"); + number_format->set_format("$1 $2-$3"); + test_number.set_country_code(1); + test_number.set_national_number(4168819999ULL); + phone_util_.FormatByPattern(test_number, PhoneNumberUtil::NATIONAL, + number_formats, + &formatted_number); + EXPECT_EQ("1 (416) 881-9999", formatted_number); + phone_util_.FormatByPattern(test_number, PhoneNumberUtil::INTERNATIONAL, + number_formats, + &formatted_number); + EXPECT_EQ("+1 416 881-9999", formatted_number); + + test_number.set_country_code(39); + test_number.set_national_number(236618300ULL); + test_number.set_italian_leading_zero(true); + number_format->set_pattern("(\\d{2})(\\d{5})(\\d{3})"); + number_format->set_format("$1-$2 $3"); + phone_util_.FormatByPattern(test_number, PhoneNumberUtil::NATIONAL, + number_formats, + &formatted_number); + EXPECT_EQ("02-36618 300", formatted_number); + phone_util_.FormatByPattern(test_number, PhoneNumberUtil::INTERNATIONAL, + number_formats, + &formatted_number); + EXPECT_EQ("+39 02-36618 300", formatted_number); + + test_number.set_country_code(44); + test_number.set_national_number(2012345678ULL); + test_number.set_italian_leading_zero(false); + number_format->set_national_prefix_formatting_rule("$NP$FG"); + number_format->set_pattern("(\\d{2})(\\d{4})(\\d{4})"); + number_format->set_format("$1 $2 $3"); + phone_util_.FormatByPattern(test_number, PhoneNumberUtil::NATIONAL, + number_formats, + &formatted_number); + EXPECT_EQ("020 1234 5678", formatted_number); + + number_format->set_national_prefix_formatting_rule("($NP$FG)"); + phone_util_.FormatByPattern(test_number, PhoneNumberUtil::NATIONAL, + number_formats, + &formatted_number); + EXPECT_EQ("(020) 1234 5678", formatted_number); + number_format->set_national_prefix_formatting_rule(""); + phone_util_.FormatByPattern(test_number, PhoneNumberUtil::NATIONAL, + number_formats, + &formatted_number); + EXPECT_EQ("20 1234 5678", formatted_number); + number_format->set_national_prefix_formatting_rule(""); + phone_util_.FormatByPattern(test_number, PhoneNumberUtil::INTERNATIONAL, + number_formats, + &formatted_number); + EXPECT_EQ("+44 20 1234 5678", formatted_number); +} + +TEST_F(PhoneNumberUtilTest, FormatE164Number) { + PhoneNumber test_number; + string formatted_number; + test_number.set_country_code(1); + test_number.set_national_number(6502530000ULL); + phone_util_.Format(test_number, PhoneNumberUtil::E164, &formatted_number); + EXPECT_EQ("+16502530000", formatted_number); + + test_number.set_country_code(49); + test_number.set_national_number(301234ULL); + phone_util_.Format(test_number, PhoneNumberUtil::E164, &formatted_number); + EXPECT_EQ("+49301234", formatted_number); +} + +TEST_F(PhoneNumberUtilTest, FormatNumberWithExtension) { + PhoneNumber nz_number; + nz_number.set_country_code(64); + nz_number.set_national_number(33316005ULL); + nz_number.set_extension("1234"); + string formatted_number; + // Uses default extension prefix: + phone_util_.Format(nz_number, PhoneNumberUtil::NATIONAL, &formatted_number); + EXPECT_EQ("03-331 6005 ext. 1234", formatted_number); + // Uses RFC 3966 syntax. + phone_util_.Format(nz_number, PhoneNumberUtil::RFC3966, &formatted_number); + EXPECT_EQ("+64-3-331-6005;ext=1234", formatted_number); + // Extension prefix overridden in the territory information for the US: + PhoneNumber us_number_with_extension; + us_number_with_extension.set_country_code(1); + us_number_with_extension.set_national_number(6502530000ULL); + us_number_with_extension.set_extension("4567"); + phone_util_.Format(us_number_with_extension, + PhoneNumberUtil::NATIONAL, &formatted_number); + EXPECT_EQ("650 253 0000 extn. 4567", formatted_number); +} + +TEST_F(PhoneNumberUtilTest, GetLengthOfGeographicalAreaCode) { + PhoneNumber number; + // Google MTV, which has area code "650". + number.set_country_code(1); + number.set_national_number(6502530000ULL); + EXPECT_EQ(3, phone_util_.GetLengthOfGeographicalAreaCode(number)); + + // A North America toll-free number, which has no area code. + number.set_country_code(1); + number.set_national_number(8002530000ULL); + EXPECT_EQ(0, phone_util_.GetLengthOfGeographicalAreaCode(number)); + + // An invalid US number (1 digit shorter), which has no area code. + number.set_country_code(1); + number.set_national_number(650253000ULL); + EXPECT_EQ(0, phone_util_.GetLengthOfGeographicalAreaCode(number)); + + // Google London, which has area code "20". + number.set_country_code(44); + number.set_national_number(2070313000ULL); + EXPECT_EQ(2, phone_util_.GetLengthOfGeographicalAreaCode(number)); + + // A UK mobile phone, which has no area code. + number.set_country_code(44); + number.set_national_number(7123456789ULL); + EXPECT_EQ(0, phone_util_.GetLengthOfGeographicalAreaCode(number)); + + // Google Buenos Aires, which has area code "11". + number.set_country_code(54); + number.set_national_number(1155303000ULL); + EXPECT_EQ(2, phone_util_.GetLengthOfGeographicalAreaCode(number)); + + // Google Sydney, which has area code "2". + number.set_country_code(61); + number.set_national_number(293744000ULL); + EXPECT_EQ(1, phone_util_.GetLengthOfGeographicalAreaCode(number)); + + // Google Singapore. Singapore has no area code and no national prefix. + number.set_country_code(65); + number.set_national_number(65218000ULL); + EXPECT_EQ(0, phone_util_.GetLengthOfGeographicalAreaCode(number)); +} + +TEST_F(PhoneNumberUtilTest, GetLengthOfNationalDestinationCode) { + PhoneNumber number; + // Google MTV, which has national destination code (NDC) "650". + number.set_country_code(1); + number.set_national_number(6502530000ULL); + EXPECT_EQ(3, phone_util_.GetLengthOfNationalDestinationCode(number)); + + // A North America toll-free number, which has NDC "800". + number.set_country_code(1); + number.set_national_number(8002530000ULL); + EXPECT_EQ(3, phone_util_.GetLengthOfNationalDestinationCode(number)); + + // Google London, which has NDC "20". + number.set_country_code(44); + number.set_national_number(2070313000ULL); + EXPECT_EQ(2, phone_util_.GetLengthOfNationalDestinationCode(number)); + + // A UK mobile phone, which has NDC "7123" + number.set_country_code(44); + number.set_national_number(7123456789ULL); + EXPECT_EQ(4, phone_util_.GetLengthOfNationalDestinationCode(number)); + + // Google Buenos Aires, which has NDC "11". + number.set_country_code(54); + number.set_national_number(1155303000ULL); + EXPECT_EQ(2, phone_util_.GetLengthOfNationalDestinationCode(number)); + + // Google Sydney, which has NDC "2". + number.set_country_code(61); + number.set_national_number(293744000ULL); + EXPECT_EQ(1, phone_util_.GetLengthOfNationalDestinationCode(number)); + + // Google Singapore. Singapore has NDC "6521". + number.set_country_code(65); + number.set_national_number(65218000ULL); + EXPECT_EQ(4, phone_util_.GetLengthOfNationalDestinationCode(number)); + + // An invalid US number (1 digit shorter), which has no NDC. + number.set_country_code(1); + number.set_national_number(650253000ULL); + EXPECT_EQ(0, phone_util_.GetLengthOfNationalDestinationCode(number)); + + // A number containing an invalid country code, which shouldn't have any NDC. + number.set_country_code(123); + number.set_national_number(650253000ULL); + EXPECT_EQ(0, phone_util_.GetLengthOfNationalDestinationCode(number)); + + // A number that has only one group of digits after country code when + // formatted in the international format. + number.set_country_code(376); + number.set_national_number(12345ULL); + EXPECT_EQ(0, phone_util_.GetLengthOfNationalDestinationCode(number)); + + // The same number above, but with an extension. + number.set_country_code(376); + number.set_national_number(12345ULL); + number.set_extension("321"); + EXPECT_EQ(0, phone_util_.GetLengthOfNationalDestinationCode(number)); +} + +TEST_F(PhoneNumberUtilTest, ExtractPossibleNumber) { + // Removes preceding funky punctuation and letters but leaves the rest + // untouched. + string extracted_number; + ExtractPossibleNumber("Tel:0800-345-600", &extracted_number); + EXPECT_EQ("0800-345-600", extracted_number); + ExtractPossibleNumber("Tel:0800 FOR PIZZA", &extracted_number); + EXPECT_EQ("0800 FOR PIZZA", extracted_number); + + // Should not remove plus sign. + ExtractPossibleNumber("Tel:+800-345-600", &extracted_number); + EXPECT_EQ("+800-345-600", extracted_number); + // Should recognise wide digits as possible start values. + ExtractPossibleNumber("023", &extracted_number); + EXPECT_EQ("023", extracted_number); + // Dashes are not possible start values and should be removed. + ExtractPossibleNumber("Num-123", &extracted_number); + EXPECT_EQ("123", extracted_number); + // If not possible number present, return empty string. + ExtractPossibleNumber("Num-....", &extracted_number); + EXPECT_EQ("", extracted_number); + // Leading brackets are stripped - these are not used when parsing. + ExtractPossibleNumber("(650) 253-0000", &extracted_number); + EXPECT_EQ("650) 253-0000", extracted_number); + + // Trailing non-alpha-numeric characters should be removed. + ExtractPossibleNumber("(650) 253-0000..- ..", &extracted_number); + EXPECT_EQ("650) 253-0000", extracted_number); + ExtractPossibleNumber("(650) 253-0000.", &extracted_number); + EXPECT_EQ("650) 253-0000", extracted_number); + // This case has a trailing RTL char. + ExtractPossibleNumber("(650) 253-0000", &extracted_number); + EXPECT_EQ("650) 253-0000", extracted_number); +} + +TEST_F(PhoneNumberUtilTest, IsNANPACountry) { + EXPECT_TRUE(phone_util_.IsNANPACountry(RegionCode::US())); + EXPECT_TRUE(phone_util_.IsNANPACountry(RegionCode::BS())); +} + +TEST_F(PhoneNumberUtilTest, IsValidNumber) { + PhoneNumber us_number; + us_number.set_country_code(1); + us_number.set_national_number(6502530000ULL); + EXPECT_TRUE(phone_util_.IsValidNumber(us_number)); + + PhoneNumber it_number; + it_number.set_country_code(39); + it_number.set_national_number(236618300ULL); + it_number.set_italian_leading_zero(true); + EXPECT_TRUE(phone_util_.IsValidNumber(it_number)); + + PhoneNumber gb_number; + gb_number.set_country_code(44); + gb_number.set_national_number(7912345678ULL); + EXPECT_TRUE(phone_util_.IsValidNumber(gb_number)); + + PhoneNumber nz_number; + nz_number.set_country_code(64); + nz_number.set_national_number(21387835ULL); + EXPECT_TRUE(phone_util_.IsValidNumber(nz_number)); +} + +TEST_F(PhoneNumberUtilTest, IsValidForRegion) { + // This number is valid for the Bahamas, but is not a valid US number. + PhoneNumber bs_number; + bs_number.set_country_code(1); + bs_number.set_national_number(2423232345ULL); + EXPECT_TRUE(phone_util_.IsValidNumber(bs_number)); + EXPECT_TRUE(phone_util_.IsValidNumberForRegion(bs_number, RegionCode::BS())); + EXPECT_FALSE(phone_util_.IsValidNumberForRegion(bs_number, RegionCode::US())); + bs_number.set_national_number(2421232345ULL); + // This number is no longer valid. + EXPECT_FALSE(phone_util_.IsValidNumber(bs_number)); + + // La Mayotte and Réunion use 'leadingDigits' to differentiate them. + PhoneNumber re_number; + re_number.set_country_code(262); + re_number.set_national_number(262123456ULL); + EXPECT_TRUE(phone_util_.IsValidNumber(re_number)); + EXPECT_TRUE(phone_util_.IsValidNumberForRegion(re_number, RegionCode::RE())); + EXPECT_FALSE(phone_util_.IsValidNumberForRegion(re_number, RegionCode::YT())); + // Now change the number to be a number for La Mayotte. + re_number.set_national_number(269601234ULL); + EXPECT_TRUE(phone_util_.IsValidNumberForRegion(re_number, RegionCode::YT())); + EXPECT_FALSE(phone_util_.IsValidNumberForRegion(re_number, RegionCode::RE())); + // This number is no longer valid. + re_number.set_national_number(269123456ULL); + EXPECT_FALSE(phone_util_.IsValidNumberForRegion(re_number, RegionCode::YT())); + EXPECT_FALSE(phone_util_.IsValidNumberForRegion(re_number, RegionCode::RE())); + EXPECT_FALSE(phone_util_.IsValidNumber(re_number)); + // However, it should be recognised as from La Mayotte. + string region_code; + phone_util_.GetRegionCodeForNumber(re_number, ®ion_code); + EXPECT_EQ("YT", region_code); + // This number is valid in both places. + re_number.set_national_number(800123456ULL); + EXPECT_TRUE(phone_util_.IsValidNumberForRegion(re_number, RegionCode::YT())); + EXPECT_TRUE(phone_util_.IsValidNumberForRegion(re_number, RegionCode::RE())); +} + +TEST_F(PhoneNumberUtilTest, IsNotValidNumber) { + PhoneNumber us_number; + us_number.set_country_code(1); + us_number.set_national_number(2530000ULL); + EXPECT_FALSE(phone_util_.IsValidNumber(us_number)); + + PhoneNumber it_number; + it_number.set_country_code(39); + it_number.set_national_number(23661830000ULL); + it_number.set_italian_leading_zero(true); + EXPECT_FALSE(phone_util_.IsValidNumber(it_number)); + + PhoneNumber gb_number; + gb_number.set_country_code(44); + gb_number.set_national_number(791234567ULL); + EXPECT_FALSE(phone_util_.IsValidNumber(gb_number)); + + PhoneNumber de_number; + de_number.set_country_code(49); + de_number.set_national_number(1234ULL); + EXPECT_FALSE(phone_util_.IsValidNumber(de_number)); + + PhoneNumber nz_number; + nz_number.set_country_code(64); + nz_number.set_national_number(3316005ULL); + EXPECT_FALSE(phone_util_.IsValidNumber(nz_number)); +} + +TEST_F(PhoneNumberUtilTest, IsPossibleNumber) { + PhoneNumber number; + number.set_country_code(1); + number.set_national_number(6502530000ULL); + EXPECT_TRUE(phone_util_.IsPossibleNumber(number)); + + number.set_country_code(1); + number.set_national_number(2530000ULL); + EXPECT_TRUE(phone_util_.IsPossibleNumber(number)); + + number.set_country_code(44); + number.set_national_number(2070313000ULL); + EXPECT_TRUE(phone_util_.IsPossibleNumber(number)); + + EXPECT_TRUE(phone_util_.IsPossibleNumberForString("+1 650 253 0000", + RegionCode::US())); + EXPECT_TRUE(phone_util_.IsPossibleNumberForString("+1 650 GOO OGLE", + RegionCode::US())); + EXPECT_TRUE(phone_util_.IsPossibleNumberForString("(650) 253-0000", + RegionCode::US())); + EXPECT_TRUE(phone_util_.IsPossibleNumberForString("253-0000", + RegionCode::US())); + EXPECT_TRUE(phone_util_.IsPossibleNumberForString("+1 650 253 0000", + RegionCode::GB())); + EXPECT_TRUE(phone_util_.IsPossibleNumberForString("+44 20 7031 3000", + RegionCode::GB())); + EXPECT_TRUE(phone_util_.IsPossibleNumberForString("(020) 7031 3000", + RegionCode::GB())); + EXPECT_TRUE(phone_util_.IsPossibleNumberForString("7031 3000", + RegionCode::GB())); + EXPECT_TRUE(phone_util_.IsPossibleNumberForString("3331 6005", + RegionCode::NZ())); +} + +TEST_F(PhoneNumberUtilTest, IsPossibleNumberWithReason) { + // FYI, national numbers for country code +1 that are within 7 to 10 digits + // are possible. + PhoneNumber number; + number.set_country_code(1); + number.set_national_number(6502530000ULL); + EXPECT_EQ(PhoneNumberUtil::IS_POSSIBLE, + phone_util_.IsPossibleNumberWithReason(number)); + + number.set_country_code(1); + number.set_national_number(2530000ULL); + EXPECT_EQ(PhoneNumberUtil::IS_POSSIBLE, + phone_util_.IsPossibleNumberWithReason(number)); + + number.set_country_code(0); + number.set_national_number(2530000ULL); + EXPECT_EQ(PhoneNumberUtil::INVALID_COUNTRY_CODE, + phone_util_.IsPossibleNumberWithReason(number)); + + number.set_country_code(1); + number.set_national_number(253000ULL); + EXPECT_EQ(PhoneNumberUtil::TOO_SHORT, + phone_util_.IsPossibleNumberWithReason(number)); + + number.set_country_code(1); + number.set_national_number(65025300000ULL); + EXPECT_EQ(PhoneNumberUtil::TOO_LONG, + phone_util_.IsPossibleNumberWithReason(number)); + + number.set_country_code(44); + number.set_national_number(2070310000ULL); + EXPECT_EQ(PhoneNumberUtil::IS_POSSIBLE, + phone_util_.IsPossibleNumberWithReason(number)); + + number.set_country_code(49); + number.set_national_number(30123456ULL); + EXPECT_EQ(PhoneNumberUtil::IS_POSSIBLE, + phone_util_.IsPossibleNumberWithReason(number)); + + number.set_country_code(65); + number.set_national_number(1234567890ULL); + EXPECT_EQ(PhoneNumberUtil::IS_POSSIBLE, + phone_util_.IsPossibleNumberWithReason(number)); + + // Try with number that we don't have metadata for. + PhoneNumber ad_number; + ad_number.set_country_code(376); + ad_number.set_national_number(12345ULL); + EXPECT_EQ(PhoneNumberUtil::IS_POSSIBLE, + phone_util_.IsPossibleNumberWithReason(ad_number)); + ad_number.set_country_code(376); + ad_number.set_national_number(13ULL); + EXPECT_EQ(PhoneNumberUtil::TOO_SHORT, + phone_util_.IsPossibleNumberWithReason(ad_number)); + ad_number.set_country_code(376); + ad_number.set_national_number(1234567890123456ULL); + EXPECT_EQ(PhoneNumberUtil::TOO_LONG, + phone_util_.IsPossibleNumberWithReason(ad_number)); +} + +TEST_F(PhoneNumberUtilTest, IsNotPossibleNumber) { + PhoneNumber number; + number.set_country_code(1); + number.set_national_number(65025300000ULL); + EXPECT_FALSE(phone_util_.IsPossibleNumber(number)); + + number.set_country_code(1); + number.set_national_number(253000ULL); + EXPECT_FALSE(phone_util_.IsPossibleNumber(number)); + + number.set_country_code(44); + number.set_national_number(300ULL); + EXPECT_FALSE(phone_util_.IsPossibleNumber(number)); + + EXPECT_FALSE(phone_util_.IsPossibleNumberForString("+1 650 253 00000", + RegionCode::US())); + EXPECT_FALSE(phone_util_.IsPossibleNumberForString("(650) 253-00000", + RegionCode::US())); + EXPECT_FALSE(phone_util_.IsPossibleNumberForString("I want a Pizza", + RegionCode::US())); + EXPECT_FALSE(phone_util_.IsPossibleNumberForString("253-000", + RegionCode::US())); + EXPECT_FALSE(phone_util_.IsPossibleNumberForString("1 3000", + RegionCode::GB())); + EXPECT_FALSE(phone_util_.IsPossibleNumberForString("+44 300", + RegionCode::GB())); +} + +TEST_F(PhoneNumberUtilTest, TruncateTooLongNumber) { + // US number 650-253-0000, but entered with one additional digit at the end. + PhoneNumber too_long_number; + too_long_number.set_country_code(1); + too_long_number.set_national_number(65025300001ULL); + PhoneNumber valid_number; + valid_number.set_country_code(1); + valid_number.set_national_number(6502530000ULL); + EXPECT_TRUE(phone_util_.TruncateTooLongNumber(&too_long_number)); + EXPECT_EQ(valid_number, too_long_number); + + // GB number 080 1234 5678, but entered with 4 extra digits at the end. + too_long_number.set_country_code(44); + too_long_number.set_national_number(80123456780123ULL); + valid_number.set_country_code(44); + valid_number.set_national_number(8012345678ULL); + EXPECT_TRUE(phone_util_.TruncateTooLongNumber(&too_long_number)); + EXPECT_EQ(valid_number, too_long_number); + + // IT number 022 3456 7890, but entered with 3 extra digits at the end. + too_long_number.set_country_code(39); + too_long_number.set_national_number(2234567890123ULL); + too_long_number.set_italian_leading_zero(true); + valid_number.set_country_code(39); + valid_number.set_national_number(2234567890ULL); + valid_number.set_italian_leading_zero(true); + EXPECT_TRUE(phone_util_.TruncateTooLongNumber(&too_long_number)); + EXPECT_EQ(valid_number, too_long_number); + + // Tests what happens when a valid number is passed in. + PhoneNumber valid_number_copy(valid_number); + EXPECT_TRUE(phone_util_.TruncateTooLongNumber(&valid_number)); + // Tests the number is not modified. + EXPECT_EQ(valid_number_copy, valid_number); + + // Tests what happens when a number with invalid prefix is passed in. + PhoneNumber number_with_invalid_prefix; + number_with_invalid_prefix.set_country_code(1); + // The test metadata says US numbers cannot have prefix 240. + number_with_invalid_prefix.set_national_number(2401234567ULL); + PhoneNumber invalid_number_copy(number_with_invalid_prefix); + EXPECT_FALSE(phone_util_.TruncateTooLongNumber(&number_with_invalid_prefix)); + // Tests the number is not modified. + EXPECT_EQ(invalid_number_copy, number_with_invalid_prefix); + + // Tests what happens when a too short number is passed in. + PhoneNumber too_short_number; + too_short_number.set_country_code(1); + too_short_number.set_national_number(1234ULL); + PhoneNumber too_short_number_copy(too_short_number); + EXPECT_FALSE(phone_util_.TruncateTooLongNumber(&too_short_number)); + // Tests the number is not modified. + EXPECT_EQ(too_short_number_copy, too_short_number); +} + +TEST_F(PhoneNumberUtilTest, IsLeadingZeroPossible) { + EXPECT_TRUE(IsLeadingZeroPossible(39)); // Italy + EXPECT_FALSE(IsLeadingZeroPossible(1)); // USA + EXPECT_FALSE(IsLeadingZeroPossible(800)); // Not in metadata file, should + // return default value of false. +} + +TEST_F(PhoneNumberUtilTest, FormatUsingOriginalNumberFormat) { + PhoneNumber phone_number; + string formatted_number; + + EXPECT_EQ(PhoneNumberUtil::NO_PARSING_ERROR, + phone_util_.ParseAndKeepRawInput("+442087654321", RegionCode::GB(), + &phone_number)); + phone_util_.FormatInOriginalFormat(phone_number, RegionCode::GB(), + &formatted_number); + EXPECT_EQ("+44 20 8765 4321", formatted_number); + + phone_number.Clear(); + formatted_number.clear(); + EXPECT_EQ(PhoneNumberUtil::NO_PARSING_ERROR, + phone_util_.ParseAndKeepRawInput("02087654321", RegionCode::GB(), + &phone_number)); + phone_util_.FormatInOriginalFormat(phone_number, RegionCode::GB(), + &formatted_number); + EXPECT_EQ("(020) 8765 4321", formatted_number); + + phone_number.Clear(); + formatted_number.clear(); + EXPECT_EQ(PhoneNumberUtil::NO_PARSING_ERROR, + phone_util_.ParseAndKeepRawInput("011442087654321", + RegionCode::US(), &phone_number)); + phone_util_.FormatInOriginalFormat(phone_number, RegionCode::US(), + &formatted_number); + EXPECT_EQ("011 44 20 8765 4321", formatted_number); + + phone_number.Clear(); + formatted_number.clear(); + EXPECT_EQ(PhoneNumberUtil::NO_PARSING_ERROR, + phone_util_.ParseAndKeepRawInput("442087654321", RegionCode::GB(), + &phone_number)); + phone_util_.FormatInOriginalFormat(phone_number, RegionCode::GB(), + &formatted_number); + EXPECT_EQ("44 20 8765 4321", formatted_number); + + phone_number.Clear(); + formatted_number.clear(); + EXPECT_EQ(PhoneNumberUtil::NO_PARSING_ERROR, + phone_util_.Parse("+442087654321", RegionCode::GB(), + &phone_number)); + phone_util_.FormatInOriginalFormat(phone_number, RegionCode::GB(), + &formatted_number); + EXPECT_EQ("(020) 8765 4321", formatted_number); +} + +TEST_F(PhoneNumberUtilTest, IsPremiumRate) { + PhoneNumber number; + number.set_country_code(1); + number.set_national_number(9004433030ULL); + EXPECT_EQ(PhoneNumberUtil::PREMIUM_RATE, phone_util_.GetNumberType(number)); + + number.set_country_code(39); + number.set_national_number(892123ULL); + EXPECT_EQ(PhoneNumberUtil::PREMIUM_RATE, phone_util_.GetNumberType(number)); + + number.set_country_code(44); + number.set_national_number(9187654321ULL); + EXPECT_EQ(PhoneNumberUtil::PREMIUM_RATE, phone_util_.GetNumberType(number)); + + number.set_country_code(49); + number.set_national_number(9001654321ULL); + EXPECT_EQ(PhoneNumberUtil::PREMIUM_RATE, phone_util_.GetNumberType(number)); + + number.set_country_code(49); + number.set_national_number(90091234567ULL); + EXPECT_EQ(PhoneNumberUtil::PREMIUM_RATE, phone_util_.GetNumberType(number)); +} + +TEST_F(PhoneNumberUtilTest, IsTollFree) { + PhoneNumber number; + number.set_country_code(1); + number.set_national_number(8881234567ULL); + EXPECT_EQ(PhoneNumberUtil::TOLL_FREE, phone_util_.GetNumberType(number)); + + number.set_country_code(39); + number.set_national_number(803123ULL); + EXPECT_EQ(PhoneNumberUtil::TOLL_FREE, phone_util_.GetNumberType(number)); + + number.set_country_code(44); + number.set_national_number(8012345678ULL); + EXPECT_EQ(PhoneNumberUtil::TOLL_FREE, phone_util_.GetNumberType(number)); + + number.set_country_code(49); + number.set_national_number(8001234567ULL); + EXPECT_EQ(PhoneNumberUtil::TOLL_FREE, phone_util_.GetNumberType(number)); +} + +TEST_F(PhoneNumberUtilTest, IsMobile) { + PhoneNumber number; + // A Bahama mobile number + number.set_country_code(1); + number.set_national_number(2423570000ULL); + EXPECT_EQ(PhoneNumberUtil::MOBILE, phone_util_.GetNumberType(number)); + + number.set_country_code(39); + number.set_national_number(312345678ULL); + EXPECT_EQ(PhoneNumberUtil::MOBILE, phone_util_.GetNumberType(number)); + + number.set_country_code(44); + number.set_national_number(7912345678ULL); + EXPECT_EQ(PhoneNumberUtil::MOBILE, phone_util_.GetNumberType(number)); + + number.set_country_code(49); + number.set_national_number(15123456789ULL); + EXPECT_EQ(PhoneNumberUtil::MOBILE, phone_util_.GetNumberType(number)); + + number.set_country_code(54); + number.set_national_number(91187654321ULL); + EXPECT_EQ(PhoneNumberUtil::MOBILE, phone_util_.GetNumberType(number)); +} + +TEST_F(PhoneNumberUtilTest, IsFixedLine) { + PhoneNumber number; + // A Bahama fixed-line number + number.set_country_code(1); + number.set_national_number(2423651234ULL); + EXPECT_EQ(PhoneNumberUtil::FIXED_LINE, phone_util_.GetNumberType(number)); + + // An Italian fixed-line number + number.Clear(); + number.set_country_code(39); + number.set_national_number(236618300ULL); + number.set_italian_leading_zero(true); + EXPECT_EQ(PhoneNumberUtil::FIXED_LINE, phone_util_.GetNumberType(number)); + + number.Clear(); + number.set_country_code(44); + number.set_national_number(2012345678ULL); + EXPECT_EQ(PhoneNumberUtil::FIXED_LINE, phone_util_.GetNumberType(number)); + + number.set_country_code(49); + number.set_national_number(301234ULL); + EXPECT_EQ(PhoneNumberUtil::FIXED_LINE, phone_util_.GetNumberType(number)); +} + +TEST_F(PhoneNumberUtilTest, IsFixedLineAndMobile) { + PhoneNumber number; + number.set_country_code(1); + number.set_national_number(6502531111ULL); + EXPECT_EQ(PhoneNumberUtil::FIXED_LINE_OR_MOBILE, + phone_util_.GetNumberType(number)); + + number.set_country_code(54); + number.set_national_number(1987654321ULL); + EXPECT_EQ(PhoneNumberUtil::FIXED_LINE_OR_MOBILE, + phone_util_.GetNumberType(number)); +} + +TEST_F(PhoneNumberUtilTest, IsSharedCost) { + PhoneNumber number; + number.set_country_code(44); + number.set_national_number(8431231234ULL); + EXPECT_EQ(PhoneNumberUtil::SHARED_COST, phone_util_.GetNumberType(number)); +} + +TEST_F(PhoneNumberUtilTest, IsVoip) { + PhoneNumber number; + number.set_country_code(44); + number.set_national_number(5631231234ULL); + EXPECT_EQ(PhoneNumberUtil::VOIP, phone_util_.GetNumberType(number)); +} + +TEST_F(PhoneNumberUtilTest, IsPersonalNumber) { + PhoneNumber number; + number.set_country_code(44); + number.set_national_number(7031231234ULL); + EXPECT_EQ(PhoneNumberUtil::PERSONAL_NUMBER, + phone_util_.GetNumberType(number)); +} + +TEST_F(PhoneNumberUtilTest, IsUnknown) { + PhoneNumber number; + number.set_country_code(1); + number.set_national_number(65025311111ULL); + EXPECT_EQ(PhoneNumberUtil::UNKNOWN, phone_util_.GetNumberType(number)); +} + +TEST_F(PhoneNumberUtilTest, GetCountryCodeForRegion) { + EXPECT_EQ(1, phone_util_.GetCountryCodeForRegion(RegionCode::US())); + EXPECT_EQ(64, phone_util_.GetCountryCodeForRegion(RegionCode::NZ())); + EXPECT_EQ(0, phone_util_.GetCountryCodeForRegion(RegionCode::ZZ())); + // CS is already deprecated so the library doesn't support it. + EXPECT_EQ(0, phone_util_.GetCountryCodeForRegion(RegionCode::CS())); +} + +TEST_F(PhoneNumberUtilTest, GetNationalDiallingPrefixForRegion) { + string ndd_prefix; + GetNddPrefixForRegion(RegionCode::US(), false, &ndd_prefix); + EXPECT_EQ("1", ndd_prefix); + + // Test non-main country to see it gets the national dialling prefix for the + // main country with that country calling code. + GetNddPrefixForRegion(RegionCode::BS(), false, &ndd_prefix); + EXPECT_EQ("1", ndd_prefix); + + GetNddPrefixForRegion(RegionCode::NZ(), false, &ndd_prefix); + EXPECT_EQ("0", ndd_prefix); + + // Test case with non digit in the national prefix. + GetNddPrefixForRegion(RegionCode::AO(), false, &ndd_prefix); + EXPECT_EQ("0~0", ndd_prefix); + + GetNddPrefixForRegion(RegionCode::AO(), true, &ndd_prefix); + EXPECT_EQ("00", ndd_prefix); + + // Test cases with invalid regions. + GetNddPrefixForRegion(RegionCode::ZZ(), false, &ndd_prefix); + EXPECT_EQ("", ndd_prefix); + + // CS is already deprecated so the library doesn't support it. + GetNddPrefixForRegion(RegionCode::CS(), false, &ndd_prefix); + EXPECT_EQ("", ndd_prefix); +} + +TEST_F(PhoneNumberUtilTest, IsViablePhoneNumber) { + // Only one or two digits before strange non-possible punctuation. + EXPECT_FALSE(IsViablePhoneNumber("12. March")); + EXPECT_FALSE(IsViablePhoneNumber("1+1+1")); + EXPECT_FALSE(IsViablePhoneNumber("80+0")); + EXPECT_FALSE(IsViablePhoneNumber("00")); + // Three digits is viable. + EXPECT_TRUE(IsViablePhoneNumber("111")); + // Alpha numbers. + EXPECT_TRUE(IsViablePhoneNumber("0800-4-pizza")); + EXPECT_TRUE(IsViablePhoneNumber("0800-4-PIZZA")); + // Only one or two digits before possible punctuation followed by more digits. + // The punctuation used here is the unicode character u+3000. + EXPECT_TRUE(IsViablePhoneNumber("1 34")); + EXPECT_FALSE(IsViablePhoneNumber("1 3+4")); + // Unicode variants of possible starting character and other allowed + // punctuation/digits. + EXPECT_TRUE(IsViablePhoneNumber("(1) 3456789")); + // Testing a leading + is okay. + EXPECT_TRUE(IsViablePhoneNumber("+1) 3456789")); +} + +TEST_F(PhoneNumberUtilTest, NormaliseRemovePunctuation) { + string input_number("034-56&+#234"); + Normalize(&input_number); + static const string kExpectedOutput("03456234"); + EXPECT_EQ(kExpectedOutput, input_number) + << "Conversion did not correctly remove punctuation"; +} + +TEST_F(PhoneNumberUtilTest, NormaliseReplaceAlphaCharacters) { + string input_number("034-I-am-HUNGRY"); + Normalize(&input_number); + static const string kExpectedOutput("034426486479"); + EXPECT_EQ(kExpectedOutput, input_number) + << "Conversion did not correctly replace alpha characters"; +} + +TEST_F(PhoneNumberUtilTest, NormaliseOtherDigits) { + // The first digit is a full-width 2, the last digit is an Arabic-indic digit + // 5. + string input_number("25٥"); + Normalize(&input_number); + static const string kExpectedOutput("255"); + EXPECT_EQ(kExpectedOutput, input_number) + << "Conversion did not correctly replace non-latin digits"; + // The first digit is an Eastern-Arabic 5, the latter an Eastern-Arabic 0. + string eastern_arabic_input_number("۵2۰"); + Normalize(&eastern_arabic_input_number); + static const string kExpectedOutput2("520"); + EXPECT_EQ(kExpectedOutput2, eastern_arabic_input_number) + << "Conversion did not correctly replace non-latin digits"; +} + +TEST_F(PhoneNumberUtilTest, NormaliseStripAlphaCharacters) { + string input_number("034-56&+a#234"); + phone_util_.NormalizeDigitsOnly(&input_number); + static const string kExpectedOutput("03456234"); + EXPECT_EQ(kExpectedOutput, input_number) + << "Conversion did not correctly remove alpha characters"; +} + +TEST_F(PhoneNumberUtilTest, MaybeStripInternationalPrefix) { + string international_prefix("00[39]"); + string number_to_strip("0034567700-3898003"); + // Note the dash is removed as part of the normalization. + string stripped_number("45677003898003"); + EXPECT_EQ(PhoneNumber::FROM_NUMBER_WITH_IDD, + MaybeStripInternationalPrefixAndNormalize(international_prefix, + &number_to_strip)); + EXPECT_EQ(stripped_number, number_to_strip) + << "The number was not stripped of its international prefix."; + + // Now the number no longer starts with an IDD prefix, so it should now report + // FROM_DEFAULT_COUNTRY. + EXPECT_EQ(PhoneNumber::FROM_DEFAULT_COUNTRY, + MaybeStripInternationalPrefixAndNormalize(international_prefix, + &number_to_strip)); + + number_to_strip.assign("00945677003898003"); + EXPECT_EQ(PhoneNumber::FROM_NUMBER_WITH_IDD, + MaybeStripInternationalPrefixAndNormalize(international_prefix, + &number_to_strip)); + EXPECT_EQ(stripped_number, number_to_strip) + << "The number was not stripped of its international prefix."; + + // Test it works when the international prefix is broken up by spaces. + number_to_strip.assign("00 9 45677003898003"); + EXPECT_EQ(PhoneNumber::FROM_NUMBER_WITH_IDD, + MaybeStripInternationalPrefixAndNormalize(international_prefix, + &number_to_strip)); + EXPECT_EQ(stripped_number, number_to_strip) + << "The number was not stripped of its international prefix."; + // Now the number no longer starts with an IDD prefix, so it should now report + // FROM_DEFAULT_COUNTRY. + EXPECT_EQ(PhoneNumber::FROM_DEFAULT_COUNTRY, + MaybeStripInternationalPrefixAndNormalize(international_prefix, + &number_to_strip)); + + // Test the + symbol is also recognised and stripped. + number_to_strip.assign("+45677003898003"); + stripped_number.assign("45677003898003"); + EXPECT_EQ(PhoneNumber::FROM_NUMBER_WITH_PLUS_SIGN, + MaybeStripInternationalPrefixAndNormalize(international_prefix, + &number_to_strip)); + EXPECT_EQ(stripped_number, number_to_strip) + << "The number supplied was not stripped of the plus symbol."; + + // If the number afterwards is a zero, we should not strip this - no country + // code begins with 0. + number_to_strip.assign("0090112-3123"); + stripped_number.assign("00901123123"); + EXPECT_EQ(PhoneNumber::FROM_DEFAULT_COUNTRY, + MaybeStripInternationalPrefixAndNormalize(international_prefix, + &number_to_strip)); + EXPECT_EQ(stripped_number, number_to_strip) + << "The number had a 0 after the match so shouldn't be stripped."; + // Here the 0 is separated by a space from the IDD. + number_to_strip.assign("009 0-112-3123"); + EXPECT_EQ(PhoneNumber::FROM_DEFAULT_COUNTRY, + MaybeStripInternationalPrefixAndNormalize(international_prefix, + &number_to_strip)); +} + +TEST_F(PhoneNumberUtilTest, MaybeStripNationalPrefixAndCarrierCode) { + PhoneMetadata metadata; + metadata.set_national_prefix_for_parsing("34"); + metadata.mutable_general_desc()->set_national_number_pattern("\\d{4,8}"); + string number_to_strip("34356778"); + string stripped_number("356778"); + string carrier_code; + MaybeStripNationalPrefixAndCarrierCode(metadata, &number_to_strip, + &carrier_code); + EXPECT_EQ(stripped_number, number_to_strip) + << "Should have had national prefix stripped."; + EXPECT_EQ("", carrier_code) << "Should have had no carrier code stripped."; + // Retry stripping - now the number should not start with the national prefix, + // so no more stripping should occur. + MaybeStripNationalPrefixAndCarrierCode(metadata, &number_to_strip, + &carrier_code); + EXPECT_EQ(stripped_number, number_to_strip) + << "Should have had no change - no national prefix present."; + // Some countries have no national prefix. Repeat test with none specified. + metadata.clear_national_prefix_for_parsing(); + MaybeStripNationalPrefixAndCarrierCode(metadata, &number_to_strip, + &carrier_code); + EXPECT_EQ(stripped_number, number_to_strip) + << "Should have had no change - empty national prefix."; + // If the resultant number doesn't match the national rule, it shouldn't be + // stripped. + metadata.set_national_prefix_for_parsing("3"); + number_to_strip.assign("3123"); + stripped_number.assign("3123"); + MaybeStripNationalPrefixAndCarrierCode(metadata, &number_to_strip, + &carrier_code); + EXPECT_EQ(stripped_number, number_to_strip) + << "Should have had no change - after stripping, it wouldn't have " + << "matched the national rule."; + // Test extracting carrier selection code. + metadata.set_national_prefix_for_parsing("0(81)?"); + number_to_strip.assign("08122123456"); + stripped_number.assign("22123456"); + MaybeStripNationalPrefixAndCarrierCode(metadata, &number_to_strip, + &carrier_code); + EXPECT_EQ("81", carrier_code) << "Should have had carrier code stripped."; + EXPECT_EQ(stripped_number, number_to_strip) + << "Should have had national prefix and carrier code stripped."; + // If there was a transform rule, check it was applied. + metadata.set_national_prefix_transform_rule("5$15"); + // Note that a capturing group is present here. + metadata.set_national_prefix_for_parsing("0(\\d{2})"); + number_to_strip.assign("031123"); + string transformed_number("5315123"); + MaybeStripNationalPrefixAndCarrierCode(metadata, &number_to_strip, + &carrier_code); + EXPECT_EQ(transformed_number, number_to_strip) + << "Was not successfully transformed."; +} + +TEST_F(PhoneNumberUtilTest, MaybeStripExtension) { + // One with extension. + string number("1234576 ext. 1234"); + string extension; + string expected_extension("1234"); + string stripped_number("1234576"); + EXPECT_TRUE(MaybeStripExtension(&number, &extension)); + EXPECT_EQ(stripped_number, number); + EXPECT_EQ(expected_extension, extension); + + // One without extension. + number.assign("1234-576"); + extension.clear(); + stripped_number.assign("1234-576"); + EXPECT_FALSE(MaybeStripExtension(&number, &extension)); + EXPECT_EQ(stripped_number, number); + EXPECT_TRUE(extension.empty()); + + // One with an extension caught by the second capturing group in + // kKnownExtnPatterns. + number.assign("1234576-123#"); + extension.clear(); + expected_extension.assign("123"); + stripped_number.assign("1234576"); + EXPECT_TRUE(MaybeStripExtension(&number, &extension)); + EXPECT_EQ(stripped_number, number); + EXPECT_EQ(expected_extension, extension); + + number.assign("1234576 ext.123#"); + extension.clear(); + EXPECT_TRUE(MaybeStripExtension(&number, &extension)); + EXPECT_EQ(stripped_number, number); + EXPECT_EQ(expected_extension, extension); +} + +TEST_F(PhoneNumberUtilTest, MaybeExtractCountryCode) { + PhoneNumber number; + const PhoneMetadata* metadata = GetPhoneMetadata(RegionCode::US()); + // Note that for the US, the IDD is 011. + string phone_number("011112-3456789"); + string stripped_number("123456789"); + int expected_country_code = 1; + EXPECT_EQ(PhoneNumberUtil::NO_PARSING_ERROR, + MaybeExtractCountryCode(metadata, true, &phone_number, &number)); + EXPECT_EQ(expected_country_code, number.country_code()); + EXPECT_EQ(PhoneNumber::FROM_NUMBER_WITH_IDD, number.country_code_source()); + EXPECT_EQ(stripped_number, phone_number); + + number.Clear(); + phone_number.assign("+6423456789"); + stripped_number.assign("23456789"); + expected_country_code = 64; + EXPECT_EQ(PhoneNumberUtil::NO_PARSING_ERROR, + MaybeExtractCountryCode(metadata, true, &phone_number, &number)); + EXPECT_EQ(expected_country_code, number.country_code()); + EXPECT_EQ(PhoneNumber::FROM_NUMBER_WITH_PLUS_SIGN, + number.country_code_source()); + EXPECT_EQ(stripped_number, phone_number); + + // Should not have extracted a country code - no international prefix present. + number.Clear(); + expected_country_code = 0; + phone_number.assign("2345-6789"); + EXPECT_EQ(PhoneNumberUtil::NO_PARSING_ERROR, + MaybeExtractCountryCode(metadata, true, &phone_number, &number)); + EXPECT_EQ(expected_country_code, number.country_code()); + EXPECT_EQ(PhoneNumber::FROM_DEFAULT_COUNTRY, number.country_code_source()); + EXPECT_EQ(stripped_number, phone_number); + + expected_country_code = 0; + phone_number.assign("0119991123456789"); + stripped_number.assign(phone_number); + EXPECT_EQ(PhoneNumberUtil::INVALID_COUNTRY_CODE_ERROR, + MaybeExtractCountryCode(metadata, true, &phone_number, &number)); + + number.Clear(); + phone_number.assign("(1 610) 619 4466"); + stripped_number.assign("6106194466"); + expected_country_code = 1; + EXPECT_EQ(PhoneNumberUtil::NO_PARSING_ERROR, + MaybeExtractCountryCode(metadata, true, &phone_number, &number)); + EXPECT_EQ(expected_country_code, number.country_code()); + EXPECT_EQ(PhoneNumber::FROM_NUMBER_WITHOUT_PLUS_SIGN, + number.country_code_source()); + EXPECT_EQ(stripped_number, phone_number); + + number.Clear(); + phone_number.assign("(1 610) 619 4466"); + stripped_number.assign("6106194466"); + expected_country_code = 1; + EXPECT_EQ(PhoneNumberUtil::NO_PARSING_ERROR, + MaybeExtractCountryCode(metadata, false, &phone_number, &number)); + EXPECT_EQ(expected_country_code, number.country_code()); + EXPECT_FALSE(number.has_country_code_source()); + EXPECT_EQ(stripped_number, phone_number); + + // Should not have extracted a country code - invalid number after extraction + // of uncertain country code. + number.Clear(); + phone_number.assign("(1 610) 619 446"); + stripped_number.assign("1610619446"); + expected_country_code = 0; + EXPECT_EQ(PhoneNumberUtil::NO_PARSING_ERROR, + MaybeExtractCountryCode(metadata, false, &phone_number, &number)); + EXPECT_EQ(expected_country_code, number.country_code()); + EXPECT_FALSE(number.has_country_code_source()); + EXPECT_EQ(stripped_number, phone_number); + + number.Clear(); + phone_number.assign("(1 610) 619"); + stripped_number.assign("1610619"); + expected_country_code = 0; + // Should not have extracted a country code - invalid number both before and + // after extraction of uncertain country code. + EXPECT_EQ(PhoneNumberUtil::NO_PARSING_ERROR, + MaybeExtractCountryCode(metadata, true, &phone_number, &number)); + EXPECT_EQ(expected_country_code, number.country_code()); + EXPECT_EQ(PhoneNumber::FROM_DEFAULT_COUNTRY, number.country_code_source()); + EXPECT_EQ(stripped_number, phone_number); +} + +TEST_F(PhoneNumberUtilTest, CountryWithNoNumberDesc) { + string formatted_number; + // Andorra is a country where we don't have PhoneNumberDesc info in the + // metadata. + PhoneNumber ad_number; + ad_number.set_country_code(376); + ad_number.set_national_number(12345ULL); + phone_util_.Format(ad_number, PhoneNumberUtil::INTERNATIONAL, + &formatted_number); + EXPECT_EQ("+376 12345", formatted_number); + phone_util_.Format(ad_number, PhoneNumberUtil::E164, &formatted_number); + EXPECT_EQ("+37612345", formatted_number); + phone_util_.Format(ad_number, PhoneNumberUtil::NATIONAL, &formatted_number); + EXPECT_EQ("12345", formatted_number); + EXPECT_EQ(PhoneNumberUtil::UNKNOWN, phone_util_.GetNumberType(ad_number)); + EXPECT_TRUE(phone_util_.IsValidNumber(ad_number)); + + // Test dialing a US number from within Andorra. + PhoneNumber us_number; + us_number.set_country_code(1); + us_number.set_national_number(6502530000ULL); + phone_util_.FormatOutOfCountryCallingNumber(us_number, RegionCode::AD(), + &formatted_number); + EXPECT_EQ("00 1 650 253 0000", formatted_number); +} + +TEST_F(PhoneNumberUtilTest, UnknownCountryCallingCodeForValidation) { + PhoneNumber invalid_number; + invalid_number.set_country_code(0); + invalid_number.set_national_number(1234ULL); + EXPECT_FALSE(phone_util_.IsValidNumber(invalid_number)); +} + +TEST_F(PhoneNumberUtilTest, IsNumberMatchMatches) { + // Test simple matches where formatting is different, or leading zeroes, or + // country code has been specified. + EXPECT_EQ(PhoneNumberUtil::EXACT_MATCH, + phone_util_.IsNumberMatchWithTwoStrings("+64 3 331 6005", + "+64 03 331 6005")); + EXPECT_EQ(PhoneNumberUtil::EXACT_MATCH, + phone_util_.IsNumberMatchWithTwoStrings("+64 03 331-6005", + "+64 03331 6005")); + EXPECT_EQ(PhoneNumberUtil::EXACT_MATCH, + phone_util_.IsNumberMatchWithTwoStrings("+643 331-6005", + "+64033316005")); + EXPECT_EQ(PhoneNumberUtil::EXACT_MATCH, + phone_util_.IsNumberMatchWithTwoStrings("+643 331-6005", + "+6433316005")); + EXPECT_EQ(PhoneNumberUtil::EXACT_MATCH, + phone_util_.IsNumberMatchWithTwoStrings("+64 3 331-6005", + "+6433316005")); + // Test alpha numbers. + EXPECT_EQ(PhoneNumberUtil::EXACT_MATCH, + phone_util_.IsNumberMatchWithTwoStrings("+1800 siX-Flags", + "+1 800 7493 5247")); + // Test numbers with extensions. + EXPECT_EQ(PhoneNumberUtil::EXACT_MATCH, + phone_util_.IsNumberMatchWithTwoStrings("+64 3 331-6005 extn 1234", + "+6433316005#1234")); + // Test proto buffers. + PhoneNumber nz_number; + nz_number.set_country_code(64); + nz_number.set_national_number(33316005ULL); + nz_number.set_extension("3456"); + EXPECT_EQ(PhoneNumberUtil::EXACT_MATCH, + phone_util_.IsNumberMatchWithOneString(nz_number, + "+643 331 6005 ext 3456")); + nz_number.clear_extension(); + EXPECT_EQ(PhoneNumberUtil::EXACT_MATCH, + phone_util_.IsNumberMatchWithOneString(nz_number, + "+643 331 6005")); + // Check empty extensions are ignored. + nz_number.set_extension(""); + EXPECT_EQ(PhoneNumberUtil::EXACT_MATCH, + phone_util_.IsNumberMatchWithOneString(nz_number, + "+643 331 6005")); + // Check variant with two proto buffers. + PhoneNumber nz_number_2; + nz_number_2.set_country_code(64); + nz_number_2.set_national_number(33316005ULL); + EXPECT_EQ(PhoneNumberUtil::EXACT_MATCH, + phone_util_.IsNumberMatch(nz_number, nz_number_2)); + + // Check raw_input, country_code_source and preferred_domestic_carrier_code + // are ignored. + PhoneNumber br_number_1; + PhoneNumber br_number_2; + br_number_1.set_country_code(55); + br_number_1.set_national_number(3121286979ULL); + br_number_1.set_country_code_source(PhoneNumber::FROM_NUMBER_WITH_PLUS_SIGN); + br_number_1.set_preferred_domestic_carrier_code("12"); + br_number_1.set_raw_input("012 3121286979"); + br_number_2.set_country_code(55); + br_number_2.set_national_number(3121286979ULL); + br_number_2.set_country_code_source(PhoneNumber::FROM_DEFAULT_COUNTRY); + br_number_2.set_preferred_domestic_carrier_code("14"); + br_number_2.set_raw_input("143121286979"); + EXPECT_EQ(PhoneNumberUtil::EXACT_MATCH, + phone_util_.IsNumberMatch(br_number_1, br_number_2)); +} + +TEST_F(PhoneNumberUtilTest, IsNumberMatchNonMetches) { + // NSN matches. + EXPECT_EQ(PhoneNumberUtil::NO_MATCH, + phone_util_.IsNumberMatchWithTwoStrings("03 331 6005", + "03 331 6006")); + // Different country code, partial number match. + EXPECT_EQ(PhoneNumberUtil::NO_MATCH, + phone_util_.IsNumberMatchWithTwoStrings("+64 3 331-6005", + "+16433316005")); + // Different country code, same number. + EXPECT_EQ(PhoneNumberUtil::NO_MATCH, + phone_util_.IsNumberMatchWithTwoStrings("+64 3 331-6005", + "+6133316005")); + // Extension different, all else the same. + EXPECT_EQ(PhoneNumberUtil::NO_MATCH, + phone_util_.IsNumberMatchWithTwoStrings("+64 3 331-6005 extn 1234", + "+0116433316005#1235")); + // NSN matches, but extension is different - not the same number. + EXPECT_EQ(PhoneNumberUtil::NO_MATCH, + phone_util_.IsNumberMatchWithTwoStrings("+64 3 331-6005 ext.1235", + "3 331 6005#1234")); + // Invalid numbers that can't be parsed. + EXPECT_EQ(PhoneNumberUtil::INVALID_NUMBER, + phone_util_.IsNumberMatchWithTwoStrings("43", "3 331 6043")); + // Invalid numbers that can't be parsed. + EXPECT_EQ(PhoneNumberUtil::INVALID_NUMBER, + phone_util_.IsNumberMatchWithTwoStrings("+43", "+64 3 331 6005")); + EXPECT_EQ(PhoneNumberUtil::INVALID_NUMBER, + phone_util_.IsNumberMatchWithTwoStrings("+43", "64 3 331 6005")); + EXPECT_EQ(PhoneNumberUtil::INVALID_NUMBER, + phone_util_.IsNumberMatchWithTwoStrings("Dog", "64 3 331 6005")); +} + +TEST_F(PhoneNumberUtilTest, IsNumberMatchNsnMatches) { + // NSN matches. + EXPECT_EQ(PhoneNumberUtil::NSN_MATCH, + phone_util_.IsNumberMatchWithTwoStrings("+64 3 331-6005", + "03 331 6005")); + + EXPECT_EQ(PhoneNumberUtil::NSN_MATCH, + phone_util_.IsNumberMatchWithTwoStrings("3 331-6005", + "03 331 6005")); + + PhoneNumber nz_number; + nz_number.set_country_code(64); + nz_number.set_national_number(33316005ULL); + nz_number.set_extension(""); + EXPECT_EQ(PhoneNumberUtil::NSN_MATCH, + phone_util_.IsNumberMatchWithOneString(nz_number, "03 331 6005")); + // Here the second number possibly starts with the country code for New + // Zealand, although we are unsure. + EXPECT_EQ(PhoneNumberUtil::NSN_MATCH, + phone_util_.IsNumberMatchWithOneString(nz_number, + "(64-3) 331 6005")); + + // Here, the 1 might be a national prefix, if we compare it to the US number, + // so the resultant match is an NSN match. + PhoneNumber us_number; + us_number.set_country_code(1); + us_number.set_national_number(2345678901ULL); + EXPECT_EQ(PhoneNumberUtil::NSN_MATCH, + phone_util_.IsNumberMatchWithOneString(us_number, + "1-234-567-8901")); + EXPECT_EQ(PhoneNumberUtil::NSN_MATCH, + phone_util_.IsNumberMatchWithOneString(us_number, "2345678901")); + EXPECT_EQ(PhoneNumberUtil::NSN_MATCH, + phone_util_.IsNumberMatchWithTwoStrings("+1 234-567 8901", + "1 234 567 8901")); + EXPECT_EQ(PhoneNumberUtil::NSN_MATCH, + phone_util_.IsNumberMatchWithTwoStrings("1 234-567 8901", + "1 234 567 8901")); + EXPECT_EQ(PhoneNumberUtil::NSN_MATCH, + phone_util_.IsNumberMatchWithTwoStrings("1 234-567 8901", + "+1 234 567 8901")); + // For this case, the match will be a short NSN match, because we cannot + // assume that the 1 might be a national prefix, so don't remove it when + // parsing. + PhoneNumber random_number; + random_number.set_country_code(41); + random_number.set_national_number(2345678901ULL); + EXPECT_EQ(PhoneNumberUtil::SHORT_NSN_MATCH, + phone_util_.IsNumberMatchWithOneString(random_number, + "1-234-567-8901")); +} + +TEST_F(PhoneNumberUtilTest, IsNumberMatchShortNsnMatches) { + // Short NSN matches with the country not specified for either one or both + // numbers. + EXPECT_EQ(PhoneNumberUtil::SHORT_NSN_MATCH, + phone_util_.IsNumberMatchWithTwoStrings("+64 3 331-6005", + "331 6005")); + + EXPECT_EQ(PhoneNumberUtil::SHORT_NSN_MATCH, + phone_util_.IsNumberMatchWithTwoStrings("3 331-6005", + "331 6005")); + + EXPECT_EQ(PhoneNumberUtil::SHORT_NSN_MATCH, + phone_util_.IsNumberMatchWithTwoStrings("3 331-6005", + "+64 331 6005")); + + // Short NSN match with the country specified. + EXPECT_EQ(PhoneNumberUtil::SHORT_NSN_MATCH, + phone_util_.IsNumberMatchWithTwoStrings("03 331-6005", + "331 6005")); + + EXPECT_EQ(PhoneNumberUtil::SHORT_NSN_MATCH, + phone_util_.IsNumberMatchWithTwoStrings("1 234 345 6789", + "345 6789")); + + EXPECT_EQ(PhoneNumberUtil::SHORT_NSN_MATCH, + phone_util_.IsNumberMatchWithTwoStrings("+1 (234) 345 6789", + "345 6789")); + + // NSN matches, country code omitted for one number, extension missing for + // one. + EXPECT_EQ(PhoneNumberUtil::SHORT_NSN_MATCH, + phone_util_.IsNumberMatchWithTwoStrings("+64 3 331-6005", + "3 331 6005#1234")); + + // One has Italian leading zero, one does not. + PhoneNumber it_number_1, it_number_2; + it_number_1.set_country_code(39); + it_number_1.set_national_number(1234ULL); + it_number_1.set_italian_leading_zero(true); + it_number_2.set_country_code(39); + it_number_2.set_national_number(1234ULL); + EXPECT_EQ(PhoneNumberUtil::SHORT_NSN_MATCH, + phone_util_.IsNumberMatch(it_number_1, it_number_2)); + + // One has an extension, the other has an extension of "". + it_number_1.set_extension("1234"); + it_number_1.clear_italian_leading_zero(); + it_number_2.set_extension(""); + EXPECT_EQ(PhoneNumberUtil::SHORT_NSN_MATCH, + phone_util_.IsNumberMatch(it_number_1, it_number_2)); +} + +TEST_F(PhoneNumberUtilTest, ParseNationalNumber) { + PhoneNumber nz_number; + nz_number.set_country_code(64); + nz_number.set_national_number(33316005ULL); + PhoneNumber test_number; + // National prefix attached. + EXPECT_EQ(PhoneNumberUtil::NO_PARSING_ERROR, + phone_util_.Parse("033316005", RegionCode::NZ(), &test_number)); + EXPECT_EQ(nz_number, test_number); + // National prefix missing. + EXPECT_EQ(PhoneNumberUtil::NO_PARSING_ERROR, + phone_util_.Parse("33316005", RegionCode::NZ(), &test_number)); + EXPECT_EQ(nz_number, test_number); + // National prefix attached and some formatting present. + EXPECT_EQ(PhoneNumberUtil::NO_PARSING_ERROR, + phone_util_.Parse("03-331 6005", RegionCode::NZ(), &test_number)); + EXPECT_EQ(nz_number, test_number); + EXPECT_EQ(PhoneNumberUtil::NO_PARSING_ERROR, + phone_util_.Parse("03 331 6005", RegionCode::NZ(), &test_number)); + EXPECT_EQ(nz_number, test_number); + + // Testing international prefixes. + // Should strip country code. + test_number.Clear(); + EXPECT_EQ(PhoneNumberUtil::NO_PARSING_ERROR, + phone_util_.Parse("0064 3 331 6005", + RegionCode::NZ(), &test_number)); + EXPECT_EQ(nz_number, test_number); + // Try again, but this time we have an international number with Region Code + // US. It should recognise the country code and parse accordingly. + test_number.Clear(); + EXPECT_EQ(PhoneNumberUtil::NO_PARSING_ERROR, + phone_util_.Parse("01164 3 331 6005", + RegionCode::US(), &test_number)); + EXPECT_EQ(nz_number, test_number); + test_number.Clear(); + EXPECT_EQ(PhoneNumberUtil::NO_PARSING_ERROR, + phone_util_.Parse("+64 3 331 6005", + RegionCode::US(), &test_number)); + EXPECT_EQ(nz_number, test_number); + + // Test for http://b/issue?id=2247493 + nz_number.Clear(); + nz_number.set_country_code(64); + nz_number.set_national_number(64123456ULL); + test_number.Clear(); + EXPECT_EQ(PhoneNumberUtil::NO_PARSING_ERROR, + phone_util_.Parse("+64(0)64123456", + RegionCode::US(), &test_number)); + EXPECT_EQ(nz_number, test_number); + + // Check that using a "/" is fine in a phone number. + PhoneNumber de_number; + de_number.set_country_code(49); + de_number.set_national_number(12345678ULL); + test_number.Clear(); + EXPECT_EQ(PhoneNumberUtil::NO_PARSING_ERROR, + phone_util_.Parse("123/45678", RegionCode::DE(), &test_number)); + EXPECT_EQ(de_number, test_number); + + PhoneNumber us_number; + us_number.set_country_code(1); + // Check it doesn't use the '1' as a country code when parsing if the phone + // number was already possible. + us_number.set_national_number(1234567890ULL); + test_number.Clear(); + EXPECT_EQ(PhoneNumberUtil::NO_PARSING_ERROR, + phone_util_.Parse("123-456-7890", RegionCode::US(), &test_number)); + EXPECT_EQ(us_number, test_number); +} + +TEST_F(PhoneNumberUtilTest, ParseNumberWithAlphaCharacters) { + // Test case with alpha characters. + PhoneNumber test_number; + PhoneNumber tollfree_number; + tollfree_number.set_country_code(64); + tollfree_number.set_national_number(800332005ULL); + EXPECT_EQ(PhoneNumberUtil::NO_PARSING_ERROR, + phone_util_.Parse("0800 DDA 005", RegionCode::NZ(), &test_number)); + EXPECT_EQ(tollfree_number, test_number); + + test_number.Clear(); + PhoneNumber premium_number; + premium_number.set_country_code(64); + premium_number.set_national_number(9003326005ULL); + EXPECT_EQ(PhoneNumberUtil::NO_PARSING_ERROR, + phone_util_.Parse("0900 DDA 6005", RegionCode::NZ(), &test_number)); + EXPECT_EQ(premium_number, test_number); + + // Not enough alpha characters for them to be considered intentional, so they + // are stripped. + test_number.Clear(); + EXPECT_EQ(PhoneNumberUtil::NO_PARSING_ERROR, + phone_util_.Parse("0900 332 6005a", + RegionCode::NZ(), &test_number)); + EXPECT_EQ(premium_number, test_number); + test_number.Clear(); + EXPECT_EQ(PhoneNumberUtil::NO_PARSING_ERROR, + phone_util_.Parse("0900 332 600a5", + RegionCode::NZ(), &test_number)); + EXPECT_EQ(premium_number, test_number); + + test_number.Clear(); + EXPECT_EQ(PhoneNumberUtil::NO_PARSING_ERROR, + phone_util_.Parse("0900 332 600A5", + RegionCode::NZ(), &test_number)); + EXPECT_EQ(premium_number, test_number); + + test_number.Clear(); + EXPECT_EQ(PhoneNumberUtil::NO_PARSING_ERROR, + phone_util_.Parse("0900 a332 600A5", + RegionCode::NZ(), &test_number)); + EXPECT_EQ(premium_number, test_number); +} + +TEST_F(PhoneNumberUtilTest, ParseWithInternationalPrefixes) { + PhoneNumber us_number; + us_number.set_country_code(1); + us_number.set_national_number(6503336000ULL); + PhoneNumber test_number; + EXPECT_EQ(PhoneNumberUtil::NO_PARSING_ERROR, + phone_util_.Parse("+1 (650) 333-6000", + RegionCode::US(), &test_number)); + EXPECT_EQ(us_number, test_number); + test_number.Clear(); + EXPECT_EQ(PhoneNumberUtil::NO_PARSING_ERROR, + phone_util_.Parse("+1-650-333-6000", + RegionCode::US(), &test_number)); + EXPECT_EQ(us_number, test_number); + + // Calling the US number from Singapore by using different service providers + // 1st test: calling using SingTel IDD service (IDD is 001) + test_number.Clear(); + EXPECT_EQ(PhoneNumberUtil::NO_PARSING_ERROR, + phone_util_.Parse("0011-650-333-6000", + RegionCode::SG(), &test_number)); + EXPECT_EQ(us_number, test_number); + // 2nd test: calling using StarHub IDD service (IDD is 008) + test_number.Clear(); + EXPECT_EQ(PhoneNumberUtil::NO_PARSING_ERROR, + phone_util_.Parse("0081-650-333-6000", + RegionCode::SG(), &test_number)); + EXPECT_EQ(us_number, test_number); + // 3rd test: calling using SingTel V019 service (IDD is 019) + test_number.Clear(); + EXPECT_EQ(PhoneNumberUtil::NO_PARSING_ERROR, + phone_util_.Parse("0191-650-333-6000", + RegionCode::SG(), &test_number)); + EXPECT_EQ(us_number, test_number); + // Calling the US number from Poland + test_number.Clear(); + EXPECT_EQ(PhoneNumberUtil::NO_PARSING_ERROR, + phone_util_.Parse("0~01-650-333-6000", + RegionCode::PL(), &test_number)); + EXPECT_EQ(us_number, test_number); + + // Using "++" at the start. + test_number.Clear(); + EXPECT_EQ(PhoneNumberUtil::NO_PARSING_ERROR, + phone_util_.Parse("++1 (650) 333-6000", + RegionCode::PL(), &test_number)); + EXPECT_EQ(us_number, test_number); + // Using a full-width plus sign. + test_number.Clear(); + EXPECT_EQ(PhoneNumberUtil::NO_PARSING_ERROR, + phone_util_.Parse("+1 (650) 333-6000", + RegionCode::SG(), &test_number)); + EXPECT_EQ(us_number, test_number); + // The whole number, including punctuation, is here represented in full-width + // form. + test_number.Clear(); + EXPECT_EQ(PhoneNumberUtil::NO_PARSING_ERROR, + phone_util_.Parse("+1 (650) 333-6000", + RegionCode::SG(), &test_number)); + EXPECT_EQ(us_number, test_number); + + // Using the U+30FC dash. + test_number.Clear(); + EXPECT_EQ(PhoneNumberUtil::NO_PARSING_ERROR, + phone_util_.Parse("+1 (650) 333ー6000", + RegionCode::SG(), &test_number)); + EXPECT_EQ(us_number, test_number); +} + +TEST_F(PhoneNumberUtilTest, ParseWithLeadingZero) { + PhoneNumber it_number; + it_number.set_country_code(39); + it_number.set_national_number(236618300ULL); + it_number.set_italian_leading_zero(true); + PhoneNumber test_number; + EXPECT_EQ(PhoneNumberUtil::NO_PARSING_ERROR, + phone_util_.Parse("+39 02-36618 300", + RegionCode::NZ(), &test_number)); + EXPECT_EQ(it_number, test_number); + test_number.Clear(); + EXPECT_EQ(PhoneNumberUtil::NO_PARSING_ERROR, + phone_util_.Parse("02-36618 300", RegionCode::IT(), &test_number)); + EXPECT_EQ(it_number, test_number); + + it_number.Clear(); + it_number.set_country_code(39); + it_number.set_national_number(312345678ULL); + test_number.Clear(); + EXPECT_EQ(PhoneNumberUtil::NO_PARSING_ERROR, + phone_util_.Parse("312 345 678", RegionCode::IT(), &test_number)); + EXPECT_EQ(it_number, test_number); +} + +TEST_F(PhoneNumberUtilTest, ParseNationalNumberArgentina) { + // Test parsing mobile numbers of Argentina. + PhoneNumber ar_number; + ar_number.set_country_code(54); + ar_number.set_national_number(93435551212ULL); + PhoneNumber test_number; + EXPECT_EQ(PhoneNumberUtil::NO_PARSING_ERROR, + phone_util_.Parse("+54 9 343 555 1212", RegionCode::AR(), + &test_number)); + EXPECT_EQ(ar_number, test_number); + test_number.Clear(); + EXPECT_EQ(PhoneNumberUtil::NO_PARSING_ERROR, + phone_util_.Parse("0343 15 555 1212", RegionCode::AR(), + &test_number)); + EXPECT_EQ(ar_number, test_number); + + ar_number.set_national_number(93715654320ULL); + test_number.Clear(); + EXPECT_EQ(PhoneNumberUtil::NO_PARSING_ERROR, + phone_util_.Parse("+54 9 3715 65 4320", RegionCode::AR(), + &test_number)); + EXPECT_EQ(ar_number, test_number); + test_number.Clear(); + EXPECT_EQ(PhoneNumberUtil::NO_PARSING_ERROR, + phone_util_.Parse("03715 15 65 4320", RegionCode::AR(), + &test_number)); + EXPECT_EQ(ar_number, test_number); + + // Test parsing fixed-line numbers of Argentina. + ar_number.set_national_number(1137970000ULL); + test_number.Clear(); + EXPECT_EQ(PhoneNumberUtil::NO_PARSING_ERROR, + phone_util_.Parse("+54 11 3797 0000", RegionCode::AR(), + &test_number)); + EXPECT_EQ(ar_number, test_number); + test_number.Clear(); + EXPECT_EQ(PhoneNumberUtil::NO_PARSING_ERROR, + phone_util_.Parse("011 3797 0000", RegionCode::AR(), &test_number)); + EXPECT_EQ(ar_number, test_number); + + ar_number.set_national_number(3715654321ULL); + test_number.Clear(); + EXPECT_EQ(PhoneNumberUtil::NO_PARSING_ERROR, + phone_util_.Parse("+54 3715 65 4321", RegionCode::AR(), + &test_number)); + EXPECT_EQ(ar_number, test_number); + test_number.Clear(); + EXPECT_EQ(PhoneNumberUtil::NO_PARSING_ERROR, + phone_util_.Parse("03715 65 4321", RegionCode::AR(), &test_number)); + EXPECT_EQ(ar_number, test_number); + + ar_number.set_national_number(2312340000ULL); + test_number.Clear(); + EXPECT_EQ(PhoneNumberUtil::NO_PARSING_ERROR, + phone_util_.Parse("+54 23 1234 0000", RegionCode::AR(), + &test_number)); + EXPECT_EQ(ar_number, test_number); + test_number.Clear(); + EXPECT_EQ(PhoneNumberUtil::NO_PARSING_ERROR, + phone_util_.Parse("023 1234 0000", RegionCode::AR(), &test_number)); + EXPECT_EQ(ar_number, test_number); +} + +TEST_F(PhoneNumberUtilTest, ParseWithXInNumber) { + // Test that having an 'x' in the phone number at the start is ok and that it + // just gets removed. + PhoneNumber ar_number; + ar_number.set_country_code(54); + ar_number.set_national_number(123456789ULL); + PhoneNumber test_number; + EXPECT_EQ(PhoneNumberUtil::NO_PARSING_ERROR, + phone_util_.Parse("0123456789", RegionCode::AR(), &test_number)); + EXPECT_EQ(ar_number, test_number); + test_number.Clear(); + EXPECT_EQ(PhoneNumberUtil::NO_PARSING_ERROR, + phone_util_.Parse("(0) 123456789", RegionCode::AR(), &test_number)); + EXPECT_EQ(ar_number, test_number); + test_number.Clear(); + EXPECT_EQ(PhoneNumberUtil::NO_PARSING_ERROR, + phone_util_.Parse("0 123456789", RegionCode::AR(), &test_number)); + EXPECT_EQ(ar_number, test_number); + test_number.Clear(); + EXPECT_EQ(PhoneNumberUtil::NO_PARSING_ERROR, + phone_util_.Parse("(0xx) 123456789", RegionCode::AR(), + &test_number)); + EXPECT_EQ(ar_number, test_number); + + PhoneNumber ar_from_us; + ar_from_us.set_country_code(54); + ar_from_us.set_national_number(81429712ULL); + // This test is intentionally constructed such that the number of digit after + // xx is larger than 7, so that the number won't be mistakenly treated as an + // extension, as we allow extensions up to 7 digits. This assumption is okay + // for now as all the countries where a carrier selection code is written in + // the form of xx have a national significant number of length larger than 7. + test_number.Clear(); + EXPECT_EQ(PhoneNumberUtil::NO_PARSING_ERROR, + phone_util_.Parse("011xx5481429712", RegionCode::US(), + &test_number)); + EXPECT_EQ(ar_from_us, test_number); +} + +TEST_F(PhoneNumberUtilTest, ParseNumbersMexico) { + // Test parsing fixed-line numbers of Mexico. + PhoneNumber mx_number; + + mx_number.set_country_code(52); + mx_number.set_national_number(4499780001ULL); + PhoneNumber test_number; + EXPECT_EQ(PhoneNumberUtil::NO_PARSING_ERROR, + phone_util_.Parse("+52 (449)978-0001", RegionCode::MX(), + &test_number)); + EXPECT_EQ(mx_number, test_number); + test_number.Clear(); + EXPECT_EQ(PhoneNumberUtil::NO_PARSING_ERROR, + phone_util_.Parse("01 (449)978-0001", RegionCode::MX(), + &test_number)); + EXPECT_EQ(mx_number, test_number); + test_number.Clear(); + EXPECT_EQ(PhoneNumberUtil::NO_PARSING_ERROR, + phone_util_.Parse("(449)978-0001", RegionCode::MX(), + &test_number)); + EXPECT_EQ(mx_number, test_number); + + // Test parsing mobile numbers of Mexico. + mx_number.Clear(); + mx_number.set_country_code(52); + mx_number.set_national_number(13312345678ULL); + test_number.Clear(); + EXPECT_EQ(PhoneNumberUtil::NO_PARSING_ERROR, + phone_util_.Parse("+52 1 33 1234-5678", RegionCode::MX(), + &test_number)); + EXPECT_EQ(mx_number, test_number); + test_number.Clear(); + EXPECT_EQ(PhoneNumberUtil::NO_PARSING_ERROR, + phone_util_.Parse("044 (33) 1234-5678", RegionCode::MX(), + &test_number)); + EXPECT_EQ(mx_number, test_number); + test_number.Clear(); + EXPECT_EQ(PhoneNumberUtil::NO_PARSING_ERROR, + phone_util_.Parse("045 33 1234-5678", RegionCode::MX(), + &test_number)); + EXPECT_EQ(mx_number, test_number); +} + +TEST_F(PhoneNumberUtilTest, FailedParseOnInvalidNumbers) { + PhoneNumber test_number; + EXPECT_EQ(PhoneNumberUtil::NOT_A_NUMBER, + phone_util_.Parse("This is not a phone number", RegionCode::NZ(), + &test_number)); + EXPECT_EQ(PhoneNumber::default_instance(), test_number); + + EXPECT_EQ(PhoneNumberUtil::TOO_LONG_NSN, + phone_util_.Parse("01495 72553301873 810104", RegionCode::GB(), + &test_number)); + EXPECT_EQ(PhoneNumber::default_instance(), test_number); + + EXPECT_EQ(PhoneNumberUtil::TOO_SHORT_NSN, + phone_util_.Parse("+49 0", RegionCode::DE(), + &test_number)); + EXPECT_EQ(PhoneNumber::default_instance(), test_number); + + EXPECT_EQ(PhoneNumberUtil::INVALID_COUNTRY_CODE_ERROR, + phone_util_.Parse("+210 3456 56789", RegionCode::NZ(), + &test_number)); + EXPECT_EQ(PhoneNumber::default_instance(), test_number); + + EXPECT_EQ(PhoneNumberUtil::INVALID_COUNTRY_CODE_ERROR, + phone_util_.Parse("123 456 7890", RegionCode::ZZ(), + &test_number)); + EXPECT_EQ(PhoneNumber::default_instance(), test_number); + + EXPECT_EQ(PhoneNumberUtil::INVALID_COUNTRY_CODE_ERROR, + phone_util_.Parse("123 456 7890", RegionCode::CS(), + &test_number)); + EXPECT_EQ(PhoneNumber::default_instance(), test_number); + + EXPECT_EQ(PhoneNumberUtil::TOO_SHORT_AFTER_IDD, + phone_util_.Parse("0044-----", RegionCode::GB(), + &test_number)); + EXPECT_EQ(PhoneNumber::default_instance(), test_number); + EXPECT_EQ(PhoneNumberUtil::TOO_SHORT_AFTER_IDD, + phone_util_.Parse("0044", RegionCode::GB(), + &test_number)); + EXPECT_EQ(PhoneNumber::default_instance(), test_number); + + EXPECT_EQ(PhoneNumberUtil::TOO_SHORT_AFTER_IDD, + phone_util_.Parse("011", RegionCode::US(), + &test_number)); + EXPECT_EQ(PhoneNumber::default_instance(), test_number); + EXPECT_EQ(PhoneNumberUtil::TOO_SHORT_AFTER_IDD, + phone_util_.Parse("0119", RegionCode::US(), + &test_number)); + EXPECT_EQ(PhoneNumber::default_instance(), test_number); +} + +TEST_F(PhoneNumberUtilTest, ParseNumbersWithPlusWithNoRegion) { + PhoneNumber nz_number; + nz_number.set_country_code(64); + nz_number.set_national_number(33316005ULL); + // "ZZ" is allowed only if the number starts with a '+' - then + // the country code can be calculated. + PhoneNumber result_proto; + EXPECT_EQ(PhoneNumberUtil::NO_PARSING_ERROR, + phone_util_.Parse("+64 3 331 6005", RegionCode::ZZ(), + &result_proto)); + EXPECT_EQ(nz_number, result_proto); + + // Test with full-width plus. + result_proto.Clear(); + EXPECT_EQ(PhoneNumberUtil::NO_PARSING_ERROR, + phone_util_.Parse("+64 3 331 6005", RegionCode::ZZ(), + &result_proto)); + EXPECT_EQ(nz_number, result_proto); + // Test with normal plus but leading characters that need to be stripped. + EXPECT_EQ(PhoneNumberUtil::NO_PARSING_ERROR, + phone_util_.Parse(" +64 3 331 6005", RegionCode::ZZ(), + &result_proto)); + EXPECT_EQ(nz_number, result_proto); + + nz_number.set_raw_input("+64 3 331 6005"); + nz_number.set_country_code_source(PhoneNumber::FROM_NUMBER_WITH_PLUS_SIGN); + // It is important that we set this to an empty string, since we used + // ParseAndKeepRawInput and no carrrier code was found. + nz_number.set_preferred_domestic_carrier_code(""); + result_proto.Clear(); + EXPECT_EQ(PhoneNumberUtil::NO_PARSING_ERROR, + phone_util_.ParseAndKeepRawInput("+64 3 331 6005", RegionCode::ZZ(), + &result_proto)); + EXPECT_EQ(nz_number, result_proto); +} + +TEST_F(PhoneNumberUtilTest, ParseExtensions) { + PhoneNumber nz_number; + nz_number.set_country_code(64); + nz_number.set_national_number(33316005ULL); + nz_number.set_extension("3456"); + PhoneNumber test_number; + EXPECT_EQ(PhoneNumberUtil::NO_PARSING_ERROR, + phone_util_.Parse("03 331 6005 ext 3456", RegionCode::NZ(), + &test_number)); + EXPECT_EQ(nz_number, test_number); + test_number.Clear(); + EXPECT_EQ(PhoneNumberUtil::NO_PARSING_ERROR, + phone_util_.Parse("03 331 6005x3456", RegionCode::NZ(), + &test_number)); + EXPECT_EQ(nz_number, test_number); + test_number.Clear(); + EXPECT_EQ(PhoneNumberUtil::NO_PARSING_ERROR, + phone_util_.Parse("03-331 6005 int.3456", RegionCode::NZ(), + &test_number)); + EXPECT_EQ(nz_number, test_number); + test_number.Clear(); + EXPECT_EQ(PhoneNumberUtil::NO_PARSING_ERROR, + phone_util_.Parse("03 331 6005 #3456", RegionCode::NZ(), + &test_number)); + EXPECT_EQ(nz_number, test_number); + + // Test the following do not extract extensions: + PhoneNumber non_extn_number; + non_extn_number.set_country_code(1); + non_extn_number.set_national_number(80074935247ULL); + test_number.Clear(); + EXPECT_EQ(PhoneNumberUtil::NO_PARSING_ERROR, + phone_util_.Parse("1800 six-flags", RegionCode::US(), + &test_number)); + EXPECT_EQ(non_extn_number, test_number); + test_number.Clear(); + EXPECT_EQ(PhoneNumberUtil::NO_PARSING_ERROR, + phone_util_.Parse("1800 SIX-FLAGS", RegionCode::US(), + &test_number)); + EXPECT_EQ(non_extn_number, test_number); + test_number.Clear(); + EXPECT_EQ(PhoneNumberUtil::NO_PARSING_ERROR, + phone_util_.Parse("0~0 1800 7493 5247", RegionCode::PL(), + &test_number)); + EXPECT_EQ(non_extn_number, test_number); + test_number.Clear(); + EXPECT_EQ(PhoneNumberUtil::NO_PARSING_ERROR, + phone_util_.Parse("(1800) 7493.5247", RegionCode::US(), + &test_number)); + EXPECT_EQ(non_extn_number, test_number); + + // Check that the last instance of an extension token is matched. + PhoneNumber extn_number; + extn_number.set_country_code(1); + extn_number.set_national_number(80074935247ULL); + extn_number.set_extension("1234"); + test_number.Clear(); + EXPECT_EQ(PhoneNumberUtil::NO_PARSING_ERROR, + phone_util_.Parse("0~0 1800 7493 5247 ~1234", RegionCode::PL(), + &test_number)); + EXPECT_EQ(extn_number, test_number); + + // Verifying bug-fix where the last digit of a number was previously omitted + // if it was a 0 when extracting the extension. Also verifying a few different + // cases of extensions. + PhoneNumber uk_number; + uk_number.set_country_code(44); + uk_number.set_national_number(2034567890ULL); + uk_number.set_extension("456"); + test_number.Clear(); + EXPECT_EQ(PhoneNumberUtil::NO_PARSING_ERROR, + phone_util_.Parse("+44 2034567890x456", RegionCode::NZ(), + &test_number)); + EXPECT_EQ(uk_number, test_number); + test_number.Clear(); + EXPECT_EQ(PhoneNumberUtil::NO_PARSING_ERROR, + phone_util_.Parse("+44 2034567890x456", RegionCode::GB(), + &test_number)); + EXPECT_EQ(uk_number, test_number); + test_number.Clear(); + EXPECT_EQ(PhoneNumberUtil::NO_PARSING_ERROR, + phone_util_.Parse("+44 2034567890 x456", RegionCode::GB(), + &test_number)); + EXPECT_EQ(uk_number, test_number); + test_number.Clear(); + EXPECT_EQ(PhoneNumberUtil::NO_PARSING_ERROR, + phone_util_.Parse("+44 2034567890 X456", RegionCode::GB(), + &test_number)); + EXPECT_EQ(uk_number, test_number); + test_number.Clear(); + EXPECT_EQ(PhoneNumberUtil::NO_PARSING_ERROR, + phone_util_.Parse("+44 2034567890 X 456", RegionCode::GB(), + &test_number)); + EXPECT_EQ(uk_number, test_number); + test_number.Clear(); + EXPECT_EQ(PhoneNumberUtil::NO_PARSING_ERROR, + phone_util_.Parse("+44 2034567890 X 456", RegionCode::GB(), + &test_number)); + EXPECT_EQ(uk_number, test_number); + test_number.Clear(); + EXPECT_EQ(PhoneNumberUtil::NO_PARSING_ERROR, + phone_util_.Parse("+44 2034567890 x 456 ", RegionCode::GB(), + &test_number)); + EXPECT_EQ(uk_number, test_number); + test_number.Clear(); + EXPECT_EQ(PhoneNumberUtil::NO_PARSING_ERROR, + phone_util_.Parse("+44 2034567890 X 456", RegionCode::GB(), + &test_number)); + EXPECT_EQ(uk_number, test_number); + test_number.Clear(); + EXPECT_EQ(PhoneNumberUtil::NO_PARSING_ERROR, + phone_util_.Parse("+44-2034567890;ext=456", RegionCode::GB(), + &test_number)); + EXPECT_EQ(uk_number, test_number); + + PhoneNumber us_with_extension; + us_with_extension.set_country_code(1); + us_with_extension.set_national_number(8009013355ULL); + us_with_extension.set_extension("7246433"); + test_number.Clear(); + EXPECT_EQ(PhoneNumberUtil::NO_PARSING_ERROR, + phone_util_.Parse("(800) 901-3355 x 7246433", RegionCode::US(), + &test_number)); + EXPECT_EQ(us_with_extension, test_number); + test_number.Clear(); + EXPECT_EQ(PhoneNumberUtil::NO_PARSING_ERROR, + phone_util_.Parse("(800) 901-3355 , ext 7246433", RegionCode::US(), + &test_number)); + EXPECT_EQ(us_with_extension, test_number); + test_number.Clear(); + EXPECT_EQ(PhoneNumberUtil::NO_PARSING_ERROR, + phone_util_.Parse("(800) 901-3355 ,extension 7246433", + RegionCode::US(), + &test_number)); + EXPECT_EQ(us_with_extension, test_number); + test_number.Clear(); + EXPECT_EQ(PhoneNumberUtil::NO_PARSING_ERROR, + phone_util_.Parse("(800) 901-3355 ,extensión 7246433", + RegionCode::US(), + &test_number)); + EXPECT_EQ(us_with_extension, test_number); + test_number.Clear(); + // Repeat with the small letter o with acute accent created by combining + // characters. + EXPECT_EQ(PhoneNumberUtil::NO_PARSING_ERROR, + phone_util_.Parse("(800) 901-3355 ,extensión 7246433", + RegionCode::US(), + &test_number)); + EXPECT_EQ(us_with_extension, test_number); + test_number.Clear(); + EXPECT_EQ(PhoneNumberUtil::NO_PARSING_ERROR, + phone_util_.Parse("(800) 901-3355 , 7246433", RegionCode::US(), + &test_number)); + EXPECT_EQ(us_with_extension, test_number); + test_number.Clear(); + EXPECT_EQ(PhoneNumberUtil::NO_PARSING_ERROR, + phone_util_.Parse("(800) 901-3355 ext: 7246433", RegionCode::US(), + &test_number)); + EXPECT_EQ(us_with_extension, test_number); + + // Test that if a number has two extensions specified, we ignore the second. + PhoneNumber us_with_two_extensions_number; + us_with_two_extensions_number.set_country_code(1); + us_with_two_extensions_number.set_national_number(2121231234ULL); + us_with_two_extensions_number.set_extension("508"); + test_number.Clear(); + EXPECT_EQ(PhoneNumberUtil::NO_PARSING_ERROR, + phone_util_.Parse("(212)123-1234 x508/x1234", RegionCode::US(), + &test_number)); + EXPECT_EQ(us_with_two_extensions_number, test_number); + test_number.Clear(); + EXPECT_EQ(PhoneNumberUtil::NO_PARSING_ERROR, + phone_util_.Parse("(212)123-1234 x508/ x1234", RegionCode::US(), + &test_number)); + EXPECT_EQ(us_with_two_extensions_number, test_number); + test_number.Clear(); + EXPECT_EQ(PhoneNumberUtil::NO_PARSING_ERROR, + phone_util_.Parse("(212)123-1234 x508\\x1234", RegionCode::US(), + &test_number)); + EXPECT_EQ(us_with_two_extensions_number, test_number); + + // Test parsing numbers in the form (645) 123-1234-910# works, where the last + // 3 digits before the # are an extension. + us_with_extension.Clear(); + us_with_extension.set_country_code(1); + us_with_extension.set_national_number(6451231234ULL); + us_with_extension.set_extension("910"); + test_number.Clear(); + EXPECT_EQ(PhoneNumberUtil::NO_PARSING_ERROR, + phone_util_.Parse("+1 (645) 123 1234-910#", RegionCode::US(), + &test_number)); + EXPECT_EQ(us_with_extension, test_number); +} + +TEST_F(PhoneNumberUtilTest, ParseAndKeepRaw) { + PhoneNumber alpha_numeric_number; + alpha_numeric_number.set_country_code(1); + alpha_numeric_number.set_national_number(80074935247ULL); + alpha_numeric_number.set_raw_input("800 six-flags"); + alpha_numeric_number.set_country_code_source( + PhoneNumber::FROM_DEFAULT_COUNTRY); + alpha_numeric_number.set_preferred_domestic_carrier_code(""); + + PhoneNumber test_number; + EXPECT_EQ(PhoneNumberUtil::NO_PARSING_ERROR, + phone_util_.ParseAndKeepRawInput("800 six-flags", RegionCode::US(), + &test_number)); + EXPECT_EQ(alpha_numeric_number, test_number); + + alpha_numeric_number.set_national_number(8007493524ULL); + alpha_numeric_number.set_raw_input("1800 six-flag"); + alpha_numeric_number.set_country_code_source( + PhoneNumber::FROM_NUMBER_WITHOUT_PLUS_SIGN); + EXPECT_EQ(PhoneNumberUtil::NO_PARSING_ERROR, + phone_util_.ParseAndKeepRawInput("1800 six-flag", RegionCode::US(), + &test_number)); + EXPECT_EQ(alpha_numeric_number, test_number); + + alpha_numeric_number.set_raw_input("+1800 six-flag"); + alpha_numeric_number.set_country_code_source( + PhoneNumber::FROM_NUMBER_WITH_PLUS_SIGN); + EXPECT_EQ(PhoneNumberUtil::NO_PARSING_ERROR, + phone_util_.ParseAndKeepRawInput("+1800 six-flag", RegionCode::CN(), + &test_number)); + EXPECT_EQ(alpha_numeric_number, test_number); + + alpha_numeric_number.set_raw_input("001800 six-flag"); + alpha_numeric_number.set_country_code_source( + PhoneNumber::FROM_NUMBER_WITH_IDD); + EXPECT_EQ(PhoneNumberUtil::NO_PARSING_ERROR, + phone_util_.ParseAndKeepRawInput("001800 six-flag", + RegionCode::NZ(), + &test_number)); + EXPECT_EQ(alpha_numeric_number, test_number); + + // Try with invalid region - expect failure. + test_number.Clear(); + EXPECT_EQ(PhoneNumberUtil::INVALID_COUNTRY_CODE_ERROR, + phone_util_.Parse("123 456 7890", RegionCode::CS(), &test_number)); + EXPECT_EQ(PhoneNumber::default_instance(), test_number); + + PhoneNumber korean_number; + korean_number.set_country_code(82); + korean_number.set_national_number(22123456); + korean_number.set_raw_input("08122123456"); + korean_number.set_country_code_source(PhoneNumber::FROM_DEFAULT_COUNTRY); + korean_number.set_preferred_domestic_carrier_code("81"); + EXPECT_EQ(PhoneNumberUtil::NO_PARSING_ERROR, + phone_util_.ParseAndKeepRawInput("08122123456", + RegionCode::KR(), + &test_number)); + EXPECT_EQ(korean_number, test_number); +} + +TEST_F(PhoneNumberUtilTest, IsAlphaNumber) { + static const string kAlphaNumber("1800 six-flags"); + EXPECT_TRUE(phone_util_.IsAlphaNumber(kAlphaNumber)); + static const string kAlphaNumberWithExtension = "1800 six-flags ext. 1234"; + EXPECT_TRUE(phone_util_.IsAlphaNumber(kAlphaNumberWithExtension)); + static const string kNonAlphaNumber("1800 123-1234"); + EXPECT_FALSE(phone_util_.IsAlphaNumber(kNonAlphaNumber)); + static const string kNonAlphaNumberWithExtension( + "1800 123-1234 extension: 1234"); + EXPECT_FALSE(phone_util_.IsAlphaNumber(kNonAlphaNumberWithExtension)); +} + +} // namespace phonenumbers +} // namespace i18n diff --git a/third_party/libphonenumber/cpp/src/re2_cache.cc b/third_party/libphonenumber/cpp/src/re2_cache.cc new file mode 100644 index 0000000..1abf95e --- /dev/null +++ b/third_party/libphonenumber/cpp/src/re2_cache.cc @@ -0,0 +1,75 @@ +// Copyright (C) 2011 Google Inc. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +// Author: Fredrik Roubert <roubert@google.com> + +#include "re2_cache.h" + +#include <cstddef> +#include <string> +#include <utility> + +#include <re2/re2.h> + +#include "base/logging.h" +#include "base/synchronization/lock.h" + +using std::string; + +// A basic text book string hash function implementation, this one taken from +// The Practice of Programming (Kernighan and Pike 1999). It could be a good +// idea in the future to evaluate how well it actually performs and possibly +// switch to another hash function better suited to this particular use case. +namespace __gnu_cxx { +template<> struct hash<string> { + enum { MULTIPLIER = 31 }; + size_t operator()(const string& key) const { + size_t h = 0; + for (const char* p = key.c_str(); *p != '\0'; ++p) { + h *= MULTIPLIER; + h += *p; + } + return h; + } +}; +} // namespace __gnu_cxx + +namespace i18n { +namespace phonenumbers { + +RE2Cache::RE2Cache(size_t min_items) : cache_impl_(new CacheImpl(min_items)) {} +RE2Cache::~RE2Cache() { + base::AutoLock l(lock_); + LOG(2) << "Cache entries upon destruction: " << cache_impl_->size(); + for (CacheImpl::const_iterator + it = cache_impl_->begin(); it != cache_impl_->end(); ++it) { + delete it->second; + } +} + +RE2Cache::ScopedAccess::ScopedAccess(RE2Cache* cache, const string& pattern) { + DCHECK(cache); + base::AutoLock l(cache->lock_); + CacheImpl* const cache_impl = cache->cache_impl_.get(); + CacheImpl::const_iterator it = cache_impl->find(pattern); + if (it != cache_impl->end()) { + regexp_ = it->second; + } else { + regexp_ = new RE2(pattern); + cache_impl->insert(make_pair(pattern, regexp_)); + } +} + +} // namespace phonenumbers +} // namespace i18n diff --git a/third_party/libphonenumber/cpp/src/re2_cache.h b/third_party/libphonenumber/cpp/src/re2_cache.h new file mode 100644 index 0000000..ab2e9bb --- /dev/null +++ b/third_party/libphonenumber/cpp/src/re2_cache.h @@ -0,0 +1,83 @@ +// Copyright (C) 2011 Google Inc. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +// Author: Fredrik Roubert <roubert@google.com> + +// RE2Cache is a simple wrapper around hash_map<> to store RE2 objects. +// +// To get a cached RE2 object for a regexp pattern string, create a ScopedAccess +// object with a pointer to the cache object and the pattern string itself as +// constructor parameters. If an RE2 object corresponding to the pattern string +// doesn't already exist, it will be created by the access object constructor. +// The access object implements operator const RE& and can therefore be passed +// as an argument to any function that expects an RE2 object. +// +// RE2Cache cache; +// RE2Cache::ScopedAccess foo(&cache, "foo"); +// bool match = RE2::FullMatch("foobar", foo); + +#ifndef I18N_PHONENUMBERS_RE2_CACHE_H_ +#define I18N_PHONENUMBERS_RE2_CACHE_H_ + +#ifdef __DEPRECATED +#undef __DEPRECATED // Don't warn for using <hash_map>. +#endif + +#include <cstddef> +#include <hash_map> +#include <string> + +#include "base/scoped_ptr.h" +#include "base/synchronization/lock.h" + +namespace re2 { +class RE2; +} // namespace re2 + +namespace i18n { +namespace phonenumbers { + +using re2::RE2; +using std::string; +using __gnu_cxx::hash_map; + +class RE2Cache { + private: + typedef hash_map<string, const RE2*> CacheImpl; + + public: + explicit RE2Cache(size_t min_items); + ~RE2Cache(); + + class ScopedAccess { + public: + ScopedAccess(RE2Cache* cache, const string& pattern); + operator const RE2&() const { return *regexp_; } + + private: + const RE2* regexp_; + friend class RE2CacheTest_AccessConstructor_Test; + }; + + private: + base::Lock lock_; // protects cache_impl_ + scoped_ptr<CacheImpl> cache_impl_; // protected by lock_ + friend class RE2CacheTest_CacheConstructor_Test; + friend class RE2CacheTest_AccessConstructor_Test; +}; + +} // namespace phonenumbers +} // namespace i18n + +#endif // I18N_PHONENUMBERS_RE2_CACHE_H_ diff --git a/third_party/libphonenumber/cpp/src/re2_cache_test.cc b/third_party/libphonenumber/cpp/src/re2_cache_test.cc new file mode 100644 index 0000000..70f6c44 --- /dev/null +++ b/third_party/libphonenumber/cpp/src/re2_cache_test.cc @@ -0,0 +1,63 @@ +// Copyright (C) 2011 Google Inc. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +// Author: Fredrik Roubert <roubert@google.com> + +#include <cstddef> +#include <string> + +#include <gtest/gtest.h> +#include <re2/re2.h> + +#include "re2_cache.h" + +namespace i18n { +namespace phonenumbers { + +using std::string; + +class RE2CacheTest : public testing::Test { + protected: + static const size_t min_items_ = 2; + + RE2CacheTest() : cache_(min_items_) {} + virtual ~RE2CacheTest() {} + + RE2Cache cache_; +}; + +TEST_F(RE2CacheTest, CacheConstructor) { + ASSERT_TRUE(cache_.cache_impl_ != NULL); + EXPECT_TRUE(cache_.cache_impl_->empty()); +} + +TEST_F(RE2CacheTest, AccessConstructor) { + static const string foo("foo"); + RE2Cache::ScopedAccess access(&cache_, foo); + + EXPECT_TRUE(access.regexp_ != NULL); + ASSERT_TRUE(cache_.cache_impl_ != NULL); + EXPECT_EQ(1, cache_.cache_impl_->size()); +} + +TEST_F(RE2CacheTest, OperatorRE2) { + static const string foo("foo"); + RE2Cache::ScopedAccess access(&cache_, foo); + + const RE2& regexp = access; + EXPECT_EQ(foo, regexp.pattern()); +} + +} // namespace phonenumbers +} // namespace i18n diff --git a/third_party/libphonenumber/cpp/src/regexp_adapter.h b/third_party/libphonenumber/cpp/src/regexp_adapter.h new file mode 100644 index 0000000..233adbe --- /dev/null +++ b/third_party/libphonenumber/cpp/src/regexp_adapter.h @@ -0,0 +1,96 @@ +// Copyright (C) 2011 Google Inc. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +// Author: George Yakovlev + +#ifndef I18N_PHONENUMBERS_REGEXP_ADAPTER_H_ +#define I18N_PHONENUMBERS_REGEXP_ADAPTER_H_ + +#include <string> + +// Regexp adapter to allow pluggable regexp engine, as it is external to +// libphonenumber. + +namespace reg_exp { + +// The reg exp input class. +// It supports only functions used in phonelibrary. +class RegularExpressionInput { + public: + virtual ~RegularExpressionInput() {}; + + // Matches string to regular expression, returns true if expression was + // matched, false otherwise, advances position in the match. + // |reg_exp| - expression to be matched. + // |beginning_only| - if true match would be successfull only if appears at + // the beginning of the tested region of the string. + // |matched_string1| - successfully matched first string. Can be NULL. + // |matched_string2| - successfully matched second string. Can be NULL. + virtual bool ConsumeRegExp(std::string const& reg_exp, + bool beginning_only, + std::string* matched_string1, + std::string* matched_string2) = 0; + // Convert unmatched input to a string. + virtual std::string ToString() const = 0; +}; + +// The regular expression class. +// It supports only functions used in phonelibrary. +class RegularExpression { + public: + RegularExpression() {} + virtual ~RegularExpression() {} + + // Matches string to regular expression, returns true if expression was + // matched, false otherwise, advances position in the match. + // |input_string| - string to be searched. + // |beginning_only| - if true match would be successfull only if appears at + // the beginning of the tested region of the string. + // |matched_string1| - successfully matched first string. Can be NULL. + // |matched_string2| - successfully matched second string. Can be NULL. + // |matched_string3| - successfully matched third string. Can be NULL. + virtual bool Consume(RegularExpressionInput* input_string, + bool beginning_only, + std::string* matched_string1 = NULL, + std::string* matched_string2 = NULL, + std::string* matched_string3 = NULL) const = 0; + + + // Matches string to regular expression, returns true if expression was + // matched, false otherwise. + // |input_string| - string to be searched. + // |full_match| - if true match would be successfull only if it matches the + // complete string. + // |matched_string| - successfully matched string. Can be NULL. + virtual bool Match(const char* input_string, + bool full_match, + std::string* matched_string) const = 0; + + // Replaces match(es) in the |string_to_process|. if |global| is true, + // replaces all the matches, only the first match otherwise. + // |replacement_string| - text the matches are replaced with. + // Returns true if expression successfully processed through the string, + // even if no actual replacements were made. Returns false in case of an + // error. + virtual bool Replace(std::string* string_to_process, + bool global, + const char* replacement_string) const = 0; +}; + +RegularExpressionInput* CreateRegularExpressionInput(const char* utf8_input); +RegularExpression* CreateRegularExpression(const char* utf8_regexp); + +} // namespace reg_exp + +#endif // I18N_PHONENUMBERS_REGEXP_ADAPTER_H_ diff --git a/third_party/libphonenumber/cpp/src/regexp_adapter_re2.cc b/third_party/libphonenumber/cpp/src/regexp_adapter_re2.cc new file mode 100644 index 0000000..f7a230c --- /dev/null +++ b/third_party/libphonenumber/cpp/src/regexp_adapter_re2.cc @@ -0,0 +1,192 @@ +// Copyright (C) 2011 Google Inc. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +// Author: George Yakovlev +#include "regexp_adapter.h" + +#include <re2/re2.h> +#include <re2/stringpiece.h> +#include <re2/re2.h> + +namespace { +scoped_ptr<RE2Cache> re2_cache; +} // namespace + +class RE2RegularExpressionInput : public RegularExpressionInput { + public: + RE2RegularExpressionInput(const char* utf8_input); + + virtual bool ConsumeRegExp(std::string const& reg_exp, + bool beginning_only, + std::string* matched_string1, + std::string* matched_string2); + virtual std::string ToString() const; + private: + StringPiece utf8_input_; +}; + + +class RE2RegularExpression : public reg_exp::RegularExpression { + public: + RE2RegularExpression(const char* utf8_regexp); + + virtual bool Consume(reg_exp::RegularExpressionInput* input_string, + bool beginning_only, + std::string* matched_string1, + std::string* matched_string2, + std::string* matched_string3) const; + + virtual bool Match(const char* input_string, + bool full_match, + std::string* matched_string) const; + + virtual bool Replace(std::string* string_to_process, + bool global, + const char* replacement_string) const; + private: + RE2 utf8_regexp_; +}; + +RE2RegularExpressionInput::RE2RegularExpressionInput(const char* utf8_input) + : utf8_input_(utf8_input) { + DCHECK(utf8_input); +} + +bool RE2RegularExpressionInput::ConsumeRegExp(std::string const& reg_exp, + bool beginning_only, + std::string* matched_string1, + std::string* matched_string2) { + if (beginning_only) { + if (matched_string2) + return RE2::Consume(&utf8_input_, + RE2Cache::ScopedAccess(re2_cache.get(), reg_exp), + matched_string1, matched_string2); + else if (matched_string1) + return RE2::Consume(&utf8_input_, + RE2Cache::ScopedAccess(re2_cache.get(), reg_exp), + matched_string1); + else + return RE2::Consume(&utf8_input_, + RE2Cache::ScopedAccess(re2_cache.get(), reg_exp)); + } else { + if (matched_string2) + return RE2::FindAndConsume(&utf8_input_, + RE2Cache::ScopedAccess(re2_cache.get(), + reg_exp), + matched_string1, matched_string2); + else if (matched_string1) + return RE2::FindAndConsume(&utf8_input_, + RE2Cache::ScopedAccess(re2_cache.get(), + reg_exp), + matched_string1); + else + return RE2::FindAndConsume(&utf8_input_, + RE2Cache::ScopedAccess(re2_cache.get(), + reg_exp)); + } +} + +std::string RE2RegularExpressionInput::ToString() const { + utf8_input_.ToString(); +} + +RE2RegularExpression::RE2RegularExpression(const char* utf8_regexp) + : utf8_regexp_(utf8_regexp) { + DCHECK(utf8_regexp); +} + +bool RE2RegularExpression::Consume(RegularExpressionInput* input_string, + bool beginning_only, + std::string* matched_string1, + std::string* matched_string2, + std::string* matched_string3) const { + DCHECK(input_string); + // matched_string1 may be NULL + // matched_string2 may be NULL + if (beginning_only) { + if (matched_string3) { + return RE2::Consume(input_string, utf8_regexp_, + matched_string1, matched_string2, matched_string3); + } else if (matched_string2) { + return RE2::Consume(input_string, utf8_regexp_, + matched_string1, matched_string2); + } else if (matched_string1) { + return RE2::Consume(input_string, utf8_regexp_, matched_string1); + } else { + return RE2::Consume(input_string, utf8_regexp_); + } + } else { + if (matched_string3) { + return RE2::FindAndConsume(input_string, utf8_regexp_, + matched_string1, matched_string2, + matched_string3); + } else if (matched_string2) { + return RE2::FindAndConsume(input_string, utf8_regexp_, + matched_string1, matched_string2); + } else if (matched_string1) { + return RE2::FindAndConsume(input_string, utf8_regexp_, matched_string1); + } else { + return RE2::FindAndConsume(input_string, utf8_regexp_); + } + } +} + +bool RE2RegularExpression::Match(const char* input_string, + bool full_match, + std::string* matched_string) const { + DCHECK(input_string); + // matched_string may be NULL + if (full_match) { + if (matched_string) + return RE2::FullMatch(input_string, matched_string); + else + return RE2::FullMatch(input_string); + } else { + if (matched_string) + return RE2::PartialMatch(input_string, matched_string); + else + return RE2::PartialMatch(input_string); + } +} + +bool RE2RegularExpression::Replace(std::string* string_to_process, + bool global, + const char* replacement_string) const { + DCHECK(string_to_process); + DCHECK(replacement_string); + if (global) { + StringPiece str(replacement_string); + return RE2::GlobalReplace(string_to_process, str); + } else { + return RE2::Replace(string_to_process, replacement_string); + } +} + + +namespace reg_exp { + +RegularExpressionInput* CreateRegularExpressionInput(const char* utf8_input) { + if (!re2_cache.get()) + re2_cache.reset(new RE2Cache(64)); + return new RE2RegularExpressionInput(utf8_input); +} + +RegularExpression* CreateRegularExpression(const char* utf8_regexp) { + if (!re2_cache.get()) + re2_cache.reset(new RE2Cache(64)); + return new RE2RegularExpression(utf8_regexp); +} + +} // namespace reg_exp + diff --git a/third_party/libphonenumber/cpp/src/regexp_adapter_unittest.cc b/third_party/libphonenumber/cpp/src/regexp_adapter_unittest.cc new file mode 100644 index 0000000..446f83c --- /dev/null +++ b/third_party/libphonenumber/cpp/src/regexp_adapter_unittest.cc @@ -0,0 +1,142 @@ +// Copyright (C) 2011 Google Inc. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +// Author: George Yakovlev +#include <gtest/gtest.h> + +#include "base/scoped_ptr.h" +#include "regexp_adapter.h" + +namespace reg_exp { + +TEST(RegExpAdapter, TestConsumeRegExp) { + scoped_ptr<const reg_exp::RegularExpression> reg_exp1( + reg_exp::CreateRegularExpression("[0-9a-z]+")); + scoped_ptr<const reg_exp::RegularExpression> reg_exp2( + reg_exp::CreateRegularExpression(" \\(([0-9a-z]+)\\)")); + scoped_ptr<const reg_exp::RegularExpression> reg_exp3( + reg_exp::CreateRegularExpression("([0-9a-z]+)-([0-9a-z]+)")); + + scoped_ptr<reg_exp::RegularExpressionInput> reg_input1( + reg_exp::CreateRegularExpressionInput("+1-123-456-789")); + scoped_ptr<reg_exp::RegularExpressionInput> reg_input2( + reg_exp::CreateRegularExpressionInput("1 (123)456-789")); + + EXPECT_FALSE(reg_exp1->Consume(reg_input1.get(), true, NULL, NULL)); + EXPECT_EQ(reg_input1->ToString(), "+1-123-456-789"); + EXPECT_TRUE(reg_exp1->Consume(reg_input1.get(), false, NULL, NULL)); + EXPECT_EQ(reg_input1->ToString(), "-123-456-789"); + std::string res1, res2; + EXPECT_FALSE(reg_exp2->Consume(reg_input1.get(), true, &res1, NULL)); + EXPECT_FALSE(reg_exp3->Consume(reg_input1.get(), true, &res1, &res2)); + EXPECT_TRUE(reg_exp3->Consume(reg_input1.get(), false, &res1, &res2)); + EXPECT_EQ(reg_input1->ToString(), "-789"); + EXPECT_EQ(res1, "123"); + EXPECT_EQ(res2, "456"); + + EXPECT_EQ(reg_input2->ToString(), "1 (123)456-789"); + EXPECT_TRUE(reg_exp1->Consume(reg_input2.get(), true, NULL, NULL)); + EXPECT_EQ(reg_input2->ToString(), " (123)456-789"); + EXPECT_TRUE(reg_exp2->Consume(reg_input2.get(), true, &res1, NULL)); + EXPECT_EQ(reg_input2->ToString(), "456-789"); + EXPECT_EQ(res1, "123"); + EXPECT_TRUE(reg_exp3->Consume(reg_input2.get(), true, &res1, &res2)); + EXPECT_EQ(reg_input2->ToString(), ""); + EXPECT_EQ(res1, "456"); + EXPECT_EQ(res2, "789"); +} + +TEST(RegExpAdapter, TestConsumeInput) { + scoped_ptr<reg_exp::RegularExpressionInput> reg_input( + reg_exp::CreateRegularExpressionInput("1 (123)456-789")); + std::string res1, res2; + EXPECT_EQ(reg_input->ToString(), "1 (123)456-789"); + EXPECT_FALSE(reg_input->ConsumeRegExp(std::string("\\[1\\]"), + true, + &res1, + &res2)); + EXPECT_EQ(reg_input->ToString(), "1 (123)456-789"); + EXPECT_FALSE(reg_input->ConsumeRegExp(std::string("([0-9]+) \\([0-9]+\\)"), + true, + &res1, + &res2)); + EXPECT_EQ(reg_input->ToString(), "1 (123)456-789"); + EXPECT_TRUE(reg_input->ConsumeRegExp(std::string("([0-9]+) \\(([0-9]+)\\)"), + true, + &res1, + &res2)); + EXPECT_EQ(reg_input->ToString(), "456-789"); + EXPECT_EQ(res1, "1"); + EXPECT_EQ(res2, "123"); +} + +TEST(RegExpAdapter, TestMatch) { + scoped_ptr<const reg_exp::RegularExpression> reg_exp( + reg_exp::CreateRegularExpression("([0-9a-z]+)")); + std::string matched; + EXPECT_TRUE(reg_exp->Match("12345af", true, &matched)); + EXPECT_EQ(matched, "12345af"); + EXPECT_TRUE(reg_exp->Match("12345af", false, &matched)); + EXPECT_EQ(matched, "12345af"); + EXPECT_TRUE(reg_exp->Match("12345af", false, NULL)); + EXPECT_TRUE(reg_exp->Match("12345af", true, NULL)); + + EXPECT_FALSE(reg_exp->Match("[12]", true, &matched)); + EXPECT_TRUE(reg_exp->Match("[12]", false, &matched)); + EXPECT_EQ(matched, "12"); + + EXPECT_FALSE(reg_exp->Match("[]", true, &matched)); + EXPECT_FALSE(reg_exp->Match("[]", false, &matched)); +} + +TEST(RegExpAdapter, TestReplace) { + scoped_ptr<const reg_exp::RegularExpression> reg_exp( + reg_exp::CreateRegularExpression("[0-9]")); + + std::string s("123-4567 "); + EXPECT_TRUE(reg_exp->Replace(&s, false, "+")); + EXPECT_EQ(s, "+23-4567 "); + EXPECT_TRUE(reg_exp->Replace(&s, false, "+")); + EXPECT_EQ(s, "++3-4567 "); + EXPECT_TRUE(reg_exp->Replace(&s, true, "*")); + EXPECT_EQ(s, "++*-**** "); + EXPECT_TRUE(reg_exp->Replace(&s, true, "*")); + EXPECT_EQ(s, "++*-**** "); + + scoped_ptr<const reg_exp::RegularExpression> full_number_expr( + reg_exp::CreateRegularExpression("(\\d{3})(\\d{3})(\\d{4})")); + s = "1234567890:0987654321"; + EXPECT_TRUE(full_number_expr->Replace(&s, true, "(\\1) \\2-\\3$1")); + EXPECT_EQ(s, "(123) 456-7890$1:(098) 765-4321$1"); +} + +TEST(RegExpAdapter, TestUtf8) { + // Expression: <tel symbol><opening square bracket>[<alpha>-<omega>]* + // <closing square bracket> + scoped_ptr<const reg_exp::RegularExpression> reg_exp( + reg_exp::CreateRegularExpression( + "\xe2\x84\xa1\xe2\x8a\x8f([\xce\xb1-\xcf\x89]*)\xe2\x8a\x90")); + std::string matched; + // The string is split to avoid problem with MSVC compiler when it thinks + // 123 is a part of character code. + EXPECT_FALSE(reg_exp->Match("\xe2\x84\xa1\xe2\x8a\x8f" "123\xe2\x8a\x90", + true, &matched)); + EXPECT_TRUE(reg_exp->Match( + "\xe2\x84\xa1\xe2\x8a\x8f\xce\xb1\xce\xb2\xe2\x8a\x90", true, &matched)); + // <alpha><betha> + EXPECT_EQ(matched, "\xce\xb1\xce\xb2"); +} + +} // namespace reg_exp + diff --git a/third_party/libphonenumber/cpp/src/run_tests.cc b/third_party/libphonenumber/cpp/src/run_tests.cc new file mode 100644 index 0000000..b38e7bc --- /dev/null +++ b/third_party/libphonenumber/cpp/src/run_tests.cc @@ -0,0 +1,7 @@ +#include <gtest/gtest.h> + +int main(int argc, char** argv) { + ::testing::InitGoogleTest(&argc, argv); + + return RUN_ALL_TESTS(); +} diff --git a/third_party/libphonenumber/cpp/src/stringutil.cc b/third_party/libphonenumber/cpp/src/stringutil.cc new file mode 100644 index 0000000..70ec010 --- /dev/null +++ b/third_party/libphonenumber/cpp/src/stringutil.cc @@ -0,0 +1,273 @@ +// Copyright (C) 2011 Google Inc. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +// Author: Philippe Liard + +#include <cassert> +#include <cstring> +#include <sstream> + +#include "stringutil.h" + +namespace i18n { +namespace phonenumbers { + +using std::stringstream; + +string operator+(const string& s, int n) { + stringstream stream; + + stream << s << n; + string result; + stream >> result; + + return result; +} + +template <typename T> +string GenericSimpleItoa(const T& n) { + stringstream stream; + + stream << n; + string result; + stream >> result; + + return result; +} + +string SimpleItoa(int n) { + return GenericSimpleItoa(n); +} + +string SimpleItoa(uint64 n) { + return GenericSimpleItoa(n); +} + +void StripString(string* s, const char* remove, char replacewith) { + const char* str_start = s->c_str(); + const char* str = str_start; + for (str = strpbrk(str, remove); + str != NULL; + str = strpbrk(str + 1, remove)) { + (*s)[str - str_start] = replacewith; + } +} + +bool TryStripPrefixString(const string& in, const string& prefix, string* out) { + assert(out); + const bool has_prefix = in.compare(0, prefix.length(), prefix) == 0; + out->assign(has_prefix ? in.substr(prefix.length()) : in); + + return has_prefix; +} + +bool HasSuffixString(const string& s, const string& suffix) { + if (s.length() < suffix.length()) { + return false; + } + return s.compare(s.length() - suffix.length(), suffix.length(), suffix) == 0; +} + +template <typename T> +void GenericAtoi(const string& s, T* out) { + stringstream stream; + stream << s; + stream >> *out; +} + +void safe_strto32(const string& s, int32 *n) { + GenericAtoi(s, n); +} + +void safe_strtou64(const string& s, uint64 *n) { + GenericAtoi(s, n); +} + +void strrmm(string* s, const string& chars) { + for (string::iterator it = s->begin(); it != s->end(); ) { + const char current_char = *it; + if (chars.find(current_char) != string::npos) { + it = s->erase(it); + } else { + ++it; + } + } +} + +// StringHolder class + +StringHolder::StringHolder(const string& s) : + string_(&s), + cstring_(NULL), + len_(s.size()) +{} + +StringHolder::StringHolder(const char* s) : + string_(NULL), + cstring_(s), + len_(std::strlen(s)) +{} + +StringHolder::StringHolder(uint64 n) : + converted_string_(SimpleItoa(n)), + string_(&converted_string_), + cstring_(NULL), + len_(converted_string_.length()) +{} + +StringHolder::~StringHolder() {} + +// StrCat + +// Implements s += sh; (s: string, sh: StringHolder) +string& operator+=(string& lhs, const StringHolder& rhs) { + const string* const s = rhs.GetString(); + if (s) { + lhs += *s; + } else { + const char* const cs = rhs.GetCString(); + if (cs) + lhs.append(cs, rhs.Length()); + } + return lhs; +} + +string StrCat(const StringHolder& s1, const StringHolder& s2) { + string result; + result.reserve(s1.Length() + s2.Length() + 1); + + result += s1; + result += s2; + + return result; +} + +string StrCat(const StringHolder& s1, const StringHolder& s2, + const StringHolder& s3) { + string result; + result.reserve(s1.Length() + s2.Length() + s3.Length() + 1); + + result += s1; + result += s2; + result += s3; + + return result; +} + +string StrCat(const StringHolder& s1, const StringHolder& s2, + const StringHolder& s3, const StringHolder& s4) { + string result; + result.reserve(s1.Length() + s2.Length() + s3.Length() + s4.Length() + 1); + + result += s1; + result += s2; + result += s3; + result += s4; + + return result; +} + +string StrCat(const StringHolder& s1, const StringHolder& s2, + const StringHolder& s3, const StringHolder& s4, + const StringHolder& s5) { + string result; + result.reserve(s1.Length() + s2.Length() + s3.Length() + s4.Length() + + s5.Length() + 1); + result += s1; + result += s2; + result += s3; + result += s4; + result += s5; + + return result; +} + +string StrCat(const StringHolder& s1, const StringHolder& s2, + const StringHolder& s3, const StringHolder& s4, + const StringHolder& s5, const StringHolder& s6) { + string result; + result.reserve(s1.Length() + s2.Length() + s3.Length() + s4.Length() + + s5.Length() + s6.Length() + 1); + result += s1; + result += s2; + result += s3; + result += s4; + result += s5; + result += s6; + + return result; +} + +string StrCat(const StringHolder& s1, const StringHolder& s2, + const StringHolder& s3, const StringHolder& s4, + const StringHolder& s5, const StringHolder& s6, + const StringHolder& s7) { + string result; + result.reserve(s1.Length() + s2.Length() + s3.Length() + s4.Length() + + s5.Length() + s6.Length() + s7.Length() + 1); + result += s1; + result += s2; + result += s3; + result += s4; + result += s5; + result += s6; + result += s7; + + return result; +} + +string StrCat(const StringHolder& s1, const StringHolder& s2, + const StringHolder& s3, const StringHolder& s4, + const StringHolder& s5, const StringHolder& s6, + const StringHolder& s7, const StringHolder& s8, + const StringHolder& s9, const StringHolder& s10, + const StringHolder& s11) { + string result; + result.reserve(s1.Length() + s2.Length() + s3.Length() + s4.Length() + + s5.Length() + s6.Length() + s7.Length() + s8.Length() + + s9.Length() + s10.Length() + s11.Length()); + result += s1; + result += s2; + result += s3; + result += s4; + result += s5; + result += s6; + result += s7; + result += s8; + result += s9; + result += s10; + result += s11; + + return result; +} + +// StrAppend + +void StrAppend(string* dest, const StringHolder& s1) { + assert(dest); + + dest->reserve(dest->length() + s1.Length() + 1); + *dest += s1; +} + +void StrAppend(string* dest, const StringHolder& s1, const StringHolder& s2) { + assert(dest); + + dest->reserve(dest->length() + s1.Length() + s2.Length() + 1); + *dest += s1; + *dest += s2; +} + +} // namespace phonenumbers +} // namespace i18n diff --git a/third_party/libphonenumber/cpp/src/stringutil.h b/third_party/libphonenumber/cpp/src/stringutil.h new file mode 100644 index 0000000..a9ba6fc --- /dev/null +++ b/third_party/libphonenumber/cpp/src/stringutil.h @@ -0,0 +1,125 @@ +// Copyright (C) 2011 Google Inc. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +// Author: Philippe Liard + +#ifndef I18N_PHONENUMBERS_STRINGUTIL_H_ +#define I18N_PHONENUMBERS_STRINGUTIL_H_ + +#include <cstddef> +#include <string> + +#include "base/basictypes.h" + +namespace i18n { +namespace phonenumbers { + +using std::string; + +// Supports string("hello") + 10. +string operator+(const string& s, int n); + +// Converts integer to string. +string SimpleItoa(uint64 n); +string SimpleItoa(int n); + +// Replaces any occurrence of the character 'remove' (or the characters +// in 'remove') with the character 'replacewith'. +void StripString(string* s, const char* remove, char replacewith); + +// Returns true if 'in' starts with 'prefix' and writes 'in' minus 'prefix' into +// 'out'. +bool TryStripPrefixString(const string& in, const string& prefix, string* out); + +// Returns true if 's' ends with 'suffix'. +bool HasSuffixString(const string& s, const string& suffix); + +// Converts string to int32. +void safe_strto32(const string& s, int32 *n); + +// Converts string to uint64. +void safe_strtou64(const string& s, uint64 *n); + +// Remove all occurrences of a given set of characters from a string. +void strrmm(string* s, const string& chars); + +// Holds a reference to a std::string or C string. It can also be constructed +// from an integer which is converted to a string. +class StringHolder { +public: + // Don't make the constructors explicit to make the StrCat usage convenient. + StringHolder(const string& s); + StringHolder(const char* s); + StringHolder(uint64 n); + ~StringHolder(); + + const string* GetString() const { + return string_; + } + + const char* GetCString() const { + return cstring_; + } + + size_t Length() const { + return len_; + } + +private: + const string converted_string_; // Stores the string converted from integer. + const string* const string_; + const char* const cstring_; + const size_t len_; +}; + +string& operator+=(string& lhs, const StringHolder& rhs); + +// Efficient string concatenation. + +string StrCat(const StringHolder& s1, const StringHolder& s2); + +string StrCat(const StringHolder& s1, const StringHolder& s2, + const StringHolder& s3); + +string StrCat(const StringHolder& s1, const StringHolder& s2, + const StringHolder& s3, const StringHolder& s4); + +string StrCat(const StringHolder& s1, const StringHolder& s2, + const StringHolder& s3, const StringHolder& s4, + const StringHolder& s5); + +string StrCat(const StringHolder& s1, const StringHolder& s2, + const StringHolder& s3, const StringHolder& s4, + const StringHolder& s5, const StringHolder& s6); + +string StrCat(const StringHolder& s1, const StringHolder& s2, + const StringHolder& s3, const StringHolder& s4, + const StringHolder& s5, const StringHolder& s6, + const StringHolder& s7); + +string StrCat(const StringHolder& s1, const StringHolder& s2, + const StringHolder& s3, const StringHolder& s4, + const StringHolder& s5, const StringHolder& s6, + const StringHolder& s7, const StringHolder& s8, + const StringHolder& s9, const StringHolder& s10, + const StringHolder& s11); + +void StrAppend(string* dest, const StringHolder& s1); + +void StrAppend(string* dest, const StringHolder& s1, const StringHolder& s2); + +} // namespace phonenumbers +} // namespace i18n + +#endif // I18N_PHONENUMBERS_STRINGUTIL_H_ diff --git a/third_party/libphonenumber/cpp/src/stringutil_test.cc b/third_party/libphonenumber/cpp/src/stringutil_test.cc new file mode 100644 index 0000000..3d665e2 --- /dev/null +++ b/third_party/libphonenumber/cpp/src/stringutil_test.cc @@ -0,0 +1,208 @@ +// Copyright (C) 2011 Google Inc. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +// Author: Philippe Liard + +#include <gtest/gtest.h> + +#include "stringutil.h" + +namespace i18n { +namespace phonenumbers { + +// Test operator+(const string&, int). +TEST(StringUtilTest, OperatorPlus) { + EXPECT_EQ("hello10", string("hello") + 10); +} + +// Test SimpleItoa implementation. +TEST(StringUtilTest, SimpleItoa) { + EXPECT_EQ("10", SimpleItoa(10)); +} + +// Test TryStripPrefixString. +TEST(StringUtilTest, TryStripPrefixString) { + string s; + + EXPECT_TRUE(TryStripPrefixString("hello world", "hello", &s)); + EXPECT_EQ(" world", s); + s.clear(); + + EXPECT_FALSE(TryStripPrefixString("hello world", "helloa", &s)); + s.clear(); + + EXPECT_TRUE(TryStripPrefixString("hello world", "", &s)); + EXPECT_EQ("hello world", s); + s.clear(); + + EXPECT_FALSE(TryStripPrefixString("", "hello", &s)); + s.clear(); +} + +// Test HasSuffixString. +TEST(StringUtilTest, HasSuffixString) { + EXPECT_TRUE(HasSuffixString("hello world", "hello world")); + EXPECT_TRUE(HasSuffixString("hello world", "world")); + EXPECT_FALSE(HasSuffixString("hello world", "world!")); + EXPECT_TRUE(HasSuffixString("hello world", "")); + EXPECT_FALSE(HasSuffixString("", "hello")); +} + +// Test safe_strto32. +TEST(StringUtilTest, safe_strto32) { + int32 n; + + safe_strto32("0", &n); + EXPECT_EQ(0, n); + + safe_strto32("16", &n); + EXPECT_EQ(16, n); + + safe_strto32("2147483647", &n); + EXPECT_EQ(2147483647, n); + + safe_strto32("-2147483648", &n); + EXPECT_EQ(-2147483648, n); +} + +// Test safe_strtou64. +TEST(StringUtilTest, safe_strtou64) { + uint64 n; + + safe_strtou64("0", &n); + EXPECT_EQ(0, n); + + safe_strtou64("16", &n); + EXPECT_EQ(16, n); + + safe_strtou64("18446744073709551615UL", &n); + EXPECT_EQ(18446744073709551615ULL, n); +} + +// Test strrmm. +TEST(StringUtilTest, strrmm) { + string input("hello"); + + strrmm(&input, ""); + EXPECT_EQ(input, input); + + string empty; + strrmm(&empty, ""); + EXPECT_EQ("", empty); + + strrmm(&empty, "aa"); + EXPECT_EQ("", empty); + + strrmm(&input, "h"); + EXPECT_EQ("ello", input); + + strrmm(&input, "el"); + EXPECT_EQ("o", input); +} + +// Test the StringHolder class. +TEST(StringUtilTest, StringHolder) { + // Test with C string. + static const char cstring[] = "aaa"; + StringHolder sh1(cstring); + EXPECT_EQ(cstring, sh1.GetCString()); + EXPECT_EQ(NULL, sh1.GetString()); + + // Test with std::string. + string s = "bbb"; + StringHolder sh2(s); + EXPECT_EQ(NULL, sh2.GetCString()); + EXPECT_EQ(&s, sh2.GetString()); + + // Test GetLength(). + string s2 = "hello"; + StringHolder sh3(s2); + EXPECT_EQ(5, sh3.Length()); + + // Test with uint64. + StringHolder sh4(42); + EXPECT_TRUE(sh4.GetCString() == NULL); + EXPECT_EQ(2, sh4.Length()); + EXPECT_EQ("42", *sh4.GetString()); +} + +// Test the operator+=(string& lhs, const StringHolder& rhs) implementation. +TEST(StringUtilTest, OperatorPlusEquals) { + // Test with a const char* string to append. + string s = "h"; + static const char append1[] = "ello"; + s += StringHolder(append1); // force StringHolder usage + + EXPECT_EQ("hello", s); + + // Test with a std::string to append. + s = "h"; + string append2 = "ello"; + s += StringHolder(append2); // force StringHolder usage + + EXPECT_EQ("hello", s); +} + +// Test the StrCat implementations +TEST(StringUtilTest, StrCat) { + string s; + + // Test with 2 arguments. + s = StrCat("a", "b"); + EXPECT_EQ("ab", s); + + // Test with 3 arguments. + s = StrCat("a", "b", "c"); + EXPECT_EQ("abc", s); + + // Test with 4 arguments. + s = StrCat("a", "b", "c", "d"); + EXPECT_EQ("abcd", s); + + // Test with 5 arguments. + s = StrCat("a", "b", "c", "d", "e"); + EXPECT_EQ("abcde", s); + + // Test with 6 arguments. + s = StrCat("a", "b", "c", "d", "e", "f"); + EXPECT_EQ("abcdef", s); + + // Test with 7 arguments. + s = StrCat("a", "b", "c", "d", "e", "f", "g"); + EXPECT_EQ("abcdefg", s); + + // Test with 11 arguments. + s = StrCat("a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k"); + EXPECT_EQ("abcdefghijk", s); +} + +// Test the StrAppend implementations. +TEST(StringUtilTest, StrAppend) { + string s; + + // Test with 1 argument. + StrAppend(&s, "a"); + EXPECT_EQ("a", s); + + // Test with 2 arguments. + StrAppend(&s, "b", "c"); + EXPECT_EQ("abc", s); + + // Test with int argument. + StrAppend(&s, 42); + EXPECT_EQ("abc42", s); +} + +} // namespace phonenumbers +} // namespace i18n diff --git a/third_party/libphonenumber/cpp/src/test_metadata.cc b/third_party/libphonenumber/cpp/src/test_metadata.cc new file mode 100644 index 0000000..6c1d409 --- /dev/null +++ b/third_party/libphonenumber/cpp/src/test_metadata.cc @@ -0,0 +1,26 @@ +/* + * Copyright (C) 2011 Google Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +#include "test_metadata.h" + +static const unsigned char test_metadata_data[] = { 0x0A, 0x67, 0x0A, 0x00, 0x12, 0x00, 0x1A, 0x00, 0x22, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x2A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x41, 0x44, 0x50, 0xF8, 0x02, 0x5A, 0x02, 0x30, 0x30, 0x90, 0x01, 0x01, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xF8, 0x01, 0x0A, 0x12, 0x12, 0x09, 0x5B, 0x32, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x12, 0x31, 0x12, 0x1D, 0x32, 0x5C, 0x64, 0x28, 0x3F, 0x3A, 0x5B, 0x32, 0x36, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7C, 0x5C, 0x64, 0x5B, 0x32, 0x36, 0x2D, 0x39, 0x5D, 0x29, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x32, 0x32, 0x32, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x1A, 0x1F, 0x12, 0x0B, 0x39, 0x5B, 0x31, 0x2D, 0x33, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x39, 0x32, 0x33, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x22, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x2A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x41, 0x4F, 0x50, 0xF4, 0x01, 0x5A, 0x02, 0x30, 0x30, 0x62, 0x03, 0x30, 0x7E, 0x30, 0x7A, 0x03, 0x30, 0x7E, 0x30, 0x9A, 0x01, 0x25, 0x0A, 0x15, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x22, 0x00, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xF4, 0x05, 0x0A, 0x1C, 0x12, 0x10, 0x5B, 0x31, 0x2D, 0x33, 0x36, 0x38, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x39, 0x2C, 0x31, 0x30, 0x7D, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x36, 0x2C, 0x31, 0x31, 0x7D, 0x12, 0x16, 0x12, 0x0A, 0x5B, 0x31, 0x2D, 0x33, 0x5D, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x36, 0x2C, 0x31, 0x30, 0x7D, 0x1A, 0x1F, 0x12, 0x12, 0x39, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x7C, 0x5B, 0x31, 0x2D, 0x33, 0x5D, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x1A, 0x09, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x2C, 0x31, 0x31, 0x7D, 0x22, 0x11, 0x12, 0x07, 0x38, 0x30, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x2A, 0x18, 0x12, 0x0E, 0x36, 0x28, 0x30, 0x5C, 0x64, 0x7C, 0x31, 0x30, 0x29, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x41, 0x52, 0x50, 0x36, 0x5A, 0x02, 0x30, 0x30, 0x62, 0x01, 0x30, 0x7A, 0x15, 0x30, 0x28, 0x3F, 0x3A, 0x28, 0x31, 0x31, 0x7C, 0x33, 0x34, 0x33, 0x7C, 0x33, 0x37, 0x31, 0x35, 0x29, 0x31, 0x35, 0x29, 0x3F, 0x82, 0x01, 0x03, 0x39, 0x24, 0x31, 0x9A, 0x01, 0x2C, 0x0A, 0x15, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x2D, 0x24, 0x33, 0x1A, 0x02, 0x31, 0x31, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x36, 0x0A, 0x15, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x2D, 0x24, 0x33, 0x1A, 0x0C, 0x31, 0x5B, 0x30, 0x32, 0x2D, 0x39, 0x5D, 0x7C, 0x5B, 0x32, 0x33, 0x5D, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x2E, 0x0A, 0x13, 0x39, 0x28, 0x31, 0x31, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x0B, 0x24, 0x31, 0x20, 0x31, 0x35, 0x20, 0x24, 0x32, 0x2D, 0x24, 0x33, 0x1A, 0x03, 0x39, 0x31, 0x31, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x43, 0x0A, 0x16, 0x39, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x2D, 0x24, 0x33, 0x1A, 0x11, 0x39, 0x28, 0x3F, 0x3A, 0x31, 0x5B, 0x30, 0x32, 0x2D, 0x39, 0x5D, 0x7C, 0x5B, 0x32, 0x33, 0x5D, 0x29, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x07, 0x30, 0x24, 0x31, 0x20, 0x24, 0x43, 0x43, 0x9A, 0x01, 0x2E, 0x0A, 0x15, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x2D, 0x24, 0x32, 0x2D, 0x24, 0x33, 0x1A, 0x04, 0x5B, 0x36, 0x38, 0x5D, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0xA2, 0x01, 0x27, 0x0A, 0x15, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x2D, 0x24, 0x33, 0x1A, 0x02, 0x31, 0x31, 0x2A, 0x00, 0xA2, 0x01, 0x31, 0x0A, 0x15, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x2D, 0x24, 0x33, 0x1A, 0x0C, 0x31, 0x5B, 0x30, 0x32, 0x2D, 0x39, 0x5D, 0x7C, 0x5B, 0x32, 0x33, 0x5D, 0x2A, 0x00, 0xA2, 0x01, 0x2B, 0x0A, 0x15, 0x28, 0x39, 0x29, 0x28, 0x31, 0x31, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x0B, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x20, 0x24, 0x34, 0x1A, 0x03, 0x39, 0x31, 0x31, 0x2A, 0x00, 0xA2, 0x01, 0x3C, 0x0A, 0x18, 0x28, 0x39, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x0B, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x20, 0x24, 0x34, 0x1A, 0x11, 0x39, 0x28, 0x3F, 0x3A, 0x31, 0x5B, 0x30, 0x32, 0x2D, 0x39, 0x5D, 0x7C, 0x5B, 0x32, 0x33, 0x5D, 0x29, 0x2A, 0x00, 0xA2, 0x01, 0x29, 0x0A, 0x15, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x2D, 0x24, 0x32, 0x2D, 0x24, 0x33, 0x1A, 0x04, 0x5B, 0x36, 0x38, 0x5D, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xAF, 0x02, 0x0A, 0x1B, 0x12, 0x0F, 0x5B, 0x31, 0x2D, 0x35, 0x37, 0x38, 0x5D, 0x5C, 0x64, 0x7B, 0x34, 0x2C, 0x31, 0x34, 0x7D, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x35, 0x2C, 0x31, 0x35, 0x7D, 0x12, 0x14, 0x12, 0x0B, 0x5B, 0x32, 0x33, 0x37, 0x38, 0x5D, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x1A, 0x0F, 0x12, 0x06, 0x34, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x22, 0x13, 0x12, 0x09, 0x31, 0x38, 0x30, 0x30, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x2A, 0x18, 0x12, 0x0E, 0x31, 0x39, 0x30, 0x5B, 0x30, 0x31, 0x32, 0x36, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x41, 0x55, 0x50, 0x3D, 0x5A, 0x07, 0x30, 0x30, 0x31, 0x5B, 0x31, 0x32, 0x5D, 0x62, 0x01, 0x30, 0x7A, 0x01, 0x30, 0x8A, 0x01, 0x04, 0x30, 0x30, 0x31, 0x31, 0x9A, 0x01, 0x2A, 0x0A, 0x15, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x01, 0x31, 0x22, 0x02, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x31, 0x0A, 0x15, 0x28, 0x5C, 0x64, 0x7B, 0x31, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x07, 0x5B, 0x32, 0x2D, 0x34, 0x37, 0x38, 0x5D, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xC1, 0x02, 0x0A, 0x29, 0x12, 0x1D, 0x28, 0x32, 0x34, 0x32, 0x7C, 0x38, 0x28, 0x30, 0x30, 0x7C, 0x36, 0x36, 0x7C, 0x37, 0x37, 0x7C, 0x38, 0x38, 0x29, 0x7C, 0x39, 0x30, 0x30, 0x29, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x31, 0x30, 0x7D, 0x12, 0x6C, 0x12, 0x60, 0x32, 0x34, 0x32, 0x28, 0x3F, 0x3A, 0x33, 0x28, 0x3F, 0x3A, 0x30, 0x32, 0x7C, 0x5B, 0x32, 0x33, 0x36, 0x5D, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x7C, 0x34, 0x5B, 0x30, 0x2D, 0x32, 0x34, 0x2D, 0x39, 0x5D, 0x7C, 0x35, 0x5B, 0x30, 0x2D, 0x36, 0x38, 0x5D, 0x7C, 0x37, 0x5B, 0x33, 0x2D, 0x35, 0x37, 0x5D, 0x7C, 0x39, 0x5B, 0x32, 0x2D, 0x35, 0x5D, 0x29, 0x7C, 0x34, 0x28, 0x3F, 0x3A, 0x32, 0x5B, 0x32, 0x33, 0x37, 0x5D, 0x7C, 0x35, 0x31, 0x7C, 0x36, 0x34, 0x7C, 0x37, 0x37, 0x29, 0x7C, 0x35, 0x30, 0x32, 0x7C, 0x36, 0x33, 0x36, 0x7C, 0x37, 0x30, 0x32, 0x29, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x31, 0x30, 0x7D, 0x1A, 0x23, 0x12, 0x19, 0x32, 0x34, 0x32, 0x28, 0x33, 0x35, 0x37, 0x7C, 0x33, 0x35, 0x39, 0x7C, 0x34, 0x35, 0x37, 0x7C, 0x35, 0x35, 0x37, 0x29, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x22, 0x1D, 0x12, 0x13, 0x38, 0x28, 0x30, 0x30, 0x7C, 0x36, 0x36, 0x7C, 0x37, 0x37, 0x7C, 0x38, 0x38, 0x29, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x2A, 0x12, 0x12, 0x08, 0x39, 0x30, 0x30, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x42, 0x53, 0x50, 0x01, 0x5A, 0x03, 0x30, 0x31, 0x31, 0x62, 0x01, 0x31, 0x7A, 0x01, 0x31, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0x88, 0x05, 0x0A, 0x14, 0x12, 0x08, 0x5C, 0x64, 0x7B, 0x34, 0x2C, 0x31, 0x34, 0x7D, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x32, 0x2C, 0x31, 0x34, 0x7D, 0x12, 0x4E, 0x12, 0x38, 0x28, 0x3F, 0x3A, 0x5B, 0x32, 0x34, 0x2D, 0x36, 0x5D, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x7C, 0x33, 0x5B, 0x30, 0x33, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7C, 0x5B, 0x37, 0x38, 0x39, 0x5D, 0x28, 0x3F, 0x3A, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7C, 0x30, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x29, 0x29, 0x5C, 0x64, 0x7B, 0x33, 0x2C, 0x38, 0x7D, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x32, 0x2C, 0x31, 0x34, 0x7D, 0x32, 0x08, 0x33, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x1A, 0x30, 0x12, 0x23, 0x31, 0x28, 0x35, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x7C, 0x37, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x7C, 0x36, 0x5B, 0x30, 0x32, 0x5D, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x7C, 0x36, 0x33, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x29, 0x1A, 0x09, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x2C, 0x31, 0x31, 0x7D, 0x22, 0x12, 0x12, 0x08, 0x38, 0x30, 0x30, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x2A, 0x23, 0x12, 0x16, 0x39, 0x30, 0x30, 0x28, 0x5B, 0x31, 0x33, 0x35, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x7C, 0x39, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x29, 0x1A, 0x09, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x2C, 0x31, 0x31, 0x7D, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x44, 0x45, 0x50, 0x31, 0x5A, 0x02, 0x30, 0x30, 0x62, 0x01, 0x30, 0x7A, 0x01, 0x30, 0x9A, 0x01, 0x3A, 0x0A, 0x10, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x2C, 0x38, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x1A, 0x18, 0x32, 0x7C, 0x33, 0x5B, 0x33, 0x2D, 0x39, 0x5D, 0x7C, 0x39, 0x30, 0x36, 0x7C, 0x5B, 0x34, 0x2D, 0x39, 0x5D, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x31, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x2D, 0x0A, 0x10, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x2C, 0x39, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x2F, 0x24, 0x32, 0x1A, 0x0B, 0x5B, 0x33, 0x34, 0x5D, 0x30, 0x7C, 0x5B, 0x36, 0x38, 0x5D, 0x39, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x47, 0x0A, 0x10, 0x28, 0x5B, 0x34, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x1A, 0x05, 0x5B, 0x34, 0x2D, 0x39, 0x5D, 0x1A, 0x1E, 0x5B, 0x34, 0x2D, 0x36, 0x5D, 0x7C, 0x5B, 0x37, 0x2D, 0x39, 0x5D, 0x28, 0x3F, 0x3A, 0x5C, 0x64, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x7C, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x29, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x4C, 0x0A, 0x15, 0x28, 0x5B, 0x34, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x2C, 0x37, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x1A, 0x05, 0x5B, 0x34, 0x2D, 0x39, 0x5D, 0x1A, 0x1E, 0x5B, 0x34, 0x2D, 0x36, 0x5D, 0x7C, 0x5B, 0x37, 0x2D, 0x39, 0x5D, 0x28, 0x3F, 0x3A, 0x5C, 0x64, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x7C, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x29, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x2D, 0x0A, 0x15, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x31, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x03, 0x38, 0x30, 0x30, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x2F, 0x0A, 0x17, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x2C, 0x34, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x03, 0x39, 0x30, 0x30, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xC8, 0x03, 0x0A, 0x12, 0x12, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x36, 0x2C, 0x31, 0x30, 0x7D, 0x12, 0x16, 0x12, 0x0A, 0x5B, 0x31, 0x2D, 0x36, 0x5D, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x36, 0x2C, 0x31, 0x30, 0x7D, 0x1A, 0x18, 0x12, 0x0E, 0x37, 0x5B, 0x31, 0x2D, 0x35, 0x37, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x22, 0x11, 0x12, 0x07, 0x38, 0x30, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x2A, 0x15, 0x12, 0x0B, 0x39, 0x5B, 0x30, 0x31, 0x38, 0x5D, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x21, 0x12, 0x17, 0x38, 0x28, 0x3F, 0x3A, 0x34, 0x5B, 0x33, 0x2D, 0x35, 0x5D, 0x7C, 0x37, 0x5B, 0x30, 0x2D, 0x32, 0x5D, 0x29, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x3A, 0x11, 0x12, 0x07, 0x37, 0x30, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x42, 0x11, 0x12, 0x07, 0x35, 0x36, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x4A, 0x02, 0x47, 0x42, 0x50, 0x2C, 0x5A, 0x02, 0x30, 0x30, 0x62, 0x01, 0x30, 0x7A, 0x01, 0x30, 0x9A, 0x01, 0x38, 0x0A, 0x15, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x0C, 0x5B, 0x31, 0x2D, 0x35, 0x39, 0x5D, 0x7C, 0x5B, 0x37, 0x38, 0x5D, 0x30, 0x22, 0x05, 0x28, 0x30, 0x24, 0x31, 0x29, 0x2A, 0x00, 0x9A, 0x01, 0x34, 0x0A, 0x19, 0x28, 0x5C, 0x64, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x12, 0x0B, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x20, 0x24, 0x34, 0x1A, 0x01, 0x36, 0x22, 0x05, 0x28, 0x30, 0x24, 0x31, 0x29, 0x2A, 0x00, 0x9A, 0x01, 0x35, 0x0A, 0x15, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x09, 0x37, 0x5B, 0x31, 0x2D, 0x35, 0x37, 0x2D, 0x39, 0x5D, 0x22, 0x05, 0x28, 0x30, 0x24, 0x31, 0x29, 0x2A, 0x00, 0x9A, 0x01, 0x31, 0x0A, 0x15, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x05, 0x38, 0x5B, 0x34, 0x37, 0x5D, 0x22, 0x05, 0x28, 0x30, 0x24, 0x31, 0x29, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0x8B, 0x03, 0x0A, 0x1A, 0x12, 0x0E, 0x5B, 0x30, 0x33, 0x38, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x35, 0x2C, 0x31, 0x30, 0x7D, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x36, 0x2C, 0x31, 0x31, 0x7D, 0x12, 0x16, 0x12, 0x09, 0x30, 0x5C, 0x64, 0x7B, 0x39, 0x2C, 0x31, 0x30, 0x7D, 0x1A, 0x09, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x2C, 0x31, 0x31, 0x7D, 0x1A, 0x14, 0x12, 0x08, 0x33, 0x5C, 0x64, 0x7B, 0x38, 0x2C, 0x39, 0x7D, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x39, 0x2C, 0x31, 0x30, 0x7D, 0x22, 0x1E, 0x12, 0x13, 0x38, 0x30, 0x28, 0x3F, 0x3A, 0x30, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x7C, 0x33, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x36, 0x2C, 0x39, 0x7D, 0x2A, 0x1E, 0x12, 0x13, 0x38, 0x39, 0x28, 0x3F, 0x3A, 0x32, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x7C, 0x39, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x29, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x36, 0x2C, 0x39, 0x7D, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x49, 0x54, 0x50, 0x27, 0x5A, 0x02, 0x30, 0x30, 0x9A, 0x01, 0x2C, 0x0A, 0x15, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x05, 0x30, 0x5B, 0x32, 0x36, 0x5D, 0x22, 0x00, 0x2A, 0x00, 0x9A, 0x01, 0x33, 0x0A, 0x17, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x2C, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x0A, 0x30, 0x5B, 0x31, 0x33, 0x2D, 0x35, 0x37, 0x2D, 0x39, 0x5D, 0x22, 0x00, 0x2A, 0x00, 0x9A, 0x01, 0x2A, 0x0A, 0x17, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x2C, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x01, 0x33, 0x22, 0x00, 0x2A, 0x00, 0x9A, 0x01, 0x20, 0x0A, 0x10, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x2C, 0x36, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x1A, 0x01, 0x38, 0x22, 0x00, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xD0, 0x01, 0x01, 0x0A, 0x96, 0x03, 0x0A, 0x00, 0x12, 0x00, 0x1A, 0x00, 0x22, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x2A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x4A, 0x50, 0x50, 0x51, 0x5A, 0x03, 0x30, 0x31, 0x30, 0x62, 0x01, 0x30, 0x7A, 0x01, 0x30, 0x90, 0x01, 0x01, 0x9A, 0x01, 0x31, 0x0A, 0x15, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x07, 0x5B, 0x35, 0x37, 0x2D, 0x39, 0x5D, 0x30, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x4E, 0x0A, 0x15, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x07, 0x32, 0x32, 0x32, 0x7C, 0x33, 0x33, 0x33, 0x1A, 0x0C, 0x28, 0x3F, 0x3A, 0x32, 0x32, 0x32, 0x7C, 0x33, 0x33, 0x33, 0x29, 0x31, 0x1A, 0x0D, 0x28, 0x3F, 0x3A, 0x32, 0x32, 0x32, 0x7C, 0x33, 0x33, 0x33, 0x29, 0x31, 0x31, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x52, 0x0A, 0x12, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x07, 0x32, 0x32, 0x32, 0x7C, 0x33, 0x33, 0x33, 0x1A, 0x09, 0x32, 0x32, 0x32, 0x31, 0x7C, 0x33, 0x33, 0x33, 0x32, 0x1A, 0x0A, 0x32, 0x32, 0x32, 0x31, 0x32, 0x7C, 0x33, 0x33, 0x33, 0x32, 0x1A, 0x0B, 0x32, 0x32, 0x32, 0x31, 0x32, 0x30, 0x7C, 0x33, 0x33, 0x33, 0x32, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x2E, 0x0A, 0x15, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x04, 0x5B, 0x32, 0x33, 0x5D, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x1B, 0x0A, 0x07, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x03, 0x2A, 0x24, 0x31, 0x1A, 0x04, 0x5B, 0x32, 0x33, 0x5D, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xBD, 0x0B, 0x0A, 0x20, 0x12, 0x14, 0x5B, 0x31, 0x2D, 0x37, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x33, 0x2C, 0x39, 0x7D, 0x7C, 0x38, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x34, 0x2C, 0x31, 0x30, 0x7D, 0x12, 0x4C, 0x12, 0x36, 0x28, 0x3F, 0x3A, 0x32, 0x7C, 0x5B, 0x33, 0x34, 0x5D, 0x5B, 0x31, 0x2D, 0x33, 0x5D, 0x7C, 0x35, 0x5B, 0x31, 0x2D, 0x35, 0x5D, 0x7C, 0x36, 0x5B, 0x31, 0x2D, 0x34, 0x5D, 0x29, 0x28, 0x3F, 0x3A, 0x31, 0x5C, 0x64, 0x7B, 0x32, 0x2C, 0x33, 0x7D, 0x7C, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x2C, 0x37, 0x7D, 0x29, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x34, 0x2C, 0x31, 0x30, 0x7D, 0x32, 0x08, 0x32, 0x32, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x1A, 0x28, 0x12, 0x10, 0x31, 0x5B, 0x30, 0x2D, 0x32, 0x35, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x38, 0x7D, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x39, 0x2C, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x31, 0x30, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x22, 0x1B, 0x12, 0x07, 0x38, 0x30, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x38, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x2A, 0x20, 0x12, 0x0C, 0x36, 0x30, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x36, 0x30, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x1D, 0x12, 0x07, 0x35, 0x30, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x35, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x42, 0x1D, 0x12, 0x07, 0x37, 0x30, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x37, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x4A, 0x02, 0x4B, 0x52, 0x50, 0x52, 0x5A, 0x18, 0x30, 0x30, 0x28, 0x3F, 0x3A, 0x5B, 0x31, 0x32, 0x34, 0x2D, 0x36, 0x38, 0x5D, 0x7C, 0x5B, 0x33, 0x37, 0x5D, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x62, 0x01, 0x30, 0x7A, 0x15, 0x30, 0x28, 0x38, 0x5B, 0x31, 0x2D, 0x34, 0x36, 0x2D, 0x38, 0x5D, 0x7C, 0x38, 0x35, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x3F, 0x9A, 0x01, 0x70, 0x0A, 0x15, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x2D, 0x24, 0x32, 0x2D, 0x24, 0x33, 0x1A, 0x1F, 0x31, 0x28, 0x3F, 0x3A, 0x30, 0x7C, 0x31, 0x5B, 0x31, 0x39, 0x5D, 0x7C, 0x5B, 0x36, 0x39, 0x5D, 0x39, 0x7C, 0x35, 0x5B, 0x34, 0x35, 0x38, 0x5D, 0x29, 0x7C, 0x5B, 0x35, 0x37, 0x5D, 0x30, 0x1A, 0x25, 0x31, 0x28, 0x3F, 0x3A, 0x30, 0x7C, 0x31, 0x5B, 0x31, 0x39, 0x5D, 0x7C, 0x5B, 0x36, 0x39, 0x5D, 0x39, 0x7C, 0x35, 0x28, 0x3F, 0x3A, 0x34, 0x34, 0x7C, 0x35, 0x39, 0x7C, 0x38, 0x29, 0x29, 0x7C, 0x5B, 0x35, 0x37, 0x5D, 0x30, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x98, 0x01, 0x0A, 0x15, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x2D, 0x24, 0x32, 0x2D, 0x24, 0x33, 0x1A, 0x31, 0x31, 0x28, 0x3F, 0x3A, 0x5B, 0x31, 0x36, 0x39, 0x5D, 0x5B, 0x32, 0x2D, 0x38, 0x5D, 0x7C, 0x5B, 0x37, 0x38, 0x5D, 0x7C, 0x35, 0x5B, 0x31, 0x2D, 0x34, 0x5D, 0x29, 0x7C, 0x5B, 0x36, 0x38, 0x5D, 0x30, 0x7C, 0x5B, 0x33, 0x2D, 0x39, 0x5D, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x1A, 0x3B, 0x31, 0x28, 0x3F, 0x3A, 0x5B, 0x31, 0x36, 0x39, 0x5D, 0x5B, 0x32, 0x2D, 0x38, 0x5D, 0x7C, 0x5B, 0x37, 0x38, 0x5D, 0x7C, 0x35, 0x28, 0x3F, 0x3A, 0x5B, 0x31, 0x2D, 0x33, 0x5D, 0x7C, 0x34, 0x5B, 0x35, 0x36, 0x5D, 0x29, 0x29, 0x7C, 0x5B, 0x36, 0x38, 0x5D, 0x30, 0x7C, 0x5B, 0x33, 0x2D, 0x39, 0x5D, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x30, 0x0A, 0x12, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x2D, 0x24, 0x32, 0x2D, 0x24, 0x33, 0x1A, 0x03, 0x31, 0x33, 0x31, 0x1A, 0x04, 0x31, 0x33, 0x31, 0x32, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x38, 0x0A, 0x15, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x2D, 0x24, 0x32, 0x2D, 0x24, 0x33, 0x1A, 0x03, 0x31, 0x33, 0x31, 0x1A, 0x09, 0x31, 0x33, 0x31, 0x5B, 0x31, 0x33, 0x2D, 0x39, 0x5D, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x31, 0x0A, 0x15, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x2D, 0x24, 0x32, 0x2D, 0x24, 0x33, 0x1A, 0x07, 0x31, 0x33, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x36, 0x0A, 0x1C, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x0B, 0x24, 0x31, 0x2D, 0x24, 0x32, 0x2D, 0x24, 0x33, 0x2D, 0x24, 0x34, 0x1A, 0x02, 0x33, 0x30, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x6C, 0x0A, 0x12, 0x28, 0x5C, 0x64, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x2D, 0x24, 0x32, 0x2D, 0x24, 0x33, 0x1A, 0x12, 0x32, 0x28, 0x3F, 0x3A, 0x5B, 0x32, 0x36, 0x5D, 0x7C, 0x33, 0x5B, 0x30, 0x2D, 0x34, 0x36, 0x37, 0x5D, 0x29, 0x1A, 0x31, 0x32, 0x28, 0x3F, 0x3A, 0x5B, 0x32, 0x36, 0x5D, 0x7C, 0x33, 0x28, 0x3F, 0x3A, 0x30, 0x31, 0x7C, 0x31, 0x5B, 0x34, 0x35, 0x5D, 0x7C, 0x32, 0x5B, 0x31, 0x37, 0x2D, 0x39, 0x5D, 0x7C, 0x33, 0x39, 0x7C, 0x34, 0x7C, 0x36, 0x5B, 0x36, 0x37, 0x5D, 0x7C, 0x37, 0x5B, 0x30, 0x37, 0x38, 0x5D, 0x29, 0x29, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x88, 0x01, 0x0A, 0x12, 0x28, 0x5C, 0x64, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x2D, 0x24, 0x32, 0x2D, 0x24, 0x33, 0x1A, 0x16, 0x32, 0x28, 0x3F, 0x3A, 0x33, 0x5B, 0x30, 0x2D, 0x33, 0x35, 0x2D, 0x39, 0x5D, 0x7C, 0x5B, 0x34, 0x35, 0x37, 0x2D, 0x39, 0x5D, 0x29, 0x1A, 0x49, 0x32, 0x28, 0x3F, 0x3A, 0x33, 0x28, 0x3F, 0x3A, 0x30, 0x5B, 0x30, 0x32, 0x2D, 0x39, 0x5D, 0x7C, 0x31, 0x5B, 0x30, 0x2D, 0x33, 0x36, 0x2D, 0x39, 0x5D, 0x7C, 0x32, 0x5B, 0x30, 0x32, 0x2D, 0x36, 0x5D, 0x7C, 0x33, 0x5B, 0x30, 0x2D, 0x38, 0x5D, 0x7C, 0x36, 0x5B, 0x30, 0x2D, 0x35, 0x38, 0x39, 0x5D, 0x7C, 0x37, 0x5B, 0x31, 0x2D, 0x36, 0x39, 0x5D, 0x7C, 0x5B, 0x35, 0x38, 0x39, 0x5D, 0x29, 0x7C, 0x5B, 0x34, 0x35, 0x37, 0x2D, 0x39, 0x5D, 0x29, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x47, 0x0A, 0x0B, 0x28, 0x5C, 0x64, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x2D, 0x24, 0x32, 0x1A, 0x0A, 0x32, 0x31, 0x5B, 0x30, 0x2D, 0x34, 0x36, 0x2D, 0x39, 0x5D, 0x1A, 0x1E, 0x32, 0x31, 0x28, 0x3F, 0x3A, 0x5B, 0x30, 0x2D, 0x32, 0x34, 0x37, 0x2D, 0x39, 0x5D, 0x7C, 0x33, 0x5B, 0x31, 0x32, 0x34, 0x5D, 0x7C, 0x36, 0x5B, 0x31, 0x32, 0x36, 0x39, 0x5D, 0x29, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x3D, 0x0A, 0x0B, 0x28, 0x5C, 0x64, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x2D, 0x24, 0x32, 0x1A, 0x06, 0x32, 0x31, 0x5B, 0x33, 0x36, 0x5D, 0x1A, 0x18, 0x32, 0x31, 0x28, 0x3F, 0x3A, 0x33, 0x5B, 0x30, 0x33, 0x35, 0x2D, 0x39, 0x5D, 0x7C, 0x36, 0x5B, 0x30, 0x33, 0x2D, 0x35, 0x37, 0x38, 0x5D, 0x29, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x6D, 0x0A, 0x0E, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x2D, 0x24, 0x32, 0x1A, 0x0B, 0x5B, 0x33, 0x2D, 0x39, 0x5D, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x31, 0x1A, 0x17, 0x5B, 0x33, 0x2D, 0x39, 0x5D, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x31, 0x28, 0x3F, 0x3A, 0x5B, 0x30, 0x2D, 0x34, 0x36, 0x2D, 0x39, 0x5D, 0x29, 0x1A, 0x27, 0x5B, 0x33, 0x2D, 0x39, 0x5D, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x31, 0x28, 0x3F, 0x3A, 0x5B, 0x30, 0x2D, 0x32, 0x34, 0x37, 0x2D, 0x39, 0x5D, 0x7C, 0x33, 0x5B, 0x31, 0x32, 0x34, 0x5D, 0x7C, 0x36, 0x5B, 0x31, 0x32, 0x36, 0x39, 0x5D, 0x29, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x5F, 0x0A, 0x0E, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x2D, 0x24, 0x32, 0x1A, 0x0B, 0x5B, 0x33, 0x2D, 0x39, 0x5D, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x31, 0x1A, 0x0F, 0x5B, 0x33, 0x2D, 0x39, 0x5D, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x31, 0x5B, 0x33, 0x36, 0x5D, 0x1A, 0x21, 0x5B, 0x33, 0x2D, 0x39, 0x5D, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x31, 0x28, 0x3F, 0x3A, 0x33, 0x5B, 0x30, 0x33, 0x35, 0x2D, 0x39, 0x5D, 0x7C, 0x36, 0x5B, 0x30, 0x33, 0x2D, 0x35, 0x37, 0x38, 0x5D, 0x29, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xDC, 0x06, 0x0A, 0x19, 0x12, 0x0D, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x39, 0x2C, 0x31, 0x30, 0x7D, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x31, 0x31, 0x7D, 0x12, 0x16, 0x12, 0x0A, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x31, 0x30, 0x7D, 0x1A, 0x11, 0x12, 0x07, 0x31, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x31, 0x7D, 0x22, 0x12, 0x12, 0x08, 0x38, 0x30, 0x30, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x2A, 0x12, 0x12, 0x08, 0x39, 0x30, 0x30, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x4D, 0x58, 0x50, 0x34, 0x5A, 0x02, 0x30, 0x30, 0x62, 0x02, 0x30, 0x31, 0x7A, 0x11, 0x30, 0x31, 0x7C, 0x30, 0x34, 0x5B, 0x34, 0x35, 0x5D, 0x28, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x29, 0x82, 0x01, 0x03, 0x31, 0x24, 0x31, 0x9A, 0x01, 0x2D, 0x0A, 0x15, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x06, 0x5B, 0x38, 0x39, 0x5D, 0x30, 0x30, 0x22, 0x00, 0x2A, 0x00, 0x9A, 0x01, 0x2F, 0x0A, 0x15, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x08, 0x33, 0x33, 0x7C, 0x35, 0x35, 0x7C, 0x38, 0x31, 0x22, 0x00, 0x2A, 0x00, 0x9A, 0x01, 0x4F, 0x0A, 0x15, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x28, 0x5B, 0x32, 0x34, 0x36, 0x37, 0x5D, 0x7C, 0x33, 0x5B, 0x30, 0x2D, 0x32, 0x34, 0x2D, 0x39, 0x5D, 0x7C, 0x35, 0x5B, 0x30, 0x2D, 0x34, 0x36, 0x2D, 0x39, 0x5D, 0x7C, 0x38, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x7C, 0x39, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x22, 0x00, 0x2A, 0x00, 0x9A, 0x01, 0x39, 0x0A, 0x16, 0x31, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x0C, 0x30, 0x34, 0x35, 0x20, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x0D, 0x31, 0x28, 0x3F, 0x3A, 0x33, 0x33, 0x7C, 0x35, 0x35, 0x7C, 0x38, 0x31, 0x29, 0x22, 0x00, 0x2A, 0x00, 0x9A, 0x01, 0x55, 0x0A, 0x16, 0x31, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x0C, 0x30, 0x34, 0x35, 0x20, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x29, 0x31, 0x28, 0x3F, 0x3A, 0x5B, 0x31, 0x32, 0x34, 0x35, 0x37, 0x39, 0x5D, 0x7C, 0x33, 0x5B, 0x30, 0x2D, 0x32, 0x34, 0x2D, 0x39, 0x5D, 0x7C, 0x35, 0x5B, 0x30, 0x2D, 0x34, 0x36, 0x2D, 0x39, 0x5D, 0x7C, 0x38, 0x5B, 0x30, 0x32, 0x2D, 0x39, 0x5D, 0x29, 0x22, 0x00, 0x2A, 0x00, 0xA2, 0x01, 0x2B, 0x0A, 0x15, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x06, 0x5B, 0x38, 0x39, 0x5D, 0x30, 0x30, 0x2A, 0x00, 0xA2, 0x01, 0x2D, 0x0A, 0x15, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x08, 0x33, 0x33, 0x7C, 0x35, 0x35, 0x7C, 0x38, 0x31, 0x2A, 0x00, 0xA2, 0x01, 0x4D, 0x0A, 0x15, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x28, 0x5B, 0x32, 0x34, 0x36, 0x37, 0x5D, 0x7C, 0x33, 0x5B, 0x30, 0x2D, 0x32, 0x34, 0x2D, 0x39, 0x5D, 0x7C, 0x35, 0x5B, 0x30, 0x2D, 0x34, 0x36, 0x2D, 0x39, 0x5D, 0x7C, 0x38, 0x5B, 0x32, 0x2D, 0x39, 0x5D, 0x7C, 0x39, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x2A, 0x00, 0xA2, 0x01, 0x38, 0x0A, 0x18, 0x28, 0x31, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x0B, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x20, 0x24, 0x34, 0x1A, 0x0D, 0x31, 0x28, 0x3F, 0x3A, 0x33, 0x33, 0x7C, 0x35, 0x35, 0x7C, 0x38, 0x31, 0x29, 0x2A, 0x00, 0xA2, 0x01, 0x54, 0x0A, 0x18, 0x28, 0x31, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x0B, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x20, 0x24, 0x34, 0x1A, 0x29, 0x31, 0x28, 0x3F, 0x3A, 0x5B, 0x31, 0x32, 0x34, 0x35, 0x37, 0x39, 0x5D, 0x7C, 0x33, 0x5B, 0x30, 0x2D, 0x32, 0x34, 0x2D, 0x39, 0x5D, 0x7C, 0x35, 0x5B, 0x30, 0x2D, 0x34, 0x36, 0x2D, 0x39, 0x5D, 0x7C, 0x38, 0x5B, 0x30, 0x32, 0x2D, 0x39, 0x5D, 0x29, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xDB, 0x03, 0x0A, 0x23, 0x12, 0x17, 0x5B, 0x32, 0x38, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x39, 0x7D, 0x7C, 0x5B, 0x33, 0x2D, 0x37, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x31, 0x30, 0x7D, 0x12, 0x3C, 0x12, 0x31, 0x32, 0x34, 0x30, 0x39, 0x39, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x7C, 0x28, 0x3F, 0x3A, 0x33, 0x5B, 0x32, 0x2D, 0x37, 0x39, 0x5D, 0x7C, 0x5B, 0x34, 0x37, 0x39, 0x5D, 0x5B, 0x32, 0x2D, 0x36, 0x38, 0x39, 0x5D, 0x7C, 0x36, 0x5B, 0x32, 0x33, 0x35, 0x2D, 0x39, 0x5D, 0x29, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x07, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x38, 0x7D, 0x1A, 0x5E, 0x12, 0x52, 0x32, 0x28, 0x3F, 0x3A, 0x5B, 0x30, 0x32, 0x37, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x7C, 0x39, 0x5C, 0x64, 0x7B, 0x36, 0x2C, 0x37, 0x7D, 0x7C, 0x31, 0x28, 0x3F, 0x3A, 0x30, 0x5C, 0x64, 0x7B, 0x35, 0x2C, 0x37, 0x7D, 0x7C, 0x5B, 0x31, 0x32, 0x5D, 0x5C, 0x64, 0x7B, 0x35, 0x2C, 0x36, 0x7D, 0x7C, 0x5B, 0x33, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x35, 0x7D, 0x29, 0x7C, 0x34, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x7C, 0x38, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x38, 0x7D, 0x29, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x38, 0x2C, 0x31, 0x30, 0x7D, 0x22, 0x16, 0x12, 0x0A, 0x38, 0x30, 0x30, 0x5C, 0x64, 0x7B, 0x36, 0x2C, 0x37, 0x7D, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x39, 0x2C, 0x31, 0x30, 0x7D, 0x2A, 0x16, 0x12, 0x0A, 0x39, 0x30, 0x30, 0x5C, 0x64, 0x7B, 0x36, 0x2C, 0x37, 0x7D, 0x1A, 0x08, 0x5C, 0x64, 0x7B, 0x39, 0x2C, 0x31, 0x30, 0x7D, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x4E, 0x5A, 0x50, 0x40, 0x5A, 0x02, 0x30, 0x30, 0x62, 0x01, 0x30, 0x7A, 0x01, 0x30, 0x9A, 0x01, 0x31, 0x0A, 0x12, 0x28, 0x5C, 0x64, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x2D, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x0A, 0x32, 0x34, 0x7C, 0x5B, 0x33, 0x34, 0x36, 0x37, 0x39, 0x5D, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x2F, 0x0A, 0x14, 0x28, 0x5C, 0x64, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x2C, 0x35, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x2D, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x06, 0x32, 0x5B, 0x31, 0x37, 0x39, 0x5D, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0x9A, 0x01, 0x30, 0x0A, 0x17, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x2C, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x04, 0x5B, 0x38, 0x39, 0x5D, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xFE, 0x01, 0x0A, 0x13, 0x12, 0x0A, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x12, 0x13, 0x12, 0x0A, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x1A, 0x28, 0x12, 0x1F, 0x28, 0x3F, 0x3A, 0x35, 0x5B, 0x30, 0x31, 0x5D, 0x7C, 0x36, 0x5B, 0x30, 0x36, 0x39, 0x5D, 0x7C, 0x37, 0x5B, 0x32, 0x38, 0x39, 0x5D, 0x7C, 0x38, 0x38, 0x29, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x22, 0x11, 0x12, 0x08, 0x38, 0x30, 0x30, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x2A, 0x10, 0x12, 0x07, 0x37, 0x30, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x50, 0x4C, 0x50, 0x30, 0x5A, 0x03, 0x30, 0x7E, 0x30, 0x62, 0x01, 0x30, 0x7A, 0x01, 0x30, 0x9A, 0x01, 0x32, 0x0A, 0x1C, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x12, 0x0B, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x20, 0x24, 0x34, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xD2, 0x02, 0x0A, 0x13, 0x12, 0x0A, 0x5B, 0x32, 0x36, 0x38, 0x5D, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x12, 0x1C, 0x12, 0x08, 0x32, 0x36, 0x32, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x32, 0x36, 0x32, 0x31, 0x36, 0x31, 0x32, 0x33, 0x34, 0x1A, 0x26, 0x12, 0x12, 0x36, 0x28, 0x3F, 0x3A, 0x39, 0x5B, 0x32, 0x33, 0x5D, 0x7C, 0x34, 0x37, 0x29, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x36, 0x39, 0x32, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x22, 0x1B, 0x12, 0x07, 0x38, 0x30, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x38, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x2A, 0x38, 0x12, 0x24, 0x38, 0x28, 0x3F, 0x3A, 0x31, 0x5B, 0x30, 0x31, 0x5D, 0x7C, 0x32, 0x5B, 0x30, 0x31, 0x35, 0x36, 0x5D, 0x7C, 0x38, 0x34, 0x7C, 0x39, 0x5B, 0x30, 0x2D, 0x33, 0x37, 0x2D, 0x39, 0x5D, 0x29, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x38, 0x31, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x52, 0x45, 0x50, 0x86, 0x02, 0x5A, 0x02, 0x30, 0x30, 0x62, 0x01, 0x30, 0x7A, 0x01, 0x30, 0x9A, 0x01, 0x37, 0x0A, 0x21, 0x28, 0x5B, 0x32, 0x36, 0x38, 0x5D, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x32, 0x7D, 0x29, 0x12, 0x0B, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x20, 0x24, 0x34, 0x22, 0x03, 0x30, 0x24, 0x31, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xBA, 0x01, 0x13, 0x32, 0x36, 0x32, 0x7C, 0x36, 0x28, 0x3F, 0x3A, 0x39, 0x5B, 0x32, 0x33, 0x5D, 0x7C, 0x34, 0x37, 0x29, 0x7C, 0x38, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xD4, 0x02, 0x0A, 0x22, 0x12, 0x0F, 0x5B, 0x31, 0x33, 0x36, 0x38, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x2C, 0x31, 0x30, 0x7D, 0x1A, 0x0F, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x7C, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x2C, 0x31, 0x31, 0x7D, 0x12, 0x12, 0x12, 0x09, 0x5B, 0x33, 0x36, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x1A, 0x12, 0x12, 0x09, 0x5B, 0x38, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x22, 0x17, 0x12, 0x0A, 0x31, 0x3F, 0x38, 0x30, 0x30, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x09, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x2C, 0x31, 0x31, 0x7D, 0x2A, 0x13, 0x12, 0x09, 0x31, 0x39, 0x30, 0x30, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x31, 0x7D, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x53, 0x47, 0x50, 0x41, 0x5A, 0x0B, 0x30, 0x5B, 0x30, 0x2D, 0x33, 0x5D, 0x5B, 0x30, 0x2D, 0x39, 0x5D, 0x9A, 0x01, 0x29, 0x0A, 0x0E, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x1A, 0x0C, 0x5B, 0x33, 0x36, 0x39, 0x5D, 0x7C, 0x38, 0x5B, 0x31, 0x2D, 0x39, 0x5D, 0x22, 0x00, 0x2A, 0x00, 0x9A, 0x01, 0x2C, 0x0A, 0x15, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x05, 0x31, 0x5B, 0x38, 0x39, 0x5D, 0x22, 0x00, 0x2A, 0x00, 0x9A, 0x01, 0x2A, 0x0A, 0x15, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x1A, 0x03, 0x38, 0x30, 0x30, 0x22, 0x00, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xDF, 0x03, 0x0A, 0x39, 0x12, 0x1A, 0x5B, 0x31, 0x33, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x7C, 0x32, 0x5B, 0x30, 0x2D, 0x33, 0x35, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x1A, 0x0F, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x28, 0x3F, 0x3A, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x3F, 0x32, 0x0A, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x30, 0x12, 0x39, 0x12, 0x1A, 0x5B, 0x31, 0x33, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x7C, 0x32, 0x5B, 0x30, 0x2D, 0x33, 0x35, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x1A, 0x0F, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x28, 0x3F, 0x3A, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x3F, 0x32, 0x0A, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x30, 0x1A, 0x39, 0x12, 0x1A, 0x5B, 0x31, 0x33, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x7C, 0x32, 0x5B, 0x30, 0x2D, 0x33, 0x35, 0x2D, 0x39, 0x5D, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x1A, 0x0F, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x28, 0x3F, 0x3A, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x3F, 0x32, 0x0A, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x30, 0x22, 0x2B, 0x12, 0x15, 0x38, 0x28, 0x3F, 0x3A, 0x30, 0x30, 0x7C, 0x36, 0x36, 0x7C, 0x37, 0x37, 0x7C, 0x38, 0x38, 0x29, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x30, 0x2A, 0x1E, 0x12, 0x08, 0x39, 0x30, 0x30, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x30, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x55, 0x53, 0x50, 0x01, 0x5A, 0x03, 0x30, 0x31, 0x31, 0x62, 0x01, 0x31, 0x6A, 0x07, 0x20, 0x65, 0x78, 0x74, 0x6E, 0x2E, 0x20, 0x7A, 0x01, 0x31, 0x90, 0x01, 0x01, 0x9A, 0x01, 0x25, 0x0A, 0x15, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x22, 0x00, 0x2A, 0x00, 0x9A, 0x01, 0x1B, 0x0A, 0x0E, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x05, 0x24, 0x31, 0x20, 0x24, 0x32, 0x22, 0x00, 0x2A, 0x00, 0xA2, 0x01, 0x23, 0x0A, 0x15, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x33, 0x7D, 0x29, 0x28, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x29, 0x12, 0x08, 0x24, 0x31, 0x20, 0x24, 0x32, 0x20, 0x24, 0x33, 0x2A, 0x00, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xB0, 0x01, 0x01, 0xC2, 0x01, 0x1E, 0x12, 0x08, 0x38, 0x30, 0x30, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x06, 0x5C, 0x64, 0x7B, 0x31, 0x30, 0x7D, 0x32, 0x0A, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x30, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x0A, 0xD8, 0x01, 0x0A, 0x13, 0x12, 0x0A, 0x5B, 0x32, 0x36, 0x38, 0x5D, 0x5C, 0x64, 0x7B, 0x38, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x12, 0x22, 0x12, 0x0E, 0x32, 0x36, 0x39, 0x36, 0x5B, 0x30, 0x2D, 0x34, 0x5D, 0x5C, 0x64, 0x7B, 0x34, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x32, 0x36, 0x39, 0x36, 0x30, 0x31, 0x32, 0x33, 0x34, 0x1A, 0x1C, 0x12, 0x08, 0x36, 0x33, 0x39, 0x5C, 0x64, 0x7B, 0x36, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x36, 0x33, 0x39, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x22, 0x1B, 0x12, 0x07, 0x38, 0x30, 0x5C, 0x64, 0x7B, 0x37, 0x7D, 0x1A, 0x05, 0x5C, 0x64, 0x7B, 0x39, 0x7D, 0x32, 0x09, 0x38, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x2A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x32, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x3A, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x42, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0x4A, 0x02, 0x59, 0x54, 0x50, 0x86, 0x02, 0x5A, 0x02, 0x30, 0x30, 0x62, 0x01, 0x30, 0x7A, 0x01, 0x30, 0xAA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xBA, 0x01, 0x07, 0x32, 0x36, 0x39, 0x7C, 0x36, 0x33, 0x39, 0xC2, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, 0xCA, 0x01, 0x08, 0x12, 0x02, 0x4E, 0x41, 0x1A, 0x02, 0x4E, 0x41, }; + +int test_metadata_size() { + return sizeof(test_metadata_data) / sizeof(test_metadata_data[0]); +} + +const void* test_metadata_get() { + return test_metadata_data; +} diff --git a/third_party/libphonenumber/cpp/src/test_metadata.h b/third_party/libphonenumber/cpp/src/test_metadata.h new file mode 100644 index 0000000..4eaa5c7 --- /dev/null +++ b/third_party/libphonenumber/cpp/src/test_metadata.h @@ -0,0 +1,22 @@ +/* + * Copyright (C) 2011 Google Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +#ifndef EMBEDDED_DATA_TEST_METADATA_H_ +#define EMBEDDED_DATA_TEST_METADATA_H_ + +int test_metadata_size(); +const void* test_metadata_get(); + +#endif // EMBEDDED_DATA_TEST_METADATA_H_ diff --git a/third_party/libphonenumber/cpp/src/utf/README b/third_party/libphonenumber/cpp/src/utf/README new file mode 100644 index 0000000..986e9e3 --- /dev/null +++ b/third_party/libphonenumber/cpp/src/utf/README @@ -0,0 +1 @@ +These files come from lib9 (http://code.google.com/p/go/source/browse). diff --git a/third_party/libphonenumber/cpp/src/utf/rune.c b/third_party/libphonenumber/cpp/src/utf/rune.c new file mode 100644 index 0000000..5a37368 --- /dev/null +++ b/third_party/libphonenumber/cpp/src/utf/rune.c @@ -0,0 +1,350 @@ +/* + * The authors of this software are Rob Pike and Ken Thompson. + * Copyright (c) 2002 by Lucent Technologies. + * Permission to use, copy, modify, and distribute this software for any + * purpose without fee is hereby granted, provided that this entire notice + * is included in all copies of any software which is or includes a copy + * or modification of this software and in all copies of the supporting + * documentation for such software. + * THIS SOFTWARE IS BEING PROVIDED "AS IS", WITHOUT ANY EXPRESS OR IMPLIED + * WARRANTY. IN PARTICULAR, NEITHER THE AUTHORS NOR LUCENT TECHNOLOGIES MAKE ANY + * REPRESENTATION OR WARRANTY OF ANY KIND CONCERNING THE MERCHANTABILITY + * OF THIS SOFTWARE OR ITS FITNESS FOR ANY PARTICULAR PURPOSE. + */ +#include <stdarg.h> +#include <string.h> +#include "utf.h" +#include "utfdef.h" + +enum +{ + Bit1 = 7, + Bitx = 6, + Bit2 = 5, + Bit3 = 4, + Bit4 = 3, + Bit5 = 2, + + T1 = ((1<<(Bit1+1))-1) ^ 0xFF, /* 0000 0000 */ + Tx = ((1<<(Bitx+1))-1) ^ 0xFF, /* 1000 0000 */ + T2 = ((1<<(Bit2+1))-1) ^ 0xFF, /* 1100 0000 */ + T3 = ((1<<(Bit3+1))-1) ^ 0xFF, /* 1110 0000 */ + T4 = ((1<<(Bit4+1))-1) ^ 0xFF, /* 1111 0000 */ + T5 = ((1<<(Bit5+1))-1) ^ 0xFF, /* 1111 1000 */ + + Rune1 = (1<<(Bit1+0*Bitx))-1, /* 0000 0000 0111 1111 */ + Rune2 = (1<<(Bit2+1*Bitx))-1, /* 0000 0111 1111 1111 */ + Rune3 = (1<<(Bit3+2*Bitx))-1, /* 1111 1111 1111 1111 */ + Rune4 = (1<<(Bit4+3*Bitx))-1, + /* 0001 1111 1111 1111 1111 1111 */ + + Maskx = (1<<Bitx)-1, /* 0011 1111 */ + Testx = Maskx ^ 0xFF, /* 1100 0000 */ + + Bad = Runeerror, +}; + +/* + * Modified by Wei-Hwa Huang, Google Inc., on 2004-09-24 + * This is a slower but "safe" version of the old chartorune + * that works on strings that are not necessarily null-terminated. + * + * If you know for sure that your string is null-terminated, + * chartorune will be a bit faster. + * + * It is guaranteed not to attempt to access "length" + * past the incoming pointer. This is to avoid + * possible access violations. If the string appears to be + * well-formed but incomplete (i.e., to get the whole Rune + * we'd need to read past str+length) then we'll set the Rune + * to Bad and return 0. + * + * Note that if we have decoding problems for other + * reasons, we return 1 instead of 0. + */ +int +charntorune(Rune *rune, const char *str, int length) +{ + int c, c1, c2, c3; + long l; + + /* When we're not allowed to read anything */ + if(length <= 0) { + goto badlen; + } + + /* + * one character sequence (7-bit value) + * 00000-0007F => T1 + */ + c = *(uchar*)str; + if(c < Tx) { + *rune = c; + return 1; + } + + // If we can't read more than one character we must stop + if(length <= 1) { + goto badlen; + } + + /* + * two character sequence (11-bit value) + * 0080-07FF => T2 Tx + */ + c1 = *(uchar*)(str+1) ^ Tx; + if(c1 & Testx) + goto bad; + if(c < T3) { + if(c < T2) + goto bad; + l = ((c << Bitx) | c1) & Rune2; + if(l <= Rune1) + goto bad; + *rune = l; + return 2; + } + + // If we can't read more than two characters we must stop + if(length <= 2) { + goto badlen; + } + + /* + * three character sequence (16-bit value) + * 0800-FFFF => T3 Tx Tx + */ + c2 = *(uchar*)(str+2) ^ Tx; + if(c2 & Testx) + goto bad; + if(c < T4) { + l = ((((c << Bitx) | c1) << Bitx) | c2) & Rune3; + if(l <= Rune2) + goto bad; + *rune = l; + return 3; + } + + if (length <= 3) + goto badlen; + + /* + * four character sequence (21-bit value) + * 10000-1FFFFF => T4 Tx Tx Tx + */ + c3 = *(uchar*)(str+3) ^ Tx; + if (c3 & Testx) + goto bad; + if (c < T5) { + l = ((((((c << Bitx) | c1) << Bitx) | c2) << Bitx) | c3) & Rune4; + if (l <= Rune3) + goto bad; + *rune = l; + return 4; + } + + // Support for 5-byte or longer UTF-8 would go here, but + // since we don't have that, we'll just fall through to bad. + + /* + * bad decoding + */ +bad: + *rune = Bad; + return 1; +badlen: + *rune = Bad; + return 0; + +} + + +/* + * This is the older "unsafe" version, which works fine on + * null-terminated strings. + */ +int +chartorune(Rune *rune, const char *str) +{ + int c, c1, c2, c3; + long l; + + /* + * one character sequence + * 00000-0007F => T1 + */ + c = *(uchar*)str; + if(c < Tx) { + *rune = c; + return 1; + } + + /* + * two character sequence + * 0080-07FF => T2 Tx + */ + c1 = *(uchar*)(str+1) ^ Tx; + if(c1 & Testx) + goto bad; + if(c < T3) { + if(c < T2) + goto bad; + l = ((c << Bitx) | c1) & Rune2; + if(l <= Rune1) + goto bad; + *rune = l; + return 2; + } + + /* + * three character sequence + * 0800-FFFF => T3 Tx Tx + */ + c2 = *(uchar*)(str+2) ^ Tx; + if(c2 & Testx) + goto bad; + if(c < T4) { + l = ((((c << Bitx) | c1) << Bitx) | c2) & Rune3; + if(l <= Rune2) + goto bad; + *rune = l; + return 3; + } + + /* + * four character sequence (21-bit value) + * 10000-1FFFFF => T4 Tx Tx Tx + */ + c3 = *(uchar*)(str+3) ^ Tx; + if (c3 & Testx) + goto bad; + if (c < T5) { + l = ((((((c << Bitx) | c1) << Bitx) | c2) << Bitx) | c3) & Rune4; + if (l <= Rune3) + goto bad; + *rune = l; + return 4; + } + + /* + * Support for 5-byte or longer UTF-8 would go here, but + * since we don't have that, we'll just fall through to bad. + */ + + /* + * bad decoding + */ +bad: + *rune = Bad; + return 1; +} + +int +isvalidcharntorune(const char* str, int length, Rune* rune, int* consumed) { + *consumed = charntorune(rune, str, length); + return *rune != Runeerror || *consumed == 3; +} + +int +runetochar(char *str, const Rune *rune) +{ + /* Runes are signed, so convert to unsigned for range check. */ + unsigned long c; + + /* + * one character sequence + * 00000-0007F => 00-7F + */ + c = *rune; + if(c <= Rune1) { + str[0] = c; + return 1; + } + + /* + * two character sequence + * 0080-07FF => T2 Tx + */ + if(c <= Rune2) { + str[0] = T2 | (c >> 1*Bitx); + str[1] = Tx | (c & Maskx); + return 2; + } + + /* + * If the Rune is out of range, convert it to the error rune. + * Do this test here because the error rune encodes to three bytes. + * Doing it earlier would duplicate work, since an out of range + * Rune wouldn't have fit in one or two bytes. + */ + if (c > Runemax) + c = Runeerror; + + /* + * three character sequence + * 0800-FFFF => T3 Tx Tx + */ + if (c <= Rune3) { + str[0] = T3 | (c >> 2*Bitx); + str[1] = Tx | ((c >> 1*Bitx) & Maskx); + str[2] = Tx | (c & Maskx); + return 3; + } + + /* + * four character sequence (21-bit value) + * 10000-1FFFFF => T4 Tx Tx Tx + */ + str[0] = T4 | (c >> 3*Bitx); + str[1] = Tx | ((c >> 2*Bitx) & Maskx); + str[2] = Tx | ((c >> 1*Bitx) & Maskx); + str[3] = Tx | (c & Maskx); + return 4; +} + +int +runelen(Rune rune) +{ + char str[10]; + + return runetochar(str, &rune); +} + +int +runenlen(const Rune *r, int nrune) +{ + int nb, c; + + nb = 0; + while(nrune--) { + c = *r++; + if (c <= Rune1) + nb++; + else if (c <= Rune2) + nb += 2; + else if (c <= Rune3) + nb += 3; + else /* assert(c <= Rune4) */ + nb += 4; + } + return nb; +} + +int +fullrune(const char *str, int n) +{ + if (n > 0) { + int c = *(uchar*)str; + if (c < Tx) + return 1; + if (n > 1) { + if (c < T3) + return 1; + if (n > 2) { + if (c < T4 || n > 3) + return 1; + } + } + } + return 0; +} diff --git a/third_party/libphonenumber/cpp/src/utf/stringpiece.h b/third_party/libphonenumber/cpp/src/utf/stringpiece.h new file mode 100644 index 0000000..7b56772 --- /dev/null +++ b/third_party/libphonenumber/cpp/src/utf/stringpiece.h @@ -0,0 +1,24 @@ +/** + * Copyright 2010 Google Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +#ifndef STRINGS_STRINGPIECE_H_ +#define STRINGS_STRINGPIECE_H_ + +//#include "third_party/chromium/src/base/string_piece.h" +#include "base/string_piece.h" + +using base::StringPiece; + +#endif // STRINGS_STRINGPIECE_H_ diff --git a/third_party/libphonenumber/cpp/src/utf/stringprintf.h b/third_party/libphonenumber/cpp/src/utf/stringprintf.h new file mode 100644 index 0000000..208d338f --- /dev/null +++ b/third_party/libphonenumber/cpp/src/utf/stringprintf.h @@ -0,0 +1,22 @@ +/** + * Copyright 2010 Google Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +#ifndef STRINGS_STRINGPRINTF_H_ +#define STRINGS_STRINGPRINTF_H_ + +//#include "third_party/chromium/src/base/string_util.h" +#include "base/string_util.h" + +#endif // STRINGS_STRINGPRINTF_H_ diff --git a/third_party/libphonenumber/cpp/src/utf/unicodetext.cc b/third_party/libphonenumber/cpp/src/utf/unicodetext.cc new file mode 100644 index 0000000..82c1b42 --- /dev/null +++ b/third_party/libphonenumber/cpp/src/utf/unicodetext.cc @@ -0,0 +1,515 @@ +// Copyright (C) 2006 Google Inc. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +// Author: Jim Meehan + +#include <iostream> +#include <sstream> +#include <cassert> + +#include "utf/unicodetext.h" +//#include "base/logging.h" +#include "utf/stringpiece.h" +//#include "utf/stringprintf.h" +#include "utf/utf.h" +#include "utf/unilib.h" + +using std::stringstream; +using std::max; +using std::hex; +using std::dec; +using std::cerr; +using std::endl; + +static int CodepointDistance(const char* start, const char* end) { + int n = 0; + // Increment n on every non-trail-byte. + for (const char* p = start; p < end; ++p) { + n += (*reinterpret_cast<const signed char*>(p) >= -0x40); + } + return n; +} + +static int CodepointCount(const char* utf8, int len) { + return CodepointDistance(utf8, utf8 + len); +} + +UnicodeText::const_iterator::difference_type +distance(const UnicodeText::const_iterator& first, + const UnicodeText::const_iterator& last) { + return CodepointDistance(first.it_, last.it_); +} + +// ---------- Utility ---------- + +static int ConvertToInterchangeValid(char* start, int len) { + // This routine is called only when we've discovered that a UTF-8 buffer + // that was passed to CopyUTF8, TakeOwnershipOfUTF8, or PointToUTF8 + // was not interchange valid. This indicates a bug in the caller, and + // a LOG(WARNING) is done in that case. + // This is similar to CoerceToInterchangeValid, but it replaces each + // structurally valid byte with a space, and each non-interchange + // character with a space, even when that character requires more + // than one byte in UTF8. E.g., "\xEF\xB7\x90" (U+FDD0) is + // structurally valid UTF8, but U+FDD0 is not an interchange-valid + // code point. The result should contain one space, not three. + // + // Since the conversion never needs to write more data than it + // reads, it is safe to change the buffer in place. It returns the + // number of bytes written. + char* const in = start; + char* out = start; + char* const end = start + len; + while (start < end) { + int good = UniLib::SpanInterchangeValid(start, end - start); + if (good > 0) { + if (out != start) { + memmove(out, start, good); + } + out += good; + start += good; + if (start == end) { + break; + } + } + // Is the current string invalid UTF8 or just non-interchange UTF8? + char32 rune; + int n; + if (isvalidcharntorune(start, end - start, &rune, &n)) { + // structurally valid UTF8, but not interchange valid + start += n; // Skip over the whole character. + } else { // bad UTF8 + start += 1; // Skip over just one byte + } + *out++ = ' '; + } + return out - in; +} + + +// *************** Data representation ********** + +// Note: the copy constructor is undefined. + +// After reserve(), resize(), or clear(), we're an owner, not an alias. + +void UnicodeText::Repr::reserve(int new_capacity) { + // If there's already enough capacity, and we're an owner, do nothing. + if (capacity_ >= new_capacity && ours_) return; + + // Otherwise, allocate a new buffer. + capacity_ = max(new_capacity, (3 * capacity_) / 2 + 20); + char* new_data = new char[capacity_]; + + // If there is an old buffer, copy it into the new buffer. + if (data_) { + memcpy(new_data, data_, size_); + if (ours_) delete[] data_; // If we owned the old buffer, free it. + } + data_ = new_data; + ours_ = true; // We own the new buffer. + // size_ is unchanged. +} + +void UnicodeText::Repr::resize(int new_size) { + if (new_size == 0) { + clear(); + } else { + if (!ours_ || new_size > capacity_) reserve(new_size); + // Clear the memory in the expanded part. + if (size_ < new_size) memset(data_ + size_, 0, new_size - size_); + size_ = new_size; + ours_ = true; + } +} + +// This implementation of clear() deallocates the buffer if we're an owner. +// That's not strictly necessary; we could just set size_ to 0. +void UnicodeText::Repr::clear() { + if (ours_) delete[] data_; + data_ = NULL; + size_ = capacity_ = 0; + ours_ = true; +} + +void UnicodeText::Repr::Copy(const char* data, int size) { + resize(size); + memcpy(data_, data, size); +} + +void UnicodeText::Repr::TakeOwnershipOf(char* data, int size, int capacity) { + if (data == data_) return; // We already own this memory. (Weird case.) + if (ours_ && data_) delete[] data_; // If we owned the old buffer, free it. + data_ = data; + size_ = size; + capacity_ = capacity; + ours_ = true; +} + +void UnicodeText::Repr::PointTo(const char* data, int size) { + if (ours_ && data_) delete[] data_; // If we owned the old buffer, free it. + data_ = const_cast<char*>(data); + size_ = size; + capacity_ = size; + ours_ = false; +} + +void UnicodeText::Repr::append(const char* bytes, int byte_length) { + reserve(size_ + byte_length); + memcpy(data_ + size_, bytes, byte_length); + size_ += byte_length; +} + +string UnicodeText::Repr::DebugString() const { + stringstream ss; + + ss << "{Repr " << hex << this << " data=" << data_ << " size=" << dec + << size_ << " capacity=" << capacity_ << " " + << (ours_ ? "Owned" : "Alias") << "}"; + + string result; + ss >> result; + + return result; +} + + + +// *************** UnicodeText ****************** + +// ----- Constructors ----- + +// Default constructor +UnicodeText::UnicodeText() { +} + +// Copy constructor +UnicodeText::UnicodeText(const UnicodeText& src) { + Copy(src); +} + +// Substring constructor +UnicodeText::UnicodeText(const UnicodeText::const_iterator& first, + const UnicodeText::const_iterator& last) { + assert(first <= last && "Incompatible iterators"); + repr_.append(first.it_, last.it_ - first.it_); +} + +string UnicodeText::UTF8Substring(const const_iterator& first, + const const_iterator& last) { + assert(first <= last && "Incompatible iterators"); + return string(first.it_, last.it_ - first.it_); +} + + +// ----- Copy ----- + +UnicodeText& UnicodeText::operator=(const UnicodeText& src) { + if (this != &src) { + Copy(src); + } + return *this; +} + +UnicodeText& UnicodeText::Copy(const UnicodeText& src) { + repr_.Copy(src.repr_.data_, src.repr_.size_); + return *this; +} + +UnicodeText& UnicodeText::CopyUTF8(const char* buffer, int byte_length) { + repr_.Copy(buffer, byte_length); + if (!UniLib:: IsInterchangeValid(buffer, byte_length)) { + cerr << "UTF-8 buffer is not interchange-valid." << endl; + repr_.size_ = ConvertToInterchangeValid(repr_.data_, byte_length); + } + return *this; +} + +UnicodeText& UnicodeText::UnsafeCopyUTF8(const char* buffer, + int byte_length) { + repr_.Copy(buffer, byte_length); + return *this; +} + +// ----- TakeOwnershipOf ----- + +UnicodeText& UnicodeText::TakeOwnershipOfUTF8(char* buffer, + int byte_length, + int byte_capacity) { + repr_.TakeOwnershipOf(buffer, byte_length, byte_capacity); + if (!UniLib:: IsInterchangeValid(buffer, byte_length)) { + cerr << "UTF-8 buffer is not interchange-valid." << endl; + repr_.size_ = ConvertToInterchangeValid(repr_.data_, byte_length); + } + return *this; +} + +UnicodeText& UnicodeText::UnsafeTakeOwnershipOfUTF8(char* buffer, + int byte_length, + int byte_capacity) { + repr_.TakeOwnershipOf(buffer, byte_length, byte_capacity); + return *this; +} + +// ----- PointTo ----- + +UnicodeText& UnicodeText::PointToUTF8(const char* buffer, int byte_length) { + if (UniLib:: IsInterchangeValid(buffer, byte_length)) { + repr_.PointTo(buffer, byte_length); + } else { + cerr << "UTF-8 buffer is not interchange-valid." << endl; + repr_.Copy(buffer, byte_length); + repr_.size_ = ConvertToInterchangeValid(repr_.data_, byte_length); + } + return *this; +} + +UnicodeText& UnicodeText::UnsafePointToUTF8(const char* buffer, + int byte_length) { + repr_.PointTo(buffer, byte_length); + return *this; +} + +UnicodeText& UnicodeText::PointTo(const UnicodeText& src) { + repr_.PointTo(src.repr_.data_, src.repr_.size_); + return *this; +} + +UnicodeText& UnicodeText::PointTo(const const_iterator &first, + const const_iterator &last) { + assert(first <= last && " Incompatible iterators"); + repr_.PointTo(first.utf8_data(), last.utf8_data() - first.utf8_data()); + return *this; +} + +// ----- Append ----- + +UnicodeText& UnicodeText::append(const UnicodeText& u) { + repr_.append(u.repr_.data_, u.repr_.size_); + return *this; +} + +UnicodeText& UnicodeText::append(const const_iterator& first, + const const_iterator& last) { + assert(first <= last && "Incompatible iterators"); + repr_.append(first.it_, last.it_ - first.it_); + return *this; +} + +UnicodeText& UnicodeText::UnsafeAppendUTF8(const char* utf8, int len) { + repr_.append(utf8, len); + return *this; +} + +// ----- substring searching ----- + +UnicodeText::const_iterator UnicodeText::find(const UnicodeText& look, + const_iterator start_pos) const { + assert(start_pos.utf8_data() >= utf8_data()); + assert(start_pos.utf8_data() <= utf8_data() + utf8_length()); + return UnsafeFind(look, start_pos); +} + +UnicodeText::const_iterator UnicodeText::find(const UnicodeText& look) const { + return UnsafeFind(look, begin()); +} + +UnicodeText::const_iterator UnicodeText::UnsafeFind( + const UnicodeText& look, const_iterator start_pos) const { + // Due to the magic of the UTF8 encoding, searching for a sequence of + // letters is equivalent to substring search. + StringPiece searching(utf8_data(), utf8_length()); + StringPiece look_piece(look.utf8_data(), look.utf8_length()); + StringPiece::size_type found = + searching.find(look_piece, start_pos.utf8_data() - utf8_data()); + if (found == StringPiece::npos) return end(); + return const_iterator(utf8_data() + found); +} + +bool UnicodeText::HasReplacementChar() const { + // Equivalent to: + // UnicodeText replacement_char; + // replacement_char.push_back(0xFFFD); + // return find(replacement_char) != end(); + StringPiece searching(utf8_data(), utf8_length()); + StringPiece looking_for("\xEF\xBF\xBD", 3); + return searching.find(looking_for) != StringPiece::npos; +} + +// ----- other methods ----- + +// Clear operator +void UnicodeText::clear() { + repr_.clear(); +} + +// Destructor +UnicodeText::~UnicodeText() {} + + +void UnicodeText::push_back(char32 c) { + if (UniLib::IsValidCodepoint(c)) { + char buf[UTFmax]; + int len = runetochar(buf, &c); + if (UniLib::IsInterchangeValid(buf, len)) { + repr_.append(buf, len); + } else { + cerr << "Unicode value 0x" << hex << c + << " is not valid for interchange" << endl; + repr_.append(" ", 1); + } + } else { + cerr << "Illegal Unicode value: 0x" << hex << c << endl; + repr_.append(" ", 1); + } +} + +int UnicodeText::size() const { + return CodepointCount(repr_.data_, repr_.size_); +} + +bool operator==(const UnicodeText& lhs, const UnicodeText& rhs) { + if (&lhs == &rhs) return true; + if (lhs.repr_.size_ != rhs.repr_.size_) return false; + return memcmp(lhs.repr_.data_, rhs.repr_.data_, lhs.repr_.size_) == 0; +} + +string UnicodeText::DebugString() const { + stringstream ss; + + ss << "{UnicodeText " << hex << this << dec << " chars=" + << size() << " repr=" << repr_.DebugString() << "}"; +#if 0 + return StringPrintf("{UnicodeText %p chars=%d repr=%s}", + this, + size(), + repr_.DebugString().c_str()); +#endif + string result; + ss >> result; + + return result; +} + + +// ******************* UnicodeText::const_iterator ********************* + +// The implementation of const_iterator would be nicer if it +// inherited from boost::iterator_facade +// (http://boost.org/libs/iterator/doc/iterator_facade.html). + +UnicodeText::const_iterator::const_iterator() : it_(0) {} + +UnicodeText::const_iterator::const_iterator(const const_iterator& other) + : it_(other.it_) { +} + +UnicodeText::const_iterator& +UnicodeText::const_iterator::operator=(const const_iterator& other) { + if (&other != this) + it_ = other.it_; + return *this; +} + +UnicodeText::const_iterator UnicodeText::begin() const { + return const_iterator(repr_.data_); +} + +UnicodeText::const_iterator UnicodeText::end() const { + return const_iterator(repr_.data_ + repr_.size_); +} + +bool operator<(const UnicodeText::const_iterator& lhs, + const UnicodeText::const_iterator& rhs) { + return lhs.it_ < rhs.it_; +} + +char32 UnicodeText::const_iterator::operator*() const { + // (We could call chartorune here, but that does some + // error-checking, and we're guaranteed that our data is valid + // UTF-8. Also, we expect this routine to be called very often. So + // for speed, we do the calculation ourselves.) + + // Convert from UTF-8 + int byte1 = it_[0]; + if (byte1 < 0x80) + return byte1; + + int byte2 = it_[1]; + if (byte1 < 0xE0) + return ((byte1 & 0x1F) << 6) + | (byte2 & 0x3F); + + int byte3 = it_[2]; + if (byte1 < 0xF0) + return ((byte1 & 0x0F) << 12) + | ((byte2 & 0x3F) << 6) + | (byte3 & 0x3F); + + int byte4 = it_[3]; + return ((byte1 & 0x07) << 18) + | ((byte2 & 0x3F) << 12) + | ((byte3 & 0x3F) << 6) + | (byte4 & 0x3F); +} + +UnicodeText::const_iterator& UnicodeText::const_iterator::operator++() { + it_ += UniLib::OneCharLen(it_); + return *this; +} + +UnicodeText::const_iterator& UnicodeText::const_iterator::operator--() { + while (UniLib::IsTrailByte(*--it_)); + return *this; +} + +int UnicodeText::const_iterator::get_utf8(char* utf8_output) const { + utf8_output[0] = it_[0]; + if (static_cast<unsigned char>(it_[0]) < 0x80) + return 1; + + utf8_output[1] = it_[1]; + if (static_cast<unsigned char>(it_[0]) < 0xE0) + return 2; + + utf8_output[2] = it_[2]; + if (static_cast<unsigned char>(it_[0]) < 0xF0) + return 3; + + utf8_output[3] = it_[3]; + return 4; +} + + +UnicodeText::const_iterator UnicodeText::MakeIterator(const char* p) const { + assert(p != NULL); + const char* start = utf8_data(); + int len = utf8_length(); + const char* end = start + len; + assert(p >= start); + assert(p <= end); + assert(p == end || !UniLib::IsTrailByte(*p)); + return const_iterator(p); +} + +string UnicodeText::const_iterator::DebugString() const { + stringstream ss; + + ss << "{iter " << hex << it_ << "}"; + string result; + ss >> result; + + return result; +} + diff --git a/third_party/libphonenumber/cpp/src/utf/unicodetext.h b/third_party/libphonenumber/cpp/src/utf/unicodetext.h new file mode 100644 index 0000000..fb37a33 --- /dev/null +++ b/third_party/libphonenumber/cpp/src/utf/unicodetext.h @@ -0,0 +1,456 @@ +// Copyright (C) 2006 Google Inc. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +// Author: Jim Meehan + +#ifndef UTIL_UTF8_UNICODETEXT_H__ +#define UTIL_UTF8_UNICODETEXT_H__ + +#include <iterator> +#include <string> +#include <utility> +#include "base/basictypes.h" +//#include "util/utf8/public/config.h" + +using std::string; +using std::bidirectional_iterator_tag; +using std::pair; + +// ***************************** UnicodeText ************************** +// +// A UnicodeText object is a container for a sequence of Unicode +// codepoint values. It has default, copy, and assignment constructors. +// Data can be appended to it from another UnicodeText, from +// iterators, or from a single codepoint. +// +// The internal representation of the text is UTF-8. Since UTF-8 is a +// variable-width format, UnicodeText does not provide random access +// to the text, and changes to the text are permitted only at the end. +// +// The UnicodeText class defines a const_iterator. The dereferencing +// operator (*) returns a codepoint (char32). The iterator is a +// bidirectional, read-only iterator. It becomes invalid if the text +// is changed. +// +// There are methods for appending and retrieving UTF-8 data directly. +// The 'utf8_data' method returns a const char* that contains the +// UTF-8-encoded version of the text; 'utf8_length' returns the number +// of bytes in the UTF-8 data. An iterator's 'get' method stores up to +// 4 bytes of UTF-8 data in a char array and returns the number of +// bytes that it stored. +// +// Codepoints are integers in the range [0, 0xD7FF] or [0xE000, +// 0x10FFFF], but UnicodeText has the additional restriction that it +// can contain only those characters that are valid for interchange on +// the Web. This excludes all of the control codes except for carriage +// return, line feed, and horizontal tab. It also excludes +// non-characters, but codepoints that are in the Private Use regions +// are allowed, as are codepoints that are unassigned. (See the +// Unicode reference for details.) The function UniLib::IsInterchangeValid +// can be used as a test for this property. +// +// UnicodeTexts are safe. Every method that constructs or modifies a +// UnicodeText tests for interchange-validity, and will substitute a +// space for the invalid data. Such cases are reported via +// LOG(WARNING). +// +// MEMORY MANAGEMENT: copy, take ownership, or point to +// +// A UnicodeText is either an "owner", meaning that it owns the memory +// for the data buffer and will free it when the UnicodeText is +// destroyed, or it is an "alias", meaning that it does not. +// +// There are three methods for storing UTF-8 data in a UnicodeText: +// +// CopyUTF8(buffer, len) copies buffer. +// +// TakeOwnershipOfUTF8(buffer, size, capacity) takes ownership of buffer. +// +// PointToUTF8(buffer, size) creates an alias pointing to buffer. +// +// All three methods perform a validity check on the buffer. There are +// private, "unsafe" versions of these functions that bypass the +// validity check. They are used internally and by friend-functions +// that are handling UTF-8 data that has already been validated. +// +// The purpose of an alias is to avoid making an unnecessary copy of a +// UTF-8 buffer while still providing access to the Unicode values +// within that text through iterators or the fast scanners that are +// based on UTF-8 state tables. The lifetime of an alias must not +// exceed the lifetime of the buffer from which it was constructed. +// +// The semantics of an alias might be described as "copy on write or +// repair." The source data is never modified. If push_back() or +// append() is called on an alias, a copy of the data will be created, +// and the UnicodeText will become an owner. If clear() is called on +// an alias, it becomes an (empty) owner. +// +// The copy constructor and the assignment operator produce an owner. +// That is, after direct initialization ("UnicodeText x(y);") or copy +// initialization ("UnicodeText x = y;") x will be an owner, even if y +// was an alias. The assignment operator ("x = y;") also produces an +// owner unless x and y are the same object and y is an alias. +// +// Aliases should be used with care. If the source from which an alias +// was created is freed, or if the contents are changed, while the +// alias is still in use, fatal errors could result. But it can be +// quite useful to have a UnicodeText "window" through which to see a +// UTF-8 buffer without having to pay the price of making a copy. +// +// UTILITIES +// +// The interfaces in util/utf8/public/textutils.h provide higher-level +// utilities for dealing with UnicodeTexts, including routines for +// creating UnicodeTexts (both owners and aliases) from UTF-8 buffers or +// strings, creating strings from UnicodeTexts, normalizing text for +// efficient matching or display, and others. + +class UnicodeText { + public: + class const_iterator; + + typedef char32 value_type; + + // Constructors. These always produce owners. + UnicodeText(); // Create an empty text. + UnicodeText(const UnicodeText& src); // copy constructor + // Construct a substring (copies the data). + UnicodeText(const const_iterator& first, const const_iterator& last); + + // Assignment operator. This copies the data and produces an owner + // unless this == &src, e.g., "x = x;", which is a no-op. + UnicodeText& operator=(const UnicodeText& src); + + // x.Copy(y) copies the data from y into x. + UnicodeText& Copy(const UnicodeText& src); + inline UnicodeText& assign(const UnicodeText& src) { return Copy(src); } + + // x.PointTo(y) changes x so that it points to y's data. + // It does not copy y or take ownership of y's data. + UnicodeText& PointTo(const UnicodeText& src); + UnicodeText& PointTo(const const_iterator& first, + const const_iterator& last); + + ~UnicodeText(); + + void clear(); // Clear text. + bool empty() { return repr_.size_ == 0; } // Test if text is empty. + + // Add a codepoint to the end of the text. + // If the codepoint is not interchange-valid, add a space instead + // and log a warning. + void push_back(char32 codepoint); + + // Generic appending operation. + // iterator_traits<ForwardIterator>::value_type must be implicitly + // convertible to char32. Typical uses of this method might include: + // char32 chars[] = {0x1, 0x2, ...}; + // vector<char32> more_chars = ...; + // utext.append(chars, chars+arraysize(chars)); + // utext.append(more_chars.begin(), more_chars.end()); + template<typename ForwardIterator> + UnicodeText& append(ForwardIterator first, const ForwardIterator last) { + while (first != last) { push_back(*first++); } + return *this; + } + + // A specialization of the generic append() method. + UnicodeText& append(const const_iterator& first, const const_iterator& last); + + // An optimization of append(source.begin(), source.end()). + UnicodeText& append(const UnicodeText& source); + + int size() const; // the number of Unicode characters (codepoints) + + friend bool operator==(const UnicodeText& lhs, const UnicodeText& rhs); + friend bool operator!=(const UnicodeText& lhs, const UnicodeText& rhs); + + class const_iterator { + typedef const_iterator CI; + public: + typedef bidirectional_iterator_tag iterator_category; + typedef char32 value_type; + typedef ptrdiff_t difference_type; + typedef void pointer; // (Not needed.) + typedef const char32 reference; // (Needed for const_reverse_iterator) + + // Iterators are default-constructible. + const_iterator(); + + // It's safe to make multiple passes over a UnicodeText. + const_iterator(const const_iterator& other); + const_iterator& operator=(const const_iterator& other); + + char32 operator*() const; // Dereference + + const_iterator& operator++(); // Advance (++iter) + const_iterator operator++(int) { // (iter++) + const_iterator result(*this); + ++*this; + return result; + } + + const_iterator& operator--(); // Retreat (--iter) + const_iterator operator--(int) { // (iter--) + const_iterator result(*this); + --*this; + return result; + } + + // We love relational operators. + friend bool operator==(const CI& lhs, const CI& rhs) { + return lhs.it_ == rhs.it_; } + friend bool operator!=(const CI& lhs, const CI& rhs) { + return !(lhs == rhs); } + friend bool operator<(const CI& lhs, const CI& rhs); + friend bool operator>(const CI& lhs, const CI& rhs) { + return rhs < lhs; } + friend bool operator<=(const CI& lhs, const CI& rhs) { + return !(rhs < lhs); } + friend bool operator>=(const CI& lhs, const CI& rhs) { + return !(lhs < rhs); } + + friend difference_type distance(const CI& first, const CI& last); + + // UTF-8-specific methods + // Store the UTF-8 encoding of the current codepoint into buf, + // which must be at least 4 bytes long. Return the number of + // bytes written. + int get_utf8(char* buf) const; + // Return the iterator's pointer into the UTF-8 data. + const char* utf8_data() const { return it_; } + + string DebugString() const; + + private: + friend class UnicodeText; + friend class UnicodeTextUtils; + friend class UTF8StateTableProperty; + explicit const_iterator(const char* it) : it_(it) {} + + const char* it_; + }; + + const_iterator begin() const; + const_iterator end() const; + + class const_reverse_iterator : public std::reverse_iterator<const_iterator> { + public: + const_reverse_iterator(const_iterator it) : + std::reverse_iterator<const_iterator>(it) {} + const char* utf8_data() const { + const_iterator tmp_it = base(); + return (--tmp_it).utf8_data(); + } + int get_utf8(char* buf) const { + const_iterator tmp_it = base(); + return (--tmp_it).get_utf8(buf); + } + }; + const_reverse_iterator rbegin() const { + return const_reverse_iterator(end()); + } + const_reverse_iterator rend() const { + return const_reverse_iterator(begin()); + } + + // Substring searching. Returns the beginning of the first + // occurrence of "look", or end() if not found. + const_iterator find(const UnicodeText& look, const_iterator start_pos) const; + // Equivalent to find(look, begin()) + const_iterator find(const UnicodeText& look) const; + + // Returns whether this contains the character U+FFFD. This can + // occur, for example, if the input to Encodings::Decode() had byte + // sequences that were invalid in the source encoding. + bool HasReplacementChar() const; + + // UTF-8-specific methods + // + // Return the data, length, and capacity of UTF-8-encoded version of + // the text. Length and capacity are measured in bytes. + const char* utf8_data() const { return repr_.data_; } + int utf8_length() const { return repr_.size_; } + int utf8_capacity() const { return repr_.capacity_; } + + // Return the UTF-8 data as a string. + static string UTF8Substring(const const_iterator& first, + const const_iterator& last); + + // There are three methods for initializing a UnicodeText from UTF-8 + // data. They vary in details of memory management. In all cases, + // the data is tested for interchange-validity. If it is not + // interchange-valid, a LOG(WARNING) is issued, and each + // structurally invalid byte and each interchange-invalid codepoint + // is replaced with a space. + + // x.CopyUTF8(buf, len) copies buf into x. + UnicodeText& CopyUTF8(const char* utf8_buffer, int byte_length); + + // x.TakeOwnershipOfUTF8(buf, len, capacity). x takes ownership of + // buf. buf is not copied. + UnicodeText& TakeOwnershipOfUTF8(char* utf8_buffer, + int byte_length, + int byte_capacity); + + // x.PointToUTF8(buf,len) changes x so that it points to buf + // ("becomes an alias"). It does not take ownership or copy buf. + // If the buffer is not valid, this has the same effect as + // CopyUTF8(utf8_buffer, byte_length). + UnicodeText& PointToUTF8(const char* utf8_buffer, int byte_length); + + // Occasionally it is necessary to use functions that operate on the + // pointer returned by utf8_data(). MakeIterator(p) provides a way + // to get back to the UnicodeText level. It uses CHECK to ensure + // that p is a pointer within this object's UTF-8 data, and that it + // points to the beginning of a character. + const_iterator MakeIterator(const char* p) const; + + string DebugString() const; + + private: + friend class const_iterator; + friend class UnicodeTextUtils; + + class Repr { // A byte-string. + public: + char* data_; + int size_; + int capacity_; + bool ours_; // Do we own data_? + + Repr() : data_(NULL), size_(0), capacity_(0), ours_(true) {} + ~Repr() { if (ours_) delete[] data_; } + + void clear(); + void reserve(int capacity); + void resize(int size); + + void append(const char* bytes, int byte_length); + void Copy(const char* data, int size); + void TakeOwnershipOf(char* data, int size, int capacity); + void PointTo(const char* data, int size); + + string DebugString() const; + + private: + Repr& operator=(const Repr&); + Repr(const Repr& other); + }; + + Repr repr_; + + // UTF-8-specific private methods. + // These routines do not perform a validity check when compiled + // in opt mode. + // It is an error to call these methods with UTF-8 data that + // is not interchange-valid. + // + UnicodeText& UnsafeCopyUTF8(const char* utf8_buffer, int byte_length); + UnicodeText& UnsafeTakeOwnershipOfUTF8( + char* utf8_buffer, int byte_length, int byte_capacity); + UnicodeText& UnsafePointToUTF8(const char* utf8_buffer, int byte_length); + UnicodeText& UnsafeAppendUTF8(const char* utf8_buffer, int byte_length); + const_iterator UnsafeFind(const UnicodeText& look, + const_iterator start_pos) const; +}; + +bool operator==(const UnicodeText& lhs, const UnicodeText& rhs); + +inline bool operator!=(const UnicodeText& lhs, const UnicodeText& rhs) { + return !(lhs == rhs); +} + +// UnicodeTextRange is a pair of iterators, useful for specifying text +// segments. If the iterators are ==, the segment is empty. +typedef pair<UnicodeText::const_iterator, + UnicodeText::const_iterator> UnicodeTextRange; + +inline bool UnicodeTextRangeIsEmpty(const UnicodeTextRange& r) { + return r.first == r.second; +} + + +// *************************** Utilities ************************* + +// A factory function for creating a UnicodeText from a buffer of +// UTF-8 data. The new UnicodeText takes ownership of the buffer. (It +// is an "owner.") +// +// Each byte that is structurally invalid will be replaced with a +// space. Each codepoint that is interchange-invalid will also be +// replaced with a space, even if the codepoint was represented with a +// multibyte sequence in the UTF-8 data. +// +inline UnicodeText MakeUnicodeTextAcceptingOwnership( + char* utf8_buffer, int byte_length, int byte_capacity) { + return UnicodeText().TakeOwnershipOfUTF8( + utf8_buffer, byte_length, byte_capacity); +} + +// A factory function for creating a UnicodeText from a buffer of +// UTF-8 data. The new UnicodeText does not take ownership of the +// buffer. (It is an "alias.") +// +inline UnicodeText MakeUnicodeTextWithoutAcceptingOwnership( + const char* utf8_buffer, int byte_length) { + return UnicodeText().PointToUTF8(utf8_buffer, byte_length); +} + +// Create a UnicodeText from a UTF-8 string or buffer. +// +// If do_copy is true, then a copy of the string is made. The copy is +// owned by the resulting UnicodeText object and will be freed when +// the object is destroyed. This UnicodeText object is referred to +// as an "owner." +// +// If do_copy is false, then no copy is made. The resulting +// UnicodeText object does NOT take ownership of the string; in this +// case, the lifetime of the UnicodeText object must not exceed the +// lifetime of the string. This Unicodetext object is referred to as +// an "alias." This is the same as MakeUnicodeTextWithoutAcceptingOwnership. +// +// If the input string does not contain valid UTF-8, then a copy is +// made (as if do_copy were true) and coerced to valid UTF-8 by +// replacing each invalid byte with a space. +// +inline UnicodeText UTF8ToUnicodeText(const char* utf8_buf, int len, + bool do_copy) { + UnicodeText t; + if (do_copy) { + t.CopyUTF8(utf8_buf, len); + } else { + t.PointToUTF8(utf8_buf, len); + } + return t; +} + +inline UnicodeText UTF8ToUnicodeText(const string& utf_string, bool do_copy) { + return UTF8ToUnicodeText(utf_string.data(), utf_string.size(), do_copy); +} + +inline UnicodeText UTF8ToUnicodeText(const char* utf8_buf, int len) { + return UTF8ToUnicodeText(utf8_buf, len, true); +} +inline UnicodeText UTF8ToUnicodeText(const string& utf8_string) { + return UTF8ToUnicodeText(utf8_string, true); +} + +// Return a string containing the UTF-8 encoded version of all the +// Unicode characters in t. +inline string UnicodeTextToUTF8(const UnicodeText& t) { + return string(t.utf8_data(), t.utf8_length()); +} + +#endif // UTIL_UTF8_UNICODETEXT_H__ diff --git a/third_party/libphonenumber/cpp/src/utf/unilib.cc b/third_party/libphonenumber/cpp/src/utf/unilib.cc new file mode 100644 index 0000000..6d90954 --- /dev/null +++ b/third_party/libphonenumber/cpp/src/utf/unilib.cc @@ -0,0 +1,64 @@ +/** + * Copyright 2010 Google Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// Author: Shawn Ligocki + +#include "utf/unilib.h" + +#include "base/basictypes.h" +#include "utf/utf.h" + +namespace UniLib { + +namespace { + +// MOE: start_strip +// MOE: end_strip +// Codepoints not allowed for interchange are: +// C0 (ASCII) controls: U+0000 to U+001F excluding Space (SP, U+0020), +// Horizontal Tab (HT, U+0009), Line-Feed (LF, U+000A), +// Form Feed (FF, U+000C) and Carriage-Return (CR, U+000D) +// C1 controls: U+007F to U+009F +// Surrogates: U+D800 to U+DFFF +// Non-characters: U+FDD0 to U+FDEF and U+xxFFFE to U+xxFFFF for all xx +inline bool IsInterchangeValidCodepoint(char32 c) { + return !((c >= 0x00 && c <= 0x08) || c == 0x0B || (c >= 0x0E && c <= 0x1F) || + (c >= 0x7F && c <= 0x9F) || + (c >= 0xD800 && c <= 0xDFFF) || + (c >= 0xFDD0 && c <= 0xFDEF) || (c&0xFFFE) == 0xFFFE); +} + +} // namespace + +int SpanInterchangeValid(const char* begin, int byte_length) { + char32 rune; + const char* p = begin; + const char* end = begin + byte_length; + while (p < end) { + int bytes_consumed = charntorune(&rune, p, end - p); + // We want to accept Runeerror == U+FFFD as a valid char, but it is used + // by chartorune to indicate error. Luckily, the real codepoint is size 3 + // while errors return bytes_consumed == 1. + if ((rune == Runeerror && bytes_consumed == 1) || + !IsInterchangeValidCodepoint(rune)) { + break; // Found + } + p += bytes_consumed; + } + return p - begin; +} + +} // namespace UniLib diff --git a/third_party/libphonenumber/cpp/src/utf/unilib.h b/third_party/libphonenumber/cpp/src/utf/unilib.h new file mode 100644 index 0000000..4cfc787 --- /dev/null +++ b/third_party/libphonenumber/cpp/src/utf/unilib.h @@ -0,0 +1,95 @@ +/** + * Copyright 2010 Google Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// Routines to do manipulation of Unicode characters or text +// +// The StructurallyValid routines accept buffers of arbitrary bytes. +// For CoerceToStructurallyValid(), the input buffer and output buffers may +// point to exactly the same memory. +// +// In all other cases, the UTF-8 string must be structurally valid and +// have all codepoints in the range U+0000 to U+D7FF or U+E000 to U+10FFFF. +// Debug builds take a fatal error for invalid UTF-8 input. +// The input and output buffers may not overlap at all. +// +// The char32 routines are here only for convenience; they convert to UTF-8 +// internally and use the UTF-8 routines. + +#ifndef UTIL_UTF8_UNILIB_H__ +#define UTIL_UTF8_UNILIB_H__ + +#include <string> +#include "base/basictypes.h" + +namespace UniLib { + +// Returns true unless a surrogate code point +inline bool IsValidCodepoint(char32 c) { + // In the range [0, 0xD800) or [0xE000, 0x10FFFF] + return (static_cast<uint32>(c) < 0xD800) + || (c >= 0xE000 && c <= 0x10FFFF); +} + +// Table of UTF-8 character lengths, based on first byte +static const unsigned char kUTF8LenTbl[256] = { + 1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1, + 1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1, + 1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1, + 1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1, + + 1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1, + 1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1, + 2,2,2,2,2,2,2,2, 2,2,2,2,2,2,2,2, 2,2,2,2,2,2,2,2, 2,2,2,2,2,2,2,2, + 3,3,3,3,3,3,3,3, 3,3,3,3,3,3,3,3, 4,4,4,4,4,4,4,4, 4,4,4,4,4,4,4,4 +}; + +// Return length of a single UTF-8 source character +inline int OneCharLen(const char* src) { + return kUTF8LenTbl[*reinterpret_cast<const uint8*>(src)]; +} + +// Return length of a single UTF-8 source character +inline int OneCharLen(const uint8* src) { + return kUTF8LenTbl[*src]; +} + +// Return true if this byte is a trailing UTF-8 byte (10xx xxxx) +inline bool IsTrailByte(char x) { + // return (x & 0xC0) == 0x80; + // Since trail bytes are always in [0x80, 0xBF], we can optimize: + return static_cast<signed char>(x) < -0x40; +} + +// Returns the length in bytes of the prefix of src that is all +// interchange valid UTF-8 +int SpanInterchangeValid(const char* src, int byte_length); +inline int SpanInterchangeValid(const std::string& src) { + return SpanInterchangeValid(src.data(), src.size()); +} + +// Returns true if the source is all interchange valid UTF-8 +// "Interchange valid" is a stronger than structurally valid -- +// no C0 or C1 control codes (other than CR LF HT FF) and no non-characters. +inline bool IsInterchangeValid(const char* src, int byte_length) { + return (byte_length == SpanInterchangeValid(src, byte_length)); +} +inline bool IsInterchangeValid(const std::string& src) { + return IsInterchangeValid(src.data(), src.size()); +} + +} // namespace UniLib + +#endif // UTIL_UTF8_PUBLIC_UNILIB_H_ diff --git a/third_party/libphonenumber/cpp/src/utf/utf.h b/third_party/libphonenumber/cpp/src/utf/utf.h new file mode 100644 index 0000000..f4fd482 --- /dev/null +++ b/third_party/libphonenumber/cpp/src/utf/utf.h @@ -0,0 +1,251 @@ +/* + * The authors of this software are Rob Pike and Ken Thompson. + * Copyright (c) 1998-2002 by Lucent Technologies. + * Portions Copyright (c) 2009 The Go Authors. All rights reserved. + * Permission to use, copy, modify, and distribute this software for any + * purpose without fee is hereby granted, provided that this entire notice + * is included in all copies of any software which is or includes a copy + * or modification of this software and in all copies of the supporting + * documentation for such software. + * THIS SOFTWARE IS BEING PROVIDED "AS IS", WITHOUT ANY EXPRESS OR IMPLIED + * WARRANTY. IN PARTICULAR, NEITHER THE AUTHORS NOR LUCENT TECHNOLOGIES MAKE ANY + * REPRESENTATION OR WARRANTY OF ANY KIND CONCERNING THE MERCHANTABILITY + * OF THIS SOFTWARE OR ITS FITNESS FOR ANY PARTICULAR PURPOSE. + */ + +#ifndef _UTFH_ +#define _UTFH_ 1 + +// stdint.h content doesn't seem to be used in this file and doesn't exist on +// Windows, therefore we comment it out here so that the code could be compiled +// on Windows. +//#include <stdint.h> + +typedef signed int Rune; /* Code-point values in Unicode 4.0 are 21 bits wide.*/ + +enum +{ + UTFmax = 4, /* maximum bytes per rune */ + Runesync = 0x80, /* cannot represent part of a UTF sequence (<) */ + Runeself = 0x80, /* rune and UTF sequences are the same (<) */ + Runeerror = 0xFFFD, /* decoding error in UTF */ + Runemax = 0x10FFFF, /* maximum rune value */ +}; + +#ifdef __cplusplus +extern "C" { +#endif + +/* + * rune routines + */ + +/* + * These routines were written by Rob Pike and Ken Thompson + * and first appeared in Plan 9. + * SEE ALSO + * utf (7) + * tcs (1) +*/ + +// runetochar copies (encodes) one rune, pointed to by r, to at most +// UTFmax bytes starting at s and returns the number of bytes generated. + +int runetochar(char* s, const Rune* r); + + +// chartorune copies (decodes) at most UTFmax bytes starting at s to +// one rune, pointed to by r, and returns the number of bytes consumed. +// If the input is not exactly in UTF format, chartorune will set *r +// to Runeerror and return 1. +// +// Note: There is no special case for a "null-terminated" string. A +// string whose first byte has the value 0 is the UTF8 encoding of the +// Unicode value 0 (i.e., ASCII NULL). A byte value of 0 is illegal +// anywhere else in a UTF sequence. + +int chartorune(Rune* r, const char* s); + + +// charntorune is like chartorune, except that it will access at most +// n bytes of s. If the UTF sequence is incomplete within n bytes, +// charntorune will set *r to Runeerror and return 0. If it is complete +// but not in UTF format, it will set *r to Runeerror and return 1. +// +// Added 2004-09-24 by Wei-Hwa Huang + +int charntorune(Rune* r, const char* s, int n); + +// isvalidcharntorune(str, n, r, consumed) +// is a convenience function that calls "*consumed = charntorune(r, str, n)" +// and returns an int (logically boolean) indicating whether the first +// n bytes of str was a valid and complete UTF sequence. + +int isvalidcharntorune(const char* str, int n, Rune* r, int* consumed); + +// runelen returns the number of bytes required to convert r into UTF. + +int runelen(Rune r); + + +// runenlen returns the number of bytes required to convert the n +// runes pointed to by r into UTF. + +int runenlen(const Rune* r, int n); + + +// fullrune returns 1 if the string s of length n is long enough to be +// decoded by chartorune, and 0 otherwise. This does not guarantee +// that the string contains a legal UTF encoding. This routine is used +// by programs that obtain input one byte at a time and need to know +// when a full rune has arrived. + +int fullrune(const char* s, int n); + +// The following routines are analogous to the corresponding string +// routines with "utf" substituted for "str", and "rune" substituted +// for "chr". + +// utflen returns the number of runes that are represented by the UTF +// string s. (cf. strlen) + +int utflen(const char* s); + + +// utfnlen returns the number of complete runes that are represented +// by the first n bytes of the UTF string s. If the last few bytes of +// the string contain an incompletely coded rune, utfnlen will not +// count them; in this way, it differs from utflen, which includes +// every byte of the string. (cf. strnlen) + +int utfnlen(const char* s, long n); + + +// utfrune returns a pointer to the first occurrence of rune r in the +// UTF string s, or 0 if r does not occur in the string. The NULL +// byte terminating a string is considered to be part of the string s. +// (cf. strchr) + +const char* utfrune(const char* s, Rune r); + + +// utfrrune returns a pointer to the last occurrence of rune r in the +// UTF string s, or 0 if r does not occur in the string. The NULL +// byte terminating a string is considered to be part of the string s. +// (cf. strrchr) + +const char* utfrrune(const char* s, Rune r); + + +// utfutf returns a pointer to the first occurrence of the UTF string +// s2 as a UTF substring of s1, or 0 if there is none. If s2 is the +// null string, utfutf returns s1. (cf. strstr) + +const char* utfutf(const char* s1, const char* s2); + + +// utfecpy copies UTF sequences until a null sequence has been copied, +// but writes no sequences beyond es1. If any sequences are copied, +// s1 is terminated by a null sequence, and a pointer to that sequence +// is returned. Otherwise, the original s1 is returned. (cf. strecpy) + +char* utfecpy(char *s1, char *es1, const char *s2); + + + +// These functions are rune-string analogues of the corresponding +// functions in strcat (3). +// +// These routines first appeared in Plan 9. +// SEE ALSO +// memmove (3) +// rune (3) +// strcat (2) +// +// BUGS: The outcome of overlapping moves varies among implementations. + +Rune* runestrcat(Rune* s1, const Rune* s2); +Rune* runestrncat(Rune* s1, const Rune* s2, long n); + +const Rune* runestrchr(const Rune* s, Rune c); + +int runestrcmp(const Rune* s1, const Rune* s2); +int runestrncmp(const Rune* s1, const Rune* s2, long n); + +Rune* runestrcpy(Rune* s1, const Rune* s2); +Rune* runestrncpy(Rune* s1, const Rune* s2, long n); +Rune* runestrecpy(Rune* s1, Rune* es1, const Rune* s2); + +Rune* runestrdup(const Rune* s); + +const Rune* runestrrchr(const Rune* s, Rune c); +long runestrlen(const Rune* s); +const Rune* runestrstr(const Rune* s1, const Rune* s2); + + + +// The following routines test types and modify cases for Unicode +// characters. Unicode defines some characters as letters and +// specifies three cases: upper, lower, and title. Mappings among the +// cases are also defined, although they are not exhaustive: some +// upper case letters have no lower case mapping, and so on. Unicode +// also defines several character properties, a subset of which are +// checked by these routines. These routines are based on Unicode +// version 3.0.0. +// +// NOTE: The routines are implemented in C, so the boolean functions +// (e.g., isupperrune) return 0 for false and 1 for true. +// +// +// toupperrune, tolowerrune, and totitlerune are the Unicode case +// mappings. These routines return the character unchanged if it has +// no defined mapping. + +Rune toupperrune(Rune r); +Rune tolowerrune(Rune r); +Rune totitlerune(Rune r); + + +// isupperrune tests for upper case characters, including Unicode +// upper case letters and targets of the toupper mapping. islowerrune +// and istitlerune are defined analogously. + +int isupperrune(Rune r); +int islowerrune(Rune r); +int istitlerune(Rune r); + + +// isalpharune tests for Unicode letters; this includes ideographs in +// addition to alphabetic characters. + +int isalpharune(Rune r); + + +// isdigitrune tests for digits. Non-digit numbers, such as Roman +// numerals, are not included. + +int isdigitrune(Rune r); + + +// isideographicrune tests for ideographic characters and numbers, as +// defined by the Unicode standard. + +int isideographicrune(Rune r); + + +// isspacerune tests for whitespace characters, including "C" locale +// whitespace, Unicode defined whitespace, and the "zero-width +// non-break space" character. + +int isspacerune(Rune r); + + +// (The comments in this file were copied from the manpage files rune.3, +// isalpharune.3, and runestrcat.3. Some formatting changes were also made +// to conform to Google style. /JRM 11/11/05) + +#ifdef __cplusplus +} +#endif + +#endif diff --git a/third_party/libphonenumber/cpp/src/utf/utfdef.h b/third_party/libphonenumber/cpp/src/utf/utfdef.h new file mode 100644 index 0000000..adc6d95 --- /dev/null +++ b/third_party/libphonenumber/cpp/src/utf/utfdef.h @@ -0,0 +1,28 @@ +/* + * The authors of this software are Rob Pike and Ken Thompson. + * Copyright (c) 1998-2002 by Lucent Technologies. + * Permission to use, copy, modify, and distribute this software for any + * purpose without fee is hereby granted, provided that this entire notice + * is included in all copies of any software which is or includes a copy + * or modification of this software and in all copies of the supporting + * documentation for such software. + * THIS SOFTWARE IS BEING PROVIDED "AS IS", WITHOUT ANY EXPRESS OR IMPLIED + * WARRANTY. IN PARTICULAR, NEITHER THE AUTHORS NOR LUCENT TECHNOLOGIES MAKE ANY + * REPRESENTATION OR WARRANTY OF ANY KIND CONCERNING THE MERCHANTABILITY + * OF THIS SOFTWARE OR ITS FITNESS FOR ANY PARTICULAR PURPOSE. + */ + +#define uchar _utfuchar +#define ushort _utfushort +#define uint _utfuint +#define ulong _utfulong +#define vlong _utfvlong +#define uvlong _utfuvlong + +typedef unsigned char uchar; +typedef unsigned short ushort; +typedef unsigned int uint; +typedef unsigned long ulong; + +#define nelem(x) (sizeof(x)/sizeof((x)[0])) +#define nil ((void*)0) |