From 6a8b8e522866a109103608226e3cc6def18f52dc Mon Sep 17 00:00:00 2001 From: abramann <118455486+abramann@users.noreply.github.com> Date: Fri, 3 Nov 2023 21:25:32 +0300 Subject: [PATCH] Fixes --- src/Client/tankswar.cpp | 14 +- src/Client/tankswar.h | 6 - src/Client/thisplayer.cpp | 12 +- src/Client/thisplayer.h | 1 + src/Server/Server.vcxproj | 4 + src/Server/Server.vcxproj.filters | 12 + src/Server/tankswarServer.cpp | 2 +- src/common/aiplayer.cpp | 22 +- src/common/aiplayer.h | 5 +- src/common/collisionshader.h | 44 +- src/common/data.h | 21 +- src/common/dx11wrapper.cpp | 2 +- src/common/dx11wrapper.h | 2 +- src/common/fileio.cpp | 14 +- src/common/graphics.cpp | 2 +- src/common/graphics.h | 4 +- src/common/image.h | 4 +- src/common/interface.cpp | 35 +- src/common/interface.h | 5 +- src/common/line.cpp | 4 +- src/common/map.cpp | 31 +- src/common/map.h | 3 + src/common/object.cpp | 1 - src/common/pixelshader.h | 6218 ++++++++++++++--------------- src/common/player.cpp | 19 +- src/common/player.h | 3 +- src/common/serverplayer.cpp | 4 +- src/common/texture.h | 6 +- src/common/types.h | 3 +- src/common/vertexshader.h | 32 +- src/req.txt | 2 +- 31 files changed, 3322 insertions(+), 3215 deletions(-) diff --git a/src/Client/tankswar.cpp b/src/Client/tankswar.cpp index c7d42e3..ae09820 100644 --- a/src/Client/tankswar.cpp +++ b/src/Client/tankswar.cpp @@ -12,7 +12,7 @@ #include "..\common\inlined.inl" #include "thisplayer.h" -TanksWar::TanksWar() : m_status(clientNS::CLIENT_UNCONNECTED), m_aiLevel(AI_LEVEL_EASY), m_soloGameStarted(false), m_AIPlayersCount(0) +TanksWar::TanksWar() : m_status(clientNS::CLIENT_UNCONNECTED), m_soloGameStarted(false) { m_pClient = std::make_shared(); m_pRData = m_pClient->getReceiveBuffer(); @@ -237,14 +237,16 @@ bool TanksWar::onStartSoloPlayerGame() if (!m_pMap->load(m_map)) return false; + m_pMap->removeObject(&m_thisClient); + m_pMap->addObject(&m_thisPlayer); m_thisPlayer.setPosition(m_pMap->getRandomEmptySpace(&m_thisPlayer).v1); - m_pAIPlayer.resize(m_AIPlayersCount); - uint8 c = 1; - for (auto& pAIPlayer : m_pAIPlayer) + for (uint32 i = 0; i < g_pGameSettings->aiCount; i++) { - pAIPlayer->initialize(this, c, strFormat("AIPlayer %d", c++).c_str()); - pAIPlayer->setPosition(m_pMap->getRandomEmptySpace(pAIPlayer.get()).v1); + m_pAIPlayer.push_back(std::make_shared()); + m_pAIPlayer.back()->initialize(this, i+1, strFormat("AIPlayer %d", i+1)); + m_pAIPlayer.back()->setPosition(m_pMap->getRandomEmptySpace(m_pAIPlayer[i].get()).v1); } + m_soloGameStarted = true; return true; } diff --git a/src/Client/tankswar.h b/src/Client/tankswar.h index 17133b4..9f8db0e 100644 --- a/src/Client/tankswar.h +++ b/src/Client/tankswar.h @@ -45,12 +45,8 @@ class TanksWar : public Game int32 getExistClients() const { return m_pRemoteClient.size() + 1; } std::string getGameMap() const { return m_map; } void setGameMap(const std::string& gameMap) { debuggerBreak(isOnline(), "Invalid call!/n"); strcpy(m_map, gameMap.c_str()); } - AILevel getAILevel() const { return m_aiLevel; } - void setAILevel(AILevel aiLevel) { m_aiLevel = aiLevel; } bool onStartSoloPlayerGame(); bool isSoloGameStarted() const { return m_soloGameStarted; } - uint32 getAIPlayerCount() const { return m_AIPlayersCount; } - void setAIPlayersCount(uint32 newAIPlayersCount) { m_AIPlayersCount = newAIPlayersCount; } void quitSoloGame(); private: @@ -61,7 +57,6 @@ class TanksWar : public Game void applyClientGameAttribute(); clientNS::ClientStatus m_status; - AILevel m_aiLevel; PlayerID m_id; char m_map[gameNS::MAX_NAME_LEN]; const char* m_pSData, *m_pRData; @@ -82,6 +77,5 @@ class TanksWar : public Game ThisClient m_thisClient; ThisPlayer m_thisPlayer; std::vector> m_pAIPlayer; - uint32 m_AIPlayersCount; bool m_soloGameStarted; }; \ No newline at end of file diff --git a/src/Client/thisplayer.cpp b/src/Client/thisplayer.cpp index 729e368..db9120d 100644 --- a/src/Client/thisplayer.cpp +++ b/src/Client/thisplayer.cpp @@ -61,4 +61,14 @@ void ThisPlayer::executeAnimateRepeat() m_handleInput = true; m_health = 100; Player::executeAnimateRepeat(); -} \ No newline at end of file +} + +void ThisPlayer::reset() +{ + m_rotate = V3(); + m_position = V3(); + m_health = logicNS::HEALTH_TANK; + m_velocity = logicNS::VELOCITY_TANK; + m_inflictedDamage = 0; + m_madeKills = 0; +} diff --git a/src/Client/thisplayer.h b/src/Client/thisplayer.h index 8a69928..2448cd1 100644 --- a/src/Client/thisplayer.h +++ b/src/Client/thisplayer.h @@ -17,6 +17,7 @@ class ThisPlayer : public Player virtual void update(); virtual void executeDie(); virtual void executeAnimateRepeat(); + virtual void reset(); protected: diff --git a/src/Server/Server.vcxproj b/src/Server/Server.vcxproj index 0074558..f06f989 100644 --- a/src/Server/Server.vcxproj +++ b/src/Server/Server.vcxproj @@ -34,8 +34,10 @@ + + @@ -67,8 +69,10 @@ + + diff --git a/src/Server/Server.vcxproj.filters b/src/Server/Server.vcxproj.filters index 8d33edd..d063a21 100644 --- a/src/Server/Server.vcxproj.filters +++ b/src/Server/Server.vcxproj.filters @@ -111,6 +111,12 @@ Common\Headers + + Common\Headers + + + Common\Headers + @@ -209,6 +215,12 @@ Common\Sources + + Common\Sources + + + Common\Sources + diff --git a/src/Server/tankswarServer.cpp b/src/Server/tankswarServer.cpp index 91b8cac..fc297f8 100644 --- a/src/Server/tankswarServer.cpp +++ b/src/Server/tankswarServer.cpp @@ -325,7 +325,7 @@ void TanksWarServer::send(Client* pClient, int32 size, bool sbClear) void TanksWarServer::resetClientGameStatus(Client* pClient) { - Space space = m_pMap->getRandomEmptySpace(); + Space space = m_pMap->getRandomEmptySpace(pClient); V3 position = V3(space.v1.x, space.v1.y, 0); pClient->setPosition(position); pClient->setRotate(V3(0, 0, 0)); diff --git a/src/common/aiplayer.cpp b/src/common/aiplayer.cpp index 0ce1273..86d9511 100644 --- a/src/common/aiplayer.cpp +++ b/src/common/aiplayer.cpp @@ -7,8 +7,11 @@ #include "gamemath.h" #include "object.h" #include "texturemanger.h" +#include "timer.h" -AIPlayer::AIPlayer() : m_pTargetObject(nullptr) +using namespace logicNS; + +AIPlayer::AIPlayer() : m_pTargetObject(nullptr), m_onAttack(false), m_onMoving(false) { } @@ -16,7 +19,7 @@ AIPlayer::~AIPlayer() { } -void AIPlayer::initialize(Game * pGame, PlayerID id, const char * name) +void AIPlayer::initialize(Game * pGame, PlayerID id, const std::string& name) { Player::initialize(id, name, PLAYER_ENEMY, pGame); } @@ -27,6 +30,13 @@ void AIPlayer::update() if (m_health <= 0) return; + static std::map enemySearchDelayAI = + { + { AI_LEVEL_EASY, AI_SEARCH_EASY }, + { AI_LEVEL_MEDUIM, AI_SEARCH_MEDUIM }, + { AI_LEVEL_HARD, AI_SEARCH_HARD } + }; + if (m_pMap->isValidObject(m_pTargetObject)) { moveTowardsObject(m_pTargetObject); @@ -35,7 +45,12 @@ void AIPlayer::update() } else { - lookForEnemy(); + int64 timeUntilLastSeacrch = m_pTimer->getCurrentTime() - m_lastSeachEnemyTime; + if (timeUntilLastSeacrch >= enemySearchDelayAI[(AILevel)g_pGameSettings->aiLevel]) + { + lookForEnemy(); + m_lastSeachEnemyTime = m_pTimer->getCurrentTime(); + } } if (GetAsyncKeyState(VK_F12)) @@ -109,6 +124,7 @@ void AIPlayer::attackOjbect(Object * pObject) { auto bulletWidth = m_pTextureManger->getTexture("bullet")->getWidth(); Vector3D toTargetVector = Vector3D(getSpace().getCenter(), m_pTargetObject->getSpace().getCenter(), bulletWidth); + if (!m_pMap->isVectorUnderFreespace(toTargetVector, { this, m_pTargetObject })) { m_onMoving = false, m_onAttack = false; diff --git a/src/common/aiplayer.h b/src/common/aiplayer.h index 1150cc2..6da7e3f 100644 --- a/src/common/aiplayer.h +++ b/src/common/aiplayer.h @@ -15,11 +15,11 @@ class AIPlayer : public Player AIPlayer(); ~AIPlayer(); - virtual void initialize(Game* pGame, PlayerID id, const char* name); + virtual void initialize(Game* pGame, PlayerID id, const std::string& name); virtual void update(); std::vector getPath() const { return m_path; } virtual void executeAnimateRepeat(); - + private: void lookForEnemy(); @@ -31,4 +31,5 @@ class AIPlayer : public Player Object* m_pTargetObject; std::vector m_path; bool m_onMoving, m_onAttack; + int64 m_lastSeachEnemyTime, m_lastShotTime; }; \ No newline at end of file diff --git a/src/common/collisionshader.h b/src/common/collisionshader.h index 8dd855e..b74a4f2 100644 --- a/src/common/collisionshader.h +++ b/src/common/collisionshader.h @@ -955,10 +955,10 @@ ret const BYTE g_pCollisionShader[] = { - 68, 88, 66, 67, 14, 131, - 218, 41, 10, 112, 114, 54, - 91, 206, 171, 4, 104, 245, - 169, 171, 1, 0, 0, 0, + 68, 88, 66, 67, 229, 224, + 155, 28, 34, 110, 180, 197, + 44, 89, 100, 36, 140, 180, + 214, 254, 1, 0, 0, 0, 44, 27, 1, 0, 6, 0, 0, 0, 56, 0, 0, 0, 112, 3, 0, 0, 128, 3, @@ -3992,11 +3992,11 @@ const BYTE g_pCollisionShader[] = 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 148, 46, - 49, 1, 26, 105, 65, 101, - 1, 0, 0, 0, 54, 0, - 167, 243, 148, 4, 188, 70, - 175, 16, 130, 155, 145, 87, - 91, 41, 0, 0, 0, 0, + 49, 1, 67, 2, 67, 101, + 1, 0, 0, 0, 42, 252, + 144, 155, 136, 203, 187, 72, + 143, 205, 41, 67, 8, 93, + 13, 149, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, @@ -4166,7 +4166,7 @@ const BYTE g_pCollisionShader[] = 25, 96, 3, 0, 80, 133, 1, 0, 187, 122, 1, 0, 13, 245, 0, 0, 14, 98, - 1, 0, 233, 249, 0, 0, + 1, 0, 226, 245, 0, 0, 35, 50, 0, 0, 146, 230, 3, 0, 250, 112, 1, 0, 193, 96, 0, 0, 168, 190, @@ -4180,7 +4180,7 @@ const BYTE g_pCollisionShader[] = 15, 122, 1, 0, 118, 19, 1, 0, 199, 197, 0, 0, 195, 33, 2, 0, 53, 40, - 2, 0, 15, 227, 0, 0, + 2, 0, 202, 221, 0, 0, 237, 206, 3, 0, 255, 226, 0, 0, 40, 178, 2, 0, 229, 4, 2, 0, 55, 93, @@ -5102,8 +5102,8 @@ const BYTE g_pCollisionShader[] = 65, 76, 95, 67, 79, 76, 76, 73, 68, 69, 68, 32, 27, 226, 48, 1, 128, 0, - 0, 0, 208, 252, 130, 49, - 60, 12, 218, 1, 1, 0, + 0, 0, 176, 233, 43, 18, + 48, 13, 218, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, @@ -11216,7 +11216,7 @@ const BYTE g_pCollisionShader[] = 0, 0, 0, 0, 12, 0, 86, 51, 0, 243, 242, 241, 14, 0, 23, 21, 26, 16, - 0, 0, 0, 2, 144, 0, + 0, 0, 0, 2, 176, 0, 16, 0, 242, 241, 10, 0, 1, 18, 1, 0, 0, 0, 27, 16, 0, 0, 26, 0, @@ -11362,7 +11362,7 @@ const BYTE g_pCollisionShader[] = 12, 0, 86, 51, 96, 80, 65, 67, 75, 69, 68, 0, 14, 0, 23, 21, 5, 16, - 0, 0, 0, 2, 144, 0, + 0, 0, 0, 2, 176, 0, 16, 0, 242, 241, 10, 0, 1, 18, 1, 0, 0, 0, 6, 16, 0, 0, 10, 0, @@ -12630,11 +12630,11 @@ const BYTE g_pCollisionShader[] = 224, 79, 0, 0, 0, 0, 0, 0, 84, 58, 0, 0, 1, 0, 0, 0, 232, 166, - 11, 0, 0, 0, 0, 0, + 179, 0, 0, 0, 0, 0, 0, 0, 0, 0, 109, 97, 105, 110, 0, 110, 111, 110, 101, 0, 0, 0, 45, 186, - 46, 241, 1, 0, 97, 0, + 46, 241, 1, 0, 82, 0, 0, 0, 0, 0, 240, 56, 0, 0, 32, 0, 0, 96, 0, 0, 66, 0, 0, 0, @@ -12696,11 +12696,11 @@ const BYTE g_pCollisionShader[] = 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 148, 46, - 49, 1, 26, 105, 65, 101, - 1, 0, 0, 0, 54, 0, - 167, 243, 148, 4, 188, 70, - 175, 16, 130, 155, 145, 87, - 91, 41, 134, 0, 0, 0, + 49, 1, 67, 2, 67, 101, + 1, 0, 0, 0, 42, 252, + 144, 155, 136, 203, 187, 72, + 143, 205, 41, 67, 8, 93, + 13, 149, 134, 0, 0, 0, 47, 76, 105, 110, 107, 73, 110, 102, 111, 0, 47, 110, 97, 109, 101, 115, 0, 47, diff --git a/src/common/data.h b/src/common/data.h index b2fdc3c..2897acc 100644 --- a/src/common/data.h +++ b/src/common/data.h @@ -94,6 +94,7 @@ namespace gameNS constexpr auto UPDATE_DELAY_FPS = 800; constexpr auto AUDIO_DEFAULT = true; constexpr auto COMPUTESHADER_DEFAULT = false; + constexpr auto AILEVEL_DEFAULT = 1; constexpr auto DEBUGMODE_DEFAULT = false; constexpr auto LOGO_SHOW_TIME = 800; #ifdef _SRVER_BUILD @@ -132,6 +133,20 @@ namespace logicNS constexpr auto VELOCITY_TANK = 3.0f; constexpr auto DEFAULT_BITMAP_DAMAGEFACTOR = 1.0f; constexpr auto DEFAULT_BITMAP_VELOCITYFACTOR = 1.0f; + + enum AIEnemySearchDelay : uint32 + { + AI_SEARCH_EASY = 1000, + AI_SEARCH_MEDUIM = 400, + AI_SEARCH_HARD = 0 + }; + + enum AIShotDelay : uint32 + { + AI_SHOT_EASY = 300, + AI_SHOT_MEDUIM = 80, + AI_SHOT_HARD = 0 + }; } namespace networkNS @@ -278,7 +293,7 @@ enum MatrixType MATRIX_TYPE_ROTATE, }; -enum PacketType_ +enum PacketType : char { PACKET_START_SEASSON = 100, PACKET_DISCONNECT, @@ -294,9 +309,7 @@ enum PacketType_ PACKET_CLIENT_GAME_ATTRIBUTE }; -typedef char PacketType; - -enum AILevel : uint8 +enum AILevel : uint32 { AI_LEVEL_EASY, AI_LEVEL_MEDUIM, diff --git a/src/common/dx11wrapper.cpp b/src/common/dx11wrapper.cpp index 8bb42d4..6deade7 100644 --- a/src/common/dx11wrapper.cpp +++ b/src/common/dx11wrapper.cpp @@ -129,7 +129,7 @@ void Dx11Wrapper::psSetSRV(ID3D11ShaderResourceView ** ppSRV, uint32 numViews, u m_pDeviceContext->PSSetShaderResources(startSlot, numViews, ppSRV); } -bool Dx11Wrapper::createSRVFromFile(const std::string & file, ID3D11ShaderResourceView ** ppSRV, int32& width, int32& height) +bool Dx11Wrapper::createSRVFromFile(const std::string & file, ID3D11ShaderResourceView ** ppSRV, uint32& width, uint32& height) { D3DX11_IMAGE_INFO info; if (FAILED(D3DX11GetImageInfoFromFileA(file.c_str(), 0, &info, 0))) diff --git a/src/common/dx11wrapper.h b/src/common/dx11wrapper.h index 7f953ef..cc3a289 100644 --- a/src/common/dx11wrapper.h +++ b/src/common/dx11wrapper.h @@ -22,7 +22,7 @@ class Dx11Wrapper void d3dDraw(uint32 vertexCount, uint32 startVertex); void d3dDrawIndexed(uint32 indexCount, uint32 startIndex, uint32 baseVertex); void psSetSRV(ID3D11ShaderResourceView** ppSRV, uint32 numViews = 1, uint32 startSlot = 0); - bool createSRVFromFile(const std::string& file, ID3D11ShaderResourceView ** ppSRV, int32& width, int32& height); + bool createSRVFromFile(const std::string& file, ID3D11ShaderResourceView ** ppSRV, uint32& width, uint32& height); Microsoft::WRL::ComPtr createBuffer(D3D11_USAGE usage, D3D11_BIND_FLAG bindFlag, uint32 cpuAccess, uint32 byteWidth, uint32 stride = 0, void* initialData = 0, uint32 miscFlag = 0) const; Microsoft::WRL::ComPtr createVertexBuffer(uint32 vertices, uint32 cpuAccess, Vertex* data = 0); diff --git a/src/common/fileio.cpp b/src/common/fileio.cpp index 7b51dcd..895edea 100644 --- a/src/common/fileio.cpp +++ b/src/common/fileio.cpp @@ -80,7 +80,8 @@ GameSettings FileIO::readGameSettings() createGameSettings(); std::string line; - readValues(file, { &gameSettings.width, &gameSettings.height }); + readValues(file, { &gameSettings.width, &gameSettings.height, + &gameSettings.aiLevel, &gameSettings.aiCount }); readValues(file, { &gameSettings.windowed, &gameSettings.vsync , @@ -177,7 +178,8 @@ ServerInfo FileIO::readServerInfo() void FileIO::createGameSettings(const GameSettings* info) { - int16 width, height; + uint32 width, height, + aiLevel, aiCount; bool windowed, vsync, audio, computeShader, debugMode; @@ -189,7 +191,9 @@ void FileIO::createGameSettings(const GameSettings* info) vsync = info->vsync; audio = info->audio; computeShader = info->computeShader; + aiLevel = info->aiLevel; debugMode = info->debugMode; + aiCount = info->aiCount; } else { @@ -200,16 +204,20 @@ void FileIO::createGameSettings(const GameSettings* info) audio = gameNS::AUDIO_DEFAULT; computeShader = gameNS::COMPUTESHADER_DEFAULT; debugMode = gameNS::COMPUTESHADER_DEFAULT; + aiLevel = gameNS::AILEVEL_DEFAULT; + aiCount = 0; } std::ofstream file(fileNS::GAME_INFO_PATH); file << "Width=" << std::to_string(width) << '\n' << "Height=" << std::to_string(height) << '\n' + << "AI Level=" << std::to_string(aiLevel) << '\n' + << "AI Count=" << std::to_string(aiCount) << '\n' << "Windowed=" << std::to_string(windowed) << '\n' << "VSync=" << std::to_string(vsync) << '\n' << "Audio=" << std::to_string(audio) << '\n' << "Compute Shader=" << std::to_string(computeShader) << '\n' - << "Compute Shader=" << std::to_string(debugMode) << std::endl; + << "Debug Mode=" << std::to_string(debugMode) << std::endl; } inline std::string getTargetEqualStringValue(std::string str) diff --git a/src/common/graphics.cpp b/src/common/graphics.cpp index b689478..9db8cd5 100644 --- a/src/common/graphics.cpp +++ b/src/common/graphics.cpp @@ -106,7 +106,7 @@ void Graphics::setDrawProperties(V3 position, V3 scall, V3 rotate, V3 rotateCent setObjectConstBuffer(v); } -bool Graphics::loadTexture(const std::string& file, int32& width, int32& height, LPTextureD3D& texture) +bool Graphics::loadTexture(const std::string& file, uint32& width, uint32& height, LPTextureD3D& texture) { return m_pDx11Wrapper->createSRVFromFile(file, &texture, width, height); } diff --git a/src/common/graphics.h b/src/common/graphics.h index 2b1c96c..1559312 100644 --- a/src/common/graphics.h +++ b/src/common/graphics.h @@ -25,12 +25,12 @@ class Graphics { public: - friend class Camera; + friend Camera; Graphics(); ~Graphics(); bool initialize(const Game* pGame); - bool loadTexture(const std::string& file, int32& width, int32& height, LPTextureD3D& texture); + bool loadTexture(const std::string& file, uint32& width, uint32& height, LPTextureD3D& texture); void beginRender(); void drawImage(const Image* image); void drawLine(const Vector3D& line); diff --git a/src/common/image.h b/src/common/image.h index 07c7e91..c7bb3a9 100644 --- a/src/common/image.h +++ b/src/common/image.h @@ -63,8 +63,8 @@ class Image int64 m_timeUntilLastUpdate; Microsoft::WRL::ComPtr m_pVertexBuffer, m_pStagingBuffer; V3 m_position, m_scalling, m_rotate; - int16 m_width, m_height; - int8_t m_columns, m_rows, m_column, m_row; + uint32 m_width, m_height; + uint32 m_columns, m_rows, m_column, m_row; bool m_initialized; private: diff --git a/src/common/interface.cpp b/src/common/interface.cpp index 65c4bc0..9ece87b 100644 --- a/src/common/interface.cpp +++ b/src/common/interface.cpp @@ -74,8 +74,13 @@ void Interface::executeMainActivity() Vec2 butSize = Vec2(g_pGameSettings->width / 2, g_pGameSettings->height / 5), butPos = Vec2((g_pGameSettings->width / 2) - butSize.x / 2, g_pGameSettings->height / 10); SetCursorPos(butPos); +#ifdef _CLIENT_BUILD if (button("Play", butSize)) setActivity(PLAYMODE_ACTIVITY); +#else + if (button("Multiplayer", butSize)) + setActivity(MULTIPLAYER_ACTIVITY); +#endif butPos.y += butSize.y + butSize.y * MAINACTIVITY_BUTTON_PADDING_Y; SetCursorPos(butPos); @@ -205,6 +210,7 @@ void Interface::executeAboutActivity() endActivity(true); } +#ifdef _CLIENT_BUILD void Interface::executePlayModeActivity() { beginActivity(true, FONTSIZE_LARGE2); @@ -234,20 +240,22 @@ void Interface::executeSoloPlayActivity() separatorText("Game Config", FONTSIZE_LARGE, RED); bool input = false; - int32 aiCount = (int32)m_pTW->getAIPlayerCount(); + int32 aiCount = (int32)g_pGameSettings->aiCount; input = inputInt("AI Count", &aiCount, 0); if (aiCount < 0) aiCount = 0; + if (input) + { + g_pGameSettings->aiCount = aiCount; + m_pTW->updateGameSettings(); + m_pTW->quitSoloGame(); + } Text("AI Level"); SameLine(); static const char* const aiLevels[] = { "Easy", "Meduim", "Hard" }; - int currLevel = m_pTW->getAILevel(); - if (input) - m_pTW->setAIPlayersCount(aiCount); - - input = ListBox("##ailevel", &currLevel, aiLevels, AI_LEVELS); + input = ListBox("##ailevel", (int*)&g_pGameSettings->aiLevel, aiLevels, AI_LEVELS); if (input) - m_pTW->setAILevel((AILevel)currLevel); + m_pTW->updateGameSettings(); static auto map = FileIO::getDirFileList(fileNS::MAP_DIR, 0, ".map", false); int32 iCurrMap = std::find(map.begin(), map.end(), m_pTW->getGameMap()) - map.begin(); @@ -281,6 +289,7 @@ void Interface::executeSoloPlayActivity() PopStyleColor(); endActivity(true, PLAYMODE_ACTIVITY); } +#endif void Interface::render() { @@ -289,15 +298,17 @@ void Interface::render() case MAIN_ACTIVITY: executeMainActivity(); break; +#ifdef _CLINET_BUILD case PLAYMODE_ACTIVITY: executePlayModeActivity(); break; - case SETTINGS_ACTIVITY: - executeSettingsActivity(); - break; case SOLO_PLAY_ACTIVITY: executeSoloPlayActivity(); break; +#endif + case SETTINGS_ACTIVITY: + executeSettingsActivity(); + break; case MULTIPLAYER_ACTIVITY: executeMultiplayerActivity(); break; @@ -437,11 +448,11 @@ void Interface::executeMultiplayerActivity() m_pTWServer->setPort(port); static auto map = FileIO::getDirFileList(fileNS::MAP_DIR, 0, ".map", false); - int32 iCurrMap = std::find(map.begin(), map.end(), m_pTWServer->getMap()) - map.begin(); + int32 iCurrMap = std::find(map.begin(), map.end(), m_pTWServer->getGameMap()) - map.begin(); input = ListBox("##map", &iCurrMap, vectorOfStringGetter, &map, map.size()); if (input && !srvActive) m_pTWServer->setMap(map[iCurrMap]); - + PopStyleColor(); Text("status"); SameLine(); diff --git a/src/common/interface.h b/src/common/interface.h index 4d87ea0..5d971a1 100644 --- a/src/common/interface.h +++ b/src/common/interface.h @@ -36,8 +36,6 @@ class Interface void executeSettingsActivity(); void executePlayingActivity(); void executeAboutActivity(); - void executePlayModeActivity(); - void executeSoloPlayActivity(); void render(); void beginActivity(bool blankActivity, interfaceNS::FontSize fontSize = interfaceNS::FONTSIZE_MED); void endActivity(bool backButton = false, interfaceNS::Activity backActivity = interfaceNS::NO_ACITVITY); @@ -52,6 +50,9 @@ class Interface void separatorText(std::string text, interfaceNS::FontSize fontSize = interfaceNS::FONTSIZE_MED, Vec4 color = Vec4(1.0f, 1.0f, 1.0f, 1.0f)); void text(std::string text, Vec4 color = Vec4(0, 0, 0, 0), interfaceNS::FontSize fontSize = 0); #ifdef _CLIENT_BUILD + void executePlayModeActivity(); + void executeSoloPlayActivity(); + TanksWar* m_pTW; ThisClient* m_pThisClient; #else diff --git a/src/common/line.cpp b/src/common/line.cpp index b795d08..6e8fe32 100644 --- a/src/common/line.cpp +++ b/src/common/line.cpp @@ -30,8 +30,8 @@ void Line::draw(const Vector3D& vector) { setPosition(vector.begin); m_rotate.z = -1 * (gameMathNS::getAngle(vector) + PI); - m_width = vector.size; - m_height = vector.getMagnitude(); + m_width = static_cast(vector.size); + m_height = static_cast(vector.getMagnitude()); updateLocalCoordinate(); Image::draw(); } diff --git a/src/common/map.cpp b/src/common/map.cpp index d942e8a..c4c7b38 100644 --- a/src/common/map.cpp +++ b/src/common/map.cpp @@ -17,6 +17,8 @@ #pragma warning(disable : 4267) // conversion from size_t to uint32 +using namespace mapNS; + Map::Map() : m_pVertexBuf(0), m_pNoSpaceBuf(0), m_pNoSpaceSRV(0), m_pNoSpaceCountBuf(0), m_pNoSpaceCountSRV(0), m_pCollisionCS(0), m_pSpaceBuf(0), m_pSpaceSRV(0), m_pResultBuf(0), m_pResultUAV(0), m_pResultStagingBuf(0), m_threadGroups(1) @@ -303,7 +305,8 @@ Space Map::getCollidedSpace(const Space & targetSpace, const std::vectorcopyResourceToResource(m_pResultStagingBuf.Get(), m_pResultBuf.Get()); m_pDx11Wrapper->copyResource(&collidedSpace, m_pResultStagingBuf.Get(), 4); - return collidedSpace; + if (collidedSpace.isValid()) + return collidedSpace; } else { @@ -314,7 +317,9 @@ Space Map::getCollidedSpace(const Space & targetSpace, const std::vector exceptObject) con std::vector Map::pathfind(const V3 & start, const V3 & end) { + debuggerBreak(isOutOfRange(start) || isOutOfRange(end), "Invalid start / end location!"); CustomSet openList; CustomSet> pClosedList; Space startSpace = findSpaceByVertex(start); @@ -613,7 +629,7 @@ Space Map::getRightFreeSpace(const Space & space) const { Space rSpace(space); rSpace.addX(m_tiledSize.x); - if (isCollided(rSpace, { nullptr })) + if (isCollided(rSpace, EXCEPT_ALL_OBJECTS)) rSpace.v1.x = mapNS::UNDEFINED_POSITION; return rSpace; @@ -622,7 +638,7 @@ Space Map::getRightFreeSpace(const Space & space) const Space Map::getLeftFreeSpace(const Space & space) const { Space lSpace(getLeftSpace(space)); - if (isCollided(lSpace, { nullptr })) + if (isCollided(lSpace, EXCEPT_ALL_OBJECTS)) lSpace.v1.x = mapNS::UNDEFINED_POSITION; return lSpace; @@ -631,7 +647,7 @@ Space Map::getLeftFreeSpace(const Space & space) const Space Map::getTopFreeSpace(const Space & space) const { Space tSpace(getTopSpace(space)); - if (isCollided(tSpace, { nullptr })) + if (isCollided(tSpace, EXCEPT_ALL_OBJECTS)) tSpace.v1.x = mapNS::UNDEFINED_POSITION; return tSpace; @@ -640,7 +656,7 @@ Space Map::getTopFreeSpace(const Space & space) const Space Map::getDownFreeSpace(const Space & space) const { Space dSpace(getDownSpace(space)); - if (isCollided(dSpace, { nullptr })) + if (isCollided(dSpace, EXCEPT_ALL_OBJECTS)) dSpace.v1.x = mapNS::UNDEFINED_POSITION; return dSpace; @@ -700,7 +716,8 @@ V3 Map::getCollidedV3(const Object * pObject) const void Map::unload() { - m_width = m_height = m_usedBitmaps = m_maxDistance = 0; + m_width = m_height = m_usedBitmaps = 0; + m_maxDistance = 0; m_map.clear(); m_noSpaceBitmap.clear(); m_freeSpace.clear(); diff --git a/src/common/map.h b/src/common/map.h index b4a94f0..5a72852 100644 --- a/src/common/map.h +++ b/src/common/map.h @@ -18,6 +18,8 @@ class Image; class Texture; class Dx11Wrapper; +const std::vector EXCEPT_ALL_OBJECTS = { nullptr }; + class Map { template @@ -49,6 +51,7 @@ class Map bool isCollided(const Space& space, const std::vector& pObject = {}) const; Space getCollidedSpace(const Space& targetSpace, const std::vector& pExceptObject = {}) const; bool isOutOfRange(const Space& space) const; + bool isOutOfRange(const V3& v) const; Object* getObject(const Space& space) const; bool isMapExist(const std::string name, Crc32 crc32) const { return true; } Crc32 getCrc32() const; diff --git a/src/common/object.cpp b/src/common/object.cpp index 6257cb9..269e112 100644 --- a/src/common/object.cpp +++ b/src/common/object.cpp @@ -21,7 +21,6 @@ void Object::initialize(std::string texture, const Game * pGame) m_pGame = pGame; m_pAudio = pGame->getAudio(); m_pMap = pGame->getMap(); - m_pMap->addObject(this); Image::initialize(texture, pGame); } diff --git a/src/common/pixelshader.h b/src/common/pixelshader.h index 8fef52a..f348a39 100644 --- a/src/common/pixelshader.h +++ b/src/common/pixelshader.h @@ -16,8 +16,8 @@ // // Name Index Mask Register SysValue Format Used // -------------------- ----- ------ -------- -------- ------- ------ -// SV_POSITION 0 xyzw 0 POS float -// TEXCOORD 0 xy 1 NONE float xy +// SV_POSITION 0 xyzw 0 POS float +// TEXCOORD 0 xy 1 NONE float xy // // // Output signature: @@ -29,3123 +29,3123 @@ ps_5_0 dcl_globalFlags refactoringAllowed | skipOptimization dcl_sampler s0, mode_default -dcl_resource_texture2d(float, float, float, float) t0 +dcl_resource_texture2d (float,float,float,float) t0 dcl_input_ps linear v1.xy dcl_output o0.xyzw // // Initial variable locations: -// v0.x <- input.position.x; v0.y <- input.position.y; v0.z <- input.position.z; v0.w <- input.position.w; -// v1.x <- input.uv.x; v1.y <- input.uv.y; +// v0.x <- input.position.x; v0.y <- input.position.y; v0.z <- input.position.z; v0.w <- input.position.w; +// v1.x <- input.uv.x; v1.y <- input.uv.y; // o0.x <-
.x; o0.y <-
.y; o0.z <-
.z; o0.w <-
.w // #line 8 "C:\Users\BAREQ\Documents\Visual Studio 2015\Projects\Tanks-War\src\common\pixel.hlsl" -sample_indexable(texture2d)(float, float, float, float) o0.xyzw, v1.xyxx, t0.xyzw, s0 -ret +sample_indexable(texture2d)(float,float,float,float) o0.xyzw, v1.xyxx, t0.xyzw, s0 +ret // Approximately 2 instruction slots used #endif const BYTE g_pPixelShader[] = { - 68, 88, 66, 67, 143, 63, - 166, 162, 85, 90, 242, 91, - 192, 210, 65, 26, 246, 236, - 127, 115, 1, 0, 0, 0, - 176, 72, 0, 0, 6, 0, - 0, 0, 56, 0, 0, 0, - 8, 1, 0, 0, 96, 1, - 0, 0, 148, 1, 0, 0, - 12, 2, 0, 0, 168, 2, - 0, 0, 82, 68, 69, 70, - 200, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 2, 0, 0, 0, 60, 0, - 0, 0, 0, 5, 255, 255, - 5, 1, 0, 0, 147, 0, - 0, 0, 82, 68, 49, 49, - 60, 0, 0, 0, 24, 0, - 0, 0, 32, 0, 0, 0, - 40, 0, 0, 0, 36, 0, - 0, 0, 12, 0, 0, 0, - 0, 0, 0, 0, 124, 0, - 0, 0, 3, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 1, 0, - 0, 0, 0, 0, 0, 0, - 138, 0, 0, 0, 2, 0, - 0, 0, 5, 0, 0, 0, - 4, 0, 0, 0, 255, 255, - 255, 255, 0, 0, 0, 0, - 1, 0, 0, 0, 12, 0, - 0, 0, 103, 83, 97, 109, - 112, 108, 101, 114, 83, 116, - 97, 116, 101, 0, 103, 84, - 101, 120, 116, 117, 114, 101, - 0, 77, 105, 99, 114, 111, - 115, 111, 102, 116, 32, 40, - 82, 41, 32, 72, 76, 83, - 76, 32, 83, 104, 97, 100, - 101, 114, 32, 67, 111, 109, - 112, 105, 108, 101, 114, 32, - 54, 46, 51, 46, 57, 54, - 48, 48, 46, 49, 56, 54, - 49, 49, 0, 171, 171, 171, - 73, 83, 71, 78, 80, 0, - 0, 0, 2, 0, 0, 0, - 8, 0, 0, 0, 56, 0, - 0, 0, 0, 0, 0, 0, - 1, 0, 0, 0, 3, 0, - 0, 0, 0, 0, 0, 0, - 15, 0, 0, 0, 68, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 3, 0, - 0, 0, 1, 0, 0, 0, - 3, 3, 0, 0, 83, 86, - 95, 80, 79, 83, 73, 84, - 73, 79, 78, 0, 84, 69, - 88, 67, 79, 79, 82, 68, - 0, 171, 171, 171, 79, 83, - 71, 78, 44, 0, 0, 0, - 1, 0, 0, 0, 8, 0, - 0, 0, 32, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 3, 0, 0, 0, - 0, 0, 0, 0, 15, 0, - 0, 0, 83, 86, 95, 84, - 65, 82, 71, 69, 84, 0, - 171, 171, 83, 72, 69, 88, - 112, 0, 0, 0, 80, 0, - 0, 0, 28, 0, 0, 0, - 106, 136, 0, 1, 90, 0, - 0, 3, 0, 96, 16, 0, - 0, 0, 0, 0, 88, 24, - 0, 4, 0, 112, 16, 0, - 0, 0, 0, 0, 85, 85, - 0, 0, 98, 16, 0, 3, - 50, 16, 16, 0, 1, 0, - 0, 0, 101, 0, 0, 3, - 242, 32, 16, 0, 0, 0, - 0, 0, 69, 0, 0, 139, - 194, 0, 0, 128, 67, 85, - 21, 0, 242, 32, 16, 0, - 0, 0, 0, 0, 70, 16, - 16, 0, 1, 0, 0, 0, - 70, 126, 16, 0, 0, 0, - 0, 0, 0, 96, 16, 0, - 0, 0, 0, 0, 62, 0, - 0, 1, 83, 84, 65, 84, - 148, 0, 0, 0, 2, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 2, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 1, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 1, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 83, 80, 68, 66, - 0, 70, 0, 0, 77, 105, - 99, 114, 111, 115, 111, 102, - 116, 32, 67, 47, 67, 43, - 43, 32, 77, 83, 70, 32, - 55, 46, 48, 48, 13, 10, - 26, 68, 83, 0, 0, 0, - 0, 2, 0, 0, 2, 0, - 0, 0, 35, 0, 0, 0, - 176, 0, 0, 0, 0, 0, - 0, 0, 32, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 192, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 56, 0, 0, 0, - 254, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 5, 0, - 0, 0, 32, 0, 0, 0, - 60, 0, 0, 0, 0, 0, - 0, 0, 255, 255, 255, 255, - 0, 0, 0, 0, 6, 0, - 0, 0, 5, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 3, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 148, 46, 49, 1, - 146, 234, 60, 101, 1, 0, - 0, 0, 169, 43, 44, 33, - 53, 251, 82, 71, 180, 229, - 178, 33, 41, 225, 55, 97, - 0, 0, 0, 0, 0, 0, - 0, 0, 1, 0, 0, 0, - 1, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 65, 145, - 50, 1, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 97, 116, - 101, 44, 32, 105, 110, 112, - 117, 116, 46, 117, 118, 41, - 59, 13, 10, 125, 0, 47, - 47, 32, 118, 101, 114, 116, - 101, 120, 46, 104, 108, 115, - 108, 13, 10, 47, 47, 32, - 65, 117, 116, 104, 111, 114, - 58, 32, 97, 98, 114, 97, - 109, 97, 110, 110, 13, 10, - 13, 10, 115, 116, 114, 117, - 99, 116, 32, 86, 83, 95, - 73, 110, 112, 117, 116, 13, - 10, 123, 13, 10, 9, 102, - 108, 111, 97, 116, 52, 32, - 112, 111, 115, 105, 116, 105, - 111, 110, 32, 58, 32, 80, - 79, 83, 73, 84, 73, 79, - 78, 59, 13, 10, 9, 102, - 108, 111, 97, 116, 50, 32, - 117, 118, 32, 58, 32, 84, - 69, 88, 67, 79, 79, 82, - 68, 59, 13, 10, 125, 59, - 13, 10, 13, 10, 115, 116, - 114, 117, 99, 116, 32, 80, - 83, 95, 73, 110, 112, 117, - 116, 13, 10, 123, 13, 10, - 9, 102, 108, 111, 97, 116, - 52, 32, 112, 111, 115, 105, - 116, 105, 111, 110, 32, 58, - 32, 83, 86, 95, 80, 79, - 83, 73, 84, 73, 79, 78, - 59, 13, 10, 9, 102, 108, - 111, 97, 116, 50, 32, 117, - 118, 32, 58, 32, 84, 69, - 88, 67, 79, 79, 82, 68, - 59, 13, 10, 125, 59, 13, - 10, 13, 10, 102, 108, 111, - 97, 116, 52, 120, 52, 32, - 116, 114, 97, 110, 115, 108, - 97, 116, 101, 77, 97, 116, - 114, 105, 120, 40, 102, 108, - 111, 97, 116, 51, 32, 116, - 114, 97, 110, 115, 108, 97, - 116, 105, 111, 110, 41, 13, - 10, 123, 13, 10, 9, 114, - 101, 116, 117, 114, 110, 32, - 102, 108, 111, 97, 116, 52, - 120, 52, 40, 13, 10, 9, - 9, 102, 108, 111, 97, 116, - 52, 40, 49, 46, 48, 102, - 44, 32, 48, 46, 48, 102, - 44, 32, 48, 46, 48, 102, - 44, 32, 48, 46, 48, 102, - 41, 44, 13, 10, 9, 9, - 102, 108, 111, 97, 116, 52, - 40, 48, 46, 48, 102, 44, - 32, 49, 46, 48, 102, 44, - 32, 48, 46, 48, 102, 44, - 32, 48, 46, 48, 102, 41, - 44, 13, 10, 9, 9, 102, - 108, 111, 97, 116, 52, 40, - 48, 46, 48, 102, 44, 32, - 48, 46, 48, 102, 44, 32, - 49, 46, 48, 102, 44, 32, - 48, 46, 48, 102, 41, 44, - 13, 10, 9, 9, 102, 108, - 111, 97, 116, 52, 40, 116, - 114, 97, 110, 115, 108, 97, - 116, 105, 111, 110, 46, 120, - 44, 32, 116, 114, 97, 110, - 115, 108, 97, 116, 105, 111, - 110, 46, 121, 44, 32, 116, - 114, 97, 110, 115, 108, 97, - 116, 105, 111, 110, 46, 122, - 44, 32, 49, 46, 48, 102, - 41, 13, 10, 9, 9, 41, - 59, 13, 10, 125, 13, 10, - 13, 10, 102, 108, 111, 97, - 116, 52, 120, 52, 32, 115, - 99, 97, 108, 108, 105, 110, - 103, 77, 97, 116, 114, 105, - 120, 40, 102, 108, 111, 97, - 116, 51, 32, 115, 99, 97, - 108, 108, 105, 110, 103, 41, - 13, 10, 123, 13, 10, 9, - 198, 90, 0, 0, 117, 131, - 1, 0, 125, 191, 1, 0, - 162, 202, 1, 0, 38, 247, - 2, 0, 65, 36, 1, 0, - 39, 82, 3, 0, 235, 138, - 2, 0, 217, 42, 2, 0, - 21, 230, 0, 0, 200, 81, - 2, 0, 73, 20, 1, 0, - 153, 189, 3, 0, 0, 16, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 35, 105, 110, 99, - 108, 117, 100, 101, 32, 34, - 118, 101, 114, 116, 101, 120, - 46, 104, 108, 115, 108, 34, - 13, 10, 13, 10, 84, 101, - 120, 116, 117, 114, 101, 50, - 68, 32, 103, 84, 101, 120, - 116, 117, 114, 101, 59, 13, - 10, 83, 97, 109, 112, 108, - 101, 114, 83, 116, 97, 116, - 101, 32, 103, 83, 97, 109, - 112, 108, 101, 114, 83, 116, - 97, 116, 101, 59, 13, 10, - 13, 10, 102, 108, 111, 97, - 116, 52, 32, 109, 97, 105, - 110, 40, 80, 83, 95, 73, - 110, 112, 117, 116, 32, 105, - 110, 112, 117, 116, 41, 32, - 58, 32, 83, 86, 95, 84, - 65, 82, 71, 69, 84, 13, - 10, 123, 13, 10, 9, 114, - 101, 116, 117, 114, 110, 32, - 103, 84, 101, 120, 116, 117, - 114, 101, 46, 83, 97, 109, - 112, 108, 101, 40, 103, 83, - 97, 109, 112, 108, 101, 114, - 83, 116, 97, 116, 101, 44, - 32, 105, 110, 112, 117, 116, - 46, 117, 118, 41, 59, 13, - 10, 125, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 47, 47, - 32, 118, 101, 114, 116, 101, - 120, 46, 104, 108, 115, 108, - 13, 10, 47, 47, 32, 65, - 117, 116, 104, 111, 114, 58, - 32, 97, 98, 114, 97, 109, - 97, 110, 110, 13, 10, 13, - 10, 115, 116, 114, 117, 99, - 116, 32, 86, 83, 95, 73, - 110, 112, 117, 116, 13, 10, - 123, 13, 10, 9, 102, 108, - 111, 97, 116, 52, 32, 112, - 111, 115, 105, 116, 105, 111, - 110, 32, 58, 32, 80, 79, - 83, 73, 84, 73, 79, 78, - 59, 13, 10, 9, 102, 108, - 111, 97, 116, 50, 32, 117, - 118, 32, 58, 32, 84, 69, - 88, 67, 79, 79, 82, 68, - 59, 13, 10, 125, 59, 13, - 10, 13, 10, 115, 116, 114, - 117, 99, 116, 32, 80, 83, - 95, 73, 110, 112, 117, 116, - 13, 10, 123, 13, 10, 9, - 102, 108, 111, 97, 116, 52, - 32, 112, 111, 115, 105, 116, - 105, 111, 110, 32, 58, 32, - 83, 86, 95, 80, 79, 83, - 73, 84, 73, 79, 78, 59, - 13, 10, 9, 102, 108, 111, - 97, 116, 50, 32, 117, 118, - 32, 58, 32, 84, 69, 88, - 67, 79, 79, 82, 68, 59, - 13, 10, 125, 59, 13, 10, - 13, 10, 102, 108, 111, 97, - 116, 52, 120, 52, 32, 116, - 114, 97, 110, 115, 108, 97, - 116, 101, 77, 97, 116, 114, - 105, 120, 40, 102, 108, 111, - 97, 116, 51, 32, 116, 114, - 97, 110, 115, 108, 97, 116, - 105, 111, 110, 41, 13, 10, - 123, 13, 10, 9, 114, 101, - 116, 117, 114, 110, 32, 102, - 108, 111, 97, 116, 52, 120, - 52, 40, 13, 10, 9, 9, - 102, 108, 111, 97, 116, 52, - 40, 49, 46, 48, 102, 44, - 32, 48, 46, 48, 102, 44, - 32, 48, 46, 48, 102, 44, - 32, 48, 46, 48, 102, 41, - 44, 13, 10, 9, 9, 102, - 108, 111, 97, 116, 52, 40, - 48, 46, 48, 102, 44, 32, - 49, 46, 48, 102, 44, 32, - 48, 46, 48, 102, 44, 32, - 48, 46, 48, 102, 41, 44, - 13, 10, 9, 9, 102, 108, - 111, 97, 116, 52, 40, 48, - 46, 48, 102, 44, 32, 48, - 46, 48, 102, 44, 32, 49, - 46, 48, 102, 44, 32, 48, - 46, 48, 102, 41, 44, 13, - 10, 9, 9, 102, 108, 111, - 97, 116, 52, 40, 116, 114, - 97, 110, 115, 108, 97, 116, - 105, 111, 110, 46, 120, 44, - 32, 116, 114, 97, 110, 115, - 108, 97, 116, 105, 111, 110, - 46, 121, 44, 32, 116, 114, - 97, 110, 115, 108, 97, 116, - 105, 111, 110, 46, 122, 44, - 32, 49, 46, 48, 102, 41, - 13, 10, 9, 9, 41, 59, - 13, 10, 125, 13, 10, 13, - 10, 102, 108, 111, 97, 116, - 52, 120, 52, 32, 115, 99, - 97, 108, 108, 105, 110, 103, - 77, 97, 116, 114, 105, 120, - 40, 102, 108, 111, 97, 116, - 51, 32, 115, 99, 97, 108, - 108, 105, 110, 103, 41, 13, - 10, 123, 13, 10, 9, 114, - 101, 116, 117, 114, 110, 32, - 102, 108, 111, 97, 116, 52, - 120, 52, 40, 13, 10, 9, - 9, 102, 108, 111, 97, 116, - 52, 40, 115, 99, 97, 108, - 108, 105, 110, 103, 91, 48, - 93, 44, 32, 48, 46, 48, - 102, 44, 32, 48, 46, 48, - 102, 44, 32, 48, 46, 48, - 102, 41, 44, 13, 10, 9, - 9, 102, 108, 111, 97, 116, - 52, 40, 48, 46, 48, 102, - 44, 32, 115, 99, 97, 108, - 108, 105, 110, 103, 91, 49, - 93, 44, 32, 48, 46, 48, - 102, 44, 32, 48, 46, 48, - 102, 41, 44, 13, 10, 9, - 9, 102, 108, 111, 97, 116, - 52, 40, 48, 46, 48, 102, - 44, 32, 48, 46, 48, 102, - 44, 32, 115, 99, 97, 108, - 108, 105, 110, 103, 91, 50, - 93, 44, 32, 48, 46, 48, - 102, 41, 44, 13, 10, 9, - 9, 102, 108, 111, 97, 116, - 52, 40, 48, 46, 48, 102, - 44, 32, 48, 46, 48, 102, - 44, 32, 48, 46, 48, 102, - 44, 32, 49, 46, 48, 102, - 41, 13, 10, 9, 9, 41, - 59, 13, 10, 125, 13, 10, - 13, 10, 102, 108, 111, 97, - 116, 52, 120, 52, 32, 105, - 100, 101, 110, 116, 105, 116, - 121, 77, 97, 116, 114, 105, - 120, 52, 120, 52, 40, 41, - 13, 10, 123, 13, 10, 9, - 114, 101, 116, 117, 114, 110, - 32, 102, 108, 111, 97, 116, - 52, 120, 52, 40, 13, 10, - 9, 9, 49, 46, 48, 44, - 32, 48, 46, 48, 44, 32, - 48, 46, 48, 44, 32, 48, - 46, 48, 44, 13, 10, 9, - 9, 48, 46, 48, 44, 32, - 49, 46, 48, 44, 32, 48, - 46, 48, 44, 32, 48, 46, - 48, 44, 13, 10, 9, 9, - 48, 46, 48, 44, 32, 48, - 46, 48, 44, 32, 49, 46, - 48, 44, 32, 48, 46, 48, - 44, 13, 10, 9, 9, 48, - 46, 48, 44, 32, 48, 46, - 48, 44, 32, 48, 46, 48, - 44, 32, 49, 46, 48, 13, - 10, 9, 9, 41, 59, 13, - 10, 125, 13, 10, 13, 10, - 102, 108, 111, 97, 116, 52, - 120, 52, 32, 114, 111, 116, - 97, 116, 101, 88, 77, 97, - 116, 114, 105, 120, 40, 102, - 108, 111, 97, 116, 32, 97, - 110, 103, 108, 101, 41, 32, - 123, 13, 10, 9, 102, 108, - 111, 97, 116, 32, 115, 32, - 61, 32, 115, 105, 110, 40, - 97, 110, 103, 108, 101, 41, - 59, 13, 10, 9, 102, 108, - 111, 97, 116, 32, 99, 32, - 61, 32, 99, 111, 115, 40, - 97, 110, 103, 108, 101, 41, - 59, 13, 10, 9, 114, 101, - 116, 117, 114, 110, 32, 102, - 108, 111, 97, 116, 52, 120, - 52, 40, 13, 10, 9, 9, - 49, 44, 32, 48, 44, 32, - 48, 44, 32, 48, 44, 13, - 10, 9, 9, 48, 44, 32, - 99, 44, 32, 45, 115, 44, - 32, 48, 44, 13, 10, 9, - 9, 48, 44, 32, 115, 44, - 32, 99, 44, 32, 48, 44, - 13, 10, 9, 9, 48, 44, - 32, 48, 44, 32, 48, 44, - 32, 49, 13, 10, 9, 9, - 41, 59, 13, 10, 125, 13, - 10, 13, 10, 102, 108, 111, - 97, 116, 52, 120, 52, 32, - 114, 111, 116, 97, 116, 101, - 89, 77, 97, 116, 114, 105, - 120, 40, 102, 108, 111, 97, - 116, 32, 97, 110, 103, 108, - 101, 41, 13, 10, 123, 13, - 10, 9, 102, 108, 111, 97, - 116, 32, 115, 32, 61, 32, - 115, 105, 110, 40, 97, 110, - 103, 108, 101, 41, 59, 13, - 10, 9, 102, 108, 111, 97, - 116, 32, 99, 32, 61, 32, - 99, 111, 115, 40, 97, 110, - 103, 108, 101, 41, 59, 13, - 10, 9, 114, 101, 116, 117, - 114, 110, 32, 102, 108, 111, - 97, 116, 52, 120, 52, 40, - 13, 10, 9, 9, 99, 44, - 32, 48, 44, 32, 45, 115, - 44, 32, 48, 44, 13, 10, - 9, 9, 48, 44, 32, 49, - 44, 32, 48, 44, 32, 48, - 44, 13, 10, 9, 9, 115, - 44, 32, 48, 44, 32, 99, - 44, 32, 48, 44, 13, 10, - 9, 9, 48, 44, 32, 48, - 44, 32, 48, 44, 32, 49, - 13, 10, 9, 9, 41, 59, - 13, 10, 125, 13, 10, 13, - 10, 102, 108, 111, 97, 116, - 52, 120, 52, 32, 114, 111, - 116, 97, 116, 101, 90, 77, - 97, 116, 114, 105, 120, 40, - 102, 108, 111, 97, 116, 32, - 97, 110, 103, 108, 101, 41, - 13, 10, 123, 13, 10, 9, - 102, 108, 111, 97, 116, 32, - 115, 32, 61, 32, 115, 105, - 110, 40, 97, 110, 103, 108, - 101, 41, 59, 13, 10, 9, - 102, 108, 111, 97, 116, 32, - 99, 32, 61, 32, 99, 111, - 115, 40, 97, 110, 103, 108, - 101, 41, 59, 13, 10, 9, - 114, 101, 116, 117, 114, 110, - 32, 102, 108, 111, 97, 116, - 52, 120, 52, 40, 13, 10, - 9, 9, 99, 44, 32, 115, - 44, 32, 48, 46, 48, 102, - 44, 32, 48, 46, 48, 102, - 44, 13, 10, 9, 9, 45, - 115, 44, 32, 99, 44, 32, - 48, 46, 48, 102, 44, 32, - 48, 46, 48, 102, 44, 13, - 10, 9, 9, 48, 46, 48, - 102, 44, 32, 48, 46, 48, - 102, 44, 32, 49, 46, 48, - 44, 32, 48, 46, 48, 44, - 13, 10, 9, 9, 48, 46, - 48, 102, 44, 32, 48, 46, - 48, 44, 32, 48, 46, 48, - 44, 32, 49, 46, 48, 13, - 10, 9, 9, 41, 59, 13, - 10, 125, 13, 10, 13, 10, - 99, 98, 117, 102, 102, 101, - 114, 32, 99, 98, 80, 101, - 114, 70, 114, 97, 109, 101, - 32, 58, 32, 114, 101, 103, - 105, 115, 116, 101, 114, 40, - 98, 48, 41, 13, 10, 123, - 13, 10, 9, 102, 108, 111, - 97, 116, 52, 120, 52, 32, - 103, 95, 119, 111, 114, 108, - 100, 86, 105, 101, 119, 77, - 97, 116, 114, 105, 120, 59, - 13, 10, 125, 59, 13, 10, - 13, 10, 99, 98, 117, 102, - 102, 101, 114, 32, 99, 98, - 80, 101, 114, 79, 98, 106, - 101, 99, 116, 32, 58, 32, - 114, 101, 103, 105, 115, 116, - 101, 114, 40, 98, 49, 41, - 13, 10, 123, 13, 10, 9, - 102, 108, 111, 97, 116, 51, - 32, 103, 95, 112, 111, 115, - 105, 116, 105, 111, 110, 44, - 32, 103, 95, 115, 99, 97, - 108, 108, 105, 110, 103, 44, - 32, 103, 95, 114, 111, 116, - 97, 116, 101, 44, 32, 114, - 111, 116, 97, 116, 101, 67, - 101, 110, 116, 101, 114, 59, - 13, 10, 125, 59, 13, 10, - 13, 10, 80, 83, 95, 73, - 110, 112, 117, 116, 32, 109, - 97, 105, 110, 40, 86, 83, - 95, 73, 110, 112, 117, 116, - 32, 105, 110, 112, 117, 116, - 41, 13, 10, 123, 13, 10, - 9, 102, 108, 111, 97, 116, - 52, 120, 52, 32, 111, 98, - 106, 101, 99, 116, 77, 97, - 116, 114, 105, 120, 32, 61, - 32, 105, 100, 101, 110, 116, - 105, 116, 121, 77, 97, 116, - 114, 105, 120, 52, 120, 52, - 40, 41, 59, 13, 10, 9, - 111, 98, 106, 101, 99, 116, - 77, 97, 116, 114, 105, 120, - 32, 61, 32, 109, 117, 108, - 40, 111, 98, 106, 101, 99, - 116, 77, 97, 116, 114, 105, - 120, 44, 32, 115, 99, 97, - 108, 108, 105, 110, 103, 77, - 97, 116, 114, 105, 120, 40, - 103, 95, 115, 99, 97, 108, - 108, 105, 110, 103, 41, 41, - 59, 13, 10, 9, 102, 108, - 111, 97, 116, 52, 120, 52, - 32, 114, 111, 116, 97, 116, - 101, 67, 101, 110, 116, 101, - 114, 78, 32, 61, 32, 116, - 114, 97, 110, 115, 108, 97, - 116, 101, 77, 97, 116, 114, - 105, 120, 40, 114, 111, 116, - 97, 116, 101, 67, 101, 110, - 116, 101, 114, 32, 42, 32, - 45, 49, 41, 59, 13, 10, - 9, 111, 98, 106, 101, 99, - 116, 77, 97, 116, 114, 105, - 120, 32, 61, 32, 109, 117, - 108, 40, 111, 98, 106, 101, - 99, 116, 77, 97, 116, 114, - 105, 120, 44, 32, 114, 111, - 116, 97, 116, 101, 67, 101, - 110, 116, 101, 114, 78, 41, - 59, 13, 10, 9, 102, 111, - 114, 32, 40, 105, 110, 116, - 32, 105, 32, 61, 32, 50, - 59, 32, 105, 32, 62, 61, - 32, 48, 59, 32, 105, 45, - 45, 41, 13, 10, 9, 9, - 111, 98, 106, 101, 99, 116, - 77, 97, 116, 114, 105, 120, - 32, 61, 32, 109, 117, 108, - 40, 111, 98, 106, 101, 99, - 116, 77, 97, 116, 114, 105, - 120, 44, 32, 114, 111, 116, - 97, 116, 101, 90, 77, 97, - 116, 114, 105, 120, 40, 103, - 95, 114, 111, 116, 97, 116, - 101, 91, 105, 93, 41, 41, - 59, 13, 10, 13, 10, 9, - 111, 98, 106, 101, 99, 116, - 77, 97, 116, 114, 105, 120, - 32, 61, 32, 109, 117, 108, - 40, 111, 98, 106, 101, 99, - 116, 77, 97, 116, 114, 105, - 120, 44, 32, 116, 114, 97, - 110, 115, 108, 97, 116, 101, - 77, 97, 116, 114, 105, 120, - 40, 114, 111, 116, 97, 116, - 101, 67, 101, 110, 116, 101, - 114, 41, 41, 59, 13, 10, - 9, 111, 98, 106, 101, 99, - 116, 77, 97, 116, 114, 105, - 120, 32, 61, 32, 109, 117, - 108, 40, 111, 98, 106, 101, - 99, 116, 77, 97, 116, 114, - 105, 120, 44, 32, 116, 114, - 97, 110, 115, 108, 97, 116, - 101, 77, 97, 116, 114, 105, - 120, 40, 103, 95, 112, 111, - 115, 105, 116, 105, 111, 110, - 41, 41, 59, 13, 10, 9, - 111, 98, 106, 101, 99, 116, - 77, 97, 116, 114, 105, 120, - 32, 61, 32, 109, 117, 108, - 40, 111, 98, 106, 101, 99, - 116, 77, 97, 116, 114, 105, - 120, 44, 32, 116, 114, 97, - 110, 115, 112, 111, 115, 101, - 40, 103, 95, 119, 111, 114, - 108, 100, 86, 105, 101, 119, - 77, 97, 116, 114, 105, 120, - 41, 41, 59, 13, 10, 13, - 10, 9, 80, 83, 95, 73, - 110, 112, 117, 116, 32, 111, - 117, 116, 112, 117, 116, 59, - 13, 10, 9, 111, 117, 116, - 112, 117, 116, 46, 112, 111, - 115, 105, 116, 105, 111, 110, - 32, 61, 32, 109, 117, 108, - 40, 105, 110, 112, 117, 116, - 46, 112, 111, 115, 105, 116, - 105, 111, 110, 44, 32, 111, - 98, 106, 101, 99, 116, 77, - 97, 116, 114, 105, 120, 41, - 59, 13, 10, 9, 111, 117, - 116, 112, 117, 116, 46, 117, - 118, 32, 61, 32, 105, 110, - 112, 117, 116, 46, 117, 118, - 59, 13, 10, 9, 114, 101, - 116, 117, 114, 110, 32, 111, - 117, 116, 112, 117, 116, 59, - 13, 10, 125, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 254, 239, 254, 239, - 1, 0, 0, 0, 209, 10, - 0, 0, 0, 67, 58, 92, - 85, 115, 101, 114, 115, 92, - 66, 65, 82, 69, 81, 92, - 68, 111, 99, 117, 109, 101, - 110, 116, 115, 92, 86, 105, - 115, 117, 97, 108, 32, 83, - 116, 117, 100, 105, 111, 32, - 50, 48, 49, 53, 92, 80, - 114, 111, 106, 101, 99, 116, - 115, 92, 84, 97, 110, 107, - 115, 45, 87, 97, 114, 92, - 115, 114, 99, 92, 99, 111, - 109, 109, 111, 110, 92, 112, - 105, 120, 101, 108, 46, 104, - 108, 115, 108, 0, 0, 99, - 58, 92, 117, 115, 101, 114, - 115, 92, 98, 97, 114, 101, - 113, 92, 100, 111, 99, 117, - 109, 101, 110, 116, 115, 92, - 118, 105, 115, 117, 97, 108, - 32, 115, 116, 117, 100, 105, - 111, 32, 50, 48, 49, 53, - 92, 112, 114, 111, 106, 101, - 99, 116, 115, 92, 116, 97, - 110, 107, 115, 45, 119, 97, - 114, 92, 115, 114, 99, 92, - 99, 111, 109, 109, 111, 110, - 92, 112, 105, 120, 101, 108, - 46, 104, 108, 115, 108, 0, - 67, 58, 92, 85, 115, 101, - 114, 115, 92, 66, 65, 82, - 69, 81, 92, 68, 111, 99, - 117, 109, 101, 110, 116, 115, - 92, 86, 105, 115, 117, 97, - 108, 32, 83, 116, 117, 100, - 105, 111, 32, 50, 48, 49, - 53, 92, 80, 114, 111, 106, - 101, 99, 116, 115, 92, 84, - 97, 110, 107, 115, 45, 87, - 97, 114, 92, 115, 114, 99, - 92, 99, 111, 109, 109, 111, - 110, 92, 118, 101, 114, 116, - 101, 120, 46, 104, 108, 115, - 108, 0, 99, 58, 92, 117, - 115, 101, 114, 115, 92, 98, - 97, 114, 101, 113, 92, 100, - 111, 99, 117, 109, 101, 110, - 116, 115, 92, 118, 105, 115, - 117, 97, 108, 32, 115, 116, - 117, 100, 105, 111, 32, 50, - 48, 49, 53, 92, 112, 114, - 111, 106, 101, 99, 116, 115, - 92, 116, 97, 110, 107, 115, - 45, 119, 97, 114, 92, 115, - 114, 99, 92, 99, 111, 109, - 109, 111, 110, 92, 118, 101, - 114, 116, 101, 120, 46, 104, - 108, 115, 108, 0, 35, 105, - 110, 99, 108, 117, 100, 101, - 32, 34, 118, 101, 114, 116, - 101, 120, 46, 104, 108, 115, - 108, 34, 13, 10, 13, 10, - 84, 101, 120, 116, 117, 114, - 101, 50, 68, 32, 103, 84, - 101, 120, 116, 117, 114, 101, - 59, 13, 10, 83, 97, 109, - 112, 108, 101, 114, 83, 116, - 97, 116, 101, 32, 103, 83, - 97, 109, 112, 108, 101, 114, - 83, 116, 97, 116, 101, 59, - 13, 10, 13, 10, 102, 108, - 111, 97, 116, 52, 32, 109, - 97, 105, 110, 40, 80, 83, - 95, 73, 110, 112, 117, 116, - 32, 105, 110, 112, 117, 116, - 41, 32, 58, 32, 83, 86, - 95, 84, 65, 82, 71, 69, - 84, 13, 10, 123, 13, 10, - 9, 114, 101, 116, 117, 114, - 110, 32, 103, 84, 101, 120, - 116, 117, 114, 101, 46, 83, - 97, 109, 112, 108, 101, 40, - 103, 83, 97, 109, 112, 108, - 101, 114, 83, 116, 27, 226, - 48, 1, 172, 0, 0, 0, - 86, 242, 61, 108, 142, 9, - 218, 1, 1, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 2, 0, 0, 0, - 4, 0, 0, 0, 1, 0, - 0, 0, 12, 0, 0, 0, - 0, 0, 0, 0, 2, 1, - 0, 0, 40, 0, 0, 0, - 27, 226, 48, 1, 144, 154, - 8, 28, 201, 8, 0, 0, - 172, 0, 0, 0, 86, 0, - 0, 0, 2, 1, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 87, 0, 0, 0, 40, 0, - 0, 0, 27, 226, 48, 1, - 252, 105, 32, 235, 174, 0, - 0, 0, 1, 0, 0, 0, - 86, 0, 0, 0, 87, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 4, 0, 0, 0, 74, 0, - 60, 17, 16, 1, 0, 0, - 0, 1, 6, 0, 3, 0, - 179, 72, 128, 37, 6, 0, - 3, 0, 179, 72, 128, 37, - 77, 105, 99, 114, 111, 115, - 111, 102, 116, 32, 40, 82, - 41, 32, 72, 76, 83, 76, - 32, 83, 104, 97, 100, 101, - 114, 32, 67, 111, 109, 112, - 105, 108, 101, 114, 32, 54, - 46, 51, 46, 57, 54, 48, - 48, 46, 49, 56, 54, 49, - 49, 0, 54, 0, 61, 17, - 1, 104, 108, 115, 108, 70, - 108, 97, 103, 115, 0, 48, - 120, 53, 0, 104, 108, 115, - 108, 84, 97, 114, 103, 101, - 116, 0, 112, 115, 95, 53, - 95, 48, 0, 104, 108, 115, - 108, 69, 110, 116, 114, 121, - 0, 109, 97, 105, 110, 0, - 0, 0, 0, 0, 42, 0, - 16, 17, 0, 0, 0, 0, - 16, 2, 0, 0, 0, 0, - 0, 0, 48, 0, 0, 0, - 0, 0, 0, 0, 48, 0, - 0, 0, 6, 16, 0, 0, - 64, 0, 0, 0, 1, 0, - 160, 109, 97, 105, 110, 0, - 46, 0, 62, 17, 3, 16, - 0, 0, 9, 0, 105, 110, - 112, 117, 116, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 22, 0, 80, 17, 1, 0, - 5, 0, 0, 0, 4, 0, - 64, 0, 0, 0, 1, 0, - 48, 0, 0, 0, 0, 0, - 22, 0, 80, 17, 1, 0, - 5, 0, 4, 0, 4, 0, - 64, 0, 0, 0, 1, 0, - 48, 0, 4, 0, 0, 0, - 22, 0, 80, 17, 1, 0, - 5, 0, 8, 0, 4, 0, - 64, 0, 0, 0, 1, 0, - 48, 0, 8, 0, 0, 0, - 22, 0, 80, 17, 1, 0, - 5, 0, 12, 0, 4, 0, - 64, 0, 0, 0, 1, 0, - 48, 0, 12, 0, 0, 0, - 22, 0, 80, 17, 1, 0, - 5, 0, 16, 0, 4, 0, - 64, 0, 0, 0, 1, 0, - 48, 0, 16, 0, 0, 0, - 22, 0, 80, 17, 1, 0, - 5, 0, 20, 0, 4, 0, - 64, 0, 0, 0, 1, 0, - 48, 0, 20, 0, 0, 0, - 58, 0, 62, 17, 5, 16, - 0, 0, 136, 0, 60, 109, - 97, 105, 110, 32, 114, 101, - 116, 117, 114, 110, 32, 118, - 97, 108, 117, 101, 62, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 22, 0, 80, 17, 2, 0, - 5, 0, 0, 0, 4, 0, - 64, 0, 0, 0, 1, 0, - 48, 0, 0, 0, 0, 0, - 22, 0, 80, 17, 2, 0, - 5, 0, 4, 0, 4, 0, - 64, 0, 0, 0, 1, 0, - 48, 0, 4, 0, 0, 0, - 22, 0, 80, 17, 2, 0, - 5, 0, 8, 0, 4, 0, - 64, 0, 0, 0, 1, 0, - 48, 0, 8, 0, 0, 0, - 22, 0, 80, 17, 2, 0, - 5, 0, 12, 0, 4, 0, - 64, 0, 0, 0, 1, 0, - 48, 0, 12, 0, 0, 0, - 2, 0, 6, 0, 244, 0, - 0, 0, 48, 0, 0, 0, - 1, 0, 0, 0, 16, 1, - 74, 192, 73, 197, 81, 75, - 153, 104, 78, 91, 128, 231, - 85, 17, 232, 215, 0, 0, - 172, 0, 0, 0, 16, 1, - 115, 45, 152, 82, 6, 81, - 126, 167, 203, 228, 247, 85, - 43, 5, 158, 177, 0, 0, - 242, 0, 0, 0, 72, 0, - 0, 0, 0, 0, 0, 0, - 1, 0, 1, 0, 112, 0, - 0, 0, 0, 0, 0, 0, - 4, 0, 0, 0, 60, 0, - 0, 0, 64, 0, 0, 0, - 8, 0, 0, 128, 64, 0, - 0, 0, 8, 0, 0, 0, - 108, 0, 0, 0, 8, 0, - 0, 128, 108, 0, 0, 0, - 8, 0, 0, 0, 2, 0, - 49, 0, 9, 0, 48, 0, - 2, 0, 49, 0, 2, 0, - 49, 0, 246, 0, 0, 0, - 4, 0, 0, 0, 0, 0, - 0, 0, 12, 0, 0, 0, - 0, 0, 0, 0, 20, 0, - 0, 0, 52, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 11, 202, - 49, 1, 56, 0, 0, 0, - 0, 16, 0, 0, 13, 16, - 0, 0, 240, 0, 0, 0, - 11, 0, 255, 255, 4, 0, - 0, 0, 255, 255, 3, 0, - 0, 0, 0, 0, 52, 0, - 0, 0, 52, 0, 0, 0, - 8, 0, 0, 0, 60, 0, - 0, 0, 0, 0, 0, 0, - 22, 0, 27, 21, 64, 0, - 0, 0, 4, 0, 0, 0, - 16, 0, 102, 108, 111, 97, - 116, 52, 0, 243, 242, 241, - 22, 0, 27, 21, 64, 0, - 0, 0, 2, 0, 0, 0, - 8, 0, 102, 108, 111, 97, - 116, 50, 0, 243, 242, 241, - 38, 0, 3, 18, 13, 21, - 3, 0, 0, 16, 0, 0, - 0, 0, 112, 111, 115, 105, - 116, 105, 111, 110, 0, 241, - 13, 21, 3, 0, 1, 16, - 0, 0, 16, 0, 117, 118, - 0, 243, 242, 241, 30, 0, - 5, 21, 2, 0, 0, 0, - 2, 16, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 24, 0, 80, 83, 95, 73, - 110, 112, 117, 116, 0, 241, - 10, 0, 1, 18, 1, 0, - 0, 0, 3, 16, 0, 0, - 10, 0, 24, 21, 0, 16, - 0, 0, 1, 0, 1, 0, - 14, 0, 8, 16, 5, 16, - 0, 0, 23, 0, 1, 0, - 4, 16, 0, 0, 14, 0, - 23, 21, 0, 16, 0, 0, - 3, 2, 0, 40, 0, 0, - 242, 241, 10, 0, 24, 21, - 7, 16, 0, 0, 1, 0, - 1, 0, 10, 0, 24, 21, - 8, 16, 0, 0, 1, 0, - 0, 2, 14, 0, 23, 21, - 0, 0, 0, 0, 10, 2, - 0, 0, 0, 0, 242, 241, - 10, 0, 24, 21, 10, 16, - 0, 0, 1, 0, 1, 0, - 10, 0, 24, 21, 11, 16, - 0, 0, 1, 0, 0, 2, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 11, 202, 49, 1, 56, 0, - 0, 0, 0, 16, 0, 0, - 0, 16, 0, 0, 0, 0, - 0, 0, 12, 0, 255, 255, - 4, 0, 0, 0, 255, 255, - 3, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 114, 101, 116, 117, - 114, 110, 32, 102, 108, 111, - 97, 116, 52, 120, 52, 40, - 13, 10, 9, 9, 102, 108, - 111, 97, 116, 52, 40, 115, - 99, 97, 108, 108, 105, 110, - 103, 91, 48, 93, 44, 32, - 48, 46, 48, 102, 44, 32, - 48, 46, 48, 102, 44, 32, - 48, 46, 48, 102, 41, 44, - 13, 10, 9, 9, 102, 108, - 111, 97, 116, 52, 40, 48, - 46, 48, 102, 44, 32, 115, - 99, 97, 108, 108, 105, 110, - 103, 91, 49, 93, 44, 32, - 48, 46, 48, 102, 44, 32, - 48, 46, 48, 102, 41, 44, - 13, 10, 9, 9, 102, 108, - 111, 97, 116, 52, 40, 48, - 46, 48, 102, 44, 32, 48, - 46, 48, 102, 44, 32, 115, - 99, 97, 108, 108, 105, 110, - 103, 91, 50, 93, 44, 32, - 48, 46, 48, 102, 41, 44, - 13, 10, 9, 9, 102, 108, - 111, 97, 116, 52, 40, 48, - 46, 48, 102, 44, 32, 48, - 46, 48, 102, 44, 32, 48, - 46, 48, 102, 44, 32, 49, - 46, 48, 102, 41, 13, 10, - 9, 9, 41, 59, 13, 10, - 125, 13, 10, 13, 10, 102, - 108, 111, 97, 116, 52, 120, - 52, 32, 105, 100, 101, 110, - 116, 105, 116, 121, 77, 97, - 116, 114, 105, 120, 52, 120, - 52, 40, 41, 13, 10, 123, - 13, 10, 9, 114, 101, 116, - 117, 114, 110, 32, 102, 108, - 111, 97, 116, 52, 120, 52, - 40, 13, 10, 9, 9, 49, - 46, 48, 44, 32, 48, 46, - 48, 44, 32, 48, 46, 48, - 44, 32, 48, 46, 48, 44, - 13, 10, 9, 9, 48, 46, - 48, 44, 32, 49, 46, 48, - 44, 32, 48, 46, 48, 44, - 32, 48, 46, 48, 44, 13, - 10, 9, 9, 48, 46, 48, - 44, 32, 48, 46, 48, 44, - 32, 49, 46, 48, 44, 32, - 48, 46, 48, 44, 13, 10, - 9, 9, 48, 46, 48, 44, - 32, 48, 46, 48, 44, 32, - 48, 46, 48, 44, 32, 49, - 46, 48, 13, 10, 9, 9, - 41, 59, 13, 10, 125, 13, - 10, 13, 10, 102, 108, 111, - 97, 116, 52, 120, 52, 32, - 114, 111, 116, 97, 116, 101, - 88, 77, 97, 116, 114, 105, - 120, 40, 102, 108, 111, 97, - 116, 32, 97, 110, 103, 108, - 101, 41, 32, 123, 13, 10, - 9, 102, 108, 111, 97, 116, - 32, 115, 32, 61, 32, 115, - 105, 110, 40, 97, 110, 103, - 108, 101, 41, 59, 13, 10, - 9, 102, 108, 111, 97, 116, - 32, 99, 32, 61, 32, 99, - 111, 115, 40, 97, 110, 103, - 108, 101, 41, 59, 13, 10, - 9, 114, 101, 116, 117, 114, - 110, 32, 102, 108, 111, 97, - 116, 52, 120, 52, 40, 13, - 10, 9, 9, 49, 44, 32, - 48, 44, 32, 48, 44, 32, - 48, 44, 13, 10, 9, 9, - 48, 44, 32, 99, 44, 32, - 45, 115, 44, 32, 48, 44, - 13, 10, 9, 9, 48, 44, - 32, 115, 44, 32, 99, 44, - 32, 48, 44, 13, 10, 9, - 9, 48, 44, 32, 48, 44, - 32, 48, 44, 32, 49, 13, - 10, 9, 9, 41, 59, 13, - 10, 125, 13, 10, 13, 10, - 102, 108, 111, 97, 116, 52, - 120, 52, 32, 114, 111, 116, - 97, 116, 101, 89, 77, 97, - 116, 114, 105, 120, 40, 102, - 108, 111, 97, 116, 32, 97, - 110, 103, 108, 101, 41, 13, - 10, 123, 13, 10, 9, 102, - 108, 111, 97, 116, 32, 115, - 32, 61, 32, 115, 105, 110, - 40, 97, 110, 103, 108, 101, - 41, 59, 13, 10, 9, 102, - 108, 111, 97, 116, 32, 99, - 32, 61, 32, 99, 111, 115, - 40, 97, 110, 103, 108, 101, - 41, 59, 13, 10, 9, 114, - 101, 116, 117, 114, 110, 32, - 102, 108, 111, 97, 116, 52, - 120, 52, 40, 13, 10, 9, - 9, 99, 44, 32, 48, 44, - 32, 45, 115, 44, 32, 48, - 44, 13, 10, 9, 9, 48, - 44, 32, 49, 44, 32, 48, - 44, 32, 48, 44, 13, 10, - 9, 9, 115, 44, 32, 48, - 44, 32, 99, 44, 32, 48, - 44, 13, 10, 9, 9, 48, - 44, 32, 48, 44, 32, 48, - 44, 32, 49, 13, 10, 9, - 9, 41, 59, 13, 10, 125, - 13, 10, 13, 10, 102, 108, - 111, 97, 116, 52, 120, 52, - 32, 114, 111, 116, 97, 116, - 101, 90, 77, 97, 116, 114, - 105, 120, 40, 102, 108, 111, - 97, 116, 32, 97, 110, 103, - 108, 101, 41, 13, 10, 123, - 13, 10, 9, 102, 108, 111, - 97, 116, 32, 115, 32, 61, - 32, 115, 105, 110, 40, 97, - 110, 103, 108, 101, 41, 59, - 13, 10, 9, 102, 108, 111, - 97, 116, 32, 99, 32, 61, - 32, 99, 111, 115, 40, 97, - 110, 103, 108, 101, 41, 59, - 13, 10, 9, 114, 101, 116, - 117, 114, 110, 32, 102, 108, - 111, 97, 116, 52, 120, 52, - 40, 13, 10, 9, 9, 99, - 44, 32, 115, 44, 32, 48, - 46, 48, 102, 44, 32, 48, - 46, 48, 102, 44, 13, 10, - 9, 9, 45, 115, 44, 32, - 99, 44, 32, 48, 46, 48, - 102, 44, 32, 48, 46, 48, - 102, 44, 13, 10, 9, 9, - 48, 46, 48, 102, 44, 32, - 48, 46, 48, 102, 44, 32, - 49, 46, 48, 44, 32, 48, - 46, 48, 44, 13, 10, 9, - 9, 48, 46, 48, 102, 44, - 32, 48, 46, 48, 44, 32, - 48, 46, 48, 44, 32, 49, - 46, 48, 13, 10, 9, 9, - 41, 59, 13, 10, 125, 13, - 10, 13, 10, 99, 98, 117, - 102, 102, 101, 114, 32, 99, - 98, 80, 101, 114, 70, 114, - 97, 109, 101, 32, 58, 32, - 114, 101, 103, 105, 115, 116, - 101, 114, 40, 98, 48, 41, - 13, 10, 123, 13, 10, 9, - 102, 108, 111, 97, 116, 52, - 120, 52, 32, 103, 95, 119, - 111, 114, 108, 100, 86, 105, - 101, 119, 77, 97, 116, 114, - 105, 120, 59, 13, 10, 125, - 59, 13, 10, 13, 10, 99, - 98, 117, 102, 102, 101, 114, - 32, 99, 98, 80, 101, 114, - 79, 98, 106, 101, 99, 116, - 32, 58, 32, 114, 101, 103, - 105, 115, 116, 101, 114, 40, - 98, 49, 41, 13, 10, 123, - 13, 10, 9, 102, 108, 111, - 97, 116, 51, 32, 103, 95, - 112, 111, 115, 105, 116, 105, - 111, 110, 44, 32, 103, 95, - 115, 99, 97, 108, 108, 105, - 110, 103, 44, 32, 103, 95, - 114, 111, 116, 97, 116, 101, - 44, 32, 114, 111, 116, 97, - 116, 101, 67, 101, 110, 116, - 101, 114, 59, 13, 10, 125, - 59, 13, 10, 13, 10, 80, - 83, 95, 73, 110, 112, 117, - 116, 32, 109, 97, 105, 110, - 40, 86, 83, 95, 73, 110, - 112, 117, 116, 32, 105, 110, - 112, 117, 116, 41, 13, 10, - 123, 13, 10, 9, 102, 108, - 111, 97, 116, 52, 120, 52, - 32, 111, 98, 106, 101, 99, - 116, 77, 97, 116, 114, 105, - 120, 32, 61, 32, 105, 100, - 101, 110, 116, 105, 116, 121, - 77, 97, 116, 114, 105, 120, - 52, 120, 52, 40, 41, 59, - 13, 10, 9, 111, 98, 106, - 101, 99, 116, 77, 97, 116, - 114, 105, 120, 32, 61, 32, - 109, 117, 108, 40, 111, 98, - 106, 101, 99, 116, 77, 97, - 116, 114, 105, 120, 44, 32, - 115, 99, 97, 108, 108, 105, - 110, 103, 77, 97, 116, 114, - 105, 120, 40, 103, 95, 115, - 99, 97, 108, 108, 105, 110, - 103, 41, 41, 59, 13, 10, - 9, 102, 108, 111, 97, 116, - 52, 120, 52, 32, 114, 111, - 116, 97, 116, 101, 67, 101, - 110, 116, 101, 114, 78, 32, - 61, 32, 116, 114, 97, 110, - 115, 108, 97, 116, 101, 77, - 97, 116, 114, 105, 120, 40, - 114, 111, 116, 97, 116, 101, - 67, 101, 110, 116, 101, 114, - 32, 42, 32, 45, 49, 41, - 59, 13, 10, 9, 111, 98, - 106, 101, 99, 116, 77, 97, - 116, 114, 105, 120, 32, 61, - 32, 109, 117, 108, 40, 111, - 98, 106, 101, 99, 116, 77, - 97, 116, 114, 105, 120, 44, - 32, 114, 111, 116, 97, 116, - 101, 67, 101, 110, 116, 101, - 114, 78, 41, 59, 13, 10, - 9, 102, 111, 114, 32, 40, - 105, 110, 116, 32, 105, 32, - 61, 32, 50, 59, 32, 105, - 32, 62, 61, 32, 48, 59, - 32, 105, 45, 45, 41, 13, - 10, 9, 9, 111, 98, 106, - 101, 99, 116, 77, 97, 116, - 114, 105, 120, 32, 61, 32, - 109, 117, 108, 40, 111, 98, - 106, 101, 99, 116, 77, 97, - 116, 114, 105, 120, 44, 32, - 114, 111, 116, 97, 116, 101, - 90, 77, 97, 116, 114, 105, - 120, 40, 103, 95, 114, 111, - 116, 97, 116, 101, 91, 105, - 93, 41, 41, 59, 13, 10, - 13, 10, 9, 111, 98, 106, - 101, 99, 116, 77, 97, 116, - 114, 105, 120, 32, 61, 32, - 109, 117, 108, 40, 111, 98, - 106, 101, 99, 116, 77, 97, - 116, 114, 105, 120, 44, 32, - 116, 114, 97, 110, 115, 108, - 97, 116, 101, 77, 97, 116, - 114, 105, 120, 40, 114, 111, - 116, 97, 116, 101, 67, 101, - 110, 116, 101, 114, 41, 41, - 59, 13, 10, 9, 111, 98, - 106, 101, 99, 116, 77, 97, - 116, 114, 105, 120, 32, 61, - 32, 109, 117, 108, 40, 111, - 98, 106, 101, 99, 116, 77, - 97, 116, 114, 105, 120, 44, - 32, 116, 114, 97, 110, 115, - 108, 97, 116, 101, 77, 97, - 116, 114, 105, 120, 40, 103, - 95, 112, 111, 115, 105, 116, - 105, 111, 110, 41, 41, 59, - 13, 10, 9, 111, 98, 106, - 101, 99, 116, 77, 97, 116, - 114, 105, 120, 32, 61, 32, - 109, 117, 108, 40, 111, 98, - 106, 101, 99, 116, 77, 97, - 116, 114, 105, 120, 44, 32, - 116, 114, 97, 110, 115, 112, - 111, 115, 101, 40, 103, 95, - 119, 111, 114, 108, 100, 86, - 105, 101, 119, 77, 97, 116, - 114, 105, 120, 41, 41, 59, - 13, 10, 13, 10, 9, 80, - 83, 95, 73, 110, 112, 117, - 116, 32, 111, 117, 116, 112, - 117, 116, 59, 13, 10, 9, - 111, 117, 116, 112, 117, 116, - 46, 112, 111, 115, 105, 116, - 105, 111, 110, 32, 61, 32, - 109, 117, 108, 40, 105, 110, - 112, 117, 116, 46, 112, 111, - 115, 105, 116, 105, 111, 110, - 44, 32, 111, 98, 106, 101, - 99, 116, 77, 97, 116, 114, - 105, 120, 41, 59, 13, 10, - 9, 111, 117, 116, 112, 117, - 116, 46, 117, 118, 32, 61, - 32, 105, 110, 112, 117, 116, - 46, 117, 118, 59, 13, 10, - 9, 114, 101, 116, 117, 114, - 110, 32, 111, 117, 116, 112, - 117, 116, 59, 13, 10, 125, - 0, 11, 0, 0, 0, 0, - 0, 0, 0, 86, 0, 0, - 0, 7, 2, 0, 0, 88, - 1, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 1, - 0, 0, 0, 87, 0, 0, - 0, 172, 0, 0, 0, 2, - 1, 0, 0, 0, 0, 0, - 0, 7, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 68, 51, - 68, 83, 72, 68, 82, 0, - 112, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 32, 0, - 0, 96, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 255, 255, 255, 255, 26, 9, - 47, 241, 24, 0, 0, 0, - 16, 2, 0, 0, 1, 0, - 0, 0, 1, 0, 0, 0, - 21, 0, 0, 0, 1, 0, - 0, 0, 53, 0, 0, 0, - 1, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 32, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 128, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 16, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 12, 0, 0, 0, - 24, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 18, 0, - 37, 17, 0, 0, 0, 0, - 136, 0, 0, 0, 1, 0, - 109, 97, 105, 110, 0, 0, - 30, 0, 81, 17, 9, 16, - 0, 0, 7, 0, 255, 255, - 255, 255, 0, 0, 255, 255, - 255, 255, 103, 84, 101, 120, - 116, 117, 114, 101, 0, 0, - 0, 0, 34, 0, 81, 17, - 12, 16, 0, 0, 6, 0, - 255, 255, 255, 255, 255, 255, - 0, 0, 255, 255, 103, 83, - 97, 109, 112, 108, 101, 114, - 83, 116, 97, 116, 101, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 16, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 255, 255, - 255, 255, 26, 9, 47, 241, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 255, 255, 255, 255, - 119, 9, 49, 1, 1, 0, - 0, 0, 14, 0, 0, 139, - 15, 0, 221, 255, 16, 0, - 136, 66, 76, 0, 0, 0, - 32, 0, 0, 0, 44, 0, - 0, 0, 188, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 22, 0, 0, 0, - 25, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 1, 0, - 0, 0, 0, 0, 0, 0, - 112, 0, 0, 0, 32, 0, - 0, 96, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 2, 0, 10, 0, - 20, 2, 0, 0, 0, 0, - 0, 0, 148, 0, 0, 0, - 2, 0, 0, 0, 0, 220, - 94, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 109, 97, - 105, 110, 0, 110, 111, 110, - 101, 0, 0, 0, 45, 186, - 46, 241, 1, 0, 108, 0, - 0, 0, 0, 0, 112, 0, - 0, 0, 32, 0, 0, 96, - 0, 0, 116, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 2, 0, 2, 0, 7, 0, - 0, 0, 0, 0, 1, 0, - 255, 255, 255, 255, 0, 0, - 0, 0, 112, 0, 0, 0, - 8, 2, 0, 0, 0, 0, - 0, 0, 255, 255, 255, 255, - 0, 0, 0, 0, 255, 255, - 255, 255, 1, 0, 2, 0, - 0, 0, 2, 0, 0, 0, - 0, 0, 85, 0, 0, 0, - 67, 58, 92, 85, 115, 101, - 114, 115, 92, 66, 65, 82, - 69, 81, 92, 68, 111, 99, - 117, 109, 101, 110, 116, 115, - 92, 86, 105, 115, 117, 97, - 108, 32, 83, 116, 117, 100, - 105, 111, 32, 50, 48, 49, - 53, 92, 80, 114, 111, 106, - 101, 99, 116, 115, 92, 84, - 97, 110, 107, 115, 45, 87, - 97, 114, 92, 115, 114, 99, - 92, 99, 111, 109, 109, 111, - 110, 92, 112, 105, 120, 101, - 108, 46, 104, 108, 115, 108, - 0, 67, 58, 92, 85, 115, - 101, 114, 115, 92, 66, 65, - 82, 69, 81, 92, 68, 111, - 99, 117, 109, 101, 110, 116, - 115, 92, 86, 105, 115, 117, - 97, 108, 32, 83, 116, 117, - 100, 105, 111, 32, 50, 48, - 49, 53, 92, 80, 114, 111, - 106, 101, 99, 116, 115, 92, - 84, 97, 110, 107, 115, 45, - 87, 97, 114, 92, 115, 114, - 99, 92, 99, 111, 109, 109, - 111, 110, 92, 118, 101, 114, - 116, 101, 120, 46, 104, 108, - 115, 108, 0, 0, 254, 239, - 254, 239, 1, 0, 0, 0, - 1, 0, 0, 0, 0, 1, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 13, 0, 255, - 255, 255, 255, 255, 255, 255, - 255, 255, 255, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 148, 46, - 49, 1, 146, 234, 60, 101, - 1, 0, 0, 0, 169, 43, - 44, 33, 53, 251, 82, 71, - 180, 229, 178, 33, 41, 225, - 55, 97, 227, 0, 0, 0, - 47, 76, 105, 110, 107, 73, - 110, 102, 111, 0, 47, 110, - 97, 109, 101, 115, 0, 47, - 115, 114, 99, 47, 104, 101, - 97, 100, 101, 114, 98, 108, - 111, 99, 107, 0, 47, 115, - 114, 99, 47, 102, 105, 108, - 101, 115, 47, 99, 58, 92, - 117, 115, 101, 114, 115, 92, - 98, 97, 114, 101, 113, 92, - 100, 111, 99, 117, 109, 101, - 110, 116, 115, 92, 118, 105, - 115, 117, 97, 108, 32, 115, - 116, 117, 100, 105, 111, 32, - 50, 48, 49, 53, 92, 112, - 114, 111, 106, 101, 99, 116, - 115, 92, 116, 97, 110, 107, - 115, 45, 119, 97, 114, 92, - 115, 114, 99, 92, 99, 111, - 109, 109, 111, 110, 92, 112, - 105, 120, 101, 108, 46, 104, - 108, 115, 108, 0, 47, 115, - 114, 99, 47, 102, 105, 108, - 101, 115, 47, 99, 58, 92, - 117, 115, 101, 114, 115, 92, - 98, 97, 114, 101, 113, 92, - 100, 111, 99, 117, 109, 101, - 110, 116, 115, 92, 118, 105, - 115, 117, 97, 108, 32, 115, - 116, 117, 100, 105, 111, 32, - 50, 48, 49, 53, 92, 112, - 114, 111, 106, 101, 99, 116, - 115, 92, 116, 97, 110, 107, - 115, 45, 119, 97, 114, 92, - 115, 114, 99, 92, 99, 111, - 109, 109, 111, 110, 92, 118, - 101, 114, 116, 101, 120, 46, - 104, 108, 115, 108, 0, 5, - 0, 0, 0, 10, 0, 0, - 0, 1, 0, 0, 0, 118, - 0, 0, 0, 0, 0, 0, - 0, 17, 0, 0, 0, 7, - 0, 0, 0, 0, 0, 0, - 0, 5, 0, 0, 0, 34, - 0, 0, 0, 8, 0, 0, - 0, 10, 0, 0, 0, 6, - 0, 0, 0, 130, 0, 0, - 0, 9, 0, 0, 0, 0, - 0, 0, 0, 65, 145, 50, - 1, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 17, 0, 0, 0, 32, 0, - 0, 0, 71, 1, 0, 0, - 40, 1, 0, 0, 195, 1, - 0, 0, 56, 0, 0, 0, - 0, 0, 0, 0, 17, 11, - 0, 0, 172, 0, 0, 0, - 174, 0, 0, 0, 201, 8, - 0, 0, 184, 2, 0, 0, - 60, 0, 0, 0, 0, 0, - 0, 0, 40, 0, 0, 0, - 56, 2, 0, 0, 44, 0, - 0, 0, 88, 0, 0, 0, - 3, 0, 0, 0, 30, 0, - 0, 0, 18, 0, 0, 0, - 29, 0, 0, 0, 19, 0, - 0, 0, 14, 0, 0, 0, - 6, 0, 0, 0, 20, 0, - 0, 0, 21, 0, 0, 0, - 22, 0, 0, 0, 23, 0, - 0, 0, 15, 0, 0, 0, - 8, 0, 0, 0, 9, 0, - 0, 0, 10, 0, 0, 0, - 11, 0, 0, 0, 12, 0, - 0, 0, 13, 0, 0, 0, - 16, 0, 0, 0, 17, 0, - 0, 0, 7, 0, 0, 0, - 24, 0, 0, 0, 25, 0, - 0, 0, 26, 0, 0, 0, - 28, 0, 0, 0, 27, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 31, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0 + 68, 88, 66, 67, 41, 194, + 96, 209, 55, 221, 19, 122, + 25, 0, 171, 13, 217, 208, + 147, 65, 1, 0, 0, 0, + 176, 72, 0, 0, 6, 0, + 0, 0, 56, 0, 0, 0, + 8, 1, 0, 0, 96, 1, + 0, 0, 148, 1, 0, 0, + 12, 2, 0, 0, 168, 2, + 0, 0, 82, 68, 69, 70, + 200, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 2, 0, 0, 0, 60, 0, + 0, 0, 0, 5, 255, 255, + 5, 1, 0, 0, 147, 0, + 0, 0, 82, 68, 49, 49, + 60, 0, 0, 0, 24, 0, + 0, 0, 32, 0, 0, 0, + 40, 0, 0, 0, 36, 0, + 0, 0, 12, 0, 0, 0, + 0, 0, 0, 0, 124, 0, + 0, 0, 3, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 1, 0, + 0, 0, 0, 0, 0, 0, + 138, 0, 0, 0, 2, 0, + 0, 0, 5, 0, 0, 0, + 4, 0, 0, 0, 255, 255, + 255, 255, 0, 0, 0, 0, + 1, 0, 0, 0, 12, 0, + 0, 0, 103, 83, 97, 109, + 112, 108, 101, 114, 83, 116, + 97, 116, 101, 0, 103, 84, + 101, 120, 116, 117, 114, 101, + 0, 77, 105, 99, 114, 111, + 115, 111, 102, 116, 32, 40, + 82, 41, 32, 72, 76, 83, + 76, 32, 83, 104, 97, 100, + 101, 114, 32, 67, 111, 109, + 112, 105, 108, 101, 114, 32, + 54, 46, 51, 46, 57, 54, + 48, 48, 46, 49, 56, 54, + 49, 49, 0, 171, 171, 171, + 73, 83, 71, 78, 80, 0, + 0, 0, 2, 0, 0, 0, + 8, 0, 0, 0, 56, 0, + 0, 0, 0, 0, 0, 0, + 1, 0, 0, 0, 3, 0, + 0, 0, 0, 0, 0, 0, + 15, 0, 0, 0, 68, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 3, 0, + 0, 0, 1, 0, 0, 0, + 3, 3, 0, 0, 83, 86, + 95, 80, 79, 83, 73, 84, + 73, 79, 78, 0, 84, 69, + 88, 67, 79, 79, 82, 68, + 0, 171, 171, 171, 79, 83, + 71, 78, 44, 0, 0, 0, + 1, 0, 0, 0, 8, 0, + 0, 0, 32, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 3, 0, 0, 0, + 0, 0, 0, 0, 15, 0, + 0, 0, 83, 86, 95, 84, + 65, 82, 71, 69, 84, 0, + 171, 171, 83, 72, 69, 88, + 112, 0, 0, 0, 80, 0, + 0, 0, 28, 0, 0, 0, + 106, 136, 0, 1, 90, 0, + 0, 3, 0, 96, 16, 0, + 0, 0, 0, 0, 88, 24, + 0, 4, 0, 112, 16, 0, + 0, 0, 0, 0, 85, 85, + 0, 0, 98, 16, 0, 3, + 50, 16, 16, 0, 1, 0, + 0, 0, 101, 0, 0, 3, + 242, 32, 16, 0, 0, 0, + 0, 0, 69, 0, 0, 139, + 194, 0, 0, 128, 67, 85, + 21, 0, 242, 32, 16, 0, + 0, 0, 0, 0, 70, 16, + 16, 0, 1, 0, 0, 0, + 70, 126, 16, 0, 0, 0, + 0, 0, 0, 96, 16, 0, + 0, 0, 0, 0, 62, 0, + 0, 1, 83, 84, 65, 84, + 148, 0, 0, 0, 2, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 2, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 1, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 1, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 83, 80, 68, 66, + 0, 70, 0, 0, 77, 105, + 99, 114, 111, 115, 111, 102, + 116, 32, 67, 47, 67, 43, + 43, 32, 77, 83, 70, 32, + 55, 46, 48, 48, 13, 10, + 26, 68, 83, 0, 0, 0, + 0, 2, 0, 0, 2, 0, + 0, 0, 35, 0, 0, 0, + 176, 0, 0, 0, 0, 0, + 0, 0, 32, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 192, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 56, 0, 0, 0, + 254, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 5, 0, + 0, 0, 32, 0, 0, 0, + 60, 0, 0, 0, 0, 0, + 0, 0, 255, 255, 255, 255, + 0, 0, 0, 0, 6, 0, + 0, 0, 5, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 3, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 148, 46, 49, 1, + 68, 2, 67, 101, 1, 0, + 0, 0, 121, 60, 23, 247, + 4, 8, 127, 66, 161, 70, + 70, 88, 77, 162, 103, 112, + 0, 0, 0, 0, 0, 0, + 0, 0, 1, 0, 0, 0, + 1, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 65, 145, + 50, 1, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 97, 116, + 101, 44, 32, 105, 110, 112, + 117, 116, 46, 117, 118, 41, + 59, 13, 10, 125, 0, 47, + 47, 32, 118, 101, 114, 116, + 101, 120, 46, 104, 108, 115, + 108, 13, 10, 47, 47, 32, + 65, 117, 116, 104, 111, 114, + 58, 32, 97, 98, 114, 97, + 109, 97, 110, 110, 13, 10, + 13, 10, 115, 116, 114, 117, + 99, 116, 32, 86, 83, 95, + 73, 110, 112, 117, 116, 13, + 10, 123, 13, 10, 9, 102, + 108, 111, 97, 116, 52, 32, + 112, 111, 115, 105, 116, 105, + 111, 110, 32, 58, 32, 80, + 79, 83, 73, 84, 73, 79, + 78, 59, 13, 10, 9, 102, + 108, 111, 97, 116, 50, 32, + 117, 118, 32, 58, 32, 84, + 69, 88, 67, 79, 79, 82, + 68, 59, 13, 10, 125, 59, + 13, 10, 13, 10, 115, 116, + 114, 117, 99, 116, 32, 80, + 83, 95, 73, 110, 112, 117, + 116, 13, 10, 123, 13, 10, + 9, 102, 108, 111, 97, 116, + 52, 32, 112, 111, 115, 105, + 116, 105, 111, 110, 32, 58, + 32, 83, 86, 95, 80, 79, + 83, 73, 84, 73, 79, 78, + 59, 13, 10, 9, 102, 108, + 111, 97, 116, 50, 32, 117, + 118, 32, 58, 32, 84, 69, + 88, 67, 79, 79, 82, 68, + 59, 13, 10, 125, 59, 13, + 10, 13, 10, 102, 108, 111, + 97, 116, 52, 120, 52, 32, + 116, 114, 97, 110, 115, 108, + 97, 116, 101, 77, 97, 116, + 114, 105, 120, 40, 102, 108, + 111, 97, 116, 51, 32, 116, + 114, 97, 110, 115, 108, 97, + 116, 105, 111, 110, 41, 13, + 10, 123, 13, 10, 9, 114, + 101, 116, 117, 114, 110, 32, + 102, 108, 111, 97, 116, 52, + 120, 52, 40, 13, 10, 9, + 9, 102, 108, 111, 97, 116, + 52, 40, 49, 46, 48, 102, + 44, 32, 48, 46, 48, 102, + 44, 32, 48, 46, 48, 102, + 44, 32, 48, 46, 48, 102, + 41, 44, 13, 10, 9, 9, + 102, 108, 111, 97, 116, 52, + 40, 48, 46, 48, 102, 44, + 32, 49, 46, 48, 102, 44, + 32, 48, 46, 48, 102, 44, + 32, 48, 46, 48, 102, 41, + 44, 13, 10, 9, 9, 102, + 108, 111, 97, 116, 52, 40, + 48, 46, 48, 102, 44, 32, + 48, 46, 48, 102, 44, 32, + 49, 46, 48, 102, 44, 32, + 48, 46, 48, 102, 41, 44, + 13, 10, 9, 9, 102, 108, + 111, 97, 116, 52, 40, 116, + 114, 97, 110, 115, 108, 97, + 116, 105, 111, 110, 46, 120, + 44, 32, 116, 114, 97, 110, + 115, 108, 97, 116, 105, 111, + 110, 46, 121, 44, 32, 116, + 114, 97, 110, 115, 108, 97, + 116, 105, 111, 110, 46, 122, + 44, 32, 49, 46, 48, 102, + 41, 13, 10, 9, 9, 41, + 59, 13, 10, 125, 13, 10, + 13, 10, 102, 108, 111, 97, + 116, 52, 120, 52, 32, 115, + 99, 97, 108, 108, 105, 110, + 103, 77, 97, 116, 114, 105, + 120, 40, 102, 108, 111, 97, + 116, 51, 32, 115, 99, 97, + 108, 108, 105, 110, 103, 41, + 13, 10, 123, 13, 10, 9, + 198, 90, 0, 0, 117, 131, + 1, 0, 125, 191, 1, 0, + 162, 202, 1, 0, 38, 247, + 2, 0, 65, 36, 1, 0, + 39, 82, 3, 0, 171, 4, + 0, 0, 217, 42, 2, 0, + 21, 230, 0, 0, 200, 81, + 2, 0, 73, 20, 1, 0, + 153, 189, 3, 0, 0, 16, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 35, 105, 110, 99, + 108, 117, 100, 101, 32, 34, + 118, 101, 114, 116, 101, 120, + 46, 104, 108, 115, 108, 34, + 13, 10, 13, 10, 84, 101, + 120, 116, 117, 114, 101, 50, + 68, 32, 103, 84, 101, 120, + 116, 117, 114, 101, 59, 13, + 10, 83, 97, 109, 112, 108, + 101, 114, 83, 116, 97, 116, + 101, 32, 103, 83, 97, 109, + 112, 108, 101, 114, 83, 116, + 97, 116, 101, 59, 13, 10, + 13, 10, 102, 108, 111, 97, + 116, 52, 32, 109, 97, 105, + 110, 40, 80, 83, 95, 73, + 110, 112, 117, 116, 32, 105, + 110, 112, 117, 116, 41, 32, + 58, 32, 83, 86, 95, 84, + 65, 82, 71, 69, 84, 13, + 10, 123, 13, 10, 9, 114, + 101, 116, 117, 114, 110, 32, + 103, 84, 101, 120, 116, 117, + 114, 101, 46, 83, 97, 109, + 112, 108, 101, 40, 103, 83, + 97, 109, 112, 108, 101, 114, + 83, 116, 97, 116, 101, 44, + 32, 105, 110, 112, 117, 116, + 46, 117, 118, 41, 59, 13, + 10, 125, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 47, 47, + 32, 118, 101, 114, 116, 101, + 120, 46, 104, 108, 115, 108, + 13, 10, 47, 47, 32, 65, + 117, 116, 104, 111, 114, 58, + 32, 97, 98, 114, 97, 109, + 97, 110, 110, 13, 10, 13, + 10, 115, 116, 114, 117, 99, + 116, 32, 86, 83, 95, 73, + 110, 112, 117, 116, 13, 10, + 123, 13, 10, 9, 102, 108, + 111, 97, 116, 52, 32, 112, + 111, 115, 105, 116, 105, 111, + 110, 32, 58, 32, 80, 79, + 83, 73, 84, 73, 79, 78, + 59, 13, 10, 9, 102, 108, + 111, 97, 116, 50, 32, 117, + 118, 32, 58, 32, 84, 69, + 88, 67, 79, 79, 82, 68, + 59, 13, 10, 125, 59, 13, + 10, 13, 10, 115, 116, 114, + 117, 99, 116, 32, 80, 83, + 95, 73, 110, 112, 117, 116, + 13, 10, 123, 13, 10, 9, + 102, 108, 111, 97, 116, 52, + 32, 112, 111, 115, 105, 116, + 105, 111, 110, 32, 58, 32, + 83, 86, 95, 80, 79, 83, + 73, 84, 73, 79, 78, 59, + 13, 10, 9, 102, 108, 111, + 97, 116, 50, 32, 117, 118, + 32, 58, 32, 84, 69, 88, + 67, 79, 79, 82, 68, 59, + 13, 10, 125, 59, 13, 10, + 13, 10, 102, 108, 111, 97, + 116, 52, 120, 52, 32, 116, + 114, 97, 110, 115, 108, 97, + 116, 101, 77, 97, 116, 114, + 105, 120, 40, 102, 108, 111, + 97, 116, 51, 32, 116, 114, + 97, 110, 115, 108, 97, 116, + 105, 111, 110, 41, 13, 10, + 123, 13, 10, 9, 114, 101, + 116, 117, 114, 110, 32, 102, + 108, 111, 97, 116, 52, 120, + 52, 40, 13, 10, 9, 9, + 102, 108, 111, 97, 116, 52, + 40, 49, 46, 48, 102, 44, + 32, 48, 46, 48, 102, 44, + 32, 48, 46, 48, 102, 44, + 32, 48, 46, 48, 102, 41, + 44, 13, 10, 9, 9, 102, + 108, 111, 97, 116, 52, 40, + 48, 46, 48, 102, 44, 32, + 49, 46, 48, 102, 44, 32, + 48, 46, 48, 102, 44, 32, + 48, 46, 48, 102, 41, 44, + 13, 10, 9, 9, 102, 108, + 111, 97, 116, 52, 40, 48, + 46, 48, 102, 44, 32, 48, + 46, 48, 102, 44, 32, 49, + 46, 48, 102, 44, 32, 48, + 46, 48, 102, 41, 44, 13, + 10, 9, 9, 102, 108, 111, + 97, 116, 52, 40, 116, 114, + 97, 110, 115, 108, 97, 116, + 105, 111, 110, 46, 120, 44, + 32, 116, 114, 97, 110, 115, + 108, 97, 116, 105, 111, 110, + 46, 121, 44, 32, 116, 114, + 97, 110, 115, 108, 97, 116, + 105, 111, 110, 46, 122, 44, + 32, 49, 46, 48, 102, 41, + 13, 10, 9, 9, 41, 59, + 13, 10, 125, 13, 10, 13, + 10, 102, 108, 111, 97, 116, + 52, 120, 52, 32, 115, 99, + 97, 108, 108, 105, 110, 103, + 77, 97, 116, 114, 105, 120, + 40, 102, 108, 111, 97, 116, + 51, 32, 115, 99, 97, 108, + 108, 105, 110, 103, 41, 13, + 10, 123, 13, 10, 9, 114, + 101, 116, 117, 114, 110, 32, + 102, 108, 111, 97, 116, 52, + 120, 52, 40, 13, 10, 9, + 9, 102, 108, 111, 97, 116, + 52, 40, 115, 99, 97, 108, + 108, 105, 110, 103, 91, 48, + 93, 44, 32, 48, 46, 48, + 102, 44, 32, 48, 46, 48, + 102, 44, 32, 48, 46, 48, + 102, 41, 44, 13, 10, 9, + 9, 102, 108, 111, 97, 116, + 52, 40, 48, 46, 48, 102, + 44, 32, 115, 99, 97, 108, + 108, 105, 110, 103, 91, 49, + 93, 44, 32, 48, 46, 48, + 102, 44, 32, 48, 46, 48, + 102, 41, 44, 13, 10, 9, + 9, 102, 108, 111, 97, 116, + 52, 40, 48, 46, 48, 102, + 44, 32, 48, 46, 48, 102, + 44, 32, 115, 99, 97, 108, + 108, 105, 110, 103, 91, 50, + 93, 44, 32, 48, 46, 48, + 102, 41, 44, 13, 10, 9, + 9, 102, 108, 111, 97, 116, + 52, 40, 48, 46, 48, 102, + 44, 32, 48, 46, 48, 102, + 44, 32, 48, 46, 48, 102, + 44, 32, 49, 46, 48, 102, + 41, 13, 10, 9, 9, 41, + 59, 13, 10, 125, 13, 10, + 13, 10, 102, 108, 111, 97, + 116, 52, 120, 52, 32, 105, + 100, 101, 110, 116, 105, 116, + 121, 77, 97, 116, 114, 105, + 120, 52, 120, 52, 40, 41, + 13, 10, 123, 13, 10, 9, + 114, 101, 116, 117, 114, 110, + 32, 102, 108, 111, 97, 116, + 52, 120, 52, 40, 13, 10, + 9, 9, 49, 46, 48, 44, + 32, 48, 46, 48, 44, 32, + 48, 46, 48, 44, 32, 48, + 46, 48, 44, 13, 10, 9, + 9, 48, 46, 48, 44, 32, + 49, 46, 48, 44, 32, 48, + 46, 48, 44, 32, 48, 46, + 48, 44, 13, 10, 9, 9, + 48, 46, 48, 44, 32, 48, + 46, 48, 44, 32, 49, 46, + 48, 44, 32, 48, 46, 48, + 44, 13, 10, 9, 9, 48, + 46, 48, 44, 32, 48, 46, + 48, 44, 32, 48, 46, 48, + 44, 32, 49, 46, 48, 13, + 10, 9, 9, 41, 59, 13, + 10, 125, 13, 10, 13, 10, + 102, 108, 111, 97, 116, 52, + 120, 52, 32, 114, 111, 116, + 97, 116, 101, 88, 77, 97, + 116, 114, 105, 120, 40, 102, + 108, 111, 97, 116, 32, 97, + 110, 103, 108, 101, 41, 32, + 123, 13, 10, 9, 102, 108, + 111, 97, 116, 32, 115, 32, + 61, 32, 115, 105, 110, 40, + 97, 110, 103, 108, 101, 41, + 59, 13, 10, 9, 102, 108, + 111, 97, 116, 32, 99, 32, + 61, 32, 99, 111, 115, 40, + 97, 110, 103, 108, 101, 41, + 59, 13, 10, 9, 114, 101, + 116, 117, 114, 110, 32, 102, + 108, 111, 97, 116, 52, 120, + 52, 40, 13, 10, 9, 9, + 49, 44, 32, 48, 44, 32, + 48, 44, 32, 48, 44, 13, + 10, 9, 9, 48, 44, 32, + 99, 44, 32, 45, 115, 44, + 32, 48, 44, 13, 10, 9, + 9, 48, 44, 32, 115, 44, + 32, 99, 44, 32, 48, 44, + 13, 10, 9, 9, 48, 44, + 32, 48, 44, 32, 48, 44, + 32, 49, 13, 10, 9, 9, + 41, 59, 13, 10, 125, 13, + 10, 13, 10, 102, 108, 111, + 97, 116, 52, 120, 52, 32, + 114, 111, 116, 97, 116, 101, + 89, 77, 97, 116, 114, 105, + 120, 40, 102, 108, 111, 97, + 116, 32, 97, 110, 103, 108, + 101, 41, 13, 10, 123, 13, + 10, 9, 102, 108, 111, 97, + 116, 32, 115, 32, 61, 32, + 115, 105, 110, 40, 97, 110, + 103, 108, 101, 41, 59, 13, + 10, 9, 102, 108, 111, 97, + 116, 32, 99, 32, 61, 32, + 99, 111, 115, 40, 97, 110, + 103, 108, 101, 41, 59, 13, + 10, 9, 114, 101, 116, 117, + 114, 110, 32, 102, 108, 111, + 97, 116, 52, 120, 52, 40, + 13, 10, 9, 9, 99, 44, + 32, 48, 44, 32, 45, 115, + 44, 32, 48, 44, 13, 10, + 9, 9, 48, 44, 32, 49, + 44, 32, 48, 44, 32, 48, + 44, 13, 10, 9, 9, 115, + 44, 32, 48, 44, 32, 99, + 44, 32, 48, 44, 13, 10, + 9, 9, 48, 44, 32, 48, + 44, 32, 48, 44, 32, 49, + 13, 10, 9, 9, 41, 59, + 13, 10, 125, 13, 10, 13, + 10, 102, 108, 111, 97, 116, + 52, 120, 52, 32, 114, 111, + 116, 97, 116, 101, 90, 77, + 97, 116, 114, 105, 120, 40, + 102, 108, 111, 97, 116, 32, + 97, 110, 103, 108, 101, 41, + 13, 10, 123, 13, 10, 9, + 102, 108, 111, 97, 116, 32, + 115, 32, 61, 32, 115, 105, + 110, 40, 97, 110, 103, 108, + 101, 41, 59, 13, 10, 9, + 102, 108, 111, 97, 116, 32, + 99, 32, 61, 32, 99, 111, + 115, 40, 97, 110, 103, 108, + 101, 41, 59, 13, 10, 9, + 114, 101, 116, 117, 114, 110, + 32, 102, 108, 111, 97, 116, + 52, 120, 52, 40, 13, 10, + 9, 9, 99, 44, 32, 115, + 44, 32, 48, 46, 48, 102, + 44, 32, 48, 46, 48, 102, + 44, 13, 10, 9, 9, 45, + 115, 44, 32, 99, 44, 32, + 48, 46, 48, 102, 44, 32, + 48, 46, 48, 102, 44, 13, + 10, 9, 9, 48, 46, 48, + 102, 44, 32, 48, 46, 48, + 102, 44, 32, 49, 46, 48, + 44, 32, 48, 46, 48, 44, + 13, 10, 9, 9, 48, 46, + 48, 102, 44, 32, 48, 46, + 48, 44, 32, 48, 46, 48, + 44, 32, 49, 46, 48, 13, + 10, 9, 9, 41, 59, 13, + 10, 125, 13, 10, 13, 10, + 99, 98, 117, 102, 102, 101, + 114, 32, 99, 98, 80, 101, + 114, 70, 114, 97, 109, 101, + 32, 58, 32, 114, 101, 103, + 105, 115, 116, 101, 114, 40, + 98, 48, 41, 13, 10, 123, + 13, 10, 9, 102, 108, 111, + 97, 116, 52, 120, 52, 32, + 103, 95, 119, 111, 114, 108, + 100, 86, 105, 101, 119, 77, + 97, 116, 114, 105, 120, 59, + 13, 10, 125, 59, 13, 10, + 13, 10, 99, 98, 117, 102, + 102, 101, 114, 32, 99, 98, + 80, 101, 114, 79, 98, 106, + 101, 99, 116, 32, 58, 32, + 114, 101, 103, 105, 115, 116, + 101, 114, 40, 98, 49, 41, + 13, 10, 123, 13, 10, 9, + 102, 108, 111, 97, 116, 51, + 32, 103, 95, 112, 111, 115, + 105, 116, 105, 111, 110, 44, + 32, 103, 95, 115, 99, 97, + 108, 108, 105, 110, 103, 44, + 32, 103, 95, 114, 111, 116, + 97, 116, 101, 44, 32, 114, + 111, 116, 97, 116, 101, 67, + 101, 110, 116, 101, 114, 59, + 13, 10, 125, 59, 13, 10, + 13, 10, 80, 83, 95, 73, + 110, 112, 117, 116, 32, 109, + 97, 105, 110, 40, 86, 83, + 95, 73, 110, 112, 117, 116, + 32, 105, 110, 112, 117, 116, + 41, 13, 10, 123, 13, 10, + 9, 102, 108, 111, 97, 116, + 52, 120, 52, 32, 111, 98, + 106, 101, 99, 116, 77, 97, + 116, 114, 105, 120, 32, 61, + 32, 105, 100, 101, 110, 116, + 105, 116, 121, 77, 97, 116, + 114, 105, 120, 52, 120, 52, + 40, 41, 59, 13, 10, 9, + 111, 98, 106, 101, 99, 116, + 77, 97, 116, 114, 105, 120, + 32, 61, 32, 109, 117, 108, + 40, 111, 98, 106, 101, 99, + 116, 77, 97, 116, 114, 105, + 120, 44, 32, 115, 99, 97, + 108, 108, 105, 110, 103, 77, + 97, 116, 114, 105, 120, 40, + 103, 95, 115, 99, 97, 108, + 108, 105, 110, 103, 41, 41, + 59, 13, 10, 9, 102, 108, + 111, 97, 116, 52, 120, 52, + 32, 114, 111, 116, 97, 116, + 101, 67, 101, 110, 116, 101, + 114, 78, 32, 61, 32, 116, + 114, 97, 110, 115, 108, 97, + 116, 101, 77, 97, 116, 114, + 105, 120, 40, 114, 111, 116, + 97, 116, 101, 67, 101, 110, + 116, 101, 114, 32, 42, 32, + 45, 49, 41, 59, 13, 10, + 9, 111, 98, 106, 101, 99, + 116, 77, 97, 116, 114, 105, + 120, 32, 61, 32, 109, 117, + 108, 40, 111, 98, 106, 101, + 99, 116, 77, 97, 116, 114, + 105, 120, 44, 32, 114, 111, + 116, 97, 116, 101, 67, 101, + 110, 116, 101, 114, 78, 41, + 59, 13, 10, 9, 102, 111, + 114, 32, 40, 105, 110, 116, + 32, 105, 32, 61, 32, 50, + 59, 32, 105, 32, 62, 61, + 32, 48, 59, 32, 105, 45, + 45, 41, 13, 10, 9, 9, + 111, 98, 106, 101, 99, 116, + 77, 97, 116, 114, 105, 120, + 32, 61, 32, 109, 117, 108, + 40, 111, 98, 106, 101, 99, + 116, 77, 97, 116, 114, 105, + 120, 44, 32, 114, 111, 116, + 97, 116, 101, 90, 77, 97, + 116, 114, 105, 120, 40, 103, + 95, 114, 111, 116, 97, 116, + 101, 91, 105, 93, 41, 41, + 59, 13, 10, 13, 10, 9, + 111, 98, 106, 101, 99, 116, + 77, 97, 116, 114, 105, 120, + 32, 61, 32, 109, 117, 108, + 40, 111, 98, 106, 101, 99, + 116, 77, 97, 116, 114, 105, + 120, 44, 32, 116, 114, 97, + 110, 115, 108, 97, 116, 101, + 77, 97, 116, 114, 105, 120, + 40, 114, 111, 116, 97, 116, + 101, 67, 101, 110, 116, 101, + 114, 41, 41, 59, 13, 10, + 9, 111, 98, 106, 101, 99, + 116, 77, 97, 116, 114, 105, + 120, 32, 61, 32, 109, 117, + 108, 40, 111, 98, 106, 101, + 99, 116, 77, 97, 116, 114, + 105, 120, 44, 32, 116, 114, + 97, 110, 115, 108, 97, 116, + 101, 77, 97, 116, 114, 105, + 120, 40, 103, 95, 112, 111, + 115, 105, 116, 105, 111, 110, + 41, 41, 59, 13, 10, 9, + 111, 98, 106, 101, 99, 116, + 77, 97, 116, 114, 105, 120, + 32, 61, 32, 109, 117, 108, + 40, 111, 98, 106, 101, 99, + 116, 77, 97, 116, 114, 105, + 120, 44, 32, 116, 114, 97, + 110, 115, 112, 111, 115, 101, + 40, 103, 95, 119, 111, 114, + 108, 100, 86, 105, 101, 119, + 77, 97, 116, 114, 105, 120, + 41, 41, 59, 13, 10, 13, + 10, 9, 80, 83, 95, 73, + 110, 112, 117, 116, 32, 111, + 117, 116, 112, 117, 116, 59, + 13, 10, 9, 111, 117, 116, + 112, 117, 116, 46, 112, 111, + 115, 105, 116, 105, 111, 110, + 32, 61, 32, 109, 117, 108, + 40, 105, 110, 112, 117, 116, + 46, 112, 111, 115, 105, 116, + 105, 111, 110, 44, 32, 111, + 98, 106, 101, 99, 116, 77, + 97, 116, 114, 105, 120, 41, + 59, 13, 10, 9, 111, 117, + 116, 112, 117, 116, 46, 117, + 118, 32, 61, 32, 105, 110, + 112, 117, 116, 46, 117, 118, + 59, 13, 10, 9, 114, 101, + 116, 117, 114, 110, 32, 111, + 117, 116, 112, 117, 116, 59, + 13, 10, 125, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 254, 239, 254, 239, + 1, 0, 0, 0, 209, 10, + 0, 0, 0, 67, 58, 92, + 85, 115, 101, 114, 115, 92, + 66, 65, 82, 69, 81, 92, + 68, 111, 99, 117, 109, 101, + 110, 116, 115, 92, 86, 105, + 115, 117, 97, 108, 32, 83, + 116, 117, 100, 105, 111, 32, + 50, 48, 49, 53, 92, 80, + 114, 111, 106, 101, 99, 116, + 115, 92, 84, 97, 110, 107, + 115, 45, 87, 97, 114, 92, + 115, 114, 99, 92, 99, 111, + 109, 109, 111, 110, 92, 112, + 105, 120, 101, 108, 46, 104, + 108, 115, 108, 0, 0, 99, + 58, 92, 117, 115, 101, 114, + 115, 92, 98, 97, 114, 101, + 113, 92, 100, 111, 99, 117, + 109, 101, 110, 116, 115, 92, + 118, 105, 115, 117, 97, 108, + 32, 115, 116, 117, 100, 105, + 111, 32, 50, 48, 49, 53, + 92, 112, 114, 111, 106, 101, + 99, 116, 115, 92, 116, 97, + 110, 107, 115, 45, 119, 97, + 114, 92, 115, 114, 99, 92, + 99, 111, 109, 109, 111, 110, + 92, 112, 105, 120, 101, 108, + 46, 104, 108, 115, 108, 0, + 67, 58, 92, 85, 115, 101, + 114, 115, 92, 66, 65, 82, + 69, 81, 92, 68, 111, 99, + 117, 109, 101, 110, 116, 115, + 92, 86, 105, 115, 117, 97, + 108, 32, 83, 116, 117, 100, + 105, 111, 32, 50, 48, 49, + 53, 92, 80, 114, 111, 106, + 101, 99, 116, 115, 92, 84, + 97, 110, 107, 115, 45, 87, + 97, 114, 92, 115, 114, 99, + 92, 99, 111, 109, 109, 111, + 110, 92, 118, 101, 114, 116, + 101, 120, 46, 104, 108, 115, + 108, 0, 99, 58, 92, 117, + 115, 101, 114, 115, 92, 98, + 97, 114, 101, 113, 92, 100, + 111, 99, 117, 109, 101, 110, + 116, 115, 92, 118, 105, 115, + 117, 97, 108, 32, 115, 116, + 117, 100, 105, 111, 32, 50, + 48, 49, 53, 92, 112, 114, + 111, 106, 101, 99, 116, 115, + 92, 116, 97, 110, 107, 115, + 45, 119, 97, 114, 92, 115, + 114, 99, 92, 99, 111, 109, + 109, 111, 110, 92, 118, 101, + 114, 116, 101, 120, 46, 104, + 108, 115, 108, 0, 35, 105, + 110, 99, 108, 117, 100, 101, + 32, 34, 118, 101, 114, 116, + 101, 120, 46, 104, 108, 115, + 108, 34, 13, 10, 13, 10, + 84, 101, 120, 116, 117, 114, + 101, 50, 68, 32, 103, 84, + 101, 120, 116, 117, 114, 101, + 59, 13, 10, 83, 97, 109, + 112, 108, 101, 114, 83, 116, + 97, 116, 101, 32, 103, 83, + 97, 109, 112, 108, 101, 114, + 83, 116, 97, 116, 101, 59, + 13, 10, 13, 10, 102, 108, + 111, 97, 116, 52, 32, 109, + 97, 105, 110, 40, 80, 83, + 95, 73, 110, 112, 117, 116, + 32, 105, 110, 112, 117, 116, + 41, 32, 58, 32, 83, 86, + 95, 84, 65, 82, 71, 69, + 84, 13, 10, 123, 13, 10, + 9, 114, 101, 116, 117, 114, + 110, 32, 103, 84, 101, 120, + 116, 117, 114, 101, 46, 83, + 97, 109, 112, 108, 101, 40, + 103, 83, 97, 109, 112, 108, + 101, 114, 83, 116, 27, 226, + 48, 1, 172, 0, 0, 0, + 112, 81, 209, 18, 48, 13, + 218, 1, 1, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 2, 0, 0, 0, + 4, 0, 0, 0, 1, 0, + 0, 0, 12, 0, 0, 0, + 0, 0, 0, 0, 2, 1, + 0, 0, 40, 0, 0, 0, + 27, 226, 48, 1, 144, 154, + 8, 28, 201, 8, 0, 0, + 172, 0, 0, 0, 86, 0, + 0, 0, 2, 1, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 87, 0, 0, 0, 40, 0, + 0, 0, 27, 226, 48, 1, + 252, 105, 32, 235, 174, 0, + 0, 0, 1, 0, 0, 0, + 86, 0, 0, 0, 87, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 4, 0, 0, 0, 74, 0, + 60, 17, 16, 1, 0, 0, + 0, 1, 6, 0, 3, 0, + 179, 72, 128, 37, 6, 0, + 3, 0, 179, 72, 128, 37, + 77, 105, 99, 114, 111, 115, + 111, 102, 116, 32, 40, 82, + 41, 32, 72, 76, 83, 76, + 32, 83, 104, 97, 100, 101, + 114, 32, 67, 111, 109, 112, + 105, 108, 101, 114, 32, 54, + 46, 51, 46, 57, 54, 48, + 48, 46, 49, 56, 54, 49, + 49, 0, 54, 0, 61, 17, + 1, 104, 108, 115, 108, 70, + 108, 97, 103, 115, 0, 48, + 120, 53, 0, 104, 108, 115, + 108, 84, 97, 114, 103, 101, + 116, 0, 112, 115, 95, 53, + 95, 48, 0, 104, 108, 115, + 108, 69, 110, 116, 114, 121, + 0, 109, 97, 105, 110, 0, + 0, 0, 0, 0, 42, 0, + 16, 17, 0, 0, 0, 0, + 16, 2, 0, 0, 0, 0, + 0, 0, 48, 0, 0, 0, + 0, 0, 0, 0, 48, 0, + 0, 0, 6, 16, 0, 0, + 64, 0, 0, 0, 1, 0, + 160, 109, 97, 105, 110, 0, + 46, 0, 62, 17, 3, 16, + 0, 0, 9, 0, 105, 110, + 112, 117, 116, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 22, 0, 80, 17, 1, 0, + 5, 0, 0, 0, 4, 0, + 64, 0, 0, 0, 1, 0, + 48, 0, 0, 0, 0, 0, + 22, 0, 80, 17, 1, 0, + 5, 0, 4, 0, 4, 0, + 64, 0, 0, 0, 1, 0, + 48, 0, 4, 0, 0, 0, + 22, 0, 80, 17, 1, 0, + 5, 0, 8, 0, 4, 0, + 64, 0, 0, 0, 1, 0, + 48, 0, 8, 0, 0, 0, + 22, 0, 80, 17, 1, 0, + 5, 0, 12, 0, 4, 0, + 64, 0, 0, 0, 1, 0, + 48, 0, 12, 0, 0, 0, + 22, 0, 80, 17, 1, 0, + 5, 0, 16, 0, 4, 0, + 64, 0, 0, 0, 1, 0, + 48, 0, 16, 0, 0, 0, + 22, 0, 80, 17, 1, 0, + 5, 0, 20, 0, 4, 0, + 64, 0, 0, 0, 1, 0, + 48, 0, 20, 0, 0, 0, + 58, 0, 62, 17, 5, 16, + 0, 0, 136, 0, 60, 109, + 97, 105, 110, 32, 114, 101, + 116, 117, 114, 110, 32, 118, + 97, 108, 117, 101, 62, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 22, 0, 80, 17, 2, 0, + 5, 0, 0, 0, 4, 0, + 64, 0, 0, 0, 1, 0, + 48, 0, 0, 0, 0, 0, + 22, 0, 80, 17, 2, 0, + 5, 0, 4, 0, 4, 0, + 64, 0, 0, 0, 1, 0, + 48, 0, 4, 0, 0, 0, + 22, 0, 80, 17, 2, 0, + 5, 0, 8, 0, 4, 0, + 64, 0, 0, 0, 1, 0, + 48, 0, 8, 0, 0, 0, + 22, 0, 80, 17, 2, 0, + 5, 0, 12, 0, 4, 0, + 64, 0, 0, 0, 1, 0, + 48, 0, 12, 0, 0, 0, + 2, 0, 6, 0, 244, 0, + 0, 0, 48, 0, 0, 0, + 1, 0, 0, 0, 16, 1, + 74, 192, 73, 197, 81, 75, + 153, 104, 78, 91, 128, 231, + 85, 17, 232, 215, 0, 0, + 172, 0, 0, 0, 16, 1, + 115, 45, 152, 82, 6, 81, + 126, 167, 203, 228, 247, 85, + 43, 5, 158, 177, 0, 0, + 242, 0, 0, 0, 72, 0, + 0, 0, 0, 0, 0, 0, + 1, 0, 1, 0, 112, 0, + 0, 0, 0, 0, 0, 0, + 4, 0, 0, 0, 60, 0, + 0, 0, 64, 0, 0, 0, + 8, 0, 0, 128, 64, 0, + 0, 0, 8, 0, 0, 0, + 108, 0, 0, 0, 8, 0, + 0, 128, 108, 0, 0, 0, + 8, 0, 0, 0, 2, 0, + 49, 0, 9, 0, 48, 0, + 2, 0, 49, 0, 2, 0, + 49, 0, 246, 0, 0, 0, + 4, 0, 0, 0, 0, 0, + 0, 0, 12, 0, 0, 0, + 0, 0, 0, 0, 20, 0, + 0, 0, 52, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 11, 202, + 49, 1, 56, 0, 0, 0, + 0, 16, 0, 0, 13, 16, + 0, 0, 240, 0, 0, 0, + 11, 0, 255, 255, 4, 0, + 0, 0, 255, 255, 3, 0, + 0, 0, 0, 0, 52, 0, + 0, 0, 52, 0, 0, 0, + 8, 0, 0, 0, 60, 0, + 0, 0, 0, 0, 0, 0, + 22, 0, 27, 21, 64, 0, + 0, 0, 4, 0, 0, 0, + 16, 0, 102, 108, 111, 97, + 116, 52, 0, 243, 242, 241, + 22, 0, 27, 21, 64, 0, + 0, 0, 2, 0, 0, 0, + 8, 0, 102, 108, 111, 97, + 116, 50, 0, 243, 242, 241, + 38, 0, 3, 18, 13, 21, + 3, 0, 0, 16, 0, 0, + 0, 0, 112, 111, 115, 105, + 116, 105, 111, 110, 0, 241, + 13, 21, 3, 0, 1, 16, + 0, 0, 16, 0, 117, 118, + 0, 243, 242, 241, 30, 0, + 5, 21, 2, 0, 0, 0, + 2, 16, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 24, 0, 80, 83, 95, 73, + 110, 112, 117, 116, 0, 241, + 10, 0, 1, 18, 1, 0, + 0, 0, 3, 16, 0, 0, + 10, 0, 24, 21, 0, 16, + 0, 0, 1, 0, 1, 0, + 14, 0, 8, 16, 5, 16, + 0, 0, 23, 0, 1, 0, + 4, 16, 0, 0, 14, 0, + 23, 21, 0, 16, 0, 0, + 3, 2, 48, 119, 0, 0, + 242, 241, 10, 0, 24, 21, + 7, 16, 0, 0, 1, 0, + 1, 0, 10, 0, 24, 21, + 8, 16, 0, 0, 1, 0, + 0, 2, 14, 0, 23, 21, + 0, 0, 0, 0, 10, 2, + 0, 0, 0, 0, 242, 241, + 10, 0, 24, 21, 10, 16, + 0, 0, 1, 0, 1, 0, + 10, 0, 24, 21, 11, 16, + 0, 0, 1, 0, 0, 2, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 11, 202, 49, 1, 56, 0, + 0, 0, 0, 16, 0, 0, + 0, 16, 0, 0, 0, 0, + 0, 0, 12, 0, 255, 255, + 4, 0, 0, 0, 255, 255, + 3, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 114, 101, 116, 117, + 114, 110, 32, 102, 108, 111, + 97, 116, 52, 120, 52, 40, + 13, 10, 9, 9, 102, 108, + 111, 97, 116, 52, 40, 115, + 99, 97, 108, 108, 105, 110, + 103, 91, 48, 93, 44, 32, + 48, 46, 48, 102, 44, 32, + 48, 46, 48, 102, 44, 32, + 48, 46, 48, 102, 41, 44, + 13, 10, 9, 9, 102, 108, + 111, 97, 116, 52, 40, 48, + 46, 48, 102, 44, 32, 115, + 99, 97, 108, 108, 105, 110, + 103, 91, 49, 93, 44, 32, + 48, 46, 48, 102, 44, 32, + 48, 46, 48, 102, 41, 44, + 13, 10, 9, 9, 102, 108, + 111, 97, 116, 52, 40, 48, + 46, 48, 102, 44, 32, 48, + 46, 48, 102, 44, 32, 115, + 99, 97, 108, 108, 105, 110, + 103, 91, 50, 93, 44, 32, + 48, 46, 48, 102, 41, 44, + 13, 10, 9, 9, 102, 108, + 111, 97, 116, 52, 40, 48, + 46, 48, 102, 44, 32, 48, + 46, 48, 102, 44, 32, 48, + 46, 48, 102, 44, 32, 49, + 46, 48, 102, 41, 13, 10, + 9, 9, 41, 59, 13, 10, + 125, 13, 10, 13, 10, 102, + 108, 111, 97, 116, 52, 120, + 52, 32, 105, 100, 101, 110, + 116, 105, 116, 121, 77, 97, + 116, 114, 105, 120, 52, 120, + 52, 40, 41, 13, 10, 123, + 13, 10, 9, 114, 101, 116, + 117, 114, 110, 32, 102, 108, + 111, 97, 116, 52, 120, 52, + 40, 13, 10, 9, 9, 49, + 46, 48, 44, 32, 48, 46, + 48, 44, 32, 48, 46, 48, + 44, 32, 48, 46, 48, 44, + 13, 10, 9, 9, 48, 46, + 48, 44, 32, 49, 46, 48, + 44, 32, 48, 46, 48, 44, + 32, 48, 46, 48, 44, 13, + 10, 9, 9, 48, 46, 48, + 44, 32, 48, 46, 48, 44, + 32, 49, 46, 48, 44, 32, + 48, 46, 48, 44, 13, 10, + 9, 9, 48, 46, 48, 44, + 32, 48, 46, 48, 44, 32, + 48, 46, 48, 44, 32, 49, + 46, 48, 13, 10, 9, 9, + 41, 59, 13, 10, 125, 13, + 10, 13, 10, 102, 108, 111, + 97, 116, 52, 120, 52, 32, + 114, 111, 116, 97, 116, 101, + 88, 77, 97, 116, 114, 105, + 120, 40, 102, 108, 111, 97, + 116, 32, 97, 110, 103, 108, + 101, 41, 32, 123, 13, 10, + 9, 102, 108, 111, 97, 116, + 32, 115, 32, 61, 32, 115, + 105, 110, 40, 97, 110, 103, + 108, 101, 41, 59, 13, 10, + 9, 102, 108, 111, 97, 116, + 32, 99, 32, 61, 32, 99, + 111, 115, 40, 97, 110, 103, + 108, 101, 41, 59, 13, 10, + 9, 114, 101, 116, 117, 114, + 110, 32, 102, 108, 111, 97, + 116, 52, 120, 52, 40, 13, + 10, 9, 9, 49, 44, 32, + 48, 44, 32, 48, 44, 32, + 48, 44, 13, 10, 9, 9, + 48, 44, 32, 99, 44, 32, + 45, 115, 44, 32, 48, 44, + 13, 10, 9, 9, 48, 44, + 32, 115, 44, 32, 99, 44, + 32, 48, 44, 13, 10, 9, + 9, 48, 44, 32, 48, 44, + 32, 48, 44, 32, 49, 13, + 10, 9, 9, 41, 59, 13, + 10, 125, 13, 10, 13, 10, + 102, 108, 111, 97, 116, 52, + 120, 52, 32, 114, 111, 116, + 97, 116, 101, 89, 77, 97, + 116, 114, 105, 120, 40, 102, + 108, 111, 97, 116, 32, 97, + 110, 103, 108, 101, 41, 13, + 10, 123, 13, 10, 9, 102, + 108, 111, 97, 116, 32, 115, + 32, 61, 32, 115, 105, 110, + 40, 97, 110, 103, 108, 101, + 41, 59, 13, 10, 9, 102, + 108, 111, 97, 116, 32, 99, + 32, 61, 32, 99, 111, 115, + 40, 97, 110, 103, 108, 101, + 41, 59, 13, 10, 9, 114, + 101, 116, 117, 114, 110, 32, + 102, 108, 111, 97, 116, 52, + 120, 52, 40, 13, 10, 9, + 9, 99, 44, 32, 48, 44, + 32, 45, 115, 44, 32, 48, + 44, 13, 10, 9, 9, 48, + 44, 32, 49, 44, 32, 48, + 44, 32, 48, 44, 13, 10, + 9, 9, 115, 44, 32, 48, + 44, 32, 99, 44, 32, 48, + 44, 13, 10, 9, 9, 48, + 44, 32, 48, 44, 32, 48, + 44, 32, 49, 13, 10, 9, + 9, 41, 59, 13, 10, 125, + 13, 10, 13, 10, 102, 108, + 111, 97, 116, 52, 120, 52, + 32, 114, 111, 116, 97, 116, + 101, 90, 77, 97, 116, 114, + 105, 120, 40, 102, 108, 111, + 97, 116, 32, 97, 110, 103, + 108, 101, 41, 13, 10, 123, + 13, 10, 9, 102, 108, 111, + 97, 116, 32, 115, 32, 61, + 32, 115, 105, 110, 40, 97, + 110, 103, 108, 101, 41, 59, + 13, 10, 9, 102, 108, 111, + 97, 116, 32, 99, 32, 61, + 32, 99, 111, 115, 40, 97, + 110, 103, 108, 101, 41, 59, + 13, 10, 9, 114, 101, 116, + 117, 114, 110, 32, 102, 108, + 111, 97, 116, 52, 120, 52, + 40, 13, 10, 9, 9, 99, + 44, 32, 115, 44, 32, 48, + 46, 48, 102, 44, 32, 48, + 46, 48, 102, 44, 13, 10, + 9, 9, 45, 115, 44, 32, + 99, 44, 32, 48, 46, 48, + 102, 44, 32, 48, 46, 48, + 102, 44, 13, 10, 9, 9, + 48, 46, 48, 102, 44, 32, + 48, 46, 48, 102, 44, 32, + 49, 46, 48, 44, 32, 48, + 46, 48, 44, 13, 10, 9, + 9, 48, 46, 48, 102, 44, + 32, 48, 46, 48, 44, 32, + 48, 46, 48, 44, 32, 49, + 46, 48, 13, 10, 9, 9, + 41, 59, 13, 10, 125, 13, + 10, 13, 10, 99, 98, 117, + 102, 102, 101, 114, 32, 99, + 98, 80, 101, 114, 70, 114, + 97, 109, 101, 32, 58, 32, + 114, 101, 103, 105, 115, 116, + 101, 114, 40, 98, 48, 41, + 13, 10, 123, 13, 10, 9, + 102, 108, 111, 97, 116, 52, + 120, 52, 32, 103, 95, 119, + 111, 114, 108, 100, 86, 105, + 101, 119, 77, 97, 116, 114, + 105, 120, 59, 13, 10, 125, + 59, 13, 10, 13, 10, 99, + 98, 117, 102, 102, 101, 114, + 32, 99, 98, 80, 101, 114, + 79, 98, 106, 101, 99, 116, + 32, 58, 32, 114, 101, 103, + 105, 115, 116, 101, 114, 40, + 98, 49, 41, 13, 10, 123, + 13, 10, 9, 102, 108, 111, + 97, 116, 51, 32, 103, 95, + 112, 111, 115, 105, 116, 105, + 111, 110, 44, 32, 103, 95, + 115, 99, 97, 108, 108, 105, + 110, 103, 44, 32, 103, 95, + 114, 111, 116, 97, 116, 101, + 44, 32, 114, 111, 116, 97, + 116, 101, 67, 101, 110, 116, + 101, 114, 59, 13, 10, 125, + 59, 13, 10, 13, 10, 80, + 83, 95, 73, 110, 112, 117, + 116, 32, 109, 97, 105, 110, + 40, 86, 83, 95, 73, 110, + 112, 117, 116, 32, 105, 110, + 112, 117, 116, 41, 13, 10, + 123, 13, 10, 9, 102, 108, + 111, 97, 116, 52, 120, 52, + 32, 111, 98, 106, 101, 99, + 116, 77, 97, 116, 114, 105, + 120, 32, 61, 32, 105, 100, + 101, 110, 116, 105, 116, 121, + 77, 97, 116, 114, 105, 120, + 52, 120, 52, 40, 41, 59, + 13, 10, 9, 111, 98, 106, + 101, 99, 116, 77, 97, 116, + 114, 105, 120, 32, 61, 32, + 109, 117, 108, 40, 111, 98, + 106, 101, 99, 116, 77, 97, + 116, 114, 105, 120, 44, 32, + 115, 99, 97, 108, 108, 105, + 110, 103, 77, 97, 116, 114, + 105, 120, 40, 103, 95, 115, + 99, 97, 108, 108, 105, 110, + 103, 41, 41, 59, 13, 10, + 9, 102, 108, 111, 97, 116, + 52, 120, 52, 32, 114, 111, + 116, 97, 116, 101, 67, 101, + 110, 116, 101, 114, 78, 32, + 61, 32, 116, 114, 97, 110, + 115, 108, 97, 116, 101, 77, + 97, 116, 114, 105, 120, 40, + 114, 111, 116, 97, 116, 101, + 67, 101, 110, 116, 101, 114, + 32, 42, 32, 45, 49, 41, + 59, 13, 10, 9, 111, 98, + 106, 101, 99, 116, 77, 97, + 116, 114, 105, 120, 32, 61, + 32, 109, 117, 108, 40, 111, + 98, 106, 101, 99, 116, 77, + 97, 116, 114, 105, 120, 44, + 32, 114, 111, 116, 97, 116, + 101, 67, 101, 110, 116, 101, + 114, 78, 41, 59, 13, 10, + 9, 102, 111, 114, 32, 40, + 105, 110, 116, 32, 105, 32, + 61, 32, 50, 59, 32, 105, + 32, 62, 61, 32, 48, 59, + 32, 105, 45, 45, 41, 13, + 10, 9, 9, 111, 98, 106, + 101, 99, 116, 77, 97, 116, + 114, 105, 120, 32, 61, 32, + 109, 117, 108, 40, 111, 98, + 106, 101, 99, 116, 77, 97, + 116, 114, 105, 120, 44, 32, + 114, 111, 116, 97, 116, 101, + 90, 77, 97, 116, 114, 105, + 120, 40, 103, 95, 114, 111, + 116, 97, 116, 101, 91, 105, + 93, 41, 41, 59, 13, 10, + 13, 10, 9, 111, 98, 106, + 101, 99, 116, 77, 97, 116, + 114, 105, 120, 32, 61, 32, + 109, 117, 108, 40, 111, 98, + 106, 101, 99, 116, 77, 97, + 116, 114, 105, 120, 44, 32, + 116, 114, 97, 110, 115, 108, + 97, 116, 101, 77, 97, 116, + 114, 105, 120, 40, 114, 111, + 116, 97, 116, 101, 67, 101, + 110, 116, 101, 114, 41, 41, + 59, 13, 10, 9, 111, 98, + 106, 101, 99, 116, 77, 97, + 116, 114, 105, 120, 32, 61, + 32, 109, 117, 108, 40, 111, + 98, 106, 101, 99, 116, 77, + 97, 116, 114, 105, 120, 44, + 32, 116, 114, 97, 110, 115, + 108, 97, 116, 101, 77, 97, + 116, 114, 105, 120, 40, 103, + 95, 112, 111, 115, 105, 116, + 105, 111, 110, 41, 41, 59, + 13, 10, 9, 111, 98, 106, + 101, 99, 116, 77, 97, 116, + 114, 105, 120, 32, 61, 32, + 109, 117, 108, 40, 111, 98, + 106, 101, 99, 116, 77, 97, + 116, 114, 105, 120, 44, 32, + 116, 114, 97, 110, 115, 112, + 111, 115, 101, 40, 103, 95, + 119, 111, 114, 108, 100, 86, + 105, 101, 119, 77, 97, 116, + 114, 105, 120, 41, 41, 59, + 13, 10, 13, 10, 9, 80, + 83, 95, 73, 110, 112, 117, + 116, 32, 111, 117, 116, 112, + 117, 116, 59, 13, 10, 9, + 111, 117, 116, 112, 117, 116, + 46, 112, 111, 115, 105, 116, + 105, 111, 110, 32, 61, 32, + 109, 117, 108, 40, 105, 110, + 112, 117, 116, 46, 112, 111, + 115, 105, 116, 105, 111, 110, + 44, 32, 111, 98, 106, 101, + 99, 116, 77, 97, 116, 114, + 105, 120, 41, 59, 13, 10, + 9, 111, 117, 116, 112, 117, + 116, 46, 117, 118, 32, 61, + 32, 105, 110, 112, 117, 116, + 46, 117, 118, 59, 13, 10, + 9, 114, 101, 116, 117, 114, + 110, 32, 111, 117, 116, 112, + 117, 116, 59, 13, 10, 125, + 0, 11, 0, 0, 0, 0, + 0, 0, 0, 86, 0, 0, + 0, 7, 2, 0, 0, 88, + 1, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 1, + 0, 0, 0, 87, 0, 0, + 0, 172, 0, 0, 0, 2, + 1, 0, 0, 0, 0, 0, + 0, 7, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 68, 51, + 68, 83, 72, 68, 82, 0, + 112, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 32, 0, + 0, 96, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 255, 255, 255, 255, 26, 9, + 47, 241, 24, 0, 0, 0, + 16, 2, 0, 0, 1, 0, + 0, 0, 1, 0, 0, 0, + 21, 0, 0, 0, 1, 0, + 0, 0, 53, 0, 0, 0, + 1, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 32, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 128, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 16, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 12, 0, 0, 0, + 24, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 18, 0, + 37, 17, 0, 0, 0, 0, + 136, 0, 0, 0, 1, 0, + 109, 97, 105, 110, 0, 0, + 30, 0, 81, 17, 9, 16, + 0, 0, 7, 0, 255, 255, + 255, 255, 0, 0, 255, 255, + 255, 255, 103, 84, 101, 120, + 116, 117, 114, 101, 0, 0, + 0, 0, 34, 0, 81, 17, + 12, 16, 0, 0, 6, 0, + 255, 255, 255, 255, 255, 255, + 0, 0, 255, 255, 103, 83, + 97, 109, 112, 108, 101, 114, + 83, 116, 97, 116, 101, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 16, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 255, 255, + 255, 255, 26, 9, 47, 241, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 255, 255, 255, 255, + 119, 9, 49, 1, 1, 0, + 0, 0, 14, 0, 0, 139, + 15, 0, 221, 255, 16, 0, + 136, 66, 76, 0, 0, 0, + 32, 0, 0, 0, 44, 0, + 0, 0, 188, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 22, 0, 0, 0, + 25, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 1, 0, + 0, 0, 0, 0, 0, 0, + 112, 0, 0, 0, 32, 0, + 0, 96, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 2, 0, 10, 0, + 20, 2, 0, 0, 0, 0, + 0, 0, 148, 0, 0, 0, + 2, 0, 0, 0, 0, 220, + 102, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 109, 97, + 105, 110, 0, 110, 111, 110, + 101, 0, 0, 0, 45, 186, + 46, 241, 1, 0, 108, 0, + 0, 0, 0, 0, 112, 0, + 0, 0, 32, 0, 0, 96, + 0, 0, 116, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 2, 0, 2, 0, 7, 0, + 0, 0, 0, 0, 1, 0, + 255, 255, 255, 255, 0, 0, + 0, 0, 112, 0, 0, 0, + 8, 2, 0, 0, 0, 0, + 0, 0, 255, 255, 255, 255, + 0, 0, 0, 0, 255, 255, + 255, 255, 1, 0, 2, 0, + 0, 0, 2, 0, 0, 0, + 0, 0, 85, 0, 0, 0, + 67, 58, 92, 85, 115, 101, + 114, 115, 92, 66, 65, 82, + 69, 81, 92, 68, 111, 99, + 117, 109, 101, 110, 116, 115, + 92, 86, 105, 115, 117, 97, + 108, 32, 83, 116, 117, 100, + 105, 111, 32, 50, 48, 49, + 53, 92, 80, 114, 111, 106, + 101, 99, 116, 115, 92, 84, + 97, 110, 107, 115, 45, 87, + 97, 114, 92, 115, 114, 99, + 92, 99, 111, 109, 109, 111, + 110, 92, 112, 105, 120, 101, + 108, 46, 104, 108, 115, 108, + 0, 67, 58, 92, 85, 115, + 101, 114, 115, 92, 66, 65, + 82, 69, 81, 92, 68, 111, + 99, 117, 109, 101, 110, 116, + 115, 92, 86, 105, 115, 117, + 97, 108, 32, 83, 116, 117, + 100, 105, 111, 32, 50, 48, + 49, 53, 92, 80, 114, 111, + 106, 101, 99, 116, 115, 92, + 84, 97, 110, 107, 115, 45, + 87, 97, 114, 92, 115, 114, + 99, 92, 99, 111, 109, 109, + 111, 110, 92, 118, 101, 114, + 116, 101, 120, 46, 104, 108, + 115, 108, 0, 0, 254, 239, + 254, 239, 1, 0, 0, 0, + 1, 0, 0, 0, 0, 1, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 13, 0, 255, + 255, 255, 255, 255, 255, 255, + 255, 255, 255, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 148, 46, + 49, 1, 68, 2, 67, 101, + 1, 0, 0, 0, 121, 60, + 23, 247, 4, 8, 127, 66, + 161, 70, 70, 88, 77, 162, + 103, 112, 227, 0, 0, 0, + 47, 76, 105, 110, 107, 73, + 110, 102, 111, 0, 47, 110, + 97, 109, 101, 115, 0, 47, + 115, 114, 99, 47, 104, 101, + 97, 100, 101, 114, 98, 108, + 111, 99, 107, 0, 47, 115, + 114, 99, 47, 102, 105, 108, + 101, 115, 47, 99, 58, 92, + 117, 115, 101, 114, 115, 92, + 98, 97, 114, 101, 113, 92, + 100, 111, 99, 117, 109, 101, + 110, 116, 115, 92, 118, 105, + 115, 117, 97, 108, 32, 115, + 116, 117, 100, 105, 111, 32, + 50, 48, 49, 53, 92, 112, + 114, 111, 106, 101, 99, 116, + 115, 92, 116, 97, 110, 107, + 115, 45, 119, 97, 114, 92, + 115, 114, 99, 92, 99, 111, + 109, 109, 111, 110, 92, 112, + 105, 120, 101, 108, 46, 104, + 108, 115, 108, 0, 47, 115, + 114, 99, 47, 102, 105, 108, + 101, 115, 47, 99, 58, 92, + 117, 115, 101, 114, 115, 92, + 98, 97, 114, 101, 113, 92, + 100, 111, 99, 117, 109, 101, + 110, 116, 115, 92, 118, 105, + 115, 117, 97, 108, 32, 115, + 116, 117, 100, 105, 111, 32, + 50, 48, 49, 53, 92, 112, + 114, 111, 106, 101, 99, 116, + 115, 92, 116, 97, 110, 107, + 115, 45, 119, 97, 114, 92, + 115, 114, 99, 92, 99, 111, + 109, 109, 111, 110, 92, 118, + 101, 114, 116, 101, 120, 46, + 104, 108, 115, 108, 0, 5, + 0, 0, 0, 10, 0, 0, + 0, 1, 0, 0, 0, 118, + 0, 0, 0, 0, 0, 0, + 0, 17, 0, 0, 0, 7, + 0, 0, 0, 0, 0, 0, + 0, 5, 0, 0, 0, 34, + 0, 0, 0, 8, 0, 0, + 0, 10, 0, 0, 0, 6, + 0, 0, 0, 130, 0, 0, + 0, 9, 0, 0, 0, 0, + 0, 0, 0, 65, 145, 50, + 1, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 17, 0, 0, 0, 32, 0, + 0, 0, 71, 1, 0, 0, + 40, 1, 0, 0, 195, 1, + 0, 0, 56, 0, 0, 0, + 0, 0, 0, 0, 17, 11, + 0, 0, 172, 0, 0, 0, + 174, 0, 0, 0, 201, 8, + 0, 0, 184, 2, 0, 0, + 60, 0, 0, 0, 0, 0, + 0, 0, 40, 0, 0, 0, + 56, 2, 0, 0, 44, 0, + 0, 0, 88, 0, 0, 0, + 3, 0, 0, 0, 30, 0, + 0, 0, 18, 0, 0, 0, + 29, 0, 0, 0, 19, 0, + 0, 0, 14, 0, 0, 0, + 6, 0, 0, 0, 20, 0, + 0, 0, 21, 0, 0, 0, + 22, 0, 0, 0, 23, 0, + 0, 0, 15, 0, 0, 0, + 8, 0, 0, 0, 9, 0, + 0, 0, 10, 0, 0, 0, + 11, 0, 0, 0, 12, 0, + 0, 0, 13, 0, 0, 0, + 16, 0, 0, 0, 17, 0, + 0, 0, 7, 0, 0, 0, + 24, 0, 0, 0, 25, 0, + 0, 0, 26, 0, 0, 0, + 28, 0, 0, 0, 27, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 31, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0 }; diff --git a/src/common/player.cpp b/src/common/player.cpp index 49e6d37..3029d30 100644 --- a/src/common/player.cpp +++ b/src/common/player.cpp @@ -15,12 +15,13 @@ Player::~Player() { } -void Player::initialize(PlayerID id, const char* pName, PlayerType playerType, const Game * pGame) +void Player::initialize(PlayerID id, const std::string& name, PlayerType playerType, const Game * pGame) { m_id = id; - strcpy(m_name, pName); + strcpy(m_name, name.c_str()); std::string tex = (playerType == PLAYER_SELF) ? "player-tank" : "enemy-tank"; Tank::initialize(tex, pGame); + m_pMap->addObject(this); } void Player::damage(float dmg) @@ -48,12 +49,24 @@ void Player::executeAnimateRepeat() #ifdef _CLIENT_BUILD if (!m_pGame->isOnline()) { - m_health = 100; + //m_health = 100; + //setPosition(m_pMap->getRandomEmptySpace(this).v1); + reset(); setPosition(m_pMap->getRandomEmptySpace(this).v1); } #endif } +void Player::reset() +{ + m_rotate = V3(); + m_position = V3(); + m_health = logicNS::HEALTH_TANK; + m_velocity = logicNS::VELOCITY_TANK; + m_inflictedDamage = 0; + m_madeKills = 0; +} + #ifdef _CLIENT_BUILD void Player::setClientGameStatus(const ClientGameStatus& clientGameStatus) { diff --git a/src/common/player.h b/src/common/player.h index f6246b0..72e25a4 100644 --- a/src/common/player.h +++ b/src/common/player.h @@ -17,13 +17,14 @@ class Player : public Tank Player(); ~Player(); - virtual void initialize(PlayerID id, const char* pName, PlayerType playerType, const Game * pGame); + virtual void initialize(PlayerID id, const std::string& name, PlayerType playerType, const Game * pGame); PlayerID getID() const { return m_id; } void setID(PlayerID id) { m_id = id; } const char* getName() const { return m_name; } virtual void damage(float dmg); virtual void executeDie(); virtual void executeAnimateRepeat(); + virtual void reset(); #ifdef _CLIENT_BUILD void setClientGameStatus(const ClientGameStatus& clientGameStatus); diff --git a/src/common/serverplayer.cpp b/src/common/serverplayer.cpp index d4b5c67..8930945 100644 --- a/src/common/serverplayer.cpp +++ b/src/common/serverplayer.cpp @@ -44,8 +44,8 @@ void ServerPlayer::executeAnimateRepeat() { m_pTWServer->resetClientGameStatus(this); m_pTWServer->postClientGameStatus(this); - //Player::executeAnimateRepeat(); - Tank::executeAnimateRepeate(); + //Tank::executeAnimateRepeat(); + Player::executeAnimateRepeat(); } ClientGameStatus ServerPlayer::getClientGameStatus() const diff --git a/src/common/texture.h b/src/common/texture.h index 1f7d4ae..fe221db 100644 --- a/src/common/texture.h +++ b/src/common/texture.h @@ -18,13 +18,13 @@ class Texture void onResetDevice(); void release(); LPTextureD3D getTexture() const { return m_lpTexture; } - int32 getWidth() const { return m_width; } - int32 getHeight() const { return m_height; } + uint32 getWidth() const { return m_width; } + uint32 getHeight() const { return m_height; } protected: std::string m_file; Graphics* m_pGraphics; LPTextureD3D m_lpTexture; - int32 m_width, m_height; + uint32 m_width, m_height; }; \ No newline at end of file diff --git a/src/common/types.h b/src/common/types.h index 4045153..8ff2ee9 100644 --- a/src/common/types.h +++ b/src/common/types.h @@ -54,7 +54,8 @@ struct Vertex struct GameSettings { - int32 width, height; + uint32 width, height; + uint32 aiLevel, aiCount; bool windowed, vsync, audio, computeShader, debugMode; }; diff --git a/src/common/vertexshader.h b/src/common/vertexshader.h index a8f9ca8..cf54d99 100644 --- a/src/common/vertexshader.h +++ b/src/common/vertexshader.h @@ -306,10 +306,10 @@ ret const BYTE g_pVertexShader[] = { - 68, 88, 66, 67, 210, 13, - 42, 252, 17, 37, 7, 234, - 50, 0, 178, 84, 140, 236, - 90, 160, 1, 0, 0, 0, + 68, 88, 66, 67, 225, 109, + 1, 147, 42, 94, 3, 254, + 127, 64, 212, 84, 44, 186, + 248, 49, 1, 0, 0, 0, 96, 143, 0, 0, 6, 0, 0, 0, 56, 0, 0, 0, 152, 2, 0, 0, 236, 2, @@ -1816,10 +1816,10 @@ const BYTE g_pVertexShader[] = 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 148, 46, 49, 1, - 147, 234, 60, 101, 1, 0, - 0, 0, 91, 80, 107, 253, - 173, 203, 147, 76, 185, 18, - 75, 224, 34, 57, 129, 202, + 68, 2, 67, 101, 1, 0, + 0, 0, 130, 153, 78, 184, + 96, 219, 222, 67, 185, 208, + 190, 110, 182, 187, 219, 128, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, @@ -2584,8 +2584,8 @@ const BYTE g_pVertexShader[] = 52, 40, 48, 46, 48, 102, 44, 32, 49, 46, 48, 102, 44, 32, 27, 226, 48, 1, - 128, 0, 0, 0, 118, 55, - 126, 108, 142, 9, 218, 1, + 128, 0, 0, 0, 80, 155, + 11, 19, 48, 13, 218, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, @@ -5845,12 +5845,12 @@ const BYTE g_pVertexShader[] = 2, 0, 9, 0, 252, 30, 0, 0, 0, 0, 0, 0, 252, 19, 0, 0, 1, 0, - 0, 0, 224, 219, 105, 0, + 0, 0, 224, 219, 21, 0, 0, 0, 0, 0, 0, 0, 0, 0, 109, 97, 105, 110, 0, 110, 111, 110, 101, 0, 0, 0, 45, 186, 46, 241, - 1, 0, 122, 0, 0, 0, + 1, 0, 90, 0, 0, 0, 0, 0, 112, 21, 0, 0, 32, 0, 0, 96, 0, 0, 46, 0, 0, 0, 0, 0, @@ -5912,10 +5912,10 @@ const BYTE g_pVertexShader[] = 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 148, 46, 49, 1, - 147, 234, 60, 101, 1, 0, - 0, 0, 91, 80, 107, 253, - 173, 203, 147, 76, 185, 18, - 75, 224, 34, 57, 129, 202, + 68, 2, 67, 101, 1, 0, + 0, 0, 130, 153, 78, 184, + 96, 219, 222, 67, 185, 208, + 190, 110, 182, 187, 219, 128, 131, 0, 0, 0, 47, 76, 105, 110, 107, 73, 110, 102, 111, 0, 47, 110, 97, 109, diff --git a/src/req.txt b/src/req.txt index 9d1ce82..1ee87ea 100644 --- a/src/req.txt +++ b/src/req.txt @@ -6,4 +6,4 @@ - Fix Game::checkGameFiles - Process map using compute shader - Fix scalling textures -- correct the tank position after collided rotate. \ No newline at end of file +- Correct tank position after collided rotate. \ No newline at end of file